曹立波,向国梁,张乐祺,廖家才,王秋丽
(湖南大学 汽车车身先进设计制造国家重点实验室,长沙 410082)
先进驾驶辅助系统(Advanced Driver Assistance System,ADAS)是目前汽车安全领域的研究热点。在ADAS中,采用基于视觉的方法进行行人检测的缺点是只能对摄像头视野范围内的无遮挡行人进行检测,而很多行人碰撞事故的发生正是由于驾驶员或摄像机受到局部或者全部遮挡时无法及时发现前方行人造成的,同时摄像头工作环境易受天气影响,在极端天气下无法工作,导致基于视觉的主动安全设备的适应性比较差。近年来,随着无线通信技术的发展,车用无线通信(Vehicle to Everything,V-X)技术的应用可降低交通事故发生率或避免此类碰撞交通事故的发生。
行人检测是计算机视觉比较有挑战性的问题,基于HOG + SVM的行人检测算法[1],采用了滑动窗口技术,对每一个窗口进行前景和背景的二分类,并对图像进行缩放。基于HOG特征扩展出来的HOG+AdaBoost方法[2]进行了分类器级联,通过强分类器排除没有人的候选区域以加快检测速度。针对行人检测中的遮挡问题,DPM+ latent SVM方法采用部件检测进行优化[3]。深度卷积神经网络在目标检测算法方面取得了巨大突破[4],以区域卷积神经网络(Regions with CNN,RCNN)为代表的Fast-RCNN、Faster-RCNN等系列网络,在行人检测任务上取得了较好的检测效果,但在速度方面仍有不足[5-6]。REDMON等[7-8]基于深度卷积神经网络提出单次检测框架(YOLO系列框架),实现了端对端实时目标检测,在保证检测效果的同时提高了检测速率。
车联网在智能交通系统和车辆安全等领域的相关应用逐渐成为研究热点。王野秋等[9]将UWB通信模块置于车身上来进行车辆间的相对定位。蒋梦琴等[10]将UWB通信模块用于车辆跟驰距离检测,跟驰距离超过某一阈值时就对驾驶员进行报警提示。赵佳乐等[11]通过UWB通信模块进行车对车的信息传输,从而实现了辅助车辆跟驰、车辆换道以及车辆超车等功能。澳洲智能网联汽车智能型运输系统开发商与澳洲电信合作,使用4G移动通信网络成功完成了行人防撞预警测试,而随着5G技术的发展,基于无线通信的行人安全应用将逐渐得到普及[12]。
本文将视觉技术与V-X技术相结合,实现车载式与网联式主动安全设备的信息融合。用UWB通信模块做测试,并提升基于UWB通信的行人定位精度,通过UWB和视觉分别得出行人与车辆间的相对位置信息,根据碰撞时间模型判断危险行人,以提高ADAS系统中车辆-行人碰撞预警的可靠性。
UWB通过纳秒至微秒级的非正弦波窄脉冲传输数据,具有传输速率高、抗干扰能力强、多径分辨率高、系统容量大等优点,适用于精确测距及定位[13-14],因此,选用UWB通信模块进行无线通信行人检测定位测试。行人携带UWB定位标签,将UWB定位基站布置于车身上,选取基于到达时间的双边测距算法,依据三边定位方法测得行人相对于车辆的位置坐标。为了减少误差,对行人的运动状态进行估计,以提升行人的定位精度。
为了计算得出目标物体的位置坐标,一般情况下首先需要测量得到未知节点与已知节点之间的距离值。基于到达时间测量法(Time of Arrival,TOA)通过计算无线电磁波的传输时间,依据电磁波飞行速度换算得出两测距模块的间距。为消除时钟偏差带来的误差,采用双边测距法,在两测距模块之间增加一次传输,记录每次信号发送及接收时间ti(i=1,2,3,4,5,6),则计算得出两测距模块间电磁波单次飞行时间T,如式(1)所示。
式中:Trd1=t4-t1为基站发送并接收信号的时间间隔;Trd2=t6-t3为标签从发送到接收信号的时间间隔;Trp1=t3-t2为标签从接收到发送信号的时间间隔;Trp2=t5-t4为基站从接收到发送信号的时间间隔。
假设3个基站的位置坐标分别为(x1,y1)、(x2,y2)以及(x3,y3),待求的行人标签坐标为(x,y),则通过3个定位圆相交于一点,可以进一步计算出未知行人的位置坐标[15]。在实际应用中,由于测距误差的存在,致使3个定位圆在一般情况下难以交为一点[16],如图1所示。
图1 三边定位原理(定位圆未交于一点)
3个定位圆的3个交点构成一个三角形区域,利用三角质心法令定位圆的3个交点分别为Pj(xpj,ypj)(j=1,2,3),则标签定位点坐标计算如式(2)所示。
卡尔曼滤波是目前在定位系统中广泛应用的方法[17]。卡尔曼滤波器能够综合传感器输出值和依据先验知识所得出的状态估计值,从而得到更为贴近真实值的结果。
依据前两个连续时刻的行人相对定位结果来计算出行人与车辆间的相对运动速度值,并根据此相对运动速度对下一时刻行人相对车辆的位置进行估计,同时结合该UWB行人定位的实时测量值来综合计算出下一时刻行人相对车辆的定位结果,其中最初两次的行人定位结果直接依照观测值给出。在恒变速条件下,卡尔曼滤波器状态矩阵Xk、状态转移矩阵Fk/k-1如式(3)所示。
由定位系统给出的观测结果为周围行人相对车辆的相对位置坐标,观测向量为Zk=[x,y]T,结合上文的误差分析,在长沙近郊某路段进行定位测试,使测试行人与测试车辆共线匀速相对运动,对该行人进行滤波前后的相对定位测试,其定位结果对比如图2所示。
深度学习目标检测模型YOLOv3在准确率和速度方面得到了很好的平衡,对小目标有很好的检测效果,适用于自动驾驶场景下的多目标快速检测。
对COCO和KITTI数据集进行清洗,获得只有行人的一类目标标注数据集,在此数据集上使用YOLOv3模型训练得出以行人为检测目标的权重文件及配置文件。使用摄像头获取到车辆前方的图像信息,并利用训练的检测权重实现行人检测。
使用双目实现检测目标的测距,双目测距通过两个摄像头从不同角度采集同一目标物体图像信息,经匹配计算得出目标点在两个摄像头中的成像视差测得目标物的深度信息,可计算得到行人深度值Z,如式(4)所示。
式中:Z为行人与摄像头间的纵向距离;f为相机焦距;B为基线长度,即两相机间的中心距;XR,XT分别为目标点在左右两个摄像头成像的像素横坐标值。结合上文中由视觉检测出的行人结果,以检测框中心点坐标作为目标点,测得行人与摄像头间的纵向距离Z,即为行人与车辆间相对纵向坐标yv,同时通过找到相机成像中的灭点,由灭点与目标像素点间的连线通过标定得到的像素比计算得出目标像素点距离相机的横向距离,即其横向坐标xv。
碰撞时间(Time to Collision,TTC)指车辆与目标物体间的跟驰距离除以两者的相对速度,即在此时刻预计两者的碰撞剩余时间值,是常用的评价车辆行车安全的指标。根据连续两个时刻内行人相对位置的变化计算出行人与车辆间的相对速度,通过测出的距离值计算得到的TTC值来评估行人、车辆的碰撞风险。计算原理如图3所示,TTC计算公式如式(5)所示。
图3 TTC计算原理
式中:V为行人与车辆间的相对速度;Δt为连续两时刻间的时间间隔,即检测系统更新行人位置的时间间隔;θ为某时刻行人与车辆相对运动速度方向与行人车辆连线方向间的夹角;ΔV为行人与车辆沿直线距离方向的相对运动速度;d为该时刻检测系统测得的行人与车辆间的相对距离值。当计算得出的TTC值达到安全阈值时,判定此时行人与车辆间存在潜在的碰撞危险。
为了将UWB无线通信系统的行人检测预警结果与视觉的行人检测预警结果相融合,首先需要建立一个世界坐标系,并将UWB检测结果与视觉检测结果分别转换到世界坐标系中。由于预警只需要进行行人平面定位,因此只考虑平行于地面的二维坐标系。
空间中的世界坐标系可由用户自由定义,由于车辆行驶过程中与行人发生碰撞的部位主要是车辆前方车头突出部分,因此,将车辆与行人间的相对距离值设定为行人与车辆最前方车头中点的距离,将世界坐标系原点设置在车辆最前端中点O处,世界坐标系XOY如图4所示。
图4 坐标系转换
UWB的3个通信基站分别安装于车身的前保险杠中间部位以及车辆左右的C柱底端部位,为了计算方便,将UWB检测定位系统的坐标系建立在车辆前向保险杠中间部位的通信模块上,UWB坐标系如图4中Xu,Ou,Yu所示。由于车辆前方的UWB通信模块的安装位置与世界坐标系原点间的Y向安装间距为L1,则UWB坐标系与世界坐标系的转换关系如式(6)所示。
对于视觉坐标系,使用了水平仪将摄像机布置在车内后视镜位置,保持摄像机镜头平面与地面垂直,视觉坐标系为图4中Xc,Oc,Yc所示,令摄像头安装位置与世界坐标系原点间的Y向安装间距为L2,则视觉行人坐标值转换至世界坐标系的关系式如式(7)所示。
3.3.1 基于欧式距离的危险行人位置匹配
令UWB的危险行人点Ui(i=1, …,p)集合为U,视觉危险行人点Vj(j=1, …,q)集合为V,将集合U与集合V进行匹配。首先进行坐标系转换,假设UWB危险行人坐标转换到世界坐标系中的位置坐标为(xi,yi),视觉危险行人坐标转换到世界坐标系中的位置坐标为(xj,yj),分别计算某种检测中每个危险行人位置点与另一种检测中所有危险行人位置点间的欧式距离值,求得其中的最小距离,若最小距离值在设定阈值范围内,则判定匹配成功,匹配公式如式(8)所示。
式中:e1为UWB定位系统的定位误差值;e2为双目视觉测距误差值;s为测试过程中的动态匹配调整值。
3.3.2 预警决策流程
得到UWB危险行人位置点与视觉危险行人位置点的匹配结果后,若UWB检测的危险点无法找到对应匹配的视觉危险点,则判定该行人为被障碍物遮挡或在摄像机视野外的行人,依据UWB检测结果给予预警并标识出遮挡的危险行人相应位置。若视觉危险点无法找到对应的UWB检测危险点进行匹配,则判定为非携带UWB模块的行人,给出视觉预警结果。若匹配成功,则为视觉和UWB共同检测判定出的危险点,给出视觉预警提示。具体预警融合流程如图5所示。
图5 综合预警流程
本文选取某型号UWB芯片进行测试,测距芯片的主要参数见表1。
表1 UWB测距模块参数
选取ZED双目摄像机来进行视觉检测测试,该双目立体摄相机同步获取到空间物体的双目图像,并在计算机中通过对应的软件开发包来计算分析。双目摄相机参数见表2。
表2 双目摄像机参数
4.2.1 基于UWB通信的行人定位误差测试
为衡量行人运动情况下的定位误差,对UWB行人定位算法进行动态误差测试。在天气晴朗的条件下分别在车速为20 km/h、30 km/h、40 km/h的情况下对行人在0~15 m及15~30 m的距离段进行定位测试,并对结果进行误差分析。UWB车辆安装及UWB行人携带如图6所示,所得到的不同车速及距离下的定位平均误差及最大误差见表3。
图6 UWB安装图示
表3 UWB行人定位误差
由上述检测结果可知,UWB定位误差随着车速的增加而增加,并随着检测距离的增加而增加,在行人与车辆相距0~15 m的范围内,动态测距平均误差较低,整体在不同车速下该距离范围内的误差较为稳定。一般情况下,对于车辆有碰撞危险的行人大部分处于这个距离范围。因此,可认为该定位适用于本文的碰撞危险行人检测。
4.2.2 基于视觉的行人定位误差测试
在不同天气和光照的情况下进行多组视觉行人检测定位误差测试,将双目摄像机安装在车内后视镜位置处,其具体的安装位置如图7所示。分别针对晴天、雨天以及不同的距离段进行了多组测试,并分析定位误差,得到不同天气及距离段下的定位平均误差和最大误差,其定位误差结果见表4。
图7 双目摄像机安装及行人检测结果
表4 视觉行人定位误差
从定位检测结果可以看出,晴天时,在15 m以内的平均定位误差在0.74 m,而15~30 m的定位误差超过1 m;雨天时,由于行人检测准确率受到影响,出现跳变的情况,导致15 m内误差超过1 m。在夜晚也进行了测试,然而由于夜晚光照度很低,能检测出行人的帧数较少,所以夜晚检测定位效果不佳。
在天气晴朗的条件下进行试验,以30 km/h的车速对15 m以内的行人进行UWB及视觉的融合行人预警测试,根据上文对基于UWB和视觉的行人定位动态误差的测试结果,选取e1为0.53 m,e2为0.74 m。首先进行被遮挡行人预警测试,测试本系统对被遮挡行人的检测效果。设定一个被遮挡的危险行人点进行测试,一共进行30组检测测试,测试得到的结果见表5。图8为综合预警测试的界面,视觉框中右前方行人被障碍物遮挡,驾驶员以及摄像头无法检测到行人,使用该综合预警的方法可以根据匹配结果获取视觉无法检测的被遮挡行人位置,并在视觉界面中标识出危险行人,给出行人坐标,给予预警。图9为测试现场的场景记录,表5为测试结果。图9中的右侧为布置UWB基站的白色车辆,左边为携带UWB标签的危险行人。
表5 被遮挡行人预警测试
图8 融合预警测试界面结果
图9 融合预警测试场景
根据试验结果,全程漏标或错标危险点的次数为0,说明本融合预警系统可以有效检测出被遮挡的危险行人,具有很强的可靠性。同时,全程正确标识出危险点的情况达到了96.7%,说明本系统具有较强的稳定性。有两次间断性漏标或错标危险点的情况,经分析是某时刻由于外界影响UWB定位时突然发生较大跳变所致。
再进行无遮挡行人预警测试,检验本系统对不同传感器信息的融合效果。在上述同样试验条件下设定一个无遮挡行人危险点,进行30次试验,试验结果见表6。
表6 无遮挡行人预警匹配测试
根据试验结果,预警失败的次数为0,说明本融合预警系统可以有效检测出危险行人,同时匹配成功的情况达到了93.3%,说明本系统可以有效匹配UWB危险行人点和视觉危险行人点,危险行人点多报、误报的概率较低。
(1)开发了一种融合UWB和视觉信息的行人预警系统。试验表明,本系统能够用来检测视觉被遮挡状态下的危险行人,并提高行人碰撞预警系统的可靠性。
(2)通过误差分析对UWB车载基站的布置方式进行了优化,在采用双边测距和三点定位法时,使用等腰三角形布置下的最大误差值为0.90 m,对不同车速条件下的UWB定位误差进行了量化分析。
(3)在被遮挡行人试验中,融合UWB和视觉信息的行人定位系统全程检测准确率达到了96.7%,在无遮挡行人试验中,本系统匹配成功正确率达到了93.3%,验证了该行人预警系统的有效性。