CN106464889A - 执行基于子块的预测的层间视频解码方法和层间视频编码方法及其设备 - Google Patents

执行基于子块的预测的层间视频解码方法和层间视频编码方法及其设备 Download PDF

Info

Publication number
CN106464889A
CN106464889A CN201580023943.9A CN201580023943A CN106464889A CN 106464889 A CN106464889 A CN 106464889A CN 201580023943 A CN201580023943 A CN 201580023943A CN 106464889 A CN106464889 A CN 106464889A
Authority
CN
China
Prior art keywords
block
sub
layer
ground floor
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
CN201580023943.9A
Other languages
English (en)
Inventor
李振荣
朴慜佑
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN106464889A publication Critical patent/CN106464889A/zh
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/527Global motion vector estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/187Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding

Abstract

提供了一种对层间视频进行解码的方法,包括以下步骤:从比特流获得运动继承信息;如果运动继承信息指示第一层中的与第二层中的当前块相应的块的运动信息可用作第二层的运动信息,则确定第一层块的与当前块的子块相应的子块之中的包括第一层块的预定位置处的像素的子块的运动信息是否可用;如果包括第一层块的预定位置处的像素的子块的运动信息可用,则获得第一层块的与当前块的子块相应的子块的运动信息;基于获得的第一层块的与当前块的子块相应的子块的运动信息来确定当前块的子块的运动信息。

Description

