分享

【学习】车辆追踪算法大PK:SVM HOG vs. YOLO

 aim2017 2017-03-07
摘要
 

转自:云栖社区

 本文通过SVM+HOG算法,YOLO算法实现车辆检测和跟踪准确性和速度的对比,得出YOLO算法更具优势的结论。


介绍

       对于Udacity(优达学城)自动驾驶汽车纳米学位的汽车检测和跟踪项目,如果使用传统的计算机可视化技术将是一个挑战,就像方向梯度直方图(Histogram of Oriented Gradients,HOG)和其它特征组合在一起在视频里跟踪汽车一样,理想的解决方案应该是实时运行的,如>30FPS,我曾经使用线性SVM来处理视频,在一台i7 CPU计算机上得到的结果只有可怜的3FPS。最后我使用YOLO来处理视频终于通过了Udacity的项目,YOLO是一个超快的用于对象检测的卷积神经网络,如果你的GPU够快(我当时使用的是GTX 1080),视频处理的速度可以达到65FPS,比我用SVM+HOG的方法足足快20倍

使用YOLO来处理Udacity汽车跟踪项目视频在检测汽车时表现优异

数据集

        我使用了KITTIGTI数据集,以及来自项目训练仓库的一些其它数据,只有两类数据:有车的和没有车的,GTI数据从视频流获得,因此所有图像都完全是随机的,然后被分为训练和测试数据集,在训练和测试数据集之间建立相关关系,我将每个数据源30%的数据集作为验证和测试数据集,所有图像都被重置为64x64像素的大小,以便于特征的提取。

特征提取

    我使用的特征向量如下:

  • 空间特征:除了用于自检的像斑(16x16像素)外啥都没有。

  • 颜色直方图特征:捕获每个像斑的统计颜色信息,通过这种特征向量捕获的汽车颜色通常是非常饱和的。

  • 方向梯度直方图(HOG)特征:捕获每个图像通道的梯度结构,在不同的光线条件下,这种方法表现得还不错。

这篇博客里有关于HOG特征的详细描述,其思想始终是,在一个直方图里,在一个图像上聚集梯度,让特征向量在不同视角和光线条件下变得更加稳定。下面是HOG特征应用于有车的和没车的图像上时的可视化呈现。

HOG特征,从左边开始的4列:训练数据和它们在HLS颜色空间里的通道,右边3列:每个通道HOG向量的可视化效果

    最后一个特征向量包含前面3个不同方法提取的特征,因此有必要对每一个特征进行计量,防止因取值范围不同导致某一特征占主导地位,我使用了scikit学习包中的Standard.Scaler函数,通过移动平均值和按比例缩放到单位方差来标准化特征。


原文链接:

https://yq.aliyun.com/articles/71662

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多