halcon_ext op• Datenarten: contour → feature
• Aufruf: fullseye.apply(img, "hx_test_self_intersect", a=0.5, b=0.5) (das 2-D-Modell ist ein Bild plus zwei skalare Regler a,b∈[0,1])
• HALCON-Äquivalent: test_self_intersection_xld (Bedeutung und Parameter sind in der HALCON-Referenz nachzulesen)

*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):
▸ hx_test_self_intersect: Stufen (Doku-Website)
Der Anteil selbstschneidender Konturen (ein Merkmal). Geprüft werden nicht benachbarte Segmentpaare.
Prüft für jede Kontur (4 oder mehr Punkte) alle Paare nicht benachbarter Segmente (i, i+1) und (j, j+1) (j >= i+2) über das Vorzeichen der orientierten Fläche (ccw-Test) auf Schnitt und gibt den Anteil der Konturen mit mindestens 1 sich schneidenden Paar an der Gesamtzahl der Konturen als np.float64 zurück. Bei einer geschlossenen Kurve, deren Start und Ende zusammenfallen (Abstand unter 1e-6), gilt das Paar aus erstem und letztem Segment als benachbart und wird ausgeschlossen.
• a, b werden nicht verwendet.
• 0.0, wenn keine Konturen vorhanden sind. Konturen mit 3 oder weniger Punkten zählen als schnittfrei.
Erkannt werden nur echte Schnitte; Berührungen (ein Endpunkt liegt auf dem anderen Segment) und kollineare Überlappungen nicht (die Ungleichungen sind strikt). Der Aufwand wächst pro Kontur mit der 2. Potenz der Segmentzahl, daher langsam bei Konturen mit vielen Punkten (Punkte vorher mit hx_split_contours oder smooth_contours_xld reduzieren). Nützlich, um das Zusammenbrechen eines mit hx_gen_parallel_contour nach innen versetzten Umrisses zu erkennen.
• Leitfaden zur Familie gallery2d_halcon_ext
• 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.
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 sk_find_contours 0.50 0.50 hx_test_self_intersect 0.50 0.50
▸ Diese Pipeline laden · Laden & ausführen
• gallery2d_halcon_ext — py -3.11 examples/gallery2d_halcon_ext.py
feature als Eingabe)halcon_ext)hx_gen_circle · hx_gen_ellipse · hx_gen_rectangle2 · hx_gen_checker_region · hx_gen_grid_region · hx_gabor · hx_fit_surface1 · hx_fit_surface2
*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.