基于OpenCV实现的HOG+SVM自定义对象识别

1,前言

       该案例是很久以前学习课程,最近突然想起来了就实现记录一下。在深度学习逐渐流行的今天,HOG+SVM自定义对象识别的用武之地可能不是很大了,但是在固定场景下,自定义对象如果在图像中的大小较为恒定的情况下,这种办法只需要较少的数据集即可实现不错的识别效果。评价某算法的作用要结合特定的场景,脱离场景谈作用是不太客观的。

2,HOG特征

HOG与SIFT的区别
HOG和SIFT都是描述子,以及由于在具体操作上有很多相似的步骤,所以致使很多人误认为HOG是SIFT的一种,其实两者在使用目的和具体处理细节上是有很大的区别的。HOG与SIFT的主要区别如下:
(1)SIFT是基于关键点特征向量的描述。

(2)HOG是将图像均匀的分成相邻的小块,然后在所有的小块内统计梯度直方图。
(3)SIFT需要对图像尺度空间下对像素求极值点,而HOG中不需要。
(4)SIFT一般有两大步骤,第一个步骤对图像提取特征点,而HOG不会对图像提取特征点。

HOG的优缺点 优点:
(1)HOG表示的是边缘(梯度)的结构特征,因此可以描述局部的形状信息; (2)位置和方向空间的量化一定程度上可以抑制平移和旋转带来的影响;
(3)采取在局部区域归一化直方图,可以部分抵消光照变化带来的影响;
(4)由于一定程度忽略

你可能感兴趣的:(OpenCV,机器学习,支持向量机,opencv,人工智能)