OpenCV--特征匹配

OpenCV--特征匹配

代码和笔记

python 复制代码
import cv2
import numpy as np

"""
特征匹配
"""

"""
暴力特征匹配:使用第一组(第一幅图)中的一个特征描述子,使用一些距离计算与第二组中的所有其他特征匹配,返回最接近的一个。
"""
img1 = cv2.imread('./img/cat.jpeg')
img2 = cv2.imread('./img/ca2.jpeg')

# 创建特征检测对象
sift = cv2.SIFT_create()

# 计算描述子
kp1, des1 = sift.detectAndCompute(img1, None)
kp2, des2 = sift.detectAndCompute(img2, None)

# 暴力特征匹配
# 计算距离的方式:1. NORM_L1:绝对值距离,SIFT和SURF使用。2. NORM_L2:欧氏距离,SIFT和SURF使用。3. HAMMING:汉明距离。ORB使用
bf = cv2.BFMatcher(cv2.NORM_L2)

# 进行匹配
match = bf.match(des1, des2)

# 绘制特征匹配
result = cv2.drawMatches(img1, kp1, img2, kp2, match, None)

cv2.imshow('result', result)

"""
FLANN特征匹配:快速最近邻搜索包,算法集合,用的很少
"""

cv2.waitKey(0)
cv2.destroyAllWindows()
相关推荐
田里的水稻几秒前
IL_动作捕捉方式方法列述
人工智能·机器学习·机器人
AI模型调用笔记3 分钟前
OpenAI 暂停最强模型工具调用:一个 DNS 缺口暴露了 AI 沙箱的盲区
人工智能
火山引擎和TA的超级拍档们7 分钟前
地上铁×火山引擎:从埋点采集到万物Agent,AI 重构新能源物流全生命周期
人工智能·重构·火山引擎
phpsmarter7 分钟前
千问偷偷进村修改 token plan 重置周期这个事大家都知道了吧?
人工智能
硅谷秋水8 分钟前
Looped Transformer的来源和发展
人工智能·深度学习·机器学习·语言模型·transformer
郝学胜_神的一滴18 分钟前
AI 编程智能体 01:普通程序员的下一个逆天改命风口
人工智能·python
海宇AI18 分钟前
AI驱动的保险科技:基于海宇车辆出险记录核验构建自动化理赔审计引擎
人工智能·ai·工具分享
程序员阿黄22 分钟前
基于 Django 与 Vue 3 的 AI 实验室智能预约系统设计与实现
人工智能
润乾软件37 分钟前
LLM 规划,编译器生成:以工作流为契约的确定性 SQL 生成器
人工智能·sql·sqlazy
熊猫钓鱼>_>40 分钟前
Harmony Intelligence AI 开放能力深度解读 | 图像超分 + 文搜图:端侧视觉的“放大镜“与“搜索引擎“
人工智能·搜索引擎·harmonyos·鸿蒙·npu·图像超分·文搜图