陳富
(曲靖市麒麟區林業局東山木材檢查站 云南曲靖 655000)
木材表面缺陷,是指其表面的某些特征,這些特征能使木材的商品及使用價值變低,但這些特征不僅會影響木材堅韌度,還對木材的加工以及裝飾作用造成較為嚴重的影響。因此,可以對木材表面進行專業檢測,其方法有:人工直檢、超聲檢、利用X 射線及計算機視覺技術進行檢測等等。本篇文章,則就利用計算機視覺技術,研發了一套對木材表面缺陷進行檢測的系統,其為木材的加工產業提供了切實可行的解決方法。此系統可以通過信息技術將實時檢測出表面缺陷的類別、大小以及具體位置等,并且通過通信模塊將數據傳輸到中央系統當中,進而對未來的相關工作進行一定程度的指導。
系統的結構主要是檢平臺和檢測系統的架構,檢測平臺上主要涵蓋了傳送結構、結構光源、CCD 工業相機、開關等等,其機架由歐標3030 鋁型材,3030 角碼、M5 不銹鋼內六角圓柱頭螺釘、M5 配鋁型材的T 型螺母、M8 尼龍腳墊等組成[1]。檢測系統主要通過數據線與相機進行連接,對拍下的圖像實時傳輸,進而快速對缺陷進行檢測,最后將相關信息傳遞給木材的加工設備當中。木材通過相機拍攝區域,安裝在機架附近的開關檢測到木材將要接近,將信號傳輸給檢測系統,檢測系統控制機位開始停止運輸。計時器計時,相機獲取木材圖像,檢測表面缺陷,向下傳遞檢測結果,隨后進行對木材加工,當計時器到時后,下位機使傳送帶電機發電,移動一段距離后電機失電,后重復之前的工作。
本次設計主要通過C++語言進行程序設計,通過MFC/C++進行操作面板的開發,在此基礎上通過OpenCV 以及CameraDS的函數來實現檢測過程中圖像的獲取,其具有靈敏速度快等優勢[2]。
本次設計通過用戶的實際需求,設置為兩種模式,即手動和自動,在手動測試的模式下,用戶可以自由地對檢測系統的參數進行調整,在設定好參數之后,點擊獲取圖片、缺陷檢測的按鈕,畫面將會直接顯示出缺陷的種類、大小和位置等信息。按下繼續按鈕,傳送帶將會輸送下一個待檢測物體,從而進行重復的工作。而在自動模式下,系統會根據手動模式的參數設置進行自動檢測,不需要人工進行干預[3]。
為了檢測結果的準確性,用戶在進行初次使用時可以手動對相關參數進行設定,點擊“參數設置”按鈕,將會彈出對話框,對話框內包括分割閾值、時間、最大舍棄面積以及像素坐標等等。
系統設置的是二值化函數,進而需要對木材表面的缺陷圖像進行閾值分割,閾值的設定結果也將直接影響到最后檢測的結果,其具體作用是能夠將圖像中灰度大于設定值的像素點修改到白色,小于設定閾值的則可改為黑色,這樣的設定可以使檢測結果更加清晰且易辨[4]。
時間間隔的測試可以先打開相機,在木材表面的拍攝區做好標記,按下“測試”按鈕,并且通過秒表計時,用肉眼直接觀察相機拍攝區,當標記到達拍攝區邊緣時就可以停止計時,將表中的時間填寫到相應的編輯框當中[5]。
最大舍棄面積指的是面積小于設定值的區域,其不屬于缺陷可以舍棄掉,因為木材表面可能會存在污點、灰塵等,相較于缺陷面積來說要小得多,所以不必計算在內。但是對于最大舍棄面積的設定,應該根據實際的情況進行考量,否則會將原本可以被標記的缺陷漏掉。
在對上述相關參數設定完畢之后,打開相機,按下獲取圖片的按鈕,選擇框中會顯示按下按鈕時獲取的圖像。按下“保存”按鈕,則可以對相關數據進行保存,進而為下次的操作做出參考。按下“缺陷檢測”,木材表面的缺陷會被框處,且在右上角有編號,從而可以查看此次檢測是否準確。對于缺陷的大小是通過缺陷中像素點的個數以及一系列的轉化關系來計算的。一般像素的中心為圖像中木材的中心點[6]。
軟件下方有可以對檢測結果進行保存的按鈕,軟件還可以對檢測結果的數據進行修改和保存。點擊保存按鈕,軟件將相關信息保存到Excel 文檔當中,用戶可以在之后的工作中根據歷史記錄以及存檔文件進行修改或刪除。
本次設計的計算機設備為CPU Intel Xeon E3-1240 V6 350GHz;內存16GB,操作系統為Window8 專業版;主板信息為Gigabyte X200M-PLUS WS-CF;開發的平臺為微軟Visual Studio 2015;版本為12.1.21006.1;應用程序的構造為MFC,開發語言與編譯方式分別為C++與VC++。
本次測試的方式是通過照相機拍攝被檢測木材來進行,拍攝對象包括有缺陷、有污點、有劃痕、有灰塵等不同類型的木材。并且分別對拍攝結果進行統計,從而增加檢測的準確率。根據計算機上顯示的缺陷檢測結果,我們假設被檢測的9 張木材照片為總樣本,假使首張相片被準確的檢測出有缺陷,那么則有S1=1,E1=0,A1=1;接著的圖片有一個缺陷被計算機正確檢測出,但是誤測出兩個缺陷,那么結果可以表示為:S2=3,E2=2,A2=0.33,同理按照此方法對其余的照片進行檢驗,檢驗的結果為,最后準確率A=(A1+A2+A3+……A9)/9·100%=86%。在此次系統整體調試過后,利用該種方法,我們又對500 張木材的圖片進行了同樣的檢測,其檢測準確率為93.3%,平均檢測時間為2ms,已經完全符合相關企業對于檢測質量以及效率的要求[7]。
本篇文章基于OpenCV 的木材表面缺陷檢測系統,經過再次的實驗驗證,發現,該設計系統能夠準確且快速的進行木材缺陷的檢驗,檢測的平均準確率達到了93.3%。平均檢測時間高達2m/s;并且,系統軟件經過設計操作界面簡單易上手,且系統運行也較為平穩,具有超強的實用性。本次系統也能夠應用到木材檢測的各個用途當中,也能夠靈活應用到木材生產以及加工的流水線上,具備極好的通用性。基于OpenCV 的木材表面缺陷檢測系統的出現,能夠很大程度上解決企業在進行木材生產以及加工過程中,表面出現缺陷的問題,值得被廣泛應用。