劉佳璐
(1.北京控制工程研究所,北京100190;2.空間智能控制技術國家級重點實驗室,北京100190)
月面模擬環(huán)境的SIFT特征提取與匹配方法
劉佳璐1,2
(1.北京控制工程研究所,北京100190;2.空間智能控制技術國家級重點實驗室,北京100190)
為了滿足月面巡視探測器的自主導航要求.使用一種新的基于尺度不變的特征點提取和匹配算法.首先根據(jù)尺度不變特征變換方法從圖像中提取關鍵點作為特征點,然后進行左右雙目圖像的特征點匹配和視差的恢復.與傳統(tǒng)特征算法相比,可以提高對不同光照環(huán)境圖像匹配的魯棒性和匹配精度.在模擬試驗場的雙目視覺圖像匹配中,仿真實驗取得較好的效果.
月面巡視探測器;SITF特征;視覺導航;特征提?。惶卣髌ヅ?/p>
本文研究背景為月面巡視探測器(月球車)控制與導航分系統(tǒng)中的視覺部分.導航與控制子系統(tǒng)是控制月球車的神經(jīng)中樞,本文研究的視覺導航部分猶如這個神經(jīng)中樞的眼睛.視覺導航系統(tǒng)能否處理采集到的圖像獲得理想的效果,并獲得清晰有效的圖像以及做出正確的圖像分析與理解,將直接影響到后面的遙操作或自主導航及避障的路徑規(guī)劃.
在車輛的視覺導航系統(tǒng)中,通常包括圖像的采集系統(tǒng)和視覺處理系統(tǒng)兩大部分,其中前者通常包括CCD相機采集數(shù)字圖像,采集系統(tǒng)又分單目圖像的采集和雙目圖像的采集,近些年來,隨著信息技術的發(fā)展,普遍在視覺導航中使用雙目立體視覺采集和處理圖像[1].比如美國的“索杰納”、火星探測車(MER)的“勇氣號”和“機遇號”等.在雙目立體視覺中[2],是模仿人眼的視差原理,進行兩幅圖像中相同部分特征的對應匹配,根據(jù)視差的原理獲得三維信息,得出一個相對觀測者的一個視差圖,有效判斷目標的距離,并且以此規(guī)劃一個較為安全的路徑,進而能進行自主導航和避障.整個系統(tǒng)的構成如圖1所示.特征的提取和匹配是視覺導航技術中的一個重要步驟;也是計算機視覺研究領域中的一個重要問題.
在月球車的視覺導航系統(tǒng)中,首先要對采集的圖像進行特征提取,隨后用提取的特征進行雙目匹配得出視差圖,最后恢復出到前方目標的距離信息.特征的提取是視覺導航技術中的一個重要步驟,也是計算機視覺研究領域中的一個重要問題.在雙目視覺系統(tǒng)中,如何快速準確的選取兩幅圖像中共同可以用于下一步匹配的特征,是非常關鍵的一步,現(xiàn)有的立體視覺系統(tǒng)的特征提取包括點、線和區(qū)域特征的提取.由于月球車所處的月面環(huán)境屬于非結構化環(huán)境,紋理特征比較單一,灰度變化不明顯,只能適合采用基于特征點的匹配.目前的特征點提取方法主要有Moravec算子、Forstner算子、Harris角點提取算子[3]和Susan算子等.由于月面模擬環(huán)境的特點和相機等硬件的局限性,容易出現(xiàn)兩個相機采集的圖像光線差異和發(fā)生形變等問題.
本文使用尺度不變特征(SIFT,scale invariant feature transform)對模擬環(huán)境圖像提取特征點[4],并進行雙目視覺的匹配工作.與傳統(tǒng)算法相比,可以增加對不同光照環(huán)境的魯棒性,并且增加了匹配精度.在模擬試驗場的雙目視覺照片中,本文的實驗取得較好的效果.
圖1 視覺系統(tǒng)算法框架圖
本文包含以下幾個部分,第二部分是基于SIFT的月面模擬圖像特征提取方法處理,第三部分是特征匹配方法,第四部分是實驗及結果分析,第五部分是應用這個算法的可行性分析,第六部分是結論.
尺度空間理論最早出現(xiàn)于計算機視覺領域時其目的是模擬圖像數(shù)據(jù)的多尺度特征.Koendetink在文獻[4]中證明高斯卷積核是實現(xiàn)尺度變換的唯一變換核,而Lindeberg[5]等人則進一步證明高斯核是唯一的線性核.圖像中的二維高斯函數(shù)定義為
式中σ為高斯正態(tài)分布的方差.一個圖像的尺度空間L(x,y,σ)定義為高斯函數(shù)與圖像的卷積
Lowe在圖像二維平面空間和DoG(differenceof-gaussian)尺度空間中同時檢測局部極值以作為特征點,以使特征點具備良好的獨特性和穩(wěn)定性[6].這個算法首先在尺度空間進行特征檢測,并確定關鍵點(Keypoints)的位置和關鍵點所處的尺度,然后使用關鍵點鄰域梯度的主方向作為該點的方向特征,以實現(xiàn)算子對尺度和方向的無關性.
SIFT算法提取的尺度不變特征向量對旋轉、尺度縮放和亮度變化保持不變性,對視角變化、仿射變換和噪聲也保持一定程度的穩(wěn)定性,且獨特性好,信息量豐富,適用于在海量特征數(shù)據(jù)庫中進行快速、準確地匹配.
SIFT特征匹配算法包括兩個階段,第一階段是SIFT特征的生成,即從多幅待匹配圖像中提取出與尺度縮放、旋轉、亮度變化無關的特征向量;第二階段是SIFT特征向量的匹配.
下面本文來具體介紹一下SIFT算法.一幅圖像SIFT特征向量的生成算法總共包括4步:
(1)計算尺度空間極值,以初步確定關鍵點位置和所在尺度.
首先計算圖像對應不同尺度空間的一系列高斯差分圖像DoG(Laplacian-of-Gaussian),并構造高斯金字塔,DoG算子定義為兩個不同尺度高斯核的差分,具有計算簡單的特點,是歸一化LoG算子的近似.
DoG算子如式(2)所示
對于圖像上的點,計算其在每一尺度下DoG算子的響應值,這些值連起來得到特征尺度軌跡曲線.特征尺度曲線的局部極值點即為該特征的尺度.尺度軌跡曲線上完全可能存在多個局部極值點,這時可認為該點有多個特征尺度.
在計算尺度空間極值時,每個像素需要跟包括同一尺度的周圍鄰域8個像素和相鄰尺度對應位置的周圍鄰域9×2個像素總共26個像素進行比較,以確保在尺度空間和二維圖像空間都檢測到局部極值.
(2)通過擬和三維二次函數(shù)來精確確定關鍵點的位置和尺度,同時去除低對比度的關鍵點和不穩(wěn)定的邊緣響應點(因為DoG算子會產(chǎn)生較強的邊緣響應),以增強匹配穩(wěn)定性和提高抗噪聲能力.將尺度空間的方程D(x,y,σ)按照泰勒展開得到第二項[7]
通過這個二次函數(shù),將不同尺度圖像的局部極值點進行擬合;另上式的偏導數(shù)為0,求出極值的位置
這個過程可以在定位的過程中,使提取的特征點達到亞像素的精度.
(3)利用關鍵點鄰域像素的梯度方向分布特性為每個關鍵點指定方向參數(shù),使算子具備旋轉不變性.計算特征點的方向θ(x,y)和幅值m(x,y)
式(4)為(x,y)處梯度的模值和方向公式.其中L所用的尺度為每個關鍵點各自所在的尺度.在實際計算時,在以關鍵點為中心的鄰域窗口內(nèi)采樣,并用直方圖統(tǒng)計鄰域像素的梯度方向.梯度直方圖的范圍是0°~360°,其中每10°一個柱,總共36個柱.直方圖的峰值則代表了該關鍵點處鄰域梯度的主方向,即作為該關鍵點的方向.
至此,圖像的關鍵點已檢測完畢,每個關鍵點有三個信息:位置、所處尺度和方向.由此可以確定一個SIFT特征區(qū)域.
(4)生成SIFT特征向量.首先將坐標軸旋轉為關鍵點的方向,以確保旋轉不變性.
接下來以關鍵點為中心取16×16的窗口.生成16個4×4的子窗口,在每個子窗口計算0°,45°,90°,135°,180°,225°,270°,315°,這8個方向的梯度大小和幅值,因此每個4×4的子窗口可以看作一個8維特征向量的描述,那么整個窗口可以看作128維特征描述.然后將這些特征進行向量的歸一化描述.如果縮小關鍵點的窗口到8×8,就可以最后生成一個32維特征向量.
當兩幅圖像的SIFT特征向量生成后,下一步采用關鍵點特征向量的歐式距離來作為兩幅圖像中關鍵點的相似性判定度量.如圖2所示,其匹配方法是直接在對應的另一幅圖像中尋找特征點的特征向量相減,直接找出所得差值為最小值的點,作為匹配點.當兩幅圖像的SIFT特征向量生成后,采用關鍵點特征向量的歐式距離來作為兩幅圖像中關鍵點的相似性判定度量.
圖2的具體描述如下,假設在左圖像提取n個特征點,在右圖像提取m個特征點.左圖像第i(0≤i≤n)個特征點坐標(xi,yi)的特征向量為Xli,與每個右圖像的每個特征點的特征向量Xrj(j=1,…,m)相減所得的一組數(shù)據(jù)中,理論上選擇特征向量之差為最小(特征向量的歐氏距離最近)的特征向量所對應的右圖特征點為對應匹配點.通常情況,為了防止誤匹配的發(fā)生,選擇歐氏距離最近點與次近點的距離相除,如果兩者相除低于某一個比例閾值,就確定這個點和左圖像的特征點匹配上.這個比例閾值越大,就會有更多的點匹配上,但是誤匹配的概率也會高;這個比例閾值越低,匹配精度越高,但是匹配的點會減少.
圖2 特征匹配的流程圖
圖3是增強的圖像與沒有增強的圖像的匹配結果.獲得27個匹配點.使用增強的圖像與沒有增強的進行匹配,對本文的工作是非常有意義的,但由于采集設備硬件在月面環(huán)境中受到擾動影響,可能出現(xiàn)其中一幅圖像過曝光的情況,會導致本應該屬于對應的一個目標在圖3上出現(xiàn)的灰度特征呈現(xiàn)出很大的差異.
在光線差異比較大的情況下,傳統(tǒng)的SAD(the sum of absolute differences)和NNC(normalized cross correlation)等匹配準則都是基于局部灰度信息特性的匹配,這些方法會帶來明顯的誤匹配情況.使用基于特征向量的SIFT方法匹配會對光照強度、位置變化、圖像扭曲變形等保持很好的魯棒性.
根據(jù)視差公式推算相機距離被觀測點目標的距離:Z=Bf/d,其中兩相機間距B和焦距f根據(jù)具體相機試驗數(shù)據(jù)計算.d為兩幅圖像中匹配點所在像素的坐標對應的歐氏距離.
其中xL和yL為圖(3a)圖像匹配點的坐標,xR和yR為圖(3b)圖像匹配點的坐標.
圖3 增強的左圖像與沒有增強的右圖像的匹配結果
假設本文實驗中導航相機間距B為200mm,焦距f為14mm,相機靶面尺寸為12mm×12mm,對應每個象素為0.001 2mm;將兩圖像的像素間距離數(shù)據(jù)帶入視差公式Z=Bf/d,可以獲圖中的匹配點到相機的距離距離Z如表1所示.
表1 相機到對應的匹配點距離
根據(jù)表1所示,第3點,15點,22點都是對應圖3中距離相機較遠的點,求得的距離值都比較大.而17,20,21,23等幾個點,在最前面距離相機最近的位置,這些點的距離符合實際的遠近位置關系,因此,這個試驗的結果有較高的準確性.同時這個實驗的對比結果顯示,在明暗明顯不同的兩幅圖像中,仍然有較高的匹配精度,顯示了對不同光照環(huán)境較好的魯棒性,這個特性對以后的月面真實環(huán)境的匹配工作有重要的意義.
雖然SIFT特征匹配的魯棒性很強,可解決很多實際環(huán)境中可能出現(xiàn)的問題.但是其主要問題就是匹配準確的點數(shù)目不足以完全恢復出三維地形,為此可以采用其它手段完成避障任務.
(1)今后改進SIFT特征匹配算法工作的設想
SIFT特征匹配算法在對于月面模擬環(huán)境的視覺處理中雖然有很多獨特的優(yōu)點,但是比較致命的缺點就是精確匹配的數(shù)量不夠多,運算速度比較慢.
為此一方面可以通過圖像分割方法,減少匹配的范圍,將工作量縮小.另一方面在關鍵點特征向量生成上,可以在保留信息量的基礎上,縮小窗口范圍,進一步減少特征向量的維數(shù).
(2)用有限匹配點解決避障問題
首先,圖像中的每一個像素對應地面的近似梯形小塊,假設地面為平滑無障礙物的,那么每個像素對應的地面梯形塊到相機的距離應該是一個有規(guī)律的函數(shù),對應每一點都應該有一個固定的理想的值.
而通過SIFT方法計算出的結果,將與這個相機距離地面理論值有一個偏差,這個偏差的大小就決定這個位置的高低起伏.當這個偏差值超過某個閾值時候,就可以推斷這個位置是安全區(qū)域還是危險區(qū)域.
(3)在視覺里程的應用
視覺里程計,是可以克服由于土壤松軟,陡坡等引起的漫游車滑移帶來的擾動.其原理是假定漫游車不動,特征點移動,求出特征點移動的距離和方向,然后推算出車輛本身的行走距離和位置,其具體工作方式包括:
1)在采集的圖像中選定一些感興趣的特征點;
2)在探測器移動的時候跟蹤這些特征點;
3)計算出不同時刻這些點的相對位置.
視覺里程對匹配點的精度要求比較高,今后可以使用SIFT方法進行這方面的嘗試工作.
本文在基于SIFT特征提取的方法上進行了深入研究,并且將其用于月面圖像的雙目立體視覺匹配中.由于月面模擬圖像的光照環(huán)境變化較大,采集圖像的兩相機之間容易存在其他硬件原因導致的采集圖像的差異等,本文使用基于尺度不變的特征提取和匹配方法,可以有效避免這些問題.另一方面由于匹配的特征點提取達到亞像素精度,因此可以明顯提高目標定位的精度,在仿真實驗中取得較好的實驗結果.今后可以進一步優(yōu)化這一算法,針對實時性進行提高,同時可以利用圖像分割的方法,在預處理階段使用圖像分割來有效判別可能的危險區(qū)域,減少后面的匹配工作量.
[1] Steven B,Goldberg M W,Maimone L M.Stereo vision and rover navigation software for p lanetary exp loration[C].IEEE Aerospace Conference,Big Sky,Montana,USA,March 2002
[2] Cheng Y,Goguen J,Johnson A,et al.Themars exploration rovers descent image motion estimation system[J].IEEE Intelligent Systems,2004,3(3)13-21
[3] Harris C,Stephens M J.A combined corner and edge detector[C].The 4thAlvey Vision Conference,Manchester,UK,April 1988
[4] Lowe D G.Distinctive image feature from scale-invariant keypoints[J]International Journal of Computer Vision,2004,60(2):91-110
[5] Lindeberg.Scale space for discrete signals[J].IEEE Trans.PAM l,1990,20(3):234-254
[6] Lowe D G.Object recognition from local scale-invariant features[C].International Conference on Computer Vision,Corfu Greece,1999
Extraction and Matching of SIFT Feature for Simulated Lunar Environment
LIU Jialu1,2
(1.Beijing Institute of Control Engineering,Beijing 100190,China;2.National Laboratory of Space Intelligent Control,Beijing 100190,China)
A new feature point extraction algorithm based on prior know ledge of navigation systems for lunar rover is presented in this paper.The key-points was extracted by SIFT from image as feature points at first.Then use these feature points for binocular matching thus getting distance information of the scene by the calculation of differences between match points in two images.This algorithm could improve the robust to lightness change for images of lunar region and accuracy in the later matching phase.This algorithm makegood results in simulative environment experiments.
lunar rover;SIFT feature;vision navigation;feature extraction;feature matching
TP391
A
1674-1579(2009)05-0048-04
2009-01-09
劉佳璐(1972—),男,遼寧人,博士后,研究方向為計算機視覺(e-mail:tnliu@sohu.com).