动态图像解码方法和动态图像解码装置转让专利

申请号 : CN201610836384.X

文献号 : CN107071462B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 杉尾敏康西孝启柴原阳司谷川京子笹井寿郎松延彻寺田健吾

申请人 : 太格文-II有限责任公司

摘要 :

一种动态图像解码方法,包括:第一候选生成步骤,根据作为解码对象的预测块单位的左侧相邻的多个第一相邻预测块单位的多个运动矢量生成预测运动矢量候选;以及第二候选生成步骤,根据作为解码对象的预测块单位的上侧相邻的多个第二相邻预测块单位的多个运动矢量生成预测运动矢量候选,第二候选生成步骤具有:判定步骤,只有判定为多个第一相邻预测块单位中不包含进行了帧间预测的编码块单位所包含的相邻预测块单位的情况下,从多个第二相邻预测块单位的多个运动矢量中检索通过缩放处理而能够利用的运动矢量,在检索到运动矢量的情况下,通过对检索到的运动矢量执行缩放处理,生成预测运动矢量候选。

权利要求 :

1.一种动态图像解码方法,使用对比特流中包含的作为解码对象的预测块单位的运动矢量进行解码时使用的预测运动矢量,对作为解码对象的所述预测块单位进行解码,其中,该动态图像解码方法包括以下步骤:候选取得步骤,取得作为所述预测运动矢量的候选的1个或多个预测运动矢量候选;

解码步骤,对所述比特流中附加的已编码的索引、即用于从所述1个或多个预测运动矢量候选中确定所述预测运动矢量候选的索引进行解码;以及选择步骤,根据已解码的索引,从所述预测运动矢量候选中选择在作为解码对象的所述预测块单位的解码中使用的所述预测运动矢量,所述候选取得步骤具有以下步骤:

第一候选生成步骤,根据作为解码对象的所述预测块单位的左侧相邻的多个第一相邻预测块单位的多个运动矢量生成所述预测运动矢量候选;以及第二候选生成步骤,根据作为解码对象的所述预测块单位的上侧相邻的多个第二相邻预测块单位的多个运动矢量生成所述预测运动矢量候选,所述第二候选生成步骤具有以下步骤:

判定步骤,判定所述多个第一相邻预测块单位中是否包含进行了帧间预测的编码块单位所包含的相邻预测块单位;以及缩放步骤,只有在所述判定步骤中判定为所述多个第一相邻预测块单位中不包含进行了帧间预测的编码块单位所包含的相邻预测块单位的情况下,从所述多个第二相邻预测块单位的多个运动矢量中检索通过缩放处理而能够利用的运动矢量,在检索到运动矢量的情况下,通过对检索到的所述运动矢量执行缩放处理,生成所述预测运动矢量候选。

2.如权利要求1所述的动态图像解码方法,其中,

所述第二候选生成步骤还具有如下的决定步骤:从所述多个第二相邻预测块单位的多个运动矢量中检索不进行缩放处理也能够利用的运动矢量,在检索到不进行缩放处理也能够利用的运动矢量的情况下,决定检索到的所述运动矢量作为所述预测运动矢量候选之一,在未检索到不进行缩放处理也能够利用的运动矢量的情况下,执行所述判定步骤。

3.如权利要求2所述的动态图像解码方法,其中,

在所述决定步骤中,判定所述多个第二相邻预测块单位各自的参照图片和解码对象预测块单位的参照图片是否相同,检索被判定为参照图片相同的第二相邻预测块单位作为不进行缩放处理也能够利用的运动矢量。

4.如权利要求1所述的动态图像解码方法,其中,

所述第一候选生成步骤具有以下步骤:

从所述多个第一相邻预测块单位的多个运动矢量中检索不进行缩放处理也能够利用的运动矢量,在检索到不进行缩放处理也能够利用的运动矢量的情况下,决定检索到的所述运动矢量作为所述预测运动矢量候选之一的步骤;

判定是否从所述多个第一相邻预测块单位中检索到不进行缩放处理也能够利用的运动矢量的步骤;以及在判定为未从所述多个第一相邻预测块单位中检索到不进行缩放处理也能够利用的运动矢量的情况下,从所述多个第一相邻预测块单位的多个运动矢量中检索通过缩放处理而能够利用的运动矢量,在检索到运动矢量的情况下,通过对检索到的所述运动矢量执行缩放处理,生成所述预测运动矢量候选的步骤。

5.如权利要求1所述的动态图像解码方法,其中,

并行执行所述第一候选生成步骤和所述第二候选生成步骤。

6.一种动态图像解码装置,使用对比特流中包含的解码对象预测块单位的运动矢量进行解码时使用的预测运动矢量,对所述解码对象预测块进行解码,其中,该动态图像解码装置具有:预测运动矢量候选取得部,取得作为所述预测运动矢量的候选的1个或多个预测运动矢量候选;

解码部,对所述比特流中附加的已编码的索引、即用于从所述1个或多个所述预测运动矢量候选中确定所述预测运动矢量候选的索引进行解码;以及选择部,根据已解码的所述索引,从所述预测运动矢量候选中选择在所述解码对象预测块单位的解码中使用的所述预测运动矢量,预测运动矢量候选取得部执行以下处理:

第一候选生成处理,根据所述解码对象预测块单位的左侧相邻的多个第一相邻预测块单位的多个运动矢量生成所述预测运动矢量候选;以及第二候选生成处理,根据所述解码对象预测块单位的上侧相邻的多个第二相邻预测块单位的多个运动矢量生成所述预测运动矢量候选,在所述第二候选生成处理中,

判定所述多个第一相邻预测块单位中是否包含进行了帧间预测的编码块单位所包含的预测块单位,只有在判定为所述多个第一相邻预测块单位中不包含进行了帧间预测的编码块单位所包含的预测块单位的情况下,从所述多个第二相邻预测块单位的多个运动矢量中检索通过缩放处理而能够利用的运动矢量,在检索到运动矢量的情况下,通过对检索到的所述运动矢量执行缩放处理,生成所述预测运动矢量候选。

说明书 :

动态图像解码方法和动态图像解码装置

[0001] 本发明是2013年7月26日提交的申请号为201280006778.2的发明申请的分案申请,其全部内容援引于本发明中。

技术领域

[0002] 本发明涉及动态图像解码方法和动态图像解码装置。

背景技术

[0003] 在动态图像编码处理中,一般地,利用动态图像所具有的空间方向和时间方向的冗长性进行信息量的压缩。这里,一般地,作为利用空间方向的冗长性的方法,使用针对频率区域的变换。并且,作为利用时间方向的冗长性的方法,使用图片间预测(以后称为帧间预测)编码处理。在帧间预测编码处理中,在对某个图片进行编码时,将相对于编码对象图片位于显示时间顺序前方或后方的已编码的图片用作参照图片。然后,通过编码对象图片相对于该参照图片的运动检测而导出运动矢量。然后,计算根据所导出的运动矢量进行运动补偿而得到的预测图像数据与编码对象图片的图像数据的差分,由此去除时间方向的冗长性。
[0004] 现有技术文献
[0005] 非专利文献
[0006] 非专利文献1:ITU-T H.264“8.4.1Derivation process for motion vector components and reference indices”、2010年3月、(8-174)(8-175)式
[0007] 非专利文献2:JCTVC-F803_d2“WD4:Working Draft 4of High-Efficiency Video Coding”、Joint Collaborative Team on Video Coding(JCT-VC)of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 6th Meeting、Torino,IT,2011年7月、14-22

发明内容

[0008] 发明要解决的课题
[0009] 但是,在上述现有技术中,希望实现使用帧间预测的动态图像编码和解码(解码)的处理速度的高速化。
[0010] 因此,本发明的目的在于,提供能够实现使用帧间预测的动态图像解码的处理速度的高速化的动态图像解码方法。
[0011] 用于解决课题的手段
[0012] 本发明的一个方式的动态图像解码方法,使用对比特流中包含的作为解码对象的预测块单位的运动矢量进行解码时使用的预测运动矢量,对作为解码对象的所述预测块单位进行解码,其中,该动态图像解码方法包括以下步骤:候选取得步骤,取得作为所述预测运动矢量的候选的1个或多个预测运动矢量候选;解码步骤,对所述比特流中附加的已编码的索引、即用于从所述1个或多个预测运动矢量候选中确定所述预测运动矢量候选的索引进行解码;以及选择步骤,根据已解码的索引,从所述预测运动矢量候选中选择在作为解码对象的所述预测块单位的解码中使用的所述预测运动矢量,所述候选取得步骤具有以下步骤:第一候选生成步骤,根据作为解码对象的所述预测块单位的左侧相邻的多个第一相邻预测块单位的多个运动矢量生成所述预测运动矢量候选;以及第二候选生成步骤,根据作为解码对象的所述预测块单位的上侧相邻的多个第二相邻预测块单位的多个运动矢量生成所述预测运动矢量候选,所述第二候选生成步骤具有以下步骤:判定步骤,判定所述多个第一相邻预测块单位中是否包含进行了帧间预测的编码块单位所包含的相邻预测块单位;以及缩放步骤,只有在所述判定步骤中判定为所述多个第一相邻预测块单位中不包含进行了帧间预测的编码块单位所包含的相邻预测块单位的情况下,从所述多个第二相邻预测块单位的多个运动矢量中检索通过缩放处理而能够利用的运动矢量,在检索到运动矢量的情况下,通过对检索到的所述运动矢量执行缩放处理,生成所述预测运动矢量候选。
[0013] 发明效果
[0014] 提供能够实现使用帧间预测的动态图像解码的处理速度的高速化的动态图像解码方法。

附图说明

[0015] 图1是说明在预测图像的生成中使用的运动矢量、预测运动矢量、差分运动矢量的关系的概念图。
[0016] 图2是表示动态图像编码装置的结构的一例的模块图。
[0017] 图3是说明动态图像编码方法的一例的流程图。
[0018] 图4A是表示编码块单位CU(Coding Unit)与预测块单位PU(Prediction Unit)的关系的图。
[0019] 图4B是表示coding unit树与pred_type的关系的图。
[0020] 图4C是表示与pred_type的值有关的解释表的图。
[0021] 图5是表示预测对象块和与预测对象块相邻的相邻块的位置关系的图。
[0022] 图6A是表示预测运动矢量的候选列表mvpListL0的图。
[0023] 图6B是表示预测运动矢量的候选列表mvpListL1的图。
[0024] 图7是表示候选列表mvpListLX中包含的预测运动矢量的各候选的关系的概念图。
[0025] 图8是表示比较例中的候选列表mvpListLX的生成顺序的流程图。
[0026] 图9A是表示图8的步骤S410的详细处理顺序的流程图。
[0027] 图9B是表示图8的步骤S430的详细处理顺序的流程图。
[0028] 图10A是表示图8的步骤S510的详细处理顺序的流程图。
[0029] 图10B是表示图8的步骤S530的详细处理顺序的流程图。
[0030] 图11是表示图3的步骤S240的详细处理顺序的流程图。
[0031] 图12是表示图3的步骤S250的详细处理顺序的流程图。
[0032] 图13是说明mvpListLX生成处理的课题的图。
[0033] 图14是说明实施方式1中的动态图像编码装置的mvpListLX生成方法的图。
[0034] 图15是表示实施方式2的动态图像解码装置的结构的模块图。
[0035] 图16是说明实施方式2的动态图像解码方法的流程图。
[0036] 图17是表示实施方式2中的候选列表mvpListLX的生成顺序的流程图。
[0037] 图18是以时序表示实施方式2中的候选列表mvpListLX的生成顺序的图。
[0038] 图19是表示预测对象块为PU0的情况下的步骤S620和S820的判定结果的图。
[0039] 图20是表示预测对象块为PU1的情况下的步骤S620和S820的判定结果的图。
[0040] 图21是说明变形例1中的候选列表mvpListLX的生成顺序的局部流程图。
[0041] 图22是表示变形例2中的候选列表mvpListLX的生成顺序的流程图。
[0042] 图23是以时序表示变形例2中的候选列表mvpListLX的生成顺序的图。
[0043] 图24是实现内容分发服务的内容供给系统的整体结构图。
[0044] 图25是数字广播用系统的整体结构图。
[0045] 图26是表示电视机的结构例的模块图。
[0046] 图27是表示对作为光盘的记录介质进行信息的读写的信息再现/记录部的结构例的模块图。
[0047] 图28是表示作为光盘的记录介质的构造例的图。
[0048] 图29A是表示便携电话的一例的图。
[0049] 图29B是表示便携电话的结构例的模块图。
[0050] 图30是表示复用数据的结构的图。
[0051] 图31是示意地表示各流在复用数据中怎样被复用的图。
[0052] 图32是更详细地表示在PES包序列中视频流怎样被保存的图。
[0053] 图33是表示复用数据的TS包和源包的构造的图。
[0054] 图34是表示PMT的数据结构的图。
[0055] 图35是表示复用数据信息的内部结构的图。
[0056] 图36是表示流属性信息的内部结构的图。
[0057] 图37是表示识别影像数据的步骤的图。
[0058] 图38是表示实现各实施方式的动态图像编码方法及动态图像解码方法的集成电路的结构例的模块图。
[0059] 图39是表示切换驱动频率的结构的图。
[0060] 图40是表示识别影像数据、切换驱动频率的步骤的图。
[0061] 图41是表示将影像数据的规格与驱动频率建立了对应的查找表的一例的图。
[0062] 图42A是表示将信号处理部的模块共用的结构的一例的图。
[0063] 图42B是表示将信号处理部的模块共用的结构的另一例的图。

