基于自适应环路滤波器的视频或图像编译

文档序号:1958196 发布日期:2021-12-10 浏览:17次 >En<

阅读说明:本技术 基于自适应环路滤波器的视频或图像编译 (Video or image coding based on adaptive loop filter ) 是由 塞特拉·帕卢瑞 林宰显 金昇焕 赵杰 于 2020-03-19 设计创作,主要内容包括:根据本文档的公开,可以分层地用信号通知ALF参数和/或LMCS参数,由此实现要用信号通知以用于视频/图像编译的数据量的减少和编译效率的增加。(According to the disclosure of the present document, the ALF parameters and/or LMCS parameters may be hierarchically signaled, thereby enabling a reduction in the amount of data to be signaled for video/image coding and an increase in coding efficiency.)

基于自适应环路滤波器的视频或图像编译

技术领域

本公开涉及基于自适应环路滤波器的图像或视频编译。

背景技术

最近,在各种领域中对诸如4K或8K超高清(UHD)图像/视频的高分辨率、高质量图像/视频的需求不断增加。随着图像/视频分辨率或质量变得更高,与传统图像/视频数据相比发送相对更多的信息或比特。因此,如果图像/视频数据经由诸如现有有线/无线宽带线路的介质发送或被存储在传统存储介质中,则传输和存储的成本容易增加。

此外,对虚拟现实(VR)和人工现实(AR)内容以及诸如全息图的沉浸式媒体的兴趣和需求日益增长;并且表现出与实际图像/视频不同的图像/视频特性的图像/视频(例如,游戏图像/视频)的广播也日益增长。

因此,需要高度高效的图像/视频压缩技术来有效地压缩并发送、存储或播放如上所述显示出各种特性的高分辨率、高质量图像/视频。

另外,存在对诸如利用亮度映射与色度缩放(LMCS)和自适应环路滤波(ALF)之类的技术的讨论,以改进压缩效率并且增加主观/客观视觉质量。为了有效地应用这些技术,需要一种用于有效地用信号通知相关信息的方法。

发明内容

技术方案

根据本文档的实施例,提供一种提高图像编译效率的方法和设备。

根据本文档的实施例,提供一种有效滤波应用方法和设备。

根据本文档的实施例,提供一种有效LMCS应用方法和设备。

根据本文档的实施例,提供一种用于分层地用信号通知ALF相关信息的方法和设备。

根据本文档的实施例,提供一种用于分层地用信号通知LMCS相关信息的方法和设备。

根据本文档的实施例,ALF数据可以通过APS用信号通知,并且指示与所参考的APS相关的ID的APS ID信息可以通过报头信息(图片报头或切片报头)用信号通知。

根据本文档的实施例,可以通过报头信息用信号通知关于与ALF相关APS ID的数量的信息。在此情况下,报头信息可以包括与和ALF相关APS ID的数量一样多的APS ID语法元素,并且基于此,可能支持以同一图片或同一切片内的块/子块为单位推导自适应滤波器(滤波器系数)并且应用ALF。

根据本文档的实施例,LMCS数据可以通过APS用信号通知,并且指示所参考的APS的ID的APS ID信息可以通过报头信息(图片报头或切片报头)用信号通知。

根据本文档的实施例,提供一种由解码设备执行的视频/图像解码方法。

根据本文档的实施例,提供一种用于执行视频/图像解码的解码设备。

根据本文档的实施例,提供一种由编码设备执行的视频/图像编码方法。

根据本文档的实施例,提供一种用于执行视频/图像编码的编码设备。

根据本文档的实施例,提供一种计算机可读数字存储介质,其存储根据本文档的至少一个实施例中所公开的视频/图像编码方法所生成的编码视频/图像信息。

根据本文档的实施例,提供一种存储编码信息或编码视频/图像信息的计算机可读数字存储介质,所述编码信息或编码视频/图像信息使得解码设备执行在本文档的至少一个实施例中所公开的视频/图像解码方法。

发明效果

根据本公开,可以提高整体图像/视频压缩效率。

根据本公开,通过有效滤波,可以改善主观/客观视觉质量。

根据本公开,可以以图片、切片和/或编译块为单位自适应地应用ALF和/或LMCS。

根据本公开,可以有效地用信号通知与ALF相关的信息。

根据本公开,可以有效地用信号通知与LMCS相关的信息。

附图说明

图1示意性地表示可以应用本公开的实施例的视频/图像编译系统的示例。

图2是示意性地描述可以应用本公开的实施例的视频/图像编码设备的配置的图。

图3是示意性地描述可以应用本公开的实施例的视频/图像解码设备的配置的图。

图4示例性地示出编译图像/视频的分层结构。

图5是示意性地示出ALF过程的示例的流程图。

图6示出ALF滤波器的形状的示例。

图7示出ALF数据的分层结构的示例。

图8示出ALF数据的分层结构的另一示例。

图9示例性地示出根据本文档的实施例的CVS的分层结构。

图10示出根据本文档的实施例的示例性LMCS结构。

图11示出根据本文档的另一实施例的示例性LMCS结构。

图12示出表示示例性前向映射的图。

图13和图14示意性地表示根据本文档的实施例的视频/图像编码方法和相关组件的示例。

图15和图16示意性地表示根据本文档的实施例的视频/图像解码方法和相关组件的示例。

图17说明性地表示应用本公开的内容流系统结构图。

具体实施方式

可以各种形式修改本文档的公开,并且将在附图中描述和图示其具体实施例。然而,实施例不是为了限制本公开。在该文档中使用的术语仅用于描述具体实施例,而不是要限制本文档的实施例。单数的表达包括复数的表达,只要它不被清楚地不同地理解。诸如“包括”和“具有”的术语旨在指示存在文档中使用的特征、数量、步骤、操作、元素、组件或其组合,并且因此应当理解,不排除存在或添加一个或多个不同特征、数量、步骤、操作、元素、组件或其组合的可能性。

另外,本文档中描述的附图的每个配置是用于解释作为彼此不同的特征的功能的独立图示,并且不意味着每个配置由相互不同的硬件或不同的软件实现。例如,可将两种或更多种配置组合以形成一种配置,并且还可将一种配置分成多种配置。在不脱离本公开的主旨的情况下,组合和/或分离配置的实施例包括在本文档的公开的范围内。

在下文中,将参考附图详细描述本文档的实施例。另外,在所有附图中,相同的附图标记可用于指示相同的元件,并且将省略对相同元件的相同描述。

图1示出可应用本文档的实施例的视频/图像编译系统的示例。

参照图1,视频/图像编译系统可包括源装置和接收装置。源装置可通过数字存储介质或网络将编码的视频/图像信息或数据以文件或流的形式传送至接收装置。

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

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

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

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

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

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

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

本公开提出视频/图像编译的各种实施例,并且除非另外指定,否则也可彼此组合地执行上述实施例。

在本公开中,视频可以指随着时间的一系列图像。图片通常是指表示特定时间帧处的一个图像的单元,并且切片(slice)/拼块(tile)是指在编译方面构成图片的一部分的单元。切片/拼块可以包括一个或多个编译树单元(CTU)。一个图片可由一个或多个切片/拼块组成。拼块是图片中的特定拼块列和特定拼块行内的CTU的矩形区域(拼块是图片中的特定拼块列和特定拼块行内的CTU的矩形区域)。拼块列是CTU的矩形区域,其具有等于图片的高度的高度和可由图片参数集中的语法元素指定的宽度(拼块列是CTU的矩形区域,其具有等于图片的高度的高度和由图片参数集中的语法元素指定的宽度)。拼块行是CTU的矩形区域,其具有由图片参数集中的语法元素指定的宽度和可等于图片的高度的高度(拼块行是CTU的矩形区域,其具有由图片参数集中的语法元素指定的高度和等于图片的宽度的宽度)。拼块扫描可表示对图片进行分区的CTU的特定顺序排序,并且CTU可在拼块中以CTU光栅扫描连续地排序,并且图片中的拼块能够以图片的拼块的光栅扫描连续地排序(拼块扫描是分割图片的CTU的特定顺序排序,其中CTU在拼块中以CTU光栅扫描被连续地排序而图片中的拼块以图片的拼块的光栅扫描被连续地排序)。切片包括可排他性地包含在单个NAL单元中的整数数目个完整拼块或图片的拼块内的整数数目个连续完整CTU行。

同时,一个图片可被划分为两个或更多个子图片。子图片可以是图片内的一个或多个切片的矩形区域。

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

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

在本文档中,“A或B”可意指“仅A”、“仅B”或“A和B这两者”。换句话说,本文档中的“A或B”可被解释为“A和/或B”。例如,在本文档中,“A、B或C”意指“仅A”、“仅B”、“仅C”或“A、B和C的任何组合”。

在本文档中使用的斜线(/)或逗号(,)可意指“和/或”。例如,“A/B”可意指“A和/或B”。因此,“A/B”可意指“仅A”、“仅B”或“A和B这两者”。例如,“A、B、C”可意指“A、B或C”。

在本文档中,“A和B中的至少一个”可意指“仅A”、“仅B”或“A和B这两者”。此外,在本文档中,表达“A或B中的至少一个”或“A和/或B中的至少一个”可被解释为与“A和B中的至少一个”相同。

此外,在本文档中,“A、B和C中的至少一个”意指“仅A”、“仅B”、“仅C”或“A、B和C的任意组合”。此外,“A、B或C中的至少一个”或“A、B和/或C中的至少一个”可意指“A、B和C中的至少一个”。

此外,在本文档中使用的括号可意指“例如”。具体地,当指示“预测(帧内预测)”时,可提出“帧内预测”作为“预测”的示例。换句话说,本文档中的“预测”不限于“帧内预测”,并且可提出“帧内预测”作为“预测”的示例。此外,即使当指示“预测(即,帧内预测)”时,也可提出“帧内预测”作为“预测”的示例。

在本文档中的一个附图中单独描述的技术特征可单独地实现或者可同时实现。

图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)。在这种情况下,可根据四叉树二叉树三叉树(QTBTTT)结构从编译树单元(CTU)或最大编译单元(LCU)递归地分割编译单元。例如,一个编译单元可基于四叉树结构、二叉树结构和/或三叉树结构被分割成深度更深的多个编译单元。在这种情况下,例如,首先应用四叉树结构,并且可稍后应用二叉树结构和/或三叉树结构。可替选地,也可首先应用二叉树结构。可基于不再被分割的最终编译单元来执行根据本文档的编译过程。在这种情况下,基于根据图像特性等的编译效率,最大编译单元可被直接用作最终编译单元,或者,根据需要,编译单元可被递归地分割成深度更深的编译单元,从而具有最佳大小的编译单元可用作最终编译单元。这里,编译过程可以包括诸如稍后描述的预测、变换和重构的过程。作为另一示例,处理单元还可以包括预测单元(PU)或变换单元(TU)。在这种情况下,预测单元和变换单元中的每个可以从上述最终编译单元中被分割或分区。预测单元可以是样本预测的单元,并且变换单元可以是用于推导变换系数的单元和/或用于从变换系数推导残差信号的单元。

在一些情况下,单元可与诸如块或区域的术语互换使用。在一般情况下,M×N块可表示由M列和N行组成的样本或变换系数的集合。样本通常可表示像素或像素值,可仅表示亮度分量的像素/像素值或者仅表示色度分量的像素/像素值。样本可用作与像素或像元的一个图片(或图像)对应的术语。

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

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

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

