楊 柯 趙文峰
(1.海軍駐鄭州地區(qū)軍事代表室 鄭州 450015)(2.中國電子科技集團公司第27研究所 鄭州 450005)
攝影測量的主要原理是利用攝像機攝得的圖像信息來測定空間點的位置。隨著數字圖像處理技術的廣泛應用,攝影測量的應用范圍也越來越廣泛。
采用合作目標,利用攝影測量原理可以進行目標高精度定位。如果合作目標數不小于4個[1~2],或者在共面情況下合作目標不小于3個,利用單攝影測量算法就能夠實現目標三維空間位置解算。本文重點將介紹利用雙攝像機從被定位對象兩側,分別對多個合作目標成像并提取出其像點坐標后,利用預先標定的攝像機參數矩陣,進行目標定位。并在此基礎上詳細論述了雙攝像測量的基本原理、數學模型及其解算方法,并就信標像點位置提取誤差對測量結果的影響進行了分析。
圖1 雙攝影成像示意圖
已知空間坐標系Xt,攝像機1坐標系Xc1,攝像機2坐標系Xc2??臻g坐標系Xt的原點建立在朝向攝像機1一側的長方體面的中心。水平右方向為X軸正方向;垂直向下為Y軸正方向,依據右手定則可以得到Z軸正方向。
攝像機1和2的坐標系的原點建立在光軸在CCD面的交點上,X軸的正方向是從攝像機后部觀察原點向右平行于CCD水平線的方向。Y軸的正方向是從攝像機后部觀察垂直向下的方向,依據右手定則可得到Z軸正方向。
由上節(jié)單攝影測量算法可以得到,攝像機1的投影方程:
假設攝像機1的內參矩陣K1已知,在式(1)兩邊同時乘以,可得
方程中消去λ1,可得下面方程(3)
同樣,我們可以得到攝像機2的投影方程:
假設攝像機1坐標系與攝像機2坐標系之間的關系Rc21,Tc21已知(需事先標定),則可以推導出如下的方程式:
將式(5)代入式(4)可得:
攝像機2的內參矩陣K2已知,式(6)兩邊同時乘以,可得
在攝像機1下成的像點用式(3)建立方程,每個點可建立兩個方程,在攝像機2下成的像點用式(7)建立方程,每個點可建立兩個方程,由式(3)和式(7)聯立方程組,該方程組共包含12個未知數,求解方程組即可。因此要求解該方程組最少需要3個點,可以建立6個線性方程,再加上7個約束方程,可以解得外參矩陣R和T。
根據攝像機1中的像點和攝像機2中像點建立的方程組,用矩陣方程表示如下:
其 中:X= (r11,r12,r13,r21,r22,r23,r31,r32,r33,t1,t2,t3),A是X 的系數矩陣,Q是常數矩陣。
假設像點個數是6,則A=A16*12,Q=Q16*1。
設矩陣A的最后一列為-H,即:
把H×t3移項到方程右邊,整理得到
其 中:X0={r11,r12,r13,r21,r22,r23,r31,r32,r33,t1,t2}
然后,方程兩邊同乘A0(16×11)的廣義逆矩陣,得到
因為R 是正交矩陣,RRT=(Lt3+M)(Lt3+M)T=I
令f(t3)=(Lt3+M)(Lt3+M)T-I,利用最小二乘法,我們可以求得方程的解t3。
最后,將t3代入式(10)即可求出旋轉矩陣和平移矩陣的各個分量。
該方法對于6個以上的像點也成立,且像點個數越多解算精度越高。
我們可以把方程(8)的求解問題轉化為最優(yōu)化問題的求解,最優(yōu)化方程如下:
該最優(yōu)化問題的求解方法可以采用Guass-Newton算法,該算法收斂很快,但對初始值的相對較高,如果初始值選擇的不合適,很容易出現矩陣奇異,從而不能夠求出最優(yōu)解。因此,應用中采用了阻尼最小二乘法即Marquardt方法[4]。
由于非線性求解方法每次迭代都需計算廣義逆矩陣,所以與線性算法相比運算量大,但求解的精度高。
從以上分析中可以看出,攝影測量解算過程比較復雜,要用到的已知參數較多。影響計算結果的誤差因素是很多的,很難用一個確定的誤差表達式來說明這些誤差源對測量結果的影響。因此采用Matlab利用假設條件對目標像點提取誤差對測量精度的影響進行了分析。
假設8個合作目標組成的長方體的長=2.15m,高=1.5m,寬=1.55m,長方體的8個頂點對應8個信標點;被定位目標點在世界坐標系中的坐標是(0,1.25,0)。
圖2 雙攝影線性解算(a)與非線性解算(b)計算誤差(圖中數據單位mm)
為了便于分析假定兩攝像機相對安裝(光軸重合),相距10m;攝像機1與空間坐標系之間的關系:滾轉角=pi/6,偏航角=pi/5;俯仰角=pi/7,空間坐標系的原點在攝像機坐標系中的坐標是(0,0,4)。通過以上條件可以求得理想像點坐標,圖2中所顯示的曲線是在理想像點坐標迭加一個像素的均勻分布誤差時,被定位目標點解算坐標與理論坐標在x、y、z方向及空間距離上的誤差。
從以上的分析結果可以知道,非線性求解方法與線性算法相比求解的精度高;并且使用非線性求解方法時,其位置測量誤差不超過5cm,所以雙攝影測量能夠適用于近距離高精度目標定位。
我們在隨后試驗過程中目標距地面高度只有2m,兩攝像機相距約20m,在三個坐標方向的定位誤差最大不超過4cm。從試驗結果可以看出實際測量的誤差與理論分析誤差比較接近,測量精度能夠滿足實時運動目標的高精度定位要求。
可見相對于單攝影算法來說,采用雙攝像機測量可以最大限度地避免系統在實際應用中由于環(huán)境因素造成目標像點丟失而無法進行目標位置解算或降低解算精度的問題,從而提高系統的冗余性、可靠性和測量精度。本文所提出的雙攝影測量算法已在國內首次開展的光電引導技術預研課題中應用并取得了良好的試驗效果。
[1]胡占義,雷成,吳福朝.關于P4P問題的一點討論[J].自動化學報,2001,27(6):770-775.
[2]蘇成,徐迎慶,李華,等.判定P3P問題正解數目的充要條件[J].計算機學報,1998,21(12):1084-1095.
[3]劉欽圣.最小二乘問題計算方法[M].北京:北京工業(yè)大學出版社,1989:77-100.
[4]王愛民,沈蘭蓀.圖像分割研究綜述[J].測控技術,2000,19(5):21-23.
[5]Karunaseke S A,et al.A distribution measure for blocking artifacts in image based on human visual sensitivity[J].IEEE Trans,IP,1995,4(6):713-724.
[6]汪孔橋,Jari A.Kangas.數字圖像的質量評價[J].測控技術,2000,19(5):14-16.
[7]羅明.多傳感器機器視覺測量系統的研究及應用[M].天津:天津大學出版社,1996:25-90.
[8]于起峰.基于圖像的精密測量與運動測量[M].北京:科學出版社,2002:1-130.
[9]劉承承,吳剛.對數字圖像處理中正交變換的研究[J].計算機與數字工程,2009,37(12).
[10]葉建兵.基于奇異值分解的數字圖像水印算法[J].計算機與數字工程,2009,37(10).
[11]張毓晉.圖像處理和分析[M].北京:清華大學出版社,1999:13-55.
[12]Tabatabai A J,Mitchell O R.Edge location to subpixel values in digital imagery[J].IEEE Trans,on PAMI,1984,6(2):188-201.