陈 熙,道尔吉,李运兰,韦 立,夏道勋,熊祥光
1.贵州师范大学 大数据与计算机科学学院 贵州省教育大数据应用技术工程实验室,贵阳 550025
2.长沙学院 计算机工程与应用数学学院,长沙 410022
图像梯度是一种高性能而低复杂度的纹理描述方法,它在图像特征提取与匹配[1]、图像分割[2]、图像去噪[3]、目标检测与定位[4]以及生物特征识别[5-8]等领域得到了广泛的应用,并取得了非常不错的效果。尽管图像梯度信息在图像处理和模式识别等领域已经得到了广泛研究和应用,它的工作机制仍然值得进一步研究和改进,比如绝大部分研究工作仅仅考虑图像的水平和垂直方向上的梯度信息[6,9],而同时考虑图像不同方向上的梯度信息可以获得图像在各个方向上的像素变化情况,充分描述了图像的特征,应该是一种更稳健的基于图像梯度的图像描述方法,从而使得基于图像的边缘检测、去除图像背景与噪声和图像特征提取等算法获得更好的性能。
虽然图像梯度很好的描述了图像纹理的变化特征,但是直接采用梯度作为图像特征进行图像检索与匹配尚显不足,大部分的算法都采用进一步对梯度进行编码的方式提取最终用来匹配的特征。孙健钧等人[1]提出一种基于图像梯度信息强化的尺度不变特征转换(SIFT)特征匹配算法的改进算法。Vu等人[5]提出的一种人脸识别方法同时考虑了梯度的幅度和方向信息。Zhang 等人[6]证明了水平和垂直方向上的梯度是一种光照不变图像特征,从而构建了“梯度脸”这么一种光照不变人脸特征提取方法。Nguyen 等人[9]在梯度局部相位量化模式算法中对梯度信息进行局部相位量化编码,但是该方法仅考虑了图像水平和垂直方向的梯度信息。Ming 和Song 等人[10-11]采用类似统一局部二值模式的方法对梯度信息进行编码,从而获得了一种旋转不变的图像纹理特征,此文中的局部相位量化方法与局部二值模式算法在纹理编码上有类似的机理。局部二值模式算法[12]是一种非常有效的纹理提取算子,有非常多的改进算法,如显性局部二值模式[13]、完备局部二值模式(CLBP)[14]、中心对称局部微分模式(CS-LDP)[15]、局部凸凹模式[16]等等,这些LBP的改进方法都对进一步增强局部相位量化算法的性能提供有益的思路。
本文在Nguyen 等人工作的基础上,考虑到图像不同方向具有不同的梯度信息,从而设计了多方向梯度提取算法,然后对各方向上的梯度信息采用块局部相位量化方法进行编码。
一幅图像I的在某个方向θ上的梯度采用方向导数定义,具体步骤如下:
(1)首先采用高斯函数G(x,y,σ)对图像I进行平滑处理,其中σ是高斯函数参数,“∗”表示卷积操作:
高斯函数表示为:
(2)根据卷积性质,对图像I′ 在方向θ上求方向导数:
这里Iθ是图像在方向θ上的方向导数,也就是图像在方向θ上的梯度,Gθ(x,y,σ)是高斯函数在方向θ上的方向导数,其定义为:
图1(a)是一张人脸图像;图1(b)是(a)中人脸图像在不同方向上的梯度图像,从上到下,从左到右,方向依次为:0,π/4,π/2,3×π/4,π,5×π/4,6×π/4,7×π/4 。从图1 中可以看出,不同方向上的梯度信息具有较明显的方向性。
图1(a) 一幅人脸图像
图1(b) 人脸图像在不同方向上的梯度图像
图像f(x)某像素点x=[x1,x2]T处的离散短时傅里叶变换为[9]:
其中Nx为像素点x的邻域,u表示频率。假设分别在四个频率u1=[a,0]T,u2=[0,a]T,u3=[a,a]T,u4=[a,-a]T上计算傅里叶系数,a是使H(ui)≥0 的一个足够小的数。此时,图像中的每个像素点都可以用一个向量来表示:
对向量Fx的每个元素进行量化处理,量化公式为:
量化之后的F(x)是一个8 位的二进制编码,然后对每位编码赋予权值系数即可求出该像素点的LPQ 特征值:
由于块局部二值模式[17]比局部二值模式在特征提取方面性能更好,故也将局部相位量化模式算法扩展成块局部相位量化模式算法,从而更好地描述的图像信息。块局部相位量化算法构建过程:以某个像素点xc为中心,构建9 个近邻图像块,每块包含9 个像素点,计算每块里面每个像素点的局部相位量化模式值,然后求得此像素块的平均相位量化模式值,如图2(a)中左上图像块包含9 个像素点,这9 个像素点的局部相位量化模式值分别为:15,27,3,78,67,12,29,85 和112,求得平均值47.6作为此像素块的平均相位量化模式值,其他8个块的平均相位量化模式值在图2(a)中进行了标记,其中包含中心像素点xc的图像块的平均相位量化值为113,然后中间图像块的平均相位量化模式值与周围8个图像块的平均相位量化模式值进行大小比较,如果是大于等于0,则记为“1”,否则记为“0”,这样就获得8 为二进制数10110111,如图2(b)所示,将此二进制数转化为十进制数183,此十进制数当作像素点xc的编码值。按上述方法对一幅图像的每个像素点进行操作后,获得整幅图像编码后的矩阵,然后采用直方图特征提取此矩阵的特征作为最终的匹配特征,采用公式(8)中所示的直方图交叉距离进行特征匹配:
图2 块局部相位量化模式示意图
图3 融合2个不同方向上的梯度相位量化模式直方图向量
多方向梯度的块局部相位量化模式算法对每幅图像提取多个方向上的梯度图像,然后对每个方向上的梯度图像进行分块,提取每个分块上的局部相位量化模式直方图,连接不同分块的局部相位量化模式直方图得到该梯度下图像的直方图特征向量,然后连接不同梯度方向下的直方图向量,得到此图像的最终直方图向量作为最终的匹配向量。图3展示了融合2个方向下梯度图像的相位量化直方图向量。在图3中,首先对一幅人脸图像计算出θ=0 和θ=3×π/4 情况下的2个梯度图像,然后对θ=0 时的梯度图像进行分块,如分成了64 块,然后计算出每块的相位量化模式直方图向量,连接此64个分块的相位量化模式直方图向量即为此人脸图像在θ=0 方向下的相位量化模式直方图向量,如图3中蓝色框中的直方图向量。同样对θ=3×π/4 时的梯度图像进行分块,如分成了64块,然后计算出每块的相位量化模式直方图向量,连接此64 个分块的相位量化模式直方图向量即为此人脸图像在θ=3×π/4 方向下的相位量化模式直方图向量,如图3 中红色框中的直方图向量。在图3的示意图中,仅考虑了2个方向,一般考虑4个方向,即θ=0,π/4,π/2,3×π/4。
多方向梯度的块局部相位量化模式算法具有两个比较明显的特点:(1)融合了图像在各个不同方向上的梯度特征,特别是对于某些具有明显方向特征的图像,可以选择特定的方向计算图像的梯度变化情况,这种情况下,能很好地描述图像特征;(2)较大尺度上描述了图像的局部特征,如图4(a)所示的3个相位量化后的图像邻近局部块。这3 个不同颜色框所包含的局部块像素值的平均值分别为:44.56、41.78和45.78,然后对平均值采用编码,因为44.56 大于41.78,故此黑色框局部块编码为1,而41.78小于45.78,故此蓝色框局部块编码为0,从而在黑色框和蓝色框之间形成了一个从1变化到0的局部变化,这个局部变化是在18 个邻近像素点之间描述的,具有较大的尺度。另外,块局部二值模式对噪声具有相对较小的敏感性。设两个相邻块v1和v2,包含的像素点分别为,其中表示像素块v1中第i个像素点的像素值,表示像素块v2中第j个像素点的像素值,如果考虑噪声的影响,则像素块v1和v2中像素值表示:,,其中表示像素块v1中第i个像素点的噪声值,表示像素块v2中第j个像素点的像素值。在块局部二值模式算法中对v1块的编码为:
其中噪声影响部分为:
其中probability()表示概率。上式表明,采用块局部二值模式算法后,噪声的影响变得比局部二值模式要小,因为接近期望E0的概率远大于单独一个像素值接近E0的概率,这也就是说平均值能消除图像噪声的影响,故多方向梯度的块局部相位量化模式算法对噪声也具有一定的抵抗能力。
图4 块局部二值模式较大尺度上描述了图像的局部特征
为了验证多方向梯度的块局部相位量化模式算法的有效性,在两个纹理数据库:Kylberg[18]和Brodatz[19]数据库上进行了一系列测试。考虑到掌纹也是一种纹理信息十分丰富的图片,利用香港理工大学提供的一个掌纹图像数据库[20]也进行了相关测试。所提多方向梯度的块局部相位量化模式算法与LBP、LPOG[9]、自适应加权局部相位量化[21]、LBP+LPQ 算法[22]和多尺度局部相位量化(Multi-scale Local Phase Quantization,MLPQ)[23]进行了识别率比较分析。为了直接体现各算法的纹理特征提取能力,采用了比较简单的最近邻分类方法。
Kylberg 纹理图像数据库共用28 类纹理图片,每类包含160 张不同纹理图片,每张图片大小为576×576 像素,图片格式为.png。图5(a)是该数据库中2种纹理18张图片。下面的实验中,从中选取了28类纹理样本,每类选取20 张图片构成实验图片库。Brodatz 纹理图像数据库是一个很常用的自然纹理图像库,从中选取了100类纹理,每类9张图片,共900张图片构成实验用图像库,选取的图片都转化成灰度图像。图5(b)是2 种Brodatz纹理的18张图片。掌纹数据库来自香港理工大学提供的PolyU掌纹图像数据库。共选取了300种掌纹的3 000 张掌纹图像,每种掌纹10 张。采用文献[24]中所描述的方法对掌纹图像进行了预处理。图5(c)是2种掌纹的18张图片,所有图片都调整到64×64大小。
在测量图像识别系统性能时,常常用到累加匹配特性曲线(Cumulative Matching Curve,CMC)这种指标。计算系统的累加匹配特性曲线,通常需要构建一个“Gallery”图库集和“Probe”图库集。可以从数据库中每类图像中随机一张构成“Gallery”图库集,而“Probe”图库集可以由数据库中除去“Gallery”图库集后剩下的样本构成。在李子青博士撰写的一本人脸识别专著“handbook of face recognition”对中累加匹配特性曲线的计算有较详细的介绍[25],另外也可以参考文献[16]。在采用Kylberg 纹理图像计算CMC 时,从5.1 节构建的Kylberg图像库中每种纹理挑选一张图片构成“Gallery”图像库,剩下的图像构成“Probe”图像库。在采用Brodatz 纹理图像和掌纹图像计算CMC 时,也是每一类任选一张构成“Gallery”图像库,剩下的构成“Probe”图像库。本文多方向梯度的块局部相位量化模式算法与LBP、LPOG、子区域局部相位量化、自适应加权局部相位量化、LBP+LPQ算法和多尺度局部相位量化在CMC性能上进行了比较分析。
从图6 中可以看出在上面3 种纹理图像库中,本文多方向梯度的块局部相位量化模式算法代表的黑色线都在其他线上面,表明本文算法都具一定的优势。因为掌纹是一种比较稳定的纹理图像,因此所比较的算法识别率都非常好,而且本文算法在所比较的几种相关算法中具有相对较好的优势。在Brodatz纹理库中所提算法也具有一定优势,但相对而言,在Kylberg纹理库中优势不非常明显了。
图5 预处理后样本图像
图6 各图像数据库的累加匹配特性曲线
系统的识别精度往往跟训练时采用的样本多少有关系。一般情况下,因为图像具有光照、角度等变化,所以从每类纹理图像选取能代表不同条件下的多张图片构成训练集,能提高系统识别的精度。此节考察正确识别率与训练样本集大小的关系,随机地从Brodatz 图像数据库、Kylberg纹理图像数据库和香港理工大学PolyU掌纹库的每种纹理图像中选择1、2、3、4和5个样本图像组成它们各自的训练图像集,各训练集所剩下的为相应的测试图像集。实验重复10 次,计算各次的平均识别率和标准偏差,并将识别结果分别罗列在表1、表2和表3中。相对局部二值模式算法而言,块局部二值模式算法能够在较大尺度情况下获得像素的变化情况,并且在块局部二值模式算法中,参与计算二值模式的像素值是此像素点周围像素点像素的平均值,从而能够减少噪声的影响,故块局部二值模式算法(MBLBP)很多时候也能获得相对LBP、LPOG、自适应加权局部相位算法、LBP+LPQ 及MLPQ 更好的性能。从表中看出,所提多方向梯度的块局部相位量化模式算法识别率均比其他几种算法要高。
一般而言,图像在遭受比较严重的噪声污染时,特征提取算法及分类方法的性能都会下降,因此所提算法最好能对噪声具有一定的稳健性。多方向梯度的块局部相位量化模式算法考虑了图像多个方向上的梯度信息,比仅仅考虑一个或二个方向上的梯度信息更具有噪声稳健性,另外块局部相位量化方法通过平均块内的像素点值也应当比局部相位量化具有噪声稳健性。接下来考察正确识别率与噪声类型的关系。采用matlab 函数 imnoise(im,‘gaussian’,0.02)来给图像添加高斯噪声,采用imnoise(im,‘salt & pepper’,0.02)函数给图像添加椒盐噪声(这里‘im’表示一幅图像)。将Kylberg纹理图像数据库中图片分别加上高斯噪声和椒盐噪声,如图7所示。然后随机地从Kylberg纹理图像数据库中分别选择1、2、3 和 4 个噪样本图像组成 USPTex 纹理图像数据库不同大小训练图像集4 个,各训练集所剩下的为相应的测试图像集。实验重复10 次,计算各次的平均识别率与标准偏差,并在表4 中给出识别结果与测试样本数的关系。实验结果表明,高斯噪声将严重影响各算法的性能,特别是LBP+LPQ 算法。本文多方向梯度的块局部相位量化模式算法中,参与计算二值模式的像素值是此像素点周围像素点像素的平均值,故相对其他算法LBP、LPOG、自适应加权局部相位算法、LBP+LPQ 及MLPQ 而言,在噪声情况下,块局部二值模式算法的性能下降相对小些,验证了本文的预期设想。
表1 Brodatz纹理图像数据库上的平均识别率(%)和标准偏差
表2 Kylberg纹理图像数据库上的最高平均识别率(%)和标准偏差
表3 香港理工大学PolyU掌纹库上的平均识别率(%)和标准偏差
图7(a) 原始灰度图像
图7(b) 加高斯噪声后的图像
图7(c) 加椒盐噪声后的图像
本文提出了基于多方向梯度的块局部相位量化模式算法,该算法具有以下优点:(1)提取图像多个方向上的梯度信息,充分描述了灰度图像沿不同方向灰度值的变化情况;(2)采用局部相位量化模式对图像在不同方向上的梯度变化进行编码;(3)对图像进行分块,然后采用基于多方向梯度的块局部相位量化模式算法进行特征提取,描述了图像的局部特征;(4)块局部相位量化模式对噪声具有稳健性。根据多方向梯度块局部相位量化模式算法的以上特点,该算法适应图像在各方向上具有较大梯度变化,在较大尺度(相对局部二值模式)图像局部的变化以及需要考虑噪声情况下使用此算法。纹理数据库和掌纹数据库上的广泛实验表明,本文基于多方向梯度的块局部相位量化模式算法是一种有效的纹理描述方法。
表4 噪声环境下Kylberg纹理库中各算法的平均识别率 %