执行基于子块的预测的层间视频解码方法和层间视频编码方 法及其设备
技术领域
本公开涉及一种层间视频编码方法和层间视频解码方法。
背景技术
随着用于再现和存储高分辨率或高质量视频内容的硬件正被开发和提供,对于用于有效地对高分辨率或高质量视频内容进行编码或解码的视频编解码器的需求正在增加。根据传统的视频编解码器,基于具有预定尺寸的宏块,根据受限的编码方法来对视频进行编码。
空间域的图像数据经由频率变换被变换为频域的系数。根据视频编解码器,将图像划分为具有预定尺寸的块,对每个块执行离散余弦变换(DCT),并按照块单元对频率系数进行编码,以进行频率变换的快速计算。与空间域的图像数据相比,频域的系数容易被压缩。具体地,由于根据经由视频编解码器的帧间预测或帧内预测的预测误差来表示空间域的图像像素值,因此当对预测误差执行频率变换时,大量数据可能被变换为0。根据视频编解码器,可通过使用小规模的数据来代替连续并重复产生的数据,从而减少数据量。
多层视频编解码器对第一层视频和至少一个第二层视频进行编码和解码。通过去除时间/空间冗余以及第一层视频和第二层视频的层冗余,可减少第一层视频和第二层视频的数据量。
发明内容
技术问题
当基于子块的层间预测被执行时,根据子块执行对运动信息的预测并且因此可执行更加准确的预测,但是由于根据子块执行预测以及编码/解码处理,因此运算复杂度会增加。
技术方案
根据实施例,提供了一种用于使用子块执行层间预测的更简单的预测方法,从而降低了编码/解码设备的运算复杂度。
本公开的技术方案不限于上述特征,其它未描述的技术方案基于以下描述对于本领域普通技术人员而言会变得清楚。
根据本公开的一方面,提供了一种层间视频解码方法,包括:从比特流获得运动继承信息;当运动继承信息指示第一层的与第二层的当前块相应的块的运动信息可用作第二层的运动信息时,确定第一层的所述块的与当前块的子块相应的子块之中的包括第一层的所述块的预定位置处的像素的子块的运动信息是否可用;当确定包括第一层的所述块的预定位置处的像素的子块的运动信息可用时,获得第一层的所述块的与当前块的子块相应的子块的运动信息;基于获得的第一层的所述块的与当前块的子块相应的子块的运动信息来确定当前块的所述子块的运动信息。
附图说明
图1a是根据实施例的层间视频编码设备的框图。
图1b是根据实施例的层间视频编码方法的流程图。
图2a是根据实施例的层间视频解码设备的框图。
图2b是根据实施例的层间视频解码方法的流程图。
图3a是根据实施例的层间预测结构的示图。
图3b示出根据实施例的多层视频。
图3c示出实施例的包括多层视频的编码数据的网络抽象层(NAL)单元。
图4a示出根据实施例的确定运动继承候选的处理。
图4b是用于描述根据实施例的通过视点间预测的视点间候选以及用于视点间预测的视差矢量的示图。
图4c示出根据实施例的包括在合并候选列表中的空间候选。
图4d示出根据实施例的包括在合并候选列表中的时间候选。
图5a和图5b是用于描述根据实施例的基于子块的层间运动预测的示图。
图6a至图6c示出根据实施例的通过使用层间候选来形成合并候选列表的处理。
图7a示出根据实施例的序列参数集(SPS)多视点扩展信息。
图7b是形成合并候选列表的处理的语法表的示例。
图8是根据实施例的基于根据树结构的编码单元的视频编码设备的框图。
图9是根据实施例的基于根据树结构的编码单元的视频解码设备的框图。
图10是用于描述根据本公开的各种实施例的编码单元的概念的示图。
图11是根据本公开的各种实施例的基于编码单元的图像编码器的框图。
图12是根据本公开的各种实施例的基于编码单元的图像解码器的框图。
图13是示出根据本公开的各种实施例的编码单元以及分区的示图。
图14是用于描述根据本公开的各种实施例的编码单元与变换单元之间的关系的示图。
图15是用于描述根据本公开的实施例的编码信息的示图。
图16是根据本公开的各种实施例的编码单元的示图。
图17至图19是用于描述根据本公开的各种实施例的编码单元、预测单元和变换单元之间的关系的示图。
图20是用于描述根据表1的编码模式信息的编码单元、预测单元、和变换单元之间的关系的示图。
图21是根据各种实施例的存储程序的盘的物理结构的示图。
图22是通过使用盘来记录和读取程序的盘驱动器的示图。
图23是提供内容分发服务的内容供应系统的整体结构的示图。
图24和图25分别是根据各种实施例的应用了视频编码方法和视频解码方法的移动电话的外部结构和内部结构的示图。
图26是根据本公开的应用了通信系统的数字广播系统的示图。
图27是示出根据本公开的各种实施例的使用视频编码设备和视频解码设备的云计算系统的网络结构的示图。
最佳模式
根据本公开的一方面,提供了一种层间视频解码方法,包括:从比特流获得运动继承信息;当运动继承信息指示第一层的与第二层的当前块相应的块的运动信息可用作第二层的运动信息时,确定第一层的所述块的与当前块的子块相应的子块之中的包括第一层的所述块的预定位置处的像素的子块的运动信息是否可用;当确定包括第一层的所述块的预定位置处的像素的子块的运动信息可用时,获得第一层的所述块的与当前块的子块相应的子块的运动信息;基于获得的第一层的所述块的与当前块的子块相应的子块的运动信息来确定当前块的子块的运动信息。
所述预定位置处的像素可以是位于第一层的所述块的中心的像素。
获得第一层的所述块的与当前块的子块相应的子块的运动信息的步骤可包括:获得包括在第一层的所述块的与当前块的子块相应的子块之中的具有可用运动信息的子块的运动信息。
确定当前块的子块的运动信息的步骤可包括:当第一层的所述块的与当前块的子块相应的子块的运动信息可用时,基于第一层的所述块的与当前块的子块相应的子块的运动信息来确定当前块的子块的运动信息。
确定当前块的子块的运动信息的步骤可包括:当第一层的所述块的与当前块的子块相应的子块的运动信息不可用时,基于包括第一层的所述块的预定位置处的像素的子块的运动信息来确定当前块的子块的运动信息。
运动信息可包括参考列表、参考画面索引以及运动矢量预测值。
获得第一层的所述块的与当前块的子块相应的子块的运动信息的步骤还可包括:基于包括第一层的所述块的预定位置处的像素的子块的运动信息是否可用,确定包括作为合并候选的第一层的所述块的合并候选列表,其中,第一层的所述块包括第一层的所述块的与当前块的所述子块相应的子块。
确定合并候选列表的步骤可包括:当包括第一层的所述块的预定位置处的像素的子块的运动信息与包括在合并候选列表中且处于另一模式的合并候选的运动信息不同时,确定包括作为合并候选的第一层的所述块的合并候选列表。
确定合并候选列表的步骤可包括:当包括第一层的所述块的预定位置处的像素的子块的运动信息与当前块的邻近块的运动信息不同时,确定包括作为合并候选的所述邻近块的合并候选列表。
层间视频可包括多个视点的深度图像和纹理图像,并且第二层可以是深度图像,第一层可以是与深度图像相应的纹理图像。
层间视频可包括多个视点的纹理图像,并且第二层可以是所述多个视点的纹理图像之中的一个视点的纹理图像,第一层是所述多个视点的纹理图像之中的与第二层的视点不同的另一视点的纹理图像。
根据本公开的另一方面,提供了一种层间视频解码设备,包括:获得器,被配置为从比特流获得运动继承信息;解码器,被配置为当运动继承信息指示第一层的与第二层的当前块相应的块的运动信息可用作第二层的运动信息时,确定第一层的所述块的与当前块的子块相应的子块之中的包括第一层的所述块的预定位置处的像素的子块的运动信息是否可用;当确定包括第一层的所述块的预定位置处的像素的子块的运动信息可用时,获得第一层的所述块的与当前块的子块相应的子块的运动信息;基于获得的第一层的所述块的与当前块的子块相应的子块的运动信息来确定当前块的子块的运动信息。
根据本公开的另一方面,提供了一种层间视频编码方法,包括:确定第一层的块的与第二层的当前块的子块相应的子块之中的包括第一层的所述块的预定位置处的像素的子块的运动信息是否可用;当确定包括第一层的所述块的预定位置处的像素的子块的运动信息可用时,获得第一层的所述块的与当前块的子块相应的子块的运动信息;基于获得的第一层的所述块的与当前块的子块相应的子块的运动信息来确定当前块的子块的运动信息;将指示第一层的所述块的运动信息是否可用作第二层的运动信息的运动继承信息添加到比特流。
根据本公开的另一方面,提供了一种层间视频编码设备,包括:编码器,被配置为确定第一层的块的与第二层的当前块的子块相应的子块之中的包括第一层的所述块的预定位置处的像素的子块的运动信息是否可用;当确定包括第一层的所述块的预定位置处的像素的子块的运动信息可用时,获得第一层的所述块的与当前块的子块相应的子块的运动信息;基于获得的第一层的所述块的与当前块的子块相应的子块的运动信息来确定当前块的子块的运动信息;比特流产生器,被配置为将指示第一层的所述块的运动信息是否可用作第二层的运动信息的运动继承信息添加到比特流。
根据本公开的另一方面,提供了一种记录有程序的计算机可读记录介质,其中,所述程序在被计算机执行时执行所述层间视频解码方法。
具体实施方式
在下文中,将参照图1a至图7b描述根据实施例的用于执行基于子块的预测的层间视频编码技术和层间视频解码技术。此外,将参照图8至图20描述适用于层间视频编码和解码技术的根据实施例的基于具有树结构的编码单元的视频编码技术和视频解码技术。此外,将参照图21至图27描述视频编码方法和视频解码方法适用的一个或更多个实施例。
在下文中,“图像”可表示静止图像或视频的运动图像,或者表示视频本身。
在下文中,“样点”表示被分配给图像的采样位置并且将被处理的数据。例如,空间域的图像中的像素值或块的残差可以是样点。
在下文中,“当前块”可表示将被编码或解码的图像的块。
在下文中,“邻近块”表示与当前块邻近的至少一个编码块或解码块。例如,邻近块可位于当前块的顶部、右上侧、左侧、或左上侧。此外,邻近块可以是空间邻近块或时间邻近块。例如,时间邻近块可包括参考画面中与当前块相同位置的块,或该相同位置的块的邻近块。
在下文中,“层图像”表示特定视点或相同类型的图像。在多视点视频中,一个层图像表示在特定视点输入的纹理图像或深度图像。例如,在3维(3D)视频中,左视点纹理图像、右视点纹理图像以及深度图像均形成一个层图像。换句话说,左视点纹理图像可形成第一层图像,右视点纹理图像可形成第二层图像,并且深度图像可形成第三层图像。
首先,将参照图1a至图7b描述根据实施例的用于执行基于子块的预测的层间视频解码设备和方法以及层间视频编码设备和方法。
图1a是根据实施例的层间视频编码设备10的框图。图1b是根据实施例的层间视频编码方法的流程图。
参照图1a,层间视频编码设备10可包括编码器12和比特流产生器18。编码器12可包括第一层编码器14和第二层编码器16。
根据实施例的层间视频编码设备10可根据可伸缩视频编码方案,根据层对多个图像序列进行分类并对每个图像序列进行编码,并可输出包括根据层编码的数据的单独的流。层间视频编码设备10可将第一层图像序列和第二层图像序列编码到不同的层。
第一层编码器14可对第一层图像进行编码,并可输出包括第一层图像的编码数据的第一层流。
第二层编码器16可对第二层图像进行编码,并可输出包括第二层图像的编码数据的第二层流。
例如,根据基于空间可伸缩性的可伸缩视频编码方法,低分辨率图像可被编码为第一层图像,高分辨率图像可被编码为第二层图像。第一层图像的编码结果被输出为第一层流,第二层图像的编码结果被输出为第二层流。
根据实施例的层间视频编码设备10可通过复用器将第一层流和第二层流表示并编码为一个比特流。
作为另一示例,多视点视频可根据可伸缩视频编码方案而被编码。左视点图像可被编码为第一层图像,右视点图像可被编码为第二层图像。可选择地,中心视点图像、左视点图像和右视点图像均可被编码,其中,中心视点图像被编码为第一层图像,左视点图像被编码为第二层图像,右视点图像被编码为第三层图像。可选择地,中心视点纹理图像、中心视点深度图像、左视点纹理图像、左视点深度图像、右视点纹理图像和右视点深度图像可被分别编码为第一层图像、第二层图像、第三层图像、第四层图像、第五层图像和第六层图像。作为另一示例,中心视点纹理图像、中心视点深度图像、左视点深度图像、左视点纹理图像、右视点深度图像和右视点纹理图像可被分别编码为第一层图像、第二层图像、第三层图像、第四层图像、第五层图像和第六层图像。
作为另一示例,可伸缩视频编码方法可根据基于时间可伸缩性的时间分层预测而被执行。包括通过对基本帧率的图像进行编码而产生的编码信息的第一层流可被输出。可根据帧率对时间级别进行分类,并可根据层对每个时间级别进行编码。通过参考基本帧率的图像对更高帧率的图像进行进一步编码,包括高速帧率的编码信息的第二层流可被输出。
此外,可对第一层以及多个扩展层(第二层至第K层)执行可伸缩视频编码。在存在至少三个扩展层时,第一层图像至第K层图像可被编码。因此,第一层图像的编码结果可被输出为第一层流,第一层图像至第K层图像的编码结果可分别被输出为第一层流至第K层流。
根据各种实施例的层间视频编码设备10可执行参考单个层的图像以预测当前图像的帧间预测。通过执行帧间预测,可从与第一层(基本层)相应的区域预测出指示当前图像和参考图像之间的运动信息的运动矢量以及当前图像和参考图像之间的残差。
详细地讲,在形成多视点图像的每个层的图像之间存在高相关性。例如,由于相同视点的纹理图像和深度图像是在颜色和深度方面被分别表现的相同时间相同视点的图像,因此相同视点的纹理图像和深度图像之间存在相关性。此外,在同时输入的不同视点的纹理图像或不同视点的深度图像之间可能存在相关性。在不同时间输入的不同视点的纹理图像和深度图像之间也可能存在相关性。因此,在多视点图像中,存在各种类型的可用参考图像,并且可经由各种方法执行帧间预测。
换句话说,帧间预测不仅在一般单视点图像的帧间预测期间沿时间方向被执行,帧间预测可在多视点图像的帧间预测期间在具有不同视点的层之间沿视点方向被执行。此外,由于在彼此相应的纹理图像和深度图像之间存在相关性,因此可通过彼此参照来对纹理图像和深度图像进行帧间预测。一般而言,由于包括在纹理图像中的信息量高,因此可通过参照纹理图像来对深度图像进行帧间预测。
因此,层间视频编码设备10可通过使用运动参数继承(MPI)编码和解码方法来执行层间预测。此外,层间视频编码设备10可经由视点间运动矢量预测来执行层间预测。
MPI编码和解码方法是一种在对深度图像进行编码和解码的同时通过从相同视点的纹理图像预测运动信息来对深度图像进行编码和解码的方法。例如,纹理图像中的与深度图像的当前块位于相同点的参考块的运动信息可被预测为所述当前块的运动信息,以便执行MPI编码和解码方法。视点间运动矢量预测方法是视点间编码参数预测方法的代表性方法,并可通过从一个视点的已被编码的纹理图像的运动信息预测另一视点的纹理图像的运动信息来执行。
根据MPI编码和解码方法的MPI候选以及根据视点间运动矢量预测方法的视点间候选可包括在合并模式下所使用的合并候选中。
合并模式是一种分别从在帧间预测期间在当前块之前已被处理的先前块的参考列表、参考画面索引以及运动矢量预测因子(MVP)来推导当前块的参考列表、参考画面索引以及MVP的技术。可基于在合并模式下推导出的MVP来确定运动矢量值。图2a的编码器12和解码器44可通过搜索邻近块的运动信息来形成合并候选。编码器12可对指示被选为搜索邻近块的运动信息的结果的合并候选块的合并索引进行编码。
此外,层间视频编码设备10除了可使用MPI编码和解码方法和视点间预测方法之外,还可使用通过参照不同层的块来预测运动信息的各种预测方法。
运动信息可以是包括参考列表、参考画面索引以及MVP中的至少一项的信息。此外,运动信息可以是包括关于层间预测中的视差矢量的信息的信息。
此外,当根据实施例的层间视频编码设备10允许至少三个层(即,第一层至第三层)时,可根据多层预测结构执行第一层图像和第三层图像之间的层间预测以及第二层图像和第三层图像之间的层间预测。
在层间预测中,在当前图像的层的视点与参考图像的层的视点不同时,当前图像和与当前图像的层不同的层的参考图像之间的视差矢量可被获得,并且作为当前图像和通过使用该不同的层的参考图像而产生的预测图像之间的差分量的残差可被产生。
稍后将参照图3a描述层间预测结构。
根据实施例的层间视频编码设备10可根据层基于视频的每个图像的块执行编码。块可具有正方形形状、矩形形状或任意几何形状,并且不限于具有预定尺寸的数据单元。块可以是根据树结构的编码单元之中的最大编码单元、编码单元、预测单元或变换单元。包括树结构的编码单元的最大编码单元(LCU)可被不同地称为诸如编码树单元、编码块树、块树、根块树、编码树、编码根或树干。稍后将参照图8至图20描述基于根据树结构的编码单元的视频编码和解码方法。
可基于诸如编码单元、预测单元或变换单元的数据单元执行帧间预测和层间预测。
根据实施例的第一层编码器14可通过对第一层图像执行包括帧间预测或帧内预测的源编码操作来产生符号数据。符号数据表示每个编码参数的值以及残差的样值。
例如,编码器12可通过对第一层图像的数据单元的样点执行帧间预测或帧内预测、变换和量化来产生符号数据,并通过对符号数据执行熵编码来产生第一层流。
第二层编码器16可基于树结构的编码单元对第二层图像进行编码。第二层编码器16可通过对第二层图像的编码单元的样点执行帧间/帧内预测、变换和量化来产生符号数据,并通过对符号数据执行熵编码来产生第二层流。
根据实施例的第二层编码器16可通过使用第一层图像的预测信息来执行预测第二层图像的层间预测。为了通过层间预测结构对来自第二层图像序列的第二层原始图像进行编码,第二编码器16可通过使用第一层重建图像的运动信息确定第二层当前图像的运动信息,并通过基于确定的运动信息产生第二层预测图像以对第二层原始图像和第二层预测图像之间的预测误差进行编码。
同时,第二层编码器16可通过根据编码单元或预测单元对第二层图像执行层间预测来确定第一层图像之中的将被第二层图像的块参考的块。例如,第一层图像之中的位置与第二层图像中的当前块的位置相应的重建块可被确定。第二层编码器16可使用与第二层块相应的第一层重建块作为第二层预测块。这里,第二层编码器16可通过使用位于与第二层块相应的点处的第一层重建块来确定第二层预测块。
第二层编码器16可将通过根据层间预测块使用第一层重建块而确定的第二层预测块用作用于第二层原始块的层间预测的参考图像。第二层编码器16可通过使用第一层重建图像对第二层预测块的样值和第二层原始块的样值之间的误差(即,根据层间预测的残差)进行变换和量化来执行熵编码。
同时,当上述层间视频编码设备10对多视点视频进行编码时,被编码的第二层图像可以是深度图像,第一层图像可以与第二层图像具有相同视点的纹理图像。
可选择地,将被编码的第二层图像可以是第二视点视频,第一层图像可以是第一视点视频。由于这样的多视点图像被同时获得,因此根据视点的图像之间的相似度高。
然而,由于拍摄角度、亮度和拍摄装置(相机和镜头)的特性根据视点而不同,因此多视点图像可能具有视差。在视频编码和解码处理期间,该视差可以以视差矢量表示。通过在不同视点的图像中搜索与当前将被编码的块最相似的区域,可确定视差矢量,并且经由视差预测可提高编码效率。
第二层编码器16可将第二层的当前块划分为一个或更多个子块并按照子块单元来执行预测。例如,子块可以是小于或等于当前块的预测单元的块。例如,第二层编码器16可根据层来确定并划分子块的尺寸,并按照当前块的子块单元来执行预测。
详细地讲,第二层编码器16可基于第一层的块(在下文中被称为“第一层块”)的与第二层的当前块的子块相应的子块之中的包括第一层块的预定位置处的像素的子块的运动信息是否可用,来确定是否按照子块单元来执行预测。当包括第一层块的预定位置处的像素的子块的运动信息可用时,第二层编码器16可按照子块单元来执行当前块的运动信息预测。
包括第一层块的预定位置处的像素的子块的运动信息可用可表示存在包括第一层块的预定位置处的像素的子块的运动信息。例如,当通过执行帧内预测对包括第一层块的预定位置处的像素的子块进行了编码/解码时,包括第一层块的预定位置处的像素的子块不具有运动信息,因此所述运动信息可能不可用。
运动信息可以是包括参考列表、参考画面索引和MVP的信息。
第二层编码器16可通过使用子块执行预测来对当前块执行更加准确的预测。这里,第二层编码器16可不根据第一层块的子块来确定运动信息是否可用,而是可将第一层块的子块之中的预定子块的运动信息用作默认运动信息以降低复杂度。例如,当默认运动信息可用时,第二层的当前块的子块的运动信息可基于第一层块的子块的运动信息来确定。
默认运动信息可以是第一层块的子块之中的包括第一层块的预定位置处的像素的子块的运动信息。第二层编码器16可基于第一层块的与第二层的当前块的子块相应子块之中的包括第一层块的预定位置处的像素的子块的运动信息是否可用来确定是否参考第一层块的子块的运动信息。例如,第一层块的预定位置处的像素可以是位于第一层块的中心的像素。
第二层编码器16可在第一层块的子块之中的包括第一层块的预定位置处的像素的子块经由帧间预测被编码/解码时,确定包括第一层块的预定位置处的像素的子块的运动信息可用。在这种情况下,当包括第一层块的预定位置处的像素的子块的运动信息可用时,第二层编码器16可将指示包括第一层块的预定位置处的像素的子块的运动信息的可用性的信息(availableFlagIV或availableFlagT)确定为1。例如,当通过执行帧内预测对包括第一层块的预定位置处的像素的子块进行了编码/解码时,第二层编码器16可确定包括第一层块的预定位置处的像素的子块的运动信息不可用,并且因此将availableFlagIV或availableFlagT确定为0。作为另一示例,当由包括第一层块的预定位置处的像素的子块的参考画面索引所指示的参考画面的位置(PicOrderCnt)与参考画面列表中的参考图像的PicOrderCnt匹配的图像不在参考列表中时,第二层编码器16可确定包括第一层块的预定位置处的像素的子块的运动信息不可用,并因此将availableFlagIV或availableFlagT确定为0
当包括第一层块的预定位置处的像素的子块的运动信息可用时,第二层编码器16可获得第一层块的子块的运动信息。第二层编码器16可基于获得的第一层块的子块的运动信息来确定当前块的子块的运动信息。换句话说,第一层块可包括第一层块的分别与包括在第二层的当前块中的子块相应的子块,并且所述当前块的子块的运动信息可基于第一层块的所述子块的相应运动信息来确定。
这里,当第一层块的子块之中的一个子块的运动信息不可用时,当前块的与所述一个子块相应的子块的运动信息可基于默认运动信息来确定。例如,当第一层块的子块之中的一个或更多个子块是通过执行帧内预测而被编码/解码的时,通过执行帧内预测而被编码/解码的所述一个或更多个子块的运动信息可能不可用。
当默认运动信息可用时,第二层编码器16可在第一层块的子块的运动信息之中仅获得子块的可用运动信息,以确定当前块的相应子块的运动信息。
换句话说,当第一层块的子块之中的一个或更多个子块的运动信息不可用时,第二层编码器16可获得第一层块的子块的可用运动信息,以确定当前块的相应子块的运动信息,并基于默认运动信息来确定当前块的与具有不可用运动信息的子块相应的子块的运动信息。
第二层编码器16可通过使用层间候选来确定是否形成合并候选。换句话说,第二层编码器16可确定指示与第二层的当前块相应的第一层块的运动信息是否可用作第二层的运动信息的信息。例如,在合并模式下,指示可用性的信息可包括指示MPI候选的可用性的信息(MpiFlag)或指示视点间候选的可用性的信息(IvMvPredFlag)。指示可用性的信息(MpiFlag或IvMvPredFlag)可由指示关联模式的使用的运动继承信息(mpi_flag或iv_mv_pred_flag)来确定。指示关联模式的使用的运动继承信息可在视频参数集(VPS)、序列参数集(SPS)或画面参数集(PPS)的头部中被定义。例如,当在SPS头部中定义的mpi_flag是1并且允许层间预测时,MpiFlag可被定义为1,并且当在SPS头部中定义的iv_mv_pred_flag为1且允许层间预测时,IvMvPredFlag可被定义为1。
此外,当MPI候选可用作合并候选时,第二层编码器16可根据预定优先级将MPI候选添加到合并候选列表。第二层编码器16可基于纹理图像中与深度图像的当前块相应的块的默认运动信息是否可用(availableFlagT),来确定是否将MPI候选添加到合并候选列表。
此外,当视点间候选可用作合并候选时,第二层编码器16可根据预定优先级将视点间候选添加到合并候选列表。第二层编码器16可基于第一视点的纹理图像中与第二视点的纹理图像的当前块相应的块的默认运动信息是否可用(availableFlagIV),来确定是否将视点间候选添加到合并候选列表。
当确定合并候选时,第二层编码器16可执行修剪处理以排除具有相同运动信息的候选。
修剪处理是用于去除合并候选的运动信息的冗余的处理,当包括在两个合并候选的运动信息中的多条信息经过比较彼此匹配时,确定所述两个合并候选的运动信息相同。例如,当包括在第一合并候选的运动信息中的参考列表、参考画面索引以及MVP中的任意一项与包括在第二合并候选的运动信息中的参考列表、参考画面索引以及MVP不同时,第一合并候选的运动信息与第二合并候选的运动信息可不同。
详细地讲,当将MPI候选添加到合并候选列表时,第二层编码器16可将MPI候选的运动信息和可包括在合并候选列表中的另一模式的合并候选的运动信息进行比较,并在它们彼此不同时将MPI候选添加到合并候选列表。第二层编码器16可在MPI候选的运动信息与另一模式的合并候选的运动信息相同时,不将MPI候选添加到合并候选列表。
可包括在合并候选列表中的另一模式的合并候选可以是已包括在合并候选列表中的合并候选,或者是尚未包括在合并候选列表中的合并候选。例如,另一模式的合并候选可以是根据形成合并候选列表的预定优先级而恰在MPI候选之前或之后的合并候选。此外,另一模式的合并候选可以是根据形成合并候选列表的预定优先级而在MPI候选之后的所有合并候选。此外,另一模式的合并候选可以是将被编码的当前块的邻近块。
这里,当执行修剪处理时,第二层编码器16可不需要使用与第二层的当前块相应的第一层块的所有子块的运动信息来将MPI候选的运动信息与另一模式的合并候选的运动信息进行比较。第二层编码器16可通过使用与当前块相应的第一层块的默认运动信息来将MPI候选的运动信息与另一模式的合并候选的运动信息进行比较,以便简化运算处理。换句话说,当包括第一层块的特定位置处的像素的子块的运动信息与另一模式的合并候选的运动信息不同时,第二层编码器16可将包括第一层块的合并候选列表确定为合并候选。
此外,在将层间候选添加到合并候选列表时,第二层编码器16可按照与MPI候选相同的方式来执行修剪处理。
例如,第二层编码器16可将作为视点间候选的运动信息的默认运动信息与可包括在合并候选列表中的另一模式的合并候选的运动信息进行比较,并且当它们不同时,第二层编码器16可将视点间候选的运动信息添加到合并候选列表。当视点间候选的运动信息与另一模式的合并候选的运动信息相同时,第二层编码器16可不将视点间候选的运动信息添加到合并候选列表。例如,与视点间候选进行比较的另一模式的合并候选可以是MPI候选或当前块的邻近块。
此外,当将不包括MPI候选和视点间候选的另一模式的合并候选添加到合并候选列表时,第二层编码器16可通过使用MPI候选或视点间候选的默认运动信息来执行修剪处理。这里,第二层编码器16可将MPI候选或视点间候选的默认运动信息用于修剪处理,而不管MPI候选或视点间候选是否包括在合并候选列表中。
例如,当将深度图像的当前块的邻近块添加到合并候选列表时,第二层编码器16可将所述邻近块的运动信息与MPI候选的默认运动信息进行比较,以确定是否添加所述邻近块。此外,当将第二视点纹理图像的当前块的邻近块添加到合并候选列表时,第二层编码器16可将所述邻近块的运动信息与视点间候选的默认运动信息进行比较,以确定是否添加所述邻近块。默认运动信息可以是包括第一层块的预定位置的子块的运动信息。
当形成了合并候选列表时,第二层编码器16可使用包括在合并候选列表中的合并候选以对第二层的当前块执行帧间预测,并在合并候选之中确定将被用于当前块的预测的合并候选。第二层编码器16可按照合并候选被添加到合并候选列表的顺序对每个合并候选分配合并索引,并确定最优合并候选。例如,第二层编码器16可将具有最小的率失真(RD)代价值的合并候选确定为最优合并候选。
比特流产生器18可产生包括编码的视频以及与层间预测相关确定的层间预测信息的比特流,并将产生的比特流发送到解码设备。
同时,比特流产生器18可产生包括指示第一层块的运动信息是否可用作第二层的当前块的运动信息的运动继承信息(即,指示MPI候选的可用性的信息(mpi_flag)或指示视点间候选的可用性的信息(iv_mv_pred_flag))的比特流。例如,运动继承信息可包括在作为被应用在序列单元中的一组参数的SPS中。
层间视频编码设备10可通过使用第一层重建图像对第二层预测块的样值与第二层原始图像的样值之间的误差(即,根据层间预测的残差)执行变换和量化来执行熵编码。此外,还可对预测信息之间的误差执行熵编码。
如上所述,层间视频编码设备10可通过经由层间预测结构参考第一层重建图像来对当前层图像序列进行编码。然而,根据实施例的层间视频编码设备10可根据单层预测结构对第二层图像序列进行编码,而不必参考其它层样点。因此,解释不应限于层间视频编码设备10仅执行层间预测结构的帧间预测以便对第二层图像序列进行编码。
在下文中,将参照图1b描述用于层间预测的层间视频编码设备10的操作。
图1b是根据实施例的多视点视频编码方法的流程图。
在操作11,层间视频编码设备10确定与第二层的当前块相应第一层块的子块之中的包括第一层块的预定位置处的像素的子块的运动信息是否可用。例如,第二层可以是多视点视频的图像之中的深度图像,第一层可以是与深度图像相应的纹理图像。可选择地,第二层可以是第二视点的第二视点纹理图像,第一层可以是具有与第二视点相应的不同视点的第一视点的第一视点纹理图像。
为了确定是否参考与第二层的当前块相应的第一层块的子块的运动信息,层间视频编码设备10可确定第一层块的子块之中的包括第一层块的预定位置处的像素的子块的运动信息是否可用。第一层块的子块之中的包括第一层块的预定位置处的像素的子块的运动信息可以是默认运动信息。此外,第一层块的预定位置处的像素可以是位于第一层块的中心的像素。
当第二层是深度图像时,层间视频编码设备10可将包括与深度图像相应的纹理图像的块的预定位置处的像素的子块的运动信息确定为默认运动信息,并确定默认运动信息是否可用。
当第二层是纹理图像时,层间视频编码设备10可将包括与第二层纹理图像相应的另一视点的纹理图像的块的运动位置处的像素的子块的运动信息确定为默认运动信息,并确定默认运动信息是否可用。
在操作13,当确定包括第一层块的预定位置处的像素的子块的运动信息可用时,层间视频编码设备10可获得第一层块的子块的运动信息。层间视频编码设备10可获得第一层块中所包括的子块的可用运动信息。
详细地讲,当第一层块的与当前块的子块相应的子块的运动信息可用时,层间视频编码设备10可获得第一层块的与当前块的子块相应的子块的运动信息,并使用第一层块的与当前块的子块相应的子块的运动信息来确定当前块的子块的运动信息。可选择地,当第一层块的与当前块的子块相应的子块的运动信息不可用时,层间视频编码设备10可不获得第一层块的与当前块的子块相应的子块的运动信息,并且使用默认运动信息来确定当前块的子块的运动信息,其中,所述默认运动信息是包括第一层块的预定位置处的像素的子块的运动信息。
此外,层间视频编码设备10可根据预定优先级将MPI候选和视点间候选添加到合并候选列表。例如,当基于指示MPI候选的可用性的信息(MpiFlag),MPI候选可用作合并候选时,层间视频编码设备10可基于纹理图像中的与深度图像的当前块相应的块的默认运动信息是否可用(availableFlagT)来确定是否将MPI候选添加到合并候选列表。可选择地,当基于指示视点间候选的可用性的信息(IvMvPredFlag),视点间候选可用作合并候选时,层间视频编码设备10可基于第一视点的纹理图像中的与第二视点的纹理图像的当前块相应的块的默认运动信息是否可用(availableFlagIV)来确定是否将视点间候选添加到合并候选列表。
此外,当确定合并候选时,层间视频编码设备10可执行排除具有相同运动信息的候选的修剪处理。详细地讲,当将MPI候选添加到合并候选列表时,层间视频编码设备10可将MPI候选的运动信息与可包括在合并候选列表中的另一模式的合并候选的运动信息进行比较,并在它们彼此不同时将MPI候选的运动信息添加到合并候选列表。
这里,当执行修剪处理时,层间视频编码设备10可不使用与当前块相应的第一层块的所有子块的运动信息,而是可使用第一层块的默认运动信息以将MPI候选的运动信息与另一模式的合并候选的运动信息进行比较,由此提高编码效率并便简化运算处理。
此外,在将层间候选添加到合并候选列表时,层间视频编码设备10可按照与MPI候选相同的方式通过使用默认运动信息来执行修剪处理。
此外,当将可包括在合并候选列表中的另一模式的合并候选添加到合并候选列表时,层间视频编码设备10可通过使用MPI候选或视点间候选的默认运动信息来执行修剪处理。
在操作15,层间视频编码设备10可基于获得的第一层块的子块的运动信息来确定第二层的当前块的子块的运动信息。
当第一层块的子块之中的一个或更多个子块的运动信息不可用时,层间视频编码设备10可基于第一层块的子块的可用运动信息,确定当前块的关联子块的运动信息,并基于默认运动信息来确定当前块的与具有不可用运动信息的子块相应的子块的运动信息。
在操作17,层间视频编码设备10可产生包括指示第一层块的运动信息是否可用作第二层的运动信息的运动继承信息的比特流。
运动继承信息是指示与第二层的当前块相应的第一层块的运动信息是否可用作第二层的运动信息的信息,并可包括指示MPI候选的可用性的信息(mpi_flag)或指示视点间候选的可用性的信息(iv_mv_pred_flag)。
如上所述,层间视频编码设备10可通过使用第一层块的子块执行对当前块的子块的运动信息的预测来执行更准确的预测,同时通过不根据第一层块的子块确定运动信息的可用性而是确定并使用第一层块的子块之中的预定子块的运动信息作为默认运动信息,来降低运算的复杂度。
根据本公开的层间视频编码设备10可包括中央处理器(未示出),其中,该中央处理器总体上控制第一层编码器14、第二层编码器16和比特流产生器18。可选择地,第一层编码器14、第二层编码器16和比特流产生器18可由各自的处理器(未示出)操作,并且层间视频编码设备10可在所述各自的处理器系统化操作时被操作。可选择地,第一层编码器14、第二层编码器16和比特流产生器18可根据层间视频编码设备10的外部处理器(未示出)的控制而被控制。
层间视频编码设备10可包括至少一个数据存储单元(未示出),其中,第一层编码器14、第二层编码器16和比特流产生器18的输入数据和输入数据被存储在所述至少一个数据存储单元中。层间视频编码设备10可包括管理数据存储单元(未示出)的数据输入和输出的存储器控制器(未示出)。
为了输出视频编码结果,层间视频编码设备10可与安装在其中的内部视频编码处理器或外部视频编码处理器关联地操作以执行包括变换的视频编码处理。层间视频编码设备10的内部视频编码处理器可作为单独的处理器执行视频编码操作。此外,当层间视频编码设备10、中央处理设备或图形处理设备包括视频编码处理模块时,基本视频编码操作可被实现。
图2a是根据实施例的层间视频解码设备的框图。图2b是根据实施例的层间视频解码方法的流程图。
参照图2a,层间视频解码设备40可包括获得器42和解码器44。解码器44可包括第一层解码器46和第二层解码器48。
根据实施例的层间视频解码设备40可根据层从一个比特流解析符号。
由层间视频解码设备40接收的比特流的层数不受限制。然而,为了便于解释,将描述层间视频解码设备40的第一层解码器46对第一层流进行解码,且第二层解码器48对第二层流进行解码的实施例。
例如,基于空间可伸缩性的层间视频解码设备40可接收具有不同分辨率的图像序列在不同层中被编码的流。可对第一层流进行解码来重建具有低分辨率的图像序列,并可对第二层流进行解码来重建具有高分辨率的图像序列。
作为另一示例,可根据可伸缩视频编码方案对多视点视频进行解码。当在多个层中对立体视频流进行解码时,可对第一层流进行解码以重建左视点图像。可进一步对第二层流进行解码以重建右视点图像。
可选择地,当在多个层中对多视点视频流进行解码时,可对第一层流进行解码以重建中心视点图像。可进一步对第二层流进行解码以重建左视点图像。可进一步对第三层流进行解码以重建右视点图像。
作为另一示例,基于时间可伸缩性的可伸缩视频编码方法可被执行。可对第一层流进行解码以重建基本帧率图像。可进一步对第二层流进行解码以重建高帧率图像。
此外,在存在至少三个第二层时,可从第一层流重建第一层图像,并且当通过参考第一层重建图像进一步对第二层流进行解码时,可进一步重建第二层图像。当通过参考第二层重建图像进一步对第K层流进行解码时,可进一步重建第K层图像。
层间视频解码设备40可从第一层流和第二层流获得第一层图像和第二层图像的编码数据,此外,层间视频解码设备40还可获得经由帧间预测产生的运动矢量以及经由层间预测产生的预测信息。
例如,层间视频解码设备40可对每层的帧间预测出的数据进行解码,并可对多层之间的层间预测出的数据进行解码。可基于编码单元或预测单元通过运动补偿和层间视频解码来执行重建。
针对每层流,可通过参考经由对同一层的帧间预测而预测出的重建图像来执行针对当前图像的运动补偿来重建图像。运动补偿是将通过使用当前图像的运动矢量而确定的参考图像与当前图像的残差进行合成来重建当前图像的重建图像的操作。
此外,层间视频解码设备40可通过参考第一层图像的预测信息执行层间视频解码,以对经由层间预测而预测出的第二层图像进行解码。层间视频解码是通过使用不同层的参考块的预测信息来对当前图像的运动信息进行重建以确定当前图像的预测信息的操作。
根据实施例的层间视频解码设备40可执行用于重建通过使用第二层图像预测出的第三层图像的层间视频解码。稍后将参照图3a描述层间预测结构。
然而,根据实施例的第二层解码器48可在不必参考第一层图像序列的情况下对第二层流进行解码。因此,解释不应限于第二层解码器48执行层间预测以对第二层图像序列进行解码。
层间视频解码设备40根据视频的每个图像的块执行解码。块可以是根据树结构的编码单元之中的最大编码单元、编码单元、预测单元或变换单元。
获得器42可接收比特流并从接收到的比特流获得关于编码的图像的信息。
例如,获得器42可从比特流获得运动继承信息,其中,运动继承信息指示第一层块的运动信息是否可用作第二层的运动信息(即,指示MPI候选的可用性的信息(mpi_flag)或指示视点间候选的可用性的信息(iv_mv_pred_flag))。通过使用获得的运动继承信息,指示合并模式下MPI候选的可用性的信息(MpiFlag)或指示合并模式下视点间候选的可用性的信息(IvMvPredFlag)可被确定。
当mpi_flag为1并且允许层间预测时,MpiFlag可被确定为1,当iv_mv_pred_flag为1并且允许层间预测时,IvMvPredFlag可被确定为1。
第一层解码器46可通过使用解析出的第一层图像的编码符号来对第一层图像进行解码。当层间视频解码设备40接收基于树结构的编码单元而编码的流时,第一层解码器46可根据第一层流的最大编码单元,基于树结构的编码单元来执行解码。
第一层解码器46可通过根据每个最大编码单元执行熵解码来获得编码信息和编码的数据。第一层解码器46可通过对从流获得的编码的数据执行反量化和逆变换以重建残差。根据另一示例性实施例的第一层解码器46可直接接收量化后的变换系数的比特流。可通过对量化后的变换系数执行反量化和逆变换来重建图像的残差。
第一层解码器46可经由同一层图像之间的运动补偿确定预测图像,并通过将预测图像和残差进行组合来重建第一层图像。
根据层间预测结构,第二层解码器48可通过使用第一层重建图像的样点来产生第二层预测图像。第二层解码器48可通过对第二层流进行解码来获得根据层间预测的预测误差。第二层解码器48可通过将第二层预测图像与所述预测误差进行组合来产生第二层重建图像。
第二层解码器48可通过使用由第一层解码器46解码出的第一层重建图像来确定第二层预测图像。根据层间预测结构,第二层解码器48可确定第一层图像中的将被第二层图像的编码单元或预测单元参考的块。例如,第一层图像中的位置与第二层图像中的当前块的位置相应的重建块可被确定。第二层解码器48可通过使用与第二层块相应的第一层重建块来确定第二层预测块。第二层解码器48可通过使用与第二层块相同位置的第一层重建块来确定第二层预测块。
第二层解码器48可将通过根据层间预测结构使用第一层重建块确定的第二层预测块用作用于对第二层原始块进行层间预测的参考图像。在这种情况下,第二层解码器48可通过将使用第一层重建图像确定的第二层预测块的样值与根据层间预测的残差进行合成来重建第二层块。
同时,当上述层间视频解码设备40对多视点视频进行解码时,将被解码的第二层图像可以是第二视点图像,第一层图像可以是第一视点图像。可选择地,将被解码的第二层图像可以是深度图像,第一层图像可以是纹理图像。
当从比特流获得的运动继承信息指示与第二层的当前块相应的第一层块的运动信息可用作第二层的运动信息时,第二层解码器48可确定第一层块的与当前块的子块相应的子块之中的包括第一层块的预定位置处的像素的子块的运动信息是否可用。
第二层解码器48可基于第一层块的与当前块的子块相应的子块之中的包括第一层块的预定位置处的像素的子块的运动信息是否可用,来确定是否参考第一层块的子块的运动信息。
如上所述,当通过使用当前块的子块来执行预测时,第二层解码器46不根据第一层块的子块确定运动信息是否可用,而是可确定并使用第一层块的子块之中的预定子块的运动信息作为默认运动信息,以降低运算的复杂度。例如,默认运动信息可以是第一层块的子块之中的包括第一层块的预定位置处的像素的子块的运动信息,并且第一层块的预定位置处的像素可以是位于第一层块的中心的像素。
当第一层块的子块之中的包括第一层块的预定位置处的像素的子块通过执行帧间预测而被编码/解码时,第二层解码器48可确定第一层块的子块之中的包括第一层块的预定位置处的像素的子块的运动信息可用。在这种情况下,当包括第一层块的预定位置处的像素的子块的运动信息可用时,第二层解码器48可将指示该子块的运动信息的可用性的信息(availableFlagIV或availableFlagT)确定为1。
例如,当包括第一层块的预定位置处的像素的子块通过执行帧内预测被编码/解码时,第二层解码器46可确定该子块的运动信息不可用并将availableFlagIV或availableFlagT确定为0。作为另一示例,当由包括第一层块的预定位置处的像素的子块的参考画面索引所指示的参考画面的位置(PicOrderCnt)与参考画面列表中的参考图像的PicOrderCnt匹配的图像不在参考列表中时,第二层解码器48可确定包括第一层块的预定位置处的像素的子块的运动信息不可用,并因此将availableFlagIV或availableFlagT确定为0
当包括第一层块的预定位置处的像素的子块的运动信息可用时,第二层解码器48可获得第一层块的子块的运动信息。第二层解码器48可基于获得的第一层块的子块的运动信息来确定当前块的子块的运动信息。换句话说,第一层块可包括第一层块的分别与包括在第二层的当前块中的子块相应的子块,并且所述当前块的子块的运动信息可基于第一层块的所述子块的相应运动信息来确定。
这里,当第一层块的子块之中的一个子块的运动信息不可用时,第二层解码器48可基于默认运动信息来确定当前块的与所述一个子块相应的子块的运动信息。例如,当默认运动信息可用时,第二层解码器48可仅获得第一层块的子块的运动信息之中的子块的可用运动信息来确定当前块的相应子块的运动信息。
换句话说,当第一层块的子块之中的一个或更多个子块的运动信息不可用时,第二层解码器48可获得第一层块的子块的可用运动信息,以确定当前块的相应子块的运动信息,并基于默认运动信息来确定当前块的与具有不可用运动信息的子块相应的子块的运动信息。
第二层解码器48可通过使用第一层块的子块的运动信息来确定当前块的子块的运动信息,并通过使用所确定的当前块的子块的运动信息来对当前块进行解码。
同时,当与第二层的当前块相应的第一层块的运动信息可用作第二层的运动信息时,第二层解码器48可将层间候选添加到合并候选列表。例如,第二层解码器48可将MPI候选或视点间候选添加到合并候选列表。可通过从比特流获得的运动继承信息(mpi_flag或iv_mv_pred_flag)来确定指示可用性的信息(MpiFlag或IvMvPredFlag)。
当MPI候选可用作合并候选时,第二层解码器48可根据预定优先级将MPI候选添加到合并候选列表。第二层解码器48可基于纹理图像中的与深度图像的当前块相应的第一层块的默认运动信息是否可用(availableFlagT),来确定是否将MPI候选添加到合并候选列表。
此外,当视点间候选可用作合并候选时,第二层解码器48可根据预定优先级将视点间候选添加到合并候选列表。第二层解码器48可基于第一视点的纹理图像中的与第二视点的纹理图像的当前块相应的块的默认运动信息是否可用(availableFlagIV),来确定是否将视点间候选添加到合并候选列表。
当确定合并候选时,第二层解码器48可执行修剪处理以排除具有相同运动信息的候选。
详细地讲,当将MPI候选添加到合并候选列表时,第二层解码器48可将MPI候选的运动信息和可包括在合并候选列表中的另一模式的合并候选的运动信息进行比较,并在它们彼此不同时将MPI候选添加到合并候选列表。第二层解码器48可在MPI候选的运动信息与另一模式的合并候选的运动信息相同时不将MPI候选添加到合并候选列表。
可包括在合并候选列表中的另一模式的合并候选可以是已包括在合并候选列表中的合并候选,或者是尚未包括在合并候选列表中的合并候选。例如,另一模式的合并候选可以是根据形成合并候选列表的预定优先级而恰在MPI候选之前或之后的合并候选。此外,另一模式的合并候选可以是根据形成合并候选列表的预定优先级而在MPI候选之后的所有合并候选。此外,另一模式的合并候选可以是将被编码的当前块的邻近块。
这里,当执行修剪处理时,第二层解码器48可不需要使用与第二层的当前块相应的第一层块的所有子块的运动信息来将MPI候选的运动信息与另一模式的合并候选的运动信息进行比较。第二层解码器48可通过使用与当前块相应的第一层块的默认运动信息将MPI候选的运动信息与另一模式的合并候选的运动信息进行比较,以便简化运算处理。换句话说,当包括第一层块的特定位置处的像素的子块的运动信息与另一模式的合并候选的运动信息不同时,第二层解码器48可将包括第一层块的合并候选列表确定为合并候选。
此外,在将层间候选添加到合并候选列表时,第二层解码器48可按照与MPI候选相同的方式来执行修剪处理。
例如,第二层解码器48可将作为视点间候选的运动信息的默认运动信息与可包括在合并候选列表中的另一模式的合并候选的运动信息进行比较,并且当它们不同时,第二层解码器48可将视点间候选的运动信息添加到合并候选列表。当视点间候选的运动信息与另一模式的合并候选的运动信息相同时,第二层解码器48可不将视点间候选的运动信息添加到合并候选列表。例如,与视点间候选进行比较的另一模式的合并候选可以是MPI合并候选或当前块的邻近块。
此外,当将不包括MPI候选和视点间候选的另一模式的合并候选添加到合并候选列表时,第二层解码器48可通过使用MPI候选或视点间候选的默认运动信息来执行修剪处理。这里,第二层解码器48可将MPI候选或视点间候选的默认运动信息用于修剪处理,而不管MPI候选或视点间候选是否包括在合并候选列表中。
例如,当将深度图像的当前块的邻近块添加到合并候选列表时,第二层解码器48可将所述邻近块的运动信息与MPI候选的默认运动信息进行比较,以确定是否添加所述邻近块。此外,当将第二视点纹理图像的当前块的邻近块添加到合并候选列表时,第二层解码器48可将所述邻近块的运动信息与视点间候选的默认运动信息进行比较,以确定是否添加所述邻近块。默认运动信息可以是包括第一层块的预定位置的子块的运动信息。
当形成了合并候选列表时,第二层解码器48可通过使用从层间视频编码设备10接收到的合并索引来确定包括在合并候选列表中的合并候选之中的将被用于当前块的预测的合并候选。
当通过使用合并索引确定的合并候选是MPI候选时,第二层解码器48可通过使用经由MPI预测确定的运动信息来对第二层的当前块进行解码。
在下文中,现在将参照图2b描述用于层间预测的层间视频解码设备40的操作。
图2b是根据实施例的层间视频解码方法的流程图。
在操作21,层间视频解码设备40可从比特流获得运动继承信息。运动继承信息是指示第一层块的运动信息是否可用作第二层的运动信息的信息,并可包括指示MPI候选的可用性的信息(mpi_flag)或指示视点间候选的可用性的信息(iv_mv_pred_flag)。
在操作23,当运动继承信息指示与第二层的当前块相应的第一层块的运动信息可用作第二层的运动信息时,层间视频解码设备40可确定第一层块的与第二层的当前块的子块相应的子块之中的包括第一层块的预定位置处的像素的子块的运动信息是否可用。
当通过使用子块来预测当前块时,层间视频解码设备40可不根据第一层块的子块确定运动信息是否可用,而是可确定并使用第一层块的子块之中的预定子块的运动信息作为默认运动信息,由此降低运算的复杂度。例如,默认运动信息可以是第一层块的子块之中的包括第一层块的预定位置处的像素的子块的运动信息,并且第一层块的预定位置处的像素可以是位于第一层块的中心的像素。
当第一层块的子块之中的包括第一层块的预定位置处的像素的子块通过执行帧间预测而被编码/解码时,层间视频解码设备40可确定该子块的运动信息可用。在这种情况下,当包括第一层块的预定位置处的像素的子块的运动信息可用时,层间视频解码设备40可将指示该子块的运动信息的可用性的信息(availableFlagIV或availableFlagT)确定为1。当包括第一层块的预定位置处的像素的子块通过执行帧内预测被编码/解码时,层间视频解码设备40可确定该子块的运动信息不可用并将availableFlagIV或availableFlagT确定为0。
在操作25,当包括第一层块的预定位置处的像素的子块的运动信息可用时,层间视频解码设备40可获得第一层块的子块的运动信息。层间视频解码设备40可获得包括在第一层块的子块之中的具有可用运动信息的子块的运动信息。
详细地讲,当第一层块的与当前块的子块相应的子块的运动信息可用时,层间视频解码设备40可获得第一层块的与当前块的子块相应的子块的运动信息,并使用第一层块的与当前块的子块相应的子块的运动信息来确定当前块的子块的运动信息。可选择地,当第一层块的与当前块的子块相应的子块的运动信息不可用时,层间视频解码设备40可不获得第一层块的与当前块的子块相应的子块的运动信息,并且使用默认运动信息来确定当前块的子块的运动信息,其中,所述默认运动信息是包括第一层块的预定位置处的像素的子块的运动信息。
此外,层间视频解码设备40可根据预定优先级将层间候选添加到合并候选列表。例如,当基于指示MPI候选的可用性的信息(MpiFlag),MPI候选可用作合并候选时,层间视频解码设备40可基于纹理图像中的与深度图像的当前块相应的块的默认运动信息是否可用(availableFlagT)来确定是否将MPI候选添加到合并候选列表。可选择地,当基于指示视点间候选的可用性的信息(IvMvPredFlag),视点间候选可用作合并候选时,层间视频解码设备40可基于第一视点的纹理图像中的与第二视点的纹理图像的当前块相应的块的默认运动信息是否可用(availableFlagIV)来确定是否将视点间候选添加到合并候选列表。
此外,当确定合并候选时,层间视频解码设备40可执行排除具有相同运动信息的候选的修剪处理。详细地讲,当将MPI候选添加到合并候选列表时,层间视频解码设备40可将MPI候选的运动信息与可包括在合并候选列表中的另一模式的合并候选的运动信息进行比较,并在它们彼此不同时将MPI候选的运动信息添加到合并候选列表。
这里,当执行修剪处理时,层间视频解码设备40可不使用与当前块相应的第一层块的所有子块的运动信息,而是可使用第一层块的默认运动信息来将MPI候选的运动信息与另一模式的合并候选的运动信息进行比较,由此提高编码效率并便简化运算处理。
此外,在将层间候选添加到合并候选列表时,层间视频解码设备40可按照与MPI候选相同的方式通过使用默认运动信息来执行修剪处理。
此外,当将可包括在合并候选列表中的另一模式的合并候选添加到合并候选列表时,层间视频解码设备40可通过使用MPI候选或视点间候选的默认运动信息来执行修剪处理。
在操作27,层间视频解码设备40可基于获得的第一层块的子块的运动信息来确定当前块的子块的运动信息。
这里,当第一层块的子块之中的一个子块的运动信息不可用时,层间视频解码设备40可基于默认运动信息来确定当前块的与所述一个子块相应的子块的运动信息。
换句话说,当第一层块的子块之中的一个或更多个子块的运动信息不可用时,层间视频解码设备40可基于子块的可用运动信息确定当前块的关联子块的运动信息,并基于默认运动信息来确定当前块的与具有不可用运动信息的子块相应的子块的运动信息。
层间视频解码设备40可通过使用第一层块的子块的运动信息来确定当前块的子块的运动信息,并通过使用所确定的当前块的子块的运动信息来对当前块进行解码。
在下文中,将参照图3a描述根据实施例的可在层间视频编码设备10中执行的层间预测结构。
图3a是根据实施例的层间预测结构的示图。
根据实施例的层间视频编码设备10可根据图3a的多视点视频预测结构的再现顺序50来对基本视点图像、左视点图像和右视点图像进行预测编码。
基于根据现有技术的多视点视频预测结构的再现顺序50,相同视点的图像被布置在水平方向上。因此,由“左”指示的左视点图像按行被布置在水平方向上,由“中心”指示的基本视点图像按行被布置在水平方向上,由“右”指示的右视点图像按行被布置在水平方向上。相对于左视点图像/右视点图像,基本视点图像可以是中心视点图像。
此外,具有相同POC顺序的图像被布置在垂直方向上。图像的POC顺序指示形成视频的图像的再现顺序。多视点视频预测结构的再现顺序50中指示的“POC X”指示相应列中的图像的相对再现顺序,其中,当X的值低时,再现顺序靠前,当X的值高时,再现顺序靠后。
因此,基于根据现有技术的多视点视频预测结构的再现顺序50,由“左”指示的左视点图像根据POC顺序(再现顺序)被布置在水平方向上,由“中心”指示的基本视点图像根据POC顺序(再现顺序)被布置在水平方向上,并且由“右”指示的右视点图像根据POC顺序(再现顺序)被布置在水平方向上。此外,与基本视点图像位于相同的列的左视点图像和右视点图像具有不同的视点但具有相同的POC顺序(再现顺序)。
四个连续图像形成根据视点的一个画面组(GOP)。每个GOP包括连续锚画面(anchor picture)之间的图像和一个锚画面(关键画面)。
锚画面是随机访问点,并且当在再现视频的同时从根据再现顺序(即,POC顺序)布置的图像任意选择了再现位置时,根据POC顺序最接近再现位置的锚画面被再现。基本层图像包括基本层锚画面51至55,左视点图像包括左视点锚画面131至135,右视点图像包括右视点锚画面231至235。
可根据GOP顺序再现并预测(重建)多视点图像。首先,根据多视点视频预测结构的再现顺序50,根据视点,包括在GOP 0中的图像可被再现,随后包括在GOP 1中的图像可被再现。换句话说,可按照GOP 0、GOP 1、GOP2和GOP 3的顺序来再现包括在每个GOP中的图像。此外,根据多视点视频预测结构的编码顺序,根据视点,包括在GOP 0中的图像可被预测(重建),并且随后包括在GOP 1中的图像可被预测(重建)。换句话说,可按照GOP 0、GOP 1、GOP2和GOP 3的顺序来预测(重建)包括在每个GOP中的图像。
根据多视点视频预测结构的再现顺序50,可对图像执行视点间预测(层间预测)和帧间预测。在多视点视频预测结构中,箭头开始的图像是参考图像,箭头结束的图像是通过使用参考图像被预测的图像。
基本视点图像的预测结果可被编码,并随后以基本视点图像流的形式被输出,并且附加视点图像的预测结果可被编码,并随后以层比特流的形式被输出。此外,左视点图像的预测编码结果可被输出为第一层比特流,右视点图像的预测编码结果可被输出为第二层比特流。
对基本视点图像仅执行帧间预测。换句话说,I画面类型的基本层锚画面51至55不参考其它图像,而B画面类型和b画面类型的其余图像通过参考其它基本视点图像而被预测。B画面类型的图像通过参考根据POC顺序在B画面类型的图像之前的I画面类型的锚画面以及之后的I画面类型的锚画面而被预测。b画面类型的图像通过参照根据POC顺序在b画面类型的图像之前的I类型的锚画面以及之后的B画面类型的图像,或者通过参考根据POC顺序在b画面类型的图像之前的B画面类型的图像以及之后的I画面类型的锚画面而被预测。
对左视点图像和右视点图像中的每一个执行参考不同视点图像的视点间预测(层间预测)和参考相同视点图像的帧间预测。
可通过分别参考具有相同POC顺序的基本视点锚画面51至55对左视点锚画面131至135执行视点间预测(层间预测)。可通过分别参照具有相同POC顺序的基本视点锚画面51至55或左视点锚画面131至135对右视点锚画面231至235执行视点间预测。此外,可通过参考具有相同POC的其它视点图像对除了左视点图像131至135和右视点图像231至235之外的其余图像执行视点间预测(层间预测)。
左视点图像和右视点图像之中的除了锚画面131至135以及231至235之外的其余图像可通过参考相同视点图像而被预测。
然而,左视点图像和右视点图像中的每个图像可不通过参考相同视点的附加视点图像之中的具有在前再现顺序的锚画面而被预测。换句话说,为了对当前左视点图像执行帧间预测,可参考除了再现顺序在当前左视点图像之前的左视点锚画面之外的左视点图像。类似地,为了对当前右视点图像执行帧间预测,可参考除了再现顺序在当前右视点图像之前的右视点锚画面之外的右视点图像。
此外,为了对当前左视点图像执行帧间预测,可通过参考属于当前GOP但是将在当前左视点图像之前被重建的左视点图像,而不是参考属于当前左视点图像的当前GOP之前的GOP的左视点图像,来执行预测。相同的方法被应用于右视点图像。
根据实施例的层间视频解码设备40可根据图3a的多视点视频预测结构的再现顺序50来对基本视点图像、左视点图像和右视点图像进行重建。
可经由参考基本视点图像的视点间视差补偿和参考左视点图像的帧间运动补偿来重建左视点图像。可经由参考基本视点图像和左视点图像的视点间视差补偿和参考右视点图像的帧间运动补偿来重建右视点图像。参考图像可被首先重建以用于对左视点图像和右视点图像的视差补偿和运动补偿。
为了对左视点图像进行帧间运动补偿,可经由参考重建的左视点参考图像的帧间运动补偿来重建左视点图像。为了对右视点图像进行帧间运动补偿,可经由参考重建的右视点参考图像的帧间运动补偿来重建右视点图像。
此外,为了对当前左视点图像进行帧间运动补偿,可仅参考属于当前左视点图像的当前GOP但将在当前左视点图像之前被重建的左视点图像,而不是参考属于在当前GOP之前的GOP的左视点图像。相同的方法被应用于右视点图像。
此外,根据实施例的层间视频解码设备40可不仅执行视差补偿(或层间预测补偿)以对多视点图像进行编码或解码,还可经由视点间运动矢量预测来执行图像之间的运动补偿(或层间运动预测补偿)。
图3b示出根据实施例的多层视频。
为了在各种网络环境和各种终端中提供最优服务,层间视频编码设备10可通过对具有各种空间分辨率、各种质量、各种帧率以及不同视点的多层图像序列进行编码来输出可伸缩比特流。换句话说,层间视频编码设备10可通过根据各种可伸缩类型对输入图像进行编码来产生并输出可伸缩视频比特流。可伸缩性包括时间可伸缩性、空间可伸缩性、质量可伸缩性、多视点可伸缩性以及它们的组合。这样的可伸缩性可根据类型而被分类。此外,可伸缩性可被分类为每种类型中的维度标识符。
例如,可伸缩性与时间可伸缩性、空间可伸缩性、质量可伸缩性以及多视点可伸缩性具有相同的可伸缩性类型。此外,可伸缩性可根据类型而被分类为可伸缩性维度标识符。例如,当可伸缩性不同时,可伸缩性可具有不同的维度标识符。例如,针对可伸缩性类型,高可伸缩性维度可被分配给高维度的可伸缩性。
当比特流可划分为有效子流时,比特流可伸缩。空间可伸缩比特流包括各种分辨率的子流。为了区分相同可伸缩类型中的不同可伸缩性,可伸缩性维度被使用。可伸缩性维度可由可伸缩性维度标识符来表示。
例如,空间可伸缩比特流可被划分为具有不同分辨率(诸如QVGA、VGA和WVGA)的子流。例如,可通过使用维度标识符来区分具有不同分辨率的层。例如,QVGA子流可具有作为空间可伸缩性维度标识符值的0,VGA子流可具有作为空间可伸缩性维度标识符值的1,并且WVGA子流可具有作为空间可伸缩性维度标识符值的2。
时间可伸缩比特流包括具有不同帧率的子流。例如,时间可伸缩比特流可被划分为具有7.5Hz的帧率、15Hz的帧率、30Hz的帧率以及60Hz的帧率的子流。质量可伸缩比特流可根据粗粒度可伸缩性(CGS)方法、中间粒度可伸缩性(MGS)方法以及细粒度可伸缩性(FGS)方法而被划分为具有不同质量的子流。也可根据不同帧率基于不同维度来区分时间可伸缩性,并且也可根据不同方法基于不同维度来区分质量可伸缩性。
多视点可伸缩比特流在一个比特流中包括不同视点的子流。例如,在立体图像中,比特流包括左图像和右图像。此外,可伸缩比特流可包括与多视点图像以及深度图的编码数据相关的子流。也可根据不同视点基于不同维度来区分视点可伸缩性。
不同的可伸缩扩展类型可彼此组合。换句话说,可伸缩视频比特流可包括包含多个图像的多层的图像序列被编码的子流,其中,在这些子流中,时间可伸缩性、空间可伸缩性、质量可伸缩性和多视点可伸缩性中的至少一个彼此不同。
图3b示出具有不同可伸缩扩展类型的图像序列3010至3030。第一层的图像序列3010、第二层的图像序列3020以及第n层(n是整数)的图像序列3030可以是分辨率、质量和视点中的至少一个彼此不同的图像序列。此外,第一层的图像序列3010、第二层的图像序列3020以及第n层的图像序列3030中的一个图像序列可以是基本层的图像序列,其它图像序列可以是增强层的图像序列。
例如,第一层的图像序列3010可包括第一视点的图像,第二层的图像序列3020可包括第二视点的图像,第n层的图像序列3030可包括第n视点的图像。作为另一示例,第一层的图像序列3010可以是基本层的左视点图像,第二层的图像序列3020可以是基本层的右视点图像,第n层的图像序列3030可以是增强层的右视点图像。然而,实施例不限于此,具有不同可伸缩扩展类型的图像序列3010至3030可以是具有不同图像属性的图像序列。
图3c示出根据实施例的包括多层视频的编码数据的网络抽象层(NAL)单元。
如上所述,比特流产生器18输出包括编码的多层视频数据和附加信息的NAL单元。视频参数集(VPS)包括应用于多层视频中所包括的多层图像序列3120至3140的信息。包括关于VPS的信息的NAL单元被称为VPS NAL单元3110。
VPS NAL单元3110包括由多层图像序列3120至3140共享的共同语法元素、关于用于停止不必要信息的传输的操作点的信息以及关于会话协商期间所需的操作点的不可缺信息(诸如型(profile)或级(level)等)。具体地讲,根据实施例的VPS NAL单元3110包括与用于在多层视频中实现可伸缩性的可伸缩性标识符相关的可伸缩性信息。可伸缩性信息是用于确定被应用于包括在多层视频中的多层图像序列3120至3140的可伸缩性的信息。
可伸缩性信息包括关于可伸缩性类型以及被应用于包括在多层视频中的多层图像序列3120至3140的可伸缩性维度的信息。在根据本公开的第一实施例的编码方法和解码方法中,可直接从包括在NAL单元头中的分层标识符的值获得可伸缩性信息。分层标识符是用于区分包括在VPS中的多个层的标识符。VPS可通过VPS扩展用信号传输每层的分层标识符。VPS的每层的层标识符可通过被包括在VPS NAL单元中而被用信号传输。例如,属于VPS的特定层的NAL单元的分层标识符可包括在VPS NAL单元中。例如,属于VPS的NAL单元的分层标识符可通过VPS扩展而被用信号传输。因此,在根据各种实施例的编码方法和解码方法中,可通过使用属于VPS的NAL单元的分层标识符值来获得关于所述NAL单元的层的可伸缩性信息。
在下文中,将参照图4a至图4c描述层间运动预测。
图4a示出根据实施例的确定运动继承候选的处理。
参照图4a,可通过使用与第二层的当前块相应的第一层块来执行层间预测。例如,第二层可以是深度图像1419,第一层可以是与深度图像1410具有相同视点的关联纹理图像1420。
作为关联纹理图像1420中的与深度图像1410的当前块1411相应的相同位置块的第一层块1421可被包括在用于对当前块1411进行编码/解码的合并候选中。如上所述,可通过MpiFlag来确定是否继承与当前块相同位置且被包括在另一层中的第一层块的运动信息以将第一层块添加到合并候选。
当MPI候选被使用时,可将MPI候选添加到合并候选列表,并且视点间候选、空间候选、视差候选、时间候选以及视点合成预测候选可根据预定优先级被进一步添加到合并候选列表。这样的合并候选列表添加处理可被执行,直到包括在合并候选列表中的合并候选的数量变为合并候选的预设最大数量为止。除了MPI候选以外,可选择性地使用其他模式的合并候选。
当MPI候选未被使用时,视点间候选、空间候选、视差候选、时间候选和视点合成预测候选可根据预设优先级被添加到合并候选列表,而不包括MPI候选。
图4b是用于描述根据实施例的通过视点间预测的视点间候选和用于视点间预测的视差矢量的示图。
在对多视点视频进行编码/解码期间,可执行使用不同视点的在相同时间输入的视点方向的参考画面的帧间预测。
例如,在图4b中,第二层可以是多视点视频的多个视点的纹理图像之中的一个视点的纹理图像,第二层可以是与第二层不同的另一视点的纹理图像。
参照图4b,层间视频解码设备40可通过使用视差矢量DV来确定第一层的参考画面1440中所包括的与第二层的当前画面1430中所包括的当前块1431相应的参考块1441。参考画面1440可以是在与当前画面1430相同的时间输入的另一视点(ViewID=n-1)的画面。层间视频解码设备40可通过使用所确定的参考块1441来执行层间预测。
详细地说,层间视频解码设备40可针对层间运动预测获得从当前块1431开始由视差矢量DV所指示的参考块1441的参考运动矢量mv_ref,并通过使用获得的参考运动矢量mv_ref来预测当前块1431的运动矢量mv_cur。在这种情况下,层间视频解码设备40可通过使用预测出的运动矢量mv_cur来执行第二层当前块1431的运动补偿。
这里,参考位置可以是从当前块1401的中心像素开始由视差矢量DV所指示的位置,或者是从当前块1401的左上像素开始由视差矢量DV所指示的位置。
如上所述,为了通过参考不同的视点图像来执行预测,需要视差矢量。视差矢量可作为单独的信息通过比特流从编码设备被发送到解码设备,或者可基于深度图像或当前块的邻近块来预测。换句话说,预测出的视差矢量可以是邻近块视差矢量(NBDV)和深度导向的NBDV(DoNBDV)。
当从邻近块候选获得了视差矢量(层间方向的运动矢量)时,NBDV可表示通过使用获得的视差矢量预测出的当前块的视差矢量。
同时,当深度图像在不同层图像之中被编码和解码时,与当前块相应的深度块可通过使用NBDV来确定。这里,在包括在确定的深度块中的深度值之中确定代表性深度值,并且通过使用相机参数将确定的深度值转换为视差矢量。DoNBDV可表示通过使用从深度值转换得到的视差矢量预测出的视差矢量。
图4c示出根据实施例的包括在合并候选列表中的空间候选。
参照图4c,位于当前块1500的左侧底部的邻近块A0 1510、位于当前块1500的左侧的邻近块A1 1520、位于当前块1500的右侧顶部的邻近块B01530、位于当前块1500的顶部的邻近块B1 1540以及位于当前块1500的左侧顶部的邻近块B2 1550可被用作空间合并候选。当形成合并候选列表时,按照陈述的顺序找出A1 1520、B1 1540、B0 1530、A0 1510和B21550,并且具有运动信息的邻近块可被依次添加到合并候选列表。
当邻近块是帧边界或被帧内预测并因此不存在运动信息时,所述邻近块可不被包括在合并候选列表中。可被包括在合并候选列表中的邻近块的位置、编号和搜索顺序不限于上述示例,并且可改变。同时,当前块可以是根据HEVC的编码单元或预测单元。
图4d示出根据实施例的包括在合并候选列表中的时间候选。
参照图4c,为了层间视频解码设备40对包括在当前画面4000中的当前块1500执行帧间预测,包括在参考画面4100中并与当前块1500相同位置的块Col 1560以及相同位置的块1560的邻近块中的至少一个块可被包括在时间邻近块候选中。例如,相同位置的块Col1560的右侧底部块BR 1570可包括在时间预测候选中。同时,用于时间预测候选确定的块可以是编码单元或预测单元。
图5a和图5b是用于描述根据实施例的基于子块的层间运动预测的示图。
在下文中,在图5a和图5b中,假设运动继承信息指示与第二层的当前块相应的第一层块的运动信息可用作第二层的运动信息。
在图5a和图5b中,包括当前块5100的第二层是深度图像,包括与当前块5100相应的第一层块5200的第一层是与深度图像相应的纹理图像。在这种情况下,不存在视差矢量DV,并且第一层块5200可以是第一层中的与第二层的当前块5100相应的块。
可选择地,包括当前块5100的第二层可以是第二视点的纹理图像,并且包括与当前块5100相应的第一层块5200的第一层可以是第一视点的纹理图像。在这种情况下,第一层块5200可以是从当前块5100开始由视差矢量DV所指示的位置处的块。
在下文中,将参照图5a描述基于第一层块5200的运动信息确定第二层的当前块5100的运动信息的方法。
可通过参考第一层块5200的运动信息来确定第二层的当前块5100的运动信息。此外,第二层的当前块5100可被划分为一个或更多个子块5101至5104,并且可通过分别参考第一层块5200的子块5201至5204来确定子块5101至5104的运动信息。
这里,默认运动信息5210可被用于确定是否可根据子块5101至5104来预测当前块5100的运动矢量。换句话说,层间视频解码设备40不确定第一层块5200的与当前块5100的子块5101至5104相应的子块5201至5204的运动信息是否可用,但确定默认运动信息5210是否可用以确定是否可根据子块5101至5104来预测当前块5100的运动信息,其中,默认运动信息5210是子块5201至5204之中的预定子块的运动信息。
当第一层块5200的默认运动信息可用时,层间视频解码设备40可根据子块5101至5104预测当前块5100的运动信息。默认运动信息5210可以是第一层块5200的子块之中包括第一层块5200的预定位置处的像素的子块5204的运动信息。例如,第一层块5200的预定位置处的像素可以是位于第一层块5200的中心的像素。例如,所述预定位置处的像素可根据(xPb+((nPBW/nSbW)/2)*nSbW,yPb+((nPBH/nSbH)/2)*nSbH)来确定。(xPb,yPb)可表示当前块5100的位置,nPbW和nPbH可分别表示当前块5100的宽度和高度,并且nSbW和nSbH可分别表示当前块5100的子块的宽度和高度。
在当前块5100的运动信息可根据子块5101至5104预测时,可通过参考第一层块5200的分别与当前块5100的子块5101至5104相应的子块5201至5204来确定所述运动信息。
例如,当前块5100的子块5101可与第一层块5200的子块5201相应,当前块5100的子块5102可与第一层块5200的子块5202相应,当前块5100的子块5103可与第一层块5200的子块5203相应,并且当前块5100的子块5104可与第一层块5200的子块5204相应。
详细地讲,层间视频解码设备40可通过使用索引(xBlk和yBlk)来获得第一层块5200的与当前块5100的子块5101至5104分别相应的子块5201至5204的运动信息。
例如,为了确定当前块5100的子块5101至5104的运动信息,层间视频解码设备40可参考第一层块5200的与当前块5100的位置(xPb+xBlk*nSbW,yPb+yBlk*nSbH)处的子块相应的子块的运动信息。作为特定子块的宽度索引的xBlk可具有从0到nPbW/nSbW?1的值,作为特定子块的高度索引的yBlk可具有从0到nPbH/nSbH?1的值。(xPb,yPb)可表示当前块5100的位置,nPbW和nPbH可分别表示当前块5100的宽度和高度,nSbW和nSbH可分别表示当前块5100的子块的宽度和高度。
在下文中,将参照图5b描述当第一层块5200的子块5201至5204之中的子块5205和5203的运动信息不可用时确定第二层的当前块5100的运动信息的方法。
例如,当与当前块5100相应的第一层块5200的子块5201至5204之中的子块5205和5203通过执行帧内预测被编码/解码时,子块5202和5203的运动信息可能不可用。
当子块5202和5203的运动信息不可用时,当前块5100的与第一层块5200的子块5202和5203相应的子块5102和5103可不参考子块5202和5203的运动信息,这是因为第一层块5200的子块5202和5203的运动信息不存在。
此时,层间视频解码设备40可通过使用默认运动信息5210来确定当前块5100的子块5102和5103的运动信息。因此,层间视频解码设备40不需要执行确定将被再次参考的第一层块5200的子块并获得所确定的子块的运动信息以便确定子块5102和5103的运动信息的处理。
在当前块5100的子块5101至5104之中,层间视频解码设备40可基于第一层块5200的子块5201和5204的运动信息来确定能够使用第一层块5200的子块5101至5104的运动信息的子块5101和5104的运动信息,并基于默认运动信息5210来确定不能够使用第一层块5200的子块5101至5104的运动信息的子块5102和5103的运动信息。
默认运动信息5210可以是第一层块5200的子块5201至5204之中的包括第一层块5200的预定位置处的像素的子块5204的运动信息。例如,第一层块5200的预定位置处的像素可以是位于第一层块5200的中心的像素。
图6a至图6c示出根据实施例的通过使用层间候选来形成合并候选列表的处理。
图6a示出用于对多视点视频图像进行编码/解码的合并候选列表的示例。
合并候选列表可包括根据预定优先级的预定数量的合并候选。层间视频编码设备10和层间视频解码设备40可通过按照相同的方式形成合并候选列表来确定相同的合并候选列表。
例如,层间视频解码设备40可根据预定优先级从具有高优先级的合并候选确定合并候选的可用性,并可将可用合并候选添加到合并候选列表。可选择地,当用于多视点视频图像的合并候选列表被形成时,层间视频解码设备40可基于针对现有的单视点视频图像的合并候选列表,将针对多视点视频图像的另外的合并候选添加到根据预定优先级的多个位置。
针对多视点视频图像的合并候选列表可包括以下候选之一。
(1)运动参数继承(MPI)候选、(2)视点间候选、(3)空间候选、(4)时间候选、(5)视差候选、(6)视点合成预测(VSP)候选。
这样的合并候选可如图6a中所示根据预定顺序被包括在合并候选列表中。这里,(1)MPI候选、(3)空间候选以及(5)视差候选可以是包括在与当前块相同或不同的视点的层图像中的先前块。(2)视点间候选、(4)时间候选以及(6)VSP候选可以是包括在与当前块不同的视点的层图像中的先前块。包括在合并候选列表中的合并候选的类型、数量和优先级不限于此,并可改变。
图6b示出形成合并候选列表的处理的示例。
层间视频解码设备40可根据预定优先级从具有高优先级的合并候选确定合并候选的可用性,并将可用合并候选添加到合并候选列表。例如,层间视频解码设备40可将MPI候选和视点间候选依次添加到合并候选列表。可选择地,层间视频解码设备40可在当前解码的第二层图像是深度图像时将MPI候选添加到合并候选列表,并在第二层图像是纹理图像时将视点间候选添加到合并候选列表。
当将合并候选添加到合并候选列表时,层间视频解码设备40可执行排除具有相同运动信息的候选的修剪处理。
修剪处理是用于去除合并候选的运动信息的冗余的处理,当包括在两个合并候选的运动信息中的多条信息经过比较彼此匹配时,确定所述两个合并候选的运动信息相同。例如,当包括在第一合并候选的运动信息中的参考列表、参考画面索引以及MVP中的任意一项与包括在第二合并候选的运动信息中的参考列表、参考画面索引以及MVP不同时,第一合并候选的运动信息与第二合并候选的运动信息可不同。
例如,在图6b中,当MPI候选可用作合并候选时,层间视频解码设备40可基于作为MPI候选的第一层块的默认运动信息是否可用,将MPI候选添加到合并候选列表。
当MPI候选被添加到合并候选列表时,层间视频解码设备40可确定是否将根据预定优先级的具有在后的优先级的视点间候选添加到合并候选列表。
这里,层间视频解码设备40可基于作为视点间候选的第一层块的默认运动信息是否可用,将视点间候选添加到合并候选列表。此外,层间视频解码设备40可通过对视点间候选执行修剪处理来确定是否将视点间候选添加到合并候选列表。
这里,在修剪处理期间被比较的视点间候选的运动信息可以是作为视点间候选的第一层块的默认运动信息。例如,层间视频解码设备40可将视点间候选的默认运动信息与MPI候选的默认运动信息进行比较,并在它们不同时将视点间候选添加到合并候选列表。层间视频解码设备40可通过将视点间候选的默认运动信息与可包括在合并候选列表中的另一模式的候选块(诸如当前块的邻近块候选的运动信息)进行比较来执行修剪处理。
当对视点间候选执行了修剪处理时,层间视频解码设备40可通过将视点间候选的默认运动信息与MPI候选的默认运动信息进行比较来执行修剪处理,而不管MPI候选是否包括在合并候选列表中。
层间视频解码设备40甚至可在对作为邻近块候选的空间候选或时间候选执行修剪处理时使用MPI候选的默认运动信息或视点间候选的默认运动信息。例如,层间视频解码设备40可在当前解码的第二层图像是深度图像时通过将MPI候选的默认运动信息与邻近块候选的运动信息进行比较来执行修剪处理,并可在第二层图像是纹理图像时通过将视点间候选的默认运动信息与邻近块候选的运动信息进行比较来执行修剪处理。
图6c示出形成合并候选列表的处理的另一示例。
当针对多视点视频图像的合并候选列表被形成时,层间视频解码设备40可基于针对已有的单视点视频图像的合并候选列表,将针对多视点视频图像的另外的合并候选添加到根据预定优先级的多个位置。
例如,图6c示出针对已有的单视点视频图像的合并候选列表(图6c的(a))以及针对多视点视频的另外的合并候选(图6c的(b))。
为了确定是否将MPI候选添加到合并候选列表,层间视频解码设备40可确定MPI候选的默认运动信息是否可用,并当可用时执行将MPI候选的默认运动信息与另一候选的运动信息进行比较的修剪处理。这里,层间视频解码设备40可通过将MPI候选的默认运动信息与针对单视点视频图像的合并候选列表(图6c的(a))的所有候选的运动信息进行比较来执行修剪处理。
例如,当MPI的默认运动信息可用并且MPI候选的默认运动信息与针对单视点视频图像的合并候选列表(图6c的(a))的所有候选的运动信息不同时,层间视频解码设备40可将MPI候选添加到合并候选列表作为根据预定优先级的候选。
图7a示出根据实施例的序列参数集(SPS)多视点扩展信息。
与单视点视频的编码相关的信息可通过SPS信息被发送,并且与形成多视点视频的每层图像的编码相关的信息可通过被包括在SPS多视点扩展信息(sps_3d_extension)中而被发送到解码器。
参照图7a描述与本公开的实施例相关的语法,iv_mv_pred_flag[d]710可指示在当前层的图像的解码处理期间是否使用视点间运动参数预测。当iv_mv_pred_flag[d]710为0时,视点间运动参数预测在相应层中不被执行。当iv_mv_pred_flag[d]710为1时,视点间参数预测可在相应层中被使用。.
mpi_flag[d]720可指示使用与当前层图像相应的另一层图像的运动信息的运动参数继承是否被执行。如上所述,mpi_flag[d]720针对使用MPI候选的层图像可具有值1,并且mpi_flag[d]720针对不使用MPI候选的层图像可具有值0。
在解码器中,当从SPS获得了mpi_flag[d]720,并且包括在当前层图像中的块之中的在合并模式下预测的块被解码时,MPI候选在mpi_flag[d]720具有值0的情况下被添加到合并候选列表,并且如果mpi_flag[d]720具有值0,则不包括MPI候选的合并候选列表可被确定。
图7b是形成合并候选列表的处理的语法表的示例。
参照图7b,层间视频解码设备40可将MPI候选(T)、视点间候选(IV)、空间候选(A1和B1)、VSP候选(VSP)、空间候选(B0)、视差补偿候选(DI)以及空间候选(A0和B2)依次添加到合并候选列表(extMergeCandList)。
此外,层间视频解码设备40可将通过基于块尺寸等对视点间候选(IV)以及视差补偿候选(DI)进行移位而获得的移位视点间候选(IVShift)以及移位视差合并候选(DIShift)进一步添加到合并候选列表(extMergeCandList)。
层间视频解码设备40可通过参考availableFlag来确定是否将每个合并候选添加到合并候选列表(extMergeCandList),其中,availableFlag是指示每个合并候选块是否可用作合并候选的信息。
此外,层间视频解码设备40可通过添加合并候选直到包括在合并候选列表中的合并候选的数量达到最大数量(MaxNumMergeCand)来确定合并候选列表(extMergeCandList)。
如上所述,根据各种实施例的层间视频编码设备10和根据各种实施例的层间视频解码设备40可将视频数据的块划分为具有树结构的编码单元,并且编码单元、预测单元和变换单元可用于编码单元的层间预测或帧间预测。在下文中,将参照图8至图20描述根据各种实施例的基于具有树结构的编码单元和变换单元的视频编码方法、视频编码设备、视频解码方法和视频解码设备。
原则上,在用于多层视频的编码和解码处理期间,单独地执行对第一层图像的编码和解码处理以及对第二层图像的编码和解码处理。换句话说,当对多层视频执行层间预测时,单层视频的编码和解码结果可被互相参考,但根据单层视频执行单独的编码和解码处理。
因此,由于为了便于描述而在下面参照图8至图20描述的基于具有树结构的编码单元的视频编码和解码处理是对单层视频进行处理的视频编码处理和解码处理,因此仅执行帧间预测和运动补偿。然而,如参照图1a至图7b所描述的,为了对视频流进行编码和解码,对基本层图像和第二层图像执行层间预测和补偿。
因此,为了使根据各种实施例的层间视频编码设备10的编码器12基于具有树结构的编码单元对多层视频进行编码,层间视频编码设备10可包括与多层视频的层数一样多的图8的视频编码设备100以根据每个单层视频执行视频编码,由此控制每个视频编码设备100对被分配的单层视频进行编码。此外,层间视频编码设备10可通过使用每个视频编码设备100的单独的单视点的编码结果来执行视点间预测。因此,层间视频编码设备10的编码器12可产生包括根据层的编码结果的基本视点视频流和第二层视频流。
类似地,为了使根据各种实施例的层间视频解码设备40的解码器44基于具有树结构的编码单元对多层视频进行解码,层间视频解码设备40可包括与多层视频的层数一样多的图9的视频解码设备200,以便针对接收到的第一层视频流和接收到的第二层视频流根据层执行视频解码,从而控制每个视频解码设备200对被分配的单层视频进行解码。此外,层间视频解码设备40可通过使用每个视频解码设备200的单独的单层的解码结果来执行层间补偿。因此,层间视频解码设备40的解码器44可产生根据层而被重建的第一层图像和第二层图像。
图8是根据本公开的实施例的基于根据树结构的编码单元的视频编码设备100的框图。
涉及基于根据树结构的编码单元的视频预测的根据实施例的视频编码设备100包括编码单元确定器120和输出单元130。在下文中,为便于描述,涉及基于根据树结构的编码单元的视频预测的根据实施例的视频编码设备100将被简称为“视频编码设备100”。
编码单元确定器120可基于图像的当前画面的最大编码单元来划分当前画面,其中,最大编码单元是具有最大尺寸的编码单元。如果当前画面大于最大编码单元,则可将当前画面的图像数据划分为至少一个最大编码单元。根据各种实施例的最大编码单元可以是尺寸为32×32、64×64、128×128、256×256等的数据单元,其中,数据单元的形状是宽度和长度为2的若干次方的正方形。
根据各种实施例的编码单元可由最大尺寸和深度表征。深度表示编码单元从最大编码单元被空间划分的次数,并且随着深度加深,根据深度的较深层编码单元可从最大编码单元被划分到最小编码单元。最大编码单元的深度为最高深度,最小编码单元的深度为最低深度。由于随着最大编码单元的深度加深,与每个深度相应的编码单元的尺寸减小,因此与更高深度相应的编码单元可包括多个与更低深度相应的编码单元。
如上所述,当前画面的图像数据根据编码单元的最大尺寸被划分为最大编码单元,并且每个最大编码单元可包括根据深度被划分的较深层编码单元。由于根据深度对根据各种实施例的最大编码单元进行划分,因此可根据深度对包括在最大编码单元中的空间域的图像数据进行分层分类。
可预先确定编码单元的最大深度和最大尺寸,其中,所述最大深度和最大尺寸限制最大编码单元的高度和宽度被分层划分的总次数。
编码单元确定器120对通过根据深度对最大编码单元的区域进行划分而获得的至少一个划分区域进行编码,并且根据所述至少一个划分区域来确定用于输出最终编码的图像数据的深度。换句话说,编码单元确定器120通过根据当前画面的最大编码单元以根据深度的较深层编码单元对图像数据进行编码,并选择具有最小编码误差的深度,来确定最终深度。将确定的最终深度和根据确定的编码深度的编码的图像数据输出到输出单元130。
基于与等于或低于最大深度的至少一个深度相应的较深层编码单元,对最大编码单元中的图像数据进行编码,并且基于每个较深层编码单元比较对图像数据进行编码的结果。在对较深层编码单元的编码误差进行比较之后,可选择具有最小编码误差的深度。可针对每个最大编码单元选择至少一个最终深度。
随着编码单元根据深度而被分层地划分并且随着编码单元的数量增加,最大编码单元的尺寸被划分。此外,即使在一个最大编码单元中编码单元与同一深度相应,仍通过分别测量每个编码单元的图像数据的编码误差来确定是否将与同一深度相应的每个编码单元划分到更低深度。因此,即使当图像数据被包括在一个最大编码单元中时,在该一个最大编码单元中,编码误差仍可根据区域而不同,因此在图像数据中,最终深度可根据区域而不同。因此,可在一个最大编码单元中确定一个或更多个最终深度,并且可根据至少一个最终深度的编码单元来对最大编码单元的图像数据进行划分。
因此,根据各种实施例的编码单元确定器120可确定包括在最大编码单元中的具有树结构的编码单元。根据各种实施例的“具有树结构的编码单元”包括最大编码单元中包括的所有较深层编码单元之中的与确定为最终深度的深度相应的编码单元。在最大编码单元的同一区域中的,可根据深度来分层地确定最终深度的编码单元,并可在不同区域中独立地确定最终深度的编码单元。类似地,可与另一区域中的最终深度独立地确定当前区域中的最终深度。
根据各种实施例的最大深度是与从最大编码单元到最小编码单元的划分次数相关的索引。根据各种实施例的第一最大深度可表示从最大编码单元到最小编码单元的总划分次数。根据各种实施例的第二最大深度可表示从最大编码单元到最小编码单元的深度等级的总数。例如,当最大编码单元的深度是0时,对最大编码单元划分一次的编码单元的深度可被设置为1,对最大编码单元划分两次的编码单元的深度可被设置为2。这里,如果最小编码单元是最大编码单元被划分四次的编码单元,则存在深度0、1、2、3和4的深度等级,并且因此第一最大深度可被设置为4,第二最大深度可被设置为5。
可根据最大编码单元执行预测编码和变换。根据最大编码单元,还基于根据等于或小于最大深度的深度的较深层编码单元来执行预测编码和变换。
由于每当根据深度对最大编码单元进行划分时,较深层编码单元的数量增加,因此对随着深度加深而产生的所有较深层编码单元执行包括预测编码和变换的编码。为了便于描述,在最大编码单元中,现在将基于当前深度的编码单元来描述预测编码和变换。
根据各种实施例的视频编码设备100可不同地选择用于对图像数据进行编码的数据单元的尺寸或形状。为了对图像数据进行编码,执行诸如预测编码、变换和熵编码的操作,此时,可针对所有操作使用相同的数据单元,或者可针对每个操作使用不同的数据单元。
例如,视频编码设备100不仅可选择用于对图像数据进行编码的编码单元,还可选择不同于编码单元的数据单元,以便对编码单元中的图像数据执行预测编码。
为了在最大编码单元中执行预测编码,可基于根据各种实施例的与最终深度相应的编码单元(即,基于不再被划分为与更低深度相应的编码单元的编码单元)来执行预测编码。在下文中,不再被划分且成为用于预测编码的基本单元的编码单元现在将被称为“预测单元”。通过划分预测单元而获得的分区可包括预测单元或通过对预测单元的高度和宽度中的至少一个进行划分而获得的数据单元。分区是编码单元的预测单元被划分的数据单元,并且预测单元可以是与编码单元具有相同的尺寸的分区。
例如,当2N×2N(其中,N是正整数)的编码单元不再被划分并成为2N×2N的预测单元时,分区的尺寸可以是2N×2N、2N×N、N×2N或N×N。根据各种实施例的分区模式的示例包括通过对预测单元的高度或宽度进行对称地划分而获得的对称分区、通过对预测单元的高度或宽度进行非对称地划分(诸如,1:n或n:1)而获得的分区、通过对预测单元进行几何地划分而获得的分区、以及具有任意形状的分区。
预测单元的预测模式可以是帧内模式、帧间模式和跳过模式中的至少一个。例如,可对2N×2N、2N×N、N×2N或N×N的分区执行帧内模式或帧间模式。此外,可仅对2N×2N的分区执行跳过模式。可对编码单元中的一个预测单元独立地执行编码,从而选择具有最小编码误差的预测模式。
根据各种实施例的视频编码设备100不仅可基于用于对图像数据进行编码的编码单元还可基于与编码单元不同的数据单元,来对编码单元中的图像数据执行变换。为了在编码单元中执行变换,可基于具有小于或等于编码单元的尺寸的变换单元来执行变换。例如,变换单元可包括帧内模式的数据单元和帧间模式的变换单元。
根据各种实施例,以与编码单元根据树结构被划分的方式类似的方式,编码单元中的变换单元可被递归地划分为更小尺寸的区域。因此,可基于根据变换深度的具有树结构的变换单元,对编码单元中的残差数据进行划分。
还可在根据各种实施例的变换单元中设置变换深度,其中,变换深度指示通过对编码单元的高度和宽度进行划分而达到变换单元的划分次数。例如,在2N×2N的当前编码单元中,当变换单元的尺寸是2N×2N时,变换深度可以是0,当变换单元的尺寸是N×N时,变换深度可以是1,当变换单元的尺寸是N/2×N/2时,变换深度可以是2。换句话说,还可根据变换深度设置具有树结构的变换单元。
根据深度的划分信息不仅需要关于深度的信息,还需要关于与预测编码和变换相关的信息。因此,编码单元确定器120不仅确定具有最小编码误差的深度,还确定将预测单元划分为分区的分区模式、根据预测单元的预测模式以及用于变换的变换单元的尺寸。
稍后将参照图9至图19详细描述根据各种实施例的最大编码单元中的根据树结构的编码单元以及确定预测单元/分区和变换单元的方法。
编码单元确定器120可通过使用基于拉格朗日乘数的率失真优化来测量根据深度的较深层编码单元的编码误差。
输出单元130在比特流中输出最大编码单元的图像数据和根据深度的划分信息,其中,所述最大编码单元的图像数据基于由编码单元确定器120确定的至少一个深度而被编码。
可通过对图像的残差数据进行编码来获得编码的图像数据。
根据深度的划分信息可包括关于深度的信息、关于预测单元中的分区模式的信息、关于预测模式的信息和关于变换单元的划分的信息。
可通过使用根据深度的划分信息来定义关于最终深度的信息,其中,根据深度的划分信息指示是否对更低深度而不是当前深度的编码单元执行编码。如果当前编码单元的当前深度是深度,则对当前编码单元进行编码,因此可将划分信息定义为不将当前编码单元划分到更低深度。可选择地,如果当前编码单元的当前深度不是深度,则对更低深度的编码单元执行编码,并因此可将划分信息定义为对当前编码单元进行划分以获得更低深度的编码单元。
如果当前深度不是深度,则对被划分到更低深度的编码单元的编码单元执行编码。由于更低深度的至少一个编码单元存在于当前深度的一个编码单元中,因此对更低深度的每个编码单元重复执行编码,并因此可对具有相同深度的编码单元递归地执行编码。
由于针对一个最大编码单元确定具有树结构的编码单元,并且针对具有深度的编码单元确定划分信息,因此可针对一个最大编码单元确定至少一条划分信息。此外,由于根据深度对最大编码单元的图像数据进行分层划分,因此最大编码单元的图像数据的深度可根据位置而不同,因此可针对图像数据设置深度和划分信息。
因此,根据各种实施例的输出单元130可将相应深度和关于编码模式的编码信息分配给包括在最大编码单元中的编码单元、预测单元和最小单元中的至少一个。
根据各种实施例的最小单元是通过将构成最低深度的最小编码单元划分为4份而获得的正方形数据单元。可选择地,根据各种实施例的最小单元可以是可包括在最大编码单元中所包括的所有编码单元、预测单元、分区单元和变换单元中的最大正方形数据单元。
例如,通过输出单元130输出的编码信息可被分类为根据较深层编码单元的编码信息和根据预测单元的编码信息。根据较深层编码单元的编码信息可包括关于预测模式的信息和关于分区尺寸的信息。根据预测单元的编码信息可包括关于帧间模式的估计方向的信息、关于帧间模式的参考图像索引的信息、关于运动矢量的信息、关于帧内模式的色度分量的信息、以及关于帧内模式的插值方法的信息。
根据画面、条带或GOP定义的关于编码单元的最大尺寸的信息和关于最大深度的信息可被插入到比特流的头、序列参数集或画面参数集中。
还可通过比特流的头、序列参数集或画面参数集来输出关于针对当前视频允许的变换单元的最大尺寸的信息、以及关于变换单元的最小尺寸的信息。输出单元130可对与预测相关的参考信息、运动信息和条带类型信息进行编码,并输出这些信息。
在根据最简单的实施例的视频编码设备100中,较深层编码单元可以是通过将更高深度(更高一层)的编码单元的高度或宽度划分成两份而获得的编码单元。换句话说,在当前深度的编码单元的尺寸是2N×2N时,更低深度的编码单元的尺寸是N×N。此外,尺寸为2N×2N的具有当前深度的编码单元可包括最多4个具有更低深度的编码单元。
因此,视频编码设备100可基于考虑当前画面的特征而确定的最大编码单元的尺寸和最大深度,通过针对每个最大编码单元确定具有最优形状和最优尺寸的编码单元来形成具有树结构的编码单元。此外,由于可通过使用各种预测模式和变换中的任意一个对每个最大编码单元执行编码,因此可考虑各种图像尺寸的编码单元的特征来确定最优编码模式。
因此,如果以传统宏块对具有高分辨率或大数据量的图像进行编码,则每个画面的宏块的数量极度增加。因此,针对每个宏块产生的压缩信息的条数增加,因此难以发送压缩的信息,并且数据压缩效率降低。然而,通过使用根据各种实施例的视频编码设备100,由于在考虑图像的尺寸的同时增加编码单元的最大尺寸,并且在考虑图像的特征的同时调整编码单元,因此可提高图像压缩效率。
以上参照图1a描述的层间视频编码设备10可包括与层数一样多的视频编码设备100,以便根据多层视频中的层对单层图像进行编码。例如,第一层编码器14可包括一个视频编码设备100,第二层编码器16可包括第二层的数量一样多的视频编码设备100。
当视频编码设备100对第一层图像进行编码时,编码单元确定器120可针对每个最大编码单元根据具有树结构的编码单元确定用于帧间预测的预测单元,并可根据预测单元执行帧间预测。
即使在视频编码设备100对第二层图像进行编码时,编码单元确定器120可针对每个最大编码单元确定具有树结构的编码单元和预测单元,并可根据预测单元执行帧间预测。
视频编码设备100可对第一层图像和第二层图像之间的亮度差进行编码,以便补偿亮度差。然而,可根据编码单元的编码模式确定是否执行亮度补偿。例如,可仅对尺寸为2N×2N的预测单元执行亮度补偿。
图9是根据各种实施例的基于根据树结构的编码单元的视频解码设备200的框图。
涉及基于具有树结构的编码单元的视频预测的根据实施例的视频解码设备200包括接收器210、图像数据和编码信息提取器220以及图像数据解码器230。为了便于描述,涉及基于具有树结构的编码单元的视频预测的根据实施例的视频解码设备200将被简称为“视频编码设备200”。
用于根据各种实施例的视频解码设备200的解码操作的各种术语(诸如编码单元、深度、预测单元、变换单元和各种划分信息)的定义与参照图8和视频编码设备100描述的定义相同。
接收器210接收并解析编码的视频的比特流。图像数据和编码信息提取器220从解析的比特流针对每个编码单元提取编码的图像数据,并将提取的图像数据输出到图像数据解码器230,其中,编码单元具有根据每个最大编码单元的树结构。图像数据和编码信息提取器220可从关于当前画面的头、序列参数集或画面参数集提取关于当前画面的编码单元的最大尺寸的信息。
此外,图像数据和编码信息提取器220从解析的比特流根据每个最大编码单元提取具有树结构的编码单元的最终深度和划分信息。提取的最终深度和划分信息被输出到图像数据解码器230。换句话说,比特流中的图像数据被划分为最大编码单元,使得图像数据解码器230针对每个最大编码单元对图像数据进行解码。
可针对至少一条深度信息设置根据最大编码单元的深度和划分信息,所述划分信息可包括关于相应编码单元的分区模式的信息、关于预测模式的信息和关于变换单元的划分的信息。此外,根据深度的划分信息可被提取为关于深度的信息。
由图像数据和编码信息提取器220提取的根据每个最大编码单元的深度和划分信息是这样的深度和划分信息:所述深度和划分信息被确定为在编码器(诸如,根据各种实施例的视频编码设备100)根据每个最大编码单元对根据深度的每个较深层编码单元重复地执行编码时产生最小编码误差。因此,视频解码设备200可通过根据产生最小编码误差的编码深度和编码模式对图像数据进行解码来重建图像。
由于根据各种实施例的关于深度和编码模式的编码信息可被分配给相应的编码单元、预测单元和最小单元之中的预定数据单元,因此图像数据和编码信息提取器220可根据预定数据单元提取深度和划分信息。如果相应最大编码单元的深度和划分信息根据预定数据单元被记录,则可将被分配相同的深度和相同的划分信息的预定数据单元推断为是包括在同一最大编码单元中的数据单元。
图像数据解码器230可通过基于根据最大编码单元的深度和划分信息对每个最大编码单元中的图像数据进行解码来重建当前画面。换句话说,图像数据解码器230可基于提取出的关于包括在每个最大编码单元中的具有树结构的编码单元之中的每个编码单元的分区模式、预测模式和变换单元的信息,对编码的图像数据进行解码。解码处理可包括预测(包含帧内预测和运动补偿)和逆变换。
图像数据解码器230可基于关于根据深度的编码单元的预测单元的分区模式和预测模式的信息,根据每个编码单元的分区和预测模式执行帧内预测或运动补偿。
此外,图像数据解码器230可针对每个编码单元读取关于根据树结构的变换单元的信息,以便基于每个编码单元的变换单元执行逆变换,以针对每个最大编码单元来进行逆变换。经过逆变换,可重建编码单元的空间域的像素值。
图像数据解码器230可通过使用根据深度的划分信息来确定当前最大编码单元的深度。如果划分信息指示图像数据在当前深度中不再被划分,则当前深度是深度。因此,图像数据解码器230可通过使用关于预测单元的分区模式的信息、关于预测模式的信息和关于变换单元的尺寸的信息,对当前最大编码单元中的编码的数据进行解码。
换句话说,可通过观察被分配用于编码单元、预测单元和最小单元之中的预定数据单元的编码信息集来收集包含包括相同划分信息的编码信息的数据单元,并且收集的数据单元可被认为是将由图像数据解码器230以相同编码模式进行解码的一个数据单元。因此,可通过获得关于每个编码单元的编码模式的信息来对当前编码单元进行解码。
以上参照图2a描述的层间视频解码设备40可包括与视点数一样多的视频解码设备200,以便通过对接收到的第一层图像流和接收到第二层图像流进行解码来重建第一层图像和第二层图像。
当第一层图像流被接收时,视频解码设备200的图像数据解码器230可将由图像数据和编码信息提取器220从第一层图像流提取的第一层图像的样点划分为具有树结构的编码单元。图像数据解码器230可通过对通过划分第一层图像的样点而获得的具有树结构的编码单元执行用于帧间预测的根据预测单元的运动补偿,重建第一层图像。
当第二层图像流被接收时,视频解码设备200的图像数据解码器230可将由图像数据和编码信息提取器220从第二层图像流提取的第二层图像的样点划分为具有据树结构的编码单元。图像数据解码器230可通过对通过划分第二层图像的样点而获得的编码单元执行用于帧间预测的根据预测单元的运动补偿,重建第二层图像。
提取器220可从比特流获得与亮度误差相关的信息,以便补偿第一视层图像和第二层图像之间的亮度差。然而,可根据编码单元的编码模式确定是否执行亮度补偿。例如,可仅对尺寸为2N×2N的预测单元执行亮度补偿。
因此,视频解码设备200可获得与在对每个最大编码单元递归地执行编码时产生最小编码误差的至少一个编码单元有关的信息,并可使用所述信息来对当前画面进行解码。换句话说,可对每个最大编码单元中的被确定为最优编码单元的具有树结构的编码单元进行解码。
因此,即使图像数据具有高分辨率和大数据量,也可通过使用通过使用编码单元的尺寸和编码模式来有效地对图像数据进行解码和重建,其中,所述编码单元的尺寸和编码模式是通过使用从编码器接收的最优划分信息,根据图像数据的特性而被自适应地确定的。
图10是用于描述根据各种实施例的编码单元的构思的示图。
编码单元的尺寸可由宽度×高度来表示,并且可以是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的分区。
在视频数据310中,分辨率为1920×1080,编码单元的最大尺寸为64,最大深度为2。在视频数据320中,分辨率为1920×1080,编码单元的最大尺寸为64,最大深度为3。在视频数据330中,分辨率为352×288,编码单元的最大尺寸为16,最大深度为1。图10中示出的最大深度表示从最大编码单元到最小解码单元的划分总次数。
如果分辨率高或数据量大,则编码单元的最大尺寸可能较大,从而不仅提高编码效率,而且准确地反映图像的特征。因此,具有比视频数据330更高分辨率的视频数据310和320的编码单元的最大尺寸可以是64。
由于视频数据310的最大深度是2,因此由于通过对最大编码单元划分两次,深度加深至两层,因此视频数据310的编码单元315可包括长轴尺寸为64的最大编码单元和长轴尺寸为32和16的编码单元。由于视频数据330的最大深度是1,因此由于通过对最大编码单元划分一次,深度加深至一层,因此视频数据330的编码单元335可包括长轴尺寸为16的最大编码单元和长轴尺寸为8的编码单元。
由于视频数据320的最大深度是3,因此由于通过对最大编码单元划分三次,深度加深至3层,因此视频数据320的编码单元325可包括长轴尺寸为64的最大编码单元和长轴尺寸为32、16和8的编码单元。随着深度加深,可准确地表达详细信息。
图11是根据各种实施例的基于编码单元的图像编码器400的框图。
根据一些实施例的图像编码器400执行视频编码设备100的编码单元确定器120对图像数据进行编码的操作。换句话说,帧内预测器420在当前帧405中根据每个预测单元对帧内模式下的编码单元执行帧内预测,帧间预测器415根据每个预测单元通过使用当前图像405和由恢复画面缓冲器410获得的参考图像对帧间模式下的编码单元执行帧间预测。当前画面405可被划分为最大编码单元,然后最大编码单元可被顺序编码。在这方面,可对从最大编码单元按照树结构划分的编码单元执行编码。
通过从与将被编码的当前图像405的数据减去从帧内预测器420或帧间预测器415输出的每个模式的编码单元的预测数据来产生残差数据,并且所述残差数据根据每个变换单元通过变换器425和量化器430被输出为量化后的变换系数。量化后的变换系数通过反量化器445和逆变换器450被恢复为空间域中的残差数据。空间域中的残差数据被添加到从帧内预测器420或帧间预测器415输出的每个模式的编码单元的预测数据,从而被恢复为当前图像405的编码单元的空间域中的数据。空间域中的数据通过去块器455和样点自适应偏移(SAO)执行器460,因此恢复的图像被产生。恢复的图像被存储在恢复画面缓冲器410中。恢复画面缓冲器410中存储的恢复的图像可被用作用于另一图像的帧间预测的参考图像。通过变换器425和量化器430获得的量化的变换系数可通过熵编码器435被输出为比特流440。
为了将根据一些实施例的图像编码器400应用于视频编码设备100,图像编码器400的组件(即,帧间预测器415、帧内预测器420、变换器425、量化器430、熵编码器435、反量化器445、逆变换器450、去块单元455和SAO执行器460)根据每个最大编码单元基于具有树结构的编码单元之中的每个编码单元执行操作。
具体地,帧内预测器420和帧间预测器415可在考虑当前最大编码单元的最大尺寸和最大深度的同时确定具有树结构的编码单元之中的每个编码单元的分区和预测模式,变换器425可确定是否在具有树结构的编码单元之中的每个编码单元中根据四叉树划分变换单元。
图12是根据各种实施例的基于编码单元的图像解码器500的框图。
熵解码器515从比特流505解析将被解码的编码图像数据和解码所需的编码信息。编码图像数据是量化后的变换系数,并且反量化器520和逆变换器525从所述量化后的变换系数恢复残差数据。
帧内预测器540根据预测单元对帧内模式下的编码单元执行帧内预测。帧间预测器通过使用由恢复画面缓冲器530获得的参考图像,根据预测单元对来自当前图像的帧间模式下的编码单元执行帧间预测。
通过经由帧内预测器和帧间预测器535将残差数据和每个模式的编码单元的预测数据相加,当前图像的编码单元的空间域中的数据被恢复,并且空间域中的数据可通过去块单元545和SAO执行器550被输出为恢复的图像。恢复画面缓冲器530中存储的恢复的图像可被输出为参考图像。
为了在视频解码设备200的图像数据解码器230中对图像数据进行解码,可执行根据一些实施例的图像解码器500的熵解码器515之后的操作。
为了将图像解码器500应用于根据一些实施例的视频解码设备200,图像解码器500的组件(即,熵解码器515、反量化器520、逆变换器525、帧内预测器540、帧间预测器535、去块单元545和SAO执行器550)可针对每个最大编码单元基于具有树结构的编码单元执行操作。
具体地,帧内预测器540和帧间预测器535根据具有树结构的编码单元中的每个编码单元确定分区模式和预测模式,逆变换器525可针对每个编码单元确定是否根据四叉树结构划分变换单元。
图10的编码操作和图11的解码操作分别是单层中的视频流编码操作和视频流解码操作。因此,当图1a的编码器12对至少两层的视频流进行编码时,图1a的视频编码设备100可包括与层数一样多的图像编码器400。类似地,当图2a的解码器44对至少两层的视频流进行解码时,图2a的视频解码设备40可包括与层数一样多的图像解码器500。
图13是示出根据各种实施例的编码单元以及分区的示图。
根据各种实施例的视频编码设备100和根据各种实施例的视频解码设备200使用分层编码单元以考虑图像的特征。可根据图像的特征自适应地确定编码单元的最大高度、最大宽度和最大深度,或可由用户不同地设置编码单元的最大高度、最大宽度和最大深度。可根据编码单元的预定最大尺寸来确定根据深度的较深层编码单元的尺寸。
在根据各种实施例的编码单元的分层结构600中,编码单元的最大高度和最大宽度均是64,最大深度是3。在此情况下,最大深度是指编码单元从最大编码单元到最小编码单元被划分的总次数。由于深度沿着根据各种实施例的编码单元的分层结构600的垂直轴加深,因此较深层编码单元的高度和宽度均被划分。此外,预测单元和分区沿着分层结构600的水平轴被示出,其中,所述预测单元和分区是对每个较深层编码单元进行预测编码的基础。
换句话说,编码单元610是分层结构600中的最大编码单元,其中,深度为0,尺寸(即,高度乘宽度)为64×64。深度沿着垂直轴加深,存在尺寸为32×32且深度为1的编码单元620、尺寸为16×16且深度为2的编码单元630、尺寸为8×8且深度为3的编码单元640。尺寸为8×8和深度为3的编码单元640是最小编码单元。
编码单元的预测单元和分区根据每个深度沿着水平轴被排列。换句话说,如果尺寸为64×64且深度为0的编码单元610是预测单元,则可将预测单元划分成包括在编码单元610中的分区,即,尺寸为64×64的分区610、尺寸为64×32的分区612、尺寸为32×64的分区614或尺寸为32×32的分区616。
类似地,可将尺寸为32×32且深度为1的编码单元620的预测单元划分成包括在编码单元620中的分区,即,尺寸为32×32的分区620、尺寸为32×16的分区622、尺寸为16×32的分区624和尺寸为16×16的分区626。
类似地,可将尺寸为16×16且深度为2的编码单元630的预测单元划分成包括在编码单元630中的分区,即,包括在编码度单元630中的尺寸为16×16的分区、尺寸为16×8的分区632、尺寸为8×16的分区634和尺寸为8×8的分区636。
类似地,可将尺寸为8×8且深度为3的编码单元640的预测单元划分成包括在编码单元640中的分区,即,包括在编码单元640中的尺寸为8×8的分区、尺寸为8×4的分区642、尺寸为4×8的分区644和尺寸为4×4的分区646。
为了确定最大编码单元610的深度,根据各种实施例的视频编码设备100的编码单元确定器120对包括在最大编码单元610中的与每个深度相应的编码单元执行编码。
随着深度加深,包括具有相同范围和相同尺寸的数据的根据深度的较深层编码单元的数量增加。例如,需要四个与深度2相应的编码单元来覆盖包括在与深度1相应的一个编码单元中的数据。因此,为了根据深度比较对相同数据进行编码的结果,与深度1相应的编码单元和四个与深度2相应的编码单元均被编码。
为了针对多个深度之中的当前深度执行编码,可沿着分层结构600的水平轴,通过对与当前深度相应的编码单元中的每个预测单元执行编码,来针对当前深度选择最小编码误差。可选择地,随着深度沿着分层结构600的垂直轴加深,可通过针对每个深度执行编码来比较根据深度的最小编码误差,以搜索最小编码误差。最大编码单元610中的具有最小编码误差的深度和分区可被选为最大编码单元610的深度和分区模式。
图14是用于描述根据各种实施例的编码单元和变换单元之间的关系的示图。
根据各种实施例的视频编码设备100或根据各种实施例的视频解码设备200针对每个最大编码单元,根据具有小于或等于最大编码单元的尺寸的编码单元对图像进行编码或解码。可基于不大于相应编码单元的数据单元来选择用于在编码期间进行变换的变换单元的尺寸。
例如,在根据各种实施例的视频编码设备100或根据各种实施例的视频解码设备200中,如果编码单元710的尺寸是64×64,则可通过使用尺寸为32×32的变换单元720来执行变换。
此外,可通过对小于64×64的尺寸为32×32、16×16、8×8和4×4的变换单元中的每一个执行变换,来对尺寸为64×64的编码单元710的数据进行编码,然后可选择具有最小编码误差的变换单元。
图15是用于描述根据各种实施例的编码信息的示图。
根据各种实施例的视频编码设备100的输出单元130可对与深度相应的每个编码单元的关于分区模式的信息800、关于预测模式的信息810以及关于变换单元的尺寸的信息820进行编码,并将信息800、信息810以及信息820作为划分信息来发送。
信息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。
信息810指示每个分区的预测模式。例如,信息810可指示对由信息800指示的分区执行的预测编码的模式,即,帧内模式812、帧间模式814或跳过模式816。
信息820指示当对当前编码单元执行变换时所基于的变换单元。例如,变换单元可以是第一帧内变换单元822、第二帧内变换单元824、第一帧间变换单元826或第二帧间变换单元828。
根据各种实施例的视频解码设备200的图像数据和编码信息提取器220可根据每个较深层编码单元,提取并使用用于解码的信息800、信息810和信息820。
图16是根据各种实施例的根据深度的较深层编码单元的示图。
划分信息可用来指示深度的改变。划分信息指示当前深度的编码单元是否被划分成更低深度的编码单元。
用于对深度为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。图9仅示出了通过对称地划分预测单元而获得的分区912至918,但是分区模式不限于此,并且预测单元的分区可包括非对称分区、具有预定形状的分区和具有几何形状的分区。
根据每种分区模式,对尺寸为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的分区执行跳过模式下的预测编码。
如果在分区模式912至916中的一个分区模式中编码误差最小,则可不将预测单元910划分到更低深度。
如果在分区模式918中编码误差最小,则深度从0改变到1以在操作920中对分区模式918进行划分,并对深度为2且尺寸为N_0×N_0的编码单元930重复地执行编码来搜索最小编码误差。
用于对深度为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。
如果在分区模式948中编码误差最小,则深度从1改变到2以在操作950中对分区模式948进行划分,并对深度为2且尺寸为N_2×N_2的编码单元960重复执行编码来搜索最小编码误差。
当最大深度是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。
可对分区模式之中的尺寸为2N_(d-1)×2N_(d-1)的一个分区、尺寸为2N_(d-1)×N_(d-1)的两个分区、尺寸为N_(d-1)×2N_(d-1)的两个分区、尺寸为N_(d-1)×N_(d-1)的四个分区重复地执行预测编码,以搜索具有最小编码误差的分区模式。
即使当分区模式998具有最小编码误差时,由于最大深度是d,因此深度为d-1的编码单元CU_(d-1)不再被划分到更低深度,用于构成当前最大编码单元900的编码单元的深度被确定为d-1,并且当前最大编码单元900的分区模式可被确定为N_(d-1)×N_(d-1)。此外,由于最大深度是d,因此不设置针对深度为d-1的编码单元952的划分信息。
数据单元999可以是用于当前最大编码单元的“最小单元”。根据各种实施例的最小单元可以是通过将具有最低深度的最小编码单元划分成4份而获得的正方形数据单元。通过重复地执行编码,根据各种实施例的视频编码设备100可通过比较根据编码单元900的深度的编码误差来选择具有最小编码误差的深度以确定深度,并将相应分区模式和预测模式设置为深度的编码模式。
这样,在所有深度1至d中对根据深度的最小编码误差进行比较,并且具有最小编码误差的深度可被确定为深度。该深度、预测单元的分区模式和预测模式可作为划分信息被编码并被发送。此外,由于编码单元从0的深度被划分到该深度,因此仅将该深度的划分信息设置为0,并且将除了该深度以外的深度的划分信息设置为1。
根据各种实施例的视频解码设备200的图像数据和编码信息提取器220可提取并使用关于编码单元900的深度和预测单元的信息,以对分区912进行解码。根据各种实施例的视频解码设备200可通过使用根据深度的划分信息,将划分信息为0的深度确定为深度,并且使用相应深度的划分信息来进行解码。
图17至图19是用于描述根据各种实施例的在编码单元、预测单元和变换单元之间的关系的示图。
编码单元1010是最大编码单元中的根据由根据各种实施例的视频编码设备100确定的深度的具有树结构的编码单元。预测单元1060是根据深度的每个编码单元的预测单元的分区,变换单元1070是根据深度的每个编码单元的变换单元。
当在编码单元1010中最大编码单元的深度是0时,编码单元1012和1054的深度是1,编码单元1014、1016、1018、1028、1050和1052的深度是2,编码单元1020、1022、1024、1026、1030、1032和1048的深度是3,编码单元1040、1042、1044和1046的深度是4。
在预测单元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的预测单元和分区小于或等于每个编码单元。
在小于编码单元1052的数据单元中的变换单元1070中,对编码单元1052的图像数据执行变换或逆变换。此外,在尺寸和形状方面,变换单元1070中的编码单元1014、1016、1022、1032、1048、1050和1052不同于预测单元1060中的编码单元1014、1016、1022、1032、1048、1050和1052。换句话说,根据各种实施例的视频编码设备100和视频解码设备200可对同一编码单元中的数据单元独立地执行帧内预测、运动估计、运动补偿、变换和逆变换。
因此,对最大编码单元的每个区域中的具有分层结构的每个编码单元递归地执行编码来确定最优编码单元,从而可获得具有递归树结构的编码单元。编码信息可包括关于编码单元的划分信息、关于分区模式的信息、关于预测模式的信息和关于变换单元的尺寸的信息。表1示出可由根据各种示例性实施例的视频编码设备100和视频解码设备200设置的编码信息。
[表1]
根据各种实施例的视频编码设备100的输出单元130可输出关于具有树结构的编码单元的编码信息,根据各种实施例的视频解码设备200的图像数据和编码信息提取器220可从接收到的比特流提取关于具有树结构的编码单元的编码信息。
划分信息指示是否将当前编码单元划分成更低深度的编码单元。如果当前深度d的划分信息是0,则当前编码单元不再被划分成更低深度的深度是深度,从而可针对深度来定义关于分区模式、预测模式和变换单元的尺寸的信息。如果当前编码单元根据划分信息被进一步划分,则对更低深度的四个划分编码单元独立地执行编码。
预测模式可以是帧内模式、帧间模式和跳过模式中的一种。可在所有分区模式中定义帧内模式和帧间模式,可仅在尺寸为2N×2N的分区模式中定义跳过模式。
关于分区模式的信息可指示通过对称地划分预测单元的高度或宽度而获得的尺寸为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的非对称分区模式。
可将变换单元的尺寸设置成帧内模式下的两种类型和帧间模式下的两种类型。换句话说,如果变换单元的划分信息是0,则变换单元的尺寸可以是2N×2N,即当前编码单元的尺寸。如果变换单元的划分信息是1,则可通过对当前编码单元进行划分来获得变换单元。此外,如果尺寸为2N×2N的当前编码单元的分区模式是对称分区模式,则变换单元的尺寸可被设置为N×N,如果当前编码单元的分区类型是非对称分区模式,则变换单元的尺寸可以是N/2×N/2。
根据各种实施例,关于具有树结构的编码单元的编码信息可包括与深度相应的编码单元、预测单元和最小单元中的至少一个。与深度相应的编码单元可包括包含相同编码信息的预测单元和最小单元中的至少一个。
因此,通过比较邻近数据单元的编码信息来确定邻近数据单元是否被包括在与深度相应的同一编码单元中。此外,通过使用数据单元的编码信息来确定与深度相应的相应编码单元,并因此可确定最大编码单元中的深度的分布。
因此,如果基于邻近数据单元的编码信息来对当前编码单元进行预测,则可直接参考并使用与当前编码单元邻近的较深层编码单元中的数据单元的编码信息。
可选择地,如果基于邻近数据单元的编码信息来对当前编码单元进行预测,则使用数据单元的编码信息来搜索与当前编码单元邻近的数据单元,并可参考搜索到的邻近编码单元来对当前编码单元进行预测。
图20是用于描述根据表1的编码模式信息的编码单元、预测单元和变换单元之间的关系的示图。
最大编码单元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。
变换单元的划分信息(TU尺寸标记)是一种类型的变换索引。与变换索引相应的变换单元的尺寸可根据编码单元的预测单元类型或分区模式而改变。
例如,当分区模式被设置为对称(即,分区模式1322、1324、1326或1328)时,如果变换单元的TU尺寸标记是0,则设置尺寸为2N×2N的变换单元1342,如果TU尺寸标记是1,则设置尺寸为N×N的变换单元1344。
当分区模式被设置成非对称(即,分区模式1332、1334、1336或1338)时,如果TU尺寸标记是0,则设置尺寸为2N×2N的变换单元1352,如果TU尺寸标记是1,则设置尺寸为N/2×N/2的变换单元1354。
参照图19,TU尺寸标记是具有值0或1的标志,但是根据一些示例性实施例的TU尺寸标记不限于1比特,并且变换单元可在TU尺寸标记从0增加时被分层划分为具有树结构。变换单元的划分信息(TU尺寸标记)可以是变换索引的示例。
在这种情况下,可通过使用根据各种实施例的变换单元的TU尺寸标记以及变换单元的最大尺寸和最小尺寸来表示实际上已使用的变换单元的尺寸。根据各种实施例的视频编码设备100能够对最大变换单元尺寸信息、最小变换单元尺寸信息和最大TU尺寸标记进行编码。对最大变换单元尺寸信息、最小变换单元尺寸信息和最大TU尺寸标记进行编码的结果可被插入SPS。根据各种实施例的视频解码设备200可通过使用最大变换单元尺寸信息、最小变换单元尺寸信息和最大TU尺寸标记来对视频进行解码。
例如,(a)如果当前编码单元的尺寸是64×64并且最大变换单元尺寸是32×32,则(a-1)当TU尺寸标记为0时,变换单元的尺寸可以是32×32,(a-2)当TU尺寸标记为1时,变换单元的尺寸可以是16×16,(a-3)当TU尺寸标记为2时,变换单元的尺寸可以是8×8。
作为另一示例,(b)如果当前编码单元的尺寸是32×32并且最小变换单元尺寸是32×32,则(b-1)当TU尺寸标记为0时,变换单元的尺寸可以是32×32。这里,由于变换单元的尺寸不能够小于32×32,因此TU尺寸标记不能够被设置为除了0以外的值。
作为另一示例,(c)如果当前编码单元的尺寸是64×64并且最大TU尺寸标记为1,则TU尺寸标记可以是0或1。这里,TU尺寸标记不能够被设置为除了0或1以外的值。
因此,如果定义最大TU尺寸标记为“MaxTransformSizeIndex”,最小变换单元尺寸为“MinTransformSize”,并且当TU尺寸标记为0时的变换单元尺寸为“RootTuSize”,则可通过等式(1)来定义可在当前编码单元中确定的当前最小变换单元尺寸“CurrMinTuSize”:
CurrMinTuSize=max(MinTransformSize,RootTuSize/(2^MaxTransformSizeIndex))
…(1)
与可在当前编码单元中确定的当前最小变换单元尺寸“CurrMinTuSize”相比,当TU尺寸标记为0时的变换单元尺寸“RootTuSize”可指示可在系统中选择的最大变换单元尺寸。在等式(1)中,“RootTuSize/(2^MaxTransformSizeIndex)”指示当TU尺寸标记为0时,变换单元尺寸“RootTuSize”被划分了与最大TU尺寸标记相应的次数时的变换单元尺寸,“MinTransformSize”指示最小变换尺寸。因此,“RootTuSize/(2^MaxTransformSizeIndex)”和“MinTransformSize”中较小的值可以是可在当前编码单元中确定的当前最小变换单元尺寸“CurrMinTuSize”。
根据各种实施例,最大变换单元尺寸RootTuSize可根据预测模式的类型而改变。
例如,如果当前预测模式是帧间模式,则可通过使用以下的等式(2)来确定“RootTuSize”。在等式(2)中,“MaxTransformSize”指示最大变换单元尺寸,“PUSize”指示当前预测单元尺寸。
RootTuSize=min(MaxTransformSize,PUSize)……(2)
也就是说,如果当前预测模式是帧间模式,则当TU尺寸标记为0时的变换单元尺寸“RootTuSize”可以是最大变换单元尺寸和当前预测单元尺寸中较小的值。
如果当前分区单元的预测模式是帧内模式,则可通过使用以下的等式(3)来确定“RootTuSize”。在等式(3)中,“PartitionSize”指示当前分区单元的尺寸:
RootTuSize=min(MaxTransformSize,PartitionSize)……(3)
也就是说,如果当前预测模式是帧内模式,则当TU尺寸标记为0时的变换单元尺寸“RootTuSize”可以是最大变换单元尺寸和当前分区单元的尺寸之中较小的值。
然而,根据分区单元中的预测模式的类型而改变的当前最大变换单元尺寸“RootTuSize”仅是示例,并且本公开不限于此。
根据参照图8至图20描述的基于具有树结构的编码单元的视频编码方法,可针对树结构的每个编码单元对空间域的图像数据进行编码。根据基于具有树结构的编码单元的视频解码方法,对每个最大编码单元执行解码来重建空间域的图像数据。因此,画面和作为画面序列的视频可被重建。重建的视频可由再现设备来再现,可存储在存储介质中,或可通过网络来发送。
根据本公开的实施例可被编写为计算机程序,并可实现在使用计算机可读记录介质执行程序的通用数字计算机中。计算机可读记录介质的示例包括磁存储介质(例如,ROM、软盘、硬盘等)和光学记录介质(例如,CD-ROM或DVD)等。
为便于描述,以上参照图1a至图20描述的层间视频编码方法和/或视频编码方法将被统称为“本公开的视频编码方法”。此外,以上参照图1a至图20描述的层间视频解码方法和/或视频解码方法将被称为“本公开的视频解码方法”。
此外,已参照图1a至图20描述的包括层间视频编码设备10、视频编码设备100或图像编码器400的视频编码设备将被称为“本公开的视频编码设备”。此外,已参照图1a至图20描述的包括层间视频解码设备40、视频解码设备200或图像解码器500的视频解码设备将被称为“本公开的视频解码设备”。
现在将详细描述根据各种实施例的存储程序的计算机可读记录介质(例如,盘26000)。
图21是根据各种实施例的存储程序的盘26000的物理结构的示图。作为存储介质的盘26000可以是硬盘驱动器、致密盘只读存储器(CD-ROM)盘、蓝光盘或数字多功能盘(DVD)。盘26000包括多个同心磁道Tr,每个同心磁道Tr沿盘26000的圆周方向被划分成特定数量的扇区Se。在根据各种实施例的盘26000的特定区域中,可分配并存储执行以上所描述的量化参数确定方法、视频编码方法和视频解码方法的程序。
现在将参照图22来描述使用存储用于执行如上所述的视频编码方法和视频解码方法的程序的存储介质来实现的计算机系统。
图22是通过使用盘26000来记录并读取程序的盘驱动器26800的示图。计算机系统27000可经由盘驱动器26800将执行本公开的视频编码方法和视频解码方法中的至少一个的程序存储在盘26000中。为了在计算机系统27000中运行存储在盘26000中的程序,可通过使用盘驱动器27000从盘26000读取程序并将程序发送到计算机系统26700。
执行本公开的视频编码方法和视频解码方法中的至少一个的程序不仅可被存储在图21或图22中示出的盘26000中,还可被存储在存储卡、ROM卡带或固态驱动器(SSD)中。
以下将描述应用以上所描述的视频编码方法和视频解码方法的系统。
图23是用于提供内容分发服务的内容供应系统11000的整体结构的示图。将通信系统的服务区域划分成预定尺寸的小区,并将无线基站11700、11800、11900和12000分别安装在这些小区中。
内容供应系统11000包括多个独立装置。例如,诸如计算机12100、个人数字助理(PDA)12200、视频相机12300和移动电话12500的多个独立装置经由互联网服务提供器11200、通信网络11400和无线基站11700、11800、11900和12000连接到互联网11100。
然而,内容供应系统11000不限于如图24中所示,并且装置可选择性地被连接到内容供应系统11000。多个独立装置可不经由无线基站11700、11800、11900和12000而直接连接到通信网络11400。
视频相机12300是能够捕捉视频图像的成像装置,例如,数字视频相机。移动电话12500可利用各种协议(例如,个人数字通信(PDC)、码分多址(CDMA)、宽带码分多址(W-CDMA)、全球移动通信系统(GSM)和个人手持电话系统(PHS))中的至少一种通信方法。
视频相机12300可经由无线基站11900和通信网络11400连接到流服务器11300。流服务器11300允许经由视频相机12300从用户接收到的内容经由实时广播被流传输。可使用视频相机12300或流服务器11300来对从视频相机12300接收到的内容进行编码。通过视频相机12300捕捉到的视频数据可经由计算机12100被发送到流服务器11300。
通过相机12600捕捉到的视频数据也可经由计算机12100被发送到流服务器11300。与数码相机类似,相机12600是能够捕捉静止图像和视频图像两者的成像装置。可使用相机12600或计算机12100对通过相机12600捕捉到的视频数据进行编码。可将对视频执行编码和解码的软件可存储在可由计算机12100访问的计算机可读记录介质(例如,CD-ROM盘、软盘、硬盘驱动器、SSD或存储卡)中。
如果视频数据通过内置在移动电话12500中的相机被捕捉到,则可从移动电话12500接收视频数据。
还可通过安装在视频相机12300、移动电话12500或相机12600中的大规模集成电路(LSI)系统来对视频数据进行编码。
根据各种实施例的内容供应系统11000可对由用户使用视频相机12300、相机12600、移动电话12500或另一成像装置所记录的内容数据(例如,在音乐会期间记录的内容)进行编码,并将编码后的内容数据发送到流服务器11300。流服务器11300可将流传输内容的类型的编码后的内容数据发送到请求内容数据的其它客户端。
客户端是能够对编码后的内容数据进行解码的装置,例如,计算机12100、PDA12200、视频相机12300或移动电话12500。因此,内容供应系统11000允许客户端接收并再现编码后的内容数据。此外,内容供应系统11000允许客户端实时接收编码后的内容数据并对编码后的内容数据进行解码和再现,从而能够进行个人广播。
包括在内容供应系统11000中的多个独立装置的编码和解码操作可类似于本公开的视频编码设备和视频解码设备的编码和解码操作。
现在将参照图24和图25更加详细地描述包括在根据实施例的内容供应系统11000中的移动电话12500。
图24示出根据各种实施例的应用本公开的视频编码方法和视频解码方法的移动电话12500的外部结构。移动电话12500可以是智能电话,所述智能电话的功能不受限,并且所述智能电话的大多数功能可被改变或扩展。
移动电话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)。
图25示出移动电话12500的内部结构。为了系统地控制包括显示屏12520和操作面板12540的移动电话12500的部件,供电电路12700、操作输入控制器12640、图像编码单元12720、相机接口12630、LCD控制器12620、图像解码单元12690、复用器/解复用器12680、记录/读取单元12670、调制/解调单元12660和声音处理器12650经由同步总线12730被连接到中央控制器12710。
如果用户操作电源按钮,并从“电源关闭”状态设置为“电源开启”状态,则供电电路12700从电池组向移动电话12500的所有部件供电,从而将移动电话12500设置为处于操作模式。
中央控制器12710包括中央处理器(CPU)、ROM和RAM。
在移动电话12500将通信数据发送到外部的同时,在中央控制器12710的控制下,由移动电话12500产生数字信号。例如,声音处理器12650可产生数字声音信号,图像编码单元12720可产生数字图像信号,并且消息的文本数据可经由操作面板12540和操作输入控制器12640被产生。当数字信号在中央控制器12710的控制下被发送到调制/解调单元12660时,调制/解调单元12660对数字信号的频带进行调制,并且通信电路12610对频带调制后的数字声音信号执行数模转换(DAC)和频率转换。从通信电路12610输出的发送信号可经由天线12510被发送到语音通信基站或无线基站12000。
例如,当移动电话12500处于通话模式时,在中央控制器12710的控制下,经由麦克风12550获得的声音信号通过声音处理器12650被变换成数字声音信号。数字声音信号可经由调制/解调单元12660和通信电路12610被变换成变换信号,并可经由天线12510被发送。
当文本消息(例如,电子邮件)在数据通信模式下被发送时,文本消息的文本数据经由操作面板12540被输入,并经由操作输入控制器12640被发送到中央控制器12610。在中央控制器12610的控制下,文本数据经由调制/解调单元12660和通信电路12610被变换成发送信号,并经由天线12510被发送到无线基站12000。
为了在数据通信模式下发送图像数据,由相机12530捕捉到的图像数据经由相机接口12630被提供给图像编码单元12720。捕捉到的图像数据可经由相机接口12630和LCD控制器12620被直接显示在显示屏12520上。
图像编码单元12720的结构可与上述视频编码设备100的结构相应。图像编码单元12720可根据上述视频编码方法,将从相机12530接收到的图像数据变换为压缩和编码后的图像数据,并随后将编码后的图像数据输出到复用器/解复用器12680。在相机12530的记录操作期间,由移动电话12500的麦克风12550获得的声音信号可经由声音处理器12650被变换成数字声音数据,并且数字声音数据可被发送到复用器/解复用器12680。
复用器/解复用器12680对从图像编码单元12720接收到的编码后的图像数据与从声音处理器12650接收到的声音数据一起进行复用。对数据进行复用的结果可经由调制/解调单元12660和通信电路12610被变换成发送信号,然后可经由天线12510被发送。
当移动电话12500从外部接收到通信数据时,可对经由天线12510接收到的信号执行频率恢复和ADC以将信号变换成数字信号。调制/解调单元12660对数字信号的频带进行调制。根据频带调制后的数字信号的类型,将所述数字信号发送到视频解码单元12690、声音处理器12650或LCD控制器12620。
在通话模式下,移动电话12500对经由天线12510接收到的信号进行放大,并通过对放大后的信号执行频率转换和ADC来获得数字声音信号。在中央控制器12710的控制下,接收到的数字声音信号经由调制/解调单元12660和声音处理器12650被变换成模拟声音信号,并且模拟声音信号经由扬声器12580被输出。
当在数据通信模式下时,接收在互联网网站上访问的视频文件的数据,经由调制/解调单元12660将经由天线12510从无线基站12000接收到的信号输出为复用数据,并将复用数据发送到复用器/解复用器12680。
为了对经由天线12510接收到的复用数据进行解码,复用器/解复用器12680将复用数据解复用成编码后的视频数据流和编码后的音频数据流。经由同步总线12730,编码后的视频数据流和编码后的音频数据流分别被提供给视频解码单元12690和声音处理器12650。
图像解码单元12690的结构可与上述视频解码设备200的结构相应。图像解码单元12690可根据由上述视频解码设备200或图像解码器500采用的视频解码方法,对编码后的视频数据进行解码来获得重建的视频数据,并经由LCD控制器12620将重建的视频数据提供给显示屏12520。
因此,可将在互联网网站上访问的视频文件的数据显示在显示屏12520上。同时,声音处理器12650可将音频数据变换成模拟声音信号,并将模拟声音信号提供给扬声器12580。因此,也可经由扬声器12580再现在互联网网站上访问的视频文件中包含的音频数据。
移动电话12500或另一类型的通信终端可以是包括本公开的视频编码设备和视频解码设备两者的收发终端,可以是仅包括视频编码设备的收发终端,或者可以是仅包括视频解码设备的收发终端。
根据本公开的通信系统不限于以上参照图24描述的通信系统。例如,图26示出根据各种实施例的采用通信系统的数字广播系统。根据各种实施例的图26的数字广播系统可通过使用本公开的视频编码设备和视频解码设备来接收经由卫星或地面网络发送的数字广播。
具体地,广播站12890通过使用无线电波将视频数据流发送到通信卫星或广播卫星12900。广播卫星12900发送广播信号,广播信号经由家用天线12860被发送到卫星广播接收器。在每个房屋中,可通过TV接收器12810、机顶盒12870或其它装置对编码后的视频流进行解码和再现。
当本公开的视频解码设备被实现在再现设备12830中时,再现设备12830可对记录在存储介质12820(诸如盘或存储卡)上的编码后的视频流进行解析和解码,以重建数字信号。因此,可在例如监视器12840上再现重建的视频信号。
在被连接到用于卫星/地面广播的天线12860或用于接收有线电视(TV)广播的有线天线12850的机顶盒12870中,可安装本公开的视频解码设备。从机顶盒12870输出的数据也可被再现在TV监视器12880上。
作为另一示例,可将本公开的视频解码设备安装在TV接收器12810中,而不是机顶盒12870中。
具有合适的天线12910的汽车12920可接收从图23的卫星12900或无线基站11700发送的信号。可在安装在汽车12920中的汽车导航系统12930的显示屏上再现解码后的视频。
视频信号可由本公开的视频编码设备来编码,然后可被存储在存储介质中。具体地,可由DVD记录器将图像信号存储在DVD盘12960中,或可由硬盘记录器12950将图像信号存储在硬盘中。作为另一示例,可将视频信号存储在SD卡12970中。如果硬盘记录器12950包括根据各种实施例的本公开的视频解码设备,则记录在DVD盘12960、SD卡12970或另一存储介质上的视频信号可在TV监视器12880上被再现。汽车导航系统12930可不包括图26的相机12530、相机接口12630和图像编码单元12720。例如,计算机12100和TV接收器12810可不包括在图26的相机12530、相机接口12630和图像编码单元12720中。
图27是示出根据各种实施例的使用视频编码设备和视频解码设备的云计算系统的网络结构的示图。
云计算系统可包括云计算服务器14000、用户数据库(DB)14100、多个计算资源14200和用户终端。
响应于来自用户终端的请求,云计算系统经由数据通信网络(例如,互联网)提供多个计算资源14200的点播外包服务。在云计算环境下,服务提供商通过使用虚拟化技术组合位于不同的物理位置的数据中心处的计算资源,为用户提供想要的服务。服务用户不必将计算资源(例如,应用、存储器、操作系统(OS)和安全软件)安装在他/她自己的终端中以使用它们,但可在想要的时间点在通过虚拟化技术产生的虚拟空间中从服务中选择和使用想要的服务。
指定的服务用户的用户终端经由包括互联网和移动电信网络的数据通信网络被连接到云计算服务器14000。可从云计算服务器14000向用户终端提供云计算服务,特别是视频再现服务。用户终端可以是能够被连接到互联网的各种类型的电子装置,例如,桌上型PC 14300、智能TV 14400、智能电话14500、笔记本计算机14600、便携式多媒体播放器(PMP)14700、平板PC14800等。
云计算服务器14000可组合分布在云网络中的多个计算资源14200,并向用户终端提供组合的结果。所述多个计算资源14200可包括各种数据服务,并可包括从用户终端上传的数据。如上所述,云计算服务器14000可通过根据虚拟化技术组合分布在不同区域中的视频数据库来向用户终端提供想要的服务。
将关于已经订购云计算服务的用户的用户信息存储在用户DB 14100中。用户信息可包括用户的登陆信息、地址、姓名和个人信用信息。用户信息还可包括视频的索引。这里,所述索引可包括已经被再现的视频的列表、正在被再现的视频的列表、之前正在被再现的视频的暂停点等。
可在用户装置之间共享存储在用户DB 14100中的关于视频的信息。例如,当响应于来自笔记本计算机14600的请求将视频服务提供给笔记本计算机14600时,视频服务的再现历史被存储在用户DB 14100中。当从智能电话14500接收到对于再现此视频服务的请求时,云计算服务器14000基于用户DB 14100搜索并再现此视频服务。当智能电话14500从云计算服务器14000接收到视频数据流时,通过对视频数据流进行解码来再现视频的处理与以上参照图24描述的移动电话12500的操作类似。
云计算服务器14000可参考存储在用户DB 14100中的想要的视频服务的再现历史。例如,云计算服务器14000从用户终端接收对于再现存储在用户DB 14100中的视频的请求。如果此视频被再现过,则由云计算服务器14000执行的对此视频进行流传输的方法可根据来自用户终端的请求(即,根据是将从视频的起点还是从视频的暂停点开始再现视频)而不同。例如,如果用户终端请求从视频的起点开始再现视频,则云计算服务器14000将从视频的第一帧开始的视频的流数据发送到用户终端。如果用户终端请求从视频的暂停点开始再现视频,则云计算服务器14000将从与暂停点相应的帧开始的视频的流数据发送到用户终端。
在此情况下,用户终端可包括以上参照图1a至图20描述的本公开的视频解码设备。作为另一示例,用户终端可包括以上参照图1a至图20描述的本公开的视频编码设备。可选择地,用户终端可包括以上参照图1a至图20描述的本公开的视频解码设备和视频编码设备两者。
以上参照图21至图27描述了以上参照图1a至图20描述的根据各种实施例的视频编码方法、视频解码方法、视频编码设备和视频解码设备的各种应用。然而,根据各种实施例的将视频编码方法和视频解码方法存储在存储介质中的方法或者将视频编码设备和视频解码设备实现在装置中的方法不限于以上参照图21至图27描述的实施例。
本领域的普通技术人员将理解,在不脱离由权利要求限定的本发明的精神和范围的情况下,可作出形式和细节上的各种改变。实施例应仅被看作描述性意义,而不是限制的目的。因此,本发明的范围不由本发明的详细描述来限定,而由权利要求来限定,在所述范围内的所有不同将被解释为包括在本公开中。

