家建奎 ,齊 敏 ,李 珂
(1.西北工業(yè)大學(xué) 電子信息學(xué)院,陜西 西安 710129;2.西北工業(yè)大學(xué) 自動(dòng)化學(xué)院,陜西 西安 710129)
隨著近年來(lái)電子信息產(chǎn)業(yè)的迅速發(fā)展,表面貼裝技術(shù)(Surface Mount Technology,SMT)產(chǎn)業(yè)由于其高密度、焊點(diǎn)缺陷率低、生產(chǎn)流程易實(shí)現(xiàn)自動(dòng)化等優(yōu)點(diǎn)得到了快速的增長(zhǎng)。在SMT生產(chǎn)中,通常會(huì)在印刷電路板(Printed Circuit Board,PCB)的對(duì)角位置設(shè)置兩個(gè)定位標(biāo)志符,作為后續(xù)的定位標(biāo)準(zhǔn)[1]。因此,標(biāo)志符的精確識(shí)別將直接影響到整個(gè)設(shè)備定位的準(zhǔn)確性。通常標(biāo)志符有許多形狀,比如圓形和直線型的正方形、三角形、十字形等,其中直線型的標(biāo)識(shí)符研究較少。為了精確地檢測(cè)識(shí)別標(biāo)志符,需要對(duì)標(biāo)志符進(jìn)行邊緣擬合,實(shí)際中由于多種因素的影響,直線型標(biāo)識(shí)符被高像素的相機(jī)拍攝出來(lái)的圖像邊緣并不很直,拐角處的直角也帶有一定的弧度,這會(huì)影響到后續(xù)的標(biāo)志符高精度定位,因此,有必要對(duì)PCB中的標(biāo)志符做進(jìn)一步的邊緣擬合,使得其成為標(biāo)準(zhǔn)的正方形、十字形。
常見(jiàn)的直線邊緣擬合方法有Hough變換[2-3]、最小二乘擬合[4]、矩形模板[5]等。Hough變換檢測(cè)直線應(yīng)用十分廣泛,具有抗噪聲能力強(qiáng),連接共線短直線的優(yōu)點(diǎn),但是檢測(cè)出來(lái)的直線段數(shù)目眾多,分布密集,很容易將屬于不同直線的點(diǎn)誤認(rèn)為屬于同一直線,結(jié)果很不理想。最小二乘擬合直線的方法是最常用的直線擬合,該方法將邊緣像素提取出來(lái)并組成列表,然后對(duì)該列表進(jìn)行直線段擬合,其中tolerance為偏離直線的最大距離,當(dāng)超過(guò)該距離后,直線段就會(huì)一分為二。這種方法通常存在著兩個(gè)問(wèn)題:1)結(jié)果受閾值選取的影響較大,對(duì)閾值的依賴性較強(qiáng)。2)當(dāng)對(duì)不同的標(biāo)志符進(jìn)行處理時(shí),由于不同形狀的目標(biāo)對(duì)擬合的tolerance要求不同,導(dǎo)致所得結(jié)果不理想。矩形模板的方法只針對(duì)矩形目標(biāo)有效,具有很強(qiáng)的局限性。當(dāng)目標(biāo)為十字形,或者由兩個(gè)矩形塊拼接而成時(shí),矩形模板都無(wú)法得到準(zhǔn)確的結(jié)果。
因此,針對(duì)PCB板中形狀為正方形、十字形和正方形拼接的標(biāo)志符,本文首先利用閾值分割、邊緣檢測(cè)等方法提取出PCB圖像中標(biāo)志符的二值圖像,接著利用Hough變換檢測(cè)出目標(biāo)形狀的主軸,最后利用塊處理方法對(duì)提取出的標(biāo)志符區(qū)域進(jìn)行直線化處理,該方法在有效避免閾值選取的同時(shí),保證了最終提取出的標(biāo)志符輪廓具有邊緣直線性和直角特性。
針對(duì)標(biāo)準(zhǔn)Hough變換[6]中計(jì)算量大,占用內(nèi)存多等缺點(diǎn),Galamhos等[7]提出了一種改進(jìn)的概率霍夫變換,這種方法將圖像數(shù)據(jù)映射到參數(shù)空間中具有較大概率的單元塊,而非所有的單元塊,因此大大減少了投票數(shù),提高了編程效率。具體的概率霍夫變換算法如下:
1)檢查輸入圖像,如果是空的就退出程序。
2)從輸入圖像中隨機(jī)選取一個(gè)像素,更新累加器。
3)將選取的像素從輸入圖像中移除。
4)檢查累加器中的峰值是否因?yàn)樾孪袼囟^(guò)了閾值l,如果沒(méi)有就返回步驟1)。
5)根據(jù)累加器中的峰值確定直線方向,并找到該方向上的最長(zhǎng)直線段,這里的直線段
包括了連續(xù)的和間隔不超過(guò)給定閾值的不連續(xù)直線。
6)將上一步中得到的直線段像素從輸入圖像中移除。
7)將步驟5)中得到的直線段像素對(duì)應(yīng)的累加器全部置零。
8)如果直線段長(zhǎng)度大于允許的最小長(zhǎng)度,則將其加入輸出列表中。
9)返回到步驟 1)。
在本文中,利用改進(jìn)的概率霍夫變換檢測(cè)出PCB板上的標(biāo)志符的主軸,即利用霍夫變換檢測(cè)出的最長(zhǎng)直線段。如圖1所示,直線段l表示檢測(cè)出的正方形標(biāo)志符主軸。
圖1 主軸l與x軸夾角thetaFig.1 The angle theta between domain line l and x axis
對(duì)于十字形、正方形和由正方形拼接的標(biāo)志符而言,它們的邊緣都是直線,角度都是直角,根據(jù)這樣的特點(diǎn),本文提出了塊處理的方法,將標(biāo)志符區(qū)域劃分為許多小塊的區(qū)域,根據(jù)小塊中標(biāo)志符區(qū)域所占的比重,確定小塊是否屬于標(biāo)志符區(qū)域。
在圖1中,設(shè)theta角為標(biāo)志符區(qū)域主軸l與圖像坐標(biāo)系中x軸正方向的夾角,單位為度。以主軸一端為定點(diǎn),將目標(biāo)區(qū)域輪廓旋轉(zhuǎn)至主軸與圖像坐標(biāo)系的坐標(biāo)軸平行,當(dāng)時(shí),將標(biāo)志符區(qū)域輪廓旋轉(zhuǎn)至主軸與圖像坐標(biāo)系的x軸平行;當(dāng)時(shí),將標(biāo)志符區(qū)域輪廓旋轉(zhuǎn)至主軸與圖像坐標(biāo)系的y軸平行。具體的坐標(biāo)變換公式如下:
經(jīng)過(guò)上述步驟之后,我們得到了標(biāo)志符區(qū)域的正視圖,即標(biāo)志符邊緣處于平行或垂直的方向。如圖2所示。
圖2 標(biāo)志符區(qū)域被分割為許多unit單元塊。Fig.2 The mark region divided by unit
將上一步中得到的標(biāo)志符區(qū)域以x,y軸為邊等間隔分塊,如圖2所示,間隔為7*7個(gè)像素(具體大小值根據(jù)拍攝圖像而定)。每一個(gè)分塊定義為一個(gè)單元塊unit,期間要保證區(qū)域的4個(gè)邊界都與建筑物區(qū)域的輪廓相切,避免最后的圖像尺寸發(fā)生改變。
在圖2中,由上到下,至左而右逐行掃描各單元塊,計(jì)算各單元塊中標(biāo)志符區(qū)域的面積與單元塊面積的比值:
其中,Amark是單元塊中標(biāo)志符區(qū)域的面積,Aunit為單元塊的面積,面積單位均為像素個(gè)數(shù)。
當(dāng)Percentage大于等于0.45時(shí),填充該單元塊為標(biāo)志符區(qū)域。否則填充該單元塊為背景顏色。掃描結(jié)束后,最后保留的所有單元塊組成了完整的標(biāo)志符區(qū)域,跟蹤區(qū)域的邊緣就可以得到直線化的標(biāo)志符輪廓。
處理完成之后,將得到的直線化輪廓圖以主軸的定點(diǎn)為圓心,旋轉(zhuǎn)-theta角度調(diào)整回原始位置,就可以得到待識(shí)別[8]的標(biāo)志符區(qū)域的直線化輪廓圖。該方法不僅對(duì)正方形的標(biāo)志符有效,對(duì)十字形和多正方形拼接的標(biāo)志符也同樣起作用。
圖3 正方形標(biāo)志符原始圖及其識(shí)別檢測(cè)結(jié)果Fig.3 Square mark original picture and its detection result
圖4 拼接正方形標(biāo)志符原始圖及其識(shí)別檢測(cè)結(jié)果Fig.4 Splicing rectangle mark original picture and its detection result
本文針對(duì)PCB板上的正方形、十字形標(biāo)志符進(jìn)行了輪廓提取試驗(yàn),并與利用最小二乘法擬合后的標(biāo)志符做了對(duì)比。圖3~圖5分別是正方形、拼接正方形、十字形標(biāo)志符的原始圖像與對(duì)應(yīng)的輪廓提取結(jié)果圖。從中可以看出,本方法提取出的正方形標(biāo)志符區(qū)域在邊緣區(qū)域具有直線的特性,并且在容易失真的角度區(qū)域具有直角的特性,完全符合實(shí)際的正方形標(biāo)志符。相反,利用最小二乘擬合對(duì)標(biāo)志符輪廓提取的結(jié)果顯示邊緣由多個(gè)線段連接組成,更重要的是在標(biāo)志符輪廓的角度區(qū)域并非是直角,而是由多條線段組成的鈍角,這些與實(shí)際的標(biāo)志符有很大的失真,因此,本文提出的方法具有更高的精確度。
本文針對(duì)現(xiàn)有識(shí)別檢測(cè)正方形、拼接正方形、十字形標(biāo)志符的方法的不足,提出了一種新的直線化的標(biāo)志符輪廓精確提取算法。該方法首先將PCB板上的標(biāo)志符標(biāo)記圖像由灰度圖轉(zhuǎn)化為二值圖,然后利用改進(jìn)的概率霍夫變換檢測(cè)出標(biāo)志符區(qū)域的主軸,最后使用塊處理的方法對(duì)標(biāo)志符區(qū)域進(jìn)行了直線化輪廓提取。本方法有效的避免了傳統(tǒng)最小二值擬合方法中的閾值選取問(wèn)題,同時(shí)也解決了邊緣夾角區(qū)域的直角化和輪廓邊緣的直線化的問(wèn)題,有利于標(biāo)志符的高精度定位。本方法不僅針對(duì)正方形的標(biāo)志符有效,對(duì)其他的具有直角特性的多邊形PCB標(biāo)志符同樣有效。
[1]熊光潔,馬樹(shù)元,劉瑞禎.PCB檢測(cè)中圓Mark的快速精確定位[J].計(jì)算機(jī)工程,2012,11(21):211-213.XIONG Guang-jie,MA Shu-yuan,LIU Rui-zhen.Fast precise positioning of circular mark in PCB inspection[J].Computer Engineering,2012,11(21):211-213.
[2]張廣斌,束洪春,于繼來(lái).基于Hough變換直線檢測(cè)的行波波頭標(biāo)定[J].中國(guó)電機(jī)工程學(xué)報(bào),2013,19(6):165-173.ZHANG An-bin,SHU Hong-chun,YU Ji-lai.Surge identification for travelling wave based on straight lines detection via hough transform[J].Proceedings of the CSEE,2013,19(6):165-173.
[3]張江鑫,沈小蘭,王輝,等.快速隨機(jī)Hough變換多直線檢測(cè)算法[J].浙江工業(yè)大學(xué)學(xué)報(bào),2013(3):346-350.ZHANG Jiang-xin,SHEN Xiao-lan,WANG Hui,et al.Fast multi-line detection algorithm using randomized hough transform [J].Journal of Zhejiang University of Technology(Social Science),2013(3):346-350.
[4]范文博,王文龍,陳岳龍,等.最小二乘直線擬合方法及其在同位素地質(zhì)年代學(xué)中的應(yīng)用研究 [J].地質(zhì)論評(píng),2013(5):801-815.FAN Wen-bo,WANG Wen-long,CHEN Yue-long,et al.Methods for least squares fitting of a straight line and their application in geochronology[J].Geological Review,2013(5):801-815.
[5]崔世勇.高分辨率遙感影像建筑物半自動(dòng)提取方法研究[D].北京:中國(guó)測(cè)繪科學(xué)研究院,2009.
[6]HOUGH P C.Machine analysis of bubble chamber pictures[C]//Proc.Int.Conf.High Energy Accelerators and Inst,1959(55):554-558.
[7]GALAMHOS C,MATAS J,KITTLER J.Progressive probabilistic Hough transform for line detection[C]//Computer Vision and Pattern Recognition,1999.Los Alamitos:IEEE Computer Society,1999:554-560.
[8]張蒙正,馬杰.冪律型流體射流破碎建模和實(shí)驗(yàn)問(wèn)題探討[J].火箭推進(jìn),2011(4):1-6,41.Zhang Meng-zheng,Ma Jie.Discussion about modeling and experiment problem of power-law fluids[J].Journal of Rocket Propulsion,2011(4):1-6,41.
圖5 十字形標(biāo)志符原始圖及其識(shí)別檢測(cè)結(jié)果Fig.5 Cross mark original picture and its detection result