Skip to content

The official implementation of FreeFix: Boosting 3D Gaussian Splatting via Fine-Tuning-Free Diffusion Models

License

Notifications You must be signed in to change notification settings

hyzhou404/FreeFix

Repository files navigation

FreeFix: Boosting 3D Gaussian Splatting via Fine-Tuning-Free Diffusion Models

Project Page arXiv Paper

Hongyu Zhou1, Zisen Saho2, Sheng Miao1, Pan Wang3, Dongfeng Bai3, Bingbing Liu3, Yiyi Liao1,†
1 Zhejiang University 2 University of Maryland, College Park 3 Huawei Corresponding Authors


This is the official project repository of the paper FreeFix: Boosting 3D Gaussian Splatting via Fine-Tuning-Free Diffusion Models.


Installation

First, install pixi:

curl -fsSL https://pixi.sh/install.sh | sh

Then, install the environment by running:

pixi install

Data Preparation

Download the sample data from here and save it to the data/ directory.

Reconstruction & Refine

1. Reconstruction

Train a 3D Gaussian Splatting model on the training views using the command:

python -m recon.trainer --data_dir <data_directory> --result_dir <result_directory>

# Example
python -m recon.trainer --data_dir data/mipnerf/bicycle_v2 --result_dir outputs/mipnerf/bicycle_v2 --data_factor 4
optional arguments --data_factor # downsample factor for the input images --prune_scale3d # scale3d threshold for pruning --partition # partition file for training and validation --strategy # training strategy, choose from ['mcmc', 'ddim']

The training results, including checkpoints and configuration files, will be saved in <result_directory>.

2. Refine

Refine the reconstructed model using a diffusion model (e.g., Flux). This step uses the pre-trained 3DGS model from the reconstruction step.

python -m ours.refine_by_flux --exp_cfg <exp_cfg_path>

# Example
python -m ours.refine_by_flux --exp_cfg exp_cfg/mipnerf/flux_bicycle_v2.yaml

Note:

  • Ensure that the base_dir in your experiment configuration file matches the <result_directory> from the reconstruction step.
  • You can find and customize configuration files in the exp_cfg/ directory.
  • Other refinement methods are also available (e.g., ours/refine_by_sdxl.py).

3. Evaluation

Evaluate the quantitative results (PSNR, SSIM, LPIPS) of both the reconstructed and refined models.

python -m ours.evaluation --exp_cfg <exp_cfg_path> --eval_test

# Example
python -m ours.evaluation --exp_cfg exp_cfg/mipnerf/flux_bicycle_v2.yaml --eval_test

The evaluation results will be saved in <result_directory>/<exp_name>/eval/:

  • 29999_test.json: Metrics for the original reconstruction (step 29999).
  • <exp_name>_test.json: Metrics for the refined model (e.g., flux_test.json).

Citation

If you find our paper and codes useful, please kindly cite us via:

@inproceedings{zhou2026freefix,
  title={FreeFix: Boosting 3D Gaussian Splatting via Fine-Tuning-Free Diffusion Models},
  author={Zhou, Hongyu and Shao, Zisen and Miao, Sheng and Wang, Pan and Bai, Dongfeng and Liu, Bingbing and Liao, Yiyi},
  booktitle={Thirteenth International Conference on 3D Vision},
  year={2026}
}

About

The official implementation of FreeFix: Boosting 3D Gaussian Splatting via Fine-Tuning-Free Diffusion Models

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published