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()
相关推荐
烈风逍遥7 小时前
基于 Vue 3+Spring Boot 构建 RAG 智能知识库
人工智能
机器之心7 小时前
1/10成本、Opus 4.7级表现,Cursor甩出了性价比之王Composer 2.5
人工智能·openai
机器之心7 小时前
从卖token到卖结果,这些公司开始让AI背KPI了
人工智能·openai
效能革命笔记7 小时前
AI模型平台选型指南:开源生态与国产算力如何优选
人工智能·开源
机器之心7 小时前
H100去哪儿了?
人工智能·openai
多年小白7 小时前
兆易创新分析
大数据·人工智能·ai·金融·区块链
小领航7 小时前
构建 MySQL MCP Server
人工智能·node.js
paperClub7 小时前
AACR 2026 · AI诊断:深度学习在肿瘤早期检测中的应用
人工智能·深度学习
碳基硅坊7 小时前
使用RAGFlow搭建本地知识库
人工智能·知识库·rag·ragflow
w1wi7 小时前
CRA 差距分析完全指南 | 合规落地第一步
网络·人工智能·安全