本發(fā)明屬于圖像處理技術(shù)領(lǐng)域,涉及一種元件定位方法。
背景技術(shù):
隨著電子產(chǎn)業(yè)的發(fā)展和壯大,市場(chǎng)對(duì)電子產(chǎn)品的小型化和密集化提出了越來(lái)越高的要求。由于SMT(表面貼裝技術(shù),Surface Mount Technology)具有在精度,自動(dòng)化程度,和生產(chǎn)效率上具有極大的優(yōu)勢(shì),因此該技術(shù)現(xiàn)已廣泛應(yīng)用于電子產(chǎn)業(yè)。而作為其核心技術(shù)的貼片機(jī),受到元件封裝的多樣化,小型化等影響,受到了廣泛的研究。元件定位技術(shù)對(duì)貼片機(jī)的貼裝精度具有很大的影響。
現(xiàn)有元件定位技術(shù)主要集中在,利用元件的二值圖像,根據(jù)不同元件的特性對(duì)元件進(jìn)行定位。但是現(xiàn)有的這些方法的通用性不高,且對(duì)光照的魯棒性差。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明是為了解決現(xiàn)有貼片元件定位算法通用性差和對(duì)光照的魯棒性不高的問(wèn)題,提出的一種基于模板匹配的元件定位方法。
本發(fā)明所述的一種基于模板匹配的元件定位方法,該方法的具體步驟為:
步驟一、對(duì)待定位元件建立模板圖像,所述模板圖像中元件的引腳邊緣像素灰度值為a,背景灰度值為0;a為正整數(shù);
步驟二、以模板圖像的中心為原點(diǎn)建立直角坐標(biāo)系,獲得模板圖像的向量場(chǎng);
所述模板圖像的信息包括模板圖像的邊緣點(diǎn)到坐標(biāo)原點(diǎn)之間的距離和模板圖像的邊緣點(diǎn)與坐標(biāo)原點(diǎn)之間連線與模板圖像的直角坐標(biāo)系X軸之間的夾角;
步驟三、利用工業(yè)相機(jī),對(duì)元件進(jìn)行拍照,獲得元件圖像;利用邊緣提取方法提取元件的邊緣圖像;根據(jù)距離變換方法,計(jì)算元件邊緣圖像中的每個(gè)非邊緣像素點(diǎn)到邊緣點(diǎn)的距離,從而獲得元件的距離圖像;
步驟四、從元件的距離圖像中提取距離圖像的灰度下降方向;獲得距離圖像的梯度向量場(chǎng)GVF;
步驟五、利用步驟二和步驟四中獲得的模板圖像的向量場(chǎng)和距離圖像的梯度向量場(chǎng)信息,根據(jù)剛體力學(xué)原理對(duì)待定位元件的旋轉(zhuǎn)角度進(jìn)行估計(jì);
根據(jù)剛體力學(xué)原理獲得待定位元件的旋轉(zhuǎn)角度的具體方法為:利用公式(1):
Ok=Ok-1+sgn(MI(Ok-1))Os (1)
計(jì)算k次迭代時(shí)模板圖像的旋轉(zhuǎn)角度;其中,sgn(·)為符號(hào)函數(shù),Os為迭代步長(zhǎng),MI(Ok-1)為第k-1次迭代模板圖像的和力矩;
通過(guò)對(duì)所有模板邊緣點(diǎn)處的力矩疊加獲得模板圖像的和力矩:
其中,UT為第k次迭代時(shí)模板邊緣點(diǎn)集,UT=2DET(U,xk,yk,Ok),2DET為2維歐式變換,xk為第k次迭代時(shí)模板圖像中心在測(cè)試圖像中的X軸坐標(biāo),yk為第k次迭代時(shí)模板圖像中心在測(cè)試圖像中的Y軸坐標(biāo);
步驟六、利用距離圖像的梯度向量場(chǎng)的收斂性質(zhì),計(jì)算作用于模板中心的平均梯度向量場(chǎng)的值,對(duì)元件在元件圖像中的位置進(jìn)行估計(jì);利用迭代公式:
計(jì)算作用于模板中心的平均梯度向量場(chǎng)的值,實(shí)現(xiàn)對(duì)元件在元件圖像中的位置的估計(jì);其中,GVFX(x,y)和GVFY(x,y)分別代表距離圖像梯度場(chǎng)GVF在X軸和Y軸上的分量;xk-1和yk-1分別為第k-1次迭代時(shí)模板圖像中心在測(cè)試圖像中的X軸和Y軸的坐標(biāo),n為模板圖像中非零灰度值個(gè)數(shù),即邊緣點(diǎn)個(gè)數(shù);
步驟七、利用模板引腳邊緣最大半徑作為區(qū)域搜索半徑,建立元件候選搜索區(qū)域;
步驟八、針對(duì)每一個(gè)元件候選搜索區(qū)域,將步驟六公式(3)中元件的初始迭代位置設(shè)置為候選搜索區(qū)域的中心,將步驟五公式(1)中元件的初始迭代角度設(shè)置為候選搜索區(qū)域的長(zhǎng)軸方向;
步驟九、利用步驟六所述的迭代公式(3),計(jì)算每次迭代時(shí),位置變化幅度,建立位置終止條件;獲得元件在模板圖像中的坐標(biāo);
步驟十、利用距離費(fèi)用函數(shù),建立匹配費(fèi)用終止條件;獲得元件在模板圖像中的角度,實(shí)現(xiàn)元件的定位。
進(jìn)一步:步驟二所述的以模板圖像中心為原點(diǎn)建立直角坐標(biāo)系,提取模板圖像信息,獲得模板圖像的向量場(chǎng)的方法為:
首先,利用圖像處理方法獲得模板元件信息:元件大小、引腳個(gè)數(shù)、引腳長(zhǎng)度、引腳寬度、引腳種類和引腳所在位置;
其次,利用模板元件信息,建立引腳邊緣圖像,所述引腳邊緣圖中非零像素點(diǎn)集為U={um=(xm,ym)},其中um為點(diǎn)集中第m個(gè)點(diǎn),(xm,ym)為第m個(gè)點(diǎn)的坐標(biāo),單位為像素;
然后,以模板圖像中心為原點(diǎn)建立直角坐標(biāo)系,令C為從模板圖像中的一段邊緣線,點(diǎn)A為邊緣線C上的一個(gè)像素非0點(diǎn);原點(diǎn)O到點(diǎn)A之間的距離為dOA,且向量與向量之間的夾角為θAOX,如圖2所示,則在點(diǎn)A處所提取的距離信息為:
角度信息為:
其中,U為實(shí)數(shù)集合,利用求A點(diǎn)距離角度的方法,遍歷引腳邊緣圖像的所有邊緣點(diǎn),獲得模板圖像的向量場(chǎng)。
進(jìn)一步地:步驟三所述獲得元件的距離圖像的具體方法為:
利用邊緣提取方法提取元件的邊緣圖像;利用3-4DT矩陣計(jì)算元件邊緣圖像中每個(gè)非0像素點(diǎn)到最近的邊緣點(diǎn)的距離,并將元件的距離圖像表示為DT(x,y)。
進(jìn)一步地:步驟四所述獲得距離圖像的梯度向量場(chǎng)DTOF的具體方法為:
將[02π)均勻量化為8個(gè)離散通道:Φ={πn/4},n={0,1,…,7};建立3×3滑動(dòng)窗口,距離圖像中邊緣點(diǎn)的梯度方向?yàn)镈TO(x,y)等于-1;距離圖中非邊緣像素點(diǎn)的梯度方向?yàn)镈TO(x,y)∈Φ;
求取距離圖像的梯度方向場(chǎng)DTOF:
DTOF(x,y)={cos(DTO(x,y))sin(DTO(x,y))} (6)
梯度圖像的梯度場(chǎng)GVF:
進(jìn)一步地:步驟九中利用步驟六所述的位置迭代公式,計(jì)算每次迭代時(shí),位置變化幅度,建立位置終止條件的方法為:利用公式:
其中,(xk,yk)和(xk-1,yk-1)為第k次和第k-1次迭代時(shí)模板圖像中心在測(cè)試圖像中坐標(biāo);dP為第k次迭代時(shí),位置變化幅度。
進(jìn)一步地:步驟十中利用距離費(fèi)用函數(shù),建立匹配費(fèi)用終止條件的方法為:
利用公式:
其中,(xk,yk)為第k次迭代時(shí)模板圖像中心在測(cè)試圖像中坐標(biāo),Ok為第k次迭代時(shí)模板圖像的旋轉(zhuǎn)角度,UT為第k次迭代時(shí),模板圖像的邊緣點(diǎn)集,DT(ui)為點(diǎn)ui處的距離圖像中的距離值。
本發(fā)明在實(shí)現(xiàn)了元件的視覺(jué)定位功能的同時(shí),更是在算法通用性和魯棒性上達(dá)到一個(gè)比較高的水平。根據(jù)重復(fù)測(cè)試結(jié)果顯示,本發(fā)明對(duì)所選取實(shí)例計(jì)算一次所需時(shí)間平均為30ms,相同外界條件下100次重復(fù)測(cè)試的重復(fù)精度也達(dá)到±0.001mm內(nèi),本發(fā)明所述的基于視覺(jué)的元件定位方法無(wú)論精度,實(shí)時(shí)性,穩(wěn)定性都很高性能。
附圖說(shuō)明
圖1為8引腳芯片模板圖像;
圖2為具體實(shí)施方式二所述的模板圖像的信息示意圖;
圖3為具體實(shí)施方式二所述的3×3滑動(dòng)窗口示意圖;圖中i、j分別為3×3滑動(dòng)窗口的中心橫縱坐標(biāo);
圖4為具體實(shí)施方式四所述的距離圖像的梯度場(chǎng)示意圖;
圖5為具體實(shí)施方式四所述的距離圖像的梯度向量場(chǎng)示意圖;
圖6為本發(fā)明所述方法的流程圖。
具體實(shí)施方式
具體實(shí)施方式一、結(jié)合圖1說(shuō)明本實(shí)施方式,本實(shí)施方式所述的一種基于模板匹配的元件定位方法,該方法的具體步驟為:
步驟一、對(duì)待定位元件建立模板圖像,所述模板圖像中元件的引腳邊緣像素灰度值為a,背景灰度值為0;a為正整數(shù);模板圖像如圖1所示;
步驟二、以模板圖像的中心為原點(diǎn)建立直角坐標(biāo)系,獲得模板圖像的向量場(chǎng);
所述模板圖像的信息包括模板圖像的邊緣點(diǎn)到坐標(biāo)原點(diǎn)之間的距離和模板圖像的邊緣點(diǎn)與坐標(biāo)原點(diǎn)之間連線與模板圖像的直角坐標(biāo)系X軸之間的夾角;
步驟三、利用工業(yè)相機(jī),對(duì)元件進(jìn)行拍照,獲得元件圖像;利用邊緣提取方法提取元件的邊緣圖像;根據(jù)距離變換方法,計(jì)算元件邊緣圖像中的每個(gè)非邊緣像素點(diǎn)到邊緣點(diǎn)的距離,從而獲得元件的距離圖像;
步驟四、從元件的距離圖像中提取距離圖像的灰度下降方向;獲得距離圖像的梯度向量場(chǎng)GVF;
步驟五、利用步驟二和步驟四中獲得的模板圖像的向量場(chǎng)和距離圖像的梯度向量場(chǎng)信息,根據(jù)剛體力學(xué)原理對(duì)待定位元件的旋轉(zhuǎn)角度進(jìn)行估計(jì);
根據(jù)剛體力學(xué)原理獲得待定位元件的旋轉(zhuǎn)角度的具體方法為:利用公式(1):
Ok=Ok-1+sgn(MI(Ok-1))Os (1)
計(jì)算k次迭代時(shí)模板圖像的旋轉(zhuǎn)角度;其中:sgn(·)為符號(hào)函數(shù),Os為迭代步長(zhǎng),MI(Ok-1)為第k-1次迭代模板圖像的和力矩;
通過(guò)對(duì)所有模板邊緣點(diǎn)處的力矩疊加獲得模板圖像的和力矩:
其中,UT為第k次迭代時(shí)模板邊緣點(diǎn)集,UT=2DET(U,xk,yk,Ok),2DET為2維歐式變換,xk為第k次迭代時(shí)模板圖像中心在測(cè)試圖像中的X軸坐標(biāo),yk為第k次迭代時(shí)模板圖像中心在測(cè)試圖像中的Y軸坐標(biāo);
步驟六、利用距離圖像的梯度向量場(chǎng)的收斂性質(zhì),計(jì)算作用于模板中心的平均梯度向量場(chǎng)的值,對(duì)元件在元件圖像中的位置進(jìn)行估計(jì);利用迭代公式:
計(jì)算作用于模板中心的平均梯度向量場(chǎng)的值,實(shí)現(xiàn)對(duì)元件在元件圖像中的位置的估計(jì);其中,GVFX(x,y)和GVFY(x,y)分別代表距離圖像梯度場(chǎng)GVF在X軸和Y軸上的分量;xk-1和yk-1分別為第k-1次迭代時(shí)模板圖像中心在測(cè)試圖像中的X軸和Y軸的坐標(biāo),n為模板圖像中非零灰度值個(gè)數(shù),即邊緣點(diǎn)個(gè)數(shù);
步驟七、利用模板引腳邊緣最大半徑作為區(qū)域搜索半徑,建立元件候選搜索區(qū)域;
步驟八、針對(duì)每一個(gè)元件候選搜索區(qū)域,將步驟六公式(3)中元件的初始迭代位置設(shè)置為候選搜索區(qū)域的中心,將步驟五公式(1)中元件的初始迭代角度設(shè)置為候選搜索區(qū)域的長(zhǎng)軸方向;
步驟九、利用步驟六所述的迭代公式(3),計(jì)算每次迭代時(shí),位置變化幅度,建立位置終止條件;獲得元件在模板圖像中的坐標(biāo);
步驟十、利用距離費(fèi)用函數(shù),建立匹配費(fèi)用終止條件;獲得元件在模板圖像中的角度,實(shí)現(xiàn)元件的定位。
本發(fā)明首先,獲取待定位元件的信息,建立元件模板圖像,獲取元件非零像素點(diǎn)的距離和角度信息;其次,在線獲取元件圖片,利用邊緣提取方法提取邊緣信息,再通過(guò)距離變換得到元件的距離變換圖像;然后針對(duì)距離變換圖像獲取元件距離圖像的梯度場(chǎng);再次,利用元件梯度圖像建立搜索區(qū)域、初始位置和初始角度;再次利用剛體力學(xué)原理,通過(guò)迭代的方法,獲取元件在圖像中的位置和角度。最終實(shí)現(xiàn)元件的在線定位。
具體實(shí)施方式二、本實(shí)施方式是對(duì)具體實(shí)施方式一所述的一種基于模板匹配的元件定位方法的進(jìn)一步說(shuō)明,該方法的具體步驟為:步驟二所述的以模板圖像中心為原點(diǎn)建立直角坐標(biāo)系,提取模板圖像信息,獲得模板圖像的向量場(chǎng)的方法為:
首先,利用圖像處理方法獲得模板元件信息:元件大小、引腳個(gè)數(shù)、引腳長(zhǎng)度、引腳寬度、引腳種類和引腳所在位置;
其次,利用模板元件信息,建立引腳邊緣圖像,所述引腳邊緣圖中非零像素點(diǎn)集為U={um=(xm,ym)},其中um為點(diǎn)集中第m個(gè)點(diǎn),(xm,ym)為第m個(gè)點(diǎn)的坐標(biāo),單位為像素;
然后,以模板圖像中心為原點(diǎn)建立直角坐標(biāo)系,令C為從模板圖像中的一段邊緣線,點(diǎn)A為邊緣線C上的一個(gè)像素非0點(diǎn);原點(diǎn)O到點(diǎn)A之間的距離為dOA,且向量與向量之間的夾角為θAOX,如圖2所示,則在點(diǎn)A處所提取的距離信息為:
角度信息為:
其中,U為實(shí)數(shù)集合,利用求A點(diǎn)距離角度的方法,遍歷引腳邊緣圖像的所有邊緣點(diǎn),獲得模板圖像的向量場(chǎng)。
具體實(shí)施方式三、本實(shí)施方式是對(duì)具體實(shí)施方式一所述的一種基于模板匹配的元件定位方法的進(jìn)一步說(shuō)明,步驟三所述獲得元件的距離圖像的具體方法為:
利用邊緣提取方法:利用Sobel、Isotropic、SobelRoberts、Prewitt、Laplacian或Canny算子提取元件的邊緣圖像;
利用3-4DT矩陣計(jì)算元件邊緣圖像中每個(gè)非0像素點(diǎn)到最近的邊緣點(diǎn)的距離,并將元件的距離圖像表示為DT(x,y)。
具體實(shí)施方式四、本實(shí)施方式是對(duì)具體實(shí)施方式一、二或三所述的一種基于模板匹配的元件定位方法的進(jìn)一步說(shuō)明,步驟四所述獲得距離圖像的梯度向量場(chǎng)DTOF的具體方法為:
將[0 2π)均勻量化為8個(gè)離散通道:Φ={πn/4},n={0,1,…,7};建立3×3滑動(dòng)窗口,距離圖像中邊緣點(diǎn)的梯度方向?yàn)镈TO(x,y)等于-1;距離圖中非邊緣像素點(diǎn)的梯度方向?yàn)镈TO(x,y)∈Φ;求取距離圖像的梯度方向場(chǎng)DTOF:
DTOF(x,y)={cos(DTO(x,y)) sin(DTO(x,y))} (6)
梯度圖像的梯度場(chǎng)GVF:
具體實(shí)施方式五、本實(shí)施方式是對(duì)具體實(shí)施方式一、二或三所述的一種基于模板匹配的元件定位方法的進(jìn)一步說(shuō)明,步驟九中利用步驟六所述的位置迭代公式(3),計(jì)算每次迭代時(shí),位置變化幅度,建立位置終止條件的方法為:利用公式:
其中,(xk,yk)和(xk-1,yk-1)為第k次和第k-1次迭代時(shí)模板圖像中心在測(cè)試圖像中坐標(biāo);dP為第k次迭代時(shí),位置變化幅度。
具體實(shí)施方式六、本實(shí)施方式是對(duì)具體實(shí)施方式一、二或三所述的一種基于模板匹配的元件定位方法的進(jìn)一步說(shuō)明,驟十中利用距離費(fèi)用函數(shù),建立匹配費(fèi)用終止條件的方法為:
利用公式:
其中,(xk,yk)為第k次迭代時(shí)模板圖像中心在測(cè)試圖像中坐標(biāo),Ok為第k次迭代時(shí)模板圖像的旋轉(zhuǎn)角度,UT為第k次迭代時(shí),模板圖像的邊緣點(diǎn)集,DT(ui)為點(diǎn)ui處的距離圖像中的距離值。