admin
管理员
管理员
  • UID1
  • 粉丝14
  • 关注0
  • 发帖数119
  • 社区居民
  • 原创写手
阅读:3014回复:4

关于msckf2.0的FEJ

楼主#
更多 发布于:2018-10-09 19:06
大家好,请教一个问题。讲的有点乱,还请见谅。 问题1:关于msckf 2.0的FEJ,对于一个feature f1从a时刻开始观测到,到b时刻最后一次观测到,在b+1时刻对这个feature进行measurement update的时候,是不是对于f1来说,求a+1时刻到b时刻这中间每个image data frame的pose jacobian的时候,使用只用imu测量进行propagation得到的pose,即所谓的FEJ,但是对于a时刻,使用的pose是最优的,即之前可能有别的feature对a时刻的pose进行了update了,只需要保证在feature f1被观测到的这个区间进使用FEJ这样吗? 问题2:那么是不是相当于对于每个新来的feature,我需要先记录当前的最优pose估计值,然后在这个feature观测得到的区间内使用FEJ? 这样的话在每次imu propagation的时候,假如我有100个feature,然后他们又刚好不是在同一帧image第一次观测到的,那么就需要保存100个对应每个feature的最优初始pose,每个feature对应一条轨线,那么每次imu 来数据了我得对100轨线进行propagation是吗? 谢谢
admin
管理员
管理员
  • UID1
  • 粉丝14
  • 关注0
  • 发帖数119
  • 社区居民
  • 原创写手
沙发#
发布于:2018-10-09 19:28
原来你在这里提问了,回头我把上午讨论的东西往这里整理一下,看看还有没有什么要讨论的
admin
管理员
管理员
  • UID1
  • 粉丝14
  • 关注0
  • 发帖数119
  • 社区居民
  • 原创写手
板凳#
发布于:2018-10-09 19:29
我先把论文放上来
admin
管理员
管理员
  • UID1
  • 粉丝14
  • 关注0
  • 发帖数119
  • 社区居民
  • 原创写手
地板#
发布于:2018-10-09 19:29
赞楼上!
admin
管理员
管理员
  • UID1
  • 粉丝14
  • 关注0
  • 发帖数119
  • 社区居民
  • 原创写手
4楼#
发布于:2018-10-09 19:29
以下为群内讨论内容 - 大家好,请教一个问题。关于msckf 2.0的FEJ,对于一个feature f1从a时刻开始观测到,到b时刻最后一次观测到,在b+1时刻对这个feature进行measurement update的时候,是不是对于f1来说,求a+1时刻到b时刻这中间每个image data frame的pose jacobian的时候,使用只用imu测量进行propagation得到的pose,即所谓的FEJ,但是对于a时刻,使用的pose是最优的,即之前可能有别的feature对a时刻的pose进行了update了,只需要保证在feature f1被观测到的这个区间进使用FEJ这样吗?感谢! - 2.0我还没仔细看,所以具体计算过程不敢乱说。但是对于f1这个点观测的过程来说,也可能发生其他点导致的update? - 是的 所以我有个疑惑,如果有100个初始观测在不同帧的feature,是不是就得对每个feature保存一个第一次观测时最优的估计,然后每次imu有新的测量时,得分别对这100条轨线进行propagation? 看他论文讲的话,2.0主要就是改成 FEJ - msckf的feature是不是只会用一次(只有一次jacobian计算会用到它)?而且是直接用多帧三角化得到状态,立马就linearize掉了不?所以MSCKF里的FEJ是不是不用考虑feature?msckf的细节不那么了解哈,求讨论。。 - 我的了解是主要加了FEJ,但是这个应该是和帧有关不是和特征点的数量有关的吧。因为一个帧可能是很多特征点的起点。这些帧的pose就在状态向量里面,所以算FEJ的时候是选对起点? - msckf论文里面说的是feature一旦没track到就update和相机pose超过一定数量进行update. 如果feature被跟踪了很久好像可能会用多次。如果是没有track到导致的计算,就会去掉。至于2.0里面加的FEJ具体我也还没看论文 - 这个我也有个问题,如果在整个滑窗内有feature一直可以track到,那么marg掉最老的一帧的时候对这个feature怎么处理 - 嗯。。msckf的协方差矩阵里面应该没有feature,状态向量也没有feature,所以marg好像和feature没啥关系? - 但是那个帧里有对feature的测量信息吧 - msckf里面还有一个很重要的点我认为是,msckf设计的是点被哪些帧看到而不是帧看到哪些点 - feature被跟踪的时候,它的信息是不是还没有用到?我之前理解的是,状态的propagate靠imu,在update之前没有用过feature信息 - 我的理解也是这样的,文章中说的只有那两个条件会引起update,前面的过程也没看到要算feature的什么东西 - 那么假设拿着个vio对着某个场景一直来回动,这样feature一直在视野内可以track到,那在这段时间难道一直只用imu进行propagation? - 有一个条件是相机的pose数量超过设置的最大值也update - 所以msckf有很多trick要考虑吧 - 。。相机的pose在这段时间内都是imu propagation来的,因为feature 一直都能track到,所以如果按之前说的话,这段时间内应该是没有update发生的,那么pose值并没有得到修正,就算pose数量超出了update,也没有更新到什么信息吧 - update会修正pose啊。msckf就是要用feature被多个帧观测到这个约束,比如上限设为10帧,这10帧里面feature没有丢的,这些点会在达到10帧的时候利用这个约束去修正整个状态向量,我是这么认为的。个人感觉吧,这里可以和sfm类比下,有差不多的东西
游客