合成全景图不起作用
Posted
技术标签:
【中文标题】合成全景图不起作用【英文标题】:Compose panorama doesn`t work 【发布时间】:2013-07-25 11:38:40 【问题描述】:我尝试使用不同的方式拼接图像,但出现以下错误...我尝试更改图像的格式或大小但没有任何反应...有什么想法吗?
错误:
错误:断言失败 (imgs.size() == imgs_.size()) 在未知函数中,文件 ......\src\opencv\modules\stitching\src\stitcher.cpp ,第 128 行
我的代码:
int main( int argc, char** argv )
Stitcher stitcher = Stitcher::createDefault();
Mat image11,image22;
Mat pano,output_frame;
vector<Mat> imgs,currentFrames;
// Load the images
Mat image1= imread( argv[1] );
Mat image2= imread( argv[2] );
printf("-- umwandlung works");
currentFrames.push_back(image1);
currentFrames.push_back(image2);
stitcher.estimateTransform( currentFrames );
stitcher.composePanorama(currentFrames, output_frame );
waitKey(0);
【问题讨论】:
为什么会有这么多未使用的变量?顺便说一句,检查您的imread
s 是否真的成功。例如,您可能正在尝试加载一些未在 OpenCV 中启用 jpg 支持的 jpg 图像。 Here 你找到了一个如何检查图片是否加载正确的例子。
【参考方案1】:
这是因为estimateTransform() 无法拼接您提供的所有图像。您可以检查使用 Stitcher::component() 缝合了多少图像,它返回一个整数向量,大小是您的目标。 因此,在您的情况下,如果拼接成功,它的大小应该是 2。
【讨论】:
【参考方案2】:这个问题和这个类似:
using compose panorama without estimateTransform
我刚刚在那里回答了你。
【讨论】:
以上是关于合成全景图不起作用的主要内容,如果未能解决你的问题,请参考以下文章
交互式多过滤 Dash Plotly GIS 地图——图不起作用
Cordova / Phonegap iOS Safari 和语音合成不起作用