APP下载

基于点云与图像决策级融合的道路行人检测

2021-02-14王长海陈倩唐欣叶进

关键词:实时性激光雷达行人

王长海,陈倩,唐欣,叶进

(1.广西综合交通大数据研究院, 广西 南宁 530001;2.桂林电子科技大学 信息与通信学院, 广西 桂林 541004;3.广西交通设计集团有限公司, 广西 南宁 530001;4.广西大学 计算机与电子信息学院, 广西 南宁 530004;5.广西多媒体通信与网络技术重点实验室, 广西 南宁 530004)

0 引言

行人是交通道路上的高危群体,无论是高级驾驶辅助系统(advanced driver assistance system,ADAS)还是自动驾驶系统,行人检测一直是关键技术的突破方向。传统的用于安全驾驶辅助的行人检测主要依靠视觉图像来识别道路行人并进行动态分析和追踪,主要有mobileye、谷歌、特斯拉等为代表的企业,但基于图像的行人检测的车辆仍然发生车撞人的事故[1]。因此,如何优化道路行人目标检测方法,是当前车辆安全驾驶的一项重要任务。

近年来,图像行人检测受场景使用限制,且传统人工设计行人特征复杂,使得基于深度学习的行人检测技术成为了研究热点。目前的基于深度学习技术的行人检测方法可分为两大类。一类是以RCNN、Fast RCNN、Faster RCNN、 Mask RCNN等为代表两阶段框架算法[2-3],该类方法检测精度较高,但是计算复杂,实时性差。另一类是以YOLO系列[4]、SSD系列[5-6]等算法为代表的单级框架,虽然提高了计算效率,但其精度不及两阶段框架算法。进一步,实用性强的行人检测方法不仅能从复杂环境中检测行人,而且能对行人的方位进行测量。景亮等[7]使用双目相机对行人进行检测,利用视差原理计算行人的相对位置,但其算法复杂度高,实时性差,且全景相机视场角大,成像畸变严重,与其他传感器标定难度高,测距精度差。另外,由于深度学习技术在图像目标检测中的优异表现,不少学者也将该技术扩展到三维空间,应用在基于点云的行人检测中。如基于PointNet[8]、PointNet++[9]等行人目标算法被相继提出,且获得较好的目标检测分类及测距效果,但是运算量大,消耗计算资源多,实时性差。MATURANA等[10]和LANG等[11]在VoxNet的基础上采用Pointpillar算法,有效提高了行人目标检测的实时性。上述文献无论是基于图像或基于点云的行人目标检测方法,在计算资源受限下的行人检测实时性和精度方面均难以实现均衡。

因此,笔者提出了一种基于激光点云与图像决策级融合的道路行人检测方法,该方法首先对目标行人点云进行预处理及聚类。然后,在决策级基于概率数据关联(probabilistic data association,PDA)[12]进行点云与图像融合的行人检测,并通过对比实验和实际场景测试,验证了本文方法可在低算力条件下实现较高的行人检测的准确度和实时性。

1 相关工作

利用车载多传感器融合进行道路行人目标检测,是实现车辆智能驾驶的重要任务之一,而基于点云与图像信息的融合是充分利用了三维点云的空间距离信息和二维图像的可视信息,为检测行人及其方位提供稳定可靠的信息来源,根据点云与图像信息融合的层次可将当前的道路行人检测方法分为三类。

① 点云与图像数据级融合

数据级融合首先是将车载多传感器采集到的行人目标数据进行融合,再从融合后的数据中提取相关信息进行判断与识别,该层次融合的优点是可以保留丰富的原始信息。有学者提出基于深度学习技术对点云与图像进行数据级融合,学习在多个视图下周围目标的特征以检测其类别和方位,如MV3D[13]、AVOD[14]等算法,先将点云转换为鸟瞰图、前视图等多视图,再结合图像输入深度卷积网络,检测出目标的类别及方位。但该层次融合属于底层数据融合,原始数据信息量相对较大,数据在传输和融合处理方面复杂,实时性较差。

② 点云与图像特征级融合

特征级融合属于中间层次的融合方式,常见的融合方法包括聚类 (clustering method,CM)、贝叶斯理论(bayesian theory,BT),Dempster-Shafer证据推理(D-S方法)等[15]。点云与图像特征级融合通过对车载多传感器采集到的原始行人目标数据进行相关特征信息提取,再对所提取的特征信息进行综合性分析以及融合处理,最后对融合后的特征进行分类并给出决策判决。该融合方法对目标进行边缘特征提取、分割等操作,再进行目标特征进行融合匹配,其优点是对于原始数据进行特征提取,得到更加丰富的行人目标特征,如PointPainting算法[16]先进行目标分割,再根据预先标定关系,将对应点云配置不同的颜色并输入三维卷积神经网络,进而得到精确的行人目标及其相对位置。但是行人目标分割和三维卷积会累积大量运算,实时性也难以得到保证。

③ 点云与图像决策级融合

决策级融合属于最高层次的信息融合,车载多传感器根据采集到的数据进行目标的类别或方位检测,将处理结果输入融合中心,融合中心根据设定的融合规则整合各传感器的处理结果,进行决策级的综合分析与判决。决策级融合的优点在于运算消耗较小,实时性强,并具有良好的抗噪性能以及容错能力。如曲昭伟等[17]提出将点云的深度信息与图像的行人检测相融合,该方法在行人图像检测方面精度不高,直接影响了融合后的行人检测的精度。陆峰等[18]采用DSmT(dezert-samarandache theory)理论对点云与图像的行人检测结果进行判别,提高了检测系统的稳定性与精度,但实时性受到严重的影响。宫铭钱等[19]利用基于密度的噪声应用空间聚类(density-based spatial clustering of applications with noise,DBSCAN)对点云聚类,同时使用深度学习的方法检测图像上的目标类别,再通过决策级融合点云聚类目标和图像检测目标,检测精度高。

图1 行人检测流程Fig.1 Road pedestrian detection

上述研究说明了基于点云与图像的融合在道路行人检测方面是可行的,但这些融合方法多数是在高功耗、高算力平台执行,未考虑实际车载计算资源的稀缺性和局限性,上述方法在低算力的嵌入式计算平台上执行,会导致检测的精度和实时性均得不到保障,道路行人检测的性能面临巨大挑战,因此,笔者结合了点云与图像决策级融合数据量少的优势,设计了基于低算力嵌入式平台的点云与图像决策级融合行人检测方法。

2 本文设计

基于点云与图像决策级融合的道路行人检测,首先通过微机电系统(micro electro mechanical system,MEMS)激光雷达与单目相机分别获取激光点云和图像数据,对点云进行分割和滤波预处理,再采用DBSCAN算法对点云进行聚类,完成行人点云的初步检测。同时,通过深度学习视觉算法检测图像中的行人,然后,根据激光雷达与相机预先标定的外参关系,在决策级融合行人点云聚类与行人图像检测结果。行人检测流程如图1所示。

2.1 行人数据处理与检测

为减少点云的处理数量,提高目标点云检测的实时性,选取车前方的区域作为目标点云的检测范围,原始点云如图2(a)所示。首先采用基于路面平面拟合算法[20]剔除目标区域的地面点云,如图2(b)所示。然后,采用邻域滤波算法[12]剔除噪声点云,如图2(c)所示。

(a) 原始点云

为满足行人检测的实时性要求,采用DBSCAN算法对行人点云进行聚类。该算法将密度足够大的区域划分为簇,每个簇作为DBSCAN算法的一个类,该算法以邻域半径ε和密度阈值minPts作为关键参数。邻域半径ε与密度阈值minPts分别表示为

式中,rn-1表示点云到激光雷达中心的欧氏距离;Δφ为激光线束的角度分辨率;σr为激光雷达自身测量误差。为适配MEMS激光雷达的参数要求,设置Δφ=0.2°,σr=0.05;γ为邻域阈值参数;∂为点云密度阈值影响因子,取γ=1.5°,∂=6。

本文采用DBSCAN算法对点云聚类的处理结果如图3(a)所示。为选出符合行人特征的目标点云,对聚类后的目标进行二次滤波,以剔除超出正常行人尺寸阈值的目标,降低点云聚类目标与图像行人识别的误匹配率,设置行人的点云聚类目标尺寸的长度为0.3~0.8 m,宽度为0.1~0.8 m,高度为0.6~2.1 m。经预处理后自适应阈值DBSCAN聚类点云的效果如图3(b)所示。可见,激光点云经过预处理后,再加入自适应阈值DBSCAN算法的目标聚类数明显增加。

(a) DBSCAN聚类点云

同时,本文采用YOLOv4算法进行基于图像的行人检测,其检测流程如图4所示。

图4 基于YOLOv4的图像目标检测流程Fig.4 Image target detection based on YOLOv4