预测器200可基于稍后描述的各种预测方法来生成预测信号。例如,预测器不仅可应用帧内预测或帧间预测来预测一个块,而且可同时应用帧内预测和帧间预测二者。这可被称为组合帧间和帧内预测(CIIP)。此外,预测器可基于帧内块复制(IBC)预测模式或调色板模式,以对块执行预测。IBC预测模式或调色板模式可用于游戏等的内容图像/视频编译,例如屏幕内容编译(SCC)。IBC基本上在当前图片中执行预测,但是它可与帧间预测类似地执行,因为它在当前图片中推导参考块。也就是说,IBC可使用本文档中描述的帧间预测技术中的至少一种。调色板模式可被视为帧内编译或帧内预测的示例。当应用调色板模式时,可基于关于调色板表和调色板索引的信息用信号通知图片中的样本值。

通过预测器(包括帧间预测器221和/或帧内预测器222)生成的预测信号可用于生成重构信号或用于生成残差信号。变换器232可通过将变换技术应用于残差信号来生成变换系数。例如,变换技术可以包括以下中的至少一个:离散余弦变换(DCT)、离散正弦变换(DST)、基于图形的变换(GBT)或条件非线性变换(CNT)。这里,当像素之间的关系信息被图示为图形时,GBT意指从图形获取的变换。CNT意指基于通过使用所有先前重构的像素生成的预测信号而获取的变换。另外,变换过程还可应用于具有相同大小的正方形的像素块,并且还可应用于具有正方形以外的可变大小的块。

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

从量化器233输出的量化的变换系数可以用于生成预测信号。例如,解量化器234和逆变换器235将解量化和逆变换应用于量化的变换系数,使得可重构残差信号(残差块或残差样本)。加法器250将重构的残差信号与从帧间预测器221或帧内预测器222输出的预测信号相加,从而可以生成重构信号(重构图片、重构块、重构样本阵列)。如在应用跳过模式的情况下,如果要处理的块不存在残差,则预测块可用作重构块。加法器250可以被称为重构器或重构块生成器。所生成的重构信号可以用于当前图片内的要处理的下一个块的帧内预测,并且如稍后所述,还通过滤波用于下一图片的帧间预测。

同时,也可以在图片编码和/或重构期间应用亮度映射与色度缩放(LMCS)。

滤波器260可通过对重构信号应用滤波来改进主观/客观图像质量。例如,滤波器260可通过对重构图片应用各种滤波方法来生成修改的重构图片并将修改的重构图片存储在存储器270(具体地,存储器270的DPB)中。例如,各种滤波方法可以包括去块滤波、样本自适应偏移、自适应环路滤波器、双边滤波器等。滤波器260可生成与滤波有关的各种类型的信息并且将所生成的信息发送到熵编码器240,如在各个滤波方法的描述中稍后描述的。与滤波有关的信息可由熵编码器240编码并以比特流的形式输出。

发送到存储器270的修改的重构图片可用作帧间预测器221中的参考图片。当通过编码设备应用帧间预测时,可避免编码设备200与解码设备之间的预测失配并且编译效率可改进。

存储器270 DPB的DPB可存储用作帧间预测器221中的参考图片的修改的重构图片。存储器270可存储推导(或编码)当前图片中的运动信息的块的运动信息和/或图片中已经重构的块的运动信息。所存储的运动信息可被发送到帧间预测器221并用作空间邻近块的运动信息或时间邻近块的运动信息。存储器270可存储当前图片中的重构块的重构样本并且可将重构样本传送至帧内预测器222。

图3是用于示意性地解释可以应用本公开的实施例的视频/图像解码设备的配置的图。在下文中,被称为解码设备的设备可以包括图像解码设备和/或视频解码设备。

参照图3,解码设备300可以包括熵解码器310、残差处理器320、预测器330、加法器340、滤波器350和存储器360。预测器330可以包括帧间预测器331和帧内预测器332。残差处理器320可以包括解量化器321和逆变换器321。根据实施例,熵解码310、残差处理器320、预测器330、加法器340和滤波器350可由硬件组件(例如,解码器芯片组或处理器)配置。另外,存储器360可以包括解码图片缓冲器(DPB)或者可由数字存储介质配置。硬件组件还可以包括存储器360作为内部/外部组件。

当输入包括视频/图像信息的比特流时,解码设备300可以响应于在图2所示的编码设备中处理视频/图像信息的处理来重构图像。例如,解码设备300可以基于从比特流获取的块分割相关信息来推导单元/块。解码设备300可以使用应用于编码设备的处理单元来执行解码。因此,用于解码的处理单元可以是例如编译单元,并且可根据四叉树结构、二叉树结构和/或三叉树结构从编译树单元或最大编译单元分割编译单元。可以从所述编译单元推导一个或多个变换单元。另外,通过解码设备300解码并输出的重构图像信号可以通过再现设备被再现。

解码设备300可以接收以比特流的形式从图2中示出的编码设备输出的信号,并且可通过熵解码器310对接收的信号进行解码。例如,熵解码器310可通过解析比特流来推导图像重构(或图片重构)所需的信息(例如,视频/图像信息)。视频/图像信息还可以包括关于各种参数集的信息,例如适配参数集(APS)、图片参数集(PPS)、序列参数集(SPS)或视频参数集(VPS)。另外,视频/图像信息还可以包括一般约束信息。解码设备还可以基于关于参数集和/或一般约束信息的信息来解码图片。稍后将在本公开中描述的用信号通知/接收的信息和/或语法元素可以通过解码过程解码且从比特流获取。例如,熵解码器310可基于诸如指数Golomb编译、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对变换系数逆变换以获取残差信号(残差块、残差样本阵列)。

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

