丁尚文,王純賢
(1.合肥工業大學 宣城校區基礎部,宣城 242000:2.合肥工業大學 宣城校區機械工程系,宣城 242000)
基于單目視覺多角度測量的平面點位置最優估計是機器視覺研究的經典問題,同時也是機器人定位[1-2],航天器交會對接[3-5]等技術的重要研究內容。
該方法主要基于多視圖利用圖像點特征解算相機坐標系相對世界坐標系的位置與姿態。文獻[6]利用三焦點張量方法實現對機器人運動位置與姿態估計。文獻[7]提出基于多視圖的移動機器人視覺位置與姿態軌跡跟蹤方法。為了實現車輛的位姿估計,文獻[8]提出面向三視圖幾何相關約束的的視覺輔助導航和慣性導航系統相融合的方法。文獻[9]利用三視圖幾何相關約束條件實現對相機相對世界坐標系下的相對位姿估計。文獻[10]基于雙目視覺方法對航天器間的位姿測量展開研究。文獻[11]采用雙目視覺測量方法對未知的空間物體在相機坐標系下的位姿給出估計算法。
空間平面點的定位較多地利用相機標定技術獲得空間目標在世界坐標系下的位置。具體方法是將投影矩陣分解成得到相機內參數和外參數(旋轉矩陣和平移),利用相機標定方法確定出相機參數,然后利用投影點的圖像坐標重建特征點在世界坐標系下的位置[12]。由于相機標定誤差的影響,以及分解形式不唯一性尤其是內參數的求解不穩定性,從而導致不同視角下重建的特征點坐標不完全相等。針對空間點的位置估計問題,在此提出基于單目視覺多角度測量的平面點位置最優估計。
相機成像模型由針孔成像原理得到,相機標定是指建立相機圖像像素位置與現實世界特征點位置之間的對應關系,由已知特征點的圖像坐標和世界坐標求解相機的模型參數。在此就相機參數標定涉及到的4個坐標系建立給予詳細描述,坐標系之間的關系如圖1所示。

圖1 四個坐標系相關位置Fig.1 Relative position of four coordinate systems
1)圖像坐標系(l,u,v),簡稱(l)系。 計算機內的圖像由一系列排列有序的像素點組成,坐標原點位于圖像左上角,水平向右為u軸正方向,垂直向下為軸正方向,圖像坐標(u,v)表示像素點在圖像中的行列位置,單位為像素。
2)成像坐標系(i,x,y),簡稱(i)系。 (i)系被稱作圖像的物理坐標系。原點位于成像平面的中心點,水平向右為x軸正方向,垂直向下為y軸正方向,坐標(x,y)表示像點在圖像中的物理位置,單位為mm。
3)相機坐標系(c,x,y,z),簡稱(c)系。 將相機的光心設為坐標原點,相機的光軸為z坐標軸、x軸和y軸分別平行于成像坐標系的橫、縱軸,z坐標軸正方向方向符合右手坐標系法則。
4)世界坐標系(w,X,Y,Z),簡稱(w)系。 選擇物體上的某一點作為坐標原點,X,Y和Z坐標軸的選取符合右手坐標系法則。
P=[X,Y,Z ]T表示在(w)系下的三維坐標,對應投影點用p=[u,v ]T表示。它們的齊次坐標對應記為。由針孔成像模型[7],可得到

式中:s為非零尺度因子;[R,t]為(c)系相對(w)系的旋轉矩陣、平移向量;α,β分別為攝像機在u方向、v 方向上的有效焦距;(u0,v0)為攝像機的主點坐標;λ為傾斜因子。
通常,假設在(w)系下的平面方程設為Z=0,為避免標記混淆,在此用表示平面模型的點表示平面模板特征點對應的圖像齊次坐標。記ri表示旋轉矩陣的R第i列(i=1,2,3),根據式(1),可以得到平面點與投影點對應的投影矩陣[12],即

利用式(2)將平面點與投影點對應的投影矩陣分解為


令 h′=[h11h12h13h21h22h23h31h321],則有

為了精確得到投影矩陣,建立基于像素坐標誤差的目標函數,即

式中:mij為三維場景中第i個物點在第j幅圖像上的圖像坐標;Hi為第i幅圖像與特征點之間的投影矩陣;Mj為平面上第 j個特征點空間坐標。中投影矩陣Hi的初始值可通過式(6)得到。采用非線性算法求解滿足目標函數條件的最優值,即得到投影矩陣。利用投影矩陣,通過特征點的圖像坐標,得到特征點在相機坐標系下的坐標,即

