vol_select_labels — VOLCOLOR select op

• Datenarten: labels → labels

• Aufruf: import fullseye as fs; fs.ledger.vol_select_labels(labels, props=None, spacing=None, relabel: 'bool' = False, exclude_border: 'bool' = False, keep=None, **criteria) (die Implementierung direkt: import volcolor; volcolor.vol_select_labels(labels, props=None, spacing=None, relabel: 'bool' = False, exclude_border: 'bool' = False, keep=None, **criteria); aus dem Register: opsvolcolor.get("vol_select_labels"))

• Rückgabewert über das Register: fullseye.ledger.vol_select_labels(...) liefert nur den Wert des deklarierten Out-Typs labels (die zugrunde liegende Funktion gibt zusätzlich Hilfsinformationen zurück). Wird das Verworfene gebraucht, nutze fullseye.ledger.vol_select_labels.raw(...) oder rufe volcolor.vol_select_labels direkt auf.

Verwendung

Siebt Komponenten nach 3-D-Merkmalen (das 3-D-Gegenstück zur 2-D-Blob-Auswahl).

Liefert (labels_out, kept_ids). Voxel entfernter Komponenten werden 0 (Hintergrund).

*props* ist der Rückgabewert von vol_label_shape_stats oder von volops.vol_region_props. Bei None wird vol_label_shape_stats an Ort und Stelle aufgerufen.

Kriterien (alle optional, angegebene werden UND-verknüpft): min_volume max_volume min_voxels max_voxels min_sphericity max_sphericity min_elongation max_elongation min_isotropy max_isotropy min_equivalent_diameter max_equivalent_diameter. Außerdem exclude_border=True entfernt Komponenten, die den Volumenrand berühren (das Standardverfahren, um vom CT-Sichtfeld abgeschnittene Partikel aus der Messung auszuschließen), und keep=[...] gibt die zu behaltenden ids direkt an.

Fehlt ein benötigter Schlüssel in props, ValueError. Wird etwa min_sphericity auf das Ergebnis von vol_label_shape_stats angewandt, wird abgewiesen, denn sphericity ist eine Größe, die jenes nicht liefert -- füllte man fehlende Schlüssel mit Standardwerten, entstünde stillschweigend ein Filter, der "trotz geschriebener Bedingung kein einziges Element entfernt".

relabel:

• False (Standard) -- behält die ursprünglichen ids unverändert. Daher ändern sich, auch wenn vol_colorize_labels davor und danach aufgerufen wird, die Farben der verbliebenen Komponenten nicht. Die Abbildung "beim Sieben bleiben die Farben erhalten" funktioniert dank dieses Standards.

• True -- nummeriert die verbliebenen Komponenten auf 1..k um. Die Farben werden komplett ausgetauscht (weil die Labelnummer die Zeilennummer der Palette ist). Nur verwenden, wenn nachgelagert fortlaufende Nummern verlangt werden. Dieses 1 Argument ist die einzige Stelle, die das Verkaufsargument dieser Familie zerstören kann, daher wurde es explizit gemacht.

Liefert (labels_out int32 (D, H, W), kept_ids np.ndarray int64). Löst ValueError aus bei einem unbekannten Kriterium, einem Kriterium, dessen Schlüssel in *props* fehlt, bei *props*, das die vorhandenen Labels nicht abdeckt, oder bei *keep*, das ein Label enthält, das nicht im Volumen vorkommt.

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.

• Der kanonische Algorithmus (Autor, Jahr) und seine Anwendungen stehen im Familienleitfaden oben.

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

• voxel_labels_color — py -3.11 examples/voxel_labels_color.py

Typkompatible Folge-Operatoren (nehmen labels als Eingabe)

vol_colorize_labels · vol_label_overlay · vol_label_shape_stats · vol_label_legend · vol_labels_to_meshes · vol_label_volume_render

Gleiche Kategorie (select)

—


*Provenance: volcolor.py — VOLCOLOR 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.