当前位置:   article > 正文

C++(opencv)简单拼接两幅图像_opencv 拼接两张图片

opencv 拼接两张图片

        原图像如下图所示,第一张图像的右侧与第二张图像的左侧有重合区域,通过图像拼接将两张图合成一张图。使用OpenCV的Stitcher函数实现。

           

          

 完整代码如下,亲测可用。

  1. #include < stdio.h >
  2. #include < opencv2\opencv.hpp >
  3. #include < opencv2\stitching.hpp >
  4. int main()
  5. {
  6. std::vector< cv::Mat > vImg;
  7. cv::Mat rImg;
  8. vImg.push_back(cv::imread("xiaoyuan1.bmp"));
  9. vImg.push_back(cv::imread("xiaoyuan2.bmp"));
  10. cv::Stitcher::Mode mode = cv::Stitcher::PANORAMA;
  11. cv::Ptr<cv::Stitcher> stitcher = cv::Stitcher::create(mode);
  12. unsigned long AAtime = 0, BBtime = 0; //check processing time
  13. AAtime = cv::getTickCount(); //check processing time
  14. cv::Mat mergeImage;
  15. bool status = stitcher->stitch(vImg, mergeImage);
  16. BBtime = cv::getTickCount(); //check processing time
  17. printf("Time consuming: %.2lf sec \n", (BBtime - AAtime) / cv::getTickFrequency()); //check processing time
  18. if (cv::Stitcher::OK == status)
  19. cv::imshow("Stitching Result", mergeImage);
  20. else
  21. printf("Stitching fail.");
  22. cv::waitKey(0);
  23. }

 

 

 

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/81389
推荐阅读
相关标签
  

闽ICP备14008679号