本发明属于视频处理技术领域,涉及一种视频序列丢失帧预测恢复方法,具体是一种基于深度残差网络的视频序列丢失帧预测恢复方法。
背景技术:
视频往往需要传输,比如浏览在线视频以及监控图像的传输。实际情况中,由于受传输条件,视频的传输有时候会伴随着帧的丢失,为了提高得到视频的质量,往往会寻求一些办法来利用未丢失的帧来对这些丢失帧进行恢复重建。
现有的丢失帧恢复方法,大多利用高斯函数、光流、运动矢量等传统方法,以像素块为单位进行丢失帧的恢复预测,计算量大且像素块的选择需要人为选取,影响丢失帧的恢复准确度。
技术实现要素:
本发明针对现有技术的不足,提供了一种基于深度残差网络的视频序列丢失帧预测恢复方法,利用深度学习方法强大的数据非线性逼近能力和自学习能力,准确预测视频传输过程中丢失帧的图像。
本发明的目的可以通过以下技术方案实现:
基于深度残差网络的视频序列丢失帧预测恢复方法,具体包括以下步骤:
步骤S1,收集视频序列中预定数量的连续视频帧图像,选取视频中的某帧图像作为丢失帧,然后按照距离丢失帧的远近,将视频帧序列划分为当前组、近期组和远期组,构造数据集;
步骤S2,构造基于LSTM的深度残差网络结构;
步骤S3,根据步骤S1构造的数据集,构造基于LSTM的深度残差网络结构的训练数据集、验证数据集和测试数据集;
步骤S4,将步骤S3中的训练数据集送入步骤S2中构造的基于LSTM的深度残差网络结构中,进行网络训练,然后采用步骤S3中的验证数据集和测试数据集对训练所得的参数进行调整,逐步提高预测精度;
步骤S5,将经过步骤S4中网络训练、验证、测试后的基于LSTM的深度残差网络结构作为视频序列丢失帧的预测恢复模型,将位于丢失帧之前的视频帧图像,输入基于LSTM的深度残差网络中,经过模型对输入数据的自主学习,最终可得到该丢失帧的预测恢复图像。
进一步地,所述步骤S1中构造的数据集,从丢失帧的前一帧图像开始计算,当前组、近期组和远期组分别包含m帧、n帧、p帧图像,每三组视频帧作为一个样本,构造样本数为M的数据集。
进一步地,所述步骤S2中基于LSTM的深度残差网络结构包括三个结构相同的深度残差子网络和一个输出融合模块,三个深度残差子网络分别用来处理数据集的当前组、近期组和远期组的视频帧图像。
进一步地,所述深度残差子网络具有L+6层,前三层为卷积层,用来对视频帧图像进行特征提取;中间L层为残差单元,前三层卷积层将提取的特征送入L个残差单元;最后三层为卷积层,用于进行反卷积处理,得到深度残差子网络的输出。
进一步地,所述深度残差子网络的前三个卷积层分别为卷积层L1、卷积层L2、卷积层L3,三个卷积层后各跟有一个最大池化层,卷积层L1和卷积层L2均采用线性修正单元ReLU作为激活函数,其表达为f(x)=max(0,x);
所述深度残差子网络的最后三个卷积层分别为卷积层L4、卷积层L5、卷积层L6,卷积层L4与卷积层L3的卷积核完全一致,卷积层L5与卷积层L2的卷积核完全一致,卷积层L6与卷积层L1的卷积核完全一致。
进一步地,所述输出融合模块采用一种基于参数的矩阵融合方法,公式如下:
其中是三个深度残差子网络融合后的输出,分别为当前组、近期组和远期组子网络的输出,Wc、Wr、Wd是分别受到当前、近期、远期视频帧影响的可学习参数,ο表示Hadamard乘积运算,即两个矩阵中对应的元素相乘。
进一步地,所述步骤S3中,将数据集中的视频帧图像分为训练数据集、验证数据集和测试数据集三个数据集,分别用于基于LSTM的深度残差网络的训练、验证和测试。
本发明的有益效果:本发明提供的基于深度残差网络的视频序列丢失帧预测恢复方法,运用深度学习相关理论,利用深度残差网络来避免因网络层数过多而造成的训练效率大幅降低甚至不易收敛的现象,同时考虑LSTM长短时记忆网络对时间序列的记忆学习能力,用固定数量的视频帧图像数据作为训练样本训练该网络,进而进行视频序列中丢失帧的恢复预测,本发明极大程度上利用了视频帧图像的内在特征以及帧间图像的相似性与连贯性,提高了预测精度与效率,同时具有较强的泛化能力,具有一定的社会价值和现实意义。
附图说明
图1是本发明的方法流程图。
图2是本发明深度残差网络的示意图。
图3是本发明残差单元的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
如图1所示,本发明提供了一种基于深度残差网络的视频序列丢失帧预测恢复方法,具体包括以下步骤:
步骤S1,收集视频序列中预定数量的连续视频帧图像,构造数据集。
其中,由于丢失帧的图像与其之前的视频帧图像具有相关性,且距离远近不同,相关性也不同,所以本发明首先选取视频中的某帧图像作为丢失帧,然后按照距离丢失帧的远近,将视频帧序列划分为当前组、近期组、远期组。从丢失帧的前一帧图像开始计算,各组分别包含m帧、n帧、p帧图像,每三组视频帧作为一个样本,构造样本数为M的数据集,优选m=5,n=15,p=25,M=20000。
步骤S2,构造基于LSTM的深度残差网络结构。
其中,如图2所示,基于LSTM的深度残差网络结构包括三个结构相同的深度残差子网络和一个输出融合模块,三个深度残差子网络分别用来处理数据集的当前组、近期组和远期组的视频帧图像。
其中,深度残差子网络具有L+6层,其前三层为卷积层,用来对视频帧图像进行特征提取。卷积层L1含有16个大小为5×5的卷积核,卷积层L2含有40个3×3的卷积核,卷积层L3含有20个3×3的卷积核,三个卷积层后各跟有一个感受野为2×2大小的最大池化层,卷积层L1和卷积层L2均采用线性修正单元ReLU作为激活函数,其表达为f(x)=max(0,x)。
深度残差子网络的中间L层为残差单元,如图3所示,前三层卷积层将提取的特征送入L个残差单元,残差网络可以避免因网络层数过多而造成的训练时效率大幅降低甚至不易收敛的现象。
深度残差子网络的最后三层为卷积层,用于进行反卷积处理,得到深度残差子网络的输出。卷积层L4含有20个与卷积层L3相同的3×3卷积核,卷积层L5含有40个与卷积层L2相同的3×3卷积核,卷积层L6含有16个与卷积层L1相同的5×5卷积核。
其中,输出融合模块采用一种基于参数的矩阵融合方法,公式如下:
其中是三个深度残差子网络融合后的输出,分别为当前组、近期组和远期组子网络的输出,Wc、Wr、Wd是分别受到当前、近期、远期视频帧影响的可学习参数,ο表示矩阵乘法运算。
步骤S3,根据步骤S1构造的数据集,构造基于LSTM的深度残差网络结构的训练数据集、验证数据集和测试数据集。
根据步骤S1中构造的数据集,将所采集的数据分为训练数据集、验证数据集和测试数据集三个数据集,三部分数据所占比例依次为70%、10%、20%,分别用于基于LSTM的深度残差网络的训练、验证和测试。
步骤S4,将步骤S3中的训练数据集送入步骤S2中构造的基于LSTM的深度残差网络结构中,进行网络训练,然后采用步骤S3中的验证数据集和测试数据集对训练所得的参数进行调整,逐步提高预测精度。
网络输出预测恢复的丢失帧为实际的真实帧为X,定义Loss函数为二者的均方误差,如下式所示,网络训练的目标是使该均误差最小。
步骤S4中,训练基于LSTM的深度残差网络时,使用反向传播法和Adam算法,其中Adam算法存储了先前平方梯度的指数衰减平均值,而且保持了先前梯度的指数衰减平均值,设置初始学习速率为0.01,权重衰减取0.0005,mini-batches大小为32,反向传播的时间步长为20时间步,即每20K次迭代后学习速率除以10。
步骤S4中,训练数据集中的视频帧序列作为训练输入,验证数据集在网络训练的过程中每迭代1000次进行一次验证,最终比较test loss和train loss。当test loss不再降低时,终止网络训练,标志着用于视频序列丢失帧预测恢复的基于LSTM的深度残差网络训练完成。
步骤S4中,测试数据集中的视频帧图像在基于LSTM的深度残差网络训练完成后进行输入,输出得预测的下一帧的图像,查看该结果与实际下一视频帧的差距,进而对神经网络中的参数进行调整,逐步提高预测精度。
步骤S5,将经过步骤S4中网络训练、验证、测试后的基于LSTM的深度残差网络结构作为视频序列丢失帧的预测恢复模型,将位于丢失帧之前的视频帧图像,输入基于LSTM的深度残差网络中,经过模型对输入数据的自主学习,最终可得到该丢失帧的预测恢复图像。
本发明提供的基于深度残差网络的视频序列丢失帧预测恢复方法,运用深度学习相关理论,利用深度残差网络来避免因网络层数过多而造成的训练效率大幅降低甚至不易收敛的现象,同时考虑LSTM长短时记忆网络对时间序列的记忆学习能力,用固定数量的视频帧图像数据作为训练样本训练该网络,进而进行视频序列中丢失帧的恢复预测,本发明极大程度上利用了视频帧图像的内在特征以及帧间图像的相似性与连贯性,提高了预测精度与效率,同时具有较强的泛化能力,具有一定的社会价值和现实意义。
在本说明书的描述中,参考术语“一个实施例”、“示例”、“具体示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上内容仅仅是对本发明结构所作的举例和说明,所属本技术领域的技术人员对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,只要不偏离发明的结构或者超越本权利要求书所定义的范围,均应属于本发明的保护范围。