首页 » 技术分享 » 光流估计

光流估计

 

光流估计基本模型

在每一像素(x,y)处,有:

因此有:

一个小方格里的所有像素位移相同

即Au=b

 

Lucas—Kanade方法

min ||Au-b||

最小二乘解:

区域像素只有2个时,就是2元1次方程组求解。多个像素,比如3*3时,则是求上述最小二乘解。

 

思路:在一个小的图像邻域内速度近似一致

约束:

对应:

类似前述求解,可得

 

可信度判断:

 

金字塔L — K方法

 

金字塔流光位移传播示意图

 

金字塔L — K方法推导

边缘(对比Harris算子)

低纹理区域(对比Harris算子)

 

OpenCV相关函数

CV_EXPORTS_W void calcOpticalFlowPyrLK( InputArray prevImg, InputArray nextImg,
                                                                           InputArray prevPts, InputOutputArray nextPts,
                                                                           OutputArray status, OutputArray err,
                                                                           Size winSize = Size(21,21), int maxLevel = 3,
                                                                TermCriteria criteria = TermCriteria(TermCriteria::COUNT+TermCriteria::EPS, 30, 0.01),
                                                                           int flags = 0, double minEigThreshold = 1e-4 );

prevlmg,第一帧图像。

nextlmg,第二帧图像。

prevPts,第一帧图像中的所有特征点向量。

nextPts,第二帧图像中的所有特征点向量。

status,输出状态向量;如果相应点光流被发现,向量的每个元素被设置为1,否则,被置为0。

转载自原文链接, 如需删除请联系管理员。

原文链接:光流估计,转载请注明来源!

0