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()
相关推荐
hazy1k20 分钟前
K230基础-录放视频
网络·人工智能·stm32·单片机·嵌入式硬件·音视频·k230
陈敬雷-充电了么-CEO兼CTO24 分钟前
DeepSeek vs ChatGPT 技术架构、成本与场景全解析
人工智能·chatgpt·架构
MarvinP30 分钟前
《Seq2Time: Sequential Knowledge Transfer for Video LLMTemporal Grounding》
人工智能·计算机视觉
AORO20251 小时前
适合户外探险、物流、应急、工业,五款三防智能手机深度解析
网络·人工智能·5g·智能手机·制造·信息与通信
铉铉这波能秀2 小时前
如何在Android Studio中使用Gemini进行AI Coding
android·java·人工智能·ai·kotlin·app·android studio
rongqing20192 小时前
Google 智能体设计模式:探索与发现
人工智能·设计模式
黎燃2 小时前
两周以上天气可预报吗?——用 NVIDIA Earth-2 打开 AI 次季节预测新篇章
人工智能
源码师傅2 小时前
最新短视频AI智能营销询盘获客系统源码及搭建教程 源码开源可二次开发
人工智能·开源·短视频智能获客源码·获客询盘营销系统源码·获客系统源码·短视频智能营销获客系统
黎燃2 小时前
AI Agent 全景:从 LLM 到自主智能体系统的 7 层深度实践
人工智能
可触的未来,发芽的智生2 小时前
触摸未来2025.10.09:记忆的突围,从64个神经元到人工海马体神经网络
人工智能·python·神经网络·机器学习·架构