要想完成自动驾驶,识别道路障碍是必可不少的关键一步。一般来说,道路上的障碍主要分为两类,一类是行人、车辆、交通标识等,另一类障碍物还包括石头、塑料袋等非常规物体。
目前,MINIEYE的ADAS系统进行的是前者的识别。MINIEYE的视觉算法将人与车进一步细分成了以下几个类别:
人:普通行人、打伞的人、骑车的人(骑自行车的人、骑电动车人、骑摩托人)
车辆:普通汽车、特种汽车(运钞车、三轮车、大型卡车等)
交通标识:车道线、红绿灯、限速牌
目前,MINIEYE提供的解决方案有两种:基于摄像头的方案和基于摄像头与毫米波雷达融合的方案。
无论是哪种方案,工程师会依据各个传感器的特点进行算法设计。利用传感器采集的信息,对其进行时间轴对齐、匹配、信度融合等操作,从而完成对周围环境的感知。基于感知信息,MINIEYE的产品就能实现前车碰预警、车道偏离预警、车距监控、前车启停提醒等一系列功能。
视觉建模的过程
那么,当摄像头拍摄到一个障碍物的时候,整个视觉建模是怎样进行的呢?大体来说,一共分成四步。
第一步:根据摄像头所采集的图像,检测算法能够定位出前方目标物体(车辆,行人等)的具体位置并提供其大致的轮廓,这个阶段的误差范围还较大。
第二步:基于物体的位置和轮廓,分类算法对目标进行精确的识别,同时回归算法对其进行特征点定位,进而得到目标紧致的轮廓信息。
第三步:利用连续帧图像的内容、排除交叉关系和周边环境的干扰,得到关键车辆的视觉信息。
第四步:监测前方关键车辆的距离、速度、碰撞时间等,必要时提示驾驶员并给出预警。
视觉识别的难点在哪里?
完成了建模,并不代表整个视觉识别的过程是一帆风顺的,逆光、强光、雨天、雾天、隧道、夜晚等特殊情况都会对视觉识别带来困难。
这些特殊情况会给视觉算法的识别带来几大难点:图像成像质量、表观不一(逆光环境、隧道行驶);分辨率不够高(距离较远状况下;算法的计算能力有限。一个良好的视觉算法系统必须平衡好距离、清晰度、成本三个方面平衡。
为了解决上述问题,MINIEYE对整个视觉算法系统都需要进行相应的调整。
摄像头:利用cmos的选型(尤其关注HDR和低照指标)和ISP参数优化,保证低光照等条件下的图像清晰度
算法:根据参数,利用视觉原理,对车辆与人进行跟踪,在某一帧图像质量较差时,进行预测,形成动态的决策机制。
图像质量增强:针对雨天、隧道等特殊环境,进行额外的图像质量增强,处理雨珠、增强锐度等。
在相似物体的甄别上,比如大型卡车与小型卡车的高度不同,无论是传统算法,还是深度学习算法,都能感知到两种车型完全不同的高度,MINIEYE还设立了专门的数据组来收集样本,实验各种新的算法,并根据特定场景,开发适应于产品的算法。
视觉算法有哪些优势?
在低照度情况下,摄像头的识别能力远胜过人眼。在夜晚,人眼的识别只能达到0.2勒克斯(照度的单位,被光均匀照射的物体,在1平方米面积上所得的光通量是1流明时,照度即为1勒克斯),没有月光、路灯辅助的情况下,基本不可能看到车道线,摄像头的动态感知能力却完全可以克服低照度条件下的识别。
另一方面,人眼是基于动态对物体进行识别的,这并不是一个实时系统,具有明显的滞后性,而机器的算力强、运算速度快,能够迅速识别静态物体,比人眼更加敏感。此外,在测距方面,未经专业训练的人眼只能测出一个模糊的距离,而摄像头能够做到高精度的距离识别,测距误差低于5%,这一特性能够帮助驾驶员更好地做出正确的判断。
最后,总结一下,对障碍物的精确识别,是一个复杂的过程,它包括了先验知识融入、图像跟踪、图像质量增强、摄像头选型调参、环境感知融合决策,多样本优算法等一些系列流程,视觉算法的精度也因此成为了ADAS产品的核心竞争力之一。
| 留言与评论(共有 0 条评论) |