專利名稱:基于骨架提取和距離變換來(lái)檢測(cè)印刷電路板缺陷的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及檢測(cè)印刷電路板缺陷的領(lǐng)域,尤其涉及一種基于骨架提取和距離變換 來(lái)檢測(cè)印刷電路板缺陷的方法。
背景技術(shù):
印刷電路板是各種電子產(chǎn)品的主要部件,有“電子產(chǎn)品之母”之稱,它是任何電子 設(shè)備及產(chǎn)品均需配備的,其性能的好壞在很大程度上影響到電子產(chǎn)品的質(zhì)量。幾乎每一種 電子設(shè)備都離不開(kāi)PCB,小到電子手表、計(jì)算器,大到航空航天、軍用武器系統(tǒng)等,都包含各 式各樣,大小各異的PCB板。近年來(lái),隨著生產(chǎn)工藝的不斷提高,PCB正在向超薄型、小元 件、高密度、細(xì)間距方向快速發(fā)展,該趨勢(shì)給質(zhì)量檢測(cè)工作帶來(lái)了很多挑戰(zhàn)和困難。因此PCB 缺陷的檢測(cè)已經(jīng)成為PCB制造過(guò)程中的一個(gè)核心問(wèn)題,是電子產(chǎn)品制造廠商非常關(guān)注的問(wèn) 題。
現(xiàn)有的印刷電路板缺陷檢測(cè)方法很多,使用自動(dòng)光學(xué)檢測(cè)的大致可分為兩類一 是參考比較法,它是將待檢測(cè)PCB與標(biāo)準(zhǔn)PCB逐點(diǎn)比較,或者是把待檢PCB上提取出的特征 與標(biāo)準(zhǔn)PCB上提取出的特征比較,任何差異均被認(rèn)為是潛在的缺陷。參考比較法的優(yōu)點(diǎn)是 概念上直觀,電路實(shí)現(xiàn)簡(jiǎn)單,缺點(diǎn)是要求待檢PCB和標(biāo)準(zhǔn)PCB空間位置的精確對(duì)準(zhǔn),否則檢 測(cè)的虛報(bào)警較多;二是非參考法,它是檢測(cè)PCB是否滿足設(shè)計(jì)規(guī)則,主要是進(jìn)行尺寸校驗(yàn), 即檢查導(dǎo)體和焊盤(pán)等尺寸是否滿足設(shè)計(jì)標(biāo)準(zhǔn)所要求的寬度和間隙,任何與設(shè)計(jì)規(guī)則要求不 符的,均被認(rèn)為是潛在的缺陷,它的優(yōu)點(diǎn)是無(wú)需參考PCB,因而它無(wú)需對(duì)準(zhǔn),缺點(diǎn)是不能檢測(cè) 出滿足設(shè)計(jì)尺寸的缺陷,如PCB上丟失某條導(dǎo)線等。發(fā)明內(nèi)容
針對(duì)上述技術(shù)中存在的不足之處,本發(fā)明提供一種通用性、實(shí)用性強(qiáng)、可將分支刪 除、減少骨架搜索的計(jì)算量及提高PCB板缺陷識(shí)別效率的基于骨架提取和距離變換來(lái)檢測(cè) 印刷電路板缺陷的方法。
為實(shí)現(xiàn)上述目的,本發(fā)明提供一種基于骨架提取和距離變換來(lái)檢測(cè)印刷電路板缺 陷的方法,包括以下步驟
A、通過(guò)查索引表提取單像素骨架;
B、刪除骨架分支;
C、距離值域異常搜索,根據(jù)異常情況將PCB板缺陷分類。
其中,所述步驟A中,包括通過(guò)判斷像素點(diǎn)周圍的八連通域,在保證不影響連通域 數(shù)目的前提下,將無(wú)用點(diǎn)刪除的查索引表法。
其中,所述B步驟包括先通過(guò)檢測(cè)骨架的所有端點(diǎn)和節(jié)點(diǎn),將各分支從骨架中提 取出來(lái);再采用閾值跟蹤算法對(duì)骨架進(jìn)行直接修剪。
其中,所述閾值跟蹤算法步驟包括
設(shè)定計(jì)算像素個(gè)數(shù)的初始閾值N ;
遍歷整幅骨架圖,找出所有的直線端點(diǎn),將其保存;
依次從每一個(gè)端點(diǎn)出發(fā),統(tǒng)計(jì)經(jīng)過(guò)的像素值為黑色的像素個(gè)數(shù)η ;若η > N時(shí),沒(méi)有遇到一個(gè)三交叉點(diǎn),則認(rèn)為該端點(diǎn)沒(méi)有多余分支,再?gòu)钠渌它c(diǎn)出發(fā);反之,如果η < N 時(shí),發(fā)現(xiàn)存在三交叉點(diǎn),則原路返回并把原來(lái)經(jīng)過(guò)的黑像素點(diǎn)的像素值置為白色。
其中,所述C步驟還包括利用八連通區(qū)域搜索距離異常值,具體步驟如下
a、通過(guò)對(duì)骨架圖搜索連通域,記錄每條骨架上所有像素點(diǎn)的橫縱坐標(biāo);
b、通過(guò)對(duì)二值圖搜索連通域,記錄每個(gè)連通區(qū)域所有像素點(diǎn)的橫縱坐標(biāo);
C、計(jì)算每條骨架上的每個(gè)像素點(diǎn)到該連通區(qū)域的邊緣坐標(biāo)點(diǎn)的最短距離值;
d、計(jì)算每條骨架上的平均距離值;
e、比較每個(gè)像素點(diǎn)到邊緣的最短距離d與平均距離值d',若d<d' +n,則為凸起;若d>d' +n,則為凹陷,其中η代表閾值;
f、檢測(cè)PCB板缺陷,檢測(cè)缺陷后,通過(guò)對(duì)數(shù)據(jù)分析,經(jīng)常會(huì)出現(xiàn)缺陷坐標(biāo)聚集現(xiàn)象,可利用坐標(biāo)相近的列為一個(gè)共有缺陷。
本發(fā)明的有益效果是與現(xiàn)有技術(shù)相比,本發(fā)明提供的基于骨架提取和距離變換來(lái)檢測(cè)印刷電路板缺陷的方法,通過(guò)查索引表提取單像素骨架,查索引表能保證在不影響連通域數(shù)目的前提下,將無(wú)用點(diǎn)刪除,能保證提取到的骨架均為單像素,通用性及實(shí)用性強(qiáng);刪除骨架分支和距離值域異常搜索,可以降低計(jì)算偏差又不影響骨架跟蹤的速度和準(zhǔn)確性,可將所有分支刪除,減少骨架搜索的計(jì)算量、減少出現(xiàn)漏檢現(xiàn)象,提高了缺陷識(shí)別效率。
圖1為本發(fā)明的基于骨架提取和距離變換來(lái)檢測(cè)印刷電路板缺陷的方法的步驟流程圖2為本發(fā)明的基于骨架提取和距離變換來(lái)檢測(cè)印刷電路板缺陷的方法的八連通區(qū)域搜索距離異常值的流程圖3為本發(fā)明的基于骨架提取和距離變換來(lái)檢測(cè)印刷電路板缺陷的方法的索引表圖4為本發(fā)明的基于骨架提取和距離變換來(lái)檢測(cè)印刷電路板缺陷的方法的像素點(diǎn)八連通域示意圖5為本發(fā)明的基于骨架提取和距離變換來(lái)檢測(cè)印刷電路板缺陷的方法的九宮格圖。
具體實(shí)施方式
為了更清楚地表述本發(fā)明,下面結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步地描述。
請(qǐng)參閱圖1,本發(fā)明提供的基于骨架提取和距離變換來(lái)檢測(cè)印刷電路板缺陷的方法,包括以下步驟
S1、通過(guò)查索引表提取單像素骨架;
S2、刪除骨架分支;
S3、距離值域異常搜索`,根據(jù)異常情況將PCB板缺陷分類。
請(qǐng)參閱圖3-圖5,在步驟SI中,包括通過(guò)判斷像素點(diǎn)周圍的八連通域,在保證不影響連通域數(shù)目的前提下,將無(wú)用點(diǎn)刪除的查索引表法,在查索引表法中內(nèi)部點(diǎn)、斷點(diǎn)、孤立點(diǎn)和邊界點(diǎn)不能刪除,查索引表的使用方法如下若八連通域周圍區(qū)域是黑色像素點(diǎn),則認(rèn)為價(jià)值為O,為白色則取九宮格中對(duì)應(yīng)的價(jià)值。對(duì)于圖4的中心點(diǎn),圍有三個(gè)白色點(diǎn),將白色點(diǎn)映射到圖5宮格中,它的總價(jià)值為1+4+32 = 37,對(duì)應(yīng)于索引表中得第三十八項(xiàng)。以此類推,對(duì)于圖像中得每個(gè)黑色像素點(diǎn),可根據(jù)周圍八區(qū)域計(jì)算價(jià)值,然后查看索引表中的對(duì)應(yīng)項(xiàng)來(lái)決定是否要保留該點(diǎn)。
在本實(shí)施例中,要實(shí)現(xiàn)骨架分支的剔除,首先通過(guò)檢測(cè)骨架的所有端點(diǎn)和節(jié)點(diǎn),將各分支從骨架中提取出來(lái),但需滿足三個(gè)條件一、保持原始特征的拓?fù)?,即不?huì)斷開(kāi)骨架;二、連續(xù)的,即修剪程度的微小變化只導(dǎo)致骨架的微小變化;三、局部的,即可從骨架的局部信息去估計(jì)該點(diǎn)的顯著性。基于上述三種優(yōu)化條件,本文采用閾值跟蹤的算法對(duì)骨架進(jìn)行直接修剪。
其中,閾值跟蹤算法步驟包括設(shè)定計(jì)算像素個(gè)數(shù)的初始閾值N遍歷整幅骨架圖, 找出所有的直線端點(diǎn),將其保存;依次從每一個(gè)端點(diǎn)出發(fā),統(tǒng)計(jì)經(jīng)過(guò)的像素值為黑色的像素個(gè)數(shù)η ;若η > N時(shí),沒(méi)有遇到一個(gè)三交叉點(diǎn),則認(rèn)為該端點(diǎn)沒(méi)有多余分支,再?gòu)钠渌它c(diǎn)出發(fā);反之,如果η < N時(shí),發(fā)現(xiàn)存在三交叉點(diǎn),則原路返回并把原來(lái)經(jīng)過(guò)的黑像素點(diǎn)的像素值置為白色。通常初始閾值N根據(jù)研究對(duì)象的性質(zhì)取不同值,本算法取閾值N= 12,采用多余點(diǎn)刪除原則處理,將多余像素點(diǎn)和多余端枝去除,使骨架圖干凈利落,為跟蹤骨架提供了單像素提取,單方向碼的連通曲線,減少骨架搜索的計(jì)算量,提高缺陷識(shí)別的效率。
請(qǐng)參閱圖2,刪除骨架分支后,可得到一副較少分支的骨架圖,利用八連通區(qū)域搜索距離異常值,步驟如下
S31、通過(guò)對(duì)骨架圖搜索連通域,記錄每條骨架上所有像素點(diǎn)的橫縱坐標(biāo);
S32、通過(guò)對(duì)二值圖搜索連通域,記錄每個(gè)連通區(qū)域所有像素點(diǎn)的橫縱坐標(biāo);
S33、計(jì)算每條骨架上的每個(gè)像素點(diǎn)到該連通區(qū)域的邊緣坐標(biāo)點(diǎn)的最短距離值, 關(guān)鍵是起始搜索點(diǎn)不以O(shè)開(kāi)始,需設(shè)定一個(gè)閾值,防止在骨架終止和起始部分有未刪除干凈的分支,導(dǎo)致距離值出現(xiàn)錯(cuò)誤。刪除分支后,基本上分支已經(jīng)很,通過(guò)大量測(cè)試,閾值在 10-15比較理想;
S34、計(jì)算每條骨架上的平均距離值,照印刷電路板的走線布置,正常來(lái)說(shuō),每個(gè)像素點(diǎn)的距離值應(yīng)與平均距離值相近,若不相近,則可能為缺陷所在;
S35、比較每個(gè)像素點(diǎn)到邊緣的最短距離d與平均距離值d',若d<d' +n,則為凸起;若d > d' +η,則為凹陷,其中η代表閾值,通過(guò)大量圖片測(cè)試分析,該閾值設(shè)置為2-3 比較理想;
S36、檢測(cè)PCB板缺陷 ,檢測(cè)缺陷后,通過(guò)對(duì)數(shù)據(jù)分析,經(jīng)常會(huì)出現(xiàn)缺陷坐標(biāo)聚集現(xiàn)象,可利用坐標(biāo)相近的列為一個(gè)共有缺陷,即可以使缺陷數(shù)目減少,但又不會(huì)出現(xiàn)漏檢。
本發(fā)明的優(yōu)勢(shì)在于
1、本算法由于需要記錄每條骨架上所有像素點(diǎn)的橫縱坐標(biāo),所以必須保證提取到的骨架為單像素,有別于傳統(tǒng)意義所提取出的骨架大多并不是每個(gè)點(diǎn)都是單像素的,其通用性強(qiáng)及實(shí)用性強(qiáng)。
2、刪除骨架分支會(huì)導(dǎo)致距離值的計(jì)算出現(xiàn)偏差,而且會(huì)影響骨架跟蹤的速度和準(zhǔn)確性,因此必須去除偶然出現(xiàn)的端枝。從每條骨架端點(diǎn)出發(fā),利用八連通區(qū)域依次判斷是否在三個(gè)方向存在三叉點(diǎn),可將所有分支刪除,效果理想,可以使缺陷數(shù)目減少,但又不會(huì)出現(xiàn)漏檢、減少骨架搜索的計(jì)算量,提高缺陷識(shí)別的效率。
以上公開(kāi)的僅為本發(fā)明的幾個(gè)具體實(shí)施例,但是本發(fā)明并非局限于此,任何本領(lǐng)域的技術(shù)人員能思之的變化都應(yīng)落入本發(fā)明的 保護(hù)范圍。
權(quán)利要求
1.一種基于骨架提取和距離變換來(lái)檢測(cè)印刷電路板缺陷的方法,其特征在于,包括以下步驟 A、通過(guò)查索引表提取單像素骨架; B、刪除骨架分支; C、距離值域異常搜索,根據(jù)異常情況將PCB板缺陷分類。
2.根據(jù)權(quán)利要求1所述的基于骨架提取和距離變換來(lái)檢測(cè)印刷電路板缺陷的方法,其特征在于,所述步驟A中,包括通過(guò)判斷像素點(diǎn)周圍的八連通域,在保證不影響連通域數(shù)目的前提下,將無(wú)用點(diǎn)刪除的查索引表法。
3.根據(jù)權(quán)利要求1所述的基于骨架提取和距離變換來(lái)檢測(cè)印刷電路板缺陷的方法,其特征在于,所述B步驟包括先通過(guò)檢測(cè)骨架的所有端點(diǎn)和節(jié)點(diǎn),將各分支從骨架中提取出來(lái);再采用閾值跟蹤算法對(duì)骨架進(jìn)行直接修剪。
4.根據(jù)權(quán)利要求3所述的基于骨架提取和距離變換來(lái)檢測(cè)印刷電路板缺陷的方法,其特征在于,所述閾值跟蹤算法步驟包括 設(shè)定計(jì)算像素個(gè)數(shù)的初始閾值N ; 遍歷整幅骨架圖,找出所有的直線端點(diǎn),將其保存; 依次從每一個(gè)端點(diǎn)出發(fā),統(tǒng)計(jì)經(jīng)過(guò)的像素值為黑色的像素個(gè)數(shù)η ;若η > N時(shí),沒(méi)有遇到一個(gè)三交叉點(diǎn),則認(rèn)為該端點(diǎn)沒(méi)有多余分支,再?gòu)钠渌它c(diǎn)出發(fā);反之,如果η < N時(shí),發(fā)現(xiàn)存在三交叉點(diǎn),則原路返回并把原來(lái)經(jīng)過(guò)的黑像素點(diǎn)的像素值置為白色。
5.根據(jù)權(quán)利要求4所述的基于骨架提取和距離變換來(lái)檢測(cè)印刷電路板缺陷的方法,其特征在于,所述C步驟還包括利用八連通區(qū)域搜索距離異常值,具體步驟如下 a、通過(guò)對(duì)骨架圖搜索連通域,記錄每條骨架上所有像素點(diǎn)的橫縱坐標(biāo); b、通過(guò)對(duì)二值圖搜索連通域,記錄每個(gè)連通區(qū)域所有像素點(diǎn)的橫縱坐標(biāo); C、計(jì)算每條骨架上的每個(gè)像素點(diǎn)到該連通區(qū)域的邊緣坐標(biāo)點(diǎn)的最短距離值; d、計(jì)算每條骨架上的平均距離值; e、比較每個(gè)像素點(diǎn)到邊緣的最短距離d與平均距離值d',若d<d'+n,則為凸起;若d>d' +n,則為凹陷,其中η代表閾值; f、檢測(cè)PCB板缺陷,檢測(cè)缺陷后,通過(guò)對(duì)數(shù)據(jù)分析,經(jīng)常會(huì)出現(xiàn)缺陷坐標(biāo)聚集現(xiàn)象,可利用坐標(biāo)相近的列為一個(gè)共有缺陷。
全文摘要
本發(fā)明公開(kāi)了一種基于骨架提取和距離變換來(lái)檢測(cè)印刷電路板缺陷的方法,包括通過(guò)查索引表提取單像素骨架;刪除骨架分支;距離值域異常搜索,根據(jù)異常情況將PCB板缺陷分類。本發(fā)明提供的基于骨架提取和距離變換來(lái)檢測(cè)印刷電路板缺陷的方法,通過(guò)查索引表提取單像素骨架,查索引表能保證在不影響連通域數(shù)目的前提下,將無(wú)用點(diǎn)刪除,能保證提取到的骨架均為單像素,通用性及實(shí)用性強(qiáng);刪除骨架分支和距離值域異常搜索,可以降低計(jì)算偏差又不影響骨架跟蹤的速度和準(zhǔn)確性,可將分支刪除,減少骨架搜索的計(jì)算量,提高缺陷識(shí)別的效率。
文檔編號(hào)G06K9/46GK103049753SQ20121018138
公開(kāi)日2013年4月17日 申請(qǐng)日期2012年6月4日 優(yōu)先權(quán)日2012年6月4日
發(fā)明者彭小波, 馮平, 徐剛, 程濤, 梁婧, 劉樹(shù)成 申請(qǐng)人:深圳市強(qiáng)華科技發(fā)展有限公司