结合微分特征和Haar小波分解的鲁棒纹理表达
2020-09-29刘望华刘光帅陈晓文李旭瑞
刘望华,刘光帅,陈晓文,李旭瑞
(西南交通大学机械工程学院,成都 610031)
0 引言
纹理是自然物体表面的基本特征。对纹理的分析是指通过对处理后图像的像素强度和空间分布进行数学分析,从而量化纹理参数。纹理分类作为纹理分析中的一个热点问题而备受关注,并在计算机视觉和图像分析领域得到广泛应用。
在过去的几十年里,图像纹理得到广泛研究,相继提出了一些有代表性的纹理分析方法,这些方法一般可分为统计方法、结构方法、基于模型的方法和信号处理方法[1]四种。纹理不同于其他特征,因大多数纹理存在较大变化使得对纹理的表达困难,所以统计方法是一种较合适的纹理分析方法。局部二值模式(Local Binary Pattern,LBP)[2]作为一种经典的统计方法纹理描述算子,因其计算简单、对单调光照变化不敏感和特征表达能力强的优点,在计算机视觉和模式识别领域得到广泛应用,如生物图像识别[3-4]、图像检索[5-6]、遥感[7]、视觉监测[8]等。受LBP 算子的启发,许多研究者相继提出了大量的LBP变体算子来编码图像中的纹理信息。
为增强特征判别性,一些学者通过结合互补特征,相继提出了大量的LBP变体算子:Guo等[9]将中心像素和邻域像素的差异分解为符号和幅值两互补部分,并结合图像的全局灰度强度特征,提出了完整局部二值模式(Completed Local Binary Pattern,CLBP)算子;随后,Liu 等[10]基于邻域像素强度(Neighbors Intensity,NI)、全局像素强度描述子(Central Intensity,CI)以及邻域径向差异描述子(Radial-Difference,RD)提出了CINIRD 算子;因CLBP 和CINIRD 对噪声敏感,Liu等[11]提 出 了BRINT(Binary Rotation Invariant and Noise Tolerant)算子,BRINT 算子采用“ri”的编码方式降低“riu2”编码带来的信息损失,并在量化前将圆形邻域上相邻的P/8 个像素点的平均灰度值作为新的邻域点像素灰度值,在邻域像素点较多时仍能保证恒定的特征维度;而后,Liu 等[12]通过对采样点进行中值滤波,基于多尺度CINIRD 算子提出了MRELBP(Median Robust Extended Local Binary Pattern)算子,特征判别性较CINIRD算子更强,且增强了对椒盐噪声的鲁棒性;Ryu 等[13]参考CLBP 算法,通过排序局部邻域中连续模式数量,将邻域二值模式表示为欧氏空间内的特征向量,提出了scLBP(Sorted Consecutive Local Binary Pattern)算子;Cimpoi等[14]在卷积层进行多尺度卷积神经网络(Convolutional Neural Network,CNN)特征提取,通过费舍尔向量池化计算图像特征,并通过改变卷积层的步长和接受域,分别提出了FVVGG-VD(Fisher Vector-Visual Geometry Group-Very Deep)和FV-VGG-M(Fisher Vector-Visual Geometry Group-Medium)神经网络算子进行纹理识别;Chan 等[15]结合PCA(Principal Component Analysis)级联、二值哈希编码和逐块直方图计算,提出了PCANet(PCA Network)算子,并为降低计算量,将PCANet 中PCA 替换为随机滤波器,提出了RandNet(Random Network)算子。
为实现特征的旋转不变性,许多LBP 变体算子采用Ojala提出的旋转不变编码方式编码二值模式,如文献[16-17],但此方法仅对旋转角度为360/P 倍数的旋转变化具有鲁棒性,具有一定的局限性。为增强特征的旋转不变性,Ahonen 等[18]利用傅里叶变换幅值谱具有旋转不变性的特点提取旋转不变图像特征;Duan 等[19]首先提取训练样本的有序局部像素差异向量,计算对应的旋转二值模式并学习旋转函数,将学习到的旋转函数应用到测试阶段增强特征对旋转变化的鲁棒性。
为增强对模糊的鲁棒性,因低频相位分量具有模糊鲁棒性,Ojansivu 等[20]通过量化局部邻域傅里叶变换的相位谱,提出了对模糊鲁棒的局部相位量化(Local Phase Quantization,LPQ)算子;而后,Ahonen 等[21]将LPQ 方法应用于模糊人脸识别;Sun 等[22]提出了一种模糊核估计的抗模糊方法,对每个清晰的图像样本估计最佳模糊核,使训练样本与相应的模糊样本之间的距离最小,然后,应用模糊核来模糊清晰的图库样本,将所有这些模糊的样本组成自适应模糊样本集,在识别期间充当参考,增强算子对图像模糊的鲁棒性。
虽然LBP 的研究取得了很大的成功,并相继提出了大量的LBP 变体算子,但现有的LBP 变体算子大多仍存在如下问题:
1)现有LBP变体算子中对结合旋转变化和图像模糊鲁棒性的研究较少。
2)多数LBP 算子仅考虑了空间域特征或频域特征,未充分考虑空间特征与频域特征的结合。
3)许多LBP变体算子的特征维度和特征的计算复杂度较高,不能满足实时性的要求。
针对上述问题,本文提出了一种结合微分特征和小波分解的鲁棒纹理表达方法。在微分特征通道上,通过各向同性微分算子提取图像中旋转不变的一阶和二阶微分特征,增强对模糊和旋转变化的鲁棒性;在小波分解通道上,采用多尺度的小波分解提取时频信息,并放大高频小波分解系数增强对模糊的鲁棒性。
1 局部二值模式
原始的LBP 算子最早由Ojala 等在1994 年的模式识别国际会议上提出,随后发表于1996 年的Pattern Recognition 期刊,直到2002 年在IEEE 的模式分析和机器智能学报上发表后才受到人们的广泛关注。原始LBP算子通过比较中心像素和邻域像素灰度值大小进行二值量化,加权组合量化后模式值作为LBP特征值。LBP的特征提取过程如图1所示,其数学表达式如下:
其中:gp为邻域像素灰度值,gc为中心像素灰度值,P为邻域像素点数目,R为邻域半径。
式(1)表明,LBP 模式种类共有2P种。LBP 算子首先计算纹理图像每个局部邻域所对应的LBP 值,得到纹理图像的LBP 模式图,如图1(c)所示;然后,通过LBP 模式图的直方图H来表示该纹理图像的纹理特征。直方图计算的数学表达式如式(2)所示:
其中:k为LBP模式值,0≤k<2P。
为增加LBP 的旋转不变性,减小特征维度,Ojala 分别提出了一致LBP(LBPu2)、旋转不变LBP(LBPri)和旋转不变一致LBP(LBPriu2)三种纹理描述子。在LBPu2中,提出采用一致性度量U来计算模式中0/1的跳变次数,并将跳变次数小于或等于2 的模式定义为一致模式,共P(P-1)+3 种。在LBPri中,将旋转后相同的模式归为一类,并将最小模式值作为该类模式的旋转不变LBP 值。LBPriu2结合了LBPu2和LBPri的思想,使最终的LBP 模式具有旋转不变性且特征维度大幅降低,其模式种类共P+2 种。LBPri算子、LBPu2中的一致性度量U和LBPriu2算子的数学表达式如下:
图1 原始LBP算子的特征提取流程Fig.1 Feature extraction process of original LBP operator
2 微分通道特征提取
在计算机视觉任务中,相机对焦不准和图像去噪等问题会给图像造成一定的模糊,不利于图像特征的提取。由于微分特征信息可锐化图像,突出灰度的过渡部分,从而增强对图像模糊的鲁棒性,因此,本文利用图像的一阶和二阶微分特征表达局部结构信息。此外,对图像进行归一化预处理,消除全局光照的影响。
2.1 一阶微分特征
一阶微分梯度算子是一种常用的图像锐化算子。因梯度向量的幅值具非线性和各向同性,故梯度幅值具有旋转不变性。梯度幅值的数学表达式为:
其中:I为归一化后图像,gx和gy分别为x和y方向的梯度算子,⊗为卷积符号。
为尽可能多地提取图像轮廓信息,首先,利用不同尺度σi(i=1,2,3)的高斯梯度幅值算子计算梯度幅值特征,记为Mi(i=1,2,3);然后,三值量化不同尺度下的高斯梯度幅值特征Mi得到量化后的特征Mcodei,如式(7)所示,其中为矩阵Mi中所有元素的均值;最后,加权组合量化后特征Mcodei得到图像的一阶微分特征Mcode,如式(8)所示。图2 为三个不同尺度下的高斯梯度幅值算子,图3 为一阶微分特征的详细计算流程。
图2 三个不同尺度下的高斯梯度幅值算子Fig.2 Gaussian gradient amplitude operators at three different scales
图3 一阶微分特征计算流程Fig.3 First-order differential feature calculation process
2.2 二阶微分特征
高斯-拉普拉斯(Laplacian of Gaussian,LoG)作为一种常用的各向同性二阶微分算子,对旋转变化和图像模糊具有鲁棒性;此外,高斯函数可平滑图像,产生振铃现象的可能性小。又因高斯差分(Difference of Gaussian,DoG)算子和LoG算子具有类似的波形,仅幅度略有不同,而DoG算子的计算量明显低于LoG算子,故本文采用各向同性的DoG算子提取图像二阶微分特征。DoG算子图像如图4所示,其数学表达式如式(9)所示:
其中,σ1>σ2。为使LoG 算子和DoG 算子有相同的零交叉,LoG 算子的方差σ和DoG 算子的方差σ1及σ2需满足式(10)。本文中σ1和σ2分别取为1.6和1。
图4 DoG算子图像Fig.4 Images of DoG operator
为提取图像中旋转不变的高阶微分信息,首先,利用各向同性的DoG 算子与原图像卷积,得到DoG 特征,记为D;然后,对DoG 特征进行三值量化,得到二阶微分特征Dcode,其数学表达式如式(11)所示,其中,为矩阵D中所有元素的均值。图5为二阶微分特征计算流程。
图5 二阶微分特征计算流程Fig.5 Second-order differential feature calculation process
2.3 微分通道特征直方图
由式(7)和式(8)可知一阶微分特征Mcode的取值范围为[0,26],由式(11)可知二阶微分特征Dcode的取值范围为[0,2]。为增强一阶微分特征和二阶微分特征间的相关性,本文采用并联的方式计算微分特征直方图Hdiff,即Hdiff=HMcode/HDcode,故微分通道特征直方图维度为27×3=81。
3 小波分解通道特征提取
空间滤波方法仅可提取图像在空间域上的局部纹理结构信息。因小波变换在时域、频域都能很好地表征信号的局部特征,且具有多分辨率分析特点,与人类视觉机理相似,因此,本文从多尺度、多分辨率的角度出发,利用多尺度小波分解获得像素间更深层次的相关性信息、图像的时频信息以及多尺度信息。图像的小波分解及各子带图像标号如图6所示。
图6 三尺度小波分解及各子带图像标号Fig.6 Three-scale wavelet decomposition and image labels of different sub-bands
其中:W为子带图像,m为对应子带图像元素均值,σ为对应子带图像元素标准差。
因小波分解各细节图像的信息量相对较小,同时,为增强细节分量信息之间的相关性,加权组合每个尺度下的3 个量化后细节特征,j={2,3,4},得到不同尺度下的组合细节特征,记为Wdetaili,其数学表达式如式(13)所示;然后,为增强特征的相关性,对每个尺度下的组合细节特征Wdetaili和近似图像特征进行并联直方图计算,每个尺度下特征维度为81 维;最后,为避免特征维数过高,串联各尺度的特征直方图作为最终的小波分解通道特征直方图Hwavelet,当小波分解尺度为N时,小波分解通道特征维度为81N。
为合理确定小波基函数和分解层数,在TC10 纹理库[23]上,比较分析采用不同小波基函数和不同分解层数下时的分类准确率,实验结果如表1所示。
表1 不同小波基函数和分解层数时小波分解通道特征在TC10纹理库上的分类准确率 单位:%Tab.1 Classification accuracy of wavelet decomposition channel features on TC10 texture database with different wavelet basis functions and decomposition levels unit:%
从表1 数据可以明显看出:对于常用的五种小波基函数,当从一尺度分解到三尺度分解,本节的小波分解特征在TC10上的准确率均大幅增加,而四尺度分解时的分类准确率较三尺度分解差异不大;因此,本文中小波分解层数选择为3。此外,考虑到Haar 小波作为最简单的小波基函数,可以大幅降低算子的计算复杂度;因此,本文选择3尺度的Haar小波分解计算小波分解通道特征。三尺度Haar 小波分解通道特征提取的详细计算流程如图7所示。
图7 小波分解特征提取Fig.7 Wavelet decomposition feature extraction
4 鲁棒纹理表达
在微分通道和小波分解通道上的特征维度分别为81 维和243 维,为避免维度过高,串联微分通道和小波分解通道特征直方图构建本文鲁棒纹理特征,即H=Hdiff_Hwavelet,最终特征直方图维度为324 维。在微分特征通道上,通过各向同性的微分算子提取旋转不变的微分特征,并对图像模糊具有一定的鲁棒性;在小波分解通道上,利用小波分解时频特性以及多尺度特性,增强特征判别性,并适当放大高频小波分解系数增强对模糊的鲁棒性。本文算子的总体计算流程如图8所示。
图8 本文算子总体流程Fig.8 Overall flowchart of the proposed operator
5 实验评估
本节在5 个常见数据库(Outex_TC10、Outex_TC11[23]、KTH-TIPS[24]、UMD[25]和UIUC[26])上,验证本文算子特征的判别性、对旋转变化和图像模糊的鲁棒性以及本文算子的计算复杂度。
在特征判别性实验中,在3 个较新且较复杂的纹理库(KTH-TIPS、UMD 和UIUC)上,将本文算子与目前较先进的LBP 变体算子以及计算复杂度较低的神经网络算子比较。为验证本文算子对旋转和图像模糊的鲁棒性,分别在仅具有旋转变化的TC10纹理库和添加了高斯模糊的TC11纹理库上与各实验算子对比。同时,为对比算子的计算复杂度,在TC10纹理库上,将本文算子的特征维度和平均特征提取时间与其他实验算子进行比较。文中所用实验对比算子简单介绍如表2 所示,实验数据库介绍如表3 所示,各数据库中典型图像样本如图9所示。实验中,所有算子均采用支持向量机(Support Vector Machine,SVM)进行分类,实验电脑CPU 为i5-4570,Matlab版本为R2014a。
表2 实验对比算子介绍Tab.2 Description of comparison operators used in experiments
表3 实验纹理库介绍Tab.3 Description of texture databases used in experiments
图9 实验数据库中典型图像样本Fig.9 Typical image samples of the databases used in experiments
5.1 特征判别性分析
为评估本文算子在纹理分类应用上的特征判别性,在KTHTIPS、UMD和UIUC这3个常用纹理库上,将本文算子和目前一些常见的LBP变体算子以及一些计算量相对较小的神经网络算子进行比较。实验纹理库中典型图像样本如图9(c)~(e)所示。各实验算子分类准确率和特征维度如表4所示。
从字面上理解,远与迟相似却又不同,迟是靠气息来调节,远则是凭借意识来实现。气息有一定的节奏,可以把握,而意识却没有节奏,难以把握。我们可以在节奏中领会远,气息就为远所用,达到远之外的境界,由意识来掌握。而随着意识的自由翱翔,气息也相应随之变化,琴意也就随之达到了一种玄妙莫测的境地。时而表现寂静的意境,如同遨游峨眉的雪峰;时而表现流水的消逝,仿佛见到洞庭的烟波。忽快忽慢,具有远的微妙情致。当音乐进入到了远的地步,进入玄妙的境界,不是知音就难以理解,但只有这种音乐才蕴含着无穷无尽的情致。因而,远是“求之弦中如不足,得之弦外则有余也”。
对于LBP变体算子,在UMD纹理库上,虽然基于结合多尺度特征的CINIRD算子取得最高分类准确率,但较本文算子的准确率仅高出0.07个百分点,而特征维度却较本文算子高出了1 876维。在图像尺寸最大的UIUC纹理库上,本文算子的分类准确率在所有LBP变体算子中居于领先地位:准确率较位于第2的SFC算子高0.2个百分点,且特征维度较SFC低1404维;准确率较位于第3的SSLBP算子高2.8个百分点,且特征维度较SSLBP低2 076维。在KTH-TIPS纹理库上,本文算子的分类准确率在所有LBP变体算子中仍处于领先地位:准确率较位于第2的MRELBP算子高出了1.12个百分点,而特征维度约为MRELBP的2/5。此外,在3个纹理库中,仅本文算子的分类准确率均位于98%以上。上述数据表明,在存在复杂变化的图像中,本文算子仍能稳定地以较低的维度提取出图像中具有判别性的特征。
表4 不同纹理库上各算子分类准确率和特征维度比较Tab.4 Classification accuracy and feature dimension comparison of different operators on different texture databases
对于神经网络算子,仅FV-VGG-VD 和FV-VGG-M 算子在图像尺寸较大的UMD 和UIUC 纹理库上取得了较高的分类准确率,在KTH-TIPS 纹理库上的分类准确率急剧下降;而特征维度相对较小的PCANet 和RandNet 在三个纹理库上的分类准确率均未达到理想水平。说明对于训练样本较小的场合,本文算子较实验中的神经网络算子更具优越性。
本文方法中不同通道特征的分类准确率如表5 所示。从实验数据可以看出,除KTH-TIPS 数据库上的结果外,微分通道特征判别略强于小波分解通道特征。而结合两个通道上特征后,参考表4 的实验数据,算子分类准确率均位于领先水平,说明本文中两个通道特征具有互补性。
表5 不同通道上本文方法分类准确率 单位:%Tab.5 Classification accuracy of the proposed method on different channels unit:%
5.2 鲁棒性分析
5.2.1 旋转鲁棒性分析
本节在仅存在旋转变化的Outex_TC10 纹理库上验证本文算子对旋转变化的鲁棒性,Outex_TC10 纹理库上典型图像样本如图9(a)所示,各算子分类准确率如表6所示。
表6 TC10纹理库上各算子分类准确率 单位:%Tab.6 Classification accuracy of different operators on TC10 database unit:%
在仅存在旋转变化的Outex_TC10 纹理库上,本文算子、SFC 算子和MRELBP 算子的分类准确率位于前三,且分类准确率十分接近,分别为99.87%、99.94%和99.85%,说明本文算子对旋转变化具有很好的鲁棒性。对于实验中四个神经网络算子,网络层数较多的FV-VGG 算子的分类准确率仅为72.8%和80%,而另外两个神经网络算子的准确率不足50%,说明对于训练样本不足的场合,神经网络算子并不能很好地提取图像中有代表性的旋转不变信息。
5.2.2 模糊鲁棒性分析
为验证本文算子对图像高斯模糊的鲁棒性,在添加不同标准差(σ)高斯模糊的Outex_TC11 纹理库上,将本文算子的分类准确率与和实验对比算子比较。TC11 纹理库中典型图像样本如图9(b)所示,实验结果如图10所示。
从图10 可以看出,在仅存在高斯模糊的TC11 纹理库上,本文算子较其他实验算子对图像的高斯模糊具有更强的鲁棒性。当标准差σ为0.5时,因TC11纹理库图像变化较小,大多数算子均取得较高的准确率。当高斯PSF 函数标准差从0.5增加到1.25,大多实验算子的准确率分类准确率均急剧下降,如最近提出的MRELBP 算子和AECLBP 算子的准确率下降约20 个百分点,AHP 算子下降约40 个百分点,仅本文算子和SFC算子的准确率下降平缓,且本文算子的降幅最低,降幅仅为6 个百分点。说明本文算子中通过提取模糊鲁棒微分特征和放大高频小波分解系数的方法,有效增强了对图像高斯模糊的鲁棒性。
图10 TC11纹理库上添加不同标准差高斯模糊时各算子分类准确率Fig.10 Classification accuracy of different operators on TC11 texture database with different standard deviation Gaussian blurs
5.3 计算复杂度分析
算子的特征提取时间和特征维度是衡量算子计算复杂度的两个重要指标,TC10纹理库上各算子的特征提取时间和特征维度如表7所示。
表7 TC10纹理库上各算子平均特征提取时间和特征维度比较Tab.7 Comparison of feature extraction time and feature dimension of different operators on TC10 texture database
在所有的LBP变体算子中,在特征提取时间方面,平均特征提取时间最高的为PRICoLBP 算子,其次为MRELBP 算子和SSLBP 算子,其中,相较于PRICoLBP、MRELBP 和SSLBP 算子,本文算子的特征提取时间分别减小了91.88%、84.5%和82.84%;在特征维度方面,本文算子特征维度仅324 维,不足CINIRD 算子的1/6,不足SFC 算子的1/5,约为MRELBP 算子的2/5。对于神经网络算子,四个算子的特征提取时间和特征维度均大幅高于本文算子,相较于两个FV-VGG 算子,本文算子的特征维度减小了99.5%,与特征提取时间相对较小的FV-VGG-M 算子相比,本文算子的特征提取时间减小了91.39%;与PCANet 和RandNet 算子相比,本文算子的特征维度减小了84.18%,特征提取时间分别减小了95.66%和95.74%。因此,本文算子相较于实验对比算子有着更低的计算复杂度,更能满足实时性的要求。
6 结语
为充分提取图像时频信息和像素间深层次的相关性信息,增强算子对模糊和旋转变化的鲁棒性,本文在微分特征和小波分解两个通道上提取鲁棒的图像特征。为增强特征对旋转变化的鲁棒性,本文通过各向同性的一阶和二阶微分算子提取图像微分特征;为增强特征对模糊的鲁棒性,除采用多阶微分特征外,通过适当放大高频小波分解系数,提取图像细节信息。实验表明,本文算子可用较低维度的特征向量表达图像中有判别性的信息,且对图像旋转和图像模糊具有较强的鲁棒性。在未来的工作中,计划将本文算子扩展到包含其他种类模糊的应用场合,进一步扩大算子的使用范围。