fill_holes — 3D depth_denoise op

• Datenarten: depth → depth

• Aufruf: import fullseye as fs; fs.ledger.fill_holes(depth: 'np.ndarray', max_radius: 'float', *, invalid: 'float | None' = 0.0, max_iter: 'int | None' = None, rel_tol: 'float' = 1e-06) -> 'np.ndarray' (die Implementierung direkt: import depth_bilateral; depth_bilateral.fill_holes(depth: 'np.ndarray', max_radius: 'float', *, invalid: 'float | None' = 0.0, max_iter: 'int | None' = None, rel_tol: 'float' = 1e-06) -> 'np.ndarray'; aus dem Register: ops3d.get("fill_holes"))

Verwendung

Interpoliert ungültige Pixel (Löcher) aus ihren gültigen Nachbarn per harmonischer (Laplace-)Relaxation. → float64 (H,W).

Ein Lochpixel wird interpoliert, wenn sein Abstand zum nächsten gültigen Pixel höchstens max_radius beträgt; tiefere Löcher darüber hinaus werden nicht interpoliert und bleiben NaN (fail-closed). Die Interpolation iteriert den Mittelwert der 4er-Nachbarschaft (Dirichlet-Rand = die ursprünglichen gültigen Pixel); ein lineares Feld (Ebene) ist ein Fixpunkt diskreter harmonischer Funktionen, daher wird die Ebene mit der Konvergenz der Iteration exakt wiederhergestellt. Der Startwert ist der Wert des nächsten gültigen Pixels (EDT).

Der Standard von max_iter wird automatisch nach der Lochgröße gesetzt, rel_tol ist ein Konvergenzkriterium relativ zur Tiefenskala. Eine Eingabe, in der alle Pixel ungültig sind, bietet keinen Halt für die Interpolation und ergibt ValueError (fail-closed).

Hintergrundwissen (Physik und Konventionen hinter diesem Operator)

• blender_interop — Zusammen mit Blender — Form bauen, mit fullseye messen (Fallstricke: Achsen, Einheiten, Referenzdaten)

• depth_sensors — Tiefensensoren — Messprinzipien, Werte realer Geräte, wie Messlücken entstehen

Referenzen (Beispieldaten, Literatur)

• Katalog der Beispieldaten (Download-URLs / Lizenzen) — 2-D nutzt skimage.data (BSD/Public Domain) plus synthetische Bilder, 3-D nennt Download-URLs echter Datenquellen (Stanford, PDS, …).

• Herkunft und Literatur der Operatoren — die Quellen der Forschung/Verfahren, auf denen diese Operatorfamilie beruht.

Ausführbare Beispiele (verifizierte Samples, die diesen Operator wirklich aufrufen)

• depth_denoise — py -3.11 examples_3d/depth_denoise.py

Typkompatible Folge-Operatoren (nehmen depth als Eingabe)

depth_to_points · tsdf_from_depth · to_points · fuse_to_voxel · depth_to_organized_points · normals_from_depth · occlusion_edges · bearing_angle_image

Gleiche Kategorie (depth_denoise)

bilateral_filter_depth · joint_bilateral


*Provenance: depth_bilateral.py — 3D Operator-Registry. Diese Notiz wird von tools/opdocs.py md erzeugt (nicht von Hand bearbeiten).*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.