前言
这篇文章的方法是利用传统的frame对图像做初始化,然后在event上面进行跟踪。
论文地址:Asynchronous, Photometric Feature Tracking using Events and Frames
发现还有人把作者附的视频上传到了B站
论文video
背景
- 事件相机不输出绝对强度图像,而是输出异步事件流,优点是延迟非常低(1微秒)
- 传统相机提供像素直接测量,但延迟较高(10-20毫秒)
主要贡献
- 第一个将frame和event结合的特征跟踪器
- 实现了SOTA
- 做了在大对比度的人造环境和自然场景中的性能评估
概念及算法理论
1.数据关联中的挑战
作者首先分析了frame数据和event数据进行关联面临的问题。
可以看到,对于同一张frame图像,沿着不同的方向运动(或者让相机运动),产生的evnet数据是不一样的,如果没有原始的这张frame图像,我们很难将图中的(b)、(c)、(d)关联起来。
2.从event和frame中生成亮度增量图像
将event在一个时间段中积累起来,得到亮度增量图像:
对于一个很短的时间
△
t
△ t
△t,亮度增量是由于移动引起的:
这个里面的
∇
L
(
u
)
\nabla L\left( u \right)
∇L(u)表示frame图像的梯度(可以理解为canny边缘算子这种),v(u)表示物体的运动。
上面的两个公式其实是分别用frame和event数据生成亮度增量图的过程。
3.优化框架
有了上面两个公式,应该就能想到文章要做什么了,就是将这两个公式的误差最小化,从而得到最终地物体的运动参数v(u)。具体地说,event数据已经有了,frame是
△
t
△ t
△t时间之前的数据,那么从t到t+
△
t
△ t
△t这个时间段的运动就可以反求出来了。算法的整体流程如下:
图中的W就是要求解的wrap,它包含两个参数:p:配准参数和v:光流(这里假设每个小patch上的所有像素光流恒定),这里只考虑刚体运动。
假设误差遵循高斯分布,那么误差的极大似然函数为:
然后就是利用最大似然的求解。
实验
1.仿真数据上的跟踪
feature age是作者定义的一个量,表示初始化和处理之间的时间。
2.真实数据上的跟踪