日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

c语言实现图像拼接程序,opencv2实现10张图像上下左右拼接融合分享!

發(fā)布時(shí)間:2024/7/19 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c语言实现图像拼接程序,opencv2实现10张图像上下左右拼接融合分享! 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

本文實(shí)例為大家分享了opencv2實(shí)現(xiàn)多張圖像上下左右拼接融合的具體代碼,供大家參考,具體內(nèi)容如下

在前面的“opencv2兩張圖像拼接融合_基于SURF特征提取”博文中,實(shí)現(xiàn)了兩張左右圖像的拼接融合,后來我也實(shí)現(xiàn)了多張圖像的拼接融合。但是opencv2自帶一種函數(shù),直接就實(shí)現(xiàn)了圖像的上下左右拼接。具體程序如下:

#include #include #include #include "opencv2/highgui/highgui.hpp" #include "opencv2/stitching/stitcher.hpp" using namespace std; using namespace cv; bool try_use_gpu = false; vector imgs; string result_name = "result.jpg"; int main(int argc, char* argv[]) //int _tmain(int argc, _TCHAR* argv[]) { // 讀取圖像 /*Mat img1 = imread("img1.jpg"); Mat img2 = imread("img2.jpg"); Mat img3 = imread("img3.jpg");*/ Mat image11= imread("1.jpg"); Mat image22= imread("2.jpg"); Mat image33= imread("3.jpg"); Mat image44= imread("4.jpg"); Mat image55= imread("5.jpg"); Mat image66= imread("6.jpg"); Mat image77= imread("7.jpg"); Mat image88= imread("8.jpg"); Mat image99= imread("9.jpg"); Mat image1010= imread("10.jpg"); if (!image11.data || !image22.data|| !image33.data|| !image44.data|| !image55.data || !image66.data|| !image77.data|| !image88.data|| !image99.data|| !image1010.data ) return 0; 因?yàn)槔蠋熃o的圖像太大,先處理下。處理后的圖像存放在imagei中。 Mat image1; Mat image2; Mat image3; Mat image4; Mat image5; Mat image6; Mat image7; Mat image8; Mat image9; Mat image10; resize(image11,image1,Size(400,300),0,0,CV_INTER_LINEAR); resize(image22,image2,Size(400,300),0,0,CV_INTER_LINEAR); resize(image33,image3,Size(400,300),0,0,CV_INTER_LINEAR); resize(image44,image4,Size(400,300),0,0,CV_INTER_LINEAR); resize(image55,image5,Size(400,300),0,0,CV_INTER_LINEAR); resize(image66,image6,Size(400,300),0,0,CV_INTER_LINEAR); resize(image77,image7,Size(400,300),0,0,CV_INTER_LINEAR); resize(image88,image8,Size(400,300),0,0,CV_INTER_LINEAR); resize(image99,image9,Size(400,300),0,0,CV_INTER_LINEAR); resize(image1010,image10,Size(400,300),0,0,CV_INTER_LINEAR); imgs.push_back(image1); imgs.push_back(image2); imgs.push_back(image3); imgs.push_back(image4); imgs.push_back(image5); imgs.push_back(image6); imgs.push_back(image7); imgs.push_back(image8); imgs.push_back(image9); imgs.push_back(image10); // 調(diào)用createDefault函數(shù)生成默認(rèn)的參數(shù) Stitcher stitcher = Stitcher::createDefault(try_use_gpu); // 使用stitch函數(shù)進(jìn)行拼接 Mat pano; Stitcher::Status status = stitcher.stitch(imgs, pano); // 保存結(jié)果圖像 imwrite(result_name, pano); // 顯示源圖像,和結(jié)果圖像 imshow("全景圖像", pano); waitKey(0); return 0; }

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持。

—-想了解opencv2實(shí)現(xiàn)10張圖像上下左右拼接融合分享!全部內(nèi)容且更多的C語言教程關(guān)注

本文來自網(wǎng)絡(luò)收集,不代表猴子技術(shù)宅立場,如涉及侵權(quán)請(qǐng)點(diǎn)擊右邊聯(lián)系管理員刪除。

如若轉(zhuǎn)載,請(qǐng)注明出處:https://www.ssfiction.com/c-cyuyankaifa/484016.html

總結(jié)

以上是生活随笔為你收集整理的c语言实现图像拼接程序,opencv2实现10张图像上下左右拼接融合分享!的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。