關(guān)鍵詞:灰度分布曲線;組合線段;冰勺;毛刺缺陷檢測(cè)
0 引言
冰勺是一種食用盒裝冰淇淋等冷飲類食品的木質(zhì)工具[1]。其在制作的過(guò)程中可能會(huì)出現(xiàn)毛刺缺陷。冰勺的毛刺可能會(huì)劃傷使用者的口舌,嚴(yán)重威脅人身健康。目前很多廠家對(duì)冰勺進(jìn)行缺陷檢測(cè)仍然以人工為主,人工目測(cè)的效率和準(zhǔn)確率已經(jīng)無(wú)法滿足現(xiàn)代工業(yè)的需求。在工業(yè)現(xiàn)場(chǎng),基于機(jī)器視覺(jué)的缺陷檢測(cè)系統(tǒng)可在一定程度上提高生產(chǎn)檢測(cè)效率。目前針對(duì)毛刺缺陷的檢測(cè)中,傳統(tǒng)的毛刺特征提取有一定的局限性,容易丟失信息。賈國(guó)靖[2]利用邊緣檢測(cè)法提取毛刺線條并使用輪廓合并的方法將提取的毛刺線條合并在一起,并通過(guò)區(qū)域生長(zhǎng)法區(qū)分毛刺和礦物線這兩種缺陷。李紹麗[3]提出將基于閾值分割方法的邊緣檢測(cè)和基于Canny算子的邊緣檢測(cè)法兩種邊緣檢測(cè)模型相結(jié)合的檢測(cè)方法。由于毛刺出現(xiàn)在冰勺邊緣,對(duì)此有學(xué)者提出了一系列輪廓提取算法來(lái)檢測(cè)毛刺,如采用基于布朗運(yùn)動(dòng)的線輪廓提取方法[4]、基于計(jì)算幾何的輪廓提取算法[5]。綜上所述,對(duì)于毛刺檢測(cè),現(xiàn)有的算法可能會(huì)造成誤檢甚至漏檢。
1 冰勺毛刺檢測(cè)算法原理
冰勺毛刺缺陷通常出現(xiàn)在冰勺的腰部位置,由于冰勺的木質(zhì)紋理沿著X方向分布,毛刺缺陷的分布也符合這一特點(diǎn),所以沿著冰勺正面圖像的Y方向的進(jìn)行毛刺檢測(cè)會(huì)大大提高檢測(cè)準(zhǔn)確性并減小算法復(fù)雜度(如圖1所示)。
灰度分布曲線可以看作由多個(gè)凸線段交替組成。凸線段是由兩個(gè)灰度極小值點(diǎn)之間的點(diǎn)組成的曲線,該線段內(nèi)包含一個(gè)灰度極大值點(diǎn),且該灰度極大值點(diǎn)及其附近的像素代表圖像中的亮區(qū)域。
灰度極值點(diǎn)的定義為:若當(dāng)前像素點(diǎn)的灰度值大于其前一個(gè)像素點(diǎn)的灰度值和后一個(gè)像素點(diǎn)的灰度值,則當(dāng)前的像素點(diǎn)為灰度極大值點(diǎn)。
如圖2所示為某個(gè)冰勺正面某列的部分灰度分布曲線,其中,f (a)為凹線段的極小值,f (b)、f (c)為凹線段的極大值。
定義當(dāng)中幅值大的為相對(duì)幅值fr (a),幅值小的為絕對(duì)幅值fa (a),如下式所示:
fr (a) = f (c) - f (a) (1)
fa (a) = f (b) - f (a) (2)
毛刺位置有較大的相對(duì)幅值特征,所以可以通過(guò)提取毛刺位置的相對(duì)幅值來(lái)實(shí)現(xiàn)對(duì)毛刺的檢測(cè)。
2 冰勺毛刺缺陷檢測(cè)算法
2.1 冰勺輪廓提取
冰勺輪廓提取是冰勺毛刺缺陷檢測(cè)算法的關(guān)鍵步驟,由于不同的輪廓提取算法決定了檢測(cè)的速度與精確度,因此輪廓提取這一步驟至關(guān)重要,直接影響毛刺缺陷的標(biāo)記與判定。毛刺位于冰勺邊緣,有的毛刺支出程度較大,也即意味著這些毛刺末端的支出部分位于背景暗區(qū)域中。判定條件如下:
式中,m 為判定獨(dú)立凸線段的幅值閾值,k 為判定獨(dú)立凸線段的幅值差的閾值。
在冰勺輪廓位置,圖像灰度呈現(xiàn)突變,凹凸線段的相對(duì)幅值能夠反映冰勺輪廓位置的灰度突變。因此提出組合幅值的概念,對(duì)于貼近冰勺邊緣的毛刺根部而言,從背景的暗區(qū)域到冰勺表面的亮區(qū)域之間往往呈現(xiàn)出過(guò)渡線段上存在凸線段的特點(diǎn),可以看作由兩個(gè)或多個(gè)凸線段共同構(gòu)成過(guò)渡線段,因此采用一種組合線段的方法,當(dāng)相對(duì)幅值fr (a)和fr (b)都無(wú)法代表該邊緣處的幅值時(shí),將兩個(gè)凸線段組合后的幅值fr (c)作為該處幅值。
組合幅值的計(jì)算方法如式(5) 所示:
其中,f (a)為組合凹線段的極大值,f (c)為組合凹線段的極小值。
用上述方法可以將毛刺支出部分和輪廓部分對(duì)應(yīng)的線段提取出來(lái)。
2.2 冰勺輪廓像素檢測(cè)
篩選出毛刺支出部分和輪廓部分對(duì)應(yīng)的線段后,需要對(duì)二者進(jìn)行標(biāo)記,即確定毛刺支出部分和輪廓部分對(duì)應(yīng)的像素位置。毛刺的像素位置確定為各自凸線段的灰度極大值點(diǎn),直接在各自對(duì)應(yīng)的線段集合中標(biāo)記對(duì)應(yīng)的像素點(diǎn)即可。
傳統(tǒng)的輪廓標(biāo)記方法中有標(biāo)記最外側(cè)梯度極大值的像素點(diǎn)的方法,該方法可以將灰度變化劇烈、對(duì)比度明顯的像素點(diǎn)標(biāo)記出來(lái),符合輪廓處的灰度變化特點(diǎn),該方法的思路為:若集合{x1,x2,x3,...,x } n 為某過(guò)渡線段上的像素點(diǎn),每個(gè)像素點(diǎn)對(duì)應(yīng)的灰度值用f (xi )(i = 1,2,3,...,n) 表示,則該過(guò)渡線段上梯度的計(jì)算方法如式(6) 所示,梯度構(gòu)成的集合為 {g1,g2,g3,...,g } n - 1 。
在梯度構(gòu)成的集合中,如果某梯度值gi 滿足式(7)和式(8) ,則該梯度值為該過(guò)渡線段上的梯度極大值gi max,對(duì)應(yīng)的像素點(diǎn)為梯度極大值點(diǎn),優(yōu)先選擇靠近外側(cè)的梯度極大值點(diǎn)作為輪廓標(biāo)記像素點(diǎn)。
對(duì)于無(wú)缺陷的冰勺輪廓,選取大于過(guò)渡線段極小值點(diǎn)一定灰度級(jí)的像素點(diǎn),這種方法不同于傳統(tǒng)的標(biāo)記梯度極大值的像素點(diǎn)的方法,對(duì)于目標(biāo)與背景之間的明暗關(guān)系更為敏感。該方法的思路為:若集合{x1,x2,x3,...,x } n 為某過(guò)渡線段上的像素點(diǎn),每個(gè)像素點(diǎn)對(duì)應(yīng)的灰度值用f (xi )(i = 1,2,3,...,n) 表示,則該過(guò)渡線段上每個(gè)點(diǎn)與極小值點(diǎn)的灰度差的計(jì)算方法如式(9) 所示,灰度差構(gòu)成的集合為{d1,d2,d3,...,d } n - 1 。
當(dāng)某個(gè)點(diǎn)與極小值點(diǎn)的灰度差di 滿足di 大于等于所設(shè)閾值Td 即式(10) 時(shí),將點(diǎn)xi 作為冰勺輪廓像素位置。
結(jié)合現(xiàn)有的標(biāo)記方法和實(shí)際情況,當(dāng)過(guò)渡線段上有凸線段出現(xiàn)時(shí),通過(guò)測(cè)試圖庫(kù),提出一種分線段進(jìn)行標(biāo)記的方法,即將凸線段前后的上升沿分為線段1和線段2,比較線段1和線段2的梯度,判斷整個(gè)過(guò)渡線段上最大的梯度位于哪個(gè)線段上,當(dāng)選擇線段以后在該線段上進(jìn)行標(biāo)記,標(biāo)記方法仍然使用大于極小值點(diǎn)某個(gè)灰度級(jí)的點(diǎn),簡(jiǎn)而言之就是利用梯度選擇,利用灰度值標(biāo)記。
該方法效果較好,可以將鏈條齒的標(biāo)記點(diǎn)與冰勺邊緣的標(biāo)記點(diǎn)分開(kāi),可以根據(jù)標(biāo)記后的特征對(duì)標(biāo)記點(diǎn)分類,從而達(dá)到去除鏈條齒的目的。
如圖3所示為去除鏈條齒的結(jié)果,可以看出該方法效果較好,可以在保留冰勺輪廓標(biāo)記點(diǎn)的前提下將鏈條齒的標(biāo)記點(diǎn)去除。
2.3 冰勺毛刺缺陷檢測(cè)
通過(guò)觀察對(duì)比毛刺標(biāo)記結(jié)果圖可知,支出型毛刺的標(biāo)記結(jié)果中,整個(gè)輪廓被分為兩段或多段,前面對(duì)于毛刺支出部分的標(biāo)記結(jié)果始終位于另一段輪廓的外側(cè),因此逐列遍歷標(biāo)記后的結(jié)果圖,如果存在標(biāo)記為支出部分的點(diǎn)位于標(biāo)記為輪廓部分的點(diǎn)的外側(cè),即上邊緣支出部分標(biāo)記點(diǎn)Y方向的坐標(biāo)值小于輪廓部分標(biāo)記點(diǎn)Y方向的坐標(biāo)值而下邊緣支出部分標(biāo)記點(diǎn)Y方向的坐標(biāo)值大于輪廓部分標(biāo)記點(diǎn)Y方向的坐標(biāo)值時(shí),認(rèn)為該處存在支出型毛刺。
3 算法測(cè)試與結(jié)果分析
為了驗(yàn)證算法對(duì)冰勺毛刺缺陷檢測(cè)的有效性,使用冰勺在線檢測(cè)系統(tǒng)采集冰勺正面圖像建立圖庫(kù),共采集319張,均能正確檢出,未出現(xiàn)漏檢,大大降低了誤檢率和漏檢率(如圖4所示)。
上述測(cè)試結(jié)果表明,本算法對(duì)冰勺毛刺缺陷檢測(cè)準(zhǔn)確率較高,漏檢率低,適合用于冰勺生產(chǎn)線上的在線檢測(cè)。
4 結(jié)束語(yǔ)
本文針對(duì)冰勺毛刺特征進(jìn)行分析,并設(shè)計(jì)出一種冰勺毛刺缺陷檢測(cè)方法。經(jīng)過(guò)實(shí)際測(cè)試,結(jié)果表明本研究的方法能夠有效檢測(cè)出冰勺毛刺,對(duì)冰勺毛刺檢測(cè)有一定的實(shí)用價(jià)值。