CN113170190A - 预测图像生成装置、运动图像解码装置、运动图像编码装置以及预测图像生成方法 - Google Patents

预测图像生成装置、运动图像解码装置、运动图像编码装置以及预测图像生成方法 Download PDF

Info

Publication number
CN113170190A
CN113170190A CN201980080445.6A CN201980080445A CN113170190A CN 113170190 A CN113170190 A CN 113170190A CN 201980080445 A CN201980080445 A CN 201980080445A CN 113170190 A CN113170190 A CN 113170190A
Authority
CN
China
Prior art keywords
image
prediction
unit
gradient
encoding
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.)
Pending
Application number
CN201980080445.6A
Other languages
English (en)
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
Priority claimed from JP2018232640A external-priority patent/JP2020096279A/ja
Priority claimed from JP2019000704A external-priority patent/JP2020109919A/ja
Application filed by FG Innovation Co Ltd, Sharp Corp filed Critical FG Innovation Co Ltd
Publication of CN113170190A publication Critical patent/CN113170190A/zh
Pending legal-status Critical Current

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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/537Motion estimation other than block-based
    • H04N19/54Motion estimation other than block-based using feature points or meshes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • 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/172Methods 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 picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

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

Abstract

本发明具有从两个插补图像,根据梯度变化使用双向梯度变化处理生成预测图像的预测图像生成部,在所述预测图像生成部设定内部比特长度,所述内部比特长度设定为解码装置能解码的最大像素比特长度以下,为了将每个处理单位的相关参数的计算的运算精度控制在一定以下,根据内部比特长度,将插补图像和梯度预测图像的值右移位,推导出修正值,生成预测图像。

Description

