卢卡斯-卡纳德方法

来自testwiki
跳转到导航 跳转到搜索

计算机视觉中,卢卡斯-卡纳德方法是一种广泛使用的光流估计的差分方法,这个方法是由Bruce D. LucasTakeo Kanade发明的。它假设光流在像素点的邻域是一个常数,然后使用最小平方法对邻域中的所有像素点求解基本的光流方程。[1] [2]

通过结合几个邻近像素点的信息,卢卡斯-卡纳德方法(简称为L-K方法)通常能够消除光流方程里的多义性。而且,与逐点计算的方法相比,L-K方法对图像噪声不敏感。不过,由于这是一种局部方法,所以在图像的均匀区域内部,L-K方法无法提供光流信息。

基本原理

L-K方法假设两个相邻帧的图像内容位移很小,且位移在所研究点p的邻域内为大致为常数。所以,可以假设光流方程 在以p点为中心的窗口内对所有的像素都成立。也就是说,局部图像流(速度)向量(Vx,Vy)须满足:

Ix(q1)Vx+Iy(q1)Vy=It(q1)
Ix(q2)Vx+Iy(q2)Vy=It(q2)
Ix(qn)Vx+Iy(qn)Vy=It(qn)

其中,q1,q2,,qn 是窗口中的像素,Ix(qi),Iy(qi),It(qi)是图像在点qi和当前时间对位置xy和时间t的偏导。

这些等式可以写成矩阵的形式Av=b,此处

A=[Ix(q1)Iy(q1)Ix(q2)Iy(q2)Ix(qn)Iy(qn)],v=[VxVy],andb=[It(q1)It(q2)It(qn)]

此方程组的等式个数多于未知数个数,所以它通常是over-determined的。L-K方法使用最小平方法获得一个近似解,即计算一个2x2的方程组:

ATAv=ATb
v=(ATA)1ATb

其中,AT是矩阵A转置。即计算:

[VxVy]=[iIx(qi)2iIx(qi)Iy(qi)iIy(qi)Ix(qi)iIy(qi)2]1[iIx(qi)It(qi)iIy(qi)It(qi)]

i=1 到 n求和。

矩阵ATA通常被称作图像在点p结构张量

参考文献

  1. B. D. Lucas and T. Kanade (1981), An iterative image registration technique with an application to stereo vision. Template:Wayback Proceedings of Imaging Understanding Workshop, pages 121--130
  2. Bruce D. Lucas (1984) Generalized Image Matching by the Method of Differences Template:Wayback (doctoral dissertation)

外部链接