OpenCV2.4 例程解析一 图像匹配
来源:互联网 发布:大数据会烂大街吗 编辑:程序博客网 时间:2024/05/21 06:14
以下程序来自OpenCV自带的例程:
- #include "stdafx.h"
- #include <stdio.h>
- #include "opencv2/core/core.hpp"
- #include "opencv2/features2d/features2d.hpp"
- #include "opencv2/highgui/highgui.hpp"
- #include "opencv2/nonfree/nonfree.hpp"
- using namespace cv;
- void help()
- {
- printf("\nThis program demonstrates using features2d detector, descriptor extractor and simple matcher\n"
- "Using the SURF desriptor:\n"
- "\n"
- "Usage:\n matcher_simple <image1> <image2>\n");
- }
- int main(int argc, char** argv)
- {
- //if(argc != 3)
- //{
- // help();
- // return -1;
- //}
- Mat img1 = imread("H:\\OpenCV2.4\\opencv\\samples\\c\\box.png");//(argv[1], CV_LOAD_IMAGE_GRAYSCALE);
- Mat img2 = imread("H:\\OpenCV2.4\\opencv\\samples\\c\\box_in_scene.png");//(argv[2], CV_LOAD_IMAGE_GRAYSCALE);
- if(img1.empty() || img2.empty())
- {
- printf("Can't read one of the images\n");
- return -1;
- }
- // detecting keypoints
- //检测关键点
- SurfFeatureDetector detector(400);
- vector<KeyPoint> keypoints1, keypoints2;
- detector.detect(img1, keypoints1);
- detector.detect(img2, keypoints2);
- // computing descriptors
- // 计算描述器
- SurfDescriptorExtractor extractor;
- Mat descriptors1, descriptors2;
- extractor.compute(img1, keypoints1, descriptors1);
- extractor.compute(img2, keypoints2, descriptors2);
- // matching descriptors
- //匹配描述器
- BFMatcher matcher(NORM_L2);
- vector<DMatch> matches;
- matcher.match(descriptors1, descriptors2, matches);
- // drawing the results
- // 画结果
- namedWindow("matches", 1);
- Mat img_matches;
- drawMatches(img1, keypoints1, img2, keypoints2, matches, img_matches);
- imshow("matches", img_matches);
- waitKey(0);
- return 0;
- }
此例程比较简单不做深入解释。
转载自 http://blog.csdn.net/hjh2005/article/details/7610794
- OpenCV2.4 例程解析一 图像匹配
- OpenCV2.4 例程解析一
- VS2010+Opencv2.3.1,例程实现 笔记之模板匹配
- OpenCV2.4 例程二 (floodFill填充)
- OpenCV2.4 例程四 (形态学操作)
- OpenCV2.4 例程五 (人脸检测)
- OpenCV2.4 例程六 (人眼检测)
- Opencv2.4 Python SURF 匹配
- opencv2-4 图像分割grabCut
- OpenCV2.4.4中调用SIFT特征检测器进行图像匹配
- OpenCV2.4.4中调用SIFT特征检测器进行图像匹配
- OpenCV2.4.4中调用SIFT特征检测器进行图像匹配
- opencv2.4.9图像特征点的提取和匹配
- OpenCV2.4.4中调用SIFT特征检测器进行图像匹配
- OpenCV2.4.4中调用SIFT特征检测器进行图像匹配
- OpenCV2.4.4中调用SIFT特征检测器进行图像匹配
- OpenCV2.4.4中调用SIFT特征检测器进行图像匹配
- opencv2 threshod函数例程
- 安卓开发UI界面
- Dijkstra: Till the Cows Come Home
- Boost智能指针——weak_ptr
- 英国游记——漫步在古老的牛津城
- Android之ScrollView嵌套ListView(牛)
- OpenCV2.4 例程解析一 图像匹配
- STL源码剖析---deque
- ARM指令和Thumb指令的区别
- UC数据显示Android安全严峻形势
- 检查应用程序是否存在已在运行的实例
- GPIO pins define
- 单点登录基本原理详述
- 最短过桥时间
- 推荐ExtJS4值得阅读的文章