CN112165620A - 视频的编码方法及装置、存储介质、电子设备 - Google Patents

视频的编码方法及装置、存储介质、电子设备 Download PDF

Info

Publication number
CN112165620A
CN112165620A CN202011017864.6A CN202011017864A CN112165620A CN 112165620 A CN112165620 A CN 112165620A CN 202011017864 A CN202011017864 A CN 202011017864A CN 112165620 A CN112165620 A CN 112165620A
Authority
CN
China
Prior art keywords
value
crf
source
frame
target
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
Application number
CN202011017864.6A
Other languages
English (en)
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 Kingsoft Cloud Network Technology Co Ltd
Original Assignee
Beijing Kingsoft Cloud Network Technology 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 Kingsoft Cloud Network Technology Co Ltd filed Critical Beijing Kingsoft Cloud Network Technology Co Ltd
Priority to CN202011017864.6A priority Critical patent/CN112165620A/zh
Publication of CN112165620A publication Critical patent/CN112165620A/zh
Pending legal-status Critical Current

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/177Methods 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]
    • 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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability

Abstract

本发明公开了一种视频的编码方法及装置、存储介质、电子设备,属于视频编码技术领域。其中,该方法包括:获取源视频的源固定码率系数CRF值;根据所述源视频的编码层级结构和所述源CRF值计算所述源视频的目标量化参数QP值,其中,所述编码层级结构用于表征所述源视频的画面组GOP中图像帧的编码参考关系;基于所述目标QP值对所述源视频进行恒定视觉质量编码。通过本发明,解决了相关技术中视频GOP的高层帧容易失真的技术问题,可以提升CRF模式的编码性能和编码效率,对GOP内的低层帧,可以保证更稳定的视觉质量和更高码率,避免因为低层帧的失真而导致高层帧失真。

Description

