刘豪,杨永全,郭仙草,宋志浩
西安工程大学计算机科学学院,西安 710048
用于纹理特征提取的改进的LBP算法
刘豪,杨永全,郭仙草,宋志浩
西安工程大学计算机科学学院,西安 710048
针对现有的纹理特征提取方法计算复杂度高的问题,利用局部二值模式(LBP)算法思想简单、计算复杂度小的优势,在已有的完整LBP(CLBP)算法基础上,提出了一种改进的CLBP算法(ICLBP)。ICLBP算法保留了CLBP算法中CLBP_S,而对CLBP_M算子、CLBP_C算子进行了改进,提出一个新的纹理描述算子ICLBP_T。ICLBP算法更全面地描述了局部窗口的纹理特征,同时有效解决了CLBP算法中CLBP_M算子对灰度分布不均敏感的问题。通过对Outex、CURet数据库的数据分类实验,结果表明,相比于已有的LBP算法,ICLBP算法的分类精度有了明显的改进,同时ICLBP算法中ICLBP_SCT特征具有较低的特征维数,具有较好的实用价值。
纹理特征提取;局部二值模式;完整局部二值模式算法(CLBP);改进的完整局部二值模式算法(ICLBP)
纹理特征是一种不依赖于颜色或亮度而反映图像中同质现象的视觉特征,它是物体表面共有的内在特性[1]。纹理特征提取方法一直是模式识别研究和关注的焦点。在近50多年的研究中,许多研究者提出了各种纹理特征提取方法,诸如灰度共生矩阵[2]、小波理论[3]、分形理论[4]、马尔可夫随机场[5]等,这些方法在图像分类和模式识别应用领域内取得了较好的效果。灰度共生矩阵是建立在估计图像的二阶组合条件概率密度基础上提取的纹理特征,反映了图像关于灰度方向、相邻间隔、变化幅度的综合信息,具有较好的鉴别能力;小波理论通过纹理的多分辨表示,能在精细的尺度上分析纹理,更符合人类视觉特征;分形理论把图像的空间信息和灰度信息有机地结合起来,提供了一种基于参数化的纹理特性描述方法,它能够更准确地表达纹理的特征;马尔可夫随机场是用先验概率和条件概率的分布函数来刻画图像的纹理特征,可以对低频纹理图像很好地建模[6]。但是,上述这些方法的突出问题是计算复杂度偏大,对于存在背景干扰或光照不均的纹理图像,这些方法处理的效果往往不佳。
T.Ojala等人于1996年提出了局部二值模式算法(Local Binary Patterns,LBP)[7],用于纹理特征的描述。LBP算法思想简单容易理解、计算复杂度小、对不同光照强度不敏感并且能够很好地描述图像的局部纹理特征,因而引起各国研究学者的关注。在过去的十几年中各国研究学者对LBP算法进行了深入的研究,同时提出了多种LBP改进算法,诸如:FLBP[8]、LTP[9]、CBP[10]、LBPV[11]、TPLBP[12]、FPLBP[12]、MS-LBP[13]、CLBP[14]等,并将其广泛应用于图像分割、人脸识别、图像检索等领域[15-18]。其中,相对于其他改进的LBP算法,CLBP算法在局部纹理描述和纹理特征提取上更全面、精细,并取得了较好的效果。但是CLBP算法对光照不均敏感,为此,本文提出了一种CLBP的改进算法ICLBP方法。
2.1 传统局部二值模式及变种
局部二值模式(Local Binary Patterns,LBP)最初由T.Ojala等人提出[7]。LBP算法通过对比像素点与其领域像素点的灰度值的差异性来计算LBP算子:
式(1)中,gp为邻域像素点的灰度值,gc为中心像素点的灰度值,P为邻域中像素点的个数,R为邻域半径。为了解决角度旋转问题,T.Ojala等人在原LBP算法的基础上提出了旋转不变局部二值模式(Rotation Invariant Local Binary Patterns,RILBP)[7]。RILBP的计算方式如下:
其中min{x}表示求x的最小值。ROR(x)表示将P位的二进制数x按位向左平移,最高位移动到最低位。RILBP在解决角度旋转问题的同时降低了RILBP模式集的维数,但随着P的增大,RILBP模式集维数仍会急剧增长,这显然不利于图像中LBP模式集的快速提取以及后续数据的处理。为此,T.Ojala等人在RILBP的基础上又提出均匀局部二值模式(Uniform Local Binary Patterns,ULBP)[7],其计算方式如下:
可以看出当R=1,P=8时,其LBP模式集的维度只有10。这样不仅大大降低了LBP模式集的维数,也方便了后续的数据分析。
2.2 完整的局部二值模式
完整的局部二值模式(Complete Local Binary Patterns,CLBP)[14]提出了三种局部纹理描述算子表达纹理:窗口灰度差异描述算子(CLBP-Sign,CLBP_S)、窗口梯度差异描述算子(CLBP-Magnitude,CLBP_M)以及中心像素点描述算子(CLBP-Center,CLBP_C)。其计算方式如下:
对CLBP算法分析可知,当因光照不均导致图像灰度梯度分布不均匀时,即相比于图像的大部分区域,小部分区域变化幅度剧烈或变化幅度平缓时,CLBP_MP,R就显现出了它的局限性。为此,本文在CLBP算法的基础上,对CLBP算法作了进一步改进,同时提出了一种灰度梯度差异特征描述算子ICLBP_TP,R,即采用两像素点的灰度差异幅值与窗口灰度差异幅值的均值比较,其计算方式如下:
CLBP算法中CLBP_MP,R仅考虑了局部窗口的灰度值差异特征,这就使得当由于光照不均或拍摄角度变化等原因得到的图像灰度强度分布不均匀时,CLBP_MP,R会遗漏掉图像光滑部分的纹理信息。图1是Lena原图及用改进的LBP提取的Lena特征图。从图1中可以看出,相比于CLBP_MP,R特征图,ICLBP_MP,R的特征图像描述的纹理不仅清晰,也更加精细。同时可以看出,基于ICLBP_T的纹理特征图和基于CLBP_MP,R的纹理特征图像十分相似,但前者的边缘更加清晰,其计算复杂度远小于CLBP_MP,R算子。因此,相比于原CLBP算法,改进后的ICLBP算法对图像纹理的描述具有更好的精细性和鲁棒性。
图1 Lena原图及用改进的LBP提取的Lena特征图
为了验证本文所提出ICLBP算法的可行性和有效性,将ICLBP算法中的各纹理描述子进行不同的组合得到ICLBP_ST、ICLBP_SCT、ICLBP_SMCT特征,组合方式以ICLBP_SMCT为例:对每一个像素点分别计算四个算子,此四个算子构成的四维纹理描述特征即为该像素点的ICLBP_SMCT特征。实验中分别对Outex、CURet数据库提供的纹理图像提取ICLBP特征进行纹理分类实验,同时使用LBP[7]、LTP[9]、LBP/V[7]以及CLBP[14]算法中的CLBP_SC、CLBP_SMC特征进行对比验证。其中,所有算子都采用旋转不变的均匀的LBP模式(riu2);相似性测度通过卡方统计的方式计算它们的特征直方图的差异度,差异度越小表示它们越相似,最后根据最近邻原则将测试图像归为差异度最小的那一类。
Outex数据库中包含16个图像集,每个图像集由24类不同纹理图像组成,分别采用3种不同光照、9个不同的旋转角度拍摄得到。由于篇幅限制,本文只是列举了其中的Outex_TC_00010(TC10)和Outex_TC_00012(TC12)图像集的分类实验,其结果数据见表1,其中,TC12之下的“t”和“h”分别代表光照条件为“t184”和“horizon”测试样本。CURet数据库中包含61个自然纹理图像集,每个图像集对应一个纹理类,每个纹理类中有205幅图像,分别采用不同光照角度、不同拍摄角度拍摄得到。对于每个纹理类,选择其中92幅拍摄角度小于60°图像转换为灰度图像作为实验样本,随机选取N幅图像作为训练样本,剩余图像作为测试样本进行分类实验,实验重复100次后求取均值,分类结果见表2。
表1 不同LBP算法对Outex数据库的分类准确率(%)
表2 不同LBP算法对CURet数据库的分类准确率(%)
由表1和表2中实验数据结果表明:
(1)当P=8、R=1时,本文提出ICLBP算法中的ICLBP_SMCT对Outex和CURet数据库的分类准确率明显高于其他改进算法。从文献[14]中,知道CLBP算法既考虑了局部窗口内的灰度差异性以及对应幅值的差异作为图像局部纹理的两个互补信息,两者相互结合能大幅度提高图像的分类准确度,图像的局部特征与全局特征相结合同样可以提高图像的分类准确度。实验中LTP、LBP、LBP/V算法显然没有考虑到图像的全局特征,而ICLBP算法中,ICLBP_SP,R与ICLBP_MP,R从局部角度细致地描述了图像局部窗口灰度值的差异性,同时,ICLBP_CP,R与ICLBP_TP,R从全局角度粗略地描述了局部窗口灰度值的差异性,相比较于CLBP算法中的CLBP_SMC,ICLBP算法中四个算子相结合而形成的ICLBP_SMCT更全面地描述了窗口的梯度差异特征,所以对图像局部纹理的描述更加精细,对纹理的分类具有更高的准确率和较好的鲁棒性。
(2)从表1对Outex数据库的分类结果可以看出,当P=8、R=1时,ICLBP_SCT分类准确率明显高于CLBP_ SMC,甚至和ICLBP_SMCT持平。ICLBP_SCT在保持高分类准确率的同时,ICLBP_SCT的算法时间复杂度以及空间复杂度都要小于CLBP_SMC、ICLBP_SMCT。比如,对TC10计算,CLBP_SMC所需时间为138.7 s,ICLBP_SMCT需要177.1 s,ICLBP_SCT则只需要94.7 s。根据公式(5)可以推导出ICLBP_SP,R、ICLBP_MP,R、ICLBP_CP,R以及ICLBP_TP,R的特征维数分别为10、10、2和2,因此CLBP_SMC的特征维数为10×10×2=200维,ICLBP_SMC的特征维数为10×10×2×2=400维,而ICLBP_SCT则只有10×2×2=40维。可以看出ICLBP_ SCT更适用于快速、实时、高准确率的图像纹理特征提取。
(3)从表2对CURet数据库的分类结果可以看出,随着训练样本N的增大,ICLBP算法的分类准确度不断提高,但是当P=8、R=1时,ICLBP_SCT分类准确率略低于CLBP_SMC。分析原因可知,CURet数据库中绝大多数图像类是水泥、砂石等材料表面,这种图像局部粗糙不规则,图像整体反而较为均匀,这就使得对同一幅图像而言,ICLBP_SCT的算法中采用局部窗口灰度/灰度梯度均值与图像全局灰度/灰度梯度均值对比而得到的ICLBP_CP,R/ICLBP_TP,R没有很好的可区分性,从而导致ICLBP_SCT分类准确率略低于CLBP_SMC。
(4)从图2 ICLBP-SMCT对两大数据库的分类准确度曲线可以看出,当P的取值增大时,ICLBP_SMCT的分类准确率会有所下降。原因有两个:由于ICLBP_MP,R是通过两像素点的灰度差异幅值与局部窗口灰度差异幅值的均值比较而产生的,并且采用旋转不变的均匀模式,当P值增大时,ICLBP_MP,R很容易产生不均匀模式从而降低了ICLBP_MP,R的可区分性,对Lena图像计算的结果可以看到,当P=8、16、24时,CLBP_M中旋转不变的不均匀模式所占的比例分别为19.7%、30.0%、34.7%,而ICLBP所占比例则是59.4%、67.3%、70.4%;另外,采用均值的比较,ICLBP_CP,R和ICLBP_TP,R会对局部窗口灰度/灰度梯度的描述有一定的模糊作用,随着P值的增大,这种模糊作用会越来越大,ICLBP_CP,R和ICLBP_TP,R的可区分性也随之降低。
图2 不同尺度的ICLBP_SMCT对两大数据库的分类准确度
本文在CLBP算法的基础上,提出了一种改进的CLBP算法(ICLBP)。ICLBP算法更全面地描述了局部窗口的纹理特征,同时有效解决了CLBP算法对灰度分布不均敏感的问题。在对Outex和CURet数据库的分类结果中可以看出,相比于CLBP_SMC,ICLBP算法中ICLBP_SMCT具有更高的分类准确率,同时,ICLBP_SCT的时间复杂度以及空间复杂度远小于CLBP_SMC,并保持了较高的分类准确率,因此ICLBP_SCT更适用于快速、实时、高效的图像纹理特征的提取。ICLBP算法也存在其约束条件及不足之处:ICLBP_SCT对于自然纹理的图像特征提取效果不如CLBP_SMC;ICLBP_SMCT的分类准确率随着P值的增加会有所下降。本文认为LBP算法仍有可以改进的地方,进一步缩减特征维数、提高LBP算法抗噪声能力将是下一步研究内容。致谢本论文在指导老师石美红教授的指导下完成,写作期间石美红教授给予了诸多宝贵的建议,在此对石美红教授表示诚挚的谢意。
[1]Smith J R,Chang Shih-Fu.Automated binary texture feature sets for image retrieval[C]//IEEE International Conference on Acoustics,Speech,and Signal Processing,Atlanta,GA,USA,1996:2239-2242.
[2]Haralick R M,Shanmugam K,Dinstein I.Textural features for image classification[J].IEEE Transactions on Systems,Man,and Cybernetics,1973,3(6):610-621.
[3]Mallat S G.A theory for multi-resolution signal decomposition:the wavelet representation[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,1989,11(7):674-693.
[4]Galloway M.Texture analysis using gray level run lengths[J]. Computer Graphics Image Processing,1975,4:172-199.
[5]Hassner M,Sklansky J.The use of markov random fields as models of texture[J].Computer Graphics and Image Processing,1980,12(3):357-370.
[6]刘丽,匡纲要.图像纹理特征提取方法综述[J].中国图象图形学报,2009(4):622-635.
[7]Oja1a T,Pietikainen M,Harwood D.A comparative study of texture measures with classification based on feature distributions[J].Pattern Recognition,1996,29:51-59.
[8]Iakovidis D K,Keramidas E,Maroulis D.Fuzzy local binary patterns for ultrasound texture characterization[C]// Lecture Notes in Computer Science:Image Analysis and Recognition,2008,5112:750-759.
[9]Nanni L,Brahnam S,Lumini A.A study for selecting the best performing rotation invariant patterns in local binary/ ternary patterns[C]//Image Processing,Computer Vision& Pattern Recognition,2010:12-15.
[10]Fu X,Wei W.Centralized binary patterns embedded with image euclidean distance for facial expression recognition[C]//The Fourth International Conference on Natural Computation,2008,10(4):115-119.
[11]Guo Z H,Zhang L,Zhang D.Rotation invariant texture classification using LBP Variance(LBPV)with global matching[J].Pattern Recognition,2010,43(3):706-719.
[12]Wolf L,Hassner T,Taigman Y.Descriptor based methods in the wild[C]//Faces in Real Life Images Workshop in ECCV,2008.
[13]Xu Jingsong,Wu Qiang.Fast and accurate human detection using a cascade of boosted MS-LBP features[J]. IEEE Signal Processing Letters,2012,10:676-679.
[14]Guo Z,Zhang L,Zhang D.A completed modeling of local binary pattern operator for texture classification[J]. IEEE Transactions on Image Processing,2010,19(6):1657-1663.
[15]付蓉,石美红,陈惠娟.自适应局部二值模式算法及其在织物疵点检测中的应用[J].纺织高校基础科学学报,2010,23(1):99-104.
[16]练秋生,刘春亮.基于Gabor滤波器和LBP的分级掌纹识别[J].计算机工程与应用,2007,43(6):212-215.
[17]王玮,黄非非,李见为.使用多尺度LBP特征描述与识别人脸[J].光学精密工程,2008,16(4):696-705.
[18]梁鹏,何俊诗,黎绍发,等.基于多尺度LBP金字塔特征的分类算法[J].计算机工程,2011,37(8):166-168.
LIU Hao,YANG Yongquan,GUO Xiancao,SONG Zhihao
School of Computer Science,Xi’an Polytechnic University,Xi’an 710048,China
For most texture feature extraction method,the problem of high computational complexity always exists.An Improved Complete Local Binary Pattern algorithm(ICLBP)is proposed based on Complete LBP(CLBP).ICLBP preserves the CLBP_S in CLBP,while makes an improvement on CLBP_M and CLBP_C,and proposes a new texture description operator ICLBP_T.ICLBP can describe the local texture feature in a comprehensive way,and the problem that CLBP_M operator in CLBP is sensitive to uneven distribution of gray,is well solved in ICLBP.The classification results on Outex and CURet image databases suggest that,compared to the existing LBP algorithm,ICLBP has obtained a higher classification accuracy,meanwhile,the ICLBP_SCT feature in ICLBP has a lower feature dimension and better practical value.
texture feature extraction;local binary patterns;Complete Local Binary Pattern algorithm(CLBP);Improved Complete Local Binary Pattern algorithm(ICLBP)
A
TP391
10.3778/j.issn.1002-8331.1311-0040
LIU Hao,YANG Yongquan,GUO Xiancao,et al.Improved LBP used for texture feature extraction.Computer Engineering and Applications,2014,50(6):182-185.
国家级创新创业项目(No.201210709052);陕西省科技厅创新工程重大科技专项项目(No.2008ZDKG-36)。
刘豪(1989—),男,硕士,研究领域为智能信息处理,图像图形处理;杨永全(1986—),男,研究领域为图像图形处理与模式识别;郭仙草(1990—),女,硕士,研究领域为图像图形处理与模式识别;宋志浩(1991—),男,研究领域为图像图形处理与模式识别。
2013-11-05
2014-01-13
1002-8331(2014)06-0182-04