balltrack op• Datenarten: points → table
• Aufruf: import fullseye as fs; fs.ledger.kalman_ca(z, dt: 'float', *, q: 'float' = 1.0, r: 'float' = 1.0, x0=None, P0: 'float' = 1000.0) -> 'dict' (die Implementierung direkt: import balltrack; balltrack.kalman_ca(z, dt: 'float', *, q: 'float' = 1.0, r: 'float' = 1.0, x0=None, P0: 'float' = 1000.0) -> 'dict'; aus dem Register: opsdrive.get("kalman_ca"))
Kalman-Filter mit Modell konstanter Beschleunigung (Positionsbeobachtungen (N, D); Zustand = Position, Geschwindigkeit, Beschleunigung × D).
Rückgabewert {"x" (N, 3D) 更新後, "x_pred" (N, 3D) 予測, "P" (N, 3D, 3D), "innovation" (N, D)}. q = Varianz der Beschleunigungsänderung (weißer Ruck), r = Beobachtungsvarianz. Mit einer wahren Parabel als Eingabe (das Modell ist exakt) geht die Innovation nach der Konvergenz → 0, und mit r → 0 ist die Position nach dem Update = die Beobachtung (Gate). Eine NaN-Beobachtung erhält nur die Prädiktion (Messausfall).
• 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.
• poc_air_hockey_intercept — py -3.11 examples/poc_air_hockey_intercept.py
• poc_ball_bounce — py -3.11 examples/poc_ball_bounce.py
table als Eingabe)course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same
balltrack)ball_detect · ball_track · triangulate_dlt · track_triangulate · bounce_detect · marker_direction · spin_from_markers · spin_from_marker_sequence
*Provenance: balltrack.py — DRIVE 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.