fly_hex_quantize — FLYVISION sample op

• 数据种类:signal → signal

• 调用: import fullseye as fs; fs.ledger.fly_hex_quantize(signal, bits=3, mode='log', contrast=0.2)(要直接调用实现,import flyvision; flyvision.fly_hex_quantize(signal, bits=3, mode='log', contrast=0.2);从台账取用则 opsflyvision.get("fly_hex_quantize"))

用法

以与眼睛相同的方式量化小眼信号:先做对数压缩,再对每个小眼取 n 位(mode="onoff" 为 ON / OFF 2 个通道)。

复眼天生就是量化器:每只眼约 800 个小眼(间隔 4.6°),光感受器对强度作对数压缩并适应平均值, lamina 的 L1 / L2 把相对平均值的偏差分成 ON 和 OFF。本 op 再现这一预算,使下游模型(reservoir、视网膜拓扑对应检验)能够被问到"到底需要多少比特"。

复眼天生就是量化器: 每只眼约 800 个小眼,间隔 4.6 deg, 光感受器对强度作对数压缩并适应平均值,lamina 细胞(L1/L2) 把偏差分成 ON 与 OFF 通道。本 op 再现这一预算,使下游模型(reservoir、视网膜拓扑检验)能够被问到真正需要多少比特。

Parameters

signal : (n,) float

每个小眼的强度 >= 0(fly_hex_resample 的输出)。

bits : int

1..8 级 = 2**bits(mode="onoff" 时忽略: 输出为下面的带符号对)。

mode : str

"log": 相对平均值作 log1p 压缩,把最暗的小眼移到 0,然后

在压缩后的范围上均匀分级; "linear": 在 [0, max] 上均匀分级; "onoff": 相对平均值的偏差

以 contrast 归一并裁剪到 [-1, 1],作为 2 * n 个值 [ON..., OFF...] 返回

(ON = 正部分,OFF = 负部分),各值 >= 0。

contrast : float

使 ON/OFF 通道饱和的 Michelson 式对比度(仅 mode="onoff")。

Returns

(n,) float,取值 [0, 1] (级数 / (2**bits - 1));"onoff" 时为 (2n,),取值 [0, 1]。

Notes

拒绝非有限或负的输入。常数信号量化为全零("log" / "onoff")—— 没有可编码的对比度。

详细使用指南

• fly_vision 族使用指南

参考(示例数据、文献)

• 示例数据目录(下载 URL / 许可证) —— 2-D 用 skimage.data(BSD/公有领域)加合成图,3-D 给出真实数据源(Stanford/PDS 等)的下载 URL。

• 算子来历与参考文献 —— 该算子族所依据的研究/方法出处。

• 算法的正典(作者、年份)与用途见上面的族使用指南。

可运行的示例(实际调用该算子并已验证的样例)

• poc_eye_to_brain — py -3.11 examples/poc_eye_to_brain.py

类型可衔接的下一个算子(可接受 signal 作为输入)

fly_emd_response · fly_lgmd_eta · fly_tau_from_expansion · fly_dsi

同类别(sample)

fly_hex_resample


*Provenance: flyvision.py — FLYVISION 算子登记表。本条目由 tools/opdocs.py md 自动生成(请勿手工编辑)。*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.