第三章 研究方法
3.3 單應性相關特徵 (Homographic Characteristics)
3.3.1 尺度不變特徵轉換 (SIFT)
這個方法主要包含四個步驟,首先,為了具有尺度不變性,他建立一個尺度空間 金字塔如圖 3.7 左方,金字塔中每層 (octave) 包含不同解析度 (Resolution) 的原始 影像,而每組中又分為數個尺度 (Scale) 的高斯影像 𝐺(𝑥, 𝑦, 𝜎),這些尺度利用高斯
圖 3.6: 比較候選畫面和該畫面前後相鄰畫面比較圖,此圖在每個時間點下方標記 出對應的實際投影片編號,上方前後時間點的對應畫面,藍線為實際片段區間,黑 線則是根據平均相減計算出來的變化量
模糊計算得到,用來模擬人類視覺由近到遠的對焦程度。
第 二 步 是 找 出 特 徵 點 的 位 置 與 方 向, 這 些 特 徵 點 會 出 現 在 物 體 的 邊 緣, 為 了 取 得 邊 緣 影 像, 先 利 用 取 得 的 尺 度 空 間 影 像, 將 相 鄰 影 像 相 減 得 到 高 斯 差 分 結果(式. 3.3),這是一種近似於高斯拉普拉斯 [2]LoG(Laplace of Guassian) 的方
法(式. 3.4),可以用來強化影像細節,並且找出邊緣特徵;
𝐷(𝑥, 𝑦, 𝜎) = (𝐺(𝑥, 𝑦, 𝑘𝜎) − 𝐺(𝑥, 𝑦, 𝜎)) ⊗ 𝐼(𝑥, 𝑦) (式. 3.3)
𝐿(𝑥, 𝑦, 𝜎) = 𝐿(𝑥, 𝑦, 𝑘𝜎) − 𝐿(𝑥, 𝑦, 𝜎) (式. 3.4)
接着找出發生在邊緣影像上的極值點,方法是比較每個像素點與周圍 3 × 3 × 3 的像 素點灰度值大小,留下具有最大或最小的點如圖 3.8,用這些點作為描述特徵的位置
;但因為取樣的關係,造成區域極值可能不是真的最大或最小值圖 3.9,因此再利用
圖 3.7: 高斯差分尺度金字塔 [12]
泰勒展開式將高斯差分結果(式. 3.3)展開如(式. 3.5)
𝐷(𝑋) = 𝐷 + 𝜕𝐷𝑇
𝜕𝑋 + 1
2𝑋𝑇𝜕2𝐷
𝜕𝑋2𝑋 (式. 3.5)
最小化後得到實際的區域極值點(式. 3.6)。
𝑋(𝑥, 𝑦, 𝜎) = −𝜕2𝐷−1
𝜕𝑋2
𝜕𝐷
𝜕𝑋 (式. 3.6)
此外,對於邊緣上的極值點,如果只有一個方向被找出,被認為是不穩定的 特徵點,因此利用類似 Harris 角點檢測的方法,用來過濾邊緣彎曲程度不高的位 置,為了降低計算量,這個方法透過計算 Hessian(式. 3.7)矩陣的 Trace 與行列式 值 (determinant)來找出邊緣彎曲程度不高的點(式. 3.8)、(式. 3.9),其中 𝜆𝑚𝑎𝑥 為
圖 3.8: 高斯差分局部極值點,由上到下分別為 𝐷(𝑘2𝜎), 𝐷(𝑘𝜎), 𝐷(𝜎)
Hessian 矩陣最大特徵值,𝜆𝑚𝑖𝑛 為最小特徵值,𝛾 = 𝜆𝜆𝑚𝑎𝑥
𝑚𝑖𝑛。
𝐻(𝑥, 𝑦) =⎡
⎢⎢
⎣
𝐷𝑥𝑥(𝑥, 𝑦) 𝐷𝑥𝑥(𝑥, 𝑦) 𝐷𝑥𝑦(𝑥, 𝑦) 𝐷𝑦𝑦(𝑥, 𝑦)
⎤⎥
⎥
⎦
(式. 3.7)
⎧{
⎨{
⎩
𝑇 𝑟(𝐻) = 𝐷𝑥𝑥+ 𝐷𝑦𝑦 = 𝜆𝑚𝑎𝑥+ 𝜆𝑚𝑖𝑛 𝐷𝑒𝑡(𝐻) = 𝐷𝑥𝑥𝐷𝑦𝑦− 𝐷𝑦𝑦2 = 𝜆𝑚𝑎𝑥⋅ 𝜆𝑚𝑖𝑛
(式. 3.8)
𝑇 𝑟(𝐻)2
𝐷𝑒𝑡(𝐻) = (𝜆𝑚𝑎𝑥+ 𝜆𝑚𝑖𝑛)2
𝜆𝑚𝑎𝑥⋅ 𝜆𝑚𝑖𝑛 = (𝛾 + 1)2
𝛾 (式. 3.9)
接着,為了找出能夠描述特徵方向的值,選擇對於具有特徵點的尺度影像 𝐿,並且對 其做有限差分(式. 3.11),以特徵點為中心,計算半徑為 1.5𝜎 的像素,得到強度值 𝑚 及角度 𝜃。
圖 3.9: 極值點重採樣
𝐿(𝑥, 𝑦) = 𝐺(𝑥, 𝑦, 𝜎) × 𝐼(𝑥, 𝑦) (式. 3.10)
⎧{
⎨{
⎩
𝑚(𝑥, 𝑦) = √(𝐿(𝑥 + 1, 𝑦) − 𝐿(𝑥 − 1, 𝑦))2+ (𝐿(𝑥, 𝑦 + 1) − 𝐿(𝑥, 𝑦 − 1))2 𝜃(𝑥, 𝑦) = 𝑎𝑟𝑐𝑡𝑎𝑛(𝐿(𝑥,𝑦+1)−𝐿(𝑥,𝑦−1)
𝐿(𝑥+1,𝑦)−𝐿(𝑥−1,𝑦))
(式. 3.11) 得到梯度方向和強度後,將其以每 10 度為一個區間,統計每個區間的數量圖 3.10, 以最多數量的方向分布為主方向,若有其他方向達到主方向分布的 80% 則判定為輔 方向,用來加強特徵點的穩定性,對於具有多方向的特徵點,將複製特徵描述單元並 保留兩個不同方向的結果圖 3.11。
最後,為了提升特徵點在光線變化、視角轉換的強韌性,在每個特徵點的四周的 像素也納入考慮,因為生物視覺神經細胞對於梯度變化可以視為某種頻率及方向的表 示,故特徵點周圍區域的梯度分布可以作為特徵描述的參考;方法是以特徵點為中 心,0.5𝜎 的範圍,分為 4 × 4 的區塊,計算每個區塊梯度方向的分布,這裡將方向 分為 8 個,每 45 度為一個區間,最後可以形成一個 4 × 4 × 8 = 128 維度的描述單 元向量圖 3.12。
圖 3.10: SIFT 梯度方向計算方式