前方车辆检测,这里指的是基于车辆自身对象,而不是公路交通部分的车辆检测。

前方车辆检测,可以用于防碰撞系统、进而用于自动巡航(ACC)等功能,应用场景广泛,所以,此技术是一项比较基础的技术。而先前的ACC,只是基于正前方车辆的检测,对于侧面的车辆或环境的跟踪能力有限。但随着各种传感器和导航地图的应用,ACC的能力也会大大增强。ACC只用于高速行驶状态,但已有低速跟车系统的研究,某公司已计划未来两年内上市。

1. 传感器

前方车辆检测,常用的传感器有高频雷达(毫米波)、红外激光雷达、摄像头。

每种传感器都有各自的优缺点:

雷达:自己可选用的波段有限,常用24G(厘米波)、79G波段。对雨雾天气的适应能力好,探测距离大150米,但容易受电磁干扰影响。据传,79G雷达技术对国内有限制的。而欧盟和我国的工信部是建议24G作为车载雷达波段。而美国是推荐79G波段作为车载雷达的使用波段。http://www.srrc.org.cn/NewsShow6038.aspx

红外激光:抗干扰能力强,定向性。但对于雨雾天气的穿透能力弱。且成本高。

摄像头:基于视觉的探测。对距离的判断较弱(单目视觉情况下),易受雨雾天气的影响。

所以,想适应各种场景,厂商一般会采用多种传感器收集信息。

这里重点总结下,基于单目视觉的车辆检测技术。

从视觉上来讲,车辆的形状、颜色和大小虽然限定在一定范围,但都是不固定的,而且,其外形会受到自身姿势和外部环境,如光照或旁边物体的影响。

2. 基于先验知识的特征检测

汽车有一些一些典型的特征, 如对称性、颜色、阴影、几何特征(如角点、边缘)、纹理、车灯。

1)对称性

汽车从前方和后方来看,无论是在区域面积还是边缘特征上,具有很好的对称性。

但是,对称性特征易受噪声的干扰,以及角度的影响。

2)颜色

颜色空间一般不直接使用在车辆上,而比较有效的手段是识别路面和车辆阴影。

3)阴影

车辆阴影是与车辆相关的一个重要的特征。因为车辆阴影一般比周围区域都要暗。但具体的参数指标,还与光照,即天气状况有关。

一般做法是采用两个阈值,一高、一低,低阈值用于确定阴影,而高阈值由阴影周围环境来确定,如局部分割算法,均值+方差。

4)角点

先检测出所有角点,然后再根据角点的空间关系,如汽车的四个角点会形成一个矩形,来筛选汽车。

5)垂直或水平边缘

一种方式,直接检测垂直边缘,利用类似直方图计算垂直投影。然后,车辆底盘下方阴影部分也是重要的水平边缘特征。

另外,也有采用多分辨率的方式,在每个层次都

边缘只是作为一种初步的筛选/搜索手段。

6)纹理

熵、共生矩阵都可被作为基于纹理的图像分割的基础。

7)车灯

主要是用于夜间车辆的探测。因为,以上特征在晚上基本都无效了。

8)基于运动的方法

以上其中都是空间特征。而基于运动的方法是对图像连续序列的分析。如光流法。

但光流法会消耗大量的计算资源,时间和空间。

3. 识别

无论是用遍历的方式,还是用特征筛选出的候选区域,对筛选出的子图像需要进一步识别,车辆还是非车辆。

1)基于模板的方法

采用简化过的车辆模板来筛选。

2)基于外观特征的方法

车辆VS非车辆 分类

二类分类问题,一般采用机器学习/模式识别的方法解决。

首先,需要大量的训练图片。

其次,选取合适的特征,如PCA,HOG,harris,haar wavelet feature, SIFT等

再次,选取分类器,如NN,svm等

4. 跟踪

车辆的跟踪的好处:

1)提前预测车辆出现的位置,减少车辆检测的搜索空间,节省计算时间。

