preprocess op• Datenarten: points → points
• Aufruf: import fullseye as fs; fs.ledger.statistical_outlier_removal(points, k: 'int' = 16, std_ratio: 'float' = 2.0) (die Implementierung direkt: import pcl_filter; pcl_filter.statistical_outlier_removal(points, k: 'int' = 16, std_ratio: 'float' = 2.0); aus dem Register: ops3d.get("statistical_outlier_removal"))
• Rückgabewert über das Register: fullseye.ledger.statistical_outlier_removal(...) liefert nur den Wert des deklarierten Out-Typs points (die zugrunde liegende Funktion gibt zusätzlich Hilfsinformationen zurück). Wird das Verworfene gebraucht, nutze fullseye.ledger.statistical_outlier_removal.raw(...) oder rufe pcl_filter.statistical_outlier_removal direkt auf.
• Rückgabe der Funktion: (kept, mask)
Entfernt Punkte, deren mittlerer Abstand zu ihren k Nachbarn global ein Ausreißer ist (statistische Ausreißerentfernung).
Misst für jeden Punkt "den mittleren Abstand zu den k nächsten Punkten (ohne sich selbst)" und verwirft Punkte, die mean + std_ratio*std dieser Verteilung über alle Punkte überschreiten, als Ausreißer. Wirksam zum Bereinigen spärlicher Ausreißer; Punkte auf dichten Flächen bleiben erhalten.
points : array_like, shape (N, 3)
Eingabe-Punktwolke.
k : int
Anzahl der Nachbarn (Standard 16). Bei wenigen Punkten intern auf n-1 gekürzt.
std_ratio : float
Großzügigkeit des Schwellwerts. Je größer, desto eher bleiben Punkte erhalten (schwächeres Entfernen).
filtered : ndarray, shape (M, 3)
Die verbliebenen Punkte (ursprüngliche Reihenfolge erhalten).
keep_mask : ndarray of bool, shape (N,)
Ob jeder Eingabepunkt erhalten bleibt (True=behalten). points[keep_mask] ist gleich filtered.
Bei Punktzahl < 3 ist keine Statistik möglich, daher bleiben alle Punkte erhalten (graceful).
• depth_sensors — Tiefensensoren — Messprinzipien, Werte realer Geräte, wie Messlücken entstehen
• 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.
• pcl_geodesic — py -3.11 examples_3d/pcl_geodesic.py
points als Eingabe)points_to_voxel · gaussians_to_voxel · estimate_point_normals · to_points · match_points_ncc · match_pca · moment_axes · icp_point2point_3d
preprocess)radius_outlier_removal · voxel_grid_downsample · mls_smooth · volume_downsample
*Provenance: pcl_filter.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.