你知道蝙蝠是靠什么探路的吗?如果你告诉我是用眼睛探路的话,那么很遗憾的告诉你,这是一个错误的答案。早在一百多年前,科学家就对蝙蝠做了深入的探索与研究,蝙蝠在伸手不见五指的夜晚能在不碰任何障碍物的情况下自由飞翔,并且还能轻松地捕捉飞蛾和蚊子。莫非它拥有自带夜视仪的眼睛,所以才能在黑夜中自由飞翔?
当然不是!经过科学家对蝙蝠的多次试验证明:蝙蝠在黑夜能够如此轻松捕捉蚊子和飞蛾;靠的不是它的双眼,而是用它的嘴巴和耳朵进行探路的。它一边飞,一边从嘴里发出一种声音。这种声音叫做超声波,人的耳朵是听不见的,蝙蝠的耳朵却能听见。超声波像波浪一样向前推进,遇到障碍物就会反射回来,传到蝙蝠的耳朵里,蝙蝠就立刻改变飞行的方向。
既然如此蝙蝠的这种“超能力”能不能应用于自动驾驶技术方面呢?答案是肯定的!前面几期笔者已经对自动驾驶的部分内容做了概述,其中包括高精地图、自动驾驶等级以及ADAS部分。相信大家对于自动驾驶方面已经有了初步的认知,今天我们一起聊聊自动驾驶方面的重要“成员”——环境感知。
自动驾驶汽车方面的发烧友,都应该知道自动驾驶汽车的三大模块,即感知模块,决策模块、执行模块。三大模块鼎足而立构成了自动驾驶汽车的基本框架(有的分为五种,有的分为四种,不管怎么分,其组成部分相差无几)。
感知模块由车辆定位集合体、交通环境感知集合体、V2X集合体组成。其中车辆定位集合体具体由惯性导航、GPS、差分定位及传感器定位组成。交通环境信息搜集集合体由VBOX(以高性能微型计算机为核心的智能化测试仪器用以测试汽车速度,制动及滑行的测试)、毫米波雷达、激光雷达、超声波雷达、摄像头组成。V2X集合体则由V2V、V2R、V2I、V2P组成。
决策规划模块主要由路径规划集合体和行为决策集合体组成。其中路径规划涵盖:1.高精地图2.Dijkstra算法(是从一个顶点到其余各顶点的最短路径算法,解决的是有权图中最短路径问题)3.Floyd算法(利用动态规划的思想寻找给定的加权图中多源点之间最短路径的算法)4.A*算法(A*(A-Star)算法是一种静态路网中求解最短路径最有效的直接搜索方法也是解决许多搜索问题的有效算法。算法中的距离估算值与实际值越接近,最终搜索速度越快)RRT算法(能快速的找出初始路径,之后随着采样点的增加,不断地进行优化直到找到目标点或者达到设定的最大循环次数)
行为决策包括交通参与者行为预测及自动驾驶行为预测。执行模块由CAN数据总线、横向控制执行及纵向控制执行组成。其中横向控制主要是由转向控制组成,而纵向控制则由加速控制、制动控制、换挡控制组成。
而环境感知模块就如同自动驾驶汽车的眼睛和耳朵一样重要。没有了环境感知模块,自动驾驶技术便将不复存在!环境感知模块里面的摄像头按种类可分为:单目立体、双目立体、广角摄像头及夜视红外摄像头。按安装位置不同,可分为前视、侧视、后视和内置四个部分;按功能应用又可分为行车辅助类、驻车辅助类与车内人驾驶员监控三大部分
1.行车辅助类:主要用于行车记录仪、交通标志识别、盲区监测、车道偏离预警、开门预警等。
a、智能前视(单目/双目/三目):主要用于静态物体检测(交通信号灯、交通标志、车道线等)、动态物体检测(车辆、行人)和可通行空间划分等。
b、侧视辅助(广角):用于行车过程中监测后视镜盲区内的动态目标;
c、夜视辅助(夜视红外摄像头):夜视辅助功能的开启也是得益于大自然里面的猫头鹰,在漆黑的夜晚,猫头鹰的能见度比人高出一百倍以上。而夜视辅助主要也是用于夜间或其他光线较差的情况下更好的实现目标物体的检测;另外,根据工作原理的不同,目前夜视系统主要分三类:微光夜视技术、被动热成像夜视技术、主动红外夜视技术。
2.驻车辅助类:倒车影像/环视
环视(广角/鱼眼):主要用于低速近距离感知;系统同时采集车辆四周的影像,经过图像处理单元畸变还原→视角转化→图像拼接→图像增强,最终形成一幅车辆四周无缝隙的度全景俯视图。
3.车内驾驶员监控(疲劳检测)
a、驾驶员监控系统功能定义:
主要针对驾驶员的疲劳、分神、不规范驾驶等危险情况进行一层或多层预警,要求在全部工况环境下(包含暗光、夜晚、逆光等)工作,且不受驾驶员衣着影响;
脸部检测:将其归为物体识别与分类问题,通过训练深度神经网络设计一个鲁棒性好的脸部检测器。
头部特征:由三个姿态角构成,基于CNN设计头部跟踪系统,以图像中脸部区域为输入,以三维姿态角为输出。
眼神检测:综合眼神检测网络与头部姿态角度输出。
眨眼检测:包括眨眼信息(速率与时差)和眼部信息(开与合)。眼部信息为二分类问题,需要神经网络较小;眨眼信息需要分析过去数帧。
单目与双目测距原理对比
1单目摄像头
单目摄像头工作流程同样遵循图像输入、预处理、特征提取、特征分类、匹配、完成识别几个步骤,其测距原理是先匹配识别后估算距离:通过图像匹配识别出目标类别,随后根据图像大小估算距离;
单目测距的算法包括传统机器学习算法和深度学习中的卷积神经网络(CNN)算法;
双目摄像头
双目摄像头测距原理与人眼类似,通过对图像视差进行计算,直接对前方景物进行距离测量;从视差的大小倒推出物体的距离,视差越大,距离越近;
双目测距步骤:相机标定——双目校正——双目匹配——计算深度信息(测距)
单/双目方案的优劣势分析
单目摄像机
优势:成本较低,对计算资源的要求不高,系统结构相对简单;
劣势/难点:(1)需要不断更新和维护一个庞大的样本数据库,才能保证系统达到较高的识别率;(2)无法对非标准障碍物进行判断;(3)距离并非真正意义上的测量,准确度较低。
双目摄像机
优势:(1)没有识别率的限制,因为从原理上无需先进行识别再进行测算;(2)直接利用视差计算距离,精度比单目高;(3)无需维护样本数据库,因为对于双目没有样本的概念。
劣势/难点:(1)计算量非常大,对计算单元的性能要求非常高,这使得双目系统的产品化、小型化的难度较大。(2)双目视觉系统通过估计视差来测距,而视差是通过立体匹配算法得来的,立体匹配是计算机视觉典型的难关;(3)双目在线标定比单目要更复杂些,因为双目匹配需尽量简化成1-D搜索,所以需要通过stereorectification将两个镜头光轴方向平行并和基线垂直。
车规级摄像头性能要求1.防水:车载摄像头密封要非常严实,满足在雨水中浸泡数日仍可正常使用;
2.防磁:车辆启动时会产生极高的电磁脉冲,需要极高的防磁性能;
3.抗震:车辆在不太平坦的路面行驶会产生较强的震动,因此车载摄像头必须能够抗各种强度的震动;
4.耐高温:车载摄像头需在-40℃~85℃范围内都能正常工作,且能适应温度的剧烈变化;
5.超广角:侧视环视摄像头必须是超广角的,水平视角达°;
6.高动态:车辆行驶速度快,摄像头面对的光线环境变化剧烈且频繁,要求摄像头的CMOS具有高动态特性;
7.低噪点:在光线较暗时能有效抑制噪点,特别是要求侧视和后视摄像头即使在晚上也能清楚地捕捉影像。8.使用寿命:使用寿命至少为8~10年才能满足要求;
优势分析
摄像头与毫米波雷达相比的话,现阶段的摄像头优势可以概括为以下几点:
a、目标识别与分类-目前普通的3D毫米波雷达仅可以检测到前方是否有障碍物,而无法精准识别障碍物的大小和类别;例如:各类车道线识别、红绿灯识别以及交通标志识别等;
b、可通行空间检测-对车辆行驶的安全边界(可行驶区域)进行划分,主要对车辆、普通路边沿、侧石边沿、没有障碍物可见的边界、未知边界进行划分;
c、能够对横向移动目标的探测,比如对十字路口横穿的行人以及车辆的探测和追踪;
d、视觉SLAM技术(定位和地图创建),相比毫米波的SLAM,视觉SLAM技术先入为主,技术更为成熟。
在自动驾驶系统中,激光雷达与摄像头感知作用旗鼓相当,与激光雷达相比有如下优势:a、具备红绿灯识别及交通标志识别
b、成本低廉且技术成熟度与算法都比较高
由于这期所讲内容过多,雷达方面将在下期深入呈现,敬请