第二章 文獻探討與回顧
2.3 加速強健特徵
加速強健特徵(Speeded-Up Robust Features, SURF)[39]和尺度不變特徵轉換 (Scale-Invariant Feature Transform, SIFT)[40]一樣,具有尺度及旋轉不變性,但在 處理速度上卻有大幅度的提升。SURF 使用了可改變尺度大小的 Hessian Detector 達成尺度不變的特性,並使用積分影像[41]達到加速運算的目的。為了建立出具 有旋轉不變特性的特徵描述子,一開始須先求出特徵的主方向,並依照主方向建 立出SURF 特徵描述子。以下將分別介紹 SURF 的各個步驟。
1. Detection
SURF 的興趣點(Interest Point)偵測係利用 Hessian 矩陣。Hessian 矩陣是 由二階高斯微分(Laplacian of Gaussian, LoG)以及影像的摺積(Convolution)所 組成:
20
圖2.4、y 方向二階高斯微分遮罩
SURF 為了簡化計算量,將二階高斯微分的遮罩化簡,但不同於 SIFT 使 用DoG 近似 LoG[42],SURF 採用盒子濾波器(Box Filter)近似二階高斯微分,
如圖2.5,更有效的降低計算的複雜度。
L yy D yy
21
23
圖2.9、在不同尺度空間下的遮罩大小
當完成影像
I
中所有像素點在不同層的盒子濾波器下所計算出來的Hessian 矩 陣 的 行 列 式 值 後 , 則 使 用 非 最 大 值 抑 制 法 (Non-Maximum Suppression),與該像素
x
所鄰近的 8 個點,以及上、下層的 9 個點共 26 個 點比較Hessian 矩陣的行列式值,當x
的行列式值皆大於其他點時,才會將x
點視為特徵點,如圖2.10 所示。圖2.10、SURF 特徵點決定示意圖
2. Descriptor
找出擁有尺度不變的特徵後,為了要讓特徵具有旋轉不變性,因此必須
24
要給每個特徵一個主方向,之後再沿著該主方向建立出描述子。如此一來,
不管特徵是否有經過旋轉,所建立出來的描述子皆會相同,達到旋轉不變性 的特性。
主方向是使用Haar 小波濾波器[43],如圖 2.11 所示,在各特徵點上計算 垂直以及水平方向、大小為4s(s 為特徵所在的尺度大小)的 Haar 小波濾波器 的反應值。並以該特徵為圓心,將半徑為6s 的範圍內所有特徵值的小波響應 依照離圓心的距離長短給予一個高斯權重的加成。再用圓心角為
π 3
的扇形 區塊以該特徵點為圓心掃描整個範圍,並以小波響應總和最大的方向當作該 特徵點的主方向,如圖2.12 所示。圖 2.11、小波響應遮罩
圖2.12、決定主方向示意圖
25
找出特徵點的主方向後,以特徵點為中心,沿著主方向建立一個邊長為 20s 的正方形區塊,如圖 2.13 所示,並將此區域平均劃分成
4 4 ×
的子區域(亦 即每個子區域的邊長為5s ),再將每個子區域平均劃分成5 5× 的小區域(亦即 每個子區域的邊長為s
),並計算每個小區域中的小波響應。將每個子區域內 的所有小區域的小波響應依照4 種方向( , ,dx dy dx dy )進行加總,因此每個, 子區域會有4 維的描述向量v = { ∑ ∑ ∑ ∑ dx , dy , dx , dy }
,而每個特徵即擁有
4 4 4 × ×
維度的描述子,對於光影以及雜訊可以有較高的抵抗力,如圖2.14。
圖2.13、特徵向量示意圖
26
dx dy dx dy
∑ ∑
∑ ∑
dx dy dx dy
∑ ∑
∑ ∑
dx dy dx dy
∑ ∑
∑ ∑
圖2.14、特徵向量在不同影像上的差距