资源简介
特征点匹配Demo,可以实现特征点的匹配,使用SURF算法

代码片段和文件信息
//-----------------------------------【程序说明】----------------------------------------------
// 程序名称::《【OpenCV入门教程之十八】OpenCV仿射变换 & SURF特征点描述合辑》 博文配套源码 之 SURF特征描述
// 开发所用IDE版本:Visual Studio 2010
// 开发所用OpenCV版本: 2.4.9
// 2014年6月 Created by 浅墨
// 浅墨的微博:@浅墨_毛星云 http://weibo.com/1723155442
// 浅墨的知乎:http://www.zhihu.com/people/mao-xing-yun
// 浅墨的豆瓣:http://www.douban.com/people/53426472/
//----------------------------------------------------------------------------------------------
//-----------------------------------【头文件包含部分】---------------------------------------
// 描述:包含程序所依赖的头文件
//----------------------------------------------------------------------------------------------
#include “opencv2/core/core.hpp“
#include “opencv2/features2d/features2d.hpp“
#include “opencv2/highgui/highgui.hpp“
#include
#include
#include
//-----------------------------------【命名空间声明部分】--------------------------------------
// 描述:包含程序所使用的命名空间
//-----------------------------------------------------------------------------------------------
using namespace cv;
using namespace std;
//-----------------------------------【全局函数声明部分】--------------------------------------
// 描述:全局函数的声明
//-----------------------------------------------------------------------------------------------
static void ShowHelpText( );//输出帮助文字
//-----------------------------------【main( )函数】--------------------------------------------
// 描述:控制台应用程序的入口函数,我们的程序从这里开始执行
//-----------------------------------------------------------------------------------------------
int main( )
{
//【0】改变console字体颜色
system(“color 1A“);
//【0】显示欢迎和帮助文字
ShowHelpText( );
//【1】载入素材图
Mat srcImage1 = imread(“1.jpg“1);
Mat srcImage2 = imread(“2.jpg“1);
if( !srcImage1.data || !srcImage2.data )
{ printf(“读取图片错误,请确定目录下是否有imread函数指定的图片存在~! \n“); return false; }
imshow(“原始图1“srcImage1);
imshow(“原始图2“srcImage2);
//【2】使用SURF算子检测关键点
int minHessian =20000;//SURF算法中的hessian阈值
SurfFeatureDetector detector( minHessian );//定义一个SurfFeatureDetector(SURF) 特征检测类对象
std::vector keyPoint1 keyPoints2;//vector模板类,存放任意类型的动态数组
//【3】调用detect函数检测出SURF特征关键点,保存在vector容器中
detector.detect( srcImage1 keyPoint1 );
detector.detect( srcImage2 keyPoints2 );
//【4】计算描述符(特征向量)
SurfDescriptorExtractor extractor;
Mat descriptors1 descriptors2;
extractor.compute( srcImage1 keyPoint1 descriptors1 );
extractor.compute( srcImage2 keyPoints2 descriptors2 );
//【5】使用BruteForce进行匹配
// 实例化一个匹配器
BruteForceMatcher< L2 > matcher;
std::vector< DMatch > matches;
//匹配两幅图中的描述子(descriptors)
matcher.match( descriptors1 descriptors2 matches );
//【6】绘制从两个图像中匹配出的关键点
Mat imgMatches;
drawMatches( srcImage1 keyPoint1 srcImage2 keyPoints2 matches imgMatches );//进行绘制
//【7】显示效果图
imshow(“匹配图“ imgMatches );
waitKe
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-06-07 16:23 OpenCVdemo17\
目录 0 2018-06-07 16:22 OpenCVdemo17\OpenCVdemo17\
文件 114296 2018-06-07 15:25 OpenCVdemo17\OpenCVdemo17\1.jpg
文件 88845 2018-06-07 15:28 OpenCVdemo17\OpenCVdemo17\2.jpg
文件 5943 2018-06-07 15:22 OpenCVdemo17\OpenCVdemo17\OpenCVdemo17.vcxproj
文件 942 2014-06-19 14:58 OpenCVdemo17\OpenCVdemo17\OpenCVdemo17.vcxproj.filters
文件 143 2014-06-19 14:57 OpenCVdemo17\OpenCVdemo17\OpenCVdemo17.vcxproj.user
目录 0 2018-06-07 16:23 OpenCVdemo17\OpenCVdemo17\Release\
文件 114296 2018-06-07 15:25 OpenCVdemo17\OpenCVdemo17\Release\1.jpg
文件 88845 2018-06-07 15:28 OpenCVdemo17\OpenCVdemo17\Release\2.jpg
文件 16896 2018-06-07 16:22 OpenCVdemo17\OpenCVdemo17\Release\OpenCVdemo17.exe
文件 178 2018-06-07 16:22 OpenCVdemo17\OpenCVdemo17\Release\OpenCVdemo17.log
文件 961536 2018-06-07 16:22 OpenCVdemo17\OpenCVdemo17\Release\OpenCVdemo17.pdb
目录 0 2018-06-07 16:22 OpenCVdemo17\OpenCVdemo17\Release\OpenCVdemo17.tlog\
文件 16418 2018-06-07 16:22 OpenCVdemo17\OpenCVdemo17\Release\OpenCVdemo17.tlog\CL.read.1.tlog
文件 506 2018-06-07 16:22 OpenCVdemo17\OpenCVdemo17\Release\OpenCVdemo17.tlog\CL.write.1.tlog
文件 196 2018-06-07 16:22 OpenCVdemo17\OpenCVdemo17\Release\OpenCVdemo17.tlog\OpenCVdemo17.lastbuildstate
文件 738 2018-06-07 16:22 OpenCVdemo17\OpenCVdemo17\Release\OpenCVdemo17.tlog\cl.command.1.tlog
文件 2230 2018-06-07 16:22 OpenCVdemo17\OpenCVdemo17\Release\OpenCVdemo17.tlog\li
文件 5740 2018-06-07 16:22 OpenCVdemo17\OpenCVdemo17\Release\OpenCVdemo17.tlog\li
文件 500 2018-06-07 16:22 OpenCVdemo17\OpenCVdemo17\Release\OpenCVdemo17.tlog\li
文件 1253104 2018-06-07 16:22 OpenCVdemo17\OpenCVdemo17\Release\main.obj
文件 872448 2018-06-07 16:22 OpenCVdemo17\OpenCVdemo17\Release\vc120.pdb
文件 3876 2018-06-07 16:21 OpenCVdemo17\OpenCVdemo17\main.cpp
文件 14155776 2018-06-07 16:23 OpenCVdemo17\OpenCVdemo17.sdf
文件 903 2014-06-19 14:57 OpenCVdemo17\OpenCVdemo17.sln
文件 11776 2014-06-22 15:43 OpenCVdemo17\OpenCVdemo17.suo
文件 23040 2018-06-07 16:23 OpenCVdemo17\OpenCVdemo17.v12.suo
- 上一篇:结构力学求解器3D版试用60天
- 下一篇:HFSS17.2破解文件
相关资源
- 基于OpenCV的数字识别468815
- 使用opencv去掉二值化图像中黑色面积
- opencv环境配置
- win10 64位下编译的opencv4.5.5库,opencv
- NVIDIAOpticalFlowSDK-79c6cee80a2df9a196f20afd6
- opencv_contrib-3.4.0.zip
- opencv2.4.9源码分析——SIFT
- 用两个摄像头实现,双目标定,双目
- opencv_traincascade训练分类器,手势识别
- opencv3.0交叉编译用parallel.cpp
- 基于opencv的图像识别识别图像中的色
- 基于openCV的识别特定颜色区域
- 基于OpenCV的分水岭算法实现
- QT+opencv+OCR 身份证号码,银行卡号识别
- opencv视频特定颜色区域识别
- 把RGB转换为HSV和HSI然后根据黄色和蓝
- opencv视觉测距
- 基于Qt和opencv的身份证号码识别系统
- opencv_ffmpeg249.dll
- SfM稀疏三维点云重建--完整工程文件
- 基于opencv的数人头程序源代码
- 利用OpenCV中的Stitcher类实现全景图像拼
- opencv实现的sift算法源码,包含了图像
- openCV 上的小波变换
- 基于OPENCV的车牌识别系统设计
- 617张国内车牌60-17bmp图片用于OpenCV正样
- hog特征提取,c版本代码
- 基于Qt5.8+OpenCV3.2的Basler多相机触发开
- 基于Opencv实现的图像纠偏
- ImageWatch2019.vsix
评论
共有 条评论