日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

SIFT讲解(SIFT的特征点选取以及描述是重点)

發布時間:2023/12/1 编程问答 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SIFT讲解(SIFT的特征点选取以及描述是重点) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

    • SIFT是什么?
    • 尺度空間理論
    • SIFT特征點提取
    • SIFT特征點描述

SIFT是什么?

SIFT ,即尺度不變特征變換( Scale-invariant feature transform,SIFT) ,一種特征描述方法。具有
尺度魯棒性
旋轉魯棒性
光照魯棒性
SIFT本身包括了特征點篩選及特征點描述的步驟。

尺度空間理論



SIFT的特征點篩選目的:尋找在不同尺度空間下的極值點,保證這些特征點在放大或者縮小的條件下均存在。
(這一特點與Harris檢測特征點比較的話發現,Harris對尺度變換的魯棒性較差)
SIFT的特征點篩選方法:DoG近似LoG。
LoG(Laplacian of Gaussian) :使用不同sigma獲得不同的尺度空間圖像,然后通過Laplacian算子獲得極值。這一運算過程可以用DoG(Difference-of-Gaussian)近似。拉普拉斯其實就是二階導數,產生的零交叉點就是我們所要獲取的極值。
關于LoG與DoG的更多知識可以轉到:圖像分割-LOG檢測器和DOG檢測器
DoG步驟:

得到的結果與LoG結果非常相似,在DoG結果圖中,我們用亮度表達差分值的大小。在紋理比較豐富、邊緣區域具有比較大的值。
理解:高斯卷積核其實是一種加權的平均。在灰度變化不劇烈的地區,一個像素值的大小和周圍像素值得大小基本相等,所以不管加權的參數是哪樣,得到的加權結果其實是相似的,所以做差分之后這種區域的差分值會很小。灰度變化劇烈的地區則反之,差分值會很大。

SIFT特征點提取

在SIFT特征點選取中所用到的DoG:

這時候就出現了一個問題:隨著sigma的增加,它需要更大的高斯窗口進行平滑模糊處理。(sigma越大高斯函數越扁平)會使無法處理的區域增加,同時計算量增加。在空間濾波中我們學習到,3* 3模板進行卷積時對圖像最外一層像素是無法處理的,5*5是周圍兩層像素。
解決方法:圖像金字塔,回顧知識:Opencv——圖像金字塔與圖像尺寸縮放

當k增加到2時,我們將圖像縮小為1/2尺寸,這叫降采樣。再使用sigma0的模板處理。我們發現,圖像縮小了二分之一,而sigma卻沒有改變。重復該操作,進行降采樣。同一個Octave的圖像具有相同的尺寸。
在圖像金字塔處理之后,我們將就是檢測DoG極值了。

關于獲取一個octave的圖像的詳細過程可以參考文章最末的原理講解,那個是十分詳細的。
這樣得出來的極值的性質如何?

當然這些得到的極值點是候選點。在得到候選點之后就要對候選點的特征進行描述,以達到匹配的目的。

SIFT特征點描述

使用梯度值對特征點進行表述,計算像素的梯度值和梯度方向。相對像素的亮度值,梯度對光照具有更好的魯棒性。
當圖像處于一個剛體狀態時(沒有劇烈形變),某像素與它周圍像素的關系應該是近乎恒定的。對一個區域進行描述的話得到的描述子將更加穩定。
我們先假設一個候選點:

然后計算它周圍一定區域的梯度值,比如8*8區域。

1、將得到的角度值進行36等分。
2、在特征點對應的尺度空間計算梯度值。
3、利用高斯核對梯度進行計算權重。
也就是說該像素周圍像素的權重由兩個值決定:一個是本身梯度大小、第二個是離考察像素點的距離。

建立一個36維的直方圖,每次累加的值就是它的權重

其實到了這一步已經可以很好地描述了。
但是注意,此刻的角度計算得到的是一個絕對角度,是與水平方向成的角度。當圖像旋轉后顯然這種描述方法就有問題了。
解決方法:獲取一個具有代表性的方向作為主方向。通常選擇梯度值最大的那個角度分量作為主方向,獲得更具有旋轉魯棒性的描述方法。


選擇完主方向后,將周圍圖像以主方向計算相對角度。這樣就算圖像進行旋轉,主方向也會進行旋轉,相對角度保持相對恒定狀態。
代碼實現可以參考第二個鏈接。
要是想要調用Opencv庫函數,則要參考毛星云的《Opencv3編程入門的》417頁,
我在我的Opencv安裝包中沒有找到這個nonfree文件夾,以后再解決這個問題。網上大部分調庫代碼也需要一些自己添加庫。

參考鏈接:

SIFT算法詳解
基于C++和OpenCv的SIFT_圖像局部特征檢測算法代碼的實現
《數字圖像處理PPT.李竹版》

總結

以上是生活随笔為你收集整理的SIFT讲解(SIFT的特征点选取以及描述是重点)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。