脊检测

来自testwiki
跳转到导航 跳转到搜索

Template:TA Template:FeatureDetectionCompVisNavbox

脊检测Template:Lang-en)為試圖尋找相片中的脊的位置之方法。在數學電腦視覺等領域中,一個雙變數光滑函數的脊(或是稱作為脊集合)是所有至少在一個維度中是局部最大值的點所形成的曲線的集合,就如同地理上山脊的概念。而一個N變數函數的脊,是所有在N1個維度中是局部最大值的點所形成的曲線的集合。脊可以看作是局部最大值的延伸。相對的,一個函數的谷可以以類似的方式定義,只要以局部最小值取代脊定義中的局部最大值的部份。

脊集合與谷集合表現了一個函數直覺上的幾何資訊,因此可以提供一種對於函數特徵的簡潔呈現。圖像分析電腦視覺為了獲得相片中物件延伸特性的資訊,利用了脊集合與谷集合的特性而有脊检测及谷检测。相關的應用像是在分水嶺演算法中被使用以進行圖像分割,或是利用相片中的脊與谷去計算物件可能的形狀等等。此種幾何資訊的表示方式,若只有進行單一尺度的計算,容易會受到雜訊的干擾。根據尺度空間理論,多重尺度的脊與谷可以透過相片經過高斯金字塔的預先處理獲得,藉此應該可以產生對於物件更穩定的描述。

二維相片中單一尺度的脊與谷的微分幾何定義

f(x,y)為一個二維函數,而Lf(x,y)尺度空間表示,此種表示可以透過f(x,y)與高斯函數的摺積獲得。

在單一尺度下,高斯函數中的t為一定值。

g(x,y,t)=12πte(x2+y2)/2t.

透過旋轉的方式,可以找到一組直角座標(p,q)使得 Lpq=0,其中的方向導數運算子,

p=sinβxcosβy,q=cosβx+sinβy

進一步帶入海森矩陣中。

H=[LxxLxyLxyLyy]=[sinβcosβcosβsinβ][LppLpqLpqLqq][sinβcosβcosβsinβ]

不難看出Lpp,Lqq即為海森矩陣的特徵值,而旋轉矩陣的旋轉角度可以由海森矩陣的特徵向量所決定。

cosβ=12(1+LxxLyy(LxxLyy)2+4Lxy2),sinβ=sgn(Lxy)12(1LxxLyy(LxxLyy)2+4Lxy2).

有了恰當的旋轉後,便可以正式的定義函數f(x,y) 在單一尺度下的脊,脊包含所以符合以下條件的點。 [1]

Lp=0,Lpp0,|Lpp||Lqq|.

相對應的谷,谷包含所有符合以下條件的點。

Lq=0,Lqq0,|Lqq||Lpp|.

相似的,也可以將座標旋轉,使得新座標(u,v)中,v的方向平行相片的梯度,而u的方向垂直相片的梯度。

u=sinαxcosαy,v=cosαx+sinαy

此時的旋轉角度為,

cosα=LxLx2+Ly2,sinα=LyLx2+Ly2

以下的定義可以被證明與前述的是等價的[2]

Luv=0,Luu2Lvv20

其中

Lv2Luu=Lx2Lyy2LxLyLxy+Ly2Lxx,
Lv2Luv=LxLy(LxxLyy)(Lx2Ly2)Lxy,
Lv2Lvv=Lx2Lxx+2LxLyLxy+Ly2Lyy

Luu的正負號決定一個點是脊或是谷,Luu<0是脊而Luu>0是谷.

計算二維相片在變化尺度下的脊

單一尺度脊的主要問題是對於雜訊非常敏感,實驗證實尺度的選擇需要特別的調整才能得到一組能夠反應相片中結構的脊。為了在缺乏過往經驗時處理這個問題,而有了尺度空間脊的概念,此時尺度大小這個變數被當作是脊定義的固有特性,尺度可以在尺度空間中變化。此種概念使得尺度可以被自動的調整到反應相片結構的大小,以下有多種方法皆是基於此。

R(x,y,t)為一個描述脊強度的函數(底下有詳細定義)。則對於一個二維相片,尺度空間脊包含所有符合以下條件的點,

Lp=0,Lpp0,t(R)=0,tt(R)0,

其中 t尺度空間表示中的尺度. 相似的,尺度空間谷包含所有符合以下條件的點,

Lq=0,Lqq0,t(R)=0,tt(R)0.

如此定義下,可以想像尺度空簡脊為三維空間中一些一維曲線的集合(原本相片的二維加上尺度空間一維),而最後呈現的脊便是這些曲線在相片平面上的投影。

當初Lindeberg (1996, 1998)[3] 提出了尺度空間脊時,他考慮了三個描述脊強度的函數。

  • 主曲率
