王 濤,楊霄霞,高宜生,葛浙東,劉曉平,周玉成
(1.山東建筑大學信息與電氣工程學院,山東 濟南 250101;2.山東建筑大學建筑城規學院)
木材辨識技術廣泛應用于材種鑒定、木質家具檢驗、木結構古建筑保護領域[1]。傳統的木材辨識方法主要基于木材微觀結構特征(顯微結構參數)和宏觀結構特征(顏色、氣味、紋理等)確定木材所屬科、屬、種。宏觀特征識別木材容易取樣和觀察,但準確率較低[2];微觀解剖特征辨識木材準確性較高,但制作木材切片的周期較長,對檢測人員的專業水平要求較高。
圖像分割技術或傳統的機器學習對木材特征提取困難且復雜耗時,深度學習能自主學習木材特征,更準確、高效地實現木材檢測[3-4]。近年來,計算機視覺技術應用到木材辨識中,如木材檢測,效率高且成本低[5-6]。劉英等[7]將卷積神經網絡應用于木材缺陷檢測中,采用非下采樣剪切波變換預處理和線性迭代聚類方法對木材缺陷進行分類,辨識準確率為98.6%。劉嘉政[8]等提出的13 層樹種圖像識別模型,對訓練集和測試集的識別正確率分別為96.78%、91.89%,在未參與訓練的驗證集上取得了96%的平均準確率。KURDTHONGMEE[9]采用SSD MobileNet網絡自動檢測橡膠樹木材橫斷面圖像中的木材髓心,正確率為87.7%,性能優于YOLOv3 目標檢測網絡。HE 等[10]使用激光掃描儀從600 塊紅松和樟木中收集木材的節子、裂紋和霉斑缺陷圖像數據集,訓練并驗證改進的DCNN 模型識別木材缺陷準確率為99.13%,檢測用時1.12s。HU 等[11]用已標記的木材缺陷、木材紋理和木材類別的四個木材圖像數據集訓練ResNet18 深度學習網絡模型,實現木材缺陷識別與木材分級,準確率最高達到99.5%。本文采用CT 技術采集多張闊葉材微觀圖像,基于YOLOv3 和SSD 對四種闊葉材導管圖像進行分類識別,旨為闊葉材的材種辨識提供一種新的方法和依據。
本文闊葉材樣本分別為大果紫檀(Pterocarpusmacrocarpus)、刺猬紫檀(Pterocarpus erinaceus)、闊葉黃檀(Dalbergia latifolia)和絨毛黃檀(Dalbergia frutescens var.tomentosa),四種闊葉材分別取自緬甸、非洲、印尼、巴西。樣本規格為3mm×3mm×25mm,闊葉材CT 微觀圖像尺寸為512px×512px,CT 圖像的分辨率為2μm,每種闊葉材1000 張微觀圖像,其中800 張圖像作為訓練集,200張圖像作為測試集。
選擇闊葉材微觀圖像有效區域,根據每個材種管孔的分布和排列特點,進一步選擇闊葉材微觀特征,如表1 中紅、綠色矩形框所示。用LabelImg 軟件標記特征后,根據類別賦予拉丁文名標簽,生成的xml文件記錄微觀圖像長、寬、高等信息,再將合并的四種闊葉材訓練集xml 文件轉換成VOC 數據集,用于YOLOv3和SSD訓練網絡。

表1 四種闊葉材橫切面微觀結構
本文使用德國布魯克公司生產的SkyScan1272 型顯微CT采集闊葉材微觀圖像,服務器安裝Windows10操作系統,使用NVIDIA Quadro RTX 8000顯卡,顯存48GB,基于Anaconda 開發環境建立TensorFlow 深度學習框架,并采用Python 開發語言編程,PyCharm編譯器調試。
YOLOv3可分為主干特征提取網絡和預卷積運算兩部分。YOLOv3同時具備高檢測速率和高檢測精度的優點,通過兩次上采樣完成多尺度檢測,降低顆粒度,改善檢測器對于小物體的檢測效果[12]。
YOLOv3 選擇Darknet53 作為主干特征提取網絡[13],具體如圖1 所示。主干特征提取網絡的主要功能是提取目標物體的特征,其實也就是不斷卷積的過程。然后對輸入的圖片不斷進行下采樣的操作,將輸入圖片的高和寬不斷壓縮,將通道數不斷擴張,從而獲得一堆特征層(可表示輸入進來的圖片的特征)。并且使用殘差網絡,殘差網絡容易優化,能夠采用增加深度的方法提高準確率。本文內部的殘差塊使用了跳躍連接,緩解深度神經網絡中由深度增加導致的梯度消失問題。

