ORB算法在opencv中实现方法

在OPenCV中实现ORB算法,使用的是:

1.实例化ORB

orb = cv.xfeatures2d.orb_create(nfeatures)

参数:

·nfeatures: 特征点的最大数量

2.利用orb.detectAndCompute()检测关键点并计算

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

参数:

·gray: 进行关键点检测的图像,注意是灰度图像

返回:

·kp: 关键点信息,包括位置,尺度,方向信息

·des: 关键点描述符,每个关键点BRIEF特征向量,二进制字符串,

3.将关键点检测结果绘制在图像上

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

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

示例:

import numpy as npimport cv2 as cvfrom matplotlib import pyplot as plt# 1 图像读取img = cv.imread('./image/tv.jpg')# 2 ORB角点检测# 2.1 实例化ORB对象orb = cv.ORB_create(nfeatures=500)# 2.2 检测关键点,并计算特征描述符kp,des = orb.detectAndCompute(img,None)print(des.shape)# 3 将关键点绘制在图像上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()

ORB算法在opencv中实现方法

本文来自投稿,不代表科技代码立场,如若转载,请注明出处https://www.cwhello.com/367096.html

如有侵犯您的合法权益请发邮件951076433@qq.com联系删除

(0)
上一篇 2023年8月29日 16:23
下一篇 2023年8月30日 07:30

相关推荐

联系我们

QQ:951076433

在线咨询:点击这里给我发消息邮件:951076433@qq.com工作时间:周一至周五,9:30-18:30,节假日休息