Claims (15)

1.一种层间视频解码方法,包括:
从比特流获得运动继承信息;
当运动继承信息指示第一层的与第二层的当前块相应的块的运动信息可用作第二层的运动信息时,确定第一层的所述块的与当前块的子块相应的子块之中的包括第一层的所述块的预定位置处的像素的子块的运动信息是否可用;
当确定包括第一层的所述块的预定位置处的像素的子块的运动信息可用时,获得第一层的所述块的与当前块的子块相应的子块的运动信息;
基于获得的第一层的所述块的与当前块的子块相应的子块的运动信息来确定当前块的子块的运动信息。
2.如权利要求1所述的层间视频解码方法,其中,所述预定位置处的像素是位于第一层的所述块的中心的像素。
3.如权利要求1所述的层间视频解码方法,其中,获得第一层的所述块的与当前块的子块相应的子块的运动信息的步骤包括:获得包括在第一层的所述块的与当前块的子块相应的子块之中的具有可用运动信息的子块的运动信息。
4.如权利要求1所述的层间视频解码方法,其中,确定当前块的子块的运动信息的步骤包括:当第一层的所述块的与当前块的子块相应的子块的运动信息可用时,基于第一层的所述块的与当前块的子块相应的子块的运动信息来确定当前块的子块的运动信息。
5.如权利要求1所述的层间视频解码方法,其中,确定当前块的子块的运动信息的步骤包括:当第一层的所述块的与当前块的子块相应的子块的运动信息不可用时,基于包括第一层的所述块的预定位置处的像素的子块的运动信息来确定当前块的子块的运动信息。
6.如权利要求1所述的层间视频解码方法,其中,运动信息包括参考列表、参考画面索引以及运动矢量预测值。
7.如权利要求1所述的层间视频解码方法,其中,获得第一层的所述块的与当前块的子块相应的子块的运动信息的步骤还包括:基于包括第一层的所述块的预定位置处的像素的子块的运动信息是否可用,确定包括作为合并候选的第一层的所述块的合并候选列表,其中,第一层的所述块包括第一层的所述块的与当前块的所述子块相应的子块。
8.如权利要求7所述的层间视频解码方法,其中,确定合并候选列表的步骤包括:当包括第一层的所述块的预定位置处的像素的子块的运动信息与包括在合并候选列表中且处于另一模式的合并候选的运动信息不同时,确定包括作为合并候选的第一层的所述块的合并候选列表。
9.如权利要求7所述的层间视频解码方法,其中,确定合并候选列表的步骤包括:当包括第一层的所述块的预定位置处的像素的子块的运动信息与当前块的邻近块的运动信息不同时,确定包括作为合并候选的所述邻近块的合并候选列表。
10.如权利要求1所述的层间视频解码方法,其中,层间视频包括多个视点的深度图像和纹理图像,
第二层是深度图像,第一层是与深度图像相应的纹理图像。
11.如权利要求1所述的层间视频解码方法,层间视频包括多个视点的纹理图像,
第二层是所述多个视点的纹理图像之中的一个视点的纹理图像,第一层是所述多个视点的纹理图像之中的与第二层的视点不同的另一视点的纹理图像。
12.一种层间视频解码设备,包括:
获得器,被配置为从比特流获得运动继承信息;
解码器,被配置为当运动继承信息指示第一层的与第二层的当前块相应的块的运动信息可用作第二层的运动信息时,确定第一层的所述块的与当前块的子块相应的子块之中的包括第一层的所述块的预定位置处的像素的子块的运动信息是否可用;当确定包括第一层的所述块的预定位置处的像素的子块的运动信息可用时,获得第一层的所述块的与当前块的子块相应的子块的运动信息;基于获得的第一层的所述块的与当前块的子块相应的子块的运动信息来确定当前块的子块的运动信息。
13.一种层间视频编码方法,包括:
确定第一层的块的与第二层的当前块的子块相应的子块之中的包括第一层的所述块的预定位置处的像素的子块的运动信息是否可用;
当确定包括第一层的所述块的预定位置处的像素的子块的运动信息可用时,获得第一层的所述块的与当前块的子块相应的子块的运动信息;
基于获得的第一层的所述块的与当前块的子块相应的子块的运动信息来确定当前块的子块的运动信息;
将指示第一层的所述块的运动信息是否可用作第二层的运动信息的运动继承信息添加到比特流。
14.一种层间视频编码设备,包括:
编码器,被配置为确定第一层的块的与第二层的当前块的子块相应的子块之中的包括第一层的所述块的预定位置处的像素的子块的运动信息是否可用;当确定包括第一层的所述块的预定位置处的像素的子块的运动信息可用时,获得第一层的所述块的与当前块的子块相应的子块的运动信息;基于获得的第一层的所述块的与当前块的子块相应的子块的运动信息来确定当前块的子块的运动信息;
比特流产生器,被配置为将指示第一层的所述块的运动信息是否可用作第二层的运动信息的运动继承信息添加到比特流。
15.一种记录有程序的计算机可读记录介质,其中,所述程序在被计算机执行时执行权利要求1的层间视频解码方法。
CN201580023943.9A 2014-03-06 2015-03-06 执行基于子块的预测的层间视频解码方法和层间视频编码方法及其设备 Withdrawn CN106464889A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201461948835P 2014-03-06 2014-03-06
US61/948,835 2014-03-06
PCT/KR2015/002195 WO2015133866A1 (ko) 2014-03-06 2015-03-06 서브 블록 기반 예측을 수행하는 인터 레이어 비디오 복호화 방법 및 그 장치 및 서브 블록 기반 예측을 수행하는 인터 레이어 비디오 부호화 방법 및 그 장치

Publications (1)

Publication Number Publication Date
CN106464889A true CN106464889A (zh) 2017-02-22

Family

ID=54055591

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580023943.9A Withdrawn CN106464889A (zh) 2014-03-06 2015-03-06 执行基于子块的预测的层间视频解码方法和层间视频编码方法及其设备

Country Status (4)

Country Link
US (1) US20170019680A1 (zh)
KR (1) KR102274322B1 (zh)
CN (1) CN106464889A (zh)
WO (1) WO2015133866A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108293132A (zh) * 2015-11-24 2018-07-17 三星电子株式会社 图像编码方法和装置以及图像解码方法和装置
WO2020114405A1 (en) * 2018-12-03 2020-06-11 Beijing Bytedance Network Technology Co., Ltd. Indication method of maximum number of candidates

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014082541A (ja) * 2012-10-12 2014-05-08 National Institute Of Information & Communication Technology 互いに類似した情報を含む複数画像のデータサイズを低減する方法、プログラムおよび装置
KR20170058838A (ko) 2015-11-19 2017-05-29 한국전자통신연구원 화면간 예측 향상을 위한 부호화/복호화 방법 및 장치
CN110024394B (zh) * 2016-11-28 2023-09-01 韩国电子通信研究院 对图像编码/解码的方法和设备及存储比特流的记录介质
CN110521211B (zh) * 2017-04-17 2023-06-16 索尼公司 发送设备、发送方法、接收设备、接收方法、记录设备和记录方法
KR102411661B1 (ko) * 2017-07-31 2022-06-21 삼성전자주식회사 영상 처리 방법 및 디바이스
WO2019103564A1 (ko) * 2017-11-27 2019-05-31 엘지전자 주식회사 영상 코딩 시스템에서 인터 예측에 따른 영상 디코딩 방법 및 장치
CN116781896A (zh) * 2018-06-27 2023-09-19 Lg电子株式会社 对视频信号进行编解码的方法和发送方法
WO2020084552A1 (en) * 2018-10-24 2020-04-30 Beijing Bytedance Network Technology Co., Ltd. Motion candidate derivation based on spatial neighboring block in sub-block motion vector prediction
US10904553B2 (en) * 2019-01-22 2021-01-26 Tencent America LLC Method and apparatus for video coding
US20220124310A1 (en) * 2019-02-21 2022-04-21 Electronics And Telecommunications Research Institute Method and device for encoding/decoding video, and recording medium for storing bitstream
CN116405697A (zh) * 2019-07-23 2023-07-07 杭州海康威视数字技术股份有限公司 一种编解码方法、装置及其设备
US11490122B2 (en) * 2020-09-24 2022-11-01 Tencent America LLC Method and apparatus for video coding

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1917647A (zh) * 2005-04-19 2007-02-21 三星电子株式会社 自适应地选择用于熵编码的上下文模型的方法和设备

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100746007B1 (ko) * 2005-04-19 2007-08-06 삼성전자주식회사 엔트로피 코딩의 컨텍스트 모델을 적응적으로 선택하는방법 및 비디오 디코더
US8711940B2 (en) * 2010-11-29 2014-04-29 Mediatek Inc. Method and apparatus of motion vector prediction with extended motion vector predictor
FR2986395A1 (fr) * 2012-01-30 2013-08-02 France Telecom Codage et decodage par heritage progressif
US9380289B2 (en) * 2012-07-20 2016-06-28 Qualcomm Incorporated Parameter sets in video coding
WO2014029086A1 (en) * 2012-08-22 2014-02-27 Mediatek Singapore Pte. Ltd. Methods to improve motion vector inheritance and inter-view motion prediction for depth map

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1917647A (zh) * 2005-04-19 2007-02-21 三星电子株式会社 自适应地选择用于熵编码的上下文模型的方法和设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
GERHARD TECH: "3D-HEVC Draft Text 3", 《JCT3V DOCUMENT JCT3V-G1001V1》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108293132A (zh) * 2015-11-24 2018-07-17 三星电子株式会社 图像编码方法和装置以及图像解码方法和装置
WO2020114405A1 (en) * 2018-12-03 2020-06-11 Beijing Bytedance Network Technology Co., Ltd. Indication method of maximum number of candidates
US11284068B2 (en) 2018-12-03 2022-03-22 Beijing Bytedance Network Technology Co., Ltd. Indication method of maximum number of candidates
US11412212B2 (en) 2018-12-03 2022-08-09 Beijing Bytedance Network Technology Co., Ltd. Partial pruning method for inter prediction
US11856185B2 (en) 2018-12-03 2023-12-26 Beijing Bytedance Network Technology Co., Ltd Pruning method in different prediction mode

