机器学习与数据挖掘

Optical flow equation

2018-11-16  本文已影响25人  约翰L

光流是指空间运动物体像素运动的瞬时速度,通过比较两帧之间同一个像素点的变化情况来推测物体运动情况的一种方法,因此如何解光流方程是一个问题。

基本理论就是假设两个帧一个坐标的像素在极短时间内变化不是很大,

那就有:

I(x,y,t)=I(x+dx,y+dy,t+dt)

使用泰勒展开:

得到

I(x+dx,y+dy,t+dt)=I(x,y,t)+IxVx+IxVy+It+HOT

HOT是微小扰动

所以得出optical flow equation

Ix(q1)Vx+Iy(q1)Vy+It(q1)=0

这就是光流方程,可以看见,只有一个已知方程,但是存在两个未知量,如何求解方程是一个问题。

其中的一个方法是:

Lucas-Kanade 方法:

主要思想是在我们要求解的点附近选取一个small patch,

在这个patch中存在这n个点(包括原始点),但是我们完全可以认为这些点在方程中的成立条件是和这个原始点一致的。

那么先对所有的点列方程组:

Ix(q1)Vx1+Iy(q1)Vy1+It(q1)=0

.

.

.

Ix(qn)Vxn+Iy(qn)Vyn+It(qn)=0

可以近似的认为这些点同属一个光流方程

因此方程组变为:

Ix(q1)Vx+Iy(q1)Vy+It(q1)=0

.

.

.

Ix(qn)Vx+Iy(qn)Vy+It(qn)=0

现在是n个方程两个未知数;

使用线性代数思想:伪逆矩阵

A=[

Ix(q1) Iy(q1)

.

.

.

Ix(qn) Iy(qn)

]

v=[Vx Vy]T

b=[-It(q1) ... -It(qn)]T

存在关系:

Av=b

解方程:

ATAv=ATb

=>

v=(ATA)-1ATb

得解

展开的结果显然与最小二乘是一致的

上一篇 下一篇

猜你喜欢

热点阅读