一种编码方法、编码器及计算机可读存储介质技术

技术编号:34774919 阅读:23 留言:0更新日期:2022-08-31 19:44
本申请实施例公开了一种编码方法、编码器及计算机可读存储介质,能够提高编码视频的视频质量,该方法包括:当当前帧为待编码视频中的首帧时,在帧间级码率控制过程中,获取当前帧的图像信息;基于当前帧的图像信息,计算当前帧的复杂度累积值;基于当前帧的复杂度累积值,对当前帧进行编码量化估计,得到当前帧的初始量化步长;基于当前帧的初始量化步长,对当前帧进行编码,得到当前帧的编码结果。得到当前帧的编码结果。得到当前帧的编码结果。

【技术实现步骤摘要】
一种编码方法、编码器及计算机可读存储介质
[0001]本申请基于申请号为202010693484.8、申请日为2020年07月17日、申请名称为“一种编码方法、编码器及计算机可读存储介质”的中国专利申请提出,在该中国专利申请记载的范围内提出分案,该中国专利申请的全部内容在此引入本申请作为参考。


[0002]本申请涉及音视频编码领域,尤其涉及一种编码方法、编码器、及计算机可读存储介质。

技术介绍

[0003]视频编码是一种视频压缩技术,是利用视频信息的时域冗余和空域冗余对视频进行压缩的技术,可以达到减小视频占用的存储空间和网络带宽的目的。码率控制是视频编码中的一项关键技术,其目的是在保证视频压缩后所占用比特数一定的情况下使得视频的客观质量最优。量化参数(QuantizationParameter,QP)是视频编码技术中的一个关键参数,直接决定视频编码单元的压缩程度,从而控制视频编码后的码率和视频质量。现有技术中对与量化参数相关的压缩系数的初始值设置,通常采用的是人工预设的方式,无法根据具体视频内容进行信息反馈,实现自适应调整,从而容易造成对首帧编码时设置的QP不合理,导致即时解码刷新(Instantaneous Decoding Refresh,IDR)帧的码率浪费,从而降低了视频质量。

技术实现思路

[0004]本申请实施例期望提供一种编码方法、编码器及计算机可读存储介质,能够提高编码视频的视频质量。
[0005]本申请的技术方案是这样实现的:
[0006]第一方面,本申请实施例提供了一种编码方法,应用于编码器,包括:
[0007]当当前帧为待编码视频中的首帧时,在帧间级码率控制过程中,获取当前帧的图像信息;
[0008]基于所述当前帧的图像信息,计算当前帧的复杂度累积值;
[0009]基于所述当前帧的复杂度累积值,对所述当前帧进行编码量化估计,得到所述当前帧的初始量化步长;
[0010]基于所述当前帧的初始量化步长,对所述当前帧进行编码,得到所述当前帧的编码结果。
[0011]第二方面,本申请实施例提供了一种编码器,包括:获取单元、计算单元、量化单元与编码单元,其中,
[0012]所述获取单元,用于当当前帧为待编码视频中的首帧时,在帧间级码率控制过程中,获取当前帧的图像信息;
[0013]所述计算单元,用于基于所述当前帧的图像信息,计算当前帧的复杂度累积值;
[0014]所述量化单元,用于基于所述当前帧的复杂度累积值,对所述当前帧进行编码量化估计,得到所述当前帧的初始量化步长;
[0015]所述编码单元,用于基于所述当前帧的初始量化步长,对所述当前帧进行编码,得到所述当前帧的编码结果。
[0016]第三方面,本申请实施例提供了一种编码器,包括:
[0017]存储器,用于存储可执行数据指令;
[0018]处理器,用于执行所述存储器中存储的可执行指令时,实现如上述任一种所述的编码方法。
[0019]第四方面,本申请实施例提供了一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行时,实现如上述任一种所述的编码方法。
[0020]本申请实施例提供了一种编码方法、编码器及计算机可读存储介质,方法包括:当当前帧为待编码视频中的首帧时,在帧间级码率控制过程中,获取当前帧的图像信息;基于当前帧的图像信息,计算当前帧的复杂度累积值;基于当前帧的复杂度累积值,对当前帧进行编码量化估计,得到当前帧的初始量化步长;基于当前帧的初始量化步长,对当前帧进行编码,得到当前帧的编码结果。通过本申请实施例中的方法,可以通过首帧的图像信息预估首帧的复杂度,并基于实际视频中首帧的复杂度进行QP值的合理设置,使得基于合理QP值进行的视频编码能够得到更准确的编码结果,最终提高了编码视频的视频质量。
附图说明
[0021]图1为目前的X.264编码系统的编码流程图;
[0022]图2为本申请实施例提供的一种编码方法的流程图一;
[0023]图3为本申请实施例提供的一种编码流程图一;
[0024]图4为本申请实施例提供的一种编码流程图二;
[0025]图5为本申请实施例提供的宏块级码率控制过程的一种实现方式;
[0026]图6为本申请实施例提供的宏块级码率控制过程的另一种实现方式;
[0027]图7为本申请实施例提供的一种编码方法的流程图二;
[0028]图8为本申请实施例提供的一种编码方法的流程图三;
[0029]图9为本申请实施例提供的一种编码方法的流程图四;
[0030]图10为本申请实施例提供的一种编码方法的流程图五;
[0031]图11为本申请实施例提供的一种编码器的组成结构示意图一
[0032]图12为本申请实施例提供的一种编码器的组成结构示意图二。
具体实施方式
[0033]下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
[0034]对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。
[0035]1)H.264:高度压缩数字视频编解码器标准。
[0036]2)X.264:开源H.264视频编码函数库。
[0037]3)SATD:Sum of Absolute Transformed Difference,残差经哈德曼变换的4
×
4块的预测残差绝对值总和,是一种简单的时频变换,用来反映生成码流的大小。
[0038]4)QP:量化参数,即量化步长。QP的值越小,量化步长越小,量化的精度就越高,意味着同样画质的情况下,产生的数据量可能会更大。
[0039]5)VBV:Video Buffering Verifier,视频缓存检验器,用于确保输出的编码码流在接收端不会发生缓冲区下溢。
[0040]6)AQ:Adaptive Quantization,自适应量化。
[0041]7)MB:Macro Block,宏块。
[0042]8)RCEQ:Rate

