事件相机特征跟踪-EKLT方法

作者:董岩

来源:公众号@3D视觉工坊

链接: 事件相机特征跟踪-EKLT方法

1.前言

本推送介绍另一种特征跟踪方法,来自论文:”EKLT: Asynchronous Photometric Feature Tracking Using Events andFrames”。从基本思路上来说,也是对模板进行跟踪,但与事件相机特征跟踪-概率数据关联法不同在于,在跟踪时采用的是优化思想,优化运动参数,从而实现跟踪。

2.基本思想

上方为算法流程图,我们先看下半部分。传统相机图像分别提取x和y方向梯度图,然后根据特征跟踪的参数进行Warp到指定位置,然后根据假设运动速度获得预测的梯度图。上方为一段儿时间内事件积累而形成的灰度图。二者进行做差,优化得到真实速度v与最佳的跟踪参数p,实现一步跟踪。

3.一些细节3.1 特征追踪的参数特征追踪采用“从初始位置进行怎样的变化,才能到当前位置”实现追踪,包括了旋转与平移。示意图如下,表示从初始位置怎么运动到当前位置。实际优化过程中,是当前运动参数作为初始值,进行优化获得运动参数的增量,进行迭代更新,完成跟踪。

3.2 事件积累图

事件积累图是从在当前特征位置,积累在区域内一段儿时间内的事件数据,得到的亮度变化图。积累时需要考虑极性,从而产生了亮度变化。换一句话说,事件积累图代表了实际测量得到的特征亮度变化图。

(左:事件积累图;右:传统图形梯度图)

3.3 传统图像的梯度图传统图像的梯度图即为分别沿x和y方向进行像素做差,得到梯度图。之后根据假设运动参数v,得到“在当前假设运动参数,与梯度的情况下,预测的亮度变化图”。可以理解为预测结果。

 3.4 误差项与迭代当获得预测的亮度变化图,以及积累观测到的测量变化图后,进行做差,优化残差得到最佳的变量状态的增量,这里的变量状态包括了特征跟踪所需要的旋转与平移,以及假设的速度。误差采用归一化的形式,对预测和观测的分别就进行归一化。具体的表达式为:

即选取最佳的参数p和v,使亮度变化图的误差最小。从而获得最佳参数p的增量后,迭代更新运动参数。

4.实验结果实验结果表明,精度是真的高,误差只有1-2 pixels。由于作者的设计思路就是,如果只保留边缘会丢掉很多的梯度信息,那么用梯度其实获取的信息更多,从而取得了更高的精度。

作者制作了示意视频,可以感受一下:

原始链接:https://www.youtube.com/watch?v=ZyD1YPW1h4U&feature=youtu.be 同时作者开源了代码,这真的很少见:https://github.com/uzh-rpg/rpg_eklt

4、总结这篇文章较新,取得的结果也不错,从视频上看已经能做到实时。相信是一个不错的研究思路,推测后续的论文也会将本文的结果作为参考。同时对于作者能够开源深表赞赏。本文仅做学术分享,如有侵权,请联系删文。

原文地址:https://www.cnblogs.com/YongQiVisionIMAX/p/13414969.html