Also Published As

Publication number Publication date
WO2015133866A1 (ko) 2015-09-11
KR20150105264A (ko) 2015-09-16
KR102274322B1 (ko) 2021-07-07
US20170019680A1 (en) 2017-01-19

Similar Documents

Publication Publication Date Title
CN106063271B (zh) 用于执行基于子块的预测的层间视频解码方法及其设备以及用于执行基于子块的预测的层间视频编码方法及其设备
CN106464889A (zh) 执行基于子块的预测的层间视频解码方法和层间视频编码方法及其设备
CN105532001B (zh) 用于使用基于深度的视差矢量对视频进行层间编码方法以及解码方法和设备
CN105308966B (zh) 视频编码方法及其设备以及视频解码方法及其设备
CN105103552B (zh) 用于补偿亮度差的对层间视频进行编码的方法及其装置以及用于对视频进行解码的方法及其装置
CN105532004B (zh) 层间视频解码方法及设备
CN107409214A (zh) 用于对层间视频进行解码的方法和设备以及用于对层间视频进行编码的方法和设备
CN105594212B (zh) 用于确定运动矢量的方法及其设备
CN106031175B (zh) 使用亮度补偿的层间视频编码方法及其装置、以及视频解码方法及其装置
CN105264894A (zh) 针对层间解码和编码方法以及设备的确定帧间预测候选的方法
CN104396252A (zh) 使用用于多视点视频预测的参考画面集的多视点视频编码方法及其装置、使用用于多视点视频预测的参考画面集的多视点视频解码方法及其装置
CN105556972B (zh) 用于层间视频解码和编码设备和方法的对深度图像的场景内预测方法
CN104620578A (zh) 用于随机访问的多层视频编码的方法和设备以及用于随机访问的多层视频解码的方法和设备
CN105556970A (zh) 使用修正矢量推导的视频编码方法及其设备、视频解码方法及其设备
CN104365104A (zh) 用于基于树结构编码单元进行多视点视频编码的方法和设备以及用于基于树结构编码单元进行多视点视频解码的方法和设备
CN105325002A (zh) 使用视点合成预测的多视点视频编码方法及其设备以及多视点视频解码方法及其设备
CN105340275A (zh) 使用视点合成预测的多视点视频编码方法及其设备以及多视点视频解码方法及其设备
CN106416256B (zh) 用于对深度图像进行编码或解码的方法和设备
CN104396251A (zh) 使用用于多视点视频预测的参考列表对多视点视频进行编码的方法及其装置以及使用用于多视点视频预测的参考列表对多视点视频进行解码的方法及其装置
CN105165011A (zh) 用于考虑存储器带宽和计算量的可伸缩视频编码的装置和方法以及用于可伸缩视频解码的装置和方法
CN106105208A (zh) 可伸缩视频编码/解码方法和设备
CN106105210A (zh) 管理用于对多层视频进行编码和解码的缓冲器的方法和设备
CN107005705B (zh) 使用层间预测对多层图像进行编码或解码的方法和装置
CN107005710B (zh) 多视点图像编码/解码方法和装置
CN106664415A (zh) 使用深度块的多层视频编码方法和多层视频解码方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WW01 Invention patent application withdrawn after publication

Application publication date: 20170222

WW01 Invention patent application withdrawn after publication