视频的编码方法及装置、存储介质、电子设备
技术领域
本发明涉及视频编码领域,具体而言,涉及一种视频的编码方法及装置、存储介质、电子设备。
背景技术
相关技术在进行视频编码时,是指通过压缩技术,将原始视频格式的文件转换成另一种视频格式文件的方式。视频流传输中常见的编解码标准有H.264、H.265、AVS、AV1等。
相关技术在视频编码时有,多种码率控制方法,有恒定码率的CBR(Constant BitRate,固定码率)模式,有恒定视觉质量的CRF(Constant Rate Factor,固定码率系数)模式,每种码率控制方式最终都是通过改变每帧的QP值来达到码率控制的效果。其中,CRF模式以输入的CRF值作为基准QP(Quant parameter,量化参数),同时依据图像的复杂度信息和运动信息,来调整每帧的实际QP值,以此来稳定输出的视觉质量。对于运动剧烈或复杂场景,其失真相对难以被肉眼察觉,因此可以加大QP以节省码率;而对于人眼敏感的平坦区域,较小的失真都更容易被人察觉,故需减小QP以减小失真。
相关技术的CRF模式,每帧的CRF值恒定,仅依据图像的复杂度信息分配QP,而忽略了编码分级结构导致的不同层级的帧参考关系不同,一旦低层帧出现失真,参考该帧编码的高层帧也会进一步失真,容易导致底层帧的失真而失真扩散,编码效率降低。
针对相关技术中存在的上述问题,目前尚未发现有效的解决方案。
发明内容
本发明实施例提供了一种视频的编码方法及装置、存储介质、电子设备。
根据本申请实施例的一个方面,提供了一种视频的编码方法,包括:获取源视频的源固定码率系数CRF值;根据所述源视频的编码层级结构和所述源CRF值计算所述源视频的目标量化参数QP值,其中,所述编码层级结构用于表征所述源视频的画面组GOP中图像帧的编码参考关系;基于所述目标QP值对所述源视频进行恒定视觉质量编码。
进一步,根据所述源视频的编码层级结构和所述源CRF值计算所述源视频的目标量化参数QP值包括:根据所述源视频的编码层级结构调整所述源CRF值,得到目标CRF值;根据所述目标CRF值计算目标QP值。
进一步,根据所述源视频的编码层级结构调整所述源CRF值,得到目标CRF值,包括:以所述源视频的GOP为单位,将当前帧所在的GOP按照参考帧的逻辑顺序划分为多个编码层,其中,每个编码层包括至少一个图像帧;在预设预设库中为每个编码层的图像帧分配调整算法;采用所述调整算法调整所述GOP中每帧图像的源CRF值,得到目标CRF值。
进一步,采用所述调整算法调整所述GOP中每帧图像的源CRF值,得到目标CRF值,包括:确定判断当前帧所在的编码层;采用以下公式计算所述GOP中每帧图像的源CRF值,得到目标CRF值:crfframe=crf+deltalevel;其中,crfframe为所述目标CRF值,crf为所述源CRF值,deltalevel为偏移量,所述偏移量与当前帧所在编码层的层级成正相关。
进一步,采用所述调整算法调整所述GOP中每帧图像的源CRF值,得到目标CRF值,包括:确定判断当前帧所在的编码层;采用以下公式计算所述GOP中每帧图像的源CRF值,得到目标CRF值:crfframe=crf*deltalevel;其中,crfframe为所述目标CRF值,crf为所述源CRF值,deltalevel为偏移量,所述偏移量与当前帧所在编码层的层级成正相关。
进一步,根据所述目标CRF值计算目标QP值包括:计算所述源视频的基础复杂度Cplx_base和实际复杂度Cplx_frame;通过以下公式计算基础中间结果:Qscalebase=0.85×2(目标CRF值-12)/6;通过以下公式计算实际中间结果:
Figure BDA0002699688970000021
通过以下公式计算QP值:QPframe=12+6×log2(Qscaleframe/0.85);其中,Qscalebase为所述基础中间结果,Qscaleframe为所述实际中间结果,QPframe为所述目标QP值,b为第一预设值。
进一步,根据所述源视频的编码层级结构和所述源CRF值计算所述源视频的目标量化参数QP值包括:根据所述源CRF值计算源QP值;根据所述源视频的编码层级结构调整所述源QP值,得到目标QP值。
进一步,根据所述源视频的编码层级结构调整所述源QP值,得到目标QP值,包括:以所述源视频的GOP为单位,将当前帧所在的GOP按照参考帧的数量分为多个编码层,其中,每个编码层包括至少一个图像帧;为每个编码层的图像帧分配调整算法;采用所述调整算法调整所述GOP中每帧图像的源QP值,得到目标QP值。
进一步,基于所述目标QP值对所述源视频进行恒定视觉质量编码包括:在所述源视频中提取与所述目标QP值对应的原始图像帧;基于所述目标QP值在所述原始图像帧的像素宏块中删除对应数量的图像信息,得到编码后的图像帧。
根据本申请实施例的另一个方面,还提供了一种视频的编码装置,包括:获取模块,用于获取源视频的源固定码率系数CRF值;计算模块,用于根据所述源视频的编码层级结构和所述源CRF值计算所述源视频的目标量化参数QP值,其中,所述编码层级结构用于表征所述源视频的画面组GOP中图像帧的编码参考关系;编码模块,用于基于所述目标QP值对所述源视频进行恒定视觉质量编码。
进一步,所述计算模块包括:第一调整单元,用于根据所述源视频的编码层级结构调整所述源CRF值,得到目标CRF值;第一计算单元,用于根据所述目标CRF值计算目标QP值。
进一步,所述第一调整单元包括:划分子单元,用于以所述源视频的GOP为单位,将当前帧所在的GOP按照参考帧的逻辑顺序划分为多个编码层,其中,每个编码层包括至少一个图像帧;分配子单元,用于在预设预设库中为每个编码层的图像帧分配调整算法;调整子单元,用于采用所述调整算法调整所述GOP中每帧图像的源CRF值,得到目标CRF值。
进一步,所述调整子单元还用于:确定判断当前帧所在的编码层;采用以下公式计算所述GOP中每帧图像的源CRF值,得到目标CRF值:crfframe=crf+deltalevel;其中,crfframe为所述目标CRF值,crf为所述源CRF值,deltalevel为偏移量,所述偏移量与当前帧所在编码层的层级成正相关。
进一步,所述调整子单元还用于:确定判断当前帧所在的编码层;采用以下公式计算所述GOP中每帧图像的源CRF值,得到目标CRF值:crfframe=crf*deltalevel;其中,crfframe为所述目标CRF值,crf为所述源CRF值,deltalevel为偏移量,所述偏移量与当前帧所在编码层的层级成正相关。
进一步,所述第一计算单元包括:第一计算子单元,用于计算所述源视频的基础复杂度Cplx_base和实际复杂度Cplx_frame;第二计算子单元,用于通过以下公式计算基础中间结果:Qscalebase=0.85×2(目标CRF值-12)/6;第三计算子单元,用于通过以下公式计算实际中间结果:
Figure BDA0002699688970000041
第四计算子单元,用于通过以下公式计算QP值:QPframe=12+6×log2(Qscaleframe/0.85);其中,Qscalebase为所述基础中间结果,Qscaleframe为所述实际中间结果,QPframe为所述目标QP值,b为第一预设值。
进一步,所述计算模块包括:第二计算单元,用于根据所述源CRF值计算源QP值;第二调整单元,用于根据所述源视频的编码层级结构调整所述源QP值,得到目标QP值。
进一步,所述第二调整单元包括:划分子单元,用于以所述源视频的GOP为单位,将当前帧所在的GOP按照参考帧的逻辑顺序划分为多个编码层,其中,每个编码层包括至少一个图像帧;分配子单元,用于为每个编码层的图像帧分配调整算法;调整子单元,用于采用所述调整算法调整所述GOP中每帧图像的源QP值,得到目标QP值。
进一步,所述编码模块包括:提取单元,用于在所述源视频中提取与所述目标QP值对应的原始图像帧;编码单元,用于基于所述目标QP值在所述原始图像帧的像素宏块中删除对应数量的图像信息,得到编码后的图像帧。
根据本申请实施例的另一方面,还提供了一种存储介质,该存储介质包括存储的程序,程序运行时执行上述的步骤。
根据本申请实施例的另一方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;其中:存储器,用于存放计算机程序;处理器,用于通过运行存储器上所存放的程序来执行上述方法中的步骤。
本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述方法中的步骤。
通过本发明,获取源视频的源固定码率系数CRF值,然后根据源视频的编码层级结构和源CRF值计算源视频的目标量化参数QP值,最后基于目标QP值对源视频进行恒定视觉质量编码,以避免在恒定视觉质量模式下因帧率变化而产生的画面失真,解决了相关技术中视频GOP的高层帧容易失真的技术问题,可以提升CRF模式的编码性能和编码效率,对GOP内的低层帧,可以保证更稳定的视觉质量和更高码率,避免因为低层帧的失真而导致高层帧失真,此外,对GOP内的高层帧,在保证视频质量的情况下,提高QP值,进一步降低视频的存储空间,提高视频的传输量,降低解码量。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明实施例的一种服务器的硬件结构框图;
图2是根据本发明实施例的一种视频的编码方法的流程图;
图3是本发明实施例中GOP内编码的分级结构示意图;
图4是本发明实施例的编码流程图;
图5是根据本发明实施例的一种视频的编码装置的结构框图;
图6是实施本发明实施例的一种电子设备的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
本申请实施例一所提供的方法实施例可以在服务器、计算机、影像设备、手机、平板或者类似的运算装置中执行。以运行在服务器上为例,图1是本发明实施例的一种服务器的硬件结构框图。如图1所示,服务器10可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,可选地,上述服务器还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述服务器的结构造成限定。例如,服务器10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储服务器程序,例如,应用软件的软件程序以及模块,如本发明实施例中的一种视频的编码方法对应的服务器程序,处理器102通过运行存储在存储器104内的服务器程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至服务器10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括服务器10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种视频的编码方法,图2是根据本发明实施例的一种视频的编码方法的流程图,如图2所示,该流程包括如下步骤:
步骤S202,获取源视频的源固定码率系数CRF值;
在恒定视觉质量(CRF)的编码模式下,CRF值与码率相关,并影响编码参数中的QP(Quant parameter,即量化参数)值。码率就是数据传输时单位时间传送的数据位数,编码后的视频的每秒的比特率,码率也叫取样率,单位时间内取样率越大,精度就越高,处理出来的文件就越接近原始文件,码率影响视频的失真度,码率越高越清晰,反之则画面粗糙而多马赛克。
步骤S204,根据源视频的编码层级结构和源CRF值计算源视频的目标量化参数QP值,其中,编码层级结构用于表征源视频的画面组GOP中图像帧的编码参考关系;
本实施例的GOP(group of pictures,画面组)是在视频编码中一组编码视频流中的一组连续的画面,一个GOP由以下几种不同类型的帧组成:I帧(内部编码帧),P帧(预测编码帧),B帧(双向预测编码帧)。编码层级结构是编码器根据图像帧的参考关系将GOP内的帧分层,高层的帧会参考低层的帧进行编码,最高层的帧不会被其他帧所参考。
步骤S206,基于目标QP值对源视频进行恒定视觉质量编码。
在恒定视觉质量的编码模式下,由于编码存在分级结构,不同层级帧的被参考关系不同,采用调整后的QP值进行编码,对不同层级的帧分配不同的QP值,越底层的帧,被参考的越多,需降低底层帧的失真以免失真扩散编码效率降低,通过调整,最底层的帧QP相对最小;而最顶层的帧不会被其他帧参考,故对其失真的容忍度相对来说更高,通过调整,最高层的帧QP相对最大。
通过上述步骤,获取源视频的源固定码率系数CRF值,然后根据源视频的编码层级结构和源CRF值计算源视频的目标量化参数QP值,最后基于目标QP值对源视频进行恒定视觉质量编码,以避免在恒定视觉质量模式下因帧率变化而产生的画面失真,解决了相关技术中视频GOP的高层帧容易失真的技术问题,可以提升CRF模式的编码性能和编码效率,对GOP内的低层帧,可以保证更稳定的视觉质量和更高码率,避免因为低层帧的失真而导致高层帧失真,此外,对GOP内的高层帧,在保证视频质量的情况下,提高QP值,进一步降低视频的存储空间,提高视频的传输量,降低解码量。
在本实施例中,基于源视频的编码层级结构和输入的基础CRF值(源CRF值),可以通过多种方式计算得到最终的QP值,如先通过编码层级结构调整源CRF值,然后通过调整后的CRF值计算最终的QP值,或者先通过源CRF值计算QP值,然后使用编码层级结构调整QP值。均可实现相同的技术效果,以使视频在恒定视觉质量(CRF)的编码模式中,降低图片帧的失真率,保持画面的稳定性。
在本实施例的一个实施方式中,根据源视频的编码层级结构和源CRF值计算源视频的目标量化参数QP值包括:
S11,根据源视频的编码层级结构调整源CRF值,得到目标CRF值;
在本实施方式的一个示例中,根据源视频的编码层级结构调整源CRF值,得到目标CRF值,包括:以源视频的GOP为单位,将当前帧所在的GOP按照参考帧的逻辑顺序划分为多个编码层,其中,每个编码层包括至少一个图像帧;在预设预设库中为每个编码层的图像帧分配调整算法;采用调整算法调整GOP中每帧图像的源CRF值,得到目标CRF值。在另一些示例中,源视频中每个GOP的层级结构,以及每帧图像所在的编码帧在编码之前就已经预设完成,通过读取每帧图像的编码层标识可以确定该帧所在的编码层。
在一个示例中,GOP包括16帧,图3是本发明实施例中GOP内编码的分级结构示意图,将一个GOP内包含的16帧划分为5个编码层,从底层到顶层依次为01234层,各帧之间的参考逻辑关系与图3中的箭头对应,如第0帧是第1、2、4帧的参考帧,第4帧在编码时参考第0、8帧,同时也是第2、3、5、6帧的参考帧,其中,最底层(第0层:第0、16帧)在编码时不用参考其他帧,只被其他帧参考,因此需保证其失真最小,分配的QP最小;而最上层(第4层:第1、3、...、15帧)的帧完全不会被其他帧参考,故相对来说允许其失真更大,这些帧的QP也最大。
在一个实例中,采用调整算法调整GOP中每帧图像的源CRF值,得到目标CRF值,包括:确定判断当前帧所在的编码层;采用以下公式计算GOP中每帧图像的源CRF值,得到目标CRF值:crfframe=crf+deltalevel;其中,crfframe为目标CRF值,crf为源CRF值,deltalevel为偏移量,偏移量与当前帧所在编码层的层级成正相关。
例如,其中层级level与偏移量delta的对应关系为:{第0层:-1,第1层:0,第2层:1,第3/4/.../顶层:2},编码层的层级越高,偏移量越大,调整后的目标CRF值也越大。
在另一个实例中,采用调整算法调整GOP中每帧图像的源CRF值,得到目标CRF值,包括:确定判断当前帧所在的编码层;采用以下公式计算GOP中每帧图像的源CRF值,得到目标CRF值:crfframe=crf*deltalevel;其中,crfframe为目标CRF值,crf为源CRF值,deltalevel为偏移量,偏移量与当前帧所在编码层的层级成正相关。
例如,其中层级level与偏移系数delta_level的对应关系为:{第0层:0.95,第1层:1,第2层:1.05,第3/4/.../n层:1.1}等,编码层的层级越高,偏移系数越大,调整后的目标CRF值也越大。
S12,根据目标CRF值计算目标QP值。
基于本实施方式的一个示例中,根据目标CRF值计算目标QP值包括:
计算源视频的基础复杂度Cplx_base和实际复杂度Cplx_frame;
通过以下公式计算基础中间结果:Qscalebase=0.85×2(目标CRF值-12)/6
通过以下公式计算实际中间结果:
Figure BDA0002699688970000091
通过以下公式计算QP值:QPframe=12+6×log2(Qscaleframe/0.85);
其中,Qscalebase为基础中间结果,Qscaleframe为实际中间结果,QPframe为目标QP值,b为第一预设值,可以取值0.6、0.5等。
在本实施例的另一个实施方式中,根据源视频的编码层级结构和源CRF值计算源视频的目标量化参数QP值包括:根据源CRF值计算源QP值;根据源视频的编码层级结构调整源QP值,得到目标QP值。
基于上述实施方式,根据源视频的编码层级结构调整源QP值,得到目标QP值,包括:以源视频的GOP为单位,将当前帧所在的GOP按照参考帧的逻辑顺序划分为多个编码层,其中,每个编码层包括至少一个图像帧;为每个编码层的图像帧分配调整算法;采用调整算法调整GOP中每帧图像的源QP值,得到目标QP值。
在本实施例中,采用调整算法调整GOP中每帧图像的源QP值时,与上述实施方式中采用调整算法调整GOP中每帧图像的源CRF值类似,先确定GOP中每帧所在的编码层,编码层的层级越高,偏移量或偏移系数越大,调整后的目标QP值在源QP值的基础上也越大。
可选的,基于目标QP值对源视频进行恒定视觉质量编码包括:在源视频中提取与目标QP值对应的原始图像帧;基于目标QP值在原始图像帧的像素宏块中删除对应数量的图像信息,得到编码后的图像帧。
在本实施例的一个具体实施场景中,提出了一种结合编码分级结构的CRF模式编码方法:首先利用编码分级结构调整每帧的CRF值,随后结合图像信息来决定最终每帧图像QP的分配。依据每个GOP内的分级结构,调整每帧图像的基础CRF值;(2)对调整后的基础CRF值,再按照每一帧的图像复杂度分配每帧编码的QP值。图4是本发明实施例的编码流程图,如图4所示,包括如下步骤:
步骤1:根据编码分级结构调整每帧CRF值;
如图3所示,为一个GOP内编码的分级结构,将一个GOP内的16帧分成了5层,通常情况下,最底层(第0层:0、16帧)被其他参考帧参考的最多,因此需保证其失真最小,故分配的QP最小;而最上层(第4层:第1、3、...、15帧)的帧完全不会被其他帧参考,故相对来说允许其失真更大,这些帧的QP也最大。
在CRF模式下,按照分级结构,对输入的基础CRF值按每帧的层级结构进行调整,使每帧有各自的CRF值。具体的调整方式包括:
判断当前帧所在的层级level;
当前帧的CRF值调整为输入CRF值加当前层对应的偏移量,如下式:
crfframe=crf+deltalevel
其中,层级level与偏移量delta的对应关系为:{第0层:-1,第1层:0,第2层:1,第3/4/.../n层:2}。
层级与CRF偏移量的具体对应值不用与本实施场景中所设值完全一致,用其他值也能达到类似效果。更进一步,可以将加偏移量的操作改为乘以偏移系数的操作。如crf_frame=crf*delta_level,偏移系数delta_level可以比如为{第0层:0.95,第1层:1,第2层:1.05,第3/4/.../n层:1.1}等。
由上面的对应关系可以看出,delta的取值范围有上下限要求,本实施场景中设置为[-1,2]。需要说明的是,CRF值可以是小数或者整数,因此每一个delta值也可以取小数。
步骤2:利用调整后的CRF值计算每帧QP并进行编码。
步骤1确定了每帧的CRF值,在步骤2中结合每一帧图像的复杂度,计算出每帧图像编码时所使用的QP值,最后开始实际编码。由CRF值计算QP的具体公式如下:
Figure BDA0002699688970000111
Figure BDA0002699688970000112
QPframe=12+6×log2(Qscale'frame/0.85);
其中,crf_frame为步骤1调整后的每帧crf值,Qscale为计算的中间结果,Cplx_base为基础复杂度(一个和分辨率相关的经验值),Cplx_frame为每帧的实际复杂度,Qscale’为考虑了图像复杂度之后的Qscale,QP_frame为最终每一帧编码QP。由公式可知,某一帧的CRF值越大,Qscale越大,Qscale’也越大;或某帧的复杂度越高,Qscale’也会越大;最终该帧的QP也会越大,即编码失真越大,编码码率越低。
本实施例的方案将编码层级结构的QP分配思想引入CRF编码模式,综合利用编码分级结构和图像复杂度信息来分配每帧QP,进一步提升了编码性能。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
实施例2
在本实施例中还提供了一种视频的编码装置,用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图5是根据本发明实施例的一种视频的编码装置的结构框图,如图5所示,该装置包括:获取模块50,计算模块52,编码模块54,其中,
获取模块50,用于获取源视频的源固定码率系数CRF值;
计算模块52,用于根据所述源视频的编码层级结构和所述源CRF值计算所述源视频的目标量化参数QP值,其中,所述编码层级结构用于表征所述源视频的画面组GOP中图像帧的编码参考关系;
编码模块54,用于基于所述目标QP值对所述源视频进行恒定视觉质量编码。
可选的,所述计算模块包括:第一调整单元,用于根据所述源视频的编码层级结构调整所述源CRF值,得到目标CRF值;第一计算单元,用于根据所述目标CRF值计算目标QP值。
可选的,所述第一调整单元包括:划分子单元,用于以所述源视频的GOP为单位,将当前帧所在的GOP按照参考帧的逻辑顺序划分为多个编码层,其中,每个编码层包括至少一个图像帧;分配子单元,用于在预设预设库中为每个编码层的图像帧分配调整算法;调整子单元,用于采用所述调整算法调整所述GOP中每帧图像的源CRF值,得到目标CRF值。
可选的,所述调整子单元还用于:确定判断当前帧所在的编码层;采用以下公式计算所述GOP中每帧图像的源CRF值,得到目标CRF值:crfframe=crf+deltalevel;其中,crfframe为所述目标CRF值,crf为所述源CRF值,deltalevel为偏移量,所述偏移量与当前帧所在编码层的层级成正相关。
可选的,所述调整子单元还用于:确定判断当前帧所在的编码层;采用以下公式计算所述GOP中每帧图像的源CRF值,得到目标CRF值:crfframe=crf*deltalevel;其中,crfframe为所述目标CRF值,crf为所述源CRF值,deltalevel为偏移量,所述偏移量与当前帧所在编码层的层级成正相关。
可选的,所述第一计算单元包括:第一计算子单元,用于计算所述源视频的基础复杂度Cplx_base和实际复杂度Cplx_frame;第二计算子单元,用于通过以下公式计算基础中间结果:Qscalebase=0.85×2(目标CRF值-12)/6;第三计算子单元,用于通过以下公式计算实际中间结果:
Figure BDA0002699688970000131
第四计算子单元,用于通过以下公式计算QP值:QPframe=12+6×log2(Qscaleframe/0.85);其中,Qscalebase为所述基础中间结果,Qscaleframe为所述实际中间结果,QPframe为所述目标QP值,b为第一预设值。
可选的,所述计算模块包括:第二计算单元,用于根据所述源CRF值计算源QP值;第二调整单元,用于根据所述源视频的编码层级结构调整所述源QP值,得到目标QP值。
可选的,所述第二调整单元包括:划分子单元,用于以所述源视频的GOP为单位,将当前帧所在的GOP按照参考帧的逻辑顺序划分为多个编码层,其中,每个编码层包括至少一个图像帧;分配子单元,用于为每个编码层的图像帧分配调整算法;调整子单元,用于采用所述调整算法调整所述GOP中每帧图像的源QP值,得到目标QP值。
可选的,所述编码模块包括:提取单元,用于在所述源视频中提取与所述目标QP值对应的原始图像帧;编码单元,用于基于所述目标QP值在所述原始图像帧的像素宏块中删除对应数量的图像信息,得到编码后的图像帧。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
实施例3
本发明的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取源视频的源固定码率系数CRF值;
S2,根据所述源视频的编码层级结构和所述源CRF值计算所述源视频的目标量化参数QP值,其中,所述编码层级结构用于表征所述源视频的画面组GOP中图像帧的编码参考关系;
S3,基于所述目标QP值对所述源视频进行恒定视觉质量编码。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明的实施例还提供了一种电子设备,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子设备还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,获取源视频的源固定码率系数CRF值;
S2,根据所述源视频的编码层级结构和所述源CRF值计算所述源视频的目标量化参数QP值,其中,所述编码层级结构用于表征所述源视频的画面组GOP中图像帧的编码参考关系;
S3,基于所述目标QP值对所述源视频进行恒定视觉质量编码。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
图6是实施本发明实施例的一种电子设备的结构框图。如图6所示,包括处理器41和用于存储数据的存储器42,通过通信总线44连接,还包括与通信总线44连接的通信接口43,与其他部件或外部设备进行适配连接。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

Claims (12)

1.一种视频的编码方法,其特征在于,包括:
获取源视频的源固定码率系数CRF值;
根据所述源视频的编码层级结构和所述源CRF值计算所述源视频的目标量化参数QP值,其中,所述编码层级结构用于表征所述源视频的画面组GOP中图像帧的编码参考关系;
基于所述目标QP值对所述源视频进行恒定视觉质量编码。
2.根据权利要求1所述的方法,其特征在于,根据所述源视频的编码层级结构和所述源CRF值计算所述源视频的目标量化参数QP值包括:
根据所述源视频的编码层级结构调整所述源CRF值,得到目标CRF值;
根据所述目标CRF值计算目标QP值。
3.根据权利要求2所述的方法,其特征在于,根据所述源视频的编码层级结构调整所述源CRF值,得到目标CRF值,包括:
以所述源视频的GOP为单位,将当前帧所在的GOP按照参考帧的逻辑顺序划分为多个编码层,其中,每个编码层包括至少一个图像帧;
在预设预设库中为每个编码层的图像帧分配调整算法;
采用所述调整算法调整所述GOP中每帧图像的源CRF值,得到目标CRF值。
4.根据权利要求3所述的方法,其特征在于,采用所述调整算法调整所述GOP中每帧图像的源CRF值,得到目标CRF值,包括:
确定判断当前帧所在的编码层;
采用以下公式计算所述GOP中每帧图像的源CRF值,得到目标CRF值:
crfframe=crf+deltalevel
其中,crfframe为所述目标CRF值,crf为所述源CRF值,deltalevel为偏移量,所述偏移量与当前帧所在编码层的层级成正相关。
5.根据权利要求3所述的方法,其特征在于,采用所述调整算法调整所述GOP中每帧图像的源CRF值,得到目标CRF值,包括:
确定判断当前帧所在的编码层;
采用以下公式计算所述GOP中每帧图像的源CRF值,得到目标CRF值:
crfframe=crf*deltalevel
其中,crfframe为所述目标CRF值,crf为所述源CRF值,deltalevel为偏移量,所述偏移量与当前帧所在编码层的层级成正相关。
6.根据权利要求2所述的方法,其特征在于,根据所述目标CRF值计算目标QP值包括:
计算所述源视频的基础复杂度Cplx_base和实际复杂度Cplx_frame;
通过以下公式计算基础中间结果:Qscalebase=0.85×2(目标CRF值-12)/6
通过以下公式计算实际中间结果:
Figure FDA0002699688960000021
通过以下公式计算QP值:QPframe=12+6×log2(Qscaleframe/0.85);
其中,Qscalebase为所述基础中间结果,Qscaleframe为所述实际中间结果,QPframe为所述目标QP值,b为第一预设值。
7.根据权利要求1所述的方法,其特征在于,根据所述源视频的编码层级结构和所述源CRF值计算所述源视频的目标量化参数QP值包括:
根据所述源CRF值计算源QP值;
根据所述源视频的编码层级结构调整所述源QP值,得到目标QP值。
8.根据权利要求7所述的方法,其特征在于,根据所述源视频的编码层级结构调整所述源QP值,得到目标QP值,包括:
以所述源视频的GOP为单位,将当前帧所在的GOP按照参考帧的逻辑顺序划分为多个编码层,其中,每个编码层包括至少一个图像帧;
为每个编码层的图像帧分配调整算法;
采用所述调整算法调整所述GOP中每帧图像的源QP值,得到目标QP值。
9.根据权利要求1所述的方法,其特征在于,基于所述目标QP值对所述源视频进行恒定视觉质量编码包括:
在所述源视频中提取与所述目标QP值对应的原始图像帧;
基于所述目标QP值在所述原始图像帧的像素宏块中删除对应数量的图像信息,得到编码后的图像帧。
10.一种视频的编码装置,其特征在于,包括:
获取模块,用于获取源视频的源固定码率系数CRF值;
计算模块,用于根据所述源视频的编码层级结构和所述源CRF值计算所述源视频的目标量化参数QP值,其中,所述编码层级结构用于表征所述源视频的画面组GOP中图像帧的编码参考关系;
编码模块,用于基于所述目标QP值对所述源视频进行恒定视觉质量编码。
11.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,所述程序运行时执行上述权利要求1至9中任一项所述的方法步骤。
12.一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;其中:
存储器,用于存放计算机程序;
处理器,用于通过运行存储器上所存放的程序来执行权利要求1-9中任一项所述的方法步骤。
CN202011017864.6A 2020-09-24 2020-09-24 视频的编码方法及装置、存储介质、电子设备 Pending CN112165620A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011017864.6A CN112165620A (zh) 2020-09-24 2020-09-24 视频的编码方法及装置、存储介质、电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011017864.6A CN112165620A (zh) 2020-09-24 2020-09-24 视频的编码方法及装置、存储介质、电子设备

Publications (1)

Publication Number Publication Date
CN112165620A true CN112165620A (zh) 2021-01-01

Family

ID=73862800

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011017864.6A Pending CN112165620A (zh) 2020-09-24 2020-09-24 视频的编码方法及装置、存储介质、电子设备

Country Status (1)

Country Link
CN (1) CN112165620A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114222121A (zh) * 2021-12-21 2022-03-22 北京达佳互联信息技术有限公司 视频编码方法、装置、电子设备和计算机可读存储介质
CN114615496A (zh) * 2022-01-28 2022-06-10 阿里巴巴(中国)有限公司 获取量化参数的方法、装置、存储介质及系统
CN114727107A (zh) * 2021-01-04 2022-07-08 北京金山云网络技术有限公司 一种视频处理方法、装置、设备及介质

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070064793A1 (en) * 2005-09-22 2007-03-22 Haohong Wang Two pass rate control techniques for video coding using rate-distortion characteristics
CN101252689A (zh) * 2008-02-29 2008-08-27 杭州爱威芯科技有限公司 一种自适应的码率控制方法
US20080225945A1 (en) * 2007-03-13 2008-09-18 Ping-Hao Wu Constant-quality rate control system and algorithm for regions of interest
CN102932641A (zh) * 2012-11-13 2013-02-13 北京大学 一种恒定质量码率控制方法
CN103841418A (zh) * 2012-11-22 2014-06-04 中国科学院声学研究所 一种3g网络中视频监控器码率控制的优化方法及系统
CN104954793A (zh) * 2015-06-18 2015-09-30 电子科技大学 一种GOP级的QP-Offset设置方法
CN106937112A (zh) * 2017-03-31 2017-07-07 西安电子科技大学 基于h.264视频压缩标准的码率控制方法
CN109618156A (zh) * 2018-11-13 2019-04-12 建湖云飞数据科技有限公司 一种视频编码码率调整方法
CN109819253A (zh) * 2017-11-21 2019-05-28 腾讯科技(深圳)有限公司 视频编码方法、装置、计算机设备和存储介质
CN110198444A (zh) * 2019-04-16 2019-09-03 浙江大华技术股份有限公司 视频帧编码方法、视频帧编码设备及具有存储功能的装置
CN110324622A (zh) * 2018-03-28 2019-10-11 腾讯科技(深圳)有限公司 一种视频编码码率控制方法、装置、设备及存储介质
CN111200734A (zh) * 2018-11-19 2020-05-26 浙江宇视科技有限公司 视频编码方法及装置
CN111263162A (zh) * 2020-02-10 2020-06-09 广州市百果园信息技术有限公司 视频压缩方法、装置、设备及存储介质

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070064793A1 (en) * 2005-09-22 2007-03-22 Haohong Wang Two pass rate control techniques for video coding using rate-distortion characteristics
US20080225945A1 (en) * 2007-03-13 2008-09-18 Ping-Hao Wu Constant-quality rate control system and algorithm for regions of interest
CN101252689A (zh) * 2008-02-29 2008-08-27 杭州爱威芯科技有限公司 一种自适应的码率控制方法
CN102932641A (zh) * 2012-11-13 2013-02-13 北京大学 一种恒定质量码率控制方法
CN103841418A (zh) * 2012-11-22 2014-06-04 中国科学院声学研究所 一种3g网络中视频监控器码率控制的优化方法及系统
CN104954793A (zh) * 2015-06-18 2015-09-30 电子科技大学 一种GOP级的QP-Offset设置方法
CN106937112A (zh) * 2017-03-31 2017-07-07 西安电子科技大学 基于h.264视频压缩标准的码率控制方法
CN109819253A (zh) * 2017-11-21 2019-05-28 腾讯科技(深圳)有限公司 视频编码方法、装置、计算机设备和存储介质
CN110324622A (zh) * 2018-03-28 2019-10-11 腾讯科技(深圳)有限公司 一种视频编码码率控制方法、装置、设备及存储介质
CN109618156A (zh) * 2018-11-13 2019-04-12 建湖云飞数据科技有限公司 一种视频编码码率调整方法
CN111200734A (zh) * 2018-11-19 2020-05-26 浙江宇视科技有限公司 视频编码方法及装置
CN110198444A (zh) * 2019-04-16 2019-09-03 浙江大华技术股份有限公司 视频帧编码方法、视频帧编码设备及具有存储功能的装置
CN111263162A (zh) * 2020-02-10 2020-06-09 广州市百果园信息技术有限公司 视频压缩方法、装置、设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
田一姝;沈强;刘延伟;张宇;赵志军;: "X264的平均比特率控制算法优化", 计算机应用, no. 03, 1 March 2013 (2013-03-01) *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114727107A (zh) * 2021-01-04 2022-07-08 北京金山云网络技术有限公司 一种视频处理方法、装置、设备及介质
CN114727107B (zh) * 2021-01-04 2024-01-23 北京金山云网络技术有限公司 一种视频处理方法、装置、设备及介质
CN114222121A (zh) * 2021-12-21 2022-03-22 北京达佳互联信息技术有限公司 视频编码方法、装置、电子设备和计算机可读存储介质
CN114222121B (zh) * 2021-12-21 2023-11-14 北京达佳互联信息技术有限公司 视频编码方法、装置、电子设备和计算机可读存储介质
CN114615496A (zh) * 2022-01-28 2022-06-10 阿里巴巴(中国)有限公司 获取量化参数的方法、装置、存储介质及系统

Similar Documents

Publication Publication Date Title
JP7461974B2 (ja) クロマ予測方法及びデバイス
US8213498B2 (en) Bitrate reduction techniques for image transcoding
CN112165620A (zh) 视频的编码方法及装置、存储介质、电子设备
CN107846590B (zh) 一种视频编码的方法和视频编码器
US10182235B2 (en) Hardware efficient sparse FIR filtering in layered video coding
CN109413427B (zh) 一种视频帧编码方法及终端
WO2017003525A1 (en) Real-time content-adaptive perceptual quantizer for high dynamic range images
CN107872669A (zh) 视频码率处理方法和装置
WO2016040255A1 (en) Self-adaptive prediction method for multi-layer codec
US11343501B2 (en) Video transcoding method and device, and storage medium
CN105025347B (zh) 一种gop图像组的发送和接收方法
CN113613004A (zh) 图像编码方法、装置、电子设备及存储介质
CN115668915A (zh) 图像编码方法、图像解码方法及相关装置
CN112689148B (zh) 一种云会议中多层视频传输去峰值方法、系统和存储介质
US8681860B2 (en) Moving picture compression apparatus and method of controlling operation of same
WO2019214373A1 (zh) 视频帧的编码单元划分方法、装置、存储介质及电子装置
CN104469400B (zh) 一种基于rfb协议的图像数据压缩方法
CN112040240A (zh) 数据处理方法、设备和存储介质
CN109246431B (zh) 一种基于量化参数配置的视频编码方法、装置和电子设备
CN114222127A (zh) 一种视频编码方法、视频解码方法及装置
CN113691814A (zh) 视频编码方法、装置、电子装置和存储介质
CN116248895B (zh) 虚拟现实全景漫游的视频云转码方法及系统
CN112422967B (zh) 视频的编码方法及装置、存储介质、电子设备
CN112672167B (zh) 视频处理方法、计算机设备和存储介质
CN114125459A (zh) 一种视频的编码方法和装置

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