用于LM帧内预测的参考像素缩减的制作方法

文档序号:16632752发布日期:2019-01-16 06:43阅读:258来源:国知局
用于LM帧内预测的参考像素缩减的制作方法
即使在影片相对较短的情况下也需要对大量的视频数据进行描述,当数据要在带宽容量受限的通信网络中流过或以其他方式传送时,这样可能会造成困难。因此,视频数据通常要先压缩,然后在现代电信网络中传送。在传输视频数据前,视频压缩设备通常在源处使用软件和/或硬件对视频数据进行编码,从而减少表示视频帧或图像所需的数据量。压缩数据随后由目的地处的视频解压设备接收,该视频解压设备用于解码视频帧。由于网络资源有限,需要开发在提高压缩率和/或降低实施复杂性的同时不会大幅降低图像质量的压缩和解压技术。技术实现要素:在一项实施例中,本发明公开一种视频编解码器,包括用于为色度块生成预测块的处理器,其中所述预测块包括预测色度样本,所述预测色度样本基于位于对应的重建亮度块中的过滤重建亮度样本、多个位于邻近所述对应的重建亮度块的位置内的下采样过滤重建亮度样本以及多个位于邻近所述色度块的位置内的下采样色度样本。在另一项实施例中,本发明公开了一种在视频编码中使用的方法,包括对位于邻近重建亮度块的位置内的过滤重建亮度样本进行下采样以生成多个下采样过滤重建亮度样本、对位于邻近色度块的位置内的重建色度样本进行下采样以生成多个下采样重建色度样本、以及为所述色度块生成预测块,其中所述预测块包括预测色度样本,所述预测色度样本基于位于所述重建亮度块内的过滤重建亮度样本、所述多个下采样过滤重建亮度样本以及所述多个下采样重建色度样本。在又一项实施例中,本发明公开了一种包括处理器的视频编解码器,所述处理器用于:接收色度块;生成对应于所述色度块的过滤重建亮度块;下采样多个过滤重建亮度样本和多个重建色度样本,以便当所述色度块尺寸超过块尺寸阈值时分别生成下采样过滤重建亮度样本和下采样重建色度样本,其中所述多个过滤重建亮度样本位于所述过滤重建亮度块的邻近块中,且所述多个重建色度样本位于所述色度块的邻近块中;为所述色度块生成预测块,其中所述预测块包括多个预测色度样本,每个所述多个预测色度样本均基于位于对应的重建亮度块中的对应的重建亮度样本、以及当所述色度块的尺寸大于所述块尺寸阈值时的所述下采样过滤重建亮度样本和所述下采样重建色度样本以及当所述色度块的尺寸等于所述块尺寸阈值时的所述多个过滤重建亮度样本和所述多个重建色度样本。结合附图和权利要求书,可从以下的详细描述中更清楚地理解这些和其他特征。附图说明为了更完整地理解本发明,现在参考以下结合附图和详细描述进行的简要描述,其中相同参考标号表示相同部分。图1示出了过滤亮度样本的下采样。图2为视频编码器的一项实施例的示意图。图3为视频解码器的一项实施例的示意图。图4示出了根据一项实施例的顶部和左侧邻近过滤亮度样本的下采样。图5为帧内预测方法的一项实施例的流程图。图6为通用计算机系统的示意图。具体实施方式首先应该了解的是,尽管下文提供了一种或多种实施例的示例性实现方式,本发明公开的系统和/或方法可通过多种其他已知的或存在的技术实现。本发明决不应限于下文所说明的所述说明性实施方案、图式和技术,包括本文所说明并描述的示范性设计和实施方案,而是可以在所附权利要求书的范围以及其均等物的完整范围内修改。通常,视频媒体涉及相对较快地连续显示一系列静态图像或帧,从而使观看者感知画面中的运动。每个帧可以包含多个图像元素或像素,每个图像元素或像素可以表示帧中的单个参考点。在数字处理过程中,每个像素可分配有一个整数值(例如,0、1、……或255),所述整数值表示对应参考点处的图像质量或颜色。颜色空间可由三个分量表示,包括一个亮度(luma或者y)分量和两个表示为cb和cr(或者有时为u和v)的色度(chroma)分量。亮度或者色度整数值通常通过比特以二进制形式存储和处理。用来表示亮度或者色度值的位数可称为位深或者色深。使用时,图像或视频帧可能包含大量的像素(例如,在一个1920x1080的帧中包含2073600个像素),因此对每个像素进行独立的编码和解码(下文中简称为编码)可能是非常繁琐且低效的。为了提高编码效率,通常将视频帧分成多个矩形块或宏块,每个矩形块或宏块均可作为编码、预测、变换以及量化等处理的基本单元。例如,典型的mxm的块可以包括m2个像素,其中m是大于1且通常是4的倍数的整数。在yuv或者ycbcr色彩空间中,每个亮度(y)块对应于两个色度块:cb块和cr块。cb块和cr块同样互相对应。色度块及其对应的亮度块可以位于视频帧、切片或者区域的同一相对位置。在视频编码中,各种采样速率均可用于对ycbcr分量进行编码。根据采样率,cb块、其对应的cr块、和/或其对应的y块的尺寸可以相同或者不同。例如,采样率为4:2:0时,每个mxm的色度(cb或者cr)块可对应于一个2mx2m的亮度块。在这种情况下,色度块的宽度或者高度为对应亮度块的一半。由于人眼对色度分量的敏感度不及亮度分量,色度分量被下采样或者降采样。又例如,采样率为4:4:4时,每个mxm的色度(cb或者cr)块可对应于一个mxm的亮度块。在这种情况下,可以保留更高的视频保真度,但可能需要对更多的数据进行编码。也可以使用其他采样率,例如4:2:2和4:2:1等。视频帧中的块可以与同一帧中的其他块空间相关,以使得一些块内的像素值可仅仅略有不同和/或呈现出重复的纹理。现代视频压缩方法使用各种技术来利用这些空间相关性,这些技术可以统称为帧内部预测(或简称为帧内预测)。当使用帧内预测对当前块进行编码时,会基于一个或多个先前编码过的参考块来生成预测块或者预测单元。预测块可以是当前块的估计版本。可通过从预测块中减去当前块或者从当前块中减去预测块来生成残余块,残余块表示预测残差或误差。由于用来表示预测残差所需的数据量通常小于用来表示原始块所需的数据量,因此可对残余块而非当前块进行编码,以实现更高的压缩比。帧内预测可由视频编码器或者解码器(下文简称为编解码器)实现。在编码器中,在将帧内预测生成的残余块合入编码数据流之前,可对其进行变换、量化以及扫描。解码器接收到编码数据流之后,可将重建的残余块添加到单独生成的预测块上,以重新创建当前块。虽然重建的当前块可能是例如由于量化导致的原始当前块的非完美版本,但是它们的差异可能是人眼几乎无法察觉的。因此,可以节约大量位,而不会显著降低重建图像的质量。在邻近块相同或近乎相同的视频区域中,使用帧内预测可能导致生成包含许多零和/或接近零的像素值的残余块。此外,残余块的变换、量化和/或扫描可以从编码数据流中移除许多零和/或接近零的系数,从而进一步压缩视频数据。因此,对原始图像的预测越精确,可以取得的编码效率就会越高。为了提高帧内预测的精确性,视频/图像编码标准可以使用多个帧内预测模式。例如,对于色度分量(包括cr和cb)而言,在高性能视频编码(hevc)中可以使用多达六个帧内预测模式,hevc有望成为由国际电信联盟(itu)电信标准化部门(itu-t)和国际标准化组织(iso)/国际电工技术委员会(iec)活动图像专家组(mpeg)的视频编码联合协作小组(jct-vc)发布的下一个视频标准。对于色度分量而言,六个帧内预测模式可包含来自亮度分量的亮度预测模式(通常称为线性模型、模式或者方法(lm)模式)、垂直预测模式、水平预测模式、对角模式、直流(dc)预测模式和直接模式(dm)的色度。可以使用各种算法为色度块确定最佳帧内预测模式。例如,编码器可以使用一些或所有可用模式测试帧内预测色度块,然后计算每个预测模式的绝对误差之和(sae)。可以选择sae最小的预测模式作为最佳模式。应注意,在待发布的最终hevc标准中,用于色度分量的帧内预测模式可以不同于上述六种模式。本发明主要涉及lm模式。根据文件号为jctvc-g1103_d4、标题为“wd5:高性能视频编码的工作草案5(wd5:workingdraft5ofhigh-efficiencyvideocoding)”的hevc工作草案(其内容以引用的方式并入本文本中),lm模式的当前设计利用重建亮度样本或像素来生成色度样本。具体来说,当实施lm模式为当前色度(cb或者cr)块生成预测块时,lm模式包含从当前色度块的对应亮度块中获取已经插入的先前重建的亮度样本的线性结合。lm模式进一步包含从邻近对应亮度块的亮度块中获取先前重建的亮度样本的线性结合。此外,lm模式进一步包含从邻近当前色度块的色度块中获取先前重建的色度样本。根据jctvc-g1103_d4,可以使用算法和/或下文描述的等式(1)至(18)来获取色度预测块的样本值。接触等式前,下文首先给出等式中使用的变量的定义。对于四个侧面每侧都有2ns(ns为正整数)个亮度样本的重建亮度块,[x,y]表示亮度样本在重建亮度块中的位置或者索引,其中整数x和y的取值范围均为0到2ns–1。此外,recsamplesl[x,y]表示[x,y]处的亮度样本。在hevc工作草案(如,文件jctvc-g1103_d4)中,recsamplesl[x,y]有时可能表示为plm[x,y]。本文的等式中,符号m=n…k用于表示取值范围,其中m的取值介于n(包含n)和k(包含k)之间,且m、n和k均为整数。例如,取值范围为0到2ns–1的x和y表示为“x,y=0到2ns-1”。如上所述,可以在lm模式中使用左侧和顶部邻近亮度块中的重建亮度样本来预测当前色度块。[x,-1]表示对应亮度块的左侧相邻列(下文称为左侧邻近列)中的亮度样本的位置或者索引,[-1,y]表示对应亮度块的上一相邻行(下文称为顶部邻近行)中的亮度样本的位置,其中x和y的取值范围均为0到2ns–1。也就是说,遵循标准的阵列符号,即[x,y]表示行位置为x且列位置为y。此外,recsamplesl[x,-1]表示[x,-1]位置处的亮度样本,recsamplesl[-1,y]表示[-1,y]位置处的亮度样本。在4:2:0取样中,重建的2ns×2ns对应亮度块可以首先过滤成ns×ns亮度块,然后用作当前色度块的帧内预测的参考块。对于四个侧面每侧都有ns个亮度样本的过滤亮度块,py'[x,y]表示[x,y]位置处的过滤亮度样本,其中x和y的取值范围均为0到ns-1。类似地,在lm模式中,可以在已使用的参考样本前先过滤包含亮度样本的左侧邻近列和顶部邻近行。过滤后,py'[x,-1]表示[x,-1]位置处的过滤亮度样本且py'[-1,y]表示[-1,y]位置处的过滤亮度样本的值,其中x和y的取值范围均为0到ns-1。如上所述,在左侧和顶部邻近色度块中的先前编码的色度样本同样可以在lm模式中使用。在邻近色度块中,[x,-1]表示当前色度块的左侧相邻列(也称为左侧邻近列或向量)中的色度样本的索引,[-1,y]表示当前色度块的上一相邻行(也称为顶部邻近行或向量)中的色度样本的索引,其中x和y的取值范围均为0到ns-1。此外,p[x,-1]表示[x,-1]位置处的色度样本,p[-1,y]表示[-1,y]位置处的色度样本,其中x和y的取值范围均为0到ns-1。对于待计算的色度预测块,predsamples[x,y]表示[x,y]位置处的预测或预测的色度样本,其中x和y的取值范围均为0到ns–1。bitdepthc表示用于色度分量(cr或cb)的位数(即,位深)。例如,在hevc中,bitdepthc可以等于8或10(或者任何其它合适的值)。如果bitdepthc=8,p[x,y]和predsamples[x,y]等色度样本可以最多有8位。使用时,亮度分量的位深通常可以和色度分量的位深相同,因此,py'[x,y]等过滤亮度度样本的最大位数与p[x,y]的相同。在lm模式中,为了生成预测色度样本,首先要过滤重建亮度样本。等式(2)将具有[121]系数的3抽头过滤器运用到位于顶部邻近行的2ns个重建亮度样本并生成ns个过滤亮度样本。等式(3)将2抽头平均过滤器运用到左侧邻近列中的2ns个重建亮度样本并生成ns个过滤亮度样本。等式(3)也将2抽头平均过滤器运用到对应亮度块中的2ns×2ns个重建亮度样本并生成ns×ns个过滤重建亮度样本。k3=max(0,bitdepthc+log(ns)-14)(1)py[x,-1]=(recsamplesl[2x-1,-1]+2*recsamplesl[2x,-1]+recsamplesl[2x+1,-1]+2)>>2,(2)其中x=0到ns-1可引入一系列表示为l、c、ll、lc以及k2的中间变量来获取预测色度样本(即predsamples[x,y]),如以下等式/伪码所示:k2=log2((2*ns)>>k3)(8)之后,可使用如下伪码获得表示为a1、a2、k1、a1s、a2s、a3、alpha、k及beta的更多的中间变量:a1=(lc<<k2)–l*c(9)a2=(ll<<k2)–l*l(10)a1s=a1>>max(0,log2(abs(a1))–14)(12)a2s=abs(a2>>max(0,log2(abs(a2))–5))(13)alpha=a3>>max(0,log2(abs(a3))–6)(5)k=13–max(0,log2(abs(alpha))–6)(16)beta=(l–((alpha*c)>>k)+(1<<(k2–1)))>>k2(17)获取到alpha、beta和k后,可通过下式计算预测色度样本:其中函数clip1c(x)定义为:clip1c(x)=clip3(0,(1<<bitdepthc)-1,x)函数clip3(x,y,z)定义为:应注意,预测色度样本predsamples[x,y]基于对应块中的过滤亮度样本、左侧邻近列和顶部邻近行中的过滤亮度样本以及左侧邻近列和顶部邻近行中的重建色度样本。有关等式(1)至(18)的附加详情可在文件jctvc-g1103_4中获取。在上述伪码中,当通过等式(13)计算出a2s后,使用a2s作为查找表的索引或键值来获取lmdiv的值,lmdiv的值随后在等式(14)中使用。表1所示为lmdiv查找表的规格,所述lmdiv查找表在工作草案jctvc-g1103_d4中列为表8-9。a2s12345678910111213lmdiv3276816384109238192655454614681409636413277297927312521a2s14151617181920212223242526lmdiv2341218520481928182017251638156014891425136513111260a2s27282930313233343536373839lmdiv121411701130109210571024993964936910886862840a2s40414243444546474849505152lmdiv819799780762745728712697683669655643630a2s535455565758596061626364lmdiv618607596585575565555546537529520512表1:jctvc-g1103_d4中lmdiv查找表的规格在等式(4)至(7)中,来自上部和左侧邻近块的参考样本可用于计算lm模式帧内预测所需的参数l、c、ll和lc。在hevc测试模型hmv5.0的当前设计中,等式(4)至(7)的计算涉及2ns个下采样重建亮度样本和2ns个重建色度样本,其中ns为预测尺寸,其等于当前预测块的宽或高。图1示出了根据等式(2)和(3)进行的过滤亮度样本的下采样。如图1所示,2nsx2ns个亮度样本101被下采样成nsxns个过滤亮度样本102,且在等式(4)至(7)中使用了2ns个过滤亮度样本,所述2ns个过滤亮度样本包括ns个“左侧”邻近样本py'[x,-1](x=0,1,…n–1)和ns个“上部”或“顶部”邻近样本p[-1,y](y=0,1,…ns–1)。尽管未在图1中示出,但等式(4)至(7)中使用了2ns个色度样本,所述2ns个色度样本包括ns个“左侧”邻近样本p[x,-1](x=0,1,…ns–1)和ns个“上部”或“顶部”邻近样本p[-1,y](y=0,1,…ns–1)。(记住可使用标准阵列符号,其中[x,y]表示行位置为x且列位置为y。)对于每个块,等式(4)至(7)中的加法运算总数可为8*ns,且乘法运算的总数可为4*ns。本发明公开了用于降低lm模式下的帧内预测的复杂度的系统、方法和装置。并公开了用于下采样色度样本和亮度样本的方案,以降低lm模式下的帧内预测的复杂度。所述方案可在视频编解码器中实施。在一项实施例中,可通过从每两个或四个样本中选取一个样本用于帧内预测的计算来实现下采样。在另一项实施例中,下采样可通过求样本组的滑动平均值来减少样本数量的方法实现。通过降低样本数量,可减少大量的加法和乘法运算,且编码性能损失很小。图2示出了视频编码器105的一项实施例,所述视频编码器中可以使用公开的lm模式。视频编码器105可以包括如图2所示进行布置的比率失真优化(rdo)模块110、预测模块120、变换模块130、量化模块140、熵编码器150、去量化模块160、逆变换模块170以及重建模块180。在操作时,视频编码器105可以接收包括一系列视频帧(或切片)的输入视频。本文中,帧可以指预测帧(p帧)、帧内编码帧(i帧)和双向预测帧(b帧)中的任一者。类似地,切片可以指p切片、i切片和b切片中的任一者。rdo模块110可以用于为一个或多个其他模块协调或者作出逻辑决策。例如,rdo模块110可基于一个或多个先前编码的帧来确定一个当前正在被编码的帧(或切片)如何被分为多个编码单元(cu),以及一个cu如何被分为一个或多个预测单元(pu)和变换单元(tu)。cu、pu以及tu为hevc中使用的各种类型的块。此外,rdo模块110可以确定如何预测当前帧。可以通过帧间预测和/或帧内预测对当前帧进行预测。对于帧内预测,hevc中存在多个可用的预测模式或方向(例如,y分量的34个模式及u或v分量的6个模式(包括lm模式)),可由rdo模块110确定最佳模式。例如,rdo模块110可计算每个预测模式的绝对误差之和(sae),并选择sae最小的预测模式作为最佳模式。预测模块120可以利用用于帧间预测的参考帧或者用于帧内预测的当前帧中的参考像素。在一项实施例中,预测模块120用于使用公开的lm模式为来自输入视频的当前色度块生成预测块。预测块包括多个预测色度样本,每个所述预测色度样本均基于位于对应的重建亮度块中的第一多个重建亮度样本、位于对应的重建亮度块的邻近块中的第二多个重建亮度样本以及位于色度块的邻近块中的多个重建色度样本来生成。在一项实施例中,生成多个预测色度样本包括使用如早前描述的等式(13)来计算中间变量a2s,该计算基于第二多个重建亮度样本。生成多个预测色度样本进一步包括使用查找表从a2s中得出中间变量lmdiv。在一项实施例中,所述查找表可以包括少于63个a2s值。在为当前色度块生成预测块时,可以从当前色度块中减去预测块或者从预测块中减去当前色度块来生成残余块。残余块可以送入变换模块130中,该变换模块可通过如离散余弦变换(dct)等二维正交变换将残余色度样本转换成变换系数矩阵。之后,变换系数矩阵在被送入熵编码器150之前,可以由量化模块140进行量化。量化模块140可以改变变换系数的标度,并将系数四舍五入为整数,这可以缩减非零变换系数的数目。从而,可达到增加压缩比的目的。量化的变换系数可由熵编码器150进行扫描并编码成编码比特流。进一步地,为便于色度块的连续编码,量化变换系数也可以被送入到去量化模块160中,以恢复变换系数的原始标度。随后,逆变换模块170可以执行变换模块130的逆变换并生成原始残余块的噪音版本。然后,可将有损残余块送入到重建模块180中,重建模块180可生成未来用于色度块的帧内预测的重建亮度和/或色度样本。如果需要,在重建样本用于帧内预测前可对其进行过滤。应注意,图2是视频编码器的简化的图示,因此其可能只包含视频编码器中呈现的部分模块。所述领域的技术人员知道其他模块(例如,滤波器、扫描仪以及发射器)虽然未在图2中示出,但是也可以包含在内,以协助视频编码。另外,根据编码方案,可以跳过视频编码器中的一些模块。例如,在对某个视频内容进行无损编码时,不允许有信息丢失,因此可跳过量化模块140和去量化模块160。再例如,如果不将残余块转换为变换系数而是直接对其编码,则可跳过变换模块130和逆变换模块170。另外,在从编码器处进行传送之前,可配置编码比特流包含视频分辨率、帧率、块分区信息(尺寸、坐标)、预测模式等其他信息,以便视频解码器可以对一系列编码的视频帧进行适当地解码。图3示出了视频解码器200的一项实施例,所述视频解码器中可以使用公开的lm模式。视频解码器200可以对应于视频编码器105,而且可以包括如图3所示进行布置的熵解码器210、去量化模块220、逆变换模块230、预测模块240以及重建模块250。在操作时,包含有关一系列视频帧的信息的编码比特流可以由熵解码器210接收,该熵解码器可以将比特流解码成未压缩格式。可以生成量化变换系数矩阵,随后可该矩阵送入去量化模块220,所述去量化模块220可以与图3中的去量化模块160相同或者类似。然后,可将去量化模块220的输出送入到逆变换模块230中,所述逆变换模块230可以将变换系数转换为残余块的残余值。此外,熵解码器210也可以对含有当前块的预测模式(例如,lm模式)的信息进行解码。预测模块240可基于所述预测模式为当前块生成预测块。在一项实施例中,预测模块240用于使用公开的lm模式来为当前色度块生成预测块。预测块包括多个预测色度样本,每个所述多个预测色度样本可基于位于对应的重建亮度块(已解码)中的第一多个重建亮度样本、位于对应的重建亮度块的邻近块(已解码)中的第二多个重建亮度样本以及位于色度块的邻近块(已解码)中的多个重建色度样本来生成。在为当前色度块生成预测块时,重建模块250可以合并残余色度块和预测块,以生成重建色度块。另外,为便于连续解码,重建色度块的一些色度样本也可以用作未来对同一帧中的色度块进行帧内预测时的参考像素。在视频编解码器(如视频编码器105或解码器200)中,为简化用于帧内预测的lm模式,可在进一步处理前对色度样本p[x,y]和过滤亮度样本py'[x,y]进行下采样。在一项实施例中,通过使用每第二个样本(如果采用2取1因数进行下采样)或每第四个样本(如果采用4取1因数进行下采样)对色度样本和过滤亮度样本进行下采样。如果色度块尺寸为16x16或者8x8,可进行下采样。在当前提议的hevc实现中,最大色度块尺寸为16x16。然而,本领域的技术人员知道如果可以在使用大于16x16的块尺寸时采用该下采样方案。对于通过n取1因数进行下采样的情况,等式(4)至(7)可改写为:其中,k3重定义为k3=max(0,bitdepthc+log2(ns/n)–14)。应注意,这些等式通过n取1因数进行缩减。计算中使用了顶部和左侧邻近亮度和色度样本的数量值。例如,如果ns=8且n=2,则在计算中只使用样本p[-1,0]、p[-1,2]、p[-1,4]和p[-1,6],而跳过或不使用样本p[-1,1]、p[-1,3]、p[-1,5]和p[-1,7]。类似地,可以只使用p[x,1]、py'[-1,y]和py'[x,-1]的一部分样本。因此,等式(19)至等式(22)可替代等式(4)至(7),且所使用的色度样本和重建亮度样本的数量可通过n取1因数进行缩减。该方案至少有两种变体。在第一种变体中,针对视频编码和解码,当n>4时,使用的顶部和左侧参考样本的数量被下采样至4x4。也就是说,可通过n=4这个因数对尺寸为16x16的预测块进行下采样、通过n=2这个因数对尺寸为8x8的预测块进行下采样,而不对尺寸为4x4的预测块进行下采样。第一种变体可称为“下采样至4”的情况。在第二种变体中,当ns>8时,使用的顶部和左侧参考样本的数量被下采样至8x8。换言之,通过因数n=2对尺寸为16x16的预测块下采样,而不对尺寸为8x8和4x4的预测块下采样。第二种变体可称为“下采样至8”的情况。图4示出了根据一项实施例的过滤亮度样本的顶部(有时也称为“上部”)和左侧邻近向量的下采样。401中的样本表示过滤亮度样本的顶部和左侧邻近向量。图1中的102中阐述了401中的这些样本和过滤亮度块的关系,该过滤亮度块对应于接收的色度块。经过图4所示的下采样过程后,样本组402中暗化的样本表示下采样的顶部和左侧邻近向量,该顶部和左侧邻近向量可在使用等式(19)、(21)和(22)计算预测色度块时使用。类似地,色度样本(邻近色度块)的顶部和左侧邻邻近向量也可被下采样并用于等式(20)中来计算预测色度块。因此,相关加法运算和乘法运算可做如下缩减:(1)对于下采样至4的情况,尺寸为16x16的块的缩减量达75%、尺寸为8x8的块的缩减量达50%,而尺寸为4x4的块不缩减;以及(2)对于下采样至8的情况,尺寸为16x16的块缩减量可达50%,而尺寸为8x8和4x4的块不缩减。上文论述的下采样方案的实施例可被测试并与hevc测试模型(hm)锚点比较。为了评估下采样方案的编码性能,可在帧内高效率(he)配置下对下采样至4和下采样至8的情况进行模拟。测试结果包括针对色彩空间(y、cb和cr)的三个分量的平均百分比bjontegaarddelta(bd)率。在模拟中,使用公开的lm模式的帧内预测的bd率与hm5.0锚点中使用的lm模式相比较。每种情况下的bd率变化如下:(1)对于下采样至4的情况,亮度(y)的损耗可能为0.06%、蓝差色度(cb)的损耗为0.65%,且红差色度(cr)的损耗为0.52%;以及(2)对于下采样至8的情况,亮度(y)的损耗可能为0.02%、蓝差色度(cb)的损耗为0.19%,且红差色度(cr)的损耗为0.13%。因此,对下采样编码性能的影响可忽略。在下采样的另一项实施例中,可采用平均过程来对亮度和色度样本下采样。对于下采样n取1因数,新数量可定义如下:和其中,x,y=0到ns/n-1。该平均过程可视为滑动平均过程或滑窗平均过程,其中窗口内的n个样本被平均,然后该窗口移动至下一组n个样本。例如,对于ns=8和n=2,可平均如下四对色度样本,以获得四个avglc值:p[-1,0]和p[-1,1]、p[-1,2]和p[-1,3]、p[-1,4]和p[-1,5]以及p[-1,6]和p[-1,7]。类似地,可平均四对样本,以获得avgll、avgal和avgac的四个值。在给出这些数量的情况下,等式(4)至(7)可替换为如下等式:其中,k3重定义为k3=max(0,bitdepthc+log2(ns/n)–14)。和第一种方案类似,第二种方案至少有两个变体。如先前所描述的“下采样至4”情况,在第一种变体中,针对视频编码和解码,当ns>4时,使用的顶部和左侧参考样本的数量可被下采样至4x4。也就是说,可通过n=4这个因数对尺寸为16x16的预测块进行下采样、通过n=2这个因数对尺寸为8x8的预测块进行下采样,而不对尺寸为4x4的预测块进行下采样。在被称为“下采样至8”情况的第二种变体中,当ns>8时,可将顶部和左侧参考样本下采样至8x8。也就是说,可通过因数n=2对尺寸为16x16的预测块进行下采样,而不对尺寸为8x8和4x4的预测块进行下采样。表2示出了与hm5.0锚点相对比的针对下采样至8情况的平均下采样方案的测试结果。测试结果包括针对色彩空间(y、u和v)的三个分量的多个分辨率级别(级别a、b、c、d、e和f)的平均百分比bd率,以及编码(enc)和解码(dec)时间。在级别a中,仅测试输入位深为8的视频序列。结果表明下采样方案的平均bd率改变很小或不改变。例如,针对y和u分量,级别a、b、c、d和e的平均bd率不变,而针对v分量仅增加0.02%。进一步地,测试例的编码(enc)时间不变,而解码(dec)时间增加2%。表3示出了用于下采样至4情况的平均下采样方案的测试结果。对于表2,结果表明下采样方案的平均bd率改变很小或不改变。表2:下采样至8情况的结果表3:下采样至4情况的结果图5为使用公开的lm模式的帧内预测方法500的一项实施例的流程图。方法500可在视频编码器(例如,图2中的视频编码器105)和/或视频解码器(例如,图3中的视频解码器200)中实施。该方法始于步骤510,其中可接收包括当前色度块的视频帧或切片。视频帧也可包括已编码的块。已编码的块包括当前色度块对应的重建亮度块、邻近对应亮度块的重建亮度样本(例如,顶部和左侧邻近向量)及邻近当前色度块的重建色度样本(例如,顶部和左侧邻近向量)。对应的亮度块包括多个重建亮度样本。其次,在步骤520中,可过滤或下采样重建亮度样本以生成过滤亮度样本,此亮度样本随后将用作参考样本。过滤后,可将对应的重建亮度块的宽度减半,减半后的宽度等于当前色度块的宽度。重建亮度样本的过滤可例如根据等式(2)和(3)进行,以及按照图1进一步阐述的那样进行。接着,在步骤530中,做出色度块的尺寸是否大于mxm(即,块尺寸阈值)的决定。如果大于,则方法前进到步骤540,其中获取重建色度样本的顶部和左侧邻近向量(例如,上文分别描述的向量[x,-1]和p[-1,y]),以及步骤550,其中获取过滤的重建亮度样本的顶部和左侧邻近向量(例如,上文分别描述的向量p′y[x,-1]和p′y[-1,y])。如果色度块的尺寸大于4x4,则该方法前进到步骤560。在步骤560中,对邻近色度和亮度样本进行下采样。例如,可通过使用如等式(19)至(22)如先前描述的那样选择每第n个样本或者通过使用如等式(23)至(26)来执行滑动平均过程,从而对邻近色度和亮度样本进行下采样。如前所述,用于下采样的块尺寸阈值可以为4x4(例如,下采样至4)或者8x8(例如,下采样至8)。在步骤570中,针对色度块的预测块的生成是基于邻近色度和亮度样本(例如,当色度块尺寸为4x4时)或者下采样的邻近色度和亮度样本(例如,当色度块尺寸大于4x4时)。根据是否使用或者使用何种类型的下采样,可以结合l、c、ll和lc的计算使用等式(9)至(18)来生成预测块。可以为帧内的多个色度块重复执行方法500的步骤。进一步地,可以为一系列视频帧中的每一个帧以及每个帧内的多个色度块中的每个色度块重复执行方法500的步骤。上述方案可在任何通用网络系统上实施,例如具有足够的处理能力、存储资源以及网络吞吐能力来处理其上的必要工作量的计算机或特定网络组件。图6示出了通用计算机系统600的示意图,该通用计算机系统适用于实施本文所公开的方案、方法或示意图的一项或多项实施例,例如,视频编码器105、视频解码器200和帧内预测方法500。计算机系统600包括处理器602(可称之为中央处理器单元或cpu),所述处理器与包括以下项的存储设备通信:辅助存储器604、只读存储器(rom)606、随机存取存储器(ram)608、发射器/接收器610以及输入/输出(i/o)设备612。虽然处理器602作为单个处理器说明,但其并非受限于此,而是可以包括多个处理器。处理器602可以实施为一个或多个cpu芯片、核(例如多核处理器)、现场可编程门阵列(fpga)、专用集成电路(asic)和/或数字信号处理器(dsp),并且/或者可以是一个或多个asic的一部分。处理器602可以用于实施本文中所述的包括实施伪码的任何方案,例如,视频编码器105、视频解码器200和帧内预测方法500。处理器602可以使用硬件、软件或两者结合来实施。辅助存储器604通常包括一个或多个磁盘驱动器或磁带驱动器,用于数据的非易失性存储,且当ram608的容量不足以存储所有工作数据时,所述辅助存储器则用作溢流数据存储设备。辅助存储器604可以用于存储程序,当选择执行这些程序时,所述程序将加载到ram608中。rom606用于存储在程序执行期间读取的指令以及可能读取的数据。rom606为非易失性存储设备,其存储容量相对于辅助存储器604的较大存储容量而言通常较小。ram608用于存储易失性数据,还可能用于存储指令。对rom606和ram608二者的存取通常比对辅助存储器604的存取速度要快。发射器/接收器(或者收发器)610可用作计算机系统600的输出和/或输入设备。例如,如果发射器/接收器610用作发射器,其可将数据传出计算机系统600。如果发射器/接收器610用作接收器,其可将数据传入计算机系统600。发射器/接收器610可采用以下形式:调制解调器、调制解调器银行、以太网卡、通用串行总线(usb)接口卡、串行接口、令牌环卡、光纤分布式数据接口(fddi)卡、无线局域网(wlan)卡和无线收发器卡,所述无线收发器卡可以是例如码分多址(cdma)、全球移动通信系统(gsm)、长期演进(lte)、全球微波接入互操作性(wimax)和/或其他空中接口协议无线收发器卡,以及其他公知网络设备。发射器/接收器610可使处理器602与因特网或者一个或多个内网通信。i/o设备612可包括视频监控器、液晶显示器(lcd)、触屏显示器或者其他类型的用于显示视频的视频显示器,也可包含用于捕获视频的视频录像设备。i/o设备612也可包括一个或多个键盘、鼠标、轨迹球或其他公知的输入设备。应理解,通过将可执行指令编程和/或加载至计算机系统600,改变处理器602、ram608和rom606中的至少之一项,将计算机系统600的一部分转换成特定机器或装置,例如,本发明宣扬的拥有新颖功能的视频编解码器。加载可执行软件至计算机所实现的功能可以通过公知设计规则转换成硬件实施,这在电力工程和软件工程领域是很基础的。决定使用软件还是硬件来实施一个概念通常取决于对设计稳定性及待生产的单元数量的考虑,而不是从软件领域转换至硬件领域中所涉及的任何问题。一般来说,经常变动的设计更适于在软件中实施,因为重新编写硬件实施比重新编写软件设计更为昂贵。通常,稳定及大规模生产的设计更适于在如专用集成电路(asic)这样的硬件中实施,因为运行硬件实施的大规模生产比软件实施更为便宜。设计通常可以以软件形式进行开发和测试,之后通过公知设计规则转变成专用集成电路中等同的硬件实施,该集成电路硬线软件指令。由新asic控制的机器是一特定的机器或装置,同样地,编程和/或加载有可执行指令的电脑可视为特定的机器或装置。本发明公开至少一项实施例,且所属领域的普通技术人员对所述实施例和/或所述实施例的特征作出的变化、组合和/或修改均在本发明公开的范围内。因组合、合并和/或省略所述实施例的特征而得到的替代性实施例也在本发明的范围内。在明确陈述数值范围或限制的情况下,应将此类表达范围或限制理解为包含属于明确陈述的范围或限制内的类似量值的迭代范围或限制(例如,从约为1到约为10包含2、3和4等;大于0.10包含0.11、0.12和0.13等)。例如,每当公开具有下限rl和上限ru的数值范围时,具体是公开落入所述范围内的任何数字。具体而言,所述范围内的以下数字是特别揭示的:r=rl+k*(ru-rl),其中k为从1%到100%范围内以1%递增的变量,即,k为1%、2%、3%、4%、5%、……、50%、51%、52%、……、95%、96%、97%、98%、99%或100%。此外,还特此公开了上文定义的由两个r值所界定的任何数值范围。除非另有说明,否则术语“约”是指其后数字的+/–10%。相对于权利要求的任一要素,术语“可选地”的使用表示需要该要素或者不需要该要素,二者均在所述权利要求的范围内。“包括”、“包含”和“具有”等较广义的术语,应理解为支持例如“由...组成”、“基本上由…组成”以及“大体上由…成”等较狭义的术语。因此,保护范围不受上文所述的限制,而是由所附权利要求书定义,所述范围包含所附权利要求书的标的物的所有等效物。每项和每条权利要求作为进一步公开的内容并入说明书中,且权利要求书是本发明的实施例。本发明对参考文献的论述并不是承认该参考文献为现有技术,尤其是出版日期在本申请案的在先申请优先权日期之后的任何参考文献。本发明中所引用的所有专利、专利申请案和公开案的公开内容在此以引用的方式并入本文本中,以对本发明提供示例性、程序性或其他细节性补充。虽然本发明提供多个具体实施例,但应当理解,所公开的系统和方法也可通过其他多种具体形式体现,而不会脱离本发明的精神或范围。本发明的示例应视为说明性而非限制性的,且本发明并不限于本文本中所给出的细节。例如,各种元件或部件可以组合或合并到另一系统,或者某些特征可以省略或不实施。此外,在不脱离本发明的范围的情况下,各种实施例中描述和说明为离散或单独的技术、系统、子系统和方法可以与其他系统、模块、技术或方法进行组合或合并。展示或论述为彼此耦接或直接耦接或通信的其他项也可以采用电方式、机械方式或其他方式通过某一接口、装置或中间部件间接地耦接或通信。对本领域技术人员而言,其他变更、替换、更替示例是显而易见的,且可在不脱离此处公开的精神和范围的情况下得出。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1