Nodes/Atlas Camera/Atlas Apply Scale References ✅
ComfyUI Node

Atlas Apply Scale References ✅

The one-click yes to your VLM's guess

By mikejamesvfx·Created 3 months ago·Updated a day ago· 1
Atlas Apply Scale References ✅
  • solve
  • solve
  • camera_height_m
  • report
scale_references[]
confirmfalse
min_confidence0.00

A single photograph has no metric scale - a camera 1.6 m off the ground can't tell if it's looking at a dollhouse or a street until something with a known size is in frame. Atlas Apply Scale References ✅ is where the pack lets you (or a vision model) supply that known size, but with a referee in the middle. It takes scale-reference cues, and only actually rescales the camera when you flip the confirm switch.

The idea: LLMs never auto-promote

Scale cues come from AtlasVLMScaleCues, which runs a vision-language model over the photo and guesses real-world dimensions - "that doorway is about 2 m tall," "that car is ~4.5 m long," each with a confidence. That's a candidate, not a fact. This node's job is to keep the two separate:

  • confirm OFF (default) - references are recorded as candidates only. Nothing moves.
  • confirm ON - the solve's metric camera height is rescaling via single-view geometry, using whatever references cleared the confidence bar.

That confirm gate is the whole point of the node. VLM cues are suggestions; the toggle is the one-click approval. It's the same "advisory, artist decides" principle you'll see echoed across the pack's QA nodes.

What you actually set

  • scale_references - the JSON list of references (from AtlasVLMScaleCues or hand-written). Multiline string, defaults to [].
  • confirm - the approval switch described above. Off by default, on purpose.
  • min_confidence - a filter from 0 to 1. References whose confidence falls below it are dropped before anything is applied. Bump it when the VLM is being chatty about things it clearly can't see.

Outputs: the updated solve, a camera_height_m float (the camera's height off the ground after rescaling - handy for wiring into downstream checks), and a report that tells you what was adopted, the scale source, the confidence, and how many references made it through. The report is JSON-formatted and worth a glance: it'll tell you if a reference was silently dropped.

Where it fits

This lives in the pack's tiered scale cascade - the chain that goes from "assumed eye height" up to "measured and confirmed." It's the step right after the VLM makes its guesses and right before the scene's geometry and exports inherit the corrected scale. You'll usually wire AtlasVLMScaleCues → this node → the rest of your orient-and-scale stack.

One thing the node does not do: invent scale when the photo has nothing to anchor it. If every reference is low-confidence or absent, confirming just rescales on nothing and the report says so. For a stronger anchor on photos with people in them, the pack also ships AtlasFaceScaleReference (a face has a known size) and AtlasReferenceScaleSolve (an object standing on the ground pins scale with no assumptions at all). This node is the general-purpose gate for whatever cues you can produce.

Install is the usual pack clone-and-go; the VLM half wants a local Ollama/LM Studio or an OpenAI-compatible endpoint, but the apply half itself is pure Python and needs nothing.

CategoryAtlas/02 · Orient & Scale

Inputs (4)

NameTypeDefaultDescription
solveATLAS_SOLVE
scale_referencesSTRING[]JSON list of scale references (from AtlasVLMScaleCues).
confirmoptBOOLEANfalseConfirm to actually rescale the camera. Off = record candidates only.
min_confidenceoptFLOAT0.000–1

Outputs (3)

NameTypeDescription
solveATLAS_SOLVE
camera_height_mFLOAT
reportSTRING