引用:http://blog.csdn.net/leonardohaig/article/details/88724365
https://blog.csdn.net/weixin_42229404/article/details/83024003
毫米波,是工作在毫米波波段(millimeter wave),工作频率在30~100GHz,波长在1~10mm之间的电磁波,通过向障碍物发射电磁波并接收回波来精确探测目标的方向和距离,其全天候全天时以及准确的测速测距深受开发者的喜爱;
车载毫米波雷达通过天线向外发射毫米波,接收目标反射信号,经后方处理后快速准确地获取汽车车身周围的物理环境信息(如汽车与其他物体之间的相对距离、相对速度、角度、运动方向等),然后根据所探知的物体信息进行目标追踪和识别分类,进而结合车身动态信息进行数据融合,最终通过中央处理单元(ECU)进行智能处理。经合理决策后,以声、光及触觉等多种方式告知或警告驾驶员,或及时对汽车做出主动干预,从而保证驾驶过程的安全性和舒适性,减少事故发生几率。
毫米波雷达存在一些不足,
第一,很难获得观测物体z坐标的数据,只能获得x轴和y轴的坐标,因此只能测距,无法输出图像信号。因此,xy与速度v信息只能得到一个3D的物体信息。
第二,对横向目标敏感度低,例如:对横穿车辆检测效果不佳;
第三,行人反射波较弱,对行人分辨率不高,探测距离近;
第四,对高处物体(标识牌)和小物体(井盖、锥桶)的识别不佳。
激光雷达也是一个在自动驾驶领域非常重要的传感器了,Lidar利用激光来进行对目标进行探测,通过每分钟600转或1200转的进行扫射,它能非常详细的获得一个实时的三维点云数据,包括目标的三维坐标、距离、方位角、反射激光的强度、激光编码、时间等等,常用的有单线、4线、16线、32线、64线、128线束的,是一个高精度的传感器,而且其稳定性好、鲁棒性高,然而,它的成本却让众多厂商在落地的路上望而却步,另外,激光受大气及气象影响大,大气衰减和恶劣天气使作用距离降低,大气湍流会降低激光雷达的测量精度,激光束窄的情况难以搜索目标和捕获目标。一般先有其他设备实施大空域、快速粗捕目标,然后交由激光雷达对目标进行精密跟踪测量。
实现ADAS的技术主要有三类,分别是基于视觉传感器、毫米波雷达和激光雷达。
由于成本限制因素,国内主要使用前两种方式。
视觉传感器和毫米波雷达实现对ADAS功能的原理不同:
1.毫米波雷达主要是通过对目标物发送电磁波并接收回波来获得目标物体的距离、速度和角度。
2.视觉方案稍复杂,以单目视觉方案为例,它需要先进行目标识别,然后根据目标在图像中的像素大小来估算目标的距离(先做标定得到世界坐标系与像素坐标系的矩阵转换关系方程式,再进行测距)。
这两类技术各有优劣;
总体来讲,
**1.**摄像头方案成本低,可以识别不同的物体,在物体高度与宽度测量精度(毫米波雷达高度信息无法获知,宽度也不准确)、车道线识别、行人识别准确度等方面有优势,是实现车道偏离预警、交通标志识别等功能不可缺少的传感器,但作用距离和测距精度不如毫米波雷达,并且容易受光照、天气等因素的影响。
2.毫米波雷达受光照和天气因素影响较小,测距精度高,但难以识别车道线、交通标志等元素。另外,毫米波雷达通过多普勒偏移的原理能够实现更高精度的目标速度探测。
于是就有了第三种方案,将摄像头和雷达进行融合,相互配合共同构成汽车的感知系统,取长补短,实现更稳定可靠的ADAS功能。
引用博客中作者采用的主要方案是利用毫米波雷达来辅助视觉。
以下融合方式在论文**《基于视觉和毫米波雷达融合的前方车辆检测算法研究》_秦汉以及 论文《非结构化环境下无人驾驶车辆跟驰方法》_张海鸣加粗样式** 均有使用;可以进一步参考
基本的思路是: 将毫米波雷达返回的目标点投影到图像上,围绕该点并结合先验知识,生成一个矩形的感兴趣区域,然后我们只对该区域内进行目标检测。它的优点是可以迅速地排除大量不会有目标的区域,极大地提高识别速度。而且对于前碰撞系统(FCWS),它可以迅速排除掉雷达探测到的非车辆目标,增强结果的可靠性,最后,可以利用毫米波返回的目标的距离、角度、速度信息来进行碰撞时间(collision time)计算,以达到预警功能,实现行人/车辆在预警时间阈值内预警,避免单目视觉距离测量及障碍物速度估计不准的问题。
当然,这个方案也有很明显的缺点:
1)首先,这个方法实现起来有难度。**理想情况下雷达点出现在车辆中间。首先因为雷达提供的目标横向距离不准确,再加上摄像头标定的误差,导致雷达的投影点对车的偏离可能比较严重。**我们只能把感兴趣区域设置的比较大。感兴趣区域过大后导致里面含有不止一辆车,这个时候目标就会被重复探测,这会造成目标匹配上的混乱。交通拥挤的时候尤其容易出来这种情况。在实际测试中这个问题非常明显;
2)噪声问题。对于性能比较差的毫米波,返回的目标点中包含了大量的噪声点,将这些点投影到图像上将会存在大量的矩形框,反而造成了程序的耗时;
3)另一方面是这种方法本质上只是对雷达目标的一种验证,无法充分发挥视觉的作用。雷达和摄像头的视野其实并不完全重合,导致毫米波检测到的目标在图像上并没有出现,或者图像上存在的目标毫米波反而检测不到。
(十分重要,注意体会,该种融合方式实际上成了毫米波雷达为主,视觉为辅的一种策略,在传感器重要程度上毫米波更重要,只要毫米波没检测到的障碍物一概进行忽略,没有充分发挥各自优势)
建立精确的毫米波雷达坐标系、三维世界坐标系、摄像机坐标系、图像坐标系和像素坐标系之间的坐标转换关系,是实现毫米波和视觉融合的关键。
毫米波雷达与视觉传感器在空间的融合就是将不同传感器坐标系的测量值转换到同一个坐标系中。
由于ADAS前向视觉系统以视觉为主,因此只需将毫米雷达坐标系下的测量点通过坐标系转换到摄像机对应的像素坐标系下即可实现两者空间同步。
此处首先讲解两传感器之间的标定问题:将毫米波检测的目标转换到图像上。
对于毫米波雷达和摄像头考虑如下安装位置,分别建立坐标系:
我们的目的是将毫米波的坐标转换到图像的对应位置上去;
在相机位置处建立三维世界坐标系,在点的转换过程中可以分为以下几个步骤:
a) 毫米波坐标系下的坐标转换到以相机为中心的世界坐标系中(只涉及到坐标的旋转、位移关系);
b)将世界坐标系的坐标转换到相机坐标系;
c) 将相机坐标系的坐标转换到图像坐标系;
d) 将图像坐标系的坐标转换到像素坐标系;
毫米波雷达坐标到世界坐标系的转换
毫米波可以得到目标的x,y坐标信息,没有目标的z坐标信息(注意只有二维!!!),因此,可以将毫米波坐标系Om转到世界坐标系Ow的转换看做二维X-Y坐标系的转换,Om和Ow之间的关系不外乎平移和旋转。
安装毫米波雷达时,尽量保持角度取整,端正,不宜歪曲,带来倾角,使得转换矩阵变得复杂;
此处由于毫米波雷达缺乏目标的高度信息,进行了先验知识的假设(需要说明的是,这种直接假设一个高度值的方法过于简单粗暴,转换后的代表点在高度低于1.8m的障碍物中偏高,而在代表点高度高于1.8m的障碍物中偏低,需要进一步调整框的大小,)
**可能的一种改进方式:**无需知道预先设置目标车辆的高度,直接通过毫米波雷达获取的距离(x,y)信息,通过转换矩阵计算出障碍物目标点在图像中所对应的位置(像素值),该像素位置指示障碍物目标与地面接触点的位置,然后再进一步画出感兴趣区域(ROI)——此处由于需要检测行人和车辆,应该尽量按照车辆目标来划分区域(保证所划分区域足够大),再进一步进行识别。
说明:该方式依旧存在上述作者提到的融合缺陷——
1.雷达投影点偏离图像中的目标比较大,导致匹配上的错误等问题;
2. 毫米波雷达噪声导致图像上出现大量虚假(误识别)矩形框噪声,反而造成程序耗时;
3.融合方式策略的缺陷,不应该以毫米波雷达为主,使用毫米波雷达数据限制视觉检测的策略不可行;
建议以视觉为主,通过视觉检测出图像中的障碍物后,记录下每个障碍物的类型和其坐标位置,然后通过转换矩阵将毫米波雷达检测到的障碍物信息与图像(单目)获取的距离信息进行匹配,从而达到毫米波雷达辅助视觉的功能,提供精度更高的速度与距离信息;
要想完全避免特斯拉撞车事故的发生,必须要引入能够获取前方物体三维信息的传感器(考虑到双目相机算法难度较大,建议直接选用激光雷达,但又有成本高的问题),有了前方障碍物的三维信息后,就可以避免毫米波雷达在数据预处理的时候将所有的静态目标全部剔除的做法,而是会对影响汽车正常行驶的 有高度的障碍物 进行保留,这样,视觉因为各种原因(算法失效、环境因素影响等)无法检测到的物体就可以通过激光雷达来进行补充,保障安全;
融合决策规则是:以视觉为主,视觉检测到的障碍物认为一定是障碍物(充分相信视觉),并且将从激光雷达处理获取的障碍物距离、速度信息,高度信息拿来通标定转换矩阵与视觉检测结果进行匹配,从而辅助视觉以提供更精确的信息;
更重要的是,通过这种方式,在特斯拉事件中,视觉为检测到的白色车辆一定会在激光雷达数据中出现,通过聚类等方式可以清晰地知道,前方存在一个影响自车行驶的障碍物存在,这种情况下通过设定一个时间阈值来更改决策策略,例如,视觉未检测到的障碍物目标在激光雷达中持续的被显示,则此时需要进行相应决策方式的处理,认为激光雷达为更准确的传感器,对点云数据进行处理,聚类为障碍物,从而有效
认定为障碍物进行躲避或者制动处理。