掌桥专利:专业的专利平台
掌桥专利
首页

视频解码方法、视频编码方法及存储介质

文献发布时间:2024-04-18 20:02:18


视频解码方法、视频编码方法及存储介质

本申请是原案申请号为201980006033.8的发明专利申请(国际申请号:PCT/KR2019/013072,申请日:2019年10月4日,发明名称:使用MPM列表的基于帧内预测的视频编码方法及其装置)的分案申请。

技术领域

该文件涉及图像编码技术,并且更具体地,涉及基于MPM列表使用帧内预测的视频编码方法和设备。

背景技术

近来在各种领域中对诸如超高清(HUD)图像和4K或8K或更大视频这样的高分辨率且高质量的图像和视频的需求日益增加。随着图像和视频数据变成高分辨率和高质量,与现有图像和视频数据相比,相对发送的信息量或位数增加。因此,如果使用诸如现有有线或无线宽带线这样的介质来传输图像数据或者使用现有存储介质来存储图像和视频数据,则传输成本和存储成本增加。

此外,近来对诸如虚拟现实(VR)、人工现实(AR)内容或全息图这样的沉浸式媒体的兴趣和需求日益增加。诸如游戏图像这样的图像特性与真实图像的图像特性不同的图像和视频的广播日益增加。

因此,为了有效地压缩并传输或存储并回放具有这样的各种特性的高分辨率且高质量的图像和视频的信息,需要高效的图像和视频压缩技术。

发明内容

技术课题

该文件提供了提高图像编码效率的方法和设备。

该文件提供了高效的帧内预测方法和设备。

该文件提供了导出用于高效帧内预测的MPM列表的视频编码方法和设备。

该文件提供了能够通过高效地对与帧内预测相关的信息进行编码来减少信令开销的图像编码方法和设备。

技术方案

在一方面,提供了一种由解码设备执行的视频解码方法。该方法包括以下步骤:通过基于与当前块相邻的邻近块导出针对所述当前块的最可能模式(MPM)候选来构造MPM列表,基于所述MPM列表来导出针对所述当前块的帧内预测模式,通过基于所述帧内预测模式对所述当前块执行预测来生成预测样本,以及基于所述预测样本来生成针对所述当前块的重构图片。导出针对所述当前块的帧内预测模式的步骤包括以下步骤:获得与针对所述当前块的帧内预测模式是否被包括在所述MPM列表中的所述MPM候选当中相关的MPM标志信息,当基于所述MPM标志信息确定针对所述当前块的帧内预测模式未被包括在所述MPM列表中的所述MPM候选当中时,获得用于指示除了所述MPM候选之外的其余帧内预测模式当中的针对所述当前块的帧内预测模式的其余模式信息,以及基于所述其余模式信息来导出针对所述当前块的帧内预测模式。所述其余模式信息是基于二值化处理来获得的。

在另一方面,提供了一种由编码设备执行的视频编码方法。该方法包括以下步骤:通过基于与当前块相邻的邻近块导出针对所述当前块的最可能模式(MPM)候选来构造MPM列表,确定针对所述当前块的帧内预测模式,通过基于所述帧内预测模式对所述当前块执行预测来生成预测样本,以及对包括针对所述当前块的帧内预测模式信息的图像信息进行编码。确定针对所述当前块的帧内预测模式的步骤包括以下步骤:基于针对所述当前块的帧内预测模式是否被包括在所述MPM列表中的所述MPM候选当中来生成MPM标志信息,以及当基于所述MPM标志信息确定针对所述当前块的帧内预测模式未被包括在所述MPM列表中的所述MPM候选当中时,生成用于指示除了所述MPM候选之外的其余帧内预测模式当中的针对所述当前块的帧内预测模式的其余模式信息。所述MPM标志信息和所述其余模式信息被包括在所述帧内预测模式信息中并且被编码。所述其余模式信息是基于二值化处理而编码的。

有益效果

根据该文件,能够提高整体图像和视频压缩效率。

根据该文件,通过高效的帧内预测,能够降低计算复杂度并且能够提高整体编码效率。

根据该文件,可以通过考虑帧内预测模式的数目的增加来高效地构造MPM列表。此外,能够提高用于指示当前块的帧内预测模式的MPM列表的准确性,并且能够提高整体编码效率。

根据该文件,因为能够高效地对与帧内预测模式相关的信息进行编码,所以能够降低信令开销。

附图说明

图1示意性地例示了可以应用该文件的实施方式的视频/图像编码系统的示例。

图2是示意性地描述了可以应用该文件的实施方式的视频/图像编码设备的配置的示图。

图3是示意性地描述了可以应用该文件的实施方式的视频/图像解码设备的配置的示图。

图4例示了由视频编码设备执行的视频编码方法的示例。

图5例示了由解码设备执行的视频解码方法的示例。

图6例示了基于帧内预测的视频编码方法的示例,并且图7示意性地例示了编码设备内的帧内预测器。

图8例示了基于帧内预测的视频解码方法的示例,并且图9示意性地例示了解码设备内的帧内预测器。

图10例示了65种定向帧内预测模式。

图11例示了当前块的邻近块。

图12和图13是示意性地例示针对当前块配置MPM列表的方法的流程图。

图14是例示了针对当前块配置MPM列表的方法的实施方式的流程图。

图15是示意性地例示了根据该文件的实施方式的可以由编码设备执行的编码方法的流程图。

图16是示意性地例示了根据该文件的实施方式的可以由解码设备执行的解码方法的流程图。

图17例示了可以应用该文件中公开的实施方式的内容流传输系统的示例。

具体实施方式

该文件可以以各种方式修改并且可以具有各种实施方式,并且特定的实施方式将在附图中例示并详细地描述。然而,这并不旨在将该文件限制于特定实施方式。本说明书中通常使用的术语用于描述特定的实施方式,而不是用来限制该文件的技术精神。除非在上下文中另外明确表示,否则单数的表述包括复数的表述。该说明书中的诸如“包括”或“具有”这样的术语应该被理解为指示存在本说明书中描述的特性、数字、步骤、操作、元件、组件或其组合,而没有排除存在或添加一个或更多个特性、数字、步骤、操作、元件、组件或其组合的可能性。

此外,为了便于与不同特征功能相关的描述,独立地例示了该文件中描述的附图中的元件。这并不意指各个元件被实现为单独的硬件或单独的软件。例如,至少两个元件可以被组合,以形成单个元件,或者单个元件可以被划分成多个元件。其中元件被组合和/或分开的实施方式也被包括在该文件的权利范围内,除非它偏离了该文件的实质。

下文中,参照附图更具体地描述该文件的优选实施方式。下文中,在附图中,相同的附图标记被用于相同的元件,并且可以省略对相同元件的冗余描述。

图1示意性地例示了可以应用该文件的实施方式的视频/图像编码系统的示例。

参照图1,视频/图像编码系统可以包括第一装置(源装置)和第二装置(接收装置)。源装置可以经由数字存储介质或网络以文件或流传输的形式将编码后的视频/图像信息或数据传递到接收装置。

源装置可以包括视频源、编码设备和发送器。接收装置可以包括接收器、解码设备和渲染器。编码设备可以被称为视频/图像编码设备,并且解码设备可以被称为视频/图像解码设备。发送器可以被包括在编码设备中。接收器可以被包括在解码设备中。渲染器可以包括显示器,并且显示器可以被配置为单独的装置或外部组件。

视频源可以通过捕获、合成或生成视频/图像的处理来获得视频/图像。视频源可以包括视频/图像捕获装置和/或视频/图像生成装置。视频/图像捕获装置可以包括例如一个或更多个相机、包括先前捕获的视频/图像的视频/图像档案等。视频/图像生成装置可以包括例如计算机、平板计算机和智能电话,并且可以(电子地)生成视频/图像。例如,可以通过计算机等生成虚拟视频/图像。在这种情况下,视频/图像捕获处理可以被生成相关数据的处理取代。

编码设备可以对输入视频/图像进行编码。编码设备可以执行诸如针对压缩和编码效率的预测、变换和量化这样的一系列过程。编码后的数据(编码后的视频/图像信息)可以以比特流的形式输出。

发送器可以通过数字存储介质或网络以文件或流传输的形式将以比特流的形式输出的编码后的视频/图像信息或数据发送到接收装置的接收器。数字存储介质可以包括诸如USB、SD、CD、DVD、蓝光、HDD、SSD等这样的各种存储介质。发送器可以包括用于通过预定文件格式生成媒体文件的元件,并且可以包括用于通过广播/通信网络进行发送的元件。接收器可以接收/提取比特流,并且将接收/提取的比特流发送到解码设备。

解码设备可以通过执行与编码设备的操作对应的诸如反量化、逆变换、预测等这样的一系列过程来解码视频/图像。

渲染器可以渲染解码后的视频/图像。可以通过显示器显示渲染后的视频/图像。

本文件涉及视频/图像编码。例如,本文件中公开的方法/实施方式可以应用于以通用视频编码(VVC)标准、基本视频编码(EVC)标准、AOMedia Video 1(AV1)标准、第二代音频视频编码标准(AVS2)或下一代视频/图像编码标准(例如,H.267或H.268等)公开的方法。

在本文件中,可以提供与视频/图像编码相关的各种实施方式,并且除非相反地指定,否则这些实施方式可以被彼此组合并执行。

在本文件中,视频可以意指随时间推移的一系列图像的集合。通常,图片意指表示特定时间区域的图像的单元,并且切片/图块(tile)是构成图片的一部分的单元。切片/图块可以包括一个或更多个编码树单元(CTU)。一幅图片可以由一个或更多个切片/图块构成。一幅图片可以由一个或更多个图块组构成。一个图块组可以包括一个或更多个图块。块部(brick)可以表示图片中的图块内的CTU行的矩形区域。图块可以被分割成多个块部,各块部由图块内的一个或更多个CTU行组成。没有被分割成多个块部的图块也可以称为块部。块部扫描可以是如下的分割图片的CTU的特定顺序排序:在块部中按CTU光栅扫描对CTU进行连续排序,按图块的块部的光栅扫描对图块内的块部进行连续排序,并且按图片的图块的光栅扫描对图片中的图块进行连续排序。图块是图片中的特定图块列和特定图块行内的CTU的矩形区域。图块列是CTU的高度等于图片的高度并且宽度由图片参数集中的语法元素指定的矩形区域。图块行是CTU的高度由图片参数集中的语法元素指定并且宽度等于图片的宽度的矩形区域。图块扫描可以是以下的分割图片的CTU的特定顺序排序:可以在图块中按CTU光栅扫描对CTU进行连续排序,而可以按图片的图块的光栅扫描对图片中的图块进行连续排序。切片包括图片的可以被排他性地包含在单个NAL单元中的整数个块部。切片可以由多个完整图块组成或者仅由一个图块的连续序列的完整块部组成。在本文件中,可以将图块组与切片彼此互换地使用。例如,在本文件中,图块组/图块组头可以被称为切片/切片头。

像素或pel可以意指构成一幅图片(或图像)的最小单元。另外,“样本”可以被用作与像素对应的术语。样本通常可以表示像素或像素的值,并且可以仅表示亮度分量的像素/像素值,或仅表示色度分量的像素/像素值。

单元可以表示图像处理的基本单元。单元可以包括特定区域和与该区域相关的信息中的至少一个。一个单元可以包括一个亮度块和两个色度(例如,cb、cr)块。根据情况,可以将单元和诸如块、区域等这样的术语互换地使用。在通常情况下,M×N块可以包括由M列和N行组成的样本(或样本阵列)或变换系数的集合(或阵列)。

在本文件中,术语“/”和“,”应该被解释为指示“和/或”。例如,表述“A/B”可以意指“A和/或B”。另外,“A、B”可以意指“A和/或B”。另外,“A/B/C”可以意指“A、B和/或C中的至少一个”。另外,“A/B/C”可以意指“A、B和/或C中的至少一个”。

另外,在该文件中,术语“或”应该被解释为指示“和/或”。例如,表述“A或B”可以包括1)“仅A”、2)“仅B”和/或3)“A和B”二者。换句话说,本文件中的术语“或”应该被解释为指示“另外地或另选地”。

图2是示意性地描述可以应用本文件的视频/图像编码设备的配置的图。下文中,所谓的视频编码设备可以包括图像编码设备。

参照图2,编码设备200可以包括图像分割器210、预测器220、残差处理器230、熵编码器240、加法器250、滤波器260和存储器270。预测器220可以包括帧间预测器221和帧内预测器222。残差处理器230可以包括变换器232、量化器233、反量化器234、逆变换器235。残差处理器230还可以包括减法器231。加法器250可以被称为重构器或重构块生成器。根据实施方式,上面已描述的图像分割器210、预测器220、残差处理器230、熵编码器240、加法器250和滤波器260可以由一个或更多个硬件组件(例如,编码器芯片组或处理器)构成。另外,存储器270可以包括解码图片缓冲器(DPB),并且可以由数字存储介质构成。硬件组件还可以包括存储器270作为内部/外部组件。

图像分割器210将输入到编码设备200的输入图像(或图片或帧)分割成一个或更多个处理单元。作为一个示例,处理单元可以被称为编码单元(CU)。在这种情况下,从编码树单元(CTU)或最大编码单元(LCU)开始,可以根据四叉树二叉树三叉树(QTBTTT)结构来递归地分割编码单元。例如,可以基于四叉树结构、二叉树结构和/或三叉树结构将一个编码单元划分成深度更深的多个编码单元。在这种情况下,例如,可以首先应用四叉树结构,随后可以应用二叉树结构和/或三叉树结构。另选地,可以首先应用二叉树结构。可以基于没有被进一步分割的最终编码单元来执行根据本文件的编码过程。在这种情况下,基于根据图像特性的编码效率,可以将最大编码单元直接用作最终编码单元。另选地,可以按需要将编码单元递归地分割成深度进一步更深的编码单元,使得可以将最佳大小的编码单元用作最终编码单元。这里,编码过程可以包括随后将描述的诸如预测、变换和重构这样的过程。作为另一示例,处理单元还可以包括预测单元(PU)或变换单元(TU)。在这种情况下,可以从上述的最终编码单元划分或分割预测单元和变换单元。预测单元可以是样本预测的单元,并且变换单元可以是用于导出变换系数的单元和/或用于根据变换系数导出残差信号的单元。

根据情况,可以将单元和诸如块、区域等这样的术语互换地使用。在常规情况下,M×N块可以表示由M列和N行组成的样本或变换系数的集合。样本通常可以表示像素或像素的值,并且可以仅表示亮度分量的像素/像素值,或仅表示色度分量的像素/像素值。样本可以被用作与一个图片(或图像)的像素或pel对应的术语。

在编码设备200中,从输入图像信号(原始块、原始样本阵列)中减去从帧间预测器221或帧内预测器222输出的预测信号(预测块、预测样本阵列)以生成残差信号(残差块、残差样本阵列),并且所生成的残差信号被发送到变换器232。在这种情况下,如所示出的,在编码设备200中从输入图像信号(原始块、原始样本阵列)中减去预测信号(预测块、预测样本阵列)的单元可以被称为减法器231。预测器可以对处理目标块(下文中,被称为“当前块”)执行预测,并且可以生成包括针对当前块的预测样本的预测块。预测器可以确定以当前块或CU为基础应用帧内预测还是帧间预测。如随后在对每种预测模式的描述中所讨论的,预测器可以生成诸如预测模式信息这样的与预测相关的各种信息,并且将所生成的信息发送到熵编码器240。关于预测的信息可以在熵编码器240中被编码并且以比特流的形式被输出。

帧内预测器222可以通过参考当前图片中的样本来预测当前块。根据预测模式,参考样本可以位于当前块的附近或与当前块分开。在帧内预测中,预测模式可以包括多种非定向模式和多种定向模式。非定向模式可以包括例如DC模式和平面模式。根据预测方向的详细程度,定向模式可以包括例如33种定向预测模式或65种定向预测模式。然而,这仅仅是示例,并且根据设置,可以使用更多或更少的定向预测模式。帧内预测器222可以通过使用应用于邻近块的预测模式来确定应用于当前块的预测模式。

帧间预测器221可以基于参考图片上的运动向量所指定的参考块(参考样本阵列)来导出针对当前块的预测块。此时,为了减少在帧间预测模式下发送的运动信息的量,可以基于邻近块与当前块之间的运动信息的相关性以块、子块或样本为基础来预测运动信息。运动信息可以包括运动向量和参考图片索引。运动信息还可以包括帧间预测方向(L0预测、L1预测、Bi预测等)信息。在帧间预测的情况下,邻近块可以包括当前图片中存在的空间邻近块和参考图片中存在的时间邻近块。包括参考块的参考图片和包括时间邻近块的参考图片可以彼此相同或彼此不同。时间邻近块可以被称为并置参考块、并置CU(colCU)等,并且包括时间邻近块的参考图片可以被称为并置图片(colPic)。例如,帧间预测器221可以基于邻近块来配置运动信息候选列表,并且生成指示哪个候选被用于导出当前块的运动向量和/或参考图片索引的信息。可以基于各种预测模式来执行帧间预测。例如,在跳变模式和合并模式的情况下,帧间预测器221可以使用邻近块的运动信息作为当前块的运动信息。在跳变模式下,与合并模式不同,不能发送残差信号。在运动信息预测(运动向量预测、MVP)模式的情况下,邻近块的运动向量可以被用作运动向量预测项,并且可以通过发信号通知运动向量差来指示当前块的运动向量。

预测器220可以基于各种预测方法来生成预测信号。例如,预测器可以将帧内预测或帧间预测应用于对一个块的预测,并且也可以同时应用帧内预测和帧间预测。这可以被称为组合的帧间和帧内预测(CIIP)。另外,预测器可以基于块内复制(IBC)预测模式或调色板模式,以便对块执行预测。IBC预测模式或调色板模式可以被用于诸如屏幕内容编码(SCC)这样的游戏等的内容图像/视频编码。尽管IBC基本上在当前图片中执行预测,但是其执行方式与帧间预测的相似之处在于,它导出当前图片中的参考块。即,IBC可以使用本文件中描述的帧间预测技术中的至少一种。调色板模式可以被视为帧内编码或帧内预测的示例。当应用调色板模式时,可以基于关于调色板索引和调色板表的信息来发信号通知图片中的样本值。

通过预测器(包括帧间预测器221和/或帧内预测器222)生成的预测信号可以被用于生成重构信号或者生成残差信号。变换器232可以通过向残差信号应用变换技术来生成变换系数。例如,变换技术可以包括离散余弦变换(DCT)、离散正弦变换(DST)、Karhunen-Loève变换(KLT)、基于图的变换(GBT)或有条件非线性变换(CNT)中的至少一种。这里,GBT意指当用曲线图表示像素之间的关系信息时从曲线图获得的变换。CNT是指基于使用所有先前重构的像素生成的预测信号而获得的变换。另外,变换处理可以被应用于大小相同的正方形像素块,或者可以应用于大小可变的块而非正方形的块。

量化器233可以对变换系数进行量化并且将它们发送到熵编码器240,并且熵编码器240可以对量化后的信号(关于量化后的变换系数的信息)进行编码并且输出比特流中的编码后的信号。关于量化后的变换系数的信息可以被称为残差信息。量化器233可以基于系数扫描顺序将块类型的量化后的变换系数重新布置成一维向量形式,并且基于一维向量形式的量化后的变换系数来生成关于量化后的变换系数的信息。熵编码器240可以执行诸如例如指数哥伦布(exponential Golomb)、上下文自适应可变长度编码(CAVLC)、上下文自适应二进制算术编码(CABAC)等这样的各种编码方法。熵编码器240可以对除了量化后的变换系数(例如,语法元素的值等)之外的视频/图像重构所需的信息一起或分别进行编码。编码后的信息(例如,编码后的视频/图像信息)可以以比特流的形式在网络抽象层(NAL)的单元基础上进行发送或存储。视频/图像信息还可以包括关于诸如适应参数集(APS)、图片参数集(PPS)、序列参数集(SPS)、视频参数集(VPS)等这样的各种参数集的信息。另外,视频/图像信息还可以包括常规约束信息。在本文件中,从编码设备发送到/发信号通知给解码设备的信息和/或语法元素可以被包括在视频/图片信息中。视频/图像信息可以通过上述编码过程进行编码并且被包括在比特流中。可以通过网络传输比特流,或者将其存储在数字存储介质中。这里,网络可以包括广播网络、通信网络和/或类似物,并且数字存储介质可以包括诸如USB、SD、CD、DVD、蓝光、HDD、SSD等这样的各种存储介质。发送从熵编码器240输出的信号的发送器(未示出)或存储其的存储器(未示出)可以被配置为编码设备200的内部/外部元件,或者发送器可以被包括在熵编码器240中。

从量化器233输出的量化后的变换系数可以被用于生成预测信号。例如,通过利用反量化器234和逆变换器235向量化后的变换系数应用反量化和逆变换,可以重构残差信号(残差块或残差样本)。加法器155将重构后的残差信号与从帧间预测器221或帧内预测器222输出的预测信号相加,使得可以生成重构信号(重构图片、重构块、重构样本阵列)。当如在应用跳变模式的情况下一样没有针对处理目标块的残差时,可以将预测块用作重构块。加法器250可以被称为重构器或重构块生成器。所生成的重构信号可以被用于当前图片中的下一处理目标块的帧内预测,并且如随后描述的,可以被用于通过滤波进行的下一图片的帧间预测。

此外,在图片编码和/或重构处理中,可以应用具有色度缩放的亮度映射(LMCS)。

滤波器260可以通过向重构信号应用滤波来改善主观/客观视频质量。例如,滤波器260可以通过向重构图片应用各种滤波方法来生成修改后的重构图片,并且可以将修改后的重构图片存储在存储器270中,尤其是存储在存储器270的DPB中。各种滤波方法可以包括例如解块滤波、样本自适应偏移、自适应环形滤波器、双边滤波器等。如随后在对每种滤波方法的描述中所讨论的,滤波器260可以生成与滤波相关的各种信息,并且将所生成的信息发送到熵编码器240。关于滤波的信息可以在熵编码器240中被编码并且以比特流的形式被输出。

已发送到存储器270的修改后的重构图片可以被用作帧间预测器221中的参考图片。据此,编码设备可以避免在应用帧间预测时编码设备100和解码设备中的预测失配,并且还可以提高编码效率。

存储器270DPB可以存储修改后的重构图片,以便使用它作为帧间预测器221中的参考图片。存储器270可以存储从中已导出(或编码了)运动信息的当前图片中的块的运动信息和/或已经重构的图片中的块的运动信息。所存储的运动信息可以被发送到帧间预测器221,以被用作邻近块的运动信息或时间邻近块的运动信息。存储器270可以存储当前图片中的重构块的重构样本,并且将它们发送到帧内预测器222。

图3是示意性地描述可以应用本文件的视频/图像解码设备的配置的图。

参照图3,视频解码设备300可以包括熵解码器310、残差处理器320、预测器330、加法器340、滤波器350和存储器360。预测器330可以包括帧间预测器332和帧内预测器331。残差处理器320可以包括反量化器321和逆变换器322。根据实施方式,上面已描述的熵解码器310、残差处理器320、预测器330、加法器340和滤波器350可以由一个或更多个硬件组件(例如,解码器芯片组或处理器)构成。另外,存储器360可以包括解码图片缓冲器(DPB),并且可以由数字存储介质构成。硬件组件还可以包括存储器360作为内部/外部组件。

当输入包括视频/图像信息的比特流时,解码设备300可以与据此已在图2的编码设备中处理视频/图像信息的处理对应地重构图像。例如,解码设备300可以基于与从比特流获得的与块分割相关的信息来导出单元/块。解码设备300可以通过使用在编码设备中应用的处理单元来执行解码。因此,解码的处理单元可以是例如编码单元,可以用编码树单元或最大编码单元顺着四叉树结构、二叉树结构和/或三叉树结构对其进行分割。可以用编码单元导出一个或更多个变换单元。并且,可以通过再现器来再现通过解码设备300解码并输出的重构图像信号。

解码设备300可以以比特流的形式接收从图2的编码设备输出的信号,并且可以通过熵解码器310对接收到的信号进行解码。例如,熵解码器310可以对比特流进行解析,以导出图像重构(或图片重构)所需的信息(例如,视频/图像信息)。视频/图像信息还可以包括关于诸如自适应参数集(APS)、图片参数集(PPS)、序列参数集(SPS)、视频参数集(VPS)等这样的各种参数集的信息。另外,视频/图像信息还可以包括常规约束信息。解码设备可以进一步基于关于参数集的信息和/或常规约束信息对图片进行解码。在本文件中,随后将描述的发信号通知/接收的信息和/或语法元素可以通过解码过程被解码并且从比特流中获得。例如,熵解码器310可以基于诸如指数哥伦布编码、CAVLC、CABAC等这样的编码方法对比特流中的信息进行解码,并且可以输出图像重构所需的语法元素的值和关于残差的变换系数的量化值。更具体地,CABAC熵解码方法可以接收与比特流中的各语法元素对应的bin,使用解码目标语法元素信息以及邻近和解码目标块的解码信息或者在先前步骤中解码的符号/bin的信息来确定上下文模型,根据所确定的上下文模型来预测bin生成概率并且对bin执行算术解码以生成与每个语法元素值对应的符号。这里,CABAC熵解码方法可以在确定上下文模型之后使用针对下一个符号/bin的上下文模型解码的符号/bin的信息来更新上下文模型。在熵解码器310中解码的信息当中的关于预测的信息可以被提供到预测器(帧间预测器332和帧内预测器331),并且在熵解码器310中已对其执行了熵解码的残差值(即,量化后的变换系数)和关联的参数信息可以被输入到残差处理器320。残差处理器320可以导出残差信号(残差块、残差样本、残差样本阵列)。另外,在熵解码器310中解码的信息当中的关于滤波的信息可以被提供到滤波器350。此外,接收从编码设备输出的信号的接收器(未示出)还可以将解码设备300构成为内部/外部元件,并且接收器可以是熵解码器310的组件。此外,根据本文件的解码设备可以被称为视频/图像/图片解码设备,并且解码设备可以被分为信息解码器(视频/图像/图片信息解码器)和样本解码器(视频/图像/图片样本解码器)。信息解码器可以包括熵解码器310,并且样本解码器可以包括反量化器321、逆变换器322、加法器340、滤波器350、存储器360、帧间预测器332和帧内预测器331中的至少一个。

反量化器321可以通过对量化后的变换系数进行反量化来输出变换系数。反量化器321可以将量化后的变换系数重新布置为二维块的形式。在这种情况下,可以基于已在编码设备中执行的系数扫描的顺序来执行重新布置。反量化器321可以使用量化参数(例如,量化步长信息)对量化后的变换系数执行反量化,并且获得变换系数。

逆变换器322通过对变换系数进行逆变换来获得残差信号(残差块、残差样本阵列)。

预测器可以对当前块执行预测,并且生成包括针对当前块的预测样本的预测块。预测器可以基于从熵解码器310输出的关于预测的信息来确定向当前块应用帧内预测还是帧间预测,并且具体地可以确定帧内/帧间预测模式。

预测器330可以基于各种预测方法来生成预测信号。例如,预测器可以将帧内预测或帧间预测应用于对一个块的预测,并且也可以同时应用帧内预测和帧间预测。这可以被称为组合的帧间和帧内预测(CIIP)。另外,预测器可以基于块内复制(IBC)预测模式或调色板模式,以便对块执行预测。IBC预测模式或调色板模式可以被用于诸如屏幕内容编码(SCC)这样的游戏等的内容图像/视频编码。尽管IBC基本上在当前图片中执行预测,但是其执行方式与帧间预测的相似之处在于,它导出当前图片中的参考块。即,IBC可以使用本文件中描述的帧间预测技术中的至少一种。调色板模式可以被视为帧内编码或帧内预测的示例。当应用调色板模式时,关于调色板表和调色板索引的信息可以被包括在视频/图像信息中并被发信号通知。

帧内预测器331可以通过参考当前图片中的样本来预测当前块。根据预测模式,参考样本可以位于当前块的附近或与当前块分开。在帧内预测中,预测模式可以包括多种非定向模式和多种定向模式。帧内预测器331可以通过使用应用于邻近块的预测模式来确定应用于当前块的预测模式。

帧间预测器332可以基于参考图片上的运动向量所指定的参考块(参考样本阵列)来导出针对当前块的预测块。此时,为了减少在帧间预测模式下发送的运动信息的量,可以基于邻近块与当前块之间的运动信息的相关性以块、子块或样本为基础来预测运动信息。运动信息可以包括运动向量和参考图片索引。运动信息还可以包括帧间预测方向(L0预测、L1预测、Bi预测等)信息。在帧间预测的情况下,邻近块可以包括当前图片中存在的空间邻近块和参考图片中存在的时间邻近块。例如,帧间预测器332可以基于邻近块来配置运动信息候选列表,并且基于接收到的候选选择信息来导出当前块的运动向量和/或参考图片索引。可以基于各种预测模式来执行帧间预测,并且关于预测的信息可以包括指示针对当前块的帧间预测的模式的信息。

加法器340将所获得的残差信号与从预测器(帧间预测器332或帧内预测器331)输出的预测信号(预测块、预测样本阵列)相加,使得可以生成重构信号(重构图片、重构块、重构样本阵列)。当如在应用跳变模式的情况下一样没有针对处理目标块的残差时,可以将预测块用作重构块。

加法器340可以被称为重构器或重构块生成器。所生成的重构信号可以用于当前图片中的要处理的下一块的帧内预测,可以通过如下所述的滤波而输出,或者可以用于下一图片的帧间预测。

此外,进行色度缩放的亮度映射(LMCS)可以被应用于图片解码处理。

滤波器350可以通过向重构后的信号应用滤波来改善主观/客观图像质量。例如,滤波器350可以通过向重构图片应用各种滤波方法来生成修改后的重构图片,并且将修改后的重构图片存储在存储器360中,具体地,存储在存储器360的DPB中。各种滤波方法可以包括例如解块滤波、样本自适应偏移、自适应环路滤波器、双边滤波器等。

存储在存储器360的DPB中的(修改后的)重构图片可以被用作帧间预测器332中的参考图片。存储器360可以存储从其导出(或解码出)当前图片中的运动信息的块的运动信息和/或已经重构的图片中的块的运动信息。所存储的运动信息可以被发送到帧间预测器332,以便被用作空间邻近块的运动信息或时间邻近块的运动信息。存储器360可以存储当前图片中的重构块的重构样本,并且将重构样本传送到帧内预测器331。

在本公开中,在编码设备200的滤波器260、帧间预测器221和帧内预测器222中描述的实施方式可以与解码设备300的滤波器350、帧间预测器332和帧内预测器331相同或者被分别对应于解码设备300的滤波器350、帧间预测器332和帧内预测器331进行应用。对于单元332和帧内预测器331,也同样适用。

如上所述,在执行视频编码时,执行预测以提高压缩效率。可以通过预测生成包括当前块的预测样本的预测块,即,目标编码块。在这种情况下,预测块包括空间域(或像素域)中的预测样本。在编码设备和解码设备中同样地导出预测块。编码设备可以通过向解码设备发信号通知关于原始块而非原始块的原始样本值本身与预测块之间的残差的信息(残差信息)来提高图像编码效率。解码设备可以基于残差信息来导出包括残差样本的残差块,可以通过将残差块与预测块相加来生成包括重构样本的重构块,并且可以生成包括重构块的重构图片。

可以通过变换和量化过程来生成残余信息。例如,编码设备可以导出原始块与预测块之间的残差块,可以通过对残差块中所包括的残差样本(残差样本阵列)执行变换过程来导出变换系数,可以通过对变换系数执行量化过程来导出量化变换系数,并且可以(通过比特流)向解码设备发信号通知相关残差信息。在这种情况下,残差信息可以包括诸如值信息、位置信息、变换方案、变换核以及量化变换系数的量化参数这样的信息。解码设备可以基于残差信息执行反量化/逆变换过程,并且可以导出残差样本(或残差块)。解码设备可以基于预测块和残差块来生成重构图片。此外,编码设备可以通过对量化后的变换系数进行反量化/逆变换来导出残差块以供后续图片的帧间预测参考,并且可以生成重构图片。

图4例示了由视频编码设备执行的视频编码方法的示例。

参照图4,视频编码方法可以包括块分割、帧内/帧间预测、变换、量化和熵编码处理。例如,当前图片可以被分割成多个块。可以通过帧内/帧间预测来生成当前块的预测块。当前块的残差块可以通过当前块的输入块与预测块相减来生成。此后,可以通过对残差块进行变换来生成系数块,即,当前块的变换系数。变换系数可以被量化和熵编码,并且被存储在比特流中。

图5例示了由解码设备执行的视频编码方法的示例。

参照图5,图像编码方法可以包括熵解码、反量化、逆变换和帧内/帧间预测处理。例如,解码设备可以执行与以上提到的编码方法相反的处理。具体地,可以通过对比特流进行熵解码来获得量化后的变换系数。可以通过对量化后的变换系数进行反量化处理来获得当前块的系数块,即,变换系数。可以通过对变换系数进行逆变换来导出当前块的残差块。可以通过将通过帧内/帧间预测导出的当前块的预测块与残差块相加来导出当前块的重构块。

此外,如果执行帧内预测,则可以使用样本之间的相关性,并且可以获得原始块与预测块之间的差异,即,残差。以上提到的变换和量化可以被应用于残差。因此,空间冗余能减少。下文中,具体描述了使用帧内预测进行的编码方法和解码方法。

帧内预测是指基于包括当前块的图片(下文中,当前图片)内的位于当前块外部的参考样本来生成当前块的预测样本的预测。在这种情况下,位于当前块外部的参考样本可以是指与当前块相邻的样本。如果向当前块应用帧内预测,则可以导出要用于当前块的帧内预测的邻近参考样本。

例如,当当前块的大小(宽度×高度)为nW×nH时,当前块的邻近参考样本可以包括邻近左边界的样本和邻近当前块左下的总共2×nH个样本、邻近上边界的样本和邻近当前块右上的总共2×nW个样本以及邻近当前块左上的一个样本。另选地,当前块的邻近参考样本还可以包括多列上邻近样本和多行左邻近样本。此外,当前块的邻近参考样本还可以包括邻近大小为nW×nH的当前块的右边界的总共nH个样本、邻近当前块的下边界的总共nW个样本以及邻近当前块右下的一个样本。

在这种情况下,当前块的邻近参考样本中的一些尚未被解码或可能不可用。在这种情况下,解码设备可以通过用可用样本替换不可用样本来配置将用于预测的邻近参考样本。另选地,可以通过可用样本的插值来构造将用于预测的邻近参考样本。

如果导出邻近参考样本,则(i)可以基于当前块的邻近参考样本的平均值或插值来导出预测样本,并且(ii)可以基于当前块的邻近参考样本当中的针对预测样本的特定(预测)方向上存在的参考样本来导出预测样本。当帧内预测模式是非定向模式或非角度模式时,可以应用(i)。当帧内预测模式是定向模式或角度模式时,可以应用(ii)。

此外,可以基于邻近参考样本当中的当前块的预测样本通过在位于当前块的帧内预测模式的预测方向上的第一邻近样本与对应于第一邻近样本的第二邻近样本之间进行插值来生成预测样本。第二邻近样本可以是位于与当前块的帧内预测模式的预测方向相反的方向上的样本。以上情况可以被称为线性插值帧内预测(LIP)。此外,可以基于滤波后的邻近参考样本来导出当前块的临时预测样本。可以通过对基于帧内预测模式导出的至少一个参考样本与现有的邻近参考样本当中的临时预测样本(即,未经滤波的邻近参考样本)进行加权求和来导出当前块的预测样本。以上情况可以被称为位置相关帧内预测(PDCP)。此外,如有必要,可以对导出的预测样本执行后期滤波。

具体地,帧内预测过程可以包括帧内预测模式确定步骤、邻近参考样本导出步骤以及基于帧内预测模式的预测样本导出步骤。此外,如有必要,可以对导出的预测样本执行后期滤波步骤。

图6例示了基于帧内预测的视频编码方法的示例,并且图7示意性地例示了编码设备内的帧内预测器。图7中的编码设备内的帧内预测器可以等同地或以对应方式应用于图2中的编码设备200的帧内预测器222。

参照图6和图7,可以由编码设备的帧内预测器222执行S600。可以由编码设备的残差处理器230执行S610。具体地,可以由编码设备的减法器231执行S610。在S620中,可以由帧内预测器222导出预测信息,并且可以由熵编码器240对预测信息进行编码。在S620中,可以由残差处理器230导出残差信息,并且可以由熵编码器240对残差信息进行编码。残差信息是与残差样本相关的信息。残差信息可以包括与针对残差样本量化后的变换系数相关的信息。如上所述,可以通过编码设备的变换器232将残差样本导出为变换系数。可以通过量化器233将变换系数导出为量化后的变换系数。可以由熵编码器240通过残差编码过程对与量化后的变换系数相关的信息进行编码。

编码设备可以对当前块执行帧内预测(S600)。编码设备可以导出当前块的帧内预测模式,可以导出当前块的邻近参考样本,并且可以基于帧内预测模式和邻近参考样本来生成当前块内的预测样本。在这种情况下,可以执行帧内预测模式确定、邻近参考样本导出和预测样本生成过程,或者任何一个过程可以在另一过程之前执行。

在一个实施方式中,编码设备的帧内预测器222可以包括预测模式确定器223、参考样本导出器224和预测样本导出器225。预测模式确定器223可以确定针对当前块的帧内预测模式。参考样本导出器224可以导出当前块的邻近参考样本。预测样本导出器225可以导出当前块的预测样本。此外,尽管未例示,但是如果执行随后将描述的预测样本滤波过程,则帧内预测器222还可以包括预测样本滤波单元(未例示)。编码设备可以确定多种帧内预测模式当中的应用于当前块的模式。编码设备可以将针对帧内预测模式的RD成本进行比较,并且可以确定当前块的最佳帧内预测模式。

如上所述,编码设备可以执行预测样本滤波过程。预测样本滤波可以被称为后期滤波。可以通过预测样本滤波过程对预测样本中的一些或全部进行滤波。可以根据情况省略预测样本滤波过程。

编码设备可以基于(滤波后的)预测样本来生成当前块的残差样本(S610)。编码设备可以对包括指示帧内预测模式的预测模式信息和与残差样本相关的残差信息的图像信息进行编码(S620)。编码后的图像信息可以以比特流形式输出。输出的比特流可以经由网络通过存储介质被发送到解码设备。

如上所述,编码设备可以基于预测样本和残差样本来生成重构图片(包括重构样本和重构块)。这是为了由编码设备导出与在解码设备中执行的预测结果相同的预测结果。其原因是能够提高编码效率。此外,如上所述,还可以向重构图片应用环路内滤波过程。

图8例示了基于帧内预测的视频编码方法的示例,并且图9示意性地例示了解码设备内的帧内预测器。图9中的解码设备内的帧内预测器可以等同地或以对应方式应用于图3中的解码设备300的帧内预测器331。

参照图8和图9,解码设备可以执行与在编码设备中执行的操作对应的操作。解码设备可以对当前块执行预测,并且基于接收到的预测信息来导出预测样本。

可以由解码设备的帧内预测器331执行S800至S820。在S830中,可以由解码设备的熵解码器310从比特流获得残差信息。解码设备的残差处理器320可以基于残差信息来导出当前块的残差样本。具体地,残差处理器的反量化器321可以通过基于以残差信息为基础导出的量化后的变换系数执行反量化来导出变换系数。残差处理器320的逆变换器322可以通过对变换系数执行逆变换来导出当前块的残差样本。可以由解码设备的加法器340或重构器来执行S840。

解码设备可以基于接收到的预测模式信息来导出针对当前块的帧内预测模式(S800)。解码设备可以导出当前块的邻近参考样本(S810)。解码设备可以基于帧内预测模式和邻近参考样本来生成当前块内的预测样本(S820)。在这种情况下,解码设备可以执行预测样本滤波过程。预测样本滤波可以被称为后期滤波。可以通过预测样本滤波过程对预测样本中的一些或全部进行滤波。可以根据情况省略预测样本滤波过程。

解码设备可以基于接收到的残差信息来生成当前块的残差样本(S830)。解码设备可以基于(滤波后的)预测样本和残差样本来生成针对当前块的重构样本,并且可以基于重构样本来生成重构图片(S840)。

在一个实施方式中,解码设备的帧内预测器331可以包括预测模式确定器333、参考样本导出器334和预测样本导出器335。预测模式确定器333可以基于从编码设备的预测模式确定器223接收到的预测模式信息来确定针对当前块的帧内预测模式。参考样本导出器334可以导出当前块的邻近参考样本。预测样本导出器335可以导出当前块的预测样本。此外,尽管未例示,但是如果执行预测样本滤波过程,则帧内预测器331还可以包括预测样本滤波单元(未例示)。

此外,在执行帧内预测时,可以根据是否向当前块应用最可能模式(MPM)来确定预测模式信息。例如,预测模式信息可以包括指示向当前块应用最可能模式(MPM)还是应用其余模式的标志信息(例如,prev_intra_luma_pred_flag)。如果向当前块应用MPM,则预测模式信息还可以包括指示帧内预测模式候选(MPM候选)中的一个的索引信息(例如,mpm_idx)。在这种情况下,帧内预测模式候选(MPM候选)可以被构造为MPM候选列表或MPM列表。此外,如果未向当前块应用MPM,则预测模式信息还可以包括指示除了帧内预测模式候选(MPM候选)之外的其余帧内预测模式中的一种的其余模式信息(例如,rem_inra_luma_pred_mode)。解码设备可以基于预测模式信息来确定当前块的帧内预测模式。在这种情况下,可以通过随后将描述的编码方法对预测模式信息进行编码/解码。例如,可以基于截短(莱斯)二进制码通过熵编码(例如,CABAC、CAVLC)对预测模式信息进行编码/解码。

此外,如果应用帧内预测,则在确定预测模式信息时,可以使用邻近块的帧内预测模式来确定应针对当前块的帧内预测模式。例如,解码设备可以基于当前块的左块的帧内预测模式和上块的帧内预测模式来导出最可能模式(MPM)候选,并且可以基于MPM索引(例如,mpm_idx)来选择MPM候选中的一个。另选地,解码设备可以基于其余帧内预测模式信息(例如,rem_inra_luma_pred_mode)来选择未包括在MPM候选中的其余帧内预测模式中的一种。MPM索引可以被以mpm_idx语法元素的形式发信号通知。其余帧内预测模式信息可以被以rem_intra_luma_pred_mode语法元素的形式发信号通知。例如,其余帧内预测模式信息可以指示所有帧内预测模式当中的未包括在MPM候选中并且按预测模式编号的顺序索引的其余帧内预测模式中的一种。

帧内预测模式可以包括非定向(或非角度)帧内预测模式和定向(或角度)帧内预测模式。例如,在HEVC标准中,使用包括2种非定向预测模式和33种定向预测模式的帧内预测模式。非定向预测模式可以包括平面帧内预测模式(即,0号)和DC帧内预测模式(即,1号)。定向预测模式可以包括2号至34号帧内预测模式。平面帧内预测模式可以被称为平面模式,并且DC帧内预测模式可以被称为DC模式。

另选地,为了获取自然视频中提出的给定边缘方向,如图10中一样,定向帧内预测模式可以从现有的33种模式扩展到65种模式。在这种情况下,帧内预测模式可以包括2种非定向帧内预测模式和65种定向帧内预测模式。非定向帧内预测模式可以包括平面帧内预测模式(即,0号)和DC帧内预测模式(即,1号)。定向帧内预测模式可以包括2号至66号帧内预测模式。扩展的定向帧内预测模式可以应用于具有所有大小的块,并且可以应用于亮度分量和色度分量二者。然而,这是示例,并且可以向帧内预测模式的数目不同的情况应用该文件的实施方式。还可以使用根据情形的67号帧内预测模式。67号帧内预测模式可以指示线性模型(LM)模式。

图10例示了65种定向帧内预测模式。

参照图10,基于具有左上对角预测方向的34号帧内预测模式,可以将模式分为具有水平方向性的帧内预测模式和具有垂直方向性的帧内预测模式。在图10中,H和V分别意指水平方向性和垂直方向性。编号-32至32中的每一个指示样本网格位置处的1/32单元的位移。2至33号帧内预测模式具有水平方向性,并且34至66号帧内预测模式具有垂直方向性。18号帧内预测模式和50号帧内预测模式分别指示水平帧内预测模式和垂直帧内预测模式。2号帧内预测模式可以被称为左下对角帧内预测模式,34号帧内预测模式可以被称为左上对角帧内预测模式,并且66号帧内预测模式可以被称为右上对角帧内预测模式。

如上所述,通常,如果对图片执行块分割,则当前块和要编码的邻近块具有相似的图像特性。因此,很有可能当前块与邻近块将具有相同或相似的帧内预测模式。根据这些图像特性,可以使用邻近块的帧内预测模式来导出当前块的帧内预测模式。这可以被称为最可能模式(MPM)。即,MPM可以意指用于通过在进行帧内预测模式编码时考虑当前块与邻近块之间的相似性来提高编码效率的模式。

例如,编码/解码设备可以针对当前块配置最可能模式(MPM)列表。MPM列表可以被指示为MPM候选列表。在这种情况下,可以通过考虑生成MPM列表的复杂度来构造包括给定MPM候选的MPM列表。例如,MPM列表可以包括3个MPM候选、5个MPM候选或6个MPM候选。在一个实施方式中,MPM列表可以包括基于邻近块的帧内预测模式、导出的帧内预测模式和/或默认帧内预测模式而导出的MPM候选。在这种情况下,在根据邻近块导出MPM候选时,编码设备/解码设备可以通过根据特定顺序搜索当前块的邻近块来导出邻近块的帧内预测模式,并且可以基于导出的顺序使用邻近块的帧内预测模式作为MPM候选。例如,邻近块可以包括当前块的左邻近块、上邻近块、左下邻近块、右上邻近块和左上邻近块中的至少一个。如果在MPM列表内的MPM候选当中不包括当前块的帧内预测模式,则可以使用其余模式。在这种情况下,其余模式是使用所有帧内预测模式当中的除了MPM候选之外的其余帧内预测模式的模式,并且可以对其余帧内预测模式信息进行编码并发信号通知。其余帧内预测模式信息可以是指示除了MPM候选之外的其余帧内预测模式当中的应针对当前块的帧内预测模式的信息。例如,如果使用67种帧内预测模式,则其余帧内预测模式信息可以包括6位语法元素(例如,rem_intra_luma_pred_mode语法元素)。

如上所述,在HEVC标准中,在进行帧内预测时使用35种帧内预测模式。在这种情况下,构造包括3个MPM候选的MPM列表。在这种情况下,可以基于邻近块F和邻近块G的帧内预测模式来导出3个MPM候选。当前块的包括邻近块F和邻近块G的邻近块可以与上述的邻近块相同。

图11例示了当前块的邻近块。

参照图11,当前块的邻近块可以包括邻近块A、邻近块B、邻近块C、邻近块D、邻近块E、邻近块F和/或邻近块G。

在这种情况下,邻近块A可以指示位于当前块的左上样本位置的左上侧的邻近块。邻近块B可以指示位于当前块的右上样本位置的上侧的邻近块。邻近块C可以指示位于当前块的右上样本位置的右上侧的邻近块。邻近块D可以指示位于当前块的左下样本位置的左侧的邻近块。邻近块E可以指示位于当前块的左下样本位置的左下的邻近块。邻近块G可以指示位于当前块的左上样本位置的上侧的邻近块。邻近块F可以指示位于当前块的左上样本位置的左侧的邻近块。

例如,如果当前块的大小为W×H,并且当前块的左上样本位置的x分量和y分量为0,则邻近块A可以是包括(-1,-1)坐标处的样本的块,邻近块B可以是包括(W-1,-1)坐标处的样本的块,邻近块C可以是包括(W,-1)坐标处的样本的块,邻近块D可以是包括(-1,H-1)坐标处的样本的块,邻近块E可以是包括(-1,H)坐标处的样本的块,邻近块F可以是包括(-1,0)坐标处的样本的块,并且邻近块G可以是包括(0,-1)坐标处的样本的块。

根据HEVC标准,可以基于邻近块F的帧内预测模式和邻近块G的帧内预测模式来导出3个MPM候选。例如,可以导出邻近块F的帧内预测模式和邻近块G的帧内预测模式。此外,在以下情况下,可以将邻近块F的帧内预测模式或邻近块G的帧内预测模式导出为DC帧内预测模式。

1)如果邻近块F或邻近块G不可用

2)如果邻近块F或邻近块G没有被编码为帧内预测模式(即,如果邻近块F或邻近块G不是帧内编码块)

3)如果邻近块F或邻近块G在当前编码树单元(CTU)外

如果如上所述确定了邻近块F的帧内预测模式或邻近块G的帧内预测模式,则可以如同表1一样导出3个MPM候选。

[表1]

表1例示了用于配置MPM列表的示意性算法(即,伪代码)。参照表1,可以确定邻近块F的帧内预测模式与邻近块G的帧内预测模式是否相等。

如果邻近块F的帧内预测模式与邻近块G的帧内预测模式相等并且邻近块F的帧内预测模式的模式编号小于2,则可以将针对当前块的MPM列表导出为MPM列表1(MPM list1)。即,如果邻近块F的帧内预测模式与邻近块G的帧内预测模式相等并且邻近块F的帧内预测模式是0号帧内预测模式或1号帧内预测模式,则可以将针对当前块的MPM列表导出为MPM列表1。在这种情况下,MPM列表1可以指示配置有MPM候选{F,F-1,F+1}的MPM列表。F可以指示邻近块F的帧内预测模式。F-1可以指示其中通过从邻近块F的帧内预测模式的模式编号减去1而获得的值为模式编号的帧内预测模式。F+1可以指示中通过将邻近块F的帧内预测模式的模式编号加上1而获得的值为模式编号的帧内预测模式。例如,如果邻近块F的帧内预测模式是N号帧内预测模式,则MPM列表1可以被配置有包括N号帧内预测模式、N-1号镇帧内预测模式和N+1号帧内预测模式作为MPM候选的MPM列表。

此外,如果邻近块F的帧内预测模式与邻近块G的帧内预测模式相等并且邻近块F的帧内预测模式的模式编号不小于2,则可以将针对当前块的MPM列表导出为MPM列表2(MPMlist2)。

此外,如果邻近块F的帧内预测模式与邻近块G的帧内预测模式不相等并且邻近块F的帧内预测模式和邻近块G的帧内预测模式不是平面模式帧内预测模式,则可以将针对当前块的MPM列表导出为MPM列表3(MPM list3)。

此外,如果邻近块F的帧内预测模式与邻近块G的帧内预测模式不相等并且邻近块F的帧内预测模式的模式编号与邻近块G的帧内预测模式的模式编号之和小于2,则可以将针对当前块的MPM列表导出为MPM列表4(MPM list4)。

此外,如果邻近块F的帧内预测模式与邻近块G的帧内预测模式不相等并且邻近块F的帧内预测模式和邻近块G的帧内预测模式中的至少一个是平面模式帧内预测模式并且邻近块F的帧内预测模式的模式编号与邻近块G的帧内预测模式的模式编号之和不小于2,则可以将针对当前块的MPM列表导出为MPM列表5(MPM list5)。

此外,随着帧内预测模式的数目增加,MPM候选的数目需要增加。因此,MPM候选的数目可根据帧内预测模式的数目而不同。通常,当帧内预测模式的数目增加时,MPM候选的数目可以增加。然而,当帧内预测模式的数目增加时,MPM候选的数目并不总是增加。例如,如果存在35种帧内预测模式或如果存在67种帧内预测模式,则根据设计,可以存在诸如3个、4个、5个和6个这样的各种数目的MPM候选。

例如,可以执行6-MPM列表配置。即,可以构造包括6个MPM候选的MPM列表。例如,在6-MPM列表配置中,可以执行搜索各种邻近块的位置的处理以及用于排除相同帧内预测模式的一致剪枝(pruning)检查处理。例如,构造6个MPM候选的顺序可以如下:

邻近块D、邻近块B、平面帧内预测模式、DC帧内预测模式、邻近块E、邻近块C和邻近块A。

即,可以按照邻近块D的帧内预测模式、邻近块B的帧内预测模式、平面帧内预测模式、DC帧内预测模式、邻近块E的帧内预测模式、邻近块C的帧内预测模式和邻近块A的帧内预测模式的顺序导出邻近块为MPM候选。如果预测模式与已经导出的帧内预测模式相同,则可以不将它导出为MPM候选。

此外,如果MPM列表不包括候选数目最大的MPM候选,即,当导出的MPM候选的数目小于候选的最大数目时,邻近导出的MPM候选的定向帧内预测模式和预先定义的默认帧内预测模式可以被视为MPM候选,并且可以执行剪枝检查处理。在这种情况下,邻近MPM候选的定向帧内预测模式可以指示模式编号与MPM候选的模式编号邻近的帧内预测模式。邻近块搜索和一致剪枝检查在降低位传输速率方面有优势,但是会增加每个块的MPM列表配置的硬件操作周期数。最坏的情况是,3840×2160 4K图像可以被分割成4×4大小块以进行帧内预测。在这种情况下,可以在吞吐量方面重要地考虑增加4×4大小块中的每一个的硬件操作周期。此外,如果通过帧间预测编码的邻近块获悉邻近块的帧内预测模式,则该邻近块的帧内预测模式可以被用于MPM列表配置。

如上所述,在配置MPM列表时,编码设备可以通过同时优化比特率和失真来确定最佳帧内预测模式,并且可以将所确定的最佳帧内预测模式编码为比特流。解码设备可以解析(解码)比特流中所包括的帧内预测模式,并且可以基于解析后的帧内预测模式来执行帧内预测。然而,为了随着帧内预测模式的数目增加而使信令开销最小化,必须进行高效的帧内模式编码。编码设备和解码设备二者使用编码块的邻近帧内预测模式来配置MPM列表。在这种情况下,当最佳帧内预测模式是MPM列表内的候选中的一个时,可以通过发信号通知MPM索引来使开销最小化。根据算法,MPM列表的长度和配置MPM列表的方法可能不同。

在这种情况下,如果67种帧内预测模式被用于帧内预测,则包括现有3个MPM候选的MPM列表可能不足以表现多种帧内预测模式的多样性。此外,包括邻近块搜索和剪枝检查处理的6-MPM列表配置方案可能影响吞吐量,因为它太过复杂。因此,该文件的实施方式提出了在复杂度和编码效率之间具有适当的平衡的高效的MPM列表配置方法。

图12和图13是示意性地例示针对当前块配置MPM列表的方法的流程图。

参照图12和图13,可以构造包括k个MPM候选的针对当前块的MPM列表。在这种情况下,k可以指示MPM列表的长度,即,MPM列表中所包括的MPM候选的数目。根据图12和图13中公开的实施方式,可以基于五个条件来构造5个高效MPM列表(MPM列表1至MPM列表5)。即,基于这五个条件,可以将这5个MPM列表中的一个导出为针对当前块的MPM列表。MPM列表可以是如图12中例示的独立列表,并且可以是如图13中例示的具有部分共享部分的列表。如果使用如图13中共享的部分列表,则可以避免重复过程。可以对条件5进行建模,使得所有条件的概率之和变为1。

图14是例示了针对当前块配置MPM列表的方法的实施方式的流程图。

图14例示了基于与当前块相邻的邻近块高效地配置包括k个MPM候选的针对当前块的MPM列表的方法。例如,k可以为6,并且可以使用五个条件,以便在5个高效列表当中配置针对当前块的MPM列表。在图14中,L可以指示图11中例示的邻近块B的帧内预测模式,并且A可以指示图11中例示的邻近块D的帧内预测模式。另选地,相反,L可以指示图11中例示的邻近块D的帧内预测模式,并且A可以指示图11中例示的邻近块B的帧内预测模式。在图14中,符号“!”是负逻辑运算符,并且可以是指将非真的值转换为真值以及将真值转换为非真值的“非”运算符。例如,!7可以指示值0,!0可以指示值1。

参照图14,编码/解码设备可以检查用于确定L和A是否相等的条件1(S1400)。即,编码/解码设备可以确定L和A是否是相同的帧内预测模式。条件1可以是用于确定是否“L==A”的条件。

如果L和A是相同的帧内预测模式(即,当满足条件1时),则编码/解码设备可以检查用于确定L(或A)是否是定向帧内预测模式的条件2(S1405)。即,编码/解码设备可以确定L和A是否相同并且L(或A)的模式编号是否大于DC模式的模式编号。条件2可以是用于确定是否“L>DC_idx”的条件。

当满足条件2时,编码/解码设备可以将MPM列表1导出为针对当前块的MPM列表(S1410)。当不满足条件2时,编码/解码设备可以将MPM列表2导出为针对当前块的MPM列表(S1415)。

在这种情况下,MPM列表1可以如同表2一样构造,并且MPM列表2可以如同表3一样构造。

[表2]

[表3]

参照表2和表3,如表2中,MPM列表1可以包括第一MPM候选(mpm[0])至第六MPM候选(mpm[5])。如表3中,MPM列表2可以包括第一MPM候选(mpm[0])至第六MPM候选(mpm[5])。在这种情况下,第一MPM候选至第六MPM候选可以指示由相应MPM索引值0至5指示的帧内预测模式(即,模式编号)。例如,第一MPM候选指示指派给mpm[0]的帧内预测模式,并且可以被指示为MPM索引的值0。

如果L和A不是相同的帧内预测模式(即,当不满足条件1时),则编码/解码设备可以导出部分共享的MPM列表1(S1420)。

在这种情况下,可以如表4中一样构造部分共享的MPM列表1。

[表4]

参照表4,部分共享的MPM列表1可以包括指示L的第一MPM候选(mpm[0])和指示A的第二MPM候选(mpm[1])。即,如果L和A不相等,则编码/解码设备可以首先将L和A添加到MPM列表。因此,如同在表4中,随后将描述的MPM列表3、4和5可以被构造为部分地包括第一MPM候选(mpm[0])和第二MPM候选(mpm[1])。在这种情况下,在导出第一MPM候选(mpm[0])和第二MPM候选(mpm[1])时,可以通过对L和A的模式编号的大小进行比较来确定MPM索引顺序。例如,参照表4,当L具有大于A的模式编号时,指示L的max_idx值可以被设置为0,并且指示A的min_idx值可以被设置为1。当L具有小于A的模式编号时,max_idx值和min_idx值可以被颠倒地设置。

接下来,编码/解码设备可以检查用于确定L和A二者是否是定向帧内预测模式的条件3(S1425)。即,编码/解码设备可以确定L和A是否相等并且L和A中的每一个的模式编号是否大于DC模式编号。条件3可以是用于确定是否“L>DC_idx且A>DC_idx”的条件。

如果L和A中的每一个具有比DC模式大的模式编号(即,当满足条件3时),则编码/解码设备可以导出部分共享的MPM列表2(S1440)。

在这种情况下,可以如表5中一样构造部分共享的MPM列表2。

[表5]

参照表5,部分共享的MPM列表2可以包括指示平面模式的第三MPM候选(mpm[2])和指示DC模式的第四MPM候选(mpm[3])。即,如果满足条件3,则这意指L和A二者是定向帧内预测模式。因此,编码/解码设备可以将平面模式和DC模式(即,非定向帧内预测模式)作为在表4中描述的部分共享的MPM列表1中所包括的第一MPM候选(mpm[0]=L)和第二MPM候选(mpm[1]=A)之后的第三MPM候选(mpm[2])和第四MPM候选(mpm[3])添加到MPM列表。因此,随后将描述的MPM列表4和5可以被构造为部分地包括表5中的第三MPM候选(mpm[2])和第四MPM候选(mpm[3])连同表4中的第一MPM候选(mpm[0])和第二MPM候选(mpm[1])。

接下来,编码/解码设备可以检查用于确定L的模式编号与A的模式编号之间的差值是否不是64并且不是1的条件4(S1445)。条件4可以是用于确定是否“diff!=64且diff!=1”的条件。

例如,可以如同表5中例示的式一样计算L的模式编号与A的模式编号之间的差值(diff)。在这种情况下,diff可以是通过从L的模式编号和A的模式编号中的较大值减去较小值而获得的结果。

在这种情况下,当满足条件4时,编码/解码设备可以将MPM列表5导出为针对当前块的MPM列表(S1455)。当不满足条件4时,编码/解码设备可以将MPM列表4导出为针对当前块的MPM列表(S1450)。

在这种情况下,可以如同表6一样构造MPM列表4,并且可以如同表7一样构造MPM列表5。

[表6]

[表7]

表6的MPM列表4和表7的MPM列表5中的每一个可以被构造为包括第五MPM候选(mpm[4])和第六MPM候选(mpm[5])连同表4和表5中描述的第一MPM候选至第四MPM候选(mpm[0]至mpm[3])。

此外,如果在步骤S1425中L和A中的至少一个是非定向帧内预测模式(即,当不满足条件3时),则编码/解码设备可以检查用于确定L和A中的仅任一个是否是非定向帧内预测模式的条件5(S1430)。即,编码/解码设备可以确定L和A中的至少一个是否为DC模式编号或更小并且L的模式编号与A的模式编号之和是否为2或更大。条件5可以是用于确定是否“L+A>=2”的条件。

当L的模式编号与A的模式编号之和为2或更大时(即,当满足条件5时),编码/解码设备可以将MPM列表3导出为针对当前块的MPM列表(S1435)。

在这种情况下,可以如表8中一样构造MPM列表3。

[表8]

参照表8,MPM列表3可以被构造为包括第三MPM候选至第六MPM候选(mpm[2]至mpm[5])连同在表4中描述的第一MPM候选(mpm[0])和第二MPM候选(mpm[1])。在这种情况下,满足条件5可以意指L和A中的任一个是定向预测模式,而另一个是非定向预测模式。因此,MPM列表3可以包括非定向预测模式作为在第一MPM候选和第二MPM候选之后的第三MPM候选(mpm[2])。例如,如果L和A当中的具有非定向模式的一个是平面模式,则可以导出第三MPM候选(mpm[2])是DC模式。例如,如果L和A当中的具有非定向模式的一个是DC模式,则可以导出第三MPM候选(mpm[2])是平面模式。

当L的模式编号与A的模式编号之和不为2或更大时(即,当不满足条件5时),编码/解码设备可以将MPM列表2导出为当前块的MPM列表(S1415)。在这种情况下,L和A二者都可以是非定向预测模式。

在这种情况下,MPM列表2可以与表3相同。参照表3,由于L和A二者都是非定向预测模式,因此在MPM列表2中,可以分别将平面模式和DC模式导出为第一MPM候选(mpm[0])和第二MPM候选(mpm[1])。可以如表3中例示地导出其余的第三MPM候选至第六MPM候选(mpm[2]至mpm[5])。

在表2至表8中,在(定向帧内预测模式+1)、(定向帧内预测模式-1)、(定向帧内预测模式+2)、(定向帧内预测模式-2)等中,可以通过算术方式加上或减去一值。然而,在一些情况下,无法简单地进行算术计算。例如,在非定向帧内预测模式中,不能通过减去或加上定向帧内预测模式来维持邻近帧内预测模式的一致性,或者可能超过最大可用帧内预测模式索引。例如,可以将从定向帧内预测模式中减去1而获得的值导出为指示DC索引的帧内模式1(DC模式)。通过将66号定向帧内预测模式加1来获得67,因此它超过最大可用帧内模式的索引66。因此,可以使用模数运算(用%指示)如下地限制加或减模式的运算。即,能防止导出指示不一致的非定向帧内预测模式的值或超过最大可用帧内模式索引的值。例如,可以如同表9一样导出使用模数运算来加或减模式。

[表9]

可以在编码/解码设备中执行以上提到的实施方式中的配置MPM列表的方法。在这种情况下,在配置MPM列表时,编码设备可以导出将应用于当前块的最佳帧内预测模式,并且可以确定所导出的最佳帧内预测模式是否属于包括使用诸如以上提到的实施方式的方法这样的方法而构造的MPM候选的MPM列表。如果当前块的帧内预测模式属于包括MPM候选的MPM列表,则编码设备可以对MPM标志和MPM索引进行编码。在这种情况下,MPM标志可以指示当前块的帧内预测模式是否属于MPM列表(即,MPM候选)。MPM索引可以指示在MPM列表中所包括的MPM候选当中哪一种MPM模式被应用为当前块的帧内预测模式。相反,如果当前块的帧内预测模式不属于包括MPM候选的MPM列表,则编码设备对当前块的帧内预测模式进行编码。

解码设备可以通过与编码设备等同地应用与以上提到的实施方式的方法相同的方法来配置MPM列表。此外,解码设备可以从编码设备接收MPM标志,并且可以使用MPM标志来识别应针对当前块的帧内预测模式是否被包括在MPM列表(即,MPM候选)中。如果应针对当前块的帧内预测模式被包括在MPM列表(即,MPM候选)内,则解码设备可以使用从编码设备接收到的MPM索引来导出应针对当前块的帧内预测模式。相反,如果应针对当前块的帧内预测模式未被包括在MPM列表(即,MPM候选)中,则解码设备可以使用指示除了MPM候选之外的其余预测模式当中的特定预测模式的预测模式索引(或其余预测模式索引;其余模式信息)来导出应针对当前块的帧内预测模式。

下文中,提出了通过将扩展后的MPM列表与包括3个MPM候选的MPM列表进行比较来配置具有相似复杂度的扩展后的MPM列表的方法。扩展后的MPM列表是指包括三个或更多个MPM候选的MPM列表,可以包括例如3个、4个、5个或6个MPM候选。在随后将描述的所提出的方法中,描述了其中使用两个邻近帧内预测模式(左邻近帧内预测模式和上邻近帧内预测模式)来生成包括6个MPM候选的MPM列表的实施方式。在这种情况下,左邻近帧内预测模式(LEFT)可以指示图11中的邻近块D的帧内预测模式,并且上邻近帧内预测模式(ABOVE)可以指示图11中的邻近块B的帧内预测模式。

在配置扩展后的MPM列表时,使用3个MPM候选的原因是在简便性和吞吐量方面有优势。然而,因为使用6个MPM候选的现有方法包括搜索各个邻近块的位置的处理、连续剪枝处理、用于生成MPM列表的步骤、行缓冲区要求和解析依赖性,所以复杂度会增加。因此,如在使用3个MPM候选的方法中,提出了即使在使用6个MPM候选时也能够获得复杂度和吞吐量方面的优点的方法。

在一个实施方式中,可以基于诸如表10这样的算法(即,伪代码)来构造MPM列表。

[表10]

参照表10,可以基于LEFT和ABOVE(即,邻近帧内预测模式)来生成当前块的MPM列表。在这种情况下,LEFT可以指示图11中的邻近块D的帧内预测模式,并且ABOVE可以指示图11中的邻近块B的帧内预测模式。此外,邻近块D可以指示邻近当前块左侧的左邻近块当中的位于最下侧的左邻近块。邻近块B可以指示邻近当前块上侧的邻近块当中的位于最右侧的上邻近块。

具体地,可以导出LEFT和ABOVE的帧内预测模式。此外,可以基于LEFT和ABOVE的帧内预测模式将当前块的MPM列表(即,MPM候选)设置为MPM_ordering_0。在这种情况下,如果LEFT和ABOVE相等并且LEFT的模式编号大于或等于DC模式,则当前块的MPM列表(即,MPM候选)可以被设置为MPM_ordering_1。另选地,如果LEFT和ABOVE不相等,LEFT的模式编号大于DC模式的模式编号并且ABOVE的模式编号大于DC模式的模式编号,则当前块的MPM列表(即,MPM候选)可以被设置为MPM_ordering_2。另选地,如果LEFT和ABOVE不相等,LEFT的模式编号和ABOVE的模式编号中的至少一个不大于DC模式的模式编号并且LEFT的模式编号与ABOVE的模式编号之和大于DC模式的模式编号,则当前块的MPM列表(即,MPM候选)可以被设置为MPM_ordering_3。

在这种情况下,MPM_ordering_0、MPM_ordering_1、MPM_ordering_2或MPM_ordering_3可能已被构造为包括根据如图12至图14中描述的预定顺序的MPM候选。

此外,如果除了导出的MPM候选之外的其余帧内预测模式中的一种是如上所述应针对当前块的帧内预测模式,则可以基于其余模式信息来执行对当前块的MPM编码。可以通过应用截短二进制(TB)编码来对此其余模式信息进行编码/解码。

在另一实施方式中,可以基于诸如表11这样的算法(即,spec)来构造MPM列表。

[表11]

/>

/>

参照表11,可以基于当前块的邻近块来导出候选帧内预测模式。可以基于候选帧内预测模式来构造针对当前块的MPM列表。候选帧内预测模式可以包括候选帧内预测模式A和候选帧内预测模式B。

例如,当随后将要描述的条件中的至少一个为真时(即,当满足随后将描述的条件中的至少一个时),候选帧内预测模式A可以被设置为平面模式帧内预测模式。

-邻近块A不可用

-未向邻近块A应用帧内预测

在这种情况下,邻近块A可以是当前块的左邻近块。左邻近块可以是邻近当前块的左邻近块当中的位于最下侧的左邻近块。例如,如果当前块的大小为cbWidth×cbHeight并且当前块的左上样本位置处的x分量和y分量为xCb和yCb,则邻近块A可以是包括(xCb-1,yCb+cbHeight-1)坐标处的样本的块。此外,邻近块A可以指示图11的邻近块D。

当不是所有条件都为真时(即,当不是所有条件都满足时),候选帧内预测模式A可以被设置为邻近块A的帧内预测模式。

此外,例如,当随后将要描述的条件中的至少一个为真时(即,当满足随后将描述的条件中的至少一个时),候选帧内预测模式B可以被设置为平面模式帧内预测模式。

-邻近块B不可用

-未向邻近块B应用帧内预测

