Nodes/Reframe 360/Load 360 Image (URL)
ComfyUI Node

Load 360 Image (URL)

Pull a 360 panorama straight from a URL — no download dance

By senyilmaz·Created 2 months ago·Updated 2 months ago· 8
Load 360 Image (URL)
    • IMAGE
    url
    timeout30

    The name is almost the whole manual. Give this node a direct link to a 2:1 equirectangular panorama, it fetches the file over HTTP, and hands you an IMAGE tensor - ready to feed into the Reframe 360 Camera node or anything else that accepts an IMAGE. No downloading, no dragging into ComfyUI's input folder, no hunting for where the file landed. Paste, run, done.

    That's the point. 360 work is internet-native: CC0 HDRIs live on Poly Haven, street-level panoramas on Mapillary and KartaView, public panoramas on Wikimedia. The author's framing is that sourcing is your business - the node deliberately ships no Google Street View scraper, since Google's geo guidelines prohibit pulling that imagery out of their services. You paste a URL; that's the arrangement.

    How it works

    Under the hood it's a plain HTTP fetch: requests.get() with a ComfyUI-Reframe360 user-agent, HTTP status checked, body decoded with Pillow, converted to a float RGB tensor in 0–1. The invisible clever bit is that the node's change key is the URL - ComfyUI caches the result per URL, so re-running the graph doesn't re-download. It only refetches when the URL actually changes.

    The inputs that matter

    • url - the only one you'll touch. Must be a direct link to the image file, not a search page or an HTML gallery. A page URL gets you a requests error, not a panorama.
    • timeout - default 30 seconds, up to 300. Bump it for giant 8K panoramas on slow links.

    Output

    One IMAGE - a single-frame batch that wires straight into Reframe360's equirectangular socket. Don't expect a 2:1 check here; Reframe360 does that at render time and warns you.

    Install

    The pack is tiny - two nodes, no models to download. Install it once via ComfyUI Manager (search "Reframe 360") or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/senyilmaz/ComfyUI-Reframe360
    pip install -r ComfyUI-Reframe360/requirements.txt
    

    Then restart ComfyUI. Dependencies are torch, pillow, requests, numpy - you almost certainly already have all four in a stock install. One wrinkle: the README's clone command literally reads github.com/YOURNAME/... - a copy-paste typo. Use senyilmaz/ComfyUI-Reframe360 above.

    Gotchas

    • Pillow has to be able to read the file. PNG, JPEG, WebP all work. The raw .hdr / .exr downloads from Poly Haven will fail with "cannot identify image file" - grab Poly Haven's JPEG preview instead, or convert first. This catches everyone exactly once.
    • Nothing is cached to disk. Fresh ComfyUI session, fresh fetch. Offline won't work.
    • It fetches whatever you paste. Fine for CC0 sources; just don't hand it URLs you don't trust. Custom nodes run as you, and this one makes network calls in your name.

    That's the whole thing. It's a tiny utility, but it's the reason this pack never makes you babysit panorama files.

    CategoryReframe360

    Inputs (2)

    NameTypeDefaultDescription
    urlSTRING
    timeoutoptINT305–300

    Outputs (1)

    NameTypeDescription
    IMAGEIMAGE