王 帆,伍世虔
(1.武漢科技大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,湖北 武漢 430065; 2.武漢科技大學(xué)信息科學(xué)與工程學(xué)院,湖北 武漢 430081)
隨著電子業(yè)的高速發(fā)展,精密設(shè)備對(duì)柔性電路板質(zhì)量的精度要求越來(lái)越高[1]。為了滿足產(chǎn)品質(zhì)量與生產(chǎn)效率,傳統(tǒng)的人工檢測(cè)方法由于效率低下,測(cè)量不準(zhǔn)等問(wèn)題已無(wú)法滿足當(dāng)前的需要[2-3],將機(jī)器視覺(jué)技術(shù)應(yīng)用到電路板檢測(cè)上非常必要[4-6]。
在電路板缺陷檢測(cè)過(guò)程中,圖像的預(yù)處理階段尤為重要。圖像配準(zhǔn)的結(jié)果會(huì)直接影響到缺陷檢測(cè)的結(jié)果[7-9]。對(duì)于一個(gè)實(shí)時(shí)檢測(cè)系統(tǒng)而言,圖像配準(zhǔn)的精度與效率都十分重要。因此在設(shè)計(jì)電路板檢測(cè)系統(tǒng)時(shí),好的配準(zhǔn)方法非常關(guān)鍵[10-11]。國(guó)內(nèi)外已經(jīng)提出了各種不同配準(zhǔn)方法,總的來(lái)說(shuō)可分為2類(lèi):基于區(qū)域的實(shí)現(xiàn)以及基于特征的實(shí)現(xiàn)[12-14]。對(duì)于高分辨率高密度的柔性印刷電路板(FPC)圖像的配準(zhǔn),基于電路板的Mark點(diǎn)對(duì)應(yīng)關(guān)系,使用到了基于區(qū)域的實(shí)現(xiàn)方法。
基于區(qū)域的實(shí)現(xiàn)主要是利用電路板上的特有的形狀進(jìn)行對(duì)應(yīng)配準(zhǔn)[15-17],例如龔偉等人[18]利用連通區(qū)域的特征,通過(guò)匹配實(shí)現(xiàn)配準(zhǔn);黨欣等人[19]利用閉合區(qū)域特征匹配的方法實(shí)現(xiàn)圖像配準(zhǔn)。
利用區(qū)域進(jìn)行配準(zhǔn)的主要問(wèn)題在于,對(duì)應(yīng)的區(qū)域在不同圖像上有不同的表現(xiàn)[20],因此采集圖片的精度會(huì)影響匹配精度。本文利用電路板工程圖解析得到模板圖,根據(jù)矢量圖原理可以得到較完美的區(qū)域圖像,再利用mipmap的原理,實(shí)現(xiàn)多模板的制作,通過(guò)選取不同的模板來(lái)減小采集導(dǎo)致的誤差,并且可以改善高分辨率文件計(jì)算量過(guò)大問(wèn)題。
基于特征的實(shí)現(xiàn)算法,在提取特征比如點(diǎn)、邊緣等要素時(shí),需要大量運(yùn)算[21-22],并且由于電路板圖像分辨率高,致使運(yùn)算量進(jìn)一步增大,導(dǎo)致效率較低[23]。因此本文針對(duì)電路板的復(fù)雜圖像提出一種基于連通域特征的算法。
對(duì)于FPC在線檢測(cè)系統(tǒng),檢測(cè)的實(shí)時(shí)性尤為重要,因此在圖像配準(zhǔn)階段,需要關(guān)注配準(zhǔn)速度與配準(zhǔn)精度是否能達(dá)到檢測(cè)系統(tǒng)的要求。在線檢測(cè)設(shè)備使用固定的工業(yè)相機(jī)采樣,為了保證效率會(huì)對(duì)整塊FPC板進(jìn)行檢測(cè),因此圖像分辨率會(huì)較大,圖像細(xì)節(jié)非常復(fù)雜,對(duì)于運(yùn)動(dòng)的流水線設(shè)備,圖像配準(zhǔn)階段耗時(shí)就需要特別關(guān)注?,F(xiàn)有配準(zhǔn)方法各有特點(diǎn),但在處理時(shí)使用原始圖像會(huì)出現(xiàn)分辨率過(guò)大的問(wèn)題,從而影響處理速度。
基于模板的方法是通過(guò)已解析出的模板圖的mipmap采樣處理來(lái)實(shí)現(xiàn)配準(zhǔn),而不一定直接使用到模板圖本身,因此在算法實(shí)際運(yùn)行時(shí)可以減少計(jì)算量從而提升效率。而對(duì)于測(cè)試圖像則使用多重采樣方法,從而獲得更好的圖像質(zhì)量。
mipmap是一種紋理圖縮放存儲(chǔ)的技術(shù),可以表示紋理的不同層次細(xì)節(jié),如圖1所示。
圖1 mipmap紋理表示
為了提升匹配速率,可以減小處理圖像的分辨率,因此可以生成模板mipmap貼圖,得到多分辨率模板,以供配準(zhǔn)使用。
實(shí)際處理時(shí)有2種方法:點(diǎn)過(guò)濾與線性過(guò)濾。點(diǎn)過(guò)濾是選取mipmap等級(jí)對(duì)應(yīng)圖片和縮小后的圖片大小最接近的一張,然后進(jìn)行線性插值法或者常量插值法;線性過(guò)濾則是選取2張mipmap等級(jí)相鄰的圖片,使得縮小后的圖片大小在2圖像之間,然后對(duì)2張圖像進(jìn)行常量插值法或者線性插值法分別取得顏色結(jié)果,最后對(duì)2個(gè)顏色結(jié)果進(jìn)行線性插值。根據(jù)圖像實(shí)際情況與算法需求可以選擇不同方法。
多重采樣通過(guò)對(duì)單個(gè)像素進(jìn)行多次采樣來(lái)計(jì)算最終像素顏色,而多次采樣的樣本則來(lái)自該像素覆蓋范圍。例如4倍多重采樣,會(huì)根據(jù)周?chē)?個(gè)像素位置以及顏色狀態(tài)來(lái)進(jìn)行采樣,計(jì)算得到當(dāng)前像素顏色。如圖2所示,利用多重采樣可以獲得反走樣效果。
圖2 多重采樣效果
反走樣后可以更好地改善邊緣鋸齒情況,如圖3所示,此時(shí)采用線性插值法可以獲得更好的邊緣效果。
圖3 常量插值(左)與線性插值(右)
在進(jìn)行連通域處理之前需要進(jìn)行預(yù)處理操作,首先是進(jìn)行去噪、光照校正等處理,在此基礎(chǔ)上進(jìn)行二值化提取可以得到更好的結(jié)果。而對(duì)于模板圖,由于解析得到的圖片不存在光照不均等問(wèn)題,可以直接進(jìn)行二值化處理。
目前,連通域檢測(cè)方法已經(jīng)較為完善,針對(duì)不同情況的圖像都有比較好的解決方法,有的算法一次遍歷即可,有的則需要多次遍歷圖像,因此會(huì)造成不同的時(shí)間復(fù)雜度問(wèn)題。本文使用基于行程的標(biāo)記方法,只對(duì)圖像進(jìn)行一次遍歷,在進(jìn)行行掃描時(shí)記錄連續(xù)的序列,通過(guò)每一行的上下匹配,將序列合并,最后進(jìn)行標(biāo)記得到完整的域即可。連通域檢測(cè)后的結(jié)果如圖4所示。
圖4 連通域檢測(cè)結(jié)果
基于區(qū)域輪廓的形狀特征描述只需要利用到特征的邊界信息,而基于區(qū)域的特征需要更大的計(jì)算量。因此為了提升匹配效率,本文使用DCT描述子來(lái)描述邊界特征信息。
DCT變換類(lèi)似于離散傅里葉變換,不同的是只使用了實(shí)數(shù)部分,相當(dāng)于長(zhǎng)度為2倍的離散傅里葉變換。該變換是對(duì)實(shí)偶函數(shù)進(jìn)行的,常應(yīng)用于圖像壓縮。
一維DCT變換常用形式為:
(1)
(2)
其中f(i)為原始信號(hào),F(xiàn)(u)是DCT變換后的系數(shù),N為原始信號(hào)的點(diǎn)數(shù),c(u)為補(bǔ)償系數(shù)。
而二維DCT變換是在一維變換的基礎(chǔ)上再進(jìn)行了一次DCT變換,即:
(3)
(4)
上面只討論了方陣的情況,當(dāng)對(duì)圖像使用DCT變換時(shí),通過(guò)補(bǔ)齊矩陣信息,變換后再去掉矩陣補(bǔ)齊部分即可。
二維DCT變換是將圖像從空間域轉(zhuǎn)換到頻率域,也就是,計(jì)算得到圖像特征的組成由哪些二維余弦波構(gòu)成。
因?yàn)閳D像是相關(guān)性較大的矩陣,對(duì)圖片進(jìn)行DCT變換后,會(huì)發(fā)現(xiàn)信息集中在左上角,其中左上角是低頻分量,右下角則是高頻分量。變換后的低頻系數(shù)是對(duì)圖像中目標(biāo)的輪廓及灰度分布特性描述,而高頻系數(shù)則是與目標(biāo)形狀細(xì)節(jié)相關(guān)。該算法使用區(qū)域輪廓進(jìn)行圖像匹配操作,F(xiàn)PC板模板圖、灰度圖、二值化結(jié)果如圖5所示,DCT變換結(jié)果如圖6所示。
圖5 模板圖(左)、灰度圖(中)與二值化結(jié)果(右)
圖6 DCT變換結(jié)果
可以看到,F(xiàn)PC圖像經(jīng)DCT變換后,主要信息集中到左上角,而對(duì)于右下部分的不重要信息只需要較少的位置即可存儲(chǔ),噪聲等信息就存儲(chǔ)在這一部分。
圖7為逆變換后得到的結(jié)果,可以發(fā)現(xiàn)圖像信息損失很少。
圖7 逆變換結(jié)果
而后根據(jù)變換后的信息聚集度條件,進(jìn)行匹配運(yùn)算,計(jì)算得到距離值最近的對(duì)應(yīng)輪廓。此時(shí)對(duì)應(yīng)輪廓即為模板與被測(cè)圖相應(yīng)的匹配結(jié)果,最后據(jù)此計(jì)算出相應(yīng)的變換對(duì)齊參數(shù)。
匹配階段使用圖像的DCT描述信息,進(jìn)行輪廓形狀定位的最小距離匹配。參考圖像與待檢圖像兩者描述信息之間的歸一化距離定義如下:
(5)
式中φR表示參考圖像的DCT描述信息,φS表示待檢圖像的DCT描述信息。該方法類(lèi)似計(jì)算歐氏距離,在其基礎(chǔ)上除上φR得到歸一化后的距離。如圖5所示,描述子為一個(gè)二維圖像,將其看作一個(gè)二維矩陣數(shù)據(jù),選取的描述子大小即為p,公式相應(yīng)地計(jì)算了每個(gè)候選對(duì)象輪廓描述信息,候選對(duì)象數(shù)量為k。通過(guò)上式計(jì)算后,最小值的候選對(duì)象即被視為目標(biāo)對(duì)象。
最后,將參考對(duì)象與相應(yīng)的目標(biāo)對(duì)象匹配計(jì)算得到平移、旋轉(zhuǎn)等參數(shù),由兩者輪廓的對(duì)應(yīng)的匹配點(diǎn)信息,根據(jù)仿射變換原理可求得仿射變換矩陣,此結(jié)果即為對(duì)應(yīng)圖像的變換信息。
模板圖如圖8所示,為便于觀察,使用程序?qū)D片進(jìn)行一定角度的旋轉(zhuǎn)以及一定的平移,變換結(jié)果如圖9所示,待測(cè)變換圖配準(zhǔn)后結(jié)果如圖10所示。
圖8 原圖
圖9 變換后的待測(cè)圖
圖10 配準(zhǔn)結(jié)果圖
可以看到,結(jié)果使用肉眼觀察時(shí),效果較佳,具體效果見(jiàn)下文實(shí)驗(yàn)分析。
綜上,本算法流程如圖11所示。
圖11 算法流程
采用本文提到的mipmap對(duì)模板進(jìn)行采樣,測(cè)試模板分辨率為5183×5907,分別采用不同等級(jí)的mipmap圖像進(jìn)行處理,而后使用算法平移得到多組平移圖像數(shù)據(jù),x、y軸每次平移固定距離。同樣,使用算法旋轉(zhuǎn)得到多組角度數(shù)據(jù),分別計(jì)算出均方誤差(MSE)與平均誤差(MAE)大小,結(jié)果如表1所示。
表1 不同等級(jí)mipmap計(jì)算平移、旋轉(zhuǎn)結(jié)果
從表1可以得到,原圖計(jì)算準(zhǔn)確率更高,但是相對(duì)地圖像分辨率也更大,而高分辨率意味著大計(jì)算量,因此效率相對(duì)而言非常低下。從表中0.5與0.3等級(jí)的采樣結(jié)果可以看到,此時(shí)算法處理誤差已經(jīng)較小,同時(shí)計(jì)算時(shí)間有很大提升。因此在實(shí)際生產(chǎn)中,使用該方法更有利,同時(shí)由于模板預(yù)處理可以事先處理,因此不需要占用計(jì)算時(shí)間,而與原圖相比更小的分辨率意味著更少的資源占用,更利于不同機(jī)器的運(yùn)行。
此外,將本文算法與一般的連通域匹配算法以及基于SURF的特征點(diǎn)匹配算法進(jìn)行對(duì)比,隨機(jī)產(chǎn)生平移量與旋轉(zhuǎn)量,分別計(jì)算不同等級(jí)下的誤差以及相應(yīng)的時(shí)間消耗,結(jié)果如表2所示。
表2 本文算法與連通域匹配算法、特征點(diǎn)匹配算法對(duì)比
由表2可以看出使用原圖時(shí)2種算法誤差基本一致,但相應(yīng)的基本匹配算法耗時(shí)長(zhǎng);而在使用mipmap處理后,用時(shí)都明顯減少,而本文算法速度方面仍有優(yōu)勢(shì),誤差方面,匹配算法誤差波動(dòng)變大,而本文算法較為穩(wěn)定。初步分析是由分辨率變小后,原圖輪廓出現(xiàn)模糊、鋸齒等現(xiàn)象,導(dǎo)致直接匹配效果變差。算法使用DCT變換產(chǎn)生的描述信息進(jìn)行匹配,所受干擾會(huì)更小,因此本文算法應(yīng)用到實(shí)時(shí)檢測(cè)系統(tǒng)上時(shí)具有一定優(yōu)勢(shì)。另一方面,基于點(diǎn)特征的匹配算法效率相較而言更低,而精度則相對(duì)較高,通過(guò)分析測(cè)試圖像,發(fā)現(xiàn)圖像較小細(xì)節(jié)很多,因此檢測(cè)特征點(diǎn)時(shí)花費(fèi)了很多時(shí)間。
考慮到mipmap影響分辨率,會(huì)直接影響到處理效率,因此不做更多討論。然后,使用如圖12~圖14所示的多個(gè)電路板圖像進(jìn)行比較實(shí)驗(yàn),具體結(jié)果如表3所示。
圖12 實(shí)驗(yàn)圖1
圖13 實(shí)驗(yàn)圖2
圖14 實(shí)驗(yàn)圖3
表3 使用其他圖像實(shí)驗(yàn)對(duì)比結(jié)果
分析表3可以發(fā)現(xiàn),特征點(diǎn)算法精度更高,而在多組實(shí)驗(yàn)中,其效率都較低??梢缘贸?,針對(duì)此類(lèi)型的電路板圖像而言,因其圖像細(xì)節(jié)相對(duì)其他圖像要多得多,因此對(duì)于特征檢測(cè)效率有很大影響;同樣地,細(xì)節(jié)過(guò)多也會(huì)影響連通域的檢測(cè),與特征檢測(cè)相比較,則影響較小。而連通域方法精度則較差,因此具體工業(yè)實(shí)現(xiàn)時(shí),可能需要一定的優(yōu)化以符合生產(chǎn)要求。
根據(jù)多次實(shí)驗(yàn)數(shù)據(jù)的上下波動(dòng),可以知道,圖像的細(xì)節(jié)特征很大程度上決定了算法的效率,因此實(shí)際應(yīng)用時(shí)需要特別分析比較;此外,算法的精度方面,由于算法會(huì)根據(jù)多對(duì)匹配數(shù)據(jù)進(jìn)行運(yùn)算,因此當(dāng)圖片細(xì)節(jié)方面變化不是很大時(shí)并不會(huì)有很大影響。
連通域算法在圖像缺陷檢測(cè)方面已獲得廣泛應(yīng)用,本文使用mipmap處理模板,生成多分辨率模板,從而加快配準(zhǔn)速度。此外,多重采樣技術(shù)處理被測(cè)圖片,可以改善圖片質(zhì)量,有利于輪廓的識(shí)別與信息提取,同時(shí)該圖片還可為后續(xù)缺陷檢測(cè)過(guò)程提供更好的處理效果。而使用到的DCT描述子,可以生成輪廓信息描述,對(duì)連通域輪廓匹配有更好的幫助,同時(shí)一定程度上減少了噪聲、光照等的影響。實(shí)驗(yàn)表明,該算法提高了電路板配準(zhǔn)的效率,同時(shí)可以保證較好的精度。