首頁人工智能技術(shù)資訊正文

ORB算法在opencv中實(shí)現(xiàn)方法

更新時間:2021-07-30 來源:黑馬程序員 瀏覽量:

IT培訓(xùn)班

在OPenCV中實(shí)現(xiàn)ORB算法,使用的是:

1.實(shí)例化ORB

orb = cv.xfeatures2d.orb_create(nfeatures)

參數(shù):

·nfeatures: 特征點(diǎn)的最大數(shù)量

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

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

參數(shù):

·gray: 進(jìn)行關(guān)鍵點(diǎn)檢測的圖像,注意是灰度圖像

返回:

·kp: 關(guān)鍵點(diǎn)信息,包括位置,尺度,方向信息

·des: 關(guān)鍵點(diǎn)描述符,每個關(guān)鍵點(diǎn)BRIEF特征向量,二進(jìn)制字符串,

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

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

示例:

import numpy as np
import cv2 as cv
from matplotlib import pyplot as plt
# 1 圖像讀取
img = cv.imread('./image/tv.jpg')

# 2 ORB角點(diǎn)檢測
# 2.1 實(shí)例化ORB對象
orb = cv.ORB_create(nfeatures=500)
# 2.2 檢測關(guān)鍵點(diǎn),并計算特征描述符
kp,des = orb.detectAndCompute(img,None)

print(des.shape)

# 3 將關(guān)鍵點(diǎ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()

BRIEF算法04

《圖像處理OpenCV入門教程》課程導(dǎo)讀

加QQ:2217622915,獲取《圖像處理OpenCV入門教程》全套視頻教程+筆記+源碼



猜你喜歡:

OpenCV讀取視頻的方法?

OpenCV是干什么的?

OpenCV圖像疊加和圖像混合

認(rèn)識聚類算法

黑馬程序員人工智能培訓(xùn)課程

分享到:
在線咨詢 我要報名
和我們在線交談!