Gimbal360: Canonicalizing Planar Diffusion for Spherical Panorama Completion

Single-image 360° panorama generation from an arbitrary perspective photograph.

arXiv Project Page Code Dataset

Model Weights

File Size Description
autolevel.pth 107 MB Geometry estimation model combining a pretrained SegNeXt-B backbone with a trained flow decoder and rigid filter.
pytorch_lora_weights.safetensors 171 MB Fine-tuned panorama-generation LoRA weights for FLUX.1-Fill-dev.

Usage

Option 1 — inference script (recommended). The inference script downloads both weights automatically from this repository on first run:

git clone https://github.com/Orange-3DV-Team/Gimbal360.git
cd Gimbal360

conda create -n gimbal360 python=3.10 -y
conda activate gimbal360
pip install -r requirements.txt

python inference.py \
  --image example/example.png \
  --prompt "a frozen, abandoned train car in a post-apocalyptic wasteland." \
  --resolution 960

Option 2 — download to a local folder and point the script at it:

hf download Orange-3DV-Team/Gimbal360 --local-dir ./ckpt

python inference.py \
  --image example/example.png \
  --prompt "a frozen, abandoned train car in a post-apocalyptic wasteland." \
  --ckpt_dir ./ckpt

Option 3 — fetch programmatically with huggingface_hub:

from huggingface_hub import hf_hub_download

autolevel_path = hf_hub_download("Orange-3DV-Team/Gimbal360", "autolevel.pth")
lora_path = hf_hub_download("Orange-3DV-Team/Gimbal360", "pytorch_lora_weights.safetensors")

The LoRA weights can also be used directly with any FLUX.1-Fill-dev pipeline via pipeline.load_lora_weights(lora_path).

Pipeline

  1. AutoLevel (autolevel.pth) estimates the camera geometry.
  2. The photo is projected onto an equirectangular canvas as conditioning, with an inpaint mask for the unknown regions.
  3. FLUX.1-Fill-dev + LoRA (pytorch_lora_weights.safetensors) inpaints the full 360° panorama.

Citation

If you find Gimbal360 useful for your research, please consider citing our paper:

@article{lu2026gimbal360,
  title={Gimbal360: Canonicalizing Planar Diffusion for Spherical Panorama Completion},
  author={Lu, Yuqin and Liu, Haofeng and Zhou, Yang and Dai, Yihua and Li, Guiqing and He, Shengfeng and Liang, Jun},
  journal={arXiv preprint arXiv:2603.23179},
  year={2026}
}

License

The LoRA weights are a derivative of FLUX.1-Fill-dev and are released under the FLUX.1-dev Non-Commercial License.


⭐ Found this useful? Smash that star on GitHub!

Every star fuels our open-source plans — Horizon360 dataset coming next.

Star on GitHub

Built with ❤️ by Orange Team

Downloads last month
5
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for Orange-3DV-Team/Gimbal360

Adapter
(196)
this model

Paper for Orange-3DV-Team/Gimbal360