本发明属于计算机领域,涉及基于门控循环单元的视频预测方法。
背景技术:
视频预测是视觉智能中的高级任务,要求模型利用海量无标注自然数据去学习视频的内在表征。该任务通过机器学习模型,在视频质量改善、电影制作、视频监控、机器人决策、无人驾驶、视频理解等领域都有广泛的应用前景,因此近两年来得到快速发展,引起了国内外众多学者的研究兴趣。
目前,大部分学者主要使用深度学习方法来实现视频预测任务,最基本的模型框架是使用卷积神经网络(cnn)来提取图片或视频的特征,再将视频特征送入预测对抗网络或自动编码网络去预测后续的视频帧。对于gan,计算复杂度高,需要对预测器和鉴别器进行分别训练,同时gan虽然可以预测清晰的内容,但是预测的内容于目标的相似度有很大的不同。对于autoencoder,可以预测和目标相近的内容,但是清晰度却比不上gan。使用gru可以减少计算复杂度,同时它可以解决长期记忆和反向传播中的梯度消失等问题。
技术实现要素:
有鉴于此,本发明的目的在于提供一种基于门控循环单元的视频预测方法。
为达到上述目的,本发明提供如下技术方案:
基于门控循环单元的视频预测方法,该方法包括以下步骤:
s1、数据处理阶段。使用构建视频数据处理模块,该模块将输入的各种格式视频根据输入的参数进行视频帧的提取;
s2、搭建视频特征提取模型,该视频特征提取模型使用卷积神经网络和视频特征自动编码网络。将待提取的视频输入视频特征提取模块,通过卷积神经网络和自动编码网络提取原始视频帧的相关特征;
s3、使用门控循环单元网络搭建视频预测模型。将提取的视频特征和原始的视频输入视频预测模型中,并对模型进行训练,让视频预测模型预测后续的视频帧;
s4、损失和参数优化。将预测的视频帧和对应的原始帧通过定义的损失函数进行损失计算,在通过反向传播进行参数和损失优化。直到优化到一定程度即损失值到达预期要求且不在继续下降时即可停止模型训练。
s5、可视化。将记录的损失函数通过画图来更直观的显示损失值的变化过程。将预测的视频帧也进行可视化,从视觉上来判断预测的视频帧是否到达预测要求。
可选的,所述的步骤s1具体包括:
s11、数据处理阶段需要借助多媒体处理工具ffmpeg,循环数据集中的每一个视频根据参数集ρ=(i,r,f,s,o)进行视频帧的提取。其中i是视频所在路径,r表示每秒提取多少帧,f表示视频帧输出的格式,s表示视频帧输出的尺寸,o表示视频帧输出的路径。
s12、对提取到的视频帧数据集进行清洗,去除空帧、不清晰的帧等。再将数据进行加载,并对数据集进行打包和打乱等进一步操作。
可选的,所述的步骤s2具体包括:
s21、特征提取模块使用的是在提取特征和降维方面性能良好且不会发生权重爆炸的卷积autoencoder模型。在提取前景时使用的是vgg网络结构,该网络结构主要是由尺寸为3*3的卷积核的卷积神经网络和尺寸为2*2的池化核的最大池化层堆叠组成。背景提取使用的是残差网络结构,该网络有很多版本,特征提取中使用的是resnet50的残差网络。
s21、特征提取主要是提取可以表示输入视频的数字向量,特征提取模块使用卷积神经网络将输入的视频进行特征映射到特征值矩阵。特征值矩阵有两种,分别是128维的前景特征矩阵和10维的背景特征矩阵。
可选的,所述的步骤s3具体包括:
s31、使用循环神经网络中的门控循环单元网络来搭建视频预测网络,门控循环神经网络可以很好的解决网络反向传播中的梯度消失问题,所以gru可以长期记忆输入数据的时序特征。对于gru,是通过两个门控系统-重置门和更新门来对隐藏状态和输入数据进行控制。对于第一个gru,在第i步时间,其第一gru的隐藏层
其中,xi为第i时间步视频特征序列中的元素,
根据权利一所述的一种基于门控循环单元的视频预测方法,其特征在于,所述的预测模块包括依次连接的第二个gru对于第二个gru和全连接网络。对于第二个gru,其计算式为:
其中
对于全连接层,其计算式为:
o=tanh(wf.h)
其中wf为全连接层的权重矩阵,h为gru的最终输出,tanh(*)是一种激活函数,将输入的值映射在[-1,1]之间。
可选的,所述的步骤s4具体包括:
s41、初始化模型的学习率,并使每轮训练的学习率递减,使用均方差损失函数对视频预测模型进行m轮优化;
s42、使用峰值信噪比和结构相似性度量方法来评估模型,其中psnr的计算式为:
其中,mse是生成帧和原始帧的均方差,max为生成帧的像素灰度值的最大值。
ssim的计算式为:
其中,μr、μg分别为r和g的像素灰度值均值,σr、σg分别为r和g的像素灰度值的标准差,σrg表示r和g像素灰度值协方差,c1、c2为超参数,为了防止除数为0。
本发明的有益效果在于:
(1)设计出基于循环神经网络的视频预测方法,能够有效的保持视频的时序关系;
(2)设计出基于gru的视频预测方法可以减少计算复杂度,节省网络计算时间;
(3)设计出基于gru的视频预测方法可以很好的解决模型在训练过程中反向传播的梯度消失问题。
本发明的其他优点、目标和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书来实现和获得。
附图说明
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作优选的详细描述,其中:
图1为基于门控循环单元的顺序执行图;
图2为门控循环单元的内部结构图;
图3为门控循环单元模型结构图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
其中,附图仅用于示例性说明,表示的仅是示意图,而非实物图,不能理解为对本发明的限制;为了更好地说明本发明的实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
本发明实施例的附图中相同或相似的标号对应相同或相似的部件;在本发明的描述中,需要理解的是,若有术语“上”、“下”、“左”、“右”、“前”、“后”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此附图中描述位置关系的用语仅用于示例性说明,不能理解为对本发明的限制,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语的具体含义。
如图1~3所示,为基于门控循环单元的视频预测方法。
实施实例1
本实例中的数据集是movingmnist数据集,该数据集一共包含60000个训练样本和10000的测试样本。将视频中的前十帧输入到卷积autoencoder模型中,训练好的encoder对视频进行特征提取,输出128维的前景特征矩阵和10维的背景特征矩阵。将提取的前景和背景特征进行拼接之后按x=[x1,x2,...,xk]的时间顺序输入第一个gru(gru1)中。在时间i步,隐藏层
其中,rgu内部的时间方式为:
rt=δ(wirxt bir whrht-1 bhr)
zt=δ(wizxt biz whzht-1 bhz)
nt=tanh(winxt bin rt*(whnht-1 bhn))
ht=(1-zt)*nt zt*ht-1
其中rt表示gru的重置门,zt表示gru的更新门。
生成模块依次连接的第二个gru(gru2)、全连接网络。生成时间步i时的视频帧时,包括步骤:
将输出输入全连接层:
o=tanh(wf.h)
本实例中使用均方差损失函数对视频预测模型进行m轮训练,学习率lr初始化为5e-4。均方差损失函数具体表示为:
使用峰值信噪比和结构相似性度量方法来评估模型,其中psnr的计算式为:
其中,mse是生成帧和原始帧的均方差,max为生成帧的像素灰度值的最大值。
ssim的计算式为:
实施实例2
本实例中使用的是kth视频数据集,其中包含拳击、拍手、挥手、慢跑、跑、走路等六种动作。使用多媒体处理工具ffmpeg对kth视频数据集进行按25帧/秒提取大小为128*128的视频帧,再将处理得到的视频数据划分为训练集、测试集。
特征提取。使用训练好的卷积autoencoder模型的中encoder进行视频的特征提取主,特征提取模块将输出128维的前景特征矩阵和10维的背景特征矩阵。
将提取的视频特征和原始的视频输入视频预测模型中,并对模型进行训练,让视频预测模型预测后续的视频帧;
损失和参数优化。将预测的视频帧和对应的原始帧通过定义的损失函数进行损失计算,在通过反向传播进行参数和损失优化。直到优化到一定程度即损失值到达预期要求且不在继续下降时即可停止模型训练。
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。
1.基于门控循环单元的视频预测方法,其特征在于:该方法包括以下步骤:
s1、数据处理阶段;使用构建视频数据处理模块,该模块将输入的各种格式视频根据输入的参数进行视频帧的提取;
s2、搭建视频特征提取模型,该视频特征提取模型使用卷积神经网络和视频特征自动编码网络;将待提取的视频输入视频特征提取模块,通过卷积神经网络和自动编码网络提取原始视频帧的相关特征;
s3、使用门控循环单元网络搭建视频预测模型;将提取的视频特征和原始的视频输入视频预测模型中,并对模型进行训练,让视频预测模型预测后续的视频帧;
s4、损失和参数优化;将预测的视频帧和对应的原始帧通过定义的损失函数进行损失计算,在通过反向传播进行参数和损失优化;直到优化到一定程度即损失值到达预期要求且不在继续下降时即停止模型训练;
s5、可视化;将记录的损失函数通过画图来更直观的显示损失值的变化过程;将预测的视频帧也进行可视化,从视觉上来判断预测的视频帧是否到达预测要求。
2.根据权利要求1所述的基于门控循环单元的视频预测方法,其特征在于:所述的步骤s1具体包括:
s11、数据处理阶段需要借助多媒体处理工具ffmpeg,循环数据集中的每一个视频根据参数集ρ=(i,r,f,s,o)进行视频帧的提取;其中i是视频所在路径,r表示每秒提取多少帧,f表示视频帧输出的格式,s表示视频帧输出的尺寸,o表示视频帧输出的路径;
s12、对提取到的视频帧数据集进行清洗,去除空帧和不清晰的帧;再将数据进行加载,并对数据集进行打包和打乱进一步操作。
3.根据权利要求1所述的基于门控循环单元的视频预测方法,其特征在于:所述的步骤s2具体包括:
s21、特征提取模块使用的是在提取特征和降维方面性能良好且不会发生权重爆炸的卷积autoencoder模型;在提取前景时使用的是vgg网络结构,该网络结构由尺寸为3*3的卷积核的卷积神经网络和尺寸为2*2的池化核的最大池化层堆叠组成;背景提取使用的是残差网络结构,该网络有很多版本,特征提取中使用的是resnet50的残差网络;
s21、特征提取提取表示输入视频的数字向量,特征提取模块使用卷积神经网络将输入的视频进行特征映射到特征值矩阵;特征值矩阵有两种,分别是128维的前景特征矩阵和10维的背景特征矩阵。
4.根据权利要求1所述的基于门控循环单元的视频预测方法,其特征在于:所述的步骤s3具体包括:
s31、使用循环神经网络中的门控循环单元网络来搭建视频预测网络,对于gru,是通过两个门控系统-重置门和更新门来对隐藏状态和输入数据进行控制;对于第一个gru,在第i步时间,其第一gru的隐藏层
其中,xi为第i时间步视频特征序列中的元素,
根据权利一所述的一种基于门控循环单元的视频预测方法,其特征在于,所述的预测模块包括依次连接的第二个gru对于第二个gru和全连接网络;对于第二个gru,其计算式为:
其中
对于全连接层,其计算式为:
o=tanh(wf.h)
其中wf为全连接层的权重矩阵,h为gru的最终输出,tanh(*)是一种激活函数,将输入的值映射在[-1,1]之间。
5.根据权利要求1所述的基于门控循环单元的视频预测方法,其特征在于:所述的步骤s4具体包括:
s41、初始化模型的学习率,并使每轮训练的学习率递减,使用均方差损失函数对视频预测模型进行m轮优化;
s42、使用峰值信噪比和结构相似性度量方法来评估模型,其中psnr的计算式为:
其中,mse是生成帧和原始帧的均方差,max为生成帧的像素灰度值的最大值;
ssim的计算式为:
其中,μr、μg分别为r和g的像素灰度值均值,σr、σg分别为r和g的像素灰度值的标准差,σrg表示r和g像素灰度值协方差,c1、c2为超参数,为了防止除数为0。
技术总结