LIC部、图像解码装置以及图像编码装置的制作方法

文档序号:27295116发布日期:2021-11-06 04:55阅读:261来源:国知局
lic部、图像解码装置以及图像编码装置
技术领域
:1.本发明的实施方式涉及预测图像生成装置、动态图像解码装置以及动态图像编码装置。
背景技术
::2.为了高效地传输或者记录动态图像,使用通过对动态图像进行编码来生成编码数据的动态图像编码装置以及通过对该编码数据进行解码来生成解码图像的动态图像解码装置。3.作为具体的动态图像编码方式,例如可列举出h.264/avc、hevc(high‑efficiencyvideocoding:高效视频编码)方式等。4.在这样的动态图像编码方式中,构成动态图像的图像(图片)通过分级结构管理,并按每个cu进行编码/解码,上述分级结构由通过分割图像而得到的瓦片组、通过分割瓦片组而得到的瓦片、通过分割瓦片而得到的编码树单元(ctu:codingtreeunit)、通过分割编码树单元而得到的编码单位(也有时被称为编码单元(codingunit:cu))以及通过分割编码单位而得到的转换单元(tu:transformunit)构成。5.另外,在这样的动态图像编码方式中,通常基于通过对输入图像进行编码/解码而得到的局部解码图像,生成预测图像,对从输入图像(原图像)减去该预测图像得到的预测误差(也有时被称为“差分图像”或者“残差图像”)进行编码。作为预测图像的生成方法,可列举出画面间预测(帧间预测)以及画面内预测(帧内预测)。6.另外,作为近年来的动态图像编码以及解码的技术,可列举出非专利文献1。现有技术文献非专利文献7.非专利文献1:“versatilevideocoding(draft4)”,jvet‑m1001,jointvideoexplorationteam(jvet)ofitu‑tsg16wp3andiso/iecjtc1/sc29/wg11,2019‑01‑0917:06:06非专利文献2:“ce10:lowpipelinelatencylic(test10.5.2)”,jvet‑m0087,jointvideoexplorationteam(jvet)ofitu‑tsg16wp3andiso/iecjtc1/sc29/wg11,2019‑01‑09技术实现要素:本发明所要解决的技术问题8.然而,在图像编码、图像解码处理中,在lic预测、cclm预测、运动矢量的缩放等中使用除法。在非专利文献1、2中,在上述处理中,使用加减乘法、移位运算以及参照表格,但存在该表格的存储器使用量大这样的课题。另外,在使用该表格将除法变为乘法而进行线性近似的情况下,乘法所需要的位宽变大,存在电路规模增大这样的课题。解决问题的方案9.本发明的一方式所涉及的lic部是通过lic预测来生成预测图像的lic部,其特征在于,具备:lic参数导出部,其使用对象块的相邻像素(第一相邻像素)、参照块的相邻像素(第二相邻像素)、表格来导出缩放因子scale和偏移offset(lic参数);和lic滤波器部,其使用参照块的图像和lic参数来生成预测图像,上述lic参数导出部使用第一相邻像素以及第二相邻像素来导出对象块的相邻像素的特征量a1(第一特征量)和参照块的相邻像素的特征量a2(第二特征量),使用第二特征量a2来导出上述表格的参照值invdiv,将第一特征量a1和上述表格参照值invdiv相乘的值通过第一移位值(expc,shifta)向右移位,从来导出缩放因子scale,上述lic参数导出部使用第一相邻像素、第二相邻像素以及缩放因子来导出偏移offset。发明效果10.根据本发明的一方式,在动态图像编码/解码处理中,能够抑制性能降低,并且抑制存储器带宽的增加。附图说明11.图1是表示本实施方式所涉及的图像传输系统的结构的概略图。图2是针对搭载了本实施方式所涉及的动态图像编码装置的发送装置以及搭载了动态图像解码装置的接收装置的结构而示出的图。(a)示出搭载了动态图像编码装置的发送装置,(b)示出搭载了动态图像解码装置的接收装置。图3是针对搭载了本实施方式所涉及的动态图像编码装置的记录装置以及搭载了动态图像解码装置的播放装置的结构而示出的图。(a)示出搭载了动态图像编码装置的记录装置,(b)示出搭载了动态图像解码装置的播放装置。图4是表示编码流的数据的分级结构的图。图5是表示ctu的分割例的图。图6是表示动态图像解码装置的结构的概略图。图7是表示帧间预测参数导出部的结构的概略图。图8是表示lic部的结构的概略图。图9是对lic预测中参照的对象像素和参照像素进行说明的图。图10是对本发明的lic预测的缩放因子的导出进行说明的图。图11是对本发明的lic预测的缩放因子的导出进行说明的其他图。图12是对本发明的除法表格进行说明的图。图13是表示本发明的lic参数导出部的数据流的图。图14是表示动态图像编码装置的结构的框图。图15是表示帧间预测参数导出部的结构的概略图。图16是表示帧间预测图像生成部的结构的概略图。图17是对动态图像解码装置的概略的动作进行说明的流程图。具体实施方式12.(第一实施方式)以下,参照附图对本发明的实施方式进行说明。13.图1是表示本实施方式所涉及的图像传输系统1的结构的概略图。14.图像传输系统1是传输对编码对象图像进行了编码的编码流,并对所传输的编码流进行解码且显示图像的系统。图像传输系统1包括动态图像编码装置(图像编码装置)11、网络21、动态图像解码装置(图像解码装置)31以及动态图像显示装置(图像显示装置)41而构成。15.在动态图像编码装置11输入有图像。16.网络21将动态图像编码装置11所生成的编码流te向动态图像解码装置31传输。网络21为因特网(internet)、广域网(wan:wideareanetwork)、局域网(lan:localareanetwork)或者它们的组合。网络21不一定局限于双向的通信网,也可以是地面数字广播、卫星广播等传输广播波的单向的通信网。另外,网络21也可以由dvd(digitalversatiledisc:注册商标)、bd(blue‑raydisc:注册商标)等记录了编码流te的存储介质来代替。17.动态图像解码装置31分别对网络21所传输的编码流te进行解码,并生成解码出的一个或多个解码图像。18.动态图像显示装置41对动态图像解码装置31所生成的一个或多个解码图像的全部或者一部分进行显示。动态图像显示装置41例如具备液晶显示器、有机el(electro‑luminescence:电致发光)显示器等显示设备。作为显示器的形式,可列举出固定式、移动式、hmd式等。另外,在动态图像解码装置31具有较高的处理能力的情况下,显示画质高的图像,在只具有更低的处理能力的情况下,对不需要较高的处理能力、显示能力的图像进行显示。19.<运算符>以下记载本说明书中使用的运算符。20.>>为右移位,<<为左移位,&为逐位and,|为逐位or,|=为or赋值运算符,||表示逻辑和。21.关于x?y:z,在x为真(0以外)的情况下、在y、x为伪(0)的情况下,是取z的3项运算符。22.clip3(a,b,c)是将c剪裁为a以上且b以下的值的函数,是在c<a的情况下返回a,在c>b的情况下返回b,在其他情况下返回c的函数(但是,a≤b)。23.clip1(x)是将x剪裁为0以上(1<<bitdepth)‑1以下的值的函数,且是由下式表示的函数。此处,bitdepth是表示亮度或者色差的像素位数的值。24.clip1(x)=clip3(0,(1<<bitdepth)‑1,x)abs(a)是返回a的绝对值的函数。25.int(a)是返回a的整数值的函数。26.floor(a)是返回a以下的最大的整数的函数。27.ceil(a)是返回a以上的最小的整数的函数。28.a/d表示a除以d(小数点以下舍去)。29.a^b表示a乘以b。30.sign(x)是在x为0时返回0,在x为正时返回1,在x为负时返回‑1的函数。31.<编码流te的结构>在本实施方式所涉及的动态图像编码装置11以及动态图像解码装置31的详细说明之前,对由动态图像编码装置11生成且由动态图像解码装置31解码的编码流te的数据结构进行说明。32.图4是表示编码流te的数据的分级结构的图。编码流te例示性地包括序列以及构成序列的多个图片。图4的(a)~(f)分别是表示规定序列seq的编码视频序列、规定图片pict的编码图片、规定瓦片组的编码瓦片组、规定瓦片的编码瓦片、编码瓦片所含的编码树单元、编码树单元所含的编码单元的图。33.(编码视频序列)在编码视频序列中,规定了动态图像解码装置31为了对处理对象的序列seq进行解码而参照的数据的集合。如图4的(a)所示,序列seq包括视频参数集(videoparameterset)、序列参数集sps(sequenceparameterset)、图片参数集pps(pictureparameterset)、图片pict以及附加扩展信息sei(supplementalenhancementinformation)。34.视频参数集vps在由多个层构成的动态图像中规定了多个动态图像所共用的编码参数的集合以及动态图像所含的多个层以及与各个层相关的编码参数的集合。35.在序列参数集sps中,规定了动态图像解码装置31为了对对象序列进行解码而参照的编码参数的集合。例如,规定图片的宽度、高度。此外,sps也可以存在多个。在该情况下,从pps选择多个sps的任一个。36.在图片参数集pps中,规定了动态图像解码装置31为了对对象序列内的各图片进行解码而参照的编码参数的集合。例如,包括图片的解码所使用的量化宽度的基准值(pic_init_qp_minus26)、表示加权预测的应用的标志(weighted_pred_flag)。此外,也可以存在多个pps。在该情况下,从对象序列内的各图片选择多个pps的任一个。37.(编码图片)在编码图片中,规定了动态图像解码装置31为了对处理对象的图片pict进行解码而参照的数据的集合。如图4的(b)所示,图片pict包括瓦片组。38.(编码瓦片组)在编码瓦片组中,规定了动态图像解码装置31为了对处理对象的瓦片组进行解码而参照的数据的集合。如图4的(c)所示,瓦片组包括瓦片组报头以及瓦片组数据。39.瓦片组报头包括动态图像解码装置31为了决定对象瓦片组的解码方法而参照的编码参数组。指定瓦片组类型的tile_group_type)是瓦片组报头所含的编码参数的一个示例。40.瓦片组类型可列举出:(1)在编码时仅使用帧内预测的i瓦片组、(2)在编码时使用单向预测或者帧内预测的p瓦片组、(3)在编码时使用单向预测、双向预测或者帧内预测的b瓦片组等。此外,帧间预测不限定于单预测、双预测,也可以使用更多的参照图片来生成预测图像。以下,在称为p、b瓦片组的情况下,是指包括能够使用帧间预测的块的瓦片组。41.此外,瓦片组报头也可以包括向图片参数集pps的参照(pic_parameter_set_id)。瓦片组数据规定有动态图像解码装置31所参照的数据的集合(瓦片、区段)。42.(编码瓦片)编码瓦片规定有动态图像解码装置31所参照的数据的集合。如图4的(d)所示,瓦片包括ctu。ctu是构成瓦片组的固定尺寸(例如64x64)的块,也有时称为最大编码单位(lcu:largestcodingunit)。43.(编码树单元)图4的(e)规定有动态图像解码装置31为了对处理对象的ctu进行解码而参照的数据的集合。ctu通过递归型四叉树分割(qt(quadtree)分割)、两叉树分割(bt(binarytree)分割)或者三叉树分割(tt(ternarytree)分割)被分割为编码处理的基本单位即编码单元cu。将bt分割和tt分割统称为多树分割(mt(multitree)分割)。将通过递归型四叉树分割得到的木结构的节点称为编码节点(codingnode)。四叉树、两叉树以及三叉树的中间节点为编码节点,ctu自身也被规定为最上位的编码节点。44.图5是表示ctu的分割例的图。cu为编码节点的末端节点,不被进行更进一步的分割。cu为编码处理的基本单位(a)。在四叉树分割的情况下,编码节点被分割为四个编码节点(b)。为垂直方向的两叉树分割(c)、水平方向的两叉树分割(d)、垂直方向的三叉树分割(e)、水平方向的三叉树分割(f)。45.另外,在ctu的尺寸为64x64像素的情况下,cu的尺寸可取64x64像素、64x32像素、32x64像素、32x32像素、64x16像素、16x64像素、32x16像素、16x32像素、16x16像素、64x8像素、8x64像素、32x8像素、8x32像素、16x8像素、8x16像素、8x8像素、64x4像素、4x64像素、32x4像素、4x32像素、16x4像素、4x16像素、8x4像素、4x8像素以及4x4像素的任一种。46.(编码单元)如图4的(f)所示,规定了动态图像解码装置31为了对处理对象的编码单元进行解码而参照的数据的集合。具体而言,cu由cu报头cuh、预测参数、转换参数、量化转换系数等构成。在cu报头中规定预测模式等。47.预测处理存在以cu单位进行的情况、以将cu进一步分割而成的子cu单位进行的情况。在cu与子cu的尺寸相等的情况下,cu中的子cu为一个。在cu大于子cu的尺寸的情况下,cu被分割为子cu。例如在cu为8x8、子cu为4x4的情况下,cu被分割为由水平2分割、垂直2分割构成的四个子cu。48.预测的种类(预测模式)存在帧内预测和帧间预测这两个。帧内预测是指相同图片内的预测,帧间预测是指在相互不同的图片间(例如显示时刻间、层图像间)进行的预测处理。49.转换/量化处理以cu单位进行,但量化转换系数也可以以4x4等的子块单位进行熵编码。50.(预测参数)预测图像通过附随于块的预测参数来导出。预测参数存在帧内预测和帧间预测的预测参数。51.以下,对帧间预测的预测参数进行说明。帧间预测参数由预测列表利用标志predflagl0、predflagl1、参照图片索引refidxl0、refidxl1、运动矢量mvl0、mvl1、lic利用标志licflag构成。predflagl0、predflagl1分别是表示是否使用被称为l0列表、l1列表的参照图片列表的标志,在值为1的情况下使用所对应的参照图片列表。另外,licflag是表示是否进行后述的lic处理的标志,在值为1的情况下,进行lic处理。此外,在成为对象的块没有设定有licflag的情况下,视为该licflag的值为0。此外,本说明书中记载为“表示是否为xx的标志”的情况下,成为使标志为0以外(例如1)为xx的情况,且使0不为xx的情况,在逻辑否定、逻辑积等中将1视为真,将0视为伪(以下相同)。其中,在实际的装置、方法中,也能够使用其他值来作为真值、伪值。52.用于导出帧间预测参数的语法要素例如存在仿射标志affine_flag、合并标志merge_flag、合并索引merge_idx、帧间预测识别符inter_pred_idc、参照图片索引refidxlx、预测矢量索引mvp_lx_idx、差分矢量mvdlx、运动矢量精度模式amvr_mode。53.(参照图片列表)参照图片列表是由存储于参照图片存储器306的参照图片构成的列表。54.(合并预测和amvp)预测参数的解码(编码)方法存在合并预测(merge)模式和amvp(adavancedmotionvectorprediction、适应运动矢量预测)模式,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等与合并预测模式相关的语法,运动矢量等不包含于编码数据。55.inter_pred_idc是表示参照图片的种类以及数量的值,且采取pred_l0、pred_l1、pred_bi的任一个值。pred_l0、pred_l1分别表示使用由l0列表、l1列表管理的一张参照图片的单预测。pred_bi表示使用由l0列表和l1列表管理的两张参照图片的双预测bipred。56.merge_idx是表示将从处理结束的块导出的预测参数候选(合并候选)中的哪一个预测参数用作对象块的预测参数的索引。57.(运动矢量)mvlx表示不同的两个图片上的块间的移位量。mvlx作为mvplx、mvdlx而编码。58.(帧间预测识别符inter_pred_idc和预测列表利用标志predflaglx)inter_pred_idc和predflagl0、predflagl1的关系如以下那样,能够相互转换。59.inter_pred_idc=(predflagl1<<1)+predflagl0predflagl0=inter_pred_idc&1predflagl1=inter_pred_idc>>1此外,帧间预测参数也可以使用预测列表利用标志,也可以使用帧间预测识别符。另外,也可以将使用了预测列表利用标志的判定置换为使用了帧间预测识别符的判定。相反,也可以将使用了帧间预测识别符的判定置换为使用了预测列表利用标志的判定。60.(动态图像解码装置的结构)对本实施方式所涉及的动态图像解码装置31(图6)的结构进行说明。61.动态图像解码装置31包括熵解码部301、参数解码部(预测图像解码装置)302、环路滤波器305、参照图片存储器306、预测参数存储器307、预测图像生成部(预测图像生成装置)308、逆量化/逆转换部311以及加法部312、预测参数导出部320而构成。此外,也存在与后述的动态图像编码装置11匹配,在动态图像解码装置31不包括环路滤波器305的结构。62.参数解码部302还具备报头解码部3020、ct信息解码部3021以及cu解码部3022(预测模式解码部),cu解码部3022还具备tu解码部3024。也可以将它们统称为解码模块。报头解码部3020从编码数据对sps、pps等参数集信息、瓦片组报头(瓦片组信息)进行解码。ct信息解码部3021从编码数据对ct进行解码。cu解码部3022从编码数据对cu进行解码。tu解码部3024在tu包括预测误差的情况下,从编码数据对qp更新信息(量化校正值)和量化预测误差(residual_coding)进行解码。63.tu解码部3024在除跳过模式以外(skip_mode==0)的情况下,从编码数据对qp更新信息(量化校正值)和量化预测误差(residual_coding)进行解码。更具体而言,tu解码部3024在skip_mode==0的情况下,从编码数据对表示对象块是否包括量化预测误差的标志cu_cbp进行解码,在cu_cbp为1的情况下对量化预测误差进行解码。在cu_cbp不存在于编码数据的情况下导出为0。64.另外,预测参数导出部320包括未图示的帧间预测参数导出部303以及帧内预测参数导出部304而构成。预测图像生成部308包括帧间预测图像生成部309以及帧内预测图像生成部310而构成。65.另外,以下记载使用ctu、cu作为处理的单位的示例,但不局限于该示例,也可以以子cu单位进行处理。或者也可以将ctu、cu换称为块,将子cu换称为子块,成为块或子块单位的处理。66.熵解码部301针对从外部输入的编码流te进行熵解码,并对各个代码(语法要素)进行解码。熵编码存在使用根据语法要素的种类、周围的状况而适应地选择的上下文(概率模型)来对语法要素进行可变长编码的方式、使用预先决定的表或计算式对语法要素进行可变长编码的方式。前者的cabac(contextadaptivebinaryarithmeticcoding)将上下文的cabac状态(显性符号的种类(0or1)和指定概率的概率状态索引pstateidx)储存于存储器。熵解码部301在区段(瓦片、ctu行)的前端使所有cabac状态初始化。熵解码部301将语法要素转换为二进制串(binstring),并对binstring的各位进行解码。在使用上下文的情况下,针对语法要素的各位导出上下文索引ctxinc,使用上下文对位进行了解码之后,对上下文的cabac状态进行更新。通过等概率(ep、bypass)对不使用上下文的位进行解码,省略ctxinc导出、cabac状态的更新。67.参数解码部302通过熵解码部301对代码进行解码,并向预测参数导出部320输出。预测参数导出部320从解码出的代码导出预测参数例如predmode、merge_flag、merge_idx、inter_pred_idc、refidxlx、mvp_lx_idx、mvdlx、amvr_mode、licflag等。对什么代码进行解码的控制基于参数解码部302的指示来进行。68.(基本流程)图17是对动态图像解码装置31的概略的动作进行说明的流程图。69.(s1100:参数集信息解码)报头解码部3020从编码数据对sps、pps等参数集信息进行解码。70.(s1200:瓦片组信息解码)报头解码部3020从编码数据对瓦片组报头(瓦片组信息)进行解码。71.以下,动态图像解码装置31针对对象图片所含的各ctu,通过反复s1300~s5000的处理来导出各ctu的解码图像。72.(s1300:ctu信息解码)ct信息解码部3021从编码数据对ctu进行解码。73.(s1400:ct信息解码)ct信息解码部3021从编码数据对ct进行解码。74.(s1500:cu解码)cu解码部3022实施s1510、s1520,从编码数据对cu进行解码。75.(s1510:cu信息解码)cu解码部3022从编码数据对cu信息、预测信息、tu分割标志split_transform_flag、cu残差标志cbf_cb、cbf_cr、cbf_luma等进行解码。76.(s1520:tu信息解码)tu解码部3024在tu包括预测误差的情况下,从编码数据对qp更新信息(量化校正值)和量化预测误差(residual_coding)进行解码。此外,qp更新信息是距量化参数qp的预测值即量化参数预测值qppred的差值。77.(s2000:预测图像生成)预测图像生成部308针对对象cu所含的各块,基于预测信息来生成预测图像。78.(s3000:逆量化/逆转换)逆量化/逆转换部311针对对象cu所含的各tu,执行逆量化/逆转换处理。79.(s4000:解码图像生成)加法器312通过将由预测图像生成部308供给的预测图像和由逆量化/逆转换部311供给的预测误差相加,生成对象cu的解码图像。80.(s5000:环路滤波器)环路滤波器305在解码图像应用去区块滤波器、sao、alf等环路滤波器,生成解码图像。81.(帧间预测参数导出部的结构)帧间预测参数导出部303基于从熵解码部301或编码参数决定部110输入的代码,参照存储于预测参数存储器307(108)的预测参数来导出帧间预测参数。另外,帧间预测参数导出部303将帧间预测参数向预测图像生成部308(101)输出,并存储于预测参数存储器307(108)。帧间预测参数导出部303及其内部的要素即amvp预测参数导出部3032、合并预测参数导出部3036、仿射预测部30372、mmvd预测部30373是在动态图像编码装置、动态图像解码装置中共用的机构,因此,也可以将它们统称为运动矢量导出部(运动矢量导出装置)。82.在merge_flag为1,即表示合并预测模式的情况下,对merge_idx进行解码,并向合并预测参数导出部3036输出。83.在merge_flag为0,即表示amvp模式的情况下,作为amvp参数,例如对inter_pred_idc、refidxlx、mvp_lx_idx、mvdlx、amvr_mode进行解码。amvp参数导出部3032从mvp_lx_idx导出mvplx。84.(mv加法部)将mv加法部3038中导出的mvplx和mvdlx相加,导出mvlx。85.(合并预测)图7的(b)是表示本实施方式所涉及的合并预测参数导出部3036的结构的概略图。合并预测参数导出部3036具备合并候选导出部30361、合并候选选择部30362。合并候选导出部30361包括空间合并候选导出部30364、时间合并候选导出部30365。储存于列表的合并候选也可以表示合并候选的标签(例如空间合并候选的a1、b1、b0、a0、b2、时间合并候选的col)。也可以是,根据基于merge_idx而选择出的合并候选的标签,参照与标签对应的帧间预测参数(运动矢量mvlxn)。此外,合并候选包括predflaglx、mvlx、refidxlx而构成。86.合并候选导出部30361直接使用解码结束的相邻块的运动矢量和参照图片索引来导出合并候选。87.(amvp)图7的(c)是表示本实施方式所涉及的amvp参数导出部3032的结构的概略图。amvp参数导出部3032具备矢量候选导出部3033和矢量候选选择部3034。矢量候选导出部3033基于refidxlx从预测参数存储器307所存储的解码完毕的相邻块的mvlx导出预测矢量候选,并储存于预测矢量候选列表mvplistlx[]。[0088]矢量候选选择部3034将mvplistlx[]的预测矢量候选中的mvp_lx_idx所示的运动矢量mvplistlx[mvp_lx_idx]选择为mvplx。矢量候选选择部3034将选择出的mvplx向mv加法部3038输出。[0089](mv加法部)mv加法部3038将从amvp参数导出部3032输入的mvplx和解码出的差分矢量mvdlx相加来计算mvlx。加法部3038将计算出的mvlx向预测图像生成部308以及预测参数存储器307输出。[0090]mvlx[0]=mvplx[0]+mvdlx[0]mvlx[1]=mvplx[1]+mvdlx[1]amvr_mode是对amvp模式中导出的运动矢量的精度进行切换的语法,例如在amvr_mode=0、1、2时,切换1/4像素、1像素、4像素精度。[0091]也可以是,在使运动矢量的精度成为1/16精度的情况下,为了将1/4、1、4像素精度的运动矢量差分变更为1/16像素精度的运动矢量差分,如下述那样,使用从amvr_mode导出的mvshift(=1<<amvr_mode)而逆量化。[0092]mvdlx[0]=mvdlx[0]<<(mvshift+2)mvdlx[1]=mvdlx[1]<<(mvshift+2)(运动矢量缩放)对运动矢量的缩放的导出方法进行说明。若运动矢量mv(参照运动矢量)、包括具有mv的块的图片picmv、mv的参照图片picmvref、缩放后的运动矢量smv、包括具有smv的块的图片curpic、smv成为所参照的参照图片curpicref,则smv的导出函数mvscale(mv、picmv、picmvref、curpic、curpicref)由下式导出。[0093]smv=mvscale(mv,picmv,picmvref,curpic,curpicref)=clip3(‑r1,r1‑1,sign(distscalefactor*mv)*((abs(distscalefactor*mv)+round1‑1)>>shift1))distscalefactor=clip3(‑r2,r2‑1,(tb*tx+round2)>>shift2)tx=(kn_mvscale+abs(td)>>1)/tdtd=diffpicordercnt(picmv,picmvref)tb=diffpicordercnt(curpic,curpicref)此处,round1、round2、shift1、shift2是用于使用倒数进行除法的轮次值以及移位值,例如,round1=1<<(shift1‑1),round2=1<<(shift2‑1),shift1=8,shift2=6等。diffpicordercnt(pic1,pic2)是返回pic1和pic2的时间信息(例如poc)之差的函数。为了以有限的精度进行处理,对r1、r2的值域进行限制,例如,r1=32768,r2=4096等。kn_mvscale为1<<(shift1+shift2),例如为16384。2^(shift1+shift2)=2^(8+6)=2^14=16384另外,缩放函数mvscale(mv,picmv,picmvref,curpic,curpicref)也可以为下式。[0094]mvscale(mv,picmv,picmvref,curpic,curpicref)=mv*diffpicordercnt(curpic,curpicref)/diffpicordercnt(picmv,picmvref)即,也可以根据curpic和curpicref的时间信息之差与picmv和picmvref的时间信息之差之比来缩放mv。[0095](tx的导出方法的变形例)在变形例中对导出以与上述不同的方法进行缩放的tx的方法进行说明。更具体而言,在使用上述两个poc差分td、tb而缩放运动矢量mv来导出运动矢量smv的情况下,对用于缩放的tx的导出方法进行说明。[0096]td=diffpicordercnt(picmv,picmvref)(mvscale‑1)tb=diffpicordercnt(curpic,curpicref)smv=clip3(‑r1,r1‑1,sign(distscalefactor*mv)*((abs(distscalefactor*mv)+round1‑1)>>shift1))distscalefactor=clip3(‑r2,r2‑1,(tb*tx+round2)>>shift2)tx=(kn_mvscale+abs(td)>>1)/td(mv缩放值导出方法的变形例1)也可以替代式(mvscale‑1)的td的除法,通过表格参照来导出tx。更具体而言,也可以使用mvdivtablefull[k](0≤k≤128)通过下式来导出tx。[0097]tx=td>0?mvdivtablefull[abs(td)]:‑mvdivtablefull[abs(td)]mvdivtablefull[k]=(k==0)?0:(kn_mvscale+abs(k)>>1)/k(k=0..128)mvdivtable[]是用于通过表格参照而执行除法的表格(倒数、倒数表格),表格所保持的值为导出值(与除数的倒数对应的值)。即,除数与导出值相对应而保持于表格。[0098](mv缩放值导出方法的变形例2)在本处理例中,利用除法表格的周期性,仅储存除法表格的一部分要素,从一部分要素导出不储存的要素,由此,减少存储器。此处,除法表格是储存导出值val的表格,上述导出值val是通过将2的幂的规定常数(例如,kn_mvscale)除以除数td的绝对值tdabs而得到的。[0099]val=(kn_mvscale+tdabs>>1)/tdabsmv缩放部3030使用除法表格mvdivtablefull的一部分要素(表格要素)来导出tx。mvdivtablefull是由2^fn个要素构成的虚拟的表格。而且,mv缩放部3030通过以下的处理从储存有mvdivtablefull的一部分区间的表格mvdivtable(要素数2^n)导出除一部分区间以外的2^fn‑2^n个要素的值(倒数值)。在将倒数表格用于参照的索引作为idx的情况下,对索引idx每k个进行了采样之后,使倒数表格的值成为1/k倍,从来导出所希望的val。[0100]val=mvdivtable[idx/k]/k=mvdivtable[idx>>sc]>>sck=2^(sc)具体而言,参照图12进行说明。图12是对从储存表格的倒数值导出除储存表格以外的倒数值的导出例进行说明的图。在该示例中,n=4。首先,如图12的(a)所示,mv缩放部3030在mvdivtable储存值的区间gr5[16..31](即[2^n..(2^(n+1)‑1)])中,直接使用mvdivtable的值来作为val。此处,k=1。[0101]在比一部分区间靠后的接下来的区间gr6[32..63](即[2^(n+1)..(2^(n+2)‑1)])中,导出使mvdivtable的值成为1/2倍的值,作为val(k=2)。另外,gr6具有gr5的2倍的宽度,因此,每两次反复导出相同的值。并且,在接下来的区间gr7[64‑127](即[2^(n+2)..(2^(n+3)‑1)])中,导出使mvdivtable的值成为1/4倍的值,作为val(k=4)。另外,gr7具有gr5的4倍的宽度,因此,每四次反复导出相同的值。以下,反复相同的处理。[0102]另一方面,mv缩放部3030在比一部分区间靠前的区间gr4[8..15](即[2^(n‑1)..(2^n‑1)])中,导出使mvdivtable[]的值成为2倍的值,来作为val(k=1/2)。另外,gr4具有gr5的1/2倍的宽度,因此,将表格的要素间拨为2:1来导出。并且,在之前的区间gr3[4..7](即[2^(n‑2)..(2^(n‑1)‑1)])中,导出使mvdivtable[]的值为4倍的值,作为val(k=1/4)。另外,gr3具有gr5的1/4倍的宽度,因此,将表格的要素间拨为4:1来导出。同样,在区间gr2[2..3](即[2^(n‑3)..(2^(n‑2)‑1)])中,将使mvdivtable[]的值成为8倍的值间拨为8:1来导出,作为val(k=1/8)。同样,在区间gr1[1](即[2^(n‑4)..(2^(n‑3)‑1)])中,将使mvdivtable[]的值为16倍的值间拨为16:1来导出,作为val(k=1/16)。[0103]图12的(b)是总结了这些关系的图。在图12的(b)中,将对象图片与参照图片的poc的差分即td的绝对值tdabs视为除数a2。idx是mvdivtable[]的索引。[0104]mv缩放部3030从tdabs导出用于参照除法表格mvdivtable的索引idx和值v,并利用基于sc的移位使v标准化,由此,导出相当于tdabs的val。[0105]sc=floor(log2(tdabs))normdiff=(tdabs<<n)>>scidx=normdiff&((1<<n)‑1)msb=1<<(prec‑1)sc=sc+(normdiff!=0)v=(mvdivtable[idx]|msb)val=v<<(14‑(prec‑1)‑sc)示出在除法表格mvdivtable的要素数(2^n)为16(n=4),除法表格的精度prec=4的情况下,mvdivtable[1<<n]的1例。[0106]mvdivtable[1<<n]={0,7,6,5,5,4,4,3,3,2,2,1,1,1,1,0}mv缩放部3030从tdabs的对数值导出缩放移位值sc。另外,通过从将tdabs向左移位了n位而得到的值,向右移位sc位,从来导出normdiff。另外,也可以从normdiff减去规定的固有值(在n=4的情况下16,2^n)来导出idx。[0107]idx=normdiff‑2^n这与提取normdiff的下位(n‑1)位的处理(normdiff&((1<<n)‑1))等效。值v通过在mvdivtable[idx]加上2^(prec‑1)来导出。[0108]更具体而言,mv缩放部303也可以通过以下的处理来导出。mv缩放部303从tdabs的2的对数值导出sc,通过将tdabs以n向左移位,并以sc向右移位,从来导出normdiff。从normdiff的下位的位导出用于除法表格的参照的索引idx。进一步加上固定值msb来导出值v。通过利用基于sc的移位使v标准化(v<<(11‑sc)),导出相当于val的值txabs。由于所导出的txabs为tx的绝对值,所以附加td的代码来导出tx。此外,缩放移位值sc基本上是tdabs的2的对数,但在以下的处理中,使用floor(),因此,通过normdiff!=0来施加修正。[0109]sc=floorlog2(tdabs)normdiff=(tdabs<<n)>>scidx=normdiff&((1<<n)‑1))msb=1<<(prec‑1)sc=sc+(normdiff!=0)v=mvdivtable[idx]|msbtxabs=v<<(11‑sc)tx=((td<0)?‑txabs:txabs)此处floorlog2(x)也可以通过下式来导出。[0110]floorlog2(x)=floor(log2(x))=(x≤0)?‑1:31‑clz(x)其中,上述的clz函数的自变量x具有32bit的宽度。通过clz函数能够实现与floor(log2(x))等效的函数。[0111]在n=4、prec=4的情况下,使用下述倒数表格。[0112]mvdivtable[16]={0,7,6,5,5,4,4,3,3,2,2,1,1,1,1,0}变形例的mv缩放部303在n=5、prec=5的情况下,使用下述倒数表格。[0113]mvdivtable[32]={0,15,14,13,12,12,11,10,10,9,8,8,7,7,6,6,5,5,4,4,4,3,3,3,2,2,2,1,1,1,0,0}另外,在上述伪代码的txabs导出时,使用(v<<(10‑sc))。[0114]txabs=v<<(10‑sc)此外,txabs也可以使用(shift1+shift2)‑(prec‑1)换句话说14‑(prec‑1),并通过下式来导出。[0115]txabs=v<<(14‑(prec‑1)‑sc)在本变形例中,在通过poc的差值td的倒数对运动矢量进行缩放的情况下,根据通过由因从td的绝对值tdabs导出的移位值sc的右移位而减少了值的大小的值(tdabs<<n)>>sc导出的索引idx而参照除法表格mvdivtable(mvdivtable[idx]),由此,起到使用较少的表格尺寸的mvdivtable进行运动矢量的缩放的效果。[0116](相邻运动矢量的导出)合并预测部30374以及子块预测部30372也可以如以下那样导出相邻块的动作信息。[0117]在合并预测部30374以及子块预测部30372输入有对象图片的左上位置(xcb,ycb)、对象块的宽度bw和高度bh,并输出有相邻块(a0,a1,b0,b1,b2)的利用可能标志availableflaga0、availableflaga1、availableflagb0、availableflagb1以及availableflagb2、参照图片索引refidxlxa0、refidxlxa1、refidxlxb0、refidxlxb1以及refidxlxb2、预测列表利用标志predflaglxa0、predflaglxa1、predflaglxb0、predflaglxb1以及predflaglxb2、运动矢量mvlxa0、mvlxa1、mvlxb0、mvlxb1以及mvlxb2。[0118]合并预测部30374以及子块预测部30372按a1、b1、b0、a0、b2的顺序依次判定相邻块n的可利用性。[0119]在相邻块可利用的情况下,将availableflagn设定为1,对mvlxn、refidxlxn、predflaglxn设定mvlx[xnbn][ynbn]、refidxlx[xnbn][ynbn]、predflaglx[xnbn][ynbn]。在不是这样的情况下,将availableflagn设定为0,对mvlxn、refidxlxn、predflaglxn设定0。[0120](帧间预测图像生成部309)在predmode表示帧间预测模式的情况下,帧间预测图像生成部309使用读出为从帧间预测参数导出部303输入的帧间预测参数的参照图片并通过帧间预测,生成块或子块的预测图像。[0121]图16是表示本实施方式所涉及的预测图像生成部308所含的帧间预测图像生成部309的结构的概略图。帧间预测图像生成部309包括动作补偿部(预测图像生成装置)3091、合成部3095而构成。[0122](动作补偿)动作补偿部3091(插补图像生成部3091)基于从帧间预测参数导出部303输入的帧间预测参数(predflaglx,refidxlx,mvlx),从参照图片存储器306,读出处于以由refidxlx指定的参照图片refpiclx(refimg)的对象块的位置为起点而移位了mvlx的位置的块,由此,生成插补图像(动作补偿图像)。此处,在mvlx的精度不是整数精度的情况下,实施用于生成被称为动作补偿滤波器的小数位置的像素的滤波器,生成插补图像。[0123]动作补偿部3091首先通过下式导出与预测块内坐标(x,y)对应的整数位置(xint,yint)以及相位(xfrac,yfrac)。[0124]xint=xpb+(mvlx[0]>>(log2(mvprec)))+xxfrac=mvlx[0]&(mvprec‑1)yint=ypb+(mvlx[1]>>(log2(mvprec)))+yyfrac=mvlx[1]&(mvprec‑1)此处,(xpb,ypb)是bw*bh尺寸的块的左上坐标、x=0…bw‑1,y=0…bh‑1,mvprec表示mvlx的精度(1/mvprec像素精度)。例如mvprec=16。[0125]动作补偿部3091通过使用插补滤波器对参照图片refimg进行水平插补处理,暂时导出图像temp[][]。以下的σ是与k=0..ntap‑1的k相关的和,shift1是对值的范围进行调整的标准化参数、offset1=1<<(shift1‑1)。[0126]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)。[0127]pred[x][y]=(σmcfilter[yfrac][k]*temp[x][y+k‑ntap/2+1]+offset2)>>shift2此外,在双预测的情况下,将上述的pred[][]按每个l0列表、l1列表导出(称为predl0[][]和predl1[][]),从predl0[][]和predl1[][]生成pred[][]。[0128](合成部)合成部3095参照从动作补偿部3091供给的插补图像、从帧间预测参数导出部303供给的帧间预测参数以及从帧内预测图像生成部310供给的帧内预测图像,生成预测图像,并将所生成的预测图像向加法部312供给。[0129]合成部3095具备combinedintra/inter(组合帧内/帧间)合成部30951、triangle(三角)合成部30952、obmc部30953、bio部30954以及lic部30955。[0130](combinedintra/inter合成处理)combinedintra/inter合成部30951通过组合地使用amvp的单向预测图像、基于跳过模式、合并预测模式的预测图像以及帧内预测图像来生成预测图像。[0131](triangle合成处理)triangle合成部30952生成使用了triangle预测的预测图像。[0132](obmc处理)obmc部30953使用obmc(overlappedblockmotioncompensation:重叠块运动补偿)处理来生成预测图像。[0133](bio处理)bio部30954通过进行bio(bi‑directionalopticalflow;双预测角度变化)处理,生成预测图像。在bio处理中,参照predl0以及predl1和角度修正项来生成预测图像。[0134](lic处理)lic部30955在lic利用标志licflag的值为1的情况下,进行lic(localilluminationcompensation:局部照明补偿)处理,从而基于已经解码的相同的色成分的像素值来预测对象块的像素值。具体而言,为以解码后的相同的色成分的图像为基础,使用线性模型来生成对象块的预测图像的方式。图8是表示lic部30955的结构的一个示例的框图。lic部30955包括lic参数导出部(参数导出部)309552和lic滤波器部309553。[0135]以下,对lic参数导出部309552导出线性模型scale*x+offset的缩放因子scale以及偏移offset、lic滤波器部309553更新预测图像predlxl[x][y]、predlxcb[x][y]以及predlxcr[x][y]的工序进行说明。[0136]一般来说,lic部30955将对象块的左上位置(xcb,ycb)、宽度bw以及高度bh、亮度的1/16像素精度的运动矢量mvlx、色差的1/32像素精度的运动矢量mvclx、参照图片refpiclxl、refpiclxcb以及refpiclxcr、由动作补偿部3091生成的插补图像predlxl、predlxcb以及predlxcr作为输入值,导出作为输出值的更新后的预测图像predlxl、predlxcb以及predlxcr。[0137]lic参数导出部309552在导出对象块以及参照块的相邻像素的工序中,将(xcb,ycb)、bw以及bh、mvlx、refpiclx、色成分索引cidx作为输入值来导出输出值。该输出值是参照块的相邻像素值的和sumr、对象块的相邻像素值的和sumc、参照块的相邻像素值的平方和sumrr、对象块的相邻像素值与参照块的相邻像素值的积和sumrc以及相邻像素数的以2为底数的对数值cntshift。[0138]另外,lic参数导出部309552在导出用于对预测图像进行更新的线性模型的工序中,将上述sumr、sumc、sumrr、sumrc、cntshift、色成分索引cidx作为输入值来导出输出值。该输出值为scale以及偏移offset。[0139]另外,lic滤波器部309553通过下式对预测图像进行更新。此处,x取从0至bw‑1的值,y取从0至bh‑1的值。[0140]predlx[x][y]=clip1(((scale*predlx[x][y])>>shifts)+offset)(lic‑1)此处,也可以是shifts=5。[0141]对于亮度成分而言,针对上述,输入(xcb,ycb)、bw以及bh、mvlx、refpiclxl、cidx=0,输出scale、offset。[0142]对于色差成分而言,取代(xcb,ycb)、bw、bh而输入下述。[0143](xcbc,ycbc)=(xcb>>1,ycb>>1)bwc=bw>>1bhc=bh>>1另外,取代mvlx而输入mvclx。另外,取代refpiclxl,若为cb成分则输入refpiclxcb、cidx=1,若为cr成分则输入refpiclxcr、cidx=2,输出cb成分的scale、offset以及cr成分的scale、offset。[0144]接着,对lic参数导出部309552将(xcb,ycb)、bw以及bh、mvlx、refpiclx、cidx作为输入值来导出sumr、sumc、sumrr、sumrc以及contshift的工序进行说明。[0145]lic参数导出部309552导出以下内容。·对象块的整数精度的运动矢量intmv:intmv[0]=(cidx==0)?((mvlx[0]+(1<<3))>>4):((mvlx[0]+(1<<4))>>5)intmv[1]=(cidx==0)?((mvlx[1]+(1<<3))>>4):((mvlx[1]+(1<<4))>>5)·参照块位置(xint[x],yint[y]):xint[x]=clip3(0,pic_width_in_luma_samples‑1,xcb+intmv[0]+x)yint[y]=clip3(0,pic_height_in_luma_samples‑1,ycb+intmv[1]+y)此处,x取从‑1至bw‑1的值,y取从‑1至bh‑1的值。·像素位数bitdepth:bitdepth=(cidx==0)?bitdepthy:bitdepthc此处,bitdepthy为亮度成分的位深,bitdepthc为色差成分的位深,例如为10bit。·变量precshift、mindim以及numsteps:precshift=max(0,bitdepth‑12)mindim=min(bw,bh)numsteps=(mindim>8)?(mindim>>1):mindim·对象块位置xcby以及ycby:(xcby,ycby)=(cidx==0)?(xcb,ycb):(xcb<<1,ycb<<1)图9图示lic参数导出部309552所参照的对象块、参照块、相邻像素的关系。[0146]另外,lic参数导出部309552若能够利用包括(xcby‑1,ycby)的相邻块,则对左邻像素的可利用性availl设置1,若不是这样则对availl设置0。[0147]另外,lic参数导出部309552若能够利用包括(xcby,ycby‑1)的相邻块,则对上邻像素的可利用性availt设置1,若不是这样则对availt设置0。[0148]此处,若availl以及availt双方为false,则成为sumr=sumc=sumrr=sumrc=contshift=0。若不是这样,则lic参数导出部309552根据以下的过程,导出scale以及offset。[0149](步骤1)在availl为true的情况下,lic参数导出部309552在对象块的左邻像素c[x][y]设置(currpic[xcb+x][ycb+y]>>precshift)。此处,x取‑1,y取从0至bh‑1的值。另外,在availt为true的情况下,lic部30955在对象块的上邻像素c[x][y]设置(currpic[xcb+x][ycb+y]>>precshift)。此处,x取从0至bw‑1的值,y取‑1。currpic表示对象图片。[0150](步骤2)在availl为true的情况下,lic参数导出部309552在参照块的左邻像素r[x][y]设置(refpiclx[xint[x]][yint[y]]>>precshift)。此处,x取‑1,y取从0至bh‑1的值。另外,在availt为true的情况下,在参照块的上邻像素r[x][y]设置(refpiclx[xint[x]][yint[y]]>>precshift)。此处,x取从0至bw‑1的值,y取‑1。refpiclx表示参照图片。[0151]此外,如图9的(a)所示,在(步骤1)、(步骤2)中,将对象块、参照块的外侧的l字型的区域设定为相邻像素。除此以外,也可以如图9的(b)那样,将对象块以及参照块的左以及左下的2*bh个像素(全部或者一部分)设定为相邻像素。或者,也可以如图9的(c)那样,将对象块以及参照块的上以及右上的2*bw个像素(全部或者一部分)设定为相邻像素。以下,使用(步骤1)、(步骤2)中设定的相邻像素对处理进行说明。[0152](步骤3)lic参数导出部309552通过下式导出变量sl[k]以及st[k]。此处k取从0至numsteps‑1的值。sl[k]=(k*bh)>>log2(numsteps)st[k]=(k*bw)>>log2(numsteps)(步骤4)lic参数导出部309552通过下式导出变量sumr、sumc、sumrr以及sumrc。[0153][式1](步骤5)对lic参数导出部309552导出用于更新预测图像的线性模型所涉及的值的工序进行说明。cntshift=(availl&&availt)?(log2(numsteps)+1):log2(numsteps)在以下的工序中,lic参数导出部309552以上述sumr、sumc、sumrr、sumrc、contshift以及cidx作为输入值,导出对象块的相邻像素的特征量a1、参照块的相邻像素的特征量a2。·如以下那样设定除法表格licdivtable[k]。此处,k取从0至63的值。licdivtablefull[0]=0licdivtablefull[k]=((1<<15)+(k>>1))/k·变量precshift以及cropshift:precshift=max(0,bitdepth‑12)cropshift=max(0,bitdepth‑precshift+cntshift‑15)此处,lic参数导出部309552若cntshift的值为0s则导出cale=32、offset=0。若不是这样,则在以下的过程中导出a1、a2。sumrr=((sumrr+(sumrr>>7))>>(2*cropshift))<<cntshiftsumrc=((sumrc+(sumrr>>7))>>(2*cropshift))<<cntshiftsumrsumr=(sumr>>cropshift)*(sumr>>cropshift)sumrsumc=(sumr>>cropshift)*(sumc>>cropshift)a1=sumrc–sumrsumca2=sumrr–sumrsumr(步骤6)lic参数导出部309552使用上述的a1、a2在以下的过程中导出缩放因子scale。shifta1=max(0,ceil(log2(abs(a2)))‑18)shifta2=max(0,ceil(log2(abs(a2)))‑6)shifta=shifta2+10‑shifta1a1=a1>>shifta1a2=clip3(0,63,a2>>shifta2)lic参数导出部309552使用a1、a2导出缩放因子scale。scale=clip3(0,128,(a1*licdivtablefull[a2])>>shifta)(步骤7)lic参数导出部309552根据以下的过程来导出偏移offset。sumr=sumr<<precshiftsumc=sumc<<precshiftmaxb=(1<<(bitdepth‑1))‑1minb=‑1–maxbshifts=5offset=clip3(minb,maxb,(sumc‑((scale*sumr)>>shifts)+(1<<(cntshift‑1))>>cntshift)lic滤波器部309553使用scale、offset通过下式对预测图像进行更新。此处,x取从0至bw‑1的值,y取从0至bh‑1的值。predlx[x][y]=clip1(((scale*predlx[x][y])>>shifts)+offset)(scale、offset的导出方法的变形例)在变形例中通过与(步骤4)~(步骤5)不同的方法导出缩放因子scale以及偏移offset。[0154](lic参数导出部309552)(scale的导出方法)在scale、offset的导出时,lic参数导出部309552从参照块的相邻像素r[][]导出像素值成为最大(ref_max)的点(x1,y1)和成为最小(ref_min)的点(x2,y2)。接着,使对象块的相邻像素c[][]上的(x1,y1)、(x2,y2)的像素值分别为cur_max、cur_min。此处,r[][]、c[][]也可以使用图9所示的所有相邻像素,也可以使用(步骤3)的sl[k]、st[k]所示的位置的像素值。而且,如图10的(a)那样,求解在x轴、y轴分别取r[x][y]和c[x][y](‑1≤x<bw,‑1≤y<bh)的图上将(ref_max,cur_max)与(ref_min,cur_min)连结的直线。用于导出该直线的scale和offset的变量a1、a2通过下式导出。[0155]a1=cur_max‑cur_min(scale‑1)a2=ref_max‑ref_min也可以是,在存在多个具有像素值ref_max、ref_min、cur_max、cur_min的点的情况下,例如使多个点的平均值为(x1,y1)、(x2,y2)。[0156]此外,求解a1、a2的情况下的参照像素(ref_max,ref_min)和对象像素(cur_max,cur_min)不限定于上述。例如存在以下所示的四个变形例。[0157]此外,也可以是,在求解offset的情况下,除了(步骤7)的方法以外,使用下述的导出方法。例如,也可以是,在利用ref_min和cur_min作为直线经过的点的坐标的情况下,通过下式导出offset。[0158]offset=clip3(minb,maxb,cur_min‑(scale*ref_min))或者,也可以是,在利用ref_max和cur_max作为直线经过的点的坐标的情况下,通过下式导出offset。[0159]offset=clip3(minb,maxb,cur_max‑(scale*ref_max))而且也可以如以下那样。[0160]offset=clip3(minb,maxb,cur_ave‑(scale*ref_ave))此处,cur_ave、ref_ave分别为c[][]和r[][]的平均值。[0161](scale的导出方法的变形例1)在变形例1中,作为用于a1、a2的导出的代表点,从参照块的相邻像素r[][]导出第二大的像素值ref_max2及其坐标(x3,y3)、第二小的像素值ref_min2及其坐标(x4,y4)。接着,使对象块的相邻像素c[][]上的(x3,y3)、(x4,y4)的像素值分别为cur_max2、cur_min2。[0162]接下来,作为ref_max、ref_min、cur_max、cur_min,代入ref_max2、ref_min2、cur_max2、cur_min2。[0163]ref_max=ref_max2ref_min=ref_min2cur_max=cur_max2cur_min=cur_min2将这些代入(scale‑1),导出a1、a2。也可以是,在存在多个具有像素值ref_max、ref_min、cur_max、cur_min的点的情况下,例如使多个点的平均值为(x1,y1)、(x2,y2)、(x3,y3)、(x4,y4)。[0164]通过不使用最大值、最小值,最大值,从而具有使最小值为偏离值时的性能降低变小的效果。[0165](scale的导出方法的变形例2)在变形例2中,作为用于a1、a2的导出的代表点,从参照块的相邻像素r[][],导出最大像素值ref_max及其坐标(x1,y1)、最小像素值ref_min及其坐标(x2,y2)、第二大的像素值ref_max2及其坐标(x3,y3)、第二小的像素值ref_min2及其坐标(x4,y4)。接着,使对象块的相邻像素c[][]上的(x1,y1)、(x2,y2)、(x3,y3)、(x4,y4)的像素值分别成为cur_max、cur_min、cur_max2、cur_min2。[0166]作为ref_max、ref_min、cur_max、cur_min,代入ref_max与ref_max2的平均值、ref_min与ref_min2的平均值、cur_max与cur_max2的平均值、cur_min与cur_min2的平均值。更新的(ref_max,cur_max)、(ref_min,cur_min)是图10的(b)的“x”所示的点。[0167]ref_max=(ref_max+ref_max2+1)>>1ref_min=(ref_min+ref_min2+1)>>1cur_max=(cur_max+cur_max2+1)>>1cur_min=(cur_min+cur_min2+1)>>1将这些代入(scale‑1),导出与用于导出该直线的scale和offset的a1、a2。也可以是,在存在多个具有像素值ref_max、ref_min、cur_max、cur_min的点的情况下,例如使多个点的平均值为(x1,y1)、(x2,y2)、(x3,y3)、(x4,y4)。[0168]通过使用平均值,具有使最大值、最小值为偏离值时的性能降低变小的效果。[0169](scale的导出方法的变形例3)在变形例3中,作为用于a1、a2的导出的代表点,从参照块的相邻像素r[][]导出最大像素值ref_max、最小像素值ref_min。接着从对象块的相邻像素c[][]导出最大像素值cur_max、最小像素值cur_min。[0170]接着,求解将(ref_min,cur_min)与(ref_max,cur_max)连结的直线。(ref_min,cur_min)和(ref_max,cur_max)是图11的(a)的“x”所示的点。用于导出该直线的scale和offset的变量a1、a2能够通过(scale‑1)导出。[0171](scale的导出方法的变形例4)在变形例4中,作为用于a1、a2的导出的第一代表点,从参照块的相邻像素r[][]导出最大像素值ref_max及其坐标(x1,y1)、最小像素值ref_min及其坐标(x2,y2)、第二大的像素值ref_max2及其坐标(x3,y3)、第二小的像素值ref_min2及其坐标(x4,y4)。接着,使对象块的相邻像素c[][]上的(x1,y1)、(x2,y2)、(x3,y3)、(x4,y4)的像素值分别为cur_max、cur_min、cur_max2、cur_min2。[0172]作为ref_max、ref_min、cur_max、cur_min,代入ref_max与ref_max2的平均值、ref_min与ref_min2的平均值、cur_max与cur_max2的平均值、cur_min与cur_min2的平均值。[0173]ref_max=(ref_max+ref_max2+1)>>1ref_min=(ref_min+ref_min2+1)>>1cur_max=(cur_max+cur_max2+1)>>1cur_min=(cur_min+cur_min2+1)>>1这些是由图11的(b)的白圈表示的点xmax=(ref_max,cur_max)、xmin=(ref_min,cur_min)。[0174]接着,导出r[][]的所有像素的平均值ref_ave和c[][]的所有像素的平均值cur_ave。[0175]ref_ave=σr[x][y]cur_ave=σc[x][y]此处σ是与(x,y)相关的总和。这是图11的(b)的白圈所示的点xave=(ref_ave,cur_ave)。[0176]并且,通过(scale‑1)导出用于导出经过xmax和xave的直线的scale1的变量a1_1、a2_1。同样,通过(scale‑1)导出用于导出经过xmin和xave的直线的scale2的变量a1_2、a2_2。[0177](步骤6)或者,使用下述(lic参数导出方法的变形例),从a1_1、a2_1以及a1_2、a2_2导出scale1以及scale2。而且,使scale1与scale2的平均值为scale,使经过xave的倾斜scale的直线的切片为offset。[0178]scale=(scale1+scale2+1)>>1offset=cur_ave‑scale*ref_ave与变形例1~3相比,变形例4针对偏离值更具有稳健性,性能提高。[0179](lic滤波器部309553)lic滤波器部309553将参照图像predlx[][]作为输入信号,输出使用scale、offset、shifts而更新的predlx[][]。[0180]predlx[][]=((scale*predlx[][])>>shifts)+offset(lic‑2)此外,以下对shifts进行说明。[0181](lic参数导出方法的变形例)在本处理例中,减少除法表格的要素数而减少存储器。licdivtablefull具有一种反复结构,因此,能够减少表格尺寸。使用相对较小的除法表格licdivtable来导出lic参数(缩放因子scale、偏移offset)。licdivtable是相当于licdivtablefull的一部分的表格,且由2^n个要素构成。而且,lic参数导出部309552从小数的licdivtable的要素导出licdivtablefull的要素invdiv。[0182]图12是对invdiv的导出例进行说明的图。在该示例中,n=4,licdivtable包括16个要素。如图12的(a)所示,lic参数导出部309552在区间gr5[16‑31](即[2^n..(2^(n+1)‑1)])中,将与除数的倒数相关的值invdiv分别储存于licdivtable[]。[0183]在接下来的区间gr6[32..63](即[2^(n+1)..(2^(n+2)‑1)])中,将使licdivtable的值分别成为1/2倍的值作为invdiv来导出。另外,gr6具有gr5的2倍的宽度,因此,将相同的值各反复两次来导出。并且,在接下来的区间gr7[64..127](即[2^(n+2)..(2^(n+3)‑1)])中,将使licdivtable的值分别成为1/4倍的值作为invdiv来导出。另外,gr7具有gr5的4倍的宽度,因此,将相同的值各反复四次来导出。以下,反复相同的处理。[0184]另一方面,lic参数导出部309552在区间gr4[8..15](即[2^(n‑1)..(2^n‑1)])中,将使licdivtable[]的值分别成为2倍的值作为invdiv来导出。另外,gr4具有gr5的1/2倍的宽度,因此,将表格的要素间拨为2:1来导出。并且,在区间gr3[4..7](即[2^(n‑2)..(2^(n‑1)‑1)])中,将使licdivtable[]的值分别为4倍的值作为invdiv来导出。另外,gr3具有gr5的1/4倍的宽度,因此,将表格的要素间拨为4:1来导出。同样,在区间gr2[2..3](即[2^(n‑3)..(2^(n‑2)‑1)])中,将使licdivtable[]的值分别成为8倍的值间拨为8:1来导出。同样,在区间gr1[1](即[2^(n‑4)..(2^(n‑3)‑1)])中,将使licdivtable[]的值成为16倍的值间拨为16:1来导出。[0185]图12的(b)是对这些关系进行了总结的图。a2是除数,idx是licdivtable[]的索引,invdiv=licdivtable[idx]。[0186]lic参数导出部309552从(步骤5)中导出的除数a2,导出用于参照除法表格licdivtable的索引idx和a2的倒数导出所需的值invdiv。[0187]sc=floor(log2(a2))normdiff=(a2<<n)>>scidx=normdiff&((1<<n)‑1)msb=1<<(prec‑1)invdiv=(licdivtable[idx]|msb)示出除法表格的要素数(2^n)为16(n=4)、除法表格的精度prec=4的情况下licdivtble[1<<n]的一个示例。[0188]licdivtable[1<<n]={0,7,6,5,5,4,4,3,3,2,2,1,1,1,1,0}lic参数导出部309552从a2的对数值导出缩放移位值sc。另外,通过从使a2向左移位了n位的值向右移位sc位,从来导出normdiff。另外,从normdiff减去规定的固有值(n=4的情况下16,2^n)来导出idx。这与提取normdiff的下位(n‑1)的位的处理(normdiff&((1<<n)‑1))等效。invdiv通过在licdivtable[idx]加上2^(prec‑1)来导出。[0189]在本变形例中,通过利用因移位而减少的索引而参照除法表格licdivtable(licdivtable[idx]),从而起到减少licdivtable的要素数并减少表格尺寸的效果。在n=4的情况下,(步骤5)的licdivtable储存了64个要素,但变形例的licdivtable也可以仅储存16个要素。[0190]接下来,lic参数导出部309552通过以下的方法从invdiv导出除数的倒数。[0191]lic参数导出部309552从(步骤5)中导出的被除数a1导出用于调整scale的位宽的变量expc、shifta、被除数a1和0的较大的值a10。[0192]a10=max(0,a1)expc=floor(log2(a10))sc1=sc+((idx!=0)?1:0)shifta=(prec‑1)+sc1‑expclic中很少产生负倾斜。此处,为了简化代码的处理,使a10成为0或者正数。[0193]也可以是,lic参数导出部309552还使用下式来导出scale。[0194]add1=1<<(shifta+expc)>>1scale=((a10*invdiv)+add1)>>(shifta+expc)在该情况下,a10*invdiv的乘法所需的最大位宽为expc+prec。需要与expc可取的最大值匹配地增大乘法电路的规模。为了抑制该情况,并且作为与上述不同的结构,lic参数导出部309552也可以通过以下的方法来导出scale。[0195]add=(1<<expc)>>1add1=(1<<shifta)>>1tmp=((a10<<lshift)+add)>>expcscale=((tmp*invdiv)+add1)>>shiftalshift是表示scale的精度的参数。[0196]上述的tmp是抑制它的。首先将a10向左移位lshift位,然后向右移位expc位,从而得到tmp。tmp的值在a10>=1<<(lshift‑1)的情况下是a10的上位lshift位的值,在不是这样的情况下,tmp成为以成为lshift位的方式由0填入下位的位的值。由此,scale的导出时的乘法tmp*invdiv总是得到抑制为lshift*prec位以下的比较小规模的乘法的效果。lshift的值例如为5。[0197]此外,也可以不是为a10=max(0,a1),而是如以下那样导出a10。[0198]a10=abs(a1)其中,此时,scale的导出需要包括代码的导出。例如scale=(((tmp*invdiv)+add1)>>shifta)*sign(a1)。[0199]lic参数导出部309552设定shifts。[0200]shifts=lshift若总结上述算法,则scale能够在以下的处理中导出。[0201]licdivtable[1<<n]={0,7,6,5,5,4,4,3,3,2,2,1,1,1,1,0}sc=floorlog2(a2)normdiff=(a2<<n)>>scidx=normdiff&((1<<n)‑1))msb=1<<(prec‑1)invdiv=licdivtable[idx]|msbsc1=sc+(idx!=0?1:0)a10=max(0,a1)expc=floorlog2(a10)add=1<<expc>>1add1=1<<shifta>>1shifta=(prec‑1)+sc1‑expctmp=((a10<<lshift)+add)>>expcscale=clip3(0,1<<(lshift+2),((tmp*invdiv)+add1)>>shifta)shifts=lshiftscale的剪裁的上限可以不是1<<(lshift+2),而是1<<(lshift+1)。[0202]scale=clip3(0,1<<(lshift+1),((tmp*invdiv)+add1)>>shifta)或者,剪裁的上限为2的‑1次方比较合适。在该情况下,与使剪裁的上限成为2的幂的情况相比,起到将使用scale的乘法所需的位宽减少1位的效果。例如,也可以为(1<<(lshift+2))‑1。在lshift=5的情况下,scale的最大值为127(6bit),与使128(7bit)为最大值的情况相比,能够减少1位。[0203]scale=clip3(0,(1<<(lshift+2))‑1,((tmp*invdiv)+add1)>>shifta)并且,剪裁的上限也可以是(1<<(lshift+1))‑1。在该情况下,scale的最大值为63(5bit),使用scale的乘法所需的位宽能够减少2位。[0204]scale=clip3(0,(1<<(lshift+1))‑1,((tmp*invdiv)+add1)>>shifta)floorlog2也可以通过下式导出。[0205]floorlog2(x)=floor(log2(x))=(x≤0)?‑1:31‑clz(x)其中,上述的clz函数的自变量x具有32bit的宽度。[0206]此外,上述的licdivtable为n=4、prec=4的情况,但在n=4、prec=5的情况下也可以使用下述表格。[0207]licdivtable[1<<n]={0,14,12,10,9,8,7,6,5,4,3,2,2,1,1,0}另外,在n=4、prec=6的情况下,也可以使用下述的表格。[0208]licdivtable[1<<n]={0,28,24,21,19,16,14,12,10,8,7,5,4,3,2,1}此外,这些licdivtable的值为近似值,因此,也可以为不是准确的上述值的表格。[0209]并且,也可以是,基于除数a2的值,将scale、shifts、offset设定为规定值。例如,在a2不是正数的情况下,成为下述那样。[0210]scale=1<<lshiftshifts=lshift另外,在a2与a1相等的情况下倾斜显然为45度,因此,也可以如下述那样。[0211]scale=1<<lshiftshifts=lshift在上述时offset也可以由(scale的导出方法)这节中说明的式导出,也可以作为固定值(例如0)。[0212]图13是表示(lic参数导出方法的变形例)的lic参数导出部309552的动作的数据流程图。lic参数导出部309552以a2和a1作为输入,导出a1/a2的缩放因子scale。而且,也可以导出作为scale的精度的shifts。也可以是,lic参数导出部309552在内部导出移位值expc和shifta。此处,也可以是,a1是分子(numerator),a2是分母(denominator),将a1称为numer,将a2称为denom。[0213]此外,(lic参数导出方法的变形例)也可以与(scale、offset的导出方法的变形例)组合来导出scale、offset。[0214](加权预测)在加权预测中,通过对predlx乘以加权系数来生成块的预测图像。在predflagl0或predflagl1为1(单预测)、并且不使用加权预测的情况下,进行使predlx(lx为l0或l1)与像素位数bitdepth匹配的下式处理。[0215]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进行平均并与像素位数匹配的下式处理。[0216]pred[x][y]=clip3(0,(1<<bitdepth)‑1,(predl0[x][y]+predl1[x][y]+offset2)>>shift2此处,shift2=15‑bitdepth,offset2=1<<(shift2‑1)。[0217]并且,在进行单预测并且加权预测的情况下,加权预测部3094从编码数据导出加权预测系数w0和偏移o0,进行下式处理。[0218]pred[x][y]=clip3(0,(1<<bitdepth)‑1,((predlx[x][y]*w0+2^(log2wd‑1))>>log2wd)+o0)此处,log2wd是表示规定的移位量的变量。[0219]并且,在进行双预测bipred并且加权预测的情况下,加权预测部3094从编码数据导出加权预测系数w0、w1、o0、o1,进行下式处理。[0220]pred[x][y]=clip3(0,(1<<bitdepth)‑1,(predl0[x][y]*w0+predl1[x][y]*w1+((o0+o1+1)<<log2wd))>>(log2wd+1))而且,将所生成的块的预测图像向加法部312输出。[0221]逆量化/逆转换部311对从熵解码部301输入的量化转换系数进行逆量化而求解转换系数。该量化转换系数是在编码处理中针对预测误差进行dct(discretecosinetransform,离散余弦转换)、dst(discretesinetransform,离散正弦转换)等频率转换并量化而得到的系数。逆量化/逆转换部311针对所求出的转换系数而进行逆dct、逆dst等逆频率转换,并计算预测误差。逆量化/逆转换部311将预测误差向加法部312输出。逆量化/逆转换部311在skip_flag为1的情况下或在cu_cbp为0的情况下将对象块的预测误差全部设定为0。[0222]加法部312按每个像素将从预测图像生成部308输入的块的预测图像和从逆量化/逆转换部311输入的预测误差相加,生成块的解码图像。加法部312将块的解码图像存储于参照图片存储器306,而且向环路滤波器305输出。[0223](动态图像编码装置的结构)接下来,对本实施方式所涉及的动态图像编码装置11的结构进行说明。图14是表示本实施方式所涉及的动态图像编码装置11的结构的框图。动态图像编码装置11包括预测图像生成部101、减法部102、转换/量化部103、逆量化/逆转换部105、加法部106、环路滤波器107、预测参数存储器(预测参数存储部、帧存储器)108、参照图片存储器(参照图像存储部、帧存储器)109、编码参数决定部110、预测参数导出部120、熵编码部104而构成。[0224]预测图像生成部101按对图像的各图片进行了分割的区域即cu来生成预测图像。预测图像生成部101进行与已经说明的预测图像生成部308相同的动作,从而省略说明。[0225]减法部102从图像的像素值减去由预测图像生成部101输入的块的预测图像的像素值来生成预测误差。减法部102将预测误差向转换/量化部103输出。[0226]转换/量化部103针对从减法部102输入的预测误差,通过频率转换来计算转换系数,并通过量化来导出量化转换系数。转换/量化部103将量化转换系数向熵编码部104以及逆量化/逆转换部105输出。[0227]逆量化/逆转换部105与动态图像解码装置31的逆量化/逆转换部311(图6)相同,且省略说明。将计算出的预测误差向加法部106输出。[0228]在熵编码部104,从转换/量化部103输入有量化转换系数,从编码参数决定部110输入有编码参数。编码参数例如存在refidxlx、mvp_lx_idx、mvdlx、predmode以及merge_idx等代码。[0229]熵编码部104对分割信息、预测参数、量化转换系数等进行熵编码来生成并输出编码流te。[0230]预测参数导出部120是包括帧间预测参数导出部303、帧内预测参数导出部304的机构,并由从编码参数决定部110输入的编码参数导出帧间预测参数以及帧内预测参数。将所导出的参数向预测图像生成部101和预测参数存储器108输出。参数编码部111具备报头编码部1110、ct信息编码部1111、cu编码部1112(预测模式编码部)。cu编码部1112还具备tu编码部1114。[0231]以下,对各模块的概略动作进行说明。预测参数导出部120进行报头信息、分割信息、预测信息、量化转换系数等参数的编码处理。[0232]ct信息编码部1111对qt、mt(bt,tt)分割信息等进行编码。[0233]cu编码部1112对cu信息、预测信息、split_transform_flag、cbf_cb、cbf_cr、cbf_luma等进行编码。[0234]tu编码部1114在tu包括预测误差的情况下,对qp更新信息(量化校正值)和量化预测误差(residual_coding)进行编码。[0235]ct信息编码部1111、cu编码部1112将帧间预测参数(predmode、merge_flag、merge_idx、inter_pred_idc、refidxlx、mvp_lx_idx、mvdlx)、帧内预测参数,量化转换系数等语法要素向熵编码部104供给。[0236]编码参数决定部110选择编码参数的多个集中的一个集。编码参数是上述的qt、bt或tt分割信息、预测参数或成为与它们相关来生成的编码的对象的参数。预测参数导出部120从编码参数决定部110决定出的参数导出预测参数,并将其向预测图像生成部101输出。预测图像生成部101使用这些预测参数来生成预测图像。[0237]编码参数决定部110针对多个集分别计算表示信息量的大小和编码误差的rd成本值。rd成本值例如是代码量和对平方误差乘以系数λ的值之和。代码量是对量化误差和编码参数进行熵编码而得到的编码流te的信息量。平方误差是在减法部102中计算出的预测误差的平方和。系数λ是预先设定的比零大的实数。编码参数决定部110对计算出的成本值成为最小的编码参数集进行选择。由此,熵编码部104将选择出的编码参数集作为编码流te而输出。将由预测参数导出部303导出的预测参数存储于预测参数存储器108。[0238]加法部106将从预测图像生成部101输入的块的预测图像的像素值和从逆量化/逆转换部105输入的预测误差按每个像素相加来生成解码图像。加法部106将所生成的解码图像存储于参照图片存储器109。[0239]环路滤波器107针对加法部106生成的解码图像,实施去区块滤波器、sao、alf。此外,环路滤波器107也可以不一定包括上述三种滤波器,例如也可以是仅去区块滤波器的结构。[0240]预测参数存储器108将编码参数决定部110生成的预测参数按每个对象图片以及cu存储于预先决定的位置。[0241]参照图片存储器109将环路滤波器107生成的解码图像按每个对象图片以及cu存储于预先决定的位置。[0242]此外,也可以通过计算机来实现上述的实施方式的动态图像编码装置11、动态图像解码装置31的一部分例如熵解码部301、参数解码部302、环路滤波器305、预测图像生成部308、逆量化/逆转换部311、加法部312、预测参数导出部320、预测图像生成部101、减法部102、转换/量化部103、熵编码部104、逆量化/逆转换部105、环路滤波器107、编码参数决定部110、参数编码部111、预测参数导出部120。在该情况下,也可以通过将用于实现该控制功能的程序记录于计算机可读取的记录介质,并使计算机系统读入并执行记录于该记录介质的程序来实现。此外,此处所述的“计算机系统”是内置于动态图像编码装置11、动态图像解码装置31的任一个的计算机系统,且包括os、外围设备等硬件。另外,“计算机可读取的记录介质”是指软盘、光磁盘、rom、cd‑rom等可移动介质、内置于计算机系统的硬盘等存储装置。而且,“计算机可读取的记录介质”也可以包括:如经由因特网等网络、电话线路等通信线路来发送程序的情况下的通信线那样短时间内、动态地保持程序的记录介质;以及如作为该情况下的服务器、客户端的计算机系统内部的易失性存储器那样以恒定时间保持程序的记录介质。此外,上述程序可以是用于实现前述的功能的一部分的程序,而且也可以是能够通过与已记录于计算机系统的程序的组合来实现前述的功能。[0243]另外,也可以将上述的实施方式的动态图像编码装置11、动态图像解码装置31的一部分或者全部作为lsi(largescaleintegration:大规模集成电路)等集成电路来实现。动态图像编码装置11、动态图像解码装置31的各功能模块可以单独地处理器化,也可以将一部分或者全部集成来处理器化。另外,集成电路化的方法不局限于lsi,也可以利用专用电路或者通用处理器来实现。另外,在随着半导体技术的进步而出现代替lsi的集成电路化的技术的情况下,也可以使用基于该技术的集成电路。[0244]以上,参照附图对该发明的一实施方式详细地进行了说明,但具体结构不局限于上述实施方式,能够在不脱离本发明的主旨的范围内进行各种设计变更等。[0245]本技术的一方式所涉及的lic部具有以下的特征。[0246]是通过lic预测来生成预测图像的lic部,其特征在于,具备:lic参数导出部,其使用对象块的相邻像素(第一相邻像素)、参照块的相邻像素(第二相邻像素)、表格来导出缩放因子scale和偏移offset(lic参数);和lic滤波器部,其使用参照块的图像和lic参数来生成预测图像,上述lic参数导出部使用第一相邻像素以及第二相邻像素,导出对象块的相邻像素的特征量a1(第一特征量)和参照块的相邻像素的特征量a2(第二特征量),使用第二特征量a2导出上述表格的参照值invdiv,通过将第一特征量a1乘以上述表格参照值invdiv的值以第一移位值(expc,shifta)向右移位来导出缩放因子scale,上述lic参数导出部使用第一相邻像素、第二相邻像素以及缩放因子来导出偏移offset。[0247]其特征在于,上述lic参数导出部从第二特征量a2导出缩放移位值sc,并根据将第二特征量a2向右移位缩放移位值sc而得到的索引idx来参照上述表格。[0248]其特征在于,上述lic参数导出部从第一特征量a1和缩放移位值sc导出上述第一移位值(expc,shifta)。[0249]其特征在于,上述第一移位值包括第二移位值(expc)和第三移位值(shifta)的值,第二移位值(expc)从第一特征量a1导出,第三移位值(shifta)使用缩放移位值sc和第二移位值(expc)来导出。[0250]其特征在于,上述lic参数导出部对在将第一特征量向左移位规定的移位值(lshift)之后并向右移位第二移位值(expc)而得到的值乘以表格参照值invdiv,并向右移位第三移位值(shifta),来导出缩放因子scale。[0251]其特征在于,上述lic参数导出部对上述缩放因子scale进行剪裁。[0252]其特征在于,上述剪裁的上限以规定的移位值(lshift)为基础来导出。[0253]其特征在于,上述lic参数导出部从第二相邻像素导出最大像素值(ref_max)的坐标(x1,y1)和最小像素值(ref_min)的坐标(x2,y2),并使用ref_max、ref_min、第一相邻像素的坐标(x1,y1)的像素值(cur_max)以及坐标(x2,y2)的像素值(cur_min)来导出第一特征量a1、第二特征量a2。[0254]其特征在于,上述lic参数导出部从第二相邻像素导出第二大的像素值(ref_max2)的坐标(x3,y3)和第二小的像素值(ref_min2)的坐标(x4,y4),使用ref_max2、ref_min2、第一相邻像素的坐标(x3,y3)的像素值(cur_max2)以及坐标(x4,y4)的像素值(cur_min2)来导出第一特征量a1、第二特征量a2。[0255]其特征在于,上述lic参数导出部从第二相邻像素导出最大像素值(ref_max)的坐标(x1,y1)、最小像素值(ref_min)的坐标(x2,y2)、第二大的像素值(ref_max2)的坐标(x3,y3)、第二小的像素值(ref_min2)的坐标(x4,y4),使用ref_max、ref_min、ref_max2、ref_min2、第一相邻像素的坐标(x1,y1)的像素值(cur_max)、坐标(x2,y2)的像素值(cur_min)、第一相邻像素的坐标(x3,y3)的像素值(cur_max2)以及坐标(x4,y4)的像素值(cur_min2)来导出第一特征量a1、第二特征量a2。[0256]其特征在于,在使用表格导出除数td的倒数的除法部中,从除数td的绝对值tdabs导出移位值sc,对将除数td的绝对值tdabs向右移位sc位(tdabs<<n)>>sc的值normdiff施加使用了表格mvdivtable的要素的个数n的修正来导出索引idx,以根据索引idx而参照了表格mvdivtable的值、倒数的精度prec以及移位值sc为基础来导出倒数的绝对值,以除数的代码为基础来导出倒数。[0257]其特征在于,在通过对对象图片相对于第二参照图片的运动矢量(第二运动矢量)进行缩放来导出对象图片相对于第一参照图片的运动矢量(第一运动矢量)的运动矢量导出装置中,将对象图片与第一参照图片的poc的差值作为除数,通过上述除法部来导出上述差值的倒数,通过第二运动矢量、对象图片与第二参照图片的poc的差值以及上述倒数的乘以来导出第一运动矢量。[0258]〔应用例〕上述的动态图像编码装置11以及动态图像解码装置31能够搭载于进行动态图像的发送、接收、记录、播放的各种装置而利用。此外,动态图像也可以是由照相机等拍摄到的自然动态图像,也可以是由计算机等生成的人工动态图像(包括cg以及gui)。[0259]首先,参照图2对将上述的动态图像编码装置11以及动态图像解码装置31用于动态图像的发送以及接收的情况进行说明。[0260]图2的(a)是表示搭载了动态图像编码装置11的发送装置prod_a的结构的框图。如附图所示,发送装置prod_a具备:通过对动态图像进行编码而得到编码数据的编码部prod_a1;通过利用编码部prod_a1得到的编码数据对输送波进行调制而得到调制信号的调制部prod_a2;以及对调制部prod_a2得到的调制信号进行发送的发送部prod_a3。上述的动态图像编码装置11作为该编码部prod_a1而利用。[0261]也可以是,作为向编码部prod_a1输入的动态图像的供给源,发送装置prod_a还具备:拍摄动态图像的照相机prod_a4;记录有动态图像的记录介质prod_a5;用于从外部输入动态图像的输入端子prod_a6;以及对图像进行生成或者加工的图像处理部a7。在附图中,例示出发送装置prod_a具备所有这些的结构,但也可以省略一部分。[0262]此外,记录介质prod_a5也可以记录没有被编码的动态图像,也可以记录有以与传输用的编码方式不同的记录用的编码方式编码的动态图像。在后者的情况下,使根据记录用的编码方式对从记录介质prod_a5读出的编码数据进行解码的解码部(未图示)夹设在记录介质prod_a5与编码部prod_a1之间较佳。[0263]图2的(b)是表示搭载了动态图像解码装置31的接收装置prod_b的结构的框图。如附图所示,接收装置prod_b具备:接收调制信号的接收部prod_b1;通过对接收部prod_b1接收到的调制信号进行解调而得到编码数据的解调部prod_b2;以及通过对解调部prod_b2得到的编码数据进行解码而得到动态图像的解码部prod_b3。上述的动态图像解码装置31作为该解码部prod_b3而利用。[0264]也可以是,作为解码部prod_b3输出的动态图像的供给目的地,接收装置prod_b还具备:显示动态图像的显示器prod_b4;用于记录动态图像的记录介质prod_b5;以及用于将动态图像向外部输出的输出端子prod_b6。在附图中,例示出接收装置prod_b具备所有这些的结构,但也可以省略一部分。[0265]此外,记录介质prod_b5也可以用于记录没有被编码的动态图像,也可以以与传输用的编码方式不同的记录用的编码方式被编码。在后者的情况下,使根据记录用的编码方式对从解码部prod_b3获取到的动态图像进行编码的编码部(未图示)夹设在解码部prod_b3与记录介质prod_b5之间较佳。[0266]此外,传输调制信号的传输介质也可以是无线也可以是有线。另外,传输调制信号的传输方式,可以是广播(此处是指不预先确定发送目的地的发送方式),也可以是通信(此处是指预先确定发送目的地的发送方式)。即,调制信号的传输也可以通过无线广播、有线广播、无线通信以及有线通信的任一个来实现。[0267]例如,地面数字广播的广播台(广播设备等)/接收台(电视接收机等)是通过无线广播收发调制信号的发送装置prod_a/接收装置prod_b的一个示例。另外,有线电视广播的广播台(广播设备等)/接收台(电视接收机等)是通过有线广播收发调制信号的发送装置prod_a/接收装置prod_b的一个示例。[0268]另外,使用因特网的vod(videoondemand)服务、动态图像共享服务等的服务器(工作站等)/客户端(电视接收机、个人计算机、智能手机等)是通过通信收发调制信号的发送装置prod_a/接收装置prod_b的一个示例(通常,lan中使用无线或者有线的任一种来作为传输介质,wan中使用有线来作为传输介质)。此处,个人计算机包括台式pc、便携式pc以及平板型pc。另外,智能手机还包括多功能移动电话终端。[0269]此外,动态图像共享服务的客户端除了具有对从服务器下载的编码数据进行解码并显示于显示器的功能之外,还具有对由照相机拍摄到的动态图像进行编码并向服务器上传的功能。即,动态图像共享服务的客户端作为发送装置prod_a以及接收装置prod_b双方发挥功能。[0270]接下来,参照图3对能够将上述的动态图像编码装置11以及动态图像解码装置31用于动态图像的记录以及播放的情况进行说明。[0271]图3的(a)是表示搭载有上述的动态图像编码装置11的记录装置prod_c的结构的框图。如附图所示,记录装置prod_c具备:通过对动态图像进行编码而得到编码数据的编码部prod_c1;和将编码部prod_c1得到的编码数据写入记录介质prod_m的写入部prod_c2。上述的动态图像编码装置11作为该编码部prod_c1而利用。[0272]此外,记录介质prod_m可以是(1)如hdd(harddiskdrive:硬盘驱动器)、ssd(solidstatedrive:固态硬盘)等那样内置于记录装置prod_c的类型的结构,也可以是(2)如sd存储卡、usb(universalserialbus)闪存等那样与记录装置prod_c连接的类型的结构,也可以是(3)如dvd(digitalversatiledisc:注册商标)、bd(blu‑raydisc:注册商标)等那样装填于内置于记录装置prod_c的驱动器装置(未图示)的结构。[0273]另外,也可以是,作为向编码部prod_c1输入的动态图像的供给源,记录装置prod_c还具备:拍摄动态图像的照相机prod_c3、用于从外部输入动态图像的输入端子prod_c4、用于接收动态图像的接收部prod_c5以及生成或者加工图像的图像处理部prod_c6。在附图中,例示出记录装置prod_c具备所有这些的结构,但也可以省略一部分。[0274]此外,接收部prod_c5也可以接收没有被编码的动态图像,也可以接收以与记录用的编码方式不同的传输用的编码方式编码后的编码数据。在后者的情况下,使对以传输用的编码方式编码后的编码数据进行解码的传输用解码部(未图示)夹设于接收部prod_c5与编码部prod_c1之间较佳。[0275]作为这样的记录装置prod_c,例如可列举出,dvd记录器、bd记录器、hdd(harddiskdrive)记录器等(在该情况下,输入端子prod_c4或者接收部prod_c5为动态图像的主要的供给源)。另外,便携式摄像机(在该情况下,照相机prod_c3为动态图像的主要的供给源)、个人计算机(在该情况下,接收部prod_c5或者图像处理部c6为动态图像的主要的供给源)、智能手机(在该情况下,照相机prod_c3或者接收部prod_c5为动态图像的主要的供给源)等也是这样的记录装置prod_c的一个示例。[0276]图3的(b)是表示搭载有上述的动态图像解码装置31的播放装置prod_d的结构的块。如附图所示,播放装置prod_d具备:读出写入至记录介质prod_m的编码数据的读出部prod_d1;和通过对读出部prod_d1读出的编码数据进行解码而获得动态图像的解码部prod_d2。上述的动态图像解码装置31被用作该解码部prod_d2。[0277]此外,记录介质prod_m可以是(1)如hdd、ssd等那样内置于播放装置prod_d的类型的结构,也可以是(2)如sd存储卡、usb闪存等那样与播放装置prod_d连接的类型的结构,也可以是(3)如dvd、bd等那样装填于内置于播放装置prod_d的驱动器装置(未图示)的结构。[0278]另外,也可以是,作为解码部prod_d2所输出的动态图像的供给目的地,播放装置prod_d还具备:显示动态图像的显示器prod_d3、用于将动态图像向外部输出的输出端子prod_d4以及发送动态图像的发送部prod_d5。在附图中,例示出播放装置prod_d具备所有这些的结构,但也可以省略一部分。[0279]此外,发送部prod_d5可以发送没有被编码的动态图像,也可以发送以与记录用的编码方式不同的传输用的编码方式编码后的编码数据。在后者的情况下,使以传输用的编码方式对动态图像进行编码的编码部(未图示)夹设于解码部prod_d2与发送部prod_d5之间较佳。[0280]作为这样的播放装置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的一个示例。[0281](硬件实现以及软件实现)另外,上述的动态图像解码装置31以及动态图像编码装置11的各块可以通过形成在集成电路(ic芯片)上的逻辑电路而以硬件方式实现,也可以使用cpu(centralprocessingunit)而以软件方式实现。[0282]在后者的情况下,上述各装置具备:执行实现各功能的程序的命令的cpu、储存上述程序的rom(readonlymemory:只读存储器)、展开上述程序的ram(randomaccessmemory:随机存取存储器)、储存上述程序以及各种数据的存储器等存储装置(记录介质)等。而且,本发明的实施方式的目的通过以下方式也能够实现:将以计算机可读取的方式记录有实现上述的功能的软件即上述各装置的控制程序的程序代码(执行形式程序、中间代码程序、源程序)的记录介质向上述各装置供给,该计算机(或者cpu、mpu)读出并执行记录于记录介质的程序代码。[0283]作为上述记录介质,例如能够使用:磁带、盒式磁带等带类;包括软盘(注册商标)/硬盘等磁盘、cd‑rom(compactdiscread‑onlymemory:光盘只读存储器)/mo盘(magneto‑opticaldisc)/md(minidisc)/dvd(digitalversatiledisc:注册商标)/cd‑r(cdrecordable)/蓝光光盘(blu‑raydisc:注册商标)等光盘的盘类;ic卡(包括存储卡)/光卡等卡类;掩模rom/eprom(erasableprogrammableread‑onlymemory:可擦可编程只读存储器)/eeprom(electricallyerasableandprogrammableread‑onlymemory电可擦可编程只读存储器:注册商标)/闪存rom等半导体存储器类、或者pld(programmablelogicdevice:可编程逻辑器件)、fpga(fieldprogrammablegatearray:现场可编程门阵列)等逻辑电路类等。[0284]另外,也可以将上述各装置构成为能够与通信网络连接,并经由通信网络而供给上述程序代码。该通信网络能够传输程序代码即可,没有被特别限定。例如,能够利用因特网、内联网、外联网、lan(localareanetwork:局域网)、isdn(integratedservicesdigitalnetwork:综合业务数字网)、van(value‑addednetwork:增值网络)、catv(communityantennatelevision/cabletelevision:共用天线电视/有线电视)通信网、虚拟专用网(virtualprivatenetwork)、电话线路网、移动通信网、卫星通信网等。另外,构成该通信网络的传输介质也是为能够传输程序代码的介质即可,不限定于特定的结构或者种类。例如,无论在ieee(instituteofelectricalandelectronicengineers:电气和电子工程师协会)1394、usb、电力线输送、有线tv线路、电话线、adsl(asymmetricdigitalsubscriberline:非对称数字用户线路)线路等有线方式中,还是在如irda(infrareddataassociation:红外线数据协会)、遥控器那样的红外线、bluetooth(注册商标)、ieee802.11无线、hdr(highdatarate:高数据速率)、nfc(nearfieldcommunication:近场通讯)、dlna(digitallivingnetworkalliance数字生活网络联盟:注册商标)、移动电话网、卫星线路、地面数字广播网等无线方式中均能够利用。此外,本发明的实施方式即便以通过电子传输而将上述程序代码具体化的嵌入载波的计算机数据信号的形式也能够实现。[0285]本发明的实施方式不限定于上述的实施方式,能够在权利要求所示的范围内进行各种变更。即,针对将在权利要求所示的范围内经过适当变更的技术方案组合而得到的实施方式,也包含于本发明的技术范围。产业上的可利用性[0286]本发明的实施方式能够优选用于对将图像数据编码而得到的编码数据进行解码的动态图像解码装置以及生成将图像数据编码而得到的编码数据的动态图像编码装置。另外,能够优选用于由动态图像编码装置生成且由动态图像解码装置参照的编码数据的数据结构。[0287](相关申请的相互参照)本技术相对于2019年3月8日申请的日本专利申请:特愿2019‑043096主张优先权的利益,并通过对其进行参照而将其全部内容包括于本说明书中。附图标记说明[0288]31...图像解码装置;301...熵解码部;302...参数解码部;3020...报头解码部;303...帧间预测参数导出部;308...预测图像生成部;309...帧间预测图像生成部;311...逆量化/逆转换部;312...加法部;11...图像编码装置;101...预测图像生成部;102...减法部;103...转换/量化部;104...熵编码部;105...逆量化/逆转换部;107...环路滤波器;110...编码参数决定部;111...参数编码部;1110...报头编码部;1111...ct信息编码部;1112...cu编码部(预测模式编码部);1114...tu编码部;120...预测参数导出部。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1