MCPcopy Index your code
hub / github.com/OpenImagingLab/4DSloMo

github.com/OpenImagingLab/4DSloMo @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
350 symbols 963 edges 79 files 74 documented · 21%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README
<img src="https://github.com/OpenImagingLab/4DSloMo/raw/main/docs/img/logo.png"  width="60%" >

4DSloMo: 4D Reconstruction for High Speed Scene with Asynchronous Capture

SIGGRAPH Asia 2025

Yutian Chen, Shi Guo, Tianshuo Yang, Lihe Ding, Xiuyuan Yu, Jinwei Gu, Tianfan Xue

       

<img src="https://github.com/OpenImagingLab/4DSloMo/raw/main/docs/img/teaser3.gif"  width="90%" >

TODO List

  • [ ] Upload Datasets (Expected before UTC 2025.09.1)

🛠️ Environment Setup

1. Clone Repository and Setup Environment

git clone https://github.com/OpenImagingLab/4DSloMo.git
cd 4DSloMo
conda create -n 4dslomo python=3.10 -y
conda activate 4dslomo
pip install torch==2.4.1 torchvision==0.19.1 torchaudio==2.4.1 --index-url https://download.pytorch.org/whl/cu118
pip install -r requirements.txt

2. Download Models

4DSloMo relies on two sets of weights. Please download them and place them in the ./checkpoints folder.

🚀 Quick Start

1. Initialize 4D Gaussian Splatting

python train.py --config ./configs/default.yaml --model_path ./output/dance_demo10 --source_path ./datasets/dance_demo10

2. Run Artifact-fix Model

# Render 4D Gaussian Splatting
python render.py --model_path ./output/dance_demo10/ --loaded_pth=./output/dance_demo10/chkpnt7000.pth

# Prepare data for artifact-fix model
python process_video.py --input_folder "./output/dance_demo10/test/ours_None/" --max_frames 33

# Inference artifact-fix model
## Note: 5 denoising steps can achieve about 80% of the final quality; use 50 steps for the best results.
CUDA_VISIBLE_DEVICES=0,1  torchrun --nproc_per_node=2 test_lora.py --input_folder ./output/dance_demo10 --output_folder ./datasets/dance_demo10_wan/ --model_path ./checkpoints/4DSloMo_LoRA.ckpt --num_inference_steps 5

3. Repair 4D Gaussian Splatting

# Prepare camera pose and timestamp 
cp ./datasets/dance_demo10/transforms_test_demo.json ./datasets/dance_demo10_wan/transforms_test.json; cp ./datasets/dance_demo10/transforms_train_stage2.json ./datasets/dance_demo10_wan/transforms_train.json; cp ./datasets/dance_demo10/points3d.ply ./datasets/dance_demo10_wan


python train.py --config ./configs/default.yaml --model_path ./output/dance_demo10_wan --source_path ./datasets/dance_demo10_wan

💗 Acknowledgments

Thanks to these great repositories: 4D Gaussian Splatting, Wan2.1 and DiffSynth-Studio.

🔗 Citation

If you find our work helpful, please cite it:

@article{chen20254dslomo,
    title={4DSloMo: 4D Reconstruction for High Speed Scene with Asynchronous Capture},
    author={Chen, Yutian and Guo, Shi and Yang, Tianshuo and Ding, Lihe and Yu, Xiuyuan and Gu, Jinwei and Xue, Tianfan},
    journal={arXiv preprint arXiv:2507.05163},
    year={2025}
}

Core symbols most depended-on inside this repo

cuda
called by 69
scene/cameras.py
read_next_bytes
called by 13
scene/colmap_loader.py
write
called by 10
utils/general_utils.py
backward
called by 10
pointops2/functions/pointops.py
do_system
called by 8
scripts/n3v2blender.py
extract
called by 6
arguments/__init__.py
save
called by 5
scene/__init__.py
focal2fov
called by 5
utils/graphics_utils.py

Shape

Function 150
Method 141
Class 59

Languages

Python84%
C++14%
TypeScript2%

Modules by API surface

pointops2/functions/pointops.py47 symbols
scene/gaussian_model.py38 symbols
FixModel.py20 symbols
pointops2/functions/pointops_ablation.py18 symbols
pointops2/functions/pointops2.py18 symbols
utils/general_utils.py17 symbols
lpipsPyTorch/modules/networks.py14 symbols
scene/colmap_loader.py12 symbols
arguments/__init__.py12 symbols
scene/dataset_readers.py11 symbols
scripts/n3v2blender.py10 symbols
gaussian_renderer/diff_gaussian_rasterization.py10 symbols

For agents

$ claude mcp add 4DSloMo \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact