【问题标题】:C++ OpenCV sky image stitchingC++ OpenCV 天空图像拼接
【发布时间】:2013-03-13 17:18:26
【问题描述】:

一些背景: 大家好!我有一个涉及云成像的项目。我使用安装在旋转平台上的相机拍摄天空。然后我需要根据一些颜色阈值计算存在的云量。我可以为每张图片单独设置。为了完全实现我的目标,我需要对整个天空图像进行计算。所以我的问题在于拼接几张图像(大约 44-56 张图像)。我尝试在图像集的所有子集和一些子集上使用缝合功能,但它返回的图像不完整(有些图像没有缝合)。这可能是因为某些东西没有重叠,我不知道。输出图像也被奇怪地扭曲了(我实际上希望输出类似于鱼眼镜头拍摄的照片)。

实际问题: 所以现在我想弄清楚opencv拼接管道。这是一个链接: http://docs.opencv.org/modules/stitching/doc/introduction.html

根据我的研究,我认为这是我想做的。我想将所有图像映射为圆形,主要是因为我的相机旋转方式,或者其他使用相当简单的坐标变换的东西。所以我想我需要对图像进行某种固定的坐标变换。这就是他们所说的单应性吗?如果是这样,有人知道我该如何解决我的问题吗?在此之后,我相信我需要一个蒙版来混合图像。我需要一个固定的掩码,就像我想要的单应性掩码吗?

我是否正在走一条可能的道路?我有一些编程背景,但在图像处理方面几乎没有。我基本上迷路了。 T.T

【问题讨论】:

  • 真的需要拼接吗?您可以在您周围 360° 拍摄照片,单独处理它们,然后使用平均值。那应该是差不多的事情。如果你只是在计算云的百分比后转储图像,对我来说看起来浪费了很多计算能力。
  • 是的,我确实需要缝合。我需要对我收集的所有图像进行“易于阅读”的记录,以供将来参考。回溯我所有数据的最简单方法是通过拼接。这样我就可以查看在给定时间拍摄的整个天空的照片。

标签: c++ opencv


【解决方案1】:

“所以我认为我需要对图像进行某种固定坐标变换。这就是他们所说的单应性吗?”

是的,单应矩阵是原始图像与理想结果之间的变换矩阵。它会在透视图中扭曲图像,以便与其他图像拼接。

“如果是这样,有人知道我该如何解决我的问题吗?”

您提供的信息有限。如果您知道图片的顺序(哪个边界...行,列位置),这将大大缓解问题

如果您没有图像处理方面的经验,我建议您使用包含更多基本功能的拼接教程。幕后有一些重要的工作,实际上自己做并不难。

从这个例子开始。它拼接了两张图片。

http://ramsrigoutham.com/2012/11/22/panorama-image-stitching-in-opencv/

【讨论】:

  • 关于指定边框等的有趣部分。我会调查的!谢谢! :)
猜你喜欢
  • 2011-08-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-30
  • 2019-01-01
  • 2020-03-10
  • 2020-03-25
相关资源
最近更新 更多