2.2 融合点云与图像行人目标检测

为进一步提升行人检测的实时性和准确性,本文设计在决策级采用PDA融合点云与图像行人检测结果。根据激光雷达与相机的外参标定结果,点云投影到图像上,使得三维点云聚类目标的点群变成二维点群,然后根据二维点群与图像检测行人的位置建立关联,并以此作为点云与图像融合的依据。

为评估点云数据与图像像素的关联程度,将点云数据建模为事件Bi,图像像素建模为事件Bj[21],同时,为衡量二维点群与图像识别结果的相符程度,定义二维聚类目标点群与图像识别行人区域的交并比[22]:

式中,PIOU表示事件Bi和事件Bj的相符程度,S(X)表示区域X的面积,而在点云与图像的信息融合中,二维聚类目标点群与图像识别行人的区域重合度越高,相交部分面积越大,合并面积越小。但点云聚类会产生多个潜在行人点群目标,图像识别也会识别出多个行人,因此应根据点云投影的二维矩形区域,计算其关联程度,设点云聚类后投影到图像上的二维点云目标区域为RLi,图像识别行人区域为RCj,其中,i、j分别为点群目标区域和图像识别行人区域的序号,定义目标区域关联概率为

远处的行人在点云及图像上均是小目标成像,且传感器外参标定存在误差,若RLi与RCj没有重叠区域,则式(4)计算失效,因此引入文献[23]的算法思想,构建包含RLi与RCj矩形框区域的最小矩形框,并计算其对角线长度c,计算RLi中心点坐标与RCj中心点坐标的欧氏距离以及c的平方值,比值越小表示两者越接近。定义中心点距离概率为

式中,Actri为RLi的中心点坐标;Bctrj为RCj的中心点坐标;ρ2(·)是欧式距离的计算方式;Pij″越大表示Actri与Bctrj越接近,RLi与RCj对应的概率越高。因此,行人检测框的关联概率定义为

式中,Pij值越高表示第i个点云检测目标与第j个图像检测的行人相关性越高,两者为同一个目标的可能性越大。因此,激光点云与图像融合的行人检测是将每帧图像识别到的行人遍历点云聚类目标,关联概率最大者即为点云与图像检测到的目标是同一人。

2.3 行人目标追踪

激光雷达和图像进行融合后,需要对被检测的目标进行存在性判断,本文采用扩展卡尔曼滤波(extended kalman filter,EKF)算法对融合后的被检测的目标进行追踪,根据追踪的结果综合判断最终目标的输出。

融合被检测目标的状态量:

X=(x,y,z,vx,vy,vz),

(7)

式中,x,y,z,vx,vy,vz分别表示目标的x轴的坐标,y轴的坐标,z轴的坐标,x轴的速度,y轴的速度,z轴的速度。

EKF的状态方程和观测方程:

式中,Xk+1、Xk分别表示目标的在k+1、k时刻的状态量;Zk表示目标在k时刻的观测量;f、h分别表示非线性状态和观测函数;Wk、Vk表示高斯白噪声。

图5 基于EKF的目标追踪流程Fig.5 Processes of object tracking based on EKF

激光雷达与图像融合得到的行人检测目标,如果当前目标没有卡尔曼滤波的预测值与之匹配,则新建一个目标ID,根据当前检测目标的状态生成新的预测值,与下一帧的检测目标匹配。若滤波器预测目标在一定时间内没有与之匹配的检测目标,则认为目标已丢失,删除ID。

3 系统测试与验证

为体现文中行人检测方法的可行性进行系统测试。MEMS激光雷达采用速腾聚创RS-LiDAR-M1,视觉传感器采用Basler工业相机acA2040-25gc,嵌入式计算平台采用NVDIA Jetson AGX Xavier,激光雷达、相机通过交换机与嵌入式计算平台互联。计算平台安装Ubuntu 18.04系统,并部署机器人操作系统(robot operation system,ROS)作为软件任务的调度基础框架。ROS中的相机标定工具camera calibration用于获取相机内参,采用标定板在距离激光雷达中心前方5.0~7.5 m处缓慢移动,得到N组不同的标定板位姿,实验选取9组位姿,即N=9,再通过OpenCV函数库求出图像标定板上顶点、左顶点及右顶点坐标并计算出最优外参,为点云与图像融合行人检测提供一致的空间位置坐标。

3.1 图像行人检测

结合VOC、COCO数据集中的行人子集,拼接成系统训练的数据集以用于训练YOLOv4算法模型。模型训练均在深度学习框架PyTorch中实现,初始训练的学习率为0.01,当网络训练迭代达到整个过程的70%和90%时,学习率减小10倍。权重衰减设置为0.001,动量设置为0.9,得到训练后的YOLOv4模型。行人图像测试张数为1 000,利用YOLOv4算法检测行人的平均漏检率为3.96%(表1)。基于YOLOv4算法的图像行人检测效果如图6所示。

表1 不同距离下的行人检测漏检率Tab.1 False rate of pedestrian detection at different distances %

图6 基于YOLOv4算法的图像行人检测Fig.6 Image pedestrian detection based on YOLOv4

图7 行人方位示意Fig.7 Schematic diagram of pedestrian orientation

3.2 点云与图像融合算法测试

采集了不同距离的行人点云数据,利用semantic-segmentation-editor工具对点云作行人标注,以此作为数据集评估DBSCAN算法对行人方位检测的准确性。行人方位示意如图7所示,以激光雷达为圆心,行人目标为圆弧边界的任一点,以激光雷达点云波束正前方的中心线为基准,右边夹角为正向,左边夹角为负向,方位包括方向夹角α和距离l。

数据集标注了200帧点云数据,测试不同距离下的聚类方位与标注方位的平均误差见表2。从表2可见,在不同的距离下,DBSCAN聚类目标的方向平均误差保持在0.99°~1.26°,符合方向误差精度要求;距离平均误差随着被测试目标距离的加大而增长,距离平均误差保持在4.35~11.93 cm,符合厘米级的误差精度要求。

表2 不同距离下的聚类方位与标注方位的平均误差Tab.2 Average error of clustering orientation and labeling orientation under different distances

实验对比了PDA与最近邻数据关联算法(near neighbor data association, NNDA)、联合概率数据关联算法(joint probability data association, JPDA)在信息融合检测方面的性能,3种融合算法的平均耗时与融合准确率对比见表3。从表3可见,虽然NNDA融合的平均耗时最低,具有高实时性的特性,但是其检测准确性只有60.54%,而JPDA的融合准确率最高,但其平均耗时30.25 ms。本文采用的PDA平均耗时仅比NNDA高3.36 ms,且融合准确率仅比JPDA低0.91%。

表3 3种融合算法的平均耗时与融合准确率对比Tab.3 Comparison of average time-consuming and fusion accuracy of three fusion algorithms

实验以方向平均误差和距离平均误差作为行人检测的准确性,以平均检测时间衡量行人检测的实时性,实验对比包括Apollo采用的Apollo_CNN_segment算法(https://github.com/ApolloAuto/apollo)、Autoware采用的Pointpillar算法以及AVOD算法。行人检测误差及平均检测时间见表4。从表4可见,虽然本文提出的基于PDA的决策级融合算法的方向平均误差和距离平均误差分别为0.98°和9.15 cm,略大于Apollo_CNN_segment算法的0.94°和8.87 cm,但其平均检测时间却缩短到了80.4 ms,远小于AVOD算法的687.5 ms,也优于Apollo_CNN_segment算法的218.1 ms,相比Pointpillar算法的150.6 ms,平均检测时间减少了46.6%,这其中主要得益于点云的剔除、滤波及聚类等预处理工作,减少了冗余点云的计算量和融合匹配时间,提升了行人检测的实时性。

表4 行人检测误差及平均检测时间Tab.4 Pedestrian detection error and average detection time

4 结论

本文设计了一种基于点云与图像决策级融合的道路行人检测方法,运用DBSCAN算法进行目标点云聚类,接着进行基于PDA的点云与图像融合行人检测,并通过系统验证测试及数据分析。实验结果说明了文中设计基于点云与图像决策级融合方法,在行人检测方面是有效的,且平均检测时间与AVOD、Apollo_CNN_segment及Pointpillar融合算法比较,用时降低了46.6%以上,适合部署到低功耗、低成本的车载嵌入式智能驾驶系统中,以提升车辆行驶安全。

猜你喜欢

实时性激光雷达行人
激光雷达实时提取甘蔗垄间导航线
法雷奥第二代SCALA?激光雷达
融合激光雷达与超声波数据的障碍物检测方法
毒舌出没,行人避让
Ouster发布首款全固态数字激光雷达
路不为寻找者而设
我是行人
计算机控制系统实时性的提高策略
可编程控制器的实时处理器的研究
基于B/S的实时用户行为检测管理系统设计与实现