本发明涉及视频处理技术领域,尤其是指一种基于双向循环网络的高分辨率视频复原系统及方法。
背景技术:
在现代生活中,高分辨率视频的需求非常普遍,在安防监视、医学成像、目标检测和人脸识别等众多领域都需要高分辨率图像或视频的支持。高分辨率视频复原技术通过低分辨率图像作为输入,在不需要其他信息的情况下生成对应的高分辨率图像,同时具有较好的主客观评价。如传统方法中的插值算法,它能够通过插值运算有效地提高图片的分辨率,但其主客观评价较差。
技术实现要素:
为此,本发明所要解决的技术问题在于克服现有技术中传统方法中的插值算法,能够通过插值运算有效地提高图片的分辨率,但其主客观评价较差的技术缺陷。
为解决上述技术问题,本发明提供了一种基于双向循环网络的高分辨率视频复原系统,包括:
正向循环模块,所述正向循环模块包括多个依次设置的正向处理单元,所述正向处理单元与视频帧的一一对应设置,当前所述正向处理单元根据前一级正向处理单元的输出、上一时刻视频帧和当前视频帧,将当前视频帧转化为低频部分;
反向循环模块,所述反向循环模块包括多个依次设置的反向处理单元,所述反向处理单元与视频帧的一一对应设置,当前所述反向处理单元根据前一级反向处理单元的输出、下一时刻的视频帧和当前视频帧,将当前视频帧转化为高频部分;
融合单元,所述融合单元具有多个,所述融合单元与正向处理单元和反向处理单元对应设置,所述融合单元将所述低频部分与高频部分融合,获得高分辨率的视频帧。
作为优选的,所述正向处理单元将视频的预设图像帧转化为低频部分,包括以下步骤:
利用卷积层对xf进行浅层特征提取,获得浅层特征,其中,
将浅层特征进行通道拆分,获得重置信号r和更新信号u两部分;
将重置信号r与
中层特征通过残差网络进行特征细化,获得细化后的特征h't-1;
将细化后的特征h't-1与u组合进行特征更新,获得输出分量
作为优选的,所述残差网络包括多个残差块。
作为优选的,所述将细化后的特征h't-1与u组合进行特征更新,获得输出分量
计算uf,
通过卷积层和激活层对uf进行处理,获得隐藏分量
通过卷积层对uf进行处理,获得输出分量
作为优选的,所述融合单元包括三个通道数为3的残差块。
本发明公开了一种基于双向循环网络的高分辨率视频复原方法,基于上述的高分辨率视频复原系统,包括以下步骤:
s1、进入正向循环模块,令帧数t=1,初始化隐藏状态
s2、每一个正向循环单元采用第t-1帧的图像、第t帧的图像、
s3、采用正向循环单元对浅层特征ffin进行深层特征细化和错误信息删除,得到下一个时间的隐藏状态
s4、每一个反向循环单元采用第t帧的图像、第t+1帧的图像、
s5、采用反向循环单元对浅层特征fbin进行深层特征细化和错误信息删除,得到下一个时间的隐藏状态
s6、融合正向循环的结果和反向循环的结果,复原获得高分辨率的视频序列。
作为优选的,所述s6具体包括:
融合
本发明公开了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述方法的步骤。
本发明公开了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述方法的步骤。
本发明公开了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述的方法。
本发明的上述技术方案相比现有技术具有以下优点:
1、基于神经网络的高分辨率视频复原算法在主客观评价中都明显优于传统算法,基于连续帧的算法能够充分地利用图像序列的时空信息,其效果优于单帧输入的算法,能够很好地应用在很多领域,帮助提高图像质量。
2、本发明针对各类场景下低分辨率视频序列,能够适应不同长度的视频,具有很好的鲁棒性。
3、本发明作为一个端到端的生成网络,在使用过程中,能够非常方便地将低分辨率视频作为网络输入,直接得到对应的高分辨率视频。
附图说明
图1为本发明中基于双向循环网络的高分辨率视频复原方法的流程图;
图2为双向循环网络结构图;
图3为t时刻的正向循环单元和反向循环单元示意图;
图4为残差网络示意图;
图5为特征更新示意图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定。
参照图1-图5所示,本发明公开了一种基于双向循环网络的高分辨率视频复原系统,包括正向循环模块、反向循环模块和融合单元。
所述正向循环模块包括多个依次设置的正向处理单元,所述正向处理单元与视频帧的一一对应设置,当前所述正向处理单元根据前一级正向处理单元的输出、上一时刻视频帧和当前视频帧,将当前视频帧转化为低频部分。
所述反向循环模块包括多个依次设置的反向处理单元,所述反向处理单元与视频帧的一一对应设置,当前所述反向处理单元根据前一级反向处理单元的输出、下一时刻的视频帧和当前视频帧,将当前视频帧转化为高频部分。
所述融合单元具有多个,所述融合单元与正向处理单元和反向处理单元对应设置,所述融合单元将所述低频部分与高频部分融合,获得高分辨率的视频帧。所述融合单元包括三个通道数为3的残差块。
其中,所述正向处理单元将视频的预设图像帧转化为低频部分,包括以下步骤:
利用卷积层对xf进行浅层特征提取,获得浅层特征,其中,
将浅层特征进行通道拆分,获得重置信号r和更新信号u两部分。
将重置信号r与
中层特征通过残差网络进行特征细化,获得细化后的特征h't-1。其中,所述残差网络包括多个残差块。
将细化后的特征h't-1与u组合进行特征更新,获得输出分量
其中,所述将细化后的特征h't-1与u组合进行特征更新,获得输出分量
计算uf,
通过卷积层和激活层对uf进行处理,获得隐藏分量
通过卷积层对uf进行处理,获得输出分量
本发明公开了一种基于双向循环网络的高分辨率视频复原方法,基于上述的高分辨率视频复原系统,包括以下步骤:
s1、进入正向循环模块,令帧数t=1,初始化隐藏状态
s2、每一个正向循环单元采用第t-1帧的图像、第t帧的图像、
s3、采用正向循环单元对浅层特征ffin进行深层特征细化和错误信息删除,得到下一个时间的隐藏状态
s4、每一个反向循环单元采用第t帧的图像、第t+1帧的图像、
s5、采用反向循环单元对浅层特征fbin进行深层特征细化和错误信息删除,得到下一个时间的隐藏状态
s6、融合正向循环的结果和反向循环的结果,复原获得高分辨率的视频序列。具体的,融合
本发明公开了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述方法的步骤。
本发明公开了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述方法的步骤。
本发明公开了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述的方法。
下面,结合具体实施例,对本发明的技术方案做进一步说明。
在本发明中,假设低分辨率视频序列为
在图2中,本发明的算法结构主要包含正向循环和反向循环两个部分,分别由正向单元和反向单元组成,正向循环得到图像的低频部分,反向循环得到图片的高频部分,最后利用聚合单元将这两部分进行组合。为了示例性说明,在图2中仅展示了第t-2帧至t+1帧的传播部分。正向单元和反向单元采用了相同的结构,以产生t时刻的输出为例,如图3所示:
在图3中,展示了生成t时刻的高分辨率视频帧
残差网络由多个残差块组成,占用空间小,运算速度快,并且很适合特征传播。残差块结构如图4所示:
中层特征通过残差网络进行特征细化,将得到的细化后的特征h't-1和u组合进行特征更新,特征更新模块如图5所示,其中公式ud为:
uf是得到更新后的深层特征,通过该式,我们可以达到一个门控的效果,这个“门”能够删除错误的信息流。错误信息流中尝尝包含一些图像伪影,如果不进行更新消除,那么这些伪影会随着循环网络的传播继续传递,导致整个生成的视频序列都包含伪影,严重破坏生成视频的质量。通过两个单独的卷积层,利用uf得到输出
正向循环得到第一输出分量
本发明针对各类场景下低分辨率视频序列,能够适应不同长度的视频,具有很好的鲁棒性。作为一个端到端的生成网络,在使用过程中,能够非常方便地将低分辨率视频作为网络输入,直接得到对应的高分辨率视频。在网络的训练过程中,采用低分辨率视频和对应的高分辨率视频为视频对,通过像素级的均方差形成损失函数,网络的目标是降低以该损失为主体的损失值,从而更新网络参数,得到更好的结果。网络采用优化器adam,初始学习率设为0.0001。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,上述实施例仅仅是为清楚地说明所作的举例,并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。