日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

局部特征(3)——SURF特征总结

發布時間:2025/3/21 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 局部特征(3)——SURF特征总结 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
局部特征系列:
  • 局部特征(1)——入門篇
  • 局部特征(2)——Harris角點
  • 局部特征(3)——SURF特征總結
  • 局部特征(4)——SIFT和SURF的比較
  • 局部特征(5)——如何利用彩色信息 Color Descriptors
  • 局部特征(6)——局部特征描述匯總

?--------------------------------------------------------------

?

第一部分:興趣點的檢測

?

1、建立積分圖。

優點:任何一個垂直矩形區域的面積只需要進行3次?+/-法就能計算。一階的haar小波響應只要5次+/-法就能計算。計算的時間和區域大小無關。

?

2、建立圖像的尺度空間(應該分別有Dxx、Dxy、Dyy 三個尺度金字塔):

用box filters代替二階高斯差分模板。



保持圖像的大小不變,對box filters進行尺度變換:建立高斯金字塔,金字塔分為多個Octaves,每個Octave分為4個Scale levels。第一級的Octave的模塊大小為9、15、21、27(相差6),第二級為15、27、39、51(相差12),第三級為27、51、75、99(相差24)。每一級第一個level的大小為上一級第二個level的大小。繼續建立高斯金字塔,直到filter的大小大于原圖像的大小為止(問題是大于每一Octave的第一個mask大小還是最后一個mask的大小?)。


?

尺度變換的方法,與每個Octave第一個scale level的size(L)/3有關,例如第一個Octave的L為9,L/3=9/3=3,則對于每行/列,連續出現L/3個相同的值,則再插入2個相同的值。若某連續3行同時為1,則再插入兩行0。若只連續1行為1,則1*(2/3)=1(四舍五入)。插入的行/列要求左右/上下對稱。

?

3、對于尺度空間中的每一個box filter,與圖像卷積,計算每一點上的Dxx、Dyy、Dxy,再計算每一點Hessian矩陣的行列式。(卷積可以用積分圖實現快速計算。)

? ? ?

其中w是因為box filters只是高斯二階差分的近似,為了使行列式的值大致相等,乘以這個權值,取0.9。注意,每Octave提高一級,計算行列式的時候,采樣的間隔提高一倍。例如第一個Octave,每個點都計算,到了第二個Octave,隔一個點計算一個……(用增大模板大小,對圖像上的點采樣計算的方法,等同于實現對圖像進行下采樣并改變模板尺度的大小。)

對于每一個Octave,對計算出行列式的值設一個閾值,大于該閾值的列為候選興趣點。對候選極值點進行非極大抑制:對于該level的周圍8個點以及上下scale level相應位置的9*2個點,一共26個點進行比較行列式的大小,若該點是周圍26個點中行列式最大的,則保留。(每一個Octave的頭尾兩個scale level是沒法計算的。)

為什么可以用Hessian矩陣來判斷極小值/極大值,請見最后。?


最后,內插子像素精確定位(具體未看)。

?

第二部分:特征描述子

?

1、?主方向的確定(U-Surf沒有此步驟)

s =?當前mask大小?* 1.2 / 9

以興趣點為中心,確定6s為半徑的圓。對圓內以s為步長的采樣點計算haar小波響應(邊長為4s)。

以興趣點為中心,對小波響應進行高斯加權()。對一個扇形區間(比如π/3)的水平和垂直方向的小波響應分別求和。最長矢量對應的扇形方向就是主方向。(每一個扇形窗可否有重復?)

?

2、以興趣點為中心,主方向為參考x軸方向,20s為邊長,做正方形區域,并將該區域分為4*4個子區域。(SURF-36把它分為3*3個子區域,區分性略差但速度快。)每個子區域取5*5個采樣點,計算這些采樣點上的haar小波響應dx和dy。以興趣點為中心,對響應進行高斯加權(σ=3.3s)。

?

3、對每個子區域的dx、dy、|dx|、|dy|進行求和,歸一化為單位向量。對于4*4個子塊一共可以構成64維空間。(SURF-128在統計dx和|dx|時,把dy分為大于0時候和小于0時候兩種情況,而在統計dy和|dy|時將dx分為大于0和小于0兩種情況,這樣每個子區域是8維向量)。


附:最近的思考(2011.7.10補充):

1、為什么Hessian矩陣可以用來判斷極大值/極小值

我的理解如下:

在x0點上,hessian矩陣是正定的,且各分量的一階偏導數為0,則x0為極小值點。

在x0點上,hessian矩陣是負定的,且各分量的一階偏導數為0,則x0為極大值點。

對于某個局部區域,若hessian矩陣是半正定的,則這個區域是凸的(反之依然成立);若負定,則這個區域是凹的(反之依然成立)。而對于正定和負定來說,Hessian矩陣的行列式總是大于等于0的。反過來就是說:某個點若是極大值/極小值,hessian矩陣的行列式必然要大于等于0,而大于等于0如果是滿足的,這個點不一定是極大值/極小值(還要判斷一階導數)。所以后面還要進行極大值抑制。


與SURF相關的局部特征是SIFT,已經有很多專家對它討論過了,這里我也不再多談,如果大家對它感興趣的話,請看這里,而接下來的這篇博客則對SIFT和SURF做了比較

?

---------------------------

jiang1st2010

原文地址:http://blog.csdn.net/jiang1st2010/article/details/6564835

總結

以上是生活随笔為你收集整理的局部特征(3)——SURF特征总结的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。