CN107409214B - 用于对层间视频进行解码的方法和设备以及用于对层间视频进行编码的方法和设备 - Google Patents

用于对层间视频进行解码的方法和设备以及用于对层间视频进行编码的方法和设备 Download PDF

Info

Publication number
CN107409214B
CN107409214B CN201680017423.1A CN201680017423A CN107409214B CN 107409214 B CN107409214 B CN 107409214B CN 201680017423 A CN201680017423 A CN 201680017423A CN 107409214 B CN107409214 B CN 107409214B
Authority
CN
China
Prior art keywords
layer
block
inter
prediction
picture
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.)
Active
Application number
CN201680017423.1A
Other languages
English (en)
Other versions
CN107409214A (zh
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 CN107409214A publication Critical patent/CN107409214A/zh
Application granted granted Critical
Publication of CN107409214B publication Critical patent/CN107409214B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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
    • H04N19/31Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the temporal domain
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • 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/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
    • 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/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。根据视频编解码器,可通过使用小规模的数据来代替连续并重复产生的数据,从而减少数据量。
多层视频编解码器对第一层视频和至少一个第二层视频进行编码和解码。通过去除时间/空间冗余以及第一层视频和第二层视频的层冗余,可减少第一层视频和第二层视频的数据量。
发明内容
技术问题
根据各种实施例,按照以下方式执行层间预测:由包括在第一层图像中的当前块的视差矢量指示的第二层图像的块被确定,并且包括与第二层图像的所述块邻近的样点的块被确定为具有运动信息的参考块,通过这样做,存储器的复杂度被降低,并且通过使用与当前块的运动信息相似的参考块的运动信息来确定当前块的运动信息,使得编码和解码的效率得到提高。
各种实施例的技术问题不限于上述特征,其它未陈述的技术问题将被本领域普通技术人员依据以下描述而清楚地理解。
解决方案
本公开的技术问题不限于上述特征,其它未陈述的技术问题将被本领域普通技术人员依据以下描述而清楚地理解。
根据本公开的一方面,提供了一种层间视频解码方法,包括:获得包括在第一层图像中的当前块的视差矢量;通过使用获得的视差矢量来确定第二层图像中的与当前块相应的块;确定包括与第二层图像中的与当前块相应的块接触的样点的参考块;获得参考块的运动矢量;通过使用获得的运动矢量来确定包括在第一层图像中的当前块的运动矢量。
所述样点可与第二层图像中的与当前块相应的块的右下角接触。
当前编码单元可以是通过使用从比特流获得的关于当前编码单元的划分信息而从第一层图像确定的一个或更多个编码单元之一,并且当前块可以是从当前编码单元确定的一个或更多个预测单元之一。
当第二层图像被划分为均具有预定尺寸的多个块时,包括所述样点的参考块可以是所述多个块之中的包括所述样点的块。
第一样点可以是与第二层图像中的与当前块相应的块的边界接触的样点,通过使用获得的视差矢量来确定包括与第二层图像中的与当前块相应的块接触的样点的参考块的步骤可包括:如果第一样点偏离第二层图像的边界,则确定与第二层图像的边界内侧邻近的第二样点;确定包括所确定的与第二层图像的边界内侧邻近的第二样点的参考块。
所述视差矢量可以是具有1/4样点精度的矢量,通过使用获得的视差矢量来确定包括与第二层图像中的与当前块相应的块的边界接触的样点的参考块的步骤可包括:对所述视差矢量执行四舍五入运算以产生具有整数样点精度的视差矢量;通过使用具有整数样点精度的视差矢量、第二层图像中的与当前块相应的块的位置以及第二层图像中的与当前块相应的块的尺寸(宽度和高度)来确定包括与第二层图像中的与当前块相应的块的边界接触的样点的参考块。
第一层图像可以是指示第一视点的图像,第二层图像可以是指示第二视点的图像,所述层间视频解码方法还可包括:通过使用在指示第一视点的参考图像中的由获得的运动矢量指示的块来确定当前块的预测块,所述参考图像可以是时间与第一层图像的时间不同的图像。
根据本公开的另一方面,提供了一种层间视频编码方法,包括:获得包括在第一层图像中的当前块的视差矢量;通过使用获得的视差矢量来确定第二层图像中的与当前块相应的块;确定包括与第二层图像中的与当前块相应的块的边界接触的样点的参考块;获得参考块的运动矢量;通过使用获得的运动矢量来确定包括在第一层图像中的当前块的运动矢量;通过使用确定的运动矢量来确定当前块的预测块;通过使用当前块的预测块来对针对当前块的残差块进行编码。
所述样点可以在第二层图像中的与当前块相应的块的右下角。
当第二层图像被划分为均具有预定尺寸的多个块时,包括所述样点的参考块可以是所述多个块之中的包括所述样点的块。第一样点可以是与第二层图像中的与当前块相应的块的边界接触的样点,通过使用获得的视差矢量来确定包括与第二层图像中的与当前块相应的块的边界接触的样点的参考块的步骤可包括:如果第一样点偏离第二层图像的边界,则确定与第二层图像的边界内侧邻近的第二样点;将下述块确定为参考块,其中,该块包括所确定的与第二层图像的边界内侧邻近的第二样点。
所述视差矢量可以是具有1/4样点精度的矢量,通过使用获得的视差矢量来确定包括与第二层图像中的与当前块相应的块的边界接触的样点的参考块的步骤可包括:对所述视差矢量执行四舍五入运算以产生具有整数样点精度的视差矢量;通过使用具有整数样点精度的视差矢量、第二层图像中的与当前块相应的块的位置以及第二层图像中的与当前块相应的块的尺寸(宽度和高度)来确定包括与第二层图像中的与当前块相应的块的边界接触的样点的参考块。
根据本公开的另一方面,提供了一种层间视频解码设备,包括:视差矢量获得器,被配置为获得从第一层图像的当前块解码得到的指示第二层图像的相应块的视差矢量;解码器,被配置为通过使用获得的视差矢量确定包括与第二层图像的所述相应块的边界接触的样点的参考块,获得参考块的运动矢量,以及通过使用获得的运动矢量来获得第一层图像的当前块的预测块。
根据本公开的另一方面,提供了一种层间视频编码设备,包括:视差矢量获得器,被配置为获得从第一层图像的当前块编码得到的指示第二层图像的相应块的视差矢量;编码器,被配置为通过使用获得的视差矢量确定包括与第二层图像的所述相应块的边界接触的样点的参考块,获得参考块的运动矢量,通过使用获得的运动矢量来获得当前块的预测块,以及通过使用当前块的预测块来对包括当前块的第一层图像进行编码。
根据本公开的另一方面,提供了一种记录有用于实现根据各种实施例的方法的程序的非暂时性计算机可读记录介质。
有益效果
根据各种实施例,不同层图像中的与当前块相应的块可通过使用当前块的视差矢量来确定,包括与边界接触的样点的参考块被确定,并且参考块的运动矢量被获得。通过这样做,存储器的复杂度被降低,并且通过使用与当前块的运动信息相似的参考块的运动信息来确定当前块的运动信息,使得编码和解码的效率可得到提高。
附图说明
图1a是根据各种实施例的层间视频编码设备的框图。
图1b示出根据各种实施例的层间视频编码方法的流程图。
图2a是根据各种实施例的层间视频解码设备的框图。
图2b示出根据各种实施例的层间视频解码方法的流程图。
图3a示出根据各种实施例的层间预测结构。
图3b是根据各种实施例的多层视频的示图。
图3c示出根据各种实施例的包括多层视频的编码数据的网络抽象层(NAL)单元。
图4a是用于描述根据各种实施例的用于层间预测的视差矢量的示图。
图4b是用于描述根据各种实施例的用于预测视差矢量的空间邻近块候选的示图。
图4c是用于描述根据各种实施例的用于预测视差矢量的时间邻近块候选的示图。
图5是用于描述根据各种实施例的层间视频解码设备通过使用视差矢量来确定包括在参考块中的样点以便确定运动信息将被参考的参考块的处理的示图。
图6是用于描述根据各种实施例的层间视频解码设备通过使用视差矢量来确定包括在参考块中的样点以便确定运动信息将被参考的参考块的处理的示图。
图7是用于描述根据各种实施例的层间视频解码设备确定参考块并随后根据各种预测方法执行预测的处理的示图。
图8是根据实施例的基于树结构的编码单元的视频编码设备的框图。
图9是根据实施例的基于树结构的编码单元的视频解码设备的框图。
图10示出根据各种实施例的编码单元的概念。
图11是根据各种实施例的基于编码单元的图像编码器的框图。
图12是根据各种实施例的基于编码单元的图像解码器的框图。
图13示出根据各种实施例的编码单元以及分区。
图14示出根据各种实施例的编码单元与变换单元之间的关系。
图15示出根据实施例的多条编码信息。
图16示出根据各种实施例的编码单元。
图17、图18和图19示出根据各种实施例的编码单元、预测单元和变换单元之间的关系。
图20示出根据表1的编码模式信息的编码单元、预测单元、和变换单元之间的关系。
图21示出根据各种实施例的存储程序的盘的物理结构。
图22示出通过使用盘来记录和读取程序的盘驱动器。
图23示出提供内容分发服务的内容供应系统的整体结构。
图24和图25示出根据各种实施例的应用了视频编码方法和视频解码方法的移动电话的外部结构和内部结构。
图26示出应用了通信系统的数字广播系统。
图27示出根据各种实施例的使用视频编码设备和视频解码设备的云计算系统的网络结构。
具体实施方式
在下文中,参照图1a至图7,层间视频编码方法和层间视频解码方法被提供。此外,参照图8至图20,根据适用于层间视频编码和解码技术的实施例的基于具有树结构的编码单元的视频编码技术和视频解码技术将被描述。此外,参照图21至图27,视频编码方法和视频解码方法适用的实施例将被描述。
在下文中,“图像”可表示视频的静止图像或运动图像,即,视频本身。
在下文中,“样点”表示被分配给图像的采样位置并且将被处理的数据。例如,空间域的图像的像素可以是样点。
在下文中,“当前块”可指将被编码或解码的图像的块。
在下文中,“邻近块”指与当前块邻近的至少一个编码块或解码块。例如,邻近块可位于当前块的顶部、右上侧、左侧、或左上侧。此外,邻近块可以是空间邻近块或时间邻近块。例如,时间邻近块可包括参考画面中的与当前块位置相同的块,或该位置相同的块的邻近块。
首先,参照图1a至图7,根据各种实施例的层间视频解码设备和方法以及层间视频编码设备和方法被提供。
图1a是根据各种实施例的层间视频编码设备的框图。
根据各种实施例的层间视频编码设备10可包括编码器12和比特流产生器18。编码器12可包括第一层编码器14和第二层编码器16。第二层编码器16可包括视差矢量获得器17。根据各种实施例的层间视频编码设备10可通过使用可伸缩视频编码方案,根据层对多个图像序列进行划分和编码,并可输出包括根据各个层编码的数据的单独的流。第一层编码器14可对第一层图像进行编码,并可输出包括第一层图像的编码数据的第一层流。
第二层编码器16可对第二层图像进行编码,并可输出包括第二层图像的编码数据的第二层流。
层间视频编码设备10可通过使用复用器将第一层流和第二层流表示并编码为一个比特流。
层间视频编码设备10可将第一层图像序列和第二层图像序列编码到不同的层。
例如,根据基于空间可伸缩性的可伸缩视频编码方法,低分辨率图像可被编码为第一层图像,高分辨率图像可被编码为第二层图像。对第一层图像进行编码的结果可被输出为第一层流,对第二层图像进行编码的结果可被输出为第二层流。
作为另一示例,多视点视频可根据可伸缩视频编码方案而被编码。左视点图像可被编码为第一层图像,右视点图像可被编码为第二层图像。可选择地,中心视点图像、左视点图像和右视点图像可被分别编码,在这些图像之中,中心视点图像可被编码为第一层图像,左视点图像可被编码为第二层图像,右视点图像可被编码为第三层图像。可选择地,中心视点彩色图像、中心视点深度图像、左视点彩色图像、左视点深度图像、右视点彩色图像和右视点深度图像可被分别编码为第一层图像、第二层图像、第三层图像、第四层图像、第五层图像和第六层图像。作为另一示例,中心视点彩色图像、中心视点深度图像、左视点深度图像、左视点彩色图像、右视点深度图像和右视点彩色图像可被分别编码为第一层图像、第二层图像、第三层图像、第四层图像、第五层图像和第六层图像。
作为另一示例,可伸缩视频编码方案可根据基于时间可伸缩性的时间分层预测而被执行。包括通过对基本帧率的图像进行编码而产生的编码信息的第一层流可被输出。时间级别可根据帧率而被分类,并可被分别编码为多个层。可通过参考基本帧率的图像对更高帧率的图像进行进一步编码,使得包括高帧率的编码信息的第二层流可被输出。
作为另一示例,纹理图像可被编码为第一层图像,深度图像可被编码为第二层图像。对第一层图像进行编码的结果可被输出为第一层流,第二层图像可通过参考第一层图像来编码,然后可被输出为第二层流。
此外,可对第一层以及多个扩展层(第二层、第三层、…、第K层)执行可伸缩视频编码。在存在至少三个扩展层时,第一层图像和第K层图像可被编码。因此,对第一层图像进行编码的结果可被输出为第一层流,对第一层图像、第二层图像、…、和第K层图像进行编码的结果可分别被输出为第一层流、第二层流、…、和第K层流。
根据各种实施例的层间视频编码设备10可执行通过参考一个层的图像以预测当前图像的帧间预测。由于帧间预测,可从第一层(基本层)的相应区域预测出包括在当前图像和参考图像之间的之间的运动信息中的运动矢量以及当前图像和参考图像之间的残差分量。就这一点而言,运动信息可包括运动矢量、参考图像索引以及预测方向信息。
由于层间预测,当前图像与不同层的参考图像之间的位移分量以及当前图像与不同层的参考图像之间的残差分量可被产生。就这一点而言,当前图像与不同层的参考图像之间的位移分量可被表示为视差矢量。
此外,层间视频编码设备10可通过参考第一层图像的预测信息来预测第二层图像的预测信息,或者可执行层间预测来产生预测图像。就这一点而言,预测信息可包括运动矢量、视差矢量、参考图像索引以及预测方向信息。
例如,在层间预测期间,层间视频编码设备10可获得当前图像与不同层的参考图像之间的视差矢量,可根据获得的视差矢量通过使用所述不同层的参考图像来产生预测图像,并可产生残差分量,其中,所述残差分量是预测图像与当前图像之间的差分量。
此外,在层间预测期间,可从与当前图像的层不同的层的图像获得运动矢量,可通过使用参考图像来产生预测图像,并可产生残差分量,其中,所述参考图像是与当前图像的层相同的层的图像,所述残差分量是预测图像与当前图像之间的差分量。
当根据实施例的层间视频编码设备10允许至少三个层(包括第一层、第二层、第三层等)时,层间视频编码设备10可根据多层预测结构执行第一层图像和第三层图像之间的层间预测以及第二层图像和第三层图像之间的层间预测。
稍后将参照图3a在下面详细描述层间预测结构。
根据各种实施例的层间视频编码设备10可根据层基于视频的每个图像的块执行编码。块可具有正方形形状、矩形形状或任意几何形状,并且不限于具有预定尺寸的数据单元。块可以是根据树结构的编码单元之中的最大编码单元、编码单元、预测单元或变换单元。包括树结构的编码单元的最大编码单元可被不同地称为诸如编码树单元、编码块树、块树、根块树、编码树、编码根或树干。稍后将在下面参照图8至图20描述基于根据树结构的编码单元的视频编码和解码方案。
可基于诸如编码单元、预测单元或变换单元的数据单元执行帧间预测和层间预测。
根据各种实施例的第一层编码器14可通过对第一层图像执行包括帧间预测或帧内预测的源编码操作来产生符号数据。符号数据可表示每个编码参数的值以及残差的样值。
例如,第一层编码器14可通过对第一层图像的数据单元的样点执行帧间预测或帧内预测、变换和量化来产生符号数据,并可通过对符号数据执行熵编码来产生第一层流。
第二层编码器16可基于树结构的编码单元对第二层图像进行编码。第二层编码器16可通过对第二层图像的编码单元的样点执行帧间/帧内预测、变换和量化来产生符号数据,并可通过对符号数据执行熵编码来产生第二层流。
根据各种实施例的第二层编码器16可通过使用第一层图像的预测信息来执行预测第二层图像的层间预测。为了通过层间预测结构对来自第二层图像序列的第二层原始图像进行编码,第二层编码器16可通过使用与第二层当前图像相应的重建的第一层图像的预测信息来确定第二层当前图像的预测信息,并可基于确定的预测信息产生第二层预测图像,从而对第二层原始图像和第二层预测图像之间的预测误差进行编码。
第二层编码器16可通过根据编码单元或预测单元对第二层图像执行层间预测来确定第一层图像中的将被第二层图像的块参考的块。例如,第一层图像中的位置与第二层图像中的当前块的位置相应的重建块可被确定。第二层编码器16可通过使用与第二层块相应的被重建的第一层块来确定第二层预测块。就这一点而言,第二层编码器16可通过使用与第二层块位置相同的被重建的第一层块来确定第二层预测块。此外,当第二层图像指示与第一层图像不同的视点时,第二层编码器16可通过使用与第二层块的视差信息位置相应的被重建的第一层块来确定第二层预测块。所述视差信息可包括视差矢量、参考视点图像索引、参考图像索引以及预测方向信息。
第二层编码器16可将通过根据层间预测结构使用被重建的第一层块而确定的第二层预测块用作用于针对第二层原始块的层间预测的参考图像。第二层编码器16可通过使用被重建的第一层块对第二层预测块的样值和第二层原始块的样值之间的误差(即,根据层间预测的残差分量)执行变换和量化,并可执行熵编码。
当上述层间视频编码设备10对多视点视频进行编码时,将被编码的第一层图像可以是第一视点视频,第二层图像可以是第二视点视频。由于多视点图像被同时获得,因此指示视点的图像之间的相似度非常大。
然而,由于图像拍摄角度、亮度或图像拍摄装置(相机、镜头等)的特性根据多视点图像的视点而不同,因此可能出现视差。因此,当按照下述方式执行了视差被补偿的预测时可提高编码效率:视差被指示为视差矢量,并且指示不同视点的图像的区域(该区域与当前将被编码的块最相似)通过使用视差矢量被找出并被随后编码。
当层间视频编码设备10对纹理-深度图像进行编码时,将被编码的第一层图像可以是纹理图像,第二层图像可以是深度图像。因为纹理-深度图像被同时获得,因此针对图像的预测技术之间的相似度非常高。
因此,当按照下述方式执行了运动被补偿的预测或视差被补偿的预测时可提高编码效率:纹理图像中的与深度图像的块位置相同的块被找出并且随后深度图像通过使用纹理图像的运动信息或视差信息被编码。
在下文中,第二层编码器16确定具有运动信息的参考块并随后对包括在第二层中的当前块执行预测的处理现在将被详细描述。
第二层编码器16可对第二层的当前块执行编码。例如,第二层编码器16可确定第二层图像中的一个或更多个编码单元,并可对所述一个或更多个编码单元执行编码。就这一点而言,所述一个或更多个编码单元之中的当前将被编码的编码单元被称为当前编码单元。当前块可以是从当前编码单元确定的一个或更多个预测单元之一。
当第二层编码器16确定对第二层图像的当前块执行层间预测时,视差矢量获得器17可获得当前块的视差矢量。
就这一点而言,视差矢量可以是具有1/4样点精度的矢量。具有1/4样点精度的矢量可表示矢量值的最小单位是1/4的样点值。例如,当一个样点的高度和宽度均为1时,视差矢量的每个分量的值的最小单位可以是1/4。然而,具有1/4样点精度的矢量可能不是整数。当矢量值不是整数时,矢量值可被调整以使矢量分量的值为整数。例如,当矢量值是(0.25,0.75)时,可将4与所述矢量值相乘(缩放),因此所述矢量值可被表示为(1,3)并且矢量分量的经过调整的值可被存储在缓冲器(未示出)中。
第二层编码器16可通过使用获得的视差矢量来确定第一层图像中的与当前块相应的块。当矢量分量的值被调整(缩放)时,第二层编码器16可确定矢量分量的在调整之前的值(逆缩放),并可通过使用矢量分量的在调整之前的值来确定第一层图像中的与当前块相应的块。可选择地,矢量分量的整数值可从矢量分量的经过调整的值来确定。例如,当矢量分量的经过调整的值是(1,3)时,所述经过调整的值除以4(在逆缩放中,在除法结果中仅采用商,余数被舍弃),因此(0,0)可被确定为矢量分量的值。作为另一示例,当矢量分量的经过调整的值是(1,3)并且除以4时,通过考虑四舍五入,(0,1)可被确定为矢量分量的值(在逆缩放中,在通过将2加到每个分量并除以所述值而获得的结果中仅采用商,舍弃余数)。
第二层编码器16可通过将视差矢量分量的值添加到指示当前块的预定位置的分量来确定第一层图像的块的预定位置,并可基于第一层图像的块的所述预定位置来确定第一层图像的该块。
第二层编码器16可确定包括与第一层图像的所述块接触的样点的参考块。就这一点而言,参考块可以是在当前块被帧间预测时在参考运动信息时所使用的块。第二层编码器16可确定包括与第一层图像的所述块的拐角接触的样点的参考块。第二层编码器16可确定包括与第一层图像的所述块的右下角接触的样点的参考块。
第二层编码器16可基于用于存储运动信息的块单元来确定第一层图像的一个或更多个块。就这一点而言,包括样点的块可以是所确定的所述一个或更多个块之一。例如,第一层图像可被划分为均具有预定尺寸的多个块,并且包括样点的参考块可以是所述多个块之中的包括样点的参考块。
当假设第一样点是与第二层图像的块的边界接触的样点时,如果第一样点偏离第二层图像的边界,则第二层编码器16可确定与第二层图像的边界的内侧邻近的第二样点,并可将下述块确定为参考块,其中,该块包括所确定的与第二层图像的边界内侧邻近的第二样点。
第二层编码器16可获得参考块的运动矢量。第二层编码器16可使用从参考块起的参考块的运动矢量来获得预测方向信息以及参考方向索引。
第二层编码器16可通过使用获得的运动矢量来确定针对第二层图像的当前块的运动矢量。第二层编码器16可通过使用获得的预测方向信息和获得的参考方向索引来确定针对当前块的预测方向信息和参考方向索引。
第二层编码器16可通过使用当前块的运动矢量来确定参考图像中的块,并可通过使用所确定的参考图像中的块来确定当前块的预测块。就这一点而言,参考图像可指示与第二层图像处于相同层并且与和第二层图像的时间不同的时间相应的图像。第一层图像可以是第一视点图像,第二层图像可以是第二视点图像。
第二层编码器16可通过使用当前块的预测块来确定关于当前块的残差块。第二层编码器16可确定指示当前块的原始样值与预测块的样值之间的差的残差块。第二层编码器16可对残差块执行变换,并可对经过变换的残差块进行熵编码。
比特流产生器18可产生包括编码的视频以及与层间预测相关确定的层间预测信息的比特流。例如,比特流产生器18可产生包括关于当前块的经过熵编码的残差块的比特流。也就是说,比特流产生器18可包括关于经过熵编码的残差块的信息作为编码的视频。产生的比特流可被发送到解码设备。在以上描述中,描述了第二层编码器16如何基于块执行层间运动预测。第二层编码器16不限于此,并可基于子块执行层间运动预测。例如,第二层编码器16可从第二层图像的当前块确定至少一个子块,可通过使用确定的子块来确定第一层图像的候选子块,并可通过使用包括与候选子块接触的样点的块的运动信息来确定当前块的(子块的)运动矢量。
在下文中,以下将参照图4a至图7详细描述根据各种实施例的由层间视频编码设备10执行的层间视频编码方法。
层间视频编码设备10可通过使用重建的第一层图像对第二层预测块的样值与第二层原始块的样值之间的误差(即,根据层间预测的残差分量)执行变换和量化,从而对所述误差进行熵编码。此外,还可对多条预测信息之间的误差执行熵编码。
如上所述,层间视频编码设备10可通过根据层间预测结构参考重建的第一层图像来对当前层图像序列进行编码。
然而,根据各种实施例的层间视频编码设备10可根据单层预测结构对第二层图像序列进行编码,而不必参考不同层样点。因此,层间视频编码设备10不应被解释为限于仅对层间预测结构执行帧间预测以便对第二层图像序列进行编码。
在下文中,现在将参照图1b详细描述用于执行层间预测的层间视频编码设备10的操作。
参照图1a描述的术语“第一”和“第二”被添加用于强调它们之间的区别,而不应被限制性地解释为:“第一层图像”被预先编码并且其运动信息被参考,“第二层图像、第三层图像、第K层图像…”是参照第一层图像的运动信息的图像。
在下文中,在参照图1b的描述中,第二层图像是运动信息被参考的预先编码的图像,第一层图像是指当前将被编码并参考第二层图像的运动信息的图像。
图1b是示出根据各种实施例的多视点视频编码方法的流程图。
在操作1110,层间视频编码设备10可获得包括在第一层图像中的当前块的视差矢量。就这一点而言,当前块的视差矢量可通过从比特流获得关于当前块的视差矢量的信息来确定。可选择地,当前块的视差矢量可从当前块的邻近块的视差矢量得到。在操作1120,层间视频编码设备10可通过使用获得的视差矢量来确定第二层图像中的与当前块相应的块。层间视频编码设备10可从当前块确定第二层图像中的由获得的视差矢量指示的所述块。在操作1130,层间视频编码设备10可确定包括与第二层图像中的所述块的边界接触的样点的参考块。层间视频编码设备10可确定包括与第二层图像中的所述块的拐角接触的样点的参考块。
在操作1140,层间视频编码设备10可获得参考块的运动矢量。层间视频编码设备10可获得包括参考块的运动矢量的运动信息。就这一点而言,所述运动信息可包括运动矢量、参考图像索引以及预测方向信息。
在操作1150,层间视频编码设备10可通过使用获得的运动矢量来确定针对第一层图像的当前块的运动矢量。层间视频编码设备10可通过使用包括该运动矢量的运动信息来确定针对第一层图像的当前块的运动信息。
在操作1160,层间视频编码设备10可通过使用所确定的当前块的运动矢量来确定针对第一层图像的当前块的预测块。层间视频编码设备10可通过使用包括当前块的运动矢量的当前块的运动信息来确定针对第一层图像的当前块的预测块。更详细地,层间视频编码设备10可通过使用预测方向信息来确定L0预测列表和L1预测列表中的至少一个预测列表,可通过使用参考图像索引从所述至少一个预测列表确定与第一层图像属于相同层的不同时间的图像,可通过使用运动矢量来确定与当前块相应的并处于与第一层图像属于相同层的图像中的块,并可通过使用所确定的块的样值来确定当前块的预测块的样值。
在操作1170,层间视频编码设备10可通过使用当前块的预测块来确定针对当前块的残差块,并可对残差块进行编码。层间视频编码设备10可产生包括残差块的比特流。
层间视频编码设备10可包括中央处理器(未示出),其中,该中央处理器总体上控制第一层编码器14、第二层编码器16和比特流产生器18。可选择地,第一层编码器14、第二层编码器16和比特流产生器18可由各自的处理器(未示出)操作,并且层间视频编码设备10可在所述各自的处理器系统化操作时被操作。可选择地,第一层编码器14、第二层编码器16和比特流产生器18可根据层间视频编码设备10的外部处理器(未示出)的控制而被控制。
层间视频编码设备10可包括至少一个数据存储单元(未示出),其中,第一层编码器14、第二层编码器16和比特流产生器18的输入数据和输入数据被存储在所述至少一个数据存储单元中。层间视频编码设备10可包括管理数据存储单元(未示出)的数据输入和输出的存储器控制器(未示出)。
为了输出视频编码结果,层间视频编码设备10可与安装在其中的内部视频编码处理器或外部视频编码处理器关联地操作以执行包括变换的视频编码处理。层间视频编码设备10的内部视频编码处理器可作为单独的处理器执行视频编码操作。此外,当层间视频编码设备10、中央处理设备或图形处理设备包括视频编码处理模块时,基本视频编码操作可被实现。
图2a是根据各种实施例的层间视频解码设备的框图。
根据各种实施例的层间视频解码设备20可包括解码器22。解码器22可包括第一层解码器24和第二层解码器26。第二层解码器26可包括视差矢量获得器27。
根据各种实施例的层间视频解码设备20可接收编码的视频的比特流。根据各种实施例的层间视频解码设备20可接收根据多层编码的视频的比特流。
层间视频解码设备20可经由可伸缩编码方案根据层接收比特流。由层间视频解码设备20接收的比特流的层数不受限制。然而,为了便于解释,将描述层间视频解码设备20的第一层解码器24接收第一层流并对第一层流进行解码,第二层解码器26接收第二层流并对第二层流进行解码的实施例。
例如,基于空间可伸缩性的层间视频解码设备20可接收按照不同层对具有不同分辨率的图像序列进行编码的流。可对第一层流进行解码来重建具有低分辨率的图像序列,可对第二层流进行解码来重建具有高分辨率的图像序列。
作为另一示例,可根据可伸缩视频编码方案对多视点视频进行解码。当在多个层中接收到立体视频流时,第一层流可被解码以重建左视点图像。除第一层流以外的第二层流可被进一步解码以重建右视点图像。
可选择地,当在多个层中接收到多视点视频流时,第一层流可被解码以重建中心视点图像。除第一层流以外的第二层流可被进一步解码为以重建左视点图像。除第一层流以外的第三层流可被进一步解码以重建右视点图像。
可选择地,当在多个层中接收到纹理-深度视频流时,第一层流可被解码以重建纹理图像。第二层流可通过使用重建的纹理图像而被进一步解码以重建深度图像。
作为另一示例,基于时间可伸缩性的可伸缩视频编码方法可被执行。第一层流可被解码以重建基本帧率图像。第二层流可被进一步解码为第一层流以重建高帧率图像。
此外,在存在至少三个第二层的情况下,第一层图像可从第一层流被重建,并且当第二层流通过参考重建的第一层图像被进一步解码时,第二层图像可被进一步重建。当第K层流通过参考重建的第二层图像被进一步解码时,第K层图像可被进一步重建。
层间视频解码设备20可从第一层流和第二层流获得第一层图像和第二层图像的编码数据,并且此外,还可获得通过帧间预测产生的运动矢量以及通过层间预测产生的预测信息。
例如,层间视频解码设备20可对每层的帧间预测数据进行解码,并可对多层之间的层间预测数据进行解码。可基于编码单元或预测单元通过运动补偿和层间解码来执行重建。
针对每层流,通过参考经由对同一层的帧间预测而预测出的重建图像来执行针对当前图像的运动补偿,图像可被重建。运动补偿是通过将使用当前图像的运动矢量而确定的参考图像与当前图像的残差分量进行合成来重建当前图像的重建图像的操作。
此外,层间视频解码设备20可通过参考第一层图像的预测信息执行层间视频解码,以对通过层间预测而预测出的第二层图像进行解码。层间视频解码是通过使用不同层的参考块的预测信息来对当前图像的预测信息进行重建以便确定当前图像的预测信息的操作。
根据各种实施例的层间视频解码设备20可执行用于重建参考第二层图像预测出的第三层图像的层间视频解码。稍后将参照图3a详细描述层间预测结构。
然而,根据各种实施例的第二层解码器26可在必不参考第一层图像序列的情况下对第二层流进行解码。因此,不限于第二层解码器26仅执行层间预测以对第二层图像序列进行解码的理解。
层间视频解码设备20根据视频的每个图像的块执行解码。块可以是根据树结构的编码单元之中的最大编码单元、编码单元、预测单元、或变换单元等。
第一层解码器24可通过使用解析出的第一层图像的编码符号来对第一层图像进行解码。当层间视频解码设备20接收基于树结构的编码单元而编码的流时,第一层解码器24可按照第一层流的每个最大编码单元基于树结构的编码单元来执行解码。
第一层解码器24可通过按照每个最大编码单元执行熵解码来获得编码信息和编码的数据。第一层解码器24可通过对从流获得的编码的数据执行反量化和逆变换以重建残差分量。根据另一实施例的第一层解码器24可直接接收量化的变换系数的比特流。图像的残差分量可通过对量化的变换系数执行反量化和逆变换而被重建。
第一层解码器24可经由相同层图像之间的运动补偿来确定预测图像,并可通过对预测图像和残差分量进行组合来重建第一层图像。
根据层间预测结构,第二层解码器26可通过使用重建的第一层图像的样点来产生第二层预测图像。第二层解码器26可通过对第二层流进行解码以获得根据层间预测的预测误差。第二层解码器26可通过将第二层预测图像与所述预测误差进行组合来产生重建的第二层图像。
第二层解码器26可通过使用由第一层解码器24解码出的重建的第一层图像来确定第二层预测图像。根据层间预测结构,第二层解码器26可确定第一层图像中的将由第二层图像的编码单元或预测单元参考的块。例如,第一层图像中的位置与第二层图像中的当前块的位置对应的重建块可被确定。
第二层解码器26可通过使用与第二层块对应的重建的第一层块来确定第二层预测块。第二层解码器26可通过使用与第二层块位置相同的重建的第一层块来确定第二层预测块。
第二层解码器26可将根据层间预测结构通过使用重建的第一层块确定的第二层预测块用作用于第二层原始块的层间预测的参考图像。在这种情况下,第二层解码器26可通过将通过使用重建的第一层图像而确定的第二层预测块的样值与根据层间预测的残差分量进行合成来重建第二层块。
此外,当上述层间视频解码设备20对多视点视频进行解码时,编码的第一层图像可以是第一视点视频,第二层图像可以是第二视点视频。此外,当上述层间视频解码设备20对纹理-深度图像进行解码时,编码的第一层图像可以是纹理图像,第二层图像可以是深度图像。
由于多视点图像是同时获得的,因此视点的图像之间的相似度非常高。因此,可通过执行视差补偿来提高编码效率,其中,在视差补偿中,通过使用视差矢量从不同的视点图像找出与当前将被编码的块最相似的区域并对其进行编码。
层间视频解码设备20可通过比特流获得用于层间预测的视差矢量,或者可从其他条编码信息预测视差矢量。例如,可从当前将被重建的块的邻近块的视差矢量预测视差矢量。此外,当层间视频解码设备20不能从邻近块的视差矢量预测视差矢量时,层间视频解码设备20可将默认视差矢量确定为视差矢量。
在下文中,更详细地讲,现在将详细描述层间视频解码处理,其中,在层间视频解码处理中,当第二层解码器26对包括在第二层中的当前块执行预测时,具有预测信息的参考块被确定。
第二层解码器26可对第二层图像的当前块执行解码。例如,第二层解码器26可在第二层图像中确定一个或更多个编码单元,并可对所述一个或更多个编码单元执行解码。就这一点而言,所述一个或更多个编码单元中的当前将被解码的编码单元被称为当前编码单元。当前块可以是从当前编码单元确定的一个或更多个预测单元之一。
当第二层解码器26确定对包括在第二层图像中的当前块执行层间预测时,视差矢量获得器27可获得当前块的视差矢量。
第二层解码器26可通过使用获得的视差矢量确定第一层图像中的与当前块相应的块。
第二层解码器26可通过使用获得的视差矢量确定第一层图像中的与当前块相应的块。第二层解码器26可确定第一层中的由从当前块开始的视差矢量指示的块。
第二层解码器26可确定包括与第一层图像的块接触的样点的参考块。就这一点而言,参考块指示在预测处理期间参考预测信息时使用的块。例如,参考块可以是在当前块被层间预测时参考运动信息时使用的块。第二层解码器26可确定包括与第一层图像的块的拐角接触的样点的参考块。第二层解码器26可确定包括与第一层图像的块的右下角接触的样点的参考块。
第二层解码器26可基于用于存储运动信息的块单元来确定第一层图像的一个或更多个参考块。包括样点的参考块可以是所确定的一个或更多个参考块之一。例如,第一层图像可被划分为均具有预定尺寸的多个块,并且包括样点的参考块可以是所述多个块之中的包括样点的块。
当假设第一样点是与第二层图像的块的边界接触的样点时,如果第一样点偏离第二图像的所述边界,则第二层解码器26可确定与第二层图像的所述边界的内侧邻近的第二样点,并且可将下述块确定为参考块:该块包括所确定的与第二层图像的边界内侧邻近的第二样点。
第二层解码器26可获得参考块的运动信息。例如,第二层解码器26可获得参考块的运动矢量。第二层解码器26可获得参考块的预测方向信息和参考方向索引。
第二层解码器26可通过使用获得的运动信息来确定第二层图像的当前块的运动信息。例如,第二层解码器26可通过使用获得的运动矢量来确定第二层图像的当前块的运动矢量。此外,第二层解码器26可通过使用获得的预测方向信息和获得的参考方向索引来确定当前块的预测方向信息和参考方向索引。
第二层解码器26可通过使用当前块的运动信息来确定参考图像中的块,并可通过使用确定的参考图像中的块来确定当前块的预测块。例如,第二层解码器26可通过使用当前块的预测方向信息和参考方向索引来确定参考图像,可通过使用当前块的运动矢量来确定参考图像中的块,并可通过使用确定的块的样值来确定当前块的预测块的样值。就这一点而言,参考图像可指示处于与第二层图像相同的层并与第二层图像的时间不同的时间相应的图像。
第二层解码器26可通过使用从比特流获得的针对当前块的残差块以及当前块的预测块来重建当前块。
已描述了假设层间视频解码设备20被确定为执行层间预测。
在下文中,将详细描述层间视频解码设备20确定运动矢量候选,产生包括与运动矢量候选相关的合并候选的合并候选列表,并通过使用合并候选列表来确定对当前块执行层间预测的处理。
层间视频解码设备20通过预测各种运动矢量来确定各种运动矢量候选,以便对当前块执行层间预测。
例如,层间视频解码设备20可将从至少一个空间候选块预测出的至少一个运动矢量确定为至少一个运动矢量候选。此外,层间视频解码设备20可将从至少一个时间候选块预测出的至少一个运动矢量确定为至少一个运动矢量候选。
层间视频解码设备20可确定针对视点间运动预测的运动矢量候选(在下文中,称为视点间运动预测候选)。
此外,层间视频解码设备20可确定针对移位的视点间运动预测的运动矢量候选(在下文中,称为移位的视点间运动预测候选)。
层间视频解码设备20可确定第二层图像(例如,指示第二视点的图像)的当前块的视差矢量,并可通过使用确定的视差矢量来确定第一层图像(指示第一视点的图像)的块。就这一点而言,针对第一层图像的块的确定可涉及确定第一层图像中的与当前块中的特定位置的样点相应的样点,并确定包括所述相应的样点的块,并且用于视点间运动预测的运动矢量候选可指示与包括所述相应的样点的块相关联的运动矢量。就这一点而言,块中的样点可以是位于块的中心的样点。
移位的视点间运动预测候选可指示与按照下述方法确定的包括样点的块相关联的运动矢量,其中,在所述方法中,层间视频解码设备20确定第二层图像(例如,指示第二视点的图像)的当前块的视差矢量,通过使用确定的视差矢量来确定第一层图像(指示第一视点的图像)的块,并确定与所确定的块接触的样点。
层间视频解码设备20可通过使用从当前块的邻近块得到的参考视点索引和视差矢量来确定第一层图像(例如,指示第一视点的图像)的块,以便确定视点间运动预测候选。就这一点而言,参考视点索引是指示与多个视点之中的参考视点相关的图像的索引,并且假设参考视点索引指示第一层图像(例如,指示第一视点的图像)。
层间视频解码设备20可确定包括在第一层图像中的块中的样点,并可获得与包括确定的样点的块相关联的运动矢量,从而确定当前块的运动矢量候选。此外,层间视频解码设备20可通过使用与包括样点的块相关联的参考图像索引和预测方向信息来确定预测方向和参考图像索引,并可确定所确定的预测方向以及运动矢量候选。层间视频解码设备20可获得预测方向的信息,可根据获得的预测方向,从包括样点的块的预测列表(L0预测列表和L1预测列表)中的至少一个预测列表获得指示参考图像的索引(参考图像索引),并可通过使用获得的预测方向和获得的参考图像索引来确定当前块的预测方向和参考图像索引。运动矢量候选可被一起确定。
预测方向信息是指示L0预测列表和L1预测列表中的至少一个预测列表的信息。例如,预测方向信息可包括指示L0预测列表的可用性的L0预测方向信息和指示L1预测列表的可用性的L1预测方向信息。也就是说,针对预测方向的确定涉及确定L0预测列表和L1预测列表中哪个预测列表将在预测中被使用。参考图像索引可包括指示包括在L0预测列表中的图像之中的将被参考的图像的索引以及指示包括在L1预测列表中的图像之中的将被参考的图像的索引。
层间视频解码设备20确定运动矢量候选,并随后产生合并候选列表。例如,层间视频解码设备20产生包括各种合并候选(诸如空间合并候选、时间合并候选、视点间运动预测合并候选、视点间视差预测合并候选以及运动参数继承合并候选)的合并候选列表。
就这一点而言,在层间预测中可用的运动矢量候选、预测方向和参考图像索引已针对合并候选被确定。合并候选可以是指示运动矢量预测方案的指示符,并且更具体地,可以是在运动矢量预测方案中使用的块。
例如,层间视频解码设备20根据合并候选的优先级顺序确定每个合并候选是否可用。就这一点而言,当合并候选可用时,这意味着与合并候选关联的至少一个预测方向被确定。
层间视频解码设备20将可用合并后选择添加到合并候选列表。
例如,层间视频解码设备20确定时间合并候选是否可用,如果时间合并候选可用,则层间视频解码设备20将时间合并候选添加到合并候选列表。层间视频解码设备20可根据合并候选的优先级的顺序,确定具有下一优先级的视点间运动预测合并候选是否可用。
当视点间运动预测合并候选可用时,层间视频解码设备20将视点间运动预测合并候选添加到合并候选列表。当运动参数继承合并候选可用时,层间视频解码设备20将运动参数继承合并候选添加到合并候选列表。
然而,可添加到合并候选列表的合并候选的数量会受到限制。因此,层间视频解码设备20根据合并候选的优先级的顺序来添加可用合并候选,并且在当前添加的合并候选的数量大于确定的合并候选的数量时,层间视频解码设备20不再将合并候选添加到合并候选列表。
层间视频解码设备20获得合并索引。合并索引可从比特流获得。合并索引是指示添加到合并候选列表的合并候选之一的索引。
层间视频解码设备20通过使用合并索引来从合并候选列表确定合并候选。
当通过使用合并索引确定的合并候选是视点间运动预测合并候选时,层间视频解码设备20通过使用通过视点间运动预测而确定的运动矢量候选、预测方向信息和参考图像索引来执行运动补偿。当通过使用合并索引确定的合并候选是移位的视点间运动预测合并候选时,层间视频解码设备20可通过使用移位的视点间运动矢量候选、与移位的视点间运动预测合并候选相关的预测方向信息和参考图像索引来执行运动补偿。
当通过使用合并索引确定的合并候选是视点间运动预测合并候选和移位的视点间运动预测合并候选之一时,层间视频解码设备20通过使用相应的运动矢量候选通过对当前块执行运动补偿来产生当前块的预测样值。
层间视频解码设备20从由预测方向信息指示的预测列表确定运动矢量候选和参考图像,并确定参考图像中的参考块,其中,参考图像通过使用预测方向信息由参考图像索引指示,参考块与当前块相关联。层间视频解码设备20通过使用确定的参考块的样值来产生当前块的预测样值。
例如,层间视频解码设备20可通过使用预测方向信息确定L0预测列表和L1预测列表中的至少一个预测列表,并可通过使用参考图像索引在包括在确定的至少一个预测列表中的图像之中确定参考图像。此外,当参考图像被确定时,层间视频解码设备20可通过使用包括在确定的运动矢量候选中的运动矢量来从当前块确定参考图像中的块,并可通过使用参考图像中的所述块的样值来确定与当前块相关联的预测块的样值。
层间视频解码设备20可基于子块确定视点间运动预测候选。同样,层间视频解码设备20可基于子块确定移位的视点间运动预测候选。
就这一点而言,基于子块的视点间运动预测候选可与按照下述方式针对当前块(的子块)确定的运动矢量候选相应,其中,在所述方式中,从第二层图像的当前块确定至少一个子块,通过使用确定的子块来确定第一层图像的候选子块,并且使用包括候选子块中的样点的块的运动信息,并且,基于子块的移位的视点间运动预测候选可与通过使用包括与候选子块邻近的样点的块的运动信息针对当前块(的子块)确定的运动矢量候选相应。基于子块的视点间运动预测候选和基于子块的移位的视点间运动预测候选可在通过使用尺寸等于或小于当前块的尺寸的子块来预测运动矢量的过程中使用,使得预测误差可被最小化。
例如,层间视频解码设备20确定不对包括在第一层图像中的当前块执行基于深度的块划分预测,并且当第一层图像是纹理图像时,层间视频解码设备20可确定基于子块的视点间运动预测候选。否则,层间视频解码设备20可确定视点间运动预测候选。此外,在当前图像不是深度图像时,层间视频解码设备20可确定移位的视点间运动预测候选。
更详细地讲,层间视频解码设备20可通过使用当前块的位置、宽度和高度、当前块的参考视点索引以及与当前块相关联的视差矢量确定运动矢量来确定视点间运动预测候选。此外,与视点间运动预测候选相关联的参考图像索引和预测方向可与运动矢量一起确定。
层间视频解码设备20可通过使用与当前块相关联的视差矢量来确定第二层图像的块。层间视频解码设备20可确定第二层图像的所述块中的样点,从而确定视点间运动预测候选。层间视频解码设备20可确定包括所述块中的样点的参考块。就这一点而言,当确定的参考块没有在帧内预测模式下编码时,层间视频解码设备20可从参考块获得参考块的预测方向以及与参考块相关联的参考画面索引和运动矢量,当与参考块相关联的参考画面列表中的由参考画面索引指示的图像等同于与当前块相关联的参考画面列表中的第i图像时,层间视频解码设备20可确定视点间运动矢量预测候选可用,可将参考画面索引确定为i,并将参考块的运动矢量确定为视点间运动预测矢量。
层间视频解码设备20可确定与第二层图像的被移位的块邻近的样点,从而确定视点间运动预测候选。层间视频解码设备20可确定包括与第二层图像的被移位的块邻近的样点的参考块。在确定参考块之后确定移位的视点间运动预测候选的处理等同于确定视点间运动预测候选的处理,因此省略其详细描述。
当层间视频解码设备20确定基于子块的视点间运动预测候选时,层间视频解码设备20可通过使用与第二层图像的当前块关联的视差矢量来确定第一层图像的块,并可从第一层图像的所述块确定至少一个子块。同样,层间视频解码设备20可从当前块确定至少一个子块。就这一点而言,从当前块确定的至少一个子块的数量以及至少一个子块在当前块中的相对位置可等于从第二层图像的块确定的至少一个子块的数量以及至少一个子块在块中的相对位置。
层间视频解码设备20可针对当前块中的每个子块确定视点间运动预测候选。更详细地,针对当前块的每个子块确定视点间运动预测候选的处理与确定当前块的视点间运动预测候选的处理相似,其差别在于块的尺寸和位置,因此,这里省略对其的详细描述。当在当前块的子块之中存在不能确定视点间运动预测候选的子块时,可通过使用另一子块的视点间运动预测候选来确定子块的视点间运动预测候选。层间视频解码设备20通过使用子块的视点间运动预测候选来对每个子块执行运动补偿。
参照图2a,已提供了假设第一层图像为基本层图像,第二层图像为增强层图像的描述。基本层指可通过使用其本身的层来进行重建的层,增强层指示可通过使用不同层的信息而被重建的层。
参照图2a描述的术语“第一”和“第二”被添加用于强调它们之间的区别,而不应被限制性地解释为:“第一层图像”被预先编码并且其运动信息被参考,“第二层图像、第三层图像、第K层图像…”是参照第一层图像的运动信息的图像。
在下文中,在参照图2b的描述中,第二层图像可指运动信息被参考的预先编码的图像,第一层图像可指当前将被编码并参考第二层图像的运动信息的图像。
图2b示出根据各种实施例的层间视频解码方法的流程图。
在操作1210,层间视频解码设备20可获得包括在第一层图像中的当前块的视差矢量。
在操作1220,层间视频解码设备20可通过使用获得的视差矢量来确定第二层图像中的与当前块相应的块。
在操作1230,层间视频解码设备20可确定包括与第二层图像中的与当前块相应的块的边界接触的样点的参考块。层间视频解码设备20可确定包括与第二层图像中的与当前块相应的块的拐角接触的样点的参考块。
在操作1240,层间视频解码设备20可获得参考块的运动矢量。层间视频解码设备20可连同参考块的运动矢量一起获得参考块的预测方向和参考图像索引。
在操作1250,层间视频解码设备20可通过使用获得的运动矢量确定针对第一层图像的当前块的运动矢量。层间视频解码设备20可通过使用获得的参考块的预测方向和获得的参考图像索引来确定当前块的预测方向和参考图像索引。
层间视频解码设备20可通过使用确定的当前块的运动矢量来确定当前块的预测块。更详细地讲,层间视频解码设备20可通过使用当前块的预测方向和参考图像索引确定参考图像,可通过使用当前块的运动矢量来确定参考图像中的块,并可通过使用确定的参考块的样值来确定当前块的预测块的样值。
层间视频解码设备20可从比特流获得与当前块相关联的残差块,并可通过使用与当前块相关联的残差块以及当前块的预测块来重建当前块。更详细地讲,层间视频解码设备20可通过将与当前块相关联的残差块的样值与当前块的预测块的样值相加来重建当前块。
在下文中,参照图3a,现在将在下面描述根据各种实施例的可由层间视频编码设备10执行的层间预测结构。
图3a示出根据各种实施例的层间预测结构。
根据实施例的层间视频编码设备10可根据图3a的多视点视频预测结构的再现顺序30来对基本视点图像、左视点图像和右视点图像进行预测编码。
基于根据现有技术的多视点视频预测结构的再现顺序30,相同视点的图像被布置在水平方向上。因此,由“左”指示的左视点图像按行被布置在水平方向上,由“中心”指示的基本视点图像按行被布置在水平方向上,由“右”指示的右视点图像按行被布置在水平方向上。相对于左视点图像/右视点图像,基本视点图像可以是中心视点图像。
此外,具有相同画面顺序计数(POC)顺序的图像被布置在垂直方向上。图像的POC顺序指示形成视频的图像的再现顺序。多视点视频预测结构的再现顺序30中指示的“POCX”指示相应列中的图像的相对再现顺序,其中,当X的值低时,再现顺序靠前,当X的值高时,再现顺序靠后。
因此,基于根据现有技术的多视点视频预测结构的再现顺序30,由“左”指示的左视点图像根据POC顺序(再现顺序)被布置在水平方向上,由“中心”指示的基本视点图像根据POC顺序(再现顺序)被布置在水平方向上,并且由“右”指示的右视点图像根据POC顺序(再现顺序)被布置在水平方向上。此外,与基本视点图像位于相同的列的左视点图像和右视点图像具有不同的视点但具有相同的POC顺序(再现顺序)。
四个连续图像形成根据视点的一个画面组(GOP)。每个GOP包括连续锚画面(anchor picture)之间的图像和一个锚画面(关键画面)。
锚画面是随机访问点,并且当在再现视频的同时从根据再现顺序(即,POC顺序)布置的图像任意选择了再现位置时,根据POC顺序最接近再现位置的锚画面被再现。基本层图像包括基本层锚画面31、32、33、34和35,左视点图像包括左视点锚画面131、132、133、134和135,右视点图像包括右视点锚画面231、232、233、234和235。
可根据GOP顺序再现并预测(重建)多视点图像。首先,根据多视点视频预测结构的再现顺序30,根据视点,包括在GOP 0中的图像可被再现,随后包括在GOP 1中的图像可被再现。换句话说,可按照GOP 0、GOP 1、GOP 2和GOP 3的顺序来再现包括在每个GOP中的图像。此外,根据多视点视频预测结构的编码顺序,根据视点,包括在GOP 0中的图像可被预测(重建),并且随后包括在GOP 1中的图像可被预测(重建)。换句话说,可按照GOP 0、GOP 1、GOP2和GOP 3的顺序来预测(重建)包括在每个GOP中的图像。
根据多视点视频预测结构的再现顺序30,可对图像执行视点间预测(层间预测)和帧间预测。在多视点视频预测结构中,箭头开始的图像是参考图像,箭头结束的图像是通过使用参考图像被预测的图像。
基本视点图像的预测结果可被编码,并随后以基本视点图像流的形式被输出,并且附加视点图像的预测结果可被编码,并随后以层比特流的形式被输出。此外,左视点图像的预测编码结果可被输出为第一层比特流,右视点图像的预测编码结果可被输出为第二层比特流。
对基本视点图像仅执行帧间预测。换句话说,I画面类型的基本层锚画面31、32、33、34和35不参考其它图像,而B画面类型和b画面类型的其余图像通过参考其它基本视点图像而被预测。B画面类型的图像通过参考根据POC顺序在B画面类型的图像之前的I画面类型的锚画面以及之后的I画面类型的锚画面而被预测。b画面类型的图像通过参照根据POC顺序在b画面类型的图像之前的I类型的锚画面以及之后的B画面类型的图像,或者通过参考根据POC顺序在b画面类型的图像之前的B画面类型的图像以及之后的I画面类型的锚画面而被预测。
对左视点图像和右视点图像中的每一个执行参考不同视点图像的视点间预测(层间预测)和参考相同视点图像的帧间预测。
可通过分别参考具有相同POC顺序的基本视点锚画面31、32、33、34和35对左视点锚画面131、132、133、134和135执行视点间预测(层间预测)。可通过分别参照具有相同POC顺序的基本视点锚画面31、32、33、34和35或左视点锚画面131、132、133、134和135对右视点锚画面231、232、233、234和235执行视点间预测。此外,可通过参考具有相同POC的其它视点图像对除了左视点图像131、132、133、134和135和右视点图像231、232、233、234和235之外的其余图像执行视点间预测(层间预测)。
左视点图像和右视点图像之中的除了锚画面131、132、133、134和135以及231、232、233、234和235之外的其余图像可通过参考相同视点图像而被预测。
然而,左视点图像和右视点图像中的每个图像可不通过参考相同视点的附加视点图像之中的具有在前再现顺序的锚画面而被预测。换句话说,为了对当前左视点图像执行帧间预测,可参考除了再现顺序在当前左视点图像之前的左视点锚画面之外的左视点图像。类似地,为了对当前右视点图像执行帧间预测,可参考除了再现顺序在当前右视点图像之前的右视点锚画面之外的右视点图像。
此外,为了对当前左视点图像执行帧间预测,可通过参考属于当前GOP但是将在当前左视点图像之前被重建的左视点图像,而不是参考属于当前左视点图像的当前GOP之前的GOP的左视点图像,来执行预测。相同的方法被应用于右视点图像。
根据各种实施例的层间视频解码设备20可根据图3a的多视点视频预测结构的再现顺序30来对基本视点图像、左视点图像和右视点图像进行重建。
可经由参考基本视点图像的视点间视差补偿和参考左视点图像的帧间运动补偿来重建左视点图像。可经由参考基本视点图像和左视点图像的视点间视差补偿和参考右视点图像的帧间运动补偿来重建右视点图像。参考图像可被首先重建以用于对左视点图像和右视点图像的视差补偿和运动补偿。
为了对左视点图像进行帧间运动补偿,可经由参考重建的左视点参考图像的帧间运动补偿来重建左视点图像。为了对右视点图像进行帧间运动补偿,可经由参考重建的右视点参考图像的帧间运动补偿来重建右视点图像。
此外,为了对当前左视点图像进行帧间运动补偿,可仅参考属于当前左视点图像的当前GOP但将在当前左视点图像之前被重建的左视点图像,而不是参考属于在当前GOP之前的GOP的左视点图像。相同的方法被应用于右视点图像。
图3b是根据各种实施例的多层视频的示图。
为了在各种网络环境和各种终端中提供最优服务,层间视频编码设备10可通过对具有各种空间分辨率、各种质量、各种帧率以及不同视点的多层图像序列进行编码来输出可伸缩比特流。换句话说,层间视频编码设备10可通过根据各种可伸缩类型对输入图像进行编码来产生并输出可伸缩视频比特流。可伸缩性包括时间可伸缩性、空间可伸缩性、质量可伸缩性、多视点可伸缩性以及它们的组合。这样的可伸缩性可根据类型而被分类。此外,可伸缩性可分别通过每种类型中的维度标识符而被区分。
例如,可伸缩性与时间可伸缩性、空间可伸缩性、质量可伸缩性以及多视点可伸缩性具有相同的可伸缩性类型。此外,可伸缩性可根据类型而通过使用可伸缩性维度标识符被区分。例如,当可伸缩性不同时,可伸缩性可具有不同的维度标识符。例如,针对可伸缩性类型,高可伸缩性维度可被分配给高维度的可伸缩性。
当比特流可划分为有效子流时,比特流可伸缩。空间可伸缩比特流包括各种分辨率的子流。为了区分相同可伸缩类型中的不同可伸缩性,可伸缩性维度被使用。可伸缩性维度可由可伸缩性维度标识符来表示。
例如,空间可伸缩比特流可被划分为具有不同分辨率(诸如四分之一视频图形阵列(QVGA)、视频图形阵列(VGA)和宽视频图形阵列(WVGA))的子流。例如,可通过使用维度标识符来区分具有不同分辨率的层。例如,QVGA子流的空间可伸缩性维度标识符值可为0,VGA子流的空间可伸缩性维度标识符值可为1,并且WVGA子流可的空间可伸缩性维度标识符值可为2。
时间可伸缩比特流包括具有不同帧率的子流。例如,时间可伸缩比特流可被划分为具有7.5Hz的帧率、15Hz的帧率、30Hz的帧率以及60Hz的帧率的子流。质量可伸缩比特流可根据粗粒度可伸缩性(CGS)方法、中间粒度可伸缩性(MGS)方法以及细粒度可伸缩性(FGS)方法而被划分为具有不同质量的子流。也可根据不同帧率通过使用不同维度来区分时间可伸缩性,并且也可根据不同方法通过使用不同维度来区分质量可伸缩性。
多视点可伸缩比特流在一个比特流中包括不同视点的子流。例如,在立体图像中,比特流包括左图像和右图像。此外,可伸缩比特流可包括与多视点图像以及深度图的编码数据相关的子流。也可根据不同视点通过使用不同维度来区分视点可伸缩性。
不同的可伸缩扩展类型可彼此组合。也就是说,可伸缩视频比特流可包括包含多个图像的多层的图像序列被编码的子流,其中,在这些子流中,时间可伸缩性、空间可伸缩性、质量可伸缩性和多视点可伸缩性中的至少一个彼此不同。
图3b示出具有不同可伸缩扩展类型的图像序列3010、3020和3030。第一层的图像序列3010、第二层的图像序列3020以及第n层(其中,n是整数)的图像序列3030可以是分辨率、质量和视点中的至少一个彼此不同的图像序列。此外,第一层的图像序列3010、第二层的图像序列3020以及第n层的图像序列3030中的一个图像序列可以是基本层的图像序列,其它图像序列可以是增强层的图像序列。
例如,第一层的图像序列3010可包括第一视点的图像,第二层的图像序列3020可包括第二视点的图像,第n层的图像序列3030可包括第n视点的图像。作为另一示例,第一层的图像序列3010可以是基本层的左视点图像,第二层的图像序列3020可以是基本层的右视点图像,第n层的图像序列3030可以是增强层的右视点图像。然而,实施例不限于此,具有不同可伸缩扩展类型的图像序列3010、3020和3030可以是具有不同图像属性的图像序列。
图3c示出根据各种实施例的包括多层视频的编码数据的网络抽象层(NAL)单元。
如上所述,比特流产生器18输出包括编码的多层视频数据和附加信息的NAL单元。视频参数集(VPS)包括应用于多层视频中所包括的多层图像序列3120、3130和3140的信息。包括关于VPS的信息的NAL单元被称为VPS NAL单元3110。
VPS NAL单元3110包括由多层图像序列3120、3130和3140共享的共同语法元素、关于用于停止不必要信息的传输的操作点的信息以及关于会话协商期间所需的操作点的不可缺信息(诸如型(profile)或级(level)等)。具体地讲,根据实施例的VPS NAL单元3110包括与用于在多层视频中实现可伸缩性的可伸缩性标识符相关的可伸缩性信息。可伸缩性信息是用于确定被应用于包括在多层视频中的多层图像序列3120、3130和3140的可伸缩性的信息。
可伸缩性信息包括关于可伸缩性类型以及被应用于包括在多层视频中的多层图像序列3120、3130和3140的可伸缩性维度的信息。在第一实施例的编码方法和解码方法中,可直接从包括在NAL单元头中的分层标识符的值获得可伸缩性信息。分层标识符是用于区分包括在VPS中的多个层的标识符。VPS可通过VPS扩展用信号传输每层的分层标识符。VPS的每层的层标识符可通过被包括在VPS NAL单元中而被用信号传输。例如,属于VPS的特定层的NAL单元的分层标识符可包括在VPS NAL单元中。例如,属于VPS的NAL单元的分层标识符可通过VPS扩展而被用信号传输。因此,在根据各种实施例的编码方法和解码方法中,可通过使用属于VPS的NAL单元的分层标识符值来获得关于所述NAL单元的层的可伸缩性信息。
图4a是用于描述根据各种实施例的层间预测的视差矢量的示图。
参照图4a,根据各种实施例的层间视频解码设备20可通过使用视差矢量DV执行层间预测以找出包括在第一层参考图像1402中的与包括在第二层当前画面1400中的当前块1401相应的参考块1403,并可通过使用第一层参考块1403来执行视差补偿。
此外,根据各种实施例的层间视频解码设备20可针对帧间运动补偿获得由从第二层当前块1401开始的视差矢量DV指示的第一层参考块1403的参运动矢量MVref,并可通过使用获得的参考运动矢量MVref来预测当前块1401的运动矢量MVcur。在这种情况下,层间视频解码设备20可通过使用预测的运动矢量MVcur执行第二层图像Tn-1与Tn之间的运动补偿。
如上所述,为了通过参考不同的视点图像执行层间预测,需要视差矢量。视差矢量可作为单独的信息通过比特流从编码设备被发送到解码设备,或者可基于深度图像或当前块的邻近块被预测。也就是说,预测出的视差矢量可以是邻近块视差矢量(NBDV)以及面向深度的NBDV(DoNBDV)。
首先,当从邻近块候选获得了视差矢量(层间方向的运动矢量)时,NBDV表示通过使用获得的视差矢量而预测出的当前块的视差矢量。
此外,当与不同层图像相应的深度图像被编码和解码时,与当前块相应的深度块可通过使用NBDV来确定。就这一点而言,代表深度值从包括在所确定的深度块中的深度值之中被确定,并且所确定的深度值通过使用相机参数被转换为视差矢量。DoNBDV表示通过使用从深度值转换得到的视差矢量预测出的视差矢量。
图4b是用于描述根据各种实施例的用于预测视差矢量的空间邻近块候选的示图。
参照图4b,根据实施例的层间视频解码设备20可按照预定搜索顺序(例如,z扫描或光栅扫描)搜索空间邻近块候选以预测当前画面4000中的当前块1500的视差矢量。就这一点而言,找出的邻近块候选可以是与当前块1500空间邻近的块。空间邻近的块可以是编码单元或预测单元。
可选择地,例如,根据另一实施例的层间视频解码设备20可搜索空间邻近块候选(诸如位于当前块1500的左侧底部的邻近块A0 1510、位于当前块1500的左侧的邻近块A11520、位于当前块1500的右侧顶部的邻近块B0 1530、位于当前块1500的顶部的邻近块B11540以及位于当前块1500的左侧顶部的邻近块B2 1550)以便获得视差矢量。为了获得视差矢量,可按照邻近块候选A1 1520、B1 1540、B0 1530、A0 1510和B2 1550的顺序搜索预定位置的邻近块。
图4c是用于描述根据各种实施例的用于预测视差矢量的时间邻近块候选的示图。
参照图4c,为了层间视频解码设备20对包括在当前画面4000中的当前块1500执行帧间预测,包括在参考画面4100中并与当前块1500位置相同的块Col 1560以及所述位置相同的块1560的邻近块中的至少一个块可被包括在时间邻近块候选中。例如,所述位置相同的块Col 1560的右侧底部块BR 1570可包括在时间预测候选中。同时,用于确定时间预测候选的块可以是编码单元或预测单元。
图5是用于描述根据各种实施例的层间视频解码设备通过使用视差矢量来确定包括在参考块中的样点以便确定运动信息将被参考的参考块的处理的示图。
参照图5,当层间视频解码设备20确定对视点1图像5000的当前块5010执行层间预测时,层间视频解码设备20可确定当前块5010的视差矢量5020。例如,层间视频解码设备20可从邻近块得到当前块5010的视差矢量5020,或者可从比特流获得当前块5010的视差矢量5020。
层间视频解码设备20可通过使用视差矢量5020确定视点0图像5100的块5110,其中,块5110与当前块5010相应。就这一点而言,视点0图像5100可指示时间与视点1图像5000相同的与不同视点相应的图像。
层间视频解码设备20可确定位于视点0图像5100中的块5110中的posin样点5300以便确定参考块,并可将包括确定的样点5200的块确定为参考块。就这一点而言,包括确定的样点5200的参考块可等同于块5110。
可选择地,层间视频解码设备20可不将块5110确定为参考块,而是可将包括运动信息的块5201确定为参考块。
例如,层间视频解码设备20可从视点0图像5100确定具有预定尺寸并存储运动信息的单元(在下文中,称为运动信息单元)。层间视频解码设备20可将确定的运动信息单元之中的包括样点的运动信息单元确定为参考块。此外,例如,层间视频解码设备20可确定一个或更多个预测单元。层间视频解码设备20可将确定的预测单元之中的包括样点的预测单元确定为参考块。
层间视频解码设备20可获得参考块的运动矢量,可通过使用参考块的运动矢量来确定当前块5010的运动矢量,并可通过使用当前块5010的运动矢量来对当前块5010执行运动补偿。
层间视频解码设备可将参考块的运动矢量确定为视点间运动预测候选。层间视频解码设备20可确定当前块5010的运动矢量、预测方向和参考图像索引。层间视频解码设备20可在包括与视点间运动预测候选相关联的合并候选(视点间运动预测合并候选)的多个合并候选之中确定合并候选,并可通过使用与该合并候选相关联的运动信息来对当前块5010执行预测。就这一点而言,当层间视频解码设备20在多个合并候选之中确定视点间运动预测合并候选时,层间视频解码设备20可通过使用与视点间运动预测合并候选相关联的运动信息(视点间运动预测候选以及相关预测方向和相关参考图像索引)来对当前块5010执行预测。
层间视频解码设备20可通过使用视点间运动预测候选的运动信息确定当前块5010的运动信息,并可通过使用当前块5010的运动信息对当前块5010执行运动补偿。
为了确定参考块,层间视频解码设备20可在与视点0图像5100的块5110接触的样点5301、5302、5303、5304、5305、5306、5307和5308之中确定样点,并可将包括确定的样点(在下文中,称为参考样点)的块确定为参考块。层间视频解码设备20可将视点0图像5100的运动信息单元之中的包括参考样点的运动信息单元确定为参考块,或者可将视点0图像5100的预测单元之中的包括参考样点的预测单元确定为参考块。
层间视频解码设备20可获得参考块的运动矢量,可通过使用参考块的运动矢量来确定当前块的运动矢量5010,并可通过使用当前块的运动矢量5010执行运动补偿。
更详细地将,层间视频解码设备20可将参考块的运动矢量确定为移位视点间运动预测候选。层间视频解码设备20可确定当前块5010的运动矢量连同预测方向和参考图像索引。层间视频解码设备20在包括与视点间运动预测候选相关联的合并候选(视点间运动预测合并候选)的多个合并候选之中确定合并候选,并可通过使用与该合并候选相关联的运动信息来对当前块5010执行预测。当层间视频解码设备20在多个合并候选之中确定移位的视点间运动预测合并候选时,层间视频解码设备20可通过使用移位的视点间运动预测候选的运动信息对当前块5010执行预测。层间视频解码设备20可通过使用移位的视点间运动预测候选的运动信息确定当前块5010的运动信息,并可通过使用当前块5010的运动信息对当前块5010执行运动补偿。
与视点0图像5100的块5110接触的样点5301、5302、5303、5304、5305、5306、5307和5308中的样点可被预先确定。例如,层间视频解码设备20可预先确定与视点0图像5100的块5110接触的样点5301、5302、5303、5304、5305、5306、5307和5308中的pos1样点5301,可将包括样点5301的块5202确定为参考块,并可将参考块的运动矢量确定为移位的视点间运动预测候选。层间视频解码设备20可通过使用参考块的运动矢量连同预测方向和参考图像索引来确定当前块5010的预测方向和参考图像索引。
如图5所示,视点0图像5100的块5110中的样点5200的位置或与块5110接触的样点5301、5302、5303、5304、5305、5306、5307和5308的位置可基于块5110被预先确定。
层间视频解码设备20可确定与块5110的右下角接触的pos1样点5301以便得到作为参考块的在块5110的右侧底部的块,并可将包括pos1样点5301的块确定为参考块。可选择地,层间视频解码设备20可确定与块5110的右端接触的pos2样点5302以便得到作为参考块的在块5110的右侧的块,并可将包括pos2样点5302的块确定为参考块。层间视频解码设备20可确定与块5110的右上角接触的pos3样点5303以便得到作为参考块的在块5110的右侧顶部的块,并可将包括pos3样点5303的块确定为参考块。层间视频解码设备20可确定与块5110的顶端接触的pos4样点5304以便得到在块5110的顶部的块,并可将包括pos4样点5304的块确定为参考块。层间视频解码设备20可确定与块5110的左上角接触的pos5样点5305以便得到作为参考块的在块5110的左侧顶部的块,并可将包括pos5样点5305的块确定为参考块。层间视频解码设备20可确定与块5110的左端接触的pos6样点5306以便得到作为参考块的在块5110的左侧的块,并可将包括pos6样点5306的块确定为参考块。层间视频解码设备20可确定与块5110的左下角接触的pos7样点5307以便得到作为参考块的在块5110的左侧底部的块,并可将包括pos7样点5307的块确定为参考块。层间视频解码设备20可确定与块5110的底部接触的pos8样点5308以便得到作为参考块的在块5110的底部的块,并可将包括pos8样点5308的块确定为参考块。
pos2样点5302、pos4样点5304、pos6样点5306、以及pos8样点5308的位置可被预先确定为均在相对于位于块5110中的posin样点5300的直线上。位于块5110中的posin样点5300的位置可在块5110的中心,但不限于此,posin样点5300可位于块5110中的不同点。在这种情况下,pos2样点5302、pos4样点5304、pos6样点5306、以及pos8样点5308的位置可根据posin样点5300的位置而改变。
当层间视频解码设备20确定参考块时,层间视频解码设备20可获得参考块的运动信息,并可通过使用获得的运动信息来确定当前块5010的运动信息。
层间视频解码设备20可确定时间与视点1图像5000的时间不同的参考图像(未示出)的块,并可通过使用参考图像的块来确定当前块5010的预测块。层间视频解码设备20可从比特流获得当前块5010的残差块,并可通过使用当前块5010的预测块和当前块5010的残差块来重建当前块5010。
层间视频解码设备20可在与视点0图像5100的块5110接触的样点5301、5302、5303、5304、5305、5306、5307和5308之中确定样点,以便确定参考块。例如,层间视频解码设备20可根据预定扫描顺序确定分别包括样点5301、5302、5303、5304、5305、5306、5307和5308的每个块的运动矢量的可用性,并可基于所确定的运动矢量的可用性来在样点5301、5302、5303、5304、5305、5306、5307和5308之中确定样点。可选择地,层间视频解码设备可从比特流获得指示多个样点之中的样点的信息,并可通过使用获得的信息来在样点5301、5302、5303、5304、5305、5306、5307和5308之中确定样点。
层间视频解码设备20可根据预定扫描顺序对分别包括样点5301、5302、5303、5304、5305、5306、5307和5308的块的多条运动信息进行比较,从而确定包括在具有最佳运动信息的块中的样点。此外,层间视频解码设备20可基于当前块5010和块5110之间的位置关系在样点5301、5302、5303、5304、5305、5306、5307和5308之中确定样点。例如,如果视点0图像5100中的块5110的位置在视点1图像5000中的当前块5010的位置的右侧底部,则层间视频解码设备20可确定位于块5110的右侧底部的样点5301。
参照图5,描述了确定指示不同视点的图像的参考块的处理,但本公开不限于此,因此,当不同时间相同视点的图像的参考块被确定时,与当前块5010位置相同的块的内部样点或和与当前块5010位置相同的块接触的样点可被确定,并且包括所确定的样点的块可被确定为参考块。
在上面,由层间视频解码设备20在样点5301、5302、5303、5304、5305、5306、5307和5308之中确定样点的处理被详细描述,但本公开不限于样点5301、5302、5303、5304、5305、5306、5307和5308,因此,对本领域普通技术人员显而易见的是,层间视频解码设备20可使用与块5110接触的不同样点,或可仅使用样点5301、5302、5303、5304、5305、5306、5307和5308中的一些样点。
图6是用于描述根据各种实施例的层间视频解码设备通过使用视差矢量来确定包括在参考块中的样点以便确定运动信息将被参考的参考块的处理的示图。
假设层间视频解码设备20确定移位的视点间运动预测候选。
参照图6,层间视频解码设备20可通过使用邻近块的视差矢量来确定视点1图像600中的当前块6010的视差矢量6020。层间视频解码设备20可通过使用当前块6010的视差矢量6020来确定由视差矢量6020所指示的视点0图像6100中的块6110。
为了确定参考块,层间视频解码设备20可不确定与块6110分开的pos9样点6200,而是可确定与块6110直接接触的pos1样点6201。
更详细地讲,层间视频解码设备20可通过使用等式1和等式2来确定pos1样点6201的位置。
[等式1]
xRefFull=xPb+(nPbW>>1)+((DVx+nPbW*2+2)>>2)
[等式2]
yRefFull=yPb+(nPbH>>1)+((DVy+nPbH*2+2)>>2)
就这一点而言,xRefFull可指示pos1样点6201的x坐标位置,yRefFull可指示pos1样点6201的y坐标位置。xPb可指示当前块(中的左侧顶部像素)的x坐标位置,yPb可指示当前块(中的左侧顶部像素)的y坐标位置。nPbW可指示当前块的宽度。nPbH可指示当前块的高度。DVx可表示关于具有1/4像素精度(即,分数像素精度)的视差矢量的x分量,DVy可表示关于具有1/4像素精度的视差矢量的y分量。DVx和DVy是均具有1/4像素精度的视差矢量,因此可包括小数点,但在这里,假设DVx和DVy均通过乘以4而被表示为整数。就这一点而言,xRefFull和yRefFull可指示整数像素的位置。
层间视频解码设备20可另外确定样点的位置以便确定参考块。层间视频解码设备20可另外通过使用pos1样点6201的位置来确定样点的位置。层间视频解码设备20可通过使用下面的等式3和等式4来确定样点的位置(xRef,yRef)。
[等式3]
xRef=Clip3(O,PicWidthInSampleL-1,(xRefFull>>N)<<N)
[等式4]
yRef=Clip3(O,PicHeightInSampleL-1,(yRefFull>>N)<<N)
就这一点而言,PicWidthInSamplesL可指示整个图像的针对亮度样点的宽度,PicHeightInSamplesL可指示整个图像的针对亮度样点的高度,N可指示通过将log2应用于存储运动信息的预定尺寸的块单元而获得的值。例如,如果存储运动信息的块单元为8×8,则N可以是3。Clip3(x,y,z)函数可以是x为z<x的输出y为z>y的输出并且z为其它情况的输出的函数。
层间视频解码设备20可获得包括处于位置(xRef,yRef)的样点的块6202的运动信息,并可通过使用获得的运动信息来确定当前块的运动信息。就这一点而言,包括处于位置(xRef,yRef)的样点的块6202可以是从视点0图像6100确定的预测单元之中的包括样点的预测单元。
图7是用于描述根据各种实施例的层间视频解码设备20根据各种预测方法确定参考块的处理的示图。
参照图7,层间视频解码设备20可在包括在块7011的邻近块中的样点7015、7016、7017、7018和7019之中确定样点,可将分别包括至少一个样点的块分别确定为参考块,可获得多条参考块的运动信息,并可通过使用所述多条参考块的运动信息来确定当前将被解码的块7011的运动信息。
此外,层间视频解码设备20可通过使用邻近块的运动信息来得到当前将被解码的块7011的运动信息,可通过使用得到的当前将被解码的块7011的运动信息来确定块7021,并可确定块7021中的内部posin(COL)样点7022和与块7021接触的pos1(BR)样点7023之中的样点,其中,块7021被包括在指示与当前将被解码的第一图像7010相同视点不同时间的图像7020中。
层间视频解码设备20可确定包括样点的块,并可通过使用包括样点的块的运动信息来确定块7011的运动信息。当层间视频解码设备20获得包括样点的块的运动信息时,层间视频解码设备20可从存储器取得存储在存储器中的运动信息。
在下文中,假设层间视频解码设备20尝试对第二图像7100进行解码。第二图像7100可以是指示与第一图像7010不同视点不同时间并且指示与图像7020相同时间的图像。
层间视频解码设备20可确定第二图像7100中的当前块7011的视差分量7102,并可通过使用当前块7101的视差分量7102来确定包括在图像7020中的块7021。
层间视频解码设备20可确定与块7021隔开的样点7024,并可将包括样点7024的块7031确定为参考块。层间视频解码设备20可获得块7031的运动信息,并可通过使用块7031的运动信息来确定第二图像7100中的当前块7101的运动信息。就这一点而言,样点7024与在对第一图像进行解码的过程中使用的样点7023不同,因此,获得了运动信息的块7031可与在对第一图像进行解码的过程中使用的块7030不同。因此,被预先从存储器取得的块7030的运动信息不能被使用,块7031的运动信息必须被另外取得。因此,由于层间视频解码设备20取得两次运动信息,存储器的复杂度会增加。然而,如果确定样点7023被等同地应用于对第一图像7010解码的过程以及对第二图像7100进行解码的过程,则包括样点7023的块被等同地确定,因此,块7031的运动信息被等同地使用。因此,层间视频解码设备20可通过使用当层间视频解码设备20对第一图像7010进行解码时取得的运动信息来确定第二图像7100的当前块7101的运动信息。也就是说,层间视频解码设备20不另外取得运动信息,使得存储器的复杂度可降低。
此外,当层间视频解码设备20对第二图像7100中的当前块7010进行解码时,层间视频解码设备20不确定样点7024,而是确定样点7023,并将块7030确定为参考块(块7030与样点7024的块7031更接近),使得当前块的运动信息通过使用与当前块的运动信息更相似的参考块的运动信息(而不是与块7021远离的块7031的运动信息)而被确定,因此,编码和解码效率可提高。
如上所述,根据各种实施例的层间视频编码设备10和根据各种实施例的层间视频解码设备20可将从视频数据划分的块划分为树结构的编码单元,并且使用编码单元、预测单元、变换单元等以便对编码单元执行层间预测或帧间预测。在下文中,参照图8至图20,将描述根据各种实施例的基于具有树结构的编码单元和变换单元的视频编码方法、视频编码设备、视频解码方法和视频解码设备。
原则上,在用于多层视频的编码和解码处理期间,单独地执行对第一层图像的编码和解码处理以及对第二层图像的编码和解码处理。换句话说,当对多层视频执行层间预测时,单层视频的编码和解码结果可被互相参考,但根据单层视频执行单独的编码和解码处理。
因此,由于为了便于描述而在下面参照图8至图20描述的基于具有树结构的编码单元的视频编码和解码处理是对单层视频进行处理的视频编码处理和解码处理,因此仅执行帧间预测和运动补偿。然而,如参照图1a至图7所描述的,为了对视频流进行编码和解码,对基本层图像和第二层图像执行层间预测和补偿。
因此,为了使根据各种实施例的层间视频编码设备10的编码器12基于具有树结构的编码单元对多层视频进行编码,层间视频编码设备10可包括与多层视频的层数一样多的图8的视频编码设备100以根据每个单层视频执行视频编码,由此控制每个视频编码设备100对被分配的单层视频进行编码。此外,层间视频编码设备10可通过使用每个视频编码设备100的单独的单视点的编码结果来执行视点间预测。因此,层间视频编码设备10的编码器12可产生包括根据层的编码结果的基本视点视频流和第二层视频流。
类似地,为了使根据各种实施例的层间视频解码设备20的解码器22基于具有树结构的编码单元对多层视频进行解码,层间视频解码设备20可包括与多层视频的层数一样多的图9的视频解码设备200,以便针对接收到的第一层视频流和接收到的第二层视频流根据层执行视频解码,从而控制每个视频解码设备200对被分配的单层视频进行解码。此外,层间视频解码设备20可通过使用每个视频解码设备200的单独的单层的解码结果来执行层间补偿。因此,层间视频解码设备20的解码器22可产生根据层而被重建的第一层图像和第二层图像。
图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个尺寸为N×N的更低深度的编码单元。
因此,视频编码设备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描述的层间视频解码设备20可包括与视点数一样多的视频解码设备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根据预测单元对帧内模式下的编码单元执行帧内预测。帧间预测器535通过使用针对当前图像之中的帧间模式的当前单元的参考图像,根据预测单元来执行帧间预测,其中,参考画面是由重建画面缓冲器530获得。
将经过帧内预测器540和帧间预测器535的关于每个模式的编码单元的残差数据和预测数据相加,使得关于当前图像405的编码单元的空间域中的数据可被重建,并且重建的空间域中的数据可通过去块单元545和SAO执行器550被输出为重建图像560。此外,存储在重建画面缓冲器530中重建图像可被输出为参考图像。
为了视频解码设备200的画面解码器230对图像数据进行解码,可执行根据各种实施例的图像解码器500的熵解码器515之后的操作。
为了将图像解码器500应用于根据各种实施例的视频解码设备200,图像解码器500的组件(即,熵解码器515、反量化器520、逆变换器525、帧内预测器540、帧间预测器535、去块单元545和SAO执行器550)可针对每个最大编码单元基于具有树结构的编码单元执行操作。
具体地,帧内预测器540和帧间预测器535可确定根据树结构的编码单元之中的每个编码单元的分区模式和预测模式,逆变换器525可在每个编码单元中确定是否根据四叉树结构划分变换单元。
图10的编码操作和图11的解码操作分别描述在单层中的视频流编码操作和视频流解码操作。因此,当图1a的编码器12对至少两层的视频流进行编码时,图1a的层间视频编码设备10可包括与层数一样多的图像编码器400。类似地,当图2a的解码器22对至少两层的视频流进行解码时,图2a的层间视频解码设备20可包括与层数一样多的图像解码器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是预测单元,则可将预测单元划分成包括在尺寸为64×64的编码单元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指示关于通过划分当前编码单元的预测单元而获得的分区的形状的信息,其中,分区是用于对当前编码单元进行预测编码的数据单元。例如,可将尺寸为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。仅示出了通过对称地划分预测单元而获得的分区912、914、916和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的分区执行跳过模式下的预测编码。
如果在尺寸为2N_0×2N_0的分区模式912、尺寸为2N_0×N_0的分区模式914和尺寸为N_0×2N_0的分区模式916中的一个分区模式中编码误差最小,则可不将预测单元910划分到更低深度。
如果在尺寸为N_0×N_0的分区模式918中编码误差最小,则深度从0改变到1并且执行划分(操作920),并且可对深度为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。
如果在尺寸为N_1×N_1的分区模式948中编码误差最小,则深度从1改变到2并且执行划分(操作950),并对深度为2且尺寸为N_2×N_2的编码单元960重复执行编码来搜索最小编码误差。
当最大深度是d时,根据深度的较深层编码单元可设置直到深度与d-1相应,并且划分信息可被设置直到深度与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)的四个分区重复地执行预测编码,以搜索产生最小编码误差的分区模式。
即使当尺寸为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的深度的编码误差来选择产生最小编码误差的深度以确定深度,并将相应分区模式和预测模式设置为该深度的编码模式。
这样,在所有深度0、1、...、d-1和d中对根据深度的最小编码误差进行比较,并且具有最小编码误差的深度可被确定为深度。该深度、预测单元的分区模式和预测模式可作为划分信息被编码并被发送。此外,由于编码单元必须从0的深度被划分到该深度,因此仅将该深度的划分信息设置为0,并且将除了该深度以外的深度的划分信息设置为1。
根据各种实施例的视频解码设备200的图像数据和编码信息提取器220可提取并使用关于编码单元900的深度和预测单元的信息,以对编码单元912进行解码。根据各种实施例的视频解码设备200可通过使用根据深度的划分信息,将划分信息为0的深度确定为深度,并且使用关于相应深度的划分信息来进行解码。
图17、图18和图19示出根据各种实施例的在编码单元、预测单元和变换单元之间的关系。
编码单元1010是最大编码单元中的根据由视频编码设备100确定的深度的较深层编码单元。预测单元1060是根据深度的每个编码单元1010的预测单元的分区,变换单元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中,通过划分编码单元来获得一些分区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和1054不同于预测单元1060中的编码单元1014、1016、1022、1032、1048、1050、1052和1054。换句话说,根据各种实施例的视频编码设备100和视频解码设备200可对同一编码单元中的独立数据单元执行帧内预测/运动估计/运动补偿/以及变换/逆变换。
因此,对最大编码单元的每个区域中的具有分层结构的每个编码单元递归地执行编码来确定最优编码单元,从而可获得具有递归树结构的编码单元。编码信息可包括关于编码单元的划分信息、分区模式信息、预测模式信息和变换单元尺寸的信息。表1在下面示出可由根据各种实施例的视频编码设备100和视频解码设备200设置的编码信息。
[表1]
Figure GDA0002727951150000541
根据各种实施例的视频编码设备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尺寸标记)是一种类型的变换索引。与变换索引相应的变换单元的尺寸可根据编码单元的预测单元类型或分区模式而改变。
例如,当分区模式被设置为对称分区模式2N×2N 1322、2N×N 1324、1326和N×N1328之一时,如果变换单元划分信息是0,则设置尺寸为2N×2N的变换单元1342,如果变换单元划分信息是1,则可设置尺寸为N×N的变换单元1344。
当分区模式信息被设置成非对称分区模式2N×nU 1332、2N×nD 1334、nL×2N1336和nR×2N 1338之一时,如果变换单元划分信息(TU尺寸标记)是0,则可设置尺寸为2N×2N的变换单元1352,如果变换单元划分信息是1,则可设置尺寸为N/2×N/2的变换单元1354。
参照图19,TU尺寸标记是具有值0或1的标志,但是根据一些示例性实施例的TU尺寸标记不限于1比特,并且变换单元可在TU尺寸标记从0增加时被分层划分为具有树结构。变换单元划分信息可以是变换索引的示例。
在这种情况下,可通过使用根据各种实施例的变换单元划分信息以及变换单元的最大尺寸和变换单元的最小尺寸一起来表示实际上已使用的变换单元的尺寸。根据各种实施例的视频编码设备100可对最大变换单元尺寸信息、最小变换单元尺寸信息和最大变换单元划分信息进行编码。对最大变换单元尺寸信息、最小变换单元尺寸信息和最大变换单元划分信息进行编码的结果可被插入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”。“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描述的包括层间视频解码设备20、视频解码设备200或图像解码器500的视频解码设备将被称为“视频解码设备”。
现在将详细描述根据各种实施例的存储程序的非暂时性计算机可读记录介质(诸如盘26000)。
图21示出根据各种实施例的存储程序的盘26000的物理结构。作为存储介质的盘26000可以是硬盘驱动器、致密盘只读存储器(CD-ROM)盘、蓝光盘或数字多功能盘(DVD)。盘26000包括多个同心磁道Tr,每个同心磁道Tr沿盘26000的圆周方向被划分成特定数量的扇区Se。在盘26000的特定区域中,可分配并存储执行以上所描述的量化参数确定方法、视频编码方法和视频解码方法的程序。
现在将参照图22来描述使用存储用于执行如上所述的视频编码方法和视频解码方法的程序的存储介质来实现的计算机系统。
图22示出通过使用盘26000来记录并读取程序的盘驱动器26800。计算机系统26700可经由盘驱动器26800将执行视频编码方法和视频解码方法中的至少一个的程序存储在盘26000中。为了在计算机系统26700中运行存储在盘26000中的程序,可通过使用盘驱动器26800从盘26000读取程序并将程序发送到计算机系统26700。
执行视频编码方法和视频解码方法中的至少一个的程序不仅可被存储在图21和图22中示出的盘26000中,还可被存储在存储卡、ROM卡带或固态驱动器(SSD)中。
以下将描述应用以上所描述的根据实施例视频编码方法和视频解码方法的系统。
图2示出提供内容分发服务的内容供应系统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包括可与无线基站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。由相机12530捕捉到的图像数据可经由相机接口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的结构可与上述视频解码设备的结构相应。图像解码单元12690可通过使用上述视频解码方法,对编码后的视频数据进行解码来获得重建的视频数据,并经由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可接收从卫星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、平板PC 14800等。
云计算服务器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描述的根据各种实施例的视频编码方法、视频解码方法、视频编码设备和视频解码设备的各种应用。然而,以上参照图1a至图20描述的将视频编码方法和视频解码方法存储在存储介质中的方法或者将视频编码设备和视频解码设备实现在装置中的方法不限于以上参照图21至图27描述的实施例。
尽管已参照本公开的实施例具体示出和描述了本公开,但本领域的普通技术人员将理解,在不脱离由权利要求限定的本发明的精神和范围的情况下,可作出形式和细节上的各种改变。实施例应仅被看作描述性意义,而不是限制的目的。因此,本公开的范围不由本公开的详细描述来限定,而由权利要求来限定,在所述范围内的所有不同将被解释为包括在本公开中。

Claims (11)

1.一种层间视频解码方法,包括:
获得包括在第一层图像中的当前块的视差矢量;
通过使用获得的视差矢量来确定第二层图像中的与当前块相应的块;
确定包括与第二层图像中的与当前块相应的块的右下角直接接触的第一样点的参考块;
获得所述参考块的运动矢量;
通过使用获得的运动矢量来确定包括在第一层图像中的当前块的运动矢量,
其中,第一层图像是指示第一视点的图像,第二层图像是指示第二视点的图像,
其中,第一样点的坐标被向右移3位再向左移3位以确定第二样点的坐标,
其中,包括第一样点的所述参考块是包括第一样点和第二样点的块。
2.如权利要求1所述的层间视频解码方法,其中,
当前编码单元是通过使用从比特流获得的关于当前编码单元的划分信息而从第一层图像确定的一个或更多个编码单元之一,
当前块是从当前编码单元确定的一个或更多个预测单元之一。
3.如权利要求1所述的层间视频解码方法,其中,
如果第二样点偏离第二层图像的边界外侧,则与第二层图像的边界内侧邻近的第三样点被确定,并且
包括所确定的与第二层图像的边界内侧邻近的第三样点的参考块被确定。
4.如权利要求1所述的层间视频解码方法,其中,
所述视差矢量是具有1/4样点精度的矢量,
通过使用获得的视差矢量来确定包括与第二层图像中的与当前块相应的块的右下角直接接触的第一样点的参考块的步骤包括:
对所述视差矢量执行四舍五入运算以产生具有整数样点精度的视差矢量;
通过使用第二层图像中的与当前块相应的块的宽度和高度中的至少一个、具有整数样点精度的视差矢量以及第二层图像中的与当前块相应的块的位置来确定包括与第二层图像中的与当前块相应的块的右下角直接接触的第一样点的所述参考块。
5.如权利要求1所述的层间视频解码方法,其中,
所述层间视频解码方法还包括:通过使用在指示第一视点的参考图像中的由获得的运动矢量指示的块来确定当前块的预测块,
所述参考图像是时间与第一层图像的时间不同的图像。
6.一种层间视频编码方法,包括:
获得包括在第一层图像中的当前块的视差矢量;
通过使用获得的视差矢量来确定第二层图像中的与当前块相应的块;
确定包括与第二层图像中的与当前块相应的块的右下角直接接触的第一样点的参考块;
获得所述参考块的运动矢量;
通过使用获得的运动矢量来确定包括在第一层图像中的当前块的运动矢量;
通过使用确定的运动矢量来确定当前块的预测块;
通过使用当前块的预测块来对针对当前块的残差块进行编码,
其中,第一层图像是指示第一视点的图像,第二层图像是指示第二视点的图像,
其中,第一样点的坐标被向右移3位再向左移3位以确定第二样点的坐标,
其中,包括第一样点的所述参考块是包括第一样点和第二样点的块。
7.如权利要求6所述的层间视频编码方法,其中,
如果第二样点偏离第二层图像的边界外侧,则与第二层图像的边界内侧邻近的第三样点被确定,并且
包括所确定的与第二层图像的边界内侧邻近的第三样点的参考块被确定。
8.如权利要求6所述的层间视频编码方法,其中,
所述视差矢量是具有1/4样点精度的矢量,
通过使用获得的视差矢量来确定包括与第二层图像中的与当前块相应的块的右下角直接接触的第一样点的参考块的步骤包括:
对所述视差矢量执行四舍五入运算以产生具有整数样点精度的视差矢量;
通过使用第二层图像中的与当前块相应的块的宽度和高度中的至少一个、具有整数样点精度的视差矢量、第二层图像中的与当前块相应的块的位置来确定包括与第二层图像中的与当前块相应的块的右下角直接接触的第一样点的所述参考块。
9.一种层间视频解码设备,包括:
视差矢量获得器,被配置为获得从第一层图像的当前块解码得到的指示第二层图像的相应块的视差矢量;
解码器,被配置为通过使用获得的视差矢量来确定包括与第二层图像的所述相应块的右下角直接接触的第一样点的参考块,获得所述参考块的运动矢量,以及通过使用获得的运动矢量来获得第一层图像的当前块的预测块,
其中,第一层图像是指示第一视点的图像,第二层图像是指示第二视点的图像,
其中,第一样点的坐标被向右移3位再向左移3位以确定第二样点的坐标,
其中,包括第一样点的所述参考块是包括第一样点和第二样点的块。
10.一种层间视频编码设备,包括:
视差矢量获得器,被配置为获得从第一层图像的当前块编码得到的指示第二层图像的相应块的视差矢量;
编码器,被配置为通过使用获得的视差矢量来确定包括与第二层图像的所述相应块的右下角直接接触的第一样点的参考块,获得所述参考块的运动矢量,通过使用获得的运动矢量来获得当前块的预测块,以及通过使用当前块的预测块来对包括当前块的第一层图像进行编码,
其中,第一层图像是指示第一视点的图像,第二层图像是指示第二视点的图像,
其中,第一样点的坐标被向右移3位再向左移3位以确定第二样点的坐标,
其中,包括第一样点的所述参考块是包括第一样点和第二样点的块。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至8中任意一项所述的方法。
CN201680017423.1A 2015-01-21 2016-01-20 用于对层间视频进行解码的方法和设备以及用于对层间视频进行编码的方法和设备 Active CN107409214B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201562106154P 2015-01-21 2015-01-21
US62/106,154 2015-01-21
PCT/KR2016/000597 WO2016117930A1 (ko) 2015-01-21 2016-01-20 인터 레이어 비디오 복호화 방법 및 그 장치 및 인터 레이어 비디오 부호화 방법 및 그 장치

