【发布时间】:2014-11-29 22:42:07
【问题描述】:
我正在尝试从 MATLAB 中的一组未校准照片进行 3D 重建。我使用 SIFT 来检测图像之间的特征点和匹配。我想先进行投影重建,然后使用自动校准将其更新为公制。
我知道如何通过计算基本矩阵、相机矩阵和三角测量来估计 2 张图像的 3D 点。现在假设我有 3 个图像,a、b 和 c。我计算图像 a 和 b 的相机矩阵和 3D 点。现在我想通过添加图像 c 来更新结构。我通过使用与图像 c 中的 2D 点匹配的已知 3D 点(从 a 和 b 计算)来估计相机矩阵,因为:
但是,当我重建 b 和 c 之间的 3D 点时,它们不会与来自 a 和 b 的现有 3D 点相加。我假设这是因为我不知道点的正确深度估计(由上述公式中的 s 描述)。
使用factorization method of Sturm and Triggs,我可以估计深度并找到结构和运动。但是,为了做到这一点,所有点都必须在所有视图中可见,而我的图像并非如此。如何估计在所有视图中不可见的点的深度?
【问题讨论】:
标签: matlab matlab-cvst 3d-reconstruction projective-geometry