Depth Inpaint (Seb)
A 3D photo machine with a missing engine
- image
- depth_image
- MESH
Depth Inpaint (Seb) is the most ambitious node in the Seb Nodes pack and the one you should read about before you install, because there's a catch you won't see in the README. The idea: you feed it a photo plus its depth map, and it reconstructs the scene as an actual 3D mesh - the kind of thing that lets you nudge the camera around a still image and see parallax, or export geometry. It's a port of the classic "3D photo inpainting" research pipeline (the one from the vt-vl-lab project), where the magic is that the parts of the photo hidden behind foreground objects get inpainted so they're there when you look around the corner.
The catch: the pack doesn't ship the three neural-network model files this node loads, doesn't download them, and doesn't document them. The code loads edge-model.pth, depth-model.pth, and color-model.pth from a checkpoints/ folder inside the node directory. The clone has no such folder. There's no download script, and the README doesn't even mention this node - it only documents four of the pack's six. So out of the box, Depth Inpaint (Seb) errors when it tries to load those weights.
If you've run the original 3d-photo-inpainting repo before, those checkpoint names will look familiar - they're the same trio. Drop compatible files in and the node will run. But "same names, same project" is doing a lot of work there, and nothing in the pack verifies versions.
How it works (when it runs)
The pipeline is real research-grade stuff. The depth map is inverted (1/depth) so white means near, then processed with sparse bilateral filtering to clean it up. The scene becomes a graph/mesh: edges are torn at depth discontinuities, the border can be extrapolated to extend the scene beyond the photo edges, and then three small nets inpaint the holes - one for edges, one for depth, one for color. The result is a MESH output (vertices, colors, faces) for whatever 3D node you have downstream.
Inputs that matter
imageanddepth_image- the photo and its grayscale depth map. The depth image comes from a depth estimator (MiDaS, Depth Anything, Marigold - see the KB's depth-estimation essay on which to pick).device-auto,cpu, orgpu. Auto picks CUDA if present. CPU is flagged in the code as "very slow" and it means it.depth_threshold- how aggressively depth discontinuities split the mesh; too low and foreground edges smear, too high and the mesh fragments.extrapolate_border/extrapolation_thickness- extend the scene beyond the photo's edges. On by default, which is why the resulting mesh can look like the photo has grown.background_thickness/redundant_number- tuning knobs for the background and mesh cleanup; leave them alone until the output looks wrong.
Installing it
Same as the rest of the pack - Manager search "Seb", or:
cd ComfyUI/custom_nodes
git clone https://github.com/cyberhirsch/seb_nodes
# restart ComfyUI
The dependency list here is the heaviest in the pack: opencv-python, transforms3d, networkx, scikit-image, plus matplotlib, all auto-installed on import. That's the mesh graph library tax, and it's normal - but it's a lot of machinery for one node.
The honest take
If your goal is "make my photo wiggle with parallax," there are far simpler routes in 2026, and this node is unfinished as shipped: undocumented, missing weights, no download path. It's a genuinely cool demo of what a depth map plus inpainting can do, and if you're already sitting on 3d-photo-inpainting checkpoints it's fun to poke at. For a beginner whose workflow just needs to run, I'd skip it until the author publishes the model files - or find a maintained 3D-photo node elsewhere.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| depth_image | IMAGE | — | |
| device | COMBO | 3 options: auto, cpu, gpu | |
| depth_threshold | FLOAT | 0.0400–0.2 | — |
| extrapolate_border | BOOLEAN | true | — |
| extrapolation_thickness | INT | 600–200 | — |
| background_thickness | INT | 7010–200 | — |
| redundant_number | INT | 120–100 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| MESH | MESH | — |