CN113613003A - 视频压缩、解压缩方法及装置、电子设备和存储介质 - Google Patents

视频压缩、解压缩方法及装置、电子设备和存储介质 Download PDF

Info

Publication number
CN113613003A
CN113613003A CN202111006889.0A CN202111006889A CN113613003A CN 113613003 A CN113613003 A CN 113613003A CN 202111006889 A CN202111006889 A CN 202111006889A CN 113613003 A CN113613003 A CN 113613003A
Authority
CN
China
Prior art keywords
frame
optical flow
video frame
video
prediction residual
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202111006889.0A
Other languages
English (en)
Other versions
CN113613003B (zh
Inventor
王岩
诸子钰
于泓久
王园园
秦红伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Sensetime Technology Development Co Ltd
Original Assignee
Beijing Sensetime Technology Development Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Sensetime Technology Development Co Ltd filed Critical Beijing Sensetime Technology Development Co Ltd
Priority to CN202111006889.0A priority Critical patent/CN113613003B/zh
Publication of CN113613003A publication Critical patent/CN113613003A/zh
Application granted granted Critical
Publication of CN113613003B publication Critical patent/CN113613003B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本公开涉及一种视频压缩、解压缩方法及装置、电子设备和存储介质,应用于视频压缩端的视频压缩方法包括:根据目标视频帧对应的向后参考帧和向前参考帧,确定所述目标视频帧对应的光流预测残差和B帧预测残差,其中,所述向后参考帧是第一视频帧对应的重建帧,所述向前参考帧是第二视频帧对应的重建帧,所述第一视频帧、所述目标视频帧和所述第二视频帧是目标视频中按时序前后排列的原始视频帧;利用预设码率控制系数,对所述光流预测残差和所述B帧预测残差进行压缩,得到所述目标视频帧对应的压缩B帧。本公开实施例提高了视频压缩的压缩率,实现了灵活性较高的变码率视频压缩。

Description

视频压缩、解压缩方法及装置、电子设备和存储介质
技术领域
本公开涉及计算机视觉技术领域,尤其涉及一种视频压缩、解压缩方法及装置、电子设备和存储介质。
背景技术
基于深度学习的视频压缩技术进展快速,在一些场景中视频压缩率已经可以超越H.265,是目前视频压缩研究的一个热点方向。相关技术中,基于深度学习训练得到的神经网络,仅支持帧内编码的I帧压缩,和/或,单侧帧间编码的P帧压缩,导致视频压缩率较低。
发明内容
本公开提出了一种视频压缩、解压缩方法及装置、电子设备和存储介质技术方案。
根据本公开的一方面,提供了一种视频压缩方法,所述视频压缩方法应用于视频压缩端,所述视频压缩方法包括:根据目标视频帧对应的向后参考帧和向前参考帧,确定所述目标视频帧对应的光流预测残差和B帧预测残差,其中,所述向后参考帧是第一视频帧对应的重建帧,所述向前参考帧是第二视频帧对应的重建帧,所述第一视频帧、所述目标视频帧和所述第二视频帧是目标视频中按时序前后排列的原始视频帧;利用预设码率控制系数,对所述光流预测残差和所述B帧预测残差进行压缩,得到所述目标视频帧对应的压缩B帧。
在一种可能的实现方式中,所述根据目标视频帧对应的向后参考帧和向前参考帧,确定所述目标视频帧对应的光流预测残差,包括:根据所述目标视频帧、所述向后参考帧和所述向前参考帧,确定第一向前光流、第二向前光流、第一向后光流和第二向后光流;利用插值法对所述第一向前光流和所述第一向后光流进行光流预测,得到向前预测光流和向后预测光流;根据所述第二向前光流和所述向前预测光流确定向前光流预测残差,以及根据所述第二向后光流和所述向后预测光流,确定向后光流预测残差。
在一种可能的实现方式中,所述确定所述目标视频帧对应的B帧预测残差,包括:对所述向前光流预测残差和所述向后光流预测残差进行编码,得到所述目标视频帧对应的第一编码特征;根据所述第一编码特征、所述向后参考帧和所述向前参考帧,确定所述B帧预测残差。
在一种可能的实现方式中,所述根据所述第一编码特征、所述向后参考帧和所述向前参考帧,确定所述B帧预测残差,包括:对所述第一编码特征进行解码,得到向前重建光流预测残差和向后重建光流预测残差;根据所述向前重建光流预测残差和所述向前预测光流确定向前重建光流,以及根据所述向后重建光流预测残差和所述向后预测光流,确定向后重建光流;根据所述向后参考帧、所述向前参考帧、所述向前重建光流和所述向后重建光流,确定所述目标视频帧对应的预测B帧;根据所述目标视频帧和所述预测B帧,确定所述B帧预测残差。
在一种可能的实现方式中,所述根据所述向后参考帧、所述向前参考帧、所述向前重建光流和所述向后重建光流,确定所述目标视频帧对应的预测B帧,包括:根据所述向前重建光流对所述向后参考帧进行空间变换,得到第一变换视频帧;根据所述向后重建光流对所述向前参考帧进行空间变换,得到第二变换视频帧;根据所述第一变换视频帧和所述第二变换视频帧,生成所述预测B帧。
在一种可能的实现方式中,所述根据所述第一变换视频帧和所述第二变换视频帧,生成所述预测B帧,包括:根据所述向后参考帧对所述第一变换视频帧进行优化,得到第一优化视频帧;根据所述向前参考帧对所述第二变换视频帧进行优化,得到第二优化视频帧;根据所述第一优化视频帧和所述第二优化视频帧,生成所述预测B帧。
在一种可能的实现方式中,所述利用预设码率控制系数,对所述光流预测残差和所述B帧预测残差进行压缩,得到所述目标视频帧对应的压缩B帧,包括:对所述光流预测残差进行编码,得到所述目标视频帧对应的第一编码特征;对所述B帧预测残差进行编码,得到所述目标视频帧对应的第二编码特征;利用所述预设码率控制系数,对所述第一编码特征和所述第二编码特征进行量化,得到第一量化编码特征和第二量化编码特征;对所述第一量化编码特征和所述第二量化编码特征进行熵编码,得到所述压缩B帧。
在一种可能的实现方式中,所述利用所述预设码率控制系数,对所述第一编码特征和所述第二编码特征进行量化,得到第一量化编码特征和第二量化编码特征,包括:确定编码特征对应的尺度信息,其中,所述编码特征是所述第一编码特征或所述第二编码特征;根据所述预设码率控制系数,确定条件缩放因子和量化基数;根据所述编码特征对应的尺度信息、所述条件缩放因子和所述量化基数,确定所述编码特征对应的目标量化参数;根据所述编码特征对应的目标量化参数,对所述编码特征进行缩放,得到量化编码特征,其中,所述量化编码特征是所述量化第一编码特征或所述量化第二编码特征。
根据本公开的一方面,提供了一种视频解压缩方法,所述视频解压缩方法应用于视频解压缩端,所述视频解压缩方法包括:获取目标视频帧对应的压缩B帧;利用预设码率控制系数,对所述压缩B帧进行解压缩,得到所述目标视频帧对应的光流预测残差和B帧预测残差;根据所述光流预测残差、所述B帧预测残差、以及所述目标视频帧对应的向后参考帧和向前参考帧,确定所述目标视频帧对应的重建帧,其中,所述向后参考帧是第一视频帧对应的重建帧,所述向前参考帧是第二视频帧对应的重建帧,所述第一视频帧、所述目标视频帧和所述第二视频帧是目标视频中按时序前后排列的原始视频帧。
根据本公开的一方面,提供了一种视频压缩装置,所述视频压缩装置应用于视频压缩端,所述视频压缩装置包括:残差预测模块,用于根据目标视频帧对应的向后参考帧和向前参考帧,确定所述目标视频帧对应的光流预测残差和B帧预测残差,其中,所述向后参考帧是第一视频帧对应的重建帧,所述向前参考帧是第二视频帧对应的重建帧,所述第一视频帧、所述目标视频帧和所述第二视频帧是目标视频中按时序前后排列的原始视频帧;B帧压缩模块,用于利用预设码率控制系数,对所述光流预测残差和所述B帧预测残差进行压缩,得到所述目标视频帧对应的压缩B帧。
根据本公开的一方面,提供了一种视频解压缩装置,所述视频解压缩装置应用于视频解压缩端,所述视频解压缩装置包括:获取模块,用于获取目标视频帧对应的压缩B帧;B帧解压缩模块,用于利用预设码率控制系数,对所述压缩B帧进行解压缩,得到所述目标视频帧对应的光流预测残差和B帧预测残差;视频帧重建模块,用于根据所述光流预测残差、所述B帧预测残差、以及所述目标视频帧对应的向后参考帧和向前参考帧,确定所述目标视频帧对应的重建帧,其中,所述向后参考帧是第一视频帧对应的重建帧,所述向前参考帧是第二视频帧对应的重建帧,所述第一视频帧、所述目标视频帧和所述第二视频帧是目标视频中按时序前后排列的原始视频帧。
根据本公开的一方面,提供了一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为调用所述存储器存储的指令,以执行上述方法。
根据本公开的一方面,提供了一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述方法。
在本公开实施例中,视频压缩端利用目标视频帧对应的前后帧信息:向后参考帧和向前参考帧,确定目标视频帧对应的光流预测残差和B帧预测残差,进而利用预设码率控制系数,对光流预测残差和B帧预测残差进行可变码率的压缩,得到目标视频帧对应的压缩率较高的压缩B帧,从而提高了视频压缩的压缩率,以及实现了灵活性较高的变码率视频压缩。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本公开。根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。
图1示出根据本公开实施例的一种视频压缩方法的流程图;
图2示出根据本公开实施例的一种B帧预测神经子网络的示意图;
图3示出根据本公开实施例的一种变码率神经子网络的示意图;
图4示出根据本公开实施例的一种视频解压缩方法的流程图;
图5示出根据本公开实施例的一种视频压缩装置的框图;
图6示出根据本公开实施例的一种视频解压缩装置的框图;
图7示出根据本公开实施例的一种电子设备的框图;
图8示出根据本公开实施例的一种电子设备的框图。
具体实施方式
以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。
另外,为了更好地说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
视频数据包含巨大的信息量,难以直接存储和传输,因此需要对视频数据进行压缩,以消除视频数据中的时间冗余、空间冗余、视觉冗余等各种冗余信息。相关技术中,可以采用视频编解码技术实现对视频数据的压缩和解压缩。在视频编解码技术中,存在I帧、P帧和B帧三种不同类型的压缩帧。其中,I帧(Intra-coded picture),也称为帧内编码图像帧,包含一幅完整的图像信息,属于帧内编码图像,不含运动矢量,在解压缩时不需要参考其它图像帧。P帧(Predictive-coded picture),也称单向预测编码图像帧,是帧间编码图像,利用之前的I帧或P帧作为参考帧进行单向预测编码。B帧(Bi-directionally predictedpicture),也称为双向预测编码图像帧,也是帧间编码图像,利用之前和/或之后的I帧、P帧、B帧作为参考帧进行双向预测编码。随着深度学习的快速发展,可以通过端到端的反向传播训练得到深度神经网络,以使得可以基于训练好的深度神经网络对视频进行视频压缩。相关技术中训练得到用于进行视频压缩的深度神经网络,仅支持I帧压缩和P帧压缩。但是,相比于B帧压缩,I帧压缩和P帧压缩的压缩率较低,使得视频压缩的压缩率仍然后较大的提成空间。此外,相关技术中,需要训练多个深度神经网络的网络参数,才可以实现不同码率的视频压缩,导致视频压缩的灵活性较差
本公开实施例的视频压缩方法,可以通过端到端的反向传播训练得到目标神经网络,以使得视频压缩端可以基于训练好的目标神经网络,利用目标视频帧xt对应的前后帧信息:向后参考帧
Figure BDA0003237528900000041
和向前参考帧
Figure BDA0003237528900000042
确定目标视频帧xt对应的光流预测残差和B帧预测残差,进而通过在目标神经网络中引入预设码率控制系数,就可以实现通过调整预设码率控制系数,对光流预测残差和B帧预测残差进行可变码率的压缩,得到目标视频帧xt对应的压缩率较高的压缩B帧,而无需为每个码率单独训练网络参数,从而既可以提高视频压缩的压缩率,又可以实现灵活性较高的变码率视频压缩。
图1示出根据本公开实施例的一种视频压缩方法的流程图。该视频压缩方法应用于视频压缩端,视频压缩端可以是终端设备或服务器等电子设备中的视频编码器,终端设备可以为用户设备(User Equipment,UE)、移动设备、用户终端、蜂窝电话、无绳电话、个人数字助理(Personal Digital Assistant,PDA)、手持设备、计算设备、车载设备、可穿戴设备等,该视频压缩方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。或者,可通过服务器执行该视频压缩方法。如图1所示,该视频压缩方法可以包括:
在步骤S11中,根据目标视频帧对应的向后参考帧和向前参考帧,确定目标视频帧对应的光流预测残差和B帧预测残差,其中,向后参考帧是第一视频帧对应的重建帧,向前参考帧是第二视频帧对应的重建帧,第一视频帧、目标视频帧和第二视频帧是目标视频中按时序前后排列的原始视频帧。
目标视频指的是图像采集设备采集得到原始视频数据。目标视频帧xt、第一视频帧xp和第二视频帧xn的采集顺序是第一视频帧xp、目标视频帧xt、第二视频帧xn,即p<t<n。
第一视频帧xp、目标视频帧xt、第二视频帧xn之间可以是相邻视频帧,例如,第一视频帧xp、目标视频帧xt、第二视频帧xn分别是目标视频中的第1帧(p=1)、第2帧(t=2)和第3帧(n=3);第一视频帧xp、目标视频帧xt、第二视频帧xn之间也可以是非相邻视频帧,例如,第一视频帧xp、目标视频帧xt、第二视频帧xn分别是目标视频中的第2帧(p=2)、第5帧(t=5)和第10帧(n=10);本公开对此不作具体限定。
目标视频帧xt、第一视频帧xp和第二视频帧xn的压缩顺序(即编码顺序)是第一视频帧xp、第二视频帧xn、目标视频帧xt。对第一视频帧xp进行压缩后得到的压缩帧进行解压缩(即视频帧重建),可以得到向后参考帧
Figure BDA0003237528900000051
对第二视频帧xn进行压缩后得到的压缩帧进行解压缩,可以得到向前参考帧
Figure BDA0003237528900000052
其中,第一视频帧xp进行压缩后得到的压缩帧,以及第二视频帧xn进行压缩后得到的压缩帧,可以是I帧,可以是P帧,也可以是B帧,本公开对此不作具体限定。
目标视频帧xt是当前待编码的视频帧。利用向后参考帧
Figure BDA0003237528900000053
和向前参考帧
Figure BDA0003237528900000054
可以实现对目标视频帧xt进行B帧压缩。
在对目标视频帧xt进行B帧压缩的过程中,利用向后参考帧
Figure BDA0003237528900000061
和向前参考帧
Figure BDA0003237528900000062
确定目标视频帧xt对应的光流预测残差和B帧预测残差。光流预测残差和B帧预测残差,可以反映目标视频帧xt和向后参考帧
Figure BDA0003237528900000063
向前参考帧
Figure BDA0003237528900000064
之间的双向运动变化。后文会结合本公开可能的实现方式,对光流预测残差和B帧预测残差的确定过程作详细描述,此处不作赘述。
在步骤S12中,利用预设码率控制系数,对光流预测残差和B帧预测残差进行压缩,得到目标视频帧对应的压缩B帧。
通过设置预设码率控制系数,可以实现对光流预测残差和B帧预测残差进行可变码率的压缩,得到目标视频帧xt对应的压缩率较高的压缩B帧。后文会结合本公开可能的实现方式,对光流预测残差和B帧预测残差进行可变码率的压缩的过程作详细描述,此处不作赘述。
在本公开实施例中,视频压缩端利用目标视频帧xt对应的前后帧信息:向后参考帧
Figure BDA0003237528900000065
和向前参考帧
Figure BDA0003237528900000066
确定目标视频帧xt对应的光流预测残差和B帧预测残差,进而利用预设码率控制系数,对光流预测残差和B帧预测残差进行可变码率的压缩,得到目标视频帧xt对应的压缩率较高的压缩B帧,从而提高了视频压缩的压缩率,以及实现了灵活性较高的变码率视频压缩。
在一种可能的实现方式中,视频压缩方法通过目标神经网络实现。
基于深度学习算法,通过端到端的反向传播网络训练,预先训练得到用于进行视频B帧可变码率压缩的目标神经网络。本领域技术人员应该了解,目标神经网络的训练方式可以采用相关技术中的任意网络训练方式,本公开对此不作具体限定。
在一示例中,目标神经网络可以包括B帧预测神经子网络、变码率神经子网络和残差压缩子网络。其中,B帧预测神经子网络用于对目标视频帧xt进行B帧预测,确定目标视频帧xt对应的光流预测残差和B帧预测残差。变码率神经子网络用于根据预设码率控制系数,对光流预测残差和B帧预测残差进行变码率处理。残差压缩子网络用于对光流预测残差和B帧预测残差进行压缩,得到目标视频帧xt对应的压缩B帧。
目标神经网络训练完成之后,仅需调整预设码率控制系数,就可以实现变码率B帧压缩,而无需为每个码率训练单独的网络参数,从而有效实现灵活性较高的变码率B帧压缩。
在一种可能的实现方式中,根据目标视频帧对应的向后参考帧和向前参考帧,确定目标视频帧对应的光流预测残差,包括:根据目标视频帧、向后参考帧和向前参考帧,确定第一向前光流、第二向前光流、第一向后光流和第二向后光流;利用插值法对第一向前光流和第一向后光流进行光流预测,得到向前预测光流和向后预测光流;根据第二向前光流和向前预测光流确定向前光流预测残差,以及根据第二向后光流和向后预测光流,确定向后光流预测残差。
图2示出根据本公开实施例的一种B帧预测神经子网络的示意图。如图2所示,B帧预测神经子网络中包括光流计算模块、光流预测模块、编码模块、解码模块以及B帧合成模块。
将目标视频帧xt、向后参考帧
Figure BDA0003237528900000071
和向前参考帧
Figure BDA0003237528900000072
输入图2所示的B帧预测神经子网络中的光流计算模块,光流计算模块计算得到四个光流:第一向前光流fp-n、第二向前光流fp-t、第一向后光流fn-p和第二向后光流fn-t
在目标视频帧xt和第一视频帧xp、第二视频帧xn的帧间间隔较小的情况下,可以将帧间运动近似为线性运动,因此,如图2所示,将第一向前光流fp-n和第一向后光流fn-p输入光流预测模块,光流预测模块利用插值法进行光流预测,得到向前预测光流
Figure BDA0003237528900000073
和向后预测光流
Figure BDA0003237528900000074
在一示例中,根据第一向前光流fp-n和第一向后光流光流fn-p,可以基于下述公式(1)确定向前预测光流
Figure BDA0003237528900000075
和向后预测光流
Figure BDA0003237528900000076
Figure BDA0003237528900000077
根据第二向前光流fp-t和向前预测光流
Figure BDA0003237528900000078
之间的差异,可以确定向前光流预测残差
Figure BDA0003237528900000079
根据第二向后光流fn-t和向后预测光流
Figure BDA00032375289000000710
之间的差异,可以确定向后光流预测残差
Figure BDA00032375289000000711
在一种可能的实现方式中,确定目标视频帧对应的B帧预测残差,包括:对向前光流预测残差和向后光流预测残差进行编码,得到目标视频帧对应的第一编码特征;根据第一编码特征、向后参考帧和向前参考帧,确定B帧预测残差。
如图2所示,将向前光流预测残差rfp-t和向后光流预测残差rfn-t输入编码模块,编码模块对向前光流预测残差rfp-t和向后光流预测残差rfn-t进行编码,得到目标视频帧xt对应的第一编码特征yt。第一编码特征yt可以反映目标视频帧xt对应的帧间运动变化,后续需要将第一编码特征yt进行量化和熵编码,并存储到视频压缩码流中。后文会结合本公开可能的实现方式,对第一编码特征yt的量化和熵编码过程作详细描述,此处不作赘述。
由于第一编码特征yt可以反映目标视频帧xt对应的帧间运动变化,因此,根据第一编码特征yt、向后参考帧
Figure BDA0003237528900000081
和向前参考帧
Figure BDA0003237528900000082
可以确定目标视频帧xt对应的预测B帧以及B帧预测残差。
在一种可能的实现方式中,根据第一编码特征、向后参考帧和向前参考帧,确定B帧预测残差,包括:对第一编码特征进行解码,得到向前重建光流预测残差和向后重建光流预测残差;根据向前重建光流预测残差和向前预测光流确定向前重建光流,以及根据向后重建光流预测残差和向后预测光流,确定向后重建光流;根据向后参考帧、向前参考帧、向前重建光流和向后重建光流,确定目标视频帧对应的预测B帧;根据目标视频帧和预测B帧,确定B帧预测残差。
仍以上述图2为例,如图2所示,将第一编码特征yt输入解码模块,解码模块对第一编码特征yt进行解码,得到向前光流预测残差rfp-t和向后光流预测残差rfn-t的重建值:向前重建光流预测残差
Figure BDA0003237528900000083
和向后重建光流预测残差
Figure BDA0003237528900000084
根据向前重建光流预测残差
Figure BDA0003237528900000085
和向前预测光流
Figure BDA0003237528900000086
可以确定向前重建光流
Figure BDA0003237528900000087
以及根据向后重建光流预测残差
Figure BDA0003237528900000088
和向后预测光流
Figure BDA0003237528900000089
可以确定向后重建光流
Figure BDA00032375289000000810
如图2所示,将向后参考帧
Figure BDA00032375289000000811
向前参考帧
Figure BDA00032375289000000812
向前重建光流
Figure BDA00032375289000000813
和向后重建光流
Figure BDA00032375289000000814
输入B帧合成模块,B帧合成模块得到目标视频帧xt对应的预测B帧
Figure BDA00032375289000000815
在一种可能的实现方式中,根据向后参考帧、向前参考帧、向前重建光流和向后重建光流,确定目标视频帧对应的预测B帧,包括:根据向前重建光流对向后参考帧进行空间变换,得到第一变换视频帧;根据向后重建光流对向前参考帧进行空间变换,得到第二变换视频帧;根据第一变换视频帧和第二变换视频帧,生成预测B帧。
由于向前重建光流
Figure BDA00032375289000000816
和向后重建光流
Figure BDA00032375289000000817
反映了帧间运动变化,因此,基于向前重建光流
Figure BDA00032375289000000818
对向后参考帧
Figure BDA00032375289000000819
进行空间变换,可以得到第一变换视频帧
Figure BDA00032375289000000820
基于向后重建光流
Figure BDA00032375289000000821
对向前参考帧
Figure BDA00032375289000000822
进行空间变换,可以得到第二变换视频帧
Figure BDA0003237528900000091
进而可以根据第一变换视频帧
Figure BDA0003237528900000092
和第二变换视频帧
Figure BDA0003237528900000093
生成预测B帧
Figure BDA0003237528900000094
在一示例中,根据第一变换视频帧
Figure BDA0003237528900000095
和第二变换视频帧
Figure BDA0003237528900000096
可以利用下述公式(2)确定预测B帧
Figure BDA0003237528900000097
Figure BDA0003237528900000098
在一种可能的实现方式中,根据第一变换视频帧和第二变换视频帧,生成预测B帧,包括:根据向后参考帧对第一变换视频帧进行优化,得到第一优化视频帧;根据向前参考帧对第二变换视频帧进行优化,得到第二优化视频帧;根据一优化视频帧和第二优化视频帧,生成预测B帧。
为了提高预测B帧
Figure BDA0003237528900000099
的准确度,可以根据向后参考帧
Figure BDA00032375289000000910
对第一变换视频帧
Figure BDA00032375289000000911
进行优化,得到第一优化视频帧
Figure BDA00032375289000000912
以及根据向前参考帧
Figure BDA00032375289000000913
对第二变换视频帧
Figure BDA00032375289000000914
进行优化,得到第二优化视频帧
Figure BDA00032375289000000926
进而可以利用下述公式(3)确定预测B帧
Figure BDA00032375289000000916
Figure BDA00032375289000000917
在一示例中,可以根据U-net模块,利用下述公式(4)实现对第一变换视频帧
Figure BDA00032375289000000918
第二变换视频
Figure BDA00032375289000000919
进行优化。
Figure BDA00032375289000000920
其中,本领域技术人员应该了解,U-net模块可以采用相关技术中任意形式的U型网络结构,本公开对此不作具体限定。
在确定目标视频帧xt对应的预测B帧
Figure BDA00032375289000000921
之后,根据目标视频帧xt和预测B帧
Figure BDA00032375289000000922
之间的差异,可以确定目标视频帧xt对应的B帧预测残差
Figure BDA00032375289000000923
后续需要将B帧预测残差
Figure BDA00032375289000000924
进行量化和熵编码,并存储到视频压缩码流中。后文会结合本公开可能的实现方式,对B帧预测残差
Figure BDA00032375289000000925
的量化和熵编码过程作详细描述,此处不作赘述。
在确定光流预测残差和B帧预测残差之后,对光流预测残差和B帧预测残差进行压缩,得到目标视频帧xt对应的压缩B帧。
在一种可能的实现方式中,利用预设码率控制系数,对光流预测残差和B帧预测残差进行压缩,得到目标视频帧对应的压缩B帧,包括:对光流预测残差进行编码,得到目标视频帧对应的第一编码特征;对B帧预测残差进行编码,得到目标视频帧对应的第二编码特征;利用预设码率控制系数,对第一编码特征和第二编码特征进行量化,得到第一量化编码特征和第二量化编码特征;对第一量化编码特征和第二量化编码特征进行熵编码,得到压缩B帧。
为了提高压缩效率,对向前光流预测残差rfp-t和向后光流预测残差rfn-t进行编码,得到第一编码特征,以及对B帧预测残差
Figure BDA0003237528900000101
进行编码,得到第二编码特征。在进行熵编码之前,利用变码率神经子网络对第一编码特征和第二编码特征进行量化,使得第一量化编码特征和第二量化编码特征均依赖于预设码率控制系数。进而对第一量化编码特征和第二量化编码特征进行熵编码,可以有效实现可变码率B帧压缩。
在一示例中,熵编码包括算数编码、ANS编码等,还可以包括其它编码方式,本公开对此不作具体限定。
在一种可能的实现方式中,利用预设码率控制系数,对第一编码特征和第二编码特征进行量化,得到第一量化编码特征和第二量化编码特征,包括:确定编码特征对应的尺度信息,其中,编码特征是第一编码特征或第二编码特征;根据预设码率控制系数,确定条件缩放因子和量化基数;根据编码特征对应的尺度信息、条件缩放因子和量化基数,确定编码特征对应的目标量化参数;根据编码特征对应的目标量化参数,对编码特征进行缩放,得到量化编码特征,其中,量化编码特征是第量化一编码特征或第二量化编码特征。
图3示出根据本公开实施例的一种变码率神经子网络的示意图。如图3所示,分别将第一编码特征和第二编码特征输入变码率神经子网络。编码特征x(第一编码特征或第二编码特征)经过多个卷积层(构成一个SacleNet)和一个sigmoid层,得到编码特征x对应的尺度信息scale(x)。
在一示例中,可以根据下述公式(5),确定编码特征x对应的尺度信息scale(x)。
Figure BDA0003237528900000102
仍以上述图3为例,如图3所示,将预设码率控制系数β应用于变码率神经子网络中的多层传感器MLP,得到条件缩放因子
Figure BDA0003237528900000103
和量化基数σ1=MLP(β;η)。
根据条件缩放因子
Figure BDA0003237528900000104
和量化基数σ1=MLP(β;η),进一步调制编码特征x对应的尺度信息scale(x),得到编码特征x对应的目标量化参数qp。其中,
Figure BDA0003237528900000105
和η是多层传感器MLP的网络参数。
在一示例中,利用下述公式(6),根据条件缩放因子
Figure BDA0003237528900000111
和量化基数σ1=MLP(β;η),调制编码特征x对应的尺度信息scale(x),得到编码特征x对应的目标量化参数qp。
Figure BDA0003237528900000112
在一示例中,利用下述公式(7),根据目标量化参数qp对编码特征x进行缩放,得到量化编码特征y。
y=x*qp (7)。
其中,量化编码特征y是第一量化编码特征或第二量化编码特征。
利用图3所示的变码率神经子网络,仅需对预设码率控制系数β进行调整,而无需调整网络参数,就可以实现变码率量化,对第一量化编码特征和第二量化编码特征进行熵编码,实现对光流预测残差和B帧预测残差的变码率压缩,得到目标视频帧xt对应的压缩B帧,而无需为每个码率训练单独的网络参数,实现了灵活性较高的B帧压缩。
针对目标视频中的至少一个视频帧,可以采用本公开的视频压缩方法进行B帧压缩,目标视频中的其它视频帧,可以采用相关技术中的I帧和/或P帧压缩,最终得到压缩后视频,对压缩后视频进行存储或传输。
图4示出根据本公开实施例的一种视频解压缩方法的流程图。该视频解压缩方法应用于视频解压缩端,视频解压缩端可以是终端设备或服务器等电子设备中的视频解码器,终端设备可以为用户设备(User Equipment,UE)、移动设备、用户终端、蜂窝电话、无绳电话、个人数字助理(Personal Digital Assistant,PDA)、手持设备、计算设备、车载设备、可穿戴设备等,该视频解压缩方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。或者,可通过服务器执行该视频解压缩方法。如图4所示,该视频解压缩方法可以包括:
在步骤S41中,获取目标视频帧对应的压缩B帧。
在步骤S42中,利用预设码率控制系数,对压缩B帧进行解压缩,得到目标视频帧对应的光流预测残差和B帧预测残差。
在步骤S43中,根据光流预测残差、B帧预测残差、以及目标视频帧对应的向后参考帧和向前参考帧,确定目标视频帧对应的重建帧,其中,向后参考帧是第一视频帧对应的重建帧,向前参考帧是第二视频帧对应的重建帧,第一视频帧、目标视频帧和第二视频帧是目标视频中按时序前后排列的原始视频帧。
参考上述实施例,目标视频帧xt、第一视频帧xp和第二视频帧xn的压缩顺序(即编码顺序)是第一视频帧xp、第二视频帧xn、目标视频帧xt。解压缩顺序和压缩顺序需要一致,因此,在视频解压缩过程中,首先对第一视频帧xp对应的压缩帧进行解压缩(即视频帧重建),可以得到向后参考帧
Figure BDA0003237528900000121
其次对第二视频帧xn对应的压缩帧进行解压缩,可以得到向前参考帧
Figure BDA0003237528900000122
然后对目标视频帧xt对应的压缩B帧进行解压缩。
其中,第一视频帧xp对应的压缩帧,以及第二视频帧xn对应到的压缩帧,可以是I帧,可以是P帧,也可以是B帧,本公开对此不作具体限定。
在对目标视频帧xt对应的压缩B帧进行解压缩时,首先,对压缩B帧进行熵解码,得到第一量化编码特征和第二量化编码特征。
其次,利用预设码率控制系数,对第一量化编码特征和第二量化编码特征进行逆量化,得到第一编码特征和第二编码特征。
其中,对第一量化编码特征和第二量化编码特征进行逆量化,得到第一编码特征和第二编码特征的过程,可以相当于是上述实施例中对第一编码特征和第二编码特征进行量化,得到第一量化编码特征和第二量化编码特征的逆过程。
在一示例中,将量化编码特征(第一量化编码特征或第二量化编码特征)输入变码率神经子网络,量化编码特征x'经过多个卷积层(构成一个SacleNet)和一个ReLU层,得到编码特征x'对应的逆尺度信息scaleinv(x')。
将预设码率控制系数β应用于变码率神经子网络中的多层传感器MLP,得到条件缩放因子μ2和量化基数σ2。根据条件缩放因子μ2和量化基数σ2,进一步调制量化编码特征x'对应的逆尺度信息scaleinv(x'),得到量化编码特征x'对应的目标量化参数qp'。进而,根据目标量化参数qp'对量化编码特征x'进行缩放,得到逆量化后的编码特征(第一编码特征或第二编码特征)。
对第一编码特征进行解码,得到目标视频帧xt对应的向前重建光流预测残差
Figure BDA0003237528900000123
和向后重建光流预测残差
Figure BDA0003237528900000124
对第二编码特征进行解码,得到目标视频帧xt对应的B帧预测残差
Figure BDA0003237528900000125
根据向后参考帧
Figure BDA0003237528900000126
和向前参考帧
Figure BDA0003237528900000127
确定向前预测光流
Figure BDA0003237528900000128
和向后预测光流
Figure BDA0003237528900000129
具体过程可以参考上述实施例,此处不作赘述。
根据向前重建光流预测残差
Figure BDA0003237528900000131
和向前预测光流
Figure BDA0003237528900000132
可以生成向前重建光流
Figure BDA0003237528900000133
根据向后重建光流预测残差
Figure BDA0003237528900000134
和向后预测光流
Figure BDA0003237528900000135
可以生成向后重建光流
Figure BDA0003237528900000136
具体过程可以参考上述实施例,此处不作赘述。
根据向后参考帧
Figure BDA0003237528900000137
向前参考帧
Figure BDA0003237528900000138
向前重建光流
Figure BDA0003237528900000139
和向后重建光流
Figure BDA00032375289000001310
可以生成目标视频帧xt对应的预测B帧
Figure BDA00032375289000001311
具体过程可以参考上述实施例,此处不作赘述。
对B帧预测残差
Figure BDA00032375289000001312
和预测B帧
Figure BDA00032375289000001313
进行求和,既可以得到目标视频帧xt对应的重建帧
Figure BDA00032375289000001314
完成对目标视频帧xt对应的压缩B帧的解压缩过程。
可以理解,本公开提及的上述各个方法实施例,在不违背原理逻辑的情况下,均可以彼此相互结合形成结合后的实施例,限于篇幅,本公开不再赘述。本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
此外,本公开还提供了视频压缩/解压缩装置、电子设备、计算机可读存储介质、程序,上述均可用来实现本公开提供的任一种视频压缩/解压缩方法,相应技术方案和描述和参见方法部分的相应记载,不再赘述。
图5示出根据本公开实施例的一种视频压缩装置的框图。视频压缩装置应用于视频压缩端。如图5所示,视频压缩装置50包括:
残差预测模块51,用于根据目标视频帧对应的向后参考帧和向前参考帧,确定目标视频帧对应的光流预测残差和B帧预测残差,其中,向后参考帧是第一视频帧对应的重建帧,向前参考帧是第二视频帧对应的重建帧,第一视频帧、目标视频帧和第二视频帧是目标视频中按时序前后排列的原始视频帧;
B帧压缩模块52,用于利用预设码率控制系数,对光流预测残差和B帧预测残差进行压缩,得到目标视频帧对应的压缩B帧。
在一种可能的实现方式中,残差预测模块51,包括:
光流确定子模块,用于根据目标视频帧、向后参考帧和向前参考帧,确定第一向前光流、第二向前光流、第一向后光流和第二向后光流;
光流预测子模块,用于利用插值法对第一向前光流和第一向后光流进行光流预测,得到向前预测光流和向后预测光流;
光流预测残差确定子模块,用于根据第二向前光流和向前预测光流确定向前光流预测残差,以及根据第二向后光流和向后预测光流,确定向后光流预测残差。
在一种可能的实现方式中,残差预测模块51,还包括:
第一编码子模块,用于对向前光流预测残差和向后光流预测残差进行编码,得到目标视频帧对应的第一编码特征;
B帧预测残差确定子模块,用于根据第一编码特征、向后参考帧和向前参考帧,确定B帧预测残差。
在一种可能的实现方式中,B帧预测残差确定子模块,包括:
解码单元,用于对第一编码特征进行解码,得到向前重建光流预测残差和向后重建光流预测残差;
光流重建单元,用于根据向前重建光流预测残差和向前预测光流确定向前重建光流,以及根据向后重建光流预测残差和向后预测光流,确定向后重建光流;
B帧预测单元,用于根据向后参考帧、向前参考帧、向前重建光流和向后重建光流,确定目标视频帧对应的预测B帧;
B帧预测残差确定单元,用于根据目标视频帧和预测B帧,确定B帧预测残差。
在一种可能的实现方式中,B帧预测单元,包括:
第一变换子单元,用于根据向前重建光流对向后参考帧进行空间变换,得到第一变换视频帧;
第二变换子单元,用于根据向后重建光流对向前参考帧进行空间变换,得到第二变换视频帧;
B帧预测子单元,用于根据第一变换视频帧和第二变换视频帧,生成预测B帧。
在一种可能的实现方式中,B帧预测子单元,具体用于:
根据向后参考帧对第一变换视频帧进行优化,得到第一优化视频帧;
根据向前参考帧对第二变换视频帧进行优化,得到第二优化视频帧;
根据第一优化视频帧和第二优化视频帧,生成预测B帧。
在一种可能的实现方式中,B帧压缩模块,包括:
第一编码子模块,用于对光流预测残差进行编码,得到目标视频帧对应的第一编码特征;
第二编码子模块,还用于对B帧预测残差进行编码,得到目标视频帧对应的第二编码特征;
量化子模块,用于利用预设码率控制系数,对第一编码特征和第二编码特征进行量化,得到第一量化编码特征和第二量化编码特征;
熵编码子模块,用于对第一量化编码特征和第二量化编码特征进行熵编码,得到压缩B帧。
在一种可能的实现方式中,量化子模块,具体用于:
确定编码特征对应的尺度信息,其中,编码特征是第一编码特征或第二编码特征;
根据预设码率控制系数,确定条件缩放因子和量化基数;
根据编码特征对应的尺度信息、条件缩放因子和量化基数,确定编码特征对应的目标量化参数;
根据编码特征对应的目标量化参数,对编码特征进行缩放,得到量化编码特征,其中,量化编码特征是量化第一编码特征或量化第二编码特征。
图6示出根据本公开实施例的一种视频解压缩装置的框图。视频解压缩装置应用于视频解压缩端。如图6所示,视频解压缩装置60包括:
获取模块61,用于获取目标视频帧对应的压缩B帧;
B帧解压缩模块62,用于利用预设码率控制系数,对压缩B帧进行解压缩,得到目标视频帧对应的光流预测残差和B帧预测残差;
视频帧重建模块63,用于根据光流预测残差、B帧预测残差、以及目标视频帧对应的向后参考帧和向前参考帧,确定目标视频帧对应的重建帧,其中,向后参考帧是第一视频帧对应的重建帧,向前参考帧是第二视频帧对应的重建帧,第一视频帧、目标视频帧和第二视频帧是目标视频中按时序前后排列的原始视频帧。
在一些实施例中,本公开实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
本公开实施例还提出一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述方法。计算机可读存储介质可以是易失性或非易失性计算机可读存储介质。
本公开实施例还提出一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为调用所述存储器存储的指令,以执行上述方法。
本公开实施例还提供了一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备的处理器中运行时,所述电子设备中的处理器执行上述方法。
电子设备可以被提供为终端、服务器或其它形态的设备。
图7示出根据本公开实施例的一种电子设备的框图。例如,电子设备700可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等终端。
参照图7,电子设备700可以包括以下一个或多个组件:处理组件702,存储器704,电源组件706,多媒体组件708,音频组件710,输入/输出(I/O)的接口712,传感器组件714,以及通信组件716。
处理组件702通常控制电子设备700的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件702可以包括一个或多个处理器720来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件702可以包括一个或多个模块,便于处理组件702和其他组件之间的交互。例如,处理组件702可以包括多媒体模块,以方便多媒体组件708和处理组件702之间的交互。
存储器704被配置为存储各种类型的数据以支持在电子设备700的操作。这些数据的示例包括用于在电子设备700上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器704可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件706为电子设备700的各种组件提供电力。电源组件706可以包括电源管理系统,一个或多个电源,及其他与为电子设备700生成、管理和分配电力相关联的组件。
多媒体组件708包括在所述电子设备700和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件708包括一个前置摄像头和/或后置摄像头。当电子设备700处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件710被配置为输出和/或输入音频信号。例如,音频组件710包括一个麦克风(MIC),当电子设备700处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器704或经由通信组件716发送。在一些实施例中,音频组件710还包括一个扬声器,用于输出音频信号。
I/O接口712为处理组件702和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件714包括一个或多个传感器,用于为电子设备700提供各个方面的状态评估。例如,传感器组件714可以检测到电子设备700的打开/关闭状态,组件的相对定位,例如所述组件为电子设备700的显示器和小键盘,传感器组件714还可以检测电子设备700或电子设备700一个组件的位置改变,用户与电子设备700接触的存在或不存在,电子设备700方位或加速/减速和电子设备700的温度变化。传感器组件714可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如互补金属氧化物半导体(CMOS)或电荷耦合装置(CCD)图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件714还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件716被配置为便于电子设备700和其他设备之间有线或无线方式的通信。电子设备700可以接入基于通信标准的无线网络,如无线网络(WiFi),第二代移动通信技术(2G)或第三代移动通信技术(3G),或它们的组合。在一个示例性实施例中,通信组件716经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件716还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,电子设备700可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种非易失性计算机可读存储介质,例如包括计算机程序指令的存储器704,上述计算机程序指令可由电子设备700的处理器720执行以完成上述方法。
本公开涉及增强现实领域,通过获取现实环境中的目标对象的图像信息,进而借助各类视觉相关算法实现对目标对象的相关特征、状态及属性进行检测或识别处理,从而得到与具体应用匹配的虚拟与现实相结合的AR效果。示例性的,目标对象可涉及与人体相关的脸部、肢体、手势、动作等,或者与物体相关的标识物、标志物,或者与场馆或场所相关的沙盘、展示区域或展示物品等。视觉相关算法可涉及视觉定位、SLAM、三维重建、图像注册、背景分割、对象的关键点提取及跟踪、对象的位姿或深度检测等。具体应用不仅可以涉及跟真实场景或物品相关的导览、导航、讲解、重建、虚拟效果叠加展示等交互场景,还可以涉及与人相关的特效处理,比如妆容美化、肢体美化、特效展示、虚拟模型展示等交互场景。可通过卷积神经网络,实现对目标对象的相关特征、状态及属性进行检测或识别处理。上述卷积神经网络是基于深度学习框架进行模型训练而得到的网络模型。
图8示出根据本公开实施例的一种电子设备的框图。例如,电子设备1900可以被提供为一服务器。参照图8,电子设备1900包括处理组件1922,其进一步包括一个或多个处理器,以及由存储器1932所代表的存储器资源,用于存储可由处理组件1922的执行的指令,例如应用程序。存储器1932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1922被配置为执行指令,以执行上述方法。
电子设备1900还可以包括一个电源组件1926被配置为执行电子设备1900的电源管理,一个有线或无线网络接口1950被配置为将电子设备1900连接到网络,和一个输入输出(I/O)接口1958。电子设备1900可以操作基于存储在存储器1932的操作系统,例如微软服务器操作系统(Windows ServerTM),苹果公司推出的基于图形用户界面操作系统(Mac OSXTM),多用户多进程的计算机操作系统(UnixTM),自由和开放原代码的类Unix操作系统(LinuxTM),开放原代码的类Unix操作系统(FreeBSDTM)或类似。
在示例性实施例中,还提供了一种非易失性计算机可读存储介质,例如包括计算机程序指令的存储器1932,上述计算机程序指令可由电子设备1900的处理组件1922执行以完成上述方法。
本公开可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本公开的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是(但不限于)电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (13)

1.一种视频压缩方法,其特征在于,所述方法应用于视频压缩端,所述方法包括:
根据目标视频帧对应的向后参考帧和向前参考帧,确定所述目标视频帧对应的光流预测残差和B帧预测残差,其中,所述向后参考帧是第一视频帧对应的重建帧,所述向前参考帧是第二视频帧对应的重建帧,所述第一视频帧、所述目标视频帧和所述第二视频帧是目标视频中按时序前后排列的原始视频帧;
利用预设码率控制系数,对所述光流预测残差和所述B帧预测残差进行压缩,得到所述目标视频帧对应的压缩B帧。
2.根据权利要求1所述的方法,其特征在于,所述根据目标视频帧对应的向后参考帧和向前参考帧,确定所述目标视频帧对应的光流预测残差,包括:
根据所述目标视频帧、所述向后参考帧和所述向前参考帧,确定第一向前光流、第二向前光流、第一向后光流和第二向后光流;
利用插值法对所述第一向前光流和所述第一向后光流进行光流预测,得到向前预测光流和向后预测光流;
根据所述第二向前光流和所述向前预测光流确定向前光流预测残差,以及根据所述第二向后光流和所述向后预测光流,确定向后光流预测残差。
3.根据权利要求2所述的方法,其特征在于,所述确定所述目标视频帧对应的B帧预测残差,包括:
对所述向前光流预测残差和所述向后光流预测残差进行编码,得到所述目标视频帧对应的第一编码特征;
根据所述第一编码特征、所述向后参考帧和所述向前参考帧,确定所述B帧预测残差。
4.根据权利要求3所述的方法,其特征在于,所述根据所述第一编码特征、所述向后参考帧和所述向前参考帧,确定所述B帧预测残差,包括:
对所述第一编码特征进行解码,得到向前重建光流预测残差和向后重建光流预测残差;
根据所述向前重建光流预测残差和所述向前预测光流确定向前重建光流,以及根据所述向后重建光流预测残差和所述向后预测光流,确定向后重建光流;
根据所述向后参考帧、所述向前参考帧、所述向前重建光流和所述向后重建光流,确定所述目标视频帧对应的预测B帧;
根据所述目标视频帧和所述预测B帧,确定所述B帧预测残差。
5.根据权利要求4所述的方法,其特征在于,所述根据所述向后参考帧、所述向前参考帧、所述向前重建光流和所述向后重建光流,确定所述目标视频帧对应的预测B帧,包括:
根据所述向前重建光流对所述向后参考帧进行空间变换,得到第一变换视频帧;
根据所述向后重建光流对所述向前参考帧进行空间变换,得到第二变换视频帧;
根据所述第一变换视频帧和所述第二变换视频帧,生成所述预测B帧。
6.根据权利要求5所述的方法,其特征在于,所述根据所述第一变换视频帧和所述第二变换视频帧,生成所述预测B帧,包括:
根据所述向后参考帧对所述第一变换视频帧进行优化,得到第一优化视频帧;
根据所述向前参考帧对所述第二变换视频帧进行优化,得到第二优化视频帧;
根据所述第一优化视频帧和所述第二优化视频帧,生成所述预测B帧。
7.根据权利要求1至6中任意一项所述的方法,其特征在于,所述利用预设码率控制系数,对所述光流预测残差和所述B帧预测残差进行压缩,得到所述目标视频帧对应的压缩B帧,包括:
对所述光流预测残差进行编码,得到所述目标视频帧对应的第一编码特征;
对所述B帧预测残差进行编码,得到所述目标视频帧对应的第二编码特征;
利用所述预设码率控制系数,对所述第一编码特征和所述第二编码特征进行量化,得到第一量化编码特征和第二量化编码特征;
对所述第一量化编码特征和所述第二量化编码特征进行熵编码,得到所述压缩B帧。
8.根据权利要求7所述的方法,其特征在于,所述利用所述预设码率控制系数,对所述第一编码特征和所述第二编码特征进行量化,得到第一量化编码特征和第二量化编码特征,包括:
确定编码特征对应的尺度信息,其中,所述编码特征是所述第一编码特征或所述第二编码特征;
根据所述预设码率控制系数,确定条件缩放因子和量化基数;
根据所述编码特征对应的尺度信息、所述条件缩放因子和所述量化基数,确定所述编码特征对应的目标量化参数;
根据所述编码特征对应的目标量化参数,对所述编码特征进行缩放,得到量化编码特征,其中,所述量化编码特征是所述量化第一编码特征或所述量化第二编码特征。
9.一种视频解压缩方法,其特征在于,所述视频解压缩方法应用于视频解压缩端,所述视频解压缩方法包括:
获取目标视频帧对应的压缩B帧;
利用预设码率控制系数,对所述压缩B帧进行解压缩,得到所述目标视频帧对应的光流预测残差和B帧预测残差;
根据所述光流预测残差、所述B帧预测残差、以及所述目标视频帧对应的向后参考帧和向前参考帧,确定所述目标视频帧对应的重建帧,其中,所述向后参考帧是第一视频帧对应的重建帧,所述向前参考帧是第二视频帧对应的重建帧,所述第一视频帧、所述目标视频帧和所述第二视频帧是目标视频中按时序前后排列的原始视频帧。
10.一种视频压缩装置,其特征在于,所述视频压缩装置应用于视频压缩端,所述视频压缩装置包括:
残差预测模块,用于根据目标视频帧对应的向后参考帧和向前参考帧,确定所述目标视频帧对应的光流预测残差和B帧预测残差,其中,所述向后参考帧是第一视频帧对应的重建帧,所述向前参考帧是第二视频帧对应的重建帧,所述第一视频帧、所述目标视频帧和所述第二视频帧是目标视频中按时序前后排列的原始视频帧;
B帧压缩模块,用于利用预设码率控制系数,对所述光流预测残差和所述B帧预测残差进行压缩,得到所述目标视频帧对应的压缩B帧。
11.一种视频解压缩装置,其特征在于,所述视频解压缩装置应用于视频解压缩端,所述视频解压缩装置包括:
获取模块,用于获取目标视频帧对应的压缩B帧;
B帧解压缩模块,用于利用预设码率控制系数,对所述压缩B帧进行解压缩,得到所述目标视频帧对应的光流预测残差和B帧预测残差;
视频帧重建模块,用于根据所述光流预测残差、所述B帧预测残差、以及所述目标视频帧对应的向后参考帧和向前参考帧,确定所述目标视频帧对应的重建帧,其中,所述向后参考帧是第一视频帧对应的重建帧,所述向前参考帧是第二视频帧对应的重建帧,所述第一视频帧、所述目标视频帧和所述第二视频帧是目标视频中按时序前后排列的原始视频帧。
12.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为调用所述存储器存储的指令,以执行权利要求1至9中任意一项所述的方法。
13.一种计算机可读存储介质,其上存储有计算机程序指令,其特征在于,所述计算机程序指令被处理器执行时实现权利要求1至9中任意一项所述的方法。
CN202111006889.0A 2021-08-30 2021-08-30 视频压缩、解压缩方法及装置、电子设备和存储介质 Active CN113613003B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111006889.0A CN113613003B (zh) 2021-08-30 2021-08-30 视频压缩、解压缩方法及装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111006889.0A CN113613003B (zh) 2021-08-30 2021-08-30 视频压缩、解压缩方法及装置、电子设备和存储介质

Publications (2)

Publication Number Publication Date
CN113613003A true CN113613003A (zh) 2021-11-05
CN113613003B CN113613003B (zh) 2024-03-22

Family

ID=78309746

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111006889.0A Active CN113613003B (zh) 2021-08-30 2021-08-30 视频压缩、解压缩方法及装置、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN113613003B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114898577A (zh) * 2022-07-13 2022-08-12 环球数科集团有限公司 一种用于高峰期通路管理的道路智能管理系统与方法
WO2024015664A1 (en) * 2022-07-11 2024-01-18 Qualcomm Incorporated Video coding using optical flow and residual predictors

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107360426A (zh) * 2017-07-13 2017-11-17 福州大学 一种基于压缩感知的视频序列重构方法
CN107925775A (zh) * 2015-09-02 2018-04-17 联发科技股份有限公司 基于双向预测光流技术的视频编解码的运动补偿方法及装置
US20190068991A1 (en) * 2017-08-22 2019-02-28 Google Llc Co-Located Reference Frame Interpolation Using Optical Flow Estimation
WO2019040134A1 (en) * 2017-08-22 2019-02-28 Google Llc OPTICAL FLOW ESTIMATING FOR MOTION COMPENSATION PREDICTION IN VIDEO CODING
CN111083500A (zh) * 2019-12-31 2020-04-28 合肥图鸭信息科技有限公司 一种视频帧重构方法、装置及终端设备
CN111127522A (zh) * 2019-12-30 2020-05-08 亮风台(上海)信息科技有限公司 基于单目相机的深度光流预测方法、装置、设备及介质
WO2020184847A1 (ko) * 2019-03-12 2020-09-17 엘지전자 주식회사 Dmvr 및 bdof 기반의 인터 예측 방법 및 장치
CN112637604A (zh) * 2020-12-15 2021-04-09 深圳大学 低时延视频压缩方法及装置
CN112767441A (zh) * 2021-01-08 2021-05-07 南昌航空大学 一种基于残差场和位移场的图像光流优化方法及系统
CN112866697A (zh) * 2020-12-31 2021-05-28 杭州海康威视数字技术股份有限公司 视频图像编解码方法、装置、电子设备及存储介质

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107925775A (zh) * 2015-09-02 2018-04-17 联发科技股份有限公司 基于双向预测光流技术的视频编解码的运动补偿方法及装置
CN107360426A (zh) * 2017-07-13 2017-11-17 福州大学 一种基于压缩感知的视频序列重构方法
US20190068991A1 (en) * 2017-08-22 2019-02-28 Google Llc Co-Located Reference Frame Interpolation Using Optical Flow Estimation
WO2019040134A1 (en) * 2017-08-22 2019-02-28 Google Llc OPTICAL FLOW ESTIMATING FOR MOTION COMPENSATION PREDICTION IN VIDEO CODING
WO2020184847A1 (ko) * 2019-03-12 2020-09-17 엘지전자 주식회사 Dmvr 및 bdof 기반의 인터 예측 방법 및 장치
CN111127522A (zh) * 2019-12-30 2020-05-08 亮风台(上海)信息科技有限公司 基于单目相机的深度光流预测方法、装置、设备及介质
CN111083500A (zh) * 2019-12-31 2020-04-28 合肥图鸭信息科技有限公司 一种视频帧重构方法、装置及终端设备
CN112637604A (zh) * 2020-12-15 2021-04-09 深圳大学 低时延视频压缩方法及装置
CN112866697A (zh) * 2020-12-31 2021-05-28 杭州海康威视数字技术股份有限公司 视频图像编解码方法、装置、电子设备及存储介质
CN112767441A (zh) * 2021-01-08 2021-05-07 南昌航空大学 一种基于残差场和位移场的图像光流优化方法及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
QIYUAN WU: "HEVC Double Compression Detection with Non-Aligned GOP Structures Based on a Fusion Feature with Optical Flow and Prediction Units", 《2019 12TH INTERNATIONAL CONGRESS ON IMAGE AND SIGNAL PROCESSING, BIOMEDICAL ENGINEERING AND INFORMATICS (CISP-BMEI)》 *
毛珏: "视频编码中帧间预测技术研究" *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024015664A1 (en) * 2022-07-11 2024-01-18 Qualcomm Incorporated Video coding using optical flow and residual predictors
CN114898577A (zh) * 2022-07-13 2022-08-12 环球数科集团有限公司 一种用于高峰期通路管理的道路智能管理系统与方法

Also Published As

Publication number Publication date
CN113613003B (zh) 2024-03-22

Similar Documents

Publication Publication Date Title
CN111540000B (zh) 场景深度和相机运动预测方法及装置、电子设备和介质
CN113613003B (zh) 视频压缩、解压缩方法及装置、电子设备和存储介质
CN109118430B (zh) 超分辨率图像重建方法及装置、电子设备及存储介质
CN109840917B (zh) 图像处理方法及装置、网络训练方法及装置
CN111462238B (zh) 姿态估计优化方法、装置及存储介质
CN108881952B (zh) 视频生成方法及装置、电子设备和存储介质
WO2023165082A1 (zh) 图像预览方法、装置、电子设备、存储介质及计算机程序及其产品
CN112785672B (zh) 图像处理方法及装置、电子设备和存储介质
CN114363615B (zh) 数据处理方法及装置、电子设备和存储介质
CN110675355B (zh) 图像重建方法及装置、电子设备和存储介质
WO2024114475A1 (zh) 一种视频转码方法及装置、电子设备、计算机可读存储介质和计算机程序产品
CN109120929B (zh) 一种视频编码、解码方法、装置、电子设备及系统
CN111369482A (zh) 图像处理方法及装置、电子设备和存储介质
CN110929616A (zh) 一种人手识别方法、装置、电子设备和存储介质
CN110611820A (zh) 视频编码方法、装置、电子设备及存储介质
CN113747242A (zh) 图像处理方法、装置、电子设备及存储介质
CN113660531A (zh) 视频处理方法及装置、电子设备和存储介质
CN113012052B (zh) 图像处理方法及装置、电子设备和存储介质
CN109068138B (zh) 视频图像的处理方法及装置、电子设备和存储介质
CN104429045B (zh) 用于WiDi云模式的方法和装置
CN114554226A (zh) 图像处理方法及装置、电子设备和存储介质
WO2023133888A1 (zh) 图像处理方法、装置、遥控设备、系统及存储介质
JP2021526338A (ja) 動きベクトル取得方法および装置
JP2022541709A (ja) 姿勢検出およびビデオ処理方法、装置、電子機器並びに記憶媒体
US20230105436A1 (en) Generative adversarial network for video compression

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant