DAViD Depth Visualizer
Your depth map is gray and meaningless — this makes it pretty (and legible)
- depth_raw
- depth_visualization
A raw depth map is just numbers
A depth map out of the model is a single-channel grayscale image: closer is brighter, farther is darker, and honestly it's hard to read at a glance. DAViDDepthVisualizer is the utility that turns that into something you'd actually show someone - it applies a colormap of your choosing, with controls for range and orientation. It's a small node, and that's fine; it does one job and does it cleanly.
What it does mechanically
It takes a depth_raw IMAGE, optionally negates the values (invert), normalizes the range, then runs it through OpenCV's colormap function. If you feed it a three-channel image it converts to grayscale first, so it won't crash on a stray colored input - it'll just quietly desaturate it. Output is a single depth_visualization IMAGE, same batch size as what went in.
The settings you'll actually touch
colormap- the one you'll change. Nine options:TURBOis the default and the one the pack's own multi-task node uses (readable, high contrast);JETis the old classic everyone recognizes;GRAYgives you a clean single-channel height map you can genuinely use; the rest (HSV,VIRIDIS,PLASMA,INFERNO,MAGMA,BONE) are Matplotlib refugees for when you want a specific look.min_depth/max_depth- set these withnormalizeon to lock the mapping range instead of letting values auto-stretch. Default 0 to 1.invert- flips near/far. Some pipelines want white = far.normalize- leave it on unless you know your depth scale and want raw values.
Where the raw depth comes from - read this
Here's the honest part: this pack's own DAViDMultiTask node outputs its depth already TURBO-colored, so this visualizer's natural input is single-channel raw depth - the pack's individual per-task depth models, or a depth map from any other source (Depth Anything, Marigold, comfyui_controlnet_aux preprocessors). Feed it the multi-task node's colored output anyway and it'll desaturate and recolor it, which is a perfectly good way to switch colormaps on the same data. It's a genuinely thin utility node, and that's okay - grab it when you want a specific colormap or a printable grayscale version of your depth.
Same pack, same install
This node ships in AIWarper's ComfyUI-DAViD pack alongside the multi-task node, so the install is the shared one:
cd ComfyUI/custom_nodes
git clone https://github.com/AIWarper/ComfyUI-DAViD
pip install onnxruntime-gpu
It needs no model of its own - it's pure post-processing - but the pack's models live in ComfyUI/models/david if you're using the multi-task node too. Restart ComfyUI and it's under DAViD/Utils.
Troubleshooting
If the output is one solid slab of color, your min_depth/max_depth range is degenerate (min ≈ max) or you turned normalize off on values that fall outside 0–1 and everything clipped. Reset the range or flip normalize back on. For best results feed it a true single-channel map rather than an already-colored one.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| depth_raw | IMAGE | — | |
| colormap | COMBO | TURBO | 9 options: TURBO, JET, HSV, VIRIDIS, PLASMA, INFERNO, +3 |
| invertopt | BOOLEAN | false | — |
| normalizeopt | BOOLEAN | true | — |
| min_depthopt | FLOAT | 0.0-10–10 | — |
| max_depthopt | FLOAT | 1.0-10–10 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| depth_visualization | IMAGE | — |