2)区分多个车辆,每辆车都有各自的特征,如HOG,边缘,灰度密度等,使用这些特征,就可以区分不同类型的车辆。根据跟踪算法的结果,即使是同款车辆出现在同一场景,也能基本区分。

目前,常用的跟踪算法,有卡曼滤波算法。

5. 近几年热门的车辆检测方法

1)HOG 特征 + haar-like特征;SVM 或 adaboost  分类器; (HOG + SVM ; haar-like + adaboost 速度快)

2)光流法;或增加一个HMM分类器,或SVM分类器

--------------------------------------------

前方车辆检测技术,常见问题:

1. 选取那种分辨率来计算?

mobileye采用的是 640×480 或 752 * 480 彩色CMOS摄像头

2. 如何选取特征?

3. 如何跟踪?

4. 如何计算距离?

5. 如何计算前车速度?

6. 如何区分多个车辆?

--------------------------------------------

基于Haar和HoG特征的前车检测方法,其特征在于,包括以下步骤:

步骤I)人工选取出大量车辆图片和非车辆图片作为训练集的正、负样本,并将正、负样本规格化到24 X 24像素下;

步骤2)使用Haar特征和HoG特征分别对规格化后的每一幅正、负样本进行表征,形成特征向量;

步骤3)针对Haar特征和HoG特征形成的两种特征向量分别构建弱分类器;

步骤4)利用级联的Adaboost算法对弱分类器进行训练,得到级联车辆强分类器;

步骤5)针对车载摄像头获得的前方道路视频图像,将其中各种尺寸、各种位置的子图像输入级联车辆强分类器中进行判断。

也有利用改进的HOG特征值,和SVM训练,来对车辆进行识别

harr特征、hog特征(大量的正、负样本图片训练),利用adboost算法 进行训练、级联,形成强分类器

http://www.google.com/patents/CN102855500A?cl=zh

-------------------------

HOG特征的计算及一些改进:

HOG:histogram of oriented gradient, 方向梯度直方图,就是描述物体的形状和边缘特征,并且不涉及尺度和旋转。

1. 将子图像灰度化,归一化(为了除去光照和阴影的影响)

2. 划分成小cells,如3*3个像素块或6*6个像素块。

3. 计算每个cell中每个pixel的gradient方向,或者说是边缘的方向。

4. 统计每个cell的梯度直方图(不同梯度的个数),即可形成每个cell的descriptor。

5. 连接所有cell形成一个子图像的特征描述子。

6. 子图像之间是一般是由重叠的区域的,这样一个cell影响的就不是一个子图像了。一个矩形子图像,一般有三个参数:每个子图像有多少方格、每个方格有几个像素、以及每个方格直方图有多少頻道(梯度方向)。

由于人体轮廓在局部HOG归一化特征上有良好的稳定性,最初是用于人体检测。

在Dalal和Triggs的人检测实验中,发现最优的单元块划分是3x3或6x6个像素,同时直方图是9通道。

