SIFT特征提取方法


1、SIFT簡介

       SIFT,即尺度不變特征變換(Scale-invariant feature transform,SIFT),是用於圖像處理領域的一種描述。這種描述具有尺度不變性,它對物體的尺度變化,剛體變換,光照強度和遮擋都具有較好的穩定性。算法實現特征匹配主要有三個流程:

  1. 提取特征點:搜索高斯尺度空間對於尺度和旋轉不變的極值點;
  2. 特征點主方向確定:利用特征點鄰域的梯度直方圖確定特征點的主方向(梯度和最大的方向);
  3. 特征點描述:在特征點鄰近區域生成描述算子(梯度直方圖),生成4x4x8維的SIFT特征向量;
  4. 特征點匹配:使用歐氏距離計算關鍵點描述子的相似度。

2、高斯尺度空間

       兩種圖像在匹配的時候可能因為拍攝的距離、拍攝的角度問題,會導致在特征點提取的時候差異很大,所以我們希望SIFT的特征點可以具有尺度不變性和方向不變性。彩色圖是三通道的,不好檢測突變點。需要將RGB圖轉換為灰度圖,此時灰度圖為單通道,灰度值在0~255之間分布。而且當圖像放大或者縮小時,它讀取的特征點與原先可能差異很大,所以其中一個辦法就是把物體的尺度空間圖像集合提供給計算機,讓它針對考慮不同尺度下都存在的特征點。

       高斯核是唯一可以產生多尺度空間的核,在輸入的圖像模型中,通過高斯模糊函數連續的對尺度進行參數變換,最終得到多尺度空間序列。圖像中某一尺度的空間函數 L(x ,y, σ)由可變參數的高斯函數 G(x, y, σ)和原輸入圖像I(x ,y)卷積得出:

 

 

在早期圖像的多尺度通常使用圖像金字塔表述形式。圖像金字塔是同一圖象在不同的分辨率下得到的一組結果,其生成過程一半包含兩個步驟:

  1. 對圖像做高斯平滑(高斯模糊);
  2. 對圖像做降采樣,降維采樣后得到一系列尺寸不斷縮小的圖像。

 

       傳統的SIFT算法是通過建立高斯差分函數(DOG) 方法來提取特征點。首先,在不同尺度參數的組數中,高斯差分圖像是由某一相同尺度層的相鄰圖像作差值 得出。然后,將得到的差分圖像與原圖像 I(x, y)做卷積得到公式(3)的 DOG 函數:

 

       從上式可以知道,將相鄰的兩個高斯空間的圖像相減就得到了DOG的響應圖像。為了得到DOG圖像,先要構造高斯尺度空間,而高斯的尺度空間可以在圖像金字塔降維采樣的基礎上加上高斯濾波得到,也就是對圖像金字塔的每層圖像使用不同的尺度參數σ進行高斯模糊,使每層金字塔有多張高斯模糊過的圖像,然后我們把得到的同一尺寸大小的圖像划分為一組。

 

 參考鏈接:

https://blog.csdn.net/zhou4411781/article/details/100713402


免責聲明!

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



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