1_5 光流法计算VO(optical_flow)

        采用特征点法做VO存在耗时较大的问题,一般耗时情况:如下

        (1) 在图像中提取特征点并计算特征描述, 非常耗时  ~10+ms  ORB,shift耗时更多;
        (2) 在不同图像中寻找特征匹配,                非常耗时   O(n^2) 暴力匹配
        (3) 利用匹配点信息计算相机位姿,             比较快速<1ms

        因此,为了速度还有不使用特征匹配计算VO的方法,主要有两大类,分别是:

        (1) 通过其他方式寻找配对点;   光流法
                稀疏光流法:以Lucas-Kanade(LK)光流为代表
                稠密光流法:以Horn-Schunk(HS)光流为代表
        本质上是估计像素在不同时刻图像中的运动。
        光流法推导过程依赖灰度不变假设:I(x_{1},y_{1},t_{1})=I(x_{2},y_{2},t_{2})=I(x_{3},y_{3},t_{3})
        t时刻位于x,y处像素点的灰度值为I(x,y,t)
        t+dt时刻位于x+dx,y+dy处的像素点灰度值为I(x+dx,y+dy,t+dt)
        对t+dt时刻进行泰勒一级展开如下:
        I(x+dx,y+dy,t+dt)\approx I(x,y,t)+\frac{\partial I}{\partial x}dx+\frac{\partial I}{\partial y}dy+\frac{\partial I}{\partial t}dt,由于灰度值两个时刻相等,所以可得:
\frac{\partial I}{\partial x}\frac{dx}{dt}+\frac{\partial I}{\partial y}\frac{dy}{dt}=-\frac{\partial I}{\partial t},所以这里是希望求解dx/dt和dy/dt。

        注意:灰度不变是一种理想假设,对于高光、阴影等情况很可能不成立。

        由于上述的光流公式是一个二元一次方程,欠定的,所以需要引入额外的约束。假定一个窗口(w*w)内光度不变,则可以构建矩阵:

\begin{bmatrix} I_{x} & I_{y} \end{bmatrix}_{k}\begin{bmatrix} u\\v \end{bmatrix}=-I_{tk}, k=1,2,...w^{2}

        通过超定最小二乘求解运动u,v

        A=\begin{bmatrix} \begin{bmatrix} I_{x} &I_{y} \end{bmatrix}_{1}\\... \\ \begin{bmatrix} I_{x} &I_{y} \end{bmatrix}_{k} \end{bmatrix},

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值