鄺泳聰,陳澤田
(華南理工大學(xué) 機械與汽車工程學(xué)院,廣州 510640)
插件機是將針腳電子元件插裝到印刷電路板的精密組裝設(shè)備,當(dāng)前異形插件機采用的底部視覺算法簡單直觀,但由于部分元件底部反光較強,導(dǎo)致針腳圖像提取困難,這影響了插件良率。插件機旋轉(zhuǎn)視覺通過轉(zhuǎn)動元件,從不同角度位置獲取針腳的背光圖像,有助于解決反光影響針腳識別精度的問題。
隨著插件機的推廣應(yīng)用,除了保證精度外,插件效率上也提出更高的要求,當(dāng)前高精度機型的插件模塊,采用伺服電機一對一直接驅(qū)動,保證了定位精度,但其插件模塊較重體積也難以縮小,因此高效率機型的插件模塊設(shè)計,改由一個電機通過同步帶拖動多個旋轉(zhuǎn)軸,好處是減輕插件模塊重量也便于縮小體積,不利因素是同步帶存在彈性變形和齒隙,只做微小角度轉(zhuǎn)動時,同步帶傳動的旋轉(zhuǎn)軸可以滿足插件精度要求,但做大角度轉(zhuǎn)動時,角度旋轉(zhuǎn)誤差較大。前期旋轉(zhuǎn)視覺研究主要針對高精度機型,該機型旋轉(zhuǎn)軸的實際旋轉(zhuǎn)角度與理論值非常接近(誤差小于0.03°),因此用旋轉(zhuǎn)角的理論值計算針腳姿態(tài),精度能滿足要求。將旋轉(zhuǎn)視覺應(yīng)用到高效率機型時,由于實際旋轉(zhuǎn)角與理論值差異大,用旋轉(zhuǎn)角理論值估算針腳位姿,精度難以保證。常規(guī)的解決方案是每個旋轉(zhuǎn)軸安裝高精度旋轉(zhuǎn)編碼器,測量實際的轉(zhuǎn)動角度,但這不但增加成本也不利于插件模塊小型化,因此有必要從軟件算法上尋找解決方法。
旋轉(zhuǎn)測量時元件針腳之間相對位置固定,因此轉(zhuǎn)動取像時所有針腳轉(zhuǎn)過的角度相同。借鑒現(xiàn)有基于約束的優(yōu)化方法,本文提出一種基于位置約束和迭代擬合的針腳位姿估計精度優(yōu)化方法,通過上述針腳位置約束擬合出針腳的實際初始角和每次轉(zhuǎn)過的角度?;诩s束的優(yōu)化是工程領(lǐng)域的一個重要課題,約束條件的存在限定了決策變量的可行范圍,使解更具目的性??臻g位置約束是一種常見的數(shù)學(xué)約束,通常表現(xiàn)為目標(biāo)點相對參考系位置的幾何關(guān)系。工程上已有諸多利用相對位置不變性進(jìn)行后續(xù)處理的算法流程,多視圖聚類根據(jù)多視角包含共同空間區(qū)域信息的一致性原則作為約束條件,從而對不同視角拍攝的對象進(jìn)行聚類分析,ICP點云拼接則是根據(jù)剛性不變性估計變換矩陣并利用點云簇內(nèi)部空間坐標(biāo)相對不變的關(guān)系進(jìn)行迭代的三維拼接。此外,在視覺標(biāo)定中,Zhang式標(biāo)定法利用了標(biāo)定板角點相對位置不變約束完成空間點至相機坐標(biāo)系的對應(yīng)關(guān)系,根據(jù)目標(biāo)結(jié)構(gòu)特點,采用幾何約束的方法是提升位姿估算精度的有效方法。文獻(xiàn)[5]利用物體表面多種幾何特征,如點與點、線與線的位置約束構(gòu)造超定方程進(jìn)而獲得高精度的位姿估計。文獻(xiàn)[6]根據(jù)物體幾何不變性計算協(xié)方差從而提高深度相機的位姿估計精度;蘇杰等通過夾持器的形狀約束來對目標(biāo)進(jìn)行位姿估計;Hou等利用單目相機拍攝物體旋轉(zhuǎn)不同角度的圖片,并利用幾何約束進(jìn)行三維重建以提高精度,文獻(xiàn)[9-10]基于相機成像線性特征實現(xiàn)對位姿估計的優(yōu)化及高精度的畸變校正。
本文所提出的針腳位姿估計優(yōu)化方法,利用元件各針腳相對位置固定的約束關(guān)系,將圓軌跡擬合與旋轉(zhuǎn)角迭代擬合相結(jié)合獲取實際旋轉(zhuǎn)角的最優(yōu)估計,進(jìn)而得到精密的針腳位姿估計值。論文先建立基于位置約束的旋轉(zhuǎn)角擬合模型,并從理論上分析了該方法的可行性;進(jìn)而通過仿真分析該方法的精度與圖像噪聲、像素分辨率、針腳數(shù)和旋轉(zhuǎn)取像點數(shù)等主要因素的關(guān)系,并進(jìn)行效率分析,從算法精度和效率上驗證了該方法的可行性。
針腳測量時旋轉(zhuǎn)軸帶動元件旋轉(zhuǎn),在不同的角度位置獲取針腳的側(cè)面圖像。如圖1~2所示,針腳末端在圖中用點表示,理想情況下,旋轉(zhuǎn)軸坐標(biāo)系與世界坐標(biāo)系重合且在攝像機坐標(biāo)系的軸上,但由于加工和裝配都會存在誤差,旋轉(zhuǎn)軸與世界坐標(biāo)軸之間有一定夾角。
圖1 旋轉(zhuǎn)立體視覺成像模型
目標(biāo)點P
的旋轉(zhuǎn)軸坐標(biāo)系坐標(biāo)與圖像投影坐標(biāo)間的轉(zhuǎn)換關(guān)系為:(1)
圖2 旋轉(zhuǎn)角與針腳圖像投影的關(guān)系
(2)
(3)
(4)
(5)
(6)
其中:k
=1時θ
=0。1)針腳位置約束:
元件針腳旋轉(zhuǎn)測量時,針腳間存在位置約束關(guān)系:元件多個針腳之間相對位置固定,因此每次轉(zhuǎn)動取像時所有針腳轉(zhuǎn)過的角度相同,從式(6)可知,在每個取像角度位置,每個針腳都會增加兩個圖像坐標(biāo)方程,針腳越多增加的方程數(shù)越多,而待求變量只增加一個θ
,本文所提出的旋轉(zhuǎn)角擬合方法,就是通過上述的針腳位置關(guān)系擬合出各個針腳的實際初始角度位置θ
和每次轉(zhuǎn)過的θ
。2)旋轉(zhuǎn)角求解模型 :
(7)
式中,i
指元件第i
個針腳,如x
,指針腳i
在第k
個取像位置的X
方向圖像投影坐標(biāo),r
是針腳i
的旋轉(zhuǎn)半徑,θ
0,指針腳i
的初始取像角度,每個針腳位置不一樣,因此每個針腳的初始角度不同;θ
,(k
=1,2…)指從初始取像位置轉(zhuǎn)到第k
個取像位置時轉(zhuǎn)過的角度增量值,k
=1時θ
,=0。當(dāng)θ
0,和θ
,已知時,根據(jù)式(7)可以得到針腳圖像坐標(biāo)的估計值。3)旋轉(zhuǎn)角擬合的可行性:
1)針腳位姿估計迭代擬合流程:
圖3 針腳位姿估計的迭代擬合流程
(2)旋轉(zhuǎn)軌跡擬合:
除了因為定位偏差外,轉(zhuǎn)動取像時針腳的軌跡都在圓周上。每個針腳與旋轉(zhuǎn)中心距離不一樣,因此各針腳的圓軌跡半徑不同。針腳i
的k
個取像點所在的圓周軌跡方程為:(8)
(9)
簡記為:
(10)
因為元件的所有針腳都同時繞旋轉(zhuǎn)軸轉(zhuǎn)動,因此所有針腳要對同一個旋轉(zhuǎn)中心進(jìn)行擬合,由式(10)得到i
個針腳的圓軌跡擬合方程:(11)
用奇異值分解等方法解式(11),可得出各針腳旋轉(zhuǎn)半徑值及旋轉(zhuǎn)中心。
3)旋轉(zhuǎn)角迭代擬合:
根據(jù)式(7)構(gòu)造的旋轉(zhuǎn)角方程屬于非線性方程,一般通過最小二乘法迭代擬合求解?;诘淖钚《藬M合是提升位姿估算精度的有效方法,文獻(xiàn)[13]提出一種基于最小二乘的正交迭代算法,并通過實驗證實該算法在提升相機位姿估計精度的有效性;文獻(xiàn)[14]提出一種基于歸一化圖像平面中單應(yīng)性誤差的最小二乘解法以及一種迭代估計方法,實現(xiàn)了高精度的視覺測距;文獻(xiàn)[15]運用隨機霍夫變換與最小二乘結(jié)合,并根據(jù)聚類方法獲得提取出PCB板真實的缺陷圓孔邊緣;文獻(xiàn)[16]根據(jù)最小二乘原理將工作臺誤差方程轉(zhuǎn)化為正規(guī)方程,進(jìn)行位姿的自校準(zhǔn);文獻(xiàn)[17]基于自適應(yīng)迭代加權(quán)最小二乘進(jìn)行姿態(tài)追蹤與幾何重構(gòu)等。
將式(7)通過泰勒級數(shù)展開為一階導(dǎo)數(shù)形式,有:
(12)
δX
(θ
0,,θ
,)=(13)
利用最小二乘方法迭代運算,令針腳圖像的真實坐標(biāo)和估算坐標(biāo)的殘余誤差平方和δX
(θ
0,,θ
,)逼近或達(dá)到全局最小,可得到θ
0,和θ
,的最優(yōu)估計值。考慮到旋轉(zhuǎn)角尋優(yōu)范圍比較小(初始值在±0.5°以內(nèi))和針腳測量的實時性要求,本文主要采用高斯-牛頓方法迭代求解式(13)。非線性方程的求解,主要是求解待求參數(shù)的調(diào)整量。對于針腳i
,式(13)最小二乘解的雅可比矩陣、圖像坐標(biāo)殘余誤差V
和旋轉(zhuǎn)角參數(shù)調(diào)整向量△θ
分別為:(14)
其中:0,對應(yīng)矩陣的第一列,,對應(yīng)矩陣的其余部分。元件所有針腳一起轉(zhuǎn)動,因此在同一取像位置k
各個針腳的旋轉(zhuǎn)角偏差修正值賦予相同值△θ
,;因為存在制造誤差,相同型號的不同元件針腳間距也有微小差異,所以各針腳的初始角賦予獨立的偏差修正值△θ
0,。根據(jù)式(14)得到所有針腳聯(lián)合求解的相應(yīng)矩陣:θ
… △θ
0,△θ
,2△θ
,3… △θ
,[,=diag[w
…w
w
w
…w
]是加權(quán)對角矩陣,針腳位姿估計主要根據(jù)θ
的估計值,因此θ
和θ
賦予不同權(quán)值w
和w
。根據(jù)高斯-牛頓法可得到旋轉(zhuǎn)角參數(shù)調(diào)整向量:△=(**)***)(15)
第j
次迭代后旋轉(zhuǎn)角估計值修正為:(16)
x
軸和z
軸方向上做±1 mm以內(nèi)的隨機平移和±1°以內(nèi)的隨機旋轉(zhuǎn)偏移得到;針腳的初始角θ
0,根據(jù)各針腳的真實坐標(biāo)與z
軸的夾角,加上元件的初始測試角得到;根據(jù)各針腳的θ
0,和θ
,用式(7)算出無圖像噪聲的針腳圖像坐標(biāo)(計算時添加旋轉(zhuǎn)軸徑向跳動誤差);再添加圖像離散隨機誤差和圖像隨機噪聲則得到針腳真實圖像坐標(biāo);圖像離散誤差、圖像噪聲和針腳真實坐標(biāo)的隨機偏移都是通過各自的幅值乘上表中的正態(tài)隨機數(shù)得到;徑向跳動誤差按均勻分布產(chǎn)生。表1 仿真參數(shù)
重復(fù)實驗為獨立實驗,每次實驗的輸入數(shù)據(jù)添加的相關(guān)誤差或噪聲都是重新產(chǎn)生。單次實驗完成后,將針腳三維坐標(biāo)的估算結(jié)果與針腳坐標(biāo)的真實值比較,得到針腳位姿估算誤差。重復(fù)實驗完成后,對每次實驗的數(shù)據(jù)統(tǒng)計,得到各個針腳位姿估計誤差的均值m
和方差σ
。單次實驗的結(jié)果有偶然性,為了保證仿真結(jié)果的可信度,用m
±3σ
作為針腳的位姿估計誤差,將所有針腳位姿估計誤差的最大值,作為重復(fù)實驗的最終結(jié)果。下文將分析本文所提出方法的針腳位姿估計精度與圖像噪聲、像素分辨率、針腳數(shù)和旋轉(zhuǎn)取像點數(shù)等主要因素的關(guān)系。同步帶傳動的旋轉(zhuǎn)軸大角度轉(zhuǎn)動時,定位誤差在±0.5°以內(nèi),因此設(shè)定旋轉(zhuǎn)角誤差的仿真取值范圍為0.05°~0.50°。
1)迭代與非迭代:
按圖3所示的流程,根據(jù)表1參數(shù)設(shè)置不同的迭代次數(shù)進(jìn)行仿真,分析迭代次數(shù)對算法精度的影響。這里迭代次數(shù)指的是圖3所示的M
,M
=1對應(yīng)非迭代,即直接用旋轉(zhuǎn)角理論值通過式(4)計算針腳位姿,不進(jìn)行實際旋轉(zhuǎn)角的迭代擬合;實驗結(jié)果如圖4所示。圖4 迭代次數(shù)與位姿估算精度關(guān)系
由圖4可見,非迭代算法的位姿估計誤差與轉(zhuǎn)角誤差成正比;迭代算法明顯提升了針腳估算精度,尤其是對于大的轉(zhuǎn)角誤差;增加迭代次數(shù)能進(jìn)一步改善角度擬合精度,從而提升針腳位姿估計精度,迭代3次針腳估算精度已基本穩(wěn)定;當(dāng)旋轉(zhuǎn)角誤差較小(圖中<0.1°)時,非迭代的針腳位姿估計精度比迭代略高,其原因是受圖像隨機噪聲和像素分辨率的限制,下文將對該現(xiàn)象進(jìn)一步說明。
2)圖像噪聲:
本小節(jié)分析針腳位姿估算精度與圖像隨機噪聲的關(guān)系。圖像隨機噪聲(幅值)分別取0.3 μm、0.6 μm、1.2 μm和2.4 μm,其它參數(shù)按照表1設(shè)置。
由圖5(a)可見,圖像噪聲越大位姿估算誤差越大;隨機噪聲最大幅值不變時,迭代擬合的針腳位姿估計精度幾乎不受旋轉(zhuǎn)角誤差的影響;由圖5(b)可見迭代估算誤差與圖像噪聲成正比,圖像噪聲越小估算精度越高,0.5°以內(nèi)的旋轉(zhuǎn)角誤差基本不影響位姿估計精度;
本文算法利用旋轉(zhuǎn)測量時所有針腳具有相同旋轉(zhuǎn)角θ
,的特點,將所有針腳旋轉(zhuǎn)方程構(gòu)造成超定方程組解算θ
0,和θ
,,但每個針腳的圖像坐標(biāo)因噪聲產(chǎn)生的誤差都是獨立且隨機的,理論上本文算法對圖像噪聲引起的誤差是無法抑制的。3)像素分辨率:
一般情況下,攝像機的像素分辨率對圖像測量的精度有直接影響,現(xiàn)有視覺檢測技術(shù)都能達(dá)到亞像素分辨率,如MVTec 公司軟件產(chǎn)品的邊緣提取能力達(dá)到1/50像素,Keyence公司的IM-8000測量儀亞像素邊緣提取能力達(dá)到1/100像素。本小節(jié)分析不同像素分辨率對針腳位姿估算精度的影響,像素分辨率分別取1/10、1/5、1/2和1倍攝像機像素尺寸,其它參數(shù)按照表1設(shè)置。
圖5 位姿估計誤差與圖像噪聲關(guān)系
圖6 像素分辨率對位姿估算精度的影響
從圖6可見,像素分辨率越高,迭代和非迭代算法的針腳位姿估計精度都越高;總的來看,像素分辨率對迭代法估計精度的影響更明顯。旋轉(zhuǎn)視覺的針腳圖像通過背光拍攝,圖像對比度較高,因此針腳圖像坐標(biāo)的提取可獲得較高的分辨率。
4)針腳個數(shù):
如3.1節(jié)所分析,增加針腳元件針腳數(shù)量可增加式(7)方程的數(shù)量,這有助于提高旋轉(zhuǎn)角的擬合精度,進(jìn)而提升針腳位姿的估算精度。常見異形元件針腳數(shù)在2~8個左右,針腳數(shù)量更多的元件如PCI插槽等,元件本體較長,并且旋轉(zhuǎn)拍攝時容易出現(xiàn)針腳遮擋的情況,因此不適合用旋轉(zhuǎn)視覺檢測定位。本小節(jié)針對2~8個針腳的元件,分析針腳位姿估計精度與針腳數(shù)量的關(guān)系,其它參數(shù)按照表1設(shè)置。
從圖7可見,針腳個數(shù)越多,基于迭代的針腳位姿估計誤差越?。粓D中非迭代算法的結(jié)果曲線,增加針腳數(shù)會導(dǎo)致定位誤差變大,分析其原因為:新增針腳的旋轉(zhuǎn)半徑大,非迭代算法對旋轉(zhuǎn)角誤差沒有修正作用,因此相同轉(zhuǎn)角誤差時大的半徑所帶來的針腳位姿估計誤差也越大。
圖7 針腳個數(shù)與針腳位姿估算精度關(guān)系
表1仿真參數(shù)和旋轉(zhuǎn)角誤差皆根據(jù)插件機實際工作參數(shù)而定,常見異形元件針腳數(shù)為2~8個,異形元件的插件誤差通常要求不超過±0.05 mm,由圖7可知, 其中2針腳元件的迭代位姿估計誤差同比最大,但最大誤差基本在±0.018 mm以內(nèi),可見本文所提出的迭代方法的針腳位姿估算精度完全能滿足插件機的精度要求。
5)旋轉(zhuǎn)取像點數(shù):
本小節(jié)研究取像點數(shù)對位姿估算精度的影響,取像點數(shù)分別為4、6、8、12,旋轉(zhuǎn)角均勻分布在圓周上,其它參數(shù)按照表1設(shè)置。
圖8 取像點數(shù)與針腳位姿估計精度關(guān)系
由圖8可見,取像點數(shù)越多,基于迭代的針腳位姿估計精度越高,這是因為增加旋轉(zhuǎn)取像次數(shù)同樣可增加式(7)方程的數(shù)量,因而有助于提高旋轉(zhuǎn)角的擬合精度,進(jìn)而降低位姿估算誤差;但多的取像點數(shù)也是增大測量耗時的主要因素,因此需平衡取像點數(shù)與檢測效率之間的關(guān)系,目前常用的取像點數(shù)為8點;此外,增加取像次數(shù)也有助于非迭代算法降低位姿估計誤差,但因為該算法沒有修正旋轉(zhuǎn)角誤差,因而其估算誤差隨轉(zhuǎn)角誤差增加而增加。
為了驗證本文針腳位姿估計優(yōu)化方法的實時性,在配置為CPU i7-8550U、4.00 GHz、8 GB內(nèi)存的計算機上用Matlab2020a的時間探查器分析計算效率。除了迭代次數(shù)和閾值外,影響迭代耗時的主要因素是針腳數(shù)和旋轉(zhuǎn)取像點數(shù),本小節(jié)針對常用針腳個數(shù)和取像點數(shù)分析本文優(yōu)化方法的實時性。針腳個數(shù)分別取2、4、6、8,旋轉(zhuǎn)取樣點數(shù)分別取3、4、6、8、12,其它參數(shù)按照表1設(shè)置,算法平均耗時如表2所示。
表2 不同條件下優(yōu)化方法耗時表
從表2中可見,算法的耗時與針腳數(shù)量、取像點數(shù)基本正相關(guān)。目前異形元件插件機每輪插4~6個元件,平均每個元件耗時500~800 ms。插件頭從取件位移動至插件位一般需要350~400 ms,移動過程中同步進(jìn)行旋轉(zhuǎn)圖像采集、針腳圖像提取和位姿計算。從開始采集到完成針腳圖像提取一般需要200 ms左右;插件一般都是逐個進(jìn)行,因此第一個元件的針腳位姿估算至少有100 ms左右的處理時間。從表2可見,除了最高耗時135.80 ms的組合外,其它組合都能滿足首個元件的插件實時性要求,在常見2~8針腳元件以及取像點中,最高耗時也少于65 ms;插裝一個元件需要200 ms左右,因此隨后插裝的幾個元件,表中的所有組合都能滿足效率要求。
根據(jù)以上的仿真結(jié)果可得到如下結(jié)論: (1) 迭代法確實可降低因同步帶傳動帶來的旋轉(zhuǎn)角定位誤差對位姿估計精度的影響;(2)圖像噪聲越小迭代法的位姿估算精度越高;(3)針腳個數(shù)或取像點數(shù)越多,迭代算法的估算精度越高;(4)像素分辨率越高,迭代法的針腳位姿估計精度越好;提高像素分辨率,可以改善圖像噪聲大而轉(zhuǎn)角誤差較小時迭代法的位姿估算精度。
由于篇幅限制,上述數(shù)據(jù)主要根據(jù)表1參數(shù)配置得到的。將表1的元件針腳坐標(biāo)理論值和旋轉(zhuǎn)角,換為其它元件針腳坐標(biāo)或旋轉(zhuǎn)角度組合(旋轉(zhuǎn)半徑在25 mm以內(nèi),組合的角度差異一般要求20°以上),得到的數(shù)據(jù)與以上仿真結(jié)果類似。
本文在前期研究基礎(chǔ)上,針對因旋轉(zhuǎn)角誤差影響針腳位姿估計精度的問題,提出一種基于位置約束和迭代擬合的元件針腳位姿估計精度優(yōu)化方法。該方法利用元件針腳位置固定的約束關(guān)系,將圓擬合與旋轉(zhuǎn)角擬合相結(jié)合,通過迭代實現(xiàn)了針腳位姿精密估計;理論分析和仿真結(jié)果都表明,該方法的精度和實時性均能滿足異形插件的要求,本文研究為新款異形插件機因同步帶傳動引起的針腳位姿測量精度問題,提供了可行的解決方案。