hog特征原理描述

Histogram of Oriented Gridients(HOG) 方向梯度直方图

[转载自 https://blog.csdn.net/datase/article/details/71374471 版权归原做者全部 仅供学习参考]html

Histogram of Oriented Gridients,缩写为HOG,是目前计算机视觉、模式识别领域很经常使用的一种描述图像局部纹理的特征。这个特征名字起的也很直白,就是说先计算图片某一区域中不一样方向上梯度的值,而后进行累积,获得直方图,这个直方图呢,就能够表明这块区域了,也就是做为特征,能够输入到分类器里面了。那么,接下来介绍一下HOG的具体原理和计算方法,以及一些引伸。post

 

1.分割图像学习

由于HOG是一个局部特征,所以若是你对一大幅图片直接提取特征,是得不到好的效果的。原理很简单。从信息论角度讲,例如一幅640*480的图像,大概有30万个像素点,也就是说原始数据有30万维特征,若是直接作HOG的话,就算按照360度,分红360个bin,也没有表示这么大一幅图像的能力。从特征工程的角度看,通常来讲,只有图像区域比较小的状况,基于统计原理的直方图对于该区域才有表达能力,若是图像区域比较大,那么两个彻底不一样的图像的HOG特征,也可能很类似。可是若是区域较小,这种可能性就很小。最后,把图像分割成不少区块,而后对每一个区块计算HOG特征,这也包含了几何(位置)特性。例如,正面的人脸,左上部分的图像区块提取的HOG特征通常是和眼睛的HOG特征符合的。url

接下来讲HOG的图像分割策略,通常来讲有overlap和non-overlap两种,以下图所示。overlap指的是分割出的区块(patch)互相交叠,有重合的区域。non-overlap指的是区块不交叠,没有重合的区域。这两种策略各有各的好处。spa

non-overlapoverlap

先说overlap,这种分割方式能够防止对一些物体的切割,仍是以眼睛为例,若是分割的时候正好把眼睛从中间切割而且分到了两个patch中,提取完HOG特征以后,这会影响接下来的分类效果,可是若是两个patch之间overlap,那么至少在一个patch会有完整的眼睛。overlap的缺点是计算量大,由于重叠区域的像素须要重复计算。.net

再说non-overlap,缺点就是上面提到的,有时会将一个连续的物体切割开,获得不太“好”的HOG特征,优势是计算量小,尤为是与Pyramid(金字塔)结合时,这个优势更为明显。3d

2.计算每一个区块的方向梯度直方图htm

将图像分割后,接下来就要计算每一个patch的方向梯度直方图。步骤以下:blog

A.利用任意一种梯度算子,例如:sobel,laplacian等,对该patch进行卷积,计算获得每一个像素点处的梯度方向和幅值。具体公式以下:图片

 

其中,Ix和Iy表明水平和垂直方向上的梯度值,M(x,y)表明梯度的幅度值,θ(x,y)表明梯度的方向。

 

B.将360度(2*PI)根据须要分割成若干个bin,例如:分割成12个bin,每一个bin包含30度,整个直方图包含12维,即12个bin。而后根据每一个像素点的梯度方向,利用双线性内插法将其幅值累加到直方图中。

 

C.(可选)将图像分割成更大的Block,并利用该Block对其中的每一个小patch进行颜色、亮度的归一化,这一步主要是用来去掉光照、阴影等影响的,对于光照影响不剧烈的图像,例如很小区域内的字母,数字图像,能够不作这一步。并且论文中也说起了,这一步的对于最终分类准确率的影响也不大。

3.组成特征

将从每一个patch中提取出的“小”HOG特征首尾相连,组合成一个大的一维向量,这就是最终的图像特征。能够将这个特征送到分类器中训练了。例如:有4*4=16个patch,每一个patch提取12维的小HOG,那么最终特征的长度就是:16*12=192维。

4.一些引伸

 与pyramid相结合,即PHOG。PHOG指的是,对同一幅图像进行不一样尺度的分割,而后计算每一个尺度中patch的小HOG,最后将他们链接成一个很长的一维向量,做为特征。例如:对一幅512*512的图像先作3*3的分割,再作6*6的分割,最后作12*12的分割。接下来对分割出的patch计算小HOG,假设为12个bin即12维。那么就有9*12+36*12+144*12=2268维。须要注意的是,在将这些不一样尺度上得到的小HOG链接起来时,必须先对其作归一化,由于3*3尺度中的HOG任意一维的数值极可能比12*12尺度中任意一维的数值大不少,这是由于patch的大小不一样形成的。PHOG相对于传统HOG的优势,是能够检测到不一样尺度的特征,表达能力更强。缺点是数据量和计算量都比HOG大了很多。

参考文献:

Navneet Dalal and Bill Triggs,《Histograms of Oriented Gradients for Human Detection》,2005

A. Bosch, A. Zisserman, and X. Munoz, 《Representing shape with a spatial pyramid kernel》,2007

相关文章
相关标签/搜索