• 沒有找到結果。

SIFT的概念及實施細節

3.1 特徵擷取的方法

3.1.2 SIFT的概念及實施細節

本節的目的是詳細介紹如何運用 SIFT 取出圖像中的特徵及這些特徵所代表 的意義。

3.1.2.1 偵測尺度空間的極值

SIFT 所取出的特徵有一個主要特性為特徵在圖像的各種尺度皆不變,不會 因為圖像尺度改變導致特徵失效,而本節的目標,就是要得到圖像在各種尺度中

的關鍵點。為了達成這個目的,必須先將圖像的尺寸縮小(downsize),再從各種 尺寸的圖像中取出高頻並找出極值(extrema)的位置,當作關鍵點。為此,SIFT 採用了高斯差(Different of Gaussian ( DOG ))濾波器(filter)。先用高斯函 數(Gaussian function),G(x, y,σ),以及不同的σ(尺度)將圖像( I(x, y) ) 做不同程度的糢糊化,這麼做就相當於把圖像的寬和高分別乘上 1/σ,也就是 相對也較少。其次,高斯差濾波器的執行結果與拉普拉斯差(Laplacian of Gaussian( LOG )) 濾波器的結果十分相近,而在其他論文[ 18 ]的實驗中已發 現拉普拉斯差濾波器的區域最大值及最小值所產生的特徵相對於其他方法較為 穩定。拉普拉斯差濾波器的第一步與高斯差濾波器相同,都是先用高斯函數以及

不同的σ將圖像做不同程度的糢糊化,將一些細微的雜訊率掉,但之後卻是用拉

的候選者,若不是,則繼續做下一個像素,直到做完為止,如圖 3-4。

為了達到每一個尺度都能取得極值的目的,每個 octave 中應該包含σ*k-1、 σ、σ至 2σ之間的 s-1 張、2σ以及 2σ*k 這些尺度的平滑化圖像(共有 s+3 張 平滑化圖像),如此才能取得σ和 2σ尺度的極值。

原本應該每個尺度都要執行一次,但如此執行時間就會被大幅度的延長,很 沒有執行效率。經過一系列的實驗後,發現在 s=3 及σ=1.6 時,執行效果及使 用時間的效果較佳,所以 s 及σ就用這組設定值,但為了避免因σ=1.6 而失去 原圖(未模糊化)的資訊,所以第一個 octave 是以原圖的 2 倍尺寸(ex:400*300

→800*600)開始執行。

圖 3-2 尺度空間的圖片 圖(a)為原圖(σ=0),圖(b)的σ=1,

圖(c)的σ=2,圖(d)的σ=4

圖 3-3 高斯差濾波器示意圖

圖 3-4 取極值的示意圖

3.1.2.2 關鍵點所在位置精確化

所以要把此關鍵點刪除(圖像像素的值在[0,1])。 上的關鍵點,可以用角偵測(Harris Corner Detector)[ 13 ]的方式偵測關鍵點 是否位於直線段。令 H 為 代表對 x 方向偏微分兩次(x 方向

利用 Tr(H)=λ12、det(H)=λ12,令λ1=r*λ2(b)做完偵測尺度空間的極值,共有 832keypoints(向量代表強度,方向及位置)

(c)去除對比度低的關鍵點,共有 729keypoints (d)去除在邊上的關鍵點,共有 536keypoints

原關鍵點 新關鍵點

雜訊

det(H) λ λ r*λ r

λ λ λ (5)

3.1.2.3 決定關鍵點的方向

將之前梯度強度的值乘上高斯分佈(Gaussian distribution)(其σ為尺度值 的 1.5 倍)依此梯度的方向的值加入方向直方圖的適當的箱中。方向直方圖中

最高的值及高度在最高值*0.8 以上的方向,皆會被當作關鍵點的方向,所以 一個關鍵點可能有兩個以上的方向。最後,利用最高值及其左右的箱,求出一 條拋物線,再利用此拋物線求出其極值的位置,以這個值來表示關鍵點的方向。

3.1.2.4 關鍵點描述子

這節的目標是取出不受圖像旋轉、視角(viewpoint)及亮度(illumination) 的具鑑別力的特徵。在這裡採取的方法依然是方向直方圖。確定關鍵點的尺度 了三線性內插(trilinear interpolation)的方式。

接著,為了不受亮度影響,必須先將特徵正規化至單位長度,此步驟的作用

雖然說一樣是使用方向直方圖的方式,但因為和第三節的情況不同,所以參數 必須改變。依實驗所得,σ為關鍵點區域寬度的0.5 倍,關鍵點週遭的區域大 小最好為16*16,也就是會有 4*4 個區塊,方向直方圖要分為 8 個箱,所以得 到的特徵維度為4*4*8=128 維度。另外,上述的常數 h 則定為 0.2。

圖 3-7 擷取特徵的示意圖

先將關鍵點週遭的區域分割成若干個4*4 大小的區塊,如圖(a)所示。

再乘上高斯分佈將梯度的強度加權後(藍色圓圈),

將每個區塊中的梯度統計成方向直方圖,如圖(b)所示。

在圖(a)中的區域為 8*8,所以產生了 2*2 的描述子,

且每個方向直方圖有8 個箱。

但依照後來的實驗結果所示,區域的大小最好為16*16,

每個方向直方圖最好有8 個箱,

也就是會產生4*4 個描述子,每個特徵應該有 4*4*8=128 維度。

相關文件