視覺里程計 第二部分:匹配、魯棒、優化和應用

視覺里程計第二部分:匹配、魯棒、優化和應用

VisualOdometryPartII: Matching, Robustness, Optimization, and Applications

TaylorGuo, 2016/5/15,


第二部分講解特徵匹配、魯棒性和應用。主要是視覺里程計中的各種點特徵檢測和離羣點去除算法。特別重點講解了隨機採樣一致性算法(RANSAC)和加快運算速度的策略。其他的議題包括,誤差模型構建、迴環檢測(或位置識別)、和捆集調整。開源代碼可以從網上下載。本文數學符號和公式在第一部分已經提到,這裏就不重複了。


特徵選擇和特徵匹配


有兩種方法可以查找特徵點和它們的對應關係。第一種是查找一張圖像上的特徵,用局部查詢方法在後面的圖像中跟蹤這些特徵,比如相關分析。第二種是單獨檢測所有圖像中的特徵,基於相似特徵匹配它們的特徵描述子。當圖像的拍攝視角非常相近時,前一種方法更適合;當運動幅度較大或視角變換大時,後一種方法更合適。視覺里程計早期的研究多采用前一種方法,如論文2-5,最近10年的研究工作更傾向於後一種方法,如論文1,6-9。主要由於早期的研究工作主要是小場景環境,圖像拍攝的角度較小,最近幾十年的研究主要集中在大場景環境下,圖像拍攝儘可能大同時限制運動偏移相關問題。


特徵檢測


在特徵檢測的過程中,需要搜索圖像的顯著特徵點,這樣可以在其他圖像上進行良好的匹配。局部特徵是一種圖像模式,它能從相鄰的圖像中從亮度,顏色和紋理方面進行區別。對視覺里程計,點雲檢測,比如角點或圓斑,非常重要,因爲它們在圖像中的位置可以精確測量。


兩個或多個邊緣相交的點就是角點。斑點通過亮度,顏色和紋理比較來區別它和鄰近的圖像模式。它不是邊緣也不是角點。優秀的特徵檢測應該具有以下特徵:定位精準(包括位置和尺度),可重複(比如,大量的特徵可以在下一幅圖像中被再次檢測到),計算效率高,魯棒(對噪聲,壓縮損傷,圖像模糊),具有特殊性(這樣特徵可以在不同的圖像間精確匹配),不變性【對光度測量方面(比如亮度)和幾何上的變化【旋轉,尺度(縮放),透視變形】】。


視覺里程計採用各種點特徵檢測器,比如,角點檢測(如HarrisShi-TomasiFAST)和斑點檢測(SIFTSURFCENSURE)。對這些檢測方法的概述如論文17分析所示。每種檢測方法都有自己的優勢和劣勢。角點檢測計算速度更快,但特徵更少;但斑點檢測特徵更多,計算速度較慢。另外,角點檢測在圖像內位置的定位更好,但在尺度上的定位稍差。這意味着角點不能像斑點那樣在尺度和視圖大幅變化情況下,經常重複檢測。但在某些環境中斑點並非總是正確的選擇,例如SIFT會自動忽略角點,但在城市環境中這些角點非常豐富。基於這些原因,選擇合適的特徵檢測,應該仔細考慮如下問題:計算資源,實時性要求,環境類型和運動狀況(比如,相鄰圖像之間的遠近距離)。圖1是不同焦點和斑點特徵檢測的特點和性能對比。SIFTSURFCENSURE不是仿射不變檢測器,但對視角變換具有不變性。論文18和論文9,19分別評估了室內和室外的特徵檢測和特徵描述。


每個特徵檢測都有兩個階段組成。先用特徵響應函數處理整個圖像【比如哈爾斯檢測中的角點響應函數或者SIFT中的高斯差分DoGdifference-of-Gaussian)操作符】。然後,用非極大值抑制算法處理第一步輸出的結果。目的就是爲了識別特徵響應函數的局部最小值(或最大值)。非極大值抑制算法輸出的結果表示的是檢測出來的特徵。爲了使檢測對尺度變換不變的方法是在同一圖像的小尺度和大尺度上使用檢測器,如圖2a)。透視變換的不變性可以估計仿射變換中的透視扭曲獲得。

SIFT特徵最開始是用於物體和位置識別,對視覺里程計的效果也非常好。SIFT檢測器用高斯差分操作處理圖像的高尺度和低尺度,然後獲取尺度和空間上的輸出的局部最大或最小值(如圖2)。SIFT的優勢是魯棒的描述子,後面會詳細介紹。SURF是建立在SIFT基礎之上的,但是用盒子濾波去近似高斯操作,相比SIFT計算速度更快,可以用積分圖像獲得。



