CN105308970B - 针对整数像素的位置对视频进行编码和解码的方法和设备 - Google Patents

针对整数像素的位置对视频进行编码和解码的方法和设备 Download PDF

Info

Publication number
CN105308970B
CN105308970B CN201480032642.8A CN201480032642A CN105308970B CN 105308970 B CN105308970 B CN 105308970B CN 201480032642 A CN201480032642 A CN 201480032642A CN 105308970 B CN105308970 B CN 105308970B
Authority
CN
China
Prior art keywords
current
depth
layer
image
difference vector
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.)
Expired - Fee Related
Application number
CN201480032642.8A
Other languages
English (en)
Other versions
CN105308970A (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 CN105308970A publication Critical patent/CN105308970A/zh
Application granted granted Critical
Publication of CN105308970B publication Critical patent/CN105308970B/zh
Expired - Fee Related 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/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/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/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/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding

Landscapes

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

Abstract

公开一种视频解码方法,包括:获得用于在属于当前层和参考层的图像之间的层间预测的具有以子像素为单位的分量的视差矢量;确定与由从当前层的当前像素的位置获得的视差矢量指示的位置相应的参考层的整数像素的位置;通过使用关于与整数像素的确定的位置相应的参考层的候选区域的预测信息来对当前层的图像进行解码。

Description

针对整数像素的位置对视频进行编码和解码的方法和设备
技术领域
本发明涉及一种用于针对整数像素的位置对视频进行编码和解码的方法和设备。
背景技术
随着用于再现和存储高分辨率或高质量视频内容的硬件正被开发和提供,对于用于有效地对高分辨率或高质量视频内容进行编码或解码的视频编解码器的需求正在增加。根据传统的视频编解码器,基于具有预定尺寸的宏块,根据受限的编码方法来对视频进行编码。
视频编解码器通过使用利用在视频中的图像具有高的时间或空间互相关的特性的预测方法来减少数据量。根据所述预测方法,为了通过使用邻近图像预测当前图像,使用在图像之间的时间或空间距离、预测误差等来记录图像信息。
发明内容
技术问题
提出一种当执行帧间预测或层间预测时通过使用视差矢量来预测图像的方法。
技术方案
根据一个或多个实施例,通过使用视差矢量来对预测图像的方法可包括:获得用于在属于当前层和参考层的图像之间的层间预测的具有以子像素为单位的分量的视差矢量;确定与由从当前层的当前像素中获得的视差矢量指示的位置相应的参考层的整数像素的位置;通过使用关于整数像素的确定的位置相应的参考层的候选区域的预测信息来对当前层的图像进行解码。
有益效果
根据所述一个或多个实施例,可有效地确定与由从当前层的当前像素的位置中获得的视差矢量指示的位置相应的参考层的整数像素的位置。
附图说明
图1a是用于描述根据一个或多个实施例的视频编码设备的配置的框图;
图1b是用于描述根据一个或多个实施例的通过确定视差矢量执行编码的方法的流程图;
图2a是用于描述根据一个或多个实施例的通过确定与视差矢量相应的整数视差矢量来确定整数像素的位置的方法的流程图;
图2b是用于描述根据一个或多个实施例的通过对子像素单位的视差矢量的x分量和y分量的取整运算来确定整数视差矢量的方法的流程图;
图2c是用于描述根据一个或多个实施例的确定整数视差矢量的方法的流程图;
图3a是用于描述根据一个或多个实施例的通过使用整数像素的确定的位置来预测运动信息的方法的流程图;
图3b是用于描述根据一个或多个实施例的通过使用整数像素的确定的位置来确定深度相关信息以及执行编码的方法的流程图;
图3c是用于描述根据一个或多个实施例的通过使用整数像素的确定的位置来预测残差图像数据的方法的流程图;
图4a是用于描述根据一个或多个实施例的视频解码设备的配置的框图;
图4b是用于描述根据一个或多个实施例的通过获得视差矢量来执行解码的方法的流程图;
图5a是用于描述根据一个或多个实施例的通过确定与视差矢量相应的整数视差矢量来确定整数像素的位置的方法的流程图;
图5b是用于描述根据一个或多个实施例的通过对子像素单位的视差矢量的x分量和y分量的取整运算来确定整数视差矢量的方法的流程图;
图5c是用于描述根据一个或多个实施例的确定整数视差矢量的方法的流程图;
图6a是用于描述根据一个或多个实施例的通过使用整数像素的确定的位置来预测运动信息的方法的流程图;
图6b是用于描述根据一个或多个实施例的通过使用整数像素的确定的位置来确定与深度相关的信息以及执行编码的方法的流程图;
图6c是用于描述根据一个或多个实施例的通过使用整数像素的确定的位置来预测残差图像数据的方法的流程图;
图7a是用于描述根据一个或多个实施例的视频解码设备40预测视差矢量所依据的方法的框图;
图7b是用于描述根据一个或多个实施例的视频解码设备40通过使用参考视点的深度图来预测视差矢量所依据的方法的框图;
图7c是用于描述根据一个或多个实施例的视频解码设备40通过使用参考深度图来预测视差矢量所依据的方法的框图;
图8是根据实施例的基于根据树结构的编码单元的视频编码设备的框图;
图9是根据实施例的基于根据树结构的编码单元的视频解码设备的框图;
图10是用于描述根据本发明的实施例的编码单元的概念的示图;
图11是根据本发明的实施例的基于编码单元的图像编码器的框图;
图12是根据本发明的实施例的基于编码单元的图像解码器的框图;
图13是示出根据本发明的实施例的根据深度的较深层编码单元以及分区(partition)的示图;
图14是用于描述根据本发明的实施例的编码单元与变换单元之间的关系的示图;
图15是用于描述根据本发明的实施例的与深度相应的编码单元的编码信息的示图;
图16是根据本发明的实施例的根据深度的较深层编码单元的示图;
图17至图19是用于描述根据本发明的实施例的编码单元、预测单元和变换单元之间的关系的示图;
图20是用于描述根据表1的编码模式信息的编码单元、预测单元和变换单元之间的关系的示图;
图21是根据本发明的实施例的存储程序的盘的物理结构的示图;
图22是通过使用盘来记录和读取程序的盘驱动器的示图;
图23是用于提供内容分配服务的内容供应系统的整体结构的示图;
图24和图25分别是根据本发明的实施例的应用视频编码方法和视频解码方法的移动电话的外部结构和内部结构的示图;
图26是根据本发明的实施例的应用通信系统的数字广播系统的示图;
图27是根据本发明的实施例的使用视频编码设备和视频解码设备的云计算系统的网络结构的示图。
最佳实施方式
公开了一种视频解码方法,包括:获得用于在属于当前层和参考层的图像之间的层间预测的具有以子像素为单位的分量的视差矢量;确定与由从当前层的当前像素的位置中获得的视差矢量指示的位置相应的参考层的整数像素的位置;使用关于与整数像素的确定的位置相应的参考层的候选区域的预测信息来对当前层的图像进行解码。
具体实施方式
以下在说明书中描述的一个或多个实施例中,术语“图像”可全面指示静止图像以及运动图像(诸如视频)。
术语“样点”指示将被处理为被分配到图像的取样位置的数据的数据。例如,在空间域的图像中的像素可以是样点。
在以下说明书中,当前块可包括编码单元和预测单元。
现在将参照图1a至图7c 描述根据一个或多个实施例的用于针对整数像素的位置对视频进行编码和解码的方法和设备。此外,参照图8至图20公开可应用于以上提出的视频编码和解码方法的根据一个或多个实施例的基于树结构的编码单元的视频编码方法和视频解码方法。此外,参照图21至图27 公开可应用所述视频编码方法和视频解码方法的各种实施例。
图1a是用于描述根据一个或多个实施例的视频编码设备10的配置的框图。
如图1a所示,视频编码设备10可包括视差矢量确定器11、整数像素位置确定器12及编码器13。然而,可利用比所示出的组件更多或更少的组件来实施视频编码设备10。
根据一个或多个实施例,根据可伸缩视频编码方法,视频编码设备10 可针对每个层对多个图像序列进行分类并对针对每个层被分类的多个图像序列中的每个进行编码,并且可输出包括针对每个层编码的数据的单个流。视频编码设备10可对当前层的图像序列和针对不同层的参考层的图像序列进行编码。
编码器13可对当前层的图像进行编码并输出包括当前层的图像的编码的数据的当前层流。
编码器13可对参考层的图像进行编码并输出包括参考层的图像的编码的数据的参考层流。
例如,根据基于空间可伸缩性的可伸缩视频编码方法,低分辨率图像可被编码为参考层的图像,高分辨率图像可被编码为当前层的图像。参考层的图像的编码结果可被输出为参考层流,当前层的图像的编码结果可被输出为当前层流。
作为另一示例,可根据可伸缩视频编码方法对多视点视频进行编码。左视点图像可被编码为参考层的图像,右视点图像可被编码为当前层的图像。可选地,中心视点图像、左视点图像及右视点图像可被分开编码,其中,中心视点图像可被编码为当前层的图像,左视点图像可被编码为参考层的图像,右视点图像可被编码为另一参考层的图像。
作为另一示例,可根据基于时间可伸缩性的时间分层预测来执行可伸缩视频编码方法。包括通过对基本帧率的图像进行编码产生的编码信息的参考层流可被输出。可针对每个帧率对时间级进行分类,并且可针对每个层对每个时间级进行编码。通过针对基本帧率的图像进一步对高速帧率的图像进行编码,可输出包括高速帧率的编码信息的当前层流。
此外,可执行对参考层和多个当前层的可伸缩视频编码。在当前层的数量是3个或更多个时,可对参考层的图像、第一当前层的图像、第二当前层的图像、...和第k当前层的图像进行编码。因此,参考层的图像的编码结果可被输出为参考层流,第一、第二、...和第k当前层的图像的编码结果可分别被编码为第一、第二、...和第k当前层流。
根据一个或多个实施例,视频编码设备10可执行用于参照单层的图像来预测当前图像的帧间预测。可通过帧间预测产生指示在当前图像和参考图像之间的运动信息的运动矢量以及在当前图像和参考图像之间的残差分量。
此外,视频编码设备10可参照参考层的图像执行用于预测当前层的图像的层间预测。
此外,根据实施例,当视频编码设备10允许三层或更多层(诸如参考层、当前层和参考层)时,根据多层预测结构,视频编码设备10可执行在一个参考层的图像与参考层的图像之间的层间预测以及在当前层的图像和一个参考层的图像之间的层间预测。
可通过层间预测来产生在当前层和另一层的参考图像之间的位置差分量以及在当前层和另一层的参考图像之间的残差分量。
根据一个或多个实施例,视频编码设备10可针对每个层对在视频的每个图像中的每个块进行编码。块类型可以是正方形、四边形或任意几何形状。然而,块类型不限于具有预定尺寸的数据单元。块可以是根据树结构的编码单元之中的最大编码单元(LCU)、编码单元、预测单元、变换单元等。包括树结构的编码单元的LCU可被不同地命名为编码树单元、编码块树、根块树、编码树、编码根、树干等。以下将参照图8至图20来描述基于根据树结构的编码单元的视频编码和解码方法。
可基于数据单元(诸如编码单元、预测单元或变换单元)来执行帧间预测和层间预测。
根据一个或多个实施例,视频编码设备10可通过针对参考层的图像执行包括帧间预测或帧内预测的源编码操作来产生符号数据。符号数据指示每个编码参数的样点值和残差的样点值。
例如,编码器13可通过针对参考层的图像对数据单元中的样点进行帧间 /帧内预测、变换及量化来产生符号数据并通过对符号数据进行熵编码来产生参考层流。
编码器13可基于树结构的编码单元对当前层的图像进行编码。编码器 13可通过针对当前层的图像对数据单元中的样点进行帧间/帧内预测、变换及量化来产生符号数据并通过对符号数据进行熵编码来产生当前层流。
根据一个或多个实施例,编码器13可通过使用参考层的图像的重构的样点来执行用于预测当前层的图像的层间预测。编码器13可通过使用参考层的重构的图像来产生当前层的预测图像并对在当前层的原始图像和预测图像之间的预测误差进行编码,以便通过层间预测结构按照当前层的图像序列对当前层的原始图像进行编码。
编码器13可针对每个块(诸如编码单元或预测单元)对当前层的图像进行层间预测。可确定当前层的图像所参考的参考层的图像的块。例如,可确定在与在当前层的图像中的当前块的位置相应的位置的参考层的图像的重构的块。编码器13可通过使用与当前层的块相应的参考层的重构的块来确定当前层的预测的块。
编码器13可将根据层间预测结构使用参考层的重构的块确定的当前层的预测的块用作对在当前层的原始块的层间预测的参考图像。通过使用参考层的重构的图像,编码器13可通过变换和量化对在当前层的预测的块的样点值和当前层的原始块的样点值之间的误差(即根据层间预测的残差分量)进行熵编码。
如上所述,编码器13可通过层间预测结构参照参考层的恢复的图像对当前层的图像序列进行编码。然而,根据一个或多个实施例,编码器13可根据单层预测结构对当前层的图像序列进行编码而不用参考另一层的样点。因此,应视为并非限制性地分析编码器13仅执行层间预测以对当前层的图像序列进行编码。
根据实施例,为了导出亮度补偿参数,应获得与当前层的当前块相应的参考层的重构的块的邻近像素的值。在这种情况下,可将视差矢量用于搜索与当前层的当前块相应的参考层的重构的块。在这里,可通过包括在比特流中来发送所述视差矢量或从其它编码信息中导出所述视差矢量。
视差矢量可具有分数单位(诸如四分之一像素或半像素)的精确度,因此,由在当前层的当前块的位置的视差矢量指示的位置可以是子像素的位置。然而,由于以整数像素为单位将第二层的当前块和第一层的参考块相互进行比较,应将参考块的位置确定为整数像素的位置。因此,不能将由视差矢量指示的子像素的位置照其原样使用。视频编码设备10可通过与内部或外部视频编码处理器相互配合来执行包括变换的视频编码操作以输出视频编码结果。视频编码设备10的内部视频编码处理器是单独的处理器并且可实现视频编码操作。此外,通过包括视频编码处理模块,视频编码设备10、中央处理单元或图形处理单元可实现基本的视频编码操作。
视差矢量确定器11可确定用于在属于当前层和参考层的图像之间的层间预测的具有以子像素为单位的分量的视差矢量。
整数像素位置确定器12可确定与由基于当前层的当前像素的位置确定的视差矢量指示的位置相应的参考层的整数像素的位置。
编码器13可通过使用与整数像素的确定的位置相应的参考层的候选区域的预测信息对当前层的图像进行编码。
现在将参照图1b至图3c详细描述视频编码设备10的操作。
图1b是用于描述根据一个或多个实施例的通过确定视差矢量执行编码的方法的流程图。
在操作S111,视频编码设备10可确定用于属于当前层和参考层的图像之间的层间预测的具有以子像素为单位的分量的视差矢量。参考层可指示不同于当前层的层。例如,当前层可以是与色彩图像相关的层,参考层可以是与深度图像相关的增强层。作为另一示例,当前层的图像和参考层的图像可具有不同的视点。
视差矢量可表示在针对多层彼此相应的位置之间的差。此外,视差矢量可被用于执行层间预测。
视差矢量可被用于在属于不同层的图像之间的层间预测。可选地,视差矢量可被用于在属于当前层和参考层的图像之间的层间预测。视频编码设备 10可将视差矢量用于预测当前层的当前块的运动信息、深度相关信息或残差图像数据。
视差矢量可以是多个维度的矢量。例如,视差矢量可以是二维的矢量。作为另一示例,视差矢量可以是三维的矢量。视差矢量可具有以子像素为单位的分量。
由于视差矢量可具有分数单位(诸如四分之一像素或半像素)的精确度,因此由在当前层的当前块的位置的视差矢量指示的位置可以是子像素的位置。然而,由于以整数像素为单位将第二层的当前块和第一层的参考块相互进行比较,因此应将参考块的位置确定为整数像素的位置。因此,不能将由视差矢量指示的子像素的位置照其原样使用。
视频编码设备10可通过使用属于第二层的图像对属于当前层的图像进行编码。视频编码设备10可通过使用属于参考层的图像预测属于当前层的图像。当视频编码设备10通过使用属于参考层的图像对属于当前层的图像进行编码时,可使用视差矢量。当视频编码设备10通过使用属于参考层的图像来预测属于当前层的图像时,可使用视差矢量。
当前将被编码的块可被称为当前块。
当对当前层的当前块进行编码时,视频编码设备10可使用相关于与当前层的当前块相应的参考层的候选区域的信息。
当预测当前层的当前块时,视频编码设备10可使用相关于与当前层的当前块相应的参考层的候选区域的信息。
例如,当预测当前层的当前块时,视频编码设备10可使用与参考层的候选区域相应的运动信息,其中,参考层的候选区域与当前层的当前块相应。
作为另一示例,当预测当前层的当前块时,视频编码设备10可使用与参考层的候选区域相应的深度相关信息,其中,参考层的候选区域与当前层的当前块相应。
作为另一示例,当预测当前层的当前块时,视频编码设备10可使用与参考层的候选区域相应的残差图像数据,其中,参考层的候选区域与当前层的当前块相应。
在操作S112,视频编码设备10可从当前层的当前像素中确定与由在操作S111确定的视差矢量指示的位置相应的参考层的整数像素的位置。
当对当前层的当前块进行编码时,视频编码设备10可使用视差矢量,以便当前层的当前块与参考层的候选区域彼此相应。
视频编码设备10可通过视差矢量将与当前层的当前块相应的参考层的区域确定为与当前层的当前块相应的参考层的候选区域。
当前层的当前块可包括多个像素。因此,视频编码设备10可将属于当前层的当前块的多个像素中的预定的一个的位置确定为当前块的参考位置。作为参考的预定像素可以是当前层的当前像素。视频编码设备10可基于当前层的当前像素的位置确定由在操作S411确定的视差矢量指示的位置。视频编码设备10可基于当前层的当前像素的位置确定与由在操作S411确定的视差矢量指示的位置相应的整数像素的位置。整数像素可位于参考层中。
当前层的当前像素的位置可位于当前层的当前块中。另外,当前层的当前像素的位置可以是在当前层的当前块中的预定位置。例如,当前层的当前像素的位置可位于当前层的当前块的左上端。作为另一示例,当前层的当前像素的位置可位于当前层的当前块的左下端。作为另一示例,当前层的当前像素的位置可位于当前层的当前块的右上端。作为另一示例,当前层的当前像素的位置可位于当前层的当前块的右下端。作为另一示例,当前层的当前像素的位置可位于当前层的当前块的中心。
视差矢量可具有以子像素为单位的分量。可选地,视差矢量可具有实数分量。可选地,视差矢量可具有分数单位(诸如四分之一像素或半像素)的精确度。因此,由在当前层的当前块的位置的视差矢量指示的位置可以是子像素的位置。然而,由于以整数像素为单位将第二层的当前块与第一层的参考块相互进行比较,因此参考块的位置应被确定为整数像素的位置。因此,视频编码设备10不能将由视差矢量指示的子像素的位置照其原样使用。因此,视频编码设备10可确定与由视差矢量指示的子像素的位置相应的整数像素的位置。
当视频编码设备10确定与由视差矢量指示的子像素的位置相应的整数像素的位置时,视频编码设备10可使用取整运算。
可选地,当视频编码设备10确定与由视差矢量指示的子像素的位置相应的整数像素的位置时,视频编码设备10可使用位移运算。
以下将详细描述视频编码设备10确定与由视差矢量指示的子像素的位置相应的整数像素的位置所依据的方法。
在操作S113,视频编码设备10可通过使用与在操作S112确定的整数像素的位置相应的参考层的候选区域的预测信息对当前层的图像进行编码。
视频编码设备10可确定与在操作S412确定的整数像素的位置相应的参考层的候选区域。随后,视频编码设备10可获得与参考层的确定的候选区域相应的预测信息。
预测信息可包括运动信息、深度相关信息及残差图像数据中的至少一个。
例如,视频编码设备10可获得与在操作S112确定的整数像素的位置相应的参考层的候选区域的运动信息。运动信息可包括运动矢量。随后,视频编码设备10可通过使用确定的运动信息来预测当前层的当前块的运动信息。
作为另一示例,视频编码设备10可获得与在操作S412确定的整数像素的位置相应的参考层的候选区域的深度相关信息。参考层可以是深度层。随后,视频编码设备10可通过使用确定的深度相关信息对当前层的当前块进行编码。可选地,视频编码设备10可通过使用确定的深度相关信息来预测当前层的当前块的深度相关信息。
作为另一示例,视频编码设备10可获得与在操作112确定的整数像素的位置相应的参考层的候选区域的残差图像数据。随后,视频编码设备10可通过使用确定的残差图像数据来预测当前层的当前块的残差图像数据。
在操作S412确定的整数像素可位于参考层的确定的候选区域中。另外,在操作S412确定的整数像素可位于在参考层的确定的候选区域中的预定位置。例如,在操作S412确定的整数像素可位于参考层的确定的候选区域的左上端。作为另一示例,在操作S412确定的整数像素可位于参考层的确定的候选区域的左下端。作为另一示例,在操作S412确定的整数像素可位于参考层的确定的候选区域的右上端。作为另一示例,在操作S412确定的整数像素可位于参考层的确定的候选区域的右下端。作为另一示例,在操作S412确定的整数像素可位于参考层的确定的候选区域的中心。
图2a是用于描述根据一个或多个实施例的通过确定与视差矢量相应的整数视差矢量来确定整数像素的位置的方法的流程图。
操作S211与操作S111相应,因此,为了整体描述的简洁,省略其详细描述。
在操作S212,视频编码设备10可确定与在操作S211确定的视差矢量相应的整数视差矢量。
整数视差矢量可具有作为其分量的整数。然而,视频编码设备10可具有包含以子像素为单位的分量的在操作S211确定的视差矢量。例如,视差矢量可具有分数单位(诸如四分之一像素或半像素)的精确度。
因此,当在操作S211确定的视差矢量的分量是整数时,与在操作S211 确定的视差矢量相应的整数视差矢量可与在操作S211确定的视差矢量相同。
然而,当在操作S211确定的视差矢量的分量不是整数时,与在操作S211 确定的视差矢量相应的整数视差矢量可不同于在操作S211确定的视差矢量。
当在操作S211确定的视差矢量的分量不是整数时,视频编码设备10可确定与在操作S211确定的视差矢量相应的整数视差矢量。
以下将参照图2b和图2c详细描述视频编码设备10确定整数视差矢量所依据的方法。
在操作S213,视频编码设备10可从当前层的当前像素中确定由在操作 S212确定的整数视差矢量指示的参考层的整数像素的位置。
当前层的当前像素可以是整数像素。因此,在当前层的当前像素中由在操作S212确定的整数视差矢量指示的参考层的像素的位置可以是整数像素的位置。
视频编码设备10可从当前层的当前像素中确定由在操作S212确定的整数视差矢量指示的参考层的像素的位置。在当前像素是整数像素时,由所述视差矢量指示的参考层的像素的位置可以是整数像素的位置。
图2b是用于描述根据一个或多个实施例的通过对子像素单位的视差矢量的x分量和y分量的取整运算来确定整数视差矢量的方法的流程图。
操作S221与操作S111相应,操作S223与操作S213相应,因此,为了整体描述的简洁,省略其详细描述。
在操作S222,视频编码设备10可通过对操作S221中确定的视差矢量的子像素单位的x分量和y分量的取整运算来确定整数视差矢量。
视频编码设备10可确定与在操作S221确定的视差矢量相应的矢量值。随后,视频编码设备10可对确定的矢量值的各个分量的值执行取整运算。随后,视频编码设备10可确定具有作为分量的值的整数视差矢量,其中,已经针对所述值执行取整运算。
图2c是用于描述根据一个或多个实施例的确定整数视差矢量的方法的流程图。
操作S231与操作S111相应,因此,为了整体描述的简洁,省略其详细描述。
在操作S232,视频编码设备10可从在操作S231中确定的视差矢量中确定视差矢量值。
可选地,视频编码设备10可确定在操作S231中确定的视差矢量的分量的值。在操作S231中确定的视差矢量的分量的数量可以是2个或更多个。
在操作S233,视频编码设备10可在操作S232中确定的视差矢量值上增加预定值。
例如,视频编码设备10可在操作S232中确定的视差矢量值上加1。作为另一示例,视频编码设备10可在操作S232中确定的视差矢量值上加2。
在操作S232中确定的视差矢量值上增加的预定值可以是1或2的n次幂 (n是整数)。
可选地,在操作S232中确定的视差矢量值上增加的预定值可以是1或2 的n次幂(n是负整数)。
在操作S232中确定的视差矢量值上增加的预定值可以与在操作S233被移位的位的数量相关。
例如,当在操作S233被移位的位的数量是k时,在操作S232确定的视差矢量值上增加的预定值可以是2的(k-1)次幂。作为另一示例,当在操作 S233被移位的位的数量是1时,在操作S232确定的视差矢量值上增加的预定值可以是1。作为另一示例,当在操作S233被移位的位的数量是2时,在操作S232确定的视差矢量值上增加的预定值可以是2。作为另一示例,当在操作S233被移位的位的数量是3时,在操作S232确定的视差矢量值上增加的预定值可以是4。
作为另一示例,当在操作S233被移位的位的数量是k时,在操作S232 中确定的视差矢量值上增加的预定值可以是通过在2的(k-1)次幂上加1获得的值。
作为另一示例,当在操作S233被移位的位的数量是k时,在操作S232 中确定的视差矢量值上增加的预定值可以是通过在2的(k-1)次幂上加2获得的值。
在操作S234,视频编码设备10可在位移运算中将在操作S233已经增加了预定值的值向右移位预定位。
可选地,视频编码设备10可在位移运算中将在操作S233已经增加了预定值的值向左移位预定位。
已经详细描述视频编码设备10如何确定将在操作S232中确定的视差矢量值上增加的预定值。
图3a是用于描述根据一个或多个实施例的通过使用整数像素的确定的位置来预测运动信息的方法的流程图。
操作S311和操作S312分别与操作S111和操作S112相应,因此,为了整体描述的简洁,省略其详细描述。
在操作S313,视频编码设备10可确定与参考层的候选区域相应的运动信息,其中,参考层的候选区域与在操作S312整数像素的确定的位置相应。
运动信息可包括运动矢量。已经如上描述运动信息、运动矢量及运动预测。
视频编码设备10可确定与在操作S312确定的整数像素的位置相应的参考层的候选区域。随后,视频编码设备10可获得与参考层的确定的候选区域相应的运动信息。可选地,视频编码设备10可获得被分配到参考层的确定的候选区域的运动信息。
通过使用根据一个或多个实施例的整数像素的确定的位置来预测运动信息的实施例可由下述伪代码表示。
xRefFull=xPb+(nPbW>>1)+((mvDisp[0]+2)>>2)
yRefFull=yPb+(nPbH>>1)+((mvDisp[1]+2)>>2)
当前将被编码的块可被称为当前块。当前块可以是当前层的图像的全部或部分区域。当视频编码设备10对当前层的当前块进行编码时,视频编码设备10可使用相关于与当前层的当前块相应的参考层的候选区域的信息。当前块可以是亮度块。
视频编码设备10可从当前层的当前像素中确定与由视差矢量指示的位置相应的参考层的整数像素的位置。
xPb可指示位于当前层的当前块中的预定位置的当前像素的水平轴位置。
yPb可指示位于当前层的当前块中的预定位置的当前像素的垂直轴位置。
nPbW可指示当前层的当前块的宽度。
nPbH可指示当前层的当前块的高度。
>>可指示位的向右移动。
<<可指示位的向左移动。
mvDisp可指示视差矢量。
((mvDisp[0]+2)>>2)可指示整数视差矢量的水平轴分量的值。
((mvDisp[1]+2)>>2)可指示整数视差矢量的垂直轴分量的值。
因此,执行通过增加2并执行向右移位2的移位运算来从视差矢量获得整数视差矢量的操作。
xRefFull可指示参考层的整数像素的水平轴位置。
yRefFull可指示参考层的整数像素的垂直轴位置。
此外,通过运算(诸如伪代码),视频编码设备10可基于当前像素的位置和视差矢量的值来确定位于参考层的图像中的整数像素的位置。此外,视频编码设备10可通过对视差矢量执行加法和移位运算来确定整数视差矢量。
在操作S314,视频编码设备10可通过使用在操作S313确定的运动信息来预测当前层的图像的运动信息。
视频编码设备10可通过使用在操作S313确定的运动信息对当前层的图像进行编码。
图3b是用于描述根据一个或多个实施例的通过使用整数像素的确定的位置确定深度相关信息并执行编码的方法的流程图。
操作S321和操作S322分别与操作S111和操作S112相应,因此,为了整体描述的简洁,省略其详细描述。
根据一个或多个实施例,视频编码设备10可从深度图像中获得深度信息并通过使用获得的深度信息确定视差矢量。随后,视频编码设备10可通过使用确定的视差矢量来确定参考层的候选区域。
在操作S323,视频编码设备10可确定与参考层的候选区域相应的深度相关信息,其中,参考层的候选区域与在操作S322确定的整数像素的位置相应。参考层可以是深度层。
深度相关信息可包括图像的深度信息。
视频编码设备10可确定与在操作S322确定的整数像素的位置相应的参考层的候选区域。随后,视频编码设备10可获得与参考层的确定的候选区域相应的深度相关信息。
在操作S324,视频编码设备10可通过使用在操作S323确定的深度相关信息对当前层的图像进行编码。
可选地,视频编码设备10可通过使用确定的深度相关信息来预测当前层的当前块的深度相关信息。
通过使用根据一个或多个实施例的整数像素的确定的位置来预测深度相关信息的实施例可由下述伪代码表示。
xTL=xP+((mvDisp[0]+2)>>2)
yTL=yP+((mvDisp[1]+2)>>2)
当前将被编码的块可被称为当前块。当前块可以是色彩图像的全部或部分区域。当视频编码设备10对色彩图像的当前块进行编码时,视频编码设备 10可使用相关于与色彩图像的当前块相应的深度图像的候选区域的信息。
视频编码设备10可从色彩图像的当前像素中确定与由视差矢量指示的位置相应的深度图像的整数像素的位置。
xP可指示位于色彩图像的当前块中的预定位置的当前像素的水平轴位置。
yP可指示位于色彩图像的当前块中的预定位置的当前像素的垂直轴位置定位置的当前像素的垂直轴位置。
>>可指示位的向右移动。
<<可指示位的向左移动。
mvDisp可指示视差矢量。
((mvDisp[0]+2)>>2)可指示整数视差矢量的水平轴分量的值。
((mvDisp[1]+2)>>2)可指示整数视差矢量的垂直轴分量的值。
因此,执行通过增加2并执行向右移位2的移位运算来从视差矢量获得整数视差矢量的操作。
xTL可指示位于深度图像中的整数像素的水平轴位置。
yTL可指示位于深度图像中的整数像素的垂直轴位置。
此外,通过运算(诸如伪代码),视频编码设备10可基于当前像素的位置和视差矢量的值来确定位于深度图像中的整数像素的位置。此外,视频编码设备10可通过对视差矢量执行加法和移位运算来确定整数视差矢量。
图3c是用于描述根据一个或多个实施例的通过使用整数像素的确定的位置来预测残差图像数据的方法的流程图。
操作S331和操作S332分别与操作S111和操作S112相应,因此,为了整体描述的简洁,省略其详细描述。
在操作S333,视频编码设备10可确定与参考层的候选区域相应的残差图像数据,其中,参考层的候选区域与在操作S332确定的整数像素的位置相应。
视频编码设备10可确定与在操作S332确定的整数像素的位置相应的参考层的候选区域。随后,视频编码设备可获得与参考层的确定的候选区域相应的残差图像数据。
在操作S334,视频编码设备10可通过使用在操作S333确定的残差图像数据来预测当前层的图像的残差图像数据。
可选地,视频编码设备10可通过使用确定的运动信息对当前层的图像进行编码。
确定参考层的候选区域的位置以通过使用根据一个或多个实施例的整数像素的确定的位置预测残差图像数据的实施例可由下述伪代码表示。
xRef=Clip3(0,PicWidthInSamplesL-1,xP+(nPSW>>1)+ ((mvDisp[0]+2)>>2))
yRef=Clip3(0,PicHeightInSamplesL-1,yP+(nPSH>>1)+ ((mvDisp[1]+2)>>2))
当前将被编码的块可被称为当前块。当前块可以是当前层的图像的全部或部分区域。当视频编码设备10对当前层的当前块进行编码时,视频编码设备10可使用相关于与当前层的当前块相应的参考层的候选区域的信息。
视频编码设备10可从当前层的当前像素中确定与由视差矢量指示的位置相应的参考层的整数像素的位置。
xP可指示位于色彩图像的当前块中的预定位置的当前像素的水平轴位置。
yP可指示位于色彩图像的当前块中的预定位置的当前像素的垂直轴位置。
>>可指示位的向右移动。
<<可指示位的向左移动。
mvDisp可指示视差矢量。
((mvDisp[0]+2)>>2)可指示整数视差矢量的水平轴分量的值。
((mvDisp[1]+2)>>2)可指示整数视差矢量的垂直轴分量的值。
因此,可确定执行通过增加2并执行向右移位2的移位运算来从视差矢量获得整数视差矢量的操作。
xRef可指示参考层的整数像素的水平轴位置。
yRef可指示参考层的整数像素的垂直轴位置。
视频编码设备10可基于视差矢量来搜索与当前层的当前块相应的参考层的位置。当视频编码设备10搜索与当前层的当前块相应的参考层的位置时,视频编码设备10可使用整数视差矢量。可通过对视差矢量的加法和移位运算来确定整数视差矢量。视频编码设备10可从与参考层的位置相应的候选区域中获得残差图像数据,其中,参考层的位置与当前层的当前块相应。视频编码设备10可通过使用获得的残差图像数据来预测当前块的残差图像数据。
图4a是用于描述根据一个或多个实施例的视频解码设备40的配置的框图。
如图4a所示,视频解码设备40可包括视差矢量获取器41、整数像素位置确定器42及解码器43。然而,可通过比所示出的组件更多或更少的组件来实施视频解码设备40。
根据一个或多个实施例,视频解码设备40可接收根据可伸缩编码方法的针对每个层的比特流。由视频解码设备40接收到的比特流的层数不受限制。
基于空间可伸缩性的视频解码设备40可接收在其中不同分辨率的图像序列被编码到不同层的流。可通过对参考层流进行解码来重构低分辨率图像序列,并且可通过对当前层流进行解码来重构高分辨率图像序列。
可根据可伸缩视频编码方法对多视点视频进行解码。当立体视频流被接收为多层时,可通过对参考层流进行解码来重构左视点图像。除参考层流以外,可通过进一步对当前层流进行解码来重构右视点图像。
可选地,当多视点视频流被接收为多层时,可通过对参考层流进行解码来重构中心视点图像。除参考层流以外,可通过对当前层流进行解码来重构左视点图像。除参考层流以外,可通过进一步对参考层流进行解码来重构右视点图像。
可执行基于时间可伸缩性的可伸缩视频编码方法。可通过对参考层流进行解码来重构基本帧率的图像。除参考层流以外,可通过进一步对当前层流进行解码来重构高速帧率的图像。
此外,在当前层的数量是3个或更多个时,可从参考层流中重构参考层的图像,并且可通过参照参考层的重构的图像进一步对当前层流进行解码来进一步重构当前层的图像。可通过参照当前层的重构的图像进一步对第k层流进行解码来进一步重构第k层的图像。
视频解码设备40可从参考层流和当前层流中获得参考层的图像和当前层的图像的编码的数据并进一步获得通过帧间预测产生的运动矢量和通过层间预测产生的预测信息。
例如,视频解码设备40可对针对每个层进行帧间预测的数据进行解码并对多个层之间进行层间预测的数据进行解码。可基于编码单元或预测单元执行通过运动补偿和层间解码的重构。
针对每个层流,可通过参照重构的经过同一层的帧间预测而预测出的图像执行针对当前图像的运动补偿来重构图像。运动补偿指示通过将使用当前图像的运动矢量确定的参考图像和当前图像的残差分量合成来重新配置当前图像的重构的图像的操作。
此外,视频解码设备40可通过参照参考层的图像执行层间解码以重构通过层间预测而预测出的当前层的图像。层间解码指示通过将被确定用于预测当前图像的另一层的参考图像和当前图像的残差分量合成来重新配置当前图像的重构的图像的操作。
根据实施例,视频解码设备40可执行用于重构通过参照当前层的图像而预测的参考层的图像的层间解码。
然而,根据一个或多个实施例,即使不用参照参考层的图像序列,解码器43也可对当前层流进行解码。因此,应视为并非限制性地分析解码器43 执行层间预测以对当前层的图像序列进行解码。
视频解码设备40针对每个块对视频的每个图像进行解码。块可以是根据树结构的编码单元之中的LCU、编码单元、预测单元、变换单元等。
解码器43可通过使用参考层的解析后的图像的编码符号对参考层的图像进行解码。如果视频解码设备40基于树结构的编码单元接收编码的流,则解码器43可针对参考层流的每个LCU基于树结构的编码单元执行解码。
解码器43可通过针对每个LCU执行熵解码来获得编码信息和编码的数据。解码器43可通过对从流中获得的编码的数据执行反量化和逆变换来重构残差分量。根据另一实施例,解码器43可直接接收量化后的变换系数的比特流。作为对量化后的变换系数的反量化和逆变换的结果,可重构图像的残差分量。
解码器43可通过在同一层中的图像之间的运动补偿将预测的图像和残差分量组合来重构参考层的图像。
解码器43可根据层间预测结构通过使用参考层的重构的图像的样点来产生当前层的预测的图像。解码器43可通过对当前层流进行解码来根据层间预测获得预测误差。解码器43可通过将预测误差与当前层的预测的图像组合来产生当前层的重构的图像。
解码器43可通过使用参考层的解码后的重构的图像来确定当前层的预测的图像。解码器43可根据层间预测结构来确定当前层的图像的块(诸如编码单元或预测单元)所参照的参考层的图像的块。例如,可确定在与当前层的图像的当前块的位置相应的位置的参考层的图像的重构的块。解码器43可通过使用与当前层的块相应的参考层的重构的块来确定当前层的预测的图像。
解码器43可将根据层间预测结构使用参考层的重构的块确定的当前层的预测的块用作针对当前层的原始块的层间预测的参考图像。在这种情况下,解码器43可根据层间预测通过将使用参考层的重构的块确定的当前层的预测的块的样点值和残差分量综合来重构当前层的块。
根据空间可伸缩视频编码方法,当解码器43重构具有与当前层的图像的分辨率不同的分辨率的参考层的图像时,解码器43可对参考层的重构的图像进行插值以调整参考层的重构的图像的尺寸,使得参考层的重构的图像与当前层的原始图像具有相同的分辨率。插值的参考层的重构的图像可被确定为用于层间预测的当前层的预测的图像。
视频解码设备40可接收数据流。由视频解码设备40接收的数据流可包括网络抽象层(NAL)单元。
NAL单元可指示形成比特流的基本单元。此外,一个或多个NAL单元可形成数据流。视频解码设备40可从外部接收包括一个或多个NAL单元的数据流。
视频解码设备40可接收数据流,将数据流分成NAL单元并对每个分开的 NAL单元进行解码。
每个NAL单元可包括2字节的头信息。此外,视频解码设备40可通过对包括在每个NAL单元中的2字节的头信息进行解码来确定关于在每个NAL单元内部的数据的简要信息。
视差矢量获取器41可针对在属于当前层和参考层的图像之间的层间预测获得具有以子像素为单位的分量的视差矢量。
整数像素位置确定器42可确定与从当前层的当前像素中获得的视差矢量指示的位置相应的参考层的整数像素的位置。
解码器43可通过使用与整数像素的确定的位置相应的参考层的候选区域的预测信息对当前层的图像进行解码。
视频解码设备40可对与层间预测相关的图像进行解码。
现在将参照图4b至图6c详细描述视频解码设备40的操作。
图4b是用于描述根据一个或多个实施例的通过获得视差矢量来执行解码的方法的流程图。
在操作S411,视频解码设备40可获得用于在属于当前层和参考层的图像之间的层间预测的具有以子像素为单位的分量的视差矢量。
参考层可指示与当前层不同的层。例如,当前层可以是与色彩图像相关的层,参考层可以是与深度图像相关的层。作为另一示例,当前层的图像和参考层的图像可具有不同的视点。
视差矢量可表示在针对多个层彼此相应的位置之间的差。此外,视差矢量可被用于执行层间预测。
视差矢量可被用于在属于不同层的图像之间的层间预测。可选地,视差矢量可被用于在属于当前层和参考层的图像之间的层间预测。
视差矢量可以是多个维度的矢量。例如,视差矢量可以是二维的矢量。作为另一示例,视差矢量可以是三维的矢量。视差矢量可具有以子像素为单位的分量。
由于视差矢量可具有分数单位(诸如四分之一像素或半像素)的精确度,因此由在当前层的当前块的位置的视差矢量指示的位置可以是子像素的位置。然而,由于以整数像素为单位将第二层的当前块和第一层的参考块相互进行比较,因此参考块的位置应被确定为整数像素的位置。因此,不能将由视差矢量指示的子像素的位置照其原样使用。
视频解码设备40可通过使用属于第二层的图像对属于当前层的图像进行解码。视频解码设备40可通过使用属于参考层的图像来预测属于当前层的图像。当视频解码设备40通过使用属于参考层的图像对属于当前层的图像进行解码时,可使用视差矢量。当视频解码设备40通过使用属于参考层的图像预测属于当前层的图像时,可使用视差矢量。
当前将被解码的块可被称为当前块。
当对当前层的当前块进行解码时,视频解码设备40可使用相关于与当前层的当前块相应的参考层的候选区域的信息。
例如,当对当前层的当前块进行解码时,视频解码设备40可使用与参考层的候选区域相应的运动信息,其中,参考层的候选区域与当前层的当前块相应。
作为另一示例,当对当前层的当前块进行解码时,视频解码设备40可使用与参考层的候选区域相应的深度相关信息,其中,参考层的候选区域与当前层的当前块相应。
作为另一示例,当对当前层的当前块进行解码时,视频解码设备40可使用与参考层的候选区域相应的残差图像数据信息,其中,参考层的候选区域与当前层的当前块相应。
当对当前层的当前块进行预测时,视频解码设备40可使用相关于与当前层的当前块相应的参考层的候选区域的信息。
例如,当对当前层的当前块进行预测时,视频解码设备40可使用与参考层的候选区域相应的运动信息,其中,参考层的候选区域与当前层的当前块相应。
作为另一示例,当对当前层的当前块进行预测时,视频解码设备40可使用与参考层的候选区域相应的深度相关信息,其中,参考层的候选区域与当前层的当前块相应。
作为另一示例,当对当前层的当前块进行预测时,视频解码设备40可使用与参考层的候选区域相应的残差图像数据,其中,参考层的候选区域与当前层的当前块相应。
在操作S412,视频解码设备40可从当前层的当前像素中确定与由在操作S411获得的视差矢量指示的位置相应的参考层的整数像素的位置。
当对当前层的当前块进行解码时,视频解码设备40可使用视差矢量以便当前层的当前块与参考层的候选区域彼此相应。
视频解码设备40可通过视差矢量将与当前层的当前块相应的参考层的区域确定为与当前层的当前块相应的参考层的候选区域。
当前层的当前块可包括多个像素。因此,视频解码设备40可将属于当前层的当前块的多个像素中的预定的一个的位置确定为当前块的参考位置。作为参考的预定的像素可以是当前层的当前像素。视频编码设备10可基于当前层的当前像素的位置确定由在操作S411获得的视差矢量指示的位置。视频解码设备40可基于当前层的当前像素的位置确定与由在操作S411获得的视差矢量指示的位置相应的整数像素的位置。整数像素可位于参考层中。
当前层的当前像素的位置可位于当前层的当前块中。此外,当前层的当前像素的位置可以是在当前层的当前块中的预定位置。例如,当前层的当前像素的位置可位于当前层的当前块的左上端。作为另一示例,当前层的当前像素的位置可位于当前层的当前块的左下端。作为另一示例,当前层的当前像素的位置可位于当前层的当前块的右上端。作为另一示例,当前层的当前像素的位置可位于当前层的当前块的右下端。作为另一示例,当前层的当前像素的位置可位于当前层的当前块的中心。
视差矢量可具有以子像素为单位的分量。可选地,视差矢量可具有实数分量。可选地,视差矢量可具有分数单位(诸如四分之一像素或半像素)的精确度。因此,由在当前层的当前块的位置的视差矢量指示的位置可以是子像素的位置。然而,由于以整数像素为单位将第二层的当前块与第一层的参考块相互进行比较,因此参考块的位置应被确定为整数像素的位置。因此,视频解码设备40不能将由视差矢量指示的子像素的位置照其原样使用。因此,视频解码设备40可确定与由视差矢量指示的子像素的位置相应的整数像素的位置。
当视频解码设备40确定与由视差矢量指示的子像素的位置相应的整数像素的位置时,视频解码设备40可使用取整运算。
可选地,当视频解码设备40确定与由视差矢量指示的子像素的位置相应的整数像素的位置时,视频解码设备40可使用位移运算。
以下将详细描述视频解码设备40确定与由视差矢量指示的子像素的位置相应的整数像素的位置所依据的方法。
在操作S413,视频解码设备40可通过使用与在操作S412确定的整数像素的位置相应的参考层的候选区域的预测信息对当前层的图像进行解码。
视频解码设备40可确定与在操作S412确定的整数像素的位置相应的参考层的候选区域。随后,视频解码设备40可获得与参考层的确定的候选区域相应的预测信息。
预测信息可包括运动信息、深度相关信息及残差图像数据中的至少一个。
例如,视频解码设备40可获得与在操作S412确定的整数像素的位置相应的参考层的候选区域的运动信息。运动信息可包括运动矢量。随后,视频解码设备40可通过使用获得的运动信息预测当前层的当前块的运动信息。
作为另一示例,视频解码设备40可获得与在操作S412确定的整数像素的位置相应的参考层的候选区域的深度相关信息。参考层可以是深度层。随后,视频解码设备40可通过使用获得的深度相关信息对当前层的当前块进行编码。可选地,视频解码设备40可通过使用获得的深度相关信息来预测当前层的当前块的深度相关信息。
作为另一示例,视频解码设备40可获得与在操作412确定的整数像素的位置相应的参考层的候选区域的残差图像数据。随后,视频解码设备40可通过使用获得的残差图像数据来预测当前层的当前块的残差图像数据。
在操作S412确定的整数像素可位于参考层的确定的候选区域中。另外,在操作S412确定的整数像素可位于在参考层的确定的候选区域中的预定位置。例如,在操作S412确定的整数像素可位于参考层的确定的候选区域的左上端。作为另一示例,在操作S412确定的整数像素可位于参考层的确定的候选区域的左下端。作为另一示例,在操作S412确定的整数像素可位于参考层的确定的候选区域的右上端。作为另一示例,在操作S412确定的整数像素可位于参考层的确定的候选区域的右下端。作为另一示例,在操作S412确定的整数像素可位于参考层的确定的候选区域的中心。
图5a是用于描述根据一个或多个实施例的通过确定与视差矢量相应的整数视差矢量来确定整数像素的位置的方法的流程图。
操作S511与操作S411相应,因此,为了整体描述的简洁,省略其详细描述。
在操作S512,视频解码设备40可确定与由在操作S511确定的视差矢量相应的整数视差矢量。
整数视差矢量可具有作为其分量的整数。然而,视频解码设备40可具有包含以子像素为单位的分量的在操作S511获得的视差矢量。例如,视差矢量可具有分数单位(诸如四分之一像素或半像素)的精确度。
因此,当在操作S511获得的视差矢量的分量是整数时,与在操作S511 获得的视差矢量相应的整数视差矢量可与在操作S511获得的视差矢量相同。
然而,当在操作S511获得的视差矢量的分量不是整数时,与在操作S511 获得的视差矢量相应的整数视差矢量可不与在操作S511获得的视差矢量相同。
当在操作S511获得的视差矢量的分量不是整数时,视频解码设备40可确定与在操作S511获得的视差矢量相应的整数视差矢量。
以下将参照图5b和图5c详细描述视频解码设备40确定整数视差矢量所依据的方法。
在操作S513,视频解码设备40可从当前层的当前像素中确定由在操作 S512获得的整数视差矢量指示的参考层的整数像素的位置。
当前层的当前像素可以是整数像素。因此,在当前层的当前像素中由在操作S512获得的整数视差矢量指示的参考层的像素的位置可以是整数像素的位置。
视频解码设备40可从当前层的当前像素中确定由在操作S512获得的整数视差矢量指示的参考层的像素的位置。在当前像素是整数像素时,由视差矢量指示的参考层的像素的位置可以是整数像素的位置。
图5b是用于描述根据一个或多个实施例的通过对子像素单位的视差矢量的x分量和y分量的执行取整运算来确定整数视差矢量的方法的流程图。
操作S521与操作S411相应,操作S523与操作S513相应,因此,为了整体描述的简洁,省略其详细描述。
在操作S522,视频解码设备40可通过对操作S521获得的子像素单位的视差矢量的x分量和y分量的取整运算来确定整数视差矢量。
视频解码设备40可确定与在操作S521获得的视差矢量相应的矢量值。随后,视频解码设备40可对确定的矢量值的各个分量的值执行取整运算。随后,视频解码设备40可确定具有作为分量的值的整数视差矢量,其中,针对所述值执行取整运算。
图5c是用于描述根据一个或多个实施例的确定整数视差矢量的方法的流程图。
操作S531与操作S411相应,因此,为了整体描述的简洁,省略其详细描述。
在操作S532,视频解码设备40可从在操作S531获得的视差矢量中确定视差矢量值。
可选地,视频解码设备40可确定在操作S531获得的视差矢量的分量的值。在操作S531获得的视差矢量的分量的数量可以是2个或更多个。
在操作S533,视频解码设备40可在操作S532获得的视差矢量值上增加预定值。
例如,视频解码设备40可在操作S532获得的视差矢量值上加1。作为另一示例,视频解码设备40可在操作S532获得的视差矢量值上加2。
在操作S532获得的视差矢量值上增加的预定值可以是1或2的n次幂(n 是整数)。
可选地,在操作S532获得的视差矢量值上增加的预定值可以是1或2 的n次幂(n是负整数)。
在操作S532获得的视差矢量值上增加的预定值可以与在操作S533被移位的位的数量相关。
例如,当在操作S533被移位的位的数量是k时,在操作S532获得的视差矢量值上增加的预定值可以是2的(k-1)次幂。作为另一示例,当在操作 S533被移位的位的数量是1时,在操作S532获得的视差矢量值上增加的预定值可以是1。作为另一示例,当在操作S533被移位的位的数量是2时,在操作S532获得的视差矢量值上增加的预定值可以是2。作为另一示例,当在操作S533被移位的位的数量是3时,在操作S532获得的视差矢量值上增加的预定值可以是4。
作为另一示例,当在操作S533被移位的位的数量是k时,在操作S532 获得的视差矢量值上增加的预定值可以是通过在2的(k-1)次幂上加1获得的值。
作为另一示例,当在操作S533被移位的位的数量是k时,在操作S532 获得的视差矢量值上增加的预定值可以是通过在2的(k-1)次幂上加2获得的值。
在操作S534,视频解码设备40可在位移运算中将在操作S533中已经增加了预定值的值向右移位预定位。
可选地,视频解码设备40可在位移运算中将在操作S533中已经增加了预定值的值向左移位预定位。
已经详细描述视频解码设备40如何确定将在操作S532获得的视差矢量值上增加的预定值。
图6a是用于描述根据一个或多个实施例的通过使用整数像素的确定的位置来预测运动信息的方法的流程图。
操作S611和操作S612分别与操作S411和操作S412相应,因此,为了整体描述的简洁,省略其详细描述。
在操作S613,视频解码设备40可获得与参考层的候选区域相应的运动信息,其中,参考层的候选区域与在操作S612确定的整数像素的位置相应。
运动信息可包括运动矢量。如上已经描述了运动信息、运动矢量及运动预测。
视频解码设备40可确定与在操作S612确定的整数像素的位置相应的参考层的候选区域。随后,视频解码设备40可获得与参考层的确定的候选区域相应的运动信息。可选地,视频解码设备40可获得被分配到参考层的确定的候选区域的运动信息。
在操作S614,视频解码设备40可通过使用在操作S613获得的运动信息来预测当前层的图像的运动信息。
视频解码设备40可通过使用在操作S613获得的运动信息对当前层的图像进行编码。
通过使用根据一个或多个实施例的整数像素的确定的位置来预测运动信息的实施例可由下述伪代码表示。
xRefFull=xPb+(nPbW>>1)+((mvDisp[0]+2)>>2)
yRefFull=yPb+(nPbH>>1)+((mvDisp[1]+2)>>2)
当前将被编码的块可被称为当前块。当前块可以是当前层的图像的全部或部分区域。当视频解码设备40对当前层的当前块进行解码时,视频解码设备40可使用相关于与当前层的当前块相应的参考层的候选区域的信息。当前块可以是亮度块。
视频解码设备40可从当前层的当前像素中确定与由视差矢量指示的位置相应的参考层的整数像素的位置。
xPb可指示位于当前层的当前块中的预定位置的当前像素的水平轴位置。
yPb可指示位于当前层的当前块中的预定位置的当前像素的垂直轴位置。
nPbW可指示当前层的当前块的宽度。
nPbH可指示当前层的当前块的高度。
>>可指示位的向右移动。
<<可指示位的向左移动。
mvDisp可指示视差矢量。
((mvDisp[0]+2)>>2)可指示整数视差矢量的水平轴分量的值。
((mvDisp[1]+2)>>2)可指示整数视差矢量的垂直轴分量的值。
因此,执行通过增加2并执行向右移位2的移位运算来从视差矢量中获得整数视差矢量的操作。
xRefFull可指示参考层的整数像素的水平轴位置。
yRefFull可指示参考层的整数像素的垂直轴位置。
此外,通过诸如伪代码的运算,视频解码设备40可基于当前像素的位置和视差矢量的值来确定位于参考层的图像中的整数像素的位置。此外,视频解码设备40可通过对视差矢量执行加法和移位运算来确定整数视差矢量。
图6b是用于描述根据一个或多个实施例的通过使用整数像素的确定的位置确定与深度相关的信息并执行编码的方法的流程图。
操作S621和操作S622分别与操作S411和操作S412相应,因此,为了整体描述的简洁,省略其详细描述。
根据一个或多个实施例,视频解码设备40可从深度图像中获得深度信息并通过使用获得的深度信息确定视差矢量。随后,视频解码设备40可通过使用确定的视差矢量来确定参考层的候选区域。
在操作S623,视频解码设备40可获得与参考层的候选区域相应的深度相关信息,其中,参考层的候选区域与在操作S622确定的整数像素的位置相应。参考层可以是深度层。
深度相关信息可包括图像的深度信息。
视频解码设备40可确定与在操作S622确定的整数像素的位置相应的参考层的候选区域。随后,视频解码设备40可获得与参考层的确定的候选区域相应的深度相关信息。
在操作S624,视频解码设备40可通过使用在操作S613获得的深度相关信息对当前层的图像进行解码。
可选地,视频解码设备40可通过使用获得的深度相关信息来预测当前层的当前块的深度相关信息。
通过使用根据一个或多个实施例的整数像素的确定的位置来预测深度相关信息的实施例可由下述伪代码表示。
xTL=xP+((mvDisp[0]+2)>>2)
yTL=yP+((mvDisp[1]+2)>>2)
当前将被编码的块可被称为当前块。当前块可以是色彩图像的全部或部分区域。当视频解码设备40对色彩图像的当前块进行解码时,视频解码设备 40可使用相关于与色彩图像的当前块相应的深度图像的候选区域的信息。
视频解码设备40可从色彩图像的当前像素中确定与由视差矢量指示的位置相应的深度图像的整数像素的位置。
xP可指示位于色彩图像的当前块中的预定位置的当前像素的水平轴位置。
yP可指示位于色彩图像的当前块中的预定位置的当前像素的垂直轴位置定位置的当前像素的水平轴位置。
>>可指示位的向右移动。
<<可指示位的向左移动。
mvDisp可指示视差矢量。
((mvDisp[0]+2)>>2)可指示整数视差矢量的水平轴分量的值。
((mvDisp[1]+2)>>2)可指示整数视差矢量的垂直轴分量的值。
因此,执行通过增加2并执行向右移位2的移位运算来从视差矢量中获得整数视差矢量的操作。
xTL可指示位于深度图像中的整数像素的水平轴位置。
yTL可指示位于深度图像中的整数像素的垂直轴位置。
此外,通过诸如伪代码的运算,视频解码设备40可基于当前像素的位置和视差矢量的值来确定位于深度图像中的整数像素的位置。此外,视频解码设备40可通过对视差矢量执行加法和移位运算来确定整数视差矢量。
图6c是用于描述根据一个或多个实施例的通过使用整数像素的确定的位置来预测残差图像数据的方法的流程图。
操作S631和操作S632分别与操作S411和操作S412相应,因此,为了整体描述的简洁,省略其详细描述。
在操作S633,视频解码设备40可获得与参考层的候选区域相应的残差图像数据,其中,参考层的候选区域与在操作S632确定的整数像素的位置相应。
视频解码设备40可确定与在操作S632确定的整数像素的位置相应的参考层的候选区域。随后,视频解码设备40可获得与参考层的确定的候选区域相应的残差图像数据。
在操作S634,视频解码设备40可通过使用在操作S633获得的残差图像数据来预测当前层的图像的残差图像数据。
可选地,视频解码设备40可通过使用获得的运动信息对当前层的图像进行解码。
确定参考层的候选区域的位置以通过使用根据一个或多个实施例的整数像素的确定的位置来预测残差图像数据的实施例可由下述伪代码表示。
xRef=Clip3(0,PicWidthInSamplesL-1,xP+(nPSW>>1)+ ((mvDisp[0]+2)>>2))
yRef=Clip3(0,PicHeightInSamplesL-1,yP+(nPSH>>1)+ ((mvDisp[1]+2)>>2))
当前将被编码的块可被称为当前块。当前块可以是当前层的图像的全部或部分区域。当视频解码设备40对当前层的当前块进行解码时,视频解码设备40可使用相关于与当前层的当前块相应的参考层的候选区域的信息。
视频解码设备40可从当前层的当前像素中确定与由视差矢量指示的位置相应的参考层的整数像素的位置。
xP可指示位于色彩图像的当前块中的预定位置的当前像素的水平轴位置。
yP可指示位于色彩图像的当前块中的预定位置的当前像素的垂直轴位置。
>>可指示位的向右移动。
<<可指示位的向左移动。
mvDisp可指示视差矢量。
((mvDisp[0]+2)>>2)可指示整数视差矢量的水平轴分量的值。
((mvDisp[1]+2)>>2)可指示整数视差矢量的垂直轴分量的值。
因此,可确定执行通过增加2并执行向右移位2的移位运算来从视差矢量中获得整数视差矢量的操作。
xRef可指示参考层的整数像素的水平轴位置。
yRef可指示参考层的整数像素的垂直轴位置。
视频解码设备40可基于视差矢量来搜索与当前层的当前块相应的参考层的位置。当视频解码设备40搜索与当前层的当前块相应的参考层的位置时,视频解码设备40可使用整数视差矢量。可通过对视差矢量的加法和移位运算来确定整数视差矢量。视频解码设备40可从与参考层的位置相应的候选区域中获得残差图像数据,其中,参考层的位置与当前层的当前块相应。视频解码设备40可通过使用获得的残差图像数据来预测当前块的残差图像数据。
图7a是用于描述根据一个或多个实施例的视频解码设备40预测视差矢量所依据的方法的框图。
在操作S71,根据实施例,视频解码设备40确定与当前视点相应的深度图是否存在。
在操作S74,如果与当前视点相应的深度图存在,则根据实施例的视频解码设备40从与当前视点相应的参考视点的深度图中获得与当前块相应的位置的深度值并将获得的深度值变换为视差矢量。视频解码设备40将变换后的视差矢量确定为与当前视点相应的视差矢量。
在操作S75,如果与当前视点相应的深度图存在,则视频解码设备40按照时间或空间方向从邻近块中根据预定扫描顺序(例如,z扫描或光栅扫描) 搜索视差矢量,并通过使用获取的视差矢量来预测与当前视点相应的视差矢量。
在操作S75,如果预测出视差矢量,则视频解码设备40通过使用从与当前视点相应的参考视点的深度图中预测的视差矢量从深度图中获得与当前块相应的位置的深度值,并将获得的深度值变换为视差矢量。视频解码设备40 将变换后的视差矢量确定为与当前视点相应的视差矢量。
如果未从所述邻近块中获取视差矢量,则将视差矢量设置为(0,0)。
在操作S73,如果与当前视点相应的深度图不存在,则视频解码设备40 按照时间或空间方向从邻近块中根据预定扫描顺序(例如,z扫描或光栅扫描)搜索视差矢量,并通过使用获取的视差矢量来预测与当前视点相应的视差矢量。
根据已经参照图7a描述的预测视差矢量的方法,尽管能够使用深度图但是与当前视点相应的深度图不存在的情况和没有使用深度图的情况作同样处理。在这种情况下,由于相当复杂的操作是必要的,因此需要简单地检测视差矢量的方法。
因此,根据实施例,如果参考视点的深度图存在,则视频解码设备40 可简单地通过仅使用存在于参考视点中的深度图而不用使用关于邻近块的信息来导出视差矢量。因此,导出视差矢量的操作可具有低复杂性和提高的编码效率。
图7b是用于描述根据一个或多个实施例的视频解码设备40通过使用参考视点的深度图预测视差矢量所依据的方法的框图。
在操作S76,如果参考视点的深度图存在,则视频解码设备40可将作为与当前视点相应的示例的初始值设置为(0,0)。
作为另一示例,视频解码设备40可使用作为初始值的从参考视点的深度图的位深度的中间值(例如,当BitDepth指示当前深度图的位深度时,值(1 <<(BitDepth-1)))转换后的视差矢量的值。
作为另一示例,视频解码设备40可使用包括在比特流的头中被发送的初始值。
作为另一示例,视频解码设备40可计算全局视差矢量并将计算出的全局视差矢量用作初始值。
在操作S76,根据实施例,视频解码设备40可在与当前块相应的参考视点的深度区域中设置代表深度值。
例如,视频解码设备40可将在与当前块的深度图的区域中的全部像素的值进行比较并将具有最大值的深度值设置为代表深度值。作为另一示例,如果最大值的权重小于M,则可选择下一最大值作为代表深度值。
在操作S77,根据实施例,视频解码设备40可通过使用在与当前块相应的深度区域中的代表深度值来确定视差矢量。
例如,视频解码设备40可获得在与由初始值设置的位置相应的深度图的区域中的代表深度值,将代表深度值转换为视差矢量并确定当前块的视差矢量。
作为另一示例,图7c是用于描述根据一个或多个实施例的视频解码设备 40通过使用参考深度图来预测视差矢量所依据的方法的框图。
参照图7c,视频解码设备40可获得在与由初始值设置的视差矢量DV1 的位置相应的深度图区域83中的代表深度值,并将代表深度值转换为第一视差矢量DV2。
视频解码设备40可基于由第一视差矢量DV2指示的深度图区域84再次获得代表深度值并将获得的代表深度值转换为第二视差矢量。因此,视频解码设备40可将第二视差矢量确定为当前块的视差矢量。
如上所述,当参考视点的深度图不存在时,根据实施例的视频解码设备 40可简单地通过仅使用存在于参考视点中的深度图而不使用关于邻近块的信息来导出视差矢量。因此,导出视差矢量的操作可具有低复杂性和提高的编码效率。
图8是根据实施例的基于根据树结构的编码单元的视频编码设备100的框图。
涉及基于根据树结构的编码单元的视频预测的视频编码设备100包括编码单元确定器120和输出器130。在下文中,为便于描述,根据实施例的涉及基于根据树结构的编码单元的视频预测的视频编码设备100被称为“视频编码设备100”。
编码单元确定器120可基于作为针对图像的当前画面具有最大尺寸的编码单元的LCU来对当前画面进行划分。如果当前画面大于LCU,则可将当前画面的图像数据划分为至少一个LCU。根据一个或多个实施例的LCU可以是尺寸为32×32、64×64、128×128、256×256等的数据单元,其中,数据单元的形状是宽度和长度为2的若干次幂的正方形。
根据一个或多个实施例的编码单元可由最大尺寸和深度表征。深度表示编码单元从LCU被空间划分的次数,并且随着深度加深,根据深度的较深层编码单元可从LCU被划分到最小编码单元(SCU)。LCU的深度为最高深度, SCU的深度为最低深度。由于随着LCU的深度加深,与每个深度相应的编码单元的尺寸减小,因此与更高深度相应的编码单元可包括与更低深度相应的多个编码单元。
如上所述,当前画面的图像数据根据编码单元的最大尺寸被划分为LCU,并且每个LCU可包括根据深度被划分的较深层编码单元。由于根据深度对根据一个或多个实施例的LCU进行划分,因此可根据深度对包括在LCU中的空间域的图像数据进行分层地分类。
可预定编码单元的最大深度和最大尺寸,其中,所述最大深度和最大尺寸限制对LCU的高度和宽度进行分层划分的总次数。
编码单元确定器120对通过根据深度对LCU的区域进行划分而获得的至少一个划分区域进行编码,并根据所述至少一个划分区域来确定用于输出最终编码的图像数据的深度。换言之,编码单元确定器120根据当前画面的LCU 通过根据深度对在较深层编码单元中的图像数据进行编码并选择具有最小编码误差的深度来确定最终深度。确定的最终深度和根据确定的深度的编码的图像数据被输出到输出器130。
基于与等于或低于最大深度的至少一个深度相应的较深层编码单元,对 LCU中的图像数据进行编码,并且基于每个较深层编码单元将对图像数据进行编码的结果进行比较。在将较深层编码单元的编码误差进行比较之后,可选择具有最小编码误差的深度。可针对每个LCU选择至少一个最终深度。
随着编码单元根据深度而被分层地划分且编码单元的数量增加,LCU的尺寸被划分。另外,即使在一个LCU中编码单元与同一深度相应,也通过分别测量每个编码单元的图像数据的编码误差来确定是否将与同一深度相应的每个编码单元划分到更低深度。因此,即使当图像数据被包括在一个LCU中时,在一个LCU中编码误差可根据区域而不同,因此在图像数据中最终深度可根据区域而不同。因此,可在一个LCU中确定一个或多个最终深度,并且可根据至少一个最终深度的编码单元来对LCU的图像数据进行划分。
相应地,编码单元确定器120可确定包括在LCU中的具有树结构的编码单元。根据一个或多个实施例的“具有树结构的编码单元”包括在LCU中所包括的所有较深层编码单元之中的与被确定为最终深度的深度相应的编码单元。可根据LCU的相同区域中的深度来分层地确定最终深度的编码单元,并可在不同区域中独立地确定最终深度的编码单元。类似地,可从另一区域中的最终深度独立地确定在当前区域中的最终深度。
根据一个或多个实施例的最大深度是与从LCU到SCU的划分次数有关的索引。根据一个或多个实施例的第一最大深度可表示从LCU到SCU的划分总次数。根据一个或多个实施例的第二最大深度可表示从LCU到SCU的深度等级的总数。例如,当LCU的深度是0时,对LCU划分一次的编码单元的深度可被设置为1,对LCU划分两次的编码单元的深度可被设置为2。这里,如果 SCU是对LCU划分四次的编码单元,则存在深度0、1、2、3和4的5个深度等级,因此第一最大深度可被设置为4,第二最大深度可被设置为5。
可根据LCU执行预测编码和变换。还根据LCU,基于根据等于或小于最大深度的深度的较深层编码单元来执行预测编码和变换。
由于每当根据深度对LCU进行划分时,较深层编码单元的数量增加,因此对随着深度加深而产生的所有较深层编码单元执行包括预测编码和变换的编码。为了便于描述,在LCU中,现在将基于当前深度的编码单元来描述预测编码和变换。
视频编码设备100可不同地选择用于对图像数据进行编码的数据单元的尺寸或形状。为了对图像数据进行编码,执行诸如预测编码、变换和熵编码的操作,并且在此时,可针对所有操作使用相同的数据单元,或者可针对每个操作使用不同的数据单元。
例如,视频编码设备100不仅可选择用于对图像数据进行编码的编码单元,还可选择不同于编码单元的数据单元以便对在编码单元中的图像数据执行预测编码。
为了在LCU中执行预测编码,可基于与最终深度相应的编码单元(即,基于不再被划分成与更低深度相应的编码单元的编码单元)来执行预测编码。在下文中,不再被划分且成为用于预测编码的基本单元的编码单元现在将被称为“预测单元”。通过划分预测单元而获得的分区可包括预测单元或者通过对预测单元的高度和宽度中的至少一个进行划分而获得的数据单元。分区是编码单元的预测单元被划分的数据单元,预测单元可以是具有与编码单元相同的尺寸的分区。
例如,当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详细描述根据一个或多个实施例的LCU中的根据树结构的编码单元以及确定预测单元/分区和变换单元的方法。
编码单元确定器120可通过使用基于拉格朗日乘数的率失真优化来测量根据深度的较深层编码单元的编码误差。
输出器130在比特流中输出LCU的图像数据和关于根据深度的划分信息的信息,其中,基于由编码单元确定器120确定的至少一个深度对所述LCU 的图像数据进行编码。
可通过对图像的残差进行编码来获得编码的图像数据。
根据深度的划分信息可包括关于深度的信息、关于在预测单元中的分区模式、预测模式以及变换单元的尺寸的信息。
可通过使用根据深度的划分信息对关于最终深度的信息进行限定,其中,根据深度的划分信息指示是否对更低深度而不是当前深度的编码单元执行编码。如果当前编码单元的当前深度是所述深度,则对当前编码单元中的图像数据进行编码并输出所述图像数据,因此可对划分信息进行限定以不将当前编码单元划分到更低深度。可选地,如果当前编码单元的当前深度不是所述深度,则对更低深度的编码单元执行编码,因此可对划分信息进行限定以将当前编码单元划分以获得更低深度的编码单元。
如果当前深度不是所述深度,则对被划分为更低深度的编码单元的编码单元执行编码。由于更低深度的至少一个编码单元存在于当前深度的一个编码单元中,因此对更低深度的每个编码单元重复执行编码,因此可对具有相同深度的编码单元递归地执行编码。
由于针对一个LCU确定具有树结构的编码单元并且针对深度的编码单元确定至少一条划分信息,因此可针对一个LCU确定至少一条划分信息。另外,由于根据深度对LCU的图像数据进行分层划分,因此所述图像数据的深度可根据位置而不同,因此可针对所述图像数据设置深度和划分信息。
因此,输出器130可将相应深度和编码模式的相应编码信息分配给包括在LCU中的编码单元、预测单元和最小单元中的至少一个。
根据一个或多个实施例的最小单元是通过将构成最低深度的SCU划分为 4份而获得的正方形数据单元。可选地,根据实施例的最小单元可以是包括在LCU中的编码单元、预测单元、分区单元和变换单元的全部中可包括的最大正方形数据单元。
例如,由输出器130输出的编码信息可被分类为根据较深层编码单元的编码信息和根据预测单元的编码信息。根据较深层编码单元的编码信息可包括关于预测模式的信息和关于分区尺寸的信息。根据预测单元的编码信息可包括关于帧间模式的估计方向的信息、关于帧间模式的参考图像索引的信息、关于运动矢量的信息、关于帧内模式的色度分量的信息以及关于帧内模式的插值方法的信息。
根据画面、条带或GOP限定的关于编码单元的最大尺寸的信息和关于最大深度的信息可被插入到比特流的头、序列参数集或画面参数集。
还可通过比特流的头、序列参数集或画面参数集输出关于针对当前视频被许可的变换单元的最大尺寸的信息和关于变换单元的最小尺寸的信息。输出器130可对与预测相关的参考信息、预测信息和条带类型信息等进行编码并输出所述信息。
在视频编码设备100中,较深层编码单元可以是通过将更高深度的编码单元(上一层)的高度或宽度划分成两份而获得的编码单元。换言之,在当前深度的编码单元的尺寸是2N×2N时,更低深度的编码单元的尺寸是N×N。另外,具有尺寸为2N×2N的当前深度的编码单元可包括最多4个具有更低深度的编码单元。
因此,基于考虑当前画面的特征而确定的LCU的尺寸和最大深度,视频编码设备100可通过针对每个LCU确定具有最优形状和最优尺寸的编码单元来形成具有树结构的编码单元。另外,由于可通过使用各种预测模式和变换中的任意一个对每个LCU执行编码,因此可考虑各种图像尺寸的编码单元的特征来确定最优编码模式。
因此,如果以传统的宏块对具有高分辨率或大数据量的图像进行编码,则每个画面的宏块的数量极度增加。因此,针对每个宏块产生的压缩信息的条数增加,因此,难以发送压缩的信息并且数据压缩效率降低。然而,通过使用视频编码设备100,由于在考虑图像的尺寸的同时增加编码单元的最大尺寸,并同时在考虑图像的特征的同时调整编码单元,因此可提高图像压缩效率。
以上参照图4描述的视频编码设备40可包括与层的数量相应的视频编码设备100,以针对多层视频的每个层对单层图像进行编码。
当视频编码设备100对参考层的图像进行编码时,编码单元确定器120 可针对每个LCU确定用于针对根据树结构的每个编码单元的图像之间的预测的预测单元,并针对每个预测单元执行图像之间的预测。
即使当视频编码设备100对当前层的图像进行编码时,编码单元确定器 120可针对每个LCU确定根据树结构的编码单元和预测单元,并针对每个预测单元执行帧间预测。
视频编码设备100可对参考层的图像和当前层的图像之间的亮度差进行编码以对所述亮度差进行补偿。然而,可根据编码单元的编码模式来确定亮度差的编码。例如,可仅针对尺寸为2N×2N的预测单元执行亮度补偿。
图9是根据一个或多个实施例的基于具有树结构的编码单元的视频解码设备200的框图。
涉及基于具有树结构的编码单元的视频预测的视频解码设备200包括接收器210、图像数据和编码信息提取器220以及图像数据解码器230。在下文中,为便于描述,涉及基于根据树结构的编码单元的视频预测的视频解码设备200被称为“视频解码设备200”。
用于视频解码设备200的解码操作的各种术语(诸如编码单元、深度、预测单元、变换单元及关于各种编码模式的信息)的定义与参照图8和视频编码设备100描述的定义相同。
接收器210接收和解析编码的视频的比特流。图像数据和编码信息提取器220从解析的比特流中针对每个编码单元提取编码的图像数据,并将提取的图像数据输出到图像数据解码器230,其中,编码单元具有根据每个LCU 的树结构。图像数据和编码信息提取器220可从关于当前画面的头、序列参数集或画面参数集中提取关于当前画面的编码单元的最大尺寸的信息。
另外,图像数据和编码信息提取器220从解析的比特流中提取针对具有根据每个LCU的树结构的编码单元的最终深度和划分信息。提取的最终深度和划分信息被输出到图像数据解码器230。换言之,比特流中的图像数据被划分为LCU,使得图像数据解码器230针对每个LCU对图像数据进行解码。
可针对关于深度的至少一条信息来设置根据LCU的所述深度和划分信息,根据所述深度的划分信息可包括关于与所述深度相应的相应编码单元的分区模式的信息、关于预测模式的信息以及变换单元的划分信息。另外,根据深度的划分信息可被提取为关于深度的信息。
由图像数据和编码信息提取器220提取的根据每个LCU的所述深度和划分信息是当被确定为在编码器(诸如,视频编码设备100)根据每个LCU对根据深度的每个较深层编码单元重复地执行编码时产生最小编码误差的深度和划分信息。因此,视频解码设备200可通过根据产生最小编码误差的深度和编码模式对图像数据进行解码来重构图像。
由于根据编码模式的所述深度和编码信息可被分配给相应的编码单元、预测单元和最小单元之中的预定数据单元,因此图像数据和编码信息提取器220可根据预定数据单元提取所述深度和划分信息。如果根据预定数据单元记录相应LCU的深度和划分信息,则可将被分配了相同的深度和划分信息的预定数据单元推断为是包括在同一LCU中的数据单元。
基于根据LCU的所述深度和划分信息,图像数据解码器230通过对每个 LCU中的图像数据进行解码来重构当前画面。换言之,基于针对包括在每个 LCU中的具有树结构的编码单元之中的每个编码单元的关于分区模式、预测模式及变换单元的提取的信息,图像数据解码器230可对编码的图像数据进行解码。解码处理可包括预测(包含帧内预测和运动补偿)和逆变换。
基于关于根据深度的编码单元的预测单元的分区模式和预测模式的信息,图像数据解码器230可根据每个编码单元的分区和预测模式执行帧内预测或运动补偿。
另外,为了针对每个LCU的逆变换,图像数据解码器230可读取针对每个编码单元的关于根据树结构的变换单元的信息,以便基于针对每个编码单元的变换单元执行逆变换。经由逆变换,可重构编码单元的空间域的像素值。
图像数据解码器230可通过使用根据深度的划分信息来确定当前LCU的深度。如果划分信息指示在当前深度中图像数据不再被划分,则当前深度是所述深度。因此,针对与当前深度相应的每个编码单元,通过使用关于预测单元的分区模式的信息、关于预测模式的信息及变换单元的尺寸信息,图像数据解码器230可对当前LCU中的编码的数据进行解码。
换言之,可通过观察分配给编码单元、预测单元和最小单元之中的预定数据单元的编码信息集来收集包含包括相同划分信息的编码信息的数据单元,并且收集到的数据单元可被视为是将由图像数据解码器230按照相同编码模式进行解码的一个数据单元。这样,通过获得关于针对每个编码单元的编码模式的信息,可对当前编码单元进行解码。
以上参照图10描述的视频解码设备10可包括与视点的数量相应的视频解码设备200,以通过对接收到的参考层图像流和接收到的当前层图像流进行解码来重构参考层的图像和当前层的图像。
当接收到参考层图像流时,视频解码设备200的图像数据解码器230可将由图像数据和编码信息提取器220从参考层图像流中提取的参考层的图像的样点划分为LCU的根据树结构的编码单元。针对根据参考层的图像的样点的树结构的每个编码单元,图像数据解码器230可通过根据用于图像之间的预测的预测单元执行运动补偿来重构参考层的图像。
当接收到当前层图像流时,视频解码设备200的图像数据解码器230可将由图像数据和编码信息提取器220从当前层图像流中提取的当前层的图像的样点划分为根据LCU的树结构的编码单元。针对参考层的图像的样点的每个编码单元,图像数据解码器230可通过根据用于图像之间的预测的预测单元执行运动补偿来重构当前层的图像。
图像数据和编码信息提取器220可从比特流中获得与亮度误差相关的信息以对在参考层的图像与当前层的图像之间的亮度差进行补偿。然而,可根据编码单元的编码模式来执行亮度补偿。
作为结果,视频解码设备200可获得关于通过在编码操作中针对每个LCU 递归地执行编码已经发生最小编码误差的编码单元的信息,并使用获得的信息对当前画面进行解码。换言之,对在针对每个LCU的最优编码单元中被确定的根据树结构的编码单元的编码的图像数据进行解码是可能的。
因此,通过根据编码单元尺寸以及依据图像的特征自适应地确定的编码模式对图像数据进行有效地解码,甚至可重构高分辨率图像或具有过多数据量的图像。
图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中示出的最大深度表示从LCU到最小解码单元的划分总次数。
如果分辨率高或数据量大,则编码单元的最大尺寸可为大,以便不仅提高编码效率,而且精确地反映图像的特征。因此,具有比视频数据330更高分辨率的视频数据310和视频数据320的编码单元的最大尺寸可以是64。
由于视频数据310的最大深度是2,因此由于通过将LCU划分两次使深度加深至两层,因此视频数据310的编码单元315可包括长轴尺寸为64的 LCU和长轴尺寸为32和16的编码单元。由于视频数据330的最大深度是1,因此由于通过将LCU划分一次使深度加深至一层,因此视频数据330的编码单元335可包括长轴尺寸为16的LCU和长轴尺寸为8的编码单元。
由于视频数据320的最大深度是3,因此由于通过将LCU划分三次使深度加深至3层,因此视频数据320的编码单元325可包括长轴尺寸为64的 LCU和长轴尺寸为32、16和8的编码单元。随着深度加深,详细信息可被精确地表达。
图11是根据一个或多个实施例的基于编码单元的图像编码器400的框图。
图像编码器400执行对在视频编码设备100的编码单元确定器120中的图像数据进行编码所必需的操作。换言之,帧内预测器420对当前帧405之中根据预测单元的帧内模式下的编码单元执行帧内预测,帧间预测器415通过使用当前图像405和根据预测单元从重构画面缓冲器410中获得的参考图像对帧间模式下的编码单元进行帧间预测。当前图像405可被划分为LCU,然后LCU可被顺序编码。就此而言,可对被划分为具有树结构的编码单元的LCU进行编码。
通过从关于当前图像405的编码的编码单元的数据中移除关于从帧内预测器420或帧间预测器415中输出的每个模式的编码单元的预测数据来产生残差图像数据,并通过变换器425和量化器430将所述残差图像数据输出为根据变换单元的量化的变换系数。通过反量化器445和逆变换器450将量化的变换系数重构为在空间域中的残差图像数据。在空间域中重构的残差图像数据被添加到针对从帧内预测器420或帧间预测器415中输出的每个模式的编码单元的预测数据,并由此被重构为针对当前图像405的编码单元的在空间域中的数据。通过去块器455和样点自适应偏移(SAO)执行器460将在空间域中重构的数据产生为重构的图像,并且重构的图像被存储在重构画面缓冲器410中。存储在重构画面缓冲器410中的重构的图像可被用作针对另一图像的帧间预测的参考图像。可通过熵编码器435将由变换器425和量化器 40量化的变换系数输出为比特流440。
为了在视频编码设备100中应用图像编码器400,图像编码器400的所有元件(即帧间预测器415、帧内预测器420、变换器425、量化器430、熵编码器435、反量化器445、逆变换器450、去块器455及SAO执行器460) 根据每个LCU执行基于具有树结构的编码单元之中的每个编码单元的操作。
具体而言,帧内预测器410、运动估计器420及运动补偿器425在考虑当前LCU的最大尺寸和最大深度的同时确定具有树结构的编码单元之中的每个编码单元的分区和预测模式,变换器430确定在具有树结构的编码单元之中的每个编码单元中变换单元的尺寸。
具体而言,帧内预测器420和帧间预测器425可通过考虑当前LCU的最大尺寸和最大深度来确定在具有树结构的编码单元之中的每个编码单元的分区模式和预测模式,变换器425可确定是否划分在具有树结构的编码单元之中的每个编码单元中具有四叉树结构的变换单元。
图12是根据一个或多个实施例的基于编码单元的图像解码器500的框图。
熵解码器515从比特流505解析将被解码的编码的图像数据以及进行解码所需的关于编码的信息。编码的图像数据是量化的变换系数,其中,由反量化器520和逆变换器525从量化的变换系数中重构残差图像数据。
帧内预测器540根据每个预测单元对帧内模式下的编码单元执行帧内预测。通过使用从重构画面缓冲器530中获得的参考图像,帧间预测器535可针对每个预测单元对当前图像405之中在帧间模式下的编码单元执行帧间预测。
计算通过帧内预测器540或帧间预测器535的有关每个模式的编码单元的预测数据和残差图像数据的总和,由此可重构在有关当前图像405的编码单元的空间域中的数据,并且可通过去块器545和SAO执行器550将在空间域中的重构的数据输出为重构的图像。存储在重构画面缓冲器530中的重构的图像可被输出为参考图像。
为了对在视频解码设备200的图像数据解码器230中的图像数据进行解码,可执行在根据实施例的图像解码器500的熵解码器515之后的操作。
为了在根据实施例的视频解码设备200中应用图像解码器500,图像解码器500的所有元件(即熵解码器515、反量化器520、逆变换器525、帧间预测器535、去块器545及SAO执行器550)可针对每个CLU执行基于具有树结构的编码单元的操作。
具体而言,帧内预测器540和帧间预测器535可确定针对具有树结构的每个编码单元的分区模式和预测模式,逆变换器525可确定是否针对每个编码单元对具有四叉树结构的变换单元进行划分。
分别详细描述关于单层中的视频流编码操作和视频流解码操作的图10 的编码操作和图11的解码操作。因此,如果图4的编码器12对两层或更多层的视频流进行编码,则针对每层可包括图像编码器400。类似地,如果图 10的解码器26对两层或更多层的视频流进行解码,则针对每层可包括图像解码器500。
图13是根据一个或多个实施例的根据深度的较深层编码单元以及分区的示图。
视频编码设备100和视频解码设备200使用分层编码单元以便考虑图像的特征。可根据图像的特征自适应地确定编码单元的最大高度、最大宽度及最大深度,或可由用户不同地设置编码单元的最大高度、最大宽度及最大深度。可根据编码单元的预定最大尺寸来确定根据深度的较深层编码单元的尺寸。
在编码单元的分层结构600中,根据一个或多个实施例,编码单元的最大高度和最大宽度均是64,最大深度是3。在这种情况下,最大深度是指编码单元从LCU被划分到SCU的总次数。由于深度沿着分层结构600的垂直轴加深,因此较深层编码单元的高度和宽度均被划分。另外,预测单元和分区沿着分层结构600的水平轴被示出,其中,所述预测单元和分区是对每个较深层编码单元进行预测编码的基础。
换言之,在分层结构600中,编码单元610是LCU,其中,深度为0,尺寸(即,高度乘宽度)为64×64。深度沿着垂直轴(尺寸为32×32和深度为1的编码单元620、尺寸为16×16和深度为2的编码单元630、尺寸为8 ×8和深度为3的编码单元640)加深。尺寸为8×8和深度为3的编码单元 640是SCU。
编码单元的预测单元和分区根据每个深度沿着水平轴被排列。换言之,如果尺寸为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。
为了确定LCU 610的深度,视频编码设备100的编码单元确定器120针对与包括在LCU 610中的每个深度相应的编码单元执行编码。
随着深度加深,包括相同范围和相同尺寸的数据的根据深度的较深层编码单元的数量增加。例如,需要四个与深度2相应的编码单元来覆盖包括在与深度1相应的一个编码单元中的数据。因此,为了根据深度对相同数据的编码结果进行比较,与深度1相应的编码单元和四个与深度2相应的编码单元均被编码。
为了针对所述深度之中的当前深度执行编码,沿着分层结构600的水平轴,可通过针对在与当前深度相应的编码单元中的每个预测单元执行编码来针对当前深度选择最小编码误差。可选地,随着深度沿着分层结构600的垂直轴加深,可通过针对每个深度执行编码、对根据深度的最小编码误差进行比较来搜索最小编码误差。在LCU 610中具有最小编码误差的深度和分区可被选为LCU 610的深度和分区模式。
图14是用于描述根据一个或多个实施例的编码单元710与变换单元720 之间的关系的示图。
针对每个LCU,视频编码设备100或视频解码设备200根据具有小于或等于LCU的尺寸的编码单元对图像进行编码或解码。可基于不大于相应的编码单元的数据单元来选择用于在编码期间的变换的变换单元的尺寸。
例如,在视频编码设备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。图16仅示出通过对称地划分预测单元910 而获得的分区模式912至分区模式918,但是分区模式不限于此,并且预测单元910的分区可包括非对称分区、具有预定形状的分区以及具有几何形状的分区。
根据每种分区模式,对尺寸为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。
可对分区模式992至分区模式998之中尺寸为2N_(d-1)×2N_(d-1)的一个分区、尺寸为2N_(d-1)×N_(d-1)的两个分区、尺寸为N_(d-1)×2N_(d-1) 的两个分区、尺寸为N_(d-1)×N_(d-1)的四个分区重复地执行预测编码,以搜索具有最小编码误差的分区模式。
即使当分区模式998具有最小编码误差时,由于最大深度是d,因此深度为d-1的编码单元CU_(d-1)也不再被划分到更低深度,针对构成当前LCU 900的编码单元的深度被确定为d-1并且当前LCU 900的分区模式可被确定为N_(d-1)×N(d-1)。此外,由于最大深度是d并且具有最低深度d-1的SCU 980不再被划分到更低深度,因此不设置SCU 980的划分信息。
数据单元999可以是针对当前LCU的“最小单元”。根据一个或多个实施例的最小单元可以是通过将SCU 980划分成4份而获得的正方形数据单元。通过重复地执行编码,视频编码设备100可通过对根据编码单元900的深度的编码误差进行比较来选择具有最小编码误差的深度以确定深度,并将相应分区模式和预测模式设置为所述深度的编码模式。
这样,在所有深度1至d中对根据深度的最小编码误差进行比较,并且具有最小编码误差的深度可被确定为深度。所述深度、预测单元的分区模式以及预测模式可作为关于编码模式的信息被编码并发送。另外,由于编码单元从0的深度被划分到深度,因此仅深度的划分信息被设置为0,并且除了所述深度以外的深度的划分信息被设置为1。
视频解码设备200的图像数据和编码信息提取器220可提取并使用关于编码单元900的所述深度和预测单元的信息以对分区912进行解码。视频解码设备200可通过使用根据深度的划分信息,将划分信息为0的深度确定为深度,并且将相应深度的划分信息用于解码。
图17至图19是用于描述根据一个或多个实施例的编码单元1010、预测单元1060及变换单元1070之间的关系的示图。
编码单元1010是LCU中与由视频编码设备100确定的深度相应的具有树结构的编码单元。预测单元1060是每个编码单元1010的预测单元的分区,变换单元1070是每个编码单元1010的变换单元。
当在编码单元1010中LCU的深度是0时,编码单元1012和编码单元1054 的深度是1,编码单元1014、1016、1018、1028、1050和1052的深度是2,编码单元1020、1022、1024、1026、1030、1032和1048的深度是3,编码单元1040、1042、1044和1046的深度是4。
在预测单元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可对同一编码单元中的数据单元分别执行帧内预测、运动估计、运动补偿、变换和逆变换。
因此,对LCU的每个区域中具有分层结构的每个编码单元递归地执行编码以确定最优编码单元,从而可获得具有递归树结构的编码单元。编码信息可包括关于编码单元的划分信息、关于分区模式的信息、关于预测模式的信息以及关于变换单元的尺寸的信息。表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。
关于具有树结构的编码单元的编码信息可包括与深度相应的编码单元、预测单元和最小单元中的至少一个。与所述深度相应的编码单元可包括包含相同编码信息的预测单元和最小单元中的至少一个。
因此,通过对邻近数据单元的编码信息进行比较来确定邻近数据单元是否被包括在与所述深度相应的同一编码单元中。另外,通过使用数据单元的编码信息来确定与深度相应的相应编码单元,由此可确定LCU中的深度的分布。
因此,如果基于邻近数据单元的编码信息对当前编码单元进行预测,则可直接参照并使用与当前编码单元邻近的较深层编码单元中的数据单元的编码信息。
可选地,如果基于邻近数据单元的编码信息对当前编码单元进行预测,则使用数据单元的编码信息来搜索与当前编码单元邻近的数据单元,并可参照搜索到的邻近编码单元以对当前编码单元进行预测。
图20是用于描述根据表1的编码模式信息的编码单元、预测单元和变换单元之间的关系的示图。
LCU 1300包括深度的编码单元1302、1304、1306、1312、1314、1316 和1318。这里,由于编码单元1318是深度的编码单元,因此划分信息可被设置为0。可将关于尺寸为2N×2N的编码单元1318的分区模式的信息设置为以下分区模式中的一种:尺寸为2N×2N的分区模式1322、尺寸为2N×N 的分区模式1324、尺寸为N×2N的分区模式1326、尺寸为N×N的分区模式 1328、尺寸为2N×nU的分区模式1332、尺寸为2N×nD的分区模式1334、尺寸为nL×2N的分区模式1336以及尺寸为nR×2N的分区模式1338。
变换单元的划分信息(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尺寸标记为0时,如果限定最大TU尺寸标记为“MaxTransformSizeIndex”,最小变换单元尺寸为“MinTransformSize”,变换单元尺寸为“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描述的基于具有树结构的编码单元的视频编码方法,针对树结构的每个编码单元对空间域的图像数据进行编码。根据基于具有树结构的编码单元的视频解码方法,针对每个LCU执行解码以重构空间域的图像数据。因此,可重构画面和视频(即,画面序列)。重构的视频可由再现设备再现,存储在存储介质中,或者通过网络被发送。
本发明的实施例可被编写为计算机程序,并能够在使用计算机可读记录介质执行程序的通用数字计算机中被实现。计算机可读记录介质的示例包括存储介质,诸如磁存储介质(例如,ROM、软盘、硬盘等)和光记录介质(例如,CD-ROM或DVD)。
为便于描述,上述根据样点偏移的调整的视频编码方法将被称为“根据所述一个或多个实施例的视频编码方法”。此外,上述根据样点偏移的调整的视频解码方法将被称为“根据所述一个或多个实施例的视频解码方法”。
另外,上述包括视频编码设备40、视频编码设备100或图像编码器400 的视频编码设备将被称为“根据所述一个或多个实施例的视频编码设备”。另外,上述包括视频解码设备10、视频解码设备200或图像解码器500的视频解码设备将被称为“根据所述一个或多个实施例的视频解码设备”。
现在将详细描述根据一个或多个实施例的存储程序的计算机可读记录介质(例如,盘26000)。
图21是根据一个或多个实施例的存储程序的盘26000的物理结构的示图。作为存储介质的盘26000可以是硬盘驱动器、致密盘只读存储器(CD-ROM) 盘、蓝光盘或数字多功能盘(DVD)。盘26000包括多个同心磁道Tr,每个同心磁道Tr沿盘26000的圆周方向被划分成特定数量的扇区Se。在盘26000 的特定区域中,可分配并存储执行如上所描述的量化参数确定方法、视频编码方法和视频解码方法的程序。
现在将参照图22来描述使用存储用于执行如上所述的视频编码方法和视频解码方法的程序的存储介质而实施的计算机系统。
图22是通过使用盘26000来记录和读取程序的盘驱动器26800的示图。计算机系统26700可经由盘驱动器26800将执行根据一个或多个实施例的视频编码方法和视频解码方法中的至少一个的程序存储在盘26000中。为了在计算机系统26700中运行存储在盘26000中的程序,可通过使用盘驱动器 26800从盘26000中读取程序并将所述程序发送到计算机系统26700。
执行根据一个或多个实施例的视频编码方法和视频解码方法中的至少一个的程序不仅可被存储在图21或图22中示出的盘26000中,还可被存储在存储卡、ROM卡带或固态驱动器(SSD)中。
以下将描述应用上述视频编码方法和视频解码方法的系统。
图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)系统来对视频数据进行编码。
内容供应系统1100可对由用户使用视频相机12300、相机12600、移动电话12500或另一成像装置所记录的内容数据(例如,在音乐会期间记录的内容)进行编码,并将编码的内容数据发送到流服务器11300。流服务器11300 可将编码的内容数据以流内容的形式发送到请求内容数据的其它客户机。
客户机是能够对编码的内容数据进行解码的装置,例如,计算机12100、 PDA12200、视频相机12300或移动电话12500。因此,内容供应系统11000 允许客户机接收并再现编码的内容数据。此外,内容供应系统11000允许客户机实时接收编码的内容数据并对编码的内容数据进行解码和再现,从而能够进行个人广播。
包括在内容供应系统11000中的多个独立装置的编码和解码操作可类似于根据一个或多个实施例的视频编码设备和视频解码设备的编码和解码操作。
现在将参照图24和图25更详细地描述包括在根据一个或多个实施例的内容供应系统11000中的移动电话12500。
图24示出根据一个或多个实施例的应用了视频编码方法和视频解码方法的移动电话12500的外部结构。移动电话12500可以是智能电话,所述智能电话的功能不受限,并且所述智能电话的许多功能可被改变或扩展。
移动电话12500包括通过其可与图14的无线基站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被发送到中央控制器12710。在中央控制器12710的控制下,文本数据经由调制器/ 解调器12660和通信电路12610被变换成传输信号,并经由天线12510被发送到无线基站12000。
为了在数据通信模式下发送图像数据,由相机12530捕捉到的图像数据经由相机接口12630被提供给图像编码器12720。捕捉到的图像数据可经由相机接口12630和LCD控制器12620被直接显示在显示屏12520上。
图像编码器12720的结构可与以上描述的根据所述一个或多个实施例的视频编码方法的结构相应。图像编码器12720可基于以上描述的根据所述一个或多个实施例的视频编码方法将从相机12530接收到的图像数据变换为压缩和编码的图像数据,然后将编码的图像数据输出到复用器/解复用器12680。在相机12530的记录操作期间,由移动电话12500的麦克风12550获得的声音信号可经由声音处理器12650被变换成数字声音数据,并且数字声音数据可被发送到复用器/解复用器12680。
复用器/解复用器12680对从图像编码器12720接收到的编码的图像数据与从声音处理器12650接收到的声音数据一起进行复用。对数据进行复用的结果可经由调制器/解调器12660和通信电路12610被变换成传输信号,然后可经由天线12510被发送。
当移动电话12500从外部接收通信数据时,可对经由天线12510接收到的信号执行频率恢复和ADC以将所述信号变换成数字信号。调制器/解调器 12660对数字信号的频带进行调制。根据频带调制后的数字信号的类型将所述数字信号发送到视频解码单元12690、声音处理器12650或LCD控制器 12620。
在通话模式下,移动电话12500对经由天线12510接收到的信号进行放大,并通过对放大后的信号执行频率转换和ADC来获得数字声音信号。在中央控制器12710的控制下,接收到的数字声音信号经由调制器/解调器12660 和声音处理器12650被变换成模拟声音信号,并且模拟声音信号经由扬声器 12580被输出。
当在数据通信模式下时,接收在互联网网站访问的视频文件的数据,经由调制器/解调器12660将经由天线12510从无线基站12000接收到的信号输出为复用数据,并将复用数据发送到复用器/解复用器12680。
为了对经由天线12510接收到的复用数据进行解码,复用器/解复用器 12680将复用数据解复用成编码的视频数据流和编码的音频数据流。经由同步总线12730,编码的视频数据流和编码的音频数据流分别被提供给视频解码单元12690和声音处理器12650。
图像解码器12690的结构可与以上描述的根据所述一个或多个实施例的视频解码方法的结构相应。通过使用以上描述的根据所述一个或多个实施例的视频解码方法,图像解码器12690可对编码的视频数据进行解码以获得重构的视频数据并经由LCD控制器12620将重构的视频数据提供给显示屏 12520。
因此,可将在互联网网站访问的视频文件的数据显示在显示屏12520上。同时,声音处理器12650可将音频数据变换成模拟声音信号,并将模拟声音信号提供给扬声器12580。因此,也可经由扬声器12580再现在互联网网站访问的视频文件中包含的音频数据。
移动电话12500或另一类型的通信终端可以是包括根据一个或多个实施例的视频编码设备和视频解码设备两者的收发终端,可以是仅包括视频编码设备的收发终端,或者可以是仅包括视频解码设备的收发终端。
根据所述一个或多个实施例的通信系统不限于以上参照图24描述的通信系统。例如,图26示出根据一个或多个实施例的采用通信系统的数字广播系统。图26的数字广播系统可通过使用根据一个或多个实施例的视频编码设备和视频解码设备来接收经由卫星或地面网络发送的数字广播。
具体而言,广播站12890通过使用无线电波将视频数据流发送到通信卫星或广播卫星12900。广播卫星12900发送广播信号,广播信号经由天线12860 被发送到卫星广播接收器。在每个房屋中,可通过TV 12810、机顶盒12870 或另一装置对编码的视频流进行解码和再现。
当在再现设备12830中实施根据一个或多个实施例的视频解码设备时,再现设备12830可对记录在存储介质12820(诸如盘或存储卡)上的编码的视频流进行解析和解码以重构数字信号。因此,例如,可在监视器12840上再现重构的视频信号。
在被连接到用于卫星/地面广播的天线12860或用于接收有线电视(TV) 广播的线缆天线12850的机顶盒12870中,可安装根据一个或多个实施例的视频解码设备。从机顶盒12870输出的数据也可被再现在TV监视器12880上。
作为另一示例,可将根据一个或多个实施例的视频解码设备安装在TV 12810中,而不是机顶盒12870中。
具有天线12910的汽车12920可接收从卫星12900或无线基站11700发送的信号。可在安装在汽车12920中的汽车导航系统12930的显示屏上再现解码的视频。
视频信号可由根据一个或多个实施例的视频编码设备来编码,然后可被存储在存储介质中。具体而言,可由DVD记录器将图像信号存储在DVD盘12960 中,或可由硬盘记录器12950将图像信号存储在硬盘中。作为另一示例,可将视频信号存储在SD卡12970中。如果硬盘记录器12950包括根据一个或多个实施例的视频解码设备,则记录在DVD盘12960、SD卡12970或另一存储介质上的视频信号可被再现于TV监视器12880上。
汽车导航系统12930可不包括图26的相机12530、相机接口12630和图像编码器12720。例如,计算机12100和TV 12810可不包括图26的相机12530、相机接口12630和图像编码器12720。
图27是根据一个或个实施例的使用视频编码设备和视频解码设备的云计算系统的网络结构的示图。
云计算系统可包括云计算服务器14000、用户数据库(DB)14100、多个计算资源14200和用户终端。
响应于来自用户终端的请求,云计算系统经由数据通信网络(例如,互联网)提供多个计算资源14200的点播外包服务。在云计算环境下,服务提供商通过使用虚拟技术组合位于不同的物理位置的数据中心处的计算资源向用户提供期望的服务。服务用户不必将计算资源(例如,应用、存储器、操作系统(OS)和安全)安装在他/她自己的终端中以便使用它们,而是可在期望的时间点从在通过虚拟技术产生的虚拟空间中的服务之中选择和使用期望的服务。
被指定的服务用户的用户终端经由包括互联网和移动电信网络的数据通信网络被连接到云计算服务器14000。可从云计算服务器14000向用户终端提供云计算服务,特别是视频再现服务。用户终端可以是能够被连接到互联网的各种类型的电子装置,例如,桌上型PC 14300、智能TV 14400、智能电话14500、笔记本计算机14600、便携式多媒体播放器(PMP)14700、平板 PC 14800等。
云计算服务器14000可组合分布在云网络中的多个计算资源14200,并向用户终端提供组合的结果。所述多个计算资源14200可包括各种数据服务,并可包括从用户终端上载的数据。如上所述,云计算服务器14000可通过根据虚拟技术组合分布在不同区域中的视频数据库来向用户终端提供期望的服务。
将关于已经订购云计算服务的用户的用户信息存储在用户DB 14100中。用户信息可包括用户的登陆信息、地址、姓名和个人信用信息。用户信息还可包括视频的索引。这里,所述索引可包括已经被再现的视频的列表、正在被再现的视频的列表、之前被再现的视频的暂停点等。
可在用户装置之间共享存储在用户DB 14100中的关于视频的信息。例如,当响应于来自笔记本计算机14600的请求将视频服务提供给笔记本计算机 14600时,视频服务的再现历史被存储在用户DB 14100中。当从智能电话 14500接收到用于再现该视频服务的请求时,云计算服务器14000基于用户 DB 14100搜索并再现该视频服务。当智能电话14500从云计算服务器14000 接收到视频数据流时,通过对视频数据流进行解码来再现视频的处理与以上参照图24描述的移动电话12500的操作类似。
云计算服务器14000可参考存储在用户DB 14100中的期望的视频服务的再现历史。例如,云计算服务器14000从用户终端接收用于再现存储在用户 DB 14100中的视频的请求。如果该视频之前被再现过,则由云计算服务器 14000执行的对该视频进行流传输的方法可根据来自用户终端的请求(即,根据是将从视频的起点还是视频的暂停点来再现视频)而改变。例如,如果用户终端请求从视频的起点开始再现视频,则云计算服务器14000将从视频的第一帧开始的视频的流数据发送到用户终端。如果用户终端请求从视频的暂停点开始再现视频,则云计算服务器14000将从与暂停点相应的帧开始的视频的流数据发送到用户终端。
在这种情况下,用户终端可包括如上所述的视频解码设备。作为另一示例,用户终端可包括如上所述的视频编码设备。可选地,用户终端可包括如上所述的视频解码设备和视频编码设备两者。
上文已经参照图21至图27描述了的根据以上所述一个或多个实施例的视频编码方法、视频解码方法、视频编码设备和视频解码设备的各种应用。然而,根据各种实施例的将视频编码方法和视频解码方法存储在存储介质中的方法或者在装置中实施视频编码设备和视频解码设备的方法不限于以上参照图21至图27描述的实施例。
应理解:应仅在描述性意义上考虑在其中描述的示例性实施例而不是为了限制的目的。在各个实施例内对特征或各方面的描述通常应被视为针对在其它实施例中的其它相似特征或方面而言是可用的。
虽然已经参照附图描述了本发明的一个或多个实施例,但是本领域普通技术人员将理解:在不脱离由权利要求书限定的本发明的精神和范围的情况下,可在其中进行形式和细节上的各种改变。

Claims (10)

1.一种视频解码方法,包括:
获得用于在属于第一视点的参考层和第二视点的当前层的图像之间的层间预测的具有以子像素为单位的分量的视差矢量;
确定与当前层的当前像素中的视差矢量所指示的位置相应的参考层中包括的深度图图像的整数像素的位置;以及
通过使用关于与整数像素的确定的位置相应的参考层中包括的深度图图像的候选区域的深度相关信息,对当前层的图像进行解码,其中,深度相关信息与深度图图像中的值相关。
2.如权利要求1所述的视频解码方法,其中,确定整数像素的位置的步骤包括:
确定与获得的视差矢量相应的整数视差矢量;以及
确定从当前层的当前像素获得的整数视差矢量所指示的参考层中包括的深度图图像的整数像素的位置。
3.如权利要求2所述的视频解码方法,其中,确定整数视差矢量的位置的步骤包括:
通过对获得的视差矢量的x分量和y分量的子像素分量的取整运算,确定整数视差矢量。
4.如权利要求2所述的视频解码方法,其中,确定整数视差矢量的步骤包括:
从获得的视差矢量确定视差矢量值;
在获得的视差矢量值上增加预定值;以及
在位移运算中,将增加了所述预定值的值向右移位预定位。
5.如权利要求1所述的视频解码方法,其中,当前像素是在当前块的预定位置的像素。
6.如权利要求5所述的视频解码方法,其中,在预定位置的像素是在当前块的左上、左下、右上、右下和中心之中的预定位置的像素。
7.如权利要求1所述的视频解码方法,其中,参考层中包括的深度图图像的候选区域是深度图图像中的编码单元或预测单元。
8.一种视频编码方法,包括:
确定用于在属于第一视点的参考层和第二视点的当前层的图像之间的层间预测的具有以子像素为单位的分量的视差矢量;
确定与从当前层的当前像素的位置确定的视差矢量所指示的位置相应的参考层中包括的深度图图像的整数像素的位置;以及
通过使用关于与整数像素的确定的位置相应的参考层中包括的深度图图像的候选区域的深度相关信息,对当前层的图像进行编码,其中,深度相关信息与深度图图像中的值相关。
9.一种视频解码设备,包括:
视差矢量获取器,被配置用于获得用于在属于第一视点的参考层和第二视点的当前层的图像之间的层间预测的具有以子像素为单位的分量的视差矢量;
整数像素位置确定器,被配置用于确定与从当前层的当前像素的位置获得的视差矢量所指示的位置相应的参考层中包括的深度图图像的整数像素的位置;以及
通过使用关于与整数像素的确定的位置相应的参考层中包括的深度图图像的候选区域的深度相关信息,对当前层的图像进行解码,其中,深度相关信息与深度图图像中的值相关。
10.一种视频编码设备,包括:
视差矢量确定器,被配置用于确定用于在属于第一视点的参考层和第二视点的当前层的图像之间的层间预测的具有以子像素为单位的分量的视差矢量;
整数像素位置确定器,被配置用于确定与从当前层的当前像素的位置确定的视差矢量所指示的位置相应的参考层中包括的深度图图像的整数像素的位置;以及
编码器,被配置用于通过使用关于与整数像素的确定的位置相应的参考层中包括的深度图图像的候选区域的深度相关信息对当前层的图像进行编码,其中,深度相关信息与深度图图像中的值相关。
CN201480032642.8A 2013-04-05 2014-04-07 针对整数像素的位置对视频进行编码和解码的方法和设备 Expired - Fee Related CN105308970B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201361808808P 2013-04-05 2013-04-05
US61/808,808 2013-04-05
PCT/KR2014/003011 WO2014163466A1 (ko) 2013-04-05 2014-04-07 정수 픽셀의 위치와 관련하여 비디오의 부호화 및 복호화를 수행하는 방법과 그 장치

Publications (2)

Publication Number Publication Date
CN105308970A CN105308970A (zh) 2016-02-03
CN105308970B true CN105308970B (zh) 2018-11-23

Family

ID=51658680

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480032642.8A Expired - Fee Related CN105308970B (zh) 2013-04-05 2014-04-07 针对整数像素的位置对视频进行编码和解码的方法和设备

Country Status (5)

Country Link
US (1) US10469866B2 (zh)
EP (1) EP2983367A4 (zh)
KR (1) KR102186461B1 (zh)
CN (1) CN105308970B (zh)
WO (1) WO2014163466A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105308970B (zh) * 2013-04-05 2018-11-23 三星电子株式会社 针对整数像素的位置对视频进行编码和解码的方法和设备
EP3579553B1 (en) * 2018-06-05 2020-05-20 Axis AB A method, controller, and system for encoding a sequence of video frames
US11375182B2 (en) * 2019-12-17 2022-06-28 Hfi Innovation Inc. Method and apparatus of constrained layer-wise video coding

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101056398A (zh) * 2006-03-29 2007-10-17 清华大学 一种多视编码过程中获取视差矢量的方法及编解码方法
CN101420609A (zh) * 2007-10-24 2009-04-29 深圳华为通信技术有限公司 视频编码、解码方法及视频编码器、解码器
CN101483770A (zh) * 2008-01-08 2009-07-15 华为技术有限公司 一种编解码方法及装置
CN102510500A (zh) * 2011-10-14 2012-06-20 北京航空航天大学 一种基于深度信息的多视点立体视频错误隐藏方法
CN102685532A (zh) * 2012-06-04 2012-09-19 山东大学 自由视点四维空间视频编码系统的编码方法
WO2013039031A1 (ja) * 2011-09-15 2013-03-21 シャープ株式会社 画像符号化装置、画像復号装置、並びにそれらの方法及びプログラム

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1592248B1 (en) 2004-04-30 2006-09-20 Matsushita Electric Industrial Co., Ltd. Motion vector estimation employing adaptive temporal prediction
KR100738867B1 (ko) * 2005-04-13 2007-07-12 연세대학교 산학협력단 다시점 동영상 부호화/복호화 시스템의 부호화 방법 및시점간 보정 변이 추정 방법
KR101227601B1 (ko) 2005-09-22 2013-01-29 삼성전자주식회사 시차 벡터 예측 방법, 그 방법을 이용하여 다시점 동영상을부호화 및 복호화하는 방법 및 장치
WO2007110000A1 (en) 2006-03-29 2007-10-04 Huawei Technologies Co., Ltd. A method and device of obtaining disparity vector and its multi-view encoding-decoding
KR100934671B1 (ko) 2006-03-30 2009-12-31 엘지전자 주식회사 비디오 신호를 디코딩/인코딩하기 위한 방법 및 장치
CN101507284B (zh) * 2006-07-17 2012-06-27 汤姆森许可贸易公司 用于对视频颜色增强数据进行编码的方法和设备,以及用于对视频颜色增强数据进行解码的方法和设备
KR100941608B1 (ko) 2006-10-17 2010-02-11 경희대학교 산학협력단 다시점 영상의 부호화 및 복호화 방법과 그를 위한 장치
KR101370899B1 (ko) 2006-10-24 2014-03-10 엘지전자 주식회사 비디오 신호 디코딩 방법 및 장치
KR101369746B1 (ko) 2007-01-22 2014-03-07 삼성전자주식회사 적응적 보간 필터를 이용한 영상 부호화, 복호화 방법 및장치
EP2200321A1 (en) * 2008-12-19 2010-06-23 Thomson Licensing Method for browsing video streams
WO2010093745A1 (en) * 2009-02-12 2010-08-19 Dolby Laboratories Licensing Corporation Quality evaluation of sequences of images
US9270871B2 (en) * 2009-04-20 2016-02-23 Dolby Laboratories Licensing Corporation Optimized filter selection for reference picture processing
KR20110007928A (ko) * 2009-07-17 2011-01-25 삼성전자주식회사 다시점 영상 부호화 및 복호화 방법과 장치
DE102009041328A1 (de) * 2009-09-15 2011-03-24 Natural View Systems Gmbh Verfahren und Vorrichtung zum Erzeugen von Teilansichten und/oder einer Raumbildvorlage aus einer 2D-Ansicht für eine stereoskopische Wiedergabe
WO2011094034A2 (en) * 2010-01-27 2011-08-04 Dolby Laboratories Licensing Corporation Methods and systems for reference processing in image and video codecs
KR101628383B1 (ko) 2010-02-26 2016-06-21 연세대학교 산학협력단 영상 처리 장치 및 방법
CN103155568B (zh) * 2010-07-08 2016-07-27 杜比实验室特许公司 用于使用参考处理信号进行多层图像和视频传输的系统和方法
EP3661199A1 (en) * 2010-07-15 2020-06-03 GE Video Compression, LLC Hybrid video coding supporting intermediate view synthesis
CN103339943B (zh) * 2010-12-08 2017-06-13 Lg电子株式会社 内预测方法及使用该方法的编码装置和解码装置
KR101747434B1 (ko) * 2011-01-20 2017-06-16 연세대학교 산학협력단 움직임 정보 및 변이 정보를 부호화/복호화하는 영상 처리 장치 및 방법
US20120189060A1 (en) 2011-01-20 2012-07-26 Industry-Academic Cooperation Foundation, Yonsei University Apparatus and method for encoding and decoding motion information and disparity information
KR101956284B1 (ko) * 2011-06-30 2019-03-08 엘지전자 주식회사 보간 방법 및 이를 이용한 예측 방법
US9635355B2 (en) * 2011-07-28 2017-04-25 Qualcomm Incorporated Multiview video coding
US20130176390A1 (en) * 2012-01-06 2013-07-11 Qualcomm Incorporated Multi-hypothesis disparity vector construction in 3d video coding with depth
US20130271565A1 (en) * 2012-04-16 2013-10-17 Qualcomm Incorporated View synthesis based on asymmetric texture and depth resolutions
US9549180B2 (en) * 2012-04-20 2017-01-17 Qualcomm Incorporated Disparity vector generation for inter-view prediction for video coding
US9973751B2 (en) * 2012-08-16 2018-05-15 Vid Scale, Inc. Slice base skip mode signaling for multiple layer video coding
TW201424397A (zh) * 2012-09-28 2014-06-16 Samsung Electronics Co Ltd 可調式視訊解碼、編碼方法及其裝置與非暫時性電腦可讀記錄體
US9955177B2 (en) * 2012-11-15 2018-04-24 Mediatek Inc. Inter-layer texture coding with adaptive transform and multiple inter-layer motion candidates
US9667942B2 (en) * 2012-11-20 2017-05-30 Qualcomm Incorporated Adaptive luminance compensation in three dimensional video coding
US9357214B2 (en) * 2012-12-07 2016-05-31 Qualcomm Incorporated Advanced merge/skip mode and advanced motion vector prediction (AMVP) mode for 3D video
EP2961167A4 (en) * 2013-02-25 2016-08-10 Samsung Electronics Co Ltd DEVICE AND METHOD FOR EVOLVING VIDEO ENCODING USING MEMORY BANDWIDTH AND QUANTITY OF CALCULATION, AND DEVICE AND METHOD FOR EVOLVING VIDEO DECODING
US10034008B2 (en) * 2013-03-06 2018-07-24 Samsung Electronics Co., Ltd. Method and apparatus for scalable video encoding using switchable de-noising filtering, and method and apparatus for scalable video decoding using switchable de-noising filtering
US9800857B2 (en) * 2013-03-08 2017-10-24 Qualcomm Incorporated Inter-view residual prediction in multi-view or 3-dimensional video coding
CN105308970B (zh) * 2013-04-05 2018-11-23 三星电子株式会社 针对整数像素的位置对视频进行编码和解码的方法和设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101056398A (zh) * 2006-03-29 2007-10-17 清华大学 一种多视编码过程中获取视差矢量的方法及编解码方法
CN101420609A (zh) * 2007-10-24 2009-04-29 深圳华为通信技术有限公司 视频编码、解码方法及视频编码器、解码器
CN101483770A (zh) * 2008-01-08 2009-07-15 华为技术有限公司 一种编解码方法及装置
WO2013039031A1 (ja) * 2011-09-15 2013-03-21 シャープ株式会社 画像符号化装置、画像復号装置、並びにそれらの方法及びプログラム
CN102510500A (zh) * 2011-10-14 2012-06-20 北京航空航天大学 一种基于深度信息的多视点立体视频错误隐藏方法
CN102685532A (zh) * 2012-06-04 2012-09-19 山东大学 自由视点四维空间视频编码系统的编码方法

Also Published As

Publication number Publication date
KR102186461B1 (ko) 2020-12-03
CN105308970A (zh) 2016-02-03
US20160044333A1 (en) 2016-02-11
KR20140122674A (ko) 2014-10-20
US10469866B2 (en) 2019-11-05
WO2014163466A1 (ko) 2014-10-09
EP2983367A4 (en) 2016-11-16
EP2983367A1 (en) 2016-02-10

Similar Documents

Publication Publication Date Title
CN105308966B (zh) 视频编码方法及其设备以及视频解码方法及其设备
CN105532001B (zh) 用于使用基于深度的视差矢量对视频进行层间编码方法以及解码方法和设备
CN104811727B (zh) 用于在视频编码或解码中的运动矢量确定的方法和设备
CN104396252B (zh) 使用用于多视点视频预测的参考画面集的多视点视频编解码方法及其装置
CN105103552B (zh) 用于补偿亮度差的对层间视频进行编码的方法及其装置以及用于对视频进行解码的方法及其装置
CN104365104B (zh) 用于多视点视频编码和解码的方法和设备
CN104365101B (zh) 用于确定用于帧间预测的参考图像的方法及设备
CN105556972B (zh) 用于层间视频解码和编码设备和方法的对深度图像的场景内预测方法
CN105144713B (zh) 用于解码器设置的对视频进行编码的方法及其装置以及基于解码器设置对视频进行解码的方法及其装置
CN105594212B (zh) 用于确定运动矢量的方法及其设备
CN105532004B (zh) 层间视频解码方法及设备
CN106031175B (zh) 使用亮度补偿的层间视频编码方法及其装置、以及视频解码方法及其装置
CN103875249B (zh) 用于多视点视频预测编码的方法和装置以及用于多视点视频预测解码的方法和装置
CN108055551A (zh) 用于预测对视频进行编码或解码的运动矢量的方法和设备
CN107409214A (zh) 用于对层间视频进行解码的方法和设备以及用于对层间视频进行编码的方法和设备
CN105264894A (zh) 针对层间解码和编码方法以及设备的确定帧间预测候选的方法
CN105325002A (zh) 使用视点合成预测的多视点视频编码方法及其设备以及多视点视频解码方法及其设备
CN106416256B (zh) 用于对深度图像进行编码或解码的方法和设备
CN105340275A (zh) 使用视点合成预测的多视点视频编码方法及其设备以及多视点视频解码方法及其设备
CN105165011A (zh) 用于考虑存储器带宽和计算量的可伸缩视频编码的装置和方法以及用于可伸缩视频解码的装置和方法
CN105264890B (zh) 用于补偿亮度差的层间视频编码方法和设备以及层间视频解码方法和设备
CN107690806A (zh) 视频编码方法和视频编码设备以及视频解码方法和视频解码设备
CN105340274A (zh) 深度图编码方法及其设备以及深度图解码方法及其设备
CN106105210A (zh) 管理用于对多层视频进行编码和解码的缓冲器的方法和设备
CN106576175A (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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20181123

Termination date: 20200407