Lpp,γnorm=tγ2(Lxx+Lyy(LxxLyy)2+4Lxy2)
  • 特徵值差的平方經γ-標準化後的平方
Nγnorm=(Lpp,γnorm2Lqq,γnorm2)2=t4γ(Lxx+Lyy)2((LxxLyy)2+4Lxy2).
  • 特徵值差經γ-標準化後的平方
Aγnorm=(Lpp,γnormLqq,γnorm)2=t2γ((LxxLyy)2+4Lxy2).

Lpp,γnorm是一個通用性的描述函數,常被用在血管偵測及道路提取等應用中,而Aγnorm則被用在指紋的增強[4],即時手部追蹤及手勢辨識[5],以及利用局部影像統計偵測追蹤影像或影片中的人。[6]

歷史

脊與谷第一次被使用在數位影像的領域中是在由Haralick於1983[7]及Crowley於1984對於高斯金字塔的想法[8][9] ,脊在醫學影像中的應用則有Pizer及其同事的深入研究[10][11][12] 及他們所提出的M-reps。[13] 脊检测因Lindeberg加入了γ-標準化導數及尺度空間脊等概念而有所提昇。這些概念之後由Steger等人使用在道路提取[14][15] ,由Frangi等人使用在血管的分割[16] 以及由Satos等人及Krissian等人使用在曲線及管狀結構的偵測中。[17][18]

N維空間中脊與谷的定義

脊的概念,推廣了實數函數的局部最大值。一個在 f:n定義域中的點𝐱0,若存在一個距離δ>0使得所有在這個距離內的都符合f(𝐱)<f(𝐱0),則點𝐱0是一個局部最大值。

稍微放寬一下這個條件,若所有在𝐱0的附近的點𝐱n1維的子集合,皆符合f(𝐱)<f(𝐱0),則𝐱0便是脊上的一個點。這樣的放寬,給予了脊一個維度的自由,也就是說脊會是一個一維的曲線。同樣的概念套用到局部最小值上,可以得到一維的谷曲線。

以下的定義是根據Eberly的著作[19],可以被當作是之前的脊的定義的推廣。令Un為一個開放集合,且f:U是一個光滑函數。令𝐱0U。令𝐱0ff在點𝐱0的梯度。令H𝐱0(f)為函數f在點𝐱0n×n海森矩陣。令λ1λ2λnnH𝐱0(f)的排序好的特徵值,並令𝐞i為對應到λi的單位特徵向量。(在此,假設所有特徵值是相異的)

𝐱0在一維的脊上若:

  1. λn1<0
  2. 𝐱0f𝐞i=0 for i=1,2,,n1.

這精確地限制了f在特定的n1維中在點 𝐱0有局部最大值。

這樣的定義很自然的可以被推廣到成k維的脊,一個點𝐱0k維脊上若

  1. λnk<0
  2. 𝐱0f𝐞i=0 for i=1,2,,nk.

最大尺度脊

以下的定義可以被追溯到Fritsch[20],當初他對如何從二維灰階相片中提取幾何資訊十分感興趣,他使用了medialness濾鏡處理相片,得到了一種類似各點到邊緣距離在尺度空間的資料,而這種資料的脊若是再疊加回原本的相片上,與原本相片的形狀骨骼(如Blum的中軸)十分相似。

最大尺度脊定義在一個三維的函數上,其中二維是相片平面,一維是尺度空間。其中我們想要以下的條件為真,若(𝐱,σ)是一個在最大尺度脊上的點,則函數在這個點上的值在尺度軸上是極大值。令f(𝐱,σ)為一個光滑可微分的函數於U2×+。則(𝐱,σ)是在最大尺度脊上的點若且唯若

  1. fσ=0 and 2fσ2<0, and
  2. f𝐞1=0 and 𝐞1tH(f)𝐞1<0.

參見

參考資料

  1. Template:Cite journal
  2. Template:Cite journal
  3. Template:Cite journal Earlier version presented at IEEE Conference on Pattern Recognition and Computer Vision, CVPR'96, San Francisco, California, pages 465–470, june 1996
  4. Template:Cite journal
  5. Template:Cite web
  6. Template:Cite journal
  7. Template:Cite journal
  8. Template:Cite journal
  9. Template:Cite journal
  10. Template:Cite journal
  11. Template:Cite journal
  12. Template:Cite journal
  13. Template:Cite web
  14. Template:Cite journal
  15. Template:Cite journal
  16. Template:Cite journal
  17. Template:Cite journal
  18. Template:Cite journal
  19. Template:Cite book
  20. Fritsch, DS, Eberly,D., Pizer, SM, and McAuliffe, MJ. "Stimulated cores and their applications in medical imaging." Information Processing in Medical Imaging, Y. Bizais, C Barillot, R DiPaola, eds., Kluwer Series in Computational Imaging and Vision, pp. 365–368.