Skip to content

complete3d/simeco

Repository files navigation

SIMECO: SIM(3)-Equivariant Shape Completion

NeurIPS 2025

Website arXiv Hugging Face Model Colab Demo License: MIT

3D shape completion methods typically assume scans are pre-aligned to a canonical frame. When such alignment is absent in real data, performance collapses. SIMECO is a SIM(3)-equivariant network that delivers generalizable shape completion.

teaser

Getting Started with the Demo 🤹‍♂️

You can run the demo in one of two ways:

  • Google Colab (Recommended): No installation needed; get started instantly in the cloud.
  • Local Linux: Set up the environment locally for GPU-accelerated inference.

Google Colab ☁️

To run the demo on Google Colab, simply click the badge above. Follow the instructions and execute the cells sequentially with a GPU instance. Please note that setting up the environment and installing dependencies will take about 1-2 minutes.

Local Linux 🖥️

Note

A CUDA-enabled GPU is required for local inference.

  1. Clone the repository:

    git clone https://github.com/submission13448/simeco.git && cd simeco && git lfs pull
  2. Create a conda environment with all dependencies (this will take approximately 5 minutes):

    conda env create -f build/environment.yml && conda activate simeco
  3. Run the inference code and choose the desired transformation mode (e.g., sim3, translation, scale or rotation). The results will be saved in the data/result directory.

    python inference.py --pc_file data/pc/2a05d684eeb9c1cfae2ca9bb680dd18b.npy --aug_mode sim3

Full Runs 🏃

Important

We're actively refactoring the codebase through December 2025. Expect occasional breaking changes.

If you have sufficient resources and want to train and evaluate SIMECO end-to-end, follow these steps:

Extra Dependencies ⚙️

Install the dependencies:

cd extensions/chamfer_dist
python setup.py install

Dataset 📂

We use the official PCN dataset. The directory structure should be:

│PCN/
├──train/
│  ├── complete
│  │   ├── 02691156
│  │   │   ├── 1a04e3eab45ca15dd86060f189eb133.pcd
│  │   │   ├── .......
│  │   ├── .......
│  ├── partial
│  │   ├── 02691156
│  │   │   ├── 1a04e3eab45ca15dd86060f189eb133
│  │   │   │   ├── 00.pcd
│  │   │   │   ├── 01.pcd
│  │   │   │   ├── .......
│  │   │   │   └── 07.pcd
│  │   │   ├── .......
│  │   ├── .......
├──test/
│  ├── complete
│  │   ├── .......
│  ├── partial
│  │   ├── .......
├──val/
│  ├── complete
│  │   ├── .......
│  ├── partial
│  │   ├── .......
├──PCN.json
└──category.txt

Evaluation 📊

To evaluate a pre-trained SIMECO model using a single GPU:

bash ./scripts/test.sh <GPU_IDS> \
    --ckpts <path_to_checkpoint> \
    --config <path_to_config.yaml> \
    --exp_name <experiment_name>

Example:

bash ./scripts/test.sh 0 \
    --ckpts ckpt/checkpoint.pth \
    --config cfgs/SIMECO.yaml \
    --exp_name SIMECO

Training 🏋️‍♀️

To train SIMECO from scratch, run with DDP or DP:

DistributedDataParallel (DDP)

bash ./scripts/dist_train.sh <NUM_GPU> <port> \
    --config <config> \
    --exp_name <name> \
    [--resume] \
    [--start_ckpts <path>]

Example:

bash ./scripts/dist_train.sh 2 12345 \
    --config cfgs/SIMECO.yaml \
    --exp_name SIMECO 

DataParallel (DP)

bash ./scripts/train.sh <GPUIDS> \
    --config <config> \
    --exp_name <name> \
    [--resume] \
    [--start_ckpts <path>]

Example:

bash ./scripts/train.sh 0 \
    --config cfgs/SIMECO.yaml \
    --exp_name SIMECO 

🎓 Citation

If you use SIMECO in a scientific work, please consider citing the paper:

[paper]  [arxiv]  [bibtex]

@article{wang2025simeco,
    title={Learning Generalizable Shape Completion with SIM(3) Equivariance}, 
    author={Yuqing Wang and Zhaiyu Chen and Xiao Xiang Zhu},
    journal={arXiv preprint arXiv:2509.26631},
    year={2025}
}

🙏 Acknowledgements

Part of our implementation is based on the PoinTr repository. We thank the authors for open-sourcing their great work.

About

Learning generalizable shape completion with SIM(3) equivariance [NeurIPS 2025]

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •