一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

使用运动矢量的图像编译的方法和装置与流程

2022-02-24 19:12:44 来源:中国专利 TAG:


1.本文档涉及一种用于使用运动矢量的图像编译的方法和装置。


背景技术:

2.最近,在各种领域中对诸如4k或8k超高清(uhd)图像/视频的高分辨率、高质量图像/视频的需求不断增加。随着图像/视频分辨率或质量变得更高,与传统图像/视频数据相比发送相对更多的信息或比特。因此,如果图像/视频数据经由诸如现有有线/无线宽带线路的介质发送或被存储在传统存储介质中,则传输和存储的成本容易增加。
3.此外,对虚拟现实(vr)和人工现实(ar)内容以及诸如全息图的沉浸式媒体的兴趣和需求日益增长;并且表现出与现实图像/视频不同的图像/视频特性的图像/视频(例如,游戏图像/视频)的广播也日益增长。
4.因此,需要高度高效的图像/视频压缩技术来有效地压缩并发送、存储或播放如上所述显示出各种特性的高分辨率、高质量图像/视频。
5.此外,图像/视频编译中的帧间预测可以包括用于对称运动矢量差(smvd)参考索引的过程和/或用于合并运动矢量差(mmvd)的过程。考虑到参考图片标记(例如,短期或长期参考),存在执行这些过程的技术的讨论。


技术实现要素:

6.技术方案
7.根据本公开的一个实施例,提供了一种用于改进图像/视频编译效率的方法和装置。
8.根据本公开的一个实施例,提供了一种用于在图像/视频编译系统中有效地执行帧间预测的方法和装置。
9.根据本公开的一个实施例,提供了一种用于用信号发送关于在帧间预测中的运动矢量差的信息的方法和装置。
10.根据本公开的一个实施例,在对当前块应用双预测时,提供了用于用信号发送关于l0运动矢量差和l1运动矢量差的信息的方法和装置。
11.根据本公开的一个实施例,提供了一种用于用信号发送smvd标志的方法和装置。
12.根据本公开的一个实施例,可以基于用于双预测的参考图片的类型来执行预测过程。
13.根据本公开的一个实施例,可以基于参考图片标记来执行用于推导smvd参考索引的过程。
14.根据本公开的一个实施例,可以使用短期参考图片(标记为短期参考)来执行用于推导smvd参考索引的过程。
15.根据本文档的实施例,提供了由解码设备执行的视频/图像解码方法。
16.根据本文档的实施例,提供了用于执行视频/图像解码的解码设备。
17.根据本文档的实施例,提供了由编码设备执行的视频/图像编码方法。
18.根据本文档的实施例,提供了用于执行视频/图像编码的编码设备。
19.根据本文档的一个实施例,提供了一种计算机可读数字存储介质,其中存储根据本文档的至少一个实施例中公开的视频/图像编码方法生成的编码视频/图像信息。
20.根据本文档的实施例,提供了一种计算机可读数字存储介质,其中存储使得通过解码设备执行在本文档的至少一个实施例中公开的视频/图像解码方法的编码信息或编码视频/图像信息。
21.有益效果
22.根据本公开,可以提高整体图像/视频压缩效率。
23.根据本公开,可以有效地执行关于运动矢量差的信息的信令。
24.根据本公开,在对当前块应用双预测时,可以有效地推导l1运动矢量差。
25.根据本公开,可以基于参考图片的类型用信号发送被用于推导l1运动矢量差的信息,并且因此可以减少编译系统的复杂度。
26.根据本公开的一个实施例,可以使用用于推导smvd的参考图片索引的短期参考图片来执行有效的帧间预测。
27.通过本公开的特定实施例获得的效果不限于上述那些效果。例如,可以获得相关领域的普通技术人员能够理解或从本公开中推导的各种其他技术效果。因此,本公开的特定效果不限于本文档中明确公开的那些,并且可以包括可以从本公开的技术特征中理解或推导的各种其他效果。
附图说明
28.图1图示本文档的实施例可以应用于的视频/图像编译系统的示例。
29.图2是示意性地图示本文档的实施例可以应用于的视频/图像编码设备的配置的图。
30.图3是图示本文档的实施例可以应用于的视频/图像解码设备的配置的示意图。
31.图4示出基于帧间预测的视频/图像编码方法的示例。
32.图5示出基于帧间预测的视频/图像解码方法的示例。
33.图6示例性地示出帧间预测过程。
34.图7示出根据本公开的用于构建合并候选列表的方法。
35.图8示出根据本公开的用于构建mvp候选列表的方法。
36.图9是用于描述对称运动矢量差(smvd)的图。
37.图10是用于描述在帧间预测中推导运动矢量的方法的图。
38.图11图示根据本公开的一个实施例的mmvd的mvd推导过程。
39.图12图示根据本公开的另一个实施例的mmvd的mvd推导过程。
40.图13图示根据本公开的又一实施例的mmvd的mvd推导过程。
41.图14图示根据本公开的一个实施例的mmvd的mvd推导过程。
42.图15图示根据本公开的一个实施例的mmvd的mvd推导过程。
43.图16和17图示根据本公开的实施例的视频/图像编码方法和相关组件的一个示例。
44.图18和19图示根据本公开的实施例的图像/视频解码方法和相关组件的一个示例。
45.图20图示本文档的实施例可以应用于的的内容流系统的示例。
具体实施方式
46.本文档能够以各种方式修改,并且其特定实施例将在附图中描述并且示出。然而,实施例并不旨限制本文档。以下描述中使用的术语仅用于描述特定实施例,而不是旨在限制本文档。单数的表达包括复数的表达,只要它不被清楚地不同地理解。诸如“包括”或“具有”这样的术语应该被理解为指示存在以下描述中使用的特性、数字、步骤、操作、元件、组件或其组合,而没有排除存在或添加一个或多个不同的特性、数字、步骤、操作、元件、组件或其组合的可能性。
47.同时,为了便于关于不同特征功能的描述,独立地示出本文档中描述的附图中的每个配置,并且不意味着每个配置被实现为单独的硬件或单独的软件。例如,可以组合每个组件中的两个或更多个组件以形成一个组件,或者可以将一个组件划分为多个组件。其中每个组件被集成和/或分离的实施例也被包括在本文档的公开的范围内。
48.在下文中,将参考附图详细地描述本实施例的示例。此外,在附图中,相同的参考数字用于指示相同的元件,并且可省略了相同元件的重复描述。
49.图1图示可以应用本文档的实施例的视频/图像编译系统的示例。
50.参考图1,视频/图像编译系统可以包括第一装置(源装置)和第二装置(接收装置)。源装置可以经由数字存储介质或网络以文件或流的形式将编码的视频/图像信息或数据传送到接收装置。
51.源装置可以包括视频源、编码设备和发送器。接收装置可以包括接收器、解码设备和渲染器。编码设备可以被称为视频/图像编码设备,并且解码设备可以被称为视频/图像解码设备。发送器可以被包括在编码设备中。接收器可以被包括在解码设备中。渲染器可以包括显示器,并且显示器可以被配置为单独的装置或外部组件。
52.视频源可以通过捕获、合成或生成视频/图像的过程来获得视频/图像。视频源可以包括视频/图像捕获装置和/或视频/图像生成装置。视频/图像捕获装置可以包括例如一个或更多个相机、包括先前捕获的视频/图像的视频/图像档案等。视频/图像生成装置可以包括例如计算机、平板计算机和智能电话,并且可以(电子地)生成视频/图像。例如,可以通过计算机等生成虚拟视频/图像。在这种情况下,视频/图像捕获过程可以被生成相关数据的过程取代。
53.编码设备可以对输入视频/图像进行编码。编码设备可以执行诸如预测、变换和量化的一系列过程用于压缩和编译效率。编码的数据(编码的视频/图像信息)能够以比特流的形式被输出。
54.发送器可以通过数字存储介质或网络以文件或流的形式将以比特流的形式输出的编码的图像/图像信息或数据发送到接收装置的接收器。数字存储介质可以包括诸如usb、sd、cd、dvd、蓝光、hdd、ssd等的各种存储介质。发送器可以包括用于通过预定文件格式生成媒体文件的元件,并且可以包括用于通过广播/通信网络进行传输的元件。接收器可以接收/提取比特流,并且将接收的比特流发送到解码设备。
55.解码设备可以通过执行与编码设备的操作相对应的诸如解量化、逆变换、预测等的一系列过程来解码视频/图像。
56.渲染器可以渲染解码后的视频/图像。可以通过显示器来显示渲染后的视频/图像。
57.本文档涉及视频/图像编译。例如,本文档中公开的方法/实施例可以应用于通用视频编码(vvc)、基本视频编码(evc)标准、aomedia video 1(av1)标准、第二代音频视频编码标准(avs2)或下一代视频/图像编码标准(例如,h.267或h.268等)中公开的方法。
58.本文档提出视频/图像编译的各种实施例,并且除非相反地提及,否则这些实施例可以被彼此组合地执行。
59.在本文档中,视频可以指随时间的一系列图像。图片通常是指表示特定时间帧处的一个图像的单元,并且切片(slice)/拼块(tile)是指在编译方面构成图片的一部分的单元。切片/拼块可以包括一个或多个编译树单元(ctu)。一个图片可以由一个或多个切片/拼块组成。一个图片可以由一个或多个拼块组(tile group)组成。一个拼块组可以包括一个或多个拼块。图块(brick)可以表示图片中的拼块内的ctu行的矩形区域。拼块可以被分区成多个图块,每个图块可以利用拼块内的一个或多个ctu行来构建。未被分区成多个图块的拼块也可以被称为图块。图块扫描可以表示将图片分区的ctu的特定顺序排序,其中ctu可以在图块内以ctu光栅扫描排序,并且拼块内的图块能够以拼块的图块的光栅扫描连续地排序,并且图片中的拼块能够以图片的拼块的光栅扫描连续地排序。拼块是图片内特定拼块列和特定拼块行内的ctu的矩形区域。拼块列是ctu的矩形区域,其具有等于图片的高度的高度和由图片参数集中的语法元素指定的宽度。拼块行是ctu的矩形区域,其具有由图片参数集中的语法元素指定的高度和等于图片的宽度的宽度。拼块扫描是将图片分区的ctu的特定顺序排序,其中ctu在拼块中以ctu光栅扫描连续地排序而图片中的拼块以图片的拼块的光栅扫描连续地排序。切片包括图片的整数个图块,其可以排他性地包括在单个nal单元中。切片可以由多个完整拼块组成,或者仅由一个拼块的连续完整图块序列组成。在本文档中,可以使用拼块组和切片来代替彼此。例如,在本文档中,拼块组/拼块组报头可以被称为切片/切片报头。
60.同时,一个图片可以划分成两个或更多个子图片。子图片可以是图片内一个或多个切片的矩形区域。
61.像素或像元(pel)可以意指构成一个图片(或图像)的最小单元。另外,“样本”可以用作与像素对应的术语。样本通常可以表示像素或像素的值,并且可以仅表示亮度分量的像素/像素值或仅表示色度分量的像素/像素值。
62.单元可以表示图像处理的基本单位。单元可以包括图片的特定区域和与该区域有关的信息中的至少一个。一个单元可以包括一个亮度块和两个色度(例如,cb、cr)块。在一些情况下,单元可以与诸如块或区域的术语互换使用。在一般情况下,m
×
n块可以包括m列和n行的样本(或样本阵列)或变换系数的集合(或阵列)。可选地,样本可以意指空间域中的像素值,并且当这种像素值被变换到频域时,它可以意指频域中的变换系数。
63.在本文档中,“a或b”可以意指“仅a”、“仅b”或“a和b这二者”。换句话说,在本文档中,“a或b”可以被解释为“a和/或b”。例如,在本文档中,“a、b或c(a、b或c)”意指“仅a”、“仅b”、“仅c”或“a、b和c的任何组合”。
64.本文档中使用的斜线“/”或逗号(,)可以意指“和/或”。例如,“a/b”可以意指“a和/或b”。因此,“a/b”可以意指“仅a”、“仅b”或“a和b这二者”。例如,“a、b、c”可以意指“a、b或c”。
65.在本文档中,“a和b中的至少一个”可以意指“仅a”、“仅b”或“a和b这二者”。此外,在本文档中,表达“a或b中的至少一个”或“a和/或b中的至少一个”可以被解释为“a和b中的至少一个”。
66.此外,在本文档中,“a、b和c中的至少一个”可以意指“仅a”、“仅b”、“仅c”或“a、b和c的任何组合”。此外,“a、b或c中的至少一个”或“a、b和/或c中的至少一个”可以意指“a、b和c中的至少一个”。
67.此外,本文档中使用的括号可以意指“例如”。具体地,当指示“预测(帧内预测)”时,可以将“帧内预测”作为“预测”的示例提出。换句话说,本文档中的“预测”不限于“帧内预测”,并且可以将“帧内预测”作为“预测”的示例提出。此外,即使在指示“预测(即,帧内预测)”时,也可以将“帧内预测”作为“预测”的示例提出。
68.在本文档的一个附图中单独描述的技术特征可以单独地或同时地实现。
69.图2示出可以应用本文档的实施例的视频/图像编码设备的结构。在下文中,所谓的视频编码设备可以包括图像编码设备。
70.参考图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作为内部/外部组件。
71.图像分割器210可以将输入到编码设备200的输入图像(或者图片或帧)分区成一个或更多个处理器。例如,处理器可以被称为编译单元(cu)。在这种情况下,编译单元可以根据四叉树二叉树三叉树(qtbttt)结构从编译树单元(ctu)或最大编译单元(lcu)递归地分区。例如,一个编译单元可以基于四叉树结构、二叉树结构和/或三元结构被分区成深度更深的多个编译单元。在这种情况下,例如,可以首先应用四叉树结构,稍后可以应用二叉树结构和/或三元结构。另选地,可以首先应用二叉树结构。可以基于不再分区的最终编译单元来执行根据本文档的编译过程。在这种情况下,根据图像特性基于编译效率,最大编译单元可以用作最终编译单元,或者如果需要,编译单元可以被递归地分区成深度更深的编译单元并且具有最优大小的编译单元可以用作最终编译单元。这里,编译过程可以包括预测、变换和重构的过程(将稍后描述)。作为另一示例,处理器还可以包括预测单元(pu)或变换单元(tu)。在这种情况下,预测单元和变换单元可以从上述最终编译单元分割或分区。预测单元可以是样本预测的单元,变换单元可以是用于推导变换系数的单元和/或用于从变换系数推导残差信号的单元。
72.在一些情况下,单元可以与诸如块或区域的术语互换使用。在一般情况下,m
×
n块可以表示由m列和n行组成的样本或变换系数的集合。样本通常可以表示像素或像素值,可
以仅表示亮度分量的像素/像素值或者仅表示色度分量的像素/像素值。样本可以用作与像素或像元(pel)的一个图片(或图像)对应的术语。
73.在编码设备200中,从输入图像信号(原始块、原始样本阵列)减去从帧间预测器221或帧内预测器222输出的预测信号(预测块、预测样本阵列)以生成残差信号(残差块、残差样本阵列),并且所生成的残差信号被发送到变换器232。在这种情况下,如所示,在编码器200中从输入图像信号(原始块、原始样本阵列)减去预测信号(预测块、预测样本阵列)的单元可以被称为减法器231。预测器可以对要处理的块(以下,称为当前块)执行预测并且生成包括当前块的预测样本的预测块。预测器能够以当前块或cu为单位确定应用帧内预测还是帧间预测。如在各个预测模式的描述中稍后描述的,预测器可以生成与预测有关的各种信息(例如,预测模式信息)并将所生成的信息发送到熵编码器240。关于预测的信息可在熵编码器240中编码并以比特流的形式输出。
74.帧内预测器222可以参考当前图片中的样本来预测当前块。根据预测模式,所参考的样本可以位于当前块附近或者可以隔开。在帧内预测中,预测模式可以包括多个非定向模式和多个定向模式。例如,非定向模式可以包括dc模式和平面模式。例如,根据预测方向的详细程度,定向模式可以包括33个定向预测模式或65个定向预测模式。然而,这仅是示例,可以根据设置使用更多或更少的定向预测模式。帧内预测器222可以使用应用于邻近块的预测模式来确定应用于当前块的预测模式。
75.帧间预测器221可以基于参考图片上由运动矢量指定的参考块(参考样本阵列)来推导当前块的预测块。这里,为了减少在帧间预测模式下发送的运动信息量,可以基于邻近块与当前块之间的运动信息的相关性以块、子块或样本为单位预测运动信息。运动信息可以包括运动矢量和参考图片索引。运动信息还可以包括帧间预测方向(l0预测、l1预测、bi预测等)信息。在帧间预测的情况下,邻近块可以包括存在于当前图片中的空间邻近块和存在于参考图片中的时间邻近块。包括参考块的参考图片和包括时间邻近块的参考图片可相同或不同。时间邻近块可以被称为并置参考块、并置cu(colcu)等,并且包括时间邻近块的参考图片可以被称为并置图片(colpic)。例如,帧间预测器221可以基于邻近块来配置运动信息候选列表并且生成指示哪一候选用于推导当前块的运动矢量和/或参考图片索引的信息。可以基于各种预测模式执行帧间预测。例如,在跳过模式和合并模式的情况下,帧间预测器221可以使用邻近块的运动信息作为当前块的运动信息。在跳过模式下,与合并模式不同,可以不发送残差信号。在运动矢量预测(mvp)模式的情况下,邻近块的运动矢量可以用作运动矢量预测器,并且可以通过用信号发送运动矢量差来指示当前块的运动矢量。
76.预测器220可以基于下面描述的各种预测方法来生成预测信号。例如,预测器可不仅应用帧内预测或帧间预测来预测一个块,而且同时应用帧内预测和帧间预测二者。这可以被称为组合帧间和帧内预测(ciip)。另外,预测器可以基于帧内块复制(ibc)预测模式或调色板模式来预测块。ibc预测模式或调色板模式可以用于游戏等的内容图像/视频编码,例如屏幕内容编译(scc)。ibc基本上在当前图片中执行预测,但是可以与帧间预测相似地执行,使得在当前图片中推导参考块。即,ibc可以使用本文档中描述的至少一个帧间预测技术。调色板模式可以被视为帧内编译或帧内预测的示例。当应用调色板模式时,可以基于关于调色板表和调色板索引的信息用信号发送图片内的样本值。
77.由预测器(包括帧间预测器221和/或帧内预测器222)生成的预测信号可以用于生
成重构信号或生成残差信号。变换器232可以通过对残差信号应用变换技术来生成变换系数。例如,变换技术可以包括离散余弦变换(dct)、离散正弦变换(dst)、karhunen-lo
è
ve变换(klt)、基于图形的变换(gbt)或条件非线性变换(cnt)中的至少一个。这里,当像素之间的关系信息由图形表示时,gbt意指从图形获得的变换。cnt是指基于使用所有先前重构的像素生成的预测信号生成的变换。另外,变换处理可以应用于具有相同大小的正方形像素块或者可以应用于正方形以外的具有可变大小的块。
78.量化器233可以将变换系数量化并将它们发送到熵编码器240,并且熵编码器240可以对量化的信号(关于量化变换系数的信息)进行编码并输出比特流。关于量化变换系数的信息可以被称为残差信息。量化器233可以基于系数扫描顺序将块类型量化变换系数重排为一维矢量形式,并且基于一维矢量形式的量化变换系数来生成关于量化变换系数的信息。可以生成关于变换系数的信息。熵编码器240可以执行例如指数golomb、上下文自适应可变长度编码(cavlc)、上下文自适应二进制算术编码(cabac)等的各种编码方法。熵编码器240可以对量化变换系数以外的视频/图像重构所需的信息(例如,语法元素的值等)一起或单独地进行编码。编码的信息(例如,编码的视频/图像信息)可以按比特流的形式以nal(网络抽象层)为单位发送或存储。视频/图像信息还可以包括关于各种参数集的信息,例如自适应参数集(aps)、图片参数集(pps)、序列参数集(sps)或视频参数集(vps)。另外,视频/图像信息还可以包括一般约束信息。在本文档中,从编码设备发送/用信号发送给解码设备的信息和/或语法元素可以被包括在视频/图片信息中。视频/图像信息可以通过上述编码过程编码并被包括在比特流中。比特流可以经由网络发送或者可以被存储在数字存储介质中。网络可以包括广播网络和/或通信网络,并且数字存储介质可以包括诸如usb、sd、cd、dvd、蓝光、hdd、ssd等的各种存储介质。发送从熵编码器240输出的信号的发送器(未示出)和/或存储该信号的存储单元(未示出)可以被包括作为编码设备200的内部/外部元件,并且另选地,发送器可以被包括在熵编码器240中。
79.从量化器233输出的量化变换系数可以用于生成预测信号。例如,可以通过经由解量化器234和逆变换器235对量化变换系数应用解量化和逆变换来重构残差信号(残差块或残差样本)。加法器250将重构的残差信号与从帧间预测器221或帧内预测器222输出的预测信号相加以生成重构信号(重构图片、重构块、重构样本阵列)。如果要处理的块不存在残差(例如,应用跳过模式的情况),则预测块可以用作重构块。加法器250可以被称为重构器或重构块生成器。如下所述,所生成的重构信号可以用于当前图片中要处理的下一块的帧内预测并且可以通过滤波用于下一图片的帧间预测。
80.此外,可在图片编码和/或重构期间应用亮度映射与色度缩放(lmcs)。
81.滤波器260可以通过对重构信号应用滤波来改进主观/客观图像质量。例如,滤波器260可以通过对重构图片应用各种滤波方法来生成修改的重构图片并将修改的重构图片存储在存储器270(具体地,存储器270的dpb)中。例如,各种滤波方法可以包括去块滤波、样本自适应偏移、自适应环路滤波器、双边滤波器等。滤波器260可以生成与滤波有关的各种信息并且将所生成的信息发送到熵编码器240,如在各个滤波方法的描述中稍后描述的。与滤波有关的信息可以由熵编码器240编码并以比特流的形式输出。
82.发送到存储器270的修改的重构图片可以用作帧间预测器221中的参考图片。当通过编码设备应用帧间预测时,可以避免编码设备200与解码设备之间的预测失配并且编码
效率可改进。
83.存储器270的dpb可以存储用作帧间预测器221中的参考图片的修改的重构图片。存储器270可以存储推导(或编码)当前图片中的运动信息的块的运动信息和/或图片中已经重构的块的运动信息。所存储的运动信息可以被发送到帧间预测器221并用作空间邻近块的运动信息或时间邻近块的运动信息。存储器270可以存储当前图片中的重构块的重构样本并且可以将重构样本传送至帧内预测器222。
84.图3示出可以应用本说明书的实施例的视频/图像解码设备的配置。
85.参考图3,解码设备300可以包括熵解码器310、残差处理器320、预测器330、加法器340、滤波器350、存储器360。预测器330可以包括帧间预测器331和帧内预测器332。残差处理器320可以包括解量化器321和逆变换器321。根据实施例,熵解码器310、残差处理器320、预测器330、加法器340和滤波器350可以由硬件组件(例如,解码器芯片组或处理器)配置。另外,存储器360可以包括解码图片缓冲器(dpb)或者可以由数字存储介质配置。硬件组件还可以包括存储器360作为内部/外部组件。
86.当输入包括视频/图像信息的比特流时,解码设备300可以重构与在图2的编码设备中处理视频/图像信息的处理对应的图像。例如,解码设备300可以基于从比特流获得的块分区相关信息来推导单元/块。解码设备300可以使用编码设备中应用的处理器来执行解码。因此,例如,解码的处理器可以是编译单元,并且编译单元可以根据四叉树结构、二叉树结构和/或三叉树结构从编码树单元或最大编译单元分区。可从编译单元推导一个或更多个变换单元。通过解码设备300解码和输出的重构的图像信号可以通过再现设备再现。
87.解码设备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中的至少一个。
88.解量化器321可以将量化变换系数解量化并输出变换系数。解量化器321可以按二维块形式重排量化变换系数。在这种情况下,可以基于在编码设备中执行的系数扫描顺序来执行重排。解量化器321可以使用量化参数(例如,量化步长信息)对量化变换系数执行解量化并且获得变换系数。
89.逆变换器322对变换系数逆变换以获得残差信号(残差块、残差样本阵列)。
90.预测器可以对当前块执行预测并生成包括当前块的预测样本的预测块。预测器可以基于从熵解码器310输出的关于预测的信息来确定对当前块应用帧内预测还是帧间预测并且可以确定特定帧内/帧间预测模式。
91.预测器320可以基于下述各种预测方法来生成预测信号。例如,预测器不仅可应用帧内预测或帧间预测来预测一个块,而且可以同时应用帧内预测和帧间预测。这可以被称为组合帧间和帧内预测(ciip)。另外,预测器可以基于帧内块复制(ibc)预测模式或调色板模式来预测块。ibc预测模式或调色板模式可以用于游戏等的内容图像/视频编码,例如屏幕内容编译(scc)。ibc基本上中当前图片中执行预测,但是可以与帧间预测相似地执行,使得在当前图片中推导参考块。即,ibc可以使用本文档中描述的至少一种帧间预测技术。调色板模式可以被视为帧内编译或帧内预测的示例。当应用调色板模式时,可以基于关于调色板表和调色板索引的信息用信号发送图片内的样本值。
92.帧内预测器331可以参考当前图片中的样本来预测当前块。根据预测模式,所参考的样本可以位于当前块附近或者可以隔开。在帧内预测中,预测模式可以包括多个非定向模式和多个定向模式。帧内预测器331可以使用应用于邻近块的预测模式来确定应用于当前块的预测模式。
93.帧间预测器332可以基于参考图片上由运动矢量指定的参考块(参考样本阵列)来推导当前块的预测块。在这种情况下,为了减少在帧间预测模式下发送的运动信息量,可以基于邻近块与当前块之间的运动信息的相关性以块、子块或样本为单位预测运动信息。运动信息可以包括运动矢量和参考图片索引。运动信息还可以包括帧间预测方向(l0预测、l1预测、bi预测等)信息。在帧间预测的情况下,邻近块可以包括存在于当前图片中的空间邻近块和存在于参考图片中的时间邻近块。例如,帧间预测器332可以基于邻近块来配置运动信息候选列表并且基于所接收的候选选择信息来推导当前块的运动矢量和/或参考图片索引。可以基于各种预测模式来执行帧间预测,并且关于预测的信息可以包括指示当前块的帧间预测模式的信息。
94.加法器340可以通过将所获得的残差信号与从预测器(包括帧间预测器332和/或帧内预测器331)输出的预测信号(预测块、预测样本阵列)相加来生成重构信号(重构图片、重构块、重构样本阵列)。如果要处理的块不存在残差,例如当应用跳过模式时,预测块可以用作重构块。
95.加法器340可以被称为重构器或重构块生成器。所生成的重构信号可以用于当前图片中要处理的下一块的帧内预测,可以如下所述通过滤波输出,或者可以用于下一图片
的帧间预测。
96.此外,可以在图片解码处理中应用亮度映射与色度缩放(lmcs)。
97.滤波器350可以通过对重构信号应用滤波来改进主观/客观图像质量。例如,滤波器350可以通过对重构图片应用各种滤波方法来生成修改的重构图片并且将修改的重构图片存储在存储器360(具体地,存储器360的dpb)中。例如,各种滤波方法可以包括去块滤波、样本自适应偏移、自适应环路滤波器、双边滤波器等。
98.存储在存储器360的dpb中的(修改的)重构图片可以用作帧间预测器332中的参考图片。存储器360可以存储推导(或解码)当前图片中的运动信息的块的运动信息和/或图片中已经重构的块的运动信息。所存储的运动信息可以被发送到帧间预测器260以用作空间邻近块的运动信息或时间邻近块的运动信息。存储器360可以存储当前图片中的重构块的重构样本并将重构样本传送至帧内预测器331。
99.在本文档中,在编码设备200的滤波器260、帧间预测器221和帧内预测器222中描述的实施例可以与解码设备300的滤波器350、帧间预测器332和帧内预测器331相同或分别与之对应地应用。这也可适用于单元332和帧内预测器331。
100.如上所述,在执行视频编译时,执行预测以增加压缩效率。通过此,可以生成包括用于当前块(要被编译的块)的预测样本的预测块。这里,预测块包括空间域(或像素域)中的预测样本。预测块在编码装置和解码装置中相同地推导,并且编码装置解码关于原始块与预测块之间的残差的信息(残差信息),而非原始块的原始样本值本身。通过用信号发送给装置,可以增加图像编译效率。解码设备可以基于残差信息来推导包括残差样本的残差块,通过对残差块和预测块求和来生成包括重构样本的重构块,并且生成包括重构块的重构图片。
101.残差信息可以通过变换过程和量化过程来生成。例如,编码设备可以推导原始块与预测块之间的残差块,并且对包括在残差块中的残差样本(残差样本阵列)执行变换过程来推导变换系数,并且然后,通过执行变换系数的量化过程来推导量化变换系数,以将残差相关信息(通过比特流)用信号发送给解码设备。这里,残差信息可以包括位置信息、变换技术、变换核和量化参数、量化变换系数的值信息等。解码设备可以基于残差信息来执行解量化/逆变换过程并推导残差样本(或残差块)。解码设备可以基于预测块和残差块来生成重构图片。编码设备还可以对供后续图片的帧间预测参考的量化变换系数进行解量化/逆变换以推导残差块,并且基于其来生成重构图片。
102.在本文档中,可以省略量化/解量化和/或变换/逆变换中的至少一个。当省略量化/解量化时,量化变换系数可以称为变换系数。当省略变换/逆变换时,变换系数可以被称为系数或残差系数,或者为了表达的统一性仍然可以被称为变换系数。
103.在本文档中,量化变换系数和变换系数可以分别称为变换系数和缩放变换系数。在这种情况下,残差信息可以包括关于变换系数的信息,并且关于变换系数的信息可以通过残差编译语法用信号发送。可以基于残差信息(或关于变换系数的信息)来推导变换系数,并且可以通过对变换系数进行逆变换(缩放)来推导缩放变换系数。残差样本可以基于缩放变换系数的逆变换(变换)来推导。这也可以在本文档的其他部分中应用/表示。
104.帧内预测可以指基于当前块所属于的图片(在下文中,称为当前图片)中的参考样本生成用于当前块的预测样本的预测。在对当前块应用帧内预测时,可以推导要用于当前
块的帧内预测的邻近参考样本。当前块的邻近参考样本可以包括与大小为nwxnh的当前块的左边界相邻的样本和与左下相邻的总共2xnh个样本、与当前块的上边界相邻的样本和与右上相邻的总共2xnw个样本、以及与当前块的左上相邻的一个样本。可替选地,当前块的邻近参考样本可以包括多个上邻近样本和多个左邻近样本。此外,当前块的邻近参考样本可以包括与大小为nwxnh的当前块的右边界相邻的总共nh个样本、与当前块的下边界相邻的总共nw个样本以及与当前块的右下相邻(与右下相邻)的一个样本。
105.然而,当前块的邻近参考样本中的一些尚未被解码或可能不可用。在这种情况下,解码器可以通过用可用样本替换不可用样本来配置将用于预测的邻近参考样本。可替选地,可以通过可用样本的插值来配置将用于预测的邻近参考样本。
106.在推导邻近参考样本时,(i)可以基于当前块的邻近参考样本的平均或插值来推导预测样本,并且(ii)可以基于当前块的周边参考样本之中的针对预测样本的特定(预测)方向中存在的参考样本来推导预测样本。(i)的情况可以被称为是非定向模式或非角度模式,并且(ii)的情况可以被称为定向模式或角度模式。
107.另外,也可以通过邻近参考样本之中的基于当前块的预测样本的位于与当前块的帧内预测模式的预测方向相反的方向中的第一邻近样本和第二邻近样本之间的插值来生成预测样本。上述情况可以被称为线性插值帧内预测(lip)。此外,可以使用线性模型基于亮度样本来生成色度预测样本。这种情况可以被称为lm模式。
108.此外,可以基于滤波的邻近参考样本来推导当前块的临时预测样本,并且还可以通过对根据帧内预测模式在现有邻近参考样本(即,未滤波的邻近参考样本)之中推导的至少一个参考样本与临时预测样本进行加权求和来推导当前块的预测样本。前述情况可以被称作位置相关的帧内预测(pdpc)。
109.此外,可以通过在当前块的邻近多参考样本线之中选择具有最高预测准确度的参考样本线以通过使用位于相应线中的预测方向中的参考样本来推导预测样本,并且然后可以向解码设备指示(用信号发送)本文使用的参考样本线,由此执行帧内预测编码。上述情况可以被称为多参考线(mrl)帧内预测或基于mrl的帧内预测。
110.此外,可以通过将当前块划分成垂直或水平子分区而基于相同帧内预测模式执行帧内预测,并且能够以子分区为单位来推导并且使用邻近参考样本。也就是说,在此情况下,用于当前块的帧内预测模式同等地应用于子分区,并且可以通过以子分区为单位来推导并且使用邻近参考样本来在一些情况下改善帧内预测性能。这种预测方法可以被称为帧内子分区(isp)帧内预测或基于isp的帧内预测。
111.上述帧内预测方法可以被称为与帧内预测模式分开的帧内预测类型。帧内预测类型可以被称为诸如帧内预测技术或附加帧内预测模式的各种术语。例如,帧内预测类型(或附加帧内预测模式等)可以包括上述lip、pdpc、mrl及isp中的至少一个。除了诸如lip、pdpc、mrl及isp的特定帧内预测类型之外的一般帧内预测方法可以被称作正常帧内预测类型。当不应用特定帧内预测类型的情况下,通常可以应用正常帧内预测类型,并且可以基于上述帧内预测模式执行预测。同时,也可以对根据需要推导的预测样本执行后滤波。
112.具体地,帧内预测过程可以包括帧内预测模式/类型确定步骤、邻近参考样本推导步骤和基于帧内预测模式/类型的预测样本推导步骤。此外,也可以对根据需要推导的预测样本执行后滤波步骤。
113.当应用帧内预测时,可以使用邻近块的帧内预测模式来确定应用于当前块的帧内预测模式。例如,解码设备可以基于接收到的mpm(最可能模式)索引来选择基于当前块的邻近块(例如,左和/或上邻近块)的帧内预测模式所推导的mpm列表的mpm候选之一,并且可以基于剩余的帧内预测模式信息来选择未包括在mpm候选中的其他剩余帧内预测模式(和平面模式)之一。mpm列表可以被配置成包括或不包括平面模式作为候选。例如,如果mpm列表包括平面模式作为候选,则mpm列表可以具有6个候选。如果mpm列表不包括平面模式作为候选,则mpm列表可以具有5个候选。当mpm列表不包括平面模式作为候选时,可以用信号发送指示当前块的帧内预测模式是否不是平面模式的非平面标志(例如,intra_luma_not_planar_flag)。例如,可以首先用信号发送mpm标志,并且当mpm标志的值为1时可以用信号发送mpm索引和非平面标志。此外,当非平面标志的值为1时可以用信号发送mpm索引。这里,由于平面模式始终被视为mpm,所以mpm列表被配置成不包括平面模式,因为候选不首先用信号发送非平面标志以检查是否其是平面模式。
114.例如,可以基于mpm标志(例如,intra_luma_mpm_flag)指示应用于当前块的帧内预测模式是在mpm候选(和平面模式)之中还是在剩余模式之中。mpm标志值1可以指示用于当前块的帧内预测模式在mpm候选(和平面模式)内,并且mpm标志值0可以指示用于当前块的帧内预测模式不在mpm候选(和平面模式)中。非平面标志(例如,intra_luma_not_planar_flag)值0可以指示用于当前块的帧内预测模式是平面模式,并且非平面标志值1可以指示用于当前块的帧内预测模式不是平面模式。mpm索引能够以mpm_idx或intra_luma_mpm_idx语法元素的形式被用信号发送,并且剩余的帧内预测模式信息能够以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列表能够以诸如mpm候选列表和candmodelist的多种术语来指代。当mip应用于当前块时,可以用信号发送用于mip的单独的mpm标志(例如,intra_mip_mpm_flag)、mpm索引(例如,intra_mip_mpm_idx)和剩余的帧内预测模式信息(例如,intra_mip_mpm_remainder),并且不用信号发送非平面标志。
115.换言之,通常,当对图像执行块分割时,待编译的当前块和邻近块具有相似的图像特性。因此,当前块和邻近块具有相同或相似的帧内预测模式的可能性很高。因此,编码器可以使用邻近块的帧内预测模式以对当前块的帧内预测模式进行编码。
116.例如,编码器/解码器可以配置用于当前块的最可能模式(mpm)的列表。mpm列表可以被称为mpm候选列表。这里,mpm可以指的是用于在帧内预测模式编译中考虑当前块和邻近块之间的相似性来改进编译效率的模式。如上所述,mpm列表可以被配置为包括平面模式,或者可以被配置为排除平面模式。例如,当mpm列表包括平面模式时,mpm列表中的候选数目可以是6个。并且,如果mpm列表不包括平面模式,则mpm列表中的候选数量可以是5个。
117.编码器/解码器可以配置包括5或6个mpm的mpm列表。
118.为了配置mpm列表,可以考虑三种模式:默认帧内模式、邻近帧内模式和推导的帧内模式。
119.对于邻近帧内模式,可以考虑两个邻近块,即左邻近块和上邻近块。
120.如上所述,如果mpm列表被配置为不包括平面模式,则平面模式被从列表中排除,并且mpm列表的候选数量可以被设置为5个。
121.此外,帧内预测模式之中的非定向模式(或非角度模式)可以包括基于当前块的邻近参考样本的平均的dc模式或基于插值的平面模式。
122.当应用帧间预测时,编码设备/解码设备的预测器可以通过以块为单位执行帧间预测来推导预测样本。帧间预测可以是以依赖于除当前图片之外的图片的数据元素(例如,样本值或运动信息)的方式推导的预测。在对当前块应用帧间预测时,可以基于由参考图片索引指示的参考图片上的由运动矢量指定的参考块(参考样本阵列)推导用于当前块的预测块(预测样本阵列)。在此,为了减少在帧间预测模式中发送的运动信息量,可以基于邻近块和当前块之间的运动信息的相关性以块、子块或样本为单位来预测当前块的运动信息。运动信息可以包括运动矢量和参考图片索引。运动信息可以进一步包括帧间预测类型(l0预测、l1预测、bi预测等)信息。在帧间预测的情况下,邻近块可以包括存在于当前图片中的空间邻近块和存在于参考图片中的时间邻近块。包括参考块的参考图片和包括时间邻近块的参考图片可以彼此相同或彼此不同。时间邻近块可以被称为并置参考块、并置cu(colcu)等,并且包括时间邻近块的参考图片可以被称为并置图片(colpic)。例如,可以基于当前块的邻近块来配置运动信息候选列表,并且可以用信号发送指示选择(使用)哪个候选的标志或索引信息以推导当前块的运动矢量和/或参考图片索引。可以基于各种预测模式来执行帧间预测。例如,在跳过模式和合并模式的情况下,当前块的运动信息可以与邻近块的运动信息相同。在跳过模式的情况下,与合并模式不同,可以不发送残差信号。在运动矢量预测(mvp)模式的情况下,所选择的邻近块的运动矢量可以用作运动矢量预测器并且可以用信号发送当前块的运动矢量。在这种情况下,可以使用运动矢量预测器和运动矢量差的和来推导当前块的运动矢量。
123.运动信息可以包括根据帧间预测类型(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可以进一步包括按照输出顺序在当前图片之前的图片作为参考图片。在这种情况下,可以首先在参考图片列表l1中对后续图片进行索引,并且然后可以对先前图片进行索引。输出顺序可以对应于图片顺序计数(poc)顺序。
124.基于帧间预测的视频/图像编码过程可以包括例如以下内容。
125.图4示出基于帧间预测的视频/图像编码方法的示例。
126.编码设备对当前块执行帧间预测(s400)。编码设备可以推导当前块的帧间预测模式和运动信息,并且生成当前块的预测样本。这里,确定帧间预测模式、推导运动信息和生成预测样本的过程可以同时执行,或者任一个过程可以在其它过程之前执行。例如,编码设备的帧间预测器可以包括预测模式确定器、运动信息推导器和预测样本推导器,并且预测模式确定器可以确定当前块的预测模式,运动信息推导器可推导当前块的运动信息,并且预测样本推导器可推导当前块的预测样本。例如,编码设备的帧间预测器可以通过运动估计在参考图片的特定区域(搜索区域)中搜索与当前块相似的块,并且推导与当前块的差最小或者特定参考或以下的参考块。基于此,可以推导指示参考块所在的参考图片的参考图片索引,并且可以基于参考块与当前块之间的位置差来推导运动矢量。编码设备可以在各种预测模式之中确定应用于当前块的模式。编码设备可以比较各种预测模式的rd成本并且为当前块确定最优预测模式。
127.例如,如果对当前块应用跳过模式或合并模式,则编码设备可以配置稍后描述的合并候选列表,并且推导包括在合并候选列表中的合并候选所指示的参考块之中与当前块的差最小或者特定参考或以下的参考块。在这种情况下,可以选择与所推导的参考块相关联的合并候选,并且可以生成指示所选合并候选的合并索引信息并用信号发送给解码设备。可以使用所选合并候选的运动信息来推导当前块的运动信息。
128.作为另一示例,如果对当前块应用(a)mvp模式,则编码设备可配置稍后描述的(a)mvp候选列表,并且使用包括在(a)mvp候选列表中的运动矢量预测器(mvp)候选之中所选mvp候选的运动矢量作为当前块的mvp。在这种情况下,例如,指示通过上述运动估计推导的参考块的运动矢量可以用作当前块的运动矢量,并且mvp候选之中具有与当前块的运动矢量的差最小的运动矢量的mvp候选可以是所选mvp候选。可推导运动矢量差(mvd),其是通过从当前块的运动矢量减去mvp而获得的差。在这种情况下,可以将关于mvd的信息用信号发送给解码设备。另外,如果应用(a)mvp模式,则参考图片索引的值可以被配置为参考图片索引信息并单独地用信号发送给解码设备。
129.编码设备可以基于预测样本来推导残差样本(s410)。编码设备可以通过将当前块的原始样本与预测样本进行比较来推导残差样本。
130.编码设备对包括预测信息和残差信息的图像信息进行编码(s420)。编码设备可按比特流的形式输出编码图像信息。预测信息可以包括关于预测模式信息(例如,跳过标志、合并标志、模式索引等)和运动信息的信息作为与预测过程有关的信息。关于运动信息的信息可以包括作为用于推导运动矢量的信息的候选选择信息(例如,合并索引、mvp标志或mvp索引)。另外,关于运动信息的信息可以包括上述关于mvd的信息和/或参考图片索引信息。另外,关于运动信息的信息可以包括指示是否应用l0预测、l1预测或bi预测的信息。残差信息是关于残差样本的信息。残差信息可以包括关于残差样本的量化变换系数的信息。
131.输出比特流可以被存储在(数字)存储介质中并传送至解码设备,或者也可以经由网络传送至解码设备。
132.此外,如上所述,编码设备可以基于参考样本和残差样本来生成重构图片(包括重构样本和重构块)。这是为了由编码设备推导解码设备所推导的相同预测结果,因此可以增加编译效率。因此,编码设备可以将重构图片(或重构样本、重构块)存储在存储器中,并且
将其用作帧间预测的参考图片。如上所述,还可以对重构图片应用环内滤波过程等。
133.基于帧间预测的视频/图像解码过程可以包括例如以下内容。
134.图5示出基于帧间预测的视频/图像解码方法的示例。
135.参考图5,解码设备可以执行与编码设备所执行的操作对应的操作。解码设备可以基于所接收的预测信息对当前块执行预测并推导预测样本。
136.具体地,解码设备可以基于所接收的预测信息来确定当前块的预测模式(s500)。解码设备可以基于预测信息中的预测模式信息来确定应用于当前块的帧间预测模式。
137.例如,解码设备可以基于合并标志来确定是否对当前块应用合并模式或者确定(a)mvp模式。另选地,解码设备可以基于模式索引来选择各种帧间预测模式候选之一。帧间预测模式候选可以包括跳过模式、合并模式和/或(a)mvp模式,或者可以包括稍后描述的各种帧间预测模式。
138.解码设备基于所确定的帧间预测模式来推导当前块的运动信息(s510)。例如,如果对当前块应用跳过模式或合并模式,则解码设备可以配置稍后描述的合并候选列表,并且在包括在合并候选列表中的合并候选之中选择一个合并候选。可以基于上述选择信息(合并索引)执行选择。可以使用所选合并候选的运动信息来推导当前块的运动信息。所选合并候选的运动信息可以用作当前块的运动信息。
139.作为另一示例,如果对当前块应用(a)mvp模式,则解码设备可以配置稍后描述的(a)mvp候选列表,并且使用包括在(a)mvp候选列表中的运动矢量预测器(mvp)候选之中所选mvp候选的运动矢量,作为当前块的mvp。可以基于上述选择信息(mvp标志或mvp索引)执行选择。在这种情况下,可以基于关于mvd的信息来推导当前块的mvd,并且可以基于当前块的mvp和mvd来推导当前块的运动矢量。另外,可以基于参考图片索引信息来推导当前块的参考图片索引。当前块上参考图片列表中的参考图片索引所指示的图片可以被推导为当前块的帧间预测所参考的参考图片。
140.此外,如稍后描述的,可以在不配置候选列表的情况下推导当前块的运动信息,并且在这种情况下,可以根据稍后描述的预测模式中公开的过程来推导当前块的运动信息。在这种情况下,可省略上述候选列表的配置。
141.解码设备可以基于当前块的运动信息来生成当前块的预测样本(s520)。在这种情况下,解码设备可以基于当前块的参考图片索引来推导参考图片,并且使用参考图片上当前块的运动矢量所指示的参考块的样本来推导当前块的预测样本。在这种情况下,如稍后描述的,在一些情况下还可以执行对当前块的所有或一些预测样本的预测样本滤波过程。
142.例如,解码设备的帧间预测器可以包括预测模式确定器、运动信息推导器和预测样本推导器,并且预测模式确定器可以基于所接收的预测模式信息来确定当前块的预测模式,运动信息推导器可以基于关于所接收的运动信息的信息来推导当前块的运动信息(例如运动矢量和/或参考图片索引),预测样本推导器可以推导当前块的预测样本。
143.解码设备基于所接收的残差信息来生成当前块的残差样本(s530)。解码设备可以基于预测样本和残差样本来生成当前块的重构样本,并且基于其来生成重构图片(s540)。此后,如上所述还可以对重构图片应用环内滤波过程等。
144.图6示例性地示出帧间预测过程。
145.参考图6,如上所述,帧间预测过程可以包括:确定帧间预测模式,根据所确定的预
测模式来推导运动信息,并且基于所推导的运动信息来执行预测(生成预测样本)。帧间预测过程可以由如上所述的编码设备和解码设备执行。本文档中的编译设备可以包括编码设备和/或解码设备。
146.参考图6,编译设备为当前块确定帧间预测模式(s600)。各种帧间预测模式可以用于预测图片中的当前块。例如,可以使用诸如合并模式、跳过模式、运动矢量预测(mvp)模式、仿射模式、子块合并模式以及与mvd合并(mmvd)模式的各种模式。另外或作为附带模式代替这些模式,可以使用解码器侧运动矢量细化(dmvr)模式、自适应运动矢量分辨率(amvr)模式、具有cu级别权重的双预测(bcw)、双向光流(bdof)等。仿射模式可以被称为仿射运动预测模式。mvp模式可以被称为高级运动矢量预测(amvp)模式。在本文档中,一些模式和/或通过一些模式推导的运动信息候选也可以被包括作为另一模式下的运动信息相关候选之一。例如,hmvp候选可以在合并/跳过模式下被添加作为合并候选,或者可以在mvp模式下被添加作为mvp候选。如果在合并模式或跳过模式下hmvp候选用作运动信息候选,则hmvp候选可以被称为hmvp合并候选。
147.指示当前块的帧间预测模式的预测模式信息可以从编码设备用信号发送到解码设备。预测模式信息可以被包括在比特流中并且由解码设备接收。预测模式信息可以包括指示多个候选模式之一的索引信息。可替选地,可以通过标志信息的分层信令来指示帧间预测模式。在这种情况下,预测模式信息可以包括一个或多个标志。例如,可以通过用信号发送跳过标志来指示是否应用跳过模式,并且如果不应用跳过模式,可以通过用信号发送合并标志来指示是否应用合并模式,以及指示应用mvp模式或者可以进一步用信号发送用于附加分类的标志。仿射模式可以作为独立模式被用信号发送或作为关于合并模式或mvp模式的从属模式被用信号发送。例如,仿射模式可以包括仿射合并模式和仿射mvp模式。
148.同时,指示在当前块(当前编译单元)中是否使用上述列表0(l0)预测、列表1(l1)预测或双预测的信息可以在当前块中被用信号发送。该信息可以被称为运动预测方向信息、帧间预测方向信息或帧间预测指示信息,并且能够以例如inter_pred_idc语法元素的形式被配置/编码/用信号发送。即,inter_pred_idc语法元素可以指示前述列表0(l0)预测、列表1(l1)预测或双预测是否被用于当前块(当前编译单元)。在本文档中,为了便于描述,可以将由inter_pred_idc语法元素指示的帧间预测类型(l0预测、l1预测或bi预测)指示为运动预测方向。l0预测可以表示为pred_l0,l1预测表示为pred_l1,双预测表示为pred_bi。例如,可以根据inter_pred_idc语法元素的值来指示以下预测类型。
149.[表1]
[0150][0151]
如上所述,一个图片可以包括一个或多个切片。切片可以具有包括帧内(i)切片、
预测(p)切片和双预测(b)切片的切片类型中的一个。可以基于切片类型信息来指示切片类型。针对i切片中的块,帧间预测可以不用于预测,并且可以仅使用帧内预测。当然,即使在这种情况下,也可以在不进行预测的情况下对原始样本值进行编译并且用信号发送。对于p切片中的块,可以使用帧内预测或帧间预测,并且当使用帧间预测时,可以仅使用单预测。同时,对于b切片中的块,可以使用帧内预测或帧间预测,并且当使用帧间预测时,可以使用直至双预测。
[0152]
l0和l1可以包括在当前图片之前先前编码/解码的参考图片。例如,l0可以包括按poc顺序在当前图片之前和/或之后的参考图片,并且l1可以包括按poc顺序在当前图片之后和/或之前的参考图片。在此情况下,l0可以被指配相对于按poc顺序的先前参考图片比当前参考图片更低的参考图片索引,并且l1可以被指配相对于按poc顺序的后续参考图片比当前图片更低的参考图片索引。在b切片的情况下,可以应用双预测,并且在此情况下,可以应用单向双预测,或可以应用双向双预测。双向双预测可以被称为真双预测。
[0153]
下表示出根据本文档的实施例的用于编译单元的语法。
[0154]
[表2]
[0155]
[0156]
[0157]
[0158]
[0159][0160]
编译设备推导用于当前块的运动信息(s610)。可以基于帧间预测模式来推导运动信息。
[0161]
编码设备可使用当前块的运动信息来执行帧间预测。编码设备可以通过运动估计过程来推导当前块的最优运动信息。例如,编码设备可针对当前块使用原始图片中的原始块在参考图片中的预定搜索范围内以分数像素为单位搜索具有高相关性的相似参考块,从而推导运动信息。可以根据基于相位的样本值之间的差来推导块的相似度。例如,可以基于当前块(或当前块的模板)与参考块(或参考块的模板)之间的sad来计算块的相似度。在这种情况下,可以基于在搜索区域中具有最小sad的参考块来推导运动信息。可以基于帧间预测模式根据各种方法将所推导的运动信息用信号发送给解码设备。
[0162]
编译设备基于当前块的运动信息来执行帧间预测(s620)。编译设备可以基于运动信息来推导当前块的预测样本。包括预测样本的当前块可以被称为预测块。
[0163]
当应用合并模式时,不直接发送当前预测块的运动信息,并且使用邻近预测块的
运动信息来推导当前预测块的运动信息。因此,可以通过发送指示使用合并模式的标记信息和指示使用哪个邻近预测块的合并索引来指示当前预测块的运动信息。合并模式可以称为常规合并模式。
[0164]
编码器必须搜索用于推导当前预测块的运动信息的合并候选块以执行合并模式。例如,可以使用多达五个合并候选块,但是本文档的实施例不限于此。可以在切片报头或拼块组报头中发送合并候选块的最大数量,并且本文档的实施例不限于此。在找到合并候选块之后,编码器可以生成合并候选列表,并且选择它们之中成本最小的合并候选块作为最终合并候选块。
[0165]
合并候选列表可以使用例如五个合并候选块。例如,可以使用四个空间合并候选和一个时间合并候选。在下文中,稍后描述的空间合并候选或空间mvp候选可以被称为smvp,并且稍后描述的时间合并候选或时间mvp候选可以被称为tmvp。
[0166]
图7示意性地示出根据本文档的用于构建合并候选列表的方法。
[0167]
编译设备(编码器/解码器)将通过搜索当前块的空间邻近块所推导的空间合并候选插入到合并候选列表中(s700)。例如,空间邻近块可以包括当前块的左下角邻近块、左邻近块、右上角邻近块、上邻近块和左上角邻近块。然而,这是示例,并且除了上述空间邻近块之外,诸如右邻近块、下邻近块和右下邻近块的附加邻近块可以进一步用作空间邻近块。编译设备可以通过基于优先级搜索空间邻近块来检测可用块,并且可以推导检测到的块的运动信息作为空间合并候选。
[0168]
编译设备将通过搜索当前块的时间邻近块所推导的时间合并候选插入到合并候选列表中(s710)。时间邻近块可以位于作为不同于当前块所在的当前图片的图片的参考图片上。时间邻近块所在的参考图片可以被称为并置图片或col图片。可以按col图片上的用于当前块的并置块的右下角邻近块和右下中心块的顺序搜索时间邻近块。同时,当应用运动数据压缩时,可以将特定运动信息存储为col图片中的每个预定存储单元的代表性运动信息。在这种情况下,不需要将用于所有块的运动信息存储在预定存储单元中,从而获得运动数据压缩效果。在这种情况下,可以例如以16x16个样本单元、8x8个样本单元等先前地确定预定存储单元,或者可以从编码器向解码器用信号发送关于预定存储单元的大小信息。当应用运动数据压缩时,时间邻近块的运动信息可以用时间邻近块所在的预定存储单元的代表性运动信息替换。也就是说,在这种情况下,从实现的角度来看,基于时间邻近块的坐标(左上样本位置)将预定值在算术上向右移位,并且此后,可以基于覆盖在算术上左移位位置的预测块的运动信息来推导时间合并候选。例如,在具有预定存储单元的样本单元是2nx2n的情况下,如果时间邻近块的坐标是(xtnb,ytnb),则位于修改位置((xtnb》》n)《《n),(ytnb》》n)《《n))处的预测块的运动信息可以被用于时间合并候选。具体地,例如,在预定存储单元是16x16样本单元的情况下,如果时间邻近块的坐标是(xtnb,ytnb),则位于修改位置((xtnb》》4)《《4),(ytnb》》4)《《4))处的预测块的运动信息可以被用于时间合并候选。或者,例如,在预定存储单元是8x8样本单元的情况下,如果时间邻近块的坐标是(xtnb,ytnb),则位于修改位置((xtnb》》3)《《3),(ytnb》》3)《《3))处的预测块的运动信息可以被用于时间合并候选。
[0169]
编译设备可以确定当前合并候选的数量是否小于最大合并候选的数量(s720)。最大合并候选的数目可以被预定义或从编码器用信号发送到解码器。例如,编码器可以生成
关于最大合并候选的数目的信息,对该信息进行编码,并且以比特流的形式将编码的信息发送到解码器。如果最大合并候选的数目被填满,则可以不执行后续候选添加过程。
[0170]
作为检查的结果,如果当前合并候选的数量小于最大合并候选的数量,则编译设备将附加合并候选插入到合并候选列表中(s730)。
[0171]
作为检查的结果,如果当前合并候选的数目不小于最大合并候选的数目,则编译设备可以终止合并候选列表的构建(s740)。在这种情况下,编码器可以基于速率失真(rd)成本在配置合并候选列表的合并候选之中选择最佳合并候选并且向解码器用信号发送指示选择的合并候选的选择信息(例如合并索引)。解码器可以基于合并候选列表和选择信息来选择最佳合并候选。
[0172]
选择的合并候选的运动信息可以用作当前块的运动信息,并且可以基于当前块的运动信息来推导当前块的预测样本。编码器可以基于预测样本来推导当前块的残差样本,并且可以将关于残差样本的残差信息用信号发送到解码器。解码器可以基于残差样本和基于残差信息推导的预测样本来生成重构样本,并且如上所述基于其来生成重构图片。
[0173]
当应用跳过模式时,能够以与应用合并模式的情况相同的方式推导当前块的运动信息。然而,当应用跳过模式时,省略对应块的残差信号,因此预测样本可以用作重构样本。
[0174]
当应用mvp模式时,可以使用重构空间邻近块的运动矢量和/或时间邻近块(或col块)的运动矢量来生成运动矢量预测器(mvp)候选列表。即,可以将与重构空间邻近块相对应的运动矢量和/或与时间邻近块相对应的运动矢量用作运动矢量预测器候选。当应用双预测时,可以分别生成并且使用用于推导l0运动信息的mvp候选列表和用于推导l1运动信息的mvp候选列表。上述预测信息(或关于预测的信息)可以包括指示从包括在列表中的运动矢量预测器候选中选择的最佳运动矢量预测器候选的选择信息(例如,mvp标志或mvp索引)。在这种情况下,预测器可以使用选择信息从包括在运动矢量候选列表中的运动矢量预测器候选中选择当前块的运动矢量预测器。编码设备的预测器可以获得当前块的运动矢量和运动矢量预测器之间的运动矢量差(mvd),对其进行编码,并且以比特流形式输出它。即,mvd可以被获得作为通过从当前块的运动矢量减去运动矢量预测器而获得的值。在这种情况下,解码设备的预测器可以获得包括在关于预测的信息中的运动矢量差,并且通过将运动矢量差与运动矢量预测器相加来推导当前块的运动矢量。解码设备的预测器可以从关于预测的信息获得或推导指示参考图片的参考图片索引。
[0175]
图8是图示构建运动矢量预测器候选列表的方法的流程图。
[0176]
参考图8,实施例可以首先搜索用于运动矢量预测的空间候选块,并且将其插入到预测候选列表中(s800)。此后,实施例可以确定空间候选块的数量是否小于2(s810)。例如,在实施例中,当空间候选块的数量小于2时,可以搜索时间候选块并且将其附加地插入到预测候选列表中(s820),并且当时间候选块不可用时,可以使用零运动矢量(s830)。即,零运动矢量可以附加地插入到预测候选列表中。此后,实施例可以结束初步候选列表的构建(s840)。可替选地,根据实施例,当空间候选块的数量不小于两个时,可以终止初步候选列表的构建。这里,初步候选列表可以指示mvp候选列表(s840)。
[0177]
同时,当应用mvp模式时,可以显式地用信号发送参考图片索引。在这种情况下,用于l0预测的参考图片索引refidxl0和用于l1预测的参考图片索引refidxl1可以被分别用信号发送。例如,当应用mvp模式并且应用bi预测时,可以用信号发送关于refidxl0的信息
和关于refidxl1的信息两者。
[0178]
当应用mvp模式时,如上所述,可以向解码设备用信号发送从编码设备推导的关于mvd的信息。关于mvd的信息可以包括例如表示mvd绝对值和符号的x和y分量的信息。在这种情况下,指示mvd绝对值是否大于0且大于1的信息和mvd剩余可以被逐步地用信号发送。例如,仅当指示mvd绝对值是否大于0的标志信息的值为1时,才可以用信号发送指示mvd绝对值是否大于1的信息。
[0179]
例如,关于mvd的信息可以被配置为以下语法,在编码设备中被编码,并且用信号发送给解码设备。
[0180]
[表3]
[0181][0182]
例如,在表3中,abs_mvd_greater0_flag语法元素可以指示关于差mvd是否大于0的信息,并且abs_mvd_greater1_flag语法元素可以指示关于差mvd是否大于1的信息。此外,abs_mvd_minus2语法元素可以指示关于通过对差mvd-2获得的值的信息,并且mvd_sign_flag语法元素可以指示关于差mvd的符号的信息。此外,在表3中,每个语法元素的[0]可以指示关于l0的信息,并且[1]可以指示关于l1的信息。
[0183]
例如,mvd[compidx]可以基于abs_mvd_greater0_flag[compidx]*(abs_mvd_minus2[compidx] 2)*(1-2*mvd_sign_flag[compidx])来推导。这里,compidx(或cpidx)表示每个分量的索引,并且可以具有值0或1。compidx 0可以指示x分量,compidx 1可以指示y分量。然而,这仅仅是示例,并且可以通过使用除x和y坐标系之外的坐标系来表达每个分量的值。
[0184]
同时,用于l0预测的mvd(mvdl0)和用于l1预测的mvd(mvdl1)可以被单独地用信号发送,并且关于mvd的信息可以包括关于mvdl0的信息和/或关于mvdl1的信息。例如,当mvp模式应用于当前块并且应用bi预测时,可以用信号发送关于mvdl0的信息和关于mvdl1的信息这两者。
[0185]
图9是用于描述对称运动矢量差(smvd)的图。
[0186]
当应用bi预测时,考虑到编译效率,可以使用对称mvd。在这种情况下,可以省略一
些运动信息的信令。例如,当对称mvd应用于当前块时,可以不将关于refidxl0的信息、关于refidxl1的信息和关于mvdl1的信息从编码设备用信号发送到解码设备,并且可以在内部推导。例如,当mvp模式和bi预测被应用于当前块时,指示是否应用对称mvd的标志信息(例如,对称mvd标志信息或sym_mvd_flag语法元素)可以被用信号发送,并且当标志信息的值为1时,解码设备可以确定对称mvd被应用于当前块。
[0187]
当应用对称mvd模式时(即,对称mvd标志信息的值为1),可以显式地用信号发送关于mvp_l0_flag、mvp_l1_flag和mvdl0的信息,并且如上所述,可以省略并在内部推导关于refidxl0的信息、关于refidxl1的信息和关于mvdl1的信息的信令。例如,可以推导refidxl0作为索引,该索引指示在参考图片列表0(其可以称为列表0或l0)中按poc顺序最接近当前图片的先前参考图片。可以推导refidxl1作为索引,该索引指示在参考图片列表1(其可以称为列表1或l1)中按poc顺序中最接近当前图片的下一个参考图片。或者,例如,可以将refidxl0和refidxl1这两者都推导为0。或者,例如,可以将refidxl0和refidxl1推导为与当前图片的关系具有相同poc差的最小索引。具体地,例如,在[当前图片的poc]-[由refidxl0指示的第一参考图片的poc]为第一poc差并且[当前图片的poc]-[由refidxl1指示的第二参考图片的poc]为第二poc差时,只有当第一poc差和第二poc差相同时,才可以推导指示第一参考图片的refidxl0的值为当前块的refidxl0的值,并且推导指示第二参考图片的refidxl1的值为当前块的refidxl1的值。另外,例如,当存在第一poc差和第二poc差相同的多个集合时,可以将具有最小差的集合的refidxl0和refidxl1推导为当前块的refidxl0和refidxl1。
[0188]
参考图9,示出了参考图片列表0、参考图片列表1以及mvdl0和mvdl1。这里,mvdl1与mvdl0对称。
[0189]
mvdl1可以推导为负(-)mvdl0。例如,用于当前块的最终(改进的或修改的)运动信息(运动矢量;mv)可以基于以下等式来推导。
[0190]
[等式1]
[0191][0192]
在等式1中,mvb0和mvy0可以表示l0运动信息或用于l0预测的运动矢量的x分量和y分量,并且mvx1和mvy1可以表示l1运动信息或用于l1预测的运动矢量的x分量和y分量。此外,mvpx0和mvpy0可以表示用于l0预测的运动矢量预测器的x分量和y分量,并且mvpx1和mvpy1可以表示用于l1预测的运动矢量预测器的x分量和y分量。此外,mvdx0和mvdy0可以表示用于l0预测的运动矢量差的x分量和y分量。
[0193]
同时,mmvd模式是将运动矢量差(mvd)应用于合并模式的方法,并且可以隐含地推导直接用于生成当前块(即,当前cu)的预测样本的运动信息。例如,可以用信号发送指示是否将mmvd用于当前块(即,当前cu)的mmvd标志(即,mmvd_flag),并且可以基于该mmvd标志来执行mmvd。当mmvd应用于当前块时(即,当mmvd_flag为1时),可以用信号发送关于mmvd的附加信息。
[0194]
这里,关于mmvd的附加信息包括指示合并候选列表中的第一候选或第二候选是否与mvd一起使用的合并候选标志(即,mmvd_cand_flag),以及用于指示运动幅度的距离索引(即,mmvd_distance_idx)和用于指示运动方向的方向索引(即,mmvd_direction_idx)。
[0195]
在mmvd模式中,可以使用位于合并候选列表中的候选之中的第一条目和第二条目中的两个候选(即,第一候选或第二候选),并且可以使用两个候选(即,第一候选或第二候选)。它们中的一个可以用作基本mv。例如,可以用信号发送合并候选标志(即,mmvd_cand_flag)以指示合并候选列表中的两个候选(即,第一候选或第二候选)中的任一个。
[0196]
此外,距离索引(即,mmvd_distance_idx)指定运动幅度信息并且指示距起始点的预定义偏移。偏移可以添加到起始mv的水平分量或垂直分量。下表指定了距离索引和预定义偏移的关系。
[0197]
[表4]
[0198][0199]
参考上面的表4,根据距离索引(例如,mmvd_distance_idx)的值来确定mvd的距离(例如,mmvddistance),并且可以通过使用基于tile_group_fpel_mmvd_enabled_flag的值的整数样本精度或分数样本精度来推导mvd的距离(例如,mmvddistance)。例如,当tile_group_fpel_mmvd_enabled_flag等于1时,它指示通过使用当前拼块组(或图片报头)中的整数样本精度来推导mvd的距离,并且当tile_group_fpel_mmvd_enabled_flag等于0时,它指示通过使用拼块组(或图片报头)中的分数样本精度来推导mvd的距离。在表1中,用于拼块组的信息(标志)可以用图片报头的信息替换,例如,tile_group_fpel_mmvd_enabled_flag可以用ph_fpel_mmvd_enabled_flag(或ph_mmvd_fullpel_only_flag)替换。
[0200]
另外,方向索引(例如,mmvd_direction_idx)指示mvd相对于起始点的方向,并且可以指示如下表5所示的四个方向。在这种情况下,mvd的方向可以指示mvd的符号。方向索引和mvd符号之间的关系可以表达为下表。
[0201]
[表5]
[0202]
mmvd_direction_idx[x0][y0]mmvdsign[x0][y0][0]mmvdsign[x0][y0][1]0 101-1020 130-1
[0203]
参考表5,根据方向索引(例如,mmvd_direction_idx)的值来确定mvd的符号(例如,mmvdsign),并且可以针对l0参考图片和l1参考图片推导mvd的符号(例如,mmvdsign)。
[0204]
基于上述距离索引(例如,mmvd_distance_idx)和方向索引(例如,mmvd_direction_idx),可以使用以下等式来计算mvd的偏移。
[0205]
[等式2]
[0206]
mmvdoffset[x0][y0][0]=(mmvddistance[x0][y0]<<2)*mmvdsign[x0][y0][0]
[0207]
[等式3]
[0208]
mmvdoffset[x0][y0][1]=(mmvddistance[x0][y0]<<2)*mmvdsign[x0][y0][1]
[0209]
在等式2和3中,可以基于表4和/或表5推导mmvd距离(mmvddistance[x0][y0])和mmvd符号(mmvdsign[x0][y0][0],mmvdsign[x0][y0][1])。总之,在mmvd模式中,从基于邻近块推导的合并候选列表中的合并候选之中选择由合并候选标志(例如,mmvd_cand_flag)指示的合并候选,并且将选择的合并候选用作基本候选(例如,mvp)。另外,可以通过基于基本候选将使用距离索引(例如,mmvd_distance_idx)和方向索引(例如,mmvd_direction_idx)推导的mvd相加来推导当前块的运动信息(即,运动矢量)。
[0210]
可以基于根据预测模式推导的运动信息来推导用于当前块的预测块。预测块可以包括当前块的预测样本(预测样本阵列)。在当前块的运动矢量指示分数样本单元时,可以执行插值过程,通过该插值过程可以基于参考图片内的以分数样本为单位的参考样本来推导当前块的预测样本。当应用双预测时,通过基于l0预测(即,使用参考图片列表l0中的参考图片和mvl0的预测)推导的预测样本和基于l1预测(即,使用参考图片列表l1中的参考图片和mvl1的预测)推导的预测样本的加权或加权平均(根据相位)推导的预测样本可以被用作当前块的预测样本。当应用双预测时,如果用于l0预测的参考图片和用于l1预测的参考图片相对于当前图片位于不同时间方向(即,双预测和双向预测),则可以将其称为真双预测。
[0211]
如上所述,可以基于推导的预测样本生成重构样本和重构图片,然后可以执行诸如环内滤波的过程。
[0212]
如上所述,根据本文档,当双预测应用于当前块时,可以基于加权平均来推导预测样本。通常,可以通过l0预测信号(l0预测样本)和l1预测信号(l1预测样本)的简单平均来推导双预测信号(即,双预测样本)。即,双预测样本被推导为基于l0参考图片和mvl0的l0预测样本和基于l1参考图片和mvl1的l1预测样本的平均。然而,根据该文档,当应用双预测时,可以如下通过l0预测信号和l1预测信号的加权平均来推导双预测信号(双预测样本)。
[0213]
在上述mmvd相关实施例中,可以提出在mmvd的mvd推导过程中考虑长期参考图片的方法,从而在各种应用中维持和增加压缩效率。此外,除了在merge中使用的mmvd技术之外,本文档的实施例中所提出的方法可以同样地应用于smvd,smvd是在帧间模式(mvp模式)中使用的对称mvd技术。
[0214]
图10是用于描述在帧间预测中推导运动矢量的方法的图。
[0215]
在本文档的实施例中,在时间运动候选(时间运动候选、时间合并候选或时间mvp候选)的运动矢量缩放过程中使用考虑长期参考图片的mv推导方法。时间运动候选可以对应于mvcol(mvlxcol)。时间运动候选可以称为tmvp。
[0216]
下表描述了长期参考图片的定义。
[0217]
[表6]
[0218][0219]
参考上述图6,如果longtermrefpic(apic,apb,refidx,lx)等于1(真),则可以将相应参考图片标记为用于长期参考。例如,未标记为用于长期参考的参考图片可以是标记为用于短期参考的参考图片。在另一示例中,未标记为用于长期参考且未标记为不使用的参考图片可以是标记为用于短期参考的参考图片。在下文中,标记为用于长期参考的参考图片可以称为长期参考图片,标记为用于短期参考的参考图片可以称为短期参考图片。
[0220]
下表描述了tmvp(mvlxcol)的推导。
[0221]
[表7]
[0222]
[0223][0224]
参考图10和表7,在当前图片所指向的参考图片的类型(例如,指示是长期参考图片(ltrp)还是短期参考图片(strp))不等于由并置图片所指向的并置参考图片的类型时,不使用时间运动矢量mvlxcol。也就是说,当它们全部都是长期参考图片或短期参考图片时,推导colmv,否则,不推导colmv。另外,在它们全部都是长期参考图片的情况下,并且在当前图片与当前图片的参考图片之间的poc差与并置图片与并置图片的参考图片之间的poc差相同的情况下,可以按原样使用并置运动矢量而不缩放。如果是短期参考图片并且poc差不同,则在缩放后使用并置块的运动矢量。
[0225]
在本文档的实施例中,在merge/skip(合并/跳过)模式中使用的mmvd用信号发送用于一个编译块的基本运动矢量索引(基本mv索引)、距离索引和方向索引作为用于推导mvd信息的信息。在单向预测的情况下,从运动信息推导mvd,并且在双向预测的情况下,使用镜像和缩放方法来生成对称mvd信息。
[0226]
在双向预测的情况下,用于l0或l1的mvd信息被缩放以生成l1或l0的mvd。然而,当参考长期参考图片时,它需要在mvd推导过程中进行修改。
[0227]
图11图示根据本文档的实施例的mmvd的mvd推导过程。图11所示的方法可以用于应用双向预测的块。
[0228]
参考图11,当到l0参考图片的距离和到l1参考图片的距离相同时,推导的mmvdoffset可以原样用作mvd,并且poc差(l0参考图片和当前图片之间的poc差以及l1参考图片和当前图片之间的poc差)不同,可以通过缩放或简单镜像(即,-1*mmvdoffset)根据poc差以及它是长期还是短期参考图片来推导mvd。
[0229]
在一个示例中,一种针对应用了双预测的块,使用mmvd来推导对称mvd的方法不适合于使用长期参考图片的块。难以预期性能改善。因此,在下面的附图和实施例中,引入了其中当l0和l1的参考图片类型不同时不应用mmvd的示例。
[0230]
图12图示根据本公开的另一个实施例的mmvd的mvd推导过程。如图13中所示的方法可以用于应用双向预测的块。
[0231]
参考图12,推导mvd的方法可以根据由当前图片(或当前切片或当前块)参考的参考图片是长期参考图片(ltrp)还是短期参考图片(strp)而变化。在一个示例中,当应用根据图12的实施例的方法时,根据本实施例的部分标准规范可以如下表所示进行描述。
[0232]
[表8]
[0233]
[0234]
[0235]
[0236][0237]
图13图示根据本文档的另一个实施例的mmvd的mvd推导过程。如图13中所示的方法可以用于应用双向预测的块。
[0238]
参考图13,根据由当前图片(或当前切片、当前块)参考的参考图片是长期参考图片(ltrp)还是短期参考图片(strp),用于推导mvd的方法可以是不同的。在一个示例中,当应用根据图13的实施例的方法时,可以如下表中所示描述根据本实施例的标准文档的一部分。
[0239]
[表9]
[0240]
[0241]
[0242][0243][0244]
总之,已经描述了当每个方向中的参考图片类型不同时不推导mvd的mmvd的mvd推
导过程。
[0245]
在根据本文档的一个实施例中,在参考长期参考图片的所有情况下可能不推导mvd。也就是说,当至少一个l0和l1参考图片是长期参考图片时,mvd被设置为0,并且仅当包括短期参考图片时才能够推导mvd。在下图和表中详细描述。
[0246]
图14图示根据本文档的实施例的mmvd的mvd推导过程。在图14中示出的方法可以用于应用双预测的块。
[0247]
参考图14,基于最高优先级条件(refpicl0!=ltrp&&refpicl1!=strp),在当前图片(或当前切片、当前块)仅参考短期参考图片时,可以推导用于mmvd的mvd。在一个示例中,当应用根据图12的实施例的方法时,可以如下表中所示描述根据本实施例的标准文档的一部分。
[0248]
[表10]
[0249]
[0250]
[0251][0252]
在根据本文档的实施例中,当每个方向中的参考图片类型不同时,当获得短期参考图片时推导mvd,并且当包括长期参考图片时推导mvd为0。在下图和表中详细描述。
[0253]
图15示出根据本文档的实施例的mmvd的mvd推导过程。在图15中示出的方法可以用于应用双向预测的块。
[0254]
参考图15,当每个方向中的参考图片类型不同时,当参考接近当前图片的参考图片(短期参考图片)时应用mmvdoffset,并且当参考远离当前图片的参考图片(长期参考图片)时mvd具有值0。在这种情况下,可以将接近当前图片的图片视为具有短期参考图片,但是当接近图片是长期参考图片时,mmvdoffset可以被应用于指示短期参考图片的列表的运动矢量。
[0255]
[表11]
[0256][0257]
例如,包括在表11中的四个段落可以顺序地替换图15中包括的流程图的最下方的块(内容)。
[0258]
在一个示例中,当应用根据图15的实施例的方法时,可以如下表中描述根据本实施例的标准文档的一部分。
[0259]
[表12]
[0260]
[0261]
[0262][0263]
下表示出了本文档中包括的示例之间的比较表。
[0264]
[表13]
[0265][0266]
参考表13,示出了在考虑根据图11至图15的实施例中描述的mmvd的mvd推导的参考图片类型应用偏移的方法之间的比较。在表13中,实施例a可以涉及现有mmvd,实施例b可以示出根据图11至图13的实施例,实施例c可以示出根据图14的实施例,以及实施例d可以示出根据图15的实施例。
[0267]
即,在根据图11、图12和图13的实施例中,已经描述了仅当两个方向的参考图片类型相同时才推导mvd的方法,并且在根据图14的实施例中,已经描述了仅当两个方向均为短期参考图片时才推导mvd的方法。在根据图14的实施例的情况下,在用于单向预测的长期参考图片的情况下,mvd可以被设置为0。另外,在根据图15的实施例中,已经描述了当两个方向中的参考图片类型不同时仅在一个方向中推导mvd的方法。实施例之间的差异表示本文档中描述的技术的各种特征,并且本领域的普通技术人员可以理解,根据本文档的实施例将实现的效果可以基于这些特征来实现。
[0268]
在根据本文档的实施例中,当参考图片类型是长期参考图片时,执行单独处理。当包括长期参考图片时,基于poc差(pocdiff)的缩放或镜像不影响性能改进,因此在具有短期参考图片的方向中将mmvdoffset值指配给mvd,并且在具有长期参考图片的方向中将值0指配给mvd。在一个示例中,当应用该实施例时,可以如下表中所示描述符合本实施例的标准文档的一部分。
[0269]
[表14]
[0270]
[0271]
[0272]
[0273][0274]
在另一个示例中,表14的一部分可以用下表替换。参考表15,可以基于除了pocdiff之外的参考图片类型来应用偏移。
[0275]
[表15]
[0276][0277]
在另一个示例中,表14的一部分可以用下表替换。参考表16,可以始终将mmvdoffset设置为l0,并且将-mmvdoffset设置为l1,而不考虑参考图片类型。
[0278]
[表16]
[0279][0280]
根据本文档的实施例,可以与在上述merge模式中使用的mmvd类似地执行帧间模式中的smvd。在双向预测的情况下,从编码设备向解码设备用信号发送是否推导对称mvd,并且当相关标志(例如sym_mvd_flag)为真(或值为1)时,通过镜像第一方向mvd(例如,mvdl0)来推导第二方向mvd(例如,mvdl1)。在这种情况下,可以不执行第一方向mvd的缩放。
[0281]
下表示出了根据本文档的实施例的用于编译单元的语法。
[0282]
[表17]
[0283][0284]
[表18]
[0285][0286]
参照表17和18,当inter_pred_idc==pred_bi并且l0和l1的参考图片可用(例
如,refidxsyml0>-1&&refidxsyml1>-1)时,用信号发送sym_mvd_flag。
[0287]
下表示出根据示例的mmvd参考索引的解码过程。
[0288]
[表19]
[0289]
[0290][0291]
参考表19,描述了用于推导l0和l1的参考图片的可用性的过程。也就是说,如果在l0参考图片之中存在沿前向的参考图片,则将最接近当前图片的参考图片的索引设置为refidxsyml0,并且将对应的值设置为l0的参考索引。此外,当在l1参考图片之中存在沿后向的参考图片时,将最接近当前图片的参考图片的索引设置为refidxsyml1,并且将对应的值设置为l1的参考索引。
[0292]
下面的表20示出了根据另一示例的mmvd参考索引的解码过程。
[0293]
[表20]
[0294]
[0295][0296]
参考表20,如在图11、图12和图13所描述的实施例中,当l0或l1参考图片的类型不同时,即如果l0和l1的参考图片类型在用于smvd的参考索引推导之后不同,则在使用长期参考图片和短期参考图片的情况下不使用smvd以便阻止smvd(参见表20的最下段)。
[0297]
在本文档的实施例中,能够以类似于合并模式中使用的mmvd的帧间模式应用smvd。当如在图14中描述的实施例中那样使用长期参考图片时,可以从用于smvd的参考索引推导过程中排除长期参考图片,如下表所示,以便阻止smvd。
[0298]
[表21]
[0299]
[0300]
[0301][0302]
根据本实施例的另一示例的下表示出了当在用于smvd的参考图片索引推导之后使用长期参考图片时不应用smvd的处理示例。
[0303]
[表22]
[0304]
[0305][0306]
在本文档的一个实施例中,在tmvp的colmv推导过程中,在当前图片的参考图片类型和并置图片的参考图片类型不同时,运动矢量mv被设置为0,但mmvd和smvd的情况下的推导方法与tmvp不同,并且他们需要被统一。
[0307]
即使在当前图片的参考图片类型是长期参考图片并且并置图片的参考图片类型是长期参考图片时,运动矢量也按原样使用并置运动矢量的值,但是在mmvd和smvd中可以将mv设置为0。在这种情况下,tmvp也将mv设置为0,而没有附加推导。
[0308]
此外,即使参考图片类型不同,也可以存在与当前图片具有近距离的长期参考图片。因此,代替将mv设置为0,colmv可以用作mv而不缩放。
[0309]
创建以下附图以解释本说明书的具体示例。由于在附图中描述的特定装置的名称或特定信号/消息/字段的名称通过示例的方式呈现,因此本说明书的技术特征不限于以下附图中使用的特定名称。
[0310]
图16和17示出了根据本公开的实施例的视频/图像编码方法和相关组件的一个示例。图2的编码设备可以执行图16的方法。具体地,例如,编码设备的预测器220可以执行图16的s1600至图s1640的步骤,并且编码设备的残差处理器230可以执行s1650步骤。编码设备的熵编码器240可以执行s1660步骤。图16的方法可以包括上述本公开的实施例。
[0311]
参照图16,编码设备推导当前图片内的当前块的帧间预测模式s1600。这里,帧间预测模式可以包括合并模式、amvp模式(使用运动矢量预测器候选的模式)、mmvd和smvd。
[0312]
编码设备推导用于帧间预测模式的参考图片。在一个示例中,参考图片列表0(或l0,参考图片列表l0)或者参考图片列表1(或l1,参考图片列表l1)可以包括参考图片。例如,编码设备可以为当前图片中包括的每个切片配置参考图片列表。
[0313]
编码设备基于帧间预测模式推导用于当前块的预测的运动信息s1620。运动信息可以包括参考图片索引和运动矢量。例如,编码设备可以推导用于smvd的参考索引。用于smvd的参考索引可以指示smvd应用的参考图片。用于smvd的参考索引可以包括参考索引l0(refidxsuml0)和参考索引l1(refidxsuml1)。
[0314]
编码设备可以构建运动矢量预测器候选列表并基于该列表推导运动矢量预测器。编码设备可以基于对称mvd和运动矢量预测器推导运动矢量。
[0315]
编码设备基于运动信息来生成预测样本s1630。编码设备可以基于包括在运动信息中的运动矢量和参考图片索引来生成预测样本。例如,可以基于由参考图片索引指示的参考图片内的块(或样本)之中的由运动矢量指示的块(或样本)来生成预测样本。
[0316]
编码设备生成包括帧间预测模式的预测相关信息s1640。预测相关信息可以包括关于mmvd的信息和关于smvd的信息。
[0317]
编码设备基于预测样本来推导残差信息s1650。具体地,编码设备可以基于预测样本和原始样本来推导残差样本。编码设备可以基于残差样本来推导残差信息。可以执行上述变换和量化过程以推导残差信息。
[0318]
编码设备对包括预测相关信息和残差信息的图像/视频信息进行编码s1660。编码的图像/视频信息能够以比特流的形式输出。比特流可以通过网络或(数字)存储介质发送到解码设备。
[0319]
根据本公开的实施例,图像/视频信息可以包括各种类型的信息。例如,图像/视频信息可以包括在上述表1至23中的至少一个中公开的信息。
[0320]
在一个实施例中,预测相关信息可以包括指示双预测是否被应用于当前图片内的当前块的帧间预测类型信息。例如,基于帧间预测类型信息,预测相关信息可以包括指示是否应用smvd的smvd标志信息。此外,参考图片可以包括短期参考图片。基于smvd标志信息,指示短期参考图片的参考图片索引之中的至少一个参考图片索引可以被用于推导运动信息。
[0321]
在一个实施例中,用于推导运动信息的参考图片索引可以基于每个短期参考图片和当前图片之间的poc差被推导。这里,根据一个实施例,当前图片和当前图片的前一参考图片之间的poc差可以大于0。在另一示例中,当前图片和当前图片的下一参考图片之间的poc差可以小于0。但是,上面的描述仅是示例。
[0322]
在一个实施例中,编码设备可以配置用于l0预测的参考图片列表l0(或参考图片列表0)和用于l1预测的参考图片列表l1(或参考图片列表0)。作为一个示例,短期参考图片可以包括参考图片列表l0中包括的第一参考图片和参考图片列表l1中包括的第二参考图片。poc差可以包括第一参考图片和当前图片之间的第一poc差以及第二参考图片和当前图片之间的第二poc差。可以基于第一poc差推导指向第一参考图片的第一参考图片索引,并且可以基于第二poc差推导指向第二参考图片的第二参考图片索引。第一和第二参考图片索引可以用作用于推导运动信息的至少一个参考图片索引。
[0323]
在一个实施例中,第一poc差可以与第二poc差相同。
[0324]
在一个实施例中,编码设备可以配置用于l0预测的参考图片列表
[0325]
l0。短期参考图片可以包括参考图片列表l0中包括的第三和第四参考图
[0326]
片。作为一个示例,poc差可以包括第三参考图片和当前图片之间的第三
[0327]
poc差以及第四参考图片和当前图片之间的第四poc差。此外,基于第
[0328]
三和第四poc差之间的比较,指示第三参考图片的第三参考图片索引可以用作用于推导运动信息的至少一个参考图片索引。
[0329]
在一个实施例中,当第三poc差大于第四poc差时,指向第三参考图片的第三参考图片索引可以被用于推导运动信息。
[0330]
在一个实施例中,图像信息可以包括关于运动矢量差(mvd)的信息。运动信息可以包括运动矢量。可以基于关于mvd的信息推导用于l0预测的第一mvd。可以基于第一mvd推导用于l1预测的第二mvd。
[0331]
在一个实施例中,第二mvd的大小可以与第一mvd的大小相同。第二mvd的符号可以与第一mvd的符号相反。
[0332]
图18和19图示根据本公开的实施例的图像/视频解码方法和相关组件的一个示例。图3的解码设备可以执行图18的方法。具体地,例如,解码设备的熵解码器310可以执行图18的s1800步骤,并且解码设备的预测器330可以执行s1810至s1830步骤,解码设备的残差处理器320可以执行s1840步骤,并且解码设备的加法器340可以执行s1850步骤。图18的方法可以包括上述本公开的实施例。
[0333]
参照图18,解码设备接收/获得图像/视频信息s1800。解码设备可以通过比特流接收/获得图像/视频信息。图像/视频信息可以包括预测相关信息(包括预测模式信息)和残差信息。预测相关信息可以包括关于mmvd的信息和关于smvd的信息。此外,根据本公开的实施例,图像/视频信息可以包括各种类型的信息。例如,图像/视频信息可以包括参照图1至图15描述的信息和/或参照上述表1至23中的至少一个中公开的信息。
[0334]
解码设备基于预测相关信息来推导当前块的帧间预测模式s1810。这里,帧间预测模式可以包括合并模式、amvp模式(使用运动矢量预测器候选的模式)、mmvd和smvd。
[0335]
解码设备基于帧间预测模式推导用于当前块的预测的运动信息s1820。运动信息可以包括参考图片索引和运动矢量。例如,解码设备可以推导用于smvd的参考索引。用于smvd的参考索引可以指示smvd应用的参考图片。用于smvd的参考索引可以包括参考索引l0(refidxsuml0)和参考索引l1(refidxsuml1)。
[0336]
解码设备可以构建运动矢量预测器候选列表并且基于该列表推导运动矢量预测器。解码设备可以基于对称mvd和运动矢量预测器推导运动矢量。
[0337]
解码设备基于运动信息来生成预测样本s1830。解码设备可以基于包括在运动信息中的运动矢量和参考图片索引来生成预测样本。例如,可以基于由参考图片索引指示的参考图片内的块(或样本)之中的由运动矢量指示的块(或样本)来生成预测样本。
[0338]
解码设备可以基于残差信息生成残差样本s1840。具体地,解码设备可以基于残差信息推导量化的变换系数。量化的变换系数可以具有基于系数扫描顺序的一维矢量形式。解码设备可以基于用于量化的变换系数的逆量化过程推导变换系数。解码设备可以基于用于变换系数的逆变换过程来推导残差样本。
[0339]
解码设备可以基于预测样本和残差样本来生成当前图片的重构样本s1850。解码
设备可以进一步执行滤波程序以生成(修改的)重构的样本。
[0340]
在一个实施例中,预测相关信息可以包括指示双预测是否被应用于当前图片内的当前块的帧间预测类型信息。例如,基于帧间预测类型信息,预测相关信息可以包括指示是否应用smvd的smvd标志信息。此外,参考图片可以包括短期参考图片。基于smvd标志信息,指示短期参考图片的参考图片索引之中的至少一个参考图片索引可以被用于推导运动信息。
[0341]
在一个实施例中,用于推导运动信息的参考图片索引可以基于短期参考图片中的每个和当前图片之间的poc差被推导。这里,根据一个实施例,当前图片和当前图片的前一参考图片之间的poc差可以大于0。在另一示例中,当前图片和当前图片的下一参考图片之间的poc差可以小于0。但是,上面的描述仅是示例。
[0342]
在一个实施例中,解码设备可以配置用于l0预测的参考图片列表l0(或参考图片列表0)和用于l1预测的参考图片列表l1(或参考图片列表0)。作为一个示例,短期参考图片可以包括参考图片列表l0中包括的第一参考图片和参考图片列表l1中包括的第二参考图片。poc差可以包括第一参考图片和当前图片之间的第一poc差以及第二参考图片和当前图片之间的第二poc差。可以基于第一poc差推导指向第一参考图片的第一参考图片索引,并且可以基于第二poc差推导指向第二参考图片的第二参考图片索引。第一和第二参考图片索引可以用作用于推导运动信息的至少一个参考图片索引。
[0343]
在一个实施例中,第一poc差可以与第二poc差相同。
[0344]
在一个实施例中,解码设备可以配置用于l0预测的参考图片列表
[0345]
l0。短期参考图片可以包括参考图片列表l0中包括的第三和第四参考图
[0346]
片。作为一个示例,poc差可以包括第三参考图片和当前图片之间的第三
[0347]
poc差以及第四参考图片和当前图片之间的第四poc差。此外,基于第
[0348]
三和第四poc差之间的比较,指示第三参考图片的第三参考图片索引可以用作用于推导运动信息的至少一个参考图片索引。
[0349]
在一个实施例中,当第三poc差大于第四poc差时,指向第三参考图片的第三参考图片索引可以被用于推导运动信息。
[0350]
在一个实施例中,图像信息可以包括关于mvd的信息。运动信息可以包括运动矢量。例如,可以基于关于mvd的信息推导用于l0预测的第一mvd,并且可以基于第一mvd推导用于l1预测的第二mvd。因此,可以基于第一和第二mvd推导运动矢量。
[0351]
在一个实施例中,第二mvd的大小可以与第一mvd的大小相同。第二mvd的符号可以与第一mvd的符号相反。
[0352]
在上述实施例中,基于流程图作为一系列步骤或方框来描述方法,但是对应实施例不限于该步骤顺序,特定步骤可按照与上述顺序不同的顺序发生或者与不同于上述的步骤同时发生。另外,本领域技术人员将理解,流程图中所示的步骤不是排他性的,可以包括其它步骤或者可删除流程图中的一个或更多个步骤,而不影响本文档的实施例的范围。
[0353]
根据本文档的实施例的上述方法可按软件的形式实现,并且根据本文档的编码设备和/或解码设备可以包括在用于执行例如tv、计算机、智能电话、机顶盒、显示装置等的图像处理的设备中。
[0354]
当本文档中的实施例以软件实现时,上述方法可以被实现为用于执行上述功能的
模块(进程、函数等)。该模块可以被存储在存储器中并由处理器执行。存储器可位于处理器内部或外部,并且可以通过各种熟知手段与处理器联接。处理器可以包括专用集成电路(asic)、其它芯片组、逻辑电路和/或数据处理装置。存储器可以包括只读存储器(rom)、随机存取存储器(ram)、闪存、存储卡、存储介质和/或其它存储装置。即,本文档中描述的实施例可在处理器、微处理器、控制器或芯片上实现和执行。例如,各个附图中所示的功能单元可在计算机、处理器、微处理器、控制器或芯片上实现和执行。在这种情况下,用于实现的信息(例如,关于指令的信息)或算法可以被存储在数字存储介质中。
[0355]
另外,应用了本文档的实施例的解码设备和编码设备可以被包括在多媒体广播发送和接收装置、移动通信终端、家庭影院视频装置、数字影院视频装置、监视相机、视频聊天装置、实时通信装置(例如,视频通信)、移动流装置、存储介质、摄像机、视频点播(vod)服务提供器、过顶(ott)视频装置、互联网流服务提供器、3d视频装置、虚拟现实装置、增强现实(ar)装置、视频电话视频装置、运输工具终端(例如,车辆(包括自主车辆)终端、飞机终端、船舶终端等)、医疗视频装置等中,并且可以用于处理视频信号或数据信号。例如,顶置视频(ott)装置可以包括游戏机、蓝光播放器、互联网访问tv、家庭影院系统、智能电话、平板pc、数字视频记录仪(dvr)等。
[0356]
另外,应用了本文档的实施例的处理方法可按照由计算机执行的程序的形式生成,并且可以被存储在计算机可读记录介质中。具有根据本文档的实施例的数据结构的多媒体数据也可以被存储在计算机可读记录介质中。计算机可读记录介质包括存储计算机可读数据的所有类型的存储装置和分布式存储装置。例如,计算机可读记录介质可以包括蓝光盘(bd)、通用串行总线(usb)、rom、prom、eprom、eeprom、ram、cd-rom、磁带、软盘和光学数据存储装置。另外,计算机可读记录介质还包括以载波的形式实现的介质(例如,经由互联网的传输)。另外,通过该编码方法生成的比特流可以被存储在计算机可读记录介质中或通过有线和无线通信网络发送。
[0357]
另外,本文档的实施例可以通过程序代码被实现为计算机程序产品,并且可以通过本文档的实施例在计算机上执行程序代码。程序代码可以被存储在可以由计算机读取的载体上。
[0358]
图20示出本文档中公开的实施例可以应用于的内容流系统的示例。
[0359]
参考图20,本文档的实施例应用于的内容流系统可以主要包括编码服务器、流服务器、web服务器、媒体存储装置、用户装置和多媒体输入装置。
[0360]
编码服务器将从多媒体输入装置(例如,智能电话、相机或摄像机)输入的内容压缩为数字数据来生成比特流并将所生成的比特流发送到流服务器。作为另一示例,当多媒体输入装置(例如,智能电话、相机或摄像机)直接生成比特流时,可以省略编码服务器。
[0361]
可以通过应用了本公开的编码方法或生成比特流的方法来生成比特流,并且在发送或接收比特流的同时,流服务器可暂时存储比特流。
[0362]
流服务器通过web服务器基于用户请求将多媒体数据发送到用户装置,并且web服务器起到告知用户哪些服务可用的作用。如果用户向web服务器请求期望的服务,则web服务器将请求发送到流服务器,并且流服务器将多媒体数据发送到用户。此时,内容流系统可以包括单独的控制服务器,并且在这种情况下,控制服务器起到控制内容流系统内的装置之间的命令/响应的作用。
[0363]
流服务器可从媒体存储装置和/或编码服务器接收内容。例如,如果从编码服务器接收内容,则内容可实时地接收。在这种情况下,为了提供平滑的流服务,流服务器可以将比特流存储达预定时间段。
[0364]
用户装置的示例可以包括移动电话、智能电话、膝上型计算机、数字广播终端、个人数字助理(pda)、便携式多媒体播放器(pmp)、导航终端、石板pc、平板pc、超级本、可穿戴装置(例如,智能手表或智能眼镜)、数字tv、台式计算机和数字标牌。
[0365]
内容流系统内的各个单独的服务器可作为分布式服务器操作,并且在这种情况下,可按分布式方式处理由各个服务器接收的数据。
[0366]
这里描述的权利要求能够以各种方式组合。例如,可以将本文档的方法权利要求的技术特征组合并实现为设备,并且可以将本文档的设备权利要求的技术特征组合并实现为方法。另外,本文档的方法权利要求的技术特征和设备权利要求的技术特征可以被组合以实现为设备,并且本文档的方法权利要求的技术特征和设备权利要求的技术特征可以被组合并实现为方法。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献