從古至今,鐘情于實木家具的人群不在少數。在他們眼中,實木家具就像一件藝術品,時間越久越能夠煥發出高貴的氣質。
可是木材作為天然材料,總免不了存在著變色、腐朽、油脂、木毛、木節、裂縫、蟲眼等缺陷。
目前,木材缺陷的分類識別尚未智能化,人工檢測依然比較普遍,光靠人工檢測不僅分類效率低,而且處理效果不夠理想。
因此需要計算機來參與處理,很多學者在原有圖像處理技術上不斷研究、結合新的方法和理論,以實現木材缺陷的自動分類識別。
支持向量機(support vector machine,SVM)是Vapnik提出的一種基于結構化風險最小化的統計學習方法,通過在特征空間構建具有最大間隔的最佳超平面而實現對訓練樣本集的最佳劃分。層次支持向量機在木材孔洞缺陷檢測中的應用,提取相關的統計信息作為識別特征,再輸入到層次支持向量機中進行識別。
神經網絡和支持向量機均屬于淺層結構的算法,而深度學習作為更加貼近于人類大腦的一種神經網絡學習算法,縱觀過去兩年,“深度學習”領域已經呈現出巨大發展勢頭。在計算機視覺領域,深度學習已經有了較大進展,其中卷積神經網絡是運用最早和最廣泛的深度學習模型。
卷積神經網絡
卷積神經網絡(convolutional neural networks,CNN)是一種特殊的深度前饋神經網絡,它的設計選擇局部連接,符合生物神經元的稀疏響應特性,可以降低網絡模型的參數規模,相對而言,對訓練數據量的依賴性降低。
南京林業大學范佳楠,劉英等采用深度學習算法替代傳統的淺層學習算法,提出了一種快速深度神經網絡(faster region-based convolutional neural networks, Faster R CNN)的實木板材缺陷識別模型。
01
實木板材缺陷檢測
本研究利用Chroma+Scan3350激光輪廓和色澤集成掃描儀(圖1)采集實木板材的圖像,其規格參數見表1。實木板材通過掃描儀正下方時,上、下兩個Chroma+Scan3350型激光掃描儀開始工作,對經過的實木板材進行掃描,并與電腦進行實時通信,以便直觀反映所采集到的信息(圖2)。檢測的實木板材種類是杉木,規格是1000mm×100mm×10mm,檢測時杉木運行速度是48m/min。
02
實木板材缺陷檢測原理
近年來,神經網絡成為目標檢測的主要手段,Ross等在深度學習的浪潮下提出了一種基于深度學習的目標檢測與識別方法—R-CNN(region based convolutional neural networks),這是一種將卷積網絡應用到目標檢測中的方法。R-CNN使用選擇性搜索,預先提取一些可能包含物體的候選區域,接著對該區域進行特征提取,從而判斷是否為目標,顯著提高了算法的效率,但是這種方法在每一個候選區都要提取一遍特征,而且區域會有重疊度,易出現大量的重復計算,導致檢測速度較慢。為了解決這一問題,本研究采用Faster R-CNN算法,Faster R-CNN通過輸入整個圖像一次通過特征提取器,然后從中間層裁剪,從而減輕了處理難度,使裁剪特征提取所需要的計算能夠共享。Faster R-CNN可以看作是由生成目標候選區的區域生成網絡(RPN)和利用這些候選區的Faster R-CNN(fast region-based convolutional neural networks)檢測器組成的,這樣整個目標候選區域提取、深度特征提取、目標識別和檢測過程都融入一個深度神經網絡模型中,從而在不降低檢測精度的基礎上顯著提高了整個檢測速度。從R-CNN到Faster R-CNN再到Faster R-CNN,目標檢測的4個基本步驟(候選區域生成,特征提取,分類,位置精修)被統一到一個深度網絡框架之內。Faster R-CNN模型只需要輸入一張圖片,以及圖片中目標的類別和對應的邊界框類別。隨后通過CNN模型對圖像做特征提取,并將輸出的特征用RPN(region proposal network)做候選區域的預測,再用預測到的候選區域邊框對特征圖做Rol操作,以達到目標識別和邊界框回歸。其中RPN是一個全卷積神經網絡,其輸入前一層為任一大小的特征圖,輸出為一系列的矩形目標候選區。為了生成候選區域,一個小型網絡在共享卷積網絡的最后一層卷積層的輸出特征圖上進行了滑窗選擇。該網絡的輸入為特征圖的一個n×n的窗口。對于每個窗口,同時預測k個目標候選區,這k個候選區都與這個窗口存在關聯,稱為anchors。每個anchor 都有著對應的尺度和比例。卷積特征圖中的每一個點都是一個anchors中心,有K個對應的anchors。每個窗口被映射為一個低維的向量,該特征向量被傳送到兩個子網絡中:邊框回歸網絡和邊框分類網絡。邊框回歸網絡輸出的是每個anchor的平移縮放值,對每個窗口,有4k個輸出;邊框分類網絡輸出的是每個anchor屬于目標或背景的概率,對于每個窗口有2k個輸出。RPN的訓練過程是端到端的。使用的優化方法是反向傳播和隨機梯度下降,損失函數是分類誤差和回歸誤差的聯合損失:
式中:i表示第i個anchor點;pi*表示第i個anchor目標的預測概率;pi*表示第i個anchor點為正樣本;ti*是一個向量,表示預測包圍盒的4個參數化坐標;ti*表示候選區域邊框和真實目標邊框之間的偏差;Lcls表示分類誤差函數;Ncls表示分類誤差函數的個數;Lreg表示回歸誤差函數;Nreg表示回歸誤差函數的個數。
03
實木板材缺陷檢測算法實現
3.1實木板材缺陷圖像預處理主要流程
系統首先采集實木板材圖像,對圖像進行分析處理,剔除干擾,方便之后對缺陷提取特征,實木板材缺陷圖像預處理主要流程如圖3所示。
3.2實木板材缺陷圖像特征提取
首先需要選用合適的特征提取器來對實木板材缺陷圖像進行特征提取,網絡結構層的數量和參數直接影響檢測框架的存儲效率、檢測速度和檢測效果,共選用Inception Resnet V2, Inception V2,Resnet V2,MobileNet這4種特征提取器來進行比較檢測,這些網絡結構tensorflow上都有開源的實現方式,通過多種特征提取網絡的實驗對比,選出最適合實木板材缺陷檢測的檢測框架,值得注意的是, 這里采用的是Resnet V2結構在tensorflow中實現實木板材缺陷圖像的特征提取。Faster R-CNN框架結構見圖4,首先利用一個卷積神經網絡對待測圖像進行特征提取,生成特圖,接著利用一個區域生成網絡(region proposal network, RPN)對特征圖進行處理并輸出多種尺度和寬高比的目標候選區域,最后利用一個分類回歸網絡根據候選區域內的特征進行判別輸出。
采用ZF-Net作為Faster R-CNN算法的特征提取網絡,網絡結構如圖5所示。
采用ZF-Net作為Faster R-CNN算法的特征提取網絡,網絡結構如圖5所示。
Sigmoid函數是一種常用的非線性激活函數,函數在能夠將輸入的連續變量值映射到0到1之間。當輸入變量值非常大或者非常小時,會出現飽和現象,Sigmoid函數的導數趨向于O。在反向傳播過程中,計算每一層網絡的梯度需要乘以一個Sigmoid函數的導數,若Sigmoid函數的導數趨向于O,那么隨著梯度向后傳播,梯度會變得越來越小,出現梯度消失現象,導致網絡變得難以學習。在ZF-Net中,相對于Sigmoid函數,ReLU函數在反向傳導過程中計算量少,同時使用ReLU作為激活函數時,部分神經元輸出將為0,使得神經網絡具有稀疏性,抑制過擬合問題,并且其收斂速度較快,故使用ReLU作為激活函數。在Faster R-CNN算法中,候選區域生成網絡是一個卷積神經網絡,該網絡以特征提取網絡輸出的特征圖作為輸入,輸出多種尺度和寬高比的矩形候選區域。該網絡首先使用一個滑動窗口在特征圖上進行滑動,將滑動窗口經過的每個位置上的特征映射成一個256維(選用ZF-Net作為特征提取網絡時為256維,選用其他網絡作為特征提取網絡時,該值會有變化)的特征向量,然后將每個特征向量輸入到兩個全連接層當中,一個全連接層輸出2×9=18個分數,另一個全連接層輸出4×9=36個坐標。Faster R-CNN算法為每個滑動窗口位置定義了9個錨點,得到每個滑動窗口位置的坐標之后,利用坐標對基準矩形框進行修正,每個基準矩形框分別對應4個坐標,最后每個滑動窗口位置得到9個候選區域。上述18個分數為候選區域的評分,每個候選區域對應2個分數,分別代表該候選區域內包含和不包含待測目標的可能性。實木板材通過CNN特征提取得到的結果見圖6,實木板材缺陷最終檢測結果見圖7。本研究構建了Faster R-CNN檢測框架,使用tensorflow開發平臺可以有效地更換特征提取器,實現在多種不同的特征提取網絡下不同種檢測框架的檢測效果。本實驗采用2000張杉木缺陷圖像,通過旋轉30°,60°,90°,120°,150°和180°對原始圖像進行數據擴充,擴充后圖像的80%作為訓練集,20%作為驗證集來進行仿真。Faster R-CNN采用隨機梯度下降法(SGD)來對參數進行更新,量大小(bitch size)設置為1,SGD動量設置均為0.8,初始學習率設定為0.001,迭代總次數設定為10萬次,步長設定為15。
從表3可以看出:Faster R-CNN對實木板材節子缺陷檢測正確率是98%,對實木板材孔洞缺陷檢測正確率是95%。相比SVM和BP算法,缺陷檢測正確率有明顯提高,表明本系統可以應用于實木板材的缺陷檢測與剔除。
04
實木板材缺陷檢測識別系統
界面實木板材檢測系統能實現圖像采集、圖像處理、查詢等功能。圖像采集包括圖像信息輸入、圖像采集、圖像特征提取和圖像存儲功能;圖像處理包括缺陷、紋理、顏色識別,主要研究實木板材缺陷檢測識別;查詢包括按圖像編號查詢、按材料類型查詢和按規格查詢。圖像信息輸入界面,可以記錄采集圖像的日期,實木板材種類及規格。實木板材圖像處理界面,點擊采集圖像按鈕,就可以顯示實木板材圖像,進而可以對采集到的圖像進行預處理和特征提取。圖8是實木板材缺陷位置檢測識別界面,點擊開始運行按鈕,系統將會對特征提取后的實木板材缺陷圖像進行檢測識別,表面檢測后的圖像會顯示在界面中,表面缺陷的位置信息也會實時顯示,以便之后對缺陷進行剔除。實木板材缺陷位置檢測系統共處理了12000張缺陷圖像,其中一張缺陷圖像運行結果如圖8所示:該實木板材圖像機器學習識別到6個缺陷并做出標志,缺陷位置信息也已經顯示,人工識別該實木板材圖像也有6個缺陷,故而對該實木板材圖像的缺陷能做到準確識別。該系統處理并檢測識別一張缺陷圖片的時間是3s,對實木板材節子缺陷檢測正確率是98%,對實木板材孔洞缺陷檢測正確率是95%。
結 論
我國人口數量眾多,森林資源匱乏,人均占有量偏少,木材的利用率遠低于發達國家,木材缺陷分類識別還不能完全做到機器化,仍有人工檢測方法的存在,識別率低。針對該問題,本研究采用深度學習方法對實木板材缺陷進行研究,利用ResnetV2結構對采集到的節子、孔洞等實木板材缺陷圖像進行特征提取,應用基于快速深度神經網絡的實木板材缺陷識別模型對提取到的缺陷特征進行訓練學習,最后使用tensorflow 作為實驗平臺構建了Faster R-CNN檢測框架對節子、孔洞等實木板材缺陷進行預測仿真。本算法具體采用了2000 張杉木缺陷圖像,通過旋轉30°,60°,90°,120°,150°和180°對原始圖像進行數據擴充,擴充后圖像的80%作為訓練集,20%作為驗證集來進行仿真,結果表明:對實木板材節子缺陷檢測正確率是98%,對實木板材孔洞缺陷檢測正確率是95%,驗證算法應用在實木板材缺陷檢測方面的有效性。筆者構建實木板材缺陷檢測系統界面,該系統能實現圖像采集、圖像處理、特征提取和分類識別等功能,對每張杉木缺陷圖像有效地進行分類識別并能將結果保存到數據庫以便后期查詢。
責任編輯:lq
-
神經網絡
+關注
關注
42文章
4777瀏覽量
100985 -
算法
+關注
關注
23文章
4625瀏覽量
93141 -
智能化
+關注
關注
15文章
4927瀏覽量
55584
原文標題:基于Faster R-CNN的實木板材缺陷檢測識別系統
文章出處:【微信號:vision263com,微信公眾號:新機器視覺】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論