本發(fā)明涉及一種對典型零部件的識別與定位方法,尤其涉及一種基于Kinect的典型零部件識別與定位方法。
背景技術(shù):
:
近年來,機(jī)器視覺以其非接觸式、較寬的光譜響應(yīng)范圍、定位、測量和缺陷檢測的優(yōu)勢,在軍事、農(nóng)作物質(zhì)量檢測、人臉識別、指紋識別、發(fā)票號碼識別、醫(yī)學(xué)圖像檢測得到了廣泛的應(yīng)用。
在自動化拆卸中,機(jī)器視覺是自動獲取零部件的特征信息和特征參數(shù)的一種較為可行的技術(shù)方法。對一些高要求、高負(fù)荷的重復(fù)性和智能性的工作,比如細(xì)微缺陷檢測、零部件測量,人眼很難持續(xù)、穩(wěn)定的完成,機(jī)器視覺可以高效、高質(zhì)量的完成檢測任務(wù)。
在機(jī)器視覺中,圖像采集設(shè)備大多制造工藝復(fù)雜,精確度高,價格昂貴。以Bumblebee2為例,該相機(jī)價格昂貴、體積大。但是,微軟Kinect相機(jī)的出現(xiàn),因其簡單、價廉、方便,在三維重構(gòu)、物體跟蹤和姿態(tài)識別等領(lǐng)域被廣泛應(yīng)用。
目前Kinect在零部件識別方面尚未有公開發(fā)表的文獻(xiàn)?;谝陨媳尘?,本發(fā)明深入研究了基于Kinect的零部件識別與定位方法,拓寬了Kinect的應(yīng)用領(lǐng)域。
技術(shù)實現(xiàn)要素:
:
發(fā)明目的:
為了解決現(xiàn)有零部件識別中多采用圖像識別的方法進(jìn)行識別,很難直接確定零部件所在的空間位置的問題,本發(fā)明提供了一種基于Kinect的典型零部件識別與定位方法,使用Kinect設(shè)備能夠提供目標(biāo)的深度圖像和彩色圖像,在對零部件識別的過程中確定零部件所在的空間位置。
技術(shù)方案:
本發(fā)明是通過以下技術(shù)方案來實現(xiàn)的:
基于Kinect的典型零部件識別與定位方法,其特征在于:首先利用Kinect傳感器獲取的彩色與深度圖像提取出兩者之間的仿射變換矩陣,實現(xiàn)彩色圖像的校正;然后利用相關(guān)系數(shù)匹配法實現(xiàn)校正后的彩色圖像零部件識別;最后利用彩色與深度圖像的對應(yīng)關(guān)系對零部件進(jìn)行定位。
采用Kinect傳感器對零部件進(jìn)行識別與定位,具體步驟為:
(1)對圖像進(jìn)行矯正:Kinect設(shè)備所獲取的深度圖像與彩色圖像里物體的大小不一致,彩色圖像里的人物偏小,所以利用仿射變換對彩色圖像進(jìn)行矯正,使彩色圖像里的目標(biāo)與深度圖像里的目標(biāo)重合;
(2)零部件的圖像識別:利用Kinect提取零部件的彩色圖像,對彩色圖像利用仿射變換矩陣進(jìn)行仿射變換,然后將彩色圖像轉(zhuǎn)換為灰度圖像,利用相關(guān)系數(shù)法對彩色圖像進(jìn)行模板匹配識別;相關(guān)系數(shù)匹配方法將模板對其均值的相對值與圖像對其均值的相關(guān)進(jìn)行匹配,根據(jù)R(x,y)來判斷相關(guān)性,其中:
式中:Sx,y意思是以(x,y)為坐上角匹配首點(diǎn);m×n大小的子塊;為子塊圖像Sx,y的灰度均值;為模板圖像T的灰度均值;
(3)零部件位姿計算:通過彩色圖像提取出典型零部件中心點(diǎn)坐標(biāo),圖像經(jīng)過變換,彩色圖像與深度圖像重合,從深度圖像里提取點(diǎn)的深度值,然后利用Kinect SDK工具包將零部件的中心點(diǎn)的二維圖像坐標(biāo)轉(zhuǎn)換為相對于Kinect的三維坐標(biāo),從而對零部件定位。
優(yōu)點(diǎn)及效果:
整個識別過程中的設(shè)備,包括Kinect傳感器和筆記本電腦,成本低。
整個識別過程都是由設(shè)備自動完成,零部件識別與定位快速、精確。
利用Kinect不僅可以對零部件進(jìn)行識別,還可以確定零部件所在的空間位置。
附圖說明:
圖1為Kinect圖像,其中圖1(a)為深度圖像,圖1(b)為彩色圖像。
圖2為掃描黑色木板示意圖。
圖3為Kinect圖像示意圖,其中圖3(a)為深度圖像,圖3(b)為彩色圖像。
圖4為仿射變換后對比示意圖,其中圖4(a)為深度圖像,圖4(b)為仿射變換后彩色圖像。
圖5為仿射變換圖,其中圖5(a)為彩色圖像,圖5(b)為仿射變換后圖像。
圖6為灰度圖像。
圖7為圖像匹配示意圖,其中圖7(a)為搜索圖S匹配示意圖,圖7(b)為模板T匹配示意圖。
圖8為定位示意圖。
具體實施方式:
本發(fā)明涉及一種基于Kinect的典型零部件識別與定位方法,是一種方便、有效地零部件識別與定位方法。首先利用Kinect傳感器獲取的彩色與深度圖像提取出兩者之間的仿射變換矩陣,實現(xiàn)彩色圖像的校正;然后利用相關(guān)系數(shù)匹配法實現(xiàn)校正后的彩色圖像零部件識別;最后利用彩色與深度圖像的對應(yīng)關(guān)系對零部件進(jìn)行定位。
采用Kinect傳感器對零部件進(jìn)行識別與定位,具體步驟為:
(1)對圖像進(jìn)行矯正:Kinect設(shè)備所獲取的深度圖像與彩色圖像里物體的大小不一致,彩色圖像里的人物偏小,所以利用仿射變換對彩色圖像進(jìn)行矯正,使彩色圖像里的目標(biāo)與深度圖像里的目標(biāo)重合;
(2)零部件的圖像識別:利用Kinect提取零部件的彩色圖像,對彩色圖像利用仿射變換矩陣進(jìn)行仿射變換,然后將彩色圖像轉(zhuǎn)換為灰度圖像,利用相關(guān)系數(shù)法對彩色圖像進(jìn)行模板匹配識別;相關(guān)系數(shù)匹配方法將模板對其均值的相對值與圖像對其均值的相關(guān)進(jìn)行匹配,根據(jù)R(x,y)來判斷相關(guān)性,其中:
式中:Sx,y意思是以(x,y)為坐上角匹配首點(diǎn);m×n大小的子塊;為子塊圖像Sx,y的灰度均值;為模板圖像T的灰度均值;
(3)零部件位姿計算:通過彩色圖像提取出典型零部件中心點(diǎn)坐標(biāo),圖像經(jīng)過變換,彩色圖像與深度圖像重合,從深度圖像里提取點(diǎn)的深度值,然后利用Kinect SDK工具包將零部件的中心點(diǎn)的二維圖像坐標(biāo)轉(zhuǎn)換為相對于Kinect的三維坐標(biāo),從而對零部件定位。
下面結(jié)合附圖和實施例對本發(fā)明做進(jìn)一步的說明:
零部件識別與定位,如圖1所示,彩色圖像比深度圖像包含更多的圖像細(xì)節(jié),能滿足識別一些結(jié)構(gòu)復(fù)雜的零部件需求。但是彩色圖像里提取的只是圖像中的坐標(biāo)信息,而利用深度圖像能提取零部件的三維空間信息,達(dá)到對零部件的識別與定位要求?;谝陨咸匦?,可以同時利用深度圖像與彩色圖像對零部件進(jìn)行識別,并確定零部件所在的三維空間位置,具體步驟如下:
(1)圖像矯正,Kinect設(shè)備所獲取的深度圖像與彩色圖像里目標(biāo)的大小不一致,深度圖像里的目標(biāo)偏大,如圖1所示。本文提出了基于仿射變換的圖像校正方法。通過圖像校正,彩色圖像與深度圖像重合,對重合后的彩色圖像進(jìn)行識別,并實現(xiàn)對零部件的定位。
以一塊規(guī)則的正方形黑色木板平面作為目標(biāo),利用Kinect對其進(jìn)行掃描,獲取深度圖像與彩色圖像,圖2給出了Kinect掃描黑色木板示意圖,圖3給出了獲取的深度圖像與彩色圖像。
如圖3所示,提取深度圖像內(nèi)黑色部分A,B,C三個角的二維坐標(biāo)(xa,ya),(xb,yb),(xc,yc)。提取彩色圖像內(nèi)黑色部分A,B,C三個角的坐標(biāo)(x'a,y'a),(x'b,y'b),(x'c,y'c),將三對點(diǎn)的坐標(biāo)代入矩陣(1)中。
聯(lián)立六個方程解六個未知數(shù),得到一個2x3的仿射變換矩陣R。
其中:
利用仿射變換矩陣R對彩色圖像進(jìn)行仿射變換,圖4給出了變換后對比示意圖。
如圖5所示,校正后彩色圖像中A,B,C與深度圖像中A,B,C位置重合
(2)零部件的圖像識別:圖像校正后,彩色圖像與深度圖像重合,對重合后的彩色圖像進(jìn)行識別,方便了后續(xù)處理中零部件的定位。以六角螺母為例,利用Kinect提取零部件的彩色圖像,根據(jù)仿射變換矩陣對彩色圖像進(jìn)行仿射變換,圖5給出仿射變換前后對比圖。
如圖5所示,仿射變換后,彩色圖像中的六角螺母圖與深度圖像一致。圖像完成仿射變換后,將彩色圖像轉(zhuǎn)換為灰度圖像,如圖6所示。
對于圖6所示的灰度圖像,利用相關(guān)系數(shù)匹配法進(jìn)行識別。相關(guān)系數(shù)匹配方法將模板對其均值的相對值與圖像對其均值的相關(guān)進(jìn)行匹配,根據(jù)R(x,y)來判斷相關(guān)性。圖7給出了圖像匹配示意圖,其中:
式中:Sx,y意思是以(x,y)為坐上角匹配首點(diǎn);m×n大小的子塊;為子塊圖像Sx,y的灰度均值;為模板圖像T的灰度均值。
如圖7所示,搜索圖S是480x640的圖像,用m×n的模板圖像T來匹配。用這種方法是為了找到一種測度,使模板與在搜索圖中查找的圖像是否為最佳匹配。相關(guān)系數(shù)法是一種比較好的方法來表示匹配測度,匹配后,根據(jù)相似度的大小來識別圖像里的零部件。
(3)零部件位姿計算:典型零部件的位姿是在空間坐標(biāo)系下的坐標(biāo),即世界坐標(biāo),而上一節(jié)由匹配算法得到的只是在圖像中的坐標(biāo),難以定位。若想得到典型零部件的空間位姿,可以利用彩色圖像與深度圖像的對應(yīng)關(guān)系求取,圖8給出了零部件定位示意圖。
如圖8所示,通過彩色圖像提取出典型零部件中心點(diǎn)P坐標(biāo)(u,v),圖像經(jīng)過變換,彩色圖像與深度圖像重合,從深度圖像里提取P點(diǎn)的深度值D,然后利用Kinect SDK工具包將零部件的中心點(diǎn)P的二維圖像坐標(biāo)轉(zhuǎn)換為相對于Kinect的三維坐標(biāo)(xp,yp,zp),從而對零部件起定位的效果。