設 Pi點的坐標為,則Pi點的齊次坐標為
通過以上公式,可以發現不同的角度得到的單一矩陣不同,估計出來的特征點Pi點的橫、縱坐標值存在著誤差。假設特征點P在世界坐標系下的齊次坐標為,則其估計值應滿足


對目標函數求偏導,即有下式成立:

得到P點橫、縱坐標的最優估計值為

利用式(12),可以得到空間平面內特征點P的位置。
為了驗證新線性算法有效性,文中使用了虛擬相機進行了仿真驗證,并將本文試驗結果與文獻[12]的試驗結果進行比較。
仿真試驗參數如下:相機最大分辨率為2048×1536 像素;相機圖像傳感器大小為(6.4×4.8)mm2;相機內參數真值為f=8 mm;圖像傳感器中心在成像坐標系下的坐標為(Cx,Cy)=(3.3,2.5);相機鏡頭水平和垂直方向上的畸變系數為k1=1,k2=1。平面圖像特征點位置如圖2所示。

圖2 仿真平面靶標位置Fig.2 Simulation plane target position
選取圖2中至少4個特征點作為相機參數標定點[12],例如:A1[0,0,0],A2[10,0,0],A3[10,10,0],A4[0,10,0]。其余特征點位置分布在圖2中所標注的位置。在此待驗證的平面內特征點位置坐標分別為B1[20,0,0],B2[20,10,0],B3[20,20,0],B4[10,20,0],B5[0,20,0]。
虛擬相機從不同角度拍攝3幅圖像。實際檢測到成像點ai′的坐標受噪聲影響存在誤差,在此對獲取到成像點 ai′的坐標(xai′,yai′)添加白噪聲,白噪聲從0增加到10個像素,步長為1像素。采用2種方法重建出的特征點坐標仿真如圖3所示。


圖3 特征點位置誤差Fig.3 Feature points position error
由圖3(a)可見,利用本文線性算法得到的特征點坐標的估計值與真實值誤差平方和不超過0.025 mm;通過文獻[12]方法得到的特征點坐標的估計值與真實值誤差平方接近0.028 mm。
由圖3(b)可見,利用本文線性算法得到的特征點坐標的估計值與真實值誤差平方和估計值不超過0.05 mm;通過文獻[12]方法得到的特征點坐標的估計值與真實值誤差平方和接近0.07 mm。
為了驗證基于單目視覺多角度測量的平面點位置最優估計方法結果的可靠性和精度,在此對平面內特征點從不同視角拍攝3幅圖像,試驗中使用的平面模板如圖4所示。

圖4 平面模板圖像特征點位置Fig.4 Feature point position of plane template image
相機參數如下:相機最大分辨率為像素;相機圖像傳感器大小為(6.4×4.8)mm2;相機焦距為 f=8 mm。
在圖4中,左上區域內的4個特征點為解算投影矩陣的特征點,它們在(w)系下的坐標分別為A1[0,0,0],A2[50,0,0],A3[50,50,0],A4[0,50,0];隨機選取的平面內4個特征點分布在圖4中淺色所標注的位置上。待驗證的平面內淺色的特征點位置坐標分別為 B1[60,60,0],B2[80,80,0],B3[100,100,0],B4[120,120,0]。本文提出新方法所獲得試驗結果,與利用文獻[12]方法獲得試驗結果進行比較,結果見表1。

表1 兩種方法重建點坐標估計Tab.1 Reconstruction of point coordinate estimation by two methods
由表可知,采用文獻[12]方法獲得特征點坐標(120,120)的誤差為 4.3 mm;如果采用本文所提最優誤差估計方法最大誤差不超過0.8 mm,4個特征點坐標估計值誤差最大不超過1.2 mm。可見,后者的特征點坐標估計精度高,能夠有效降低不同視圖下的隨機誤差的影響。
空間平面點的定位較多的利用相機標定技術獲得空間目標在世界坐標系下的位置。本文所提基于單目視覺多角度測量的平面點位置最優估計方法,利用投影矩陣,直接得到平面點的位置。采用本文的最優誤差估計方法最大誤差不超過1.2 mm,特征點坐標估計精度高,能夠滿足視覺測量的要求。后續的研究將著重于利用雙目視覺測量三維點坐標以及最優點坐標估計問題。