一种基于多尺度对应结构化学习的光流估计方法与流程

文档序号:12035801阅读:287来源:国知局

本发明属于计算机视觉领域,特别地涉及一种基于多尺度对应结构化学习的光流估计方法。



背景技术:

光流估计作为一种底层视觉技术,常作为一些高层视觉任务的辅助信息,如视频异常事件检测、视频动作识别等,光流通过提供视频帧之间的运动信息将帧之间的关联关系考虑在内。光流估计的目标是给定连续两帧视频帧,预测第一帧中每个像素的运动位移。光流估计的关键因素包括像素或图像区域的鲁棒表示、像素之间对应关系的建模以及计算有效性。传统方法一般将光流估计任务看成一个稀疏或稠密像素匹配问题,尽管一些方法在预测精度上取得了突破,但是其在计算上比较耗时,同时往往因需要结合多种方法而缺乏灵活性。

由于统计建模的有效性,目前基于学习的方法逐渐被应用到光流估计任务中。现有的基于学习方法主要是采用端到端的深度学习框架,输入一对连续视频帧,输出预测的光流图。深度学习能够有效地解决特征表示的问题,而在对应关系建模上主要有两种策略:1、在单一尺度上固定搜索范围,计算像素之间的相似度;2、采用从粗到细的方法,动态更新搜索范围。然而,对于前者,往往很难确定一个合适的搜索范围,特别是对于大位移运动情况;对于后者,一旦在粗的尺度上预测错误,很有可能会使这种错误向后传播而使得预测结果错误。



技术实现要素:

为解决上述问题,本发明的目的在于提供一种基于多尺度对应结构化学习的光流估计方法。该方法基于深度神经网络,利用深度视觉特征在不同尺度上建模像素之间的对应关系,并采用递归神经网络对不同尺度上的对应关系进行编码,能够更好地适应不同运动位移情况下的光流估计。

为实现上述目的,本发明的技术方案为:

基于多尺度对应结构化学习的光流估计方法,包括以下步骤:

s1、获取用于训练光流估计的连续帧图像数据集,并定义算法目标;

s2、在不同尺度上对连续两帧图像之间的对应进行结构化建模;

s3、对不同尺度上的对应关系进行联合编码;

s4、建立光流估计的预测模型;

s5、使用所述预测模型估计连续视频帧的光流图。

作为优选,步骤s1中,所述的用于训练光流模型的连续视频帧数据集,包括连续的视频帧对(xa,xb)train,人工标注的光流图otrain;

定义算法目标为:预测连续两帧视频图像中第一帧的光流图o。

进一步的,步骤s2中,在不同尺度上对连续两帧图像之间的对应进行结构化建模具体包括:

s21、对连续视频图像(xa,xb)train进行归一化后,随机进行包括放缩、旋转、平移、添加高斯噪声、对比度变换在内的操作,再从变换后的图像中裁剪出预设大小的图像块(ia,ib)train作为算法输入,根据图像的变换和运动规律对otrain作相应的几何变换得到

s22、使用三层卷积操作对(ia,ib)train分别提取特征得到ya和yb,三层卷积操作中每一层加入relu激活函数,即:

ya=f(ia;θ1)

yb=f(ib;θ1)

其中θ1为卷积参数;f(;)表示卷积操作;

s23、对s22中得到的特征(ya,yb)进行多尺度表示:

{(ya,l,yb,l),l=1,2,3,4},其中:

ya,l=f(ya;θ2,l)

yb,l=f(yb;θ2,l)

其中{θ2,l}为卷积参数,且ya,l、yb,l的尺寸分别小于ya,l+1、yb,l+1的尺寸;ya,l、yb,l分别由ya、yb经过卷积操作或max-pooling加卷积操作而得;

s24、在每个尺度上分别计算两个特征图之间的对应关系,对于ya,l中(i,j)位置处的特征向量其与yb,l中以(i,j)为中心且大小为(2d+1)×(2d+1)的区域块s(i,j;d)内所有位置的相似度通过下式计算:

其中c{·}表示将集合内元素串接成一个向量,<·>表示内积运算;d为假定的最大位移的绝对值,k表示计算相似度时所用区域块的大小为(2k+1)×(2k+1),p和q分别为s(i,j;d)内每个位置的水平方向和垂直方向的坐标;

对ya,l每个空间位置上的特征向量均按照上式计算其与yb,l对应位置集合上的特征向量之间的相似度,即得到该尺度上的对应关系ml

s25、使用两层卷积操作进一步处理ml,得到ql,两层卷积操作中每一层加入relu激活函数,即:

ql=f(ml;θ3,l)

其中θ3,l是卷积参数。

作为优选步骤s3中,对不同尺度上的对应关系进行联合编码具体包括:

s31、使用卷积gru从q1到q4建模它们之间的依赖关系,即按照以下公式得到每一个尺度隐藏层的输出hl

zl=σ(wz*ql+uz*hl-1,↑)

rl=σ(wr*ql+ur*hl-1,↑)

hl,↑=w*hl

其中*和⊙分别表示卷积和矩阵对应元素相乘操作,σ表示sigmoid函数,*表示反卷积操作;wz、uz、rl、wr、ur、w、u以及zl均为卷积核;tanh表示双曲正切函数;

s32、将每个尺度的隐藏层输出hl上采样到和网络第二层卷积输出特征图同样的大小,得到pl

pl=f(ql;θ4)

其中θ4:={wz,uz,wr,ur,w,u,w}为参数。

s33、将pl和ia的第二层卷积输出拼接得到最终编码结果e:

作为优选步骤s4中,建立光流估计的预测模型具体包括:

s41、建立深度卷积神经网络,神经网络的输入为一对连续视频帧(xa,xb),输出为相对于xb,xa中每个像素的运动位移神经网络的结构表示为映射以公式表示为:

其中θ5为由e预测时所用的卷积参数;

s42、神经网络的损失函数为:

其中表示(x,y)位置处像素在垂直方向上的预测位移,表示(x,y)位置处像素在垂直方向上的真实位移,表示(x,y)位置处像素在水平方向上的预测位移,表示(x,y)位置处像素在水平方向上的真实位移。

使用adam优化方法和反向传播算法在损失函数下训练整个神经网络。

作为优选步骤s4中,估计连续视频帧的光流图包括,将一对连续视频帧(xa,xb)直接输入到神经网络,输出即为预测的光流图。

本发明的基于多尺度对应结构化学习的光流估计方法,相比于现有的光流估计方法,具有以下有益效果:

首先,本发明的光流估计方法定义了光流估计中三个重要的问题,即像素或图像区域的鲁棒表示、像素之间对应关系的建模以及计算有效性。通过寻求这三个方向的解决方法,可以有效地解决复杂情况下的光流估计。

其次,本发明的光流估计方法基于深度卷积神经网络建立结构化对应模型以建模前两个关键问题,并具有计算有效性的优点。深度卷积神经网络能够更好地表达视觉特征,另外,视觉特征的提取和对应结构化模型的学习被统一在同一个框架里,提高了方法的最终效果。

最后,本发明的光流估计方法中提出将不同尺度上的对应关系看成一个序列,并通过利用递归神经网络建模不同尺度上对应之间的依赖关系而将其进行编码以预测光流。这种方法能够有效地将不同尺度上的对应关系融合,并保持原图中像素的空间拓扑结构。

本发明的基于多尺度对应结构化学习的光流估计方法,在视频分析和无人驾驶中,能够有效提高场景运动分析的准确度和效率,具有良好的应用价值。例如,在公共安全的应用场景里,本发明的光流估计方法能够快速和准确地预测场景中的运动规律,从而能够快速判断场景中有无异常事件发生,为公共场所的安防提供依据。

附图说明

图1为本发明的流程示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

相反,本发明涵盖任何由权利要求定义的在本发明的精髓和范围上做的替代、修改、等效方法以及方案。进一步,为了使公众对本发明有更好的了解,在下文对本发明的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本发明。

参考图1,在本发明的较佳实施例中,一种基于多尺度对应结构化学习的光流估计方法,包括以下步骤:

首先,获取用于训练光流模型的连续视频帧数据集,包括连续的视频帧对(xa,xb)train,人工标注的光流图otrain;

定义算法目标为:预测连续两帧视频图像中第一帧的光流图o。

其次,在不同尺度上对连续两帧图像之间的对应进行结构化建模具体包括:

第一步,对连续视频图像(xa,xb)train进行归一化(除以255)后,随机进行放缩、旋转、平移、添加高斯噪声、对比度变换等操作,再从变换后的图像中裁剪出高320、宽448大小的图像块(ia,ib)train作为算法输入,根据对图像的变换和运动规律对otrain作相应的几何变换(如放缩、旋转、平移、尺度变换等)得到