2.原始圖像(a,左邊)用4個不同sigmas值的高斯濾波平滑處理,可以重複降採樣2層處理圖像。最後,(bDoG高斯差分圖像可以用兩個連續的不同的高斯平滑圖像計算得到。SIFT特徵是DoG高斯差分圖像尺度和空間上的局部最小或最大值。

特徵描述子

在特徵描述階段中,每個特徵鄰域會轉化成精簡的描述子用於匹配,而不是其他的描述子來匹配。最簡單的特徵描述子是貼圖外觀,也就是特徵點附近區域的像素亮度。在這裏,誤差的度量,比如SSD差值平方和或NCC歸一化互相關分析可以用於比較亮度。與SSD相比,NCC對輕微亮度改變的補償更好。一種更魯棒的圖像相似度測量方法是非參數變換,可以將每個圖像區塊轉換成二進制向量表示,其中向量鄰居的亮度值高於或低於中心像素的亮度。區域的相似度就可以通過漢明距離計算。

在很多例子中,特徵的局部貼圖外觀並不是攜帶特徵信息得最好的描述子,因爲外觀可能會隨着方向,尺度和視角變化。實際上,SSDNCC並不是對任意變化都不變,因此它的應用只侷限於特徵位置附近。點特徵最流行的描述子是SIFTSIFT描述子基本上是局部梯度方向的直方圖。特徵附近的區域被分解成一個4x4的網格。每個象限中,構建包含8個梯度方向的直方圖。所有這些直方圖聯繫在一起形成一個含有128個元素的描述向量。爲了減小光照變化的影響,描述子會歸一化成單位長度。


3 SIFT特徵方向和尺度


SIFT描述子對光照,旋轉,尺度變換,甚至到60o的變化比較穩定。SIFT特徵的例子如圖3所示。顯示了每個特徵的方向和尺度。SIFT描述子通常可以計算角點特徵和斑點特徵;但性能在計算角點特徵時會降低,因爲,角點的定義是邊緣的交點。因此,描述子不如斑點那麼明顯,依賴於圖像紋理明顯的區域。

2010-2011年,發明了3個新的描述子,比SIFTSURF計算速度快。一個簡單的二值描述子BRIEF比較流行:它用關鍵點附近的區塊採樣的亮度對比。除了提取和對比速度非常快之外,對旋轉和尺度變化性能非常好。由於BRIEF的成功,開發了ORB,處理方向不變性,優化了亮度值比值的取樣算法。與此同時,基於FASTBRISK關鍵點檢測器,對尺度和旋轉不變,其二值描述子可以配置採樣模式。


特徵匹配


4 SIFT特徵跟蹤


特徵匹配在另外一幅圖像上搜索對應的特徵。圖4顯示了在第一幅圖像上的特徵在多個幀上SIFT特徵匹配。對應同一特徵的一組匹配稱爲特徵跟蹤。最簡單的匹配兩幅圖像間特徵的方法是對比第一幅圖像中所有的特徵描述子和第二幅圖像中所有其他的特徵描述子。

描述子的對比用相似度測量。如果描述子是特徵的局部外觀貼圖,比較好的測度方法是SSDNCC。對SIFT描述子來說,就是歐氏距離。


一致性確認

比較兩幅圖像中所有的特徵描述子後,在第二幅圖像中選擇最優對應特徵就是選擇距離或相似度上最近的描述子。但在這個過程中可能導致第二幅圖像中的特徵匹配了第一幅圖像中的不止一個特徵。爲了決定選擇哪個匹配,就需要採用相互一致性確認。這個方法存在於用第一幅圖像中的特徵去匹配第二幅圖像中的每個特徵過程中。只有相互認爲是優選匹配的對應特徵對纔會被認爲是正確的特徵匹配。


匹配約束

這種窮盡匹配的劣勢是計算複雜度是特徵數量的二次方,當特徵的數量很大的時候,比如幾千個時,這種方法就變得不切實際。一種更好的方法是使用索引結構,比如多維搜索樹或哈希表,用於在給定的特徵附近快速搜索特徵。一種更快的特徵匹配方法是在第二幅圖像中可能的區域搜索潛在的對應關係。這些區域用運動模型或3D特徵位置(如果有的話)尋找。比如,在第一部分中描述的3D2D的運動估計。運動估計還可以使用附帶的傳感器,比如IMU,里程計,激光,GPS,或者也可以從前一位置估計一個常量速度模型,如論文26所示。那麼,特徵區域就可以從運動的不確定性和3D點雲中作爲誤差橢圓計算。

還有一種方法,如果只知道運動模型而不知道3D特徵位置,那麼對應關係就可以在第二幅圖像中沿着對極線進行搜索。這個過程稱爲對極幾何匹配。如圖5所示,一個2D特徵和兩個相機中心點形成了3D空間中的一個平面,這個平面和兩幅圖像相交於兩條直線,這兩條直線成爲對極線。對極線可以從2D特徵和相關的相機運動計算出來,如第一部分中介紹的。第一幅圖像中的每個特徵在第二幅圖像中都有不同的對極線。


5.對極幾何約束


在立體視覺中,通常不是對每個候選特徵計算對極線,而是對圖像進行矯正。圖像矯正是將圖像對重投影到一個新的圖像對上,其中左右兩邊的圖像對極線是水平的且相互對齊。既然對極線不需要從每個特徵中計算:特徵的對應關係可以從左右兩個圖像中交叉搜索,它們都在同一行上,這樣圖像匹配/對應關係搜索就非常有優勢。圖像矯正可以在GPU上高效執行。在立體視覺中,兩個相機的相對位置是精確已知的。但是如果運動受到不確定性的影響,對極搜索通常會從對極線擴展到一個特定距離的矩形區域中。在立體視覺中,SSDNCC和統計變換,廣泛地用來計算對極幾何匹配的相似度度量。


特徵跟蹤

在所有候選圖像上查找特徵,然後匹配它們具體操作是先在第一幅圖像上檢測特徵,再在後續的圖像上搜索對應的匹配。這種檢測後跟蹤的方法非常適合視覺里程計應用,拍攝的圖像都是在相近的位置,它們的連續幀間的運動和外觀形變比較小。針對這種運用,SSDNCC工作良好。

然而,如果特徵跟蹤是工作在一個很長的圖像序列上,它們的外觀變化很大。這種情況下,針對每個特徵採用仿射形變模型是一種解決方案。一種可行的跟蹤算法是KLT跟蹤法。


==========不忘初心 方得始終[email protected]===2017年4月20日編輯===EJU in Shanghai===


討論


SIFT匹配

SIFT特徵匹配,論文14的作者最初使用距離比值,用於位置和目標檢測。如果最近的和第二近的匹配的比值低於用戶指定的閾值,距離比值算法就會使用最近的這個匹配(最小的歐幾里得距離)。這種刪除匹配的方法可能不是一直有用,比如在重複的場景結構情況下。用於檢測的比值只能是啓發式的,不幸運的猜測可能會刪除正確的匹配。因此,很多例子中,不是用比值測試,而使用RANSAC處理離羣點可能更好一些。


直線和小邊

視覺里程計中除了點特徵方法,還可以使用直線和小邊。在結構化環境中,他們可以用作點特徵的附加信息,可以提供更多有用的線索,比如方向(直線或小邊的)平面或正交約束。相比點雲,直線更難匹配,直線更容易被遮擋。然而,小邊線段的起點和終點可能不存在(比如,遮擋和水平直線)。


特徵的數量和分佈

圖像中的特徵會顯著影響視覺里程計的效果。特徵越多,運動估計效果越穩定,這就需要關鍵點在圖像中的分佈儘可能平均。爲了達到這樣的目的,圖像可以被分成網格,每個格子中的特徵檢測會調整檢測閾值,知道每個子圖像中取得最少數量的特徵。一個成功的規則是,一個640x480分辨率中有1000個特徵。


稠密和無對應關係的方法

除了稀疏特徵提取方法外,還可以使用稠密方法,比如光流法,或無特徵方法。光流法主要用於跟蹤,每個像素或整幅圖像中的子集(比如,用於指定的網格中的所有像素)。但與特徵跟蹤類似,它要求幀之間的運動較小,因此,不適用於視覺里程計,它的運動累積誤差會迅速增加。另一種替代方法是無特徵運動估計方法:使用諧波傅里葉變換計算兩幅圖像的相對運動。這種方法對低紋理圖像優勢明顯,但計算複雜度高(可能需要好幾分鐘)運動恢復精度也比基於特徵的低。


離羣點移除

匹配好的點雲通常會被離羣點污染,也就是錯誤的數據關聯。離羣點出現的可能原因是圖像噪聲,遮擋,特徵檢測子或描述子的數學模型沒有處理到的視角和光照變化。比如,大部分特徵匹配技術都假定線性光照變化,純相機旋轉和縮放,或仿射形變。然而,這些只是數學模型,估計了現實中複雜的多的狀況(圖像飽和,透視形變,運動模糊)。如果需要相機運動準確地估計,那麼移除離羣點就非常重要。在大部分視覺里程計中移除離羣點最需要謹慎處理。圖6顯示了移除離羣點前後的視覺里程計結果。


6:之前估計的視覺里程計軌跡與移除離羣點之後的對比。


RANSAC(RANdom Sample Consensus隨機採樣一致算法)

離羣點去除算法有效地使用了運動模型的幾何約束。魯棒估計方法,比如M估計,數據刪除,外部匹配、離羣點去除,都可以使用,只有在離羣點相對較少的情況下才有效。在離羣點出現時,模型估計的標準方法是RANSAC

RANSAC的核心思想是隨機提取數據點計算模型的假設前提,再在其他數據點中驗證這個假設。如果其他數據都一致驗證這個假設,它就是一種有效方案。對於視覺里程計中的兩視圖運動估計,估計的模型是兩個相機位置間的相對運動(旋轉和平移)和用於候選特徵匹配的數據點。通過計算點到極線的距離可以找到滿足前提條件的內點。點到對極線的距離通常通過一階估計計算---稱爲Sampson距離---這樣效率更高。另外一種點到對極線的距離計算方法是論文36提出的直接誤差測量。直接誤差測量圖像特徵和對極平面的夾角。作者聲稱直接誤差對全景相機和廣角相機非常有效,對一般的相機也同樣有效。




通過計算等式1得出子集數量N(迭代次數)以確保可以找到一個正確的方案:

其中,s是模型中數據點的數量,是離羣點佔數據點的百分比,p是要求的成功的概率。考慮到魯棒性,在很多實際操作中,N通常乘以10RANSAC更高級的執行方法是在迭代的過程中,對離羣點分數比值進行估算。

如上所示,RANSAC是一種概率方法,不同的方法有不同的解決方案、具有不確定性;然而,當迭代的數量增加時,方案會趨向穩定。


最小模型參數法


7.RANSAC的迭代次數與離羣點分數比值的對比


如圖7所示,N是數據點數量s次方指數,用於估計模型。因此,使用模型的最小參數法非常有必要。在第一部分中,曾經講到過對未標定的相機使用8點法解決方案。儘管也可以用於標定過的相機,但當場景點共面時,8點算法會失效。不過,當相機標定過後,6自由度運動模型可以從最少5點對應關係中得到,解決這一問題的方案是1913年論文37提出的。幾種最小5點解決方案後來也有很多人提出,但最有效的是論文39的方案,論文41提出過,後來論文42修正過。在這之前,6點,7點,8點解決方案都廣泛應用。但5點法更有優勢,應用於平面場景中。(可以看到,8點和7點法用於未標定過的、透視模型相機。全景相機也可以使用這兩種方法,相機需要標定。另外,未標定的全景相機n點法也有很多研究,其中n由鏡頭類型或魚眼鏡頭決定。論文48中,對標定過的全景相機,6自由度運動模型可以從2對正對圖像點中恢復。正對的圖像點是它們的射線對齊但朝不同的視角方向。這也表明正對的圖像點可以獨立地估計出平移和旋轉變換。)

儘管5點算法是標定相機的最小解決方案,過去幾十年中,仍然有很多嘗試去減小運動估計參數所需的數量。論文49提出了3點法估計已知相機方向角的情況。這種情況可以用於帶有重力傳感器的相機(實際上,重力矢量可以固定兩個相機航向角度。)後來,論文50改進了這個研究,3點法可以用於4點(3+1RANSAC算法。3+1指的是增加了一個遠場景點(理論上是無窮遠場景點)用於確定兩個航向角。採用這個4RANSAC,他們成功演示了6自由度的視覺里程計。論文51提出了最小2點的6自由度視覺里程計,從帶有IMU的相機中得到滿旋轉矩陣。

在平面運動場景下,運動模型複雜度可以減少到3自由度,可以用論文52所示的2點參數法。對於汽車來說。論文953表明,運動模型完全由平面和圓圈表示,因此運動模型的複雜度可以降低到2自由度,就可以用1點法解決。1點法估計運動模型是最少的參數法,使得RANSAC算法非常有效率。另外,如果用直方圖,選出離羣點可以在很少或單一迭代中完成。論文54對比了視覺里程計的5點,2點和1點算法做了性能評估。

這裏總結一下,如果相機運動沒有約束,用於估計運動模型的最少點數是5點,應該使用5RANSAC(或6點,7點或8點)。當然,使用5RANSAC6點,7點,8點的迭代次數更少。表1對比了8點,7點,5點,4點,2點,1點方法中,RANSAC算法最少迭代次數,作爲模型參數s的等式數量。這些值可以從等式1中獲取,假定成功的概率p=99%,離羣點百分比=50%



減少RANSAC迭代次數

1中,p=99%5RANSAC需要最少145次迭代。然而,現實中,事情並沒有這麼簡單。有時,離羣點數量低估了,需要增加迭代次數以找到更多的內點。有時,甚至需要幾千次的迭代。因此,有必要考慮加快RANSAC的迭代速度。最大似然估計參數統計使得對應關係的測量更可靠,增強了對假設的估計。論文56有進步的參數統計基於相似度對對應關係進行排序,從排在前面的點開始生成運動模型。論文57中的優先權RANSAC使用運動估計的優先計分和固定的迭代次數。論文58中的不確定性RANSAC整合了特徵的不確定行,減少了潛在離羣點的數量,因此強制減少了迭代次數。論文59中的確定性RANSAC方法估計了匹配正確的概率。

上面提到的所有算法都是直接從點雲生成運動假設模型。相反,其他算法從汽車運動模型分佈採樣確定假設。

在這些所有算法中,優先權RANSAC是應用最多的,因爲迭代次數可以預先指定,在所有的優勢中,實時運行優勢是最重要的。


RANSAC用最小子集,真的好嗎?

考慮到運動速度,使用最小點方法絕對優於其他方法。然而,當圖像匹配有很多噪聲時,即使是5RANSAC也可能不是最好的選擇。這種情況下,用多點法而不是最小點法可以獲得更好的性能(在給定精度和內點數量的情況下)。這裏解釋一下,比如一個5RANSAC的一個迭代步驟:首先,隨機選5個點估計運動模型;其次,用所有其他點來檢驗這個假定模型。如果5個內點有很大的圖像噪聲,運動估計就不精確,當測試其他點時就表現出內點很少。相反,如果用5點法從更多點中做運動估計,噪聲的影響就會被平均掉,估計出來的模型就更精確,當然就會識別出更多的內點。因此,當計算並不需要實時處理時,在有噪聲特徵的情況下,使用非最小集要由於最小集。


誤差傳播

在視覺里程計中,很多單個的變換Tk,k-1連接起來形成機器人Ck的當前位姿。每個變換Tk,k-1都有不確定性,相機位姿Ck的不確定性依賴於之前變換的不確定性。具體如圖8所示。視覺里程計計算變換Tk+1,k的不確定狀態依賴於相機幾何和圖像特徵。論文3可以看到立體相機的情況。


8. Ck相機位姿的不確定性由Ck-1(黑色的實心橢圓)的不確定性和變換Tk,k-1(灰色虛線橢圓)的不確定性組成。




==========不忘初心 方得始終 [email protected]===2017年4月20日編輯===EJU in Shanghai===


相機位姿優化

視覺里程計聯立變換計算相機位姿,大部分情況下式從不同時刻kk-1的兩個連續的視圖中來計算(如第一部分所示)。但也可以從當前時刻k和前n個時刻步驟Tk,k-2,…,Tk,k-n,或甚至任一時刻步驟Ti,j。在位姿圖優化中,如果這些變換已知,就可以用來作爲附加約束增強相機位姿。


位姿圖優化

視覺里程計中的相機位姿計算可以用位姿圖表示,它是一個圖,相機位姿是結點,兩個相機位姿的剛體變換是邊,連接兩個結點,如論文65所示。每個附件的變換都是已知的,可以作爲邊添加到位姿圖中。邊的約束eij定義如下面的代價公式:

其中,是位姿ij之間的變換。位姿圖優化是尋找位子圖參數來最小化這個代價公式。變換的旋轉部分使得代價公式非線性,需要使用非線性優化算法(比如LM算法)。


位姿圖優化的迴環約束

迴環約束對於位姿圖優化非常有用。結點之間的這些圖上的邊約束經常離得很遠,在它們之間可能累積了很大的漂移。通常,把長時間沒有看到的路標再重新觀測一次或者之前建過地圖的區域再重新做一遍,這樣的事情叫做迴環檢測。迴環約束是通過評估當前相機圖像和之前相機圖像的視覺相似度來尋找的。全局圖像描述子(論文6768)和局部圖像描述子(論文69)都可以計算視覺相似度。最近,用局部圖像描述子的視覺相似度迴環檢測獲得了很多關注,其中最成功的方法是視覺單詞。在這些方法中,圖像用視覺詞袋錶示。兩幅圖像的視覺相似度可以計算兩幅圖像的視覺單詞直方圖的距離。視覺單詞方法計算大型圖像數據的視覺相似度效率非常高,對迴環檢測非常重要。視覺單詞用一個單整型數字表示高維特徵描述子(比如,SIFTSURF)。爲了將其量化,初始的高維描述子空間通過k均值聚類方法劃分成不重疊的單元,被稱爲視覺詞典。特徵描述子會分配到相同的單元中,並分配一個單元號,表示視覺單詞。視覺單詞相似度的計算可以通過用逆序文件數據結構組織的視覺單詞數據庫進行加速,數據結構有效利用了視覺詞典的有限結構。視覺相似度計算是迴環檢測的第一步。找到前n個相似圖像後,通過會使用對極幾何約束進行幾何驗證;同時,爲了驗證匹配,用兩幅圖像之間的寬基線特徵匹配計算剛體變換。這個剛體變換作爲迴環約束添加到位姿圖中。


窗口(局部)捆集調整

窗口捆集調整和位姿圖優化相似用於優化相機參數,另外,同時它還優化3D路標參數。這樣的話,圖像特徵就可以跟蹤超過兩個圖像幀的更多圖像。窗口捆集調整採用n幅圖像幀的一個窗口,執行相機位姿的參數優化和一組圖像幀的3D路標的參數優化。在捆集調整中,誤差函數最小化就是圖像重投影誤差最小化:

其中是第k個圖像觀測到的3D路標的第i個圖像點,是當前相機位姿的圖像重投影。

重投影誤差是一個非線性函數,用LM算法優化。這就需要一個接近最小值的初始值。通常是使用一個標準的兩視圖視覺里程計方案作爲初始化方案。這個優化問題的雅可比矩陣結構特殊可以用於更有效的計算。


窗口捆集調整相比兩視圖視覺里程計可以減小漂移,因爲它使用了超過兩幅圖像的特徵觀測值。當前相機位姿通過3D路標鏈接起來,圖像特徵不僅跟蹤前一個圖像位姿還跟蹤更之前的相機位姿。當前和前n-1個相機位姿要和n個圖像保持一致的觀測。窗口大小n的選擇受制於計算複雜度。捆集調整的計算複雜度是MN分別是點雲和相機位姿,ql是點雲和相機位姿參數。小的窗口數量限制了優化的參數的數量,使得實時捆集調整成爲可能。也就使3D路標數量固定只優化相機參數來減小計算複雜度成爲可能,比如,3D路標可以從立體相機中精確地進行三角化。


相機位姿優化

視覺里程計成功地應用於各種領域。它用於空間探索中的自身位姿估計(比如,計算火星探路者的自身位姿和行星登陸設備),也可以用於消費電子中,比如Dacuda鼠標掃描儀。

視覺里程計還應用於各種移動機器人系統中,比如空間機器人,地面機器人,航空機器人和水下機器人。但可能視覺里程計最出名的應用是NASA火星探測。NASA的視覺里程計自20041月用於跟蹤兩個NASA火星探測器的運動作爲運動推算的補充信息。立體視覺里程計運行在一個20MHzCPU上,計算一步兩視圖運動恢復結構要3分鐘。視覺里程計主要用於有效地接近目標,在斜坡障礙物附件維護車輛安全,獲得大難度行駛安全,確保車輛運行安全。

視覺里程計也應用各種飛行設備上,自動飛行跟蹤設備和微型飛行機器人。微型飛行機器人上,視覺里程計用於自動起飛,點對點導航,着陸。

視覺里程計也應用於水下自動設備上。水下設備無法使用GPS作位置估計;因此需要使用板載傳感器。相機提供了一個高性價比的方案;另外,海底平面經常提供一種紋理豐富的環境,對計算機視覺方法非常理想。

視覺里程計在自動工業中也扮演重要角色。駕駛輔助系統主要使用計算機視覺和數碼相機了。視覺里程計在自動駕駛市場還在發展,第一個演示已經在戴姆勒6視覺系統中成功演示了。相比激光傳感器,相機成本更低,這對汽車工業非常是非常重要的因素。


代碼

2是視覺里程計代碼選型表。


結論

第二部分總結了視覺里程計的剩餘部分:檢測、匹配靜態的、可重複的圖像間特徵,在出現離羣點的情況下的魯棒估計和捆集調整。另外還有誤差傳播,應用和可用代碼。

在有迴環閉合的情況下,視覺里程計可以構建完整的SLAM算法減少運動漂移。仍然有一些挑戰開發大場景和長時間運行的應用,比如自動駕駛。這樣的系統還使用激光和雷達傳感器。然而,這樣的系統中的視覺里程計,魯棒性問題和長期穩定性必須要解決。最終,視覺里程計都有可能取代激光系統用於自身估計,達到最好的精度、魯棒性和可靠性。視覺里程估計提供了非常便宜和容易組裝的方案用於自身估計,同時是全主動方式。由於數碼相機的日趨小型化,可以開發更小的機器人系統估計自身位置。




參考文獻

[1]D. Nister, O. Naroditsky, and J. Bergen, “Visual odometry,” inProc. Int. Conf. Computer Vision and Pattern Recognition, 2004, pp.652–659. [2] H. Moravec, “Obstacle avoidance and navigation inthe real world by a seeing robot rover,” Ph.D. dissertation,Stanford University, Stanford, CA, 1980.

[3]L. Matthies and S. Shafer, “Error modeling in stereo navigation,”IEEE J. Robot. Automat., vol. 3, no. 3, pp. 239–248, 1987.

[4]S. Lacroix, A. Mallet, R. Chatila, and L. Gallo, “Rover selflocalization in planetary-like environments,” in Proc. Int. Symp.Artificial Intelligence, Robotics, and Automation for Space(i-SAIRAS), 1999, pp. 433–440.

[5]C. Olson, L. Matthies, M. Schoppers, and M. W. Maimone, “Robuststereo ego-motion for long distance navigation,” in Proc. IEEEConf. Computer Vision and Pattern Recognition, 2000, pp. 453–458.

[6]M. Lhuillier, “Automatic structure and motion using a catadioptriccamera,” in Proc. IEEE Workshop Omnidirectional Vision, 2005, pp.1–8. [7] E. Mouragnon, M. Lhuillier, M. Dhome, F. Dekeyser, and P.Sayd, “Real time localization and 3d reconstruction,” in Proc.Int. Conf. Computer Vision and Pattern Recognition, 2006, pp.363–370.

[8]J. Tardif, Y. Pavlidis, and K. Daniilidis, “Monocular visualodometry in urban environments using an omnidirectional camera,” inProc. IEEE/ RSJ Int. Conf. Intelligent Robots and Systems, 2008, pp.2531–2538.

[9]D. Scaramuzza, F. Fraundorfer, and R. Siegwart, “Real-time monocu-lar visual odometry for on-road vehicles with 1-point RANSAC,” inProc. IEEE Int. Conf. Robotics and Automation (ICRA), 2009, pp.4293–4299. [10] W. Forstner, “A feature based correspondencealgorithm for image matching,” Int. Archiv. Photogram., vol. 26,no. 3, pp. 150–166, 1986.

[11]C. Harris and J. Pike, “3d positional integration from imagesequences,” in Proc. Alvey Vision Conf., 1987, pp. 233–236.

[12]C. Tomasi and J. Shi, “Goodfeatures to track,” in Proc. CVPR, 1994, pp. 593–600.

[13]E. Rosten and T. Drummond, “Machine learning for high-speed cor-ner detection,” in Proc. European Conf. Computer Vision, 2006, vol.1, pp. 430–443.

[14]D. Lowe, “Distinctive image features from scale-invariant key-points,” Int. J. Comput. Vis., vol. 20, no. 2, pp. 91–110, 2003.

[15]H. Bay, T. Tuytelaars, and L. V. Gool, “Surf: Speeded up robustfeatures,” in Proc. ECCV, 2006, pp. 404–417.

[16]M. Agrawal, K. Konolige, and M. Blas, “Censure: Center surroundextremas for realtime feature detection and matching,” in Proc.European Conf. Computer Vision, 2008, pp. 102–115.

[17]R. Siegwart, I. Nourbakhsh, and D. Scaramuzza, Introduction toAutonomous Mobile Robots, 2nd ed. Cambridge, MA, MIT Press, 2011.[18] A. Schmidt, M. Kraft, and A. Kasinski, “An evaluation of imagefea- ture detectors and descriptors for robot navigation,” in Proc.Int. Conf. Computer Vision and Graphics, 2010, pp. 251–259.

[19]N. Govender, “Evaluationof feature detection algorithms for structure from motion,”Council for Scientific and Industrial Research, Preto- ria, TechnicalReport, 2009.

[20]R. C. Gonzalez and R. E. Woods, Digital Image Processing, 3rd ed.Englewood Cliffs, NJ, Prentice Hall, 2007.

[21]R. Zabih and J. Woodfill, “Non-parametriclocal transforms for com- puting visual correspondence,” inProc. European Conf. Computer Vision, 1994, pp. 151–158.

[22]M. Calonder, V. Lepetit, C. Strecha, and P. Fua, “BRIEF: Binaryrobust independent elementary features,” in Proc. European Conf.Computer Vision, 2010, pp. 778–792.

[23]E. Rublee, V. Rabaud, K. Konolige, and G. Bradski, “Orb: An effi-cient alternative to sift or surf (pdf),” in Proc. IEEE Int. Conf.Computer Vision (ICCV), Barcelona, Nov. 2011, pp. 2564–2571.

[24]S. Leutenegger, M. Chli, and R. Siegwart, “Brisk: Binary robustinvar- iant scalable keypoints,” in Proc. Int. Conf. ComputerVision, 2011, pp. 2548–2555.

[25]M. Maimone, Y. Cheng, and L. Matthies, “Two years of visual odom-etry on the mars exploration rovers: Field reports,” J. FieldRobot., vol. 24, no. 3, pp. 169–186, 2007.

[26]A. Davison, “Real-time simultaneous localisation and mapping with asingle camera,” in Proc. Int. Conf. Computer Vision, 2003, pp.1403–1410.

[27]T. Lemaire and S. Lacroix, “Vision-based SLAM: Stereo and monoc-ular approaches,” Int. J. Comput. Vis., vol. 74, no. 3, pp.343–364, 2006. [28] G. Klein and D. Murray, “Improving theagility of keyframe-based SLAM,” in Proc. European Conf. ComputerVision, 2008, pp. 802–815. [29] H. Strasdat, J. Montiel, and A.Davison, “Real time monocular SLAM: Why filter?” in Proc. IEEEInt. Conf. Robotics and Automation, 2010, pp. 2657–2664.

[30]B. Horn and B. Schunck, “Determining optical flow,” Artif.Intell., vol. 17, no. 1–3, pp. 185–203, 1981.

[31]A. Makadia, C. Geyer, and K. Daniilidis, “Correspondence-freestructure from motion,” Int. J. Comput. Vis., vol. 75, no. 3, pp.311– 327, 2007.

[32]P. Torr and D. Murray, “Thedevelopment and comparison of robust methods for estimating thefundamental matrix,” Int. J. Comput. Vis., vol. 24, no. 3, pp.271–300, 1997.

[33]K. Sim and R. Hartley, “Recovering camera motion using l1minimization,” IEEE Conf. Computer Vision and Pattern Recognition,2006, pp. 1230–1237.

[34]M. A. Fischler and R. C. Bolles, “RANSACsample consensus: A paradigm for model fitting with applications toimage analysis and automated cartography,” Commun. ACM, vol.24, no. 6, pp. 381–395, 1981. [35] R. Hartley and A. Zisserman,Multiple View Geometry in Computer Vision, 2nd ed. Cambridge, MA,Cambridge Univ. Press, 2004.

[36]J. Oliensis, “Exacttwo-image structure from motion,” IEEE Trans. Pattern Anal.Machine Intell., vol. 24, no. 12, pp. 1618–1633, 2002.

[37]E. Kruppa, “Zur ermittlung eines objektes aus zwei perspektiven mitinnerer orientierung,” in Proc. Sitz.-Ber. Akad. Wiss., Wien, Math.Naturw. Kl., Abt. IIa., 1913, vol. 122, pp. 1939–1948.

[38]O. Faugeras and S. Maybank, “Motion from point matches: Multi-plicity of solutions,” Int. J. Comput. Vis., vol. 4, no. 3, pp.225–246, 1990. [39] J. Philip, “A non-iterative algorithm fordetermining all essential matrices corresponding to five pointpairs,” Photogram. Rec., vol. 15, no. 88, pp. 589–599, 1996.

[40]B. Triggs, “Routines for relative pose of two calibrated camerasfrom 5 points,” INRIA Rhone-Alpes, Tech. Rep., 2000.

[41]D. Nister, “An efficient solution to the five-point relative poseproblem,” Proc. CVPR03, 2003, pp. II: 195–202.

[42]H. Stewenius, C. Engels, and D. Nister, “Recent developments ondirect relative orientation,” ISPRS J. Photogram. Remote Sens.,vol. 60, no. 4, pp. 284–294, 2006.

[43]O. Pizarro, R. Eustice, and H. Singh, “Relative pose estimation forinstrumented, calibrated imaging platforms,” in Proc. DICTA, 2003,pp. 601–612.

[44]R. Sturm, “Das problem der projektivitaet und seine anwendung aufdie flaechen zweiten grades,” Math. Annal., vol. 1, no. 4, pp. 533–573, 1869.

[45]C. Geyer and H. Stewenius, “A nine-point algorithm for estimatingparacatadioptric fundamental matrices,” in Proc. IEEE Conf.Computer Vision and Pattern Recognition (CVPR’07), June 2007, pp.1–8, 17–22. [46] P. Sturm and J. Barreto, “General imaginggeometry for central cata- dioptric cameras,” in Proc. 10thEuropean Conf. Computer Vision, Mar- seille, France, 2008, pp.609–622.

[47]P. Sturm, S. Ramalingam, J. Tardif, S. Gasparini, and J. Barreto,“Camera models and fundamental concepts used in geometric computervision,” Foundat. Trends Comput. Graph. Vis., vol. 6, no. 1– 2,pp. 1–183, 2010.

[48]J. Lim, N. Barnes, and H. Li, “Estimating relative camera motionfrom the antipodal-epipolar constraint,” IEEE Trans. Pattern Anal.Machine Intell., vol. 32, no. 10, pp. 1907–1914, 2010.

[49]F. Fraundorfer, P. Tanskanen, and M. Pollefeys, “A minimal casesolution to the calibrated relative pose problem for the case of twoknown orientation angles,” in Proc. European Conf. Computer Vision,2010, pp. 269–282.

[50]O. Naroditsky, X. S. Zhou, J. Gallier, S. I. Roumeliotis, and K.Daniilidis, “Two efficient solutions for visual odometry usingdirec- tional correspondence,” IEEE Trans. Pattern Anal. MachineIntell., no. 99, p. 1, 2011.

[51]L. Kneip, M. Chli, and R. Siegwart, “Robust real-time visual odome-try with a single camera and an imu,” in Proc. British MachineVision Conf., 2011.

[52]D. Ortin and J. M. M. Montiel, “Indoor robot motion based onmonocular images,” Robotica, vol. 19, no. 3, pp. 331–342, 2001.

[53]D. Scaramuzza, “1-point-RANSAC structure from motion for vehi-cle-mounted cameras by exploiting non-holonomic constraints,” Int.J. Comput. Vis., vol. 95, no. 1, pp. 74–85, 2011.

[54]D. Scaramuzza, “Performanceevaluation of 1-point ransac visual odometry,” J. Field Robot.,vol. 28, no. 5, pp. 792–811, 2011.

[55]P. Torr and A. Zisserman, “Mlesac: A new robust estimator withapplication to estimating image geometry,” Comput. Vis. ImageUnder- stand., vol. 78, no. 1, pp. 138–156, 2000.

[56]O. Chum and J. Matas, “Matching with prosac—Progressive sampleconsensus,” in Proc. CVPR, 2005, pp. 220–226.

[57]D. Nister, “Preemptive ransac for live structure and motionestimation,” Machine Vis. Applicat., vol. 16, no. 5, pp. 321–329,2005.

[58]R. Raguram, J. Frahm, and M. Pollefeys, “Exploiting uncertainty inrandom sample consensus,” in Proc. ICCV, 2009, pp. 2074–2081.

[59]P. McIlroy, E. Rosten, S. Taylor, and T. Drummond, “Deterministicsample consensus with multiple match hypotheses,” in Proc. BritishMachine Vision Conf., 2010, pp. 1–11.JUNE2012 IEEEROBOTICS&AUTOMATIONMAGAZINE89

[60]J. Civera, O. Grasa, A. Davison, and J. Montiel, “1-point RANSACfor ekf filtering: Application to real-time structure from motion andvisual odometry,” J. Field Robot., vol. 27, no. 5, pp. 609–631,2010.

[61]D. Scaramuzza, A. Censi, and K. Daniilidis, “Exploiting motionpriors in visual odometry for vehicle-mounted cameras withnon-holonomic constraints,” in Proc. IEEE/RSJ Int. Conf.Intelligent Robots and Systems, 2011, pp. 4469–4476.

[62]E. Rosten, G. Reitmayr, and T. Drummond, “Improved ransacperformance using simple, iterative minimal-set solvers,”University of Cambridge, Tech. Rep., arXiv:1007.1432v1, 2010.

[63]O. Chum, J. Matas, and J. Kittler, “Locally optimized ransac,” inProc. DAGM-Symp., 2003, pp. 236–243.

[64]R. C. Smith, P. Cheeseman. (1986).On the representation, and estimation of spatial uncertainty,Int. J. Robot. Res., [Online], vol. 5, no. 4, pp. 56–68. Available:http://ijr.sagepub.com/content/5/4/56.abstract

[65]E. Olson, J. Leonard, and S. Teller, “Fastiterative optimization of pose graphs with poor initial estimates,”in Proc. ICRA, 2006, pp. 2262–2269.

[66]T. Bailey and H. Durrant-Whyte, “Simultaneouslocalisation and mapping (SLAM): Part II. State of the art,”IEEE Robot. Automat. Mag., vol. 13, no. 3, pp. 108–117, 2006.

[67]I. Ulrich and I. Nourbakhsh, “Appearance-basedplace recognition for topological localization,” in Proc. IEEEInt. Conf. Robotics and Auto- mation, Apr. 2000, pp. 1023–1029.

[68]M. Jogan and A. Leonardis, “Robustlocalization using panoramic view-based recognition,” in Proc.ICPR, 2000, vol. 4, pp. 136–139.

[69]K. Mikolajczyk, T. Tuytelaars, C. Schmid, A. Zisserman, J. Matas, F.Schaffalitzky, T. Kadir, and L. Van Gool, “Acomparison of affine region detectors,” Int. J. Comput. Vis.,vol. 65, no. 1–2, pp. 43–72, 2005.

[70]P. Newman, D. Cole, and K. Ho, “OutdoorSLAM using visual appearance and laser ranging,” in Proc. IEEEInt. Conf. Robotics and Automation, 2006, pp. 1180–1187.

[71]M. Cummins and P. Newman, (2008). “FAB-MAP:Probabilistic localization mapping in the space of appearance,”Int. J. Robot. Res. [Online], vol. 27, no. 6, pp. 647–665.Available: http://ijr.sagepub.com/ cgi/content/abstract/27/6/647

[72]F. Fraundorfer, C. Engels, and D. Nist er, “Topologicalmapping, localization and navigation using image collections,”in Proc. IEEE/RSJ Conf. Intelligent Robots and Systems, 2007, pp.3872–3877.

[73]F. Fraundorfer, C. Wu, J.-M. Frahm, and M. Pollefeys, “Visualword based location recognition in 3d models using distance augmentedweighting,” in Proc. 4th Int. Symp. 3D Data Processing,Visualization, and Transmission, 2008, pp. 1–8.

[74]R. Duda, P. Hart, and D. Stork, Pattern Classification, New York,Wiley, 2001.

[75]D. Nist er and H. Stew enius, “Scalablerecognition with a vocabulary tree,” in Proc. IEEE Conf.Computer Vision and Pattern Recognition, New York, 2006, pp.2161–2168.

[76]B. Triggs, P. McLauchlan, R. Hartley, and A. Fitzgibbon, “Bundleadjustment a modern synthesis,” in Proc. Int. Workshop VisionAlgo- rithms: Theory and Practice (ICCV’99), 2000, pp. 298–372.

[77]G. Sibley, L. Matthies, and G. Sukhatme. (2010). Sliding windowfilter with application to planetary landing. J. Field Robot.,[Online], vol. 27, no. 5, pp. 587–608. Available:http://dx.doi.org/10.1002/rob.20360

[78]Dacuda AG. (2011). Dacuda scanner mouse. [Online]. Available:http://www.dacuda.com/

[79]Y. Cheng, M. W. Maimone, and L. Matthies, “Visual odometry on themars exploration rovers,” IEEE Robot. Automat. Mag., vol. 13, no.2, pp. 54–62, 2006.

[80]J. Kelly and G. S. Sukhatme. (2007. Sept.). An experimental study ofaerial stereo visual odometry. In Proc. IFAC –Int. Federation ofAutomatic Control Symp. Intelligent Autonomous Vehicles, Toulouse,France. [Online]. Available:http://cres.usc.edu/cgi-bin/print.pub.details.pl? pubid=543

[81]S. Weiss, D. Scaramuzza, and R. Siegwart, “Monocular-SLAM-basednavigation for autonomous micro helicopters in GPS-denied environ-ments,” J. Field Robot., vol. 28, no. 6, pp. 854–874, 2011.

[82]M. Dunbabin, J. Roberts, K. Usher, G. Winstanley, and P. Corke, “Ahybrid AUV design for shallow water reef navigation,” in Proc. IEEEInt. Conf. Robotics and Automation, ICRA, Apr. 2005, pp. 2105–2110.

[83]B. P. Foley, K. DellaPorta, D. Sakellariou, B. S. Bingham, R.Camilli, R. M. Eustice, D. Evagelistis, V. L. Ferrini, K. Katsaros,D. Kourkoumelis, A. Mallios, P. Micha, D. A. Mindell, C. Roman, H.Singh, D. S. Switzer, and T. Theodoulou, “The 2005 chios ancientshipwreck survey: New methods for underwater archaeology,”Hesperia, vol. 78, no. 2, pp. 269– 305, 2009.

[84]A. G. Daimler. (2011). 6d vision. [Online]. Available: http://www.6d-vision.com/

[85]M. Bertozzi, A. Broggi, E. Cardarelli, R. Fedriga, L. Mazzei, and P.Porta, “Viac expedition toward autonomous mobility [from thefield],” IEEE Robot. Automat. Mag., vol. 18, no. 3, pp. 120–124,Sept. 2011.

[86]E. Guizzo. (2011). How Google’s self-driving car works. [Online].Available:http://spectrum.ieee.org/automaton/robotics/artificial-intelli-gence/howfl-google-self-driving-car-works

[87]D. Scaramuzza and F. Fraundorfer, “Visual odometry,” IEEERobotics Automat. Mag., vol. 18, no. 4, pp. 80–92, Dec. 2011.

[88]C. F. Olson, L. H. Matthies, M. Schoppers, and M. W. Maimone, “Stereoego-motion improvements for robust rover navigation,” in Proc. IEEEInt. Conf. Robotics and Automation (ICRA 2001), 2001, vol. 2, pp.1099–1104.

[89]M. V. Srinivasan, S. W. Zhang, M. Lehrer, and T. S. Collett,“Honeybee navigation en route to the goal: Visual flight controland odometry,” J. Exp. Biol., vol. 199, 1996, pp. 237–244.

[90]P. Viola and M. Jones, “Robust real time object detection,” Int.J. Comput. Vis., vol. 57, no. 2, pp. 137–154, 2001.

[91]D. Scharstein and R. Szeliski, “A taxonomy and evaluation of densetwo-frame stereo correspondence algorithms,” Int. J. Comput. Vis.,vol. 47, no. 1–3, pp. 7–42, Apr.–June 2002.









發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章