孫維康,劉曰濤,黃 浩,肖春雷
(山東理工大學(xué) 機(jī)械工程學(xué)院,山東 淄博 255049)
熔融石英陶瓷坩堝是生產(chǎn)多晶硅鑄錠過(guò)程中不可替代的關(guān)鍵消耗材料[1]。在使用坩堝前,必須經(jīng)過(guò)極其嚴(yán)格的品質(zhì)檢測(cè)[2],確保坩堝不存在裂紋。因此,坩堝產(chǎn)品質(zhì)量檢測(cè)是生產(chǎn)中必不可少的重要環(huán)節(jié)[3]。大多數(shù)企業(yè)依然靠人工目測(cè)來(lái)檢驗(yàn)坩堝的缺陷。工人的檢測(cè)效率低并且勞動(dòng)強(qiáng)度大。對(duì)于人工主觀判別的局限性[4],檢測(cè)人員無(wú)法對(duì)檢測(cè)的標(biāo)準(zhǔn)做到統(tǒng)一,往往會(huì)出現(xiàn)漏檢與誤檢測(cè)等問(wèn)題[5]。利用機(jī)器視覺(jué)技術(shù)能夠有效避免人工檢測(cè)的不足,提高自動(dòng)化檢測(cè)水平[6]。
目前,機(jī)器視覺(jué)技術(shù)在工業(yè)檢測(cè)領(lǐng)域的應(yīng)用越來(lái)越廣泛,文獻(xiàn)[7]提出的坩堝缺陷檢測(cè)對(duì)于采集的圖像進(jìn)行灰度化、圖像強(qiáng)度反轉(zhuǎn)、背景差等預(yù)處理方法后,再進(jìn)行迭代法閾值分割、特征提取。文獻(xiàn)[8]提出基于紋理特征編碼的帶鋼表面缺陷檢測(cè)方法,利用高斯濾波器的差分響應(yīng)模擬視覺(jué)的紋理感知模型,然后對(duì)疑似缺陷位置進(jìn)行紋理特征的提取與編碼。文獻(xiàn)[9]提出基于拉普拉斯-高斯算子的實(shí)時(shí)濃淡補(bǔ)正算法實(shí)現(xiàn)沖壓件表面缺陷的強(qiáng)度,使用大津法和形態(tài)學(xué)操作實(shí)現(xiàn)缺陷的提取。
從以上的研究成果看,坩堝缺陷的檢測(cè)還存在以下問(wèn)題:一是存在諸多其他產(chǎn)品的表面缺陷檢測(cè)方法并不適用于坩堝缺陷檢測(cè)[10],二是對(duì)于坩堝表面的缺陷特征不能夠?qū)崿F(xiàn)很好的識(shí)別。針對(duì)以上存在的問(wèn)題,本文針對(duì)熔融石英坩堝設(shè)計(jì)出一套應(yīng)用于坩堝檢測(cè)的視覺(jué)處理方案。通過(guò)對(duì)采集的圖像進(jìn)行分析處理,T2FNN模糊神經(jīng)網(wǎng)絡(luò)檢測(cè)算法能夠更為快速、準(zhǔn)確的識(shí)別坩堝表面的缺陷。實(shí)現(xiàn)了缺陷檢測(cè)的高效率和高準(zhǔn)確率。
缺陷檢測(cè)系統(tǒng)整體是由硬件系統(tǒng)和軟件系統(tǒng)構(gòu)成[11],視覺(jué)硬件系統(tǒng)實(shí)現(xiàn)對(duì)工件表面圖像的采集與傳輸;機(jī)器人移動(dòng)系統(tǒng)完成流水化作業(yè),提高自動(dòng)化程度;上位機(jī)作為軟件系統(tǒng)的載體,實(shí)現(xiàn)其圖像分析處理、顯示、存儲(chǔ)、及相關(guān)數(shù)據(jù)的輸入與輸出等功能。系統(tǒng)結(jié)構(gòu)圖如圖1所示。
圖1 系統(tǒng)結(jié)構(gòu)圖
視覺(jué)硬件系統(tǒng)由CMOS工業(yè)相機(jī)、鏡頭、光源組成。CMOS相機(jī)[12]和鏡頭完成圖像的采集,集成在機(jī)器人末端夾具上,如圖1方形框內(nèi)所示。根據(jù)廠家提供的裂紋缺陷參數(shù),長(zhǎng)度在10mm左右,寬度在0.3mm~1.0mm左右,考慮到檢測(cè)的準(zhǔn)確性、圖像處理的穩(wěn)定性,使用5個(gè)像素代表最小寬度;坩堝最大尺寸G7型號(hào)的表面有1200mm×1200mm和1200mm×540mm,為了保證檢測(cè)效率的高效性,將視場(chǎng)大小定為270mm ×202.5mm,機(jī)器人根據(jù)劃分表面的區(qū)域進(jìn)行采集;使用圖像分辨率為2000萬(wàn)像素(5120×3840)能夠達(dá)到檢測(cè)要求,因此選用JAI公司的SP-20000M-PMCL高速高分辨率面陣相機(jī),數(shù)據(jù)傳輸接口為Mini Camera Link,傳輸速率高達(dá)2.38GB/s,能夠快速傳輸獲得的圖像。曝光方式為global shutter[13](全局快門),相機(jī)的Sensor(傳感器)所有像元同時(shí)收集光線,即整幅圖像在同一時(shí)間曝光完成,避免了逐行曝光模式不同行像元的曝光時(shí)間的不同。
坩堝的石英晶粒主要成分為SiO2,但是含有AL、Fe、Mg、Ti等元素的微量成分,并且原料晶體內(nèi)部含有很多微氣泡,使得坩堝看上去呈絮狀不透明,再加上坩堝壁厚20mm左右,因此坩堝并不完全屬于可透射物體。通過(guò)實(shí)驗(yàn)證明,采用漫射背光照明[14]可以用于檢測(cè)被測(cè)物的內(nèi)部狀態(tài),避免使用正面照明造成的反射。紅光的波長(zhǎng)范圍約為625~760nm,波長(zhǎng)大于坩堝的晶粒內(nèi)徑尺寸,易發(fā)生衍射導(dǎo)致紅光全部穿過(guò)坩堝表面;藍(lán)光的波長(zhǎng)范圍約為455~492nm,波長(zhǎng)較短,無(wú)法穿過(guò)坩堝表面使之成像。因此通過(guò)多次試驗(yàn)選擇LED白色平板光源,光源如圖1圓形框所示,并且圖像采集處于暗場(chǎng),最大限度地避免外部環(huán)境對(duì)圖像表面產(chǎn)生干擾,提高圖像采集的質(zhì)量。
視覺(jué)軟件缺陷檢測(cè)系統(tǒng)由圖像采集模塊、圖像處理模塊、圖像界面顯示、圖像數(shù)據(jù)存儲(chǔ)以及數(shù)據(jù)通信部分組成。
針對(duì)光源透射的不穩(wěn)定性、缺陷的非連續(xù)性,導(dǎo)致采集的圖像在明亮程度上相差很大,而圖像質(zhì)量的好壞直接影響后面檢測(cè)缺陷算法的設(shè)計(jì)與效果性,因此圖像采集模塊根據(jù)圖像質(zhì)量采取了自適應(yīng)灰度值的曝光時(shí)間。圖像采集的質(zhì)量獲得很大的提升,成為圖像處理模塊檢測(cè)缺陷的關(guān)鍵。
圖像處理模塊是用C++語(yǔ)言編寫的缺陷檢測(cè)算法,并嵌入到MFC框架;圖像處理的圖片會(huì)實(shí)時(shí)地顯示在屏幕上;處理完成后的圖像會(huì)在5ms內(nèi)以8位JPEG圖像格式保存在計(jì)算機(jī)硬盤以供后續(xù)查看校驗(yàn),相應(yīng)的缺陷數(shù)據(jù)信息以EtherCAT工業(yè)總線的形式與機(jī)器人控制柜和PLC進(jìn)行數(shù)據(jù)交換。
圖像處理算法檢測(cè)流程為首先將相機(jī)中采集的圖像提取出來(lái),進(jìn)行圖像分割,并通過(guò)長(zhǎng)、短軸長(zhǎng)和長(zhǎng)寬比進(jìn)行初次特征提取,針對(duì)帶有疑似缺陷的特征進(jìn)行二次特征提取,然后利用T2FNN模糊神經(jīng)網(wǎng)絡(luò)算法對(duì)缺陷特征進(jìn)行識(shí)別,最后將本次檢測(cè)圖像的結(jié)果傳輸給PLC進(jìn)行數(shù)據(jù)統(tǒng)計(jì),流程圖如圖2所示。
圖2 系統(tǒng)算法流程圖
坩堝晶粒分布的不均勻性和坩堝壁厚的不同導(dǎo)致透射光程度差異明顯,因此采用自適應(yīng)性灰度值的曝光控制算法會(huì)極大的改善圖片的質(zhì)量,具體流程為:
(1)對(duì)任意一只坩堝的表面所有位置進(jìn)行不同曝光時(shí)間的圖像采集,確定每個(gè)位置的初始曝光值T,并進(jìn)行每張圖像的直方圖統(tǒng)計(jì)和平均灰度值的計(jì)算,對(duì)相應(yīng)的數(shù)據(jù)進(jìn)行記錄,獲得理想照片的平均灰度值范圍。
(2)對(duì)待檢測(cè)坩堝每個(gè)位置的首次圖像采集使用初始化曝光時(shí)間T,不進(jìn)行圖像缺陷算法的識(shí)別,只對(duì)首次圖像進(jìn)行直方圖統(tǒng)計(jì),計(jì)算平均灰度值m,然后和理想灰度閾值范圍做比較,若滿足公式(1)則初次采集圖像滿足條件可以作為待檢測(cè)圖像,進(jìn)行圖像處理算法檢測(cè)。
ml≤m≤mh
(1)
式中,m是待檢坩堝每個(gè)位置初次采集圖像的平均灰度值,ml為理想灰度范圍低閾值;mh為理想灰度范圍高閾值。
若m不在范圍內(nèi),按照公式(2)更改下次曝光時(shí)間T,即當(dāng)m
(2)
曝光控制算法大幅度改善了部分照片的圖像質(zhì)量,如圖3a所示為初始采集圖,圖像質(zhì)量差,經(jīng)過(guò)曝光控制算法的后續(xù)采集獲得圖3b,圖像質(zhì)量獲得大幅度的提升,為圖像的后續(xù)處理奠定基礎(chǔ),實(shí)際測(cè)試迭代次數(shù)在3次以內(nèi),在不考慮曝光時(shí)間的情況下,迭代法控制曝光時(shí)間在70ms以內(nèi)。
(a) 初始采集圖
(b) 迭代后曝光圖 圖3 曝光控制算法效果對(duì)比圖
針對(duì)坩堝表面圖像存在噪聲干擾、透射光照不均、背景灰度變化極度混亂等情況的復(fù)雜背景圖像,使用傳統(tǒng)的全局單一閾值不能夠滿足整幅圖像的實(shí)際情況,難以進(jìn)行十分有效的圖像分割,局部閾值分割算法[15]的自適應(yīng)能力有限,依然無(wú)法對(duì)復(fù)雜圖像進(jìn)行完美的分割,再加上坩堝晶粒的大小不一致,通過(guò)晶粒的光亮產(chǎn)生的亮斑與裂紋缺陷混在一起加大檢測(cè)的難度,針對(duì)這類復(fù)雜的坩堝表面圖像,通過(guò)對(duì)大量坩堝裂紋缺陷的特征進(jìn)行分析,本文采用一種局部動(dòng)態(tài)區(qū)域的閾值分割的圖像分割算法。具體流程為:
(1)根據(jù)梯度值的變化,對(duì)原圖像進(jìn)行若干部分的劃分,分為四周圖像Q1、Q2、Q3、Q4和中心圖像Q5,如圖4所示;
(2)對(duì)每個(gè)子圖像進(jìn)行直方圖統(tǒng)計(jì),計(jì)算四周和中心圖像的平均灰度值,當(dāng)灰度值相差大于設(shè)定的閾值K,則視為區(qū)域分割條件滿足。
圖4 圖像劃分區(qū)域
圖4圖像劃分區(qū)域?qū)Σ煌惖膮^(qū)域圖像采用閾值分割。設(shè)單一閾值為K,則閾值K為公式(3):
K=m-mn
(3)
式中,mn為均值(47×47掩模)平滑后的圖像平均灰度值,遍歷原始圖像的每個(gè)像素,對(duì)于滿足公式(4)的所有像素點(diǎn)予以保留形成感興趣區(qū)域ROI(region of interest)。
f(x,y)>=g(x,y)+K
(4)
式中,f(x,y)為原始圖像第(x,y)坐標(biāo)的像素值,g(x,y)為均值平滑濾波圖像第(x,y)坐標(biāo)的像素值。通過(guò)遍歷獲取ROI獲得如圖5所示的動(dòng)態(tài)閾值分割圖。
圖5 動(dòng)態(tài)閾值分割
針對(duì)傳統(tǒng)的特征識(shí)別只是針對(duì)提取的特征進(jìn)行閾值參數(shù)的判斷,雖然無(wú)法達(dá)到特征識(shí)別的準(zhǔn)確度,但是可以根據(jù)長(zhǎng)短軸長(zhǎng)與長(zhǎng)寬比特征初步識(shí)別出疑似缺陷ROI,如圖6所示,因此采用神經(jīng)網(wǎng)絡(luò)算法替代傳統(tǒng)算法使得特征識(shí)別更能接近人的思維,根據(jù)長(zhǎng)軸長(zhǎng)、短軸長(zhǎng)、長(zhǎng)寬比、面積、角度、緊密度等特征進(jìn)行訓(xùn)練識(shí)別,達(dá)到理想的效果。
圖6 疑似ROI
神經(jīng)網(wǎng)絡(luò)在模式識(shí)別方面具有非常理想的性能,但是它們很難對(duì)它們的預(yù)測(cè)做出解釋。П型模糊系統(tǒng)可以解釋復(fù)雜系統(tǒng)的規(guī)則和非精確信息,并且可以處理與系統(tǒng)結(jié)構(gòu)、過(guò)程和測(cè)量等相關(guān)變量的不確定性,但它們無(wú)法自動(dòng)獲取做出這些決定的規(guī)則。本文T2FNN(Type 2 Fuzzy Neural Network)系統(tǒng)充分將兩種技術(shù)相結(jié)合以克服單一技術(shù)的局限性,實(shí)現(xiàn)了二者的互補(bǔ)[16]。T2FNN系統(tǒng)已廣泛應(yīng)用于模式識(shí)別和圖像處理,因此能夠更好的對(duì)于本文的缺陷特征進(jìn)行識(shí)別。П型模糊神經(jīng)網(wǎng)絡(luò)的高斯隸屬函數(shù)結(jié)構(gòu)如圖7所示。
圖7 П型高斯隸屬函數(shù)結(jié)構(gòu)圖
(5)
(6)
T2FNN系統(tǒng)結(jié)構(gòu)圖如圖8所示,該系統(tǒng)由三層組成,包括輸入層、隸屬層、輸出層。
圖8 T2FNN系統(tǒng)結(jié)構(gòu)圖
本文中選取6種裂紋缺陷的特征參數(shù),分別為長(zhǎng)軸長(zhǎng)、短軸長(zhǎng)、長(zhǎng)寬比、面積、角度、緊密度等數(shù)據(jù),因此輸入層神經(jīng)元定為m=6。
在輸入層的每個(gè)節(jié)點(diǎn)χi的節(jié)點(diǎn)輸入和輸出可以描述為:
(7)
式中,m表示輸入數(shù)量。符號(hào)上標(biāo)為T2FNN層編號(hào)。
在隸屬層每個(gè)節(jié)點(diǎn)都執(zhí)行П型模糊隸屬函數(shù)[17],該層的輸出是模糊化的輸入節(jié)點(diǎn)。計(jì)算每個(gè)輸入節(jié)點(diǎn)相應(yīng)的П型模糊隸屬函數(shù)的隸屬度值。
(8)
(9)
式中,δij和mij分別是第i個(gè)輸入變量 ,第j項(xiàng)的高斯隸屬函數(shù)的標(biāo)準(zhǔn)偏差值和平均值。
輸出層提供了輸入節(jié)點(diǎn)到輸出的映射。第k個(gè)節(jié)點(diǎn)的輸出為:
(10)
搭建的坩堝缺陷檢測(cè)系統(tǒng)試驗(yàn)如圖1所示。視覺(jué)硬件系統(tǒng)進(jìn)行采集圖像,視覺(jué)軟件系統(tǒng)進(jìn)行圖像處理及數(shù)據(jù)傳輸??刂朴?jì)算機(jī)配置為Intel Core i3-4160,內(nèi)存4G, 128G固態(tài)硬盤加1T機(jī)械硬盤。在windows7系統(tǒng)下,軟件環(huán)境為基于VS2010的C++語(yǔ)言開(kāi)發(fā)工具,并結(jié)合MFC界面設(shè)計(jì)進(jìn)行編程。
選取不同的樣本400個(gè)。其中裂紋缺陷樣本為200個(gè),待檢測(cè)樣本200個(gè)。設(shè)置好訓(xùn)練次數(shù)和誤差指標(biāo)等參數(shù)后進(jìn)行樣本訓(xùn)練。訓(xùn)練樣本如表1所示,訓(xùn)練結(jié)果如表2所示。
表1 訓(xùn)練樣本參數(shù)
表2 T2FNN訓(xùn)練結(jié)果
現(xiàn)抽取具有代表性的2張檢測(cè)樣品的裂紋缺陷圖像檢測(cè)結(jié)果如圖9所示。
(a) 裂紋圖像1 (b) 裂紋圖像1檢測(cè)結(jié)果
(c) 裂紋圖像2 (d) 裂紋圖像2檢測(cè)結(jié)果 圖9 裂紋缺陷檢測(cè)結(jié)果示意圖
在現(xiàn)場(chǎng)環(huán)境中不斷進(jìn)行缺陷檢測(cè),再對(duì)檢測(cè)的坩堝產(chǎn)品進(jìn)行人工復(fù)檢檢測(cè),通過(guò)檢測(cè)系統(tǒng)的結(jié)果與人工復(fù)檢結(jié)果相比對(duì),系統(tǒng)檢測(cè)正確率達(dá)到99%,能夠很好的識(shí)別坩堝裂紋缺陷。并且本檢測(cè)缺陷算法通過(guò)C++語(yǔ)言編程實(shí)現(xiàn),對(duì)于每張照片通過(guò)采集到檢測(cè)結(jié)束整個(gè)過(guò)程的檢測(cè)時(shí)間均不超過(guò)106ms,完全滿足實(shí)時(shí)性的需要。因此該系統(tǒng)已經(jīng)完全可以應(yīng)用于實(shí)踐中。
缺陷檢測(cè)已經(jīng)成為坩堝產(chǎn)品質(zhì)量檢測(cè)過(guò)程中必不可少的重要環(huán)節(jié)。針對(duì)傳統(tǒng)的表面缺陷檢測(cè)不能夠用于坩堝缺陷檢測(cè)與坩堝表面缺陷特征不能很好的識(shí)別等問(wèn)題,本文設(shè)計(jì)的基于機(jī)器視覺(jué)的坩堝缺陷檢測(cè)系統(tǒng),將機(jī)器人與圖像采集模塊完美結(jié)合,實(shí)現(xiàn)了對(duì)于坩堝產(chǎn)品裂紋的檢測(cè),增強(qiáng)了現(xiàn)場(chǎng)實(shí)際環(huán)境的適應(yīng)性,能夠滿足實(shí)際檢測(cè)需求,得到企業(yè)認(rèn)可。自主開(kāi)發(fā)的圖像處理軟件系統(tǒng),T2FNN模糊神經(jīng)網(wǎng)絡(luò)裂紋缺陷識(shí)別算法更加可靠,檢測(cè)結(jié)果能夠達(dá)到99%,檢測(cè)結(jié)果符合企業(yè)的標(biāo)準(zhǔn)。試驗(yàn)結(jié)果表明,該系統(tǒng)具有較強(qiáng)的適應(yīng)性和通用性。因此本研究對(duì)于在線實(shí)時(shí)的檢測(cè)坩堝缺陷提供了可靠的技術(shù)保障。為其他研究提供參考。