具体实施方式

[0064] (作为本发明的基础的知识和见解)
[0065] 在H.264中,为了压缩信息量,使用I图片、P图片、B图片这3种图片类型。
[0066] 在帧间预测编码处理中不对I图片进行编码。即,在图片内预测(以后称为“帧内预测”)编码处理中对I图片进行编码。参照在显示时间顺序中位于编码对象图片的前方或后方的已经编码的1个图片对P图片进行帧间预测编码。参照在显示时间顺序中位于编码对象图片的前方(例如预测方向0)或后方(例如预测方向1)的已经编码的2个图片对B图片进行帧间预测编码的。
[0067] 对在动态图像的帧间预测编码处理中使用的运动矢量的导出方法进行了各种研讨。运动矢量的导出方法例如具有以下2个方法。
[0068] 第1个运动矢量的导出方法是H.264直接模式,从已经编码(已经解码)数据中直接导出运动检测矢量(运动矢量),而不得到来自码列的信息。
[0069] 第2个运动矢量的导出方法是如下方法:通过在预测运动矢量p中加上从码列取得的差分运动矢量d,导出在帧间预测中使用的运动矢量v(运动矢量)(参照非专利文献1的(8-174)(8-175)式等)。另外,差分运动矢量d是运动矢量v与预测运动矢量p的差分矢量。
[0070] 这里,图1是说明H.264的第2个运动矢量的导出方法中的运动矢量v(mvLX)、预测运动矢量p(mvpLX)、差分运动矢量d(mvdLX)的关系的概念图。另外,在图1所示的例子中,按照第一成分(例如水平成分)和第二成分(例如垂直成分)进行运算。
[0071] 在解码时,通过按照不同成分执行以下的式1和式2的运算,对运动矢量mvLX进行复原。
[0072] 关于第一成分:mvLX[0]=mvpLX[0]+mvdLX[0]…(式1)
[0073] 关于第二成分:mvLX[1]=mvpLX[1]+mvdLX[1]…(式2)
[0074] 在编码时,首先,在编码效率的观点中,(与确定参照图像的refIdxLX一起)通过探索来决定运动矢量mvLX(mvLX[0],mvLX[1])。进而,为了求出运动检测矢量mvLX的复原所需要的信息即差分运动矢量mvdLX,进行以下的式3和式4所示的运算。
[0075] 关于第一成分:mvdLX[0]=mvLX[0]-mvpLX[0]…(式3)
[0076] 关于第二成分:mvdLX[1]=mvLX[1]-mvpLX[1]…(式4)
[0077] 在编码时,对通过上述运算而求出的2维的差分运动矢量mvdLX(mvdLX[0],mvdLX[1])进行编码。
[0078] 下面,根据图2~图5对比较例中的动态图像编码方法和动态图像编码装置进行说明。
[0079] [EX1:比较例中的动态图像编码装置的结构]
[0080] 图2是表示比较例中的动态图像编码装置的结构的一例的模块图。
[0081] 如图2所示,动态图像编码装置100具有差分部101、变换部102、量化部103、熵编码部110、逆量化部104、逆变换部105、加法部106、存储器109、帧内/帧间预测部107和编码控制部108。
[0082] 差分部101按照每个块从输入图像信号中减去预测图像信号,由此生成残差信号。差分部101将残差信号输出到变换部102。
[0083] 变换部102针对残差信号进行从图像区域到频率区域的变换。量化部103对变换为频率区域的残差信号进行量化处理。量化部103将量化处理后的残差信号即已量化残差信号输出到逆量化部104和熵编码部110。
[0084] 熵编码部110通过对已量化残差信号和解码控制信号等进行熵编码处理,生成已编码比特流。在解码控制信号中,例如包含有预测方向标志、图片类型信息和差分运动矢量d等的控制参数。
[0085] 逆量化部104对由量化部103进行量化处理后的已量化残差信号进行逆量化处理。逆变换部105对进行逆量化处理后的已量化残差信号(残差信号)进行从频率区域到图像区域的变换,输出已复原残差信号。
[0086] 加法部106按照每个编码对象块对已复原残差信号和预测图像信号进行相加,由此生成重构图像信号。
[0087] 在存储器109中,以帧单位保存重构图像信号。
[0088] 帧内/帧间预测部107以帧单位或块单位等的规定单位在存储器中蓄积重构图像信号。并且,帧内/帧间预测部107根据来自后述编码控制部108的指示,生成预测图像信号(根据重构图像信号和运动矢量导出的像素值)。帧内/帧间预测部107将所生成的预测图像信号输出到差分部101和加法部106。
[0089] 编码控制部108通过试行来决定利用哪个控制参数对图片(输入图像信号)进行编码。编码控制部108对帧内/帧间预测部107输出多个控制参数中的编码所需要的控制参数(编码控制信息)。更详细地讲,例如如图1中的虚线所示,编码控制部108取得已编码比特流,决定多个控制参数(例如帧间预测、帧内预测的区别等),以使得所取得的已编码比特流的比特长较短。
[0090] 并且,编码控制部108提取多个控制参数中的解码所需要的控制参数(解码控制信息),将其输出到熵编码部110。在解码控制信息中,例如具有pred_type、mvp_idx_lx、mvdLX等。按照每个编码块单位CU来设定pred_type,其对预测模式(prediction mode、帧间预测和帧内预测的区别)和编码块单位CU的区分的形成(partitioning type)进行规定。pred_type在后面详细叙述。mvp_idx_lx表示用于从候选列表中指定用作预测运动矢量的候选的预测运动矢量索引。如上所述,mvdLX表示差分运动矢量。
[0091] [EX2:比较例中的动态图像编码装置的处理动作]
[0092] 接着,根据图3和图4A对由上述动态图像编码装置100执行的动态图像编码方法进行说明。
[0093] 图3是表示由上述动态图像编码装置100执行的基于帧间预测编码的预测图像的生成方法(动态图像编码方法)的处理顺序的流程图。
[0094] 另外,以预测块单位PU进行预测图像的生成。这里,以预测块单位PU的尺寸小于编码块单位CU的情况为例进行说明。
[0095] 图4A是表示编码块单位CU与预测块单位PU的关系的图。在图4A中,实线框表示编码块单位CU,虚线框表示预测块单位PU。切片(slice)(图片)的类型为B。在图4A中,1个切片被分割为4个相等大小的块。右上方的块进一步被4分割。这些块是编码块单位CU。
[0096] 进而,在图4A中,针对各编码块单位CU,按照被称为Coding tree(编码树)的树层级的深度,以0、1、2、…的顺序赋予编号。该编号与编码的处理顺序对应。具体而言,对左上方、右上方、左下方、右下方的块标注CU0、CU10~CU13、CU2、CU3。
[0097] 图4B是针对图4A所示的编码块单位CU示出通过Coding tree syntax(编码树语法)而从码列求出的coding unit树与pred_type的关系的图。例如,能够根据图4C所示的表决定pred_type的意思。
[0098] 图4C是与pred_type的值有关的解释表。例如,在切片类型为P或B、pred_type的值为2的情况下,编码块单位CU的预测模式为MODE_INTER,该编码块单位CU的区分的形式为Nx2N。例如,相当于图4A的编码块单位CU12。并且,例如,在切片类型为P或B、pred_type的值为8的情况下,编码块单位CU的预测模式为MODE_INTRA,该编码块单位CU的区分的形式为2Nx2N。例如,相当于图4A的编码块单位CU0。
[0099] 下面,以编码对象块为CU12的情况为例进行说明。如上所述,编码对象块CU12的预测模式为MODE_INTER,在编码对象块CU12中包含有PU0和PU1这2个预测块单位PU(Nx2N)。另外,在图4B中,单点划线所包围的区域是具有在对编码对象块CU12的预测块单位PU0进行编码的时点已经是“available”的信息的区域。如图4B所示,在该比较例中,编码块单位CU2和CU3在进行编码对象块CU12的编码的时点不是“available”。
[0100] 参照图3,在步骤S200中,编码控制部108通过运动检测而导出预测对象块的运动矢量mvLX。
[0101] 在步骤S210中,编码控制部108生成当前的编码对象块(Curr_Blk)中包含的预测块单位(PU单位)的预测运动矢量的候选列表(mvpListLX)(mvpListLX生成步骤)。另外,以预测块单位PU生成候选列表mvpListLX。并且,针对各预测块单位PU,生成与预测方向0对应的候选列表mvpListL0和与预测方向1对应的候选列表mvpListL1这2个候选列表。
[0102] 图5是表示预测对象块(currentPU、当前的预测块单位PU)和相邻块的位置关系的图。在图5中,多个相邻块被分类为2个块群A和B(下面,在附图中,适当简称为“A群”和“B群”)。块群A包含在预测对象块的左侧相邻的相邻块A0和在预测对象块的左下方相邻的相邻块A1。块群B包含在预测对象块的左上方相邻的相邻块B2、在预测对象块的上侧相邻的相邻块B1、在预测对象块的右上方相邻的相邻块B0。
[0103] 另外,在图4A中,在编码块单位CU12中包含的预测块单位PU0为预测对象块的情况下,与相邻块A1对应的块是编码块单位CU0中包含的预测块单位PU3,与相邻块A0对应的块是编码块单位CU2中包含的预测块单位PU。
[0104] 参照图6A和图6B对由编码控制部108生成的预测运动矢量的候选列表进行说明。图6A是表示用于对预测方向0的预测运动矢量进行编码的候选列表mvpListL0的图。图6B是表示用于对预测方向1的预测运动矢量进行编码的候选列表mvpListL1的图。N是表示块群的指标。
[0105] 在图6A和图6B中,候选列表的尺寸为2,示出分别从图5所示的块群A和块群B中导出1个候选的情况。另外,并不是将未从块群A、B中导出候选的情况除外。候选列表的导出方法在后面详细叙述。
[0106] 再次参照图3,在步骤S230中,编码控制部108对mvpListLX进行更新处理(更新步骤)。作为更新处理,编码控制部108例如,进行条目的追加、列表中包含的候选的复制、候选的删除等。更新处理的规则在动态图像编码装置100和后述动态图像解码装置300中共用。
[0107] 在步骤S240中,编码控制部108针对各预测块单位PU决定包含mvp_idx_lx的值的编码控制信息(决定步骤)。
[0108] mvp_idx_lx是表示用于对预测方向X的运动矢量进行编码的预测运动矢量候选的预测运动矢量索引。这里,图7是表示预测运动矢量的候选列表mvpListLX的各候选、运动矢量mvLX、差分运动矢量mvdLX的关系的图。另外,在图7中,为了进行参考,记载了未决定为预测运动矢量mvpLX的mvpListLX[n_mvp_idx]。运动矢量mvLX是在步骤S200中由编码控制部108通过运动检测而求出的运动矢量。在本实施方式中,编码控制部108决定2个预测运动矢量候选中的、与运动矢量mvLX之差最小的预测运动矢量候选作为预测运动矢量。mvpListLX[mvp_idx]的mvp_idx的值被决定为索引mvp_idx_1X的值。
[0109] 在步骤S250中,帧内/帧间预测部107根据编码控制信息对各预测块单位PU进行帧内/帧间编码(预测步骤)。
[0110] [EX2-1:比较例中的候选列表mvpListLX的生成方法]
[0111] 接着,参照图8~图10B对预测运动矢量的候选列表mvpListLX的生成方法进行详细说明。
[0112] 图8是表示mvpListLX生成步骤S210的详细处理顺序的流程图。在进行以下处理之前,编码控制部108将各标志(availableLXA、isScaled、availableLXB等)初始化为0。
[0113] 首先,编码控制部108进行生成mvpListLX的第1个候选的处理(S400)。在步骤S400中,编码控制部108执行用于从块群A中包含的块A0、A1中导出候选的处理。另外,在块A0和A1双方使用帧内预测的情况下等,有时无法从块群A中导出候选。
[0114] 在步骤S410中,编码控制部108从块群A中检索具有不进行缩放处理(Scaling)也能够利用的运动矢量的块。在后面详细叙述。按照A0、A1的顺序进行检索。在检索成功的情况下,编码控制部108将标志availableLXA设置为1。并且,编码控制部108将检索到的块的运动矢量追加到候选列表mvpListLX中。
[0115] 在步骤S420中,编码控制部108判定availableLXA是否为0(检索是否失败)。
[0116] 在检索失败的情况下(S420:真),编码控制部108从块群A(A0、A1)中检索能够利用运动矢量的块。按照A0、A1的顺序进行检索。在检索成功的情况下,编码控制部108对检索到的块的运动矢量执行缩放处理,将缩放处理后的运动矢量追加到候选列表mvpListLx中。进而,编码控制部108将标志isScaled设定为1。标志isScaled是表示是否针对块群A进行了缩放处理的标志。缩放处理是对运动矢量进行放大/缩小的处理。另外,关于缩放处理,能够利用非专利文献2(参照8-130~134式)等。
[0117] 接着,编码控制部108进行生成mvpListLX的第2个候选的处理(S500)。在步骤S500中,编码控制部108执行用于从块群B(B0、B1、B2)中导出候选的处理。另外,在块B0、B1、B2全部使用帧内预测的情况下等,有时无法从块群B导出候选。
[0118] 详细地讲,在步骤S510中,编码控制部108从块群B中检索具有不进行缩放也能够利用的运动矢量的块。按照B0、B1、B2的顺序进行检索。在检索成功的情况下,编码控制部108将标志availableFlagLXB设置为1。并且,编码控制部108将检索到的块的运动矢量追加到候选列表mvpListLX中。
[0119] 在步骤S420中,编码控制部108判定是否是availableLXA==0、且availableLXB==0、且isScaled==0。
[0120] 在步骤S420的判定结果为True(真)的情况下,编码控制部108从块群B(B0、B1、B2)中检索能够利用运动矢量的块。按照B0、B1、B2的顺序进行检索。在检索成功的情况下,编码控制部108对检索到的块的运动矢量执行缩放处理,将缩放处理后的运动矢量追加到候选列表mvpListLx中。另外,关于缩放处理,例如能够利用非专利文献2(参照8-135~139式)等。
[0121] 另外,在步骤S420的判定中,判定在块群A中是否已经进行了缩放处理(isScaled==0)。其用于削减缩放处理的处理次数。由于缩放处理是负荷较大的处理,所以,期望削减处理次数。这里,设缩放处理的次数为1次。在块群A中进行了缩放处理的情况下,已经在候选列表中追加了有效候选,所以,不对块群B进行缩放处理。
[0122] <块群A(A0、A1)>
[0123] 首先,根据图9A对图8的步骤S410(从块群A中检索具有不进行缩放处理也能够利用的运动矢量的块的步骤)进行说明。图9A是表示图8的步骤S410的详细处理顺序的流程图。
[0124] 在图9A中,A[k](k=0,1)是表示块群A中包含的各块的值。具体而言,A[0]表示块A0,A[1]表示块A1。在图9A中,针对块A0和A1执行步骤S412~步骤S415的处理(步骤S411、S416)。
[0125] 在步骤S412中,编码控制部108判定包含A[k]的预测块单位PU的预测方向0的运动矢量是否是不进行缩放处理也能够利用的运动矢量。
[0126] 具体而言,编码控制部108判定包含A[k]的预测块单位PU是否与
[0127] (i)是“available”、且
[0128] (ii)不是MODE_INTRA、且
[0129] (iii)predFlagL0为1、且
[0130] (iv)refIdx与Current块的PU的refIdx相等(是否全部成立)。
[0131] 这里,(i)的“available”表示能够利用与A[k]对应的预测块单位PU。另外,“not available”表示与A[k]对应的预测块单位PU不能利用且未被编码。这里,成为“not available”的情况包括预测块单位PU不具有运动矢量等的信息的情况、例如位于图片或切片的边界外等的块的情况、还未编码的块的情况等。(ii)的MODE_INTRA表示帧内预测。在帧内预测的情况下,无法用作预测运动矢量的候选。(iii)的predFlagL0是表示是否使用预测方向0的预测运动矢量的标志,“1”的情况表示使用预测方向0的预测运动矢量。换言之,(iv)的判定是与A[k]对应的预测块单位PU的参照图片是否与编码(解码)对象块的参照图片相同的判定。这与是否具有不进行缩放也能够利用的运动矢量的判定等价。
[0132] 在步骤S412的判定结果不是true(真)的情况下(其他的情况下),进行步骤S413的判定。
[0133] 在步骤S413中,编码控制部108判定包含A[k]的预测块单位PU的预测方向1的运动矢量是否是不进行缩放处理也能够利用的运动矢量。这意味着,针对A[k]的预测方向1的运动数据,也进行与针对块A[k]的预测方向0的运动数据(运动矢量、参照索引、以下相同)进行的判定。
[0134] 在步骤S412的判定结果或步骤S413的判定结果为true(真)的情况下,换言之,在检索到不进行缩放处理也能够利用的运动矢量的情况下,编码控制部108在步骤S414中将availableFlagLXA设置为1,在步骤A307中不对块A[k]的mvLX进行缩放处理,直接将该值追加到候选列表mvpListLX中。然后,编码控制部108转移到步骤S416。
[0135] 另一方面,在步骤S413的判定结果不是true(真)的情况下(步骤S412和步骤S413双方的判定结果为其他的情况下),换言之,在未检索到不进行缩放处理也能够利用的运动矢量的情况下,编码控制部108转移到步骤S416。
[0136] 在步骤S416中,在availableFlagLXA==1或k==1的情况下,编码控制部108结束步骤S410的处理。
[0137] 接着,根据图9B对图8的步骤S430(对块群A的运动矢量进行缩放处理的步骤)的处理顺序进行说明。图9B是表示图8的步骤S430的详细处理顺序的流程图。在图9B中,对块A0和A1执行步骤S432~步骤S437的处理(步骤S431、S438)。
[0138] 在步骤S432中,编码控制部108判定包含A[k]的预测块单位PU的预测方向0的运动矢量是否是能够进行缩放处理的运动矢量。
[0139] 更详细地讲,编码控制部108进行步骤S412的(i)~(iv)的判定中的(i)~(iii)的判定。由于本处理是缩放的处理,所以不需要(iv)的条件。因此,编码控制部108判定包含A[k]的预测块单位PU是否是“(i)是“available”、且(ii)不是MODE_INTRA、且(iii)prefFlagL0为1”。
[0140] 在步骤S432的判定结果不是true(真)的情况下(其他的情况下),进行步骤S433的判定。
[0141] 在步骤S433中,编码控制部108判定包含A[k]的预测块单位PU的预测方向1的运动矢量是否是能够进行缩放处理的运动矢量。在步骤S433中,针对A[k]的预测方向1的运动数据,也执行步骤S432的针对运动数据进行的判定。
[0142] 在步骤S432的判定结果或步骤S433的判定结果为true(真)的情况下,换言之,在检索到能够进行缩放处理的运动矢量的情况下,编码控制部108取得用于导出缩放比的信息(refIdx、List等)(S434)。进而,编码控制部108在mvLXA中设定A[k]的运动矢量mvLX的值,在refIdxLX中设定A[k]的参照图片索引。
[0143] 在步骤S435中,编码控制部108导出缩放比,进行缩放处理。在步骤S436中,编码控制部108将表示在针对块群A的处理中进行了缩放处理的标志isScaled设置为1。在步骤S437中,编码控制部108将availableFlagLXA设置为1。然后,编码控制部108转移到步骤S438。
[0144] 另一方面,在步骤S433的判定结果不是true(真)的情况下(步骤S432和步骤S433双方的判定结果是其他的情况下),换言之,在未检索到能够进行缩放处理的运动矢量的情况下,编码控制部108转移到步骤S438。
[0145] 在步骤S438中,在availableFlagLXA==1或k==1的情况下,编码控制部108结束步骤S430的处理。
[0146] <块群B(B0、B1、B2)>
[0147] 首先,根据图10A对图8的步骤S510(从块群B中检索具有不进行缩放处理也能够利用的运动矢量的块的步骤)进行说明。图10A是表示图8的步骤S510的详细处理顺序的流程图。
[0148] 另外,除了处理对象块不同以外,图9A所示的处理和图10A所示的处理相同。在图9A中,处理对象块为A0、A1,与此相对,在图10A中,处理对象块为B0、B1、B2。图10A的步骤S512~S515分别对应于图9A的步骤S412~S415。
[0149] 接着,根据图10B对图8的步骤S530(对块群B的运动矢量进行缩放处理的步骤)的处理顺序进行说明。图10B是表示图8的步骤S530的详细处理顺序的流程图。
[0150] 另外,除了处理对象块不同、不进行步骤S436的isScaled标志的记录以外,图9B所示的处理和图10B所示的处理相同。在图9B中,处理对象块为A0、A1,与此相对,在图10B中,处理对象块为B0、B1、B2。图10B的步骤S532~S536分别对应于图9B的步骤S432~S435、S437。
[0151] [EX2-2:编码控制信息的决定]
[0152] 图11是表示图3的步骤S240的决定编码控制信息的步骤的详细处理顺序的流程图。在图3的步骤S240中,编码控制部108计算各预测运动矢量候选的编码效率,决定编码效率优良的预测运动矢量候选作为在帧间预测中使用的运动矢量。由此,决定一个在帧间预测中使用的mvp_idx_l0的值和mvp_idx_l1的值。
[0153] 详细地讲,在步骤S301中,编码控制部108在mvp_idx_l0中设置0。进而,编码控制部108在执行后述步骤S302~S308后,使mvp_idx_l0加1。编码控制部108反复执行步骤S302~S308。
[0154] 在步骤S302中,编码控制部108判定availableFlagL0[mvp_idx_l0]是否为1。
[0155] 在步骤S302中availableFlagL0[mvp_idx_l0]不是1的情况下(S302:假),编码控制部108转移到步骤S309。
[0156] 另一方面,在步骤S302中availableFlagL0[mvp_idx_l0]是1的情况下(S302:真),编码控制部108转移到步骤S303。
[0157] 在步骤S303中,编码控制部108在mvp_idx_l1中设置0。进而,编码控制部108在执行后述步骤S304和S305后,使mvp_idx_l1加1。编码控制部108反复执行步骤S304和S305。
[0158] 在步骤S304中,编码控制部108判定availableFlagL1[mvp_idx_l1]是否为1。
[0159] 在步骤S304中availableFlagL1[mvp_idx_l1]不是1的情况下(S304:假),编码控制部108转移到步骤S308。
[0160] 另一方面,在步骤S304中availableFlagL1[mvp_idx_l1]是1的情况下(S304:真),编码控制部108转移到步骤S305。
[0161] 在步骤S305中,编码控制部108使用当前的预测运动矢量索引的组(mvp_idx_l0、mvp_idx_l1)所示的预测运动矢量候选的组(mvpListL0[mvp_idx_l0]、mvpListL1[mvp_idx_l1])(以下适当称为“当前的预测运动矢量候选的组”),尝试进行帧间编码。
[0162] 在步骤S306中,编码控制部108对假设为mvp_idx_lx的预测运动矢量索引的组的值所示的预测运动矢量候选的组(mvpListL0[mvp_idx_l0]、mvpListL1[mvp_idx_l1])(以下适当称为“假设的预测运动矢量候选的组”)的编码效率和当前的预测运动矢量候选的组的编码效率进行比较。
[0163] 在步骤S306中假设的预测运动矢量候选的组的编码效率高于当前的预测运动矢量候选的组的编码效率的情况下(S306:否),编码控制部108转移到步骤S308。
[0164] 另一方面,在步骤S306中当前的预测运动矢量候选的组的编码效率高于假设的预测运动矢量候选的组的编码效率的情况下(S306:是),编码控制部108转移到步骤S307,在预测运动矢量索引的组mvp_idx_lx(mvp_idx_l0、mvp_idx_l1)中设定当前的(mvp_idx_l0、mvp_idx_l1)的值。另外,在预测运动矢量索引的组mvp_idx_lx(mvp_idx_l0、mvp_idx_l1)中未设定值的情况下,设定当前的(mvp_idx_l0、mvp_idx_l1)的值。
[0165] 在步骤S308中,编码控制部108判定mvpListL1[mvp_idx_l1]是否是候选列表的最后的候选(图11中记载为“mvp_idx_l1全部结束?”)。例如,在图6B所示的候选列表mvpListL1的情况下,由于候选列表的尺寸为2,所以,在mvp_idx_l1==1(=候选列表尺寸-1)的情况下,判定为是最后的候选。在判定为mvpListL1[mvp_idx_l1]不是候选列表的最后的候选的情况下,编码控制部108返回步骤S303,使mvp_idx_l1加1(S303)。
[0166] 另一方面,在步骤S308中判定为mvpListL1[mvp_idx_l1]是候选列表的最后的候选的情况下,编码控制部108转移到步骤S309。
[0167] 在步骤S309中,编码控制部108判定mvpListL0[mvp_idx_l0]是否是候选列表的最后的候选(图11中记载为“mvp_idx_l0全部结束?”)。例如,在图6A所示的候选列表mvpListL0的情况下,由于候选列表的尺寸为2,所以,在mvp_idx_l0==1(=候选列表尺寸-1)的情况下,判定为是最后的候选。在判定为mvpListL0[mvp_idx_l0]不是候选列表的最后的候选的情况下,编码控制部108返回步骤S301,使mvp_idx_l0加1(S301)。
[0168] 另一方面,在步骤S309中判定为mvpListL0[mvp_idx_l0]是候选列表的最后的候选的情况下,编码控制部108转移到步骤S310。
[0169] 在步骤S310中,编码控制部108决定mvp_idx_lx(mvp_idx_l0、mvp_idx_l1)作为预测运动矢量索引的组。
[0170] 下面,对图6A和图6B的情况进行简单说明。
[0171] 在执行第1个循环的步骤S301时,编码控制部108在mvp_idx_l0中设定0。在步骤S302中,如图6A所示,编码控制部108判定为availableFlagLXA为1,转移到步骤S303。
[0172] 在执行第1个循环的最初的步骤S303时,编码控制部108在mvp_idx_l1中设定0。在步骤S304中,如图6B所示,编码控制部108判定为availableFlagLXB为1,所以转移到步骤S305。
[0173] 在步骤S305中,编码控制部108使用当前的(mvpListL0[0]、mvpListL0[0])尝试进行帧间编码。在步骤S306中,由于过去未执行帧间编码的试行,所以编码控制部108转移到步骤S307,在mvp_idx_lx中设定(0,0)。
[0174] 在步骤S308中,如图6B所示,由于mvp_idx_l1仅为1个且全部结束,所以编码控制部108转移到步骤S309。在第1个循环的步骤S309中,如图6A所示,由于mvp_idx_l0取0和1这2个值,所以,编码控制部108判定为未全部结束,返回步骤S301,在mvp_idx_l0中设置1,开始第2个循环。
[0175] 在执行第2个循环的步骤S301时,编码控制部108在mvp_idx_l0中设定1。在步骤S302中,如图6A所示,编码控制部108判定为availableFlagLXB为1,转移到步骤S303。
[0176] 在执行第2个循环的最初的步骤S303时,编码控制部108在mvp_idx_l1中设定0。在步骤S304中,如图6B所示,编码控制部108判定为availableFlagLXB为1,所以转移到步骤S305。
[0177] 在步骤S305中,编码控制部108使用当前的(mvpListL0[1]、mvpListL0[0])尝试进行帧间编码。在步骤S306中,编码控制部108对过去尝试进行了帧间编码的(mvpListL0[0]、mvpListL0[0])的编码效率和当前的(mvpListL0[1]、mvpListL0[0])的编码效率进行比较。这里,当过去的(mvpListL0[0]、mvpListL0[0])的编码效率较高时,编码控制部108转移到步骤S308。
[0178] 在步骤S308中,如图6B所示,由于mvp_idx_l1仅为1个且全部结束,所以编码控制部108转移到步骤S309。在第2个循环的步骤S309中,如图6A所示,由于mvp_idx_l0取0和1这2个值,编码控制部108分别执行了处理,所以,判定为全部结束,转移到步骤S310。
[0179] 在步骤S310中,编码控制部108决定mvp_idx_lx中设定的(0,0)作为mvp_idx_lx的值的组。
[0180] [EX2-3:帧内/帧间编码]
[0181] 图12是表示图3的步骤S250的详细处理顺序的流程图。在图3的步骤S250中,使用编码控制部108求出的编码控制信息和解码控制信息等,执行输入图像信号所示的动态图像的帧内/帧间编码。
[0182] 详细地讲,在步骤S252中,帧内/帧间预测部107根据运动矢量mvLX生成编码对象块的预测图像,输出表示所生成的预测图像的预测图像信号。差分部101从输入图像信号中减去预测图像信号,生成残差信号。变换部102将残差信号从图像区域变换为频率区域,量化部103对变换为频率区域的残差信号进行量化,生成已量化残差信号。熵编码部110对已量化残差信号进行编码。
[0183] 在步骤S254中,熵编码部110对预测运动矢量索引的组mvp_idx_lx(mvp_idx_l0、mvp_idx_l1)进行编码。例如在EX2-2中说明的图6A和图6B的情况下,熵编码部110对mvp_idx_lx(0、0)进行编码。
[0184] 在步骤S256中,熵编码部110对差分运动矢量mvdLX进行编码。
[0185] 熵编码部110生成包含编码后的量化残差信号、预测运动矢量索引的组mvp_idx_lx(mvp_idx_l0、mvp_idx_l1)和差分运动矢量mvdLX的编码比特流并输出。
[0186] 图13是说明比较例中的mvpListLX生成处理(参照图8~图10B、EX2-1)的课题的图。
[0187] 图中,横向双线是并行处理记号,横向双线之间的处理是并行处理。
[0188] 如图13所示,在上述比较例中,通过并行进行从块群A中求出预测运动矢量候选的处理(图8的步骤S400)和从块群B中求出预测运动矢量候选的处理(图8的步骤S500),能够缩短处理时间。
[0189] 这里,在上述比较例中,如图13所示,在步骤S520中,将步骤S430中的S436中的是否在块群A中执行了缩放处理作为判定条件之一。
[0190] 这是因为,如上所述,由于设处理负荷较大的缩放处理为1次,所以,在块群A中已经执行了缩放处理的情况下,在块群B中不执行缩放处理。
[0191] 因此,在上述比较例中,存在如下问题:在针对块群B的处理即步骤S500中,为了执行步骤S520的处理,需要等待针对块群A的处理即步骤S400(特别是S436)结束。
[0192] 在此,本发明的一个方式的动态图像解码方法,使用对比特流中包含的作为解码对象的预测块单位的运动矢量进行解码时使用的预测运动矢量,对作为解码对象的所述预测块单位进行解码,其中,该动态图像解码方法包括以下步骤:候选取得步骤,取得作为所述预测运动矢量的候选的1个或多个预测运动矢量候选;解码步骤,对所述比特流中附加的已编码的索引、即用于从所述1个或多个预测运动矢量候选中确定所述预测运动矢量候选的索引进行解码;以及选择步骤,根据已解码的索引,从所述预测运动矢量候选中选择在作为解码对象的所述预测块单位的解码中使用的所述预测运动矢量,所述候选取得步骤具有以下步骤:第一候选生成步骤,根据作为解码对象的所述预测块单位的左侧相邻的多个第一相邻预测块单位的多个运动矢量生成所述预测运动矢量候选;以及第二候选生成步骤,根据作为解码对象的所述预测块单位的上侧相邻的多个第二相邻预测块单位的多个运动矢量生成所述预测运动矢量候选,所述第二候选生成步骤具有以下步骤:判定步骤,判定所述多个第一相邻预测块单位中是否包含进行了帧间预测的编码块单位所包含的相邻预测块单位;以及缩放步骤,只有在所述判定步骤中判定为所述多个第一相邻预测块单位中不包含进行了帧间预测的编码块单位所包含的相邻预测块单位的情况下,从所述多个第二相邻预测块单位的多个运动矢量中检索通过缩放处理而能够利用的运动矢量,在检索到运动矢量的情况下,通过对检索到的所述运动矢量执行缩放处理,生成所述预测运动矢量候选。
[0193] 另外,这些全部或具体的方式可以通过系统、方法、集成电路、计算机程序或计算机可读取的CD-ROM等的记录介质来实现,也可以通过系统、方法、集成电路、计算机程序或记录介质的任意组合来实现。
[0194] 下面,参照附图对本发明的一个方式的动态图像编码装置和动态图像解码装置进行具体说明。
[0195] 另外,以下说明的实施方式均示出本发明的一个具体例。以下实施方式所示的数值、形状、材料、结构要素、结构要素的配置位置和连接方式、步骤、步骤的顺序等是一例,并不是限定本发明的主旨。并且,关于以下实施方式的结构要素中的、未记载于示出最上位概念的独立权利要求中的结构要素,作为任意的结构要素进行说明。
[0196] (实施方式1)
[0197] 根据图14对本实施方式的动态图像编码装置和动态图像编码方法进行说明。
[0198] 另外,本实施方式的动态图像编码装置的结构与图2所示的比较例的动态图像编码装置100的结构相同。
[0199] 并且,在本实施方式中,为了进行说明,以编码块单位CU与预测块单位PU之间的关系和图4A所示的比较例中的编码块单位CU与预测块单位PU之间的关系相同的情况为例进行说明。
[0200] [1-1:实施方式1中的动态图像编码方法]
[0201] 根据图14对本实施方式中的动态图像编码装置100的处理动作(动态图像编码方法)进行说明。图6是说明本实施方式中的动态图像编码装置100的处理顺序的图。
[0202] 另外,在图14中,针对块群A的步骤S410和步骤S430、针对块群B的步骤S510和步骤S530的处理与上述比较例中的处理相同(参照图8~图10B)。
[0203] 另外,与比较例同样,以预测块单位PU进行本实施方式中的预测图像的生成。并且,在本实施方式中,与比较例同样,以预测块单位PU的尺寸小于编码块单位CU的情况为例进行说明。并且,本实施方式中的编码块单位CU与预测块单位PU之间的关系和图4A~图4C所示的比较例中的编码块单位CU与预测块单位PU之间的关系相同。
[0204] 图14所示的本实施方式的动态图像编码方法相对于图13所示的比较例,代替步骤S520的判定处理而执行步骤S620的判定处理。
[0205] 详细地讲,如图14所示,在步骤S400中,编码控制部108执行从块群A中检索不进行缩放处理也能够利用的运动矢量的处理(S410),在未检索到不进行缩放处理也能够利用的运动矢量的情况下(S420:真),对块群A中包含的块执行缩放处理(S430)。
[0206] 进而,如图14所示,与上述步骤S400并行地,编码控制部108执行步骤S600。在步骤S600中,首先,编码控制部108执行从块群B中检索不进行缩放处理也能够利用的运动矢量的处理(S510)。
[0207] 在步骤S620中,编码控制部108进行(1)是否是availableFlavLXB==0的判定(图14中未进行表记)、以及(2)是否是“块群A中的任意一个块(A0、A1)是INTER块”的判定。换言之,在步骤S620中,在(1)availableFlavLXB==0、且块群A中包含预测模式为MODE_INTER的块的情况下,判定为真。
[0208] 如果判定的结果为(1)availableFlavLXB==0、且A0(图5的左下方的块)或A1(图5的左方的块)为MODE_INTER(S620:真),则编码控制部108不执行S530的处理(针对块群B的缩放处理),结束步骤S600。
[0209] 这是基于如下考虑:由于认为“在预测对象块的左侧相邻的块群A中的任意一方在MODE_INTER的时点使用缩放处理的可能性大”,所以,在块群A中的任意一方为MODE_INTER的情况下,不对块群B进行缩放处理。
[0210] 这样,在步骤S620中,不使用步骤S400的处理结果。即,步骤S400和步骤S600并不相互依赖。由此,在动态图像编码装置100中,能够并行地执行针对块群A的处理即步骤S400和针对块群B的处理即步骤600,不会增大处理负荷(不会增大缩放处理的处理次数),能够提高处理速度。
[0211] (实施方式2)
[0212] 根据图15对本实施方式的动态图像解码装置和动态图像解码方法进行说明。本实施方式的动态图像解码装置从实施方式1的动态图像编码装置100受理编码比特流,对编码比特流进行解码,生成已解码图像信号,按照显示顺序进行输出。
[0213] [2-1:实施方式2中的动态图像解码装置的结构]
[0214] 根据图15对本实施方式中的动态图像解码装置300的结构进行说明。图15是表示动态图像解码装置300的结构的模块图。
[0215] 如图15所示,动态图像解码装置300具有熵解码部301、逆量化部302、逆变换部303、加法部304、帧内/帧间预测部305、解码控制部306和存储器307。
[0216] 熵解码部301对所输入的编码比特流进行可变长度解码处理,生成已量化残差信号(量化系数)、图片类型信息、预测方向标志和差分运动矢量mvdLX。并且,熵解码部301进行预测运动矢量索引的可变长度解码处理。进而,熵解码部301对后述解码控制部306输出解码控制信息。这里,在解码控制信息中包含有预测运动矢量索引mvp_idx_lx(mvp_idx_l0,mvp_idx_l1)和差分运动矢量mvdLX(mvdL0,mvdL1)。
[0217] 逆量化部302对通过可变长度解码处理而得到的量化系数(已量化残差信号)进行逆量化处理。逆变换部303将通过逆量化处理而得到的变换系数从频率区域变换为图像区域,由此输出已复原残差信号(预测误差数据)。
[0218] 在存储器307中,以块单位和帧单位保存从后述加法部304输出的解码图像信号所示的解码图像数据。
[0219] 帧内/帧间预测部305通过使用存储器307中保存的帧单位的解码图像数据进行帧间预测、或者使用块单位的解码图像数据进行帧内预测,生成解码对象块的预测图像信号。
[0220] 解码控制部306导出预测运动矢量候选列表mvpListL0、L1,根据预测运动矢量索引(mvp_idx_l0,mvp_idx_l1),从导出的预测运动矢量候选列表中选择在帧间预测中使用的预测运动矢量mvLX。进而,解码控制部306使用预测运动矢量mvpLX和差分运动矢量mvdLX(mvdL0,mvdL1)计算解码对象块的运动矢量mvLX。然后,在预测对象块为MODE_INTER的情况下,解码控制部306使用计算出的运动矢量mvLX,使帧内/帧间预测部305生成帧间预测图像。
[0221] 最后,加法部304通过对已复原残差信号和预测图像信号进行相加,生成解码图像信号。
[0222] [2-2:实施方式2中的动态图像解码方法]
[0223] 根据图16对本实施方式中的动态图像解码装置300的处理动作(动态图像解码方法)进行说明。图16是表示本实施方式中的动态图像解码方法的处理顺序的流程图。
[0224] 另外,在本实施方式中,与实施方式1同样,以预测块单位PU进行预测图像的生成。在本实施方式中,与实施方式1同样,以预测块单位PU的尺寸小于编码块单位CU的情况为例进行说明。并且,本实施方式中的编码块单位CU与预测块单位PU之间的关系与图4A所示的比较例相同。
[0225] 下面,以解码对象块为CU12的情况为例进行说明。如图4B和图4C所示,解码对象块CU12的预测模式为MODE_INTER,在解码对象块CU12中包含有PU0和PU1这2个预测块单位PU(Nx2N)。另外,如比较例中说明的那样,在图4B中,单点划线所包围的区域是具有在对编码对象块CU12的预测块单位PU0进行编码的时点已经是“available”的信息的区域。如图4B所示,在该比较例中,编码块单位CU2和CU3在进行编码对象块CU12的编码的时点不是“available”。
[0226] 参照图16,在步骤S1010中,解码控制部306进行生成预测运动矢量的候选列表mvpListX的处理。该处理对应于实施方式1(比较例1)的动态图像编码装置100的图3所示的步骤S210的mvpListX生成处理。更详细地讲,在后面详细叙述,但是,解码控制部306进行与由动态图像编码装置100执行的图14所示的处理相同的处理。
[0227] 在步骤S1020中,解码控制部306对mvpListLX进行更新处理(更新步骤)。该处理对应于实施方式1(比较例1)的动态图像编码装置100的图3所示的步骤S230的更新处理。
[0228] 在步骤S1030中,熵解码部301从编码比特流中提取预测运动矢量索引mvp_idx_lx。
[0229] 在步骤S1040中,熵解码部301从编码比特流中提取差分运动矢量mvdLX。
[0230] 在步骤S1050中,解码控制部306对预测方向X的运动矢量进行复原。具体而言,解码控制部306使用熵解码部301提取出的预测运动矢量索引mvp_idx_lx,从步骤S1020中生成的预测运动矢量的候选列表mvpListX中确定预测运动矢量mvpListX[mvp_idx_lx]。如式1所示,解码控制部306对差分运动矢量mvdLX和预测运动矢量mvpListX[mvp_idx_lx]进行相加,求出运动矢量mvLX。
[0231] mvLX=mvpListLX[mvp_idx_lx]+mvdLX…(式1)
[0232] 在步骤S1060中,动态图像解码装置300使用帧内/帧间预测部305中被复原的运动矢量mvLX生成预测图像信号,通过在加法部304中对已复原残差信号和预测图像信号进行相加,生成解码图像信号。
[0233] 图17是表示图16的步骤S1010的mvpListLX生成步骤的详细处理顺序的流程图。
[0234] 在步骤S400中,解码控制部306生成块群A(A0、A1)条目。具体而言,在步骤S401中,解码控制部306从块群A(A0、A1)中检索不进行缩放处理也能够利用的运动矢量。在未检索到不进行缩放处理也能够利用的运动矢量的情况下(S420:真),解码控制部306检索能够利用的运动矢量,对检索到的运动矢量进行缩放处理(S430)。另外,步骤S400的处理是与动态图像编码装置100的编码控制部108进行的步骤S400相同的处理。
[0235] 在步骤S800中,解码控制部306根据块群B(B0、B1、B2)生成条目。
[0236] 详细地讲,在步骤S510中,解码控制部306从块群B(B0、B1、B2)中检索不进行缩放处理也能够利用的运动矢量。该步骤S510的处理是与动态图像编码装置100的编码控制部108进行的步骤S510相同的处理。
[0237] 在步骤S820中,解码控制部306判定是否是availableFlavLXB==0、且块群A中的任意一个块为MODE_INTER。更详细地讲,在并行(时序)执行步骤S400和步骤S800的情况下,解码控制部306判定在步骤S510的步骤中是否是availableFlag不成立的状态(availableFlagLXB为0)、且切换为isScaled判定的判定条件“A块群中的任意一个块A0、A1等中的任意一方为MODE_INTER”返回“真”。
[0238] 在availableFlavLXB==0、且块群A中的任意一个块为MODE_INTER的情况下(S820:真),解码控制部306不进行缩放处理,结束mvpListLX生成步骤。
[0239] 在availableFlavLXB==0、且块群A中的任意一个块不是MODE_INTER的情况下(S820:假),解码控制部306检索能够利用的运动矢量,对检索到的运动矢量进行缩放处理(S530)。该步骤S530的处理是与动态图像编码装置100的编码控制部108进行的步骤S530相同的处理。
[0240] 图18是以时序表示步骤S1010的mvpListLX生成步骤的图。另外,图18的各步骤(S410、S420、S430、S510、S820、S530)与图17的各步骤(S410、S420、S430、S510、S820、S530)相同。
[0241] 根据图18可知,在本实施方式的动态图像解码装置300中,针对块群B的处理中进行的步骤S820的判定内容不依赖于针对块群A的步骤S1010的处理的结果。因此,能够并行执行
[0242] ·S400:基于A块群(A0、A1)的条目的生成、
[0243] ·S800:基于B块群(A0、A1)的条目的生成。
[0244] [判定例1(动态图像编码装置100和动态图像解码装置300相同)]
[0245] 图19是说明预测对象块(编码对象块、解码对象块)为PU0的情况下(参照图4A)的图14的步骤S620和图18的步骤S820的判定结果的图。如上所述,在图14的步骤S620和图18的步骤S820中,判定A块群中的任意一个块A0、A1是否是INTER块。
[0246] 在图19的情况下,相邻块A0为not available,不是MODE_INTER。并且,相邻块A1为available,但是,是MODE_INTRA,不是MODE_INTER。
[0247] 因此,在图19的情况下,由于相邻块A0和A0双方不是MODE_INTER,所以,在上述判定步骤中判定为“假”。
[0248] [判定例2(动态图像编码装置100和动态图像解码装置300相同)]
[0249] 图20是说明预测对象块为PU1的情况下的图14的步骤S620和图18的步骤S820的判定结果的图。
[0250] 在图20的情况下,相邻块A0为CU3,依然是not available。并且,相邻块A1是MODE_INTER。
[0251] 因此,在图20的情况下,由于相邻块A1是MODE_INTER,所以,在上述判定步骤中判定为“真”。
[0252] (效果等)
[0253] 根据实施方式1的动态图像编码方法和编码装置、实施方式2的动态图像解码方法和动态图像解码装置,在生成mvpListLX后(图14的步骤S620、图18的步骤S820),在块群B中是否进行缩放处理的判定中,能够削减在块群A中是否进行了缩放运算等的判定。换言之,编码控制部108和解码控制部306不使用针对块群A的处理结果,就能够判定在块群B中是否进行缩放处理。
[0254] 并且,在生成候选列表mvpListLX之前,如果仅判定块群A是否是INTER,则能够在块群A和块群B中并行进行预测运动矢量候选的计算(图14、图18)。
[0255] 另外,在步骤S620和步骤S820中,判定了块群A中的任意一个块A0、A1的预测模式是否是MODE_INTER,但是不限于此。在步骤S620和步骤S820中,例如,也可以判定是否不符合(1)是MODE_INTRA的块、(2)是切片/图片边界的块、(3)是未处理块(未编码块或未解码块)中的任意一方。
[0256] 并且,在实施方式1和实施方式2中,在执行步骤S510之后执行步骤S620和步骤S820,但是不限于此。例如,如图21所示,也可以在执行并行处理之前、即执行步骤S410和步骤S510之前,作为步骤S840来执行步骤S620和步骤S820。另外,判定的顺序(AND运算、OR运算的顺序)不限于上述实施方式1和实施方式2,判定结果相等的逻辑运算的顺序均包含在本发明内。
[0257] 如上所述,根据实施方式1的动态图像编码方法和实施方式2的动态图像解码方法,在步骤S620和步骤S820中,不使用针对块群A的处理结果,就能够执行针对块群B的处理,能够并行执行针对块群A的处理和针对块群B的处理。
[0258] (实施方式3)
[0259] 图23是说明实施方式1的动态图像编码方法和实施方式2的动态图像解码方法的其他实施方式的流程图。
[0260] 在实施方式1和实施方式2中,根据块群A中的任意一个块(A0、A1)是否是INTER块的判定结果,在针对块群B的处理中,判定是否许可缩放处理,但是,在本实施方式中,全面禁止针对块群B的缩放处理。
[0261] 这样,通过不进行步骤S620、步骤S820和步骤S530,也能够消除依赖关系。
[0262] (实施方式4)
[0263] 通过将用来实现上述各实施方式所示的动态图像编码方法或动态图像解码方法的结构的程序记录到存储介质中,能够将上述各实施方式所示的处理在独立的计算机系统中简单地实施。存储介质是磁盘、光盘、光磁盘、IC卡、半导体存储器等,只要是能够记录程序的介质就可以。
[0264] 进而,这里说明在上述各实施方式中示出的动态图像编码方法(图像编码方法)及动态图像解码方法(图像解码方法)的应用例和使用它的系统。该系统的特征在于,具有由使用图像编码方法的图像编码装置及使用图像解码方法的图像解码装置构成的图像编码解码装置。关于系统的其他结构,可以根据情况而适当变更。
[0265] 图24是表示实现内容分发服务的内容供给系统ex100的整体结构的图。将通信服务的提供区划分为希望的大小,在各小区内分别设置有作为固定无线站的基站ex106、ex107、ex108、ex109、ex110。
[0266] 该内容供给系统ex100在因特网ex101上经由因特网服务提供商ex102及电话网ex104、及基站ex107~ex110连接着计算机ex111、PDA(Personal Digital Assistant)ex112、照相机ex113、便携电话ex114、游戏机ex115等的各设备。
[0267] 但是,内容供给系统ex100并不限定于图24那样的结构,也可以将某些要素组合连接。此外,也可以不经由作为固定无线站的基站ex107~ex110将各设备直接连接在电话网ex104上。此外,也可以将各设备经由近距离无线等直接相互连接。
[0268] 照相机ex113是能够进行数字摄像机等的动态图像摄影的设备,照相机ex116是能够进行数字照相机等的静止图像摄影、动态图像摄影的设备。此外,便携电话ex114是GSM(Global System for Mobile Communications)方式、CDMA(Code Division Multiple Access)方式、W-CDMA(Wideband-Code Division Multiple Access)方式、或LTE(Long Term Evolution)方式、HSPA(High Speed Packet Access)的便携电话机、或PHS(Personal Handyphone System)等,是哪种都可以。
[0269] 在内容供给系统ex100中,通过将照相机ex113等经由基站ex109、电话网ex104连接在流媒体服务器ex103上,能够进行现场分发等。在现场分发中,对用户使用照相机ex113摄影的内容(例如音乐会现场的影像等)如在上述各实施方式中说明那样进行编码处理(即,作为本发明的一个方式的图像编码装置发挥作用),向流媒体服务器ex103发送。另一方面,流媒体服务器ex103将发送来的内容数据对有请求的客户端进行流分发。作为客户端,有能够将上述编码处理后的数据解码的计算机ex111、PDAex112、照相机ex113、便携电话ex114、游戏机ex115等。在接收到分发的数据的各设备中,将接收到的数据解码处理而再现(即,作为本发明的一个方式的图像解码装置发挥作用)。
[0270] 另外,摄影的数据的编码处理既可以由照相机ex113进行,也可以由进行数据的发送处理的流媒体服务器ex103进行,也可以相互分担进行。同样,分发的数据的解码处理既可以由客户端进行,也可以由流媒体服务器ex103进行,也可以相互分担进行。此外,并不限于照相机ex113,也可以将由照相机ex116摄影的静止图像及/或动态图像数据经由计算机ex111向流媒体服务器ex103发送。此情况下的编码处理由照相机ex116、计算机ex111、流媒体服务器ex103的哪个进行都可以,也可以相互分担进行。
[0271] 此外,这些编码解码处理一般在计算机ex111或各设备具有的LSIex500中处理。LSIex500既可以是单芯片,也可以是由多个芯片构成的结构。另外,也可以将动态图像编码解码用的软件装入到能够由计算机ex111等读取的某些记录介质(CD-ROM、软盘、硬盘等)中、使用该软件进行编码解码处理。进而,在便携电话ex114是带有照相机的情况下,也可以将由该照相机取得的动态图像数据发送。此时的动态图像数据是由便携电话ex114具有的LSIex500编码处理的数据。
[0272] 此外,也可以是,流媒体服务器ex103是多个服务器或多个计算机,是将数据分散处理、记录、及分发的。
[0273] 如以上这样,在内容供给系统ex100中,客户端能够接收编码的数据而再现。这样,在内容供给系统ex100中,客户端能够将用户发送的信息实时地接收、解码、再现,即使是没有特别的权利或设备的用户也能够实现个人广播。
[0274] 另外,并不限定于内容供给系统ex100的例子,如图25所示,在数字广播用系统ex200中也能够装入上述实施方式的至少动态图像编码装置(图像编码装置)或动态图像解码装置(图像解码装置)的某个。具体而言,在广播站ex201中,将对影像数据复用了音乐数据等而得到的复用数据经由电波向通信或广播卫星ex202传送。该影像数据是通过上述各实施方式中说明的动态图像编码方法编码后的数据(即,通过本发明的一个方式的图像编码装置编码后的数据)。接受到该数据的广播卫星ex202发出广播用的电波,能够对该电波进行卫星广播接收的家庭的天线ex204接收该电波,通过电视机(接收机)ex300或机顶盒(STB)ex217等的装置将接收到的复用数据解码并将其再现(即,作为本发明的一个方式的图像解码装置发挥作用)。
[0275] 此外,可以在将记录在DVD、BD等的记录介质ex215中的复用数据读取并解码、或将影像数据编码再根据情况与音乐信号复用而写入记录介质ex215中的读取器/记录器ex218中也能够安装上述各实施方式所示的动态图像解码装置或动态图像编码装置。在此情况下,可以将再现的影像信号显示在监视器ex219上,通过记录有复用数据的记录介质ex215在其他装置或系统中能够再现影像信号。此外,也可以在连接在有线电视用的线缆ex203或卫星/地面波广播的天线ex204上的机顶盒ex217内安装动态图像解码装置,将其用电视机的监视器ex219显示。此时,也可以不是在机顶盒、而在电视机内装入动态图像解码装置。
[0276] 图26是表示使用在上述各实施方式中说明的动态图像解码方法及动态图像编码方法的电视机(接收机)ex300的图。电视机ex300具备经由接收上述广播的天线ex204或线缆ex203等取得或者输出对影像数据复用了声音数据的复用数据的调谐器ex301、将接收到的复用数据解调或调制为向外部发送的编码数据的调制/解调部ex302、和将解调后的复用数据分离为影像数据、声音数据或将在信号处理不ex306中编码的影像数据、声音数据复用的复用/分离部ex303。
[0277] 此外,电视机ex300具备:具有将声音数据、影像数据分别解码、或将各自的信息编码的声音信号处理部ex304和影像信号处理部ex305(即,作为本发明的一个方式的图像编码装置或图像解码装置发挥作用)的信号处理部ex306;具有将解码后的声音信号输出的扬声器ex307及显示解码后的影像信号的显示器等的显示部ex308的输出部ex309。进而,电视机ex300具备具有受理用户操作的输入的操作输入部ex312等的接口部ex317。进而,电视机ex300具有合并控制各部的控制部ex310、对各部供给电力的电源电路部ex311。接口部ex317也可以除了操作输入部ex312以外,还具有与读取器/记录器ex218等的外部设备连接的桥接部ex313、用来能够安装SD卡等的记录介质ex216的插槽部ex314、用来与硬盘等的外部记录介质连接的驱动器ex315、与电话网连接的调制解调器ex316等。另外,记录介质ex216是能够通过收存的非易失性/易失性的半导体存储元件电气地进行信息的记录的结构。电视机ex300的各部经由同步总线相互连接。
[0278] 首先,对电视机ex300将通过天线ex204等从外部取得的复用数据解码、再现的结构进行说明。电视机ex300接受来自遥控器ex220等的用户操作,基于具有CPU等的控制部ex310的控制,将由调制/解调部ex302解调的复用数据用复用/分离部ex303分离。进而,电视机ex300将分离的声音数据用声音信号处理部ex304解码,将分离的影像数据用影像信号处理部ex305使用在上述各实施方式中说明的解码方法解码。将解码后的声音信号、影像信号分别从输出部ex309朝向外部输出。在输出时,可以暂时将这些信号储存到缓冲器ex318、ex319等中,以使声音信号和影像信号同步再现。此外,电视机ex300也可以不是从广播等、而从磁/光盘、SD卡等的记录介质ex215、ex216读出编码的复用数据。接着,对电视机ex300将声音信号或影像信号编码、向外部发送或写入到记录介质等中的结构进行说明。电视机ex300接受来自遥控器ex220等的用户操作,基于控制部ex310的控制,由声音信号处理部ex304将声音信号编码,由影像信号处理部ex305将影像信号使用在上述各实施方式中说明的编码方法编码。将编码后的声音信号、影像信号用复用/分离部ex303复用,向外部输出。在复用时,可以暂时将这些信号储存到缓冲器ex320、ex321等中,以使声音信号和影像信号同步再现。另外,缓冲器ex318、ex319、ex320、ex321既可以如图示那样具备多个,也可以是共用一个以上的缓冲器的结构。进而,在图示以外,也可以在例如调制/解调部ex302或复用/分离部ex303之间等也作为避免系统的上溢、下溢的缓冲部而在缓冲器中储存数据。
[0279] 此外,电视机ex300除了从广播等或记录介质等取得声音数据、影像数据以外,也可以具备受理麦克风或照相机的AV输入的结构,对从它们中取得的数据进行编码处理。另外,这里,将电视机ex300作为能够进行上述编码处理、复用、及外部输出的结构进行了说明,但也可以不能进行这些处理,而是仅能够进行上述接收、解码处理、外部输出的结构。
[0280] 此外,在由读取器/记录器ex218从记录介质将复用数据读出、或写入的情况下,上述解码处理或编码处理由电视机ex300、读取器/记录器ex218的哪个进行都可以,也可以是电视机ex300和读取器/记录器ex218相互分担进行。
[0281] 作为一例,将从光盘进行数据的读入或写入的情况下的信息再现/记录部ex400的结构表示在图27中。信息再现/记录部ex400具备以下说明的单元ex401、ex402、ex403、ex404、ex405、ex406、ex407。光头ex401对作为光盘的记录介质ex215的记录面照射激光斑而写入信息,检测来自记录介质ex215的记录面的反射光而读入信息。调制记录部ex402电气地驱动内置在光头ex401中的半导体激光器,根据记录数据进行激光的调制。再现解调部ex403将由内置在光头ex401中的光检测器电气地检测到来自记录面的反射光而得到的再现信号放大,将记录在记录介质ex215中的信号成分分离并解调,再现所需要的信息。缓冲器ex404将用来记录到记录介质ex215中的信息及从记录介质ex215再现的信息暂时保持。盘马达ex405使记录介质ex215旋转。伺服控制部ex406一边控制盘马达ex405的旋转驱动一边使光头ex401移动到规定的信息轨道,进行激光斑的追踪处理。系统控制部ex407进行信息再现/记录部ex400整体的控制。上述的读出及写入的处理由系统控制部ex407利用保持在缓冲器ex404中的各种信息、此外根据需要而进行新的信息的生成、追加、并且一边使调制记录部ex402、再现解调部ex403、伺服控制部ex406协调动作、一边通过光头ex401进行信息的记录再现来实现。系统控制部ex407例如由微处理器构成,通过执行读出写入的程序来执行它们的处理。
[0282] 以上,假设光头ex401照射激光斑而进行了说明,但也可以是使用接近场光进行高密度的记录的结构。
[0283] 在图28中表示作为光盘的记录介质ex215的示意图。在记录介质ex215的记录面上,以螺旋状形成有导引槽(沟),在信息轨道ex230中,预先通过沟的形状的变化而记录有表示盘上的绝对位置的地址信息。该地址信息包括用来确定作为记录数据的单位的记录块ex231的位置的信息,通过在进行记录及再现的装置中将信息轨道ex230再现而读取地址信息,能够确定记录块。此外,记录介质ex215包括数据记录区域ex233、内周区域ex232、外周区域ex234。为了记录用户数据而使用的区域是数据记录区域ex233,配置在比数据记录区域ex233靠内周或外周的内周区域ex232和外周区域ex234用于用户数据的记录以外的特定用途。信息再现/记录部ex400对这样的记录介质ex215的数据记录区域ex233进行编码的声音数据、影像数据或复用了这些数据的编码数据的读写。
[0284] 以上,举1层的DVD、BD等的光盘为例进行了说明,但并不限定于这些,也可以是多层构造、在表面以外也能够记录的光盘。此外,也可以是在盘的相同的地方使用不同波长的颜色的光记录信息、或从各种角度记录不同的信息的层等、进行多维的记录/再现的构造的光盘。
[0285] 此外,在数字广播用系统ex200中,也可以由具有天线ex205的车ex210从卫星ex202等接收数据、在车ex210具有的导航仪ex211等的显示装置上再现动态图像。另外,导航仪ex211的结构可以考虑例如在图26所示的结构中添加GPS接收部的结构,在计算机ex111及便携电话ex114等中也可以考虑同样的结构。
[0286] 图29A是表示使用在上述实施方式中说明的动态图像解码方法和动态图像编码方法的便携电话ex114的图。便携电话ex114具有由用来在与基站ex110之间收发电波的天线ex350、能够拍摄影像、静止图像的照相机部ex365、显示将由照相机部ex365摄影的影像、由天线ex350接收到的影像等解码后的数据的液晶显示器等的显示部ex358。便携电话ex114还具有包含操作键部ex366的主体部、用来进行声音输出的扬声器等的声音输出部ex357、用来进行声音输入的麦克风等的声音输入部ex356、保存拍摄到的影像、静止图像、录音的声音、或者接收到的影像、静止图像、邮件等的编码后的数据或者解码后的数据的存储器部ex367、或者作为与同样保存数据的记录介质之间的接口部的插槽部ex364。
[0287] 进而,使用图29B对便携电话ex114的结构例进行说明。便携电话ex114对于合并控制具备显示部ex358及操作键部ex366的主体部的各部的主控制部ex360,将电源电路部ex361、操作输入控制部ex362、影像信号处理部ex355、照相机接口部ex363、LCD(Liquid Crystal Display:液晶显示器)控制部ex359、调制/解调部ex352、复用/分离部ex353、声音信号处理部ex354、插槽部ex364、存储器部ex367经由总线ex370相互连接。
[0288] 电源电路部ex361如果通过用户的操作使通话结束及电源键成为开启状态,则通过从电池组对各部供给电力,便携电话ex114起动为能够动作的状态。
[0289] 便携电话ex114基于具有CPU、ROM及RAM等的主控制部ex360的控制,在语音通话模式时,将由声音输入部ex356集音的声音信号通过声音信号处理部ex354变换为数字声音信号,将其用调制/解调部ex352进行波谱扩散处理,由发送/接收部ex351实施数字模拟变换处理及频率变换处理后经由天线ex350发送。此外,便携电话ex114在语音通话模式时,将由天线ex350接收到的接收数据放大并实施频率变换处理及模拟数字变换处理,用调制/解调部ex352进行波谱逆扩散处理,通过声音信号处理部ex354变换为模拟声音数据后,将其经由声音输出部ex357输出。
[0290] 进而,在数据通信模式时发送电子邮件的情况下,将通过主体部的操作键部ex366等的操作输入的电子邮件的文本数据经由操作输入控制部ex362向主控制部ex360送出。主控制部ex360将文本数据用调制/解调部ex352进行波谱扩散处理,由发送/接收部ex351实施数字模拟变换处理及频率变换处理后,经由天线ex350向基站ex110发送。在接收电子邮件的情况下,对接收到的数据执行上述处理的大致逆处理,并输出到显示部ex350。
[0291] 在数据通信模式时,在发送影像、静止图像、或者影像和声音的情况下,影像信号处理部ex355将从照相机部ex365供给的影像信号通过上述各实施方式所示的动态图像编码方法进行压缩编码(即,作为本发明的一个方式的图像编码装置发挥作用),将编码后的影像数据送出至复用/分离部ex353。另外,声音信号处理部ex354对通过照相机部ex365拍摄影像、静止图像等的过程中用声音输入部ex356集音的声音信号进行编码,将编码后的声音数据送出至复用/分离部ex353。
[0292] 复用/分离部ex353通过规定的方式,对从影像信号处理部ex355供给的编码后的影像数据和从声音信号处理部ex354供给的编码后的声音数据进行复用,将其结果得到的复用数据用调制/解调部(调制/解调电路部)ex352进行波谱扩散处理,由发送/接收部ex351实施数字模拟变换处理及频率变换处理后,经由天线ex350发送。
[0293] 在数据通信模式时接收到链接到主页等的动态图像文件的数据的情况下,或者接收到附加了影像或者声音的电子邮件的情况下,为了对经由天线ex350接收到的复用数据进行解码,复用/分离部ex353通过将复用数据分离,分为影像数据的比特流和声音数据的比特流,经由同步总线ex370将编码后的影像数据向影像信号处理部ex355供给,并将编码后的声音数据向声音信号处理部ex354供给。影像信号处理部ex355通过与上述各实施方式所示的动态图像编码方法相对应的动态图像解码方法进行解码,由此对影像信号进行解码(即,作为本发明的一个方式的图像解码装置发挥作用),经由LCD控制部ex359从显示部ex358显示例如链接到主页的动态图像文件中包含的影像、静止图像。另外,声音信号处理部ex354对声音信号进行解码,从声音输出部ex357输出声音。
[0294] 此外,上述便携电话ex114等的终端与电视机ex300同样,除了具有编码器、解码器两者的收发型终端以外,还可以考虑只有编码器的发送终端、只有解码器的接收终端的3种安装形式。另外,在数字广播用系统ex200中,设为发送、接收在影像数据中复用了音乐数据等得到的复用数据而进行了说明,但除声音数据之外复用了与影像关联的字符数据等的数据也可以,不是复用数据而是影像数据本身也可以。
[0295] 这样,将在上述各实施方式中表示的动态图像编码方法或动态图像解码方法用在上述哪种设备、系统中都可以,通过这样,能够得到在上述各实施方式中说明的效果。
[0296] 此外,本发明并不限定于这样的上述实施方式,能够不脱离本发明的范围而进行各种变形或修正。
[0297] (实施方式5)
[0298] 也可以通过将在上述各实施方式中示出的动态图像编码方法或装置、与依据MPEG-2、MPEG4-AVC、VC-1等不同的规格的动态图像编码方法或装置根据需要而适当切换,来生成影像数据。
[0299] 这里,在生成分别依据不同的规格的多个影像数据的情况下,在解码时,需要选择对应于各个规格的解码方法。但是,由于不能识别要解码的影像数据依据哪个规格,所以产生不能选择适当的解码方法的问题。
[0300] 为了解决该问题,在影像数据中复用了声音数据等的复用数据采用包含表示影像数据依据哪个规格的识别信息的结构。以下,说明包括通过在上述各实施方式中示出的动态图像编码方法或装置生成的影像数据在内的复用数据的具体的结构。复用数据是MPEG-2传输流形式的数字流。
[0301] 图30是表示复用数据的结构的图。如图30所示,复用数据通过将视频流、音频流、演示图形流(PG)、交互图形流中的1个以上进行复用而得到。视频流表示电影的主影像及副影像,音频流(IG)表示电影的主声音部分和与该主声音混合的副声音,演示图形流表示电影的字幕。这里,所谓主影像,表示显示在画面上的通常的影像,所谓副影像,是在主影像中用较小的画面显示的影像。此外,交互图形流表示通过在画面上配置GUI部件而制作的对话画面。视频流通过在上述各实施方式中示出的动态图像编码方法或装置、依据以往的MPEG-2、MPEG4-AVC、VC-1等规格的动态图像编码方法或装置编码。音频流由杜比AC-3、Dolby Digital Plus、MLP、DTS、DTS-HD、或线性PCM等的方式编码。
[0302] 包含在复用数据中的各流通过PID被识别。例如,对在电影的影像中使用的视频流分配0x1011,对音频流分配0x1100到0x111F,对演示图形分配0x1200到0x121F,对交互图形流分配0x1400到0x141F,对在电影的副影像中使用的视频流分配0x1B00到0x1B1F,对与主声音混合的副声音中使用的音频流分配0x1A00到0x1A1F。
[0303] 图31是示意地表示复用数据怎样被复用的图。首先,将由多个视频帧构成的视频流ex235、由多个音频帧构成的音频流ex238分别变换为PES包序列ex236及ex239,并变换为TS包ex237及ex240。同样,将演示图形流ex241及交互图形ex244的数据分别变换为PES包序列ex242及ex245,再变换为TS包ex243及ex246。复用数据ex247通过将这些TS包复用到1条流中而构成。
[0304] 图32更详细地表示在PES包序列中怎样保存视频流。图32的第1段表示视频流的视频帧序列。第2段表示PES包序列。如图32的箭头yy1、yy2、yy3、yy4所示,视频流中的多个作为Video Presentation Unit的I图片、B图片、P图片按每个图片被分割并保存到PES包的有效载荷中。各PES包具有PES头,在PES头中,保存有作为图片的显示时刻的PTS(Presentation Time-Stamp)及作为图片的解码时刻的DTS(Decoding Time-Stamp)。
[0305] 图33表示最终写入在复用数据中的TS包的形式。TS包是由具有识别流的PID等信息的4字节的TS头和保存数据的184字节的TS有效载荷构成的188字节固定长度的包,上述PES包被分割并保存到TS有效载荷中。在BD-ROM的情况下,对于TS包赋予4字节的TP_Extra_Header,构成192字节的源包,写入到复用数据中。在TP_Extra_Header中记载有ATS(Arrival_Time_Stamp)等信息。ATS表示该TS包向解码器的PID滤波器的转送开始时刻。在复用数据中,源包如图33下段所示排列,从复用数据的开头起递增的号码被称作SPN(源包号)。
[0306] 此外,在复用数据所包含的TS包中,除了影像、声音、字幕等的各流以外,还有PAT(Program Association Table)、PMT(Program Map Table)、PCR(Program Clock Reference)等。PAT表示在复用数据中使用的PMT的PID是什么,PAT自身的PID被登记为0。PMT具有复用数据所包含的影像、声音、字幕等的各流的PID、以及与各PID对应的流的属性信息,还具有关于复用数据的各种描述符。在描述符中,有指示许可/不许可复用数据的拷贝的拷贝控制信息等。PCR为了取得作为ATS的时间轴的ATC(Arrival Time Clock)与作为PTS及DTS的时间轴的STC(System Time Clock)的同步,拥有与该PCR包被转送至解码器的ATS对应的STC时间的信息。
[0307] 图34是详细地说明PMT的数据构造的图。在PMT的开头,配置有记述了包含在该PMT中的数据的长度等的PMT头。在其后面,配置有多个关于复用数据的描述符。上述拷贝控制信息等被记载为描述符。在描述符之后,配置有多个关于包含在复用数据中的各流的流信息。流信息由记载有用来识别流的压缩编解码器的流类型、流的PID、流的属性信息(帧速率、纵横比等)的流描述符构成。流描述符存在复用数据中存在的流的数量。
[0308] 在记录到记录介质等中的情况下,将上述复用数据与复用数据信息文件一起记录。
[0309] 复用数据信息文件如图35所示,是复用数据的管理信息,与复用数据一对一地对应,由复用数据信息、流属性信息以及入口映射构成。
[0310] 复用数据信息如图35所示,由系统速率、再现开始时刻、再现结束时刻构成。系统速率表示复用数据的向后述的系统目标解码器的PID滤波器的最大转送速率。包含在复用数据中的ATS的间隔设定为成为系统速率以下。再现开始时刻是复用数据的开头的视频帧的PTS,再现结束时刻设定为对复用数据的末端的视频帧的PTS加上1帧量的再现间隔的值。
[0311] 流属性信息如图36所示,按每个PID登记有关于包含在复用数据中的各流的属性信息。属性信息具有按视频流、音频流、演示图形流、交互图形流而不同的信息。视频流属性信息具有该视频流由怎样的压缩编解码器压缩、构成视频流的各个图片数据的分辨率是多少、纵横比是多少、帧速率是多少等的信息。音频流属性信息具有该音频流由怎样的压缩编解码器压缩、包含在该音频流中的声道数是多少、对应于哪种语言、采样频率是多少等的信息。这些信息用于在播放器再现之前的解码器的初始化等中。
[0312] 在本实施方式中,使用上述复用数据中的、包含在PMT中的流类型。此外,在记录介质中记录有复用数据的情况下,使用包含在复用数据信息中的视频流属性信息。具体而言,在上述各实施方式示出的动态图像编码方法或装置中,设置如下步骤或单元,该步骤或单元对包含在PMT中的流类型、或视频流属性信息,设定表示是通过在上述各实施方式中示出的动态图像编码方法或装置生成的影像数据的固有信息。通过该结构,能够识别通过在上述各实施方式中示出的动态图像编码方法或装置生成的影像数据、和依据其他规格的影像数据。
[0313] 此外,在图37中表示本实施方式的动态图像解码方法的步骤。在步骤exS100中,从复用数据中取得包含在PMT中的流类型、或包含在复用数据信息中的视频流属性信息。接着,在步骤exS101中,判断流类型、或视频流属性信息是否表示是通过在上述各实施方式中示出的动态图像编码方法或装置生成的复用数据。并且,在判断为流类型、或视频流属性信息是通过在上述各实施方式中示出的动态图像编码方法或装置生成的复用数据情况下,在步骤exS102中,通过在上述各实施方式中示出的动态图像解码方法进行解码。此外,在流类型、或视频流属性信息表示是依据以往的MPEG-2、MPEG4-AVC、VC-1等的规格的复用数据的情况下,在步骤exS103中,通过依据以往的规格的动态图像解码方法进行解码。
[0314] 这样,通过在流类型、或视频流属性信息中设定新的固有值,在解码时能够判断是否能够通过在上述各实施方式中示出的动态图像解码方法或装置解码。因而,在被输入了依据不同的规格的复用数据的情况下,也能够选择适当的解码方法或装置,所以能够不发生错误地进行解码。此外,将在本实施方式中示出的动态图像编码方法或装置、或者动态图像解码方法或装置用在上述任何设备、系统中。
[0315] (实施方式6)
[0316] 在上述各实施方式中示出的动态图像编码方法及装置、动态图像解码方法及装置典型地可以由作为集成电路的LSI实现。作为一例,在图38中表示1芯片化的LSIex500的结构。LSIex500具备以下说明的单元ex501、ex502、ex503、ex504、ex505、ex506、ex507、ex508、ex509,各单元经由总线ex510连接。电源电路部ex505通过在电源是开启状态的情况下对各部供给电力,起动为能够动作的状态。
[0317] 例如在进行编码处理的情况下,LSIex500基于具有CPUex502、存储器控制器ex503、流控制器ex504、驱动频率控制部ex512等的控制部ex501的控制,通过AV I/Oex509从麦克风ex117及照相机ex113等输入AV信号。被输入的AV信号暂时储存在SDRAM等的外部的存储器ex511中。基于控制部ex501的控制,将储存的数据根据处理量及处理速度适当地分为多次等,向信号处理部ex507发送,在信号处理部ex507中进行声音信号的编码及/或影像信号的编码。这里,影像信号的编码处理是在上述各实施方式中说明的编码处理。在信号处理部ex507中,还根据情况而进行将编码的声音数据和编码的影像数据复用等的处理,从流I/Oex506向外部输出。将该输出的比特流向基站ex107发送、或写入到记录介质ex215中。另外,在复用时,可以暂时将数据储存到缓冲器ex508中以使其同步。
[0318] 另外,在上述中,设存储器ex511为LSIex500的外部的结构进行了说明,但也可以是包含在LSIex500的内部中的结构。缓冲器ex508也并不限定于一个,也可以具备多个缓冲器。此外,LSIex500既可以形成1个芯片,也可以形成多个芯片。
[0319] 此外,在上述中,假设控制部ex510具有CPUex502、存储器控制器ex503、流控制器ex504、驱动频率控制部ex512等,但控制部ex510的结构并不限定于该结构。例如,也可以是信号处理部ex507还具备CPU的结构。通过在信号处理部ex507的内部中也设置CPU,能够进一步提高处理速度。此外,作为其他例,也可以是CPUex502具备信号处理部ex507、或作为信号处理部ex507的一部分的例如声音信号处理部的结构。在这样的情况下,控制部ex501为具备具有信号处理部ex507或其一部分的CPUex502的结构。
[0320] 另外,这里设为LSI,但根据集成度的差异,也有称作IC、系统LSI、超级(super)LSI、特级(ultra)LSI的情况。
[0321] 此外,集成电路化的方法并不限定于LSI,也可以由专用电路或通用处理器实现。也可以利用在LSI制造后能够编程的FPGA(Field Programmable Gate Array)、或能够重构LSI内部的电路单元的连接及设定的可重构处理器。
[0322] 进而,如果因半导体技术的进步或派生的其他技术而出现代替LSI的集成电路化的技术,则当然也可以使用该技术进行功能模块的集成化。有可能是生物技术的应用等。
[0323] (实施方式7)
[0324] 在将通过在上述各实施方式中示出的动态图像编码方法或装置生成的影像数据解码的情况下,考虑到与将依据以往的MPEG-2、MPEG4-AVC、VC-1等规格的影像数据的情况相比处理量会增加。因此,在LSIex500中,需要设定为比将依据以往的规格的影像数据解码时的CPUex502的驱动频率更高的驱动频率。但是,如果将驱动频率设得高,则发生消耗电力变高的问题。
[0325] 为了解决该问题,电视机ex300、LSIex500等的动态图像解码装置采用识别影像数据依据哪个规格、并根据规格切换驱动频率的结构。图39表示本实施方式的结构ex800。驱动频率切换部ex803在影像数据是通过在上述各实施方式中示出的动态图像编码方法或装置生成的情况下,将驱动频率设定得高。并且,对执行在上述各实施方式中示出的动态图像解码方法的解码处理部ex801指示将影像数据解码。另一方面,在影像数据是依据以往的规格的影像数据的情况下,与影像数据是通过在上述各实施方式中示出的动态图像编码方法或装置生成的数据的情况相比,将驱动频率设定得低。并且,对依据以往的规格的解码处理部ex802指示将影像数据解码。
[0326] 更具体地讲,驱动频率切换部ex803由图38的CPUex502和驱动频率控制部ex512构成。此外,执行在上述各实施方式中示出的动态图像解码方法的解码处理部ex801、以及依据以往的规格的解码处理部ex802对应于图38的信号处理部ex507。CPUex502识别影像数据依据哪个规格。并且,基于来自CPUex502的信号,驱动频率控制部ex512设定驱动频率。此外,基于来自CPUex502的信号,信号处理部ex507进行影像数据的解码。这里,可以考虑在影像数据的识别中使用例如在实施方式5中记载的识别信息。关于识别信息,并不限定于在实施方式5中记载的信息,只要是能够识别影像数据依据哪个规格的信息就可以。例如,在基于识别影像数据利用于电视机还是利用于盘等的外部信号,来能够识别影像数据依据哪个规格的情况下,也可以基于这样的外部信号进行识别。此外,CPUex502的驱动频率的选择例如可以考虑如图41所示的将影像数据的规格与驱动频率建立对应的查找表进行。将查找表预先保存到缓冲器ex508、或LSI的内部存储器中,CPUex502通过参照该查找表,能够选择驱动频率。
[0327] 图40表示实施本实施方式的方法的步骤。首先,在步骤exS200中,在信号处理部ex507中,从复用数据中取得识别信息。接着,在步骤exS201中,在CPUex502中,基于识别信息识别影像数据是否是通过在上述各实施方式中示出的编码方法或装置生成的数据。在影像数据是通过在上述各实施方式中示出的编码方法或装置生成的数据的情况下,在步骤exS202中,CPUex502向驱动频率控制部ex512发送将驱动频率设定得高的信号。并且,在驱动频率控制部ex512中设定为高的驱动频率。另一方面,在表示是依据以往的MPEG-2、MPEG4-AVC、VC-1等的规格的影像数据的情况下,在步骤exS203中,CPUex502向驱动频率控制部ex512发送将驱动频率设定得低的信号。并且,在驱动频率控制部ex512中,设定为与影像数据是通过在上述各实施方式中示出的编码方法或装置生成的数据的情况相比更低的驱动频率。
[0328] 进而,通过与驱动频率的切换连动而变更对LSIex500或包括LSIex500的装置施加的电压,由此能够进一步提高节电效果。例如,在将驱动频率设定得低的情况下,随之,可以考虑与将驱动频率设定得高的情况相比,将对LSIex500或包括LSIex500的装置施加的电压设定得低。
[0329] 此外,驱动频率的设定方法只要是在解码时的处理量大的情况下将驱动频率设定得高、在解码时的处理量小的情况下将驱动频率设定得低就可以,并不限定于上述的设定方法。例如,可以考虑在将依据MPEG4-AVC规格的影像数据解码的处理量大于将通过在上述各实施方式中示出的动态图像编码方法或装置生成的影像数据解码的处理量的情况下,与上述的情况相反地进行驱动频率的设定。
[0330] 进而,驱动频率的设定方法并不限定于使驱动频率低的结构。例如,也可以考虑在识别信息是通过在上述各实施方式中示出的动态图像编码方法或装置生成的影像数据的情况下,将对LSIex500或包括LSIex500的装置施加的电压设定得高,在表示是依据以往的MPEG-2、MPEG4-AVC、VC-1等的规格的影像数据的情况下,将对LSIex500或包括LSIex500的装置施加的电压设定得低。此外,作为另一例,也可以考虑在识别信息表示是通过在上述各实施方式中示出的动态图像编码方法或装置生成的影像数据的情况下,不使CPUex502的驱动停止,在表示是依据以往的MPEG-2、MPEG4-AVC、VC-1等的规格的影像数据的情况下,由于在处理中有富余,所以使CPUex502的驱动暂停。也可以考虑在识别信息表示是通过在上述各实施方式中示出的动态图像编码方法或装置生成的影像数据的情况下,也只要在处理中有富余则使CPUex502的驱动暂停。在此情况下,可以考虑与表示是依据以往的MPEG-2、MPEG4-AVC、VC-1等的规格的影像数据的情况相比,将停止时间设定得短。
[0331] 这样,根据影像数据所依据的规格来切换驱动频率,由此能够实现节电化。此外,在使用电池来驱动LSIex500或包括LSIex500的装置的情况下,能够随着节电而延长电池的寿命。
[0332] (实施方式8)
[0333] 在电视机、便携电话等上述的设备、系统中,有时被输入依据不同的规格的多个影像数据。这样,为了使得在被输入了依据不同的规格的多个影像数据的情况下也能够解码,LSIex500的信号处理部ex507需要对应于多个规格。但是,如果单独使用对应于各个规格的信号处理部ex507,则发生LSIex500的电路规模变大、此外成本增加的问题。
[0334] 为了解决该问题,采用将用来执行在上述各实施方式中示出的动态图像解码方法的解码处理部、和依据以往的MPEG-2、MPEG4-AVC、VC-1等的规格的解码处理部一部分共用的结构。图42A的ex900表示该结构例。例如,在上述各实施方式中示出的动态图像解码方法和依据MPEG4-AVC规格的动态图像解码方法在熵编码、逆量化、解块滤波器、运动补偿等的处理中有一部分处理内容共通。可以考虑如下结构:关于共通的处理内容,共用对应于MPEG4-AVC规格的解码处理部ex902,关于不对应于MPEG4-AVC规格的本发明的一个方式所特有的其他的处理内容,使用专用的解码处理部ex901。关于解码处理部的共用,也可以是如下结构:关于共通的处理内容,共用用来执行在上述各实施方式中示出的动态图像解码方法的解码处理部,关于MPEG4-AVC规格所特有的处理内容,使用专用的解码处理部。
[0335] 此外,用图42B的ex1000表示将处理一部分共用的另一例。在该例中,采用使用与本发明的一个方式所特有的处理内容对应的专用的解码处理部ex1001、和与其他的以往规格所特有的处理内容对应的专用的解码处理部ex1002、和与在本发明的一个方式的动态图像解码方法和其他的以往规格的动态图像解码方法中共通的处理内容对应的共用的解码处理部ex1003的结构。这里,专用的解码处理部ex1001、ex1002并不一定是为本发明的一个方式、或者其他的以往规格所特有的处理内容而特殊化的,可以是能够执行其他的通用处理的结构。此外,也能够由LSIex500安装本实施方式的结构。
[0336] 这样,对于在本发明的一个方式的动态图像解码方法和以往的规格的动态图像解码方法中共通的处理内容,共用解码处理部,由此能够减小LSI的电路规模并且降低成本。
[0337] 产业上的可利用性
[0338] 本发明的动态图像编码方法和动态图像解码方法能够应用于所有的多媒体数据,不会增大处理负荷,能够实现动态图像编码和解码的处理速度的高速化。例如,作为使用便携电话、DVD装置和个人计算机等的蓄积、传送、通信等中的动态图像编码方法和动态图像解码方法,本发明的动态图像编码方法和动态图像解码方法是有用的。
[0339] 标号说明
[0340] 100:动态图像编码装置;101:差分部;102:变换部;103:量化部;104:逆量化部;105:逆变换部;106:加法部;107:帧内/帧间预测部;108:编码控制部;109:存储器;110:熵编码部;300:动态图像解码装置;301:熵解码部;302:逆量化部;303:逆变换部;304:加法部;305:帧内/帧间预测部;306:解码控制部;307:存储器。