首页 / 专利库 / 视听技术与设备 / 视频编码层 / 用于预测用于层间视频解码的视差矢量的方法以及编码方法和设备

用于预测用于层间视频解码的视差矢量的方法以及编码方法和设备

阅读:128发布:2020-06-02

专利汇可以提供用于预测用于层间视频解码的视差矢量的方法以及编码方法和设备专利检索,专利查询,专利分析的服务。并且根据 实施例 的一种层间视频解码方法包括:基于从比特流获取的编码信息来重构第一层图像和第一层 深度图 ;确定是否可使用第二层当前 块 的外围块来预测 视差 矢量;当不使用所述外围块来预测视差矢量时,使用默认视差矢量和第一层深度图来确定第二层当前块的视差矢量。,下面是用于预测用于层间视频解码的视差矢量的方法以及编码方法和设备专利的具体信息内容。

1.一种层间视频解码方法,包括:
基于从比特流获取的编码信息来重构第一层图像和第一层深度图
确定视差矢量是否是使用第二层当前的邻近块可预测的;
当不使用所述邻近块来预测视差矢量时,使用默认视差矢量和第一层深度图来确定第二层当前块的视差矢量,
其中,确定第二层当前块的视差矢量的步骤包括:
确定第一层深度图中的由默认视差矢量指示的参考块;
获得第一层深度图中的所述参考块的点深度值;以及
使用获得的角点深度值中的至少一个来确定第二层当前块的视差矢量。
2.如权利要求1所述的层间视频解码方法,其中,确定第二层当前块的视差矢量的步骤包括:
通过使用默认视差矢量和第一层深度图来确定所确定的视差矢量的平分量值;
将所确定的视差矢量的垂直分量值确定为默认视差矢量的垂直分量值。
3.如权利要求1所述的层间视频解码方法,其中,确定第二层当前块的视差矢量的步骤包括:将所确定的视差矢量的水平分量值和垂直分量值之中的与第一层深度图无关的分量值设置为0。
4.如权利要求1所述的层间视频解码方法,其中,确定视差矢量是否是可预测的步骤包括:
根据预定扫描顺序从所述邻近块获取视差矢量;
当从所述邻近块获取了视差矢量时,确定视差矢量是可预测的。
5.如权利要求1所述的层间视频解码方法,其中,确定视差矢量是否是可预测的步骤包括:
当与第二层当前块相应的第二层深度图已被重构时,确定视差矢量是可预测的。
6.如权利要求1所述的层间视频解码方法,其中,确定视差矢量是否是可预测的步骤包括:当从所述邻近块获取的视差矢量以第二层当前块为基准指示第一层图像的外部时,确定视差矢量是不可预测的。
7.如权利要求1所述的层间视频解码方法,其中,默认视差矢量是(0,0)。
8.如权利要求1所述的层间视频解码方法,其中,默认视差矢量是使用第一层深度图确定的全局视差矢量。
9.如权利要求8所述的层间视频解码方法,其中,默认视差矢量是使用第一层深度图的比特深度的中间值来确定的。
10.一种层间视频编码方法,包括:
产生包括通过对第一层图像和第一层深度图进行编码而产生的编码信息的比特流;
确定是否使用第二层当前块的邻近块来预测视差矢量;
当不使用所述邻近块来预测视差矢量时,通过使用默认视差矢量和第一层深度图来确定第二层当前块的视差矢量,
其中,确定第二层当前块的视差矢量的步骤包括:
确定第一层深度图中的由默认视差矢量指示的参考块;
获得第一层深度图中的所述参考块的角点深度值;以及
使用获得的角点深度值中的至少一个来确定第二层当前块的视差矢量。
11.如权利要求10所述的层间视频编码方法,其中,确定第二层当前块的视差矢量的步骤包括:将所确定的视差矢量的水平分量值和垂直分量值之中的与第一层深度图无关的分量值设置为0。
12.一种层间视频解码设备,包括:
第一层解码器,用于基于从比特流获取的编码信息来重构第一层图像和第一层深度图;
视差确定器,用于确定是否使用第二层当前块的邻近块来预测视差矢量,并且当不使用所述邻近块来预测视差矢量时,使用默认视差矢量和第一层深度图来确定第二层当前块的视差矢量,
视差确定器还被配置为确定第一层深度图中的由默认视差矢量指示的参考块,获得第一层深度图中的所述参考块的角点深度值,并使用获得的角点深度值中的至少一个来确定第二层当前块的视差矢量。

说明书全文

用于预测用于层间视频解码的视差矢量的方法以及编码方法

和设备

技术领域

[0001] 本发明涉及一种层间视频编码和解码方法,更具体地讲,涉及一种确定关于层间视频编码方法和解码方法的视差矢量的方法。

背景技术

[0002] 随着用于再现和存储高分辨率或高质量视频内容的硬件正被开发和提供,对于用于有效地对高分辨率或高质量视频内容进行编码或解码的视频编解码器的需求正在增加。在传统的视频编解码器中,基于具有预定尺寸的编码单元,根据受限的编码方法来对视频进行编码。
[0003] 空间域的图像数据通过频率变换被变换为频域中的系数。根据视频编解码器,图像被划分为具有预定尺寸的,并且对每个块执行离散余弦变换 (DCT),并以块为单位对频率系数进行编码,从而快速计算频率变换。与空间域中的图像数据相比,频域的系数容易被压缩。具体地,由于经由视频编解码器的间预测或帧内预测根据预测误差表示空间域的图像像素值,因此当对预测误差执行频率变换时,大量数据可被变换为0。根据视频编解码器,通过用小量数据代替连续并重复产生的数据,可减少数据量。
[0004] 多层视频编解码器对第一层视频和各种第二层视频进行编码和解码,以去除第一层视频和第二层视频的时间和空间冗余以及层之间的冗余,由此减少第一层视频和第二层视频的数据量。

发明内容

[0005] 技术问题
[0006] 提供了一种能够在不从当前层块的外围块来预测视差矢量时通过使用默认视差矢量和参考层深度图确定视差矢量来提高编码性能和精确度的层间视频编码方法和解码方法。
[0007] 技术方案
[0008] 另外的方面将在以下描述中被阐述,还有部分从描述中将是清楚的,或者可通过呈现的实施例的实践而被获知。
[0009] 根据本发明的实施例的一方面,一种层间视频解码方法包括:基于从比特流获取的编码信息来重构第一层图像和第一层深度图;确定视差矢量是否是使用第二层当前块的外围块可预测的;当不使用所述外围块来预测视差矢量时,使用默认视差矢量和第一层深度图来确定第二层当前块的视差矢量。
[0010] 确定视差矢量的步骤可包括:通过使用默认视差矢量和第一层深度图来确定所确定的视差矢量的平分量值;将所确定的视差矢量的垂直分量值确定为默认视差矢量的垂直分量值。
[0011] 确定视差矢量的步骤可包括:将所确定的视差矢量的水平分量值和垂直分量值之中的与第一层深度图无关的分量的值设置为0。
[0012] 确定视差矢量的步骤可包括:获取第一层深度图之中的与默认视差矢量相应的参考块的点深度值;使用获取的角点深度值中的至少一个来确定第二层当前块的视差矢量。
[0013] 确定视差矢量是否是可预测的步骤可包括:根据预定扫描顺序从所述外围块获取视差矢量;当从所述外围块获取了视差矢量时,确定视差矢量是可预测的。
[0014] 确定视差矢量是否是可预测的步骤可包括:当与第二层当前块相应的第二层深度图已被重构时,确定视差矢量是可预测的。
[0015] 确定视差矢量是否是可预测的步骤可包括:当从所述外围块获取的视差矢量以第二层当前块为基准指示第一层图像的外部时,确定视差矢量是不可预测的。
[0016] 默认视差矢量可以是(0,0)。
[0017] 默认视差矢量可以是使用第一层深度图确定的全局视差矢量。
[0018] 默认视差矢量可以是使用第一层深度图的比特深度的中间值来确定的。
[0019] 根据本发明的实施例的另一方面,一种层间视频编码方法包括:产生包括通过对第一层图像和第一层深度图进行编码而产生的编码信息的比特流;确定视差矢量是否是使用第二层当前块的外围块可预测的;当不使用所述外围块来预测视差矢量时,通过使用默认视差矢量和第一层深度图来确定第二层当前块的视差矢量。
[0020] 确定第二层当前块的视差矢量的步骤可包括:通过使用默认视差矢量和第一层深度图来确定所确定的视差矢量的水平分量值;将所确定的视差矢量的垂直分量值确定为默认视差矢量的垂直分量值。
[0021] 确定第二层当前块的视差矢量的步骤可包括:将所确定的视差矢量的水平分量值和垂直分量值之中的与第一层深度图无关的分量的值设置为0。
[0022] 确定第二层当前块的视差矢量的步骤可包括:获取第一层深度图之中的与默认视差矢量相应的参考块的角点深度值;使用获取的角点深度值中的至少一个来确定第二层当前块的视差矢量。
[0023] 确定视差矢量是否是可预测的步骤可包括:根据预定扫描顺序从所述外围块获取视差矢量;当从所述外围块获取了视差矢量时,确定视差矢量是可预测的。
[0024] 确定视差矢量是否是可预测的步骤可包括:当与第二层当前块相应的第二层深度图已被重构时,确定视差矢量是可预测的。
[0025] 确定视差矢量是否是可预测的步骤可包括:当从所述外围块获取的视差矢量以第二层当前块为基准指示第一层图像的外部时,确定视差矢量是不可预测的。
[0026] 默认视差矢量可以是(0,0)。
[0027] 默认视差矢量可以是使用第一层深度图确定的全局视差矢量。
[0028] 默认视差矢量可以是使用第一层深度图的比特深度的中间值来确定的。
[0029] 根据本发明的实施例的另一方面,一种层间视频解码设备包括:第一层解码器,用于基于从比特流获取的编码信息来重构第一层图像和第一层深度图;视差确定器,用于确定是否使用第二层当前块的外围块来预测视差矢量,并且当不使用所述外围块来预测视差矢量时,使用默认视差矢量和第一层深度图来确定第二层当前块的视差矢量。
[0030] 根据本发明的实施例的另一方面,一种层间视频编码方设备包括:第一层编码器,用于产生包括通过对第一层图像和第一层深度图进行编码而产生的编码信息的比特流;视差确定器,用于确定是否使用第二层当前块的外围块来预测视差矢量,当不使用所述外围块来预测视差矢量时,通过使用默认视差矢量和第一层深度图来确定第二层当前块的视差矢量。
[0031] 根据本发明的实施例的另一方面,提供了一种其上记录有用于执行层间视频编码方法的计算机程序的非暂时性计算机可读记录介质。
[0032] 本发明的有益效果
[0033] 根据本发明的实施例,可提供一种能够提高编码性能和精确度的层间视频编码方法和解码方法。附图说明
[0034] 从以下结合附图对实施例的描述中,这些和/或其它方面将变得清楚并更易于理解,其中:
[0035] 图1a是根据各种实施例的层间视频编码设备的框图
[0036] 图1b是根据各种实施例的层间视频编码方法的流程图
[0037] 图2a是根据各种实施例的层间视频解码设备的框图。
[0038] 图2b是根据各种实施例的层间视频解码方法的流程图。
[0039] 图3示出根据实施例的层间预测结构。
[0040] 图4示出根据实施例的使用外围块来预测视差矢量的示例。
[0041] 图5是根据实施例的使用第一层深度图来确定视差矢量的流程图。
[0042] 图6示出根据实施例的使用默认视差矢量和第一层深度图来确定视差矢量的示例。
[0043] 图7示出根据实施例的视差矢量不可预测的示例。
[0044] 图8是根据实施例的基于根据树结构的编码单元的视频编码设备的框图。
[0045] 题9是根据实施例的基于根据树结构的编码单元的视频解码设备的框图。
[0046] 图10是用于描述根据实施例的编码单元的概念的示图。
[0047] 图11是根据实施例的基于编码单元的图像编码器的框图。
[0048] 图12是根据实施例的基于编码单元的图像解码器的框图。
[0049] 图13是示出根据实施例的较深层编码单元以及分区的示图。
[0050] 图14是用于描述根据实施例的编码单元与变换单元之间的关系的示图。
[0051] 图15是用于描述根据实施例的编码单元的编码信息的示图。
[0052] 图16是根据实施例的较深层编码单元的示图。
[0053] 图17至图19是用于描述根据实施例的编码单元、预测单元和变换单元之间的关系的示图。
[0054] 图20是用于描述根据表1的编码模式信息的编码单元、预测单元和变换单元之间的关系的示图。
[0055] 图21是根据实施例的存储有程序的盘的物理结构的示图。
[0056] 图22是用于通过使用盘来记录和读取程序的盘驱动器的示图。
[0057] 图23是用于提供内容分发服务的内容供应系统的整体结构的示图。
[0058] 图24和图25分别是根据实施例的应用了视频编码方法和视频解码方法的移动电话的外部结构和内部结构的示图。
[0059] 图26是根据实施例的应用了通信系统的数字广播系统的示图。
[0060] 图27是示出根据实施例的使用视频编码设备和视频解码设备的计算系统的网络结构的示图。

具体实施方式

[0061] 在下文中,将参照图1a至图7描述根据各种实施例的确定帧间预测候选列表的层间视频编码方法和层间视频解码方法。将参照图8至图20描述适用于层间视频编码方法和层间视频解码方法的根据各种实施例的基于具有树结构的编码单元的视频编码方法和视频解码方法。将参照图21至图27描述所述视频编码方法和所述视频解码方法适用的各种实施例。
[0062] 在下文中,“图像”可表示视频的静止图像或运动图像,或表示视频本身。
[0063] 在下文中,“样本”是分配给图像的采样位置的数据,并可指示作为处理目标的数据。例如,空间域的图像中的像素可以是样本。
[0064] 现在将参照图1a至图7描述根据实施例的层间视频编码设备和方法以及层间视频解码设备和方法。
[0065] 图1a是根据各种实施例的层间视频编码设备10的框图。图1b是根据各种实施例的层间视频编码方法的流程图。
[0066] 根据各种实施例的层间视频编码设备10包括第一层编码器12和第二层编码器16。第一层编码器16可包括视差矢量确定器14。视差矢量确定器14 可位于第二层编码器16的外部。
[0067] 根据各种实施例的层间视频编码设备10可根据可伸缩视频编码针对每个层对多个图像序列进行分类和编码,并可输出包括针对每个层编码的数据的单独的流。层间视频编码设备10可分别根据不同的层对第一层图像序列和第二层图像序列进行编码。
[0068] 第一层编码器12可对第一层图像进行编码,并可输出包括第一层图像的编码数据的第一层流
[0069] 第二层编码器16可对第二层图像进行编码,并可输出包括第二层图像的编码数据的第二层流。
[0070] 例如,根据基于空间可伸缩性的可伸缩视频编码,低分辨率图像可被编码为第一层图像,高分辨率图像可被编码为第二层图像。第一层图像的编码结果可在第一层流中被输出。第二层图像的编码结果可在第二层流中被输出。
[0071] 作为另一示例,多视点视频可根据可伸缩编码而被编码。在这种情况下,中间视点图像可被编码为第一层图像,左视点图像和右视点图像可被编码为参考第一层图像的第二层图像。可选择地,当层间视频编码设备10允许三层或更多层(诸如第一层、第二层和第三层)时,中心视点图像可被编码为第一层图像,左视点图像可被编码为第二层图像,右视点图像可被编码为第三层图像。然而,本发明不必限于此。中心视点图像、左视点图像和右视点图像被编码和参考的层可被改变。
[0072] 作为另一示例,可伸缩视频编码可根据基于时间可伸缩性的时间分层预测而被执行。包括通过对基本帧率的图像进行编码而产生的编码信息的第一层流可被输出。可对每个帧率分类时间级别,并可在多个层中对所述时间级别分别编码。通过参考基本帧率对高帧率的图像进行进一步编码,包括高速帧率的编码信息的第二层流可被输出。
[0073] 可对第一层以及多个第二层执行可伸缩视频编码。在存在三个或更多个第二层的情况下,第一层图像、第一第二层图像、第二第二层图像、...、第K 第二层图像可被编码。因此,第一层图像的编码结果可在第一层流中被输出,第一第二层图像的编码结果、第二第二层图像的编码结果、...、第K第二层图像的编码结果可分别在第一第二层流、第二第二层流、...、第K第二层流中被输出。
[0074] 根据各种实施例的层间视频编码设备10可通过参考单个层的图像执行用于预测当前图像的帧间预测。可通过帧间预测产生指示当前图像和参考图像之间的运动信息的运动矢量以及当前图像和参考图像之间的残差。
[0075] 层间视频编码设备10可通过参考第一层图像的预测信息执行用于预测第二层图像的预测信息的层间预测。
[0076] 当根据实施例的层间视频编码设备10允许三层或更多个层(诸如第一层、第二层、第三层等),层间视频编码设备10可根据多层预测结构在第一层图像和第三层图像之间执行层间预测,并在第二层图像和第三层图像之间执行层间预测。
[0077] 当前图像和不同层的参考图像之间的位置差分量以及当前图像和所述不同层的参考图像之间的残差可通过层间预测来产生。
[0078] 稍后将参照图3详细描述层间预测结构。
[0079] 根据各种实施例的层间视频编码设备10根据每层对针对各个块的每个视频图像进行编码。块可具有正方形形状、矩形形状或任意几何形状,并且不限于具有预定尺寸的数据单元。块可以是根据树结构的编码单元之中的最大编码单元、编码单元、预测单元、变换单元等。包括具有树结构的编码单元的最大编码单元被各种地称为编码块单元、块数、根块树、编码树、编码根或树干。现在将参照图8至图20描述基于具有树结构的编码单元的视频编码和解码。
[0080] 可基于编码单元、预测单元或变换单元的数据单元执行帧间预测和层间预测。
[0081] 根据各种示例性实施例的第一层编码器12可对第一层图像执行包括帧间预测或帧内预测的源编码操作以产生符号数据。符号数据表示每个编码参数的样值以及残差的样值。
[0082] 例如,第一层编码器12可对第一层图像的数据单元中的样本执行帧间预测或帧内预测、变换和量化,产生符号数据,对符号数据执行熵编码,并产生第一层流。
[0083] 第二层编码器16可基于具有树结构的编码单元对第二层图像进行编码。第二层编码器16可对第二层图像的数据单元中的样本执行帧间/帧内预测、变换和量化,产生符号数据,对符号数据执行熵编码并产生第二层流。
[0084] 根据各种实施例的第二层编码器16可通过使用第一层图像的预测信息来执行预测第二层图像的层间预测。第二编码器16可通过使用第一层重构图像的预测信息确定第二层当前图像的预测信息,并基于确定的预测信息产生第二层图像以对第二层原始图像和第二层预测图像之间的预测误差进行编码,从而通过层间预测结构对第二层图像序列之中的第二层原始图像进行编码。
[0085] 第二层编码器16可针对每个块(诸如编码单元或预测单元)对第二层图像执行层间预测,并确定第一层图像之中的将由第二层图像的块所参考的块。例如,第一层图像之中的位置与第二层图像的当前块图像的位置对应的重构块可被确定。第二层编码器16可通过使用与第二层块对应的第一层重构块来确定第二层预测块。
[0086] 第二层编码器16可将通过使用第一层重构块而确定的第二层预测块用作用于第二层原始块的层间预测的参考图像。第二层编码器16可使用第一层重构图像对第二层预测块的样值和第二层原始块的样值之间的误差(即,根据层间预测的残差)执行变换、量化和熵编码。
[0087] 同时,当层间视频编码设备10对多视点视频进行编码时,将被编码的第一层图像可以是第一视点视频,将被编码的第二层图像可以是第二视点视频。这样的多视点图像可被同时获取,因此针对每个视点的图像会具有高相似度。
[0088] 然而,多视点图像可能根据针对每个视点的捕捉角度、照度或成像工具 (相机、镜头等)的不同特性而具有视差。因此,这样的视差可被成呈现为视差矢量,并且被用于通过使用视差矢量对不同视点图像之中的与当前将被编码的块最相似的区域进行编码的视差补偿预测可被执行,从而提高编码效率。
[0089] 层间视频编码设备10可确定用于层间预测的视差矢量,并通过比特流将所述视差矢量作为可区分的信息发送到解码设备。
[0090] 可选择地,层间视频编码设备10可从不同类型的编码信息预测(或推导) 视差矢量,以减少针对每个预测单元发送的数据量。例如,可从当前重构的块的外围块预测视差矢量。如果不能从外围块预测出视差矢量,则视差矢量可被设置为默认视差矢量(0,0)。
[0091] 然而,在当前块的视差矢量未被预测出时,将默认矢量设置为(0,0)可能造成在大多数多视点图像中不考虑视差矢量的发生的问题。
[0092] 因此,如果未从外围块预测出视差矢量,则根据实施例的层间视频编码设备10可通过利用参考层深度图来确定视差矢量,从而提高编码性能和预测精确度。
[0093] 稍后将参照图4至图7详细描述根据实施例的层间视频编码设备10确定视差矢量的方法。
[0094] 层间视频编码设备10可使用第一层重构图像对第二层预测块的样值和第二层原始块的样值之间的误差(即,根据层间预测的残差)执行变换、量化和熵编码。还可对预测信息之间的误差执行熵编码。
[0095] 如上所述,层间视频编码设备10可通过层间预测结构参考第一层重构图像来对当前层图像序列进行编码。然而,根据各种实施例的层间视频编码设备10可在不参考不同层样本的情况下根据单层预测结构对第二层图像序列进行编码。因此,不限于层间视频编码设备10仅执行层间预测结构的层间预测以对第二层图像序列进行编码的理解。
[0096] 将参照图1b详细描述确定用于层间预测的视差矢量的层间视频编码设备10的详细操作。在下文中,第一层图像可指参考视点图像,第二层图像可指当前编码的视点图像。
[0097] 图1b是根据各种实施例的层间视频编码方法的流程图。
[0098] 在操作11,根据实施例的第一层编码器12可产生包括通过对第一层图像和第一层深度图进行编码而产生的编码信息的比特流。在这一点上,第一层深度图可针对与第一层深度图相应的层彩色图像的预定像素来存储相机和对象之间的距离信息。因此,第一层深度图可用于提供通过使用多视点视频编码对自由视点显示器中的少量视点图像的虚拟视点进行合成来提供各种视点图像的方法。
[0099] 在操作13,根据实施例的视差矢量确定器14可确定是否可使用第二层当前块的外围块来预测视差矢量。
[0100] 例如,视差矢量确定器14可根据预定扫描顺序(例如,z字扫描顺序和光栅扫描顺序)从第二层当前块的外围块获取视差矢量,并且当从外围块获取到视差矢量时,使用获取的视差矢量来预测当前块的视差矢量。将参照图 4详细描述从第二层当前块的外围块获取视差矢量的方法。因此,当从外围块获取到视差矢量时,视差矢量确定器14可确定视差矢量是可预测的。
[0101] 然而,当从外围块获取的视差矢量以第二层当前块为基准指示第一层图像的外部时,视差矢量确定器14确定视差矢量是不可预测的。
[0102] 同时,当与第二层当前块对应的第二层深度图在解码端可用时,视差矢量确定器14可确定视差矢量是可预测的。由于对象和视差的距离彼此成反比,因此与第二层当前块对应的第二层深度图可被用于预测每个像素的视差矢量。
[0103] 在操作15,根据实施例的视差矢量确定器14可使用默认视差矢量和第一层深度图来确定第二层当前块的视差矢量。
[0104] 视差矢量确定器14可以以第二层当前块的位置为基准确定第一层深度图之中的与默认视差矢量对应的共同定位参考块,并获取所确定的第一层深度图之中的共同定位参考块中的角点(corner)深度值。角点深度值之中的最大值可被转换为视差矢量并被确定为第二层当前块的视差矢量。
[0105] 在这一点上,默认视差矢量可被确定为(0,0)。可选择地,使用第一层深度图确定的全局视差矢量可被确定为默认视差矢量。可使用第一层深度图的比特深度的中间值来确定全局视差矢量。
[0106] 同时,视差矢量确定器14可将与确定的视差矢量的水平分量和垂直分量之中的与第一层深度图无关的分量的值设置为0。例如,由于第二层当前块以及与第二层当前块对应的第一层深度图在垂直分量上没有关系,因此视差矢量确定器14可使用默认视差矢量和第一层深度图来确定视差矢量的水平分量的值,并将视差矢量的垂直分量的值确定为0。
[0107] 根据各种实施例的层间视频编码设备10可包括中央处理器(未示出),其中,所述中央处理器通常控制第一层编码器12、视差矢量确定器14、和第二层编码器16。可选择地,第一层编码器12、视差矢量确定器14、和第二层编码器16可通过它们各自的处理器(未示出)进行操作,并且层间视频编码设备10通常可根据这些处理器(未示出)的交互来进行操作。可选择地,第一层编码器12、视差矢量确定器14、和第二层编码器16可根据层间视频编码设备10的外部处理器(未示出)的控制而被控制。
[0108] 层间视频编码设备10可包括存储有第一层编码器12、视差矢量确定器 14和第二层编码器16的输入数据和输出数据的一个或更多个数据存储单元 (未示出)。层间视频编码设备10可包括存储器控制单元(未示出),其中,存储器控制单元观察数据存储单元(未示出)的数据输入和输出。
[0109] 层间视频编码设备10可与内部视频编码处理器或外部视频编码处理器相联系地进行操作以输出视频编码结果,从而执行包括变换的视频编码操作。除了单独的处理器之外,层间视频编码设备10的内部视频编码处理器还可由中央处理器或图形处理器来实现。
[0110] 图2a是根据各种实施例的层间视频解码设备20的框图。
[0111] 根据各种实施例的层间视频解码设备20包括第一层解码器22、视差矢量确定器24、和第二层解码器26。视差矢量确定器24可包括在第二层解码器26中。根据另一实施例的视差矢量确定器24可位于第二层解码器26的外部。
[0112] 根据各种实施例的层间视频解码设备20可根据可伸缩编码接收针对每个层的比特流。由层间视频解码设备20接收的比特流的层数不受限制。然而,为了便于解释,将详细描述层间视频解码设备20的第一层解码器22接收第一层流并对第一层流进行解码,第二层解码器26接收第二层流并对第二层流进行解码的实施例。
[0113] 例如,基于空间可伸缩性的层间视频解码设备20可接收根据不同层对不同分辨率的图像序列进行编码的流。可通过对第一层流进行解码来重构低分辨率图像序列,可通过对第二层流进行解码来重构高分辨率图像序列。
[0114] 作为另一示例,可根据可伸缩视频编码对多视点视频进行解码。当在多个层中接收到立体视频流时,第一层流可被解码以重构左视点图像。第二层流可被进一步解码为第一层流以重构右视点图像。
[0115] 可选择地,当在多个层中接收到多视点视频流时,第一层流可被解码以重构中心视点图像。第二层流可被进一步解码为第一层流以重构左视点图像。第三层流可被进一步解码为第一层流以重构右视点图像。
[0116] 作为另一示例,基于时间可伸缩性的可伸缩视频编码可被执行。第一层流可被解码以重构基本帧率图像。第二层流可被进一步解码为第一层流以重构高速帧率图像。
[0117] 在存在三个或更多个第二层的情况下,第一层图像可从第一层流被重构。如果第二层流通过参考第一层重构图像被进一步解码,则第二层图像可被进一步重构。如果第K层流通过参考第二层重构图像被进一步解码,则第K层图像可被进一步重构。
[0118] 层间视频解码设备20可从第一层流和第二层流获取第一层图像和第二层图像的编码数据,并还可获取通过帧间预测产生的运动矢量以及通过层间预测产生的预测信息。
[0119] 例如,层间视频解码设备20可对每层的帧间预测数据进行解码,并可对多层之间的层间预测数据进行解码。可基于编码单元或预测单元通过运动补偿和层间解码来执行重构。
[0120] 针对每个层流,通过参考通过对同一层的帧间预测而预测出的重构图像来执行针对当前图像的运动补偿,因此图像可被重构。运动补偿意味着将通过使用当前图像的运动矢量而确定的参考图像与当前图像的残差进行合成并重构当前图像的重构图像的操作。
[0121] 层间视频解码设备20可参考第一层图像的预测信息执行层间解码,以对通过层间预测而预测出的第二层图像进行解码。层间解码是指使用不同层的参考块的预测信息来对当前图像的预测信息进行重构以便确定当前图像的预测信息的操作。
[0122] 根据实施例的层间视频解码设备20可执行用于重构参考第二层图像预测出的第三层图像的层间解码。稍后将参照图3详细描述层间预测结构。
[0123] 然而,根据各种实施例的第二层解码器26可在不参考第一层图像序列的情况下对第二层流进行解码。因此,不限于第二层解码器26仅执行层间预测以对第二层图像序列进行解码的理解。
[0124] 层间视频解码设备20针对每个块对视频的每个图像进行解码。根据示例性实施例的块可包括根据树结构的编码单元之中的最大编码单元、编码单元、预测单元、变换单元等。
[0125] 第一层解码器22可通过使用解析出的第一层图像的编码符号来对第一层图像进行解码。如果层间视频解码设备20基于具有树结构的编码单元来接收编码的流,则第一层解码器22可针对第一层流的每个最大编码单元基于具有树结构的编码单元来执行解码。
[0126] 第一层解码器22可针对每个最大编码单元执行熵编码,并可获取编码信息和编码的数据。第一层解码器22可对从流获取的编码的数据执行反量化和逆变换以重构残差。根据另一实施例的第一层解码器22可直接接收量化的变换系数的流。图像的残差可被重构为对量化的变换系数执行反量化和逆变换的结果。
[0127] 第一层解码器22可通确定预测图像并经由同一层图像之间的运动补偿将预测图像和残差进行组合来重构第一层图像。
[0128] 第二层解码器26可根据层间预测结构通过使用第一层重构图像的样本来产生第二层预测图像。第二层解码器26可对第二层流进行解码以获取根据层间预测的预测误差。第二层解码器26可将第二层预测图像与所述预测误差进行组合,从而产生第二层重构图像。
[0129] 第二层解码器26可使用由第一层解码器22解码出的第一层重构图像来确定第二层预测图像。第二层解码器26可根据层间预测结构来确定第一层图像之中的由第二层图像的诸如编码单元或预测单元的块将参考的块。也就是说,第一层图像之中的由第二层图像的块将参考的块可被确定。例如,第一层图像之中的位置与第二层图像之中的当前块的位置对应的重构块可被确定。第二层解码器26可使用与第二层块对应的第一层重构块来确定第二层预测块
[0130] 第二层解码器26可将根据层间预测结构使用第一层重构块确定的第二层预测块用作用于对第二层原始块进行层间预测的参考图像。在这种情况下,第二层解码器26可通过将使用第一层重构图像确定的第二层预测块的样值与根据层间预测的残差进行合成来重构第二层块。
[0131] 同时,当层间视频解码设备20对多视点视频进行解码时,将被解码的第一层图像可以是第一视点视频,将被解码的第二层图像可以是第二视点视频。
[0132] 层间视频解码设备20可通过比特流从多视点视频获取用于层间预测的视差矢量,或从不同类型的编码信息预测视差矢量。
[0133] 例如,可从当前重构的块的外围块预测视差矢量。如果不能从外围块预测出视差矢量,则视差矢量可被设置为默认视差矢量(0,0)。
[0134] 然而,在当前块的视差矢量未被预测出时,将默认矢量设置为(0,0)可能造成在大多数多视点图像中不考虑视差矢量的发生的问题。
[0135] 因此,如果未从外围块预测出视差矢量,则根据实施例的层间视频解码设备20可通过利用参考层深度图来确定视差矢量,从而提高编码性能和预测精确度。
[0136] 稍后将参照图4至图7详细描述根据实施例的层间视频解码设备20确定视差矢量的方法。
[0137] 同时,根据空间可伸缩视频编码,当第一层解码器22对分辨率与第二层图像的分辨率不同的第一层图像进行重构时,第二层解码器26可对第一层重构图像进行插值,以将第一层重构图像的尺寸重新调整为具有与第二层原始图像的分辨率相同的分辨率。经过插值后的第一层重构图像可被确定为用于层间预测的第二层预测图像。
[0138] 因此,层间视频解码设备20的第一层解码器22可通过对第一层流进行解码来重构第一层图像序列,第二层解码器26可通过对第二层流进行解码来重构第二层图像序列。
[0139] 同时,当上述层间视频解码设备20对多视点视频进行解码时,将被解码的第一层图像是第一视点视频,第二层图像可以是第二视点视频。可通过不同的相机或通过不同的镜头来捕捉针对每个视点的视频。
[0140] 在下面将参照图2b详细描述确定用于层间预测的视差矢量的层间视频解码设备20的详细操作。在下文中,第一层图像可指参考视点图像,第二层图像可指当前解码的视点图像。
[0141] 图2b是根据各种实施例的层间视频解码方法的流程图。
[0142] 在操作21,根据实施例的第一层解码器22可基于从第一比特流获取的编码信息来重构第一层图像和第一层深度图。
[0143] 在操作23,根据实施例的视差矢量确定器24可确定是否可使用第二层当前块的外围块来预测视差矢量。
[0144] 例如,视差矢量确定器24可根据预定扫描顺序(例如,z字扫描顺序和光栅扫描顺序)从第二层当前块的外围块获取视差矢量,并且当从外围块获取到视差矢量时,使用获取的视差矢量来预测当前块的视差矢量。将参照图 4详细描述从第二层当前块的外围块获取视差矢量的方法。因此,当从外围块获取到视差矢量时,视差矢量确定器14可确定视差矢量是可预测的。
[0145] 然而,当从外围块获取的视差矢量以第二层当前块为基准指示第一层图像的外部时,视差矢量确定器24可确定视差矢量是不可预测的。
[0146] 作为另一示例,当与第二层当前块对应的第二层深度图已被重构并且可用时,视差矢量确定器24可确定视差矢量是可预测的。
[0147] 在操作25,当不使用外围块来预测视差矢量时,根据实施例的视差矢量确定器24可使用默认视差矢量和第一层深度图来确定第二层当前块的视差矢量。
[0148] 例如,视差矢量确定器24可以以第二层当前块的位置为基准确定第一层深度图之中的与默认视差矢量对应的共同定位参考块,并获取所确定的第一层深度图之中的共同定位参考块的角点深度值。角点深度值之中的最大值可被转换为视差矢量并被确定为第二层当前块的视差矢量。
[0149] 在这一点上,默认视差矢量可被确定为(0,0)。可选择地,使用第一层深度图确定的全局视差矢量可被确定为默认视差矢量。可使用第一层深度图的比特深度的中间值来确定全局视差矢量。
[0150] 同时,视差矢量确定器24可将确定的视差矢量的水平分量和垂直分量之中的与第一层深度图无关的分量的值设置为0。例如,由于第二层当前块和与第二层当前块对应的第一层深度图在垂直分量上没有关系,因此视差矢量确定器24可使用默认视差矢量和第一层深度图来确定视差矢量的水平分量的值,并将视差矢量的垂直分量的值确定为0。
[0151] 根据各种实施例的层间视频解码设备20可包括通常控制第一层解码器 22、视差矢量确定器24和第二层解码器26的中央处理器(未示出)。可选择地,第一层解码器22、视差矢量确定器24和第二层解码器26可通过它们各自的处理器(未示出)进行操作,并且层间视频解码设备20通常根据这些处理器(未示出)的交互来进行操作。可选择地,第一层解码器22、视差矢量确定器24和第二层解码器26可根据层间视频解码设备20的外部处理器(未示出)的控制而被控制。
[0152] 根据各种实施例的层间视频解码设备20可包括存储有第一层解码器22、视差矢量确定器24和第二层解码器26的输入数据和输出数据的一个或更多个数据存储单元(未示出)。层间视频解码设备20可包括观察数据存储单元 (未示出)的数据输入和输出的存储器控制单元(未示出)。
[0153] 根据各种实施例的层间视频解码设备20可与内部视频解码处理器或外部视频解码处理器相联系地进行操作以输出视频解码结果,从而执行包括变换的视频解码操作。除了单独的处理器之外,层间视频解码设备20的内部视频解码处理器还可通过中央处理器或图形处理器来实现。
[0154] 参照图1a至图2b,当视差矢量不是从第二层块的外围块被预测时,层间视频编码设备10和层间视频解码设备20可提供通过利用默认视差矢量和第一层深度图来确定视差矢量的层间视频编码方法和层间视频解码方法,从而提高编码性能和精确度。
[0155] 在下面将参照图3详细描述根据各种实施例的可在视频流编码设备10 中执行的层间预测结构。
[0156] 图3示出根据实施例的层间预测结构。
[0157] 层间视频编码系统1600包括基本层编码端1610、增强层编码端1660以及基本层编码端1610与增强层编码端1660之间的层间预测端1650。基本层编码端1610和增强层编码端1660可包括在第一层编码器12中。
[0158] 基本层编码端1610接收针对每个图像的基本层图像序列,并对所述基本层图像序列进行编码。增强层编码端1660接收针对每个图像的增强层图像序列,并对所述增强层图像序列进行编码。将同时给出对基本层编码端1610和增强层编码端1660之间的相似操作的重复描述。
[0159] 块划分器1618和1668将输入图像(低分辨率图像和高分辨率图像)划分为最大编码单元、编码单元、预测单元、变换单元等。为了对由块划分器 1618和1668输出的编码单元进行编码,可对编码单元的每个预测单元执行帧内预测或帧间预测。根据预测单元的预测模式是帧内预测模式还是帧间预测模式,预测切换器1648和1698可参考由运动补偿器1640和1690输出的先前重构的图像来执行帧间预测,或者可根据通过使用由帧内预测单元1645 和1695输出的当前输入图像内的当前预测单元的邻近预测单元来执行帧内预测。通过帧间预测,可为每个预测单元产生残差信息。
[0160] 预测单元与邻近图像之间的残差信息针对编码单元的每个预测单元被输入到变换器/量化器1620和1670。变换器/量化器1620和1670可基于编码单元的变换单元来执行针对每个变换单元的变换和量化,并可输出经过量化的变换系数。
[0161] 缩放器/逆变换器1625和1675可对编码单元的每个变换单元的经过量化的变换系数再次执行缩放和逆变换,以产生空间域的残差信息。当通过预测切换器1648和1698配置了帧间模式时,残差信息与先前重构的图像或邻近预测单元进行组合,从而产生包括当前预测单元的重构图像,并将当前重构图像存储在存储器1630和1680中。根据稍后编码的预测单元的预测模式,当前重构图像可被传送到帧内预测单元1645和1695/运动补偿单元1640和 1690。
[0162] 具体地讲,在帧间模式下,环路滤波单元1635和1685可对存储在存储器1630和1680中的重构图像的每个编码单元执行从去块滤波操作和样本自适应偏移(SAO)滤波操作中选择的至少一个操作。可对编码单元、编码单元中包括的预测单元、和变换单元中的至少一个执行去块滤波和样本自适应偏移(SAO)滤波中的至少一个滤波。
[0163] 去块滤波是用于减轻数据单元的块现象的滤波。SAO滤波是用于对通过数据编码和解码而修改的像素值进行补偿的滤波。通过环路滤波单元1635和 1685滤波的数据可针对每个预测单元而被传送到运动补偿单元1640和1690。由运动补偿单元1640和1690以及块划分器1618和1668输出的当前重构图像与邻近编码单元之间的残差信息可被产生,以再次对由块划分器1618和 1668输出的下一次序的编码单元进行编码。
[0164] 按这种方式,上述编码方法可针对输入图像的每个编码单元被重复。
[0165] 用于层间预测的增强层编码端1660可参考基本层编码端1610的存储器 1630中存储的重构图像。基本层编码端1610的编码控制器1615可控制基本层编码端1610的存储器1630,并可将基本层编码端1610的重构图像传送到增强层解码端1660。层间预测端1650可对基本层编码端1610的存储器1630 输出的基本层重构图像执行去块滤波或SAO滤波。当分辨率在基本层的图像和增强层的图像之间不同时,层间预测端1650可对基本层的重构图像进行上采样,并可将该重构图像传送到增强层编码端1660。当根据增强层编码端 1660的切换器1698的控制执行了层间预测时,可参考通过层间预测端1650 传送的基本层重构图像对增强层图像执行层间预测。
[0166] 为了对图像进行编码,可设置针对编码单元、预测单元和变换单元的各种编码模式。例如,深度或划分标记等可被设置为关于编码单元的编码模式。预测模式、分区类型、帧内方向信息、参考列表信息等可被设置为关于预测单元的编码模式。变换深度或划分标记等可被设置为关于变换单元的编码模式。
[0167] 基本层编码端1610可根据通过应用针对编码单元的各种深度、针对预测单元的各种预测模式、各种分区类型、各种帧内方向、各种参考列表和针对变换单元的各种变换深度执行编码的结果,确定具有最高编码效率的编码深度、预测模式、分区类型、帧内方向/参考列表、变换深度等。然而,本发明不限于由基本层编码端1610确定的编码模式。
[0168] 基本层编码端1610的编码控制器1615可控制将各种编码模式适当地应用于元件的操作。针对增强层编码端1660的层间编码,编码控制器1615可控制增强层编码端1660通过参考基本层编码端1610的编码结果来确定编码模式或残差信息。
[0169] 例如,增强层编码端1660可通过将基本层编码端1610的编码模式用作增强层图像的编码模式,或通过参考基本层编码端1610的编码模式,确定用于增强层图像的编码模式。基本层编码端1610的编码控制器1615可控制增强层编码端1660的编码控制器1655的控制信号,使得增强层编码端1660可使用来自基本层编码端1610的编码模式的当前编码模式,以确定当前编码模式。
[0170] 与根据图3的层间预测方法的层间编码系统1600类似,根据层间预测方法的层间解码系统可被实现。也就是说,多层视频的层间解码系统可接收基本层比特流和增强层比特流。层间解码系统的基本层解码端可对基本层比特流进行解码以重构基本层图像。多层视频的层间解码系统的增强层解码端可使用基本层重构图像和解析出的编码信息来对增强层比特流进行解码,并重构增强层图像。
[0171] 如果根据各种示例性实施例的层间视频编码设备10执行层间预测,则层间视频解码设备20可根据上述层间解码系统来重构多层图像。
[0172] 现在将参照图4至图7详细描述视频流编码设备10和视频流解码设备20应用关于多视点视频的层间预测结构的示例性实施例。单个视点的视频被应用于多视点视频的视点间预测结构中的一层,因此,视点间预测结构可被解释为层间预测结构。
[0173] 在下面将参照图4至图7描述根据各种实施例的使用参考层深度图来确定视差矢量的层间视频编码方法和层间视频解码方法。
[0174] 图4示出根据实施例的使用外围块来预测视差矢量的示例。
[0175] 参照图4,层间视频解码设备20可根据预定扫描顺序(例如,z字扫描和光栅扫描)来扫描外围块,以确定当前图像30中的当前块31的视差矢量。在这一点上,被扫描的外围块可以是在时间或空间上与当前块31邻近的预测单元。
[0176] 例如,位于当前块31的左下样本的外部左下侧的外围块A0 32、位于当前块31的左下样本的外部左侧的外围块A1 33、位于当前块31的右上样本的外部右上侧的外围块B0 34、位于当前块31的右上样本的外部上侧的外围块B1 35、位于当前块31的左上样本的外部左上侧的外围块B2 36可以是用于获取视差矢量的外围块。
[0177] 当从外围块获取了视差矢量时,层间视频解码设备20可使用获取的视差矢量来预测当前块31的视差矢量。
[0178] 例如,如果在外围块A1 33、B1 35、B0 34、A0 32和B2 36之中存在执行了视差补偿预测的块,则从执行了视差补偿预测的块获取的视差矢量可被用作当前块31的视差矢量。
[0179] 如果不存在执行了视差补偿预测的块,则层间视频解码设备20可将从外围块A1 33、B1 35、B0 34、A0 32和B2 36之中的执行了层间预测的块获取的视差矢量用作当前块31的视差矢量。
[0180] 同时,在当前块31是按照预测模式(诸如2N×N、N×2N、2N×nU、2N×nD、 nL×2N、nR×2N)被划分的预测单元时,可仅使用外围块A1 33、B1 35、B0 34、 A0 32和B2 36中的四个块来确定是否执行了视差补偿预测或层间预测,以应用并行算法。例如,在当前块31的预测模式是N×2N、nL×2N或nR×2N并且分区索引为0时,外围块A1 33可不被使用。可选择地,在当前块31的预测模式是2N×N、2N×nU或2N×nD并且分区索引为1时,外围块B1 35可不被使用。
[0181] 同时,用于预测视差矢量的外围块的位置和数量不限于此,并可被改变。如使用空间外围块来预测视差矢量的示例,时间外围块可被用于预测视差矢量。
[0182] 现在将在下面参照图5至图7以及语法元素来描述根据实施例的层间视频解码设备20确定是否可使用外围块来预测第二层当前块的视差矢量以及使用深度图来确定当前块的视差矢量的方法。
[0183] 图5是根据实施例的使用第一层深度图来确定视差矢量的流程图。
[0184] 在操作51,根据实施例的层间视频解码设备20可确定是否可使用第二层当前块的外围块来预测视差矢量(dvAvailFlag)。
[0185] 当在操作52视差矢量是可预测的(dvAvailFlag==1)时,在操作53,层间视频解码设备20可确定第二层图像是否可使用第一层深度图来预测视差矢量(depth_refinement_flag[])。
[0186] 如果第一层深度图不可用(depth_refinement_flag[]==0),则在操作54,层间视频解码设备20可将预测出的视差矢量确定为第二层当前块的视差矢量。
[0187] 如果第一层深度图可用(depth_refinement_flag[]==1),则在操作55,层间视频解码设备20可使用预测出的视差矢量和第一层深度图来确定第二层当前块的视差矢量。
[0188] 当在操作52视差矢量是不可预测时(dvAvailFlag==0),在操作56,层间视频解码设备20可设置默认视差矢量。在这一点上,默认视差矢量可被设置为(0,0)。可选择地,使用第一层深度图确定的全局视差矢量可被确定为默认视差矢量。可使用第一层深度图的比特深度的中间值(1<<(BitDepth-1) 来确定全局视差矢量。
[0189] 在操作57,层间视频解码设备20可确定第二层图像是否可使用第一层深度图来预测视差矢量(depth_refinement_flag[])。
[0190] 如果第一层深度图不可用(depth_refinement_flag[]==0),则在操作58,层间视频解码设备20可将默认视差矢量确定为第二层当前块的视差矢量。
[0191] 如果第一层深度图可用(depth_refinement_flag[]==1),则在操作59,层间视频解码设备20可使用默认视差矢量和第一层深度图来确定第二层当前块的视差矢量。
[0192] 图6示出根据实施例的使用默认视差矢量和第一层深度图来确定视差矢量的示例。
[0193] 当视差矢量不是使用外围块来预测(dvAvailFlag==0)时,根据实施例的层间视频解码设备20可使用默认视差矢量(mvDisp)和第一层深度图62来确定通过第二层彩色图像62解码的第二层当前块61的视差矢量 (mvRefinedDisp)。在这一点上,默认视差矢量(mvDisp)可具有值(0,0)。
[0194] 更详细地讲,层间视频解码设备20可以以第二层当前块61的位置为基准确定第一层深度图62之中的与默认视差矢量(mvDisp)对应的共同定位参考块63。
[0195] 接下来,层间视频解码设备20可获取所确定的第一层深度图62的参考块63的角点深度值63-1、63-2、63-3和63-4之中的最大深度值,并将所述最大深度值转换为视差矢量。
[0196] 例如,使用第二层当前块61的位置(xCb,yCb)、默认视差矢量(mvDisp) 和参考视点索引(refViewiewldx)被转换为尺寸(nCbS)x(nCbS)的视差矢量值“disparitySamples[][]”可被确定为语法元素。在这一点上,nCbS可指编码单元的尺寸。
[0197] 最后,层间视频解码设备20可使用转换后的视差矢量的水平分量值和默认视差矢量(mvDisp)的垂直分量值来确定第二层当前块61的视差矢量 (mvRefinedDisp)。
[0198] 例如,所确定的视差矢量(mvRefinedDisp)可被表示为 (disparitySamples[0][0],mvDisp[1])。在这一点上,作为视差矢量的垂直分量值的“mvDisp[1]”可以是0。
[0199] 总之,根据实施例的层间视频解码设备20可将视差矢量的水平分量确定为使用默认视差矢量和第一层深度图转换的视差矢量,并将视差矢量的垂直分量确定为0。
[0200] 图7示出根据实施例的视差矢量不可预测的示例。
[0201] 当在第二层当前块71的外围块中预测出的视差矢量P_DV以第二层当前块71为基准指示在第一层图像72外部的参考块73时,根据实施例的层间视频解码设备20可确定第二层当前块71的视差矢量不可预测 (dvAvailFalg==0)。
[0202] 根据实施例的层间视频解码设备20可确定是否可使用其它各种条件来预测第二层当前块71的视差矢量。
[0203] 同时,尽管以上参照图4至图7描述的操作由层间视频解码设备20执行,但本领域普通技术人员将容易理解,相同的操作可由层间视频编码设备10执行。
[0204] 在根据实施例的层间视频编码设备10和根据实施例的层间视频解码设备20中,如上所述,视频数据可被划分为具有树结构的编码单元,并且编码单元、预测单元和变换单元被用于对编码单元进行层间预测或帧间预测。在下文中,将参照图8至图20描述根据实施例的基于具有树结构的编码单元的视频编码方法和设备以及视频解码方法和设备。
[0205] 按照原理,在用于多层视频的编码/解码中,针对第一层图像的编码/解码处理和针对第二层图像的编码/解码处理可被分开执行。也就是说,当对多层视频执行层间预测时,单层视频的编码/解码结果被彼此参考,但是针对各个单层视频执行单独的编码/解码处理。
[0206] 为便于描述,由于将参照图8至图20描述的基于根据树结构的编码单元的视频编码处理和视频解码处理是对单层视频执行的,因此将仅描述帧间预测和运动补偿。然而,如参照图1a至图6所描述的,基本层图像和第二层图像之间的层间预测和补偿被执行以对视频流进行编码/解码。
[0207] 因此,当根据实施例的层间视频编码设备10的第一层编码器12基于根据树结构的编码单元对多层视频进行编码时,为了针对各个单视点视频对视频进行编码,层间视频编码设备10包括与多层视频的层数一样多的图8的视频编码设备100以对视频进行编码,使得每个视频编码设备100可被控制以对分配的单层视频进行编码。此外,可伸缩视频编码设备1200可通过使用每个视频编码设备100的单独的单个视点的编码结果来执行视点间预测。
因此,层间视频编码设备10的第一层编码器12可产生基本层视频流和第二层视频流,其中,在基本层视频流和第二层视频流中,针对各个层级记录对各个层的编码结果。
[0208] 类似地,当根据实施例的层间视频解码设备20的第二层解码器26基于根据树结构的编码单元对多层视频进行解码时,为了针对各个层对接收到的基本层视频流和第二层视频流进行解码,层间视频解码设备20可包括与多层视点视频的层数一样多的图9的视频解码设备200,并且视频解码设备200 可被控制以对分别分配给视频解码设备200的单层视频执行解码。此外,层间视频编码设备10可通过使用每个视频解码设备200的单独的单层的解码结果来执行视点间补偿。因此,层间视频解码设备20的第二层解码器26可产生针对各个层而被恢复的第一层图像和第二层图像。
[0209] 图8是根据一个或更多个实施例的基于根据树结构的编码单元的视频编码设备100的框图。
[0210] 涉及基于根据树结构的编码单元进行视频预测的视频编码设备100包括 LCU划分器110、编码单元确定器120和输出器130。
[0211] LCU划分器110可基于图像的当前画面的LCU(作为具有最大尺寸的编码单元),来对当前画面进行划分。如果当前画面大于LCU,则可将当前画面的图像数据划分为至少一个LCU。根据一个或更多个实施例的LCU可以是尺寸为32×32、64×64、128×128、256×256等的数据单元,其中,数据单元的形状是宽度和长度为2的若干次方的正方形。图像数据可根据所述至少一个LCU被输出到编码单元确定器120。
[0212] 根据一个或更多个实施例的编码单元可由最大尺寸和深度表征。深度表示编码单元从LCU被空间划分的次数,并且随着深度加深,根据深度的较深层编码单元可从LCU被划分到最小编码单元(SCU)。LCU的深度为最高深度,SCU的深度为最低深度。由于随着LCU的深度加深,与每个深度对应的编码单元的尺寸减小,因此与更高深度对应的编码单元可包括多个与更低深度对应的编码单元。
[0213] 如上所述,当前画面的图像数据根据编码单元的最大尺寸被划分为 LCU,并且每个LCU可包括根据深度被划分的较深层编码单元。由于根据深度对根据一个或更多个实施例的LCU进行划分,因此可根据深度对包括在 LCU中的空间域的图像数据进行分层地分类。
[0214] 可预先确定编码单元的最大深度和最大尺寸,其中,所述最大深度和最大尺寸限制对LCU的高度和宽度进行分层划分的次数。
[0215] 编码单元确定器120对通过根据深度对LCU的区域进行划分而获取的至少一个划分区域进行编码,并且根据所述至少一个划分区域来确定用于输出最终编码的图像数据的深度。换句话说,编码单元确定器120通过根据当前画面的LCU以根据深度的较深层编码单元对图像数据进行编码,并选择具有最小编码误差的深度,来确定深度。确定的深度和根据确定的深度的编码图像数据被输出到输出器130。
[0216] 基于与等于或低于最大深度的至少一个深度对应的较深层编码单元,对 LCU中的图像数据进行编码,并且基于每个较深层编码单元比较对图像数据进行编码的结果。在对较深层编码单元的编码误差进行比较之后,可选择具有最小编码误差的深度。可针对每个LCU选择至少一个深度。
[0217] 随着编码单元根据深度而被分层地划分并且随着编码单元的数量增加, LCU的尺寸被划分。另外,即使在一个LCU中编码单元与同一深度对应,也通过分别测量每个编码单元的图像数据的编码误差来确定是否将与同一深度对应的每个编码单元划分为更低深度。因此,即使当图像数据被包括在一个LCU中时,在一个LCU中编码误差可根据区域而不同,因此在图像数据中深度可根据区域而不同。因此,可在一个LCU中确定一个或更多个深度,并且可根据至少一个深度的编码单元来对LCU的图像数据进行划分。
[0218] 因此,编码单元确定器120可确定包括在LCU中的具有树结构的编码单元。根据一个或更多个实施例的“具有树结构的编码单元”包括LCU中所包括的所有较深层编码单元之中的与被确定为深度的深度对应的编码单元。可在 LCU的相同区域中根据深度来分层地确定具有深度的编码单元,并可在不同区域中独立地确定具有深度的编码单元。类似地,可与另一区域中的深度相独立地确定当前区域中的深度。
[0219] 根据一个或更多个实施例的最大深度是与从LCU到SCU的划分次数有关的索引。根据一个或更多个实施例的第一最大深度可表示从LCU到SCU 的总划分次数。根据一个或更多个实施例的第二最大深度可表示从LCU到 SCU的深度等级的总数。例如,当LCU的深度是0时,对LCU划分一次的编码单元的深度可被设置为1,对LCU划分两次的编码单元的深度可被设置为2。这里,如果最小编码单元是对LCU划分四次的编码单元,则存在深度 0、1、2、3和4的5个深度等级,并因此第一最大深度可被设置为4,第二最大深度可被设置为5。
[0220] 可根据LCU执行预测编码和变换。还根据LCU,基于根据等于或小于最大深度的深度的较深层编码单元来执行预测编码和变换。
[0221] 由于每当根据深度对LCU进行划分时,较深层编码单元的数量增加,因此对随着深度加深而产生的所有较深层编码单元执行包括预测编码和变换的编码。为了便于描述,在LCU中,现在将基于当前深度的编码单元来描述预测编码和变换。
[0222] 视频编码设备100可不同地选择用于对图像数据进行编码的数据单元的尺寸或形状。为了对图像数据进行编码,执行诸如预测编码、变换和熵编码的操作,此时,可针对所有操作使用相同的数据单元,或者可针对每个操作使用不同的数据单元。
[0223] 例如,视频编码设备100不仅可选择用于对图像数据进行编码的编码单元,还可选择不同于编码单元的数据单元,以便对编码单元中的图像数据执行预测编码。
[0224] 为了在LCU中执行预测编码,可基于与深度对应的编码单元(即,不再被划分到与更低深度对应的编码单元的编码单元)来执行预测编码。以下,不再被划分且成为用于预测编码的基本单元的编码单元现在将被称为“预测单元”。通过划分预测单元获得的分区可包括预测单元或通过对预测单元的高度和宽度中的至少一个进行划分而获得的数据单元。分区是编码单元的预测单元被划分的数据单元,预测单元可以是与编码单元具有相同的尺寸的分区。
[0225] 例如,当2N×2N(其中,N是正整数)的编码单元不再被划分,并且成为2N×2N的预测单元时,分区的尺寸可以是2N×2N、2N×N、N×2N或N×N。分区模式的示例包括通过对预测单元的高度或宽度进行对称地划分而获得的对称分区、通过对预测单元的高度或宽度进行非对称地划分(诸如,1:n或 n:1)而获得的分区、通过对预测单元进行几何地划分而获得的分区、以及具有任意形状的分区。
[0226] 预测单元的预测模式可以是帧内模式、帧间模式和跳过模式中的至少一个。例如,可对2N×2N、2N×N、N×2N或N×N的分区执行帧内模式或帧间模式。另外,可仅对2N×2N的分区执行跳过模式。可对编码单元中的一个预测单元独立地执行编码,从而选择具有最小编码误差的预测模式。
[0227] 视频编码设备100不仅可基于用于对图像数据进行编码的编码单元,还可基于与编码单元不同的数据单元,来对编码单元中的图像数据执行变换。为了在编码单元中执行变换,可基于具有小于或等于编码单元的尺寸的数据单元来执行变换。例如,用于变换的数据单元可包括帧内模式的数据单元和帧间模式的数据单元。
[0228] 以与根据树结构的编码单元类似的方式,编码单元中的变换单元可被递归地划分为更小尺寸的区域。因此,可基于根据变换深度的具有树结构的变换单元,对编码单元中的残差数据进行划分。
[0229] 还可在变换单元中设置变换深度,其中,变换深度表示对编码单元的高度和宽度进行划分以达到变换单元的划分次数。例如,在2N×2N的当前编码单元中,当变换单元的尺寸是2N×2N时,变换深度可以为0,当变换单元的尺寸是N×N时,变换深度可以为1,当变换单元的尺寸是N/2×N/2时,变换深度可以为2。换句话说,可根据变换深度设置具有树结构的变换单元。
[0230] 根据与深度对应的编码单元的编码信息不仅需要关于深度的信息,还需要关于与预测编码和变换相关的信息的信息。因此,编码单元确定器120不仅确定具有最小编码误差的深度,还确定预测单元中的分区模式、根据预测单元的预测模式和用于变换的变换单元的尺寸。
[0231] 稍后将参照图7至图19详细描述根据一个或更多个实施例的LCU中的根据树结构的编码单元和确定预测单元/分区以及变换单元的方法。
[0232] 编码单元确定器120可通过使用基于拉格朗日乘数的率失真优化,测量根据深度的较深层编码单元的编码误差。
[0233] 输出器130在比特流中输出LCU的图像数据和关于根据深度的编码模式的信息,其中,所述LCU的图像数据基于由编码单元确定器120确定的至少一个深度被编码。
[0234] 可通过对图像的残差数据进行编码来获得编码图像数据。
[0235] 关于根据深度的编码模式的信息可包括关于深度的信息、关于预测单元中的分区模式的信息、关于预测模式的信息和关于变换单元的尺寸的信息。
[0236] 可通过使用根据深度的划分信息来定义关于深度的信息,其中,根据深度的划分信息指示是否对更低深度而不是当前深度的编码单元执行编码。如果当前编码单元的当前深度是深度,则对当前编码单元中的图像数据进行编码和输出,因此可将划分信息定义为不将当前编码单元划分到更低深度。可选地,如果当前编码单元的当前深度不是深度,则对更低深度的编码单元执行编码,并因此可将划分信息定义为对当前编码单元进行划分来获得更低深度的编码单元。
[0237] 如果当前深度不是深度,则对被划分到更低深度的编码单元的编码单元执行编码。由于更低深度的至少一个编码单元存在于当前深度的一个编码单元中,因此对更低深度的每个编码单元重复执行编码,并且因此可对具有相同深度的编码单元递归地执行编码。
[0238] 由于针对一个LCU确定具有树结构的编码单元,并且针对具有深度的编码单元确定关于至少一个编码模式的信息,所以可针对一个LCU确定关于至少一个编码模式的信息。另外,由于根据深度对图像数据进行分层划分,因此LCU的图像数据的深度可根据位置而不同,因此可针对图像数据设置划分信息。
[0239] 因此,输出器130可将对应划分信息分配给包括在LCU中的编码单元、预测单元和最小单元中的至少一个。
[0240] 根据一个或更多个实施例的最小单元是通过将构成最低深度的SCU划分为4份而获得的正方形数据单元。可选择地,根据实施例的最小单元可以是可包括在LCU中所包括的所有编码单元、预测单元、分区单元和变换单元中的最大正方形数据单元。
[0241] 例如,由输出器130输出的编码信息可被分类为根据较深层编码单元的编码信息和根据预测单元的编码信息。根据较深层编码单元的编码信息可包括关于预测模式的信息和关于分区尺寸的信息。根据预测单元的编码信息可包括关于帧间模式的估计方向的信息、关于帧间模式的参考图像索引的信息、关于运动矢量的信息、关于帧内模式的色度分量的信息、以及关于帧内模式的插值方法的信息。
[0242] 根据画面、条带或GOP定义的关于编码单元的最大尺寸的信息和关于最大深度的信息可被插入到比特流的头、序列参数集或画面参数集。
[0243] 还可通过比特流的头、序列参数集或画面参数集输出关于针对当前视频允许的变换单元的最大尺寸的信息和关于变换单元的最小尺寸的信息。输出器130可对与以上参照图1a至图14描述的SAO操作有关的SAO参数进行编码和输出。
[0244] 在视频编码设备100中,较深层编码单元可以是通过将更高深度(更高一层)的编码单元的高度或宽度划分成两份而获得的编码单元。换句话说,在当前深度的编码单元的尺寸是2N×2N时,更低深度的编码单元的尺寸是 N×N。另外,尺寸为2N×2N的当前深度的编码单元可包括最多4个更低深度的编码单元。
[0245] 因此,视频编码设备100可基于考虑当前画面的特征而确定的LCU的尺寸和最大深度,通过针对每个LCU确定具有最优形状和最优尺寸的编码单元来形成具有树结构的编码单元。另外,由于可通过使用各种预测模式和变换中的任意一个对每个LCU执行编码,因此可考虑各种图像尺寸的编码单元的特征来确定最优编码模式。
[0246] 因此,如果以传统宏块对具有高分辨率或大数据量的图像进行编码,则每个画面的宏块的数量极度增加。因此,针对每个宏块产生的压缩信息的条数增加,因此难以发送压缩的信息,并且数据压缩效率降低。然而,通过使用视频编码设备100,由于考虑图像的尺寸,在增加编码单元的最大尺寸的同时,考虑图像的特征来调整编码单元,因此图像压缩效率可增加。
[0247] 参照图1a描述的层间视频编码设备10可包括与层数一样多的视频编码设备100,以针对多层视频的各个层对单层图像进行编码。例如,第一层编码器12可包括单个视频编码设备100,视差矢量确定器14可包括与附加视点的数量一样多的视频编码设备100。
[0248] 当视频编码设备100对第一层图像进行编码时,编码确定器120可针对每个最大编码单元的根据树结构的各个编码单元确定用于帧间预测的预测单元,并可针对各个预测单元执行帧间预测。
[0249] 当视频编码设备100对第二层图像进行编码时,编码确定器120也可针对每个最大编码单元确定预测单元和根据树结构的编码单元,并可针对各个预测单元执行帧间预测。
[0250] 视频编码设备100可对第一层图像和第二层图像之间的亮度差进行编码以对所述亮度差进行补偿。然而,可根据编码单元的编码模式来确定是否执行亮度差补偿。例如,亮度补偿可仅对2N×2N的预测单元执行。
[0251] 图9是根据一个或更多个实施例的基于根据树结构的编码单元的视频解码设备200的框图。
[0252] 涉及基于具有树结构的编码单元的视频预测的视频解码设备200包括接收器210、图像数据和编码信息提取器220以及图像数据解码器230。
[0253] 用于视频解码设备200的解码操作的各种术语(诸如编码单元、深度、预测单元、变换单元和关于各种编码模式的信息)的定义与参照图8和视频编码设备100描述的定义相同。
[0254] 接收器210接收和解析编码视频的比特流。图像数据和编码信息提取器 220从解析的比特流,针对每个编码单元提取编码图像数据,并将提取的图像数据输出到图像数据解码器230,其中,编码单元具有根据每个LCU的树结构。图像数据和编码信息提取器220可从关于当前画面的头、序列参数集或画面参数集提取关于当前画面的编码单元的最大尺寸的信息。
[0255] 另外,图像数据和编码信息提取器220从解析的比特流,根据每个LCU,提取针对具有树结构的编码单元的划分信息和编码信息。提取的划分信息和编码信息被输出到图像数据解码器230。换句话说,比特流中的图像数据被划分为LCU,使得图像数据解码器230针对每个LCU对图像数据进行解码。
[0256] 可针对与深度对应的至少一个条划分信息设置根据LCU的划分信息和编码信息,根据深度的编码信息可包括关于与深度对应的对应编码单元的分区模式的信息、关于预测模式的信息和变换单元的划分信息。另外,根据深度的划分信息可被提取为关于最终深度的信息。
[0257] 由图像数据和编码信息提取器220提取的根据每个LCU的划分信息和编码信息是这样的划分信息和编码信息:该信息被确定为在编码器(诸如,视频编码设备100)根据每个LCU对根据深度的每个较深层编码单元重复地执行编码时产生最小编码误差。因此,视频解码设备200可通过根据产生最小编码误差的深度和编码模式对图像数据进行解码来恢复图像。
[0258] 由于划分信息和编码信息可被分配给对应的编码单元、预测单元和最小单元之中的预定数据单元,因此图像数据和编码信息提取器220可根据预定数据单元,提取划分信息和编码信息。如果对应LCU的划分信息和编码信息根据预定数据单元被记录,则可将被分配了相同的划分信息和编码信息的预定数据单元推断为是包括在同一LCU中的数据单元。
[0259] 图像数据解码器230基于根据LCU的划分信息和编码信息,通过对每个 LCU中的图像数据进行解码,来重构当前画面。换句话说,图像数据解码器 230可基于提取出的关于包括在每个LCU中的具有树结构的编码单元之中的每个编码单元的分区模式、预测模式和变换单元的信息,对编码图像数据进行解码。解码处理可包括预测(包含帧内预测和运动补偿)和逆变换。
[0260] 图像数据解码器230可基于关于根据深度的编码单元的预测单元的分区模式和预测模式的信息,根据每个编码单元的分区和预测模式,执行帧内预测或运动补偿。
[0261] 另外,为了对每个LCU进行逆变换,图像数据解码器230可读取每个编码单元的关于根据树结构的变换单元的信息,以便基于每个编码单元的变换单元执行逆变换。通过逆变换,可重构编码单元的空间域的像素值。
[0262] 图像数据解码器230可通过使用根据深度的划分信息来确定当前LCU的最终深度。如果划分信息指示图像数据在当前深度中不再被划分,则当前深度是最终深度。因此,图像数据解码器230可通过使用针对与深度对应的每个编码单元的关于预测单元的分区模式的信息、关于预测模式的信息和变换单元的划分信息,对当前LCU中的编码数据进行解码。
[0263] 换句话说,可通过观察分配给编码单元、预测单元和最小单元之中的预定数据单元的编码信息集来收集包含包括相同划分信息的编码信息的数据单元,并且收集的数据单元可被认为是将由图像数据解码器230以相同编码模式进行解码的一个数据单元。这样,可通过获得关于每个编码单元的编码模式的信息来对当前编码单元进行解码。
[0264] 参照图2a描述的层间视频解码设备20可包括与视点数一样多的视频解码设备200,以对接收到的第一层图像流和第二层图像流进行解码从而恢复第一层图像和第二层图像。
[0265] 当接收到第一层图像流时,视频解码设备200的图像数据解码器230可将由提取器220从第一层图像流提取的第一层图像的样本划分为根据最大编码单元的树结构的编码单元。图像数据解码器230可针对第一层图像的样本的根据树结构的各个编码单元,对用于帧间预测的各个预测单元执行运动补偿以恢复第一层图像。
[0266] 当接收到第二层图像流时,视频解码设备200的图像数据解码器230可将由提取器220从第二层图像流提取的第二层图像的样本划分为根据最大编码单元的树结构的编码单元。图像数据解码器230可对用于第二层图像的样本的帧间预测的各个预测单元执行运动补偿以恢复第二层图像。
[0267] 提取器220可从比特流获取与第一层图像和第二层图像之间的亮度顺序相关的信息,以对亮度差进行补偿。然而,可根据编码单元的编码模式来确定是否执行亮度补偿。例如,可仅对2N×2N的预测单元执行亮度补偿。
[0268] 视频解码设备200可获取在编码针对每个最大编码单元被递归地执行时获取关于产生最小编码误差的至少一个编码单元的信息,并可使用所述信息来对当前画面进行解码。换句话说,每个最大编码单元中被确定为最佳编码单元的具有树结构的编码单元可被解码。此外,编码单元的最大尺寸是考虑图像数据的分辨率和量而被确定的。
[0269] 因此,即使图像数据具有高分辨率和大数据量,图像数据也可通过使用编码单元的尺寸和编码模式而被有效解码和恢复,其中,编码单元的尺寸和编码模式是通过使用关于从编码器接收到的关于最佳编码模式的信息而根据图像数据的特性被自适应地确定的。
[0270] 图10是用于描述根据本公开的实施例的编码单元的概念的示图。
[0271] 可按照宽度×高度表示编码单元的尺寸,并且编码单元的尺寸可以是 64×64、32×32、16×16和8×8。64×64的编码单元可被划分为64×64、64×32、 32×64或32×32的分区,32×32的编码单元可被划分为32×32、32×16、16×32 或16×16的分区,16×16的编码单元可被划分为16×16、16×8、8×16或8×8 的分区,8×8的编码单元可被划分为8×8、8×4、4×8或4×4的分区。
[0272] 在视频数据310中,分辨率是1920×1080,编码单元的最大尺寸是64,最大深度是2。在视频数据320中,分辨率是1920×1080,编码单元的最大尺寸是64,最大深度是3。在视频数据330中,分辨率是352×288,编码单元的最大尺寸是16,最大深度是1。图10中示出的最大深度表示从LCU到最小编码单元的划分总次数。
[0273] 如果分辨率高或数据量大,则编码单元的最大尺寸可能较大,从而不仅提高编码效率,而且准确地反映图像的特征。因此,比视频数据330具有更高分辨率的视频数据310和320的编码单元的最大尺寸可以是64。
[0274] 由于视频数据310的最大深度是2,因此由于通过对LCU划分两次,深度加深至两层,因此视频数据310的编码单元315可包括长轴尺寸为64的 LCU和长轴尺寸为32和16的编码单元。由于视频数据330的最大深度是1,因此由于通过对LCU划分一次,深度加深至一层,因此视频数据330的编码单元335可包括长轴尺寸为16的LCU和长轴尺寸为8的编码单元。
[0275] 由于视频数据320的最大深度是3,因此由于通过对LCU划分三次,深度加深至3层,因此视频数据320的编码单元325可包括长轴尺寸为64的 LCU和长轴尺寸为32、16和8的编码单元。随着深度加深,详细信息可被精确地表示。
[0276] 图11是根据一个或更多个实施例的基于编码单元的图像编码器400的框图。
[0277] 图像编码器400执行视频编码设备100的编码单元确定器120中对图像数据进行编码所需的操作。换句话说,帧内预测器420根据预测单元对当前帧405之中的帧内模式下的编码单元执行帧内预测,帧间预测器415通过使用当前图像405和从重构画面缓冲器410获取的参考图像,根据预测单元对帧间模式下的编码单元执行帧间预测。当前图像405可被划分为LCU并且随后LCU可被顺序编码。在这一点上,将被划分为具有树结构的编码单元的 LCU可被编码。
[0278] 通过从关于当前图像405的已编码的编码单元的数据去除从帧内预测器 420或帧间预测器415输出的关于每个模式的编码单元的预测数据来产生残差数据,并且所述残差数据通过变换器425和量化器根据变换单元被输出为量化的变换系数。量化的变换系数通过反量化器和逆变换器450被重构为空间域中的残差数据。空间域中的重构的残差数据被添加到从帧内预测器420 或帧间预测器输出的针对每个模式的编码单元的预测数据,从而被重构为用于当前图像405的编码单元的空间域中的数据。重构的空间域中的数据通过去块器455和SAO执行器460被产生为重构的图像,并且重构的图像被存储在重构画面缓冲器410中。存储在重构画面缓冲器410中的重构的图像可被用作用于另一图像的帧间预测的参考图像。由变换器425和量化器430量化的变换系数可通过熵编码器435被输出为比特流
440。
[0279] 为了将图像编码器400应用到视频编码设备100中,图像编码器400的所有元件(即帧间预测器415、帧内预测器420、变换器425、量化器430、熵编码器435、反量化器445、逆变换器450、去块器455和SAO执行器460) 根据每个LCU,基于具有树结构的编码单元之中的每个编码单元执行操作。
[0280] 具体地讲,帧内预测器420和帧间预测器415可考虑当前LCU的最大尺寸和最大深度来确定具有树结构的编码单元之中的每个编码单元的分区模式和预测模式,变换器425可确定是否对具有树结构的编码单元之中的每个编码单元中的具有四叉树结构的变换单元进行划分。
[0281] 图12是根据一个或更多个实施例的基于编码单元的图像解码器500的框图。
[0282] 熵解码器515从比特流505解析将被解码的编码图像数据和解码所需的关于编码的信息。编码图像数据是量化的变换系数,其中,由反量化器520 和逆变换器525从该量化的变换系数重构残差数据。
[0283] 帧内预测器540根据每个预测单元对帧内模式下的编码单元执行帧内预测。帧间预测器535通过使用从重构画面缓冲器530获取的参考图像,针对每个预测单元对当前图像405之中的帧间模式下的编码单元执行帧间预测。
[0284] 对经过帧内预测器540和帧间预测器535的关于每个模式的编码单元的预测数据和残差数据求和,由此可重构关于当前图像405的编码单元的空间域中的数据,并且重构的空间域中的数据可通过去块器545和SAO执行器 550被输出为重构图像560。存储在重构画面缓冲器530中的重构图像可被输出为参考图像。
[0285] 为了对视频解码设备200的图像数据解码器230中的图像数据进行解码,根据实施例的图像解码器500的熵解码器515之后的操作可被执行。
[0286] 为了将图像解码器500应用于根据实施例的视频解码设备200中,图像解码器500的所有元件(即,熵解码器515、反量化器520、逆变换器525、帧间预测器535、去块器545和SAO执行器550)针对每个LCU,基于具有树结构的编码单元执行操作。
[0287] 具体地,SAO执行器550和帧间预测器535可确定用于每个具有树结构的编码单元的分区和预测模式,并且逆变换器540可确定是否针对每个编码单元划分具有四叉树结构的变换单元。
[0288] 图10的编码操作和图11的解码操作分别描述了单个层中的视频流编码操作和解码操作。因此,如果图1a的第一层编码器12对两层或更多层的视频流进行编码,则图像编码器400可针对每个层被提供。类似地,如果图1a 的第二层解码器26对两层或更多层的视频流进行解码,则图像解码器500可针对每个层被提供。
[0289] 图13是示出根据一个或更多个实施例的根据深度的较深层编码单元以及分区的示图。
[0290] 视频编码设备100和视频解码设备200使用分层编码单元以考虑图像的特征。可根据图像的特征自适应地确定编码单元的最大高度、最大宽度和最大深度,或可由用户不同地设置编码单元的最大高度、最大宽度和最大深度。可根据编码单元的预定最大尺寸来确定根据深度的较深层编码单元的尺寸。
[0291] 在根据一个或更多个实施例的编码单元的分层结构600中,编码单元的最大高度和最大宽度均是64,最大深度是3。在这种情况下,最大深度表示编码单元从LCU被划分到SCU的总次数。由于深度沿着分层结构600的垂直轴深度加深,因此较深层编码单元的高度和宽度均被划分。另外,预测单元和分区沿着分层结构600的水平轴被示出,其中,所述预测单元和分区是对每个较深层编码单元进行预测编码的基础
[0292] 换句话说,在分层结构600中,编码单元610是LCU,其中,深度为0,尺寸(即,高度乘宽度)为64×64。深度沿着垂直轴加深,存在尺寸为32×32 且深度为1的编码单元620、尺寸为16×16且深度为2的编码单元630、尺寸为8×8且深度为3的编码单元640。尺寸为8×8且深度为3的编码单元640 是SCU。
[0293] 编码单元的预测单元和分区根据每个深度沿着水平轴被排列。换句话说,如果尺寸为64×64且深度为0的编码单元610是预测单元,则可将预测单元划分成包括在编码单元610中的分区,即,尺寸为64×64的分区610、尺寸为64×32的分区612、尺寸为32×64的分区
614或尺寸为32×32的分区616。
[0294] 类似地,可将尺寸为32×32且深度为1的编码单元620的预测单元划分成包括在编码单元620中的分区,即,尺寸为32×32的分区620、尺寸为32×16 的分区622、尺寸为16×32的分区624和尺寸为16×16的分区626。
[0295] 类似地,可将尺寸为16×16且深度为2的编码单元630的预测单元划分成包括在编码单元630中的分区,即,包括在编码度单元630中的尺寸为16×16 的分区630、尺寸为16×8的分区632、尺寸为8×16的分区634和尺寸为8×8 的分区636。
[0296] 类似地,可将尺寸为8×8且深度为3的编码单元640的预测单元划分成包括在编码单元640中的分区,即,包括在编码单元640中的尺寸为8×8的分区、尺寸为8×4的分区642、尺寸为4×8的分区644和尺寸为4×4的分区 646。
[0297] 为了确定构成LCU 610的编码单元的最终深度,视频编码设备100的编码单元确定器120对包括在LCU 610中的与每个深度对应的编码单元执行编码。
[0298] 随着深度加深,包括相同范围和相同尺寸的数据的根据深度的较深层编码单元的数量增加。例如,需要四个与深度2对应的编码单元来覆盖包括在与深度1对应的一个编码单元中的数据。因此,为了根据深度比较对相同数据进行编码的结果,与深度1对应的编码单元和四个与深度2对应的编码单元均被编码。
[0299] 为了针对深度之中的当前深度执行编码,可沿着分层结构600的水平轴,通过对与当前深度对应的编码单元中的每个预测单元执行编码,来针对当前深度选择最小编码误差。可选地,随着深度沿着分层结构600的垂直轴加深,可通过针对每个深度执行编码,比较根据深度的最小编码误差,来搜索最小编码误差。编码单元610中的具有最小编码误差的深度和分区可被选为编码单元610的最终深度和分区模式。
[0300] 图14是用于描述根据一个或更多个实施例的编码单元710和变换单元 720之间的关系的示图。
[0301] 视频编码设备100或视频解码设备200针对每个LCU,根据具有小于或等于LCU的尺寸的编码单元,对图像进行编码或解码。可基于不大于对应的编码单元的数据单元,选择用于在编码期间进行变换的变换单元的尺寸。
[0302] 例如,在视频编码设备100或视频解码设备200中,如果编码单元710 的尺寸是64×64,则可通过使用尺寸为32×32的变换单元720来执行变换。
[0303] 此外,可通过对小于64×64的尺寸为32×32、16×16、8×8和4×4的每个变换单元执行变换,来对尺寸为64×64的编码单元710的数据进行编码,然后可选择具有最小编码误差的变换单元。
[0304] 图15是用于描述根据一个或更多个实施例的与深度对应的编码单元的编码信息的示图。
[0305] 视频编码设备100的输出器130可对与最终深度对应的每个编码单元的关于分区模式的信息800、关于预测模式的信息810以及关于变换单元尺寸的信息820进行编码,并将信息800、信息810和信息820作为关于编码模式的信息来发送。
[0306] 信息800指示关于通过划分当前编码单元的预测单元而获得的分区的模式的信息,其中,所述分区是用于对当前编码单元进行预测编码的数据单元。例如,可将尺寸为2N×2N的当前编码单元CU_0划分成以下分区中的任意一个:尺寸为2N×2N的分区802、尺寸为2N×N的分区804、尺寸为N×2N的分区806以及尺寸为N×N的分区808。这里,关于分区模式的信息800被设置来指示尺寸为2N×N的分区804、尺寸为N×2N的分区806以及尺寸为N×N 的分区808中的一个。
[0307] 信息810指示每个分区的预测模式。例如,信息810可指示对由信息800 指示的分区执行的预测编码的模式,即,帧内模式812、帧间模式814或跳过模式816。
[0308] 信息820指示当对当前编码单元执行变换时所基于的变换单元。例如,变换单元可以是第一帧内变换单元822、第二帧内变换单元824、第一帧间变换单元826或第二帧间变换单元828。
[0309] 视频解码设备200的图像数据和编码信息提取器220可根据每个较深层编码单元,提取并使用用于解码的信息800、810和820。
[0310] 图16是根据一个或更多个实施例的根据深度的较深层编码单元的示图。
[0311] 划分信息可用来指示深度的改变。划分信息指示当前深度的编码单元是否被划分成更低深度的编码单元。
[0312] 用于对深度为0且尺寸为2N_0×2N_0的编码单元900进行预测编码的预测单元910可包括以下分区模式的分区:尺寸为2N_0×2N_0的分区模式912、尺寸为2N_0×N_0的分区模式914、尺寸为N_0×2N_0的分区模式916和尺寸为N_0×N_0的分区模式918。图23仅示出了通过对称地划分预测单元910 而获得的分区模式912至918,但是分区模式不限于此,并且预测单元910 的分区可包括非对称分区、具有预定形状的分区和具有几何形状的分区。
[0313] 根据每种分区模式,对尺寸为2N_0×2N_0的一个分区、尺寸为2N_0×N_0 的两个分区、尺寸为N_0×2N_0的两个分区和尺寸为N_0×N_0的四个分区重复地执行预测编码。可对尺寸为2N_0×2N_0、N_0×2N_0、2N_0×N_0和 N_0×N_0的分区执行帧内模式和帧间模式下的预测编码。可仅对尺寸为 2N_0×2N_0的分区执行跳过模式下的预测编码。
[0314] 如果在分区模式912至916中的一个分区模式中编码误差最小,则可不将预测单元910划分到更低深度。
[0315] 如果在分区模式918中编码误差最小,则深度从0改变到1以在操作920 中划分分区模式918,并对深度为2且尺寸为N_0×N_0的编码单元930重复地执行编码来搜索最小编码误差。
[0316] 用于对深度为1且尺寸为2N_1×2N_1(=N_0×N_0)的编码单元930进行预测编码的预测单元940可包括以下分区模式的分区:尺寸为2N_1×2N_1 的分区模式942、尺寸为2N_1×N_1的分区模式944、尺寸为N_1×2N_1的分区模式946以及尺寸为N_1×N_1的分区模式948。
[0317] 如果在分区模式948中编码误差最小,则深度从1改变到2以在操作950 中划分分区模式948,并对深度为2且尺寸为N_2×N_2的编码单元960重复执行编码来搜索最小编码误差。
[0318] 当最大深度是d时,根据每个深度的划分操作可被执行直到深度变成 d-1,并且划分信息可被编码直到深度是0到d-2中的一个。换句话说,当编码被执行直到在与d-2的深度对应的编码单元在操作970中被划分之后深度是d-1时,用于对深度为d-1且尺寸为2N_(d-1)×2N_(d-1)的编码单元980进行预测编码的预测单元990可包括以下分区模式的分区:尺寸为 2N_(d-1)×2N(d-1)的分区模式992、尺寸为2N_(d-1)×N(d-1)的分区模式994、尺寸为N_(d-1)×2N(d-1)的分区模式996和尺寸为N_(d-1)×N(d-1)的分区模式 998。
[0319] 可对分区模式992至998之中的尺寸为2N_(d-1)×2N_(d-1)的一个分区、尺寸为2N_(d-1)×N_(d-1)的两个分区、尺寸为N_(d-1)×2N_(d-1)的两个分区、尺寸为N_(d-1)×N_(d-1)的四个分区重复地执行预测编码,以搜索具有最小编码误差的分区模式。
[0320] 即使当分区模式998具有最小编码误差时,由于最大深度是d,因此深度为d-1的编码单元CU_(d-1)不再被划分到更低深度,构成当前LCU 900的编码单元的深度被确定为d-1,并且当前LCU 900的分区模式可被确定为 N_(d-1)×N(d-1)。此外,由于最大深度是d,并且具有最低深度d-1的SCU 980 不再被划分到更低深度,因此不设置SCU 980的划分信息。
[0321] 数据单元999可以是用于当前LCU的“最小单元”。根据一个或更多个实施例的最小单元可以是通过将SCU 980划分成4份而获得的正方形数据单元。通过重复地执行编码,视频编码设备100可通过比较根据编码单元900的深度的编码误差来选择具有最小编码误差的深度以确定深度,并将对应分区模式和预测模式设置为所述深度的编码模式。
[0322] 这样,在所有深度1至d中对根据深度的最小编码误差进行比较,并且具有最小编码误差的深度可被确定为深度。深度、预测单元的分区模式和预测模式可作为关于编码模式的信息被编码并被发送。另外,由于编码单元从深度0被划分到深度,因此仅深度的划分信息被设置为0,并且除了深度以外的深度的划分信息被设置为1。
[0323] 视频解码设备200的图像数据和编码信息提取器220可提取并使用关于编码单元900的深度和预测单元的信息,来对分区912进行解码。视频解码设备200可通过使用根据深度的划分信息,将划分信息为0的深度确定为深度,并且使用关于对应深度的编码模式的信息来进行解码。
[0324] 图17至图19是用于描述根据一个或更多个实施例的编码单元1010、预测单元1060和变换单元1070之间的关系的示图。
[0325] 编码单元1010是LCU中的与由视频编码设备100确定的深度对应的具有树结构的编码单元。预测单元1060是每个编码单元1010中的预测单元的分区,变换单元1070是每个编码单元1010的变换单元。
[0326] 当在编码单元1010中LCU的深度是0时,编码单元1012和编码单元 1054的深度是1,编码单元1014、1016、1018、1028、1050和1052的深度是2,编码单元1020、1022、1024、
1026、1030、1032和1048的深度是3,编码单元1040、1042、1044和1046的深度是4。
[0327] 在预测单元1060中,通过划分编码单元1010中的编码单元来获得一些编码单元1014、1016、1022、1032、1048、1050、1052和1054。换句话说,编码单元1014、1022、1050和
1054中的分区模式的尺寸是2N×N,编码单元1016、1048和1052中的分区模式的尺寸是N×
2N,编码单元1032的分区模式的尺寸是N×N。编码单元1010的预测单元和分区小于或等于每个编码单元。
[0328] 在小于编码单元1052的数据单元中的变换单元1070中,对编码单元 1052的图像数据执行变换或逆变换。另外,在尺寸和形状方面,变换单元1070 中的编码单元1014、1016、1022、1032、1048、1050和1052不同于预测单元1060中的编码单元1014、1016、1022、
1032、1048、1050和1052。换句话说,视频编码设备100和视频解码设备200可对同一编码单元中的数据单元独立地执行帧内预测、运动估计、运动补偿、变换和逆变换。
[0329] 因此,对LCU的每个区域中的具有分层结构的每个编码单元递归地执行编码来确定最优编码单元,从而可获得具有递归树结构的编码单元。编码信息可包括关于编码单元的划分信息、关于分区模式的信息、关于预测模式的信息和关于变换单元的尺寸的信息。表1示出可由视频编码设备100和视频解码设备200设置的编码信息。
[0330] [表1]
[0331]
[0332]
[0333] 视频编码设备100的输出器130可输出关于具有树结构的编码单元的编码信息,视频解码设备200的图像数据和编码信息提取器220可从接收到的比特流提取关于具有树结构的编码单元的编码信息。
[0334] 划分信息指示是否将当前编码单元划分成更低深度的编码单元。如果当前深度d的划分信息是0,则当前编码单元不再被划分成更低深度的深度是最终深度,从而可针对所述最终深度来定义关于分区模式、预测模式和变换单元的尺寸的信息。如果当前编码单元根据划分信息被进一步划分,则对更低深度的四个划分编码单元独立地执行编码。
[0335] 预测模式可以是帧内模式、帧间模式和跳过模式中的一种。可针对所有分区模式定义帧内模式和帧间模式,仅针对尺寸为2N×2N的分区模式定义跳过模式。
[0336] 关于分区模式的信息可指示通过对称地划分预测单元的高度或宽度而获得的尺寸为2N×2N、2N×N、N×2N和N×N的对称分区模式,以及通过非对称地划分预测单元的高度或宽度而获得的尺寸为2N×nU、2N×nD、nL×2N和 nR×2N的非对称分区模式。可通过按1:3和3:1划分预测单元的高度来分别获得尺寸为2N×nU和2N×nD的非对称分区模式,可通过按1:3和3:1划分预测单元的宽度来分别获得尺寸为nL×2N和nR×2N的非对称分区模式。
[0337] 可将变换单元的尺寸设置成帧内模式下的两种类型和帧间模式下的两种类型。换句话说,如果变换单元的划分信息是0,则变换单元的尺寸可以是 2N×2N,即当前编码单元的尺寸。如果变换单元的划分信息是1,则可通过对当前编码单元进行划分来获得变换单元。另外,如果尺寸为2N×2N的当前编码单元的分区模式是对称分区模式,则变换单元的尺寸可以是N×N,如果当前编码单元的分区模式是非对称分区模式,则变换单元的尺寸可以是 N/2×N/2。
[0338] 关于具有树结构的编码单元的编码信息可包括与深度对应的编码单元、预测单元和最小单元中的至少一个。与深度对应的编码单元可包括包含相同编码信息的预测单元和最小单元中的至少一个。
[0339] 因此,通过比较邻近数据单元的编码信息来确定邻近数据单元是否被包括在与深度对应的同一编码单元中。另外,通过使用数据单元的编码信息来确定与深度对应的对应编码单元,并因此可确定LCU中的深度的分布。
[0340] 因此,如果基于邻近数据单元的编码信息来对当前编码单元进行预测,则可直接参考并使用与当前编码单元邻近的较深层编码单元中的数据单元的编码信息。
[0341] 可选地,如果基于邻近数据单元的编码信息来对当前编码单元进行预测,则使用数据单元的编码信息来搜索与当前编码单元邻近的数据单元,并可参考搜索到的邻近编码单元以对当前编码单元进行预测。
[0342] 图20是用于描述根据表1的编码模式信息的编码单元、预测单元和变换单元之间的关系的示图。
[0343] LCU 1300包括具有多个深度的编码单元1302、1304、1306、1312、1314、 1316和1318。这里,由于编码单元1318是具有深度的编码单元,因此划分信息可以被设置成0。可将关于尺寸为2N×2N的编码单元1318的分区模式的信息设置成以下分区模式中的一种:尺寸为2N×2N的分区模式1322、尺寸为2N×N的分区模式1324、尺寸为N×2N的分区模式1326、尺寸为N×N 的分区模式1328、尺寸为2N×nU的分区模式1332、尺寸为2N×nD的分区模式
1334、尺寸为nL×2N的分区模式1336以及尺寸为nR×2N的分区模式1338。
[0344] 变换单元的划分信息(TU尺寸标记)是一类变换索引。与变换索引对应的变换单元的尺寸可根据编码单元的预测单元类型或分区模式而改变。
[0345] 例如,当分区模式被设置成对称(即,分区模式1322、1324、1326或 1328)时,如果变换单元的TU尺寸标记是0,则设置尺寸为2N×2N的变换单元1342,如果TU尺寸标记是1,则设置尺寸为N×N的变换单元1344。
[0346] 当分区模式被设置成非对称(例如,分区模式1332、1334、1336或1338) 时,如果TU尺寸标记是0,则设置尺寸为2N×2N的变换单元1352,如果TU 尺寸标记是1,则设置尺寸为N/2×N/2的变换单元1354。
[0347] 参照图19,TU尺寸标记是具有值0或1的标记,但是TU尺寸标记不限于1比特,在TU尺寸标记从0增加的同时,变换单元可被分层划分以具有树结构。变换单元的划分信息(TU尺寸标记)可以是变换索引的示例。
[0348] 在这种情况下,根据一个或更多个实施例,可通过使用变换单元的TU 尺寸标记以及变换单元的最大尺寸和最小尺寸来表示实际上已使用的变换单元的尺寸。视频编码设备100能够对最大变换单元尺寸信息、最小变换单元尺寸信息和最大TU尺寸标记进行编码。对最大变换单元尺寸信息、最小变换单元尺寸信息和最大TU尺寸标记进行编码的结果可被插入SPS。视频解码设备200可通过使用最大变换单元尺寸信息、最小变换单元尺寸信息和最大TU尺寸标记来对视频进行解码。
[0349] 例如,(a)如果当前编码单元的尺寸是64×64并且最大变换单元尺寸是 32×32,则(a-1)当TU尺寸标记为0时,变换单元的尺寸可以是32×32,(a-2) 当TU尺寸标记为1时,变换单元的尺寸可以是16×16,(a-3)当TU尺寸标记为2时,变换单元的尺寸可以是8×8。
[0350] 作为另一示例,(b)如果当前编码单元的尺寸是32×32并且最小变换单元尺寸是32×32,则(b-1)当TU尺寸标记为0时,变换单元的尺寸可以是 32×32。这里,由于变换单元的尺寸不能够小于32×32,因此TU尺寸标记不能够被设置为除了0以外的值。
[0351] 作为另一示例,(c)如果当前编码单元的尺寸是64×64并且最大TU尺寸标记为1,则TU尺寸标记可以是0或1。这里,TU尺寸标记不能够被设置为除了0或1以外的值。
[0352] 因此,如果定义最大TU尺寸标记为“MaxTransformSizeIndex”,最小变换单元尺寸为“MinTransformSize”,并且当TU尺寸标记为0时的变换单元尺寸为“RootTuSize”,则可通过等式(1)来定义可在当前编码单元中确定的当前最小变换单元尺寸“CurrMinTuSize”:
[0353] CurrMinTuSize=max(MinTransformSize,RootTuSize/(2^MaxTransformSizeIndex)) …(1)
[0354] 与可在当前编码单元中确定的当前最小变换单元尺寸“CurrMinTuSize”相比,当TU尺寸标记为0时的变换单元尺寸“RootTuSize”可指示可在系统中选择的最大变换单元尺寸。在等式(1)中,“RootTuSize/(2∧MaxTransformSizeIndex)”指示当TU尺寸标记为0时的变换单元尺寸“RootTuSize”被划分了与最大TU尺寸标记对应的次数时的变换单元尺寸,“MinTransformSize”指示最小变换尺寸。因此,“RootTuSize/(2^MaxTransformSizeIndex)”和“MinTransformSize”之中较小的值可以是可在当前编码单元中确定的当前最小变换单元尺寸“CurrMinTuSize”。
[0355] 根据一个或更多个实施例,最大变换单元尺寸RootTuSize可根据预测模式的类型而改变。
[0356] 例如,如果当前预测模式是帧间模式,则可通过使用以下的等式(2)来确定“RootTuSize”。在等式(2)中,“MaxTransformSize”指示最大变换单元尺寸,“PUSize”指示当前预测单元尺寸:
[0357] RootTuSize=min(MaxTransformSize,PUSize)……(2)
[0358] 也就是说,如果当前预测模式是帧间模式,则当TU尺寸标记为0时的变换单元尺寸“RootTuSize”可以是最大变换单元尺寸和当前预测单元尺寸之中较小的值。
[0359] 如果当前分区单元的预测模式是帧内模式,则可通过使用以下的等式(3) 来确定“RootTuSize”。在等式(3)中,“PartitionSize”指示当前分区单元的尺寸:
[0360] RootTuSize=min(MaxTransformSize,PartitionSize)……(3)
[0361] 也就是说,如果当前预测模式是帧内模式,则当TU尺寸标记为0时的变换单元尺寸“RootTuSize”可以是最大变换单元尺寸和当前分区单元的尺寸之中较小的值。
[0362] 然而,根据分区单元中的预测模式的类型而改变的当前最大变换单元尺寸“RootTuSize”仅是示例,实施例不限于此。
[0363] 根据如参照图8至图20描述的基于具有树结构的编码单元的视频编码方法,针对树结构的每个编码单元对空间域的图像数据进行编码。根据基于具有树结构的编码单元的视频解码方法,针对每个LCU执行解码以重构空间域的图像数据。因此,可重构画面和视频(即,画面序列)。重构的视频可通过再现设备被再现,可被存储在存储介质中,或者可通过网络被发送。
[0364] 实施例可被编写为计算机程序,并可在使用计算机可读记录介质执行程序的通用数字计算机中被实现。计算机可读记录介质的示例包括磁存储介质 (例如,ROM、软盘硬盘等)和光学记录介质(例如,CD-ROM或DVD)。
[0365] 为了便于描述,参照图1a至图20描述的层间视频编码方法和/或视频编码方法将被称为“根据各种实施例的的视频编码方法”。另外,参照图1a至图 20描述的层间视频解码方法和/或视频解码方法将被称为“根据各种实施例的视频解码方法”。
[0366] 以上已参照图1a至图20描述的视频编码设备(包括层间视频编码设备 10、视频编码设备100或图像编码器400)将被称为“根据各种实施例的视频编码设备”。另外,已参照图1a至图20描述的视频解码设备(包括层间视频解码设备20、视频解码设备200或图像解码器
500)将被称为“根据各种实施例的视频解码设备”。
[0367] 现在将详细描述根据各种实施例的存储程序的计算机可读记录介质(例如,盘26000)。
[0368] 图21是根据一个或更多个实施例的存储有程序的盘26000的物理结构的示图。作为存储介质的盘26000可以是硬盘驱动器、致密盘只读存储器 (CD-ROM)盘、蓝光盘或数字多功能盘(DVD)。盘26000包括多个同心磁道Tr,其中,每个同心磁道Tr沿盘26000的圆周方向被划分成特定数量的扇区Se。在盘26000的特定区域中,可分配并存储执行如上所描述的量化参数确定方法、视频编码方法和视频解码方法的程序。
[0369] 现在将参照图22来描述使用存储以下程序的存储介质计算机系统,其中,所述程序用于执行如上所述的视频编码方法和视频解码方法。
[0370] 图22是通过使用盘26000来记录并读取程序的盘驱动器26800的示图。计算机系统26700可经由盘驱动器26800,将执行根据一个或更多个实施例的视频编码方法和视频解码方法中的至少一个的程序存储在盘26000中。为了在计算机系统26700中运行存储在盘
26000中的程序,可通过使用盘驱动器26800从盘26000读取程序并将程序发送到计算机系统26700。
[0371] 执行根据一个或更多个实施例的视频编码方法和视频解码方法中的至少一个的程序不仅可被存储在图21或图22中示出的盘26000中,还可被存储在存储卡、ROM卡带或固态驱动器(SSD)中。
[0372] 以下将描述应用了以上所描述的视频编码方法和视频解码方法的系统。
[0373] 图23是提供内容分发服务的内容供应系统11000的整体结构的示图。将通信系统的服务区域划分成预定尺寸的小区,并将无线基站11700、11800、 11900和12000分别安装在这些小区中。
[0374] 内容供应系统11000包括多个独立装置。例如,诸如计算机12100、个人数字助理(PDA)12200、视频相机12300和移动电话12500的多个独立装置经由互联网服务提供器11200、通信网络11400和无线基站11700、11800、 11900和12000连接到互联网11100。
[0375] 然而,内容供应系统11000不限于如图23中所示,并且装置可选择性地被连接到内容供应系统11000。多个独立装置可不经由无线基站11700、11800、 11900和12000而是直接连接到通信网络11400。
[0376] 视频相机12300是能够捕捉视频图像的成像装置,例如,数字视频相机。移动电话12500可采用各种协议(例如,个人数字通信(PDC)、码分多址 (CDMA)、宽带码分多址(W-CDMA)、全球移动通信系统(GSM)和个人手持电话系统(PHS))之中的至少一种通信方法。
[0377] 视频相机12300可经由无线基站11900和通信网络11400连接到流服务器11300。流服务器11300允许经由视频相机12300从用户接收到的内容经由实时广播被流传输。可使用视频相机12300或流服务器11300来对从视频相机12300接收到的内容进行编码。通过视频相机12300捕捉到的视频数据可经由计算机12100被发送到流服务器11300。
[0378] 通过相机12600捕捉到的视频数据也可经由计算机12100被发送到流服务器11300。与数码相机类似,相机12600是能够捕捉静止图像和视频图像两者的成像装置。可使用相机12600或计算机12100对通过相机12600捕捉到的视频数据进行编码。可将对视频执行编码和解码的软件存储在可由计算机12100访问的计算机可读记录介质(例如,CD-ROM盘、软盘、硬盘驱动器、SSD或存储卡)中。
[0379] 如果视频数据通过内置在移动电话12500中的相机被捕捉到,则可从移动电话12500接收视频数据。
[0380] 还可通过安装在视频相机12300、移动电话12500或相机12600中的大规模集成电路(LSI)系统来对视频数据进行编码。
[0381] 内容供应系统1100可对由用户使用视频相机12300、相机12600、移动电话12500或另一成像装置所记录的内容数据(例如,在音乐会期间记录的内容)进行编码,并将编码后的内容数据发送到流服务器11300。流服务器 11300可将编码后的内容数据以流传输内容的类型发送到请求内容数据的其它客户端。
[0382] 客户端是能够对编码后的内容数据进行解码的装置,例如,计算机 12100、PDA 12200、视频相机12300或移动电话12500。因此,内容供应系统11000允许客户端接收并再现编码后的内容数据。此外,内容供应系统 11000允许客户端实时接收编码后的内容数据并对编码后的内容数据进行解码和再现,从而能够进行个人广播。
[0383] 包括在内容供应系统11000中的多个独立装置的编码和解码操作可类似于根据一个或更多个实施例的视频编码设备和视频解码设备的编码和解码操作。
[0384] 现在将参照图24和图25更加详细地描述包括在根据一个或更多个实施例的内容供应系统11000中的移动电话12500。
[0385] 图24示出根据一个或更多个实施例的应用了视频编码方法和视频解码方法的移动电话12500的外部结构。移动电话12500可以是智能电话,其中,所述智能电话的功能不受限,并且所述智能电话的大量功能可被改变或扩展。
[0386] 移动电话12500包括可与图21的无线基站12000交换射频(RF)信号的内部天线12510,并包括用于显示由相机12530捕捉到的图像或经由天线 12510接收到并被解码的图像的显示屏12520(例如,液晶显示器(LCD)或有机发光二极管(OLED)屏幕)。移动电话12500包括包含有控制按钮和触摸面板的操作面板12540。如果显示屏12520是触摸屏,则操作面板12540 还包括显示屏12520的触摸感测面板。移动电话12500包括用于输出语音和声音的扬声器12580或另一类型声音输出单元、以及用于输入语音和声音的麦克12550或另一类型声音输入单元。移动电话12500还包括用于捕捉视频和静止图像的相机12530,诸如电荷耦合器件(CCD)相机。移动电话12500 还可包括:存储介质12570,用于存储通过相机12530捕捉到的、经由电子邮件接收到的、或根据各种方式获得的编码/解码数据(例如,视频或静止图像);插槽12560,存储介质12570经由插槽12560被装入移动电话12500中。存储介质
12570可以是闪存,例如,包括在塑料壳中的安全数字(SD)卡或电可擦除可编程只读存储器(EEPROM)。
[0387] 图25示出根据一个或更多个实施例的移动电话12500的内部结构。为了系统地控制包括显示屏12520和操作面板12540的移动电话12500的部件,供电电路12700、操作输入控制器12640、图像编码器12720、相机接口12630、 LCD控制器12620、图像解码器12690、复用器/解复用器12680、记录器/读取器12670、调制器/解调器12660以及声音处理器12650经由同步总线12730 被连接到中央控制器12710。
[0388] 如果用户操作电源按钮,并从“电源关闭”状态设置为“电源开启”状态,则供电电路12700从电池组向移动电话12500的所有部件供电,从而将移动电话12500设置为操作模式。
[0389] 中央控制器12710包括中央处理器(CPU)、ROM和RAM。
[0390] 在移动电话12500将通信数据发送到外部的同时,在中央控制器12710 的控制下,数字信号被移动电话12500产生。例如,声音处理器12650可产生数字声音信号,图像编码器12720可产生数字图像信号,并且消息的文本数据可经由操作面板12540和操作输入控制器
12640被产生。当在中央控制器12710的控制下数字信号被发送到调制器/解调器12660时,调制器/解调器 12660对数字信号的频带进行调制,并且通信电路12610对经过频带调制数字声音信号执行数模转换(DAC)和频率转换。从通信电路12610输出的发送信号可经由天线
12510被发送到语音通信基站或无线基站12000。
[0391] 例如,当移动电话12500处于会话模式时,在中央控制器12710的控制下,经由麦克风12550获得的声音信号被声音处理器12650变换成数字声音信号。数字声音信号可经由调制器/解调器12660和通信电路12610被变换成发送信号,并可经由天线12510被发送。
[0392] 当文本消息(例如,电子邮件)在数据通信模式下被发送时,文本消息的文本数据经由操作面板12540被输入,并经由操作输入控制器12640被发送到中央控制器12710。在中央控制器12710的控制下,文本数据经由调制器/解调器元12660和通信电路12610被变换成发送信号,并经由天线12510 被发送到无线基站12000。
[0393] 为了在数据通信模式下发送图像数据,由相机12530捕捉到的图像数据经由相机接口12630被提供给图像编码器12720。捕捉到的图像数据可经由相机接口12630和LCD控制器12620被直接显示在显示屏12520上。
[0394] 图像编码器12720的结构可与以上描述的根据一个或更多个实施例的视频编码设备的结构对应。图像编码器12720可根据基于以上描述的根据一个或更多个实施例的视频编码方法,将从相机12530接收到的图像数据变换为压缩并被编码的图像数据,然后将编码后的图像数据输出到复用器/解复用器 12680。在相机12530的记录操作期间,由移动电话12500的麦克风12550获得的声音信号可经由声音处理器12650被变换成数字声音数据,并且数字声音数据可被发送到复用器/解复用器12680。
[0395] 复用器/解复用器12680对从图像编码器12720接收到的编码后的图像数据与从声音处理器12650接收到的声音数据一起进行复用。对数据进行复用的结果可经由调制器/解调器12660和通信电路12610被变换成发送信号,然后可经由天线12510被发送。
[0396] 当移动电话12500从外部接收通信数据时,可对经由天线12510接收到的信号执行频率恢复和ADC以将信号变换成数字信号。调制器/解调器12660 对数字信号的频带进行调制。根据频带调制后的数字信号的类型将所述数字信号发送到视频解码单元12690、声音处理器12650或LCD控制器12620。
[0397] 在会话模式下,移动电话12500对经由天线12510接收到的信号进行放大,并通过对放大后的信号执行频率转换和ADC来获得数字声音信号。在中央控制器12710的控制下,接收到的数字声音信号经由调制器/解调器12660 和声音处理器12650被变换成模拟声音信号,并且模拟声音信号经由扬声器 12580被输出。
[0398] 当在数据通信模式下时,接收在互联网网站上访问的视频文件的数据,经由器调制/解调器12660将经由天线12510从无线基站12000接收到的信号输出为复用数据,并将复用数据发送到复用器/解复用器12680。
[0399] 为了对经由天线12510接收到的复用数据进行解码,复用器/解复用器 12680将复用数据解复用成编码后的视频数据流和编码后的音频数据流。经由同步总线12730,编码后的视频数据流和编码后的音频数据流分别被提供给视频解码单元12690和声音处理器12650。
[0400] 图像解码器12690的结构可与以上描述的根据一个或更多个实施例的视频解码设备的结构对应。图像解码器12690可通过使用以上描述的根据一个或更多个实施例的视频解码方法,对编码后的视频数据进行解码来获得重构的视频数据,并经由LCD控制器12620将重构的视频数据提供给显示屏 12520。
[0401] 因此,可将在互联网网站上访问的视频文件的数据显示在显示屏12520 上。同时,声音处理器12650可将音频数据变换成模拟声音信号,并将模拟声音信号提供给扬声器12580。因此,也可经由扬声器12580再现在互联网网站上访问的视频文件中包含的音频数据。
[0402] 移动电话12500或另一类型的通信终端可以是包括根据一个或更多个实施例的视频编码设备和视频解码设备两者的收发终端,可以是仅包括所述视频编码设备的收发终端,或者可以是仅包括所述视频解码设备的收发终端。
[0403] 根据一个或更多个实施例的通信系统不限于以上参照图24描述的通信系统。例如,图26示出根据一个或更多个实施例的采用通信系统的数字广播系统。图26的数字广播系统可通过使用根据一个或更多个实施例的视频编码设备和视频解码设备来接收经由卫星或地面网络发送的数字广播。
[0404] 具体地,广播站12890通过使用无线电波将视频数据流发送到通信卫星或广播卫星12900。广播卫星12900发送广播信号,广播信号经由家用天线 12860被发送到卫星广播接收器。在每个房屋中,可通过TV接收器12810、机顶盒12870或另一装置对编码后的视频流进行解码和再现。
[0405] 当根据一个或更多个实施例的视频解码设备被实现在再现设备12830中时,再现设备12830可对记录在存储介质12820(诸如用于重构数字信号的盘或存储卡)上的编码后的视频流进行解析和解码。因此,可在例如监视器 12840上再现重构的视频信号
[0406] 在被连接到用于卫星/地面广播的天线12860或用于接收有线电视(TV) 广播的电缆天线12850的机顶盒12870中,可安装根据一个或更多个实施例的视频解码设备。从机顶盒12870输出的数据也可被再现在TV监视器12880 上。
[0407] 作为另一示例,可将根据一个或更多个实施例的视频解码设备安装在TV 接收器12810中,而不是机顶盒12870中。
[0408] 具有适当天线12910的汽车12920可接收从图21的卫星12900或无线基站11700发送的信号。可在安装在汽车12920中的汽车导航系统12930的显示屏上再现解码后的视频。
[0409] 视频信号可由根据一个或更多个实施例的视频编码设备来编码,然后可被存储在存储介质中。具体地,可由DVD记录器将图像信号存储在DVD盘12960中,或可由硬盘记录器12950将图像信号存储在硬盘中。作为另一示例,可将视频信号存储在SD卡12970中。如果硬盘记录器12950包括根据一个或更多个实施例的视频解码设备,则记录在DVD盘12960、SD卡
12970 或另一存储介质上的视频信号可被再现于TV监视器12880上。
[0410] 汽车导航系统12930可不包括图26的相机12530以及图26的相机接口 12630和图像编码器12720。例如,计算机12100和TV接收器12810可不包括的相机12530、相机接口12630和图像编码器12720。
[0411] 图27是示出根据一个或更多个实施例的使用视频编码设备和视频解码设备的云计算系统的网络结构的示图。
[0412] 云计算系统可包括云计算服务器14000、用户数据库(DB)14100、多个计算资源14200和用户终端。
[0413] 响应于来自用户终端的请求,云计算系统经由数据通信网络(例如,互联网)提供多个计算资源14200的点播外包服务。在云计算环境下,服务提供商通过使用虚拟化技术组合位于不同的物理位置的数据中心处的计算资源,为用户提供想要的服务。服务用户不必将计算资源(例如,应用、存储器、操作系统(OS)和安全)安装在他/她拥有的终端中以使用它们,但可在想要的时间点在通过虚拟化技术产生的虚拟空间中从服务之中选择和使用想要的服务。
[0414] 被指定的服务用户的用户终端经由包括互联网和移动通信网络的数据通信网络被连接到云计算服务器14000。可从云计算服务器14000向用户终端提供云计算服务,特别是视频再现服务。用户终端可以是能够被连接到互联网的各种类型的电子装置,例如,桌上型PC 14300、智能TV 14400、智能电话14500、笔记本计算机14600、便携式多媒体播放器(PMP)14700、平板 PC 14800等。
[0415] 云计算服务器14000可组合分布在云网络中的多个计算资源14200,并向用户终端提供组合的结果。所述多个计算资源14200可包括各种数据服务,并可包括从用户终端上传的数据。如上所描述的,云计算服务器14000可通过根据虚拟化技术组合分布在不同区域中的视频数据库来向用户终端提供想要的服务。
[0416] 将关于已经订购云计算服务的用户的用户信息存储在用户DB 14100中。用户信息可包括用户的日志信息、地址、姓名和个人信用信息。用户信息还可包括视频的索引。这里,所述索引可包括已经被再现的视频的列表、正在被再现的视频的列表、之前正被再现的视频的暂停点等。
[0417] 可在用户装置之间共享存储在用户DB 14100中的关于视频的信息。例如,当响应于来自笔记本计算机14600的请求将视频服务提供给笔记本计算机14600时,视频服务的再现历史被存储在用户DB 14100中。当从智能电话 14500接收到用于再现此视频服务的请求时,云计算服务器14000基于用户 DB 14100搜索并再现此视频服务。当智能电话14500从云计算服务器14000 接收到视频数据流时,通过对视频数据流进行解码来再现视频的操作与以上参照图24描述的移动电话12500的操作类似。
[0418] 云计算服务器14000可参考存储在用户DB 14100中的想要的视频服务的再现历史。例如,云计算服务器14000从用户终端接收用于再现存储在用户DB 14100中的视频的请求。如果此视频之前被再现过,则由云计算服务器 14100执行的对此视频进行流传输的方法可根据来自用户终端的请求(即,根据是将从视频的起点还是视频的暂停点开始再现此视频)而不同。例如,如果用户终端请求从视频的起点开始再现视频,则云计算服务器14000将从视频的第一帧开始的视频的流数据发送到用户终端。如果用户终端请求从视频的暂停点开始再现视频,则云计算服务器14000将从与暂停点对应的帧开始的视频的流数据发送到用户终端。
[0419] 在此情况下,用户终端可包括如以上参照图1a至图20描述的视频解码设备。如另一示例,用户终端可包括如以上参照图1a至图20描述的视频编码设备。可选地,用户终端可包括如以上参照图1a至图20描述的视频解码设备和视频编码设备两者。
[0420] 以上已经参照图21至图27描述了以上参照图1a至图20描述的根据一个或更多个实施例的视频编码方法、视频解码方法、视频编码设备和视频解码设备的各种应用。然而,根据各种实施例的将以上参照图1a至图20描述的视频编码方法和视频解码方法存储在存储介质中的方法,或者将视频编码设备和视频解码设备实现在装置中的方法不限于以上参照图21至图27描述的实施例。
[0421] 应理解,在此描述的示例性实施例应被视为仅是描述性的意义,而不是为了限制的目的。对每个实施例内的特征或方面的描述通常被认为可用于其它实施例中的其它类似特征或方面。
[0422] 虽然已参照特征描述了本发明的一个或更多个实施例,但是本领域的普通技术人员将理解,在不脱离由权利要求限定的本发明的精神和范围的情况下,可在其中进行形式和细节上的各种改变。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