类视网膜光流传感器把运动计算塞进芯片,功耗降到 FPGA 方案的 1/303

Optical Flow Sensor: A Direction-Selective Bionic Retina Design

Juchen Zhou, Bonan Yan, Yuchao Yang

cs.AR, cs.CV, cs.ET, eess.IV

2026-07-30

把光流计算直接做进类视网膜视觉芯片:用 DVS 像素 ON/OFF 事件的时间差求运动向量,功耗降到 FPGA 方案的 1/303,微秒延迟,输出数据省 3.3 倍。

这篇在解决什么

光流(optical flow,描述相邻时刻间每个像素怎么运动的向量场)是机器人、无人机、自动驾驶做运动感知和追踪的基础信号。传统帧相机算光流要整幅图像密集采样再做全局计算,延迟高、耗电大。事件相机(DVS,Dynamic Vision Sensor)模仿视网膜,只在像素亮度变化时输出事件,数据量小、时间精度到微秒,本该更省。但事件流本身只是「哪里变了」,要还原成光流向量还得外挂 FPGA 或处理器去算,于是省下来的功耗又被后处理吃回去了。这篇要解决的就是这最后一环:把光流计算本身做进传感器芯片,不再需要 FPGA。

方法

核心思路是把光流的连续方程离散成「像素之间的事件配对」。当一个像素的亮度下降,它产生一个 OFF 事件;亮度上升的相邻像素产生 ON 事件。如果同一个运动边缘先后扫过两个相邻像素,那么先 OFF 后 ON(或反过来)在时间上就是相关的。OFS 把这个时序相关性当成一个光流事件的判据。

具体电路是这样跑的:

几个关键设计选择都做了取舍:TDC 分辨率选 2-bit,是在精度、面积、功耗之间取的最优点;邻域选 3×3 而不是 4 连通或 5×5,因为检测率随邻域增大单调上升但代价也涨;像素内电路全数字化,以抵抗晶体管失配。

读出接口 OF-AER(光流地址事件表示)也做了简化:不做逐像素的读出,而是按行汇总。任意像素检测到光流就触发该行的读出请求,仲裁器按行服务,每行 1 微秒,峰值吞吐能到 128 Meps(百万事件每秒)。按行而不是按像素聚合,降低了对时钟频率的要求,功耗更低而吞吐不掉。

他们还给出两套实现:一套是基于 CMOS(台积电 65nm 工艺)的光电二极管版,延迟 1 微秒;另一套用光学忆阻器(optical memristor)做感光,器件做在上层金属层、不占硅衬底,面积更省、功耗更低(3.3 mW 对 7.4 mW),但忆阻器响应慢,延迟升到约 10 微秒,光敏度也不如光电二极管。

结果

和「DVS + FPGA」基线比:

指标DVS + FPGACMOS OFS忆阻器 OFS
光流感知+计算总功耗1 W7.4 mW3.3 mW
相对基线省 135×省 303×
单事件生成延迟1.1 µs1 µs10 µs
输出数据带宽2.33 MB/s700 KB/s(省 3.3×)
传感器尺寸2mm×2mm2.9mm×2.7mm2.56mm×2.4mm

附带两个结构性收益。一是抗噪:孤立的噪声事件缺乏空间相关性,过不了「窗口内邻域要有 ON」这道门,被天然滤掉,噪声抑制达 188× 到 259×,不花额外算力。二是输出从「原始事件流」变成了「光流向量」,事件率从 388 keps 压到 100 keps,下游要处理的数据更少。

精度上,在 MVSEC 数据集上平均端点误差(AEE)在 159.73 到 274.28 px/s 之间;在 indoorflying3 序列上是 179.51 px/s,作者承认不如对照方法 [11],归因于公式里的量化误差和 2-bit TDC 的截断。

为什么重要

对做机器人视觉、无人机、高速运动捕捉的团队,这意味着可以把光流这条信号链从「相机 + FPGA」压缩成单芯片,功耗从瓦级掉到毫瓦级,延迟稳定在微秒。这对功耗预算紧张、又对实时性敏感的边缘设备(微型无人机、AR/VR 眼镜、工业高速检测)是实打实的解放。光学忆阻器版本则给了一条「更省面积、更省电」的路线,代价是延迟。方向上,这是事件相机从「只输出事件」走向「在片上直接输出可用的运动语义」的一步。

但有一点要先说清楚:这是一颗待流片的预硅设计。

局限与存疑

最关键的一点:论文给出的功耗是 SPICE 电路级仿真估计的,面积来自预硅版图(pre-silicon layout),不是实测流片芯片。所谓「实验结果」是电路仿真加 Python 功能复现,物理芯片还没有。落到真实硅上,失配、寄生、读出带宽会不会吃掉这些数字,仍是未知。

精度本身也是短板:2-bit TDC 的量化把幅值截断得很粗,在 MVSEC 上不如已有方法,作者没有回避。忆阻器版本则用光敏度换面积和功耗,还「需要更复杂的电阻读出方案」,工程成熟度更低。最后,峰值吞吐 128 Meps 是按行扫描算出的理论上限;事件率超过 1 Meps 后,多行争抢仲裁器,后到的行排队,时间戳误差(ATE)会上升,到极限点约 74.3 µs。

术语

原文与代码

社区讨论

相关论文

全部论文解读