CVPR讀書筆記[4]:Gabor特徵提取之Gabor核
朱金華 [email protected] 2014.08.09
本文是Gabor特徵提取三部分之一:
[1]CVPR讀書筆記[4]:Gabor特徵提取之Gabor核
http://blog.csdn.net/njzhujinhua/article/details/38460861
[2] CVPR讀書筆記[5]:Gabor特徵提取之Gabor核的實現
http://blog.csdn.net/njzhujinhua/article/details/38610281
[3] CVPR讀書筆記[6]:Gabor特徵提取
http://blog.csdn.net/njzhujinhua/article/details/38614697
(後注:傳圖片好麻煩, 幾個公式截圖在一塊了, 除了wiki那個其餘的可是我用公式編輯器一個個敲的啊 )
關於Gabor濾波,有的說法是加窗傅里葉變換,有的說法是用復正弦函數調製的高斯核,其實都是一個意思.
傅里葉變換不能同時進行時域與頻域分析, 1946年D.Gabor提出加窗傅里葉變換, 通過在時間軸位置p加窗實現對p周圍小範圍內信號的短時分析, 即現在的短時傅里葉變換. 通過對點p的平移,則可實現對整個時域的信號分析. 其通過窗函數g(t-p)與原信號的乘積對原信號進行在p點周圍開窗, 在其它時域抑制,然後進行傅里葉變換, 這邊是Gabor變換了. Gabor使用高斯函數作爲窗函數.
Gabor算不算小波,都有一定說法. Gabor沒有正交基,,不算小波.而且也不能自動調節分辨率的. 但是其可以反映信號局部區域的特徵,對圖像邊緣敏感, 且可以做到在不同方向不同尺度下的局部區域特徵提取.當去除Gabor變換的直流分量時可以去除光照影響,因而Gabor小波被廣泛用於圖像識別領域.
一維Gabor函數
爲了更好的理解Gabor在時域上的分析能力,我們從一維看起
f(t)爲一維信號,其傅里葉變換爲
信號與高斯函數
卷積,即加窗可得
, 這就是所謂的Gabor變換
可看出t取p時,高斯函數是取到最大的,t向兩邊延伸,則f(t)的取值被迅速消弱.即Gabor在p點的變換即主要取p周圍3* σ範圍的信號, 且離得越遠作用越小. 將p依次在時間軸上移動,即可得到在時域內的信號分析
二維Gabor函數及其推導
二維Gabor函數則是二維高斯函數與二維傅里葉的卷積
令f=1/λ則最後這個除了歸一化係數外就是維基百科上的Gabor的復形式了(同時假設γ=1, 即高斯函數兩個方向的尺度是一樣的x'^2+y'^2=x^2+y^2)
http://en.wikipedia.org/wiki/Gabor_filter
λ表示正弦波長
θ表示Gabor函數條紋的方向
ψ表示相位,我們假設爲0,
σ表示高斯函數的標準差
γ表示空間縱橫比我們已做假設值爲1
Gabor濾波器設計
Gabor濾波器核的通常形式爲
上面兩個等號一個意思, 只是怕截圖後第一個等號字太小看不清了,又換了exp的表達.
由此可得Gabor核的實部爲
式中x,y爲位置座標,
σ爲高斯函數的標準差, 與小波的帶寬有關,這裏一般取常數.
k確定了Gabor的尺度, k=k_max/f^n, 這裏k_max爲最大頻率,f是頻域中的間隔因子,n是尺度序號, 取值0…N-1. f一般大於0,取固定值,當n增大時尺度增大,分辨率變低,n降低時分辨率更精細.在相同的尺度n下,如果增大f的話其也相當於增大尺度的效果.
θ確定了Gabor的方向, θ=pi*m/M, M爲總的方向數,u爲方向序號,取值0…M-1.
參考了衆多說明, 一般是取值爲Kmax=pi/2, f=sqrt(2.0), σ=2pi, 但沒找到出處.
稍後代碼參照上述描述的Gabor覈實現.
[參考文獻]
[1]Handbook ofFace Recognition 2nd Edition
[2]JoineBook.Com_Springer.Computer.Vision.A.Reference.Guide.Jun.2014
[3] http://en.wikipedia.org/wiki/Gabor_filter
[4] Movellan,Javier R. "Tutorialon Gabor Filters". Retrieved 2008-05-14.
[5]http://blog.csdn.net/sunboyiris/article/details/21559505