![dd5e3a971a4dea9eadad1e7de60f3907.png](https://i-blog.csdnimg.cn/blog_migrate/6c8a9a6f33519041ffac6e44d83c54b8.jpeg)
车辆检测通常来说就是利用专门的传感器来感知行驶中的汽车所处的周围环境,同时结合智能算法实时并准确的计算该车四周是否存在其他车辆以及这些车辆所处位置。概括地来讲,基于CMOS/CCD的车辆检测方法分为三步,见下图:
![9b999abe7d14e0ce667808e261eb3f91.png](https://i-blog.csdnimg.cn/blog_migrate/a1f9173f4d879b6114f796c5b6fb806f.jpeg)
假设产生是指定位感兴趣的区域;假设验证是指核实车辆是否存在;车辆跟踪指跟踪检测所核实车辆。
1、候选区域确定(HG)
HG全称为Hypothesis Generation,即指定位感兴趣的区域,通俗来讲就是确定可能存在车辆的区域。其所产生的假设位置作为HV的输入。
大部分的假设产生算法主要是以下三类:
(1)基于先验知识的方法
(2)基于立体视觉的方法
(3)基于运动的方法
而每个算法中又有多个较为成熟的算法,具体可见下图:
![02244f5ff1738afe589e4a51d3b82533.png](https://i-blog.csdnimg.cn/blog_migrate/3e7c69dcb1e903e3048e5510a5743e62.jpeg)
基于先验知识的方法
基于先验知识的方法依靠先验知识来估计车辆在图像中的位置,一般应用在特征比较明显的事物上,因为已经具备了对待识别和定位的事物的先验知识。
基于先验知识的方法应包含以下信息,具体可见下表:
![49e5805c0d134afff16415b5cf585733.png](https://i-blog.csdnimg.cn/blog_migrate/8655044c23392ffa14eab56f839bf56d.jpeg)
例如,对于基于几何结构的车辆检测方法,我们可将图像分成多个竖行条块,效果图见图a;之后使用三角滤波操作,将交叠出的滤波响应叠加,寻找其局部峰值响应处,便得到潜在的车辆位置,效果图见图b。
![0d9d6f94fcf22e008be10b221011a048.png](https://i-blog.csdnimg.cn/blog_migrate/bd54b02d193cf0c5d074a0915e41ffcb.jpeg)
图 a)使用图形竖行条块检测潜在车辆
![96d22ae32d0881877f6c2d163382e498.png](https://i-blog.csdnimg.cn/blog_migrate/42febbd99d2d54ffa46b843baa21c014.jpeg)
图 b) 边界处滤波响应加和信息
车辆检测算法中通常提取三种特征:Haar、HOG/LBP。基于这三种特征的车辆检测属于基于先验知识的方法。
基于Haar特征的车辆检测是基于灰度图像的弱特征。
基于HOG特征的车辆检测是利用方向梯度直方图,图像中物体的形状和表象可以被像素强度梯度或边缘的方向分布很准确的体现,提取出不同形状的目标的外在轮廓的数据。
基于LBP特征的车辆检测是利用局部二值模式描述图像的局部纹理特征。
基于立体视觉的方法
在过去十年里,相比于基于先验知识的车辆检测方法,更多的是考虑使用基于立体视觉的车辆检测方法,这些方法可以分为两类:视差图方法和逆透视映射法。
同一像素在左视角和右视角下的差别称为视差。基于车辆前方给定模型,将右视图透视到左视图,或者将两个视图投射到路面坐标系中,会形成所谓的视差图。该图可以转换到车辆周围的三维环境中。显然,可以使用这个三维场景进行车辆检测。
逆透视映射法可以去除单一图像或者立体图像中的内在视角效应,进而通过将右视图和左视图投射到同一场景的方式应用于立体视觉中。
基于运动的方法
基于运动的方法使用光流法来计算车辆和背景的相对运动,同样可以确定车辆位置。由于会产生发散光流,该方法在检测相反方向运动的车辆时更加奏效。离开车辆或者是超车车辆产生的汇聚流,也和容易被检测到。并且灰度图和彩色图都可以进行车辆检测,二维场景和三维场景都可以使用光流法。
2、车辆确认(HV)
HV全称为Hypothesis Verification,即对HG中确定的候选区域进行确认,从而检测出车辆及其位置。
该过程主要有两种方法,基于模板和基于外观。两种方法的具体工作流程见下图:
![0633702c9c66b97af963c1834c9c653e.png](https://i-blog.csdnimg.cn/blog_migrate/930f2e067ca8c27eefc8bfd29c93ac1b.jpeg)
3、车辆跟踪
跟踪算法是探究视频序列中物体从一帧运动到下一帧的问题。一般的跟踪算法将问题转换为最小化相邻图像中特定点的误差函数的问题。
对于跟踪某类物体而言,例如行人和车辆,需要先使用分类器将物体和背景分开。跟踪已发现物体可以减少计算量,这是因为先前帧中车辆的位置信息可以很容易地推测出现在车辆的位置信息。
在智能交通中,车辆检测至关重要。后续将会对车辆检测所涉及的算法进行详细解释。通过下图大家可以先睹为快!
![5b0092d750b1a0a0f71eeab92d9e7b42.gif](https://i-blog.csdnimg.cn/blog_migrate/2dead6569afd602079985aa6083e56f3.gif)
来源:汽车博士之家
![56eb437e9980b91d6aef5e7819a5f839.png](https://i-blog.csdnimg.cn/blog_migrate/91e7d6c5bb8619def887f164845774cc.jpeg)