美文网首页机器学习与深度学习
特征点跟踪之LK光流法

特征点跟踪之LK光流法

作者: Mezereon | 来源:发表于2020-08-20 19:26 被阅读0次

    一般而言,LK光流用于特征点的跟踪,即前一帧中的关键像素到当前帧所对应的位置

    LK光流会有一些假设:

    • 灰度不变假设:即真实世界的一个确定的点,反应到像素级别,其灰度是不变的
    • 微扰不变假设:即时间的微小扰动不会引起像素的剧烈变化
    • 空间一致假设:相同表面相邻的点具有相似的运动,像素级别时他们也比较接近

    基于前两个假设,便有如下约束方程
    I(x,y,z)=I(x+\delta x,y+\delta y,z+\delta z)

    其中I(x,y,z)是指在z时刻,坐标(x,y)的灰度值

    对约束方程做一阶泰勒展开可得

    I(x+\delta x,y+\delta y,z+\delta z)=I(x,y,z)+\frac{\partial I}{\partial x}\delta x+\frac{\partial I}{\partial y}\delta y+\frac{\partial I}{\partial z}\delta z + R

    其中R是高阶余项,视为0

    易得
    \frac{\partial I}{\partial x}\delta x+\frac{\partial I}{\partial y}\delta y+\frac{\partial I}{\partial z}\delta z = 0

    两边除以\delta z,有
    \frac{\partial I}{\partial x}\frac{\delta x}{\delta z}+\frac{\partial I}{\partial y}\frac{\delta y}{\delta z}+\frac{\partial I}{\partial z} = 0

    其中\frac{\delta x}{\delta z}\frac{\delta y}{\delta z}为像素点沿xy方向的速度(位移对时间的导数)

    简写成I_xv_x+I_yv_y+I_z=0

    化作矩阵形式

    \left(\begin{matrix} I_x & I_y \end{matrix}\right) \left(\begin{matrix} v_x \\ v_y \end{matrix}\right) = -I_z

    利用第三假设,可以假设在一个m\times m的窗口内,光流是一个恒定的值,即
    \begin{matrix}I_{x_1}v_x+I_{y_1}v_y=-I_{z_1} \\ ... \\ I_{x_{m^2}}v_x+I_{y_{m^2}}v_y=-I_{z_{m^2}} \end{matrix}

    利用最小二乘可以直接得到解

    相关文章

      网友评论

        本文标题:特征点跟踪之LK光流法

        本文链接:https://www.haomeiwen.com/subject/evuejktx.html