CN107483965B - 对图像解码的设备、对图像编码的设备及计算机可读介质 - Google Patents

对图像解码的设备、对图像编码的设备及计算机可读介质 Download PDF

Info

Publication number
CN107483965B
CN107483965B CN201710929433.9A CN201710929433A CN107483965B CN 107483965 B CN107483965 B CN 107483965B CN 201710929433 A CN201710929433 A CN 201710929433A CN 107483965 B CN107483965 B CN 107483965B
Authority
CN
China
Prior art keywords
syntax
image
coding
unit
coding unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710929433.9A
Other languages
English (en)
Other versions
CN107483965A (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 CN107483965A publication Critical patent/CN107483965A/zh
Application granted granted Critical
Publication of CN107483965B publication Critical patent/CN107483965B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/146Data rate or code amount at the encoder output
    • H04N19/152Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • 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

Abstract

提供了一种用于对图像进行编码的方法和设备以及一种用于对图像进行解码的方法和设备,以管理解码器的缓冲器。根据对图像进行编码的方法,基于形成图像序列的图像帧的编码顺序、被图像帧参考的参考帧的编码顺序、图像帧的显示顺序以及参考帧的显示顺序来确定解码器对每个图像帧进行解码所需的缓冲器的最大大小、需要重新排序的图像帧的数量、以及形成图像序列的图像帧之中编码顺序和显示顺序之间具有最大差的图像帧的延迟信息,并且指示缓冲器的最大大小的第一语法、指示需要重新排序的图像帧的数量的第二语法以及指示延迟信息的第三语法被添加到强制序列参数集,其中,所述强制序列参数集是与图像序列的编码相关的信息的集合。

Description

对图像解码的设备、对图像编码的设备及计算机可读介质
本申请是向中国知识产权局提交的申请日为2012年11月23日、标题为“用于解码器的缓冲器管理的图像编码方法和装置、以及图像解码方法和装置”、申请号为201280068213.7的申请的分案申请。
技术领域
本发明涉及用于对图像进行编码和解码的方法和设备,更具体地讲,涉及对用于控制和管理存储解码的画面的解码画面缓冲器(DPB)的信息进行有效编码和解码的方法和设备。
背景技术
在视频编解码器(诸如ITU-T H.261、ISO/IEC MPEG-1visual、ITU-T H.262(ISO/IEC MPEG-2visual)、ITU-T H.264、ISO/IEC MPEG-4visual或ITU-T H.264(ISO/IEC MPEG-4AVC))中,通过帧间预测或帧内预测对宏块进行预测编码,并且根据由每个视频编解码器限定的预定格式从编码的图像数据产生比特流并输出所述比特流。
发明内容
技术问题
本发明提供一种用于对图像进行编码的方法和设备,其中,用于对解码器的缓冲器进行控制和管理的信息被有效编码,并且本发明提供一种用于对图像进行解码的方法和设备,其中,通过使用用于对缓冲器进行控制和管理的信息来对所述缓冲器进行有效管理。
技术方案
根据本发明的一方面,关于对包括在视频序列中的画面进行解码所必需的缓冲器大小的信息被强制包括在比特流中并被发送,解码器可通过基于所述信息分配所需的缓冲器大小来对画面进行解码。
此外,根据本发明的一方面,用于确定何时输出存储在缓冲器中的画面的信息被强制包括在比特流中并被发送。
有益效果
根据本发明的一个或更多个实施例,因为对包括在图像序列中的画面进行解码所需的缓冲器大小信息被强制添加到比特流并与比特流一起被发送,并且解码器使用所述缓冲器大小信息以通过按需求分配缓冲器大小来执行解码,所以可防止解码器的系统资源被浪费。此外,根据本发明的一个或更多个实施例,用于确定存储在缓冲器中的画面的输出时间的信息被强制添加到比特流并与比特流一起被发送,并且解码器可通过使用用于确定存储在缓冲器中的画面的输出时间的信息来预先确定是否输出预先解码的图像帧,因此防止了解码的图像帧的输出延迟。
附图说明
图1是根据本发明的实施例的视频编码设备的框图;
图2是根据本发明的实施例的视频解码设备的框图;
图3示出根据本发明的实施例的编码单元的概念;
图4是根据本发明的实施例的基于编码单元的图像编码器的框图;
图5是根据本发明的实施例的基于编码单元的图像解码器的框图;
图6是示出根据本发明的实施例的与深度相应的编码单元以及分区(partition)的示图;
图7是示出根据本发明的实施例的编码单元和变换单元之间的关系的示图;
图8是示出根据本发明的实施例的与深度相应的编码信息的示图;
图9是示出根据本发明的实施例的与深度相应的编码单元的示图;
图10、图11和图12是示出根据本发明的实施例的编码单元、预测单元和变换单元之间的关系的示图;
图13是示出根据表1的编码模式信息的编码单元、预测单元和变换单元之间的关系的示图;
图14是示出根据本发明的实施例的分层归类的图像编码处理和图像解码处理的示图;
图15是根据本发明的实施例的网络提取层(NAL)单元的结构的示图;
图16A和图16B是用于描述在图像序列的编码处理期间根据解码顺序所需的解码画面缓冲器(DPB)的最大大小信息的参考示图;
图17是示出在与本发明相关的视频编解码器领域中根据移撞处理(bumpingprocess)从DPB输出解码的画面的处理的示图;
图18是用于描述根据本发明的实施例的通过使用MaxLatencyFrames语法来从DPB输出解码的画面的处理的示图;
图19A至图19D是根据本发明的实施例的用于描述MaxLatencyFrames语法和num_reorder_frames语法的示图;
图20是示出根据本发明的实施例的图像编码方法的流程图;
图21是示出根据本发明的实施例的图像解码方法的流程图。
最佳模式
根据本发明的一方面,提供了一种对图像进行编码的方法,所述方法包括:通过执行运动预测和补偿来分别确定形成图像序列的图像帧的参考帧,并通过使用确定的参考帧来对图像帧进行编码;基于图像帧的编码顺序、被图像帧参考的参考帧的编码顺序、图像帧的显示顺序以及参考帧的显示顺序来确定解码器对图像帧进行解码所需的缓冲器的最大大小以及需要重新排序的图像帧的数量;基于需要重新排序的图像帧的数量,确定形成图像序列的图像帧之中编码顺序和显示顺序之间具有最大差的图像帧的延迟信息;将指示缓冲器的最大大小的第一语法、指示需要重新排序的图像帧的数量的第二语法以及指示延迟信息的第三语法添加到强制序列参数集,其中,所述强制序列参数集是与图像序列的编码相关的信息的集合。
根据本发明的另一方面,提供了一种用于对图像进行编码的设备,所述设备包括:编码器,用于通过执行运动预测和补偿来分别确定形成图像序列的图像帧的参考帧,并通过使用确定的参考帧来对图像帧进行编码;输出单元,用于基于图像帧的编码顺序、被图像帧参考的参考帧的编码顺序、图像帧的显示顺序以及参考帧的显示顺序来确定解码器对图像帧进行解码所需的缓冲器的最大大小以及需要重新排序的图像帧的数量,基于需要重新排序的图像帧的数量,确定形成图像序列的图像帧之中编码顺序和显示顺序之间具有最大差的图像帧的延迟信息,并通过将指示缓冲器的最大大小的第一语法、指示需要重新排序的图像帧的数量的第二语法以及指示延迟信息的第三语法添加到强制序列参数集来产生比特流,其中,所述强制序列参数集是与图像序列的编码相关的信息的集合。
根据本发明的另一方面,提供了一种对图像进行解码的方法,所述方法包括:从比特流获得第一语法、第二语法和第三语法,其中,第一语法指示对形成图像序列的图像帧中的每一个图像帧进行解码所需的缓冲器的最大大小,第二语法指示在后解码的图像帧之后被显示并需要重新排序的图像帧的数量,第三语法指示形成图像序列的图像帧之中解码顺序和显示顺序之间具有最大差的图像帧的延迟信息;通过使用第一语法来设置解码器对图像序列进行解码所需的缓冲器的最大大小;从比特流获得在其中图像帧被编码的已编码的数据,并通过对获得的已编码的数据进行解码来获得解码的图像帧;将解码的图像帧存储在解码器的缓冲器中;以及通过使用第二语法和第三语法来确定是否输出存储在解码器的缓冲器中的图像帧,其中,第一语法、第二语法和第三语法被包括在强制序列参数集中,其中,所述强制序列参数集是与图像序列的编码相关的信息的集合。
根据本发明的另一方面,提供了一种用于对图像进行解码的设备,所述设备包括:图像数据和编码信息提取器,用于从比特流获得第一语法、第二语法、第三语法以及已编码的数据,其中,第一语法指示对形成图像序列的图像帧中的每一个图像帧进行解码所需的缓冲器的最大大小,第二语法指示在后解码的图像帧之后被显示并需要重新排序的图像帧的数量,第三语法指示形成图像序列的图像帧之中解码顺序和显示顺序之间具有最大差的图像帧的延迟信息,其中,在所述已编码的数据中,图像帧被编码;解码器,用于通过对获得的已编码的数据进行解码来获得解码的图像帧;缓冲器,用于存储解码的图像帧,其中,所述缓冲器通过使用第一语法来设置对图像序列进行解码所需的缓冲器的最大大小,并通过使用第二语法和第三语法来确定是否输出存储的图像帧,第一语法、第二语法和第三语法被包括在强制序列参数集中,其中,所述强制序列参数集是与图像序列的编码相关的信息的集合。
具体实施方式
在下文中,将参照附图详细描述本发明的示例性实施例。在描述本发明的时候,图像可以是静止图像或运动图像,并且可被表示为视频。此外,在描述本发明的时候,图像帧可被表示为画面。
图1是根据本发明的实施例的视频编码设备100的框图。
视频编码设备100包括最大编码单元划分器110、编码单元确定器120和输出单元130。
最大编码单元划分器110可基于针对图像的当前画面的最大编码单元对图像的当前画面进行划分。如果当前画面大于最大编码单元,则当前画面的图像数据可被划分为至少一个最大编码单元。根据本发明的实施例的最大编码单元可以是具有32×32、64×64、128×128、256×256等尺寸的数据单元,其中,数据单元的形状是宽和高为2的平方且大于8的方形。图像数据可根据所述至少一个最大编码单元被输出到编码单元确定器120。
根据本发明的实施例的编码单元可由最大尺寸和深度来表征。深度表示编码单元从最大编码单元被空间划分的次数,并且随着深度加深,与深度相应的编码单元可从最大编码单元被划分为最小编码单元。最大编码单元的深度被确定为最高深度,最小编码单元可被确定为最低编码单元。由于与每个深度相应的编码单元的尺寸随着最大编码单元的深度加深而减小,因此与较高深度相应的编码单元可包括多个与较低深度相应的编码单元。
如上所述,当前画面的图像数据根据编码单元的最大尺寸被划分为最大编码单元,所述最大编码单元中的每一个可包括根据深度被划分的编码单元。由于根据本发明的实施例的最大编码单元根据深度被划分,因此包括在最大编码单元中的空间域的图像数据可根据深度被分层分类。
可预先确定编码单元的最大深度和最大尺寸,其中,所述最大深度和最大尺寸限定最大编码单元的高度和宽度被分层划分的总次数。
编码单元确定器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,当针对2N×2N的当前编码单元的变换单元的尺寸是N×N时,变换深度可以是1,当针对2N×2N的当前编码单元的变换单元的尺寸是N/2×N/2时,变换深度可以是2。也就是说,具有树结构的变换单元也可根据变换深度来设置。
针对每个编码深度的编码信息不仅需要关于编码深度的信息,还需要与预测编码和变换有关的信息。因此,编码单元确定器120不仅可确定具有最小编码误差的编码深度,还可确定预测单元中的分区类型、针对每个预测单元的预测模式和用于变换的变换单元的尺寸。
稍后将参照图3至图12详细描述根据本发明的实施例的最大编码单元中包括的具有树结构的编码单元以及确定分区的方法。
编码单元确定器120可通过使用基于拉格朗日乘子的率失真优化来测量与深度相应的编码单元的编码误差。
输出单元130在比特流中输出最大编码单元的图像数据以及关于每个深度的编码模式的信息,其中,所述图像数据基于由编码单元确定器120确定的至少一个编码深度被编码。
已编码的图像数据可以是对图像的残差数据进行编码的结果。
关于每个深度的编码模式的信息可包括关于编码深度的信息、关于预测单元中的分区类型、预测模式和变换单元的尺寸的信息。
可使用根据深度的划分信息来定义关于编码深度的信息,其中,关于编码深度的信息指示是否将对更低深度而不是当前深度的编码单元执行编码。如果当前编码单元的当前深度是编码深度,则使用与当前深度相应的编码单元对当前编码单元进行编码,因此关于当前深度的划分信息可被定义使得当前深度的当前编码单元可不再被划分为更低深度的编码单元。相反,如果当前编码单元的当前深度不是编码深度,则应该对更低深度的编码单元进行编码,因此关于当前深度的划分信息可被定义使得当前深度的当前编码单元可被划分为更低深度的编码单元。
如果当前深度不是编码深度,则对更低深度的编码单元执行编码。由于在当前深度的一个编码单元中存在至少一个更低深度的编码单元,因此对每个更低深度的编码单元重复执行编码,因此可对具有相同深度的编码单元递归地执行编码。
由于具有树结构的编码单元应该在一个最大编码单元中被确定,并且关于至少一个编码模式的信息针对编码深度的每个编码单元被确定,因此,可针对一个最大编码单元确定关于至少一个编码模式的信息。此外,由于图像数据根据深度被分层划分,因此最大编码单元的图像数据根据其位置具有不同的编码深度。因此,可为图像数据设置关于编码深度和编码模式的信息。
因此,根据本发明的实施例的输出单元130可将关于相应的编码深度和编码模式的编码信息分配给包括在最大编码单元中的编码单元、预测单元和最小单元中的至少一个。
根据本发明的实施例的最小单元是通过将最低深度的最小编码单元划分为4份所获得的矩形数据单元,并且最小单元可以是以下最大矩形数据单元:所述最大矩形数据单元可包括在最大编码单元中所包括的所有编码单元、预测单元、预测单元和变换单元中。
例如,通过输出单元130输出的编码信息可被分为与深度相应的编码单元中的每一个编码单元的编码信息和预测单元中的每一个预测单元的编码信息。与深度相应的码单元中的每一个编码单元的编码信息可包括预测模式信息和分区尺寸信息。预测单元中的每一个预测单元的编码信息可包括关于帧间模式的估计方向、关于帧间模式的参考图像索引、关于运动矢量、关于帧内模式的色度分量和关于帧内模式的插值方法的信息。关于以画面、条带或GOP为单元定义的编码单元的最大尺寸的信息以及关于最大深度的信息可被插入比特流的头中。
最大编码单元划分器110和编码单元确定器120与视频编码层相应,其中,所述视频编码层通过根据针对每个图像帧的编码单元执行运动预测和补偿来确定形成图像序列的图像帧中的每个图像帧的参考帧,并通过使用确定的参考帧来对每个图像帧进行编码。
此外,如稍后将描述的,输出单元130通过将指示解码器对图像帧进行解码所需的缓冲器的最大大小的max_dec_frame_buffering语法、指示需要重新排序的图像帧的数量的num_reorder_frames语法、以及指示形成图像序列的图像帧之中编码顺序和显示顺序之间具有最大差的图像帧的延迟信息的max_latency_increase语法映射到网络提取层(NAL)单元来产生比特流。
在根据本发明的实施例的视频编码设备100中,与深度相应的编码单元可以是通过将更高深度的编码单元的高度或宽度划分为二所获得的编码单元。换句话说,在当前深度的编码单元的尺寸为2N×2N时,更低深度的编码单元的尺寸是N×N。此外,2N×2N的编码单元可包括最多4个更低深度的N×N的编码单元。
因此,视频编码设备100可通过基于考虑当前画面的特征所确定的每个最大编码单元的尺寸和最大深度,针对每个最大编码单元确定具有最佳形状和最佳尺寸的编码单元,来形成具有树结构的编码单元。此外,由于可根据各种预测模式和变换方法中的任意一个来对每个最大编码单元进行编码,因此可考虑各种图像尺寸的编码单元的特征来确定最佳编码模式。
因此,如果具有非常高分辨率或非常大量的数据的图像以传统的宏块为单位被编码,则每个画面的宏块的数量急剧增加。因此,为每个宏块产生的压缩的信息的量增加,并且因此难以发送压缩的信息且数据压缩效率降低,然而,视频编码设备100能够基于图像的特征控制编码单元,同时考虑图像的尺寸增加编码单元的最大大小,从而增加图像压缩效率。
图2是根据本发明的实施例的视频解码设备200的框图。
视频解码设备200包括接收器210、图像数据和编码信息提取器220以及图像数据解码器230。以下用于解释视频解码设备200的各种处理的各种术语(诸如编码单元、深度、预测单元、变换单元)的定义和关于各种编码模式的信息与以上参照图1描述的视频编码设备100的那些相同。
接收器210接收并解析已编码的视频的比特流。图像数据和编码信息提取器220以最大编码单元为单位从解析的比特流提取每个具有树结构的编码单元的已编码的图像数据,并将提取的图像数据输出到图像数据解码器230。图像数据和编码信息提取器220可从关于当前画面的头提取关于当前画面的编码单元的最大尺寸的信息。
此外,图像数据和编码信息提取器220以最大编码单元为单位从解析的比特流提取关于具有树结构的编码单元的编码深度和编码模式的信息。提取的关于编码深度和编码模式的信息被输出到图像数据解码器230。换句话说,比特流中的图像数据可被划分为最大编码单元,从而图像数据解码器230可以以最大编码单元为单位对图像数据进行解码。
可针对至少一个编码深度来设置针对每个最大编码单元的关于编码深度和编码模式的信息。针对每个编码深度的关于编码模式的信息可包括关于与编码深度相应的相应编码单元的分区类型、关于预测模式、和变换单元的尺寸的信息。此外,根据深度的划分信息可被提取为关于编码深度的信息。
由图像数据和编码信息提取器220提取的针对每个最大编码单元的关于编码深度和编码模式的信息是关于以下编码深度和编码模式的信息:所述编码深度和编码模式被确定为当编码侧(例如,视频编码设备100)以最大编码单元为单位对每个与深度相应的编码单元重复进行编码时产生最小编码误差。因此,视频解码设备200可通过根据产生最小编码误差的编码深度和编码模式对图像数据进行解码来恢复图像。
由于关于编码深度和编码模式的编码信息可被分配给相应编码单元、预测单元和最小单元中的数据单元,因此图像数据和编码信息提取器220可以以所述数据单元为单位提取关于编码深度和编码模式的信息。如果针对每个最大编码单元的关于编码深度和编码模式的信息以数据单元为单位被记录,则包括关于相同编码深度和编码模式的信息的数据单元可被推断为是包括在同一最大编码单元中的数据单元。
图像数据解码器230通过基于针对每个最大编码单元的关于编码深度和编码模式的信息对每个最大编码单元中的图像数据进行解码,来恢复当前画面。换句话说,图像数据解码器230可基于针对包括在每个最大编码单元中的每个具有树结构的编码单元的解析的分区类型、预测模式和变换单元,来对已编码的图像数据进行解码。解码处理可包括预测处理(所述预测处理包括帧内预测和运动补偿)和逆变换处理。
图像数据解码器230可基于关于根据编码深度的编码单元中的每一个的预测单元的分区类型和预测模式的信息,根据每个编码单元的分区和预测模式对每个编码单元执行帧内预测或运动补偿。
此外,为了对每个最大编码单元执行逆变换,图像数据解码器230基于更深编码单元的变换单元的尺寸信息,根据每个编码单元的变换单元来执行逆变换。
图像数据解码器230可基于根据深度的划分信息来确定当前最大编码单元的编码深度。如果划分信息指示图像数据在当前深度不再被划分,则当前深度是编码深度。因此,图像数据解码器230可通过使用关于与当前深度相应的编码单元的预测单元的分区类型、预测模式和变换单元的尺寸的信息,对当前最大编码单元的已编码的数据进行解码。
换句话说,可通过观察为编码单元、预测单元和最小单元之中的数据单元分配的编码信息集来收集包含包括相同划分信息的编码信息的数据单元,收集的数据单元可被视为是将由图像数据解码器230根据相同的编码模式进行解码的一个数据单元。
此外,接收器210以及图像数据和编码信息提取器220可在NAL中执行解码处理,其中,从比特流获得指示解码器对图像帧进行解码所需的缓冲器的最大大小的max_dec_frame_buffering语法、指示需要重新排序的图像帧的数量的num_reorder_frames语法、以及指示形成图像序列的图像帧之中解码顺序和显示顺序之间具有最大差的图像帧的延迟信息的max_latency_increase语法,并将其输出到图像数据解码器230。
视频解码设备200可通过对每个最大编码单元递归地进行编码来获得关于产生最小编码误差的编码单元的信息,并可使用所述信息来对当前画面进行解码。换句话说,可对以最大编码单元为单位确定为最佳编码单元的具有树结构的编码单元中的已编码的图像数据进行解码。
因此,即使图像数据具有高分辨率以及非常大量的数据,也可通过使用编码单元的尺寸和编码模式来对图像数据进行有效解码以恢复图像数据,其中,基于从编码侧接收的关于最佳编码模式的信息,根据图像数据的特征来自适应地确定所述编码单元的尺寸和所述编码模式。
在下文中,将参照图3至图13描述根据本发明的实施例的确定根据树结构的编码单元、预测单元和变换单元的方法。
图3示出根据本发明的实施例的编码单元的概念。
编码单元的尺寸可被表示为宽度×高度,并且可以是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。图3中示出的最大深度表示从最大编码单元到最小解码单元的划分总次数。
如果分辨率高或数据量大,则编码单元的最大尺寸可相对较大,从而不仅提高编码效率,还精确地反映出图像的特征。因此,具有比视频数据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的编码单元。随着深度加深,可精确地表现细节信息。
图4是根据本发明的实施例的基于编码单元的图像编码器400的框图。
图像编码器400执行视频编码设备100的编码单元确定器120的操作以对图像数据进行编码。具体地说,帧内预测器410在帧内模式下对当前帧405之中的编码单元执行帧内预测,运动估计器420和运动补偿器425在帧间模式下通过使用当前帧405和参考帧495,对当前帧405之中的编码单元执行帧间估计和运动补偿。
从帧内预测器410、运动估计器420和运动补偿器425输出的数据通过变换器430和量化器440被输出为量化的变换系数。量化的变换系数通过反量化器460和逆变换器470被恢复为空间域中的数据。恢复的空间域中的数据在通过去块单元480和环路滤波单元490进行后处理之后被输出为参考帧495。量化的变换系数可通过熵编码器450被输出为比特流455。具体地讲,熵编码器450可通过将指示解码器对图像帧进行解码所需的缓冲器的最大大小的max_dec_frame_buffering语法、指示需要重新排序的图像帧的数量的num_reorder_frames语法、以及指示在形成图像序列的图像帧的编码顺序和显示顺序之间差值的最大数的MaxLatencyFrames语法或用于确定MaxLatencyFrames语法的max_latency_increase语法映射到NAL单元来产生比特流。具体地讲,熵编码器450可将max_dec_frame_buffering语法、num_reorder_frames语法和max_latency_increase语法添加到序列参数集(SPS)作为强制分量,其中,所述SPS是包括与总体图像序列的编码相关的信息的头信息。
为了将图像编码器400应用在视频编码设备100中,图像编码器400的所有元件(即,帧内预测器410、运动估计器420、运动补偿器425、变换器430、量化器440、熵编码器450、反量化器460、逆变换器470、去块单元480和环路滤波单元490)在考虑每个最大编码单元的最大深度的同时,基于具有树结构的编码单元之中的每个编码单元来执行操作。
具体地,帧内预测器410、运动估计器420和运动补偿器425在考虑当前最大编码单元的最大尺寸和最大深度的同时,确定具有树结构的编码单元之中的每个编码单元的分区和预测模式。变换器430确定具有树结构的编码单元之中的每个编码单元中的变换单元的尺寸。
图5是根据本发明的实施例的基于编码单元的图像解码器500的框图。
解析器510对比特流505进行解析以获得将被解码的已编码的图像数据以及对已编码的图像数据进行解码所需的编码信息。具体地讲,解析器510从比特流获得作为强制分量包括在SPS中的指示对图像帧进行解码所需的缓冲器的最大大小的max_dec_frame_buffering语法、指示需要重新排序的图像帧的数量的num_reorder_frames语法、以及指示用于确定MaxLatencyFrames的max_latency_increase语法,并将其输出到熵解码器520。在图5中,解析器510和熵解码器520被示出为单独的组件,但是可选择地,由解析器510执行的获得图像数据以及获得与已编码的图像数据相关的语法信息的处理可由熵解码器520执行。
已编码的图像数据通过熵解码器520和反量化器530被输出为反量化的数据,反量化的数据通过逆变换器540被恢复为空间域中的图像数据。
针对空间域中的图像数据,帧内预测器550在帧内模式下对编码单元执行帧内预测,运动补偿器560通过使用参考帧585在帧间模式下对编码单元执行运动补偿。
经过帧内预测器550和运动补偿器560恢复的图像帧数据通过去块单元570被后处理并被输出到解码画面缓冲器(DPB)580。DPB 580针对参考帧的存储、图像帧的显示顺序的变换以及图像帧的输出来存储解码的图像帧。DPB 580在通过使用max_dec_frame_buffering语法来设置用于图像序列的正常解码所需的缓冲器的最大大小的同时存储已解码的图像帧,其中,所述max_dec_frame_buffering语法指示对从解析器510或熵解码器520输出的图像帧进行正常解码所需的缓冲器的最大大小。
此外,DPB 580可通过使用指示需要重新排序的图像帧的数量的num_reorder_frames语法、以及用于确定MaxLatencyFrames语法的max_latency_increase语法来确定是否输出预先解码和存储的参考图像帧。稍后将详细描述输出存储在DPB 580中的参考图像帧的处理。
为了通过使用视频解码设备200的图像数据解码器230来对图像数据进行解码,图像解码器500可执行在解析器510的操作之后执行的操作。
为了将图像解码器500应用在视频解码设备200中,图像解码器500的所有元件(即,解析器510、熵解码器520、反量化器530、逆变换器540、帧内预测器550、运动补偿器560、去块单元570)可以以最大编码单元为单位基于具有树结构的编码单元执行解码操作。具体地,帧内预测器550和运动补偿器560确定具有树结构的编码单元中的每一个的分区和预测模式,逆变换器540确定每个编码单元的变换单元的尺寸。
图6是示出根据本发明的实施例的与深度相应的编码单元以及分区的示图。
根据本发明的实施例的视频编码设备100和视频解码设备200使用分层编码单元以考虑图像的特征。可根据图像的特征自适应地确定编码单元的最大高度、最大宽度和最大深度,或可由用户不同地设置编码单元的最大高度、最大宽度和最大深度。可根据编码单元的预定最大尺寸来确定与深度相应的编码单元的尺寸。
在根据本发明的实施例的编码单元的分层结构600中,编码单元的最大高度和最大宽度均为64,并且最大深度为4。由于深度沿分层结构600的纵轴加深,因此每个与深度相应的编码单元的高度和宽度均被划分。此外,作为用于对每个与深度相应的编码单元进行预测编码的基础的预测单元和分区沿分层结构600的横轴被示出。
具体地讲,在分层结构600中,编码单元610是最大编码单元,并且深度为0,尺寸为64×64(高度×宽度)。随着深度沿纵轴加深,存在尺寸为32×32且深度为1的编码单元620、尺寸为16×16且深度为2的编码单元630、尺寸为8×8且深度为3的编码单元640以及尺寸为4×4且深度为4的编码单元650。尺寸为4×4且深度为4的编码单元650是最小编码单元。
每个编码单元的预测单元和分区根据每个深度沿横轴排列。如果尺寸为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中的分区,即,尺寸为16×16的分区630、尺寸为16×8的分区632、尺寸为8×16的分区634和尺寸为8×8的分区636。
类似地,尺寸为8×8且深度为3的编码单元640的预测单元可被划分为包括在编码单元640中的分区,即,尺寸为8×8的分区640、尺寸为8×4的分区642、尺寸为4×8的分区644和尺寸为4×4的分区646。
尺寸为4×4且深度为4的编码单元650是具有最低深度的最小编码单元。编码单元650的预测单元被设置为仅仅是尺寸为4×4的分区650。
为了确定最大编码单元610的编码深度,视频编码设备100的编码单元确定器120对包括在最大编码单元610中的与每个深度相应的所有编码单元进行编码。
随着深度加深,与每个深度相应且包括具有相同范围和相同尺寸的数据的编码单元的数量增加。例如,需要四个与深度2相应的编码单元来覆盖包括在一个与深度1相应的编码单元中的数据。因此,为了比较根据深度对相同数据进行编码的结果,与深度1相应的编码单元和四个与深度2相应的编码单元均被编码。
为了以深度为单位执行编码,可通过沿分层结构600的横轴,对与深度相应的编码单元中的每一个中的预测单元进行编码,来将每个深度的最小编码误差选为代表性编码误差。可选择地,随着深度沿分层结构600的纵轴加深,可通过以深度为单位执行编码并比较根据深度的最小编码误差来搜索最小编码误差。最大编码单元610中具有最小编码误差的深度和分区可被选为最大编码单元610的编码深度和分区类型。
图7是示出根据本发明的实施例的编码单元710和变换单元720之间的关系的示图。
根据本发明的实施例的视频编码设备100(或视频解码设备200)基于具有小于或等于最大编码单元的尺寸的编码单元,以最大编码单元为单位来对图像进行编码(或解码)。在编码期间,可基于不大于相应编码单元的数据单元来选择用于执行变换的每个变换单元的尺寸。
例如,在视频编码设备100(或视频解码设备200)中,如果编码单元710的尺寸是64×64,则可通过使用尺寸为32×32的变换单元720来执行变换。
此外,可通过对小于64×64的尺寸为32×32、16×16、8×8和4×4的变换单元中的每一个执行变换,来对尺寸为64×64的编码单元710的数据进行编码,然后可选择具有最小编码误差的变换单元。
图8是示出根据本发明的实施例的与深度相应的编码信息的示图。
视频编码设备100的输出单元130可对与编码深度相应的每个编码单元的关于分区类型的信息800、关于预测模式的信息810和关于变换单元尺寸的信息820进行编码和发送,作为关于编码模式的信息。
信息800指示关于通过对当前编码单元的预测单元进行划分而获得的分区的形状的信息,其中,所述分区是用于对当前编码单元进行预测编码的数据单元。例如,尺寸为2N×2N的当前编码单元CU_0可被划分为尺寸为2N×2N的分区802、尺寸为2N×N的分区804、尺寸为N×2N的分区806和尺寸为N×N的分区808中的任意一个。在这种情况下,信息800被设置为指示尺寸为2N×N的分区804、尺寸为N×2N的分区806和尺寸为N×N的分区808之一。
信息810指示每个分区的预测模式。例如,信息810可指示对由信息800指示的分区进行预测编码的模式,即,帧内模式812、帧间模式814或跳过模式816。
信息820指示当对当前编码单元执行变换时所基于的变换单元。例如,变换单元可以是第一帧内变换单元822、第二帧内变换单元824、第一帧间变换单元826或第二帧内变换单元828。
视频解码设备200的图像数据和编码信息提取器220可提取和使用信息800、810和820以对与深度相应的编码单元进行解码。
图9是示出根据本发明的实施例的与深度相应的编码单元的示图。
划分信息可被用于指示深度改变。划分信息指示当前深度的编码单元是否被划分为更低深度的编码单元。
用于对深度为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,但分区类型不限于此,预测单元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。
如果在尺寸为N_1×N_1的分区类型948中编码误差最小,则深度从1改变到2以在操作950对分区类型948进行划分,并对深度为2且尺寸为N_2×N_2的编码单元960重复执行编码,以搜索最小编码误差。
当最大深度为d时,可设置与深度相应的编码单元直到深度变为d-1时为止,并且划分信息可被设置直到深度为d-2时为止。换句话说,当编码被执行,直到在操作970中与深度d-2相应的编码单元被划分之后深度为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)不再被划分到更低深度,针对当前最大编码单元900的编码深度被确定为d-1,并且编码单元900的分区类型可被确定为N_(d-1)×N_(d-1)。此外,由于最大深度为d,因此不为深度为(d-1)的编码单元952设置划分信息。
数据单元999可以是针对当前最大编码单元的“最小单元”。根据本发明的实施例的最小单元可以是通过将具有最低编码深度的最小单元划分为4份而获得的矩形数据单元。通过如上所述重复执行编码,视频编码设备100可通过比较根据编码单元900的深度的编码误差并选择具有最小编码误差的深度来确定编码深度,并将编码单元900的分区类型和预测模式设置为编码深度的编码模式。
这样,根据深度(即,深度0、1、…、d-1)的最小编码误差被彼此比较,并且具有最小编码误差的深度可被确定为编码深度。编码深度、预测单元的分区类型和预测模式可作为关于编码模式的信息而被编码和发送。此外,由于编码单元从深度0被划分到编码深度,因此仅编码深度的划分信息被设置为0,除了编码深度之外的其他深度的划分信息被设置为1。
视频解码设备200的图像数据和编码信息提取器220可提取并使用关于编码单元900的编码深度和预测单元的信息,以对分区912进行解码。视频解码设备200可基于根据深度的划分信息来将与划分信息“0”相应的深度确定为编码深度,并可在解码处理期间使用关于编码深度的编码模式的信息。
图10、图11和图12是示出根据本发明的实施例的编码单元1010、预测单元1060和变换单元1070之间的关系的示图。
编码单元1010是最大编码单元的与由视频编码设备100确定的编码深度相应的编码单元。预测单元1060是各个编码单元1010的预测单元的分区,变换单元1070是各个编码单元1010的变换单元。
在编码单元1010之中,如果最大编码单元的深度是0,则编码单元1012和1054的深度是1,编码单元1014、1016、1018、1028、1050和1052的深度是2,编码单元1020、1022、1024、1026、1030、1032和1048的深度是3,编码单元1040、1042、1044和1046的深度是4。
在预测单元1060之中,某些编码单元1014、1016、1022、1032、1048、1050、1052和1054被划分为从编码单元划分的分区。换句话说,分区1014、1022、1050和1054是2N×N的分区类型,分区1016、1048和1052是N×2N的分区类型,分区1032是N×N的分区类型。编码单元1010的预测单元和分区小于或等于与其相应的编码单元。
在变换单元1070之中,基于小于编码单元1052的数据单元对与编码单元1052相应的图像数据执行变换或逆变换。此外,变换单元1014、1016、1022、1032、1048、1050、1052和1054在尺寸和形状方面与预测单元1060之中的相应预测单元和分区不同。换句话说,根据本发明的实施例的视频编码设备100和视频解码设备200可基于不同的数据单元,对相同编码单元单独执行帧内预测、运动估计、运动补偿、变换和逆变换。
因此,可以以每个最大编码单元的区域为单位,通过对具有分层结构的编码单元递归地执行编码来确定最佳编码单元,从而可获得具有递归树结构的编码单元。编码信息可包括关于编码单元的划分信息、关于分区类型的信息、关于预测模式的信息和关于变换单元的尺寸的信息。表1示出可由视频编码设备100和视频解码设备200设置的编码信息的示例。
[表1]
Figure GDA0002308426090000201
Figure GDA0002308426090000211
视频编码设备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。
关于具有树结构的编码单元的编码信息可被分配给以下单元中的至少一个:与编码深度相应的编码单元、预测单元和最小单元。与编码深度相应的编码单元可包括:包含相同编码信息的预测单元和最小单元中的至少一个。
因此,可通过比较邻近数据单元的编码信息来确定邻近数据单元是否包括在与相同编码深度相应的编码单元中。此外,可使用数据单元的编码信息来确定与编码深度相应的编码单元。因此可确定最大编码单元中的编码深度的分布。
因此,如果基于邻近数据单元的编码信息来预测当前编码单元,则可直接参照和使用邻近于当前编码单元的与深度相应的编码单元中的数据单元的编码信息。
可选择地,如果基于邻近编码单元来预测当前编码单元,则可通过基于与深度相应的邻近编码单元的编码信息,搜索与深度相应的编码单元之中的与当前编码单元邻近的数据单元,来参考邻近编码单元。
图13是根据表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。
例如,如果分区类型被设置为对称分区类型(例如,分区类型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。
图14是根据本发明的实施例的被分层分类的图像编码处理和图像解码处理的示图。
由图1的视频编码设备100或图4的图像编码器400执行的编码处理可被分类为在视频编码层(VCL)1410中执行的编码处理和在NAL 1420中执行的编码处理,其中,如图14中所示,所述VCL 1410自己处理图像编码处理,所述NAL 1420将在VCL 1410和下级系统1430之间编码的图像数据和附加信息产生为根据预定格式的比特流,其中,所述下级系统1430发送并存储编码的图像数据。作为图1的视频编码设备100的最大编码单元划分器110和编码单元确定器120的编码处理的输出的编码数据1411是VCL数据,并且编码数据1411通过输出单元130被映射到VCL NAL单元1421。此外,与VCL 1410的编码处理直接相关的信息(诸如关于被VCL 1410用来产生编码数据1411的编码单元的划分信息、分区类型信息、预测模式信息和变换单元尺寸信息)也被映射到VCL NAL单元1421。与编码处理相关的参数集合信息1412被映射到非VCL NAL单元1422。具体地讲,根据本发明的实施例,指示解码器对图像帧进行解码所需的缓冲器的最大大小的max_dec_frame_buffering语法、指示需要重新排序的图像帧的数量的num_reorder_frames语法、以及用于确定MaxLatencyFrames语法的max_latency_increase语法被映射到非VCL NAL单元1422。VCL NAL单元1421和非VCL NAL单元1422均是NAL单元,其中,VCL NAL单元1421包括被压缩并被编码的图像数据,非VCL NAL单元1422包括与图像序列和帧的头信息相应的参数。
类似地,由图2的视频解码设备200或图5的图像解码器500执行的解码处理可被分类为在VCL 1410中执行的解码处理和在NAL 1420中执行的解码处理,其中,如图14中所示,所述VCL 1410自己处理图像解码处理,所述NAL 1420从在VCL 1410和下级系统1430之间接收并读取的比特流获得已编码的图像数据和附加信息,其中,所述下级系统1430接收并读取已编码的图像数据。在图2的视频解码设备200的接收器210以及图像数据和编码信息提取器220中执行的解码处理与NAL 1420的解码处理相应,图像数据解码器230的解码处理与VCL 1410的解码处理相应。换句话说,接收器210以及图像数据和编码信息提取器220从比特流1431获得VCL NAL单元1421和非VCL NAL单元1422,其中,所述VCL NAL单元1421包括用于产生已编码的图像数据和已编码的数据(诸如编码单元的划分信息、分区类型信息、预测模式信息和变换单元尺寸信息)的信息,非VCL NAL单元1422包括与编码处理相关的参数集信息。具体地讲,根据本发明的实施例,指示解码器对图像帧进行解码所需的缓冲器的最大大小的max_dec_frame_buffering语法、指示需要重新排序的图像帧的数量的num_reorder_frames语法、以及用于确定MaxLatencyFrames语法的max_latency_increase语法被包括在非VCL NAL单元1422中。
图15是根据本发明的实施例的NAL单元1500的结构的示图。
参照图15,NAL单元1500包括NAL头1510和原始字节序列负荷(RBSP)1520。RBSP填充比特1530是在RBSP 1520的末尾添加的长度调整比特,用于以8比特的倍数表现RBSP1520的长度。RBSP填充比特1530从“1”开始并且包括根据RBSP 1520的长度确定的连续的“0”,以具有如“100…”的样式。通过搜索作为初始比特值的“1”,RBSP 1520的最后比特的位置可被确定。
NAL头1510包括标记信息(nal_ref_idc)1512和标识符(nal_unit_type)1513,其中,所述标记信息1512指示是否包括有组成相应NAL单元的参考画面的条带,所述标识符1513指示NAL单元的类型。NAL头1510的开始处的“1”1511是固定比特。
NAL单元1500可根据nal_unit_type 1513的值而被分类为瞬时解码刷新(IDR)画面、纯净随机访问(CRA,clean random access)画面、SPS、画面参数集(PPS)、辅助增强信息(SEI)和自适应参数集(APS)。表2示出根据nal_unit_type 1513的值的NAL单元1500的类型。
[表2]
Figure GDA0002308426090000241
Figure GDA0002308426090000251
如上所述,根据本发明的实施例,max_dec_frame_buffering语法、num_reorder_frames语法和max_latency_increase语法被包括在NAL单元中,具体地讲,作为强制分量被包括在与图像序列的头信息相应的SPS中。
在下文中,将详细描述在编码处理期间确定作为SPS的强制分量被包括的max_dec_frame_buffering语法、num_reorder_frames语法和max_latency_increase语法的处理。
在VCL中解码的图像帧被存储在作为图像解码器500的图像缓冲器存储器的DPB580中。DPB 580将存储的每个画面标记为短期参考的短期参考画面、长期参考的长期参考画面或不被参考的非参考画面。解码的画面被存储在DPB 580中,根据输出顺序被重新排序,并在输出时序或者是在所分配的当解码的画面不被另一图像帧参考的时候从DPB 580被输出。
在一般的编解码器(诸如H.264AVC编解码器)中,恢复图像帧所需的DPB的最大大小由简档和等级来限定,或者是通过被选择性地发送的视频可用性信息(VUI)来限定。例如,由H.264AVC编解码器限定的DPB的最大大小被限定为下面的表3。
[表3]
Figure GDA0002308426090000252
在表3中,针对30Hz的图像且在H.264AVC编解码器中限定DPB的最大大小,并且通过使用经由VUI选择性地发送的max_dec_frame_buffering语法来确定DPB的最大大小,或者如果max_dec_frame_buffering语法未被包括在VUI中,则根据如表3中所示的基于简档和等级预先确定的表来确定DPB的最大大小。如果解码器的分辨率是400×240(WQVGA)并且输出图像的频率是30Hz,则DPB的最大大小(MaxDpbSize)为13,即,DPB的最大大小被设置为存储13个解码的画面。
在一般的视频编解码器中,关于DPB的最大大小的信息不是必须被发送的,而是被选择性地发送,因此,在一般的视频编解码器中,关于解码器对图像序列进行解码所需的DPB的最大大小的信息无法被一直使用。当这样的信息未被发送时,解码器使用如上面的表3中所示的根据简档和等级预先确定的DPB的最大大小。然而,在对图像序列进行编码和解码的处理期间实际所需的DPB的大小经常小于表3的DPB的最大大小。因此,如果如表3中所示的预先确定的最大大小被使用,则解码器的系统资源可能被浪费。此外,根据一般的视频编解码器,由于解码器的DPB的大小小于表3的预先确定的最大大小但是大于恢复图像帧实际所需的大小,因此如果尽管解码器能够对图像序列进行解码,但关于解码处理所需的DPB的最大大小的信息未被发送,则表3的预先确定的最大大小被设置为解码处理所需的DPB的大小,因此解码处理可能不能被执行。因此,在将DPB的最大大小作为SPS的强制分量包括之后,根据本发明的实施例的图像编码方法和设备将DPB的最大大小发送到解码设备,图像解码方法和设备可通过使用包括在SPS中的最大大小来设置DPB的最大大小。
图16A和图16B是用于描述在图像序列的解码处理期间根据解码顺序所需的DPB的最大大小信息的参考示图。
参照图16A,假设编码器按照I0、P1、P2、P3和P4的顺序执行编码,并且通过沿箭头指示的方向参考画面来执行编码。如这样的编码顺序,按照I0、P1、P2、P3和P4的顺序执行解码。在图16A中,由于一个画面参考被刚刚预先解码的一个参考画面,因此对图像序列进行正常解码所需的DPB的最大大小是1。
参照图16B,假设编码器通过沿箭头指示的方向参考画面,按照I0、P2、b1、P4和b3的顺序执行编码。由于解码顺序与编码顺序相同,因此按照I0、P2、b1、P4和b3的顺序执行解码。在图16B的图像序列中,由于P画面参考被预先解码的I画面或者是P画面的一个参考画面,并且b画面参考被预先解码的I画面或者是P画面的两个参考画面,因此对图像序列进行正常解码所需的DPB的最大大小是2。尽管如图16A和图16B中所示对图像序列进行正常解码所需的DPB的最大大小具有较小值1或2,但如果关于DPB的最大大小的信息未被单独发送,则解码器不得不使用关于根据视频编解码器的简档和等级预先确定的DPB的最大大小的信息。如果解码器的DPB具有最大值3(即,最多能够存储3个解码的图像帧)并且作为根据视频编解码器的简档或等级而预先确定的值,DPB的最大大小根据表3被设置为13,则尽管DPB具有足够的大小来对已编码的图像帧进行解码,但DPB的大小小于预先确定的DPB的最大大小,因此解码器可能错误地确定已编码的图像帧不能被解码。
因此,根据本发明的实施例的视频编码设备100基于形成图像序列的图像帧的编码顺序(或解码顺序)以及被所述图像帧参考的参考帧的编码顺序(或解码顺序)来确定指示解码器对每个图像帧进行解码所需的DPB的最大大小的max_dec_frame_buffering语法,并且将max_dec_frame_buffering语法插入到与图像序列的头信息相应的SPS并将max_dec_frame_buffering语法和与图像序列的头信息相应的SPS一起发送。视频编码设备100将max_dec_frame_buffering语法作为强制信息而非选择性的信息包括在SPS中。
同时,当解码的画面被存储在一般视频编解码器中的解码器的DPB中并且需要新的空间来存储解码的画面时,经由移撞(bumping)从DPB输出具有最低显示顺序(画面顺序计数)的参考画面,以获得用于存储新参考画面的空闲空间。在一般的视频编解码器中,解码器能够仅在解码的画面经由这样的移撞处理从DPB被输出时显示解码的画面。然而,当这样通过移撞处理显示解码的画面时,预先解码的参考画面的输出被延迟直到移撞处理为止。
图17是示出在与本发明相关的视频编解码器领域中根据移撞处理从DPB输出解码的画面的处理的示图。在图17中,假设DPB的最大大小(MaxDpbSize)是4,即,DPB可存储最多四个解码的画面。
参照图17,在一般的视频编解码器领域中,如果尽管I0画面根据解码顺序被首先解码,在I0画面之后4帧的解码的P4帧将被存储在DPB,则I0画面可经由移撞处理从DPB被输出并被显示。因此,I0画面在从解码时间起被延迟4帧之后输出。
因此,根据本发明的实施例的视频解码设备200通过以下操作在无需移撞处理的情况下从DPB快速输出解码的画面:通过使用MaxLatencyFrames语法设置从每个解码的画面被存储在DPB中的时刻起的预定延迟参数,每当图像序列中的每个画面根据解码顺序被解码时将存储在DPB中的解码的画面的延迟参数的计数增加1,并从DPB输出延迟参数的计数已达到MaxLatencyFrames语法的解码的画面,其中,MaxLatencyFrames语法指示基于显示顺序在图像序列中的预定帧之前但是基于解码顺序在所述预定帧之后的图像帧的最大数量。换句话说,当解码的画面被存储在DPB中时,视频解码设备200最初将0作为延迟参数分配给存储在DPB中的解码的画面,并且每当根据解码顺序逐个对下一画面进行解码时将所述延迟参数增加1。此外,视频解码设备200将所述延迟参数与MaxLatencyFrames语法进行比较以从DPB输出延迟参数具有与MaxLatencyFrames语法相同的值的解码的画面。
例如,当MaxLatencyFrames语法为n时(其中,n是整数),对于延迟参数,将0分配给基于解码顺序被首先解码并被存储在DPB中的解码的画面。然后,每当根据解码顺序对接下来的画面进行解码时将首先解码的画面的延迟参数增加1,并且在延迟参数达到n时(即,在基于解码顺序被第n个解码的画面被解码之后)从DPB输出所述首先解码并存储的画面。
图18是用于描述根据本发明的实施例的通过使用MaxLatencyFrames语法从DPB输出解码的画面的处理的示图。在图18中,假设DPB的最大大小(MaxDpbSize)是4(即,DPB能够最多存储4个解码的画面),并且MaxLatencyFrames语法为0。
参照图18,由于MaxLatencyFrames语法具有值0,因此视频解码设备200可立即输出解码的画面。在图18中,在极端情况下MaxLatencyFrames语法具有值0,但是如果MaxLatencyFrames语法具有小于4的值,则与在解码的画面经由移撞处理从解码时间起被延迟4帧之后从DPB被输出时相比,解码的画面从DPB被输出时的时间点可前移。
同时,由于MaxLatencyFrames语法具有较小值,因此解码的画面的输出时间可前移,但是由于存储在DPB中的解码的画面应该根据与编码器所确定的显示顺序相同的显示顺序显示,因此即使解码的画面被预先解码,但直到达到解码的画面的显示顺序为止才应从DPB输出所述解码的画面。
因此,视频编码设备100在对形成图像序列的图像帧中的每一个图像帧进行编码的同时基于每个图像帧的编码顺序和显示顺序之间的差的最大值来确定指示最大延迟帧的MaxLatencyFrames语法,将MaxLatencyFrames语法插入SPS的强制分量,并将MaxLatencyFrames语法发送到图像解码设备200。
可选择地,视频编码设备100可将用于确定MaxLatencyFrames语法的语法和指示需要重新排序的图像帧的数量的语法插入到SPS中,而不是将MaxLatencyFrames语法直接插入到SPS。详细地,当图像帧在形成图像序列的图像帧之中基于编码顺序被首先编码,但基于显示顺序在后编码的图像帧之后被显示时,视频编码设备100可确定指示需要重新排序的图像帧的最大数量的num_reorder_frames语法,并将MaxLatencyFrames语法与num_reorder_frames语法之间的差值(即,MaxLatencyFrames语法-num_reorder_frames语法的值)而非用于确定MaxLatencyFrames语法的max_latency_increase语法插入到SPS。当num_reorder_frames语法和max_latency_increase语法而非MaxLatencyFrames语法被插入SPS并与SPS一起被发送时,视频解码设备200可通过使用(num_reorder_frames+max_latency_increase)的值来确定MaxLatencyFrames语法。
图19A至图19D是根据本发明的实施例的用于描述MaxLatencyFrames语法和num_reorder_frames语法的示图。在图19A至图19D中,POC表示显示顺序,并且在编码器和解码器中形成图像序列的图像帧的编码顺序和解码顺序相同。此外,图像序列中在画面F0至F9之上的箭头指示参考画面。
参照图19A,作为显示顺序上的最后一个且在编码顺序上被第二个编码的画面F8是具有显示顺序和编码顺序之间的最大差值的画面。此外,由于画面F8在画面F1至F7之前被编码但在显示顺序上在画面F2至F7之后,因此需要对F8进行重新排序。因此,与图19A中示出的图像序列相应的num_reorder_frames语法是1。视频编码设备100可将作为画面F8的显示顺序和编码顺序之间的差值的7设置为MaxLatencyFrames语法的值,将MaxLatencyFrames语法的值作为SPS的强制分量插入,并将MaxLatencyFrames语法的值发送到视频解码设备200。可选择地,视频编码设备100可将作为MaxLatencyFrames语法的值的8与作为num_reorder_frames语法的值的1之间的差值的7设置为max_latency_increase语法的值,将num_reorder_frames语法和max_latency_increase语法而非MaxLatencyFrames语法作为SPS的强制分量插入,并将num_reorder_frames语法和max_latency_increase语法发送到视频解码设备200。
视频解码设备200可将与SPS一起发送的num_reorder_frames语法和max_latency_increase语法相加来确定MaxLatencyFrames语法,并在无需移撞处理的情况下通过使用MaxLatencyFrames语法来确定存储在DPB中的解码的画面的输出时间。
在图19B的图像序列中,除画面F0以外的所有画面的显示顺序和编码顺序之间的差是1。画面F2、F4、F6和F8是图19B的图像序列的画面之中具有慢编码顺序但具有快显示顺序的画面,因此需要被重新排序。基于画面F2、F4、F6和F8中的每一个,仅存在一个具有慢编码顺序但具有快显示顺序的画面。例如,仅存在一个具有比画面F2更慢的编码顺序但具有比画面F2更快的显示顺序的画面F1。因此,图19B的图像序列的num_reorder_frames语法的值是1。视频编码设备100可将1设置为MaxLatencyFrames语法的值,将MaxLatencyFrames语法的值作为SPS的强制分量插入,并将MaxLatencyFrames语法的值发送到视频解码设备200。可选择地,视频编码设备100可将作为MaxLatencyFrames语法的值的1与作为num_reorder_frames语法的值的1之间的差值0设置为max_latency_increase语法的值,将num_reorder_frames语法和max_latency_increase语法而非MaxLatencyFrames语法作为SPS的强制分量插入,并将num_reorder_frames语法和max_latency_increase语法发送到视频解码设备200。
视频解码设备200可将与SPS一起发送的num_reorder_frames语法和max_latency_increase语法相加来确定MaxLatencyFrames语法,并在没有任何移撞处理的情况下通过使用MaxLatencyFrames语法来确定存储在DPB中的解码的画面的输出时间。
在图19C的图像序列中,作为显示顺序上的最后一个且在编码顺序上被第二个编码的画面F8具有显示顺序和编码顺序之间的最大差值7。因此,MaxLatencyFrames语法是7。此外,由于画面F4和F8基于解码顺序在画面F1至F3之前被编码并被存储在DPB中,但基于显示顺序在画面F1至F3之后被显示,因此画面F4和F8需要被重新排序,因此,num_reorder_frames语法的值为2。视频编码设备100可将7设置为MaxLatencyFrames语法的值,将MaxLatencyFrames语法的值作为SPS的强制分量插入,并将MaxLatencyFrames语法的值发送到视频解码设备200。可选择地,视频编码设备100可将作为MaxLatencyFrames语法的值7和作为num_reorder_frames语法的值2之间的差值的5设置为max_latency_increase语法的值,将num_reorder_frames语法和max_latency_increase语法而非MaxLatencyFrames语法作为SPS的强制分量插入,并将num_reorder_frames语法和max_latency_increase语法发送到视频解码设备200。
视频解码设备200可将与SPS一起发送的num_reorder_frames语法和max_latency_increase语法相加来确定MaxLatencyFrames语法,并在没有任何移撞处理的情况下通过使用MaxLatencyFrames语法来确定存储在DPB中的解码的画面的输出时间。
在图19D的图像序列中,画面F4和F8具有显示顺序和编码顺序之间的差值的最大值3。因此,MaxLatencyFrames语法的值为3。此外,由于画面F2和F4在画面F1之前被编码并且基于显示顺序在画面F1之后被显示,因此需要对画面F2和F4进行重新排序。由于画面F6和F8在画面F5之前被编码并且基于显示顺序在画面F5之后被显示,因此需要对画面F6和F8进行重新排序。因此,num_reorder_frames语法的值为2。视频编码设备100可将3设置为MaxLatencyFrames语法的值,将MaxLatencyFrames语法的值作为SPS的强制分量插入并将MaxLatencyFrames语法的值发送到视频解码设备200。可选择地,视频编码设备100可将作为MaxLatencyFrames语法的值3的和作为num_reorder_frames语法的值2之间的差值的1设置为max_latency_increase语法的值,将num_reorder_frames语法和max_latency_increase语法而非MaxLatencyFrames作为SPS的强制分量插入,并将num_reorder_frames语法和max_latency_increase语法发送到视频解码设备200。
视频解码设备200可将与SPS一起发送的num_reorder_frames语法和max_latency_increase语法相加来确定MaxLatencyFrames语法,并在没有任何移撞处理的情况下通过使用MaxLatencyFrames语法来确定存储在DPB中的解码的画面的输出时间。
图20是示出根据本发明的实施例的图像编码方法的流程图。
参照图20,在操作2010,在视频编码设备100的VCL中执行编码的最大编码单元划分器110和编码单元确定器120(在下文中,统称为编码器)通过执行运动预测和补偿确定形成图像序列的图像帧中的每一个图像帧的参考帧,并通过使用确定的参考帧对每个图像帧进行编码。
在操作2020,输出单元130基于图像帧的编码顺序、图像帧参考的参考帧的编码顺序、图像帧的显示顺序以及参考帧的显示顺序来确定解码器对每个图像帧进行解码所需的缓冲器的最大大小,以及需要重新排序的图像帧的数量。详细地讲,输出单元130基于图像帧的编码顺序(或解码顺序)以及图像帧参考的参考帧的编码顺序(或解码顺序)来确定指示解码器对每个图像帧进行解码所需的DPB的最大大小的max_dec_frame_buffering语法,将max_dec_frame_buffering语法插入到与图像序列的头信息相应的SPS,并将max_dec_frame_buffering语法发送到编码器。如上所述,输出单元130将max_dec_frame_buffering语法作为强制信息而非可选择的信息包括在SPS中。
在操作2030,输出单元130基于需要重新排序的图像帧的数量,确定形成图像序列的图像帧之中编码顺序和显示顺序之间具有最大差的图像帧的延迟信息。详细地讲,输出单元130在对形成图像序列的图像帧进行编码时基于每个图像帧的编码顺序和显示顺序之间的差的最大值来确定MaxLatencyFrames语法。此外,输出单元130可基于图像序列的图像帧之中的预定图像帧确定根据编码顺序被首先编码并且基于显示顺序在后编码的图像之后被显示并因此需要被重新排序的图像帧的最大数量的num_reorder_frames语法,并将MaxLatencyFrames语法和num_reorder_frames语法之间的差值(即,MaxLatencyFrames语法-num_reorder_frames语法的值)作为用于确定MaxLatencyFrames语法的max_latency_increase语法插入到SPS。如果指示MaxLatencyFrames语法-num_reorder_frames语法的值的num_reorder_frames语法和max_latency_increase语法而非MaxLatencyFrames语法被包括在SPS中并与SPS一起被发送,则视频解码设备200可通过使用MaxLatencyFrames语法-num_reorder_frames语法的值确定MaxLatencyFrames语法。
在操作2040,输出单元130通过将max_latency_increase语法、num_reorder_frames语法和max_dec_frame_buffering语法作为SPS的强制分量而包括来产生比特流。
图21是示出根据本发明的实施例的图像解码方法的流程图。
参照图21,在操作2110,图像数据和编码信息提取器220从比特流获得NAL的NAL单元,并从包括SPS的NAL单元获得指示缓冲器的最大大小的max_dec_frame_buffering语法、指示需要重新排序的图像帧的数量的num_reorder_frames语法、以及用于确定MaxLatencyFrames语法的max_latency_increase语法。
在操作2120,包括在图像数据解码器230中的DPB通过使用max_dec_frame_buffering语法来设置对图像序列进行解码所需的缓冲器的最大大小。
在操作2130,图像数据和编码信息提取器220获得包括在VCL NAL单元中的图像帧的已编码的数据,并将获得的已编码的数据输出到图像数据解码器230。图像数据解码器230通过对已编码的图像数据进行解码来获得解码的图像帧。
在操作2140,图像数据解码器230的DPB存储解码的图像帧。
在操作2150,DPB通过使用num_reorder_frames语法和max_latency_increase语法来确定是否输出存储的已解码的图像帧。详细地讲,DPB通过将num_reorder_frames语法和max_latency_increase语法相加来确定MaxLatencyFrames语法。DPB针对每个被解码且被存储的图像帧设置预定的延迟参数,每当图像序列的图像帧根据解码顺序被解码时将所述预定延迟参数的计数增加1,并输出所述预定延迟参数的计数达到MaxLatencyFrames语法的解码的图像帧。
本发明还可被实现为计算机可读记录介质上的计算机可读代码。计算机可读记录介质是可存储其后可被计算机系统读取的数据的任意数据存储装置。计算机可读记录介质的示例包括只读存储器(ROM)、随机存取存储器(RAM)、CD-ROM、磁带、软盘、光学数据存储装置等。计算机可读记录介质还可被分布于联网的计算机系统以便计算机可读代码以分布式方式被存储和执行。
虽然已参照本发明的示例性实施例具体示出并描述了本发明,但是本领域的普通技术人员将理解,在不脱离由权利要求限定的本发明的精神和范围的情况下,可在此进行形式和细节上的各种改变。示例性实施例应被视为仅是说明性的意义,而不是为了限制的目的。因此,本发明的范围不是由本发明的详细描述来限定,而是由权利要求来限定,并且在所述范围内的所有差别将被解释为包括在本发明中。

Claims (3)

1.一种对图像进行解码的设备,所述设备包括:
图像数据和编码信息提取器,用于从比特流获得第一语法、第二语法和第三语法,其中,第一语法指示对包括在图像序列中的画面进行解码所需的缓冲器的最大大小,第二语法指示按照解码顺序能够排在图像序列中的任意第一画面之前并且按照显示顺序能够排在所述任意第一画面之后的需要重新排序的画面的最大数量,第三语法用于获得指示按照输出顺序能够排在图像序列中的任意第二画面之前并且按照解码顺序能够排在所述任意第二画面之后的画面的最大数量的MaxLatencyFrames信息;
解码器,用于对比特流进行解码;
缓冲器,用于存储解码的图像帧;
其中,解码器基于第一语法来确定用于存储解码的画面的缓冲器的最大大小,并且基于第二语法和第三语法,通过每当包括在图像序列中的画面被解码时将存储在缓冲器中的解码的画面的延迟参数计数增加1并在解码的画面的延迟参数计数等于MaxLatencyFrames信息时从缓冲器输出解码的画面,来确定是否输出存储在缓冲器中的解码的画面,
其中,第一语法、第二语法和第三语法被包括在序列参数集中。
2.一种用于对图像进行编码的设备,所述设备包括:
编码器,用于通过使用参考帧执行运动预测来对图像帧进行编码;
输出单元,用于基于图像帧的编码顺序、被图像帧参考的参考帧的编码顺序、图像帧的显示顺序以及参考帧的显示顺序来确定解码器对图像帧进行解码所需的缓冲器的最大大小以及需要重新排序的图像帧的数量,确定在编码顺序和显示顺序之间具有最大差的图像帧的MaxLatencyFrames信息,并通过将指示缓冲器的所述最大大小的第一语法、指示需要排序的图像帧的数量的第二语法以及指示MaxLatencyFrames信息的第三语法添加到强制序列参数集来产生比特流,
其中,用于存储解码的画面的缓冲器的最大大小是基于第一语法确定的,
其中,是否输出存储在缓冲器中的解码的画面是基于第二语法和第三语法,通过每当包括在图像序列中的画面被解码时将存储在缓冲器中的解码的画面的延迟参数计数增加1来确定的,
当解码的画面的延迟参数计数等于MaxLatencyFrames信息时,解码的画面从缓冲器被输出。
3.一种存储计算机程序的计算机可读介质,其中,所述计算机程序在被处理器执行时执行对图像进行解码的方法,所述方法包括:
从比特流获得第一语法、第二语法和第三语法,其中,第一语法指示对包括在图像序列中的画面进行解码所需的缓冲器的最大大小,第二语法指示按照解码顺序能够排在图像序列中的任意第一画面之前并且按照显示顺序能够排在所述任意第一画面之后的需要重新排序的画面的最大数量,第三语法用于获得指示按照输出顺序能够排在图像序列中的任意第二画面之前并且按照解码顺序能够排在所述任意第二画面之后的画面的最大数量的MaxLatencyFrames信息;
基于第一语法来确定用于存储解码的画面的缓冲器的最大大小;
将解码的画面存储在缓冲器中;并且
基于第二语法和第三语法,确定是否输出存储在缓冲器中的解码的画面,
其中,确定是否输出存储在缓冲器中的解码的画面的步骤还包括:
每当包括在图像序列中的画面被解码时将存储在缓冲器中的解码的画面的延迟参数计数增加1并在解码的画面的延迟参数计数等于MaxLatencyFrames信息时从缓冲器输出解码的画面,
其中,第一语法、第二语法和第三语法被包括在序列参数集中。
CN201710929433.9A 2011-11-25 2012-11-23 对图像解码的设备、对图像编码的设备及计算机可读介质 Active CN107483965B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201161563678P 2011-11-25 2011-11-25
US61/563,678 2011-11-25
KR10-2012-0034093 2012-04-02
KR1020120034093A KR20130058584A (ko) 2011-11-25 2012-04-02 복호화기의 버퍼 관리를 위한 영상 부호화 방법 및 장치, 그 영상 복호화 방법 및 장치
CN201280068213.7A CN104067618B (zh) 2011-11-25 2012-11-23 用于解码器的缓冲器管理的图像编码方法和装置、以及图像解码方法和装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201280068213.7A Division CN104067618B (zh) 2011-11-25 2012-11-23 用于解码器的缓冲器管理的图像编码方法和装置、以及图像解码方法和装置

Publications (2)

Publication Number Publication Date
CN107483965A CN107483965A (zh) 2017-12-15
CN107483965B true CN107483965B (zh) 2020-03-27

Family

ID=48857817

Family Applications (6)

Application Number Title Priority Date Filing Date
CN201710928851.6A Active CN107517388B (zh) 2011-11-25 2012-11-23 对图像进行解码的设备以及对图像进行编码的设备
CN201710928240.1A Active CN107465931B (zh) 2011-11-25 2012-11-23 对图像解码的方法、对图像编码的方法及计算机可读介质
CN201710929433.9A Active CN107483965B (zh) 2011-11-25 2012-11-23 对图像解码的设备、对图像编码的设备及计算机可读介质
CN201710928082.XA Active CN107517387B (zh) 2011-11-25 2012-11-23 对图像解码的方法、对图像编码的设备及计算机可读介质
CN201280068213.7A Active CN104067618B (zh) 2011-11-25 2012-11-23 用于解码器的缓冲器管理的图像编码方法和装置、以及图像解码方法和装置
CN201710929247.5A Active CN107465932B (zh) 2011-11-25 2012-11-23 图像编码方法和装置、以及图像解码方法和装置

Family Applications Before (2)

Application Number Title Priority Date Filing Date
CN201710928851.6A Active CN107517388B (zh) 2011-11-25 2012-11-23 对图像进行解码的设备以及对图像进行编码的设备
CN201710928240.1A Active CN107465931B (zh) 2011-11-25 2012-11-23 对图像解码的方法、对图像编码的方法及计算机可读介质

Family Applications After (3)

Application Number Title Priority Date Filing Date
CN201710928082.XA Active CN107517387B (zh) 2011-11-25 2012-11-23 对图像解码的方法、对图像编码的设备及计算机可读介质
CN201280068213.7A Active CN104067618B (zh) 2011-11-25 2012-11-23 用于解码器的缓冲器管理的图像编码方法和装置、以及图像解码方法和装置
CN201710929247.5A Active CN107465932B (zh) 2011-11-25 2012-11-23 图像编码方法和装置、以及图像解码方法和装置

Country Status (13)

Country Link
US (7) US9438901B2 (zh)
EP (1) EP2785054A4 (zh)
JP (1) JP2014533917A (zh)
KR (6) KR20130058584A (zh)
CN (6) CN107517388B (zh)
AU (1) AU2012341242A1 (zh)
BR (1) BR112014012549A2 (zh)
CA (2) CA2995095C (zh)
IN (1) IN2014MN01173A (zh)
MX (5) MX337915B (zh)
TW (5) TWI587690B (zh)
WO (1) WO2013077665A1 (zh)
ZA (4) ZA201706409B (zh)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105721880B (zh) * 2011-06-30 2019-04-05 微软技术许可有限责任公司 用于降低视频编码和解码中的延迟的方法和系统
KR20130058584A (ko) 2011-11-25 2013-06-04 삼성전자주식회사 복호화기의 버퍼 관리를 위한 영상 부호화 방법 및 장치, 그 영상 복호화 방법 및 장치
CN107087205B (zh) * 2012-06-12 2020-04-14 Lg 电子株式会社 图像解码方法及使用其的装置
CN103297780A (zh) * 2013-06-06 2013-09-11 上海高清数字科技产业有限公司 提高解码速率的方法及系统
CN106105210B (zh) 2014-01-03 2019-04-26 三星电子株式会社 管理用于对多层视频进行编码和解码的缓冲器的方法和设备
US10390087B2 (en) * 2014-05-01 2019-08-20 Qualcomm Incorporated Hypothetical reference decoder parameters for partitioning schemes in video coding
US9930341B2 (en) * 2014-06-20 2018-03-27 Qualcomm Incorporated Block vector coding for intra block copying
US10283091B2 (en) * 2014-10-13 2019-05-07 Microsoft Technology Licensing, Llc Buffer optimization
CN107615762B (zh) * 2015-05-29 2020-06-26 寰发股份有限公司 一种管理解码图像缓存器并解码视频比特流的方法及装置
KR102164062B1 (ko) * 2015-09-08 2020-10-13 미디어텍 인크. 인트라 블록 복사 모드를 위한 디코딩된 픽처 버퍼의 방법 및 시스템
US10115377B2 (en) * 2015-09-24 2018-10-30 Intel Corporation Techniques for video playback decoding surface prediction
EP3363195B1 (en) * 2015-10-19 2023-08-30 HFI Innovation Inc. Method and apparatus for decoded picture buffer management in video coding system using intra block copy
US10805637B2 (en) * 2016-05-16 2020-10-13 Samsung Electronics Co., Ltd. Video encoding method and apparatus, video decoding method and apparatus
US11025933B2 (en) * 2016-06-09 2021-06-01 Apple Inc. Dynamic video configurations
US10999602B2 (en) 2016-12-23 2021-05-04 Apple Inc. Sphere projected motion estimation/compensation and mode decision
US11259046B2 (en) 2017-02-15 2022-02-22 Apple Inc. Processing of equirectangular object data to compensate for distortion by spherical projections
US10924747B2 (en) 2017-02-27 2021-02-16 Apple Inc. Video coding techniques for multi-view video
CN107071385B (zh) * 2017-04-18 2019-01-25 杭州派尼澳电子科技有限公司 一种基于h265引入视差补偿的立体视频编码方法
US11093752B2 (en) 2017-06-02 2021-08-17 Apple Inc. Object tracking in multi-view video
US10754242B2 (en) 2017-06-30 2020-08-25 Apple Inc. Adaptive resolution and projection format in multi-direction video
KR102468596B1 (ko) * 2017-07-31 2022-11-21 에스케이텔레콤 주식회사 360 영상을 부호화 또는 복호화하기 위한 방법 및 장치
EP3846471A4 (en) 2018-08-31 2022-02-23 SZ DJI Technology Co., Ltd. ENCODING METHOD, DECODING METHOD, ENCODING APPARATUS, AND DECODING APPARATUS
US10812818B2 (en) * 2018-12-14 2020-10-20 Tencent America LLC Network abstraction unit layer type classes in network abstraction layer unit header
WO2020190113A1 (ko) * 2019-03-21 2020-09-24 삼성전자주식회사 블록 형태별로 블록 크기가 설정되는 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
US10861422B1 (en) * 2019-08-16 2020-12-08 Facebook Technologies, Inc. Display rendering
US20230171419A1 (en) * 2020-05-18 2023-06-01 Lg Electronics Inc. Image or video coding on basis of information related to picture output
CN116195250A (zh) * 2020-06-09 2023-05-30 Lg电子株式会社 基于dpb操作的图像或视频编码
CN112351277B (zh) * 2020-11-04 2024-04-05 北京金山云网络技术有限公司 一种视频的编码方法和装置,视频的解码方法和装置
CN112468875B (zh) * 2020-11-30 2022-03-29 展讯通信(天津)有限公司 视频解码帧的显示输出控制方法及装置、存储介质、终端
CN112738525B (zh) * 2020-12-11 2023-06-27 深圳万兴软件有限公司 视频处理方法、装置及计算机可读存储介质
KR102241939B1 (ko) 2021-02-08 2021-04-19 주식회사 빌트이엔씨 기둥형 친환경 하이브리드 미세먼지 저감장치
US11695965B1 (en) * 2022-10-13 2023-07-04 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Video coding using a coded picture buffer

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011068360A3 (ko) * 2009-12-01 2011-09-15 (주)휴맥스 고해상도 영상의 부호화/복호화 방법 및 이를 수행하는 장치

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6331856B1 (en) * 1995-11-22 2001-12-18 Nintendo Co., Ltd. Video game system with coprocessor providing high speed efficient 3D graphics and digital audio signal processing
CN1941904A (zh) * 1996-09-02 2007-04-04 株式会社东芝 编解码设备及编码/多路复用设备和解码/多路分解设备
JPH1174868A (ja) 1996-09-02 1999-03-16 Toshiba Corp 情報伝送方法およびその方法が適用される情報伝送システムにおける符号化装置/復号化装置、並びに符号化・多重化装置/復号化・逆多重化装置
ES2259827T3 (es) * 1998-10-13 2006-10-16 Matsushita Electric Industrial Co., Ltd. Regulacion de los requisitos de calculo y de memoria de un tren de bits comprimido en un decodificador de video.
KR100988006B1 (ko) * 2002-04-26 2010-10-18 소니 주식회사 복호 장치 및 방법, 그리고 기록 매체
TWI249356B (en) * 2002-11-06 2006-02-11 Nokia Corp Picture buffering for prediction references and display
MXPA05008404A (es) 2003-02-18 2005-10-05 Nokia Corp Metodo de codificacion de imagen.
US7266147B2 (en) * 2003-03-31 2007-09-04 Sharp Laboratories Of America, Inc. Hypothetical reference decoder
KR100651566B1 (ko) * 2003-08-26 2006-11-28 삼성전자주식회사 이동통신 단말기에서 출력 버퍼링을 이용한 멀티미디어재생 장치 및 그 제어 방법
US8345754B2 (en) * 2003-09-07 2013-01-01 Microsoft Corporation Signaling buffer fullness
US20050201471A1 (en) 2004-02-13 2005-09-15 Nokia Corporation Picture decoding method
EP2346243B1 (en) * 2004-08-31 2013-11-06 Panasonic Corporation Moving image encoding method and apparatus
EP1869891A4 (en) 2005-04-13 2014-06-11 CODING, STORAGE AND SIGNALING OF SCALABILITY INFORMATION
US20070086521A1 (en) 2005-10-11 2007-04-19 Nokia Corporation Efficient decoded picture buffer management for scalable video coding
US20070127578A1 (en) * 2005-12-02 2007-06-07 Dijia Wu Low delay and small memory footprint picture buffering
US20080002773A1 (en) 2006-06-26 2008-01-03 Texas Instruments Incorporated Video decoded picture buffer
KR100794798B1 (ko) * 2006-09-01 2008-01-15 삼성전자주식회사 시간지연을 완화하면서 역재생하는 영상기기 및 그제어방법
BR122012013059B1 (pt) * 2007-04-18 2020-09-15 Dolby International Ab Aparelho para processamento de codificação de vídeo de múltiplas vistas
US20100142613A1 (en) * 2007-04-18 2010-06-10 Lihua Zhu Method for encoding video data in a scalable manner
WO2009048503A2 (en) * 2007-10-05 2009-04-16 Thomson Licensing Methods and apparatus for incorporating video usability information (vui) within a multi-view video (mvc) coding system
US20090154567A1 (en) * 2007-12-13 2009-06-18 Shaw-Min Lei In-loop fidelity enhancement for video compression
TW200948092A (en) * 2008-03-07 2009-11-16 Toshiba Kk Dynamic image encoding/decoding method and device
US9391635B2 (en) * 2009-05-15 2016-07-12 Texas Instruments Incorporated Block scanner and run-level encoder from AC to DC values
KR101452859B1 (ko) * 2009-08-13 2014-10-23 삼성전자주식회사 움직임 벡터를 부호화 및 복호화하는 방법 및 장치
KR20110017719A (ko) * 2009-08-14 2011-02-22 삼성전자주식회사 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
JP2011082683A (ja) 2009-10-05 2011-04-21 Sony Corp 画像処理装置、画像処理方法、及び、プログラム
US9094658B2 (en) * 2010-05-10 2015-07-28 Mediatek Inc. Method and apparatus of adaptive loop filtering
US8885729B2 (en) * 2010-12-13 2014-11-11 Microsoft Corporation Low-latency video decoding
CN105721880B (zh) * 2011-06-30 2019-04-05 微软技术许可有限责任公司 用于降低视频编码和解码中的延迟的方法和系统
KR20130058584A (ko) 2011-11-25 2013-06-04 삼성전자주식회사 복호화기의 버퍼 관리를 위한 영상 부호화 방법 및 장치, 그 영상 복호화 방법 및 장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011068360A3 (ko) * 2009-12-01 2011-09-15 (주)휴맥스 고해상도 영상의 부호화/복호화 방법 및 이를 수행하는 장치

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
《Proposed constraint on reordering latency》;Gary J. Sullivan;《Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11》;20110722;全文 *

Also Published As

Publication number Publication date
TWI625055B (zh) 2018-05-21
ZA201706412B (en) 2022-03-30
WO2013077665A1 (ko) 2013-05-30
BR112014012549A2 (pt) 2017-06-13
TWI542199B (zh) 2016-07-11
US20170223362A1 (en) 2017-08-03
CN107465932A (zh) 2017-12-12
CA2856906A1 (en) 2013-05-30
KR20200037196A (ko) 2020-04-08
EP2785054A4 (en) 2015-10-14
MX337915B (es) 2016-03-28
CN104067618A (zh) 2014-09-24
KR20190065990A (ko) 2019-06-12
TWI587690B (zh) 2017-06-11
CN107465932B (zh) 2020-04-03
CN104067618B (zh) 2017-11-03
US20190158848A1 (en) 2019-05-23
ZA201706410B (en) 2022-12-21
KR102135966B1 (ko) 2020-07-20
TW201725906A (zh) 2017-07-16
CN107517387B (zh) 2020-08-04
US10499062B2 (en) 2019-12-03
US9699471B2 (en) 2017-07-04
US20170105001A1 (en) 2017-04-13
MX337918B (es) 2016-03-28
TW201826790A (zh) 2018-07-16
CA2995095C (en) 2020-12-22
US10218984B2 (en) 2019-02-26
KR20130058584A (ko) 2013-06-04
KR102400542B1 (ko) 2022-05-20
KR20200096179A (ko) 2020-08-11
TW201631971A (zh) 2016-09-01
US20160337654A1 (en) 2016-11-17
CN107465931A (zh) 2017-12-12
MX337917B (es) 2016-03-28
US9560370B2 (en) 2017-01-31
IN2014MN01173A (zh) 2015-07-03
TWI703855B (zh) 2020-09-01
KR20210133928A (ko) 2021-11-08
TW202029756A (zh) 2020-08-01
JP2014533917A (ja) 2014-12-15
KR102321365B1 (ko) 2021-11-03
MX2014006260A (es) 2014-07-09
ZA201706411B (en) 2022-03-30
AU2012341242A1 (en) 2014-07-10
KR102221101B1 (ko) 2021-02-26
ZA201706409B (en) 2019-02-27
CN107483965A (zh) 2017-12-15
US20140269899A1 (en) 2014-09-18
MX337916B (es) 2016-03-28
CN107517387A (zh) 2017-12-26
CN107517388A (zh) 2017-12-26
CN107517388B (zh) 2020-07-31
US20170347101A1 (en) 2017-11-30
CA2856906C (en) 2018-04-03
US9769483B2 (en) 2017-09-19
KR20210024516A (ko) 2021-03-05
TW201330634A (zh) 2013-07-16
US20180249161A1 (en) 2018-08-30
EP2785054A1 (en) 2014-10-01
CA2995095A1 (en) 2013-05-30
US9967570B2 (en) 2018-05-08
KR102099915B1 (ko) 2020-04-10
TWI693819B (zh) 2020-05-11
US9438901B2 (en) 2016-09-06
CN107465931B (zh) 2020-08-04

Similar Documents

Publication Publication Date Title
CN107483965B (zh) 对图像解码的设备、对图像编码的设备及计算机可读介质
JP6185620B2 (ja) ビデオデータの再生状態識別のためのビデオデータの多重化方法及び装置、逆多重化方法及び装置

Legal Events

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