Official repo for the paper "iLRM: An Iterative Large 3D Reconstruction Model"
This branch contains the code for the high-resolution (960x540) undistorted DL3DV dataset.
# create conda environment
conda create -n ilrm python=3.11 -y
conda activate ilrm
# install PyTorch (adjust cuda version according to your system)
pip install -r requirements.txtThe model checkpoints are host on HuggingFace.
| Model | View | PSNR | SSIM | LPIPS |
|---|---|---|---|---|
| undistored_dl3dv_16 | 16 | 22.91 | 0.766 | 0.295 |
| undistored_dl3dv_32 | 32 | 24.30 | 0.803 | 0.257 |
This checkpoint was trained with 16//32 input images. We recommend finetuning it when using a different number of input images.
For training and evaluation, we used the DL3DV dataset after applying undistortion preprocessing with this script, originally introduced in Long-LRM.
Download the DL3DV benchmark dataset from here, and apply undistortion preprocessing.
Update the inference.ckpt_path field in configs/ilrm.yaml with the pretrained model.
Update the entries in data/dl3dv_eval.txt to point to the correct processed dataset path.
You can save videos or images by changing the fields (inference.save_video or save_images) in configs/ilrm.yaml.
The number of finetuning (post-prediction optimization) iterations is set to 10 in inference.finetune_iter.
# inference
CUDA_VISIBLE_DEVICES=0 python inference.py --config configs/ilrm.yaml
# post-prediction optimization
CUDA_VISIBLE_DEVICES=0 python finetine.py --config configs/ilrm.yaml@article{kang2025ilrm,
title={iLRM: An Iterative Large 3D Reconstruction Model},
author={Kang, Gyeongjin and Nam, Seungtae and Sun, Xiangyu and Khamis, Sameh and Mohamed, Abdelrahman and Park, Eunbyung},
journal={arXiv preprint arXiv:2507.23277},
year={2025}
}
This branch is built on many amazing research works, thanks a lot to all the authors for sharing!