CN116325727A - 一种帧内预测方法、编码器、解码器及存储介质 - Google Patents
一种帧内预测方法、编码器、解码器及存储介质 Download PDFInfo
- Publication number
- CN116325727A CN116325727A CN202080106028.7A CN202080106028A CN116325727A CN 116325727 A CN116325727 A CN 116325727A CN 202080106028 A CN202080106028 A CN 202080106028A CN 116325727 A CN116325727 A CN 116325727A
- Authority
- CN
- China
- Prior art keywords
- prediction
- intra
- filtering
- block
- reference pixel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 160
- 238000001914 filtration Methods 0.000 claims abstract description 332
- 238000009499 grossing Methods 0.000 claims abstract description 162
- 230000008569 process Effects 0.000 claims abstract description 56
- 238000004364 calculation method Methods 0.000 claims abstract description 22
- 238000012545 processing Methods 0.000 claims description 58
- 238000005516 engineering process Methods 0.000 claims description 53
- 238000004590 computer program Methods 0.000 claims description 12
- 238000004458 analytical method Methods 0.000 claims description 2
- 238000013139 quantization Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 14
- 230000009466 transformation Effects 0.000 description 14
- 230000005540 biological transmission Effects 0.000 description 6
- 230000000694 effects Effects 0.000 description 6
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000012937 correction Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 238000012805 post-processing Methods 0.000 description 3
- FGUUSXIOTUKUDN-IBGZPJMESA-N C1(=CC=CC=C1)N1C2=C(NC([C@H](C1)NC=1OC(=NN=1)C1=CC=CC=C1)=O)C=CC=C2 Chemical compound C1(=CC=CC=C1)N1C2=C(NC([C@H](C1)NC=1OC(=NN=1)C1=CC=CC=C1)=O)C=CC=C2 FGUUSXIOTUKUDN-IBGZPJMESA-N 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 241000023320 Luma <angiosperm> Species 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000005429 filling process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/597—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
- H04N19/82—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本申请实施例提供了一种帧内预测方法、编码器、解码器及存储介质,包括:遍历帧内预测模式,确定出当前块对应的初始预测块的初始预测值。对初始预测块分别进行帧内预测滤波和帧内预测平滑滤波处理,得到第一类预测值和第二类预测值;帧内预测平滑滤波为采用至少两个相邻参考像素集合中每个相邻参考像素集合中的多个相邻参考像素,对当前块进行滤波的过程。采用初始预测值、第一类预测值和第二类预测值,与当前块的原始像素值进行率失真代价计算,确定出最优率失真代价对应的当前预测模式。采用当前预测模式,对当前块进行帧内预测。将当前预测模式的索引信息和滤波标识写入码流,滤波标识表征帧内预测滤波和/或帧内预测平滑滤波对应的标识。
Description
本申请实施例涉及视频编码技术,涉及但不限于一种帧内预测方法、编码器、解码器及存储介质。
在视频编解码,对当前块进行编解码的过程中,除了有帧间预测方式外,还可以采用帧内预测。帧内预测可以对每个编码单元分别进行帧内预测过程计算预测块。
现有技术中,帧内预测通常借助各自角度模式与非角度模式对当前块进行预测得到预测块,根据预测块与原始块计算得到的率失真代价信息,进而筛选出当前块的最优的预测模式,再基于该预测模式进行帧内预测。当前的帧内角度预测中并没有采用全部的参考像素,容易忽略一些像素与当前块之间的关联性,帧内预测滤波技术通过点对点的滤波提升像素预测精度,可以有效地增强空间关联性。因此,采用了帧内预测滤波技术通过点对点的滤波提升像素预测精度,可以有效地增强空间关联性,从而提升帧内预测精度。
然而,帧内预测滤波技术在纹理比较模糊的图像块的帧内预测中,过于锐化的预测可能会导致残差增加和变大,预测效果不好,从而导致编解码效率下降。
发明内容
本申请实施例提供了一种帧内预测方法、编码器、解码器和存储介质,能够平滑处理的图像块的预测过程,提高编解码效率。
第一方面,本申请实施例提供了一种帧内预测方法,应用于编码器,所述方法包括:
遍历帧内预测模式,确定出当前块对应的初始预测块的初始预测值;
对所述初始预测块分别进行帧内预测滤波和帧内预测平滑滤波处理,得到第一类预测值和第二类预测值;其中,所述帧内预测平滑滤波为采用至少两个相邻参考像素集合中每个相邻参考像素集合中的多个相邻参考像素,对所述当前块进行滤波的过程;
采用初始预测值、第一类预测值和第二类预测值,分别与当前块的原始像素值进行率失真代价计算,确定出最优率失真代价对应的当前预测模式;
采用所述当前预测模式,对所述当前块进行帧内预测;
将所述当前预测模式的索引信息,以及滤波标识写入码流,其中,滤波标识表征帧内预测滤波和/或帧内预测平滑滤波对应的标识。
第二方面,本申请实施例提供了一种帧内预测方法,应用于解码器,所述方法包括:
获取码流,解析码流的头信息,得到所述滤波标识;
当所述滤波标识为表征帧内预测滤波允许标识有效、且帧内预测平滑滤波允许标识有效时,至少从码流中获取当前预测模式和帧内预测滤波使用标识;
当所述帧内预测滤波使用标识为无效、且从码流中获取到有效的帧内预测平滑滤波使用标识时,基于所述当前预测模式,对当前块进行帧内预测平滑滤波处理,得到第一预测值。
第三方面,本申请实施例提供了一种编码器,包括:
第一确定部分,被配置为遍历帧内预测模式,确定出当前块对应的初始预测块的初始预测值;
第一滤波部分,被配置为对所述初始预测块分别进行帧内预测滤波和帧内预测平滑滤波处理,得到第一类预测值和第二类预测值;其中,所述帧内预测平滑滤波为采用至少两个相邻参考像素集合中每个相邻参考像素集合中的多个相邻参考像素,对所述当前块进行滤波的过程;
所述第一确定部分,还被配置为采用初始预测值、第一类预测值和第二类预测值,分别与当前块的原始像素值进行率失真代价计算,确定出最优率失真代价对应的当前预测模式;
第一预测部分,被配置为采用所述当前预测模式,对所述当前块进行帧内预测;
写入部分,被配置为将所述当前预测模式的索引信息,以及滤波标识写入码流,其中,滤波标 识表征帧内预测滤波和/或帧内预测平滑滤波对应的标识。
第四方面,本申请实施例提供了一种解码器,包括:
解析部分,被配置为获取码流,解析码流的头信息,得到所述滤波标识;以及当所述滤波标识为表征帧内预测滤波允许标识有效、且帧内预测平滑滤波允许标识有效时,至少从码流中获取当前预测模式和帧内预测滤波使用标识;
第二预测部分,被配置为当所述帧内预测滤波使用标识为无效、且从码流中获取到有效的帧内预测平滑滤波使用标识时,基于所述当前预测模式,对当前块进行帧内预测平滑滤波处理,得到第一预测值。
第五方面,本申请实施例还提供了一种编码器,包括:
第一存储器和第一处理器;
所述第一存储器存储有可在第一处理器上运行的计算机程序,所述第一处理器执行所述程序时实现编码器的所述帧内预测方法。
第六方面,本申请实施例还提供了一种解码器,包括:
第二存储器和第二处理器;
所述第二存储器存储有可在第二处理器上运行的计算机程序,所述第二处理器执行所述程序时实现解码器的所述帧内预测方法。
第七方面,本申请实施例提供了一种存储介质,包括:
其上存储有计算机程序,该计算机程序被第一处理器执行时,实现编码器的所述帧内预测方法;或者,该计算机程序被第二处理器执行时,实现解码器的所述帧内预测方法。
本申请实施例提供了一种帧内预测方法、编码器、解码器和存储介质,通过编码器采用帧内预测滤波实现了采用至少两个相邻参考像素集合中每个相邻参考像素集合中的一个相邻参考像素,对当前块进行滤波的过程。采用帧内预测平滑滤波由于可以参考一个相邻参考像素集合中的多个相邻参考像素,因此,这样的预测会更平滑一些,针对模糊图像的预测也会更精确一些,从而可以提高编码效率。
图1A-1C为本申请实施例提供的示例性的不同颜色格式下的各分量分布图;
图2为本申请实施例提供的示例性的编码单元的划分示意图;
图3为本申请实施例提供的示例性的预测模式的示意图;
图4A-4C为本申请实施例提供的示例性的帧内预测滤波的三种滤波情况示意图;
图5为本申请实施例提供的示例性的视频编解码的网络架构的组成结构示意图;
图6为本申请实施例提供的示例性的视频编码码系统结构图;
图7为本申请实施例提供的示例性的视频解码系统结构图;
图8为本申请实施例提供的一种帧内预测方法的流程图一;
图9A-9C为本申请实施例提供的示例性的目标参考像素的示意图;
图10为本申请实施例提供的一种帧内预测方法的流程图二;
图11为本申请实施例还提供的一种帧内预测方法的流程图;
图12为本申请实施例提供的一种编码器的结构示意图一;
图13为本申请实施例提供的一种编码器的结构示意图二;
图14为本申请实施例提供的一种解码器的结构示意图一;
图15为本申请实施例提供的一种解码器的结构示意图二。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。可以理解的是,此处所描述的具体实施例仅仅用于解释相关申请,而非对该申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关申请相关的部分。
在视频图像中,一般采用第一图像分量、第二图像分量和第三图像分量来表征当前块(Coding Block,CB);其中,这三个图像分量分别为一个亮度分量、一个蓝色色度分量和一个红色色度分量,具体地,亮度分量通常使用符号Y表示,蓝色色度分量通常使用符号Cb或者U表示,红色色度分 量通常使用符号Cr或者V表示;这样,视频图像可以用YCbCr格式表示,也可以用YUV格式表示。
通常,数字视频压缩技术作用于颜色编码方法为YCbCr(YUV)格式的影像数据上,YUV比例通测为4:2:0、4:2:2或者4:4:4,Y表示明亮度(Luma),Cb(U)表示蓝色色度,Cr(V)表示红色色度,U和V表示为色度(Chroma)用于描述色彩及饱和度。图1A至图1C展示了不同颜色格式下的各分量分布图,其中白色为Y分量,黑灰色为UV分量。如图1A所示,在颜色格式上,4:2:0表示每4个像素有4个亮度分量,2个色度分量(YYYYCbCr),如图1B所示,4:2:2表示每4个像素有4个亮度分量,4个色度分量(YYYYCbCrCbCr),而如图1C所示,4:4:4表示全像素显示(YYYYCbCrCbCrCbCrCbCr)。
目前,通用的视频编解码标准基于都采用基于块的混合编码框架。视频图像中的每一帧被分割成相同大小(比如128×128,64×64等)的正方形的最大编码单元(Largest Coding Unit,LCU),每个最大编码单元还可以根据规则划分成矩形的编码单元(Coding Unit,CU);而且编码单元可能还会划分成更小的预测单元(Prediction Unit,PU)。具体地,混合编码框架可以包括有预测、变换(Transform)、量化(Quantization)、熵编码(EntropyCoding)、环路滤波(In Loop Filter)等模块;其中,预测模块可以包括帧内预测(intraPrediction)和帧间预测(interPrediction),帧间预测可以包括运动估计(motion estimation)和运动补偿(motion compensation)。由于视频图像的一个帧内相邻像素之间存在很强的相关性,在视频编解码技术中使用帧内预测方式能够消除相邻像素之间的空间冗余。帧间预测可以参考不同帧的图像信息,利用运动估计搜索最匹配当前划分块的运动矢量信息,用于消除时间冗余;变换将预测后的图像块转换到频率域,能量重新分布,结合量化可以将人眼不敏感的信息去除,用于消除视觉冗余;熵编码可以根据当前上下文模型以及二进制码流的概率信息消除字符冗余。
需要说明的是,视频编码过程中,编码器首先读取图像信息,将图像划分成若干个编码树单元(Coding Tree Unit,CTU),而一个编码树单元又可以继续划分成若干个编码单元(Coding Unit,CU),这些编码单元可以为矩形块也可以为方形块,具体关系可以参考图2所示。
在帧内预测过程中,当前编码单元不能参考不同帧图像的信息,只能借助同一帧图像的相邻编码单元作为参考信息进行预测,即根据目前大多数的从左至右、从上到下的编码顺序,当前编码单元可以参考左上侧编码单元,上侧编码单元以及左侧编码单元作为参考信息来预测当前编码单元,而当前编码单元又作为下一个编码单元的参考信息,如此对整幅图像进行预测。若输入的数字视频为彩色格式,即当前主流的数字视频编码器输入源为YUV 4:2:0格式,即图像的每4个像素点由4个Y分量和2个UV分量组成,编码器会对Y分量和UV分量分别进行编码,采用的编码工具与技术也略有不同,同时,解码端也会根据不同格式对应进行解码。
针对数字视频编解码中的帧内预测部分,主要参考当前帧的相邻块图像信息对当前块进行预测,将预测块与原始图像块计算残差得到残差信息后经由变换与量化等过程,将残差信息传输到解码端。解码端接收并解析码流后,经过反变换与反量化等步骤得到残差信息,将解码端预测得到的预测图像块叠加残差信息后得到重建图像块。
在此过程中,帧内预测通常借助各自角度模式与非角度模式对当前编码块进行预测得到预测块,根据预测块与原始块计算得到的率失真信息,筛选出当前编码单元最优的预测模式,后将该预测模式经码流传输到解码端。解码端解析出预测模式,预测得到当前解码块的预测图像并叠加经码流传输而来的残差像素,即可得到重建图像。经过历代的数字视频编解码标准发展,非角度模式保持相对稳定,有均值模式和平面模式;角度模式则随着数字视频编解码标准的演进而不断增加,以国际数字视频编码标准H系列为例,H.264/AVC标准仅有8种角度预测模式和1种非角度预测模式;H.265/HEVC扩展到33种角度预测模式和2种非角度预测模式;以及目前最新通用视频编码标准H.266/VVC采用了67种预测模式,其中保留2种非角度预测模式,将角度模式从H.265的33种扩展到了65种。毋庸置疑,随着角度模式的增加,帧内预测将会更加精确,也更加符合当前社会对高清以及超高清视频发展的需求。不仅国际标准如此,国内数字音视频编码标准3(Audio Video coding Standard,AVS3)也继续扩展了角度模式和非角度模式,超高清数字视频的发展对帧内预测提出了更高的要求,不能仅仅只是依靠单纯地增加角度预测模式,扩展宽角度来提交编码效率。因此,国内数字音视频编码标准AVS3采纳了帧内预测滤波技术(Intra Prediction Filter,IPF),帧内预测滤波技术指出当前的帧内角度预测中并没有采用全部的参考像素,容易忽略一些像素与当前编码单元之间的关联性,帧内预测滤波技术通过点对点的滤波提升像素预测精度,可以有效地增强空间关联性,从而提升帧内预测精度。IPF技术以AVS3中自右上向左下的预测模式为例,具体如图3所示。
该预测模式方向从右上到左下,生成的当前编码单元预测值主要使用上方MRB这一行相邻块的参考像素点,即当前编码单元的预测像素并没有参考到左侧相邻块的重建像素,然而当前编码单元与左侧重建块为空间相邻关系,若只参考上侧MRB像素而不参考左侧URB像素则容易缺失空间关联性导致预测效果较差。
针对这个问题,提出了帧内预测滤波技术(Intra Prediction Filter,IPF),帧内预测滤波技术是应用于帧内预测的所有预测模式中,来提高帧内预测精度的滤波方法。
IPF主要通过以下流程实现:
1、帧内预测滤波技术对该编码单元的当前预测模式进行判断,划分为水平类角度预测模式、垂直类角度预测模式和非角度预测模式;
2、根据不同类别的预测模式,IPF技术采用不同的滤波器对输入像素进行滤波;
3、根据当前像素到参考像素的距离不同,IPF技术采用不同的滤波系数对输入像素进行滤波;
4、IPF技术的输入像素为各个预测模式下得到的预测像素,输出像素为IPF滤波后的最终预测像素。
IPF技术有允许标识位ipf_enable_flag(帧内预测滤波允许标识),示例性的,二值变量,值为‘1’表示可使用帧内预测滤波;值为‘0’表示不应使用帧内预测滤波。同时IPF技术还有使用标识位ipf_flag(帧内预测滤波使用标识),示例性的,二值变量,值为‘1’表示应使用帧内预测滤波;值为‘0’表示不应使用帧内预测滤波,如果码流中不存在标识位ipf_flag,则默认为0。
其中,ipf_flag的语法元素表示如下所示:
需要说明的是,IPF技术将预测模式0、1和2归类为非角度预测模式,使用第一三抽头滤波器对预测像素进行滤波;将预测模式3至预测模式18、预测模式34至预测模式50归类为垂直类角度预测模式,使用第一两抽头滤波器对预测像素进行滤波;将预测模式19至预测模式32、预测模式51至预测模式65归类为水平类角度预测模式,使用第二两抽头滤波器对预测像素进行滤波。其中,
上述适用于IPF技术的第一三抽头滤波器,滤波公式如公式(1)所示:
P′(x,y)=f(x)·P(-1,y)+f(y)·P(x,-1)+(1-f(x)-f(y))·P(x,y) (1)
上述适用于IPF技术的第一三抽头滤波器,滤波公式如公式(2)所示:
P′(x,y)=f(x)·P(-1,y)+(1-f(x))·P(x,y) (2)
上述适用于IPF技术的第二两抽头滤波器,滤波公式如公式(3)所示:
P′(x,y)=f(y)·P(x,-1)+(1-f(y))·P(x,y) (3)
其中,P′(x,y)为当前色度预测块位于(x,y)位置像素的最终预测值,f(x)与f(y)分别为参考左侧相邻块重建像素的水平滤波系数与参考上侧相邻块重建像素的垂直滤波系数,P(-1,y)与P(x,-1)分别为位于y行的左侧重建像素与位于x列的上侧重建像素,P(x,y)为当前色度分量预测块里的原始预测像素值。其中,x与y的值均不超过当前编码单元的宽度与高度取值范围。
需要说明的是,上述水平滤波系数与垂直滤波系数的取值与当前编码单元的尺寸以及当前预测块中预测像素到左侧重建像素点、上侧重建像素点的距离有关。上述水平滤波系数可以根据当前编码单元的大小划分成不同滤波器系数组。表1给出了帧内预测滤波技术的滤波系数。
表1
示例性的,图4A至4C展示了帧内预测滤波的三种滤波情况示意图,分别仅参考了上侧参考像素对当前编码单元中的预测值进行滤波(即图4A上侧两抽头滤波);仅参考了左侧参考像素对当前编码单元预中的测值进行滤波(即,图4B的左侧两抽头滤波);以及都参考了上侧与左侧参考像素对当前编码单元块中的预测值进行滤波(即,图4C上侧和左侧三抽头滤波)。
IPF技术作用于视频编码混合框架中的帧内预测部分,具体应用于帧内预测的所有预测模式,对编码端和解码端同时作用。
基于上述概念的基础上,本申请实施例提供了一种包含帧内预测方法的视频编解码系统的网络架构,图5为本申请实施例视频编解码的网络架构的组成结构示意图,如图5所示,该网络架构包括一个或多个电子设备12至1N和通信网络01,其中,电子设备12至1N可以通过通信网络01进行视频交互。电子设备在实施的过程中可以为各种类型的具有视频编解码功能的设备,例如,所述电子设备可以包括手机、平板电脑、个人计算机、个人数字助理、导航仪、数字电话、视频电话、电视机、传感设备、服务器等,本申请实施例不作限制。其中,本申请实施例中的帧内预测装置就可以为上述电子设备。
其中,本申请实施例中的电子设备具有视频编解码功能,一般包括视频编码器(即编码器)和视频解码器(即解码器)。
本申请提供一种视频编码系统,如图6所示,该视频编码系统11包括:
变换单元111、量化单元112、模式选择和编码控制逻辑单元113、帧内预测单元114、帧间预测单元115(包括:运动补偿和运动估计)、反量化单元116、反变换单元117、环路滤波单元118、编码单元119和解码图像缓存单元110;针对输入的原始视频信号,通过编码树块(Coding Tree Unit,CTU)的划分可以得到一个视频重建块,通过模式选择和编码控制逻辑单元113确定编码模式,然后,对经过帧内或帧间预测后得到的残差像素信息,通过变换单元111、量化单元112对该视频重建块进行变换,包括将残差信息从像素域变换到变换域,并对所得的变换系数进行量化,用以进一步减少比特率;帧内预测单元114用于对该视频重建块进行帧内预测;其中,帧内预测单元114用于确定该视频重建块的最优帧内预测模式(即目标预测模式);帧间预测单元115用于执行所接收的视频重建块相对于一或多个参考帧中的一或多个块的帧间预测编码,以提供时间预测信息;其中吗,运动估计为产生运动向量的过程,所述运动向量可以估计该视频重建块的运动,然后,运动补偿基于由运动估计所确定的运动向量执行运动补偿;在确定帧间预测模式之后,帧间预测单元115还用于将所选择的帧间预测数据提供到编码单元119,而且,将所计算确定的运动向量数据也发送到编码单元119;此外,反量化单元116和反变换单元117用于该视频重建块的重构建,在像素域中重构建残差块,该重构建残差块通过环路滤波单元118去除方块效应伪影,然后,将该重构残差块添加到解码图像缓存单元110的帧中的一个预测性块,用以产生经重构建的视频重建块;编码单元119是用于编码各种编码参数及量化后的变换系数。而解码图像缓存单元110用于存放重构建的视频重建块,用于预测参考。随着视频图像编码的进行,会不断生成新的重构建的视频重建块,这些重构建的视频重建块都会被存放在解码图像缓存单元110中。
本申请实施例提供一种视频解码系统,图7为本申请实施例视频编码系统的组成结构示意图,如图7所示,该视频编码系统12包括:
解码单元121、反变换单元127,与反量化单元122、帧内预测单元123、运动补偿单元124、环路滤波单元125和解码图像缓存单元126单元;输入的视频信号经过视频编码系统11进行编码处理之后,输出该视频信号的码流;该码流输入视频解码系统12中,首先经过解码单元121,用于得到解码后的变换系数;针对该变换系数通过反变换单元127与反量化单元122进行处理,以便在像 素域中产生残差块;帧内预测单元123可用于基于所确定的帧内预测方向和来自当前帧或图片的先前经解码块的数据而产生当前视频解码块的预测数据;运动补偿单元124是通过剖析运动向量和其他关联语法元素来确定用于视频解码块的预测信息,并使用该预测信息以产生正被解码的视频解码块的预测性块;通过对来自反变换单元127与反量化单元122的残差块与由帧内预测单元123或运动补偿单元124产生的对应预测性块进行求和,而形成解码的视频块;该解码的视频信号通过环路滤波单元125以便去除方块效应伪影,可以改善视频质量;然后将经解码的视频块存储于解码图像缓存单元126中,解码图像缓存单元126存储用于后续帧内预测或运动补偿的参考图像,同时也用于视频信号的输出,得到所恢复的原始视频信号。
采用IPT进行帧内预测编码模式的编码器的实施方式如下:
在当前编码单元中,若IPF的允许标识位为‘1’则进行如下所有步骤,若IPF的允许标识位为‘0’则仅进行a)、b)和f)步骤:
a)、帧内预测首先对所有预测模式进行遍历,计算每一种帧内预测模式下的预测像素,并根据原始像素计算率失真代价;
b)、根据上述所有预测模式率失真代价最小原则,选择出当前编码单元的最优预测模式,记录最优预测模式信息和与之对应的率失真代价信息;
c)、对所有帧内预测模式再次进行遍历,此过程开启IPF技术,首先计算每一种帧内预测模式下的预测像素,得到当前编码单元的预测块;
d)、对当前编码单元的预测块进行IPF滤波,根据当前预测模式选择与之相对应的滤波器,根据当前编码单元尺寸选择相对应的滤波系数组,具体对应关系可查表1;
e)、根据上述经过IPF滤波技术得到的最终预测像素与原始像素计算得到每一种预测模式的率失真代价信息,记录最小率失真代价信息的预测模式和对应代价值;
f)、若IPF允许标识位为‘0’,则将b)中记录的预测模式索引经码流传输给解码端;若IPF允许标识位为‘1’,则将b)中记录的最小代价值与e)中记录的最小代价值进行比较,若b)中的率失真代价更小,则将b)中记录的预测模式索引编码作为当前编码单元的最优预测模式经码流传输给解码端,将IPF当前编码单元标识位置否,表示不使用IPF技术,也经码流传输给解码端;若e)中的率失真更小,则将e)中记录的预测模式引编码作为当前编码单元的最优预测模式经码流传输给解码端,将IPF当前编码单元标识位置真,表示使用IPF技术,也经码流传输给解码端。
之后,将预测值与变换与量化等操作后的残差信息叠加,得到当前编码单元的重建块作为后续编码单元的参考信息。
采用IPT进行帧内预测编码模式的解码器的实施方式如下:
解码端获取码流并解析得到数字视频序列信息,解析得到当前视频序列的IPF允许标识位、当前解码单元编码模式为帧内预测编码模式和当前解码单元的IPF使用标识位。
在当前解码单元中,若IPF的允许标识位为‘1’则进行如下所有步骤;若IPF的允许标识位为‘0’则仅进行a)、b)和e)步骤:
a)、获取码流信息,解析当前解码单元的残差信息,经过反变换与反量化过程得到时域残差信息;
b)、解析码流并获取当前解码单元的预测模式索引,根据相邻重建块与预测模式索引,计算得到当前解码单元的预测块;
c)、解析并获取IPF的使用标识位,若IPF的使用标识位为‘0’,则不对当前预测块做额外操作;若IPF的使用标识位为‘1’,则执行d);
d)、根据当前解码单元的预测模式归类信息选择相对应的滤波器,根据当前解码单元的尺寸大小选择相对应的滤波器系数组,之后对预测块内各个像素进行滤波得到最终预测块;
将预测块叠加还原后的残差信息得到当前解码单元的重建块,经后处理输出。
但是,帧内预测滤波技术能够有效提升帧内预测的编码效率,大大增强了帧内预测的空间关联性,很好地解决了帧内预测过程中,忽略了未使用到的参考像素对预测值的影响。但当帧内预测过程如需要平滑处理的部分时,帧内预测滤波技术和目前帧内预测模式都不能很好地解决类似问题,逐像素的根据参考像素滤波可以提高预测块与参考块的关联性,却无法解决预测块内部的平滑问题。也就是说,根据单一预测模式计算所得的预测块通常在纹理比较清晰的图像当中会体现出较好的预测效果,残差因此也会变得更小更少,编码效率得以提升。但在纹理比较模糊的图像块中,过于锐化的预测可能会导致残差增加和变大,预测效果不好,编码效率下降。
基于此,在进行帧内预测时对预测块实行本技术,针对一些需要平滑处理的图像块,本申请提 出一种基于平滑处理的帧内预测滤波增强技术的帧内预测方法。本申请实施例提供的一种帧内预测方法主要作用于视频编码系统11的帧内预测单元114和视频解码系统12的帧内预测单元,即帧内预测单元123;也就是说,如果在视频编码系统11能够通过本申请实施例提供的帧内预测方法得到一个较好的预测效果,那么,对应地,在解码端,也能够改善视频解码恢复质量。
基于此,下面结合附图和实施例对本申请的技术方案进一步详细阐述。在进行详细阐述之前,需要说明的是,说明书通篇中提到的“第一”、“第二”、“第三”等,仅仅是为了区分不同的特征,不具有限定优先级、先后顺序、大小关系等功能。
本申请实施例提供一种帧内预测方法,该方法应用于视频编码设备,即编码器。该方法所实现的功能可以通过视频编码设备中的处理器调用程序代码来实现,当然程序代码可以保存在计算机存储介质中,可见,该视频编码设备至少包括处理器和存储介质。其中,当前编码单元和当前解码单元下述均用当前块来表示。
图8为本申请实施例一种帧内预测方法的实现流程示意图,如图8所示,该方法包括:
S101、遍历帧内预测模式,确定出当前块对应的初始预测块的初始预测值。
S102、对初始预测块分别进行帧内预测滤波和帧内预测平滑滤波处理,得到第一类预测值和第二类预测值;其中,帧内预测平滑滤波为采用至少两个相邻参考像素集合中每个相邻参考像素集合中的多个相邻参考像素,对当前块进行滤波的过程。
S103、采用初始预测值、第一类预测值和第二类预测值,分别与当前块的原始像素值进行率失真代价计算,确定出最优率失真代价对应的当前预测模式。
S104、采用当前预测模式,对当前块进行帧内预测。
S105、将当前预测模式的索引信息,以及滤波标识写入码流,其中,滤波标识表征帧内预测滤波和/或帧内预测平滑滤波对应的标识。
在本申请实施例中,提出了一种帧内预测平滑滤波技术(Intra Prediction Smooth,IPS),在基于IPF的基础上,可以叠加使用IPS技术实现帧内预测。即IPF和IPS都是允许的情况下,进行编码器侧的帧内预测过程。
在本申请实施例中,视频图像可以划分为多个图像块,每个当前待编码的图像块可以称为编码块,其中,每个编码块可以包括第一图像分量、第二图像分量和第三图像分量;而当前块为视频图像中当前待进行第一图像分量、第二图像分量或者第三图像分量预测的编码块。
其中,假定当前块进行第一图像分量预测,而且第一图像分量为亮度分量,即待预测图像分量为亮度分量,那么当前块也可以称为亮度块;或者,假定当前块进行第二图像分量预测,而且第二图像分量为色度分量,即待预测图像分量为色度分量,那么当前块也可以称为色度块。
需要说明的是,编码器确定当前块的待预测图像分量;基于当前块的参数,利用多种预测模式分别对待预测图像分量进行预测编码,得到初始预测值,再基于初始预测值计算多种预测模式下每一种预测模式对应的率失真代价;从计算得到的多个率失真代价中选取最小率失真代价(即第一最小率失真代价),并将最小率失真代价确定为最优率失真代价,其最优率失真代价对应的预测模式确定为当前块的预测模式。
在本申请实施例中,在确定编码器遍历所有帧内预测模式,确定出当前块对应的初始预测块的初始预测值,然后还采用IPF和IPS技术,对当前块进行滤波处理后,得到第一类预测值和第二类预测值,采用初始预测值、第一类预测值和第二类预测值,分别与当前块的原始像素值进行率失真代价计算,确定出各自对应的三种最小率失真代价,再从这三种最小率失真代价中,选择三种中最小的率失真代价,作为最优率失真代价,那么改最优率失真代价对应的预测模式就是当前预测模式。采用当前预测模式,对当前块进行帧内预测,以完成待预测图像分量的预测。
需要说明的是,帧内预测平滑滤波为采用至少两个相邻参考像素集合中每个相邻参考像素集合中的多个相邻参考像素,对当前块进行滤波的过程。而帧内预测滤波为是采用至少两个相邻参考像素集合中每个相邻参考像素集合中的一个相邻参考像素,对当前块进行滤波的过程。采用帧内预测平滑滤波由于可以参考一个相邻参考像素集合中的多个相邻参考像素,因此,这样的预测会更平滑一些,针对模糊图像的预测也会更精确一些,从而可以提高编码效率。
在本申请实施例中,编码器采用IPF和IPS技术,对当前块进行滤波处理后,得到第一类预测值和第二类预测值的过程:一种是在得到当前块对应的初始预测块的基础上,再分别对初始预测块进行IPF和IPS的处理的;另一种是编码器重新遍历所有帧内预测模式,开启IPF时,才计算每一种帧内预测模式下的初始预测块,再对初始预测块进行IPF滤波,确定出第一类预测值。然后,编码器再次重新遍历所有帧内预测模式,开启IPS时,才计算每一种帧内预测模式下的初始预测块, 再对初始预测块进行IPS滤波,确定出第二类预测值,本申请实施例不作限制。
在本申请的一些实施例中,编码器对初始预测块分别进行帧内预测滤波和帧内预测平滑滤波处理,得到第一类预测值和第二类预测值的过程可以为:编码器基于初始预测块中的每个像素的左侧相邻参考像素点和上侧相邻参考像素点,对初始预测块的每个像素进行帧内预测滤波,得到第一类预测值;以及编码器基于初始预测块中的每个像素对应的预设水平距离和预设垂直距离,对初始预测块进行帧内预测平滑滤波处理,得到第二类预测值。
需要说明的是,编码器对当前块的预测块进行IPF滤波,根据当前遍历的预测模式选择与之相对应的滤波器,根据当前块的尺寸选择相对应的滤波系数组,具体对应关系可查表1,确定出滤波系数之后,基于该滤波系数对预测块进行滤波,得到每一种预测模式的率失真代价,再从中选出最小的就是第二最小率失真代价。
在本申请的一些实施例中,编码器在进行IPS滤波的过程可以基于初始预测块中的每个像素对应的预设水平距离和预设垂直距离,确定与每个像素对应的至少两个相邻参考像素集合的至少两个相邻参考块范围;从至少两个相邻参考像素集合中,对应确定出属于至少两个相邻参考块范围内的至少两个目标参考像素集合;其中,每个目标参考像素集合中包含至少一个目标参考像素;基于至少两个目标参考像素集合,对每个像素进行帧内预测平滑滤波处理,得到第二类预测值。
在本申请的一些实施例中,编码器从至少两个相邻参考像素集合中,对应确定出属于至少两个相邻参考块范围内的至少两个目标参考像素集合的过程可以为:
方式一:编码器从至少两个相邻参考像素集合中,确定每个相邻参考块范围的两个边界像素位置的像素为一个目标参考像素集合,从而确定出至少两个目标参考像素集合。
方式二:编码器从至少两个相邻参考像素集合中,确定每个相邻参考块范围内的任意像素位置的M个像素为一个目标参考像素集合,从而确定出至少两个目标参考像素集合,其中,M为大于0,且不超过对应的相邻参考像素集合的最大像素数量。
在本申请的一些实施例中,至少两个相邻参考像素集合包括:左侧相邻参考像素集合和上侧相邻参考像素集合;至少两个相邻参考块范围包括:左侧相邻参考像素范围和上侧相邻参考像素范围;至少两个目标参考像素集合包括:左侧目标相邻参考像素集合和上侧目标相邻参考像素集合。
需要说明的是,至少两个相邻参考像素集合包括:左侧相邻参考像素集合和上侧相邻参考像素集合时,编码器确定当前像素对应的预设水平距离和预设垂直距离,以当前块的当前像素为基准,分别向左右移动预设水平距离,得到第一水平像素位置和第二水平像素位置;以及向上下分别移动预设垂直距离,得到第一垂直像素位置和第二垂直像素位置。基于第一水平像素位置和第二水平像素位置,映射到上侧相邻参考像素集合中,确定出了像素位置的第一边界限和第二边界限,第一边界限和第二边界限之间的像素位置就是当前像素对应的与上侧相邻参考像素集合对应的上侧相邻参考像素范围,基于第一垂直像素位置和第二垂直像素位置,映射到左侧相邻参考像素集合中,确定出了像素位置的第三边界限和第四边界限,第三边界限和第四边界限之间的像素位置就是当前像素对应的与左侧相邻参考像素集合对应的左侧相邻参考像素范围,这样就得到了至少两个相邻参考块范围。针对每个相邻参考像素集合,编码器可以从其对应的相邻参考像素范围所包含的参考像素中选择出至少一个相邻参考像素(即目标参考像素集合)用于进行帧内预测,从而选出了至少两个目标参考像素集合。
在本申请实施例中,编码器对当前块的每个像素都是这么进行的,从而完成对当前块的处理、针对当前像素,编码器针对一个相邻参考像素集合选出的目标参考像素集合中参考像素的个数可以是一个,也可以是多个,这是基于当前像素在当前块中的位置决定的。
需要说明的是,编码器可以选择每个相邻参考像素范围的边界位置对应的参考像素值组成目标参考像素集合,也可以从每个相邻参考像素范围中选择任意M个参考像素组成目标参考像素集合,其中,M大于0即可,本申请实施例不作限制。
需要说明的是,针对不同的相邻参考像素集合,对应确定的M个参考像素的个数可以是不同的,也可以是相同的,本申请实施例不作限制。例如,上侧相邻参考像素集合对应的目标参考像素集合可以是UPNum个,和左侧相邻参考像素集合对应的目标参考像素集合可以是LFNum个,UPNum和LFNum可以相同,也可以不同。
在本申请的一些实施例中,预设水平距离小于等于初始预测块的宽度;预设垂直距离小于等于初始预测块的高度。
在本申请的一些实施例中,初始预测块的n行m列位置的第一类像素对应的预设水平距离和预设垂直距离,与初始预测块的除n行m列之外的其他类像素对应的预设水平距离和预设垂直距离不 同;n和m为自然数;第一类像素中的每个像素对应的预设水平距离和预设垂直距离至少部分相同,或者均不相同;其他类像素中的每个像素对应的预设水平距离和预设垂直距离至少部分相同,或者均不相同。
需要说明的是,预设水平距离和预设垂直距离是相等的,具体的数值可以实现根据实际情况设置在编码器和解码器中,也可以根据当前预测块的大小预设在编码器和解码器中,本申请实施例不作限制。
在本申请实施例中,初始预测块的n行m列可以是前n行和前m列,也可以是其他的形式,本申请实施例不作限制。
示例性的,上述IPS技术对于初始预测块的前n行和前m列滤波处理可以不同,具体为前n行和前m列可以采用第一种位置关系对应的参考像素,而其他非前n行和前m列预测像素滤波可以采用第二种位置关系对应的参考像素。例如,前三行和前三列采用HD和VD均相同,为1,而非前三行和前三列采用HD和VD均相同,为2。
其中,n和m不超过当前块的尺寸,n和m可以相同,也可以不相同,本申请实施例不作限制。
在本申请的一些实施例中,编码器可以根据IPF的原理机制,确定滤波系数;基于至少两个目标参考像素集合和滤波系数,对每个像素进行帧内预测平滑滤波处理,得到第二类预测值。
其中,初始预测块的n行m列位置的第一类像素对应的滤波系数,与初始预测块的除n行m列之外的其他类像素对应的滤波系数不同;n和m为自然数;第一类像素中的每个像素对应的滤波系数至少部分相同,或者均不相同;其他类像素中的每个像素对应的滤波系数至少部分相同,或者均不相同。
在本申请实施例中,IPS技术可以拥有多个不同的滤波系数,如当前预测像素处于前n行和前m列所用到的系数与非前n行和非前m列所用的滤波系数不同等,并且,前n行和前m列中的每个像素对应的滤波系数也是可以相同,部分相同,或者均不相同的;非前n行和非前m列中的每个像素对应的滤波系数也是可以相同,部分相同,或者均不相同的。
需要说明的是,在本申请实施例的一些实施例中,编码器可以确定权值系数;基于至少两个目标参考像素集合和权值系数,对每个像素进行加权求和,完成帧内预测平滑滤波处理,得到第二类预测值。其中,IPS技术可以拥有多个不同的权值系数,如当前预测像素处于前n行和前m列所用到的系数与非前n行和非前m列所用的权值系数不同等,并且,前n行和前m列中的每个像素对应的权值系数也是可以相同,部分相同,或者均不相同的;非前n行和非前m列中的每个像素对应的权值系数也是可以相同,部分相同,或者均不相同的。
示例性的,编码器使用当前预测像素所在的位置为基准,以水平距离HD和垂直距离VD为偏移,获取上侧相邻UPNum个重建参考像素和左侧LFNum个重建参考像素,将获取到的参考像素与当前预测像素进行滤波,或可以是加权求和,得到精确后的预测像素作为预测块中当前位置的最终预测像素。
示例性的,如图9A所示的距离为2的4个目标参考像素的示意图,a为当前像素,b和c是相邻参考像素范围,编码器获取得到4个参考像素点与预测像素点组成一个5抽头滤波器或加权得到精确修正后的预测像素值,在给出的具体例子中,可以设定4个参考像素点前两行和前两列的系数均为10,未精确修正的预测像素点的加权系数为216,总和需除以256或向右移8位,且前两行和前两列的VD和HD可以设定为1;设定4个参考像素点非前两行和非前两列的加权系数均为13,未精确修正的预测像素点系数为204,总和需除以256或向右移8位。
如图9B所示的距离为1的4个目标参考像素的示意图,a为当前像素,b和c是相邻参考像素范围,编码器获取得到4个参考像素点与预测像素点组成一个5抽头滤波器或加权得到精确修正后的预测像素值,在给出的具体例子中,可以设定4个参考像素点的加权系数均为7,未精确修正的预测像素点的加权系数为228,总和需除以256或向右移8位。
如图9C所示的距离为0的2个目标参考像素的示意图,a为当前像素,b和c是相邻参考像素范围,编码器获取得到2个参考像素点与预测像素点组成一个3抽头滤波器或加权得到精确修正后的预测像素值,在给出的具体例子中,可以设定2个参考像素点的加权系数均为14,未精确修正的预测像素点的加权系数为228,总和需除以256或向右移8位。
在本申请实施例中,编码器进行IPS技术所获取的预测像素可以与其他情况下不同,例如使用4抽头不同滤波系数或其他个数抽头不同滤波系数得到IPS使用的预测像素的第二类预测值等。
在本申请的一些实施例中,编码器采用IPS技术对当前块进行滤波时,若需要获取的重建参考像素,即目标参考像素集中的参考像素的坐标超出上侧相邻参考像素集合或左侧相邻参考像素集合 的尺寸范围,还可以对当前块的相邻参考像素集合进行填充后,再进行目标参考像素集合的选取。
在本申请的一些实施例中,当预设水平距离大于初始预测块的宽度时,编码器采用上侧相邻参考像素集合中的最左侧的参考像素向左填充,直至确定出上侧相邻参考块范围的第一边界限时为止,和/或,采用上侧相邻参考像素集合中的最右侧的参考像素向右填充,直至确定出上侧相邻参考块范围的第二边界限时为止;预设垂直距离小于等于初始预测块的高度时,采用左侧相邻参考像素集合中的最下侧的参考像素向下填充,直至确定出左侧相邻参考块范围的第三边界限时为止,和/或,采用左侧相邻参考像素集合中的最上侧的参考像素向上填充,直至确定出左侧相邻参考块范围的第四边界限时为止。
示例性的,编码器使用上侧相邻重建像素最左侧的重建参考像素向左填充直到满足需要索取的范围,使用上侧相邻重建像素最右侧的重建参考像素向右填充直到满足需要索取的范围;使用左侧相邻重建像素最上侧的重建参考像素向上填充直到满足需要索取的范围,使用左侧相邻重建像素向下填充直到满足需要索取的范围。上述填充过程也可以使用条件判断的方式替换,超出范围的像素直接索取最边界处像素点等,本申请实施例不做限制。
需要说明的是,编码器对当前块的预测块进行IPS滤波,根据当前遍历的预测模式选择与之相对应的滤波器,确定出滤波系数之后,基于该滤波系数对预测块进行滤波,得到每一种预测模式的率失真代价,再从中选出最小的就是第三最小率失真代价。
在本申请的一些实施例中,编码器在得到了第一类预测值和第二类预测值之后,该编码器采用初始预测值、第一类预测值和第二类预测值,分别与当前块的原始像素值进行率失真代价计算,确定出与初始预测值对应的第一最小率失真代价、与第一类预测值对应的第二最小率失真代价以及与第二类预测值对应的第三最小率失真代价;从第一最小率失真代价、第二最小率失真代价以及第三最小率失真代价中,确定出最小的最优率失真代价;将得到最优率失真代价对应预测模式作为当前预测模式。这样,编码器就可以采用当前预测模式,对当前块进行帧内预测,并将当前预测模式的索引信息,以及滤波标识写入码流,其中,滤波标识表征帧内预测滤波和/或帧内预测平滑滤波对应的标识。
在本申请实施例中,滤波标识包括:帧内预测滤波允许标识、帧内预测滤波使用标识、帧内预测平滑滤波允许标识和帧内预测平滑滤波使用标识。
在本申请的一些实施例中,由于本申请均采用了IPF和IPS,因此,编码器确定帧内预测滤波允许标识为有效,以及帧内预测平滑滤波允许标识为有效,并将帧内预测滤波允许标识和帧内预测平滑滤波允许标识写入码流;
其中,帧内预测滤波使用标识和帧内预测平滑滤波使用标识的传输遵循以下一种传输方式给解码器:
当最优率失真代价为第二最小率失真代价时,确定帧内预测滤波使用标识为有效,并将帧内预测滤波使用标识写入码流;
当最优率失真代价为第三最小率失真代价时,确定帧内预测滤波使用标识为无效,且帧内预测平滑滤波使用标识为有效,并将帧内预测滤波使用标识和帧内预测平滑滤波使用标识写入码流;
当最优率失真代价为第一最小率失真代价时,确定帧内预测滤波使用标识为无效,且帧内预测平滑滤波使用标识为无效,并将帧内预测滤波使用标识和帧内预测平滑滤波使用标识写入码流。
在本申请实施例中,可以采用二进制数表示是否有效,例如,1表示有效,0表示无效,也可以0表示有效,1表示无效等,具体的设置方式和设置数值本申请实施例不作限制。
可以理解的是,编码器采用帧内预测滤波实现了采用至少两个相邻参考像素集合中每个相邻参考像素集合中的一个相邻参考像素,对当前块进行滤波的过程。采用帧内预测平滑滤波由于可以参考一个相邻参考像素集合中的多个相邻参考像素,因此,这样的预测会更平滑一些,针对模糊图像的预测也会更精确一些,从而可以提高编码效率。
在本申请的一些实施例中,待预测分量可以有三种,实现对Y、U、V三个编码通道的编码,即初始预测值的编码类型对应多个编码通道;那么,每个编码通道对应的滤波标识采用同一个标识,或者采用一一对应的标识。
也就是说,IPS技术的适用到各个编码通道,其中,亮度分量和色度分量分别使用独立标识位表示IPS技术的使用与否。
可以理解的是,编码器使用一个滤波标识针对三种编码通道时,可以节约比特和传输标识位的数据量,减少计算的复杂度。
在本申请的一些实施例中,编码器可以先对当前块进行判别,看是否符合可以进行IPS处理的 条件,若不符合,就不采用,或者将当前块划分成符合条件的;若符合,就采用本申请提出的帧内预测方法。其中,
当初始预测块的尺寸满足预测面积阈值范围时,允许使用帧内预测平滑滤波进行滤波处理;
当初始预测块的尺寸大于预测面积阈值范围的上限时,将初始预测块进行划分,得到满足预测面积阈值范围的预测子块;针对预测子块实现帧内预测处理流程。
其中,预测面积阈值范围可以是不小于4×4或8×8,不超过64×64或32×32,详细的数值可根据实际情况设置。面积过于小的就可以不进行IPS处理,但面积过大的,可以通过划分,使其满足使用IPS条件后,再进行处理。
可以理解的是,编码器对IPS的使用范围进行限制,对于预测块面积较小的单元不使用IPS技术,以减少传输标识位和降低计算复杂度。
在本申请的一些实施例中,编码器确定出当前块对应的初始预测块的初始预测值之后,采用当前预测模式,对当前块进行帧内预测之前,该编码器可以根据帧内预测模式的类型,确定出预测模式集合,预测模式集合为启用帧内预测平滑滤波技术的预测模式;针对初始预测值中,采用预测模式集合预测出的初始子预测值,进行帧内预测平滑滤波处理,得到第二类预测值;采用初始预测值和第二类预测值,分别与当前块的原始像素值进行率失真代价计算,确定出最优率失真代价对应的当前预测模式。
可以理解的是,编码器对IPS的使用范围进行限制,对于当前块的预测模式进行筛选,仅对部分预测模式使用IPS技术,以减少传输标识位和降低计算复杂度。
在本申请的一些实施例中,编码器得到第一类预测值和第二类预测值的方式,还可以包括:
编码器在遍历帧内预测模式,确定出当前块对应的初始预测块的初始预测值之后,采用初始预测值、第一类预测值和第二类预测值,分别与当前块的原始像素值进行率失真代价计算,确定出最优率失真代价对应的当前预测模式之前,对初始预测块分别进行帧内预测滤波,得到第一类预测值;遍历帧内预测模式,采用帧内预测平滑滤波处理对当前块进行预测估计,得到第二类预测值。
也就是说,编码器可以再遍历帧内预测模式,基于当前块中的每个像素对应的预设水平距离和预设垂直距离,对当前块进行帧内预测平滑滤波处理,得到第二类预测值;而不用对初始预测值进行滤波处理。其中,编码器对当前块进行滤波处理的实现原理与前述实施例中对初始预测块进行滤波的原理一致,此处不再赘述。
示例性的,编码器获取编码信息,包括帧内预测滤波(IPF)允许标识位以及本技术方案(IPS)的允许标识位等,获取图像信息后将图像划分成若干个CTU,进一步再划分成若干个CU,每个独立CU都进行帧内预测,当前CU可以限制最小面积和最大面积进行IPS技术。
在编码端的帧内预测过程中,若IPF允许标识位和IPS允许标识位都为‘1’,则执行如下所有步骤;若IPF允许标识位为‘1’且IPS允许标识位为‘0’,则仅执行a)、b)、c)、d)、e)、和h);若IPF允许标识位为‘0’且IPS允许标识位为‘1’,则仅执行a)、b)、f)、g)、和h);若IPF允许标识位和IPS允许标识位都为‘0’,则仅执行a)、b)和h)。上述若IPF或IPS允许标识位为‘0’,则编码端默认所有编码块的对应技术的使用标识位为‘0’:
a)、当前编码单元遍历所有帧内预测模式,计算得到每一种预测模式下的预测块,根据原始像素块计算得到当前预测模式的率失真代价信息;
b)、根据上述所有预测模式率失真代价最小原则,选择出当前编码单元的最优预测模式,记录最优预测模式信息和与之对应的率失真代价信息;
c)、对所有帧内预测模式进行遍历,此过程使用IPF技术,首先计算每一种帧内预测模式下的预测像素,得到当前编码单元的预测块;
d)、对当前编码单元的预测块进行IPF滤波,根据当前预测模式选择与之相对应的滤波器,根据当前编码单元尺寸选择相对应的滤波系数组,具体对应关系可查表1;
e)、根据上述经过IPF滤波技术得到的最终预测像素与原始像素计算得到每一种预测模式的率失真代价信息,记录最小率失真代价信息的预测模式和对应代价值;
f)、对所有帧内预测模式进行遍历,此过程使用IPS技术,计算每一种帧内预测模式下的预测像素,计算预测像素过程使用IPS技术,具体可以为若干个抽头插值滤波器加上若干个参考像素作为新的插值滤波器预测得到该过程的预测像素,上述若干个抽头插值滤波器可以为8个抽头滤波器,上述若干个参考像素可以为4个,获取上述若干个参考像素的过程如下:以各预测像素所在的位置为基准,以水平距离HD和垂直距离VD为偏移,获取上侧相邻UPNum个重建参考像素和左侧 LFNum个重建参考像素。上述HD与VD可以取值为0,1,2,3,…,N等,N不超过当前块的宽或高。上述UPNum与LFNum可以取值为0,1,2,3,…,M等,M不超过当前块上侧相邻重建参考像素个数和左侧相邻重建参考像素个数;
g)、根据上述经过IPS技术得到的最终预测像素与原始像素计算得到每一种预测模式的率失真代价信息,记录最小率失真代价信息的预测模式和对应代价值;
h)、若IPF允许标识位为‘0’且IPS允许标识位为‘0’,则将b)中记录的预测模式索引经码流传输给解码端;若IPF允许标识位为‘1’且IPS允许标识位为‘0’,则将b)中记录的最小代价值与e)中记录的最小代价值进行比较,若b)中的率失真代价更小,则将b)中记录的预测模式索引编码作为当前编码单元的最优预测模式经码流传输给解码端,将IPF当前编码单元标识位置‘0’,表示不使用IPF技术,也经码流传输给解码端;若e)中的率失真更小,则将e)中记录的预测模式引编码作为当前编码单元的最优预测模式经码流传输给解码端,将IPF当前编码单元标识位置‘1’,表示使用IPF技术,也经码流传输给解码端;若IPF允许标识位为‘0’且IPS允许标识位为‘1’,则将b)中记录的最小代价值与g)中记录的最小代价值进行比较,若b)中的率失真代价更小,则将b)中记录的预测模式索引编码作为当前编码单元的最优预测模式经码流传输给解码端,将当前编码单元的IPS使用标识位置‘0’,表示不使用该技术,也经码流传输给解码端;若g)中的率失真更小,则将g)中记录的预测模式引编码作为当前编码单元的最优预测模式经码流传输给解码端,将当前编码单元的IPS使用标识位置‘1’,表示使用该技术,也经码流传输给解码端;若IPF允许标识位为‘1’且IPS允许标识位为‘1’,则将b)、e)和g)中记录的最小代价值进行比较,若b)中的率失真代价更小,则将b)中记录的预测模式索引编码作为当前编码单元的最优预测模式经码流传输给解码端,将当前编码单元的IPS使用标识位和IPF使用标识位置‘0’,表示均不使用,也经码流传输给解码端;若e)中的率失真更小,则将e)中记录的预测模式引编码作为当前编码单元的最优预测模式经码流传输给解码端,将当前编码单元的IPF使用标识位置‘1’且不传输IPS使用标识位,表示使用IPF技术而不使用IPS技术,也经码流传输给解码端;若a)、中的率失真更小,则将g)中记录的预测模式引编码作为当前编码单元的最优预测模式经码流传输给解码端,将当前编码单元的IPF使用标识位置‘0’且IPS使用标识位置‘1’,表示不使用IPF技术而使用IPS技术,也经码流传输给解码端。
编码器最后将预测块和反变换、反量化后的残差叠加得到重建后的编码单元块,作为下一个编码块的预测参考块。
本申请实施例提供了一种帧内预测方法,如图10所示,包括:
S201、遍历帧内预测模式,确定出当前块对应的初始预测块的初始预测值。
S202、对初始预测块分别进行帧内预测平滑滤波处理,得到第二类预测值;其中,帧内预测平滑滤波为采用至少两个相邻参考像素集合中每个相邻参考像素集合中的多个相邻参考像素,对当前块进行滤波的过程。
S203、采用初始预测值和第二类预测值,分别与当前块的原始像素值进行率失真代价计算,确定出最优率失真代价对应的当前预测模式。
S204、采用当前预测模式,对当前块进行帧内预测。
S205、将当前预测模式的索引信息,以及滤波标识写入码流,其中,滤波标识表征帧内预测平滑滤波对应的标识。
在本申请实施例中,编码器可以只判断是否进行IPS就可以,不依赖IPF技术的实现基础上,那么就是帧内预测平滑滤波允许标识有效。
在本申请实施例中,编码器可以只进行了IPS,这样开启IPS技术时,编码器对初始预测块分别进行帧内预测平滑滤波处理,得到第二类预测值,该编码器只需要采用初始预测值和第二类预测值,分别与当前块的原始像素值进行率失真代价计算,确定出最优率失真代价对应的当前预测模式即可。详细的滤波处理方式跟前述实施例的实现一致,此处不再赘述。
在本申请实施例中,滤波标识包括:帧内预测平滑滤波允许标识和帧内预测平滑滤波使用标识。编码器将当前预测模式的索引信息写入码流;确定帧内预测平滑滤波允许标识为有效,并将帧内预测平滑滤波允许标识写入码流。
帧内预测平滑滤波使用标识的传输方式为以下之一:
当最优率失真代价为第三最小率失真代价时,确定帧内预测平滑滤波使用标识为有效,并将帧内预测平滑滤波使用标识写入码流。
当最优率失真代价为第一最小率失真代价时,确定帧内预测平滑滤波使用标识为无效,并将帧内预测平滑滤波使用标识写入码流。
示例性的,编码器获取编码信息,包括帧内预测滤波(IPF)允许标识位以及本技术方案(IPS)的允许标识位等,获取图像信息后将图像划分成若干个CTU,进一步再划分成若干个CU,每个独立CU都进行帧内预测,当前CU可以限制最小面积和最大面积进行IPS技术。
在编码端帧内预测过程中,若IPF允许标识位和IPS允许标识位都为‘1’,则执行如下所有步骤;若IPF允许标识位为‘1’且IPS允许标识位为‘0’,则仅执行a)、b)、c)、d)、e)、和i);若IPF允许标识位为‘0’且IPS允许标识位为‘1’,则仅执行a)、b)、f)、g)、h)、和i);若IPF允许标识位和IPS允许标识位都为‘0’,则仅执行a)、b)和i)。上述若IPF或IPS允许标识位为‘0’,则编码端默认所有编码块的对应技术的使用标识位为‘0’:
a)、当前编码单元遍历所有帧内预测模式,计算得到每一种预测模式下的预测块,根据原始像素块计算得到当前预测模式的率失真代价信息;
b)、根据上述所有预测模式率失真代价最小原则,选择出当前编码单元的最优预测模式,记录最优预测模式信息和与之对应的率失真代价信息;
c)、对所有帧内预测模式进行遍历,此过程使用IPF技术,首先计算每一种帧内预测模式下的预测像素,得到当前编码单元的预测块;
d)、对当前编码单元的预测块进行IPF滤波,根据当前预测模式选择与之相对应的滤波器,根据当前编码单元尺寸选择相对应的滤波系数组,具体对应关系可查表1;
e)、根据上述经过IPF滤波技术得到的最终预测像素与原始像素计算得到每一种预测模式的率失真代价信息,记录最小率失真代价信息的预测模式和对应代价值;
f)、对所有帧内预测模式进行遍历,此过程使用IPS技术,首先计算每一种帧内预测模式下的预测像素,得到当前编码单元的预测块。该过程计算帧内预测像素的插值滤波器可以与步骤a)和c)不同,使用更强的滤波器可以得到更平滑的预测像素,具体实施可以为角度预测模式采用8个抽头插值滤波器,示例性的,滤波系数可以如下4组所示,每组可以包括32种8抽头的滤波系数。
一组:{15,99,238,315,237,101,18,1},{14,95,233,315,242,105,19,1},{13,91,229,315,246,109,20,1},{12,89,226,314,248,112,22,1},{11,84,220,314,253,117,24,1},{10,81,217,313,257,120,25,1},{9,77,211,312,262,125,27,1},{8,74,208,311,265,129,28,1},{7,71,203,310,269,133,30,1},{7,68,200,309,271,136,32,1},{6,65,195,307,275,141,34,1},{5,62,190,304,278,146,37,2},{5,59,185,302,282,150,39,2},{4,56,182,301,285,154,40,2},{4,54,177,298,287,158,43,3},{3,51,172,296,290,163,46,3},{3,48,167,294,294,167,48,3},{3,46,163,290,296,172,51,3},{3,43,158,287,298,177,54,4},{2,40,154,285,301,182,56,4},{2,39,150,282,302,185,59,5},{2,37,146,278,304,190,62,5},{1,34,141,275,307,195,65,6},{1,32,136,271,309,200,68,7},{1,30,133,269,310,203,71,7},{1,28,129,265,311,208,74,8},{1,27,125,262,312,211,77,9},{1,25,120,257,313,217,81,10},{1,24,117,253,314,220,84,11},{1,22,112,248,314,226,89,12},{1,20,109,246,315,229,91,13},{1,19,105,242,315,233,95,14};
二组:{7,92,245,339,245,91,6,-1},{6,87,239,339,250,96,8,-1},{5,83,236,339,255,99,8,-1},{4,80,231,338,259,103,10,-1},{3,75,226,338,265,108,11,-2},{1,70,220,337,271,114,13,-2},{1,67,217,337,275,117,13,-3},{0,64,211,335,279,122,16,-3},{-1,61,206,333,283,127,18,-3},{-1,57,202,332,287,131,19,-3},{-2,53,196,330,292,137,21,-3},{-3,49,190,328,297,142,24,-3},{-3,47,187,326,300,146,25,-4},{-3,43,181,324,305,151,27,-4},{-3,41,177,321,308,155,29,-4},{-4,37,171,319,312,161,32,-4},{-4,35,166,315,315,166,35,-4},{-4,32,161,312,319,171,37,-4},{-4,29,155,308,321,177,41,-3},{-4,27,151,305,324,181,43,-3},{-4,25,146,300,326,187,47,-3},{-3,24,142,297,328,190,49,-3},{-3,21,137,292,330,196,53,-2},{-3,19,131,287,332,202,57,-1},{-3,18,127,283,333,206,61,-1},{-3,16,122,279,335,211,64,0},{-3,13,117,275,337,217,67,1},{-2,13,114,271,337,220,70,1},{-2,11,108,265,338,226,75,3},{-1,10,103,259,338,231,80,4},{-1,8,99,255,339,236,83,5},{-1,8,96,250,339,239,87,6};
三组:{0,42,125,178,125,42,0,0},{-1,40,121,177,128,46,1,0},{-1,37,118,177,130,48,3,0},{-1,36,116,176,133,50,3,-1},{-1,34,114,176,135,52,3,-1},{-2,32,110,175,138,56,4,-1},{-3,30,107,174,141,59,5,-1},{-3,29,106,173,142,60,6,-1},{-3,28,104,172,143,62,7,-1},{-3,25,101,172,146,64,8,-1},{-4,23,97,171,149,68,9,-1},{-4,21,94,170,152,71,10,-2},{-4,19,91,168,156,74,11,-3},{-3,19,91,167,155,74,12,-3},{-3,20,90,165,155,75,13,-3},{-3,18,87,163,157,79,14,-3},{-3,16,83,160,160,83,16,-3},{-3,14,79,157,163,87,18,-3},{-3,13,75,155,165,90,20,-3},{-3,12,74,155,167,91,19,-3},{-3,11,74,156,168,91,19,-4},{-2,10,71,152,170,94,21,-4},{-1,9,68,149,171,97,23,-4},{-1,8,64,146,172,101,25,-3},{-1,7,62,143,172,104,28,-3},{-1,6,60,142,173,106,29,-3},{-1,5,59,141,174,107,30,-3},{-1,4,56,138,175,110,32,-2},{-1,3,52,135,176,114,34,-1},{-1,3,50,133,176,116,36, -1},{0,3,48,130,177,118,37,-1},{0,1,46,128,177,121,40,-1};
四组:{21,105,235,302,235,105,21,0},{21,102,231,300,237,108,24,1},{20,100,227,298,239,113,26,1},{19,97,223,296,241,117,29,2},{19,94,218,294,243,121,32,3},{18,92,214,292,246,125,34,3},{17,89,210,290,248,129,37,4},{17,86,206,288,250,133,39,5},{16,84,202,286,252,137,42,5},{15,81,198,284,254,141,45,6},{15,78,194,282,256,145,47,7},{14,76,190,280,258,149,50,7},{13,73,186,277,260,154,53,8},{12,71,182,275,262,158,55,9},{12,68,178,273,264,162,58,9},{11,65,174,271,267,166,60,10},{10,63,170,269,269,170,63,10},{10,60,166,267,271,174,65,11},{9,58,162,264,273,178,68,12},{9,55,158,262,275,182,71,12},{8,53,154,260,277,186,73,13},{7,50,149,258,280,190,76,14},{7,47,145,256,282,194,78,15},{6,45,141,254,284,198,81,15},{5,42,137,252,286,202,84,16},{5,39,133,250,288,206,86,17},{4,37,129,248,290,210,89,17},{3,34,125,246,292,214,92,18},{3,32,121,243,294,218,94,19},{2,29,117,241,296,223,97,19},{1,26,113,239,298,227,100,20},{1,24,108,237,300,231,102,21}。
g)、对当前编码单元的预测块进行预测像素精确修正,该精确修正过程可以是使用当前预测像素所在的位置为基准,以水平距离HD和垂直距离VD为偏移,获取上侧相邻UPNum个重建参考像素和左侧LFNum个重建参考像素,将获取到的参考像素与当前预测像素进行滤波,或可以是加权求和,得到精确后的预测像素作为预测块中当前位置的最终预测像素。上述HD与VD可以取值为0,1,2,3,…,N等,N不超过当前块的宽或高。上述UPNum与LFNum可以取值为0,1,2,3,…,M等,M不超过当前块上侧相邻重建参考像素个数和左侧相邻重建参考像素个数;
h)、根据上述经过IPS技术得到的最终预测像素与原始像素计算得到每一种预测模式的率失真代价信息,记录最小率失真代价信息的预测模式和对应代价值;
i)、若IPF允许标识位为‘0’且IPS允许标识位为‘0’,则将b)中记录的预测模式索引经码流传输给解码端;若IPF允许标识位为‘1’且IPS允许标识位为‘0’,则将b)中记录的最小代价值与e)中记录的最小代价值进行比较,若b)中的率失真代价更小,则将b)中记录的预测模式索引编码作为当前编码单元的最优预测模式经码流传输给解码端,将IPF当前编码单元标识位置‘0’,表示不使用IPF技术,也经码流传输给解码端;若e)中的率失真更小,则将e)中记录的预测模式引编码作为当前编码单元的最优预测模式经码流传输给解码端,将IPF当前编码单元标识位置‘1’,表示使用IPF技术,也经码流传输给解码端;若IPF允许标识位为‘0’且IPS允许标识位为‘1’,则将b)中记录的最小代价值与h)中记录的最小代价值进行比较,若b)中的率失真代价更小,则将b)中记录的预测模式索引编码作为当前编码单元的最优预测模式经码流传输给解码端,将当前编码单元的IPS使用标识位置‘0’,表示不使用该技术,也经码流传输给解码端;若h)中的率失真更小,则将h)中记录的预测模式引编码作为当前编码单元的最优预测模式经码流传输给解码端,将当前编码单元的IPS使用标识位置‘1’,表示使用该技术,也经码流传输给解码端;若IPF允许标识位为‘1’且IPS允许标识位为‘1’,则将b)、e)和h)中记录的最小代价值进行比较,若b)中的率失真代价更小,则将b)中记录的预测模式索引编码作为当前编码单元的最优预测模式经码流传输给解码端,将当前编码单元的IPS使用标识位和IPF使用标识位置‘0’,表示均不使用,也经码流传输给解码端;若e)中的率失真更小,则将e)中记录的预测模式引编码作为当前编码单元的最优预测模式经码流传输给解码端,将当前编码单元的IPF使用标识位置‘1’且不传输IPS使用标识位,表示使用IPF技术而不使用IPS技术,也经码流传输给解码端;若h)中的率失真更小,则将h)中记录的预测模式引编码作为当前编码单元的最优预测模式经码流传输给解码端,将当前编码单元的IPF使用标识位置‘0’且IPS使用标识位置‘1’,表示不使用IPF技术而使用IPS技术,也经码流传输给解码端。
编码器最后将预测块和反变换、反量化后的残差叠加得到重建后的编码单元块,作为下一个编码单元的预测参考块。
可以理解的是,编码器采用帧内预测平滑滤波技术,强了帧内预测的空间关联性,并且一个相邻参考像素集合中的多个参考像素进行平滑滤波,避免了过于锐化的预测可能会导致残差增加和变大,预测效果不好的问题,提高了编码效率。
本申请实施例提供一种帧内预测方法,该方法应用于视频解码设备,即解码器。该方法所实现的功能可以通过视频解码设备中的处理器调用程序代码来实现,当然程序代码可以保存在计算机存储介质中,可见,该视频编码设备至少包括处理器和存储介质。
图11为本申请实施例一种帧内预测方法的实现流程示意图,如图11所示,该方法包括:
S301、获取码流,解析码流的头信息,得到滤波标识。
S302、当滤波标识为表征帧内预测滤波允许标识有效、且帧内预测平滑滤波允许标识有效时, 至少从码流中获取当前预测模式和帧内预测滤波使用标识。
S303、当帧内预测滤波使用标识为无效、且从码流中获取到有效的帧内预测平滑滤波使用标识时,基于当前预测模式,对当前块进行帧内预测平滑滤波处理,得到第一预测值。
在本申请实施例中,解码器在获取到了码流信息后,可以从码流的头信息中解析出是不是进行了IPF和IPS的处理的。即可以解析出滤波标识中的帧内预测滤波允许标识,和/或,帧内预测平滑滤波允许标识的。当采用了IPF和IPS时,滤波标识为表征帧内预测滤波允许标识有效、且帧内预测平滑滤波允许标识有效。这时,解码器就可以至少从码流中获取当前预测模式和帧内预测滤波使用标识了,当帧内预测滤波使用标识为无效、且从码流中获取到有效的帧内预测平滑滤波使用标识时,即当前块采用的是IPS技术确定的当前预测模式的情况时,基于当前预测模式,对当前块进行帧内预测平滑滤波处理,就可以得到第一预测值了,然后再基于第一预测值进行后续的解码流程。
在本申请的一些实施例中,当帧内预测滤波使用标识为有效时,从码流中获取当前预测模式;基于当前预测模式,对当前块进行帧内预测滤波处理,得到第二预测值。
在本申请的一些实施例中,解码器基于当前块中的每个像素对应的预设水平距离和预设垂直距离,对当前块进行帧内预测平滑滤波处理,得到第一预测值。
在本申请的一些实施例中,基于当前块中的每个像素对应的预设水平距离和预设垂直距离,确定与每个像素对应的至少两个相邻参考像素集合的至少两个相邻参考块范围;
从至少两个相邻参考像素集合中,对应确定出属于至少两个相邻参考块范围内的至少两个目标参考像素集合;其中,每个目标参考像素集合中包含至少一个目标参考像素;
基于至少两个目标参考像素集合,对每个像素进行帧内预测平滑滤波处理,得到第一预测值。
在本申请的一些实施例中,解码器从所述至少两个相邻参考像素集合中,对应确定出属于所述至少两个相邻参考块范围内的至少两个目标参考像素集合包括以下方式:
方式一:从所述至少两个相邻参考像素集合中,确定每个相邻参考块范围的两个边界像素位置的像素为一个目标参考像素集合,从而确定出所述至少两个目标参考像素集合。
方式二:从所述至少两个相邻参考像素集合中,确定每个相邻参考块范围内的任意像素位置的M个像素为一个目标参考像素集合,从而确定出所述至少两个目标参考像素集合,其中,M为大于0,且不超过对应的相邻参考像素集合的最大像素数量。
在本申请的一些实施例中,至少两个相邻参考像素集合包括:左侧相邻参考像素集合和上侧相邻参考像素集合;
至少两个相邻参考块范围包括:左侧相邻参考像素范围和上侧相邻参考像素范围;
至少两个目标参考像素集合包括:左侧目标相邻参考像素集合和上侧目标相邻参考像素集合。
在本申请的一些实施例中,预设水平距离小于等于初始预测块的宽度;预设垂直距离小于等于初始预测块的高度;
初始预测块的n行m列位置的第一类像素对应的预设水平距离和预设垂直距离,与初始预测块的除n行m列之外的其他类像素对应的预设水平距离和预设垂直距离不同;n和m为自然数;
第一类像素中的每个像素对应的预设水平距离和预设垂直距离至少部分相同,或者均不相同;
其他类像素中的每个像素对应的预设水平距离和预设垂直距离至少部分相同,或者均不相同。
在本申请的一些实施例中,基于至少两个目标参考像素集合,对每个像素进行帧内预测平滑滤波处理,得到第二类预测值,包括:解码器确定滤波系数;以及基于至少两个目标参考像素集合和滤波系数,对每个像素进行帧内预测平滑滤波处理,得到第二类预测值。
在本申请的一些实施例中,初始预测块的n行m列位置的第一类像素对应的滤波系数,与初始预测块的除n行m列之外的其他类像素对应的滤波系数不同;n和m为自然数;
第一类像素中的每个像素对应的滤波系数至少部分相同,或者均不相同;
其他类像素中的每个像素对应的滤波系数至少部分相同,或者均不相同。
在本申请的一些实施例中,当预设水平距离大于初始预测块的宽度时,采用上侧相邻参考像素集合中的最左侧的参考像素向左填充,直至确定出上侧相邻参考块范围的第一边界限时为止,和/或,采用上侧相邻参考像素集合中的最右侧的参考像素向右填充,直至确定出上侧相邻参考块范围的第二边界限时为止;
预设垂直距离小于等于初始预测块的高度时,采用左侧相邻参考像素集合中的最下侧的参考像素向下填充,直至确定出左侧相邻参考块范围的第三边界限时为止,和/或,采用左侧相邻参考像素集合中的最上侧的参考像素向上填充,直至确定出左侧相邻参考块范围的第四边界限时为止。
需要说明的是,本申请实施例中,解码器实现滤波处理的原理与编码器一致,此处不再赘述。
示例性的,解码器获取码码流,解析码流得到当前视频序列的IPF允许标识位和IPS允许标识位。
在帧内预测解码过程中,若IPF的允许标识位和IPS的允许标识位都为‘1’,则执行如下所有步骤;若IPF的允许标识位为‘1’且IPS的允许标识位为‘0’,则仅执行a)、b)、c)、d)和g)步骤;若IPF的允许标识位为‘0’且IPS的允许标识位为‘1’,则仅执行a)、b)、e)、f)和g)步骤;若IPF的允许标识位和IPS的允许标识位都为‘0’,则仅执行a)、b)和g)步骤。上述若IPF或IPS允许标识位为‘0’,则解码端默认所有解码块的对应技术的使用标识位为‘0’:
a)、获取码流并解码得到残差信息,经过反变换与反量化等过程得到时域残差信息;
b)、解析码流得到当前解码单元的预测模式,根据当前解码单元的预测模式和相邻重建块计算得到预测块;
c)、解析并获取IPF的使用标识位,若IPF的使用标识位为‘0’,则不对当前预测块做额外操作,跳过步骤d);若IPF的使用标识位为‘1’,则执行d);
d)、根据当前解码单元的预测模式归类信息选择相对应的滤波器,根据当前解码单元的尺寸大小选择相对应的滤波器系数组,之后对预测块内各个像素进行滤波得到预测块;
e)、获取IPF的使用标识位,若IPF的使用标识位为‘1’,则跳过本步骤剩余过程并跳过f)步骤;若IPF的使用标识位为‘0’,则解析并获取IPS的使用标识位。若IPS的使用标识位为‘0’,则不对当前预测块做额外操作,跳过步骤f);若IPS的使用标识位为‘1’,则执行f);
f)、对当前编码单元的预测块进行预测像素精确修正,该精确修正过程可以是使用当前预测像素所在的位置为基准,以水平距离HD和垂直距离VD为偏移,获取上侧相邻UPNum个重建参考像素和左侧LFNum个重建参考像素,将获取到的参考像素与当前预测像素进行滤波,或可以是加权求和,得到精确后的预测像素作为预测块中当前位置的最终预测像素。上述HD与VD可以取值为0,1,2,3,…,N等,N不超过当前块的宽或高。上述UPNum与LFNum可以取值为0,1,2,3,…,M等,M不超过当前块上侧相邻重建参考像素个数和左侧相邻重建参考像素个数;
g)、将预测块叠加步骤a)还原后的残差信息得到当前解码单元的重建块,经后处理输出。
示例性的,解码器侧的实现还可以采用以下实现方式,本申请实施例不作限制。如下所示:
解码器获取码码流,解析码流得到当前视频序列的IPF允许标识位和IPS允许标识位。
在帧内预测解码过程中,若IPF的允许标识位和IPS的允许标识位都为‘1’,则执行如下所有步骤;若IPF的允许标识位为‘1’且IPS的允许标识位为‘0’,则仅执行a)、b)、和d)步骤;若IPF的允许标识位为‘0’且IPS的允许标识位为‘1’,则仅执行a)、c)和d)步骤;若IPF的允许标识位和IPS的允许标识位都为‘0’,则仅执行a)和d)步骤。上述若IPF或IPS允许标识位为‘0’,则解码端默认所有解码块的对应技术的使用标识位为‘0’:
a)、获取码流并解码得到当前解码单元的预测模式信息,残差信息,经过反变换与反量化等过程得到时域残差信息;
b)、解析码流得到当前解码单元的IPF的使用标识位;
c)、若当前解码单元的IPF使用标识位为‘0’,则解析码流得到IPS的使用标识位;若当前解码单元的IPF使用标识位为‘1’,则不解析IPS的使用标识位;
d)、若IPF的使用标识位为‘0’且IPS的使用标识位为‘0’,则根据当前预测模式计算得到预测块,跳过剩余所有步骤;若IPF的使用标识位为‘1’,则执行e);若IPS的使用标识位为‘1’,则执行f);
e)、根据当前解码单元的预测模式归类信息选择相对应的滤波器,根据当前解码单元的尺寸大小选择相对应的滤波器系数组,之后对预测块内各个像素进行滤波得到预测块,跳过剩余所有步骤;
f)、根据当前解码单元解析得到的预测模式,该过程可以使用区别于步骤d)和e)中生成预测像素的插值滤波器,可以使用8个抽头的插值滤波器加上使用各预测像素所在的位置为基准得到的若干个重建参考像素作为生成预测像素的插值滤波器,具体获取上述若干个重建参考像素过程为:以水平距离HD和垂直距离VD为偏移,获取上侧相邻UPNum个重建参考像素和左侧LFNum个重建参考像素。上述HD与VD可以取值为0,1,2,3,…,N等,N不超过当前块的宽或高。上述UPNum与LFNum可以取值为0,1,2,3,…,M等,M不超过当前块上侧相邻重建参考像素个数和左侧相邻重建参考像素个数;
g)、将预测块叠加步骤a)还原后的残差信息得到当前解码单元的重建块,经后处理输出。
可以理解的是,解码器采用帧内预测滤波实现了采用至少两个相邻参考像素集合中每个相邻参考像素集合中的一个相邻参考像素,对当前块进行滤波的过程。采用帧内预测平滑滤波由于可以参 考一个相邻参考像素集合中的多个相邻参考像素,因此,这样的预测会更平滑一些,针对模糊图像的预测也会更精确一些,从而可以提高解码效率。
如图12所示,本申请实施例提供一种编码器1,包括:
第一确定部分10,被配置为遍历帧内预测模式,确定出当前块对应的初始预测块的初始预测值;
第一滤波部分11,被配置为对所述初始预测块分别进行帧内预测滤波和帧内预测平滑滤波处理,得到第一类预测值和第二类预测值;其中,所述帧内预测平滑滤波为采用至少两个相邻参考像素集合中每个相邻参考像素集合中的多个相邻参考像素,对所述当前块进行滤波的过程;
所述第一确定部分10,还被配置为采用初始预测值、第一类预测值和第二类预测值,分别与当前块的原始像素值进行率失真代价计算,确定出最优率失真代价对应的当前预测模式;
第一预测部分12,被配置为采用所述当前预测模式,对所述当前块进行帧内预测;
写入部分13,被配置为将所述当前预测模式的索引信息,以及滤波标识写入码流,其中,滤波标识表征帧内预测滤波和/或帧内预测平滑滤波对应的标识。
在本申请的一些实施例中,所述第一滤波部分11,还被配置为基于所述初始预测块中的每个像素的左侧相邻参考像素点和上侧相邻参考像素点,对所述初始预测块的每个像素进行帧内预测滤波,得到所述第一类预测值;以及基于所述初始预测块中的每个像素对应的预设水平距离和预设垂直距离,对所述初始预测块进行帧内预测平滑滤波处理,得到所述第二类预测值。
在本申请的一些实施例中,所述第一滤波部分11,还被配置为基于所述初始预测块中的每个像素对应的所述预设水平距离和所述预设垂直距离,确定与所述每个像素对应的至少两个相邻参考像素集合的至少两个相邻参考块范围;从所述至少两个相邻参考像素集合中,对应确定出属于所述至少两个相邻参考块范围内的至少两个目标参考像素集合;其中,每个目标参考像素集合中包含至少一个目标参考像素;基于所述至少两个目标参考像素集合,对所述每个像素进行帧内预测平滑滤波处理,得到所述第二类预测值。
在本申请的一些实施例中,所述第一滤波部分11,还被配置为从所述至少两个相邻参考像素集合中,确定每个相邻参考块范围的两个边界像素位置的像素为一个目标参考像素集合,从而确定出所述至少两个目标参考像素集合。
在本申请的一些实施例中,所述第一滤波部分11,还被配置为从所述至少两个相邻参考像素集合中,确定每个相邻参考块范围内的任意像素位置的M个像素为一个目标参考像素集合,从而确定出所述至少两个目标参考像素集合,其中,M为大于0,且不超过对应的相邻参考像素集合的最大像素数量。
在本申请的一些实施例中,所述至少两个相邻参考像素集合包括:左侧相邻参考像素集合和上侧相邻参考像素集合;
所述至少两个相邻参考块范围包括:左侧相邻参考像素范围和上侧相邻参考像素范围;
所述至少两个目标参考像素集合包括:左侧目标相邻参考像素集合和上侧目标相邻参考像素集合。
在本申请的一些实施例中,所述预设水平距离小于等于所述初始预测块的宽度;所述预设垂直距离小于等于所述初始预测块的高度;
所述初始预测块的n行m列位置的第一类像素对应的预设水平距离和所述预设垂直距离,与所述初始预测块的除n行m列之外的其他类像素对应的预设水平距离和所述预设垂直距离不同;n和m为自然数;
所述第一类像素中的每个像素对应的预设水平距离和所述预设垂直距离至少部分相同,或者均不相同;
所述其他类像素中的每个像素对应的预设水平距离和所述预设垂直距离至少部分相同,或者均不相同。
在本申请的一些实施例中,所述第一滤波部分11,还被配置为确定滤波系数;基于所述至少两个目标参考像素集合和所述滤波系数,对所述每个像素进行帧内预测平滑滤波处理,得到所述第二类预测值。
在本申请的一些实施例中,所述初始预测块的n行m列位置的第一类像素对应的滤波系数,与所述初始预测块的除n行m列之外的其他类像素对应的滤波系数不同;n和m为自然数;
所述第一类像素中的每个像素对应的滤波系数至少部分相同,或者均不相同;
所述其他类像素中的每个像素对应的滤波系数至少部分相同,或者均不相同。
在本申请的一些实施例中,所述第一确定部分10,还被配置为采用初始预测值、第一类预测值 和第二类预测值,分别与当前块的原始像素值进行率失真代价计算,确定出与所述初始预测值对应的第一最小率失真代价、与所述第一类预测值对应的第二最小率失真代价以及与所述第二类预测值对应的第三最小率失真代价;从所述第一最小率失真代价、所述第二最小率失真代价以及所述第三最小率失真代价中,确定出最小的最优率失真代价;将得到所述最优率失真代价对应预测模式作为所述当前预测模式。
在本申请的一些实施例中,所述滤波标识包括:帧内预测滤波允许标识、帧内预测滤波使用标识、帧内预测平滑滤波允许标识和帧内预测平滑滤波使用标识;
所述写入部分13,还被配置为将所述当前预测模式的索引信息写入码流;确定所述帧内预测滤波允许标识为有效,以及所述帧内预测平滑滤波允许标识为有效,并将所述帧内预测滤波允许标识和所述帧内预测平滑滤波允许标识写入码流;
当所述最优率失真代价为所述第二最小率失真代价时,确定所述帧内预测滤波使用标识为有效,并将所述帧内预测滤波使用标识写入码流;
当所述最优率失真代价为所述第三最小率失真代价时,确定所述帧内预测滤波使用标识为无效,且所述帧内预测平滑滤波使用标识为有效,并将所述帧内预测滤波使用标识和所述帧内预测平滑滤波使用标识写入码流;
当所述最优率失真代价为所述第一最小率失真代价时,确定所述帧内预测滤波使用标识为无效,且所述帧内预测平滑滤波使用标识为无效,并将所述帧内预测滤波使用标识和所述帧内预测平滑滤波使用标识写入码流。
在本申请的一些实施例中,所述第一滤波部分11,还被配置为所述遍历帧内预测模式,确定出当前块对应的初始预测块的初始预测值之后,所述采用所述当前预测模式,对所述当前块进行帧内预测之前,对所述初始预测块分别进行帧内预测平滑滤波处理,得到第二类预测值;其中,所述帧内预测平滑滤波为采用至少两个相邻参考像素集合中每个相邻参考像素集合中的多个相邻参考像素,对所述当前块进行滤波的过程;
所述第一确定部分10,还被配置为采用所述初始预测值和所述第二类预测值,分别与当前块的原始像素值进行率失真代价计算,确定出最优率失真代价对应的所述当前预测模式。
在本申请的一些实施例中,所述第一滤波部分11,还被配置为所述遍历帧内预测模式,确定出当前块对应的初始预测块的初始预测值之后,所述采用所述当前预测模式,对所述当前块进行帧内预测之前,根据帧内预测模式的类型,确定出预测模式集合,所述预测模式集合为启用帧内预测平滑滤波技术的预测模式;针对所述初始预测值中,采用所述预测模式集合预测出的初始子预测值,进行帧内预测平滑滤波处理,得到第二类预测值;
所述第一确定部分10,还被配置为采用所述初始预测值和所述第二类预测值,分别与当前块的原始像素值进行率失真代价计算,确定出最优率失真代价对应的所述当前预测模式。
在本申请的一些实施例中,所述滤波标识包括:帧内预测平滑滤波允许标识和帧内预测平滑滤波使用标识;
所述写入部分13,还被配置为将所述当前预测模式的索引信息写入码流;确定所述帧内预测平滑滤波允许标识为有效,并将所述帧内预测平滑滤波允许标识写入码流;
当所述最优率失真代价为所述第三最小率失真代价时,确定所述帧内预测平滑滤波使用标识为有效,并将所述帧内预测平滑滤波使用标识写入码流。
当所述最优率失真代价为所述第一最小率失真代价时,确定所述帧内预测平滑滤波使用标识为无效,并将所述帧内预测平滑滤波使用标识写入码流。
在本申请的一些实施例中,所述初始预测值的编码类型对应多个编码通道;
每个编码通道对应的滤波标识采用同一个标识,或者采用一一对应的标识。
在本申请的一些实施例中,所述第一滤波部分11,还被配置为当初始预测块的尺寸满足预测面积阈值范围时,允许使用帧内预测平滑滤波进行滤波处理;当初始预测块的尺寸大于预测面积阈值范围的上限时,将所述初始预测块进行划分,得到满足所述预测面积阈值范围的预测子块;针对所述预测子块实现所述帧内预测处理流程。
在本申请的一些实施例中,所述第一滤波部分11,还被配置为所述遍历帧内预测模式,确定出当前块对应的初始预测块的初始预测值之后,所述采用初始预测值、第一类预测值和第二类预测值,分别与当前块的原始像素值进行率失真代价计算,确定出最优率失真代价对应的当前预测模式之前,对所述初始预测块分别进行帧内预测滤波,得到第一类预测值;遍历帧内预测模式,采用帧内预测平滑滤波处理对当前块进行预测估计,得到第二类预测值。
在本申请的一些实施例中,所述第一滤波部分11,还被配置为遍历帧内预测模式,基于所述当前块中的每个像素对应的预设水平距离和预设垂直距离,对所述当前块进行帧内预测平滑滤波处理,得到所述第二类预测值。
在本申请的一些实施例中,所述第一确定部分10,还被配置为当预设水平距离大于所述初始预测块的宽度时,采用所述上侧相邻参考像素集合中的最左侧的参考像素向左填充,直至确定出上侧相邻参考块范围的第一边界限时为止,和/或,采用所述上侧相邻参考像素集合中的最右侧的参考像素向右填充,直至确定出上侧相邻参考块范围的第二边界限时为止;
所述预设垂直距离小于等于所述初始预测块的高度时,采用所述左侧相邻参考像素集合中的最下侧的参考像素向下填充,直至确定出左侧相邻参考块范围的第三边界限时为止,和/或,采用所述左侧相邻参考像素集合中的最上侧的参考像素向上填充,直至确定出左侧相邻参考块范围的第四边界限时为止。
可以理解的是,编码器采用帧内预测滤波实现了采用至少两个相邻参考像素集合中每个相邻参考像素集合中的一个相邻参考像素,对当前块进行滤波的过程。采用帧内预测平滑滤波由于可以参考一个相邻参考像素集合中的多个相邻参考像素,因此,这样的预测会更平滑一些,针对模糊图像的预测也会更精确一些,从而可以提高编码效率。
在实际应用中,如图13所示,本申请实施例还提供了一种编码器,包括:
第一存储器15和第一处理器14;
所述第一存储器15存储有可在第一处理器14上运行的计算机程序,所述第一处理器14执行所述程序时编码器侧的帧内预测方法。
如图14所示,本申请实施例提供一种解码器2,包括:
解析部分20,被配置为获取码流,解析码流的头信息,得到所述滤波标识;以及当所述滤波标识为表征帧内预测滤波允许标识有效、且帧内预测平滑滤波允许标识有效时,至少从码流中获取当前预测模式和帧内预测滤波使用标识;
第二预测部分21,被配置为当所述帧内预测滤波使用标识为无效、且从码流中获取到有效的帧内预测平滑滤波使用标识时,基于所述当前预测模式,对当前块进行帧内预测平滑滤波处理,得到第一预测值。
在本申请的一些实施例中,所述解析部分20,还被配置为所述至少从码流中获取当前预测模式和帧内预测滤波使用标识之后,当所述帧内预测滤波使用标识为有效时,从码流中获取当前预测模式;
所述第二预测部分21,还被配置为基于所述当前预测模式,对当前块进行帧内预测滤波处理,得到第二预测值。
在本申请的一些实施例中,所述第二预测部分21,还被配置为基于所述当前块中的每个像素对应的预设水平距离和预设垂直距离,对所述当前块进行帧内预测平滑滤波处理,得到所述第一预测值。
在本申请的一些实施例中,所述第二预测部分21,还被配置为基于所述当前块中的每个像素对应的所述预设水平距离和所述预设垂直距离,确定与所述每个像素对应的至少两个相邻参考像素集合的至少两个相邻参考块范围;
从所述至少两个相邻参考像素集合中,对应确定出属于所述至少两个相邻参考块范围内的至少两个目标参考像素集合;其中,每个目标参考像素集合中包含至少一个目标参考像素;
基于所述至少两个目标参考像素集合,对所述每个像素进行帧内预测平滑滤波处理,得到所述第一预测值。
在本申请的一些实施例中,所述第二预测部分21,还被配置为从所述至少两个相邻参考像素集合中,确定每个相邻参考块范围的两个边界像素位置的像素为一个目标参考像素集合,从而确定出所述至少两个目标参考像素集合。
在本申请的一些实施例中,所述第二预测部分21,还被配置为从所述至少两个相邻参考像素集合中,确定每个相邻参考块范围内的任意像素位置的M个像素为一个目标参考像素集合,从而确定出所述至少两个目标参考像素集合,其中,M为大于0,且不超过对应的相邻参考像素集合的最大像素数量。
在本申请的一些实施例中,所述至少两个相邻参考像素集合包括:左侧相邻参考像素集合和上侧相邻参考像素集合;
所述至少两个相邻参考块范围包括:左侧相邻参考像素范围和上侧相邻参考像素范围;
所述至少两个目标参考像素集合包括:左侧目标相邻参考像素集合和上侧目标相邻参考像素集合。
在本申请的一些实施例中,所述预设水平距离小于等于所述初始预测块的宽度;所述预设垂直距离小于等于所述初始预测块的高度;
所述初始预测块的n行m列位置的第一类像素对应的预设水平距离和所述预设垂直距离,与所述初始预测块的除n行m列之外的其他类像素对应的预设水平距离和所述预设垂直距离不同;n和m为自然数;
所述第一类像素中的每个像素对应的预设水平距离和所述预设垂直距离至少部分相同,或者均不相同;
所述其他类像素中的每个像素对应的预设水平距离和所述预设垂直距离至少部分相同,或者均不相同。
在本申请的一些实施例中,所述第二预测部分21,还被配置为确定滤波系数;基于所述至少两个目标参考像素集合和所述滤波系数,对所述每个像素进行帧内预测平滑滤波处理,得到所述第二类预测值。
在本申请的一些实施例中,所述初始预测块的n行m列位置的第一类像素对应的滤波系数,与所述初始预测块的除n行m列之外的其他类像素对应的滤波系数不同;n和m为自然数;
所述第一类像素中的每个像素对应的滤波系数至少部分相同,或者均不相同;
所述其他类像素中的每个像素对应的滤波系数至少部分相同,或者均不相同。
在本申请的一些实施例中,当预设水平距离大于所述初始预测块的宽度时,采用所述上侧相邻参考像素集合中的最左侧的参考像素向左填充,直至确定出上侧相邻参考块范围的第一边界限时为止,和/或,采用所述上侧相邻参考像素集合中的最右侧的参考像素向右填充,直至确定出上侧相邻参考块范围的第二边界限时为止;
所述预设垂直距离小于等于所述初始预测块的高度时,采用所述左侧相邻参考像素集合中的最下侧的参考像素向下填充,直至确定出左侧相邻参考块范围的第三边界限时为止,和/或,采用所述左侧相邻参考像素集合中的最上侧的参考像素向上填充,直至确定出左侧相邻参考块范围的第四边界限时为止。
可以理解的是,解码器采用帧内预测滤波实现了采用至少两个相邻参考像素集合中每个相邻参考像素集合中的一个相邻参考像素,对当前块进行滤波的过程。采用帧内预测平滑滤波由于可以参考一个相邻参考像素集合中的多个相邻参考像素,因此,这样的预测会更平滑一些,针对模糊图像的预测也会更精确一些,从而可以提高解码效率。
在实际应用中,如图15所示,本申请实施例还提供了一种解码器,包括:
第二存储器22和第二处理器23;
所述第二存储器22存储有可在第二处理器23上运行的计算机程序,所述第二处理器23执行所述程序时实现解码器侧的帧内预测方法。
相应的,本申请实施例提供了一种存储介质,其上存储有计算机程序,该计算机程序被第一处理器执行时,实现编码器的帧内预测方法;或者,该计算机程序被第二处理器执行时,实现解码器的帧内预测方法。
以上所述,仅为本申请的实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
本申请实施例中,通过采用帧内预测滤波实现了采用至少两个相邻参考像素集合中每个相邻参考像素集合中的一个相邻参考像素,对当前块进行滤波的过程。采用帧内预测平滑滤波由于可以参考一个相邻参考像素集合中的多个相邻参考像素,因此,这样的预测会更平滑一些,针对模糊图像的预测也会更精确一些,从而可以提高编码效率。
Claims (35)
- 一种帧内预测方法,应用于编码器,包括:遍历帧内预测模式,确定出当前块对应的初始预测块的初始预测值;对所述初始预测块分别进行帧内预测滤波和帧内预测平滑滤波处理,得到第一类预测值和第二类预测值;其中,所述帧内预测平滑滤波为采用至少两个相邻参考像素集合中每个相邻参考像素集合中的多个相邻参考像素,对所述当前块进行滤波的过程;采用初始预测值、第一类预测值和第二类预测值,分别与当前块的原始像素值进行率失真代价计算,确定出最优率失真代价对应的当前预测模式;采用所述当前预测模式,对所述当前块进行帧内预测;将所述当前预测模式的索引信息,以及滤波标识写入码流,其中,滤波标识表征帧内预测滤波和/或帧内预测平滑滤波对应的标识。
- 根据权利要求1所述的方法,其中,所述对所述初始预测块分别进行帧内预测滤波和帧内预测平滑滤波处理,得到第一类预测值和第二类预测值,包括:基于所述初始预测块中的每个像素的左侧相邻参考像素点和上侧相邻参考像素点,对所述初始预测块的每个像素进行帧内预测滤波,得到所述第一类预测值;基于所述初始预测块中的每个像素对应的预设水平距离和预设垂直距离,对所述初始预测块进行帧内预测平滑滤波处理,得到所述第二类预测值。
- 根据权利要求2所述的方法,其中,所述基于所述初始预测块中的每个像素对应的预设水平距离和预设垂直距离,对所述初始预测块进行帧内预测平滑滤波处理,得到所述第二类预测值,包括:基于所述初始预测块中的每个像素对应的所述预设水平距离和所述预设垂直距离,确定与所述每个像素对应的至少两个相邻参考像素集合的至少两个相邻参考块范围;从所述至少两个相邻参考像素集合中,对应确定出属于所述至少两个相邻参考块范围内的至少两个目标参考像素集合;其中,每个目标参考像素集合中包含至少一个目标参考像素;基于所述至少两个目标参考像素集合,对所述每个像素进行帧内预测平滑滤波处理,得到所述第二类预测值。
- 根据权利要求3所述的方法,其中,所述从所述至少两个相邻参考像素集合中,对应确定出属于所述至少两个相邻参考块范围内的至少两个目标参考像素集合,包括:从所述至少两个相邻参考像素集合中,确定每个相邻参考块范围的两个边界像素位置的像素为一个目标参考像素集合,从而确定出所述至少两个目标参考像素集合。
- 根据权利要求3所述的方法,其中,所述从所述至少两个相邻参考像素集合中,对应确定出属于所述至少两个相邻参考块范围内的至少两个目标参考像素集合,包括:从所述至少两个相邻参考像素集合中,确定每个相邻参考块范围内的任意像素位置的M个像素为一个目标参考像素集合,从而确定出所述至少两个目标参考像素集合,其中,M为大于0,且不超过对应的相邻参考像素集合的最大像素数量。
- 根据权利要求3至5任一项所述的方法,其中,所述至少两个相邻参考像素集合包括:左侧相邻参考像素集合和上侧相邻参考像素集合;所述至少两个相邻参考块范围包括:左侧相邻参考像素范围和上侧相邻参考像素范围;所述至少两个目标参考像素集合包括:左侧目标相邻参考像素集合和上侧目标相邻参考像素集合。
- 根据权利要求3至6任一项所述的方法,其中,所述预设水平距离小于等于所述初始预测块的宽度;所述预设垂直距离小于等于所述初始预测块的高度;所述初始预测块的n行m列位置的第一类像素对应的预设水平距离和所述预设垂直距离,与所述初始预测块的除n行m列之外的其他类像素对应的预设水平距离和所述预设垂直距离不同;n和m为自然数;所述第一类像素中的每个像素对应的预设水平距离和所述预设垂直距离至少部分相同,或者均不相同;所述其他类像素中的每个像素对应的预设水平距离和所述预设垂直距离至少部分相同,或者 均不相同。
- 根据权利要求3至7任一项所述的方法,其中,所述基于所述至少两个目标参考像素集合,对所述每个像素进行帧内预测平滑滤波处理,得到所述第二类预测值,包括:确定滤波系数;基于所述至少两个目标参考像素集合和所述滤波系数,对所述每个像素进行帧内预测平滑滤波处理,得到所述第二类预测值。
- 根据权利要求8所述的方法,其中,所述初始预测块的n行m列位置的第一类像素对应的滤波系数,与所述初始预测块的除n行m列之外的其他类像素对应的滤波系数不同;n和m为自然数;所述第一类像素中的每个像素对应的滤波系数至少部分相同,或者均不相同;所述其他类像素中的每个像素对应的滤波系数至少部分相同,或者均不相同。
- 根据权利要求2至9任一项所述的方法,其中,所述采用初始预测值、第一类预测值和第二类预测值,分别与当前块的原始像素值进行率失真代价计算,确定出最优率失真代价对应的当前预测模式,包括:采用初始预测值、第一类预测值和第二类预测值,分别与当前块的原始像素值进行率失真代价计算,确定出与所述初始预测值对应的第一最小率失真代价、与所述第一类预测值对应的第二最小率失真代价以及与所述第二类预测值对应的第三最小率失真代价;从所述第一最小率失真代价、所述第二最小率失真代价以及所述第三最小率失真代价中,确定出最小的最优率失真代价;将得到所述最优率失真代价对应预测模式作为所述当前预测模式。
- 根据权利要求10所述的方法,其中,所述滤波标识包括:帧内预测滤波允许标识、帧内预测滤波使用标识、帧内预测平滑滤波允许标识和帧内预测平滑滤波使用标识;所述将所述当前预测模式的索引信息,以及滤波标识写入码流,包括:将所述当前预测模式的索引信息写入码流;确定所述帧内预测滤波允许标识为有效,以及所述帧内预测平滑滤波允许标识为有效,并将所述帧内预测滤波允许标识和所述帧内预测平滑滤波允许标识写入码流;当所述最优率失真代价为所述第二最小率失真代价时,确定所述帧内预测滤波使用标识为有效,并将所述帧内预测滤波使用标识写入码流;当所述最优率失真代价为所述第三最小率失真代价时,确定所述帧内预测滤波使用标识为无效,且所述帧内预测平滑滤波使用标识为有效,并将所述帧内预测滤波使用标识和所述帧内预测平滑滤波使用标识写入码流;当所述最优率失真代价为所述第一最小率失真代价时,确定所述帧内预测滤波使用标识为无效,且所述帧内预测平滑滤波使用标识为无效,并将所述帧内预测滤波使用标识和所述帧内预测平滑滤波使用标识写入码流。
- 根据权利要求10所述的方法,其中,所述遍历帧内预测模式,确定出当前块对应的初始预测块的初始预测值之后,所述采用所述当前预测模式,对所述当前块进行帧内预测之前,所述方法还包括:对所述初始预测块分别进行帧内预测平滑滤波处理,得到第二类预测值;其中,所述帧内预测平滑滤波为采用至少两个相邻参考像素集合中每个相邻参考像素集合中的多个相邻参考像素,对所述当前块进行滤波的过程;采用所述初始预测值和所述第二类预测值,分别与当前块的原始像素值进行率失真代价计算,确定出最优率失真代价对应的所述当前预测模式。
- 根据权利要求1所述的方法,其中,所述遍历帧内预测模式,确定出当前块对应的初始预测块的初始预测值之后,所述采用所述当前预测模式,对所述当前块进行帧内预测之前,所述方法还包括:根据帧内预测模式的类型,确定出预测模式集合,所述预测模式集合为启用帧内预测平滑滤波技术的预测模式;针对所述初始预测值中,采用所述预测模式集合预测出的初始子预测值,进行帧内预测平滑滤波处理,得到第二类预测值;采用所述初始预测值和所述第二类预测值,分别与当前块的原始像素值进行率失真代价计算,确定出最优率失真代价对应的所述当前预测模式。
- 根据权利要求12或13所述的方法,其中,所述滤波标识包括:帧内预测平滑滤波允许标识和帧内预测平滑滤波使用标识;所述将所述当前预测模式的索引信息,以及滤波标识写入码流,包括:将所述当前预测模式的索引信息写入码流;确定所述帧内预测平滑滤波允许标识为有效,并将所述帧内预测平滑滤波允许标识写入码流;当所述最优率失真代价为所述第三最小率失真代价时,确定所述帧内预测平滑滤波使用标识为有效,并将所述帧内预测平滑滤波使用标识写入码流;当所述最优率失真代价为所述第一最小率失真代价时,确定所述帧内预测平滑滤波使用标识为无效,并将所述帧内预测平滑滤波使用标识写入码流。
- 根据权利要求11所述的方法,其中,所述初始预测值的编码类型对应多个编码通道;每个编码通道对应的滤波标识采用同一个标识,或者采用一一对应的标识。
- 根据权利要求1或12所述的方法,其中,所述方法还包括:当初始预测块的尺寸满足预测面积阈值范围时,允许使用帧内预测平滑滤波进行滤波处理;当初始预测块的尺寸大于预测面积阈值范围的上限时,将所述初始预测块进行划分,得到满足所述预测面积阈值范围的预测子块;针对所述预测子块实现所述帧内预测处理流程。
- 根据权利要求1所述的方法,其中,所述遍历帧内预测模式,确定出当前块对应的初始预测块的初始预测值之后,所述采用初始预测值、第一类预测值和第二类预测值,分别与当前块的原始像素值进行率失真代价计算,确定出最优率失真代价对应的当前预测模式之前,所述方法还包括:对所述初始预测块分别进行帧内预测滤波,得到第一类预测值;遍历帧内预测模式,采用帧内预测平滑滤波处理对当前块进行预测估计,得到第二类预测值。
- 根据权利要求17所述的方法,其中,所述遍历帧内预测模式,采用帧内预测平滑滤波处理对当前块进行预测估计,得到第二类预测值,包括:遍历帧内预测模式,基于所述当前块中的每个像素对应的预设水平距离和预设垂直距离,对所述当前块进行帧内预测平滑滤波处理,得到所述第二类预测值。
- 根据权利要求6所述的方法,其中,所述方法还包括:当预设水平距离大于所述初始预测块的宽度时,采用所述上侧相邻参考像素集合中的最左侧的参考像素向左填充,直至确定出上侧相邻参考块范围的第一边界限时为止,和/或,采用所述上侧相邻参考像素集合中的最右侧的参考像素向右填充,直至确定出上侧相邻参考块范围的第二边界限时为止;所述预设垂直距离小于等于所述初始预测块的高度时,采用所述左侧相邻参考像素集合中的最下侧的参考像素向下填充,直至确定出左侧相邻参考块范围的第三边界限时为止,和/或,采用所述左侧相邻参考像素集合中的最上侧的参考像素向上填充,直至确定出左侧相邻参考块范围的第四边界限时为止。
- 一种帧内预测方法,应用于解码器,包括:获取码流,解析码流的头信息,得到所述滤波标识;当所述滤波标识为表征帧内预测滤波允许标识有效、且帧内预测平滑滤波允许标识有效时,至少从码流中获取当前预测模式和帧内预测滤波使用标识;当所述帧内预测滤波使用标识为无效、且从码流中获取到有效的帧内预测平滑滤波使用标识时,基于所述当前预测模式,对当前块进行帧内预测平滑滤波处理,得到第一预测值。
- 根据权利要求20所述的方法,其中,所述至少从码流中获取当前预测模式和帧内预测滤波使用标识之后,所述方法还包括:当所述帧内预测滤波使用标识为有效时,从码流中获取当前预测模式;基于所述当前预测模式,对当前块进行帧内预测滤波处理,得到第二预测值。
- 根据权利要求20所述的方法,其中,所述基于所述当前预测模式,对当前块进行帧内预测平滑滤波处理,得到第一预测值,包括:基于所述当前块中的每个像素对应的预设水平距离和预设垂直距离,对所述当前块进行帧内预测平滑滤波处理,得到所述第一预测值。
- 根据权利要求22所述的方法,其中,所述基于所述当前块中的每个像素对应的预设水 平距离和预设垂直距离,对所述当前块进行帧内预测平滑滤波处理,得到所述第一预测值,包括:基于所述当前块中的每个像素对应的所述预设水平距离和所述预设垂直距离,确定与所述每个像素对应的至少两个相邻参考像素集合的至少两个相邻参考块范围;从所述至少两个相邻参考像素集合中,对应确定出属于所述至少两个相邻参考块范围内的至少两个目标参考像素集合;其中,每个目标参考像素集合中包含至少一个目标参考像素;基于所述至少两个目标参考像素集合,对所述每个像素进行帧内预测平滑滤波处理,得到所述第一预测值。
- 根据权利要求23所述的方法,其中,所述从所述至少两个相邻参考像素集合中,对应确定出属于所述至少两个相邻参考块范围内的至少两个目标参考像素集合,包括:从所述至少两个相邻参考像素集合中,确定每个相邻参考块范围的两个边界像素位置的像素为一个目标参考像素集合,从而确定出所述至少两个目标参考像素集合。
- 根据权利要求23所述的方法,其中,所述从所述至少两个相邻参考像素集合中,对应确定出属于所述至少两个相邻参考块范围内的至少两个目标参考像素集合,包括:从所述至少两个相邻参考像素集合中,确定每个相邻参考块范围内的任意像素位置的M个像素为一个目标参考像素集合,从而确定出所述至少两个目标参考像素集合,其中,M为大于0,且不超过对应的相邻参考像素集合的最大像素数量。
- 根据权利要求23至25任一项所述的方法,其中,所述至少两个相邻参考像素集合包括:左侧相邻参考像素集合和上侧相邻参考像素集合;所述至少两个相邻参考块范围包括:左侧相邻参考像素范围和上侧相邻参考像素范围;所述至少两个目标参考像素集合包括:左侧目标相邻参考像素集合和上侧目标相邻参考像素集合。
- 根据权利要求23至26任一项所述的方法,其中,所述预设水平距离小于等于所述初始预测块的宽度;所述预设垂直距离小于等于所述初始预测块的高度;所述初始预测块的n行m列位置的第一类像素对应的预设水平距离和所述预设垂直距离,与所述初始预测块的除n行m列之外的其他类像素对应的预设水平距离和所述预设垂直距离不同;n和m为自然数;所述第一类像素中的每个像素对应的预设水平距离和所述预设垂直距离至少部分相同,或者均不相同;所述其他类像素中的每个像素对应的预设水平距离和所述预设垂直距离至少部分相同,或者均不相同。
- 根据权利要求23至27任一项所述的方法,其中,所述基于所述至少两个目标参考像素集合,对所述每个像素进行帧内预测平滑滤波处理,得到所述第二类预测值,包括:确定滤波系数;基于所述至少两个目标参考像素集合和所述滤波系数,对所述每个像素进行帧内预测平滑滤波处理,得到所述第二类预测值。
- 根据权利要求22所述的方法,其中,所述初始预测块的n行m列位置的第一类像素对应的滤波系数,与所述初始预测块的除n行m列之外的其他类像素对应的滤波系数不同;n和m为自然数;所述第一类像素中的每个像素对应的滤波系数至少部分相同,或者均不相同;所述其他类像素中的每个像素对应的滤波系数至少部分相同,或者均不相同。
- 根据权利要求26所述的方法,其中,当预设水平距离大于所述初始预测块的宽度时,采用所述上侧相邻参考像素集合中的最左侧的参考像素向左填充,直至确定出上侧相邻参考块范围的第一边界限时为止,和/或,采用所述上侧相邻参考像素集合中的最右侧的参考像素向右填充,直至确定出上侧相邻参考块范围的第二边界限时为止;所述预设垂直距离小于等于所述初始预测块的高度时,采用所述左侧相邻参考像素集合中的最下侧的参考像素向下填充,直至确定出左侧相邻参考块范围的第三边界限时为止,和/或,采用所述左侧相邻参考像素集合中的最上侧的参考像素向上填充,直至确定出左侧相邻参考块范围的第四边界限时为止。
- 一种编码器,包括:第一确定部分,被配置为遍历帧内预测模式,确定出当前块对应的初始预测块的初始预测值;第一滤波部分,被配置为对所述初始预测块分别进行帧内预测滤波和帧内预测平滑滤波处理,得到第一类预测值和第二类预测值;其中,所述帧内预测平滑滤波为采用至少两个相邻参考像素集合中每个相邻参考像素集合中的多个相邻参考像素,对所述当前块进行滤波的过程;所述第一确定部分,还被配置为采用初始预测值、第一类预测值和第二类预测值,分别与当前块的原始像素值进行率失真代价计算,确定出最优率失真代价对应的当前预测模式;第一预测部分,被配置为采用所述当前预测模式,对所述当前块进行帧内预测;写入部分,被配置为将所述当前预测模式的索引信息,以及滤波标识写入码流,其中,滤波标识表征帧内预测滤波和/或帧内预测平滑滤波对应的标识。
- 一种解码器,包括:解析部分,被配置为获取码流,解析码流的头信息,得到所述滤波标识;以及当所述滤波标识为表征帧内预测滤波允许标识有效、且帧内预测平滑滤波允许标识有效时,至少从码流中获取当前预测模式和帧内预测滤波使用标识;第二预测部分,被配置为当所述帧内预测滤波使用标识为无效、且从码流中获取到有效的帧内预测平滑滤波使用标识时,基于所述当前预测模式,对当前块进行帧内预测平滑滤波处理,得到第一预测值。
- 一种编码器,包括:第一存储器和第一处理器;所述第一存储器存储有可在第一处理器上运行的计算机程序,所述第一处理器执行所述程序时实现权利要求1至19任一项所述帧内预测方法。
- 一种解码器,包括:第二存储器和第二处理器;所述第二存储器存储有可在第二处理器上运行的计算机程序,所述第二处理器执行所述程序时实现权利要求20至30任一项所述帧内预测方法。
- 一种存储介质,其上存储有计算机程序,该计算机程序被第一处理器执行时,实现权利要求1至19任一项所述帧内预测方法;或者,该计算机程序被第二处理器执行时,实现权利要求20至30任一项所述帧内预测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310996326.3A CN116980596A (zh) | 2020-10-16 | 2020-10-16 | 一种帧内预测方法、编码器、解码器及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2020/121668 WO2022077490A1 (zh) | 2020-10-16 | 2020-10-16 | 一种帧内预测方法、编码器、解码器及存储介质 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310996326.3A Division CN116980596A (zh) | 2020-10-16 | 2020-10-16 | 一种帧内预测方法、编码器、解码器及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116325727A true CN116325727A (zh) | 2023-06-23 |
Family
ID=81208894
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310996326.3A Pending CN116980596A (zh) | 2020-10-16 | 2020-10-16 | 一种帧内预测方法、编码器、解码器及存储介质 |
CN202080106028.7A Pending CN116325727A (zh) | 2020-10-16 | 2020-10-16 | 一种帧内预测方法、编码器、解码器及存储介质 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310996326.3A Pending CN116980596A (zh) | 2020-10-16 | 2020-10-16 | 一种帧内预测方法、编码器、解码器及存储介质 |
Country Status (3)
Country | Link |
---|---|
CN (2) | CN116980596A (zh) |
MX (1) | MX2023000279A (zh) |
WO (1) | WO2022077490A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114598880B (zh) * | 2022-05-07 | 2022-09-16 | 深圳传音控股股份有限公司 | 图像处理方法、智能终端及存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3198867A4 (en) * | 2014-10-31 | 2018-04-04 | MediaTek Inc. | Method of improved directional intra prediction for video coding |
US10412402B2 (en) * | 2014-12-11 | 2019-09-10 | Mediatek Inc. | Method and apparatus of intra prediction in video coding |
BR112018010207A2 (pt) * | 2015-11-18 | 2018-11-21 | Mediatek Inc | método e aparelho para o modo de predição intra usando filtro de predição intra em compressão de vídeo e imagem |
US11277644B2 (en) * | 2018-07-02 | 2022-03-15 | Qualcomm Incorporated | Combining mode dependent intra smoothing (MDIS) with intra interpolation filter switching |
CN110166773B (zh) * | 2019-06-25 | 2021-08-31 | 浙江大华技术股份有限公司 | 帧内预测方法、视频编码方法、视频处理装置、存储介质 |
-
2020
- 2020-10-16 WO PCT/CN2020/121668 patent/WO2022077490A1/zh active Application Filing
- 2020-10-16 CN CN202310996326.3A patent/CN116980596A/zh active Pending
- 2020-10-16 MX MX2023000279A patent/MX2023000279A/es unknown
- 2020-10-16 CN CN202080106028.7A patent/CN116325727A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2022077490A1 (zh) | 2022-04-21 |
CN116980596A (zh) | 2023-10-31 |
MX2023000279A (es) | 2023-02-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI617185B (zh) | 具有仿射運動補償的視訊編碼的方法以及裝置 | |
CN113612994B (zh) | 具有仿射运动补偿的视频编解码的方法 | |
JP5937212B2 (ja) | デプス符号化 | |
KR102140331B1 (ko) | 인트라 예측 방법 및 그 장치 | |
KR102495550B1 (ko) | 디블로킹 필터 방법 및 장치 | |
WO2020184348A1 (ja) | 画像復号装置、画像復号方法及びプログラム | |
CN115104301A (zh) | 用于视频编码或解码的基于神经网络的帧内预测 | |
CN114009044A (zh) | 用于基于矩阵的帧内预测的简化下采样 | |
CN114287133A (zh) | 帧内模式中的预测样点滤波的加权因子 | |
CN113068030B (zh) | 视频图像分量预测方法及装置、计算机存储介质 | |
CN113676732B (zh) | 图像分量预测方法、编码器、解码器以及存储介质 | |
CN116601957A (zh) | 一种帧内预测方法、装置及解码器和编码器 | |
CN116325727A (zh) | 一种帧内预测方法、编码器、解码器及存储介质 | |
WO2022022278A1 (zh) | 帧间预测方法、编码器、解码器以及计算机存储介质 | |
CN114071161B (zh) | 图像编码方法、图像解码方法及相关装置 | |
CN116250232A (zh) | 帧间预测方法、编码器、解码器以及计算机存储介质 | |
CN116250240A (zh) | 图像编码方法、图像解码方法及相关装置 | |
CN116472707A (zh) | 图像预测方法、编码器、解码器以及计算机存储介质 | |
CN117857810A (zh) | 一种光照补偿方法、编码器、解码器及存储介质 | |
CN116569549A (zh) | 一种帧间预测方法、编码器、解码器及存储介质 | |
CN113196762A (zh) | 图像分量预测方法、装置及计算机存储介质 | |
JP7083971B1 (ja) | 画像復号装置、画像復号方法及びプログラム | |
JP7061737B1 (ja) | 画像復号装置、画像復号方法及びプログラム | |
US10992942B2 (en) | Coding method, decoding method, and coding device | |
JP7034363B2 (ja) | 画像復号装置、画像復号方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |