网站首页 > 技术文章 正文
HOG(histogram of oriented gradients)方向梯度直方图
论文名称:Histograms of Oriented Gradients for Human Detection
image-20211215105534363
论文发表于2005年的CVPR,是一种有效的图像特征提取策略,至今已经收获了3万7千多的引用量。
最近两年一直在搞深度学习,对于本科时候看的HOG算法已经忘得差不多了,最近重新学习梳理一下这个经典的图像特征提取算法。
image-20211215104938760
HOG图像特征提取算法主要可以分为如下的几个步骤:
- 图像预处理
- 计算图像梯度
- 计算梯度直方图
- 图像HOG特征向量
1. 图像预处理
这一步主要是将图像裁剪缩放到「64x128」的尺度。
其他的还有灰度化操作与Gamma矫正,这两个都是可选的操作。
无论是灰度图还是RGB图都可以计算图像梯度,不过颜色图像分别对RGB通道进行计算选择其中最大的梯度作为最终的梯度即可。
Gamma矫正是为了减少光照对实验的影响,但是实验证明对结果影响不大。
2. 计算图像梯度
直接使用一维的sober算子分别计算像素点的水平以及竖直方向的梯度。
对于一个像素点,及其8邻域如下图所示。
其水平方向梯度为:
竖直方向梯度为:
最终像素点的梯度强度以及方向为:
3. 计算梯度直方图
在上一步中,计算得到图像中所有像素点的梯度强度以及方向。
将原始64x128图像切分为8x8大小的cell。在每个cell中计算梯度直方图,每个cell包含8x8个像素点,每个像素点包含两个值(梯度的强度以及方向)。统计cell中的值得到方向梯度直方图。
将180度的范围切分为20度的范围,最终得到9个范围的梯度直方图。如下图所示,左上图是每个cell的梯度方向,右上图是每个cell的梯度强度,下图是9个bins。利用插值的方式,将梯度强度映射到不同的梯度方向范围中,最终得到包含9个值的梯度直方图。
在获得每个cell的直方图后,将「2x2个cell组合为一个block」,将次block中计算得到的梯度直方图concat得到包含一个「4x9=36」长度的vector作为此block的特征向量。
然后利用L2Norm对这个36维的特征向量进行规范化。
4. 图像HOG特征向量
每个block得到一个长度为36的vector作为特征向量,原始「64x128的图像一共可以切分为7x15个block(按照cell步长为1向右滑动)」,最终将所有block的特征向量进行concat得到最终的7x15x36=3780维的特征向量。利用此特征可以进行后续的图像分类以及检测任务。
?
原文首发于「小哲AI」公众号,公众号主要分享人工智能前沿算法解读,AI项目代码解析,以及编程、互联网求职等技术资料文章,偶尔也会分享个人读书笔记、工作学习心得,欢迎关注,一起学习。
?
- 上一篇: 深入浅出理解HOG特征——梯度方向直方图
- 下一篇: HOG(方向梯度直方图)特征检测算法及解释
猜你喜欢
- 2024-10-12 热红外成像算法都有哪些 红外热成像dep
- 2024-10-12 「图像描述子」 SIFT特征的提取过程
- 2024-10-12 运用HOG通过Java实现面部识别比较
- 2024-10-12 「洞幺邦」COSD数据集图像分类与物体分割
- 2024-10-12 用改进的深度差分特征识别人体部位
- 2024-10-12 人脸识别技术的基本原理和主流技术介绍
- 2024-10-12 图像学习之如何理解方向梯度直方图(Histogram Of Gradient)
- 2024-10-12 密恐警告:超2000万张,全球最大的人眼图像数据集开源了
- 2024-10-12 基于HOG-LBP特征融合的头肩检测研究
- 2024-10-12 图像识别(四):图像特征选择与提取
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- oraclesql优化 (66)
- 类的加载机制 (75)
- feignclient (62)
- 一致性hash算法 (71)
- dockfile (66)
- 锁机制 (57)
- javaresponse (60)
- 查看hive版本 (59)
- phpworkerman (57)
- spark算子 (58)
- vue双向绑定的原理 (68)
- springbootget请求 (58)
- docker网络三种模式 (67)
- spring控制反转 (71)
- data:image/jpeg (69)
- base64 (69)
- java分页 (64)
- kibanadocker (60)
- qabstracttablemodel (62)
- java生成pdf文件 (69)
- deletelater (62)
- com.aspose.words (58)
- android.mk (62)
- qopengl (73)
- epoch_millis (61)
本文暂时没有评论,来添加一个吧(●'◡'●)