HOG特征

HOG(Histogram of Oriented Gradients)是一种用于物体检测的特征描述子,通过计算图像局部区域的梯度方向直方图来描述图像。HOG特征的提取包括色彩和伽马归一化、梯度计算、细胞单元直方图构建、块归一化等步骤。在行人检测等领域取得了显著效果,常与SVM分类器结合使用。OpenCV提供了HOGDescriptor类来实现HOG特征的提取。

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

[原]Histogram of oriented gradients(HOG)

背景

方向梯度直方图(Histogram of Oriented Gradient, HOG)特征是一种在计算机视觉和图像处理中用来进行物体检测的特征描述子。它通过计算和统计图像局部区域的梯度方向直方图来构成特征。HOG特征最早由Navneet Dalal和Bill Triggs两位法国国家计算机技术和控制研究所(French National Institute for Research in Computer Science and Control (INRIA))的研究员提出,文章于2005年发表在CVPR上,文章的题目为Histograms of oriented gradients for human detection
他们在这篇文章中首次提出了HOG方法。他们主要是将这种方法应用在静态图像中的行人检测上,但在后来,他们也将其应用在电影和视频中的行人检测,以及静态图像中的车辆和常见动物的检测。Hog特征结合SVM分类器已经被广泛应用于图像识别中,尤其在行人检测中获得了极大的成功。需要提醒的是,HOG+SVM进行行人检测的方法是法国研究人员Dalal在2005的CVPR上提出的,而如今虽然有很多行人检测算法不断提出,但基本都是以HOG+SVM的思路为主。2014年Pingkun Yan等人在Label Image Constrained Multiatlas Selection一文中将HOG特征+SVM的方法应用在图像配准的图谱选择上,我也是通过这篇才知道了HOG特征。

注明:

《目标检测的图像特征提取之(一)HOG特征》《Histogram of oriented gradients(HOG)》《HOG特征-理解篇》三篇博客对HOG特征做了很好的介绍,本文也是主要参考这两篇文章对HOG特征进行整理介绍,在此非常感谢原作者的付出。

算法原理

HOG的核心思想是:

在一副图像中,局部目标的表象和形状(appearance and shape)能够被梯度或边缘的方向密度分布很好地描述。(本质:梯度的统计信息,而梯度主要存在于边缘的地方)。

具体的实现方法是:

  • 首先将图像分成小的连通区域,我们把它叫细胞单元。
  • 然后采集细胞单元中各像素点的梯度的或边缘的方向直方图。
  • 最后把这些直方图组合起来就可以构成特征描述器。

为了提高性能,我们还可以把这些局部直方图在图像的更大的范围内(我们把它叫区间或block)进行对比度归一化(contrast-normalized),所采用的方法是:先计算各直方图在这个区间(block)中的密度,然后根据这个密度对区间中的各个细胞单元做归一化。通过这个归一化后,能对光照变化和阴影获得更好的效果。

与其他的特征描述方法相比,HOG描述器后很多优点。

  • 首先,由于HOG方法是在图像的局部细胞单元上操作,所以它对图像几何的(geometric)和光学的(photometric)形变都能保持很好的不变性,这两种形变只会出现在更大的空间领域上。
  • 其次,作者通过实验发现,在粗的空域抽样(coarse spatial sampling)、精细的方向抽样(fine orientation sampling)以及较强的局部光学归一化(strong local photometric normalization)等条件下,只要行人大体上能够保持直立的姿势,就容许行人有一些细微的肢体动作,这些细微的动作可以被忽略而不影响检测效果。因此HOG描述子尤其适合人的检测。

HOG特征提取方法就是将一个image(你要检测的目标或者扫描窗口):
1. 灰度化(将图像看做一个x,y,z(灰度)的三维图像);
2. 采用Gamma校正法对输入图像进行颜色空间的标准化(归一化);目的是调节图像的对比度,降低图像局部的阴影和光照变化所造成的影响,同时可以抑制噪音的干扰;
3. 计算图像每个像素的梯度(包括大小和方向);主要是为了捕获轮廓信息,同时进一步弱化光照的干扰。
4. 将图像划分成小cells(例如6*6像素/cell);
5. 统计每个cell的梯度直方图(不同梯度的个数),即可形成每个cell的descriptor;
6. 将每几个cell组成一个block(例如3*3个cell/block),一个block内所有cell的特征descriptor串联起来便得到该block的HOG特征descriptor。
7. 将图像image内的所有block的HOG特征descriptor串联起来就可以得到该image(你要检测的目标)的HOG特征descriptor了。这个就是最终的可供分类使用的特征向量了。

HOG1

原算法实现具体每一步的详细过程如下:

色彩和伽马归一化(color and gamma normalization)

了减少光照因素的影响,首先需要将整个图像进行规范化(归一化)。在图像的纹理强度中,局部的表层曝光贡献的比重较大,所以,这种压缩处理能够有效地降低图像局部的阴影和光照变化。因为颜色信息作用不大,通常先转化为灰度图;
* Gamma压缩公式

I(x,y)=I(x,y)gamma

作者分别在灰度空间、RGB色彩空间和LAB色彩空间上对图像进行色彩和伽马归一化,但实验结果显示,这个归一化的预处理工作对最后的结果没有影响,原因可能是:在后续步骤中也有归一化的过程,那些过程可以取代这个预处理的归一化。所以,在实际应用中,这一步可以省略。

梯度的计算(Gradient computation)

计算图像横坐标和纵坐标方向的梯度,并据此计算每个像素位置的梯度方向值;求导操作不仅能够捕获轮廓,人影和一些纹理信息,还能进一步弱化光照的影响。
图像中像素点(x,y)的梯度为:

Gx(x,y)=H(x+
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值