摘要:表面安裝PCB板的自動檢測是保證質量、減少制造廢品浪費和返工的要求。本文研究定位和識別SMD檢測圖像中的多個對象的方法。表面安裝器件檢測的主要難點之一是元件放置的檢測。元件放置缺陷如漏貼、偏位或者是錯誤的旋轉元件是主要缺陷必須在回流焊之前或之后進行檢測。本文的重點在于定位多對象的對像識別技術;使用灰色模型匹配來為一組元件創建通用的模板。研究中使用標準化互相關模板匹配方法并對限制搜索區域以減少計算量的方法進行測試。查找模板位置的方法使用了一個遺傳算法,性能優越。最后列出了對典型的PCB圖像的實驗結果。
關鍵詞:PCB制造;元件檢測;模板匹配;遺傳算法
5 搜索方法
模板匹配的搜索可以使用一個啟化式的方法如遺傳算法。結束搜索的判斷條件由計算的NCC值決定。實驗發現,0.65的NCC值是一個理想的表示找到模板匹配,停止搜索的結束條件。
5.1 遺傳算法搜索
遺傳算法是一個基于種群(population-based)的概率搜索算法。其使用模擬自然選擇和生物遺傳機制(mechanics)的算子。遺傳算法開始建立一個解集的隨機種群及計算每個成員的適應度值(如NCC值)。將適應度值作為依據,從種群中選擇一個子集作為父母。這些父母組合產生新一代的解集稱之為子代。將這些新集取代原種群的一些成員,然后計算新的適應度值。重復這樣的選擇和使用適應度值來產生新的種群的過程。當種群進化,也更接近最優解。
遺傳算法搜索邊緣像素(圖5)執行時,使用一個indices determining邊緣位置(x,y)坐標種群,和indices determining角度種群。不同的電阻對象在圖像中的旋轉角度可能不同。因此,定義了代表模板角度的角度變量。一般電阻的放置角度為0、90、180、270,所以角度向量限制為這四個值。只使用四個角度的缺點是實際的旋轉角度可能是不確定的;優點是保持低的計算量。
通過在對應的邊緣位置(x, y)坐標和角度計算NCC值,給每個父代(如邊緣位置和角度indices)分配一個適應度值。使用Roulette-wheel selection來選擇父代,然后對父代使用線性組合產生新的子代,用以下方程的計算。
(3)
其中a是值為0到1的隨機權數。如果有需要,用一個寬度值來擴展子代的范圍。
遺傳算法能夠好的解決單解問題,因此需要一個機制,當找到一個模板匹配時,讓GA找到另一個解。當在源圖像找到一個NCC值大于0.65(找到一個好的模板匹配)的位置時,在源圖像將和模板一致的區域用一個反色的模板圖像替換。一旦發生模板匹配,這個方法有效的封閉出一個區域。當找出所有元件,算法即結束。
使用遺傳算法檢測PCB過程如圖7所示,用Matlap實現。首先,離線創建通用模板和設置對象的數量。然后,然后獲取被檢測PCB的圖像,應用查找對象及他們的位置和旋轉角度的算法。如果位置和旋轉角度等于期望值,則被測PCB通過質量檢查。
圖7 遺傳算法模板圖像搜索流程圖
6 應用和結果
本章測試和比較基于通用模板的不同的多對象識別技術。結果如表1所示。對標準化互相關(NCC)和最大可能模板匹配方法使用完全搜索非壓縮源圖像方法進行了比較。算法使用圖3的通用模板對圖2的6個5110和1001貼片電阻進行定位。結果表明NCC模板匹配方法比最大可能匹配方法快4倍多。使用最大可能方法,協方差矩陣的計算非常耗時。然后,對在一個預先確定的矩形區域,圍繞每個已知元件目標點,使用局部搜索的方法進行了測試。這個方法大大減少了搜索時間。
如果元件錯件和偏位,局部搜索方法就會失敗。在這種情況下,需要對整個源圖像進行搜索來查找錯誤放置的對象。之前討論的Canny邊緣壓縮方法可以用來減少搜索點的數量,對完全搜索和遺傳算法分別進行了實驗并獲得了結果。GA的模板位置搜索比完全搜索快6倍左右。
表1 結果
方法 |
執行時間(s) |
最大可能非壓縮完全搜索 |
3303 |
NCC非壓縮完全搜索 |
737.2 |
NCC Canny邊緣壓縮完全搜索 |
230.8 |
NCC對象目標點局部搜索 |
47.5 |
NCC Canny邊緣壓縮GA搜索 |
39.5 |
為了找出一個最優參數來使遺傳算法的執行時間最小化,進行了實驗統計分析。初始實驗確定可控參數的范圍,如種群大小、重組百分比、線性重組寬度、突變百分比。然后進行兩組實驗獲得兩組值的范圍。第一組實驗使用種群值160、200和240,重組百分比值為75%、85%和95%,突變百分比值為15%、25%和35%,線性重組寬度為0,0.1和0.2。第二組實驗使用種群值80、120和160,重組百分比值為55%、65%和75%,突變百分比值為25%、35%和45%,線性重組寬度為0,0.1和0.2。
第一組實驗中最優的參數是種群大小為160,重組合百分比為75%,突變百分比為35%,線性重組合寬度為0。第二組實驗中最優的參數是種群大小為160,重組合百分比為75%,突變百分比為45%,線性重組合寬度為0。兩組實驗中的群大小、重組合百分比和線性重組合寬度的最優參數相同。唯一不明確的是突變百分比的值,進一步的實驗顯示35%的突變率是最優的參數。
圖8顯示了待定位對像總的數量和當前已經定位對象數量的變化過程。其中N的定義為:
(4)
其中:
NTOTAL=待定位對象總的數量。
NFOUND=已定位對象的數量。
圖8顯示了N減小到0的一系列的階段。在第一個階段有一個新的對象被檢測出來。當所有對象都都檢測出來,遺傳算法結束,返回每個元件的位置和旋轉角度。角度限制在0、90、180和270四個角度內。可以根據這些算法返回的值進行質量檢查。當元件的旋轉角度不是限制的四個角度時,算法產生的互相關值不會大于0.65,元件就識別不了。因此,識別對象的總數可以用于質量檢查。圖9顯示了使用遺傳算法多對象識別方法定位的6個元件的源圖像。
圖8 反復(iteration)次數和對像定位關系
圖9 使用遺傳算法識別和定位六個元件的源圖像
關于這個方法可量測性的主要因素是通用模板的建立。在本研究中,通用模板是通過從源圖像提取的大小相同的6個元件的模板建立的,這些元件的標簽特征有差別。因此,方法只能搜索6個對象。圖10顯示了待搜索對象的數量和對應的平均搜索時間。圖顯示了單獨搜索和同時搜索的結果。同時搜索是同時對所有對象搜索,單獨搜索是每次只搜索一個對象。結果顯示了當對象數量增加,同時搜索方法有更優的平均時間,是一個更好的多對象識別方法。
圍繞對象點的NCC局部區域搜索方法表現很好的性能,當其是在假設對象點位置預先知道前提下的。GA方法的優點是,因為其是一個對邊緣的全局搜索,所以它和攝像機的對準(alignment)沒有關系。這點是很重要的,因為在生產環境下不能完全保證攝像機是對準的。
圖10 遺傳算法測量結果
7 結論
本文設計了多對象識別方法,并應用這個方法查找PCB上貼片元件的位置和角度,以便進行質量控制檢查?;镜姆椒ㄊ腔趯σ唤M元件建立一個通用灰色模型模板。搜索可以限制在圍繞已知對象點的局部區域或者,如果需要對整個源圖像進行搜索來查找錯件,則限制搜索在Canny邊緣位置。
如果元件對象點預先知道,則完全搜索圍繞對象點的連續小區域來尋找模板匹配是很有效的。如果需要搜索整個圖像,則限制搜索區域在Canny邊緣可以減少搜索時間。
當查找出所有元件,遺傳算法結束,搜索性能比對同一搜索區域的完全搜索方法快6倍,也比圍繞已知對象點的局部完全搜索方法快。因為遺傳算法方法搜索整個圖像的邊緣,所以和圖像的對準無關(而對通過比較兩個圖像來檢測缺陷是必需的)。本文研究的方法也可以應用以其它應用包括機器視覺系統和衛星監測。
深圳宏力捷推薦服務:PCB設計打樣 | PCB抄板打樣 | PCB打樣&批量生產 | PCBA代工代料