// OpenCV_Align.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
#include <iostream>
#include <opencv2/opencv.hpp>
#include <opencv2/xfeatures2d.hpp>
#include <opencv2/features2d.hpp>
using namespace std;
using namespace cv;
using namespace cv::xfeatures2d;
/**
*
* @param im1 对齐图像
* @param im2 模板图像
* @finalMatches 匹配图像
* @param im1Reg 输出图像
* @param h
*/
void alignImages(Mat &im1, Mat &im2, Mat &finalMatches,Mat &im1Reg, Mat &h)
{
// Convert images to grayscale
Mat im1Gray, im2Gray;
cvtColor(im1, im1Gray, COLOR_BGR2GRAY);
cvtColor(im2, im2Gray, COLOR_BGR2GRAY);
// Variables to store keypoints and descriptors
vector<KeyPoint> keypoints1, keypoints2;
Mat descriptors1, descriptors2;
Ptr<ORB> orb = ORB::create(1000); //最大数目感觉是对特征点计算Harris得分排序,这个数最好大一点,1000-5000
orb->setFastThreshold(20);//Fast角点检测中用来确定候选点和角点的比较数目阈值,这个数最好小一点,
ORB_GMS图像对齐
最新推荐文章于 2021-12-21 22:34:36 发布