一种视频编码方法、系统、装置及存储介质与流程
未命名
10-08
阅读:64
评论:0

1.本技术涉及视频编码技术领域,特别是涉及一种视频编码方法、系统、装置及存储介质。
背景技术:
2.在视频的存储、传输过程中,通常需要对视频的图像序列做压缩编码操作,以减少存储容量和传输带宽。h266协议是新一代视频压缩标准,主要面向对象为高清和超高清的视频图像,伴随着h266协议的发布和8k超高清视频处理的日益普及,在编码端进行大尺寸编码块的编码已经越来越普遍。
技术实现要素:
3.有鉴于此,本技术提供了一种视频编码方法、系统、装置及存储介质,本技术提供的视频编码方法、系统、装置及存储介质,通过对待编码块提前预划分多种划分方式,得到每种划分方式对应的率失真代价估计值,再根据每种划分方式对应的率失真代价估计值,从多种划分方式中选择合适的目标划分方式对待编码块进行预测编码,实现的编码效果较佳。
4.本技术提供一种视频编码方法,包括:
5.按照各个划分方式将待编码块划分为编码集,编码集包括多个子编码块,待编码块为编码帧的图像块;
6.对各个划分方式对应的编码集中的多个子编码块进行预测,得到各个划分方式对应的率失真代价估计值,并构建率失真代价估计值集;
7.根据率失真代价估计值集,从各个划分方式中确定待编码块的目标划分方式;
8.基于目标划分方式对待编码块进行预测编码。
9.可选地,根据率失真代价估计值集,从各个划分方式中确定待编码块的目标划分方式,包括:
10.将率失真代价估计值集中的最小值所对应的划分方式,确定为待编码块的目标划分方式。
11.可选地,任意一个编码集中包括多个像素尺寸相同的子编码块,任意两个编码集中的子编码块的像素尺寸不同。
12.可选地,对各个划分方式对应的编码集中的多个子编码块进行预测,得到各个划分方式对应的率失真代价估计值,并构建率失真代价估计值集,包括:
13.从各个划分方式中选择当前划分方式;
14.每选择到当前划分方式时,以与当前的子编码块的像素尺寸相同的预测块为参考,对当前划分方式对应的编码集中的多个子编码块进行预测,得到多个子编码块中每个子编码块的率失真代价估计值,其中,预测块为编码帧对应的参考帧中,位于与待编码块相邻的已编码块对应位置的图像块;
15.根据每个子编码块的率失真代价估计值,得到当前划分方式对应的率失真代价估计值;
16.直至获得各个划分方式对应的率失真代价估计值的情况下,使用各个划分方式分别对应的率失真代价估计值构建率失真代价估计值集;
17.可选地,根据每个子编码块的率失真代价估计值,得到当前划分方式对应的率失真代价估计值,包括:
18.累加当前划分方式下每个子编码块的率失真代价估计值,得到当前划分方式对应的率失真代价估计值。
19.可选地,每选择到当前划分方式时,以与当前的子编码块的像素尺寸相同的预测块为参考,对当前划分方式对应的编码集中的多个子编码块进行预测,得到多个子编码块中每个子编码块的率失真代价估计值,包括:
20.每选择到当前划分方式时,获取作为参考的预测块的参考数据;
21.获取当前划分方式对应的编码集中的其中一个子编码块的原始数据;
22.根据原始数据和参考数据,得到原始数据所属当前子编码块的率失真代价估计值;
23.继续从当前划分方式对应的编码集中,获取剩余的子编码块内一个子编码块的原始数据,并根据新获取的子编码块的原始数据和参考数据,得到新获取的原始数据所属子编码块的率失真代价估计值,直至获取到当前划分方式下多个子编码块中每个子编码块的率失真代价估计值时止。
24.可选地,根据原始数据和参考数据,得到原始数据所属当前子编码块的率失真代价估计值,包括:
25.根据原始数据和参考数据,得到码率和均方差;
26.根据码率和均方差,得到当前子编码块的率失真代价估计值。
27.可选地,根据原始数据和参考数据,得到码率和均方差,包括:
28.根据原始数据和参考数据,得到残差数据;
29.对残差数据进行变换和量化处理,得到量化残差;
30.根据量化残差和原始数据,得到码率;
31.对量化残差进行反量化处理,得到反量化残差;
32.根据反量化残差和参考数据,得到重构数据;
33.根据重构数据和原始数据,得到均方差。
34.本技术还提供一种视频编码系统,包括:
35.划分模块,用于按照各个划分方式将待编码块划分为编码集,编码集包括多个子编码块,待编码块为编码帧的图像块;
36.处理模块,用于对各个划分方式对应的编码集中的多个子编码块进行预测,得到各个划分方式对应的率失真代价估计值,并构建率失真代价估计值集;
37.确定模块,用于根据率失真代价估计值集,从各个划分方式中确定待编码块的目标划分方式;
38.编码模块,用于基于目标划分方式对待编码块进行预测编码。
39.本技术还提供一种视频编码装置,包括:处理器、存储器和通信总线;
40.通信总线,用于实现处理器和存储器之间的连接通信;
41.处理器用于执行存储器中存储的视频编码处理程序,以实现上述任一项视频编码方法的步骤。
42.本技术还提供一种可读存储介质,可读存储介质中存储有计算机可执行指令,计算机可执行指令被处理器加载并执行时,实现上述任一项视频编码方法的步骤。
43.与现有技术相比,本技术提供的一种视频编码方法、系统、装置及存储介质,通过按照各个划分方式将待编码块划分为编码集,编码集包括多个子编码块,待编码块为编码帧的图像块,进而通过对各个划分方式对应的编码集中的多个子编码块进行预测,得到各个划分方式对应的率失真代价估计值,并构建率失真代价估计值集,再根据率失真代价估计值集,从各个划分方式中确定待编码块的目标划分方式,最终基于目标划分方式对待编码块进行预测编码,本技术中,通过对待编码块提前预划分多种划分方式,得到每种划分方式对应的率失真代价估计值,再根据每种划分方式对应的率失真代价估计值,从多种划分方式中选择合适的目标划分方式对待编码块进行预测编码,由此结合率失真代价估计值综合考虑了失真和码率等因素,能够在节约编码资源的同时达到较佳的编码效果。
附图说明
44.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
45.图1为本技术实施例中提供的一种视频编码方法的流程示意图;
46.图2为本技术实施例中提供的一种视频编码系统的结构示意图;
47.图3为本发明实施例中提供的一种视频编码装置的结构示意图。
具体实施方式
48.为了使本领域的技术人员更好地理解本技术中的技术方案,下面将对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
49.需要说明的是,当元件被称为“固定于”或“设置于”另一个元件上,它可以直接在另一个元件上或者间接设置在另一个元件上;当一个元件被称为是“连接于”另一个元件,它可以是直接连接到另一个元件或间接连接至另一个元件上。
50.需要理解的是,术语“长度”、“宽度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本技术和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本技术的限制。
51.此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多该特征。在本技术的描述中,“多个”、“若干个”的含义是两个或两
个以上,除非另有明确具体的限定。
52.须知,本说明书附图所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本技术可实施的限定条件,故不具技术上的实质意义,任何结构的修饰、比例关系的改变或大小的调整,在不影响本技术所能产生的功效及所能达成的目的下,均应仍落在本技术所揭示的技术内容所能涵盖的范围内。
53.如图1所示,本技术实施例提供一种视频编码方法,包括:
54.s1、按照各个划分方式将待编码块划分为编码集,编码集包括多个子编码块,待编码块为编码帧的图像块;
55.本实施例中,待编码块可以是像素尺寸64
×
64的待编码块,也可以是128
×
128的待编码块,划分方式可以是平均划分,也可以是不平均划分。划分方式可以有多种。
56.例如,若待编码块为像素尺寸64
×
64的待编码块,可以按照第一个划分方式将64
×
64的待编码块划分为第一个编码集,第一个编码集包括4个32
×
32的子编码块,也可以按照第二个划分方式将64
×
64的待编码块划分为第二个编码集,第二个编码集包括16个16
×
16的子编码块,,直至得到各个划分方式对应的编码集。
57.s2、对各个划分方式对应的编码集中的多个子编码块进行预测,得到各个划分方式对应的率失真代价估计值,并构建率失真代价估计值集;
58.上述率失真代价估计值即率失真优化代价估计值(rate distortion optimization cost,rdo cost)。本实施例中,可以利用预测块对各个划分方式对应的编码集中的多个子编码块进行预测,得到各个划分方式对应的率失真代价估计值,并使用各个划分方式分别对应的率失真代价估计值构建率失真代价估计值集。
59.本实施例中,预测方式可以采用帧间预测的方式,即预测块可以是待编码块所在的编码帧对应的参考帧中,位于与待编码块相邻的已编码块对应位置的图像块,其中,参考帧可以是与待编码块所在的编码帧相邻的帧,即参考帧可以是编码帧前面的帧或者编码帧后面的帧。
60.预测方式也可以采用帧内预测的方式,即预测块也可以是待编码块所在的编码帧中的已编码图像块。
61.例如可以使用第一个预测块对第一个编码集中的4个32
×
32的子编码块进行预测,由此得到按照32
×
32进行划分时,该划分方式下待编码块所划分的编码集的率失真代价估计值。
62.还可以使用第二个或第一个预测块对第二个编码集中16个16
×
16的子编码块进行预测,由此得到按照16
×
16进行划分时,该划分方式下待编码块所划分的编码集的率失真代价估计值。
63.通过逐个计算得到各个划分方式下对应编码集的率失真代价估计值,可以构建率失真代价估计值集。
64.其中,可以计算得到各个划分方式下每个子编码块的率失真代价估计值,进而根据各个划分方式下各个子编码块的率失真代价估计值,对应得到各个划分方式对应的率失真代价估计值。
65.例如,可以按照不同划分方式,将当前划分方式下每个子编码块的率失真代价估
计值进行累加,对应得到不同划分方式对应的率失真代价估计值。
66.示例性地,可以计算得到4个32
×
32子编码块中每个32
×
32子编码块的率失真代价估计值,再将4个32
×
32子编码块的率失真代价估计值进行累加,得到64
×
64待编码块的第一个划分方式对应的率失真代价估计值。
67.可以使用第二个预测块对第二个编码集中的16个16
×
16的子编码块进行预测,计算得到16个16
×
16子编码块中每个16
×
16子编码块的率失真代价估计值,再将16个16
×
16子编码块的率失真代价估计值进行累加,得到64
×
64待编码块的第二个划分方式对应的率失真代价估计值。
68.直至得到各个划分方式对应的率失真代价估计值,可以使用各个划分方式分别对应的率失真代价估计值构建率失真代价估计值集。
69.本技术中,在为大尺寸的待编码块选择预测编码模式时,只需要先对大尺寸的待编码块进行划分后得到的多个子编码块的率失真代价估计值进行计算,再将计算得到的多个子编码块的率失真代价估计值累加,即可得到大尺寸的待编码块在不同划分方式下的率失真代价估计值,由此有效地降低了大尺寸的待编码块的率失真代价估计值的计算复杂度,进而有利于后续选择目标划分方式,以该目标编码方式实现的预测编码节省了编码器的计算资源和缓存资源,从而有效地提升了编码效率,编码效果较好。
70.需要说明的是,4个子编码块采用的第一预测块可以是同一个预测块也可以是不同的预测块,不同划分方式可以按照划分的子编码块的大小以及不同预测块进行区分。
71.预测块的尺寸可以与当前的子编码的像素尺寸相同,即以第一预测块进行示例,该第一预测块可以是32
×
32的像素块,预测块的尺寸也可以与当前的子编码的像素尺寸不同,如可以采用32
×
1或1
×
32的像素块。
72.s3、根据率失真代价估计值集,从各个划分方式中确定待编码块的目标划分方式;
73.本实施例中,率失真代价估计值中的最小的n个值中的任意一个值所对应的划分方式,确定为目标划分方式,其中n小于多个划分方式的总数量。
74.例如,可以将率失真代价估计值集中的最小值所对应的划分方式,确定为待编码块的目标划分方式,也可以将率失真代价估计值集中的第二小值或者第三小值所对应的划分方式,确定为待编码块的目标划分方式。
75.在本示例中,率失真代价估计值越小,待编码块在预测编码时在一定码率下的失真越小,编码效果越好,因此通过预先形成多种划分方式,并由此预计算得到多种划分方式对应的率失真代价估计值,选择率失真代价估计值集中的较小的值所对应的划分方式,作为待编码块的目标划分方式,能够快速按照目标划分方式获取码率和失真的最优组合点,即确定的目标编码方式所涉及的参数能够兼容失真和码率两个方面,能够在保证编码效果的同时,改善乘法器和缓存资源过大的问题,实现较佳的编码效果。
76.s4、基于目标划分方式对待编码块进行预测编码。
77.本实施例中,可以根据目标划分方式对待编码块进行划分,得到多个子编码块,再使用预测块对每个子编码块进行预测编码。
78.例如,若目标划分方式是平均划分为4个32
×
32的子编码块的划分方式,则将64
×
64的待编码块平均划分为4个32
×
32的子编码块,使用第一个预测块对4个子编码块进行预测编码。
79.若目标划分方式是平均划分为16个16
×
16的子编码块的划分方式,则将64
×
64的待编码块平均划分为16个16
×
16的子编码块,,使用第二个或第一个预测块对16个子编码块进行预测编码。
80.例如,可以获取目标划分方式对应的目标划分参数,该目标划分参数是进行视频编码时,例如基于h.266协议的视频编码时所涉及的相关参数,其中还可以包括对编码块进行划分时的划分大小以及像素尺寸等参数,可以以目标划分参数对待编码块进行预测编码。
81.与现有技术相比,本技术按照各个划分方式将待编码块划分为编码集,编码集包括多个子编码块,待编码块为编码帧的图像块,通过对各个划分方式对应的编码集中的多个子编码块进行预测,得到各个划分方式对应的率失真代价估计值,并构建率失真代价估计值集,再根据率失真代价估计值集,从各个划分方式中确定待编码块的目标划分方式,进而基于目标划分方式对待编码块进行预测编码,由此对待编码块提前预划分多种划分方式,得到每种预先划分方式对应的率失真代价估计值,再根据每种划分方式对应的率失真代价估计值,从多种划分方式中选择合适的目标划分方式对待编码块进行预测编码,综合考虑了rate码率和失真效果等因素,能够节约了面积和编码资源,实现的编码效果较佳。
82.作为一种实施方式,本技术实施例中,步骤s3,包括::将率失真代价估计值集中的最小值所对应的划分方式,确定为待编码块的目标划分方式。
83.本实施例中,通过将率失真代价估计值集中的最小值所对应的划分方式,确定为待编码块的目标划分方式,可以有效地平衡待编码块编码后的失真和码率,有效地保障了编码效果。
84.作为一种实施方式,本技术实施例中,任意一个编码集中包括多个像素尺寸相同的子编码块,任意两个编码集中的子编码块的像素尺寸不同。
85.本实施例中,可以按照多种不同的平均划分方式将待编码块划分为多个编码集,单个编码集中的每个子编码块的像素尺寸均相同,任意一个编码集中的子编码块的数量和像素尺寸和其余任意一个编码集中的子编码块的数量和像素尺寸均不同。
86.例如,若待编码块为像素尺寸64
×
64的待编码块,可以按照第一个划分方式将64
×
64的待编码块平均划分为第一个编码集,第一个编码集包括4个32
×
32的子编码块,按照第二个划分方式将64
×
64的待编码块平均划分为第二个编码集,第二个编码集包括16个16
×
16的子编码块,,按照第三个划分方式将64
×
64的待编码块平均划分为第三个编码集,第三个编码集包括64个8
×
8的子编码块。
87.第一个编码集中的子编码块的像素尺寸均是32
×
32,第二个编码集中的子编码块的像素尺寸均是16
×
16,第三个编码集中的子编码块的像素尺寸均是8
×
8,任意两个编码集如第一个编码集中的子编码块的像素尺寸(32
×
32)和第二个编码集中的子编码块的像素尺寸(16
×
16)、第一个编码集中的子编码块的像素尺寸(32
×
32)和第三个编码集中的子编码块的像素尺寸(8
×
8)、第二个编码集中的子编码块的像素尺寸(16
×
16)和第三个编码集中的子编码块的像素尺寸(8
×
8)均不同。
88.将待编码块平均划分(例如将64
×
64的待编码块平均划分为4个32
×
32的子编码块),相对于非平均划分(例如将64
×
64的待编码块划分为2个32
×
16的子编码块和2个32
×
48的子编码块),平均划分的方式在计算率失真代价估计值的过程中,可以有效地节省计算
量,进一步节省了编码器的计算资源。
89.作为一种实施方式,本技术实施例中,步骤s2,包括:
90.s21、从各个划分方式中选择当前划分方式;
91.本实施例中,可以从各个划分方式中选择一个划分方式作为当前划分方式。
92.例如,从各个划分方式中选择第一个划分方式作为当前划分方式,其中,第一个划分方式为:将64
×
64的待编码块划分为第一个编码集,第一个编码集包括4个32
×
32的子编码块。
93.s22、每选择到当前划分方式时,以与当前的子编码块的像素尺寸相同的预测块为参考,对当前划分方式对应的编码集中的多个子编码块进行预测,得到多个子编码块中每个子编码块的率失真代价估计值,其中,预测块为编码帧对应的参考帧中,位于与待编码块相邻的已编码块对应位置的图像块;
94.本实施例中,每选择到当前划分方式时,可以以编码帧对应的参考帧中位于与待编码块相邻的已编码块对应位置且与当前的子编码块的像素尺寸相同预测块为参考,分别对当前划分方式对应的编码集中的多个子编码块进行预测,得到多个子编码块中每个子编码块的率失真代价估计值。与待编码块相邻的已编码块可以为待编码块的左上角的已编码块。
95.例如,当选择第一个划分方式为当前划分方式时,可以以待编码块所在的编码帧对应的参考帧中,位于与待编码块相邻的尺寸32
×
32已编码块对应位置的32
×
32图像块作为预测块,对第一个编码集中的4个32
×
32的子编码块进行预测,得到4个子编码块中每个子编码块的率失真代价估计值。
96.本实施例中,通过直接使用待编码块所在的编码帧对应的参考帧中位于与待编码块相邻的已编码块对应位置的图像块作为预测块,而不在参考帧进行预测块的搜索,可以有效地节省搜索资源,且由于左上角的已编码块一般与待编码块的像素比较相近,直接使用待编码块的左上角的已编码块在参考帧的预测块,可以在有效地节省搜索资源的同时,使得待编码块编码后的码率降低地更少。
97.s23、根据每个子编码块的率失真代价估计值,得到当前划分方式对应的率失真代价估计值;
98.本实施例中,可以累加当前划分方式下每个子编码块的率失真代价估计值,得到当前划分方式对应的率失真代价估计值。
99.例如,当选择第一个划分方式为当前划分方式时,可以将4个32
×
32子编码块的率失真代价估计值进行累加,得到第一个划分方式对应的率失真代价估计值。
100.本技术中,计算大尺寸待编码块(如64
×
64编码块)的率失真代价估计值可以直接复用小的子编码块(如32
×
32子编码块)的率失真代价估计值的计算单元进行代价计算,将多个小尺寸子编码块的率失真代价估计值进行累加,即可得到大尺寸待编码块的率失真代价估计值,有效地降低了大尺寸的待编码块的率失真代价估计值的计算复杂度,进而节省了编码器的计算资源和缓存资源,从而有效地提升了编码效率。
101.s24、直至获得各个划分方式对应的率失真代价估计值的情况下,使用各个划分方式分别对应的率失真代价估计值构建率失真代价估计值集;
102.作为一种实施方式,本技术实施例中,根据每个子编码块的率失真代价估计值,得
到当前划分方式对应的率失真代价估计值,包括:
103.累加当前划分方式下每个子编码块的率失真代价估计值,得到当前划分方式对应的率失真代价估计值。
104.本实施例中,重复步骤s21至步骤s23,如第一次重复步骤s21至步骤s23得到第二个划分方式对应的率失真代价估计值,第n次重复步骤s21至步骤s23得到第n+1个划分方式对应的率失真代价估计值,,其中,n为大于1的正整数,直至获得各个划分方式对应的率失真代价估计值,在获得各个划分方式对应的率失真代价估计值后,再使用各个划分方式分别对应的率失真代价估计值构建率失真代价估计值集。
105.例如,第一次重复步骤s21至步骤s23,选择第二个划分方式为当前划分方式,其中,第二个划分方式为:将64
×
64的待编码块划分为第二个编码集,第二个编码集包括16个16
×
16的子编码块,以待编码块所在的编码帧对应的参考帧中,位于与待编码块相邻的尺寸16
×
16已编码块对应位置的16
×
16图像块作为预测块,对第二个编码集中的16个16
×
16的子编码块进行预测,得到16个子编码块中每个子编码块的率失真代价估计值,可以将16个16
×
16子编码块的率失真代价估计值进行累加,得到第二个划分方式对应的率失真代价估计值,以此方式得到第n+1个划分方式对应的率失真代价估计值,使用第一个划分方式对应的率失真代价估计值、第二个划分方式对应的率失真代价估计值、第n+1个划分方式对应的率失真代价估计值构建率失真代价估计值集。
106.作为一种实施方式,本技术实施例中,每选择到当前划分方式时,以与当前的子编码块的像素尺寸相同的预测块为参考,对当前划分方式对应的编码集中的多个所述子编码块进行预测,得到多个子编码块中每个子编码块的率失真代价估计值,包括:
107.s221、每选择到当前划分方式时,获取作为参考的预测块的参考数据;
108.本实施例中,预测块可以为编码帧对应的参考帧中,位于与待编码块相邻的已编码块对应位置的图像块,其中预测块的像素尺寸与当前的子编码块的像素尺寸相同,与待编码块相邻的已编码块可以是待编码块左上角的已编码块,每次选择到当前划分方式时,可以获取待编码块左上角的已编码块在参考帧中对应位置且与当前的子编码块的像素尺寸相同的图像块的像素值作为参考数据。
109.例如,当选择第一个划分方式为当前划分方式时,与第一划分方式对应的第一个编码集中的子编码块的像素尺寸为32
×
32的子编码块,可以获取待编码块的左上角的32
×
32已编码块在参考帧中32
×
32的预测块的像素值作为参考数据。
110.由于左上角的已编码块一般与待编码块的像素比较相近,直接使用待编码块的左上角的已编码块在参考帧的预测块,可以在有效地节省搜索资源的同时,使得待编码块编码后的码率降低地更少。
111.s222、获取当前划分方式对应的编码集中的其中一个子编码块的原始数据;
112.本实施例中,原始数据为子编码块的原始像素数据,可以按照一定的顺序获取当前划分方式对应的编码集中的其中一个子编码块的原始像素数据,也可以获取当前划分方式对应的编码集中的任意一个子编码块的原始像素数据。
113.例如,当第一个划分方式为当前划分方式时,当前划分方式中的子编码块包括4个子编码块,4个子编码块包括左上子编码块、右上子编码块、左下子编码块、右下子编码块,可以按照左上子编码块、右上子编码块、左下子编码块、右下子编码块的顺序,可以先获取
左上子编码块的原始像素数据。
114.s223、根据原始数据和参考数据,得到原始数据所属当前子编码块的率失真代价估计值;
115.本实施例中,可以根据原始数据和参考数据计算得到当前子编码块的率失真代价估计值。
116.例如,根据左上子编码块的原始像素数据和参考数据,计算得到左上子编码块的率失真代价估计值。
117.s224、继续从当前划分方式对应的编码集中,获取剩余的子编码块内一个子编码块的原始数据,并根据新获取的子编码块的原始数据和参考数据,得到新获取的原始数据所属子编码块的率失真代价估计值,直至获取到当前划分方式下多个子编码块中每个子编码块的率失真代价估计值时止。
118.本实施例中,继续从当前划分方式对应的编码集中,获取剩余的子编码块内一个子编码块的原始数据,并根据新获取的子编码块的原始数据和参考数据进行计算,得到新获取的原始数据所属子编码块的率失真代价估计值,以此方式重复进行,直至获取到当前划分方式下多个子编码块中每个子编码块的率失真代价估计值为止。
119.例如,继续从第一划分方式对应的第一个编码集中,获取右上子编码块的原始像素数据,并根据右上子编码块的原始像素数据和参考数据进行计算,得到右上子编码块的率失真代价估计值,再继续从第一划分方式对应的第一个编码集中,获取左下子编码块的原始像素数据,并根据左下子编码块的原始像素数据和参考数据进行计算,得到左下子编码块的率失真代价估计值,再继续从第一划分方式对应的第一个编码集中,获取右下子编码块的原始像素数据,并根据右下子编码块的原始像素数据和参考数据进行计算,得到右下子编码块的率失真代价估计值。
120.作为一种实施方式,本技术实施例中,步骤s223,包括:
121.s2231、根据原始数据和参考数据,得到码率和均方差;
122.本实施例中,可以根据原始数据和参考数据,计算得到码率和均方差。
123.s2232、根据码率和均方差,得到当前子编码块的率失真代价估计值。
124.本实施例中,可以综合码率和均方差,即可以给码率和均方差分别赋予权重,计算得到当前子编码块的率失真代价估计值。
125.作为一种实施方式,本技术实施例中,步骤s2231,包括:
126.s22311、根据原始数据和参考数据,得到残差数据;
127.本实施例中,可以将原始数据和参考数据中对应位置的数据相减,计算得到残差数据。
128.s22312、对残差数据进行变换和量化处理,得到量化残差;
129.本实施例中,对残差数据进行变换以及量化处理,计算得到量化残差,该变换可以是离散余弦变换。
130.s22313、根据量化残差和原始数据,得到码率;
131.本实施例中,可以根据量化残差和原始数据,计算得到码率。
132.s22314、对量化残差进行反量化处理,得到反量化残差;
133.本实施例中,可以通过对量化残差进行反量化处理,计算得到反量化残差。
134.s22315、根据反量化残差和参考数据,得到重构数据;
135.本实施例中,可以根据反量化残差和参考数据,计算得到重构数据。
136.s22316、根据重构数据和原始数据,得到均方差。
137.本实施例中,可以根据重构数据和原始数据进行均方差计算,得到均方差。
138.在这些示例中,结合码率和均方差给出了率失真代价估计值的细化计算方式,使得在预测编码时能够结合码率和均方差(sum of squared difference,ssd),综合考虑了预测编码的码率和失真问题,能够在有效地节省搜索资源的同时,使得待编码块编码后的码率降低地更少。
139.如图2所示,本技术还提供一种视频编码系统,包括:
140.划分模块201,用于按照各个划分方式将待编码块划分为编码集,编码集包括多个子编码块,待编码块为编码帧的图像块;
141.处理模块202,用于对各个划分方式对应的编码集中的多个子编码块进行预测,得到各个划分方式对应的率失真代价估计值,并构建率失真代价估计值集;
142.确定模块203,用于根据率失真代价估计值集,从各个划分方式中确定待编码块的目标划分方式;
143.编码模块204,用于基于目标划分方式对待编码块进行预测编码。
144.如图3所示,本技术还提供一种视频编码装置,包括:处理器301、存储器302和通信总线303;
145.通信总线303,用于实现处理器301和存储器302之间的连接通信;
146.处理器301用于执行存储器302中存储的视频编码处理程序,以实现上述任一项视频编码方法的步骤。
147.本技术还提供一种可读存储介质,可读存储介质中存储有计算机可执行指令,计算机可执行指令被处理器加载并执行时,实现上述任一项视频编码方法的步骤。
148.应当理解,本技术中如若使用了“系统”、“装置”、“单元”和/或“模块”,仅是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换该词语。
149.本说明书中各实施例采用递进方式描述,每个实施例重点说明的都是与其他实施例不同之处,各个实施例之间相同或相似部分相互参见即可。
150.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本技术。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本技术的精神或范围的情况下,在其它实施例中实现。因此,本技术将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
技术特征:
1.一种视频编码方法,其特征在于,包括:按照各个划分方式将待编码块划分为编码集,所述编码集包括多个子编码块,所述待编码块为编码帧的图像块;对各个划分方式对应的所述编码集中的多个所述子编码块进行预测,得到各个划分方式对应的率失真代价估计值,并构建率失真代价估计值集;根据所述率失真代价估计值集,从各个所述划分方式中确定所述待编码块的目标划分方式;基于所述目标划分方式对所述待编码块进行预测编码。2.根据权利要求1所述的方法,其特征在于,所述根据所述率失真代价估计值集,从各个所述划分方式中确定所述待编码块的目标划分方式,包括:将所述率失真代价估计值集中的最小值所对应的划分方式,确定为所述待编码块的目标划分方式。3.根据权利要求1或2所述的方法,其特征在于,任意一个所述编码集中包括多个像素尺寸相同的子编码块,任意两个所述编码集中的子编码块的像素尺寸不同。4.根据权利要求1或2所述的方法,其特征在于,所述对各个划分方式对应的所述编码集中的多个所述子编码块进行预测,得到各个划分方式对应的率失真代价估计值,并构建率失真代价估计值集,包括:从各个划分方式中选择当前划分方式;每选择到当前划分方式时,以与当前的子编码块的像素尺寸相同的预测块为参考,对当前划分方式对应的所述编码集中的多个所述子编码块进行预测,得到多个所述子编码块中每个子编码块的率失真代价估计值,其中,所述预测块为所述编码帧对应的参考帧中,位于与所述待编码块相邻的已编码块对应位置的图像块;根据每个所述子编码块的率失真代价估计值,得到当前划分方式对应的率失真代价估计值;直至获得各个划分方式对应的率失真代价估计值的情况下,使用各个划分方式分别对应的率失真代价估计值构建率失真代价估计值集;可选地,所述根据每个所述子编码块的率失真代价估计值,得到当前划分方式对应的率失真代价估计值,包括:累加当前划分方式下每个所述子编码块的率失真代价估计值,得到当前划分方式对应的率失真代价估计值。5.根据权利要求4所述的方法,其特征在于,所述每选择到当前划分方式时,以与当前的子编码块的像素尺寸相同的预测块为参考,对当前划分方式对应的所述编码集中的多个所述子编码块进行预测,得到多个所述子编码块中每个子编码块的率失真代价估计值,包括:每选择到当前划分方式时,获取作为参考的预测块的参考数据;获取当前划分方式对应的编码集中的其中一个所述子编码块的原始数据;根据所述原始数据和所述参考数据,得到所述原始数据所属当前子编码块的率失真代价估计值;继续从当前划分方式对应的编码集中,获取剩余的子编码块内一个子编码块的原始数
据,并根据新获取的子编码块的原始数据和所述参考数据,得到新获取的原始数据所属子编码块的率失真代价估计值,直至获取到当前划分方式下多个子编码块中每个子编码块的率失真代价估计值时止。6.根据权利要求5所述的方法,其特征在于,所述根据所述原始数据和所述参考数据,得到所述原始数据所属当前子编码块的率失真代价估计值,包括:根据所述原始数据和所述参考数据,得到码率和均方差;根据所述码率和均方差,得到当前子编码块的率失真代价估计值。7.根据权利要求6所述的方法,其特征在于,所述根据所述原始数据和所述参考数据,得到码率和均方差,包括:根据所述原始数据和所述参考数据,得到残差数据;对所述残差数据进行变换和量化处理,得到量化残差;根据所述量化残差和所述原始数据,得到码率;对所述量化残差进行反量化处理,得到反量化残差;根据所述反量化残差和所述参考数据,得到重构数据;根据所述重构数据和所述原始数据,得到均方差。8.一种视频编码系统,其特征在于,包括:划分模块,用于按照各个划分方式将待编码块划分为编码集,所述编码集包括多个子编码块,所述待编码块为编码帧的图像块;处理模块,用于对各个划分方式对应的所述编码集中的多个所述子编码块进行预测,得到各个划分方式对应的率失真代价估计值,并构建率失真代价估计值集;确定模块,用于根据所述率失真代价估计值集,从各个所述划分方式中确定所述待编码块的目标划分方式;编码模块,用于基于所述目标划分方式对所述待编码块进行预测编码。9.一种视频编码装置,其特征在于,包括:处理器、存储器和通信总线;所述通信总线,用于实现所述处理器和所述存储器之间的连接通信;所述处理器用于执行所述存储器中存储的视频编码处理程序,以实现如权利要求1-7任一项所述视频编码方法的步骤。10.一种可读存储介质,其特征在于,所述可读存储介质中存储有计算机可执行指令,所述计算机可执行指令被处理器加载并执行时,实现如权利要求1至7任一项所述视频编码方法的步骤。
技术总结
本申请公开了一种视频编码方法、系统、装置及存储介质,方法包括:按照各个划分方式将待编码块划分为编码集,编码集包括多个子编码块,待编码块为编码帧的图像块,通过对各个划分方式对应的编码集中的多个子编码块进行预测,得到各个划分方式对应的率失真代价估计值,并构建率失真代价估计值集,再根据率失真代价估计值集,从各个划分方式中确定待编码块的目标划分方式,进而基于目标划分方式对待编码块进行预测编码。由此对待编码块提前预划分多种划分方式,得到每种划分方式对应的率失真代价估计值,再根据每种划分方式对应的率失真代价估计值,从多种划分方式中选择合适的目标划分方式对待编码块进行预测编码,实现的编码效果较佳。效果较佳。效果较佳。
技术研发人员:禹治祥 邱军 黄建军 刘杰军 陈州辉
受保护的技术使用者:山东岱微电子有限公司
技术研发日:2023.07.04
技术公布日:2023/10/6
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/