编码方法、解码方法、装置及电子设备的制造方法_3

文档序号:9671208阅读:来源:国知局
所述当前重建块单元进行水平方向的DF滤波,并标记已进行DF的水平方向滤波;
[0106]对DF处理输出的本地重建块使用SA0进行滤波处理;
[0107]情况三:eM的值大于vM ;
[0108]在这种情况下,在当前本地重建块单元之后,按照编码顺序,等待输出了 vM个块单元所覆盖的像素点本地重建值后,对所述当前本地重建块单元进行水平方向的DF滤波,并标记已进行DF的水平方向滤波,继续等待本地重建模块输出eM-vM个块单元所覆盖的像素点本地重建值后,对所述当前重建块单元进行垂直方向的DF滤波,并标记已进行DF的垂直方向滤波;
[0109]对DF处理输出的本地重建块使用SA0进行滤波处理。
[0110]对应于上述编码方法,在本实施例中还提供了一种编码装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
[0111]图2是根据本发明实施例的编码装置的结构框图,如图2所示,该装置包括第一确定模块22和写入模块24,下面对各个模块进行详细说明:
[0112]第一确定模块22,用于确定帧内块复制IBC模式的块复制矢量BV的限制范围信息;写入模块24,与第一确定模块22相连,用于将所述限制范围信息写入码流。
[0113]本实施例中还可以包括第一环路滤波模块,与写入模块24相连,用于根据所述限制范围信息对重建块进行环路滤波。
[0114]在本实施例中,还提供了一种解码方法,图3是根据本发明实施例的解码方法的流程图,如图3所示,该方法包括如下步骤:
[0115]步骤S302,从码流中获取帧内块复制(IBC)模式的块复制矢量(BV)的限制范围信息;
[0116]步骤S304,根据所述限制范围信息确定IBC模式的BV的限制范围。其中,码流中的BV范围与最终确认的BV范围可能不同,例如码流中给出多个限制范围(Profile/Level给出一个上限范围,其他字段给出一个实际使用的范围),最终使用的可能是多个限制范围的交集或并集。
[0117]本实施例通过上述步骤,在解码过程中从码流中获取到BV的限制范围信息,进而确定BV的限制范围,使得IBC的影响得到有效控制,解决了相关技术中引用IBC后无法确定BV范围,使得数据处理效率降低的问题,能够提升数据处理效率,同时也能够保证编码或解码过程的顺利实施。
[0118]在本实施例中,还可以根据所述限制范围信息对重建块进行环路滤波。其中本文中的环路滤波的实施方式可以是块层环路滤波。
[0119]本实施例中,根据所述限制范围信息对重建块进行块层环路滤波包括:根据所述限制范围信息确定块层重建过程与环路滤波过程之间的等待时长。具体地,可以根据所述限制范围信息,确定使用当前的第一块单元中像素点作为参考的IBC块所在的最后一个块单元,作为第二块单元;按照解码顺序,确定所述第一块单元与第二块单元及二者之间的块单元作为第四范围;将所述第四范围与传统帧内预测模式中使用的块单元范围的并集作为第五范围;将所述第一块单元至第五范围的最后一个块单元之间包含的块单元的数量,作为所述等待时长。
[0120]其中,所述传统帧内预测模式直接使用当前解码块的相邻像素点作为参考像素点构造预测块,所述传统帧内预测模式的相邻像素点的位置是预先设定的,不使用位置偏移矢量指示。
[0121]此外,在确定出等待时长后,可以在块层重建过程开始执行后,经过所述等待时长,环路滤波过程开始执行。
[0122]其中,还可以根据当前图像的瓦片划分信息和/或所述第一块单元所在分片的起始位置,将所述第五范围限制在所述第一块单元所在的Tile和/或分片范围内。
[0123]其中,所述传统帧内预测模式中使用的块单元范围可以包括以下范围至少之一或者以下两个或者以上的范围的并集:按照块单元的解码顺序,根据块单元的大小和帧内预测过程中所需要使用的相邻参考像素点的最大数量,确定使用可能使用块单元的右边界和下边界像素点作为帧内预测参考的块单元范围,作为第一范围;确定对块单元进行去方块滤波(DF)所使用的相邻块单元,对于右相邻的块单元,确定其下边界上的像素点用作帧内预测参考的块单元范围,作为第二范围;对于下相邻的块单元,确定其右边界上的像素点用作帧内预测参考的块单元范围,作为第三范围。
[0124]本实施例中,根据所述限制范围信息对重建块进行环路滤波包括:根据所述限制范围信息确定是否可对已有本地重建块进行环路滤波处理。具体地,在对当前块单元完成本地重建后,按照解码顺序判断当前块单元之前已重建、未进行环路滤波处理的块单元是否满足如下条件:
[0125]条件一:待判定的本地重建块单元的右边界和下边界像素点已经不用作当前本地重建块单元之后的块单元中像素点的帧内预测参考;
[0126]条件二:待判定的本地重建块单元的右边界相邻块单元中的下边界像素点不用作当前本地重建块单元之后块单元的块单元中像素点的帧内预测参考;
[0127]条件三:待判定的本地重建块单元的下边界相邻块单元中的右边界像素点不用作当前本地重建块单元之后的块单元中像素点的帧内预测参考;
[0128]根据待判定的本地重建块单元对所述条件的满足情况,进行环路滤波处理。
[0129]其中,根据待判定的本地重建块单元对所述条件的满足情况,进行环路滤波处理可以包括以下至少之一:
[0130]当所述条件一、条件二和条件三同时满足时,对所述待判定的本地重建块单元完成未进行的水平方向和/或垂直方向的DF处理,并对于所述本地重建块单元相邻解码块的本地重建块,标记其已经进行滤波的边界的位置以及滤波操作的属性;对DF处理输出的本地重建块使用采样点自适应加性偏移量滤波器(SA0)进行滤波处理;
[0131]当满足所述条件一和条件二时,对所述待判定的本地重建块单元中的未进行水平方向DF的待滤波像素点,环路滤波模块中的DF模块对其进行水平方向DF,标记其已经进行滤波的边界的位置以及滤波操作的属性;判断DF处理输出的本地重建块是否在垂直方向和水平方向均已进行了 DF滤波,如果是,则使用SA0进行滤波处理;
[0132]当满足所述条件一和条件三时,对所述待判定的本地重建块单元中的未进行垂直方向DF的待滤波像素点,环路滤波模块中的DF模块对其进行垂直方向DF,标记其已经进行滤波的边界的位置以及滤波操作的属性;判断DF处理输出的本地重建块是否在垂直方向和水平方向均已进行了 DF滤波,如果是,则使用SA0进行滤波处理;
[0133]否则,不对所述待判定的本地重建块单元使用DF和SA0进行滤波处理。
[0134]本实施例中,根据所述限制范围信息对重建块进行环路滤波还包括:根据所述限制范围信息确定对当前本地重建块单元进行环路滤波的等待时长。具体地,确定在当前本地重建块单元同时满足下述条件:
[0135]条件一:待判定的本地重建块单元的右边界和下边界像素点已经不用作当前本地重建块单元之后的块单元中像素点的帧内预测参考;
[0136]条件二:待判定的本地重建块单元的右边界相邻块单元中的下边界像素点不用作当前本地重建块单元之后的块单元中像素点的帧内预测参考;
[0137]条件三:待判定的本地重建块单元的下边界相邻块单元中的右边界像素点不用作当前本地重建块单元之后的块单元中像素点的帧内预测参考。
[0138]本实施例中,在当前本地重建块单元之后,按照解码顺序,等待本地重建模块输出了 Μ个块单元所覆盖的像素点重建值后,对所述当前本地重建块单元进行环路滤波处理。其中,Μ可以为当前本地重建块单元与对应块单元之间所包含的最小块单元的数量。
[0139]其中,对所述当前本地重建块单元进行环路滤波处理可以包括:对所述本地重建块单元完成未进行的水平方向和/或垂直方向的DF处理,对于所述本地重建块单元相邻解码块的本地重建块,标记其已经进行滤波的边界的位置以及滤波操作的属性;对DF处理输出的本地重建块使用SAO进行滤波处理。
[0140]具体地,根据所述限制范围信息确定对当前本地重建块单元进行环路滤波的等待时长还可以包括:
[0141]在当前本地重建块单元同时满足条件一和条件二时,当前本地重建块单元与对应块单元之间所包含的块单元的数量eM,在当前本地重建块单元同时满足条件一和条件三时,当前本地重建块单元与对应块单元之间所包含的块单元的数量vM,其中:
[0142]条件一:待判定的本地重建块单元的右边界和下边界像素点已经不用作当前本地重建块单元之后的块单元中像素点的帧内预测参考;
[0143]条件二:待判定的本地重建块单元的右边界相邻块单元中的下边界像素点不用作当前本地重建块单元之后的块单元中像素点的帧内预测参考;
[0144]条件三:待判定的本地重建块单元的下边界相邻块单元中的右边界像素点不用作当前本地重建块单元之后的块单元中像素点的帧内预测参考;
[0145]根据eM与vM的关系,对所述当前本地重建块单元进行环路滤波处理。
[0146]其中,根据eM与vM的关系,对所述当前本地重建块单元进行环路滤波处理可以包括以下情况至少之一:
[0147]情况一:eM的值等于vM ;
[0148]在这种情况下,在当前本地重建块单元之后,按照解码顺序,等待输出了 eM或vM个块单元所覆盖的像素点本地重建值后,对所述当前本地重建块单元进行环路滤波处理;
[0149]对所述当前本地重建块单元完成未进行的水平方向和/或垂直方向的DF处理,对于所述当前本地重建块单元相邻解码块的本地重建块,标记其已经进行滤波的边界的位置以及滤波操作的属性;
[0150]对DF处理输出的本地重建块使用SA0进行滤波处理;
[0151 ] 情况二:eM的值小于vM ;
[0152]在这种情况下,在当前本地重建块单元之后,按照解码顺序,等待输出了 eM个块单元所覆盖的像素点本地重建值后,对所述当前本地重建块单元进行水平方向的DF滤波,并标记已进行DF的水平方向滤波,继续等待本地重建模块输出vM - eM个块单元所覆盖的像素点重建值后,对所述当前重建块单元进行垂直方向的DF滤波,并标记已进行DF的垂直方向滤波;
[0153]对DF处理输出的本地重建块使用SA0进行滤波处理;
[0154]情况三:eM的值大于vM ;
[0155]在这种情况下,在当前本地重建块单元之后,按照解码顺序,等待输出了 vM个块单元所覆盖的像素点本地重建值后,对所述当前本地重建块单元进行垂直方向的DF滤波,并标记已进行DF的垂直方向滤波,继续等待本地重建模块输出eM-vM个块单元所覆盖的像素点本地重建值后,对所述当前重建块单元进行水平方向的DF滤波,并标记已进行DF的水平方向滤波;
[0156]对DF处理输出的本地重建块使用SA0进行滤波处理。
[0157]本实施例中,从码流中获取IBC模式的BV的限制范围信息可以包括:从以下数据单元至少之一中获取所述BV的第一限制范围的信息:视频参数集(VPS)中的档次、等级、级别信息,序列参数集(SPS)中的档次、等级、级别;和/或,VPS中除档次、等级、级别信息之外的数据单元,SPS中除档次、等级、级别信息之外的数据单元,图像参数集(PPS),分片划分头信息(Slice Segment Header),补充增强信息(SEI),用户自定义数据单元。
[0158]对应于上述解码方法,在本实施例中还提供了一种解码装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
[0159]图4是根据本发明实施例的解码装置的结构框图,如图4所示,该装置包括获取模块42和第二确定模块44,下面对各个模块进行详细说明:
[0160]获取模块42,用于从码流中获取帧内块复制(IBC)模式的块复制矢量(BV)的限制范围信息;第二确定模块44,与获取模块42相连,用于根据所述限制范围信息确定IBC模式的BV的限制范围。
[0161]本实施例中,所述装置还可以包括第二环路滤波模块,与第二确定模块44相连,用于根据所述限制范围信息对重建块进行环路滤波。
[0162]在本实施例中,还提供了一种电子设备,图5是根据本发明实施例的电子设备的结构框图,如图5所示,该电子设备包括如图2所述的编码装置20,和/或,包括如如图4所述的解码装置40。
[0163]本实施例中,所述电子设备可以包括:视频通信应用中相关码流生成设备和/或接收播放设备。具体地,所述电子设备可以为:手机、计算机、服务器、机顶盒、便携式移动终端、数字摄像机,电视广播系统设备等。
[0164]下面结合优选实施例进行说明,以下优选实施例结合了上述实施例及其优选实施方式。
[0165]在以下优选实施例中,以将BV的限制范围应用于编解码领域为例进行说明,提供了一种视频编解码领域的使用环路滤波的编解码方法和装置及设备。
[0166]所述编码方法包括:确定帧内块复制IBC模式的块复制矢量BV的限制范围;将所述BV的限制范围信息写入码流;根据所述BV的限制范围对重建块进行块层环路滤波。即将当前块与预测参考块之间偏移矢量的范围信息写入码流。
[0167]所述解码方法包括:解析码流,获得帧内块复制IBC模式的块复制矢量BV的限制范围;根据所述BV的限制范围对重建块进行块层环路滤波。即解析码流,获得当前块与预测参考块之间偏移矢量的范围信息;根据所述偏移矢量的范围信息,对解码图像中的块执行环路滤波操作。
[0168]实施例1:
[0169]本优选实施例提供一种使用环路滤波器的解码方法,用于使用IBC模式的解码过程或解码器。需要说明的是,本实施例方法对IBC的预测块划分方式没有限定,即可以是传统的矩形、正方形块划分方式,也可以是Nxl或ΙχΝ的串划分。串匹配(String Matching)方法是IBC使用Nxl或ΙχΝ的串划分方式时的一个特例。
[0170]本实施例的使用环路滤波的解码方法如下所述。
[0171 ] 步骤S702,解码器解析视频码流,获得IBC模式中块复制矢量BV的范围信息。
[0172]块复制矢量BV用于指示使用IBC模式的解码块与其预测参考块之间的相对偏移。
[0173]解码器可通过解析以下所述单元的至少之一,从码流中获取BV的范围信息,包括:
[0174]视频参数集(VideoParameter Set, VPS)中的档次(Profile)、等级(tier)、级别(level)信息;
[0175]VPS中除档次、等级、级别信息之外的数据单元;
[0176]序列参数集(SequenceParameter Set, SPS)中的档次(Profile)、等级(tier)、级别(level)信息;
[0177]SPS中档次、等级、级别信息之外的数据单元;
[0178]图像参数集(PictureParameter Set, PPS);
[0179]分片划分头信息(SliceSegment Header);
[0180]补充增强信息(SupplementalEnhancement Informat1n, SEI);
[0181]用户自定义数据单元。
[0182]步骤S704,解码器根据BV范围信息,确定块层(block level)重建过程与环路滤波过程之间的等待时长。
[0183]环路滤波过程中包含两个滤波器:去方块滤波器DF和采样点自适应加性偏移量滤波器SA0。由于帧内预测块解码过程中需要使用未经过环路滤波处理的像素点采样值的恢复值来构造预测参考块,因此,解码器需要等待待处理块中所有像素点均不用作后续解码块的帧内预测参考后,再执行环路滤波过程。
[0184]对于DF,除需要使用当前处理块内的像素点,还需要使用相邻块的恢复像素点。因此,解码器需要等待当前块和相邻块的像素点均不用作帧内预测参考后,再执行DF。
[0185]解码器在DF之后才执行SA0。同时,SA0仅使用当前处理块内的恢复像素点。因此,解码器只要等待至DF执行之后,即可执行SA0。
[0186]对于传统的使用相邻像素点作为预测参考的帧内预测模式而言,解码器解析参数集码流,获得解码过程中相关的块单元大小,确定在块重建模块执行后、环路滤波模块执行前需要等待的时长。这些块单元包括以下至少之一:最大编码单元(Coding Unit,⑶),最小⑶,最大变换单元(Transform Unit, TU),最小TU。这里,等待时长等于N表示:延迟N个块单元后对该重建块执行环路滤波操作。
[0187]具体地,对于传统帧内预测模式,根据块解码顺序,当前处理块中的右边界和下边界像素点可能用作后续解码块的帧内预测参考。以下,以使用最大CU为例进行说明,使用其他块单元的情况与此类似。
[0188]其中,所述传统帧内预测模式直接使用当前解码块的相邻像素点作为参考像素点构造预测块。所述传统帧内预测模式的相邻像素点的位置是预先设定的,不使用位置偏移矢量指示。
[0189]按照最大CU的解码顺序,解码器根据最大CU的大小和帧内预测过程中所需要使用的相邻参考像素点的最大数量,确定使用可能使用最大CU的右边界和下边界像素点作为帧内预测参考的最大CU的范围(即范围1)
当前第3页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1