预测器可基于下述各种预测方法来生成预测信号。例如,预测器不仅可应用帧内预测或帧间预测以预测一个块,而且可同时应用帧内预测和帧间预测。这可被称为组合帧间和帧内预测(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可存储其中推导(解码)当前图片内的运动信息的块的运动信息和/或先前经重构图片内的块的运动信息。所存储的运动信息可被传送到帧间预测器260,以用作空间相邻块的运动信息或时间相邻块的运动信息。存储器360可存储当前图片内的重构块的重构样本,并且将所存储的重构样本传送到帧内预测器331。

在本文档中,在编码设备200的滤波器260、帧间预测器221和帧内预测器222中描述的示例性实施例可以被同等地应用于或分别对应于解码设备300的滤波器350、帧间预测器332和帧内预测器331。

同时,如上所述,在执行视频编译时,执行预测以改进压缩效率。由此,可生成包括用于作为要编译的块(即,编译目标块)的当前块的预测样本的预测块。这里,预测块包括空间域(或像素域)中的预测样本。在编码设备和解码设备中以相同的方式推导预测块,并且编码设备可将关于原始块和预测块之间的残差的信息(残差信息)而不是原始块的原始样本值用信号通知给解码设备,从而改进图像编译效率。解码设备可基于残差信息来推导包括残差样本的残差块,将残差块和预测块相加以生成包括重构样本的重构块,并且生成包括重构块的重构图片。

可通过变换和量化程序生成残差信息。例如,编码设备可推导原始块和预测块之间的残差块,对残差块中包括的残差样本(残差样本阵列)执行变换过程以推导变换系数,对变换系数执行量化过程以推导量化的变换系数,并且将相关残差信息(通过比特流)用信号通知解码设备。这里,残差信息可以包括量化的变换系数的值信息、位置信息、变换技术、变换核、量化参数等。解码设备可基于残差信息执行解量化/逆变换过程,并且推导残差样本(或残差块)。解码设备可基于预测块和残差块来生成重构图片。此外,为了用于之后的图片的帧间预测的参考,编码设备还可对量化的变换系数进行解量化/逆变换,以推导残差块,并且基于该残差块来生成重构图片。

帧内预测可指示基于当前块所属的图片(在下文中,被称为当前图片)中的参考样本来生成用于当前块的预测样本的预测。当帧内预测被应用于当前块时,可推导将用于当前块的帧内预测的相邻参考样本。当前块的相邻参考样本可以包括:与左边界相邻的样本和与大小为nWxnH的当前块的左下相邻的总共2xnH个样本;与当前块的上边界相邻的样本和与当前块的右上相邻的总共2xnW个样本;以及与当前块的左上相邻的一个样本。可替选地,当前块的相邻参考样本可以包括多列的上相邻样本和多行的左相邻样本。另外,当前块的相邻参考样本可以包括与大小为nWxnH的当前块的右边界相邻的总共nH个样本、与当前块的下边界相邻的总共nW个样本、以及与当前块的右下方相邻的一个样本。

然而,当前块的相邻参考样本中的一些尚未被解码或者可能不可用。在这种情况下,解码设备可通过利用可用样本取代不可用样本来构造要用于预测的相邻参考样本。可替选地,可通过可用样本的内插来构造要用于预测的相邻参考样本。

当推导相邻参考样本时,(i)可基于当前块的相邻参考样本的平均或内插来推导预测样本,或者(ii)可基于在当前块的相邻参考样本当中相对于预测样本位于特定(预测)方向上的参考样本来推导预测样本。(i)的情况可被称为非定向模式或非角度模式,并且(ii)的情况可被称为定向模式或角度模式。

另外,可以通过对相邻参考样本之中的基于当前块的预测样本位于当前块的帧内预测模式的预测方向上的第一相邻样本和位于与预测方向相反的方向上的第二相邻样本进行插值来生成预测样本。上述情况可以被称为线性内插帧内预测(LIP)。另外,可以使用线性模型(LM)基于亮度样本来生成色度预测样本。这种情况可以被称为LM模式。

另外,可通过基于滤波的相邻参考样本来推导当前块的临时预测样本,并且也可以通过在现有的相邻参考样本(即未滤波的相邻参考样本)当中根据帧内预测模式推导的至少一个参考样本与该临时预测样本的加权和,来推导当前块的预测样本。上述情况可被称为位置相关帧内预测(PDPC)。

另外,在围绕当前块的多个参考样本线当中选择具有最高预测准确度的参考样本线,并且使用位于选定参考样本线的预测方向上的参考样本来推导预测样本,并且可通过将所使用的参考样本线指示(用信号通知)给解码设备,来执行帧内预测编码。上述情况可被称为多参考线帧内预测或基于MRL的帧内预测。

另外,将当前块划分成垂直或水平子分区,以基于相同帧内预测模式执行帧内预测,但是能够以子分区为单位推导和使用相邻参考样本。即,在这种情况下,可以对所有子分区以相同方式应用用于当前块的帧内预测模式,但是可在一些情况下通过以子分区为单位推导和使用相邻参考样本来改进帧内预测性能。这种预测方法可被称为基于帧内子分区(ISP)的帧内预测。

上述帧内预测方法可被称为帧内预测类型,以与帧内预测模式相区别。帧内预测类型可由诸如帧内预测技术或附加帧内预测模式的各种术语来指代。例如,帧内预测类型(或附加帧内预测模式)可以包括上面提及的LIP、PDPC、MRL和ISP中的至少一种。除了诸如LIP、PDPC、MRL和ISP的特定帧内预测类型之外的一般帧内预测方法可被称为正常帧内预测类型。当不应用特定的帧内预测类型时通常可应用正常帧内预测类型,并且可基于帧内预测模式来执行预测。同时,如果必要,可对所推导的预测样本执行后处理滤波。

具体地,帧内预测过程可以包括帧内预测模式/类型确定步骤、相邻参考样本推导步骤和基于帧内预测模式/类型的预测样本推导步骤。另外,如果必要,可对推导的预测样本执行后滤波步骤。

当应用帧内预测时,可以通过使用邻近块的帧内预测模式来确定应用于当前块的帧内预测模式。例如,解码设备可以基于接收的MPM(最可能模式)索引来选择基于当前块的邻近块(例如,左和/或上邻近块)的帧内预测模式和附加候选模式而推导的MPM列表内的PMP候选中的一个或者可以基于剩余帧内预测模式信息来选择MPM候选(和平面模式)中未包括的剩余帧内预测模式中的一个。MPM列表可以被配置为包括或不包括平面模式作为候选。例如,当MPM列表包括平面模式作为候选时,MPM列表可具有6个候选,并且当MPM列表不包括平面模式作为候选时,MPM列表可以具有5个候选。当MPM列表不包括平面模式作为候选时,可以用信号通知指示当前块的帧内预测模式是否不是平面模式的非平面标志(例如,intra_luma_not_planar_flag)。例如,可以首先用信号通知MPM标志,并且可以在MPM标志的值为1时用信号通知MPM索引和非平面标志。另外,可以在非平面标志的值为1时用信号通知MPM索引。这里,MPM列表被配置为不包括平面模式作为候选的原因是由于平面模式总是被认为是MPM因此首先通过首先用信号通知标志(非平面标志)来确认平面模式,而不是说平面模式不是MPM。

例如,可以基于MPM标志(例如,intra_luma_mpm_flag)来指示应用于当前块的帧内预测模式是在MPM候选(和平面模式)中还是在剩余模式中。MPM标志的值1可以指示用于当前块的帧内预测模式在MPM候选(和平面模式)内,并且MPM标志的值0可以指示用于当前块的帧内预测模式不在MPM候选(和平面模式)内。非平面标志(例如,intra_luma_not_planar_flag)值0可以指示用于当前块的帧内预测模式是平面模式,而非平面标志值1可以指示用于当前块的帧内预测模式不是平面模式。可以以mpm_idx或intra_luma_mpm_idx语法元素的形式用信号通知MPM索引,并且可以以rem_intra_luma_pred_mode或intra_luma_mpm_remainder语法元素的形式用信号通知剩余帧内预测模式信息。例如,剩余帧内预测模式信息可以通过按预测模式编号的次序进行编索引来指示在全部帧内预测模式之中未包括在MPM候选(和平面模式)中的剩余帧内预测模式中的一个。帧内预测模式可以是用于亮度分量(样本)的帧内预测模式。在下文中,帧内预测模式信息可以包括MPM标志(例如,intra_luma_mpm_flag)、非平面标志(例如,intra_luma_not_planar_flag)、MPM索引(例如,mpm_idx或intra_luma_mpm_idx)和剩余帧内预测模式信息(rem_intra_luma_pred_mode或intra_luma_mpm_remainder)。在本文档中,可以通过诸如MPM候选列表和candModeList的各种术语来称呼MPM列表。当MIP应用于当前块时,可以单独地用信号通知用于MIP的单独的mpm标志(例如intra_mip_mpm_flag)、mpm索引(例如intra_mip_mpm_idx)和剩余帧内预测模式信息(例如intra_mip_mpm_remaining),并且不用信号通知非平面标志。

换句话说,通常,当图像被划分为块时,要编译的当前块和邻近块具有相似的图像特性。因此,当前块和邻近块具有相同或相似的帧内预测模式的可能性高。因此,编码设备可以使用邻近块的帧内预测模式来对当前块的帧内预测模式进行编码。

例如,编码设备/解码设备可以配置用于当前块的最可能模式(MPM)的列表。MPM列表可以被称为MPM候选列表。这里,MPM可以是指用于在帧内预测模式编译期间考虑当前块和邻近块之间的相似性来提高编译效率的模式。如上所述,MPM列表可以被配置为包括平面模式,或者可以被配置为排除平面模式。例如,当MPM列表包括平面模式时,MPM列表中的候选的数量可以是六。并且,当MPM列表不包括平面模式时,MPM列表中的候选的数量可以是五。

编码设备/解码设备可以配置包括5或6个MPM的MPM列表。

为了配置MPM列表,可以考虑三种类型模式:默认帧内模式、相邻帧内模式和推导帧内模式。

针对相邻帧内模式,可以考虑两个邻近块,即,左邻近块和上邻近块。

如上所述,如果MPM列表被配置为不包括平面模式,则从列表中排除平面模式,并且MPM列表候选的数量可以被设置为五。

另外,在帧内预测模式中,非方向模式(或非角度模式)是基于当前块的相邻参考样本的平均值的DC模式或基于相邻参考样本的插值的平面模式。

当应用帧间预测时,编码设备/解码设备的预测器可以通过以块为单位执行帧间预测来推导预测样本。帧间预测可以是以取决于除当前图片之外的图片的数据元素(例如,样本值或运动信息)的方式所推导的预测。当帧间预测应用于当前块时,基于由参考图片索引所指示的参考图片上的由运动向量所指定的参考块(参考样本阵列),可以推导当前块的预测块(预测样本阵列)。在这种情况下,为了减少在帧间预测模式下发送的运动信息量,可以基于邻近块与当前块之间的运动信息的相关性以块、子块或样本为单位预测当前块的运动信息。运动信息可以包括运动向量和参考图片索引。运动信息还可以包括帧间预测类型(L0预测、L1预测、Bi预测等)信息。当应用帧间预测时,邻近块可以包括存在于当前图片中的空间邻近块和存在于参考图片中的时间邻近块。包括参考块的参考图片和包括时间邻近块的参考图片可以相同或不同。时间邻近块可以被称为并置参考块、并置CU(colCU)等,并且包括时间邻近块的参考图片可以被称为并置图片(colPic)。例如,可以基于当前块的邻近块来构造运动信息候选列表,并且可以用信号通知指示选择(使用)哪个候选的标志或索引信息以推导当前块的运动向量和/或参考图片索引。可以基于各种预测模式来执行帧间预测。例如,在跳过模式和合并模式中,当前块的运动信息可以与选择的邻近块的运动信息相同。在跳过模式中,与合并模式不同,可以不发送残差信号。在运动向量预测(MVP)模式的情况下,选择的邻近块的运动向量可以用作运动向量预测子,并且可以用信号通知运动向量差。在这种情况下,可以使用运动向量预测子与运动向量差的和来推导当前块的运动向量。

运动信息可以根据帧间预测类型(L0预测、L1预测、Bi预测等)而包括L0运动信息和/或L1运动信息。L0方向上的运动向量可以被称为L0运动向量或MVL0,而L1方向上的运动向量可以被称成为L1运动向量或MVL1。基于L0运动向量的预测可以被称为L0预测,基于L1运动向量的预测可以被称为L1预测,并且基于L0运动向量和L1运动向量这两者的预测可以被称为双向预测。这里,L0运动向量可以指示与参考图片列表L0(L0)相关联的运动向量,并且L1运动向量可以指示与参考图片列表L1(L1)相关联的运动向量。参考图片列表

L0可以包括按输出次序在当前图片之前的图片作为参考图片,并且参

考图片列表L1可以包括按输出次序在当前图片之后的图片。先前图片可以被称为前向(参考)图片,且后续图片可以被称为后向(参考)图片。参考图片列表L0还可以包括在输出次序上在当前图片之后的图片作为参考图片。在此情况下,在参考图片列表L0中,可以首先对先前图片编索引并且可以接下来对后续图片编索引。参考图片列表L1还可以包括按输出次序在当前图片之前的图片作为参考图片。在此情况下,可以在参考图片列表1中首先对后续图片编索引,并且可以接下来对先前图片编索引。这里,输出顺序可以对应于图片次序计数(POC)次序。

图4示例性地示出编译图像/视频的分层结构。

参考图4,编译图像/视频被分成处理图像/视频解码处理及其自身的VCL(视频编译层)、发送和存储编译信息的子系统、以及存在于VCL和子系统之间并负责网络适配功能的网络抽象层(NAL)。

VCL可以生成包括压缩图像数据(切片数据)的VCL数据,或生成包括图片参数集(Picture Parameter Set:PPS)、序列参数集(Sequence Parameter Set:SPS)、视频参数集(Video Parameter Set:VPS)等的参数集,或图像的解码过程另外必需的补充增强信息(SEI)消息。

在NAL中,NAL单元可通过将报头信息(NAL单元报头)添加到VCL中生成的原始字节序列有效载荷(RBSP)中来生成。在这种情况下,RBSP是指VCL中生成的切片数据、参数集、SEI消息等。NAL单元报头可以包括根据相应NAL单元中包括的RBSP数据指定的NAL单元类型信息。

如图所示,NAL单元可根据VCL中生成的RBSP被划分成VCL NAL单元和非VCL NAL单元。VCL NAL单元可意味着包括关于图像的信息(切片数据)的NAL单元,并且非VCL NAL单元可意味着包含解码图像所需的信息(参数集或SEI消息)的NAL单元。

上述VCL NAL单元和非VCL NAL单元可通过根据子系统的数据标准附加报头信息而通过网络发送。例如,NAL单元可被转换为预定标准的数据形式,例如H.266/VVC文件格式、实时传输协议(RTP)、传输流(TS)等,并且通过各种网络发送。

如上所述,在NAL单元中,NAL单元类型可根据包括在相应NAL单元中的RBSP数据结构来指定,并且关于该NAL单元类型的信息可存储在NAL单元报头中,并且在NAL单元报头中用信号通知。

例如,NAL单元可取决于NAL单元是否包括关于图像的信息(切片数据)而粗略地分类为VCL NAL单元类型和非VCL NAL单元类型。可以根据VCL NAL单元中包括的图片的属性和类型来分类VCL NAL单元类型,并且可以根据参数集的类型来分类非VCL NAL单元类型。

下面是根据包括在非VCL NAL单元类型中的参数集的类型指定的NAL单元类型的示例。

-APS(适配参数集)NAL单元:包括APS的NAL单元的类型

-DPS(解码参数集)NAL单元:包括DPS的NAL单元的类型

-VPS(视频参数集)NAL单元:包括VPS的NAL单元的类型

-SPS(序列参数集)NAL单元:包括SPS的NAL单元的类型

-PPS(图片参数集)NAL单元:包括PPS的NAL单元的类型

-PH(图片报头)NAL单元:包括PH的NAL单元的类型

上述NAL单元类型具有NAL单元类型的语法信息,并且可在NAL单元报头中存储和用信号通知语法信息。例如,语法信息可以是nal_unit_type,并且NAL单元类型可由nal_unit_type值指定。

此外,如上所述,一个图片可以包括多个切片,并且一个切片可以包括切片报头和切片数据。在这种情况下,还可以将一个图片报头添加到一个图片中的多个切片(切片报头和切片数据集)。图片报头(图片报头语法)可以包括通常适用于图片的信息/参数。在该文档中,切片可以与拼块组混合或用拼块组替换。此外,在该文档中,切片报头可以与拼块组报头混合或者用拼块组报头替换。

切片报头(切片报头语法)可以包括通常适用于切片的信息/参数。APS(APS语法)或PPS(PPS语法)可以包括通常适用于一个或多个切片或图片的信息/参数。SPS(SPS语法)可以包括通常适用于一个或多个序列的信息/参数。VPS(VPS语法)可以包括通常适用于多个层的信息/参数。DPS(DPS语法)可以包括通常适用于整个视频的信息/参数。DPS可以包括与编译视频序列(CVS)的级联相关的信息/参数。在此文档中,高级语法(HLS)可以包括以下中的至少一个:APS语法、PPS语法、SPS语法、VPS语法、DPS语法、图片报头语法及切片报头语法。

在此文档中,在编码设备中编码并以比特流形式用信号通知到解码设备的图像/视频信息除了包括图片中的图片分割相关信息之外,还可以包括帧内/帧间预测信息、残差信息、环内滤波信息等、包括在切片报头中的信息、包括在图片报头中的信息、包括在APS中的信息、包括在PPS中的信息、包括在SPS中的信息、包括在VPS中的信息和/或包括在DPS中的信息。另外,图像/视频信息还可以包括NAL单元报头的信息。

同时,为了补偿由于在诸如量化的压缩编码过程中出现的误差而导致的原始图像和重构图像之间的差异,可如上所述对重构样本或重构图片执行环内滤波过程。如上所述,环内滤波可由编码设备的滤波器和解码设备的滤波器执行,并且可应用去块滤波器、SAO和/或自适应环路滤波器(ALF)。例如,ALF过程可在去块滤波处理和/或SAO处理完成之后执行。然而,即使在这种情况下,也可省略去块滤波处理和/或SAO处理。

图5是示意性地示出ALF过程的示例的流程图。图5中公开的ALF过程可以在编码设备和解码设备中执行。在本文档中,编译设备可以包括编码设备和/或解码设备。

参考图5,编译设备推导用于ALF的滤波器(S500)。滤波器可以包括滤波器系数。编译设备可以确定是否应用ALF,并且当确定应用ALF时,可以推导包括用于ALF的滤波器系数的滤波器。用于ALF的滤波器(系数)或关于用于ALF的滤波器(系数)的推导的信息可以被称为ALF参数。关于是否应用ALF的信息(例如,ALF可用性标志)和用于推导滤波器的ALF数据可以从编码设备用信号通知给解码设备。ALF数据可以包括用于推导用于ALF的滤波器的信息。此外,例如,对于ALF的分层控制,可以分别在SPS、图片报头、切片报头和/或CTB级别用信号通知ALF可用性标志。

为了推导用于ALF的滤波器,推导当前块(或ALF目标块)的活动性和/或方向性,并且可以基于活动性和/或方向性来推导滤波器。例如,ALF过程可以以4×4块为单位(基于亮度分量)应用。当前块或ALF目标块可以为例如CU,或可以为CU内的4x4块。具体地,例如,用于ALF的滤波器可以基于从包括在ALF数据中的信息所推导的第一滤波器和预定义的第二滤波器来推导,并且编译设备可以基于活动性和/或方向性来选择滤波器之一。编译设备可以使用包括在用于ALF的选定滤波器中的滤波器系数。

编译设备基于滤波器来执行滤波(S510)。可以基于滤波来推导修改的重构样本。例如,可以根据滤波器形状来布置或指配滤波器中的滤波器系数,并且可以对当前块中的重构样本执行滤波。这里,当前块中的重构样本可以是在去块滤波器过程和SAO过程完成之后的重构样本。例如,可以使用一个滤波器形状,或者可以使用从多个预定滤波器形状之中所选择的一个滤波器形状。例如,应用于亮度分量的滤波器形状和应用于色度分量的滤波器形状可以是不同的。例如,7×7菱形滤波器形状可以用于亮度分量,并且5×5菱形滤波器形状可以用于色度分量。

图6示出ALF滤波器的形状的示例。

图6的(a)示出7×7菱形滤波器的形状,图6的(b)示出5×5菱形滤波器的形状。在图6中,滤波器形状中的Cn表示滤波器系数。当Cn中的n相同时,这指示可以分配相同的滤波器系数。在此文档中,根据ALF的滤波器形状指配滤波器系数的位置和/或单元可以被称作滤波器抽头。在这种情况下,可以将一个滤波器系数指配给每个滤波器抽头,并且滤波器抽头的布置可以对应于滤波器形状。位于滤波器形状中心的滤波器抽头可以称为中心滤波器抽头。可以将相同的滤波器系数指配给相同n值的两个滤波器抽头,这两个滤波器抽头存在于相对于中心滤波器抽头彼此对应的位置处。例如,在7×7菱形滤波器形状的情况下,包括25个滤波器抽头,并且由于以中心对称形式指配滤波器系数C0至C11,因此可以仅使用13个滤波器系数将滤波器系数指配给25个滤波器抽头。此外,例如,在5×5菱形滤波器形状的情况下,包括13个滤波器抽头,并且由于以中心对称形式分配滤波器系数C0至C5,因此可以仅使用7个滤波器系数将滤波器系数分配给13个滤波器抽头。例如,为了减少关于用信号通知的滤波器系数的信息的数据量,(显式地)用信号通知7×7菱形滤波器形状的13个滤波器系数中的12个滤波器系数,并且可以(隐式地)推导1个滤波器系数。此外,例如,可以(显式地)用信号通知5×5菱形滤波器形状的7个滤波器系数中的6个系数,并且可以(隐式地)推导1个滤波器系数。

根据本文档的实施例,用于ALF过程的ALF参数可以通过适配参数集(APS)用信号通知。ALF参数可以从用于ALF的滤波器信息或ALF数据来推导。

ALF是一种可以应用于如上所述的图像/视频编译的环内滤波技术。ALF可以使用基于维纳(Wiener)的自适应滤波器来执行。这可以最小化原始样本与解码样本(或重构样本)之间的均方误差(MSE)。ALF工具的高级设计可以并入在SPS和/或切片报头(或拼块组报头)中可存取的语法元素。

图7示出ALF数据的分层结构的示例。

参考图7,编译视频序列(CVS)可以包括SPS、一个或多个PPS及随后的一个或多个编译图片。每个编译图片可以被分成矩形区域。矩形区域可以被称为拼块。一个或多个拼块可以被聚合以形成拼块组或切片。在此情况下,拼块组报头可以链接到PPS,并且PPS可以链接到SPS。根据现有方法,ALF数据(ALF参数)被包括在拼块组报头中。考虑到一个视频由多个图片组成且一个图片包括多个拼块,以拼块组为单位的频繁ALF数据(ALF参数)信令降低编译效率。

根据本文档中所提出的实施例,ALF参数可以通过如下包括在APS中而用信号通知。

图8示出ALF数据的分层结构的另一示例。

参考图8,定义APS,并且APS可以携带必要的ALF数据(ALF参数)。另外,APS可以具有自识别参数和ALF数据。APS的自识别参数可以包括APS ID。即,除了ALF数据字段之外,APS还可以包括指示APS ID的信息。拼块组报头或切片报头可以使用APS索引信息来参考APS。换句话说,拼块组报头或切片报头可以包括APS索引信息,并且可以基于包括在具有由APS索引信息所指示的APS ID的APS中的ALF数据(ALF参数)来执行用于目标块的ALF过程。这里,APS索引信息可以被称为APS ID信息。

另外,SPS可以包括允许使用ALF的标志。例如,当CVS开始时,可检查SPS,并且可在SPS中检查标志。例如,SPS可以包括下表1的语法。表1的语法可以是SPS的一部分。

[表1]

例如,可如下表中所示指定包括在表1的语法中的语法元素的语义。

[表2]

即,sps_alf_enabled_flag语法元素可基于值是0还是1指示ALF是否可用。sps_alf_enabled_flag语法元素可被称为ALF可用性标志(其可被称为第一ALF可用性标志)并且可被包括在SPS中。即,ALF可用性标志可在SPS(或SPS级别)处用信号通知。当由SPS用信号通知的ALF可用性标志的值为1时,可确定ALF基本上可用于参考SPS的CVS中的图片。同时,如上所述,ALF可通过在比SPS低的级别处用信号通知附加可用性标志来单独地开启/关闭。

例如,如果ALF工具可用于CVS,则可在拼块组报头或切片报头中用信号通知附加的可用性标志(其可称为第二ALF可用性标志)。例如,当ALF在SPS级别处可用时,可解析/用信号通知第二ALF可用性标志。如果第二ALF可用性标志的值为1,则可经由拼块组报头或切片报头解析ALF数据。例如,第二ALF可用性标志可指定用于亮度和色度分量的ALF可用性条件。ALF数据可通过APS ID信息来访问。

[表3]

[表4]

例如,可如下表中所示指定包括在表3或表4的语法中的语法元素的语义。

[表5]

[表6]

第二ALF可用性标志可以包括tile_group_alf_enabled_flag语法元素或slice_alf_enabled_flag语法元素。

基于APS ID信息(例如tile_group_aps_id语法元素或slice_aps_id语法元素),可识别由对应的拼块组或对应的切片所参考的APS。APS可以包括ALF数据。

同时,可基于例如以下语法和语义描述包括ALF数据的APS的结构。表7的语法可以是APS的一部分。

[表7]

[表8]

如上所述,adaptation_parameter_set_id语法元素可指示相应APS的标识符。也就是说,可基于adaptation_parameter_set_id语法元素来识别APS。adaptation_parameter_set_id语法元素可被称为APS ID信息。而且,APS可以包括ALF数据字段。ALF数据字段可在adaptation_parameter_set_id语法元素之后被解析/用信号通知。

此外,例如,APS扩展标志(例如,aps_extension_flag语法元素)可在APS中被解析/用信号通知。APS扩展标志可指示APS扩展数据标志(aps_extension_data_flag)语法元素是否存在。APS扩展标志可用于例如为VVC标准的较晚版本提供扩展点。

ALF信息的核心处理/处置可在切片报头或拼块组报头中执行。上述ALF数据字段可以包括关于ALF滤波器的处理的信息。例如,可从ALF数据字段提取的信息包括关于所使用的滤波器的数目的信息、指示ALF是否仅应用于亮度分量的信息、关于颜色分量的信息和指数哥伦布(EG)参数和/或关于滤波器系数的增量(delta)值的信息等。

同时,ALF数据字段可以包括例如如下的ALF数据语法。

[表9]

例如,可如下表中所示指定包括在表9的语法中的语法元素的语义。

[表10]

例如,可通过首先解析/用信号通知alf_chroma_idc语法元素来开始通过拼块组报头或切片报头对ALF数据进行解析。alf_chroma_idc语法元素可具有范围从0到3的值。值可指示基于ALF的滤波过程是仅应用于亮度分量还是应用于亮度分量与色度分量的组合。一旦确定了每个分量的可用性(可用参数),就可解析关于亮度(分量)滤波器的数量的信息。作为一个示例,可使用的滤波器的最大数目可设定为25。如果用信号通知的亮度滤波器的数目为至少一个,则对于范围从0到最大滤波器数目(例如,25,其可替选地称为类别)的每一滤波器,可解析/用信号通知滤波器的索引信息。这可能暗示每个类别(即,从0到最大滤波器数目)与一个滤波器索引相关联。当基于滤波器索引标记将用于每个类别的滤波器时,可解析/用信号通知标志(例如,alf_luma_coeff_delta_flag)。标志可用于解释与ALF亮度滤波器系数增量值的预测相关的标志信息(例如alf_luma_coeff_delta_prediction_flag)是否存在于切片报头或拼块组报头中。

如果通过alf_luma_num_filters_signalled_minus1语法元素用信号通知的亮度滤波器的数目大于0,并且alf_luma_coeff_delta_flag语法元素的值为0,则其可意味着alf_luma_coeff_delta_prediction_flag语法元素存在于切片报头或拼块组报头中,并且可评估其状态。如果alf_luma_coeff_delta_prediction_flag语法元素的状态指示1,则其可意味着从先前亮度(滤波器)系数来预测亮度滤波器系数。如果alf_luma_coeff_delta_prediction_flag语法元素的状态指示0,则其可意味着不从先前亮度(滤波器)系数的增量来预测亮度滤波器系数。

当增量滤波器系数(例如alf_luma_coeff_delta_abs)基于指数哥伦布代码来编译时,可能必须确定指数哥伦布(EG)代码的阶数k(order k),以便解码增量亮度滤波器系数(例如alf_luma_coeff_delta_abs)。可能需要此信息来解码滤波器系数。指数哥伦布代码的阶数可表示为EG(k)。为了确定EG(k),可解析/用信号通知alf_luma_min_eg_order_minus1语法元素。alf_luma_min_eg_order_minus1语法元素可以是熵编译的语法元素。alf_luma_min_eg_order_minus1语法元素可指示用于对增量亮度滤波器系数进行解码的EG的最小阶数。例如,alf_luma_min_eg_order_minus1语法元素的值可在0到6的范围内。在解析/用信号通知alf_luma_min_eg_order_minus1语法元素之后,可解析/用信号通知alf_luma_eg_order_increase_flag语法元素。如果alf_luma_eg_order_increase_flag语法元素的值为1,则这指示由alf_luma_min_eg_order_minus1语法元素所指示的EG的阶数增加1。如果alf_luma_eg_order_increase_flag语法元素的值为0,则这指示alf_luma_min_eg_order_minus1语法元素所指示的EG的阶数不增加。EG的阶数可由EG的索引表示。例如,可如下确定基于alf_luma_min_eg_order_minus1语法元素和alf_luma_eg_order_increase_flag语法元素(与亮度分量相关)的EG阶数(或EG索引)。

[表11]

基于上述确定过程,可将expGoderY推导为xpGoderY=KminTab。通过这样,可推导包括EG阶数的数组,该数组可由解码设备使用。expGoOrderY可指示EG阶数(或EG索引)。

可存在预定义哥伦布阶数索引(即,golombOrderIdxY)。预定义哥伦布阶数可用于确定用于对系数进行编译的最终哥伦布阶数。

例如,预定义哥伦布阶数可被配置为例如在下表中。

golombOrderIdxY[]={0,0,1,0,1,2,1,0,0,1,2}

这里,阶数k=expGoderY[GolombOrderIdxY[j]],并且j可被指示为第j个用信号通知的滤波器系数。例如,如果j=2,即第三滤波器系数golomborderIdxY[2]=1,因此k=expGoderY[1]。

在此情况下,例如,如果alf_luma_coeff_delta_flag语法元素的值表示真,即1,则对于用信号通知的每个滤波器,可用信号通知alf_luma_coeff_flag语法元素。alf_luma_coeff_flag语法元素指示是否(显式地)用信号通知亮度滤波器系数。

当EG阶数和上述相关标志(例如alf_luma_coeff_delta_flag、alf_luma_coeff_flag等)的状态被确定时,可解析/发信号通知亮度滤波器系数的差信息和符号信息(即,当alf_luma_coeff_flag指示真时)。可解析/用信号通知12个滤波器系数中的每个的增量绝对值信息(alf_luma_coeff_delata_abs语法元素)。另外,如果alf_luma_coeff_delta_abs语法元素具有值,则可解析/用信号通知符号信息(alf_luma_coeff_delta_sign语法元素)。包括亮度滤波器系数的差信息及符号信息的信息可被称作关于亮度滤波器系数的信息。

可确定滤波器系数的增量并且将其与符号一起存储。在这种情况下,可以以阵列的形式存储带符号的滤波器系数的增量,其可被表示为filterCoefficient。滤波器系数的增量可被称为增量亮度系数,并且带符号的滤波器系数的增量可被称为带符号的增量亮度系数。

为了从带符号的增量亮度系数确定最终滤波器系数,可如下更新(亮度)滤波器系数。

filterCoefficients[sigFiltIdx][j]+=filterCoefficients[sigFiltIdx][j]

在此,j可指示滤波器系数索引,并且sigFiltIdx可指示用信号通知的滤波器索引。j={0,...,11}以及sigFiltIdx={0,...,alf_luma_filters_signaled_minus1}。

系数可被复制到最终AlfCoeffl[filtIdx][j]中。这里,filtidx=0,…,24,并且j=0,…,11。

给定滤波器索引的带符号的增量亮度系数可用于确定前12个滤波器系数。例如,7×7滤波器的第十三滤波器系数可基于以下等式来确定。第十三滤波器系数可表示上述中心抽头滤波器系数。

[等式1]

AlfCoeffL[filtIdx][12]=128-∑kAlfCoeffL[filtIdx][k]<<t

这里,滤波器系数索引12可指示第十三滤波器系数。作为参考,由于滤波器系数索引从0开始,所以值12可指示第十三滤波器系数。

例如,为了确保比特流一致性,当k是0,…,11时,最终滤波器系数AlfCoeffl[filtIdx][k]的值的范围从-27到27-1,并且当k是12时,它可从0到28-1。这里,k可用j替换。

如果执行用于亮度分量的处理,则可基于alf_chroma_idc语法元素来执行用于色度分量的处理。如果alf_chroma_idc语法元素的值大于0,则可解析/用信号通知用于色度分量的最小EG阶数信息(例如,alf_chroma_min_eg_order_minus1语法元素)。根据本文档的上述实施例,5×5菱形滤波器形状可用于色度分量,并且在这种情况下,最大哥伦布索引可以是2。在这种情况下,色度分量的EG阶数(或EG索引)可例如如下确定。

[表12]

基于确定过程,可将expGoOrderC推导为expGoOrderC=KminTab。由此,能够推导解码设备能够使用的、包含EG阶数的阵列。expGoOrderC可指示色度分量的EG阶数(或EG索引)。

可存在预定义(预定义)哥伦布阶数索引(golombOrderIdxC)。预定义哥伦布阶数可用于确定用于对系数进行编译的最终哥伦布阶数。

例如,预定义哥伦布阶数可被配置为例如在下表中。

golombOrderIdxC[]={0,0,1,0,0,1}

这里,阶数k=expGoOrderC[golombOrderIdxC[j]],并且j可表示第j个用信号通知的滤波器系数。例如,如果j=2,即第三滤波器系数golomboorderIdxY[2]=1,因此k=expGoOrderC[1]。

基于此,可解析/用信号通知色度滤波器系数的绝对值信息和符号信息。包括色度滤波器系数的绝对值信息和符号信息的信息可被称为关于色度滤波器系数的信息。例如,5×5菱形滤波器形状可应用于色度分量,并且在这种情况下,可解析/用信号通知六个(色度分量)滤波器系数中的每个的绝对增量信息(alf_chroma_coeff_abs语法元素)。另外,如果alf_chroma_coeff_abs语法元素的值大于0,则可解析/用信号通知符号信息(alf_chroma_coeff_abs语法元素)。例如,可基于关于色度滤波器系数的信息来推导六个色度滤波器系数。在这种情况下,例如,可基于下面的等式来确定第七色度滤波系数。第七滤波器系数可表示上述中心抽头滤波器系数。

[等式2]

AlfCoeffC[6]=128-∑kAlfCoeffC[filtIdx][k]<<1

这里,滤波器系数索引6可指示第七滤波器系数。作为参考,由于滤波器系数索引从0开始,所以值6可指示第七滤波器系数。

例如,为了确保比特流一致性),当k为0、...、5时,最终滤波器系数AlfCoeffc[filtIdx][k]的值的范围从-27到27-1,而当k为6时,它可从0到28-1。这里,k可用j替换。

