【摘 要】本文利用計算機視覺測量技術(shù)對工廠流水線的PCB板貼片的質(zhì)量進行檢測,已發(fā)現(xiàn)PCB板上是否有虛焊、焊歪或者是漏焊的元器件。通過獲取工業(yè)攝像頭的視頻,對傳送帶上的PCB板進行拍照,對PCB板通過仿射變換進行定位,然后通過高斯混合模型所建立的背景模型進行差分,如果二者之間的馬氏距離小于規(guī)定的閾值,就認為沒有虛焊、焊歪或者是漏焊的情況,反之,檢測出問題區(qū)域,然后將問題區(qū)域標記出來。
【關(guān)鍵詞】視覺測量;PCB貼片;檢測;開發(fā)
1引言
隨著計算機技術(shù)的不斷發(fā)展,圖像處理技術(shù)作為計算機技術(shù)的一個分支也在不斷的發(fā)展。其中基于圖像處理技術(shù)的工業(yè)視覺測量技術(shù)作為圖像處理技術(shù)的一個應(yīng)用方向在工業(yè)測量領(lǐng)域已經(jīng)開始應(yīng)用開來,但是這些視覺測量設(shè)備價格都比較高,大多數(shù)還都是依賴于進口。如AOI設(shè)備等。在此背景下,本文展開了基于視覺測量技術(shù)的PCB板貼片質(zhì)量檢測研究,目的就是為我國工業(yè)領(lǐng)域視覺測量技術(shù)的應(yīng)用提供一定的理論基礎(chǔ)。
2基于視覺測量技術(shù)的PCB貼片檢測系統(tǒng)
2.1硬件架構(gòu)
該系統(tǒng)的硬件架構(gòu)組成非常簡單,在實時性要求不高的,流水線速度較慢的領(lǐng)域具有很高的實用價值。硬件的組成部分主要包括高清度的攝像頭、USB數(shù)據(jù)連接線、工業(yè)PC等。其組成以及數(shù)據(jù)的流程如下圖所示:
圖1PCB板視覺測量檢測系統(tǒng)硬件架構(gòu)
2.2視頻獲取
要實現(xiàn)利用視頻數(shù)據(jù)來檢測PCB板的貼片質(zhì)量,首先最為關(guān)鍵的一步就是獲取所采集的視頻數(shù)據(jù),然后將其轉(zhuǎn)化為可以處理的格式,再對視頻流數(shù)據(jù)進行PCB板貼片質(zhì)量進行檢測。由于本文所采取的硬件架構(gòu)如圖1所示,由攝像頭、USB連接線和工控機組成,所以只要能夠利用WINDOWS底層的API函數(shù)接口就可以實現(xiàn)USB視頻數(shù)據(jù)的讀取,在這里為了開發(fā)的方便,本文選擇了opencv庫函數(shù)中的VideoCapture類來實現(xiàn)視頻數(shù)據(jù)的獲取。利用一下代碼就可以實現(xiàn)視頻數(shù)據(jù)的讀取
VideoCapture cap;
cap.open(int device);
cv::Mat image;
cap>>image;
2.3視頻預(yù)處理
利用上述代碼獲取視頻數(shù)據(jù)之后,由于視頻每次拍攝的位置會有一定的差異,所以首先要對拍攝的圖像進行幾何校正。目的就是消除由于每次拍照位置的差異而引起的視頻在整個圖像上的相對位置的差異,如果不對上圖圖像做矯正處理的話,那么在差分的過程中就會出現(xiàn)大面積變化的區(qū)域,這是由于沒有進行定標造成的,所以在和高斯混合模型做差分之前要首先對圖像進行定標。定標首先要和高斯混合模型進行配準,然后獲取同名點,然后利用仿射變換對圖像進行矯正,具體計算過程如下:假設(shè)帶矯正圖像上的同名點都存在了vector1中,而高斯混合模型上的同名點都存在了vector2中,那么就有以下的關(guān)系:
x1=a1x+b1y+c1
y1=a2x+b2y+c2
通過上述公式就可以得到放射變換參數(shù),然后利用上述仿射變換參數(shù)形成平移向量,平移向量如下所示:
(x-x1,y-y1)
然后利用上述向量對整幅圖像進行平移最后得到幾何矯正后的圖像。
2.4差分處理
差分處理就是要獲得待檢測圖像(未知是否有故障的PCB板圖像),然后將其與所建立的高斯混合模型做差分處理,然后根據(jù)所設(shè)置的閾值對每個像素點進行分類,如果所得差異小于初始設(shè)定閾值,那么就認為是無質(zhì)量問題,如果大于設(shè)定閾值那么就認為PCB某些區(qū)域存在質(zhì)量上的問題,可以利用OPENCV中的庫函數(shù)absdiff來實現(xiàn)差分處理,關(guān)鍵代碼實現(xiàn)過程如下:
cv:Mat MixGauss;
cv:Mat fram;
absdiff(MixGauss,fram,fram);
2.5中值濾波
由于光照的變化以及空氣中顆粒的擾動會使得差分的后的圖像上出現(xiàn)很多小的斑點,采用線性濾波方式的加權(quán)平均的方法會使得圖像的邊緣產(chǎn)生模糊的現(xiàn)象,會減弱所檢測出的變化。所以本文選擇了中值濾波來濾除差分處理后圖像上的斑點。通過實驗發(fā)現(xiàn)該濾波效果較好能夠有效的濾除斑點噪聲。
3系統(tǒng)開發(fā)
3.1開發(fā)環(huán)境介紹
本文所使用的開發(fā)環(huán)境為vs2010集成開發(fā)環(huán)境,然后利用崎嶇公司所開發(fā)的界面庫Qt作為系統(tǒng)開發(fā)的界面開發(fā)庫。
3.2界面設(shè)計
本系統(tǒng)的系統(tǒng)實現(xiàn)如下所示,利用Qt中的一個Label來顯示視頻幀,然后用另外一個Label顯示所檢測出的變化疊加到原來視頻幀上的界面,然后通過開始按鈕可以實現(xiàn)控制攝像頭開始采集數(shù)據(jù),利用結(jié)束按鈕可以結(jié)束整個視頻采集處理過程。
3.3功能實現(xiàn)
該系統(tǒng)的主要功能就是將PCB板所出現(xiàn)的貼片問題檢測出來,然后將其標記并顯示在上節(jié)所建立的Qt界面中,代碼實現(xiàn)的過程包括,差分處理,中值濾波,變化區(qū)域標記,疊加結(jié)果顯示等步驟,這些關(guān)鍵步驟的代碼在opencv中都有實現(xiàn),并且代碼是開源的。
4結(jié)束
本文對于視覺測量技術(shù)在PCB板貼片質(zhì)量檢測中應(yīng)用進行了研究,并對于關(guān)鍵的開發(fā)技術(shù)進行了詳細的說明,質(zhì)量檢測步驟包括系統(tǒng)硬件架構(gòu)、視頻的獲取、視頻預(yù)處理、差分處理中值濾波等,為計算機視覺測量技術(shù)在工業(yè)生產(chǎn)中的應(yīng)用提供一定的理論指導(dǎo)。
參考文獻:
[1]岡薩雷斯,伍茲.數(shù)字圖像處理(第三版)[M].阮秋琦.北京:電子工業(yè)出版社,2011
[2]孫鑫,余安萍.VC++深入詳解[M].電子工業(yè)出版社,2008
作者簡介:
秦川廣智(1986~),女,職稱:助教,工作單位:貴州航天職業(yè)技術(shù)學(xué)院。