李昊,馬友青,張爍,劉少創(chuàng)?
(1 中國(guó)科學(xué)院空天信息創(chuàng)新研究院, 北京 100101; 2 中國(guó)科學(xué)院大學(xué), 北京 100101) (2022年2月18日收稿; 2022年4月29日收修改稿)
天問一號(hào)火星探測(cè)任務(wù)是我國(guó)首次火星探測(cè)任務(wù),2020年7月,用于執(zhí)行任務(wù)的天問一號(hào)探測(cè)器在海南文昌發(fā)射場(chǎng)發(fā)射,這次火星探測(cè)任務(wù)完成了環(huán)繞探測(cè)和巡視探測(cè)兩項(xiàng)任務(wù)。2021年5月15日,著陸探測(cè)器成功軟著陸于火星烏托邦平原南部,預(yù)示著探測(cè)任務(wù)工程目標(biāo)即將圓滿完成,并將繼續(xù)開展科學(xué)探測(cè)工作?;鹦翘綔y(cè)器由環(huán)繞器和著陸巡視器組成,環(huán)繞器將環(huán)繞火星進(jìn)行探測(cè),獲取火星全面、綜合的信息,而著陸巡視器則著陸在火星表面,分為火星車和著陸平臺(tái)2個(gè)部分,并由火星車來完成火星表面的探測(cè)工作。
“祝融號(hào)”火星車及著陸平臺(tái)的結(jié)構(gòu)如圖1所示,火星車車體采用箱板式構(gòu)型。車體頂板上方安裝了太陽翼和桅桿,桅桿頂部安裝有一對(duì)導(dǎo)航相機(jī)。著陸巡視器到達(dá)火星表面之后,火星車依次完成桅桿展開、太陽翼展開、定向天線展開、車體抬升、導(dǎo)航相機(jī)環(huán)拍等動(dòng)作,為自身補(bǔ)充能量、獲取自身健康信息的同時(shí)完成對(duì)著陸環(huán)境的了解,也為駛離動(dòng)作提供數(shù)據(jù)支持。
圖1 火星車及著陸平臺(tái)結(jié)構(gòu)示意圖Fig.1 Schematic diagram of the Mars rover and landing platform
火星車駛離著陸平臺(tái)是探測(cè)器系統(tǒng)著陸后進(jìn)行的第一個(gè)關(guān)鍵動(dòng)作,是后續(xù)火星表面區(qū)域巡視探測(cè)工作的基礎(chǔ),因此保證火星車駛離動(dòng)作的安全有著十分重要的工程意義。駛離工作的風(fēng)險(xiǎn)主要來源于著陸平臺(tái)駛離軌道在發(fā)射、飛行、著陸階段產(chǎn)生的位移和形變,以及著陸器著陸點(diǎn)地形平整度不明,可能會(huì)產(chǎn)生著陸平臺(tái)駛離軌道坡度角過大、2駛離軌道間異面角過大等情況,從而導(dǎo)致火星車在駛離過程中脫軌或傾翻。因此,在著陸巡視器到達(dá)火星表面并展開動(dòng)作后,立即對(duì)包括駛離軌道在內(nèi)的著陸點(diǎn)周圍環(huán)境進(jìn)行拍攝,進(jìn)而計(jì)算駛離軌道異面角、駛離軌道坡度角,以支持火星車駛離決策,保證火星車能成功駛離著陸平臺(tái)、到達(dá)火星表面并開展后續(xù)巡視探測(cè)任務(wù)。
基于導(dǎo)航相機(jī)圖像計(jì)算駛離軌道異面角及駛離軌道坡度角的工作包含相機(jī)標(biāo)定、立體匹配、點(diǎn)云獲取、平面擬合等多項(xiàng)內(nèi)容。關(guān)于深空探測(cè)器導(dǎo)航相機(jī)標(biāo)定問題,國(guó)內(nèi)外學(xué)者提出了很多方法,Gennery[1-2]先后提出CAHVOR和CAHVORE相機(jī)模型。Zhang[3]提出一種通過立體像對(duì)對(duì)極幾何的探測(cè)車自標(biāo)定算法。在嫦娥3號(hào)、4號(hào)任務(wù)中,文獻(xiàn)[4-6]高精度地完成了月球車立體視覺系統(tǒng)的幾何參數(shù)標(biāo)定。Ma等[7]完成了“玉兔2號(hào)”月球車的立體視覺系統(tǒng)在軌標(biāo)定。在點(diǎn)云及特征點(diǎn)坐標(biāo)獲取環(huán)節(jié),采用前方交會(huì)方法,計(jì)算得到目標(biāo)地形、特征點(diǎn)在導(dǎo)航相機(jī)坐標(biāo)系下的坐標(biāo)[8]。在平面擬合環(huán)節(jié),孔利等[9]提出結(jié)合RANSAC方法與特征值法的平面擬合方法。本文使用總體最小二乘算法[10]擬合出2駛離軌道平面,提出結(jié)合RANSAC算法與總體最小二乘算法的平面擬合方法擬合出火星表面平面,并進(jìn)一步計(jì)算平面間夾角。在天問1號(hào)火星探測(cè)任務(wù)中,利用上述方法基于導(dǎo)航相機(jī)圖像對(duì)著陸平臺(tái)駛離軌道及火星表面進(jìn)行了平面擬合與角度計(jì)算,為火星車駛離提供了決策支持。
天問1號(hào)著陸巡視器著陸后,為使祝融號(hào)火星車安全駛離著陸平臺(tái),需確定駛離軌道坡度角與駛離軌道異面角。先構(gòu)建地面標(biāo)定實(shí)驗(yàn)場(chǎng),通過嚴(yán)密的控制場(chǎng)相機(jī)標(biāo)定方法獲得導(dǎo)航相機(jī)的內(nèi)參(焦距、主點(diǎn)位置及鏡頭畸變)和外參(左右導(dǎo)航相機(jī)相對(duì)位姿參數(shù)、導(dǎo)航相機(jī)相對(duì)于火星車的位姿參數(shù))。在火星車著陸火星表面之后,導(dǎo)航相機(jī)對(duì)火星表面及駛離軌道區(qū)域拍攝立體圖像,然后對(duì)立體圖像進(jìn)行核線矯正、立體匹配,選取特征點(diǎn)并利用前方交會(huì)算法獲左導(dǎo)航相機(jī)坐標(biāo)系下的點(diǎn)云坐標(biāo)及特征點(diǎn)坐標(biāo)。之后結(jié)合相機(jī)外方位元素,將上述點(diǎn)云坐標(biāo)及特征點(diǎn)坐標(biāo)納入火星車本體坐標(biāo)系下。再利用上述數(shù)據(jù)分別擬合出火星表面和2駛離坡道平面,并計(jì)算駛離軌道異面角與駛離軌道坡度角。最后將計(jì)算結(jié)果與工程值比對(duì)用于支持駛離決策。具體流程如圖2所示。
圖2 火星車在軌駛離決策支持流程圖Fig.2 Decision support flow chart of Mars rover departure
導(dǎo)航相機(jī)的高精度幾何標(biāo)定,提供相機(jī)內(nèi)方位元素、外方位元素以及畸變系數(shù)。首先,構(gòu)建地面標(biāo)定試驗(yàn)場(chǎng),通過2臺(tái)經(jīng)緯儀,將控制場(chǎng)各控制點(diǎn)坐標(biāo)歸納在火星車本體系下;利用經(jīng)緯儀進(jìn)行精密的控制點(diǎn)坐標(biāo)量測(cè)后,可獲得導(dǎo)航相機(jī)系與試驗(yàn)場(chǎng)系的相對(duì)位姿關(guān)系,將此關(guān)系作為導(dǎo)航相機(jī)外參數(shù)的初始值;然后,控制火星車俯仰軸和偏航軸轉(zhuǎn)動(dòng),導(dǎo)航相機(jī)在不同位姿對(duì)標(biāo)定試驗(yàn)場(chǎng)拍攝,在經(jīng)過立體匹配后量測(cè)出特征點(diǎn)的像平面坐標(biāo);最后,將控制點(diǎn)三維坐標(biāo)、像平面坐標(biāo)、相機(jī)畸變參數(shù)和內(nèi)參數(shù)作觀測(cè)量,將控制點(diǎn)坐標(biāo)、相機(jī)外參數(shù)、相機(jī)內(nèi)參數(shù)和像平面坐標(biāo)誤差作未知量建立共線方程式,從而求解出各未知量。依據(jù)左右像片外方位元素即可間接計(jì)算火星車導(dǎo)航相機(jī)的相對(duì)方位元素。
首先利用相機(jī)標(biāo)定所得的導(dǎo)航相機(jī)相對(duì)方位元素進(jìn)行立體圖像核線校正,并使用Sobel濾波[11]在校正后的立體圖像對(duì)之間獲取可靠的支撐點(diǎn)并獲取支撐點(diǎn)的視差值,再利用支撐點(diǎn)構(gòu)建德勞內(nèi)三角網(wǎng),然后為獲取更加密集的匹配點(diǎn)視差圖,利用各支撐點(diǎn)的視差值在三角網(wǎng)中進(jìn)行插值。同時(shí),也可通過人工檢查的方法選擇符合前方交會(huì)要求的少量同名像點(diǎn)。
利用獲取到的密集視差圖,通過前方交會(huì)獲得在左導(dǎo)航相機(jī)坐標(biāo)系下的三維點(diǎn)云及少量駛離軌道面上特征點(diǎn)坐標(biāo)。然后通過左導(dǎo)航相機(jī)外方位元素,將點(diǎn)云坐標(biāo)轉(zhuǎn)換到火星車本體系下,完成點(diǎn)云生成及少量駛離軌道面上特征點(diǎn)的三維坐標(biāo)獲取。
本次火星探測(cè)任務(wù)所選擇的著陸點(diǎn)為火星烏托邦平原南部,烏托邦平原是被火山熔巖填平的低矮平原,地形平緩,隕石坑較少。所以在計(jì)算著陸平臺(tái)駛離軌道坡度角時(shí),可以將小范圍火星表面近似視為平面。
駛離軌道為工業(yè)制品,其表面平整,選取特征點(diǎn)后采用基于總體最小二乘算法的平面擬合方法即可擬合出軌道平面;火星表面雖相對(duì)平整,但不規(guī)則分布著散落的巖石塊,為避免巖石塊對(duì)平面擬合結(jié)果的影響,采用結(jié)合RANSAC算法與總體最小二乘算法的平面擬合方法基于點(diǎn)云數(shù)據(jù)進(jìn)行平面擬合。
之后計(jì)算各平面法向量間夾角即為本文所需的軌道異面角和駛離軌道坡度角。最后,將計(jì)算得到的角度值與工程值進(jìn)行對(duì)比,若計(jì)算角度均小于工程值,則火星車可以執(zhí)行駛離動(dòng)作。
1.4.1 基于總體最小二乘算法的平面擬合
總體最小二乘法是一種較先進(jìn)的最小二乘法[12],總體最小二乘法認(rèn)為回歸矩陣存在干擾,在計(jì)算最小二乘解時(shí)考慮了這個(gè)因素,而在一般的最小二乘法中沒有考慮該因素的影響??傮w最小二乘法應(yīng)用廣泛,以下是基于該方法的平面擬合基本原理。
設(shè)平面方程為
z=ax+by+c.
(1)
對(duì)同平面上的n個(gè)數(shù)據(jù)點(diǎn){(xi,yi,zi),i=1,2,…,n}??紤]到x,y,z這3個(gè)方向上的誤差值,將式(1)改寫為
z+vz=a(x+vx)+b(y+vy)+c.
(2)
在式(2)中,vx,vy,vz分別為x,y,z這3個(gè)方向上的誤差改正數(shù)。
整理式(2),則有
(A+EA)X=L+EL.
(3)
其中:
之后用矩陣奇異值分法進(jìn)行解算,即
(4)
其中
由此得到模型參數(shù)估值為
(5)
殘差矩陣為
(6)
本文方法用如下公式直接計(jì)算出參數(shù):
X=(ATA-&2I)-1ATL.
(7)
1.4.2 結(jié)合RANSAC方法與總體最小二乘平差法的平面擬合方法
RANSAC方法是由Fischler和Bolles[13]提出,通過計(jì)算數(shù)據(jù)集中每一個(gè)點(diǎn)到隨機(jī)平面的距離,劃分出內(nèi)點(diǎn)與外點(diǎn),再通過不斷選擇新的隨機(jī)平面來最大限度地保留內(nèi)點(diǎn),從而消除異常點(diǎn)的影響。其優(yōu)點(diǎn)是對(duì)于包含較多異常值的數(shù)據(jù)集魯棒性高,但沒有考慮到測(cè)點(diǎn)誤差。而總體最小二乘法卻注意到了3個(gè)方向上可能存在的誤差,所以相對(duì)于傳統(tǒng)平面擬合方法,將隨機(jī)采樣一致性算法與總體最小二乘法相結(jié)合,將會(huì)使平面擬合結(jié)果擁有更高的魯棒性及準(zhǔn)確性,算法流程如下:
1)從點(diǎn)云數(shù)據(jù)中隨機(jī)抽取3點(diǎn),判斷是否共線,若是則重新抽取,若不是則給出這3個(gè)點(diǎn)所在的平面方程。
2)計(jì)算數(shù)據(jù)集中剩余各點(diǎn)到上述平面的距離及標(biāo)準(zhǔn)偏差。標(biāo)準(zhǔn)偏差是一種數(shù)據(jù)值偏離算術(shù)平均值程度的度量,利用點(diǎn)到模型平面距離的標(biāo)準(zhǔn)偏差作為判斷局內(nèi)外點(diǎn)的準(zhǔn)則,可以有效區(qū)分出局內(nèi)點(diǎn)與局外點(diǎn)。
3)設(shè)置合適的閾值,當(dāng)標(biāo)準(zhǔn)偏差大于閾值時(shí),該點(diǎn)為局外點(diǎn);當(dāng)標(biāo)準(zhǔn)偏差小于閾值時(shí),該點(diǎn)為局內(nèi)點(diǎn),并統(tǒng)計(jì)局內(nèi)點(diǎn)數(shù)量。
4)重復(fù)上述步驟,比較選取局內(nèi)點(diǎn)個(gè)數(shù)最多的數(shù)據(jù)集。
5)采用基于總體最小二乘法的平面擬合方法對(duì)以上步驟選取出的數(shù)據(jù)集中的內(nèi)點(diǎn)進(jìn)行平面擬合,得到平面方程參數(shù)值。
在以上過程中,隨機(jī)抽取次數(shù)可以根據(jù)數(shù)據(jù)集的大小由魏英姿和劉曉莉[14]提出的方法計(jì)算得到。
設(shè)平面方程為
z=2x+y+0.
本文使用matlab模擬點(diǎn)云數(shù)據(jù)進(jìn)行平面擬合,從設(shè)定平面中選取300個(gè)隨機(jī)點(diǎn)。為驗(yàn)證本文方法的有效性及不同異常值數(shù)量情況下的魯棒性,分別加入100、500、800和1 000個(gè)異常值形成4組模擬點(diǎn)云數(shù)據(jù)。采用本文方法,結(jié)合隨機(jī)采樣一致性算法與總體最小二乘算法的平面擬合方法對(duì)上述模擬點(diǎn)云數(shù)據(jù)進(jìn)行平面擬合,計(jì)算出估算值與真實(shí)值間的標(biāo)準(zhǔn)誤差。
當(dāng)點(diǎn)集中分別存在不同數(shù)量的異常點(diǎn)時(shí),仿真數(shù)據(jù)及分別使用2種方法的平面擬合結(jié)果如圖3所示,得到的平面參數(shù)及標(biāo)準(zhǔn)偏差如表1所示。
表1 2種方法的平面擬合結(jié)果對(duì)比表Table 1 Comparison of plane fitting results between the two methods
圖3 仿真點(diǎn)云數(shù)據(jù)及平面擬合結(jié)果圖Fig.3 Simulation point cloud data and plane fitting results
從表1可以看出,當(dāng)模擬點(diǎn)云中沒有異常值時(shí),2種方法均可以準(zhǔn)確地估計(jì)出平面參數(shù),當(dāng)模擬數(shù)據(jù)中加入異常值時(shí),隨著異常值數(shù)量的增加,整體最小二乘平差法更容易受到異常值的干擾從而不能很好地估計(jì)出平面參數(shù),而本文提出的結(jié)合了RANSAC算法與總體最小二乘平差法的平面擬合方法估計(jì)出的平面參數(shù)依舊可以保持良好的準(zhǔn)確性,標(biāo)準(zhǔn)偏差均小于0.04,由此可知本文方法在平面擬合中的有效性及魯棒性均優(yōu)。
2.2.1 導(dǎo)航相機(jī)幾何標(biāo)定
在地面實(shí)驗(yàn)中,布置高精度的標(biāo)定實(shí)驗(yàn)控制場(chǎng)。本次地面實(shí)驗(yàn)的三維控制場(chǎng)環(huán)境如圖4所示,在距離導(dǎo)航相機(jī)1.3~5.0 m范圍內(nèi)共布設(shè)33根測(cè)桿、121個(gè)控制點(diǎn)。導(dǎo)航相機(jī)標(biāo)定結(jié)果如表2及表3所示。其中,鏡頭畸變模型由徑向畸變參數(shù)k1、k2和切向畸變參數(shù)p1、p2組成,旋轉(zhuǎn)矩陣是描述導(dǎo)航A相機(jī)系到導(dǎo)航B相機(jī)系下的旋轉(zhuǎn),位移向量是導(dǎo)航A相機(jī)系原點(diǎn)在導(dǎo)航B相機(jī)系下的三維坐標(biāo)。
表2 導(dǎo)航相機(jī)A/B的內(nèi)方位元素Table 2 Navigation camera A/B′s inner orientation element
表3 監(jiān)視相機(jī)A/B的相對(duì)位姿參數(shù)Table 3 Relative pose parameters of surveillance camera A/B
圖4 三維標(biāo)定控制場(chǎng)Fig.4 3D calibration control field
2.2.2 點(diǎn)云及特征點(diǎn)坐標(biāo)獲取
火星車及著陸平臺(tái)著陸火星表面后,桅桿展開,導(dǎo)航相機(jī)獲取駛離坡道及火星表面圖像如圖5所示。利用導(dǎo)航相機(jī)標(biāo)定結(jié)果,對(duì)獲取到的立體圖像對(duì)進(jìn)行密集匹配,通過前方交會(huì)獲得離散點(diǎn)云及特征點(diǎn)標(biāo)。
圖5 火星車導(dǎo)航相機(jī)立體圖像Fig.5 Stereo image of the rover navigation camera
2.2.3 平面擬合及角度計(jì)算
利用本文提出結(jié)合隨機(jī)采樣一致性算法和總體最小二乘算法的平面擬合方法對(duì)點(diǎn)云數(shù)據(jù)進(jìn)行平面擬合。通過駛離坡道特征點(diǎn),利用總體最小二乘算法估算出2駛離坡道平面參數(shù)。最后,通過平面法向量計(jì)算各平面間夾角,結(jié)果如表4所示。
表4 基于導(dǎo)航相機(jī)圖像的在軌角度測(cè)量結(jié)果Table 4 On-orbit angle measurement results
如表4所示,2駛離坡道異面角為0.203°,遠(yuǎn)小于工程值(10°),其與火星表面夾角分別為-18.947°與-19.154°,均遠(yuǎn)小于工程值(34°),故判定火星車駛離著陸平臺(tái)動(dòng)作安全性高,無脫軌、傾翻危險(xiǎn),可執(zhí)行駛離指令。
本文以我國(guó)天問1號(hào)火星探測(cè)任務(wù)中的火星車在軌駛離著陸平臺(tái)決策問題作為研究對(duì)象,提出基于導(dǎo)航相機(jī)圖像的平面間角度計(jì)算方法,創(chuàng)新性地采用RANSAC算法與總體最小二乘算法,并利用仿真數(shù)據(jù)進(jìn)行算法有效性、魯棒性的驗(yàn)證。最終將此方法運(yùn)用在火星探測(cè)任務(wù)中并圓滿完成火星車駛離決策支持,進(jìn)一步驗(yàn)證了本文方法的有效性。