在OpenCV里使用特征匹配
Opencv 匹配 特征 使用
2023-09-14 09:10:32 时间
特征匹配(Feature Matching)
前面我们花费了大量时间来学习特征检测和描述,其实主要的目的就是为了图像是否匹配的问题。在OpenCV里提供了两个匹配技术:Brute-Force和FLANN。
Brute-Force匹配算法是比较简单的,它首先从一个特征集合里取一个特征与另外一个特征集合里每个特征进行比较,如果发现最接近的特征就返回。要使用BF匹配,得用cv.BFMatcher()函数创建BFMatcher对象,创建对象时有两个可选的参数,第一个是normType,指明了怎么样度量距离,默认是cv.NORM_L2,比较适合SIFT和SURF等算法。对于二值字符串的算法ORB、BRIEF、BRISK等,应该使用 cv.NORM_HAMMING,使用Hamming距离来度量。如果ORB算法中WTA_K == 3 或 4,这是要使用 cv.NORM_HAMMING2参数。
第二个参数是布尔变量,crossCheck ,默认值是false。如果设置为true时,匹配成功时返回值value(i,j)表示A中第i个特征与B中第j个特征匹配。也就是说,两个集合中的两个特性应该相互匹配。它提供了一致的结果,是d.lowe在sift论文中提出的比率测试的一个很好的替代品。
当创建成功之后,就可以使用BFMatche
相关文章
- 【OpenCV入门教程之十二】OpenCV边缘检测:Canny算子,Sobel算子,Laplace算子,Scharr滤波器合辑
- OpenCV对图像遍历的高效方法
- linux下 opencv 和 ffmpeg安装「建议收藏」
- OpenCV-Python学习(7)—— OpenCV 轨迹栏操作和键盘响应操作
- OpenCV-Python学习(9)—— OpenCV 通道的分离与合并(cv.split、cv.merge、cv.mixChannels、cv.inRange)
- ubuntu配置opencv环境_opencv的安装与配置详细教程
- 【1】windows下安装OpenCV(4.3)+VS2017安装+opencv_contrib4.3.0配置
- OpenCV这么简单为啥不学——1.12、使用ssim函数对两张照片进行相似度分析
- 独家|OpenCV 1.7 离散傅里叶变换
- 独家|OpenCV1.9 如何利用OpenCV的parallel_for_并行化代码(附代码)
- opencv加载显示图像详解程序员
- Linux 安装OpenCV简易指南(linux安装opencv)
- 学习Linux下的OpenCV技术,实现图像处理与分析(opencvlinux)