首页 > 代码库 > 方向梯度直方图(HOG)和颜色直方图的一些比较

方向梯度直方图(HOG)和颜色直方图的一些比较

最近在学习视频检索领域的镜头分割方面的知识,发现常用的方法是直方图的方法,所以才专门有时间来学习下。查看到这两种直方图的时候,感觉有点接近,好像又不同,放在这做个比较。大部分还是百科的内容,不过对基本理解还是够了.OK,开始正文~


首先,介绍下什么是直方图

在统计学中,直方图(英语:Histogram)是一种对数据分布情况的图形表示,是一种二维统计图表,它的两个坐标分别是统计样本和该样本对应的某个属性的度量。又称质量分布图。是一种统计报告图,由一系列高度不等的纵向条纹或线段表示数据分布的情况。一般用横轴表示数据类型,纵轴表示分布情况。

直方图与条形图的区别在于,直方图是用面积而非高度来表示数量。

归一化直方图:把直方图上每个属性的计数除以所有属性的计数之和,就得到了归一化直方图。



然后,方向梯度直方图(HOG)

特点:在一个网格密集的大小统一的方格单元(dense grid of uniformly spacedcells)上计算,而且为了提高精确度使用了重叠的局部对比度归一化(overlapping local contrastnormalization)的方法。

核心思想:一幅图像中的物体的表象和形状可以被像素强度梯度或边缘的方向分布很好地描述。

实现方法:将图像分成小的叫做方格单元连通区域;然后采集方格单元中各像素点的梯度方向或边缘方向直方图;最后把这些直方图组合起来就可以构成特征描述子。

优点:首先,由于HOG方法是在图像的局部方格单元上操作,所以它对图像几何的和光学的形变都能保持很好的不变性,这两种形变只会出现在更大的空间领域上。其次,在粗的空域抽样、精细的方向抽样以及较强的局部光学归一化等条件下,只要行人大体上能够保持直立的姿势,可以容许行人有一些细微的肢体动作,这些细微的动作可以被忽略而不影响检测效果。方向梯度直方图方法是特别适合于做图像中的行人检测的。

算法和实现:

         1,计算梯度值。应用一个一维的离散的梯度模版分别应用在水平和垂直方向上去。可以使用如下的卷积核进行卷积:

[-1, 0, 1] and [-1, 0, 1]^T.

         2,建立分块直方图。每个块内的每个像素对方向直方图进行投票。每个块的形状可以是矩形或圆形的,方向直方图的方向取值可以是0-180度或者0-360度,这取决于梯度是否有符号。Dalal和Triggs发现在人的检测实验中,把方向分为9个通道效果最好。至于投票的权重,可以是梯度的幅度本身或者是它的函数。在实际测试中,梯度幅度本身通常产生最好的结果。

         在Dalal和Triggs的人检测实验中,发现最优的单元块划分是3x3或6x6个像素,同时直方图是9通道。



最后,颜色直方图

颜色直方图(英语:ColorHistogram),指图像中颜色分布的图形表示。

 

颜色直方图它所描述的是不同色彩在整幅图像中所占的比例,而并不关心每种色彩所处的空间位置.

全局颜色直方图:反映的是图像中颜色的组成分布,即出现了哪些颜色以及各种颜色出现的概率

 

计算:

计算颜色直方图需要将颜色空间划分成若干个小的颜色区间,每个小区间成为直方图的一个bin。这个过程称为颜色量化(color quantization)。然后,通过计算颜色落在每个小区间内的像素数量可以得到颜色直方图。颜色量化有许多方法,例如向量量化、聚类方法或者神经网络方法。

——————————————————————————————————————————————————

经过上边细致的比较,两者之间的区别还是很明显的。

对于应用,就我目前看过的,HOG大多作为一种形状描述,而颜色直方图一般用于颜色特征。


方向梯度直方图(HOG)和颜色直方图的一些比较