预测图像生成装置、运动图像解码装置、运动图像编码装置以 及预测图像生成方法
技术领域
本发明的实施方式涉及预测图像生成装置、运动图像解码装置、运动图像编码装置以及预测图像生成方法。
背景技术
为了高效地传输或记录运动图像,使用通过对运动图像进行编码而生成编码数据的运动图像编码装置,以及通过对该编码数据进行解码而生成解码图像的运动图像解码装置。
作为具体的运动图像编码方式,例如可列举出在H.264/AVC、HEVC(High-Efficiency Video Coding:高效运动图像编码)方式等。
在这样的运动图像编码方式中,构成运动图像的图像(图片)通过分级结构来管理,并按每个CU进行编码/解码,所述分级结构包括通过分割图像而得到的切片、通过分割切片而得到的编码树单元(CTU:Coding Tree Unit)、通过分割编码树单元而得到的编码单位(有时也称为编码单元(Coding Unit:CU))以及通过分割编码单位而得到的变换单元(TU:Transform Unit)。
此外,在这样的运动图像编码方式中,通常,基于通过对输入图像进行编码/解码而得到的局部解码图像而生成预测图像,对从输入图像(原图像)中减去该预测图像而得到的预测误差(有时也称为“差分图像”或“残差图像”)进行编码。作为预测图像的生成方法,可列举出画面间预测(帧间预测)和画面内预测(帧内预测)。
此外,作为近年来的运动图像编码和解码的技术,可列举出非专利文献1。非专利文献2中公开了一种在从双向预测的运动补偿(插补图像)推导预测图像时利用梯度图像来提高画质的BIO技术。
现有技术文献
非专利文献
非专利文献1:“Versatile Video Coding(Draft 3)”,JVET-L1001,Joint VideoExploration Team JVET)of ITU-T SG 16WP 3and ISO/IEC JTC 1/SC29/WG 11,2018
非专利文献2:“CE9-related:Complexity reduction and bit-width controlfor bi-directional optical flow(BIO)”,JVET-L0256,Joint Video Exploration Team(JVET)of ITU-T SG 16 WP 3and ISO/IEC JTC 1/SC 29/WG 11,2018
发明内容
发明要解决的问题
使用了非专利文献2的推导预测图像时利用梯度图像来提高画质的BIO处理的预测(BIO预测)除了特定的像素比特长度之外,还存在编码效率降低这一问题。此外,在BIO处理中读入块的单位重复,因此存在需要在编码单位的外侧进行填充处理这一问题。
技术方案
本发明的一个方案的动图像解码装置的特征在于,从两个插补图像,使用根据梯度变化生成预测图像的双向梯度变化处理,具有预测图像生成部,具有:L0、L1预测生成部,所述双向梯度变化处理从两个插补图像,生成按每个编码单位的L0预测图像和L1预测图像;梯度图像生成部,从所述L0预测图像和L1预测图像生成水平方向和垂直方向的四个梯度图像;相关参数计算部,根据所述L0预测图像、L1预测图像以及所述四个梯度图像的积和运算计算按每个处理单位的相关参数;运动补偿修正值推导部,从所述梯度图像和所述相关参数推导出修正双向预测图像的值;以及双向预测图像生成部,根据所述L0预测图像、L1预测图像以及所述运动补偿修正值生成预测图像,在所述梯度图像生成部和所述相关参数计算部,为了将相关参数的计算的运算精度控制在一定以下,设定内部比特长度,所述内部比特长度设定为解码装置能解码的最大像素比特长度以下,根据所述内部比特长度,将L0预测图像、L1预测图像以及梯度预测图像的值右移位。
此外,本发明的一个方案的动图像解码装置的特征在于,在所述运动补偿修正值推导部,为了将计算的运算精度控制在一定以下,进行与所述内部比特长度对应的值的裁剪处理。
有益效果
根据以上的构成,能谋求上述问题中的任一个的解决。
附图说明
图1是表示本实施方式的图像传输系统的构成的概略图。
图2是表示搭载有本实施方式的运动图像编码装置的发送装置和搭载有运动图像解码装置的接收装置的构成的图。图2的(a)表示搭载有运动图像编码装置的发送装置,图2的(b)表示搭载有运动图像解码装置的接收装置。
图3是表示搭载有本实施方式的运动图像编码装置的记录装置和搭载有运动图像解码装置的再现装置的构成的图。图3的(a)表示搭载有运动图像编码装置的记录装置,图3的(b)表示搭载有运动图像解码装置的再现装置。
图4是表示编码流的数据的分级结构的图。
图5是表示CTU的分割例的图。
图6是表示参照图片和参照图片列表的一个示例的概念图。
图7是表示运动图像解码装置的构成的概略图。
图8是表示帧间预测参数解码部的构成的概略图。
图9是表示合并预测参数推导部和AMVP预测参数推导部的构成的概略图。
图10是表示帧间预测图像生成部的构成的概略图。
图11是表示说明使用了本实施方式的BIO预测的具备运动补偿功能的运动补偿部推导预测图像的处理的流程的流程图的一个示例的图。
图12是表示本实施方式的BIO部的构成的概略图。
图13是表示本实施方式的BIO部执行BIO填充的区域的一个示例的图。
图14是表示本实施方式的BIO部的BIO的处理的单位和读入区域的一个示例的图。
图15是表示运动图像编码装置的构成的框图。
图16是表示帧间预测参数编码部的构成的概略图。
具体实施方式
(第一实施方式)
以下,参照附图对本发明的实施方式进行说明。
图1是表示本实施方式的图像传输系统1的构成的概略图。
图像传输系统1是传输对编码对象图像进行编码而得到的编码流,对所传输的编码流进行解码并显示图像的系统。图像传输系统1构成为包括:运动图像编码装置(图像编码装置)11、网络21、运动图像解码装置(图像解码装置)31以及运动图像显示装置(图像显示装置)41。
运动图像编码装置11被输入图像T。
网络21将运动图像编码装置11所生成的编码流Te传输至运动图像解码装置31。网络21是互联网(Internet)、广域网(WAN:Wide Area Network)、小型网络(LAN:Local AreaNetwork,局域网)或它们的组合。网络21不一定限定于双向的通信网,也可以是传输地面数字广播、卫星广播等广播波的单向的通信网。此外,网络21也可以用DVD(DigitalVersatile Disc:数字通用光盘,注册商标)、BD(Blue-ray Disc:蓝光光盘,注册商标)等记录有编码流Te的存储介质代替。
运动图像解码装置31对网络21所传输的编码流Te分别进行解码,生成解码后的一个或多个解码图像Td。
运动图像显示装置41显示运动图像解码装置31所生成的一个或多个解码图像Td的全部或一部分。运动图像显示装置41例如具备液晶显示器、有机EL(Electro-luminescence:电致发光)显示器等显示设备。作为显示器的形式,可列举出固定式、移动式、HMD等。此外,在运动图像解码装置31具有高处理能力的情况下显示画质高的图像,在仅具有较低处理能力的情况下显示不需要高处理能力、高显示能力的图像。
<运算符>
以下记述在本说明书中使用的运算符。
>>为向右位移,<<为向左位移,&为逐位AND,|为逐位OR,|=为OR代入运算符,||表示逻辑和。
x?y:z是在x为真(0以外)的情况下取y、在x为假(0)的情况下取z的3项运算符。
Clip3(a,b,c)是将c裁剪到a以上b以下的值的函数,是在c<a的情况下返回a、在c>b的情况下返回b、在其他情况下返回c的函数(其中a<=b)。
abs(a)是返回a的绝对值的函数。
Int(a)是返回a的整数值的函数。
floor(a)是返回a以下的最大整数的函数。
ceil(a)是返回a以上的最小整数的函数。
a/d表示a除以d(舍去小数点以下)。
a^b表示a的b次方。
sign(a)是返回a的符号(sign)的函数。sign(a)=a>0?1:a==0?0:-1
log2(a)是返回a的以2为底的对数的函数。
Max(a,b)是a>=b时返回a,a<b的时返回b的函数。
Min(a,b)是a<=b的时返回a,a>b的时返回b的函数。
Round(a)是返回a的舍入值的函数。Round(a)=sign(a)*floor(abs(a)+0.5)。
<编码流Te的结构>
在对本实施方式的运动图像编码装置11和运动图像解码装置31进行详细说明之前,对由运动图像编码装置11生成并由运动图像解码装置31进行解码的编码流Te的数据结构进行说明。
图4是表示编码流Te中的数据的分级结构的图。编码流Te示例性地包括序列和构成序列的多张图片。图4的(a)~(f)分别是表示既定序列SEQ的编码视频序列、规定图片PICT的编码图片、规定切片S的编码切片、规定切片数据的编码切片数据、编码切片数据中所包括的编码树单元以及编码树单元中所包括的编码单元的图。
(编码视频序列)
在编码视频序列中,规定有数据的集合,供运动图像解码装置31为了对处理对象的序列SEQ进行解码而参照。序列SEQ如图4的(a)所示,包括视频参数集(Video ParameterSet)、序列参数集SPS(Sequence Parameter Set)、图片参数集PPS(Picture ParameterSet)、图片PICT以及补充增强信息SEI(Supplemental Enhancement Information)。
视频参数集VPS在由多层构成的运动图像中,规定有多个运动图像通用的编码参数的集合,以及运动图像中所包括的多层和与各层关联的编码参数的集合。
在序列参数集SPS中,规定有运动图像解码装置31为了对对象序列进行解码而参照的编码参数的集合。例如,规定有图片的宽度、高度。需要说明的是,SPS可以存在多个。在该情况下,从PPS中选择多个SPS中的任一个。
在图片参数集PPS中,规定有运动图像解码装置31为了对对象序列内的各图片进行解码而参照的编码参数的集合。例如包括用于图片的解码的量化宽度的基准值(pic_init_qp_minus26)和指示加权预测的应用的标志(weighted_pred_flag)。需要说明的是,PPS可以存在多个。在该情况下,从对象序列内的各图片中选择多个PPS中的任一个。
(编码图片)
在编码图片中,规定有运动图像解码装置31为了对处理对象的图片PICT进行解码而参照的数据的集合。图片PICT如图4的(b)所示,包括切片0~切片NS-1(NS为图片PICT中所包括的切片的总数)。
需要说明的是,以下,在无需对各切片0~切片NS-1进行区分的情况下,有时会省略代码的下标来进行记述。此外,以下所说明的编码流Te中所包括的且带有下标的其它数据也是同样的。
(编码切片)
在编码切片中,规定有运动图像解码装置31为了对处理对象的切片S进行解码而参照的数据的集合。切片如图4的(c)所示包括切片报头和切片数据。
切片报头中包括运动图像解码装置31为了确定对象切片的解码方法而参照的编码参数组。指定切片类型的切片类型指定信息(slice_type)是切片报头中所包括的编码参数的一个示例。
作为能由切片类型指定信息指定的切片类型,可列举出:(1)在进行编码时仅使用帧内预测的I切片、(2)在进行编码时使用单向预测或帧内预测的P切片以及(3)在进行编码时使用单向预测、双向预测或帧内预测的B切片等。需要说明的是,帧间预测不限于单向预测、双向预测,也可以使用更多的参照图片来生成预测图像。以下,称为P、B切片的情况是指包括能使用帧间预测的块的切片。
需要说明的是,切片报头中也可以包括对图片参数集PPS的参照(pic_parameter_set_id)。
(编码切片数据)
在编码切片数据中,规定有运动图像解码装置31为了对处理对象的切片数据进行解码而参照的数据的集合。切片数据如图4的(d)所示包括CTU。CTU是构成切片的固定大小(例如64×64)的块,也称为最大编码单位(LCU:Largest Coding Unit)。
(编码树单元)
在图4的(e)中,规定有运动图像解码装置31为了对处理对象的CTU进行解码而参照的数据的集合。CTU通过递归的四叉树分割(QT(Quad Tree)分割)、二叉树分割(BT(Binary Tree)分割)或三叉树分割(TT(Ternary Tree)分割)分割成作为编码处理的基本单位的编码单元CU。将BT分割和TT分割统称为多叉树分割(MT(Multi Tree)分割)。将通过递归的四叉树分割而得到的树形结构的节点称为编码节点(Coding Node)。四叉树、二叉树以及三叉树的中间节点为编码节点,CTU本身也被规定为最上层的编码节点。
CT包括以下信息作为CT信息:表示是否进行QT分割的QT分割标志(qt_split_cu_flag)、表示有无MT分割的MT分割标志(mtt_split_cu_flag)、表示MT分割的分割方向的MT分割方向(mtt_split_cu_vertical_flag)、表示MT分割的分割类型的MT分割类型(mtt_split_cu_binary_flag)。qt_split_cu_flag、mtt_split_cu_vertical_flag、mtt_split_cu_binary_flag按每个编码节点传输。
图5是表示CTU的分割例的图。在qt_split_cu_flag为1的情况下,编码节点分割成4个编码节点(图5的(b))。
在qt_split_cu_flag为0时,mtt_split_cu_flag为0的情况下,不分割编码节点,而保持1个CU作为节点(图5的(a))。CU为编码节点的末端节点,且不进行进一步分割。CU为编码处理的基本单位。
在mtt_split_cu_flag为1的情况下如下所述地对编码节点进行MT分割。在mtt_split_cu_vertical_flag为0且mtt_split_cu_binary_flag为1的情况下将编码节点水平分割成2个编码节点(图5的(d)),在mtt_split_cu_vertical_flag为1且mtt_split_cu_binary_flag为1的情况下将编码节点垂直分割成2个编码节点(图5的(c))。此外,在mtt_split_cu_vertical_flag为0且mtt_split_cu_binary_flag为0的情况下将编码节点水平分割成3个编码节点(图5的(f)),在mtt_split_cu_vertical_flag为1且mtt_split_cu_binary_flag为0的情况下将编码节点垂直分割成3个编码节点(图5的(e))。将它们在图5的(g)中示出。
此外,在CTU的尺寸为64×64像素的情况下,CU的大小能取64×64像素、64×32像素、32×64像素、32×32像素、64×16像素、16×64像素、32×16像素、16×32像素、16×16像素、64×8像素、8×64像素、32×8像素、8×32像素、16×8像素、8×16像素、8×8像素、64×4像素、4×64像素、32×4像素、4×32像素、16×4像素、4×16像素、8×4像素、4×8像素以及4×4像素中的任一种。
(编码单元)
如图4的(f)所示,规定有运动图像解码装置31为了对处理对象的编码单元进行解码而参照的数据的集合。具体而言,CU由CU报头CUH、预测参数、变换参数、量化变换系数等构成。在CU报头中规定有预测模式等。
预测处理存在以CU为单位进行的情况和以将CU进一步分割后得到的子CU为单位进行的情况。在CU与子CU的大小相等的情况下,CU中的子CU为1个。在CU的大小大于子CU的大小的情况下,CU被分割成子CU。例如,在CU为8x8、子CU为4x4的情况下,CU被分割成4个子CU,包括水平分割的两部分和垂直分割的两部分。
预测的种类(预测模式)存在帧内预测和帧间预测两种。帧内预测是同一图片内的预测,帧间预测是指在互不相同的图片间(例如显示时刻间)进行的预测处理。
变换/量化部处理以CU为单位来进行,但量化变换系数也可以以4x4等的子块为单位来进行熵编码。
(预测参数)
预测图像由附加于块的预测参数而推导出。预测参数中存在帧内预测和帧间预测的预测参数。
以下,对帧间预测的预测参数进行说明。帧间预测参数由预测列表利用标志predFlagL0、predFlagL1、参照图片索引refIdxL0、refIdxL1以及运动矢量mvL0、mvL1构成。预测列表利用标志predFlagL0、predFlagL1是表示是否使用各个被称为L0列表、L1列表的参照图片列表的标志,在值为1的情况下使用对应的参照图片列表。需要说明的是,在本说明书中记为“表示是否为××的标志”的情况下,将标志为0以外(例如1)设为是××的情况,将标志为0设为不是××的情况,在逻辑非、逻辑积等中将1视为真,将0视为假(以下同样)。但是,在实际的装置、方法中也可以使用其它值作为真值、假值。
用于推导帧间预测参数的语法要素中,例如有仿射标志affine_flag、合并标志merge_flag、合并索引merge_idx、帧间预测标识符inter_pred_idc、参照图片索引refIdxLX、预测矢量索引mvp_LX_idx、差分矢量mvdLX以及运动矢量精度模式amvr_mode。
(参照图片列表)
参照图片列表是由存储于参照图片存储器306的参照图片构成的列表。图6是表示参照图片和参照图片列表的一个示例的概念图。在图6的(a)中,矩形表示图片,箭头表示图片的参照关系,横轴表示时间,矩形中的I、P、B分别表示帧内图片、单向预测图片、双向预测图片,矩形中的数字表示解码顺序。如图6的(a)所示,图片的解码顺序为I0、P1、B2、B3、B4,显示顺序为I0、B3、B2、B4、P1。在图6的(b)中示出图片B3(对象图片)的参照图片列表的示例。参照图片列表是表示参照图片的候选的列表,一张图片(切片)可以具有一个以上的参照图片列表。在图的示例中,对象图片B3具有L0列表RefPicList0和L1列表RefPicList1这两个参照图片列表。在各CU中,由参照图片索引refIdxLX指定实际上以参照图片列表RefPicListX(X=0或1)中的哪一张图片来进行参照。图是refIdxL0=2、refIdxL1=0的示例。需要说明的是,LX是在不对L0预测和L1预测进行区分的情况下使用的记述方法,以下,通过将LX替换为L0、L1对针对L0列表的参数和针对L1列表的参数进行区分。
(合并预测和AMVP预测)
预测参数的解码(编码)方法中有合并预测(merge)模式和AMVP(Advanced MotionVector Prediction:先进运动矢量预测、自适应运动矢量预测)模式,合并标志merge_flag是用于识别它们的标志。合并预测模式是不将预测列表利用标志predFlagLX(或帧间预测标识符inter_pred_idc)、参照图片索引refIdxLX、运动矢量mvLX包括于编码数据而从已处理的附近块的预测参数中推导出并使用的模式。AMVP模式是将帧间预测标识符inter_pred_idc、参照图片索引refIdxLX、运动矢量mvLX包括于编码数据的模式。需要说明的是,运动矢量mvLX被编码为识别预测矢量mvpLX的预测矢量索引mvp_LX_idx、差分矢量mvdLX以及运动矢量精度模式amvr_mode。此外,除了合并预测模式之外,还可以有通过仿射标志affine_flag识别的仿射预测模式。作为合并预测模式的一个方式,可以有通过跳过标志skip_flag识别的跳过模式。需要说明的是,跳过模式是指通过与合并模式同样的方法推导出预测参数并使用的模式,并且是不将预测误差(残差图像)包括在编码数据中的模式。换言之,在跳过标志skip_flag为1的情况下,关于对象CU,仅包括该跳过标志skip_flag和合并索引merge_idx等与合并模式关联的语法,运动矢量等不包括于编码数据。因此,在针对对象CU指示跳过标志skip_flag应用跳过模式的情况下,省略该跳过标志skip_flag以外的预测参数的解码。
(运动矢量)
运动矢量mvLX表示不同的两张图片上的块间的移位量。将与运动矢量mvLX有关的预测矢量、差分矢量分别称为预测矢量mvpLX、差分矢量mvdLX。(帧间预测标识符inter_pred_idc和预测列表利用标志predFlagLX)
帧间预测标识符inter_pred_idc是表示参照图片的种类和数量的值,取PRED_L0、PRED_L1、PRED_BI中的任一值。PRED_L0、PRED_L1分别表示使用在L0列表、L1列表中进行管理的一张参照图片的单向预测。PRED_BI表示使用在L0列表和L1列表中进行管理的两张参照图片的双向预测BiPred。
合并索引merge_idx是表示是否使用从处理已完成的块推导的预测参数候选(合并候选)中的任一个预测参数作为对象块的预测参数的索引。
帧间预测标识符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
(运动图像解码装置的构成)
对本实施方式的运动图像解码装置31(图7)的构成进行说明。
运动图像解码装置31构成为包括:熵解码部301、参数解码部(预测图像解码装置)302、环路滤波器305、参照图片存储器306、预测参数存储器307、预测图像生成部(预测图像生成装置)308、逆量化/逆变换部311以及加法部312。需要说明的是,根据后文所述的运动图像编码装置11,也存在运动图像解码装置31中不包括环路滤波器305的构成。
参数解码部302还具备未图示的报头解码部3020、CT信息解码部3021以及CU解码部3022(预测模式解码部),CU解码部3022还具备TU解码部3024。也可以将它们统称为解码模块。报头解码部3020从编码数据解码VPS、SPS、PPS等参数集信息、切片报头(切片信息)。CT信息解码部3021从编码数据解码CT。CU解码部3022从编码数据解码CU。TU解码部3024在TU中包括预测误差的情况下,从编码数据解码QP更新信息(量化校正值)和量化预测误差(residual_coding)。
此外,参数解码部302构成为包括未图示的帧间预测参数解码部(预测图像生成装置)303和帧内预测参数解码部304。预测图像生成部308构成为包括帧间预测图像生成部(预测图像生成装置)309和帧内预测图像生成部310。
此外,在下文中对将CTU、CU用作处理单位的示例进行了记载,但不限于此,也可以以子CU为单位进行处理。或者,也可以设为将CTU、CU替换为块,将子CU替换为子块,以块或子块为单位进行的处理。
熵解码部301对从外部输入的编码流Te进行熵解码,对各个编码(语法要素)进行解码。
熵解码部301将解码后的代码输出至参数解码部302。解码后的代码例如是预测模式predMode、合并标志merge_flag、合并索引merge_idx、帧间预测标识符inter_pred_idc、参照图片索引refIdxLX、预测矢量索引mvp_LX_idx、差分矢量mvdLX以及运动矢量精度模式amvr_mode等。基于参数解码部302的指示来进行对哪一个代码进行解码的控制。
(帧间预测参数解码部的构成)
帧间预测参数解码部303基于从熵解码部301输入的代码,参照存储于预测参数存储器307的预测参数来对帧间预测参数进行解码。此外,帧间预测参数解码部303将解码后的帧间预测参数输出至预测图像生成部308,存储于预测参数存储器307。
图8是表示本实施方式的帧间预测参数解码部303的构成的概略图。帧间预测参数解码部303构成为包括:合并预测部30374、DMVR部30375、子块预测部(仿射预测部)30372、MMVD预测部(运动矢量推导部)30376、三角形(Triangle)预测部30377、AMVP预测参数推导部3032以及加法部3038。合并预测部30374构成为包括合并预测参数推导部3036。AMVP预测参数推导部3032、合并预测参数推导部3036、仿射预测部30372是在运动图像编码装置、运动图像解码装置中通用的部,因此也可以将这些总称为运动矢量推导部(运动矢量推导装置)。
帧间预测参数解码控制部303向熵解码部301指示解码与帧间预测关联的语法要素,提取编码数据中所包括的语法要素,例如,仿射标志affine_flag、合并标志merge_flag、合并索引merge_idx、帧间预测标识符inter_pred_idc、参照图片索引refIdxLX、预测矢量索引mvp_LX_idx、差分矢量mvdLX以及运动矢量精度模式amvr_mode。
在仿射标志affine_flag为1,即表示仿射预测模式的情况下,仿射预测部30372推导出子块的帧间预测参数。
在合并标志merge_flag为1,即表示合并预测模式的情况下,对合并索引merge_idx进行解码,输出至合并预测参数推导部3036。
在合并标志merge_flag为0,即表示AMVP预测模式的情况下,作为AMVP预测参数,例如对帧间预测标识符inter_pred_idc、参照图片索引refIdxLX、预测矢量索引mvp_lX_idx以及差分矢量mvdLX进行解码。AMVP预测参数推导部3032根据预测矢量索引mvp_LX_idx推导出预测矢量mvpLX。在加法部3038中,将推导出的预测矢量mvpLX与差分矢量mvdLX相加,推导出运动矢量mvLX。
(仿射预测部)
仿射预测部30372推导出对象块的仿射预测参数。在本实施方式中,作为仿射预测参数,推导出对象块的两个控制点(V0、V1)的运动矢量(mv0_x,mv0_y)(mv1_x,mv1_y)。具体而言,可以通过根据对象块的邻接块的运动矢量进行预测来推导出各控制点的运动矢量,也可以通过被推导为控制点的运动矢量的预测矢量与从编码数据推导出的差分矢量之和推导出各控制点的运动矢量。
需要说明的是,仿射预测部30372可以适当推导用于4参数MVD仿射预测的参数或用于6参数MVD仿射预测的参数。
(合并预测)
图9的(a)是表示合并预测部30374中所包括的合并预测参数推导部3036的构成的概略图。合并预测参数推导部3036具备合并候选推导部30361、合并候选选择部30362。需要说明的是,合并候选构成为包括:预测列表利用标志predFlagLX、运动矢量mvLX以及参照图片索引refIdxLX,储存于合并候选列表。索引按照规定的规则被分配至储存于合并候选列表的合并候选。
合并候选推导部30361直接使用已解码的邻接块的运动矢量和参照图片索引refIdxLX来推导出合并候选。除此以外,合并候选推导部30361可以应用后述的空间合并候选推导处理、时间合并候选推导处理、成对合并候选推导处理以及零合并候选推导处理。
作为空间合并候选推导处理,合并候选推导部30361按照规定的规则读出预测参数存储器307所存储的预测参数,设定为合并候选。在参照图片的指定方法中,例如是处于距离对象块预定范围内的各邻接块(例如,分别与对象块的左A1、右B1、右上B0、左下A0、左上B2相接的块中的全部或一部分)的预测参数。将各合并候选称为A1、B1、B0、A0、B2。
在此,A1、B1、B0、A0、B2分别是从包含下述的坐标的块推导出的运动信息。
A1:(xCb-1,yCb+cbHeight-1)
B1:(xCb+cbWidth-1,yCb-1)
B0:(xCb+cbWidth,yCb-1)
A0:(xCb-1,yCb+cbHeight)
B2:(xCb-1,yCb-1)
作为时间合并推导处理,合并候选推导部30361从预测参数存储器307读出对象块的右下CBR或包含中央的坐标的参照图像中的块C的预测参数设为合并候选Col,储存于合并候选列表mergeCandList[]。
成对推导部推导出成对候选avgK,储存于合并候选列表mergeCandList[]。
合并候选推导部30361推导出参照图片索引refIdxLX为0……M,且运动矢量mvLX的X分量、Y分量均为0的零合并候选Z0……ZM,储存于合并候选列表。
合并候选推导部30361或成对推导部将各合并候选储存于合并候选列表mergeCandList[]的顺序例如是空间合并候选(A1、B1、B0、A0、B2)、时间合并候选Col、成对候选AvgK、零合并候选ZeroCandK。需要说明的是,不可利用的(块为帧内预测等)参照块不储存于合并候选列表。
i=0
if(availableFlagA1)
mergeCandList[i++]=A1
if(availableFlagB1)
mergeCandList[i++]=B1
if(availableFlagB0)
mergeCandList[i++]=B0
if(availableFlagA0)
mergeCandList[i++]=A0
if(availableFlagB2)
mergeCandList[i++]=B2
if(availableFlagCol)
mergeCandList[i++]=Col
if(availableFlagAvgK)
mergeCandList[i++]=avgK
if(i<MaxNumMergeCand)
mergeCandList[i++]=ZK
需要说明的是,将对象块的左上坐标设为(xCb,yCb),将对象块的宽度设为cbWidth,将对象块的高度设为cbHeight。
合并候选选择部30362通过以下的算式选择合并候选列表中所包括的合并候选中的合并索引merge_idx所示的合并候选N。
N=mergeCandList[merge_idx]
在此,N是表示合并候选的标签,取A1、B1、B0、A0、B2、Col、AvgK、ZeroCandK等。标签N所示的合并候选的运动信息由(mvLXN[0],mvLXN[1])、predFlagLXN、refIdxLXN表示。
合并候选选择部30362将所选出的合并候选的运动信息(mvLXN[0],mvLXN[1])、predFlagLXN、refIdxLXN选作对象块的帧间预测参数。合并候选选择部30362将所选出的帧间预测参数存储于预测参数存储器307,并且输出至预测图像生成部308。
(MMVD预测部30373)
MMVD预测部30373将差分矢量mvdLX与通过合并候选推导部30361推导出的中心矢量mvdLX(合并候选的运动矢量)相加来推导出运动矢量。
MMVD预测部30376使用从合并候选mergeCandList[]和编码数据解码或对编码数据进行编码的语法base_candidate_idx、direction_idx、distance_idx来推导出运动矢量mvLX[]。而且,可以对进行距离表选择的语法distance_list_idx进行编码或解码。
MMVD预测部30376可以通过base_candidate_idx选择中心矢量mvLN[]。N=mergeCandList[base_candidate_idx]
MMVD预测部30376推导出基本距离(mvdUnit[0],mvdUnit[1])和距离DistFromBaseMV。
dir_table_x[]={8,-8,0,0,6,-6,-6,6}
dir_table_y[]={0,0,8,-8,6,-6,6,-6}
mvdUnit[0]=dir_table_x[direction_idx]
mvdUnit[1]=dir_table_y[direction_idx]
DistFromBaseMV=DistanceTable[distance_idx]
MMVD预测部30376推导出差分矢量refineMv[]。
firstMv[0]=(DistFromBaseMV<<shiftMMVD)*mvdUnit[0]
firstMv[1]=(DistFromBaseMV<<shiftMMVD)*mvdUnit[1]
在此,shiftMMVD是调整差分矢量的大小以匹配运动补偿部3091(插补部)中的运动矢量的精度MVPREC的值。
refineMvL0[0]=firstMv[0]
refineMvL0[1]=firstMv[1]
refineMvL1[0]=-firstMv[0]
refineMvL1[1]=-firstMv[1]
最终,MMVD预测部30376从差分矢量refineMvLX和中心矢量mvLXN如下所述地推导出MMVD合并候选的运动矢量。
mvL0[0]=mvL0N[0]+refineMvL0[0]
mvL0[1]=mvL0N[1]+refineMvL0[1]
mvL1[0]=mvL1N[0]+refineMvL1[0]
mvL1[1]=mvL1N[1]+refineMvL1[1]
(AMVP预测)
图9的(b)是表示本实施方式的AMVP预测参数推导部3032的构成的概略图。AMVP预测参数推导部3032具备矢量候选推导部3033和矢量候选选择部3034。矢量候选推导部3033基于参照图片索引refIdxLX,根据预测参数存储器307所存储的已解码的邻接块的运动矢量mvLX推导出预测矢量候选,并储存于预测矢量候选列表mvpListLX[]。
矢量候选选择部3034选择预测矢量候选列表mvpListLX[]的预测矢量候选中的预测矢量索引mvp_LX_idx所示的运动矢量mvpListLX[mvp_LX_idx]作为预测矢量mvpLX。矢量候选选择部3034将所选出的预测矢量mvpLX输出至加法部3038。
加法部3038将从AMVP预测参数推导部3032输入的预测矢量mvpLX和已解码的差分矢量mvdLX相加,计算出运动矢量mvLX。加法部3038将计算出的运动矢量mvLX输出至预测图像生成部308和预测参数存储器307。mvLX[0]=mvpLX[0]+mvdLX[0]
mvLX[1]=mvpLX[1]+mvdLX[1]
运动矢量精度模式amvr_mode是切换在AMVP模式下推导出的运动矢量的精度的语法,例如在amvr_mode=0、1、2时切换1/4像素、1像素、4像素精度。
在将运动矢量的精度设为1/16精度的情况下,可以如下所述地使用由amvr_mode推导出的MvShift(=1<<amvr_mode)来进行逆量化,用于将1/4、1、4像素精度的运动矢量差分变更为1/16像素精度的运动矢量差分。
mvdLX[0]=mvdLX[0]<<(MvShift+2)
mvdLX[1]=mvdLX[1]<<(MvShift+2)
需要说明的是,参数解码部302还可以对以下的语法进行解码来推导出mvdLX[]。
对以下进行解码:
·abs_mvd_greater0_flag
·abs_mvd_minus2
·mvd_sign_flag
然后,参数解码部302通过使用以下的算式从语法解码差分矢量lMvd[]。lMvd[compIdx]=abs_mvd_greater0_flag[compIdx]*
(abs_mvd_minus2[compIdx]+2)*(1-2*mvd_sign_flag[compIdx])
而且,在平移MVD的情况(MotionModelIdc[x][y]==0)下将解码后的差分矢量lMvd[]设定为mvdLX,在控制点MVD的情况(MotionModelIdc[x][y]!=0)下,将解码后的差分矢量lMvd[]设定为mvdCpLX。
if(如果)(MotionModelIdc[x][y]==0)
mvdLX[x0][y0][compIdx]=lMvd[compIdx]
else(否则)
mvdCpLX[x0][y0][compIdx]=lMvd[compIdx]<<2
(DMVR)
接着,对DMVR部30375所进行的DMVR(Decoder side Motion Vector Refinement:解码器侧运动矢量细化)处理进行说明。DMVR部30375在针对对象CU指示合并标志merge_flag应用合并预测模式的情况或指示跳过标志skip_flag应用跳过模式的情况下,使用参照图像来修正合并预测部30374所推导的该对象CU的运动矢量mvLX。
具体而言,在合并预测部30374所推导的预测参数为双向预测的情况下,使用从与两张参照图片对应的运动矢量推导出的预测图像来修正运动矢量。修正后的运动矢量mvLX供给至帧间预测图像生成部309。
(三角形预测)
接着,对三角形预测进行说明。在三角形预测中,以对角线或相反的对角线为边界,将对象CU分割成两个三角形的预测单位。各三角形预测单位中的预测图像通过对对象CU(包括三角形预测单位的矩形块)的预测图像的各像素进行与像素的位置对应的加权并实施掩码处理来推导出。例如,能通过乘以将矩形区域内的三角形区域的像素设为1,将三角形以外的区域设为0的掩码,从矩形图像推导出三角形图像。此外,在生成帧间预测图像后,对夹住对角线的双方的区域应用自适应的加权处理,通过使用两个预测图像的自适应的加权处理来推导出对象CU(矩形块)的一个预测图像。将该处理称为三角形合成处理。然后,变换(逆变换)和量化(逆量化)处理应用于整个对象CU。需要说明的是,三角形预测仅在合并预测模式或跳过模式的情况下应用。
三角形预测部30377推导出与用于三角形预测的两个三角形区域对应的预测参数,供给至帧间预测图像生成部309。在三角形预测中,为了处理的简略化,也可以是不使用双向预测的构成。在该情况下,在一个三角形区域中推导出单向预测的帧间预测参数。需要说明的是,两个预测图像的推导和使用预测图像的合成在运动补偿部3091、三角形合成部30952中进行。
环路滤波器305是设于编码环路内的滤波器,是去除块失真、振铃失真来改善画质的滤波器。环路滤波器305对加法部312所生成的CU的解码图像实施去块滤波、取样自适应偏移(SAO)、自适应环路滤波(ALF)等滤波。
参照图片存储器306将加法部312所生成的CU解码图像按每个对象图片和对象CU存储于预定的位置。
预测参数存储器307将预测参数按每个解码对象的CTU或CU存储于预定的位置。具体而言,预测参数存储器307存储由参数解码部302解码后的参数和由熵解码部301解码后的预测模式predMode等。
预测图像生成部308被输入预测模式predMode、预测参数等。此外,预测图像生成部308从参照图片存储器306中读出参照图片。预测图像生成部308在预测模式predMode所指示的预测模式下,使用预测参数和读出的参照图片(参照图片块)来生成块或子块的预测图像。在此,参照图片块是指参照图片上的像素的集合(通常为矩形因此称为块),是为了生成预测图像而参照的区域。(帧间预测图像生成部309)
在预测模式predMode指示帧间预测模式的情况下,帧间预测图像生成部309使用从帧间预测参数解码部303输入的帧间预测参数和读出的参照图片,通过帧间预测来生成块或子块的预测图像。
图10是表示本实施方式的预测图像生成部308中所包括的帧间预测图像生成部309的构成的概略图。帧间预测图像生成部309构成为包括运动补偿部(预测图像生成装置)3091和合成部3095。
(运动补偿)
运动补偿部3091(插补图像生成部3091)基于从帧间预测参数解码部303输入的帧间预测参数(预测列表利用标志predFlagLX、参照图片索引refIdxLX、运动矢量mvLX),从参照图片存储器306中读出处于在由参照图片索引refIdxLX指定的参照图片RefPicLX中的以对象块的位置为起点移位了运动矢量mvLX的位置的块,由此生成插补图像(运动补偿图像)。在此,在运动矢量mvLX的精度并非整数精度的情况下,实施称为运动补偿滤波的用于生成小数位置的像素的滤波,生成运动补偿图像。
运动补偿部3091首先通过以下的算式推导出与预测块内坐标(x,y)对应的整数位置(xInt,yInt)和相位(xFrac,yFrac)。
xInt=xPb+(mvLX[0]>>(log2(MVPREC)))+x
xFrac=mvLX[0]&(MVPREC-1)
yInt=yPb+(mvLX[1]>>(log2(MVPREC)))+y
yFrac=mvLX[1]&(MVPREC-1)
在此,(xPb,yPb)为bW*bH大小的块的左上坐标,x=0……bW-1,y=0……bH-1,MVPREC表示运动矢量mvLX的精度(1/MVPREC像素精度)。例如MVPREC=16。
运动补偿部3091使用内插滤波器对参照图片refImg进行水平插补处理由此推导出临时的图像temp[][]。以下的Σ是与k=0..NTAP-1的k有关的和,shift1是调整值的区间的归一化参数,offset1=1<<(shift1-1)。
temp[x][y]=
(ΣmcFilter[xFrac][k]*refImg[xInt+k-NTAP/2+1][yInt]+offset1)>>shift1接着,运动补偿部3091通过对临时的图像temp[][]进行垂直插补处理,推导出插补图像Pred[][]。以下的Σ是与k=0..NTAP-1的k有关的和,shift2是调整值的区间的归一化参数,offset2=1<<(shift2-1)。
Pred[x][y]=(ΣmcFilter[yFrac][k]*temp[x][y+k-NTAP/2+1]+offset2)>>shift2
可以由插值(Interpolation:refImg,xPb,yPb,bW,bH,mvLX)表示以上的插补图像生成处理。
(合成部)
合成部3095参照由运动补偿部3091供给的插补图像、由帧间预测参数解码部303供给的帧间预测参数以及由帧内预测图像生成部310供给的帧内图像来生成预测图像,将所生成的预测图像供给至加法部312。
合成部3095具备:组合的帧内/帧间(Combined intra/inter)合成部30951、三角形合成部30952、OBMC部30953、BIO部30954。
(组合的帧内/帧间合成处理)
组合的帧内/帧间合成部30951通过复合地使用AMVP中的单向预测图像、基于跳过模式、合并预测模式的预测图像以及帧内预测图像来生成预测图像。
(三角形合成处理)
三角形合成部30952生成使用了上述的三角形预测的预测图像。
(OBMC处理)
OBMC部30953使用OBMC(Overlapped block motion compensation:重叠块运动补偿)处理生成预测图像。OBMC处理中包括以下的处理。
·利用使用附加于对象子块的帧间预测参数生成的插补图像(PU插补图像)和使用对象子块的邻接子块的运动参数生成的插补图像(OBMC插补图像)来生成对象子块的插补图像(运动补偿图像)。
·通过对OBMC插补图像和PU插补图像进行加权平均来生成预测图像。
(BIO处理)
BIO部30954通过进行BIO(Bi-directional optical flow:双向光流;双向预测梯度变化)处理来生成预测图像。在后文对BIO部30954的详细内容加以叙述。
(加权预测)
在加权预测中,通过将运动补偿图像PredLX与加权系数相乘来生成块的预测图像。在预测列表利用标志的一方(predFlagL0或predFlagL1)为1(单向预测)且不使用加权预测的情况下,进行使运动补偿图像PredLX(LX为L0或L1)与像素比特数bitDepth匹配的以下的算式的处理。
Pred[x][y]=Clip3(0,(1<<bitDepth)-1,(PredLX[x][y]+offset1)>>shift1)
在此,shift1=14-bitDepth,offset1=1<<(shift1-1)。
此外,在参照列表利用标志两者(predFlagL0和predFlagL1)为1(双向预测BiPred)且不使用加权预测的情况下,进行将运动补偿图像PredL0、PredL1平均,并使其平均数与像素比特数匹配的以下的算式的处理。
Pred[x][y]=Clip3(0,(1<<bitDepth)-1,(PredL0[x][y]+PredL1[x][y]+offset2)>>shift2)
在此,shift2=15-bitDepth,offset2=1<<(shift2-1)。
而且,在进行单向预测且进行加权预测的情况下,合成部3095从编码数据推导出加权预测系数w0和偏移值o0,进行以下的算式的处理。
Pred[x][y]=Clip3(0,(1<<bitDepth)-1,((PredLX[x][y]*w0+2^(log2WD-1))>>log2WD)+o0)
在此,log2WD是表示规定的移位量的变量。
而且,在进行双向预测BiPred且进行加权预测的情况下,合成部3095从编码数据推导出加权预测系数w0、w1、o0、o1,进行以下的算式的处理。Pred[x][y]=Clip3(0,(1<<bitDepth)-1,(PredL0[x][y]*w0+PredL1[x][y]*w1+((o0+o1+1)<<log2WD))>>(log2WD+1))
然后,将所生成的块的预测图像输出至加法部312。
逆量化/逆变换部311将从熵解码部301输入的量化变换系数逆量化来求出变换系数。该量化变换系数是在编码处理中对预测误差进行DCT(Discrete Cosine Transform、离散余弦变换)、DST(Discrete Sine Transform、离散正弦变换)等频率变换并量化而得到的系数。逆量化/逆变换部311对求出的变换系数进行逆DCT、逆DST等逆频率变换,计算预测误差。逆量化/逆变换部311将预测误差输出至加法部312。
加法部312将从预测图像生成部308输入的块的预测图像与从逆量化/逆变换部311输入的预测误差按每个像素相加,生成块的解码图像。加法部312将块的解码图像存储于参照图片存储器306,并向环路滤波器305输出。
(BIO预测)
接着,对使用了BIO部30954所进行的BIO处理的预测(BIO预测)的详细内容进行说明。BIO部30954在双向预测模式下参照两个预测图像(第一预测图像和第二预测图像)和梯度校正项生成预测图像。
图11是说明推导预测图像的处理的流程的流程图。
在帧间预测参数解码部303判定为L0的单向预测的情况下(在S101中inter_pred_idc为0),运动补偿部3091生成L0预测图像PredL0[x][y](S102)。在帧间预测参数解码部303判定为L1的单向预测的情况下(在S101中inter_pred_idc为1),运动补偿部3091生成L1预测图像PredL1[x][y](S103)。另一方面,在帧间预测参数解码部303判定为双向预测模式的情况下(在S101中inter_pred_idc为2),接着进行以下的S104的处理。在S104中,合成部3095参照表示是否进行BIO处理的bioAvailableFlag来判定是否进行BIO处理。在bioAvailableFlag表示真(TRUE)时,BIO部30954执行BIO处理来生成双向预测图像(S106)。在bioAvailableFlag表示假(FALSE)时,合成部3095通过通常的双方预测图像生成来生成预测图像(S105)。
帧间预测参数解码部303可以在L0参照图像refImgL0和L1参照图像refImgL1为不同的参照图像,并且相对于对象图片两张图片为相反方向的情况下对bioAvailableFlag推导出真。具体而言,在将对象图像设为currPic时,满足DiffPicOrderCnt(currPic,refImgL0)*DiffPicOrderCnt(currPic,refImgL1)<0的条件的情况下,bioAvailableFlag表示真。在此,DiffPicOrderCnt()是如下推导出两张图像的POC(Picture Order Count:图片的显示顺序)的差分的函数。DiffPicOrderCnt(picA,picB)=PicOrderCnt(picA)-PicOrderCnt(picB)
可以追加对象块的运动矢量不是以子块为单位的运动矢量这一条件作为bioAvailableFlag表示真的条件。
此外,也可以追加对象图片的运动矢量不是以子块为单位的运动矢量这一条件作为bioAvailableFlag表示真的条件。
此外,也可以追加两个预测块的L0预测图像与L1预测图像的绝对差分和为规定的值以上这一条件作为bioAvailableFlag表示真的条件。
此外,也可以加上预测图像生成模式为以块为单位的预测图像生成模式这一条件作为bioAvailableFlag表示真的条件。
使用图12对具体的BIO部30954所进行的处理的内容进行说明。BIO处理部30954具备:L0、L1预测图像生成部309541、梯度图像生成部309542、相关参数计算部309543、运动补偿修正值推导部309544以及双向预测图像生成部309545。BIO部30954由从运动补偿部3091接收到的插补图像和从帧间预测参数解码部303接收到的帧间预测参数生成预测图像,并将所生成的预测图像输出至加法部312。需要说明的是,将从梯度图像推导出运动补偿修正值modBIO(运动补偿修正图像),修正并推导出PredL0、PredL1的预测图像的处理称为双向梯度变化处理。
首先,在L0、L1预测图像生成部309541中,生成用于BIO处理的L0、L1预测图像。在BIO部30954中,基于图13所示的按每个CU单位或按每个子CU单位的L0、L1预测图像进行BIO处理,但是,额外需要作为对象的CU或子CU的周围2像素的插补图像信息用于求出梯度。不使用通常的插值滤波器,而是使用双线性(Bilinear)滤波器等抽头长度短的图像来生成该部分的插补图像信息,用于后述的梯度图像生成。在除此以外情况下,该部分与图片的外侧同样地复制并使用周围的像素来作为填充区域。此外,BIO处理的单位是CU单位或子CU单位以下的NxN像素,处理本身使用加上周围1像素的(N+2)x(N+2)的像素来进行处理。
在梯度图像生成部309542生成梯度图像。在梯度变化(Optical Flow)中假定各点的像素值不变,仅其位置变化。这能使用水平方向的像素值I的变化(水平梯度值lx)和其位置的变化Vx、垂直方向的像素值I的变化(垂直梯度值ly)和其位置的变化Vy以及像素值I的时间变化lt通过以下来表示。lx*Vx+ly*Vy+lt=0
以下,将位置的变化(Vx,Vy)称为校正权重矢量(u,v)。
具体而言,梯度图像生成部309542通过以下算式推导出梯度图像lx0、ly0、lx1、ly1。lx0和lx1表示沿水平方向的梯度,ly0和ly1表示沿垂直方向的梯度。lx0[x][y]=(PredL0[x+1][y]-PredL0[x-1][y])>>4
ly0[x][y]=(PredL0[x][y+1]-PredL0[x][y-1])>>4
lx1[x][y]=(PredL1[x+1][y]-PredL1[x-1][y])>>4
ly1[x][y]=(PredL1[x][y+1]-PredL1[x][y-1])>>4
接着,相关参数计算部309543使用每个CU内的NxN像素的每个块的周围1像素推导出(N+2)x(N+2)像素的梯度积和s1、s2、s3、s5、s6。
s1=sum(phiX[x][y]*phiX[x][y])
s2=sum(phiX[x][y]*phiY[x][y])
s3=sum(-theta[x][y]*phiX[x][y])
s5=sum(phiY[x][y]*phiY[x][y])
s6=sum(-theta[x][y]*phiY[x][y])
在此,sum(a)表示针对(N+2)x(N+2)像素的块内的坐标(x,y)的a的总和。此外,
phiX[x][y]=(lx1[x][y]+lx0[x][y])>>3
phiY[x][y]=(ly1[x][y]+ly0[x][y])>>3
theta[x][y]=-(PredL1[x][y]>>6)+(PredL0[x][y]>>6)
接着,运动补偿修正值推导部30954使用推导出的梯度积和s1、s2、s3、s5、s6推导出以NxN像素为单位的校正权重矢量(u,v)。
u=(s3<<3)>>log2(s1)
v=((s6<<3)-((((u*s2m)<<12)+u*s2s)>>1))>>log2(s5)
在此s2m=s2>>12,s2s=s2&((1<<12)-1)。
需要说明的是,可以如下所示地进一步使用裁剪来限制u、v的范围。u=s1>0?Clip3(-th,th,-(s3<<3)>>floor(log2(s1))):0v=s5>0?Clip3(-th,th,((s6<<3)-((((u*s2m)<<12)+u*s2s)>>1))>>floor(log2(s5))):0在此th=1<<(13-bitDepth)。
运动补偿修正值推导部309544使用以NxN像素为单位的校正权重矢量(u,v)和梯度图像lx0、ly0、lx1、ly1来推导出NxN像素的运动补偿修正值的modBIO[x][y]。
可以使用modBIO[x][y]=((lx1[x][y]-lx0[x][y])*u+(ly1[x][y]-ly0[x][y])*v+1)>>1(算式A3)或舍入函数如下所示地推导出modBIO。
modBIO[x][y]=Round(((lx1[x][y]-lx0[x][y])*u)>>1)+Round(((ly1[x][y]-ly0[x][y])*v)>>1)
双向预测图像生成部309545使用上述的参数通过以下算式推导出NxN像素的预测图像的像素值Pred。
此时,双向预测图像生成部309545使用上述的参数通过以下算式推导出NxN像素的预测图像的像素值Pred。
Pred[x][y]=Clip3(0,(1<<bitDepth)-1,(PredL0[x][y]+PredL1[x][y]+modBIO[x][y]+offset2)>>shift2)
在此,shift2=Max(3,15-bitDepth),offset2=1<<(shift2-1)。
接着,对使用了BIO部30954所进行的BIO处理的预测(BIO预测)的另一实施方式进行说明。在上述的实施方式中,在像素比特长度bitDepth为10比特的情况下正确进行动作,但在除此以外的情况下,存在没有针对编码像素比特长度的计算精度而编码效率降低这一问题。因此,如下所示,定义出相对于像素比特长度bitDepth独立的内部比特长度InternalBitDepth作为BIO部内的计算精度,并将该值固定,由此,与bitDepth无关,均满足32比特运算的范围。在此,将InternalBitDepth设为8以上且解码装置能容许的最大像素比特长度以下的值。
具体而言,梯度图像生成部309542如下所示地进行梯度图像lx0、ly0、lx1、ly1的推导。
lx0[x][y]=(PredL0[x+1][y]-PredL0[x-1][y])>>shift0
ly0[x][y]=(PredL0[x][y+1]-PredL0[x][y-1])>>shift0
lx1[x][y]=(PredL1[x+1][y]-PredL1[x-1][y])>>shift0
ly1[x][y]=(PredL1[x][y+1]-PredL1[x][y-1])>>shift0
在此,shift0=Max(2,14-InternalBitDepth)。
在使用与HEVC同样的插值滤波器的情况下,如果是bitDepth为8~12比特的范围,则PredL0和PredL1的值的运算精度为14比特,在bitDepth大于12的情况下,为(InternalBitDepth+2)比特。在本实施方式中,右移位作为与InternalBitDepth对应的值的shift1,梯度图像lx0、ly0、lx1、ly1的运算精度为(InternalBitDepth+1)比特。
接着,相关参数计算部309543按CU内的NxN像素的每个块推导出梯度积和s1、s2、s3、s5、s6。在此,进一步使用块的周围1像素根据(N+2)*(N+2)像素的块的像素中的sum计算s1、s2、s3、s5、s6。
s1=sum(phiX[x][y]*phiX[x][y])
s2=sum(phiX[x][y]*phiY[x][y])
s3=sum(-theta[x][y]*phiX[x][y])
s5=sum(phiY[x][y]*phiY[x][y])
s6=sum(-theta[x][y]*phiY[x][y])
在此,sum(a)表示针对(N+2)x(N+2)像素的块内的坐标(x,y)的a的总和。此外,
theta[x][y]=-(PredL1[x][y]>>shift4)+(PredL0[x][y]>>shift4)
phiX[x][y]=(lx1[x][y]+lx0[x][y])>>shift5
phiY[x][y]=(ly1[x][y]+ly0[x][y])>>shift5
在此,设为:
shift4=Min(8,InternalBitDepth-4)
shift5=Min(5,InternalBitDepth-7)。
此时,如果InternalBitDepth是8以上12以下,则theta的值的运算精度为(19-InternalBitDepth)比特。此外,如果是图像的bitDepth为8~12比特的范围,则phiX和phiY的运算精度为9比特。因此,在设为N=4的情况下,如果是bitDepth为8~12比特的范围,则作为6x6像素的块的合计的s1、s2、s5的运算精度为24比特左右,即使PredL0和PredL1的最小值、最大值在16比特的范围,也满足32比特运算的范围。此外,同样在设为N=4的情况下,作为6x6像素的块的合计的s3、s6的运算精度为(34-InternalBitDepth)比特左右。如果PredL0和PredL1的最小值、最大值为16比特的范围,则能通过32比特整数运算实现。
更具体而言,在考虑InternalBitDepth=10的情况时,shift0=4,shift4=6,shift5=3,是包含所述实施方式的方式。
作为相关参数计算部309543的另一构成,梯度积和s1、s2、s3、s5、s6可以不通过(N+2)x(N+2)像素的块,而通过NxN像素的块求出。在设为N=4的情况下为4x4=16像素的块,因此,与6x6=36像素的合计相比,sum的计算所需的运算比特减少了(Ceil(log2(36))-Ceil(log2(16))=2比特,因此,
shift4=Min(7,InternalBitDepth-5)
shift5=Min(4,InternalBitDepth-8)
即使使用比以上分别小1比特的值,也能通过32比特整数运算实现。此外,也能削减梯度积和的运算量。如图14所示,BIO处理的单位与读入区域一致,因此,与图13的情况不同,不需要作为对象的CU或子CU的周围1像素的填充区域。
需要说明的是,对于图14的双线性滤波器处理区域,也能使用通过进行将CU或子CU的内侧的周围1像素复制到外侧1像素的所谓的填充处理来进行双线性滤波器处理的方法。
接着,运动补偿修正值推导部309544使用推导出的梯度积和s1、s2、s3、s5、s6推导出以NxN像素为单位的校正权重矢量(u,v)。
u=(s3<<3)>>log2(s1)
v=((s6<<3)-((((u*s2m)<<12)+u*s2s)>>1))>>log2(s5)
在此s2m=s2>>12,s2s=s2&((1<<12)-1)。
需要说明的是,可以如下所示地进一步使用裁剪来限制u、v的范围。u=s1>0?Clip3(-th,th,-(s3<<3)>>floor(log2(s1))):0v=s5>0?Clip3(-th,th,((s6<<3)-((((u*s2m)<<12)+u*s2s)>>1))>>floor(log2(s5))):0在此
th=Max(2,1<<(13-InternalBitDepth))。th为相对于bitDepth独立的值,因此,与所述实施方式不同,按与InternalBitDepth关联的值裁剪以像素为单位的校正权重矢量(u,v)。例如,在设为InternalBitDepth=10时,th=1<<(13-10)=8,因此,与像素比特长度bitDepth无关地进行如下所示的裁剪。u=s1>0?Clip3(-8,8,-(s3<<3)>>floor(log2(s1))):0v=s5>0?Clip3(-8,8,((s6<<3)-((((u*s2m)<<12)+u*s2s)>>1))>>floor(log2(s5))):0
此时,以像素为单位的校正权重矢量(u,v)也会考虑关系到运动矢量的精度、量化宽度的值,因此,用于限制校正权重矢量(u,v)的阈值th可以如下所示地通过量化宽度Qp的函数来表达
th0=Max(1,1<<(12-InternalBitDepth))
th=th0+floor((Qp-32)/6)。
运动补偿修正值推导部309544使用以NxN像素为单位的校正权重矢量(u,v)和梯度图像lx0、ly0、lx1、ly1来推导出NxN画运动补偿修正值的modBIO。modBIO[x][y]=((lx1[x][y]-lx0[x][y])*u+(ly1[x][y]-ly0[x][y])*v)>>1
双向预测图像生成部309545使用上述的参数通过以下算式推导出以NxN像素为单位的预测图像的像素值Pred。
Pred[x][y]=Clip3(0,(1<<bitDepth)-1,(PredL0[x][y]+PredL1[x][y]+modBIO[x][y]+offset2)>>shift2)
在此,shift2=Max(3,15-bitDepth),offset2=1<<(shift2-1)。
(运动图像编码装置的构成)
接着,对本实施方式的运动图像编码装置11的构成进行说明。图15是表示本实施方式的运动图像编码装置11的构成的框图。运动图像编码装置11构成为包括:预测图像生成部101、减法部102、变换/量化部103、逆量化/逆变换部105、加法部106、环路滤波器107、预测参数存储器(预测参数存储部、帧存储器)108、参照图片存储器(参照图像存储部、帧存储器)109、编码参数确定部110、参数编码部111以及熵编码部104。
预测图像生成部101按将每个图像T的各图片分割而成的区域即CU生成预测图像。预测图像生成部101进行与已说明的预测图像生成部308相同的动作,在此省略其说明。
减法部102从图像T的像素值中减去从预测图像生成部101输入的块的预测图像的像素值,生成预测误差。减法部102将预测误差输出至变换/量化部103。
变换/量化部103对从减法部102输入的预测误差,通过频率变换计算出变换系数,并通过量化导出量化变换系数。变换/量化部103将量化变换系数输出至熵编码部104和逆量化/逆变换部105。
逆量化/逆变换部105与运动图像解码装置31中的逆量化/逆变换部311(图7)相同,在此省略其说明。计算出的预测误差输入至加法部106。
熵编码部104中,从变换/量化部103输入量化变换系数,从参数编码部111输入编码参数。在编码参数中,例如有参照图片索引refIdxLX、预测矢量索引mvp_LX_idx、差分矢量mvdLX、运动矢量精度模式amvr_mode、预测模式predMode以及合并索引merge_idx等代码。
熵编码部104对分割信息、预测参数、量化变换系数等进行熵编码生成编码流Te并输出。
参数编码部111具备:未图示的报头编码部1110、CT信息编码部1111、CU编码部1112(预测模式编码部)以及帧间预测参数编码部112和帧内预测参数编码部113。CU编码部1112还具备TU编码部1114。
以下,对各模块的概略动作进行说明。参数编码部111进行报头信息、分割信息、预测信息、量化变换系数等参数的编码处理。
CT信息编码部1111根据编码数据对QT、MT(BT、TT)分割信息等进行编码。
CU编码部1112对CU信息、预测信息、TU分割标志split_transform_flag、CU残差标志cbf_cb、cbf_cr、cbf_luma等进行编码。
TU编码部1114在TU中包括预测误差的情况下,对QP更新信息(量化校正值)和量化预测误差(residual_coding)进行编码。
CT信息编码部1111、CU编码部1112将帧间预测参数(预测模式predMode、合并标志merge_flag、合并索引merge_idx、帧间预测识别子inter_pred_idc、参照图片索引refIdxLX、预测矢量索引mvp_LX_idx、差分矢量mvdLX)、帧内预测参数、量化变换系数等的语法元素供给至熵编码部104。(帧间预测参数编码部的构成)
参数编码部112基于从编码参数确定部110输入的预测参数来推导出帧间预测参数。参数编码部112包括与由帧间预测参数解码部303推导出帧间预测参数的构成部分相同的构成。
对预测参数编码部112的构成进行说明。如图16所示,构成为包括:参数编码控制部1121、合并预测部30374、子块预测部(仿射预测部)30372、DMVR部30375、MMVD预测部30376、三角形预测部30377、AMVP预测参数推导部3032、减法部1123。合并预测部30374具备合并预测参数推导部3036。参数编码控制部1121包括合并索引推导部11211和矢量候选索引推导部11212。此外,参数编码控制部1121通过合并索引推导部11211推导出merge_idx、affine_flag、base_candidate_idx、distance_idx、direction_idx等,通过矢量候选索引推导部11212推导出mvpLX等。也可以将合并预测参数推导部3036、AMVP预测参数推导部3032、仿射预测部30372、MMVD预测部30376、三角形预测部30377统称为运动矢量推导部(运动矢量推导装置)。参数编码部112将运动矢量(mvLX,subMvLX)、参照图片索引refIdxLX、帧间预测标识符inter_pred_idc或表示这些的信息输出至预测图像生成部101。此外,参数编码部112将merge_flag、skip_flag、merge_idx、inter_pred_idc、refIdxLX、mvp_lX_idx、mvdLX、amvr_mode、affine_flag输出至熵编码部104。
合并索引推导部11211推导出合并索引merge_idx并输出至合并预测参数推导部3036(合并预测部)。矢量候选索引推导部11212推导出预测矢量索引mvp_lX_idx。
合并预测参数推导部3036基于合并索引merge_idx推导出帧间预测参数。
AMVP预测参数推导部3032基于运动矢量mvLX推导出预测矢量mvpLX。AMVP预测参数推导部3032将预测矢量mvpLX输出至减法部1123。需要说明的是,参照图片索引refIdxLX和预测矢量索引mvp_lX_idx被输出至熵编码部104。
仿射预测部30372推导出子块的帧间预测参数(仿射预测参数)。
减法部1123从由编码参数确定部110输入的运动矢量mvLX中减去作为AMVP预测参数推导部3032的输出的预测矢量mvpLX,生成差分矢量mvdLX。差分矢量mvdLX被输出至熵编码部104。
加法部106将从预测图像生成部101输入的块预测图像的像素值和从逆量化/逆变换部105输入的预测误差按每个像素相加来生成解码图像。加法部106将生成的解码图像存储于参照图片存储器109。
环路滤波器107对加法部106所生成的解码图像,实施去块滤波、SAO、ALF。需要说明的是,环路滤波器107不一定包括上述三种滤波器,例如也可以是仅包括去块滤波器的构成。
预测参数存储器108将编码参数确定部110所生成的预测参数按每个对象图片和CU存储于预定的位置。
参照图片存储器109将环路滤波器107所生成的解码图像按每个对象图片和CU每存储于预定的位置。
编码参数确定部110选择编码参数的多个集合中的一个集合。编码参数是指上述的QT、BT或TT分割信息、预测参数或与它们关联生成的作为编码对象的参数。预测图像生成部101使用这些编码参数来生成预测图像。
编码参数确定部110对多个集合的每一个集合计算出表示信息量的大小和编码误差的RD成本值。编码参数确定部110选择计算出的成本值为最小的编码参数的集合。由此,熵编码部104将所选出的编码参数的集合作为编码流Te输出。编码参数确定部110将所确定的编码参数存储于预测参数存储器108。
需要说明的是,可以通过计算机实现上述的实施方式中的运动图像编码装置11、运动图像解码装置31中的一部分,例如,熵解码部301、参数解码部302、环路滤波器305、预测图像生成部308、逆量化/逆变换部311、加法部312、预测图像生成部101、减法部102、变换/量化部103、熵编码部104、逆量化/逆变换部105、环路滤波器107、编码参数确定部110以及参数编码部111。在该情况下,可以通过将用于实现该控制功能的程序记录于计算机可读记录介质,使计算机系统读入记录于该记录介质的程序并执行来实现。需要说明的是,在此提到的“计算机系统”是指内置于运动图像编码装置11、运动图像解码装置31中的任一个的计算机系统,采用包括OS、外围设备等硬件的计算机系统。此外,“计算机可读记录介质”是指软盘、磁光盘、ROM、CD-ROM等可移动介质、内置于计算机系统的硬盘等存储装置。而且,“计算机可读记录介质”也可以包括:像经由互联网等网络或电话线路等通信线路来发送程序的情况下的通信线那样短时间内、动态地保存程序的记录介质;以及像作为该情况下的服务器、客户端的计算机系统内部的易失性存储器那样保存程序固定时间的记录介质。此外,上述程序可以是用于实现上述功能的一部分的程序,也可以是能通过与已记录在计算机系统中的程序进行组合来实现上述功能的程序。
此外,也可以将上述的实施方式中的运动图像编码装置11、运动图像解码装置31中的一部分或全部作为LSI(Large Scale Integration:大规模集成电路)等集成电路而实现。运动图像编码装置11、运动图像解码装置31的各功能块可以单独地处理器化,也可以将一部分或全部集成来处理器化。此外,集成电路化的方法并不限于LSI,也可以通过专用电路或通用处理器来实现。此外,在随着半导体技术的进步而出现代替LSI的集成电路化的技术的情况下,也可以使用基于该技术的集成电路。
以上,参照附图对该发明的一实施方式详细地进行了说明,但具体构成并不限于上述实施方式,在不脱离该发明的主旨的范围内,可以进行各种设计变更等。
〔应用例〕
上述运动图像编码装置11和运动图像解码装置31可以搭载于进行运动图像的发送、接收、记录、再现的各种装置而利用。需要说明的是,运动图像可以是通过摄像机等拍摄的自然运动图像,也可以是通过计算机等生成的人工运动图像(包括CG和GUI)。
首先,参照图2对能将上述的运动图像编码装置11和运动图像解码装置31用于运动图像的发送和接收的情况进行说明。
图2的(a)是表示搭载有运动图像编码装置11的发送装置PROD_A的构成的框图。如图2的(a)所示,发送装置PROD_A具备:通过对运动图像进行编码而得到编码数据的编码部PROD_A1、通过利用编码部PROD_A1所得到的编码数据对载波进行调制而得到调制信号的调制部PROD_A2以及发送调制部PROD_A2所得到的调制信号的发送部PROD_A3。上述的运动图像编码装置11被用作该编码部PROD_A1。
作为输入至编码部PROD_A1的运动图像的供给源,发送装置PROD_A也可以进一步具备:拍摄运动图像的摄像机PROD_A4、记录有运动图像的记录介质PROD_A5、用于从外部输入运动图像的输入端子PROD_A6以及生成或加工图像的图像处理部A7。在图2的(a)中举例示出了发送装置PROD_A具备全部这些的构成,但也可以省略一部分。
需要说明的是,记录介质PROD_A5可以是记录有未被编码的运动图像的介质,也可以是记录有以与传输用的编码方式不同的记录用的编码方式进行编码后的运动图像的介质。在后者的情况下,使按照记录用的编码方式对从记录介质PROD_A5读出的编码数据进行解码的解码部(未图示)介于记录介质PROD_A5与编码部PROD_A1之间为好。
图2的(b)是表示搭载有运动图像解码装置31的接收装置PROD_B的构成的框图。如图2的(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。在图2的(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这两方的功能。
接着,参照图3,对能将上述的运动图像编码装置11和运动图像解码装置31用于运动图像的记录和再现的情况进行说明。
图3的(a)是表示搭载有上述的运动图像编码装置11的记录装置PROD_C的构成的框图。如图3的(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_C1的运动图像的供给源,记录装置PROD_C也可以进一步具备:拍摄运动图像的摄像机PROD_C3、用于从外部输入运动图像的输入端子PROD_C4、用于接收运动图像的接收部PROD_C5以及生成或加工图像的图像处理部PROD_C6。在图3的(a)中举例示出了记录装置PROD_C具备全部这些的构成,但也可以省略一部分。
需要说明的是,接收部PROD_C5可以接收未被编码的运动图像,也可以接收以与记录用的编码方式不同的传输用的编码方式编码后的编码数据。在后者的情况下,使对以传输用的编码方式编码后的编码数据进行解码的传输用解码部(未图示)介于接收部PROD_C5与编码部PROD_C1之间为好。
作为这种记录装置PROD_C,例如可举出:DVD记录器、BD记录器、HDD(Hard DiskDrive)记录器等(在该情况下,输入端子PROD_C4或接收部PROD_C5为运动图像的主要的供给源)。此外,便携式摄像机(在该情况下,摄像机PROD_C3为运动图像的主要的供给源)、个人计算机(在该情况下,接收部PROD_C5或图像处理部C6为运动图像的主要的供给源)、智能手机(在该情况下,摄像机PROD_C3或接收部PROD_C5为运动图像的主要的供给源)等也是这种记录装置PROD_C的一个示例。
图3的(b)是表示搭载有上述的运动图像解码装置31的再现装置PROD_D的构成的框图。如图3的(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_D2所输出的运动图像的供给目的地,再现装置PROD_D也可以进一步具备:显示运动图像的显示器PROD_D3、用于将运动图像输出至外部的输出端子PROD_D4以及发送运动图像的发送部PROD_D5。在图3的(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(Random AccessMemory:随机存取存储器)以及储存上述程序和各种数据的存储器等存储装置(记录介质)等。然后,本发明的实施方案的目的在于通过以下方式也能达到:将以计算机可读取的方式记录实现前述功能的软件即上述各装置的控制程序的程序代码(执行形式程序、中间代码程序、源程序)的记录介质供给至上述各装置,该计算机(或CPU、MPU)读出记录于记录介质的程序代码并执行。
作为上述记录介质,例如能使用:磁带、盒式磁带等带类;包括软盘(注册商标)/硬盘等磁盘、CD-ROM(Compact Disc Read-Only Memory:光盘只读存储器)/MO盘(Magneto-Optical disc:磁光盘)/MD(Mini Disc:迷你磁光盘)/DVD(Digital Versatile Disc:数字通用光盘,注册商标)/CD-R(CD Recordable:光盘刻录片)/蓝光光盘(Blu-ray Disc:注册商标)等光盘的盘类;IC卡(包括存储卡)/光卡等卡类;掩模ROM/EPROM(ErasableProgrammable Read-Only Memory:可擦可编程只读存储器)/EEPROM(ElectricallyErasableandProgrammableRead-OnlyMemory:电可擦可编程只读存储器)/闪存ROM等半导体存储器类;或者PLD(Programmable logic device:可编程逻辑器件)、FPGA(FieldProgrammable Gate Array:现场可编程门阵列)等逻辑电路类等。
此外,也可以将上述各装置构成为能与通信网络连接,并经由通信网络供给上述程序代码。该通信网络能传输程序代码即可,不被特别限定。例如,可利用互联网、内联网(intranet)、外联网(extranet)、LAN(Local Area Network:局域网)、ISDN(IntegratedServices Digital Network:综合业务数字网)、VAN(Value-Added Network:增值网络)、CATV(Community Antenna television/Cable Television:共用天线电视/有线电视)通信网、虚拟专用网(Virtual Private Network)、电话线路网、移动通信网、卫星通信网等。此外,构成该通信网络的传输介质也是为能传输程序代码的介质即可,不限定于特定的构成或种类。例如,无论在IEEE(Institute of Electrical and Electronic Engineers:电气和电子工程师协会)1394、USB、电力线输送、有线TV线路、电话线、ADSL(AsymmetricDigital Subscriber Line:非对称数字用户线路)线路等有线中,还是在如IrDA(InfraredData Association:红外线数据协会)、遥控器那样的红外线、BlueTooth(注册商标)、IEEE802.11无线、HDR(High Data Rate:高数据速率)、NFC(Near Field Communication:近场通讯)、DLNA(Digital Living Network Alliance:数字生活网络联盟,注册商标)、便携电话网、卫星线路、地面数字广播网等无线中都可利用。需要说明的是,本发明的实施方式即使以通过电子传输来将上述程序代码具体化的嵌入载波的计算机数据信号的形态也能够实现。
本发明的实施方式并不限定于上述的实施方式,能在权利要求所示的范围内进行各种变更。即,将在权利要求所示的范围内经过适当变更的技术方案组合而得到的实施方式也包括在本发明的技术范围内。
工业上的可利用性
本发明的实施方式能优选地应用于对将图像数据编码而得到的编码数据进行解码的运动图像解码装置,以及生成将图像数据编码而得到的编码数据的运动图像编码装置。此外,能优选地应用于由运动图像编码装置生成并被运动图像解码装置参照的编码数据的数据结构。
(关联申请的相互参照)
本申请对2018年12月12日提出申请的日本专利申请:日本特愿2018-232640以及2019年1月7日提出申请的日本专利申请:日本特愿2019-000704主张优先权的利益,并通过对其进行参照而将其全部内容包括到本说明书中。
附图标记说明
31图像解码装置
301熵解码部
302参数解码部
3020报头解码部
303帧间预测参数解码部
304帧内预测参数解码部
308预测图像生成部
309帧间预测图像生成部
310帧内预测图像生成部
311逆量化/逆变换部
312加法部
11图像编码装置
101预测图像生成部
102减法部
103变换/量化部
104熵编码部
105逆量化/逆变换部
107环路滤波器
110编码参数确定部
111参数编码部
112帧间预测参数编码部
113帧内预测参数编码部
1110报头编码部
1111CT信息编码部
1112CU编码部(预测模式编码部)
1114 TU编码部
30954 BIO部
309541L0、L1预测图像生成部
309542梯度图像生成部
309543相关参数计算部
309544运动补偿修正值推导部
309545双向预测图像生成部

Claims (5)

1.一种预测图像生成装置,使用两个预测图像生成预测图像,所述预测图像生成装置的特征在于,具备:
预测图像生成部,所述预测图像生成部生成第一预测图像和第二预测图像;
梯度图像生成部,所述梯度图像生成部在双向预测梯度变化预测处理中,
使用水平方向的所述第一预测图像的差分值和第一移位值生成第一梯度图像,使用垂直方向的所述第一预测图像的差分值和所述第一移位值生成第二梯度图像,使用水平方向的所述第二预测图像的差分值和所述第一移位值生成第三梯度图像,以及使用垂直方向的所述第二预测图像的差分值和所述第一移位值生成第四梯度图像;
运动补偿修正值推导部,使用所述第一预测图像、所述第二预测图像、所述第一梯度图像、所述第二梯度图像、所述第三梯度图像、所述第四梯度图像、第二移位值以及第三移位值推导出运动信息,以及使用所述运动信息、所述第一梯度图像、所述第二梯度图像、所述第三梯度图像以及所述第四梯度图像推导出运动补偿修正值;以及
预测图像生成部,所述预测图像生成部使用所述第一预测图像、所述第二预测图像以及所述运动补偿修正值生成所述预测图像,
所述第一移位值为6,所述第二移位值为4,所述第三移位值为1。
2.根据权利要求1所述的预测图像生成装置,其特征在于,
进一步使用第一阈值推导所述运动信息,所述第一阈值为16。
3.一种运动图像解码装置,其特征在于,
具备权利要求1所述的预测图像生成装置,
通过对所述预测图像加上或减去残差图像来复原编码对象图像。
4.一种运动图像编码装置,其特征在于,
具备权利要求1所述的预测图像生成装置,
对所述预测图像与编码对象图像的残差进行编码。
5.一种预测图像生成方法,使用两个预测图像生成预测图像,所述预测图像生成方法的特征在于,至少包括以下步骤:
生成第一预测图像和第二预测图像;
在双向预测梯度变化预测处理中,
使用水平方向的所述第一预测图像的差分值和第一移位值生成第一梯度图像,使用垂直方向的所述第一预测图像的差分值和所述第一移位值生成第二梯度图像,使用水平方向的所述第二预测图像的差分值和所述第一移位值生成第三梯度图像,以及使用垂直方向的所述第二预测图像的差分值和所述第一移位值生成第四梯度图像;
使用所述第一预测图像、所述第二预测图像、所述第一梯度图像、所述第二梯度图像、所述第三梯度图像、所述第四梯度图像、第二移位值以及第三移位值推导出运动信息,以及使用所述运动信息、所述第一梯度图像、所述第二梯度图像、所述第三梯度图像以及所述第四梯度图像推导出运动补偿修正值;以及
使用所述第一预测图像、所述第二预测图像以及所述运动补偿修正值生成所述预测图像,
所述第一移位值为6,所述第二移位值为4,所述第三移位值为1。
CN201980080445.6A 2018-12-12 2019-12-11 预测图像生成装置、运动图像解码装置、运动图像编码装置以及预测图像生成方法 Pending CN113170190A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP2018232640A JP2020096279A (ja) 2018-12-12 2018-12-12 予測画像生成装置、動画像復号装置および動画像符号化装置
JP2018-232640 2018-12-12
JP2019000704A JP2020109919A (ja) 2019-01-07 2019-01-07 予測画像生成装置、動画像復号装置および動画像符号化装置
JP2019-000704 2019-01-07
PCT/JP2019/048520 WO2020122130A1 (ja) 2018-12-12 2019-12-11 予測画像生成装置、動画像復号装置、動画像符号化装置および予測画像生成方法

Publications (1)

Publication Number Publication Date
CN113170190A true CN113170190A (zh) 2021-07-23

Family

ID=71076463

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980080445.6A Pending CN113170190A (zh) 2018-12-12 2019-12-11 预测图像生成装置、运动图像解码装置、运动图像编码装置以及预测图像生成方法

Country Status (4)

Country Link
US (2) US11653016B2 (zh)
EP (1) EP3896973A4 (zh)
CN (1) CN113170190A (zh)
WO (1) WO2020122130A1 (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108496367A (zh) * 2015-11-11 2018-09-04 三星电子株式会社 用于对视频进行解码的方法和设备以及用于对视频进行编码的方法和设备
CN108541375A (zh) * 2016-02-03 2018-09-14 夏普株式会社 运动图像解码装置、运动图像编码装置、以及预测图像生成装置
WO2018173895A1 (ja) * 2017-03-21 2018-09-27 シャープ株式会社 予測画像生成装置、動画像復号装置、および動画像符号化装置
CN108605138A (zh) * 2016-02-01 2018-09-28 夏普株式会社 预测图像生成装置、运动图像解码装置、以及运动图像编码装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6741734B2 (ja) 2018-09-27 2020-08-19 シャープ株式会社 バッテリー駆動式掃除機
CN112970259A (zh) * 2018-11-05 2021-06-15 北京字节跳动网络技术有限公司 视频处理中具有细化的帧间预测

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108496367A (zh) * 2015-11-11 2018-09-04 三星电子株式会社 用于对视频进行解码的方法和设备以及用于对视频进行编码的方法和设备
CN108605138A (zh) * 2016-02-01 2018-09-28 夏普株式会社 预测图像生成装置、运动图像解码装置、以及运动图像编码装置
CN108541375A (zh) * 2016-02-03 2018-09-14 夏普株式会社 运动图像解码装置、运动图像编码装置、以及预测图像生成装置
WO2018173895A1 (ja) * 2017-03-21 2018-09-27 シャープ株式会社 予測画像生成装置、動画像復号装置、および動画像符号化装置

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
LI SONG; ZHENGYI LUO; CONG XIONG: "Improving Lossless Intra Coding of H.264/AVC by Pixel-Wise Spatial Interleave Prediction", IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY, vol. 21, no. 12, pages 1924 - 1928, XP011390667, DOI: 10.1109/TCSVT.2011.2154710 *
XIAOYU XIU, YUWEN HE, YAN YE: "CE9-related: Complexity reduction and bit-width control for bi-directional optical flow (BIO)", pages 1 - 13, Retrieved from the Internet <URL:http://phenix.int-evry.fr/mpeg/doc_end_user/documents/124_Macao/ wg11/m44280-J VET-L0256-v3-JVET-L0256-v2.zip JVET-L0256-r2.docx> *
沈燕飞;李锦涛;朱珍民;张勇东;: "高效视频编码", 计算机学报, vol. 36, no. 11, pages 2340 - 2352 *

Also Published As

Publication number Publication date
US20220103853A1 (en) 2022-03-31
EP3896973A4 (en) 2022-09-28
US11825111B2 (en) 2023-11-21
EP3896973A1 (en) 2021-10-20
WO2020122130A1 (ja) 2020-06-18
US11653016B2 (en) 2023-05-16
US20230093319A1 (en) 2023-03-23

Similar Documents

Publication Publication Date Title
US11184636B2 (en) Video encoding device and video decoding device
CN109792535B (zh) 预测图像生成装置、运动图像解码装置以及运动图像编码装置
US20200021837A1 (en) Video decoding apparatus and video coding apparatus
WO2020184487A1 (ja) 動画像復号装置
CN113228682A (zh) 预测图像生成装置、运动图像解码装置、运动图像编码装置以及预测图像生成方法
US20220345734A1 (en) Video decoding apparatus
CN114762348A (zh) 运动图像解码装置
JP7448349B2 (ja) 動画像復号装置
CN112740704A (zh) 图像解码装置以及图像编码装置
CN115297330A (zh) 预测图像生成装置、运动图像解码装置、以及运动图像编码装置
US20230319305A1 (en) Video decoding apparatus
CN112956206A (zh) 运动图像解码装置以及运动图像编码装置
JP2020096279A (ja) 予測画像生成装置、動画像復号装置および動画像符号化装置
JP2020088660A (ja) 動画像符号化装置、動画像復号装置
JP2020108012A (ja) 画像復号装置および画像符号化装置
US11044490B2 (en) Motion compensation filter apparatus, image decoding apparatus, and video coding apparatus
TW202139699A (zh) 動態圖像解碼裝置及動態圖像解碼方法
CN115362686A (zh) 运动图像解码装置、运动图像编码装置、运动图像解码方法以及运动图像编码方法
JP2020170901A (ja) 予測画像生成装置、動画像復号装置および動画像符号化装置
JP2020096329A (ja) 予測画像生成装置、動画像復号装置および動画像符号化装置
JP2020088577A (ja) 予測画像生成装置、動画像復号装置、および動画像符号化装置
JP7378968B2 (ja) 予測画像生成装置、動画像復号装置および動画像符号化装置
CN113170190A (zh) 预测图像生成装置、运动图像解码装置、运动图像编码装置以及预测图像生成方法
RU2799802C2 (ru) Устройство генерирования прогнозируемых изображений, устройство декодирования видеосигналов, устройство кодирования видеосигналов и способ генерирования прогнозируемых изображений
JP7465128B2 (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