[Inference.Core] Zoe Depth Anything
Depth Anything's generalization with Zoe's metric head
- image
- IMAGE
This one splits the difference between this pack's other two depth veterans. Depth Anything's big win was generalization - trained on 62 million unlabeled images, it handles weird, out-of-distribution scenes far better than older models. ZoeDepth's contribution was a metric-depth head that outputs actual real-world scale instead of just relative ordering. Zoe Depth Anything bolts Zoe's metric head onto Depth Anything's more capable backbone, so you get Depth Anything's better generalization with metric-scale output on top - useful if you need real distances and don't want to fall back to the older, less generalizable Zoe model to get them.
How it works
Metric depth calibration doesn't transfer cleanly between confined indoor spaces and wide-open outdoor scenes - the distance ranges and scene geometry are just too different - so this node ships two separately calibrated heads and asks you which one applies. Pick wrong and the relative shape of the depth map is still fine (that part comes from the Depth Anything backbone), but the metric scaling will be off for your actual scene.
The inputs and outputs that matter
image- required, your source image.environment-indoor(default) oroutdoor. Set this to match your scene; it selects which metric calibration head runs.resolution(default 512) - working resolution.
One output: IMAGE, the depth map, wired into a depth ControlNet exactly like this pack's other depth nodes.
How to install it
ComfyUI Manager: search ComfyUI-Inference-Core-Nodes, install, restart. By hand:
cd ComfyUI/custom_nodes
git clone https://github.com/LykosAI/ComfyUI-Inference-Core-Nodes
then run install.py, or pip install -e .[cuda12] (or .[cuda] / .[rocm] / .[directml] / .[cpu]). Restart ComfyUI. Model weights download from Hugging Face the first time you run the node.
Common issues & troubleshooting
The one setting that actually matters here is environment, and it's easy to leave on the default and forget about it. If you're processing an outdoor landscape or street scene with environment still set to indoor, the depth relationships can come out compressed or distorted in ways that are subtle enough to miss at a glance but will show up as odd spatial warping in your final ControlNet result. If depth-conditioned outdoor generations look slightly "off" in a way you can't quite place, check this setting before anything else.
For pure ControlNet conditioning where you don't actually need metric scale, plain Depth Anything (this pack's other node, without the Zoe head) is simpler and one less setting to get wrong - reach for this node specifically when downstream you need real-world distance values, not just relative structure for conditioning.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| environmentopt | COMBO | indoor | 2 options: indoor, outdoor |
| resolutionopt | INT | 51264–2048 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| IMAGE | IMAGE | — |