OpenCV | sift函数使用——得到特征点

scale invariant feature transform (sift)

图像尺度空间

在一定的范围内,无论物体是大还是小,人眼都可以分辨出来,然而计算机要有相同的能力却很难,所以要让机器能够对物体在不同尺度下有一个统一的认知, 就需要考虑图像在不同的尺度下都存在的特点

lena.jpg

python 复制代码
import cv2
import numpy as np

img = cv2.imread('lena.jpg')
gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)

另外,需要查一下自己OpenCV的版本号,如果过低或者最新的都是可以用相关函数的。

python 复制代码
cv2.__version__

这里可以输出自己的版本号

得到特征点

python 复制代码
sift = cv2.xfeatures2d.SIFT_create()
kp = sift.detect(gray,None)
python 复制代码
img = cv2.drawKeypoints(gray,kp,img)
cv2.imshow('drawKeypoints',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

输出结果:

计算特征

python 复制代码
kp,des = sift.compute(gray,kp)
python 复制代码
print (np.array(kp).shape)

输出结果:

复制代码
(319,)
python 复制代码
des.shape

输出结果:

python 复制代码
(319, 128)
python 复制代码
des[0]

输出结果:

相关推荐
一心只读圣贤书5 小时前
AI 辅助前端 Feature Flag 治理:从灰度开关到实验复盘
前端·人工智能
逸模5 小时前
从2-3天到30分钟——逸模“秒级升维“如何重构出图效率
大数据·人工智能·工程·公装·连锁店
星辰_mya5 小时前
从简单罗列工具中看AI趋势
人工智能
李燚5 小时前
Checkpoint 源码:Agent 执行到一半怎么保存(第80篇-E66)
人工智能·ai·aigc·agent·checkpoint·rag·eino
何时梦醒5 小时前
🤖 Harness 工程:用 LLM as Judge + Best of N 打造自优化的 AI 代码生成流水线
前端·人工智能
Wang's Blog5 小时前
AI Agent白手起家58: 项目可观测性——用 LangSmith 实现全链路追踪
数据库·人工智能
小白狮ww5 小时前
小模型「扛」住自由运镜:InSpatio-World 开源实时 4D 模拟器
人工智能·ai
Alkaid20775 小时前
【手搓 Agent 第2.1关】搭建 Agent 进阶能力:RAG(上)
人工智能·agent
躺不平的理查德5 小时前
OpenCV Mat 备忘录
人工智能·opencv·计算机视觉
Days20505 小时前
剪纸风城市文旅宣传海报提示词分享
人工智能·ai作画·gpt-image