Home

Awesome

GeoUDF (ICCV 2023)

GeoUDF: Surface Reconstruction from 3D Point Clouds via Geometry-guided Distance Representation [Project Page] [arxiv]

<div class="container"> <div class="row"> <div class="col-12 text-center" id="pipeline"> <img src='demo/input.gif' width=20%> <img src='demo/pu.gif' width=20%> <img src='demo/result.gif' width=20%> <img src='demo/gt.gif' width=20%> <center><div>Left to Right: Input, Upsampled, Ours, and GT.</div> </center> </div> </div> </div>

Requirement

pytorch             #1.10.0+cu111
pytorch3d           #0.6.2
open3d
trimesh
point-cloud-utils

Install pointnet2_ops

cd pointnet2_ops_lib   
python setup.py install

Data Preparation

Download the data from Google Drive (These shapes are processed by DISN, remove the interior and non-manifold structures.)
Then use the codes in scripts to get the dataset.

python scale_off.py   #data_path need to be changed   
python pds_pc.py   
python random_pc.py   
python sample.py

Training

python main_pu.py  --data_path=your_data_path
python main_rec.py --data_path=your_data_path

Note: You need to change the data path.

Evaluation

We provide the pretrained model in log_reconstruction_100.00_1.000_0.100 and demo data in test_data, and you can use them to generate meshes

python eval_rec.py --res=128 --input='test_data/shapenet.ply' --output='test_data/shapenet_mesh.ply'   
python eval_rec.py --res=128 --input='test_data/MGN.ply' --output='test_data/MGN_mesh.ply'   
python eval_rec.py --res=192 --input='test_data/scene.ply' --output='test_data/scene_mesh.ply' --scale=True

If the input point cloud is dense enough and it does not need to be upsampled, you can run the following code

python eval_rec_dense.py --res=128 --input=<path to input mesh> --output=<path to output mesh>

Citation

@inproceedings{ren2023geoudf,
title={Geoudf: Surface reconstruction from 3d point clouds via geometry-guided distance representation},
author={Ren, Siyu and Hou, Junhui and Chen, Xiaodong and He, Ying and Wang, Wenping},
booktitle={Proceedings of the IEEE/CVF International Conference on Computer Vision},
pages={14214--14224},
year={2023}}