許祖鑫,畢明德,孫志剛
(華中科技大學(xué) 控制科學(xué)與工程系 信息所,湖北 武漢 430074)
當(dāng)前手機(jī)產(chǎn)業(yè)中,對(duì)手機(jī)屏表面缺陷檢測(cè)的手段依舊停留在依靠人工肉眼觀察。然而人工檢測(cè)受檢測(cè)主體的主觀因素的限制且人眼無(wú)法實(shí)現(xiàn)產(chǎn)品高速生產(chǎn)時(shí)的在線缺陷檢測(cè)。機(jī)器視覺(jué)的發(fā)展使其能夠替代人眼,利用數(shù)字圖像處理技術(shù)完成手機(jī)屏表面缺陷檢測(cè)具有一定的實(shí)際意義。
數(shù)學(xué)形態(tài)學(xué)是由一組形態(tài)學(xué)的代數(shù)運(yùn)算子組成[1]。最基本的形態(tài)學(xué)運(yùn)算子有腐蝕、膨脹、開(kāi)、閉。運(yùn)用這些算子及其組合,進(jìn)行圖像形態(tài)和結(jié)構(gòu)的分析及處理,包括圖像分割,邊緣檢測(cè),圖像濾波,圖像增強(qiáng)和復(fù)原等方面的工作[2-3]。本文針對(duì)手機(jī)屏表面灰度圖像背景單一,缺陷有明顯形狀特征的特點(diǎn),提出一種基于數(shù)學(xué)形態(tài)學(xué)的缺陷檢測(cè)方法。
在生產(chǎn)過(guò)程中,手機(jī)屏可能出現(xiàn)的缺陷可分為兩類,一類是劃痕(見(jiàn)圖1a),這類缺陷主要是人為因素造成的;另一類是晶點(diǎn)(見(jiàn)圖1b),這類缺陷主要是由產(chǎn)品本身內(nèi)部結(jié)構(gòu)發(fā)生微小畸變所導(dǎo)致的。
對(duì)大量缺陷圖像進(jìn)行統(tǒng)計(jì)分析,表明缺陷在整個(gè)圖像中占的像素比重比背景小,輪廓比較清晰,但是背景與缺陷的灰度分布集中,二者對(duì)比度不明顯。從直方圖上看,圖像大都呈現(xiàn)比較集中的單峰結(jié)構(gòu)??梢?jiàn),這些圖不宜直接采用閾值分割處理,而區(qū)域生長(zhǎng)法嚴(yán)重依賴于初始種子像素[4],同時(shí)計(jì)算量也較大,檢測(cè)的速度較慢。
圖1 (a),(b)分別劃痕與晶點(diǎn)缺陷樣本圖,(c),(d)分別為(a),(b)的直方圖
數(shù)學(xué)形態(tài)學(xué)方法能夠凸顯手機(jī)屏缺陷的形狀特性,并將其從背景中地分割出來(lái),從而達(dá)到檢測(cè)疵點(diǎn)的目的。
本文處理的缺陷圖像為灰度圖像,需利用灰度形態(tài)學(xué)[5]。二值數(shù)學(xué)形態(tài)學(xué)可方便地推廣到灰度圖像空間。只是灰度形態(tài)學(xué)的運(yùn)算對(duì)象不是集合,而是圖像函數(shù)。設(shè)f(x,y)是輸入圖像,b(x,y)是結(jié)構(gòu)元素。用結(jié)構(gòu)元素b對(duì)輸入圖像f進(jìn)行膨脹和腐蝕運(yùn)算分別定義為:
式中:Df和Db分別是f和b的定義域。
對(duì)灰度圖像的膨脹(或腐蝕)操作有兩類效果:
(1)如果結(jié)構(gòu)元素的值都為正的,則輸出圖像會(huì)比輸入圖像亮(或暗);
(2)根據(jù)輸入圖像中暗(或亮)細(xì)節(jié)的灰度值以及它們的形狀相對(duì)于結(jié)構(gòu)元素的關(guān)系,它們?cè)谶\(yùn)算中或被消減或被除掉。
灰度數(shù)學(xué)形態(tài)學(xué)中開(kāi)啟和閉合運(yùn)算的定義與在二值數(shù)學(xué)形態(tài)學(xué)中的定義一致。用b對(duì)f進(jìn)行開(kāi)啟和閉合運(yùn)算的定義為:
開(kāi)運(yùn)算和閉運(yùn)算操作幾乎都是“保留區(qū)域”形式的:最顯著的效果是,在灰度級(jí)上,閉運(yùn)算消除了低于其鄰近點(diǎn)的孤立點(diǎn),開(kāi)運(yùn)算消除了高于其鄰近點(diǎn)的孤立點(diǎn)。
基于以上灰度形態(tài)學(xué)基本運(yùn)算,本文在缺陷提取中用到“黑帽”法來(lái)增強(qiáng)圖像陰影的細(xì)節(jié)?!昂诿薄狈ň褪?Black-Hat變換[6],即對(duì)原始圖像閉運(yùn)算再減去原始圖像后得到的圖像,可以得到一些重要的標(biāo)記點(diǎn)?;叶葓D像分析中,這種方法對(duì)比較亮的背景中求暗的像素聚集體(顆粒),或在較暗的背景中求亮的像素聚集體非常有效。
Black-Hat變換的數(shù)學(xué)表達(dá)式為:
其中b是適當(dāng)?shù)慕Y(jié)構(gòu)元素,f是輸入圖像。
在使用Black-Hat變換時(shí),結(jié)構(gòu)元素的選取對(duì)結(jié)果會(huì)有很大的影響。適當(dāng)?shù)倪x取闕值,便可得到邊緣圖像。
基于數(shù)學(xué)形態(tài)學(xué)的手機(jī)屏表面缺陷檢測(cè)算法流程如圖2所示。
圖2 表面缺陷檢測(cè)流程圖
在圖像預(yù)處理過(guò)程中采用中值濾波[7]方法對(duì)待檢測(cè)圖像進(jìn)行濾波。由于CCD面陣相機(jī)采集的圖像會(huì)因光照不均、CCD器件本身的噪聲等原因,而使得圖像存在噪聲。中值濾波不僅能有效濾除噪聲,且可克服線性濾波器帶來(lái)的圖像細(xì)節(jié)模糊,較好地保持了圖像邊緣,中值濾波對(duì)平滑脈沖干擾及圖像掃描噪聲尤為有效。
中值濾波就是用一個(gè)有奇數(shù)點(diǎn)的滑動(dòng)窗口,將窗口中心點(diǎn)的值用窗口內(nèi)各點(diǎn)的中值代替,用數(shù)學(xué)公式表示為:
式中Med為窗口內(nèi)像素灰度值的中間值,fi為窗口內(nèi)的像素灰度值。
本文采用中值濾波不僅能有效濾除噪聲,且可以保持缺陷輪廓,不影響后續(xù)形態(tài)學(xué)處理。根據(jù)觀察大量樣本圖像,窗口大小選擇5×5較為合適。
步驟一:對(duì)濾波后的圖像進(jìn)行Black-Hat變換。實(shí)驗(yàn)采用明場(chǎng)照明方式,光線經(jīng)過(guò)缺陷位置時(shí)其方向會(huì)突變,只有少量光線進(jìn)入相機(jī)。在圖像上的反映則為缺陷位置比正常區(qū)域暗。Black-Hat變換能將這些形狀明顯的較暗區(qū)域分離出來(lái),在本研究中選擇5×5的結(jié)構(gòu)元素。Black-Hat變換結(jié)果如圖3所示。
圖3 (a),(b)分別為劃痕經(jīng)Black-Hat變換前后圖,(c),(d)分別為晶點(diǎn)經(jīng)Black-Hat變換前后圖
步驟二:對(duì)Black-Hat變換后的圖像進(jìn)行二值化分割。Black-Hat變換后,圖像的灰度級(jí)主要集中在兩類,一類為缺陷,另一類為背景;因此采用最大類間方差法進(jìn)行二值化。閥值T選取公式為:
式中m(i)、n2(i)分別為灰度級(jí)小于i的像素?cái)?shù)目和大于、等于i的像素?cái)?shù)目;v1(i)、v2(i)分別為它們的平均值。
公式(8)的意思是,取w(i)中的最大值時(shí)的下標(biāo)作為二值化的分割閾值。w(i)實(shí)際上是一個(gè)以灰度值為自變量的函數(shù),求閾值就是找出函數(shù)值取最大值的位置。對(duì)圖3(b)、(d)二值化的結(jié)果如圖4所示。
圖4 二值化后的圖像
步驟三:對(duì)二值化后的圖像進(jìn)行形態(tài)學(xué)開(kāi)運(yùn)算。二值化后的圖像還有大量椒鹽噪聲,根據(jù)數(shù)學(xué)形態(tài)學(xué)理論,開(kāi)運(yùn)算能夠有效地濾掉這些噪聲,得到完整的缺陷圖,本研究選擇的結(jié)構(gòu)元素大小為5×5。開(kāi)運(yùn)算結(jié)果如圖5所示。
圖5 開(kāi)操作去掉噪聲點(diǎn)后的完整缺陷圖
步驟四:繪制輪廓。運(yùn)用OpenCV庫(kù)提供的輪廓繪制函數(shù)將缺陷輪廓畫出,保存輪廓數(shù)據(jù),為后續(xù)提取特征量做準(zhǔn)備。繪制輪廓結(jié)果如圖6所示。
圖6 缺陷輪廓圖
形態(tài)特征是目標(biāo)缺陷的基本特征,通過(guò)缺陷區(qū)域的面積、周長(zhǎng)、重心、圓度、扁平度等形狀描述符來(lái)表示。手機(jī)屏表面缺陷的形態(tài)特征有比較明顯的區(qū)別,如劃痕缺陷一般長(zhǎng)度較長(zhǎng),寬度較窄;而晶點(diǎn)缺陷的長(zhǎng)和寬差異不大。本文選取面積、周長(zhǎng)、圓度、扁平度四個(gè)特征量組成特征向量,各參數(shù)定義如下:
(1)面積A即缺陷區(qū)域內(nèi)的像素總個(gè)數(shù),定義如下:
式中Ψ為整個(gè)圖像區(qū)域。
(2)周長(zhǎng)P即缺陷邊界像素的總和。
(3)圓度C反映缺陷接近圓的程度,缺陷形狀越接近圓,圓度越小;形狀越復(fù)雜,圓度越大。圓度的計(jì)算公式為:
(4)扁平度R是缺陷的高度與寬度的比值,反映了缺陷在長(zhǎng)軸方向上的長(zhǎng)寬比例,其計(jì)算公式如下:?
式中L為缺陷長(zhǎng)軸,即通過(guò)重心連接缺陷邊界上兩個(gè)最遠(yuǎn)點(diǎn)線段的長(zhǎng)度;W為短軸,即通過(guò)重心與長(zhǎng)軸垂直并與缺陷外接矩形相交線段的長(zhǎng)度。
手機(jī)屏缺陷類別主要有兩類劃痕類、晶點(diǎn)類,且兩類形態(tài)特征區(qū)別較為明顯,因此本文采用最小距離分類器[8]進(jìn)行缺陷分類。選擇馬氏距離[9]作為距離度量,因?yàn)轳R氏距離考慮到了各種特性之間的聯(lián)系,并且是與尺度無(wú)關(guān)的。第i個(gè)樣本xi到樣本集X={x1,x2,…,xm}的馬氏距離定義為:
當(dāng)計(jì)算出一個(gè)未知類別缺陷x的特征向量(面積、周長(zhǎng)、圓度、扁平度)時(shí),分別計(jì)算x到標(biāo)準(zhǔn)樣本集劃痕類和晶點(diǎn)類的馬氏距離,然后將它分配給距離最近的標(biāo)準(zhǔn)樣本所代表的類。
本研究采用VS2008的MFC編程來(lái)實(shí)現(xiàn)軟件平臺(tái)的搭建,其中部分圖像處理函數(shù)(如輪廓提取及繪制)用OpenCV的庫(kù)函數(shù)實(shí)現(xiàn)。相機(jī)型號(hào)是微視工業(yè)黑白面陣相機(jī)MVC-610DAMGE110,幀率110 fps,采集圖像分辨率為659×494。實(shí)驗(yàn)結(jié)果如圖7所示,缺陷輪廓用黑線標(biāo)出。
圖7 實(shí)驗(yàn)結(jié)果圖
實(shí)驗(yàn)中選取100幅尺寸為659×494的缺陷圖像(包括劃痕、晶點(diǎn)),提取特征向量作為標(biāo)準(zhǔn)樣本集,在vs2008上進(jìn)行樣本缺陷分類實(shí)驗(yàn)。圖6中各缺陷目標(biāo)的形態(tài)特征量和分類結(jié)果見(jiàn)表1。
表1 表面缺陷的形態(tài)特征量
實(shí)驗(yàn)結(jié)果表明,本文算法能夠快速、客觀地將缺陷目標(biāo)提取出來(lái),并能獲取準(zhǔn)確的缺陷特征數(shù)據(jù)用于判別缺陷類型,分類正確率達(dá)到92%。算法平均用時(shí)為233 ms(實(shí)驗(yàn)中使用的PC機(jī)CPU 為 Pentium(R)Dual-Core,2.00 GHz,內(nèi)存為 2 GB),該算法在快速性上能夠滿足工業(yè)生產(chǎn)的需求。
本文針對(duì)常見(jiàn)手機(jī)屏表面缺陷的特征,提出了一種基于數(shù)學(xué)形態(tài)學(xué)的表面檢測(cè)方法。首先針對(duì)圖像中存在的噪聲利用中值濾波器消除了椒鹽噪聲;再用灰度形態(tài)學(xué)方法將缺陷圖像分割出來(lái);最后對(duì)提取的形態(tài)特征進(jìn)行分析,確定缺陷分類標(biāo)準(zhǔn),根據(jù)標(biāo)準(zhǔn)判別缺陷類型。結(jié)果表明,這種方法能夠有效地判別缺陷類型,具有速度快、檢測(cè)結(jié)果客觀等特性。
[1] Serra J.Introduction to Mathematical Morphology[M].New York:Academic Press,1982.
[2]Castleman K R.數(shù)字圖像處理[M].朱志剛譯,北京:電子工業(yè)出版社,2000.
[3]劉真.用形態(tài)學(xué)方法進(jìn)行數(shù)字圖像的分析和處理[J].華北電力大學(xué)學(xué)報(bào),1996,23(3):59-64.
[4]王吉暉,偉其,王霞,等.基于數(shù)學(xué)形態(tài)學(xué)的像增強(qiáng)器缺陷的圖像檢測(cè)方法[J].光學(xué)技術(shù)報(bào),2005,31(3):129-131.
[5] Sternberg S R.Gray scale morphology[J].Computer Vision,Graphics,and Image Processing,1986,35(1):333-355.
[6]葉斌,彭嘉雄.基于形態(tài)學(xué)Top-Hat算子的小目標(biāo)檢測(cè)方法[J].中國(guó)圖像圖形學(xué)報(bào),2002,11(7):638-641.
[7]唐世偉,林君.小波變換與中值濾波相結(jié)合圖像去噪方法[J].哈爾濱工業(yè)大學(xué)學(xué)報(bào),2008,40(8):1334-1336.
[8]曾勇.廣義近鄰模式分類研究[D].上海:上海交通大學(xué),2009.
[9]李仁兵,李艾華.馬氏距離法在支持向量機(jī)拒識(shí)區(qū)域中的應(yīng)用[J].信息與控制,2010,3(39):367-372.