OpenCV3 ORB特征检测与匹配 (程序实战)代码详解

ORB特征提取分为两步:
①FAST角点提取,找出图片中的角点、计算特征点的主方向为后续BRIEF描述子增加了旋转不变特性。
②BRIEF特征点描述。

OpenCV3中ORB特征检测主要分为五步:

–读取图像
–初始化
①检测Oriented FAST角点位置
②根据焦点位置计算BRIEF描述子
③使用Hamming距离对两幅图像中的描述子进行匹配
④匹配点对筛选
⑤绘制匹配结果

下面贴上代码详解

代码是《SLAM十四讲》中的,博主正在学习中,所以自己加上了注释,非常详细的~(大部分是自己查的,一小部分是借鉴别的博主的)

#include<iostream>
#include<opencv2/core/core.hpp>
#include<opencv2/features2d/features2d.hpp>
#include<opencv2/highgui/highgui.hpp>
//core.hpp该头文件是支持pencv2的主要头文件,core是opencv的主要头文件,包括数据结构,矩阵运算,数据变换,内存管理,文本和数学等功能
//highgui.hpp包括图形界面和视频图像处理的头文件
using namespace std;//namespace标准空间
using namespace cv;

int main(int argc,char**argv )  //argc是命令行总的参数个数 ,用来统计运行程序时送给命令行的参数个数
{
   
 if (argc !=3 )//判断运行该程序时,是否满足以下启动命令
 {
   
     cout<< "usage:feature_extraction image1 iamge2 "<<endl;
     return 1;
 }
//---读取图像
 Mat img_1 = imread( argv[1], CV_LOAD_IMAGE_COLOR );  //MAT为opencv中最主要的数据存储格式,该语句是以彩色通道读取图片的意思
 Mat img_1 = imread( argv[2], CV_LOAD_IMAGE_COLOR )
  • 5
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值