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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

opencv实现几幅图像拼接成一整幅大图

發(fā)布時(shí)間:2024/8/23 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 opencv实现几幅图像拼接成一整幅大图 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

opencv實(shí)現(xiàn)幾幅圖像拼接成一整幅大圖

標(biāo)簽: 博客opencv 9846人閱讀 評論(3) 收藏 舉報(bào) 本文章已收錄于: 分類: opencv(14) 作者同類文章X

    開始嘗試merge函數(shù),具體如下:

    定義四個(gè)矩陣A,B,C,D。得到矩陣combine。

    [cpp] view plaincopy print?
  • <span?style="font-size:18px">#include<iostream>??
  • #include?<core/core.hpp>??
  • #include?<opencv2/imgproc/imgproc.hpp>??
  • #include?<opencv2/highgui/highgui.hpp>??
  • using?namespace?std;??
  • using?namespace?cv;??
  • int?main()??
  • {??
  • ????cv::Mat?a?=?(cv::Mat_<int>(2,2)<<1,2,3,4);??
  • ????cv::Mat?b?=?(cv::Mat_<int>(2,2)<<5,6,7,8);??
  • ????cv::Mat?c?=?(cv::Mat_<int>(2,2)<<9,10,11,12);??
  • ????cv::Mat?d?=?(cv::Mat_<int>(2,2)<<13,14,15,16);??
  • ????std::vector<cv::Mat>?v1;??
  • ????v1.push_back(a);??
  • ????v1.push_back(b);??
  • ????v1.push_back(c);??
  • ????v1.push_back(d);??
  • ????cv::Mat?combine;??
  • ????cv::merge(v1,?combine);??
  • ????cout?<<?"combine="?<<combine<<?endl;??
  • ????cout<<"Size?of?combine:"<<combine.size()<<endl;??
  • ??
  • ????system("pause");??
  • ????return?0;??
  • }</span>??
  • #include<iostream> #include <core/core.hpp> #include <opencv2/imgproc/imgproc.hpp> #include <opencv2/highgui/highgui.hpp> using namespace std; using namespace cv; int main() {cv::Mat a = (cv::Mat_<int>(2,2)<<1,2,3,4);cv::Mat b = (cv::Mat_<int>(2,2)<<5,6,7,8);cv::Mat c = (cv::Mat_<int>(2,2)<<9,10,11,12);cv::Mat d = (cv::Mat_<int>(2,2)<<13,14,15,16);std::vector<cv::Mat> v1;v1.push_back(a);v1.push_back(b);v1.push_back(c);v1.push_back(d);cv::Mat combine;cv::merge(v1, combine);cout << "combine=" <<combine<< endl;cout<<"Size of combine:"<<combine.size()<<endl;system("pause");return 0; }

    結(jié)果如下:


    顯然,不是我們需要的結(jié)果。

    嘗試hconcat和vconcat函數(shù),這兩個(gè)函數(shù)OpenCV本身并沒有。

    詳細(xì)介紹參見hconcat和vconcat。


    具體實(shí)現(xiàn)如下:

    [cpp] view plaincopy print?
  • <span?style="font-size:18px">#include?<iostream>??
  • #include?<core/core.hpp>??
  • #include?<opencv2/imgproc/imgproc.hpp>??
  • #include?<opencv2/highgui/highgui.hpp>??
  • using?namespace?std;??
  • using?namespace?cv;??
  • int?main()??
  • {??
  • ????cv::Mat?a?=?(cv::Mat_<int>(2,2)<<1,2,3,4);??
  • ????cv::Mat?b?=?(cv::Mat_<int>(2,2)<<5,6,7,8);??
  • ????cv::Mat?c?=?(cv::Mat_<int>(2,2)<<9,10,11,12);??
  • ????cv::Mat?d?=?(cv::Mat_<int>(2,2)<<13,14,15,16);??
  • ????Mat?combine,combine1,combine2;??
  • ????hconcat(a,b,combine1);??
  • ????hconcat(c,d,combine2);??
  • ????vconcat(combine1,combine2,combine);??
  • ????//namedWindow("Combine",CV_WINDOW_AUTOSIZE);??
  • ????//imshow("Combine",combine);??
  • ????cout<<"Combine=:"<<combine<<endl;??
  • ????system("pause");??
  • ????return?0;??
  • }</span>??
  • #include <iostream> #include <core/core.hpp> #include <opencv2/imgproc/imgproc.hpp> #include <opencv2/highgui/highgui.hpp> using namespace std; using namespace cv; int main() {cv::Mat a = (cv::Mat_<int>(2,2)<<1,2,3,4);cv::Mat b = (cv::Mat_<int>(2,2)<<5,6,7,8);cv::Mat c = (cv::Mat_<int>(2,2)<<9,10,11,12);cv::Mat d = (cv::Mat_<int>(2,2)<<13,14,15,16);Mat combine,combine1,combine2;hconcat(a,b,combine1);hconcat(c,d,combine2);vconcat(combine1,combine2,combine);//namedWindow("Combine",CV_WINDOW_AUTOSIZE);//imshow("Combine",combine);cout<<"Combine=:"<<combine<<endl;system("pause");return 0; }
    結(jié)果:


    圖像拼接實(shí)現(xiàn)

    [cpp] view plaincopy print?
  • #include?<iostream>??
  • #include?<core/core.hpp>??
  • #include?<opencv2/imgproc/imgproc.hpp>??
  • #include?<opencv2/highgui/highgui.hpp>??
  • using?namespace?std;??
  • using?namespace?cv;??
  • int?main()??
  • {??
  • ????//cv::Mat?a?=?(cv::Mat_<int>(2,2)<<1,2,3,4);??
  • ????//cv::Mat?b?=?(cv::Mat_<int>(2,2)<<5,6,7,8);??
  • ????//cv::Mat?c?=?(cv::Mat_<int>(2,2)<<9,10,11,12);??
  • ????//cv::Mat?d?=?(cv::Mat_<int>(2,2)<<13,14,15,16);??
  • ????Mat?combine,combine1,combine2;??
  • ????Mat?a=imread("1.jpg");??
  • ????Mat?b=imread("2.jpg");??
  • ????Mat?c=imread("3.jpg");??
  • ????Mat?d=imread("4.jpg");??
  • ????hconcat(a,b,combine1);??
  • ????hconcat(c,d,combine2);??
  • ????vconcat(combine1,combine2,combine);??
  • ????namedWindow("Combine",CV_WINDOW_AUTOSIZE);??
  • ????imshow("Combine",combine);??
  • ????waitKey(0);??
  • ????//cout<<"Combine=:"<<combine<<endl;??
  • ????system("pause");??
  • ????return?0;??
  • }??
  • #include <iostream> #include <core/core.hpp> #include <opencv2/imgproc/imgproc.hpp> #include <opencv2/highgui/highgui.hpp> using namespace std; using namespace cv; int main() {//cv::Mat a = (cv::Mat_<int>(2,2)<<1,2,3,4);//cv::Mat b = (cv::Mat_<int>(2,2)<<5,6,7,8);//cv::Mat c = (cv::Mat_<int>(2,2)<<9,10,11,12);//cv::Mat d = (cv::Mat_<int>(2,2)<<13,14,15,16);Mat combine,combine1,combine2;Mat a=imread("1.jpg");Mat b=imread("2.jpg");Mat c=imread("3.jpg");Mat d=imread("4.jpg");hconcat(a,b,combine1);hconcat(c,d,combine2);vconcat(combine1,combine2,combine);namedWindow("Combine",CV_WINDOW_AUTOSIZE);imshow("Combine",combine);waitKey(0);//cout<<"Combine=:"<<combine<<endl;system("pause");return 0; }

    圖像結(jié)果顯示如下:





    0
    0

    我的同類文章

    opencv(14) http://blog.csdn.net
    • ?圖像處理形態(tài)學(xué)橢圓形模板結(jié)構(gòu)元素的設(shè)計(jì)與實(shí)現(xiàn)2015-08-25閱讀533
    • ?OpenCV重復(fù)播放攝像頭視頻,循環(huán)播放攝像頭(視頻)文件,循環(huán)播放視頻中某一段視頻2014-12-02閱讀1171
    • ?OpenCV讀取多幅圖片,讀取系列圖片,讀取文件夾中指定圖像類型的系列圖片2014-11-30閱讀1787
    • ?邊緣檢測——Sobel2014-11-24閱讀385
    • ?利用OpenCV實(shí)現(xiàn)——目標(biāo)跟蹤方法(一)2014-08-30閱讀633
    • ?OpenCV遍歷文件夾中所有圖像2014-03-10閱讀1625
    • ?OpenCV Viz 3D虛擬空間模塊2015-04-30閱讀2232
    • ?OpenCV搜索文件夾中的圖片并保存圖片路徑和信息2014-11-30閱讀862
    • ?OpenCV圖像幾何變換——轉(zhuǎn)置,鏡像,倒置2014-11-30閱讀2742
    • ?直方圖均衡化2014-11-02閱讀664
    • ?保存OpenCV中Mat_<Vec3f>格式的圖像2014-04-14閱讀2069
    更多文章

    總結(jié)

    以上是生活随笔為你收集整理的opencv实现几幅图像拼接成一整幅大图的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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