3D重建 - 如何从2D图像创建3D模型?

Jam*_*ack 37 language-agnostic 3d image-processing 3d-reconstruction 3d-model

如果我用相机拍照,所以我知道从相机到物体的距离,比如房子的比例模型,我想把它变成一个我可以操纵的3D模型,所以我可以发表评论房子的不同部分.

如果我坐下来考虑拍摄不止一张图片,标记方向和距离,我应该能够弄清楚如何做到这一点,但是,我想我会问是否有人有一些可能有助于解释更多的论文.

你解释的语言并不重要,因为我正在寻找最好的方法.

现在我正在考虑展示房子,然后用户可以为高度提供一些帮助,例如从相机到模型那部分顶部的距离,并且给予足够的这个就可以开始计算高度其余的,特别是如果有一个自上而下的图像,然后是四边角度的图片,以计算相对高度.

然后部件需要颜色不同,以帮助分离我期望的模型的各个部分.

Sil*_*eri 69

如上所述,问题非常困难,通常也称为多视图对象重建.通常通过解决每对连续图像的立体视图重建问题来接近它.

执行立体重建需要拍摄具有物理点的大量可见重叠的图像对.您需要找到相应的点,以便您可以使用三角测量来查找点的3D坐标.

极线几何

立体声重建通常通过首先校准相机设置来完成,这样您就可以使用对极几何理论来校正图像.这简化了查找对应点以及最终三角测量计算的过程.

如果你有:

可以计算出基本必要的矩阵只使用矩阵理论,并利用这些来纠正你的图片.这需要一些关于具有均匀坐标的坐标投影以及针孔相机模型相机矩阵的知识的理论.

如果您想要一种不需要摄像机参数且适用于未知摄像机设置的方法,您应该研究未校准立体声重建的方法.

通讯问题

找到相应的点是棘手的部分,需要您寻找相同亮度或颜色的点,或使用纹理图案或一些其他功能来识别成对图像中的相同点.通过在每个点周围的小区域中寻找最佳匹配,或者通过将图像作为整体考虑全局,本地技术可以在本地工作.

如果您已经有基本矩阵,它将允许您纠正图像,使得两个图像中的对应点将被约束为一条线(理论上).这有助于您使用更快的本地技术.

目前仍然没有理想的技术来解决通信问题,但可能的方法可能属于以下类别:

  • 手动选择:让人手动选择匹配点.
  • 自定义标记:放置标记或使用您可以轻松识别的特定图案/颜色.
  • 平方差的总和:取一个点周围的区域,找到另一个图像中最接近的整个匹配区域.
  • 图形切割:基于使用图论的优化的全局优化技术.

对于特定实施,您可以使用Google学术搜索查看当前的文献.以下是一篇被高度引用的论文,比较了各种技术: 密集双帧立体对应算法的分类和评估.

多视图重建

一旦得到相应的点,就可以使用极线几何理论进行三角测量计算,找到点的三维坐标.

然后对每对连续图像重复这整个立体重建(暗示您需要对图像的顺序或至少知道哪些图像具有许多重叠点).对于每对,您将计算不同的基本矩阵.

当然,由于每个步骤的噪音或不准确,您可能需要考虑如何以更全局的方式解决问题.例如,如果您有一系列围绕对象拍摄并形成循环的图像,则会提供额外的约束,可以使用像束调整之类的东西来提高早期步骤的准确性.

正如您所看到的,立体和多视图重建都远未解决问题,仍在积极研究中.你想以自动方式做的事情越少,问题就越明确,但即使在这些情况下,也需要相当多的理论才能开始.

备择方案

如果它在您想要做的限制范围内,我建议考虑使用专用硬件传感器(例如XBox的Kinect)而不是仅使用普通相机.这些传感器使用结构光,飞行时间或一些其他范围成像技术来生成深度图像,它们还可以与来自他们自己的相机的颜色数据相结合.它们实际上为您解决了单视图重建问题,并且通常包括用于拼接/组合多个视图的库和工具.

对极几何参考

在大多数理论中我的知识实际上都很薄,所以我能做的最好的事情就是进一步为你提供一些有用的参考资料(按照相关性顺序):

我不确定这一切是多么有用,但希望它包含足够有用的术语和参考资料以寻找更多资源.


smi*_*man 14

此问题称为摄影测量.

谷歌将为您提供无尽的参考,只要知道,如果你想自己推出,这是一个非常难的问题.


Ami*_*mir 13

研究取得了重大进展,现在可以从2D图像中获得漂亮的3D形状.例如,在我们最近的题为" 通过建模多视图深度图和通过深度生成网络的剪影合成3D形状 "的研究工作中,在解决从2D图像获得3D形状的问题上迈出了一大步.在我们的工作中,我们展示您不仅可以直接从2D到3D并获得良好的近似3D重建,还可以以有效的方式学习3D形状的分布并生成/合成3D形状.下面是我们工作的图像,显​​示我们甚至可以从单个轮廓或深度图(左侧)进行3D重建.地面实况3D形状显示在右侧.

在此输入图像描述

我们采取的方法有一些与认知科学或大脑工作方式有关的贡献:我们建立的模型为所有形状类别共享参数,而不是仅针对一个类别.此外,它还可以获得一致的表示形式,并在生成3D形状作为输出时将输入视图的不确定性考虑在内.因此,即使对于非常模糊的输入,它也能够自然地给出有意义的结果.如果你看一下我们论文的引用,就可以看到从2D图像到3D形状的更多进展.


hig*_*aro 5

查看代达罗斯项目,尽管该网站不包含包含有关解决方案的说明性信息的图库,但它发布了几篇有关工作方法的论文和信息。

我观看了该项目的主要研究人员之一(Roger Hubbold)的讲座,图像结果相当惊人!虽然这是一个复杂而漫长的问题。为了获得 3D 数据的近似值,需要考虑许多棘手的细节,例如来自墙壁表面的 3D 信息,其启发式工作如下:在场景的正常照明下拍摄一张照片,然后在完全启用闪光灯的情况下在相同位置重新拍摄照片,然后减去两张图像并将结果除以预先拍摄的闪光灯校准图像,对这个新结果应用盒式过滤器,然后进行后处理以估计深度值,整个本文详细解释了过程(该论文也在项目网站上发布/引用)