摘要:理論在上一章中,我們看到了的關鍵點檢測和描述但它相對較慢,人們需要更加快速的版本,所以年引入了一種名為的新算法顧名思義,它是的加速版本作為尺度不變特征變換算法的加速版,算法在適中的條件下完成兩幅圖像中物體的匹配基本實現了實時處理,其快速的
Introduction to SURF (Speeded-Up Robust Features)
理論在上一章中,我們看到了SIFT的關鍵點檢測和描述,但它相對較慢,人們需要更加快速的版本,所以2006年引入了一種名為SURF的新算法, 顧名思義,它是SIFT的加速版本.
作為尺度不變特征變換(SIFT)算法的加速版,SURF算法在適中的條件下完成兩幅圖像中物體的匹配基本實現了實時處理,其快速的基礎實際上只有一個——積分圖像haar求導.
SURF算法原理:
構建Hessian矩陣構造高斯金字塔尺度空間
利用非極大值抑制初步確定特征點
精確定位極值點
選取特征點的主方向
構造surf特征點描述算子
OpenCV中的SURFimport numpy as np import cv2 img = cv2.imread("img.jpg") # Create SURF object. You can specify params here or later. # Here I set Hessian Threshold to 400 surf = cv2.xfeatures2d.SURF_create(400) # Find keypoints and descriptors directly kp, des = surf.detectAndCompute(img,None) print(len(kp))
output:3477
# Check present Hessian threshold print( surf.getHessianThreshold() )
output:400.0
# We set it to some 50000. Remember, it is just for representing in picture. # In actual cases, it is better to have a value 300-500 surf.setHessianThreshold(50000) #Again compute keypoints and check its number. kp, des = surf.detectAndCompute(img,None) print( len(kp) )
output:2
img2 = cv2.drawKeypoints(img,kp,None,(255,0,0),4) plt.imshow(img2),plt.show()
# Check upright flag, if it False, set it to True print( surf.getUpright() )
output:False
surf.setUpright(True) # Recompute the feature points and draw it kp = surf.detect(img,None) img2 = cv2.drawKeypoints(img,kp,None,(255,0,0),4) plt.imshow(img2),plt.show()
比之前更快了
# Find size of descriptor print( surf.descriptorSize() )
output: 64
# That means flag, "extended" is False. surf.getExtended()
output: False
# So we make it to True to get 128-dim descriptors. surf.setExtended(True) kp, des = surf.detectAndCompute(img,None) print( surf.descriptorSize() ) print( des.shape )
output:
128
(2, 128)
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/42061.html
摘要:降采樣的目的是為了綜合所有不同清晰度的圖像進行關鍵點提取,這種關鍵點攜帶了不同清晰度的信息,對縮放具有不變性。是對的一種改進,主要特點是快速。的達到維,導致的比較耗時,使用哈爾小波轉換得到的方向,讓的降到維,減少了一半,提高了匹配速度。 尺度不變特征變換(Scale-invariant feature transform, 簡稱SIFT)是圖像局部特征提取的現代方法——基于區域/圖像塊...
摘要:注意版本的是普通的超集,包含了所有正常版的功能,可以理解為。因為識別的還是之前的版本。安裝好以后就可以愉快地使用各種庫了。 寫在前面 之前搞樹莓派,opencv的contrib版本死活裝不上,最后用C++版本四線程編譯了一天, 浪費生命的玩意兒我明明記得之前,pip install opencv-contrib是可以安裝的......,年級大了,老了最近終于找到了一篇推文,原來是pip...
摘要:十開放模式識別項目開放模式識別項目,致力于開發出一套包含圖像處理計算機視覺自然語言處理模式識別機器學習和相關領域算法的函數庫。 一、開源生物特征識別庫 OpenBROpenBR 是一個用來從照片中識別人臉的工具。還支持推算性別與年齡。使用方法:$ br -algorithm FaceRecognition -compare me.jpg you.jpg二、計算機視覺庫 OpenCVOpenC...
摘要:理論我們知道使用向量作為描述符,由于它使用浮點數,因此基本上需要個字節,類似地,也至少需要個字節對于,為數千個特征創建這樣的向量需要大量的內存,這對于資源約束應用程序尤其是嵌入式系統是不可行的,內存越大,匹配所需的時間越長實際匹配可能不 BRIEF (Binary Robust Independent Elementary Features) 理論 我們知道SIFT使用128-dim...
摘要:理論是一種快速特征點提取和描述的算法這個算法是由以及在年一篇名為的文章中提出算法分為兩部分,分別是特征點提取和特征點描述。特征提取是由算法發展來的,特征點描述是根據特征描述算法改進的 ORB (Oriented FAST and Rotated BRIEF) 理論 ORB(Oriented FAST and Rotated BRIEF)是一種快速特征點提取和描述的算法,這個算法是由E...
閱讀 1958·2021-11-16 11:45
閱讀 3668·2021-09-06 15:02
閱讀 2013·2019-08-30 15:44
閱讀 2283·2019-08-30 11:21
閱讀 1845·2019-08-29 16:31
閱讀 3422·2019-08-29 13:55
閱讀 1895·2019-08-29 12:15
閱讀 3251·2019-08-28 18:05