CN110169067B - 图像解码装置以及图像编码装置 - Google Patents

图像解码装置以及图像编码装置 Download PDF

Info

Publication number
CN110169067B
CN110169067B CN201780077864.5A CN201780077864A CN110169067B CN 110169067 B CN110169067 B CN 110169067B CN 201780077864 A CN201780077864 A CN 201780077864A CN 110169067 B CN110169067 B CN 110169067B
Authority
CN
China
Prior art keywords
block
context
division
unit
split
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201780077864.5A
Other languages
English (en)
Other versions
CN110169067A (zh
Inventor
猪饲知宏
八杉将伸
青野友子
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
FG Innovation Co Ltd
Sharp Corp
Original Assignee
FG Innovation Co Ltd
Sharp Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by FG Innovation Co Ltd, Sharp Corp filed Critical FG Innovation Co Ltd
Publication of CN110169067A publication Critical patent/CN110169067A/zh
Application granted granted Critical
Publication of CN110169067B publication Critical patent/CN110169067B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

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

Abstract

本发明提供一种图像解码装置以及图像编码装置。图像解码装置(31)具备:上下文决定部(32),参照与对象块相邻的一个或者多个相邻块的分割关联信息来决定该对象块的分割信息的上下文;和分割信息解码部(10),利用由上述上下文决定部决定的上下文来解码上述对象块的分割信息。

Description

图像解码装置以及图像编码装置
技术领域
本发明涉及图像解码装置以及图像编码装置。
背景技术
为了高效地传输或者记录运动图像,利用了通过编码运动图像来生成编码数据的运动图像编码装置、以及通过解码该编码数据来生成解码图像的运动图像解码装置。
作为具体的运动图像编码方式,例如可列举在H.264/AVC、HEVC(High-EfficiencyVideo Coding,高效视频编码)中提出的方式等。
在这样的运动图像编码方式中,构成运动图像的图像(图片)根据由通过分割图像而得到的切片、通过分割切片而得到的编码树单元(CTU:Coding Tree Unit)、通过分割编码树单元而得到的编码单位(也有时称为编码单元(Coding Unit:CU))、以及作为通过分割编码单位而得到的块的预测单元(PU)、变换单元(TU)构成的阶层构造来管理,按照每个CU被编码/解码。
此外,在这样的运动图像编码方式中,通常,基于通过对输入图像进行编码/解码而得到的局部解码图像来生成预测图像,并对从输入图像(原图像)减去该预测图像而得到的预测残差(也有时称为“差分图像”或者“残差图像”)进行编码。作为预测图像的生成方法,可列举画面间预测(帧间预测)以及画面内预测(帧内预测)。
此外,作为近年来的运动图像编码以及解码的技术,可列举非专利文献1。
进而,近年来,作为构成切片的CTU的分割方式,除了对CTU进行四叉树(quadtree)分割的QT分割之外,还导入进行二叉树(binary tree)分割的BT分割。该BT分割包含水平分割和垂直分割。
在先技术文献
非专利文献
非专利文献1:“Algorithm Description of Joint Exploration Test Model5”,JVET-E1001-v1,Joint Video Exploration Team(JVET)of ITU-T SG 16WP 3and ISO/IEC JTC 1/SC 29/WG 11,12-20January 2017
发明内容
发明要解决的课题
但是,作为CTU的分割方式,除了QT分割之外还导入BT分割,从而向CU分割的分割图案增大,运动图像的编码处理量或者解码处理量增加,编码/解码变得复杂。在QT分割以及BT分割中,需要对QT分割标记进行编码或者解码,并且对BT分割标记进行编码或者解码。而且,存在这些分割标记的码量大的问题。
本发明的一形态正是鉴于上述的问题点而完成的,其主要目的在于,提供一种能够在图像编码装置或者图像解码装置中削减分割信息的码量的技术。
用于解决课题的手段
为了解决上述课题,本发明的一形态涉及的图像解码装置按每个块来对图片进行解码,具备:上下文决定部,参照对与对象块相邻的一个或者多个相邻块的分割关联信息进行了比较的结果,决定该对象块的分割信息的上下文;和分割信息解码部,利用由上述上下文决定部决定的上下文来解码上述对象块的分割信息。
为了解决上述课题,本发明的一形态涉及的图像编码装置按每个块来对图片进行编码,具备:上下文决定部,参照对与对象块相邻的一个或者多个相邻块的分割关联信息进行了比较的结果,决定该对象块的分割信息的上下文;和分割信息编码部,利用由上述上下文决定部决定的上下文来编码上述对象块的分割信息。
为了解决上述课题,本发明的一形态涉及的图像解码装置按每个块来对图片进行解码,具备:上下文决定部,参照与对象块相邻的一个或者多个相邻块的分割状况,决定该对象块的分割信息的上下文;和分割信息解码部,利用由上述上下文决定部决定的上下文来解码上述对象块的分割信息。
为了解决上述课题,本发明的一形态涉及的图像编码装置按每个块来对图片进行编码,具备:上下文决定部,参照与对象块相邻的一个或者多个相邻块的分割状况,决定该对象块的分割信息的上下文;和分割信息编码部,利用由上述上下文决定部决定的上下文来编码上述对象块的分割信息。
为了解决上述课题,本发明的一形态涉及的图像解码装置按每个块来对图片进行解码,具备:上下文决定部,参照已被解码的与第2颜色分量有关的对应块的分割状况,决定与第1颜色分量有关的对象块的分割信息的上下文;和分割信息解码部,利用由上述上下文决定部决定的上下文来解码与上述第1颜色分量有关的对象块的分割信息。
为了解决上述课题,本发明的一形态涉及的图像编码装置按每个块来对图片进行编码,具备:上下文决定部,参照已被解码的与第2颜色分量有关的对应块的分割状况,决定与第1颜色分量有关的对象块的分割信息的上下文;和分割信息编码部,利用由上述上下文决定部决定的上下文来编码与上述第1颜色分量有关的对象块的分割信息。
发明效果
根据本发明的一形态,能够在图像解码装置中削减分割信息的码量。
附图说明
图1是表示本实施方式涉及的图像传输系统的结构的概略图。
图2是表示本实施方式涉及的编码流的数据的阶层构造的图。
图3是表示PU分割模式的图案的图。(a)~(h)分别表示PU分割模式为2Nx2N、2NxN、2NxnU、2NxnD、Nx2N、nLx2N、nRx2N以及NxN的情况下的分区形状。
图4是表示参照图片以及参照图片列表的一例的概念图。
图5是表示本实施方式涉及的图像编码装置的结构的框图。
图6是表示本实施方式涉及的图像解码装置的结构的概略图。
图7是表示本实施方式涉及的图像编码装置的主要部分结构的框图。
图8是表示搭载了本实施方式涉及的图像编码装置的发送装置、以及搭载了图像解码装置的接收装置的结构的图。(a)表示搭载了图像编码装置的发送装置,(b)表示搭载了图像解码装置的接收装置。
图9是表示搭载了本实施方式涉及的图像编码装置的记录装置、以及搭载了图像解码装置的再生装置的结构的图。(a)表示搭载了图像编码装置的记录装置,(b)表示搭载了图像解码装置的再生装置。
图10是表示本实施方式涉及的图像解码装置的主要部分结构的框图。
图11中,(a)是用于说明QT分割的图。(b)是用于说明BT分割的图。(c)是用于说明TT分割的图。
图12是说明本发明的一实施方式涉及的图像解码装置所执行的上下文决定方法的流程图。
图13是用于说明本发明的一实施方式涉及的图像解码装置所执行的上下文决定方法的图。
图14是用于说明本发明的一实施方式涉及的图像解码装置所执行的上下文决定方法的具体例1的图。
图15是用于说明本发明的一实施方式涉及的图像解码装置所执行的上下文决定方法的具体例2的图。
图16是用于说明本发明的一实施方式涉及的图像解码装置所执行的上下文决定方法的具体例3的图。
图17是表示对象块与相邻块的深度的图。
图18是用于说明本发明的一实施方式涉及的上下文决定方法的具体例的图。
图19是表示对象块与相邻块的分割以及深度的关系的一例。
图20是表示对象块与相邻块的位置的图。
图21是说明本发明的一实施方式涉及的上下文决定方法的具体例的流程图。
图22是说明本发明的一实施方式涉及的剪裁处理的流程图。
图23是在本发明的一实施方式涉及的上下文决定方法中分割关联信息的差分值的加法运算结果或者最大值与上下文的映射表的一例。
图24是说明本发明的一实施方式涉及的图像解码装置所执行的上下文决定方法的流程图。
图25是用于说明本发明的一实施方式涉及的图像解码装置所执行的上下文决定方法的具体例1的图。(a)表示色差块。(b)表示亮度块。
图26是用于说明本发明的一实施方式涉及的图像解码装置所执行的上下文决定方法的具体例2的图。(a)表示色差块。(b)表示亮度块。
图27是用于说明本发明的一实施方式涉及的图像解码装置所执行的上下文决定方法的具体例3的图。(a)表示色差块。(b)表示亮度块。
图28是说明本发明的一形态涉及的图像解码装置所执行的上下文决定方法的流程图。
图29中,(a)~(d)分别是用于说明本发明的一实施方式涉及的图像解码装置所执行的上下文决定方法的具体例的表。
图30是说明本发明的一形态涉及的图像解码装置所执行的上下文决定方法的流程图。
具体实施方式
〔第1实施方式〕
以下,边参照附图边说明本发明的实施方式。
图1是表示本实施方式涉及的图像传输系统1的结构的概略图。
图像传输系统1是传输对编码对象图像进行编码而得到的码,对被传输的码进行解码并显示图像的系统。图像传输系统1构成为包含图像编码装置11、网络21、图像解码装置31以及图像显示装置41。
在图像编码装置11,被输入表示单个层或多个层的图像的图像T。层是在构成某个时间的图片有一个以上的情况下,用于区分多个图片的概念。例如,若用画质、分辨率不同的多个层对同一图片进行编码,则成为可扩展编码,若用多个层对不同的视点的图片进行编码,则成为视图可扩展编码。在多个层的图片间进行预测(帧间层预测、帧间视图预测)的情况下,编码效率大幅提高。此外,在不进行预测(联播)的情况下,也能够汇集编码数据。
网络21将图像编码装置11生成的编码流Te传输至图像解码装置31。网络21是因特网(internet)、广域网(WAN:Wide Area Network)、小规模网络(LAN:Local Area Network)或者它们的组合。网络21不一定限于双向的通信网,也可以是地面数字广播、卫星广播等的传播广播波的单向的通信网。此外,网络21也可以被DVD(Digital Versatile Disc,数字多功能盘)、BD(Blu-ray Disc:注册商标)等记录了编码流Te的存储介质代替。
图像解码装置31分别对网络21传输的编码流Te进行解码,并生成分别解码出的一个或者多个解码图像Td。
图像显示装置41显示图像解码装置31生成的一个或者多个解码图像Td的全部或者一部分。图像显示装置41例如具备液晶显示器、有机EL(Electro-luminescence,电致发光)显示器等的显示用显示器。此外,在空间可扩展编码、SNR可扩展编码中,在图像解码装置31、图像显示装置41具有高的处理能力的情况下,显示画质高的扩展层图像,在只具有更低的处理能力的情况下,显示无需如扩展层那样高的处理能力、显示能力的基底层图像。
<运算符>
下面记载本说明书中利用的运算符。
>>为右移位,<<为左移位,&为逐位与,|为逐位或,|=为与其他条件的或运算(OR)。
关于x?y:z,在x为真(0以外)的情况下,是取y的3项运算符,在x为伪(0)的情况下,是取z的3项运算符。
Clip3(a,b,c)是将c剪裁为a以上且b以下的值的函数,是在c<a的情况下返回a,在c>b的情况下返回b,在其他情况下返回c的函数(其中,a≤b)。
<编码流Te的构造>
在本实施方式涉及的图像编码装置11以及图像解码装置31的详细说明之前,先说明由图像编码装置11生成并由图像解码装置31解码的编码流Te的数据结构。
图2是表示编码流Te中的数据的阶层构造的图。编码流Te例示性地包含序列、以及构成序列的多个图片。图2的(a)~(f)分别是表示规定序列SEQ的编码视频序列、规定图片PICT的编码图片、规定切片S的编码切片、规定切片数据的编码切片数据、编码切片数据中包含的编码树单元、编码树单元中包含的编码单元(Coding Unit;CU)的图。
(编码视频序列)
在编码视频序列中,规定了图像解码装置31为了解码出处理对象的序列SEQ而参照的数据的集合。如图2的(a)所示,序列SEQ包含视频参数集(Video Parameter Set)、序列参数集SPS(Sequence Parameter Set)、图片参数集PPS(Picture Parameter Set)、图片PICT、以及附加扩展信息SEI(Supplemental Enhancement Information)。在此,#之后示出的值表示层ID。在图2中,示出存在#0和#1即层0和层1的编码数据的例子,但层的种类以及层数并不限于此。
视频参数集VPS在由多个层构成的运动图像中规定了多个运动图像所共同的编码参数的集合以及运动图像中包含的多个层以及与各个层关联的编码参数的集合。
在序列参数集SPS中,规定了图像解码装置31为了解码对象序列而参照的编码参数的集合。例如,规定图片的宽度、高度。另外,SPS也可以存在多个。在该情况下,根据PPS选择多个SPS的任一个。
在图片参数集PPS中,规定了图像解码装置31为了解码对象序列内的各图片而参照的编码参数的集合。例如,包含用于对图片进行解码的量化宽度的基准值(pic_init_qp_minus26)、表示加权预测的应用的标记(weighted_pred_flag)。另外,也可以存在多个PPS。在该情况下,根据对象序列内的各图片选择多个PPS的任一个。
(编码图片)
在编码图片中,规定了图像解码装置31为了解码出处理对象的图片PICT而参照的数据的集合。如图2的(b)所示,图片PICT包含切片S0~SNS-1(NS为图片PICT中包含的切片的总数)。
另外,以下,在无需分别区分切片S0~SNS-1的情况下,省略记述符号的后缀。此外,关于以下说明的编码流Te中包含的标注后缀的其他数据也是同样。
(编码切片)
在编码切片中,规定了图像解码装置31为了解码出处理对象的切片S而参照的数据的集合。如图2的(c)所示,切片S包含切片报头SH、以及切片数据SDATA。
在切片报头SH,包含图像解码装置31为了决定对象切片的解码方法而参照的编码参数组。指定切片类型的切片类型指定信息(slice_type)是切片报头SH中包含的编码参数的一例。
作为能够由切片类型指定信息指定的切片类型,可列举(1)在编码时仅利用帧内预测的I切片、(2)在编码时利用单向预测或者帧内预测的P切片、(3)在编码时利用单向预测、双向预测或者帧内预测的B切片等。
另外,在切片报头SH,也可以包含上述编码视频序列中包含的向图片参数集PPS的参照(pic_parameter_set_id)。
(编码切片数据)
在编码切片数据中,规定了图像解码装置31为了解码出处理对象的切片数据SDATA而参照的数据的集合。如图2的(d)所示,切片数据SDATA包含编码树单元(CTU:CodingTree Unit)。CTU是构成切片的固定尺寸(例如64x64)的块,也有时称为最大编码单位(LCU:Largest Coding Unit)。
(编码树单元)
如图2的(e)所示,规定了图像解码装置31为了解码出处理对象的编码树单元而参照的数据的集合。编码树单元通过递归型四叉树分割(QT分割)或者二叉树分割(BT分割)分割。将通过递归型四叉树分割或者二叉树分割而得到的树构造的节点称为编码节点(CN:Coding Node)。四叉树以及二叉树的中间节点为编码树(CT:Coding Tree),编码树单元自身也作为最上级的编码树来规定。
CTU包含表示是否进行QT分割的QT分割标记(cu_split_flag)、以及表示BT分割的分割方法的BT分割模式(split_bt_mode)。在cu_split_flag为1的情况下,被分割为4个编码节点CN。在cu_split_flag为0的情况下,编码节点CN不被分割,将一个编码单元(CU:Coding Unit)作为节点来具有。另一方面,在split_bt_mode为2的情况下,被水平分割(horitonzal split,基于水平的分割线的分割,分割为上和下的两个以上的块)为两个编码节点CN。在split_bt_mode为1的情况下,被垂直分割(vertical split,基于垂直的分割线的分割,在此分割为左和右的两个以上的块)为两个编码节点CN。在split_bt_mode为0的情况下,编码节点CN不被分割,将一个编码单元CU作为节点来具有。另外,水平分割中由于某个块被分割为在垂直方向上排列的两个以上的块,因此也称为垂直的分割(splitvertically)。同样地,垂直分割中由于某个块被分割为在水平方向上排列的两个以上的块,因此也称为水平的分割(split horizontally)。若进行总结,则用语的定义如下所述。
水平分割(horizontal split)=垂直地分割(split vertically)=上下地分割
垂直分割(vertical split)=水平地分割(split horizontally)=左右地分割
编码单元CU为编码节点的末端节点(叶节点),不被进行更进一步的分割。编码单元CU成为编码处理的基本单位。
此外,在编码树单元CTU的尺寸为64x64像素的情况下,编码单元的尺寸可取64x64像素、64x32像素、32x64像素、32x32像素、64x16像素、16x64像素、32x16像素、16x32像素、16x16像素、64x8像素、8x64像素、32x8像素、8x32像素、16x8像素、8x16像素、以及8x8像素的任一种。
(编码单元)
如图2的(f)所示,规定了图像解码装置31为了解码出处理对象的编码单元而参照的数据的集合。具体而言,编码单元由预测树、变换树、CU报头CUH构成。在CU报头中,规定预测模式、分割方法(PU分割模式)等。
在预测树中,规定将编码单元分割为一个或者多个的各预测单元(PU)的预测信息(参照图片索引、运动矢量等)。如果用其他表现来说,则预测单元是构成编码单元的一个或者多个不重复的区域。此外,预测树包含通过上述分割而得到的一个或者多个预测单元。另外,以下,将对预测单元进一步分割后的预测单位称为“子块”。子块由多个像素构成。在预测单元和子块的尺寸相等的情况下,预测单元中的子块为一个。在预测单元比子块的尺寸大的情况下,预测单元被分割为子块。例如,在预测单元为8x8且子块为4x4的情况下,预测单元被分割为由水平分割为两个且垂直分割为两个构成的4个子块。
预测处理也可以按照该预测单元(子块)的每个进行。
预测树中的分割的种类大致来说具有帧内预测的情况和帧间预测的情况这两种。帧内预测是指同一图片内的预测,帧间预测是指在彼此不同的图片间(例如,显示时刻间、层图像间)进行的预测处理。
在帧内预测的情况下,分割方法有2Nx2N(与编码单元同一尺寸)和NxN。
此外,在帧间预测的情况下,根据编码数据的PU分割模式(part_mode)被编码,分割方法有2Nx2N(与编码单元同一尺寸)、2NxN、2NxnU、2NxnD、Nx2N、nLx2N、nRx2N、以及NxN等。另外,2NxN、Nx2N表示1﹕1的对称分割,2NxnU、2NxnD以及nLx2N、nRx2N表示1﹕3、3﹕1的非对称分割。将CU中包含的PU依次表现为PU0、PU1、PU2、PU3。
在图3的(a)~(h)中,具体地图示了各个PU分割模式中的分区的形状(PU分割的边界的位置)。图3的(a)表示2Nx2N的分区,(b)、(c)、(d)分别表示2NxN、2NxnU、以及2NxnD的分区(横长分区)。(e)、(f)、(g)分别表示为Nx2N、nLx2N、nRx2N的情况下的分区(纵长分区),(h)表示NxN的分区。另外,将横长分区和纵长分区总称为长方形分区,将2Nx2N、NxN总称为正方形分区。
此外,在变换树(TT:Transform Tree)中,编码单元被分割为一个或者多个变换单元(TU:Transform Unit),规定各变换单元的位置和尺寸。若用其他表现来说,则变换单元是构成编码单元的一个或者多个不重复的区域。此外,变换树包含通过上述分割而得到的一个或者多个变换单元。
在变换树中的分割有将与编码单元同一尺寸的区域作为变换单元来分配的分割、与上述的CU的分割同样地通过对CU进行四叉树分割(TU分割)来得到变换单元的分割。变换处理按该变换单元的每个来进行。
(预测参数)
预测单元(PU:Prediction Unit)的预测图像根据附带于PU的预测参数导出。预测参数有帧内预测的预测参数或帧间预测的预测参数。以下,对帧间预测的预测参数(帧间预测参数)进行说明。帧间预测参数由预测列表利用标记predFlagL0、predFlagL1、参照图片索引refIdxL0、refIdxL1、和运动矢量mvL0、mvL1构成。预测列表利用标记predFlagL0、predFlagL1分别是表示是否利用被称为L0列表、L1列表的参照图片列表的标记,在值为1的情况下,利用对应的参照图片列表。另外,在本说明书中记为“表示是否为XX的标记”的情况下,将标记为0以外(例如1)的情况设为是XX的情况,将0的情况设为不是XX的情况,在逻辑非、逻辑与等时,将1作为真来处理,将0作为伪来处理(以下同样)。不过,在实际的装置、方法中,作为真值、伪值也能够利用其他值。
在用于导出编码数据中包含的帧间预测参数的语法要素,例如具有PU分割模式part_mode、合并标记merge_flag、合并索引merge_idx、帧间预测识别符inter_pred_idc、参照图片索引refIdxLX、预测矢量索引mvp_LX_idx、差分矢量mvdLX。
(参照图片列表)
参照图片列表是由参照图片存储器306中存储的参照图片构成的列表。图4是表示参照图片以及参照图片列表的一例的概念图。在图4的(a)中,矩形表示图片,箭头表示图片的参照关系,横轴表示时间,矩形中的I、P、B分别表示帧内图片、单预测图片、双预测图片,矩形中的数字表示解码顺序。如图所示,图片的解码顺序为I0、P1、B2、B3、B4,显示顺序为I0、B3、B2、B4、P1。在图4的(b)中示出参照图片列表的例子。参照图片列表是表示参照图片的候选的列表,一个图片(切片)可以具有一个以上的参照图片列表。在图的例子中,对象图片B3具有L0列表RefPicList0以及L1列表RefPicList1这两个参照图片列表。对象图片为B3的情况下的参照图片是I0、P1、B2,参照图片将这些图片作为要素来具有。在各个预测单元中,用参照图片索引refIdxLX来指定实际参照参照图片列表RefPicListX中的哪个图片。在图中,示出根据refIdxL0以及refIdxL1而参照参照图片P1和B2的例子。
(合并预测与AMVP预测)
在预测参数的解码(编码)方法中,具有合并预测(merge)模式和AMVP(AdaptiveMotion Vector Prediction,自适应运动矢量预测)模式的合并标记merge_flag是用于识别它们的标记。合并预测模式是在编码数据中不包含预测列表利用标记predFlagLX(或者帧间预测识别符inter_pred_idc)、参照图片索引refIdxLX、运动矢量mvLX而从已经处理的附近PU的预测参数导出并利用的模式,AMVP模式是在编码数据中包含帧间预测识别符inter_pred_idc、参照图片索引refIdxLX、运动矢量mvLX的模式。另外,运动矢量mvLX作为识别预测矢量mvpLX的预测矢量索引mvp_LX_idx和差分矢量mvdLX被编码。
帧间预测识别符inter_pred_idc是表示参照图片的种类以及数量的值,取PRED_L0、PRED_L1、PRED_BI的任一值。PRED_L0、PRED_L1分别表示利用由L0列表、L1列表的参照图片列表管理的参照图片,表示利用1张参照图片(单预测)。PRED_BI表示利用两张参照图片(双预测BiPred),利用由L0列表和L1列表管理的参照图片。预测矢量索引mvp_LX_idx是表示预测矢量的索引,参照图片索引refIdxLX是表示由参照图片列表管理的参照图片的索引。另外,LX是在不区分L0预测和L1预测的情况下利用的记述方法,通过将LX置换为L0、L1,由此来区分针对L0列表的参数和针对L1列表的参数。
合并索引merge_idx是表示是否将从处理完成的PU导出的预测参数候选(合并候选)中的任一者的预测参数作为解码对象PU的预测参数来利用的索引。
(运动矢量)
运动矢量mvLX表示不同的两个图片上的块间的偏离量。将与运动矢量mvLX有关的预测矢量、差分矢量分别称为预测矢量mvpLX、差分矢量mvdLX。
(帧间预测识别符inter_pred_idc与预测列表利用标记predFlagLX)
帧间预测识别符inter_pred_idc与预测列表利用标记predFlagL0、predFlagL1的关系如下所述,能够相互变换。
inter_pred_idc=(predFlagL1<<1)+predFlagL0
predFlagL0=inter_pred_idc&1
predFlagL1=inter_pred_idc>>1
另外,帧间预测参数可以利用预测列表利用标记,也可以利用帧间预测识别符。此外,利用了预测列表利用标记的判定可以置换为利用了帧间预测识别符的判定。反之,利用了帧间预测识别符的判定也可以置换为利用了预测列表利用标记的判定。
(双预测biPred的判定)
是否为双预测BiPred的标记biPred能够通过两个预测列表利用标记是否均为1来导出。例如,能够用以下的式导出。
biPred=(predFlagL0==1&&predFlagL1==1)
标记biPred也能够通过帧间预测识别符是否为表示使用两个预测列表(参照图片)的值来导出。例如,能够用以下的式导出。
biPred=(inter_pred_idc==PRED_BI)?1﹕0
上述式也能够用以下的式表现。
biPred=(inter_pred_idc==PRED_BI)
另外,PRED_BI例如能够利用3的值。
(图像解码装置的结构)
接下来,对本实施方式涉及的图像解码装置31的结构进行说明。图5是表示本实施方式涉及的图像解码装置31的结构的概略图。图像解码装置31构成为包含:熵解码部301、预测参数解码部(预测图像解码装置)302、环路滤波器305、参照图片存储器306、预测参数存储器307、预测图像生成部(预测图像生成装置)308、逆量化/逆DCT部311、以及加法运算部312。
此外,预测参数解码部302构成为包含帧间预测参数解码部303以及帧内预测参数解码部304。预测图像生成部308构成为包含帧间预测图像生成部309以及帧内预测图像生成部310。
熵解码部301对从外部输入的编码流Te进行熵解码,将各个码(语法要素)分离来解码。被分离后的码有用于生成预测图像的预测信息以及用于生成差分图像的残差信息等。
熵解码部301将分离后的码的一部分输出至预测参数解码部302。分离后的码的一部分例如为预测模式predMode、PU分割模式part_mode、合并标记merge_flag、合并索引merge_idx、帧间预测识别符inter_pred_idc、参照图片索引refIdxLX、预测矢量索引mvp_LX_idx、差分矢量mvdLX。解码哪个码的控制基于预测参数解码部302的指示来进行。熵解码部301将量化系数输出至逆量化/逆DCT部311。该量化系数是在编码处理中对残差信号进行DCT(Discrete Cosine Transform,离散余弦变换)并进行量化而得到的系数。
帧间预测参数解码部303基于从熵解码部301输入的码,参照预测参数存储器307中存储的预测参数来对帧间预测参数进行解码。
帧间预测参数解码部303将解码出的帧间预测参数输出至预测图像生成部308,并且存储至预测参数存储器307。关于帧间预测参数解码部303的详细将后述。
帧内预测参数解码部304基于从熵解码部301输入的码,参照预测参数存储器307中存储的预测参数来对帧内预测参数进行解码。帧内预测参数是在一个图片内预测CU的处理中利用的参数,例如为帧内预测模式IntraPredMode。帧内预测参数解码部304将解码出的帧内预测参数输出至预测图像生成部308,并且存储至预测参数存储器307。
帧内预测参数解码部304也可以导出亮度和色差不同的帧内预测模式。在该情况下,帧内预测参数解码部304作为亮度的预测参数而解码亮度预测模式IntraPredModeY,作为色差的预测参数而解码色差预测模式IntraPredModeC。亮度预测模式IntraPredModeY为35模式,对应平面预测(0)、DC预测(1)、方向预测(2~34)。色差预测模式IntraPredModeC利用平面预测(0)、DC预测(1)、方向预测(2~34)、LM模式(35)的任一种。帧内预测参数解码部304解码表示IntraPredModeC是否为与亮度模式相同的模式的标记,如果标记表示为与亮度模式相同的模式,则对IntraPredModeC分配IntraPredModeY,如果标记表示为与亮度模式不同的模式,则作为IntraPredModeC也可以解码平面预测(0)、DC预测(1)、方向预测(2~34)、LM模式(35)。
环路滤波器305对加法运算部312生成的CU的解码图像施加去块滤波器、样本自适应偏移(SAO)、自适应环路滤波器(ALF)等的滤波器。
参照图片存储器306按解码对象的每个图片以及CU,将加法运算部312生成的CU的解码图像存储至预先规定的位置。
预测参数存储器307按解码对象的每个图片以及预测单元(或子块、固定尺寸块、像素),将预测参数存储至预先规定的位置。具体而言,预测参数存储器307存储帧间预测参数解码部303解码出的帧间预测参数、帧内预测参数解码部304解码出的帧内预测参数以及熵解码部301分离出的预测模式predMode。被存储的帧间预测参数例如有预测列表利用标记predFlagLX(帧间预测识别符inter_pred_idc)、参照图片索引refIdxLX、运动矢量mvLX。
在预测图像生成部308,被输入从熵解码部301输入的预测模式predMode,此外,从预测参数解码部302被输入预测参数。此外,预测图像生成部308从参照图片存储器306读出参照图片。预测图像生成部308以预测模式predMode所表示的预测模式,利用输入的预测参数和读出的参照图片来生成PU的预测图像。
在此,在预测模式predMode表示帧间预测模式的情况下,帧间预测图像生成部309利用从帧间预测参数解码部303输入的帧间预测参数和读出的参照图片,通过帧间预测来生成PU的预测图像。
帧间预测图像生成部309针对预测列表利用标记predFlagLX为1的参照图片列表(L0列表或L1列表),根据由参照图片索引refIdxLX表示的参照图片,以解码对象PU为基准将处于运动矢量mvLX所表示的位置的参照图片块从参照图片存储器306读出。帧间预测图像生成部309基于读出的参照图片块进行预测并生成PU的预测图像。帧间预测图像生成部309将生成的PU的预测图像输出至加法运算部312。
在预测模式predMode表示帧内预测模式的情况下,帧内预测图像生成部310利用从帧内预测参数解码部304输入的帧内预测参数和读出的参照图片进行帧内预测。具体而言,帧内预测图像生成部310将解码对象的图片中的已被解码的PU之中距解码对象PU在预先规定的范围的相邻PU从参照图片存储器306读出。所谓预先规定的范围,在解码对象PU以所谓的光栅扫描的顺序依次移动的情况下,例如是指左、左上、上、右上的相邻PU中的任一者,根据帧内预测模式而不同。所谓光栅扫描的顺序,是指在各图片中从上端到下端对于各行依次从左端到右端移动的顺序。
帧内预测图像生成部310关于读出的相邻PU以帧内预测模式IntraPredMode所表示的预测模式进行预测并生成PU的预测图像。帧内预测图像生成部310将生成的PU的预测图像输出至加法运算部312。
在帧内预测参数解码部304中导出亮度和色差不同的帧内预测模式的情况下,帧内预测图像生成部310根据亮度预测模式IntraPredModeY而通过平面预测(0)、DC预测(1)、方向预测(2~34)的任一种来生成亮度的PU的预测图像,根据色差预测模式IntraPredModeC而通过平面预测(0)、DC预测(1)、方向预测(2~34)、LM模式(35)的任一种来生成色差的PU的预测图像。
逆量化/逆DCT部311对从熵解码部301输入的量化系数进行逆量化,求出DCT系数。逆量化/逆DCT部311对求出的DCT系数进行逆DCT(Inverse Discrete Cosine Transform,逆离散余弦变换),计算残差信号。逆量化/逆DCT部311将计算出的残差信号输出至加法运算部312。
加法运算部312按每个像素对从帧间预测图像生成部309或者帧内预测图像生成部310输入的PU的预测图像和从逆量化/逆DCT部311输入的残差信号进行加法运算,生成PU的解码图像。加法运算部312将生成的PU的解码图像存储至参照图片存储器306,将生成的PU的解码图像按每个图片综合后的解码图像Td输出至外部。
(图像编码装置的结构)
接下来,对本实施方式涉及的图像编码装置11的结构进行说明。图6是表示本实施方式涉及的图像编码装置11的结构的框图。图像编码装置11构成为包含:预测图像生成部101、减法运算部102、DCT/量化部103、熵编码部104、逆量化/逆DCT部105、加法运算部106、环路滤波器107、预测参数存储器(预测参数存储部、帧存储器)108、参照图片存储器(参照图像存储部、帧存储器)109、编码参数决定部110、和预测参数编码部111。预测参数编码部111构成为包含帧间预测参数编码部112以及帧内预测参数编码部113。
预测图像生成部101关于图像T的各图片,按作为对该图片进行分割而得到的区域的每个编码单元CU,生成预测单元PU的预测图像P。在此,预测图像生成部101基于从预测参数编码部111输入的预测参数,从参照图片存储器109读出解码完毕的块。所谓从预测参数编码部111输入的预测参数,例如在帧间预测的情况下是指运动矢量。预测图像生成部101读出以对象PU为起点处于运动矢量所表示的参照图像上的位置的块。此外,在帧内预测的情况下,所谓预测参数例如是指帧内预测模式。从参照图片存储器109读出在帧内预测模式下使用的相邻PU的像素值,生成PU的预测图像P。预测图像生成部101关于读出的参照图片块,利用多个预测方式中的一个预测方式来生成PU的预测图像P。预测图像生成部101将生成的PU的预测图像P输出至减法运算部102。
另外,预测图像生成部101是与已经说明过的预测图像生成部308相同的动作。
预测图像生成部101利用从预测参数编码部输入的参数,基于从参照图片存储器读出的参照块的像素值来生成PU的预测图像P。由预测图像生成部101生成的预测图像被输出至减法运算部102、加法运算部106。
减法运算部102从图像T的对应的PU的像素值减去自预测图像生成部101输入的PU的预测图像P的信号值,生成残差信号。减法运算部102将生成的残差信号输出至DCT/量化部103。
DCT/量化部103对从减法运算部102输入的残差信号进行DCT,计算DCT系数。DCT/量化部103将计算出的DCT系数量化,求出量化系数。DCT/量化部103将求出的量化系数输出至熵编码部104以及逆量化/逆DCT部105。
在熵编码部104,从DCT/量化部103被输入量化系数,从预测参数编码部111被输入编码参数。被输入的编码参数例如有参照图片索引refIdxLX、预测矢量索引mvp_LX_idx、差分矢量mvdLX、预测模式predMode、以及合并索引merge_idx等的码。
熵编码部104对被输入的量化系数和编码参数进行熵编码,生成编码流Te,并将生成的编码流Te输出至外部。
逆量化/逆DCT部105将从DCT/量化部103输入的量化系数逆量化,求出DCT系数。逆量化/逆DCT部105对求出的DCT系数进行逆DCT,计算残差信号。逆量化/逆DCT部105将计算出的残差信号输出至加法运算部106。
加法运算部106按每个像素相加从预测图像生成部101输入的PU的预测图像P的信号值和从逆量化/逆DCT部105输入的残差信号的信号值,生成解码图像。加法运算部106将生成的解码图像存储至参照图片存储器109。
环路滤波器107对加法运算部106生成的解码图像施加去块滤波器、样本自适应偏移(SAO)、自适应环路滤波器(ALF)。
预测参数存储器108按编码对象的每个图片以及CU,将编码参数决定部110生成的预测参数存储至预先规定的位置。
参照图片存储器109按编码对象的每个图片以及CU,将环路滤波器107生成的解码图像存储至预先规定的位置。
编码参数决定部110选择编码参数的多个集合中的一个集合。所谓编码参数,是指上述的预测参数、与该预测参数关联地生成的成为编码的对象的参数。预测图像生成部101利用这些编码参数的各个集合来生成PU的预测图像P。
编码参数决定部110关于多个集合分别计算表示信息量的大小和编码误差的成本值。成本值例如是码量与平方误差乘以系数λ后的值的和。码量是对量化误差和编码参数进行熵编码而得到的编码流Te的信息量。平方误差是关于在减法运算部102中计算出的残差信号的残差值的平方值的像素间的总和。系数λ可以是比预先设定的零大的实数。编码参数决定部110选择计算出的成本值成为最小的编码参数的集合。由此,熵编码部104将选择出的编码参数的集合作为编码流Te输出至外部,不输出未被选择的编码参数的集合。编码参数决定部110将决定出的编码参数存储至预测参数存储器108。
预测参数编码部111根据从编码参数决定部110输入的参数导出用于进行编码的形式,并输出至熵编码部104。所谓导出用于进行编码的形式,例如是指从运动矢量和预测矢量导出差分矢量。此外,预测参数编码部111根据从编码参数决定部110输入的参数导出为了生成预测图像而需要的参数,并输出至预测图像生成部101。所谓为了生成预测图像而需要的参数,例如是指子块单位的运动矢量。
帧间预测参数编码部112基于从编码参数决定部110输入的预测参数,导出如差分矢量的帧间预测参数。帧间预测参数编码部112作为导出向预测图像生成部101输出的预测图像的生成所需的参数的结构,包含一部分与帧间预测参数解码部303(参照图5等)导出帧间预测参数的结构相同的结构。关于帧间预测参数编码部112的结构将后述。
帧内预测参数编码部113根据从编码参数决定部110输入的帧内预测模式IntraPredMode导出用于进行编码的形式(例如,MPM_idx、rem_intra_luma_pred_mode等)。
(图像解码装置的主要部分结构)
在图10中示出表示本实施方式涉及的图像解码装置的主要部分结构的框图。在本图中,为了简化图,省略了图5所示的框图中包含的一部分的构件的图示。此外,便于说明起见,关于具有与图5所示的构件相同的功能的构件,标记相同的符号,并省略其说明。
如图10所示,图像解码装置31具备熵解码部301、预测图像生成部308、逆量化/逆DCT变换部311、参照图片存储器306、加法运算部312、和环路滤波器305。熵解码部301具备解码模块9、CN信息解码部10(分割信息解码部)、报头解码部19、CU解码部20、以及上下文决定部32。CU解码部20还具备PU信息解码部12以及TT信息解码部13(分割信息解码部,分割部),TT信息解码部13还具备TU解码部22。
(解码模块)
以下,对各模块的概略动作进行说明。解码模块9根据二进制进行解码语法值的解码处理。更具体而言,解码模块9基于从供给源供给的编码数据以及语法类别,对通过CABAC等可变长编码方式、或固定长编码方式被编码的语法值进行解码,并将解码出的语法值返回至供给源。
在以下所示的例子中,编码数据以及语法类别的供给源为CN信息解码部10、CU解码部20(PU信息解码部12以及TT信息解码部13)。
(报头解码部)
报头解码部19对从图像编码装置11输入的编码数据的VPS(video parameterset,视频参数集)、SPS、PPS、切片报头进行解码。
(CN信息解码部)
CN信息解码部10利用解码模块9对从图像编码装置11输入的编码数据进行编码树单元(CTU)以及编码节点(CN)的解码处理。具体而言,CN信息解码部10通过以下的过程根据编码数据对CTU信息以及CN信息进行解码。
首先,CN信息解码部10(分割信息解码部)利用解码模块9根据CTU中包含的CTU信息对树单元报头CTUH进行解码。其次,CN信息解码部10按照表示是否将对象CN进行QT分割的QT分割标记(分割信息)的上下文(后述),根据CN中包含的CN信息对QT分割标记进行解码。然后,CN信息解码部10递归性地分割并解码对象CN,直到QT分割标记不通知进一步的分割为止。最后,根据CTU信息对树单元尾部CTUF进行解码。
另外,在本实施方式中,对被解码的CN信息为QT分割标记(qt_split_flag)的例子进行了说明,但被解码的CN信息也可以为表示是否将对象CN进行BT(binary tree,二叉树)分割的BT分割标记(bt_split_flag)、表示是否将对象CN进行TT(triple tree,三叉树)分割的TT分割标记(tt_split_flag)。图11的(a)~(c)分别是表示QT分割、BT分割、以及TT分割的图。在本图中,箭头所指示的块为分割后的块。如图11的(a)所示,QT分割是将块分割为四个的分割。此外,如图11的(b)所示,BT分割是将块分割为两个的分割。此外,如图11的(c)所示,TT分割是将块分割为三个的分割。
此外,本实施方式涉及的图像解码装置31对CN进行了分割,但也可以通过同样的方法对CU、PU或者TU等的块进行分割。在该情况下,上述的对象CN可以是对象CU、对象PU或者对象TU等。
在树单元报头CTUH以及树单元尾部CTUF中,为了决定对象编码树单元的解码方法而包含图像解码装置31参照的编码参数。此外,在CN信息中,除了包含QT分割标记之外,还包含后述的BT方向标记(BT分割模式)、对象CN以及下级的编码节点处被应用的参数。
(上下文决定部)
上下文决定部32获取对象CN的分割关联信息和相邻CN的分割关联信息。另外,所谓CN的分割关联信息是指与CN的分割状况关联的信息,例如为包含CN的分区编号、深度、或者垂直深度以及水平深度、或者尺寸等的信息。
其次,上下文决定部32将获取到的对象CN以及相邻CN的分割关联信息进行比较。
进而,上下文决定部32根据比较结果来决定上下文。上下文决定部32决定的上下文被输出至上述CN信息解码部10。
另外,本说明书中的上下文表示CABAC中的上下文索引。在CABAC中,对表示变换系数的各种语法实施2值化处理,通过该2值化处理而得到的2值数据被算术编码。在此,作为上述各种语法,可列举表示是否进行QT分割的标记qt_split_flag、表示变换系数是否为0的标记即表示有无非0变换系数的标记significant_coeff_flag(也称为变换系数有无标记)、和表示处理顺序为最后的非0变换系数的位置的语法last_significant_coeff_x以及last_significant_coeff_y等。
此外,在CABAC中,在对一个码元(2值数据的1比特,也称为Bin)进行编码时,参照与处理对象码元对应的上下文索引,进行与由该上下文索引指定的发生概率相应的算术编码。此外,发生概率每当对一个码元进行编码时被更新。
在本说明书中,与QT分割标记即qt_split_flag对应的上下文由ctxIdxQT(或者ctxIdxSplit)表示。与BT分割标记即bt_split_flag对应的上下文由ctxIdxBT(或者ctxIdxSplit)表示。与TT分割标记即tt_split_flag对应的上下文由ctxIdxTT(或者ctxIdxSplit)表示。与BT分割方向标记或TT分割方向标记即bt_dir_flag或者tt_dir_flag对应的上下文由ctxIdxDir表示。也就是说,ctxIdxDir是作为分割方向表示是水平地进行分割或是垂直地进行分割的上下文。
此外,在本说明书中,若不区分BT分割以及TT分割而将包含两者的分割设为PT分割,则与PT分割标记即pt_split_flag对应的上下文由ctxIdxPT(或者ctxIdxSplit)表示。与PT分割方向标记即pt_dir_flag对应的上下文由ctxIdxDir表示。与PT分割图案标记即pt_pat_flag对应的上下文由ctxIdxPat表示。
(CU解码部)
CU解码部20由PU信息解码部12以及TT信息解码部13构成,对最下级的编码节点CN(即CU)的PUI信息以及TTI信息进行解码。
(PU信息解码部)
在PU信息解码部12中,利用解码模块9解码各PU的PU信息(合并标记(merge_flag)、合并索引(merge_idx)、预测矢量索引(mvp_idx)、参照图像索引(ref_idx)、帧间预测识别符(inter_pred_flag)、以及差分矢量(mvd)等)。
(TT信息解码部)
TT信息解码部13利用解码模块9解码变换树TT的TT信息(TU分割标记SP_TU(split_transform_flag)、TU残差标记CBP_TU(cbf_cb、cbf_cr、cbf_luma)等、以及TU)。
此外,TT信息解码部13具备TU解码部22。TU解码部22在TU包含残差的情况下,对QP更新信息(量化修正值)进行解码。另外,QP更新信息为表示与量化参数QP的预测值即量化参数预测值qPpred的差分值的值。此外,TU解码部22对量化预测残差(residual_coding)进行解码。
(上下文决定方法)
关于本实施方式涉及的图像解码装置31所执行的上下文决定方法,参照图12来详细地说明。图12是说明本实施方式涉及的图像解码装置31所执行的上下文决定方法的一例的流程图。
上下文决定部32从CN信息解码部10获取CN信息解码部10尚未分割的对象CN(对象块)的分割关联信息、和与该对象CN相邻且CN信息解码部10已经进行分割并解码出的相邻CN(相邻块)的分割关联信息。(步骤S0)。另外,在本说明书中,示出作为对象块而利用了对象CN、作为相邻块而利用了相邻CN的例子,但对象块以及相邻块也可以为CU、PU或者TU。在对象块以及相邻块为CU、PU或者TU的情况下,能够同样地实施本实施方式涉及的上下文决定方法,能够决定表示对QT分割标记进行解码的概率的上下文,其中,QT分割标记为表示是否将对象CU、对象PU、或者对象TU进行分割的标记。
上下文决定部32参照获取到的对象CN以及相邻CN来确定分割状况,由此判定是否存在与对象CN的各边(例如上边或者左边)相接的相邻CN的分割线(步骤S1)。另外,关于步骤S1的具体方法将后述。
上下文决定部32根据判定出的分割状况来决定上下文(步骤S2)。另外,关于步骤S2的具体方法将后述。
CN信息解码部10按照上下文决定部32决定的上下文,根据CN中包含的CN信息,解码表示是否将对象CN进行QT分割的QT分割标记(步骤S3)。
以下,对本实施方式的上下文决定方法的具体方法进行说明。图13是用于说明本实施方式的上下文决定方法的步骤S1的图,示出对象块O、相邻块WL、相邻块WA以及相邻块WB。如图13所示,对象块O在左边与相邻块WL相邻。此外,对象块O在上边与相邻块WA以及相邻块WB相邻。另外,图13中的各块内的编号表示分区编号。
另外,在以下的说明中,上下文决定部32导出垂直方向的分割标记splitVertically和水平方向的分割标记splitHorizontally,但它们也可以分别称为水平分割标记horSplit、垂直分割标记verSplit。若将等效标记的关系进行总结,则如下所述。
splitVertically=horSplit
splitHorizontally=verSplit
此外,在从左相邻块导出垂直方向的分割标记splitVertically的情况下,将splitVertically也称为splitLeft,在从上相邻块导出水平方向的分割标记splitHorizonally的情况下,将splitHorizonally也称为splitAbove。
首先,在步骤S1中,上下文决定部32参照在步骤S0中获取到的相邻块WL的分割关联信息,判定是否存在与相邻块WL和对象块O相接的线段(即,对象块O的左边)相接的分割线。而且,上下文决定部32将判定了有无分割线的结果作为垂直分割标记splitVertically(以下,也可以设为splitLeft或者水平分割标记horSplit)来输出。如图13所示,由于在对象块O的左边未相接分割线,因此上下文决定部32设定表示不存在分割线的splitVertically(=splitLeft=horSplit)=0。
此外,上下文决定部32参照在步骤S0中获取到的相邻块WA以及相邻块WB的分割关联信息,判定是否存在与将相邻块WA以及相邻块WB合起来的块和对象块O相接的线段(即,对象块O的上边)相接的分割线。而且,上下文决定部32将判定了有无分割线的结果作为水平分割标记splitHorizontally(以下,也可以设为splitAbove或垂直分割标记verSplit)来输出。如图13所示,由于存在与对象块O的上边相接的分割线,因此上下文决定部32设定表示存在分割线的splitHorizontally(=splitAbove=verSplit)=1。
接下来,在步骤S2中,上下文决定部32参照设定的splitVertically以及splitHorizontally,例如通过以下的式导出是否将对象块进行分割的上下文ctxIdxSplit。
ctxIdxSplit=splitVertically+splitHorizontally(=splitLeft+splitAbove=horSplit+verSplit)
在图13所示的相邻块的例子的情况下,由于为splitVertically=0且splitHorizontally=1,因此上下文决定部32输出ctxIdxSplit=1。另外,由上下文指定的上下文变量中包含的概率状态索引所指示的发生概率被设定并更新为越是具有分割线则发生概率越高。也就是说,CN信息解码部10利用是否存在相邻块的分割线来切换上下文,从而在相邻块存在分割线的情况下,如果解码表示在对象块O“有分割”的分割标记,则能够减小码量。进行这种设定的理由是,在相邻块WA或者相邻块WB被分割了的情况下,对象块O也被分割的可能性高的缘故。
在以下的各具体例中,参照附图来详细地说明上述的上下文决定方法的步骤S1以及S2的具体例。
(具体例1)
图14是用于说明本具体例的上下文决定方法的步骤S1的图,示出对象块O、相邻块WL、相邻块WA以及相邻块WB。如图14所示,对象块O在左边与相邻块WL相邻。此外,对象块O在上边与相邻块WA以及相邻块WB相邻。
另外,如图14所示,将对象块O的左上坐标设为(xP,yP),将与对象块O的左上坐标的正左相邻的点坐标设为点L(xP-1,yP),将与对象块O的左下坐标的正左相邻的点坐标设为点LB(xP-1,yP+H-1)。此外,将与对象块O的左上坐标的正上相邻的点坐标设为点A(xP,yP-1),将与对象块O的右上坐标的正上相邻的点坐标设为点AR(xP+W-1,yP-1)。另外,W为对象块O的X轴方向的宽度,H为对象块O的Y轴方向的高度。图14中的各块内的编号表示分区编号。
首先,在步骤S1中,上下文决定部32参照在步骤S0中获取到的相邻块WL的分割关联信息,判定包含点L的块的分区编号partIDL和包含点LB的块的分区编号partIDLB是否不同。在下述示出该判定的式子。
splitVertically(=splitLeft=horSplit)=partIDL!=partIDLB?1﹕0
在包含点L的块的分区编号和包含点LB的块的分区编号不同的情况下,点L和点LB分别包含在不同的块中,因此上下文决定部32判定为存在与对象块O的左边相接的分割线。另一方面,在包含点L的块的分区编号和包含点LB的块的分区编号相同的情况下,点L和点LB分别包含在相同的块中,因此上下文决定部32判定为不存在与对象块O的左边相接的分割线。
上下文决定部32将包含点L的块的分区编号partID和包含点LB的块的分区编号partIDLB是否不同的判定的结果作为上述的splitVertically(=splitLeft=horSplit)来输出。
在一个例子中,如图14所示,由于点L和点LB包含在相同的相邻块WL中,因此上下文决定部32设定表示不存在分割线的splitVertically=0。
同样地,上下文决定部32参照在步骤S0中获取到的相邻块WA以及相邻块WB的分割关联信息,判定包含点A的块的分区编号partIDA和包含点AR的块的分区编号partIDAR是否不同。在下述示出该判定的式子。
splitHorizontally(=splitAbove=verSplit)=partIDA!=partIDAR?1﹕0
而且,上下文决定部32将该判定的结果作为splitHorizontally(=splitAbove=verSplit)来输出。如图14所示,由于点A和点AR分别包含在不同的相邻块WA和相邻块WB中,因此上下文决定部32设定表示存在分割线的splitHorizontally=1。
接下来,在步骤S2中,上下文决定部32参照设定的splitVertically以及splitHorizontally,决定上下文即ctxIdxSplit=splitVertically+splitHorizontally。在本具体例的情况下,由于为splitVertically=0且splitHorizontally=1,因此上下文决定部32输出ctxIdxSplit=1。
(具体例2)
图15是用于说明本具体例的上下文决定方法的步骤S1的图,示出对象块O、相邻块WL、以及相邻块WA。如图15所示,对象块O在左边与相邻块WL相邻。此外,对象块O在上边与相邻块WA相邻。此外,如图15所示,相邻块WL包含与对象块O的左边相接的点L(xPb-1,yP),相邻块WA包含与对象块O的上边相接的点A(xPb,yPb-1)。另外,图15中的各块内的(n,m),n表示水平深度,m表示垂直深度(n以及m为整数)。另外,所谓水平深度,表示将某个块分割为在水平方向上排列的两个块的次数(分割阶层)。此外,所谓垂直深度,表示将某个块分割为在垂直方向上排列的两个块的次数(分割阶层)。例如,编码树块CTB在分割前,水平深度以及垂直深度分别为0(depthHor=0)(depthVer=0)。在QT分割中,每当分割时,水平深度以及垂直深度分别被加1(depthHor=depthHor+1)(depthVer=depthVer+1)。
在BT分割中,每当分割时,水平深度以及垂直深度的任一者被加1。在将某个块上下地进行了水平分割的情况下(bt_split_flag=1(BT分割标记)、bt_dir_flag=0(BT分割方向标记)),垂直深度被加1(depthVer=depthVer+1)。在将某个块左右地进行了垂直分割的情况下(bt_split_flag=1(BT分割标记)、bt_dir_flag=1(BT分割方向标记)),水平深度被加1(depthHor=depthHor+1)。
在TT分割中,在被TT分割的块的中央块(将分区编号设为1(partIdx=1))上下地进行了水平分割的情况下(pt_split_flag=1、pt_dir_flag=0、pt_pat_flag=1),垂直深度被加1(depthVer=depthVer+1)。在被TT分割的块的中央块(partIdx=1)左右地进行了垂直分割的情况下(pt_split_flag=1、pt_dir_flag=1、pt_pat_flag=1),水平深度被加1(depthHor=depthHor+1)。
此外,在被TT分割的块的中央块以外的块(将分区编号设为0或者2(partIdx=0或2))上下地进行了水平分割的情况下(pt_split_flag=1、pt_dir_flag=0、pt_pat_flag=0或2),垂直深度被加2(depthVer=depthVer+2)。在被TT分割的块的中央块以外的块(partIdx=0或2)左右地进行了垂直分割的情况下(pt_split_flag=1、pt_dir_flag=1、pt_pat_flag=1),水平深度被加2(depthHor=depthHor+2)。
首先,在步骤S1中,上下文决定部32参照相邻块WL以及对象块O的分割关联信息,将点L的垂直深度depthVerLeft(包含点L的相邻块WL的垂直深度depthVerLeft)和对象块O的垂直深度depthVertCurr进行比较,判定相邻块WL的垂直深度depthVerLeft是否比对象块O的垂直深度depthVertCurr大。在下述示出该判定的式子。
splitVertically(=splitLeft=horSplit)=depthVerLeft>depthVertCurr?1﹕0
在与对象块O的左边相邻的相邻块WL的垂直深度比对象块O的垂直深度大的情况下,相邻块WL为经过比对象块O多的次数的水平分割而形成的块,因此上下文决定部32判定为存在与对象块O的左边相接的分割线。另一方面,在相邻块WL的垂直深度比对象块O的垂直深度小的情况下,对象块O为经过比相邻块WL多的次数的水平分割而形成的块,因此上下文决定部32判定为不存在与对象块O的左边相接的分割线。另外,在相邻块WL的垂直深度与对象块O的垂直深度相等的情况下,上下文决定部32判定为不存在与对象块O的左边相接的分割线。
而且,上下文决定部32将相邻块WL的垂直深度是否比对象块O的垂直深度大的判定的结果作为splitVertically来输出。如图15所示,由于相邻块WL的垂直深度比对象块O的垂直深度小,因此上下文决定部32设定表示不存在分割线的splitVertically=0。
此外,上下文决定部32参照相邻块WA以及对象块O的分割关联信息,将点A的水平深度depthHorUpper(包含点A的相邻块WA的水平深度depthHorUpper)和对象块O的水平深度depthHorCurr进行比较,判定相邻块WA的水平深度depthHorUpper是否比对象块O的水平深度depthHorCurr大。在下述示出该判定的式子。
splitHorizontally(=splitAbove=verSplit)=depthHorUpper>depthHorCurr?1﹕0
在与对象块O的上边相邻的相邻块WA的水平深度比对象块O的水平深度大的情况下,相邻块WA为经过比对象块O多的次数的垂直分割而形成的块,因此上下文决定部32判定为存在与对象块O的上边相接的分割线。另一方面,在相邻块WA的水平深度比对象块O的水平深度小的情况下,对象块O为经过比相邻块WA多的次数的垂直分割而形成的块,因此上下文决定部32判定为不存在与对象块O的上边相接的分割线。另外,在相邻块WA的水平深度与对象块O的水平深度相等的情况下,上下文决定部32判定为不存在与对象块O的上边相接的分割线。
上下文决定部32将相邻块WA的水平深度是否比对象块O的水平深度大的判定的结果作为splitHorizontally来输出。如图15所示,由于相邻块WA的水平深度比对象块O的水平深度大,因此上下文决定部32示出表示存在分割线的splitHorizontally=1。
其次,在步骤S2中,上下文决定部32参照设定的splitVertically以及splitHorizontally来决定上下文即ctxIdxSplit=splitVertically+splitHorizontally。在本具体例的情况下,由于为splitVertically=0且splitHorizontally=1,因此上下文决定部32输出ctxIdxSplit=1。
(具体例3)
图16是用于说明本具体例的上下文决定方法的步骤S1的图,示出对象块O、相邻块WL、以及相邻块WA。如图16所示,对象块O在左边与相邻块WL相邻。此外,对象块O在上边与相邻块WA相邻。此外,如图16所示,相邻块WL包含与对象块O的左边相接的点L(xPb-1,yP),相邻块WA包含与对象块O的上边相接的点A(xPb,yPb-1)。另外,关于图16中的各块内的(n,m),n表示各块的水平方向的宽度,m表示垂直方向的高度(n以及m为整数)。
首先,在步骤S1中,上下文决定部32参照对象块O以及相邻块WL的分割关联信息,将对象块O的高度heightCurr和包含点L的相邻块WL的高度heightLeft进行比较,判定对象块O的高度heightCurr是否比相邻块WL的高度heigthLeft大。在下述示出该判定的式子。
splitVertically(=splitLeft=horSplit)=heightLeft<heightCurr?1﹕0
在对象块O的高度比相邻块WL的高度大的情况下,相邻块WL为经过比对象块O多的次数的水平分割而形成的块,因此上下文决定部32判定为存在与对象块O的左边相接的分割线。另一方面,在对象块O的高度比相邻块WL的高度小的情况下,对象块O为经过比相邻块WL多的次数的水平分割而形成的块,因此上下文决定部32判定为不存在与对象块O的左边相接的分割线。另外,在对象块O的高度与相邻块WL的高度相等的情况下,上下文决定部32判定为不存在与对象块O的左边相接的水平方向的分割线。
上下文决定部32将对象块O的高度是否比相邻块WL的高度大的判定的结果作为splitVertically来输出。如图16所示,由于对象块O的高度比相邻块WL的高度小,因此上下文决定部32设定表示不存在分割线的splitVertically=0。
此外,上下文决定部32参照对象块O以及相邻块WA的分割关联信息,将对象块O的宽度widthCurr和包含相邻块A的相邻块WA的宽度widthAbove进行比较,判定对象块O的宽度widthCurr是否比相邻块WA的宽度widthAbove大。在下述示出该判定的式子。
splitHorizontally(=splitAbove=verSplit)=widthAbove<widthCurr?1﹕0
在对象块O的宽度比相邻块WA的宽度大的情况下,相邻块WA为经过比对象块O多的次数的垂直分割而形成的块,因此上下文决定部32判定为存在与对象块O的上边相接的分割线。另一方面,在对象块O的宽度比相邻块WA的宽度小的情况下,对象块O为经过比相邻块WA多的次数的垂直分割而形成的块,因此上下文决定部32判定为不存在与对象块O的上边相接的分割线。另外,在对象块O的宽度与相邻块WA的宽度相等的情况下,上下文决定部32判定为不存在与对象块O的上边相接的分割线。
上下文决定部32将对象块O的宽度是否比相邻块WA的宽度大的结果作为splitHorizontally来输出。如图16所示,由于对象块O的宽度比相邻块WA的宽度大,因此上下文决定部32设定表示存在分割线的splitHorizontally=1。
其次,在步骤S2中,上下文决定部32参照设定的splitVertically以及splitHorizontally来决定上下文即ctxIdxSplit=splitVertically+splitHorizontally(=splitLeft+splitUpper)。在本具体例的情况下,由于为splitVertically=0且splitHorizontally=1,因此上下文决定部32输出ctxIdxSplit=1。
(具体例4)
以下,对本实施方式的上下文决定方法的具体方法进行说明。图17是用于说明本实施方式的上下文决定方法的S1202的图,示出对象块O、相邻块WL、以及相邻块WA。如图17所示,对象块O在左边与相邻块WL相邻。此外,对象块O在上边与相邻块WA相邻。此外,如图17所示,相邻块WL包含与对象块O的左边相接的点L(xPb-1,yP),相邻块WA包含与对象块O的上边相接的点A(xPb,yPb-1)。另外,图17中的各块内的编号表示分割关联信息(深度)。深度表示将某个块分割为在水平或垂直方向上排列的两个块的次数(分割阶层)。例如,分割前的编码树单元CTU的深度为0(depth=0)。在一次的QT分割中,在水平以及垂直方向上各分割一次,因此深度被加2(depth=depth+2)。
在一次的BT分割中,在水平或垂直方向上被分割一次,因此深度被加1(depth=depth+1)。
在一次的TT分割中,在被TT分割的块的中央块进行了一次分割的情况下,深度被加1(depth=depth+1)。此外,在中央块以外的块进行了一次分割的情况下,深度被加2(depth=depth+2)。
另外,在以下的说明中,上下文决定部32导出垂直方向的分割(上下地分割)splitVertically和水平方向的分割(左右地分割)splitHorizontally,但它们也可以分别称为水平分割标记horSplit、垂直分割标记verSplit。若将等效标记的关系进行总结,则如以下所述。
splitVertically=horSplit
splitHorizontally=verSplit
此外,在从左相邻块导出垂直方向的分割splitVertically的情况下,将splitVertically也称为splitLeft,在从上相邻块导出水平方向的分割splitHorizonally的情况下,将splitHorizonally也称为splitAbove。
首先,在S1202中,上下文决定部32参照在S1201中获取到的相邻块WL以及对象块O的分割关联信息,将相邻块WL的深度depthLeft和对象块O的深度depthCurr进行比较,判定相邻块WL的深度depthLeft是否比对象块O的深度depthCurr大。在下述示出该判定的式子。
splitLeft=depthLeft>depthCurr?1﹕0
在相邻块WL的深度比对象块O的深度大的情况下,上下文决定部32设splitLeft=1。另一方面,在相邻块WL的深度比对象块O的深度小的情况下,上下文决定部32设splitLeft=0。另外,在相邻块WL的深度与对象块O的深度相等的情况下,上下文决定部32设splitLeft=0。在图17中,由于相邻块WL的深度比对象块O的深度大,因此上下文决定部32设定splitLeft=1。
此外,上下文决定部32参照在S1201中获取到的相邻块WA和对象块O的分割关联信息,将相邻块WA的深度depthAbove和对象块O的深度depthCurr进行比较,判定相邻块WA的深度depthAbove是否比对象块O的深度depthCurr大。在下述示出该判定的式子。
splitAbove=depthAbove>depthCurr?1﹕0
在相邻块WA的深度比对象块O的深度大的情况下,上下文决定部32设splitAbove=1。另一方面,在相邻块WA的深度比对象块O的深度小的情况下,上下文决定部32设splitAbove=0。另外,在相邻块WA的深度与对象块O的深度相等的情况下,上下文决定部32设splitAbove=0。在图17中,由于相邻块WA的深度与对象块O的深度相同,因此上下文决定部32设定splitAbove=0。
接下来,在S1203中,上下文决定部32参照比较结果的splitLeft以及splitAbove,例如通过以下的式导出是否将对象块进行分割的上下文ctxIdxSplit。
ctxIdxSplit=splitLeft+splitAbove
在图17中,由于为splitLeft=1、splitAbove=0,因此上下文决定部32输出ctxIdxSplit=1。另外,在相邻块与对象块相比进一步被分割(相邻块的深度比对象块的深度大)的情况下,分割标记被设定并更新为成为ctxIdxSplit=1的概率变高。此外,在相邻块与对象块相同或未被分割(相邻块的深度为对象块的深度以下的)情况下,被设定并更新为成为ctxIdxSplit=1的概率变低。也就是说,CN信息解码部10将相邻块和对象块的深度进行比较,切换上下文,从而能够减小码量。进行这种设定的理由是,在相邻块WA或者相邻块WL被细致地分割的情况下,对象块O也被分割的可能性高的缘故。
在上述中,说明了参照相邻块的分割关联信息(深度)导出表示为了编码或解码对象块的分割标记(qt_split_flag、bt_split_flag、pt_split_flag)而需要的概率的上下文ctxIdxSplit的方法(以后记为方法1)。上述的方法,由于将对象块和相邻块的深度进行比较,并用1和0来表现相邻块的深度是否比对象块的深度大,因此处理简单。然而,由于不利用对象块与相邻块的分割次数的差异(深度的差、深度不同的程度)、块尺寸的差(尺寸不同的程度),因此存在上下文的精度不好的课题。更具体而言,在与对象块的深度相比相邻块的深度非常大的情况下(例如,深度的差比1大),较之于与对象块相比相邻块的深度稍大的情况(例如,深度的差为1),对象块容易被分割。同样地,在与对象块的深度相比相邻块的深度小的情况下(例如,深度的差为-1),较之于对象块与相邻块的深度相等的情况(例如,深度的差为0),对象块不易被分割。在考虑块尺寸而非对象块与相邻块的深度的情况下,也具有同样的性质。进而,越是对应的块尺寸的差大的情况,深度的差也越容易变大,反之,若不活用这种特性,则会产生上下文的精度不好的课题。
以下,说明参照分割关联信息的差来导出分割标记的上下文ctxIdxSplit从而解决上述课题的方法。
图18是表示图像解码装置31或图像编码装置11所执行的上下文决定方法的一例的流程图。与图12的不同在于,S1402和S1403。
在图像解码装置31中,在S1201中,上下文决定部32从CN信息解码部10获取对象块(对象CN)的分割关联信息和与该对象CN相邻的相邻块(相邻CN)的分割关联信息。另外,在本说明书中,示出作为对象块而利用了对象CN、作为相邻块而利用了相邻CN的例子,但对象块以及相邻块也可以为CU、PU或者TU。在S1402中,上下文决定部32根据获取到的对象块与两个相邻块的分割关联信息来导出分割关联信息的差分值。在S1403中,上下文决定部32根据对导出的两个差分值进行了加法运算的结果来决定上下文。在S1204中,CN信息解码部10按照上下文决定部32决定的上下文,根据CN信息解码表示是否将对象块进行分割的分割标记。
此外,在图像编码装置11中,在S1201中,上下文决定部32获取对象块(对象CN)的分割关联信息和与该对象CN相邻的相邻块(相邻CN)的分割关联信息。在S1402中,上下文决定部32根据获取到的对象块与两个相邻块的分割关联信息来导出分割关联信息的差分值。在S1403中,上下文决定部32根据对导出的两个差分值进行了加法运算的结果来决定上下文。在S1204中,CN信息编码部1042按照上下文决定部32决定的上下文,编码表示是否将对象块进行分割的分割标记。
在以下的各具体例中,参照附图来详细地说明上述的上下文决定方法的S1402以及S1403的具体例。
(具体例5)参照分割阶层(深度)的差分
在具体例5中,对将深度设为分割关联信息的例子进行说明。
在图18的S1402中,利用下式导出对象块的深度depthCurr与相邻块WA的深度depthAbove的差分值diffDepth0、以及对象块的深度depthCurr与相邻块WL的深度depthLeft的差分值diffDepth1。
diffDepth0=depthAbove-depthCurr
diffDepth1=depthLeft-depthCurr
在图18的S1403中,根据在S1402中导出的两个差分值diffDepth0、diffDepth1,用下式导出上下文。
ctxIdxSplit=diffDepth0+diffDepth1
图19的(1)以及(2)是表示针对对象块O与上侧的相邻块WA的深度利用方法1以及具体例5导出的上下文ctxIdxSplit的例。图19的各块内的编号表示深度。在图19中,关于对象块O与上侧的相邻块WA进行说明,但关于对象块O与左侧的相邻块WL也同样,省略说明。在图19的(1)中,在方法1中,相邻块WA的深度比对象块O的深度大的(a)、(b)为splitAbove=1,非该情况的(c)、(d)为splitAbove=0。在具体例5中,由于取相邻块WA的深度与对象块O的深度的差分,因此(a)、(b)、(c)、(d)的diffDepth0分别为4、2、0、-2。因此,具体例5能够精度良好地导出上下文。在图19的(2)中,在方法1中,相邻块WA的深度比对象块O的深度大的(a)、(b)、(c)为splitAbove=1,非该情况的(d)为splitAbove=0。在具体例5中,由于取相邻块WA的深度与对象块O的深度的差分,因此(a)、(b)、(c)、(d)的diffDepth0分别为3、2、1、0。因此,具体例5能够精度良好地导出上下文。
(具体例6)参照块的尺寸(宽度与高度)的差分
在具体例6中,对将块的尺寸(宽度与高度)设为分割关联信息的例子进行说明。
在此,所谓块尺寸,表示块的宽度、或者、块的高度、或者、块的宽度与高度两者。此外,也可以将块的宽度与高度的积或和作为块尺寸来使用。
在图18的S1402中,利用下式导出对象块的宽度的对数值log2widthCurr与相邻块WA的宽度的对数值log2widthAbove的差分值diffSize0、以及对象块的高度的对数值log2heightCurr与相邻块WL的高度的对数值log2heightLeft的差分值diffSize1。
diffSize0=log2widthCurr-log2widthAbove
diffSize1=log2heightCurr-log2heightLeft
在图18的S1403中,根据在S1402中导出的两个差分值diffSize0、diffSize1,用下式导出上下文。
ctxIdxSplit=diffSize0+diffSize1
(具体例7)参照深度以及块的尺寸(宽度与高度)的差分
在具体例7中,对将具体例5的深度与具体例6的块的尺寸(宽度与高度)作为分割关联信息来使用的例子进行说明。
在图18的S1402中,用与具体例5、具体例6同样的方法导出差分值diffDepth0、diffDepth1、diffSize0、diffSize1,用下式分别求出深度与块的尺寸的差分。
diffDepth=diffDepth0+diffDepth1
diffSize=diffSize0+diffSize1
在图18的S1403中,根据在S1402中导出的两个差分值diffDepth、diffSize,如以下那样导出上下文。
ctxIdxSplit=diffDepth+diffSize
此外,上下文的导出也可以是下述。
ctxIdxSplit=(diffDepth+diffSize)>>1
此外,对将具体例5的深度与具体例6的块的尺寸(宽度与高度)作为分割关联信息来使用的另一例进行说明。
如图17的(2)所示,由于深度能够用块尺寸(宽度width与高度height)来表现,因此若将上述的深度作为尺寸来表现,则如下。
diffDepth0=(log2widthCurr+log2heightCurr)-(log2widthAbove+
log2heightAbove)
diffDepth1=(log2widthCurr+log2heightCurr)-(log2widthLeft+
log2heightLeft)
因此,上下文成为如下。
diffTmp=3*log2widthCurr+3*log2heightCurr-2*log2widthAbove-
log2heightAbove-log2widthLeft-2*log2heightLeft
ctxIdxSplit=diffTmp
或者,也可以设为如下。
diffTmp=(3*log2widthCurr+3*log2heightCurr-2*log2widthAbove-log2heightAbove-log2widthLeft-2*log2heightLeft)>>1
ctxIdxSplit=diffTmp
(具体例5~7的一般化)
结果,若考虑相邻块的宽度与高度,则“1)与是否在对象块的左侧存在分割线有关的左侧相邻块的高度的对数值log2heightLeft、和与是否在对象块的上侧存在分割线有关的上侧相邻块的宽度的对数值log2widthAbove”在上下文的导出中是重要的,但“2)左侧相邻块的宽度的对数值log2widthLeft和上侧相邻块的高度的对数值log2heightAbove”也有助于上下文的导出。因此,在对分割关联信息的差分值进行加法运算来导出上下文的情况下,参照重要性来加权为宜。此时,将重要性高的1)的log2heightLeft与log2widthAbove的权重设为W1,将重要性低的2)的log2widthLeft与log2heightAbove的权重设为W2,将重要性高的权重W1设定为W1≥W2是恰当的。在该情况下,分割关联信息的加法运算用下式表示。
diffTmp=((W1+W2)*log2widthCurr+(W1+W2)*log2heightCurr-W1*log2widthAbove-W2*log2heightAbove-W2*log2widthLeft-W1*log2hei ghtLeft)
在上述的例子中,W1=1,W2=1对应于具体例5,W1=1,W2=0对应于具体例6,W1=2,W2=1对应于具体例7。除此之外,W1=3,W2=1等的结构也能够实现。
(具体例8)参照三个以上的相邻块
在具体例5~7中,参照对象块与两个相邻块的分割关联信息而导出了分割标记的上下文。在具体例8中,说明参照三个以上的相邻块的分割关联信息来导出分割标记的上下文的例子。另外,以下,分割关联信息设为深度,将具体例5扩展来进行说明,但并不限于此,在将分割关联信息设为块尺寸、深度与块尺寸双方,并对具体例6或3进行了扩展的情况下,也同样能够应用,因此省略说明。
图20的(1)是表示对象块O与三个相邻块WA、WL、WAR的位置关系的图。
在图18的S1402中,利用下式导出对象块的深度depthCurr、相邻块WA的深度depthAbove、相邻块WL的深度depthLeft、相邻块WAR的深度depthAboveRight的差分值diffDepth0、diffDepth1、diffDepth2。
diffDepth0=depthAbove-depthCurr
diffDepth1=depthLeft-depthCurr
diffDepth2=depthAboveRight-depthCurr
在图18的S1403中,根据在S1402中导出的三个差分值diffDepth0、diffDepth1、diffDepth2,用下式导出上下文。
ctxIdxSplit=diffDepth0+diffDepth1+diffDepth2
此外,图20的(2)是表示对象块O与四个相邻块WA、WL、WAR、WBL的位置关系的图。
在图18的S1402中,利用下式导出对象块的深度depthCurr、相邻块WA的深度depthAbove、相邻块WL的深度depthLeft、相邻块WAR的深度depthAboveRight、相邻块WBL的深度depthBottomLeft的差分值diffDepth0、diffDepth1、diffDepth2、diffDepth3。
diffDepth0=depthAbove-depthCurr
diffDepth1=depthLeft-depthCurr
diffDepth2=depthAboveRight-depthCurr
diffDepth3=depthBottomLeft-depthCurr
在图18的S1403中,根据在S1402中导出的四个差分值diffDepth0、diffDepth1、diffDepth2、diffDepth3,用下式导出上下文。
ctxIdxSplit=diffDepth0+diffDepth1+diffDepth2*diffDepth3
此外,在利用对象块O与四个相邻块WA、WL、WAR、WBL的深度的情况下,也可以利用其他计算方法来导出差分值。例如,作为一例,在图18的S1402中,用下式计算差分值。
diffDepth0=depthAbove+DepthAboveRight-2*depthCurr
diffDepth1=depthLeft+depthBottomLeft-2*depthCurr
在图18的S1403中,用下式导出上下文。
ctxIdxSplit=diffDepth0+diffDepth1
此外,作为另一例,在图18的S1402中用下式计算差分值。
diffDepth0=((depthAbove+DepthAboveRight)>>1)-depthCurr
diffDepth1=((depthLeft+depthBottomLeft)>>1)-depthCurr
在图18的S1403中,用下式导出上下文。
ctxIdxSplit=diffDepth0+diffDepth1
(具体例9)
图21是表示图像解码装置31或图像编码装置11所执行的上下文决定方法的另一例的流程图。图18与图21的流程图的差异在于,S1403和S1703。除此以外的步骤相同,因此省略说明。
上下文决定部32,在S1403中,对在S1402中计算出的两个差分值进行加法运算来决定上下文,但在S1703中,利用在S1402中计算出的差分值中的最大的差分值来决定上下文。用下式来表现该处理。
ctxIdxSplit=max(diffDepth0,diffDepth1)
在具体例9中,利用最大的差分值来决定上下文,因此分割数多(深度大)的状况容易被选择。
(利用可能性的核对)
在上述的说明中,假定对象块O的相邻块能够利用(available),但实际在图像的端等有时不存在相邻块。在相邻块不能利用的情况下,差分值设为0。例如,在具体例5中,S1402成为下述的过程。
diffDepth0=availableAbove?(depthAbove-depthCurr):0
diffDepth1=availableLeft?(depthLeft-depthCurr):0
ctxIdxSplit=diffDepth0+diffDepth1
在此,availableAbove与availableLeft表示对象块的上侧的相邻块与左侧的相邻块的利用可能性,如果具有相邻块则为1,否则为0。另外,利用可能性的核对并不限于导出深度的差分值的具体例5,也能够应用于具体例6~9等导出尺寸的差分值的情况、利用深度的差分值与尺寸的差分值两者的情况。例如,在具体例6中,成为下述的过程。
diffSize0=availableAbove?log2widthCurr-log2widthAbove:0
diffSize1=availableLeft?log2heightCurr-log2heightLeft:0
ctxIdxSplit=diffSize0+diffSize1
(剪裁与映射)
具体例5~8是利用对象块与相邻块的分割关联信息的差分来细致地设定分割标记的上下文从而提高上下文的精度的技术。然而,若单纯地对分割关联信息的差分值进行加法运算,则在块尺寸大的情况下,上下文的取值会成为非常宽的范围。例如,在CTU尺寸为128x128的情况下,可取的深度的值成为0(对应于128x128)~11(4x4),差分值的范围成为-22~22。上下文的值的增加导致熵编码以及解码处理的复杂化,所需表格的存储量也变大,因此不优选。此外,通常,上下文被分配为0以上的整数,因此产生负的数是不优选的。因此,说明在导出上下文的过程中进行剪裁、映射、偏移的加法运算、乘法运算、移位运算等来限制上下文的值的范围的技术。
如在图18的流程图中说明过的那样,上下文决定部32是在S1402中计算分割关联信息的差分值,在S1403中根据对多个差分值进行了加法运算的结果来导出上下文的处理的流程。另外,在以后的说明中,作为分割关联信息而利用深度,对具体例5进行扩展来说明,但将分割关联信息作为块尺寸、或深度与块尺寸双方,对具体例6或7进行扩展的方法也能够应用相同的方法,因此省略说明。此外,对于在图21中说明过的利用最大值的方法,剪裁与映射也同样能够应用,省略说明。
首先,说明在S1403中对在S1402中计算出的差分值进行了加法运算之后实施剪裁的例子。对于将对象块O与相邻块WA的深度的差分值diffDepth0、和对象块O与相邻块WL的深度的差分值diffDepth1进行了加法运算的结果,如下式所示那样实施剪裁。
diffTmp=clip3(0,THDmax,diffDepth0+diffDepth1+offsetD) (c1)
ctxIdxSplit=ctxTbl[diffTmp]
在此,ctxTbl是用于根据深度的差分值的加法运算结果来导出上下文的表格,详细将后述。offsetD是用于使深度的差分值的零点的位置(中央)对应于表格ctxTbl的中央要素附近的偏移。向0至THDmax的剪裁是为了降低所需表格的项目数而进行的,THDmax+1为表格的项目数的最大值。
图22的(1)是说明在对差分值进行了加法运算之后剪裁的动作的流程图。图22的(1)除了图18的S1403的处理被变更为S18031、S18041、S1805以外与图18相同,省略说明。在S18031中,上下文决定部32对在S1402中导出的差分值进行加法运算。在S18041中,上下文决定部32用(c1)的方法对加法运算值进行剪裁。在S1805中,上下文决定部32利用剪裁结果来导出上下文。
例如,若设ctxTbl[]={0,1,1,2,3}、offsetD=2、THDmax=4,则通过偏移将前述的可取的差分值-22~22变更为-20~24,将通过剪裁限制为0~4的值输入至表格,从而能够限制为0~2的四个值。此外,若设ctxTbl[]={0,1,2}、offsetD=1、THDmax=2,则通过偏移将前述的可取的差分值-22~22变更为-21~23,将通过剪裁限制为-1~1的值输入至表格,从而能够限制为0~2的三个值。此外,若设ctxTbl[]={0,1,1,2,3,3}、offsetD=2、THDmax=5,则通过偏移将前述的可取的差分值变更为-20~24,将通过剪裁限制为0~5的值输入至表格,从而能够限制为0~3的四个值。
此外,作为另一例,说明在S1403中对将在S1402中计算出的差分值剪裁后的结果进行加法运算的例子。对于将对象块O与相邻块WA的深度的差分值diffDepth0、和对象块O与相邻块WL的深度的差分值diffDepth1,如下式所示那样实施剪裁。
diffDepth0=clip3(-offsetD,offsetD,depthAbove-depthCurr)
diffDepth1=clip3(-offsetD,offsetD,depthLeft-depthCurr) (c2)
diffTmp=diffDepth0+diffDepth1+(offsetD<<1)
ctxIdxSplit=ctxTbl[diffTmp]
图22的(2)是说明在将差分值剪裁之后对偏移进行加法运算的动作的流程图。图22的(2)除了图18的S1403的处理被变更为S18032、S18042、S1805以外与图18相同,省略说明。在S18032中,上下文决定部32用(c2)的方法对在S1402中导出的差分值进行剪裁。在S18042中,上下文决定部32对剪裁值进行加法运算。在S1805中,上下文决定部32利用加法运算结果来导出上下文。
在该例子中,按多个深度的每个差分值进行剪裁,因此在某个深度的差分值变得过大(或过小)的情况下,具有最终结果不会过于受到其过大(或过小)的差分值的影响的效果。
此外,作为另一例,说明在S1403中对将在S1402中计算出的差分值剪裁后的结果进行加法运算并进一步剪裁的例子。对于将对象块O与相邻块WA的深度的差分值diffDepth0、和对象块O与相邻块WL的深度的差分值diffDepth1,如下式所示实施剪裁。
diffDepth0=clip3(-offsetD1,offsetD1,depthAbove-depthCurr)
diffDepth1=clip3(-offsetD1,offsetD1,depthLeft-depthCurr)
diffTmp=clip3(0,THDmax,diffDepth0+diffDepth1+(offsetD1<<1))(c3)
ctxIdxSplit=ctxTbl[diffTmp]
图22的(3)是说明在将差分值剪裁之后进行加法运算并对加法运算值进一步剪裁的动作的流程图。图22的(3)除了图22的(2)的S18042与S1805之间追加了S1806以外与图22的(2)相同,省略说明。在S1806中,上下文决定部32用(c3)的方法进行剪裁。
在该例子中,在加法运算后也进行剪裁,因此具有即便加法运算结果变得过大(或过小),最终结果也不会过于受到影响的效果。
另外,在offsetD=2、THDmax=5的情况下,在图23中示出用于将加法运算结果或最大值映射至上下文的表格。这些是在仿真中具有效果的加法运算结果与上下文的组合的例子。例如,映射为0,1,2这3个值的
ctxTbl[]={0,0,0,1,2,2}、
映射为0,1,2,3这4个值的
ctxTbl[]={0,0,0,1,2,3}
尤其是适当的。
在上述中,对于从差分值的加法运算结果向上下文值的映射而利用了表格,但除了利用表格的映射以外,也可以是如下式那样通过加法运算结果与给定的阈值的比较来导出上下文的方法。
if(diffTmp<THD1)ctxIdx=0
else if(diffTmp<THD2)ctxIdx=1
else if(diffTmp<THD3)ctxIdx=2
else ctxIdx=3
此外,也可以是如下述的三个例子那样,采用除法运算、移位运算、乘法运算等四则运算和移位来使加法运算值的值的范围变化从而导出适当的范围的上下文的方法。
diffDepth0=depthAbove-depthCurr
diffDepth1=depthLeft-depthCurr
例1
diffTmp=(diffDepth0+diffDepth1)/2
例2
diffTmp=(diffDepth0+diffDepth1)>>1
例3
diffTmp=(diffDepth0+diffDepth1)*3>>2
此外,也可以采用利用可能性的核对、剪裁、映射、四则运算的组合,根据差分值的加法运算值来导出上下文。
在下述的例子中,采用利用可能性的核对,在导出与上和左相邻的深度和尺寸的差分值diffDepth0、diffDepth1、diffSize0、diffSize1之后对它们进行剪裁。进而,根据差分值的加法运算来导出深度的差分值diffTmpD、尺寸的差分值diffTmpS,将它们的平均值diffTmp作为索引,通过利用了表格的映射来导出上下文。
diffDepth0=availableAbove?(depthAbove-depthCurr):0
diffDepth1=availableLeft?(depthLeft-depthCurr):0
diffDepth0=clip3(-offsetD1,offsetD1,diffDepth0)
diffDepth1=clip3(-offsetD1,offsetD1,diffDepth1)
diffSize0=availableAbove?log2widthCurr-log2widthAbove:0
diffSize1=availableLeft?log2heightCurr-log2heightLeft:0
diffSize0=clip3(-offsetD1,offsetD1,diffSize0)
diffSize1=clip3(-offsetD1,offsetD1,diffSize1)
diffTmpD=clip3(0,THDmax,diffDepth0+diffDepth1+offsetD2)
diffTmpS=clip3(0,THSmax,diffSize0+diffSize1+offsetD2)
diffTmp=(diffTmpD+diffTmpS)>>1
ctxIdxSplit=ctxTbl[diffTmp]
在此,例如,ctxTbl[]={0,0,1,2,3,3}、offsetD1=1、offsetD2=2、THDmax=5,THSmax=5等是适当的,但也可以是其他值。
另外,上述的处理通过剪裁看起来复杂,但结果若除去剪裁的话则成为下述那样。即,如已经说明过的那样,在相邻块的分割关联信息能够利用的情况下,是通过表格查找将分割可能信息(在此为深度与尺寸)的差分的和映射为适当的范围的值的上下文的处理。
diffDepth0=availableAbove?(depthAbove-depthCurr):0
diffDepth1=availableLeft?(depthLeft-depthCurr):0
diffSize0=availableAbove?log2widthCurr-log2widthAbove:0
diffSize1=availableLeft?log2heightCurr-log2heightLeft:0
diffTmpD=diffDepth0+diffDepth1+offsetD2
diffTmpS=diffSize0+diffSize1+offsetD2
diffTmp=(diffTmpD+diffTmpS)>>1
ctxIdxSplit=ctxTbl[diffTmp]
(图像编码装置)
本实施方式涉及的图像解码装置31的结构也能够应用于图像编码装置11。在该情况下,图像编码装置11具备取代CN信息解码部10的CN信息编码部(未图示)和上下文决定部32,导出表示是否将对象块进行分割的分割标记(QT分割标记、BT分割标记或者TT分割标记等)的上下文。
在具有上述结构的图像编码装置11中,上下文决定部32获取尚未被分割的对象块的分割关联信息、和与该对象块相邻且已经被分割的相邻块的分割关联信息。其次,上下文决定部32参照对象块以及相邻块的分割关联信息来确定相邻块的分割状况,由此判定是否存在与对象块的各边相接的相邻块的分割线。接下来,上下文决定部32根据该判定来决定上下文。其次,CN信息编码部根据上下文决定部32决定的上下文,编码表示是否将对象块进行分割的分割标记。
(实施方式1的总结)
如以上,本实施方式涉及的图像解码装置31参照与对象块相邻的一个或者多个相邻块的分割状况来决定该对象块的分割信息(分割标记)的上下文,并利用该上下文来解码对象块的分割信息。此外,本实施方式涉及的图像解码装置31参照相邻块的分区编号、水平深度以及垂直深度或者尺寸来确定相邻块的分割状况,由此判定有无相邻块的分割线,并参照该判定来决定上下文。由此,因为参照相邻块的分区编号、水平深度以及垂直深度或者尺寸,所以反映了相邻块的分割关联信息,能够决定更适当的上下文。因此,能够在图像解码装置中削减分割信息的码量。
此外,在本实施方式涉及的图像编码装置11以及图像解码装置31中,参照与对象块相邻的一个或者多个相邻块的分割关联信息来决定该对象块的分割信息(分割标记)的上下文,并利用该上下文来编码或解码对象块的分割信息。此外,在本实施方式中,作为分割关联信息而参照深度或者块尺寸来判定相邻块的分割状况,并参照该判定来决定上下文。此时,通过利用多个相邻块的分割关联信息的差分值,从而更加精度良好地反映了相邻块的分割关联信息,能够精度良好地决定上下文。由此,能够决定更适当的上下文。此外,在对象块的分割关联信息与相邻块的分割关联信息的差分值的符号(±)不同的情况下,即,在相邻块中具有深度为对象块以下的块和大的块的情况下,不会始终判定为容易被分割,根据差分值也能够判定容易被分割的情况和不是容易被分割的情况。因此,能够在图像编码装置以及图像解码装置中削减分割信息的码量。
本发明的一形态涉及的图像解码装置按每个块来对图片进行解码,其特征在于,所述图像解码装置具备:上下文决定部,参照对与对象块相邻的一个或者多个相邻块的分割关联信息进行了比较的结果,决定该对象块的分割信息的上下文;和分割信息解码部,利用由上述上下文决定部决定的上下文来解码上述对象块的分割信息。
在本发明的一形态涉及的图像解码装置中,上述分割信息为表示是否分割上述对象块的分割标记,上述分割关联信息为块的深度。
在本发明的一形态涉及的图像解码装置中,上述分割信息为表示是否分割上述对象块的分割标记,上述分割关联信息为块尺寸。
在本发明的一形态涉及的图像解码装置中,上述分割信息为表示是否分割上述对象块的分割标记,上述分割关联信息为块的深度以及块尺寸。
在本发明的一形态涉及的图像解码装置中,对上述分割关联信息进行了比较的结果是对象块的分割关联信息与相邻块的分割关联信息的差分值的加法运算值。
在本发明的一形态涉及的图像解码装置中,对上述分割关联信息进行了比较的结果是对象块的分割关联信息与相邻块的分割关联信息的差分值的最大值。
本发明的一形态涉及的图像编码装置按每个块来对图片进行编码,其特征在于,所述图像编码装置具备:上下文决定部,参照对与对象块相邻的一个或者多个相邻块的分割关联信息进行了比较的结果,决定该对象块的分割信息的上下文;和分割信息编码部,利用由上述上下文决定部决定的上下文来编码上述对象块的分割信息。
在本发明的一形态涉及的图像编码装置中,上述分割信息为表示是否分割上述对象块的分割标记,上述分割关联信息为块的深度。
在本发明的一形态涉及的图像编码装置中,上述分割信息为表示是否分割上述对象块的分割标记,上述分割关联信息为块尺寸。
在本发明的一形态涉及的图像编码装置中,上述分割信息为表示是否分割上述对象块的分割标记,上述分割关联信息为块的深度以及块尺寸。
在本发明的一形态涉及的图像编码装置中,对上述分割关联信息进行了比较的结果是对象块的分割关联信息与相邻块的分割关联信息的差分值的加法运算值。
在本发明的一形态涉及的图像编码装置中,对上述分割关联信息进行了比较的结果是对象块的分割关联信息与相邻块的分割关联信息的差分值的最大值。
〔实施方式2〕
若基于附图来说明本发明的实施方式2,则如以下那样。另外,在本实施方式中,也同样能够利用实施方式1涉及的图像解码装置31以及图像编码装置11。因此,方便说明起见,关于具有与在上述实施方式中说明过的构件相同的功能的构件,省略其说明。
在本实施方式中,上下文决定部32导出分割标记的上下文,其中,该分割标记为表示是否将尚未被分割的色差块进行分割的标记。为此,上下文决定部32通过参照与该色差块对应且已经被分割并解码的亮度块来导出上下文。
(上下文决定部)
本实施方式涉及的上下文决定部32从CN信息解码部10获取与色差块(色差CB(与第1颜色分量有关的对象块))对应且CN信息解码部10已经分割并解码的亮度块(亮度CB(与第2颜色分量有关的对应块))的分割关联信息。另外,色差CB为对表示是否分割该色差CB的分割标记进行解码之前的对象块(对象CB),亮度CB为与对象块对应的对应块(对应CB)。此外,上述的与第1颜色分量有关的对象块也可以为亮度CB,上述的与第2颜色分量有关的对应块也可以为色差CB。
在本实施方式涉及的上下文决定部32中,上下文决定部32参照获取到的亮度CB的分割关联信息来确定亮度CB对应块(对应CB)的分割状况,由此判定在对应CB中是否存在分割线。
在本实施方式涉及的上下文决定部32中,上下文决定部32根据判定出的有无对应CB的分割来决定对象CB的上下文。另外,本实施方式中的上下文为是否解码QT分割标记的上下文,其中,QT分割标记为表示是否将对象CB进行QT分割的标记。
(上下文决定方法)
关于本实施方式涉及的图像解码装置31所执行的上下文决定方法,参照图24来详细地说明。图24是说明本实施方式涉及的图像解码装置31所执行的上下文决定方法的一例的流程图。另外,关于与实施方式1涉及的上下文决定方法同样的步骤,省略详细说明。
上下文决定部32从CN信息解码部10获取与色差CB(色差块)对应且CN信息解码部10已经分割并解码的亮度CB(亮度块)的分割关联信息(步骤S10)。
此外,上下文决定部32参照获取到的亮度CB的分割关联信息来确定亮度CB(对应CB)的分割状况,由此判定在对应CB中是否存在分割线(步骤S11)。另外,关于步骤S11的具体方法将后述。
此外,上下文决定部32根据判定出的有无亮度CB(对应CB)的分割来决定色差CB(对象CB)的上下文(步骤S12)。另外,关于步骤S12的具体方法将后述。
CN信息解码部10按照上下文决定部32决定的色差CB(对象CB)的上下文,根据CN中包含的CN信息来解码表示是否将对象CB进行QT分割的QT分割标记(步骤S13)。
(具体例1)
图25是用于说明本具体例的上下文决定方法的步骤S11的图。图25的(a)示出色差CB,图25的(b)示出亮度CB。另外,图25中的各块内的编号表示分区编号。亮度CB(对应CB)包含块KA以及块KB。此外,将块KA的左上的点坐标设为点KAR,将块KB的右下的点坐标设为点KBR。
首先,在步骤S11中,上下文决定部32参照亮度CB的分割关联信息,判定图25的(b)所示的包含亮度CB的左上的点KAR的块KA的分区编号(partId_AboveLeft)、和包含该亮度CB的右下的点KBR的块KB的分区编号(partId_LowerRight)是否不同。而且,在步骤S12中,上下文决定部32将该判定的结果自身作为色差CB的分割标记的上下文来决定。在下述示出该上下文的式子。
ctxIdxSplit=(partId_AboveLeft!=partId_LowerRight)
另外,在上述的式子中,在QT分割标记的上下文的情况下,ctxIdxSplit为ctxIdxQT。在BT分割标记的上下文的情况下,ctxIdxSplit为ctxIdxBT。在不区分BT分割以及TT分割而包含两者的分割即PT分割的标记的上下文的情况下,ctxIdxSplit为ctxIdxPT。
在包含亮度CB的左上的点KAR的块的分区编号、和包含该亮度CB的右下的点KBR的块的分区编号不同的情况下,点KAR和点KBR分别包含在不同的块中,因此上下文决定部32判定为在点KAR与点KBR之间存在分割线。另一方面,在包含亮度CB的左上的点KAR的块的分区编号、和包含该亮度CB的右下的点KBR的块的分区编号相同的情况下,点KAR和点KBR分别包含在相同的块中,因此上下文决定部32判定为在点KAR与点KBR之间不存在分割线。
如图25所示,点KAR和点KBR分别包含在不同的块KA和块KB中,上下文决定部32作为色差CB的分割标记的上下文而输出ctxIdxSplit=1。此外,在点KAR和点KBR分别包含在相同的块中的情况下,上下文决定部32输出ctxIdxSplit=0。
(具体例2)
图26是用于说明本具体例的上下文决定方法的步骤S11的图。图26的(a)示出色差CB(对象CB),图26的(b)示出亮度CB(对应CB)。另外,图26中的各块内的编号表示分区编号。亮度CB包含块KA以及块KC。此外,将块KA的左上的点坐标设为点KAR,将块KA的左下的点坐标设为点KAL。此外,将块KC的右上的点坐标设为点KCR。
首先,在步骤S11中,上下文决定部32判定图26的(b)所示的包含亮度CB的左上的点KAR的对应块的分区编号(partId_AboveLeft)、和包含该亮度CB的右上的点KCR的对应块的分区编号(partId_AboveRight)是否不同。在下述示出该判定的式子。
splitHorizontally(=verSplit)=(partId_AboveLeft!=partId_AboveRight)
此外,上下文决定部32判定包含该亮度CB的左上的点KAR的块的分区编号(partId_AboveLeft)、和包含该亮度CB的左下的点KAL的块的分区编号(partId_LowerLeft)是否不同。在下述示出该判定的式子。
splitVertically(=horSplit)=(partId_AboveLeft!=partId_LowerLeft)
在包含亮度CB的左上的点KAR的块的分区编号、和包含该亮度CB的右上的点KCR的块的分区编号不同的情况下,点KAR和点KCR分别包含在不同的块中,因此上下文决定部32判定为在点KAR与点KCR之间存在分割线。另一方面,在包含亮度CB的左上的点KAR的块的分区编号、和包含该亮度CB的右上的点KCR的块的分区编号相同的情况下,点KAR和点KCR分别包含在相同的块中,因此上下文决定部32判定为在点KAR与点KCR之间不存在分割线。
此外,在包含亮度CB的左上的点KAR的块的分区编号、和包含该亮度CB的左下的点KAL的块的分区编号不同的情况下,点KAR和点KAL分别包含在不同的块中,因此上下文决定部32判定为在点KAR与点KAL之间存在分割线。另一方面,在包含亮度CB的左上的点KAR的块的分区编号、和包含该亮度CB的左下的点KAL的块的分区编号相同的情况下,点KAR和点KAL分别包含在相同的块中,因此上下文决定部32判定为在点KAR与点KAL之间不存在分割线。
上下文决定部32将包含该亮度CB的左上的点KAR的块的分区编号、和包含右上的点KCR的块的分区编号是否不同的结果作为splitHorizontally来输出。如图26的(b)所示,点KAR和点KCR分别包含在不同的块KA和块KC中,块KA和块KC的分区编号不同,因此上下文决定部32设定splitHorizontally=1。
此外,上下文决定部32将包含该亮度CB的左上的点KAR的块的分区编号、和包含左下的点KAL的块的分区编号是否不同的结果作为splitVertically来输出。如图26的(b)所示,点KAR和点KAL分别包含在相同的对应块KA,分区编号相同,因此上下文决定部32设定splitVertically=0。
其次,在步骤S12中,上下文决定部32参照设定的splitVertically以及splitHorizontally来决定色差CB的分割标记的上下文即ctxIdxSplit=splitVertically+splitHorizontally。在本具体例的情况下,由于为splitVertically=0且splitHorizontally=1,因此上下文决定部32输出ctxIdxSplit=1。
(具体例3)
图27是用于说明本具体例的上下文决定方法的步骤S11的图。图27的(a)示出色差CB(对象CB),图27的(b)示出亮度CB(对应CB)。另外,图27中的各块内的编号表示分区编号。亮度CB包含块KA、块KB以及块KC。此外,将块KA的左上的点坐标设为点KAR,将块KA的左下的点坐标设为点KAL。此外,将块KB的右下的点坐标设为点KBR。此外,将块KC的右上的点坐标设为点KCR。
首先,在步骤S11中,上下文决定部32判定图27的(b)所示的包含亮度CB的左上的点KAR的块的分区编号(partId_AboveLeft)、和包含该亮度CB的右上的点KCR的块的分区编号(partId_AboveRight)是否不同。此外,上下文决定部32判定图27的(b)所示的包含亮度CB的左下的点KAL的块的分区编号(partId_LowerLeft)、和包含该亮度CB的右下的点KBR的块的分区编号(partId_LowerRight)是否不同。上下文决定部32参照这些判定来计算用下述的式子表示的splitHorizontally。
splitHorizontally(=verSplit)=(partId_AboveLeft!=partId_AboveRight)+(partId_LowerLeft!=partId_LowerRight)
此外,上下文决定部32判定包含该亮度CB的左上的点KAR的块的分区编号(partId_AboveLeft)、和包含该亮度CB的左下的点KAL的块的分区编号(partId_LowerLeft)是否不同。此外,上下文决定部32判定包含该亮度CB的右上的点KCR的块的分区编号(partId_AboveRight)、和包含该亮度CB的右下的点KBR的块的分区编号(partId_lowerRight)是否不同。上下文决定部32参照这些判定来计算用下述的式子表示的splitVertically。
splitVertically(=horSplit)=(partId_AboveLeft!=partId_LowerLeft)+(partId_AboveRight!=partId_LowerRight)
在包含亮度CB的左上的点KAR的块的分区编号、和包含该亮度CB的右上的点KCR的块的分区编号不同的情况下,点KAR和点KCR分别包含在不同的块中,因此上下文决定部32判定为在点KAR与点KCR之间存在分割线。另一方面,在包含亮度CB的左上的点KAR的块的分区编号、和包含该亮度CB的右上的点KCR的块的分区编号相同的情况下,点KAR和点KCR分别包含在相同的块中,因此上下文决定部32判定为在点KAR与点KCR之间不存在分割线。
此外,在包含亮度CB的左下的点KAL的块的分区编号、和包含该亮度CB的右下的点KBR的块的分区编号不同的情况下,点KAL和点KBR分别包含在不同的块中,因此上下文决定部32判定为在点KAL与点KBR之间存在分割线。另一方面,在包含亮度CB的左下的点KAL的块的分区编号、和包含该亮度CB的右下的点KBR的块的分区编号相同的情况下,点KAL和点KBR分别包含在相同的块中,因此上下文决定部32判定为在点KAL与点KBR之间不存在分割线。
此外,在包含亮度CB的左上的点KAR的块的分区编号、和包含该亮度CB的左下的点KAL的块的分区编号不同的情况下,点KAR和点KAL分别包含在不同的块中,因此上下文决定部32判定为在点KAR与点KAL之间存在分割线。另一方面,在包含亮度CB的右上的点KCR的块的分区编号、和包含该亮度CB的右下的点KBR的块的分区编号相同的情况下,点KCR和点KBR分别包含在相同的块中,因此上下文决定部32判定为在点KCR与点KBR之间不存在被不同的两个块夹着的分割线。
如图27的(b)所示,点KAR和点KCR分别包含在不同的块KA和块KC中,块KA和块KC的分区编号不同,因此上下文决定部32设定(partId_AboveLeft!=partId_AboveRight)=1。此外,点KAL和点KBR分别包含在不同的块KA和块KB中,块KA和块KB的分区编号不同,因此上下文决定部32设定(partId_LowerLeft!=partId_LowerRight)=1。因此,上下文决定部32根据上述的式子设定splitHorizontally=2。
此外,如图27的(b)所示,点KAR和点KAL分别包含在相同的块KA中,分区编号相同,因此上下文决定部32设定(partId_AboveLeft!=partId_LowerLeft)=0。此外,点KCR和点KBR分别包含在不同的块KC和块KB中,块KC和块KB的分区编号不同,因此上下文决定部32设定(partId_AboveRight!=partId_LowerRight)=1。因此,上下文决定部32根据上述的式子设定splitVertically=1。
其次,在步骤S12中,上下文决定部32参照设定的splitVertically以及splitHorizontally来决定色差CB的分割标记的上下文即ctxIdxSplit=splitVertically+splitHorizontally。在本具体例的情况下,由于为splitVertically=1且splitHorizontally=2,因此上下文决定部32输出ctxIdxSplit=3。另外,本具体例的ctxIdxSplit可取0~4的5个值,但也能够取0~2的3个值。在该情况下,在上述的splitVertically或者splitHorizontally为1或者2的情况下(即,在具有至少一个以上的分割线的情况下),将splitVertically或者splitHorizontally设为1。在下述示出ctxIdxSplit取0~2的3个值的情况下的式子。
ctxIdxSplit=splitVertically?1﹕0+splitHorizontally?1﹕0
或者,如下述的式子那样splitVertically+splitHorizontally为3以上的情况下,也可以将ctxIdxSplit设为2。
ctxIdxSplit=min(2,splitVertically+splitHorizontally)
(图像编码装置)
本实施方式涉及的图像解码装置31的结构也能够应用于图像编码装置11。在该情况下,图像编码装置11具备取代CN信息解码部10的CN信息编码部(未图示)和上下文决定部32,导出表示是否将对象块进行分割的分割标记(QT分割标记、BT分割标记或者TT分割标记等)的上下文。
在具有上述结构的图像编码装置11中,上下文决定部32获取与色差块(对象块)对应且已经被分割的亮度块(对应块)的分割关联信息。其次,上下文决定部32确定对应块的分割状况,由此判定在对应块中是否存在分割线。接下来,上下文决定部32根据该判定来决定对象块的分割标记的上下文。其次,CN信息编码部根据上下文决定部32决定的上下文来编码表示是否将对象块进行分割的分割标记。
(实施方式2的总结)
如以上,本实施方式涉及的图像解码装置31参照已被解码的与第2颜色分量有关的对应块的分割状况来决定与第1颜色分量有关的对象块的分割信息(分割标记)的上下文,并利用该上下文来解码与第1颜色分量有关的对象块的分割信息。由此,根据对应块的分割状况来解码对象块的分割信息。
此外,本实施方式涉及的图像解码装置31参照对应块的分区编号来确定与第2颜色分量有关的对应块的分割状况,由此判定有无与第2颜色分量有关的对应块的分割线,并参照该判定来决定与第1颜色分量有关的对象块的分割标记的上下文。由此,参照与第2颜色分量有关的对应块的分区编号来判断有无第1成分的分割,因此能够决定更适当的上下文。因此,能够在图像解码装置中削减分割信息的码量。
〔实施方式3〕
如果基于附图来说明本发明的实施方式3,则如以下那样。另外,在本实施方式中,也同样能够利用实施方式1涉及的图像解码装置31以及图像编码装置11。因此,方便说明起见,关于具有与在上述实施方式中说明过的构件相同的功能的构件,省略其说明。
<实施方式3的形态1>
在本形态中,通过与实施方式1涉及的上下文决定方法同样的方法来导出上下文。不过,本实施方式中的上下文为表示对象块的分割方向的方向标记(分割模式)的上下文。在本形态中,上下文决定部32通过与实施方式1类似的方法来判定相邻块的分割的有无或者分割方向,并基于该判定来导出对于对象块的BT方向标记的上下文。
(CN信息解码部)
CN信息解码部10按照是否将表示对象CN的BT分割的分割方法的BT方向标记(分割信息)进行解码的上下文(后述),根据CN中包含的CN信息来解码BT方向标记。而且,CN信息解码部10通过BT方向标记所表示的分割方法递归性地分割并解码对象CN,直到变得BT方向不通知标记被进一步分割为止。最后,根据CTU信息来解码树单元尾部CTUF。
(上下文决定部)
本形态涉及的上下文决定部32从CN信息解码部10获取CN信息解码部10尚未分割的对象CN的分割关联信息、和与该对象CN相邻且CN信息解码部10已经分割并解码的相邻CN的分割关联信息。
本形态涉及的上下文决定部32参照获取到的相邻CN的分区编号、水平深度以及垂直深度或者尺寸来确定相邻块的分割状况,由此判定相邻块的分割的有无或者分割的方向。
此外,在本形态涉及的上下文决定部32中,上下文决定部32根据判定出的分割的有无或者分割的方向来决定表示对象块的分割方向的方向标记(分割模式)的上下文。上下文决定部32决定的上下文被输出至上述的CN信息解码部10。
(上下文决定方法)
关于本形态涉及的图像解码装置31所执行的上下文决定方法,参照图28来详细地说明。图28是说明本形态涉及的图像解码装置31所执行的上下文决定方法的一例的流程图。另外,关于与实施方式1以及2涉及的上下文决定方法同样的步骤,省略详细说明。
首先,上下文决定部32从CN信息解码部10获取CN信息解码部10尚未分割的对象CN(对象块)、和与该对象CN相邻且CN信息解码部10已经分割并解码的相邻CN(相邻块)(步骤S20)。
其次,上下文决定部32参照对象CN以及相邻CN的分区编号、水平深度以及垂直深度或者尺寸来确定相邻块的分割状况,由此判定相邻块的分割的有无或者分割方向(步骤S21)。另外,步骤S21的具体方法将后述。
接下来,上下文决定部32根据判定出的分割的有无或者分割方向来决定上下文(步骤S22)。另外,关于步骤S22的具体方法将后述。
其次,CN信息解码部10按照上下文决定部32决定的上下文,根据CN中包含的信息来解码表示对象CN的BT分割的分割方法的BT方向标记(步骤S23)。
(具体例1)
在本形态的具体例1中,上下文决定部32在步骤S21中与实施方式1的具体例同样地设定判定了有无分割线的结果即splitHorizontally以及splitVertically。本形态的具体例1中的splitHorizontally以及splitVertically通过与实施方式1的各具体例中的splitHorizontally以及splitVertically同样的方法求出。因而,关于步骤S21中的splitHorizontally以及splitVertically的步骤的详细说明将省略。此外,上下文决定部32作为分割关联信息而参照对象块的宽度即width和对象块的高度即height。
首先,说明参照splitHorizontally以及splitVertically来决定上下文的方法。图29的(a)是用于说明参照splitHorizontally以及splitVertically来决定上下文的方法的表。另外,以下,为了简化,将某个块被分割为在水平方向上排列的两个块设为水平地分割(垂直分割),将某个块被分割为在垂直方向上排列的两个块设为垂直地分割(水平分割)。
在步骤S22中,上下文决定部32判定splitHorizontally是否比splitVertically大,由此决定上下文(ctxIdxDir)。在下述示出该判定的式子。
if(splitHorizontally>splitVertically)ctxIdxDir=1
else if(splitHorizontally<splitVertically)ctxIdxDir=2
else ctxIdxDir=0
另外,若利用verSplit和horSplit来表现,则成为以下。
if(verSplit>horSplit)ctxIdxDir=1
else if(verSplit<horSplit)ctxIdxDir=2
else ctxIdxDir=0
若详细地说明,则如图29的(a)所示,在splitHorizontally比splitVertically大的情况下,上下文决定部32将上下文决定为ctxIdxDir=1。ctxIdxDir=1表示:相邻块(或对应块)被水平地分割/split horizontally(垂直分割/verSplit、左右地分割),对象块也被水平地分割(垂直分割)的可能性高,CN信息解码部10解码表示对象块是否水平地分割(垂直分割)的方向标记的可能性高。
此外,在splitHorizontally与splitVertically相同的情况下,上下文决定部32将上下文决定为ctxIdxDir=0。ctxIdxDir=0表示:相邻块(或对应块)的水平分割以及垂直分割双方执行相同的次数,因此CN信息解码部10以等概率解码对象块的垂直分割或者水平分割的方向标记的可能性高。
此外,在splitHorizontally比splitVertically小的情况下,上下文决定部32将上下文决定为ctxIdxDir=2。ctxIdxDir=2表示:相邻块(或对应块)被垂直地分割(水平分割、上下地分割),对象块也被垂直地分割(水平分割)的可能性高,CN信息解码部10解码表示对象块是否垂直地分割(水平分割)的方向标记的可能性高。
其次,说明优先地参照splitHorizontally以及splitVertically并参照width以及height来决定上下文的方法。图29的(b)是用于说明优先地参照splitHorizontally以及splitVertically并参照width以及height来决定上下文的方法的表。
在步骤S22中,上下文决定部32判定splitHorizontally是否比splitVertically大,由此决定上下文(ctxIdxDir)。而且,上下文决定部32在未能判定splitHorizontally是否比splitVertically大的情况下(例如,splitHorizontally与splitVertically相等的情况下),通过判定宽度width是否比高度height大来决定上下文(ctxIdxDir)。在下述示出这些判定的式子。
if(splitHorizontally>splitVertically)ctxIdxDir=ctxA
else if(splitHorizontally<splitVertically)ctxIdxDir=ctxB
else if(width>height)ctxIdxDir=ctxA
else if(width<height)ctxIdxDir=ctxB
else ctxIdxDir=ctxC
在此,ctxA、ctxB、ctxC为用于指定上下文的值。例如,虽然可以设为ctxA=1,ctxB=2,ctxC=0,但并不限定于这些值。也可以为ctxA=0,ctxB=1,ctxC=2等。也就是说,由上下文(上下文索引)指定的上下文变量用于区分上下文,因此只要根据分支结果而值彼此不同就是充分的,大小关系也可以不同(以下同样)。在此,通过利用ctxA、ctxB、ctxC来表示:plitHorizontally>splitVertically为真的情况和后续的width>height为真的情况下的上下文是相同的值的ctxA;splitHorizontally<splitVertically为真的情况和后续的width<heigh为真的情况下的上下文是相同的值的ctxB;以及上述两个上下文ctxA的值和ctxB的值不同。
另外,若利用verSplit和horSplit来表现,则成为以下。
if(verSplit>horSplit)ctxIdxDir=ctxA
else if(verSplit<horSplit)ctxIdxDir=ctxB
else if(width>height)ctxIdxDir=ctxA
else if(width<height)ctxIdxDir=ctxB
else ctxIdxDir=ctxC
若详细地说明,则首先,上下文决定部32判定splitHorizontally是否比splitVertically大,如图29的(b)所示,在splitHorizontally比splitVertically大的情况下,将上下文决定为ctxIdxDir=1。在splitHorizontally不大于splitVertically的情况下,上下文决定部32将上下文决定为ctxIdxDir=2。在splitHorizontally与splitVertically相等的情况下,上下文决定部32判定对象块的宽度即width是否比对象块的高度即height大。在width比height大的情况下,上下文决定部32将上下文决定为ctxIdxDir=1。在此,上下文决定部32将上下文决定为ctxIdxDir=1的理由是:在width比height大的情况下,即,在对象块为与垂直方向相比在水平方向上长的长方形的情况下,对象块被水平地分割(垂直分割)的可能性高的缘故。
此外,在width比height小的情况下,上下文决定部32将上下文决定为ctxIdxDir=2。在此,上下文决定部32将上下文决定为ctxIdxDir=2的理由是:在width比height小的情况下,即,在对象块为与水平方向相比在垂直方向上长的长方形的情况下,对象块被垂直地分割(水平分割)的可能性高的缘故。
此外,在width与height相等的情况下,上下文决定部32将上下文决定为ctxIdxDir=0。在此,上下文决定部32将上下文决定为ctxIdxDir=0的理由是:在width与height相等的情况下,即,在对象块为水平方向的边和垂直方向的边相等的正方形的情况下,对象块的分割方向等概率发生的缘故。
接下来,说明优先地参照width以及height并参照splitHorizontally以及splitVertically来决定上下文的方法。图29的(c)是用于说明优先地参照width以及height并参照splitHorizontally以及splitVertically来决定上下文的方法的表。
在步骤S22中,上下文决定部32判定width是否比height大,由此决定上下文(ctxIdxDir)。而且,上下文决定部32在未能判定width是否比height大的情况下(例如,width与height相等的情况下),通过判定splitHorizontally是否比splitVertically大来决定上下文(ctxIdxDir)。在下述示出这些判定的式子。
if(width>height)ctxIdxDir=ctxA
else if(width<height)ctxIdxDir=ctxB
else if(splitHorizontally>splitVertically)ctxIdxDir=ctxA
else if(splitHorizontally<splitVertically)ctxIdxDir=ctxB
else ctxIdxDir=ctxC
另外,若利用verSplit和horSplit来表现,则成为以下。
if(width>height)ctxIdxDir=ctxA
else if(width<height)ctxIdxDir=ctxB
else if(verSplit>horSplit)ctxIdxDir=ctxA
else if(verSplit<horSplit)ctxIdxDir=ctxB
else ctxIdxDir=ctxC
若详细地说明,则上下文决定部32判定width是否比height大,如图29的(c)所示,在width比height大的情况下,上下文决定部32将上下文决定为ctxIdxDir=1。在width比height小的情况下,上下文决定部32将上下文决定为ctxIdxDir=2。
其次,在width与height相等的情况下,上下文决定部32判定splitHorizontally是否比splitVertically大。在splitHorizontally比splitVertically大的情况下,上下文决定部32将上下文决定为ctxIdxDir=1。此外,在splitHorizontally比splitVertically小的情况下,上下文决定部32将上下文决定为ctxIdxDir=2。此外,在splitHorizontally与splitVertically相等的情况下,上下文决定部32将上下文决定为ctxIdxDir=0。
在上述的各方法中,对上下文的值取0~2的3个阶段的值的例子进行了说明,但上下文的值也可以取0~4的5个阶段的值。图29的(d)是用于说明上下文的值取0~4的5个阶段的值的例子的表。
首先,在步骤S22中,上下文决定部32判定splitHorizontally是否比splitVertically大。而且,在splitHorizontally不大于splitVertically的情况下,上下文决定部32进一步判定splitHorizontally与splitVertically是否相等。此外,上下文决定部32判定width是否比height大。而且,在width不大于height的情况下,进一步判定width与height是否相等。而且,上下文决定部32参照利用了splitHorizontally以及splitVertically的判定、和利用了width以及height的判定,由此决定上下文(ctxIdxDir)。在下述示出这些判定的式子。
ctxIdxDir=(splitHorizontally>splitVertically)?2﹕(splitHorizontally==splitVertically)?1﹕0+(width>height)?2﹕(width==height)?1﹕0
若详细地说明,则首先,上下文决定部32判定splitHorizontally是否比splitVertically大,在splitHorizontally比splitVertically大的情况下,将基于利用了splitHorizontally以及splitVertically的判定的上下文的成分设定为2。在splitHorizontally不大于splitVertically的情况下,上下文决定部32进一步判定splitHorizontally与splitVertically是否相等。在splitHorizontally与splitVertically相等的情况下,上下文决定部32将基于利用了splitHorizontally以及splitVertically的判定的上下文的成分设定为1。在splitHorizontally与splitVertically不相等的情况下,上下文决定部32将基于利用了splitHorizontally以及splitVertically的判定的上下文的成分设定为0。
此外,上下文决定部32判定width是否比height大,在width比height大的情况下,将基于利用了width以及height的判定的上下文的成分设定为2。在width不大于height的情况下,上下文决定部32进一步判定width与height是否相等。在width与height相等的情况下,上下文决定部32将基于利用了width以及height的判定的上下文的成分设定为1。在width与height不相等的情况下,上下文决定部32将基于利用了width以及height的判定的上下文的成分设定为0。
其次,上下文决定部32对基于利用了splitHorizontally以及splitVertically的判定的上下文的成分、和基于利用了width以及height的判定的上下文的成分进行加法运算,由此决定ctxIdxDir。由此决定的ctxIdxDir可取0~4的值。而且,ctxIdxDir越接近4,表示相邻块(或对应块)被水平地分割(垂直分割)的可能性越高,对象块也被水平地分割的可能性越高,CN信息解码部10解码表示是否将对象块水平地分割的方向标记的可能性越高。此外,ctxIdxDir越接近0,表示相邻块被垂直地分割(水平分割)的可能性越高,对象块也被垂直地分割的可能性越高,CN信息解码部10解码表示对象块是否垂直地分割的方向标记的可能性越高。
此外,ctxIdxDir越接近4,也可以表示相邻块被垂直地分割(水平分割)的可能性越高,对象块也被垂直地分割(水平分割)的可能性越高,CN信息解码部10解码表示是否将对象块垂直地分割的方向标记的可能性越高。同样地,ctxIdxDir越接近0,也可以表示相邻块被水平地分割(垂直分割)的可能性越高,对象块也被水平地分割(垂直分割)的可能性越高,CN信息解码部10解码表示是否将对象块水平地分割的方向标记的可能性越高。在下述示出该情况下的判定的式子。
ctxIdxDir=(splitHorizontally>splitVertically)?0﹕(splitHorizontally==splitVertically)?1﹕2+(width>height)?0﹕(width==height)?1﹕2
另外,若利用verSplit和horSplit来表现,则成为以下。
ctxIdxDir=(verSplit>horSplit)?0﹕(verSplit==horSplit)?1﹕2+(width>height)?0﹕(width==height)?1﹕2
(具体例2)
在上述的具体例1中,说明了上下文决定部32决定BT分割方向标记(bt_dir_flag)的上下文(ctxIdxDir)的方法。通过该方法求出的上下文假定了在本实施方式涉及的图像解码装置31解码BT分割标记(bt_split_flag)之后解码BT分割方向标记(bt_dir_flag)之时利用。即,在BT分割二进制化中,用第1比特来指定分割的有无,用第2比特来指定分割的方向。但是,本实施方式涉及的图像解码装置31也可以取代解码BT分割标记(bt_split_flag)以及BT分割方向标记(bt_dir_flag),而解码表示是否垂直地分割的分割标记(bt_split_vertically_flag/bt_hor_split_flag)以及表示是否水平地分割的分割标记(bt_split_horizontally_flag/bt_ver_split_flag)。即,在BT分割二进制化中,也可以用第1比特来指定水平分割的有无(是否被垂直地分割),用第2比特来指定垂直分割的有无(是否被水平地分割)。在该情况下,在无垂直分割以及水平分割的情况下,能够设为无分割。另外,垂直分割标记为表示是否将对象块水平地分割的标记。此外,水平分割标记为表示是否将对象块垂直地分割的标记。在下述,说明决定水平分割标记(bt_split_vertically_flag)的上下文(ctxIdxBTVertically)和垂直分割标记(bt_split_horizontally_flag)的上下文(ctxIdxBTHorizontally)的方法。
首先,说明如具体例1那样参照splitHorizontally以及splitVertically来决定上下文的方法。在步骤S22中,上下文决定部32判定splitVertically是否比0大。在splitVertically比0大的情况下,上下文决定部32将上下文决定为ctxIdxBTVertically=1。ctxIdxBTVertically=1表示:对象块被垂直地分割(水平分割、被上下地分割)的可能性高,CN信息解码部10解码表示是否将对象块垂直地分割的方向标记的可能性高。在splitVertically不大于0的情况下,上下文决定部32将上下文决定为ctxIdxBTVertically=0。ctxIdxBTVertically=1表示:对象块被垂直地分割的可能性低,CN信息解码部10解码对象块垂直地分割的方向标记的可能性低。在下述示出该判定的式子。
ctxIdxBTVertically=(splitVertically>0)?1﹕0
此外,上下文决定部32判定splitHorizontally是否比0大。在splitHorizontally比0大的情况下,上下文决定部32将上下文决定为ctxIdxBTHorizontally=1。ctxIdxBTHorizontally=1表示:对象块被水平地分割(垂直分割、左右地分割)的可能性高,CN信息解码部10解码表示是否将对象块水平地分割的方向标记的可能性高。在splitHorizontally不大于0的情况下,上下文决定部32将上下文决定为ctxIdxBTHorizontally=0。ctxIdxBTVHorizontally=0表示:对象块被水平地分割的可能性低,CN信息解码部10解码表示是否将对象块水平地分割的方向标记的可能性低。在下述示出该判定的式子。
ctxIdxBTHorizontally=(splitHorizontally>0)?1﹕0
接下来,说明优先地参照splitHorizontally以及splitVertically并参照width以及height来决定上下文的方法。在步骤S22中,上下文决定部32判定splitVertically是否比0大。在splitVertically比0大的情况下,上下文决定部32将上下文决定为ctxIdxBTVertically=1。在splitVerticallyt不大于0的情况下,上下文决定部32判定对象块的宽度即width是否比对象块的高度即height小。在width比height小的情况下,上下文决定部32将上下文决定为ctxIdxBTVertically=1。在width不小于height的情况下,上下文决定部32将上下文决定为ctxIdxBTVertically=0。在下述示出这些判定的式子。
ctxIdxBTVertically=(splitVertically>0)?1﹕(width<height)?1﹕0
此外,上下文决定部32判定splitHorizontally是否比0大。在splitHorizontally比0大的情况下,上下文决定部32将上下文决定为ctxIdxBTHorizontally=1。在splitHorizontally不大于0的情况下,上下文决定部32判定对象块的宽度即width是否比对象块的高度即height大。在width比height大的情况下,上下文决定部32将上下文决定为ctxIdxBTHorizontally=1。在width不大于height的情况下,上下文决定部32将上下文决定为ctxIdxBTHorizontally=0。在下述示出这些判定的式子。
ctxIdxBTHorizontally=(splitHorizontally>0)?1﹕(width>height)?1﹕0
接下来,说明优先地参照width以及height并参照splitHorizontally以及splitVertically来决定上下文的方法。在步骤S22中,上下文决定部32判定对象块的宽度即width是否比对象块的高度即height小。在width比height小的情况下,上下文决定部32将上下文决定为ctxIdxBTVertically=1。在width不小于height的情况下,上下文决定部32判定splitVertically是否比0大。在splitVertically比0大的情况下,上下文决定部32将上下文决定为ctxIdxBTVertically=1。在splitVertically不大于0的情况下,上下文决定部32将上下文决定为ctxIdxBTVertically=0。在下述示出这些判定的式子。
ctxIdxBTVertically=(width<height)?1:(splitVertically>0)?1﹕0
此外,上下文决定部32判定对象块的宽度即width是否比对象块的高度即height大。在width比height大的情况下,上下文决定部32将上下文决定为ctxIdxBTHorizontally=1。在width不大于height的情况下,上下文决定部32判定splitHorizontally是否比0大。在splitHorizontally比0大的情况下,上下文决定部32将上下文决定为ctxIdxBTHorizontally=1。在splitHorizontally不大于0的情况下,上下文决定部32将上下文决定为ctxIdxBTHorizontally=0。
(实施方式3的形态1的总结)
如以上,本形态涉及的图像解码装置31参照与对象块相邻的一个或者多个相邻块的分割状况来决定表示该对象块的分割方向的方向标记的上下文,并利用该上下文来解码方向标记。由此,根据相邻块的分割状况来解码方向标记,因此在相邻块未被分割而对象块也不被分割的可能性高的情况下,能够减少解码不必要的方向标记的可能性。因此,能够在图像解码装置中削减分割信息的码量。
此外,本形态涉及的图像解码装置31参照相邻块的分区编号、水平深度以及垂直深度或者尺寸来确定相邻块的分割状况,由此判定相邻块的分割线的有无或者分割方向,并参照该判定来决定上下文。由此,因为参照相邻块的分区编号、水平深度以及垂直深度或者尺寸,所以能够执行反映了相邻块的分割关联信息的判定,能够决定更适当的上下文。
<实施方式3的形态2>
在本形态中,通过与实施方式2涉及的上下文决定方法同样的方法来导出上下文。不过,本实施方式中的上下文为表示对象块的分割方法的方向标记的上下文。在本形态中,上下文决定部32通过与实施方式2类似的方法来确定对应块的分割状况,由此判定对应块的分割的有无或者分割方向,并基于该判定来导出对象块的方向标记的上下文。另外,实施方式3的形态2涉及的CN信息解码部10具有与上述的实施方式3的形态1的功能同样的功能。
(上下文决定部)
本形态涉及的上下文决定部32从CN信息解码部10获取与CN信息解码部10尚未分割的色差块(色差CB(与第1颜色分量有关的对象块))对应、且CN信息解码部10已经分割并解码的亮度块(亮度CB(与第2颜色分量有关的对应块))的分割关联信息。
此外,本形态涉及的上下文决定部32参照获取到的亮度CB的分割关联信息来确定与色差CB(对象CB)对应的亮度CB(对应CB)的分割状况,由此判定对应CB的分割的有无或者分割方向。
此外,在本形态涉及的上下文决定部32中,上下文决定部32根据判定出的分割状况来决定表示对象CB的分割方向的方向标记的上下文。上下文决定部32决定的上下文被输出至上述的CN信息解码部10。
(上下文决定方法)
关于本形态涉及的图像解码装置31所执行的上下文决定方法,参照图30来详细地说明。图30是说明本形态涉及的图像解码装置31所执行的上下文决定方法的一例的流程图。另外,关于与实施方式1以及2、和实施方式3的形态1涉及的上下文决定方法同样的步骤,省略详细说明。
上下文决定部32从CN信息解码部10获取与CN信息解码部10尚未分割的色差CB(对象CB)对应、且CN信息解码部10已经分割并解码的亮度CB(对应CB)的分割关联信息(步骤S30)。
上下文决定部32参照获取到的亮度CB的分割关联信息来确定与色差CB对应的亮度CB的分割状况,由此判定对应CB的分割的有无或者分割方向(步骤S31)。
上下文决定部32根据判定出的对应CB的分割的有无或者分割方向来决定对象CB的上下文(步骤S32)。
CN信息解码部10按照上下文决定部32决定的上下文,根据CN中包含的CN信息来解码表示对象CB的BT分割的分割方法的BT方向标记(步骤S33)。
(具体例)
在本形态的具体例中,上下文决定部32也能够执行与实施方式3的形态1的具体例1以及具体例2同样的方法。因而,关于本形态的具体例的详细说明将省略。
在本形态中,在步骤S31中,上下文决定部32设定表示对应块是否被水平地分割(垂直分割)的splitHorizontally、和表示对应块是否被垂直地分割(水平分割)的splitVertically。而且,上下文决定部32通过与实施方式3的形态1的具体例1以及具体例2同样的方法,利用splitHorizontally以及splitVertically,此外,根据需要利用对象块的宽度即width和对象块的高度即height,由此决定表示对象块的分割方向的方向标记的上下文(ctxIdxDir)。
(实施方式3的形态2的总结)
如以上,本形态涉及的图像解码装置31参照已被解码的与第2颜色分量有关的对应块的分割状况来决定表示与第1颜色分量有关的对象块的分割方向的方向标记的上下文,并利用该上下文来解码方向标记。由此,因为根据对应块的分割状况来解码方向标记,所以在对应块未被分割而对象块也不被分割的可能性高的情况下,能够减少解码不必要的方向标记的可能性。因此,能够在图像解码装置中削减分割信息的码量。
此外,本形态涉及的图像解码装置31参照对应块的分区编号来确定对应块的分割状况,由此判定对应块的分割线的有无或者分割方向,并参照该判定来决定对象块的上下文。由此,因为参照对应块的分区编号,所以能够决定反映了对应块的分割关联信息的更适当的上下文。
<图像编码装置>
本实施方式涉及的图像解码装置31的结构同样也能够应用于图像编码装置11。在该情况下,图像编码装置11具备取代CN信息解码部10的CN信息编码部(未图示)和上下文决定部32,导出表示是否将对象块进行分割的分割方向标记(BT分割方向标记或者TT分割方向标记等)的上下文。
在具有上述结构的图像编码装置11中,上下文决定部32获取色差块(对象块)的相邻块或与色差块对应且已经被分割的亮度块(对应块)的分割关联信息。其次,上下文决定部32参照这些分割关联信息来确定相邻块或者对应块的分割状况,由此执行是否存在相邻块或对应块的分割线的判定、或者相邻块或对应块的分割方向的判定。接下来,上下文决定部32根据该判定来决定表示对象块的分割方向的分割方向标记的上下文。其次,CN信息编码部根据上下文决定部32决定的上下文来编码表示对象块的分割方向的分割方向标记。
〔基于软件的实现例〕
另外,可以通过计算机实现上述的实施方式中的图像编码装置11、图像解码装置31的一部分,例如,熵解码部301、预测参数解码部302、环路滤波器305、预测图像生成部308、逆量化/逆DCT部311、加法运算部312、预测图像生成部101、减法运算部102、DCT/量化部103、熵编码部104、逆量化/逆DCT部105、环路滤波器107、编码参数决定部110、预测参数编码部111。在该情况下,可以通过将用于实现该控制功能的程序记录至计算机可读取的记录介质,并使计算机系统读入并执行在该记录介质中记录的程序,由此来实现。另外,这里提及的“计算机系统”是在图像编码装置11、图像解码装置31的任一者中内置的计算机系统,包含OS、外围设备等的硬件。此外,“计算机可读取的记录介质”是指软盘、磁光盘、ROM、CD-ROM等的可移动介质、内置于计算机系统的硬盘等的存储装置。进而,“计算机可读取的记录介质”也可以包含:如经由因特网等网络、电话线路等通信线路来发送程序的情况下的通信线那样,短时间动态地保持程序的介质;如成为该情况下的服务器、客户端的计算机系统内部的易失性存储器那样,将程序保持一定时间的介质。此外,上述程序可以是用于实现前述的功能的一部分的程序,也可以是能够通过进一步与已经记录至计算机系统的程序的组合来实现前述的功能的程序。
此外,也可以将上述的实施方式中的图像编码装置11、图像解码装置31的一部分或者全部作为LSI(Large Scale Integration,大规模集成电路)等集成电路来实现。图像编码装置11、图像解码装置31的各功能块可以单独进行处理器化,也可以将一部分或者全部集成进行处理器化。此外,集成电路化的方法并不限于LSI,也可以通过专用电路或者通用处理器来实现。此外,在由于半导体技术的进步而出现了代替LSI的集成电路化的技术的情况下,也可以利用基于该技术的集成电路。
以上,参照附图而详细地说明了本发明的一实施方式,但具体结构并不限于上述的结构,能够在不脱离本发明主旨的范围内进行各种设计变更等。
〔应用例〕
上述的图像编码装置11以及图像解码装置31能够搭载于进行运动图像的发送、接收、记录、再生的各种装置来利用。另外,运动图像既可以是通过摄像机等摄像到的自然运动图像,也可以是通过计算机等生成的人工运动图像(包含CG以及GUI)。
首先,参照图8来说明能够将上述的图像编码装置11以及图像解码装置31利用于运动图像的发送以及接收的情况。
图8的(a)是表示搭载了图像编码装置11的发送装置PROD_A的结构的框图。如图8的(a)所示,发送装置PROD_A具备:通过编码运动图像来获得编码数据的编码部PROD_A1、以编码部PROD_A1获得的编码数据来调制载波由此获得调制信号的调制部PROD_A2、和发送调制部PROD_A2获得的调制信号的发送部PROD_A3。上述的图像编码装置11作为该编码部PROD_A1被利用。
发送装置PROD_A作为输入至编码部PROD_A1的运动图像的供给源,也可以进一步具备摄像运动图像的摄像机PROD_A4、记录了运动图像的记录介质PROD_A5、用于从外部输入运动图像的输入端子PROD_A6、以及生成或者加工图像的图像处理部PROD_A7。在图8的(a)中,虽然例示了发送装置PROD_A具备这些部件的全部的结构,但也可以省略一部分。
另外,记录介质PROD_A5既可以是记录了未被编码的运动图像的介质,也可以是记录了以与传输用的编码方式不同的记录用的编码方式被编码的运动图像的介质。在后者的情况下,使按照记录用的编码方式对从记录介质PROD_A5读出的编码数据进行解码的解码部(未图示)介于记录介质PROD_A5与编码部PROD_A1之间为宜。
图8的(b)是表示搭载了图像解码装置31的接收装置PROD_B的结构的框图。如图8的(b)所示,接收装置PROD_B具备接收调制信号的接收部PROD_B1、对接收部PROD_B1接收到的调制信号进行解调由此获得编码数据的解调部PROD_B2、和对解调部PROD_B2获得的编码数据进行解码由此获得运动图像的解码部PROD_B3。上述的图像解码装置31作为该解码部PROD_B3被利用。
接收装置PROD_B作为解码部PROD_B3输出的运动图像的供给目的地,也可以进一步具备显示运动图像的显示器PROD_B4、用于记录运动图像的记录介质PROD_B5、以及用于将运动图像输出至外部的输出端子PROD_B6。在图8的(b)中,虽然例示了接收装置PROD_B具备这些部件的全部的结构,但也可以省略一部分。
另外,记录介质PROD_B5既可以是用于记录未被编码的运动图像的介质,也可以是用于记录以与传输用的编码方式不同的记录用的编码方式被编码的数据的介质。在后者的情况下,使按记录用的编码方式对从解码部PROD_B3获取到的运动图像进行编码的编码部(未图示)介于解码部PROD_B3与记录介质PROD_B5之间为宜。
另外,传输调制信号的传输介质既可以为无线,也可以为有线。此外,传输调制信号的传输形态既可以为广播(在此,是指发送目的地未预先确定的发送形态),也可以是通信(在此,是指发送目的地预先被确定的发送形态)。即,调制信号的传输可以通过无线广播、有线广播、无线通信、以及有线通信的任一种来实现。
例如,地面数字广播的广播站(广播设备等)/接收站(电视接收机等)是以无线广播收发调制信号的发送装置PROD_A/接收装置PROD_B的一例。此外,有线电视广播的广播站(广播设备等)/接收站(电视接收机等)是以有线广播收发调制信号的发送装置PROD_A/接收装置PROD_B的一例。
此外,利用了因特网的VOD(Video On Demand,视频点播)服务、运动图像共享服务等的服务器(工作站等)/客户端(电视接收机、个人计算机、智能手机等)是以通信来收发调制信号的发送装置PROD_A/接收装置PROD_B的一例(通常,在LAN中作为传输介质可利用无线或者有线的任一种,在WAN中作为传输介质可利用有线)。在此,个人计算机包含台式PC、笔记本式PC以及平板式PC。此外,智能手机也包含多功能便携电话终端。
另外,运动图像共享服务的客户端除了将从服务器下载的编码数据解码并显示于显示器的功能之外,还具有将由摄像机摄像到的运动图像进行编码并上传至服务器的功能。即,运动图像共享服务的客户端作为发送装置PROD_A以及接收装置PROD_B的双方发挥功能。
接下来,参照图9来说明能够将上述的图像编码装置11以及图像解码装置31利用于运动图像的记录以及再生的情况。
图9的(a)是表示搭载了上述的图像编码装置11的记录装置PROD_C的结构的框图。如图9的(a)所示,记录装置PROD_C具备通过编码运动图像来获得编码数据的编码部PROD_C1、和将编码部PROD_C1获得的编码数据写入至记录介质PROD_M的写入部PROD_C2。上述的图像编码装置11作为该编码部PROD_C1被利用。
另外,记录介质PROD_M既可以是(1)如HDD(Hard Disk Drive,硬盘驱动器)、SSD(Solid State Drive,固态驱动器)等那样内置于记录装置PROD_C的类型的介质,也可以是(2)如SD存储卡、USB(Universal Serial Bus,通用串行总线)闪存等那样连接于记录装置PROD_C的类型的介质,还可以是(3)如DVD(Digital Versatile Disc,数字多功能盘)、BD(Blu-ray Disc(蓝光盘):注册商标)等那样装填到内置于记录装置PROD_C的驱动装置(未图示)的介质。
此外,记录装置PROD_C作为输入至编码部PROD_C1的运动图像的供给源,可以进一步具备摄像运动图像的摄像机PROD_C3、用于从外部输入运动图像的输入端子PROD_C4、用于接收运动图像的接收部PROD_C5、以及生成或者加工图像的图像处理部PROD_C6。在图9的(a)中,虽然例示了记录装置PROD_C具备这些部件的全部的结构,但也可以省略一部分。
另外,接收部PROD_C5既可以接收未被编码的运动图像,也可以接收以与记录用的编码方式不同的传输用的编码方式被编码的编码数据。在后者的情况下,使对以传输用的编码方式被编码的编码数据进行解码的传输用解码部(未图示)介于接收部PROD_C5与编码部PROD_C1之间为宜。
作为这样的记录装置PROD_C,例如可列举DVD记录机、BD记录机、HDD(Hard DiskDrive,硬盘驱动器)记录机等(在该情况下,输入端子PROD_C4或者接收部PROD_C5成为运动图像的主供给源)。此外,摄影机(在该情况下,摄像机PROD_C3成为运动图像的主供给源)、个人计算机(在该情况下,接收部PROD_C5或者图像处理部PROD_C6成为运动图像的主供给源)、智能手机(在该情况下,摄像机PROD_C3或者接收部PROD_C5成为运动图像的主供给源)等也是这样的记录装置PROD_C的一例。
图9的(b)是表示搭载了上述的图像解码装置31的再生装置PROD_D的结构的框图。如图9的(b)所示,再生装置PROD_D具备将写入至记录介质PROD_M的编码数据读出的读出部PROD_D1、和通过将读出部PROD_D1读出的编码数据进行解码来获得运动图像的解码部PROD_D2。上述的图像解码装置31作为该解码部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。在图9的(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的一例。
(硬件的实现以及软件的实现)
此外,上述的图像解码装置31以及图像编码装置11的各块既可以通过形成在集成电路(IC芯片)上的逻辑电路以硬件的方式实现,也可以利用CPU(Central ProcessingUnit,中央处理单元)以软件的方式实现。
在后者的情况下,上述各装置具备执行实现各功能的程序的命令的CPU、保存了上述程序的ROM(Read Only Memory,只读存储器)、展开上述程序的RAM(RandomAccessMemory,随机存取存储器)、保存上述程序以及各种数据的存储器等的存储装置(记录介质)等。而且,本发明的实施方式的目的,通过将以计算机可读取的方式记录了作为实现上述的功能的软件的上述各装置的控制程序的程序代码(执行形式程序、中间代码程序、源程序)的记录介质供给至上述各装置,并由该计算机(或者CPU、MPU)读出并执行在记录介质中记录的程序代码,由此也能够实现。
作为上述记录介质,例如,能够使用磁带、盒式磁带等的带类、软盘(注册商标)/硬盘等的磁盘、包含CD-ROM(Compact Disc Read-Only Memory,光盘只读存储器)/MO盘(Magneto-Optical disc,磁光盘)/MD(Mini Disc,迷你盘)/DVD(Digital VersatileDisc,数字多功能盘)/CD-R(CD Recordable)/蓝光盘(Blu-ray Disc:注册商标)等光盘的盘类、IC卡(包含存储卡)/光卡等的卡类、掩模ROM/EPROM(Erasable Programmable Read-Only Memory,可擦除可编程只读存储器)/EEPROM(Electrically Erasable andProgrammable Read-Only Memory(电可擦除可编程只读存储器):注册商标)/闪速ROM等的半导体存储器类、或PLD(Programmable logic device,可编程逻辑器件)、FPGA(FieldProgrammable Gate Array,现场可编程门阵列)等的逻辑电路类等。
此外,可以将上述各装置构成为能够与通信网络连接,并经由通信网络供给上述程序代码。该通信网络只要能够传输程序代码即可,没有特别限定。例如,能够利用因特网、内部网、外部网、LAN(Local Area Network,局域网)、ISDN(Integrated Services DigitalNetwork,综合业务数字网)、VAN(Value-Added Network,增值网络)、CATV(CommunityAntenna television/Cable Television,公用天线电视/有线电视)通信网、虚拟专用网(Virtual Private Network)、电话线路网、移动体通信网、卫星通信网等。此外,构成该通信网络的传输介质也只要是能够传输程序代码的介质即可,并不限定于特定的结构或者种类。例如,既能够以IEEE(Institute of Electrical and Electronic Engineers,电气与电子工程师学会)1394、USB、电力线输送、有线TV线路、电话线、ADSL(Asymmetric DigitalSubscriber Line,非对称数字用户线)线路等的有线来利用,也能够以如IrDA(InfraredData Association,红外数据协会)、遥控器那样的红外线、BlueTooth(注册商标)、IEEE802.11无线、HDR(High Data Rate,高数据速率)、NFC(Near Field Communication,近场通信)、DLNA(Digital Living Network Alliance(数字生活网络联盟):注册商标)、便携电话网、卫星线路、地面数字广播网等的无线来利用。另外,本发明的实施方式也能够以上述程序代码通过电子传输来具体化的、埋入到载波的计算机数据信号的方式来实现。
本发明的实施方式并不限定于上述的实施方式,能够在权利要求所示的范围内进行各种变更。即,关于组合在权利要求所示的范围内适当变更的技术手段而得到的实施方式,也包含于本发明的技术范围。
(关联申请的相互参照)
本申请对于在2017年3月16日提出申请的日本专利申请:特愿2017-051342、以及在2016年12月16日提出申请的日本专利申请:特愿2016-244900要求享有优先权,通过参照它们而将其全部内容包含于本申请中。
产业上的可利用性
本发明的实施方式能够适当地应用于将图像数据被编码的编码数据进行解码的图像解码装置、以及生成图像数据被编码的编码数据的图像编码装置。此外,能够适当地应用于由图像编码装置生成并由图像解码装置参照的编码数据的数据结构。
符号说明
10 CN信息解码部(分割信息解码部);
11 图像编码装置;
13 TT信息解码部;
22 TU解码部;
31 图像解码装置;
32 上下文决定部;
41 图像显示装置。

Claims (4)

1.一种图像解码装置,按每个块来对图片进行解码,其特征在于,具备:
上下文决定部,参照将对象块的块尺寸和与对象块相邻的一个或者多个相邻块的块尺寸进行了比较的结果,决定表示是否分割对象块的分割标记的上下文,其中,上述相邻块是在上述对象块的左边相邻的块以及在上边相邻的块,并且其中,在左相邻块中,所述块尺寸是块的高度,在上相邻块中,所述块尺寸是块的宽度;和
分割信息解码部,利用由上述上下文决定部决定的上下文来解码上述对象块的分割标记。
2.根据权利要求1所述的图像解码装置,其特征在于,
在所述上下文的导出中,包括比较对象块与左相邻块的高度的结果和比较对象块与上相邻块的宽度的结果的加法运算。
3.一种图像编码装置,按每个块来对图片进行编码,其特征在于,具备:
上下文决定部,参照对象块的块尺寸和与对象块相邻的一个或者多个相邻块的块尺寸,决定表示是否分割对象块的分割标记的上下文,其中,上述相邻块是在上述对象块的左边相邻的块以及在上边相邻的块,并且其中,在左相邻块中,所述块尺寸是块的高度,在上相邻块中,所述块尺寸是块的宽度;和
分割信息编码部,利用由上述上下文决定部决定的上下文来编码上述对象块的分割信息。
4.根据权利要求3所述的图像编码装置,其特征在于,
在所述上下文的导出中,包括比较对象块与左相邻块的高度的结果和比较对象块与上相邻块的宽度的结果的加法运算。
CN201780077864.5A 2016-12-16 2017-12-08 图像解码装置以及图像编码装置 Active CN110169067B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP2016-244900 2016-12-16
JP2016244900 2016-12-16
JP2017051342 2017-03-16
JP2017-051342 2017-03-16
PCT/JP2017/044240 WO2018110462A1 (ja) 2016-12-16 2017-12-08 画像復号装置及び画像符号化装置

Publications (2)

Publication Number Publication Date
CN110169067A CN110169067A (zh) 2019-08-23
CN110169067B true CN110169067B (zh) 2021-12-31

Family

ID=62558663

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780077864.5A Active CN110169067B (zh) 2016-12-16 2017-12-08 图像解码装置以及图像编码装置

Country Status (6)

Country Link
US (1) US20200077099A1 (zh)
EP (1) EP3557873B1 (zh)
JP (1) JP7213689B2 (zh)
CN (1) CN110169067B (zh)
CA (1) CA3046942A1 (zh)
WO (1) WO2018110462A1 (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110278443B (zh) * 2018-03-16 2022-02-11 华为技术有限公司 划分标志位的上下文建模方法及装置
WO2019174567A1 (zh) * 2018-03-16 2019-09-19 华为技术有限公司 划分标志位的上下文建模方法及装置
SI3809702T1 (sl) * 2018-06-15 2023-09-29 Lg Electronics, Inc. Postopek in naprave za entropijsko kodiranje na podlagi cabac-a
WO2020040619A1 (ko) * 2018-08-24 2020-02-27 삼성전자 주식회사 비디오 복호화 방법 및 장치, 비디오 부호화 방법 및 장치
CN112997493B (zh) * 2018-11-13 2024-01-05 北京字节跳动网络技术有限公司 用于单一类型运动候选列表的构建方法
WO2020141163A1 (en) * 2019-01-02 2020-07-09 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Encoding and decoding a picture
US11240499B2 (en) * 2019-05-24 2022-02-01 Tencent America LLC Method and apparatus for video coding
EP3987797A4 (en) * 2019-06-24 2023-03-22 FG Innovation Company Limited DEVICE AND METHOD FOR ENCODING VIDEO DATA
KR20230004797A (ko) 2020-05-01 2023-01-06 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 파티션 신택스를 위한 엔트로피 코딩
WO2022268207A1 (en) * 2021-06-25 2022-12-29 FG Innovation Company Limited Device and method for partitioning blocks in video coding
JP2024056375A (ja) * 2022-10-11 2024-04-23 シャープ株式会社 画像復号装置および画像符号化装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103535036A (zh) * 2011-06-24 2014-01-22 松下电器产业株式会社 图像解码方法、图像编码方法、图像解码装置、图像编码装置及图像编码解码装置
CN103828364A (zh) * 2011-09-29 2014-05-28 夏普株式会社 图像解码装置、图像解码方法及图像编码装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5719401B2 (ja) * 2013-04-02 2015-05-20 日本電信電話株式会社 ブロックサイズ決定方法、映像符号化装置、及びプログラム
JP2017051342A (ja) 2015-09-08 2017-03-16 オムロンヘルスケア株式会社 拍動情報測定装置及び拍動情報測定方法
WO2017088810A1 (en) * 2015-11-27 2017-06-01 Mediatek Inc. Method and apparatus of entropy coding and context modelling for video and image coding

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103535036A (zh) * 2011-06-24 2014-01-22 松下电器产业株式会社 图像解码方法、图像编码方法、图像解码装置、图像编码装置及图像编码解码装置
CN103828364A (zh) * 2011-09-29 2014-05-28 夏普株式会社 图像解码装置、图像解码方法及图像编码装置

Also Published As

Publication number Publication date
EP3557873A1 (en) 2019-10-23
CN110169067A (zh) 2019-08-23
JPWO2018110462A1 (ja) 2019-10-24
US20200077099A1 (en) 2020-03-05
EP3557873B1 (en) 2022-02-16
WO2018110462A1 (ja) 2018-06-21
CA3046942A1 (en) 2018-06-21
JP7213689B2 (ja) 2023-01-27
EP3557873A4 (en) 2020-06-03

Similar Documents

Publication Publication Date Title
CN110169067B (zh) 图像解码装置以及图像编码装置
CN110574374B (zh) 图像解码装置
US11234011B2 (en) Image decoding apparatus and image coding apparatus
WO2018116925A1 (ja) イントラ予測画像生成装置、画像復号装置、および画像符号化装置
AU2019268844B2 (en) Image encoding device, encoded stream extraction device, and image decoding device
WO2018116802A1 (ja) 画像復号装置、画像符号化装置、及び画像予測装置
JP2021010046A (ja) 画像符号化装置及び画像復号装置
WO2018110203A1 (ja) 動画像復号装置、および動画像符号化装置
JP2021005741A (ja) 画像符号化装置及び画像復号装置
CN116567236A (zh) 图像解码方法
US11863764B2 (en) Video encoding device and video decoding device
CN108605138B (zh) 预测图像生成装置、运动图像解码装置、以及运动图像编码装置
JP7241153B2 (ja) 画像復号装置
WO2019230904A1 (ja) 画像復号装置、および画像符号化装置
WO2019131349A1 (ja) 画像復号装置、画像符号化装置
CN113632475A (zh) 图像解码装置
WO2018173862A1 (ja) 画像復号装置及び画像符号化装置
WO2018061550A1 (ja) 画像復号装置及び画像符号化装置
WO2018101100A1 (ja) 画像フィルタ装置
JP2020182177A (ja) 画像復号装置、および画像符号化装置
JP2020057826A (ja) 動画像符号化装置及び動画像復号装置

Legal Events

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