图像预测方法、编码器、解码器以及存储介质
1.本技术是申请日为2020年05月15日,申请号为2020800443802,发明名称为“图像预测方法、编码器、解码器及存储介质”的申请的分案申请。
技术领域
2.本技术实施例涉及视频编解码技术领域,尤其涉及的是一种图像预测方法、编码器、解码器以及存储介质。
背景技术:3.在多功能视频编码(versatile video coding,vvc)的参考软件测试平台中,一种新的帧内编码技术,基于矩阵的帧内预测(matrix-based intra prediction,mip)被提出,mip是基于神经网络的帧内预测技术,即利用多层神经网络基于相邻已重建亮度块预测当前块的亮度值。具体地,与传统帧内模式相同,在利用mip模式进行帧内预测时,mip预测的输入也为当前块的上一行和左一列相邻亮度块的数据,输出为当前块的亮度分量的预测值。具体的预测过程分为三步:下采样,矩阵向量乘法和插值。
4.然而,由于mip模式的复杂度较高,因此mip技术在提高编解码性能的同时,编解码过程中所需要的存储空间和整体时间也大大增加,从而降低了编解码效率。
技术实现要素:5.本技术实施例提供一种图像预测方法、编码器、解码器以及存储介质,能够在保证编解码性能的基础上,降低复杂程度,减小编解码过程中所需要的存储空间和整体时间,有效地提高编解码效率。
6.本技术实施例的技术方案是这样实现的:
7.第一方面,本技术实施例提供了一种图像预测方法,应用于编码器,所述方法包括:
8.若当前块使用mip模式确定所述当前块的帧内预测值,则将mip模式参数的取值设置为指示使用mip模式并写入码流;
9.确定所述当前块的mip模式,并根据所述mip模式确定所述当前块对应的亮度分量和色度分量的预测值;
10.将所述当前块的mip模式写入码流。
11.第二方面,本技术实施例提供了一种图像预测方法,应用于解码器,所述方法包括:
12.解析码流,确定当前块的mip模式参数;
13.若所述mip模式参数的取值指示所述当前块使用mip模式确定所述当前块的帧内预测值,解析所述码流,确定所述当前块的mip模式,并根据所述mip模式确定所述当前块对应的亮度分量和色度分量的预测值;
14.根据所述预测值,对所述当前块进行解码。
15.第三方面,本技术实施例提供了一种编码器,所述编码器包括:设置部分,第一确定部分以及编码部分,
16.所述设置部分,配置为若当前块使用mip模式确定所述当前块的帧内预测值,则将mip模式参数的取值设置为指示使用mip模式并写入码流;
17.所述第一确定部分,配置为确定所述当前块的mip模式,并根据所述mip模式确定所述当前块对应的亮度分量和色度分量的预测值;
18.所述编码部分,配置为将所述当前块的mip模式写入码流。
19.第四方面,本技术实施例提供了一种编码器,所述编码器包括第一处理器、存储有所述第一处理器可执行指令的第一存储器,当所述指令被所述第一处理器执行时,实现如上所述的图像预测方法。
20.第五方面,本技术实施例提供了一种解码器,所述解码器包括:解码部分,第二确定部分,
21.所述解码部分,配置为解析码流,确定当前块的mip模式参数;以及若所述mip模式参数的取值指示所述当前块使用mip模式确定所述当前块的帧内预测值,解析码流,确定当前块的mip模式;
22.所述第二确定部分,配置为根据所述mip模式确定所述当前块对应的亮度分量和色度分量的预测值;
23.所述解码部分,还配置为根据所述预测值,对所述当前块进行解码。
24.第六方面,本技术实施例提供了一种解码器,所述解码器包括第二处理器、存储有所述第二处理器可执行指令的第二存储器,当所述指令被所述第二处理器执行时,实现如上所述的图像预测方法。
25.第七方面,本技术实施例提供了一种计算机可读存储介质,其上存储有程序,应用于编码器和解码器中,所述计算机程序被第一处理器执行时实现如上所述的图像预测方法,或者,被第二处理器执行时实现如上所述的图像预测方法。
26.本技术实施例提供了一种图像预测方法、编码器、解码器以及存储介质,若当前块使用mip模式确定当前块的帧内预测值,则编码器将mip模式参数的取值设置为指示使用mip模式并写入码流;确定当前块的mip模式,并根据mip模式确定当前块对应的亮度分量和色度分量的预测值;将当前块的mip模式写入码流。解码器解析码流,确定当前块的mip模式参数;若mip模式参数的取值指示当前块使用mip模式确定当前块的帧内预测值,解析码流,确定当前块的mip模式,并根据mip模式确定当前块对应的亮度分量和色度分量的预测值;根据预测值,对当前块进行解码。也就是说,在本技术的实施例中,编码器在对当前块进行帧内预测时,如果确定当前块使用mip模式,便可以在使用mip模式获得当前块的帧内预测值的同时,设置mip模式参数并写入码流中传输至解码侧;解码器解析码流获得mip模式参数,如果mip模式参数指示当前块使用mip模式,那么解码器便可以使用mip模式确定当前块的帧内预测值。由此可见,本技术提出的图像预测方法,可以利用语法单元在码流中对当前块是否使用mip模式进行指示,从而可以简化图像预测过程,能够在保证编解码性能的基础上,降低复杂程度,减小编解码过程中所需要的存储空间和整体时间,有效地提高编解码效率。
附图说明
27.图1为帧内预测中的67种预测模式的排布示意图;
28.图2为mip模式进行编码的流程示意图;
29.图3为当前块的上侧相邻亮度块和左侧相邻亮度块的排布示意图;
30.图4为确定dm模式的排布示意图;
31.图5为视频编码系统的结构示意图;
32.图6为视频解码系统的结构示意图;
33.图7为图像预测方法的实现流程示意图一;
34.图8为图像预测方法的实现流程示意图二;
35.图9为本技术实施例提出的编码器的组成结构示意图一;
36.图10为本技术实施例提出的编码器的组成结构示意图二;
37.图11为本技术实施例提出的解码器的组成结构示意图一;
38.图12为本技术实施例提出的解码器的组成结构示意图二。
具体实施方式
39.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述。可以理解的是,此处所描述的具体实施例仅仅用于解释相关申请,而非对该申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关申请相关的部分。
40.目前,通信版方面的建议(itu-t)和由国际标准化组织(iso)/国际电工委员会(iec)启动了一项名为通用视频编码vvc的标准化项目以开发新一代视频编码标准,其目的是在对具有高分辨率、高帧率、高位深、高动态范围、宽色域和全向视角中的一个或多个特征的高质量视频进行编码时,与最新的h.265/hevc标准相比,vvc性能提高大约50%,jvet负责该标准化项目,各种帧内预测模式和帧间预测模式已被验证在对高质量视频进行编码时实现高压缩效率,因此在vvc工作草案中被采纳。
41.在视频图像中,vvc接受了联合视频专家组(joint video experts team,jvet)-n0217中提出的仿射线性权重帧内预测技术(affine linear weighted intra prediction),并更名为基于矩阵的帧内预测,即mip技术,该技术针对帧内亮度编码块大小的不同,在帧内亮度预测过程中增加了不同数量的基于矩阵的帧内预测模式。
42.为了捕捉自然视频中呈现的更精细的边缘方向,vvc中将视频压缩标准(high efficiency video coding,hevc)中定义的33种帧内亮度预测角度模式扩展到了65种,图1为帧内预测中的67种预测模式的排布示意图,如图1所示,箭头编号为2-66的表示65种帧内角度预测模式,另外还有两种非角度模式,即编号为0的渐变平坦planar模式和编号为1的直流dc模式;所以,vvc中的帧内预测过程中包含两种非角度模式和65种角度模式,这里,将这67种预测模式称为帧内预测的传统模式。
43.mip是基于神经网络的帧内预测技术,即利用多层神经网络基于相邻已重建像素预测当前块的亮度值。具体地,mip技术根据帧内亮度编码块的大小将亮度编码块分为三类,设亮度编码块大小为w
×
h,其中,w为宽度参数,h为高度参数,按照亮度编码块的大小可以将亮度编码块分为三类:
44.大小为4
×
4的亮度编码块为第一类亮度块,大小为8
×
4,4
×
8和8
×
8的亮度编码
块为第二类亮度块,其他大小的亮度编码块为第三类亮度块。
45.针对这三种类型的帧内亮度编码块,mip技术在67种传统帧内预测模式的基础上增加了m种mip模式,其中,针对第一类亮度块,m=16,针对第二类亮度块,m=8,针对第三类亮度块,m=6。
46.具体来说,mip技术只应用于帧内亮度预测,与传统模式相同,mip预测的输入也为当前块的上一行和左一列数据,输出为当前块的预测值,具体的预测过程分为三步:平均,矩阵向量乘法和插值。也就是说,通过对输入的上一行和左一列相邻像素点的重建亮度值进行这三步操作,就可以得到当前块的亮度分量的预测值。
47.图2为mip模式进行编码的流程示意图,如图2所示,mip模式进行亮度预测的具体实现如下:
48.第一步:对当前块的上侧相邻参考点进行平均操作获得向量bdry
top
,共n个值;对当前块的左侧相邻参考点进行平均操作获得向量bdry
left
,共n个值。当当前亮度编码为第一类亮度编码时,n=2;当当前亮度编码为第二类或第三类亮度编码时,n=4。向量bdry
top
和向量bdry
left
组成一个新的向量bdry
red
并进行后续操作;
49.第二步:通过mip模式的模式号k获取对应的矩阵ak和偏移量bk,通过下列公式(1)计算获得如图2中用交叉线标识的当前块的部分预测值:
50.pred
red
=ak·
bdry
red
+bkꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
51.第三步:通过线性插值,获得当前块中剩余的预测值pred
red
。
52.需要说明的是,针对当前块进行编码的实现过程,需要将帧内预测具体使用的哪一种编码模式写入到压缩码流中,从而使解码端通过解析该模式信息,可以确定具体使用哪一种模式,是传统模式还是mip模式;若是传统模式,具体是哪一种传统模式;若是mip模式,具体是哪一种mip模式。
53.在vvc的帧内预测中,对每个亮度编码块都会进行67个传统模式和m个mip模式的率失真代价rdcost比较,在67个传统模式和m个mip模式中选出最优模式并进行编码。为了节省比特开销,vvc中使用了基于最可能模式列表(most probable modes list,mpm)的帧内模式编码技术。
54.需要注意的是,由于多参考行技术(extend reference line)和帧内子块划分技术(itra sub-patitionar,isp)只对mpm列表中的模式使用,所以当extendrefflag和ispflag都为0,即使用0参考行且不进行子块划分时,不必编码mpmflag,直接编码最优模式在mpm列表中的位置。
55.进一步地,针对mpm列表和mipmpm列表的构造来说,在vvc亮度帧内预测中,若当前块选中的最优模式是传统模式,则需要构造包含6个最可能传统模式的mpm列表;若当前块选中的最优模式是mip模式,则需要构造包含3个最可能mip模式的mipmpm列表。
56.图3为当前块的上侧相邻亮度块和左侧相邻亮度块的排布示意图,如图3所示,上述两个列表都是根据如图3所示的当前块的上侧相邻亮度块(a)和左侧相邻亮度块(l)的最优模式进行推导的。
57.具体来说,针对mpm列表的构造来说,在vvc帧内预测中,若当前块的最优模式是传统模式,则需要构造mpm列表。构造mpm列表的过程中,首先需要获取上侧相邻亮度块最优模式所对应的传统模式above和左侧相邻亮度块最优模式所对应的传统模式left。
58.进一步地,针对mipmpm列表的构造来说,在vvc帧内预测中,若当前块的最优模式是mip模式,则需要构造mipmpm列表。构造mipmpm列表的过程中,首先需要获取上侧相邻亮度块的最优模式所对应的mip模式above_mip和左侧相邻亮度块的最优模式所对应的mip模式left_mip模式。
59.进一步地,在获取到left_mip和above_mip之后,按照如下方法进行包含3个最可能mipmpm模式的mipmpm列表的构造,其中,mipmpm中的编号为mip模式的编号,编号范围为0至(m-1),对于第一类亮度块编号为0-15;对于第二类亮度块编号为0-7;对于第三类亮度块编号为0-5:
60.若left_mip可用(不为-1),将left_mip放入mipmpmlist中;
61.若above_mip可用(不为-1),将above_mip通过冗余检查后放入mipmpmlist中;
62.若left_mip不可用(为-1),above_mip不可用(为-1),根据当前块的类型将默认列表通过冗余检查后添入直到补满mipmpmlist:
63.进一步地,需要补充的是,在vvc的色度帧内预测过程中有一种利用分量间相关性的直接模式(direct mode,dm),会使用当前块对应的同位亮度编码块的中心位置的帧内预测模式来进行当前色度块的帧内预测,图4为确定dm模式的排布示意图,如图4所示,由于mip技术只应用于亮度编码块,所以当图4中cr位置的帧内预测模式为mip模式时,需要将该mip模式通过“mip-传统映射表”映射为传统模式,进行当前色度块的帧内预测。
64.由于mip技术所需要的计算负担和存储成本,在计算能力相对较低的,或存储能力较小的设备上很难实现mip模式。因此,在最新的vvc工作草案设计中并不能对mip模式进行有效的传递和控制,导致难以在柔性编解码实现和动态视频流中实施。
65.为了克服上述缺陷,在本技术的实施例中,编码器在对当前块进行帧内预测时,如果确定当前块使用mip模式,便可以在使用mip模式获得当前块的帧内预测值的同时,设置mip模式参数并写入码流中传输至解码侧;解码器解析码流获得mip模式参数,如果mip模式参数指示当前块使用mip模式,那么解码器便可以使用mip模式确定当前块的帧内预测值。也就是说,在本技术中,vvc比特流传递一个或多个语法元素以启用或禁用mip模式。语法元素可位于视频序列层、图片层和/或子图片层、切片/图块/砖块层中的数据单元中,其中子图片指的是覆盖图片的一部分的区域。由此可见,本技术提出的图像预测方法,可以利用语法单元在码流中对当前块是否使用mip模式进行指示,从而可以简化mip模式的图像预测过程,能够在保证编解码性能的基础上,降低复杂程度,减小编解码过程中所需要的存储空间和整体时间,有效地提高编解码效率。
66.图5为视频编码系统的结构示意图,如图5所示,该视频编码系统100包括变换与量化模块101、帧内估计模块102、帧内预测模块103、运动补偿模块104、运动估计模块105、反变换与反量化模块106、滤波器控制分析模块107、去方块滤波及样本自适应缩进(sample adaptive 0ffset,sao)滤波模块108、头信息编码及基于上下文的自适应二进制算术编码(context-based adaptive binary arithmatic coding,cabac)编码模块109和解码图像缓存模块110等部件;图6为视频解码系统的结构示意图,如图6所示,该视频解码系统200包括头信息解码及cabac解码模块201、反变换与反量化模块202、帧内预测模块203、运动补偿模块204、去方块滤波及sao滤波模块205和解码图像缓存模块206等部件。视频图像经过视频编码系统100中变换与量化模块101、帧内估计模块102、帧内预测模块103、运动补偿模块
104、运动估计模块105、去方块滤波及sao滤波模块108以及头信息编码及cabac模块109等部分处理之后,输出该视频图像的码流;该码流输入视频解码系统200中,经过视频解码系统200中头信息解码及cabac解码模块201、反变换与反量化模块202、帧内预测模块203以及运动补偿模块204等部分处理,最终恢复出原来的视频图像。
67.本技术所提出的图像预测方法,可以影响编解码过程中的熵编码过程和熵解码过程,示例性的,本技术所提出的图像预测方法可以在图5所示视频编码系统的结构中的109位置应用,还可以在图6所示视频解码系统的结构中的201位置应用。
68.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述。
69.本技术的一实施例提出一种图像预测方法,应用于编码器中,图7为图像预测方法的实现流程示意图一,如图7所示,在本技术中,编码器进行图像预测的方法可以包括以下步骤:
70.步骤101、若当前块使用mip模式确定当前块的帧内预测值,则将mip模式参数的取值设置为指示使用mip模式并写入码流。
71.在本技术的实施例中,如果对当前块使用mip模式进行当前块的帧内预测值的确定,那么编码器便可以将mip模式参数的取值设置为指示使用mip模式并写入码流。其中,当前块可以表征当前待编码块或者当前待解码块,具体地,在本技术中,编码器在进行编码时,当前块即为待编码块。
72.进一步地,在本技术的实施例中,编码器在对当前块进行编码时,可以在传统模式和mip模式中先对最优编码方式进行选择。
73.需要说明的是,在本技术的实施例中,在vvc的帧内预测过程中,对于任意一个亮度编码块,都可以在传统模式和mip模式中选择一个最优模式进行编码处理。其中,传统模式为包括有编号为0的planar模式、编号为1的dc模式以及65种角度模式的67种帧内预测模式。
74.进一步地,在本技术的实施例中,编码器在进行最优模式的选择时,可以对当前块进行67个传统模式和m个mip模式的rdcost比较,从而可以根据比较结果选出最优模式并进行编码。其中,基于当前块的尺寸类型,m的取值也不相同,具体地,当当前块为第一类亮度块,即当前块大小为4
×
4时,m=16;当当前块为第二类亮度块,即当前块大小为8
×
4,4
×
8或8
×
8时,m=8;当当前块为第三类亮度块,即当前块为其他大小时,m=6。
75.可以理解的是,在本技术的实施例中,如果编码器确定使用mip模式确定当前块的帧内预测值,那么编码器便可以将mip模式参数的取值设置为指示使用mip模式并写入码流。也就是说,编码器可以使用语法单元对当前块是否使用mip模式进行指示,即mip模式参数用于指示当前块是否使用mip模式。
76.示例性的,在本技术的实施例中,编码器在确定使用mip模式确定当前块的帧内预测值之后,可以将mip模式参数的取值设置为1,并写入码流中,从而便可以指示当前块使用mip模式。
77.进一步地,在本技术的实施例中,如果编码器确定不使用mip模式确定当前块的帧内预测值,那么编码器便可以将mip模式参数的取值设置为指示不使用mip模式并写入码流。
78.示例性的,在本技术的实施例中,编码器在确定不使用mip模式确定当前块的帧内预测值之后,可以将mip模式参数的取值设置为0,并写入码流中,从而便可以指示当前块不使用mip模式。
79.进一步地,在本技术的实施例中,编码器在完成对mip模式参数的取值的设置之后,可以在码流中以一个或多个语法单元指示mip模式参数。也就是说,编码器在根据当前块是否使用mip模式完成对mip模式参数的设置之后,可以在码流中以一个或多个语法单元指示mip模式参数。
80.可以理解的是,在本技术的实施例中,指示mip模式参数的语法单元可以包含在以下码流中的一个或多个数据单元中:包含当前块的数据单元,分片头信息数据单元,图像头信息数据单元,图像层参数集,序列层参数集以及自适应参数集。
81.需要说明的是,在本技术的实施例中,由于码流中的包含当前块的数据单元,分片头信息数据单元,图像头信息数据单元,图像层参数集,序列层参数集以及自适应参数集中的一个或多个数据单元可以指示mip模式参数,因此,编码器设置的mip模式参数可以与其相适应。
82.示例性的,在本技术中,如果编码器将mip模式参数写入序列层参数集(sequence paramater set,sps)中,则可以通过sps_mip_enable_flag指示mip模式参数,因此解码器解析码流中的序列层参数集的数据单元之后,可以确定mip模式参数sps_mip_enable_flag。
83.示例性的,在本技术中,如果编码器将mip模式参数写入图片层参数集(picture paramater set,pps)中,则可以通过pps_mip_enable_flag指示mip模式参数,因此解码器解析码流中的图片层参数集的数据单元之后,可以确定mip模式参数pps_mip_enable_flag。
84.示例性的,在本技术中,如果编码器将mip模式参数写入自适应参数集(adaptive parameter set,aps)中,则可以通过aps_mip_enable_flag指示mip模式参数,因此解码器解析码流中的自适应参数集的数据单元之后,可以确定mip模式参数aps_mip_enable_flag。
85.示例性的,在本技术中,如果编码器将mip模式参数写入分片头信息数据单元中,则可以通过slice_mip_enable_flag指示mip模式参数,因此解码器解析码流中的分片头信息数据单元的数据单元之后,可以确定mip模式参数slice_mip_enable_flag。
86.步骤102、确定当前块的mip模式,并根据mip模式确定当前块对应的亮度分量和色度分量的预测值。
87.在本技术的实施例中,如果对当前块使用mip模式进行当前块的帧内预测值的确定,那么编码器便可以进一步确定当前块的mip模式,然后根据mip模式确定当前块对应的亮度分量和色度分量的预测值。
88.可以理解的是,在本技术的实施例中,编码器在确定当前块对应的mip模式时,可以先确定当前块的尺寸类型;然后基于尺寸类型构造候选mip模式列表;最后可以从候选mip模式列表中确定当前块的mip模式。
89.进一步地,在本技术的实施例中,根据当前块的大小可以将当前块分为三种尺寸类型,其中,如果当前块的大小为w
×
h,其中,w为宽度参数,h为高度参数,那么,可以将大小
为4
×
4的当前块确定为第一类亮度块,即确定当前块的尺寸类型为第一类型;还可以将大小为8
×
4,4
×
8和8
×
8的当前块确定为第二类亮度块,即确定当前块的尺寸类型为第二类型;也可以将其他大小的当前块确定为第三类亮度块,即确定当前块的尺寸类型为第三类型。
90.可以理解的是,在本技术中,按照高度参数和宽度参数,当前块可以为25种尺寸,具体地,标准中规定亮度块最大为128
×
128,但由于变换单元的最大尺寸为64
×
64,也就是说,亮度块在128
×
128的尺寸下必定需要先进行四叉树划分,因此最大的亮度块尺寸是64
×
64。表1为亮度块的尺寸示意表,如表1所示,
91.表1
92.(4
×
4)(4
×
8)(4
×
16)(4
×
32)(4
×
64)(8
×
4)(8
×
8)(8
×
16)(8
×
32)(8
×
64)(16
×
4)(16
×
8)(16
×
16)(16
×
32)(16
×
64)(32
×
4)(32
×
8)(32
×
16)(32
×
32)(32
×
64)(64
×
4)(64
×
8)(64
×
16)(64
×
32)(64
×
64)
93.目前,根据当前块的高度参数和宽度参数对mip模式进行限制,具体地,如果当前块的宽高比大于4,或者高宽比大于4,则不使用mip模式对当前块进行编码,表2为mip模式下亮度块尺寸的限制,如表2所示,
94.表2
[0095][0096]
也就是说,在本技术中,编码器在确定当前块的尺寸类型时,如果当前块的宽度和高度均等于4,即当前块的大小为4
×
4,便可以将当前块的尺寸类型设置为第一类型;如果当前块的宽度和高度均等于8,即当前块的大小为8
×
8,或者当前块的宽度等于8且高度等于4,即当前块的大小为8
×
4,或者当前块的宽度等于4且高度等于8,即当前块的大小为4
×
8,便可以将当前块的尺寸类型设置为第二类型;如果当前块的宽度和高度不满足前述条件即当前块的大小不为4
×
4、8
×
8、8
×
4、4
×
8,便可以将当前块的尺寸类型设置为第三类型。
[0097]
进一步地,在本技术的实施例中,根据目前标准中所提出的尺寸类型的划分方式,编码器在确定当前块的尺寸类型时,如果当前块的宽度和高度均等于4,则可以将当前块的尺寸类型设置为第一类型;如果当前块的宽度和高度均等于8,或者,当前块的宽度和高度之一等于4,则可以将当前块的尺寸类型设置为第二类型;如果当前块的宽度和高度不满足
前述条件,即当前块的宽度和高度不同时等于4或8,或者,当前块的宽度和高度均不等于4,则可以将所述当前块的尺寸类型设置为所述第三类型。
[0098]
需要说明的是,在本技术的实施例中,对于不同的尺寸类型,编码器可以构建不同的候选mip模式列表,具体地,mip技术在67种传统帧内预测模式的基础上增加了m种mip模式,其中,对于不同的尺寸类型,m的取值也是不同的。其中,m的取值可以包括16、8、6。
[0099]
示例性的,在本技术中,当当前块的尺寸类型为第一类型时,m取值为16,即可以根据16种mip模式构造候选mip模式列表;当当前块的尺寸类型为第二类型时,m取值为8,即可以根据8种mip模式构造候选mip模式列表;当当前块的尺寸类型为第三类型时,m取值为6,即可以根据6种mip模式构造候选mip模式列表。
[0100]
进一步地,在本技术的实施例中,编码器在根据当前块的尺寸类型完成候选mip模式列表的构建之后,便可以从候选mip模式列表中确定出当前块使用的mip模式,从而可以利用mip模式对当前块进行图像预测处理,获得当前块的帧内预测值。
[0101]
可以理解的是,在本技术的实施例中,编码器在构建当前块对应的候选mip模式列表之后,可以从候选mip模式列表中选择一种mip模式,然后使用该mip模式确定当前块对应的亮度分量和色度分量的预测值。
[0102]
具体地,在本技术的实施例中,编码器可以先从候选mip模式列表中读取mip模式的模式号k,从而可以获取对应的矩阵ak和偏移量bk,以根据上述公式(1)进行矩阵向量乘法,从而可以获得当前块对应的亮度分量预测值。
[0103]
需要说明的是,在本技术的实施例中,编码器在从候选mip模式列表中确定当前块的mip模式之后,可以根据当前块的mip模式进一步设置当前块的mip模式索引序号,并将mip模式索引序号写入码流中。
[0104]
可以理解的是,在本技术中,当前块的mip模式索引序号可以用于对当前块使用的、具体的mip模式进行指示。也就是说,编码侧,编码器设置当前块的mip模式索引序号并写入码流之后,传输至解码侧,解码器通过解析码流获得的当前块的mip模式索引序号,便可以从当前块的候选mip模式列表中确定出mip模式索引序号所指示的mip模式。
[0105]
步骤103、将当前块的mip模式写入码流。
[0106]
在本技术的实施例中,编码器在确定当前块的mip模式,并根据mip模式确定当前块对应的亮度分量和色度分量的预测值之后,可以将当前块的mip模式写入码流。
[0107]
也就是说,在本技术中,针对当前块进行编码的实现过程中,编码器不仅需要将当前块是否使用mip模式写入到压缩码流中,还需要将具体使用哪一种模式写入码流中,例如,在使用mip模式进行帧内预测时,具体是使用哪一种mip模式。
[0108]
本技术实施例提出了一种图像预测方法,若当前块使用mip模式确定当前块的帧内预测值,则编码器将mip模式参数的取值设置为指示使用mip模式并写入码流;确定当前块的mip模式,并根据mip模式确定当前块对应的亮度分量和色度分量的预测值;将当前块的mip模式写入码流。也就是说,在本技术的实施例中,编码器在对当前块进行帧内预测时,如果确定当前块使用mip模式,便可以在使用mip模式获得当前块的帧内预测值的同时,设置mip模式参数并写入码流中传输至解码侧;解码器解析码流获得mip模式参数,如果mip模式参数指示当前块使用mip模式,那么解码器便可以使用mip模式确定当前块的帧内预测值。由此可见,本技术提出的图像预测方法,可以利用语法单元在码流中对当前块是否使用
mip模式进行指示,从而可以简化图像预测过程,能够在保证编解码性能的基础上,降低复杂程度,减小编解码过程中所需要的存储空间和整体时间,有效地提高编解码效率。
[0109]
基于上述实施例,本技术的再一实施例提出了一种图像预测方法,编码器在确定使用mip模式对当前块的帧内预测值进行预测时,可以将用于指示当前块是否使用mip模式的mip模式参数写入码流中的一个或多个语法元素中。也就是说,在本技术中,vvc比特流传递一个或多个语法元素以启用或禁用mip模式。语法元素可位于视频序列层、图片层和/或子图片层、切片/图块/砖块层中的数据单元中,其中子图片指的是覆盖图片的一部分的区域。
[0110]
示例性的,在本技术中,编码器可以确定在对视频序列进行编码时是否使用mip模式。其中,熵编码单元可以对与该视频序列中的所有切片相关的参数集中的标志进行编码。表3中展示了语法结构在序列参数集(sps)中的实现的实施例,其中u(1)表示已在vvc工作草案中详细说明的熵编码方法。
[0111]
表3
[0112]
……
descriptorsps_mip_enable_flagu(1)
……ꢀ
[0113]
基于上述表3,当编码器确定在对输入视频序列进行编码时不应用mip模式时,熵编码单元可以将sps_mip_enable_flag设置成等于0并将该值写入与该视频序列中的切片(间接)相关的sps中;当编码器确定在对输入视频序列中的一个或多个切片进行编码时应用mip模式时,熵编码单元可以将sps_mip_enable_flag设置成等于1并将该值写入与该视频序列中的切片(间接)相关的sps中。
[0114]
也就是说,在本技术中,编码器在完成对mip模式参数sps_mip_enable_flag的取值的设置之后,可以在码流中以一个或多个语法单元指示mip模式参数。即编码器在根据当前块是否使用mip模式完成对mip模式参数sps_mip_enable_flag的设置之后,可以将mip模式参数sps_mip_enable_flag写入码流中的序列层参数集中。
[0115]
示例性的,在本技术中,编码器可以确定在对视频序列中的图片或图片中的子图片进行编码时是否使用mip模式。熵编码单元可以对与该图片或子图片中的所有切片相关的参数集中的标志进行编码。在表4中展示了语法结构在图片层参数集(pps)中的实现的实施例,其中u(1)表示已在vvc工作草案中详细说明的熵编码方法。
[0116]
表4
[0117]
……
descriptorpps_mip_enable_flagu(1)
……ꢀ
[0118]
基于上述表4,当编码器确定在对图片或子图片进行编码时不应用mip模式时,熵编码单元可以将pps_mip_enable_flag设置成等于0并将该值写入与图片或子图片中的切片相关的pps中;当编码器确定在对图片或子图片中的一个或多个切片进行编码时应用mip模式时,熵编码单元可以将pps_mip_enable_flag设置成等于1并将该值写入与图片或子图片中的切片(间接)相关的pps中。
[0119]
也就是说,在本技术中,编码器在完成对mip模式参数pps_mip_enable_flag的取
值的设置之后,可以在码流中以一个或多个语法单元指示mip模式参数。即编码器在根据当前块是否使用mip模式完成对mip模式参数pps_mip_enable_flag的设置之后,可以将mip模式参数pps_mip_enable_flag写入码流中的图片层参数集中。
[0120]
示例性的,在本技术中,编码器可以确定在对视频序列中的图片或图片中的子图片进行编码时是否使用mip模式。熵编码单元可以对与该图片或子图片中的所有切片相关的参数集中的标志进行编码。在表5中展示了语法结构在自适应参数集(aps)中的实现的实施例,其中u(1)表示已在vvc工作草案中详细说明的熵编码方法。
[0121]
表5
[0122]
……
descriptoraps_mip_enable_flagu(1)
……ꢀ
[0123]
基于上述表5,当编码器确定在对图片或子图片进行编码时不应用mip模式时,熵编码单元可以将aps_mip_enable_flag设置成等于0并将该值写入与图片或子图片中的切片相关的aps中;当编码器确定在对图片或子图片中的一个或多个切片进行编码时应用mip模式时,熵编码单元可以将aps_mip_enable_flag设置成等于1并将该值写入与图片或子图片中的切片(间接)相关的aps中。
[0124]
也就是说,在本技术中,编码器在完成对mip模式参数aps_mip_enable_flag的取值的设置之后,可以在码流中以一个或多个语法单元指示mip模式参数。即编码器在根据当前块是否使用mip模式完成对mip模式参数aps_mip_enable_flag的设置之后,可以将mip模式参数aps_mip_enable_flag写入码流中的自适应参数集中。
[0125]
表6
[0126]
……
descriptorslice_mip_enable_flagu(1)
……ꢀ
[0127]
示例性的,在本技术中,编码器可以确定在对切片进行编码时是否使用mip模式。熵编码单元可以对切片标头中的标志进行编码。在表6中展示了语法结构在切片标头中的实现的实施例,其中u(1)表示已在vvc工作草案中详细说明的熵编码方法。
[0128]
基于上述表6,当编码器确定在对切片进行编码时不应用mip模式时,熵编码单元可以将slice_mip_enable_flag设置成等于0并将该值写入切片标头中;当编码器确定在对切片进行编码时应用mip模式时,熵编码单元可以将slice_mip_enable_flag设置成等于1并将该值写入切片标头中。
[0129]
也就是说,在本技术中,编码器在完成对mip模式参数slice_mip_enable_flag的取值的设置之后,可以在码流中以一个或多个语法单元指示mip模式参数。即编码器在根据当前块是否使用mip模式完成对mip模式参数slice_mip_enable_flag的设置之后,可以将mip模式参数slice_mip_enable_flag写入码流中的分片头信息数据单元中。
[0130]
示例性的,在本技术中,在对图块或砖块进行编码时,编码器对是否使用mip模式的确定,熵编码单元可以将类似的mip模式参数写入表示图片或子图片的图块或砖块的分割的参数集中,作为其一部分。可选地,熵编码单元还可将类似的mip模式参数写入与该切片中的图块或砖块相关的切片数据中,以指示在对图块或砖块进行编码时是否使用mip模
式。
[0131]
示例性的,在本技术中,编码器可确定在对视频序列中的图片或子图片的一部分进行编码时应用mip模式。熵编码单元可以将sps中的sps_mip_enable_flag编码成1,将与图片或子图片中的切片相关的、pps中的pps_mip_enable_flag或aps中的aps_mip_enable_flag编码成1,同时将与视频序列中的其它图片或子图片相关的、pps中的pps_mip_enable_flag或aps中的aps_mip_enable_flag编码成0。可选地,熵编码单元可将图片或子图片中的切片中的slice_mip_enable_flag(或切片数据中的图块或砖块的类似的mip模式参数)编码成1,以及将其它图片或子图片中的切片中的slice_mip_enable_flag(或切片数据中的图块或砖块的类似的mip模式参数)编码成0。
[0132]
示例性的,在本技术中,编码器还可以隐含地传递mip模式是否用于对其它语法元素(例如,指示比特流或子比特流的一个或多个参数集中的档次/等级/水平(ptl)的语法元素)中的视频序列进行编码。例如,编码器在一个或多个ptl中mip模式被设置成禁用,在其它ptl中mip模式被设置成启用。
[0133]
可以理解的是,在本技术中,当编码器给比特流传递了当前块使用mip模式进行编码的指示时,相应地,解码器可使用mip模式对比特流进行解码。
[0134]
本技术实施例提出了一种图像预测方法,若当前块使用mip模式确定当前块的帧内预测值,则编码器将mip模式参数的取值设置为指示使用mip模式并写入码流;确定当前块的mip模式,并根据mip模式确定当前块对应的亮度分量和色度分量的预测值;将当前块的mip模式写入码流。也就是说,在本技术的实施例中,编码器在对当前块进行帧内预测时,如果确定当前块使用mip模式,便可以在使用mip模式获得当前块的帧内预测值的同时,设置mip模式参数并写入码流中传输至解码侧;解码器解析码流获得mip模式参数,如果mip模式参数指示当前块使用mip模式,那么解码器便可以使用mip模式确定当前块的帧内预测值。由此可见,本技术提出的图像预测方法,可以利用语法单元在码流中对当前块是否使用mip模式进行指示,从而可以简化图像预测过程,能够在保证编解码性能的基础上,降低复杂程度,减小编解码过程中所需要的存储空间和整体时间,有效地提高编解码效率。
[0135]
基于上述实施例,本技术的一实施例提出一种图像预测方法,应用于解码器中,图8为图像预测方法的实现流程示意图二,如图8所示,在本技术中,解码器进行图像预测的方法可以包括以下步骤:
[0136]
步骤201、解析码流,确定当前块的mip模式参数。
[0137]
在本技术的实施例中,解码器解析码流,确定当前块的mip模式参数。其中,当前块可以表征当前待编码块或者当前待解码块,具体地,在本技术中,解码器在进行解码时,当前块即为待解码块。
[0138]
可以理解的是,在本技术的实施例中,解码器可以解析码流中的一个或多个语法单元,从而确定当前块的mip模式参数。也就是说,在本技术中,可以在码流中以一个或多个语法单元指示mip模式参数。
[0139]
进一步地,在本技术的实施例中,指示mip模式参数的语法单元可以包含在以下码流中的一个或多个数据单元中:包含当前块的数据单元,分片头信息数据单元,图像头信息数据单元,图像层参数集,序列层参数集以及自适应参数集。
[0140]
需要说明的是,在本技术的实施例中,mip模式参数用于对当前块是否使用mip模
式进行指示。具体地,如果mip模式参数指示使用mip模式,则解码器可以使用mip模式确定当前块的帧内预测值,如果mip模式参数指示不使用mip模式,则解码器不会使用mip模式确定当前块的帧内预测值。
[0141]
进一步地,在本技术的实施例中,解码器在解析码流确定mip模式参数之后,可以根据mip模式参数的取值确定当前块是否使用mip模式。
[0142]
示例性的,在本技术的实施例中,解码器在确定mip模式参数之后,如果mip模式参数的取值为1,便可以指示当前块使用mip模式,那么解码器便可以使用mip模式确定当前块的帧内预测值。
[0143]
示例性的,在本技术的实施例中,解码器在确定mip模式参数之后,如果mip模式参数的取值为0,便可以指示当前块不使用mip模式,那么解码器便不会使用mip模式确定当前块的帧内预测值。
[0144]
需要说明的是,在本技术的实施例中,由于码流中的包含当前块的数据单元,分片头信息数据单元,图像头信息数据单元,图像层参数集,序列层参数集以及自适应参数集中的一个或多个数据单元可以指示mip模式参数,因此,解码器解析获得的mip模式参数可以与其相适应。
[0145]
示例性的,在本技术中,如果编码器将mip模式参数写入序列层参数集中,则可以通过sps_mip_enable_flag指示mip模式参数,因此解码器解析码流中的序列层参数集的数据单元之后,可以确定mip模式参数sps_mip_enable_flag。
[0146]
示例性的,在本技术中,如果编码器将mip模式参数写入图片层参数集中,则可以通过pps_mip_enable_flag指示mip模式参数,因此解码器解析码流中的图片层参数集的数据单元之后,可以确定mip模式参数pps_mip_enable_flag。
[0147]
示例性的,在本技术中,如果编码器将mip模式参数写入自适应参数集中,则可以通过aps_mip_enable_flag指示mip模式参数,因此解码器解析码流中的自适应参数集的数据单元之后,可以确定mip模式参数aps_mip_enable_flag。
[0148]
示例性的,在本技术中,如果编码器将mip模式参数写入分片头信息数据单元中,则可以通过slice_mip_enable_flag指示mip模式参数,因此解码器解析码流中的分片头信息数据单元的数据单元之后,可以确定mip模式参数slice_mip_enable_flag。
[0149]
步骤202、若mip模式参数的取值指示当前块使用mip模式确定当前块的帧内预测值,解析码流,确定当前块的mip模式,并根据mip模式确定当前块对应的亮度分量和色度分量的预测值。
[0150]
在本技术的实施例中,解码器在解析码流,确定当前块的mip模式参数之后,如果mip模式参数的取值指示当前块使用mip模式确定当前块的帧内预测值,解码器便可以继续解析码流,确定当前块的mip模式,然后根据mip模式确定当前块对应的亮度分量和色度分量的预测值。
[0151]
可以理解的是,在本技术的实施例中,解码器在解析码流,确定当前块的mip模式参数之后,如果mip模式参数的取值指示不使用mip模式确定当前块的帧内预测值,解码器便不会对当前块使用mip模式。
[0152]
也就是说,在本技术中,针对当前块进行解码的实现过程中,解码器解析码流,不仅可以获得指示当前块是否使用mip模式的mip模式参数,还可以确定当前块具体使用哪一
种模式进行帧内预测,例如,在使用mip模式进行帧内预测时,具体是使用哪一种mip模式。
[0153]
进一步地,在本技术的实施例中,在vvc的帧内预测过程中,对于任意一个亮度编码块,都可以在传统模式和mip模式中选择一个最优模式进行编码处理。其中,传统模式为包括有编号为0的planar模式、编号为1的dc模式以及65种角度模式的67种帧内预测模式。
[0154]
需要说明的是,在本技术的实施例中,解码器在使用mip模式进行当前块的帧内预测值的确定时,可以通过解析码流进一步确定当前块的mip模式,然后根据mip模式确定当前块对应的亮度分量和色度分量的预测值。
[0155]
可以理解的是,在本技术的实施例中,解码器在解析所述码流,确定所述当前块的mip模式时,可以先通过解析码流,获得当前块的mip模式索引序号,然后在确定当前块的尺寸类型之后,从与尺寸类型对应的候选mip模式列表中,将mip模式索引序号指示的mip模式确定为当前块的mip模式。
[0156]
进一步地,在本技术的实施例中,当前块的mip模式索引序号可以用于对当前块使用的、具体的mip模式进行指示。也就是说,编码侧,编码器设置当前块的mip模式索引序号并写入码流之后,传输至解码侧,解码器通过解析码流获得的当前块的mip模式索引序号,便可以从当前块的候选mip模式列表中确定出mip模式索引序号所指示的mip模式。
[0157]
需要说明的是,在本技术的实施例中,解码器在确定当前块的mip模式时,可以先确定当前块的尺寸类型。具体地,基于上述表2,解码器在确定当前块的尺寸类型时,如果当前块的宽度和高度均等于4时,即当前块的大小为4
×
4,便可以将当前块的尺寸类型设置为第一类型;如果当前块的宽度和高度均等于8,即当前块的大小为8
×
8,或者当前块的宽度等于8且高度等于4,即当前块的大小为8
×
4,或者当前块的宽度等于4且高度等于8,即当前块的大小为4
×
8,便可以将当前块的尺寸类型设置为第二类型;如果当前块的宽度和高度不满足前述条件时,即当前块的大小不为4
×
4、8
×
8、8
×
4、4
×
8,便可以将当前块的尺寸类型设置为第三类型。
[0158]
进一步地,在本技术的实施例中,根据目前标准中所提出的尺寸类型的划分方式,编码器在确定当前块的尺寸类型时,如果当前块的宽度和高度均等于4,则可以将当前块的尺寸类型设置为第一类型;如果当前块的宽度和高度均等于8,或者,当前块的宽度和高度之一等于4,则可以将当前块的尺寸类型设置为第二类型;如果当前块的宽度和高度不满足前述条件,即当前块的宽度和高度不同时等于4或8,或者,当前块的宽度和高度均不等于4,则可以将所述当前块的尺寸类型设置为所述第三类型。
[0159]
可以理解的是,在本技术的实施例中,对于不同的尺寸类型,解码器可以构建不同的候选mip模式列表,具体地,mip技术在67种传统帧内预测模式的基础上增加了m种mip模式,其中,对于不同的尺寸类型,m的取值也是不同的。其中,m的取值可以包括16、8、6。
[0160]
示例性的,在本技术中,当当前块的尺寸类型为第一类型时,m取值为16,即可以根据16种mip模式构造候选mip模式列表;当当前块的尺寸类型为第二类型时,m取值为8,即可以根据8种mip模式构造候选mip模式列表;当当前块的尺寸类型为第三类型时,m取值为6,即可以根据6种mip模式构造候选mip模式列表。
[0161]
示例性的,在本技术的实施例中,解码器可以先从候选mip模式列表中读取mip模式的模式号k,从而可以获取对应的矩阵ak和偏移量bk,以根据上述公式(1)进行矩阵向量乘法,从而可以获得当前块对应的亮度分量预测值。
[0162]
步骤203、根据预测值,对当前块进行解码。
[0163]
在本技术的实施例中,解码器在解析码流确定当前块的mip模式,并根据mip模式确定当前块对应的亮度分量和色度分量的预测值之后,便可以根据亮度分量和色度分量的预测值对当前块进行解码。
[0164]
本技术实施例提出了一种图像预测方法,解码器解析码流,确定当前块的mip模式参数;若mip模式参数的取值指示当前块使用mip模式确定当前块的帧内预测值,解析码流,确定当前块的mip模式,并根据mip模式确定当前块对应的亮度分量和色度分量的预测值;根据预测值,对当前块进行解码。也就是说,在本技术的实施例中,编码器在对当前块进行帧内预测时,如果确定当前块使用mip模式,便可以在使用mip模式获得当前块的帧内预测值的同时,设置mip模式参数并写入码流中传输至解码侧;解码器解析码流获得mip模式参数,如果mip模式参数指示当前块使用mip模式,那么解码器便可以使用mip模式确定当前块的帧内预测值。由此可见,本技术提出的图像预测方法,可以利用语法单元在码流中对当前块是否使用mip模式进行指示,从而可以简化图像预测过程,能够在保证编解码性能的基础上,降低复杂程度,减小编解码过程中所需要的存储空间和整体时间,有效地提高编解码效率。
[0165]
基于上述实施例,本技术的又一实施例提出了一种图像预测方法,解码器解析码流,可以获得用于指示当前块是否使用mip模式来确定当前块的预测值的一个或多个语法元素。进一步地,在本技术中,解码器解析获得的一个或多个语法元素,可以指示在对视频序列、一个或多个图片、切片、图块或砖块进行解码时是否使用mip模式。也就是说,在本技术中,vvc比特流传递一个或多个语法元素以启用或禁用mip模式。语法元素可位于视频序列层、图片层和/或子图片层、切片/图块/砖块层中的数据单元中,其中子图片指的是覆盖图片的一部分的区域。
[0166]
示例性的,在本技术中,解码器可以从与视频序列中的所有切片相关的参数集获得mip模式参数。具体地,解码器可以从sps获得mip模式参数。如上述表3中展示了语法结构在sps中的实现的实施例,其中u(1)表示已在vvc工作草案中详细说明的熵解码方法。
[0167]
当解码器确定mip模式参数sps_mip_enable_flag的值等于0时,解码器将在对与该sps(间接)相关的切片进行解码时不使用mip模式;当解码器确定mip模式参数sps_mip_enable_flag的值等于1时,解码器在对与该sps(间接)相关的切片进行解码时应用mip模式。
[0168]
也就是说,在本技术中,解码器在解析码流中的序列层参数集之后,可以确定mip模式参数sps_mip_enable_flag,然后可以根据mip模式参数sps_mip_enable_flag的取值确定当前块是否使用mip模式进行解码处理。
[0169]
示例性的,在本技术中,解码器可以从与视频序列中的图片或子图片中的所有切片相关的参数集获得mip模式参数。具体地,解码器可以从pps获得mip模式参数。如上述表4中展示了语法结构在pps中的实现的实施例,其中u(1)表示已在vvc工作草案中详细说明的熵解码方法。
[0170]
当解码器确定mip模式参数pps_mip_enable_flag的值等于0时,解码器将在对与该pps相关的切片进行解码时不使用mip模式;当解码器确定mip模式参数pps_mip_enable_flag的值等于1时,解码器在对与该pps相关的切片进行解码时应用mip模式。
[0171]
也就是说,在本技术中,解码器在解析码流中的图片层参数集之后,可以确定mip模式参数pps_mip_enable_flag,然后可以根据mip模式参数pps_mip_enable_flag的取值确定当前块是否使用mip模式进行解码处理。
[0172]
示例性的,在本技术中,解码器可以从与视频序列中的图片或子图片中的所有切片相关的参数集获得mip模式参数。具体地,解码器可以从aps获得mip模式参数。如上述表5中展示了语法结构在自适应参数集aps中的实现的实施例,其中u(1)表示已在vvc工作草案中详细说明的熵解码方法。
[0173]
当解码器确定mip模式参数aps_mip_enable_flag的值等于0时,解码器将在对与该aps相关的切片进行解码时不使用mip模式;当解码器确定mip模式参数aps_mip_enable_flag的值等于1时,解码器在对与该aps相关的切片进行解码时应用mip模式。
[0174]
也就是说,在本技术中,解码器在解析码流中的自适应参数集之后,可以确定mip模式参数aps_mip_enable_flag,然后可以根据mip模式参数aps_mip_enable_flag的取值确定当前块是否使用mip模式进行解码处理。
[0175]
示例性的,在本技术中,解码器可以从切片标头获得mip模式参数。如上述表6中展示了语法结构在切片标头中的实现的实施例,其中u(1)表示已在vvc工作草案中详细说明的熵解码方法。
[0176]
当解码器确定mip模式参数slice_mip_enable_flag的值等于0时,解码器将在对该切片进行解码时不使用mip模式;当解码器确定mip模式参数slice_mip_enable_flag的值等于1时,解码器在对该切片进行解码时应用mip模式。
[0177]
也就是说,在本技术中,解码器在解析码流中的分片头信息数据单元之后,可以确定mip模式参数slice_mip_enable_flag,然后可以根据mip模式参数slice_mip_enable_flag的取值确定当前块是否使用mip模式进行解码处理。
[0178]
示例性的,在本技术中,在对图块或砖块进行解码时,解码器可获得类似的mip模式参数,类似的mip模式参数,作为图片或子图片的图块或砖块分割的参数集的一部分,用以指示图片或子图片的图块或砖块是否使用mip模式。可选地,解码器还可从与该切片中的图块或砖块相关的切片数据获得类似的mip模式参数,以指示在对图块或砖块进行编码时是否使用mip模式。
[0179]
示例性的,在本技术中,解码器可以从输入比特流中的不同数据单元获得各种mip模式参数。解码器可以获得sps中的sps_mip_enable_flag等于1,与图片或子图片中的切片相关的、pps中的pps_mip_enable_flag或aps中的aps_mip_enable_flag等于1,同时与其它图片或子图片相关的、pps中的pps_mip_enable_flag或aps中的aps_mip_enable_flag等于0。在这种情况下,解码器可以在对输入比特流中的一部分图片或子图片进行解码时应用mip模式,同时在对其它图片或子图片进行解码时将不应用mip模式。可选地,解码器可以从图片或子图片中的切片的标头获得slice_mip_enable_flag(或切片数据中的图块或砖块的类似的mip模式参数)等于1,解码器可以在对该切片进行解码时应用mip模式。解码器还可以从图片或子图片中的另一切片的切片标头获得slice_mip_enable_flag(或切片数据中的图块或砖块的类似的mip模式参数)等于0,解码器在对该切片进行解码时将不应用mip模式。
[0180]
示例性的,在本技术中,解码器可以隐含地被告知mip模式是否用于对来自其它语
法元素(例如指示比特流或子比特流的一个或多个参数集中的ptl的语法元素)的输入比特流进行解码。例如,在一个或多个ptl中进行解码时mip模式被设置成禁用,而在其它ptl中进行解码时mip模式被设置成启用。
[0181]
本技术实施例提出了一种图像预测方法,解码器解析码流,确定当前块的mip模式参数;若mip模式参数的取值指示当前块使用mip模式确定当前块的帧内预测值,解析码流,确定当前块的mip模式,并根据mip模式确定当前块对应的亮度分量和色度分量的预测值;根据预测值,对当前块进行解码。也就是说,在本技术的实施例中,编码器在对当前块进行帧内预测时,如果确定当前块使用mip模式,便可以在使用mip模式获得当前块的帧内预测值的同时,设置mip模式参数并写入码流中传输至解码侧;解码器解析码流获得mip模式参数,如果mip模式参数指示当前块使用mip模式,那么解码器便可以使用mip模式确定当前块的帧内预测值。由此可见,本技术提出的图像预测方法,可以利用语法单元在码流中对当前块是否使用mip模式进行指示,从而可以简化图像预测过程,能够在保证编解码性能的基础上,降低复杂程度,减小编解码过程中所需要的存储空间和整体时间,有效地提高编解码效率。
[0182]
基于上述实施例,在本技术的再一实施例中,使用上述实施例描述的编码器和解码器的实施方式,可例如在会话协商过程中可行性地配置mip模式。
[0183]
示例性的,在第一示例性系统中,包含编码器的发送器将根据接收器的处理能力为接收器生成比特流。例如,在会话协商时,当发送器确定接收器不能顺利启用mip模式来处理比特流时(或者当接收器向发送器通知接收器不能顺利启用mip模式来对比特流进行解码时),发送器将通过禁用mip模式而生成比特流,例如通过将sps_mip_enable_flag设置成等于0。
[0184]
示例性的,第二示例性系统包含发送器,发送器存储在对比特流的整个或不同部分进行解码时应用了mip模式的多个比特流。在会话协商时,当发送器确定接收器不能顺利启用mip模式来处理比特流时(或者当接收器向发送器通知接收器不能顺利启用mip模式来对比特流进行解码时),发送器将进行选择以发送禁用了mip模式的比特流,例如sps_mip_enable_flag等于0的比特流。
[0185]
示例性的,第三示例性系统是实时通信系统,例如视频会议、视频电话、直播视频流等。不同于第一示例性系统,接收器不是一直不能够处理使用mip模式编码的比特流。例如,接收器可具有电池。当电池中的能量低于阈值(例如总电量的20%)时,由于低的能量,致使接收器向发送器通知接收器不能处理使用mip模式编码的比特流。当接收到来自接收器的请求时,发送器通过禁用mip模式而生成比特流,例如通过包含sps_mip_enable_flag等于0的新sps开始新的编码视频序列(encoding video sequence,cvs),或者通过生成包含mip使能标志(mip模式参数)等于0的新pps或aps,或者通过将切片标头(或者图块或砖块的其它类似的语法元素)中的mip使能标志设置成等于0。当接收器使其电池被充电时,接收器可向发送器通知接收器有能力处理使用mip模式编码的比特流。在这种情况下,发送器可使用mip模式生成比特流并设置sps、pps、aps或切片标头中的对应标志。替代地,发送器可在包含通过不同的mip模式配置生成的不同比特流的不同路轨之间进行切换,以满足来自接收器的要求。
[0186]
本技术实施例提出了一种图像预测方法,编码器在对当前块进行帧内预测时,如
果确定当前块使用mip模式,便可以在使用mip模式获得当前块的帧内预测值的同时,设置mip模式参数并写入码流中传输至解码侧;解码器解析码流获得mip模式参数,如果mip模式参数指示当前块使用mip模式,那么解码器便可以使用mip模式确定当前块的帧内预测值。由此可见,本技术提出的图像预测方法,可以利用语法单元在码流中对当前块是否使用mip模式进行指示,从而可以简化图像预测过程,能够在保证编解码性能的基础上,降低复杂程度,减小编解码过程中所需要的存储空间和整体时间,有效地提高编解码效率。
[0187]
基于上述实施例,在本技术的再一实施例中,图9为本技术实施例提出的编码器的组成结构示意图一,如图9所示,本技术实施例提出的编码器300可以包括设置部分301,第一确定部分302以及编码部分303,
[0188]
所述设置部分301,配置为若当前块使用mip模式确定所述当前块的帧内预测值,则将mip模式参数的取值设置为指示使用mip模式并写入码流;
[0189]
所述第一确定部分302,配置为确定所述当前块的mip模式,并根据所述mip模式确定所述当前块对应的亮度分量和色度分量的预测值;
[0190]
所述编码部分303,配置为将所述当前块的mip模式写入码流。
[0191]
进一步地,在本技术的实施例中,所述设置部分301,还配置为若所述当前块不使用mip模式确定所述当前块的帧内预测值,则将所述mip模式参数的取值设置为指示不使用mip模式并写入码流。
[0192]
进一步地,在本技术的实施例中,在所述码流中以一个或多个语法单元指示所述mip模式参数。
[0193]
进一步地,在本技术的实施例中,所述语法单元包含在以下所述码流中的一个或多个数据单元中:包含所述当前块的数据单元,分片头信息数据单元,图像头信息数据单元,图像层参数集,序列层参数集以及自适应参数集。
[0194]
进一步地,在本技术的实施例中,所述第一确定部分302,具体配置为确定所述当前块的尺寸类型;基于所述尺寸类型构造所述候选mip模式列表;从所述候选mip模式列表中确定所述当前块的mip模式。
[0195]
进一步地,在本技术的实施例中,所述第一确定部分302,还具体配置为当所述当前块的尺寸类型为第一类型时,根据16种mip模式构造所述候选mip模式列表;当所述当前块的尺寸类型为第二类型时,根据8种mip模式构造所述候选mip模式列表;当所述当前块的尺寸类型为第三类型时,根据6种mip模式构造所述候选mip模式列表。
[0196]
进一步地,在本技术的实施例中,所述第一确定部分302,还具体配置为当所述当前块的宽度和高度均等于4时,将所述当前块的尺寸类型设置为所述第一类型;当所述当前块的宽度和高度均等于8,或者,所述当前块的宽度等于8且高度等于4,或者所述当前块的宽度等于4且高度等于8时,将所述当前块的尺寸类型设置为所述第二类型;当所述当前块的宽度和高度不满足前述条件时,将所述当前块的尺寸类型设置为所述第三类型。
[0197]
进一步地,在本技术的实施例中,所述第一确定部分302,还具体配置为当所述当前块的宽度和高度均等于4时,将所述当前块的尺寸类型设置为所述第一类型;当所述当前块的宽度和高度均等于8、或者所述当前块的宽度和高度之一等于4时,将所述当前块的尺寸类型设置为所述第二类型;当所述当前块的宽度和高度不满足前述条件时,将所述当前块的尺寸类型设置为第三类型。
[0198]
图10为本技术实施例提出的编码器的组成结构示意图二,如图10所示,本技术实施例提出的编码器300还可以包括第一处理器304、存储有第一处理器304可执行指令的第一存储器305、第一通信接口306,和用于连接第一处理器304、第一存储器305以及第一通信接口306的第一总线307。
[0199]
进一步地,在本技术的实施例中,上述第一处理器304,用于若当前块使用mip模式确定所述当前块的帧内预测值,则将mip模式参数的取值设置为指示使用mip模式并写入码流;确定所述当前块的mip模式,并根据所述mip模式确定所述当前块对应的亮度分量和色度分量的预测值;将所述当前块的mip模式写入码流。
[0200]
另外,在本实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
[0201]
集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中,基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0202]
本技术实施例提供了一种图像编码器,若当前块使用mip模式确定当前块的帧内预测值,则该编码器将mip模式参数的取值设置为指示使用mip模式并写入码流;确定当前块的mip模式,并根据mip模式确定当前块对应的亮度分量和色度分量的预测值;将当前块的mip模式写入码流。解码器解析码流,确定当前块的mip模式参数;若mip模式参数的取值指示当前块使用mip模式确定当前块的帧内预测值,解析码流,确定当前块的mip模式,并根据mip模式确定当前块对应的亮度分量和色度分量的预测值;根据预测值,对当前块进行解码。也就是说,在本技术的实施例中,编码器在对当前块进行帧内预测时,如果确定当前块使用mip模式,便可以在使用mip模式获得当前块的帧内预测值的同时,设置mip模式参数并写入码流中传输至解码侧;解码器解析码流获得mip模式参数,如果mip模式参数指示当前块使用mip模式,那么解码器便可以使用mip模式确定当前块的帧内预测值。由此可见,本技术提出的图像预测方法,可以利用语法单元在码流中对当前块是否使用mip模式进行指示,从而可以简化图像预测过程,能够在保证编解码性能的基础上,降低复杂程度,减小编解码过程中所需要的存储空间和整体时间,有效地提高编解码效率。
[0203]
基于上述实施例,在本技术的另一实施例中,图11为本技术实施例提出的解码器的组成结构示意图一,如图11所示,本技术实施例提出的解码器400可以包括解码部分401,第二确定部分402,
[0204]
所述解码部分401,配置为解析码流,确定当前块的mip模式参数;以及若所述mip模式参数的取值指示所述当前块使用mip模式确定所述当前块的帧内预测值,解析所述码流,确定所述当前块的mip模式;
[0205]
所述第二确定部分402,配置为根据所述mip模式确定所述当前块对应的亮度分量
和色度分量的预测值;
[0206]
所述解码部分401,还配置为根据所述预测值,对所述当前块进行解码。
[0207]
进一步地,在本技术的实施例中,所述第二确定部分402,还配置为所述解析码流,确定当前块的mip模式参数之后,若所述mip模式参数的取值指示所述当前块不使用所述mip模式确定所述当前块的帧内预测值,确定所述当前块不使用mip模式。
[0208]
进一步地,在本技术的实施例中,在所述码流中以一个或多个语法单元指示所述mip模式参数。
[0209]
进一步地,在本技术的实施例中,所述语法单元包含在以下所述码流中的一个或多个数据单元中:包含所述当前块的数据单元,分片头信息数据单元,图像头信息数据单元,图像层参数集,序列层参数集以及自适应参数集。
[0210]
进一步地,在本技术的实施例中,所述解码部分401,具体配置为解析所述码流,获得所述当前块的mip模式索引序号;确定所述当前块的尺寸类型;从所述尺寸类型对应的候选mip模式列表中,将所述mip模式索引序号指示的mip模式确定为所述当前块的mip模式。
[0211]
进一步地,在本技术的实施例中,当所述当前块的尺寸类型为第一类型时,根据16种mip模式构造所述候选mip模式列表;当所述当前块的尺寸类型为第二类型时,根据8种mip模式构造所述候选mip模式列表;当所述当前块的尺寸类型为第三类型时,根据6种mip模式构造所述候选mip模式列表。
[0212]
进一步地,在本技术的实施例中,所述解码部分401,还具体配置为当所述当前块的宽度和高度均等于4时,将所述当前块的尺寸类型设置为所述第一类型;当所述当前块的宽度和高度均等于8,或者,所述当前块的宽度等于8且高度等于4,或者所述当前块的宽度等于4且高度等于8时,将所述当前块的尺寸类型设置为所述第二类型;当所述当前块的宽度和高度不满足前述条件时,将所述当前块的尺寸类型设置为所述第三类型。
[0213]
进一步地,在本技术的实施例中,所述解码部分401,还具体配置为当所述当前块的宽度和高度均等于4时,将所述当前块的尺寸类型设置为所述第一类型;当所述当前块的宽度和高度均等于8、或者所述当前块的宽度和高度之一等于4时,将所述当前块的尺寸类型设置为所述第二类型;当所述当前块的宽度和高度不满足前述条件时,将所述当前块的尺寸类型设置为第三类型。
[0214]
图12为本技术实施例提出的解码器的组成结构示意图二,如图12所示,本技术实施例提出的解码器400还可以包括第二处理器403、存储有第二处理器403可执行指令的第二存储器404、第二通信接口405,和用于连接第二处理器403、第二存储器404以及第二通信接口405的第二总线406。
[0215]
进一步地,在本技术的实施例中,上述第二处理器403,用于解析码流,确定当前块的mip模式参数;若所述mip模式参数的取值指示所述当前块使用mip模式确定所述当前块的帧内预测值,解析所述码流,确定所述当前块的mip模式,并根据所述mip模式确定所述当前块对应的亮度分量和色度分量的预测值;根据所述预测值,对所述当前块进行解码。
[0216]
另外,在本实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
[0217]
集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使
用时,可以存储在一个计算机可读取存储介质中,基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或processor(处理器)执行本实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0218]
本技术实施例提供了一种图像解码器,该解码器解析码流,确定当前块的mip模式参数;若mip模式参数的取值指示当前块使用mip模式确定当前块的帧内预测值,解析码流,确定当前块的mip模式,并根据mip模式确定当前块对应的亮度分量和色度分量的预测值;根据预测值,对当前块进行解码。也就是说,在本技术的实施例中,编码器在对当前块进行帧内预测时,如果确定当前块使用mip模式,便可以在使用mip模式获得当前块的帧内预测值的同时,设置mip模式参数并写入码流中传输至解码侧;解码器解析码流获得mip模式参数,如果mip模式参数指示当前块使用mip模式,那么解码器便可以使用mip模式确定当前块的帧内预测值。由此可见,本技术提出的图像预测方法,可以利用语法单元在码流中对当前块是否使用mip模式进行指示,从而可以简化图像预测过程,能够在保证编解码性能的基础上,降低复杂程度,减小编解码过程中所需要的存储空间和整体时间,有效地提高编解码效率。
[0219]
本技术实施例提供计算机可读存储介质,其上存储有程序,该程序被处理器执行时实现如上述实施例所述的方法。
[0220]
具体来讲,本实施例中的一种图像预测方法对应的程序指令可以被存储在光盘,硬盘,u盘等存储介质上,当存储介质中的与一种图像预测方法对应的程序指令被一电子设备读取或被执行时,包括如下步骤:
[0221]
若当前块使用mip模式确定所述当前块的帧内预测值,则将mip模式参数的取值设置为指示使用mip模式并写入码流;
[0222]
确定所述当前块的mip模式,并根据所述mip模式确定所述当前块对应的亮度分量和色度分量的预测值;
[0223]
将所述当前块的mip模式写入码流。
[0224]
具体来讲,本实施例中的一种图像预测方法对应的程序指令可以被存储在光盘,硬盘,u盘等存储介质上,当存储介质中的与一种图像预测方法对应的程序指令被一电子设备读取或被执行时,还包括如下步骤:
[0225]
解析码流,确定当前块的mip模式参数;
[0226]
若所述mip模式参数的取值指示所述当前块使用mip模式确定所述当前块的帧内预测值,解析所述码流,确定所述当前块的mip模式,并根据所述mip模式确定所述当前块对应的亮度分量和色度分量的预测值;
[0227]
根据所述预测值,对所述当前块进行解码。
[0228]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储
介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
[0229]
本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的实现流程示意图和/或方框图来描述的。应理解可由计算机程序指令实现流程示意图和/或方框图中的每一流程和/或方框、以及实现流程示意图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在实现流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0230]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在实现流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0231]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在实现流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0232]
以上所述,仅为本技术的较佳实施例而已,并非用于限定本技术的保护范围。
[0233]
工业实用性
[0234]
本技术实施例提供了一种图像预测方法、编码器、解码器以及存储介质,若当前块使用mip模式确定当前块的帧内预测值,则编码器将mip模式参数的取值设置为指示使用mip模式并写入码流;确定当前块的mip模式,并根据mip模式确定当前块对应的亮度分量和色度分量的预测值;将当前块的mip模式写入码流。解码器解析码流,确定当前块的mip模式参数;若mip模式参数的取值指示当前块使用mip模式确定当前块的帧内预测值,解析码流,确定当前块的mip模式,并根据mip模式确定当前块对应的亮度分量和色度分量的预测值;根据预测值,对当前块进行解码。也就是说,在本技术的实施例中,编码器在对当前块进行帧内预测时,如果确定当前块使用mip模式,便可以在使用mip模式获得当前块的帧内预测值的同时,设置mip模式参数并写入码流中传输至解码侧;解码器解析码流获得mip模式参数,如果mip模式参数指示当前块使用mip模式,那么解码器便可以使用mip模式确定当前块的帧内预测值。由此可见,本技术提出的图像预测方法,可以利用语法单元在码流中对当前块是否使用mip模式进行指示,从而可以简化图像预测过程,能够在保证编解码性能的基础上,降低复杂程度,减小编解码过程中所需要的存储空间和整体时间,有效地提高编解码效率。