一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种点云标注方法、装置及设备与流程

2022-11-12 09:01:14 来源:中国专利 TAG:


1.本发明涉及点云技术领域,特别是涉及一种点云标注方法、装置及设备。


背景技术:

2.点云(point cloud),可以理解为在同一空间参考系下表达目标空间分布和目标表面特性的点的集合,其通常为三维空间中的数据。举例来说,可以通过激光雷达或者相机扫描得点云。
3.在自动驾驶或者智能驾驶等场景中,通常需要对点云中表达车辆的部分(即车辆点云)进行标注。一些相关方案中,通常由标注人员人工识别点云中的车辆点云,针对识别出的车辆点云人工绘制包围盒。这种方案需要消耗较多人力。


技术实现要素:

4.本发明实施例的目的在于提供一种点云标注方法、装置及设备,以减少人力耗费。
5.为达到上述目的,本发明实施例提供了一种点云标注方法,包括:
6.获取待标注点云;
7.确定所述待标注点云中的车辆点云簇;
8.对所述车辆点云簇在第一预设方向上进行切片处理,得到第一切片;
9.识别所述第一切片中的直角边线,基于所述直角边线生成所述车辆点云簇的包围盒。
10.可选的,所述基于所述直角边线生成所述车辆点云簇的包围盒之后,还包括:
11.获得所述包围盒在第二预设方向上的投影,所述第二预设方向与所述第一预设方向之间存在夹角;
12.在所述投影中识别所述包围盒的顶边和底边;
13.基于所述顶边与所述底边之间的偏移方向确定车辆的方向;
14.在所述包围盒中标注车辆的方向。
15.可选的,所述基于所述直角边线生成所述车辆点云簇的包围盒之后,还包括:
16.确定所述包围盒映射至所述待标注点云对应的图像中的区域,作为目标区域;
17.通过对所述目标区域进行识别,确定所述目标区域中的车辆的方向;
18.在所述包围盒中标注车辆的方向。
19.可选的,所述确定所述包围盒映射至所述待标注点云对应的图像中的区域,作为目标区域,包括:
20.获取所述待标注点云对应的多台图像采集设备采集的图像,作为候选图像;
21.分别将所述包围盒投影至每张候选图像中,将投影面积最大的候选图像确定为目标图像;
22.确定所述包围盒映射至所述目标图像中的区域,作为目标区域。
23.可选的,所述图像为彩色图像;所述通过对所述目标区域进行识别,确定所述目标
区域中的车辆的方向,包括:
24.识别所述目标区域中的红色灯区域,将所述红色灯域所在的一侧确定为车辆的尾部;
25.和/或,识别所述目标区域中的白色灯区域,将所述白色灯域所在的一侧确定为车辆的头部。
26.可选的,所述第一预设方向为车身所在平面的方向;所述对所述车辆点云簇在第一预设方向上进行切片处理,得到第一切片,包括:
27.确定所述车辆点云簇的平面倾斜角,基于所述平面倾斜角确定进行切片处理的第一预设方向;
28.在所述车辆点云簇的底部区域沿所述第一预设方向进行切片处理,得到第一切片。
29.可选的,所述基于所述直角边线生成所述车辆点云簇的包围盒,包括:
30.确定所述第一切片的平面倾斜角、以及所述直角边线在所述第一切片中的旋转角度和平移分量;
31.基于所述平面倾斜角、所述旋转角度和所述平移分量,将所述车辆点云簇变换至车辆坐标系中;
32.在所述车辆坐标系中,生成所述车辆点云簇的包围盒。
33.可选的,所述基于所述直角边线生成所述车辆点云簇的包围盒,包括:
34.基于所述直角边线生成所述第一切片的包围盒;
35.以所述第一切片的包围盒为底面,在第三预设方向上延伸生成所述车辆点云簇的包围盒,所述第三预设方向与所述第一预设方向之间存在夹角。
36.可选的,所述确定所述待标注点云中的车辆点云簇,包括:
37.通过对所述待标注点云进行聚类识别,确定所述待标注点云中的车辆点云簇。
38.可选的,所述获取待标注点云之后,还包括:
39.对所述待标注点云进行渲染并展示;
40.所述确定所述待标注点云中的车辆点云簇,包括:
41.接收对所展示的待标注点云的选区指令,根据所述选区指令确定所述待标注点云中的选区,确定位于所述选区中的点属于车辆点云簇。
42.为达到上述目的,本发明实施例还提供了一种点云标注装置,包括:
43.获取模块,用于获取待标注点云;
44.第一确定模块,用于确定所述待标注点云中的车辆点云簇;
45.第一切片模块,用于对所述车辆点云簇在第一预设方向上进行切片处理,得到第一切片,所述第一预设方向为非竖直方向;
46.生成模块,用于识别所述第一切片中的直角边线,基于所述直角边线生成所述车辆点云簇的包围盒。
47.可选的,所述装置还包括:
48.获得模块,用于获得所述包围盒在第二预设方向上的投影,所述第二预设方向与所述第一预设方向之间存在夹角;
49.识别模块,用于在所述投影中识别所述包围盒的顶边和底边;
50.第二确定模块,用于基于所述顶边与所述底边之间的偏移方向确定车辆的方向;
51.第一标注模块,用于在所述包围盒中标注车辆的方向。
52.可选的,所述装置还包括:
53.第三确定模块,用于确定所述包围盒映射至所述待标注点云对应的图像中的区域,作为目标区域;
54.第四确定模块,用于通过对所述目标区域进行识别,确定所述目标区域中的车辆的方向;
55.第二标注模块,用于在所述包围盒中标注车辆的方向。
56.可选的,所述第三确定模块,具体用于:
57.获取所述待标注点云对应的多台图像采集设备采集的图像,作为候选图像;
58.分别将所述包围盒投影至每张候选图像中,将投影面积最大的候选图像确定为目标图像;
59.确定所述包围盒映射至所述目标图像中的区域,作为目标区域。
60.可选的,所述第四确定模块,具体用于:
61.识别所述目标区域中的红色灯区域,将所述红色灯域所在的一侧确定为车辆的尾部;
62.和/或,识别所述目标区域中的白色灯区域,将所述白色灯域所在的一侧确定为车辆的头部。
63.可选的,所述第一预设方向为车身所在平面的方向;所述第一切片模块,具体用于:
64.确定所述车辆点云簇的平面倾斜角,基于所述平面倾斜角确定进行切片处理的第一预设方向;
65.在所述车辆点云簇的底部区域沿所述第一预设方向进行切片处理,得到第一切片。
66.可选的,所述生成模块,具体用于:
67.确定所述第一切片的平面倾斜角、以及所述直角边线在所述第一切片中的旋转角度和平移分量;
68.基于所述平面倾斜角、所述旋转角度和所述平移分量,将所述车辆点云簇变换至车辆坐标系中;
69.在所述车辆坐标系中,生成所述车辆点云簇的包围盒。
70.可选的,所述生成模块,具体用于:
71.基于所述直角边线生成所述第一切片的包围盒;
72.以所述第一切片的包围盒为底面,在第三预设方向上延伸生成所述车辆点云簇的包围盒,所述第三预设方向与所述第一预设方向之间存在夹角。
73.可选的,所述第一确定模块,具体用于:
74.通过对所述待标注点云进行聚类识别,确定所述待标注点云中的车辆点云簇。
75.可选的,所述装置还包括:
76.渲染模块,用于对所述待标注点云进行渲染并展示;
77.所述第一确定模块,具体用于:
78.接收对所展示的待标注点云的选区指令,根据所述选区指令确定所述待标注点云中的选区,确定位于所述选区中的点属于车辆点云簇。
79.为达到上述目的,本发明实施例还一种电子设备,其中,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
80.存储器,用于存放计算机程序;
81.处理器,用于执行存储器上所存放的程序时,实现上述任意一种点云标注方法。
82.应用本发明所示实施例,确定待标注点云中的车辆点云簇;对车辆点云簇在第一预设方向上进行切片处理,得到第一切片;识别第一切片中的直角边线,基于直角边线生成车辆点云簇的包围盒;可见,本方案中,通过切片处理和识别直角连线,实现了自动生成车辆点云簇的包围盒,减少了人力耗费。
83.当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
84.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
85.图1为本发明实施例提供的一种点云标注方法的流程示意图;
86.图2a—2c为本发明实施例提供的多种选区的示意图;
87.图3为本发明实施例提供的一种车辆点云簇的示意图;
88.图4为本发明实施例提供的车辆点云簇的多种第一切片的示意图;
89.图5为本发明实施例提供的一种第一切片中识别出的直角边线的示意图;
90.图6为本发明实施例提供的一种车辆点云簇的包围盒的示意图;
91.图7为本发明实施例提供的一种直角边线在第一切片中的旋转角度和平移分量示意图;
92.图8a为本发明实施例提供的一种车辆点云簇在第二预设方向上的投影示意图;
93.图8b为本发明实施例提供的一种在投影中识别出的各边线示意图;
94.图9为本发明实施例提供的一种点云标注装置的流程示意图;
95.图10为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
96.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员基于本技术所获得的所有其他实施例,都属于本发明保护的范围。
97.为了达到上述目的,本发明实施例提供了一种点云标注方法、装置及设备,该方法及装置可以应用于计算机、服务器等各种电子设备,电子设备的具体类型不做限定。下面首先对该点云标注方法进行详细介绍。以下方法实施例中的各个步骤按照合乎逻辑的顺序执
行即可,步骤标号或者对各步骤进行介绍的先后顺序,并不对各步骤的执行顺序构成限定。
98.图1为本发明实施例提供的一种点云标注方法的流程示意图,包括:
99.s101:获取待标注点云。
100.举例来说,可以通过测量设备例如激光雷达或者相机,扫描得到待标注点云。测量设备的具体类型、以及获取待标注点云的具体方式不做限定。
101.s102:确定待标注点云中的车辆点云簇。
102.举例来说,本发明实施例中,可以自动识别待标注点云中的车辆点云簇,也可以人工选择待标注点云中的车辆点云簇。下面先对自动识别待标注点云中的车辆点云簇的方案进行介绍:
103.本发明的一种实施方式中,可以通过对所述待标注点云进行聚类识别,确定所述待标注点云中的车辆点云簇。
104.举例来说,可以通过聚类识别算法对点云中的点进行聚类,并识别出其中的车辆点云簇。例如,可以先通过pmf(progressive morphological filter,点云地面点滤波)剔除地面点的干扰;再通过cluster filter is euclidean cluster extraction(欧式距离分类),对剩余的点进行聚类处理,得到多种点云簇;通过特征识别,从该多种点云簇中识别出车辆点云簇。例如,可以通过机器学习算法学习不同点云簇的特征,根据学习到的特征识别出车辆点云簇。再例如,不同点云簇的的尺寸不同,可以预先设定车辆点云簇的尺寸,根据该预先设定的尺寸,从该多种点云簇中识别出车辆点云簇。具体的聚类识别算法不做限定。
105.下面对人工选择待标注点云中的车辆点云簇的方案进行介绍:
106.本发明的一种实施方式中,s101之后可以对所述待标注点云进行渲染并展示;s102可以包括:接收对所展示的待标注点云的选区指令,根据所述选区指令确定所述待标注点云中的选区,确定位于所述选区中的点属于车辆点云簇。
107.举例来说,可以通过一些标注平台对待标注点云进行一些预处理,例如分割、去噪等等,具体的预处理过程不做限定。然后可以通过标注平台中的渲染接口,将预处理后的点云进行渲染并展示。标注员可以在所展示的待标注点云中进行点选。
108.例如,参考图2a所示,可以点击2个顶点(点1和点2),形成一个矩形选区。再例如,参考图2b所示,可以点击车辆中心(点1)作为圆的中心,点击点2作为圆的半径,这样可以形成一个圆形选区。再例如,参考图2c所示,可以点击4个点形成一个多边形选区。选区的形状不做限定,图2a-图2c所示的多种选区方式可以结合使用。标注员可以在多个视角下选择选区,最终形成的选区可以为三维选区。标注员可以使用多种选区方式,在不同视角下选取最恰当的区域。
109.位于该三维选区中的点即为车辆点云簇中的点。待标注点云中的点可以理解为世界坐标系中的点,可以利用如下算式,将世界坐标系中的点转换到当前视角下再判断其是否位于三维选区中,也就是判断其是否为车辆点云簇中的点:
110.m
view
*p
view
=p
world
;p
view
=m
view-1
*p
world
111.其中,p
view
表示当前视角下的点,m
view
表示视角转换矩阵,p
world
表示世界坐标系中的点。
112.本发明的一些实施方式中,可以先计算当前视角下标注员选取的三维选区的外接
包围盒子,将该外接包围盒子映射到世界坐标系中,然后判断待标注点云中的点是否位于该外接包围盒子中,如果否,则将该点过滤掉,仅针对位于该外接包围盒子中的点,利用上述算式判断其是否为车辆点云簇中的点。这样,也就是先通过外接包围盒子对待标注点云中的点进行过滤,再判断剩余点是否为车辆点云簇中的点,这样可以减少计算量,提高计算效率。
113.s103:对车辆点云簇在第一预设方向上进行切片处理,得到第一切片。
114.第一预设方向可以为车身所在平面的方向,例如,车辆底盘所在平面的方向。理论上来说,如果忽略掉误差,该第一预设方向可以为水平方向,或者说地面方向,但由于误差的存在,该第一预设方向与水平方向存在一定的夹角,该第一预设方向为非竖直方向。一种实施方式中,可以确定所述车辆点云簇的平面倾斜角,基于所述平面倾斜角确定进行切片处理的第一预设方向。或者其他实施方式中,也可以通过对采集点云的测量设备进行标定,来确定第一预设方向。或者,一些实施方式中,也可以将水平方向设定为第一预设方向。第一预设方向的设定方式不做限定。
115.为了方便理解,以下内容中假设忽略掉误差,以第一预设方向为水平方向为例进行介绍。
116.举例来说,待标注点云通常为三维空间中的数据,车辆点云簇同样为三维数据,而这里的第一切片可以理解为二维数据。假设三维坐标系为xyz坐标系,xy轴表示水平面方向(或者说地面方向),z轴表示高度方向,则可以沿z轴对车辆点云簇进行切片处理,第一切片可以为某一个z值或者某一段z值区间对应的xy轴水平面中的车辆点云簇,某一个z值下xy轴水平面中的车辆点云簇可以理解为一个切片,某一段z值区间下的xy轴水平面中的车辆点云簇可以理解为一组切片。
117.本发明的一种实施方式中,s103可以包括:在所述车辆点云簇的底部区域沿第一预设方向进行切片处理,得到第一切片。这里所说的底部区域可以理解为车辆的底盘区域,底盘区域处的切片可以较准确地反应车辆的最大轮廓。举例来说,按照一定的高度在车辆的底盘区域附近(如车辆底盘上下3%-5%)进行选取,选取到的点均作为第一切片中的点,这样第一切片为某一段z值区间对应的一组切片。
118.或者,本发明的其他实施方式中,也可以从不同的z值处对车辆点云簇进行切片处理,得到多个第一切片,从该多个第一切片中选择包含最多点的切片进行后续处理。或者,另一种实施方式中,也可以从预设z值处对车辆点云簇进行切片处理,得到一个第一切片,对该第一切片进行后续处理。
119.举例来说,车辆点云簇可以参考图3所示,图3中示出的是三维点云,第一切片可以参考图4所示,图4中示出的是第一预设方向的二维点云,如果忽略掉误差,第一预设方向为水平方向,则图4可以理解为图3中的点云在竖直方向的多个横切面,或者说多个水平截面。
120.s104:识别第一切片中的直角边线,基于直角边线生成车辆点云簇的包围盒。
121.延续上述例子,假设选择图4中的左下方的第一切片进行处理,识别出的直角边线可以参考图5所示。举例来说,可以采用ransac(random sample consensus,随机采样)算法,识别第一切片中的直角边线。具体的识别算法不做限定。下面对ransac算法识别第一切片中的直角边线的过程进行简单介绍:
122.可以在第一切片中随机选取3个点,若这3个点能够组成互相垂直的两条线,则将
这3个点保存为一个参数因子,该参数因子中包括位置和方向。判断第一切片中的其他点是否落在该互相垂直的两条线上,将落在这两条线上的点(例如,距离这两条线中任意一条线的距离小于采样精度的点)记录为内点,统计该参数因子对应的内点数量。可以在点云中遍历选取任意3个点,针对每3个点都重复上述过程,直至遍历完成。然后选取内点数量最多的参数因子,该参数因子对应的两条线即为识别出的直角边线。
123.第一切片是对车辆点云簇中进行切片处理得到的,因此,第一切片与车辆点云簇之间存在坐标映射关系,可以将该直角边线映射至车辆点云簇中。参考图6所示,可以根据映射至车辆点云簇的直角边线,生成贴合该车辆点云簇的包围盒。
124.上述一种实施方式中,第一预设方向为车身所在平面的方向;在所述车辆点云簇的底部区域沿所述第一预设方向进行切片处理,得到第一切片;这种实施方式中,s104可以包括:基于所述直角边线生成所述第一切片的包围盒;以所述第一切片的包围盒为底面,在第三预设方向上延伸生成所述车辆点云簇的包围盒,所述第三预设方向与所述第一预设方向之间存在夹角。
125.第三预设方向与第一预设方向的夹角可以为90度或者近似90度。如上所述,底部区域可以理解为车辆的底盘区域,本实施方式中,可以以底盘区域的切片的包围盒为底面,并根据预设高度生成一个立体的包围盒,也就是车辆点云簇的包围盒。该预设高度可以根据车辆的实际高度(车辆底盘至车辆顶部的高度)进行设定,具体数值不做限定。
126.本发明的另一种实施方式中,s104可以包括:确定所述第一切片的平面倾斜角、以及所述直角边线在所述第一切片中的旋转角度和平移分量;基于所述平面倾斜角、所述旋转角度和所述平移分量,将所述车辆点云簇变换至车辆坐标系中;在所述车辆坐标系中,生成所述车辆点云簇的包围盒。
127.参考图7所示,假设两条直角边线的交点为a,假设第一切片所在平面坐标系的原点为o,直角边线在第一切片中的旋转角度为θ,直角边线在第一切片中的平移分量可以理解为交点a在该平面坐标系中的坐标,记为(tx,ty),第一切片的平面倾斜角可以理解为第一切片与水平面的夹角。
128.举例来说,根据直角边线在第一切片中的旋转角度θ,可以得到第一切片的旋转矩阵记为m
piece
,根据直角边线在所述第一切片中的旋转角度和平移分量,可以得到第一切片的变换矩阵记为m
local