第二步,使用三层卷积操作(每一层加入relu激活函数)对(ia,ib)train分别提取特征得到ya和yb,即:

ya=f(ia;θ1)

yb=f(ib;θ1)

其中θ1为卷积参数;f(;)表示卷积操作;

第三步,对上一步中得到的特征(ya,yb)进行如下多尺度表示:

{(ya,l,yb,l),l=1,2,3,4},即:

ya,l=f(ya;θ2,l)

yb,l=f(yb;θ2,l)

其中{θ2,l}为卷积参数,且ya,l(yb,l)的尺寸小于ya,l+1(yb,l+1)的尺寸。ya,l(yb,l)由ya(yb)经过卷积操作或max-pooling加卷积操作而得。

第四步,在每个尺度上分别计算两个特征图之间的对应关系,对于ya,l中(i,j)位置处的特征向量其与yb,l中以(i,j)为中心、大小为(2d+1)×(2d+1)的区域块s(i,j;d)内所有位置的相似度可通过下式计算:

其中c{·}表示将集合内元素串接成一个向量,<·>表示内积运算;d为假定的最大位移的绝对值,k表示计算相似度时所用区域块的大小为(2k+1)×(2k+1),p和q分别为s(i,j;d)内每个位置的水平方向和垂直方向的坐标。对ya,l每个空间位置上的特征向量均按照上式计算其与yb,l对应位置集合上的特征向量之间的相似度即可得到该尺度上的对应关系ml

第五步,使用两层卷积操作(每一层加入relu激活函数)进一步处理ml,得到ql,即:

ql=f(ml;θ3,l)

其中θ3,l是卷积参数。

接下来,对不同尺度上的对应关系进行联合编码具体包括:

第一步,使用卷积gru从q1到q4建模它们之间的依赖关系,即按照以下公式得到每一个尺度隐藏层的输出hl

zl=σ(wz*ql+uz*hl-1,↑)

rl=σ(wr*ql+ur*hl-1,↑)

hl,↑=w*hl

其中*和⊙分别表示卷积和矩阵对应元素相乘操作,σ表示sigmoid函数,*表示反卷积操作。wz、uz、rl、wr、ur、w、u以及zl均为卷积核;tanh表示双曲正切函数;

第二步,将每个尺度的隐藏层输出hl上采样到和网络第二层卷积输出特征图同样的大小,得到pl

pl=f(ql;θ4)

其中θ4:={wz,uz,wr,ur,w,u,w}为s31中的参数。

第三步,将pl和ia的第二层卷积输出拼接得到最终编码结果e:

之后,建立光流估计的预测模型具体包括:

第一步,建立深度卷积神经网络,神经网络的输入为一对连续视频帧(xa,xb),输出为相对于xb,xa中每个像素的运动位移从而神经网络的结构可以表示为映射用公式可以表示为:

其中θ5为由e预测时所用的卷积参数。

第二步,神经网络的损失函数为:

其中表示(x,y)位置处像素在垂直方向上的预测位移,表示(x,y)位置处像素在垂直方向上的真实位移,表示(x,y)位置处像素在水平方向上的预测位移,表示(x,y)位置处像素在水平方向上的真实位移。

使用adam优化方法和反向传播算法在损失函数下训练整个神经网络。

最后,使用建立的模型对输入的一对连续视频帧预测光流。具体包括,将一对连续视频帧(xa,xb)输入到神经网络(省去放缩、旋转、平移、添加高斯噪声、对比度变换、裁剪等操作),输出即为预测的光流图。

上述实施例中,本发明的光流估计方法首先分别在不同尺度上对像素之间的对应关系进行结构化建模并使用递归神经网络编码不同尺度上的对应关系。在此基础上,将原问题转化为端到端的结构化学习问题,并基于深度神经网络建立光流估计模型。最后,利用训练好的光流估计模型来预测新的一对连续视频帧的光流信息。

通过以上技术方案,本发明实施例基于深度学习技术发展了一种基于多尺度对应结构化学习的光流估计方法。本发明可以在不同尺度上建模像素之间的对应关系并建模不同尺度上对应之间的依赖关系,从而估计准确的光流信息。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1