宋鈺青
(三峽大學(xué) 機(jī)械與動(dòng)力學(xué)院,湖北 宜昌443002)
木板條紋間距和顏色的色度色差會(huì)影響其美觀和商用價(jià)值。工廠在加工過(guò)程中需要將相近的木板歸為一類(lèi)來(lái)進(jìn)行拼接,這一過(guò)程靠人工來(lái)分揀效率低、成本高,而在木板檢測(cè)中最常見(jiàn)的缺陷檢測(cè)[1-3],主要針對(duì)木板上存在的死結(jié)、活結(jié)、蟲(chóng)蛀、裂縫等,對(duì)木板的條紋研究較少。故實(shí)現(xiàn)木板條紋間距與顏色分類(lèi)的自動(dòng)化具有重大的意義。
工廠中的木板都是切割成形的木材,常見(jiàn)的都是方形,具有不同的長(zhǎng)度和寬度。而木板中的紋理在切割后會(huì)呈線(xiàn)性分布,形成條紋。目前最常見(jiàn)的算法是圖像增強(qiáng)、邊緣檢測(cè)、圖像分割算法。文獻(xiàn)[4]提出了一種基于TV濾波與FRC模型的木材年輪紋理檢測(cè)算法,采用V分量、TV濾波、FRC分割和形狀識(shí)別等方法實(shí)現(xiàn)紋理的提取。文獻(xiàn)[5]采用雙邊濾波增強(qiáng)圖像和改進(jìn)Canny算法提取紋理特征,克服傳統(tǒng)Canny算子對(duì)噪聲的敏感性。文獻(xiàn)[6]提出一種基于伯恩斯坦多項(xiàng)式一致逼近的多閾值圖像分割算法,克服圖像直方圖中毛刺的干擾帶來(lái)的算法不穩(wěn)定。木板條紋的檢測(cè)也可以通過(guò)Hough直線(xiàn)檢測(cè)和興趣點(diǎn)提取[7-8],不過(guò)這僅適用于條紋清晰的木板。
木板顏色檢測(cè)的算法常用神經(jīng)網(wǎng)絡(luò)、支持向量機(jī)等分類(lèi)器對(duì)提取之后的顏色進(jìn)行分類(lèi)[9-12]。文獻(xiàn)[13]通過(guò)提取木材的分布特征和相關(guān)關(guān)系,根據(jù)這些參數(shù)進(jìn)行聚類(lèi)來(lái)實(shí)現(xiàn)木材的分類(lèi)。這些提取眾多特征再進(jìn)行分類(lèi)的算法比較復(fù)雜,運(yùn)行時(shí)間長(zhǎng)。
為了提高木板檢測(cè)的效率和速度,降低成本,本文在如何減少運(yùn)算量方面提供思路。
木板按條紋可分為:無(wú)條紋、有條紋。其中若無(wú)條紋或條紋間距中的絕大多數(shù)小于4 mm歸為條紋A(其中絕大多數(shù)指不小于總間距數(shù)的80%);條紋間距中的絕大多數(shù)不小于4 mm,小于7 mm歸為條紋B;條紋間距中的絕大多數(shù)不小于7 mm則為條紋C。
木板按色度可分為:色度不均勻的、色度均勻偏深的、色度均勻偏淺的、色度均勻中色的。其中色度均勻偏淺的歸為色度a;色度不均勻的或色度均勻中色的歸為色度b;色度均勻偏深的歸為色度c。
條紋和色度分別有3類(lèi),將其組合排列共有9種類(lèi)別,分別為Aa,Ab,Ac,Ba,Bb,Bc,Ca,Cb,Cc。
本系統(tǒng)分類(lèi)依據(jù)的參數(shù)與人工分類(lèi)依據(jù)的參數(shù)相同,而人眼在色度分類(lèi)上需要通過(guò)比對(duì)另一塊木板才能判斷,極大影響了準(zhǔn)確度及效率,容易誤判。而對(duì)于同一塊木板運(yùn)行多次出現(xiàn)不同結(jié)果的概率,本系統(tǒng)較人工小。
該系統(tǒng)由紅外線(xiàn)傳感裝置、工業(yè)CCD攝像頭、計(jì)算機(jī)、光源、外罩、單片機(jī)、打標(biāo)機(jī)、傳送帶組成。該裝置運(yùn)行時(shí),開(kāi)啟傳送帶,一旦紅外線(xiàn)檢測(cè)木板的進(jìn)入,圖像開(kāi)始識(shí)別處理,直到紅外線(xiàn)檢測(cè)木板退出,此時(shí)計(jì)算機(jī)通過(guò)串口將信號(hào)傳輸給單片機(jī),單片機(jī)發(fā)出電流,打標(biāo)機(jī)打標(biāo)。流程圖如圖1所示。
圖1 過(guò)程流程圖
本文采用主機(jī)CPU為Inter(R)Core(TM) i3-4130 3.40Ghz,內(nèi)存4.00 GB,操作系統(tǒng)為Windows 10旗艦版。開(kāi)發(fā)語(yǔ)言采用Python,結(jié)合OpenCV庫(kù),實(shí)現(xiàn)圖像的檢測(cè)識(shí)別。
將讀入圖像的色彩空間轉(zhuǎn)為灰度圖,進(jìn)行均衡化來(lái)提高圖像對(duì)比度,再進(jìn)行高斯濾波來(lái)消減干擾的噪聲,最后對(duì)其每一列的灰度值進(jìn)行疊加,形成直方圖。該運(yùn)算是對(duì)灰度值進(jìn)行線(xiàn)性疊加,疊加效果如圖3所示,其原圖如圖2所示。
圖2 木板
圖3 灰度疊加直方圖
從圖2、圖3中可以看出,灰度值中越白其值越大,木板中條紋的紋路是較深的,所以在該直方圖中波谷代表?xiàng)l紋所在的位置。因此我們要找出波谷的具體位置。同時(shí)為了提高條紋檢測(cè)的準(zhǔn)確度,該算法需要對(duì)圖片進(jìn)行分段,以每70個(gè)像素點(diǎn)為一段。
波谷即數(shù)學(xué)中的極小值。在這些極小值中存在噪聲,會(huì)干擾條紋位置的判斷,因此要通過(guò)設(shè)定閾值消減噪聲。
通過(guò)對(duì)比可以發(fā)現(xiàn),這些噪聲的波動(dòng)幅度遠(yuǎn)遠(yuǎn)小于條紋波動(dòng)幅度,只要將這些波動(dòng)幅度小的噪聲點(diǎn)剔除掉,就可以得到條紋位置。因此,本文將閾值定為條紋間距中由小到大的80%位置上的間距的1/3。效果圖如圖4所示。
圖4 木板條紋位置
在上一步得到條紋位置后,只需將相鄰條紋的位置相減,即可得到條紋間距,該間距值為像素值。其中,條紋間距(mm)= 間距像素值×帶刻度的鋼尺在圖像的距離(mm)/圖像像素。
由于存在無(wú)條紋木板及噪聲的存在,該算法加一個(gè)界定條件,對(duì)應(yīng)60 mm的木板(400個(gè)像素點(diǎn))少于10條間距,則為無(wú)條紋。以下參數(shù)單位為像素。
If 木板寬度*10/400<10:
條紋A
elif 條紋間距<12:
條紋A
elif 條紋間距<16:
條紋B
else:
條紋C
該算法由于存在多次循環(huán),若圖像太大,會(huì)極大降低運(yùn)算速度,因此在不影響識(shí)別準(zhǔn)確的情況下,本系統(tǒng)將圖片的大小降為(640,480)。
木板的色度受光照影響極大,本系統(tǒng)需要在攝像頭周?chē)胖谜诠庹郑⒃趦?nèi)部均勻地放置燈作為光源。
圖像顏色檢測(cè)中,背景的顏色會(huì)對(duì)其產(chǎn)生較大影響,需要先去除背景。因?yàn)閭魉蛶蔷G色的,R值遠(yuǎn)小于140,而木板R值大于140,故取閾值為140。
木板的邊界是直線(xiàn)型的,只需把左右兩端的邊界點(diǎn)求出來(lái),左端取較大值,右端取較小值,以減少運(yùn)算量。分割前后的圖像如圖5、圖6所示。
將木板劃分為縱向三部分,將圖像的顏色BGR三通道分離出來(lái),每個(gè)部分求R通道的均值,若變化大于4,則判斷色差大,色度為b,否則為色度均勻。
圖5 拍攝原圖
圖6 分割圖
木板圖像中偏深的區(qū)域的BGR值在一定范圍內(nèi)且有規(guī)律性,找到這個(gè)范圍,利用OpenCV中的cv2.inrange函數(shù)實(shí)現(xiàn)圖像的二值化,再利用cv2.calcHist計(jì)算二值化圖像中的比率,最后得到偏深色度的比值,二值化前后圖像如圖7、圖8所示。如果大于35%,則判斷該木板為深色。同理可以判斷淺色,其余的則為中色。最后結(jié)合上一步的結(jié)果,得到最終判斷結(jié)果。
圖7 深色木板
圖8 二值化
系統(tǒng)實(shí)驗(yàn)裝置整體參數(shù)如下:紅外線(xiàn);攝像頭分辨率為2560×1440,傳輸方式為USB3.0;支架為鋁合金材料,長(zhǎng)×寬×高為200 mm×150 mm×200 mm;STC51單片機(jī);打標(biāo)機(jī)(電磁閥加印章);可多級(jí)調(diào)速傳送帶。整體實(shí)驗(yàn)設(shè)備如圖9所示,為拍攝紅外線(xiàn)位置,遮光罩和光源沒(méi)有拍出來(lái)。單片機(jī)如圖10所示。
圖9 實(shí)驗(yàn)設(shè)備
圖10 單片機(jī)
在測(cè)試過(guò)程中,每個(gè)木板放置間隔的距離不小于單片機(jī)延遲的時(shí)間乘以傳送帶速度。實(shí)驗(yàn)步驟為:1)開(kāi)啟傳送帶,速率為4級(jí),開(kāi)啟系統(tǒng),放置木板;2)紅外線(xiàn)檢測(cè)到有木板進(jìn)入,開(kāi)始圖像處理;3)紅外線(xiàn)檢測(cè)到木板退出,停止圖像處理并發(fā)送最終結(jié)果給單片機(jī);4) 單片機(jī)發(fā)送指令給打標(biāo)機(jī),打標(biāo)機(jī)打標(biāo);5)進(jìn)入下一個(gè)循環(huán)。
將系統(tǒng)檢測(cè)的結(jié)果與人工檢測(cè)結(jié)果對(duì)比,并對(duì)同一木板進(jìn)行多次檢測(cè),計(jì)算系統(tǒng)的準(zhǔn)確率和穩(wěn)定性。
將編好的程序打包為.exe文件,對(duì)300個(gè)木板進(jìn)行檢測(cè)。其中,每個(gè)木板具有不同的長(zhǎng)度、寬度、條紋間距、顏色、缺陷等。其中的9個(gè)樣本如圖11所示,條紋間距如圖12所示,結(jié)果如表1所示。
圖11 樣本
圖12 樣本條紋
表1 測(cè)試結(jié)果
從圖11、圖12中可以看出,條紋檢測(cè)對(duì)條紋清晰的木板的準(zhǔn)確率高達(dá)99%,如樣板2、4、9。表面粗糙,條紋顏色與條紋間顏色相近,表面有應(yīng)力線(xiàn)的木板雖然存在噪聲干擾,但準(zhǔn)確率也有97%,如樣板3、6。對(duì)于整體條紋非常細(xì)密,顏色又均勻的樣本,條紋雖然沒(méi)有100%檢測(cè)出來(lái),但可以檢測(cè)出80%,對(duì)結(jié)果影響不大,如樣本1、5。
在顏色檢測(cè)當(dāng)中,算法檢測(cè)的是整塊木板,如果條紋線(xiàn)也在劃分的深色區(qū)間內(nèi),會(huì)加大樣本是深色的概率,但可以通過(guò)測(cè)得條紋的位置將該位置的顏色剔除掉,削減影響。對(duì)于存在色差的樣板(如樣板6)檢測(cè)的準(zhǔn)確率為98%;對(duì)于在色差小的樣板中區(qū)分中、淺,若樣板在劃分的臨界區(qū)間附近,會(huì)存在多次檢測(cè)結(jié)果不同的問(wèn)題。
本文設(shè)計(jì)了木板顏色和條紋間距檢測(cè)系統(tǒng),利用改進(jìn)直方圖算法和分類(lèi)區(qū)間,檢測(cè)速度為8 cm/s,識(shí)別準(zhǔn)確率達(dá)92.3%。檢測(cè)效率和準(zhǔn)確率高于人工檢測(cè),為工廠的自動(dòng)化加工提供了簡(jiǎn)單實(shí)用的可行方案。