本發(fā)明一種基于主動視覺的手眼系統(tǒng)自標(biāo)定方法屬于機(jī)器人標(biāo)定技術(shù)領(lǐng)域,涉及的是一種基于主動視覺的手眼系統(tǒng)自標(biāo)定。
背景技術(shù):
視覺測量與控制作為機(jī)器人智能化最重要的實(shí)現(xiàn)方式之一,可以大幅提高機(jī)器人操作的效率和精度,目前在工業(yè)生產(chǎn),特別是在測量、抓取、焊接等領(lǐng)域,有著非常廣泛的應(yīng)用。在實(shí)際應(yīng)用中,攝像機(jī)通常被固定在機(jī)器人機(jī)械手的末端執(zhí)行器上,隨著末端執(zhí)行器的移動而移動,這樣就構(gòu)成了一個(gè)基于機(jī)器人本體的手眼系統(tǒng)。機(jī)器人在生產(chǎn)操作時(shí),需要知道目標(biāo)物體相對于機(jī)械手末端執(zhí)行器的位置,而目標(biāo)物體的位置信息可以通過手眼系統(tǒng)的自標(biāo)定來獲取,獲取的關(guān)鍵在于確定機(jī)械手末端坐標(biāo)系與攝像機(jī)坐標(biāo)系之間的相對位置關(guān)系。
為了實(shí)現(xiàn)自標(biāo)定,目前常用的方法是在不使用標(biāo)定參照物的基礎(chǔ)上,精確控制攝像機(jī)做線性無關(guān)的平移運(yùn)動和旋轉(zhuǎn)運(yùn)動,只需場景中的1個(gè)或多個(gè)特征點(diǎn),即可線性求解手眼系統(tǒng)中的攝像機(jī)內(nèi)參矩陣、手眼關(guān)系、特征點(diǎn)目標(biāo)深度等信息。
目前,北京理工大學(xué)提出的專利申請“一種機(jī)器人線結(jié)構(gòu)光視覺測量系統(tǒng)的手眼標(biāo)定方法”(專利申請?zhí)朿n201510419925.4,公開號cn105021139a)公開了一種機(jī)器人線結(jié)構(gòu)光視覺測量系統(tǒng)的手眼標(biāo)定方法。該方法根據(jù)機(jī)器人運(yùn)動特點(diǎn),將機(jī)器人的運(yùn)動關(guān)系通過坐標(biāo)系的建立展現(xiàn)出來。通過控制機(jī)器人末端的移動,并結(jié)合齊次變換矩陣原理,獲得機(jī)器人移動前后攝像機(jī)的運(yùn)動量,進(jìn)而根據(jù)手眼關(guān)系模型獲得最終手眼關(guān)系矩陣。該方法詳細(xì)解釋了通過3次移動求解手眼關(guān)系矩陣的方法。但該方法并未涉及攝像機(jī)內(nèi)參矩陣、特征點(diǎn)目標(biāo)深度等相關(guān)參數(shù)的求解。
目前,許海霞等提出了一種基于場景中單個(gè)景物點(diǎn)的機(jī)器人手眼關(guān)系標(biāo)定方法。通過精確控制機(jī)械手末端執(zhí)行器做5次以上平移運(yùn)動和2次以上實(shí)旋轉(zhuǎn)運(yùn)動,攝像機(jī)對場景中的單個(gè)景物點(diǎn)進(jìn)行成像。通過景物點(diǎn)的視差及深度值反映攝像機(jī)的運(yùn)動,建立機(jī)械手末端執(zhí)行器與攝像機(jī)兩坐標(biāo)系之間相對位置的約束方程組,線性求得攝像機(jī)內(nèi)參數(shù)及手眼關(guān)系。張黎爍等提出僅需場景中2個(gè)特征點(diǎn),通過控制攝像機(jī)做4次線性無關(guān)的平移運(yùn)動和2次實(shí)旋轉(zhuǎn)運(yùn)動,即可實(shí)現(xiàn)手眼系統(tǒng)的標(biāo)定。以上方法中涉及的平移運(yùn)動和實(shí)旋轉(zhuǎn)運(yùn)動次數(shù)過多,可進(jìn)一步簡化。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的是針對上述不足之處提供一種基于主動視覺的手眼系統(tǒng)自標(biāo)定方法,該方法無需標(biāo)定參照物,只需借助于場景中的2個(gè)特征點(diǎn),通過精確控制攝像機(jī)做4次線性無關(guān)的平移運(yùn)動和1次旋轉(zhuǎn)運(yùn)動,即可依次實(shí)現(xiàn)對手眼關(guān)系旋轉(zhuǎn)矩陣、攝像機(jī)內(nèi)參矩陣、特征點(diǎn)目標(biāo)深度、手眼關(guān)系平移向量等信息的線性求解。
本發(fā)明是采取以下技術(shù)方案實(shí)現(xiàn)的,一種基于主動視覺的手眼系統(tǒng)自標(biāo)定方法,包括如下步驟:
(1)建立攝像機(jī)成像系統(tǒng)各參照坐標(biāo)系的坐標(biāo)轉(zhuǎn)換關(guān)系;
(1-1)建立攝像機(jī)成像系統(tǒng)中各參照坐標(biāo)系,特征點(diǎn)m在ccd成像平面o-uv中的成像點(diǎn)坐標(biāo)為
(1-2)建立攝像機(jī)內(nèi)參矩陣五參數(shù)模型
(1-3)建立攝像機(jī)成像系統(tǒng)中ccd成像平面o-uv和圖像平面on-xnyn的坐標(biāo)轉(zhuǎn)換關(guān)系
(1-4)建立攝像機(jī)成像系統(tǒng)中圖像平面on-xnyn和攝像機(jī)坐標(biāo)系oc-xcyczc的坐標(biāo)轉(zhuǎn)換關(guān)系
(2)建立手眼系統(tǒng)各參照坐標(biāo)系的坐標(biāo)轉(zhuǎn)換關(guān)系;
(2-1)建立手眼系統(tǒng)中各參照坐標(biāo)系,特征點(diǎn)m在世界坐標(biāo)系ow-xwywzw中的坐標(biāo)為
(2-2)建立手眼系統(tǒng)中坐標(biāo)變換關(guān)系:
(2-3)建立手眼系統(tǒng)中攝像機(jī)坐標(biāo)系oc-xcyczc和機(jī)械手末端坐標(biāo)系oh-xhyhzh的坐標(biāo)轉(zhuǎn)換關(guān)系,
(2-4)建立手眼系統(tǒng)中機(jī)械手末端坐標(biāo)系oh-xhyhzh和世界坐標(biāo)系ow-xwywzw的坐標(biāo)轉(zhuǎn)換關(guān)系:
(3)建立手眼系統(tǒng)中的ccd成像平面和世界坐標(biāo)系的坐標(biāo)轉(zhuǎn)換關(guān)系;
由
(4)控制手眼系統(tǒng)中的攝像機(jī)做1次平移運(yùn)動;
(4-1)控制手眼系統(tǒng)中的攝像機(jī)做1次平移運(yùn)動,計(jì)算平移前后特征點(diǎn)m在機(jī)械手末端坐標(biāo)系和攝像機(jī)坐標(biāo)系的坐標(biāo)轉(zhuǎn)換關(guān)系
其中,xh1、xh2是平移前后特征點(diǎn)m在機(jī)械手末端坐標(biāo)系中的坐標(biāo),xc1、xc2是平移前后特征點(diǎn)m在攝像機(jī)坐標(biāo)系中的坐標(biāo);
(4-2)結(jié)合擴(kuò)展焦點(diǎn)的概念,計(jì)算平移前后特征點(diǎn)m的位移向量變化關(guān)系,
(5)控制手眼系統(tǒng)中的攝像機(jī)繼續(xù)做2次線性無關(guān)的平移運(yùn)動;依次獲得
(6)線性求解手眼系統(tǒng)中手眼關(guān)系旋轉(zhuǎn)矩陣;根據(jù)
(7)控制手眼系統(tǒng)中的攝像機(jī)做1次線性無關(guān)的平移運(yùn)動;
結(jié)合擴(kuò)展焦點(diǎn)的概念,由
(8)線性求解手眼系統(tǒng)中攝像機(jī)內(nèi)參矩陣;
(8-1)假定
(8-2)假定另一矩陣
(9)線性求解特征點(diǎn)目標(biāo)深度;
(9-1)在所述步驟(4-1)控制手眼系統(tǒng)中的攝像機(jī)做1次平移運(yùn)動,在步驟(4-1)之后,建立攝像機(jī)平移前后特征點(diǎn)m在ccd成像平面和圖像平面坐標(biāo)的轉(zhuǎn)換關(guān)系
(9-2)求出平移前后特征點(diǎn)的目標(biāo)深度信息;
結(jié)合攝像機(jī)內(nèi)參矩陣五參數(shù)模型
(10)控制手眼系統(tǒng)中的攝像機(jī)做1次實(shí)旋轉(zhuǎn)運(yùn)動;
實(shí)旋轉(zhuǎn)運(yùn)動完成后,得到
(11)控制手眼系統(tǒng)中的攝像機(jī)做1次虛擬旋轉(zhuǎn);虛擬旋轉(zhuǎn)完成后,特征點(diǎn)m在機(jī)械手末端坐標(biāo)系中的坐標(biāo)是xh7,在攝像機(jī)坐標(biāo)系中的坐標(biāo)是xc7,可得
(12)實(shí)現(xiàn)對手眼關(guān)系平移向量的標(biāo)定;
(12-1)綜合步驟(10)和(11)的結(jié)果,得到
(12-2)結(jié)合擴(kuò)展焦點(diǎn)的概念,計(jì)算一次實(shí)旋轉(zhuǎn)運(yùn)動和一次虛擬旋轉(zhuǎn)前后特征點(diǎn)m的位移向量變化關(guān)系,
當(dāng)
或當(dāng)
(12-3)按照
進(jìn)一步的,步驟(4-2)、(7)和(12-2)中所述擴(kuò)展焦點(diǎn)方法如下:
(1)建立擴(kuò)展焦點(diǎn)坐標(biāo)體系模型;
圖像i和圖像ii是攝像機(jī)平移后的兩幅圖像,p1和p2是特征點(diǎn)m在平移前后圖像上的位置;攝像機(jī)做平移運(yùn)動,直線oco和oc'o'平行,直線p2'o和p2o'平行。p2'是p2在圖像i上的對應(yīng)點(diǎn),對應(yīng)點(diǎn)連線p2'p1和ococ'相交于擴(kuò)展焦點(diǎn)e;其中,o和o'是平移前后圖像平面的原點(diǎn);oc和oc'是平移前后攝像機(jī)坐標(biāo)系的原點(diǎn);
(2)由
進(jìn)一步的,步驟(5)和(7)中所述線性無關(guān)的平移運(yùn)動要求為,一共需精確控制攝像機(jī)做4次平移運(yùn)動,這4次平移運(yùn)動中的任意2次平移運(yùn)動均不能線性相關(guān)。
進(jìn)一步的,步驟(10)中所述的1次實(shí)旋轉(zhuǎn)運(yùn)動和(11)中所述1次虛擬旋轉(zhuǎn)要求如下:必須在先完成了4次線性無關(guān)平移的基礎(chǔ)上做實(shí)旋轉(zhuǎn)運(yùn)動,實(shí)旋轉(zhuǎn)運(yùn)動過后再做虛擬旋轉(zhuǎn),虛擬旋轉(zhuǎn)結(jié)束后的攝像機(jī)坐標(biāo)系與實(shí)旋轉(zhuǎn)運(yùn)動之前攝像機(jī)坐標(biāo)系的各個(gè)數(shù)軸平行且方向完全一致。
本發(fā)明的優(yōu)點(diǎn):該方法無需標(biāo)定參照物,只需借助于場景中的2個(gè)特征點(diǎn),通過精確控制攝像機(jī)做4次線性無關(guān)的平移運(yùn)動和1次旋轉(zhuǎn)運(yùn)動,即可依次實(shí)現(xiàn)對手眼關(guān)系旋轉(zhuǎn)矩陣、攝像機(jī)內(nèi)參矩陣、特征點(diǎn)目標(biāo)深度、手眼關(guān)系平移向量等信息的線性求解。本方法簡單實(shí)用,特征點(diǎn)選取容易,對機(jī)器人線結(jié)構(gòu)光手眼系統(tǒng)在實(shí)際工業(yè)現(xiàn)場使用具有重要意義。
附圖說明
以下將結(jié)合附圖對本發(fā)明作進(jìn)一步說明:
圖1為本發(fā)明方法的流程圖;
圖2為攝像機(jī)成像系統(tǒng)原理圖;
圖3為本發(fā)明的基于主動視覺的手眼系統(tǒng)原理圖;
圖4為本發(fā)明的擴(kuò)展焦點(diǎn)的原理圖;
圖5為本發(fā)明方法中實(shí)旋轉(zhuǎn)和虛旋轉(zhuǎn)前后系統(tǒng)姿態(tài)對比圖;
圖6為本發(fā)明方法中4次平移運(yùn)動示意圖;
圖7為本發(fā)明方法中1次旋轉(zhuǎn)運(yùn)動示意圖。
具體實(shí)施方式
參照附圖1~7,本發(fā)明方法包括如下步驟:
(1)建立攝像機(jī)成像系統(tǒng)各參照坐標(biāo)系的坐標(biāo)轉(zhuǎn)換關(guān)系,如圖2所示;
(1-1)建立攝像機(jī)成像系統(tǒng)中各參照坐標(biāo)系:特征點(diǎn)m在ccd成像平面o-uv中的成像點(diǎn)坐標(biāo)為
(1-2)建立攝像機(jī)內(nèi)參矩陣五參數(shù)模型
(1-3)建立攝像機(jī)成像系統(tǒng)中ccd成像平面o-uv和圖像平面on-xnyn的坐標(biāo)轉(zhuǎn)換關(guān)系
(1-4)建立攝像機(jī)成像系統(tǒng)中圖像平面on-xnyn和攝像機(jī)坐標(biāo)系oc-xcyczc的坐標(biāo)轉(zhuǎn)換關(guān)系
(2)建立手眼系統(tǒng)各參照坐標(biāo)系的坐標(biāo)轉(zhuǎn)換關(guān)系,如圖3所示,具體包括:
(2-1)建立手眼系統(tǒng)中各參照坐標(biāo)系:特征點(diǎn)m在世界坐標(biāo)系ow-xwywzw中的坐標(biāo)為
(2-2)建立手眼系統(tǒng)中坐標(biāo)變換關(guān)系:
(2-3)建立手眼系統(tǒng)中攝像機(jī)坐標(biāo)系oc-xcyczc和機(jī)械手末端坐標(biāo)系oh-xhyhzh的坐標(biāo)轉(zhuǎn)換關(guān)系,
(2-4)建立手眼系統(tǒng)中機(jī)械手末端坐標(biāo)系oh-xhyhzh和世界坐標(biāo)系ow-xwywzw的坐標(biāo)轉(zhuǎn)換關(guān)系:
(3)建立手眼系統(tǒng)中的ccd成像平面和世界坐標(biāo)系的坐標(biāo)轉(zhuǎn)換關(guān)系;
由
(4)控制手眼系統(tǒng)中的攝像機(jī)做1次平移運(yùn)動。
(4-1)控制手眼系統(tǒng)中的攝像機(jī)做1次平移運(yùn)動,計(jì)算平移前后特征點(diǎn)m在機(jī)械手末端坐標(biāo)系和攝像機(jī)坐標(biāo)系的坐標(biāo)轉(zhuǎn)換關(guān)系
(4-2)如圖4所示,結(jié)合擴(kuò)展焦點(diǎn)的概念,計(jì)算平移前后特征點(diǎn)m的位移向量變化關(guān)系,
(5)再控制手眼系統(tǒng)中的攝像機(jī)繼續(xù)做2次線性無關(guān)的平移運(yùn)動,依次獲得
(6)線性求解手眼系統(tǒng)中手眼關(guān)系旋轉(zhuǎn)矩陣,根據(jù)
(7)再控制手眼系統(tǒng)中的攝像機(jī)做1次線性無關(guān)的平移運(yùn)動,結(jié)合擴(kuò)展焦點(diǎn)的概念,由
(8)線性求解手眼系統(tǒng)中攝像機(jī)內(nèi)參矩陣。
(8-1)假定
(8-2)假定另一矩陣
(9)線性求解特征點(diǎn)目標(biāo)深度。
(9-1)在前面控制手眼系統(tǒng)中的攝像機(jī)做1次平移運(yùn)動,也就是步驟(4-1)之后,建立攝像機(jī)平移前后特征點(diǎn)m在ccd成像平面和圖像平面坐標(biāo)的轉(zhuǎn)換關(guān)系
(9-2)求出平移前后特征點(diǎn)的目標(biāo)深度信息。結(jié)合攝像機(jī)內(nèi)參矩陣五參數(shù)模型
(10)控制手眼系統(tǒng)中的攝像機(jī)做1次實(shí)旋轉(zhuǎn)運(yùn)動,如圖5所示。
實(shí)旋轉(zhuǎn)運(yùn)動完成后,可得
(11)控制手眼系統(tǒng)中的攝像機(jī)做1次虛擬旋轉(zhuǎn),如圖5所示。
虛擬旋轉(zhuǎn)完成后,特征點(diǎn)m在機(jī)械手末端坐標(biāo)系中的坐標(biāo)是xh7,在攝像機(jī)坐標(biāo)系中的坐標(biāo)是xc7,可得
(12)實(shí)現(xiàn)對手眼關(guān)系平移向量的標(biāo)定。
(12-1)綜合步驟(10)和步驟(11)的結(jié)果,可得
(12-2)如圖4所示,結(jié)合擴(kuò)展焦點(diǎn)的概念,計(jì)算一次實(shí)旋轉(zhuǎn)運(yùn)動和一次虛擬旋轉(zhuǎn)前后特征點(diǎn)m的位移向量變化關(guān)系,
(12-3)按照
實(shí)驗(yàn)條件:
標(biāo)定實(shí)驗(yàn)的測試平臺采用的是densovp-6242e/gm工業(yè)機(jī)器人,定位精度可以達(dá)到0.02mm,攝像機(jī)鏡頭的焦距為8mm,感光ccd分辨率為640×480。
如圖6所示,首先控制攝像機(jī)做4次線性無關(guān)的平移運(yùn)動。為了提高計(jì)算精度,取三特征角點(diǎn)對應(yīng)連線的均值計(jì)算ccd成像平面中擴(kuò)展焦點(diǎn)的坐標(biāo)。然后根據(jù)擴(kuò)展焦點(diǎn)的坐標(biāo)可以求出攝像機(jī)平移運(yùn)動過程中的方向向量,繼而求出手眼關(guān)系的旋轉(zhuǎn)矩陣
如圖7所示,接著做一次實(shí)旋轉(zhuǎn)運(yùn)動。此次實(shí)旋轉(zhuǎn)結(jié)合一次假想的虛旋轉(zhuǎn),可以求出手眼關(guān)系的旋轉(zhuǎn)矩陣。