本公开涉及视频处理技术领域,尤其涉及一种视频压缩处理方法、装置、存储介质和电子设备。
背景技术:
随着视频数据在分辨率、帧率等方面的不断发展,视频压缩成为了视频传输、视频存储、视频广播等视频服务的基础。传统的视频压缩技术通常是使用高性能视频编码(highefficiencyvideocoding,以下简称:hevc)标准、h.264视频压缩编码标准、h.265视频压缩编码标准等提供的视频压缩处理框架。
相关技术中所使用的视频压缩处理框架内部,其中对视频帧图像进行压缩过程中,通常会使用独立的编码器和解码器,其中的编码器用于对视频帧图像进行压缩编码得到压缩数据,而解码器基于上述压缩数据得到预测帧或者重建帧。
发明人在实现本发明的过程中发现:上述相关的视频压缩处理框架由于不能够进行端到端的联合优化,存在无法提高整个视频压缩处理框架的压缩编码性能,进而提升视频压缩效率和准确率的缺陷。
技术实现要素:
为了解决上述技术问题,提出了本公开。本公开的实施例提供了一种视频压缩处理方法、装置、存储介质和电子设备。
根据本公开的一个方面,提供了一种视频压缩处理方法,包括:
确定当前帧图像以及历史帧图像的重建帧,所述当前帧图像与所述历史帧图像之间距离n帧图像,n为正整数;
通过第一神经网络模型对所述当前帧图像与所述历史帧图像的重建帧进行处理,获得所述当前帧图像的压缩数据,以及所述当前帧图像的预测帧;
根据所述当前帧图像的预测帧以及所述当前帧图像,确定所述当前帧图像对应的残差图像;
通过第二神经网络模型对所述残差图像进行处理,获得所述残差图像的压缩数据以及所述当前帧图像对应的重建残差图像;
根据所述当前帧图像的预测帧以及所述当前帧图像对应的重建残差图像,确定当前帧图像的重建帧。
根据本公开的另一方面,提供了一种视频压缩处理装置,包括:
第一确定模块,用于确定当前帧图像以及历史帧图像的重建帧,所述当前帧图像与所述历史帧图像之间距离n帧图像,n为正整数;
第一压缩模块,用于通过第一神经网络模型对所述当前帧图像与所述历史帧图像的重建帧进行处理,获得所述当前帧图像的压缩数据,以及所述当前帧图像的预测帧;
第二确定模块,用于根据所述当前帧图像的预测帧以及所述当前帧图像,确定所述当前帧图像对应的残差图像;
第二压缩模块,用于通过第二神经网络模型对所述残差图像进行处理,获得所述残差图像的压缩数据以及所述当前帧图像对应的重建残差图像;
第三确定模块,用于根据所述当前帧图像的预测帧以及所述当前帧图像对应的重建残差图像,确定当前帧图像的重建帧。
根据本发明的再一个方面,提供了一种计算机可读存储介质,该存储介质存储有计算机程序,该计算机程序用于执行上述的视频压缩处理方法。
根据本发明的又一个方面,提供了一种电子设备,所述电子设备包括:
处理器;
用于存储该处理器可执行指令的存储器;
上述处理器,用于从存储器中读取可执行指令,并执行该指令以实现上述的视频压缩处理方法。
本公开实施例提供的视频压缩处理的技术方案,其中包括第一神经网络模型和第二神经网络模型,其中第一神经网络模型能够对当前帧图像,所述历史帧图像的重建帧进行处理,获得所述当前帧图像的压缩数据,以及所述当前帧图像的预测帧,并进一步可以根据该预测帧和原始的当前帧图像确定残差图像,该残差图像可以用以评价第一神经网络模型的优劣,在第一神经网络训练较佳时,残差图像越小;而第二神经网络模型又可以将残差图像进行处理得到残差图像的压缩数据,以及对应的重建残差图像;其中的重建残差图像可以对第一神经网络得到的预测帧进行补偿以得到重建帧,使得该第二神经网络模型可以对第一神经网络模型的结果起到纠错和补偿的作用。上述由第一神经网络模型和第二神经网络模型构成的视频压缩处理架构是一种基于深度学习的处理架构,能够进行端到端的联合优化,因此能够大大提高整个视频压缩处理框架的压缩编码性能,提高视频压缩效率和准确率。
附图说明
通过结合附图对本公开实施例进行更详细的描述,本公开的上述以及其他目的、特征和优势将变得更加明显。附图用来提供对本公开实施例的进一步理解,并且构成说明书的一部分,与本公开实施例一起用于解释本公开,并不构成对本公开的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
图1为本公开实施例所适用的视频压缩处理框架的一种框架示意图。
图2是本公开一示例性实施例提供的视频压缩处理方法的流程示意图。
图3是本公开一示例性实施例提供的帧间编码处理方法的流程示意图。
图4是本公开一示例性实施例提供的帧间解码处理方法的流程示意图。
图5是图3和图4所示实施例中的具体步骤示意图。
图6是本公开一示例性实施例提供的第一特征图获取的方式一的流程图
图7是本公开一示例性实施例提供的第一特征图获取的方式二的流程图。
图8是图3和图4所示实施例中空间先验信息获取方式的流程示意图。
图9是图8所示实施例中3d掩模卷积核的示意图。
图10是图3和图4所示实施例中小尺寸先验信息获取方式的流程示意图。
图11是本公开一示例性实施例提供的残差图像编码处理方法的流程示意图。
图12是本公开一示例性实施例提供的残差图像的解码处理方法的流程示意图。
图13为本公开实施例所适用的视频压缩处理框架的另一种框架示意图。
图14是本公开另一示例性实施例提供的视频压缩处理方法的流程示意图。
图15是本公开一示例性实施例提供的基准帧图像编码处理方法的流程示意图。
图16是本公开一示例性实施例提供的基准帧图像的解码处理方法的流程示意图。
图17是图15和图16所示实施例中空间先验信息获取方法的流程示意图。
图18是图15和图16所示实施例中小尺寸先验信息获取方法的流程示意图。
图19是本公开一示例性实施例提供的视频压缩处理装置的结构示意图。
图20是本公开另一示例性实施例提供的视频压缩处理装置的结构示意图。
图21是本公开一示例性实施例提供的电子设备的结构图。
具体实施方式
下面,将参考附图详细地描述根据本公开的示例实施例。显然,所描述的实施例仅仅是本公开的一部分实施例,而不是本公开的全部实施例,应理解,本公开不受这里描述的示例实施例的限制。
申请概述
针对相关技术中视频压缩技术所使用的视频压缩处理框架,存在不能够进行端到端的联合优化,无法提高整个视频压缩处理框架的压缩编码性能,进而提升视频压缩效率和准确率的缺陷。本公开实施例提供的技术方案中,在进行视频压缩处理方法中,通过第一神经网络模型进行帧间编解码处理,得到当前帧图像的压缩数据,又能够得到当前帧图像的预测帧,该预测帧可以和原始的当前帧图像确定残差图像;通过第二神经网络模型对残差图像进行编解码,得到残差图像的压缩数据,以及对应的重建残差图像,重建残差图像可以对第一神经网络得到的预测帧进行补偿以得到重建帧,使得该第二神经网络模型可以对第一神经网络模型的结果起到纠错和补偿的作用。其中,上述的第一神经网络模型和第二神经网络模型成的视频压缩处理架构是一种基于深度学习的处理架构,能够进行端到端的联合优化,能够大大提高整个视频压缩处理框架的压缩编码性能,提高视频压缩效率和准确率。
示例性系统
图1为本公开实施例所适用的视频压缩处理框架的框架示意图,如图1所示,该视频压缩框架主要包括第一神经网络模型11和第二神经网络模型12。
通过上述的第一神经网络模型11进行帧间编解码处理,可以基于当前帧图像以及历史帧图像的重建帧生成当前帧图像的压缩数据,以及生成当前帧图像的预测帧。进一步的,可以基于上述当前帧图像的预测帧,原始输入的当前帧图像,还可以获取到当前帧图像对应的残差图像。
通过上述的第二神经网络模型12进行残差编解码处理,可以基于当前帧图像对应的残差图像,获取当前帧图像对应的残差图像的压缩数据,以及当前帧图像对应的重建残差图像。
基于上述的当前帧图像对应的重建残差图像,以及当前帧图像的预测帧,可以获取到当前帧图像的重建帧,该重建帧可以存储到缓存器件中,以作为后续第一神经网络模型11工作时所使用的历史帧图像的重建帧。
本公开实施例通过上述的视频压缩处理框架,能够实现对当前帧图像的压缩编码处理,且能够得到当前帧图像的重建帧,而该重建帧可以运用到后续第一神经网络模型11的帧间编解码处理中,作为历史帧图像的重建帧使用,从而实现对视频流中连续的视频帧图像的压缩处理过程。
其中,本实施例提供的视频压缩处理方法可以应用到视频监控、自动驾驶等技术领域中。
示例性方法
图2是本公开一示例性实施例提供的视频压缩处理方法的流程示意图。本实施例可应用在电子设备上,如图2所示,包括如下步骤:
步骤201,确定当前帧图像以及历史帧图像的重建帧,其中,当前帧图像与历史帧图像之间距离n帧图像,n为正整数。
其中,本实施例中的当前帧图像可以是在视频监控、自动驾驶等技术领域中,由视频采集设备实时采集的视频流中连续的帧图像,本步骤中可以是以实时接收到视频流中帧图像来作为当前帧图像。
其中,本公开中的历史帧图像的重建帧可以基于下述的步骤205得到,并存储于缓存器件中,历史帧图像和当前帧图像之间可以距离n帧图像,n的取值可以实际情况设定,例如n取值为1,或者取值为其他的正整数。另外,也可以通过图14中的步骤1402得到。
步骤202,通过第一神经网络模型对上述当前帧图像以及历史帧图像的重建帧进行处理,获得当前帧图像的压缩数据以及当前帧图像的预测帧。
其中,通过第一神经网络模型得到的压缩数据可以是二进制数据,其可以作为当前帧图像的数据化信息进行存储和传输,当前帧图像的预测帧为帧间预测帧,是利用各帧图像与历史帧图像的时间相关性进行预测得到,且该当前帧图像的预测帧是第一神经网络模型的解码结果。
本步骤中获得的当前帧图像的压缩数据可以进行存储或者传输,作为本方案提供的视频压缩处理过程最终得到的压缩数据;另外,该当前帧图像的预测帧可以用于后续的视频压缩处理步骤,具体参见如下的步骤203和步骤205。
步骤203,根据当前帧图像的预测帧以及当前帧图像,确定当前帧图像对应的残差图像。
其中,本步骤中的可以是利用预测帧与当前帧图像中的相同像素点的像素值的差值,得到残差图像上相应像素点的像素值。由此,差值越小,表示预测真与当前帧图像越相似。
通常对于第一神经网络模型而言,如果其获得的当前帧图像的预测帧,与原始输入的当前帧图像的相似度越高,残差图像中各像素点的像素值越小,此时可以说明第一神经网络模型训练优化的效果越好,但在通常情况下,残差图像仍然会存在。
步骤204、通过第二神经网络模型对残差图像进行处理,获得残差图像的压缩数据以及当前帧图像对应的重建残差图像。
本步骤中的重建残差图像是第二神经网模型模型对输入的残差图像进行处理后的解码结果,其图像大小可以与原始输入的残差图像相同,但是各像素点的像素值,由于经历了编解码的过程,可能会产生差异,从而形成重建损失对于本步骤获得的残差图像的压缩数据可以进行存储或传输,作为本方案提供的视频压缩处理过程最终得到的压缩数据;对于当前帧图像对应的重建残差图像,可以应用于后续的视频压缩处理步骤,具体可以参照步骤205。
步骤205、根据当前帧图像的预测帧以及当前帧图像对应的重建残差图像,确定当前帧图像的重建帧。
本步骤是在上述步骤202和步骤204的基础上,利用重建残差图像对当前帧图像的预测帧进行补偿,以得到当前帧图像的重建帧。本步骤中得到的的当前帧图像的重建帧,是由第一神经网络模型和第二神经网络模型构成的视频压缩处理架构的解码结果,其图像大小可以与原始输入的当前帧图像相同,但是各像素点的像素值,由于经历了编解码的过程,可能会产生差异,从而形成重建损失。
本步骤中获取的当前帧图像的重建帧可以存储于缓存器件中,并且在进行后续帧图像的处理时,可以利用上述重建帧作为历史帧图像的重建帧使用,即在上述的步骤201中可以从缓存器件中获取历史帧图像的重建帧,并进一步的在步骤202中利用该历史帧图像的重建帧进行帧间编解码。
本公开实施例提供的视频压缩处理的技术方案,其中包括第一神经网络模型和第二神经网络模型,其中第一神经网络模型能够对当前帧图像和历史帧图像的重建帧进行处理,获得当前帧图像的压缩数据,以及当前帧图像的预测帧,并进一步可以根据该预测帧和原始的当前帧图像确定残差图像,该残差图像可以用以评价第一神经网络模型的优劣,在第一神经网络训练较佳时,残差图像越小;而第二神经网络模型可以将残差图像进行处理得到残差图像的压缩数据,以及对应的重建残差图像;其中的重建残差图像可以对第一神经网络得到的预测帧进行补偿以得到重建帧,使得该第二神经网络模型可以对第一神经网络模型的结果起到纠错和补偿的作用。上述由第一神经网络模型和第二神经网络模型构成的视频压缩处理架构是一种基于深度学习的处理架构,能够进行端到端的联合优化,因此,能够大大提高整个视频压缩处理框架的压缩编码性能,提高视频压缩效率和准确率。
本公开实施例中,其中通过第一神经网络模型进行处理可以得到当前帧图像的压缩数据以及当前帧图像的预测帧,该第一神经网络模型兼具编码和解码功能,能够进行帧间编码和解码处理,具体的处理过程可以是如下方式实现,即包括如下的编码过程和解码过程。
编码过程:通过第一神经网络模型对当前帧图像,历史帧图像的重建帧进行处编码处理,获得当前帧图像的压缩数据;
解码过程:通过第一神经网络模型对当前帧图像的压缩数据进行解码处理,获得当前帧图像的预测帧。
其中,编码过程中得到的压缩数据可以作为解码过程的输入,由此可见,可以将该第一神经网络模型分解为一个编码器和一个解码器,进而使得对第一神经网络模型进行训练优化的过程,可以看作是一个同时针对编码器和解码器进行联合优化的过程,从而构成一个端到端联合优化的技术方案,具有训练优化效率高的优点,同时通过该联合优化得到的第一神经网络模型的编码和解码准确率也能够得到提升。
在本公开实施例中,通过第一神经网络模型进行帧间编解码处理过程中,可以采用一步法编解码方式,可以是将压缩的光流信息编码到压缩数据中,然后在解码过程中对上述压缩数据进行解码得到二维光流图,最后利用二维光流图对历史帧图像的重建帧进行补偿,得到当前图像的预测帧,该编解码处理方式的具体流程图,可以参照如下的图3、图4和图5。
图3是本公开一示例性实施例提供的帧间编码处理方法的流程示意图,如图3所示,包括如下步骤:
步骤301、对当前帧图像与历史帧图像的重建帧进行融合特征提取,获得当前帧图像对应的第一特征图;
本步骤执行的帧间编码方案,是需要对连续帧进行特征提取,在本实施例是针对当前帧图像,以及历史帧图像的重建帧进行特征提取,以获得第一特征图,第一特征图中每个位置点具有分别从两个帧图像上采集的两个不同特征,因此,该第一特征图中包含有光流信息。本步骤中的融合特征提取可以是利用卷积层进行卷积操作得到,或者是,也可以进行下采样操作,以减少数据量和计算复杂度。
步骤302、确定第一特征图中每个位置点的量化特征值以及第一特征图中每个位置点的概率预测值;
本步骤中,第一方面是针对步骤301中获得的第一特征图进行量化处理,获得每个位置点的量化特征值,可选的,其中的特征值是一个浮点值,而量化特征值是一个整数值,量化特征值的获取可以参照相关技术中提供的方式,本公开实施例不做具体限定。
本步骤中,第二方面是获得每个位置点的概率预测值,对于概率预测值的获取,可以是基于空间先验信息、小尺寸先验信息和时间先验信息中的至少一个来确定第一特征图中每个位置点的概率预测值,具体确定方式在以下实施例中进行详细描述,上述的先验信息都可以作为获取概率预测值的基础,且使用的先验信息越多,则获取到对应的概率预测值的准确性也会更高。
步骤303、基于量化特征值和概率预测值,确定第一特征图中每个位置点的表征值;
本步骤中可以基于量化特征值和概率预测值生成特征图中每个位置点的表征值,该表征值可以是一个二进制的数值,本步骤中根据量化特征值和概率预测值生成表征值的计算过程,可以通过一个算术编码器实现。
步骤304、确定当前帧图像的压缩数据,该压缩数据包括每个位置点的表征值;
具体的,在被本步骤中可以是基于每个位置点的表征值聚合得到当前图帧图像的压缩数据,该压缩数据包括每个位置点的表征值,可选的,上述表征值可以是一个二进制的数值。
另外,如上所述的,其中的第一特征图中包含有光流信息,则本步骤中得到压缩数据中也包含了压缩的光流信息。
以上是对通过第一神经网络模型进行帧间编码处理,生成压缩数据的步骤进行的说明,而同样也可以通过第一神经网络模型对压缩数据进行解码处理,以得到二维光流图,然后基于二维光流图对历史帧图像的重建帧进行补偿以得到当期帧图像的预测帧,具体可以参照如下的图4所示。
图4是本公开一示例性实施例提供的帧间解码处理方法的流程示意图,如图4所示,包括如下步骤:
步骤401、确定第一特征图中每个位置点的概率预测值;
具体的,该概率预测值的确定方式可以参考步骤302,可以是基于空间先验信息、小尺寸先验信息和时间先验信息中的至少一个来确定第一特征图中每个位置点的概率预测值,具体确定方式在以下实施例中进行详细描述,上述的先验信息都可以作为获取概率预测值的基础,且使用的先验信息越多,则获取到对应的概率预测值的准确性也会更高。
步骤402、基于压缩数据中每个位置点的表征值以及每个位置点的概率预测值,确定每个位置点的量化特征值;
本步骤是与上述步骤303的逆处理过程,即本步骤在进行解码过程中的已知条件是压缩数据中每个位置点的表征值,在步骤401中获得每个位置点的概率预测值后,可以基于上述表征值和概率预测值获得每个位置点的量化特征值,其中的具体计算过程可以通过一个算术解码器实现。
步骤403、基于每个位置点的量化特征值,确定第一特征图;
本步骤中基于第一特征图中每个位置点的量化特征值还原生成第一特征图,其可以看作是步骤302中获取量化特征值的逆处理过程,具体可以参考相关技术的方案,本公开实施例中不进行限制,在确定第一特征图时,具体可以是确定第一特征图中每个位置点的特征值。可选的,其中的特征值是一个浮点值,而量化特征值是一个整数值。本步骤中解码得到的第一特征图中每个位置点具有分别从两个帧图像上采集的两个不同特征,该两个不同特征可以表征有光流信息。
步骤404、基于第一特征图,确定二维光流图;
本步骤可以看作上述步骤401的逆处理过程,在步骤401中包括卷积操作时,本步骤可以是进行逆卷积操作;并且若在步骤401中进行了下采样操作,则本步骤中还可以进行上采样操作。如上所述的,其中的第一特征图,包含有光流信息,因此本步骤中进行的逆卷积操作,或者上采样操作后得到的图像为一个二维光流图,该二维光流图中包含有光流信息,该光流信息可以包括当前帧图像和历史帧图像的重建帧中各像素点之间的运动向量。
步骤405、基于上述二维光流图,对历史帧图像的重建帧进行补偿,获得当前帧图像的预测帧。
本步骤中基于二维光流图中的光流信息,可以是利用其包括的当前帧图像和历史帧图像的重建帧中各像素点之间的运动向量,对重建帧中各像素点进行运动向量补偿,以得到当前帧图像的预测帧。
另外,参见上述图3和图4所示的实施例中,通过第一神经网络模型进行帧间编解码的步骤,其中可以将两个时序上连续的帧图像输入到第一神经网络模型中,例如t时刻的帧图像xt,以及t-1时刻的帧图像xt-1的重建帧
利用上述的二维光流图
通过上述图3和图4所示的实施例可见,本公开实施例中的第一神经网络模型同时兼具编码功能和解码功能,可以通过帧间编码将光流信息编码进当前帧图像的压缩数据中,通过又通过帧间解码将压缩数据中的光流信息解码得到二维光流图,并可以利用二维光流图对历史帧图像的重建帧进行补偿,得到当前帧图像的预测帧。上述第一神经网络模型采用一步法的编解码方式,将光流信息隐式存储到压缩数据中,使得编解码效率显著提高。
本公开实施例中,为了通过第一神经网络模型实现图3和图4所示的步骤,可以对第一神经网络模型的结构进行设计,以使得第一神经网络模型可以包括相应的执行层来完成相应的步骤,例如可以包括卷积层,并通过卷积层执行步骤301,在一些可选的实施例中,还可以包括下采样层;可以包括量化层和第一概率预测层,可以通过量化层执行步骤302中获取每个位置点的量化特征值的操作,以及通过概率预测层执行步骤302中获取每个位置点的概率预测值的操作;可以包括算术编码层,可以通过算术编码层执行步骤303中获取每个位置点的表征值的操作;可以包括压缩层,可以通过压缩层执行步骤304中确定当前帧图像的压缩数据的操作。上述各个层能够实现编码器的功能。
进一步的,该第一神经网模型还可以包括第二概率预测层,该第二概率预测层用于在解码过程中执行步骤401中获取每个位置点的概率预测值的操作;还可以包括算术解码层,该算术解码层用于执行步骤402中获取每个位置点的量化特征值的操作;还可以包括还原层,用于执行步骤403中确定第一特征图的操作;还可以包括逆卷积层,用于执行步骤404中确定二维光流图的操作,或者,进一步的还可以包括上采样层;还可以包括补偿层,用于执行步骤404中获得当前帧图像的预测帧的操作。
本公开上述实施例中,其中步骤301中对当前帧图像,历史帧图像的重建帧进行融合特征提取,获得当前帧图像对应的第一特征图,可以通过如图6或图7所示的两种方式实现。
图6是本公开一示例性实施例提供的第一特征图获取的方式一的流程图,如图6所示,包括如下的步骤:
步骤601,对上述的当前帧图像以及历史帧图像的重建帧进行级联操作,以获得级联图像;
本步骤中过去的级联图像,其中每个给定的像素点包括两个像素值,分别是当前帧图像的像素值,以及历史帧图像的重建帧的像素值。
步骤602,对级联图像进行融合特征提取,获取第一特征图,第一特征图中每个位置点具有分别从两个帧图像上采集的两个不同特征,因此,该第一特征图中包含有光流信息。
本步骤中的特征提取过程,可以通过对级联图像进行卷积操作,以获取级联图像的第一特征图,并且可选的,为了减少数据量和计算复杂度,提高计算效率,还可以进一步进行下采样处理,以得到下采样后的第一特征图;
可选的,上述利用卷积操作对级联图像进行特征提取,获得的是更注重局部特性的特征图时;本公开实施例中还可以利用非局部注意力模块,直接从级联图像中提取全局的特征信息,再通过级联的卷积层处理获得全局特性的特征图。该全局特性的特征图通过sigmoid激活函数归一化为0到1数值空间作为注意力的掩模(mask),利用该掩模可以对上述得到的更注重局部特性的特征图进行非局部注意力激活,并以非局部注意力激活后的特征图作为级联图像的第一特征图;
图7是本公开一示例性实施例提供的第一特征图获取的方式二的流程图,如图7所示,包括如下的步骤:
步骤701、对当前帧图像进行特征提取,获得当前帧图像的特征图;
本步骤中获得特征图的步骤,可以是通过卷积操作对当前帧图像进行特征提取,获取对应的特征图,也可以针对上述特征图进一步采取下采样处理,以减少数据量和计算复杂度;或者是,不仅利用卷积层对当前帧图像进行特征提取,获取更注重局部特性的特征图,而且还利用非局部注意力模块,直接从当前帧图像中提取全局的特征信息,再通过级联的卷积层处理后得到全局特性的特征图,该全局特性的特征图通过sigmoid激活函数归一化为0到1数值空间作为注意力的掩模(mask),利用该掩模可以对上述得到的更注重局部特性的特征图进行非局部注意力激活,并以非局部注意力激活后的特征图作为最终的当前帧图像的特征图。
步骤702、对历史帧图像的重建帧进行特征提取,获得历史帧图像的特征图;
本步骤中获得特征图的步骤,可以是通过卷积操作对历史帧图像的重建帧进行特征提取,获取对应的特征图,也可以针对上述特征图进一步采取下采样处理,以减少数据量和计算复杂度;或者是,不仅利用卷积层对历史帧图像的重建帧进行特征提取,获取更注重局部特性的特征图,而且还利用非局部注意力模块,直接从历史帧图像的重建帧中提取全局的特征信息,再通过级联的卷积层处理后得到全局特性的特征图,该全局特性的特征图通过sigmoid激活函数归一化为0到1数值空间作为注意力的掩模(mask),利用该掩模可以对上述得到的更注重局部特性的特征图进行非局部注意力激活,并以非局部注意力激活后的特征图作为最终的历史帧图像的重建帧的特征图。
步骤703、对当前帧图像的特征图和历史帧图像的特征图进行融合处理,获得第一特征图;
具体的,本步骤中融合处理得到的第一特征图中,其中每个位置点具有分别从两个帧图像上采集的两个不同特征,使得第一特征图中包含有光流信息。
进一步的,在上述步骤302的编码过程中,以及上述步骤401的解码过程中,都需要确定第一特征图中每个位置点的概率预测值,在确定上述概率预测值的过程中,可以首先确定第一特征图中每个位置点的空间先验信息、第一特征图中每个位置点的时间先验信息和第一特征图中每个位置点的小尺寸先验信息中的至少一个,然后基于上述的空间先验信息、小尺寸先验信息和时间先验信息中的至少一个,确定第一特征图中每个位置点的概率预测值。该确定方式充分考虑了视频帧中每个像素的时间相关性和空间相关性,利用时域或者空间域上的相关信息来进行预测,使得概率预测更加准确。
第一个方面,对于上述确定第一特征图中每个位置点的空间先验信息可以参照图8所示,包括如下的步骤:
步骤801、确定3d掩模卷积核在第一特征图中的中心位置点;
具体的,本步骤中的3d掩模卷积核的大小,可以预先设定,例如大小为m×m×m,m可以为正奇数,例如图9所示,3d掩模卷积核的大小为3×3×3。本步骤中确定的中心位置点,即为待获取概率预测值的位置点。
步骤802、确定中心位置点前的各位置点的量化特征值,并作为中心位置点的空间先验信息;
本步骤是在将每个待获取概率预测值的位置点置于3d掩模卷积核的中心位置点后,然后获取其前的各位置点的量化特征值,即对于大小为m×m×m的卷积核,可以获取f(m×m×m/2)个位置点的量化特征值,其中f(.)是向下取整的函数,对于3×3×3的卷积核,可以获取前12个位置点的量化特征值。
本公开实施例中,由于需要利用中心位置点前各个位置点的量化特征值,作为时间先验信息来预测中心位置点的概率预测值,对于编码过程而言,其中的第一特征图是预先获取的,并且进行量化处理后每个位置点的量化特征值也是确定的,所以对于步骤302中获取每个位置点的概率预测值而言,也可以直接获取到。而对于解码过程而言,其中每个位置点的量化特征值都需要依次解码得到,因此对于步骤401中确定每个位置点的概率预测值,则需要在解码得到前一个位置点的量化特征值后,才能够根据3d掩模卷积核得到当前位置点的概率预测值;当然,在接下来的解码步骤中,可以基于当前位置点的概率预测值,解码得到当前位置点的量化特征值,并可以进一步获得下一个位置点的概率预测值,依次类推,得到整个第一特征图中每个位置点的概率预测值和量化特征值。
第二个方面,对于上述确定第一特征图中每个位置点的小尺寸先验信息可以参照图10所示,包括如下的步骤:
步骤1001、对第一特征图进行小尺寸特征提取,获得第一小尺寸特征图;
本步骤中进行小尺寸特征提取,在具体处理过程中可以是对第一特征图进行下采样操作和第一次卷积操作,提取更小尺寸的特征,以得到第一小尺寸特征图,第一小尺寸特征图相较于第一特征图的尺寸更小,例如第一特征图的大小为64×64,则第二小尺寸特征图的大小可以为8×8;
步骤1002、对第一小尺寸特征图进行还原操作,获得与第一特征图尺寸相等的还原特征图,该还原特征图中的相同位置点的特征值作为小尺寸先验信息;
在步骤1001中得到第一小尺寸特征图后,可以进行还原操作,将其还原为第一特征图尺寸相等的还原特征图,具体的还原操作可以是包括上采样操作和第二次卷积操作,该第二次卷积操作看作是第一次卷积操作的逆卷积操作过程,如上述所述的,该还原特征图的大小仍为64×64。本步骤中最后可以利用还原特征图中相同位置点的特征值作为小尺寸先验信息,并将小尺寸先验信息应用到概率预测值的计算中。可选的,也可以对还原特征图进行量化处理,以得到相同位置点的量化特征值作为小尺寸先验信息。
第三个方面,确定第一特征图中每个位置点的时间先验信息包括:
确定历史帧图像对应的第二特征图中相同位置点的概率预测值,并作为当前帧图像对应的第二特征图中相同位置点的时间先验信息,历史帧图像与当前帧图像距离l帧图像,l为正整数,其中,l的值可以取1、2或3等数值。
本步骤中所使用的时间先验信息是充分考虑了视频在时域上的延续性,每个位置点的概率预测值与之前的若干历史帧图像具有相关性,此时,可以利用历史帧图像对应的第一特征图中相同位置点的概率预测值,能够提高概率预测值的准确性。
在进行第一特征图中各位置点的概率预测值计算时,可以考虑上述三个方面获取的先验信息中的至少一个,具体的,若同时考虑上述三个方面获得的先验信息,在计算第i个位置点的概率预测值时,可以得到高斯分布下的均值
其中
根据高斯分布下的概率预测模型,其中对于每个位置点的概率预测值
其中,ht-1作为时间先验信息,具有时间上的迭代特性,可以通过一个基于递归的卷积网络convlstm计算,来对时间先验信息进行更新迭代,该convlstm能够对第一特征图中每个位置点的时间先验信息进行进行更新,具体的,可以参照如下的计算公式:
其中
本公开实施例中,其中通过第二神经网络模型进行处理可以得到残差图像的压缩数据以及残差图像的预测帧,该第二神经网络模型兼具编码和解码功能,能够进行残差图像编码和解码处理,具体的处理过程可以包括如下的编码过程和解码过程。
编码过程:通过第二神经网络模型对残差图像进行编码处理,获得残差图像的压缩数据;
解码过程:通过第二神经网络模型对残差图像的压缩数据进行解码处理,获得当前帧图像对应的重建残差图像。
其中,编码过程中得到的压缩数据可以作为解码过程的输入,由此可见,可以将该第二神经网络模型分解为一个编码器和一个解码器,进而使得对第二神经网络模型进行联合优化的过程,是一个同时针对编码器和解码器进行训练优化的过程,从而构成一个端到端联合优化的技术方案,具有训练优化效率高的优点,同时通过该联合优化得到的第二神经网络模型的编码和解码准确率也能够得到提升。
在本公开实施例中,通过第二神经网络模型进行残差图像的编解码处理过程,其中针对的残差图像可以由当前帧图像,以及利用第一神经网络模型得到的当前图像的预测帧得到,同时对于第二神经网络模型最终得到的当前帧图像的重建残差图像可以应用到后续重建帧的获取步骤中。通过第二神经网络模型进行残差图像的编解码处理方式的具体流程图,可以参照如下的图11和图12。
图11是本公开一示例性实施例提供的残差图像编码处理方法的流程示意图,如图11所示,包括如下步骤:
步骤1101、对残差图像进行特征提取,确定残差图像的第二特征图;
本步骤中获得的第二特征图中每个位置点具有从残差图像采集的特征。具体的特征提取过程,可以是通过卷积操作对残差图像进行特征提取,获取对应的第二特征图,也可以针对卷积操作后得到第二特征图采取下采样处理,以减少数据量和计算复杂度,最终获得下采样后的第二特征图。
或者是,不仅利用卷积层对残差图像进行特征提取,获取更注重局部特性的特征图,而且还利用非局部注意力模块,直接从残差图像中提取全局的特征信息,再通过级联的卷积层处理后得到全局特性的特征图,该全局特性的特征图通过sigmoid激活函数归一化为0到1数值空间作为注意力的掩模(mask),利用该掩模可以对上述得到的更注重局部特性的特征图进行非局部注意力激活,并以非局部注意力激活后的特征图作为最终的残差图像的第二特征图。
步骤1102、确定第二特征图中每个位置点的量化特征值以及第二特征图中每个位置点的概率预测值;
本步骤中,第一方面是针对步骤1101中获取的第二特征图进行量化处理,可以是根据第二特征图中每个位置点的特征值,获得每个位置点的量化特征值,可选的,其中的特征值是一个浮点值,而量化特征值是一个整数值,量化特征值的获取可以参照相关技术中提供的方式,本公开实施例不做具体限定。
本步骤中,第二方面是获取每个位置点的概率预测值,对于概率预测值的获取,可以是基于空间先验信息和小尺寸先验信息中的至少一个来确定第二特征图中每个位置点的概率预测值,具体确定方式在以下实施例中进行详细描述,上述的先验信息都可以作为获取概率预测值的基础,且使用的先验信息越多,则获取到对应的概率预测值的准确性也会更高。
步骤1103、基于量化特征值和所述概率预测值,确定第二特征图中每个位置点的表征值;
本步骤中基于量化特征值和概率预测值生成第二特征图中每个位置点的表征值,该表征值可以是一个二进制的数值,本步骤中根据量化特征值和概率预测值生成表征值的计算过程,可以通过一个算术编码器实现。
步骤1104、确定当前帧图像对应的残差图像的压缩数据,压缩数据包括第二特征图中每个位置点的表征值。
具体的,在上述步骤1103中获取到第二特征图中每个位置点的表征值后,可以基于每个位置点的表征值聚合得到残差图像的压缩数据,该压缩数据包括每个位置点的表征值,可选的,上述表征值可以是一个二进制的数值。
以上是对通过第二神经网络模型进行残差图像的编码处理,生成压缩数据的步骤进行的说明,而同样也可以通过第二神经网络模型对压缩数据进行解码处理,以得到当前帧图像的重建残差图像,具体可以参照如下的图11所示。
图12是本公开一示例性实施例提供的残差图像的解码处理方法的流程示意图,如图12所示,包括如下步骤:
步骤1201、确定第二特征图中每个位置点的概率预测值;
具体的,该概率预测值的确定方式可以参考步骤1002,可以是基于空间先验信息和小尺寸先验信息中的至少一个来确定第二特征图中每个位置点的概率预测值,具体确定方式在以下实施例中进行详细描述,上述的先验信息都可以作为获取概率预测值的基础,且使用的先验信息越多,则获取到对应的概率预测值的准确性也会更高。
步骤1202、基于压缩数据中每个位置点的表征值以及每个位置点的概率预测值,确定第二特征图中每个位置点的量化特征值;
本步骤是与上述步骤1103的逆处理过程,即本步骤在进行解码过程中的已知条件是压缩数据中每个位置点的表征值,在步骤1201中获得每个位置点的概率预测值后,可以基于上述表征值和概率预测值可以获得每个位置点的量化特征值,其中的具体计算过程可以通过一个算术解码器实现。
步骤1203、基于每个位置点的量化特征值,确定残差图像的第二特征图;
本步骤中基于第二特征图中每个位置点的量化特征值还原生成第二特征图,其可以看作是步骤1102中获取量化特征值的逆处理过程,具体可以参考相关技术的方案,本公开实施例中不进行限制,在确定第二特征图时,具体可以是确定第二特征图中每个位置点的特征值。可选的,其中的特征值是一个浮点值,而量化特征值是一个整数值。
步骤1204、基于残差图像的第二特征图,确定当前帧图像对应的重建残差图像;
本步骤可以看作上述步骤1101的逆处理过程,在步骤1101中包括卷积操作时,本步骤可以是进行逆卷积操作;并且若在步骤1101中进行了下采样操作,则本步骤中还可以进行上采样操作,以获得当前帧图像对应的重建残差图像。
通过上述图11和图12所示的实施例可见,本公开实施例中的第二神经网络模型同时兼具编码功能和解码功能,可以通过对残差图像进行编码获得当前帧图像对应的残差图像的压缩数据,同时又通过对上述压缩数据进行解码处理,获得当前帧图像对应的重建残差图像。该第二神经网络模型具有编码器和解码器两个组成部分,从而可以实现对编码器和解码器同时进行联合优化的目的,能够显著提高训练优化效率,同时通过该联合优化得到的第二神经网络模型的编码和解码准确率也能够得到提升。
本公开实施例中,为了通过第三神经网络模型实现图11和图12所示的步骤,可以对第一神经网络模型的结构进行设计,以使得第一神经网络模型可以包括相应的执行层来完成相应的步骤,例如可以包括卷积层,并通过卷积层执行步骤1101,在一些可选的实施例中,还可以包括下采样层;可以包括量化层和第一概率预测层,可以通过量化层执行步骤1102中获取每个位置点的量化特征值的操作,以及通过概率预测层执行步骤1102中获取每个位置点的概率预测值的操作;可以包括算术编码层,可以通过算术编码层执行步骤1103中获取每个位置点的表征值的操作;可以包括压缩层,可以通过压缩层执行步骤1104中确定当前帧图像的压缩数据的操作。上述各个层能够实现编码器的功能。
进一步的,该第一神经网模型还可以包括第二概率预测层,该概率预测层用于在解码过程中执行步骤1201中获取每个位置点的概率预测值的操作;还可以包括算术解码层,该算术解码层用于执行步骤1202中获取每个位置点的量化特征值的操作;还可以包括还原层,用于执行步骤1203中确定第二特征图的操作;还可以包括逆卷积层,用于执行步骤1204中当前帧图像对应的重建残差图像的操作,或者,进一步的还可以包括上采样层。
可选的,在一些实施例中,如图13所示的,在图1所示的视频压缩编码处理框架,还可以进一步设置第三神经网络模型13,该第三神经网络模型13可以针对基准帧图像进行帧内编解码处理,获取基准帧图像的压缩数据,以及获取基准帧图像的重建帧,该重建帧也可以应用到第一神经网络模型中,作为历史重建帧图像进行帧间编解码处理。通过在本公开实施例的视频压缩处理框架中引入该第三神经网络模型13,能够有效的避免第一神经网络模型在帧间编码过程中的误差传递,提高视频压缩的准确率。
本公开上述实施例提供的视频压缩处理架构,可以通过第一神经网络模型实现帧间编码,并可以基于历史帧图像的重建帧实现对当前帧图像的编码处理,以获得当前帧图像的压缩数据,依次可以实现每一个帧图像的压缩处理过程。
为了避免在帧间编码过程中的误差传递,本公开实施例中,还提供了第三神经网络模型,该第三神经网络模型能够针对基准帧图像实现帧内编解码处理,具体的,可以参见图14所示。
图14是本公开另一示例性实施例提供的视频压缩处理方法的流程示意图,图14所示实施例中为在图2所示实施例的基础上,视频压缩处理方法进一步包括的步骤,其可以在图2所示的步骤201前执行。如图14所示,包括如下的步骤:
步骤1401、确定当前帧图像为基准帧图像;
本步骤的基准帧图像可以是在视频监控、自动驾驶等技术领域中,由视频采集设备实时采集的视频流中连续的帧图像,可以是将第1帧图像设置为基准帧图像;也可以是连续视频帧图像中的其他视频帧图像设置为基准帧图像,例如,根据一些设定条件,每间隔x帧帧图像,x为正整数,选择1帧图像作为基准帧图像;或者是根据视频流中的视频内容的变化情况,例如连续几帧图像比较稳定,帧图像的内容变化不大时,可以确定其中的1帧图像作为基准帧图像,本公开实施例中对此并不进行限定。
步骤1402、通过第三神经网络模型对基准帧图像进行处理,获得基准帧图像的压缩数据以及基准帧图像的重建帧;
本步骤中,通过第三神经网络模型得到的压缩数据可以是二进制数据,其可以作为当前帧图像的数据化信息进行存储和传输;通过第三神经网络模型得到的基准帧图像对应的重建帧,其图像大小可以与原始输入的残差图像相同,但是各像素点的像素值,由于经历了编解码的过程,可能会产生差异,从而形成重建损失。对于本步骤中获得的基准帧图像的压缩数据可以进行存储或传输,作为本方案提供的视频压缩处理过程最终得到的压缩数据;对于获得的重建帧,可以应用到后续视频压缩处理过程中,例如作为第一神经网络模型进行帧间编码时输入的历史帧图像的重建帧使用,具体可以参见图2所示的步骤201,具体的,在将第1帧图像作为基准帧图像,本步骤中可以获得第1帧图像的压缩数据,以及第1帧图像的重建帧,进而该第1帧图像的重建帧可以作为作为利用第一神经网络模型进行帧间编解码的历史帧图像的重建帧。
在一些实施例中,上述对残差图像进行编解码处理的第二神经网络模型,以及对基准帧图像进行编解码处理的第三神经网络模型可以具有相同的模型结构,进而可以省略一个网络模型架构的设计,高效进行视频压缩处理架构的设计。
本公开实施例中,其中通过第三神经网络模型进行处理可以得到基准帧图像的压缩数据以及基准帧图像的预测帧,该第三神经网络模型兼具编码和解码功能,能够进行基准帧图像的编码和解码处理,具体的处理过程可以包括如下的编码过程和解码过程:
编码过程:通过第三神经网络模型对基准帧图像进行编码处理,获得基准帧图像的压缩数据;
解码过程:通过第三神经网络模型对基准帧图像的压缩数据进行解码处理,获得基准帧图像对应的重建帧。
其中,编码过程中得到的压缩数据可以作为解码过程的输入,由此可见,可以将该第三神经网络模型分解为一个编码器和一个解码器,进而使得对第三神经网络模型进行联合优化时,是一个同时针对编码器和解码器进行优化的过程,从而构成一个端到端联合优化的技术方案,具有训练优化效率高的优点,同时通过该联合优化得到的第三神经网络模型的编码和解码准确率也能够得到提升。
在本公开实施例中,通过第三神经网络模型进行基准帧图像的编解码处理过程的具体流程图,可以参照如下的图15和图16。
图15是本公开一示例性实施例提供的基准帧图像编码处理方法的流程示意图,如图15所示,包括如下步骤:
步骤1501、对基准帧图像进行特征提取,确定基准帧图像的第二特征图;
本步骤获得的第二特征图中每个位置点具有从基准帧图像采集的特征。具体的特征提取过程,可以是通过卷积操作对基准帧图像进行特征提取,获取对应的第二特征图,也可以针对卷积操作后得到第二特征图采取下采样处理,以减少数据量和计算复杂度,最终获得下采样后的第二特征图。
或者是,不仅利用卷积操作对基准帧图像进行特征提取,获取更注重局部特性的特征图,而且还利用非局部注意力模块,直接从基准帧图像中提取全局的特征信息,再通过级联的卷积层处理后得到全局特性的特征图,该全局特性的特征图通过sigmoid激活函数归一化为0到1数值空间作为注意力的掩模(mask),利用该掩模可以对上述得到的更注重局部特性的特征图进行非局部注意力激活,并以非局部注意力激活后的特征图作为最终的基准帧图像的第二特征图。
步骤1502、确定第二特征图中每个位置点的量化特征值,以及第二特征图中每个位置点的概率预测值;
本步骤中,第一方面是针对步骤1501中获取的第二特征图进行量化处理,可以是根据第二特征图中每个位置点的特征值,获得每个位置点的量化特征值,可选的,其中的特征值是一个浮点值,而量化特征值是一个整数值,量化特征值的获取可以参照相关技术中提供的方式,本公开实施例不做具体限定。
本步骤中,第二方面是获取每个位置点的概率预测值,对于概率预测值的获取,可以是基于空间先验信息和小尺寸先验信息中的至少一个来确定第二特征图中每个位置点的概率预测值,具体确定方式在以下实施例中进行详细描述,上述的先验信息都可以作为获取概率预测值的基础,且使用的先验信息越多,则获取到对应的概率预测值的准确性也会更高。
步骤1503、基于量化特征值和所述概率预测值,确定第二特征图中每个位置点的表征值;
本步骤中基于量化特征值和概率预测值生成第二特征图中每个位置点的表征值,该表征值可以是一个二进制的数值,本步骤中根据量化特征值和概率预测值生成表征值的计算过程,可以通过一个算术编码器实现。
步骤1504、确定基准帧图像的压缩数据,压缩数据包括第二特征图中每个位置点的表征值。
具体的,在上述步骤1503中获取到第二特征图中每个位置点的表征值后,可以基于每个位置点的表征值聚合得到基准帧图像的压缩数据,该压缩数据包括每个位置点的表征值,可选的,上述表征值可以是一个二进制的数值。以上是对通过第三神经网络模型进行基准帧图像的编码处理,生成压缩数据的步骤进行的说明,而同样也可以通过第三神经网络模型对压缩数据进行解码处理,以得到基准帧图像的重建帧,可以参照如下的图16所示。
图16是本公开一示例性实施例提供的基准帧图像的解码处理方法的流程示意图,如图16所示,包括如下步骤:
步骤1601、确定第二特征图中每个位置点的概率预测值;
具体的,该概率预测值的确定方式可以参考步骤1502,可以是基于空间先验信息和小尺寸先验信息中的至少一个来确定第二特征图中每个位置点的概率预测值,具体确定方式在以下实施例中进行详细描述,上述的先验信息都可以作为获取概率预测值的基础,且使用的先验信息越多,则获取到对应的概率预测值的准确性也会更高。
步骤1602、基于压缩数据中每个位置点的表征值,以及每个位置点的概率预测值,确定第二特征图中每个位置点的量化特征值;
本步骤是与上述步骤1503的逆处理过程,即本步骤在进行解码过程中的已知条件是压缩数据中每个位置点的表征值,在步骤1601中获得每个位置点的概率预测值后,可以基于上述表征值和概率预测值可以获得每个位置点的量化特征值,其中的具体计算过程可以通过一个算术解码器实现。
步骤1603、基于每个位置点的量化特征值,确定基准帧图像的第二特征图;
本步骤中基于第二特征图中每个位置点的量化特征值还原生成第二特征图,其可以看作是步骤1502中获取量化特征值的逆处理过程,具体可以参考相关技术的方案,本公开实施例中不进行限制,在确定第二特征图时,具体可以是确定第二特征图中每个位置点的特征值。可选的,其中的特征值是一个浮点值,而量化特征值是一个整数值。
步骤1604、基于基准帧图像的第二特征图,确定基准帧图像的重建帧;
本步骤可以看作上述步骤1501的逆处理过程,在步骤1501中包括卷积操作时,本步骤可以是进行逆卷积操作;并且若在步骤1501中进行了下采样操作,则本步骤中还可以进行上采样操作,以获得基准帧图像对应的重建帧。
通过上述图15和图16所示的实施例可见,本公开实施例中的第三神经网络模型同时兼具编码功能和解码功能,可以通过对基准帧图像进行编码,以获得基准帧图像的压缩数据,同时又通过对上述压缩数据进行解码处理,获得基准帧图像对应的重建帧。该第三神经网络模型具有编码器和解码器两个组成部分,从而可以实现对编码器和解码器同时进行联合优化的目的,能够显著提高训练优化效率,同时通过该联合优化得到的第三神经网络模型的编码和解码准确率也能够得到提升。
本公开实施例中,为了通过第三神经网络模型实现图15和图16所示的步骤,可以对第三神经网络模型的结构进行设计,以使得第三神经网络模型可以包括相应的执行层来完成相应的步骤,例如可以包括卷积层,并通过卷积层执行步骤1501,在一些可选的实施例中,还可以包括下采样层;可以包括量化层和第一概率预测层,可以通过量化层执行步骤1502中获取每个位置点的量化特征值的操作,以及通过概率预测层执行步骤1502中获取每个位置点的概率预测值的操作;可以包括算术编码层,可以通过算术编码层执行步骤1503中获取每个位置点的表征值的操作;可以包括压缩层,可以通过压缩层执行步骤1504中确定当前帧图像的压缩数据的操作。上述各个层能够实现编码器的功能。
进一步的,该第一神经网模型还可以包括第二概率预测层,该概率预测层用于在解码过程中执行步骤1601中获取每个位置点的概率预测值的操作;还可以包括算术解码层,该算术解码层用于执行步骤1602中获取每个位置点的量化特征值的操作;还可以包括还原层,用于执行步骤1603中确定第二特征图的操作;还可以包括逆卷积层,用于执行步骤1604中当前帧图像对应的重建帧的操作,或者,进一步的还可以包括上采样层。
如上述图11所示实施例中的步骤1102、图12所示实施例中的步骤1201、图15所示实施例中的步骤1502和图16所示实施例中的步骤1601所示的,其中在编码和解码过程中,均获取了第二特征图中各位置点的概率预测值,在确定上述概率预测值的过程中,可以首先确定第二特征图中每个位置点的空间先验信息和第二特征图中每个位置点的小尺寸先验信息中的至少一个,然后基于上述的空间先验信息和小尺寸先验信息中的至少一个,确定第二特征图中每个位置点的概率预测值。该确定方式充分考虑了视频帧图像中每个像素的空间相关性,利用空间域上的相关信息来进行预测,使得概率预测更加准确。
第一个方面,对于上述确定第二特征图中每个位置点的空间先验信息可以参照图17所示,包括如下的步骤:
步骤1701、确定3d掩模卷积核在第二特征图中的中心位置点;
具体的,本步骤中的3d掩模卷积核的大小,可以预先设定,例如大小为m×m×m,m可以为正奇数,例如图9所示,3d掩模卷积核的大小为3×3×3。本步骤中确定的中心位置点,即为待获取概率预测值的位置点。
步骤1702、确定中心位置点前的各位置点的量化特征值,并作为中心位置点的空间先验信息;
本步骤是在将每个待获取概率预测值的位置点置于3d掩模卷积核的中心位置点后,然后获取其前的各位置点的量化特征值,即对于大小为的卷积核,可以获取m×m×m个位置点的量化特征值,其中f(m×m×m/2)是向下取整的函数,对于3×3×3的卷积核,可以获取前12个位置点的量化特征值。
本公开实施例中,由于需要利用中心位置点前各个位置点的量化特征值,作为时间先验信息来预测中心位置点的概率预测值,对于编码过程而言,其中的第二特征图是预先获取的,并且进行量化处理后每个位置点的量化特征值也是确定的,所以对于步骤1102、步骤1502中获取每个位置点的概率预测值而言,也可以直接获取到。而对于解码过程而言,其中每个位置点的量化特征值都需要依次解码得到,因此对于步骤1201、步骤1601中确定每个位置点的概率预测值,则需要在解码得到前一个位置点的量化特征值后,才能够根据3d掩模卷积核得到当前位置点的概率预测值;当然,在接下来的解码步骤中,可以基于当前位置点的概率预测值,解码得到当前位置点的量化特征值,并可以进一步获得下一个位置点的概率预测值,依次类推,得到整个第二特征图中每个位置点的概率预测值和量化特征值。
第二个方面,对于上述确定第二特征图中每个位置点的小尺寸先验信息可以参照图18所示,包括如下的步骤:
步骤1801、对第二特征图进行小尺寸特征提取,获得第二小尺寸特征图;
本步骤中进行小尺寸特征提取,在具体处理过程中可以是对第二特征图进行下采样操作和第一次卷积操作,提取更小尺寸的特征,以得到第二小尺寸特征图,第二小尺寸特征图相较于第二特征图的尺寸更小,例如第二特征图的大小为64×64,则第二小尺寸特征图的大小可以为8×8;
步骤1802、对第二小尺寸特征图进行还原操作,获得与第二特征图尺寸相等的还原特征图,该还原特征图中的相同位置点的特征值作为小尺寸先验信息;
在步骤1801中得到第二小尺寸特征图后,可以进行还原操作,将其还原为第二特征图尺寸相等的还原特征图,具体的还原操作可以是包括上采样操作和第二次卷积操作,该第二次卷积操作看作是第一次卷积操作的逆卷积操作过程,如上述所述的,该还原特征图的大小仍为64×64。本步骤中最后可以利用还原特征图中相同位置点的特征值作为小尺寸先验信息,并将小尺寸先验信息应用到概率预测值的计算中。可选的,也可以对还原特征图进行量化处理,以得到相同位置点的量化特征值作为小尺寸先验信息。
在进行第二特征图中各位置点的概率预测值计算时,可以考虑上述两个方面获取的先验信息中的至少一个,具体的,若同时考虑上述两个个方面获得的先验信息,在计算概率预测值时,可以得到高斯分布下的均值
其中
根据高斯分布下的概率预测模型,其中对于每个位置点的概率预测值
本公开上述实施例中,分别对第一神经网络模型、第二神经网络模型和第三神经网络模型各自的功能进行了介绍,以下提供了一个具体的实施例,对由上述三个神经网络模型组成的视频压缩处理架构的具体处理过程进行描述。
对于一些视频压缩处理场景,例如视频监控场景下,视频采集设备会源源不断的生成视频流,该视频流可以描述为一个视频帧图像组,例如对于视频流x={x1,x2,…,xt},其中x1,x2,…,xt表示按照时间顺序依次接收到的视频帧图像。在使用本公开实施例提供过的视频压缩方法时,上述的视频帧图像会依次输入到图1所示的视频压缩处理框架中进行处理,具体可以包括如下处理过程:
首先,对于第1帧图像x1,可以看作是基准帧,其可以利用第三神经网络模型进行帧内编解码处理,以得到第1帧图像的压缩数据,并且利用第三神经网络模型对压缩数据进行解码处理,可以得到第1帧图像的重建帧
其次,对于第2帧图像x2,可以输入到第一神经网络模型中进行帧间编解码,此时,除第2帧图像x2外,还可以将第1帧图像的重建帧
最后,利用第二神经网络模型得到的重建残差图像
进一步的,对于后续的帧图像xi,则可以沿用第2帧图像的处理过程,分别通过第一神经网络模型和第二神经网络模型获取对应的压缩数据,以及重建帧;另外还可以在后续帧图像xi中选择帧图像作为基准帧图像,并利用第三神经网络模型获取对应的压缩数据及其重建帧,该重建帧也可以第一神经网络模型进行帧间编解码的历史帧图像的重建帧。
针对本公开实施例中图13所提供的视频压缩处理架构,其中在进行训练优化时,针对第一神经网络模型、第二神经网络模型和第三神经网络模型三个神经网络模型,可以按照如下方式进行训练:
首先,先针对第三神经网络模型进行训练优化,以保证第三神经网络模型在对基准帧图像进行重建时,得到的重建帧的准确性,由于该第三神经网络模型兼具编码器和解码器的功能,因此对第三神经网络模型的训练优化可以作为一个端到端的联合优化过程;
其次,在对第三神经网络模型进行训练完成的基础上,对第一神经网络模型进行训练,在对第一神经网络模型进行训练的过程中,可以先利用连续的原始帧图像进行训练,然后再利用历史帧图像的重建帧进行训练优化,这样能够使得第一神经网络模型在训练过程中尽快收敛,以提高对第一神经网络模型进行训练的效率,由于该第一神经网络模型兼具编码器和解码器的功能,因此对第一神经网络模型的训练优化可以作为一个端到端的联合优化过程;
再次,利用训练好的第三神经网络模型、第一神经网络模型,对第二神经网络模型进行训练,该第二神经网络模型兼具编码器和解码器的功能,因此对第二神经网络模型的训练优化可以作为一个端到端的联合优化过程;
最后,对于本公开实施例提供的视频编码压缩架构,整体上采用端到端的方式,对上述三个神经网络模型进行联合优化。
本公开实施例中在对视频压缩处理架构进行训练优化的过程中,采用上述先局部,再整体的训练模式,能够有效避免训练过程中的误差传递,提高训练过程的稳定性。
另外,本公开实施例中,在对上述三个神经网络模型进行训练时,除了考虑重建损失、预测损失外,还可以考虑在编码过程中生成压缩数据时的码率,从重建损失、预测损失和码率三个方面控制训练过程。具体的,在对上述视频压缩处理架构进行训练时,其损失函数可以表示如下:
其中,
由此本公开实施例中,由于对视频压缩处理框架进行训练优化时,考虑重建损失、预测损失和码率三个方面的因素,其中码率主要是考虑各个神经网络模型中编码器等性能,重建损失和预测损失主要是考虑解码器的性能。本公开实施例中提供的基于深度学习的视频压缩处理框架,能够对编码器和解码器进行联合优化,能够同时考虑重建损失和码率两个方面的因素,取得在重建损失、预测损失和码率三个方面的平衡,达到在码率一定的前提下,重建损失和预测损失最小,压缩性能最高;或者是在重建损失和预测损失一定的情况下,码率最小,压缩性能最高。
示例性装置
图19是本公开一示例性实施例提供的视频压缩处理装置的结构示意图。该装置可以应用到电子设备上,如图19所示,该装置包括第一确定模块100,第一压缩模块200,第二确定模块300,第二压缩模块400,第三确定模块500。
其中,第一确定模块100用于确定当前帧图像以及历史帧图像的重建帧,当前帧图像与所述历史帧图像之间距离n帧图像,n为正整数;
第一压缩模块200,用于通过第一神经网络模型对所述当前帧图像与历史帧图像的重建帧进行处理,获得当前帧图像的压缩数据以及当前帧图像的预测帧;
第二确定模块300,用于根据当前帧图像的预测帧以及当前帧图像,确定当前帧图像对应的残差图像;
第二压缩模块400,用于通过第二神经网络模型对残差图像进行处理,获得残差图像的压缩数据以及当前帧图像对应的重建残差图像;
第三确定模块500,用于根据当前帧图像的预测帧以及当前帧图像对应的重建残差图像,确定当前帧图像的重建帧。
本公开实施例提供的视频压缩装置的技术方案,其中包括第一神经网络模型型和第二神经网络模型,其中第一神经网络模型能够对当前帧图像和历史帧图像的重建帧进行处理,获得当前帧图像的压缩数据,以及当前帧图像的预测帧,并进一步可以根据该预测帧和原始的当前帧图像确定残差图像,该残差图像可以用以评价第一神经网络模型的优劣,在第一神经网络训练较佳时,残差图像越小;而第二神经网络模型可以将残差图像进行处理得到残差图像的压缩数据,以及对应的重建残差图像;其中的重建残差图像可以对第一神经网络得到的预测帧进行补偿以得到重建帧,使得该第二神经网络模型可以对第一神经网络模型的结果起到纠错和补偿的作用。上述第一神经网络模型和第二神经网络模型构成的视频压缩处理架构是一种基于深度学习的处理架构,能够进行端到端的联合优化,能够大大提高整个视频压缩处理框架的压缩编码性能,提高视频压缩效率和准确率。
本公开实施例中,其中第一神经网络模型兼具编码和解码功能,能够进行帧间编解码处理,具体的,第一压缩模块200可以包括第一编码单元和第一解码单元。
第一编码单元,用于通过第一神经网络模型对当前帧图像,历史帧图像的重建帧进行处编码处理,获得当前帧图像的压缩数据;
第一解码单元,用于通过第一神经网络模型对当前帧图像的压缩数据进行解码处理,获得所述当前帧图像的预测帧。
其中,第一编码单元得到的压缩数据可以作为解码单元的输入,由此可见,可以将该第一神经网络模型分解为一个编码器和一个解码器,进而使得对第一神经网络模型进行优化时,是一个同时针对编码器和解码器进行联合优化的过程,从而构成一个端到端联合优化的技术方案,具有训练优化效率高的优点,同时通过该联合优化得到的第一神经网络模型的编码和解码准确率也能够得到提升。
可选的,本公开实施例中,其中第一编码单元可以进一步包括:
特征提取子单元,用于对当前帧图像,历史帧图像的重建帧进行融合特征提取,获得当前帧图像对应的第二特征图;
量化和概率预测子单元,用于确定第二特征图中每个位置点的量化特征值以及第二特征图中每个位置点的概率预测值;
表征值确定子单元,用于基于量化特征值和概率预测值,确定第二特征图中每个位置点的表征值;
压缩子单元,用于确定当前帧图像的压缩数据,该压缩数据包括每个位置点的表征值。
相对应的,第一解码单元可以进一步包括:
概率预测值确定子单元,用于确定第二特征图中每个位置点的概率预测值;
量化特征值确定子单元,用于基于压缩数据中每个位置点的表征值,以及每个位置点的概率预测值,确定每个位置点的量化特征值;
特征图确定子单元,用于基于每个位置点的量化特征值,确定第二特征图;
光流图确定子单元,用于基于第二特征图,确定二维光流图;
预测帧获得子单元,用于基于上述二维光流图,对历史帧图像的重建帧进行补偿,获得当前帧图像的预测帧。
且具体的,上述的特征提取子单元可以包括两种实现方式,例如:
第一种实现方式,是对上述的当前帧图像,以及历史帧图像的重建帧进行级联操作,以获得级联图像;然后对级联图像进行融合特征提取,获取第二特征图,第二特征图中每个位置点具有分别从两个帧图像上采集的两个不同特征,即第二特征图中包含有光流信息。
第二种实现方式,首先对当前帧图像进行特征提取,获得当前帧图像的特征图;其次,对历史帧图像的重建帧进行特征提取,获得历史帧图像的特征图;最后,对当前帧图像的特征图和历史帧图像的特征图进行融合处理,获得所述第二特征图。
可选的,上述量化和概率预测子单元,以及概率预测值确定子单元中,均会确定第二特征图中每个位置点的概率预测值,在确定上述概率预测值的过程中,可以首先确定第二特征图中每个位置点的空间先验信息、第二特征图中每个位置点的时间先验信息和第二特征图中每个位置点的小尺寸先验信息中的至少一个,然后基于上述的空间先验信息、小尺寸先验信息和时间先验信息中的至少一个,确定第二特征图中每个位置点的概率预测值。该确定方式充分考虑了视频帧中每个像素的时间相关性和空间相关性,利用时域或者空间域上的相关信息来进行预测,使得概率预测更加准确。
其中,确定第二特征图中每个位置点的空间先验信息的方式,可以是,首先确定3d掩模卷积核在第二特征图中的中心位置点;然后确定中心位置点前的各位置点的量化特征值,并作为中心位置点的空间先验信息。
确定第二特征图中每个位置点的小尺寸先验信息的方式,可以是,首先对第二特征图进行小尺寸特征提取,获得第二小尺寸特征图;然后对第二小尺寸特征图进行还原操作,获得与第二特征图尺寸相等的还原特征图,该还原特征图中的相同位置点的特征值作为小尺寸先验信息。
确定第二特征图中每个位置点的时间先验信息方式,可以是,确定历史帧图像对应的第二特征图中相同位置点的概率预测值,并作为当前帧图像对应的第二特征图中相同位置点的时间先验信息,历史帧图像与当前帧图像距离l帧图像,l为正整数,其中,l的值可以取1、2或3等数值。
本公开上述实施例中,其中的第二压缩模块400兼具编码和解码功能,能够进行残差图像编解码处理,具体的可以包括第二编码单元和第二解码单元。第二编码单元,用于通过第二神经网络模型对残差图像进行编码处理,获得残差图像的压缩数据;
第二解码单元,用于通过第二神经网络模型对残差图像的压缩数据进行解码处理,获得当前帧图像对应的重建残差图像。
其中,第二编码单元得到的压缩数据可以作为第二解码单元的输入,由此可见,可以将该第二神经网络模型分解为一个编码器和一个解码器,进而使得对第二神经网络模型进行优化时,是一个同时针对编码器和解码器进行优化的过程,从而构成一个端到端优化的技术方案,具有训练优化效率高的优点。
本公开实施例中,第二编码单元可以进一步包括:
特征提取子单元,用于对残差图像进行特征提取,确定残差图像的第二特征图;
量化和概率预测子单元,用于确定第二特征图中每个位置点的量化特征值,以及第二特征图中每个位置点的概率预测值;
表征值确定子单元,用于基于量化特征值和所述概率预测值,确定第二特征图中每个位置点的表征值;
压缩子单元,用于确定当前帧图像对应的残差图像的压缩数据,压缩数据包括第二特征图中每个位置点的表征值。
本公开实施例中,第二解码单元可以进一步包括:
概率预测值确定子单元,用于确定第二特征图中每个位置点的概率预测值;
量化特征值确定子单元,用于基于压缩数据中每个位置点的表征值,以及每个位置点的概率预测值,确定第二特征图中每个位置点的量化特征值;
特征图确定子单元,用于基于每个位置点的量化特征值,确定残差图像的第二特征图;
重建子单元,用于基于残差图像的第二特征图,确定当前帧图像对应的重建残差图像。
图20是本公开另一示例性实施例提供的视频压缩处理装置的结构示意图,如图20所示,该视频压缩处理装置除包括图19所示的第一确定模块100,第一压缩模块200,第二确定模块300,第二压缩模块400,第三确定模块500外,还进一步包括第四确定模块600和第三压缩模块700。其中的第四确定模块600用于确定当前帧图像为基准帧图像;第三压缩模块700用于通过第三神经网络模型对基准帧图像进行处理,获得基准帧图像的压缩数据,以及基于基准帧图像的重建帧。
本公开实施例中,通过设置第三压缩模块700,该第三压缩模块700能够进行帧内编码,既得到的基准帧图像的压缩数据,又得到了基准帧图像对应的重建帧。其中的第三压缩模块700兼具编码和解码的功能,对于获得的基准帧图像的压缩数据可以进行存储,作为本方案提供的视频压缩处理过程最终得到的压缩数据;对于获得的重建帧,可以应用到后续视频压缩处理过程中,例如作为第一压缩模块200利用第一神经网络模型进行帧间编码时输入的历史帧图像的重建帧使用。
本公开实施例中,第三压缩模块700兼具编码和解码功能,能够进行基准帧图像的编解码处理,具体的第三压缩模块700可以包括第三编码单元和第三解码单元。
第三编码单元,用于通过第三神经网络模型对基准帧图像进行编码处理,获得基准帧图像的压缩数据;
第三解码单元,用于通过第三神经网络模型对基准帧图像的压缩数据进行解码处理,获得基准帧图像对应的重建帧。
其中,第三编码单元得到的压缩数据可以作为第三解码单元的输入,由此可见,可以将该第三压缩模块700所使用的第三神经网络模型分解为一个编码器和一个解码器,进而使得对第三神经网络模型进行优化时,是一个同时针对编码器和解码器进行优化的过程,从而构成一个端到端优化的技术方案,具有训练优化效率高的优点。
本公开实施例中,第三编码单元可以进一步包括:
特征提取子单元,用于对基准帧图像进行特征提取,确定基准帧图像的第二特征图;
量化和概率预测子单元,用于确定第二特征图中每个位置点的量化特征值以及第二特征图中每个位置点的概率预测值;
表征值确定子单元,用于基于量化特征值和所述概率预测值,确定第二特征图中每个位置点的表征值;
压缩子单元,用于确定基准帧图像的压缩数据,压缩数据包括第二特征图中每个位置点的表征值。
本公开实施例中,第三解码单元可以进一步包括:
概率预测值确定子单元,用于确定第二特征图中每个位置点的概率预测值;
量化特征值确定子单元,用于基于压缩数据中每个位置点的表征值,以及每个位置点的概率预测值,确定第二特征图中每个位置点的量化特征值;
特征图确定子单元,用于基于每个位置点的量化特征值,确定基准帧图像的第二特征图;
重建子单元,用于基于基准帧图像的第二特征图,确定基准帧图像的重建帧。
本公开上述实施例中,其中第二编码单元和第三编码单元中的量化和概率预测子单元,以及第三编码单元和第四编码单元中的概率预测值确定子单元获取了第二特征图中各位置点的概率预测值,具体的可以首先确定第二特征图中每个位置点的空间先验信息和第二特征图中每个位置点的小尺寸先验信息中的至少一个,然后基于上述的空间先验信息和小尺寸先验信息中的至少一个,确定第二特征图中每个位置点的概率预测值。
其中,对于确定第二特征图中每个位置点的空间先验信息,可以是,首先,确定3d掩模卷积核在第二特征图中的中心位置点;其次,确定中心位置点前的各位置点的量化特征值,并作为中心位置点的空间先验信息。
对于确定第二特征图中每个位置点的小尺寸先验信息,可以是,首先,对第二特征图进行小尺寸特征提取,获得第二小尺寸特征图;其次,对第二小尺寸特征图进行还原操作,获得与第二特征图尺寸相等的还原特征图,该还原特征图中的相同位置点的特征值作为小尺寸先验信息。
本公开图19和图20所提供的视频编码压缩处理装置实施例,是与上述方法实施例对应的装置实施例,其中对于各个模块、单元和子单元的功能实现过程,可以参照上述方法实施例中的详细描述。
示例性电子设备
下面,参考图21来描述根据本公开实施例的电子设备。该电子设备可以是第一设备和第二设备中的任一个或两者、或与它们独立的单机设备,该单机设备可以与第一设备和第二设备进行通信,以从它们接收所采集到的输入信号。
图21图示了根据本公开实施例的电子设备的框图。
如图21所示,电子设备11包括一个或多个处理器111和存储器112。
处理器111可以是中央处理单元(cpu)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备11中的其他组件以执行期望的功能。
存储器112可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(ram)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(rom)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器111可以运行所述程序指令,以实现上文所述的本公开的各个实施例的视频压缩处理方法以及/或者其他期望的功能。在所述计算机可读存储介质中还可以存储诸如输入信号、信号分量、噪声分量等各种内容。
在一个示例中,电子设备11还可以包括:输入装置113和输出装置114,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。
例如,在该电子设备是第一设备或第二设备时,该输入装置113可以是上述的麦克风或麦克风阵列,用于捕捉声源的输入信号。在该电子设备是单机设备时,该输入装置113可以是通信网络连接器,用于从第一设备和第二设备接收所采集的输入信号。
此外,该输入设备113还可以包括例如键盘、鼠标等等。
该输出装置114可以向外部输出各种信息,包括确定出的距离信息、方向信息等。该输出设备114可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
当然,为了简化,图21中仅示出了该电子设备11中与本公开有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备11还可以包括任何其他适当的组件。
示例性计算机程序产品和计算机可读存储介质
除了上述方法和设备以外,本公开的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的视频压缩处理方法中的步骤。
所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如java、c 等,还包括常规的过程式程序设计语言,诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
此外,本公开的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的视频压缩处理方法中的步骤。
所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。
本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
还需要指出的是,在本公开的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本公开。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本公开的范围。因此,本公开不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。
1.一种视频压缩处理方法,包括:
确定当前帧图像以及历史帧图像的重建帧,所述当前帧图像与所述历史帧图像之间距离n帧图像,n为正整数;
通过第一神经网络模型对所述当前帧图像与所述历史帧图像的重建帧进行处理,获得所述当前帧图像的压缩数据以及所述当前帧图像的预测帧;
根据所述当前帧图像的预测帧以及所述当前帧图像,确定所述当前帧图像对应的残差图像;
通过第二神经网络模型对所述残差图像进行处理,获得所述残差图像的压缩数据以及所述当前帧图像对应的重建残差图像;
根据所述当前帧图像的预测帧以及所述当前帧图像对应的重建残差图像,确定当前帧图像的重建帧。
2.根据权利要求1所述的方法,其中,所述通过第一神经网络模型对所述当前帧图像与所述历史帧图像的重建帧进行处理,获得所述当前帧图像的压缩数据,以及当前帧图像的预测帧,包括;
通过所述第一神经网络模型对所述当前帧图像,所述历史帧图像的重建帧进行处编码处理,获得当前帧图像的压缩数据;
通过所述第一神经网络模型对所述当前帧图像的压缩数据进行解码处理,获得所述当前帧图像的预测帧。
3.根据权利要求2所述的方法,其中,通过所述第一神经网络模型对所述当前帧图像与所述历史帧图像的重建帧进行处编码处理,以得到当前帧图像的压缩数据,包括:
对所述当前帧图像与所述历史帧图像的重建帧进行融合特征提取,获得当前帧图像对应的第一特征图;
确定所述第一特征图中每个位置点的量化特征值,以及所述第一特征图中每个位置点的概率预测值;
基于所述量化特征值和所述概率预测值,确定所述第一特征图中每个位置点的表征值;
确定所述当前帧图像的压缩数据,所述压缩数据包括所述每个位置点的表征值。
4.根据权利要求3所述的方法,其中,通过所述第一神经网络模型对所述当前帧图像的压缩数据进行解码处理,获得所述当前帧图像的预测帧,包括:
确定第一特征图中每个位置点的概率预测值;
基于所述压缩数据中每个位置点的表征值,以及每个位置点的概率预测值,确定每个位置点的量化特征值;
基于所述每个位置点的量化特征值,确定所述第一特征图;
基于所述第一特征图,确定二维光流图;
基于所述二维光流图,对所述历史帧图像的重建帧进行补偿,获得到所述当前帧图像的预测帧。
5.根据权利要求4所述的方法,其中,所述通过第一神经网络模型对所述当前帧图像与所述历史帧图像的重建帧进行融合特征提取,获取第一特征图,包括:
对所述当前帧图像与所述历史帧图像的重建帧进行级联操作,获得级联图像;
对所述级联图像进行融合特征提取,获得第一特征图;或者,
对所述当前帧图像进行特征提取,获得当前帧图像的特征图;
对所述历史帧图像的重建帧进行特征提取,获得历史帧图像的特征图;
对所述当前帧图像的特征图和所述历史帧图像的特征图进行融合处理,获得所述第一特征图。
6.根据权利要求3或4所述的方法,其中,所述确定第一特征图中每个位置点的概率预测值包括:
确定所述第一特征图中每个位置点的空间先验信息、所述第一特征图中每个位置点的小尺寸先验信息和所述第一特征图中每个位置点时间先验信息中的至少一个;
基于所述空间先验信息、所述小尺寸先验信息和所述时间先验信息中的至少一个,确定所述第一特征图中每个位置点的概率预测值。
7.根据权利要求1所述的方法,其中,所述通过第二神经网络模型对所述残差图像进行处理,获得所述残差图像的压缩数据,以及所述当前帧图像对应的重建残差图像,包括:
通过所述第二神经网络模型对所述残差图像进行编码处理,获得所述残差图像的压缩数据;
通过所述第二神经网络模型对所述残差图像的压缩数据进行解码处理,获得所述当前帧图像对应的重建残差图像。
8.根据权利要求7所述的方法,其中,所述通过第二神经网络模型对所述残差图像进行处理,获得所述残差图像的压缩数据,包括:
对所述残差图像进行特征提取,确定所述残差图像的第二特征图;
确定所述第二特征图中每个位置点的量化特征值,以及所述第二特征图中每个位置点的概率预测值;
基于所述量化特征值和所述概率预测值,确定所述第二特征图中每个位置点的表征值;
确定所述当前帧图像对应的残差图像的压缩数据,所述压缩数据包括第二特征图中每个位置点的表征值。
9.一种视频压缩处理装置,包括:
第一确定模块,用于确定当前帧图像以及历史帧图像的重建帧,所述当前帧图像与所述历史帧图像之间距离n帧图像,n为正整数;
第一压缩模块,用于通过第一神经网络模型对所述当前帧图像,所述历史帧图像的重建帧进行处理,获得所述当前帧图像的压缩数据以及所述当前帧图像的预测帧;
第二确定模块,用于根据所述当前帧图像的预测帧以及所述当前帧图像,确定所述当前帧图像对应的残差图像;
第二压缩模块,用于通过第二神经网络模型对所述残差图像进行处理,获得所述残差图像的压缩数据以及所述当前帧图像对应的重建残差图像;
第三确定模块,用于根据所述当前帧图像的预测帧以及所述当前帧图像对应的重建残差图像,确定当前帧图像的重建帧。
10.一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行上述权利要求1-8任一所述的视频压缩处理方法。
11.一种电子设备,所述电子设备包括:
处理器;
用于存储所述处理器可执行指令的存储器;
所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现上述权利要求1-8任一所述的视频压缩处理方法。
技术总结