您好,登錄后才能下訂單哦!
這篇文章給大家介紹怎么在Opencv使用Stitcher類拼接圖像,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
Opencv中自帶的Stitcher類可以實現全景圖像,效果不錯。下邊的例子是Opencv Samples中的stitching.cpp的簡化,源文件可以在這個路徑里找到:
\opencv\sources\samples\cpp\stitching.cpp
#include <fstream> #include "opencv2/highgui/highgui.hpp" #include "opencv2/stitching/stitcher.hpp" #include <iostream> using namespace cv; using namespace std; vector<Mat> imgs; //保存拼接的原始圖像向量 //導入所有原始拼接圖像函數 void parseCmdArgs(int argc, char** argv); int main(int argc, char* argv[]) { //導入拼接圖像 parseCmdArgs(argc, argv); Mat pano; Stitcher stitcher = Stitcher::createDefault(false); Stitcher::Status status = stitcher.stitch(imgs, pano);//拼接 if (status != Stitcher::OK) //判斷拼接是否成功 { cout << "Can't stitch images, error code = " << int(status) << endl; return -1; } namedWindow("全景拼接",0); imshow("全景拼接",pano); imwrite("D:\\全景拼接.jpg",pano); waitKey(); return 0; } //導入所有原始拼接圖像函數 void parseCmdArgs(int argc, char** argv) { for(int i=1;i<argc;i++) { Mat img = imread(argv[i]); if (img.empty()) { cout << "Can't read image '" << argv[i] << "'\n"; } imgs.push_back(img); } }
關于怎么在Opencv使用Stitcher類拼接圖像就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。