CN105594209A - 图像解码装置、图像解码方法、图像编码装置以及图像编码方法 - Google Patents
图像解码装置、图像解码方法、图像编码装置以及图像编码方法 Download PDFInfo
- Publication number
- CN105594209A CN105594209A CN201480053151.1A CN201480053151A CN105594209A CN 105594209 A CN105594209 A CN 105594209A CN 201480053151 A CN201480053151 A CN 201480053151A CN 105594209 A CN105594209 A CN 105594209A
- Authority
- CN
- China
- Prior art keywords
- information
- profile
- ptl
- picture
- sublayer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/36—Scalability techniques involving formatting the layers as a function of picture distortion after decoding, e.g. signal-to-noise [SNR] scalability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
降低涉及简档信息以及等级信息的解码/编码的处理量以及削减符号量。对层次编码数据进行解码的图像解码装置具备:简档有无标记解码单元,对表示PTL(简档/层级/等级)信息列表中的PTL信息内的简档信息的有无的简档有无标记进行解码;以及对PTL信息进行解码的PTL信息解码单元(1021)。上述PTL信息解码单元在上述简档有无标记为1的情况下,从编码数据解码上述PTL信息的简档信息,在上述简档信息有无标记为0的情况下,将上述PTL信息内的简档信息推算为等于前一个进行了解码的PTL信息的简档信息。
Description
技术领域
本发明涉及对图像被层次性地进行编码的层次编码数据进行解码的图像解码装置以及图像解码方法、及通过对图像层次性地进行编码而生成层次编码数据的图像编码装置以及图像解码方法。
背景技术
在通信系统中传输的信息或者在存储装置中记录的信息之一,有图像或者运动图像。以往,已知为了这些图像(以后,包括运动图像)的传输/存储而对图像进行编码的技术。
作为运动图像编码方式,已知AVC(H.264/MPEG-4高级视频编码(AdvancedVideoCoding))、作为其后继编解码器(Codec)的HEVC(高效的视频编码(High-EfficiencyVideoCoding))(非专利文献1)。
在这些运动图像编码方式中,通常,基于通过对输入图像进行编码/解码而获得的局部解码图像,生成预测图像,对从输入图像(原图像)减去该预测图像而获得的预测残差(有时也称为“差分图像”或者“残差图像”)进行编码。此外,作为预测图像的生成方法,举出画面间预测(外部预测)以及画面内预测(内部预测)。
在HEVC中,设想如将60fps的内容以30fps来再现的情况这样的、以在时间上间拔的帧率来再现的情况而使用实现时间可伸缩性(Temporalscalability)的技术。具体而言,对各图片(Picture)分配时间识别符(也被称为TemporalID、子层识别符),施加时间识别符大的图片不参照比其时间识别符小的时间识别符的图片这样的限制。由此,在只将特定的时间识别符的图片间拔而再现的情况下,不需要被附加了比它大的时间识别符的图片的解码。
此外,近年来,提出了根据需要的数据速率来对图像层次性地进行编码的可伸缩编码技术或者层次编码技术。作为代表性的可伸缩编码方式(层次编码方式),已知SHVC(可伸缩HEVC(ScalableHEVC))以及MV-HEVC(多视点HEVC(MultiViewHEVC))。
在SHVC中,支持空间可伸缩性、时间可伸缩性、SNR可伸缩性。例如,在空间可伸缩性的情况下,将从原图像以期望的分辨率进行了下采样的图像作为下位层来进行编码。接着,在上位层中,为了去除层间的冗长性而进行层间预测(非专利文献2)。
在MV-HEVC中,支持视点可伸缩性(Viewscalability)。例如,在对视点图像0(层0)、视点图像1(层1)、视点图像2(层2)这3个视点图像进行编码的情况下,从下位层(层0)通过层间预测而预测作为上位层的视点图像1、视点图像2,能够去除层间的冗长性(非专利文献3)。
在SHVC或MV-HEVC等的可伸缩编码方式中利用的层间预测中,有层间图像预测和层间移动预测。在层间图像预测中,利用下位层(或者,与对象层不同的其他层)的解码完毕图片的纹理信息(图像),生成对象层的预测图像。在层间移动预测中,利用下位层(或者,与对象层不同的其他层)的解码完毕图片的移动信息,导出对象层的移动信息的预测值。即,通过利用下位层(或者,与对象层不同的其他层)的解码完毕图片作为对象层的参照图片,进行层间预测。
此外,在非专利文献1中,为了规定图像解码装置(解码器)对什么样的图像的编码数据(或者,层次编码数据)进行解码所需的处理能力,定义了简档(profile)和等级(level)。
简档是设想特定的应用,规定遵照标准的解码器应具备的处理功能的,由编码工具(要素技术)的组合或者集合所定义。通过规定简档,在各个应用中,只安装合适的简档即可,无需安装标准整体,具有能够降低解码器/编码器的复杂度的优点。
等级是规定解码器的处理能力上限或电路规模的范围的,规定每单位时间的最大处理像素数、图像的最大分辨率、最大比特率、最大参照图像缓冲器大小、最低限度的压缩率等的参数的限制。即,等级是规定解码器的处理能力或比特流的复杂度的。此外,在等级中,还规定了将在各简档中规定的工具支持到什么范围。因此,在上位的等级中,需要支持下位的等级。
例如,在非专利文献1中,如图52(a)所示,进行等级限制的各种参数举出最大亮度图片大小(Maxlumapicturesize)、最大比特率(Maxbitrate)、最大CPB大小(MaxCPBsize)、每个图片单位的最大切片分段数(Maxslicesegmentsperpicture)、每个图片单位的最大瓦片行数(Maxnumberoftilerows)、每个图片单位的最大瓦片列数(Maxnumberoftilecolumns)。此外,如图52(b)所示,对特定的简档应用的、进行等级限制的各种参数举出最大亮度采样率(Maxlumasamplerate)、最大比特率(Maxbitrate)以及最低压缩比率(MincompressionRatio)。另外,作为等级的子概念,有与各等级对应的比特流(编码数据)的最大比特率、以及表示存储比特流的最大CPB大小是以主层级(Maintier:消费者用)规定的值还是以高层级(Hightier:业务用)规定的值的“层级”(tier)。
例如,在非专利文献1中,作为简档,定义了主简档。在主简档中,例如,规定了如图53的(a)所示的编码工具的限制。此外,在主简档中,除了以图52所示的等级规定的限制之外,还规定了图53的(b)所示的追加的等级限制。
此外,在非专利文献1中,由图54所示的简档/等级信息(以后,也称为PTL信息)profile_tier_level()上的简档识别符general_profile_idc(图54上的语法组SYNPTL01)指定比特流遵照哪个简档。例如,在遵照主简档的情况下,general_profile_idc的值被设定为1。
此外,有表示是否能够通过遵照除了由简档识别符general_profile_idc所指定的简档以外的简档的解码器对当前比特流进行解码的general_profile_compatibility_flag[i](图54上的语法组SYNPTL01)。例如,在与主简档有互换的情况下,被设定为general_profile_compatibility_flag[1]=1。
此外,由PTL信息profile_tier_level()上的等级识别符general_level_idc(图54上的SYNPTL02)指定表示比特流的复杂度或者用于对比特流进行解码所需的解码器的能力的等级遵照图52的哪个等级。例如,在等级识别符general_level_idc的值表示“61”的情况下,表示对应于图52的等级6.1,在等级识别符general_level_idc的值为“10”的情况下,表示对应于图52的等级1。即,等级识别符general_level_idc表示的值的十的位(第2位)、一的桁(第1位)分别对应于图52上的等级的整数和小数点的值。
此外,在由等级识别符general_level_idc指定的等级中,有表示层级是主层级还是高层级的层级标记general_tier_flag(图54上的语法组SYNPTL01)。在层级标记general_tier_flag的值为0的情况下,表示是主层级,在值为1的情况下,表示是高层级。
此外,在图54所示的PTL信息profile_tier_level()中,若子层简档有无标记sub_layer_profile_present_flag[i](图54上的语法组SYNPTL03)、子层等级有无标记sub_layer_level_present_flag[i](图54上的语法组SYNPTL03)分别为1,则能够显式地指定与时间可伸缩性有关的每个层(以后,也称为子层或者时间子层)的简档信息(以后,称为子层简档信息的图54上的语法组SYNPTL05)以及等级信息(以后,称为子层等级信息的图54上的语法SYNPTL06)。
另外,在非专利文献1中,PTL信息profile_tier_level()在图10的(a)所示的视频参数集VPS(VideoParameterSet)以及序列参数集SPS(SequenceParameterSet)的双方的参数集中进行信号通知。
此外,在SHVC(非专利文献2)或MV-HEVC(非专利文献3)等的可伸缩编码中,对在进行了层次编码的某编码数据(比特流)中包含的各层集应用的PTL信息在比特流中进行信号通知。具体而言,在视频参数集上的图55的SYNVPS02中,与层集0(基础层)有关的PTL信息profile_tier_level()进行信号通知,在视频参数集扩展数据(图56)上,由在比特流中包含的PTL信息的总数-1的值“vps_num_profile_tier_level_minus1”(图56上的SYNVPS0D)以及vps_num_profile_tier_level_minus1个的PTL信息(图56上的SYNVPS0G)构成的PTL信息列表进行信号通知。接着,通过将指定在各层集(层集i)中应用的PTL信息的PTL信息指定索引“profile_tier_level_idx[i]”(图56上的语法组SYNVPS0H)进行信号通知,与按每个层集单位将PTL信息进行信号通知的情况相比,能够削减PTL信息的符号量。此外,若具有与在PTL信息列表内包含的第i个PTL信息相同的简档信息的第i个之前的PTL信息在PTL信息列表内存在,则通过将VPS简档有无标记“vps_profile_present_flag[i]”(图56上的SYNVPS0E)的值作为0进行信号通知,进一步,将表示PTL信息列表上的对应的PTL信息的位置的索引(参照PTL信息指定索引)“profile_ref_minus1[i]”(图56上的SYNVPS0F)进行信号通知,在第i个PTL信息的简档信息中继承第“profile_ref_minus1[i]+1”个PTL信息的简档信息,能够削减将简档信息重复进行信号通知的冗长性(图57、62)。
换言之,现有的、将与用于层集(layerset)的简档/等级信息profile_tier_level()有关的语法的结构进行信号通知的方法概括为如下。即,
·将与简档/等级信息profile_tier_level()有关的语法的结构的列表进行信号通知。
·从PTL信息列表选择由第i个PTL信息指定索引profile_level_tier_idx[i]指定要对第i个层集应用的简档/等级信息的PTL信息。
此外,上述列表中的简档/等级信息profile_tier_level()的信令的细节如以下所述。
·在各简档/等级信息profile_tier_level()中,第i个VPS简档有无标记vps_profile_present_flag[i]进行信号通知,在该标记被设置为“0”时,第i个参照PTL信息指定索引profile_ref_minus1[i]也进行信号通知,从第(profile_ref_minus1[i]+1)个简档/等级信息pprofile_tier_level()的通用简档信息推算第i个简档/等级信息profile_tier_level()的通用简档信息generalprofileinformation。
·在各简档/等级信息profile_tier_level()的简档以及等级的信令中,第i个子层的简档以及等级能够分别通过子层简档有无标记sub_layer_profile_present_flag以及第i个子层等级有无标记sub_layer_level_present_flag[i]而省略。
图59是表示现有的PTL解码部的概略结构的图,此外,图61是表示图59所示的现有的PTL解码部的解码动作的概要的图。图60是表示现有的PTL编码部的概略结构的图。
现有技术文献
非专利文献
非专利文献1:「RecommendationH.265(04/13)」,ITU-T(2013年6月7日公开)
非专利文献2:JCTVC-N1008_v3「SHVCDraft3」,JointCollaborativeTeamonVideoCoding(JCT-VC)ofITU-TSG16WP3andISO/IECJTC1/SC29/WG1114thMeeting:Vienna,AT,25July-2Aug.2013(2013年8月20日公开)
非专利文献3:JCT3V-E1008_v5「MV-HEVCDraftText5」,JointCollaborativeTeamon3DVideoCodingExtensionDevelopmentofITU-TSG16WP3andISO/IECJTC1/SC29/WG115thMeeting:Vienna,AT,27July-2Aug.2013(2013年8月7日公开)
发明内容
发明要解决的课题
但是,关于现有技术中的视频参数集扩展数据上的PTL信息profile_tier_level()的信号通知,有以下的课题。
(1)在非专利文献2以及3中,被限制为“‘profile_ref_minus1[i]’的值的范围小于i”。因此,存在在PTL信息列表上的第1个PTL信息的VPS简档有无标记“vsp_profile_present_flag[1]”为0的情况下,无法由参照PTL信息指定索引“profile_ref_minus1[1]+1”来指定PTL信息列表上的第0个(开头)PTL信息作为参照目标这样的课题。此外,存在若假设禁止指定第0个PTL信息作为参照目标,则在PTL信息列表上的第1个PTL信息中,VPS简档有无标记“vps_profile_present_flag[1]”以及参照PTL信息指定索引“profile_ref_minus1[1]”的符号量冗长这样的课题。
(2)此外,在编码器中,通过将在PTL信息列表中进行信号通知的PTL信息预先按照类似顺序排序编码,第i个PTL信息的大多数能够提高参照紧前的PTL信息的概率。但是,在现有技术中,存在将参照PTL信息索引“profile_ref_minus1”始终以6比特的固定长度来进行编码,符号量冗长这样的课题。
(3)存在在将第i个PTL信息从第(profile_ref_minus1[i]+1)个PTL信息参照简档信息的情况下,在参照目标(第(profile_ref_minus1[i]+1)个)的PTL信息中,某子层的简档信息没有被进行信号通知的情况下,在参照源(第i个)的PTL信息中不确定对应的子层的简档信息的课题。同样地,存在在第i个PTL信息中,某子层的等级信息没有被进行信号通知的情况下,在参照第i个PTL信息的层集中不确定对应的子层的等级信息的课题(参照图61上的SC115)。
例如,假设解码器要对从进行了层次编码的编码数据(比特流)通过子比特流提取处理而提取的、对象层集的比特流进行解码。此时,在解码器对应的等级小于对象层集的最高次子层(或者,最高次时间层)的等级(general_level_idc)的情况下,由于解码器没有用于对包括对象层集的比特流进行解码所需的处理能力,所以存在在动画再现时发生意想不到的丢帧的可能性。另一方面,若对各子层适当地赋予等级信息,则解码器通过参照对象层集的PTL信息的各子层的等级信息,从对象层集的比特流中提取(子比特流提取)满足解码器对应的简档以及等级的子集(层以及子层)的比特流并进行解码,能够防止意想不到的丢帧。
本发明是鉴于上述问题而完成的,其目的在于,实现一种图像解码装置以及图像编码装置,其能够改良与用于判断解码器能否解码对图像进行了编码的编码数据(或者层次编码数据)所需的PTL信息相关的语法以及数据结构,降低涉及简档信息以及等级信息的解码/编码的处理量以及削减符号量。
用于解决课题的手段
为了解决上述的课题,本发明的一个方式的图像解码装置是对层次编码数据进行解码的图像解码装置,其特征在于,具备:简档有无标记解码单元,对表示PTL信息列表中的PTL信息内的简档信息的有无的简档有无标记进行解码;以及PTL信息解码单元,对PTL信息进行解码,上述PTL信息解码单元在上述简档有无标记为1的情况下,从编码数据解码上述PTL信息的简档信息,在上述简档信息有无标记为0的情况下,将上述PTL信息内的简档信息推算为等于前一个进行了解码的PTL信息的简档信息。
此外,本发明的一个方式的图像解码方法是对层次编码数据进行解码的图像解码方法,其特征在于,包括如下步骤:简档有无标记解码步骤,对表示PTL信息列表中的PTL信息内的简档信息的有无的简档有无标记进行解码;以及PTL信息解码步骤,对PTL信息进行解码,在上述PTL信息解码步骤中,在上述简档有无标记为1的情况下,从编码数据解码上述PTL信息的简档信息,在上述简档信息有无标记为0的情况下,将上述PTL信息内的简档信息推算为等于前一个进行了解码的PTL信息的简档信息。
此外,本发明的一个方式的图像编码装置是对图像数据层次性地进行编码而生成层次编码数据的图像编码装置,其特征在于,具备PTL信息编码部,该PTL信息编码部对表示上述层次编码数据的简档的PTL信息进行编码,上述PTL信息编码部在上述PTL信息中对简档信息进行编码的情况下,将简档有无标记的值编码为1,在将上述PTL信息内的简档信息推算为等于前一个进行了编码的PTL信息的简档信息的情况下,将简档有无标记的值编码为0。
此外,本发明的一个方式的图像编码方法是对图像数据层次性地进行编码而生成层次编码数据的图像编码方法,其特征在于,包括PTL信息编码步骤,在该PTL信息编码步骤中,对表示上述层次编码数据的简档的PTL信息进行编码,在上述PTL信息编码步骤中,在上述PTL信息中对简档信息进行编码的情况下,将简档有无标记的值编码为1,在将上述PTL信息内的简档信息推算为等于前一个进行了编码的PTL信息的简档信息的情况下,将简档有无标记的值编码为0。
发明效果
根据本发明的一个方式,起到能够从第0个简档/等级信息推算第1个简档/等级信息的简档以及层级的信息这样的效果。
此外,根据本发明的一个方式,起到由于第i个参照PTL信息指定索引被进行编码,所以能够抑制比特这样的效果。
此外,根据本发明的一个方式,起到由于能够从第(i-1)个简档/等级信息推算第i个简档/等级信息的简档以及层级的信息,所以能够抑制比特这样的效果。
附图说明
图1是用于说明本发明的一实施方式的层次编码数据的层结构的图,(a)表示层次运动图像编码装置侧,(b)表示层次运动图像解码装置侧。
图2是用于说明构成某层集的层、以及子层(时间层)的结构的图。
图3是用于说明构成从图2所示的层集通过子比特流提取处理而提取的层集的子集的层、以及子层(时间层)的图。
图4是表示构成NAL单元层的数据结构的例的图。
图5是表示NAL单元的编码数据的结构的图。
图6是表示NAL单元类型的值和NAL单元的类别的关系的图。
图7是视频参数集VPS的语法表格的一例。
图8是扩展视频参数集VPS的语法表格的一例。
图9是表示PTL信息的数据结构的图。
图10是用于说明本发明的实施方式的层次编码数据的结构的图,(a)是表示规定序列SEQ的序列层的图,(b)是表示规定图片PICT的图片层的图,(c)是表示规定切片S的切片层的图,(d)是表示规定切片数据的切片数据层的图,(e)是表示规定在切片数据中包含的编码树单元的编码树层的图,(f)是表示规定在编码树中包含的编码单位(CodingUnit;CU)的编码单元层的图。
图11是表示参照图片列表的一例的概念图。
图12是表示参照图片的例的概念图。
图13是表示了本发明的实施方式的图像解码装置的概略性结构的功能框图。
图14是表示上述图像解码装置的头部解码部的概略性结构的图。
图15是表示了上述图像解码装置的NAL单元头部解码部的概略性结构的功能框图。
图16是表示了上述头部解码部的VPS解码部的概略性结构的功能框图。
图17是用于说明VPS解码部的动作的流程图。
图18是用于说明VPS扩展数据的解码过程的流程图。
图19(a)、(b)是由哥伦布码表示了相对索引的图。
图20是表示PTL信息解码部的细节的框图。
图21是表示PTL信息解码部中的处理的流程的流程图。
图22是扩展视频参数集VPS(VPS扩展数据)的语法表格的变形例。
图23是扩展视频参数集VPS(VPS扩展数据)的语法表格的变形例。
图24是用于说明VPS扩展数据的解码过程的流程图。
图25是表示了VPS解码部的概略性结构的变形例的功能框图。
图26是表示PTL信息解码部中的处理的流程的变形例的流程图。
图27是表示PTL信息解码部的详细的变形例的框图。
图28是视频参数集VPS的语法表格的变形例。
图29是扩展视频参数集VPS(VPS扩展数据)的语法表格的变形例。
图30是用于说明VPS扩展数据的解码过程的变形例的流程图。
图31是表示了VPS解码部的概略性结构的变形例的功能框图。
图32是表示PTL信息的数据结构的变形例的图。
图33是表示PTL信息解码部中的处理的流程的变形例的流程图。
图34是表示PTL信息解码部的详细的变形例的框图。
图35是表示参照图片集和参照图片列表的例的图,(a)是将构成运动图像的图片按照显示顺序排列的图,(b)是表示对对象图片应用的RPS信息的例的图,(c)是表示在对象图片的POC为0的情况下,应用了在(b)中例示的RPS信息时导出的当前RPS的例的图,(d)以及(e)是表示从在当前RPS中包含的参照图片生成的参照图片列表的例的图。
图36是表示参照图片列表修正例的图,(a)是表示修正前L0参照列表的图,(b)是表示RPL修正信息的图,(c)是表示修正后的L0参照列表的图。
图37是表示图片结构的结构的概略图。
图38是表示了参照图片管理部的概略性结构的功能框图。
图39是例示在上述图像解码装置的头部解码部以及参照图片信息解码部中在SPS解码时利用的SPS语法表的一部分的图。
图40是例示在上述图像解码装置的头部解码部以及参照图片信息解码部中的SPS解码时以及切片头部解码时利用的短期参照图片集的语法表的图。
图41是例示在上述图像解码装置的头部解码部以及参照图片信息解码部中在切片头部解码时利用的切片头部语法表的一部分的图。
图42是例示在上述图像解码装置的头部解码部以及参照图片信息解码部中在切片头部解码时利用的切片头部语法表的一部分的图。
图43是例示在上述图像解码装置的头部解码部以及参照图片信息解码部中在切片头部解码时利用的参照列表排序信息的语法表的图。
图44是表示本实施方式的图像解码装置的结构的概略图。
图45是表示本实施方式的图像编码装置的结构的概略图。
图46是表示图片编码部的结构的框图。
图47是表示了VPS编码部的概略性结构的功能框图。
图48是表示了VPS编码部的概略性结构的变形例的功能框图。
图49是表示PTL信息编码部的细节的框图。
图50是表示搭载了上述层次运动图像编码装置的发送装置、以及搭载了上述层次运动图像解码装置的接收装置的结构的图。(a)表示搭载了层次运动图像编码装置的发送装置,(b)表示搭载了层次运动图像解码装置的接收装置。
图51是表示搭载了上述层次运动图像编码装置的记录装置、以及搭载了上述层次运动图像解码装置的再现装置的结构的图。(a)表示搭载了层次运动图像编码装置的记录装置,(b)表示搭载了层次运动图像解码装置的再现装置。
图52是表示与现有技术中的等级限制有关的各参数的限制值的图。
图53是现有技术中的图,(a)是与主简档有关的参数的限制的一例,(b)是与主简档有关的追加的等级限制的一例。
图54是表示现有技术中的、PTL信息的数据结构的图。
图55是表示现有技术中的、视频参数集VPS的语法表格的图。
图56是表示现有技术中的、扩展视频参数集VPS的语法表格的图。
图57是表示现有技术中的、VPS数据的解码过程的流程的流程图。
图58是表示现有技术中的、VPS扩展数据的解码过程的流程的流程图。
图59是表示现有技术中的、PTL信息解码部的结构的框图。
图60是表示现有技术中的、PTL信息编码部的结构的框图。
图61是表示现有技术中的、PTL信息解码部中的处理的流程的流程图。
图62是表示本实施方式的子层的简档信息的设定方法的一例的伪码。(a)表示在简档有无标记(profilePresentFlag)为1的情况下的设定方法,(b)表示在简档有无标记为0的情况下的设定方法。
图63是表示本实施方式的子层的等级信息的设定方法的一例的伪码。(a)表示在子层等级有无标记(sub_layer_level_flag[i])为0的情况下的设定方法,(b)是(a)的其他表现的伪码。
图64是表示本实施方式的子层的简档信息的设定方法的一例的伪码。(a)表示在等级有无标记(levelPresentFlag)为1的情况下的设定方法,(b)、(c)表示在等级有无标记为0的情况下的设定方法。
图65是扩展视频参数集VPS(VPS扩展数据)的语法表格的变形例的一例。
图66是用于说明VPS扩展数据的解码过程的变形例的流程图。
图67是用于说明VPS扩展数据的编码过程的变形例的流程图。
图68是扩展视频参数集VPS(VPS扩展数据)的语法表格的变形例的一例。
图69是用于说明VPS扩展数据的解码过程的变形例的流程图。
图70是用于说明VPS扩展数据的编码过程的变形例的流程图。
具体实施方式
基于图1~图27说明本发明的一实施方式的层次运动图像解码装置1以及层次运动图像编码装置2的话,如下所述。
〔概要〕
本实施方式的层次运动图像解码装置(也记载为图像解码装置)1对通过层次运动图像编码装置(也记载为图像编码装置)2进行了层次编码的编码数据进行解码。层次编码是指,将运动图像从低质量到高质量层次性地进行编码的编码方式。层次编码例如在SVC或SHVC中进行标准化。另外,这里所称的运动图像的质量广泛地意味着对主观性以及客观性的运动图像的美观产生影响的要素。在运动图像的质量中,例如包括“分辨率”、“帧率”、“画质”以及“像素的表现精度”。因此,以下,若说运动图像的质量不同,则例示性地指“分辨率”等不同,但并不限定于此。例如,在通过不同的量化步长而被量化的运动图像的情况下(即,在通过不同的编码噪声而被编码的运动图像的情况下),也可以说运动图像的质量互不相同。
此外,从层次化的信息的种类的观点出发,层次编码技术有时也被分类为(1)空间可伸缩性、(2)时间可伸缩性、(3)SNR(信噪比(SignaltoNoiseRatio))可伸缩性以及(4)视点可伸缩性。空间可伸缩性是在分辨率或图像的大小上进行层次化的技术。时间可伸缩性是在帧率(单位时间的帧数)上进行层次化的技术。SNR可伸缩性是在编码噪声上进行层次化的技术。此外,视点可伸缩性是在与各图像相对应的视点位置上进行层次化的技术。
在本实施方式的层次运动图像编码装置2以及层次运动图像解码装置1的详细的说明之前,首先,说明(1)通过层次运动图像编码装置2而被生成、通过层次运动图像解码装置1而被解码的层次编码数据的层结构,接着,说明(2)在各层中能够采用的数据结构的具体例。
〔层次编码数据的层结构〕
这里,使用图1说明层次编码数据的编码以及解码的话,如下所述。图1是示意性地表示通过下位层次L3、中位层次L2以及上位层次L1的3个层次对运动图像层次性地进行编码/解码的情况的图。即,在图1(a)以及(b)所示的例中,在3个层次中,上位层次L1成为最上位层,下位层次L3成为最下位层。
以下,与能够从层次编码数据进行解码的特定的质量对应的解码图像被称为特定的层次的解码图像(或者,与特定的层次对应的解码图像)(例如,上位层次L1的解码图像POUT#A)。
图1(a)表示将输入图像PIN#A~PIN#C分别层次性地进行编码而生成编码数据DATA#A~DATA#C的层次运动图像编码装置2#A~2#C。图1(b)表示将层次性地进行了编码的编码数据DATA#A~DATA#C分别进行解码而生成解码图像POUT#A~POUT#C的层次运动图像解码装置1#A~1#C。
首先,使用图1(a)说明编码装置侧。成为编码装置侧的输入的输入图像PIN#A、PIN#B以及PIN#C虽然原画相同,但图像的质量(分辨率、帧率以及画质等)不同。图像的质量按照输入图像PIN#A、PIN#B以及PIN#C的顺序降低。
下位层次L3的层次运动图像编码装置2#C对下位层次L3的输入图像PIN#C进行编码而生成下位层次L3的编码数据DATA#C。包括用于对下位层次L3的解码图像POUT#C进行解码所需的基本信息(图1中由“C”表示)。由于下位层次L3是最下层的层次,所以下位层次L3的编码数据DATA#C也被称为基本编码数据。
此外,中位层次L2的层次运动图像编码装置2#B一边参照下位层次的编码数据DATA#C,一边对中位层次L2的输入图像PIN#B进行编码而生成中位层次L2的编码数据DATA#B。在中位层次L2的编码数据DATA#B中,除了在编码数据DATA#C中包含的基本信息“C”之外,还包括用于对中位层次的解码图像POUT#B进行解码所需的附加的信息(图1中由“B”表示)。
此外,上位层次L1的层次运动图像编码装置2#A一边参照中位层次L2的编码数据DATA#B,一边对上位层次L1的输入图像PIN#A进行编码而生成上位层次L1的编码数据DATA#A。在上位层次L1的编码数据DATA#A中,除了用于对下位层次L3的解码图像POUT#C进行解码所需的基本信息“C”以及用于对中位层次L2的解码图像POUT#B进行解码所需的附加的信息“B”之外,还包括用于对上位层次的解码图像POUT#A进行解码所需的附加的信息(图1中由“A”表示)。
这样,上位层次L1的编码数据DATA#A包括与不同的多个质量的解码图像有关的信息。
接着,参照图1(b)说明解码装置侧。在解码装置侧中,与上位层次L1、中位层次L2以及下位层次L3的各个层次对应的解码装置1#A、1#B以及1#C对编码数据DATA#A、DATA#B以及DATA#C进行解码而输出解码图像POUT#A、POUT#B以及POUT#C。
另外,也能够提取上位的层次编码数据的一部分信息,在较下位的特定的解码装置中,通过对该提取出的信息进行解码,从而再现特定的质量的运动图像。
例如,中位层次L2的层次运动图像解码装置1#B也可以从上位层次L1的层次编码数据DATA#A中,提取用于对解码图像POUT#B进行解码所需的信息(即,在层次编码数据DATA#A中包含的“B”以及“C”),对解码图像POUT#B进行解码。换言之,在解码装置侧中,能够基于在上位层次L1的层次编码数据DATA#A中包含的信息,对解码图像POUT#A、POUT#B以及POUT#C进行解码。
另外,并不限定于以上的3个层次的层次编码数据,层次编码数据也可以通过2个层次进行层次编码,也可以通过多于3个层次的层次数进行层次编码。
此外,也可以如下构成层次编码数据:将与特定的层次的解码图像有关的编码数据的一部分或者全部,与其他的层次独立地编码,在特定的层次的解码时,也可以不参照其他的层次的信息。例如,在使用了图1(a)以及(b)的上述的例中,说明了在解码图像POUT#B的解码中参照“C”以及“B”,但并不限定于此。也能够如下构成层次编码数据:解码图像POUT#B能够只使用“B”进行解码。例如,也能够构成如下的层次运动图像解码装置:在解码图像POUT#B的解码中,以只由“B”构成的层次编码数据和解码图像POUT#C作为输入。
另外,在实现SNR可伸缩性的情况下,也能够如下生成层次编码数据:在作为输入图像PIN#A、PIN#B以及PIN#C而使用了同一个原画的基础上,解码图像POUT#A、POUT#B以及POUT#C成为不同的画质。此时,与上位层次的层次运动图像编码装置相比,下位层次的层次运动图像编码装置通过使用更大的量化步长对预测残差进行量化,从而生成层次编码数据。
在本说明书中,为了便于说明,如下定义用语。只要没有特别提及,则以下的用语用于表示下述的技术事项。
上位层:将比某层次位于上位的层次称为上位层。例如,在图1中,下位层次L3的上位层是中位层次L2以及上位层次L1。此外,上位层的解码图像是指,质量更高(例如,分辨率更高、帧率更高、画质更高等)的解码图像。
下位层:将比某层次位于下位的层次称为下位层。例如,在图1中,上位层次L1的下位层是中位层次L2以及下位层次L3。此外,下位层的解码图像是指,质量更低的解码图像。
对象层:是指成为解码或者编码的对象的层次。
参照层:将在对与对象层对应的解码图像进行解码时参照的特定的下位层称为参照层。
在如图1(a)以及(b)所示的例中,上位层次L1的参照层是中位层次L2以及下位层次L3。但是,并不限定于此,也能够如下构成层次编码数据:在特定的上述层的解码中,也可以不参照下位层的全部。例如,也能够如下构成层次编码数据:上位层次L1的参照层成为中位层次L2以及下位层次L3中的任一个。
基本层:将位于最下层的层次称为基本层。基本层的解码图像是能够从编码数据进行解码的质量最低的解码图像,被称为基本解码图像。换言之,基本解码图像是与最下层的层次对应的解码图像。基本解码图像的解码所需的层次编码数据的部分编码数据被称为基本编码数据。例如,在上位层次L1的层次编码数据DATA#A中包含的基本信息“C”是基本编码数据。
扩展层:基本层的上位层被称为扩展层。
层识别符:层识别符(也称为层ID)是用于对层次进行识别的识别符,与层次1对1对应。在层次编码数据中,包括用于选择特定的层次的解码图像的解码所需的部分编码数据的层次识别符。与对应于特定的层的层识别符相关的层次编码数据的部分集合也被称为层表现。
一般,在特定的层次的解码图像的解码中,使用该层次的层表现和/或与该层次的下位层对应的层表现。即,在对象层的解码图像的解码中,使用对象层的层表现和/或在对象层的下位层中包含的1个以上层次的层表现。
层间预测:层间预测是指,基于在与对象层的层表现不同的层次(参照层)的层表现中包含的语法要素值、通过语法要素值而导出的值以及解码图像,预测对象层的语法要素值或在对象层的解码中使用的编码参数等。有时也将从参照层的信息预测与移动预测有关的信息的层间预测称为层间移动信息预测。此外,有时也将从下位层的解码图像进行预测的层间预测称为层间图像预测(或者层间纹理预测)。另外,在层间预测中使用的层次,例示性地是对象层的下位层。此外,有时也将不使用参照层而在对象层内进行预测称为层内预测。
时间识别符:时间识别符(也称为时间ID、时间识别符、子层ID或者子层识别符)是用于识别与时间可伸缩性有关的层(以后,称为子层)的识别符。时间识别符是用于识别子层的识别符,与子层1对1对应。在编码数据中,包括用于选择特定的子层的解码图像的解码所需的部分编码数据的时间识别符。
子层:子层是与由时间识别符所确定的时间可伸缩性有关的层。为了与空间可伸缩性、SNR可伸缩性等除此之外的可伸缩性进行区分,以后称为子层(也称为时间层)。
此外,以后,设为时间可伸缩性是通过在基本层的编码数据或者用于对某层进行解码所需的层次编码数据中包含的子层而实现。
接着,参照图2、3,说明通过比特流提取处理(也称为子比特流提取),从包括某层集A的层次编码数据中提取包括成为层集A的子集的层集B(也称为目标集合)的层次编码数据的例。
另外,比特流提取处理是如下处理:从某比特流(层次编码数据、编码数据)中,去除(丢弃)在由对象最高次时间识别符(highestTemporalId,highestTid)、表示在对象层集中包含的层的层ID列表(也称为LayerSetLayerIdList[])所确定的集合(称为目标集合)中不包括的NAL单元,提取由在目标集合中包含的NAL单元构成的比特流(也称为子比特流)。
图2表示3个层(L#0、L#1、L#2)以及各层由3个子层(TID1、TID2、TID3)构成的层集A的结构。另外,以后,将构成层集的层以及子层表示为{层ID列表{L#0,…,L#N}、最高次时间ID(HighestTid=K)}。例如,图2的层集A表现为{层ID列表{L#0,L#1,L#2}、最高次时间ID=3}。这里,标号L#N表示某层N,图2中的各框表示图片,框内的号码表示解码顺序的一例。以后,在图片中号码N记载为P#N(关于图3,也是同样的)。
此外,各图片间的箭头表示图片间的依赖方向(参照关系)。若是同一层内的箭头,则表示是在外部预测中利用的参照图片。若是层间的箭头,则表示是在层间预测中利用的参照图片(也称为参照层图片)。
此外,图2中的AU表示接入单元,#N表示接入单元号码。若将某起点(例如,随机接入开始点)的AU设为AU#0,则AU#N表示是第(N-1)个接入单元,表示在比特流中包含的AU的顺序。即,若是图2的例,则在比特流上,接入单元按照AU#0、AU#1、AU#2、AU#3、AU#4…的顺序存储。另外,接入单元表示按照特定的分类规则而汇集的NAL单元的集合。图2的AU#0能够看作包括图片P#1、P#1以及P#3的编码数据的VCLNAL的集合。另外,关于接入单元的细节,在后面叙述。
在图2的例中,由于层ID列表{L#0、L#1}以及最高次时间ID=2,所以目标集合(层集B)从包括层集A的比特流中,通过比特流提取而丢弃在目标集合(层集B)中不包含的层以及大于最高次时间ID=2的子层。即,在层ID列表中不包含的层L#2以及具有子层(TID3)的NAL单元被丢弃,最终,如图3所示,提取包括层集B的比特流。在图3中,虚线的框表示被丢弃的图片,虚线的箭头表示被丢弃的图片和参照图片间的依赖方向。另外,由于层L#3以及构成TID3的子层的图片的NAL单元已丢弃完毕,所以依赖关系已经被切断。
在SHVC或MV-HEVC中,为了实现SNR可伸缩性、空间可伸缩性、时间可伸缩性等,导入了层以及子层的概念。如在图2、图3中已经说明,在变更帧率并实现时间可伸缩性的情况下,通过比特流提取处理,首先从其他的图片丢弃不会被参照的图片(最高次时间ID(TID3))的编码数据。在图2、3的情况下,通过丢弃图片(10、13、11、14、12、15)的编码数据,生成帧率成为1/2的编码数据。
此外,在实现SNR可伸缩性、空间可伸缩性或视点可伸缩性的情况下,通过比特流提取而丢弃在目标集合中不包含的层的编码数据,能够变更各可伸缩性的粒度。通过丢弃(图2、3中为3、6、9、12、15)的编码数据,生成将可伸缩性的粒度加粗的编码数据。通过重复上述处理,能够阶段性地对层、子层的粒度进行调整。
另外,以上的用语终究是为了便于说明的,也可以由其他的用语来表现上述的技术事项。
〔关于层次编码数据的数据结构〕
以下,例示使用HEVC以及其扩展方式作为生成各层次的编码数据的编码方式的情况。但是,并不限定于此,也可以通过MPEG-2或H.264/AVC等的编码方式而生成各层次的编码数据。
此外,下位层和上位层也可以通过不同的编码方式进行编码。此外,各层次的编码数据也可以经由相互不同的传输路径而提供给层次运动图像解码装置1,也可以经由相同的传输路径而提供给层次运动图像解码装置1。
例如,也可以在将超高清影像(运动图像、4K影像数据)通过基本层以及1个扩展层进行可伸缩编码而传输的情况下,基本层通过MPEG-2或者H.264/AVC对将4K影像数据进行了降比例(Downscaling)、交织化的影像数据进行编码并通过电视广播网而传输,扩展层通过HEVC对4K影像(渐进式)进行编码并通过互联网而传输。
<编码数据#1(也称为层次编码数据DATA)的结构>
在本实施方式的图像编码装置2以及图像解码装置1的详细的说明之前,说明由图像编码装置2生成并由图像解码装置1进行解码的编码数据#1的数据结构。
(NAL单元层)
图4是表示编码数据#1中的数据的层次结构的图。编码数据#1以被称为NAL(网络抽象层(NetworkAbstractionLayer))单元的单位进行编码。
NAL是用于将作为进行运动图像编码处理的层的VCL(视频编码层(VideoCodingLayer))和传输/存储编码数据的下位系统之间的通信进行抽象化而设置的层。
VCL是进行图像编码处理的层,在VCL中进行编码。另一方面,这里所称的下位系统对应于H.264/AVC以及HEVC的文件格式、MPEG-2系统。在以下所示的例中,下位系统对应于对象层以及参照层中的解码处理。另外,在NAL中,在VCL中生成的比特流以称为NAL单元的单位被划分,向成为目的地地址的下位系统传输。
图5(a)表示NAL(网络抽象层(NetworkAbstractionLayer))单元的语法表格。在NAL单元中,包括在VCL中进行了编码的编码数据、以及用于该编码数据适当地到达目的地地址的下位系统的头部(NAL单元头部:nal_unit_header())。另外,NAL单元头部例如由图5(b)所示的语法表示。在NAL单元头部中,记载有表示在NAL单元中存储的编码数据的种类的“nal_unit_type”、表示存储的编码数据所属的子层的识别符(时间识别符)的“nuh_temporal_id_plus1”或表示存储的编码数据所属的层的识别符(层识别符)的“nuh_layer_id”(或者,nuh_reserved_zero_6bits)。
在NAL单元数据中,包括后述的参数集、SEI、切片等。
图6是表示NAL单元类型的值和NAL单元的类别的关系的图。如图6所示,具有由SYNA101所示的0至15的值的NAL单元类型的NAL单元是非RAP(随机接入图片)的切片。具有由SYNA102所示的16至21的值的NAL单元类型的NAL单元是RAP(随机接入图片)的切片。在RAP图片中,大致分为有BLA图片、IDR图片、CRA图片,BLA图片进一步分类为BLA_W_LP、BLA_W_DLP、BLA_N_LP。IDR图片进一步分类为IDR_W_DLP、IDR_N_LP。在RAP图片以外的图片中,有后述的LP图片、TSA图片、STSA图片、TRAIL图片等。
(接入单元)
将通过特定的分类规则而汇集的NAL单元的集合称为接入单元。在层数为1的情况下,接入单元是构成1个图片的NAL单元的集合。在层数大于1的情况下,接入单元是构成同一时刻的多个层的图片的NAL单元的集合。另外,为了表示接入单元的段落,编码数据也可以包括被称为接入单元分隔符(Accessunitdelimiter)的NAL单元。接入单元分隔符包含在构成在编码数据中的接入单元的NAL单元的集合和构成其他接入单元的NAL单元的集合之间。
(视频参数集)
图7是表示本发明的实施方式的VPS(视频参数集(VideoParameterSet))的编码数据的结构的图。对一部分语法要素表示含义的话,如下所述。VPS是用于规定对多个层共同的参数的参数集。参数集将图片从作为压缩数据的编码数据使用ID(video_parameter_set_id)而参照。
·video_parameter_set_id是用于识别各VPS的识别符。
·vide_reserved_three_2bits是将来的标准扩展用的语法。
·vps_max_layers_minus1是关于至少包括基本层的层次编码数据,除了时间可伸缩性之外,还用于计算与其他的可伸缩性有关的层的数的上限值MaxNumLayers的语法。另外,层数的上限值MaxNumLayers由MaxNumLayers=vps_max_num_sub_layers_minus1+1表示。在层次编码数据只由基本层构成的情况下,成为vps_max_num_sub_layers_minus1=0。
·vps_max_sub_layer_minus1是用于计算与至少包括基本层的层次编码数据的时间可伸缩性有关的层(子层)的数的上限值MaxNumSubLayers的语法。另外,子层数的上限值MaxNumSubLayers由MaxNumSubLayers=vps_max_sub_layers_minus1+1表示。
·vps_temporal_id_nesting_flag是关于参照该VPS的图片中的外部预测,表示是否进行追加的限制的标记。
·vps_extension_offset表示从包括VPS的NAL单元的开头位置到VPS扩展数据vps_extension()内的语法avc_base_flag为止的字节偏移值。
·profile_tier_level(X,Y)是表示与层次编码数据有关的简档信息以及等级信息的语法(以后,也称为PTL信息)。另外,引数X是简档信息有无标记ProfilePresentFlag的值,引数Y是子层数的上限值-1的值、即MaxNumSubLayersMinus1。另外,引数Y也可以代替子层数的上限值-1的值MaxNumSubLayersMinus1,而作为MaxNumSubLayers的值。在该情况下,将PTL信息profile_tier_level()上的MaxNumSubLayersMinus1解释为“MaxNumSubLayers-1”。以后,代替子层数的上限值―1的值MaxNumSubLayersMinus1,使用子层数的上限值MaxNumSubLayers进行说明。另外,关于简档/等级信息profile_tier_level(),在后面叙述。另外,在这里规定的简档/等级信息中,设定有解码器用于对层集0(基本层)进行解码所需的最大的简档、等级信息。另外,也可以代替用于对层集0(基本层)进行解码所需的最大的简档、等级信息,而设定用于对全层(包括基本层以及扩展层、在各层上附带的子层)进行解码所需的最大的简档、等级信息。另外,在VPS中包含的简档/等级信息profile_tier_level()在后述的PTL信息解码部1021中进行解码。
·vps_max_layer_id是表示CVS上的全部的NAL单元的层ID(nuh_layer_id)的最大值的语法。
·vps_num_layers_sets_minus1是表示在比特流中包含的、“表示1个以上的层的集合的层集的总数-1”的语法。层集数MaxNumLayersSets是vps_num_layers_sets_minus1+1。
·layer_id_included_flag[i][j]是表示是否包括层ID=j作为构成层集j(层ID列表)的层的标记。
·vps_extension_flag是表示VPS是否进一步包括VPS扩展数据vps_extension()的标记。
另外,在本说明书中,在记载为“表示是否为XX的标记”的情况下,将1设为是XX的情况,将0设为不是XX的情况,在逻辑否定、逻辑积等中,将1处理为真,将0处理为假(以下相同)。但是,在实际的装置或方法中,也能够使用其他的值作为真值、假值。
图56是表示现有技术的VPS扩展的编码数据的结构的图。关于一部分语法要素表示含义的话,如下所述。
·avc_base_layer_flag是表示基本层是否为通过H.264进行了编码的比特流的标记。
·vps_vui_offset表示从包括VPS的NAL单元的开头位置到在VPS扩展数据vps_extension()内包含的VPSVUI数据vps_vui()内的开头语法(bit_rate_rate_flag(图56中未图示))为止的字节偏移值。
·scalability_mask(图56中未图示)是表示可伸缩的类别的值。在可伸缩掩码中,各比特对应于各可伸缩类别。比特1对应于空间可伸缩,比特2对应于画质可伸缩,比特3对应于深度可伸缩,比特4对应于视点可伸缩。在各比特为1的情况下,意味着对应的可伸缩类别为有效。也可以是多个比特为1,例如在scalability_mask为12的情况下,由于比特3和比特4为1,所以深度可伸缩和视点可伸缩为有效。即,意味着包括多个视点和深度的3D可伸缩。
·dimension_id_len_minus1(图56中未图示)表示在每个可伸缩的类别中包含的维IDdimention_id的数num_dimensions。
num_dimensions=dimension_id_len_minus1[1]+1。例如,num_dimensions在可伸缩的类别为深度的情况下为2,在视点的情况下视点数被进行解码。
·dimention_id(图56中未图示)是表示每个可伸缩的类别的图片的类别的信息。
·direct_dependency_flag[i][j](称为层依赖标记)是表示层j是否为对象层i的直接参照层(依赖层)的标记。在值为1的情况下,表示是依赖层,在0的情况下,表示不是直接参照层。即,若层依赖标记为1,则对象层i参照其他的层j,若层依赖标记为0,则对象层i不参照层j。
·vps_number_layers_sets_minus1(图56上的SYNVPS0C)是表示示出在比特流中包含的、1个以上的层的集合的层集的总数的语法,是与vps_num_layers_sets_minus1相同的值。
·vps_num_profile_teir_level_minus1(图56上的SYNVPS0D)是表示“在VPS上包含的PTL信息的总数-1”的语法。VPS上的PTL信息数NumPTL是“vps_num_profile_tier_level_minus1+1”。另外,以后,将由在VPS上存在的1个以上的PTL信息构成的PTL信息群称为PTL信息列表。
·vps_profile_present_flag[i](VPS简档有无标记,(图56上的SYNVPS0E))是表示在PTL信息列表上第i个PTL信息的简档信息的有无的标记。若VPS简档有无标记为1,则表示示出简档信息的语法组在对象PTL信息profile_tier_level()内存在,若VPS简档有无标记为0,则表示示出简档信息的语法组不存在。
·profile_ref_minus1[i](参照PTL信息指定索引,(图56上的SYNVPS0F))是表示在上述VPS简档有无标记的值为0的情况下,PTL信息列表上的第i个PTL信息的简档信息与PTL信息列表上的第(profile_ref_minus1[i]+1)个PTL信息的简档信息相同的语法。另外,在现有技术中,有“参照PTL信息指定索引’profile_ref_minus1[i]+1’的值必须小于表示PTL信息列表中的对象PTL信息的位置的索引i”这样的限制。
·profile_teir_level(X,Y)(图56上的SYNVPS0G)是PTL信息列表中的第i个PTL信息。另外,各PTL信息通过指定在后述的各层集(层集i)中应用的PTL信息的PTL信息指定索引“profile_tier_level_idx[i]”,在各层集中参照。由PTL信息指定索引“profile_tier_level_idx[i]”所参照的PTL信息设定有用于对构成层集i的层以及在各层上附带的子层进行解码所需的最大的简档、等级信息。另外,在VPS中包含的简档/等级信息profile_tier_level()在后述的PTL信息解码部X1021中进行解码。
·profile_level_tier_idx[i](PTL信息指定索引)是表示指定在层集i中应用的PTL信息列表上的PTL信息的索引的语法。
·direct_dependency_len_minus2(图56上的SYNVPS0I)是表示层依赖类型的种类的总数的语法。
·direct_dependency_type[i][j](层依赖类型)表示对象层i和层j间的参照关系。具体而言,在层依赖标记direct_dependency_flag[i][j]为1的情况下,由层依赖类型direct_dependency_type[i][j]表示对于对象层i的参照层j的层依赖类型。层依赖类型能够只指定样本预测、移动预测、或者其双方。以下表示direct_dependency_type[i][j]的值和层依赖类型的值的关系。
direct_dependency_type[i][j]=0…样本预测以及移动预测
direct_dependency_type[i][j]=1…只有移动预测
direct_dependency_type[i][j]=2…只有样本预测。
图10是表示编码数据#1中的数据的层次结构的图。编码数据#1例示性地包括序列以及构成序列的多个图片。图10的(a)~(f)分别是表示规定序列SEQ的序列层、规定图片PICT的图片层、规定切片S的切片层、规定切片数据的切片数据层、规定在切片数据中包含的编码树单元的编码树层、规定在编码树中包含的编码单位(CodingUnit;CU)的编码单元层的图。
(序列层)
在序列层中,为了对处理对象的序列SEQ(以下,也称为对象序列)进行解码而规定了图像解码装置1参照的数据的集合。如图10的(a)所示,序列SEQ包括视频参数集(VideoParameterSet)、序列参数集SPS(SequenceParameterSet)、图片参数集PPS(PictureParameterSet)、图片PICT以及附加扩展信息SEI(SupplementalEnhancementInformation)。这里,#之后示出的值表示层ID。在图10中,表示存在#0和#1即层ID为0和层ID为1的编码数据的例,但层的种类以及层的数目并不限定于此。
视频参数集VPS在由多个层构成的运动图像中,规定了对多个运动图像共同的编码参数的集合以及与在运动图像中包含的多个层以及各个层相关的编码参数的集合。
在序列参数集SPS中,规定了为了对对象序列进行解码而图像解码装置1参照的编码参数的集合。例如,规定了图片的宽度或高度。
在图片参数集PPS中,规定了为了对对象序列内的各图片进行解码而图像解码装置1参照的编码参数的集合。例如,包括在图片的解码中使用的量化步长的基准值(pic_init_qp_minus26)、表示加权预测的应用的标记(weighted_pred_flag)、比例表(量化矩阵)。另外,PPS可以存在多个。在该情况下,从对象序列内的各图片中选择多个PPS中的任一个。
(图片层)
在图片层中,规定了为了对处理对象的图片PICT(以下,也称为对象图片)进行解码而图像解码装置1参照的数据的集合。如图10的(b)所示,图片PICT包括切片S0~SNS-1(NS为在图片PICT中包含的切片的总数)。
另外,以下,在不需要区分切片S0~SNS-1的每一个的情况下,有时省略标号的下标而记载。此外,关于以下说明的在编码数据#1中包含的数据并且是标上下标的其他的数据,也是同样的。
(切片层)
在切片层中,规定了为了对处理对象的切片S(也称为对象切片)进行解码而图像解码装置1参照的数据的集合。如图2的(c)所示,切片S包括切片头部SH以及切片数据SDATA。
在切片头部SH中,包括为了决定对象切片的解码方法而图像解码装置1参照的编码参数组。指定切片类型的切片类型指定信息(slice_type)是在切片头部SH中包含的编码参数的一例。
作为能够由切片类型指定信息所指定的切片类型,举出(1)在编码时只使用内部预测的I切片、(2)在编码时使用单向预测或者内部预测的P切片、(3)在编码时使用单向预测、双向预测或者内部预测的B切片等。
另外,在切片头部SH中,也可以包括在上述序列层中包含的、对于图片参数集PPS的参照(pic_parameter_set_id)。
(切片数据层)
在切片数据层中,规定了为了对处理对象的切片数据SDATA进行解码而图像解码装置1参照的数据的集合。如图10的(d)所示,切片数据SDATA包括编码树单元(CTU:CodedTreeUnit)。CTU是构成切片的固定大小(例如64×64)的块,也有时称为最大编码单位(LCU:LargestCordingUnit)。
(编码树层)
如图10的(e)所示,编码树层规定了为了对处理对象的编码树块进行解码而图像解码装置1参照的数据的集合。编码树单元通过递归的4叉树分割而被分割。将通过递归的4叉树分割而获得的树结构的节点称为编码树(codingtree)。4叉树的中间节点是编码4叉树(CQT:CodedQuadTree),CTU被规定作为包括最上位的CQT。CQT包括分割标记(split_flag),在split_flag为1的情况下,分割为4个CQT(包括4个CQT)。在split_flag为0的情况下,CQT包括作为末端节点的编码单元(CU:CodedUnit)。编码单元CU是编码树层的末端节点,在这个层中不会进一步分割。编码单元CU成为编码处理的基本的单位。
此外,在编码树单元CTU的大小64×64像素的情况下,编码单元的大小可取64×64像素、32×32像素、16×16像素以及8×8像素中的任一个。
(编码单元层)
如图10的(f)所示,编码单元层规定了为了对处理对象的编码单元进行解码而图像解码装置1参照的数据的集合。具体而言,编码单元由CU头部CUH、预测树、变换树、CU头部CUF构成。在CU头部CUH中,规定了编码单元是使用内部预测的单元还是使用外部预测的单元等。编码单元成为预测树(predictiontree;PT)以及变换树(transformtree;TT)的根。CU头部CUF包含在预测树和变换树之间或者变换树之后。
在预测树中,编码单元被分割为1个或者多个预测块,规定了各预测块的位置和大小。换做其他表现的话,预测块是构成编码单元的1个或者多个不重复的区域。此外,预测树包括通过上述的分割而获得的1个或者多个预测块。
预测处理对该每个预测块进行。以下,也将作为预测的单位的预测块称为预测单位(predictionunit;PU)。
预测树中的分割的种类大致有内部预测的情况和外部预测的情况这两种。内部预测是指同一图片内的预测,外部预测是指在互不相同的图片间(例如,显示时刻间、层图像间)进行的预测处理。
在内部预测的情况下,分割方法有2N×2N(与编码单元相同的大小)和N×N。
此外,在外部预测的情况下,分割方法通过编码数据的part_mode进行编码,有2N×2N(与编码单元相同的大小)、2N×N、2N×nU、2N×nD、N×2N、nL×2N、nR×2N以及N×N等。另外,2N×nU表示将2N×2N的编码单元从上开始依次分割为2N×0.5N和2N×1.5N的2个区域。2N×nD表示将2N×2N的编码单元从上开始依次分割为2N×1.5N和2N×0.5N的2个区域。nL×2N表示将2N×2N的编码单元从左开始依次分割为0.5N×2N和1.5N×2N的2个区域。nR×2N表示将2N×2N的编码单元从左开始依次分割为1.5N×2N和0.5N×1.5N的2个区域。由于分割数是1、2、4中的任一个,所以在CU中包含的PU是1个至4个。将这些PU依次表现为PU0、PU1、PU2、PU3。
此外,在变换树中,编码单元被分割为1个或者多个变换块,规定了各变换块的位置和大小。换做其他表现的话,变换块是构成编码单元的1个或者多个不重复的区域。此外,变换树包括通过上述的分割而获得的1个或者多个变换块。
在变换树中的分割中,有将与编码单元相同的大小的区域作为变换块来分配的分割和与上述的树块的分割相同的基于递归的4叉树分割的分割。
变换处理对该每个变换块进行。以下,也将作为变换的单位的变换块称为变换单位(transformunit;TU)。
(预测参数)
预测单元的预测图像通过在预测单元上附带的预测参数而导出。在预测参数中,有内部预测的预测参数或者外部预测的预测参数。以下,说明外部预测的预测参数(外部预测参数)。外部预测参数由预测列表利用标记predFlagL0、predFlagL1、参照图片索引refIdxL0、refIdxL1、矢量mvL0、mvL1构成。预测列表利用标记predFlagL0、predFlagL1分别是表示是否使用被称为L0参照列表、L1参照列表的参照图片列表的标记,在值为1的情况下使用对应的参照图片列表。在使用2个参照图片列表的情况下,即predFlagL0=1、predFlagL1=1的情况对应于双预测,在使用1个参照图片列表的情况下,即(predFlagL0,predFlagL1)=(1,0)或者(predFlagL0,predFlagL1)=(0,1)的情况对应于单预测。另外,预测列表利用标记的信息也能够通过后述的外部预测识别符inter_pred_idc来表现。通常,在后述的预测图像生成部、预测参数存储器中,使用预测列表利用标记,在从编码数据解码使用哪个参照图片列表的信息的情况下,使用外部预测识别符inter_pred_idc。
在用于导出在编码数据中包含的外部预测参数的语法要素中,例如,有分割模式part_mode、合并标记merge_flag、合并索引merge_idx、外部预测识别符inter_pred_idc、参照图片索引refIdxLX、预测矢量索引mvp_LX_idx、差分矢量mvdLX。
(参照图片列表的一例)
接着,说明参照图片列表的一例。参照图片列表是由在解码图片缓冲器12中存储的参照图片构成的列。图11是表示参照图片列表的一例的概念图。在参照图片列表601中,左右排列成一列的5个长方形分别表示参照图片。从左端到右依次示出的标号P1、P2、Q0、P3、P4是表示每一个参照图片的标号。同样地,在参照图片列表RPL1中,从左端到右依次示出的标号P4、P3、R0、P2、P1是表示每一个参照图片的标号。P1等的P表示视点P,并且,Q0的Q表示与层P不同的层Q。P以及Q的下标表示图片顺序号码POC。refIdxL1的正下方的向下的箭头表示参照图片索引refIdxL1是在解码图片缓冲器12中参照参照图片Q0的索引。
(参照图片的例)
接着,说明在导出矢量时使用的参照图片的例。图12是表示参照图片的例的概念图。在图12中,横轴表示显示时刻,纵轴表示层数。图示的纵2行、横3列(共6个)的长方形分别表示图片。在6个长方形中,从下行的左起第2列的长方形表示解码对象的图片(对象图片),剩余的5个长方形分别表示参照图片。从对象图片以向下的箭头表示的参照图片Q2是与对象图片相同的显示时刻且层不同的图片。在以对象图片curPic(P2)作为基准的层间预测中,使用参照图片Q2。从对象图片以向左的箭头表示的参照图片P1是与对象图片相同的层且过去的图片。从对象图片以向右的箭头表示的参照图片P3是与对象图片相同的层且未来的图片。在以对象图片作为基准的移动预测中,使用参照图片P1或者P3。
(外部预测识别符和预测列表利用标记)
外部预测识别符和预测列表利用标记predFlagL0、predFlagL1的关系能够如以下那样相互变换。因此,作为外部预测参数,可以使用预测列表利用标记,也可以使用外部预测识别符。此外,以下,使用了预测列表利用标记的判定也能够替换为外部预测识别符。相反地,使用了外部预测识别符的判定也能够替换为预测列表利用标记。
外部预测识别符=(predFlagL1<<1)+predFlagL0
predFlagL0=外部预测识别符&1
predFlagL1=外部预测识别符>>1
这里,>>是右移、<<是左移。
(合并预测和AMVP预测)
在预测参数的解码(编码)方法中,有合并预测(merge)模式和AMVP(AdaptiveMotionVectorPrediction、自适应移动矢量预测)模式。合并标记merge_flag是用于识别这些的标记。在合并预测模式和AMVP模式中,都使用已经处理完毕的块的预测参数而导出对象PU的预测参数。合并预测模式是在编码数据中不包括预测列表利用标记predFlagLX(外部预测识别符inter_pred_idc)、参照图片索引refIdxLX、矢量mvLX,而是直接使用已经导出的预测参数的模式,AMVP模式是在编码数据中包括外部预测识别符inter_pred_idc、参照图片索引refIdxLX、矢量mvLX的模式。另外,矢量mvLX作为表示预测矢量的预测矢量索引mvp_LX_idx和差分矢量(mvdLX)进行编码。
外部预测识别符inter_pred_idc是表示参照图片的种类以及数目的数据,取Pred_L0、Pred_L1、Pred_Bi中的任一值。Pred_L0、Pred_L1表示使用在分别被称为L0参照列表、L1参照列表的参照图片列表中存储的参照图片,且都表示使用1张参照图片(单预测)。将使用了L0参照列表、L1参照列表的预测分别称为L0预测、L1预测。Pred_Bi表示使用2张参照图片(双预测),表示使用在L0参照列表和L1参照列表中存储的2个参照图片。预测矢量索引mvp_LX_idx是表示预测矢量的索引,参照图片索引refIdxLX是表示在参照图片列表中存储的参照图片的索引。另外,LX是在不区分L0预测和L1预测时使用的记述方法,通过将LX替换为L0、L1,区分对于L0参照列表的参数和对于L1参照列表的参数。例如,refIdxL0是用于L0预测的参照图片索引,refIdxL1是用于L1预测的参照图片索引,refIdx(refIdxLX)是在不区分refIdxL0和refIdxL1时使用的表述。
合并索引merge_idx是表示将在从完成了处理的块导出的预测参数候选(合并候选)中的哪一个预测参数用作解码对象块的预测参数的索引。
(移动矢量和位移矢量)
在矢量mvLX中,有移动矢量和位移矢量(disparityvector、视差矢量)。移动矢量是表示某层的某显示时刻的图片中的块的位置和不同的显示时刻(例如,相邻的离散时刻)的同一个层的图片中的对应的块的位置之间的位置的偏差的矢量。位移矢量是表示某层的某显示时刻的图片中的块的位置和同一个显示时刻的不同的层的图片中的对应的块的位置之间的位置的偏差的矢量。作为不同的层的图片,有同一分辨率且质量不同的图片的情况、不同的视点的图片的情况、或者不同的分辨率的图片的情况等。尤其,将与不同的视点的图片对应的位移矢量称为视差矢量。在以下的说明中,在不区分移动矢量和位移矢量的情况下,简称为矢量mvLX。将与矢量mvLX有关的预测矢量、差分矢量分别称为预测矢量mvpLX、差分矢量mvdLX。使用在矢量上附带的参照图片索引refIdxLX来进行矢量mvLX以及差分矢量mvdLX是移动矢量还是位移矢量。
(图像解码装置的结构)
说明本实施方式的图像解码装置1的结构。图44是表示图像解码装置的概略性的结构的图,图13是表示本实施方式的图像解码装置1的结构的图。图像解码装置1包括头部解码部10、图片解码部11、解码图片缓冲器12、参照图片管理部13而构成。图像解码装置1能够进行在包括多个层的图像中从特定的时刻的图片开始解码的后述的随机接入解码处理。
[头部解码部10]
头部解码部10从由图像编码装置2提供的编码数据#1,以NAL单元单位、序列单位、图片单位或者切片单位解码在解码中利用的信息。进行了解码的信息输出到图片解码部11以及参照图片管理部13。
头部解码部10基于既定的语法定义来解读在编码数据#1中包含的VPS、SPS、PPS,并以序列单位解码在解码中利用的信息。例如,与层数有关的信息从VPS进行解码。在VPS中存在副本提示信息的情况下,与解码图像的图像大小相关的信息从VPS进行解码,在SPS中存在副本提示信息的情况下,与解码图像的图像大小相关的信息从SPS进行解码。
此外,头部解码部10基于既定的语法定义来解读在编码数据#1中包含的切片头部,并以切片单位解码在解码中利用的信息。例如,切片类型从切片头部进行解码。
如图14所示,头部解码部10具备NAL单元头部解码部101、VPS解码部102、SPS解码部103、PPS解码部104、切片头部解码部105以及参数存储器(未图示)等。
图15是表示了NAL单元头部解码部101的概略性结构的功能框图。如图15所示,NAL单元头部解码部101包括层ID解码部1011和NAL单元类型解码部1012而构成。
层ID解码部1011从编码数据解码层ID。NAL单元类型解码部1012从编码数据解码NAL单元类型。层ID是例如0至63的6比特的信息,在层ID为0的情况下,表示基础层。NAL单元类型是例如0至63的6比特的信息,表示在NAL单元中包含的数据的类别。如后所述,在数据的类别中,例如VPS、SPS、PPS等的参数集、IDR图片、CRA图片、LBA图片等的RPS图片、LP图片等的非RPS图片、SEI等根据NAL单元类型来进行识别。
VPS解码部102基于规定的语法定义来解读在编码数据#1中包含的VPS,以层单位解码要利用的信息。另外,关于VPS解码部102的细节,在后面叙述。
SPS解码部103基于规定的语法定义来解读在编码数据#1中包含的SPS,并以序列单位解码要利用的信息。
PPS解码部104基于规定的语法定义来解读在编码数据#1中包含的PPS,并以图片单位解码要利用的信息。
切片头部解码部105基于规定的语法定义来解读在编码数据#1中包含的切片头部,并以切片单位解码在解码中利用的信息。
以下,参照图16~图22说明本发明的实施例1的VPS解码部102。
[VPS解码部102]
图16是表示了VPS解码部102的概略性结构的功能框图。如图16所示,VPS解码部102还包括简档等级信息解码部(PTL信息解码部)1021、参照PTL指定信息解码部1022、简档有无标记解码部1023而构成。
<VPS的详细的解码过程>
以下,参照图17说明VPS解码部102的动作。
(步骤SA101)VPS解码部102对图7上的语法组SYNVPS01进行解码。
(步骤SA102)在VPS解码部102中包含的PTL信息解码部1021对图7上的SYNVPS02所示的层集0的PTL信息进行解码。另外,进行了解码的PTL信息提供给参数存储器进行存储。
(步骤SA103)VPS解码部102从图7上的语法组SYNVPS03,解码构成各层集的层ID。
(步骤SA104)VPS解码部102解码图7上的VPS扩展标记vps_extension_flag(图7上的SYNVPS04)。
(步骤SA105)在VPS扩展标记为1的情况下(步骤SA105中“是”),判定为VPS扩展数据在VPS上,进入步骤SA106。在VPS扩展标记为0的情况下(步骤SA105中“否”),判定为VPS扩展数据不在VPS上,进入步骤SA109。
(步骤SA106)对从VPS扩展标记的下一个比特到在VPS扩展数据中包含的avc_base_flag的紧前为止插入的字节对齐数据(vps_extension_aligment_bit_equal_to_one)(图7上的语法组SYNVPS05)进行解码。
(步骤SA107)对VPS扩展数据vps_extension()进行解码。另外,关于VPS扩展数据的详细的解码过程,在后面叙述。
(步骤SA108)VPS解码部102对图7上的SYNVPS07所示的VPS扩展2标记vps_extension2_flag进行解码。若VPS扩展2标记为1,则进一步对VPS扩展2数据进行解码。
(步骤SA109)VPS解码部102对图7上的SYNVPS08所示的RBSP_traling_bits()进行解码。RBSP_trailing_bits()是字节对齐数据。另外,字节对齐数据也被称为填充数据。
<VPS扩展数据的详细的解码过程>
参照图18说明VPS扩展数据的解码过程。
(步骤SB101)VPS解码部102对图8上的语法组SYNVPS0A进行解码。
(步骤SB102)VPS解码部102从图8上的语法组SYNVPS0B,解码与各层参照的依赖层(也称为直接参照层、从属层)有关的依赖标记。
(步骤SB103)VPS解码部102对层集数(图8上的语法SYNVPS0C)进行解码。
(步骤SB104)VPS解码部102对在VPS上包含的PTL信息的总数(图8上的SYNVPS0D)进行解码。
(步骤SB105)是在VPS上包含的PTL信息的解码过程的循环开始点。
(步骤SB106)在VPS解码部102中包含的简档有无标记解码部1023对表示在第i个PTL信息profile_tier_level()上示出简档信息的语法组的有无的简档有无标记(图8上的语法SYNVPS0E)进行解码。
(步骤SB107)在简档有无标记为0的情况下,判定为在第i个PTL信息上没有表示简档信息的语法组,进入步骤SB108。在简档有无标记为1的情况下,判定为在第i个PTL信息上有表示简档信息的语法组,进入步骤SB109。
(步骤SB108)在简档有无标记为0的情况下,在VPS解码部102中包含的参照PTL指定信息解码部1022对表示从PTL信息列表上的哪个PTL信息参照第i个PTL信息的简档信息的参照PTL信息指定索引(也称为参照简档等级信息相对索引、参照PTL指定信息)”profile_ref_delta_index_minus1[i]”(图8上的SYNVPS0Fa)进行解码。参照PTL信息指定索引“profile_ref_delta_index_minus1[i]”表示第i个PTL信息和参照目标PTL信息的相对索引。即,第i个PTL信息将由j=(i-profile_ref_delta_minus1[i]+1)所确定的、第j个PTL信息作为简档信息的参照目标。另外,通过预先在编码器侧将PTL信息列表上的PTL信息按照类似顺序排序,能够提高第i个PTL信息参照紧前的PTL信息的概率。因此,通过参照PTL指定索引“profile_ref_delta_index_minus1[i]”例如图19所示那样由哥伦布码表示相对索引,能够比以往削减用于表现参照PTL指定索引所需的比特长。图19(a)表示哥伦布码和语法值的对应表,图19(b)表示与能够以由“prefix“和”suffix”构成的哥伦布码的各比特长来表现的值的对应关系。
换言之,简档/等级信息解码部将上述简档/等级信息中的第i个参照PTL信息指定索引的语义作为该第i个参照PTL信息指定索引指定第i个简档/等级信息和被参照的简档/等级信息之间的相对的位置来进行处理。
例如,在参照PTL指定索引“profile_ref_delta_minus1[i]”的值为0、即参照第i个PTL信息的前一个第(i-1)个PTL信息的情况下,通过使用如图19所示的哥伦布码,用于表现参照PTL指定索引所需的比特长成为1比特。由此,与现有技术相比,与以固定长度来表示参照PTL信息指定索引的情况相比,能够削减符号量。此外,由于能够参照PTL信息列表上的开头PTL信息(第0个),所以能够解除在对象PTL信息为第1个时参照PTL信息指定索引不起作用的缺点。另外,也可以通过k阶指数哥伦布码(k-thorderExponentialGolomb:EGk(K>=0))来代替哥伦布码对参照PTL指定索引“profile_ref_delta_minus1[i]”进行解码,起到同样的效果。此外,图19所示的哥伦布码也被称为0阶指数哥伦布码。
此外,也可以在禁止参照PTL信息列表上的开头PTL信息(第0个)的情况下,在对象PTL信息为第1个时,将简档有无标记必须设定为1,在解码器和编码器间预先显式地决定将第1个PTL信息的简档信息必须包含在编码数据内(也称为比特流限制)。由此,同样地,能够解除在对象PTL信息为第1个时参照PTL信息指定索引不起作用的缺点。
(步骤SB109)在VPS解码部102中包含的PTL信息解码部1021将简档有无标记、参照PTL指定索引、子层数作为输入,对第i个PTL信息的简档以及等级信息进行解码。关于PTL信息解码部1021的细节,在后面叙述。
(步骤SB110)是在VPS上包含的PTL信息的解码过程的循环终端。
(步骤SB111)VPS解码部102对指定应用于各输出层集的PTL信息的PTL信息指定索引(图8上的语法组SYNVPS0H上的profile_level_tier_idx[i])进行解码。
(步骤SB112)VPS解码部102从图8上的语法组SYNVPS0I,解码各层的从属层类型。在图8上的语法组SYNVPS0I中,“direct_dep_type_len_minus2”表示从属层类型(direct_dependency_type[i][j])的比特长(direct_dep_type_len_minus2+2),在图8上的语法SYNVPS0I中,从属层类型(direct_dependency_tipe[i][j])表示各层和从属层的依赖类型的种类。
(步骤SB111)VPS解码部102对图8上的其他语法组SYNVPS0J进行解码。
<PTL信息解码部1011的细节>
接着,使用图20、图21说明实施例1的PTL信息解码部1021的细节。
图20是例示了PTL信息解码部1021的结构的功能框图。如图20所示,PTL信息(简档/等级信息)解码部1021具备简档信息解码部1021a、等级信息解码部1021b、子层简档有无标记解码部1021c、子层等级有无标记解码部1021d、字节对齐数据解码部1021e以及参照简档等级选择部1021f。
[简档信息解码部1021a]
简档信息解码部1021a基于简档有无标记profilePresentFlag,从编码数据DATA#T对解码对象PTL信息的简档信息(也称为最高次子层的简档信息或者通用简档信息)进行解码并输出。具体而言,在简档有无标记profilePresentFlag为1的情况下,从编码数据DATA#T对解码对象PTL信息的简档信息进行解码。在简档有无标记profilePresentFlag为0的情况下,判断为解码对象PTL信息的简档信息等于由参照PTL指定信息所指定的PTL信息的简档信息,从参数存储器(未图示)读出由参照PTL指定信息所指定的解码完毕PTL信息,并输出该简档信息作为解码对象PTL信息的简档信息。另外,在位于VPS的开头的第0个PTL信息以及基本层中的SPS中,简档信息必定在编码侧中进行信号通知。
此外,简档信息解码部1021a基于简档有无标记profilePresentFlag、子层数MaxNumSubLayers、参照PTL指定信息以及从子层简档有无标记解码部1021c提供的各子层的子层简档有无标记sub_layer_profile_present_flag[i],从编码数据DATA#T对除了最高次子层之外的解码对象PTL信息的各子层的子层简档信息进行解码并输出。
(在简档有无标记为1的情况下的子层简档解码)
在解码对象PTL信息的简档有无标记为1的情况下,简档信息解码部1021a通过以下的动作对子层简档进行解码。在解码对象PTL信息中的子层i(temporalId=i+1)的子层简档有无标记为1的情况下,判断为该子层i的简档信息在编码数据DATA#T内存在,从编码数据DATA#T对子层i的子层简档信息进行解码。在除此以外的情况下,对子层i的子层简档信息设定预定的简档信息。在子层i为最高次子层(i=MaxNumSubLayers-1)的情况下,设定通用简档作为子层i的简档信息,在除此以外的情况下,将解码对象PTL信息的子层(i+1)的简档信息设定为子层i的简档信息。若使用伪码来表示子层的简档信息的设定规则,则如下所述(参照图62(FIG_INFER_RULE)(a))。
(在简档有无标记为0的情况下的子层简档解码)
在解码对象PTL信息的简档有无标记为0的情况下,简档信息解码部1021a通过以下的动作对子层简档进行解码。在子层i(temporalId=i+1)的子层简档有无标记为1的情况下,判断为该子层i的简档信息在编码数据DATA#T内存在,从编码数据DATA#T对子层i的子层简档信息进行解码。在除此以外的情况下,将对子层i的子层简档信息由参照PTL指定信息所指定的解码完毕PTL信息的对应的子层的简档信息设定为子层i的简档信息。若使用伪码来表示子层的简档信息的设定规则,则如下所述(参照图62(FIG_INFER_RULE)(b))。另外,这里,ProfileRefIdx是参照PTL指定信息,若是本实施例,则ProfileRefIdx=(profile_ref_delta_minus1+1)。即,参照PTL信息列表上的第ProfileRefIdx个PTL信息。
另外,也可以预先在图像解码装置和图像编码装置侧进行决定,使得在简档有无标记为0的情况下,也将子层有无标记的值作为0来进行编码/解码。
[等级信息解码部1021b]
等级信息解码部1021b从编码数据DATA#T对解码对象PTL信息的等级信息(也称为最高次子层的等级信息或者通用等级信息)进行解码并输出。此外,等级信息解码部1021b基于子层数MaxNumSubLayers以及从子层等级有无标记解码部1021d提供的各子层的子层等级有无标记sub_layer_level_present_flag[i],从编码数据DATA#T对除了最高次子层之外的解码对象PTL信息的各子层的子层等级信息进行解码并输出。
具体而言,在子层i(temporalId=i+1)的子层等级有无标记sub_layer_level_present_flag[i]为1的情况下,判断为该子层i的等级信息在编码数据#T内存在,从编码数据DATA#T对子层i的子层等级信息进行解码并输出。在除此以外的情况下(子层等级有无标记sub_layer_level_present_flag[i]为0),对子层i的子层等级信息设定预定的等级信息。例如,将解码对象PTL信息的子层(i+1)的等级信息设定为子层i的等级信息。即,比最高次子层(temporalId=highestTid)低1层的子层i(temporalId=highestTid-1、即temporalId=MaxNumSubLayers-2)被设定最高次子层的等级信息(通用等级信息),除此以外的子层i被设定高1层的子层(i+1)的子层等级信息。若使用伪码来表示子层的等级信息的设定规则,则如下所述(参照图63(FIG_INFER_RULE)(a))。
此外,也能够通过图63(b)的伪码来表现。
[子层简档有无标记解码部1021c]
子层简档有无标记解码部1021c基于子层数MaxNumSubLayers,从编码数据DATA#T对解码对象PTL信息的各子层的子层简档有无标记进行解码,并输出到简档信息解码部1021a以及外部。
[子层等级有无标记解码部1021d]
子层等级有无标记解码部1021d基于子层数MaxNumSubLayers,从编码数据DATA#T对解码对象PTL信息的各子层的子层等级有无标记进行解码,并输出到等级信息解码部1021b以及外部。
[字节对齐数据解码部1021e]
字节对齐数据解码部1021e从编码数据以2bit单位读出(解码)基于子层数(MaxNumSbuLayersMinus1或者MaxNumSubLayers-1)而确定的比特数个的字节对齐数据(reserved_zero_2bits[i])(图9上的语法SYNPTL04)。从图9上的语法SYNVPSPTL04可知,应作为字节对齐数据而读出(解码)的比特数为“(8-MaxNumSubLayersMinus1)*2bits”。
[参照简档等级选择部1021f]
参照简档等级选择部1021f从参数存储器(未图示)读出由参照PTL指定信息所指定的解码完毕PTL信息。
(简档/等级信息profile_tier_level()的解码处理的流程)
图21是表示PTL信息profile_tier_level()的解码处理的流程图。以下,说明简档/等级信息解码部1021的动作。
(步骤SC101)简档信息解码部1021a判别简档有无标记profilePresentFlag是否为1。在简档有无标记profilePresentFlag为1的情况下(步骤SC101中“是”),进入步骤SC102,在除此以外的情况下(步骤SC101中“否”),进入步骤SC103。
(步骤SC102)简档信息解码部1021a从编码数据DATA#T解码例如图9上的语法组SYNPTL01、
·简档空间general_profile_space
·层级标记general_tier_flag
·简档识别符general_profile_idc
·简档互换标记general_profile_compatibility_flag[i]
…省略…
·简档预约语法general_reserved_zero_44bits
等,并作为解码对象PTL信息的简档信息而输出。
(步骤SC103)
简档信息解码部1021a判断为解码对象PTL信息的简档信息等于由参照PTL指定信息所指定的解码完毕PTL信息的简档信息,从参数存储器(未图示)读出由参照PTL指定信息所指定的解码完毕PTL信息,并将该简档信息作为解码对象PTL信息的简档信息来设定并输出。
(步骤SC104)
等级信息解码部1021从编码数据DATA#T解码以下的语法、·等级识别符general_level_idc,并作为解码对象PTL信息的等级信息而输出。
(步骤SC105)
是与子层的子层简档有无标记以及子层等级有无标记的解码有关的循环的开始。在循环的开始前,变量i被初始化为0。循环内的处理在变量i小于子层数-1、“MaxNumSubLayers-1”时执行,在循环内的处理每次执行1次时,变量i增加“1”。即,在步骤SC105~步骤SC107中,对除了最高次子层之外的子层的子层简档有无标记以及子层等级有无标记进行解码。
(步骤SC106)
子层简档有无标记解码部1021c从编码数据DATA#T对与由变量i所指定的子层有关的子层简档有无标记sub_layer_profile_present_flag[i]进行解码并输出。
子层等级有无标记解码部1021d从编码数据DATA#T对与由变量i所指定的子层有关的子层等级有无标记sub_layer_level_present_flag[i]进行解码并输出。
(步骤SC107)
是与子层的子层简档有无标记以及子层等级有无标记的解码有关的循环的终端。
(步骤SC108)
字节对齐数据解码部1021e以2bit单位从编码数据读出(解码)基于子层数(MaxNumSbuLayersMinus1或者MaxNumSubLayers-1)所确定的比特数个的字节对齐数据(reserved_zero_2bits[i])(图9上的语法SYNPTL04)。
具体而言,在步骤SC105~步骤SC107中,对每个子层进行解码的子层简档有无标记和子层等级有无标记的符号量为各1比特,共2比特,子层数为MaxNumSubLayers,所以在步骤SC105~步骤SC107中进行解码的符号量的总和为2*(MaxNumSubLayer-1)。因此,应作为字节对齐数据而读出(解码)的比特数为“(8-MaxNumSubLayersMinus1)*2bits”。
(步骤SC109)
是与子层的子层简档信息以及子层等级信息的解码有关的循环的开始点。在循环的开始前,变量i被初始化为0。循环内的处理在变量i小于子层数-1、“MaxNumSubLayers-1”时执行,在循环内的处理每次执行1次时,变量i增加“1”。
(步骤SC110)
简档信息解码部1021a判定由变量i所指定的子层的子层简档有无标记sub_layer_profile_present_flag[i]是否为1。在子层简档有无标记为1的情况下(步骤SC110中“是”),进入步骤SC111,在除此以外的情况下(步骤SC110中“否”),进入步骤SC112。
(步骤SC111)
简档信息解码部1021a从编码数据DATA#T,作为由变量i所指定的子层的子层简档信息,例如,解码并输出图9上的语法组SYNPTL05、
·子层简档空间sub_layer_profile_space[i]
·子层层级标记sub_layer_tier_flag[i]
·子层简档识别符sub_layer_profile_idc[i]
·子层简档互换标记sub_layer_profile_compatibility_flag[i][j]…省略…
·子层简档预约语法sub_layer_reserved_zero_44bits[i]。
(步骤SC112)
简档信息解码部1021a对子层i的子层简档信息设定预定的简档信息。例如,如图62(a)所示,在简档有无标记profilePresentFlag为1的情况下,将解码对象PTL信息的子层(i+1)的简档信息作为子层i的简档信息来设定并输出。如图62(b)所示,在简档有无标记profilePresentFlag为0的情况下,将由参照PTL指定信息所指定的解码完毕PTL信息的对应的子层的简档信息作为子层i的简档信息来设定并输出。
(步骤SC113)
等级信息解码部1021b判定由变量i所指定的子层的子层等级有无标记sub_layer_level_present_flag[i]是否为1。在子层等级有无标记为1的情况下(步骤SC113中“是”),进入步骤SCA114,在除此以外的情况下(步骤SC113中“否”),进入步骤SC115。
(步骤SC114)
等级信息解码部1021b从编码数据DATA#T,作为由变量i所指定的子层的子层等级信息,解码并输出
·子层等级识别符sub_layer_level_idc[i]。
(步骤SC115)
等级信息解码部1021b对子层i的子层等级信息设定预定的等级信息。例如,如图63所示,将解码对象PTL信息的子层(i+1)的等级信息作为子层i的等级信息来设定并输出。
(步骤SC116)
是与子层的子层简档信息以及子层等级信息的解码有关的循环的终端。
以上,说明了实施例1的简档/等级信息解码部1011的动作,但并不限定于上述步骤,也可以在可实施的范围内变更步骤。
另外,也可以将在PTL信息中的扩展用语法“general_reserved_zero_44bits”中、开头4bit(各语法为1bit)如下所述那样分配RangeExtension用扩展语法,将剩余的40bit的扩展用语法变更为“general_reserved_40btis”。
·general_max_12bit_constraint_flag
·general_max_10bit_constraint_flag
·general_max_422chroma_constraint_flag
·general_max_420chroma_constraint_flag
同样地,也可以将在时间ID=i+1(i=0…maxNumSubLayersMinus1)的各子层的扩展用语法sub_layer_reserved_zero_44bits[i]中、开头4bit(各语法为1bit)如下所述那样分配RangeExtension用扩展语法,将剩余的40bit的扩展用语法变更为“sub_layer_reserved_zero_40bits[i]”。
·sub_max_12bit_constraint_flag[i]
·sub_max_10bit_constraint_flag[i]
·sub_max_422chroma_constraint_flag[i]
·sub_max_420chroma_constraint_flag[i]
(实施例1的变形例)
参照图22说明VPS解码部102的变形例。另外,由于除了参照PTL信息指定索引(图22上的语法SYNVPS0Fb)之外,VPS解码部102的动作与实施例1相同,所以省略说明。
在实施例1中,通过哥伦布码对参照PTL信息指定索引在PTL信息列表上的对象PTL信息的位置和参照目标的PTL信息的相对索引(profile_ref_delta_index_minus1[i])进行了解码,但并不限定于此。例如,也可以代替相对索引,参照PTL信息列表上的第“profile_ref[i]”个PTL信息的简档信息。此时,通过基于表示对象PTL信息的列表上的位置的索引i而确定的比特长V,对参照PTL信息指定索引“profile_ref[i]”进行可变长解码。这里,比特长V由ceil(log2(i))所确定。由此,与现有技术相比,与以固定长度来表示参照PTL信息指定索引的情况相比,能够削减符号量。此外,由于能够参照PTL信息列表上的开头PLT信息(第0个),所以能够解除在对象PTL信息为第1个时参照PTL信息指定索引不起作用的缺点。
换言之,在简档/等级信息解码部进行解码的上述简档/等级信息中,参照PTL信息指定索引变更为参照简档,使得第1个简档/等级信息的简档以及层级的信息能够基于第0个简档/等级信息而推算。
另外,也可以在禁止参照PTL信息列表上的开头PTL信息(第0个)的情况下,在对象PTL信息为第1个时,将简档有无标记必须设定为1,在解码器和编码器间预先显式地决定将第1个PTL信息的简档信息必须包含在编码数据内(也称为比特流限制)。由此,同样地,能够解除在对象PTL信息为第1个时参照PTL信息指定索引不起作用的缺点。
<<VPS解码部102的变形例2>>
接着,使用图23~图27说明VPS解码部102的变形例2。
图23是扩展视频参数集VPS的语法表格的变形例。图24是用于说明VPS扩展数据的解码过程的流程图。图25是表示了VPS解码部的概略性结构的变形例的功能框图。图26是表示PTL信息解码部中的处理的流程的变形例的流程图。图27是表示PTL信息解码部的详细的变形例的框图。
首先,使用图23说明变形例2的扩展视频参数集VPS的语法表格。图23和图8所示的扩展视频参数集VPS的语法表格的不同点在于,在图23中,删除了图8上的语法SYNVPS0Fa所示的参照PTL信息指定索引(profile_ref_delta_index_minus1[i]),由图23上的语法SYNVPS0E所示的简档有无标记(vps_profile_present_flag[i])兼用参照PTL指定信息指定索引的功能。即,在简档有无标记(vps_profile_present_flag[i])的值为1的情况下,从编码数据对第i个PTL信息的简档信息进行解码。另一方面,在简档有无标记的值为0的情况下,在第i个PTL信息的简档信息中,被设定(推算)第i个PTL信息的紧前进行了解码的、第(i-1)个解码完毕PTL信息的简档信息。
接着,说明变形例2的VPS解码部102’和VPS解码部102的结构的不同点。图25所示的VPS解码部102’不具备VPS解码部102具备的参照PTL信息解码部1022,PTL信息解码部1021’的功能的一部分与PTL信息解码部1021不同。
更具体而言,图27所示的PTL信息解码部1021’具备的简档信息解码部1021a’以及参照简档等级信息选择部1021f’的功能一部分不同。由于PTL信息解码部1021’具备的其他的结构要素(等级信息解码部1021b’、子层有无标记解码部1021c’、子层等级信息解码部1021d’以及字节对齐数据解码部1021e’)与PTL信息解码部1021具备的相同标号的结构要素相同,所以省略说明。以下,在简档信息解码部1021a’以及参照简档等级信息选择部1021f’中,只说明功能不同的部分。
[简档信息解码部1021a’]
简档信息解码部1021a’基于简档有无标记profilePresentFlag,从编码数据DATA#T对解码对象PTL信息的简档信息(也称为最高次子层的简档信息或者通用简档信息)进行解码并输出。具体而言,在简档有无标记profilePresentFlag为1的情况下,从编码数据DATA#T对解码对象PTL信息的简档信息进行解码。在简档有无标记profilePresentFlag为0的情况下,判断为解码对象PTL信息的简档信息等于在解码对象PTL信息的前一个进行了解码的解码完毕PTL信息(第(i-1)个PTL信息)的简档信息,从参数存储器(未图示)读出第(i-1)个解码完毕PTL信息,并输出该简档信息作为解码对象PTL信息的简档信息。
此外,简档信息解码部1021a’基于简档有无标记profilePresentFlag、子层数MaxNumSubLayers以及从子层简档有无标记解码部1021c提供的各子层的子层简档有无标记sub_layer_profile_present_flag[i],从编码数据DATA#T对除了最高次子层之外的解码对象PTL信息的各子层的子层简档信息进行解码并输出。另外,由于在简档有无标记为1的情况下的、各子层的简档信息的解码处理与简档信息解码部1021a相同,所以省略说明。此外,若在图62(b)所示的伪码中,将参照PTL指定信息ProfileRefIdx的导出替换为以下,则在简档有无标记为0情况下的、各子层的简档信息的处理相同。即,若设为表示解码对象PTL信息的PTL信息列表上的位置的索引idx,则导出为参照PTL指定信息ProfileRefIdx=(idx-1)。因此,参照PTL信息列表上的第ProfileRefIdx(=idx-1)个解码完毕PTL信息、即前一个解码完毕PTL信息。
(简档/等级信息profile_tier_level()的解码处理的流程)
以下,使用图26说明变形例2的简档/等级信息解码部1021’的动作。另外,简档信息/等级信息的解码处理只说明在图21中动作不同的步骤SC103、SC112。由于除此以外的步骤是共同的,所以省略说明。即,在以下的说明中,将图21的步骤SC103、SC112分别换作步骤SE103、SE112。
(步骤SE103)
简档信息解码部1021a’判断为解码对象PTL信息的简档信息等于PTL信息列表上的解码对象PTL信息的前一个解码完毕PTL信息(第(i-1)个PTL信息)的简档信息,从参数存储器(未图示)读出该解码完毕PTL信息,并将该简档信息作为解码对象PTL信息的简档信息来设定并输出。
(步骤SE112)
简档信息解码部1021a’对子层i的子层简档信息设定预定的简档信息。例如,如图62(a)所示,在简档有无标记profilePresentFlag为1的情况下,将解码对象PTL信息的子层(i+1)的简档信息作为子层i的简档信息来设定并输出。如图62(b)所示,在简档有无标记profilePresentFlag为0的情况下,将由ProfileRefIdx所指定的解码完毕PTL信息的对应的子层的简档信息作为子层i的简档信息来设定并输出。另外,若将ProfileRefIdx设为表示解码对象PTL信息的PTL信息列表上的位置的索引idx,则ProfileRefIdx=(idx-1)。即,参照前一个解码完毕PTL信息。
以上,说明了变形例2的简档/等级信息解码部1021’的动作,但并不限定于上述步骤,也可以在可实施的范围内变更步骤。
如以上所述,在变形例2的扩展视频参数集VPS的语法表格中,删除了图23的语法SYNVPS0Fa所示的参照PTL信息指定索引(profile_ref_delta_index_minus1[i]),由图23上的语法SYNVPS0E所示的简档有无标记(vps_profile_present_flag[i])兼用参照PTL指定信息指定索引的功能。即,在简档有无标记(vps_profile_present_flag[i])的值为1的情况下,从编码数据对第i个PTL信息的简档信息进行解码。另一方面,在简档有无标记的值为0的情况下,在第i个PTL信息的简档信息中,被设定(推算)在第i个PTL信息的紧前进行了解码的第(i-1)个解码完毕PTL信息的简档信息。另外,也能够通过预先在编码器侧将PTL信息列表上的PTL信息按照类似顺序排序,提高第i个PTL信息参照紧前的PTL信息的概率。即,在vps_profile_present_flag[i]=0的情况下,也能够不对参照PTL指定索引“profile_ref_delta_index_minus1[i]”进行解码,解释成推算为参照PTL指定索引“profile_ref_delta_index_minus1[i]==0”。由此,能够进一步削减涉及相对索引的符号量。
<<VPS解码部102的变形例3>>
接着,使用图28~图34说明VPS解码部102的变形例3。图28是视频参数集VPS的语法表格的变形例。图29是扩展视频参数集VPS的语法表格的变形例。图30是用于说明VPS扩展数据的解码过程的变形例的流程图。图31是表示了VPS解码部的概略性结构的变形例的功能框图。图32是表示PTL信息的数据结构的变形例的图。图33是表示PTL信息解码部中的处理的流程的变形例的流程图。图34是表示PTL信息解码部的详细的变形例的框图。
在现有技术中,关于简档信息,能够根据简档有无标记来控制是否省略解码。但是,在利用多个层时的情况下,由于存在在层间取共同的等级的情况,所以存在将等级信息冗长地进行信号通知的情况。因此,为了削减等级信息的信号通知的冗长性,如图32所示,简档/等级信息profile_tier_level()的数据结构中,除了简档有无标记profilePresentFlag之外,进一步将表示等级信息的有无的等级有无标记levelPresentFlag作为输入。通过这个变更,首先,如图28所示,位于视频参数集VPS的开头的PTL信息将profilePresentFlag=1、levelPresentFlag=1作为输入进行编码。另外,通过这个变更,位于现有的HEVC的VPS的开头的PTL信息以及在基础层中通知的SPS上的PTL信息的语法表格没有变更。即,不会发生无法通过现有的HEVC解码器而解码VPS、SPS上的PTL信息的情况。
首先,使用图29说明变形例3的扩展视频参数集VPS的语法表格。图29和图56所示的现有的扩展视频参数集VPS的语法表格的不同点在于,在图29中,删除了图56上的语法SYNVPS0F所示的参照PTL信息指定索引(profile_refminus1[i]),由图29上的语法SYNVPS0E所示的简档有无标记(vps_profile_present_flag[i])以及新追加的图29上的语法SYNVPS0Fa所示的等级有无标记(vps_level_present_flag[i])兼用参照PTL指定信息指定索引的功能。即,在简档有无标记(vps_profile_present_flag[i])的值为1的情况下,从编码数据对第i个PTL信息的简档信息进行解码。另一方面,在简档有无标记的值为0的情况下,在第i个PTL信息的简档信息中,被设定(推算)在第i个PTL信息的紧前进行了解码的第(i-1)个解码完毕PTL信息的简档信息。同样地,在等级有无标记(vps_level_present_flag[i])的值为1的情况下,从编码数据对第i个PTL信息的等级信息进行解码。另一方面,在等级有无标记的值为0的情况下,在第i个PTL信息的等级信息中,被设定(推算)在第i个PTL信息的紧前进行了解码的第(i-1)个解码完毕PTL信息的等级信息。
接着,说明变形例3的VPS解码102”和VPS解码部102的结构的不同点。图31所示的VPS解码部102”不具备VPS解码部102具备的参照PTL信息解码部1022,新具备等级有无标记解码部1224,PTL信息解码部1021”的功能的一部分与PTL信息解码部1021不同。等级有无标记1224对第i个PTL信息的等级有无标记(vps_level_present_flag[i])进行解码。
以下,使用图34说明变形例3中的简档/等级信息解码部1021”的结构。如图34所示,简档/等级信息解码部1021”具备简档信息解码部1021a”、等级信息解码部1021b”、子层简档等级有无标记解码部1021f”以及字节对齐数据解码部1021e”。另外,由于子层有无标记解码部1021c”、子层等级信息解码部1021d”以及字节对齐数据解码部1021e”与实施例1相同,所以省略说明。此外,由于简档信息解码部1021a”与变形例2的PTL信息解码部1021’具备的简档信息解码部1021a’相同,所以省略说明。
以下,在等级信息解码部1021b”以及参照简档等级信息选择部1021f”中,只说明功能不同的部分。
[等级信息解码部1021b”]
等级信息解码部1021b”基于等级有无标记levelPresentFlag,从编码数据DATA#T对解码对象PTL信息的等级信息(也称为最高次子层的等级信息或者通用等级信息)进行解码并输出。具体而言,在等级有无标记levelPresentFlag为1的情况下,从编码数据DATA#T对解码对象PTL信息的等级信息进行解码。在等级有无标记levelPresentFlag为0的情况下,判断为解码对象PTL信息的等级信息等于在解码对象PTL信息的前一个进行了解码的解码完毕PTL信息(第(i-1)个PTL信息)的等级信息,从参数存储器(未图示)读出第(i-1)个解码完毕PTL信息,并输出该等级信息作为解码对象PTL信息的等级信息。
此外,等级信息解码部1021b”基于等级有无标记levelPresentFlag、子层数MaxNumSubLayers以及从子层等级有无标记解码部1021d”提供的各子层的子层等级有无标记sub_layer_level_present_flag[i],从编码数据DATA#T对除了最高次子层之外的解码对象PTL信息的各子层的子层等级信息进行解码并输出。
(在等级有无标记为1的情况下的子层等级解码)
在解码对象PTL信息的等级有无标记为1的情况下,由于与实施例1的PTL信息解码部1021具备的等级信息解码部1021b的动作相同,所以省略详细的说明。简单而言,在子层i(temporalId=i+1)的子层等级有无标记为1的情况下,判断为该子层i的等级信息在编码数据DATA#T内存在,从编码数据DATA#T对子层i的子层等级信息进行解码。在除此以外的情况下,对子层i的子层等级信息设定预定的等级信息。例如,将解码对象PTL信息的子层(i+1)的等级信息设定为子层i的等级信息(参照图63)。
(在等级有无标记为0的情况下的子层等级解码)
在解码对象PTL信息的等级有无标记为0的情况下,等级信息解码部1021b”通过以下的动作,对子层等级进行解码。在子层i(temporalId=i+1)的子层等级有无标记为1的情况下,判断为该子层i的等级信息在编码数据DATA#T内存在,从编码数据DATA#T对子层i的子层等级信息进行解码。在除此以外的情况下,对子层i的子层等级信息设定预定的等级信息。具体而言,判断为解码对象PTL信息的子层的i等级信息等于在解码对象PTL信息的前一个进行了解码的解码完毕PTL信息(第(idx-1)个PTL信息)的对应的子层的等级信息,从参数存储器(未图示)读出第(idx-1)个解码完毕PTL信息,并输出该等级信息作为解码对象PTL信息的子层的等级信息。
这里,idx是表示PTL信息列表上的解码对象PTL信息的位置的索引。
若使用伪码来表示子层的等级信息的设定规则,则如下所述(参照图64(b))。另外,这里,ProfileRefIdx是参照PTL指定信息,若是变形例3,则ProfileRefIdx=(idx-1)。即,参照PTL信息列表上的第ProfileRefIdx个PTL信息。
另外,上述伪码也能够如图64(c)那样表现。
(简档/等级信息profile_tier_level()的解码处理的流程)
以下,使用图33说明变形例3的简档/等级信息解码部1021”的动作。另外,简档信息/等级信息的解码处理在图33中只说明动作与图21不同的步骤SG104、SG105、SG106、SG115、SG116、SG117。由于除此以外的步骤是共同的,所以省略说明。
(步骤SG104)等级信息解码部1021b”判别等级有无标记levelPresentFlag是否为1。在等级有无标记levelPresentFlag为1的情况下(步骤SG104中“是”),进入步骤SG105,在除此以外的情况下(步骤SG104中“否”),进入步骤SG106。
(步骤SG105)等级信息解码部1021b”从编码数据DATA#T,解码以下的语法、
·等级识别符general_level_idc
,并输出作为解码对象PTL信息的等级信息。
(步骤SG106)
等级信息解码部1021b”判断为解码对象PTL信息的等级信息等于PTL信息列表上的解码对象PTL信息的前一个解码完毕PTL信息(第(i-1)个PTL信息)的等级信息,从参数存储器(未图示)读出该解码完毕PTL信息,并将该等级信息作为解码对象PTL信息的等级信息来设定并输出。
(步骤SG115)
等级信息解码部1021b”判定由变量i所指定的子层的子层等级有无标记sub_layer_level_present_flag[i]是否为1。在子层等级有无标记为1的情况下(步骤SG115中“是”),进入步骤SG116,在除此以外的情况下(步骤SG115中“否”),进入步骤SG117。
(步骤SG116)
等级信息解码部1021b”从编码数据DATA#T,作为由变量i所指定的子层的子层等级信息,解码并输出
·子层等级识别符sub_layer_level_idc[i]。
(步骤SC117)
等级信息解码部1021b”对子层i的子层等级信息设定预定的等级信息。例如,如图64(a)所示,在等级有无标记levelPresentFlag为1的情况下,将解码对象PTL信息的子层(i+1)的等级信息作为子层i的等级信息来设定并输出。如图64(b)所示,在等级有无标记levelPresentFlag为0的情况下,将由ProfileRefIdx所指定的解码完毕PTL信息的对应的子层的等级信息作为子层i的等级信息来设定并输出。另外,若ProfileRefIdx设为表示解码对象PTL信息的PTL信息列表上的位置的索引idx,则ProfileRefIdx=(idx-1)。即,参照前一个解码完毕PTL信息。
以上,说明了变形例3的简档/等级信息解码部1021”的动作,但并不限定于上述步骤,也可以在可实施的范围内变更步骤。
如以上所述,在变形例3的扩展视频参数集VPS的语法表格中,删除了图23的语法SYNVPS0F所示的参照PTL信息指定索引(profile_ref_deltaidx_minus1[i]),由图29上的语法SYNVPS0E所示的简档有无标记(vps_profile_present_flag[i])以及等级有无标记(vps_level_present_flag[i])兼用参照PTL指定信息指定索引的功能。即,在简档有无标记(vps_profile_present_flag[i])的值为1的情况下,从编码数据对第i个PTL信息的简档信息进行解码。另一方面,在简档有无标记的值为0的情况下,在第i个PTL信息的简档信息中,被设定(推算)在第i个PTL信息的紧前进行了解码的第(i-1)个解码完毕PTL信息的简档信息。此外,在等级有无标记(vps_level_present_flag[i])的值为1的情况下,从编码数据对第i个PTL信息的等级信息进行解码。另一方面,在等级有无标记的值为0的情况下,在第i个PTL信息的等级信息中,被设定(推算)在第i个PTL信息的紧前进行了解码的第(i-1)个解码完毕PTL信息的等级信息。另外,也能够通过预先在编码器侧将PTL信息列表上的PTL信息按照类似顺序排序,提高第i个PTL信息参照紧前的PTL信息的概率。即,在vps_profile_present_flag[i]=0或者vps_level_present_flag[i]=0的情况下,也能够不对参照PTL指定索引“profile_ref_delta_index_minus1[i]”进行解码,解释成推算为参照PTL指定索引“profile_ref_delta_index_minus1[i]==0”。由此,能够进一步削减涉及相对索引的符号量。进一步,与实施例1同样地,变形例3起到能够降低解码对象PTL信息的简档信息以及等级信息的冗长性的效果。
如以上所述,在VPS等级有无标记等于“0”的情况下,简档/等级信息解码部将第i个简档/等级信息的等级的信息从其以前的简档/等级信息的等级的信息导出。
<<VPS解码部102的变形例3a>>
另外,上述变形3也能够如下那样变更结构。即,将简档有无标记profilePresentFlag以及等级有无标记levelPresentFlag替换为表示简档信息和等级信息的有无的简档等级有无标记ProfileLevelPresentFlag。
以下,代用图34说明变形例3a中的简档/等级信息解码部1021”的结构。变形例3a的PTL信息解码部1021”除了变形例3的PTL信息解码部1021”中的简档有无标记profilePresentFlag以及等级有无标记levelPresentFlag的输入值之外,结构以及动作相同。在图34中,有简档有无标记profilePresentFlag以及等级有无标记levelPresentFlag的布线,但在变形例3a中,在简档等级有无标记profileLevelPresentFlag为0的情况下,将图34的profilePresentFlag以及levelPresentFlag作为0来输入。此外,在简档等级有无标记profileLevelPresentFlag为1的情况下,将图34的profilePresentFlag以及levelPresentFlag作为1来输入。另外,通过这个变更,位于现有的HEVC的VPS的开头的PTL信息以及在基础层中通知的SPS上的PTL信息的语法表格没有变更。即,不会发生无法通过现有的HEVC解码器而解码VPS、SPS上的PTL信息的情况。
以上,变形3a起到与变形3同样的效果。进一步,通过对变形例3,将简档有无标记和等级有无标记汇集成1个,设为表示简档信息和等级信息的有无的简档等级有无标记,能够削减涉及追加的标记(若是变形3,则等级有无标记)的符号量。
如以上所述,在VPS简档等级有无标记等于“0”的情况下,简档/等级信息解码部将第i个简档/等级信息的等级的信息从其以前的简档/等级信息的等级的信息导出。
<<VPS解码部102的变形例4>>
接着,使用图65、图66说明VPS解码部102的变形例4。
首先,使用图65说明变形例4的扩展视频参数集VPS(VPS扩展数据vps_extesion())的语法表格。图65和图56(现有技术)所示的扩展视频参数集的语法表格的不同点在于,如以下所示的(1)~(2)。
(1)以表示位于VPS扩展数据vps_extension()的开头的基本层是否为通过H.264进行了编码的比特流的标记avc_base_layer_flag(图65的SYNVPS0A)~表示各层的可伸缩性类型的可伸缩掩码scalability_mask_flag[i](图65的SYNVPS0F)的语法进行字节对齐的方式,追加(a)语法splitting_flag(图65的SYNVPS0B)的配置变更(在图65的例中,接着avc_base_layer_flag而配置)、用于调整字节对齐的扩展比特(字节对齐数据)reserved_zero_6bits(图65的SYNVPS0C)以及(b)表示从VPSNAL单元的开头到位于VPSNAL单元上的VPS扩展数据上的PTL信息关联语法为止的字节偏移的语法vps_ptl_info_offset(图65的SYNVPS0E)。
首先,为了确保字节对齐,图65所示的字节偏移信息vps_ptl_info_offset优选设为16bit。另外,字节偏移信息vps_ptl_info_offset设为从VPSNAL单元的开头到位于VPSNAL单元上的VPS扩展数据上的PTL信息关联语法为止的字节偏移,但具体而言,也可以设为从VPSNAL单元的开头到图65的SYNVPS0H所示的语法vps_number_layer_sets_minus1(层集数)为止的字节偏移。在该情况下,在层集数vps_number_layer_的紧前,为了调整字节对齐而插入字节对齐数据vps_alignment_bit_equal_to_one(图65的SYNVPS0G)。此外,并不限定于此,字节偏移信息vps_ptl_info_offset也可以设为从VPSNAL单元的开头到图65的SYNVPS0I所示的语法vps_num_profile_tier_level_minus1(PTL信息数)为止的字节偏移。在该情况下,与图65的SYNVPS0G同样地,在PTL信息数vps_num_profile_tier_level_minus1的紧前,为了调整字节对齐而插入字节对齐数据vps_alignment_bit_equal_to_one。
此外,扩展比特reserved_zero_6bits是值为零的6比特的语法,但值也可以为1。此外,也可以将扩展比特reserved_zero_6bits中的任一个比特利用于表示其他的语法。例如,也可以将reserved_zero_6bits中的开头Nbit(1<=N<=6)分别替换为表示以下所示的某语法或某状态的有无的标记等中的任一个。
·表示能够利用于每个层的层间预测的子层的上限的有无的标记max_tid_ref_present_flag(未图示)
·表示在编码图片的解码时利用于层间预测等的有效直接参照层数和通过序列整体的解码而在层间预测等中可参照的参照层数是否相同的标记(表示全部直接参照层在编码图片的解码时被参照)all_ref_layers_active_flag(未图示)
·表示输出层集数大于默认值(vps_number_layer_sets_minus1+1)的标记more_output_layer_sets_than_default_flag(未图示)
·表现信息有无标记rep_format_idx_present_flag(未图示)
·表示在编码图片的解码时参照的参照层数最大为1层的标记max_one_active_ref_layer_flag(未图示)
·表示在层间可随机接入的图片对齐的标记cross_layer_irap_alinged_flag(未图示)
·在同一个AU内全部VLCNAL单元具有相同的层识别符,或者在同一个AU内的VCLNAL单元中包括2个层识别符,表示具有比一个层识别符的值大的层识别符的图片是否为随机接入图片的标记single_layer_for_non_irap_flag(未图示)
·VUI有无标记vps_vui_present_flag(未图示)
此外,扩展比特reserved_zero_6bits的比特长并不限定于6bit,也可以扩展为能够调整字节对齐的比特数。例如,也可以设为从6bit加上8bit的14bit,并将其开头Nbit(1<=N<=14)替换为上述标记或其他的语法。
在现有技术的情况下,由于上述标记分散,所以存在若不对该标记的某处为止进行解码,则无法掌握与该标记相关的语法的有无或者状态的有无的课题。但是,如变形例4那样,通过将表示某语法或状态的有无的标记配置在VPS扩展数据的开头,具有通过解码器读入(解码)开头的数字节而能够尽早掌握关联语法的有无以及状态的有无的效果。此外,通过进行字节对齐,能够降低与在对各语法进行解码/编码时的读出/写入有关的存储器接入的次数。即,起到降低解码/编码所需的处理量的效果。
此外,通过在PTL信息中追加表示至关联语法的字节偏移的语法vps_ptl_info_offset,解码器读入VPS扩展数据的开头的几个比特(或者字节),能够尽早接入在由vps_ptl_info_offset所示的字节偏移上存在的、与PTL信息关联的语法。尽早接入PTL信息列表上的PTL信息的优点在于,虽然在VPS扩展数据的开头附近有表示各层的可伸缩性类型的scalablity_mask_flag,但根据该语法无法掌握解码器是否能够解码各层集。因此,通过基于字节偏移vps_ptl_info_offset尽早接入PTL信息进行解码,解码器能够尽早掌握在比特流上是否存在能够解码的层集。此外,通过将指定对在PTL信息列表的紧后配置的各(输出)层集应用的PTL信息的PTL指定索引(profile_level_tier_idx[i])(图56上的语法组SYNVPS0H)进行解码,从而能够确定解码器能够解码的层集。进一步,解码器通过基于PTL信息以及输出层集和PTL信息的对应信息(PTL信息指定索引)以及各层集的层ID列表(图55的语法组SYNVPS03)等而选择目标集合(输出层集),进行比特流提取处理,从而能够只生成解码器能够解码的比特流。
(2)在非专利文献1的HEVC的制定标准的阶段中,位于VPS以及SPS上的PTL信息profile_tier_level()(图54)被设计成简档信息(图54的SYNPTL01)、等级信息(图54的SYNPTL02)、子层简档有无标记以及子层等级有无标记(图54的SYNPTL03)、各子层的简档信息(图54的SYNPTL05)以及等级信息(图54的SYNPTL06)进行字节对齐。例如,为了调整字节对齐,有图54的SYNPTL04所示的字节对齐数据。此外,被设计成如下:通过将子层简档有无标记以及子层等级有无标记与各子层的简档信息以及等级信息交错地进行信号通知,基于子层数、子层简档有无标记、子层等级有无标记,通过字节计算能够容易地接入到特定的子层的简档信息以及等级信息。
但是,在现有技术(非专利文献2以及非专利文献3)中,由于位于VPS扩展数据上的PTL信息的位于PTL信息的紧前的语法(例如,图56的vps_profile_present_flag[i]或profile_ref_minus1[i])没有对齐,所以没有确保字节对齐。因此,前述的PTL信息的制定标准阶段考虑的上述优点受到损伤。
为了解决上述课题,以与PTL信息相关的语法(输出层集数vps_number_layer_sets_minus1(图65的SYNVPS0H)、PTL信息数vps_num_profile_tier_level_minus1(图65的SYNVPS0I)、VPS简档有无标记vps_present_flag[i](图65的SYNVPS0J)、参照PTL指定信息profile_ref_minus1[i](图65的SYNVPS0L)以及PTL信息profile_tier_level()(图65的SYNVPS0M)的语法进行字节对齐的方式,追加语法的配置、比特长的变更以及新基于字节对齐数据vps_alingment_bit_equalt_to_one(图65的SYNVPS0G)以及PTL信息数以及简档有无标记而确定的字节对齐数据reserved_zero_1bits[i](图65的SYNVPS0K)。
具体而言,首先,以在PTL信息关联语法的开头语法(在图65的例中,层集数vps_number_layer_sets_minus1)进行了字节对齐的位置在编码数据上配置(在字节边界的开头位置配置)的方式,插入图65的SYNVPS0G所示的字节对齐数据vps_alingment_bit_equalt_to_one(图65的SYNVPS0G)。这里,函数byte_aligned()是判定编码数据上的当前位置(比特单位)是否为字节边界上的处理,在编码数据上的当前位置为字节边界上的情况下,判定为“真”,在除此以外的情况下,判定为“假”。即,直到判定成为“真”为止,字节对齐数据(vps_alingment_bit_equalt_to_one)以1bit单位插入。
接着,将各PTL信息的简档有无标记和PTL信息交错(分离)而在简档有无标记和PTL信息之间,为了调整字节对齐而插入字节对齐数据reserved_zero_bits[i]。在图65的情况下,由于层集数vps_number_layer_sets_minus1(图65的SYNVPS0H)以及PTL信息数vps_num_profile_tier_level_minus1(图65的SYNVPS0G)的语法进行字节对齐,所以被插入的字节对齐数据reserved_zero_bits[i]的比特量V由PTL信息数而确定,例如,V={8-{{(vps_num_profile_tier_level_minus1+1)%8}%8}}。另外,插入字节对齐数据的循环的式并不限定于图65的SYNVPS0G所示的
“for(i=(((vps_num_profile_tier_level_minus1+1)%8)%8);i>0;i--)”,也可以在可实施的范围内进行变更。例如,也可以作为如下。
“for(i=0;i<(((vps_num_profile_tier_level_minus1+1)%8)%8);i++)”
另外,在图65的情况下,虽然将字节对齐数据vps_alingment_bit_equal_to_one(=1bit)插入到层集数的紧前,但也可以插入到PTL信息数vps_num_profile_tier_level_minus1的紧前。在该情况下,在简档有无标记和PTL信息之间插入的字节对齐数据的比特量V由PTL信息数的比特长V1(=6bits)以及PTL信息数所确定,例如,V={8-{{(vps_num_profile_tier_level_minus1+1+V1)%8}%8}}。在该情况下,插入字节对齐数据的循环的式,例如也可以作为如下。
“for(i=(((vps_num_profile_tier_level_minus1+1+V1)%8)%8);i>0;i--)”。此外,并不限定于此,也可以在可实施的范围内进行变更。例如,也可以作为如下。
“for(i=0;i<(((vps_num_profile_tier_level_minus1+1+V1)%8)%8);i++)”。另外,也可以代替上述循环的式,作为“while(!byte_aligned())”。
此外,为了确保PTL信息列表上的字节对齐,将参照PTL指定信息profile_ref_minus1[i]从6bit变更为8bit(图65的SYNVPS0L)。另外,也可以代替扩展参照PTL指定信息profile_ref_minus1[i]的比特长,为了调整字节对齐,附加2bit的扩展用比特reserved_zero_2bits。
通过实施以上的变更,PTL信息列表上的PTL信息进行字节对齐,所以能够降低与在对各语法进行解码/编码时的读出/写入有关的存储器接入的次数。即,起到降低解码/编码所需的处理量的效果。此外,与非专利文献1同样地,对各PTL信息的特定子层的简档信息以及等级信息,基于子层数、子层简档有无标记、子层等级有无标记,通过字节计算能够容易地接入到特定的子层的简档信息以及等级信息。
(VPS解码部102”’的结构)
参照图16说明变形例4的VPS解码部102”’的结构。VPS解码部102”’除了与实施例1的VPS解码部102具备的PTL信息解码部1021、参照PTL指定信息解码部1022以及简档有无标记解码部1023相同的结构要素之外,还具备字节对齐数据解码部1024(未图示)。另外,以下,只说明字节对齐数据解码部1024。
VPS解码部102”’具备的字节对齐数据解码部1024对在VPS扩展数据vps_extension()中包含的、用于调整字节对齐而插入的数据、字节对齐数据进行解码。例如,为vps_alignment_bit_equal_to_one(图65上的SYNVPS0G)、reserved_zero_1bits[i](图65上的SYNVPS0K)。
<VPS扩展数据的详细的解码过程(变形例4)>
使用图66说明VPS解码部102”’的VPS扩展数据的解码过程。
(步骤SH101)VPS解码部102”’对图65上的语法组SYNVPS0A进行解码。
(步骤SH102)VPS解码部102”’对图65上的SYNVPS0E所示的PTL信息列表为止的字节偏移信息(vps_ptl_info_offset)进行解码。
(步骤SH103)VPS解码部102”’对图65上的SYNVPS0F所示的可伸缩性掩码标记进行解码。
……省略……
(步骤SH104)VPS解码部102”’具备的字节对齐数据解码部1024基于图65上的SYNVPS0G所示的预定的判定式,将字节对齐数据(vps_alignment_bit_equal_to_one)以1比特单位进行解码(读出)。
(步骤SH105)VPS解码部102”’对图65上的SYNVPS0H所示的层集数进行解码。
(步骤SH106)VPS解码部102”’对图65上的SYNVPS0I所示的PTL信息数进行解码。
(步骤SH107)在VPS解码部102”’中包含的简档有无标记解码部1023将图65上的SYNVPS0J所示的简档有无标记解码“PTL信息数-1”个。
(步骤SH108)VPS解码部102”’具备的字节对齐数据解码部1024对图65上的SYNVPS0K所示的字节对齐数据(reserved_zero_bit[i])进行解码。解码的字节对齐数据的比特数为V={8-{{(vps_num_profile_tier_level_minus1+1)%8}%8}}。
(步骤SH109)是在VPS上包含的PTL信息的解码过程的循环开始点。
(步骤SH110)在简档有无标记为0的情况下,判定为在第i个PTL信息上没有表示简档信息的语法组,进入步骤SH112。在简档有无标记为1的情况下,判定为在第i个PTL信息上有表示简档信息的语法组,进入步骤SA111。
(步骤SH111)在简档有无标记为0的情况下,在VPS解码部102””中包含的参照PTL指定信息解码部1022对表示从PTL信息列表上的哪个PTL信息参照第i个PTL信息的简档信息的参照PTL信息指定索引“profile_ref_minus1[i]”(图65上的SYNVPS0L)进行解码。参照PTL信息指定索引“profile_ref_minus1[i]”表示参照目标的PTL信息的位置。即,第i个PTL信息将由j=(profile_ref_minus1[i]+1)所确定的、第j个PTL信息作为简档信息的参照目标。
(步骤SH112)在VPS解码部102”’中包含的PTL信息解码部1021将简档有无标记、参照PTL指定索引、子层数作为输入,对第i个PTL信息的简档以及等级信息进行解码。由于关于PTL信息解码部1021的细节已经说明,所以省略。
(步骤SH113)是在VPS上包含的PTL信息的解码过程的循环终端。
(步骤SH114)VPS解码部102”’对其他的语法进行解码。
以上,说明了变形例4的VPS解码部102”’的动作,但并不限定于上述步骤,也可以在可实施的范围内变更步骤。
<<VPS解码部102的变形例4a>>
接着,使用图68、图69说明VPS解码部102的变形例4a。
首先,使用图68说明变形例4a的视频扩展参数集VPS(VPS扩展数据vps_extension())的语法表格。图68和变形例4的图65所示的VPS扩展数据的语法表格的不同点在于,在图68中,删除了图65上的语法SYNVPS0L所示的参照PTL信息指定索引(profile_ref_minus1[i]),由图68上的语法SYNVPS0J所示的简档有无标记(vps_profile_present_flag[i])兼用参照PTL指定信息指定索引的功能。即,在简档有无标记(vps_profile_present_flag[i])的值为1的情况下,第i个PTL信息的简档信息从编码数据进行解码。另一方面,在简档有无标记的值为0的情况下,在第i个PTL信息的简档信息中,被设定(推算)在第i个PTL信息的紧前进行了解码的第(i-1)个解码完毕PTL信息的简档信息。另外,也能够通过预先在编码器侧将PTL信息列表上的PTL信息按照类似顺序排序,提高第i个PTL信息参照紧前的PTL信息的概率。即,在vps_profile_present_flag[i]=0的情况下,也能够不对参照PTL指定索引“profile_ref_minus1[i]”进行解码,解释成推算为参照PTL指定索引“profile_ref_minus1[i]==0”。由此,能够进一步削减涉及参照PTL指定索引的符号量。此外,除此以外的对于现有技术的扩展VPS数据的变更与变形例4相同,起到同样的效果。
(VPS解码部102”’a的结构)
参照图25说明变形例4a的VPS解码部102”’a的结构。VPS解码部102”’a除了与变形例2的VPS解码部102’具备的PTL信息解码部1021’以及简档有无标记解码部1023’相同的结构要素之外,还具备字节对齐数据解码部1024(未图示)。省略作为相同的结构要素的、PTL信息解码部1021’以及简档有无标记解码部1023’的说明。此外,由于字节对齐数据解码部1024是与变形例4的VPS解码部102”’具备的字节对齐数据解码部1024相同的结构要素,所以省略说明。
<VPS扩展数据的详细的解码过程(变形例4a)>
使用图69说明VPS解码部102”’a的VPS扩展数据的解码过程。另外,在VPS解码部102”’a的VPS扩展数据的解码过程中,不同点在于省略了图66上的步骤SH110(基于简档有无标记的值的分支判定以及基于分支的转移)、步骤SH111(参照PTL信息指定索引profile_ref_minus1[i]的解码),除此以外的动作相同,所以省略说明。
以上,说明了变形例4的VPS解码部102”’a的动作,但并不限定于上述步骤,也可以在可实施的范围内变更步骤。
另外,在变形例4以及变形例4a的VPS扩展数据中,追加了表示从VPSNAL单元的开头到位于VPSNAL单元上的VPS扩展数据上的PTL信息关联语法为止的字节偏移的vps_ptl_info_offset,但并不限定于此。例如,也可以代替追加上述字节偏移,将PTL信息关联语法配置在可伸缩性掩码标记的紧后。由此,也能够尽早接入到PTL信息以及关联语法,起到与变形例4以及变形例4a同样的效果。另外,在编码侧中,也能够应用同样的结构。
另外,在变形例4a中,将简档有无标记和PTL信息交错地进行信号通知,但并不限定于此。例如,在变形例3中导入的等级信息有无标记也可以与变形例4a同样地,与PTL信息交错地进行信号通知。即,也可以将PTL信息数-1个的简档信息和等级信息先进行信号通知,之后,插入字节对齐数据,之后,将各PTL信息进行信号通知。在该情况下,起到与变形例4a以及变形例3同样的效果。另外,这个变更也能够应用于编码侧。
[参照图片信息解码部]
参照图片信息解码部是头部解码部10的结构要素,从编码数据#1解码与参照图片有关的信息。在与参照图片有关的信息中,包括参照图片集信息(以下,称为RPS信息)和参照图片列表修正信息(以下,称为RPL修正信息)。
参照图片集(RPS:ReferencePictureSet)表示在对象图片或者按照解码顺序在对象图片上后续的图片中有可能利用作为参照图片的图片的集合。RPS信息是从SPS或切片头部进行解码的信息,是在各图片的解码时设定的参照图片集的导出中使用的信息。
参照图片列表(RPL:ReferencePictureList)是在进行移动补偿预测时应参照的参照图片的候选列表。参照图片列表也可以存在2个以上。在本实施方式中,使用L0参照图片列表(L0参照列表)和L1参照图片列表(L1参照列表)。RPL修正信息是从SPS或切片头部进行解码的信息,表示参照图片列表内的参照图片的顺序。
在移动补偿预测中,利用在参照图像列表上记录在参照图像索引(refIdx)的位置的参照图片。例如,在refIdx的值为0的情况下,参照图像列表的0的位置、即参照图像列表的开头的参照图片使用于移动补偿预测。
另外,由于参照图片信息解码部的RPS信息以及RPL修正信息的解码处理是本实施方式中的重要的处理,所以在后面详细说明。
这里,参照图35说明参照图片集和参照图片列表的例。图35(a)是将构成运动图像的图片按照显示排列而示出的,图中的数字表示与各图片对应的POC。如在解码图片缓冲器的说明中后述那样,POC以按输出顺序成为升序的方式分配给各图片。表示为“curr”的POC为9的图片是当前的解码的对象图片。
图35(b)表示在对象图片中应用的RPS信息的例。对象图片中的参照图片集(当前RPS)基于该RPS信息而导出。在RPS信息中,包括长期RPS信息和短期RPS信息。作为长期RPS信息,直接示出在当前RPS中包含的图片的POC。在图35(b)所示的例中,长期RPS信息表示将POC=1的图片包含在当前RPS中。在短期RPS信息中,在当前RPS中包含的图片以相对于对象图片的POC的差分来记录。图中表示为“Before,dPOC=1”的短期RPS信息表示将相对于对象图片的POC小1的POC的图片包含在当前RPS中。同样地,图中的“Before,dPOC=4”表示小4的POC的图片,“After,dPOC=1”表示将大1的POC的图片包含在当前RPS中。另外,“Before”表示对象图片的前方、即显示顺序比对象图片早的图片。此外,“After”表示对象图片的后方、即显示顺序比对象图片晚的图片。
图35(c)表示在对象图片的POC为0的情况下,应用了在图35(b)中例示的RPS信息时导出的当前RPS的例。包括由长期RPS信息所示的POC=1的图片。此外,包括由短期RPS信息所示的、具有比对象图片(POC=9)小1的POC的图片,即POC=8的图片。同样地,包括由短期RPS信息所示的、POC=5和POC=10的图片。
图35(d)以及(e)表示从在当前RPS中包含的参照图片生成的参照图片列表的例。在参照图片列表的各要素中,被赋予索引(参照图片索引)(图中记载为idx)。图35(d)表示L0参照列表的例。在具有5、8、10、1的POC的当前RPS中包含的参照图片按照这个顺序包含在L0参照列表中。图35(e)表示L1参照列表的例。在具有10、5、8的POC的当前RPS中包含的参照图片按照这个顺序包含在L1参照列表中。另外,如L1参照列表的例所示,在参照图片列表中,不需要包括在当前RPS中包含的全部的参照图片(可参照图片)。但是,参照图片列表的要素数最大成为在当前RPS中包含的参照图片的数目。换言之,参照图片列表的长度为在当前图片中可参照的图片数以下。
接着,参照图36说明参照图片列表修正的例。图36例示在对特定的参照图片列表(图36(a))应用了RPL修正信息(图36(b))的情况下得到的修正后的参照图片列表(图36(c))。图36(a)所示的修正前L0参照列表与在图35(d)中说明的L0参照列表相同。图36(b)所示的RPL修正信息成为将参照图片索引的值作为要素的列表,从开头起依次存储有0、2、1、3的值。该RPL修正信息表示将由在修正前参照列表中包含的0、2、1、3的参照图片索引表示的参照图片按照这个顺序作为修正后L0参照列表的参照图片。图36(c)表示修正后L0参照列表,按照这个顺序包括POC为5、10、8、1的图片。
(运动图像解码处理顺序)
图像解码装置1从输入编码数据#1生成解码图像#2的顺序如下所述。
(S11)头部解码部10从编码数据#1解码VPS、SPS。
(S12)头部解码部10从编码数据#1解码PPS。
(S13)将编码数据#1表示的图片顺次设定为对象图片。对各对象图片执行S14~S17的处理。
(S14)头部解码部10从编码数据#1对在对象图片中包含的各切片的切片头部进行解码。在头部解码部10中包含的参照图片信息解码部从切片头部解码RPS信息并输出到在参照图片管理部13中包含的参照图片集设定部131。此外,参照图片信息解码部从切片头部解码RPL修正信息并输出到参照图片列表导出部132。
(S15)参照图片集设定部131基于RPS信息和在解码图片缓冲器12中记录的局部解码图像的POC和存储器上的位置信息的组合,生成要在对象图片中应用的参照图片集RPS,并输出到参照图片列表导出部132。
(S16)参照图片列表导出部132基于参照图片集RPS和RPL修正信息,生成参照图片列表RPL并输出到图片解码部11。(S17)图片解码部11从编码数据#1,基于在对象图片中包含的各切片的切片数据和参照图片列表RPL,生成对象图片的局部解码图像,并与对象图片的POC相关联地记录在解码图片缓冲器中。在解码图片缓冲器中记录的局部解码图像在基于POC而决定的适当的定时,作为解码图像#2输出到外部。
[解码图片缓冲器12]
在解码图片缓冲器12中,在图片解码部中进行了解码的各图片的局部解码图像与层ID、该图片的POC(PictureOrderCount、图片顺序信息)相关联地记录。解码图片缓冲器12在预定的输出定时,决定输出对象的POC。之后,将与该POC对应的局部解码图像作为构成解码图像#2的图片的一个,输出到外部。
图37是表示解码图片存储器的结构的概念图。图中在内部记载了数字的框表示局部解码图像。数字表示POC。如图37的图所示,多个层的局部解码图像与其层ID、POC、局部解码图像相关联地记录。进一步,与层ID对应的视点IDview_id、深度标记depth_flag也与局部解码图像相关联地记录。
[参照图片管理部13]
图38是表示本实施方式的参照图片管理部13的结构的概略图。参照图片管理部13包括参照图片集设定部131和参照图片列表导出部132而构成。
参照图片集设定部131基于在参照图片信息解码部218中进行了解码的RPS信息以及在解码图片缓冲器12中记录的局部解码图像和层ID、POC的信息,构筑参照图片集RPS并输出到参照图片列表导出部132。另外,关于参照图片集设定部131的细节,在后面叙述。
参照图片列表导出部132基于在参照图片信息解码部218中进行了解码的RPL修正信息以及从参照图片集设定部131输入的参照图片集RPS,生成参照图片列表RPL,并输出到图片解码部11。另外,关于参照图片列表导出部132的细节,在后面叙述。
(参照图片信息解码处理的细节)
在上述解码顺序中的S14的处理中,关于RPS信息以及RPL修正信息的解码处理,说明细节。
(RPS信息解码处理)
RPS信息是为了构筑参照图片集而从SPS或者切片头部进行解码的信息。在RPS信息中,包括以下。
1.SPS短期RPS信息:在SPS中包含的短期参照图片集信息
2.SPS长期RP信息:在SPS中包含的长期参照图片信息
3.SH短期RPS信息:在切片头部中包含的短期参照图片集信息
4.SH长期RP信息:在切片头部中包含的长期参照图片信息
(1.SPS短期RPS信息)
SPS短期RPS信息包括从参照SPS的各图片可利用的多个短期参照图片集的信息。另外,短期参照图片集是可成为通过相对于对象图片的相对的位置(例如与对象图片的POC差分)而指定的参照图片(短期参照图片)的图片的集合。
参照图39说明SPS短期RPS信息的解码。图39例示在头部解码部10以及参照图片信息解码部中在SPS解码时利用的SPS语法表的一部分。图39的(A)的部分相当于SPS短期RPS信息。在SPS短期RPS信息中,包括在SPS中包含的短期参照图片集的数(num_short_term_ref_pic_sets)以及各短期参照图片集的信息(short_term_ref_pic_set(i))。
参照图40说明短期参照图片集信息。图40例示在头部解码部10以及参照图片信息解码部中在SPS解码时以及切片头部解码时利用的短期参照图片集的语法表。
在短期参照图片集信息中,包括显示顺序比对象图片早的短期参照图片数(num_negative_pics)以及显示顺序比对象图片晚的短期参照图片数(num_positive_pics)。另外,以下,将显示顺序比对象图片早的短期参照图片称为前方短期参照图片,将显示顺序比对象图片晚的短期参照图片称为后方短期参照图片。
此外,在短期参照图片集信息中,对各前方短期参照图片包括相对于对象图片的POC差分的绝对值(delta_poc_s0_minus1[i])以及被使用作为对象图片的参照图片的可能性的有无(used_by_curr_pic_s0_flag[i])。除此之外,对各后方短期参照图片包括相对于对象图片的POC差分的绝对值(delta_poc_s1_minus1[i])以及被使用作为对象图片的参照图片的可能性的有无(used_by_curr_pic_s1_flag[i])。
(2.SPS长期RP信息)
SPS长期RP信息包括从参照SPS的各图片可利用的多个长期参照图片的信息。另外,长期参照图片是由序列内的绝对的位置(例如POC)所指定的图片。
再次参照图39说明SPS长期RP信息的解码。图39的(B)的部分相当于SPS长期RP信息。在SPS长期RP信息中,包括表示在SPS中传输的长期参照图片的有无的信息(long_term_ref_pics_present_flag)、在SPS中包含的长期参照图片的数目(num_long_term_ref_pics_sps)以及各长期参照图片的信息。在长期参照图片的信息中,包括参照图片的POC(lt_ref_pic_poc_lsb_sps[i])以及被使用作为对象图片的参照图片的可能性的有无(used_by_curr_pic_lt_sps_flag[i])。
另外,上述参照图片的POC可以是与参照图片相关联的POC的值本身,也可以使用POC的LSB(最低有效位(LeastSignificantBit))、即将POC除以既定的2的幂级数所得的余数的值。
(3.SH短期RPS信息)
SH短期RPS信息包括从参照切片头部的图片可利用的单一的短期参照图片集的信息。
参照图41说明SPS短期RPS信息的解码。图41例示在头部解码部10以及参照图片信息解码部中在切片头部解码时利用的切片头部语法表的一部分。图41的(A)的部分相当于SH短期RPS信息。SH短期RPS信息包括表示将短期参照图片集从在SPS中解码完毕的短期参照图片集中选择,还是在切片头部中显式地包括的标记(short_term_ref_pic_set_sps_flag)。当从在SPS中解码完毕的短期参照图片集中选择的情况下,包括选择一个解码完毕的短期参照图片集的识别符(short_term_ref_pic_set_idx)。在切片头部中显式地包括的情况下,相当于前述的语法表(short_term_ref_pic_set(idx))的信息包含在SPS短期RPS信息中。
(4.SH长期RP信息)
SH长期RP信息包括从参照切片头部的图片可利用的长期参照图片的信息。
再次参照图41说明SH长期RP信息的解码。图41的(B)的部分相当于SH长期RP信息。SH长期RP信息只在对象图片中能够利用长期参照图片(long_term_ref_pic_present_flag)的情况下包含在切片头部中。在SPS中已解码完1个以上的长期参照图片的情况下(num_long_term_ref_pics_sps>0),在SPS中解码完毕的长期参照图片中在对象图片中可参照的参照图片的数目(num_long_term_sps)包含在SH长期RP信息中。此外,在切片头部中显式地传输的长期参照图片数(num_long_term_pics)包含在SH长期RP信息中。除此之外,从在SPS中传输完毕的长期参照图片中选择上述num_long_term_sps的数目的长期参照图片的信息(lt_idx_sps[i])包含在SH长期RP信息中。进一步,作为在切片头部中显式地包含的长期参照图片的信息,参照图片的POC(poc_lsb_lt[i])以及被使用作为对象图片的参照图片的可能性的有无(used_by_curr_pic_lt_flag[i])包括上述num_long_term_pics的数目个。
(RPL修正信息解码处理)
RPL修正信息是为了构筑参照图片列表RPL而从SPS或者切片头部进行解码的信息。在RPL修正信息中,包括SPS列表修正信息以及SH列表修正信息。
(SPS列表修正信息)
SPS列表修正信息是在SPS中包含的信息,是涉及参照图片列表修正的限制的信息。再次参照图39说明SPS列表修正信息。图39的(C)的部分相当于SPS列表修正信息。在SPS列表修正信息中,包括表示在图片中包含的前切片中参照图片列表是否为共同的标记(restricted_ref_pic_lists_flag)以及表示在切片头部内是否存在与列表排序有关的信息的标记(lists_modification_present_flag)。
(SH列表修正信息)
SH列表修正信息是在切片头部中包含的信息,包括对对象图片应用的参照图片列表的长度(参照列表长)的更新信息以及参照图片列表的排序信息(参照列表排序信息)。参照图42说明SH列表修正信息。图42例示在头部解码部10以及参照图片信息解码部中在切片头部解码时利用的切片头部语法表的一部分。图42的(C)的部分相当于SH列表修正信息。
作为参照列表长更新信息,包括表示列表长的更新有无的标记(num_ref_idx_active_override_flag)。除此之外,还包括表示L0参照列表的变更后的参照列表长的信息(num_ref_idx_l0_active_minus1)以及表示L1参照列表的变更后的参照列表长的信息(num_ref_idx_l1_active_minus1)。
参照图43说明作为参照列表排序信息而在切片头部中包含的信息。图43例示在头部解码部10以及参照图片信息解码部中在切片头部解码时利用的参照列表排序信息的语法表。
在参照列表排序信息中,包括L0参照列表排序有无标记(ref_pic_list_modification_flag_l0)。在所述标记的值为1(有L0参照列表的排序的情况下)且NumPocTotalCurr大于2的情况下,L0参照列表排序顺序(list_entry_l0[i])包含在参照列表排序信息中。这里,NumPocTotalCurr是表示在当前图片中能够利用的参照图片的数目的变量。因此,只有在有L0参照列表的排序且在当前图片中能够利用的参照图片数大于2的情况下,L0参照列表排序顺序包含在切片头部中。
同样地,在参照图片为B切片的情况下,即,在对象图片中能够利用L1参照列表的情况下,L1参照列表排序有无标记(ref_pic_list_modification_flag_l1)包含在参照列表排序信息中。在所述标记的值为1且NumPocTotalCurr大于2的情况下,L1参照列表排序顺序(list_entry_l1[i])包含在参照列表排序信息中。换言之,只有在有L1参照列表的排序且在当前图片中能够利用的参照图片数大于2的情况下,L1参照列表排序顺序包含在切片头部中。
(参照图片集导出处理的细节)
说明前述的运动图像解码顺序中的S15的处理、即基于参照图片集设定部的参照图片集导出处理的细节。
如已经说明,参照图片集设定部131基于RPS信息和在解码图片缓冲器12中记录的信息,生成在对象图片的解码中使用的参照图片集RPS。
参照图片集RPS是在对象图片或者按照解码顺序在对象图片上后续的图片中在解码时能够利用作为参照图像的图片(可参照图片)的集合。参照图片集根据可参照图片的种类,分为以下2个子集。
·当前图片可参照列表ListCurr:在解码图片缓冲器上的图片中,对象图片中的可参照图片的列表
·后续图片可参照列表ListFoll:虽然在对象图片中不能参照,但按照解码顺序在对象图片上后续的图片中能够参照的解码图片缓冲器上的图片的列表
另外,将在当前图片可参照列表中包含的图片的数目称为当前图片可参照图片数NumCurrList。另外,参照前述的图43说明的NumPocTotalCurr与NumCurrList相同。
当前图片可参照列表进一步由3个部分列表构成。
·当前图片长期可参照列表ListLtCurr:由SPS长期RP信息或者SH长期RP信息所指定的当前图片可参照图片
·当前图片短期前方可参照列表ListStCurrBefore:由SPS短期RPS信息或者SH短期RPS信息所指定且显示顺序比对象图片早的当前图片可参照图片
·当前图片短期后方可参照列表ListStCurrAfter:由SPS短期RPS信息或者SH短期RPS信息所指定且显示顺序比对象图片早的当前图片可参照图片。
后续图片可参照列表进一步由2个部分列表构成。
·后续图片长期可参照列表ListLtFoll:由SPS长期RP信息或者SH长期RP信息所指定的后续图片可参照图片
·后续图片短期可参照列表ListStFoll:由SPS短期RPS信息或者SH短期RPS信息所指定的当前图片可参照图片。
参照图片集设定部131在NAL单元类型为IDR以外的情况下,将参照图片集RPS、即当前图片短期前方可参照列表ListStCurrBefore、当前图片短期后方可参照列表ListStCurrAfter、当前图片长期可参照列表ListLtCurr、后续图片短期可参照列表ListStFoll以及后续图片长期可参照列表ListLtFoll按照以下顺序生成。除此之外,导出表示当前图片可参照图片数的变量NumPocTotalCurr。另外,设所述各可参照列表在以下的处理的开始前设定为空。参照图片集设定部131在NAL单元类型为IDR的情况下,作为空而导出参照图片集RPS。
(S201)基于SPS短期RPS信息以及SH短期RPS信息,确定在对象图片的解码中使用的单一的短期参照图片集。具体而言,在SH短期RPS信息中包含的short_term_ref_pic_set_sps的值为0的情况下,选择在SH短期RPS信息中包含的切片头部中显式地传输的短期RPS。在除此以外(short_term_ref_pic_set_sps的值为1的情况下,从在SPS短期RPS信息中包含的多个短期RPS中选择在SH短期RPS信息中包含的short_term_ref_pic_set_idx表示的短期RPS。
(S202)导出在所选择的短期RPS中包含的各个参照图片的POC的值,检测在解码图片缓冲器12上与该POC值相关地记录的局部解码图像的位置,作为参照图片的解码图片缓冲器上的记录位置而导出。
参照图片的POC值在参照图片为前方短期参照图片的情况下,从对象图片的POC的值减去“delta_poc_s0_minus1[i]+1”的值而导出。另一方面,在参照图片为后方短期参照图片的情况下,对对象图片的POC的值加上“delta_poc_s1_minus1[i]+1”的值而导出。
(S203)按传输了在短期RPS中包含的前方参照图片的顺序进行确认,在相关联的used_by_curr_pic_s0_flag[i]的值为1的情况下,将该前方参照图片追加到当前图片短期前方可参照列表ListStCurrBefore。在除此以外(used_by_curr_pic_s0_flag[i]的值为0)的情况下,将该前方参照图片追加到后续图片短期可参照列表ListStFoll。
(S204)按传输了在短期RPS中包含的后方参照图片的顺序进行确认,在相关联的used_by_curr_pic_s1_flag[i]的值为1的情况下,将该后方参照图片追加到当前图片短期后方可参照列表ListStCurrAfter。在除此以外(used_by_curr_pic_s1_flag[i]的值为0的情况下,将该前方参照图片追加到后续图片短期可参照列表ListStFoll。
(S205)基于SPS长期RP信息以及SH长期RP信息,确定在对象图片的解码中使用的长期参照图片集。具体而言,从将num_long_term_sps的数目的参照图片包含在SPS长期RP信息中且层ID与对象图片相等的参照图片中选择,并按顺序追加到长期参照图片集。选择的参照图片是lt_idx_sps[i]表示的参照图片。接着,将num_long_term_pics的数目的参照图片包含在SH长期RP信息中的参照图片按顺序追加到长期参照图片集。在对象图片的层ID为0以外的情况下,在从层ID与对象图片不同的图片、尤其从对象图片的依赖层ref_layer_id相等的层ID参照图片中,将具有与对象图片的POC相等的POC的参照图片进一步追加到长期参照图片集。
(S206)导出在长期参照图片集中包含的各个参照图片的POC的值,检测在解码图片缓冲器12上从层ID与对象图片相等的参照图片中与该POC值相关联地记录的局部解码图像的位置,并作为参照图片的解码图片缓冲器上的记录位置而导出。此外,关于层ID与对象图片不同的参照图片,检测与由依赖层ref_layer_id所指定的层ID和对象图片的POC相关联地记录的局部解码图像的位置,并作为参照图片的解码图片缓冲器上的记录位置而导出。
长期参照图片的POC关于层ID与对象图片相等的参照图片,根据相关联地解码的poc_lst_lt[i]或者lt_ref_pic_poc_lsb_sps[i]的值而直接导出。关于层ID与对象图片不同的参照图片,设定了对象图片的POC。
(S207)按顺序确认在长期参照图片集中包含的参照图片,在相关联的used_by_curr_pic_lt_flag[i]或者used_by_curr_pic_lt_sps_flag[i]的值为1的情况下,将该长期参照图片追加到当前图片长期可参照列表ListLtCurr。在除此以外(used_by_curr_pic_lt_flag[i]或者used_by_curr_pic_lt_sps_flag[i]的值为0)的情况下,将该长期参照图片追加到后续图片长期可参照列表ListLtFoll。
(S208)将变量NumPocTotalCurr的值设定为能够从当前图片参照的参照图片之和。即,将变量NumPocTotalCurr的值设定为当前图片短期前方可参照列表ListStCurrBefore、当前图片短期后方可参照列表ListStCurrAfter以及当前图片长期可参照列表ListLtCurr的3个列表的各要素数之和。
(参照图片列表构筑处理的细节)
说明上述解码顺序中的S16的处理、即参照图片列表构筑处理的细节。如已经说明,参照图片列表导出部132基于参照图片集RPS和RPL修正信息而生成参照图片列表RPL。
参照图片列表由L0参照列表和L1参照列表的2个列表构成。首先,说明L0参照列表的构筑顺序。L0参照列表按以下的S301~S307所示的顺序构筑。
(S301)生成暂定L0参照列表,并初始化为空的列表。
(S302)对暂定L0参照列表按顺序追加在当前图片短期前方可参照列表中包含的参照图片。
(S303)对暂定L0参照列表按顺序追加在当前图片短期后方可参照列表中包含的参照图片。
(S304)对暂定L0参照列表按顺序追加在当前图片长期可参照列表中包含的参照图片。
(S305)在参照图片列表被修正的情况下(在RPL修正信息中包含的lists_modification_present_flag的值为1的情况下),执行以下的S306a~S306b的处理。在不是的情况下(lists_modification_present_flag的值为0的情况下),执行S307的处理。
(S306a)在L0参照图片的修正为有效的情况下(在RPL修正信息中包含的ref_pic_list_modification_flag_l0的值为1的情况下)且当前图片可参照图片数NumCurrList等于2的情况下,执行S306b。在不是的情况下,执行S306c。
(S306b)通过下述的式来设定在RPL修正信息中包含的列表排序顺序list_entry_l0[i]的值,之后,执行S306c。
list_entry_l0[0]=1
list_entry_l0[1]=0
(S306c)基于参照列表排序顺序list_entry_l0[i]的值,对暂定L0参照列表的要素进行排序,并作为L0参照列表。通过以下式导出与参照图片索引rIdx对应的L0参照列表的要素RefPicList0[rIdx]。这里,RefListTemp0[i]表示暂定L0参照列表的第i个要素。
RefPicList0[rIdx]=RefPicListTemp0[list_entry_l0[rIdx]]
根据上述的式,在参照列表排序顺序list_entry_l0[i]中,参照在参照图片索引rIdx表示的位置记录的值,存储在暂定L0参照列表中在所述值的位置记录的参照图片作为L0参照列表的rIdx的位置的参照图片。
(S307)将暂定L0参照列表作为L0参照列表。
接着,构筑L1参照列表。另外,L1参照列表也能够按照与上述L0参照列表同样的顺序来构筑。在上述L0参照列表的构筑顺序(S301~S307)中,将L0参照图片、L0参照列表、暂定L0参照列表、list_entry_l0分别替换为L1参照图片、L1参照列表、暂定L1参照列表、list_entry_l1即可。
在上述中,在图43中,记载了在当前图片可参照图片数为2的情况下,省略RPL修正信息的例,但并不限定于此。也可以在当前图片可参照图片数为1的情况下,省略RPL修正信息。具体而言,在参照图片信息解码部中的SH列表修正信息的解码处理中,基于图45所示的语法表来解读参照列表排序信息。图45例示在切片头部解码时利用的参照列表排序信息的语法表。
[图片解码部11]
图片解码部11基于编码数据#1、从头部解码部10输入的头部信息、在解码图片缓冲器12中记录的参照图片以及从参照图片列表导出部132输入的参照图片列表,生成各图片的局部解码图像并记录在解码图片缓冲器12中。
图44是表示本实施方式的图片解码部11的结构的概略图。图片解码部11包括熵解码部301、预测参数解码部302、预测参数存储器(预测参数存储部)307、预测图像生成部308、逆量化/逆DCT部311以及加法部312而构成。
此外,预测参数解码部302包括外部预测参数解码部303以及内部预测参数解码部304而构成。预测图像生成部308包括外部预测图像生成部309以及内部预测图像生成部310而构成。
熵解码部301对从外部输入的编码数据#1进行熵解码,将各个符号(语法要素)进行分离并进行解码。在被分离的符号中,有用于生成预测图像的预测信息以及用于生成差分图像的残差信息等。
熵解码部301将被分离的符号的一部分输出到预测参数解码部302。被分离的符号的一部分例如是预测模式PredMode、分割模式part_mode、合并标记merge_flag、合并索引merge_idx、外部预测标记inter_pred_idx、参照图片索引refIdxLX、预测矢量索引mvp_LX_idx、差分矢量mvdLX。将哪个符号进行解码的控制基于预测参数解码部302的指示来进行。熵解码部301将量化系数输出到逆量化/逆DCT部311。该量化系数是在编码处理中,对残差信号进行DCT(离散余弦变换(DiscreteCosineTransform))并量化而获得的系数。
外部预测参数解码部303基于从熵解码部301输入的符号,参照在预测参数存储器307中存储的预测参数,对外部预测参数进行解码。
外部预测参数解码部303将进行了解码的外部预测参数输出到预测图像生成部308,且存储在预测参数存储器307中。关于外部预测参数解码部303的细节,在后面叙述。
内部预测参数解码部304基于从熵解码部301输入的符号,参照在预测参数存储器307中存储的预测参数,生成内部预测参数。内部预测参数是在使用内部预测而生成解码对象块的预测图像时需要的信息,例如,内部预测模式IntraPredMode。
内部预测参数解码部304将内部预测参数输出到预测图像生成部308,且存储在预测参数存储器307中。
预测参数存储器307将预测参数按解码对象的每个图片以及块存储在预先确定的位置。具体而言,预测参数存储器307存储外部预测参数解码部303进行了解码的外部预测参数、内部预测参数解码部304进行了解码的内部预测参数以及熵解码部301进行了分离的预测模式predMode。在被存储的外部预测参数中,例如有预测列表利用标记predFlagLX(外部预测标记inter_pred_idx)、参照图片索引refIdxLX、矢量mvLX。
在预测图像生成部308中,被输入从熵解码部301输入的预测模式predMode,且从预测参数解码部302输入预测参数。此外,预测图像生成部308从解码图片缓冲器12读出参照图片。预测图像生成部308通过预测模式predMode表示的预测模式,使用被输入的预测参数和读出的参照图片而生成预测图片块P(预测图像)。
这里,在预测模式predMode表示外部预测模式的情况下,外部预测图像生成部309使用从外部预测参数解码部303输入的外部预测参数和读出的参照图片,通过外部预测而生成预测图片块P。预测图片块P对应于PU。PU相当于由成为如上所述那样进行预测处理的单位的多个像素构成的图像的一部分、即一次进行预测处理的解码对象块。
外部预测图像生成部309对预测列表利用标记predFlagLX为1的参照图片列表(L0参照列表或者L1参照列表),从解码图片缓冲器12读出从由参照图片索引refIdxLX表示的参照图片以解码对象块作为基准而位于矢量mvLX表示的位置的参照图片块。外部预测图像生成部309对读出的参照图片块进行预测而生成预测图片块P。外部预测图像生成部309将生成的预测图片块P输出到加法部312。
在预测模式predMode表示内部预测模式的情况下,内部预测图像生成部310使用从内部预测参数解码部304输入的内部预测参数和读出的参照图像进行内部预测。具体而言,内部预测图像生成部310从解码图片缓冲器12读出解码对象的图片并且是在已经进行了解码的块中离解码对象块位于预先确定的范围的参照图片块。在解码对象块按所谓的光栅扫描的顺序顺次移动的情况下,预先确定的范围是例如左、左上、上、右上的相邻块中的任一个,根据内部预测模式而不同。光栅扫描的顺序是在各图片中,从上端到下端,关于各行,顺次从左端移动至右端的顺序。
内部预测图像生成部310使用读出的参照图像块和输入的预测参数而生成预测图像块。
内部预测图像生成部310将生成的预测图像块P输出到加法部312。
逆量化/逆DCT部311对从熵解码部301输入的量化系数进行逆量化而求出DCT系数。逆量化/逆DCT部311关于求出的DCT系数进行逆DCT(逆离散余弦变换(InverseDiscreteCosineTransform)),计算解码残差信号。逆量化/逆DCT部311将计算出的解码残差信号输出到加法部312。
加法部312将从外部预测图像生成部309以及内部预测图像生成部310输入的预测图片块P和从逆量化/逆DCT部311输入的解码残差信号的信号值按每个像素相加,生成参照图片块。加法部312将生成的参照图片块存储在参照图片缓冲器中,并将生成的参照图片块按每个图片进行了合并的解码层图像Td输出到外部。
〔图像编码装置〕
以下,参照图45说明本实施方式的图像编码装置2。
(图像编码装置的概要)
大概而言,图像编码装置2是通过对输入图像#10进行编码而生成并输出编码数据#1的装置。
(图像编码装置的结构)
说明本实施方式的图像编码装置2的结构例。图45是表示本实施方式的图像编码装置2的结构的概略图。图像编码装置2包括头部编码部10E、图片编码部21、解码图片缓冲器12、参照图片决定部13E而构成。图像编码装置2能够进行在包括多个层的图像中从特定的时刻的图片开始解码的后述的随机接入解码处理。
[头部编码部10E]
头部编码部10E基于输入图像#10,生成NAL单元头部、SPS、PPS以及切片头部等的以NAL单元单位、序列单位、图片单位或者切片单位利用于解码的信息,并进行编码而输出。
头部编码部10E基于既定的语法定义来解读在编码数据#1中包含的VPS、SPS以及PPS,并以序列单位对利用于解码的信息进行编码。例如,与层数有关的信息在VPS中进行编码,与解码图像的图像大小相关的信息在SPS中进行编码。另外,与多个层的解码图像的图像大小相关的信息(副本提示信息)在VPS中进行编码,在SPS中,与某对象层的解码图像的图像大小有关的信息(副本提示信息)进行编码。
此外,头部编码部10E基于既定的语法定义来解读在编码数据#1中包含的切片头部,并以切片单位对利用于解码的信息进行编码。例如,切片类型从切片头部进行编码。
另外,头部编码部10E还包括NAL单元头部编码部101E、VPS编码部102E(222)、SPS编码部103E、PPS编码部104以及切片头部编码部105E等而构成(未图示)。
NAL单元头部编码101E还包括层ID编码部1011E、NAL单元类型编码部1012E而构成(未图示)。
层ID编码部1011E对从外部输入的各层图像T的图像信号的编码数据(切片头部以及切片数据)以及用于对切片数据进行解码而参照的参数集(VPS、SPS、PPS以及SEI)的编码数据,赋予用于识别各层以及在层上附带的子层的层ID、时间ID,进行编码。
NAL单元类型编码部1012E对各编码数据赋予表示编码数据的类别(识别)的NAL单元类型,进行编码。另外,由于NAL单元类型已经说明,所以省略。
VPS编码部102E(222)对应于VPS解码部102的逆处理,基于多个层图像T以及VPS的规定语法,对以层单位利用的信息进行编码。另外,关于VPS编码部102E(222)的细节,在后面叙述。
SPS编码部103E对应于SPS解码部103的逆处理,基于层图像T以及SPS的规定的语法定义,对以序列单位利用的信息进行编码。
PPS编码部104E对应于PPS解码部104的逆处理,基于层图像T的各图片以及PPS的规定的语法定义,对以图片单位利用的信息进行编码。
切片头部编码部105E对应于切片头部解码部105的逆处理,按构成层图像T的图片的每个切片单位,基于切片头部的规定的语法定义进行编码,对以切片单位利用于解码的信息进行编码。
另外,在VPS、SPS中,包括与各层集的编码/解码所需的简档以及等级有关的简档/等级信息profile_tier_level()。头部编码部10E关于简档/等级信息,进行以下的处理。头部编码部10E提供从外部提供或者预先设定的层集数以及对各层集应用的PTL信息的总数。接着,基于从外部提供或者预先设定的层集0(例如,基本层)以及由基本层、扩展层构成的各层集(还包括属于层的各子层)的简档信息以及等级信息(简档/等级/层级),设定对各层集应用的简档有无标记、子层的简档有无标记(子层有无标记)、子层的等级有无标记(子层等级有无标记)的值,并将设定的简档有无标记以及各子层的简档有无标记/等级有无标记提供给头部信息编码部。此外,若某PTL信息的简档有无标记为0,则提供表示该PTL信息参照的PTL信息的列表上的位置的参照PLT指定信息。
(与图像解码装置的对应关系)
图像编码装置2包括与图像解码装置1的各结构对应的结构。这里,对应是指处于进行同样的处理或者逆的处理的关系。
例如,图像解码装置1具备的参照图片信息解码部的参照图片信息解码处理和图像编码装置2具备的参照图片信息编码部的参照图片信息编码处理相同。更详细而言,参照图片信息解码部作为从SPS或切片头部进行解码的语法值,生成RPS信息或修正RPL信息。相对于此,参照图片信息编码部将输入的RPS信息或修正RPL信息作为SPS或切片头部的语法值进行编码。
例如,在图像解码装置1中从比特串对语法值进行解码的处理和在图像编码装置2中从语法值对比特串进行编码的处理成为作为逆的处理的对应。
(处理的流程)
图像编码装置2从输入图像#10生成输出编码数据#1的顺序如下所述。
(S21)对构成输入图像#10的各图片(对象图片)执行以下的S22~S29的处理。
(S22)参照图片集决定部基于输入图像#10内的对象图片和在解码图片缓冲器12中记录的局部解码图像,决定参照图片集RPS并输出到参照图片列表决定部。此外,导出参照图片集RPS的生成所需的RPS信息,并输出到参照图片信息编码部。
(S23)参照图片列表决定部基于输入图像#10内的对象图片和所输入的参照图片集RPS,导出参照图片列表RPL,并输出到图片编码部21以及图片解码部11。此外,导出参照图片列表RPL的生成所需的RPL修正信息,并输出到参照图片信息编码部。
(S24)参照图片信息编码部基于参照图片集RPS以及参照图片列表RPL,生成SPS或者用于在切片头部中包括的RPS信息以及RPL修正信息。
(S25)头部编码部10E基于输入图像#10以及在参照图片决定部13E中生成的RPS信息以及RPL修正信息,生成对对象图片应用的SPS并输出。
(S26)头部编码部10E基于输入图像#10,生成对对象图片应用的PPS并输出。
(S27)头部编码部10E基于输入图像#10以及在参照图片决定部13E中生成的RPS信息以及RPL修正信息,对构成对象图片的各切片的切片头部进行编码,并作为编码数据#1的一部分而输出到外部且输出到图片解码部11。
(S28)图片编码部21基于输入图像#10,生成构成对象图片的各切片的切片数据,并作为编码数据#1的一部分而输出到外部。
(S29)图片编码部21生成对象图片的局部解码图像,并与对象图片的层ID和POC相关联地记录在解码图片缓冲器中。
(图片编码部21的结构)
接着,说明本实施方式的图片编码部21的结构。图46是表示本实施方式的图片编码部21的结构的框图。图片编码部21包括预测图像生成部201、减法部202、DCT/量化部203、熵编码部204、逆量化/逆DCT部205、加法部206、预测参数存储器208、编码参数决定部210、预测参数编码部211而构成。预测参数编码部211包括外部预测参数编码部212以及内部预测参数编码部213而构成。
预测图像生成部201关于从外部输入的层图像T的每个层的各图片,对作为将该图片进行了分割的区域的每个块生成预测图片块P。这里,预测图像生成部201基于从预测参数编码部211输入的预测参数,从解码图片缓冲器12读出参照图片块。从预测参数编码部211输入的预测参数例如是移动矢量或者位移矢量。预测图像生成部201读出位于将编码对象块作为起点而预测的移动矢量或者位移矢量表示的位置的块的参照图片块。预测图像生成部201关于读出的参照图片块,使用多个预测方式中的1个预测方式而生成预测图片块P。预测图像生成部201将生成的预测图片块P输出到减法部202。另外,由于预测图像生成部201是与已经说明的预测图像生成部308相同的动作,所以省略预测图片块P的生成的细节。
预测图像生成部201为了选择预测方式,例如选择将基于在层图像中包含的块的每个像素的信号值和预测图片块P的对应的每个像素的信号值的差分的误差值设为最小的预测方式。选择预测方式的方法并不限定于此。
在编码对象的图片为基础层图片的情况下,多个预测方式是内部预测、移动预测以及合并预测。移动预测是上述的外部预测中的显示时刻间的预测。合并预测是使用与已经进行了编码的块并且是在离编码对象块位于预先确定的范围内的块相同的参照图象块以及预测参数的预测。在编码对象的图片为非基础视点图片的情况下,多个预测方式是内部预测、运动预测、合并预测以及位移预测。位移预测(视差预测)是在上述的外部预测中的不同层图像(不同视点图像)间的预测。进一步,是移动预测、合并预测以及位移预测。
预测图像生成部201在选择了内部预测的情况下,将表示在生成预测图片块P时使用的内部预测模式的预测模式predMode输出到预测参数编码部211。
预测图像生成部201在选择了移动预测的情况下,将在生成预测图片块P时使用的移动矢量mvLX存储在预测参数存储器208中,并输出到外部预测参数编码部212。移动矢量mvLX表示从编码对象块的位置至在生成预测图片块P时的参照图片块的位置的矢量。在表示移动矢量mvLX的信息中,包括表示参照图片的信息(例如,参照图片索引refIdxLX、图片顺序号码POC),也可以是表示预测参数的信息。此外,预测图像生成部201将表示外部预测模式的预测模式predMode输出到预测参数编码部211。
预测图像生成部201在选择了位移预测(层间图像预测)的情况下,将在生成预测图片块P时使用的位移矢量存储在预测参数存储器208中,并输出到外部预测参数编码部212。位移矢量dvLX表示从编码对象块的位置至在生成预测图片块P时的参照图片块的位置的矢量。在表示位移矢量dvLX的信息中,包括表示参照图片的信息(例如,参照图片索引refIdxLX、层ID(或者视点IDview_id)),也可以是表示预测参数的信息。此外,预测图像生成部201将表示外部预测模式的预测模式predMode输出到预测参数编码部211。
预测图像生成部201在选择了合并预测的情况下,将表示所选择的参照图片块的合并索引merge_idx输出到外部预测参数编码部212。此外,预测图像生成部201将表示合并预测模式的预测模式predMode输出到预测参数编码部211。
减法部202按每个像素,在从外部输入的层图像T的对应的块的信号值中减去从预测图像生成部201输入的预测图片块P的信号值,生成残差信号。减法部202将生成的残差信号输出到DCT/量化部203和编码参数决定部210。
DCT/量化部203对从减法部202输入的残差信号进行DCT,计算DCT系数。DCT/量化部203对计算出的DCT系数进行量化而求出量化系数。DCT/量化部203将求出的量化系数输出到熵编码部204以及逆量化/逆DCT部205。
在熵编码部204中,从DCT/量化部203被输入量化系数,从编码参数决定部210被输入编码参数。在被输入的编码参数中,例如有参照图片索引refIdxLX、矢量索引mvp_LX_idx、差分矢量mvdLX、预测模式predMode以及合并索引merge_idx等的符号。
熵编码部204将被输入的量化系数和编码参数进行熵编码而生成编码数据#1,并将生成的编码数据#1输出到外部。
逆量化/逆DCT部205将从DCT/量化部203输入的量化系数进行逆量化而求出DCT系数。逆量化/逆DCT部205对求出的DCT系数进行逆DCT,计算解码残差信号。逆量化/逆DCT部205将计算出的解码残差信号输出到加法部206。
加法部206将从预测图像生成部201输入的预测图片块P的信号值和从逆量化/逆DCT部205输入的解码残差信号的信号值按每个像素相加,生成参照图片块。加法部206将生成的参照图片块存储在解码图片缓冲器12中。
预测参数存储器208将预测参数编码部211生成的预测参数,按编码对象的每个图片以及块存储在预先确定的位置。
编码参数决定部210在编码参数的多个集合中选择1个集合。编码参数是上述的预测参数或与该预测参数相关联而生成的成为编码的对象的参数。预测图像生成部201使用这些编码参数的各个集合而生成预测图片块P。
编码参数决定部210对多个集合的各个,计算表示信息量的大小和编码误差的成本值。成本值例如是符号量与对平方误差乘以系数λ的值之和。符号量是将量化误差和编码参数进行熵编码而获得的编码数据#1的信息量。平方误差是关于在减法部202中计算出的残差信号的残差值的平方值的像素间的总和。系数λ是预先设定的大于零的实数。编码参数决定部210选择计算出的成本值成为最小的编码参数的集合。由此,熵编码部204将所选择的编码参数的集合作为编码数据#1而输出到外部,不输出未被选择的编码参数的集合。
预测参数编码部211基于从预测图像生成部201输入的参数,导出在生成预测图片时使用的预测参数,并对导出的预测参数进行编码而生成编码参数的集合。预测参数编码部211将生成的编码参数的集合输出到熵编码部204。
预测参数编码部211将与在生成的编码参数的集合中、编码参数决定部210选择的集合对应的预测参数存储在预测参数存储器208中。
在从预测图像生成部201输入的预测模式predMode表示外部预测模式的情况下,预测参数编码部211使外部预测参数编码部212动作。在预测模式predMode表示内部预测模式的情况下,预测参数编码部211使内部预测参数编码部213动作。
外部预测参数编码部212基于从编码参数决定部210输入的预测参数,导出外部预测参数。外部预测参数编码部212作为导出外部预测参数的结构,包括与外部预测参数解码部303导出外部预测参数的结构相同的结构。
内部预测参数编码部213将从编码参数决定部210输入的预测模式predMode表示的内部预测模式IntraPredMode确定为外部预测参数的集合。
以下,参照图7~9、17、20~24、26、29、33、47~49说明本发明的实施例1的VPS编码部102E。
[VPS编码部222(102E)]
图47是表示了VPS编码部222的概略性结构的功能框图。如图47所示,VPS编码部222包括简档等级信息编码部(PTL信息编码部)2221、参照PTL指定信息编码部2222、简档有无标记编码部2223而构成。
<VPS的详细的编码过程>
以下,参照图17说明VPS编码部222的动作。在图17中,将“解码”替换为“编码”来解释。VPS编码部222是VSP解码部102的逆处理。
(步骤SA101)VPS编码部222对图7上的语法组SYNVPS01进行编码。
(步骤SA102)在VPS编码部222中包含的PTL信息编码部2221对图7上的SYNVPS02所示的层集0的PTL信息进行编码。
(步骤SA103)VPS编码部222对构成图7上的语法组SYNVPS03所示的各层集的层ID进行编码。
(步骤SA104)VPS编码222对图7上的VPS扩展标记vps_extension_flag(图7上的SYNVPS04)进行编码。
(步骤SA105)在VPS扩展标记为1的情况下(步骤SA105中“是”),判定为VPS扩展数据在VPS上,进入步骤SA106。在VPS扩展标记为0的情况下(步骤SA105中“否”),判定为VPS扩展数据不在VPS上,进入步骤SA109。
(步骤SA106)从VPS扩展标记的下一个比特到在VPS扩展数据中包含的avc_base_flag的紧前为止,为了调整字节对齐,对字节对齐数据(vps_extension_aligment_bit_equal_to_one)(图7上的语法组SYNVPS05)进行编码。
(步骤SA107)对VPS扩展数据vps_extension()进行编码。另外,关于VPS扩展数据的详细的编码过程,在后面叙述。
(步骤SA108)VPS编码部222对图7上的SYNVPS07所示的VPS扩展2标记vps_extension2_flag进行编码。若VPS扩展2标记为1,则进一步对VPS扩展2数据进行编码。
(步骤SA109)VPS编码部222对图7上的SYNVPS08所示的RBSP_traling_bits()进行编码。RBSP_trailing_bits()是字节对齐数据。另外,字节对齐数据也被称为填充数据。
<VPS扩展数据的详细的编码过程>
参照图18说明VPS扩展数据的编码过程。在图18中,将“解码”替换为“编码”来解释。
(步骤SB101)VPS编码部222对图8上的语法组SYNVPS0A进行编码。
(步骤SB102)VPS编码部222对图8上的语法组SYNVPS0B所示的、与各层参照的依赖层(也称为直接参照层、从属层)有关的依赖标记进行编码。
(步骤SB103)VPS编码部222对层集数(图8上的语法SYNVPS0C)进行编码。
(步骤SB104)VPS编码部222对在VPS上包含的PTL信息的总数(图8上的SYNVPS0D)进行编码。
(步骤SB105)是在VPS上包含的PTL信息的编码过程的循环开始点。
(步骤SB106)在VPS编码部222中包含的简档有无标记编码2223对表示在第i个PTL信息profile_tier_level()上有无表示简档信息的语法组的简档有无标记(图8上的语法SYNVPS0E)进行编码。
(步骤SB107)在简档有无标记为0的情况下,判定为在第i个PTL信息上没有表示简档信息的语法组,进入步骤SB108。在简档有无标记为1的情况下,判定为在第i个PTL信息上有表示简档信息的语法组,进入步骤SB109。
(步骤SB108)在简档有无标记为0的情况下,在VPS编码部222中包含的参照PTL指定信息编码部2222对表示从PTL信息列表上的哪个PTL信息参照第i个PTL信息的简档信息的参照PTL信息指定索引(也称为参照简档等级信息相对索引)”profile_ref_delta_index_minus1[i]”(图8上的SYNVPS0Fa)进行编码。参照PTL信息指定索引“profile_ref_delta_index_minus1[i]”表示第i个PTL信息和参照目标PTL信息的相对索引。即,第i个PTL信息将由j=(i-profile_ref_delta_minus1[i]+1)所确定的、第j个PTL信息作为简档信息的参照目标。另外,通过预先在编码器侧将PTL信息列表上的PTL信息按照类似顺序排序,能够提高第i个PTL信息参照紧前的PTL信息的概率。因此,通过参照PTL指定索引“profile_ref_delta_index_minus1[i]”例如图20所示那样由哥伦布码表示相对索引,能够比以往削减用于表现参照PTL指定索引所需的比特长。
换言之,简档/等级信息解码部将上述简档/等级信息中的第i个参照PTL信息指定索引的语义作为该第i个参照PTL信息指定索引指定第i个简档/等级信息和被参照的简档/等级信息之间的相对的位置来进行处理。
例如,在参照PTL指定索引“profile_ref_delta_minus1[i]”的值为0、即参照第i个PTL信息的前一个第(i-1)个PTL信息的情况下,通过使用如图20所示的哥伦布码,用于表现参照PTL指定索引所需的比特长成为1比特。由此,与现有技术相比,与以固定长度来表示参照PTL信息指定索引的情况相比,能够削减符号量。此外,由于能够参照PTL信息列表上的开头PTL信息(第0个),所以能够解除在对象PTL信息为第1个时参照PTL信息指定索引不起作用的缺点。另外,也可以通过k阶指数哥伦布码(k-thorderExponentialGolomb:EGk(K>=0))来代替哥伦布码对参照PTL指定索引“profile_ref_delta_minus1[i]”进行解码,起到同样的效果。此外,图20所示的哥伦布码也被称为0阶指数哥伦布码。
另外,也可以在禁止参照PTL信息列表上的开头PTL信息(第0个)的情况下,在对象PTL信息为第1个时,将简档有无标记必须设定为1,在解码器和编码器间预先显式地决定将第1个PTL信息的简档信息必须包含在编码数据内(也称为比特流限制)。由此,同样地,能够解除在对象PTL信息为第1个时参照PTL信息指定索引不起作用的缺点。
(步骤SB109)在VPS编码部222中包含的PTL信息编码部2222将简档有无标记、参照PTL指定信息(参照PTL指定索引)、子层数、PTL信息作为输入,对第i个PTL信息的简档以及等级信息进行编码。关于PTL信息编码2221的细节,在后面叙述。
(步骤SB110)是在VPS上包含的PTL信息的编码过程的循环终端。
(步骤SB111)VPS编码部222对指定应用于各输出层集的PTL信息的PTL信息指定索引(图8上的语法组SYNVPS0H上的profile_level_tier_idx[i])进行编码。
(步骤SB112)VPS解码部102对图8上的语法组SYNVPS0I所示的各层的从属层类型进行编码。
(步骤SB111)VPS编码222对图8上的其他语法组SYNVPS0J进行编码。
<PTL信息编码部2221的细节>
接着,使用图49、图21说明实施例1的PTL信息编码部2221的细节。PTL信息编码部2221是对应于PTL信息解码部1021的编码装置。另外,在图21中,将“解码”替换为“编码”来解释。
图49是例示了PTL信息编码部2221的结构的功能框图。如图49所示,PTL信息编码部2221具备简档信息编码部2221a、等级信息编码部2221b、子层简档有无标记编码部2221c、子层等级有无标记编码部2221d、字节对齐数据编码部2221e。另外,在本实施例中,作为没有图49中的levelPresentFlag的输入线来进行解释。
[简档信息编码部2221a]
简档信息编码部2221a基于从外部提供的简档有无标记profilePresentFlag,对从外部提供的编码对象PTL信息的简档信息(也称为最高次子层的简档信息或者通用简档信息)进行编码,并作为编码数据DATA#T来输出。具体而言,在简档有无标记profilePresentFlag为1的情况下,对编码对象PTL信息的简档信息进行编码,并作为编码数据DATA#T来输出。在简档有无标记profilePresentFlag为0的情况下,由于在编码对象PTL信息中没有应进行编码的简档信息,所以不进行编码处理。
此外,简档信息编码部2221a基于从外部提供的简档有无标记profilePresentFlag、子层数MaxNumSubLayers以及各子层的子层简档有无标记sub_layer_profile_present_flag[i],对除了最高次子层之外的编码对象PTL信息的各子层的子层简档信息进行编码,并作为编码数据DATA#T来输出。
另外,也可以在图像解码装置1和图像编码装置2之间预先决定在简档有无标记为1以及0的情况下的、各子层的简档信息的设定方法(推算方法)。例如,虽然已经说明,在简档有无标记为1的情况下,根据图62(a)所示的伪码来设定各子层的简档信息。此外,在简档有无标记为0的情况下,根据图62(b)所示的伪码来设定。由此,能够解除在profilePresentFlag=1且sub_layer_profile_present_flag[i]=0的情况下的子层的简档信息成为不定值的问题。
[等级信息编码部2221b]
等级信息编码部2221b对从外部提供的编码对象PTL信息的等级信息(也称为最高次子层的等级信息或者通用等级信息)进行编码,并作为编码数据#T来输出。此外,等级信息编码部2221b基于从外部提供的子层数MaxNumSubLayers以及各子层的子层等级有无标记sub_layer_level_present_flag[i],对除了最高次子层之外的编码对象PTL信息的各子层的子层等级信息进行编码,并作为编码数据#T来输出。
具体而言,在子层i(temporalId=i+1)的子层等级有无标记sub_layer_level_present_flag[i]为1的情况下,对从外部提供的该子层i的等级信息进行编码,并作为编码数据DATA#T来输出。在除此以外的情况下(子层等级有无标记sub_layer_level_present_flag[i]为0),由于没有应进行编码的等级信息,所以不进行编码处理。
另外,也可以在图像解码装置1和图像编码装置2之间预先决定在子层i的子层等级有无标记为0的情况下的、各子层的等级信息的设定方法(推算方法)。例如,虽然已经说明,在子层等级有无标记为0情况下,根据图63(a)、(b)所示的伪码来设定各子层的等级信息。由此,能够解除在sub_layer_level_present_flag[i]=0的情况下的子层的等级信息成为不定值的问题。
[子层简档有无标记编码部2221c]
子层简档有无标记编码部2221c基于从外部提供的子层数MaxNumSubLayers,对编码对象PTL信息的各子层的子层简档有无标记进行编码,并作为编码数据DATA#T来输出。
[子层等级有无标记编码部2221d]
子层等级有无标记编码部2221d基于从外部提供的子层数MaxNumSubLayers,对编码对象PTL信息的各子层的子层等级有无标记进行编码,并作为编码数据DATA#T来输出。
[字节对齐数据编码部2221e]
字节对齐数据编码2221e将基于子层数(MaxNumSbuLayersMinus1或者MaxNumSubLayers-1)而确定的比特数个字节对齐数据(reserved_zero_2bits[i])(图9上的语法SYNPTL04)以2bit单位进行编码,并作为编码数据DATA#T来输出。作为字节对齐数据,应进行编码的比特数从图9上的语法SYNVPSPTL04可知为“(8-MaxNumSubLayersMinus1)*2bits”。
(简档/等级信息profile_tier_level()的编码处理的流程)
参照图21说明PTL信息profile_tier_level()的编码处理。另外,在图21中,将“解码”替换为“编码”来解释。此外,步骤SC103、SC112、SC115中的动作在编码装置侧不实施。即,在步骤SC101的分支中“否”的情况下,进入步骤SC104。此外,在步骤SC110的分支中“否”的情况下,进入步骤SC113。此外,在步骤SC113的分支中“否”的情况下,进入步骤SC116。
(步骤SC101)简档信息编码部2221a判别简档有无标记profilePresentFlag是否为1。在简档有无标记profilePresentFlag为1的情况下(步骤SC101中“是”),进入步骤SC102,在除此以外的情况下(步骤SC101中“否”),进入步骤SC104。
(步骤SC102)简档信息编码部2221a作为编码对象PTL信息的简档信息,例如,对图9上的语法组SYNPTL01、
·简档空间general_profile_space
·层级标记general_tier_flag
·简档识别符general_profile_idc
·简档互换标记general_profile_compatibility_flag[i]
…省略…
·简档预约语法general_reserved_zero_44bits
等进行编码。
(步骤SC104)
等级信息编码部2221b作为编码对象PTL信息的等级信息,对以下的语法、
·等级识别符general_level_idc
进行编码。
(步骤SC105)
是与子层的子层简档有无标记以及子层等级有无标记的编码有关的循环的开始。在循环的开始前,变量i被初始化为0。循环内的处理在变量i小于子层数-1、“MaxNumSubLayers-1”时执行,在循环内的处理每次执行1次时,变量i增加“1”。即,在步骤SC105~步骤SC107中,对除了最高次子层之外的子层的子层简档有无标记以及子层等级有无标记进行编码。
(步骤SC106)
子层简档有无标记编码部2221c对与由变量i所指定的子层有关的子层简档有无标记sub_layer_profile_present_flag[i]进行编码。
子层等级有无标记编码部2221d对与由变量i所指定的子层有关的子层等级有无标记sub_layer_level_present_flag[i]进行编码。
(步骤SC107)
是与子层的子层简档有无标记以及子层等级有无标记的编码有关的循环的终端。
(步骤SC108)
字节对齐数据编码部2221e将基于子层数(MaxNumSbuLayersMinus1或者MaxNumSubLayers-1)而确定的比特数个字节对齐数据(reserved_zero_2bits[i])(图9上的语法SYNPTL04)以2bit单位插入到编码数据DATA#T(进行编码)。
具体而言,在步骤SC105~步骤SC107中,由于对每个子层进行编码的子层简档有无标记和子层等级有无标记的符号量为各1比特,共2比特,子层数为MaxNumSubLayers,所以在步骤SC105~步骤SC107中进行解码的符号量的总和为2*(MaxNumSubLayer-1)。因此,作为字节对齐数据,应进行编码的比特数为“(8-MaxNumSubLayersMinus1)*2bits”。
(步骤SC109)
是与子层的子层简档信息以及子层等级信息的编码有关的循环的开始点。在循环的开始前,变量i被初始化为0。循环内的处理在变量i小于子层数-1、“MaxNumSubLayers-1”时执行,在循环内的处理每次执行1次时,变量i增加“1”。
(步骤SC110)
简档信息编码部2221a判定由变量i所指定的子层的子层简档有无标记sub_layer_profile_present_flag[i]是否为1。在子层简档有无标记为1的情况下(步骤SC110中“是”),进入步骤SC111,在除此以外的情况下(步骤SC110中“否”),进入步骤SC113。
(步骤SC111)
简档信息编码部2221a作为由变量i所指定的子层的子层简档信息,例如,对图9上的语法组SYNPTL05所示的
·子层简档空间sub_layer_profile_space[i]
·子层层级标记sub_layer_tier_flag[i]
·子层简档识别符sub_layer_profile_idc[i]
·子层简档互换标记sub_layer_profile_compatibility_flag[i][j]…省略…
·子层简档预约语法sub_layer_reserved_zero_44bits[i]
进行编码并输出。
(步骤SC113)
等级信息编码部2221b判定由变量i所指定的子层的子层等级有无标记sub_layer_level_present_flag[i]是否为1。在子层等级有无标记为1的情况下(步骤SC113中“是”),进入步骤SC114,在除此以外的情况下(步骤SC113中“否”),进入步骤SC116。
(步骤SC114)
等级信息编码部2221b作为由变量i所指定的子层的子层等级信息,对
·子层等级识别符sub_layer_level_idc[i]
进行编码并输出。
(步骤SC116)
是与子层的子层简档信息以及子层等级信息的编码有关的循环的终端。
以上,说明了实施例1的简档/等级信息编码部2221的动作,但并不限定于上述步骤,也可以在可实施的范围内变更步骤。
(实施例1的变形例)
参照图22说明VPS编码部202的变形例。另外,由于除了参照PTL信息指定索引(图22上的语法SYNVPS0Fb)之外,VPS符号部202的动作与实施例1相同,所以省略说明。
在实施例1中,通过哥伦布码对参照PTL信息指定索引在PTL信息列表上的对象PTL信息的位置和参照目标的PTL信息的相对索引(profile_ref_delta_index_minus1[i])进行了解码,但并不限定于此。例如,也可以代替相对索引,参照PTL信息列表上的第“profile_ref[i]”个PTL信息的简档信息。此时,通过基于表示对象PTL信息的列表上的位置的索引i而确定的比特长V,对参照PTL信息指定索引“profile_ref[i]”进行可变长解码。这里,比特长V由ceil(log2(i))所确定。由此,与现有技术相比,与以固定长度来表示参照PTL信息指定索引的情况相比,能够削减符号量。此外,由于能够参照PTL信息列表上的开头PLT信息(第0个),所以能够解除在对象PTL信息为第1个时参照PTL信息指定索引不起作用的缺点。
换言之,在简档/等级信息编码部进行编码的上述简档/等级信息中,参照PTL信息指定索引变更为参照简档,使得第1个简档/等级信息的简档以及层级的信息能够基于第0个简档/等级信息而推算。
另外,也可以在禁止参照PTL信息列表上的开头PTL信息(第0个)的情况下,在对象PTL信息为第1个时,将简档有无标记必须设定为1,在解码器和编码器间预先显式地决定将第1个PTL信息的简档信息必须包含在编码数据内(也称为比特流限制)。由此,同样地,能够解除在对象PTL信息为第1个时参照PTL信息指定索引不起作用的缺点。
<<VPS编码部202的变形例2>>
接着,使用图23、图24、图26、图47说明VPS编码部202的变形例2。
图23是扩展视频参数集VPS的语法表格的变形例。参照图24说明VPS扩展数据的编码过程。另外,在图24中,将“解码”替换为“编码”来解释。
首先,使用图23说明变形例2的扩展视频参数集VPS的语法表格。图23和图8所示的扩展视频参数集VPS的语法表格的不同点在于,在图23中,删除了图8上的语法SYNVPS0Fa所示的参照PTL信息指定索引(profile_ref_delta_index_minus1[i]),由图23上的语法SYNVPS0E所示的简档有无标记(vps_profile_present_flag[i])兼用参照PTL指定信息指定索引的功能。即,在简档有无标记(vps_profile_present_flag[i])的值为1的情况下,对第i个PTL信息的简档信息进行编码。另一方面,在简档有无标记的值为0的情况下,在第i个PTL信息的简档信息中,由于与在第i个PTL信息的紧前进行了编码的、第(i-1)个编码完毕PTL信息相同,所以省略简档信息的编码。
接着,说明变形例2的VPS编码部202’和VPS编码202的结构的不同点。VPS编码部202’不具备VPS编码部202具备的参照PTL指定信息编码部2222。此外,不同点在于,简档有无标记的输入线对PTL信息编码部2221有简档有无标记的输入线(未图示)。
此外,由于变形例2的PTL信息编码部2221的结构要素与实施例1的PTL信息编码部2221相同,所以省略说明。
此外,由于PTL信息的编码处理的流程也与实施例1的PLT信息的编码处理的流程相同,所以省略说明。
如以上所述,在变形例2的扩展视频参数集VPS的语法表格中,删除了图23的语法SYNVPS0Fa所示的参照PTL信息指定索引(profile_ref_delta_index_minus1[i]),由图23上的语法SYNVPS0E所示的简档有无标记(vps_profile_present_flag[i])兼用参照PTL指定信息指定索引的功能。即,在简档有无标记(vps_profile_present_flag[i])的值为1的情况下,对第i个PTL信息的简档信息进行解码。另一方面,在简档有无标记的值为0的情况下,在第i个PTL信息的简档信息中,由于与在第i个PTL信息的紧前进行了编码的、第(i-1)个编码完毕PTL信息的简档信息相同,所以省略简档信息的编码。另外,也能够通过预先在编码器侧将PTL信息列表上的PTL信息按照类似顺序排序,提高第i个PTL信息参照紧前的PTL信息的概率。即,在vps_profile_present_flag[i]=0的情况下,也能够不对参照PTL指定索引“profile_ref_delta_index_minus1[i]”进行解码,解释成推算为参照PTL指定索引“profile_ref_delta_index_minus1[i]==0”。由此,能够进一步削减涉及相对索引的符号量。
<<VPS编码部222的变形例3>>
VPS编码部222的变形例3是对应于VPS解码部102的变形例3的逆处理。
说明变形例3的VPS编码部222’和VPS编码部222的结构的不同点。图48所示的VPS编码部222”不具备VPS编码部222具备的参照PTL指定信息编码2222,新具备等级有无标记编码部2224’。等级有无标记编码部2224’对从外部输入的编码对象PTL信息的等级有无标记进行编码,并作为编码数据来输出。
以下,使用图49说明变形例3中的PTL信息编码部2221的结构。变形3的PTL信息编码部2221相对于实施例1的PTL信息编码部2221,除了在等级信息编码部2221b以及子层等级有无标记编码部2221d中具备等级有无标记的输入线之外,其他的结构要素相同,所以省略说明。以下,只说明等级信息编码部2221b以及子层等级有无标记编码部2221d的功能的不同点。
[等级信息编码部2221b]
等级信息编码部2221b基于从外部提供的等级有无标记levelPresentFlag,对编码对象PTL信息的等级信息(也称为最高次子层的等级信息或者通用等级信息)进行编码并输出。具体而言,在等级有无标记levelPresentFlag为1的情况下,对编码对象PTL信息的等级信息进行编码。在等级有无标记levelPresentFlag为0的情况下,由于编码对象PTL信息的等级信息与在编码对象PTL信息的前一个进行了编码的编码完毕PTL信息(第(i-1)个PTL信息)的等级信息相同,所以省略等级信息的编码。
此外,等级信息编码部2221b基于从外部提供的等级有无标记levelPresentFlag、子层数MaxNumSubLayers以及各子层的子层等级有无标记sub_layer_level_present_flag[i],对除了最高次子层之外的编码对象PTL信息的各子层的子层等级信息进行编码并输出。
(等级有无标记为1的情况下)
在等级有无标记为1的情况下,由于与实施例1的PTL信息编码部2221具备的等级信息编码部2221b的动作相同,所以省略详细的说明。若简单而言,在子层i(temporalId=i+1)的子层等级有无标记为1的情况下,对该子层i的等级信息进行编码。在除此以外的情况下,省略子层i的等级信息的编码。另外,也可以在图像解码装置1和图像编码装置2之间预先决定在子层i的子层等级有无标记为0的情况下的、等级信息的设定方法。例如,将编码对象PTL信息的子层(i+1)的等级信息设定为子层i的等级信息(参照图63)。由此,能够解除在level_present_flag=0且sub_layer_level_present_flag[i]=0的情况下子层的等级信息成为不定值的课题。
(等级有无标记为0的情况下)
在子层i(temporalId=i+1)的子层等级有无标记为1的情况下,对该子层i的等级信息进行编码。在除此以外的情况下,由于编码对象PTL信息的子层的i等级信息与在编码对象PTL信息的前一个进行了编码的编码完毕PTL信息(第(idx-1)个PTL信息)的对应的子层的等级信息相同,所以省略等级信息的编码。这里,idx是表示PTL信息列表上的解码对象PTL信息的位置的索引。另外,子层的等级信息的设定规则如图64(b)所示。
(简档/等级信息profile_tier_level()的编码处理的流程)
以下,使用图33说明变形例3的PTL信息编码部2221的动作。另外,在图33中,将“解码”替换为“编码”来解释。此外,在图33中,只说明动作与图21不同的步骤SG104、SG105、SG106、SG115、SG116、SG117。由于除此以外的步骤相同,所以省略说明。此外,在编码侧,不实施步骤SG103、SG106、SG114以及SG117的处理。即,在步骤SG101的分支中“否”的情况下,进入步骤SG104。此外,在步骤SG104的分支中“否”的情况下,进入步骤SG107。此外,在步骤SG112的分支中“否”的情况下,进入步骤SG115。此外,在步骤SG115的分支中“否”的情况下,进入步骤SG118。
(步骤SG104)等级信息编码部2221b判别等级有无标记levelPresentFlag是否为1。在等级有无标记levelPresentFlag为1的情况下(步骤SG104中“是”),进入步骤SG105,在除此以外的情况下(步骤SG104中“否”),进入步骤SG107。
(步骤SG105)等级信息编码部2221b作为编码对象PTL信息的等级信息,对以下的语法、
·等级识别符general_level_idc
进行编码。
(步骤SG115)
等级信息编码部2221b判定由变量i所指定的子层的子层等级有无标记sub_layer_level_present_flag[i]是否为1。在子层等级有无标记为1的情况下(步骤SG115中“是”),进入步骤SG116,在除此以外的情况下(步骤SG115中“否”),进入步骤SG118。
(步骤SG116)
等级信息编码部2221b作为由变量i所指定的子层的子层等级信息,对
·子层等级识别符sub_layer_level_idc[i]
进行编码。
以上,说明了变形例3的PTL信息编码部2221的动作,但并不限定于上述步骤,也可以在可实施的范围内变更步骤。
如以上所述,在变形例3的扩展视频参数集VPS的语法表格中,删除了图23的语法SYNVPS0F所示的参照PTL信息指定索引(profile_ref_deltaidx_minus1[i]),由图29上的语法SYNVPS0E所示的简档有无标记(vps_profile_present_flag[i])以及等级有无标记(vps_level_present_flag[i])兼用参照PTL指定信息指定索引的功能。即,在简档有无标记(vps_profile_present_flag[i])的值为1的情况下,第i个PTL信息的简档信息进行编码。另一方面,在简档有无标记的值为0的情况下,由于第i个PTL信息的简档信息与在第i个PTL信息的紧前进行了编码的第(i-1)个编码完毕PTL信息的简档信息相同,所以省略编码。此外,在等级有无标记(vps_level_present_flag[i])的值为1的情况下,第i个PTL信息的等级信息进行编码。另一方面,在等级有无标记的值为0的情况下,由于在第i个PTL信息的等级信息中与在第i个PTL信息的紧前进行了编码的第(i-1)个编码完毕PTL信息的等级信息相同,所以省略编码。另外,也能够通过预先在编码器侧将PTL信息列表上的PTL信息按照类似顺序排序,提高第i个PTL信息参照紧前的PTL信息的概率。即,在vps_profile_present_flag[i]=0或者vps_level_present_flag[i]=0的情况下,也能够不对参照PTL指定索引“profile_ref_delta_index_minus1[i]”进行编码,解释成推算为参照PTL指定索引“profile_ref_delta_index_minus1[i]==0”。进一步,与实施例1同样地,变形例3起到能够降低编码对象PTL信息的简档信息以及等级信息的冗长性的效果。
<<VPS编码部222的变形例3a>>
VPS编码部222的变形例3a是对应于VPS解码部202的变形3a的逆处理。上述变形3也能够如下变更结构。即,将简档有无标记profilePresentFlag以及等级有无标记levelPresentFlag替换为表示简档信息和等级信息的有无的简档等级有无标记ProfileLevelPresentFlag。
以下,代用图49说明变形例3a中的PLT信息编码部2221的结构。变形例3a的PTL信息编码部2221除了变形例3的PTL信息解码部2221中的简档有无标记profilePresentFlag以及等级有无标记levelPresentFlag的输入值之外,结构以及动作相同。在图49中,有简档有无标记profilePresentFlag以及等级有无标记levelPresentFlag的布线,但在变形例3a中,在简档等级有无标记profileLevelPresentFlag为0的情况下,将图49的profilePresentFlag以及levelPresentFlag作为0来输入。此外,在简档等级有无标记profileLevelPresentFlag为1的情况下,将图49的profilePresentFlag以及levelPresentFlag作为1来输入。另外,通过这个变更,位于现有的HEVC的VPS的开头的PTL信息以及在基础层中通知的SPS上的PTL信息的语法表格没有变更。即,不会发生无法通过现有的HEVC解码器而解码VPS、SPS上的PTL信息的情况。
以上,变形3a起到与变形3同样的效果。进一步,通过对变形例3,将简档有无标记和等级有无标记汇集成1个,设为表示简档信息和等级信息的有无的简档等级有无标记,能够削减涉及追加的标记(若是变形3,则等级有无标记)的符号量。
<<VPS编码部222的变形例4>>
接着,使用图65、图67说明VPS编码部202的变形例4。VPS编码部202的变形4是对应于VPS解码部102的变形例4的逆处理。另外,变形例4的VPS扩展数据的语法表格由于在VPS解码部102的变形例4中已经说明,所以省略,但起到同样的效果。
(VPS编码部222”’的结构)
参照图47说明变形例4的VPS编码部222”’的结构。VPS编码部222”’除了与实施例1的VPS编码部222具备的PTL信息编码部2221、参照PTL信息编码部2222以及简档有无标记编码部2223相同的结构要素之外,还包括字节对齐数据编码部2024(未图示)。另外,以下,只说明字节对齐数据编码部2224。
VPS编码部222”’具备的字节对齐数据编码部2224对在VPS扩展数据vps_extension()中包含的、用于调整字节对齐而插入的数据、字节对齐数据进行编码。例如,vps_alignment_bit_equal_to_one(图65上的SYNVPS0G)或reserved_zero_1bits[i](图65上的SYNVPS0K)。
<VPS扩展数据的详细的编码过程(变形例4)>
使用图67说明VPS编码部222”’的VPS扩展数据的编码过程。
(步骤SJ101)VPS编码部222”’对图65上的语法组SYNVPS0A进行编码。
(步骤SJ102)VPS编码部222”’对图65上的SYNVPS0E所示的PTL信息列表为止的字节偏移信息(vps_ptl_info_offset)进行编码。
(步骤SJ103)VPS编码部222”’对图65上的SYNVPS0F所示的可伸缩性掩码标记进行编码。
……省略……
(步骤SJ104)VPS编码部222”’具备的字节对齐数据编码部2224基于图65上的SYNVPS0G所示的预定的判定式,将字节对齐数据(vps_alignment_bit_equal_to_one)以1比特单位进行编码。
(步骤SJ105)VPS编码部222”’对图65上的SYNVPS0H所示的层集数进行编码。
(步骤SJ106)VPS编码部222”’对图65上的SYNVPS0I所示的PTL信息数进行编码。
(步骤SJ107)在VPS编码部222”’中包含的简档有无标记解码部1023将图65上的SYNVPS0J所示的简档有无标记编码“PTL信息数-1”个。
(步骤SJ108)VPS编码部222”’具备的字节对齐数据编码部2224对图65上的SYNVPS0K所示的字节对齐数据(reserved_zero_bit[i])进行编码。进行编码的字节对齐数据的比特数为V={8-{{(vps_num_profile_tier_level_minus1+1)%8}%8}}。
(步骤SJ109)是在VPS上包含的PTL信息的编码过程的循环开始点。
(步骤SJ110)在简档有无标记为0的情况下,判定为在第i个PTL信息上没有表示简档信息的语法组,进入步骤SJ112。在简档有无标记为1的情况下,判定为在第i个PTL信息上有表示简档信息的语法组,进入步骤SJ111。
(步骤SJ111)在简档有无标记为0的情况下,在VPS编码部222”’中包含的参照PTL指定信息编码部2222对表示从PTL信息列表上的哪个PTL信息参照第i个PTL信息的简档信息的参照PTL信息指定索引“profile_ref_minus1[i]”(图65上的SYNVPS0L)进行编码。参照PTL信息指定索引“profile_ref_minus1[i]”表示参照目标的PTL信息的位置。即,第i个PTL信息将由j=(profile_ref_minus1[i]+1)所确定的、第j个PTL信息设为与简档信息相同。
(步骤SJ112)在VPS编码部222”’中包含的PTL信息编码部2221将简档有无标记、参照PTL指定索引、子层数作为输入,对第i个PTL信息的简档以及等级信息进行编码。关于PTL信息编码部2221的细节,由于已经说明,所以省略。
(步骤SJ113)是在VPS上包含的PTL信息的编码过程的循环终端。
(步骤SJ114)VPS编码部222”’对其他的语法进行编码。
以上,说明了变形例4的VPS编码部222”’的动作,但并不限定于上述步骤,也可以在可实施的范围内变更步骤。
<<VPS编码部222的变形例4a>>
接着,使用图68、图70说明VPS编码部222的变形例4a。VPS编码部202的变形例4a是对应于VPS解码部102的变形例4a的逆处理。另外,关于变形例4a的VPS扩展数据的语法表格,由于在VPS解码部102的变形例4a中已经说明,所以省略,但起到同样的效果。
(VPS编码部222”’a的结构)
说明变形例4a的VPS编码部222”’a的结构。VPS编码部222”’a除了与变形例2的VPS编码部222’具备的PTL信息编码部2221’以及简档有无标记编码部2223’相同的结构要素之外,还包括字节对齐数据编码部2224(未图示)。省略作为相同的结构要素的、PTL信息编码部2221’以及简档有无标记编码部2223’的说明。此外,由于字节对齐数据编码部2224是与变形例4的VPS编码部222”’具备的字节对齐数据编码部22224相同的结构要素,所以省略说明。
<VPS扩展数据的详细的编码过程(变形例4a)>
使用图70说明VPS编码部222”’a的VPS扩展数据的编码过程。另外,在VPS编码部222”’a的VPS扩展数据的编码过程中,由于省略了图70上的步骤SL110(基于简档有无标记的值的分支判定以及基于分支的转移)、步骤SL111(参照PTL信息指定索引profile_ref_minus1[i]的编码)的点不同,除此以外的动作相同,所以省略说明。
以上,说明了变形例4a的VPS编码部222”’a的动作,但并不限定于上述步骤,也可以在可实施的范围内变更步骤。
如以上所述,也可以在简档/等级信息编码部进行编码的简档/等级信息中,参照PTL信息指定索引变更为参照简档,使得第1个简档/等级信息的简档以及层级的信息能够基于第0个简档/等级信息而推算。
此外,也可以在简档/等级信息编码部进行编码的简档/等级信息中,代替参照PTL信息指定索引而包括VPS简档有无标记。
此外,也可以在没有被提示对于第i个子层的等级的信息的情况下,简档/等级信息编码部进行编码,使得推算为该等级等于第(i+1)个子层的等级和等级的识别符的等级中较小一方。
此外,也可以在简档/等级信息中附加有VPS等级有无标记,在VPS等级有无标记等于“0”的情况下,简档/等级信息编码部进行编码,使得能够将第i个简档/等级信息的等级的信息从在其以前的简档/等级信息的等级的信息导出。
(备注事项)
另外,在对层集应用的PTL信息的简档信息以及等级信息中,设定有对在构成层集的全层以及各层上附带的子层进行解码所需的最大的简档信息以及等级信息。此外,关于子层的简档信息以及等级信息,也设定有对层集内的全层的特定的时间ID以下的子层进行解码所需的最大的简档信息以及等级信息。
此外,使在对层集A{层ID列表{L#0,L#1,L#2},HighestTid=3}和成为层集A的子集的层集B{层ID列表{L#0,L#1},HighestTid=2}应用的各PTL信息(设为PTL信息A、PTL信息B)中,下位层集(层集B)的PTL信息B的简档信息以及等级信息是上位层集(层集A)的PTL信息A的下位互换。即,至少有以下的限制。
·下位层集B的简档空间的值≤上位层集A的简档空间的值
·下位层集B的简档识别符的值≤上位层集A的简档识别符的值
·下位层集B的层级标记的值≤上位层集A的层级标记的值
·在上位层集A的简档互换标记中,与下位层集B的简档识别符相应的简档互换标记的值为1(即,层集A是层集B的上位互换)。若将层集B的简档识别符例如设为“LayerSetBProfileIdc”,将层集A的简档互换标记设为“LayerSetA’sgeneral_compatibility_flag[i]”,则设定为“LayerSetA’sgeneral_compatibility_flag[“LayerSetBProfileIdc”]=1”。
·上位层集A的等级识别符的值≥下位层集B的等级识别符的值
同样的限制也应用于子层的简档信息以及等级信息。即,将“下位层集B”改称为“下位层集B的子层(temporalId=i)”,此外,将“上位层集A”改称为“上位层集A的子层(temporalId=i)”来解释即可。
以下说明施加上述的限制的优点。在现有技术(非专利文献1~3)中,由于在对作为上位层集A的子集的层集B分别应用的PTL信息(简档信息、以及等级信息、以及子层的子层简档信息及子层等级信息)之间没有限制,所以存在图像解码装置的安装负荷高(图像解码装置的复杂度增大)这样的问题。
例如,在图2中,假设层集A{{层ID列表{L#0,L#1,L#2},HighestTid=3}的各层L#N的简档按照如下
层L#2的简档:"scalablemainprofile"、
层L#1的简档:"scalablehighprofile"、
层L#0的简档:"mainprofile"、
这样的3种简档的设定进行了编码。这里,"scalablehighprofile"是将"scalablemainprofile"以及“mainprofile”的编码工具全部支持的上位的可伸缩简档,"scalablemainprofile"是将"mainprofile"的编码工具全部支持的上位的可伸缩简档,“mainprofile”表示在非专利文献1中记载的HEVC的“mainprofile”。即,简档的关系成为"mainprofile"<"scalablemainprofile"<"scalablehighprofile"。
在上述例的情况下,在支持简档"scalablehighprofile"的图像解码装置中,能够对层集A内的全层(L#0,L#1,L#2)进行解码。即,能够对层集A完全进行解码。但是,在支持简档"scalablemainprofile"的图像解码装置中,即使尝试提取了层集A的子集(层集B)的比特流的解码,因下位层(L#1)的简档没有与上位层(L#2)的简档互换,所以无法对在层L#2的解码时依赖的下位层(L#1)以及上位层L#2进行解码,只能对作为下位简档"mainprofile"的基本层L#0进行解码。即,在图像编码装置侧,存在生成不连续地设定了下位层的简档没有与上位层的简档互换的简档的编码数据的可能性。因此,在图像解码装置侧,在对其编码数据进行解码的情况下,无法对解码对象层依赖的下位层进行解码,结果,存在层的可伸缩性或子层的可伸缩性的粒度变粗这样的课题。
此外,在图像解码装置侧,为了能够对如上所述的编码数据灵活地实现可伸缩性,需要安装成支持多个简档,存在图像解码装置的复杂度增大的课题。
同样地,关于等级/层级,通过在层集间的等级/层级之间没有限制而产生与在没有上述简档限制的情况同样的问题。即,在图像编码装置侧,存在生成不连续地设定了下位层的等级以及层级与上位层的等级以及层级没有互换的等级以及层级的编码数据的可能性,在图像解码装置侧,产生层的可伸缩性或子层的可伸缩性的粒度变粗,损伤灵活性的课题。此外,在图像解码装置侧,为了能够对如上述的编码数据灵活地实现可伸缩性,需要安装成支持多个等级以及层级,存在图像解码装置的复杂度增大的课题。
因此,为了解决上述课题,优选在处于包含关系的层集间实施以下的限制。
(1-1)下位层集B的简档空间的值≤上位层集A的简档空间的值
(1-2)下位层集B的简档识别符的值≤上位层集A的简档识别符的值
(1-3)下位层集B的层级标记的值≤上位层集A的层级标记的值
(1-4)在上位层集A的简档互换标记中,与下位层集B的简档识别符相应的简档互换标记的值为1(即,层集A是层集B的上位互换)。若将层集B的简档识别符例如设为“LayerSetBProfileIdc”,将层集A的简档互换标记设为“LayerSetA’sgeneral_profile_compatibility_flag[i]”,则设定为“LayerSetA’sgeneral_profile_compatibility_flag[“LayerSetBProfileIdc”]=1”。
(1-5)上位层集A的等级识别符的值≥下位层集B的等级识别符的值
此外,优选对同一个层集内的各层也实施以下的限制。
(2-1)下位层L#N的简档空间的值≤上位层L#(N+1)的简档空间的值
(2-2)下位层L#N的简档识别符的值≤上位层L#(N+1)的简档识别符的值
(2-3)下位层L#N的层级标记的值≤上位层L#N的层级标记的值
(2-4)下位层L#N的等级识别符的值≤上位层L#N的等级识别符的值
此外,优选对同一层(L#N)的子层(将子层N记载为SL#N)也实施以下的限制。
(3-1)下位子层SL#N的简档空间的值≤上位子层SL#(N+1)的简档空间的值
(3-2)下位子层SL#N的简档识别符的值≤上位子层SL#(N+1)的简档识别符的值
(3-3)下位子层SL#N的层级标记的值≤上位子层SL#(N+1)的层级标记的值
(3-4)在上位子层SL#(N+1)的简档互换标记中,与下位子层SL#N的简档识别符相应的简档互换标记的值为1(即,子层SL#(N+1)是子层SL#N的上位互换)。若将子层SL#N的简档识别符例如设为“sub_layer_profile_idc[N]”,将子层SL#(N+1)的简档互换标记设为“sub_layer_profile_compatibility_flag[N+1][j]”,则设定为“sub_layer_profile_compatibility_flag[N+1][sub_layer_profile_idc[N]]=1”。
(3-5)上位子层SL#(N+1)的等级识别符的值≥下位子层SL#N的等级识别符的值。
以上,通过在图像解码装置侧和图像编码装置侧预先设置上述简档以及等级的限制,起到防止生成不连续地设定了与下位层的简档/等级和上位层的简档/等级没有互换的简档/等级的编码数据的效果。此外,由于能够将图像解码装置应对应的简档/等级抑制为必要最小限度,所以起到减轻图像解码装置的复杂度的效果。
此外,也可以将表示是否实施与处于上述包含关系的层集间的简档以及等级有关的上述限制的语法(简档/等级限制标记"profile_level_restrict_flag")在VPS扩展数据上的各PTL信息的紧前显式地通过VPS解码部102以及VPS编码部222(此外,包括它们的变形例)分别进行解码/编码。除了与上述同样的效果之外,起到图像解码装置能够在对VPS扩展数据上的PTL信息进行解码之前,在VPS或者SPS上尽早容易地判定有无各层的简档/等级限制的效果。同样地,也可以在简档、等级中设置表示有无限制的标记。
(对于其他的层次运动图像编码/解码系统的应用例)
上述的层次运动图像编码装置2以及层次运动图像解码装置1能够搭载在进行运动图像的发送、接收、记录、再现的各种装置中利用。另外,运动图像可以是由相机等拍摄到的自然运动图像,也可以是由计算机等生成的人工运动图像(包括CG以及GUI)。
基于图50,说明能够将上述的层次运动图像编码装置2以及层次运动图像解码装置1利用于运动图像的发送以及接收的情况。图50的(a)是表示搭载了层次运动图像编码装置2的发送装置PROD_A的结构的框图。
如图50的(a)所示,发送装置PROD_A具备通过对运动图像进行编码而获得编码数据的编码部PROD_A1、通过编码部PROD_A1获得的编码数据对载波进行调制而获得调制信号的调制部PROD_A2、发送调制部PROD_A2获得的调制信号的发送部PROD_A3。上述的层次运动图像编码装置2被利用作为该编码部PROD_A1。
发送装置PROD_A作为要输入到编码部PROD_A1的运动图像的供应源,也可以还包括拍摄运动图像的相机PROD_A4、记录了运动图像的记录介质PROD_A5、用于从外部输入运动图像的输入端子PROD_A6以及对图像进行生成或者加工的图像处理部A7。在图50的(a)中,例示由发送装置PROD_A具备了这些全部的结构,但也可以省略一部分。
另外,记录介质PROD_A5可以是记录了没有被编码的运动图像的记录介质,也可以是记录了以与传输用的编码方式不同的记录用的编码方式进行了编码的运动图像的记录介质。在后者的情况下,只要在记录介质PROD_A5和编码部PROD_A1之间,介入根据记录用的编码方式对从记录介质PROD_A5读出的编码数据进行解码的解码部(未图示)即可。
图50的(b)是表示搭载了层次运动图像解码装置1的接收装置PROD_B的结构的框图。如图50的(b)所示,接收装置PROD_B具备接收调制信号的接收部PROD_B1、通过对接收部PROD_B1接收到的调制信号进行解调而获得编码数据的解调部PROD_B2、通过对解调部PROD_B2获得的编码数据进行解码而获得运动图像的解码部PROD_B3。上述的层次运动图像解码装置1被利用作为该解码部PROD_B3。
接收装置PROD_B作为解码部PROD_B3输出的运动图像的供应目的地,也可以还包括显示运动图像的显示器PROD_B4、用于记录运动图像的记录介质PROD_B5以及用于将运动图像输出到外部的输出端子PROD_B6。在图50的(b)中,例示由接收装置PROD_B具备了这些全部的结构,但也可以省略一部分。
另外,记录介质PROD_B5可以是用于记录没有被编码的运动图像的记录介质,也可以是以与传输用的编码方式不同的记录用的编码方式进行了编码的记录介质。在后者的情况下,只要在解码部PROD_B3和记录介质PROD_B5之间,介入根据记录用的编码方式对从解码部PROD_B3取得的运动图像进行编码的编码部(未图示)即可。
另外,传输调制信号的传输介质可以是无线,也可以是有线。此外,传输调制信号的传输方式可以是广播(这里,是指发送目的地没有预先确定的发送方式),也可以是通信(这里,是指发送目的地预先确定的发送方式)。即,调制信号的传输也可以通过无线广播、有线广播、无线通信以及有线通信中的任一个而实现。
例如,地面数字广播的广播站(广播设备等)/接收站(电视接收机等)是通过无线广播来发送接收调制信号的发送装置PROD_A/接收装置PROD_B的一例。此外,电缆电视广播的广播站(广播设备等)/接收站(电视接收机等)是通过有线广播来发送接收调制信号的发送装置PROD_A/接收装置PROD_B的一例。
此外,使用了互联网的VOD(VideoOnDemand,视频点播)服务或动画共享服务等的服务器(工作站等)/客户端(电视接收机、个人计算机、智能手机等)是通过通信来发送接收调制信号的发送装置PROD_A/接收装置PROD_B的一例(通常,在LAN中作为传输介质而使用无线或者有线中的任一个,在WAN中作为传输介质而使用有线)。这里,在个人计算机中,包括桌上型PC、膝上型PC以及平板型PC。此外,在智能手机中,还包括多功能便携电话终端。
另外,动画共享服务的客户端除了具有将从服务器下载的编码数据进行解码而在显示器中显示的功能之外,还具有将通过相机拍摄到的运动图像进行编码而上传到服务器中的功能。即,动画共享服务的客户端作为发送装置PROD_A及接收装置PROD_B的双方发挥作用。
基于图51,说明能够将上述的层次运动图像编码装置2以及层次运动图像解码装置1利用于运动图像的记录以及再现的情况。图51的(a)是表示搭载了上述的层次运动图像编码装置2的记录装置PROD_C的结构的框图。
如图51的(a)所示,记录装置PROD_C包括通过对运动图像进行编码而获得编码数据的编码部PROD_C1以及将编码部PROD_C1获得的编码数据写入记录介质PROD_M的写入部PROD_C2。上述的层次运动图像编码装置2作为该编码部PROD_C1而被利用。
另外,记录介质PROD_M既可以是(1)如HDD(HardDiskDrive,硬盘驱动器)或SSD(SolidStateDrive,固态硬盘)等那样内置在记录装置PROD_C中的类型,也可以是(2)如SD存储卡或USB(UniversalSerialBus,通用串行总线)闪速存储器等那样连接到记录装置PROD_C的类型,也可以是(3)如DVD(DigitalVersatileDisc,数字视盘)或BD(Blu-rayDisc(注册商标),蓝光盘)等那样在内置于记录装置PROD_C中的驱动器装置(未图示)中装填的类型。
此外,记录装置PROD_C也可以作为对编码部PROD_C1输入的运动图像的供应源,进一步包括拍摄运动图像的相机PROD_C3、用于从外部输入运动图像的输入端子PROD_C4、用于接收运动图像的接收部PROD_C5以及生成或者加工图像的图像处理部C6。在图51的(a)中,例示了记录装置PROD_C将这些全部具备的结构,但也可以省略一部分。
另外,接收部PROD_C5既可以是接收没有进行编码的运动图像的部分,也可以是接收以与记录用的编码方式不同的传输用的编码方式进行了编码的编码数据的部分。在后者的情况下,只要在接收部PROD_C5和编码部PROD_C1之间,介入对以传输用的编码方式进行了编码的编码数据进行解码的传输用解码部(未图示)即可。
作为这样的记录装置PROD_C,例如举出DVD记录器、BD记录器、HDD(HardDiskDrive,硬盘驱动器)记录器等(此时,输入端子PROD_C4或者接收部PROD_C5成为运动图像的主要的供应源)。此外,摄像机(此时,相机PROD_C3成为运动图像的主要的供应源)、个人计算机(此时,接收部PROD_C5或者图像处理部C6成为运动图像的主要的供应源)、智能手机(此时,相机PROD_C3或者接收部PROD_C5成为运动图像的主要的供应源)等也是这样的记录装置PROD_C的一例。
图51的(b)是表示搭载了上述的层次运动图像解码装置1的再现装置PROD_D的结构的块。如图51的(b)所示,再现装置PROD_D包括读出写入记录介质PROD_M的编码数据的读出部PROD_D1、以及通过对读出部PROD_D1读出的编码数据进行解码而获得运动图像的解码部PROD_D2。上述的层次运动图像解码装置1作为该解码部PROD_D2而被利用。
另外,记录介质PROD_M既可以是(1)如HDD或SSD等那样内置在再现装置PROD_D中的类型,也可以是(2)如SD存储卡或USB闪速存储器等那样连接到再现装置PROD_D的类型,也可以是(3)如DVD或BD等那样在内置于再现装置PROD_D中的驱动器装置(未图示)中装填的类型。
此外,再现装置PROD_D也可以作为解码部PROD_D2输出的运动图像的供应目的地,进一步包括显示运动图像的显示器PROD_D3、用于将运动图像输出到外部的输出端子PROD_D4以及发送运动图像的发送部PROD_D5。在图51的(b)中,例示了再现装置PROD_D将这些全部具备的结构,但也可以省略一部分。
另外,发送部PROD_D5既可以是发送没有进行编码的运动图像的部分,也可以是发送以与记录用的编码方式不同的传输用的编码方式进行了编码的编码数据的部分。在后者的情况下,只要在解码部PROD_D2和发送部PROD_D5之间,介入以传输用的编码方式对运动图像进行编码的编码部(未图示)即可。
作为这样的再现装置PROD_D,例如举出DVD播放器、BD播放器、HDD播放器等(此时,连接了电视接收机等的输出端子PROD_D4成为运动图像的主要的供应目的地)。此外,电视接收机(此时,显示器PROD_D3成为运动图像的主要的供应目的地)、数字标牌(也称为电子挂牌或电子布告牌等,显示器PROD_D3或者发送部PROD_D5成为运动图像的主要的供应目的地)、桌上型PC(此时,输出端子PROD_D4或者发送部PROD_D5成为运动图像的主要的供应目的地)、膝上型或者平板型PC(此时,显示器PROD_D3或者发送部PROD_D5成为运动图像的主要的供应目的地)、智能手机(此时,显示器PROD_D3或者发送部PROD_D5成为运动图像的主要的供应目的地)等也是这样的再现装置PROD_D的一例。
(关于硬件的实现以及软件的实现)
最后,层次运动图像解码装置1、层次运动图像编码装置2的各模块既可以通过在集成电路(IC芯片)上形成的逻辑电路而以硬件方式实现,也可以使用CPU(CentralProcessingUnit,中央处理器)而以软件方式实现。
在后者的情况下,上述各装置包括执行用于实现各功能的控制程序的命令的CPU、存储了上述程序的ROM(ReadOnlyMemory,只读存储器)、展开上述程序的RAM(RandomAccessMemory,随机存取存储器)、存储上述程序以及各种数据的存储器等的存储装置(记录介质)等。并且,通过将实现上述的功能的软件即上述各装置的控制程序的程序代码(执行形式程序、中间代码程序、源程序)以计算机能够读取的方式记录的记录介质提供给上述各装置,其计算机(或者CPU或MPU(MicroProcessingUnit,微处理器))读出在记录介质中记录的程序代码而执行,也能够达成本发明的目的。
作为上述记录介质,例如,能够使用磁带或卡带等的带类、包括软盘(注册商标)/硬盘等的磁盘或CD-ROM(CompactDiscRead-OnlyMemory,光盘只读存储器)/MO(Magneto-Optical,光磁)/MD(MiniDisc,迷你盘)/DVD(DigitalVersatileDisk,数字视频盘)/CD-R(CDRecordable,CD刻录)等的光盘的盘类、IC卡(包括存储卡)/光卡等的卡类、掩模ROM/EPROM(ErasableProgrammableRead-onlyMemory,可擦除可编程序只读存储器)/EEPROM(注册商标)(ElectricallyErasableandProgrammableRead-onlyMemory,电可擦除可编程只读存储器)/闪速ROM等的半导体存储器类、或者PLD(Programmablelogicdevice,可编程逻辑电路)或FPGA(FieldProgrammableGateArray,可编程门阵列)等的逻辑电路类等。
此外,也可以将上述各装置构成为能够与通信网络连接,经由通信网络而提供上述程序代码。该通信网络只要能够传输程序代码即可,没有特别限定。例如,可以利用互联网、内联网、外联网、LAN(LocalAreaNetwork,局域网)、ISDN(IntegratedServicesDigitalNetwork,综合服务数字网络)、VAN(Value-AddedNetwork,增值网络)、CATV(CommunityAntennaTelevision,共用天线电视)通信网、虚拟专用网(virtualprivatenetwork)、电话线路网、移动通信网、卫星通信网等。此外,作为构成该通信网络的传输介质,只要能够传输程序代码的介质即可,并不限定于特定的结构或者种类。例如还能够利用IEEE(InstituteofElectricalandElectronicEngineers,电气与电子工程师协会)1394、USB、电力线传输、电缆TV线路、电话线、ADSL(AsymmetricDigitalSubscriberLine,非对称数字用户线路)线路等的有线,也可以使用IrDA(InfraredDataAssociation,红外数据协会)或遥控那样的红外线、Bluetooth(注册商标)、IEEE802.11无线、HDR(HighDataRate,高数据率)、NFC(NearFieldCommunication,近场通信)、DLNA(注册商标)(DigitalLivingNetworkAlliance,数字生活网络联盟)、移动电话网、卫星线路、地面波数字网等的无线。另外,通过上述程序代码以电子传输而具体化的、埋入载波的计算机数据信号的方式,也能够实现本发明。
〔总结〕
本发明的方式1的图像解码装置是对层次编码数据进行解码的图像解码装置,具备:简档有无标记解码单元,对表示PTL信息列表中的PTL信息内的简档信息的有无的简档有无标记进行解码;以及PTL信息解码单元,对PTL信息进行解码,上述PTL信息解码单元在上述简档有无标记为1的情况下,从编码数据解码上述PTL信息的简档信息,在上述简档信息有无标记为0的情况下,将上述PTL信息内的简档信息推算为等于前一个进行了解码的PTL信息的简档信息。
根据上述的结构,基于简档有无标记的值,能够决定是对PTL信息的简档信息进行解码,还是从前一个进行了解码的PTL信息的简档信息进行推算。
本发明的方式2的图像解码装置在上述方式1中追加了如下结构:具备对表示各子层简档信息的有无的子层简档有无标记进行解码的子层简档有无标记解码单元,上述PTL信息解码单元在上述各子层的子层简档信息有无标记为1的情况下,从编码数据解码各子层的子层简档信息,在上述各子层简档信息有无标记为0的情况下,将在上述各PTL信息中包含的各子层简档信息推算为等于在前一个进行了解码的PTL信息中包含的对应的各子层简档信息。
根据上述的结构,基于子层简档有无标记的值,决定是对各子层的子层简档信息进行解码,还是推算为等于在前一个进行了解码的PTL信息中包含的对应的各子层简档信息。
本发明的方式3的图像解码装置在上述方式1中追加了如下结构:具备对表示各子层等级信息的有无的子层等级有无标记进行解码的子层等级信息有无标记解码单元,上述PTL信息解码单元在上述各子层的子层等级信息有无标记为1的情况下,从编码数据解码各子层的子层等级信息,在上述子层等级信息有无标记为0的情况下,将在上述PTL信息中包含的各子层等级信息推算为等于在前一个进行了解码的PTL信息中包含的对应的各子层等级信息。
根据上述的结构,能够基于子层等级有无标记的值,决定是对各子层的子层等级信息进行解码,还是推算为等于在前一个进行了解码的PTL信息中包含的对应的各子层等级信息。。
本发明的方式4的图像解码装置在上述方式1至3中,也可以在上述简档信息中,至少包括简档空间、层级标记、简档识别符以及简档互换标记。
根据上述的结构,能够通过解码或者推算而取得至少包括简档空间、层级标记、简档识别符以及简档互换标记的简档信息。
本发明的方式5的图像解码装置在上述方式2或者4中,也可以在上述子层简档信息中,至少包括子层简档空间、子层层级标记、子层简档识别符以及子层简档互换标记。
根据上述的结构,能够通过解码或者推算而取得至少包括子层简档空间、子层层级标记、子层简档识别符以及子层简档互换标记的子层简档信息。
本发明的方式6的图像解码装置在上述方式2中,也可以在与上述PTL信息有关的简档有无标记为0的情况下,将与在上述PTL信息中包含的各子层有关的子层简档有无标记的值设为0。
根据上述的结构,在简档有无标记为0的情况下,能够将与在上述PTL信息中包含的各子层有关的子层简档有无标记的值设为0。
本发明的方式7的图像解码方法是对层次编码数据进行解码的图像解码方法,包括如下步骤:简档有无标记解码步骤,对表示PTL信息列表中的PTL信息内的简档信息的有无的简档有无标记进行解码;以及PTL信息解码步骤,对PTL信息进行解码,在上述PTL信息解码步骤中,在上述简档有无标记为1的情况下,从编码数据解码上述PTL信息的简档信息,在上述简档信息有无标记为0的情况下,将上述PTL信息内的简档信息推算为等于前一个进行了解码的PTL信息的简档信息。
根据上述的结构,能够基于简档有无标记的值,决定是对PTL信息的简档信息进行解码,还是从前一个进行了解码的PTL信息的简档信息进行推算。
本发明的方式8的图像编码装置是对图像数据层次性地进行编码而生成层次编码数据的图像编码装置,具备对表示上述层次编码数据的简档的PTL信息进行编码的PTL信息编码部,上述PTL信息编码部在上述PTL信息中对简档信息进行编码的情况下,将简档有无标记的值编码为1,在将上述PTL信息内的简档信息推算为等于前一个进行了编码的PTL信息的简档信息的情况下,将简档有无标记的值编码为0。
根据上述的结构,能够根据是对PTL信息的简档信息进行编码,还是推算为等于前一个进行了编码的PTL信息的简档信息进行编码,设定简档有无标记的值进行编码。
本发明的方式9的图像编码方法是对图像数据层次性地进行编码而生成层次编码数据的图像编码方法,包括对表示上述层次编码数据的简档的PTL信息进行编码的PTL信息编码步骤,在上述PTL信息编码步骤中,在上述PTL信息中对简档信息进行编码的情况下,将简档有无标记的值编码为1,在将上述PTL信息内的简档信息推算为等于前一个进行了编码的PTL信息的简档信息的情况下,将简档有无标记的值编码为0。
根据上述的结构,能够根据是对PTL信息的简档信息进行编码,还是推算为等于前一个进行了编码的PTL信息的简档信息进行编码,设定简档有无标记的值进行编码。
〔本发明的其他的方式〕
本发明的其他的方式1的图像解码装置是对与按每个层不同的质量的图像有关的图像信息层次性地进行了编码的层次编码数据进行解码,恢复成为解码的对象的对象层中的图像的图像解码装置,具备对表示上述层次编码数据的简档的简档/等级信息进行解码的简档/等级信息解码部,上述简档/等级信息解码部将上述简档/等级信息中的第i个参照PTL信息指定索引的语义处理为该第i个参照PTL信息指定索引是指定第i个简档/等级信息和被参照的简档/等级信息之间的相对的位置的索引。
根据上述的结构,能够从第0个简档/等级信息推算第1个简档/等级信息的简档以及层级的信息。
本发明的其他的方式2的图像解码装置是对与按每个层不同的质量的图像有关的图像信息层次性地进行了编码的层次编码数据进行解码,恢复成为解码的对象的对象层中的图像的图像解码装置,具备对表示上述层次编码数据的简档的简档/等级信息进行解码的简档/等级信息解码部,在上述简档/等级信息解码部进行解码的上述简档/等级信息中,参照PTL信息指定索引变更为参照简档,使得第1个简档/等级信息的简档以及层级的信息能够基于第0个简档/等级信息而推算。
根据上述的结构,由于第i个参照PTL信息指定索引进行编码,所以能够抑制比特。
本发明的其他的方式3的图像解码装置是对与按每个层不同的质量的图像有关的图像信息层次性地进行了编码的层次编码数据进行解码,恢复成为解码的对象的对象层中的图像的图像解码装置,具备对表示上述层次编码数据的简档的简档/等级信息进行解码的简档/等级信息解码部,在上述简档/等级信息解码部进行解码的上述简档/等级信息中,也可以代替参照PTL信息指定索引而包括VPS简档有无标记。
根据上述的结构,由于能够从第(i-1)个简档/等级信息推算第i个简档/等级信息的简档以及层级的信息,所以能够抑制比特。
本发明的其他的方式4的图像解码装置也可以在上述其他的方式1或者2中,上述简档/等级信息解码部在没有被提示对于第i个子层的等级的信息的情况下,推算为该等级等于第(i+1)个子层的等级和等级的识别符的等级中较小一方。
根据上述的结构,由于明确了在简档/等级信息中不存在第i个子层的等级的信息的情况下的、第i个子层的等级的处理方法,所以能够避免关于时间ID等于1的子层的显示未定义的情况。
本发明的其他的方式5的图像解码装置也可以在上述其他的方式1或者2中,上述简档/等级信息解码部在第i个子层的子层简档有无标记为1的情况下,判断为该子层的简档信息在对象层的编码数据内存在,基于该编码数据对该子层的子层简档信息进行解码。
根据上述的结构,即使是在简档有无标记为1且子层简档有无标记为0的情况下,也能够解除子层的简档信息成为不定的事态。
本发明的其他的方式6的图像解码装置也可以在上述其他的方式1或者2中,上述简档/等级信息解码部基于对象层的编码数据对最高次子层的等级信息进行解码,关于除了该最高次子层之外的各子层的子层等级信息,在第i个子层的子层等级有无标记为1的情况下,判断为该子层的等级信息在对象层的编码数据内存在,基于该编码数据对该子层的子层等级信息进行解码,在第i个子层的子层等级有无标记为0的情况下,对该子层的子层等级信息设定预定的等级信息。
根据上述的结构,即使是在子层等级有无标记为0的情况下,也能够避免子层的等级信息成为不定的事态。
本发明的其他的方式7的图像解码装置也可以在上述其他的方式1或者2中,上述简档/等级信息解码部在等级有无标记为1且第i个子层的子层等级有无标记为1的情况下,判断为该子层的等级信息在对象层的编码数据内存在,基于该编码数据对该子层的子层等级信息进行解码,在等级有无标记为1且第i个子层的子层等级有无标记为0的情况下,对该子层的子层等级信息设定预定的等级信息,在等级有无标记为0且第i个子层的子层等级有无标记为1的情况下,判断为该子层的等级信息在对象层的编码数据内存在,基于该编码数据对该子层的子层等级信息进行解码,在等级有无标记为0且第i个子层的子层等级有无标记为0的情况下,对该子层的子层等级信息设定由第i个参照PTL信息指定索引所指定的子层的等级信息。
根据上述的结构,即使是在等级有无标记为0且子层等级有无标记为0的情况下,也能够解除子层的等级信息成为不定的事态。
本发明的其他的方式8的图像解码装置也可以在上述其他的方式3中,在上述简档/等级信息中附加有VPS等级有无标记,上述简档/等级信息解码部在VPS等级有无标记等于“0”的情况下,将第i个简档/等级信息的等级的信息从在其以前的简档/等级信息的等级的信息导出。
根据上述的结构,由于明确了在简档/等级信息中不存在第i个子层的等级的信息的情况下的、第i个子层的等级的处理方法,所以能够避免关于时间ID等于1的子层的显示未定义的情况。
本发明的其他的方式9的图像编码装置是生成与按每个层不同的质量的图像有关的图像信息层次性地进行了编码的层次编码数据的图像编码装置,具备对表示上述层次编码数据的简档的简档/等级信息进行编码的简档/等级信息编码部,上述简档/等级信息编码部将上述简档/等级信息中的第i个参照PTL信息指定索引的语义作为该第i个参照PTL信息指定索引指定第i个简档/等级信息和被参照的简档/等级信息之间的相对的位置来进行编码。
根据上述的结构,能够从第0个简档/等级信息推算第1个简档/等级信息的简档以及层级的信息。
本发明的其他的方式10的图像编码装置是生成与按每个层不同的质量的图像有关的图像信息层次性地进行了编码的层次编码数据的图像编码装置,具备对表示上述层次编码数据的简档的简档/等级信息进行编码的简档/等级信息编码部,在上述简档/等级信息编码部进行编码的上述简档/等级信息中,参照PTL信息指定索引变更为参照简档,使得第1个简档/等级信息的简档以及层级的信息能够基于第0个简档/等级信息而推算。
根据上述的结构,由于第i个参照PTL信息指定索引进行编码,所以能够抑制比特。
本发明的其他的方式11的图像编码解码装置是生成与按每个层不同的质量的图像有关的图像信息层次性地进行了编码的层次编码数据的图像编码装置,具备对表示上述层次编码数据的简档的简档/等级信息进行编码的简档/等级信息编码部,在上述简档/等级信息编码部进行编码的上述简档/等级信息中,也可以代替参照PTL信息指定索引而包括VPS简档有无标记。
根据上述的结构,由于能够从第(i-1)个简档/等级信息推算第i个简档/等级信息的简档以及层级的信息,所以能够抑制比特。
本发明的其他的方式12的图像编码装置也可以在上述其他的方式9或者10中,上述简档/等级信息编码部在没有被提示对于第i个子层的等级的信息的情况下,进行编码,使得推算为该等级等于第(i+1)个子层的等级和等级的识别符的等级中较小一方。
根据上述的结构,由于明确了在简档/等级信息中不存在第i个子层的等级的信息的情况下的、第i个子层的等级的处理方法,所以能够避免关于时间ID等于1的子层的显示未定义的情况。
本发明的其他的方式13的图像编码装置也可以在上述其他的方式9或者10中,上述简档/等级信息编码部在第i个子层的子层简档有无标记为1的情况下,该子层的简档信息在对象层的编码数据内包括子层简档信息。
根据上述的结构,即使是在简档有无标记为1且子层简档有无标记为0的情况下,也能够解除子层的简档信息成为不定的事态。
本发明的其他的方式14的图像编码装置也可以在上述其他的方式9或者10中,上述简档/等级信息编码部在对象层的编码数据中包括最高次子层的等级信息,关于除了该最高次子层之外的各子层的子层等级信息,在第i个子层的子层等级有无标记为1的情况下,将该子层的等级信息包含在对象层的编码数据内且在该编码数据中包括该子层的子层等级信息,在第i个子层的子层等级有无标记为0的情况下,对该子层的子层等级信息设定预定的等级信息。
根据上述的结构,即使是在子层等级有无标记为0的情况下,也能够解除子层的等级信息成为不定的事态。
本发明的其他的方式15的图像编码装置也可以在上述其他的方式9或者10中,上述简档/等级信息编码部在等级有无标记为1且第i个子层的子层等级有无标记为1的情况下,将该子层的等级信息包含在对象层的编码数据内,在该编码数据中包括该子层的子层等级信息,在等级有无标记为1且第i个子层的子层等级有无标记为0的情况下,对该子层的子层等级信息设定预定的等级信息,在等级有无标记为0且第i个子层的子层等级有无标记为1的情况下,该子层的等级信息包含在对象层的编码数据内,在该编码数据中包括该子层的子层等级信息,在等级有无标记为0且第i个子层的子层等级有无标记为0的情况下,对该子层的子层等级信息设定由第i个参照PTL信息指定索引所指定的子层的等级信息。
根据上述的结构,即使是在等级有无标记为0且子层等级有无标记为0的情况下,也能够解除子层的等级信息成为不定的事态。
本发明的其他的方式16的图像编码装置也可以在上述其他的方式11中,在上述简档/等级信息中附加有VPS等级有无标记,上述简档/等级信息编码部在VPS等级有无标记等于“0”的情况下,进行编码,使得能够将第i个简档/等级信息的等级的信息从在其以前的简档/等级信息的等级的信息导出。
根据上述的结构,由于明确了在简档/等级信息中不存在第i个子层的等级的信息的情况下的、第i个子层的等级的处理方法,所以能够避免关于时间ID等于1的子层的显示未定义的情况。
本发明的其他的方式17的图像解码装置是对与按每个层不同的质量的图像有关的图像信息层次性地进行了编码的层次编码数据进行解码,恢复成为解码的对象的对象层中的图像的图像解码装置,具备对表示上述层次编码数据的简档的简档/等级信息进行解码的简档/等级信息解码部,上述简档/等级信息解码部也可以在上述简档/等级信息中,对满足以下的各条件的编码数据进行解码:下位层集的简档空间的值≤上位层集的简档空间的值、下位层集的简档识别符的值≤上位层集的简档识别符的值、下位层集的层级标记的值≤上位层集的层级标记的值、上位层集A的等级识别符的值≥下位层集B的等级识别符的值。
根据上述的结构,起到防止生成不连续地设定了与下位层的简档/等级和上位层的简档/等级没有互换的简档/等级的编码数据的效果。此外,由于能够将图像解码装置应对应的简档/等级抑制为必要最小限度,所以起到减轻图像解码装置的复杂度的效果。
本发明的各方式的图像解码装置以及图像编码装置也可以由计算机实现,在该情况下,通过使计算机作为上述图像解码装置以及图像编码装置具备的各单元来动作,从而由计算机实现上述图像解码装置以及图像编码装置的控制程序、以及记录了该控制程序的计算机可读取的记录介质也包含在本发明的范围中。
本发明并不限定于上述的各实施方式,在权利要求书所示的范围内能够进行各种变更,将在不同的实施方式中分别公开的技术手段适当地组合而获得的实施方式,也包含在本发明的技术范围中。
产业上的可利用性
本发明能够适合应用于对图像数据层次性地进行了编码的编码数据进行解码的层次运动图像解码装置、以及生成图像数据层次性地进行了编码的编码数据的层次运动图像编码装置。此外,能够适合应用于由层次运动图像编码装置生成、由层次运动图像解码装置参照的层次编码数据的数据结构。
附图标记说明
1…图像解码装置、层次运动图像解码装置
10…头部解码部
10E…头部编码部
11…图片解码部
12…解码图片缓冲器
13…参照图片管理部
131…参照图片集设定部
132…参照图片列表导出部
13E…参照图片决定部
101…NAL单元头部解码部
102…VPS解码部
103…SPS解码部
104…PPS解码部
105…切片头部解码部
1011…层ID解码部
1012…NAL单元类型解码部
1021…PTL(简档/等级)信息解码部
1021a…简档信息解码部
1021b…等级信息解码部
1021c…子层简档有无标记解码部
1021d…子层等级有无标记解码部
1021e…字节对齐数据解码部
1021f…参照简档等级选择部
1022…参照PTL指定信息解码部
1023…简档有无标记解码部
301…熵解码部
302…预测参数解码部
303…外部预测参数解码部
304…内部预测参数解码部
307…预测参数存储器
308…预测图像生成部
309…外部预测图像生成部
310…内部预测图像生成部
311…逆量化/逆DCT部
312…加法部
2…图像编码装置、层次运动图像编码装置
201…预测图像生成部
202…减法部
203…DCT变换/量化部
204…熵编码部
205…逆量化/逆DCT变换部
206…加法部
208…预测参数存储器
210…编码参数决定部
211…预测参数编码部
222…VPS编码部
2221…PTL信息编码部
2221a…简档信息编码部
2221b…等级信息编码部
2221c…子层简档有无标记编码部
2221d…子层等级有无标记编码部
2221e…字节对齐数据编码部
Claims (9)
1.一种图像解码装置,对层次编码数据进行解码,其特征在于,所述图像解码装置具备:
简档有无标记解码单元,对表示PTL信息列表中的PTL信息内的简档信息的有无的简档有无标记进行解码;以及
PTL信息解码单元,对PTL信息进行解码,
在上述简档有无标记为1的情况下,上述PTL信息解码单元从编码数据解码上述PTL信息的简档信息,
在上述简档信息有无标记为0的情况下,上述PTL信息解码单元将上述PTL信息内的简档信息推算为等于前一个进行了解码的PTL信息的简档信息。
2.如权利要求1所述的图像解码装置,其特征在于,
具备子层简档有无标记解码单元,该子层简档有无标记解码单元对表示各子层简档信息的有无的子层简档有无标记进行解码,
在上述各子层的子层简档信息有无标记为1的情况下,上述PTL信息解码单元从编码数据解码各子层的子层简档信息,
在上述各子层简档信息有无标记为0的情况下,上述PTL信息解码单元将在上述各PTL信息中包含的各子层简档信息推算为等于在前一个进行了解码的PTL信息中包含的对应的各子层简档信息。
3.如权利要求1所述的图像解码装置,其特征在于,
具备子层等级信息有无标记解码单元,该子层等级信息有无标记解码单元对表示各子层等级信息的有无的子层等级有无标记进行解码,
在上述各子层的子层等级信息有无标记为1的情况下,上述PTL信息解码单元从编码数据解码各子层的子层等级信息,
在上述子层等级信息有无标记为0的情况下,上述PTL信息解码单元将在上述PTL信息中包含的各子层等级信息推算为等于在前一个进行了解码的PTL信息中包含的对应的各子层等级信息。
4.如权利要求1至3的任一项所述的图像解码装置,其特征在于,
在上述简档信息中,至少包括简档空间、层级标记、简档识别符以及简档互换标记。
5.如权利要求2或4所述的图像解码装置,其特征在于,
在上述子层简档信息中,至少包括子层简档空间、子层层级标记、子层简档识别符以及子层简档互换标记。
6.如权利要求2所述的图像解码装置,其特征在于,
在与上述PTL信息有关的简档有无标记为0的情况下,将在上述PTL信息中包含的与各子层有关的子层简档有无标记的值设为0。
7.一种图像解码方法,对层次编码数据进行解码,其特征在于,所述图像解码方法包括如下步骤:
简档有无标记解码步骤,对表示PTL信息列表中的PTL信息内的简档信息的有无的简档有无标记进行解码;以及
PTL信息解码步骤,对PTL信息进行解码,
在上述PTL信息解码步骤中,
在上述简档有无标记为1的情况下,从编码数据解码上述PTL信息的简档信息,
在上述简档信息有无标记为0的情况下,将上述PTL信息内的简档信息推算为等于前一个进行了解码的PTL信息的简档信息。
8.一种图像编码装置,对图像数据层次性地进行编码而生成层次编码数据,其特征在于,具备PTL信息编码部,该PTL信息编码部对表示上述层次编码数据的简档的PTL信息进行编码,
上述PTL信息编码部在上述PTL信息中对简档信息进行编码的情况下,将简档有无标记的值编码为1,
在将上述PTL信息内的简档信息推算为等于前一个进行了编码的PTL信息的简档信息的情况下,将简档有无标记的值编码为0。
9.一种图像编码方法,对图像数据层次性地进行编码而生成层次编码数据,其特征在于,
包括PTL信息编码步骤,在该PTL信息编码步骤中,对表示上述层次编码数据的简档的PTL信息进行编码,
在上述PTL信息编码步骤中,在上述PTL信息中对简档信息进行编码的情况下,将简档有无标记的值编码为1,
在将上述PTL信息内的简档信息推算为等于前一个进行了编码的PTL信息的简档信息的情况下,将简档有无标记的值编码为0。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013-211469 | 2013-10-08 | ||
JP2013211469 | 2013-10-08 | ||
PCT/JP2014/075868 WO2015053120A1 (ja) | 2013-10-08 | 2014-09-29 | 画像復号装置、画像復号方法、画像符号化装置、及び画像符号化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105594209A true CN105594209A (zh) | 2016-05-18 |
CN105594209B CN105594209B (zh) | 2019-08-06 |
Family
ID=52812939
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480053151.1A Expired - Fee Related CN105594209B (zh) | 2013-10-08 | 2014-09-29 | 图像解码装置、图像解码方法以及图像编码装置 |
Country Status (7)
Country | Link |
---|---|
US (2) | US10075720B2 (zh) |
EP (1) | EP3057324A4 (zh) |
JP (1) | JPWO2015053120A1 (zh) |
CN (1) | CN105594209B (zh) |
HK (1) | HK1223473A1 (zh) |
TW (1) | TWI645714B (zh) |
WO (1) | WO2015053120A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107038736A (zh) * | 2017-03-17 | 2017-08-11 | 腾讯科技(深圳)有限公司 | 一种基于帧率的动画展示方法及终端设备 |
WO2018020328A1 (en) * | 2016-07-29 | 2018-02-01 | Chan Kam Fu | Chan framework, chan coding and chan code |
WO2021233448A1 (en) * | 2020-05-22 | 2021-11-25 | Beijing Bytedance Network Technology Co., Ltd. | Signalling of general level index |
US11838554B2 (en) | 2020-02-29 | 2023-12-05 | Beijing Bytedance Network Technology Co., Ltd. | Constrains for diferent coding tools |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10382752B2 (en) * | 2013-10-15 | 2019-08-13 | Sony Corporation | Image processing device and method |
JP5886341B2 (ja) | 2014-03-07 | 2016-03-16 | ソニー株式会社 | 送信装置、送信方法、受信装置および受信方法 |
JP6150134B2 (ja) | 2014-03-24 | 2017-06-21 | ソニー株式会社 | 画像符号化装置および方法、画像復号装置および方法、プログラム、並びに記録媒体 |
JP6312934B2 (ja) * | 2015-06-16 | 2018-04-18 | 三菱電機株式会社 | 画像符号化方式変換装置及び画像符号化方式変換方法 |
US10798422B2 (en) * | 2015-10-20 | 2020-10-06 | Intel Corporation | Method and system of video coding with post-processing indication |
US10778976B2 (en) * | 2016-09-28 | 2020-09-15 | Sharp Kabushiki Kaisha | Image decoding apparatus and image coding apparatus |
US20180352240A1 (en) * | 2017-06-03 | 2018-12-06 | Apple Inc. | Generalized Temporal Sub-Layering Frame Work |
EP3742733A4 (en) * | 2019-01-02 | 2021-03-31 | LG Electronics Inc. | METHOD AND DEVICE FOR PROCESSING VIDEO SIGNAL USING INTER-PREDICTION |
US11277247B2 (en) * | 2019-04-10 | 2022-03-15 | Samsung Electronics Co., Ltd. | Method and apparatus to enable CSI reporting in wireless communication systems |
US11310560B2 (en) | 2019-05-17 | 2022-04-19 | Samsung Electronics Co., Ltd. | Bitstream merger and extractor |
CN110287346B (zh) * | 2019-06-28 | 2021-11-30 | 深圳云天励飞技术有限公司 | 数据存储方法、装置、服务器及存储介质 |
CN114902672A (zh) | 2019-12-26 | 2022-08-12 | 字节跳动有限公司 | 视频编解码中的档次-层-级别参数集 |
CN115428454A (zh) * | 2020-04-06 | 2022-12-02 | 字节跳动有限公司 | 使用参数集的视频编解码 |
JP2023529854A (ja) * | 2020-06-08 | 2023-07-12 | テレフオンアクチーボラゲット エルエム エリクソン(パブル) | ビデオビットストリームの各レイヤ表現のための値の導出 |
CN116235502A (zh) * | 2020-09-29 | 2023-06-06 | Lg电子株式会社 | 生成/接收包括输出层集合信息的媒体文件的方法和设备及发送媒体文件的方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104620575A (zh) * | 2012-09-28 | 2015-05-13 | 夏普株式会社 | 图像解码装置 |
CN104662912A (zh) * | 2012-09-28 | 2015-05-27 | 夏普株式会社 | 图像解码装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10419778B2 (en) * | 2013-01-04 | 2019-09-17 | Sony Corporation | JCTVC-L0227: VPS_extension with updates of profile-tier-level syntax structure |
-
2014
- 2014-09-29 JP JP2015541526A patent/JPWO2015053120A1/ja active Pending
- 2014-09-29 US US15/023,442 patent/US10075720B2/en not_active Expired - Fee Related
- 2014-09-29 WO PCT/JP2014/075868 patent/WO2015053120A1/ja active Application Filing
- 2014-09-29 CN CN201480053151.1A patent/CN105594209B/zh not_active Expired - Fee Related
- 2014-09-29 EP EP14852055.4A patent/EP3057324A4/en not_active Withdrawn
- 2014-10-07 TW TW103134939A patent/TWI645714B/zh not_active IP Right Cessation
-
2016
- 2016-10-07 HK HK16111662.6A patent/HK1223473A1/zh not_active IP Right Cessation
-
2018
- 2018-07-24 US US16/043,191 patent/US10237564B1/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104620575A (zh) * | 2012-09-28 | 2015-05-13 | 夏普株式会社 | 图像解码装置 |
CN104662912A (zh) * | 2012-09-28 | 2015-05-27 | 夏普株式会社 | 图像解码装置 |
Non-Patent Citations (2)
Title |
---|
JIANLE CHEN, QUALCOMM: "SHVC Draft 3", 《JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC)》 * |
JILL BOYCE: "Profile, tier, level and operation points signaling in the VPS extension", 《JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC)》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018020328A1 (en) * | 2016-07-29 | 2018-02-01 | Chan Kam Fu | Chan framework, chan coding and chan code |
US11515888B2 (en) | 2016-07-29 | 2022-11-29 | Kam Fu Chan | CHAN framework, CHAN coding and CHAN code |
CN107038736A (zh) * | 2017-03-17 | 2017-08-11 | 腾讯科技(深圳)有限公司 | 一种基于帧率的动画展示方法及终端设备 |
US11838554B2 (en) | 2020-02-29 | 2023-12-05 | Beijing Bytedance Network Technology Co., Ltd. | Constrains for diferent coding tools |
US11889119B2 (en) | 2020-02-29 | 2024-01-30 | Beijing Bytedance Network Technology Co., Ltd. | Constrains for syntax elements of adaptation parameter set |
US11968402B2 (en) | 2020-02-29 | 2024-04-23 | Beijing Bytedance Network Technology Co., Ltd. | Constrains for high level syntax elements |
WO2021233448A1 (en) * | 2020-05-22 | 2021-11-25 | Beijing Bytedance Network Technology Co., Ltd. | Signalling of general level index |
US11956474B2 (en) | 2020-05-22 | 2024-04-09 | Beijing Bytedance Network Technology Co., Ltd. | Signalling of general constrains flag |
Also Published As
Publication number | Publication date |
---|---|
CN105594209B (zh) | 2019-08-06 |
US10075720B2 (en) | 2018-09-11 |
US20190082188A1 (en) | 2019-03-14 |
EP3057324A4 (en) | 2017-04-05 |
TWI645714B (zh) | 2018-12-21 |
HK1223473A1 (zh) | 2017-07-28 |
TW201521427A (zh) | 2015-06-01 |
WO2015053120A1 (ja) | 2015-04-16 |
US20160212437A1 (en) | 2016-07-21 |
JPWO2015053120A1 (ja) | 2017-03-09 |
EP3057324A1 (en) | 2016-08-17 |
US10237564B1 (en) | 2019-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105594209A (zh) | 图像解码装置、图像解码方法、图像编码装置以及图像编码方法 | |
CN105519119A (zh) | 图像解码装置 | |
CN106170981B (zh) | 图像解码装置 | |
CN105409220B (zh) | 用于视频译码的经解码图片缓冲器操作 | |
CN104662912B (zh) | 图像解码装置 | |
CN104412593B (zh) | 图像解码装置以及图像编码装置 | |
CN105531999B (zh) | 涉及用于信号传输运动信息的语法的视频编码方法及装置 | |
CN109155877A (zh) | 分开的文件轨中的序列结束及位流结束网络抽象层(nal)单元 | |
CN106170980A (zh) | 图像解码装置、图像编码装置以及编码数据变换装置 | |
TWI297252B (en) | Color image encoding and decoding method and apparauts using a correlation between chrominance components | |
CN109155860A (zh) | 以高效率视频译码及分层高效率视频译码文件格式的图块分组及样本的映射 | |
CN110431849A (zh) | 包含用于视频译码的子图片位流的视频内容的信令传输 | |
CN108702503A (zh) | 用于视频编码和解码的装置、方法及计算机程序 | |
CN105659607A (zh) | 多层视频文件格式设计 | |
JP6706357B2 (ja) | 少なくとも1つの第2の画像成分の参照ブロックに対して第1の画像成分の現在ブロックを符号化するための方法、符号化装置および対応するコンピュータプログラム | |
CN104641642A (zh) | 用于视频编码的方法和装置 | |
CN102484699B (zh) | 对图像进行编码和解码的方法、用于编码和解码的对应装置 | |
CN107707912A (zh) | 动图像编码装置以及动图像编码方法 | |
CN101375593A (zh) | 处理多视图视频 | |
CN107005715A (zh) | 图像序列编码和解码的装置、方法和计算机程序 | |
CN105075269A (zh) | 图像解码装置以及图像编码装置 | |
CN104838660A (zh) | 发信号通知步进式时间子层访问样本的方法 | |
CN107211159A (zh) | 文件格式中样本分组用信号发送 | |
CN107371021A (zh) | 动图像编码装置、动图像编码方法以及存储介质 | |
CN106233728A (zh) | 用于色域可扩展性的3d色彩预测的信令位深度值 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1223473 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20190806 Termination date: 20210929 |
|
CF01 | Termination of patent right due to non-payment of annual fee |