HEVC视频编码中的逻辑帧内模式命名的制作方法

文档序号:11961277阅读:160来源:国知局
HEVC视频编码中的逻辑帧内模式命名的制作方法与工艺
相关申请的交叉引用本申请是2012年1月20日提交的序列号为61/589,221的美国临时专利申请的非临时申请,在此通过引用该美国临时专利申请将其全部内容纳入在此。关于受版权保护的内容的公告根据美国及其它国家的版权法,本专利文件中的部分内容受到版权保护。当本专利文件或专利公开的复制版本在美国专利商标局中作为公开可获得的文件或记录出现时,该版权的拥有者对该复制版本没有异议,否则在任何情况下保留所有版权。据此,该版权的拥有者不会放弃任何使该专利文件保密的权利,包括但不限于依照37C.F.R.§1.14的权利。
技术领域
本发明总的涉及视频编码,更具体地涉及利用高效率视频编码设备的帧内模式命名。
背景技术
:目前,在高效率视频编码(HEVC)测试模型HM5.0中,有两种类型的帧内模式名称(编号方式),即,逻辑模式编号和比特流模式编号。逻辑模式编号更加有意义并且直接用在产生帧内预测的预测模块中。在HEVC中,逻辑比特编号跨越垂直方向VER-8,VER-4,VER,VER+4,VER+8至水平方向HOR-4,HOR,HOR+4,利用多达34个预测方向来对该逻辑比特编号进行编号。比特流模式编号用于将模式以信号的形式传输至解码器,并且在某些实现方式中,例如,在HM5.0中,比特流模式编号在视频编码设备的程序设计中可能需要许多查找表(例如,与模式有关(MD)的系数扫描,帧内平滑化,帧内预测,以及与模式有关(MD)的变换)。比特流模式编号与高级视频编码(AVC)编码一起使用并且被认为是按照它们的出现频率来分类的。然而,在高效率视频编码(HEVC)上收集的统计数据并没有给出朝向任何角方向(不包括平面和DC)的任何偏差,同时,对于剩余的模式使用旁路编码。技术实现要素:根据本发明的一个实施例,提供了一种用于编码和解码视频信号的装置,包括:视频编码器;其中所述视频编码器包括:用于选择预测单元中的帧内预测类型和模式,并且利用逻辑帧内模式命名编码具有模式编号的每一个所述模式的装置,其中所述逻辑帧内模式命名中的每一个模式编号与角方向相关联,作为包括DC模式、平面模式以及多个方向的表示的单调序列,以及利用所述逻辑帧内模式命名在帧内预测和熵编码期间做出判决;以及用于通过计算每一个所述模式与垂直方向和水平方向之间的距离从所述帧内模式命名推导扫描指数,以用于在帧内预测和熵编码期间做出所述判决的装置;视频解码器;其中所述视频解码器包括:用于从所述视频编码器接收最大概率模式(MPM)以及帧内预测类型和模式,并且利用逻辑帧内模式命名(LIMN)以在熵解码和帧内预测期间做出判决的装置。进一步地,所述视频编码器和所述视频解码器被配置为用于高效率视频编码(HEVC),利用具有取决于视频内容的可变块尺寸的编码单元(CU),所述编码单元(CU)被划分成用于预测的更小的块作为预测单元(PU)或者用于变换的更小的块作为变换单元(TU)。进一步地,所述多个方向表示跨越水平扫描、右上对角扫描和垂直扫描的方向。进一步地,所述视频编码器还包括,用于确定帧内模式方向的多个最大概率模式(MPM)以传递至解码器的装置。根据本发明的另一个实施例,还提供了一种用于视频编码的装置,包括:视频编码器,该视频编码器包括:用于选择预测单元(PU)的帧内预测类型和模式的装置;用于使用逻辑帧内模式命名编码预测单元的所述预测类型和模式的装置,其中,每一个模式具有模式编号,所述模式编号与角方向相关联,作为包括DC模式、平面模式和多个方向的表示的单调序列,以及用于输出所述逻辑帧内模式命名,以供解码器用来基于所述逻辑帧内模式命名来确定预测类型和模式的装置。进一步地,所述视频编码器是高效率视频编码(HEVC)编码器,利用具有取决于视频内容的可变块尺寸的编码单元(CU),所述编码单元(CU)被划分成用于预测的更小的块作为预测单元(PU)或者用于变换的更小的块作为变换单元(TU)。进一步地,所述多个方向表示跨越水平扫描、右上对角扫描和垂直扫描的方向。进一步地,所述视频编码器还包括:利用逻辑帧内模式名称和角方向之间的关联来简化判决逻辑和查找表的装置。进一步地,所述查找表是从由帧内预测、帧内平滑化、与模式有关的系数扫描以及与模式有关的变换组成的表的组中选择的。进一步地,所述视频编码器还包括:用于编码帧内模式方向的最大概率模式(MPM)的装置。进一步地,所述视频编码器还包括:用于在指示帧内预测模式不等于任何MPM的第一状态中编码第一比特的装置,其中,针对剩余的模式,所有的编码均是根据固定长度的代码;以及,用于在与所述第一状态相反的第二状态中编码所述第一比特的装置,所述第二状态指示帧内预测模式等于MPM中的一个,其中所述第一比特之后的后续比特指示是否选择了MPM0、MPM1或MPM2。进一步地,所述视频编码器还包括:用于根据已经在相邻预测单元(PU)中解码的样本在预测单元(PU)级处执行预测的装置。进一步地,所述视频编码器还包括:用于响应于逻辑帧内模式名称之间的角差异的量执行帧内模式平滑化的装置。进一步地,所述视频编码器还包括:用于当角差异的量大于对应块尺寸的表的值时应用平滑化的装置。进一步地,所述视频编码器还包括:用于把二维4×4变换处理为一维垂直变换之后是一维水平变换的装置;其中,方向模式具有2至34的值;其中,垂直离散正弦变换(DST)被应用于平面模式以及值为11至34的模式,以进行垂直变换,而剩余的模式使用垂直离散余弦变换(DCT);以及其中,水平DST被应用于平面模式以及值为2至25的模式,以进行水平变换。根据本发明的又一个实施例,提供了一种用于解码视频信号的装置,包括:解码器,该解码器被配置为解码视频帧;其中所述解码器包括:用于从编码器接收用于利用逻辑帧内模式命名(LIMN)的预测单元(PU)的最大概率模式(MPM)以及帧内预测类型和模式的装置,其中,每一个逻辑模式编号与角方向相关联,作为编号包括DC模式、平面模式和多个方向的表示的单调序列;以及用于基于利用逻辑帧内模式命名(LIMN)编码的所接收的值进行熵解码和帧内预测判决的装置。进一步地,所述视频解码器是高效率视频编码(HEVC)解码器,利用具有取决于视频内容的可变块尺寸的编码单元(CU),所述编码单元(CU)被划分为用于预测的更小的块作为预测单元(PU)或者用于变换的更小的块作为变换单元(TU)。进一步地,所述解码器还包括:用于解码从编码器接收的最大概率模式(MPM)中的三个的装置。进一步地,所述解码器还包括:用于在第一状态中解码第一比特的装置,其中所述第一状态指示帧内预测模式没有被设置成任何MPM,其中,对于剩余的模式,所有的编码均是根据固定长度的代码的;以及用于在与所述第一状态相反的第二状态中解码所述第一比特的装置,其中所述第二状态指示帧内预测模式等于MPM中的一个,在所述第一比特之后的后续比特指示是否选择了MPM0、MPM1或MPM2。进一步地,所述解码器还包括:用于把二维4×4变换处理为一维垂直变换之后是一维水平变换的装置;其中,方向模式具有2至34的值;其中,垂直离散正弦变换(DST)被应用于平面模式以及值为11至34的模式,以进行垂直变换,而剩余的模式使用垂直离散余弦变换(DCT);以及其中,水平DST被应用于平面模式以及值为2至25的模式,以进行水平变换。本发明的高效率视频编码(HEVC)中的逻辑帧内模式命名利用逻辑模式名称和针对所有模式使用的编号方式,从而取代比特流模式编号的使用。逻辑模式具有针对帧内模式的有意义的编号(命名)方式。注意,在HEVC中,编码单元(CU)可以具有取决于视频内容的可变块尺寸,并且可以被划分成用于预测的更小的块(作为预测单元(PU))或用于变换的更小的块(作为变换单元(TU))。预测单元(PU)可以被看作类似于在其它视频编码标准(诸如,H.264标准)中描述的分区(partition)。当在帧内模式中对块进行编码时,基于与当前块相邻的先前编码并重建的块,形成预测块,该预测块被配置为在编码之前从当前块中减去。存在针对这些块的不同预测模式,其定义了用于从先前编码的块生成信号的方法,例如,包括预测类型和方向。以高效率视频编码实现的编码器和解码器利用逻辑模式编号和比特流模式编号二者。在PU级处,根据已经在相邻PU中解码的样本,执行帧内预测。针对这些PU,可以存在不同的模式,包括DC(平均),多达33个角方向以及平面模式。使用本发明性的方法,通过针对用于传递至解码器的预测和编码使用相同的逻辑模式编号集,可以简化编码判决。尽管以下讨论了响应于查找表的使用来做出这些判决,但是应当理解,当使用其它软件机制(诸如,条件声明,转移表,指针引用等)做出这些判决时,该简化同样适用。通过举例,但并非限制性地,根据本发明通常可以消除与帧内模式编码相关的许多表,以简化HEVC编码器和解码器(例如,在HM5.0中,消除如下表:g_aucIntraDirToScanIdx,m_aucIntraFilter,g_aucAngIntraModeOrder,g_aucDCTDSTMode_Hor,g_aucDCTDSTMode_Ver)。此外,可以使用这些逻辑帧内模式名称来简化快速编码器的设计和实现方式。而且,在本文中教导了一种利用三个最大概率模式(MPM)替代在HEVC编码中当前使用的两个模式的方法。应该理解,最大概率模式(MPM)是用于优化编码过程的机制。具体来讲,估计最佳帧内方向的概率,作为其周围块的最大概率模式(MPM),因为当前块与在周围块中发现的图案之间具有强相关性。这些MPM(包括第三个MPM)是在无需额外查找表的情况下利用逻辑编号方式推导出的。编码器和解码器二者共享用于确定多个最大概率模式(MPM)的方法。根据本发明的逻辑模式编号被用于在比特流中执行预测和编码。根据本发明,基于角度,对这些逻辑模式编号进行编号、命名或分类。出于使讨论简洁的目的,以下将把这些描述为模式编号,尽管本领域技术人员明白可以类似地使用命名和分类。举例来说,关于任意引用执行逻辑模式编号,这些在获得利益方面更加有意义,因为它们通过去除一些以其它方式可能是必需的查找表而导致改善的设计。除了这种类型的编号方式所带来的许多简化之外,模拟指示出小的编码效率利益。此外,通过使用这种类型的命名,添加额外的MPM是非常有效的,因为不需要额外的表。通过利用本发明的方法,可以简化快速帧内模式判决算法。由于模式提供了编号(名称)与角方向之间的清晰的联系(关联),因此可以更加容易地应用各种快速模式判决(FMD)算法,例如,使用分层法。此外,该方法可以使其它算法变得容易或简化,例如,推导周围及垂直模式以简化算法,诸如,三个MPM算法。由此,利用逻辑帧内模式名称和角方向之间的关联可以使判决逻辑和查找表简化,或者完全消除某些查找表。该发明的装置和方法适用于根据HEVC标准实现的视频编码设备以及适用于可以通过本文中的帧内模式命名改进的类似的视频系统。在本说明书的下述部分中将陈述本发明的其它方面,其中,详细的说明是为了充分地公开本发明的优选实施例,而不是对此进行限制。附图说明通过参考附图可以充分地理解本发明,其中,这些附图是出于阐述的目的。图1是根据本发明的一个实施例的使用逻辑帧内模式命名的视频编码器的示意图。图2是根据本发明的一个实施例的使用逻辑帧内模式命名的视频解码器的示意图。图3是根据本发明的一个实施例的逻辑帧内模式命名的图,示出了每个逻辑名称的方向。图4A和4B是使用根据本发明的一个实施例的逻辑帧内模式命名的伪代码指令。图5是根据本发明的一个实施例的用于帧内模式操作的编码树的流程图。图6是根据本发明的一个实施例的用于帧内模式操作的解码树的流程图。图7A和7B是根据本发明的一个实施例的确定三个MPM的流程图。具体实施方式本发明利用逻辑模式编号的形式,这些逻辑模式编号足以描述方向并且可以被直接编码成比特流,而不使用比特流模式编号。通过在整个编码系统中使用本发明的逻辑模式编号可以提供很多优点,包括如下:(1)通过使用有意义的模式编号改善了设计。给定一个帧内模式编号,可以通过简单的计算在无需查找表的情况下确定其方向角。此外,可以从模式编号方式中推导出相邻模式编号表示相邻预测方向。(2)提供了简单的映射。通过使用逻辑模式编号,可以执行简单的操作,例如,在执行针对HM5.0的映射中清除最低有效位,其中,4×4PU具有与更大的PU不同数目的有效模式。在某些避免映射的编码系统中,将平面模式用于4×4PU,尽管应该选择角模式。本发明还适用于具有相同数目的模式的实现方式。(3)通过使用本发明的方法可以去除一些查找表。此外,帧内平滑化、与模式有关的系数扫描、以及与模式有关的变换不需要大的表来确定平滑滤波器、扫描指数、或变换类型(DCT/DST)。根据至少一个实施例利用简单模式范围检查来确定可以应用不同的平滑滤波器、扫描、或变换的标准。此外,无需查找表将比特流模式编号变换成逻辑编号,反之亦然。(4)由于本发明的模式编号指示了它们的角度,因此针对实时编码器的快速模式判决的设计更加简化。而且,可以迅速地达成粗略的判决,例如,首先测试较低分辨率的方向,并且基于该结果,在第二阶段仅有接近最佳模式的模式可以被测试。(5)逻辑模式编号方式使得计算相邻的方向变得简单。考虑到这些发明性的实施例,诸如那些涉及多于两个MPM的实施例,利用与周围帧内模式相邻的方向。由于相邻的方向是通过简单的算术手段(诸如,仅通过增加或减少周围模式编号(取决于PU大小))计算出的,因此可以大大地简化根据这些实施例的编码系统的实现方式。本发明还应用于具有相同增量和减量数目的情况。图1图示了根据本发明的用于利用逻辑帧内模式命名(LIMN)的包括编码器10的编码装置的示例性实施例。本发明实现在熵编码块34和帧内预测块26中,被示出为包含广义的逻辑帧内模式命名(LIMN),但是以别的方式也可以依靠使与编码系统的兼容性最大化的传统的视频编码。应该理解,可以响应于该发明性的教导将该编码器的其它块最优化。编码器10被示出为具有由一个或多个处理器44执行的编码元件12。在该示例中,连同参考帧16和帧输出18一起示出视频帧输入14。通过运动估计(ME)22和运动补偿(MC)24来描述帧间预测20。帧内预测26被示出为利用本发明的逻辑帧内模式命名(LIMN)来操作,并且描述了在帧间预测和帧内预测之间的切换。求和结点28被示出为输出至正向变换30,利用离散余弦变换(DCT)和/或离散正弦变换(DST)来操作,基于预测执行该离散余弦变换(DCT)和/或离散正弦变换(DST)以生成残余数据的变换系数。在量化阶段32处执行变换系数的量化,该量化阶段32之后是也利用逻辑帧内模式命名(LIMN)的熵编码34。反量化36操作和逆变换38操作被示出为与求和结点40耦合,该求和结点40之后是滤波器42,诸如,去块和/或环路滤波器和/或采样自适应偏移。应该理解,编码器被示出为是利用处理装置44来实现的,诸如,包括至少一个处理设备(例如CPU)46和至少一个存储器48的用于执行与编码相关联的程序设计的处理装置。此外,可以理解,本发明的元件可以被实现为存储在介质上的程序,其可以由编码器10和/或解码器50的CPU访问以用于执行。图2图示了被示出为具有处理块52和相关联的处理装置76的解码器的示例性实施例50。可以注意到,解码器实质上是包含在图1的编码器10中的元件的子集,对参考帧54、编码的视频信号56以及输出视频74进行操作。解码器50在熵解码和帧内预测期间利用逻辑帧内模式命名(LIMN),尽管该信息也可以在其它解码处理步骤中使用,以接近提高的效率。解码器块接收经由利用该发明性的逻辑帧内模式命名(LIMN)的熵解码器58处理的编码的视频信号56。在熵解码之后是:反量化60、逆变换62、以及求和64,该求和64在逆变换62的输出和帧间预测66与单独的帧内预测块70之间的选择之间,用运动补偿68来示出该帧间预测66。可以注意到,帧间预测也利用该逻辑帧内模式命名(LIMN)。来自求和结点64的输出由滤波器72接收,该滤波器72可以被配置为环路滤波器、去块滤波器、采样自适应偏移、或者其任何组合。可以理解,可以利用包括至少一个处理设备78和至少一个存储器80的用于执行与解码相关联的程序的处理装置76来实现该解码器。此外,可以注意到,本发明的元件可以被实现为存储在介质上的程序,其中,该介质可以由处理设备(CPU)78访问以用于执行。可以认为,本发明的元件10和50被实现为由处理装置44和76例如响应于驻留在存储器48和80上的可在计算机处理器(CPU)46和78上执行的程序设计来执行。此外,可以理解,本发明的元件可以被实现为存储在介质上的程序,其中,该介质可以由CPU46和78访问以用于执行。应该理解,来自作为有形的(物理的)计算机可读介质的存储器的程序是可执行的,该有形的计算机可读介质是非瞬态的,因为其不仅仅构成瞬态的传播信号,实际上还能够将程序保持在例如任何期望的形式以及数目的静态或动态存储器器件内。这些存储器设备不需要被实现为在所有条件(例如,电力故障)下保留数据,以在此被看作是非瞬态的介质。图3图示了根据本发明的一个实施例的使用的帧内模式编号方式的示例性实施例,示出了简单的单调序列,用从2至34的序列编号来例举该单调序列,其角度穿过各种水平的、右上对角线扫描(出于简洁被示出为右上扫描)和垂直扫描。方向0表示平面,方向1表示DC,这在图中没有被示出。应该理解,基于具有实数值的实数编号的子集的函数被称为单调的,如果所有x和y(其中,x≤y)具有f(x)≤f(y)的单调递增的关系,或者如果所有x和y(其中,x≥y)具有f(x)≥f(y)的单调递减的关系,则保留该顺序。可以通过任何期望的替代编号序列,尤其是单调的编号序列来实现本发明的实施例,而不脱离本发明的教导。应该理解,通过计算模式与垂直方向和水平方向之间的距离可以容易地推导出扫描的指数。因此,可以去除查找表g_aucIntraDirToScanIdx[MAX_CU_DEPTH][NUM_INTRA_MODE]。类似地,在帧内模式平滑化中,诸如利用通过与逻辑帧内模式命名的加法和减法的简单比较,响应于数值移位,可以容易地确定与水平方向和垂直方向的角偏移量。因此,响应于在逻辑帧内模式名称之间发现的角差异的量(其代表与水平方向和垂直方向的角偏移量),执行帧内模式平滑。例如,用这些数值移位中的最小值与存储在HEVC的当前测试模型(HM5.0)的小得多的查找表(例如尺寸是5而非5×36阵列)中的预定值做比较。如果最小数值移位(角差异)大于对应的块尺寸的表的值,则应用平滑化。因此,可以从m_aucIntraFilter[5][NUM_INTRA_MODE]至m_aucIntraFilter[5]={10,7,1,0,10}减小表。值10大得足以防止平滑化被应用于针对该块尺寸的任何帧内模式。使用该表,应用了平滑化的模式与HEVC测试模型HM5.0完全相同,但是表尺寸减小了。在其中与模式有关的变换基于帧内模式的编码系统中,考虑到使用逻辑模式编号,也可以按照类似的方式去除针对与模式有关的变换(例如,离散正弦变换和离散余弦变换(DST和DCT)的表。对于二维4×4变换,一维垂直变换之后是一维水平变换。将垂直DST应用于平面模式以及值为11至34的模式,以用于垂直变换。剩余的模式使用垂直DCT变换。另一方面,将水平DST应用于平面模式以及值为2至25的模式,以用于水平变换。剩余的模式使用水平DCT变换,由此可以安全地去除HM5.0中的表g_aucDCTDSTMode_Hor和g_aucDCTDSTMode_Vert。可以注意到,水平DST和垂直DST都针对平面模式执行。无论帧内模式如何,在应用单一变换的情况下,可以类似地实现本发明。此外,响应于使用这种形式的逻辑模式编号而非比特流模式命名,不再需要HM5.0中映射逻辑编号和比特流编号的表(诸如g_aucAngIntraModeOrder[NUM_INTRA_MODE])。本发明可以扩展至任何期望数目的最大概率模式(MPM),以下示例描述了将本发明扩展至三个MPM。在某些HEVC编码系统中,针对8×8,16×16以及32×32PU尺寸,存在35个帧内模式,然而对于4×4PU,仅考虑18个模式。该基本原理是使模式的数目具有3MPM+x的结构,其中x是剩余模式的数目。因此,本发明提供其中x是2的幂的没有增益的完全对称的方法。从而,在4×4中,x的值是16,而在其它情况下,x等于32。通过该完全对称的方法,针对4×4PU以及更大(例如,8×8/16×16/32×32)的PU,分别存在19个模式和35个模式,其对应于2的全部幂加上3个模式。相应地,如果允许3个MPM,则针对4×4PU以及更大(例如,8×8/16×16/32×32)的PU,分别确切地存在16个剩余模式和32个剩余模式,因此消除了对当前软件设计所需的任何转义码的需求。应该注意到,第三个MPM的引入没有添加额外的复杂度或内存上下文要求。无需如同在表1中看到的任何查找表,使用简单的操作,就可以推导出3个MPM,其中,在HM5.0中,对于4×4PU,δ的值是2,对于剩余的PU尺寸,δ的值是1,大体上该值可以变化。本领域技术人员可以理解,可以以各种替代的方式来实现δ的值以及查找表,而不脱离本发明的教导。应该理解,该表主要地指示如何根据周围块来设置MPM,如在图4A和4B中将详细地看到的,将在随后的部分对此进行描述。将该发明性的元件实现至HEVC编码系统(例如,测试模型HM5.0)中可以提供很多益处。为了规则性,如在先前的部分中提到的,针对4×4PU,假定19个亮度帧内预测模式。然而,该额外的模式不具有额外的增益(如由其它贡献所验证的),并且仅出于对称性和改善的设计的目的添加该额外的模式。基于帧内模式重命名的使用,在BD率性能中发现小的增益,如先前所描述地,该小的增益是由于从35个模式至4×4PU中的19个模式的改善的映射。如果利用3个MPM,那么在普通测试条件下利用发明性的3-MPM方法的BD率性能得到了改善,如在表2中所见的。应该注意到,即使是针对3个MPM的情况,也没有定义额外的上下文。图4A和4B图示了根据本发明的MPM推导,其被示出为广义的伪代码。在图4A中,示出了针对如果iLeftIntraDir等于iAboveIntraDir的条件的判决,而在图4B中,示出了针对当iLeftIntraDir不等于iAboveIntraDir时的判决。这将在图5和图6中分别以更容易明白的方式来描述。图5图示了根据本发明的针对帧内预测模式90的帧内模式编码树。做出帧内预测是否等于MPM中的一个的判定92。如果不等于MPM中的任何一个,则编码零94,在此之后,针对剩余的模式,利用固定长度的代码来执行编码96。否则,针对MPM,将第一个比特编码为一100。做出该模式是否是MPM0的判定102。如果是MPM0,则编码零104。如果不是MPM0,则编码一106,并且做出该模式是否是MPM1的判定108。如果是MPM1,则编码零110,如果不是MPM1,则编码一112。在任何情况下,将比特插入帧内模式的比特流中98。虽然按照MPM0,MPM1和MPM2的顺序执行检查看上去是优选的,但是本领域技术人员可以理解,针对各MPM,MPM0和MPM1的编码的序列可以被选择为按照任何期望的顺序和/或上述示例性场景中的零和一的选择可以被颠倒,而不脱离本发明的教导。具体地,在所述处理器上可执行的程序在指示该帧内模式不等于MPM中的任何一个的第一状态中编码第一比特,其中,针对剩余的模式,所有的编码都是根据固定长度的代码。或者,在与第一状态相反的第二状态中编码该第一比特,该第二状态指示该帧内模式等于MPM中的一个,由此,在该第一比特之后的后续比特指示是否选择了MPM0,MPM1或MPM2。图6利用比特流130图示了针对本发明的帧内模式解码树。解码第一比特132,并且如果其是零,则将在块134处针对剩余的模式解码固定长度的代码,将解码后的固定长度的代码映射至帧内模式136,然后确定帧内预测模式138。如果第一解码的比特是一,则在块140处解码下一个比特,并且如果其是零,则选择MPM0142,如果是一,则块144解码下一个比特。如果该第三个比特是零,则选择MPM1146,并且如果其是一,则选择MPM2148,在这一切之后都是确定帧内预测模式138。图7A和图7B图示了确定3个MPM的示例性实施例,如同在编码器和解码器中使用的那样以辅助帧内预测模式的编码和解码。在判决150中,如果左邻近PU是帧内编码的(模式),则在块152中将值iLeftIntraDir设置成该左邻近PU的帧内预测模式,否则,在块154中将iLeftIntraDir设置成DC。在判决156中,如果上述邻近PU是帧内编码的,则在块158中将值iAboveIntraDir设置成该上述邻近PU的帧内预测模式,否则,在块160中将iAboveIntraDir设置成DC。使用iLeftIntraDir和iAboveIntraDir162,如果在块164中这些不相等,则在块166中检查是否任何一个是平面的。如果不是平面的,则在块168中将MPM0设置成iLeftIntraDir模式,将MPM1设置成模式iAboveIntraDir模式,以及将MPM2设置成Planar(平面)模式。如果任何一个是平面的,则块170确定另一个是否是DC。如果不是DC,则在块172中将MPM0设置成iLeftIntraDir,将MPM1设置成iAboveIntraDir,并且将MPM2设置成DC。如果另一个是DC,则在块174处,将MPM0设置成iLeftIntraDir,将MPM1设置成iAboveIntraDir,并且将MPM2设置成Vertical(垂直)。返回至块164,如果iLeftIntraDir等于iAboveIntraDir,则块176检查iLeftIntraDir是否是有角度的。对于非有角度的iLeftIntraDir,在块178处,将MPM0设置成Planar(平面),将MPM1设置成DC,并且将MPM2设置成Vertical(垂直)。对于有角度的iLeftIntraDir,在块180处,将MPM0设置成iLeftIntraDir,将MPM1设置成iLeftIntraDir-δ,并且将MPM2设置成iLeftIntraDir+δ,其中,在HM5.0中,对于4×4PU,该δ的值是2,对于其它PU尺寸,该δ的值是1。再次,本领域技术人员将认识到,可以利用不同的值,而不脱离本发明的教导。可以参考根据本发明的实施例的方法和系统的流程图图示,和/或算法、公式、或其它计算性描述,来描述本发明的实施例,本发明的实施例也可以被实现为计算机程序产品。在这点上,可以通过各种手段,例如,硬件、固件和/或包括实现在计算机可读程序代码逻辑中的一个或多个计算机程序指令的软件,来实现流程图中的每一个块或步骤,以及流程图的块(和/或步骤)、算法、公式或者其它计算性描述的组合。如将要理解的,任何这样的计算机程序指令均可被加载到计算机中,包括但不限于通用计算机或专用计算机,或者其它可编程处理装置,以产生机器,使得在该计算机或者其它可编程处理装置上运行的计算机程序指令创建用于实现在流程图的块中指定的功能的装置。相应地,流程图中的块、算法、公式或者计算性描述支持用于执行指定功能的装置的组合、用于执行指定功能的步骤的组合、以及用于执行指定功能的计算机程序指令(诸如体现在计算机可读程序代码逻辑装置中)。还可以理解,在此描述的流程图图示中的每一个块、算法、公式或者计算性描述以及它们的组合可以通过执行指定功能或步骤的专用的基于硬件的计算机系统或者专用硬件和计算机可读程序代码逻辑装置的组合来实现。此外,诸如实现在计算机可读程序代码逻辑中的这些计算机程序指令也可以存储在能够引导计算机或者其它可编程处理装置按照特定方式工作的计算机可读存储器中,使得存储在计算机可读存储器中的指令产生包括实现在流程图的块中指定的功能的指令装置的制造件。该计算机程序指令还可以被加载到计算机或者其它可编程处理装置中,使得在该计算机或者其它可编程处理装置上执行一系列的操作性步骤以产生计算机实现的处理过程,从而使得在该计算机或者其它可编程处理装置上运行的指令提供用于实现在流程图的块、算法、公式或计算性描述中指定的功能的步骤。根据上述描述,可以理解,本发明可以以各种方式来实现,包括下述方式。1.一种用于编码和解码视频信号的装置,包括:(a)具有计算机处理器的视频编码器;(b)能在所述视频编码器的计算机处理器上执行的程序,用于:(i)选择预测单元中的帧内预测类型和模式,并且利用逻辑帧内模式命名编码具有模式编号的每一个所述模式,其中所述逻辑帧内模式命名中的每一个模式编号与角方向相关联,作为包括DC模式、平面模式以及多个方向的表示的单调序列,以及利用所述逻辑帧内模式命名在帧内预测和熵编码期间做出判决;以及(ii)通过计算每一个所述模式与垂直方向和水平方向之间的距离从所述帧内模式命名推导扫描指数,以用于在帧内预测和熵编码期间做出所述判决;(c)具有计算机处理器的视频解码器;以及(d)在所述视频解码器的计算机处理器上可执行的程序,用于从所述视频编码器接收最大概率模式(MPM)以及帧内预测类型和模式,并且利用逻辑帧内模式命名(LIMN)以在熵解码和帧内预测期间做出判决。2.根据任何在前的实施例的装置,其中,所述视频编码器和所述视频解码器被配置为用于高效率视频编码(HEVC),利用具有取决于视频内容的可变块尺寸的编码单元(CU),所述编码单元(CU)被划分成用于预测的更小的块作为预测单元(PU)或者用于变换的更小的块作为变换单元(TU)。3.根据任何在前的实施例的装置,其中,所述多个方向表示跨越水平扫描、右上对角扫描和垂直扫描的方向。4.根据任何在前的实施例的装置,进一步包括可在所述视频编码器的计算机处理器上执行的程序,用于确定帧内模式方向的多个最大概率模式(MPM)以传递至解码器。5.一种用于视频编码的装置,包括:(a)具有计算机处理器的视频编码器;以及(b)可在所述计算机处理器上执行的程序,用于:(i)选择预测单元(PU)的帧内预测类型和模式;(ii)使用逻辑帧内模式命名编码预测单元的所述预测类型和模式,其中,每一个模式具有模式编号,所述模式编号与角方向相关联,作为包括DC模式、平面模式和多个方向的表示的单调序列,以及(iii)输出所述逻辑帧内模式命名,以供解码器用来基于所述逻辑帧内模式命名来确定预测类型和模式。6.根据任何在前的实施例的装置,其中,所述视频编码器是高效率视频编码(HEVC)编码器,利用具有取决于视频内容的可变块尺寸的编码单元(CU),所述编码单元(CU)被划分成用于预测的更小的块作为预测单元(PU)或者用于变换的更小的块作为变换单元(TU)。7.根据任何在前的实施例的装置,其中,所述多个方向表示跨越水平扫描、右上对角扫描和垂直扫描的方向。8.根据任何在前的实施例的装置,其中,可在所述计算机处理器上执行的程序被配置为利用逻辑帧内模式名称和角方向之间的关联来简化判决逻辑和查找表。9.根据任何在前的实施例的装置,其中,所述查找表是从由帧内预测、帧内平滑化、与模式有关的系数扫描以及与模式有关的变换组成的表的组中选择的。10.根据任何在前的实施例的装置,进一步包括可在所述计算机处理器上执行的程序,用于编码帧内模式方向的最大概率模式(MPM)。11.根据任何在前的实施例的装置,进一步包括可在所述计算机处理器上执行的程序,用于在指示帧内预测模式不等于任何MPM的第一状态中编码第一比特,其中,针对剩余的模式,所有的编码均是根据固定长度的代码;以及,在与所述第一状态相反的第二状态中编码所述第一比特,所述第二状态指示帧内预测模式等于MPM中的一个,其中所述第一比特之后的后续比特指示是否选择了MPM0、MPM1或MPM2。12.根据任何在前的实施例的装置,进一步包括可在所述计算机处理器上执行的程序,用于根据已经在相邻预测单元(PU)中解码的样本在预测单元(PU)级处执行预测。13.根据任何在前的实施例的装置,进一步包括可在所述计算机处理器上执行的程序,用于响应于逻辑帧内模式名称之间的角差异的量执行帧内模式平滑化。14.根据任何在前的实施例的装置,进一步包括可在所述计算机处理器上执行的程序,用于当角差异的量大于对应块尺寸的表的值时应用平滑化。15.根据任何在前的实施例的装置,进一步包括:可在所述计算机处理器上执行的程序,用于把二维4×4变换处理为一维垂直变换之后是一维水平变换;其中,方向模式具有2至34的值;其中,垂直离散正弦变换(DST)被应用于平面模式以及值为11至34的模式,以进行垂直变换,而剩余的模式使用垂直离散余弦变换(DCT);以及其中,水平DST被应用于平面模式以及值为2至25的模式,以进行水平变换。16.一种用于解码视频信号的装置,包括:(a)具有计算机处理器的解码器,该解码器被配置为解码视频帧;以及(b)可在所述计算机处理器上执行的程序,用于:(i)从编码器接收用于利用逻辑帧内模式命名(LIMN)的预测单元(PU)的最大概率模式(MPM)以及帧内预测类型和模式;(ii)其中,每一个逻辑模式编号与角方向相关联,作为编号包括DC模式、平面模式和多个方向的表示的单调序列;以及(iii)基于利用逻辑帧内模式命名(LIMN)编码的所接收的值进行熵解码和帧内预测判决。17.根据任何在前的实施例的装置,其中,所述视频解码器是高效率视频编码(HEVC)解码器,利用具有取决于视频内容的可变块尺寸的编码单元(CU),所述编码单元(CU)被划分为用于预测的更小的块作为预测单元(PU)或者用于变换的更小的块作为变换单元(TU)。18.根据任何在前的实施例的装置,进一步包括可在所述计算机处理器上执行的程序,用于解码从编码器接收的最大概率模式(MPM)中的三个。19.根据任何在前的实施例的装置,进一步包括可在所述计算机处理器上执行的程序,用于:在第一状态中解码第一比特,所述第一状态指示帧内预测模式没有被设置成任何MPM,其中,对于剩余的模式,所有的编码均是根据固定长度的代码的;以及在与所述第一状态相反的第二状态中解码所述第一比特,所述第二状态指示帧内预测模式等于MPM中的一个,在所述第一比特之后的后续比特指示是否选择了MPM0、MPM1或MPM2。20.根据任何在前的实施例的装置,进一步包括:可在所述计算机处理器上执行的程序,用于把二维4×4变换处理为一维垂直变换之后是一维水平变换;其中,方向模式具有2至34的值;其中,垂直离散正弦变换(DST)被应用于平面模式以及值为11至34的模式,以进行垂直变换,而剩余的模式使用垂直离散余弦变换(DCT);以及其中,水平DST被应用于平面模式以及值为2至25的模式,以进行水平变换。尽管上述描述包含许多细节,但是这些细节不应该被理解为限制本发明的范围,而是应该被理解为仅仅提供本发明的当前优选实施例的某些实施例的例证。因此,可以理解本发明的范围完全包含对于本领域技术人员来说明显的其它实施例,并且相应地本发明的范围仅由所附权利要求来限定,其中,除非明确指出,否则当提及到单数的元件时,其并不意图指代“一个且仅一个”,而是指代“一个或多个”。本领域技术人员已知的上述优选实施例的元件的所有结构等同物以及功能等同物通过引用被明确地并入在此,并且意图被本发明的权利要求所包含。此外,对于设备或方法来说不是必须要解决本发明试图要解决的每一个问题,其被本发明的权利要求所包含。而且,本公开中的元件、部件、或方法步骤并不意图献给公众,无何这些元件、部件、或方法步骤是否在权利要求中明确地记载。除非使用短语“用于…的装置”来明确地记载所保护的元件,否则不应该在第六段,35U.S.C.112的条款下理解本文中所保护的元件。表13个MPM的推导周围模式条件MPM(3个MPM)iLeftIntraDir==iAboveIntraDiriLeftIntraDir,iLeftIntraDir-δ,iLeftIntraDir+δiLeftIntraDir!=iAboveIntraDiriLeftIntraDir,iAboveIntraDir,Planar/DC表2针对3个MPM的帧内模式名称修改的结果当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1