[0129][0130]
第一切片的空间变换矩阵m=m
piece
*m
local
,通过m便可以将车辆点云簇由世界坐标系变换至车辆坐标系中,在车辆坐标系中生成最贴合车辆点云簇的有向包围盒。车辆坐标系为三维坐标系,例如,车辆坐标系为xyz坐标系,xy轴表示车身所在平面的方向(第一预设方向),z轴表示车身高度方向。
[0131]
可见,本方案中,通过切片处理和识别直角连线,实现了自动生成车辆点云簇的包围盒,减少了人力耗费。此外,人工标注的方案中,由于人为操作的误差,通常会导致标注不准确,而本方案自动生成车辆点云簇的包围盒,减少了人为操作的误差导致标注不准确的
情况,提高了标注准确度。
[0132]
一些情况下,对车辆进行标注,需要标注出该车辆的位置、大小,本发明实施例中,生成包围盒之后,可以将包围盒的位置作为车辆的位置,将包围盒的大小作为车辆的大小,这样,即完成了标注。
[0133]
另一些情况下,对车辆进行标注还需要标注出车辆的方向,也就是车辆的头尾朝向。
[0134]
一种实施方式中,s104之后可以获得所述包围盒在第二预设方向上的投影,所述第二预设方向与所述第一预设方向之间存在夹角;在所述投影中识别所述包围盒的顶边和底边;基于所述顶边与所述底边之间的偏移方向确定车辆的方向;在所述包围盒中标注车辆的方向。
[0135]
本实施方式中所说的“包围盒第二预设方向上的投影”,可以理解为包围盒中包括的点在第二预设方向上的投影。举例来说,可以将包围盒在第二预设方向上进行投影,第二预设方向与第一预设方向的夹角可以为90度或者近似90度,如果第一预设方向为水平方向,则第二预设方向为竖直方向。如上所述,车辆点云簇为三维数据,包围盒在第二预设方向上的投影可以参考图8a所示。
[0136]
在该投影中识别包围盒的顶边和底边,参考图8b所示,底边相对于顶边向右偏移,或者说,顶边相对于底边向左偏移,则可以确定底边偏移方向为车头方向,也就是确定图8b中右侧为车头方向。可以理解,确定出车头方向也就确定出车尾方向,右侧为车头方向,左侧自然为车尾方向。
[0137]
或者,其他实施方式中,也可以在该投影中识别包围盒的侧边(也就是图8b中顶边和底边之间右侧的斜线),根据该侧边的倾斜方向确定出车尾方向。图8b中该侧边的下方向右倾斜,则确定右侧为车头方向。
[0138]
或者,另一种实施方式中,s104之后可以确定所述包围盒映射至所述待标注点云对应的图像中的区域,作为目标区域;通过对所述目标区域进行识别,确定所述目标区域中的车辆的方向;在所述包围盒中标注车辆的方向。
[0139]
如上所述,可以通过测量设备扫描得到待标注点云,本实施方式中,可以在同一场景中设置测量设备和图像采集设备,该测量设备与该图像采集设备针对同一场景分别采集点云和图像,该点云与该图像之间存在对应关系。这里所说的图像可以为rgb(red green blue,红绿蓝)图像,或者其他形式的图像。通过对测量设备和图像采集设备进行标定,可以确定测量设备所采集点云所在的坐标系与图像采集设备所采集图像所在的坐标系之间的映射关系。根据该映射关系,可以将车辆点云簇的包围盒映射至待标注点云对应的图像中,为了方便描述,将映射的区域称为目标区域。
[0140]
目标区域可以理解为车辆所在的图像区域,通过图像识别算法,可以识别目标区域中车辆的方向。例如,可以通过机器学习训练得到识别模型,训练过程可以包括:获取待训练图像,待训练图像中包括车辆区域,标注待训练图像中的车辆方向(车辆的头部和/或尾部),得到待训练图像的标注信息,将待训练图像输入至预设结构的神经网络中,将神经网络的输出结果与待训练图像的标注信息进行对比,根据对比结果对该神经网络进行迭代调整,直至网络收敛,便得到了训练完成的识别模型。将目标区域输入至该识别模型,该识别模型可以输出目标区域中车辆的方向信息。
[0141]
再例如,一种情况下,待标注点云对应的图像为彩色图像,可以识别所述目标区域中的红色灯区域,将所述红色灯域所在的一侧确定为车辆的尾部。可以理解,确定出车头方向也就确定出车尾方向,一侧为车尾方向,另一侧自然为车头方向。
[0142]
或者,另一种情况下,可以识别所述目标区域中的白色灯区域,将所述白色灯域所在的一侧确定为车辆的头部。可以理解,确定出车头方向也就确定出车尾方向,一侧为车头方向,另一侧自然为车尾方向。
[0143]
或者,再一种情况下,可以识别所述目标区域中的红色灯区域,将所述红色灯域所在的一侧确定为车辆的尾部;识别所述目标区域中的白色灯区域,将所述白色灯域所在的一侧确定为车辆的头部。在图像中识别车辆方向的具体方式不做限定。
[0144]
上述实施方式介绍了通过对包围盒进行投影标注车辆的方向的方案,本实施方式介绍了通过图像标注车辆的方向的方案,一些情况下,如果点云数据不完整,不能通过对包围盒进行投影标注车辆的方向,则可以通过图像标注车辆的方向。通过图像标注车辆的方向的方案准确性较高,通过对包围盒进行投影标注车辆的方向的方案成本较低。
[0145]
一种实施方式中,所述确定所述包围盒映射至所述待标注点云对应的图像中的区域,作为目标区域,可以包括:获取所述待标注点云对应的多台图像采集设备采集的图像,作为候选图像;分别将所述包围盒投影至每张候选图像中,将投影面积最大的候选图像确定为目标图像;确定所述包围盒映射至所述目标图像中的区域,作为目标区域。
[0146]
延续上述例子,可以在同一场景中设置测量设备和多台图像采集设备,该测量设备与该多台图像采集设备针对同一场景分别采集点云和图像,为了方便描述,将待标注点云对应的多台图像采集设备采集的图像称为候选图像,从该候选图像中选择出合适的图像,也就是目标图像,将车辆点云簇的包围盒映射至目标图像中,得到目标区域。
[0147]
本实施方式中,分别将所述包围盒投影至每张候选图像中,将投影面积最大的候选图像确定为目标图像。目标图像中包围盒的投影面积最大,因此,目标图像可以理解为采集角度最佳的图像,在采集角度最佳的图像中识别车辆方向,提高了识别准确性。
[0148]
举例来说,可以通过如下算式,选择采集角度最佳的图像:
[0149]
score=(p-oc)*dc[0150]
其中,oc表示某图像采集设备的坐标位置,dc表示某图像采集设备的单位矢量方向,p表示观测点位置,score表示得分,计算得分可以理解为计算图像采集设备的坐标位置到观测点位置的向量,在图像采集设备法向单位方向的投影大小,投影越大,得分越高,采集角度越佳。
[0151]
应用本发明所示实施例,第一方面,通过切片处理和识别直角连线,实现了自动生成车辆点云簇的包围盒,减少了人力耗费,减少了人为操作的误差导致标注不准确的情况,提高了标注准确度。第二方面,提供了至少两种标注车辆方向的方案,其中,通过图像标注车辆的方向的方案准确性较高,通过对包围盒进行投影标注车辆的方向的方案成本较低。第三方面,既提供了自动识别车辆点云簇的方案,又提供了人工选择车辆点云簇的方案,通用性较佳。
[0152]
与上述方法实施例相对应,本发明实施例还提供了一种点云标注装置的结构示意图,参考图9所示,包括:
[0153]
获取模块901,用于获取待标注点云;
[0154]
第一确定模块902,用于确定所述待标注点云中的车辆点云簇;
[0155]
第一切片模块903,用于对所述车辆点云簇在第一预设方向上进行切片处理,得到第一切片,所述第一预设方向为非竖直方向;
[0156]
生成模块904,用于识别所述第一切片中的直角边线,基于所述直角边线生成所述车辆点云簇的包围盒。
[0157]
本发明的一种实施方式中,所述装置还包括:获得模块、识别模块、第二确定模块和第一标注模块(图中未示出),其中,
[0158]
获得模块,用于获得所述包围盒在第二预设方向上的投影,所述第二预设方向与所述第一预设方向之间存在夹角;
[0159]
识别模块,用于在所述投影中识别所述包围盒的顶边和底边;
[0160]
第二确定模块,用于基于所述顶边与所述底边之间的偏移方向确定车辆的方向;
[0161]
第一标注模块,用于在所述包围盒中标注车辆的方向。
[0162]
本发明的一种实施方式中,所述装置还包括:第三确定模块、第四确定模块和第二标注模块(图中未示出),其中,
[0163]
第三确定模块,用于确定所述包围盒映射至所述待标注点云对应的图像中的区域,作为目标区域;
[0164]
第四确定模块,用于通过对所述目标区域进行识别,确定所述目标区域中的车辆的方向;
[0165]
第二标注模块,用于在所述包围盒中标注车辆的方向。
[0166]
本发明的一种实施方式中,所述第三确定模块,具体用于:
[0167]
获取所述待标注点云对应的多台图像采集设备采集的图像,作为候选图像;
[0168]
分别将所述包围盒投影至每张候选图像中,将投影面积最大的候选图像确定为目标图像;
[0169]
确定所述包围盒映射至所述目标图像中的区域,作为目标区域。
[0170]
本发明的一种实施方式中,所述第四确定模块,具体用于:
[0171]
识别所述目标区域中的红色灯区域,将所述红色灯域所在的一侧确定为车辆的尾部;
[0172]
和/或,识别所述目标区域中的白色灯区域,将所述白色灯域所在的一侧确定为车辆的头部。
[0173]
本发明的一种实施方式中,所述第一预设方向为车身所在平面的方向;第一切片模块903具体用于:
[0174]
确定所述车辆点云簇的平面倾斜角,基于所述平面倾斜角确定进行切片处理的第一预设方向;
[0175]
在所述车辆点云簇的底部区域沿所述第一预设方向进行切片处理,得到第一切片。
[0176]
本发明的一种实施方式中,生成模块904具体用于:
[0177]
确定所述第一切片的平面倾斜角、以及所述直角边线在所述第一切片中的旋转角度和平移分量;
[0178]
基于所述平面倾斜角、所述旋转角度和所述平移分量,将所述车辆点云簇变换至
车辆坐标系中;
[0179]
在所述车辆坐标系中,生成所述车辆点云簇的包围盒。
[0180]
本发明的一种实施方式中,生成模块904具体用于:
[0181]
基于所述直角边线生成所述第一切片的包围盒;
[0182]
以所述第一切片的包围盒为底面,在第三预设方向上延伸生成所述车辆点云簇的包围盒,所述第三预设方向与所述第一预设方向之间存在夹角。
[0183]
本发明的一种实施方式中,第一确定模块902具体用于:
[0184]
通过对所述待标注点云进行聚类识别,确定所述待标注点云中的车辆点云簇。
[0185]
本发明的一种实施方式中,所述装置还包括:
[0186]
渲染模块(图中未示出),用于对所述待标注点云进行渲染并展示;
[0187]
第一确定模块902具体用于:接收对所展示的待标注点云的选区指令,根据所述选区指令确定所述待标注点云中的选区,确定位于所述选区中的点属于车辆点云簇。
[0188]
应用本发明所示实施例,确定待标注点云中的车辆点云簇;对车辆点云簇在第一预设方向上进行切片处理,得到第一切片;识别第一切片中的直角边线,基于直角边线生成车辆点云簇的包围盒;可见,本方案中,通过切片处理和识别直角连线,实现了自动生成车辆点云簇的包围盒,减少了人力耗费。
[0189]
本发明实施例还提供了一种电子设备,如图10所示,包括处理器1001和存储器1002,
[0190]
存储器1002,用于存放计算机程序;
[0191]
处理器1001,用于执行存储器1002上所存放的程序时,实现上述任意一种点云标注方法。
[0192]
上述电子设备提到的存储器可以包括随机存取存储器(random access memory,ram),也可以包括非易失性存储器(non-volatile memory,nvm),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
[0193]
上述的处理器可以是通用处理器,包括中央处理器(central processing unit,cpu)、网络处理器(network processor,np)等;还可以是数字信号处理器(digital signal processing,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
[0194]
本电子设备可以为后台服务器,也可以为前端交互设备。上述方法实施例中,“对所述待标注点云进行渲染并展示;接收对所展示的待标注点云的选区指令,根据所述选区指令确定所述待标注点云中的选区,确定位于所述选区中的点属于车辆点云簇”的步骤可以由前端交互设备执行,其他步骤可以由后台服务器执行。本发明实施例对哪些设备执行哪些步骤并不做限定。
[0195]
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一种点云标注方法。
[0196]
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任意一种点云标注方法。
[0197]
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
[0198]
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0199]
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例、设备实施例、计算机可读存储介质实施例、以及计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0200]
以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献