映像特徵檢測,ORB演算法分析

來源:互聯網
上載者:User

轉自http://blog.sina.com.cn/s/blog_916b71bb0100w9al.html



ORB演算法的論文來自"ORB: an efficient alternative to SIFT or SURF",作者是OpenCV維護和開發的公司willowgarage的,論文名字起的很牛氣,摘要裡說,ORB演算法比sift演算法效率高兩個數量級。江湖上流傳的說法是ORB演算法綜合效能在各種測評裡是最好的。


ORB演算法是在FAST關鍵點檢測+BRIEF特徵上做的。
1. 假設給定一副圖。
論文第3節:先用oFAST演算法,檢測關鍵點的位置。所謂oFAST,就是orientation的FAST,增加了計算關鍵點的角點方向。2. 對這個圖,用FAST演算法,找出關鍵點的位置。3. 對於關鍵點,用Harris角點檢測,選取前N個最好的點。4. FAST演算法不能處理多尺度映像,如果需要處理多尺度的話,就對原來的映像作金字塔,然後對每個圖都進行步驟2和3的處理。5. 對於每個角點,根據Intensity Centroid演算法,計算角點的方向。
論文第4節:rBRIEF,旋轉敏感的BRIEF,Rotation-Aware Brief6. brief演算法是無向的。7. 將5中計算出來的角點方向作為brief的方向,進行旋轉,就得到了有向的brief,也就是steered brief。steered brief導致區分效能有所下降。這一塊,作者在4.2節中說,brief特徵的每個bit的值或者是0,或者是1,因此均值是0.5,variance大。從圖3可以看出,brief特徵的均值在0很多,距離均值0.5比較遠,而steered
brief特徵,加入角點的方向之後,特徵均值的分布就比較平均了,也就是說,相對均值0.5來說,variance變小了。variance越大,區分效能越好,這很好理解,差異性越大,表明特徵之間的差別越大,越好分類,如果都特徵都差不多,接近均值,就不好分了。因此,steered brief的效能肯定不如brief。那麼,為什麼呢steered brief會導致variance變小呢,也許是映像的角點的方向,在統計學上存在某種性質使得variance變小。另一個是特徵之間的相關性。對brief和steered brief作pca,它們的主要能量都在前10~15個主成份上。
8. 用一種貪婪學習演算法篩選具有高variance和高不相關的steered brief,結果稱之為rBRIEF。9. ORB特徵,就是oFAST和rBRIEF的組合。
在我看來,ORB論文並沒有對演算法做一個嚴密的流程設計,演算法的參數選擇,多尺度,提取特徵的細節過程,匹配特徵策略等等。如果從頭實現代碼,還有很多需要考慮的地方,有鑒與此,也許不同的實現會帶來不同的效能上差別。實現ORB演算法的時候,要實現相關的演算法,FAST,
Harris角點,Intensity Centroid,BRIEF等等,涉及的還是比較多的,效能非常誘人,非常期望能有好的開源實現發行就緒。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.