第三章 研究方法
3.3 加速穩健特徵(SURF)
3.3.3 SURF 特徵點和其特徵點描述單元
SURF 的特徵點和 SIFT 相同,一樣是採用一組特徵點的最大方向和一個固
定維度的特徵點描述向量,但是 SURF 為了減少描述向量方向的計算量而改變了
特徵點描述單元的取得方法,不過仍舊保持和 SIFT 相同在主方向對局部特徵的
17
依賴性。SURF 為了降低描述值的量,使用特徵點周圍半徑為 6 個尺度大小的 60
度扇形區域,如圖 9所示。
圖 9 為了降低描述值的量,使用特徵點周圍半徑為 6 個尺度大小的 60 度扇形區域[2]。
接著使用 Haar 小波特徵的水平和垂直響應總和,小波波長為 4 個尺度,每
次計算 5 度,計算完後以最大的響應方向記作特徵方向。接著以特徵點為中心,
建立一個長寬 20 尺度的方形並將其分成 4*4 個區域,如圖 10 左半部所示。每
個區域內取出 5*5 個像素點的相對於主方向的水平和垂直小波特徵值和以及絕
對值和,一共 4 種特徵描述,這樣就構成了 64 維度(4*4*4)的特徵點描述單元,
如圖 10右半部所示。同時 SURF 在上述的特徵描述方法下,可以從圖 11 的比較
來看出,SURF 在處理有雜訊的影像時也比 SIFT 具有較高的容忍度。
18
圖 10 SURF 特徵點描述單元的計算方式示意圖[2]。
圖 11 SIFT 特徵點和 SURF 特徵點在有無雜訊的影像上的差別[2]。
為了找出特徵點,SURF 提出了一個對於 3*3*3 的鄰近區域作非極大值抑制
(non-maximum suppression)並結合 Neubeck and Van Gool 的研究[17]作為特
徵點判斷的依據。如圖 12,再將海森矩陣所算出的不同尺度結果由小至大沿 Z
軸方向排列,最後使用 Brown and Lowe 研究[18]中提出的方法來找出特徵點。
19
圖 12 為了找出特徵值而將不同尺度結果沿 Z 軸排列的方式[2]。
SURF 可利用改變特徵點描述單元的維度來配合相關應用。SURF 特徵點描述
單 元 可 將 維 度 提 升 到 和 SIFT 一 樣 的 128 維 度 , 其 做 法 是 將 SURF-64 的
∑ |dx| 和 ∑ dx依據dy < 0 或dy ≥ 0 來分開計算,而對於∑ |dy| 和 ∑ dy也相對依據
dx < 0 或dx ≥ 0來分開計算。SURF-128 在計算特徵點時和 SURF-64 相比只慢一
點(原文為: not much slower to compute),根據實驗結果顯示出,其維度為
SURF-64 的兩倍導致在進行特徵點匹配的時候會明顯比 SURF-64 慢上許多,但
卻沒有因此而大大提高準確率。相對於提高維度來提升準確率,Bay 也嘗試透
過將 SURF 特徵點描述單元的維度降低來加快特徵點匹配的速度。他將 SURF 特
徵點描述單元的維度降低至 16、32、36 三種,可以從 SURF 的實驗結果,圖 13
顯示出,SURF-36 在準確度的部分比 SURF-64 較為遜色,但是在特徵點匹配的
速度比 SURF-64 快上許多。[2]
由於本研究的目的是希望能做到利用圖像進行檢索,須要能較快速得到結
20
果的方法,所以採用 SURF-36 為特徵點描述單元來改善特徵點匹配時的速度。
圖 13 SURF 於不同維度的準確率[2]。