Publications (2)

Publication Number Publication Date
CN107409214A CN107409214A (zh) 2017-11-28
CN107409214B true CN107409214B (zh) 2021-02-02

Family

ID=56417391

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680017423.1A Active CN107409214B (zh) 2015-01-21 2016-01-20 用于对层间视频进行解码的方法和设备以及用于对层间视频进行编码的方法和设备

Country Status (5)

Country Link
US (1) US10820007B2 (zh)
EP (1) EP3247114A4 (zh)
KR (1) KR102149827B1 (zh)
CN (1) CN107409214B (zh)
WO (1) WO2016117930A1 (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101549644B1 (ko) 2010-04-13 2015-09-03 지이 비디오 컴프레션, 엘엘씨 샘플 영역 병합
BR112012026400B1 (pt) 2010-04-13 2021-08-10 Ge Video Compression, Ll Predição inter-plano
DK2559005T3 (en) 2010-04-13 2015-11-23 Ge Video Compression Llc Inheritance at sample array multitræsunderinddeling
CN106231324B (zh) 2010-04-13 2019-11-05 Ge视频压缩有限责任公司 解码器、解码方法、编码器以及编码方法
US11095898B2 (en) * 2016-03-28 2021-08-17 Lg Electronics Inc. Inter-prediction mode based image processing method, and apparatus therefor
US10567808B2 (en) * 2016-05-25 2020-02-18 Arris Enterprises Llc Binary ternary quad tree partitioning for JVET
WO2018131986A1 (ko) * 2017-01-16 2018-07-19 세종대학교 산학협력단 영상의 부호화/복호화 방법 및 장치
CN109005412B (zh) * 2017-06-06 2022-06-07 北京三星通信技术研究有限公司 运动矢量获取的方法及设备
US10785494B2 (en) * 2017-10-11 2020-09-22 Qualcomm Incorporated Low-complexity design for FRUC
US11240500B2 (en) * 2018-06-01 2022-02-01 Sharp Kabushiki Kaisha Image decoding apparatus and image coding apparatus
WO2020004990A1 (ko) * 2018-06-27 2020-01-02 엘지전자 주식회사 인터 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
US11146805B2 (en) 2018-11-30 2021-10-12 Tencent America LLC Method and apparatus for video coding

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101370899B1 (ko) 2006-10-24 2014-03-10 엘지전자 주식회사 비디오 신호 디코딩 방법 및 장치
JP4762938B2 (ja) * 2007-03-06 2011-08-31 三菱電機株式会社 データ埋め込み装置、データ抽出装置、データ埋め込み方法およびデータ抽出方法
KR101431546B1 (ko) 2007-05-02 2014-08-22 삼성전자주식회사 다시점 동영상의 부호화 및 복호화 방법과 그 장치
US8917775B2 (en) 2007-05-02 2014-12-23 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding multi-view video data
AU2008313328A1 (en) * 2007-10-15 2009-04-23 Nokia Corporation Motion skip and single-loop encoding for multi-view video content
KR101520619B1 (ko) * 2008-02-20 2015-05-18 삼성전자주식회사 스테레오 동기화를 위한 스테레오스코픽 영상의 시점 결정방법 및 장치
CN102055963A (zh) 2008-06-13 2011-05-11 华为技术有限公司 一种视频编码、解码方法及编码、解码装置
EP2338281A4 (en) * 2008-10-17 2012-08-15 Nokia Corp SHARING THE MOTION VECTOR IN 3D VIDEO CODING
JP5429034B2 (ja) * 2009-06-29 2014-02-26 ソニー株式会社 立体画像データ送信装置、立体画像データ送信方法、立体画像データ受信装置および立体画像データ受信方法
EP2665271A4 (en) 2011-01-12 2014-06-18 Panasonic Corp VIDEO ENCODING METHOD AND VIDEO DECODING METHOD
JP5747559B2 (ja) * 2011-03-01 2015-07-15 富士通株式会社 動画像復号方法、動画像符号化方法、動画像復号装置、及び動画像復号プログラム
CN105187838A (zh) 2011-05-31 2015-12-23 Jvc建伍株式会社 动图像解码装置、动图像解码方法、接收装置及接收方法
JP5252029B2 (ja) 2011-05-31 2013-07-31 株式会社Jvcケンウッド 動画像復号装置、動画像復号方法、動画像復号プログラム、受信装置、受信方法、及び受信プログラム
KR20130037161A (ko) * 2011-10-05 2013-04-15 한국전자통신연구원 스케일러블 비디오 코딩을 위한 향상된 계층간 움직임 정보 예측 방법 및 그 장치
US10075728B2 (en) * 2012-10-01 2018-09-11 Inria Institut National De Recherche En Informatique Et En Automatique Method and device for motion information prediction refinement
US9357214B2 (en) * 2012-12-07 2016-05-31 Qualcomm Incorporated Advanced merge/skip mode and advanced motion vector prediction (AMVP) mode for 3D video
US10136143B2 (en) * 2012-12-07 2018-11-20 Qualcomm Incorporated Advanced residual prediction in scalable and multi-view video coding
US20140218473A1 (en) * 2013-01-07 2014-08-07 Nokia Corporation Method and apparatus for video coding and decoding
US10194146B2 (en) * 2013-03-26 2019-01-29 Qualcomm Incorporated Device and method for scalable coding of video information
US9609347B2 (en) * 2013-04-04 2017-03-28 Qualcomm Incorporated Advanced merge mode for three-dimensional (3D) video coding
US20140301463A1 (en) * 2013-04-05 2014-10-09 Nokia Corporation Method and apparatus for video coding and decoding
CN105264894A (zh) 2013-04-05 2016-01-20 三星电子株式会社 针对层间解码和编码方法以及设备的确定帧间预测候选的方法
EP2932716A4 (en) * 2013-04-10 2016-07-06 Mediatek Inc METHOD AND DEVICE FOR SELECTION OF INTERCONNECTION CANDIDATES FOR THREE-DIMENSIONAL VIDEO-CORDING
US9930363B2 (en) * 2013-04-12 2018-03-27 Nokia Technologies Oy Harmonized inter-view and view synthesis prediction for 3D video coding
JP6360053B2 (ja) * 2013-06-18 2018-07-18 シャープ株式会社 照度補償装置、画像復号装置、画像符号化装置
WO2015057039A1 (ko) * 2013-10-18 2015-04-23 엘지전자 주식회사 멀티-뷰 비디오 코딩에 있어서, 뷰 합성 예측 방법 및 이를 이용한 머지 후보 리스트 구성 방법
KR102227279B1 (ko) * 2013-10-24 2021-03-12 한국전자통신연구원 비디오 부호화/복호화 방법 및 장치
JP6469588B2 (ja) * 2013-12-19 2019-02-13 シャープ株式会社 残差予測装置、画像復号装置、画像符号化装置、残差予測方法、画像復号方法、および画像符号化方法
WO2015100710A1 (en) * 2014-01-02 2015-07-09 Mediatek Singapore Pte. Ltd. Existence of inter-view reference picture and availability of 3dvc coding tools
US10554967B2 (en) * 2014-03-21 2020-02-04 Futurewei Technologies, Inc. Illumination compensation (IC) refinement based on positional pairings among pixels
TWI566576B (zh) * 2014-06-03 2017-01-11 宏碁股份有限公司 立體影像合成方法及裝置

Also Published As

Publication number Publication date
KR102149827B1 (ko) 2020-08-31
EP3247114A1 (en) 2017-11-22
US20180007379A1 (en) 2018-01-04
WO2016117930A1 (ko) 2016-07-28
EP3247114A4 (en) 2018-01-17
US10820007B2 (en) 2020-10-27
CN107409214A (zh) 2017-11-28
KR20170100564A (ko) 2017-09-04

Similar Documents

Publication Publication Date Title
CN107409214B (zh) 用于对层间视频进行解码的方法和设备以及用于对层间视频进行编码的方法和设备
US10574986B2 (en) Interlayer video decoding method for performing sub-block-based prediction and apparatus therefor, and interlayer video encoding method for performing sub-block-based prediction and apparatus therefor
US10567773B2 (en) Inter-layer video decoding method for performing subblock-based prediction and apparatus therefor, and inter-layer video encoding method for performing subblock-based prediction and apparatus therefor
US10154271B2 (en) Method and apparatus for inter-layer decoding video using depth-based disparity vector, and method and apparatus for inter-layer encoding video using depth-based disparity vector
US10187657B2 (en) Method and device for configuring merge candidate list for decoding and encoding of interlayer video
KR102274322B1 (ko) 서브 블록 기반 예측을 수행하는 인터 레이어 비디오 복호화 방법 및 그 장치 및 서브 블록 기반 예측을 수행하는 인터 레이어 비디오 부호화 방법 및 그 장치
CN106664413B (zh) 层间视频编解码方法、设备和计算机可读记录介质
US9924182B2 (en) Method for predicting disparity vector based on blocks for apparatus and method for inter-layer encoding and decoding video
EP2981090A1 (en) Method for determining inter-prediction candidate for interlayer decoding and encoding method and apparatus
US10063878B2 (en) Interlayer video encoding method using brightness compensation and device thereof, and video decoding method and device thereof
CN107690806B (zh) 视频编码方法和视频编码设备以及视频解码方法和视频解码设备
US20160309173A1 (en) Depth encoding method and apparatus, decoding method and apparatus
CN107005705B (zh) 使用层间预测对多层图像进行编码或解码的方法和装置
US20170127060A1 (en) Multi-layer video encoding method and multi-layer video decoding method using depth blocks
CN107005710B (zh) 多视点图像编码/解码方法和装置
US20170078697A1 (en) Depth image prediction mode transmission method and apparatus for encoding and decoding inter-layer video
US10356430B2 (en) Interlayer video decoding method and apparatus using view synthesis prediction and interlayer video encoding method and apparatus using view synthesis prediction
US10182234B2 (en) Method and apparatus for applying view synthesized prediction according to illumination compensation
US20160029033A1 (en) Interlayer video encoding method and apparatus and interlayer video decoding method and apparatus for compensating luminance difference
EP2983362B1 (en) Interlayer video decoding method and apparatus for compensating luminance difference
US20170026662A1 (en) Disparity vector predicting method and apparatus for encoding inter-layer video, and disparity vector predicting method and apparatus for decoding inter-layer video
US20160227250A1 (en) Method and apparatus for depth inter coding, and method and apparatus for depth inter decoding
US20160073127A1 (en) Method for predicting disparity vector for interlayer video decoding and encoding apparatus and method

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant