繁体   English   中英

OpenCV拼接

[英]OpenCV Stitching

我非常需要opencv缝合模块的帮助。 我需要使用opencv中的“缝制”方法创建全景摄影。 下面是我到目前为止所拥有的..但是当我运行程序时出现此错误:需要更多图像。 是否有OpenCV专家可以帮助我解决此错误?

IplImage* img1 = cvLoadImage("/Users/myName/Desktop/image1.jpg", CV_LOAD_IMAGE_COLOR);
IplImage* img2 = cvLoadImage("/Users/myName/Desktop/image2.jpg", CV_LOAD_IMAGE_COLOR);

Mat vecImg1 = img1;
Mat vecImg2 = img2;

Mat allImages;

allImages.push_back(vecImg1);
allImages.push_back(vecImg2);

Mat outputImage;
Stitcher stitchImg = Stitcher::createDefault();
Stitcher::Status s = stitchImg.stitch(allImages, outputImage);
cout << "status: " << s << endl;

cvNamedWindow("stitch images", CV_WINDOW_AUTOSIZE);
cvShowImage("stitch images", &outputImage);
cvWaitKey(0);
cvDestroyWindow("stitch images");

我猜“ allImages”应该是vector<Mat>类型。

查看OpenCV示例“ samples / cpp / stitching.cpp”。

我实际上找到了解决方法。

在Xcode中的“构建设置”下,我将“编译器”类型从Apple LLVM更改为LLVM GCC 4.2,现在我的代码生成了全景图像!

谢谢!

在拼接器类功能中,opencv查找功能在图像之间进行匹配。 如果您输入的图像没有共同特征或具有很少的共同特征,则不会将这些图像视为相同视图的图像,因此需要更多图像

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM