您的位置:首页 > 运维架构

关于全景(360)图片拼接的方法(Opencv3.0 Stitcher)

2018-03-19 11:36 465 查看
#PS:要转载请注明出处,本人版权所有

#PS:这个只是 《 我自己 》理解,如果和你的

#原则相冲突,请谅解,勿喷

最近有个项目就是要采集海康摄像头(可转动的摄像头)的数据做全景图片拼接,然后送到算法模块去检测人脸数目。

这里使用的是opencv 3.0+ 的Stitcher 类。

std::vector<cv::Mat> vecSrc;//t1.jpg,t2.jpg,t3.jpg
cv::Mat Dst;
Stitcher stitcher = Stitcher::createDefault(false);
Stitcher::Status status = stitcher.stitch(vecSrc, Dst);
if (status != Stitcher::OK){
cout << "图像相似度太差,拼接失败! "  << endl;

}
else {
imshow("out", Dst);//out.jpg

}


下面是原始图片和拼接后的图片:

t1



t2



t3



out



注意:这里的out图片可以看到边缘丢失了一部分,如果图片源大小不一致或者重叠部分不明显,则可能丢失更多。此外:图片需要相当一部分的重叠才能拼接,否则拼接失败。

问题:

合成后的图片拼接部分可能扭曲

#PS:请尊重原创,不喜勿喷

#PS:要转载请注明出处,本人版权所有.

有问题请留言,看到后我会第一时间回复
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: