视觉SLAM十四讲学习5 位姿估计(7)光流法,光流跟踪

视觉SLAM十四讲学习5 位姿估计(7)光流法

  • 前言
  • LK光流
  • 光流金字塔

前言

本篇继续位姿估计,光流法,光流跟踪。

LK光流

基于特征点的位姿估计中,特征匹配是比较耗时的过程。因此,光流法常被用来替换特征匹配法,来加速特征点的跟踪。

假设相机的相邻位姿之间,空间点的亮度(像素灰度值)是不变的,则:
I ( x + d x , y + d y , t + d t ) = I ( x , y , t ) I(x+dx,y+dy,t+dt)=I(x,y,t) \\ I(x+dx,y+dy,t+dt)=I(x,y,t)
上面这个式子表示,空间点在 d t dt dt的时间内,在图像上移动了 ( d x , d y ) (dx,dy) (dx,dy)的像素距离。接着泰勒展开:
I ( x , y , t ) + I x d x + I y d y + I t d t = I ( x , y , t ) s e t I x = ∂ I ∂ x , I y = ∂ I ∂ y t h e n I x d x + I y d y + I t d t = 0 s o I x d x d t + I y d y d t = − I t [ I x I y ] [ d x d t d y d t ] = − I t I(x,y,t)+I_xdx+I_ydy+I_tdt=I(x,y,t) \\ \quad \\ set \quad I_x = \frac{\partial I}{\partial x},I_y=\frac{\partial I}{\partial y} \\ \quad \\ then \quad I_xdx+I_ydy+I_tdt=0 \\ \quad \\ so \quad I_x\frac{dx}{dt} + I_y\frac{dy}{dt} = -I_t \\ \quad \\ \begin{bmatrix} I_x & I_y \end{bmatrix} \begin{bmatrix} \frac{dx}{dt} \\ \frac{dy}{dt} \end{bmatrix} = - I_t I(x,y,t)+Ixdx+Iydy+Itdt=I(x,y,t)setIx=xI,Iy=yIthenIxdx+Iydy+Itdt=0soIxdtdx+Iydtdy=It[IxIy][dtdxdtdy]=It
上式中, I x , I y I_x,I_y Ix,Iy表示像素点在x,y方向上的梯度, d x / d t , d y / d y dx/dt,dy/dy dx/dt,dy/dy表示像素点在x,y方向上的移动速度, I t I_t It表示像素灰度对时间的变化。

对于单个特征点的光流跟踪。容易受到噪声、光度变化等干扰,因此假设以特征点为中心的一个 w × w w\times w w×w大小的图块的运动是相同的,考虑图块的光流:
[ I x I y ] k [ d x d t d y d t ] = − I t k k = 1 , 2 , … , w 2 T h a t i s A x = b \begin{bmatrix} I_x & I_y \end{bmatrix}_k \begin{bmatrix} \frac{dx}{dt} \\ \frac{dy}{dt} \end{bmatrix} = - I_{tk} \\ k = 1,2,\dots,w^2 \\ \quad \\ That \quad is \quad Ax=b [IxIy]k[dtdxdtdy]=Itkk=1,2,,w2ThatisAx=b
于是就形成了一个关于 d x , d y dx,dy dx,dy的超定方程组,可以通过线性最小二乘求解 x = − ( A T A ) − 1 A T b x = -(A^TA)^{-1}A^Tb x=(ATA)1ATb

最后计算得到的 d x / d t , d y / d t dx/dt,dy/dt dx/dt,dy/dt,就是该特征点前后移动的位置。

光流金字塔

由于光流法的灰度不变假设,运动一致性假设都很严格,因此使用时如果相机运动较大,光流跟踪的结果很容易陷入局部最小。

于是,LK光流通常配合图像金字塔使用,如下图所示。将原图按照0.5倍,0.25倍,0.125倍尺寸缩小,得到图像金字塔。然后,在尺寸最小的图层上进行光流计算,把跟踪结果投影到第二张图层上进行光流计算,把跟踪结果投影到第三层,直到最后在原图上计算出跟踪结果。这种思想类似于coarse-to-refine。

由于缩小到0.125倍时,原始图像中像素的运动也被缩小了,因此就满足了图块的运动一致性假设,使得光流跟踪更加鲁棒。
视觉SLAM十四讲学习5 位姿估计(7)光流法,光流跟踪_第1张图片

你可能感兴趣的:(SLAM,机器学习,自动驾驶,计算机视觉)