博主声明:本文英文内容全部来自于http://en.wikipedia.org/wiki/Lucas_Kanade_method,中文由博主据此进行翻译而来。

在计算机视觉中,Lucas-Kanade方法是一种广泛使用的光流估算差分方法,它由Bruce D.Lucas和Takeo Kanade共同开发。它假定在所考虑的像素的局部邻域内,本质上光流是恒定的,由此利用最小二乘原则对邻域内所有像素求解基本光流方程。[In computer vision, the Lucas–Kanade method is a widely used differential method for optical flow estimation developed by Bruce D. Lucas and Takeo Kanade. It assumes that the flow is essentially constant in a local neighbourhood of the pixel under consideration, and solves the basic optical flow equations for all the pixels in that neighbourhood, by the least squares criterion.[1][2]

通过综合多个附近像素的信息,Lucas-Kanade方法通常可以解决光流方程固有的模糊性问题。与逐点方法相比,对于图像噪声它也不太敏感。另一方面,因为这是一种纯局部的方法,它不能够提供图像均匀区域内的光流信息。[By combining information from several nearby pixels, the Lucas-Kanade method can often resolve the inherent ambiguity of the optical flow equation. It is also less sensitive to image noise than point-wise methods. On the other hand, since it is a purely local method, it cannot provide flow information in the interior of uniform regions of the image.]

概念[Concept]

Lucas-Kanade方法假定两个附近帧图像内容的位移很小而且在所考虑的点p的邻域内大体不变。因此可以假定在以点p为中心的窗口内的所有像素,光流方程可以适用。就是说,局部图像光流矢量(Vx,Vy)必须满足以下方程:[The Lucas-Kanade method assumes that the displacement of the image contents between two nearby instants (frames) is small and approximately constant within a neighborhood of the point punder consideration. Thus the optical flow equation can be assumed to hold for all pixels within a window centered at p. Namely, the local image flow (velocity) vector  must satisfy]

   
   
  

这里,q1,q2,...,qn都是窗口内的像素,Ix(qi),Iy(qi),It(qi)是图像I相对于位置x,y和时间t的偏微分,这些量的估算是在点qi和当前时间进行的。[where  are the pixels inside the window, and are the partial derivatives of the image  with respect to position xyand time t, evaluated at the point  and at the current time.]

这些方程可以写成矩阵Av=b的形式,其中:[These equations can be written in matrix form , where]

该系统方程的数量多于未知量,因此通常它是over-determined。Lucas-Kanade方法包括了根据最小二乘原理的一个折中解。[This system has more equations than unknowns and thus it is usually over-determined. The Lucas-Kanade method obtains a compromise solution by the least squares principle.]

即求解一个2*2的系统:[Namely, it solves the 2×2 system]

 or
    此处,AT是矩阵A的转置,即它计算:[where  is the transpose of matrix  . That is, it computes]

上述求和是从j=1 到n [with the sums running from i=1 to n.]

矩阵ATA通常被称作图像在点p的结构张量。[The matrix  is often called the structure tensorof the image at the point p.]

加权窗口[Weighted window]

上述普通的最小二乘解对窗口内n个像素qi一视同仁。事实上,通常对于靠近中心像素p的像素更多的权重会更好。[The plain least squares solution above gives the same importance to all n pixels  in the window. In practice it is usually better to give more weight to the pixels that are closer to the central pixel p.]

介于此,人们使用最小二乘方程的加权版本:[For that, one uses the weighted version of the least squares equation,]

or

此处,W是一个n*n的对角矩阵,包含权重Wii=wi,被指定到像素qi的方程。[where  is an n×ndiagonal matrix containing the weights  to be assigned to the equation of pixel  .]

亦即,它计算:[That is, it computes]

权重wi通常被设置为qi和p之间距离的高斯函数。[The weight  is usually set to a Gaussian function of the distance between  and p.]

改进和提高[Improvements and extensions]

最小二乘方法暗含以下假设,即图像数据的误差具有零均值高斯分布。如果人们预期窗口包含一定百分比的outliers(粗大误差数据,它不遵循“通常”的高斯误差分布),人们可以通过统计分析来检测他们,并减小他们相应的权重。[The least-squares approach implicitly assumes that the errors in the image data have a Gaussian distribution with zero mean. If one expects the window to contain a certain percentage of "outliers" (grossly wrong data values, that do not follow the "ordinary" Gaussian error distribution), one may use statistical analysis to detect them, and reduce their weight accordingly.]

Lucas-Kanade方法(per se?)只可被用于当两帧图像之间的光流矢量Vx,Vy小到足以使微分光流方程得以维持的情况下,通常来说它小于像素间距。当流矢量超过此限制,比如在立体匹配或warped document registration, Lucas-Kanade方法仍然可被用于精细化一些由其它方法得来的同一运动的粗糙的估计,例如,通过外推由以前帧计算的流矢量,或通过在reduced scale versions of images上运行Lucas-Kanade算法。的确,后一种方法是广为人知的Kanade-Lucas-Tomasi(KLT)特征匹配算法的基础。[The Lucas-Kanade method per se can be used only when the image flow vector  between the two frames is small enough for the differential equation of the optical flow to hold, which is often less than the pixel spacing. When the flow vector may exceed this limit, such as in stereo matching or warped document registration, the Lucas-Kanade method may still be used to refine some coarse estimate of the same, obtained by other means; for example, by extrapolating the flow vectors computed for previous frames, or by running the Lucas-Kanade algorithm on reduced-scale versions of the images. Indeed, the latter method is the basis of the popular Kanade-Lucas-Tomasi (KLT) feature matching algorithm.]

一种类似的技术可被用于计算图像内容的差分仿射形变。[A similar technique can be used to compute differential affine deformations of the image contents.]

亦请看[See also]

  • 光流[Optical flow]
  • HS方法[Horn–Schunck method]
  • ST角检测算法[The Shi and Tomasi corner detection algorithm]

参考文献[References]

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

外部链接[External links]

  • The image stabilizer plugin for ImageJ based on the Lucas–Kanade method
  • Mathworks Lucas-Kanade Matlab implementation of inverse and normal affine Lucas-Kanade
  • FolkiGPU : GPU implementation of an iterative Lucas-Kanade based optical flow
  • Lucas-Kanade for the iPhone by Success Labs. A modified and enhanced port of the OpenCV lkdemo sample application to the iPhone.
  • KLT: An Implementation of the Kanade–Lucas–Tomasi Feature Tracker
  • Takeo Kanade

Lucas–Kanade相关推荐

  1. 详解OpenCV中的Lucas Kanade稀疏光流单应追踪器

    详解OpenCV中的Lucas Kanade稀疏光流单应追踪器 1. 效果图 2. 源码 参考 这篇博客将详细介绍OpenCV中的Lucas Kanade稀疏光流单应追踪器. 光流是由物体或相机的运动 ...

  2. 【算法分析】Lucas–Kanade光流算法

    (最近再看光流法的应用,发现一篇对算法讲的非常好的文章,转载过来看) 转自:gnuhpc的百草园和三味书屋 作者:gnuhpc@gmail.com 简介:在计算机视觉中,Lucas–Kanade光流算 ...

  3. Lucas–Kanade算法

     本文转自:http://blog.csdn.net/JustRemind/article/details/23745579 原文地址:http://www.cnblogs.com/gnuhpc/ ...

  4. Lucas Kanade 光流法(来自wiki 百科)

    小伙伴们开始正式玩起了APM的PX4flow,加上课题方向也要用到光流法,因此从哪个角度来说,都是十分必要的. 光流法最常用的是用于机器视觉的跟踪算法,一是可以跟踪目标物体,而是求解目标的运动学参数( ...

  5. 光流的计算(Lucas–Kanade method)

    Lucas-Kanade 方法假设光流在一个较小的局部区域内是保持不变的,然后采用最小二乘的方法来计算每一个点的光流. 对于每一个像素点,其光流(速度)可以这样表示: 对于这个表示,我们可以这样理解: ...

  6. Lucas–Kanade光流算法

    1. 光流的概念 •空间运动物体在观察成像平面上的像素运动的瞬时速度 2. 光流法的原理 •利用图像序列中像素在时间域上的变化以及相邻帧之间的相关性来找到上一帧跟当前帧之间存在的对应关系,从而计算出相 ...

  7. imclearboder matlab,Lucas

    Lucas-Kanade跟踪算法是视觉跟踪中一个很经典的基于点的逐帧跟踪算法.起初这个算法是用来求解stero matching1的,后来经过Carlo Tomasi2和Jianbo Shi3等人的发 ...

  8. OpenCV中的光流及视频特征点追踪

    OpenCV中的光流及视频特征点追踪 1. 效果图 2. 原理 2.1 什么是光流?光流追踪的前提.原理 2.2 光流的应用 2.3 光流的2种方法 3. 源码 3.2 稀疏光流追踪 3.2 优化版稀 ...

  9. SVO(SVO: fast semi-direct monocular visual odometry)

    SVO(SVO: fast semi-direct monocular visual odometry)翻译 文章目录 SVO(SVO: fast semi-direct monocular visu ...

最新文章

  1. cookie和url参数获取的常规实用方法合集(ES6)
  2. 图解分布式架构的演进过程
  3. 转自JIM Wang:把 isv.config.xml 按钮事件移动到 entity.onload()
  4. Python-统计svn变更代码行数
  5. Microsoft Enterprise Library---解读Configuration之元数据
  6. 新版ubuntu中打开终端的方法和安装ssh 的方法
  7. leetcode-全排列详解(回溯算法)
  8. Vertex shader 里面的layout (location = 0)
  9. 前端网页字体优化指南
  10. 海量数据处理 算法总结
  11. JRebel设置快捷键+激活方式
  12. vue 动态引入组件
  13. mysql二叉树_mysql如何创建二叉树
  14. Synchronized实现原理
  15. 台式机装苹果系统_台式机能装苹果系统? 能!
  16. Windows 此电脑->设备与驱动器->图标管理
  17. 看我拿下域控-cve2020-1472-Netlogon
  18. 如何解决 fs.renameSync() 跨区移动文件的问题
  19. 阿贝云免费虚拟主机使用体验
  20. 记录策略模式模板模式的一次应用过程

热门文章

  1. 高光谱遥感数值建模技术及在植被、水体、土壤信息提取领域应用
  2. Java实现 LeetCode 152 乘积最大子序列
  3. 【OpenAI-maddpg】训练时遇到的一些错误
  4. Qt修改鼠标样式为自定义图标
  5. 计算机的显卡功能,电脑怎么看显卡参数 显卡有什么作用
  6. 安装及设置MASM32 SDK
  7. RIKIBOT-FX4多线激光雷达用谷歌cartographer构建3D地图
  8. 计算机翻译语料库,人工智能与翻译
  9. Bean 的生命周期
  10. 35家互联网金融企业与安存科技签订集体战略合作协议