欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 一种图像块的帧内模式预测方法及装置独创技术1597字

一种图像块的帧内模式预测方法及装置

2021-02-08 14:10:16

一种图像块的帧内模式预测方法及装置

技术领域

  本申请涉及图像处理技术领域,尤其涉及一种图像块的帧内模式预测方法及装置。

背景技术

  视频编码压缩的基本原理是,利用空域、时域和码字之间的相关性,尽可能去除冗余。目前流行的做法是采用基于图像块的混合视频编码框架,通过预测(包括帧内预测和帧间预测)、变换、量化、熵编码等步骤来实现视频编码压缩。

  目前帧内预测,一般采用当前块的周围已重建的邻接块来预测当前块。除了采用邻接块以外,目前并没有其它方式。

  发明内容

  本申请提供一种图像块的帧内模式预测方法及装置,提供了采用空域非邻接块或者时域邻近块来预测当前块的方式,提高了编解码性能。

  第一方面,本申请提供了一种图像块的帧内模式预测方法,包括:为当前块构建第一亮度帧内模式集合,其中,所述第一亮度帧内模式集合是多个预设候选亮度预测模式的子集,所述第一亮度帧内模式集合包括所述当前块所在的图像中与所述当前块空域不邻接的图像块的已确定亮度预测模式和/或与所述当前块时域邻近的图像块的已确定亮度预测模式;从接收的码流中解析第一标识;当所述第一标识指示所述当前块的亮度预测模式属于所述第一亮度帧内模式集合时,从所述码流中解析第二标识,所述第二标识用于指示在所述第一亮度帧内模式集合中的一个候选亮度预测模式作为所述当前块的亮度预测模式;根据所述当前块的亮度预测模式,获得所述当前块的亮度预测值。

  通过上述方案,构建第一亮度帧内模式集合时,考虑所述当前块所在的图像中在空域与所述当前块不邻接的已确定帧内预测模式的图像块的亮度预测模式和/或在时域与所述当前块邻近的已确定帧内预测模式的图像块的亮度预测模式,利用了更多的空域或者时域先验编码信息,从而提高了编解码性能。

  在一种可能的设计中,当所述第一标识指示所述当前块的亮度预测模式不属于所述第一亮度帧内模式集合时,所述方法还包括:构建第二亮度帧内模式集合;其中,所述第二亮度帧内模式集合是所述多个预设候选亮度预测模式的子集;所述第二亮度帧内模式集合与所述第一亮度帧内模式集合无交集,所述第二亮度帧内模式集合中的候选亮度预测模式包括所述当前块所在的图像中与所述当前块空域不邻接的图像块的已确定亮度预测模式和/或与所述当前块时域邻近的图像块的已确定亮度预测模式;从所述码流中解析第三标识;当所述第三标识指示所述当前块的亮度预测模式属于所述第二亮度帧内模式集合时,从所述码流中解析第四标识,所述第四标识用于指示在所述第二亮度帧内模式集合中的一个候选亮度预测模式作为所述当前块的亮度预测模式;根据所述当前块的亮度预测模式,获得所述当前块的亮度预测值。

  通过上述设计,在构建第二帧内模式集合时,考虑所述当前块所在的图像中与所述当前块空域不邻接的图像块的已确定亮度预测模式和/或与所述当前块邻近的图像块的已确 定亮度预测模式,利用了更多的空域或者时域先验编码信息,从而提高了编解码性能。

  在一种可能的设计中,在获得所述当前块的亮度预测值后,所述方法还包括:从所述码流中解析第五标识;当所述第五标识指示所述当前块的色度预测模式不属于分量间线性模型CCLM模式时,构建色度帧内模式集合,所述色度帧内模式集合中包括所述当前块所在的图像中与所述当前块空域不邻接的已确定色度预测模式和/或与所述当前块时域邻近的图像块的已确定色度预测模式;从所述码流中解析第六标识,所述第六标识用于指示所述色度帧内模式集合中一个候选色度预测模式作为所述当前块的色度预测模式;根据所述当前块的色度预测模式,获得所述当前块的色度预测值。

  通过上述设计,在构建色度帧内模式集合时,考虑所述当前块所在的图像中与所述当前块空域不邻接的图像块的已确定色度预测模式和/或与所述当前块时域邻近的图像块的已确定色度预测模式,利用了更多的空域或者时域先验编码信息,从而提高了编解码性能。

  在一种可能的设计中,所述当前块所在的图像由至少两行编码树单元CTU构成,所述当前块的尺寸不大于所述编码树单元的尺寸,所述当前块所在的编码树单元在所述图像中的行数和与所述当前块空域不邻接的图像块所在的编码树单元在所述图像中的行数相差小于N行,其中,N为大于1的整数。

  在一种可能的设计中,N为2。

  上述设计对基本像素单元的位置进行一定范围内的限定,可以保持一定的编码性能。

  在一种可能的设计中,所述当前块的宽为w,高为h,所述当前块所在的图像包含M组与所述当前块空域不邻接的图像块,每组与所述当前块空域不邻接的图像块具有一个组号,其中,具有所述组号为i的图像块,包括虚拟坐标系中以下坐标位置的像素集合基本单元所在的图像块:(-i×w,-i×h),(1+m×w,-i×h),(-m×w,-i×h),(-i×w,-m×h),(-i×w,m×h+1),其中,m取从0到i-1范围内的所有整数,M、i、w、h为正整数,i不大于M且i取值不为1,所述虚拟坐标系以所述当前块的右下角像素集合基本单元在所述图像中的位置为原点,以所述当前块的底边界所在的直线为水平坐标轴,向右为水平正方向,以所述当前块的右边界所在的直线为竖直坐标轴,向下为竖直正方向。

  在一种可能的设计中,所述构建所述第一亮度帧内模式集合包括:

  根据与所述当前块邻接的图像块的已确定亮度预测模式以及非方向性预测模式构建所述第一亮度帧内模式集合后,所述第一亮度帧内模式集合中包括的候选亮度预测模式的数量未达到预设值;

  依次添加位于并置块的中心位置的子块的亮度预测模式、所述并置块的右下角空域邻近块的亮度预测模式,至所述第一亮度帧内模式集合中,直到所述第一亮度帧内模式集合中包括的候选亮度预测模式的数量达到所述预设值,其中,所述子块是存储预测信息的基本单元,所述并置块为与所述当前块所在的图像时域邻近的参考图像中与所述当前块大小、形状和位置均相同的图像块,所述第一亮度帧内模式集合中包括的候选亮度预测模式各不相同。

  在一种可能的设计中,当依次添加位于所述并置块中的中心位置的子块的亮度预测模式、所述并置块的右下角空域邻近块的亮度预测模式,至所述第一亮度帧内模式集合中,所述第一亮度帧内模式集合中的包括的候选亮度预测模式的数量未达到所述预设值时,所述方法还包括:

  按照所述组号的从小到大的顺序,依次添加与所述当前块空域不邻接的图像块的已确 定亮度预测模式至所述第一亮度帧内模式集合中,直到所述第一亮度帧内模式集合中候选亮度预测模式的数量达到所述预设值,所述第一亮度帧内模式集合中候选亮度预测模式各不相同。

  在一种可能的设计中,当依次添加位于所述并置块中的中心位置的子块的亮度预测模式、所述并置块的右下角空域邻近块的亮度预测模式,至所述第一亮度帧内模式集合中,所述第一亮度帧内模式集合中的包括的候选亮度预测模式的数量未达到所述预设值时,所述方法还包括:

  按照与所述当前块空域不邻接的图像块到所述原点的从短到长的距离,依次添加与所述当前块空域不邻接的图像块的已确定亮度预测模式至所述第一亮度帧内模式集合中,其中,所述距离为与所述当前块空域不邻接的图像块中一个预设位置像素集合基本单元在所述虚拟坐标系中的水平坐标绝对值和竖直坐标绝对值之和。

  在一种可能的设计中,所述依次添加与所述当前块空域不邻接的图像块的已确定亮度预测模式至所述第一亮度帧内模式集合中,包括:

  按照在所述虚拟坐标系中位于如下坐标位置的像素集合基本单元所在的图像块的顺序,依次添加与所述当前块空域不邻接的图像块的已确定亮度预测模式至所述第一亮度帧内模式集合中,直到所述第一亮度帧内模式集合中候选亮度预测模式的数量达到所述预设值:(-2×w,0),(0,-2×h),(1,-2×h),(-2×w,1),(-w,-2×h),(-2×w,-h),(-2×w,h+1),(w+1,-2×h),(-2×w,-2×h),(-3×w,0),(0,-3×h),(1,-3×h),(-3×w,1),(-w,-3×h),(-3×w,-h),(w+1,-3×h),(-3×w,h+1),(-2×w,-3×h),(-3×w,-2×h),(2×w+1,-3×h),(-3×w,2×h+1),(-3×w,-3×h)。

  该设计的有益效果在于各亮度预测模式的表示方式采用unary code编码方式时,顺序靠前的亮度预测模式会使用较短的码字编码,顺序靠后的亮度预测模式使用较长的码字编码。按照已确定帧内预测模式图像块与待处理图像块的预测模式的相关性,恰当地决定候选亮度预测模式的获取顺序有利于选择更好的码字编码策略,提高编码性能。

  在一种可能的设计中,所述构建所述第一亮度帧内模式集合,包括:

  根据所述当前块所在的图像中与所述当前块空域邻接的图像块的已确定亮度预测模式以及非方向性预测模式构建所述第一亮度帧内模式集合后,所述第一亮度帧内模式集合中包括的候选亮度预测模式的数量未达到预设值;

  按照所述组号的从小到大的顺序,依次添加所述与所述当前块空域不邻接的图像块的已确定亮度预测模式至所述第一亮度帧内模式集合中,直到所述第一亮度帧内模式集合中候选亮度预测模式的数量达到所述预设值,所述第一亮度帧内模式集合中候选亮度预测模式各不相同。

  在一种可能的设计中,在所述依次添加所述与所述当前块空域不邻接的图像块的已确定亮度预测模式至所述第一亮度帧内模式集合中后,所述第一亮度帧内模式集合中包括的候选亮度预测模式的数量未达到所述预设值;所述方法还包括:

  依次添加位于所述并置块中的中心位置的子块的亮度预测模式、所述并置块的右下角空域邻近块的亮度预测模式,至所述第一亮度帧内模式集合中,直到所述第一亮度帧内模式集合中包括的候选亮度预测模式的数量达到所述预设值。

  第二方面,本申请提供了一种图像块的帧内模式预测方法,包括:

  为当前块构建第一亮度帧内模式集合,其中,所述第一亮度帧内模式集合是多个预设 候选亮度预测模式的子集;从接收的码流中解析第一标识;当所述第一标识指示所述当前块的亮度预测模式不属于所述第一亮度帧内模式集合时,构建第二亮度帧内模式集合;其中,所述第二亮度帧内模式集合是所述多个预设候选亮度预测模式的子集;所述第二亮度帧内模式集合与所述第一亮度帧内模式集合无交集,所述第二亮度帧内模式集合包括与所述当前块空域不邻接的图像块的已确定亮度预测模式和/或与所述当前块时域邻近的图像块的已确定亮度预测模式;从所述码流中解析第二标识;当所述第二标识指示所述当前块的亮度预测模式属于所述第二亮度帧内模式集合时,从所述码流中解析第三标识,所述第三标识用于指示在所述第二亮度帧内模式集合中的一个候选亮度预测模式作为所述当前块的亮度预测模式;根据所述当前块的亮度预测模式,获得所述当前块的亮度预测值。

  通过上述设计,在构建第二帧内模式集合时,考虑所述当前块所在的图像中与所述当前块空域不邻接的图像块的已确定亮度预测模式和/或与所述当前块时域邻近的图像块的已确定亮度预测模式,利用了更多的空域或者时域先验编码信息,从而提高了编解码性能。

  上述第一亮度帧内模式集合的构建方式可以采用现有技术提供的方案,还可以采用上述第一方面或者第一方面的任意一种设计提供的方案。

  在一种可能的设计中,在获得所述当前块的亮度预测值后,所述方法还包括:从所述码流中解析第四标识;当所述第四标识指示所述当前块的色度预测模式不属于分量间线性模型CCLM模式时,构建色度帧内模式集合,所述色度帧内模式集合中包括所述当前块所在的图像中与所述当前块空域不邻接的图像块的已确定色度预测模式和/或与所述当前块时域邻近的图像块的已确定色度预测模式;从所述码流中解析第五标识,所述第五标识用于指示所述色度帧内模式集合中一个候选色度预测模式作为所述当前块的色度预测模式;根据所述当前块的色度预测模式,获得所述当前块的色度预测值。

  通过上述设计,在构建色度帧内模式集合时,考虑所述当前块所在的图像中与所述当前块空域不邻接的图像块的已确定色度预测模式和/或与所述当前块时域邻近的图像块的已确定色度预测模式,利用了更多的空域或者时域先验编码信息,从而提高了编解码性能。

  在一种可能的设计中,所述当前块所在的图像由至少两行编码树单元CTU构成,所述当前块的尺寸不大于所述编码树单元的尺寸,所述当前块所在的编码树单元在所述图像中的行数和与所述当前块空域不邻接的图像块所在的编码树单元在所述图像中的行数相差小于N行,其中,N为大于1的整数。

  在一种可能的设计中,所述当前块的宽为w,高为h,所述当前块所在的图像包含M组所述与所述当前块空域不邻接的图像块,每组与所述当前块空域不邻接的图像块具有一个组号,其中,具有所述组号为i的图像块,包括虚拟坐标系中以下坐标位置的像素集合基本单元所在的图像块:(-i×w,-i×h),(1+m×w,-i×h),(-m×w,-i×h),(-i×w,-m×h),(-i×w,m×h+1),其中,m取从0到i-1范围内的所有整数,M、i、w、h为正整数,i不大于M且i取值不为1,所述虚拟坐标系以所述当前块的右下角像素集合基本单元在所述图像中的位置为原点,以所述当前块的底边界所在的直线为水平坐标轴,向右为水平正方向,以所述当前块的右边界所在的直线为竖直坐标轴,向下为竖直正方向。

  在一种可能的设计中,所述构建所述第二亮度帧内模式集合,包括:

  依次添加位于并置块的中心位置的子块的亮度预测模式和所述并置块的右下角空域邻近块的亮度预测模式,至所述第二亮度帧内模式集合中,直到所述第二亮度帧内模式集合中包括的候选亮度预测模式的数量达到预设值,其中,所述子块是存储预测信息的基本 单元,所述并置块为与所述当前块所在的图像时域邻近的参考图像中与所述当前块大小、形状和位置均相同的图像块,所述第二亮度帧内模式集合中包括的候选亮度预测模式各不相同。

  在一种可能的设计中,,依次添加位于所述并置块的中心位置的子块的亮度预测模式和所述并置块的右下角空域邻近块的亮度预测模式,至所述第二亮度帧内模式集合中后,所述第二亮度帧内模式集合中的包括的候选亮度预测模式的数量未达到所述预设值,所述方法还包括:

  按照所述组号的从小到大的顺序,依次添加与所述当前块空域不邻接的图像块的已确定亮度预测模式至所述第二亮度帧内模式集合中,直到所述第二亮度帧内模式集合中候选亮度预测模式的数量达到所述预设值,所述第二亮度帧内模式集合中候选亮度预测模式各不相同。

  在一种可能的设计中,依次添加位于所述并置块的中心位置的子块的亮度预测模式和所述并置块的右下角空域邻近块的亮度预测模式,至所述第二亮度帧内模式集合中后,所述第二亮度帧内模式集合中的包括的候选亮度预测模式的数量未达到所述预设值,所述方法还包括:

  按照与所述当前块空域不邻接的图像块到所述原点的从短到长的距离,依次添加与所述当前块空域不邻接的图像块的已确定亮度预测模式至所述第二亮度帧内模式集合中,其中,所述距离为所述与所述当前块空域不邻接的图像块中一个预设位置像素集合基本单元在所述虚拟坐标系中的水平坐标绝对值和竖直坐标绝对值之和。

  在一种可能的设计中,所述依次添加与所述当前块空域不邻接的图像块的已确定亮度预测模式至所述第二亮度帧内模式集合中,包括:

  按照在所述虚拟坐标系中位于如下坐标位置的像素集合基本单元所在的图像块的顺序,依次添加与所述当前块空域不邻接的图像块的已确定亮度预测模式至所述第二亮度帧内模式集合中,直到所述第二亮度帧内模式集合中候选亮度预测模式的数量达到所述预设值:(-2×w,0),(0,-2×h),(1,-2×h),(-2×w,1),(-w,-2×h),(-2×w,-h),(-2×w,h+1),(w+1,-2×h),(-2×w,-2×h),(-3×w,0),(0,-3×h),(1,-3×h),(-3×w,1),(-w,-3×h),(-3×w,-h),(w+1,-3×h),(-3×w,h+1),(-2×w,-3×h),(-3×w,-2×h),(2×w+1,-3×h),(-3×w,2×h+1),(-3×w,-3×h)。

  在一种可能的设计中,所述构建所述第二亮度帧内模式集合,包括:

  按照所述组号的从小到大的顺序,依次添加所述与所述当前块空域不邻接的图像块的已确定亮度预测模式至所述第二亮度帧内模式集合中,直到所述第二亮度帧内模式集合中候选亮度预测模式的数量达到所述预设值,所述第二亮度帧内模式集合中候选亮度预测模式各不相同。

  在一种可能的设计中,在所述依次添加所述与所述当前块空域不邻接的图像块的已确定亮度预测模式至所述第二亮度帧内模式集合中后,所述第二亮度帧内模式集合中包括的候选亮度预测模式的数量未达到所述预设值;所述方法还包括:

  依次添加位于所述并置块的中心位置的子块的亮度预测模式、所述并置块的右下角空域邻近块的亮度预测模式,至所述第二亮度帧内模式集合中,直到所述第二亮度帧内模式集合中包括的候选亮度预测模式的数量达到所述预设值。

  第三方面,本申请提供了一种图像块的帧内模式预测方法,包括:从接收到的码流中 解析第一标识;当所述第一标识指示当前块的色度预测模式不属于分量间线性模型CCLM模式时,为当前块构建色度帧内模式集合,所述色度帧内模式集合中包括所述当前块所在的图像中与所述当前块空域不邻接的图像块的已确定色度预测模式和/或在时域与所述当前块时域邻近的图像块的已确定色度预测模式;从所述码流中解析第二标识,所述第二标识用于指示所述色度帧内模式集合中的一个候选色度预测模式作为所述当前块的色度预测模式;根据所述当前块的色度预测模式,获得所述当前块的色度预测值。

  在一种可能的设计中,所述当前块所在的图像由至少两行编码树单元CTU构成,所述当前块的尺寸不大于所述编码树单元的尺寸,所述当前块所在的编码树单元在所述图像中的行数和与所述当前块空域不邻接的图像块所在的编码树单元在所述图像中的行数相差小于N行,其中,N为大于1的整数。

  在一种可能的设计中,所述当前块的宽为w,高为h,所述当前块所在的图像包含M组所述与所述当前块空域不邻接的图像块,每组与所述当前块空域不邻接的图像块具有一个组号,其中,具有所述组号为i的图像块,包括虚拟坐标系中以下坐标位置的像素集合基本单元所在的图像块:(-i×w,-i×h),(1+m×w,-i×h),(-m×w,-i×h),(-i×w,-m×h),(-i×w,m×h+1),其中,m取从0到i-1范围内的所有整数,M、i、w、h为正整数,i不大于M且i取值不为1,所述虚拟坐标系以所述当前块的右下角像素集合基本单元在所述图像中的位置为原点,以所述当前块的底边界所在的直线为水平坐标轴,向右为水平正方向,以所述当前块的右边界所在的直线为竖直坐标轴,向下为竖直正方向。

  在一种可能的设计中,所述构建所述色度帧内模式集合,包括:

  根据所述当前块的亮度预测模式、与所述当前块空域邻接的图像块的已确定色度预测模式构建所述色度帧内模式集合后,所述色度帧内模式集合中包括的候选色度预测模式的数量未达到预设值;

  依次添加位于并置块的中心位置的子块的色度预测模式和所述并置块的右下角空域邻近块的色度预测模式,至所述色度帧内模式集合中,直到所述色度帧内模式集合中包括的候选色度预测模式的数量达到预设值,其中,所述子块是存储预测信息的基本单元,所述并置块为与所述当前块所在的图像时域邻近的参考图像中与所述当前块大小、形状和位置均相同的图像块,所述色度帧内模式集合中包括的候选色度预测模式各不相同。

  在一种可能的设计中,依次添加位于所述并置块的中心位置的子块的色度预测模式和所述并置块的右下角空域邻近块的色度预测模式,至所述色度帧内模式集合中后,所述色度帧内模式集合中的包括的候选色度预测模式的数量未达到所述预设值,所述方法还包括:

  按照所述组号的从小到大的顺序,依次添加与所述当前块空域不邻接的图像块的色度预测模式至所述色度帧内模式集合中,直到所述色度帧内模式集合中候选色度预测模式的数量达到所述预设值,所述色度帧内模式集合中候选色度预测模式各不相同。

  在一种可能的设计中,依次添加位于所述并置块的中心位置的子块的色度预测模式和所述并置块的右下角空域邻近块的色度预测模式,至所述色度帧内模式集合中后,所述色度帧内模式集合中的包括的候选色度预测模式的数量未达到所述预设值,所述方法还包括:

  按照与所述当前块空域不邻接的图像块到所述原点的从短到长的距离,依次添加与所述当前块空域不邻接的图像块的色度预测模式至所述色度帧内模式集合中,其中,所述距 离为所述与所述当前块空域不邻接的图像块中一个预设位置像素集合基本单元在所述虚拟坐标系中的水平坐标绝对值和竖直坐标绝对值之和。

  在一种可能的设计中,所述依次添加与所述当前块空域不邻接的图像块的色度预测模式至所述色度帧内模式集合中,包括:

  按照在所述虚拟坐标系中位于如下坐标位置的像素集合基本单元所在的图像块的顺序,依次添加与所述当前块空域不邻接的图像块的已确定色度预测模式至所述色度帧内模式集合中,直到所述色度帧内模式集合中候选色度预测模式的数量达到所述预设值:(-2×w,0),(0,-2×h),(1,-2×h),(-2×w,1),(-w,-2×h),(-2×w,-h),(-2×w,h+1),(w+1,-2×h),(-2×w,-2×h),(-3×w,0),(0,-3×h),(1,-3×h),(-3×w,1),(-w,-3×h),(-3×w,-h),(w+1,-3×h),(-3×w,h+1),(-2×w,-3×h),(-3×w,-2×h),(2×w+1,-3×h),(-3×w,2×h+1),(-3×w,-3×h)。

  在一种可能的设计中,所述构建所述色度帧内模式集合,包括:

  根据所述当前块的亮度预测模式、所述当前块所在的图像中与所述当前块空域邻接的图像块的已确定色度预测模式构建所述色度帧内模式集合后,所述色度帧内模式集合中包括的候选色度预测模式的数量未达到预设值;

  按照所述组号的从小到大的顺序,依次添加所述与所述当前块空域不邻接的图像块的已确定色度预测模式至所述色度帧内模式集合中,直到所述色度帧内模式集合中候选色度预测模式的数量达到所述预设值,所述色度帧内模式集合中候选色度预测模式各不相同。

  在一种可能的设计中,在所述依次添加所述与所述当前块空域不邻接的图像块的已确定色度预测模式至所述色度帧内模式集合中后,所述色度帧内模式集合中包括的候选色度预测模式的数量未达到所述预设值;所述方法还包括:

  依次添加位于所述并置块的中心位置的子块的色度预测模式和所述并置块的右下角空域邻近块的色度预测模式,至所述色度帧内模式集合中,直到所述色度帧内模式集合中包括的候选色度预测模式的数量达到所述预设值。

  第四方面,一种图像块的帧内模式预测装置,包括:

  接收单元,用于接收码流;

  构建单元,用于为当前块构建第一亮度帧内模式集合,其中,所述第一亮度帧内模式集合是多个预设候选亮度预测模式的子集,所述第一亮度帧内模式集合包括所述当前块所在的图像中与所述当前块空域不邻接的图像块的已确定亮度预测模式和/或与所述当前块时域邻近的图像块的已确定亮度预测模式;

  解析单元,用于从所述接收的码流中解析第一标识;当所述第一标识指示所述当前块的亮度预测模式属于所述第一亮度帧内模式集合时,从所述码流中解析第二标识,所述第二标识用于指示在所述第一亮度帧内模式集合中的一个候选亮度预测模式作为所述当前块的亮度预测模式;

  计算单元,用于根据所述当前块的亮度预测模式,获得所述当前块的亮度预测值。

  在一种可能的设计中,所述当前块所在的图像由至少两行编码树单元CTU构成,所述当前块的尺寸不大于所述编码树单元的尺寸,所述当前块所在的编码树单元在所述图像中的行数和与所述当前块空域不邻接的图像块所在的编码树单元在所述图像中的行数相差小于N行,其中,N为大于1的整数。

  在一种可能的设计中,所述当前块的宽为w,高为h,所述当前块所在的图像包含M 组所述与所述当前块空域不邻接的图像块,每组与所述当前块空域不邻接的图像块具有一个组号,其中,具有所述组号为i的图像块,包括虚拟坐标系中以下坐标位置的像素集合基本单元所在的图像块:(-i×w,-i×h),(1+m×w,-i×h),(-m×w,-i×h),(-i×w,-m×h),(-i×w,m×h+1),其中,m取从0到i-1范围内的所有整数,M、i、w、h为正整数,i不大于M且i取值不为1,所述虚拟坐标系以所述当前块的右下角像素集合基本单元在所述图像中的位置为原点,以所述当前块的底边界所在的直线为水平坐标轴,向右为水平正方向,以所述当前块的右边界所在的直线为竖直坐标轴,向下为竖直正方向。

  在一种可能的设计中,所述构建单元,具体用于:

  根据与所述当前块邻接的图像块的已确定亮度预测模式以及非方向性预测模式构建所述第一亮度帧内模式集合后,所述第一亮度帧内模式集合中包括的候选亮度预测模式的数量未达到预设值;

  依次添加位于并置块的中心位置的子块的亮度预测模式、所述并置块的右下角空域邻近块的亮度预测模式,至所述第一亮度帧内模式集合中,直到所述第一亮度帧内模式集合中包括的候选亮度预测模式的数量达到所述预设值,其中,所述子块是存储预测信息的基本单元,所述并置块为与所述当前块所在的图像时域邻近的参考图像中与所述当前块大小、形状和位置均相同的图像块,所述第一亮度帧内模式集合中包括的候选亮度预测模式各不相同。

  在一种可能的设计中,当依次添加位于所述并置块中的中心位置的子块的亮度预测模式、所述并置块的右下角空域邻近块的亮度预测模式,至所述第一亮度帧内模式集合中,所述第一亮度帧内模式集合中的包括的候选亮度预测模式的数量未达到所述预设值时,所述构建单元,还用于:

  按照所述组号的从小到大的顺序,依次添加与所述当前块空域不邻接的图像块的已确定亮度预测模式至所述第一亮度帧内模式集合中,直到所述第一亮度帧内模式集合中候选亮度预测模式的数量达到所述预设值,所述第一亮度帧内模式集合中候选亮度预测模式各不相同。

  在一种可能的设计中,所述构建单元,当依次添加位于所述并置块中的中心位置的子块的亮度预测模式、所述并置块的右下角空域邻近块的亮度预测模式,至所述第一亮度帧内模式集合中,所述第一亮度帧内模式集合中的包括的候选亮度预测模式的数量未达到所述预设值时,所述构建单元,还用于:

  按照与所述当前块空域不邻接的图像块到所述原点的从短到长的距离,依次添加与所述当前块空域不邻接的图像块的已确定亮度预测模式至所述第一亮度帧内模式集合中,其中,所述距离为与所述当前块空域不邻接的图像块中一个预设位置像素集合基本单元在所述虚拟坐标系中的水平坐标绝对值和竖直坐标绝对值之和。

  在一种可能的设计中,所述构建单元,所述依次添加与所述当前块空域不邻接的图像块的已确定亮度预测模式至所述第一亮度帧内模式集合中时,具体用于:

  按照在所述虚拟坐标系中位于如下坐标位置的像素集合基本单元所在的图像块的顺序,依次添加与所述当前块空域不邻接的图像块的已确定亮度预测模式至所述第一亮度帧内模式集合中,直到所述第一亮度帧内模式集合中候选亮度预测模式的数量达到所述预设值:(-2×w,0),(0,-2×h),(1,-2×h),(-2×w,1),(-w,-2×h),(-2×w,-h),(-2×w,h+1),(w+1,-2×h),(-2×w,-2×h),(-3×w,0),(0,-3×h),(1,-3×h),(-3×w,1),(-w,-3×h), (-3×w,-h),(w+1,-3×h),(-3×w,h+1),(-2×w,-3×h),(-3×w,-2×h),(2×w+1,-3×h),(-3×w,2×h+1),(-3×w,-3×h)。

  第五方面,本申请提供了一种图像块的帧内模式预测装置,包括:

  接收单元,用于接收码流;

  构建单元,用于为当前块构建第一亮度帧内模式集合,其中,所述第一亮度帧内模式集合是多个预设候选亮度预测模式的子集;

  解析单元,用于从接收的所述码流中解析第一标识;

  所述构建单元,还用于当所述第一标识指示所述当前块的亮度预测模式不属于所述第一亮度帧内模式集合时,构建第二亮度帧内模式集合;其中,所述第二亮度帧内模式集合是所述多个预设候选亮度预测模式的子集;所述第二亮度帧内模式集合与所述第一亮度帧内模式集合无交集,所述第二亮度帧内模式集合包括与所述当前块空域不邻接的图像块的已确定亮度预测模式和/或与所述当前块时域邻近的图像块的已确定亮度预测模式;

  所述解析单元,还用于当所述第二标识指示所述当前块的亮度预测模式属于所述第二亮度帧内模式集合时,从所述码流中解析第三标识,所述第三标识用于指示在所述第二亮度帧内模式集合中的一个候选亮度预测模式作为所述当前块的亮度预测模式;

  计算单元,用于根据所述当前块的亮度预测模式,获得所述当前块的亮度预测值。

  在一种可能的设计中,所述当前块所在的图像由至少两行编码树单元CTU构成,所述当前块的尺寸不大于所述编码树单元的尺寸,所述当前块所在的编码树单元在所述图像中的行数和与所述当前块空域不邻接的图像块所在的编码树单元在所述图像中的行数相差小于N行,其中,N为大于1的整数。

  在一种可能的设计中,所述当前块的宽为w,高为h,所述当前块所在的图像包含M组所述与所述当前块空域不邻接的图像块,每组与所述当前块空域不邻接的图像块具有一个组号,其中,具有所述组号为i的图像块,包括虚拟坐标系中以下坐标位置的像素集合基本单元所在的图像块:(-i×w,-i×h),(1+m×w,-i×h),(-m×w,-i×h),(-i×w,-m×h),(-i×w,m×h+1),其中,m取从0到i-1范围内的所有整数,M、i、w、h为正整数,i不大于M且i取值不为1,所述虚拟坐标系以所述当前块的右下角像素集合基本单元在所述图像中的位置为原点,以所述当前块的底边界所在的直线为水平坐标轴,向右为水平正方向,以所述当前块的右边界所在的直线为竖直坐标轴,向下为竖直正方向。

  在一种可能的设计中,所述构建单元,在构建所述第二亮度帧内模式集合时,具体用于:

  依次添加位于并置块的中心位置的子块的亮度预测模式和所述并置块的右下角空域邻近块的亮度预测模式,至所述第二亮度帧内模式集合中,直到所述第二亮度帧内模式集合中包括的候选亮度预测模式的数量达到预设值,其中,所述子块是存储预测信息的基本单元,所述并置块为与所述当前块所在的图像时域邻近的参考图像中与所述当前块大小、形状和位置均相同的图像块,所述第二亮度帧内模式集合中包括的候选亮度预测模式各不相同。

  在一种可能的设计中,在依次添加位于所述并置块的中心位置的子块的亮度预测模式和所述并置块的右下角空域邻近块的亮度预测模式,至所述第二亮度帧内模式集合中后,所述第二亮度帧内模式集合中的包括的候选亮度预测模式的数量未达到所述预设值,所述构建单元还用于:

  按照所述组号的从小到大的顺序,依次添加与所述当前块空域不邻接的图像块的已确定亮度预测模式至所述第二亮度帧内模式集合中,直到所述第二亮度帧内模式集合中候选亮度预测模式的数量达到所述预设值,所述第二亮度帧内模式集合中候选亮度预测模式各不相同。

  在一种可能的设计中,依次添加位于所述并置块的中心位置的子块的亮度预测模式和所述并置块的右下角空域邻近块的亮度预测模式,至所述第二亮度帧内模式集合中后,所述第二亮度帧内模式集合中的包括的候选亮度预测模式的数量未达到所述预设值,所述构建单元还用于:

  按照与所述当前块空域不邻接的图像块到所述原点的从短到长的距离,依次添加与所述当前块空域不邻接的图像块的已确定亮度预测模式至所述第二亮度帧内模式集合中,其中,所述距离为所述与所述当前块空域不邻接的图像块中一个预设位置像素集合基本单元在所述虚拟坐标系中的水平坐标绝对值和竖直坐标绝对值之和。

  在一种可能的设计中,所述构建单元,所述依次添加与所述当前块空域不邻接的图像块的已确定亮度预测模式至所述第二亮度帧内模式集合中时,具体用于:

  按照在所述虚拟坐标系中位于如下坐标位置的像素集合基本单元所在的图像块的顺序,依次添加与所述当前块空域不邻接的图像块的已确定亮度预测模式至所述第二亮度帧内模式集合中,直到所述第二亮度帧内模式集合中候选亮度预测模式的数量达到所述预设值:(-2×w,0),(0,-2×h),(1,-2×h),(-2×w,1),(-w,-2×h),(-2×w,-h),(-2×w,h+1),(w+1,-2×h),(-2×w,-2×h),(-3×w,0),(0,-3×h),(1,-3×h),(-3×w,1),(-w,-3×h),(-3×w,-h),(w+1,-3×h),(-3×w,h+1),(-2×w,-3×h),(-3×w,-2×h),(2×w+1,-3×h),(-3×w,2×h+1),(-3×w,-3×h)。

  第六方面,本申请提供了一种图像块的帧内模式预测装置,包括:

  接收单元,用于接收码流;

  解析单元,用于从所述接收到的码流中解析第一标识;

  构建单元,用于当所述第一标识指示当前块的色度预测模式不属于分量间线性模型CCLM模式时,为当前块构建色度帧内模式集合,所述色度帧内模式集合中包括所述当前块所在的图像中与所述当前块空域不邻接的图像块的已确定色度预测模式和/或在时域与所述当前块时域邻近的图像块的已确定色度预测模式;

  所述解析单元,还用于从所述码流中解析第二标识,所述第二标识用于指示所述色度帧内模式集合中的一个候选色度预测模式作为所述当前块的色度预测模式;

  计算单元,用于根据所述当前块的色度预测模式,获得所述当前块的色度预测值。

  在一种可能的设计中,所述当前块所在的图像由至少两行编码树单元CTU构成,所述当前块的尺寸不大于所述编码树单元的尺寸,所述当前块所在的编码树单元在所述图像中的行数和与所述当前块空域不邻接的图像块所在的编码树单元在所述图像中的行数相差小于N行,其中,N为大于1的整数。

  在一种可能的设计中,所述当前块的宽为w,高为h,所述当前块所在的图像包含M组所述与所述当前块空域不邻接的图像块,每组与所述当前块空域不邻接的图像块具有一个组号,其中,具有所述组号为i的图像块,包括虚拟坐标系中以下坐标位置的像素集合基本单元所在的图像块:(-i×w,-i×h),(1+m×w,-i×h),(-m×w,-i×h),(-i×w,-m×h),(-i×w,m×h+1),其中,m取从0到i-1范围内的所有整数,M、i、w、h为正整数, i不大于M且i取值不为1,所述虚拟坐标系以所述当前块的右下角像素集合基本单元在所述图像中的位置为原点,以所述当前块的底边界所在的直线为水平坐标轴,向右为水平正方向,以所述当前块的右边界所在的直线为竖直坐标轴,向下为竖直正方向。

  在一种可能的设计中,所述构建单元,具体用于:

  根据所述当前块的亮度预测模式、与所述当前块空域邻接的图像块的已确定色度预测模式构建所述色度帧内模式集合后,所述色度帧内模式集合中包括的候选色度预测模式的数量未达到预设值;

  依次添加位于并置块的中心位置的子块的色度预测模式和所述并置块的右下角空域邻近块的色度预测模式,至所述色度帧内模式集合中,直到所述色度帧内模式集合中包括的候选色度预测模式的数量达到预设值,其中,所述子块是存储预测信息的基本单元,所述并置块为与所述当前块所在的图像时域邻近的参考图像中与所述当前块大小、形状和位置均相同的图像块,所述色度帧内模式集合中包括的候选色度预测模式各不相同。

  在一种可能的设计中,依次添加位于所述并置块的中心位置的子块的色度预测模式和所述并置块的右下角空域邻近块的色度预测模式,至所述色度帧内模式集合中后,所述色度帧内模式集合中的包括的候选色度预测模式的数量未达到所述预设值,所述构建单元,还用于:

  按照所述组号的从小到大的顺序,依次添加与所述当前块空域不邻接的图像块的色度预测模式至所述色度帧内模式集合中,直到所述色度帧内模式集合中候选色度预测模式的数量达到所述预设值,所述色度帧内模式集合中候选色度预测模式各不相同。

  在一种可能的设计中,依次添加位于所述并置块的中心位置的子块的色度预测模式和所述并置块的右下角空域邻近块的色度预测模式,至所述色度帧内模式集合中后,所述色度帧内模式集合中的包括的候选色度预测模式的数量未达到所述预设值,所述构建单元还用于:

  按照与所述当前块空域不邻接的图像块到所述原点的从短到长的距离,依次添加与所述当前块空域不邻接的图像块的色度预测模式至所述色度帧内模式集合中,其中,所述距离为所述与所述当前块空域不邻接的图像块中一个预设位置像素集合基本单元在所述虚拟坐标系中的水平坐标绝对值和竖直坐标绝对值之和。

  在一种可能的设计中,所述依次添加与所述当前块空域不邻接的图像块的色度预测模式至所述色度帧内模式集合中时,所述构建单元,具体用于:

  按照在所述虚拟坐标系中位于如下坐标位置的像素集合基本单元所在的图像块的顺序,依次添加与所述当前块空域不邻接的图像块的已确定色度预测模式至所述色度帧内模式集合中,直到所述色度帧内模式集合中候选色度预测模式的数量达到所述预设值:(-2×w,0),(0,-2×h),(1,-2×h),(-2×w,1),(-w,-2×h),(-2×w,-h),(-2×w,h+1),(w+1,-2×h),(-2×w,-2×h),(-3×w,0),(0,-3×h),(1,-3×h),(-3×w,1),(-w,-3×h),(-3×w,-h),(w+1,-3×h),(-3×w,h+1),(-2×w,-3×h),(-3×w,-2×h),(2×w+1,-3×h),(-3×w,2×h+1),(-3×w,-3×h)。

  第七方面,本申请实施例提供一种装置,该装置可以是编码器,包括:处理器和存储器;该存储器用于存储指令,当该装置运行时,该处理器执行该存储器存储的该指令,以使该装置执行上述第一方面或第一方面的任一设计,或者第二方面或第二方面的任一设计,或者第三方面或第三方面的任一设计提供的方法。需要说明的是,该存储器可以集成 于处理器中,也可以是独立于处理器之外。

  第八方面,本申请实施例提供一种装置,该装置可以是解码器,包括:处理器和存储器;该存储器用于存储指令,当该装置运行时,该处理器执行该存储器存储的该指令,以使该装置执行上述第一方面或第一方面的任一设计,或者第二方面或第二方面的任一设计,或者第三方面或第三方面的任一设计提供的方法。需要说明的是,该存储器可以集成于处理器中,也可以是独立于处理器之外。

  第九方面,本申请实施例还提供一种可读存储介质,所述可读存储介质中存储有程序或指令,当其在计算机上运行时,使得上述各方面所述的任一方法被执行。

  第十方面,本申请实施例还提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各方面所述的任一方法。

  第十一方面,本申请提供了一种芯片,所述芯片与存储器相连,用于读取并执行所述存储器中存储的软件程序,以实现任一方面的任一设计所述的方法。

  另外,第二方面至第十一方面中任一种设计方式所带来的技术效果可参见第一方面中不同实现方式所带来的技术效果,此处不再赘述。

附图说明

  图1为本申请实施例提供的视频编解码系统结构示意图;

  图2A为本申请实施例提供的视频编码器结构示意图;

  图2B为本申请实施例提供的视频解码器结构示意图;

  图3为本申请实施例提供的一种空域邻接块示意图;

  图4为本申请实施例提供的帧内预测模式示意图;

  图5为本申请实施例提供的空域邻接块位置示意图;

  图6为本申请实施例提供的空域邻近(邻接或者非邻接)块位置示意图;

  图7为本申请实施例提供的时域邻近块位置示意图;

  图8为本申请实施例提供的中心位置的子块示意图;

  图9为本申请实施例提供的一种解码流程中亮度模式预测的示意图;

  图10为本申请实施例提供的一种解码流程中色度模式预测的示意图;

  图11为本申请实施例提供的装置1100结构示意图;

  图12为本申请实施例提供的装置1200结构示意图。

具体实施方式

  下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。

  在一种可行的实施方式中,本申请中针对帧内预测模式中的最可能帧内预测模式(most probable mode,MPM)集合(集合也可称为列表,list)的构建,选定帧内预测模式(selected modes)集合的构建,以及色度帧内预测模式(本申请中可以称为传统色度帧内模式集合)进行了改进。例如,根据一些视频解码技术,视频编码器可在确定及用信号发送当前正经编码的块的帧内预测信息之前对MPM或selected modes集合或者,传统色度帧内模式集合进行构建,或者,视频解码器可在确定及接收当前正经解码的块的帧内预测信息之前对MPM 或selected modes集合或传统色度帧内模式集合进行构建。本申请涉及MPM或selected modes集合或传统色度帧内模式集合的构建,以选择合适的方法编解码帧内预测模式,更有效地利用了编解码过程中获得的先验信息,提高了编解码性能。

  需要说明的是,MPM或selected modes集合或传统色度帧内模式集合均有容量的限制,为了区分,MPM集合的容量为第一预设值,selected modes集合的容量为第二预设值,传统色度帧内模式集合的容量为第三预设值。

  在一种可行的实施方式中,作为候选的亮度帧内预测模式被分为MPM集合中的亮度帧内预测模式,以及剩余的亮度帧内预测模式。视频编码器可从MPM集合中,按MPM在视频数据的图片或条带中出现的次序(例如,解码次序)产生MPM的列表,列表包含帧内预测模式。在另一可行的实施方式中,视频解码器可检查空域邻近块或非邻近块或者时域邻近块的帧内预测模式来产生MPM的列表。视频编码器可根据所产生列表的索引且在不对列表中的MPM排序或重新定序的情况下用信号发送MPM。视频解码器可执行相同过程以产生MPM的列表,从经编码码流获得列表的索引,且在不对列表中的MPM进行排序或重新定序的情况下根据索引从列表选择MPM。在一种可行的实施方式中,作为候选的亮度帧内预测模式被分为MPM集合中的帧内预测模式,selected modes集合中的亮度帧内预测模式和剩余的亮度帧内预测模式,其中,剩余的亮度帧内预测模式也可以称为non-selected modes集合中的亮度帧内预测模式。其中,采用与上述处理MPM集合中的帧内预测模式相同的原理,处理selected modes集合中的帧内预测模式,不再赘述。在一种可行的实施方式中,作为候选的色度帧内预测模式被分为传统色度帧内模式集合中的色度帧内预测模式,以及剩余的色度帧内预测模式。视频编码器可检查空域邻近块或非邻近块或者时域邻近块的帧内预测模式来产生传统色度帧内模式集合。

  在一种可行的实施方式中,为了达成说明的目的,视频解码器可首先检查定位于当前正经解码的块左边的块(本文中称作“左边邻近块”)的帧内预测模式是否与当前块的帧内预测模式相同。视频解码器接着可检查定位于当前正经解码的块上方的块(本文中称作“上方邻近块”)的帧内预测模式是否与当前块的帧内预测模式相同。在此可行的实施方式中,根据本申请的方面,左边邻近块的帧内预测模式在通过视频解码器维持的MPM的列表中可具有索引零,且上方邻近块的帧内预测模式在列表中可具有索引一。因此,视频编码器可用信号发送左边邻近块的帧内模式的索引为零且上方邻近块的索引为一,而不管左边邻近块的实际帧内预测模式编号(例如,如由视频解码标准指定的预定义模式编号)是否大于上方邻近块。替代地,如果视频解码器在左边邻近块之前检查上方邻近块的帧内预测模式,那么视频解码器可用信号发送上方邻近块的索引为零且左边邻近块的索引为一。在任何情况下,根据本申请的这些可行的实施方式及方面,视频编码器可在不对列表中的帧内预测模式进行重新定序或排序的情况下用信号发送帧内模式的索引。在一些可行的实施方式中,如果帧内模式不为MPM中的一者,那么可将排序应用于帧内预测模式解码。即,视频编码器可在用信号发送不为MPM的帧内预测模式时对帧内预测模式的列表进行排序或以其它方式修改。本申请中,视频解码器检查邻近块的帧内预测模式的次序(本文中称作“检查次序”)可根据先前经解码块的帧内预测模式的所收集统计数据而使帧内预测模式隐含地导出。在其它可行的实施方式中,视频解码器可基于邻近块的可用性导出检查次序。在另外其它可行的实施方式中,视频编码器可用信号发送(且视频解码器可从经编码码流获得)检查次序的明确指示。同理,对于selected modes集合以及传统色度帧内模式集合采用相似的 方法以及可行的实施方式处理,不再赘述。

  本申请实施例提供的图像块的帧内模式预测方案可以应用于视频图像的编码或者解码中。图1为本申请实施例中视频编码及解码系统10的一种示意性框图。如图1所示,系统10包含源装置11和目的装置12,源装置11产生编码视频数据并发送给目的装置12,目的装置12用于接收编码视频数据,并对编码视频数据进行解码并显示。源装置11及目的装置12可包括广泛范围的装置中的任一种,包含桌上型计算机、笔记型计算机、平板计算机、机顶盒、例如所谓的“智能”电话的电话手机、所谓的“智能”触控板、电视、摄影机、显示装置、数字媒体播放器、视频游戏控制台、视频流式传输装置等。

  目的装置12可经由链路16接收待解码的经编码视频数据。链路16可包括能够将经编码视频数据从源装置11传递到目的装置12的任何类型的媒体或装置。在一个可能的实现方式中,链路16可包括使源装置11能够实时将经编码视频数据直接传输到目的装置12的通信媒体。可根据通信标准(例如,无线通信协议)调制经编码视频数据且将其传输到目的装置12。通信媒体可包括任何无线或有线通信媒体,例如射频频谱或一个或多个物理传输线。通信媒体可形成基于包的网络(例如,局域网、广域网或因特网的全球网络)的部分。通信媒体可包含路由器、交换器、基站或可有用于促进从源装置11到目的装置12的通信的任何其它设备。

  替代地,视频编码及解码系统10还包括存储装置,可将经编码数据从输出接口14输出到存储装置。类似地,可由输入接口15从存储装置存取经编码数据。存储装置可包含多种分散式或本地存取的数据存储媒体中的任一者,例如,硬盘驱动器、蓝光光盘、DVD、CD-ROM、快闪存储器、易失性或非易失性存储器或用于存储经编码视频数据的任何其它合适的数字存储媒体。在另一可行的实施方式中,存储装置可对应于文件服务器或可保持由源装置11产生的经编码视频的另一中间存储装置。目的装置12可经由流式传输或下载从存储装置存取所存储视频数据。文件服务器可为能够存储经编码视频数据且将此经编码视频数据传输到目的装置12的任何类型的服务器。可行的实施方式文件服务器包含网站服务器、文件传送协议服务器、网络附接存储装置或本地磁盘机。目的装置12可经由包含因特网连接的任何标准数据连接存取经编码视频数据。此数据连接可包含适合于存取存储于文件服务器上的经编码视频数据的无线信道(例如,Wi-Fi连接)、有线连接(例如,缆线调制解调器等)或两者的组合。经编码视频数据从存储装置的传输可为流式传输、下载传输或两者的组合。

  本申请的技术不必限于无线应用或设定。技术可应用于视频解码以支持多种多媒体应用中的任一个,例如,空中电视广播、有线电视传输、卫星电视传输、流式传输视频传输(例如,经由因特网)、编码数字视频以用于存储于数据存储媒体上、解码存储于数据存储媒体上的数字视频或其它应用。在一些可能的实现方式中,系统10可经配置以支持单向或双向视频传输以支持例如视频流式传输、视频播放、视频广播和/或视频电话的应用。

  在图1的可能的实现方式中,源装置11可以包括视频源13、视频编码器20及输出接口14。在一些应用中,输出接口14可包括调制器/解调制器(调制解调器)和/或传输器。在源装置11中,视频源13可包括例如以下各种的源设备:视频捕获装置(例如,摄像机)、含有先前捕获的视频的存档、用以从视频内容提供者接收视频的视频馈入接口,和/或用于产生计算机图形数据作为源视频的计算机图形系统,或这些源的组合。作为一种可能的实现方式,如果视频源13为摄像机,那么源装置11及目的装置12可形成所谓的摄影机电话 或视频电话。本申请中所描述的技术可示例性地适用于视频解码,且可适用于无线和/或有线应用。

  可由视频编码器20来编码捕获、预捕获或计算产生的视频。经编码视频数据可经由源装置11的输出接口14直接传输到目的装置12。经编码视频数据也可(或替代地)存储到存储装置上以供稍后由目的装置12或其它装置存取以用于解码和/或播放。

  目的装置12包含输入接口15、视频解码器30及显示装置17。在一些应用中,输入接口15可包含接收器和/或调制解调器。目的装置12的输入接口15经由链路16接收经编码视频数据。经由链路16传达或提供于存储装置上的经编码视频数据可包含由视频编码器20产生以供视频解码器30的视频解码器使用以解码视频数据的多种语法元素。这些语法元素可与在通信媒体上传输、存储于存储媒体上或存储于文件服务器上的经编码视频数据包含在一起。

  显示装置17可与目的装置12集成或在目的装置12外部。在一些可能的实现方式中,目的装置12可包含集成显示装置且也经配置以与外部显示装置接口连接。在其它可能的实现方式中,目的装置12可为显示装置。一般来说,显示装置17向用户显示经解码视频数据,且可包括多种显示装置中的任一个,例如液晶显示器、等离子显示器、有机发光二极管显示器或另一类型的显示装置。

  视频编码器20及视频解码器30可根据例如目前在开发中的下一代视频编解码压缩标准(H.266)操作且可遵照H.266测试模型(JEM)。替代地,视频编码器20及视频解码器30可根据例如ITU-TH.265标准,也称为高效率视频解码标准,或者,ITU-TH.264标准的其它专属或工业标准或这些标准的扩展而操作,ITU-TH.264标准替代地被称为MPEG-4第10部分,也称高级视频编码(advanced video coding,AVC)。然而,本申请的技术不限于任何特定解码标准。视频压缩标准的其它可能的实现方式包含MPEG-2和ITU-TH.263。

  尽管未在图1中展示,但在一些方面中,视频编码器20及视频解码器30可各自与音频编码器及解码器集成,且可包含适当多路复用器-多路分用器(MUX-DEMUX)单元或其它硬件及软件以处置共同数据流或单独数据流中的音频及视频两者的编码。如果适用,那么在一些可行的实施方式中,MUX-DEMUX单元可遵照ITUH.223多路复用器协议或例如用户数据报协议(UDP)的其它协议。

  视频编码器20及视频解码器30各自可实施为多种合适编码器电路中的任一者,例如,一个或多个微处理器、数字信号处理器(digital signal processing,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现场可编程门阵列(field-programmable gate array,FPGA)、离散逻辑、软件、硬件、固件或其任何组合。在技术部分地以软件实施时,装置可将软件的指令存储于合适的非暂时性计算机可读媒体中且使用一个或多个处理器以硬件执行指令,以执行本申请的技术。视频编码器20及视频解码器30中的每一者可包含于一个或多个编码器或解码器中,其中的任一者可在相应装置中集成为组合式编码器/解码器(CODEC)的部分。

  JCT-VC开发了H.265(HEVC)标准。HEVC标准化基于称作HEVC测试模型(HM)的视频解码装置的演进模型。H.265的最新标准文档可从http://www.itu.int/rec/T-REC-H.265获得,最新版本的标准文档为H.265(12/16),该标准文档以全文引用的方式并入本文中。HM假设视频解码装置相对于ITU-TH.264/AVC的现有算法具有若干额外能力。例如,H.264提供9种帧内预测编码模式,而HM可提供多达35种帧内预测编码模式。

  JVET致力于开发H.266标准。H.266标准化的过程基于称作H.266测试模型的视频解码装置的演进模型。H.266的算法描述可从http://phenix.int-evry.fr/jvet获得,其中最新的算法描述包含于JVET-F1001-v2中,该算法描述文档以全文引用的方式并入本文中。同时,可从https://jvet.hhi.fraunhofer.de/svn/svn_HMJEMSoftware/获得JEM测试模型的参考软件,同样以全文引用的方式并入本文中。

  一般来说,HM的工作模型描述可将视频帧或图像划分成包含亮度及色度样本两者的树块或最大编码单元(largest coding unit,LCU)的序列,LCU也被称为CTU。树块具有与H.264标准的宏块类似的目的。条带包含按解码次序的数个连续树块。可将视频帧或图像分割成一个或多个条带。可根据四叉树将每一树块分裂成编码单元。例如,可将作为四叉树的根节点的树块分裂成四个子节点,且每一子节点可又为母节点且被分裂成另外四个子节点。作为四叉树的叶节点的最终不可分裂的子节点包括解码节点,例如,经解码视频块。与经解码码流相关联的语法数据可定义树块可分裂的最大次数,且也可定义解码节点的最小大小。

  编码单元包含解码节点及预测单元(prediction unit,PU)以及与解码节点相关联的变换单元(transform unit,TU)。CU的大小对应于解码节点的大小且形状必须为正方形。CU的大小的范围可为8×8像素直到最大64×64像素或更大的树块的大小。每一CU可含有一个或多个PU及一个或多个TU。例如,与CU相关联的语法数据可描述将CU分割成一个或多个PU的情形。分割模式在CU是被跳过或经直接模式编码、帧内预测模式编码或帧间预测模式编码的情形之间可为不同的。PU可经分割成形状为非正方形。例如,与CU相关联的语法数据也可描述根据四叉树将CU分割成一个或多个TU的情形。TU的形状可为正方形或非正方形。

  HEVC标准允许根据TU进行变换,TU对于不同CU来说可为不同的。TU通常基于针对经分割LCU定义的给定CU内的PU的大小而设定大小,但情况可能并非总是如此。TU的大小通常与PU相同或小于PU。在一些可行的实施方式中,可使用称作“残余四叉树”(residual qualtree,RQT)的四叉树结构将对应于CU的残余样本再分成较小单元。RQT的叶节点可被称作TU。可变换与TU相关联的像素差值以产生变换系数,变换系数可被量化。

  一般来说,PU包含与预测过程有关的数据。例如,在PU经帧内模式编码时,PU可包含描述PU的帧内预测模式的数据。作为另一可行的实施方式,在PU经帧间模式编码时,PU可包含界定PU的运动矢量的数据。例如,界定PU的运动矢量的数据可描述运动矢量的水平分量、运动矢量的垂直分量、运动矢量的分辨率(例如,四分之一像素精确度或八分之一像素精确度)、运动矢量所指向的参考图像,和/或运动矢量的参考图像列表(例如,列表0、列表1或列表C)。

  一般来说,TU使用变换及量化过程。具有一个或多个PU的给定CU也可包含一个或多个TU。在预测之后,视频编码器20可计算对应于PU的残余值。残余值包括像素差值,像素差值可变换成变换系数、经量化且使用TU扫描以产生串行化变换系数以用于熵解码。本申请通常使用术语“图像块”来指CU的解码节点。在一些特定应用中,本申请也可使用术语“图像块”来指包含解码节点以及PU及TU的树块,例如,LCU或CU。

  视频序列通常包含一系列视频帧或图像。图像群组(group of picture,GOP)示例性地包括一系列、一个或多个视频图像。GOP可在GOP的头信息中、图像中的一者或多者的头信息中或在别处包含语法数据,语法数据描述包含于GOP中的图像的数目。图像的每一条 带可包含描述相应图像的编码模式的条带语法数据。视频编码器20通常对个别视频条带内的视频块进行操作以便编码视频数据。视频块可对应于CU内的解码节点。视频块可具有固定或变化的大小,且可根据指定解码标准而在大小上不同。

  作为一种可行的实施方式,HM支持各种PU大小的预测。假定特定CU的大小为2N×2N,HM支持2N×2N或N×N的PU大小的帧内预测,及2N×2N、2N×N、N×2N或N×N的对称PU大小的帧间预测。HM也支持2N×nU、2N×nD、nL×2N及nR×2N的PU大小的帧间预测的不对称分割。在不对称分割中,CU的一方向未分割,而另一方向分割成25%及75%。对应于25%区段的CU的部分由“n”后跟着“上(Up)”、“下(Down)”、“左(Left)”或“右(Right)”的指示来指示。因此,例如,“2N×nU”指水平分割的2N×2NCU,其中2N×0.5NPU在上部且2N×1.5NPU在底部。

  在本申请中,“N×N”与“N乘N”可互换使用以指依照垂直维度及水平维度的图像块的像素尺寸,例如,16×16像素或16乘16像素。一般来说,16×16块将在垂直方向上具有16个像素(y=16),且在水平方向上具有16个像素(x=16)。同样地,N×N块一股在垂直方向上具有N个像素,且在水平方向上具有N个像素,其中N表示非负整数值。可将块中的像素排列成行及列。此外,块未必需要在水平方向上与在垂直方向上具有相同数目个像素。例如,块可包括N×M个像素,其中M未必等于N。

  在使用CU的PU的帧内预测性或帧间预测性解码之后,视频编码器20可计算CU的TU的残余数据。PU可包括空间域(也称作像素域)中的像素数据,且TU可包括在将变换(例如,离散余弦变换(discrete cosine transform,DCT)、整数变换、小波变换或概念上类似的变换)应用于残余视频数据之后变换域中的系数。残余数据可对应于未经编码图像的像素与对应于PU的预测值之间的像素差。视频编码器20可形成包含CU的残余数据的TU,且接着变换TU以产生CU的变换系数。

  JEM模型对视频图像的编码结构进行了进一步的改进,具体的,被称为“四叉树结合二叉树”(QTBT)的块编码结构被引入进来。QTBT结构摒弃了HEVC中的CU,PU,TU等概念,支持更灵活的CU划分形状,一个CU可以正方形,也可以是长方形。一个CTU首先进行四叉树划分,该四叉树的叶节点进一步进行二叉树划分。同时,在二叉树划分中存在两种划分模式,对称水平分割和对称竖直分割。二叉树的叶节点被称为CU,JEM的CU在预测和变换的过程中都不可以被进一步划分,也就是说JEM的CU,PU,TU具有相同的块大小。在现阶段的JEM中,CTU的最大尺寸为256×256亮度像素。

  在本申请实施例中,视频编码器可执行帧内预测以减少图像之间的时间冗余。如前文所描述,根据不同视频压缩编解码标准的规定,CU可具有一个或多个预测单元PU。换句话说,多个PU可属于CU,或者PU和CU的尺寸相同。在本文中当CU和PU尺寸相同时,CU的分割模式为不分割,或者即为分割为一个PU,且统一使用PU进行表述。当视频编码器执行帧内预测时,视频编码器可用信号通知视频解码器用于PU的帧内预测信息。

  在一些可行的实施方式中,视频编码器20和/或视频解码器30可在帧内预测解码期间识别所谓的“最可能”帧内预测模式。即,例如,视频编码器20和/或视频解码器30可识别与当前正经解码的块相邻的先前经解码块(已确定帧内预测模式的块,也可称作“参考块”)的帧内预测模式,且比较这些帧内预测模式与当前正经解码的块(称作“当前块”)的帧内预测模式。归因于邻近块与当前块的空间或者时间的接近性,这些参考块的帧内模式与当前块相同或类似的概率可为相对高的。如下文更详细地描述,可在识别MPM时考虑多个参考 块的帧内预测模式。

  另外,在一些可行的实施方式中,视频编码器20和/或视频解码器30可用信号发送识别MPM的索引。即,如根据解码标准所定义,每一帧内预测模式可具有相关联的帧内预测模式索引(标准对每种模式预先赋予的索引,非编解码过程中临时赋予的索引),帧内预测模式索引将帧内预测模式识别为多个可能帧内预测模式中的一者。例如,JEM标准可支持多达67个亮度帧内预测模式,其中每一亮度帧内预测模式经指派一索引值(例如,查找表的索引值),索引值可用以识别帧内预测模式。

  图2A为本申请实施例中视频编码器20的一种示意性框图。

  如图2A所示,视频编码器20可以包括:预测模块21、求和器22、变换模块23、量化模块24和熵编码模块25。在一种示例下,预测模块21可以包括帧间预测模块211和帧内预测模块212,本申请实施例对预测模块21的内部结构不作限定。可选的,对于混合架构的视频编码器,视频编码器20也可以包括反量化模块26、反变换模块27和求和器28。

  在图2A的一种可行的实施方式下,视频编码器20还可以包括存储模块29,应当理解的是,存储模块29也可以设置在视频编码器20之外。

  在另一种可行的实施方式下,视频编码器20还可以包括滤波器(图2A中未示意)以对图像块的边界进行滤波从而从经重建的视频图像中去除伪影。在需要时,滤波器对求和器28的输出进行滤波。

  可选地,视频编码器20还可以包括分割单元(图2A中未示意)。视频编码器20接收视频数据,且分割单元将视频数据分割成图像块。此分割也可包含分割成条带、图像块或其它较大单元,以及(例如)根据LCU及CU的四叉树结构进行视频块分割。视频编码器20示例性地说明编码在待编码的视频条带内的视频块的组件。一般来说,条带可划分成多个图像块(且可能划分成称作图像块的视频块的集合)。

  预测模块21用于对当前编码图像块(简称为当前块)进行帧内或者帧间预测得到当前块的预测值(本申请中可以称为预测信息)。具体的,预测模块21包括的帧间预测模块211针对当前块进行帧间预测得到帧间预测值。帧内预测模块212针对当前块进行帧内预测得到帧内预测值。帧间预测模块211需要为当前块在参考图像中尝试多个参考块,最终使用哪一个或者哪几个参考块用作预测则使用率失真优化(rate-distortion optimization,RDO)或者其他方法确定。在一些可行的实施方式中,帧内预测模块212可(例如)在单独编码遍历期间使用各种帧内预测模式来编码当前块。

  帧内预测模块212可计算各种经编码块的失真及码率的比率以确定哪一帧内预测模式展现出块的最佳码率-失真值。根据JEM标准,可存在多达67个帧内预测模式,且每一帧内预测模式可与索引相关联。

  本申请示例性地涉及帧内解码。因而,本申请的特定技术可通过帧内预测模块212来执行。在其它可行的实施方式中,视频编码器20的一个或多个其它单元可另外或替代地负责执行本申请的技术。

  例如,帧内预测模块212可确定当前正经编码的块的帧内预测模式(例如,根据如上文所描述的码率-失真分析)。帧内预测模块212也可确定与当前正经帧内解码的块相邻的一个或多个先前经解码块的帧内预测模式(称作MPM)。帧内预测模块212可(例如)通过比较MPM与当前块的帧内模式基于相邻块的所确定帧内模式而指示当前块的所确定帧内模式,如下文更详细地描述。

  在预测模块21经由帧间预测或帧内预测产生当前块的预测值之后,视频编码器20通过从当前块减去预测值而形成残差信息。变换模块23用于对残差信息进行变换。变换模块23使用例如离散余弦变换(DCT)或概念上类似的变换(例如,离散正弦变换DST)将残差信息变换成残差变换系数。变换模块23可将所得残差变换系数发送到量化模块24。量化模块24对残差变换系数进行量化以进一步减小码率。在一些可行的实施方式中,量化模块24可接着执行包含经量化变换系数的矩阵的扫描。替代地,熵编码模块25可执行扫描。

  在量化之后,熵编码模块25可熵编码经量化的残差变换系数得到码流。例如,熵编码模块25可执行上下文自适应性可变长度解码(CAVLC)、上下文自适应性二进制算术解码(CABAC)、基于语法的上下文自适应性二进制算术解码(SBAC)、概率区间分割熵(PIPE)解码或另一熵编码方法或技术。在通过熵编码模块25进行熵编码之后,可将经编码码流传输到视频解码器30或存档以供稍后传输或由视频解码器30检索。

  反量化模块26及反变换模块27分别应用反量化及反变换,以在像素域中重构建残差块以供稍后用作参考图像的参考块。求和器28将经重构建得到的残差信息与通过预测模块21所产生的预测值相加以产生重建块,并将重建块作为参考块以供存储于存储模块29中。这些参考块可由预测模块21用作参考块以帧间或者帧内预测后续视频帧或图像中的块。

  应当理解的是,视频编码器20的其它的结构变化可用于编码视频流。例如,对于某些图像块或者图像帧,视频编码器20可以直接地量化残差信息而不需要经变换模块23处理,相应地也不需要经反变换模块27处理;或者,对于某些图像块或者图像帧,视频编码器20没有产生残差信息,相应地不需要经变换模块23、量化模块24、反量化模块26和反变换模块27处理;或者,视频编码器20可以将经重构图像块作为参考块直接地进行存储而不需要经滤波器单元处理;或者,视频编码器20中量化模块24和反量化模块26可以合并在一起;或者,视频编码器20中变换模块23和反变换模块27可以合并在一起;或者,求和器22和求和器28可以合并在一起。

  图2B为本申请实施例中视频解码器30的一种示意性框图。

  如图2B所示,视频解码器30可以包括熵解码模块31、预测模块32、反量化模块34、反变换模块35和重建模块36。在一种示例下,预测模块32可以包括帧间预测模块322和帧内预测模块321,本申请实施例对此不作限定。

  在一种可行的实施方式中,视频解码器30还可以包括存储模块33。应当理解的是,存储模块33也可以设置在视频解码器30之外。在一些可行的实施方式中,视频解码器30可执行与关于来自图2A的视频编码器20描述的编码流程的示例性地互逆的解码流程。

  在解码过程期间,视频解码器30从视频编码器20接收码流。视频解码器30接收到的码流连续通过熵解码模块31、反量化模块34以及反变换模块35分别进行熵解码、反量化、反变换之后得到残差信息。根据码流确定针对当前块使用的帧内预测还是帧间预测。若是帧内预测,则预测模块32中的帧内预测模块321利用当前块周围已重建块的参考像素的像素值按照所使用的帧内预测方法构建预测信息。如果是帧间预测,则需要解析出运动信息,并使用所解析出的运动信息在已重建的图像块中确定参考块,并将参考块内像素点的像素值作为预测信息(此过程称为运动补偿(Motion compensation,MC))。重建模块36使用预测信息加上残差信息便可以得到重建信息。

  如上文所注明,本申请示例性地涉及帧内解码。因而,本申请的特定技术可由帧内预测模块321来执行。在其它可行的实施方式中,视频解码器30的一个或多个其它单元可另外或替代地负责执行本申请的技术。

  例如,帧内预测模块321可从熵解码模块31获得用于解码视频数据的当前块的MPM

  的列表的索引。帧内预测模块321可通过以与视频编码器20相同的方式使MPM包含于列表中而产生索引所属于的列表。帧内预测模块321接着可基于所获得的索引确定用于解码视频数据的当前块的适当帧内模式。以这个方式,帧内预测模块321可在未根据MPM的帧内模式索引值(标准对每种模式预先赋予的索引,非编解码过程中临时赋予的索引)对MPM进行排序的情况下确定用于解码当前块的适当MPM。

  在一些可行的实施方式中,视频解码器可在帧内预测解码期间识别所谓的“最可能”帧内预测模式。即,例如,视频编码器(例如,视频编码器20)可识别先前经编码块(例如,参考块)的帧内预测模式。归因于这些参考块与当前块的空域或者时域接近性,这些参考块的帧内预测模式与当前块相同或类似的概率可为相对高的。如下文更详细地描述,可在识别MPM时考虑多个参考块的帧内预测模式。

  图3展示可在帧内解码期间考虑的当前块(“当前CU”)及两个参考块(例如,“A”及“B”)的可行的实施方式。例如,视频编码器(例如,视频编码器20)可将与参考块A(定位于当前块左边)及参考块B(定位于当前块上方)相关联的帧内模式视为当前块的MPM。在一些可行的实施方式中,如果MPM候选者(例如,块A或块B)中的任一者不使用帧内模式,或以其它方式不可用(例如,尚未经解码的块),那么视频编码器20可将例如DC模式的默认帧内模式指派给块。同样,在一些可行的实施方式中,MPM的数目可大于二。例如,视频编码器20可基于两个以上参考块的帧内模式产生额外MPM。

  如果当前块的实际帧内模式(例如,通过帧内预测模块212计算)与参考块A或参考块B相同,那么视频编码器20可用信号发送一比特标志,指示使用MPM来编码当前块(例如,将MPM标志设定为等于“1”)。

  另外,根据一些可行的实施方式,视频编码器20可用信号发送识别MPM的索引。例如,JEM标准所支持的67种帧内模式,以及其中每一帧内模式经指派的索引值,如参见图4所示。

  在图4的可行的实施方式中,平面模式具有原始索引值0,直流模式(DC模式)具有原始索引值1,且各种方向性预测模式具有在2与66之间的原始索引值,其中原始索引值指标准对每种模式预先赋予的索引,非编解码过程中临时赋予的索引。

  方向预测模式是指将参考像素按照一定的方向(使用intra mode index标记)将参考像素映射到当前块内的像素点位置上得到当前像素点的预测值,或者,对于每一个当前块内的像素点,将其位置按照一定的方向(使用intra mode index标记)反向映射到参考像素上,对应的参考像素的像素值即为当前像素的预测值。

  不同于方向预测模式,DC模式是将参考像素的平均值作为当前块内像素的预测值,而Planar模式则是利用当前像素点的正上侧和正左侧的参考像素的像素值以及当前块的右上侧和左下侧参考像素点的像素值计算当前像素点的预测值。

  首先先对本申请涉及到的几个概念进行描述,以便本领域技术人员理解。

  (1)、当前块所在的图像中在空域与所述当前块邻接的已确定帧内预测模式的图像块,为了描述方便可以简称为空域邻接图像块,或与所述当前块空域邻接的图像块。其中,本申请实施例中涉及到的“空域邻近”包括“空域邻接”和“空域非邻接”。

  其中,所述当前块邻接的已确定帧内预测模式的图像块,包括和所述当前块位于同一图像中且使用帧内预测模式获得预测值的与所述当前块邻接的重建块。

  具体的,可以包括所述当前块正左方且与所述当前块左下角邻接、正上方且与所述当前块左上角邻接、左下、右上、左上邻接位置的图像块。

  更具体的,(1)中图像块可以包括如图5所示的当前块的左(L),上(A),左上(BL),右上(AR)、左上(AL)位置处的存在帧内预测模式的图像块;

  (2)、当前块所在的图像中在空域与所述当前块非邻接的已确定帧内预测模式的图像块,为了描述方便可以简称为空域非邻接图像块,或与所述当前块空域非邻接的图像块。

  所述当前块所在的图像可以分为M组与所述当前块不邻接的已确定帧内预测模式的图像块,每组与当前块不邻接已确定帧内预测模式的图像块具有一个组号,所述当前块的宽为w,高为h,其中,具有所述组号为i的图像块,包括虚拟坐标系中以下坐标位置的像素集合基本单元所在的图像块:(-i×w,-i×h),(1+m×w,-i×h),(-m×w,-i×h),(-i×w,-m×h),(-i×w,m×h+1),其中,m取从0到i-1范围内的所有整数,M、i、w、h为正整数,i不大于M且i取值不为1,所述虚拟坐标系以所述当前块的右下角像素集合基本单元在所述图像中的位置为原点,以所述当前块的底边界所在的直线为水平坐标轴,向右为水平正方向,以所述当前块的右边界所在的直线为竖直坐标轴,向下为竖直正方向。比如,如图6所示,当组号i等于1时,则为邻近所述当前块的第一圈(标记为1-5的像素集合所在的图像块);当组号i等于2时,则为非邻近所述当前块的第二圈(标记为6-12的像素集合所在的图像块),当组号i等于3时,则为非邻近所述当前块的第三圈(标记为13-27的像素集合所在的图像块)。

  例如,如图6所示,图6为本申请实施例中当前块及与其关联的非邻接位置图像块的一种示例性示意图,在编码或解码当前块之前,该多个空域非邻接的图像块已完成重建,即该多个空域非邻接的图像块的帧内预测模式已经确定。当任一该多个空域非邻接的图像块不可用时,即为帧内编码块或者超出图像、条带、片边界等情况时,可以在后续操作中排除该图像块。显然,该多个空域非邻接的图像块中包括不与该当前块邻接的已确定帧内预测模式的图像块,比如,图6中标记为6-27的像素集合所在的图像块。图6中标记为1-5的像素集合所在的图像块为(1)中描述的空域邻接图像块。

  在一种可行的实施方式中,图6中标记为1-27的像素集合所在的图像块并不代表前文所述的PU或者CU。下面对图6示例性的进行详细说明。其中,标记为C的大矩形块为当前块。不妨将标记为1-27的小矩形设为基本像素单元,大矩形的长为w个基本像素单元,高为h个基本像素单元,w和h均为正整数,每个小矩形所在的图像块的尺寸和当前块的尺寸相同,基本像素单元可以为一个像素点,也可以为一个4x4的像素集合,也可以为一个4x2的像素集合,也可以为其他大小的像素集合,不作限定。以当前块的右下角像素集合基本单元在所述图像中的位置为原点,以当前块的底边界所在的直线为水平坐标轴,向右为水平正方向,以当前块的右边界所在的直线为竖直坐标轴,向下为竖直正方向,在当前块所在的图像平面上建立虚拟坐标系,则从标记1到标记27,各个小矩形的坐标位置分别为(-w,0),(0,-h),(1,-h),(-w,1),(-w,-h),(-2×w,0),(0,-2×h),(1,-2×h),(-2×w,1),(-w,-2×h),(-2×w,-h),(-2×w,h+1),(w+1,-2×h),(-2×w,-2×h),(-3×w,0),(0,-3×h),(1,-3×h),(-3×w,1),(-w,-3×h),(-3×w,-h),(w+1,-3×h),(-3×w,h+1),(-2×w,-3×h),(-3×w,-2×h),(2×w+1,-3×h),(-3×w,2×h+1),(-3×w,-3×h)。

  应理解,图6展示了本申请实施例中当前块及与其关联的非邻接位置图像块的一种示例性的可行的实施方式,空域邻近的图像块的数量可以多于27个,也可以少于27个,不作限定。

  示例性的,所述当前块所在的图像可以由至少两行编码树单元CTU构成,所述当前块的尺寸不大于所述编码树单元的尺寸。则在空域与所述当前块不邻接的已确定帧内预测模式的图像块所在的编码树单元在所述图像中所在的行数(或者列数)与所述当前块所在的编码树单元在所述图像中所在的行数(或者列数)相差小于N行,其中,N为大于1的整数,例如:N=2。

  具体的,不妨设CTU的长为2倍w,高为2倍h,当前块C位于一个CTU的左上角,则在图6中标记为27、23、19、16、17、21、25的基本像素单元所在的已确定帧内预测模式的图像块所在的CTU的行数和当前块所在CTU的行数相差为2。当N为2时,标记为27、23、19、16、17、21、25、26的基本像素单元所在的图像块不为空域非邻接图像块。

  在一些可行的实施方式中,同理,标记为24、20、25、15的基本像素单元所在的图像块也为空域非邻接图像块。

  在一些可行的实施方式中,同理,标记为18、22、26的基本像素单元所在的图像块也不为空域非邻接块。

  (3)在时域与所述当前块邻近的已确定帧内预测模式的图像块,为了描述方便简称时域邻近图像块,或与所述当前块时域邻近的已确定帧内预测模式的图像块,或与所述当前块时域邻近的图像块。

  具体的,参见图7所示,图7为本申请实施例中当前块及与其关联的时域邻近图像块的一种示例性示意图。

  所述当前块的并置块的右下角空域邻近块和位于所述并置块的中心位置的子块,所述子块是存储预测信息的基本单元,所述并置块为在时域与所述当前块所在的图像邻近的参考图像中与所述当前块大小、形状和位置均相同的图像块。图7中,TCtr表示位于中心位置的子块,TRb表示右下角空域邻近块。

  其中,存储预测信息的基本单元可以为一个4x4的像素集合,也可以为一个4x8的像素集合,也可以为其他大小的像素集合,不作限定。

  子块大小以4x4像素集合为例,不妨设,当前块的长为w个像素,高为h个像素,中心4x4块的左上角顶点相对于并置块的左上角顶点的坐标为其中,数学符号表示向下取整,例如:A=3.9,则

  参见图8所示,若W=8,H=4,则位于中心的4x4子块的左上角顶点相对于并置块的左上角顶点的坐标为(4,0)。若,W=8,H=8,则位于中心的4x4子块的左上角顶点相对于并置块的左上角顶点的坐标为(4,4)。

  在亮度模式帧内预测中,示例性的,不妨将上述67种帧内模式作为候选亮度帧内预测模式,可以通过将帧内模式划分为MPM集合,selected modes集合和Non-selected modes集合(也可以称为剩余模式),来提高编码最终选定的帧内预测模式的效率,进一步的,不妨设MPM集合的容量为6个候选帧内预测模式,selected modes集合的容量为16个候选帧内预测模式,剩余的45个候选帧内预测模式为剩余模式,或者说属于Non-selected modes集合。应理解,方向性预测模式、非方向性预测模式,MPM集合中的预测模式,selected  modes集合中的预测模式,Non-selected modes集合中的预测模式,其数量均不作限定。

  应理解,MPM集合中的候选帧内预测模式的集合是67种候选帧内预测模式的子集。

  应理解,MPM集合中的候选帧内预测模式互不相同,且selected modes集合中的候选帧内预测模式互不相同。

  与亮度分量类似,色度分量的帧内模式预测也是利用当前色度块周围相邻已重建块的边界像素作为当前块的参考像素,按照一定的预测模式将参考像素映射到当前色度块内的像素点,作为当前色度块内像素的预测值。所不同的是,由于色度分量的纹理一般较为简单,所以色度分量的帧内模式预测模式的数量一般少于亮度分量。在色度帧内预测模式中,对于色度分量有11中帧内预测模式,其中包括5个传统色度帧内模式,6个分量间线性模型(cross-component linear model,CCLM)模式。

  色度帧内预测模式可以被划分为3类:CCLM模式、导出模式(derived mode,DM)以及从空域邻近块获取的色度帧内预测模式。CCLM模式是基于相关性模型用像素的亮度分量的重建值计算该像素的色度分量的预测值,相关性模型的参数由当前块的上侧与左侧的参考像素的亮度分量与色度分量的重建值计算得到。DM是使用当前块亮度分量的预测模式作为当前块色度分量的预测模式进行预测。其中,导出模式和从空域邻近块获取的色度帧内预测模式可以统称为传统色度帧内模式集合。

  另外,需要理解的是,在本申请的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。本申请描述中的多个是指两个或者两个以上。本申请的描述中,“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。

  图9和图10为本申请实施例中所描述的一个或多个可行的实施方式的解码视频数据的方法的流程图。图9为亮度帧内预测方法流程图,图10为色度帧内预测方法流程图。

  具体的,如图9所示,本申请实施例的方法,包括:

  S901,构建第一亮度帧内模式集合。其中,所述第一亮度帧内模式集合是多个预设候选亮度预测模式的子集。

  S902,从所述码流中解析第一标识。需要说明的是,S902和S901没有先后顺序之分。

  第一亮度帧内模式集合可以为MPM集合。第一标识相应的为表示编码端最终选定的当前块的亮度预测模式是否来自与MPM集合的标识。例如,当第一标识为“1”时,指示当前块的亮度预测模式来自于MPM集合,当第一标识为“0”时,指示当前块的亮度预测模式不属于MPM集合。其中第一标识可以是MPM_flag。

  应理解,MPM集合有多种构建方式,包括MPM集合中候选亮度预测模式的种类和其在集合列表中的排列顺序。

  MPM集合中可能包括的候选亮度预测模式:

  (A)、上述(1)中所述当前块的已确定帧内预测模式的空域邻接图像块的亮度预测模式,也可以称为所述当前块的空域邻接图像块的已确定亮度预测模式;

  (B)、上述(2)中所述当前块已确定帧内预测模式的空域非邻接图像块的亮度预测模式,也可以称为所述当前块的空域非邻接图像块的已确定亮度预测模式;

  (C)、上述(3)中所述的当前块已确定帧内预测模式的时域邻近图像块的亮度预测模式,也可以称为所述当前块的时域邻近图像块的已确定亮度预测模式;

  (D)、预设的非方向性预测模式。

  (E)、根据(1)获得的方向性预测模式的相邻预测方向的预测模式。

  (F)、默认的亮度预测模式。默认的亮度预测模式可以包括索引号为{0,1,50,18,2,34}的方向性预测模式。

  其中,(D)非方向性预测模式包括DC模式和/或planar模式。(E)中的候选亮度预测模式包括与加入MPM集合中的(A)中候选亮度预测模式的索引号相差为1(索引差的绝对值为1)的索引号所代表的候选亮度预测模式,示例性的,还可以包括与加入MPM集合中的(A)中候选亮度预测模式的索引号相差为2、3或其他整数值的索引号所代表的候选亮度预测模式,不作限定。

  应理解,在将不同的候选亮度预测模式加入到MPM集合的过程中,需要同时进行“修剪”(pruning),避免将相同的候选亮度预测模式重复加入到MPM集合中,保证MPM集合中每一个索引值只代表一种亮度预测模式。

  应理解,MPM集合的容量是预设的,即MPM集合中含有的候选亮度预测模式的个数不超过第一预设值。在构建MPM集合的过程中,按照预定的添加顺序依次向MPM集合中添加候选亮度预测模式,直到达到第一预设值。

  第一种可能的实施方式中,MPM集合中的候选亮度预测模式包括上述(A)-(F)中的候选亮度预测模式。

  基于第一种可能的实施方式,第一种可能的添加顺序包括:(A)中的候选亮度预测模式和(D)中预设的非方向性的候选亮度预测模式、(C)中的候选亮度预测模式、(B)中的候选亮度预测模式、(E)中的候选亮度预测模式、(F)中默认的亮度预测模式。应理解,本申请中涉及到的添加顺序仅反映了一种趋势,具体的实现顺序可能有颠倒和交叉,不作限定。

  示例性的,参见图5所示,(A)中的候选亮度预测模式和(D)中预设的非方向性的候选亮度预测模式可以按照如下顺序添加至MPM集合:所述当前块正左方且与所述当前块左下角邻接的图像块(L)的亮度预测模式、所述当前块正上方且与所述当前块左上角邻接的图像块(A)的亮度预测模式、Planar模式、DC模式、所述当前块左下角邻接的图像块(BL)的亮度预测模式、所述当前块右上角邻接的图像块(AR)的亮度预测模式、所述当前块左上角邻接位置的图像块(AL)的亮度预测模式。

  示例性的,参见图7-图8所示,(C)中候选亮度预测模式可以按照如下顺序添加至MPM集合中:位于并置块的中心位置的子块的亮度预测模式、位于并置块的右下角空域邻近块的亮度预测模式。

  示例性的,(B)中的候选亮度预测模式可以按照如下顺序添加至MPM集合中:所述已确定帧内预测模式的图像块具有的所述组号的从小到大的顺序。参见图6所示,即,按照第一组,第二组,第三组的顺序依次添加空域不邻接图像块的亮度预测模式至MPM集合中。

  可选地,当至少两个与所述当前块不邻接的已确定帧内预测模式的图像块具有的所述组号相同时,可以按照所述至少两个与所述当前块不邻接的已确定帧内预测模式的图像块到所述原点的从短到长的距离,依次添加所述至少两个与所述当前块不邻接的已确定帧内预测模式的图像块的亮度预测模式至所述MPM集合中,其中,所述距离为所述与所述当前块不邻接的已确定帧内预测模式的图像块中一个预设位置像素集合基本单元在所述虚 拟坐标系中的水平坐标绝对值和竖直坐标绝对值之和。

  可选地,也可以直接按照与所述当前块不邻接的已确定帧内预测模式的图像块到所述原点的从短到长的距离,依次添加与所述当前块不邻接的已确定帧内预测模式的图像块的亮度预测模式至所述MPM集合中,,其中,所述距离为所述与所述当前块不邻接的已确定帧内预测模式的图像块中一个预设位置像素集合基本单元在所述虚拟坐标系中的水平坐标绝对值和竖直坐标绝对值之和。

  具体的,在同一组内,比较各基本像素单元到当前块中预设基本像素单元的距离,距离越近的基本像素单元所在的图像块的亮度预测模式越先添加。不妨假设,当前块中的预设基本像素单元位于该图像块的右下角,即虚拟坐标系的原点位置,对于第二组中的运动信息的获取,包括:

  1)计算各基本像素单元到原点位置的距离,距离的计算方式为各基本像素单元到原点位置的水平坐标绝对值和竖直坐标绝对值之和。应理解,当预设基本像素单元不为原点时,距离的计算方式为各基本像素单元和预设基本像素单元的水平坐标差值的绝对值和竖直坐标差值的绝对值之和。

  其中,标记为13的基本像素单元的距离D13为w+1+2xh,同理,D8为1+2xh,D7为2xh,D10为w+2xh,D14为2xw+2xh,D11为2xw+h,D9为2xw,D6为2xw+1,D12为2xw+h+1。不妨设,w和h相等,则D13为3xh+1,D8为2xh+1,D7为2xh,D10为3xh,D14为4xh,D11为3xh,D9为2xh,D6为2xh+1,D12为3xh+1。

  2)按照距离的从近及远依次添加所述空域非邻近图像块的亮度预测模式至MPM列表中。其中,当距离相同时按照预测的规则(比如按照从左到右,从上到下的顺序,只需要编解码端一致即可,不作限定),依次添加所述空域非邻近图像块的亮度预测模式至MPM列表中。

  示例性的,第二组中组内图像块的亮度预测模式添加顺序可以为标记为6、7、8、9、10、11、12、13、14的基本像素单元所在的图像块的亮度预测模式。

  示例性的,以图6所示为例,(B)中的候选亮度预测模式可以按照标记为6、7、8、9、10、11、12、13、14、15、16、17、18、19、20、21、22、23、24、25、26、27的基本像素单元所在的图像块顺序,依次添加标记为6-27的基本像素单元所在的图像块的亮度预测模式至MPM集合中。

  示例性的,(B)中的候选亮度预测模式的添加顺序,可以是预先确定的采用每个空域非邻近图像块的亮度预测模式预测准确性从大到小的顺序。预测准确性可以是历史时长内通过统计得到的。

  作为第一种可能的添加顺序对应的一种具体的实施例,参考图5-图7所示,按照L->A->planar->DC->BL->AR->AL顺序依次添加对应的图像块的亮度预测模式至MPM集合中,若MPM集合未被填满,即候选亮度预测模式的数量未达到第一预设值,则依次添加所述并置块的中心位置的子块的亮度预测模式、所述并置块的右下角空域邻近图像块的亮度预测模式至MPM集合中,此时若MPM集合还未被填满,则依次添加标记6-27对应的图像块的亮度预测模式至MPM集合中,若MPM集合还未被填满,则依次添加当前MPM集合中方向性预测模式的相邻方向性预测模式,若MPM集合还未被填满,则依次添加默认的亮度预测模式{plnanar,DC,VER(垂直模式),HOR(水平模式),索引2的亮度预测模式,索引34的亮度预测模式}。

  基于第一种可能的实施方式,第二种可能的添加顺序包括:(A)中的候选亮度预测模式和(D)中预设的非方向性的候选亮度预测模式、(B)中的候选亮度预测模式、(C)中的候选亮度预测模式、(E)中的候选亮度预测模式、(F)中默认的亮度预测模式。

  第二种可能的添加顺序与第一种可能的添加顺序不同的是:(B)与(C)中的候选亮度预测模式的添加顺序颠倒。即第一种可能的添加顺序中,优先添加时域邻近图像块的亮度预测模式至MPM集合,在MPM集合未被填满时,再添加空域非邻接图像块的亮度预测模式至MPM集合。而第二种可能的添加顺序中,优先添加空域非邻接图像块的亮度预测模式至MPM集合中,再MPM集合未被填满时,再添加时域邻近图像块的亮度预测模式至MPM集合中。

  第二种可能的实施方式,MPM集合中的候选亮度预测模式包括上述(A)、(B)(D)、(E)和(F)中的候选亮度预测模式。第二种可能的实施方式与第一种可能的实施方式区别在于,第二种可能的实施方式中不包括(C)中的时域邻近图像块的亮度预测模式,与所述第一种可能的实施方式的重复之处,此处不再赘述。

  基于第二种可能的实施方式,第三种可能的添加顺序包括:(A)中的候选亮度预测模式和(D)中预设的非方向性的候选亮度预测模式、(B)中的候选亮度预测模式、(E)中的候选亮度预测模式、(F)中默认的亮度预测模式。(A)(D)、(B)以及(E)、(F)中的具体顺序可以参见第一种可能的实施方式此处不再赘述。

  第三种可能的实施方式,MPM集合中的候选亮度预测模式包括上述(A)、(C)(D)、(E)和(F)中的候选亮度预测模式。第三种可能的实施方式与第一种可能的实施方式的区别在于:第三种可能的实施方式中不包括(B)中空域非邻接图像块的亮度预测模式。

  基于第三种可能的实施方式,第四种可能的添加顺序包括:(A)中的候选亮度预测模式和(D)中预设的非方向性的候选亮度预测模式、(C)中的候选亮度预测模式、(E)中的候选亮度预测模式、(F)中默认的亮度预测模式。(A)(D)、(C)以及(E)、(F)中的具体顺序可以参见第一种可能的实施方式此处不再赘述。

  S903,所述第一标识指示的所述当前块的亮度预测模式是否属于所述第一亮度帧内模式集合,若是,执行S904,若否,执行S906.

  S904,当所述第一标识指示所述当前块的亮度预测模式属于所述第一亮度帧内模式集合时,从所述码流中解析第二标识,所述第二标识用于指示所述第一亮度帧内模式集合中一种候选亮度预测模式作为所述当前块的亮度预测模式;其中第二标识可以是MPM mode_flag。

  即将第二标识指示的候选亮度预测模式,作为所述当前块的亮度预测模式。

  在一种可行的实施方式中,所述第二标识采用一元变长码(Unary code),其中,被所述第二标识指示的候选亮度预测模式在所述第一模式集合中的排列顺序越靠前,所述第二标识的码字长度越短。

  比如可以按照以下表1所示的方式对表征不同的亮度预测模式的第二标识赋予不同的码字。

  表1

  S905,根据所述当前块的亮度预测模式,获得所述当前块的亮度预测值。

  S906,当所述第一标识指示所述当前块的亮度预测模式不属于所述第一亮度帧内模式集合时,构建第二亮度帧内模式集合。

  S907,从所述码流中解析第三标识。第三标识可以是selected_flag。

  所述第二亮度帧内模式集合可以为selected modes集合。第三标识相应的为标识编码端最终选定的当前块的亮度预测模式是否来自于selected modes集合的标志。示例性的,当第三标识为“1”时,指示当前块的帧内预测模式来自于selected modes集合,当第三标识为“0”时,指示当前块的帧内预测模式不属于selected modes集合。

  其中,所述第二亮度帧内模式集合是所述多个预设候选亮度预测模式的子集,所述第二亮度帧内模式集合与所述第一亮度帧内模式集合无交集。

  第四种可能的实施方式中,selected modes集合中的候选亮度预测模式,包括了(B)、(C)以及(G)按照预设方向间隔抽样获取的方向性预测模式。具体的,比如,selected modes集合中的候选亮度预测模式可以包括未包含于MPM集合中的,索引号为{0,4,8,12…60}的帧内预测模式。预设方向间隔可以是4,当然也可以是其它间隔,比如2、3等等。

  在向selected modes集合添加候选亮度预测模式时,需要在MPM集合包括的候选亮度预测模式之外的候选亮度预测模式中选择。

  基于第四种可能的实施方式,第五种可能的添加顺序为:(C)中候选亮度预测模式、(B)中的候选亮度预测模式、(G)中的候选亮度预测模式。其中,(C)中候选亮度预测模式的添加顺序、(B)中的候选亮度预测模式的顺序可以参见第一种可能的实施方式中的描述,此处不再赘述。

  基于第四种可能的实施方式,第六种可能的添加顺序为:(B)中候选亮度预测模式、(C)中的候选亮度预测模式、(G)中的候选亮度预测模式。第六种可能的添加顺序与第五种可能的添加顺序的区别在于:第六种可能的添加顺序与第五种可能的添加顺序不同的是:(B)与(C)中的候选亮度预测模式的添加顺序颠倒。即第五种可能的添加顺序中,优先添加时域邻近图像块的亮度预测模式(C)至selected modes集合,在selected modes集合未被填满时,再添加空域非邻接图像块的亮度预测模式(B)至selected modes集合。而第六种可能的添加顺序中,优先添加空域非邻接图像块的亮度预测模式(B)至selected modes集合中,再MPM集合未被填满时,再添加时域邻近图像块的亮度预测模式(C)至selected modes集合中。

  需要说明的是,如果MPM集合添加了(B)中的候选亮度预测模式以及(C)中的候选亮度预测模式之后被填满,则构建selected modes集合时,不再考虑(B)中的候选亮度预测模式以及(C)中的候选亮度预测模式。

  第五种可能的实施方式中,selected modes集合中的候选亮度预测模式,包括了(C)中的候选亮度预测模式以及(G)按照预设方向间隔抽样获取的方向性预测模式。第五种可能的实施方式与第四种可能的实施方式的区别在于,第五种可能的实施方式中不包括(B)中空域非邻接图像块的亮度预测模式。

  基于第五种可能的实施例方式,第七种可能的添加顺序为:(C)中的候选亮度预测模式以及(G)中候选亮度预测模式。

  第六种可能的实施方式中,selected modes集合中的候选亮度预测模式,包括了(B)中的候选亮度预测模式以及(G)按照预设方向间隔抽样获取的方向性预测模式。第五种可能的实施方式与第四种可能的实施方式的区别在于,第五种可能的实施方式中不包括(C)中空域非邻接图像块的亮度预测模式。

  基于第六种可能的实施方式,第八种可能的添加顺序为:(B)中的候选亮度预测模式以及(G)中候选亮度预测模式。

  第七种可能的实施方式中,在MPM集合中的候选亮度预测模式不包括(B)中的候选亮度预测模式和/或(C)中的候选亮度预测模式,在selected modes集合中的候选亮度预测模式包括(B)中的候选亮度预测模式和/或(C)中的候选亮度预测模式。

  第八种可能的实施方式中,在MPM集合中的候选亮度预测模式包括(B)中的候选亮度预测模式和/或(C)中的候选亮度预测模式,在selected modes集合中的候选亮度预测模式不包括(B)中的候选亮度预测模式和/或(C)中的候选亮度预测模式。

  应理解,第四至八种可能的实施方式示例性地给出了几种独立的构建selected modes集合的实现方式。当任一可能的实施方式无法使selected modes集合中的候选帧内预测模式达到第二预设值时,还可以结合其它可能的实施方式中的实现方法构建selected modes集合,并不限定于独立的实施方式,以及不同的实施方式间的组合方式,不作限定。

  应理解,描述构建selected modes集合的第四种至第六种可能的实施方式,与描述构建MPM集合的第一种至第三种可能的实施方式之间,可以任意组合,不作限定。

  S908,当所述第三标识指示所述当前块的亮度预测模式属于所述第二亮度帧内模式集合时,从所述码流中解析第四标识,所述第四标识用于指示所述第二亮度帧内模式集合中一个候选亮度预测模式作为所述当前块的亮度预测模式。第四标识可以是selected mode_flag。即将第四标识指示的候选亮度预测模式,作为所述当前块的亮度预测模式。

  在一种可行的实施方式中,所述第四标识采用定长码(fixed-length code)。具体的,当selected modes集合中存在的候选亮度预设模式的数量为16个时,采用4比特定长码字编解码每个selected modes集合内的候选亮度预测模式。

  S909,根据所述当前块的亮度预测模式,获得所述当前块的亮度预测值。

  在一种可行的实施方式中,当所述第三标识指示所述当前块的亮度预测模式不属于所述第二亮度帧内模式集合时,从所述码流中解析第五标识,所述第五标识用于指示所述多个预设候选亮度预测模式的除所述第一亮度帧内模式集合和所述第二亮度帧内模式集合以外的候选亮度预测模式中作为所述当前块的亮度预测模式的候选亮度预测模式。

  即将第五标识指示的候选亮度预测模式,作为所述当前块的亮度预测模式。所述多个预设候选亮度预测模式的除所述第一亮度帧内模式集合和所述第二亮度帧内模式集合以外的候选亮度预测模式,在一些实施例中被称为Non-selected modes集合中的候选亮度预测模式,在另一些实施例中被称为剩下的候选亮度预测模式(remaining modes),不做限定。

  在一种可行的实施方式中,所述第五标识采用截断二进制码(truncated binary code)。

  在一个具体的实施方案中,67种预设的候选亮度预测模式集合被分为6种属于MPM集合的候选亮度预测模式,16种属于selected modes集合的候选亮度预测模式以及剩余属于Non-selected集合的候选亮度预测模式,存在以下步骤:

  1001、解码MPM_flag。如果MPM_flag为1说明当前块亮度预测模式采用的是MPM模式,根据解码出的MPM模式索引(MPM mode_flag)和MPM列表导出亮度预测模式。其中,MPM索引采用Unary Code的解码方式,MPM预测模式列表构建过程如下(参考图6中各块的位置关系),如下顺序仅作为一种示例,并不作具体限定:

  1、如果L块存在且为帧内预测模式,则将L的亮度预测模式添加到MPM列表;

  2、如果A块存在且为帧内预测模式,如果A的亮度预测模式未被添加到MPM列表,则将A的亮度预测模式添加入MPM列表;

  3、如果Planar模式未被添加到MPM列表,则将Planar模式添加入MPM列表;

  4、如果DC模式未被添加到MPM列表,则将DC模式加入MPM列表;

  5、如果BL块存在且为帧内预测模式,如果BL的亮度预测模式未被添加到MPM列表,则将BL的亮度预测模式添加入MPM列表;

  6、如果AR块存在且为帧内预测模式,如果AR的亮度预测模式未被添加到MPM列表,则将AR的亮度预测模式添加入MPM列表;

  7、如果MPM列表中的预测模式少于6个,AL块存在且为帧内预测模式,如果AL的亮度预测模式未被添加到MPM列表,则将AL的亮度预测模式添加入MPM列表;

  8、如果MPM列表中的预测模式少于6个,将图6中标记为6-27所对应的图像块的亮度预测模式依次添加至MPM列表,且保证要添加的亮度预测模式在MPM列表中不存在。如MPM列表中模式数达到6个则停止添加;

  可选地,8执行的步骤,还可以通过如下方式替代:

  如果MPM列表中的预测模式少于6个,将图6中标记为6-27所对应的图像块的亮度预测模式、图7或图8所述的位于并置块的中心位置的子块的亮度预测模式、并置块右下角空域邻近块的亮度预测模式依次添加至MPM列表,且保证要添加的亮度预测模式在MPM列表中不存在。如MPM列表中模式数达到6个则停止添加。

  9、如果MPM列表中的预测模式少于6个,则按照现有MPM列表中已添加模式的顺序,依次加入MPM列表中角度预测模式(除了Planar和DC之外的angle_mode模式)的相邻角度预测模式,即angle_mode-1和angle_mode+1。如图6所示,当角度模式为2时,angle_mode-1对应添加模式66;当角度模式为66时,angle_mode+1对应添加模式2;若MPM列表中模式数达到6个则停止添加;角度预测模式可以称为方向性预测模式;

  10、如果MPM列表中的预测模式少于6个,则按顺序加入默认模式列表中未添加的模式,{Planar,DC,Ver(垂直模式),Hor(水平模式),2,DIA(对角模式34,即斜45度模式)}。

  1002、如果MPM_flag为0,则解码selected_flag,如果selected_flag为1,表示当前解码所选择的量预测模式为selected模式。解码selected模式索引(selected mode_flag),再根据构建的selected modes列表导出亮度预测模式。其中,selected模式索引采用4位定长码的解码方式,selected模式构建过程如下:

  1、将图6中标记为6-27所对应的图像块的亮度预测模式依次添加至selected modes列表,且保证要添加的亮度预测模式在selected modes列表中不存在;若selected modes列表中模式数达到6个则停止添加;

  可选地,上述1执行的步骤,还可以通过如下方式替代:

  将图6中标记为6-27所对应的图像块的亮度预测模式、图7或图8所述的位于并置块的中心位置的子块的亮度预测模式、并置块右下角空域邻近块的亮度预测模式依次添加至 selected modes列表,且保证要添加的亮度预测模式在selected modes列表及MPM列表中均不存在。如selected modes列表中模式数达到16个则停止添加;

  2、按MPM列表中角度预测模式的顺序,依次添加角度模式的相邻角度预测模式至selected modes列表。角度间隔为2的倍数,如第一次添加的角度间隔为2,即angle_mode-2,angle_mode+2。当遍历MPM列表中的所有角度模式之后,selected modes列表中的selected模式仍未满16个,则继续添加角度间隔为4的相邻角度模式。以此类推,逐渐增加角度间隔,直到选出16个模式为止。在添加过程中,保证要添加的角度模式未被添加过,且不是MPM列表中模式。添加过程中,角度模式的相邻角度按模65循环,即模式2和模式66是相邻角度模式。应理解,该角度间隔也可以为1的倍数、3的倍数等,不做限定,只要和编码端由预先协议约定一致即可。

  1003、如果selected_flag为0,表示当前解码所选择的亮度预测模式为Non-selectedmodes列表中的模式。解码模式索引,导出预测模式。Non-selected模式的索引可以采用截断二进制码表示(truncated binary code)。

  参见图10所示,本申请实施例的另一方法,包括:

  S1001,从接收到的码流中解析第六标识;

  S1002,当所述第六标识指示当前块的色度预测模式不属于分量间线性模型CCLM模式时,构建色度帧内模式集合。

  S1003,从所述码流中解析第七标识,所述第七标识用于指示所述色度帧内模式集合中一个候选色度预测模式作为所述当前块的色度预测模式。

  本申请实施例中,色度帧内模式集合可以为传统色度帧内模式集合。第六标识相应的为表示编码端最终选定的当前块的色度预测模式是否来自与MPM集合的标识。例如,当第六标识为“1”时,指示当前块的色度预测模式不属于CCLM,即当前块的色度预测模式来自于传统色度帧内模式集合,当第六标识为“0”时,指示当前块的色度预测模式属于CCLM,但不属于传统色度帧内模式集合。

  应理解,传统色度帧内模式集合有多种构建方式,包括传统色度帧内模式集合中候选色度预测模式的种类和其在集合列表中的排列顺序。

  传统色度帧内模式集合中可能包括的候选色度预测模式:

  (H)、上述(1)中所述当前块的已确定帧内预测模式的空域邻接图像块的色度预测模式;

  (I)、上述(2)中所述当前块已确定帧内预测模式的空域非邻接图像块的色度预测模式;

  (J)、上述(3)中所述的当前块已确定帧内预测模式的时域邻近图像块的色度预测模式;

  (K)、预设的非方向性预测模式。

  (L)、根据(1)获得的方向性预测模式的相邻预测方向的预测模式。

  (M)、默认的色度预测模式。,默认的色度预测模式可以包括索引号为{50,18,2}的方向性预测模式。

  (N)DM模式(当前块的亮度预测模式)。

  其中,(K)非方向性预测模式包括DC模式和/或planar模式。(L)中的候选亮度预测模式包括与加入MPM集合中的(H)中候选色度预测模式的索引号相差为1(索引差的 绝对值为1)的索引号所代表的候选色度预测模式,示例性的,还可以包括与加入MPM集合中的(A)中候选色度预测模式的索引号相差为2、3或其他整数值的索引号所代表的候选色度预测模式,不作限定。

  应理解,在将不同的候选色度预测模式加入到传统色度帧内模式集合的过程中,需要同时进行“修剪”(pruning),避免将相同的候选色度预测模式重复加入到传统色度帧内模式集合中,保证传统色度帧内模式集合中每一个索引值只代表一种色度预测模式。

  应理解,传统色度帧内模式集合的容量是预设的,即传统色度帧内模式集合中含有的候选色度预测模式的个数不超过第一预设值。在构建传统色度帧内模式集合的过程中,按照预定的添加顺序依次向传统色度帧内模式集合中添加候选色度预测模式,直到达到第三预设值。

  第九种可能的实施方式中,传统色度帧内模式集合中的候选色度预测模式包括上述(H)-(M)中的候选色度预测模式。

  基于第九种可能的实施方式,第九种可能的添加顺序包括:(N)中的候选色度预测模式、(H)中的候选色度预测模式、(J)中的候选色度预测模式、(I)中的候选色度预测模式、(K)中的候选色度预测模式、(L)中候选色度预测模式、(M)中默认的色度预测模式。应理解,本申请中涉及到的添加顺序仅反映了一种趋势,具体的实现顺序可能有颠倒和交叉,不作限定。

  示例性的,参见图7-图8所示,(J)中候选色度预测模式可以按照如下顺序添加至传统色度帧内模式集合中:位于并置块的中心位置的子块的色度预测模式、位于并置块的右下角空域邻近块的色度预测模式。

  示例性的,(I)中的候选色度预测模式可以按照如下顺序添加至传统色度帧内模式集合中:所述已确定帧内预测模式的图像块具有的所述组号的从小到大的顺序。参见图6所示,即,按照第一组,第二组,第三组的顺序依次添加空域不邻接图像块的色度预测模式至传统色度帧内模式集合中。

  可选地,当至少两个所述与所述当前块不邻接的已确定帧内预测模式的图像块具有的所述组号相同时,可以按照所述至少两个与所述当前块不邻接的已确定帧内预测模式的图像块到所述原点的从短到长的距离,依次添加所述至少两个与所述当前块不邻接的已确定帧内预测模式的图像块的色度预测模式至所述传统色度帧内模式集合中,其中,所述距离为所述与所述当前块不邻接的已确定帧内预测模式的图像块中一个预设位置像素集合基本单元在所述虚拟坐标系中的水平坐标绝对值和竖直坐标绝对值之和。

  具体的,在同一组内,比较各基本像素单元到当前块中预设基本像素单元的距离,距离越近的基本像素单元所在的图像块的色度预测模式越先添加。具体计算方式可以参见第一种可能的实施方式中的描述,此处不再赘述。

  示例性的,第二组中组内图像块的色度预测模式添加顺序可以为标记为6、7、8、9、10、11、12、13、14的基本像素单元所在的图像块的色度预测模式。

  示例性的,以图6所示为例,(B)中的候选色度预测模式可以按照标记为6、7、8、9、10、11、12、13、14、15、16、17、18、19、20、21、22、23、24、25、26、27的基本像素单元所在的图像块顺序,依次添加标记为6-27的基本像素单元所在的图像块的色度预测模式至传统色度帧内模式集合中。

  作为第九种可能的添加顺序对应的一种具体的实施例,参考图5-图7所示,按照L->A ->BL->AR->AL顺序依次添加对应的图像块的色度预测模式至传统色度帧内模式集合中,若传统色度帧内模式集合未被填满,即候选色度预测模式的数量未达到第三预设值,则依次添加所述并置块的中心位置的子块的色度预测模式、所述并置块的右下角空域邻近图像块的色度预测模式至传统色度帧内模式集合中,此时若传统色度帧内模式集合还未被填满,则依次添加标记6-27对应的图像块的色度预测模式至传统色度帧内模式集合中,若传统色度帧内模式集合还未被填满,则依次添加planar模式、DC模式至传统色度帧内模式集合中,若传统色度帧内模式集合还未被填满,则依次添加当前传统色度帧内模式集合中方向性预测模式的相邻方向性预测模式,若传统色度帧内模式集合还未被填满,则依次添加默认的色度预测模式{VER(垂直模式),HOR(水平模式),索引2的色度预测模式}。

  基于第九种可能的实施方式,第十种可能的添加顺序包括:(N)中的候选色度预测模式、(H)中的候选色度预测模式、(I)中的候选色度预测模式、(J)中的候选色度预测模式、(K)中的候选色度预测模式、(L)中候选色度预测模式、(M)中默认的色度预测模式。

  第十种可能的添加顺序与第九种可能的添加顺序不同的是:(I)与(J)中的候选色度预测模式的添加顺序颠倒。即第一种可能的添加顺序中,优先添加时域邻近图像块的色度预测模式至传统色度帧内模式集合,在传统色度帧内模式集合未被填满时,再添加空域非邻接图像块的色度预测模式至传统色度帧内模式集合。而第二种可能的添加顺序中,优先添加空域非邻接图像块的色度预测模式至传统色度帧内模式集合中,再传统色度帧内模式集合未被填满时,再添加时域邻近图像块的色度预测模式至传统色度帧内模式集合中。

  第十种可能的实施方式,传统色度帧内模式集合中的候选色度预测模式包括上述(N)、(H)、(I)和(K)、(L)、(M)中的候选色度预测模式。第十种可能的实施方式与第九种可能的实施方式区别在于,第十种可能的实施方式中不包括(J)中的时域邻近图像块的色度预测模式,与所述第九种可能的实施方式的重复之处,此处不再赘述。

  基于第十种可能的实施方式,第十一种可能的添加顺序包括:(N)中的候选色度预测模式、(H)中的候选色度预测模式、(I)中的候选色度预测模式、(K)中的候选色度预测模式、(L)中候选色度预测模式、(M)中默认的色度预测模式。(N)、(H)、(I)中的具体顺序可以参见第九种可能的实施方式此处不再赘述。

  第十一种可能的实施方式,传统色度帧内模式集合中的候选色度预测模式包括上述(N)、(H)、(J)和(K)、(L)、(M)中的候选色度预测模式。第十一种可能的实施方式与第九种可能的实施方式的区别在于:第十一种可能的实施方式中不包括(I)中空域非邻接图像块的色度预测模式。

  基于第十一种可能的实施方式,第十二种可能的添加顺序包括:(N)中的候选色度预测模式、(H)中的候选色度预测模式、(J)中的候选色度预测模式、(K)中的候选色度预测模式、(L)中候选色度预测模式、(M)中默认的色度预测模式。(N)、(H)、(J)中的具体顺序可以参见第九种可能的实施方式此处不再赘述。

  应理解,描述构建Selected modes集合的第四种至第六种可能的实施方式,与描述构建MPM集合的第一种至第三种可能的实施方式,以及构建传统色度帧内模式集合的第九种至第十一种可能的实施例方式、三者实施例之间,可以任意组合,不作限定。

  S1004,根据所述当前块的色度预测模式,获得所述当前块的色度预测值。

  在一个具体的实施方案中,11种预设的候选色度预测模式被分为5种传统色度帧内预测 模式,6种CCLM模式,存在以下步骤:

  解码flag。如果flag为0说明当前块色度预测模式采用的不是CCLM模式,当前块色度预测模式采用的是传统色度帧内模式,根据解码出的索引(flag)和传统色度帧内模式列表导出色度预测模式。传统色度帧内模式列表构建过程如下(参考图6中各块的位置关系),如下顺序仅作为一种示例,并不作具体限定:

  1、将DM模式添加至传统色度帧内模式集合中;

  2、如果L块存在且为帧内预测模式,则将L的色度预测模式添加到传统色度帧内模式列表;

  3、如果A块存在且为帧内预测模式,如果A的色度预测模式未被添加到传统色度帧内模式列表,则将A的色度预测模式添加入传统色度帧内模式列表;

  4、如果BL块存在且为帧内预测模式,如果BL的色度预测模式未被添加到传统色度帧内模式列表,则将BL的色度预测模式添加入传统色度帧内模式列表;

  5、如果AR块存在且为帧内预测模式,如果AR的色度预测模式未被添加到传统色度帧内模式列表,则将AR的色度预测模式添加入传统色度帧内模式列表;

  6、如果传统色度帧内模式列表中的预测模式少于5个,AL块存在且为帧内预测模式,如果AL的色度预测模式未被添加到传统色度帧内模式列表,则将AL的色度预测模式添加入传统色度帧内模式列表;

  7、如果传统色度帧内模式列表中的预测模式少于5个,将图6中标记为6-27所对应的图像块的色度预测模式依次添加至传统色度帧内模式列表,且保证要添加的色度预测模式在传统色度帧内模式列表中不存在。如传统色度帧内模式列表中模式数达到5个则停止添加;

  可选地,7执行的步骤,还可以通过如下方式替代:

  如果列表中的预测模式少于5个,将图6中标记为6-27所对应的图像块的色度度预测模式、图7或图8所述的位于并置块的中心位置的子块的色度预测模式、并置块右下角空域邻近块的色度预测模式依次添加至传统色度帧内模式列表,且保证要添加的色度预测模式在传统色度帧内模式列表中不存在。如传统色度帧内模式列表中模式数达到5个则停止添加。

  8、如果传统色度帧内模式列表中的预测模式少于5个,则按照现有传统色度帧内模式列表中已添加模式的顺序,依次加入传统色度帧内模式列表中角度预测模式(除了Planar和DC之外的angle_mode模式)的相邻角度预测模式,即angle_mode-1和angle_mode+1。如图6所示,当角度模式为2时,angle_mode-1对应添加模式66;当角度模式为66时,angle_mode+1对应添加模式2;若传统色度帧内模式列表中模式数达到5个则停止添加;

  9、如果传统色度帧内模式列表中的预测模式少于5个,则按顺序加入默认模式列表中未添加的模式,{Ver(垂直模式),Hor(水平模式),2}。

  基于与方法实施例同样的发明构思,本申请实施例还提供了一种装置,该装置1100具体可以是视频编码器中的处理器,或者芯片或者芯片系统,或者是视频编码器中一个模块,比如帧内预测模块211,或者可以是视频解码器中的处理器,或者芯片或者芯片系统,或者是视频解码器中的一个模块,比如帧内预测模块321。示意性的,该装置可以包括接收单元1101、构建单元1102、解析单元1103以及计算单元1104。接收单元1101、构建单元1102、解析单元1103以及计算单元1104用于执行图9-图10对应的实施例所示的方法步骤。比如接收单元1101可以用于接收码流,构建单元1102,用于第一亮度帧内模式集 合、第二亮度帧内模式集合以及色度帧内模式集合,解析单元1103用于从码流中解析标识,比如解析第一标识-第七标识。计算单元1104用于获得亮度预测值以及色度预测值。

  本申请实施例还提供该装置另外一种结构,如图12所示,装置1200中可以包括通信接口1210、处理器1220。可选的,装置1200中还可以包括存储器1230。其中,存储器1230可以设置于装置内部,还可以设置于装置外部。上述图11中所示的接收单元1101、构建单元1102、解析单元1103以及计算单元1104均可以由处理器1220实现。处理器1220通过通信接口1210发送或者接收视频流或者码流,并用于实现图9-图10中所述的方法。在实现过程中,处理流程的各步骤可以通过处理器1220中的硬件的集成逻辑电路或者软件形式的指令完成图9-图10中所述的方法。

  本申请实施例中通信接口1210可以是电路、总线、收发器或者其它任意可以用于进行信息交互的装置。其中,示例性地,该其它装置可以是与装置1200相连的设备,比如,该装置是视频编码器时,则其它装置可以是视频解码器。

  本申请实施例中处理器1220可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件单元组合执行完成。处理器1220用于实现上述方法所执行的程序代码可以存储在存储器1230中。存储器1230和处理器1220耦合。

  本申请实施例中的耦合是装置、单元或模块之间的间接耦合或通信连接,可以是电性,机械或其它的形式,用于装置、单元或模块之间的信息交互。

  处理器1220可能和存储器1230协同操作。存储器1230可以是非易失性存储器,比如硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD)等,还可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM)。存储器1230是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。

  本申请实施例中不限定上述通信接口1210、处理器1220以及存储器1230之间的具体连接介质。本申请实施例在图12中以存储器1230、处理器1220以及通信接口1210之间通过总线连接,总线在图12中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图12中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

  基于以上实施例,本申请实施例还提供了一种计算机存储介质,该存储介质中存储软件程序,该软件程序在被一个或多个处理器读取并执行时可实现上述任意一个或多个实施例提供的方法。所述计算机存储介质可以包括:U盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。

  基于以上实施例,本申请实施例还提供了一种芯片,该芯片包括处理器,用于实现上述任意一个或多个实施例所涉及的功能,例如获取或处理上述方法中所涉及的信息或者消息。可选地,所述芯片还包括存储器,所述存储器,用于处理器所执行必要的程序指令和数据。该芯片,可以由芯片构成,也可以包含芯片和其他分立器件。

  本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产 品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

  本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

  这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

  这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

  显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

《一种图像块的帧内模式预测方法及装置.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)