袁 媛 劉 柯 孫增玉 高 越 劉 華
(北京航天計量測試技術(shù)研究所,北京100076)
視覺測量技術(shù)具有現(xiàn)場檢測實時性、非接觸測量等諸多優(yōu)點,其研究重點是物體的幾何尺寸及物體在空間中的位置、姿態(tài)等的測量。單目視覺的主要原理是應(yīng)用單臺攝像機,對單張位姿信息圖像進行拍攝,通過圖像處理得到特定信息,用于運動目標的位姿位置軌跡解算[1,2]。
單目視覺測量系統(tǒng)在現(xiàn)場實時測量中非常便于應(yīng)用,且測量范圍大、標定步驟少。此外,單目視覺還可修正雙目視覺中測量視場范圍小、視覺傳感器之間立體匹配困難等缺點,因而近年來這方面的研究較為活躍。然而,如何準確快速的從預(yù)先標定好的攝像機拍攝的一幀圖像中,利用空間點和圖像點間的幾何關(guān)系,解得攝像機與目標物體之間的位姿關(guān)系,一直是單目視覺測量技術(shù)的研究重點。目前,基于特征點的單目視覺位姿求解方法研究較多,又稱為PnP問題,即在相機內(nèi)參已知的情況下,利用待測目標上已知空間位置關(guān)系的一組特征點,來確定與攝像機的相對位置和姿態(tài)。PnP問題是機器視覺領(lǐng)域的一個經(jīng)典問題,在航天器交會對接位姿測量、無人機姿態(tài)測量、目標跟蹤等方面有很多重要的應(yīng)用[3~5]。
本文在現(xiàn)有技術(shù)的基礎(chǔ)上,對基于點特征的單目視覺解算算法進行研究,提出了一種基于5個編碼特征點的單目視覺解算算法,該算法使用不共面五個編碼特征點,利用大靶面高分辨率相機采集運動物體位姿圖像,利用目標物體上編碼特征點間的幾何約束關(guān)系,通過正交迭代解算完成目標的位姿測量。
單目視覺位姿測量原理,即采用單相機采集到的物體位姿圖像,進而解算得到目標坐標系與攝像機坐標系間的三維六自由度位姿參數(shù)。視覺測量的本質(zhì)是利用圖像上已知的二維信息求解出物體的三維信息的過程,相機的成像模型是視覺測量的基礎(chǔ)。其中,透視成像模型應(yīng)用較為廣泛,它可以簡單的描述為:所有成像光線都通過光心,并且物點、像點、光心三點共線。透視成像模型由三維空間到圖像平面的透視投影變換所給出,在成像過程中,需要選擇一個基準坐標系,該坐標系定義為世界坐標系(Ow-xwywzw),符合右手坐標系;以光心Oc為原點定義相機坐標系Oc-xcyczc,其中,Xc軸取圖像坐標沿水平增加的方向,Yc軸取沿豎直增加的方向,Zc軸的方向平行于攝像機光軸。
設(shè)點P在世界坐標系下坐標為(xw,yw,zw),在相機坐標系下的坐標為(xc,yc,zc),相機的外參數(shù)模型表征了世界坐標系與相機坐標系的關(guān)系,可用公式(1)的外參矩陣表示:
(1)
式中:cMw——外參矩陣,R——相機坐標系與目標坐標系間的旋轉(zhuǎn)矩陣;t——相機坐標系與目標坐標系間的平移變換矩陣。
通過目標物體上一組坐標已知的編碼特征點坐標,由公式(1)經(jīng)位姿解算求解得到兩坐標系之間的R、t矩陣。
本文采用環(huán)形編碼特征點,如圖1(a)所示。它由中心圓和中心圓環(huán)兩部分組成,中心圓環(huán)等分為10個編碼環(huán)帶,其結(jié)構(gòu)形式如圖1(b)所示。每份有亮帶和暗帶兩種狀態(tài),對應(yīng)二進制碼為1和0,以任一環(huán)帶作為起始位,逆時針循環(huán)選取得到最小15位二進制數(shù),作為此編碼特征點的編號,可作為唯一性標識,進而進行編碼特征點的精確識別和提取。
(a)編碼特征點實際圖像 (b)編碼特征點結(jié)構(gòu)形式 圖1 編碼特征點Fig.1 Coded targets
編碼特征點圖像的具體識別流程如下,首先拾取圖像中封閉圓區(qū)域的邊緣提取,由于中心圓區(qū)域可能會變形為橢圓,因此采用二次曲線擬合算法可計算編碼特征點中心圓的中心坐標。在確定環(huán)狀編碼點中心圓的中心坐標之后,就可以實現(xiàn)單個環(huán)狀編碼點的提取,再根據(jù)環(huán)狀編碼點的編碼規(guī)則將編碼點代表的數(shù)字解碼出來。此編碼特征點解碼流程如圖2所示。
圖2 編碼特征點解碼流程圖Fig.2 Decode process of thecoded targets
在透視投影模型下,利用被測目標空間共線誤差作為最小化目標函數(shù),三維位姿求解算法正交迭代算法,可直接得到正交旋轉(zhuǎn)矩陣,進而得到目標坐標系與攝像機坐標系的相對位置關(guān)系,本算法可全局收斂,且具有較強的抗噪能力[6]。本文通過正交迭代算法可求解得到目標物體與單臺攝像機之間的位姿關(guān)系,即三維六自由度參數(shù),包含三個旋轉(zhuǎn)參數(shù)和三個平移參數(shù)。
3.2.1 空間共線性誤差
(2)
圖3 目標空間共線性誤差示意圖Fig.3 Linear error probable of the object space
視線是指經(jīng)過光心Oc和像點pi的射線,在視線投影矩陣Vi作用下,空間點Pi經(jīng)在像平面的投影點為pi。空間點Pi應(yīng)與其在對應(yīng)像平面的投影點pi重合,可得目標空間共線方程,其代數(shù)形式如下
(3)
式中:R——旋轉(zhuǎn)矩陣;t——平移矩陣。
3.2.2 正交迭代算法
攝像機位姿估計問題可轉(zhuǎn)化為如下的目標空間共線誤差最小化問題
(4)
由公式(4)可得,給定旋轉(zhuǎn)矩陣R,t的最優(yōu)解有如下形式的閉合解
(5)
(6)
(7)
公式(7)可用SVD法(奇異值分解法)求解,可保證旋轉(zhuǎn)矩陣R的正交性。定義
(8)
(9)
令UTMV=D表示M的一個SVD分解,則公式(7)的解為Rk+1=VUT。SVD法可保證R的正交性,但是仍有det(Rk+1)=-1的可能性。故需要對所得解進行優(yōu)化校正,即:Rk+1=Vdiag(1,1,det(VUT))UT,由公式(5)進而可得t的最佳估計值為:tk+1=t(Rk+1),重復上述迭代步驟直至收斂。立體目標單目視覺位姿測量算法流程圖如圖4所示。
圖4 測量系統(tǒng)流程圖Fig.4 Process of the measurement
采用六面棱體作為模擬運動目標,棱體上不共面分布五個編碼特征點,為了實現(xiàn)對單目視覺系統(tǒng)位移測量精度的測試,采用1.5m高精度具有位移測量和外觸發(fā)信號輸出功能的直線位移導軌作為位移標準裝置,控制模擬目標以50mm為間隔沿直線導軌運動,測量得到單目視覺系統(tǒng)的位移測量值,將此測量值與位移標準裝置進行比較,得到單目系統(tǒng)的位移測量誤差值δ1,如圖5所示。
圖5 目標位移測量誤差圖Fig.5 Measurement error of the target displacement
為了驗證單目視覺系統(tǒng)姿態(tài)測量精度,采用具有定角外觸發(fā)信號(碼盤模擬信號)輸出功能的三軸轉(zhuǎn)臺作為空間角度標準裝置,以六面棱體作為模擬運動目標,使三軸轉(zhuǎn)臺以規(guī)定幅值和頻率轉(zhuǎn)動,以轉(zhuǎn)臺內(nèi)部輸出姿態(tài)角度值作為標準值θ0,采用大靶面高分辨率相機以一定的采樣頻率對模擬運動目標進行拍攝并采集,解算得到姿態(tài)角度測量值,進而得到單目系統(tǒng)的姿態(tài)測量誤差值δ2,部分姿態(tài)測量誤差值如圖6所示。
圖6 目標姿態(tài)角測量誤差圖Fig.6 Measurement error of the target attitude
本裝置的主要技術(shù)指標為:在上述測量范圍內(nèi),位移測量精度為2mm,姿態(tài)測量精度為0.2°。通過模擬運動目標位移和姿態(tài)角測量精度驗證實驗結(jié)果表明:位移測量誤差小于2mm,單目系統(tǒng)的姿態(tài)測量誤差小于0.2°。
5.1.1 測量模型
由直線位移導軌給出標準位移測量值L0,與單目視覺解算位移值L1相比較,可得測量誤差的測量模型
δ1=L1-L0
(10)
式中:δ1——平移量測量誤差;L1——單目系統(tǒng)位移測量值;L0——直線位移導軌輸出位移標準值。
對各影響量求偏導,得到靈敏度系數(shù)
(11)
合成不確定度公式為
(12)
5.1.2 不確定度來源
(1)測量重復性引入的不確定度分量u(L1)
用單目視覺系統(tǒng)對直線導軌給出的標準位移進行10次獨立重復觀測,觀測值如表1所示,用貝塞爾公式計算單次測量值的實驗標準偏差s(L)為
(13)
表1 10次獨立重復觀測值
以標準位移量150mm為例,以單次測量的標準偏差作為不確定度分量,即
u(L1)=s(L)=0.12mm
(14)
u(L1) =0.12mm
(2)直線位移導軌引入的不確定度u(L0)
由直線位移導軌校準證書可知,直線位移導軌測量誤差為±0.02mm,則直線位移導軌測量誤差引入的標準不確定度為:u(L0)=0.02mm。
(3)合成標準不確定度
校準系統(tǒng)引入的標準不確定度分量互不相關(guān),按式(15)計算
(15)
uc(δ) =0.12mm
(4)擴展不確定度
取擴展因子k=2,則在此標準位移值下的擴展不確定度為
U=kuc(δ)
(16)
U=0.24mm
5.2.1 測量模型
以方位角為例,由三軸轉(zhuǎn)臺給出標準方位角度值θ0,與單目視覺解算方位角度值θ1相比較,可得方位角測量示值誤差的測量模型
δ2=θ1-θ0
(17)
式中:δ2——方位角測量示值誤差;θ1——單目系統(tǒng)輸出方位角測量值;θ0——三軸轉(zhuǎn)臺輸出標準方位角度值。
對各影響量求偏導,得到靈敏度系數(shù)
(18)
合成標準不確定度公式為
(19)
5.2.2 不確定度來源
(1)測量重復性引入的不確定度分量u(θ1)
在相同條件下,設(shè)置轉(zhuǎn)臺使方位軸從同一運動方向定位在5°位置,方位軸示值穩(wěn)定后,手動觸發(fā)單目視覺測量系統(tǒng),測量當前方位軸角度,連續(xù)進行10次獨立重復觀測,觀測值如表2所示,用貝塞爾公式計算單次測量值的實驗標準偏差s(θ)為
(20)
表2 10次獨立重復觀測值
以其中任意一次作為測量結(jié)果,則由測量重復性導致的測量結(jié)果的標準不確定度為
u(θ1)=s(θ)
(21)
u(θ1)=0.01°
(2)三軸轉(zhuǎn)臺引入的不確定度
(22)
u(θ0)≈0.0006°
(3)合成標準不確定度
校準系統(tǒng)引入的標準不確定度分量互不相關(guān),按式(22)計算,可得
(23)
uc(δ)=0.01°
(4)擴展不確定度
取擴展因子k=2,則在此標準角度下的擴展不確定度為
U=kuc(δ)
(24)
U=0.03°
本文采用環(huán)形編碼特征點,研究基于一種不共面五點透視成像模型的正交迭代算法,求解得到相機坐標系與世界坐標系之間的旋轉(zhuǎn)矩陣和平移矩陣,實現(xiàn)對目標物體的三維六自由度姿態(tài)測量,并對單目系統(tǒng)的平移、姿態(tài)測量精度進行測試,完成了對單目測量系統(tǒng)的測量不確定度評估。