如果推导(亮度/色度)滤波器系数,则可基于滤波器系数或包括滤波器系数的滤波器来执行基于ALF的滤波。如上所述,通过这种方式可推导修改的重构样本。另外,可推导多个滤波器,且所述多个滤波器中的一个的滤波器系数可用于ALF过程。作为示例,可基于用信号通知的滤波器选择信息来指示多个滤波器中的一个。或者,例如,可基于当前块或ALF目标块的活动和/或方向性来选择多个滤波器中的一个,并且选定滤波器的滤波器系数可用于ALF过程。

同时,如上所述,可应用亮度映射与色度缩放(LMCS)来改进编译效率。LMCS可被称为环路整形器(整形)。为了增加编译效率,可分层地执行LMCS控制和/或LMCS相关信息的信令。

图9示例性地示出根据本文献的实施例的CVS的分层结构。编译视频序列(CVS)可以包括序列参数集(SPS)、图片参数集(PPS)、拼块组报头、拼块数据和/或CTU。此处,拼块组报头和拼块数据可以分别称为切片报头和切片数据。

SPS可以原始地包括用于启用工具使得其能够在CVS中使用的标志。另外,SPS可以由包括关于针对每个图片而改变的参数的信息的PPS参考。编译图片中的每个可以包括一个或多个编译矩形域的拼块。可以以形成拼块组光栅扫描将拼块分组。每个拼块组被封装有称为拼块组报头的报头信息。每个拼块由包含编译数据的CTU组成。这里,数据可以包括原始样本值、预测样本值及其亮度和色度分量(亮度预测样本值和色度预测样本值)。

