BRIEF特征點描述子


簡介

         BRIEF是2010年的一篇名為《BRIEF:Binary Robust Independent Elementary Features》的文章中提出,BRIEF是對已檢測到的特征點進行描述,它是一種二進制編碼的描述子,擯棄了利用區域灰度直方圖描述特征點的傳統方法,大大的加快了特征描述符建立的速度,同時也極大的降低了特征匹配的時間,是一種非常快速,很有潛力的算法。

BRIEF具體算法

         由於BRIEF僅僅是特征描述子,所以事先要得到特征點的位置,可以利用FAST特征點檢測算法Harris角點檢測算法或SIFT、SURF等算法檢測特征點的位置。接下來在特征點鄰域利用BRIEF算法建立特征描述符。

算法步驟如下:

1、為減少噪聲干擾,先對圖像進行高斯濾波(方差為2,高斯窗口為9x9)。

2、以特征點為中心,取SxS的鄰域窗口。在窗口內隨機選取一對(兩個)點,比較二者像素的大小,進行如下二進制賦值。


其中,p(x),p(y)分別是隨機點x=(u1,v1),y=(u2,v2)的像素值。

3、在窗口中隨機選取N對隨機點,重復步驟2的二進制賦值,形成一個二進制編碼,這個編碼就是對特征點的描述,即特征描述子。(一般N=256)

以上便是BRIEF特征描述算法的步驟。

關於一對隨機點的選擇方法,原作者測試了以下5種方法,其中方法(2)比較好。


這5種方法生成的256對隨機點如下(一條線段的兩個端點是一對):


利用BRIEF特征進行配准

經過上面的特征提取算法,對於一幅圖中的每一個特征點,都得到了一個256bit的二進制編碼。接下來對有相似或重疊部分的兩幅圖像進行配准。

特征配對是利用的漢明距離進行判決:

1、兩個特征編碼對應bit位上相同元素的個數小於128的,一定不是配對的。

2、一幅圖上特征點與另一幅圖上特征編碼對應bit位上相同元素的個數最多的特征點配成一對。

 

 

(一)BRIEF描述子

 

           在ORB特征提取的第一步根據FAST角點檢測算法檢測出特征點(角點、興趣點、關鍵點)之后,我們需要以某種方式來描述這些特征點的屬性。對於這些特征點的描述算法,我們稱之為特征點的描述子(Feature DescritorS).ORB特征提取算法采用BRIEF描述子來描述這些特征點的屬性。

 

        BRIEF算法的核心思想是在關鍵點P的周圍以一定的方式選取N個點對,然后把這N個點對的邊角結果組合起來作為該關鍵點的描述子。具體來講,可以分為以下幾步:

 

        1)以關鍵點P為圓心,以R為半徑huayuan

 

        2)在圓O內某一區域選取N個點對。這里為了方便說明,我們假設N=4,即我們在圓區域內選取4對點對,在實際應用中,我們可以選取512對點對。假設選取的4對點對分別為:P1(A,B),P2(A,B),P3(A,B),P4(A,B)

 

        3)我們定義操作T(P(A,B))為:                        1   ;   A>B

 

                                                       T(P(A,B))  =  

                                                         0  ;  A<=B

        4)分別對已經選取的點對進行T操作,將得到的結果進行組合。如下所示:

            那么,這個關鍵點最終的描述子為:1011

(二)理想特征點的描述子應該具備哪些屬性呢?

       在現實生活中,我們從不同的距離、不同的方向、不同的角度、不同的光照條件下觀察一個物體時,物體的大小、形狀、亮度分布都會有所不同。但是,我們的大腦中依然可以判斷它是同一個物體。理想的特征描述子就應該具備這樣的性質。即對於大小、方向旋轉、灰度亮度變化的圖像中,同一特征點應該具有相似的特征描述子,我們將此稱為描述子的可復現性。

         當我們以理想的方式計算圖像中關鍵點的描述子的時候,同樣的特征點,在不同的圖像中應該具有相同的結果。即描述子對於光照、旋轉、尺度具有一定的魯棒性。

      上面我們用BRIEF算法得到的描述子並不具備以上這些性質。因此,我們得想辦法改進我們的算法。ORB並沒有解決尺度一致性的問題,OpenCv中實現的ORB算法采用圖像金字塔來改善這方面的性能。ORB算法主要解決了BRIEF描述子不具有旋轉不變性的問題。

       回顧一下BRIEF描述子的計算過程:在當前關鍵點P的周圍以一定方式選取N個點對,組合這N個點對的T操作的結果,這個組合結果就為這個關鍵點最終的描述子。當我們選取點對的時候,是以當前關鍵點為原點,以水平方向為X軸,以垂直方向為Y軸建立坐標系。當圖片發生旋轉時,坐標系不變,同樣的取點模式,取出來的點卻不一樣,計算得到的描述子也不一樣,這是不符合我們要求的。因此,我們需要重新建立坐標系,使新的坐標系可以隨着圖片的旋轉而旋轉。這樣我們以相同的取點模式取出來的點就具有一致性。

      打個比方,我們有一個印章,上面刻着一些直線。用這個印章在一張圖片上蓋一個章子,圖片上的某個點被取出來。印章不變動的情況下,轉動下圖片,再蓋一個章子,但是這次取出來的點對就和之前的不一樣。為了使2次取出來的點一樣,我們需要將章子也旋轉同一個角度,再蓋章。ORB在計算BRIEF描述子的時候,建立的坐標系是以關鍵點為圓心,以關鍵點和取點區域的形心的連線為X軸建立的2維坐標系 。在下圖中,P為關鍵點。圓內為取點的區域,每個小格子代表一個像素。現在我們把這塊圓心看做一塊木板,木板上每個點的質量等於其對應的像素值。根據積分學的知識,我們可以求出這個密度不均勻木板的質心Q。計算公式如下所示,其中R為圓的半徑。我們知道圓心是固定的,而且隨着物體的旋轉而旋轉,當我們以PQ為坐標時,在不同的旋轉角度下,我們以同一取點模式取出來的點是一致的,這就解決了旋轉一致性的問題。

 

轉自:http://blog.csdn.net/maweifei/article/details/62889699

   http://blog.csdn.net/hujingshuang/article/details/46910259

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM