LK光流算法总结(2)

2019-05-26 18:32

考虑物体的运动速度较大时,算法会出现较大的误差。那么就希望能减少图像中物体的运动速度。一个直观的方法就是,缩小图像的尺寸。假设当图像为400×400时,物体速度为[16 16],那么图像缩小为200×200时,速度变为[8,8]。缩小为100*100时,速度减少到[4,4]。所以在源图像缩放了很多以后,原算法又变得适用了。所以光流可以通过生成 原图像的金字塔图像,逐层求解,不断精确来求得。

假设图像的宽高每次缩放为原来的一般,共缩放了Lm层,则第0层为原图像。设已知原图的速度向量为d,则每一层的速度为

(16)

基于金字塔的光流法的大概步骤如下:现在最深层Lm中求解光流。这次计算的结果反馈给上一次Lm-1,作为该层初始时的光流值得估计g。就这样一层一层的向上反馈,直到 最高层,即原图。对于每一层L,上方程变为:

(17)

每一层的计算结果通过如下方程反馈给上一层作为初始的光流估计:

(18)

由于金字塔的缩放减小了光流值,最底层的光流估计值可以设为0,即

(19)

图3 金字塔光流示意图

2前后光流估计算法

统的光流计算方法主要是基于灰度守恒和光流场的平滑性假设,但这些假设在阴影、边

6

界和遮挡性的地方不再成立,为此,对其进行改进。

前向-后向光流方程:

(20)

光流约束方程为:

(21)

尽管Lucas-Kanade光流法计算简单,光流估计精度较高,但它有一个致命缺点,假 定邻域Ω内各像素点光流保持恒定,而且光流计算依赖于窗口权重函数,这意味着如果在邻域Ω内存在严重违反光流约束方程的点或邻域Ω运动不连续,将使得估计的光流可靠性严重降低。为此,引入Hessian矩阵判断领域Ω内每点对于基本约束方程的“良态性”。

方程?分别对x和y求偏导数,可得:

(22)

写成矩阵形式,即:

(23)

定义Hessian矩阵:

(24)

Hessian矩阵的条件数:

(25)

其中

分别为Hessian矩阵H的最大特征值和最小特征值,可以通过Hessian

矩阵的条件数大小来判断方程(23)解的稳定性,如果Hessian矩阵的条件数很大则方程(23)为病态方程,对应的Hessian矩阵秩很小,其解不稳定,计算的光流不可靠;如果Hessian矩阵的条件数接近1,对应的Hessian矩阵秩很大,方程(23)为良态,其解鲁棒性较好。由

7

此可以通过计算Hessian矩阵的条件数来剔除邻域Ω内不可靠点。

Hessian矩阵的条件数很好地刻画了线性方程(11)解的稳定性,而且条件数越大,对应的Hessian矩阵的秩越小,为此可以先利用Hessian矩阵剔除邻域Ω内不可靠点,并把各点 对应条件数的倒数作为该点权重,其算法如下:

(1)计算图像中每点的一阶和二阶梯度;

(2)分别计算每点对应Hessian矩阵的秩det(H)和条件数Cond(H),设定阈值τ,并对每个邻域Ω内的 ) (X W 进行归一化处理,则:

(3)采用加权最小二乘法求解式(21)光流场(u,v)。

四总结

如上所述,光流法基本思想是像素守恒,其思想简单,易于理解。LK算法是对光流法的改进,在光流法上假设了小窗口光流一致原则和小运动以及亮度守恒,使得光流的求解变得非常的简单,并且能够进行大量实际应用。但是,正是由于LK算法假设性太强,使得其应用受到极大限制。所以出现了好多改进算法。金字塔光流算法正是针对其小运动假设而做的改进,其用缩小图像尺寸的方法来较小运动矢量。而前后光流算法可以剔除光流不一致或跳动较大的点,放松光流一致的假设的条件。后续的改进算法还有很多,可以加上全局变量来处理遮挡的问题等等,目前只是学习的这里。以上就是此次的读书笔记。

8


LK光流算法总结(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:中学生的课外阅读的研究性学习报告

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: