【PoissonRecon】泊松表面重建

一、下载编译

git clone https://github.com/mkazhdan/PoissonRecon.git
cd PoissonRecon
make	# 编译

生成的可执行文件在PoissonRecon/Bin/Linux 文件夹

二、表面重建

使用生成的可执行文件进行表面重建

  • PoissonRecon: 通过求解泊松系统从一组带有法向的点云中进行三角网格重建(求解具有位置值约束的 3D 拉普拉斯系统)
  • SurfaceTrimmer: 根据逐点信号(per-vertex signal)来剔除低于给定阈值的三角面片(用于去除在低采样密度区域中生成的部分重建表面)

Python脚本文件:https://github.com/XYZ-qiyh/colmap_3d_recon/blob/main/poisson_surface_recon/poisson_surface_recon.py

三、实例

3.1 DTU数据集表面重建

As DTU dataset provides the ground truth point cloud with normal information, we (the authors of MVSNet) use the screened Poisson surface reconstruction (SPSR) to generate the mesh surface, and then render the mesh to each viewpoint to generate the depth maps for training.
The parameter, depth-of-tree is set to 11 in SPSR to acquire the high quality mesh result, the mesh trimming-factor is set to 9.5 to alleviate mesh artifacts in surface edge areas.

3.2 SceauxCastle场景表面重建

四、点云 vs Mesh

4.0 ply文件格式

  • 多视图三维重建领域得到的点云/Mesh模型一般为ply文件(比如colmap和PoissonRecon)
  • ply文件读写:tinyply或者是colmap/Poisson工程中的代码
  • ply文件支持表示点云和Mesh网格

4.1 colmap点云

对应上图中的Dense Model

4.2 表面网格


对应上图中的trimming factor=8.5

参考资料

  • PoissonRecon Github

  • Kazhdan, M., Hoppe, H.: Screened poisson surface reconstruction. ACM Transactions on Graphics (TOG) (2013)

posted @ 2022-07-08 10:20  达可奈特  阅读(2004)  评论(4编辑  收藏  举报