0%

HOG特征

  • 简介:HOG全称histogram of oriented gradients,中文是方向梯度直方图。它可以用来表示图像的物体特征,主要是轮廓特征,因此能够用于图像的分类等任务。
  • 主要思想:在一副图像中,局部目标的appearance和shape能够被梯度或边缘的方向密度分布很好地描述
  • 本质:梯度的统计信息,而梯度主要存在于边缘的地方
  • 优点:
    1. 由于HOG是在图像的局部方格单元上操作,所以它对图像几何的和光学的形变都能保持很好的不变性,这两种形变只会出现在更大的空间领域上
    2. 在粗的空域抽样、精细的方向抽样以及较强的局部光学归一化等条件下,只要行人大体上能够保持直立的姿势,可以容许行人有一些细微的肢体动作,这些细微的动作可以被忽略而不影响检测效果。因此HOG特征是特别适合于做图像中的人体检测的

HOG的原理

  1. 图像预处理:伽马校正和灰度化,也可不做,对实验影响不大。
    • 伽马校正是减少光度对实验的影响
    • 灰度化是将彩色图片变成灰度图。其实彩色图片也可以直接处理,不过是分别对三通道的颜色值进行梯度计算,最后选择梯度最大的那个
    • 为简单起见,假设输入为灰度图,同时大小是**64*128**
  2. 计算每个像素点的梯度大小和梯度方向
    • 水平\(x\)方向梯度\(\frac{\mathrm{d}f}{\mathrm{d} x}=\frac{f(x+1)-f(x-1)}{2}\approx f(x+1)-f(x-1)\)
    • 竖直\(y\)方向的梯度\(\frac{\mathrm{d} f}{\mathrm{d} y}=\frac{f(y+1)-f(y-1)}{2}\approx f(y+1)-f(y-1)\)
    • 梯度大小\(||f'|| = \sqrt{(\frac{\mathrm{d} f}{\mathrm{d} x})^2+(\frac{\mathrm{d} f}{\mathrm{d} y})^2}\)
    • 梯度方向\(\theta=tan^{-1}{(\frac{\mathrm{d} f}{\mathrm{d} y}/\frac{\mathrm{d} f}{\mathrm{d} x})}\)
  3. 每8*8个pixel为一个cell,根据梯度方向的大小划分为9个bins,并将梯度大小根据梯度方向投递到不同的bin中,计算直方图
  4. \(2*2\)的cell为一个block,计算对block中\(2*2*9\)个数字进行归一化,每个block得到一个大小为\(36\)的特征向量
  5. 对于\(64*128\)大小的输入图像,用stride为1的block逐一计算每个block的特征向量,共得到\((8-1)*(16-1)\)\(36\)维的特征向量,将其拉成一个concat成一个\(7*15*36=3780\)维的特征向量,即为HOG特征

参考文献:

  1. https://zhuanlan.zhihu.com/p/40960756
  2. https://blog.csdn.net/zouxy09/article/details/7929348?utm_term=hog%E7%89%B9%E5%BE%81%E5%9B%BE&utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2allsobaiduweb~default-1-7929348&spm=3001.4430
欲戴皇冠,必承其重,加油!