用OpenCV(Python)获取图像的SIFT特征

python 复制代码
import cv2 as cv
import numpy as np
import matplotlib.pyplot as plt
img=cv.imread("../Lena.png")
img_gray=cv.cvtColor(img,cv.COLOR_BGR2GRAY)


#创建一个SIFI对象
sift=cv.SIFT_create()

#使用SIFT对象在灰度图像img_gray中检测关键点,结果存储在变量kp中
kp=sift.detect(img_gray,None)

#计算特征
#des(1100,128),一共有1100个关键点,每个关键点勇(128)长度的特征向量表示
#使用SIFT对象计算img_gray中kp的关键点,
# 计算出的关键点和描述符分别存储在keypoints和des中
kp2,des=sift.compute(img_gray,kp)
print("+++++++++++++++++++?++++++++++++++")
print(np.array(kp).shape) #(1100,)
print(np.array(kp2).shape) #(1100,)
print(des.shape) #(1100,128)
print("+++++++++++++++++++?++++++++++++++")

img2=cv.drawKeypoints(img_gray,kp,img)

plt.imshow(img2,cmap="gray")
plt.title("drawKeyPoints")
plt.show()
相关推荐
用户8356290780515 小时前
Python 操作 PDF 附件:添加、查看与管理指南
后端·python
宇宙之一粟13 小时前
乐企版式文件生成平台
java·后端·python
学测绘的小杨1 天前
CompassFusion:一个从 GNSS 到 GNSS/INS 组合导航的独立工程包
python
zzzzzz3101 天前
当产品经理说这个很简单:我用Python自动化处理奇葩需求的实战指南
python·pycharm·产品经理
雪隐2 天前
个人电脑玩AI-06让5060 Ti给你打工——不光能画画,Qwen3-TTS还能学人说话,连我老板都信了!
人工智能·后端·python
兵慌码乱2 天前
面向桌面端的资产管理系统分层架构设计与核心模块实现
python·系统架构·sqlite·pyqt5·数据库设计·桌面应用开发·mvc架构
hboot2 天前
AI工程师第三课 - 机器学习基础
python·scikit-learn·kaggle
顾林海2 天前
Agent入门阶段-编程基础-Python:流程控制
python·agent·ai编程
呱呱复呱呱2 天前
Django CBV 源码解读:一个请求是怎么找到你的 get() 方法的
python·django
曲幽3 天前
刚部署的 LibreTranslate 频频翻车?我掏出了 20 年前的 StarDict 词典,用 FastAPI 搭了个本地词典翻译 API
python·fastapi·web·translate·goldendict·libretranslate·stardict·pystardict