基于韦伯定律的图像相似度检测应用研究 下载本文

基于韦伯定律的图像相似度检测应用研究

3 基于韦伯定律的图像相似度检测

3.1 WLD的提取

3.1.1 韦伯定律

韦伯定律是由19世纪德国的生理学家与心理学家Ernst Weber发现,它用来表明心理量和物理量之间关系。它描述了最小的感觉增量比例比上常数的刺激强度是不变的。

?I?K (3.1) I其中△I代表阈值的增量(最小可觉察的区别),I代表最初的刺激强度,K是一个常量。△I与I的比例称之为韦伯率。韦伯定律揭示了精神量与物理量之间的关系。更简单的说,它揭示了当韦伯率△I/I是一个常数刺激量的变化是(△I)一直不变的。因此,当刺激的变化(比如声音、光)比这个常数最初的刺激小很多时候,它将被认为是一个背景的噪声而不是一个有效的信号。即不同外界条件下,韦伯定律能够描述可区分的一种比值。 3.1.2 韦伯局部特征

韦伯局部特征(WLD)是2010年Chen et al受韦伯定律启发提出的描述图像局部变化的特征值,它主要由两个成分构成:差分激励(DE:Differential excitation)和梯度方向(θ,Orientation)。差分激励是一个两项的比例函数,一个是当前像素与附近像素差的相对强度,另一种是当前像素的强度。还有是当前像素的方向梯度。实验证明,WLD显而易见地胜过其他常用的算子(比如Gabor和SIFT)。然而,根据WLD的定义,定位组件只考虑到四个像素在水平状态和垂直状态,不能完全的代表局部信息。此外,差分激励和方向只是一些间隔的平均量子化。这种简单的量子化方法不仅进一步导致信息丢失,而且限制了WLD的性能。 3.1.3 差分激励

差分激励(Differential Excitation)?(xc)是指当前中心的像素与其相邻近的像素之

间灰度值的差值与当前像素的灰度值的比值[29][30],差分激励是用来感知明显的改变特征。如下图3.1差分激励流程图所示,像素点xc对应的矩阵中,p的值为8。滤波窗口是用来对输入图像进行滤波的作用,通过滤波窗函数可计算灰度变化情况。

- 20 -

基于韦伯定律的图像相似度检测应用研究

图3.1 差分激励计算流程图

具体来说,差分激励与梯度方向总的计算公式如下图3.2所示,其中Ic为当前的灰度值。利用反正切的方法作为滤波窗函数进行映射。[31]

- 21 -

基于韦伯定律的图像相似度检测应用研究

图3.2 矩阵差分激励、梯度方向计算

当前像素Xc的差分激励,首先通过窗函数计算出给定中心点相对于其邻近点的差分。其中该滤波窗函数为f,根据韦伯定律计算出差分比值。[32][33]进行反正切变换则每个像素点的差分激励?(xc)均可由下列公式3.2、3.3、3.4计算得出。

?I??(?xi)??(xi?xc) (3.2)

i?0i?0p?1p?1 G(xc)??I (3.3) Ip?1(xi?xc)?I?i?0G(xc)]?arctan][?arctan[] (3.4) ?(xc)?arctan[Ixc我们需要注意, 当邻近像素值都小于中心像素值时?(xc)的值为负数。由此,该算法尝试通过取绝对值,来要保留更多在图像中的可区分信息?(xc)。?(xc)的值介于[

??π2,2]。直觉上讲,当 ξ ( x)的值是正数时,就可以认为周围邻近像素的像素值

比中心像素的像素值大(直观上,中心像素较黑);相反,如果?(xc)是一个负数值,则认为周围邻近像素的像素值比中心像素的像素值小(即,中心像素较亮)。

图像中大多数区域的灰度值变化都是相对平坦的,或者说灰度值的梯度变化相对较小,只是偶尔会因为图像中的边界或者因不同物体的边界之间的交叉而产生的较大变化所打断。

除了可以用反正且函数作为滤波窗函数以外,我们还有很多种方法进行滤波比如y=x函数、对数函数、Sigmoid函数等。这里面y=x函数、对数函数由于有负值应用起来比较麻烦,而Sigmoid函数是一种比较经典的滤波窗函数[34]。它在人工神经元中得到了应用,但是Sigmoid函数使用起来计算比较困难。我们尊重Chen et al的方法,运用反正切函数进行滤波。但是在这里,我们还是列出Sigmoid函数的构造如公式3.5所示。Sigmoid函数图像与反正切图像比较相近,当β=2时更为相近。

- 22 -

基于韦伯定律的图像相似度检测应用研究

1?e??x sigmoid(?x)? (3.5)

1?e??x

3.1.4 梯度方向

梯度方向(Orientation)是像素点与相邻像素点的方向角度的变化率,它的公式如3.6所示。

x?x3n() (3.6) ?(xc)?arcta7x5?x1与差分激励相对应的是,此时梯度方向的滤波窗函数分别如图3.3、3.4。

图3.3 梯度方向滤波窗函数1

图3.4 梯度方向滤波窗函数2

量化前,我们有公式3.6,将?进行滤波处理,处理过程由公式3.7展示,我们发现当(x7?x3)>0,(x5?x1)>0时,??=?;当(x7?x3)>0,(x5?x1)<0时,??=2π+?;当

(x7?x3)<0,(x5?x1)>0时,??=π+?;当(x7?x3)<0,(x5?x1)<0时,??=π+?。量化后得到结果如公式3.8所示。

x?xa(n73) (3.7) ???arct2x5?x1- 23 -