System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及计算,特别是涉及一种视频编码方法、装置、设备、存储介质和计算机程序产品。
技术介绍
1、随着计算机技术和多媒体技术的迅速发展,视频的分辨率和质量也越来越高,由此,产生了更多的视频数据。为确保视频传输效率,通常需要对视频进行编码。
2、在相关技术中,对于一张视频图像,将视频图像划分为多个帧内编码单元后,对于帧内编码单元,编码器将从多个预设拆分模式中,选取一个模式对帧内编码单元进行划分,具体需要遍历所有拆分模式,计算相应的代价,选择出代价最小的模式为最终的拆分模式,显然,这种方式存在过多低效计算,导致编码效率降低。
技术实现思路
1、基于此,有必要针对上述技术问题,提供一种能够提高编码效率的视频编码方法、装置、设备、存储介质和计算机程序产品。
2、第一方面,本申请提供了一种视频编码方法。所述方法包括:
3、确定帧内编码单元对应的候选拆分模式;
4、针对所述帧内编码单元,计算不拆分模式对应的代价,根据所述代价计算候选拆分模式对应的预估失真代价;
5、针对所述帧内编码单元,分别计算各候选拆分模式对应的预估写码流代价,根据所述预估失真代价与各候选拆分模式对应的预估写码流代价,确定各候选拆分模式对应的预估总代价;
6、当所述不拆分模式对应的代价不超过所述候选拆分模式对应的预估总代价时,跳过相应候选拆分模式对应的率失真代价计算;
7、当所述不拆分模式对应的代价超过所述候选拆分模式对应的预估总代价时,对相
8、按所述最优拆分模式对所述帧内编码单元进行编码块拆分。
9、第二方面,本申请还提供了一种视频编码装置。所述装置包括:
10、拆分模式确定模块,用于确定帧内编码单元对应的候选拆分模式;
11、预估失真代价确定模块,用于针对所述帧内编码单元,计算不拆分模式对应的代价,根据所述代价计算候选拆分模式对应的预估失真代价;
12、预估总代价确定模块,用于针对所述帧内编码单元,分别计算各候选拆分模式对应的预估写码流代价,根据所述预估失真代价与各候选拆分模式对应的预估写码流代价,确定各候选拆分模式对应的预估总代价;
13、跳过模块,用于当所述不拆分模式对应的代价不超过所述候选拆分模式对应的预估总代价时,跳过相应候选拆分模式对应的率失真代价计算;
14、拆分模式选择模块,用于当所述不拆分模式对应的代价超过所述候选拆分模式对应的预估总代价时,对相应的候选拆分模式进行率失真代价计算,根据计算结果从未跳过的候选拆分模式中选择所述帧内编码单元对应的最优拆分模式;
15、拆分模块,用于按所述最优拆分模式对所述帧内编码单元进行编码块拆分。
16、在一些实施例中,所述拆分模式确定模块,用于当所述帧内编码单元满足预设尺寸约束条件时,根据所述帧内编码单元内各个像素点的像素值计算所述帧内编码单元的水平纹理梯度与垂直纹理梯度;根据所述水平纹理梯度与所述垂直纹理梯度,确定所述帧内编码单元的像素纹理方向,所述像素纹理方向为水平方向和垂直方向中的至少一种;根据所述像素纹理方向,从多个预设拆分模式中筛选所述帧内编码单元对应的候选拆分模式。
17、在一些实施例中,所述拆分模式确定模块,还用于获取所述帧内编码单元的像素宽和像素高;根据所述像素宽和所述像素高计算所述帧内编码单元的宽高比与高宽比;若所述宽高比与所述高宽比均小于预设比例,则确定所述帧内编码单元满足预设尺寸约束条件。
18、在一些实施例中,所述拆分模式确定模块,还用于若所述宽高比大于或等于所述预设比例、且所述高宽比小于所述预设比例,则确定所述帧内编码单元不满足预设尺寸约束条件,并从多个预设拆分模式中筛选出垂直方向的预设拆分模式作为所述帧内编码单元对应的候选拆分模式;若所述高宽比大于或等于所述预设比例、且所述宽高比小于所述预设比例,则确定所述帧内编码单元不满足预设尺寸约束条件,并从多个预设拆分模式中筛选出水平方向的预设拆分模式作为所述帧内编码单元对应的候选拆分模式。
19、在一些实施例中,所述拆分模式确定模块,用于确定所述帧内编码单元中各像素点在水平方向上的相邻像素点;计算像素点与相应的相邻像素点之间的水平方向像素差异;对计算出的像素点与相应的相邻像素点之间的水平方向像素差异进行求和,得到所述帧内编码单元的水平纹理梯度。
20、在一些实施例中,所述拆分模式确定模块,用于确定所述帧内编码单元中各像素点在垂直方向上的相邻像素点;计算像素点与相应的相邻像素点之间的垂直方向像素差异;对计算出的像素点与相应的相邻像素点之间的垂直方向像素差异进行求和,得到所述帧内编码单元的垂直纹理梯度。
21、在一些实施例中,所述拆分模式确定模块,用于计算所述水平纹理梯度与所述垂直纹理梯度之间的第一比值,并计算所述垂直纹理梯度与所述水平纹理梯度之间的第二比值;若所述第一比值和所述第二比值均小于预设比值,则确定所述帧内编码单元的像素纹理方向包括水平方向和垂直方向;若所述第一比值小于所述预设比值、且所述第二比值大于或等于所述预设比值,则确定所述帧内编码单元的像素纹理方向为水平方向;若所述第二比值小于所述预设比值、且所述第一比值大于或等于所述预设比值,则确定所述帧内编码单元的像素纹理方向为垂直方向。
22、在一些实施例中,所述拆分模式确定模块,用于若所述像素纹理方向包括水平方向和垂直方向,则将所述多个预设拆分模式均作为所述帧内编码单元对应的候选拆分模式;若所述像素纹理方向为水平方向,则从多个预设拆分模式中筛选出水平方向的预设拆分模式,作为所述帧内编码单元对应的候选拆分模式;若所述像素纹理方向为垂直方向,则从多个预设拆分模式中筛选出垂直方向的预设拆分模式,作为所述帧内编码单元对应的候选拆分模式。
23、在一些实施例中,所述预估失真代价确定模块,用于计算不拆分模式下所述帧内编码单元中各像素点在帧内预测前和帧内预测后的像素差值,基于各所述像素点的像素差值,获得所述不拆分模式对应的失真代价;调用码流代价函数,根据所述不拆分模式对应的模式标识码、所述帧内编码单元的像素高和像素宽,获得所述不拆分模式对应的写码流代价;基于所述不拆分模式对应的失真代价和写码流代价,获得所述不拆分模式对应的代价。
24、在一些实施例中,所述预估失真代价确定模块,用于获取预设的差异预估系数,所述差异预估系数表征所述不拆分模式对应的代价与候选拆分模式对应的失真代价之间的差异;将所述不拆分模式对应的代价和所述差异预估系数的乘积,作为候选拆分模式对应的预估失真代价。
25、在一些实施例中,所述预估总代价确定模块,用于对于每个候选拆分模式,获取按所述候选拆分模式对所述帧内编码单元进行编码块拆分所需的拆分写码流代价,并获取对所述帧内编码单元进行帧内预测时除所述拆分写码流代价以外的本文档来自技高网...
【技术保护点】
1.一种视频编码方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述确定帧内编码单元对应的候选拆分模式,包括:
3.根据权利要求2所述的方法,其特征在于,确定所述帧内编码单元是否满足预设尺寸约束条件的步骤包括:
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
5.根据权利要求2所述的方法,其特征在于,所述根据所述帧内编码单元内各个像素点的像素值计算所述帧内编码单元的水平纹理梯度,包括:
6.根据权利要求2所述的方法,其特征在于,根据所述帧内编码单元内各个像素点的像素值计算所述帧内编码单元的垂直纹理梯度,包括:
7.根据权利要求2所述的方法,其特征在于,所述根据所述水平纹理梯度与所述垂直纹理梯度,确定所述帧内编码单元的像素纹理方向,包括:
8.根据权利要求2所述的方法,其特征在于,所述根据所述像素纹理方向,从多个预设拆分模式中筛选所述帧内编码单元对应的候选拆分模式,包括:
9.根据权利要求1所述的方法,其特征在于,所述针对所述帧内编码单元,计算不拆
10.根据权利要求1所述的方法,其特征在于,所述根据所述代价计算候选拆分模式对应的预估失真代价,包括:
11.根据权利要求1所述的方法,其特征在于,所述分别计算各候选拆分模式对应的预估写码流代价,包括:
12.根据权利要求11所述的方法,其特征在于,所述获取按所述候选拆分模式对所述帧内编码单元进行编码块拆分所需的拆分写码流代价,包括:
13.根据权利要求1所述的方法,其特征在于,所述根据计算结果从未跳过的候选拆分模式中选择所述帧内编码单元对应的最优拆分模式,包括:
14.一种视频编码装置,其特征在于,所述装置包括:
15.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至13中任一项所述的方法的步骤。
16.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至13中任一项所述的方法的步骤。
17.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至13中任一项所述的方法的步骤。
...【技术特征摘要】
1.一种视频编码方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述确定帧内编码单元对应的候选拆分模式,包括:
3.根据权利要求2所述的方法,其特征在于,确定所述帧内编码单元是否满足预设尺寸约束条件的步骤包括:
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
5.根据权利要求2所述的方法,其特征在于,所述根据所述帧内编码单元内各个像素点的像素值计算所述帧内编码单元的水平纹理梯度,包括:
6.根据权利要求2所述的方法,其特征在于,根据所述帧内编码单元内各个像素点的像素值计算所述帧内编码单元的垂直纹理梯度,包括:
7.根据权利要求2所述的方法,其特征在于,所述根据所述水平纹理梯度与所述垂直纹理梯度,确定所述帧内编码单元的像素纹理方向,包括:
8.根据权利要求2所述的方法,其特征在于,所述根据所述像素纹理方向,从多个预设拆分模式中筛选所述帧内编码单元对应的候选拆分模式,包括:
9.根据权利要求1所述的方法,其特征在于,所述针对所述帧内编码单元,计算不拆分模式对应的代价,包括:
...
【专利技术属性】
技术研发人员:赵志远,钟亮,尹基航,王强,吴景然,张贤国,李雅卿,齐洪钢,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。