圖1 YOLOv3網絡結構
然后,選取最后三個特征層,輸入到第二部分的預測卷操作,三個特征層的尺寸分別為(52,52,256)、(26,26,512)、(13,13,1024)。本文利用上述三個特征層構建FPN 層,具體方式為將13×13×1024的特征層進行五次卷積運算,將得到的結果分別進行兩種處理,一種是在二次卷積后進行分類預測和回歸預測,另一種是在進行上采樣后將特征層轉換為26×26×256,然后與26×26×512 的特征層堆疊對比,其過程與13×13×1024 特征層的卷積運算方法相同。網絡結構簡單,YOLO網絡的識別速度快,又因為檢測是以整個圖像作為輸入,內部數據的聯系相對緊密,這樣就可以降低對背景的錯誤識別概率,同時網絡的適應性較好,在測試集與訓練集內的數據不完全相同時依然有較好的識別效果。
SSD[14]是一種One-stage目標檢測算法,利用CNN提取特征后,采用不同尺度和長寬比的函數,對圖像不同位置進行均勻密集抽樣,同時完成目標檢測和分類。
本文將VGG16的FC6和FC7層轉化為卷積層,去掉所有的Dropout 層和FC8 層,增加Conv6、Conv7、Conv8 和Conv9,構建的SSD框架是對VGG 網絡的修改,如圖2所示。

圖2 改進的VGG網絡
四種闊葉材圖像的辨識正確率指標分別為精確度(Precision)、召回率(Recall)、平均精度(Average Precision,AP)和 平均精度均值(mean Average Precision,mAP)。

TP(True Positive)——正類判定為正類的數量;
FP(False Positive)——負類判定為正類的數量;
FN(False Negative)——正類判定為負類的數量;
Precision——樣本中被正確判定為正例占預測為正例的比例;
Recall——樣本中被正確判定為正例占實際為正例的比例。
深度學習網絡框架,通常采用mAP作為精度檢測的指標,即先計算每一種闊葉材的平均精度,然后再計算四種闊葉材平均精度的均值。
YOLOv3 框架和SSD 框架均訓練50 次,學習率設為0.0001,其中前者檢測用時為1.185s,后者檢測用時為0.608s。YOLOv3 和SSD 框架訓練的損失曲線如圖3 所示,YOLOv3 框架的Loss 值在1.60 附近收斂,SSD框架的Loss 值在0.48 附近收斂,經過25 次迭代后,YOLOv3、SSD 的損失函數曲線都逐漸收斂,并趨于平穩,驗證了數據集設置的合理性。

圖3 各框架訓練損失
四種闊葉材微觀結構差異較大,如大果紫檀具有豐富的晶細胞,刺猬紫檀有單管孔和復管孔,單、復管孔較分散,闊葉黃檀具有直徑較小的單管孔,絨毛黃檀同時具有單管孔和復管孔。采用YOLOv3 和SSD框架,選取收斂后趨于平穩的Loss 值識別四種闊葉材材種,評價指標如表2 所示。大果紫檀的平均精度在兩種框架中是最高的,可知大果紫檀較其他三種闊葉材微觀結構特征更易識別。相比較YOLOv3 框架,SSD框架對四種闊葉材的召回率較高且能夠從數據集中檢索更多的信息。

表2 各框架闊葉材辨識評價指標
YOLOv3和SSD框架對四種闊葉材的辨識結果如表3所示。YOLOv3框架對四種闊葉材辨識的mAP為91.57%,檢測用時為1.185s。SSD 框架對四種闊葉材辨識的mAP 為91.17%,檢測用時為0.608s,兩者mAP數值相近,YOLOv3 比SSD 框架的mAP 略高,但SSD框架的檢測效率更高。

表3 各框架對四種闊葉材的辨識結果
闊葉材的管孔尺寸、形態、分布具有較大差異性,所以本文試驗采集四種闊葉材圖像,大樣本可以保證闊葉材辨識的正確率,使YOLOv3 和SSD 框架得到四種闊葉材較好的辨識效果。YOLOv3的辨識結果得益于殘差網絡、反卷積和多特征層的思想,更好的提取闊葉材微觀圖像結構特征,而SSD 網絡結構更加簡單,利用改進的VGG 網絡提取特征,同樣得到優秀的結果。SSD 框架物體分類與預測框的回歸同時進行[15],所以檢測速度快,但其正、負樣本(背景)極其不均衡,是一種均勻的密集采樣,導致訓練困難。
本文選用的YOLOv3 和SSD 框架可實現四種闊葉材高效、準確辨識,YOLOv3 框架辨識準確率更高,而SSD 框架用時更短。總體而言,SSD 對四種闊葉材做到了更高效自動辨識,可以在保證辨識的正確率前提下能夠更快的處理樣本,提高了闊葉材的識辨識效率。
本文識別準確率沒有達到100%,綜合分析與圖像特點有關。本文只對四種木材樣本進行研究,闊葉材種類相對單一,但是每種闊葉材采集的樣本量較大,結果更具有適應性,下一步將從提高樣本的多樣性入手,增加不同闊葉材材種的訓練集,從而提高模型的抗干擾和泛化能力,使其更適應于更多闊葉材材種的辨識。