1

我研究过可以进行面部 3d 重建的 Metaio

视频在这里:https ://www.youtube.com/watch?v=Gq_YwW4KSjU

但我不打算这样做。我希望能够让用户扫描一个简单的小对象并从中创建一个 3d 模型。我不需要它有纹理或任何东西。据我所知,Metaio 不能做我正在寻找的东西,或者至少我找不到它的文档。

4

1 回答 1

2

由于您的目标是移动设备,因此您必须从不同角度拍摄多张照片,并使用本CSAIL 论文中使用的方法。

脚步

  1. 为了找到关键点,我会使用FAST或使用Laplacian of Gaussian的方法。其他选项包括SURFSIFT
  2. 确定点后,使用三角测量来查找点在 3D 中的位置。
  3. 使用所有点,创建一个点云。统一起来,我建议做一些类似于这个项目的事情,它使用粒子系统作为点。
  4. 您现在有了对象的 3D 重建!

现在,在实现每个步骤时,您可以重新发明轮子,或者在 Unity 中使用 C++ 原生插件。这使您能够使用已经实现了许多这些操作的OpenCV(SURF、SIFT,甚至可能是一些使用立体校准*的3D 重建类/方法)。

话虽如此…… Android 计算机视觉插件(也显然也称为“星夜”)似乎具有这些功能。但是,在 1.0 版中,仅支持 PrimeSense 传感器。见插件说明**

Starry Night 是一个易于使用的 Unity 插件,它提供高级 3D 计算机视觉处理功能,允许应用程序与现实世界进行交互。1.0 版提供 SLAM(同时定位和映射)功能,可用于 3D 重建、增强现实、机器人控制和许多其他应用。Starry Night 将连接到任何类型的 3D 传感器或立体相机。但是,1.0 版将仅与 PrimeSense 胭脂红传感器接口。

*注意:该教程在 matlab 中,但我认为概述部分可以很好地理解立体校准

**截至 2014 年 5 月 12 日

于 2014-05-13T02:09:30.553 回答