图10示出根据本文档的实施例的示例性LMCS结构。图10的LMCS结构1000可以包括用于基于自适应分段线性(自适应PWL)模型的亮度分量的环内映射部分1010和用于色度分量的亮度相关色度残差缩放部分1020。环内映射部分1010的解量化和逆变换1011、重构1012和帧内预测1013的块表示在映射(整形)域中应用的处理。环内映射部分1010的环路滤波器1015、运动补偿或帧间预测1017的块、以及色度残差缩放部分1020的重构1022、帧内预测1023、运动补偿或帧间预测1024、环路滤波器1025的块表示在原始(非映射、非整形)域中应用的处理。

如图10所示,当启用LMCS时,可以应用逆整形(映射)处理1014、正整形(映射)处理1018和色度缩放处理1021中的至少一个。例如,逆整形处理可以应用于重构图片的(重构)亮度样本(或多个亮度样本或亮度样本阵列)。可以基于亮度样本的分段函数(逆)索引来执行逆整形处理。分段函数(逆)索引可以识别亮度样本所属的片段(或部分)。逆整形处理的输出是修改的(重构)亮度样本(或多个修改的亮度样本或修改的亮度样本阵列)。LMCS可以在拼块组(或切片)、图片或较高级别启用或禁用。

可应用前向整形处理和/或色度缩放处理来生成重构图片。图片可以包括亮度样本和色度样本。具有亮度样本的重构图片可被称为重构亮度图片,而具有色度样本的重构图片可被称为重构色度图片。重构亮度图片和重构色度图片的组合可被称为重构图片。可基于前向整形处理来生成重构亮度图片。例如,如果帧间预测应用于当前块,则前向整形应用于基于参考图片的(重构)亮度样本所推导的亮度预测样本。由于参考图片的(重构)亮度样本基于逆整形处理来生成,因此前向整形可应用于亮度预测样本以推导整形(映射)的亮度预测样本。可基于亮度预测样本的分段函数索引来执行前向整形处理。分段函数索引可基于用于帧间预测的参考图片的亮度预测样本的值或亮度样本的值来推导。可基于(整形/映射的)亮度预测样本来生成重构样本。逆整形(映射)处理可应用于重构样本。已经应用逆整形(映射)处理的重构样本可被称为逆整形(映射)重构样本。此外,逆整形(映射)重构样本可被简称为整形(映射)重构样本。当帧内预测(或帧内块复制(IBC))被应用于当前块时,可能不需要当前块的预测样本的前向映射,因为逆整形处理尚未被应用于参考当前图片的重构样本。在重构亮度图片中,可基于(整形)亮度预测样本和对应的亮度残差样本来生成(重构)亮度样本。

可基于色度缩放处理来生成重构色度图片。例如,可基于当前块中的色度预测样本和色度残差样本(cres)来推导重构色度图片中的(重构)色度样本。基于用于当前块的(缩放的)色度残差样本(cresScale)和色度残差缩放因子(cScaleInv可被称为varScale)来推导色度残差样本(cres)。色度残差缩放因子可基于当前块中的整形亮度预测样本值来计算。例如,可基于整形亮度预测样本值(Y’pred)的平均亮度值(ave(Y’pred))来计算缩放因子。作为参考,基于图16中的逆变换/解量化所推导的(缩放的)色度残差样本可被称为crescale,并且通过对(缩放的)色度残差样本执行(逆)缩放处理所推导的色度残差样本可被称为cres

图11示出根据本文档的另一实施例的LMCS结构。将参考图10描述图11。这里,将主要描述图11的LMCS结构和图10的LMCS结构之间的差别。图11的环内映射部分和亮度相关色度残差缩放部分可以以与图10的环内映射部分和亮度相关色度残差缩放部分相同的方式操作。

参考图11,色度残差缩放因子可以基于亮度重构样本来推导。在这种情况下,可以基于重构块外部的相邻亮度重构样本而不是重构块内部的亮度重构样本来获得平均亮度值(avgYr),并且可以基于平均亮度值(avgYr)来推导色度残差缩放因子。这里,相邻亮度重构样本可以是当前块的相邻亮度重构样本,或者可以是包括当前块的虚拟管线数据单元(VPDU)的相邻亮度重构样本。例如,当帧内预测被应用于目标块时,可以基于预测样本来推导重构样本,其中基于帧内预测来推导预测样本。此外,例如,当帧间预测被应用于目标块时,前向映射应用于基于帧间预测所推导的预测样本,并且可以基于整形(或前向映射)亮度预测样本来生成重构样本。

通过比特流用信号通知的运动图片/图像信息可以包括LMCS参数(关于LMCS的信息)。LMCS参数可被配置为高级语法(HLS,包括切片报头语法)等。稍后将描述LMCS参数和配置的详细描述。如上所述,在本文档(和下面的实施例)中描述的语法表可在编码器(编码设备)侧被构造/编码,并且通过比特流被用信号通知给解码器(解码设备)。解码器可解析/解码语法表中关于LMCS的信息(以语法分量的形式)。可组合以下将描述的一个或多个实施例。编码器可基于关于LMCS的信息对当前图像进行编码,并且解码器可基于关于LMCS的信息对当前图像进行解码。

亮度分量的环内映射可通过跨动态范围重新分布码字来调整输入信号的动态范围以改进压缩效率。对于亮度映射,可使用前向映射(整形)函数(FwdMap)和与前向映射函数(FwdMap)相对应的逆映射(整形)函数(InvMap)。前向映射函数(FwdMap)可使用部分线性模型来用信号通知,例如,部分线性模型可具有16个片段或bin。这些片段可具有相同长度。在一个示例中,逆映射函数(InvMap)可不单独地用信号通知,而是可从前向映射函数(FwdMap)来推导。即,逆映射可以是前向映射的函数。例如,逆映射函数可以是其中前向映射函数基于y=x而对称的函数。

环内(亮度)整形可用于将输入亮度值(样本)映射到整形域中的改变值。在重构之后,整形值可被编码并且映射回原始(未映射、未整形)域。色度残差缩放可被应用以补偿亮度信号和色度信号之间的差。可通过为整形器模型指定高级语法来执行环内整形。整形器模型语法可用信号通知部分线性模型(PWL模型)。可基于部分线性模型推导前向查找表(FwLUT)和/或反向查找表(InvLUT)。作为示例,当推导前向查找表FwLUT时,可基于前向查找表FwLUT来推导反向查找表InvLUT。前向查找表FwLUT可将输入亮度值Yi映射到改变值Yr,反向查找表InvLUT可基于改变值将重构值Yr映射到重构值Y'i。

在一个示例中,SPS可以包括下表13的语法。表13的语法可以包括sps_reshaper_enabled_flag作为工具启用标志。这里,sps_reshaper_enabled_flag可用于指定是否在编译视频序列(CVS)中使用整形器。即,sps_reshaper_enabled_flag可以是用于启用SPS中的整形的标志。在一个示例中,表13的语法可为SPS的一部分。

[表13]

在一个示例中,可由sps_seq_parameter_set_id和sps_reshaper_enabled_flag指示的语义可如下面的表14所示。

[表14]

在一个实例中,拼块组报头或切片报头可以包括下表15或表16的语法。

[表15]

[表16]

表15或表16的语法中包括的语法元素的语义可以包括例如在以下表中公开的内容。

[表17]

[表18]

作为示例,如果解析sps_reshaper_enabled_flag,则可在拼块组报头中解析用于配置查找表(FwdLUT和/或InvLUT)的附加数据(例如,包括在以上表15或16中的信息)。为此,可在切片报头或拼块组报头中检查SPS整形器标志的状态。当sps_reshaper_enabled_flag为真(或1)时,可解析附加标志tile_group_reshaper_model_present_flag(或slice_reshaper_model_present_flag)。tile_group_reshaper_model_present_flag(或slice_reshaper_model_present_flag)的目的可以是指示整形器模型的存在。例如,当tile_group_reshaper_model_present_flag(或slice_reshaper_model_present_flag)为真(或1)时,可指示针对当前拼块组(或当前切片)存在整形器。当tile_group_reshaper_model_present_flag(或slice_reshaper_model_present_flag)为假(或0)时,可指示针对当前拼块组(或当前切片)不存在整形器。

如果在当前拼块组(或当前切片)中存在整形器并且启用整形器,则可处理整形器模型(例如,tile_group_reshaper_model()或slice_reshaper_model()),除了附加标志之外,还可解析tile_group_reshaper_enable_flag(或slice_reshaper_enable_flag)。tile_group_reshaper_enable_flag(或slice_reshaper_enable_flag)可指示整形器模型是否用于当前拼块组(或当前切片)。例如,如果tile_group_reshaper_enable_flag(或slice_reshaper_enable_flag)为0(或假),则可指示整形器模型不用于当前拼块组(或当前切片)。如果tile_group_reshaper_enable_flag(或slice_reshaper_enable_flag)为1(或真),则可指示整形器模型用于当前拼块组(或当前切片)。

作为示例,例如,tile_group_reshaper_model_present_flag(或slice_reshaper_model_present_flag)可以是真(或1),并且tile_group_reshaper_enable_flag(或slice_reshaper_enable_flag)可以是假(或0)。这意味着,在当前拼块组(或当前切片)中存在但不使用整形器模型。在这种情况下,可在以下拼块组(或切片)中使用整形器模型。作为另一示例,tile_group_reshaper_enable_flag可为真(或1)且tile_group_reshaper_model_present_flag可以是假(或0)。

当解析整形器模型(例如,tile_group_reshaper_model()或slice_reshaper_model())和tile_group_reshaper_enable_flag(或slice_reshaper_enable_flag)时,可确定(评估)是否存在色度缩放所需的条件。上述条件可以包括条件1(当前拼块组/切片不是帧内编译的)和/或条件2(当前拼块组/切片不被分割为用于亮度和色度的两个单独的编译四叉树结构,即当前拼块组/切片不是双叉树结构)。如果条件1和/或条件2为真和/或tile_group_reshaper_enable_flag(或slice_reshaper_enable_flag)为真(或1),则可解析tile_group_reshaper_chroma_residual_scale_flag(或slice_reshaper_chroma_residual_scale_flag)。当tile_group_reshaper_chroma_residual_scale_flag(或slice_reshaper_chroma_residual_scale_flag)被启用(如果1或真)时,可指示针对当前拼块组(或当前切片)启用色度残差缩放。当停用tile_group_reshaper_chroma_residual_scale_flag(或slice_reshaper_chroma_residual_scale_flag)(如果0或假)时,可指示针对当前拼块组(或当前切片)禁用色度残差缩放。

上述整形的目的是解析构造查找表(FwdLUT和/或InvLUT)所需的数据。在示例中,基于解析数据而构造的查找表可将可允许亮度值范围的分布划分成多个bin(例如,16)。因此,给定bin中的亮度值可映射到改变的亮度值。

图12显示示出示例性前向映射的图。在图12中,仅通过示例的方式示出五个bin。

参考图12,x轴表示输入亮度值,并且y轴表示改变的输出亮度值。x轴被分成5个bin或片段,每个bin的长度为L。即,映射到改变的亮度值的五个bin具有相同长度。可以使用可从其促进映射的拼块组报头中可用的数据(例如,整形器数据)来构造前向查找表(FwdLUT)。

在实施例中,可计算与bin索引相关联的输出枢轴点(output pivot point)。输出枢轴点可设置(标记)亮度码字整形的输出范围的最小和最大边界。计算输出枢轴点的过程可基于码字的数目的分段累积分布函数来执行。输出枢轴范围可基于要使用的bin的最大数目和查找表(FwdLUT或InvLUT)的大小来划分。作为示例,可基于bin的最大数目与查找表的大小之间的乘积来划分输出枢轴范围。例如,如果bin的最大数目与查找表的大小之间的乘积是1024,则输出枢轴范围可被划分成1024个条目。可基于(使用)缩放因子来执行(应用或实现)输出枢轴范围的划分。在一个示例中,可基于下面的等式3来推导缩放因子。

[等式3]

SF=(y2-y1)*(1<<FP_PREC)+c

在等式3中,SF表示缩放因子,并且y1和y2表示与各个bin相对应的输出枢轴点。此外,FP_PREC和c可以是预定常数。基于等式3所确定的缩放因子可被称为用于前向整形的缩放因子。

在另一个实施例中,对于逆整形(逆映射),对于定义范围的bin(例如,reshaper_model_min_bin_idx到reshaper_model_max_bin_idx),获取与前向查找表(FwdLUT)的映射的枢轴点相对应的输入整形的枢轴点以及映射的逆输出枢轴点(作为初始码字数*bin索引给出)。在另一示例中,可基于下面的等式4来推导缩放因子SF。

[等式4]

SF=(y2-y1)*(1<<FP_PREC)/(x2-x1)

在等式4中,SF表示缩放因子,x1和x2表示输入枢轴点,并且y1和y2表示对应于每个片段(bin)的输出枢轴点。这里,输入枢轴点可以是基于前向查找表(FwdLUT)映射的枢轴点,而输出枢轴点可以是基于反向查找表(InvLUT)反向映射的枢轴点。此外,FP_PREC可以是预定常数。等式4的FP_PREC可与等式3的FP_PREC相同或不同,基于等式4确定的缩放因子可被称为用于逆整形的缩放因子。在逆整形期间,可基于等式4的缩放因子执行输入枢轴点的划分,基于划分的输入枢轴点,指定与从0到最小bin索引(reshaper_model_min_bin_idx)和/或从最小bin索引(reshaper_model_min_bin_idx)到最大bin索引(reshaper_model_max_bin_idx)的bin索引的最小和最大bin值相对应的枢轴值。

下面的表19示出根据实施例的整形器模型的语法。该整形器模型可被称为LMCS模型。这里,将整形器模型示例性地描述为拼块组整形器,但是本说明书不必受该实施例限制。例如,整形器模型可被包括在APS中,或者拼块组整形器模型可被称为切片整形器模型。

[表19]

表19的语法中包括的语法元素的语义可以包括例如在下表中公开的内容。

[表20]

整形器模型包括作为元素的分量,如reshape_model_min_bin_idx、reshape_model_delta_max_bin_idx、reshaper_model_bin_delta_abs_cw_prec_minus1、reshape_model_bin_delta_abs_CW[i]和reshaper_model_bin_delta_sign_CW。以下将详细描述每个分量。

reshape_model_min_bin_idx指示在整形器配置过程中使用的最小bin(或分段)索引。reshape_model_min_bin_idx的值可在0到MaxBinIdx的范围内。例如,MaxBinIdx可以是15。

在实施例中,拼块组整形器模型可优选地解析两个索引(或参数),即,reshaper_model_min_bin_idx和reshaper_model_delta_max_bin_idx。可基于这两个索引来推导(确定)最大bin索引(reshaper_model_max_bin_idx)。reshaper_model_delta_max_bin_idx可表示从在整形器配置过程中使用的实际最大bin索引(reshaper_model_max_bin_idx)中减去允许的最大bin索引MaxBinIdx。最大bin索引(reshaper_model_max_bin_idx)的值可在从0到MaxBinIdx的范围内。例如,MaxBinIdx可以是15。作为示例,reshaper_model_max_bin_idx的值可基于下面的等式5来推导。

[等式5]

reshape_model_max_bin_idx=MaxBinldx-reshape_model_delta_max_bin_idx.

最大bin索引(reshaper_model_max_bin_idx)可大于或等于最小bin索引(reshaper_model_min_bin_idx)。最小bin索引可被称为最小允许bin索引或允许的最小bin索引,并且最大bin索引也可被称为最大允许bin索引或允许的最大bin索引。

如果推导最大bin索引(reshaper_model_max_bin_idx),则可解析语法元素reshaper_model_bin_delta_abs_cw_prec_minus1。用于表示语法reshape_model_bin_delta_abs_CW[i]的比特数可基于reshaper_model_bin_delta_abs_cw_prec_minus1来确定。例如,用于表示reshape_model_bin_delta_abs_CW[i]的比特数可与reshaper_model_bin_delta_abs_cw_prec_minus1加1相同。

reshape_model_bin_delta_abs_CW[i]可指示与第i个bin的绝对增量码字值(增量码字的绝对值)相关的信息。在一个示例中,如果第i个bin的绝对增量码字值大于0,则可解析reshaper_model_bin_delta_sign_CW_flag[i]。可基于reshaper_model_bin_delta_sign_CW_flag[i]来确定reshape_model_bin_delta_abs_CW[i]的符号。在一个示例中,如果reshaper_model_bin_delta_sign_CW_flag[i]是0(或假),则相应变量RspDeltaCW[i]可以是正号。在其他情况下(如果reshaper_model_bin_delta_sign_CW_flag[i]不为0,如果reshaper_model_bin_delta_sign_CW_flag[i]为1(或真)),相应的变量RspDeltaCW[i]可以是负号。如果reshaper_model_bin_delta_sign_CW_flag[i]不存在,则可将其推断为0(或假)。

在实施例中,可基于上述reshape_model_bin_delta_abs_CW[i]和reshape_model_bin_delta_sign_CW_flag[i]来推导变量RspDeltaCW[i]。RspDeltaCW[i]可被称为增量码字的值。例如,RspDeltaCW[i]可基于下面的等式6来推导。

[等式6]

RspDeltaCW[i]=(1-2*reshape_model_bin_delta_sign_CW[i])*reshape_model_bin_delta_abs_CW[i]

在等式6中,reshape_model_bin_delta_sign_CW[i]可以是与RspDeltaCW[i]的符号相关的信息。例如,reshape_model_bin_delta_sign_CW[i]可与上述的reshaper_model_bin_delta_sign_CW_flag[i]相同。这里,i可在从最小bin索引(reshaper_model_min_bin_idx)到最大bin索引(reshape_model_max_bin_idx)的范围内。

变量(或阵列)RspCW[i]可基于RspDeltaCW[i]来推导。这里,RspCW[i]可表示分配(分布)到第i个bin的码字的数量。即,可以阵列形式存储分配(分布)到每个bin的码字的数量。在一个示例中,如果i小于上述reshaper_model_min_bin_idx或大于reshaper_model_max_bin_idx,(i<reshaper_model_min_bin_idx或reshaper_model_max_bin_idx<i),则RspCW[i]可以是0。否则(如果i大于或等于上述reshaper_model_min_bin_idx并且小于或等于reshaper_model_max_bin_idx,(reshaper_model_min_bin_idx<=i<=reshaper_model_max_bin_idx),则RspCW[i]可基于上述RspDeltaCW[i]、亮度位深度(BitDepthsy)和/或MaxBinIdx来推导。在这种情况下,例如,RspCW[i]可基于下面的等式7来推导。

[等式7]

RspCW[i]=OrgCW+RspDeltaCW[i]

在等式7中,OrgCW可以是预定值,例如,可基于下面的等式8来确定。

[等式8]

OrgCW=(1<<BitDepthγ)/(MaxBinldx+1)

在等式8中,BitDepthY是亮度位深度,而MaxBinIdx表示最大可允许bin索引。在一个示例中,如果BitDepthY是10,则RspCW[i]可具有从32到2*OrgCW-1的值。

变量InputPivot[i]可基于上述OrgCW来推导。例如,InputPivot[i]可基于下面的等式9来推导。

[等式9]

InputPivot[i]=i*OrgCW

变量ReshapePivot[i]、ScaleCoef[i]和/或InvScaleCoeff[i]可基于上述RspCW[i]、InputPivot[i]和/或OrgCW来推导,例如,ReshapePivot[i]]、ScaleCoef[i]和/或InvScaleCoeff[i]可基于下表21来推导。

[表21]

在表21中,可使用for循环语法,其中i从0增加到MaxBinIdx,并且shiftY可以是用于比特移位的预定常数。可基于根据RspCW[i]是否为0的条件子句来确定InvScaleCoeff[i]是否是基于RspCW[i]来推导。

用于推导色度残差缩放因子的ChromaScaleCoef[i]可基于下面的表22来推导。

[表22]

在表22中,ShiftC可以是用于比特移位的预定常数。参考表22,可基于根据RspCW[i]是否为0的条件子句来确定ChromaScaleCoef[i]是否是基于阵列ChromaResidualScalLut来推导。这里,ChromaResidualScalLut可以是预定阵列。然而,ChromaResidualScalLeLut阵列仅仅是示例性的,并且本实施例不必受表22的限制。

上面已经描述了用于推导第i个变量的方法。第i+1个变量可基于ReshapePivot[i+1],并且例如,ReshapePivot[i+1]可基于等式10来推导。

[等式10]

ReshapePivot[i+1]=ReshapePivot[i]+RspCW[i]

在等式10中,可基于上述等式7和/或8来推导RspCW[i]。亮度映射可基于上述实施例和示例来执行,并且上述语法和其中所包括的分量可仅仅是示例性表示,并且实施例不受上述表格或等式的限制。在下文中,将描述基于亮度映射执行色度残差缩放(残差样本的色度分量的缩放)的方法。

(亮度相关)色度残差缩放是为了补偿亮度样本和相应色度样本之间的差。例如,可在拼块组级别或切片级别处用信号通知是否启用色度残差缩放。在一个示例中,如果启用亮度映射并且不将双树分割应用于当前拼块组,则可用信号通知附加标志以指示是否启用亮度相关色度残差缩放。在另一示例中,如果不使用亮度映射,或如果针对当前拼块组不使用双树分割,则可禁用亮度相关色度残差缩放。在另一示例中,可针对具有小于或等于4的大小的色度块而始终禁用色度残差缩放。

色度残差缩放可基于参考样本的平均亮度值来执行。例如,参考样本可以包括对应亮度预测块的样本(帧内预测和/或帧间预测所应用于的预测块的亮度分量)。当应用帧间预测时,参考样本可以包括在将前向映射应用于亮度分量预测样本之后的样本。可替选地,参考样本可以包括当前块的相邻样本或包括当前块的VPDU的相邻样本。在此情况下,当将帧间预测应用于包括相邻样本的相邻块时,相邻样本可以包括基于相邻块的前向映射所应用于的亮度分量预测样本而推导的亮度分量重构样本。编码器侧和/或解码器侧的缩放操作可被实现为例如基于以下等式11的定点整数计算。

[等式11]

c’=sign(c)*((abs(c)*s+2CSCALE_FP_PREC-1)>>CSCALE_FP_PREC)

在上述等式11中,c’表示缩放色度残差样本(残差样本的缩放色度分量),c表示色度残差样本(残差样本的色度分量),s可表示色度残差缩放因子,CSCALE_FP_PREC可表示预定常数。

如上文所述,可获取参考样本的平均亮度值,并且可基于平均亮度值来推导色度残差缩放因子。如上所述,色度分量残差样本可基于色度残差缩放因子来缩放,并且色度分量重构样本可基于缩放色度分量残差样本来生成。

本文档的实施例提出一种用于有效地应用上述ALF和/或LMCS的信令结构。根据本文档的实施例,例如,ALF数据和/或LMCS数据可以包括在HLS(例如,APS)中,通过经由作为APS的较低级别的报头信息(例如,图片报头、切片报头)用信号通知参考的APS ID,可自适应地推导用于ALF和/或LMCS模型(整形器模型)的滤波器。LMCS模型可基于LMCS参数来推导。此外,例如,可通过报头信息来用信号通知多个APS ID,并且通过这样,能够以相同图片/切片内的块为单位来应用不同的ALF和/或LMCS模型。

例如,下表示出根据实施例的报头信息的示例。

[表23]

包括在表23的语法中的语法元素的语义可以包括例如在下表中公开的内容。

[表24]

例如,参考表23,报头信息可以包括ALF相关信息。ALF相关信息包括ALF可用性标志语法元素(例如slice_ALF_enabled_flag)、ALF相关APS ID数量语法元素(例如num_alf_aps_ids_minus1)以及ALF相关APS ID语法元素(例如slice_alf_aps_id[i],其数量与基于ALF相关APS ID数量语法元素所推导的ALF相关APS ID的数量一样多。

另外,报头信息可以包括LMCS相关信息。LMCS相关信息可以包括例如以下中的至少一个:LMCS可用性标志语法元素(例如slice_lmcs_enabled_flag)、LMCS相关APS ID语法元素(slice_lmcs_aps_id)和色度残差缩放标志语法元素(slice_chroma_residual_scale_flag)。

根据该实施例,ALF和/或LMCS的分层控制是可能的。

例如,如上所述,ALF工具的可用性可以通过SPS中的ALF可用性标志(例如,sps_alf_enabled_flag)来确定,然后ALF在当前图片或切片中是否可用可以通过报头信息中的ALF可用性标志(例如,slice_alf_enabeld_flag)来指示。当报头信息中的ALF可用性标志的值为1时,可以解析/用信号通知ALF相关APS ID数量语法元素。另外,可以解析/用信号通知与基于ALF相关APS ID数量语法元素所推导的ALF相关APS ID的数目一样多的ALF相关APS ID语法元素。即,这可以指示可以通过一个报头信息来解析或参考多个APS。

同样,例如,可以通过SPS中的LMCS可用性标志(例如sps_reshaper_enabled_flag)来确定LMCS(或整形)工具是否可用。sps_reshaper_enabled_flag可以被称为sps_lmcs_enabled_flag。LMCS在当前图片或切片中是否可用可以通过报头信息中的LMCS可用性标志(例如,slice_lmcs_enabled_flag)来指示。当报头信息中的LMCS可用性标志的值是1时,可以解析/用信号通知LMCS相关APS ID语法元素。LMCS模型(整形器模型)可以从由LMCS相关APS ID语法元素指示的APS推导。例如,APS还可以包括LMCS数据字段,并且LMCS数据字段可以包括上述LMCS模型(整形器模型)信息。

以下附图被创建以解释本说明书的具体示例。由于附图中描述的特定装置的名称或特定信号/消息/字段的名称是通过示例的方式呈现的,因此本说明书的技术特征不限于在以下附图中使用的特定名称。

图13和图14示意性地示出根据本文档的实施例的视频/图像编码方法和相关组件的示例。图13中公开的方法可以由图2中示出的编码设备执行。具体地,例如,图13的S1300可以由编码设备的加法器250执行,图13的S1310可以由编码设备的滤波器260执行,并且图13的S1320可以由编码设备的熵编码器240执行。图13中公开的方法可以包括本文档中的上述实施例。

参照图13,编码设备生成当前图片中的当前块的重构样本(S1300)。编码设备可以基于预测模式来推导当前块的预测样本。在这种情况下,本文档中公开的各种预测方法(诸如帧间预测或者帧内预测)可以被应用。残差样本可以基于预测样本和原始样本来推导。在这种情况下,残差信息可以基于残差样本来推导。基于残差信息,可以推导(修改的)残差样本。可以基于(修改的)残差样本和预测样本来生成重构样本。可以基于重构样本来推导重构块和重构图片。

编码设备生成ALF相关信息(S1310)。编码设备推导ALF相关ALF参数,该ALF参数可以应用于对重构样本进行滤波,并且生成ALF相关信息。例如,ALF相关信息可以包括在本文档中上面所述的ALF相关信息。

编码设备对图像/视频信息进行编码(S1320)。图像/视频信息可以包括用于生成重构样本的信息和/或ALF相关信息。用于生成重构样本的信息可以包括例如预测相关信息、残差信息、和/或LMCS相关信息。预测相关信息可以包括关于各种预测模式(例如,合并模式、MVP模式等)的信息、MVD信息等。

编码图像/视频信息可以以比特流的形式输出。比特流可以通过网络或存储介质被发送到解码设备。

根据本文档的实施例,图像/视频信息可以包括各种信息。例如,图像/视频信息可以包括在上述表1、3、4、7、9、13、15、16、19和23中的至少一个中公开的信息。

例如,图像信息可以包括上述适配参数集(APS)。APS可以包括ALF数据,并且ALF数据可以包括用于推导用于ALF的滤波器系数的信息。

图像信息可以包括SPS,并且SPS可以包括指示ALF是否可用的第一ALF可用性标志。图像信息可以包括报头信息。当第一ALF可用性标志的值为1时,报头信息可以包括指示ALF在图片或切片中是否可用的第二ALF可用性标志。

报头信息可以包括ALF相关APS ID语法元素,并且由ALF相关APS ID语法元素所指示的APS ID可以与包括ALF数据的APS的ID相同。

报头信息可以包括图片报头或切片报头。

报头信息包括指示ALF在图片或切片中是否可用的第二ALF可用性标志,并且当第二ALF可用性标志的值为1时,报头信息包括ALF相关APS ID数量语法元素,并且ALF相关APSID数量语法元素的值加1可以等于ALF相关APS ID的数量。

例如,APS可以包括LMCS数据。报头信息可以包括LMCS相关信息。LMCS相关信息可以包括例如以下中的至少一个:LMCS可用性标志语法元素(例如slice_lmcs_enabled_flag)、LMCS相关APS ID语法元素(slice_lmcs_aps_id)和色度残差缩放标志语法元素(slice_chroma_residual_scale_flag)。

图15和图16示意性地示出根据本文档的实施例的图像/视频解码方法和相关组件的示例。图15中公开的方法可以由图3中公开的解码设备执行。具体地,例如,图15的S1500可以由解码设备的熵解码器310执行,S1510可以由解码设备的加法器340执行,并且S1520可以由解码设备的滤波器350执行。图15中公开的方法可以包括本文档中的上述实施例。

参照图15,解码设备接收/获得图像/视频信息(S1500)。解码设备可以通过比特流接收/获得图像/视频信息。

根据本文档的实施例,图像/视频信息可以包括各种信息。例如,图像/视频信息可以包括在上述表1、3、4、7、9、13、15、16、19和/或23中的至少一个中所公开的信息。

解码设备基于图像/视频信息来生成重构样本(S1510)。解码设备可以基于包括在图像/视频信息中的预测相关信息来推导当前块的预测样本。解码设备可以基于包括在图像/视频信息中的残差信息来推导残差样本。解码设备可以基于预测样本和残差样本来生成重构样本。可以基于重构样本来推导重构块和重构图片。

解码设备对重构样本执行ALF过程(S1520)。解码设备可以推导用于ALF的滤波器系数,并且基于重构样本和滤波器系数来生成修改的重构样本。一个滤波器可以包括滤波器系数集合。滤波器或滤波器系数可以基于ALF数据来推导。

例如,图像信息可以包括上述APS(适配参数集)。APS可以包括ALF数据,并且ALF数据可以包括用于推导用于ALF的滤波器系数的信息。

图像信息可以包括SPS,并且SPS可以包括指示ALF是否可用的第一ALF可用性标志。图像信息可以包括报头信息。当第一ALF可用性标志的值为1时,报头信息可以包括指示ALF在图片或切片中是否可用的第二ALF可用性标志。

报头信息可以包括ALF相关APS ID语法元素,并且由ALF相关APS ID语法元素所指示的APS ID可以与包括ALF数据的APS的ID相同。

报头信息可以包括图片报头或切片报头。

报头信息包括指示ALF在图片或切片中是否可用的第二ALF可用性标志,并且当第二ALF可用性标志的值为1时,报头信息可以包括ALF相关APS ID数量语法元素。可以基于ALF相关APS ID数量语法元素的值来确定ALF相关APS ID的数量。这可以指示包括在报头信息中的ALF相关APS ID语法元素的数目。例如,ALF相关APS ID数量语法元素的值加1可以等于包括在报头信息中的ALF相关APS ID语法元素的数目。例如,ALF数据可以包括在由ALF相关APS ID语法元素所指示的APS ID之中的至少一个APS中。

例如,APS可以包括LMCS数据。报头信息可以包括LMCS相关信息。LMCS相关信息可以包括例如以下中的至少一个:LMCS可用性标志语法元素(例如slice_lmcs_enabled_flag)、LMCS相关APS ID语法元素(slice_lmcs_aps_id)和色度残差缩放标志语法元素(slice_chroma_residual_scale_flag)。

尽管已经基于在上述实施例中顺序列出步骤或块的流程图描述了方法,但是实施例的步骤不限于特定顺序,并且可以与上述不同的步骤或以不同的顺序或同时执行特定步骤。此外,本领域普通技术人员将理解,流程图的步骤不是排他性的,并且在不对本文档的实施例的范围施加影响的情况下,可在其中包括另一步骤或者可删除流程图中的一个或多个步骤。

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

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

另外,本文档的实施例应用于的解码设备和编码设备可被包括在以下各项中:多媒体广播收发器、移动通信终端、家庭影院视频装置、数字影院视频装置、监视相机、视频聊天装置以及诸如视频通信的实时通信装置、移动流装置、存储介质、摄像机、视频点播(VoD)服务提供商、过顶(OTT)视频装置、互联网流服务提供商、3D视频装置、虚拟现实(VR)装置、增强现实(AR)装置、图像电话视频装置、车辆终端(例如,车辆(包括自主车辆)终端、飞机终端或船舶终端)和医疗视频装置;并且可用于处理图像信号或数据。例如,OTT视频装置可包括游戏机、蓝光播放器、连接互联网的TV、家庭影院系统、智能电话、平板PC和数字录像机(DVR)。

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

另外,可将本文档的实施例体现为基于程序代码的计算机程序产品,并且可在根据本文档的实施例的计算机上执行程序代码。可将程序代码存储在计算机可读载体上。

图17表示可以应用本文档中描述的实施例的内容流系统的示例。

参考图17,应用本文档的实施例的内容流系统通常可以包括编码服务器、流服务器、网络(web)服务器、媒体存储器、用户设备和多媒体输入设备。

编码服务器用来将从诸如智能电话、相机、摄像机等的多媒体输入装置输入的内容压缩为数字数据,生成比特流,并且将其传送至流服务器。作为另一示例,在诸如智能电话、相机、摄像机等的多媒体输入装置直接生成码流的情况下,可省略编码服务器。

可通过本文档的实施例应用于的编码方法或比特流生成方法来生成比特流。并且流服务器可在传送或接收比特流的过程中暂时存储比特流。

流服务器基于用户的请求通过网络服务器向用户设备发送多媒体数据,该网络服务器充当向用户通知存在什么服务的工具。当用户请求用户想要的服务时,网络服务器将请求转移至流服务器,并且流服务器将多媒体数据发送到用户。在这方面,内容流系统可包括单独的控制服务器,并且在这种情况下,控制服务器用来控制内容流系统中的各个设备之间的命令/响应。

流服务器可从媒体存储装置和/或编码服务器接收内容。例如,在从编码服务器接收到内容的情况下,可实时地接收内容。在这种情况下,流服务器可将比特流存储预定时间段以流畅地提供流服务。

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

可将内容流系统中的每个服务器作为分布式服务器操作,并且在这种情况下,可以分布式方式处理由每个服务器接收的数据。

本文所描述的权利要求可以以各种方式组合。例如,本说明书的方法权利要求的技术特征可以被组合并实现为装置,并且本说明书的装置权利要求的技术特征可以被组合并实现为方法。另外,本说明书的方法权利要求的技术特征和装置权利要求的技术特征可以组合以实现为装置,并且本说明书的方法权利要求的技术特征和装置权利要求的技术特征可以组合并且实现为方法。

60页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:使用多个参考滤波器的帧内视频编解码

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类