sift 簡述理解

尺度不變性
首先假想兩張圖片進行匹配,然後圖A(1280*720),圖B(640*480),兩張圖片都用不同的尺度得到高斯金字塔,繼而得到DOG金字塔,然後圖A總會進行降採樣的時候得到與圖B某個降採樣得到的圖差不多,然後都可以找到相同的特徵點。他們總會在某個尺度下得到一定數量的特徵,然後超過就匹配,這就是跟圖像的尺度沒關係了,因爲兩張圖總會得到某個尺度下能匹配到特徵。即一張圖像可以得到所有尺度下的圖片,然後進行尋找特徵點,然後另一張圖片也是。比如圖A經過高斯濾波後有10組不同尺度圖,每組3張圖片,圖B有10組,每組3張圖片。然後圖A的第一組圖片中第一張依次與圖B中第一組第一張進行比較,然後第二張第三張,如果沒匹配就與第二組第一張進行比較,依次類推。

旋轉不變性
因爲有一個主方向,把座標旋轉到主方向,這就保證了不管要識別的圖片是怎麼旋轉,如果是相同的特徵點,總會旋轉相同的角度,即主方向是相同的。

描述子
找到以特徵點爲中心的4*4區域,每個區域又有一個正方形的區域,這個正方形有n*n個像素,計算其每個像素的梯度幅值和幅角,並根據沒個像素對中心特徵點的貢獻,即距離進行高斯加權。然後把這4*4的區域進行旋轉,旋轉的角度即爲主方向的大小。然後以4*4爲底,幅角爲高,建立一個三維座標,幅角的間隔爲360/8=45度,這樣就相當於8層4*4。接着4*4的每個子區域,比如子區域A,A有8個方向(0,45,90。。。360),然後計算A區域中像素的梯度幅角在0-45度上的幅值之和,接着計算像素的梯度幅角在45-90度方向上的幅值之和,這樣A區域的8個方向都有對應的幅值,然後有16個A這樣的子區域,每個A的位置是不一樣的,所以有16*8=128維,這就是描述子,最後還要歸一化。
 

 

 

參考:

https://blog.csdn.net/u014485485/article/details/78681086

https://blog.csdn.net/zddblog/article/details/7521424

https://www.cnblogs.com/shine-lee/p/10037463.html

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