基於opencv2的相片拼接(光束法平差)

2021-07-11 09:38:34 字數 1304 閱讀 6022

主要是供無人機的相片使用,原理這裡就不詳述了。

直接貼**(qt 4/5作為資料讀入支援):

#include 

#include

#include

#include

#include

using

namespace

std;

using

namespace cv;

int main(int argc, char *argv)

//argv[1] is output image filename

//在輸入資料夾內讀取所有未jpg的資料

//讀取所有影象資料儲存入cv::mat

cout

<

<2;

vector

imgs;

int i = 0;

for(i=0; i<_filelist.size i>

///qstring output_filename = qstring(argv[2]);

cout

<

<

///就這麼簡單的拼接

mat pano;

stitcher stitcher = stitcher::createdefault(false);

stitcher::status status = stitcher.stitch(imgs, pano);

/if (status != stitcher::ok)

//儲存結果

cv::imwrite(output_filename.tostdstring(), pano);

cout

<

0;}

結果:

Opencv2與opencv1的區別

一 opencv2與opencv1的區別 opencv1.0 版本於2006年面世,主要基於c語言。2009年發布opencv2,主要基於c 此時opencv庫被劃分成多個模組,這些模組被編譯成庫檔案後,位於lib資料夾中。主要有以下模組 版本1的結構見我的這篇blog opencv core 模組...

OpenCV2簡單的特徵匹配

特徵的匹配大致可以分為3個步驟 特徵的提取 計算特徵向量 特徵匹配 對於3個步驟,在opencv2中都進行了封裝。所有的特徵提取方法都實現featuredetector介面,descriptorextractor介面則封裝了對特徵向量 特徵描述符 的提取,而所有特徵向量的匹配都繼承了descript...

OpenCV2簡單的特徵匹配

特徵的匹配大致可以分為3個步驟 特徵的提取 計算特徵向量 特徵匹配 對於3個步驟,在opencv2中都進行了封裝。所有的特徵提取方法都實現featuredetector介面,descriptorextractor介面則封裝了對特徵向量 特徵描述符 的提取,而所有特徵向量的匹配都繼承了descript...