lamina opmatrix → matriximport fullseye as fs; fs.ledger.fly_onoff_split(movie, dt_s, tau_on_s=0.02, tau_off_s=0.02, rectify=True) (実装を直接呼ぶなら import flyvision; flyvision.fly_onoff_split(movie, dt_s, tau_on_s=0.02, tau_off_s=0.02, rectify=True)、台帳から引くなら opsflyvision.get("fly_onoff_split"))Split a contrast movie into the ON and OFF channels the medulla carries.
Beyond the lamina the fly stops carrying one signed signal and carries two: an ON channel (Mi1 / Tm3, brightening) and an OFF channel (Tm1 / Tm2, darkening), each with its own relay dynamics. This op is that split, and it keeps the rectification optional on purpose: the split was measured downstream, in the motion response (Joesch et al., Nature 468:300, 2010), while L1/L2 themselves respond linearly (Clark et al., Neuron 70:1165, 2011), so a pathway that rectifies at the lamina is making a claim the recordings do not.
movie: (T, n) contrast, rows = time (the return of
:func:fly_lamina_filter). dt_s: sample interval, seconds.
tau_on_s / tau_off_s: the low-pass time constant of each channel, seconds.
rectify: True half-wave rectifies (ON = max(c, 0),
OFF = max(-c, 0), both >= 0); False passes the signed contrast into
the ON channel and its negation into the OFF channel, which is the linear
L1/L2 case and lets the rectification happen downstream instead.
Returns (T, 2n) float64: columns 0..n-1 are ON, n..2n-1 are OFF,
the same ommatidium order in each half.
Ground truth (exact, with tau_on_s == tau_off_s so the two channels share
one filter):
ON - OFF is the low-passed input, whichever rectify you chose;rectify=True, ON + OFF is the low-passed absolute value;Raises ValueError: a non-2-D / too-short / non-finite movie, a movie
over :data:MAX_MOVIE_ELEMENTS, and a non-positive dt_s / tau_on_s /
tau_off_s.
py -3.11 examples/poc_fly_optomotor_steering.pymatrix を入力に取れる)fly_lamina_filter · fly_t4t5_field · fly_flow_from_directions · fly_egomotion_from_flow · fly_hs_readout
lamina)Provenance: flyvision.py — FLYVISION operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.