前面 《串联匹配+opencv的stitching》虽然速度非常快,但容易漏图。应该是没有连成环。
这里加一个远距匹配:这个距离选19 至28之间,小了速度慢,大了容易漏过匹配。
//串联匹配+远距匹配
/*
1。选择图像来源(文件名)
1。默认文件名(list.txt)
或2。命令行选择列表名(以图标拖放的方式选择文件)
2。载入图像,检测特征,
3。串联匹配
4。远距匹配
*/
#include <opencv2/opencv.hpp>
#include <algorithm>
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include<string.h>
#include<fstream>
#include<time.h>
#pragma warning (disable:4244) //数据类型转换,可能会丢失数据 警告
using namespace std;
using namespace cv;
Point2f getOffsetStitch(int &p,const int id1,const int id2);
int setListGetNum(char* list);
int main(int argc, char *argv[])
{
clock_t start,finish;
double totaltime;
start=

通过串联匹配与特定距离范围的远距匹配组合,提高了图像拼接的完整性,但引入了速度上的挑战。在处理包含90张图片的场景时,尽管第一步能完成,但OpenCV的stitching步骤在光束平差法上耗时超过1个半小时。对于包含100张图片的情况,减少匹配关系后,第二步的处理时间降低到40分钟,揭示了匹配关系复杂性导致的效率问题。目前,第一步的效率仍有待提升。
最低0.47元/天 解锁文章
719

被折叠的 条评论
为什么被折叠?



