设为首页 加入收藏

TOP

OpenCV_局部图像特征的提取与匹配_源代码
2014-11-24 08:32:15 来源: 作者: 【 】 浏览:0
Tags:OpenCV_ 局部 图像 特征 提取 匹配 源代码

OpenCV的feature2d module中提供了从局部图像特征(Local image feature)的检测、特征向量(feature vector)的提取,到特征匹配的实现。其中的局部图像特征包括了常用的几种局部图像特征检测与描述算子,如FAST、SURF、SIFT、以及ORB。对于高维特征向量之间的匹配,OpenCV主要有两种方式:1)BruteForce穷举法;2)FLANN近似K近邻算法(包含了多种高维特征向量匹配的算法,例如随机森林等)。


feature2d module: http://docs.opencv.org/modules/features2d/doc/features2d.html


OpenCV FLANN: http://docs.opencv.org/modules/flann/doc/flann.html


FLANN: http://www.cs.ubc.ca/~mariusm/index.php/FLANN/FLANN


下面的这段代码实现了基于OpenCV的局部图像特征检测、特征向量提取、以及高维特征向量的匹配功能。


版本:OpenCV2.4.2


LocalFeature.h


// 局部图像特征提取与匹配
// Author: http://blog.csdn.net/icvpr

#ifndef _FEATURE_H_
#define _FEATURE_H_


#include
#include
#include


#include


using namespace cv;
using namespace std;


class Feature
{
public:
Feature();
~Feature();


Feature(const string& detectType, const string& extractType, const string& matchType);


public:

void detectKeypoints(const Mat& image, vector& keypoints); // 检测特征点
void extractDescriptors(const Mat& image, vector& keypoints, Mat& descriptor); // 提取特征向量
void bestMatch(const Mat& queryDescriptor, Mat& trainDescriptor, vector& matches); // 最近邻匹配
void knnMatch(const Mat& queryDescriptor, Mat& trainDescriptor, vector>& matches, int k); // K近邻匹配


void saveKeypoints(const Mat& image, const vector& keypoints, const string& saveFileName = ""); // 保存特征点
void saveMatches(const Mat& queryImage,
const vector& queryKeypoints,
const Mat& trainImage,
const vector& trainKeypoints,
const vector& matches,
const string& saveFileName = ""); // 保存匹配结果到图片中


private:
Ptr m_detector;
Ptr m_extractor;
Ptr m_matcher;


string m_detectType;
string m_extractType;
string m_matchType;


};



#endif


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇OpenCV_基于自适应背景更新的运动.. 下一篇OpenCV_图像旋转与缩放

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·MySQL 基础入门视频 (2025-12-26 23:20:22)
·小白入门:MySQL超详 (2025-12-26 23:20:19)
·关于 MySQL 数据库学 (2025-12-26 23:20:16)
·SOLVED: Ubuntu 24.0 (2025-12-26 22:51:53)
·Linux 常用命令最全 (2025-12-26 22:51:50)