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

90 篇文章 ¥69.90 ¥99.00
本文介绍了基于OpenCV实现的HOG+SVM自定义对象识别方法,探讨了HOG特征与SIFT的区别,详细阐述了HOG中的win、block、cell概念,并分析了方向梯度直方图的构建。虽然在深度学习普及的当下,这种方法可能应用不多,但在特定场景下仍能实现较好的识别效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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)采取