VD车辆检测常用方法相关推荐

  1. 深度干货!值得精读的2018自动驾驶行业发展报告

    来源: 机器人大讲堂 摘要 随着科技革命的深入推进,人类社会进入万物互联.万物智能的智能化新时代.自动驾驶技术在人工智能和汽车行业的飞速发展下逐渐成为业界焦点.自动驾驶技术是汽车产业与高性能计算芯片. ...

  2. 前方车辆检测的常用方法

    from: http://blog.csdn.net/viewcode/article/details/20358367 前方车辆检测,这里指的是基于车辆自身对象,而不是公路交通部分的车辆检测. 前方 ...

  3. 无人驾驶汽车系统入门:基于VoxelNet的激光雷达点云车辆检测及ROS实现

    作者 | 申泽邦(Adam Shan) 兰州大学在读硕士研究生,主要研究方向无人驾驶,深度学习:兰大未来计算研究院无人车团队负责人,自动驾驶全栈工程师. 之前我们提到使用SqueezeSeg进行了三维 ...

  4. 无人驾驶汽车系统入门(二十八)——基于VoxelNet的激光雷达点云车辆检测及ROS实现

    无人驾驶汽车系统入门(二十八)--基于VoxelNet的激光雷达点云车辆检测及ROS实现 前文我们提到使用SqueezeSeg进行了三维点云的分割,由于采用的是SqueezeNet作为特征提取网络,该 ...

  5. 30 个 php 操作 redis 常用方法代码例子

    这篇文章主要介绍了 30 个 php 操作 redis 常用方法代码例子 , 本文其实不止 30 个方法 , 可以操作 string 类 型. list 类型和 set 类型的数据 , 需要的朋友可以 ...

  6. SearchRequestBuilder常用方法说明

    SearchRequestBuilder常用方法说明 (1) setIndices(String... indices):上文中描述过,参数可为一个或多个字符串,表示要进行检索的index:(2) s ...

  7. 3-RACSignal 常用方法

    RACSingal的常用方法 一 基本使用 1map // 0 创建信号提供者// RACSubject,既能发送信号,又能订阅信号// 多用于代理,相当于OC里的delegate或者回调blockR ...

  8. AJAX 一些常用方法

    AJAX 一些常用方法 abort() 停止当前请求 getAllResponseHeaders() 返回包含HTTP请求的所有响应头信息,其中响应头包括Content-Length,Date,URI ...

  9. OC基础第四讲--字符串、数组、字典、集合的常用方法

    OC基础第四讲--字符串.数组.字典.集合的常用方法 字符串.数组.字典.集合有可变和不可变之分.以字符串为例,不可变字符串本身值不能改变,必须要用相应类型来接收返回值:而可变字符串调用相应地方法后, ...

最新文章

  1. 联合国发布AI报告:自动化和AI对亚洲有巨大影响【附报告下载】
  2. memcache缓存服务器(nginx php memcache mysql)
  3. 联系 Contact
  4. python输入10个学生的成绩储存在列表中_获得10名学生的平均成绩python
  5. vector 二维数组_go语言基础教程——数组与切片
  6. 单片机外设篇——SPI协议
  7. 开始刷题--《C语言经典100题》
  8. eas bos 常用代码
  9. 人机大战历程————思考与反思
  10. 罗德矢量网络分析仪高效测试软件NSAT-1000
  11. hodj 1008 Elevator (模拟题)
  12. Caffe学习笔记(一):CIFRA-10在Caffe上进行训练学习
  13. c语言:24、大小端序
  14. 使用Lambda表达式对中文拼音排序(按中文字典排序)
  15. 决策中心:构建企业长期战略竞争力
  16. notability整理归档_ipad记手写笔记软件 Notability的使用方法图解教程
  17. python五边形的代码_python正五边形代码
  18. 请确认计算机上的无线网络已启用,电脑显示已连接无线网络却上不了网
  19. 文献【综述】Hallmarks of Cancer: The Next Generation 肿瘤的新十大特征
  20. 2019年度个人计划

热门文章

  1. [JUC-4]ThreadPoolExecutor源码分析
  2. 看完这些福利才知道,为什么说双12一定要出去浪
  3. iOS上传头像, 相册权限,相册权限,拍照上传,相册选择图片,拍照页面语言设置,保存到相册...
  4. 熟悉又陌生 彪悍徐茂栋的双面人生
  5. linux下怎么查看ssh的用户登录日志
  6. 输出目录文件被多个中间文件输出目录相同的工程包含
  7. IOS学习笔记——Objective-c基础(一)
  8. [Java][JavaScript]字符串数组与字符串之间的互转(join/split)(转)
  9. 计算机网络多元化媒体传达,【多媒体技术论文】视觉传达设计多媒体技术的应用(共4007字)...
  10. 机械制图及计算机绘图技能实训,机械制图测绘与CAD技能实训(二)