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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

OpenCV ORB角点检测

發(fā)布時間:2025/5/22 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 OpenCV ORB角点检测 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

ORB算法是FAST算法和BRIEF算法的結(jié)合,ORB可以用來對圖像中的關(guān)鍵點快速創(chuàng)建特征向量,并用這些特征向量來識別圖像中的對象。

實例化ORB

orb = cv.ORB_create(nfeatures)

參數(shù):

  • nfeatures:特征點的最大數(shù)量

利用orb.detectAndCompute()檢測關(guān)鍵點并計算

kp, des = orb.detectAndCompute(gray, None)

參數(shù):

  • gray:進行關(guān)鍵點檢測的圖像(灰度圖像)

返回:

  • kp:關(guān)鍵點信息,包括位置,尺度,方向信息
  • des:關(guān)鍵點描述符,每個關(guān)鍵點BRIEF特征向量,二進制字符串。

將關(guān)鍵點檢測結(jié)果繪制在圖像上

cv.drawKeypoints(image, keypoints, outputimage, color, flags)

參數(shù):

  • image: 原始圖像
  • keypoints:關(guān)鍵點信息,將其繪制在圖像上
  • outputimage:輸出圖片,可以是原始圖像
  • color:顏色設(shè)置,通過修改(b,g,r)的值,更改畫筆的顏色,b=藍色,g=綠色,r=紅色。
    flags:繪圖功能的標識設(shè)置
  • cv2.DRAW_MATCHES_FLAGS_DEFAULT:創(chuàng)建輸出圖像矩陣,使用現(xiàn)存的輸出圖像繪制匹配對和特征點,對每一個關(guān)鍵點只繪制中間。
  • cv2.DRAW_MATCHES_FLAGS_DRAW_OVER_OUTIMG:不創(chuàng)建輸出圖像矩陣,而是在輸出圖像上繪制匹配對。
  • cv2.DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS:對每一個特征點繪制帶大小和方向的關(guān)鍵點圖形。
  • cv2.DRAW_MATCHES_FLAGS_NOT_DRAW_SINGLE_POINTS:單點的特征點不被繪制。
import cv2 as cv from matplotlib import pyplot as plt# 1.圖像讀取 img = cv.imread("1.jpg") gray = cv.cvtColor(img, cv.COLOR_BGR2GRAY)# 2.ORB角點檢測 # 2.1實例化ORB對象 orb = cv.ORB_create(nfeatures=1000)# 2.2 檢測關(guān)鍵點,并計算特征描述符 kp, des = orb.detectAndCompute(gray, None)print(des.shape)# 3.將關(guān)鍵點檢測在圖像上 img2 = cv.drawKeypoints(img, kp, None, flags=0) # 也可以添加 color 參數(shù)指定圖像顯示關(guān)鍵點的顏色,例如 img2 = cv.drawKeypoints(img, kp, None, color=(0, 0, 255), flags=0)# 4.繪制圖像 plt.figure(figsize=(10, 8), dpi=100) plt.imshow(img2[:, :, ::-1]) plt.xticks([]), plt.yticks([]) plt.show()

《新程序員》:云原生和全面數(shù)字化實踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的OpenCV ORB角点检测的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。