更新时间:2021-07-30 来源:黑马程序员 浏览量:
在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 np
import cv2 as cv
from 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()
《图像处理OpenCV入门教程》课程导读
加QQ:2217622915,获取《图像处理OpenCV入门教程》全套视频教程+笔记+源码。
猜你喜欢:
全国13城校区全覆盖|黑马程序员AI大模型开发(Python),就近学习、全国就业
2026-04-08黑马程序员AI大模型开发(Python)|大厂共建+实战赋能,学完即具备企业项目能力
2026-04-08黑马程序员AI大模型开发(Python)|5阶段体系化教学,从入门到精通全覆盖
2026-04-08黑马程序员AI大模型开发(Python)|培养企业应用型人才,适配行业核心需求
2026-04-08黑马程序员AI智能应用开发|上市品牌背书,大厂联合研发,打造AI复合型人才
2026-04-08全国13城校区全覆盖|黑马程序员AI智能应用开发,就近学、就近就业
2026-04-08