--- license: apache-2.0 pipeline_tag: image-to-image --- # Generative Refocusing: Flexible Defocus Control from a Single Image This model, **Generative Refocusing**, presented in the paper [Generative Refocusing: Flexible Defocus Control from a Single Image](https://huggingface.co/papers/2512.16923), offers a novel two-step process for depth-of-field control from a single image. It uses DeblurNet to recover all-in-focus images from various inputs and BokehNet for creating controllable bokeh. The method leverages semi-supervised training, combining synthetic paired data with unpaired real bokeh images, and achieves state-of-the-art performance in defocus deblurring, bokeh synthesis, and refocusing benchmarks, allowing text-guided adjustments and custom aperture shapes. - [Paper (Hugging Face)](https://huggingface.co/papers/2512.16923) - [Project Page](https://generative-refocusing.github.io/) - [GitHub Repository](https://github.com/rayray9999/Genfocus) - [Hugging Face Demo](https://huggingface.co/spaces/nycu-cplab/Genfocus-Demo) - [YouTube Tutorial](https://youtu.be/CMh_jGDl-RE)
Demo Video
--- ## ⚡ Quick Start Follow the steps below to set up the environment and run the inference demo. ### 1. Installation Clone the repository: ```bash git clone git@github.com:rayray9999/Genfocus.git cd Genfocus ```` Environment setup: ```bash conda create -n Genfocus python=3.12 conda activate Genfocus ``` Install requirements: ```bash pip install -r requirements.txt ``` ### 2. Download Weights You can download the pre-trained models using the following commands. Ensure you are in the `Genfocus` root directory. ```bash # 1. Download main models to the root directory wget https://huggingface.co/nycu-cplab/Genfocus-Model/resolve/main/bokehNet.safetensors wget https://huggingface.co/nycu-cplab/Genfocus-Model/resolve/main/deblurNet.safetensors # 2. Setup checkpoints directory and download auxiliary model mkdir -p checkpoints cd checkpoints wget https://huggingface.co/nycu-cplab/Genfocus-Model/resolve/main/checkpoints/depth_pro.pt cd .. ``` ### 3. Run Gradio Demo Launch the interactive web interface locally: > **Note:** The project uses [FLUX.1-dev](https://huggingface.co/black-forest-labs/FLUX.1-dev). You must request access and authenticate locally before running the demo. ```bash python demo.py ``` The demo will be accessible at `http://127.0.0.1:7860` in your browser. ----- ## Citation If you find this project useful for your research, please consider citing: ```bibtex @article{Genfocus2025, title={Generative Refocusing: Flexible Defocus Control from a Single Image}, author={Tuan Mu, Chun-Wei and Huang, Jia-Bin and Liu, Yu-Lun}, journal={arXiv preprint arXiv:2512.16923}, year={2025} } ```