python opencv的orb特征检测(Oriented FAST and Rotated BRIEF)

官方文档:https://docs.opencv.org/4.10.0/d1/d89/tutorial_py_orb.html

SIFT/SURF/ORB对比

https://www.bilibili.com/video/BV1Yw411S7hH?spm_id_from=333.788.player.switch&vd_source=26bb43d70f463acac2b0cce092be2eaa&p=80

ORB代码

python 复制代码
import numpy as np
import cv2 as cv
from matplotlib import pyplot as plt

gray = cv.imread('12.png', cv.IMREAD_GRAYSCALE)
# https://docs.opencv.org/4.10.0/d1/d89/tutorial_py_orb.html
# Initiate ORB detector
orb = cv.ORB.create()

# find the keypoints with ORB
kp = orb.detect(gray, None)

# compute the descriptors with ORB
kp, des = orb.compute(gray, kp)
print(type(kp))
print(des.shape)
print(len(kp))
print(len(des))
print(des[0])
# draw only keypoints location,not size and orientation
img2 = cv.drawKeypoints(gray, kp, None, flags=cv.DRAW_MATCHES_FLAGS_NOT_DRAW_SINGLE_POINTS)
cv.imshow('orb', img2)
cv.waitKey(0)
cv.destroyAllWindows()
python 复制代码
<class 'tuple'>
(79, 32)
79
79
[ 96  32  25  96   4  77  65   0 104  32  32   8 151  19   0  16 128 148
  72   8   8  96 208   0 193 136   1  48  64   0  71  34]
相关推荐
Nebula_g31 分钟前
Java实现本地Socket通信(三)
java·开发语言·学习·socket·可视化
一水36 分钟前
java运行排错,新码旧jar
java·开发语言·jar
RFID固定资产管理系统1 小时前
公司RFID管理系统揭秘
大数据·python
Python+991 小时前
Java 编程语言入门指南
java·开发语言
IVEN_1 小时前
Python官方包、Conda、uv,应该怎么选
python
Wang's Blog1 小时前
Go-Zero项目开发40: 基于Jaeger的分布式链路跟踪实战
开发语言·分布式·golang
程序喵大人2 小时前
【C++进阶】STL容器与迭代器 - 05 map 和 set 为什么按键保持有序
开发语言·c++·容器·迭代器·stl
完美火龙篇 四月的友2 小时前
SkillOpt 架构拆解:把 Skill 文本当参数,用执行轨迹训练 Agent
开发语言·php
冻柠檬飞冰走茶2 小时前
PTA基础编程题目集 7-15 计算圆周率(C语言实现)
c语言·开发语言·数据结构·算法
凡尘——雨落凡尘2 小时前
Python列表索引越界IndexError问题深度解析与解决办法
python·indexerror·list index out of range