1. Meshroom

Meshroom是一款基于AliceVision摄影测量计算机视觉框架的免费开源三维重建软件。

手机 三维重建 python 手机三维重建软件_开源

GitHub - alicevision/Meshroom: 3D Reconstruction Software

2. OpenMVG

OpenMVG库根据三维计算机视觉和结构的运动。OpenMVG提供了一个端到端的3D重建,它由图像框架组成,包含库、二进制文件和管道。

  • 这些库提供了简单的功能,如:图像处理,功能描述和匹配,功能跟踪,相机模型,多视图几何,旋转估计…
  • 该二进制文件解决了管道可能需要的单元任务:场景初始化、特征检测与匹配和运动重建的结构,并将重建的场景导出到其他多视点立体视觉框架中,以计算密集的点云或纹理网格。
  • 这些管道通过链接各种二进制文件来计算图像匹配关系

OpenMVG是用c++开发的,可以在Android、iOS、Linux、macOS和Windows上运行。

GitHub - openMVG/openMVG: open Multiple View Geometry library. Basis for 3D computer vision and Structure from Motion.

3. Awesome_3dreconstruction_list

与图像3D重建相关的论文和资源精选清单

https://github.com/openMVG/awesome_3DReconstruction_list

4. Awesome Point Cloud Analysis

关于点云分析(处理)的论文和数据集列表

GitHub - Yochengliu/awesome-point-cloud-analysis: A list of papers and datasets about point cloud analysis (processing)

5. OpenSfM

OpenSfM是一个用Python编写的运动库的结构。该库作为一个处理管道,用于从多个图像重建相机姿态和3D场景。它由运动结构的基本模块(特征检测/匹配,最小解算)组成,重点是构建一个健壮的、可伸缩的重建管道。它还集成了外部传感器(如GPS、加速计)测量,以实现地理定位和鲁棒性。提供了一个JavaScript查看器来预览模型和调试管道。

手机 三维重建 python 手机三维重建软件_手机 三维重建 python_02

GitHub - mapillary/OpenSfM: Open source Structure-from-Motion pipeline

6. Alicevision

手机 三维重建 python 手机三维重建软件_计算机视觉_03

AliceVision是摄影测量计算机视觉框架,可提供3D重建和相机跟踪算法。AliceVision旨在通过可测试,分析和重用的最新计算机视觉算法提供强大的软件基础。该项目是学术界和工业界合作的结果,旨在为尖端算法提供鲁棒性和生产使用所需的质量。

https://github.com/alicevision/AliceVision

7. OpenMVS

OpenMVS是面向计算机视觉的库,尤其是针对多视图立体重建社区的。尽管有针对运动结构管道(例如OpenMVG)的成熟而完整的开源项目,这些管道可以从输入的图像集中恢复相机的姿势和稀疏的3D点云,但没有一个解决摄影测量链的最后一部分-流。OpenMVS旨在通过提供一套完整的算法来恢复要重建场景的整个表面来填补这一空白。输入是一组摄影机姿势加上稀疏的点云,输出是带纹理的网格。该项目涉及的主要主题是:

  • 密集的点云重构,以获得尽可能完整,准确的点云
  • 网格重建,用于估计最能解释输入点云的网格表面
  • 网格细化可恢复所有精细细节
  • 网格纹理,用于计算清晰准确的纹理以对网格着色

GitHub - cdcseacave/openMVS: open Multi-View Stereo reconstruction library

8. Bundler_sfm

Bundler和CMVS-PMVS是进行多视图三维重建的一套非常有用的工具包。Bundler利用一系列无序图片生成场景的稀疏点云,并且估计每一幅图片的相机参数(内参和外参)。CMVS-PMVS可以利用已知图片以及图片对应相机参数(使用Bundler求得)来进行稠密的三维重建(dense reconstruction)。

GitHub - snavely/bundler_sfm: Bundler Structure from Motion Toolkit

9. Bundlefusion

手机 三维重建 python 手机三维重建软件_人工智能_04

使用在线表面重新整合进行实时全局一致的三维重建

https://github.com/niessner/BundleFusion

10. Scannet

ScanNet是一个RGB-D视频数据集,包含超过1500次扫描中的250万次视图,使用3D摄像机姿态、表面重建和实例级语义分段进行注释。

https://github.com/ScanNet/ScanNet

11. Softras

SoftRas是一个真正的可微分渲染框架,把渲染作为一个可微分的聚合过程,融合所有网格三角形的概率贡献相对于渲染像素。

https://github.com/ShichenLiu/SoftRas

12. Pifu

PIFu这篇工作是由 USC lihao 团队完成,被ICCV 2019接收为Oral。 该论文提出了一种Pixel-aligned Implicit Function(PIFu)的隐式表达,该表达将2D图像中的像素和该像素对应的人体的3D信息进行关联。 使用PIFu,该文提出了一种端到端的基于深度学习的方法(之后称作PIFu),输入是人体单张2D图片和对应的人体Mask图片,输出人体的三维模型和三维模型对应的纹理信息(即三维模型中每个顶点的RGB信息)。另外PIFu可以扩展到任意个视角的情况,但是在这种情况下,需要知道所使用视角对应的相机内外参。

手机 三维重建 python 手机三维重建软件_人工智能_05

https://github.com/shunsukesaito/PIFu

13. Matterport

用于RGB-D机器学习任务的非常棒的数据集。

https://github.com/niessner/Matterport

14. Kimera

Kimera是一个用于实时度量-语义同步定位和映射的c++库,它使用摄像机图像和惯性数据来构建环境的语义注释3D网格。Kimera是模块化的,支持ros,在CPU上运行。

https://github.com/MIT-SPARK/Kimera

15. Mvs Texturing

项目可以根据图像对3D重建进行纹理处理。该项目专注于使用运动和多视图立体技术的结构生成的3D重建。

https://github.com/nmoehrle/mvs-texturing

16. Livescan3d

LiveScan3D是一个实时三维重建系统,使用多个Kinect v2深度传感器同时进行三维重建。产生的3D重建形式是有色点云的形式,所有Kinect的点都放置在同一坐标系中。该系统的可能使用场景包括:

  • 同时从多个视点捕获对象的3D结构,
  • 捕获场景的“全景” 3D结构(通过使用多个传感器来扩展一个传感器的视场),
  • 将重建的点云流式传输到远程位置,
  • 通过让多个传感器捕获同一场景来提高单个传感器捕获的点云的密度。

https://github.com/MarekKowalski/LiveScan3D

17. Voxelhashing

Voxel Hashing的特点

    能够有效的压缩T-SDF的体积,在无需分层空间的数据结构的同时,保证表面的分辨率
    通过插入和更新操作,能够有效的把新的T-SDF数据融合到哈希表中,同时最小化哈希冲突
    在清理无效的体素块时,不需要重组数据结构,避免了巨大的开销
    在主机和GPU之间构建了轻量级的双向流,支持无边界重建
    通过标准光线投射和多边形操作,从数据结构中提取出等值面,以进行渲染和相机位姿估计

https://github.com/niessner/VoxelHashing

18. Layoutnet

从单个RGB图像重建三维房间布局

创新点:

  • 提出了根据 RGB 图像推断出布局的算法与LayoutNet网络,它适用于曼哈顿布局的透视图和全景图。基于消失点对齐全景图像之后,利用深度网络直接预测边界与角落和边界。通过预测的角落与边界图,利用几何约束生成3维布局。
  • 通过添加目标函数以直接回归 3D布局参数,从而更好地预测用于最终解决布局预测问题的边界和角落图。
  • 扩展了斯坦福「2D-3D」数据集的注释,提供了可用于后续工作的房间布局注释。

手机 三维重建 python 手机三维重建软件_手机 三维重建 python_06

https://github.com/zouchuhang/LayoutNet

19. Tsdf Fusion Python

这是一个轻量级的python脚本,可将多个颜色和深度图像融合到TSDF体积中,然后可以将其用于创建高质量的3D表面网格和点云。在Ubuntu 16.04上测试效果如下图:

手机 三维重建 python 手机三维重建软件_计算机视觉_07

https://github.com/andyzeng/tsdf-fusion-python

20. Intrinsic3d

通过外观和几何优化以及空间变化的照明实现高质量3D重构

手机 三维重建 python 手机三维重建软件_计算机视觉_08

https://github.com/NVlabs/intrinsic3d

21. Kimera Semantics

从2D数据进行实时3D语义重构

手机 三维重建 python 手机三维重建软件_手机 三维重建 python_09

https://github.com/MIT-SPARK/Kimera-Semantics

22. Awesome Holistic 3d

3D重建的论文和资源清单:

https://github.com/holistic-3d/awesome-holistic-3d

23. 3dreconstruction

使用Python3进行SFM的3D重建

GitHub - alyssaq/3Dreconstruction: 3D reconstruction, sfm with Python3

24. Structured3d

用于结构化3D建模的大型照片级数据集

手机 三维重建 python 手机三维重建软件_3D_10

GitHub - bertjiazheng/Structured3D: [ECCV'20] Structured3D: A Large Photo-realistic Dataset for Structured 3D Modeling

25. Synthesize3dviadepthorsil

通过对多视图深度图或轮廓建模来生成和重建3D形状

手机 三维重建 python 手机三维重建软件_手机 三维重建 python_11

GitHub - Amir-Arsalan/Synthesize3DviaDepthOrSil: [CVPR 2017] Generation and reconstruction of 3D shapes via modeling multi-view depth maps or silhouettes

26. Msn Point Cloud Completion

手机 三维重建 python 手机三维重建软件_开源_12

https://github.com/Colin97/MSN-Point-Cloud-Completion

27. Cnncomplete

用于训练体积深层神经网络以完成部分扫描的3D形状的代码

手机 三维重建 python 手机三维重建软件_人工智能_13

https://github.com/angeladai/cnncomplete

28. Reconstructiondataset

用于进行三维重建的一组图像

https://github.com/rperrot/ReconstructionDataSet

29. 3d Recgan Extended

从单个深度视图进行密集的3D对象重建

https://github.com/Yang7879/3D-RecGAN-extended

参考文献

一篇文章教你学会使用三维重建知名开源系统 - 知乎

论文解读 | PIFu: Pixel-Aligned Implicit Function for High-Resolution Clothed Human Digitization - 知乎