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


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

PS: 这个只是基于《我自己》的理解,
如果和你的原则及想法相冲突,请谅解,勿喷。

环境说明

  无

前言


  无





Opencv Stitcher


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

  这里使用的是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

rep_img

t2

rep_img
t3
rep_img
t4
rep_img

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

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





后记


  无

参考文献




打赏、订阅、收藏、丢香蕉、硬币,请关注公众号(攻城狮的搬砖之路)
qrc_img

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

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

PS: 有问题请留言,看到后我会第一时间回复。


文章作者: Sky
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Sky !
  目录