帧内预测的方法和设备的制作方法

文档序号:7992754阅读:127来源:国知局
帧内预测的方法和设备的制作方法
【专利摘要】按照本发明用于解码图像的方法包括步骤:接收和解码用于指示要用作当前块的帧内预测模式的MPM候选的MPM索引信息;产生包含用于当前块的多个MPM候选的MPM候选列表;将在构建MPM候选列表的多个MPM候选当中的由解码的MPM索引信息指示的MPM候选确定为当前块的帧内预测模式;以及通过基于确定的帧内预测模式对当前块执行帧内预测,产生对应于当前块的预测块。
【专利说明】帧内预测的方法和设备
【技术领域】
[0001]本发明涉及视频处理技术,尤其是,涉及帧内预测方法和设备。
【背景技术】
[0002]近年来,对于高分辨率和高质量视频,诸如高分辨率(HD)视频和超高分辨率(UHD)视频的需求已经在各种应用领域中增长。但是,由于视频数据具有更高的分辨率和更高的质量,要传送的视频的数据量或者比特速率增长超过现有的视频数据。因此,当视频数据被使用介质,诸如现有的有线或者无线宽带线路传送,或者存储在现有的存储介质中时,其传送成本及存储成本增加。能够使用高效率的视频压缩技术来解决这样的问题。
[0003]各种技术,诸如从在当前图片之前或者之后的图片预测包括在当前图片中的像素值的帧间预测方法,使用在当前图片中的像素信息预测包括在当前图片中像素值的帧内预测方法,和将短的代码字分配给高发生频率的值,和将长的代码字分配给低发生频率的值的熵编码技术被认为视频压缩技术。可以使用这样的视频压缩技术有效地压缩和传送或者存储视频数据。

【发明内容】

[0004]技术问题
[0005]本发明的一个目的是提供一种视频编码方法和视频编码器,其可以提高视频编码/解码效率和降低复杂度。
[0006]本发明的另一个目的是提供一种视频解码方法和视频解码器,其可以提高视频编码/解码效率和降低复杂度。
[0007]本发明的再一个目的是提供一种帧内预测方法和帧内预测设备,其可以提高视频编码/解码效率和降低复杂度。
[0008]本发明的再一个目的是提供视频信息发送方法和设备,其可以提高视频编码/解码效率和降低复杂度。
[0009]本发明的再一目的是提供MPM候选列表构建方法和设备,其可以提高视频编码/解码效率和降低复杂度。
[0010]问题的解决方案
[0011]按照本发明的一个方面,提供了一种视频解码方法。该视频编码方法包括步骤:接收和解码指示要用作当前块的帧内预测模式的最可能模式(MPM)候选的MPM索引信息;构建包括用于当前块的多个MPM候选的MPM候选列表;将在构建MPM候选列表的多个MPM候选当中的由解码的MPM索引信息指示的MPM候选确定为当前块的帧内预测模式;以及通过基于确定的帧内预测模式对当前块执行帧内预测,构建对应于当前块的预测块。在这里,构建MPM候选列表包括:确定与相邻于当前块的左侧的重建的第一块相对应的第一MPM候选,和与相邻于当前块的上侧的重建的第二块相对应的第二 MPM候选,以及将第一 MPM候选和第二 MPM候选的至少一个设置到在MPM候选列表中的预先确定的固定位置。[0012]构建MPM候选列表可以包括将第一 MPM候选确定为第一块的巾贞内预测模式,和将第二 MPM候选确定为第二块的帧内预测模式。
[0013]构建MPM候选列表可以包括当第一块是不可用时,将第一 MPM候选确定为DC模式,并且当第二块是不可用时,将第二 MPM候选确定为DC模式。
[0014]构建MPM候选列表可以包括当第一 MPM候选和第二 MPM候选彼此相同时,将第一MPM候选设置到在MPM候选列表中的第一位置,并且将第二 MPM候选设置到在MPM候选列表中的第二位置。
[0015]索引值O可以被分配给在MPM候选列表中被设置到第一位置的第一 MPM候选,并且索引值I可以被分配给在MPM候选列表中被设置到第二位置的第二 MPM候选。
[0016]MPM候选列表可以包括三个MPM候选。
[0017]构建MPM候选列表可以包括:当第一 MPM候选和第二 MPM候选的任何一个不是平面模式时,将平面模式作为第三MPM候选设置到在MPM候选列表中的第三位置,当第一 MPM候选和第二 MPM候选的一个是平面模式,并且第一 MPM候选和第二 MPM候选的任何一个不是DC模式时,将DC模式作为第三MPM候选设置到在MPM候选列表中的第三位置,以及当第一 MPM候选和第二 MPM候选的一个是平面模式,并且另一个是DC模式时,将垂直模式作为第三MPM候选设置到在MPM候选列表中的第三位置。
[0018]索引值2可以被分配给在MPM候选列表中被设置到第三位置的第三MPM候选。
[0019]按照本发明的另一个方面,提供了一种视频解码器。该视频解码器包括:熵解码模块,该熵解码模块接收和解码指示要用作当前块的帧内预测模式的最可能模式(MPM)候选的MPM索引信息;帧内预测模式确定模块,该帧内预测模式确定模块构建包括用于当前块的多个MPM候选的MPM候选列表,并且将在构建MPM候选列表的多个MPM候选当中的由解码的MPM索引信息指示的MPM候选确定为当前块的帧内预测模式;和预测块构建模块,该预测块构建模块通过基于确定的帧内预测模式对当前块执行帧内预测,构建与当前块相对应的预测块。在这里,帧内预测模式确定模块确定与相邻于当前块的左侧的重建的第一块相对应的第一 MPM候选,和与相邻于当前块的上侧的重建的第二块相对应的第二 MPM候选,以及将第一 MPM候选和第二 MPM候选的至少一个设置到在MPM候选列表中的预先确定的固定位置。
[0020]帧内预测模式确定模块可以将第一 MPM候选确定为第一块的帧内预测模式,和可以将第二 MPM候选确定为第二块的帧内预测模式。
[0021]帧内预测模式确定模块可以确定当第一块是不可用时,第一 MPM候选为DC模式,并且可以确定当第二块是不可用时,第二 MPM候选为DC模式。
[0022]当第一 MPM候选和第二 MPM候选彼此不相同时,帧内预测模式确定模块可以将第一 MPM候选设置到在MPM候选列表中的第一位置,并且可以将第二 MPM候选设置到在MPM候选列表中的第二位置。
[0023]索引值O可以被分配给在MPM候选列表中被设置到第一位置的第一 MPM候选,并且索引值I可以被分配给在MPM候选列表中被设置到第二位置的第二 MPM候选。
[0024]MPM候选列表可以包括三个MPM候选。
[0025]当第一 MPM候选和第二 MPM候选的任何一个不是平面模式时,帧内预测模式确定模块可以将平面模式作为第三MPM候选设置到在MPM候选列表中的第三位置,当第一 MPM候选和第二 MPM候选的一个是平面模式,并且第一 MPM候选和第二 MPM候选的任何一个不是DC模式时,帧内预测模式确定模块可以将DC模式作为第三MPM候选设置到在MPM候选列表中的第三位置,以及当第一MPM候选和第二MPM候选的一个是平面模式,并且另一个是DC模式时,可以将垂直模式作为第三MPM候选设置到在MPM候选列表中的第三位置。
[0026]索引值2可以被分配给在MPM候选列表中被设置到第三位置的第三MPM候选。
[0027]有益效果
[0028]通过采用按照本发明的视频编码方法,可以提高视频编码/解码效率和降低复杂度。
[0029]通过采用按照本发明的视频解码方法,可以提高视频编码/解码效率和降低复杂度。
[0030]通过采用按照本发明的帧内预测方法,可以提高视频编码/解码效率和降低复杂度。
[0031]通过采用按照本发明的视频信息发送方法,可以提高视频编码/解码效率和降低复杂度。
[0032]通过采用按照本发明的MPM候选列表构建方法,可以提高视频编码/解码效率和降低复杂度。
【专利附图】

