评估对象识别算法的准确性的方法和装置与流程

文档序号:31691262发布日期:2022-09-30 23:19阅读:51来源:国知局
评估对象识别算法的准确性的方法和装置与流程

1.本公开涉及一种评估对象识别算法的准确性的方法和装置。


背景技术:

2.随着芯片技术和人工智能技术的进步,自动驾驶技术成为人们关注的焦点。在自动驾驶技术中,车辆安装有各种传感器,例如激光雷达、相机、超声波传感器等。各个传感器收集的感测数据可以被输入传感器融合模块中。传感器融合模块可以根据感测数据,识别车辆周围环境中的各个对象。
3.在开发过程中,为了评估传感器融合模块的对象识别算法的准确性,人们可以将已知的真实值(ground truth)和传感器融合模块输出的对象列表进行比较。例如,开发人员可以选择一段道路(也称为测试道路),利用高精度的仪器设备,采集该段道路中的各个对象的数据从而得到这段测试道路的真实值。此外,也可以对车载传感器采集的图像进行人工标注,从而得到测试道路的真实值。然后,可以让车辆行驶在测试道路上,利用车载传感器来采集感测数据,传感器融合模块可以使用对象识别算法,根据采集的感测数据生成对象列表。将该对象列表与测试道路的真实值中的对象列表进行比较,就可以知道对象识别算法的准确性。


技术实现要素:

4.根据本公开的一个方面,提供了一种评估对象识别算法的准确性的方法,包括:在车辆行驶过程中,收集车辆的传感器感测到的车辆的外部环境的感测数据;根据所述传感器的性能选择所述感测数据;基于选择的所述感测数据识别所述外部环境中的对象,得到第一识别结果;根据所述感测数据和所述对象识别算法识别所述外部环境中的对象,得到第二识别结果;以及比较所述第一识别结果和所述第二识别结果,以评估所述对象识别算法的准确性,其中将所述第一识别结果作为真实值。
5.在根据本公开的一些实施例中,所述传感器包括:激光雷达和相机中的至少一种。
6.在根据本公开的一些实施例中,所述传感器为激光雷达,所述传感器的性能包括所述激光雷达的精度,根据所述传感器的性能选择所述感测数据包括:根据所述激光雷达的精度确定超过预定的精度阈值的区域;以及选择所述区域中的感测数据。
7.在根据本公开的一些实施例中,所述传感器为相机,所述传感器的性能包括所述相机的视场,根据所述传感器的性能选择所述感测数据包括:根据所述相机的视场确定位于所述视场中且邻近所述视场的边缘的区域;以及选择所述区域中的感测数据。
8.在根据本公开的一些实施例中,所述外部环境被划分成多个区域,根据所述传感器的性能选择所述感测数据包括:根据所述区域与所述车辆的距离以及所述传感器在该距离的精度,选择所述区域的感测数据,使得所述区域的感测数据具有最高的精度。
9.在根据本公开的一些实施例中,基于选择的所述感测数据识别所述外部环境中的对象包括:根据选择的所述感测数据重建所述外部环境的感测数据;以及根据重建的所述
感测数据识别所述外部环境中的对象。
10.在根据本公开的一些实施例中,使用相同的对象识别算法得到第一识别结果和第二识别结果。
11.在根据本公开的一些实施例中,所述外部环境的范围包括车辆前方500米。
12.在根据本公开的一些实施例中,所述外部环境的范围包括车辆前方300米。
13.根据本公开的另一个方面,提供了一种评估对象识别算法的准确性的装置,包括处理器和存储有指令的存储器,当所述处理器执行所述指令时,所述处理器被配置为:根据车辆的传感器的性能选择感测数据,所述感测数据是在车辆行驶过程中由所述车辆的所述传感器感测到的所述车辆的外部环境的感测数据;基于选择的所述感测数据识别所述外部环境中的对象,得到第一识别结果;根据所述感测数据和所述对象识别算法识别所述外部环境中的对象,得到第二识别结果;以及比较所述第一识别结果和所述第二识别结果,以评估所述对象识别算法的准确性,其中将所述第一识别结果作为真实值。
14.根据本公开的又一个方面,提供了一种存储有指令的非临时计算机可读存储介质,当所述指令被处理器执行时,所述处理器被配置为:根据车辆的传感器的性能选择感测数据,所述感测数据是在车辆行驶过程中由所述车辆的所述传感器感测到的所述车辆的外部环境的感测数据;基于选择的所述感测数据识别所述外部环境中的对象,得到第一识别结果;根据所述感测数据和所述对象识别算法识别所述外部环境中的对象,得到第二识别结果;以及比较所述第一识别结果和所述第二识别结果,以评估所述对象识别算法的准确性,其中将所述第一识别结果作为真实值。
15.根据本公开的又一个方面,提供了一种计算机程序产品,包括指令,当所述指令被处理器执行时,所述处理器被配置为:根据车辆的传感器的性能选择感测数据,所述感测数据是在车辆行驶过程中由所述车辆的所述传感器感测到的所述车辆的外部环境的感测数据;基于选择的所述感测数据识别所述外部环境中的对象,得到第一识别结果;根据所述感测数据和所述对象识别算法识别所述外部环境中的对象,得到第二识别结果;以及比较所述第一识别结果和所述第二识别结果,以评估所述对象识别算法的准确性,其中将所述第一识别结果作为真实值。
16.通过以下参照附图对本公开的示例性实施例的详细描述,本公开的其它特征及其优点将会变得更为清楚。
附图说明
17.构成说明书的一部分的附图描述了本公开的实施例,并且连同说明书一起用于解释本公开的原理。
18.参照附图,根据下面的详细描述,可以更加清楚地理解本公开,其中:
19.图1示出了根据本公开的实施例的评估对象识别算法的准确性的方法的流程图。
20.图2示出了根据本公开的实施例的评估对象识别算法的准确性的方法的示意图。
21.图3示出了根据本公开的实施例的评估对象识别算法的准确性的方法的示意图。
22.图4示出了根据本公开的实施例的评估对象识别算法的准确性的方法的示意图。
23.图5示出根据本公开的一种示例性实施例的计算设备的框图。
24.注意,在以下说明的实施方式中,有时在不同的附图之间共同使用同一附图标记
来表示相同部分或具有相同功能的部分,而省略其重复说明。在一些情况中,使用相似的标号和字母表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
25.为了便于理解,在附图等中所示的各结构的位置、尺寸及范围等有时不表示实际的位置、尺寸及范围等。因此,本公开并不限于附图等所公开的位置、尺寸及范围等。
具体实施方式
26.下面将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
27.以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。也就是说,本文中的结构及方法是以示例性的方式示出,来说明本公开中的结构和方法的不同实施例。然而,本领域技术人员将会理解,它们仅仅说明可以用来实施的本公开的示例性方式,而不是穷尽的方式。此外,附图不必按比例绘制,一些特征可能被放大以示出具体组件的细节。
28.对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。
29.在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
30.在开发对象识别算法的过程中,需要频繁地测试和评估对象识别算法在各种环境和道路条件下的准确性。但是,测试道路的准确测量和人工标准都需要大量的工作量,并且可选的道路也受到限制。因此,存在能够在非测试道路上评估对象识别算法的准确性的需求。
31.图1示出了根据本公开的实施例的评估对象识别算法的准确性的方法的流程图。该方法主要包括以下步骤:
32.首先,在车辆行驶过程中,收集车辆的传感器感测到的车辆的外部环境的感测数据(步骤101)。
33.在根据本公开的实施例中,车辆可以行驶在任意道路上,而不限于测试道路。车辆上的传感器(例如激光雷达或相机等)可以在车辆行驶的过程中对车辆的外部环境进行感测。例如,在一些实施例中,激光雷达可以对车辆四周360
°
的环境进行感测,获取周围环境的点云。在另一些实施例中,激光雷达可以仅对车辆前方
±
90
°
的环境进行感测。
34.如图2所示,在一些实施例中,车辆200可以设置有前视相机,通过前视相机,可以拍摄例如车辆200前方
±
50
°
的环境的图像。在本公开的实施例中,激光雷达获取的点云数据以及相机拍摄的图像都可以被称为感测数据。
35.当通过车辆的传感器获取了这段道路的感测数据之后,可以根据车辆的传感器的性能选择感测数据(步骤102)。
36.如图2所示,车辆201前方(外部环境)可以划分为多个区域。每个区域的尺寸和形状可以根据实际需要进行选择。例如,图2中每个区域可以为5m
×
5m的正方形区域。在根据本公开的一些实施例中,每个区域可以为3m
×
6m的矩形区域。应当理解,本公开对区域的尺
寸和形状没有限制,可以使用更大或更小尺寸的区域,还可以选择其它规则或不规则形状的区域。
37.此外,在与地面垂直的竖直方向上,也可以进一步划分,从而得到三维的区域。
38.应当理解,不同的传感器可能具有不同的感测范围。例如,在一些实施例中,激光雷达的感测范围可以为例如车辆前方
±
90
°
,距离5m-300m的物体。在另一些实施例中,车辆上的相机的感测范围可以为例如车辆前方
±
50
°
,距离3m-200m的物体。
39.在传感器的感测范围内,对于不同距离的物体,可能具有不同的精度。传感器的感测精度通常随着与物体的距离的减小而逐渐增加。例如,对于一些激光雷达,当物体与激光雷达的距离在5m-20m时,得到的感测数据的精度最高。
40.对于一些相机,在相机能够合焦的范围内,如果一个物体距离相机越近,该物体在相机上产生的图像就越大,在图像传感器上有更多的像素点对应于该物体。相应地,该物体的感测数据就越精确。在相机是安装在车辆上的前视相机(即朝着车辆行驶方向的前方成像的相机)的情况下,当车辆行驶到距离该物体最近的位置处采集的感测数据是最精确的。在前视相机的视场中,邻近视场边缘的区域通常距离相机最近,因此,这些区域中采集到的感测数据可能具有最高的精度。
41.车辆在行驶过程中,车辆的传感器反复感测车辆的外部环境(例如车辆前方的各个区域等)。随着车辆沿道路行驶,同一个区域,可能被车辆的传感器多次感测,从而得到多个感测数据。如图3所示,车辆沿着箭头所示方向行驶,在t0时刻位于道路0m处,在t1时刻行驶到道路50m处。路边的物体a位于道路60m处。在t0时刻,车辆的传感器对距离60m的物体a进行感测,获得感测数据。在t1时刻,车辆的传感器对距离10m的物体a进行感测,再次获得感测数据。由于t1时刻物体a距离车辆更近,因此,在t1时刻获取的感测数据可能具有更高的精度。因此,如果根据对象识别算法,分别使用t0时刻和t1时刻获取的感测数据对物体a进行识别,则基于t1时刻的感测数据的识别结果具有更高的可靠性。
42.基于上面的描述,可以为每个区域选择感测数据。具体地说,根据该区域与车辆的距离以及传感器在该距离的精度,从该区域的多个感测数据中进行选择,使得选择的感测数据具有最高的精度。这样,基于选择的感测数据进行对象识别处理,得到的识别结果具有更高的可靠性。
43.此外,在根据本公开的一些实施例中,车辆的传感器为激光雷达。激光雷达的性能参数中,通常包括了对各种距离的物体的感测精度。可以预先设定一个精度阈值。在为各个区域选择感测数据时,参考激光雷达的性能参数,要求为该区域选择的感测数据的精度要超过预定的精度阈值。
44.然后,可以基于选择的感测数据识别外部环境中的对象,得到第一识别结果(步骤103)。在根据本公开的一些实施例中,可以使用各个区域的选择的感测数据,重新构建车辆的外部环境中各个区域的感测数据。由此得到的各个区域的感测数据,都具有较高的精度。
45.利用重建的外部环境的感测数据,可以使用对象识别算法自动识别外部环境中的各个对象(例如图3中的物体a)。由于使用了精度较高的感测数据,因此所得到的识别结果(第一识别结果)具有较高的可靠性和准确性。
46.接下来,可以使用车辆的传感器感测到的感测数据和对象识别算法,识别车辆的外部环境中的对象,从而得到第二识别结果(步骤104)。在该步骤中,对象识别算法使用的
感测数据不是上面步骤103中经过选择的高精度的感测数据,而是模拟车辆在行驶过程中实时获取的外部环境的感测数据。例如,在图3中,当车辆在时刻t0时,传感器采集的感测数据被用于对象识别算法,以识别距离车辆60m处的物体a(或物体a所在的区域),得到第二识别结果。随着车辆沿道路行驶,可以得到在每个时刻对车辆外部环境的全部或部分物体(对象)的第二识别结果。
47.最后,可以比较第一识别结果和第二识别结果,以评估对象识别算法的准确性(步骤105)
48.如上所述,第二识别结果是自动驾驶或智能驾驶中,使用对象识别算法实时识别到的对象。为了评估对象识别算法的准确性,可以将上述第一识别结果作为真实值(ground truth),将第二识别结果与作为真实值的第一识别结果进行比较,从而评估对象识别算法的准确性。
49.图4示出了根据本公开的一些实施例的评估对象识别算法的准确性的示意图。如图4所示,车辆沿着箭头所示方向在道路上前进。前方具有多个物体。其中,a1为指示牌,a2为路灯,a3为行人,a4和a5为两个并排放置的铁柜,a6为一棵树。
50.在t0时刻,车辆的激光雷达对车辆的外部环境进行感测并根据对象识别算法识别到车辆前方的多个物体(对象),并且各处了识别结果如下:
51.表1第二识别结果示例
52.a1100m指示牌a250m路灯a330m行人a4150m汽车
53.为了上面的评估第二识别结果的准确性,采用上述根据本公开的实施例,使用车辆距离各个区域为10m时的感测数据,重新构建车辆在t0时刻的外部环境,并使用对象识别算法再次进行识别。在该实施例中,车辆的激光雷达对于距离5m-20m的物体具有较高的精度。因此,采用相同的对象识别算法,可以得到第一识别结果如下:
54.表2第一识别结果示例
55.a1100m指示牌a250m路灯a330m行人a4150m矩形物体a5150m矩形物体a6160m树木
56.以上述第一识别结果作为真实值,比较第一识别结果和第二识别结果,可以看出第二识别结果存在一些错误(a4和a5)和遗漏(a6)。这样,开发人员可以发现对象识别算法的缺陷和问题,并基于此进一步改进对象识别算法。
57.在上面的示意性实施例中,识别结果仅包括对象的距离和分类结果。在根据本公开的一些实施例中,识别结果可以还包括例如对象的尺寸和形状等属性。
58.例如,表3示出了根据本公开的一些实施例的图4的第二识别结果的示例。
59.a1100m指示牌100
×
150矩形a250m路灯60圆形a330m行人180
×
60矩形a4150m汽车2000
×
2300矩形
60.表4示出了根据本公开的一些实施例的图4的第一识别结果的示例。
[0061][0062]
在表3和表4所示的第二识别结果和第一识别结果中,不仅包括了对象的分类结果,还包括各个对象的尺寸和形状等信息。表3中的尺寸信息的单位为毫米(mm),例如,在表3中,对象a1的尺寸为100
×
150,这表示根据传感器的感测数据,对象a1在竖直方向上的长度为100mm,在水平方向上的宽度为150mm。其它对象a3-a5的尺寸类似表示,不再重复解释。对象a2为圆形,半径为60mm。对象a6被识别为树木,包含椭圆形的树冠和矩形的树干,椭圆形的长轴为3000mm,短轴为2000mm,矩形的长度为4000mm,宽度为1000mm。
[0063]
在上述的实施例中,使用相同的对象识别算法获得第一识别结果和第二识别结果。但是,本公开不限于此。例如,可以使用待评估的对象识别算法获取第二识别结果,使用与待评估的对象识别算法不同的其它对象识别算法获取第一识别结果。
[0064]
例如,有些对象识别算法的识别率更高、识别结果更可靠,但是这些对象识别算法需要更高的处理能力,花费更多的时间。对于车载系统(例如车载电脑)的处理器而言,可能无法满足自动驾驶或辅助驾驶对于实时性的要求。因此,这些对象识别算法不能用于车辆。
[0065]
但是,在根据本公开的一些实施例中,对于第一识别结果的获取没有实时性的要求,因此可以使用更复杂的对象识别算法,以确保第一识别结果的准确性。
[0066]
此外,应当理解,车辆的传感器的最大感测距离通常在数百米左右。因此,对于外部环境的范围,可以限制在例如车辆前方500m以内,也可以限制在例如车辆前方300m以内,
[0067]
图5示出根据本公开的一种示例性实施例的计算设备的框图,该计算设备是可应用于本公开的各方面的硬件设备的一个示例。
[0068]
参考图5,现在将描述一种计算设备700,该计算设备是可应用于本公开的各方面的硬件设备的一个示例。计算设备700可以是被配置用于实现处理和/或计算的任何机器,可以是但并不局限于工作站、服务器、桌上型计算机、膝上型计算机、平板计算机、个人数字助理、智能手机、车载计算机或者是它们的任何组合。前述的各种装置/服务器/客户端设备可全部地或者至少部分地由计算设备700或者类似设备或系统来实施。
[0069]
计算设备700可包括可能经由一个或多个接口与总线702连接或通信的组件。例
如,计算设备700可包括总线702、一个或多个处理器704、一个或多个输入设备706以及一个或多个输出设备708。所述一个或多个处理器704可以是任何类型的处理器并且可以包括但不限于一个或多个通用处理器和/或一个或多个专用处理器(例如专门的处理芯片)。输入设备706可以是任何类型的能够向计算设备输入信息的设备并且可以包括但不限于鼠标、键盘、触摸屏、麦克风和/或远程控制器。输出设备708可以是任何类型的能够呈现信息的设备并且可以包括但不限于显示器、扬声器、视频/音频输出终端、振动器和/或打印机。计算设备700也可包括非瞬态存储设备710或者与所述非瞬态存储设备连接,所述非瞬态存储设备可以是非瞬态的并且能够实现数据存储的任何存储设备,并且所述非瞬态存储设备可以包括但不限于磁盘驱动器、光存储设备、固态存储器、软盘、软磁盘、硬盘、磁带或任何其它磁介质、光盘或任何其它光介质、rom(只读存储器)、ram(随机存取存储器)、高速缓冲存储器和/或任何存储芯片或盒式磁带、和/或计算机可从其读取数据、指令和/或代码的任何其它介质。非瞬态存储设备710可从接口分离。非瞬态存储设备710可具有用于实施上述方法和步骤的数据/指令/代码。计算设备700也可包括通信设备712。通信设备712可以是任何类型的能够实现与内部装置通信和/或与网络通信的设备或系统并且可以包括但不限于调制解调器、网卡、红外通信设备、无线通信设备和/或芯片组,例如bluetoothtm设备、1302.11设备、wifi设备、wimax设备、蜂窝通信设备和/或类似设备。
[0070]
总线702可以包括但不局限于工业标准结构(isa)总线、微通道结构(mca)总线、增强型isa(eisa)总线、视频电子标准协会(vesa)局部总线和外部设备互连(pci)总线。
[0071]
计算设备700还可包括工作存储器714,该工作存储器可以是任何类型的能够存储有利于处理器704的工作的指令和/或数据的工作存储器并且可以包括但不局限于随机存取存储器和/或只读存储设备。
[0072]
软件组件可位于工作存储器714中,这些软件组件包括但不限于操作系统716、一个或多个应用程序718、驱动程序和/或其它数据和代码。用于实现上述方法和步骤的指令可包含在所述一个或多个应用程序718中,并且前述各种装置/服务器/客户端设备的模块/单元/组件可通过处理器704读取和执行所述一个或多个应用程序718的指令来实现。
[0073]
也应该认识到可根据具体需求做出变化。例如,也可使用定制硬件,和/或特定组件可在硬件、软件、固件、中间件、微代码、硬件描述语言或其任何组合中实现。此外,可采用与其它计算设备、例如网络输入/输出设备等的连接。例如,可通过具有汇编语言或硬件编程语言(例如verilog、vhdl、c++)的编程硬件(例如,包括现场可编程门阵列(fpga)和/或可编程逻辑阵列(pla)的可编程逻辑电路)利用根据本公开的逻辑和算法来实现所公开的方法和设备的部分或全部。
[0074]
在说明书及权利要求中的词语“前”、“后”、“顶”、“底”、“之上”、“之下”等,如果存在的话,用于描述性的目的而并不一定用于描述不变的相对位置。应当理解,这样使用的词语在适当的情况下是可互换的,使得在此所描述的本公开的实施例,例如,能够在与在此所示出的或另外描述的那些取向不同的其他取向上操作。
[0075]
如在此所使用的,词语“示例性的”意指“用作示例、实例或说明”,而不是作为将被精确复制的“模型”。在此示例性描述的任意实现方式并不一定要被解释为比其它实现方式优选的或有利的。而且,本公开不受在上述技术领域、背景技术、发明内容或具体实施方式中所给出的任何所表述的或所暗示的理论所限定。
[0076]
如在此所使用的,词语“基本上”意指包含由设计或制造的缺陷、器件或元件的容差、环境影响和/或其它因素所致的任意微小的变化。词语“基本上”还允许由寄生效应、噪声以及可能存在于实际的实现方式中的其它实际考虑因素所致的与完美的或理想的情形之间的差异。
[0077]
另外,前面的描述可能提及了被“连接”或“耦接”在一起的元件或节点或特征。如在此所使用的,除非另外明确说明,“连接”意指一个元件/节点/特征与另一种元件/节点/特征在电学上、机械上、逻辑上或以其它方式直接地连接(或者直接通信)。类似地,除非另外明确说明,“耦接”意指一个元件/节点/特征可以与另一元件/节点/特征以直接的或间接的方式在机械上、电学上、逻辑上或以其它方式连结以允许相互作用,即使这两个特征可能并没有直接连接也是如此。也就是说,“耦接”意图包含元件或其它特征的直接连结和间接连结,包括利用一个或多个中间元件的连接。
[0078]
另外,仅仅为了参考的目的,还可以在本文中使用“第一”、“第二”等类似术语,并且因而并非意图限定。例如,除非上下文明确指出,否则涉及结构或元件的词语“第一”、“第二”和其它此类数字词语并没有暗示顺序或次序。
[0079]
还应理解,“包括/包含”一词在本文中使用时,说明存在所指出的特征、整体、步骤、操作、单元和/或组件,但是并不排除存在或增加一个或多个其它特征、整体、步骤、操作、单元和/或组件以及/或者它们的组合。
[0080]
在本公开中,术语“提供”从广义上用于涵盖获得对象的所有方式,因此“提供某对象”包括但不限于“购买”、“制备/制造”、“布置/设置”、“安装/装配”、和/或“订购”对象等。
[0081]
本领域技术人员应当意识到,在上述操作之间的边界仅仅是说明性的。多个操作可以结合成单个操作,单个操作可以分布于附加的操作中,并且操作可以在时间上至少部分重叠地执行。而且,另选的实施例可以包括特定操作的多个实例,并且在其他各种实施例中可以改变操作顺序。但是,其它的修改、变化和替换同样是可能的。因此,本说明书和附图应当被看作是说明性的,而非限制性的。
[0082]
虽然已经通过示例对本公开的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本公开的范围。在此公开的各实施例可以任意组合,而不脱离本公开的精神和范围。本领域的技术人员还应理解,可以对实施例进行多种修改而不脱离本公开的范围和精神。本公开的范围由所附权利要求来限定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1