本发明涉及目标检测,具体是一种基于激光雷达与相机融合的目标检测方法及装置。
背景技术:
1、对于自动驾驶车辆和移动机器人等智能主体,在运动过程中,需要对环境中的目标进行识别与定位,从而实现安全行驶,并正确地执行任务。例如,自动驾驶车辆在行驶过程中,需要对周围的其它车辆进行检测,在单幅图像中检测车辆,图像中目标的坐标仅仅只是2d坐标,而非3d坐标。通过图像中的2d坐标,无法直接获取目标在真实环境中的位置和方向。
2、计算目标在真实环境中的3d坐标的方法有多种,例如采用深度相机(包括双目相机、结构光相机、tof(time offlight,飞行时间)相机等)可直接获取目标的深度(距离),或采用相机与雷达融合的方式计算目标的3d坐标。深度相机受环境光照的影响较大,例如环境中某个位置的反射光较强,或者环境光线较弱,或者光线被雨雾遮挡等,都会导致深度相机输出的深度值精度降低,甚至会导致深度值输出错误。另外,深度相机在远距离的范围内,点云比较稀疏,且精度较低。而在一些基于相机与激光雷达融合的目标检测方法中,往往都没有充分利用图像信息,导致3d目标定位的精度较低。
技术实现思路
1、针对上述现有技术中的不足,本发明提供一种基于激光雷达与相机融合的目标检测方法及装置,采用相机与雷达融合的方式,以图像中的目标顶部区域、侧面区域和尾部区域作为输入,充分利用了图像信息,可实现高精度的目标检测,且定位精度不受环境光照影响。
2、为实现上述目的,本发明提供一种基于激光雷达与相机融合的目标检测方法,包括如下步骤:
3、步骤1,获取目标图像数据与目标点云数据;
4、步骤2,对所述目标图像数据进行轮廓提取,得到目标尾部区域的轮廓集合c1、目标侧面区域的轮廓集合c2与目标顶部区域的轮廓集合c3;
5、步骤3,在所述目标点云数据中,分别提取与轮廓集合c1、c2、c3对应的目标尾部区域的3d点云集合pc1、目标侧面区域的3d点云集合pc2与目标顶部区域的3d点云集合pc3;
6、步骤4,基于3d点云集合pc1、pc2与pc3进行平面估计,得到目标尾部区域对应的平面p1、目标侧面区域对应的平面p2、目标顶部区域对应的平面p3;
7、步骤5,基于平面p1、平面p2、平面p3以及所述目标点云数据计算得到目标边界框,将所述目标边界框底边中点的坐标作为目标当前帧的位置信息、所述目标边界框底边的法向量与智能主体坐标系y轴正方向的夹角作为目标当前帧的方向信息并输出。
8、在其中一个实施例,步骤2具体为:
9、步骤2.1,对所述目标图像数据进行像素分割,得到目标尾部区域的像素集合a1、目标侧面区域的像素集合a2与目标顶部区域的像素集合a3;
10、步骤2.2,分别对像素集合a1、a2、a3中的像素点进行形态学处理并进行轮廓提取,到目标尾部区域的轮廓集合c1、目标侧面区域的轮廓集合c2与目标顶部区域的轮廓集合c3。
11、在其中一个实施例,步骤3具体为:
12、步骤3.1,将所述目标点云数据投影至所述目标图像数据,得到投影后的2d点云集合pcproj;
13、步骤3.2,遍历所述2d点云数据集合pcproj,分别保存位于轮廓集合c1、c2、c3内的点云,得到目标尾部区域的2d点云集合pc2d-1、目标侧面区域的2d点云集合pc2d-2与目标顶部区域的2d点云集合pc2d-3;
14、步骤3.3,提取所述目标点云数据中分别对应2d点云集合pc2d-1、pc2d-2、pc2d-3的3d点云,得到目标尾部区域的3d点云集合pc1、目标侧面区域的3d点云集合pc2与目标顶部区域的3d点云集合pc3。
15、在其中一个实施例,步骤5中,所述基于平面p1、平面p2、平面p3以及所述目标点云数据计算得到目标边界框,具体为:
16、步骤5.1,以平面p1为基础,以平面p2和/或平面p3为约束,向远离激光雷达的方向在所述目标点云数据中划定初始点云范围range,划分长度为lran,其中,lran为平面p3的长度;
17、步骤5.2,将初始点云范围range内的点云投影到智能主体坐标系的xoy平面,得到平面点云pc2d;
18、步骤5.3,采用l形拟合方法或最优包络矩形优化方法,结合历史目标点云数据中目标的宽度与位置信息,估计得到目标边界框。
19、在其中一个实施例,步骤5.3中,所述采用l形拟合方法或最优包络矩形优化方法具体为:
20、当平面点云pc2d的点为离散分布时,采用l形拟合方法;
21、当平面点云pc2d的点为聚集分布时,采用最优包络矩形优化方法。
22、在其中一个实施例,当所述目标图像数据中不存在目标侧面区域或目标顶部区域时,则输出3d点云集合pc2或pc3为空集,对应的平面p2或平面p3不存在;
23、当步骤5.1中,划定所述初始点云范围range时以平面p2和平面p3为约束,则判定所述初始点云范围range投影的平面点云pc2d中的点为离散分布;
24、当步骤5.1中,划定所述初始点云范围range时以平面p2或平面p3为约束,则判定所述初始点云范围range投影的平面点云pc2d中的点为聚集分布。
25、在其中一个实施例,步骤5.3中,基于最优包络矩形优化方法得到目标边界框的过程为:
26、以上一帧目标边界框的底边中点坐标、目标宽度为初始约束条件,以包络矩形内的点数最大化、空白区域面积最小化建立目标函数,迭代优化得到最优包络矩形,即为当前帧的目标边界框。
27、在其中一个实施例,所述目标函数为:
28、
29、其中,f(w,x,y)为目标函数,w为优化过程中包络矩形的待优化宽度,(x,y)为优化过程中包络矩形的待优化底边中点坐标,即(w,x,y)为优化过程中的包络矩形,nin为包络矩形(w,x,y)内部的点数,n为上一帧目标边界框内部的点数,wtemp为包络矩形(w,x,y)内部点的最小包络圆形的宽径,w0为上一帧目标边界框的宽度;
30、迭代优化过程中,在搜索范围[w0-δw,w0+δw]、[x0-δx,x0+δx]、[y0-δy,y0+δy]内分别搜索w、x、y,使所述目标函数最小,得到当前帧的最优包络矩形,即当前帧的目标边界框,其中,(x0,y0)为上一帧目标边界框底边中点的坐标,δw、δx、δy为预设的搜索精度。
31、在其中一个实施例,目标检测方法还包括:
32、步骤6,采用匹配算法在连续的多帧点云数据中跟踪目标边界框的底边中点,跟踪连续帧点云数据中的目标,将其匹配到对应目标的跟踪队列。
33、为实现上述目的,本发明还提供一种基于激光雷达与相机融合的目标检测装置,采用上述的方法进行目标检测,所述目标检测装置包括:
34、数据获取单元,用于获取目标图像数据与目标点云数据;
35、轮廓提取单元,用于对所述目标图像数据进行轮廓提取,得到目标尾部区域的轮廓集合c1、目标侧面区域的轮廓集合c2与目标顶部区域的轮廓集合c3;
36、点云提取单元,用于在所述目标点云数据中,分别提取与轮廓集合c1、c2、c3对应的目标尾部区域的3d点云集合pc1、目标侧面区域的3d点云集合pc2与目标顶部区域的3d点云集合pc3;
37、平面估计单元,用于根据3d点云集合pc1、pc2与pc3进行平面估计,得到目标尾部区域对应的平面p1、目标侧面区域对应的平面p2、目标顶部区域对应的平面p3;
38、目标检测单元,用于根据平面p1、平面p2、平面p3以及所述目标点云数据计算得到目标边界框,将所述目标边界框底边中点的坐标作为目标当前帧的位置信息、所述目标边界框底边的法向量与智能主体坐标系y轴正方向的夹角作为目标当前帧的方向信息并输出。
39、与现有技术相比,本发明具有如下有益技术效果:
40、本发明提供的一种基于激光雷达与相机融合的目标检测方法及装置,先在目标图像数中提取目标尾部区域、侧面区域与顶部区域的轮廓,再以目标图像数据与目标点云数据的对应关系,在目标点云数据中提取目标尾部区域、侧面区域与顶部区域的局部点云,最后以此估计目标边界框,再以目标边界框底边中点的坐标作为目标的位置信息、底边的法向量与智能主体坐标系y轴正方向的夹角作为目标的方向信息,实现目标的精确定位,且定位精度不受环境光照影响。
1.一种基于激光雷达与相机融合的目标检测方法,其特征在于,包括如下步骤:
2.根据权利要求1所述的基于激光雷达与相机融合的目标检测方法,其特征在于,步骤2具体为:
3.根据权利要求1所述的基于激光雷达与相机融合的目标检测方法,其特征在于,步骤3具体为:
4.根据权利要求1至3任一项所述的基于激光雷达与相机融合的目标检测方法,其特征在于,步骤5中,所述基于平面p1、平面p2、平面p3以及所述目标点云数据计算得到目标边界框,具体为:
5.根据权利要求4所述的基于激光雷达与相机融合的目标检测方法,其特征在于,步骤5.3中,所述采用l形拟合方法或最优包络矩形优化方法具体为:
6.根据权利要求5所述的基于激光雷达与相机融合的目标检测方法,其特征在于,当所述目标图像数据中不存在目标侧面区域或目标顶部区域时,则输出3d点云集合pc2或pc3为空集,对应的平面p2或平面p3不存在;
7.根据权利要求4所述的基于激光雷达与相机融合的目标检测方法,其特征在于,步骤5.3中,基于最优包络矩形优化方法得到目标边界框的过程为:
8.根据权利要求7所述的基于激光雷达与相机融合的目标检测方法,其特征在于,所述目标函数为:
9.根据权利要求1至3任一项所述的基于激光雷达与相机融合的目标检测方法,其特征在于,还包括:
10.一种基于激光雷达与相机融合的目标检测装置,其特征在于,采用权利要求1至9任一项所述的方法进行目标检测,所述目标检测装置包括: