本發(fā)明屬于計算機視覺測量和圖像處理領域,具體涉及一種高精度機械臂手眼相機標定方法及標定系統(tǒng)。
背景技術:
在機器人領域,利用視覺方法進行位姿估計來幫助機械臂實現精確的目標抓取有著重要的應用。而其中,高精度的相機內外參標定和相機與機械臂外參標定是保證視覺測量精度的重要條件。通過標定算法實現的相機內外參標定在算法上保證了對相機自身內外參數的標定精度,但對于機械臂與相機之間外參的高精度標定方法一直沒有得到解決。
技術實現要素:
本發(fā)明的目的在于提供一種高精度機械臂手眼相機標定方法及標定系統(tǒng),該標定系統(tǒng)設置合理,該方法能夠實現相機內外參數和相機與機械臂之間的外參數的高精度標定。
本發(fā)明是通過以下技術方案來實現:
本發(fā)明公開了一種高精度機械臂手眼相機標定方法,包括以下步驟:
步驟一:固定腕部相機和機械臂,使腕部相機的光軸方向與機械臂的中心視軸方向平行;
定義相機坐標系oc、標定板世界坐標系ow、機械臂末端坐標系om;
對腕部相機的內部參數進行標定,得到腕部相機的內部參數矩陣為:
(fx,fy)為腕部相機的等效焦距,(u0,v0)為腕部相機的光心坐標;
步驟二:放置并調整兩臺高精密測量儀器a1和a2,確保標定板在腕部相機的視野范圍內,標定板和機械臂末端在高精密測量儀器的視野范圍內;
定義參考坐標系or,并在標定板上選取n個關鍵點,獲得所有關鍵點的世界坐標;
步驟三:使用兩臺高精密測量儀器分別測量并記錄機械臂末端靶標上k個十字刻線的方位、俯仰讀數,由標定工具計算出此時機械臂末端坐標系om相對于參考坐標系or的外參[rmrtmr];其中,k為大于等于4的正整數;
步驟四:將標定板放于相機前,用相機采集一幅標定板圖像;使用兩臺高精密測量儀器分別測量并記錄標定板上n個關鍵點的方位、俯仰讀數;然后將標定板由近及遠放置在不同位置上;
重復本步驟內的操作(包括用相機采集一幅標定板圖像;使用兩臺高精密測量儀器分別測量并記錄標定板上n個關鍵點的方位、俯仰讀數);
然后由標定工具計算出此時標定板世界坐標系ow相對于相機坐標系oc的外參[rwctwc],以及標定板世界坐標系ow相對于參考坐標系or的外參[rwrtwr];
步驟五:由步驟三中機械臂末端坐標系om相對于參考坐標系or的外參[rmrtmr]和步驟四中標定板世界坐標系ow相對于參考坐標系or的外參[rwrtwr],計算得到機械臂末端坐標系om相對于標定板世界坐標系ow的外參[rmwtmw]=f([rmrtmr],[rwrtwr]);
步驟六:由步驟五中機械臂末端坐標系om相對于標定板世界坐標系ow的外參[rmwtmw]和步驟四中標定板世界坐標系ow相對于相機坐標系oc的外參[rwctwc],計算得到機械臂末端坐標系om相對于相機坐標系oc的外參[rmctmc]=f([rmwtmw],[rwctwc])。
所述標定板采用黑白格棋盤標定板,且該黑白格棋盤標定板圖像上黑色區(qū)域和白色區(qū)域的灰度值之差大于等于某個閾值,本發(fā)明優(yōu)選為70。
黑白格棋盤標定板上的黑白格數為25*24,邊長為15mm,加工精度大于0.05mm。
選定標定板上任意一個點作為標定板世界坐標系原點,標定互相垂直的兩邊為x軸和y軸,z軸垂直于標定板平面,以機械臂末端靶標中心為機械臂末端坐標系原點,水平和垂直的兩條邊為x軸和y軸,z軸垂直于靶標所在平面。
高精密測量儀器a1的中心為參考坐標系or的原點,高精密測量儀器a1指高精密測量儀器a2的方向為x軸方向,垂直水平面為z軸方向,與x軸和z軸垂直的方向為y軸方向。
步驟二中,在標定板上選取n個關鍵點,n為正整數,且n≥4;當n=4時,四個關鍵點中的任意三個關鍵點不共線。
步驟三,具體操作包括以下步驟:
1)設定k個十字刻線在參考坐標系or下的坐標,記為:
其中,(xrm1,yrm1,0),(xrm2,yrm2,0)...(xrmk,yrmk,0)分別為各個十字刻線的坐標;
2)設定十字刻線在機械臂末端坐標系om下的坐標,記為:
則根據prm=rmr*pm+tmr,計算出此時機械臂末端坐標系om相對于參考坐標系or的外參[rmrtmr]。
步驟四中,將標定板分別放置在距離腕部相機的不同距離處,在每個位置上使標定板側對腕部相機。
本發(fā)明還公開了實現上述標定方法的高精度機械臂手眼相機標定系統(tǒng),包括腕部相機、機械臂、標定板及兩個高精密測量儀器a1和a2;其中,腕部相機的光軸方向與機械臂的中心視軸方向平行;標定板設置在腕部相機的視野范圍前方,標定板和機械臂末端設置在兩個高精密測量儀器a1和a2的視野范圍內部。
高精密測量儀器a1和高精密測量儀器a2之間的距離為d,定義高精密測量儀器a1的中心為參考坐標系or的原點,高精密測量儀器a1指向高精密測量儀器a2的方向為x軸方向,垂直水平面為z軸方向,與x軸和z軸垂直的方向為y軸方向,經高精密測量儀器a1測得某空間目標點的水平角為αa,垂直角為βa;經高精密測量儀器a2測得該點的水平角為αb,垂直角為βb,則有:
與現有技術相比,本發(fā)明具有以下有益的技術效果:
本發(fā)明公開的高精度機械臂手眼相機標定方法,通過采集不同位置的標定板圖像,通過視覺方法,測出腕部相機內部參數,以及腕部相機與標定板之間的外部參數;通過高精密測量儀、機械臂靶標設計和標定板上選取的關鍵點,測出機械臂靶標和標定板之間的外部參數;最后,由視覺計算方法,完成機械臂腕部相機的標定。
本發(fā)明公開的標定系統(tǒng)通過兩臺高精度測量儀器,以標定板坐標系作為中間坐標系,實現高精度坐標系參數轉換,最終求得機械臂末端和腕部相機之間的外參數,該方法能夠實現機械臂與相機之間外參的高精度標定。
進一步地,本發(fā)明采用精心設計的黑白格棋盤標定板,黑白格數為25*24,邊長為15mm,加工精度優(yōu)于0.05mm,棋盤格標定板圖像上黑色區(qū)域和白色區(qū)域的灰度值之差大于等于70,具有極易識別的圖像模式,易于實現黑白格頂點的自動檢測,實現高精度定位,保證了后續(xù)測量的精度。
附圖說明
圖1為本發(fā)明方法流程示意圖;
圖2為本發(fā)明的裝置結構示意圖;
圖3為本發(fā)明參考坐標系的建立示意圖;
圖4為本發(fā)明世界坐標系的建立示意圖;
圖5為本發(fā)明腕部相機坐標系和機械臂末端坐標系的建立和關系示意圖。
其中,1為腕部相機;2為機械臂;3為高精密測量儀器a1;4為高精密測量儀器a2;5為標定板。
具體實施方式
下面結合具體的實施例對本發(fā)明做進一步的詳細說明,所述是對本發(fā)明的解釋而不是限定。
本發(fā)明公開的高精度機械臂手眼相機標定方法,如圖1流程所示。
具體實施實例,包括以下步驟:
1)參見圖2,將腕部相機1和機械臂2固定在一起,并保證他們的相對位置和相機內參不再發(fā)生改變。選定標定板5,該標定板為棋盤格標定板,其黑白格數為25*24,邊長為15mm,加工精度優(yōu)于0.05mm,棋盤格標定板圖像上黑色區(qū)域和白色區(qū)域的灰度值之差大于等于70。
放置并調整兩臺高精密測量儀a1和a2,使高精密測量儀器a13、高精密測量儀器a24之間的距離d為1.5m,調平、互瞄、清零,記錄高精密測量儀器基準。確保標定板5在腕部相機1相機的視野范圍內,確保標定板5和機械臂2末端在兩臺經緯儀的視野范圍內。
2)同時參見圖3、圖4及圖5,定義相機坐標系oc、世界坐標系ow,參考坐標系or、機械臂末端坐標系om,其中oc、ow、or和om均為右手坐標系。對于世界坐標系ow,原點定義為標定板的左上角頂點,x軸方向為由原點沿著棋盤格的邊向下,y軸方向為由原點沿著棋盤格的邊向右,z軸方向為垂直于xoy平面指向相機;
對于參考坐標系or,設定高精密測量儀器a1的中心為參考坐標系的原點,高精密測量儀器a1指向高精密測量儀器a2的方向為x軸方向,垂直水平面為z軸方向,與x軸和z軸垂直的方向為y軸方向,經高精密測量儀器a1測得某空間目標點的水平角為αa,垂直角為βa;經高精密測量儀器a2測得該點的水平角為αb,垂直角為βb,如圖3,則空間目標點在參考坐標系下的坐標為:
3)對機械臂腕部相機進行內參標定,包括等效焦距和光心,要求內參的置信區(qū)間不超過±1mm,腕部相機的內部參數矩陣為:
其中(fx,fy)為相機的等效焦距,(u0,v0)為相機的光心坐標,標定過程如下:
固定腕部相機不動,將標定板分別放在距腕部相機500mm,900mm,1100mm處,在每個位置上,首先使標定板正對腕部相機(標定板平面與腕部相機光軸垂直),腕部相機采集一幅標定板圖像;然后,沿4個方向調整標定板角度(每次調整均從標定板正對腕部相機的情況開始),即:標定板沿水平方向的正向分別旋轉15°和30°,沿水平方向的負向分別旋轉15°和30°,沿俯仰方向的正向分別旋轉15°和30°,沿俯仰方向的負向分別旋轉15°和30°,每次調整角度后,腕部相機采集1幅標定板圖像;在每個位置上,腕部相機采集1+4*2=9幅圖像,5個位置相機采集5*9=45幅圖像,然后用標定工具計算出相機的內參。
4)固定兩臺高精密測量儀器,使用高精密測量儀器a1和高精密測量儀器a2分別測量機械臂末端靶標上四個十字刻線的方位、俯仰讀數;
由步驟2)能夠獲得4個十字刻線在參考坐標系or下的坐標:(xrm1,yrm1,0),(xrm2,yrm2,0),(xrm3,yrm3,0),(xrm4,yrm4,0),記為:
則由標定工具計算出此時機械臂末端坐標系om相對于參考坐標系or的外參[rmrtmr],坐標系定義方式如圖3、圖5所示(若十字刻線在機械臂末端坐標系下的坐標標記為:
5)在標定板上選取n個關鍵點,其中,n為正整數,且n≥4,選取的關鍵點需要保證至少存在一組(以任意四個關鍵點為一組),其中任意三個點不共線;在已知標定板上方格邊長的前提下,得到各關鍵點在世界坐標系ow坐標系下的坐標(xw1,yw1,0),(xw2,yw2,0)…(xwn,ywn,0);
記為:
6)將標定板分別放在距腕部相機500mm,700mm,900mm,1100mm,1300mm處,在每個位置上,使棋盤格稍微側對(如:沿水平方向旋轉15°)腕部相機,腕部相機采集一幅圖像,使用高精密測量儀器a1和高精密測量儀器a2分別測量棋盤格標定板上n個關鍵點的方位、俯仰讀數,由步驟2)可獲得n個關鍵點在參考坐標系or下的坐標(xr1,yr1,0),(xr2,yr2,0)…(xrn,yrn,0),記為
7)由步驟4)和6)可得出機械臂末端坐標系om相對于標定板世界坐標系ow的外參[rmwtmw],其中
8)同理,利用腕部相機采集的圖像,由標定工具計算出此時標定板世界坐標系ow相對于相機坐標系oc的外參[rwctwc],若標定板上關鍵點在相機坐標系oc下的坐標標記為
9)由步驟7)和步驟8)可得出機械臂末端坐標系om相對于相機坐標系oc的外參[rmctmc],其中