原創文章,轉載請注明出處:http://blog.csdn.net/crzy_sparrow/article/details/7392345
本人挺菜的,肯定有非常多錯誤紕漏之處 ,希望大家不吝指正。
???? 看了harris角點檢測之后,開始研究SURF角點檢測,發現挺復雜的,一時也僅僅了解了大概,把了解的東西總結下,以便下次深入學習。
? ?? SURF角點檢測算法是對SIFT的一種改進,主要體如今速度上,效率更高。它和SIFT的主要差別是圖像多尺度空間的構建方法不同。
??? 在計算視覺領域,尺度空間被象征性的表述為一個圖像金字塔,向下降採樣一般用高斯金字塔。當中,輸入圖像函數重復與高斯函數的核卷積并重復對其進行二次抽樣,這樣的方法主要用于SIFT算法的實現, 但每層圖像依賴于原圖像(當前尺度可能和原圖象尺度相差非常大,這時候再那原圖像卷積確實有點二了),而且圖像須要重設尺寸 ,因此,這樣的計算方法運算量較大。 SURF算法對積分圖像進行操作,卷積僅僅和前一幅圖像有關,其降採樣的方法是申請添加圖像核的尺寸 ,這也是SIFT算法與SURF算法在使用金字塔原理方面的不同。SURF算法同意尺度空間多層圖像同一時候被處理,不需對圖像進行二次抽樣,從而提高算法性能。
??? 其他方面的差別,以我菜鳥級的認識,差不大多。
??? 附上兩篇SIFT相關的博文,講得還是比較透徹的,兩篇結合起來看基本能明確其原理。
??? 兩篇講的東西有點出入,只是對比著看還是能找出問題的,當然啃論文最easy找出問題了。
SIFT簡單介紹:http://www.360doc.com/content/11/1230/23/3054335_176200661.shtml
SIFT算法心得:http://www.360doc.com/content/11/1207/17/3054335_170430459.shtml
??? 其它博文:
SIFT/SURF算法的深入剖析——談SIFT的精妙與不足:http://hi.baidu.com/xiaoduo170/blog/item/a22bcc1c2349708286d6b636.html
SIFT/SURF系列:http://www.yongblog.com/archives/tag/surf%E7%AE%97%E6%B3%95
??? SURF論文和源代碼(論文講得非常具體,代碼c++實現):
http://download.csdn.net/detail/crzy_sparrow/4171374
opencv小試SURF算法:
#include "opencv2/opencv.hpp" ? int main(){ ? ? cv::Mat image, image1 = cv::imread ("test.jpg"); //灰度變換 cv::cvtColor (image1,image,CV_BGR2GRAY); ?std::vector<cv::KeyPoint> keypoints; ?cv::SurfFeatureDetector surf(2500); ?surf.detect (image,keypoints); ?cv::drawKeypoints (image,keypoints,image,cv::Scalar::all (255),cv::DrawMatchesFlags::DRAW_RICH_KEYPOINTS); cv::namedWindow ("surf"); cv::imshow ("surf",image); cv::waitKey (0); return 0; }
測試結果 :
標記圈的半徑長短和特征點所在尺度有關,那條半徑是特征點的方向。
??? SIFT算法的教程、源代碼及應用軟件
1、ubc:DAVID LOWE---SIFT算法的創始人,兩篇巨經典
http://www.cs.ubc.ca/~lowe/
2、cmu:YanKe---PCASIFT,總結的SIFT方面的文章
http://www.andrew.cmu.edu/user/yke/
3、ubc:M.BROWN---SIFT算法用于圖像拼接的經典應用autopano-sift,包含一個SIFTLIB庫
http://www.cs.ubc.ca/~mbrown/autostitch/autostitch.html
http://www.cs.ubc.ca/~mbrown/panorama/panorama.html
4、toronto:Jepson---Matlab SIFT tutorial, 超級超級超級經典~
http://www.cs.toronto.edu/~jepson/csc2503/
5、ucla:Vedaldi---加州大學一個博士生編的Matlab SIFT tutorial
http://www.cs.ucla.edu/~vedaldi/
6.http://en.wikipedia.org/wiki/Scale-inva ... _transform
7. 大牛整理的計算機視覺分類
http://www.cs.ubc.ca/~lowe/vision.html
8. http://note.sonots.com/SciSoftware/SIFT.html
9.提到了計算變換矩陣的RANSAC法
http://web.engr.oregonstate.edu/~hess/index.html
10. 仿射不變特征點檢測,提到了性能評價的方法
http://www.robots.ox.ac.uk/~vgg/research/affine/
11. 一個日本人,挺牛的
http://note.sonots.com/
12. PCA-SIFT
http://www.cs.cmu.edu/~yke/pcasift/
13 opencv sift
http://web.engr.oregonstate.edu/~hess/index.html
14 matlab sift
http://www.vlfeat.org/~vedaldi/code/sift.html
http://www.vlfeat.org/overview/sift.html
15 Improve Scale Invariant Feature Transform (SIFT) 斯坦福
http://robots.stanford.edu/cs223b04/project9.html
16 Known implementations of SIFT??? mit
http://people.csail.mit.edu/albert/ladypack/wiki/index.php/Known_implementations_of_SIFT
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
