Skip to content

zju3dv/Scal3R

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Scal3R logo Scal3R: Scalable Test-Time Training for Large-Scale 3D Reconstruction

CVPR 2026 Highlight

Tao Xie1,2, Peishan Yang1, Yudong Jin1, Yingfeng Cai2, Wei Yin2, Weiqiang Ren2, Qian Zhang2,
Wei Hua3, Sida Peng1, Xiaoyang Guo2†, Xiaowei Zhou1†

arXiv Safari Hugging Face

News

  • [2026-04-17] Inference acceleration is enabled.
  • [2026-04-10] The inference code is released.
  • [2026-04-10] Scal3R has been selected as a highlight paper for CVPR 2026.

Scal3R default teaser

Installation

Use the automated installation script:

bash scripts/install.sh

The script creates or reuses a conda environment named scal3r, installs the core dependencies from requirements.txt, and installs Scal3R in editable mode. By default it uses uv pip inside that conda environment, with a plain pip fallback available.

This release currently includes inference only; evaluation and benchmark code are not part of the public package yet.

For detailed installation instructions and PyTorch/CUDA guidance, see docs/install.md.

Download the required checkpoints to data/checkpoints/:

mkdir -p data/checkpoints
hf download xbillowy/Scal3R scal3r.pt --repo-type model --local-dir data/checkpoints
curl -L https://github.com/serizba/salad/releases/download/v1.0.0/dino_salad.ckpt -o data/checkpoints/dino_salad.ckpt

Usage

Run inference on a folder of images:

python -m scal3r.run --input_dir /path/to/images

You can also set an explicit tag or output directory:

python -m scal3r.run \
  --input_dir /path/to/images \
  --tag demo \
  --output_dir data/result/custom/demo

Important arguments:

  • --config: model config path. Defaults to configs/models/scal3r.yaml.
  • --tag: controls the default output directory name when --output_dir is not set.
  • --block_size and --overlap_size: control chunking for long-sequence inference.
  • --save_dpt and --save_xyz: control whether depth maps and point clouds are exported.
  • --offload_batches, --offload_outputs: control whether to offload batches and outputs to disk.

By default, inference results are written to data/result/custom/<tag>/, and runtime artifacts are written to data/result/custom/<tag>/runtime/. The result directory typically contains:

  • mat.txt for the predicted camera poses (camera-to-world transform matrix), each row is a raveled 4x4 matrix
  • intri.yml and extri.yml for EasyVolcap format camera parameters
  • depths/ when depth export is enabled
  • points/ when point-cloud export is enabled
  • runtime/ for runtime artifacts

TODOs

  • TODO: Release inference code.
  • TODO: Release evaluation code along with dataset preparation scripts.
  • TODO: Provide a simple viser viewer for the inference results.

Acknowledgments

This project builds on and benefits from several excellent open-source works, especially VGGT, VGGT-Long, and LaCT. We thank the authors for making their code and ideas publicly available.

Citation

@misc{xie2026scal3rscalabletesttimetraining,
      title={Scal3R: Scalable Test-Time Training for Large-Scale 3D Reconstruction}, 
      author={Tao Xie and Peishan Yang and Yudong Jin and Yingfeng Cai and Wei Yin and Weiqiang Ren and Qian Zhang and Wei Hua and Sida Peng and Xiaoyang Guo and Xiaowei Zhou},
      year={2026},
      eprint={2604.08542},
      archivePrefix={arXiv},
      primaryClass={cs.CV},
      url={https://arxiv.org/abs/2604.08542}, 
}

About

[CVPR 2026 (Highlight)] Scal3R: Scalable Test-Time Training for Large-Scale 3D Reconstruction

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors