ComfyUI Panorama Stickers

This is a dedicated UI for FLUX.2 Klein 4B/9B 360 ERP Outpaint LoRA, which creates a 360 panorama from reference images.

The basic approach of this LoRA is outpainting.
An image where a panorama is unfolded into a rectangle is called an ERP (equirectangular panorama), and the idea here is that you can create a panorama by placing any image on an empty ERP and outpainting the remaining area.

However, simply placing an image on a rectangle does not make it look natural as an ERP.
Since an ERP is an unfolded panorama, the distortion changes depending on the location. Also, creating a control image while looking at an ERP and trying to imagine the finished panorama is not great UX.

This custom node

  • lets you step inside the panorama,
  • place reference images while looking at the scene as if you were actually there,
  • and output the result as an ERP.

That makes it much easier to create control images.
Then you can have FLUX.2 Klein edit the output ERP as-is to complete the panorama.


Node Overview

This custom node consists of four nodes.

  • Panorama Stickers: places images on the ERP canvas
  • Panorama Cutout: cuts out any viewpoint inside the panorama, like taking a photo
  • Panorama Preview: previews on the node itself
  • Panorama Seam Prep: prepares the left/right seam

Installation

nomadoor/ComfyUI-Panorama-Stickers

  • Install it from ComfyUI Manager.

Basic Canvas Controls

To keep it stable on both Legacy and Node 2.0, the main design is to operate it from a dedicated modal UI.

Panorama Preview can still be previewed on the node, but operation is designed around the modal UI.

Open the modal UI

  • Click the Open Stickers Editor button. (Cutout / Preview work the same way.)

Move viewpoint / Zoom

  • Left drag / middle drag to move the viewpoint
  • Use the mouse wheel to change FOV (zoom in / out)

Bottom-right buttons

  • Reset viewpoint
  • Toggle guide lines

Switch render mode

  • Use the top-left toggle to switch between Panorama and ERP

Drag direction

  • In the Inspector, go to UI SettingInverted to reverse it

Panorama Stickers

This is the editor for placing reference images on the ERP canvas.

Add images

  • Add with the + Image button, or via drag and drop
  • Right after adding, the image is placed near the center of the current view

Move / Scale / Rotate images

  • Drag the image to move it
  • When you select an image, handles appear, so you can transform it by grabbing each dot
    • Hold Shift while rotating to snap in 45-degree steps
  • You can also adjust it with the sliders in the Inspector

Stack order / Duplicate

  • When you select an image, a UI appears below it
  • Use the buttons to move it to the front or back
  • You can duplicate the same image with the duplicate button

Delete images

  • Use the delete button below the image, or press Delete
  • You can also remove everything with the Clear all button at the bottom of the canvas

Select images from the Inspector

  • If you choose an image from Image in the Inspector, the viewpoint moves so that image comes to the center

Panorama Cutout

This is the editor for stepping inside the panorama and cutting out any viewpoint as if you were taking a photo with a camera.

Add frames

  • Add one from + Add frame at the bottom
  • A preview appears in the top-right

Move / Scale / Rotate frames

  • The basics are the same as Panorama Stickers
  • You can also change the aspect ratio by dragging the edges

Switch to preset aspect ratios

  • From the UI shown when a frame is selected, you can choose 1:1, 3:2, and so on
  • Use Rotate 90° next to it to switch orientation

Move viewpoint to the frame

  • Use the 📷 button in the bottom UI to move the viewpoint to that frame

Panorama Preview

This node lets you preview directly on the node. It uses the same modal UI as the others, but with a narrower feature set.

On-node preview

  • Basically, you can operate it much like the modal UI, using drag and the mouse wheel

Fullscreen

  • Use the bottom-right button to enter fullscreen
  • Press Esc to exit

Panorama Seam Prep

No matter how well the model is trained, getting the left and right edges (the seam) of a panorama to match perfectly is difficult.
This node is used when you shift the image so the seam comes to the center, then do a final inpainting pass on that seam.

PanoramaSeamPrep.json
  • seam_width_px: sets the width of the mask
  • seam_center_offset_px: shifts the seam away from the center
  • mask_blur_px: blurs both ends of the mask
    • Use this when compositing the inpainted result back onto the original image

workflow

Let's actually use the LoRA and create an ERP panorama from reference images.

This is a known issue, but the LoRA barely works with Distilled models. I am still looking for a workaround, but for now please use it with the base model.

Model Download

📂ComfyUI/
└── 📂models/
    ├── 📂diffusion_models/
    │   ├── flux-2-klein-base-9b-fp8.safetensors
    │   └── flux-2-klein-base-4b.safetensors
    ├── 📂loras/
    │   ├── flux-2-klein-9B-360-erp-outpaint-lora_V1.safetensors
    │   └── flux-2-klein-4B-360-erp-outpaint-lora_V1.safetensors
    ├── 📂text_encoders/
    │   ├── qwen_3_8b.safetensors
    │   └── qwen_3_4b.safetensors
    └── 📂vae/
        └── flux2-vae.safetensors

flux-2-klein-9B-360-erp-outpaint

  • Use Panorama Stickers to place reference images and create the ERP
  • The prompt can be just “trigger words + a little extra”
Fill the green spaces according to the image. Outpaint as a seamless 360 equirectangular panorama (2:1). Keep the horizon level. Match left and right edges.

What gets generated is an ERP (2:1) image. It is hard to read as-is, so check or capture it with Panorama Preview or Panorama Cutout.

flux-2-klein-4B-360-erp-outpaint