光流(Optical flow)計算常使用在避障、無人機著陸、里程計等等用途。對於上述用途,若飛行在高動態的狀況下,低延遲是必須的。對此,需要設計低延遲、低功耗的事件傳感器。在這篇研究中,研究團隊藉由事件相機(event based camera)輸入,並用Leaky integrate and fire model 做自監督式學習計算光流;以下是網路的架構圖:
主要大致上分為四層,層與層之間的訊息傳遞都是靠spike傳遞。由於SNN中spike function是不可微分的,因此在反向傳遞(back propagation)時使用代理梯度(surrogate gradient)去近似梯度。
在每一個像素點上,都有一群神經元透過spike傳遞訊息、更新。首先在第一層與第二層,先建立空間的特徵;接著第三層有時間延遲的block,這個delay block用做及時延遲訊號,組合多個block可以直接比較不同時間時的狀況,之後做卷積對時間與空間都做分析。最後一層,將前面的輸入解碼成光流二維向量輸出。方法如下圖:前面輸出的是隨時間變化的spiking,透過不同方向的神經元加權後,結果在對一段時間取平均值,即得到最後輸出的光流。
相較於傳統ANN,SNN更稀疏、運算更簡單,而且層與層之間的傳遞是二值化的,因此運算效率更高。本文提供了新的自監督式學習的事件光流法,利用時間延遲、梯度替代做光流估計,提供新的架構想法去更低功耗的計算光流。