CN116962694A - 视频编码方法、装置、电子设备和存储介质 - Google Patents
视频编码方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN116962694A CN116962694A CN202310907722.4A CN202310907722A CN116962694A CN 116962694 A CN116962694 A CN 116962694A CN 202310907722 A CN202310907722 A CN 202310907722A CN 116962694 A CN116962694 A CN 116962694A
- Authority
- CN
- China
- Prior art keywords
- video frame
- video
- quantization parameter
- candidate
- encoded
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 45
- 238000013139 quantization Methods 0.000 claims abstract description 305
- 230000008859 change Effects 0.000 claims description 15
- 238000012545 processing Methods 0.000 claims description 8
- 230000006835 compression Effects 0.000 description 13
- 238000007906 compression Methods 0.000 description 13
- 238000005457 optimization Methods 0.000 description 12
- 238000013441 quality evaluation Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000001186 cumulative effect Effects 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 230000011218 segmentation Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/109—Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/177—Methods 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 a group of pictures [GOP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本公开关于一种视频编码方法、装置、电子设备和存储介质。所述方法包括:确定视频帧序列中待编码的前向预测视频帧,所述待编码的前向预测视频帧为所述视频帧序列中多个前向预测视频帧的部分;获取所述待编码的前向预测视频帧的多个候选量化参数,并根据所述多个候选量化参数对所述待编码的前向预测视频帧进行编码,得到所述视频帧序列分别在各个所述候选量化参数下的视频编码效率;基于各个所述候选量化参数对应的视频编码效率,从多个所述候选量化参数中确定目标量化参数,并根据所述目标量化参数对所述待编码的前向预测视频帧进行编码。本公开可以有效提高视频的编码效率。
Description
技术领域
本公开涉及视频编码技术领域,尤其涉及一种视频编码方法、装置、电子设备和存储介质。
背景技术
随着计算机技术的发展和视频质量要求的不断提升,实现视频数据的高效传输已愈发受到关注。在进行视频传输的过程中需要对视频进行压缩编码,目的是在保证视频质量的前提下尽量降低视频编码的码率,减少被传输视频的体积。
在相关技术中,在对视频帧序列中的前向预测视频帧(predictive-frame,也称为P帧)进行编码时,可以根据视频帧序列中已编码过的视频帧的图像内容,确定出每个前向预测视频帧的量化参数以及对应的码率,进行视频编码。
然而,实际应用中,在通过上述方式进行编码时,编码得到的视频失真较为严重,存在视频编码效率低的问题。
发明内容
本公开提供一种视频编码方法、装置、电子设备、存储介质和计算机程序产品,以至少解决相关技术中视频编码效率低的问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种视频编码方法,包括:
确定视频帧序列中待编码的前向预测视频帧,所述待编码的前向预测视频帧为所述视频帧序列中多个前向预测视频帧的部分;
获取所述待编码的前向预测视频帧的多个候选量化参数,并根据所述多个候选量化参数对所述待编码的前向预测视频帧进行编码,得到所述视频帧序列分别在各个所述候选量化参数下的视频编码效率;
基于各个所述候选量化参数对应的视频编码效率,从多个所述候选量化参数中确定目标量化参数,并根据所述目标量化参数重新对所述待编码的前向预测视频帧进行编码。
在其中一个实施例中,所述获取所述待编码的前向预测视频帧的多个候选量化参数,包括:
获取量化参数调节因子的多个候选的调整参数;所述量化参数调节因子用于调整量化参数;
基于每个候选的所述调整参数,调整所述待编码的前向预测视频帧的量化参数调节因子,得到多个调整后的量化参数调节因子;
确定每个调整后的每个量化参数调节因子对应的量化参数,得到多个候选量化参数。
在其中一个实施例中,所述基于每个候选的所述调整参数,调整所述待编码的前向预测视频帧的量化参数调节因子,得到多个调整后的量化参数调节因子,包括:
获取所述待编码的前向预测视频帧的初始量化参数调节因子;所述初始量化参数调节因子基于所述待编码的前向预测视频帧的内容,以及所述待编码的前向预测视频帧之前的视频帧的内容确定;
基于每个候选的所述调整参数和所述初始量化参数调节因子的乘积,确定每个候选的所述调整参数对应的调整后的量化参数调节因子,得到多个调整后的量化参数调节因子。
在其中一个实施例中,所述获取多个候选的调整参数,包括:
在预设的参数范围内,获取起始调整参数;
根据预设的参数调增步长,对所述起始调整参数进行调增处理,得到所述参数范围内的多个调整参数,对应作为所述多个候选的调整参数。
在其中一个实施例中,所述根据所述多个候选量化参数对所述待编码的前向预测视频帧进行编码,得到所述视频帧序列分别在各个所述候选量化参数下的视频编码效率,包括:
针对每个候选量化参数,基于所述候选量化参数对所述待编码的前向预测视频帧进行编码,并基于预设量化参数对所述视频帧序列中的其他前向预测视频帧进行编码,得到所述视频帧序列的当前编码结果;所述其他前向预测视频帧为所述视频帧序列中除所述待编码的前向预测视频帧以外的前向预测视频帧;
获取参考编码结果;所述参考编码结果是基于所述预设量化参数对所述视频帧序列中的各前向预测视频帧进行编码时得到的编码结果;
根据所述参考编码结果和所述当前编码结果的比对结果,得到所述视频帧序列在所述候选量化参数下的视频编码效率。
在其中一个实施例中,所述根据所述参考编码结果和所述当前编码结果的比对结果,得到所述视频帧序列在所述候选量化参数下的视频编码效率,包括:
基于所述当前编码结果和所述参考编码结果,确定所述视频帧序列的码率变化信息,并基于所述码率变化信息,得到所述候选量化参数下的视频编码效率。
在其中一个实施例中,所述确定视频帧序列中待编码的前向预测视频帧,包括:
按照预设的视频帧间隔对视频帧序列进行分割,得到所述视频帧序列的多个视频帧图像组;
根据所述多个视频帧图像组的次序,将每个视频帧图像组中的各个前向预测视频帧,依次确定为待编码的前向预测视频帧。
在其中一个实施例中,所述基于各个所述候选量化参数对应的视频编码效率,从多个所述候选量化参数中,确定出目标量化参数,包括:
从各个所述候选量化参数下的视频编码效率中,确定出大于阈值的编码效率或最大的N个编码效率,作为目标编码效率;所述N为正整数;
将所述目标视频编码效率对应的候选量化参数,确定为目标量化参数。
根据本公开实施例的第二方面,提供一种视频编码装置,包括:
预测帧获取单元,被配置为执行确定视频帧序列中待编码的前向预测视频帧,所述待编码的前向预测视频帧为所述视频帧序列中多个前向预测视频帧的部分;
视频编码效率获取单元,被配置为执行获取所述待编码的前向预测视频帧的多个候选量化参数,并根据所述多个候选量化参数对所述待编码的前向预测视频帧进行编码,得到所述视频帧序列分别在各个所述候选量化参数下的视频编码效率;
目标量化参数确定单元,被配置为执行基于各个所述候选量化参数对应的视频编码效率,从多个所述候选量化参数中确定目标量化参数,并根据所述目标量化参数重新对所述待编码的前向预测视频帧进行编码。
根据本公开实施例的第三方面,提供一种电子设备,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如上述任一项所述的视频编码方法。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如上述任一项所述的视频编码方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,所述计算机程序产品中包括指令,所述指令被电子设备的处理器执行时,使得所述电子设备能够执行如上述任一项所述的视频编码方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
本公开中,一方面可以分别利用每个候选量化参数对待编码的前向视频帧进行预编码,根据视频编码效率确定出目标量化参数,实现前向预测视频帧量化参数的再优化,得到能够取得更佳视频编码效率的目标量化参数;另一方面,在优化时,每次可以仅对多个前向预测视频帧的部分进行量化参数配置,实现不同位置前向预测视频帧量化参数的差异化优化,提高编码器的压缩效率和压缩性能。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种视频编码方法的应用环境图。
图2是根据一示例性实施例示出的一种视频编码方法的流程图。
图3是根据一示例性实施例示出的一种获取候选量化参数的步骤的流程图。
图4是根据一示例性实施例示出的一种确定视频编码效率的步骤的流程图。
图5是根据一示例性实施例示出的一种确定前向预测视频帧的步骤的流程图。
图6是根据一示例性实施例示出的一种视频编码装置的框图。
图7是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
还需要说明的是,本公开所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于展示的数据、分析的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本公开所提供的视频编码方法,可以应用于如图1所示的应用环境中,该应用环境中包括终端和服务器。具体而言,终端可以通过网络与服务器进行通信,服务器可以对视频帧进行编码,并通过网络将编码后的视频帧传输到终端。在本公开中,对于待编码的视频帧序列,服务器可以确定视频帧序列中待编码的前向预测视频帧,该待编码的前向预测视频帧为视频帧序列中多个前向预测视频帧的部分;进而针对待编码的前向预测视频帧,可以获取待编码的前向预测视频帧的多个候选量化参数,并根据多个候选量化参数对待编码的前向预测视频帧进行编码,得到视频帧序列分别在各个候选量化参数下的视频编码效率,然后,可以基于各个候选量化参数对应的视频编码效率,从多个候选量化参数中,确定出目标量化参数,并根据目标量化参数重新对待编码的前向预测视频帧进行编码。
其中,终端可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能电视、智能车载设备等,便携式可穿戴设备可为智能手表、智能手环、头戴设备等。
服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现;服务器可以具有对应的数据存储系统,该数据存储系统可以存储服务器需要处理的数据(例如待编码的视频数据),实际应用中,数据存储系统可以集成在服务器上,也可以放在云上或其他网络服务器上。
图2是根据一示例性实施例示出的一种视频编码方法的流程图,如图2所示,以视频编码方法用于服务器中进行说明,包括以下步骤。
在步骤S210中,确定视频帧序列中待编码的前向预测视频帧,待编码的前向预测视频帧为视频帧序列中多个前向预测视频帧的部分。
其中,视频帧序列可以是待编码视频对应的多个连续的视频帧,该视频帧序列可以是待编码视频的部分视频帧,也可以是待编码视频的所有视频帧。
前向预测视频帧也可以称为前向预测编码图像帧(Predictive-coded Picture)、P帧或预测帧,是通过将视频帧序列(也可以称为图像序列)中前面已编码帧的时间冗余信息充分去除来压缩传输数据量的编码图像。换句话说,前向预测视频帧可以理解为是差别帧,前向预测视频帧的视频帧内容可以表示该前向预测视频帧与在此之前的一个I帧(帧内编码图像帧,Intra-coded picture)或一个P帧之间的差别。在对编码后的前向预测视频帧进行解码时,可以利用之前缓存的已解码的视频帧叠加上该前向预测视频帧的视频帧内容,生成最终画面。
具体实现中,在对视频帧进行编码时,可以获取被编码视频的视频帧序列。在一种可选的实施例中,当视频帧序列为待编码视频的部分视频帧时,可以将待编码视频的各个视频帧划分为多个图像组(Group Of Pictures,GOP),每个图像群组可以作为一个视频帧序列,具体而言,可以将待编码视频的各个视频帧划分为I帧、P帧和B帧(双向预测编码图像帧,Bidirectionally-predicted picture),在每两个I帧之间可以包括多个P帧和多个B帧,在划分图像组时,可以将一个I帧到下一个I帧之前的图像,划分为一个图像组,由此可以得到待编码视频的一个或多个图像组。
在确定待编码视频的视频帧序列后,可以将视频帧序列中的部分前向预测视频帧作为待编码的前向预测视频帧,换句话说,在对视频帧序列中的多个前向预测视频帧进行编码时可以分别编码。具体而言,在视频帧序列包括多个前向预测视频帧的情况下,在一种实施例中,可以将多个前向预测视频帧中的一个前向预测视频帧作为当前确定出的多个前向预测视频帧的的部分,依次对每个前向预测视频帧进行处理;在另一种实施例中,由于多个相邻的前向视频帧之间存在关联,可以将多个前向预测视频帧中连续的多个前向预测视频帧,作为当前确定出的多个前向预测视频帧的的部分,其中,连续的多个前向预测视频帧N(整数)的取值范围可以为[2,M),M为视频帧序列中的前线预测视频帧的总数。
在步骤S220中,获取待编码的前向预测视频帧的多个候选量化参数,并根据多个候选量化参数对待编码的前向预测视频帧进行编码,得到视频帧序列分别在各个候选量化参数下的视频编码效率。
作为一示例,视频编码效率可以表征在相同视频质量情况下使用的码率,或者表征在相同码率下视频的质量。
在确定待编码的前向预测视频帧后,可以获取多个候选量化参数,针对每个候选量化参数,可以根据该候选量化参数对该待编码的前向预测视频帧进行编码,得到视频帧序列在使用该候选量化参数对其中的前向预测视频帧进行编码时的视频编码效率,由此确定出视频帧序列分别在各候选量化参数下的视频编码效率。
在步骤S230中,基于各个候选量化参数对应的视频编码效率,从多个候选量化参数中确定目标量化参数,并根据目标量化参数重新对待编码的前向预测视频帧进行编码。
在得到各个候选量化参数对应的视频编码效率后,可以比较多个视频编码效率,并根据多个视频编码效率的比较结果,从多个候选量化参数中确定出满足编码效率筛选条件的目标量化参数,然后可以利用目标量化参数对带编码的前向预测视频帧进行编码。
为便于理解本公开,以下对相关编码技术、前向预测视频帧的编码方式以及本公开的相关技术构思进行介绍。
在进行视频编码过程中,可以按照预设的视频压缩质量评价指标对编码后的视频进行评价,其中,视频压缩质量评价指标可以分为主观质量评价指标和客观质量评价指标:主观质量评价指标是由观看者根据主观感受来给出视频质量的好坏,这种评价结果符合人的视觉感受;客观质量评价指标是通过预设公式和编码后视频的参数来量化视频质量的好坏,例如平均误差和(Sum of Squared Error,SSE)、均方误差(Mean Squared Error,MSE)以及峰值信噪比(Peak Signal to Noise Ratio,PSNR)等。然后可以结合一个或多个视频压缩质量评价指标,确定出编码后的视频的失真(Distortion)情况。
进一步地,可以分别使用不同的码率(Rate)对视频(或视频中的至少一个视频画面)进行编码,得到在不同码率(R)下视频的失真(D),码率和失真之间的映射关系可以通过一条光滑的下凸单调曲线来刻画,该曲线也称为率失真曲线。后续进行视频编码时,可以根据率失真曲线拟合出率失真函数D(R),并确定出最优点:在限定失真的情况下找到最小码率点,或者,在限定码率的情况下找到最小失真点。
在确定最优点时,可以通过率失真优化(Rate–distortion optimization,RDO)来寻找,在该方式中预先构建率失真优化目标函数“J=lambda*R+D”,其中R为设置的编码模式下耗费的码率,D为视频的失真,可以用绝对值差和(Sum of Absolute Differences,SAD)或变换后绝对值差和(Sum of Absolute Transformed Differences,SATD)确定,J为率失真代价。根据相关算法,在率失真曲线上,斜率为-lambda时可以取得最优点,实际编码时可以通过计算不同编码模式的率失真代价J,找到J最小的一种模式。相关技术利用率失真优化算法对视频帧序列进行编码时,可以根据视频内容来自适应调整视频帧序列中每一帧的lambda。
本公开发明人在进行视频压缩的过程中发现,整个视频帧序列的率失真代价可以如下式(1)所示:
J=(DP1+ DP2 + .. DPn+ DB1+ DB2 + .. DBm)+ lambda(RP1+ RP2 +…RPn + RB1+ RB2+…RBm) (1)
其中,DN表示视频帧序列中各个视频帧的失真,“DP1+DP2+..DPn+DB1+DB2+..DBm”为视频帧序列中各个视频帧的总失真,RN表示视频帧序列中各个视频帧的码率,“RP1+RP2+…RPn+RB1+RB2+…RBm”为视频帧序列中各个视频帧的总码率。若对视频帧序列中的各个视频帧进行I帧、B帧和P帧分类,确定出视频帧序列中存在n个P帧,m个B帧,则DPn表示视频帧序列中第n个P帧的失真,DBn表示视频帧序列中第m个B帧的失真,RPn表示视频帧序列中第n个P帧的码率,RBm表示视频帧序列中第m个B帧的失真。
进一步对式1中的RP1进行求导,可以得到下式(2):
dJ = (dDP1 + dDP2 + .. dDPn + dDB1 + dDB2 + .. DdBm) /dRP1 + lambda (2)
其中,dRP1表示第一个P帧分配码率变化,视频帧序列的失真的变化表示为“dDP1+dDP2+..dDPn+dDB1+dDB2+..dDPm”,dDPn表示为视频帧序列中第n个P帧失真的变化值,dDBm表示为视频帧序列中第m个B帧失真的变化值。
在dJ=0情况下,视频帧序列的lambda如下式(3)所示:
lambda = -(dDP1 + dDP2 + .. dDPn + dDB1 + dDB2 + .. dDPm) / d RP1 (3)
相应地,第i个P帧的lambda_pi可以如式(4)所示:
lambda_pi = -dDPi/dRPi (4)
其中,dDPi表示为第i个P帧失真的变化值,dRPi表示为第i个P帧码率的变化值。
结合式(3)和式(4),可以确定出第i个P帧与视频帧序列的lambda之间的关系如式(5)所示:
lambda_pi=lambda*wi
其中,wi表示第i个P帧失真变化与整个视频帧序列失真变化的比值,如式(6)所示:
wi=dDPi/(dDPi + dDPi+1 + .. dDPn + dDBj + dDBj+1 + .. dDPm) (6)
而实际中,第i个P帧会影响到第i个P帧以后的P帧以及B帧的编码,因此,视频帧序列中越靠前的P帧,对整个视频帧序列的失真影响越大,wi越小。可以理解,本公开发明人在实践过程中发现,在视频帧序列中,不同位置的P帧对整个视频帧序列失真的影响程度存在差异,而相关技术中对于不同位置的P帧,是利用相同的预设公式计算得到量化参数后直接进行编码,难以获取到理想的编码效果。而本公开中,一方面,可以为待编码的前向预测视频帧提供多个候选量化参数,分别利用每个候选量化参数对待编码的前向视频帧进行预编码,根据视频编码效率确定出目标量化参数,能够重新调整前向预测视频帧的量化参数,得到能够取得更佳视频编码效率的优化后的目标量化参数;另一方面,在优化量化参数时,每次可以仅对多个前向预测视频帧的部分进行量化参数配置,避免根据统一的目标量化参数对所有前向预测视频帧进行处理,实现不同位置前向预测视频帧的差异化优化,提高编码器的压缩效率和压缩性能。
上述视频编码方法中,可以确定视频帧序列中待编码的前向预测视频帧,待编码的前向预测视频帧为视频帧序列中多个前向预测视频帧的部分;进而可以获取待编码的前向预测视频帧的多个候选量化参数,并根据多个候选量化参数对待编码的前向预测视频帧进行编码,得到视频帧序列分别在各个候选量化参数下的视频编码效率,基于各个候选量化参数对应的视频编码效率,从多个候选量化参数中确定目标量化参数,并根据目标量化参数重新对待编码的前向预测视频帧进行编码。本公开中,一方面可以分别利用每个候选量化参数对待编码的前向视频帧进行预编码,根据视频编码效率确定出目标量化参数,实现前向预测视频帧量化参数的再优化,得到能够取得更佳视频编码效率的目标量化参数;另一方面,在优化时,每次可以仅对多个前向预测视频帧的部分进行量化参数配置,实现不同位置前向预测视频帧量化参数的差异化优化,提高编码器的压缩效率和压缩性能。
在一示例性实施例中,如图3所示,在步骤S220中,获取待编码的前向预测视频帧的多个候选量化参数,可以包括如下步骤:
在步骤S310中,获取量化参数调节因子的多个候选的调整参数;量化参数调节因子用于调整量化参数。
具体地,量化参数可以通过量化参数调节因子进行调整,量化参数与量化参数调节因子之间可以存在一一对应的映射关系。在一示例中,量化参数QP与量化参数调节因子之间的映射关系可以如下式(7)所示:
QP(i) = 12.0 + 6.0* (double)log2(qscale(i)/0.85) (7)
其中,QP(i)为第i个前向预测视频帧的量化参数,qscale(i)为第i个前向预测视频帧的量化参数调节因子。
在本实施例中,可以为量化参数调节因子配置用于调整大小的调整参数,并获取多个候选的调整参数。在一实施例中,多个候选的调整参数可以是多个不同的权重。
在步骤S320中,基于每个候选的调整参数,调整待编码的前向预测视频帧的量化参数调节因子,得到多个调整后的量化参数调节因子。
具体地,可以预先确定待编码的前向预测视频帧的量化参数,该量化参数调节因子,该量化参数调节因子可以根据相关技术确定。进而针对每个候选的调整参数,可以基于该候选的调整参数对前向预测视频帧的量化参数调节因子进行调整,确定每个候选的调整参数对应的调整后的量化参数调节因子,由此得到多个调整后的量化参数调节因子。
在步骤S330中,确定每个调整后的每个量化参数调节因子对应的量化参数,得到多个候选量化参数。
在获取到多个调整后的量化参数调节因子后,由于量化参数调节因子可以与量化参数存在一一对应的映射关系,可以确定每个调整后的每个量化参数调节因子对应的量化参数,得到多个候选量化参数。
在本实施例中,可以为量化参数调节因子配置调整参数,并通过多个候选的调整参数调整量化参数调节因子,实现量化参数的细致化调整。
在一示例性实施例中,在步骤S320中,基于每个候选的调整参数,调整待编码的前向预测视频帧的量化参数调节因子,得到多个调整后的量化参数调节因子,可以包括如下步骤:
获取待编码的前向预测视频帧的初始量化参数调节因子;基于每个候选的调整参数和初始量化参数调节因子的乘积,确定每个候选的调整参数对应的调整后的量化参数调节因子,得到多个调整后的量化参数调节因子。
其中,初始量化参数调节因子基于待编码的前向预测视频帧的内容,以及待编码的前向预测视频帧之前的视频帧的内容确定。
实际应用中,可以根据待编码的前向预测视频帧的内容和该前向预测视频帧之前的视频帧内容,确定出前向预测视频帧的初始量化参数调节因子。
在一实施例中,可以根据待编码的前向预测视频帧的内容,确定出该视频帧的变换后绝对值差和(SATD),记为SATD(i),并结合该前向预测视频帧之前的视频帧的内容确定过往视频帧的累计复杂度,记为cplx_sum(i)。在一示例中,可以通过如下所示的式(8)确定累计复杂度:
cplx_sum(i)=0.5*cplx_sum(i-1)+SATD(i) (8)
然后,可以根据过往视频帧的累计复杂度和过往的视频帧数量,确定出当前待编码的前向预测视频帧对应的视频帧复杂度,在一示例中,可以通过如下所示的式(9)确定视频帧复杂度cplx_blur(i):
cplx_blur(i) =cplx_sum(i)/cplx_count (9)
其中,cplx_count表示为过往视频帧(在当前视频帧之前的视频帧)的累计数目。
然后,可以根据压缩因子和视频帧复杂度cplx_blur(i),确定出第i个前向预测视频帧的初始量化参数调节因子qscale(i),示例性地,可以按照如下所示的式(10)确定:
qscale(i)=cplx_blur(i)1-qc (10)
其中,qc表示压缩因子,可以为定值,例如在X265编码器中可以设置为0.6。
在得到初始量化参数调节因子后,针对每个候选的调整参数,可以根据该候选的调整参数和初始量化参数调节因子的乘积,确定每个候选的调整参数对应的调整后的量化参数调节因子,得到多个调整后的量化参数调节因子,具体例如,可以如下式(11)所示:
qscale[i] = w[i] * qscale (11)
其中,qscale为初始量化参数调节因子,w[i]为候选的调整参数,qscale[i]为调整后的量化参数调节因子。
在一些示例中,若待编码的前向预测视频帧为多个,可以根据上述方式分别计算每个前向预测视频帧的量化参数调节因子,并根据多个量化参数调节因子(如平均值或中位数等)确定初始量化参数调节因子;当然,也可以在多个待编码的前向预测视频帧中,将指定的一前向预测视频帧的量化参数调节因子确定为初始量化参数调节因子。
在本实施例中,可以通过候选的调整参数对前向预测视频帧的初始量化参数调节因子进行调整,能够以初始量化参数调节因子为基准进行调节,避免对量化参数调节因子进行不合理的调整,快速获取到有效的调整后的量化参数调节因子。
在一示例性实施例中,在步骤S310中,获取多个候选的调整参数,可以包括如下步骤:
在预设的参数范围内,获取起始调整参数;根据预设的参数调增步长,对起始调整参数进行调增处理,得到参数范围内的多个调整参数,对应作为多个候选的调整参数。
实际应用中,获取预设的调整参数的参数范围,该参数范围可以根据经验值设置。然后,可以在该参数范围内选择一数值,作为起始调整参数。
进而可以根据预设的参数调增步长,采用多种方式对起始调整参数进行调增处理,得到在参数范围内的多个调整参数,作为多个候选的调整参数。具体而言,可以采用参数调增步长依次进行递增,例如若起始调整参数为W0,参数调增步长为k,则调增起始调整参数时,可以以k的整数倍调增起始调整参数为W0。此外,在一些可选的实施例中,也可以设置参数调减步长,参数调减步长和参数调增步长可以统称为调整步长,可以根据预设的参数调减步长对起始调整参数进行调减处理,得到参数范围内的多个调整参数,对应作为多个候选的调整参数。
在本实施例中,通过按照参数调增步长在参数范围内调增起始权重因子,便于后续获取到分布合理的多个候选的调整参数,避免候选的调整参数的数值过于集中,有利于获取到不同分布下的量化参数,增加候选量化参数的多样性。
在一示例性实施例中,如图4所示,在步骤S220中,根据多个候选量化参数对待编码的前向预测视频帧进行编码,得到视频帧序列分别在各个候选量化参数下的视频编码效率,可以包括如下步骤:
在步骤S410中,针对每个候选量化参数,基于候选量化参数对待编码的前向预测视频帧进行编码,并基于预设量化参数对视频帧序列中的其他前向预测视频帧进行编码,得到视频帧序列的当前编码结果;其他前向预测视频帧为视频帧序列中除待编码的前向预测视频帧以外的前向预测视频帧。
作为一示例,当前编码结果可以是对视频帧序列中的各视频帧进行编码后得到的编码内容,例如可以是压缩后的多个视频帧。
实际应用中,在确定每个候选量化参数对视频帧序列视频编码效率的影响程度时,可以控制变量法确定。具体地,针对每个候选量化参数,基于候选量化参数对待编码的前向预测视频帧进行编码,即确定该候选量化参数对应的码率,并利用候选量化参数对应的码率对待编码的前向预测视频帧进行编码;对于视频帧序列中的其他前向预测视频帧,则可以基于预设量化参数进行编码,然后可以基于视频帧序列中多个编码后的视频帧,确定当前编码结果。
换句话说,在对视频帧序列中的视频帧进行编码时,对于确定出的待编码的前向预测视频帧,可以根据一个候选量化参数对应的码率,对该待编码的前向预测视频帧进行编码,而对于视频帧序列中的其他前向预测视频帧可以统一使用预设量化参数进行编码,其中,预设量化参数可以是按照预设公式计算得到的、未经过调整的量化参数。
在步骤S420中,获取参考编码结果;参考编码结果是基于预设量化参数对视频帧序列中的各前向预测视频帧进行编码时得到的编码结果。
作为一示例,参考编码结果可以是基于预设量化参数对视频帧序列中的各视频帧进行编码后得到的编码内容,例如可以是压缩后的多个视频帧。
具体地,可以按照预设公式计算得到视频帧序列中各个前向预测视频帧的预设量化参数,然后可以基于预设量化参数,对视频帧序列中的对应前向预测视频帧进行编码,确定相应的编码结果。
在步骤S430中,根据参考编码结果和当前编码结果的比对结果,得到视频帧序列在候选量化参数下的视频编码效率。
在得到参考编码结果和当前编码结果后,可以将两者进行比对,并根据比对结果得到视频帧序列在该候选量化参数下的视频编码效率。例如,可以比较在相同视频质量下,将参考编码结果的码率与当前编码结果的码率进行比较,或者,可以在相同码率下,将参考编码结果的视频质量与当前编码结果的视频质量进行比较。
在本实施例中,结合控制变量的思想,可以基于候选量化参数对待编码的前向预测视频帧进行编码,基于预设量化参数对视频帧序列中的其他前向预测视频帧进行编码,并将当前编码结果与使用预设量化参数对各前向预测视频帧进行编码得到的参考编码结果进行比较,准确识别出利用候选量化参数对指定的前向预测视频帧进行编码时,对视频帧序列整体的编码效率的影响。
在一示例性实施例中,在步骤S430中,根据参考编码结果和当前编码结果的比对结果,得到视频帧序列在候选量化参数下的视频编码效率,可以包括如下步骤:
基于当前编码结果和参考编码结果,确定视频帧序列的码率变化信息,并基于码率变化信息,得到候选量化参数下的视频编码效率。
实际应用中,当前编码结果和参考编码结果具体可以为按照不同编码方式得到的两种编码后的视频帧序列,当前编码结果和参考编码结果的码率存在差异,而编码效率与码率相关。在本步骤中,可以基于当前编码结果,得到视频帧序列在预设视频质量的情况下,基于候选量化参数对视频帧序列中指定的前向预测视频帧(即待确定的前向预测视频帧)进行编码时的码率;以及,基于参考编码结果,确定在相同的预设视频质量的情况下,基于预设量化参数对视频帧序列中各前向预测视频帧进行编码时的码率。
进而,可以确定两者的码率变化信息,并将码率变化信息确定为视频帧序列在该候选量化参数下的视频编码效率。在一可选的实施例中,码率变化信息可以是码率变化的百分比,例如BDBR(Bjontegaard delta bit rate)评价指标,BDBR评价指标用于表示在同样的视频质量下,一种编码方式相对于与另一种编码方式,码率变化的百分比;当然,码率变化信息也可以是在相同视频质量情况下,当前编码结果对应的码率与参考编码结果对应的码率之间的差值。
在本实施例中,可以基于当前编码结果和参考编码结果之间的码率变化信息,对利用候选量化参数编码指定前向预测视频帧带来的影响,进行准确量化,为比对不同的候选量化参数并选择出合适指定前向预测视频帧的量化参数,提供基础。
在一示例性实施例中,如图5所示,在步骤S210中,确定视频帧序列中待编码的前向预测视频帧,可以包括如下步骤:
在步骤S510中,按照预设的视频帧间隔对视频帧序列进行分割,得到视频帧序列的多个视频帧图像组。
具体实现中,可以对视频帧序列中不同位置的前向预测视频帧进行分类。本步骤中,可以按照预设的视频帧间隔对视频帧进行分割,得到多个视频帧图像组,每个视频帧图像组可以包括一个或多个前向预测视频帧。
在一种可选的实施例中,前向预测视频帧可以等间隔地设置在视频帧序列中,因此,可以将一个前向预测视频帧,到下一个前向预测视频帧之前的视频帧,作为视频帧间隔,该视频帧间隔中的多个视频帧可以组成mini-GOP。
在进行分割时,可以按照视频帧间隔对视频帧序列进行均分,若最后一次分割后剩余的视频帧数量未达到视频帧间隔的数量,则将最后一次分割后剩余的视频帧单独作为一个视频帧图像组,以视频帧间隔为A(A为大于等于2的正整数),视频帧序列中包括B个(B为大于2的正整数)视频帧,若B/A的结果并非整数,则将最后多余的视频帧构成一个视频帧图像组。
以编码器配置的视频帧序列长度为40帧进行举例说明,可以4为视频帧间隔,对视频帧序列进行分割:视频帧位置为[0,3]的划分为一个视频帧图像组,视频帧位置为[4,7]的划分为一个视频帧图像组,依次类推;若视频帧序列长度为42帧,则可以将最后剩余的两针划分为一个视频帧图像组。
在步骤S520中,根据多个视频帧图像组的次序,将每个视频帧图像组中的各个前向预测视频帧,依次确定为待编码的前向预测视频帧。
在划分为多个视频帧图像组后,可以以视频帧图像组为单位进行前向预测视频帧的编码。具体而言,可以根据多个视频帧图像组的次序,确定一个视频帧图像组,然后将该视频帧图像组中的各个前向预测视频帧,确定为待编码的前向预测视频帧,其中,归属于同一组的前向预测视频帧在进行编码时可以使用相同的目标量化参数。可以理解的是,对多个视频帧图像组中的
在本实施例中,通过按照预设的视频帧间隔对视频帧序列进行分割,得到视频帧序列的多个视频帧图像组,并根据多个视频帧图像组的次序,将每个视频帧图像组中的各个前向预测视频帧,依次确定为待编码的前向预测视频帧,一方面,可以对视频帧序列中不同位置的前向预测视频帧的量化参数进行差异化调整,避免对视频帧序列中所有的前向预测视频帧都使用相同的目标量化参数,另一方面,通过将归属于同一组的前向预测视频帧确定为待编码的前向预测视频帧,能够对不同位置的前向预测视频帧进行分类,对位置相近的前向预测视频帧进行统一的目标量化参数优化,提升编码效率。
在一示例性实施例中,在步骤S230中,基于各个候选量化参数对应的视频编码效率,从多个候选量化参数中,确定出目标量化参数,并根据目标量化参数对待编码的前向预测视频帧进行编码,可以包括如下步骤:
从各个候选量化参数下的视频编码效率中,确定出大于阈值的编码效率或最大的N个编码效率,作为目标编码效率;将目标视频编码效率对应的候选量化参数,确定为目标量化参数。
其中,N为正整数。
实际应用中,在得到多个候选量化参数后,可以对多个候选量化参数的视频编码效率进行筛选,确定出最优的视频编码效率,具体而言,可以从各个候选量化参数下的视频编码效率中确定出大于阈值的编码效率或者最大的若干个编码效率,作为目标编码效率。进而可以将目标编码效率对应的候选量化参数作为目标量化参数。
在本实施例中,通过确定出大于阈值的编码效率或最大的N个编码效率,作为目标编码效率,并将目标视频编码效率对应的候选量化参数,确定为目标量化参数,能够快速筛选出合适的目标量化参数,有效提升编码器的编码性能和效率。
为了使本领域技术人员能够更好地理解上述步骤,以下通过一个例子对本公开实施例加以示例性说明,但应当理解的是,本公开实施例并不限于此。
在本示例中,可以对视频帧序列GOP中不同位置的P帧进行分类,为每一类P帧提供优化后的码率配置方案。具体而言,可以先定义视频帧间隔,该视频帧间隔也可以称为mini-GOP,按照mini-GOP的长度进行均分,并将处于相同的mini-GOP中的P帧作为一类。
以编码器X265为例,在编码器配置的GOP尺寸为40时,可以按照位置进行十分类,P帧位置在[0,3]记做第一类,P帧位置在[4,7]计算第二类,P帧位置在[8,11]计算第三类,依次类推。对于上述的每类P帧,可以在确定出该类P帧候选的调整参数w[i]后,可以根据式(11)更新初始量化参数调节因子,得到调整后的量化参数调节因子qscale[i],并根据各个调整后的量化参数调节因子qscale[i]对应的候选量化参数,并根据各个候选量化参数的视频编码效率,筛选出视频编码效率最优的候选量化参数。
具体而言,可以采用控制变量的方法,针对同一类的P帧,可以将视频帧序列中该类P帧的调整参数设置为候选的调整参数w[i],并将视频帧序列中其他类P帧的调整参数设置为1(即不调整其他类P帧的初始量化参数调节因子),然后进行编码,得到当前编码结果;同时,确定视频帧序列中各类P帧的调整参数设置为1,然后进行编码,得到参考编码结果。通过比对当前编码结果和参考编码结果,确定BDBR指标,利用该指标评价候选的调整参数以及对应的候选量化参数的优劣。进而,对于同一类P帧的多个候选的调整参数以及对应的候选量化参数,可以确定出获取到最优的视频编码效率时的调整参数和目标量化参数。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
可以理解的是,本说明书中上述方法的各个实施例之间相同/相似的部分可互相参见,每个实施例重点说明的是与其他实施例的不同之处,相关之处参见其他方法实施例的说明即可。
基于同样的发明构思,本公开实施例还提供了一种用于实现上述所涉及的视频编码方法的视频编码装置。
图6是根据一示例性实施例示出的一种视频编码装置框图。参照图6,该装置包括预测帧获取单元601,视频编码效率获取单元602和目标量化参数确定单元603。
预测帧获取单元601,被配置为执行确定视频帧序列中待编码的前向预测视频帧,所述待编码的前向预测视频帧为所述视频帧序列中多个前向预测视频帧的部分;
视频编码效率获取单元602,被配置为执行获取所述待编码的前向预测视频帧的多个候选量化参数,并根据所述多个候选量化参数对所述待编码的前向预测视频帧进行编码,得到所述视频帧序列分别在各个所述候选量化参数下的视频编码效率;
目标量化参数确定单元603,被配置为执行基于各个所述候选量化参数对应的视频编码效率,从多个所述候选量化参数中确定目标量化参数,并根据所述目标量化参数重新对所述待编码的前向预测视频帧进行编码。
在一示例性实施例中,所述视频编码效率获取单元602,被配置为执行:
获取量化参数调节因子的多个候选的调整参数;所述量化参数调节因子用于调整量化参数;
基于每个候选的所述调整参数,调整所述待编码的前向预测视频帧的量化参数调节因子,得到多个调整后的量化参数调节因子;
确定每个调整后的每个量化参数调节因子对应的量化参数,得到多个候选量化参数。
在一示例性实施例中,所述视频编码效率获取单元602,被配置为执行:
获取所述待编码的前向预测视频帧的初始量化参数调节因子;所述初始量化参数调节因子基于所述待编码的前向预测视频帧的内容,以及所述待编码的前向预测视频帧之前的视频帧的内容确定;
基于每个候选的所述调整参数和所述初始量化参数调节因子的乘积,确定每个候选的所述调整参数对应的调整后的量化参数调节因子,得到多个调整后的量化参数调节因子。
在一示例性实施例中,所述视频编码效率获取单元602,被配置为执行:
在预设的参数范围内,获取起始调整参数;
根据预设的参数调增步长,对所述起始调整参数进行调增处理,得到所述参数范围内的多个调整参数,对应作为所述多个候选的调整参数。
在一示例性实施例中,所述视频编码效率获取单元602,被配置为执行:
针对每个候选量化参数,基于所述候选量化参数对所述待编码的前向预测视频帧进行编码,并基于预设量化参数对所述视频帧序列中的其他前向预测视频帧进行编码,得到所述视频帧序列的当前编码结果;所述其他前向预测视频帧为所述视频帧序列中除所述待编码的前向预测视频帧以外的前向预测视频帧;
获取参考编码结果;所述参考编码结果是基于所述预设量化参数对所述视频帧序列中的各前向预测视频帧进行编码时得到的编码结果;
根据所述参考编码结果和所述当前编码结果的比对结果,得到所述视频帧序列在所述候选量化参数下的视频编码效率。
在一示例性实施例中,所述视频编码效率获取单元602,被配置为执行:
基于所述当前编码结果和所述参考编码结果,确定所述视频帧序列的码率变化信息,并基于所述码率变化信息,得到所述候选量化参数下的视频编码效率。
在一示例性实施例中,所述预测帧获取单元601,被配置为执行:
按照预设的视频帧间隔对视频帧序列进行分割,得到所述视频帧序列的多个视频帧图像组;
根据所述多个视频帧图像组的次序,将每个视频帧图像组中的各个前向预测视频帧,依次确定为待编码的前向预测视频帧。
在一示例性实施例中,所述目标量化参数确定单元603,被配置为执行:
从各个所述候选量化参数下的视频编码效率中,确定出大于阈值的编码效率或最大的N个编码效率,作为目标编码效率;所述N为正整数;
将所述目标视频编码效率对应的候选量化参数,确定为目标量化参数。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
上述视频编码装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
图7是根据一示例性实施例示出的一种用于实现一种视频编码方法的电子设备700的框图。例如,电子设备700可以为服务器。参照图7,电子设备700包括处理组件720,其进一步包括一个或多个处理器,以及由存储器722所代表的存储器资源,用于存储可由处理组件720的执行的指令,例如应用程序。存储器722中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件720被配置为执行指令,以执行上述方法。
电子设备700还可以包括:电源组件724被配置为执行电子设备700的电源管理,有线或无线网络接口726被配置为将电子设备700连接到网络,和输入输出(I/O)接口728。电子设备700可以操作基于存储在存储器722的操作系统,例如Windows Server,Mac OS X,Unix,Linux,FreeBSD或类似。
在示例性实施例中,还提供了一种包括指令的计算机可读存储介质,例如包括指令的存储器722,上述指令可由电子设备700的处理器执行以完成上述方法。存储介质可以是计算机可读存储介质,例如,所述计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供一种计算机程序产品,所述计算机程序产品中包括指令,上述指令可由电子设备700的处理器执行以完成上述方法。
需要说明的,上述的装置、电子设备、计算机可读存储介质、计算机程序产品等根据方法实施例的描述还可以包括其他的实施方式,具体的实现方式可以参照相关方法实施例的描述,在此不作一一赘述。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (11)
1.一种视频编码方法,其特征在于,包括:
确定视频帧序列中待编码的前向预测视频帧,所述待编码的前向预测视频帧为所述视频帧序列中多个前向预测视频帧的部分;
获取所述待编码的前向预测视频帧的多个候选量化参数,并根据所述多个候选量化参数对所述待编码的前向预测视频帧进行编码,得到所述视频帧序列分别在各个所述候选量化参数下的视频编码效率;
基于各个所述候选量化参数对应的视频编码效率,从多个所述候选量化参数中确定目标量化参数,并根据所述目标量化参数重新对所述待编码的前向预测视频帧进行编码。
2.根据权利要求1所述的方法,其特征在于,所述获取所述待编码的前向预测视频帧的多个候选量化参数,包括:
获取量化参数调节因子的多个候选的调整参数;所述量化参数调节因子用于调整量化参数;
基于每个候选的所述调整参数,调整所述待编码的前向预测视频帧的量化参数调节因子,得到多个调整后的量化参数调节因子;
确定每个调整后的每个量化参数调节因子对应的量化参数,得到多个候选量化参数。
3.根据权利要求2所述的方法,其特征在于,所述基于每个候选的所述调整参数,调整所述待编码的前向预测视频帧的量化参数调节因子,得到多个调整后的量化参数调节因子,包括:
获取所述待编码的前向预测视频帧的初始量化参数调节因子;所述初始量化参数调节因子基于所述待编码的前向预测视频帧的内容,以及所述待编码的前向预测视频帧之前的视频帧的内容确定;
基于每个候选的所述调整参数和所述初始量化参数调节因子的乘积,确定每个候选的所述调整参数对应的调整后的量化参数调节因子,得到多个调整后的量化参数调节因子。
4.根据权利要求2所述的方法,其特征在于,所述获取多个候选的调整参数,包括:
在预设的参数范围内,获取起始调整参数;
根据预设的参数调增步长,对所述起始调整参数进行调增处理,得到所述参数范围内的多个调整参数,对应作为所述多个候选的调整参数。
5.根据权利要求1所述的方法,其特征在于,所述根据所述多个候选量化参数对所述待编码的前向预测视频帧进行编码,得到所述视频帧序列分别在各个所述候选量化参数下的视频编码效率,包括:
针对每个候选量化参数,基于所述候选量化参数对所述待编码的前向预测视频帧进行编码,并基于预设量化参数对所述视频帧序列中的其他前向预测视频帧进行编码,得到所述视频帧序列的当前编码结果;所述其他前向预测视频帧为所述视频帧序列中除所述待编码的前向预测视频帧以外的前向预测视频帧;
获取参考编码结果;所述参考编码结果是基于所述预设量化参数对所述视频帧序列中的各前向预测视频帧进行编码时得到的编码结果;
根据所述参考编码结果和所述当前编码结果的比对结果,得到所述视频帧序列在所述候选量化参数下的视频编码效率。
6.根据权利要求5所述的方法,其特征在于,所述根据所述参考编码结果和所述当前编码结果的比对结果,得到所述视频帧序列在所述候选量化参数下的视频编码效率,包括:
基于所述当前编码结果和所述参考编码结果,确定所述视频帧序列的码率变化信息,并基于所述码率变化信息,得到所述候选量化参数下的视频编码效率。
7.根据权利要求1所述的方法,其特征在于,所述确定视频帧序列中待编码的前向预测视频帧,包括:
按照预设的视频帧间隔对视频帧序列进行分割,得到所述视频帧序列的多个视频帧图像组;
根据所述多个视频帧图像组的次序,将每个视频帧图像组中的各个前向预测视频帧,依次确定为待编码的前向预测视频帧。
8.根据权利要求1至7中任一项所述的方法,其特征在于,所述基于各个所述候选量化参数对应的视频编码效率,从多个所述候选量化参数中,确定出目标量化参数,包括:
从各个所述候选量化参数下的视频编码效率中,确定出大于阈值的编码效率或最大的N个编码效率,作为目标编码效率;所述N为正整数;
将所述目标视频编码效率对应的候选量化参数,确定为目标量化参数。
9.一种视频编码装置,其特征在于,包括:
预测帧获取单元,被配置为执行确定视频帧序列中待编码的前向预测视频帧,所述待编码的前向预测视频帧为所述视频帧序列中多个前向预测视频帧的部分;
视频编码效率获取单元,被配置为执行获取所述待编码的前向预测视频帧的多个候选量化参数,并根据所述多个候选量化参数对所述待编码的前向预测视频帧进行编码,得到所述视频帧序列分别在各个所述候选量化参数下的视频编码效率;
目标量化参数确定单元,被配置为执行基于各个所述候选量化参数对应的视频编码效率,从多个所述候选量化参数中确定目标量化参数,并根据所述目标量化参数重新对所述待编码的前向预测视频帧进行编码。
10.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至8中任一项所述的视频编码方法。
11.一种计算机可读存储介质,其特征在于,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如权利要求1至8中任一项所述的视频编码方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310907722.4A CN116962694A (zh) | 2023-07-21 | 2023-07-21 | 视频编码方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310907722.4A CN116962694A (zh) | 2023-07-21 | 2023-07-21 | 视频编码方法、装置、电子设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116962694A true CN116962694A (zh) | 2023-10-27 |
Family
ID=88450698
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310907722.4A Pending CN116962694A (zh) | 2023-07-21 | 2023-07-21 | 视频编码方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116962694A (zh) |
-
2023
- 2023-07-21 CN CN202310907722.4A patent/CN116962694A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110139109B (zh) | 图像的编码方法及相应终端 | |
US9282330B1 (en) | Method and apparatus for data compression using content-based features | |
US7751478B2 (en) | Prediction intra-mode selection in an encoder | |
CN108574841B (zh) | 一种基于自适应量化参数的编码方法及装置 | |
US11356672B2 (en) | System and method for controlling video coding at frame level | |
CN103918262A (zh) | 基于结构相似度的码率失真优化感知视频编码方法和系统 | |
CN104320657B (zh) | Hevc无损视频编码的预测模式选择方法及相应的编码方法 | |
US11134250B2 (en) | System and method for controlling video coding within image frame | |
US20220086454A1 (en) | System and method for reducing video coding fluctuation | |
US20200068200A1 (en) | Methods and apparatuses for encoding and decoding video based on perceptual metric classification | |
CN111327950B (zh) | 一种视频转码方法及装置 | |
CN109286812B (zh) | 一种hevc视频质量估计方法 | |
CN101523915B (zh) | 使用min-max方法的用于视频编码的两遍速率控制技术 | |
Shahid et al. | A no-reference machine learning based video quality predictor | |
WO2022021422A1 (zh) | 视频编码方法、编码器、系统以及计算机存储介质 | |
US20240187618A1 (en) | Multivariate rate control for transcoding video content | |
Micó-Enguídanos et al. | Per-title and per-segment CRF estimation using DNNs for quality-based video coding | |
KR100621003B1 (ko) | 디지털 영상 데이터의 복호화 방법 | |
CN116527909A (zh) | 编码参数的传输方法、装置、设备、存储介质及程序产品 | |
KR100601846B1 (ko) | 동영상 압축 부호화기의 왜곡 최적화 장치 및 방법 | |
CN116962694A (zh) | 视频编码方法、装置、电子设备和存储介质 | |
CN116827921A (zh) | 一种流媒体的音视频处理方法、装置及设备 | |
Wang et al. | A convolutional neural network-based rate control algorithm for VVC intra coding | |
US20110182343A1 (en) | Encoder | |
US11979587B2 (en) | Hybrid inter-frame coding using an autoregressive model |
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 |