circularity — 2D features op

• Datenarten: region → feature

• Aufruf: fullseye.apply(img, "circularity", a=0.5, b=0.5) (das 2-D-Modell ist ein Bild plus zwei skalare Regler a,b∈[0,1])

• HALCON-Äquivalent: circularity (Bedeutung und Parameter sind in der HALCON-Referenz nachzulesen)

circularity: input → output

*Die Abbildung ist die tatsächliche Ausgabe auf einer synthetischen 128×128-Eingabe. Links Eingabe, rechts Ausgabe. Punktwolken als Draufsicht-Streudiagramm (Helligkeit = z), 1-D-Reihen als Linie, Volumen als Maximum-Projektion entlang z, Videos als mittleres Bild, komplexe Bilder als Betrag; Rückgabewerte, die kein Bild ergeben, werden als Werte gezeigt.*

*Regler a ändert die Ausgabe nicht (gemessen: identisch bei 0,1 / 0,5 / 0,9).*

*Regler b ändert die Ausgabe nicht (gemessen: identisch bei 0,1 / 0,5 / 0,9).*

Stufen (die vorangehenden Ops → dieser Op, von links nach rechts):

▸ circularity: Stufen (Doku-Website)

Verwendung

Rundheitsmaß min(1, Fläche / (π · max²)), wobei max der größte Abstand vom Schwerpunkt zu einem Konturpixel ist. Für einen Kreis ist es 1 und kleiner für längliche Formen oder solche mit großen Ausbuchtungen oder Löchern. Bei mehreren Zusammenhangskomponenten wird nur die größte bewertet. Dieselbe Formel wie HALCONs circularity (Shape factor for the circularity (similarity to a circle) of a region.).

★Bis 2026-09-26 lieferte es das isoperimetrische Verhältnis 4π·Fläche/Umfang², also eine andere Größe. Der Name ist von HALCON entlehnt, die Zahl aber war eine andere, sodass wer ein HALCON-Rezept übertrug, mit demselben Schwellwert andere Entscheidungen erhielt (0.826 gegenüber 0.670 bei einem Quadrat, sogar die Reihenfolge ändert sich). docs/hardening/halcon-named-shape-factors.md.

a, b werden nicht verwendet.

Ausführlicher Anwendungsleitfaden

• Leitfaden zur Familie gallery2d_features

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.

In Studio ausprobieren

Das Programm unten ist nachweislich lauffähig (gleiche Eingabe wie die Abbildung). In der Studio-Hilfe wird dieser Block zu Schaltflächen, die es sofort laden und ausführen.

threshold 0.50 0.50
circularity 0.50 0.50

▸ Diese Pipeline laden  ·  Laden & ausführen

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

• gallery2d_features — py -3.11 examples/gallery2d_features.py

• poc_cell_counting — py -3.11 examples/poc_cell_counting.py

• poc_particle_sizing — py -3.11 examples/poc_particle_sizing.py

• poc_rotation_invariance_audit — py -3.11 examples/poc_rotation_invariance_audit.py

• shape_factors_closed_form — py -3.11 examples/shape_factors_closed_form.py

Typkompatible Folge-Operatoren (nehmen feature als Eingabe)

identity · feature_to_img

Gleiche Kategorie (features)

effective_bit_depth · blob_count · area_frac · count_contours · total_length · vol_count · sk_euler · sk_entropy_feat


*Provenance: ops.py — 2D 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.