window op• Datenarten: video → video
• Aufruf: import fullseye as fs; fs.ledger.background_subtraction_window(video, window: 'int' = 5, threshold: 'float' = 0.1) -> 'np.ndarray' (die Implementierung direkt: import videostream; videostream.background_subtraction_window(video, window: 'int' = 5, threshold: 'float' = 0.1) -> 'np.ndarray'; aus dem Register: opsvideostream.get("background_subtraction_window"))
Kausaler Fenstermedian-Hintergrund → 0/1-Vordergrundmasken pro Bild (T, H, W) (video).
Für jeden Frame t wird der pixelweise Median der letzten window Frames (max(0, t-window+1) .. t, einschließlich dieses Frames selbst) als Hintergrund bg genommen, und |frame_t - bg| > threshold wird auf 1 gesetzt, alles andere auf 0. Zukünftige Frames werden nicht betrachtet (kausal), daher ist am Anfang das Fenster um die fehlenden Frames kürzer.
• video: ein (T, H, W)-Array oder eine list von 2-D-Frames gleicher Form und gleichen dtype. uint8/uint16 wird über das dtype-Maximum auf [0, 1] gebracht, float wird unverändert auf [0, 1] begrenzt. Farbe (T, H, W, C) wird nicht angenommen. NaN/Inf ergibt ValueError.
• window: int von 1 bis 4096 (kein bool). Bei 1 ist der Hintergrund = der Frame selbst, also alle Pixel 0. Bei gerader Anzahl ist der Median der Mittelwert der 2 mittleren Werte.
• threshold: in Intensitätseinheiten von [0, 1] (bei uint8 umgerechnet als /255).
• Rückgabewert: (T, H, W) float64 aus 0 / 1.
• Fehler: ValueError (Form, dtype, Bereich, nicht endlich).
Langsam bewegte Objekte verschmelzen innerhalb von window Frames mit dem Hintergrund; in dem Fall running_gaussian_foreground (selektive Aktualisierung) oder exponential_foreground verwenden. Wird der Hintergrund selbst benötigt, temporal_median_window.
• Leitfaden zur Familie video_streaming
• mv_cables — Kabel (Standards, Geschwindigkeit, Stromversorgung, Roboterkabel)
• mv_frame_grabbers — Framegrabber-Karten (keine Optik, entscheiden aber, ob überhaupt aufgenommen werden kann)
• mv_standards — Kameraschnittstellen: Standards und Gremien
• 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.
• video_streaming — py -3.11 examples/video_streaming.py
video als Eingabe)temporal_median_window · moving_average_window · frame_difference_causal · exponential_background · exponential_foreground · running_mean_std · optical_flow_magnitude_stream · motion_history_image
window)temporal_median_window · moving_average_window
*Provenance: videostream.py — VIDEOSTREAM 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.