本發(fā)明屬于電路板檢測技術(shù)領(lǐng)域,尤其涉及一種在pcb上定位roi的方法和裝置。
背景技術(shù):
電子電路表面組裝技術(shù)(surfacemounttechnology,smt)是一種將無引腳或短引線表面組裝元器件安裝在印制電路板(printedcircuitboard,pcb)的表面或其它基板的表面上,并通過回流焊或浸焊等方法加以焊接組裝的電路裝連技術(shù)。目前,采用自動光學(xué)檢測(automaticopticinspection,aoi)對組裝后的pcb進行缺陷檢測。在利用aoi技術(shù)對pcb進行檢測時,為了增加檢測程序的有效性,需要對pcb中大量的元器件進行人工交互,并通過人工來選擇檢測程序中每個算法的感興趣區(qū)域(regionofinterest,roi),即,元器件所在的區(qū)域。并通過將roi與數(shù)據(jù)庫中的具有合格參數(shù)的區(qū)域進行比較,查找出缺陷。
但是,一個pcb往往包含了成百上千個元器件,由人工進行選擇roi會需要花費很長的時間,導(dǎo)致pcb的檢測效率降低。為了提高pcb的檢測效率,當前的做法是在aoi技術(shù)中增加基于圖像灰度信息相似度的模板匹配算法,人工選擇搜索的初始位置坐標,aoi技術(shù)就可以在一定范圍內(nèi)對pcb的圖像進行搜索,定位roi。
由于灰度信息相似度的模板匹配算法不具備旋轉(zhuǎn)和尺度不變形,當成像單元,如相機或鏡頭的配置發(fā)生變化時,元器件的圖像將發(fā)生射影變換,此時會發(fā)生匹配錯誤,導(dǎo)致aoi技術(shù)定位不到roi,進而不能對pcb進行檢測。
技術(shù)實現(xiàn)要素:
本發(fā)明提供一種在pcb上定位roi的方法和裝置,旨在解決現(xiàn)有的灰度信息相似度的模板匹配算法會發(fā)生匹配錯誤,導(dǎo)致aoi技術(shù)定位不到roi,不能對pcb進行檢測的問題。
本發(fā)明提供的一種在pcb上定位roi的方法,所述方法包括:
獲取待檢測電路板的圖像,并在所述待檢測電路板的圖像上確定初始感興趣區(qū)域;
根據(jù)預(yù)存的主動形狀模型在所述初始感興趣區(qū)域中提取目標特征點,并根據(jù)所述目標特征點更新形變參數(shù),以得到更新后的主動形狀模型;
若所述更新后的主動形狀模型與更新前的主動形狀模型的偏差收斂,則將所述更新后的主動形狀模型在所述待檢測電路板的圖像中所處的區(qū)域確定為感興趣區(qū)域。
本發(fā)明提供的一種在pcb上定位roi的裝置,所述裝置包括:
獲取模塊,用于獲取待檢測電路板的圖像;
確定模塊,用于在所述待檢測電路板的圖像上確定初始感興趣區(qū)域;
提取模塊,用于根據(jù)預(yù)存的主動形狀模型在所述初始感興趣區(qū)域中提取目標特征點;
更新模塊,用于并根據(jù)所述目標特征點更新形變參數(shù),以得到更新后的主動形狀模型;
所述確定模塊,還用于若所述更新后的主動形狀模型與更新前的主動形狀模型的偏差收斂,則將所述更新后的主動形狀模型在所述待檢測電路板的圖像中所處的區(qū)域確定為感興趣區(qū)域。
本發(fā)明提供的一種在pcb上定位roi的方法和裝置,通過從待檢測pcb的圖像中提取的目標特征點來更新主動形狀模型的形變參數(shù),無論pcb的元器件的位置發(fā)生何種變化,都可以通過更新后的形變參數(shù)來調(diào)整主動形狀模型的位置,從而定位roi,進一步完成對pcb的檢測。
附圖說明
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例。
圖1是本發(fā)明第一實施例提供的一種在pcb上定位roi的方法的實現(xiàn)流程示意圖;
圖2是本發(fā)明第二實施例提供的一種在pcb上定位roi的方法的實現(xiàn)流程示意圖;
圖3是本發(fā)明第三實施例提供的一種在pcb上定位roi的裝置的結(jié)構(gòu)示意圖;
圖4是本發(fā)明第四實施例提供的一種在pcb上定位roi的裝置的結(jié)構(gòu)示意圖。
具體實施方式
為使得本發(fā)明的發(fā)明目的、特征、優(yōu)點能夠更加的明顯和易懂,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而非全部實施例?;诒景l(fā)明中的實施例,本領(lǐng)域技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
請參閱圖1,圖1為本發(fā)明第一實施例提供的在pcb上定位roi的方法的實現(xiàn)流程示意圖,圖1所示的在pcb上定位roi的方法主要包括以下步驟:
s101、獲取待檢測pcb的圖像,并在該待檢測pcb的圖像上確定初始roi;
待檢測pcb的圖像為利用aoi技術(shù)檢測焊接缺陷的pcb的圖像。
獲取待檢測pcb的圖像的方法不作限制,可以通過掃描待檢測pcb或獲取,也可以接收終端發(fā)送的pcb的圖像來獲取。
初始roi為利用aoi技術(shù)最先定位的區(qū)域。
s102、根據(jù)預(yù)存的主動形狀模型在該初始roi中提取目標特征點,并根據(jù)該目標特征點更新形變參數(shù),以得到更新后的主動形狀模型;
目標特征點為初始roi中的特征點,且目標特征點與利用主動形狀模型模擬的圖像中的特征點的紋理相似度最高。形變參數(shù)為主動形狀模型中用于表示平移變換、旋轉(zhuǎn)變換和尺度變換的參數(shù)。
s103、若該更新后的主動形狀模型與更新前的主動形狀模型的偏差收斂,則將該更新后的主動形狀模型在該待檢測pcb的圖像中所處的區(qū)域確定為感roi。
需要說明的是,更新前的主動形狀模型可以是預(yù)存的主動形狀模型也可以是一次或多次更新后的主動形狀模型,其更新次數(shù)不受限定。偏差收斂表示更新后的主動形狀模型與更新前的主動形狀模型的差值的極限收斂。
本發(fā)明實施例提供的一種在pcb上定位roi的方法,通過從待檢測pcb的圖像中提取的目標特征點來更新主動形狀模型的形變參數(shù),無論pcb的元器件的位置發(fā)生何種變化,都可以通過更新后的形變參數(shù)來調(diào)整主動形狀模型的位置,從而定位roi,進一步完成對pcb的檢測。
請參閱圖2,圖2為本發(fā)明第二實施例提供的在pcb上定位roi的方法的實現(xiàn)流程示意圖,圖2所示的在pcb上定位roi的方法主要包括以下步驟:
s201、獲取待檢測pcb的圖像,并在該待檢測pcb的圖像上確定初始roi;
進一步地,利用aoi技術(shù)掃描待檢測pcb來獲取待檢測pcb的圖像。在該待檢測pcb的圖像上確定初始roi,具體包括:
從計算機輔助設(shè)計(computerassistantdesign,cad)信息中提取該待檢測pcb中目標元器件的位置信息,并根據(jù)該位置信息在該待檢測pcb的圖像中確定初始位置;
目標元器件為pcb中的主元器件,通常,目標元器件所在的區(qū)域為roi。位置信息為用于在待檢測pcb板中進行定位的信息,包括:目標元器件的編號、在pcb中的位置、旋轉(zhuǎn)角度等。初始位置為確定roi時通過位置信息在待檢測pcb中最先確定的位置。通過從cad信息中提取目標元器件的位置信息,并在待檢測pcb的圖像中確定初始位置,可以省略人工勾選初始位置的過程,節(jié)省了roi的定位的時間,提高了roi的定位效率。
將以該初始位置為中心的預(yù)置區(qū)域確定為初始roi。
在實際應(yīng)用中,預(yù)置區(qū)域可按照目標元器件所在區(qū)域的形狀進行設(shè)置,通常預(yù)置區(qū)域大于目標元器件所在的區(qū)域。
s202、獲取標準元器件的圖像;
具體的,可以通過拍攝或掃描標準元器件,也可以通過在預(yù)存的pcb的圖像中截取標準元器件所在的區(qū)域來獲取標準元器件的圖像。其中,標準元器件是指與目標元器件外觀一致的元器件。
s203、利用該目標元器件的圖像上的預(yù)置特征點構(gòu)建主動形狀模型,并將該主動形狀模型進行存儲;
預(yù)置特征點為在目標元器件的圖像中人工采集的特征點,預(yù)置的特征點為具有顯著性的點,例如,圖像中目標元器件的邊緣、夾角、突起或凹陷處的點。
進一步地,利用該目標元器件的圖像上的預(yù)置特征點構(gòu)建主動形狀模型,具體包括:
調(diào)取目標元器件的圖像中的多個預(yù)置特征點,并求目標元器件的平均形狀;
假設(shè),多個預(yù)置特征點為xi,i=1,2,3...n,則目標元器件的平均形狀為:
利用樣本和樣本的平均值計算協(xié)方差矩陣;
協(xié)方差矩陣
計算協(xié)方差矩陣的特征值bi和特征向量pi,并根據(jù)信息量的比例,取得指定數(shù)量t的特征值b以及對應(yīng)的特征向量p,得到該目標元器件的主動形狀模型x;
其中,
s204、利用該預(yù)存的主動形狀模型模擬該標準元器件的圖像,并將得到的圖像與初始roi對應(yīng)的圖像進行比對;
具體的,將模擬得到的標準元器件的圖像按照預(yù)存的形變參數(shù)放置后,與初始roi對應(yīng)的圖像進行比對。
s205、在該初始roi中選取多個特征點,并計算選取的特征點與該預(yù)置特征點的紋理相似度;
在實際應(yīng)用中,利用局部灰度模型來分別計算預(yù)置特征點的局部紋理特征和選取的特征點的局部紋理特征。其中,紋理特征可以用局部特征的一階導(dǎo)數(shù)來表示。設(shè)選取的特征點的紋理特征為g,預(yù)置特征點的紋理特征的均值為
其中,
s206、將所述選取的特征點中該紋理相似度最高的特征點作為該目標特征點;
在實際應(yīng)用中,可以用馬氏距離來表示預(yù)置特征點與多個相似特征點之間的紋理特征相似度,馬氏距離越小,相似度越高。具體的,將馬氏距離最小的特征點作為目標特征點。
s207、獲取該目標特征點的位置坐標;
假設(shè)獲取到的目標特征點的位置坐標為(x,y)。
s208、利用預(yù)存的幾何變換公式和該位置坐標行計算形變參數(shù),以得到更新后的主動形狀模型;
其中,幾何變換公式為
s209、若更新后的主動形狀模型與更新前的主動形狀模型的偏差收斂,則將該更新后的主動形狀模型在該待檢測pcb的圖像中所處的區(qū)域確定為roi。
實際應(yīng)用中,將該更新后的主動形狀模型在該待檢測pcb的圖像中所處的區(qū)域確定為roi之前,計算更新后的主動形狀模型與更新前的主動形狀模型的偏差,d=x′-x,判斷偏差d是否收斂,即limn→∞(x′-x)n是否收斂,若收斂,則將該更新后的主動形狀模型在該待檢測pcb的圖像中所處的區(qū)域確定為roi,若不收斂,則繼續(xù)步驟s204-s208,與步驟s204和s205不同的是,將利用第一次更新后主動形狀模型得到的圖像與第一次定位的roi進行比對,在第一次定位的roi中選取多個與目標特征點的紋理特征相似的特征點,隨著更新次數(shù)的不同,對比的主動形狀模型和定位的roi的次數(shù),以此類推。
需要說明的是,對于更新前的主動模型,若更新一次偏差可以收斂,則更新前的主動形狀模型為預(yù)存的主動形狀模型,若更新多次偏差可以收斂,則更新前的主動形狀模型為經(jīng)過多次更新的主動形狀模型。
本發(fā)明實施例提供的一種在pcb上定位roi的方法,通過從待檢測pcb的圖像中提取的目標特征點來更新主動形狀模型的形變參數(shù),無論pcb的元器件的位置發(fā)生何種變化,都可以通過更新后的形變參數(shù)來調(diào)整主動形狀模型的位置,從而定位roi,進一步完成對pcb的檢測。
請參閱圖3,圖3是本發(fā)明第三實施例提供的在pcb上定位roi的裝置的結(jié)構(gòu)示意圖,為了便于說明,僅示出了與本發(fā)明實施例相關(guān)的部分。圖3示例的在pcb上定位roi的裝置可以是前述圖1和圖2所示實施例提供的在pcb上定位roi的方法的執(zhí)行主體,可以是在pcb上定位roi的裝置或在pcb上定位roi的裝置中的一個控制模塊。圖3示例的在pcb上定位roi的裝置,主要包括:獲取模塊301、確定模塊302、提取模塊303和更新模塊304,以上各功能模塊詳細說明如下:
獲取模塊301,用于獲取待檢測pcb的圖像。
確定模塊302,用于在該待檢測pcb的圖像上確定初始roi。
提取模塊303,用于根據(jù)預(yù)存的主動形狀模型在該初始roi中提取目標特征點。
更新模塊304,用于并根據(jù)該目標特征點更新形變參數(shù),以得到更新后的主動形狀模型。
確定模塊302,還用于若該更新后的主動形狀模型與更新前的主動形狀模型的偏差收斂,則將該更新后的主動形狀模型在該待檢測pcb的圖像中所處的區(qū)域確定為感興趣區(qū)域。
上述各模塊實現(xiàn)各自功能的方法,具體可參考前述圖1所示第一實施例提供的接領(lǐng)人識別方法中的相關(guān)內(nèi)容,此處不再贅述。
本發(fā)明實施例提供的一種在pcb上定位roi的裝置,通過從待檢測pcb的圖像中提取的目標特征點來更新主動形狀模型的形變參數(shù),無論pcb的元器件的位置發(fā)生何種變化,都可以通過更新后的形變參數(shù)來調(diào)整主動形狀模型的位置,從而定位roi,進一步完成對pcb的檢測。
請參閱圖4,圖4是本發(fā)明第四實施例提供的在pcb上定位roi的裝置的結(jié)構(gòu)示意圖,為了便于說明,僅示出了與本發(fā)明實施例相關(guān)的部分。圖4示例的在pcb上定位roi的裝置可以是前述圖1和圖2所示實施例提供的在pcb上定位roi的方法的執(zhí)行主體,可以是在pcb上定位roi的裝置或在pcb上定位roi的裝置中的一個控制模塊。圖4示例的在pcb上定位roi的裝置,主要包括:獲取模塊401、確定模塊402、提取模塊403、更新模塊404和構(gòu)建模塊405,其中,確定模塊402包括:信息提取模塊412和位置確定模塊422,提取模塊403包括:對比模塊413、特征計算模塊423和特征確定模塊433,更新模塊404包括:坐標獲取模塊414和參數(shù)計算模塊424,以上各功能模塊詳細說明如下:
獲取模塊401,用于獲取待檢測pcb的圖像。
確定模塊402,用于在該待檢測pcb的圖像上確定初始roi。
提取模塊403,用于根據(jù)預(yù)存的主動形狀模型在該初始roi中提取目標特征點。
更新模塊404,用于并根據(jù)該目標特征點更新形變參數(shù),以得到更新后的主動形狀模型。
確定模塊402,還用于若該更新后的主動形狀模型與更新前的主動形狀模型的偏差收斂,則將該更新后的主動形狀模型在該待檢測pcb的圖像中所處的區(qū)域確定為感興趣區(qū)域。
進一步地,確定模塊402包括:
信息提取模塊412,用于從計算機輔助設(shè)計信息中提取該待檢測pcb中目標元器件的位置信息。
位置確定模塊422,用于根據(jù)該位置信息在該待檢測pcb的圖像中確定初始位置,以及,將以該初始位置為中心的預(yù)置區(qū)域確定為該初始感興趣區(qū)域。
進一步地,該裝置還包括:
獲取模塊401,還用于獲取標準元器件的圖像。
該標準元器件與該目標元器件的外觀一致。
構(gòu)建模塊405,用于利用該標準元器件的圖像上的預(yù)置特征點構(gòu)建該主動形狀模型,并將該主動形狀模型進行存儲。
進一步地,提取模塊403包括:
對比模塊413,用于利用該預(yù)存的主動形狀模型模擬該標準元器件的圖像,并將得到的圖像與初始感興趣區(qū)域進行比對。
特征計算模塊423,用于在該初始感興趣區(qū)域中選取多個特征點,并計算選取的特征點與該預(yù)置特征點的紋理相似度。
特征確定模塊433,用于將該選取的特征點中該紋理相似度最高的特征點作為該目標特征點。
進一步地,更新模塊404包括:
坐標獲取模塊414,用于獲取該目標特征點的位置坐標。
參數(shù)計算模塊424,用于利用預(yù)存的幾何變換公式和該位置坐標計算形變參數(shù),以得到該更新后的主動形狀模型。
上述各模塊實現(xiàn)各自功能的方法,具體可參考前述圖1和圖2所示第一實施例和第二實施例提供的接領(lǐng)人識別方法中的相關(guān)內(nèi)容,此處不再贅述。
本發(fā)明實施例提供的一種在pcb上定位roi的裝置,通過從待檢測pcb的圖像中提取的目標特征點來更新主動形狀模型的形變參數(shù),無論pcb的元器件的位置發(fā)生何種變化,都可以通過更新后的形變參數(shù)來調(diào)整主動形狀模型的位置,從而定位roi,進一步完成對pcb的檢測。
在本申請所提供的多個實施例中,應(yīng)該理解到,所揭露的系統(tǒng)、裝置和方法,可以通過其它的方式實現(xiàn)。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述模塊的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,例如多個模塊或組件可以結(jié)合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信鏈接可以是通過一些接口,裝置或模塊的間接耦合或通信鏈接,可以是電性,機械或其它的形式。
所述作為分離部件說明的模塊可以是或者也可以不是物理上分開的,作為模塊顯示的部件可以是或者也可以不是物理模塊,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)模塊上。可以根據(jù)實際的需要選擇其中的部分或者全部模塊來實現(xiàn)本實施例方案的目的。
另外,在本發(fā)明各個實施例中的各功能模塊可以集成在一個處理模塊中,也可以是各個模塊單獨物理存在,也可以兩個或兩個以上模塊集成在一個模塊中。上述集成的模塊既可以采用硬件的形式實現(xiàn),也可以采用軟件功能模塊的形式實現(xiàn)。
所述集成的模塊如果以軟件功能模塊的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,可以存儲在一個計算機可讀取存儲介質(zhì)中?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分或者該技術(shù)方案的全部或部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在一個存儲介質(zhì)中,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括:u盤、移動硬盤、只讀存儲器(rom,read-onlymemory)、隨機存取存儲器(ram,randomaccessmemory)、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
需要說明的是,對于前述的各方法實施例,為了簡便描述,故將其都表述為一系列的動作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本發(fā)明并不受所描述的動作順序的限制,因為依據(jù)本發(fā)明,某些步驟可以采用其它順序或者同時進行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描述的實施例均屬于優(yōu)選實施例,所涉及的動作和模塊并不一定都是本發(fā)明所必須的。
在上述實施例中,對各個實施例的描述都各有側(cè)重,某個實施例中沒有詳述的部分,可以參見其它實施例的相關(guān)描述。
以上為對本發(fā)明所提供的在pcb上定位roi的方法和裝置的描述,對于本領(lǐng)域的技術(shù)人員,依據(jù)本發(fā)明實施例的思想,在具體實施方式及應(yīng)用范圍上均會有改變之處,綜上,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。