Control Equation,速率控制公式,RCEQ建立了一种运动复杂度到量化步长的映射模型。
[0043]9)PSNR:Peak Signal to Noise Ratio,峰值信噪比,用于评价图像画质的客观量测法。
[0044]H.264采用拉格朗日代价函数来控制编码,这也是H.264编码复杂度较高的主要原因之一,X.264作为H.264的应用版本,采用半精度帧的SATD作为QP选择的主要依据。X.264码率控制过程分为帧间级码率控制过程和宏块级码率控制过程,其中,每一帧QP值的分配由帧间级码率控制来实现,而每一帧帧内的QP值的分配由宏块级码率控制来实现。X.264码率控制过程主要取决于两个变量,其一为视频帧的复杂度,其二本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种编码方法,应用于编码器,其特征在于,包括:在帧间级码率控制过程中,基于当前帧的复杂度累积值,对所述当前帧进行编码量化估计,得到所述当前帧的初始量化步长;在宏块级码率控制中,对所述当前帧进行宏块划分后,获取每个宏块的内容复杂度;基于所述每个宏块的内容复杂度,将所述当前帧划分为至少一个区域,并确定所述至少一个区域中每个区域对应的预设量化强度因子;根据所述每个区域对应的预设量化强度因子,对所述初始量化步长进行调整,得到所述每个区域对应的量化步长;根据所述每个区域对应的量化步长,对所述当前帧的各个区域进行编码,得到所述当前帧的编码结果。2.根据权利要求1所述的方法,其特征在于,所述基于所述每个宏块的内容复杂度,将所述当前帧划分为至少一个区域,包括:根据所述每个宏块的内容复杂度和预设复杂度阈值,对所述当前帧进行区域划分,得到所述至少一个区域。3.根据权利要求1所述的方法,其特征在于,所述确定所述至少一个区域中的每个区域的预设量化强度因子,包括:根据所述每个区域包含的宏块的内容复杂度,确定所述每个区域的区域复杂度;根据区域复杂度与预设量化强度因子的预设对应关系,确定出所述每个区域的预设量化强度因子;所述预设量化强度因子与区域复杂度成反比。4.根据权利要求1

3任一项所述的方法,其特征在于,所述基于所述当前帧的复杂度累积值,对所述当前帧进行编码量化估计,得到所述当前帧的初始量化步长之前,所述方法还包括:当所述当前帧为待编码视频中的首帧时,在帧间级码率控制过程中,获取当前帧的图像信息;基于所述当前帧的图像信息,计算所述当前帧的复杂度累积值。5.根据权利要求4所述的方法,其特征在于,所述图像信息包括首帧的平均宏块能量、首帧的梯度值、首帧的边缘信息及首帧的直方图信息中的任一种。6.根据权利要求5所述的方法,其特征在于,所述图像信息为所述首帧的平均宏块能量,所述基于所述当前帧的图像信息,计算当前帧的复杂度累积值,包括:根据所述平均宏块能量、预设首帧编码比特与至少一个预设拟合因子对所述当前帧进行复杂度评估,得到所述当前帧的预估编码复杂度;所述至少一个预设拟合因子用于拟合所述平均宏块能量与初始量化步长之间的关系曲线;基于所述预估编码复杂度,计算所述当前帧的复杂度累积值。7.根据权利要求6所述的方法,其特征在于,所述根据所述平均宏块能量、预设首帧编码比特与至少一个预设拟合因子对所述当前帧进行复杂度评估,得到所述当前帧的预估编码复杂度,包括:将所述平均宏块能量乘以第一拟合因子,得到第一乘积结果;将所述预设首帧编码比特乘以第二拟合因子,得到第二乘积结果;计算所述第一乘积结果减去所述第二乘积结果的差值,并将所述差值与第三拟合因子
相加,得到所述预估编码复杂度;其中,所述至少一个预设拟合因子包含所述第一拟合因子、所述第二拟合因子与所述第三拟合因子。8.根据权利要求6所述的方法,其特征在于,所述获取当前帧的图像信息,包括:在宏块级码率控制过程中,对所述当前帧进行宏块划分,得到至少一个宏块;计算所述至少一个宏块的平均宏块能量。9.根据权利要求8所述的方法,其特征在于,所述基于所述预估编码复杂度,计算所述当前帧的复杂度累...

【专利技术属性】
技术研发人员:谭皓
申请(专利权)人:OPPO广东移动通信有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1