-yCb-1小于((yCb>>CtbLog2SizeY)<

在这种情况下,邻近块B可以是当前块的上邻近块。上邻近块可以是邻近当前块的上邻近块当中的位于最右侧的上邻近块。例如,如果当前块的大小为cbWidth×cbHeight并且当前块的左上样本位置处的x分量和y分量为xCb和yCb,则邻近块B可以是包括(xCb+cbWidth-1,yCb-1)坐标处的样本的块。此外,CtbLog2SizeY可以指示当前CTU的大小,并且((yCb>>CtbLog2SizeY)<>CtbLog2SizeY)<

当不是所有条件都为真时(即,当不是所有条件都满足时),候选帧内预测模式B可以被设置为邻近块B的帧内预测模式。

如果已导出候选帧内预测模式,则可以如同第一MPM列表一样构造当前块的MPM列表。第一MPM列表可以被配置有指示候选帧内预测模式A的第一MPM候选、指示通过使用负逻辑运算符对候选帧内预测模式A执行运算而获得的值的帧内预测模式的第二MPM候选、指示50号帧内预测模式的第三MPM候选、指示18号帧内预测模式的第四MPM候选、指示46号帧内预测模式的第五MPM候选以及指示54号帧内预测模式的第六MPM候选。

此后,可以确定候选帧内预测模式B和候选帧内预测模式A是否相等。

在这种情况下,如果候选帧内预测模式B和候选帧内预测模式A相等,则可以确定候选帧内预测模式A是否大于1。当候选帧内预测模式A大于1时,可以如同第二MPM列表一样配置当前块的MPM列表。第二MPM列表可以被配置有指示候选帧内预测模式A的第一MPM候选、指示平面模式帧内预测模式的第二MPM候选、指示DC帧内预测模式的第三MPM候选、指示被导出为2+((candIntraPredModeA+62)%65)的帧内预测模式的第四MPM候选、指示被导出为2+((candIntraPredModeA-1)%65)的帧内预测模式的第五MPM候选以及指示被导出为2+((candIntraPredModeA+61)%65)的帧内预测模式的第六MPM候选。

否则,如果候选帧内预测模式B与候选帧内预测模式A不相等,则首先可以导出当前块的第一MPM候选和第二MPM候选。可以将第一MPM候选导出为候选帧内预测模式A,并且可以将第二MPM候选导出为候选帧内预测模式B。此外,可以设置biggerIdx。当第一MPM候选大于第二MPM候选时,可以将biggerIdx导出为0。当第一MPM候选不大于第二MPM候选时,可以将biggerIdx导出为1。

接下来,可以确定候选帧内预测模式A和候选帧内预测模式B是否大于1(即,可以确定候选帧内预测模式A的模式编号和候选帧内预测模式B的模式编号是否大于1)。在这种情况下,当候选帧内预测模式A和候选帧内预测模式B大于1时,可以导出当前块的第三MPM候选和第四MPM候选。可以将第三MPM候选导出为平面模式帧内预测模式,并且可以将第四MPM候选导出为DC帧内预测模式。

接下来,可以确定具有biggerIdx的值的MPM索引所指示的MPM候选与具有通过使用负逻辑运算符对biggerIdx执行运算而获得的值(即,!biggerIdx)的MPM索引所指示的MPM候选之间的差值(diff)是否不是64并且也不是1。

当该差值不是64并且也不是1时,可以导出当前块的第五MPM候选和第六MPM候选。可以将第五MPM候选导出为被导出为2+((candModeList[biggerIdx]+62)%65)的帧内预测模式。可以将第六MPM候选导出为被导出为2+((candModeList[biggerIdx]–1)%65)的帧内预测模式。

否则,如果该差值是64或1时,可以导出当前块的第五MPM候选和第六MPM候选。可以将第五MPM候选导出为被导出为2+((candModeList[biggerIdx]+61)%65)的帧内预测模式。可以将第六MPM候选导出为被导出为2+((candModeList[biggerIdx])%65)的帧内预测模式。

此外,当候选帧内预测模式A与候选帧内预测模式B之和大于或等于2时,可以导出当前块的第三MPM候选、第四MPM候选、第五MPM候选和第六MPM候选。可以将第三MPM候选导出为被导出为通过使用负逻辑运算符对具有通过使用负逻辑运算符对biggerIdx执行运算而获得值(即,!biggerIdx)的MPM索引所指示的MPM候选执行运算而获得的值的帧内预测模式。可以将第四MPM候选导出为被导出为2+((candModeList[biggerIdx]+62)%65)的帧内预测模式。可以将第五MPM候选导出为被导出为2+((candModeList[biggerIdx]-1)%65)的帧内预测模式。可以将第六MPM候选导出为被导出为2+((candModeList[biggerIdx]+61)%65)的帧内预测模式。

如上所述,可以基于包括所导出的MPM候选的MPM列表来导出针对当前块的帧内预测模式。可以通过基于所导出的帧内预测模式对当前块执行预测来生成预测样本。

在这种情况下,在导出当前块的帧内预测模式时,当MPM标志(例如,表11中的intra_luma_mpm_flag)为1时,如上所述,可以将所导出的MPM候选当中的MPM索引(例如,表11中的intra_luma_mpm_idx)所指示的MPM候选导出为当前块的帧内预测模式。另选地,当MPM标志(例如,表11中的intra_luma_mpm_flag)为0时,如上所述,可以将指示除了所导出的MPM候选之外的其余帧内预测模式中的一种的其余模式(例如,表11中的intra_luma_mpm_remainder)导出为当前块的帧内预测模式。

如上所述,针对当前块的帧内预测模式信息可以被编码并被作为语法元素的值发信号通知。在这种情况下,帧内预测模式信息是对于当前块的帧内预测所需的信息,并且可以包括以上提到的MPM标志、MPM索引、其余模式等。在对帧内预测模式信息进行编码时,可以基于各个语法元素来应用各种二值化处理。

在这种情况下,二值化可以意指针对语法元素的所有可能的值的一组bin串。此外,二值化处理可以意指将语法元素的所有可能的值唯一地映射到一组bin串的过程。bin可以意指一数位的二进制值。例如,“0”或“1”可以被称为单个bin。bin串可以意指配置有bin的二进制序列,例如,bin串可以是诸如“01”这样的连续的二进制值。

在一个实施方式中,帧内预测模式信息和对应二值化的语法元素可以与表12相同。

[表12]

/>

参照表12,可以通过向“intra_luma_mpm_flag”语法元素应用固定长度(FL)二值化处理来对表示MPM标志的“intra_luma_mpm_flag”语法元素进行编码/解码。可以通过向“intra_luma_mpm_idx”语法元素应用截短莱斯(TF)二值化处理来对表示MPM索引的“intra_luma_mpm_idx”语法元素进行编码/解码。可以通过向“ntra_luma_mpm_remainder”语法元素应用截短二进制(TB)二值化处理来对表示其余模式的“intra_luma_mpm_remainder”语法元素进行编码/解码。

根据该文件的实施方式,如上所述,可以扩展现有的35种帧内预测模式,因此可以使用67种帧内预测模式。在这种情况下,在对帧内预测模式信息进行编码时,表示其余模式的语法元素可能需要6位。然而,可以根据编码方法(即,二值化方法)减少表示其余模式的语法元素的位数。即,如表12中,当对表示其余模式的语法元素进行编码时,通过执行截短二进制(TB)二值化处理,能减少位数并且能提高编码效率。

在一个实施方式中,可以对表示其余模式的语法元素执行诸如表13这样的截短二进制(TB)二值化处理。

[表13]

参照表13,当输入表示其余模式的语法元素(intra_luma_mpm_remainder)时,可以基于截短二进制(TB)编码来输出语法元素(intra_luma_mpm_remainder)的TB二值化值。首先,可以确定语法元素(intra_luma_mpm_remainder)的可能值的范围。语法元素(intra_luma_mpm_remainder)的范围可以在0至cMax之间。cMax可以指示语法元素(intra_luma_mpm_remainder)的最大值,并且可以具有大于或等于1的值。可以基于表13的算法来导出语法元素(intra_luma_mpm_remainder)的值的TB二值化值(TB bin串)。例如,在表14中,在表示其余模式的语法元素(intra_luma_mpm_remainder)的情况下,cMax为60。因此,可以使用6位来表示语法元素(intra_luma_mpm_remainder)。然而,如果基于诸如表13的算法这样的TB编码对表示其余模式的语法元素(intra_luma_mpm_remainder)的值执行二值化编码,则可以基于语法元素(intra_luma_mpm_remainder)的值使用小于6位的位数来执行二值化编码。例如,表示其余模式的语法元素(intra_luma_mpm_remainder)可以被用于基于语法元素的值来可变地生成从1位到5位的位,并且可以通过TB编码来编码。

图15是示意性地例示了根据该文件的实施方式的可以由编码设备执行的编码方法的流程图。

可以由图2中公开的编码设备200执行图15中公开的方法。具体地,可以由图2中公开的预测器220和帧内预测器222来执行图15中的步骤S1500至S1520。可以由图2中公开的熵编码器240执行图15中的步骤S1530。此外,图15中公开的方法可以包括在本说明书中公开的实施方式。因此,在图15中,省略了与以上提到的实施方式重复的内容的详细描述,或者简要描述这些内容。

参照图15,编码设备可以通过基于与当前块相邻的邻近块导出针对当前块的最可能模式(MPM)候选来配置MPM列表(S1500)。

在这种情况下,邻近块可以包括图11中例示的邻近块A、邻近块B、邻近块C、邻近块D、邻近块E、邻近块F和/或邻近块G。

在一个实施方式中,在配置MPM列表时,可以使用两个邻近块。例如,可以使用邻近块D和邻近块B。邻近块D可以指示邻近当前块左侧的左邻近块当中的位于最下侧的左邻近块。邻近块B可以指示邻近当前块上侧的邻近块当中的位于最右侧的上邻近块。

编码设备可以基于第一邻近块(邻近块D)来导出第一MPM候选,并且可以基于第二邻近块(邻近块B)来导出第二MPM候选。

例如,如果第一邻近块可用并且已向第一邻近块应用帧内预测,则可以将第一MPM候选导出为第一邻近块的帧内预测模式。如果第一邻近块不可用或者没有向第一邻近块应用帧内预测,则可以将第一MPM候选导出为平面帧内预测模式。

此外,例如,如果第二邻近块可用,已向第二邻近块应用帧内预测并且第二邻近块被包括在当前CTU中,则可以将第二MPM候选导出为第二邻近块的帧内预测模式。如果第二邻近块不可用或者没有向第二邻近块应用帧内预测或者第二邻近块没有被包括在当前CTU中,则可以将第二MPM候选导出为平面帧内预测模式。

编码设备可以基于如上所述导出的第一MPM候选和第二MPM候选来配置MPM列表。在这种情况下,根据MPM列表的候选的数目,可以导出包括第一MPM候选和第二MPM候选的其余MPM候选。如上所述,MPM列表中所包括的候选的数目可以根据算法而不同,并且例如可以是3、4、5或6。此外,如上所述,可以另外基于根据第一邻近块导出的第一MPM候选和根据第二邻近块导出的第二MPM候选,根据预定条件来导出MPM候选。

例如,编码设备可以确定第一MPM候选与第二MPM候选是否相同,并且可以确定第一MPM候选或第二MPM候选的模式编号是否大于DC模式的模式编号。在这种情况下,当第一MPM候选与第二MPM候选不相同时,编码设备可以确定第一MPM候选和第二MPM候选中的每一个是否具有比DC模式大的模式编号,或者第一MPM候选和第二MPM候选中的任一个是否具有比DC模式大的模式编号。此外,当第一MPM候选和第二MPM候选中的每一个具有比DC模式大的模式编号时,编码设备可以基于第一MPM候选的模式编号与第二MPM候选的模式编号之间的差值(例如,这两个候选的模式编号之间的差值为1或2,还是大于或等于62)来确定。如上所述,编码设备可以基于第一MPM候选和第二MPM候选基于是否满足此条件来不同地配置MPM列表。例如,MPM列表可以包括6个MPM候选。在这种情况下,编码设备可以基于是否满足此条件来导出包括第一MPM候选和第二MPM候选的6个MPM候选。在这种情况下,6个MPM候选可以被映射到对应的

通过基于当前块的邻近块导出MPM候选来生成MPM列表的以上提到的处理仅是示例。通过考虑编码效率,可以使用各种方法来构造MPM列表。此外,可以向生成MPM列表的处理应用该文件中描述的用于配置MPM列表的各种实施方式。已经参照图12至图14、表1至表13对此进行了详细描述,并且在本实施方式中省略了对其的描述。

编码设备可以确定针对当前块的帧内预测模式(S1510)。

在一个实施方式中,编码设备可以通过对当前块执行各种帧内预测模式来导出具有最佳速率失真(RD)成本的帧内预测模式,并且可以将该帧内预测模式确定为针对当前块的帧内预测模式。在这种情况下,编码设备可以基于包括2种非定向帧内预测模式和65种定向帧内预测模式的帧内预测模式来导出当前块的最佳帧内预测模式。67种帧内预测模式与以上参照图10描述的帧内预测模式相同。

此外,编码设备可以生成与当前块的帧内预测模式相关的信息。与帧内预测模式相关的信息是用于指示当前块的帧内预测模式的信息,并且可以包括MPM标志信息、MPM索引信息、其余模式信息等。

在一个实施方式中,编码设备可以确定所确定的当前块的帧内预测模式是否被包括在MPM列表内的MPM候选中,并且可以基于确定结果来生成MPM标志信息。例如,如果当前块的帧内预测模式被包括在MPM列表内的MPM候选中,则编码设备可以将MPM标志信息设置为1。另选地,如果当前块的帧内预测模式未被包括在MPM列表内的MPM候选中,则编码设备可以将MPM标志信息设置为0。

此外,如果当前块的帧内预测模式被包括在MPM列表内的MPM候选中,则编码设备可以生成指示MPM候选当中的当前块的帧内预测模式的MPM索引信息。例如,如果MPM列表被配置有6个MPM候选,则MPM索引信息可以是0至5个索引值。

如果当前块的帧内预测模式未被包括在MPM列表内的MPM候选中,则编码设备可以生成指示除了MPM候选之外的其余帧内预测模式当中的当前块的帧内预测模式的其余模式信息。例如,如上所述,如果使用67种帧内预测模式并且MPM列表被构造为包括6个MPM候选,则其余帧内预测模式可以包括通过从帧内预测预测的总数中减去MPM候选的数目而获得的61种模式。因此,其余模式信息可以指示0至60个索引值。

编码设备可以基于所确定的当前块的帧内预测模式执行帧内预测来生成当前块的预测样本(S1520)。

在一个实施方式中,编码设备可以基于帧内预测模式来导出当前块的邻近样本中的至少一个,并且可以基于邻近样本来生成预测样本。在这种情况下,邻近样本可以包括当前块的左上角邻近样本、上邻近样本和左邻近样本。例如,如果当前块的大小为W×H并且当前块的左上样本位置处的x分量和y分量为xN和yN,则左邻近样本可以为p[xN-1][yN]至p[xN-1][2H+yN-1],左上角邻近样本可以为p[xN-1][yN-1],并且上邻近样本可以为p[xN][yN-1]至p[2W+xN-1][yN-1]。

编码设备可以对包括与当前块的帧内预测模式相关的信息的图像信息进行编码(S1530)。

即,编码设备可以生成与帧内预测模式相关的信息(包括以上提到的MPM标志信息、MPM索引信息和其余模式信息中的至少一个),并且可以对与帧内预测模式相关的信息进行编码。

因为如上所述帧内预测模式的数目被扩展到67,所以为了指示其余模式信息,位的数目也是必要的。因此,为了提高编码效率,可以使用截短二进制(TB)二值化方法来对其余模式信息进行编码。

在一个实施方式中,编码设备可以基于二值化处理对以上提到的MPM标志信息、MPM索引信息或其余模式信息进行编码。在这种情况下,可以基于预定的二值化类型信息对MPM标志信息、MPM索引信息或其余模式信息执行二值化处理。这可以与表12相同。根据表12,其余模式信息已经被预先定义为截短二进制(TB)二值化类型。

如上所述,可以基于包括2种非定向帧内预测模式和65种定向帧内预测模式的67种帧内预测模式来导出MPM候选。因此,其余模式信息可以将基于67种帧内预测模式当中的除了MPM候选的数目(例如,6)之外的其余帧内预测模式而导出的帧内预测模式的指示信息表示为语法元素的值。例如,指示其余模式信息的语法元素的值可以被表示为用于指示61种帧内预测模式的索引值(例如,0至60的值)。

在一个实施方式中,可以通过基于表13的算法执行截短二进制(TB)二值化处理来导出指示其余模式信息的语法元素的值。如上所述,其余模式信息被表示为语法元素的值。如表12中描述的,其余模式信息的语法元素的值的最大范围cMax可以为60。因此,根据表13的算法,当表示其余模式信息的语法元素的值小于基于除了MPM候选之外的其余帧内预测模式的数目(即,cMax)而导出的特定值时,表示其余模式信息的语法元素的值可以是基于截短二进制(TB)二值化处理使用从1位至5位的可变的位数而导出的值。在相反的情况下,可以基于截短二进制(TB)二值化处理将表示其余模式信息的语法元素的值导出为6位值。可以通过如表13中向其余模式信息应用截短二进制(TB)二值化处理根据语法元素的值使位数减少。

此外,尽管未例示,但是编码设备可以基于当前块的原始样本和预测样本来导出当前块的残差样本,并且可以基于残差样本来生成与当前块的残差相关的信息。此外,编码设备可以对包括与残差相关的信息的图像信息进行编码,并且可以以比特流形式输出图像信息。

可以通过网络或者通过(数字)存储介质将比特流发送到解码设备。在这种情况下,网络可以包括广播网络和/或通信网络。数字存储介质可以包括诸如USB、SD、CD、DVD、Blueray、HDD和SSD这样的各种存储介质。

可以通过图2中公开的编码设备200的减法器231来执行导出当前块的残差样本的处理。可以由图2中公开的编码设备200的变换器232执行生成与残差相关的信息的处理。可以由图2中公开的编码设备200的熵编码器240执行对包括与残差相关的信息的图像信息进行编码的处理。

图16是示意性地例示了根据该文件的实施方式的可以由解码设备执行的解码方法的流程图。

可以由图3中公开的解码设备300执行图16中公开的方法。具体地,可以由图3中公开的预测器330和帧内预测器331执行图16中的步骤S1600至S1620。可以由图3中公开的加法器340执行图16中的步骤S1630。此外,可以由图3中公开的熵解码器310执行图16中的步骤S1610。此外,图16中公开的方法可以包括在本说明书中公开的实施方式。因此,在图16中,省略了与以上提到的实施方式重复的内容的详细描述,或者简要描述这些内容。

参照图16,解码设备可以通过基于与当前块相邻的邻近块导出针对当前块的最可能模式(MPM)候选来配置MPM列表(S1600)。

在这种情况下,邻近块可以包括图11中例示的邻近块A、邻近块B、邻近块C、邻近块D、邻近块E、邻近块F和/或邻近块G。

在一个实施方式中,在配置MPM列表时,可以使用两个邻近块。例如,可以使用邻近块D和邻近块B。邻近块D可以指示邻近当前块左侧的左邻近块当中的位于最下侧的左邻近块。邻近块B可以指示邻近当前块上侧的邻近块当中的位于最右侧的上邻近块。

解码设备可以基于第一邻近块(邻近块D)来导出第一MPM候选,并且可以基于第二邻近块(邻近块B)来导出第二MPM候选。

例如,如果第一邻近块可用并且已向第一邻近块应用帧内预测,则可以将第一MPM候选导出为第一邻近块的帧内预测模式。如果第一邻近块不可用或者没有向第一邻近块应用帧内预测,则可以将第一MPM候选导出为平面帧内预测模式。

此外,例如,如果第二邻近块可用,已向第二邻近块应用帧内预测并且第二邻近块被包括在当前CTU中,则可以将第二MPM候选导出为第二邻近块的帧内预测模式。如果第二邻近块不可用或者没有向第二邻近块应用帧内预测或者第二邻近块没有被包括在当前CTU中,则可以将第二MPM候选导出为平面帧内预测模式。

解码设备可以基于如上所述导出的第一MPM候选和第二MPM候选来配置MPM列表。在这种情况下,根据MPM列表的候选的数目,可以导出包括第一MPM候选和第二MPM候选的其余MPM候选。如上所述,MPM列表中所包括的候选的数目可以根据算法而不同,并且例如可以是3、4、5或6。此外,如上所述,可以另外基于根据第一邻近块导出的第一MPM候选和根据第二邻近块导出的第二MPM候选,根据预定条件来导出MPM候选。

例如,解码设备可以确定第一MPM候选与第二MPM候选是否相同,并且可以确定第一MPM候选或第二MPM候选的模式编号是否大于DC模式的模式编号。在这种情况下,当第一MPM候选与第二MPM候选不相同时,解码设备可以确定第一MPM候选和第二MPM候选中的每一个是否具有比DC模式大的模式编号,或者第一MPM候选和第二MPM候选中的任一个是否具有比DC模式大的模式编号。此外,当第一MPM候选和第二MPM候选中的每一个具有比DC模式大的模式编号时,解码设备可以基于第一MPM候选的模式编号与第二MPM候选的模式编号之间的差值(例如,这两个候选的模式编号之间的差值为1或2,还是大于或等于62)来确定。如上所述,解码设备可以基于第一MPM候选和第二MPM候选基于是否满足此条件来不同地配置MPM列表。例如,MPM列表可以包括6个MPM候选。在这种情况下,解码设备可以基于是否满足此条件来导出包括第一MPM候选和第二MPM候选的6个MPM候选。在这种情况下,6个MPM候选可以被映射到对应的

通过基于当前块的邻近块导出MPM候选来生成MPM列表的以上提到的处理仅是示例。通过考虑编码效率,可以使用各种方法来构造MPM列表。此外,可以向生成MPM列表的处理应用该文件中描述的用于配置MPM列表的各种实施方式。已经参照图12至图14、表1至表13对此进行了详细描述,并且在本实施方式中省略了对其的描述。

解码设备可以基于MPM列表来确定当前块的帧内预测模式(S1610)。

在一个实施方式中,解码设备可以根据比特流生成与当前块的帧内预测模式相关的信息。与帧内预测模式相关的信息是用于指示当前块的帧内预测模式的信息,并且可以包括MPM标志信息、MPM索引信息、其余模式信息等。

首先,解码设备可以获得指示当前块的帧内预测模式是否被包括在MPM列表内的MPM候选中的MPM标志信息。此外,解码设备可以基于MPM标志信息获得MPM索引信息或其余模式信息。

例如,当MPM标志信息指示1时,解码设备可以确定当前块的帧内预测模式被包括在MPM列表内的MPM候选中。在这种情况下,解码设备可以获得指示MPM候选当中的当前块的帧内预测模式的MPM索引信息。解码设备可以将MPM列表内的MPM索引信息所指示的MPM候选导出为当前块的帧内预测模式。

当MPM标志信息指示0时,解码设备可以确定当前块的帧内预测模式未被包括在MPM列表内的MPM候选中。在这种情况下,解码设备可以获得指示除了MPM候选之外的其余帧内预测模式当中的当前块的帧内预测模式的其余模式信息。解码设备可以将其余模式信息所指示的帧内预测模式导出为当前块的帧内预测模式。

因为如上所述帧内预测模式的数目被扩展到67,所以为了指示其余模式信息,位的数目也是必要的。因此,为了提高编码效率,其余模式信息可以是通过使用截短二进制(TB)二值化方法对其进行解码来获得的。

在一个实施方式中,解码设备可以基于二值化处理对以上提到的MPM标志信息、MPM索引信息或其余模式信息进行解码。在这种情况下,可以基于预定的二值化类型信息对MPM标志信息、MPM索引信息或其余模式信息执行二值化处理。这可以与表12相同。根据表12,其余模式信息已经被预先定义为截短二进制(TB)二值化类型。

如上所述,可以基于包括2种非定向帧内预测模式和65种定向帧内预测模式的67种帧内预测模式来导出MPM候选。因此,其余模式信息可以将基于67种帧内预测模式当中的除了MPM候选的数目(例如,6)之外的其余帧内预测模式而导出的帧内预测模式的指示信息表示为语法元素的值。例如,指示其余模式信息的语法元素的值可以被表示为用于指示61种帧内预测模式的索引值(例如,0至60的值)。

在一个实施方式中,可以通过基于表13的算法执行截短二进制(TB)二值化处理来导出指示其余模式信息的语法元素的值。如上所述,其余模式信息被表示为语法元素的值。如表12中描述的,其余模式信息的语法元素的值的最大范围cMax可以为60。因此,根据表13的算法,当表示其余模式信息的语法元素的值小于基于除了MPM候选之外的其余帧内预测模式的数目(即,cMax)而导出的特定值时,表示其余模式信息的语法元素的值可以是基于截短二进制(TB)二值化处理使用从1位至5位的可变的位数而导出的值。在相反的情况下,可以基于截短二进制(TB)二值化处理将表示其余模式信息的语法元素的值导出为6位值。可以通过如表13中向其余模式信息应用截短二进制(TB)二值化处理根据语法元素的值使位数减少。

解码设备可以通过基于所导出的帧内预测模式对当前块执行帧内预测来生成当前块的预测样本(S1620)。

在一个实施方式中,解码设备可以基于帧内预测模式来导出当前块的邻近样本中的至少一个,并且可以基于邻近样本来生成预测样本。在这种情况下,邻近样本可以包括当前块的左上角邻近样本、上邻近样本和左邻近样本。例如,如果当前块的大小为W×H并且当前块的左上样本位置处的x分量和y分量为xN和yN,则左邻近样本可以为p[xN-1][yN]至p[xN-1][2H+yN-1],左上角邻近样本可以为p[xN-1][yN-1],并且上邻近样本可以为p[xN][yN-1]至p[2W+xN-1][yN-1]。

解码设备可以基于预测样本来生成针对当前块的重构图片(S1630)。

在一个实施方式中,解码设备可以基于预测模式直接将预测样本用作重构样本,或者可以通过将残差样本与预测样本相加来生成重构样本。

如果存在当前块的残差样本,则解码设备可以接收与当前块的残差相关的信息。与残差相关的信息可以包括与残差样本相关的变换系数。解码设备可以基于残差信息来导出当前块的残差样本(或残差样本阵列)。解码设备可以基于预测样本和残差样本来生成重构样本,并且可以基于重构样本来导出重构块或重构图片。此后,如上所述,解码设备可以向重构图片应用诸如解块滤波和/或SAO过程这样的环路内滤波过程,以便增强主观/客观图片质量。

在以上提到的实施方式中,虽然已基于以一系列步骤或单元的形式的流程图描述了这些方法,但是该文件的实施方式不限于这些步骤的顺序,并且这些步骤中的一些可以按照与其它步骤的顺序不同的顺序执行或者可以与其它步骤同时执行。此外,本领域技术人员将理解,在流程图中示出的步骤不是排他性的,并且在不影响该文件的权利范围的情况下,这些步骤可以包括附加步骤或者可以删除流程图中的一个或更多个步骤。

根据该文件的以上提到的方法可以用软件形式实现,并且根据该文件的编码设备和/或解码设备可以被包括在例如TV、计算机、智能电话、机顶盒或显示装置的用于执行图像处理的设备中。

在该文件中,当以软件形式实现实施方式时,以上提到的方法可以被实现为用于执行以上提到的功能的模块(程序、函数等)。模块可以被存储在存储器中并且由处理器来执行。存储器可以布置在处理器的内部或外部,并且通过各种公知手段连接到处理器。处理器可以包括专用集成电路(ASIC)、其它芯片集、逻辑电路和/或数据处理装置。存储器可以包括只读存储器(ROM)、随机存取存储器(RAM)、闪存、存储卡、存储介质和/或其它存储装置。即,该文件中描述的实施方式可以在处理器、微处理器、控制器或芯片上实现并执行。例如,附图中例示的功能单元可以在计算机、处理器、微处理器、控制器或芯片上实现并执行。在这种情况下,用于这种实现的信息(例如,关于指令的信息)或算法可以被存储在数字存储介质中。

此外,应用该文件的解码设备和编码设备可以被包括在多媒体广播发送和接收装置、移动通信终端、家庭影院视频装置、数字影院视频装置、监视相机、视频聊天装置、诸如视频通信这样的实时通信装置、移动流传输装置、存储介质、摄像机、视频点播(VoD)服务提供装置、顶置(OTT)视频装置、互联网流传输服务提供装置、三维(3D)视频装置、虚拟现实(VR)装置、增强现实(AR)装置、视频电话视频装置、运输工具终端(例如,车辆(包括自主车辆)终端、飞机终端和轮船终端)和医疗视频装置中,并且可以被用于处理视频信号或数据信号。例如,顶置(OTT)视频装置可以包括游戏控制台、Blueray播放器、互联网访问TV、家庭影院系统、智能电话、平板PC和数字录像机(DVR)。

此外,应用该文件的处理方法可以以由计算机执行的程序的形式产生,并且可以被存储在计算机可读记录介质中。根据该文件的具有数据结构的多媒体数据也可以被存储在计算机可读记录介质中。计算机可读记录介质包括存储有计算机可读数据的所有种类的存储装置。计算机可读记录介质可以包括例如Blueray盘(BD)、通用串行总线(USB)、ROM、PROM、EPROM、EEPROM、RAM、CD-ROM、磁带、软盘和光学数据存储装置。此外,计算机可读记录介质包括以载波(例如,通过互联网进行传输)的形式实现的介质。此外,使用编码方法而生成的比特流可以被存储在计算机可读记录介质中,或者可以通过有线和无线通信网络传输。

此外,该文件的实施方式可以使用程序代码被实现为计算机程序产品。可以由根据该文件的实施方式的计算机执行程序代码。程序代码可以被存储在可由计算机读取的载波上。

图17例示了可以应用该文件中公开的实施方式的内容流传输系统的示例。

参照图17,应用本文件的实施方式的内容流传输系统可以主要包括编码服务器、流传输服务器、网络服务器、媒体存储器、用户装置和多媒体输入装置。

编码服务器将从诸如智能电话、相机、摄像机等这样的多媒体输入装置输入的内容压缩成数字数据以生成比特流,并且将该比特流传输到流传输服务器。作为另一示例,当诸如智能电话、相机、摄像机等这样的多媒体输入装置直接生成比特流时,可以省略编码服务器。

可以通过应用本文件的实施方式的编码方法或比特流生成方法来生成比特流,并且流传输服务器可以在发送或接收比特流的处理中临时存储比特流。

流传输服务器基于用户的请求通过网络服务器将多媒体数据发送到用户装置,并且网络服务器用作将服务告知用户的介质。当用户向网络服务器请求所期望的服务时,网络服务器将其传送到流传输服务器,流传输服务器将多媒体数据发送到用户。在这种情况下,内容流传输系统可以包括单独的控制服务器。在这种情况下,控制服务器用于控制内容流传输系统中的装置之间的命令/响应。

流传输服务器可以从媒体存储器和/或编码服务器接收内容。例如,当从编码服务器接收内容时,可以实时地接收内容。在这种情况下,为了提供平稳的流传输服务,流传输服务器可以存储比特流达预定时间。

用户装置的示例可以包括移动电话、智能电话、膝上型计算机、数字广播终端、个人数字助理(PDA)、便携式多媒体播放器(PMP)、导航仪、触屏PC、平板PC、超级本、可穿戴装置(例如,智能手表、智能眼镜、头戴式显示器)、数字TV、台式计算机、数字标牌等。

内容流传输系统中的各个服务器可以作为分布式服务器操作,在这种情况下,从各个服务器接收到的数据可以被分发。

相关技术
  • 一种编码方法、解码方法及装置、计算机可读存储介质
  • 一种编码方法及装置、计算机存储介质
  • 机器人编码方法及装置、机器人、存储介质、处理器
  • 基于噪声整形的压缩感知图像编码方法、存储介质
  • 一种数据编码方法、装置以及存储介质
  • 运动向量推断方法、多视点视频编码方法、多视点视频解码方法、运动向量推断装置、多视点视频编码装置、多视点视频解码装置、运动向量推断程序、多视点视频编码程序及多视点视频解码程序
  • 视频编码装置、视频编码方法、视频编码程序、视频解码装置、视频解码方法以及视频解码程序
技术分类

06120116581992