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

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

Info

Publication number
CN106063271A
CN106063271A CN201480076495.4A CN201480076495A CN106063271A CN 106063271 A CN106063271 A CN 106063271A CN 201480076495 A CN201480076495 A CN 201480076495A CN 106063271 A CN106063271 A CN 106063271A
Authority
CN
China
Prior art keywords
block
sub
image
layer
size
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.)
Granted
Application number
CN201480076495.4A
Other languages
English (en)
Other versions
CN106063271B (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 CN106063271A publication Critical patent/CN106063271A/zh
Application granted granted Critical
Publication of CN106063271B publication Critical patent/CN106063271B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/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/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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/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/188Methods 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 video data packet, e.g. a network abstraction layer [NAL] unit
    • 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/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/521Processing of motion vectors for estimating the reliability of the determined motion vectors or motion vector field, e.g. for smoothing the motion vector field or for correcting motion vectors
    • 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/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • 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
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

提供了一种层间视频解码方法,包括:获得第二层图像的子块尺寸信息,其中,所述子块尺寸信息指示小于或等于编码单元的最大尺寸的范围内的子块的尺寸;通过使用所述子块尺寸信息,从等于或大于编码单元的最小尺寸且小于或等于编码单元的最大尺寸的范围确定子块的尺寸;确定包括在与第二层图像不同的第一层图像中的与包括在第二层图像中的当前块相应的候选块;当从当前块获得了第二层图像中通过使用子块的尺寸而确定的至少一个子块时,获得第一层图像中与第二层图像的子块相应的子块的运动信息;通过使用第一层图像的子块的运动信息来获得或预测当前块的运动信息,并通过使用获得的或预测出的当前块的运动信息来对当前块进行解码,其中,第一层图像的子块被确定为位于候选块内部的区域中。

Description

用于执行基于子块的预测的层间视频解码方法及其设备以及 用于执行基于子块的预测的层间视频编码方法及其设备
技术领域
本公开涉及一种层间视频编码方法和层间视频解码方法,更具体地讲,涉及一种确定子块并基于确定的子块来执行预测的层间视频编码方法和解码方法。
背景技术
随着用于再现和存储高分辨率或高质量视频内容的硬件正被开发和提供,对于用于有效地对高分辨率或高质量视频内容进行编码或解码的视频编解码器的需求正在增加。根据传统的视频编解码器,基于具有预定尺寸的宏块,根据受限的编码方法来对视频进行编码。
空间域的图像数据经由频率变换被变换为频域的系数。根据视频编解码器,将图像划分为具有预定尺寸的块,对每个块执行离散余弦变换(DCT),并按照块单元对频率系数进行编码,以进行频率变换的快速计算。与空间域的图像数据相比,频域的系数容易被压缩。具体地,由于根据经由视频编解码器的帧间预测或帧内预测的预测误差来表示空间域的图像像素值,因此当对预测误差执行频率变换时,大量数据可能被变换为0。根据视频编解码器,可通过使用小规模的数据来代替连续并重复产生的数据,从而减少数据量。
多层视频编解码器对第一层视频和至少一个第二层视频进行编码和解码。通过去除时间/空间冗余以及第一层视频和第二层视频的层冗余,可减少第一层视频和第二层视频的数据量。
同时,当基于子块的层间预测被执行时,用信号传输子块尺寸信息。这里,由于在完全不考虑子块尺寸小于编码单元的最小尺寸或大于编码单元的最大尺寸的情况下用信号传输子块尺寸信息,因此编码设备和解码设备的实现/操作复杂度不必要地增加。此外,用信号传输的子块尺寸信息包括关于具有不被用作预测单元的尺寸的块的信息,因此可能不必要地浪费比特数量。
此外,当基于子块的层间预测被执行时,由于子块是在不考虑现有编解码器中允许的预测单元的情况下被确定的,因此与现有编解码器的兼容性低下。
发明内容
技术问题
根据本公开的一方面,提供了一种层间视频解码方法,包括:获得第二层图像的子块尺寸信息,其中,所述子块尺寸信息指示等于或大于编码单元的最小尺寸且小于或等于编码单元的最大尺寸的范围内的子块的尺寸;通过使用所述子块尺寸信息,从等于或大于编码单元的最小尺寸且小于或等于编码单元的最大尺寸的范围确定子块的尺寸;确定包括在与第二层图像不同的第一层图像中的与包括在第二层图像中的当前块相应的候选块;当从当前块获得了第二层图像中通过使用子块的尺寸而确定的至少一个子块时,获得第一层图像中与第二层图像的子块相应的子块的运动信息;通过使用第一层图像的子块的运动信息来获得或预测当前块的运动信息,并通过使用获得的或预测出的当前块的运动信息来对当前块进行解码,其中,第一层图像的子块被确定为位于候选块内部的区域中。
根据本公开的一方面,提供了一种层间视频编码方法,包括:从等于或大于编码单元的最小尺寸且小于或等于编码单元的最大尺寸的范围获得第二层图像的子块的尺寸;确定包括在与第二层图像不同的第一层图像中的与包括在第二层图像中的当前块相应的候选块;当从当前块获得了第二层图像中通过使用所确定的子块的尺寸而确定的至少一个子块时,获得第一层图像中与第二层图像的子块相应的子块的运动信息;通过使用所获得的第一层图像的子块的运动信息来获得或预测当前块的运动信息,并通过使用获得或预测出的当前块的运动信息来对当前块进行编码;产生包括指示所确定的子块的尺寸的子块尺寸信息的比特流,其中,第一层图像的子块被确定为位于候选块内部的区域中。
根据本公开的一方面,提供了一种层间视频解码方法,包括:对编码的第一层图像进行解码;确定包括在第一层图像中的与包括在第二层图像中的当前块相应的候选块;在当前块的尺寸不是子块的预定尺寸的整数倍时,将尺寸不是子块的所述预定尺寸的至少一个块确定为子块;当尺寸被确定时,获得第一层图像中与第二层图像的子块相应的子块的运动信息;通过使用所获得的第一层图像的子块的运动信息来获得或预测当前块的运动信息,并通过使用获得的或预测出的当前块的运动信息来对当前块进行解码,其中,第二层图像的子块被确定为位于候选块内部的区域中。
根据本公开的一方面,提供了一种层间视频编码方法,包括:对第一层图像进行编码;确定包括在第一层图像中的与包括在第二层图像中的当前块相应的候选块;在当前块的尺寸不是子块的预定尺寸的整数倍时,将尺寸不是子块的所述预定尺寸的至少一个块确定为子块;当子块被确定时,获得第一层图像中与第二层图像的子块相应的子块的运动信息;通过使用所获得的第一层图像的子块的运动信息来获得或预测当前块的运动信息,并通过使用获得的或预测出的当前块的运动信息来对当前块进行编码;其中,第二层图像的子块被确定为位于候选块内部的区域中。
有益效果
根据本公开的实施例,通过对子块尺寸范围设置限制,用信号传输的子块尺寸相关信息的大小可被降低,并且编码设备和解码设备的实现/操作复杂度可被降低。
此外,根据本公开的另一实施例,通过考虑现有编解码器中允许的预测单元的尺寸来确定子块的尺寸,与现有编解码器的兼容性可增加。
附图说明
图1a是根据各种实施例的层间视频编码设备的框图。
图1b是根据各种实施例的层间视频编码方法的流程图。
图1c是根据各种实施例的层间视频解码设备的框图。
图1d是根据各种实施例的层间视频解码方法的流程图。
图2a是根据各种实施例的层间视频编码设备的框图。
图2b是根据各种实施例的层间视频编码方法的流程图。
图2c是根据各种实施例的层间视频解码设备的框图。
图2d是根据各种实施例的层间视频解码方法的流程图。
图3a是根据各种实施例的层间预测结构的示图。
图3b是根据各种实施例的多层视频的示图。
图3c是根据各种实施例的包括多层视频的编码数据的网络抽象层(NAL)单元的示图。
图4a是用于描述根据各种实施例的用于层间预测的视差矢量的示图。
图4b是用于描述根据各种实施例的用于预测视差矢量的空间邻近块候选的示图。
图4c是用于描述根据各种实施例的用于预测视差矢量的时间邻近块候选的示图。
图5是用于描述根据各种实施例的基于子块的视点间运动预测的示图。
图6a至图6c是用于描述根据各种实施例的确定子块的尺寸的处理的示图。
图7a是示出根据本公开的实施例的视频参数集(VPS)扩展语法的示图。
图7b是示出根据本公开的实施例的序列参数集(SPS)扩展语法的示图。
图8是根据实施例的基于根据树结构的编码单元的视频编码设备的框图。
图9是根据实施例的基于根据树结构的编码单元的视频解码设备的框图。
图10是用于描述根据本公开的各种实施例的编码单元的概念的示图。
图11是根据本公开的各种实施例的基于编码单元的图像编码器的框图。
图12是根据本公开的各种实施例的基于编码单元的图像解码器的框图。
图13是示出根据本公开的各种实施例的编码单元以及分区的示图。
图14是用于描述根据本公开的各种实施例的编码单元与变换单元之间的关系的示图。
图15是用于描述根据本公开的实施例的编码信息的示图。
图16是根据本公开的各种实施例的编码单元的示图。
图17至图19是用于描述根据本公开的各种实施例的编码单元、预测单元和变换单元之间的关系的示图。
图20是用于描述根据表1的编码模式信息的编码单元、预测单元、和变换单元之间的关系的示图。
图21是根据各种实施例的存储程序的盘的物理结构的示图。
图22是通过使用盘来记录和读取程序的盘驱动器的示图。
图23是提供内容分发服务的内容供应系统的整体结构的示图。
图24和图25分别是根据各种实施例的应用了视频编码方法和视频解码方法的移动电话的外部结构和内部结构的示图。
图26是根据本公开的应用了通信系统的数字广播系统的示图。
图27是示出根据本公开的各种实施例的使用视频编码设备和视频解码设备的云计算系统的网络结构的示图。
最佳模式
根据本公开的一方面,提供了一种层间视频解码方法,包括:获得第二层图像的子块尺寸信息,其中,所述子块尺寸信息指示等于或大于编码单元的最小尺寸且小于或等于编码单元的最大尺寸的范围内的子块的尺寸;通过使用所述子块尺寸信息,从等于或大于编码单元的最小尺寸且小于或等于编码单元的最大尺寸的范围确定子块的尺寸;确定包括在与第二层图像不同的第一层图像中的与包括在第二层图像中的当前块相应的候选块;当从当前块获得了第二层图像中通过使用子块的尺寸而确定的至少一个子块时,获得第一层图像中与第二层图像的子块相应的子块的运动信息;通过使用第一层图像的子块的运动信息来获得或预测当前块的运动信息,并通过使用获得的或预测出的当前块的运动信息来对当前块进行解码,其中,第一层图像的子块被确定为位于候选块内部的区域中。
确定包括在与第二层图像不同的第一层图像中的与包括在第二层图像中的当前块相应的候选块的步骤可包括:从包括在第二层图像中的当前块获得指向包括在与第二层图像不同的第一层图像中的候选块的视差矢量,其中,获得的视差矢量的垂直分量为0。
当前块可以是当第二层图像的编码单元被划分时产生的一个或更多个预测单元中的一个预测单元,子块可以是小于或等于预测单元的块。
通过使用所述子块尺寸信息,从等于或大于编码单元的最小尺寸且小于或等于编码单元的最大尺寸的范围确定子块的尺寸的步骤可包括:通过使用从比特流获得的指示编码单元的最小尺寸的信息以及包括在比特流中的指示编码单元的最大尺寸与编码单元的最小尺寸之间的差的信息,确定子块的尺寸。
包括所述子块尺寸信息的视频参数集网络抽象层(VPS NAL)单元或序列参数集网络抽象层(SPS NAL)单元可从比特流被获得,并且第二层图像的所述子块信息可从VPS NAL单元或SPS NAL单元被获得。
根据本公开的一方面,提供了一种层间视频编码方法,包括:从等于或大于编码单元的最小尺寸且小于或等于编码单元的最大尺寸的范围获得第二层图像的子块的尺寸;确定包括在与第二层图像不同的第一层图像中的与包括在第二层图像中的当前块相应的候选块;当从当前块获得了第二层图像中通过使用所确定的子块的尺寸而确定的至少一个子块时,获得第一层图像中与第二层图像的子块相应的子块的运动信息;通过使用所获得的第一层图像的子块的运动信息来获得或预测当前块的运动信息,并通过使用获得或预测出的当前块的运动信息来对当前块进行编码;产生包括指示所确定的子块的尺寸的子块尺寸信息的比特流,其中,第一层图像的子块被确定为位于候选块内部的区域中。
确定包括在与第二层图像不同的第一层图像中的与包括在第二层图像中的当前块相应的候选块的步骤可包括:从包括在第二层图像中的当前块获得指向包括在与第二层图像不同的第一层图像中的候选块的视差矢量,其中,获得的视差矢量的垂直分量为0。
当前块可以是当第二层图像的编码单元被划分时产生的一个或更多个预测单元中的一个预测单元,子块可以是小于或等于预测单元的块。
产生包括指示所确定的子块的尺寸的子块尺寸信息的比特流的步骤可包括:产生还包括指示编码单元的最小尺寸的信息以及指示编码单元的最大尺寸与编码单元的最小尺寸之间的差的信息的比特流。
产生包括指示所确定的子块的尺寸的子块尺寸信息的比特流的步骤可包括:产生包括所述子块尺寸信息的视频参数集网络抽象层(VPS NAL)单元或序列参数集网络抽象层(SPS NAL)单元;产生包括VPS NAL单元或SPS NAL单元的比特流。
根据本公开的一方面,提供了一种层间视频解码设备,包括:获得器,被配置为获得等于或大于编码单元的最小尺寸且小于或等于编码单元的最大尺寸的范围内的第二层图像的子块尺寸信息;解码器,被配置为通过使用所述子块尺寸信息,从等于或大于编码单元的最小尺寸且小于或等于编码单元的最大尺寸的范围确定子块的尺寸,确定包括在与第二层图像不同的第一层图像中的与包括在第二层图像中的当前块相应的候选块,当从当前块获得了第二层图像中通过使用子块的尺寸而确定的至少一个子块时,获得第一层图像中与第二层图像的子块相应的子块的运动信息,通过使用第一层图像的子块的运动信息来获得或预测当前块的运动信息,并通过使用获得的或预测出的当前块的运动信息来对当前块进行解码,其中,第一层图像的子块被确定为位于候选块内部的区域中。
根据本公开的一方面,提供了一种层间视频编码设备,包括:编码器,被配置为从等于或大于编码单元的最小尺寸且小于或等于编码单元的最大尺寸的范围获得第二层图像的子块的尺寸,确定包括在与第二层图像不同的第一层图像中的与包括在第二层图像中的当前块相应的候选块,当从当前块获得了第二层图像中通过使用所确定的子块的尺寸而确定的至少一个子块时,获得第一层图像中与第二层图像的子块相应的子块的运动信息,通过使用所获得的第一层图像的子块的运动信息来获得或预测当前块的运动信息,并通过使用获得的或预测出的当前块的运动信息来对当前块进行编码;比特流产生器,被配置为产生包括指示所确定的子块的尺寸的子块尺寸信息的比特流,其中,第一层图像的子块被确定为位于候选块内部的区域中。
根据本公开的一方面,提供了一种层间视频解码方法,包括:对编码的第一层图像进行解码;确定包括在第一层图像中的与包括在第二层图像中的当前块相应的候选块;在当前块的尺寸不是子块的预定尺寸的整数倍时,将尺寸不是子块的所述预定尺寸的至少一个块确定为子块;当子块被确定时,获得第一层图像中与第二层图像的子块相应的子块的运动信息;通过使用所获得的第一层图像的子块的运动信息来获得或预测当前块的运动信息,并通过使用获得的或预测出的当前块的运动信息来对当前块进行解码,其中,第二层图像的子块被确定为位于候选块内部的区域中。
根据本公开的一方面,提供了一种层间视频编码方法,包括:对第一层图像进行编码;确定包括在第一层图像中的与包括在第二层图像中的当前块相应的候选块;在当前块的尺寸不是子块的预定尺寸的整数倍时,将尺寸不是子块的所述预定尺寸的至少一个块确定为子块;当子块被确定时,获得第一层图像中与第二层图像的子块相应的子块的运动信息;通过使用所获得的第一层图像的子块的运动信息来获得或预测当前块的运动信息,并通过使用获得的或预测出的当前块的运动信息来对当前块进行编码,其中,第二层图像的子块被确定为位于候选块内部的区域中。
根据本公开的一方面,提供了一种其上记录有程序的非暂时性计算机可读记录介质,其中,所述程序在被计算机运行时执行层间视频编码方法和层间视频解码方法。
具体实施方式
在下文中,将参照图1a至图7b描述用于执行基于子块的预测的层间视频编码技术和层间视频解码技术。此外,将参照图8至图20描述适用于层间视频编码技术和解码技术的根据实施例的基于具有树结构的编码单元的视频编码技术和视频解码技术。此外,将参照图21至图27描述视频编码方法和视频解码方法适用的各种实施例。
在下文中,“图像”可表示静止图像或视频的运动图像,或者表示视频本身。
在下文中,“样本”表示被分配给图像的采样位置并且将被处理的数据。例如,空间域的图像中的像素可以是样本。
在下文中,“当前块”可表示将被编码或解码的图像的块。
在下文中,“邻近块”表示与当前块邻近的至少一个编码块或解码块。例如,邻近块可位于当前块的顶部、右上侧、左侧、或左上侧。此外,邻近块可以是空间邻近块或时间邻近块。例如,时间邻近块可包括参考画面中与当前块共同定位的块,或所述共同定位块的邻近块。
首先,将参照图1a至图7b描述根据各种实施例的用于执行基于子块的预测的层间视频解码设备和方法以及层间视频编码设备和方法。
图1a是根据各种实施例的层间视频编码设备10的框图。
图1b是根据各种实施例的层间视频编码方法的流程图。
根据各种实施例的层间视频编码设备10包括编码器12和比特流产生器18。
编码器12可包括第一层编码器14和第二层编码器16。
根据各种实施例的层间视频编码设备10可根据可伸缩视频编码方案,根据层对多个图像序列进行分类并对每个图像序列进行编码,并可输出包括根据层编码的数据的单独的流。层间视频编码设备10可将第一层图像序列和第二层图像序列编码到不同的层。
第一层编码器12可对第一层图像进行编码,并可输出包括第一层图像的编码数据的第一层流。
第二层编码器16可对第二层图像进行编码,并可输出包括第二层图像的编码数据的第二层流。
根据各种实施例的层间视频编码设备10可类似于可伸缩视频编码方法根据层对多个图像序列进行分类并对每个图像序列进行编码,并可输出包括根据层编码的数据的单独的流。层间视频编码设备10可将第一层图像序列和第二层图像序列编码到不同的层。
例如,根据基于空间可伸缩性的可伸缩视频编码方法,低分辨率图像可被编码为第一层图像,高分辨率图像可被编码为第二层图像。第一层图像的编码结果被输出为第一层流,第二层图像的编码结果被输出为第二层流。
根据实施例的层间视频编码设备10可通过复用器将第一层流和第二层流编码并表示为一个比特流。
作为另一示例,多视点视频可根据可伸缩视频编码方案而被编码。左视点图像可被编码为第一层图像,右视点图像可被编码为第二层图像。可选择地,中心视点图像、左视点图像和右视点图像均可被编码,其中,中心视点图像被编码为第一层图像,左视点图像被编码为第二层图像,右视点图像被编码为第三层图像。可选择地,中心视点彩色图像、中心视点深度图像、左视点彩色图像、左视点深度图像、右视点彩色图像和右视点深度图像可被分别编码为第一层图像、第二层图像、第三层图像、第四层图像、第五层图像和第六层图像。作为另一示例,中心视点彩色图像、中心视点深度图像、左视点深度图像、左视点彩色图像、右视点深度图像和右视点彩色图像可被分别编码为第一层图像、第二层图像、第三层图像、第四层图像、第五层图像和第六层图像。
作为另一示例,可伸缩视频编码方法可根据基于时间可伸缩性的时间分层预测而被执行。包括通过对基本帧率的图像进行编码而产生的编码信息的第一层流可被输出。可根据帧率对时间级别进行分类,并可根据层对每个时间级别进行编码。通过参考基本帧率的图像对更高帧率的图像进行进一步编码,包括高速帧率的编码信息的第二层流可被输出。
此外,可对第一层以及多个扩展层(第二层至第K层)执行可伸缩视频编码。在存在至少三个扩展层时,第一层图像至第K层图像可被编码。因此,第一层图像的编码结果可被输出为第一层流,第一层图像至第K层图像的编码结果可分别被输出为第一层流至第K层流。
根据各种实施例的层间视频编码设备10可执行参考单个层的图像以便预测当前图像的帧间预测。通过执行帧间预测,可从与第一层(基本层)相应的区域预测出指示当前图像和参考图像之间的运动信息的运动矢量以及当前图像和参考图像之间的残差。
此外,层间视频编码设备10可执行参考第一层图像的预测信息以便预测第二层图像的预测信息的层间预测。
此外,当根据实施例的层间视频编码设备10允许至少三个层(即,第一层至第三层)时,可根据多层预测结构执行第一层图像和第三层图像之间的层间预测以及第二层图像和第三层图像之间的层间预测。
在层间预测中,当前图像和与当前图像的层不同的层的参考图像之间的视差矢量可被获得,并且作为当前图像和通过使用所述不同层的参考图像而产生的预测图像之间的差分量的残差可被产生。
此外,层间视频编码设备10可执行参考第一层图像以便预测第二层图像的层间预测。
此外,当根据各种实施例的层间视频编码设备10允许至少三个层(即,第一层至第三层)时,可根据多层预测结构执行第一层图像和第三层图像之间的层间预测以及第二层图像和第三层图像之间的层间预测。
经由层间预测,当前图像和与当前图像的层不同的层的参考图像之间的位置差分量以及当前图像和所述不同层的参考图像之间的残差可被产生。
稍后将参照图3a描述层间预测结构。
根据各种实施例的层间视频编码设备10可根据层基于视频的每个图像的块执行编码。块可具有正方形形状、矩形形状或任意几何形状,并且不限于具有预定尺寸的数据单元。块可以是根据树结构的编码单元之中的最大编码单元、编码单元、预测单元或变换单元。包括树结构的编码单元的最大编码单元(LCU)可被各种地称为诸如编码树单元、编码块树、块树、根块树、编码树、编码根或树干。稍后将参照图8至图20描述基于根据树结构的编码单元的视频编码和解码方法。
可基于诸如编码单元、预测单元或变换单元的数据单元执行帧间预测和层间预测。
根据各种实施例的第一层编码器12可通过对第一层图像执行包括帧间预测或帧内预测的源编码操作来产生符号数据。符号数据表示每个编码参数的值以及残差的样值。
例如,编码器12可通过对第一层图像的数据单元的样本执行帧间预测或帧内预测、变换和量化来产生符号数据,并通过对符号数据执行熵编码来产生第一层流。
第二层编码器16可基于树结构的编码单元对第二层图像进行编码。第二层编码器16可通过对第二层图像的编码单元的样本执行帧间/帧内预测、变换和量化来产生符号数据,并通过对符号数据执行熵编码来产生第二层流。
根据各种实施例的第二层编码器16可通过使用第一层图像的预测信息来执行预测第二层图像的层间预测。为了通过层间预测结构对来自第二层图像序列的第二层原始图像进行编码,第二编码器16可通过使用第一层重建图像的预测信息确定第二层当前图像的预测信息,并通过基于确定的预测信息产生第二层预测图像以对第二层原始图像和第二层预测图像之间的预测误差进行编码。
同时,第二层编码器16可通过根据编码单元或预测单元对第二层图像执行层间预测来确定第一层图像之中的将由第二层图像的块所参考的块。例如,第一层图像之中的位置与第二层图像中的当前块的位置对应的重建块可被确定。第二层编码器16可通过使用与第二层块相应的第一层重建块来确定第二层预测块。这里,第二层编码器16可通过使用被定位在与第一层块在相同点处的第一层重建块来确定第二层预测块。
第二层编码器16可将通过根据层间预测块使用第一层重建块而确定的第二层预测块用作用于第二层原始块的层间预测的参考图像。第二层编码器16可通过使用第一层重建图像对第二层预测块的样值和第二层原始块的样值之间的误差(即,根据层间预测的残差)进行变换和量化来执行熵编码。
同时,当上述层间视频编码设备10对多视点视频进行编码时,被编码的第一层图像可以是第一视点视频,第二层图像可以是第二视点视频。由于这样的多视点图像被同时获得,因此根据视点的图像之间的相似度高。
然而,由于拍摄角度、亮度和拍摄装置(相机和镜头)的特性根据视点而不同,多视点图像可能具有视差。因此,通过执行这样的视差被指示为视差矢量的视差补偿预测,编码效率会提高,并且通过使用视差矢量,与当前将被编码的块最相似的区域从不同的视点图像被找出并被编码。
第二层编码器16可确定第二层图像的子块的尺寸。这里,子块是小于或等于预测单元的块。预测单元随着编码单元被划分而被产生,并且子块是小于或等于预测单元的块。因此,第二层编码器16根据子块单元执行层间预测,并根据子块通过使用预测样值来确定关于预测单元的预测样值。
详细地讲,第二层编码器16可在等于或大于编码单元的最小尺寸且小于或等于编码单元的最大尺寸的范围内确定第二层图像的子块的尺寸。
子块的尺寸可根据层来确定,并且特定层中的子块的尺寸可相同。同时,子块可以是具有正方形形状的子预测单元。
例如,当编码单元的最小尺寸是8×8并且编码单元的最大尺寸是64×64时,第二层图像16可在编码单元的尺寸为8×8到64×64的范围内确定子块的尺寸。
在下文中,描述用于在等于或大于编码单元的最小尺寸的范围内确定第二层图像的子块的尺寸的原因。
这里,假设当前编码单元具有编码单元的最小尺寸,并且除2N×2N以外的分区类型被确定为分区类型,因此包括在当前编码单元中的预测单元小于当前编码单元的最小单元。
这里,当层间视频解码设备20从层间视频编码设备获得指示小于编码单元的最小尺寸的尺寸的子块尺寸信息时,层间视频解码设备20可通过使用子块尺寸信息来确定小于编码单元的最小尺寸的子块的尺寸。
然而,当通过子块尺寸信息确定的子块的尺寸大于包括在当前编码单元中的预测单元的尺寸时,层间视频解码设备20可将子块的尺寸改变为当前编码单元中的预测单元的尺寸。
换句话说,当通过子块尺寸信息确定的子块的尺寸大于包括在当前编码单元中的预测单元的尺寸时,层间视频解码设备20可不遵守通过子块尺寸信息确定的子块的尺寸,而是可将包括在当前编码单元中的预测单元确定为子块。
因此,当预测单元小于编码单元的最小尺寸时,根据预测单元确定子块的尺寸是有效率的。
结果,通过仅考虑子块等于或大于编码单元的最小尺寸的情况来用信号传输子块尺寸信息更有益于降低编码设备和解码设备的实现/操作复杂度。
此外,编码单元的最大尺寸被确定,这是因为由于预测单元随着编码单元被划分而被获得,因此预测单元的尺寸总是小于或等于编码单元的尺寸,但是当子块的尺寸被确定为大于编码单元的最大尺寸时,存在预测单元的尺寸变得大于编码单元的尺寸的矛盾。
第二层编码器16可确定包括在第一层图像中的与包括在第二层图像中的当前块相应的候选块。这里,候选块表示位于另一层图像中的与当前块相应的相应块,并且包括在候选块中的运动信息可被用于预测或获得当前块的运动信息。
例如,第二层编码器16可从包括在第二层图像中的当前块获得指示包括在第一层图像中的候选块的视差矢量。第二层编码器16可通过使用视差矢量来确定包括在第一层图像中的候选块。
同时,第二层编码器16可确定第一层图像中的与包括在第二层图像中的当前块共同定位的候选块。
这里,当前块可以是随着第二层图像的编码单元被划分而产生的一个或更多个预测单元中的一个预测单元。同时,子块可小于或等于预测单元。换句话说,子块通常小于或等于预测单元,但不限于此,并且子块和预测单元可具有相同的尺寸。
第二层编码器16可通过使用与当前块邻近的时间邻近块或空间邻近块的视差矢量来从当前块确定指向包括在第一层图像中的候选块的视差矢量。
这里,第二层编码器16可将获得的视差矢量的垂直分量确定为0,这是因为当视点沿水平方向改变时,通过相机获得了具有不同视点的层图像。换句话说,获得的视差矢量的垂直分量可以不是0,但由于在仅沿水平方向改变视点的同时获得层图像,因此视差矢量的垂直分量基于图像的特性被改变为0,并且在通过使用改变后的视差矢量执行层间预测时编码效率会进一步提高。
同时,第二层编码器16可从当前块获得第二层图像中通过使用子块的尺寸确定的至少一个子块。例如,在当前块为16×16并且子块的尺寸是8×8时,可在当前块中确定四个8×8的子块。当获得了第二层图像的至少一个子块时,第二层编码器16确定第一层图像中与第二层图像的子块相应的子块。这里,第一层图像的子块可被确定为位于候选块内部的区域中。
第二层编码器16通过使用第一层图像的子块的运动信息来获得当前块的运动信息。
这里,运动信息可包括根据运动预测的运动矢量、指示参考画面列表中的参考画面的信息以及指示运动矢量是否可用的信息。第二层编码器16可通过使用所获得的第一层图像的子块的运动信息来预测当前块的运动信息。
第二层编码器16可通过使用预测出的当前块的运动信息来对当前块进行编码。
例如,第二层编码器16可通过使用预测出的当前块的运动信息来确定当前块的预测样值,并对关于指示当前块的原始像素值与当前块的预测样值之间的差的残差的信息进行编码。这里,关于残差的信息被详细变换,并且经过变换的信息可被熵编码。
比特流产生器18可产生包括编码的视频以及关于层间预测而确定的层间预测信息的比特流,并将产生的比特流发送到解码设备。同时,当基于子块的层间预测关于层间预测被执行时,比特流产生器18可产生包括关于子块的尺寸的信息的比特流。此外,比特流产生器18可包括关于熵编码的残差的信息作为编码的视频。
同时,比特流产生器18可产生进一步包括指示编码单元的最小尺寸的信息和指示编码单元的最大尺寸和最小尺寸之间的差的信息的比特流。
例如,第二层编码器16可关于第二层图像确定编码单元的最小尺寸和编码单元的尺寸,并且通过使用它们,比特流产生器18产生指示编码单元的最小尺寸的信息和指示编码单元的最大尺寸和最小尺寸之间的差的信息。
比特流产生器18可首先产生包括子块尺寸信息的视频参数集(VPS)单元或序列参数集(SPS)网络抽象层(NAL)单元。然后,比特流产生器18可产生包括VPS NAL单元或SPSNAL单元的比特流。
可选择地,层间视频编码设备10可从不同的编码信息预测(或获得)视差矢量,以便减少根据预测单元发送的数据量。例如,可从当前将被重建的块的邻近块预测视差矢量。如果未从邻近块预测出视差矢量,则默认视差矢量可被设置为视差矢量。
稍后将参照图4至图7b详细描述根据各种实施例的由层间视频编码设备10执行基于子块的预测的层间视频编码方法。
层间视频编码设备10可通过使用第一层重建图像对第二层预测块的样值与第二层原始图像的样值之间的误差(即,根据层间预测的残差)执行变换和量化来执行熵编码。此外,还可对预测信息之间的误差执行熵编码。
如上所述,层间视频编码设备10可通过经由层间预测结构参照第一层重建图像来对当前层图像序列进行编码。然而,根据各种实施例的层间视频编码设备10可根据单层预测结构对第二层图像序列进行编码,而不必参考其它层样本。因此,解释不应限于层间视频编码设备10仅执行层间预测结构的帧间预测以便对第二层图像序列进行编码。
现在将参照图1b描述用于层间预测的层间视频编码设备10的详细操作。在下文中,第一层图像可表示参考视点图像,第二层图像可表示将被编码的当前视点图像。
图1b是根据各种实施例的层间视频编码方法的流程图。
在操作11,层间视频编码设备10可在等于或大于编码单元的最小尺寸且小于或等于编码单元的最大尺寸的范围内确定第二层图像的子块的尺寸。这里,子块是小于或等于预测单元的子块。预测单元随着编码单元被划分而被产生,并且是小于或等于预测单元的块。因此,层间视频编码设备10可根据子块单元来执行层间预测,并通过使用根据子块的预测样值来确定预测单元的预测样值。
在操作13,层间视频编码设备10确定包括在与第二层图像不同的第一层图像中的与包括在第二层图像中的当前块相应的候选块。
层间视频编码设备10从包括在第二层图像中的当前块获得指向包括在与第二层图像不同的第一层图像中的候选块的视差矢量。层间视频编码设备10可通过使用获得的视差矢量来搜索候选块。
同时,层间视频编码设备10可确定包括在第一层图像中的与包括在第二层图像中的当前块共同定位的候选块。
在操作15,当从当前块获得了第二层图像中通过使用子块的尺寸而确定的至少一个子块时,层间视频编码设备10获得第一层图像中与第二层图像的子块相应的子块的运动信息。
这里,第一层图像的子块被确定为位于候选块内部的区域中。
在操作17,层间视频编码设备10通过使用所获得的第一层图像的子块的运动信息来获得或预测当前块的运动信息,并通过使用获得或预测出的当前块的运动信息来对当前块进行编码。
在操作19,层间视频编码设备10产生包括确定的子块尺寸信息的比特流。
如上所述,当子块的尺寸被确定时,层间视频编码设备10可在考虑编码单元的最小尺寸和最大尺寸的同时在编码单元的最小尺寸和最大尺寸的范围内确定子块的尺寸,以简化处理操作并降低编码设备和解码设备的实现/操作复杂度。
根据本公开的层间视频编码设备10可包括中央处理器(未示出),其中,该中央处理器总体上控制第一层编码器14、第二层编码器16和比特流产生器18。可选择地,第一层编码器14、第二层编码器16和比特流产生器18可由各自的处理器(未示出)操作,并且层间视频编码设备10可在所述各自的处理器系统化操作时被操作。可选择地,第一层编码器14、第二层编码器16和比特流产生器18可根据层间视频编码设备10的外部处理器(未示出)的控制而被控制。
层间视频编码设备10可包括至少一个数据存储单元(未示出),其中,第一层编码器14、第二层编码器16和比特流产生器18的输入数据和输入数据被存储在所述至少一个数据存储单元中。层间视频编码设备10可包括管理数据存储单元(未示出)的数据输入和输出的存储器控制器(未示出)。
为了输出视频编码结果,层间视频编码设备10可与安装在其中的内部视频编码处理器或外部视频编码处理器关联地操作以执行包括变换的视频编码处理。层间视频编码设备10的内部视频编码处理器可作为单独的处理器执行视频编码操作。此外,当层间视频编码设备10、中央处理设备或图形处理设备包括视频编码处理模块时,视频编码操作可被实现。
图1c是根据各种实施例的层间视频解码设备的框图。
根据各种实施例的层间视频解码设备20可包括获得器22和解码器24。解码器24可包括第一层解码器26和第二层解码器28。
根据各种实施例的层间视频解码设备20根据层接收编码的视频的比特流。
层间视频解码设备20可经由可伸缩编码方案根据层接收比特流。由层间视频解码设备20接收的比特流的层数不受限制。然而,为了便于解释,将描述层间视频解码设备20的第一层解码器26接收第一层流并对第一层流进行解码,且第二层解码器28接收第二层流并对第二层流进行解码的实施例。
例如,基于空间可伸缩性的层间视频解码设备20可接收具有不同分辨率的图像序列在不同层中被编码的流。可对第一层流进行解码来重建具有低分辨率的图像序列,并可对第二层流进行解码来重建具有高分辨率的图像序列。
作为另一示例,可根据可伸缩视频编码方案对多视点视频进行解码。当在多个层中接收到立体视频流时,第一层流可被解码以重建左视点图像。第二层流可被进一步解码以重建右视点图像。
可选择地,当在多个层中接收到多视点视频流时,第一层流可被解码以重建中心视点图像。第二层流可被进一步解码以重建左视点图像。第三层流可被进一步解码以重建右视点图像。
作为另一示例,基于时间可伸缩性的可伸缩视频编码方法可被执行。第一层流可被解码以重建基本帧率图像。第二层流可被进一步解码以重建高帧率图像。
此外,在存在至少三个第二层时,第一层图像可从第一层流被重建,并且当第二层流通过参考第一层重建图像被进一步解码时,第二层图像可被进一步重建。当第K层流通过参考第二层重建图像被进一步解码时,第K层图像可被进一步重建。
层间视频解码设备20可从第一层流和第二层流获得第一层图像和第二层图像的编码数据,此外,层间视频解码设备20还可获得经由帧间预测产生的运动矢量以及经由层间预测产生的预测信息。
例如,层间视频解码设备20可对每层的帧间预测出的数据进行解码,并可对多层之间的层间预测出的数据进行解码。可基于编码单元或预测单元通过运动补偿和层间视频解码来执行重建。
针对每个层流,通过参考经由对同一层的帧间预测而预测出的重建图像来执行针对当前图像的运动补偿,图像可被重建。运动补偿是将通过使用当前图像的运动矢量而确定的参考图像与当前图像的残差进行合成来重建当前图像的重建图像的操作。
此外,层间视频解码设备20可通过参考第一层图像的预测信息执行层间视频解码,以对经由层间预测而预测出的第二层图像进行解码。层间视频解码是通过使用不同层的参考块的预测信息来对当前图像的预测信息进行重建以便确定当前图像的预测信息的操作。
根据各种实施例的层间视频解码设备20可执行用于重建通过使用第二层图像预测出的第三层图像的层间视频解码。稍后将参照图3a描述层间预测结构。
然而,根据各种实施例的第二层解码器28可在不必参考第一层图像序列的情况下对第二层流进行解码。因此,解释不应限于第二层解码器28执行层间预测以对第二层图像序列进行解码。
层间视频解码设备20根据视频的每个图像块执行解码。块可以是根据树结构的编码单元之中的最大编码单元、编码单元、预测单元或变换单元。
获得器22可接收比特流并从接收到的比特流获得关于编码的图像的信息。
例如,获得器22可从比特流获得图像的子块尺寸信息。详细地讲,获得器22从比特流获得指示特定层图像的子块的尺寸的子块尺寸信息。
第一层解码器26可通过使用解析出的第一层图像的编码符号来对第一层图像进行解码。当层间视频解码设备20接收基于树结构的编码单元而编码的流时,第一层解码器26可根据第一层流的最大编码单元,基于树结构的编码单元来执行解码。
第一层解码器26可通过根据每个最大编码单元执行熵解码来获得编码信息和编码的数据。第一层解码器26可通过对从流获得的编码的数据执行反量化和逆变换以重建残差。根据另一示例性实施例的第一层解码器26可直接接收量化的变换系数的比特流。可通过对量化的变换系数执行反量化和逆变换来重建图像的残差。
第一层解码器26可经由同一层图像之间的运动补偿确定预测图像,并通过将预测图像和残差进行组合来重建第一层图像。
根据层间预测结构,第二层解码器28可通过使用第一层重建图像的样本来产生第二层预测图像。第二层解码器28可通过对第二层流进行解码来获得根据层间预测的预测误差。第二层解码器28可通过将第二层预测图像与所述预测误差进行组合来产生第二层重建图像。
第二层解码器28可通过使用由第一层解码器26解码出的第一层重建图像来确定第二层预测图像。根据层间预测结构,第二层解码器28可确定第一层图像中的将由第二层图像的编码单元或预测单元参考的块。例如,第一层图像中的位置与第二层图像中的当前块的位置相应的重建块可被确定。第二层解码器28可通过使用与第二层块对应的第一层重建块来确定第二层预测块。第二层解码器28可通过使用与第二层块共同定位的第一层重建块来确定第二层预测块。
第二层解码器28可将通过根据层间预测结构使用第一层重建块确定的第二层预测块用作用于对第二层原始块进行层间预测的参考图像。在这种情况下,第二层解码器28可通过将使用第一层重建图像确定的第二层预测块的样值与根据层间预测的残差进行合成来重建第二层块。
同时,当上述层间视频解码设备20对多视点视频进行解码时,将被编码的第一层图像可以是第一视点视频,第二层图像可以是第二视点视频。此外,当上述层间视频解码设备20对彩色深度视频进行解码时,将被编码的第一层图像可以是彩色(纹理)视频,第二层图像可以是深度视频。
同时,由于多视点图像被同时获得,因此多个视点的图像之间的相似度非常高。因此,通过执行视差补偿预测,编码效率可被提高,其中,在视差补偿预测中,通过使用视差矢量,与当前将被编码的块最相似的区域从不同的视点图像被找出并被编码。层间视频解码设备20可通过比特流获得用于层间预测的视差矢量,或从其它多条编码信息预测视差矢量。
例如,可从当前将被重建的块的邻近块预测视差矢量。此外,当不能从邻近块预测出视差矢量时,视差矢量可被设置为默认视差矢量。
第二层编码器28可通过使用从比特流获得的第二层图像的子块尺寸信息,在等于或大于编码单元的最小尺寸且小于或等于编码单元的最大尺寸的范围内确定子块的尺寸。
第二层解码器28通过使用包括在第二层图像中的当前块作为起点来获得指向包括在第一层图像中的候选块的视差矢量。
第二层解码器28根据子块尺寸信息确定子块的尺寸。当通过使用所确定的子块的尺寸从当前块获得了子块时,第二层解码器28可获得第一层图像中与第二层图像的子块相应的子块的运动信息。第一层图像的子块可被确定为位于候选块内部的区域中。
第二层解码器28可通过使用第二层图像的子块的运动信息来预测当前块的运动信息,并通过使用预测出的当前块的运动信息来对当前块进行解码。
在以上描述中,假设层间视频解码设备20确定执行层间运动预测。
在下文中,层间视频解码设备20的确定运动矢量候选、产生合并列表以及确定通过使用合并列表来执行层间运动预测的处理被描述。这里,层间运动预测被假设为视点间运动预测。
同时,层间视频解码设备20可使用各种运动矢量候选之一来预测运动矢量。
例如,层间视频解码设备20可将从空间候选块预测出的运动矢量确定为运动矢量候选。此外,层间视频解码设备20可将从时间候选块预测出的运动矢量确定为另一运动矢量候选。
层间视频解码设备20确定用于基于子块的视点间运动矢量预测的运动矢量候选。
层间视频解码设备20可通过使用视差矢量mvDisp来确定针对关于当前预测单元的视点间运动矢量预测的运动矢量候选。此外,层间视频解码设备20可通过使用指示参考视点的索引来确定针对关于当前预测单元的视点间运动矢量预测的运动矢量候选。
层间视频解码设备20从L0预测列表和L1预测列表中的至少一个预测列表获得运动矢量候选。
此外,层间视频解码设备20可在包括在L0列表或L1列表中的画面之中确定将被参考的画面。详细地讲,层间视频解码设备20可通过使用参考画面索引从包括在预测列表中的画面之中确定将被参考的画面。参考画面索引可包括指示L0预测列表中所包括的画面之中的将被参考的画面的索引以及指示L1预测列表中所包括的画面之中的将被参考的画面的索引。
此外,层间视频解码设备20可确定预测方向。详细地讲,层间视频解码设备20可通过使用预测方向信息来确定预测方向。预测方向信息是指示L1列表和L0列表之中的至少一个预测方向的信息。例如,预测方向信息可包括指示L0列表可使用的L0预测方向信息以及指示L1列表可使用的L1预测方向信息。
层间视频解码设备20稍后可参考包括在与预测方向相关的预测列表中的一个画面,通过使用运动矢量来预测运动矢量,通过使用预测出的运动矢量来确定参考画面中的块,并通过使用确定的块来产生预测样值。
同时,当运动矢量候选被确定时,层间视频解码设备20产生合并候选列表。
例如,层间视频解码设备20产生包括各种合并候选(诸如空间合并候选、时间合并候选、视点间运动补偿合并候选以及视点间视差补偿合并候选)的合并候选列表。
这里,可在关于合并候选的帧间预测中使用的运动矢量候选、参考画面索引以及预测方向可已被确定。详细地讲,合并候选可表示在运动矢量预测中使用的块。
首先,层间视频解码设备20根据合并候选的优先级确定每个合并候选是否可用。层间视频解码设备20将可用的合并候选添加到合并列表。
例如,层间视频解码设备20确定时间合并候选是否可用,当时间合并候选可用时,层间视频解码设备20将时间合并候选添加到合并列表。层间视频解码设备20可确定作为根据合并候选的优先级的下一优先级的视点间运动补偿合并候选是否可用。
当视点间运动补偿合并候选可用时,层间视频解码设备20将视点间运动补偿合并候选添加到合并列表。
同时,可添加到合并候选列表的合并候选的数量可能受限。因此,层间视频解码设备20可根据合并候选的优先级添加可用的合并候选,并且当用于添加合并候选的空间在合并候选列表中不足时,层间视频解码设备20可不将合并候选添加到合并候选列表。
同时,层间视频解码设备20获得合并索引。这里,合并索引表示指示被添加到合并候选列表的合并候选之一的索引。
层间视频解码设备20通过使用合并索引从合并列表确定将在矢量预测中使用的候选块。
当通过使用合并索引确定的合并候选是视点间运动补偿合并候选IvMC时,层间视频解码设备20通过使用经由视点间运动矢量预测确定的运动矢量候选、参考画面索引以及预测方向信息来执行视点间运动补偿。
层间视频解码设备20执行视点间运动补偿以产生关于当前预测单元的预测样值。详细地讲,层间视频解码设备20通过使用运动矢量候选来预测当前预测单元的运动矢量,并通过使用预测的运动矢量来确定块。层间视频解码设备20通过使用确定的块来产生当前预测单元的预测样值。
同时,当在确定视点间运动矢量候选的同时当前编码单元的分区类型是2N×2N类型时,根据各种实施例的层间视频解码设备20可确定基于子块的视点间运动矢量候选。
基于子块的视点间运动矢量候选表示下述运动矢量候选:该运动矢量候选是通过将一个视点的当前预测单元划分为子预测单元并在子预测单元中确定位于另一视点的子预测单元,通过使用位于所述另一视点的子块的运动信息关于包括在当前预测单元中的子预测单元而被确定的。
另一方面,当分区类型不是2N×2N时,层间视频解码设备20可不确定基于子块的视点间运动矢量候选。
在根据本公开的实施例的当前编码单元的分区类型是2N×2N类型(PartMode==PART_2Nx2N)时,层间视频解码设备20可确定当前预测单元的运动信息具有子块尺寸的运动精确度。换句话说,层间视频解码设备20可通过基于子块执行视点间运动补偿来产生当前预测单元的预测样值。
另一方面,在当前编码单元的分区类型不是2N×2N类型时,层间视频解码设备20可确定当前预测单元的运动信息不具有子块尺寸的运动精确度。
在这种情况下,层间视频解码设备20可不执行基于子块的视点间运动补偿。
图1d是根据各种实施例的层间视频解码方法的流程图。
在操作21,层间视频解码设备20获得第二层图像的子块尺寸信息。这里,子块尺寸信息指示等于或大于编码单元的最小尺寸且小于或等于编码单元的最大尺寸的范围内的子块的尺寸。
在操作23,层间视频解码设备20通过使用子块尺寸信息,从等于或大于编码单元的最小尺寸且小于或等于编码单元的最大尺寸的范围确定子块的尺寸。
在操作25,层间视频解码设备20确定包括在与第二层图像不同的第一层图像中的与包括在第二层图像中的当前块相应的候选块。
例如,层间视频解码设备20从包括在第二层图像中的当前块获得指向包括在与第二层图像不同的第一层图像中的候选块的视差矢量。这里,层间视频解码设备20可通过使用获得的视差矢量来确定候选块。
同时,层间视频解码设备20可确定第一层图像中所包括的与包括在第二层图像中的当前块共同定位的候选块。
在操作27,当第二层图像中通过使用子块的尺寸而确定的至少一个子块从当前块被获得时,层间视频解码设备20获得第一层图像中与第二层图像的子块相应的子块的运动信息。这里,第一层图像的子块可被确定为位于候选块内部的区域中。
在操作29,层间视频解码设备20通过使用第一层图像的子块的运动信息来获得或预测当前块的运动信息,并通过使用预测或获得的当前块的运动信息来对当前块进行解码。
图2a是根据另一实施例的层间视频编码设备的框图。
层间视频解码设备30包括编码器32。
编码器32可包括第一层编码器34和第二层编码器36。同时,编码器32可执行由编码器12执行的功能中的一些功能,只要功能不彼此冲突。
第一层编码器34可对编码的第一层图像进行编码。
第二层码器36可确定第一层图像的与包括在第二层图像中的当前块相应的候选块。
例如,第二层编码器36可通过使用包括在第二层图像中的当前块作为起始点来获得指向包括在第一层图像中的候选块的视差矢量。
同时,第二层编码器36可确定包括在第一层中并且与包括在第二层图像中的当前块共同定位的候选块。
第二层编码器36可确定将被包括在当前块中的至少一个子块,以便将当前块划分为至少一个子块。
在当前块的尺寸不是子块的预定尺寸的整数倍时,第二层编码器将尺寸不是所述预定尺寸的块确定为子块。具体地讲,不是整数倍的情况包括:i)在当前块的尺寸大于所述预定尺寸(例如,1.5倍)时;ii)在当前块的尺寸小于所述预定尺寸(例如,0.5倍)时;以及iii)在当前块的宽度和高度之一等于或大于预定宽度或宽度,并且当前块的宽度和高度中的另一个小于特定宽度或宽度(排除当前块的宽度和高度彼此相同的情况)时。当前实施例具体以i)为前提。
根据本公开的实施例,当确定了尺寸不是所述预定尺寸的块时,第二层编码器36可将具有与当前块相同的尺寸的块确定为子块。例如,在当前块的尺寸是16×12并且特定块尺寸是8×8时,由于当前块的高度(即,12)不是特定块高度(即,8)的整数倍而是1.5倍大时,与当前块具有相同尺寸的块(16×12)可被确定为子块。
第二层编码器36不再确定另一子块(例如,稍后描述的第二子块),并可将与当前块具有相同尺寸的子块确定为将被包括在当前块中的子块。
根据本公开的另一实施例,在当前块的尺寸不是子块的预定尺寸的整数倍时,第二层编码器36可将具有与所述预定块尺寸相同的尺寸的至少一个块确定为第一子块。
例如,在当前块的尺寸是12×8并且所述预定块尺寸是8×8时,由于当前块的宽度不是特定块宽度的整数倍,因此第二层编码器36可将具有与所述预定块尺寸(8×8)相同的尺寸的块确定为第一子块。
这里,在当前块的尺寸不是子块的预定尺寸的整数倍时,第二层编码器36可确定第一子块以外的第二子块。这里,第二子块表示宽度和高度中的至少一个小于所述预定块宽度和所述预定块高度的块。
例如,在当前块的尺寸是12×8并且所述预定块尺寸是8×8时,与所述预定块尺寸具有相同尺寸的块可被确定为第一子块。这里,当第一子块适宜地位于当前块中(位于当前块的最左侧或最右侧)时,具有4×8的尺寸的空间在左侧。当与所述预定块尺寸具有相同尺寸的块将被定位在具有4×8的尺寸的空间中时,与所述预定块尺寸具有相同尺寸的块不适合于所述空间。
因此,第二层编码器36可将具有比所述预定块宽度小的宽度(即,4)的适合于所述空间的块确定为将被包括在当前块中的第二子块。所述第二子块是尺寸与所述预定尺寸不同的块。
例如,第二子块的尺寸可以是4×8或8×4。由于第二子块的尺寸是所允许的预测单元的尺寸,因此即使当具有与所述预定尺寸相同的尺寸的块未被确定为子块时,第二子块也可在视点间运动预测期间被使用。
详细地讲,第二层编码器36可根据具有预定宽度或高度的划分边界,沿宽度或高度方向从当前块的最左上像素将当前块划分为至少一个子块。
例如,在当前块的宽度是12并且所述预定尺寸是8×8时,划分边界可以是沿宽度方向自所述最左上像素开始的每8个像素。此外,在当前块的高度是12并且所述预定尺寸是8×8时,划分边界可以是沿高度方向自所述最左上像素开始的每8个像素。
通过根据划分边界划分当前块获得的块中的一些块是具有与所述预定高度和宽度相同的高度和宽度的块,并且所述块可被确定为第一子块。
同时,当在确定划分边界的同时当前块的宽度或高度不是所述预定宽度或所述预定高度的整数倍时,仅具有小于所述预定宽度的宽度或小于所述预定高度的高度的块适合于处于当前块的最右侧的划分边界的右侧空间以及处于当前块的底部的划分边界的底部空间。
因此,宽度和高度中的至少一个小于所述预定宽度和所述预定高度的块可被定位在当前块内部的处于当前块最右侧的划分边界的右侧空间以及处于当前块底部的划分边界的底部空间的区域。
这里,宽度和高度中的至少一个小于所述预定宽度和所述预定高度的块可被确定为第二子块。
然而,实施例不限于此,第二层编码器36可经由各种方法中的任意一种方法来确定划分边界,并根据划分边界来确定将被包括在当前块中的子块。
例如,在当前块的宽度是12并且预定块尺寸是8×8时,划分边界可以是沿宽度方向(左向)自最右上像素开始的每8个像素。在当前块的高度是12并且特定块尺寸是8×8时,划分边界可以是沿高度方向自最右上像素开始的每8个像素。通过根据划分边界被划分而获得的大多数块是具有预定高度和预定宽度的块,并且具有所述预定高度和所述预定宽度的块可被确定为第一子块。
同时,当在确定划分边界时当前块的宽度或高度不是所述预定宽度或所述预定高度的整数倍时,仅宽度和高度中的至少一个小于所述预定宽度和所述预定高度的块可被定位在处于当前块的最左侧的划分边界的左侧空间和处于当前块的底部的划分边界的底部空间。
因此,宽度和高度中的至少一个小于所述预定宽度和所述预定高度的块可被定位在处于当前块的最左侧的划分边界的左侧空间和处于当前块的底部的划分边界的底部空间。
这里,宽度和高度中的至少一个小于所述预定宽度和所述预定高度的块可被确定为第二子块。
当子块被确定时,第二层编码器36可获得第一层图像中与第二层图像的子块相应的子块的运动信息。
这里,第一层图像的子块可被确定为位于候选块内部的区域中。第一层图像中与第二层图像的子块相应的子块可表示第一层图像中与第二层图像的子块共同定位的子块。
第二层编码器36可通过使用第一层图像的子块的运动信息来预测或获得当前块的运动信息,并通过使用预测出的或获得的当前块的运动信息来对当前块进行编码。
层间视频编码设备30还可包括比特流产生器(未示出)。比特流产生器(未示出)可产生包括编码的第二层图像和编码的第一层图像的比特流,其中,编码的第二层图像包括编码的当前块。
同时,层间视频编码设备30可执行由参照图1a描述的层间视频编码设备10执行的功能中的一些功能。详细地讲,编码器32可执行由编码器12执行的功能中的一些功能。类似的,比特流产生器(未示出)可执行由比特流产生器18执行的功能中的一些功能。
图2b是根据各种实施例的层间视频编码方法的流程图。
在操作31,层间视频编码设备30可对第一层图像进行编码。
在操作33,层间视频编码设备30可确定包括在第一层图像中的与包括在第二层图像中的当前块对应的候选块。
例如,层间视频编码设备30可从包括在第二层图像中的当前块获得指向包括在第一层图像中的候选块的视差矢量。层间视频编码设备30可通过使用获得的视差矢量来搜索包括在第一层图像中的候选块。
在操作35,在当前块的尺寸不是子块的预定尺寸的整数倍时,层间视频编码设备30可将尺寸不是子块的所述预定尺寸的至少一个块确定为子块。
在操作37,当子块被确定时,层间视频编码设备30可获得第一层图像中与第二层图像的子块相应的子块的运动信息。这里,第一层图像的子块可被确定为位于候选块内部的区域中。
在操作39,层间视频编码设备30可获得或预测第一层图像的子块的运动信息,并通过使用获得的或预测出的当前块的运动信息来对当前块进行编码。
图2c是根据另一实施例的层间视频解码设备的框图。
层间视频解码设备40可包括获得器42和解码器44。
解码器44可包括第一层解码器46和第二层解码器48。同时,解码器44可执行解码器24执行的功能中的一些功能,只要所述功能不彼此冲突。
第一层解码器46可对编码的第一层图像进行编码。
第二层解码器48可确定与包括在第二层图像中的当前块相应的并被包括在第一层图像中的候选块。
例如,第二层解码器48可从包括在第二层图像中的当前块获得指向包括在第一层图像中的候选块的视差矢量。第二层解码器48可通过使用所述视差矢量来确定包括在第一层图像中的候选块。
同时,第二层解码器48可确定第一层图像中所包括的与包括在第二层图像中的当前块共同定位的候选块。
在当前块的尺寸不是子块的预定尺寸的整数倍时,第二层解码器48将尺寸不是所述预定尺寸的块确定为子块。
根据本公开的实施例,当确定了尺寸不是所述预定尺寸的块时,第二层解码器48可将具有与当前块相同的尺寸的块确定为子块。例如,在当前块的尺寸是12×8并且预定块尺寸是8×8时,由于当前块的宽度(即,12)不是预定块宽度(即,8)的整数倍而是1.5倍大时,与当前块具有相同尺寸的块(12×8)可被确定为第一子块。
第二层解码器48不再确定另一子块(例如,稍后描述的第二子块),并可将与当前块具有相同尺寸的第一子块确定为将被包括在当前块中的子块。
根据本公开的另一实施例,在当前块的尺寸不是子块的预定尺寸的整数倍时,第二层解码器48可首先将具有与所述预定块尺寸相同的尺寸的至少一个块确定为第一子块。
例如,在当前块的尺寸是12×8并且所述预定块尺寸是8×8时,由于当前块的宽度不是预定块宽度的整数倍,因此第二层解码器48可将具有与所述预定块尺寸(8×8)相同的尺寸的块确定为第一子块。
这里,在当前块的尺寸不是子块的预定尺寸的整数倍时,第二层解码器48可确定第一子块以外的第二子块。这里,第二子块表示宽度和高度中的至少一个小于所述预定块宽度和所述预定块高度的块。
例如,在当前块的尺寸是12×8并且所述预定块尺寸是8×8时,具有与特定块尺寸相同的尺寸的块可被确定为第一子块。这里,当第一子块适宜地位于当前块中(位于当前块的最左侧或最右侧)时,具有4×8的尺寸的空间在左侧。当具有与所述预定块尺寸相同的尺寸的块将被定位在具有4×8的尺寸的空间中时,与所述预定块尺寸具有相同的尺寸的块不适合于所述空间。
因此,第二层解码器48可将具有比所述预定块宽度小的宽度(即,4)的适合于所述空间的块确定为将被包括在当前块中的第二子块。
例如,第二子块的尺寸可以是4×8或8×4。由于第二子块的尺寸是所允许的预测单元的尺寸,因此即使当具有与所述预定尺寸相同的尺寸的块未被确定为子块时,第二子块也可在视点间运动预测期间被使用。
详细地讲,第二层解码器48可根据具有预定宽度或高度的划分边界,沿宽度或高度方向从当前块的最左上像素将当前块划分为至少一个子块。
例如,在当前块的宽度是12并且所述预定尺寸是8×8时,划分边界可以是沿宽度方向自所述最左上像素开始的每8个像素。此外,在当前块的高度是12并且所述预定尺寸是8×8时,划分边界可以是沿高度方向自所述最左上像素开始的每8个像素。
通过根据划分边界划分当前块获得的多数块是具有所述预定高度和宽度的块,并且具有所述预定高度和宽度的块可被确定为第一子块。
同时,当在确定划分边界的同时当前块的宽度或高度不是所述预定宽度或所述预定高度的整数倍时,仅具有小于所述预定宽度的宽度或小于所述预定高度的高度的块适合于处于当前块的最右侧的划分边界的右侧空间以及处于当前块的底部的划分边界的底部空间。
因此,宽度和高度中的至少一个小于所述预定宽度和所述预定高度的块可被定位在当前块内部的处于当前块最右侧的划分边界的右侧空间以及处于当前块底部的划分边界的底部空间的区域。
这里,宽度和高度中的至少一个小于所述预定宽度和所述预定高度的块可被确定为第二子块。
然而,实施例不限于此,第二层解码器48可经由各种方法中的任意一种方法来确定划分边界,并根据划分边界来确定将被包括在当前块中的子块。
例如,在当前块的宽度是12并且预定块尺寸是8×8时,划分边界可以是沿宽度方向(左向)自最右上像素开始的每8个像素。在当前块的高度是12并且特定块尺寸是8×8时,划分边界可以是沿高度方向自最右上像素开始的每8个像素。通过根据划分边界被划分而获得的大多数块是具有预定高度和预定宽度的块,并且具有所述预定高度和所述预定宽度的块可被确定为第一子块。
同时,当在确定划分边界的同时当前块的宽度或高度不是所述预定宽度或所述预定高度的整数倍时,仅宽度和高度中的至少一个小于所述预定宽度和所述预定高度的块可被定位在处于当前块的最左侧的划分边界的左侧空间和处于当前块的底部的划分边界的底部空间。
因此,宽度和高度中的至少一个小于所述预定宽度和所述预定高度的块可被定位在处于当前块的最左侧的划分边界的左侧空间和处于当前块的底部的划分边界的底部空间。这里,宽度和高度中的至少一个小于所述预定宽度和所述预定高度的块可被确定为第二子块。
当子块被确定时,第二层解码器48可获得第一层图像中与第二层图像的子块相应的子块的运动信息。这里,第一层图像的子块可被确定为位于候选块内部的区域中。
第一层图像中与第二层图像的子块相应的子块可表示第一层图像中与第二层图像的子块共同定位的子块。
第二层解码器48可通过使用第一层图像的子块的运动信息来预测或获得当前块的运动信息,并通过使用预测出的或获得的当前块的运动信息来对当前块进行编码。
层间视频解码设备40可执行由参照图1b描述的层间视频解码设备20执行的功能中的一些功能。详细地讲,解码器44可执行由解码器24执行的功能中的一些功能。类似地,获得器42可执行由获得器22执行的功能中的一些功能。
图2d是根据另一实施例的层间视频解码方法的流程图。
在操作41,层间视频解码设备40可对编码的第一层图像进行解码。
在操作43,层间视频解码设备40可确定包括在第一层图像中的与包括在第二层图像中的当前块对应的候选块。
例如,层间视频解码设备40可从包括在第二层图像中的当前块获得指向包括在第一层图像中的候选块的视差矢量。层间视频解码设备40可通过使用获得的视差矢量来搜索包括在第一层图像中的候选块。
在操作45,在当前块的尺寸不是子块的预定尺寸的整数倍时,层间视频解码设备40可将尺寸不是所述子块的所述预定尺寸的至少一个块确定为子块。
在操作47,当子块被确定时,层间视频解码设备40可获得第一层图像中与第二层图像的子块相应的子块的运动信息。这里,第一层图像的子块可被确定为位于候选块内部的区域中。
在操作49,层间视频解码设备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的左视点图像,来执行预测。相同的方法被应用于右视点图像。
根据各种实施例的层间视频解码设备20可根据图3a的多视点视频预测结构的再现顺序50来对基本视点图像、左视点图像和右视点图像进行重建。
可经由参考基本视点图像的视点间视差补偿和参考左视点图像的帧间运动补偿来重建左视点图像。可经由参考基本视点图像和左视点图像的视点间视差补偿和参考右视点图像的帧间运动补偿来重建右视点图像。参考图像可被首先重建以用于对左视点图像和右视点图像的视差补偿和运动补偿。
为了对左视点图像进行帧间运动补偿,可经由参考重建的左视点参考图像的帧间运动补偿来重建左视点图像。为了对右视点图像进行帧间运动补偿,可经由参考重建的右视点参考图像的帧间运动补偿来重建右视点图像。
此外,为了对当前左视点图像进行帧间间运动补偿,可参考属于当前左视点图像的当前GOP但将在当前左视点图像之前被重建的左视点图像,而不是参考属于当前GOP之前的GOP的左视点图像。相同的方法被应用于右视点图像。
此外,根据各种实施例的层间视频解码设备20可不仅执行视差补偿(或层间预测补偿)以对多视点图像进行编码或解码,还可经由视点间运动矢量预测来执行图像之间的运动补偿(或层间预定预测补偿)。
图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描述层间视差补偿和层间运动预测。
图4a是用于描述根据各种实施例的用于帧间预测的视差矢量的示图。
参照图4a,根据各种实施例的层间视频解码设备20可通过使用视差矢量DV执行层间预测以找出包括在第一层参考画面1402中的与包括在第二层当前画面1400中的当前块1401相应的第一层参考块1403,并通过使用第一层参考块1403来执行视差补偿。
此外,根据各种实施例的层间视频解码设备20可针对层间运动预测从第二层当前块1401获得由视差矢量DV所指示的第一层参考块1403的参考运动矢量mv_ref,并通过使用获得的参考运动矢量mv_ref来预测当前块1401的运动矢量mv_cur。在这种情况下,层间视频解码设备20可通过使用预测出的运动矢量mv_cur来执行第二层图像之间的运动补偿。
这里,参考位置可以是从当前块1401的中心像素开始由视差矢量DV所指示的位置,或者是从当前块1401的左上像素开始由视差矢量DV所指示的位置。
如上所述,为了通过参考不同的视点图像来执行预测,需要视差矢量。视差矢量可作为单独的信息通过比特流从编码设备被发送到解码设备,或者可基于深度图像或当前块的邻近块来预测。换句话说,预测出的视差矢量可以是邻近块视差矢量(NBDV)和深度导向的NBDV(DoNBDV)。
首先,当从邻近块候选获得了视差矢量(层间方向的运动矢量)时,NBDV表示通过使用获得的视差矢量预测出的当前块的视差矢量。
同时,当深度图像在不同层图像之中被编码和解码时,与当前块相应的深度块可通过使用NBDV来确定。这里,在包括在确定的深度块中的深度值之中确定代表性深度值,并且通过使用相机参数将确定的深度值转换为视差矢量。DoNBDV表示通过使用从深度值转换得到的视差矢量预测出的视差矢量。
图4b是用于描述根据各种实施例的用于预测视差矢量的空间邻近块候选的示图。
参照图4b,根据本公开的实施例的层间视频解码设备20可按照预定搜索顺序(例如,Z字形扫描或光栅扫描)搜索空间邻近块候选,以便预测当前画面4000中的当前块1500的视差矢量。这里,找出的邻近块候选可以是与当前块1500时间邻近或空间邻近的预测单元。
可选择地,例如,在根据另一实施例的层间视频解码设备20中,位于当前块1500的左侧底部的邻近块A0 1510、位于当前块1500的左侧的邻近块A1 1520、位于当前块1500的右侧顶部的邻近块B0 1530、位于当前块1500的顶部的邻近块B1 1540以及位于当前块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是用于描述根据各种实施例的基于子块的视点间运动预测的示图。
层间视频解码设备20可确定当前块5000的视差矢量。这里,确定的视差矢量可以是通过使用从比特流获得的关于视差矢量的信息而确定的矢量,或者是从邻近块得到的视差矢量。这里,当前块可以是预测单元。
层间视频解码设备20可通过使用确定的视差矢量来确定当前视点View1和另一视点View 0的图像中的相应块5020。这里,相应块5020的尺寸可与当前块5000的尺寸相同,并且相应块可以是与当前块共同定位的块。
同时,层间视频解码设备20可将当前块划分为至少一个子块。
层间视频解码设备20可将当前块等分为具有预定尺寸的块。例如,在当前块5000的尺寸是16×16并且子块5010的尺寸是8×8时,层间视频解码设备20可将当前块5000划分为四个子块5010。
同时,层间视频解码设备20可在与当前视点不同的其它视点View 0的块5020中确定分别与当前块中的四个子块5010相应的子块。
这里,层间视频解码设备20可获得子块5040的运动矢量,并通过使用获得的运动矢量来预测子块5010中的每个子块的运动矢量。
层间视频解码设备20可通过使用预测出的子块5010中的每个子块的运动矢量,将与当前视点相同的视点View 1的参考列表中的多个画面之中的一个画面中所包括的多个块之一确定为参考块。
层间视频解码设备20可通过使用参考块来执行运动补偿。
同时,层间视频解码设备20可根据层图像用信号传输关于子块尺寸的信息。例如,层间视频解码设备20可从比特流接收与关于View 1的层图像的子块的尺寸相关的信息。
当通过使用关于子块的尺寸的信息确定的子块的尺寸大于当前预测单元时,层间视频解码设备20可将子块的尺寸改变并确定为当前预测单元的尺寸。
例如,当通过使用关于子块的尺寸的信息将子块的尺寸确定为16×16,并且当前预测单元是8×8时,层间视频解码设备20可将子块的尺寸改变并确定为当前预测单元的尺寸(8×8)。因此,层间视频解码设备20通过使用关于子块的尺寸的信息来确定的子块的尺寸,但是通过使用关于子块的尺寸的信息确定的子块的尺寸不受限制,并可根据状况而被改变并确定为当前预测单元的尺寸。
同时,层间视频解码设备在不考虑编码单元的最小尺寸和编码单元的最大尺寸的情况下按照每层图像来用信号传输关于子块的尺寸的信息。
在下文中,将描述层间视频解码设备20在小于或等于编码单元的最大尺寸的范围内确定第二层图像的子块的尺寸的原因。
预测单元小于或等于编码单元的最大尺寸。当层间视频解码设备在不考虑编码单元的最大尺寸的情况下用信号传输关于子块的尺寸的信息时,层间视频解码设备可在确定用信号传输的子块的尺寸的子块尺寸时确定大于编码单元的最大尺寸的子块。
因此,根据本公开的另一实施例的层间视频解码设备20可通过使用关于小于或等于编码单元的最大尺寸的范围内的子块的尺寸的信息来确定子块的尺寸。因此,编码设备和解码设备的实现/操作复杂度可被降低。
在下文中,将描述层间视频解码设备20在等于或大于编码单元的最小尺寸的范围内确定第二层图像的子块的尺寸的原因。
这里,假设当前编码单元具有编码单元的最小尺寸并具有除2N×2N以外的分区类型,因此包括在当前编码单元中的预测单元被确定为小于当前编码单元的最小单元。
这里,当层间视频解码设备20从层间视频编码设备获得指示小于编码单元的最小尺寸的尺寸的子块尺寸信息时,层间视频解码设备20可通过使用子块尺寸信息来确定小于编码单元的最小尺寸的子块的尺寸。
然而,当通过使用子块尺寸信息确定的子块的尺寸大于预测单元的尺寸时,子块的尺寸可如上所述被改变为预测单元的尺寸。
因此,当子块的尺寸小于编码单元的最小尺寸时根据预测单元来确定子块的尺寸是有效率的。因此,可仅在子块的尺寸等于或大于编码单元的最小尺寸时用信号传输子块尺寸信息,从而降低编码设备和解码设备的实现/操作复杂度。
因此,层间视频解码设备20可在等于或大于编码单元的最小尺寸的范围内通过使用关于子块的尺寸的信息来确定子块的尺寸。因此,可降低编码设备和解码设备的实现/操作复杂度。
同时,层间视频解码设备甚至通过考虑具有在现有的编解码器中不允许的4×4的尺寸作为子块的尺寸的预测单元来用信号传输指示子块的尺寸的子块尺寸信息,其中,所述子块尺寸信息可包括关于4×4尺寸的信息。
根据本公开的另一实施例的层间视频解码设备20可用信号传输指示不包括具有不被允许的尺寸的预测单元的子块的尺寸的子块尺寸信息。可在不必浪费指示具有不被允许的尺寸的预测单元所需的比特数量的情况下用信号传输指示子块的尺寸的信息。
同时,视点0(View 0)图像和视点1(View 1)图像可以是具有不同视点的彩色图像。然而,实施例不限于此,视点0(View 0)图像和视点1(View1)图像可以是具有不同视点的深度图像。这里可按照与当视点0(View 0)图像和视点1(View 1)图像是彩色图像和深度图像时相同的方式来执行基于子块的视点间运动预测,但是子块的尺寸可被有所不同地确定。例如,当视点0(View 0)图像和视点1(View 1)图像是彩色图像时,子块的尺寸可根据从比特流解析出的子块尺寸信息来确定,但当视点0(View 0)图像和视点1(View 1)图像是深度图像时,子块的尺寸可被确定为编码单元的最大尺寸。
在上文中,已参照图5描述了基于子块的视点间运动预测。类似于基于子块的视点间运动预测,可通过使用运动参数继承(MPI)编码和解码工具来执行层间预测。
MPI编码和解码工具表示在对深度图像进行编码和解码时完整获得相同视点的彩色图像中的与当前块共同定位的块的运动信息或视差信息,并通过使用当前块的运动信息或视差信息执行编码和解码的工具。换句话说,即使MPI编码和解码工具被使用时,当视点间运动预测被执行时,与当前图像不同的图像中的与当前块共同定位的块像是当视点间运动预测被执行时那样被找出,并且运动信息(或视差信息)是根据子块来获得的。
因此,即使MPI编码和解码工具被使用时,层间视频解码设备20可获得用于MPI编码和解码的子块的尺寸信息,并通过使用子块的尺寸信息推导在视点间运动预测期间确定子块的尺寸的处理(即使是在确定用于MPI编码和解码的子块的尺寸的处理期间)来确定用于MPI编码和解码的子块的尺寸。
详细地讲,稍后将参照图7b描述由层间视频解码设备20通过使用子块尺寸信息来确定子块的尺寸的处理。
图6a至图6c是用于描述根据各种实施例的确定子块的尺寸的处理的示图。
参照图6a,根据编码单元的分区类型,层间视频解码设备40可将编码单元6010非对称地划分为预测单元6011和6012(分区类型PART_nLx2N),将编码单元6030非对称地划分为预测单元6021和6022(分区类型PART_nRx2N),将编码单元6030非对称地划分为预测单元6031和6032(分区类型PART_2NxnU),或将编码单元6040非对称地划分为预测单元6041和6042(分区类型PART_2NxnD)。
参照图6a,层间视频解码设备40可在将编码单元6010、6020、6030和6040划分为预测单元的同时按照与划分方向垂直的方向来划分预测单元6011、6012、6021、6022、6031、6032、6041和6042,以便将预测单元6011、6012、6021、6022、6031、6032、6041和6042划分为至少一个子块。
层间视频解码设备40可将预测单元6011、6012、6021、6022、6031、6032、6041和6042划分为子块来执行基于子块的层间预测。当预测单元6011、6012、6021、6022、6031、6032、6041和6042的尺寸不是被预先确定为子块的尺寸的特定尺寸的整数倍时,层间视频解码设备40可不将具有所述预定尺寸的块确定为子块。
这里,当编码单元6010至6040的尺寸是16×16时,块6013、6014、6023和6024可以是12×8,并且块6033、6034、6043和6044可以是8×12。同时,尺寸是12×8和8×12的子块可以不是编解码器中通常允许的预测单元。
因此,当子块的尺寸不是可允许的单元时,根据实施例的层间视频解码设备40可通过对子块的尺寸和预测单元的尺寸进行匹配来对编码单元执行预测。
参照图6b,层间视频解码设备40将具有与预定尺寸的预测单元相同的尺寸的块确定为第一子块,并且层间视频解码设备40将宽度和高度中的至少一个小于预定宽度和预定高度的块确定为第二子块。
因此,层间视频解码设备40可将预测单元6112划分为第一子块6113和6114以及第二子块6115和6116。例如,层间视频解码设备40可将预测单元6110和6120划分为具有与预定尺寸(8×8)相同的尺寸的第一子块6113和6114。此外,层间视频解码设备40可将预测单元6110划分为宽度和高度中的至少一个小于所述预定宽度和高度的第二子块6115和6116。
类似地,层间视频解码设备40可按照相似的方式划分其余的预测单元6121、6132和6141。
因此,层间视频解码设备40可将具有不被允许的尺寸(12×8或8×12)的预测单元划分为具有允许的尺寸8×8、8×4或4×8的子块。
同时,参照图6c,如关于图6b所详细描述的,层间视频解码设备40将具有与预定尺寸的预测单元相同的尺寸的块确定为第一子块,并且层间视频解码设备40将宽度或高度中的至少一个小于预定宽度或预定高度的块确定为第二子块。
然而,与图6b中所示出的不同,层间视频解码设备40可改变划分边界以改变并划分预测单元中的第一子块的位置和第二子块的位置。换句话说,层间视频解码设备40可在将预测单元划分为子块的同时经由各种方法中的任意一种方法来确定划分边界,因此子块的类型以及取决于类型的子块的数量可相同,但是子块的位置可根据划分边界而改变。
同时,层间视频解码设备40可在确定子块的同时,根据层通过使用指示子块的尺寸的信息来确定子块的宽度和高度(nSbW,nSbH)。
同时,层间视频解码设备40在包括在当前预测单元中的子块之中确定关于从最左上子块起的特定子块的宽度方向索引(xBlk)以及关于从最左上子块起的特定子块的高度方向索引(yBlk)。高度方向索引的范围可被确定为从0到yBlkr。yBlkr可根据以下的等式1来确定。
[等式1]
yBlkr=nPbH/nSbH-1+(nPb%nSbH?1:0)
这里,nPbH表示预测单元的高度,nSbH表示子块的高度。
同时,当包括在当前预测单元中的子块之中的从最顶部子块起沿高度方向的特定子块的位置在预测单元的边缘外部时,层间视频解码设备40可通过从预测单元的高度(nPbH)减去从最顶部的块到位于与所述特定块的顶部邻近的块的高度(yBlk*nSbH)来确定子块的实际高度(nRealSbH)。
同时,宽度方向索引的范围可被确定为从0到xBlkr。xBlkr可根据以下的等式2来确定。
[等式2]
xBlkr=nPbW/nSbW-1+(nPbW%nSbW?1:0)
这里,nPbW表示预测单元的宽度,nSbW表示子块的宽度。
当包括在当前预测单元中的多个子块之中的特定子块在预测单元的边缘外部时,层间视频解码设备40可通过从预测单元的宽度(nPbW)减去从最顶部的子块到与该子块的左侧邻近的子块的宽度(xBlk*nSbW)来确定子块的实际宽度。
层间视频解码设备40通过根据子块使用视差矢量(mvDisp)和参考视点索引(refViewIdx)来确定将针对子块的L0预测列表和L1预测列表中的哪一个列表将被使用。
此外,层间视频解码设备40可根据子块来确定沿L0预测方向预测出的运动矢量以及沿L1预测方向预测出的运动矢量。此外,层间视频解码设备40可根据子块来确定预测方向。
同时,当层间视频解码设备40将关于当前预测单元的视点间运动补偿合并候选确定为合并候选时,层间视频解码设备40可通过使用从视点间运动矢量预测候选确定的子块的位置、实际高度和实际宽度来确定包括在当前预测单元中的子块的位置、实际高度和实际宽度。
当确定通过使用视点间运动矢量预测候选执行了视点间运动补偿时,层间视频解码设备40可根据关于视点间运动补偿合并候选确定的子块,通过使用运动矢量候选、参考画面索引和预测方向来根据子块执行运动补偿,并可根据子块确定预测样值。
此外,当包括在预测单元中的子块的预测样值被确定时,根据预测单元的预测样值可被确定。
同时,根据本公开的另一实施例的层间视频解码设备40可在如下确定视点间运动矢量候选的同时确定子块的宽度(nSbW)和子块的高度(nSbH)。
层间视频解码设备40通过根据层使用子块尺寸信息来确定子块的尺寸(SubPbSize)。这里,假设子块是正方形。因此,子块的尺寸(SubPbSize)可表示子块的高度或宽度。
当通过按子块的尺寸(SubPbSize)划分预测单元的宽度(nPbW)而获得的余数不是0时,层间视频解码设备40可将子块的宽度(nSbW)确定为原始预测单元的宽度(nPbW)。
可选择地,当通过按子块的尺寸(SubPbSize)划分预测单元的高度(nPbH)而获得的余数不是0时,层间视频解码设备40可将子块的宽度(nSbW)确定为原始预测单元的宽度(nPbW)。
类似地,当通过按子块的尺寸(SubPbSize)划分预测单元的宽度(nPbW)而获得的余数不是0时,层间视频解码设备40可将子块的高度(nSbH)确定为原始预测单元的高度(nPbH)。
可选择地,当通过按子块的尺寸(SubPbSize)划分预测单元的高度(nPbH)而获得的余数不是0时,层间视频解码设备40可将子块的高度(nSbH)确定为原始预测单元的宽度(nPbW)。
同时,当通过按子块的尺寸(SubPbSize)划分预测单元的高度(nPbH)而获得的余数是0并且通过按子块的尺寸(SubPbSize)划分预测单元的宽度(nPbW)而获得的余数是0时,层间视频解码设备40可将子块的高度(nSbH)和宽度(nSbW)确定为子块的尺寸(SubPbSize)。
例如,当预测单元是16×12或16×4时,层间视频解码设备40可将子块的尺寸确定为16×12或16×4。
图7a是示出根据各种实施例的VPS扩展语法的示图。
参照图7a,层间视频解码设备20或40在除基本层以外的层(layerId!=0)的情况下获得语法元素log2_sub_pb_size_minus3[layerId]71。这里,log2_sub_pb_size_minus3[layerId]表示关于具有层标识符layerId的层的子块的尺寸。
层间视频解码设备20可通过使用语法元素log2_sub_pb_size_minus3[layerId]来确定子块的尺寸(SubPbSize[layerId])。
语法元素log2_sub_pb_size_minus3[layerId]表示在使用视点间合并候选的预测单元中使用的子块的尺寸。换句话说,语法元素log2_sub_pb_size_minus3[layerId]表示通过将log2加到具有层标识符layerId的层的正方形子块的尺寸然后从加上log2的结果值减去3而获得的值。
这里,语法元素log2_sub_pb_size_minus3[layerId]可以是通过将2的对数加到子块的尺寸(SubPbSize)然后从结果值减去3而获得的值,使得关于具有不被允许作为子块的尺寸的4×4的尺寸的预测单元的信息不被不必要地用信号传输。
同时,语法元素log2_sub_pb_size_minus3的值的允许范围可以是从MinCbLog2SizeY-3到CtbLog2SizeY-3。
这里,MinCbLog2SizeY表示编码单元的最小尺寸,CtbLog2SizeY表示编码单元的最大尺寸。
MinCbLog2SizeY可以是通过将3加到语法元素log2_min_luma_coding_block_size_minus3而获得的值。语法元素log2_min_luma_coding_block_size_minus3是通过将log2加到编码单元的最小尺寸然后从结果值减去3而获得的值。
此外,CtbLog2SizeY可以是通过将语法元素log2_diff_max_min_luma_coding_block_size加到MinCbLog2SizeY而获得的值。
这里,语法元素log2_diff_max_min_luma_coding_block_size表示通过将log2加到编码单元的最大尺寸而获得的值与通过将log2加到编码单元的最小尺寸而获得的值之间的差。
这样的语法元素log2_diff_max_min_luma_coding_block_size和log2_min_luma_coding_block_size_minus3可从比特流被解析。
例如,语法元素log2_diff_max_min_luma_coding_block_size和log2_min_luma_coding_block_size_minus3可从包括在比特流中的VPS NAL单元或SPS NAL单元获得。
同时,关于特定层的子块的尺寸(SubPbSize[layerId])可根据标志VpsDepthFlag(layerId)来确定。标志VpsDepthFlag(layerId)表示指示具有层标识符layerId的层是否是深度图的标志。
在所述特定层是深度图时,子块的尺寸(SubPbSize[layerId])可被确定为编码单元的最大尺寸(CtbLog2SizeY)。
同时,当关于特定层的子块的尺寸(SubPbSize[layerId])不是深度图时,子块的尺寸(SubPbSize[layerId])可根据以下的等式3来确定。
[等式3]
SubPbSize[layerId]=1<<log2_sub_pb_size_minus3[layerId]+3
同时,参照图7a,层间视频解码设备20可通过VPS扩展语法来从比特流获得指示子块的尺寸的语法元素log2_sub_pb_size_minus3[layerId]。
换句话说,从比特流中包括的VPS NAL单元获得指示关于特定层的子块的尺寸的语法元素log2_sub_pb_size_minus3[layerId]。
同时,层间视频解码设备20可从包括在比特流中的SPS NAL单元获得指示子块的尺寸的语法元素。
图7b是示出根据各种实施例的SPS扩展语法的示图。
参照图7b,层间视频解码设备20或40可从比特流获得语法元素log2_sub_pb_size_minus3[0]72。这里,语法元素syntax element log2_sub_pb_size_minus3[0]指示在层图像不是深度图像时的子块的尺寸。
层间视频解码设备20或40从比特流获得SPS NAL单元,并从获得的SPS NAL单元获得语法元素log2_sub_pb_size_minus3[0]72。
这里,根据层图像存在不同的SPS NAL单元,并且可根据层图像从SPS NAL单元获得语法元素72。
层间视频解码设备20或40不从比特流解析语法元素log2_sub_pb_size_minus3[1]。
这里,语法元素log2_sub_pb_size_minus[1]表示当层图像是深度图像时的子块的尺寸。
换句话说,在语法元素log2_sub_pb_size_minus3[d]之中,仅从比特流解析语法元素log2_sub_pb_size_minus[0],不从比特流解析log2_sub_pb_size_minus[1]。
语法元素log2_sub_pb_size_minus3[d]被用于使用层间合并候选根据层来确定子块的尺寸(SubPbSize)。
语法元素log2_sub_pb_size_minus3[d]表示使用层间合并候选的根据层的子块的尺寸。详细地讲,log2_sub_pb_size_minus3[0]可表示通过将log2加到关于彩色图像的子块的尺寸然后从结果值减去3而获得的值,log2_sub_pb_size_minus3[1]可表示通过将log2加到关于深度图像的子块的尺寸然后从结果值减去3而获得的值。
同时,当语法元素log2_sub_pb_size_minus3[d]不存在时,可得到通过将log2加到编码单元的最大尺寸然后从结果值(CtbLog2SizeY)减去3而获得的值。
因此,语法元素log2_sub_pb_size_minus3[1]可以是通过从CtbLog2SizeY减去3而获得的值。
同时,语法元素log2_sub_pb_size_minus3[d]可以是以下范围内的值:该范围等于或大于通过从将log2加到编码单元的最小尺寸的值(MinCbLog2SizeY)减去3而获得的值且等于或小于通过从将log2加到编码单元的最大尺寸的值(MaxCbLog2SizeY)减去3而获得的值。
同时,特定层的子块尺寸(SubPbSize)可根据以下的等式4来确定。
[等式4]
SubPbSize=1<<(log2_sub_pb_size_minus3[DepthFlag]+3
这里,DepthFlag表示指示特定层图像是否是深度图像的标志。
层间视频解码设备20或40可通过使用当前预测单元的位置(xPb,yPb)、当前预测单元的宽度和高度(nPbW和nPbH)、参考视点索引(refViewIdx)以及视差矢量(mvDisp)来确定基于子块的层间运动矢量候选。
这里,在根据子块确定层间运动矢量候选之前,视差矢量(mvDisp)的垂直分量被改变为0,并且可通过使用改变后的视差矢量来确定基于子块的层间运动矢量候选。
同时,假设参照图5至图7b描述的操作由层间视频解码设备20或40执行,但对本领域普通技术人员而言显而易见的是,相同的操作也可由层间视频编码设备10或30执行。
参照图7b,层间视频解码设备20或40可从比特流获得语法元素log2_mpi_sub_pb_size_minus3[1]73。
语法元素log2_mpi_sub_pb_size_minus3[1]表示当层图像是深度图像时的子块的尺寸。语法元素log2_mpi_sub_pb_size_minus3[1]可被用于确定用于MPI编码和解码的子块的尺寸。
层间视频解码设备20或40从比特流获得SPS NAL单元,并从SPS NAL单元获得语法元素72。
这里,根据层图像存在不同的SPS NAL单元,并且可根据层图像从SPS NAL单元获得语法元素73。
层间视频解码设备20或40不从比特流解析语法元素log2_mpi_sub_pb_size_minus3[0]。语法元素log2_mpi_sub_pb_size_minus3[0]表示当层图像不是深度图像时的子块的尺寸。语法元素log2_mpi_sub_pb_size_minus3[0]可被用于确定用于MPI编码和解码的子块的尺寸。
同时,仅从比特流解析语法元素log2_mpi_sub_pb_size_minus3[d]之中的语法元素log2_mpi_sub_pb_size_minus[1],不从比特流解析log2_mpi_sub_pb_size_minus[0]。
同时,语法元素log2_mpi_sub_pb_size_minus3[d]可被用于根据层使用层间合并候选来确定子块的尺寸(MpiSubPbSize)。
语法元素log2_mpi_sub_pb_size_minus3[d]表示根据层使用层间合并候选的子块的尺寸。详细地讲,log2_mpi_sub_pb_size_minus3[0]可以是通过从将log2加到关于彩色图像的子块的尺寸的值减去3而获得的值,log2_mpi_sub_pb_size_minus3[1]可以是通过从将log2加到关于深度图像的子块的尺寸的值减去3而获得的值。
层间视频解码设备20或40可根据以下的等式5,通过使用语法元素sub_pb_size_minus[1]根据层来确定子块的尺寸(MpiSubPbSize)。
[等式5]
MpiSubPbSzie=1<<(log2_mpi_sub_pb_size_minus3[DepthFlag]+3)
这里,标志DepthFlag是指示层图像是否是深度图像的标志。
如上所述,根据各种实施例的层间视频编码设备10和根据各种实施例的层间视频解码设备20可将视频数据的块划分为具有树结构的编码单元,并且编码单元、预测单元和变换单元可用于编码单元的层间预测或帧间预测。在下文中,将参照图8至图20描述根据各种实施例的基于具有树结构的编码单元和变换单元的视频编码方法、视频编码设备、视频解码方法和视频解码设备。
原则上,在用于多层视频的编码和解码处理期间,单独地执行对第一层图像的编码和解码处理以及对第二层图像的编码和解码处理。换句话说,当对多层视频执行层间预测时,单层视频的编码和解码结果可被互相参考,但根据单层视频执行单独的编码和解码处理。
因此,由于为了便于描述而在下面参照图8至图20描述的基于具有树结构的编码单元的视频编码处理和视频解码处理是对单层视频执行的视频编码处理和解码处理,因此仅执行帧间预测和运动补偿。然而,如参照图1a至图7b所描述的,为了对视频流进行编码和解码,对基本层图像和第二层图像执行层间预测和补偿。
因此,为了使根据各种实施例的层间视频编码设备10的编码器12基于具有树结构的编码单元对多层视频进行编码,层间视频编码设备10可包括与多层视频的层数一样多的图8的视频编码设备100以根据每个单层视频执行视频编码,由此控制每个视频编码设备100对被分配的单层视频进行编码。此外,层间视频编码设备10可通过使用每个视频编码设备100的单独的单视点的编码结果来执行视点间预测。因此,层间视频编码设备10的编码器12可产生包括根据层的编码结果的基本视点视频流和第二层视频流。
类似地,为了使根据各种实施例的层间视频解码设备20的解码器26基于具有树结构的编码单元对多层视频进行解码时,层间视频解码设备20可包括与多层视频的层数一样多的图9的视频解码设备200,以便针对接收到的第一层视频流和接收到的第二层视频流根据层执行视频解码,从而控制每个视频解码设备200对被分配的单层视频进行解码。此外,层间视频解码设备20可通过使用每个视频解码设备200的单独的单层的解码结果来执行层间补偿。因此,层间视频解码设备20的解码器26可产生根据层而被重建的第一层图像和第二层图像。
图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,以便根据多层视频中的层对单层图像进行编码。例如,第一层编码器12可包括一个视频编码设备100,第二层编码器16可包括第二层的数量一样多的视频编码设备100。
当视频编码设备100对第一层图像进行编码时,编码单元确定器120可针对每个最大编码单元根据具有树结构的编码单元确定用于帧间预测的预测单元,并可根据预测单元执行帧间预测。
即使在视频编码设备100对第二层图像进行编码时,编码单元确定器120可针对每个最大编码单元确定具有树结构的编码单元和预测单元,并可根据预测单元执行帧间预测。
视频编码设备100可对第一层图像和第二层图像之间的亮度差进行编码,以便补偿亮度差。然而,可根据编码单元的编码模式确定是否执行亮度补偿。例如,可仅对尺寸为2Nx2N的预测单元执行亮度补偿。
图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可从比特流获得与亮度误差相关的信息,以便补偿第一视点图像和第二视点图像之间的亮度差。然而,可根据编码单元的编码模式确定是否执行亮度补偿。例如,可仅对尺寸为2Nx2N的预测单元执行亮度补偿。
因此视频解码设备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或帧间预测器输出的每个模式的编码单元的预测数据,从而被恢复为当前图像405的编码单元的空间域中的数据。空间域中的重建的数据通过去块单元455和样本自适应偏移(SAO)执行器460,因此恢复的图像被产生。恢复的图像被存储在恢复画面缓存器410中。恢复画面缓存器410中存储的恢复的图像可被用作用于另一图像的帧间预测的参考图像。通过变换器425和量化器430获得的量化的变换系数可通过熵编码器435被输出为比特流440。
为了将根据一些实施例的图像编码器400应用于视频编码设备100,图像编码器400的元件(即,帧间预测器410、帧内预测器420、变换器425、量化器430、熵编码器435、反量化器445、逆变换器450、去块单元455和SAO执行器460)根据每个最大编码单元基于具有树结构的编码单元之中的每个编码单元执行操作。
具体地,帧内预测器420和帧间预测器415可在考虑当前最大编码单元的最大尺寸和最大深度的同时确定具有树结构的编码单元之中的每个编码单元的分区和预测模式,变换器425可确定是否在具有树结构的编码单元之中的每个编码单元中划分根据四叉树的变换单元。
图12是根据一些实施例的基于编码单元的图像解码器500的框图。
熵解码器515从比特流505解析将被解码的编码图像数据和解码所需的编码信息。编码图像数据是量化后的变换系数,并且反量化器520和逆变换器525从所述量化后的变换系数恢复残差数据。
帧内预测器540根据预测单元对帧内模式下的编码单元执行帧内预测。帧间预测器535通过使用由恢复画面缓存器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的编码器16对至少两层的视频流进行编码时,图1a的视频编码设备100可包括与层数一样多的图像编码器400。类似地,当图2a的解码器22对至少两层的视频流进行解码时,图2a的视频解码设备200可包括与层数一样多的图像解码器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仅示出了通过对称地划分预测单元910而获得的分区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描述的包括层间视频解码设备20、视频解码设备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所述的层间视频解码方法,其中,确定包括在与第二层图像不同的第一层图像中的与包括在第二层图像中的当前块相应的候选块的步骤包括:从包括在第二层图像中的当前块获得指向包括在与第二层图像不同的第一层图像中的候选块的视差矢量,其中,获得的视差矢量的垂直分量为0。
3.如权利要求1所述的层间视频解码方法,其中,当前块是当第二层图像的编码单元被划分时产生的一个或更多个预测单元中的一个预测单元,
子块是小于或等于预测单元的块。
4.如权利要求1所述的层间视频解码方法,其中,通过使用所述子块尺寸信息,从等于或大于编码单元的最小尺寸且小于或等于编码单元的最大尺寸的范围确定子块的尺寸的步骤包括:通过使用从比特流获得的指示编码单元的最小尺寸的信息以及包括在比特流中的指示编码单元的最大尺寸与编码单元的最小尺寸之间的差的信息,确定子块的尺寸。
5.如权利要求1所述的层间视频解码方法,其中,包括所述子块尺寸信息的视频参数集网络抽象层(VPS NAL)单元或序列参数集网络抽象层(SPS NAL)单元从比特流被获得,并且第二层图像的所述子块尺寸信息从VPS NAL单元或SPS NAL单元被获得。
6.一种层间视频编码方法,包括:
从等于或大于编码单元的最小尺寸且小于或等于编码单元的最大尺寸的范围获得第二层图像的子块的尺寸;
确定包括在与第二层图像不同的第一层图像中的与包括在第二层图像中的当前块相应的候选块;
当从当前块获得了第二层图像中通过使用所确定的子块的尺寸而确定的至少一个子块时,获得第一层图像中与第二层图像的子块相应的子块的运动信息;
通过使用所获得的第一层图像的子块的运动信息来获得或预测当前块的运动信息,并通过使用获得的或预测出的当前块的运动信息来对当前块进行编码;
产生包括指示所确定的子块的尺寸的子块尺寸信息的比特流,
其中,第一层图像的子块被确定为位于候选块内部的区域中。
7.如权利要求6所述的层间视频编码方法,其中,确定包括在与第二层图像不同的第一层图像中的与包括在第二层图像中的当前块相应的候选块的步骤包括:从包括在第二层图像中的当前块获得指向包括在与第二层图像不同的第一层图像中的候选块的视差矢量,
其中,获得的视差矢量的垂直分量为0。
8.如权利要求6所述的层间视频编码方法,其中,当前块是当第二层图像的编码单元被划分时产生的一个或更多个预测单元中的一个预测单元,
子块是小于或等于预测单元的块。
9.如权利要求6所述的层间视频编码方法,其中,产生包括指示所确定的子块的尺寸的子块尺寸信息的比特流的步骤包括:产生还包括指示编码单元的最小尺寸的信息以及指示编码单元的最大尺寸与编码单元的最小尺寸之间的差的信息的比特流。
10.如权利要求6所述的层间视频编码方法,其中,产生包括指示所确定的子块的尺寸的子块尺寸信息的比特流的步骤包括:
产生包括所述子块尺寸信息的视频参数集网络抽象层(VPS NAL)单元或序列参数集网络抽象层(SPS NAL)单元;
产生包括VPS NAL单元或SPS NAL单元的比特流。
11.一种层间视频解码设备,包括:
获得器,被配置为获得等于或大于编码单元的最小尺寸且小于或等于编码单元的最大尺寸的范围内的第二层图像的子块尺寸信息;
解码器,被配置为通过使用所述子块尺寸信息,从等于或大于编码单元的最小尺寸且小于或等于编码单元的最大尺寸的范围确定子块的尺寸,确定包括在与第二层图像不同的第一层图像中的与包括在第二层图像中的当前块相应的候选块,当从当前块获得了第二层图像中通过使用子块的尺寸而确定的至少一个子块时,获得第一层图像中与第二层图像的子块相应的子块的运动信息,通过使用第一层图像的子块的运动信息来获得或预测当前块的运动信息,并通过使用获得的或预测出的当前块的运动信息来对当前块进行解码,
其中,第一层图像的子块被确定为位于候选块内部的区域中。
12.一种层间视频编码设备,包括:
编码器,被配置为从等于或大于编码单元的最小尺寸且小于或等于编码单元的最大尺寸的范围获得第二层图像的子块的尺寸,确定包括在与第二层图像不同的第一层图像中的与包括在第二层图像中的当前块相应的候选块,当从当前块获得了第二层图像中通过使用所确定的子块的尺寸而确定的至少一个子块时,获得第一层图像中与第二层图像的子块相应的子块的运动信息,通过使用所获得的第一层图像的子块的运动信息来获得或预测当前块的运动信息,并通过使用获得的或预测出的当前块的运动信息来对当前块进行编码;
比特流产生器,被配置为产生包括指示所确定的子块的尺寸的子块尺寸信息的比特流,
其中,第一层图像的子块被确定为位于候选块内部的区域中。
13.一种层间视频解码方法,包括:
对编码的第一层图像进行解码;
确定包括在第一层图像中的与包括在第二层图像中的当前块相应的候选块;
在当前块的尺寸不是子块的预定尺寸的整数倍时,将尺寸不是子块的所述预定尺寸的至少一个块确定为子块;
当子块被确定时,获得第一层图像中与第二层图像的子块相应的子块的运动信息;
通过使用所获得的第一层图像的子块的运动信息来获得或预测当前块的运动信息,并通过使用获得的或预测出的当前块的运动信息来对当前块进行解码,
其中,第二层图像的子块被确定为位于候选块内部的区域中。
14.一种层间视频编码方法,包括:
对第一层图像进行编码;
确定包括在第一层图像中的与包括在第二层图像中的当前块相应的候选块;
在当前块的尺寸不是子块的预定尺寸的整数倍时,将尺寸不是子块的所述预定尺寸的至少一个块确定为子块;
当子块被确定时,获得第一层图像中与第二层图像的子块相应的子块的运动信息;
通过使用所获得的第一层图像的子块的运动信息来获得或预测当前块的运动信息,并通过使用获得的或预测出的当前块的运动信息来对当前块进行编码,
其中,第二层图像的子块被确定为位于候选块内部的区域中。
15.一种其上记录有程序的非暂时性计算机可读记录介质,其中,所述程序在被计算机运行时执行权利要求1至10以及权利要求13至14中的任意一项权利要求的方法。
CN201480076495.4A 2013-12-26 2014-12-26 用于执行基于子块的预测的层间视频解码方法及其设备以及用于执行基于子块的预测的层间视频编码方法及其设备 Active CN106063271B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201361920818P 2013-12-26 2013-12-26
US61/920,818 2013-12-26
PCT/KR2014/012932 WO2015099506A1 (ko) 2013-12-26 2014-12-26 서브블록 기반 예측을 수행하는 인터 레이어 비디오 복호화 방법 및 그 장치 및 서브블록 기반 예측을 수행하는 인터 레이어 비디오 부호화 방법 및 그 장치

Publications (2)

Publication Number Publication Date
CN106063271A true CN106063271A (zh) 2016-10-26
CN106063271B CN106063271B (zh) 2019-09-03

Family

ID=53479261

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480076495.4A Active CN106063271B (zh) 2013-12-26 2014-12-26 用于执行基于子块的预测的层间视频解码方法及其设备以及用于执行基于子块的预测的层间视频编码方法及其设备

Country Status (5)

Country Link
US (1) US10567773B2 (zh)
EP (1) EP3089452A4 (zh)
KR (1) KR102281282B1 (zh)
CN (1) CN106063271B (zh)
WO (1) WO2015099506A1 (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019052490A1 (en) * 2017-09-15 2019-03-21 Huawei Technologies Co., Ltd. BLOCK PARTITION STRUCTURE IN VIDEO COMPRESSION TECHNOLOGY
CN110024402A (zh) * 2016-11-29 2019-07-16 韩国电子通信研究院 图像编码/解码方法和装置以及存储有比特流的记录介质
CN110662076A (zh) * 2018-06-29 2020-01-07 北京字节跳动网络技术有限公司 子块的边界增强
CN110753222A (zh) * 2018-08-14 2020-02-04 北京达佳互联信息技术有限公司 视频编码方法和确定采用帧间编码方式的方法及设备
CN111602394A (zh) * 2018-01-18 2020-08-28 联发科技股份有限公司 视频编码解系统中的视频处理方法及装置
CN113454994A (zh) * 2019-03-21 2021-09-28 三星电子株式会社 用于对具有针对每个块形状设置的块尺寸的视频进行编码的方法和装置以及用于对视频进行解码的方法和装置
CN114584770A (zh) * 2019-01-09 2022-06-03 华为技术有限公司 视频译码中的子图像布局指示
CN115152240A (zh) * 2020-02-24 2022-10-04 三星电子株式会社 使用边缘计算服务发送视频内容的方法和设备

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 互いに類似した情報を含む複数画像のデータサイズを低減する方法、プログラムおよび装置
JP6305279B2 (ja) * 2014-08-26 2018-04-04 株式会社東芝 映像圧縮装置および映像再生装置
US9883137B2 (en) 2015-11-03 2018-01-30 Qualcomm Incorporated Updating regions for display based on video decoding mode
KR20180136967A (ko) * 2016-04-22 2018-12-26 엘지전자 주식회사 인터 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
WO2018092868A1 (ja) 2016-11-21 2018-05-24 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
CN116347077A (zh) 2016-11-21 2023-06-27 松下电器(美国)知识产权公司 计算机可读介质
US11496747B2 (en) 2017-03-22 2022-11-08 Qualcomm Incorporated Intra-prediction mode propagation
EP3637766B1 (en) * 2017-07-06 2021-09-01 Samsung Electronics Co., Ltd. Image encoding method, and image decoding method and apparatus
JP2021502771A (ja) * 2018-05-03 2021-01-28 エルジー エレクトロニクス インコーポレイティド 画像コーディングシステムにおいてブロックサイズに応じた変換を使用する画像デコード方法およびその装置
US11245922B2 (en) * 2018-08-17 2022-02-08 Mediatek Inc. Shared candidate list
EP3844963A4 (en) * 2018-09-14 2021-11-10 Huawei Technologies Co., Ltd. IMPROVED ATTRIBUTE SUPPORT IN POINT CLOUD ENCODING
CN113396585A (zh) * 2019-01-30 2021-09-14 三星电子株式会社 使用以各种形式从图像划分出的块的视频编码方法和设备以及视频解码方法和设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1846446A (zh) * 2003-09-03 2006-10-11 汤姆森许可贸易公司 编码视频图像的方法和布置
US20120177116A1 (en) * 2011-01-12 2012-07-12 General Instrument Corporation Efficient Transform Unit Representation
CN102595135A (zh) * 2012-02-24 2012-07-18 中国科学技术大学 一种可伸缩视频编码的方法及装置
US20120230408A1 (en) * 2011-03-08 2012-09-13 Minhua Zhou Parsing Friendly and Error Resilient Merge Flag Coding in Video Coding

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5134001B2 (ja) * 2006-10-18 2013-01-30 アップル インコーポレイテッド 下層のフィルタリングを備えたスケーラブルビデオ符号化
EP3264780B1 (en) * 2007-04-18 2020-06-24 Dolby International AB Coding systems using supplemental sequence parameter set for scalable video coding or multi-view coding
US8555311B2 (en) * 2007-12-19 2013-10-08 United Video Properties, Inc. Methods and devices for presenting guide listings and guidance data in three dimensions in an interactive media guidance application
KR101671005B1 (ko) 2007-12-27 2016-11-01 삼성전자주식회사 트렐리스를 이용한 양자화 부호화 및 역양자화 복호화 방법및 장치
KR101774392B1 (ko) * 2010-12-22 2017-09-04 엘지전자 주식회사 화면 내 예측 방법 및 이러한 방법을 사용하는 장치
KR101961960B1 (ko) * 2011-02-09 2019-03-25 엘지전자 주식회사 영상 부호화 및 복호화 방법과 이를 이용한 장치
US9420294B2 (en) 2011-02-23 2016-08-16 Lg Electronics Inc. Intra-prediction method using filtering, and apparatus using the method
US9788019B2 (en) 2011-03-09 2017-10-10 Hfi Innovation Inc. Method and apparatus of transform unit partition with reduced complexity
KR20120118780A (ko) 2011-04-19 2012-10-29 삼성전자주식회사 다시점 비디오의 움직임 벡터 부호화 방법 및 장치, 그 복호화 방법 및 장치
US8868254B2 (en) * 2012-06-08 2014-10-21 Apple Inc. Accessory control with geo-fencing
KR101347263B1 (ko) * 2012-06-11 2014-01-10 한국항공대학교산학협력단 움직임 벡터 예측 장치 및 그 예측 방법
US10003793B2 (en) * 2012-10-01 2018-06-19 Google Technology Holdings LLC Processing of pulse code modulation (PCM) parameters
US9674519B2 (en) * 2012-11-09 2017-06-06 Qualcomm Incorporated MPEG frame compatible video coding
ES2906238T3 (es) * 2013-07-24 2022-04-13 Qualcomm Inc Predicción de movimiento avanzada simplificada para 3D-HEVC
US20160173904A1 (en) * 2013-07-24 2016-06-16 Samsung Electronics Co., Ltd. Method for determining motion vector and apparatus therefor

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1846446A (zh) * 2003-09-03 2006-10-11 汤姆森许可贸易公司 编码视频图像的方法和布置
US20120177116A1 (en) * 2011-01-12 2012-07-12 General Instrument Corporation Efficient Transform Unit Representation
US20120230408A1 (en) * 2011-03-08 2012-09-13 Minhua Zhou Parsing Friendly and Error Resilient Merge Flag Coding in Video Coding
CN102595135A (zh) * 2012-02-24 2012-07-18 中国科学技术大学 一种可伸缩视频编码的方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JICHENG AN: ""3D-CE3: Sub-PU level inter-view motion prediction"", 《JOINT COLLABORATIVE TEAM ON 3D VIDEO CODING EXTENSION DEVELOPMENT OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 6TH MEETING: GENEVA, CH, 25 OCT. – 1 NOV. 2013》 *

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110024402B (zh) * 2016-11-29 2023-08-22 韩国电子通信研究院 图像编码/解码方法和装置以及存储有比特流的记录介质
CN110024402A (zh) * 2016-11-29 2019-07-16 韩国电子通信研究院 图像编码/解码方法和装置以及存储有比特流的记录介质
US10666943B2 (en) 2017-09-15 2020-05-26 Futurewei Technologies, Inc. Block partition structure in video compression
WO2019052490A1 (en) * 2017-09-15 2019-03-21 Huawei Technologies Co., Ltd. BLOCK PARTITION STRUCTURE IN VIDEO COMPRESSION TECHNOLOGY
CN111602394B (zh) * 2018-01-18 2021-07-09 联发科技股份有限公司 视频编解码系统中的视频处理方法及装置
CN111602394A (zh) * 2018-01-18 2020-08-28 联发科技股份有限公司 视频编码解系统中的视频处理方法及装置
CN110662076A (zh) * 2018-06-29 2020-01-07 北京字节跳动网络技术有限公司 子块的边界增强
CN110662076B (zh) * 2018-06-29 2022-10-04 北京字节跳动网络技术有限公司 子块的边界增强
CN110753222A (zh) * 2018-08-14 2020-02-04 北京达佳互联信息技术有限公司 视频编码方法和确定采用帧间编码方式的方法及设备
CN114584770A (zh) * 2019-01-09 2022-06-03 华为技术有限公司 视频译码中的子图像布局指示
CN114584770B (zh) * 2019-01-09 2023-11-03 华为技术有限公司 视频译码中的子图像布局指示
US12088835B2 (en) 2019-01-09 2024-09-10 Huawei Technologies Co., Ltd. Sub-picture layout signaling in video coding
CN113454994A (zh) * 2019-03-21 2021-09-28 三星电子株式会社 用于对具有针对每个块形状设置的块尺寸的视频进行编码的方法和装置以及用于对视频进行解码的方法和装置
CN113454994B (zh) * 2019-03-21 2022-03-01 三星电子株式会社 用于对具有针对每个块形状设置的块尺寸的视频进行编码/解码的方法和装置
US11979569B2 (en) 2019-03-21 2024-05-07 Samsung Electronics Co., Ltd. Method and device for encoding video having block size set for each block shape, and method and device for decoding video
CN115152240A (zh) * 2020-02-24 2022-10-04 三星电子株式会社 使用边缘计算服务发送视频内容的方法和设备

Also Published As

Publication number Publication date
WO2015099506A1 (ko) 2015-07-02
US10567773B2 (en) 2020-02-18
US20160309156A1 (en) 2016-10-20
KR20150076134A (ko) 2015-07-06
EP3089452A1 (en) 2016-11-02
KR102281282B1 (ko) 2021-07-23
CN106063271B (zh) 2019-09-03
EP3089452A4 (en) 2017-10-25

Similar Documents

Publication Publication Date Title
CN106063271B (zh) 用于执行基于子块的预测的层间视频解码方法及其设备以及用于执行基于子块的预测的层间视频编码方法及其设备
CN105308966B (zh) 视频编码方法及其设备以及视频解码方法及其设备
CN105532001B (zh) 用于使用基于深度的视差矢量对视频进行层间编码方法以及解码方法和设备
KR102329126B1 (ko) 인터 레이어 비디오의 복호화 및 부호화를 위한 머지 후보 리스트 구성 방법 및 장치
CN106464889A (zh) 执行基于子块的预测的层间视频解码方法和层间视频编码方法及其设备
CN104796723B (zh) 用于在视频编码或解码中的运动矢量确定的方法和设备
CN105144713B (zh) 用于解码器设置的对视频进行编码的方法及其装置以及基于解码器设置对视频进行解码的方法及其装置
CN105103552B (zh) 用于补偿亮度差的对层间视频进行编码的方法及其装置以及用于对视频进行解码的方法及其装置
CN105532004B (zh) 层间视频解码方法及设备
KR102149827B1 (ko) 인터 레이어 비디오 복호화 방법 및 그 장치 및 인터 레이어 비디오 부호화 방법 및 그 장치
KR102246546B1 (ko) 멀티 레이어 비디오 부호화 방법 및 장치, 멀티 레이어 비디오 복호화 방법 및 장치
CN105594212B (zh) 用于确定运动矢量的方法及其设备
WO2015152608A2 (ko) 서브블록 기반 예측을 수행하는 인터 레이어 비디오 복호화 방법 및 그 장치 및 서브블록 기반 예측을 수행하는 인터 레이어 비디오 부호화 방법 및 그 장치
CN106031175B (zh) 使用亮度补偿的层间视频编码方法及其装置、以及视频解码方法及其装置
CN106464908A (zh) 用于传输深度图像的预测模式以供层间视频编码和解码的方法和装置
CN104620578A (zh) 用于随机访问的多层视频编码的方法和设备以及用于随机访问的多层视频解码的方法和设备
CN105264894A (zh) 针对层间解码和编码方法以及设备的确定帧间预测候选的方法
CN106416256B (zh) 用于对深度图像进行编码或解码的方法和设备
CN104365104A (zh) 用于基于树结构编码单元进行多视点视频编码的方法和设备以及用于基于树结构编码单元进行多视点视频解码的方法和设备
CN105325002A (zh) 使用视点合成预测的多视点视频编码方法及其设备以及多视点视频解码方法及其设备
CN105556972A (zh) 用于层间视频解码和编码设备和方法的对深度图像的场景内预测方法
CN105340275A (zh) 使用视点合成预测的多视点视频编码方法及其设备以及多视点视频解码方法及其设备
CN106664413A (zh) 用于补偿亮度差的层间视频编码方法和装置以及视频解码方法和装置
CN107005711A (zh) 逐样本预测编码设备和方法
CN106105210A (zh) 管理用于对多层视频进行编码和解码的缓冲器的方法和设备

Legal Events

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