基于奇异值分解的木材细胞切片识别算法*
孙永科1,曹涌1,熊飞1,邱坚2
(1.西南林业大学 计算机与信息学院,云南昆明650224;2.西南林业大学 材料工程学院,云南昆明650224)
摘要:木材细胞切片识别需要对图片进行降维处理,提取最大特征数据来进行识别。相似度高的切片由于它们的最大特征的范数相近,所以很难区分。针对这种情况,提出了一种基于RealAdaBoost+SVD-n的细胞切片识别算法,该算法首先计算切片图像的奇异值,将奇异值按从大到小的顺序排列,然后去掉前n项较大的值,使用剩余项作为图片特征,利用RealAdaBoost分类器进行训练和测试。实验结果表明,该方法不仅能够识别差异较大的木材切片,而且还能够很好地区分较为相似的细胞切片,该识别算法具有很好的鲁棒性。
关键词:木材识别;奇异值;细胞切片;AdaBoost
木材的识别技术在生产生活中经常使用且具有重要的意义。首先,木材材种的快速有效鉴别方法可以帮助有关部门及时查处非法交易的珍贵木材资源,有保护资源的作用。其次,还可以对从国外进口的各种物品的木质包装进行检测,防止非法木质材料以及木材上带有的有害物种进入中国。最后也可以用在木质家具市场中,用来鉴别家具的真实材料。
传统的木材识别技术需要较长的鉴别时间,而木材的快速识别技术,目前的研究成果主要有3种:第一种是基于宏观的木纹识别,第二种是基于DNA技术的木材识别,第三种是基于微观的细胞切片木材识别。基于宏观的木纹识别技术主要依靠个人的经验,准确率不高;基于DNA的木材识别技术虽然准确率很高,但是成本高,周期长;基于微观的细胞切片的木材识别技术,识别的速度快,费用低,适合目前的需求。如果将第三种木材识别技术和计算机相结合,将大大提高识别效率,降低费用。
谢沛宏等通过分析木材切片的管孔特征来识别木材[1],方益明等采用基于傅里叶变换和独立成分分析技术对木材进行识别[2],刘子豪等采用KPCA+gentleAdaBoost的方法对木材细胞切片进行识别[3~4],这些方法都取得了较好的效果。
近些年来由于人脸识别技术的不断提高,奇异值分解越来越广泛地应用到人脸的识别系统中,并且取得了非常好的效果[5],结合特征值降维方法[6],可以有效地提高计算的速度。将这些算法应用在材种切片细胞图片的识别中,也取得较好的识别效果。通过实验发现,使用SVD+AdaBoost的识别效果优于使用PCA/KPCA+AdaBoost的识别效果,在材种图片比较相似的时候,SVD、PCA、KPCA提取的主要特征值都有很大的相似性,区分度不高。本研究提出了一种基于奇异值分解的木材切片识别算法,该算法去掉了相似度最为接近的几个主要特征值,在剩余的次要特征值中重新选择若干主要特征进行识别,算法能够对图片进行降维处理而且具有很好的鲁棒性。通过使用不同的分类器和特征值进行对比实验,结果表明,本研究提出的方法识别率较高,可以对木材切片进行较为准确的分类。
1特征值识别算法比较和分析
实验使用的数据来自中国国家林业科学数据网站,该网站共有178个材种标本的横截面细胞切片,图片共计826张。实验选取数据库中具有代表性的10个材种作为实验样本,样本的材种名称(编号)为,枫香树(1)、枫杨(2)、核桃(3)、红桦(4)、黄桤(5)、苦梓含笑(6)、榕树(7)、三秋悬铃木(8)、榆树(9)、云南黄杞(10)。为了和文献[3]中的方法进行对比,特征值算法选取奇异值PCA和KPCA,分类器选取SVM和AdaBoost,在matlab中,使用不同的组合进行训练和测试。
1.1SVM+SVD/PCA/KPCA
使用SVM分类器对SVD、PCA和KPCA进行分类。SVM分类器使用C-SVC多分类参数,核函数使用polynomial,其表达式为(gamma*u′*v+coef0)^degree,degree=3。实验图片取2/3作为训练数据,1/3用来进行测试。实验选取特征值的前n项作为训练和和测试的数据。当n取不同的值时系统的平均识别率见图1。
a1b1c1a2b2c2
图1SVM算法中前n项特征识别率
Fig.1Firstnrecognition rate of SVM
在图1中横坐标表示n的取值,纵坐标表示识别的正确率。从图1中可以看出,随着n取值的增大,识别的正确率慢慢收敛于某一个定值。 SVM+PCA的识别率最稳定,SVM+KPCA的识别率为零,SVM+SVD的识别率在n取值较小的情况下最高。
根据图1中SVD的正确率分布,挑选前25项最大值,对图像进行反向还原,其效果见图2。
a1b1c1a2b2c2
图2SVD最大特征值还原效果
Fig.2Image reconstruct with max number of SVD
从还原的结果可以明显看出,前25项最大特征值已经包含了原图的主要特征,因此实验选择特征值的前25项进行训练和测试,分别以每一类材种作为测试样本,其他作为训练数据,经过10次实验,测试的结果如图3所示。图3(a)中的横坐标代表10个不同的材种,纵坐标表示材种的最大识别率,图3(b)中的横坐标代表10个不同的材种,纵坐标表示识别率的方差。
从图3中发现,使用SVM分类器时,系统的识别正确率非常不稳定,同一材种因标本不同其识别率存在较大的差异,这意味着模型对没有参与训练的图片很难正确识别。
(a)最大识别率(b)识别率方差
图3SVM实验结果
Fig.3Experiment result of SVM
1.2AdaBoost+SVD/PCA/KPCA
AdaBoost算法使用sprtools工具箱中的RealAdaBoost进行训练,参数weak_linear参数设置为3。使用classify函数进行分类测试。实验取1/2作为训练正样本,其他材种的图片作为负样本,经过多次试验后,统计数据结果见图4。
在图4中,横坐标都代表测试的材种,图4(a)中的纵坐标表示材种的平均识别正确率,图4(b)中的纵坐标表示识别率的方差。实验结果表明,在RealAdaBoost分类器中使用PCA作为特征值与使用KPCA作为特征值的分类效果一样,使用SVD作为特征值的分类效果较差。采用SVD特征值的识别时,个别材种很难被正确识别,但是采用SVD特征值时的总体效果优于其他方案。
(a)平均识别率(b)识别率方差
图4RealAdaBoost训练结果
Fig.4Training result of RealAdaBoost
在选择分类器时,使用RealAdaBoost分类器的整体识别效果优于使用SVM分类器。对于较为相似的图像,两者的识别率都较低。
1.3RealAdaBoost+SVD-n
通过对个别识别率较低的材种进行观察发现,导致识别率低的主要原因是由于材种的细胞横切面图片比较相似,由此产生的特征值比较相近,因此导致识别错误。
通过观察特征值的分布规律,发现特征的最大项主要集中在前2项,在相似的图片中2项的值极为相似,而且占的比重较大。后面的n项数据虽然很小,但是差异较大。因此,第三个实验方案选择使用Adaboost分类器和去掉前n项的特征值作为训练数据。为了提高系统的稳定性,本实验使用多次实验的最小识别率作为衡量标准。由于当n>3时,系统的迭代次数过多,所以此处只讨论n=1,2,3的情况。
(a)SVD-n(b)PCA-n(c)KPCA-n
图5去掉前n项的最小识别率
Fig.5Minimum recognition rate without first n
图5中的横坐标代表10种不同的木材,纵坐标表示识别的最小正确率,三条线分别表示当n=1,2,3时的识别效果。图5(a)表示使用去掉前n项SVD最大值的识别率分布,可以看出随着n的增大,个别材种的识别准确率在不断提高,图5(b)中个别材种的识别率随着n的增加也在不断提高,图5(c)中去掉前2项和去掉前3项的识别率是一样的。由此可见在n=2时,这些材种的识别率最好。
2实验结果
实验1.1的结果表明该方法因材种的不同其识别的准确率和稳定性存在较大的差异。图6(a)是不同材种在多次实验时的最低识别率统计,图6(b)是最大识别率统计图,表1是实验结果的具体数据,表格中的第一列表示特征值的种类,第二列n表示特征值去掉前n项。实验数据表明所有的实验对象几乎都存在无法识别的情况。
(a)最小识别率(b)最大识别率
图6 SVM+SVD实验结果
注:“-”表示值为0。
表2是最小识别率的统计。表2数据表明大部分的测试样本都能被完全识别,在使用SVD作为特征值的情况下,当n=0时,2号样本无法被识别,其他样本都可以被准确识别和区分,当n增大时,2号样本的识别率提高到100 %,但是10号样本的识别率有所降低。实验数据表明,随着n的变化个别材种的识别率会发生变化,但总体识别率随着n的增加而提高;使用PCA作为特征值时,识别率与n之间的关系不明显并且平均识别率低于使用SVD的识别方法;使用KPCA作为特征值的识别方法,识别率虽然随着n的增加也呈上升趋势,但是识别效果不如使用SVD时明显。
结合表1和表2可知,当n=3时,系统的总体识别效果最好,说明在这几组实验中RealAdaBoost + SVD-3的实验方案识别效果最好。
表2 RealAdaBoost最小识别率统计
注:“+”表示值为1。
3结论
木材识别计算机化不仅可以提高识别效率,而且能够降低识别成本。木材细胞切片识别是木材识别领域的研究热点,研究木材图像的计算机识别方法具有重要意义。本研究提出了一种基于RealAdaBoost+SVD-n的木材识别算法,该算法的识别率较高,稳定性好。通过实验对比分析,可以得到以下结论:
(1)木材细胞图片的奇异值最大的一些值代表图像的主要特征,细胞切片越相似,主要特征值越接近。
(2)奇异值中次要特征值中最大的一些值能够体现细节信息,可以用来区分较为相似的图片。
(3)RealAdaBoost分类器的分类效果优于SVM分类器。
该算法在《海门口遗址木质文物保护关键技术研究与应用》项目中已经应用,并取得了较好的效果。
参考文献:
[1]谢沛宏,陈华,徐峰,等.基于管孔特征的木材树种图像识别[J].广西科学院学报,2011,27(4):323-325.
[2]方益明,郑红平,冯海林.基于傅里叶变换和独立成分分析的木材显微图像特征提取与识别[J].浙江林学院学报,2010,27(6):826-830.
[3]刘子豪,祁亨年,张广群,等.基于横切面微观构造图像的木材识别方法[J].林业科学,2013,49(11):116-121.
[4]徐剑,张洪伟.Adaboost算法分类器的设计与应用[J].四川理工学院学报(自然科学版),2014,21(27):28-31.
[5]李晓东,基于子空间和流行学习的人脸识别算法研究[M].济南:山东人民出版社,2013.
[6]Klema V C.The singular value deeomposition:Its computation and some application[J].IEEE Transactions on Automatic Control,1980,25:164-176.
The Recognize Algorithm of Wood Cell Section Based on
Singular Value Decomposition
Sun Yong-ke1,Cao Yong1,Xiong Fei1,Qiu Jian2
(1.School of Computer and Information Science, Southwest Forestry University, Kunming Yunnan 650224,P.R.China;
2.School of materials engineering, Southwest Forestry University, Kunming Yunnan 650224,P.R.China)
Abstract:For recognizing wood cell section images, dimension reduction should be made to extract the major characteristic data.Since the similar the cell images the closer eigen values of the norms, small images could hardly be identified.For this reason, an improved cell section identification method based on RealAdaBoost + SVD-n was suggested.Firstly, singular values of cell section image was calculated and it was arranged from big to small.Then the top n singular values was removed, and the remains was used as image characteristics for testing by RealAdaBoost.The results showed that this method could not only recognize the wood cell section images with great differences but also could well distinguish similar cell section images.This recognize algorithm showed good robustness.
Key words:wood recognition;singular value decomposition; cell section;AdaBoost
中图分类号:TP 391.41
文献标识码:A
文章编号:1672-8246(2015)06-0077-05
通讯作者简介:邱坚(1965-),男,教授,博士,主要从事木材科学研究。E-mail:13759512363@qq.com
作者简介:第一孙永科(1980-),男,讲师,硕士,主要从事计算机图形图像研究。E-mail:Sunyongke@swfu.edu.cn
基金项目:云南省社会发展科技计划(2011CA020),云南省教育厅科学研究基金项目(2014Y323)。
收稿日期:*2015-05-17
doi10.16473/j.cnki.xblykx1972.2015.06.016