Official implementation of "LaS-Comp: Zero-shot 3D Completion with Latent–Spatial Consistency"
Weilong Yan, Haipeng Li, Hao Xu, Nianjin Ye, Yihao Ai, Shuaicheng Liu, Jingyu Hu
- [2026-04] 🎉 LaS-Comp is selected to do a poster presentation in CHINA3DV 2026!
- [2026-03] 🎉 Our proposed benchmark Omni-Comp3D is now available at Hugging Face!
- [2026-02] 📄 Our work is accepted by CVPR 2026, and paper is available on arXiv.
This project is tested under the following environment:
- Python: 3.10
- CUDA: 12.1
- PyTorch: 2.4.0 (compiled with CUDA 12.1)
- torchvision: 0.19.0
⚠️ Important: Please ensure your system CUDA version is 12.1.
Mismatched CUDA versions (e.g., 11.x or 12.3+) may cause errors withspconv,flash-attn, or rendering modules.
conda env create -f environment.yml
conda activate lascomppip install -r requirements.txt
python -c "import torch; print(torch.cuda.is_available())"
This project relies on several CUDA-dependent libraries:
spconv-cu121flash-attnnvdiffrastdiff-gaussian-rasterization
Some dependencies (e.g., xformers, kaolin) may require manual installation depending on your system.
- Release Omni-Comp3D dataset.
- Release code for TRELLIS.
- Release code for Direct3D-S2.
Following the official TRELLIS release, please download the pretrained checkpoints for image-large and text-xlarge, and place them under the ckpt/ directory. The directory structure should look like:
ckpt/
├── image-large/
├── text-xlarge/
└── clip/
The Omni-Comp3D benchmark is hosted on Hugging Face. It includes two parts:
- Omni-Comp3D: our proposed benchmark for comprehensive completion evaluation.
- samples: the evaluation samples following SDS-Complete, GenPC, ComPC.
You can access them here: 👉 Omni-Comp3D
Please place both Omni-Comp3D and samples in their appropriate locations within the project directory.
For custom partial inputs, you can run the project in either text-conditioned or image-conditioned mode.
python run_lascomp_text_condition_single.py \
--partial-path path/to/your/partial-shape \
--prompt "Your prompt" \
--dataset custom \
--yz-flip
python run_lascomp_image_condition_single.py \
--partial-path path/to/your/partial-shape \
--image-path path/to/your/image \
--dataset custom \
--yz-flip
--partial-pathspecifies the input partial 3D shape.--promptis used for the text-conditioned model.--image-pathis used for the image-conditioned model.--dataset customindicates that the input comes from your own custom data.--yz-flipis used for samples whose vertical axis is y. If your sample uses z as the default vertical axis, please use--no-yz-flipinstead.- You can adjust the hyperparameters to get better completion results.
To evaluate the model on the provided benchmarks, you can use the following scripts for different datasets.
python run_lascomp_text_condition_omnicomp.py
python run_lascomp_image_condition.py
or
python run_lascomp_text_condition.py
We sincerely thank TRELLIS, Direct3D-S2, ComPC, FlowChef, FlowDPS, and VoxHammer for their inspirational help to our work.
If you find our work or dataset helpful for your research, please consider citing:
@InProceedings{Yan_2026_CVPR,
author = {Yan, Weilong and Li, Haipeng and Xu, Hao and Ye, Nianjin and Ai, Yihao and Liu, Shuaicheng and Hu, Jingyu},
title = {LaS-Comp: Zero-shot 3D Completion with Latent-Spatial Consistency},
booktitle = {Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
month = {June},
year = {2026},
pages = {7588-7599}
}