努力进行3D重建的步骤(Matlab)

问题描述 投票:1回答:3

我们被要求进行3D重建(博士学位的硕士模块),而我正在拔头发。我不确定是否遗漏了任何步骤,或者是否做错了步骤。我试图用谷歌搜索代码,并用我的代码替换其功能,以查看是否可以从中获得正确的结果,但是不能。

我将按照目前为止的步骤进行操作,希望你们中的一个可以告诉我我缺少明显的东西:

我正在使用的图像:http://imgur.com/a/UbshI

  • 加载左右校准图像,单击相应的点以获得P1和P2

  • 使用RQ解压缩得到K1和K2(以及R1,R2,t1,t2,但是我似乎在任何地方都没有使用它们。最初我尝试做R = R1 * R2',t = t2-t1到在将P1设置为规范(I | 0)之后创建新的P2,但这也不起作用。

  • 将P1设为标准(I | 0)

  • 使用RANSAC计算基本矩阵F以及对应的点im1,im2。

  • 获取点的像素颜色

  • 通过做K2'* F * K1得到基本矩阵E]

  • 从E获取4个不同的投影矩阵,然后选择右一个

  • 使用P1,P2,im1,im2进行三角剖分以获得3D点

  • 使用散点图绘制3D点,为它们提供该点像素的RGB值。

  • 我的成绩不理想:

  • http://imgur.com/OZXXBEC

    目前,由于我什么也没得到,我想选择最简单的方法,然后继续前进。仅供参考,我正在使用matlab。如果有人有任何建议,我真的很想听听他们的建议。

我们被要求进行3D重建(博士学位的硕士模块),而我正在拔头发。我不确定是否遗漏了任何步骤,或者是否做错了步骤。我试图用Google搜索代码,然后...

matlab 3d computer-vision matlab-cvst 3d-reconstruction
3个回答
1
投票

原来是奇怪的原因,它不起作用。我使用的是matlab的detectSURFFeatures,它给出了不正确的匹配对。我从不认为这是错的,但是我的一位同学有同样的问题。我将其更改为使用detectEigenMinFeatures,但效果很好!这是我现在的结果,虽然还不完美,但是要好得多:


0
投票

如果您已经有P1和P2,则可以简单地对两个图像中的匹配点对进行三角剖分。无需估计基本矩阵。


0
投票

我在重建3D图像时遇到问题。我已经尝试过使用标定进行多重重建,但是它不起作用。然后,还可以使用“从两个视图运动生成的结构”,但不幸的是,它仅适用于很少的点。谁能帮助我这个项目。我们可以找到经济协议。给我写电子邮件至[email protected]

© www.soinside.com 2019 - 2024. All rights reserved.