胡廣華 黃俊鋒 王寧 蔡鑫垚 李靜蓉 王清輝
(華南理工大學(xué) 機(jī)械與汽車(chē)工程學(xué)院,廣東 廣州510640)
連接器作為一種連接電路模組的基本元件,被廣泛應(yīng)用于電氣設(shè)備中。隨著電氣設(shè)備集成化程度的提高,連接器結(jié)構(gòu)日益復(fù)雜。為了提高利用率,單個(gè)連接器上布置了多個(gè)緊湊排布的插孔以便插接更多的導(dǎo)線端子。
在傳統(tǒng)的人工電氣裝配過(guò)程中,由操作者從線組中取出特定規(guī)格的導(dǎo)線,再將其金屬端子插入對(duì)應(yīng)連接器的目標(biāo)插孔內(nèi)。該過(guò)程效率低,用工成本高,工作單調(diào)枯燥易出錯(cuò)。因此,開(kāi)發(fā)基于機(jī)器視覺(jué)的機(jī)器人自動(dòng)插線系統(tǒng)很有必要。實(shí)現(xiàn)該目標(biāo)的一個(gè)核心問(wèn)題在于如何準(zhǔn)確獲取連接器的插孔位置,從而引導(dǎo)機(jī)器人執(zhí)行器進(jìn)行位姿調(diào)整。由于連接器屬于弱(欠)紋理對(duì)象,其圖像缺乏豐富的局部像素特征,且工作環(huán)境存在背景雜亂、光照變化等干擾因素,因此魯棒、高精度的識(shí)別定位算法十分關(guān)鍵。
目前,針對(duì)目標(biāo)物體的識(shí)別,研究人員提出了各種圖像處理算法。其中,基于歸一化互相關(guān)的模板匹配方法通過(guò)計(jì)算模板圖像與原圖像塊的像素灰度分布的相關(guān)性來(lái)識(shí)別目標(biāo)區(qū)域[1],但該方法易受光照與視角變化的影響。Lowe[2]提出的SIFT算法對(duì)目標(biāo)圖像特征點(diǎn)進(jìn)行提取,并生成特征點(diǎn)的描述子用于匹配;Bay等[3]對(duì)SIFT算法進(jìn)行優(yōu)化,提出了匹配速度更快、魯棒性更強(qiáng)的SURF算法;但這兩種方法對(duì)于弱紋理特征的物體所能提取的關(guān)鍵點(diǎn)很少,在雜亂背景下極易產(chǎn)生誤匹配。Dalal等[4]提出了HOG(方向梯度直方圖)特征描述子,該方法計(jì)算量大,識(shí)別速度慢,且對(duì)噪聲較為敏感;Hinterstoisser等[5- 8]提出的LineMod方法利用量化梯度方向特征進(jìn)行模板匹配,能夠?qū)崿F(xiàn)目標(biāo)在雜亂背景和光照變化下的快速識(shí)別,但仍存在較多誤匹配、誤識(shí)別的情況;Drost等[9]提出采用深度相機(jī)獲取空間點(diǎn)云,并從中采樣出少量點(diǎn)對(duì)來(lái)構(gòu)成描述子進(jìn)行匹配以識(shí)別物體,但需要特殊的硬件支持,移植性較差。
對(duì)于目標(biāo)物體孔中心的定位,劉誠(chéng)等[10]利用顯微視覺(jué)系統(tǒng)并基于Hough變換來(lái)實(shí)現(xiàn)焊孔中心定位;Xue[11]利用線結(jié)構(gòu)光與工業(yè)相機(jī)構(gòu)成的視覺(jué)成像系統(tǒng)來(lái)定位類(lèi)圓孔中心;Seo等[12]基于雙目視覺(jué)并利用立體校正和橢圓擬合方法來(lái)確定圓孔中心的空間坐標(biāo);孫志遠(yuǎn)[13]提出了一種基于像素分布的模板匹配方法用于定位目標(biāo)孔的中心位置。上述研究均針對(duì)結(jié)構(gòu)簡(jiǎn)單的單個(gè)目標(biāo)孔中心的定位,對(duì)于連接器這種插孔緊湊排布、特征密集的對(duì)象并不適用。
針對(duì)上述問(wèn)題,文中提出一種基于累積量化梯度方向特征的連接器識(shí)別方法,實(shí)現(xiàn)了在雜亂背景及光照變換等干擾下的連接器像素區(qū)域的穩(wěn)定檢測(cè)。在此基礎(chǔ)上,針對(duì)連接器插孔密集分布造成的難以同時(shí)定位多個(gè)插孔中心的問(wèn)題,提出一種基于掃描線特征直方圖的多孔定位方法,以期實(shí)現(xiàn)單個(gè)連接器多個(gè)插孔中心的同時(shí)定位。
文中采用Eye-In-Hand工作模式,由工業(yè)相機(jī)、光源、工業(yè)機(jī)器人及工控機(jī)等構(gòu)成機(jī)器人插線視覺(jué)系統(tǒng),如圖1(a)所示。相機(jī)固定于機(jī)器人末端,通過(guò)機(jī)器人運(yùn)動(dòng)來(lái)完成對(duì)各連接器的圖像采集,再利用視覺(jué)處理算法對(duì)連接器進(jìn)行識(shí)別并對(duì)其插孔進(jìn)行定位。由于多個(gè)連接器布放于工作面板的不同位置,加上連接器本身的制造精度及在面板上布置時(shí)的安裝誤差等原因,所有連接器上的每個(gè)插孔位置均需在線測(cè)量。根據(jù)線孔裝配條件,位置測(cè)量誤差要求控制在0.5 mm范圍內(nèi)。成像系統(tǒng)坐標(biāo)變換模型如圖1(b)所示,像素坐標(biāo)系到世界坐標(biāo)系(機(jī)器人基坐標(biāo)系)的空間變換關(guān)系滿足:
(1)
式中:zc為比例系數(shù);A為相機(jī)內(nèi)參矩陣,其參數(shù)通過(guò)張氏標(biāo)定法獲得[14];M為相機(jī)外參矩陣,滿足
Axw+Byw+Czw+D=0
(3)
式中,常量A、B、C、D為待定參數(shù),它們決定平面的法線方向及截距。為了確定以上參數(shù),可通過(guò)示教的方式人工驅(qū)動(dòng)機(jī)器人末端點(diǎn)與平面α上的多個(gè)選定點(diǎn)接觸,由式(3)建立方程組,利用最小二乘法求解。
(a)視覺(jué)成像系統(tǒng)的結(jié)構(gòu)
(b)視覺(jué)成像系統(tǒng)的坐標(biāo)變換模型
系統(tǒng)標(biāo)定好后,從插孔中心像素坐標(biāo)出發(fā),通過(guò)式(1)-(3)可解出其在世界坐標(biāo)系下的坐標(biāo)值。
為了精確定位連接器上各插孔的中心位置,需要在雜亂背景和光照變化的干擾下,從采集圖像中識(shí)別連接器。本節(jié)基于圖像的累積量化梯度方向特征,并采用模板特征匹配的方法對(duì)連接器進(jìn)行識(shí)別。
采集的目標(biāo)連接器RGB圖像如圖2所示。對(duì)每個(gè)顏色通道采用Sobel算子計(jì)算x和y方向的梯度分量Sx和Sy,得到梯度幅值和方向如下:
(4)
式中,Mc為顏色通道c的梯度幅值,Ac為梯度方向。為了提取梯度的主要成分,取幅值最大的顏色通道的梯度方向用于后續(xù)計(jì)算,即
(5)
圖2 視覺(jué)成像系統(tǒng)采集的連接器圖像
圖3 梯度方向的調(diào)整
采用式(5)得到像素的梯度方向,根據(jù)其所在的量化區(qū)間,將梯度方向值量化為方向值最接近的區(qū)間邊界值對(duì)應(yīng)的編號(hào),并依照劃分區(qū)間數(shù)進(jìn)行對(duì)應(yīng)位數(shù)的二進(jìn)制編碼,如圖4所示。
圖4 量化梯度方向編碼
通過(guò)上述方法對(duì)采集的連接器圖像進(jìn)行處理,獲得量化梯度方向特征圖,如圖5所示。
圖5 連接器圖像梯度方向量化結(jié)果
首先制作一張如圖6(a)所示的模板圖像,提取其量化梯度方向特征,如圖6(b)所示。
圖6 模板圖像及其量化梯度方向特征
為了提高識(shí)別的魯棒性,需要從模板圖像中獲取更多具備抗噪性的特征?;趲缀螌W(xué)模糊[15- 16]思想,在小范圍內(nèi)對(duì)模板圖像的每個(gè)像素進(jìn)行n次隨機(jī)旋轉(zhuǎn)和平移變換,其像素變換矩陣為
(6)
式中,s為范圍[0,1]內(nèi)的隨機(jī)數(shù),θ為像素點(diǎn)繞中心旋轉(zhuǎn)的角度,tx和ty分別為x方向和y方向的像素平移量。對(duì)每次隨機(jī)旋轉(zhuǎn)和平移變換后的圖像提取量化梯度方向特征,并生成各自的方向碼圖像,再對(duì)提取的量化梯度方向碼圖像進(jìn)行累積,即
(7)
式中,orij(x,y)為第j張?zhí)卣鲌D像中(x,y)位置的梯度方向碼,COj(x,y)為累加第j張?zhí)卣鲌D后的累積方向碼,n為量化梯度方向特征的圖像數(shù)量。累積梯度方向的疊加過(guò)程如圖7(a)所示。對(duì)模板圖像的所有量化梯度方向特征進(jìn)行累積,結(jié)果如圖7(b)所示。同時(shí)統(tǒng)計(jì)每個(gè)位置特征累積的次數(shù),即
(8)
式中,kj(x,y)取值為0或1,代表各個(gè)量化梯度方向特征圖中像素位置(x,y)是否有量化方向碼。所得到的模板圖像的累積特征頻率如圖7(c)所示。
(a)累積梯度方向疊加過(guò)程
圖7 模板圖像累積量化梯度方向特征的生成過(guò)程
為了應(yīng)對(duì)連接器可能與拍攝圖像水平方向存在角度偏差的情況,需要對(duì)原有模板圖像進(jìn)行旋轉(zhuǎn)變換,擴(kuò)展多組模板,得到多張模板圖像。對(duì)每張模板圖像進(jìn)行上述的量化和累積方向特征操作,可以獲得對(duì)應(yīng)的累積方向特征圖。
如圖8所示,以模板圖像為滑動(dòng)窗口,在待測(cè)圖像中進(jìn)行遍歷匹配。為每個(gè)窗口位置的匹配度進(jìn)行評(píng)分:
(9)
式中:w(i,j)可以通過(guò)式(8)獲得;H和W為模板圖像的高度和寬度;φ表示在對(duì)應(yīng)位置下,模板的累積量化梯度方向特征包含目標(biāo)圖像提取的量化方向特征時(shí)對(duì)應(yīng)的累積特征數(shù)量,即當(dāng)oriI∈oriT時(shí),滿足oriI∧oriT>0,得到
(10)
結(jié)合式(9)和(10),得到如圖9所示的模板匹配結(jié)果,選取結(jié)果中得分最高的位置(即圖中數(shù)值為1的位置)作為最終識(shí)別的結(jié)果。
圖8 模板匹配過(guò)程
圖9 模板匹配結(jié)果
對(duì)于其他通過(guò)旋轉(zhuǎn)變換擴(kuò)展的模板圖像,采用上述模板匹配方法,可以得到多組模板匹配得分,通過(guò)比較,選取最高得分對(duì)應(yīng)模板的旋轉(zhuǎn)角度作為連接器的角度偏差值。
在確定了目標(biāo)連接器的像素區(qū)域及其在圖像水平方向的角度偏差后,還需進(jìn)一步獲取連接器上各插孔中心的像素位置。
對(duì)連接器像素區(qū)域進(jìn)行角度偏差修正,并利用限制對(duì)比度自適應(yīng)直方圖均衡化[17]方法進(jìn)行預(yù)處理,以減小光照和視角變化對(duì)插孔定位造成的干擾。
考慮到插孔的特征,通過(guò)提取各插孔的邊緣確定其中心位置。利用水平和豎直掃描線分別對(duì)預(yù)處理圖像進(jìn)行掃描,根據(jù)單根掃描線所在像素行或列的灰度分布,構(gòu)造其灰度直方圖,如圖10所示。標(biāo)記圖10中波峰對(duì)應(yīng)的插孔邊緣點(diǎn)位置,且波峰兩側(cè)灰度基本對(duì)稱(chēng)分布,可以據(jù)此進(jìn)行邊緣特征提取。
(a)掃描線下的單行像素
圖10 掃描線灰度直方圖
為進(jìn)一步減少亮度不均帶來(lái)的影響,對(duì)每根掃描線數(shù)據(jù)進(jìn)行歸一化,即
(11)
式中,N為歸一化后的圖像,I為原圖像,γ為設(shè)定的下限,β為設(shè)定的上限,γ取0,β取1。
通過(guò)水平掃描線對(duì)圖像進(jìn)行掃描,生成每根掃描線所在行像素的位置(序號(hào))-灰度直方圖,并進(jìn)行歸一化處理。設(shè)某行第k個(gè)像素的序號(hào)為xk,其灰度值為f(xk),邊緣提取的具體步驟如下。
步驟1 寬度為W的窗口以xk為中心,沿著直方圖橫坐標(biāo)滑動(dòng),W為奇數(shù)且滿足3≤W<δ,δ為相鄰波峰的寬度。對(duì)窗口內(nèi)像素進(jìn)行遍歷,若f(xk)值大于設(shè)定閾值,且滿足
(12)
則此時(shí)的像素坐標(biāo)歸入候選集合P,
步驟2 由于插孔邊緣兩側(cè)灰度分布基本相同,故對(duì)于P中每個(gè)元素p,若在以p為中心的窗口范圍內(nèi)滿足條件
(13)
則元素p保留,否則剔除。式(13)中,t為設(shè)定的閾值。
步驟3 若P中元素的數(shù)量與插孔邊緣數(shù)量相同,則P為該掃描線最終提取的邊緣特征集,否則判定為無(wú)效集合,進(jìn)行下一掃描線的邊緣特征提取。
對(duì)每根水平掃描線均采用上述步驟進(jìn)行處理,可以得到水平方向的插孔邊緣點(diǎn)特征集合L={Pi|i=1,…,l},其中l(wèi)為水平掃描線上有效波峰集合的數(shù)量。對(duì)于豎直掃描線,采用上述方法提取豎直方向的插孔邊緣點(diǎn)特征V={Pi|i=1,…,v},其中v為豎直掃描線上有效波峰集合的數(shù)量。
利用已知的連接器插孔邊緣分布規(guī)律和插孔數(shù)量,可以對(duì)水平方向的邊緣特征集L與豎直方向的邊緣特征集V的元素進(jìn)行分類(lèi)重組。
設(shè)單個(gè)連接器上的插孔行數(shù)為M+1,列數(shù)為N+1,則水平方向孔邊緣的數(shù)量為N,豎直方向孔邊緣的數(shù)量為M(不計(jì)孔的最外圍邊緣)。用lij表示L中的元素li的第j個(gè)元素(即第j條水平邊緣上的一點(diǎn)),而vij表示V中的元素vi的第j個(gè)元素(即第j條豎直邊緣上的一點(diǎn)),插孔邊緣分布及編號(hào)方法如圖11所示。為了獲取每個(gè)插孔中心的位置,需要將集合L和V的元素進(jìn)行重組,具體步驟如下。
圖11 插孔邊緣分布及編號(hào)方法示意
步驟3 對(duì)所有水平邊緣和豎直邊緣進(jìn)行重組和歸類(lèi),可以得到屬于所有插孔的邊緣點(diǎn)集合{Sk|k=1,…,MN}。
圖12 插孔定位結(jié)果
采用基于累積量化梯度方向的模板匹配方法對(duì)連接器進(jìn)行識(shí)別。選取參數(shù)tx和ty的取值均為2,旋轉(zhuǎn)角度θ取值為20°,對(duì)不同類(lèi)型連接器對(duì)象進(jìn)行算法測(cè)試,并且在不同的背景下進(jìn)行實(shí)驗(yàn),以此驗(yàn)證算法的魯棒性。
首先,測(cè)試算法對(duì)幾種類(lèi)型連接器的識(shí)別效果。通過(guò)視覺(jué)成像系統(tǒng)在背景相對(duì)簡(jiǎn)單的情況下采集類(lèi)型Ⅰ、Ⅱ、Ⅲ的連接器圖像,如圖13所示。事先制作好相應(yīng)的模板圖像,采用累積量化梯度方向特征進(jìn)行模板匹配,分別得到匹配得分映射圖,其中匹配度越高的位置得分越高。圖中虛線框表示最終識(shí)別的連接器像素區(qū)域,可以看出,對(duì)于幾種不同類(lèi)型的連接器,該算法均可以準(zhǔn)確且穩(wěn)定識(shí)別。
各行從左到右依次為原始圖像、模板匹配得分圖、定位結(jié)果(虛線框)
另外,由于連接器的安裝位置周?chē)赡軙?huì)存在導(dǎo)線、特殊標(biāo)記等干擾,因此需要在雜亂背景下進(jìn)行算法的魯棒性測(cè)試。采集連接器在不同雜亂背景下的圖像,得到的魯棒性測(cè)試結(jié)果如圖14所示??梢钥闯?,即使背景條件存在不同程度的雜亂,甚至存在局部遮擋,文中算法仍可穩(wěn)定識(shí)別出目標(biāo)連接器的像素區(qū)域,具備較好的魯棒性。
各行從左到右依次為原始圖像、模板匹配得分圖、定位結(jié)果(虛線框)
對(duì)不同類(lèi)型的連接器進(jìn)行插孔定位測(cè)試。采集不同類(lèi)型的連接器圖像,利用識(shí)別的連接器區(qū)域,并采用插孔定位方法進(jìn)行每個(gè)連接器插孔的中心像素位置提取,結(jié)果如圖15所示,其中白色十字光標(biāo)即為插孔中心定位結(jié)果。算法執(zhí)行過(guò)程在同一臺(tái)電腦上運(yùn)行(Core i7,8G RAM),采集的原始圖像尺寸為2 560像素×1 920像素。為提高運(yùn)行效率,連接器識(shí)別時(shí)采用降采樣方法,將圖像尺寸縮小為640像素×480像素,定位插孔時(shí)采用原始圖像大小。圖15結(jié)果表明,在一定光源條件下,文中算法對(duì)于結(jié)構(gòu)類(lèi)似的不同類(lèi)型連接器均可以實(shí)現(xiàn)插孔定位。從目標(biāo)識(shí)別到插孔定位整個(gè)算法過(guò)程的耗時(shí)如表1所示。由于不同類(lèi)型的連接器檢測(cè)時(shí)采用的模板尺寸存在差異,因此算法檢測(cè)耗時(shí)也存在差異,但總體上整個(gè)算法過(guò)程的耗時(shí)在0.5 s左右。由于連接器插孔定位僅需在插線操作前進(jìn)行一次檢測(cè),裝配過(guò)程無(wú)須再重復(fù)檢測(cè),故該步驟的檢測(cè)速度對(duì)整個(gè)自動(dòng)插線系統(tǒng)插線效率的影響有限。
圖15 不同類(lèi)型連接器的插孔定位結(jié)果
表1 連接器識(shí)別及插孔定位算法的耗時(shí)
取10個(gè)Ⅰ型連接器對(duì)插孔的定位精度進(jìn)行驗(yàn)證。實(shí)驗(yàn)前先在所搭建的實(shí)驗(yàn)框架(工作面板)上安裝輔助定位塊,以定位塊矩形通孔的邊緣為基準(zhǔn)建立工件坐標(biāo)系,并利用工業(yè)機(jī)器人坐標(biāo)系統(tǒng)進(jìn)行標(biāo)定,如圖16所示。將連接器固定于定位塊的矩形通孔內(nèi),使得連接器插接面與輔助定位塊的前端面平齊,邊緣與輔助定位塊通孔邊緣對(duì)齊。事先采用游標(biāo)卡尺(分度值為0.02 mm)對(duì)連接器的插孔尺寸進(jìn)行測(cè)量,得到每個(gè)插孔的長(zhǎng)、寬及孔邊界到連接器外邊緣的距離,將每個(gè)插孔均視為矩形孔,這樣便可得到插孔中心在工件坐標(biāo)系下的準(zhǔn)確坐標(biāo)(xr,yr,zr)。
圖16 工件坐標(biāo)系的建立
圖17 連接器的插孔定位誤差分布
文中提出了一種基于累積量化梯度方向特征的連接器識(shí)別方法來(lái)實(shí)現(xiàn)背景雜亂、光照變化等干擾下的連接器像素區(qū)域的穩(wěn)定檢測(cè),并在此基礎(chǔ)上提出基于掃描線直方圖的多孔中心定位方法,用于解決連接器插孔密集分布造成的難以同時(shí)定位多個(gè)插孔中心的問(wèn)題。實(shí)驗(yàn)結(jié)果表明,文中提出的連接器識(shí)別算法具有良好的魯棒性,可以應(yīng)對(duì)復(fù)雜的插線環(huán)境,孔中心定位算法可以通過(guò)單次檢測(cè)同時(shí)定位單個(gè)連接器的多個(gè)插孔中心,且能滿足線孔裝配的精度要求。盡管如此,文中所提出的連接器識(shí)別算法僅支持單一尺度下的檢測(cè),未來(lái)考慮通過(guò)圖像金字塔分解、空間重采樣等技術(shù)增加對(duì)縮放、透視變形等工況的支持。