【附图说明】
[0033]图1是按照本发明的实施例示意地图示视频编码器的方框图。
[0034]图2是按照本发明的实施例示意地图示视频解码器的方框图。
[0035]图3是示意地图示在本发明被应用到的系统中的处理单元的四树结构的示例的示意图。
[0036]图4是示意地图示用于帧内预测的帧内预测模式的预测方向和分配给预测方向的预测模式编号的示例的示意图。
[0037]图5是按照本发明示意地图示帧内预测模式信息发送方法的示例的流程图。
[0038]图6是按照本发明示意地图示帧内预测方法的示例的流程图。
[0039]图7是图示确定MPM候选和构建MPM候选列表过程的示例的示意图。
[0040]图8是按照本发明示意地图示发送帧内预测模式信息的视频编码器的示例的方框图。
[0041]图9是按照本发明示意地图示执行帧内预测的视频解码器的示例的方框图。【具体实施方式】
[0042]本发明可以以各种形式被不同地修改,并且可以具有各种实施例,并且将在该附图中图示和详细描述其特定的实施例。但是,这些实施例不意欲限制本发明。在以下的描述中使用的术语仅用于描述特定的实施例,但是,不意欲用于限制本发明的技术精神。单数的表示包括多数表示,只要其明显地读起来不同。在本说明书中,该术语,诸如“包括”和“具有”意欲用于表示存在在以下的描述中使用的特点、数目、步骤、操作、元件、组件,或者其组合,并且因此,应该理解,不排除存在或者增加一个或多个不同的特点、数目、步骤、操作、元件、组件,或者其组合的可能性。[0043]另一方面,在本发明中描述的附图的元件,在图像编码器和图像解码器中,为解释不同的特定功能的便利目的独立地绘制,并且不意味元件由单独的硬件或者单独的软件实施。例如,在元件当中的两个或更多个元件可以被组合以形成单个元件,或者一个元件可以分成多个元件。不脱离本发明的概念,元件被组合和/或分割的实施例属于本发明的范围。
[0044]在下文中,将参考伴随的附图详细描述本发明示例性实施例。在附图中相同的元件将由相同的附图标记引用,并且相同的元件的描述不会被重复。
[0045]图1是按照本发明的实施例示意地图示视频编码器的方框图。参考图1,视频编码器100包括图片分割模块105、预测模块110、变换模块115、量化模块120、重新排序模块125、熵编码模块130、去量化模块135、逆变换模块140、滤波器模块145,和存储器150。
[0046]图片分割模块105可以将输入图像分割为至少一个处理单元块。在这里,作为处理单元的块可以是预测单元(在下文中,称为“PU”),变换单元(在下文中,称为“TU”),或者编码单元(在下文中,称为“CU”)。
[0047]预测模块110包括执行帧间预测的帧间预测模块,和执行帧内预测的帧内预测模块。预测模块110可以对由图片分割模块105分割的图片的处理单元执行预测以构建预测块。在预测模块Iio中的图片的处理单元可以是⑶、TU或者PU。预测模块110可以确定对相应的处理单元执行的预测是帧间预测还是帧内预测,并且可以确定预测方法的特定细节(例如,预测模式)。经历预测的处理单元可以不同于确定预测方法和特定细节的处理单元。例如,可以在CU或者PU单元中确定预测方法和预测模式,并且可以在TU单元中执行预测。
[0048]在帧间预测中,可以基于有关当前图片的先前图片和/或后续图片的至少一个的信息执行预测以构建预测的块。在帧内预测中,可以基于当前图片的像素信息执行预测以构建预测的块。
[0049]跳跃模式、合并模式、运动矢量预测(MVP)等可以用作帧内预测方法。在帧间预测中,参考图片可以选择用于PU,并且可以选择具有与相同的大小的参考块。参考块可以以整数像素为单位选择。预测的块可以被构建,使得来自当前PU的残留信号被最小化,并且运动矢量的幅值被最小化。
[0050]预测的块可以以整数像素采样为单位,或者以小于整数像素的像素采样,诸如1/2像素采样和1/4像素采样为单位构建。在这里,运动矢量也可以以小于整数像素的像素采样为单位表示。例如,亮度像素可以以1/4像素为单位表示,并且色度像素可以以1/8像素为单位表示。
[0051]诸如经由帧间预测选择的参考图片的索引、运动矢量(例如,运动矢量预测值),和残留信号的信息,可以被熵编码,并且被发送给视频解码器。当使用跳跃模式时,预测的块可以用作重建的块,并且因此,残留信号不能被创建、转换、量化和发送。
[0052]当执行帧内预测时,预测模式可以在I3U的单元中确定,并且可以在I3U的单元中执行预测。做为选择,预测模式可以在PU的单元中确定,并且可以在TU的单元中执行帧内预测。
[0053]在帧内预测中,预测模块110可以确定PU的帧内预测模式,并且可以基于确定的帧内预测模式执行预测。在帧内预测中,预测模式可以包括33个方向的预测模式,和至少2个无方向的模式。无方向的模式可以包括DC预测模式和平面模式。[0054]在帧内预测中,在滤波器应用于参考采样之后,可以构建预测的块。此时,取决于当前块的帧内预测模式和/或当前块的大小,可以确定是否将滤波器应用于参考采样。
[0055]有关经由帧内预测选择的帧内预测模式的信息可以被熵编码,并且被发送给视频解码器。
[0056]可以是具有各种大小/形状的块。例如,在帧间预测的情况下,PU可以是2NX2N|fe、2NXN±夹、NX2N块或者NXN块(这里N是整数)。在帧内预测的情况下,PU可以是2NX2N块或者NXN块(这里N是整数)。具有NXN块大小的PU可以被设置为仅在特定的情形下使用。例如,具有NXN块大小的I3U可以被设置为仅供具有最小大小的CU使用,或者可以被设置为仅供帧内预测使用。除了以上提及的大小之外,可以另外定义和使用诸如 NXmN 块、mNXN 块、2NXmN 块,和 mNX2N 块(这里 m〈l)的 PU。
[0057]在构建的预测块和初始块之间的残留值(残留块或者残留信号)可以输入给变换模块115。用于预测的预测模式信息、运动矢量信息等可以通过熵编码模块130与残留值一起编码,并且可以发送给视频解码器。
[0058]变换模块115可以由变换单元对残留块执行变换操作,并且创建变换系数。在变换模块115中的变换单元可以是TU,并且可以具有四树结构。变换单元的大小可以在预先确定的最大和最小大小的范围内确定。变换模块115可以使用离散余弦变换(DCT)和/或离散正弦变换(DST)变换残留块。
[0059]量化模块120可以量化由变换模块115变换的残留值,并且可以创建量化系数。由量化模块120计算的值可以被提供给去量化模块135和重新排序模块125。
[0060]重新排序模块125可以重新排序从量化模块120提供的量化系数。通过重新排序该量化系数,可以提高在熵编码模块130中的编码效率。重新排序模块125可以通过使用系数扫描方法以二维块的形式到一维矢量的形式重新排序量化系数。重新排序模块125可以基于从量化模块发送的系数的随机统计,通过改变系数扫描顺序提高在熵编码模块130中的熵编码效率。
[0061]熵编码模块130可以对通过重新排序模块125重新排序的量化系数执行熵编码操作。熵编码方法的示例包括指数golomb方法、CAVLC(上下文自适应的可变长度编码)方法,和CABAC (上下文自适应的二进制运算编码)方法。熵编码模块130可以编码各种信息,诸如从重新排序模块125和预测模块110发送的⑶的量化系数信息和块类型信息、预测模式信息、分割单元信息、PU信息、传送单元信息、运动矢量信息、参考图片信息、块内插信息,和滤波信息。
[0062]熵编码模块130根据需要可以将预先确定的变化赋予给要发送的参数集或者语法。
[0063]当执行熵编码时,低索引值和与其对应的短的代码字可以分配给高发生频率的符号,并且高索引值和与其对应的长的代码字可以分配给低发生频率的符号。因此,可以降低用于要编码的符号的比特数,并且通过熵编码改善视频压缩性能。
[0064]去量化模块135去量化由量化模块120量化的值。逆变换模块140反向地变换由去量化模块135去量化的值。由去量化模块135和逆变换模块140创建的残留值可以与由预测模块110预测的预测的块合并以构建重建的块。
[0065]图1图示残留块和预测的块通过加法器相加以构建重建的块。在这里,加法器可以被认为是构建重建的块的特定的模块(重建的块构建模块)。
[0066]滤波器模块145可以将去块滤波器、采样自适应的偏移(SAO)和/或自适应循环滤波器(ALF)应用于重建的图片。
[0067]去块滤波可以在重建的图片中除去在块之间的边界处产生的块失真。SAO可以从原始视频中以像素为单位重建已经经历去块滤波器的残留块的偏移差,并且可以以频带偏移和边缘偏移的形式应用。ALF可以基于将原始图片与重建的图片(其块已经由去块滤波器和/或SAO滤波)比较的结果值执行滤波。只有当需要高效率时可以使用ALF。
[0068]另一方面,滤波器模块145可以不必对在帧间预测中使用的重建的块执行滤波。
[0069]存储器150可以存储重建的块或者由滤波器模块145计算的图片。存储在存储器150中的重建的块或者图片可以被提供给执行帧间预测的预测模块110。
[0070]图2是按照本发明的实施例示意地图示视频解码器的方框图。参考图2,视频解码器200可以包括熵解码模块210、重新排序模块215、去量化模块220、逆变换模块225、预测模块230、滤波器模块235,和存储器240。
[0071]当从编码器输入视频比特流时,可以基于视频信息由视频编码器处理的顺序解码该输入的比特流。
[0072]例如,当视频编码器使用可变长度编码(在下文中,称为“VLC”)方法,诸如CAVLC方法去执行熵编码操作时,熵解码模块210可以实现与在视频编码器中使用的VLC表相同的VLC表,并且可以执行熵解码操作。当视频编码器使用CABAC方法去执行熵编码处理时,熵解码模块210可以使用对应于其的CABAC方法执行熵解码操作。
[0073]在由熵解码模块210解码的信息当中的用于构建预的测块的信息可以提供给预测模块230,并且由熵解码模块210熵解码的残留值可以输入给重新排序模块215。
[0074]重新排序模块215可以基于在视频编码器中使用的重新排序方法重新排序由熵解码模块210熵解码的比特流。重新排序模块215可以将以一维矢量的形式表示的系数重建和重新排序为以二维块的形式的系数。重新排序模块215可以提供有与由视频编码器执行的系数扫描有关的信息,并且可以基于由视频编码器执行的扫描的扫描顺序使用反向地扫描系数的方法执行重新排序。
[0075]去量化模块220可以基于从视频编码器提供的量化参数和重新排序的块的系数值执行去量化。
[0076]逆变换模块225可以对来自视频编码器的量化结果执行已经由视频编码器的变换模块执行的DCT和/或DST的反DCT和/或反DST。该逆变换可以基于由视频编码器确定的图片的传输单元或者分割单元执行。该视频编码器的变换模块可以取决于多条信息,诸如预测方法、当前块的大小,和预测方向有选择地执行DCT和/或DST,并且该视频解码器的逆变换模块225可以基于有关由视频编码器的变换模块执行的变换的变换信息执行逆变换。
[0077]预测模块230可以基于从熵解码模块210提供的预测块结构信息,和从存储器240提供的预先地解码的块和/或图片信息构建预测的块。
[0078]当当前CU和/或PU的预测模式是帧内预测模式时,预测模块230可以基于当前图片的像素信息执行构建预测的块的帧内预测。此时,预测模块230可以确定PU的帧内预测模式,并且可以基于确定的帧内预测模式执行预测。在这里,当从视频编码器接收的帧内预测模式相关的信息被确认时,该帧内预测模式可以被导出以对应于帧内预测模式相关的信息。
[0079]当用于当前CU和/或PU的预测模式是帧间预测模式时,预测模块230可以基于包括在当前图片的先前图片和后续图片的至少一个中的信息,对当前PU执行帧间预测。此时,用于当前PU的帧间预测的运动信息,例如,从视频编码器提供的有关运动矢量和参考图片索引的信息可以从视频编码器接收的跳越标记、合并标记等导出。
[0080]重建的块可以使用由预测模块230构建的预测块和从逆变换模块225提供的残留块构建。图2图示残留块和预测块通过加法器相加以构建重建的块。在这里,加法器可以被认为是构建重建的块的特定的模块(重建的块构建模块)。
[0081]当使用跳跃模式时,不能被发送残留信号,并且预测的块可以被用作重建的块。
[0082]可以将重建的块和/或图片提供给滤波器模块235。滤波器模块235可以对重建的块和/或图片执行去块滤波、SAO操作和/或ALF操作。
[0083]存储器240可以存储供作为参考图片或者参考块使用的重建的图片或者块,并且可以将重建的图片提供给输出模块。
[0084]在以下的描述中,当前块可以是当前经历编码、解码和/或预测的块,并且可以是当执行编码、解码和/或预测时对应于处理单元的块。例如,当对当前块执行预测时,当前块可以是对应于当前预测单元的预测目标块。在以下的描述中,经由预测构建的块称为预测的块。
[0085]“单元”指的是当执行编码、解码和/或预测时的处理单元,并且可以不同于指示一组像素和/或采样的“块”。在以下的描述中,为了解释便利的目的,“单元”可以指的是对应于“单元”的“块”。例如,在以下的描述中,对应于一个预测单元的预测目标块可以称为预测单元,对应一个编码单元的编码/解码目标块可以称为编译单元。这种区别对于本领域技术人员来说是显而易见的。
[0086]图3是示意地图示在本发明并应用到的系统中的处理单元的四树结构的示例的示意图。
[0087]编译单元(CU)可以指的是图片经历编码/解码的单元。在编译目标图片中的一个编译块可以基于四树结构具有深度,并且可以被重复地划分。不再划分的编译块可以是编译单元,并且该视频编码器可以对编译单元执行编码操作。该编译单元可以具有各种大小,诸如 64X64,32X32,16X16 和 8X8。
[0088]在这里,基于四树结构重复地划分的编译块可以称为编译树块(CTB)。一个编译树块可以不被另外划分。在这种情况下,编译树块本身可以是一个编译单元。因此,编译树块可以对应于最大的编译单元(LCU),LCU是具有最大大小的编译单元。另一方面,在编译树块中具有最小大小的编译单元可以称为最小的编译单元(SCU)。
[0089]参考图3,编译树块300可以具有包括经由划分的较小的编译单元310的分层结构,并且编译树块300的分层结构可以基于大小信息、深度信息、划分标记信息等指定。编译树块的大小信息、划分深度信息和划分标记信息可以在它们被包括在序列参数集(SPS)的状态下,以比特流从视频编码器发送给视频解码器。
[0090]另一方面,可以确定将以编译单元为单位执行帧间预测和帧内预测的哪个。当执行帧间预测时,帧间预测模式和运动信息可以由预测单元确定。当执行帧内预测时,帧内预测模式可以由预测单元确定。此时,如上所述,通过其执行预测的处理单元,和通过其确定预测方法和特定细节的处理单元可以彼此相同或者不同。例如,预测方法和预测模式可以以预测单元为单位确定,并且可以以变换单元为单位执行预测。
[0091]参考图3,一个编码单元310可以用作一个预测单元,或者可以被划分为多个预测单元。在帧内预测320的情况下,编译单元(和/或预测单元)的划分模式可以是2NX2N或者NXN(这里N是整数)。在帧间预测330的情况下,编译单元(和/或预测单元)的划分模式可以是 2NX2N、2NXN、NX2N、NXN、2NXnU、2NXnD、nLX2N 或者 nRX2N(这里 N 是整数)。划分模式是一个示例,并且将编译单元划分为预测单元的方法不局限于该示例。例如,仅2NX2N、2NXN、NX 2N、NXN的四种类型可以在帧间预测330中用作编译单元(和/或预测单元)的划分模式,或者可以另外使用除了八种类型的划分模式之外的另一划分模式。
[0092]另一方面,如上参考图1和2所述,在帧内模式的情况下,预测模块可以基于在当前图片的重建区中的像素信息执行预测,并且可以构建当前块的预测的块。例如,预测模块可以使用在位于当前块的上侧、左侧、左上侧,和/或右上侧上的重建块中的像素预测在当前块中的像素值。
[0093]图4是示意地图示用于帧内预测的帧内预测模式的预测方向和分配给预测方向的预测模式编号的示例的示意图。
[0094]可以基于当前块的帧内预测模式执行帧内预测。用于帧内预测的各自的帧内预测模式可以具有预先确定的角度和/或预测方向,并且预先确定的预测模式编号可以被分配给每个帧内预测模式。帧内预测模式的示例可以取决于用于当前块的预测像素值的参考像素的位置和/或预测方法,包括包含垂直模式和水平模式的角度模式、DC模式和平面模式。
[0095]例如,参考在图4中的410,分配给平面模式的预测模式编号可以是0,并且分配给DC模式的预测模式编号可以是3。分配给垂直模式的预测模式编号可以是1,并且分配给水平模式的预测模式编号可以是2。取决于帧内预测模式的角度和/或预测方向,除垂直模式和水平模式以外的其它的预测模式编号可以分别地分配给角度模式。
[0096]例如,参考在图4中的420,分配给平面模式的预测模式编号可以是0,并且分配给DC模式的预测模式编号可以是I。分配给垂直模式的预测模式编号可以是26,并且分配给水平模式的预测模式编号可以是10。取决于帧内预测模式的角度和/或预测方向,其它的预测模式编号可以分别地分配给除垂直模式和水平模式以外的角度模式。
[0097]在垂直模式中,在垂直方向上使用在相邻于当前块的块中的像素值执行预测。在水平模式中,在水平方向上使用在相邻于当前块的块中的像素值执行预测。在DC模式中,固定值可以用作在当前块中的像素的预测值。在这里,例如,固定值可以通过对当前块的邻近像素值取平均推导。在平面模式中,位于当前块中的预测目标像素的预测值可以基于当前块的多个邻近像素的像素值经由预先确定的计算推导。此时,用于预测预测目标像素的多个像素可以取决于预测目标像素的位置被不同地确定。在除垂直模式和水平模式以外的其它角度模式中,可以取决于对于每个模式确定的角度和/或方向执行预测。
[0098]预测模块可以使用如在图4的410和420中图示的预先确定的预测方向和预先确定的预测模式编号。例如,可用于当前块的帧内预测模式的编号可以取决于当前块的大小变化。例如,可用于当前块的帧内预测模式的编号可以是预先确定的固定值。例如,可用于当前块的帧内预测模式的编号可以是35个。35个帧内预测模式可以包括平面模式、DC模式和角度模式(这里角度模式可以包括垂直模式和水平模式)。
[0099]帧内预测模式的预测方向和分配给帧内预测模式的预测模式编号不局限于以上提及的示例,并且根据需要,可以被确定为不同于图4的410和420。在以下的描述中,为了解释便利的目的,假设帧内预测基于具有在图4的410中图示的预测方向和预测模式编号的帧内预测模式执行,只要其被不同地提及。但是,本发明不局限于这种假设,并且当以不同的方式确定预测方向和预测模式编号时,可以应用在图4的420中图示的帧内预测模式,或者相同或者类似的方法。
[0100]在以下的描述中,为了解释便利的目的,预测模式编号可以称为模式编号或者模式值。
[0101]如上所述,在确定帧内预测模式之后,视频编码器可以对有关确定的帧内预测模式的信息进行编码,并且可以将编码的信息发送给视频解码器。有关帧内预测模式的信息可以作为本身指示预测模式的值发送,或者可以使用基于对于帧内预测模式预测的模式值发送帧内预测模式信息的方法,以便改善传输效率。在以下的描述中,用作当前块的帧内预测模式的预测值的预测模式称为最可能模式(MPM)。
[0102]图5是按照本发明示意地图示帧内预测模式信息发送方法示例的流程图。
[0103]参考图5,视频编码器可以构建MPM候选列表(S510)。构建MPM候选列表的过程可以由在图1图示的视频编码器的预测模块执行。
[0104]MPM候选列表可以包括多个MPM候选。也就是说,视频编码器可以基于相邻于当前块的多个邻近块的帧内预测模式推导多个MPM候选,并且可以将MPM候选分配给MPM候选列表。此时,视频编码器可以将邻近块的帧内预测模式本身作为与邻近块相对应的MPM候选使用,或者可以将取决于预先确定的条件确定的特定的帧内预测模式作为与邻近块相对应的MPM候选使用。
[0105]例如,当前块和邻近块可以是对应于PU的块。
[0106]可以将MPM索引值分配给构建MPM候选列表的多个MPM候选。例如,索引值O可以被分配给在MPM候选列表中的第一 MPM候选。索引值I可以被分配给在MPM候选列表中的第二 MPM候选。类似地,索引值η-1可以被分配给在MPM候选列表中的第η个MPM候选(这里η是自然数)。
[0107]在这里,“第η个MPM候选”可以是在MPM候选列表中位于第η个位置的MPM候选,或者可以是以第η个顺序分配给MPM候选列表的MPM候选。因此,可以考虑将相对小的索引值分配给在MPM候选列表中位于相对前面的MPM候选,或者相对早地分配给MPM候选列表的MPM候选。例如,索引值O可以被分配给第一 MPM候选,并且最大的索引值可以被分配给最后的MPM候选。在以下的描述中,为了解释便利的目的,在构建MPM候选列表的MPM候选当中,被分配了索引值η-1的MPM候选称为第η个MPM候选(这里η是自然数)。
[0108]另一方面,为了确保当推导MPM候选列表时分析鲁棒性,视频编码器可以确定包括在MPM候选列表中的MPM候选的数目是固定的。也就是说,视频编码器可以使用预先确定的固定数目的MPM候选以编码帧内预测模式。例如,构建MPM候选列表的MPM候选的数目可以固定为2个。例如,构建MPM候选列表的MPM候选的数目可以固定为3个。
[0109]当包括在MPM候选列表中的MPM候选的数目是固定时,推导与邻近块相对应的MPM候选的数目可以小于固定的数目。例如,假设包括在MPM候选列表中的MPM候选的数目固定为3个,并且两个邻近块用于推导MPM候选。此时,推导对应于邻近块的MPM候选的数目可以是2个。当两个邻近块的帧内预测模式彼此相同时,导出与邻近块相对应的MPM候选的数目可以是I个。在这种情况下,视频编码器可以确定另外的MPM候选,并且可以将确定的另外的MPM候选分配给MPM候选列表。在这里,除导出与邻近块相对应的MPM候选以外,另外导出的MPM候选可以从帧内预测模式中选择。
[0110]稍后将描述确定MPM候选的方法,和将MPM候选分配给MPM候选列表的方法的特定示例。
[0111]再次参考图5,视频编码器可以基于MPM候选列表产生有关帧内预测模式的信息,并且可以编码并发送该信息给视频解码器(S520)。产生有关帧内预测模式信息的过程例如可以由参考图1描述的视频编码器的预测模块执行。编码和发送帧内预测模式信息的过程例如可以由参考图1描述的视频编码器的熵编码模块执行。
[0112]视频编码器可以通过确定要用作当前块的帧内预测模式的MPM候选是否存在于构建MPM候选列表的多个MPM候选中,也就是说,帧内预测模式的预测值是否用作当前块的帧内预测模式,产生MPM标记信息。在这里,MPM标记可以是指定要用作当前块的帧内预测模式的MPM候选是否存在于构建MPM候选列表的多个MPM候选中的标记。例如,MPM标记可以由prev_intra_luma_pred_flag的语法元素表示。所产生的MPM标记信息可以由视频编码器的熵编码模块编码,并且可以发送给视频解码器。
[0113]当要用作当前块的帧内预测模式的MPM候选存在于MPM候选列表中时,视频编码器可以产生指示在构建MPM候选列表的多个MPM候选当中的要用作当前块的帧内预测模式的MPM候选的MPM索引信息。例如,MPM索引信息可以指示分配给要用作当前块的帧内预测模式的MPM候选的索引值。MPM索引信息例如可以由语法元素mpm_idx表示。所产生的MPM索引信息可以由视频编码器的熵编码模块编码,并且可以发送给视频解码器。
[0114]当要用作当前块的帧内预测模式的MPM候选在MPM候选列表中不存在时,视频编码器可以基于构建MPM候选列表的多个MPM候选和当前块的帧内预测模式,推导与当前块的帧内预测模式相对应的剩余模式。例如,剩余模式的模式值可以是通过从当前块的帧内预测模式的模式值中减去具有小于当前块的帧内预测模式的模式值的MPM候选的数目获得的值。剩余模式例如可以由语法元素rem_intra_luma_pred_mode表示。该导出的剩余模式可以由视频编码器的熵编码模块编码,并且可以发送给视频解码器。
[0115]图5示意地图示视频编码器的操作,以便考虑到与帧内预测模式有关的细节容易地理解本发明,但是,这是为了解释方便起见,并且在本发明中的视频编码器的操作可以包括参考图1描述的所有操作。
[0116]图6是按照本发明示意地图示帧内预测方法的示例的流程图。
[0117]参考图6,视频解码器可以从视频编码器接收帧内预测模式信息,并且可以解码接收到的信息(S610)。解码过程例如可以由参考图2描述的视频解码器的熵解码模块执行。从视频编码器接收到的帧内预测模式信息可以包括MPM标记信息、MPM索引信息,和/或剩余模式信息。
[0118]参考图6,视频解码器可以构建MPM候选列表(S620)。
[0119]视频解码器可以以与视频编码器中相同的方法推导MPM候选,并且可以构建MPM候选列表。构建MPM候选列表的过程可以由在图2图示的视频解码器的预测模块执行。
[0120]MPM候选列表可以包括多个MPM候选。也就是说,视频解码器可以基于相邻于当前块的多个邻近块的帧内预测模式导出多个MPM候选,并且可以将MPM候选分配给MPM候选列表。此时,视频解码器可以将邻近块的帧内预测模式本身用作与外围块相对应的MPM候选,或者可以将取决于预先确定的条件确定的特定的帧内预测模式用作与邻近块相对应的MPM候选。例如,当前块和邻近块可以是对应于I3U的块。
[0121]与MPM候选列表的构建有关的特定细节与在参考图5描述的视频编码器中构建MPM候选列表的过程相同,并且因此,其特定描述将不重复。稍后将描述确定MPM候选的方法,和将MPM候选分配给MPM候选列表的方法的特定示例。
[0122]再次参考图6,视频解码器可以基于MPM候选列表和帧内预测模式信息推导当前块的帧内预测模式(S630)。导出帧内预测模式的过程例如可以由参考图2描述的视频解码器的预测模块执行。
[0123]视频解码器可以基于从视频编码器接收的MPM标记信息确定要用作当前块的帧内预测模式的MPM候选是否存在于构建MPM候选列表的多个MPM候选中。MPM标记信息如上参考图5所述,并且因此,其特定描述将不重复。
[0124]当要用作当前块的帧内预测模式的MPM候选存在于MPM候选列表中时,视频解码器可以确定由MPM索引信息指示的MPM候选是当前块的帧内预测模式。MPM索引信息如上参考图5所述,并且因此,其特定描述将不重复。
[0125]当要用作当前块的帧内预测模式的MPM候选在MPM候选列表中不存在时,视频解码器可以基于MPM候选列表和从视频编码器接收的剩余模式,推导当前块的帧内预测模式。例如,假设构建MPM候选列表的MPM候选的数目是N (这里N是自然数),并且MPM候选的模式值是模式1、模式2、…、模式N。此外,当X较小时被采用,那么,较小值被分配给模式X。当X是在I至N-1的范围 中,并且剩余模式的模式值等于或者大于模式X-(X-1),并且小于模式(X+D-X时,当前块的帧内预测模式值可以被确定为是通过将X加到剩余模式的模式值获得的值。当X等于N,并且剩余模式的模式值等于或者大于模式N-(N-1)时,当前块的帧内预测模式值可以被确定为是通过将N加到剩余模式的模式值获得的值。
[0126]再次参考图6,视频解码器可以基于当前块的帧内预测模式通过对当前块执行帧内预测,构建对应于当前块的预测块(S640)。
[0127]图6示意地图示视频解码器的操作,以便考虑到与帧内预测模式有关的细节容易地理解本发明,但是,这是为了解释方便起见,并且在本发明中的视频解码器的操作可以包括参考图2描述的所有操作。
[0128]图7是图示确定MPM候选和构建MPM候选列表过程的示例的示意图。
[0129]如上所述,视频编码器和视频解码器的预测模块可以基于相邻于当前块的多个邻近块的帧内预测模式推导多个MPM候选,并且可以将MPM候选分配给MPM候选列表。
[0130]图7的710图示用于推导MPM候选的邻近块的示例。
[0131]参考图7的710,相邻于当前块的左侧的左邻近块(块A)和相邻于当前块的上侧的上邻近块(块B)可用于推导MPM候选。在这里,当前块可以是当前预测的块,并且可以是对应于I3U的块。块A和块B可以是对应于I3U的块。
[0132]图7的720图示用于导出 MPM候选的邻近块的示例。[0133]用于推导MPM候选的当前块和块A和块B可以具有与在图7的710中图示的相同的大小,但是,可以具有不同的大小。例如,如在图7的720中图示的,相邻于当前块的左侧和/或上侧的块的大小可以不同于当前块的大小。在这种情况下,位于相邻于当前块的左侧和/或上侧的块的数目可以是一个或多个。
[0134]参考图7的720,位于相邻于当前块的左侧块的最上面位置的块(块A),和位于相邻于当前块的上侧块的最左位置的块(块B)可用于推导MPM候选。在这里,当前块可以是当前预测的块,并且可以是对应于PU的块。块A和块B可以是对应于PU的块。
[0135]在图7的710和720中,块A和块B可以被指定为属于块A的像素和属于块B的像素的位置。属于块A的像素的位置和属于块B的像素的位置例如可以确定为在当前块中相对于最左上像素的位置。例如,在当前块中最左上像素的位置被假设为(xB,yB)。此时,块A可以指定为对应于(xB-1,yB)的像素的位置,并且块B可以指定为对应于(xB,yB-1)的像素的位置。
[0136]在以下的示例中,如在图7的710和720中,将描述基于相邻于当前块的左侧的块,和相邻于当前块的上侧块推导MPM候选和构建MPM候选列表的过程。在以下的描述中,为了解释便利的目的,相邻于当前块的左侧块称为“块A”,并且相邻于当前块的上侧块称为“块B”。在图7图示的示例中,块A和块B在一些情况下可以称为邻近块。
[0137]在块A和块B当中的经历使用帧内模式编码/解码过程的块可以具有帧内预测模式。在以下的描述中,为了解释便利的目的,块A的帧内预测模式称为“模式A”,并且块B的帧内预测模式称为“模式B”。
[0138]当前块的MPM候选可以基于模式A (其是块A的帧内预测模式)和模式B (其是块B的帧内预测模式)推导。此时,预测模块可以确定对应于块A的MPM候选和对应于块B的MPM候选,并且必要时,可以确定另外的MPM候选。
[0139]例如,推导以对应于块A的MPM候选可以是块A的帧内预测模式,并且推导以对应于块B的MPM候选可以是块B的帧内预测模式。但是,除块A的帧内预测模式以外,对应于块A的MPM候选可以被确定为是预先确定的帧内预测模式,并且除块B的帧内预测模式以夕卜,对应于块B的MPM候选可以被确定为是预先确定的巾贞内预测模式。
[0140]在以下的描述中,推导对应于块A的MPM候选称为“MPM候选A”,并且推导对应于块B的MPM候选称为“MPM候选B”。
[0141]例如,在图7中,MPM候选A可以被确定为是模式A,并且MPM候选B可以被确定为是模式B。当模式A和模式B彼此相同时,分配给MPM候选列表的MPM候选的数目可以是一个。在这种情况下,一个MPM候选可以用作当前块的帧内预测模式的预测值。当模式A和模式B彼此不同时,分配给MPM候选列表的MPM候选的数目可以是两个。在这种情况下,视频编码器可以编码指示要用作当前块的帧内预测模式的MPM候选的MPM索引信息,并且可以将编码的信息发送给视频解码器。视频解码器可以确定要用作当前块的帧内预测模式的MPM候选是模式A还是模式B。
[0142]另一方面,如上所述,为了确保当推导MPM候选列表时分析鲁棒性,预测模块可以确定MPM候选的数目是恒定的。也就是说,预测模块可以使用预先确定的固定数目的MPM候选来编码/解码帧内预测模式。例如,构建MPM候选列表的MPM候选的数目可以固定为2个。例如,构建MPM候选列表的MPM候选的数目可以固定为3个。[0143]下面将描述当构建MPM候选列表的MPM候选的数目固定为2个时,导出MPM候选和构建MPM候选列表的方法的示例。
[0144]在示例中,当模式A和模式B两者是不可用时,预测模块可以确定分配给MPM候选列表的第一 MPM候选是平面模式(例如,当如在图4的410中分配预测模式数目时,平面模式的模式值可以是O),并且可以确定分配给MPM候选列表的第二 MPM候选是DC模式(例如,当如在图4的410中分配预测模式数目时,DC模式的模式值可以是3)。在这里,例如,在确定MPM候选A是平面模式,并且确定MPM候选B是DC模式之后,预测模块可以将MPM候选A和MPM候选B分配给MPM候选列表。在另一个示例中,预测模块可以确定MPM候选A和MPM候选B的任何一个是不可用的,并且可以将平面模式和DC模式作为另外的MPM候选分配给MPM候选列表。
[0145]模式A和模式B是不可用的情形可以包括邻近块位于当前图片和/或当前片段的外部的情形,和邻近块的预测模式不是帧内预测模式的情形。
[0146]当模式A和模式B中的仅一个是可用时,预测模块可以确定与具有不可用模式的邻近块相对应的MPM候选是平面模式,或者可以确定与具有不可用模式的邻近块相对应的MPM候选是不可用的,并且可以将平面模式确定为另外的MPM候选。此时,例如,预测模块可以将平面模式作为第一 MPM候选分配给MPM候选列表,并且可以将在模式A和模式B当中的可用的帧内预测模式作为第二 MPM候选分配给MPM候选列表。在这里,当模式A和模式B的可用的帧内预测模式是平面模式时,DC模式可以被作为第二 MPM候选分配给MPM候选列表以便避免冗余。
[0147]当模式A和模式B两者是可用的,并且模式A和模式B彼此相同时,预测模块可以将平面模式确定为另外的MPM候选。当模式A和模式B两者是可用的时,模式A可以被确定为是MPM候选A,并且模式B可以被确定为是MPM候选B。由于模式A和模式B彼此相同,MPM候选A和MPM候选B可以彼此相同。
[0148]此时,例如,预测模块可以将平面模式作为第一 MPM候选分配给MPM候选列表,并且可以将模式A (和/或MPM候选A)和/或模式B (和/或MPM候选B)作为第二 MPM候选分配给MPM候选列表。在这里,当模式A (和/或MPM候选A)和/或模式B (和/或MPM候选B)是平面模式时,DC模式可以被作为第二 MPM候选分配给MPM候选列表以便避免冗余。
[0149]当模式A和模式B两者是可用的,并且模式A和模式B彼此不同时,预测模块可以将模式A和模式B作为MPM候选分配给MPM候选列表。当模式A和模式B两者是可用时,如上所述,模式A可以被确定为是MPM候选A,并且模式B可以被确定为是MPM候选B。此时,例如,在模式A(和/或MPM候选A)和/或模式B(和/或MPM候选B)当中的具有较小模式值的帧内预测模式可以被确定为第一 MPM候选,并且在模式A (和/或MPM候选A)和/或模式B (和/或MPM候选B)当中的具有较大模式值的帧内预测模式可以被确定为第二MPM候选。
[0150]在另一个示例中,当模式A和模式B两者是可用的,并且模式A和模式B彼此不同时,预测模块可以将模式A (和/或MPM候选A)和/或模式B (和/或MPM候选B)分配给在MPM候选列表中的预先确定的固定位置。也就是说,当模式A和模式B用作MPM候选时,分配给模式A (和/或MPM候选A)和/或模式B (和/或MPM候选B)的MPM索引值可以是预先确定的固定值。例如,该预测模块可以将模式A(和/或MPM候选A)作为第一 MPM候选分配给MPM候选列表,并且可以将模式B (和/或MPM候选B)作为第二 MPM候选分配给MPM候选列表。在这种情况下,可以将索引值O分配给模式A (和/或MPM候选A),并且可以将索引值I分配给模式B (和/或MPM候选B)。在另一个示例中,该预测模块可以将模式B (和/或MPM候选B)作为第一 MPM候选分配给MPM候选列表,并且可以将模式A (和/或MPM候选A)作为第二 MPM候选分配给MPM候选列表。在这种情况下,可以将索引值O分配给模式B (和/或MPM候选B),并且可以将索引值I分配给模式A (和/或MPM候选A)。
[0151 ] 当模式A (和/或MPM候选A)和/或模式B (和/或MPM候选B)被分配给在MPM候选列表中预先确定的固定位置时,与在模式A (和/或MPM候选A)和/或模式B (和/或MPM候选B)当中的具有较小模式值的帧内预测模式被确定为是第一 MPM候选的情形相比,视频编码器和视频解码器的计算负荷可以降低。这是因为比较模式A (和/或MPM候选A)的模式值和/或模式B (和/或MPM候选B)的模式值的计算操作能够被去除。
[0152]在另一个示例中,当推导其MPM候选的数目固定为2个的MPM候选列表时,预测模块可以将第一 MPM候选固定为平面模式。也就是说,分配给MPM候选列表的第一 MPM候选可以始终被确定为平面模式。此时,作为第一 MPM候选的分配给平面模式的MPM索引值可以是O。
[0153]此时,例如,预测模块可以将模式A作为第二 MPM候选分配给MPM候选列表。当模式A是不可用的,或者是平面模式时,该预测模块可以将模式B作为第二 MPM候选分配给MPM候选列表。当模式B也是不可用的,或者是平面模式时,可以将DC模块作为第二 MPM候选分配给MPM候选列表。可以将MPM索引值I分配给作为第二 MPM候选分配的帧内预测模式。在这种情况下,与以上提及的示例相比,检查模式B的可用性的过程的发生频率可以被降低。由于不需要比较模式A的模式值和模式B的模式值,可以在视频编码器和视频解码器中降低复杂度。
[0154]在另一个示例中,当第一 MPM候选被固定为平面模式时,该预测模块可以将模式A作为第二 MPM候选分配给MPM候选列表。在这种情况下,当模式A是不可用的,或者是平面模式时,预测模块可以将DC模式作为第二 MPM候选分配给MPM候选列表,代替参考模式B。在这种情况下,由于不需要检查模式B的可用性,与以上提及的示例相比,可以在视频编码器和视频解码器中降低复杂度。
[0155]在另一个示例中,当第一 MPM候选被固定为平面模式时,该预测模块可以将最后编码或者最后解码的块的帧内预测模式作为第二 MPM候选分配给MPM候选列表,代替参考模式A或者模式B。当最后编码或者最后解码的块的帧内预测模式是不可用的,或者是平面模式时,DC模式可以被作为第二 MPM候选分配给MPM候选列表。在这里,最后编码或者最后解码的块的帧内预测模式是不可用的情形可以包括该块是以帧间模式编码或者解码的块的情形。最后编码或者最后解码的块例如可以是PU。在这种情况下,由于不需要检查模式A的可利用性和模式B的可利用性,可以在视频编码器和视频解码器中降低复杂度。
[0156]另一方面,在以上提及的示例中,假设构建MPM候选列表的MPM候选的数目被固定为2个,但是,本发明不局限于这些示例。例如,导出MPM候选的过程和将导出的MPM候选分配给MPM候选列表的过程可以同等地或者类似地适用于构建MPM候选列表的MPM候选的数目被固定为3个的情形。在这里,在以上提及的示例中导出两个MPM候选。因此,当构建MPM候选列表的MPM候选的数目被固定为3时,除了两个MPM候选之外,可以进一步推导另外的MPM候选。在这里,另外导出的MPM候选的示例包括平面模式、DC模式和垂直模式。
[0157]在下面将描述当构建MPM候选列表的MPM候选的数目被固定为3个的时候时,导出MPM候选和构建MPM候选列表的方法的例。在下面描述的构建MPM候选列表的过程可以由视频编码器和/或视频解码器的预测模块执行。
[0158]当MPM候选的数目被固定为3个时,构建MPM候选列表的方法可以以各种方面实施。在以下描述的示例中没有描述用于实施各种方面的所有可能的组合,但是,本领域技术人员应该理解其它的组合是可能的。
[0159]首先,预测模块可以基于相邻于当前块左侧的块A确定对应于块A的MPM候选A,并且可以基于相邻于当前块的上侧的块B确定对应于块B的MPM候选B。
[0160]如上所述,预测模块可以将邻近块本身(例如,块A或者块B)的帧内预测模式用作与邻近块相对应的MPM候选,但是,可以将取决于预先确定的条件确定的特定的帧内预测模式用作与邻近块相对应的MPM候选。
[0161]例如,当邻近块(例如,块A或者块B)是位于当前块所属的当前片段和/或当前图片的外部的块时,邻近块的帧内预测模式是不可用的。因此,在这种情况下,预测模块可以将与邻近块相对应的MPM候选设置为DC模式。例如,当块A是位于当前图片和/或当前片段的外部的块时,MPM候选A可以被设置为DC模式。当块B是位于当前图片和/或当前片段的外部的块时,MPM候选B可以被设置为DC模式。
[0162]当邻近块(例如,块A或者块B)的预测模式不是帧内模式时,也就是说,当邻近块不是使用帧内模式编码或者解码的块时,邻近块可以不必具有帧内预测模式信息。因此,在这种情况下,该预测模块可以将与邻近块相对应的MPM候选设置为DC模式。例如,当块A的预测模式不是帧内模式时,MPM候选A可以被设置为DC模式。当块B的预测模式不是帧内模式时,MPM候选B可以被设置为DC模式。
[0163]当相邻于当前块的上侧的块B位于当前块所述的编译树块(CTB)的外部时,与块B相对应的MPM候选B可以被设置为DC模式。
[0164]另外,与邻近块(例如,块A或者块B)相对应的MPM候选可以被确定为是邻近块的帧内预测模式。例如,MPM候选A可以被设置为模式A (其是块A的帧内预测模式),并且MPM候选B可以被设置为模式B (其是块B的帧内预测模式)。
[0165]当MPM候选A和MPM候选B经由以上提及的过程确定时,基于所确定的MPM候选该预测模块可以构建MPM候选列表。
[0166]例如,MPM候选A和MPM候选B可以彼此相同。在这里,当MPM候选A是平面模式或者DC模式时,该平面模式可以被作为第一 MPM候选分配给MPM候选列表,DC模式可以被作为第二 MPM候选分配,并且垂直模式可以被作为第三MPM候选分配。此时,可以将MPM索引值O分配给平面模式,可以将MPM索引值I分配给DC模式,并且可以将MPM索引值2分配给垂直模式。
[0167]当MPM候选A和MPM候选B彼此相同,并且MPM候选A既不是平面模式,也不是DC模式时,MPM候选A可以被作为第一 MPM候选分配给MPM候选列表,并且具有最类似或者相邻于MPM候选A的预测方向的预测方向的两个帧内预测模式可以作为第二和第三MPM候选被分配给MPM候选列表。此时,MPM索引值O可以被分配给MPM候选A,并且MPM索引值I和2可以被分配给第二和第三MPM候选。[0168]在另一个示例中,MPM候选A和MPM候选B可以彼此不同。在这种情况下,预测模块可以将MPM候选A和MPM候选B分配给在MPM候选列表中的预先确定的固定位置。也就是说,分配给MPM候选A和MPM候选B的MPM索引值可以是预先确定的固定值。如上所述,当MPM候选A和MPM候选B被分配给在MPM候选列表中的预先确定的固定位置时,比较MPM候选A和MPM候选B的模式值的计算操作能够被去除,并且从而可以降低复杂度。
[0169]例如,预测模块可以将MPM候选A作为第一 MPM候选分配给MPM候选列表,并且可以将MPM候选B作为第二 MPM候选分配给MPM候选列表。此时,索引值O可以被分配给MPM候选A,并且索引值I可以被分配给MPM候选B。
[0170]当MPM候选A和MPM候选B彼此不同时,预测模块可以将另外的帧内预测模式作为第三MPM候选分配给MPM候选列表。此时,索引值2可以分配给另外分配的第三MPM候选。
[0171]例如,当MPM候选A和MPM候选B的任何一个不是平面模式时,作为第三MPM候选被另外分配给MPM候选列表的帧内预测模式可以是平面模式。另外(当MPM候选A和MPM候选B的一个是平面模式时),当MPM候选A和MPM候选B的任何一个不是DC模式时,作为第三MPM候选另外分配给MPM候选列表的帧内预测模式可以是DC模式。否则(当MPM候选A和MPM候选B的一个是平面模式,并且另一个是DC模式时),作为第三MPM候选另外分配给MPM候选列表的帧内预测模式可以是垂直模式。
[0172]在以上提及的示例中,例如,当被如在图4的420中分配预测模式编号时,平面模式的模式值可以是0,DC模式的模式值可以是1,并且垂直模式的模式值可以是26。
[0173]在以上提及的示例中构建MPM候选列表的过程可以类似地适用于视频编码器和视频解码器。当构建MPM候选列表时,所构建的MPM候选列表可用于产生如上所述的帧内预测模式信息。由视频解码器构建的MPM候选列表可用于确定如上参考图6所述的当前块的帧内预测模式。
[0174]图8是按照本发明示意地图示发送帧内预测模式信息的视频编码器示例的方框图。
[0175]在图8图示的示例中,视频编码器800可以包括预测模块810和熵编码模块820。预测模块可以进一步包括MPM候选列表构建模块813和帧内预测模式信息产生模块816。
[0176]在图8图示的示例中,构建MPM候选列表的过程,和产生帧内预测模式信息的过程被描述为由不同的元件执行,但是,这些意欲为了解释和理解本发明方便起见,并且本发明不局限于这种配置。例如,构建MPM候选列表的过程和产生帧内预测模式信息的过程可以是由预测模块执行的一系列过程的一部分。此外,MPM候选列表构建模块813和/或帧内预测模式信息产生模块816可以作为独立的元件被包括在视频编码器中。
[0177]参考图8,MPM候选列表构建模块813可以构建包括多个MPM候选的MPM候选列表。
[0178]MPM候选列表构建模块813可以基于相邻于当前块的至少一个邻近块的帧内预测模式导出至少一个MPM候选,并且可以将导出的MPM候选分配给MPM候选列表。此时,MPM候选列表构建模块813可以将邻近块的巾贞内预测模式用作与邻近块相对应的MPM候选,或者可以将取决于预先确定的条件确定的特定的帧内预测模式用作与邻近块相对应的MPM候选。例如,当前块和邻近块可以是对应于PU的块。[0179]构建MPM候选列表的过程的示例如上面参考图5至7所述,并且因此,其具体描述在此处将不重复。
[0180]再次参考图8,巾贞内预测模式信息产生模块816可以基于MPM候选列表产生有关中贞内预测模式的信息。
[0181]由帧内预测模式信息产生模块816产生的帧内预测模式信息可以包括MPM标记信息、MPM索引信息,和剩余模式信息。由视频编码器产生的帧内预测模式信息的具体示例如面上参考图5所述,并且因此,其具体描述在此处将不重复。
[0182]再次参考图8,熵编码模块820可以对帧内预测模式信息执行熵编码操作。熵编码模块820可以将熵编码的信息发送给视频解码器。在这里,该发送过程被描述为由熵编码模块820执行,但是,这意欲为了解释方便起见,并且本发明不局限于这种配置。例如,该发送过程可以由被包括作为视频编码器中的特定模块的传输模块执行。
[0183]图8示意地图示视频编码器的操作和元件,以便考虑到与帧内预测模式有关的细节容易地理解本发明,但是,这是为了解释方便起见,并且在本发明中的视频编码器的操作和元件可以包括参考图1描述的所有操作和元件。
[0184]图9是按照本发明示意地图示执行帧内预测的视频解码器的示例的方框图。
[0185]在图9图示的示例中,视频解码器900可以包括熵解码模块910和预测模块920。预测模块可以进一步包括MPM候选列表构建模块923、帧内预测模式确定模块926,和预测块构建模块929。
[0186]在图9图示的示例中,构建MPM候选列表的过程、确定帧内预测模式的过程,和构建预测块的过程被描述为由不同的元件执行,但是,这是为了解释和理解本发明方便起见,并且本发明不局限于这种配置。例如,构建MPM候选列表的过程、确定帧内预测模式的过程,和构建预测块的过程可以是由预测模块执行的一系列过程的一部分。此外,MPM候选列表构建模块923和/或帧内预测模式确定模块926可以作为单独的元件包括在视频解码器中。
[0187]参考图9,熵解码模块910可以从视频编码器接收有关帧内预测模式的信息,并且可以对接收到的信息进行熵解码。从视频编码器接收到的帧内预测模式信息可以包括MPM标记信息、MPM索引信息,和/或剩余模式信息。在这里,该接收过程被描述为由熵解码模块910执行,但是,这是为了解释方便起见,并且本发明不局限于这种配置。例如,该接收过程可以由被包括的作为视频解码器中的特定元件的接收模块执行。
[0188]再次参考图9,MPM候选列表构建模块923可以构建包括多个MPM候选的MPM候选列表。此时,MPM候选列表构建模块923可以导出MPM候选,并且可以以与在视频编码器中相同的方式构建MPM候选列表。
[0189]MPM候选列表构建模块923可以基于相邻于当前块的至少一个邻近块的帧内预测模式导出至少一个MPM候选,并且可以将导出的MPM候选分配给MPM候选列表。此时,MPM候选列表构建模块923可以将邻近块的帧内预测模式用作与邻近块相对应的MPM候选,或者可以将取决于预先确定的条件确定的特定的帧内预测模式用作与邻近块相对应的MPM候选。例如,当前块和邻近块可以是对应于PU的块。
[0190]构建MPM候选列表的过程的示例与在视频编码器中相同,并且如上参考图5至7所述,并且因此,其具体描述在此处将不重复。[0191]再次参考图9,帧内预测模式确定模块926可以基于MPM候选列表和帧内预测模式信息确定当前块的帧内预测模式。
[0192]帧内预测模式确定模块926可以基于从视频编码器接收到的MPM标记信息确定要用作当前块的帧内预测模式的MPM候选是否存在于包括在MPM候选列表中的多个MPM候选中。当要用作当前块的帧内预测模式的MPM候选存在于MPM候选列表中时,帧内预测模式确定模块926可以确定由MPM索引信息指示的MPM候选是当前块的帧内预测模式。当要用作当前块的帧内预测模式的MPM候选在MPM候选列表中不存在时,帧内预测模式确定模块926基于MPM候选列表和从视频编码器接收到的剩余模式信息可以确定当前块的帧内预测模式。
[0193]再次参考图9,预测块构建模块929可以基于当前块的帧内预测模式,通过对当前块执行帧内预测构建与当前块相对应的预测块。
[0194]图9示意地图示视频解码器的操作和元件,以便考虑到与帧内预测模式有关的细节容易地理解本发明,但是,这是为了解释方便起见,并且在本发明中的视频解码器的操作和元件可以包括参考图2描述的所有操作和元件。
[0195]虽然已经基于作为一系列的步骤或者块的流程图描述以上提及的实施例中的方法,本发明不局限于该步骤的顺序,并且某个步骤可以以除如上所述以外的顺序或者如上所述同时执行。以上提及的实施例包括各种示例。因此,本发明包括所附的权利要求所属的所有的替换、修正和改进。
[0196]当在上面提及一个元件“连接到”或者“耦合到”另一个元件时,应该理解,在其间可以插入再一个元件,以及该元件可以直接耦合或者连接到另一个元件。相反地,当提及一个元件“直接连接到”或者“直接耦合到”另一个元件时,应该理解,在其间没有插入再一个元件。
【权利要求】
1.一种视频解码方法,包括步骤: 接收和解码指示要用作当前块的帧内预测模式的最可能模式(MPM)候选的MPM索引信息; 构建包括用于所述当前块的多个MPM候选的MPM候选列表; 将在构建所述MPM候选列表的多个MPM候选当中的由解码的MPM索引信息指示的所述MPM候选确定为所述当前块的帧内预测模式;以及 通过基于确定的帧内预测模式对所述当前块执行帧内预测,构建对应于所述当前块的预测块, 其中,构建所述MPM候选列表包括: 确定与相邻于所述当前块的左侧的重建的第一块相对应的第一 MPM候选,和与所述当前块的上侧的重建的第二块相对应的第二 MPM候选,以及 将所述第一 MPM候选和所述第二 MPM候选的至少一个设置到在所述MPM候选列表中的预先确定的固定位置。
2.根据权利要求1所述的视频解码方法,其中,构建所述MPM候选列表包括:将所述第一 MPM候选确定为所述第一块的帧内预测模式,和将所述第二 MPM候选确定为所述第二块的帧内预测模式。
3.根据权利要求1所述的视频解码方法,其中,构建所述MPM候选列表包括:当第一块是不可用的时侯,将所述第一MPM候选确定为DC模式,以及当所述第二块是不可用的时侯,将所述第二 MPM候选确定为DC模式。`
4.根据权利要求3所述的视频解码方法,其中,构建所述MPM候选列表包括:当所述第一块位于当前图片或者当前片段的外部时,确定所述第一块是不可用的,并且当所述第二块位于当前图片或者当前片段的外部时,确定所述第二块是不可用的,以及 其中,所述当前图片是所述当前块所属的图片,并且所述当前片段是所述当前块所属的片段。
5.根据权利要求3所述的视频解码方法,其中,构建所述MPM候选列表包括:当所述第一块不是以帧内模式解码的块时,确定所述第一块是不可用的,以及当所述第二块不是以帧内模式解码的块时,确定所述第二块是不可用的。
6.根据权利要求1所述的视频解码方法,其中构建MPM候选列表包括:当所述第一MPM候选和所述第二 MPM候选彼此不相同时,将所述第一 MPM候选设置到在所述MPM候选列表中的第一位置,并且将所述第二 MPM候选设置到在所述MPM候选列表中的第二位置。
7.根据权利要求6所述的视频解码方法,其中索引值O被分配给被设置到所述MPM候选列表中的所述第一位置的第一 MPM候选,并且索引值I被分配给被设置到所述MPM候选列表中的所述第二位置的第二 MPM候选。
8.根据权利要求6所述的视频解码方法,其中所述MPM候选列表包括三个MPM候选。
9.根据权利要求8所述的视频解码方法,其中构建所述MPM候选列表包括: 当所述第一 MPM候选和所述第二 MPM候选中的任何一个不是平面模式时,将平面模式作为第三MPM候选设置到在MPM候选列表中的第三位置, 当第一 MPM候选和第二 MPM候选的一个是平面模式,并且第一 MPM候选和第二 MPM候选的任何一个不是DC模式时,将DC模式作为第三MPM候选设置到在MPM候选列表中的第三位置,和 当第一 MPM候选和第二 MPM候选的一个是平面模式,并且另一个是DC模式时,将垂直模式作为第三MPM候选设置到在MPM候选列表中的第三位置。
10.根据权利要求9所述的视频解码方法,其中索引值2被分配给在MPM候选列表中被设置到第三位置的第三MPM候选。
11.一种视频解码器,包括: 熵解码模块,所述熵解码模块接收和解码指示要用作当前块的帧内预测模式的最可能模式(MPM)候选的MPM索引信息; 帧内预测模式确定模块,所述帧内预测模式确定模块构建包括用于所述当前块的多个MPM候选的MPM候选列表,并且将在构建MPM候选列表的多个MPM候选当中的由解码的MPM索引信息指示的MPM候选确定为所述当前块的帧内预测模式;以及 预测块构建模块,所述预测块构建模块通过基于确定的帧内预测模式对当前块执行帧内预测,构建与所述当前块相对应的预测块, 其中,所述帧内预测模式确定模块确定与相邻于所述当前块的左侧的重建的第一块相对应的第一 MPM候选,和与相邻 于所述当前块的上侧的重建的第二块相对应的第二 MPM候选,以及 将所述第一 MPM候选和所述第二 MPM候选的至少一个设置到在所述MPM候选列表中的预先确定的固定位置。
12.根据权利要求11所述的视频解码器,其中,所述帧内预测模式确定模块将所述第一 MPM候选确定为所述第一块的帧内预测模式,以及将所述第二 MPM候选确定为所述第二块的帧内预测模式。
13.根据权利要求11所述的视频解码器,其中,当所述第一块是不可用的时侯,所述帧内预测模式确定模块将第一 MPM候选确定为DC模式,并且当所述第二块是不可用的时侯,将所述第二 MPM候选确定为DC模式。
14.根据权利要求11所述的视频解码器,其中当所述第一MPM候选和所述第二 MPM候选彼此不相同时,所述帧内预测模式确定模块将所述第一 MPM候选设置到在所述MPM候选列表中的第一位置,并且将所述第二 MPM候选设置到在所述MPM候选列表中的第二位置。
15.根据权利要求14所述的视频解码器,其中索引值O被分配给被设置到在所述MPM候选列表中的第一位置的所述第一 MPM候选,并且索引值I被分配给被设置到在所述MPM候选列表中的第二位置的所述第二 MPM候选。
16.根据权利要求14所述的视频解码器,其中,所述MPM候选列表包括三个MPM候选。
17.根据权利要求16所述的视频解码器,其中,所述帧内预测模式确定模块: 当所述第一 MPM候选和所述第二 MPM候选中的任何一个不是平面模式时,将平面模式作为第三MPM候选设置到在所述MPM候选列表中的第三位置, 当所述第一 MPM候选和所述第二 MPM候选中的一个是平面模式,并且所述第一 MPM候选和所述第二 MPM候选中的任何一个不是DC模式时,将DC模式作为第三MPM候选设置到在MPM候选列表中的第三位置,以及 当所述第一 MPM候选和所述第二 MPM候选的一个是平面模式,并且另一个是DC模式时,将垂直模式作为第三MPM候选设置到在所述MPM候选列表中的第三位置。
18.根据权利要求17所述的视频解码器,其中索引值2被分配给被设置到在MPM候选列表中的第三位置的所 述第三MPM候选。
【文档编号】H04N19/593GK103891283SQ201280052067
【公开日】2014年6月25日 申请日期:2012年12月5日 优先权日:2011年12月5日
【发明者】朴俊永, 全柄文, 全勇俊, 朴胜煜, 金廷宣, 林宰显, 亨得利·亨得利, 朴奈利, 金哲瑾 申请人:Lg电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1