JP2015080053A - Image decoder and image encoder - Google Patents

Image decoder and image encoder Download PDF

Info

Publication number
JP2015080053A
JP2015080053A JP2013215118A JP2013215118A JP2015080053A JP 2015080053 A JP2015080053 A JP 2015080053A JP 2013215118 A JP2013215118 A JP 2013215118A JP 2013215118 A JP2013215118 A JP 2013215118A JP 2015080053 A JP2015080053 A JP 2015080053A
Authority
JP
Japan
Prior art keywords
depth
unit
prediction
block
image
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
JP2013215118A
Other languages
Japanese (ja)
Inventor
知宏 猪飼
Tomohiro Igai
知宏 猪飼
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.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Priority to JP2013215118A priority Critical patent/JP2015080053A/en
Publication of JP2015080053A publication Critical patent/JP2015080053A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

PROBLEM TO BE SOLVED: To reduce the processing load of processing using a depth and to reduce the code amount.SOLUTION: An image decoder includes: a depth DV derivation part (351) which derives a depth to be used to derive a prediction parameter from a depth of another picture having been decoded; and a prediction parameter decoding part (302) which derives the prediction parameter using the depth that the depth DV derivation part (351) derives.

Description

本発明は、画像復号装置、及び画像符号化装置に関する。   The present invention relates to an image decoding device and an image encoding device.

複数視点の画像符号化技術には、複数の視点の画像を符号化する際に画像間の視差を予測することによって情報量を低減する視差予測符号化や、その符号化方法に対応した復号方法が提案されている。視点画像間の視差を表すベクトルを変位ベクトルと呼ぶ。変位ベクトルは、水平方向の要素(x成分)と垂直方向の要素(y成分)を有する2次元のベクトルであり、1つの画像を分割した領域であるブロック毎に算出される。   The multi-view image encoding technique includes a parallax predictive encoding that reduces the amount of information by predicting a parallax between images when encoding images of a plurality of viewpoints, and a decoding method corresponding to the encoding method. Has been proposed. A vector representing the parallax between viewpoint images is called a displacement vector. The displacement vector is a two-dimensional vector having a horizontal element (x component) and a vertical element (y component), and is calculated for each block which is an area obtained by dividing one image.

また、複数視点の画像を取得するには、それぞれの視点に配置されたカメラを用いることが一般的である。複数視点の符号化では、各視点画像は、複数のレイヤにおいてそれぞれ異なるレイヤとして符号化される。複数のレイヤから構成される動画像の符号化方法は、一般に、スケーラブル符号化又は階層符号化と呼ばれる。スケーラブル符号化では、レイヤ間で予測を行うことで、高い符号化効率を実現する。レイヤ間で予測を行わずに基準となるレイヤは、ベースレイヤ、それ以外のレイヤは拡張レイヤと呼ばれる。レイヤが視点画像から構成される場合のスケーラブル符号化を、ビュースケーラブル符号化と呼ぶ。このとき、ベースレイヤはベースビュー、拡張レイヤは非ベースビューとも呼ばれる。さらに、ビュースケーラブルに加え、レイヤがテクスチャレイヤ(画像レイヤ)とデプスレイヤ(距離画像レイヤ)から構成される場合のスケーラブル符号化は、3次元スケーラブル符号化と呼ばれる。   In order to acquire images from a plurality of viewpoints, it is common to use cameras arranged at the respective viewpoints. In multi-viewpoint encoding, each viewpoint image is encoded as a different layer in each of a plurality of layers. A method for encoding a moving image composed of a plurality of layers is generally referred to as scalable encoding or hierarchical encoding. In scalable coding, high coding efficiency is realized by performing prediction between layers. A reference layer without performing prediction between layers is called a base layer, and other layers are called enhancement layers. Scalable encoding in the case where a layer is composed of viewpoint images is referred to as view scalable encoding. At this time, the base layer is also called a base view, and the enhancement layer is also called a non-base view. Furthermore, in addition to view scalable, scalable coding when a layer is composed of a texture layer (image layer) and a depth layer (distance image layer) is called three-dimensional scalable coding.

また、スケーラブル符号化には、ビュースケーラブル符号化の他、空間的スケーラブル符号化(ベースレイヤとして解像度の低いピクチャ、拡張レイヤが解像度の高いピクチャを処理)、SNRスケーラブル符号化(ベースレイヤとして画質の低いピクチャ、拡張レイヤとして解像度の高いピクチャを処理)等がある。スケーラブル符号化では、例えばベースレイヤのピクチャを、拡張レイヤのピクチャの符号化において、参照ピクチャとして用いることがある。   For scalable coding, in addition to view scalable coding, spatial scalable coding (pictures with low resolution as the base layer and pictures with high resolution in the enhancement layer), SNR scalable coding (image quality as the base layer) Low picture, high resolution picture as an enhancement layer). In scalable coding, for example, a base layer picture may be used as a reference picture in coding an enhancement layer picture.

また、非特許文献1では、変位ベクトルを、デプスに基づいて求める技術が提案されている。デプスに基づいた技術は2つあり、1つは、デプスリファインと呼ばれる、デプスにより高精度化された変位ベクトルDoNBDV(depth -oriented neighbour base disparity vector)であり、もう1つは、視差合成予測(VSP:view synthesis prediction)である。   Non-Patent Document 1 proposes a technique for obtaining a displacement vector based on depth. There are two depth-based techniques, one is a depth-oriented neighbor base disparity vector (depth-oriented neighbor base disparity vector) called depth refinement, and the other is parallax synthesis prediction ( VSP: view synthesis prediction.

3 CE4: Advanced residual prediction for multiview coding, JCT3V-D0177, JCT-3V 4th Meeting: Incheon, KR, 20-26 Apr. 20133 CE4: Advanced residual prediction for multiview coding, JCT3V-D0177, JCT-3V 4th Meeting: Incheon, KR, 20-26 Apr. 2013

しかしながら、デプスに基づいて変位ベクトルを求める場合、デプスアクセスの範囲が制限されていないため、アクセスのバンド幅が大きくなってしまう。これにより、変位ベクトルを求める処理負荷の増大や、変位ベクトルを求めるために必要な情報の増加による符号量の増大といった問題が生じる。   However, when obtaining a displacement vector based on depth, the range of depth access is not limited, and the access bandwidth becomes large. This causes problems such as an increase in processing load for obtaining a displacement vector and an increase in code amount due to an increase in information necessary for obtaining a displacement vector.

本発明は上記の点に鑑みてなされたものであり、デプスを用いた処理において、処理負荷を低減させ、符号量を減少可能な画像復号装置、及び画像符号化装置を提供する。   The present invention has been made in view of the above points, and provides an image decoding device and an image encoding device capable of reducing the processing load and reducing the amount of codes in processing using depth.

上記の課題を解決するために、本発明の一態様に係る画像復号装置は、予測パラメータの導出にデプスを用いる画像復号装置であって、復号済みの他のピクチャにおけるデプスから、予測パラメータの導出に用いるデプスを導出するデプス導出部と、上記デプス導出部が導出したデプスを用いて予測パラメータを導出する予測パラメータ復号部と、を備え、上記デプス導出部は、上記復号済みの他のピクチャにおける制限された位置のデプスを用いる構成である。   In order to solve the above problem, an image decoding apparatus according to an aspect of the present invention is an image decoding apparatus that uses depth to derive a prediction parameter, and derives a prediction parameter from the depth of another decoded picture. A depth deriving unit for deriving a depth to be used in the above, and a prediction parameter decoding unit for deriving a prediction parameter using the depth derived by the depth deriving unit, the depth deriving unit in the other decoded pictures In this configuration, the depth of the restricted position is used.

また、本発明の一態様に係る画像符号化装置は、予測パラメータの導出にデプスを用いる画像符号化装置であって、復号済みの他のピクチャにおけるデプスから、予測パラメータの導出に用いるデプスを導出するデプス導出部と、上記デプス導出部が導出したデプスを用いて予測パラメータを導出する予測パラメータ復号部と、を備え、上記デプス導出部は、上記復号済みの他のピクチャにおける制限された位置のデプスを用いる構成である。   An image encoding apparatus according to an aspect of the present invention is an image encoding apparatus that uses depth for derivation of a prediction parameter, and derives a depth used for derivation of a prediction parameter from depths of other decoded pictures. A depth derivation unit, and a prediction parameter decoding unit that derives a prediction parameter using the depth derived by the depth derivation unit, wherein the depth derivation unit This is a configuration using depth.

本発明の一態様によれば、復号済みの他のピクチャのデプスを取りに行く処理、すなわちデプスアクセスの範囲が無制限に広がることを防止することができる。これにより、デプスアクセスの処理負荷を軽くすることができるとともに、処理に必要な符号量を減らすことができるという効果を奏する。   According to one aspect of the present invention, it is possible to prevent a process for obtaining the depth of another decoded picture, that is, the range of depth access from being unlimitedly expanded. As a result, it is possible to reduce the processing load of depth access and to reduce the amount of code required for processing.

本発明の実施形態に係る画像伝送システムの構成を示す概略図である。1 is a schematic diagram illustrating a configuration of an image transmission system according to an embodiment of the present invention. (a)〜(f)は、本実施形態に係る符号化ストリームのデータの階層構造を示す図である。(A)-(f) is a figure which shows the hierarchical structure of the data of the encoding stream which concerns on this embodiment. 参照ピクチャリストの一例を示す概念図である。It is a conceptual diagram which shows an example of a reference picture list. 参照ピクチャの例を示す概念図である。It is a conceptual diagram which shows the example of a reference picture. 本実施形態に係る画像復号装置の構成を示す概略図である。It is the schematic which shows the structure of the image decoding apparatus which concerns on this embodiment. 本実施形態に係るインター予測パラメータ復号部の構成を示す概略図である。It is the schematic which shows the structure of the inter prediction parameter decoding part which concerns on this embodiment. 本実施形態に係るマージ予測パラメータ導出部の構成を示す概略図である。It is the schematic which shows the structure of the merge prediction parameter derivation | leading-out part which concerns on this embodiment. 本実施形態に係るAMVP予測パラメータ導出部の構成を示す概略図である。It is the schematic which shows the structure of the AMVP prediction parameter derivation | leading-out part which concerns on this embodiment. ベクトル候補の一例を示す概念図である。It is a conceptual diagram which shows an example of a vector candidate. 本実施形態に係る残差予測フラグ復号部の構成を示す概略図である。It is the schematic which shows the structure of the residual prediction flag decoding part which concerns on this embodiment. 本実施形態に係るインター予測画像生成部の構成を示す概略図である。It is the schematic which shows the structure of the inter estimated image generation part which concerns on this embodiment. 本実施形態に係る残差予測部の構成を示す概略図である。It is the schematic which shows the structure of the residual prediction part which concerns on this embodiment. (a)、(b)は、本実施形態に係る残差予測の概念図(その1)である。(A), (b) is a conceptual diagram (the 1) of the residual prediction which concerns on this embodiment. (a)〜(d)は、本実施形態に係る残差予測の概念図(その2)である。(A)-(d) is a conceptual diagram (the 2) of the residual prediction which concerns on this embodiment. 本実施形態に係るインター予測パラメータ復号制御部の構成を示す概略図である。It is the schematic which shows the structure of the inter prediction parameter decoding control part which concerns on this embodiment. 本実施形態に係る残差予測フラグ復号部が復号対象とする符号化データの構成を示す図である。It is a figure which shows the structure of the coding data made into the decoding object by the residual prediction flag decoding part which concerns on this embodiment. マージ候補の一例を示す図である。It is a figure which shows an example of a merge candidate. デプスDV導出部における処理を説明するための図である。It is a figure for demonstrating the process in a depth DV derivation | leading-out part. デプスDV導出部における処理を説明するための図である。It is a figure for demonstrating the process in a depth DV derivation | leading-out part. デプスDV導出部における処理を説明するための図である。It is a figure for demonstrating the process in a depth DV derivation | leading-out part. デプスDV導出部における処理を説明するための図である。It is a figure for demonstrating the process in a depth DV derivation | leading-out part. 本実施形態に係る画像符号化装置の構成を示すブロック図である。It is a block diagram which shows the structure of the image coding apparatus which concerns on this embodiment. 本実施形態に係るインター予測パラメータ符号化部の構成を示す概略図である。It is the schematic which shows the structure of the inter prediction parameter encoding part which concerns on this embodiment. デプスDV導出部における処理を説明するための図である。It is a figure for demonstrating the process in a depth DV derivation | leading-out part. デプスDV導出部における処理を説明するための図である。It is a figure for demonstrating the process in a depth DV derivation | leading-out part. デプスDV導出部における処理を説明するための図である。It is a figure for demonstrating the process in a depth DV derivation | leading-out part. デプスDV導出部における処理を説明するための図である。It is a figure for demonstrating the process in a depth DV derivation | leading-out part. デプスDV導出部における処理を説明するための図である。It is a figure for demonstrating the process in a depth DV derivation | leading-out part. デプスDV導出部における処理を説明するための図である。It is a figure for demonstrating the process in a depth DV derivation | leading-out part. (a)〜(c)は、デプスDV導出部における処理を説明するための図である。(A)-(c) is a figure for demonstrating the process in a depth DV derivation | leading-out part.

以下、図面を参照しながら本発明の実施形態について説明する。図1は、本実施形態に係る画像伝送システム1の構成を示す概略図である。画像伝送システム1は、複数のレイヤ画像を符号化した符号を伝送し、伝送された符号を復号した画像を表示するシステムである。画像伝送システム1は、画像符号化装置11、ネットワーク21、画像復号装置31及び画像表示装置41を含んで構成される。   Hereinafter, embodiments of the present invention will be described with reference to the drawings. FIG. 1 is a schematic diagram illustrating a configuration of an image transmission system 1 according to the present embodiment. The image transmission system 1 is a system that transmits a code obtained by encoding a plurality of layer images and displays an image obtained by decoding the transmitted code. The image transmission system 1 includes an image encoding device 11, a network 21, an image decoding device 31, and an image display device 41.

画像符号化装置11には、複数のレイヤ画像(テクスチャ画像ともいう)を示す信号Tが入力される。レイヤ画像とは、ある解像度及びある視点で視認もしくは撮影される画像である。複数のレイヤ画像を用いて3次元画像を符号化するビュースケーラブル符号化を行う場合、複数のレイヤ画像のそれぞれは、視点画像と呼ばれる。ここで、視点は撮影装置の位置又は観測点に相当する。例えば、複数の視点画像は、被写体に向かって左右の撮影装置のそれぞれが撮影した画像である。画像符号化装置11は、この信号のそれぞれを符号化して符号化ストリームTe(符号化データ)を生成する。符号化ストリームTeの詳細については、後述する。視点画像とは、ある視点において観測される2次元画像(平面画像)である。視点画像は、例えば2次元平面内に配置された画素毎の輝度値、又は色信号値で示される。以下では、1枚の視点画像又は、その視点画像を示す信号をピクチャ(picture)と呼ぶ。また、複数のレイヤ画像を用いて空間スケーラブル符号化を行う場合、その複数のレイヤ画像は、解像度の低いベースレイヤ画像と、解像度の高い拡張レイヤ画像からなる。複数のレイヤ画像を用いてSNRスケーラブル符号化を行う場合、その複数のレイヤ画像は、画質の低いベースレイヤ画像と、画質の高い拡張レイヤ画像からなる。なお、ビュースケーラブル符号化、空間スケーラブル符号化、SNRスケーラブル符号化を任意に組み合わせて行っても良い。本実施形態では、複数のレイヤ画像として、少なくともベースレイヤ画像と、ベースレイヤ画像以外の画像(拡張レイヤ画像)を含む画像の符号化および復号を扱う。複数のレイヤのうち、画像もしくは符号化パラメータにおいて参照関係(依存関係)にある2つのレイヤについて、参照される側の画像を、第1レイヤ画像、参照する側の画像を第2レイヤ画像と呼ぶ。例えば、ベースレイヤを参照して符号化される(ベースレイヤ以外の)エンハンスレイヤ画像がある場合、ベースレイヤ画像を第1レイヤ画像、エンハンスレイヤ画像を第2レイヤ画像として扱う。なお、エンハンスレイヤ画像の例としては、ベースビュー以外の視点の画像、デプスの画像などがある。   A signal T indicating a plurality of layer images (also referred to as texture images) is input to the image encoding device 11. A layer image is an image that is viewed or photographed at a certain resolution and a certain viewpoint. When performing view scalable coding in which a three-dimensional image is coded using a plurality of layer images, each of the plurality of layer images is referred to as a viewpoint image. Here, the viewpoint corresponds to the position or observation point of the photographing apparatus. For example, the plurality of viewpoint images are images taken by the left and right photographing devices toward the subject. The image encoding device 11 encodes each of the signals to generate an encoded stream Te (encoded data). Details of the encoded stream Te will be described later. A viewpoint image is a two-dimensional image (planar image) observed at a certain viewpoint. The viewpoint image is indicated by, for example, a luminance value or a color signal value for each pixel arranged in a two-dimensional plane. Hereinafter, one viewpoint image or a signal indicating the viewpoint image is referred to as a picture. In addition, when performing spatial scalable coding using a plurality of layer images, the plurality of layer images include a base layer image having a low resolution and an enhancement layer image having a high resolution. When SNR scalable encoding is performed using a plurality of layer images, the plurality of layer images are composed of a base layer image with low image quality and an extended layer image with high image quality. Note that view scalable coding, spatial scalable coding, and SNR scalable coding may be arbitrarily combined. In the present embodiment, encoding and decoding of an image including at least a base layer image and an image other than the base layer image (enhancement layer image) is handled as the plurality of layer images. Of the multiple layers, for two layers that have a reference relationship (dependency relationship) in the image or encoding parameter, the image on the reference side is referred to as a first layer image, and the image on the reference side is referred to as a second layer image. . For example, when there is an enhancement layer image (other than the base layer) that is encoded with reference to the base layer, the base layer image is treated as a first layer image and the enhancement layer image is treated as a second layer image. Note that examples of the enhancement layer image include an image of a viewpoint other than the base view, a depth image, and the like.

ネットワーク21は、画像符号化装置11が生成した符号化ストリームTeを画像復号装置31に伝送する。ネットワーク21は、インターネット(internet)、広域ネットワーク(WAN:Wide Area Network)、小規模ネットワーク(LAN:Local Area Network)又はこれらの組み合わせである。ネットワーク21は、必ずしも双方向の通信網に限らず、地上波ディジタル放送、衛星放送等の放送波を伝送する一方向又は双方向の通信網であっても良い。また、ネットワーク21は、DVD(Digital Versatile Disc)、BD(Blue-ray Disc)等の符号化ストリームTeを記録した記憶媒体で代替されても良い。   The network 21 transmits the encoded stream Te generated by the image encoding device 11 to the image decoding device 31. The network 21 is the Internet, a wide area network (WAN), a small network (LAN), or a combination thereof. The network 21 is not necessarily limited to a bidirectional communication network, and may be a unidirectional or bidirectional communication network that transmits broadcast waves such as terrestrial digital broadcasting and satellite broadcasting. The network 21 may be replaced by a storage medium that records an encoded stream Te such as a DVD (Digital Versatile Disc) or a BD (Blue-ray Disc).

画像復号装置31は、ネットワーク21が伝送した符号化ストリームTeのそれぞれを復号し、それぞれ復号した複数の復号レイヤ画像Td(復号視点画像Td)を生成する。   The image decoding device 31 decodes each of the encoded streams Te transmitted by the network 21, and generates a plurality of decoded layer images Td (decoded viewpoint images Td) respectively decoded.

画像表示装置41は、画像復号装置31が生成した複数の復号レイヤ画像Tdの全部又は一部を表示する。例えば、ビュースケーラブル符号化においては、全部の場合、3次元画像(立体画像)や自由視点画像が表示され、一部の場合、2次元画像が表示される。画像表示装置41は、例えば、液晶ディスプレイ、有機EL(Electro-luminescence)ディスプレイ等の表示デバイスを備える。また、空間スケーラブル符号化、SNRスケーラブル符号化では、画像復号装置31、画像表示装置41が高い処理能力を有する場合には、画質の高い拡張レイヤ画像を表示し、より低い処理能力しか有しない場合には、拡張レイヤほど高い処理能力、表示能力を必要としないベースレイヤ画像を表示する。   The image display device 41 displays all or part of the plurality of decoded layer images Td generated by the image decoding device 31. For example, in view scalable coding, a 3D image (stereoscopic image) and a free viewpoint image are displayed in all cases, and a 2D image is displayed in some cases. The image display device 41 includes, for example, a display device such as a liquid crystal display or an organic EL (Electro-luminescence) display. In addition, in the spatial scalable coding and SNR scalable coding, when the image decoding device 31 and the image display device 41 have a high processing capability, a high-quality enhancement layer image is displayed and only a lower processing capability is provided. Displays a base layer image that does not require higher processing capability and display capability as an extension layer.

<符号化ストリームTeの構造> 本実施形態に係る画像符号化装置11および画像復号装置31の詳細な説明に先立って、画像符号化装置11によって生成され、画像復号装置31によって復号される符号化ストリームTeのデータ構造について説明する。     <Structure of Encoded Stream Te> Prior to detailed description of the image encoding device 11 and the image decoding device 31 according to the present embodiment, encoding generated by the image encoding device 11 and decoded by the image decoding device 31 The data structure of the stream Te will be described.

図2は、符号化ストリームTeにおけるデータの階層構造を示す図である。符号化ストリームTeは、例示的に、シーケンス、およびシーケンスを構成する複数のピクチャを含む。図2の(a)〜(f)は、それぞれ、シーケンスSEQを既定するシーケンスレイヤ、ピクチャPICTを規定するピクチャレイヤ、スライスSを規定するスライスレイヤ、スライスデータを規定するスライスデータレイヤ、スライスデータに含まれる符号化ツリーユニットを規定する符号化ツリーレイヤ、符号化ツリーに含まれる符号化単位(Coding Unit;CU)を規定する符号化ユニットレイヤを示す図である。   FIG. 2 is a diagram illustrating a hierarchical structure of data in the encoded stream Te. The encoded stream Te illustratively includes a sequence and a plurality of pictures constituting the sequence. (A) to (f) of FIG. 2 respectively show a sequence layer that defines a sequence SEQ, a picture layer that defines a picture PICT, a slice layer that defines a slice S, a slice data layer that defines slice data, and a slice data. It is a figure which shows the encoding unit layer which prescribes | regulates the encoding tree layer which prescribes | regulates the encoding tree unit contained, and the coding unit (Coding Unit; CU) contained in a coding tree.

(シーケンスレイヤ) シーケンスレイヤでは、処理対象のシーケンスSEQ(以下、対象シーケンスとも称する)を復号するために画像復号装置31が参照するデータの集合が規定されている。シーケンスSEQは、図2の(a)に示すように、ビデオパラメータセット(Video Parameter Set)シーケンスパラメータセットSPS(Sequence Parameter Set)、ピクチャパラメータセットPPS(Picture Parameter Set)、ピクチャPICT、及び、付加拡張情報SEI(Supplemental Enhancement Information)を含んでいる。ここで#の後に示される値はレイヤIDを示す。図2では、#0と#1すなわちレイヤ0とレイヤ1の符号化データが存在する例を示すが、レイヤの種類およびレイヤの数はこれによらない。     (Sequence Layer) In the sequence layer, a set of data referred to by the image decoding device 31 for decoding a sequence SEQ to be processed (hereinafter also referred to as a target sequence) is defined. As shown in FIG. 2A, the sequence SEQ includes a video parameter set, a sequence parameter set SPS (Sequence Parameter Set), a picture parameter set PPS (Picture Parameter Set), a picture PICT, and an additional extension. Information SEI (Supplemental Enhancement Information) is included. Here, the value indicated after # indicates the layer ID. FIG. 2 shows an example in which encoded data of # 0 and # 1, that is, layer 0 and layer 1, exists, but the type of layer and the number of layers are not dependent on this.

ビデオパラメータセットVPSは、複数のレイヤから構成されている動画像において、複数の動画像に共通する符号化パラメータの集合および動画像に含まれる複数のレイヤおよび個々のレイヤに関連する符号化パラメータの集合が規定されている。   The video parameter set VPS is a set of encoding parameters common to a plurality of moving images, a plurality of layers included in the moving image, and encoding parameters related to individual layers in a moving image composed of a plurality of layers. A set is defined.

シーケンスパラメータセットSPSでは、対象シーケンスを復号するために画像復号装置31が参照する符号化パラメータの集合が規定されている。例えば、ピクチャの幅や高さが規定される。   In the sequence parameter set SPS, a set of encoding parameters referred to by the image decoding device 31 in order to decode the target sequence is defined. For example, the width and height of the picture are defined.

ピクチャパラメータセットPPSでは、対象シーケンス内の各ピクチャを復号するために画像復号装置31が参照する符号化パラメータの集合が規定されている。例えば、ピクチャの復号に用いられる量子化幅の基準値(pic_init_qp_minus26)や重み付き予測の適用を示すフラグ(weighted_pred_flag)が含まれる。なお、PPSは複数存在してもよい。その場合、対象シーケンス内の各ピクチャから複数のPPSの何れかを選択する。   In the picture parameter set PPS, a set of encoding parameters referred to by the image decoding device 31 in order to decode each picture in the target sequence is defined. For example, a quantization width reference value (pic_init_qp_minus26) used for picture decoding and a flag (weighted_pred_flag) indicating application of weighted prediction are included. A plurality of PPS may exist. In that case, one of a plurality of PPSs is selected from each picture in the target sequence.

(ピクチャレイヤ) ピクチャレイヤでは、処理対象のピクチャPICT(以下、対象ピクチャとも称する)を復号するために画像復号装置31が参照するデータの集合が規定されている。ピクチャPICTは、図2の(b)に示すように、スライスS0〜SNS−1を含んでいる(NSはピクチャPICTに含まれるスライスの総数)。     (Picture Layer) In the picture layer, a set of data referred to by the image decoding device 31 to decode a picture PICT to be processed (hereinafter also referred to as a target picture) is defined. As shown in FIG. 2B, the picture PICT includes slices S0 to SNS-1 (NS is the total number of slices included in the picture PICT).

なお、以下、スライスS0〜SNS−1のそれぞれを区別する必要が無い場合、符号の添え字を省略して記述することがある。また、以下に説明する符号化ストリームTeに含まれるデータであって、添え字を付している他のデータについても同様である。   In addition, hereinafter, when it is not necessary to distinguish each of the slices S0 to SNS-1, the subscripts may be omitted. The same applies to data included in an encoded stream Te described below and to which other subscripts are attached.

(スライスレイヤ) スライスレイヤでは、処理対象のスライスS(対象スライスとも称する)を復号するために画像復号装置31が参照するデータの集合が規定されている。スライスSは、図2の(c)に示すように、スライスヘッダSH、および、スライスデータSDATAを含んでいる。スライスヘッダSHには、対象スライスの復号方法を決定するために画像復号装置31が参照する符号化パラメータ群が含まれる。スライスタイプを指定するスライスタイプ指定情報(slice_type)は、スライスヘッダSHに含まれる符号化パラメータの一例である。     (Slice Layer) In the slice layer, a set of data referred to by the image decoding device 31 for decoding the slice S to be processed (also referred to as a target slice) is defined. As shown in FIG. 2C, the slice S includes a slice header SH and slice data SDATA. The slice header SH includes a coding parameter group that the image decoding device 31 refers to in order to determine a decoding method of the target slice. The slice type designation information (slice_type) that designates the slice type is an example of an encoding parameter included in the slice header SH.

スライスタイプ指定情報により指定可能なスライスタイプとしては、(1)符号化の際にイントラ予測のみを用いるIスライス、(2)符号化の際に単方向予測、または、イントラ予測を用いるPスライス、(3)符号化の際に単方向予測、双方向予測、または、イントラ予測を用いるBスライスなどが挙げられる。なお、スライスヘッダSHには、上記シーケンスレイヤに含まれる、ピクチャパラメータセットPPSへの参照(pic_parameter_set_id)を含んでいても良い。   As slice types that can be specified by the slice type specification information, (1) I slice using only intra prediction at the time of encoding, (2) P slice using unidirectional prediction or intra prediction at the time of encoding, (3) B-slice using unidirectional prediction, bidirectional prediction, or intra prediction at the time of encoding may be used. Note that the slice header SH may include a reference (pic_parameter_set_id) to the picture parameter set PPS included in the sequence layer.

(スライスデータレイヤ) スライスデータレイヤでは、処理対象のスライスデータSDATAを復号するために画像復号装置31が参照するデータの集合が規定されている。スライスデータSDATAは、図2の(d)に示すように、符号化ツリーユニット(CTU: Coded Tree Unit)を含んでいる。CTUは、スライスを構成する固定サイズ(例えば64×64)のブロックであり、最大符号化単位(LCU:Largest Cording Unit)と呼ぶこともある。     (Slice Data Layer) In the slice data layer, a set of data referred to by the image decoding device 31 for decoding the slice data SDATA to be processed is defined. The slice data SDATA includes a coded tree unit (CTU) as shown in FIG. A CTU is a block of a fixed size (for example, 64 × 64) that constitutes a slice, and is sometimes called a maximum coding unit (LCU).

(符号化ツリーレイヤ) 符号化ツリーレイヤは、図2の(e)に示すように、処理対象の符号化ツリーブロックを復号するために画像復号装置31が参照するデータの集合が規定されている。符号化ツリーユニットは、再帰的な4分木分割により分割される。再帰的な4分木分割により得られる木構造のノードのことを符号化ツリー(coding tree)と称する。4分木の中間ノードは、符号化4分木ツリー(CQT: Coded Quad Tree)であり、CTUは、最上位のCQTを含むものとして規定される。CQTは、分割フラグ(split_flag)を含み、split_flagが1の場合には、4つのCQTに分割される(4つのCQTを含む)。split_flagが0の場合には、CQTは末端ノードである符号化ユニット(CU:Coded Unit)を含む。符号化ユニットCUは、符号化処理の基本的な単位となる。また、符号化ツリーユニットCTUのサイズ64×64画素の場合には、符号化ユニットのサイズは、64×64画素、32×32画素、16×16画素、および、8×8画素の何れかをとり得る。     (Encoding Tree Layer) As shown in FIG. 2E, the encoding tree layer defines a set of data referred to by the image decoding device 31 in order to decode the encoding tree block to be processed. . The coding tree unit is divided by recursive quadtree division. A tree-structured node obtained by recursive quadtree partitioning is called a coding tree. The intermediate node of the quadtree is a coded quadtree (CQT), and the CTU is defined as including the highest CQT. The CQT includes a split flag (split_flag). When the split_flag is 1, the CQT is divided into four CQTs (including four CQTs). When split_flag is 0, CQT includes a coding unit (CU: Coded Unit) which is a terminal node. The encoding unit CU is a basic unit of the encoding process. When the size of the encoding tree unit CTU is 64 × 64 pixels, the size of the encoding unit is any of 64 × 64 pixels, 32 × 32 pixels, 16 × 16 pixels, and 8 × 8 pixels. It can take.

(符号化ユニットレイヤ) 符号化ユニットレイヤは、図2の(f)に示すように、処理対象の符号化ユニットを復号するために画像復号装置31が参照するデータの集合が規定されている。具体的には、符号化ユニットは、CUヘッダCUH、予測ツリー、変換ツリー、CUヘッダCUFから構成される。CUヘッダCUHでは、符号化ユニットが、イントラ予測を用いるユニットであるか、インター予測を用いるユニットであるかなどが規定される。符号化ユニットは、予測ツリー(prediction tree;PT)および変換ツリー(transform tree;TT)のルートとなる。CUヘッダCUFは、予測ツリーと変換ツリーの間、もしくは、変換ツリーの後に含まれる。     (Encoding Unit Layer) As shown in (f) of FIG. 2, the encoding unit layer defines a set of data that the image decoding device 31 refers to in order to decode the encoding unit to be processed. Specifically, the encoding unit includes a CU header CUH, a prediction tree, a conversion tree, and a CU header CUF. In the CU header CUH, it is defined whether the coding unit is a unit using intra prediction or a unit using inter prediction. The encoding unit is the root of a prediction tree (PT) and a transform tree (TT). The CU header CUF is included between the prediction tree and the conversion tree or after the conversion tree.

予測ツリーは、符号化ユニットが1または複数の予測ブロックに分割され、各予測ブロックの位置とサイズとが規定される。別の表現でいえば、予測ブロックは、符号化ユニットを構成する1または複数の重複しない領域である。また、予測ツリーは、上述の分割により得られた1または複数の予測ブロックを含む。予測処理は、この予測ブロックごとに行われる。以下、予測の単位である予測ブロックのことを、予測単位(prediction unit;PU、予測ユニット)とも称する。   In the prediction tree, the coding unit is divided into one or a plurality of prediction blocks, and the position and size of each prediction block are defined. In other words, the prediction block is one or a plurality of non-overlapping areas constituting the coding unit. The prediction tree includes one or a plurality of prediction blocks obtained by the above division. Prediction processing is performed for each prediction block. Hereinafter, a prediction block which is a unit of prediction is also referred to as a prediction unit (PU, prediction unit).

予測ツリーにおける分割の種類は、大まかにいえば、イントラ予測の場合と、インター予測の場合との2つがある。イントラ予測とは、同一ピクチャ内の予測であり、インター予測とは、互いに異なるピクチャ間(例えば、表示時刻間、レイヤ画像間)で行われる予測処理を指す。イントラ予測の場合、分割方法は、2N×2N(符号化ユニットと同一サイズ)と、N×Nとがある。   Broadly speaking, there are two types of division in the prediction tree: intra prediction and inter prediction. Intra prediction is prediction within the same picture, and inter prediction refers to prediction processing performed between different pictures (for example, between display times and between layer images). In the case of intra prediction, there are 2N × 2N (the same size as the encoding unit) and N × N division methods.

また、インター予測の場合、分割方法は、符号化データのpart_modeにより符号化され、2N×2N(符号化ユニットと同一サイズ)、2N×N、2N×nU、2N×nD、N×2N、nL×2N、nR×2N、および、N×Nなどがある。なお、2N×nUは、2N×2Nの符号化ユニットを上から順に2N×0.5Nと2N×1.5Nの2領域に分割することを示す。2N×nDは、2N×2Nの符号化ユニットを上から順に2N×1.5Nと2N×0.5Nの2領域に分割することを示す。nL×2Nは、2N×2Nの符号化ユニットを左から順に0.5N×2Nと1.5N×2Nの2領域に分割することを示す。nR×2Nは、2N×2Nの符号化ユニットを左から順に1.5N×2Nと0.5N×1.5Nの2領域に分割することを示す。分割数は1、2、4のいずれかであるため、CUに含まれるPUは1個から4個である。これらのPUを順にPU0、PU1、PU2、PU3と表現する。   Further, in the case of inter prediction, the division method is encoded by part_mode of encoded data, and 2N × 2N (the same size as the encoding unit), 2N × N, 2N × nU, 2N × nD, N × 2N, nL X2N, nRx2N, and NxN. Note that 2N × nU indicates that a 2N × 2N encoding unit is divided into two regions of 2N × 0.5N and 2N × 1.5N in order from the top. 2N × nD indicates that a 2N × 2N encoding unit is divided into two regions of 2N × 1.5N and 2N × 0.5N in order from the top. nL × 2N indicates that a 2N × 2N encoding unit is divided into two regions of 0.5N × 2N and 1.5N × 2N in order from the left. nR × 2N indicates that a 2N × 2N encoding unit is divided into two regions of 1.5N × 2N and 0.5N × 1.5N in order from the left. Since the number of divisions is one of 1, 2, and 4, PUs included in the CU are 1 to 4. These PUs are expressed as PU0, PU1, PU2, and PU3 in order.

また、変換ツリーにおいては、符号化ユニットが1または複数の変換ブロックに分割され、各変換ブロックの位置とサイズとが規定される。別の表現でいえば、変換ブロックは、符号化ユニットを構成する1または複数の重複しない領域のことである。また、変換ツリーは、上述の分割より得られた1または複数の変換ブロックを含む。変換ツリーにおける分割には、符号化ユニットと同一のサイズの領域を変換ブロックとして割り付けるものと、上述したツリーブロックの分割と同様、再帰的な4分木分割によるものがある。変換処理は、この変換ブロックごとに行われる。以下、変換の単位である変換ブロックのことを、変換単位(transform unit;TU)とも称する。   In the transform tree, the encoding unit is divided into one or a plurality of transform blocks, and the position and size of each transform block are defined. In other words, the transform block is one or a plurality of non-overlapping areas constituting the encoding unit. The conversion tree includes one or a plurality of conversion blocks obtained by the above division. There are two types of division in the transformation tree: one in which an area having the same size as the encoding unit is allocated as a transformation block, and the other in division by recursive quadtree division, similar to the above-described division in the tree block. The conversion process is performed for each conversion block. Hereinafter, a transform block that is a unit of transform is also referred to as a transform unit (TU).

(予測パラメータ) 予測ユニットの予測画像は、予測ユニットに付随する予測パラメータによって導出される。予測パラメータには、イントラ予測の予測パラメータもしくはインター予測の予測パラメータがある。以下、インター予測の予測パラメータ(インター予測パラメータ)について説明する。インター予測パラメータは、予測リスト利用フラグpredFlagL0、predFlagL1と、参照ピクチャインデックスrefIdxL0、refIdxL1と、ベクトルmvL0、mvL1から構成される。予測リスト利用フラグpredFlagL0、predFlagL1は、各々L0リスト、L1リストと呼ばれる参照ピクチャリストが用いられるか否かを示すフラグであり、値が1の場合に対応する参照ピクチャリストが用いられる。なお、本明細書中「XXであるか否かを示すフラグ」と記す場合、1をXXである場合、0をXXではない場合とし、論理否定、論理積などでは1を真、0を偽と扱う(以下同様)。但し、実際の装置や方法では真値、偽値として他の値を用いることもできる。2つの参照ピクチャリストが用いられる場合、つまり、predFlagL0=1, predFlagL1=1の場合が、双予測に対応し、1つの参照ピクチャリストを用いる場合、すなわち(predFlagL0, predFlagL1) = (1, 0)もしくは(predFlagL0, predFlagL1) = (0, 1)の場合が単予測に対応する。なお、予測リスト利用フラグの情報は、後述のインター予測フラグinter_pred_idcで表現することもできる。通常、後述の予測画像生成部、予測パラメータメモリでは、予測リスト利用フラグが用いれ、符号化データから、どの参照ピクチャリストが用いられるか否かの情報を復号する場合にはインター予測フラグinter_pred_idcが用いられる。     (Prediction parameter) The prediction image of a prediction unit is derived | led-out by the prediction parameter accompanying a prediction unit. The prediction parameters include a prediction parameter for intra prediction or a prediction parameter for inter prediction. Hereinafter, prediction parameters for inter prediction (inter prediction parameters) will be described. The inter prediction parameter includes prediction list use flags predFlagL0 and predFlagL1, reference picture indexes refIdxL0 and refIdxL1, and vectors mvL0 and mvL1. The prediction list use flags predFlagL0 and predFlagL1 are flags indicating whether or not reference picture lists called L0 list and L1 list are used, respectively, and a reference picture list corresponding to a value of 1 is used. In this specification, when “flag indicating whether or not XX” is described, 1 is XX, 0 is not XX, 1 is true and 0 is false in logical negation and logical product. (The same applies hereinafter). However, other values can be used as true values and false values in an actual apparatus or method. When two reference picture lists are used, that is, when predFlagL0 = 1 and predFlagL1 = 1, this corresponds to bi-prediction, and when one reference picture list is used, that is, (predFlagL0, predFlagL1) = (1, 0) Or the case of (predFlagL0, predFlagL1) = (0, 1) corresponds to single prediction. Note that the prediction list use flag information can also be expressed by an inter prediction flag inter_pred_idc described later. Normally, a prediction list use flag is used in a prediction image generation unit and a prediction parameter memory described later, and an inter prediction flag inter_pred_idc is used when decoding information on which reference picture list is used from encoded data. It is done.

符号化データに含まれるインター予測パラメータを導出するためのシンタックス要素には、例えば、分割モードpart_mode、マージフラグmerge_flag、マージインデックスmerge_idx、インター予測フラグinter_pred_idc、参照ピクチャインデックスrefIdxLX、予測ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLXがある。   Syntax elements for deriving inter prediction parameters included in the encoded data include, for example, a partition mode part_mode, a merge flag merge_flag, a merge index merge_idx, an inter prediction flag inter_pred_idc, a reference picture index refIdxLX, a prediction vector index mvp_LX_idx, and a difference There is a vector mvdLX.

(参照ピクチャリストの一例) 次に、参照ピクチャリストの一例について説明する。参照ピクチャリストとは、参照ピクチャメモリ306(図5)に記憶された参照ピクチャからなる列である。図3は、参照ピクチャリストの一例を示す概念図である。参照ピクチャリスト601において、左右に一列に配列された5個の長方形は、それぞれ参照ピクチャを示す。左端から右へ順に示されている符号、P1、P2、Q0、P3、P4は、それぞれの参照ピクチャを示す符号である。P1等のPとは、視点Pを示し、そしてQ0のQとは、視点Pとは異なる視点Qを示す。P及びQの添字は、ピクチャ順序番号POCを示す。refIdxLXの真下の下向きの矢印は、参照ピクチャインデックスrefIdxLXが、参照ピクチャメモリ306において参照ピクチャQ0を参照するインデックスであることを示す。     (Example of Reference Picture List) Next, an example of the reference picture list will be described. The reference picture list is a sequence of reference pictures stored in the reference picture memory 306 (FIG. 5). FIG. 3 is a conceptual diagram illustrating an example of a reference picture list. In the reference picture list 601, five rectangles arranged in a line on the left and right indicate reference pictures, respectively. The codes P1, P2, Q0, P3, and P4 shown in order from the left end to the right are codes indicating respective reference pictures. P such as P1 indicates the viewpoint P, and Q of Q0 indicates a viewpoint Q different from the viewpoint P. The subscripts P and Q indicate the picture order number POC. A downward arrow directly below refIdxLX indicates that the reference picture index refIdxLX is an index that refers to the reference picture Q0 in the reference picture memory 306.

(参照ピクチャの例) 次に、ベクトルを導出する際に用いる参照ピクチャの例について説明する。図4は、参照ピクチャの例を示す概念図である。図4において、横軸は表示時刻を示し、縦軸は視点を示す。図4に示されている、縦2行、横3列(計6個)の長方形は、それぞれピクチャを示す。6個の長方形のうち、下行の左から2列目の長方形は復号対象のピクチャ(対象ピクチャ)を示し、残りの5個の長方形がそれぞれ参照ピクチャを示す。対象ピクチャから上向きの矢印で示される参照ピクチャQ0は対象ピクチャと同表示時刻であって視点が異なるピクチャである。対象ピクチャを基準とする変位予測においては、参照ピクチャQ0が用いられる。対象ピクチャから左向きの矢印で示される参照ピクチャP1は、対象ピクチャと同じ視点であって、過去のピクチャである。対象ピクチャから右向きの矢印で示される参照ピクチャP2は、対象ピクチャと同じ視点であって、未来のピクチャである。対象ピクチャを基準とする動き予測においては、参照ピクチャP1又はP2が用いられる。     (Example of reference picture) Next, an example of a reference picture used for deriving a vector will be described. FIG. 4 is a conceptual diagram illustrating an example of a reference picture. In FIG. 4, the horizontal axis indicates the display time, and the vertical axis indicates the viewpoint. The rectangles shown in FIG. 4 with 2 rows and 3 columns (6 in total) indicate pictures. Among the six rectangles, the rectangle in the second column from the left in the lower row indicates a picture to be decoded (target picture), and the remaining five rectangles indicate reference pictures. A reference picture Q0 indicated by an upward arrow from the target picture is a picture that has the same display time as the target picture and a different viewpoint. In the displacement prediction based on the target picture, the reference picture Q0 is used. A reference picture P1 indicated by a left-pointing arrow from the target picture is a past picture at the same viewpoint as the target picture. A reference picture P2 indicated by a right-pointing arrow from the target picture is a future picture at the same viewpoint as the target picture. In motion prediction based on the target picture, the reference picture P1 or P2 is used.

(インター予測フラグと予測リスト利用フラグ) インター予測フラグと、予測リスト利用フラグpredFlagL0、predFlagL1の関係は以下のように相互に変換可能である。そのため、インター予測パラメータとしては、予測リスト利用フラグを用いても良いし、インター予測フラグを用いてもよい。また、以下、予測リスト利用フラグを用いた判定は、インター予測フラグに置き替えても可能である。逆に、インター予測フラグを用いた判定は、予測リスト利用フラグに置き替えても可能である。     (Inter prediction flag and prediction list utilization flag) The relationship between the inter prediction flag and the prediction list utilization flags predFlagL0 and predFlagL1 can be mutually converted as follows. Therefore, as an inter prediction parameter, a prediction list use flag may be used, or an inter prediction flag may be used. In addition, hereinafter, the determination using the prediction list use flag may be replaced with the inter prediction flag. Conversely, the determination using the inter prediction flag can be performed by replacing the prediction list use flag.

インター予測フラグ = (predFlagL1<<1) + predFlagL0
predFlagL0 =インター予測フラグ & 1
predFlagL1 =インター予測フラグ >> 1
ここで、>>は右シフト、<<は左シフトである。
Inter prediction flag = (predFlagL1 << 1) + predFlagL0
predFlagL0 = Inter prediction flag & 1
predFlagL1 = Inter prediction flag >> 1
Here, >> is a right shift, and << is a left shift.

(マージ予測とAMVP予測) 予測パラメータの復号(符号化)方法には、マージ予測(merge)モードとAMVP(Adaptive Motion Vector Prediction、適応動きベクトル予測)モードがある、マージフラグmerge_flagは、これらを識別するためのフラグである。マージ予測モードでも、AMVPモードでも、既に処理済みのブロックの予測パラメータを用いて、対象PUの予測パラメータが導出される。マージ予測モードは、予測リスト利用フラグpredFlagLX(インター予測フラグinter_pred_idcinter_pred_idc)、参照ピクチャインデックスrefIdxLX、ベクトルmvLXを符号化データに含めずに、既に導出した予測パラメータをそのまま用いるモードであり、AMVPモードは、インター予測フラグinter_pred_idcinter_pred_idc、参照ピクチャインデックスrefIdxLX、ベクトルmvLXを符号化データに含めるモードである。なおベクトルmvLXは、予測ベクトルを示す予測ベクトルインデックスmvp_LX_idxと差分ベクトル(mvdLX)として符号化される。     (Merge Prediction and AMVP Prediction) The prediction parameter decoding (encoding) method includes a merge prediction (merge) mode and an AMVP (Adaptive Motion Vector Prediction) mode. The merge flag merge_flag identifies these. It is a flag to do. In both the merge prediction mode and the AMVP mode, the prediction parameter of the target PU is derived using the prediction parameter of the already processed block. The merge prediction mode is a mode that uses the prediction parameter already derived without including the prediction list use flag predFlagLX (inter prediction flag inter_pred_idcinter_pred_idc), the reference picture index refIdxLX, and the vector mvLX in the encoded data. The AMVP mode In this mode, the prediction flag inter_pred_idcinter_pred_idc, the reference picture index refIdxLX, and the vector mvLX are included in the encoded data. The vector mvLX is encoded as a prediction vector index mvp_LX_idx indicating a prediction vector and a difference vector (mvdLX).

インター予測フラグinter_pred_idcは、参照ピクチャの種類および数を示すデータであり、Pred_L0、Pred_L1、Pred_Biの何れかの値をとる。Pred_L0、Pred_L1は、各々L0リスト、L1リストと呼ばれる参照ピクチャリストに記憶された参照ピクチャが用いられることを示し、共に1枚の参照ピクチャを用いること(単予測)を示す。L0リスト、L1リストを用いた予測を各々L0予測、L1予測と呼ぶ。Pred_Biは2枚の参照ピクチャを用いること(双予測)を示し、L0リストとL1リストに記憶された参照ピクチャの2つを用いることを示す。予測ベクトルインデックスmvp_LX_idxは予測ベクトルを示すインデックスであり、参照ピクチャインデックスrefIdxLXは、参照ピクチャリストに記憶された参照ピクチャを示すインデックスである。なお、LXは、L0予測とL1予測を区別しない場合に用いられる記述方法であり、LXをL0、L1に置き換えることでL0リストに対するパラメータとL1リストに対するパラメータを区別するする。例えば、refIdxL0はL0予測に用いる参照ピクチャインデックス、refIdxL1はL1予測に用いる参照ピクチャインデックス、refIdx(refIdxLX)は、refIdxL0とrefIdxL1を区別しない場合に用いられる表記である。   The inter prediction flag inter_pred_idc is data indicating the type and number of reference pictures, and takes any value of Pred_L0, Pred_L1, and Pred_Bi. Pred_L0 and Pred_L1 indicate that reference pictures stored in reference picture lists called an L0 list and an L1 list are used, respectively, and that both use one reference picture (single prediction). Prediction using the L0 list and the L1 list are referred to as L0 prediction and L1 prediction, respectively. Pred_Bi indicates that two reference pictures are used (bi-prediction), and indicates that two reference pictures stored in the L0 list and the L1 list are used. The prediction vector index mvp_LX_idx is an index indicating a prediction vector, and the reference picture index refIdxLX is an index indicating a reference picture stored in the reference picture list. Note that LX is a description method used when L0 prediction and L1 prediction are not distinguished. By replacing LX with L0 and L1, parameters for the L0 list and parameters for the L1 list are distinguished. For example, refIdxL0 is a reference picture index used for L0 prediction, refIdxL1 is a reference picture index used for L1 prediction, and refIdx (refIdxLX) is a notation used when refIdxL0 and refIdxL1 are not distinguished.

マージインデックスmerge_idxは、処理が完了したブロックから導出される予測パラメータ候補(マージ候補)のうち、いずれかの予測パラメータを復号対象ブロックの予測パラメータとして用いるかを示すインデックスである。   The merge index merge_idx is an index indicating whether any prediction parameter is used as a prediction parameter of a decoding target block among prediction parameter candidates (merge candidates) derived from a block for which processing has been completed.

(動きベクトルと変位ベクトル) ベクトルmvLXには、動きベクトルと変位ベクトル(disparity vector、視差ベクトル)がある。動きベクトルとは、あるレイヤのある表示時刻でのピクチャにおけるブロックの位置と、異なる表示時刻(例えば、隣接する離散時刻)における同一のレイヤのピクチャにおける対応するブロックの位置との間の位置のずれを示すベクトルである。変位ベクトルとは、あるレイヤのある表示時刻でのピクチャにおけるブロックの位置と、同一の表示時刻における異なるレイヤのピクチャにおける対応するブロックの位置との間の位置のずれを示すベクトルである。異なるレイヤのピクチャとしては、異なる視点のピクチャである場合、もしくは、異なる解像度のピクチャである場合などがある。特に、異なる視点のピクチャに対応する変位ベクトルを視差ベクトルと呼ぶ。以下の説明では、動きベクトルと変位ベクトルを区別しない場合には、単にベクトルmvLXと呼ぶ。ベクトルmvLXに関する予測ベクトル、差分ベクトルを、それぞれ予測ベクトルmvpLX、差分ベクトルmvdLXと呼ぶ。ベクトルmvLXおよび差分ベクトルmvdLXが、動きベクトルであるか、変位ベクトルであるかは、ベクトルに付随する参照ピクチャインデックスrefIdxLXを用いて行われる。     (Motion Vector and Displacement Vector) The vector mvLX includes a motion vector and a displacement vector (disparity vector). A motion vector is a positional shift between the position of a block in a picture at a certain display time of a layer and the position of the corresponding block in a picture of the same layer at a different display time (for example, an adjacent discrete time). It is a vector which shows. The displacement vector is a vector indicating a positional shift between the position of a block in a picture at a certain display time of a certain layer and the position of a corresponding block in a picture of a different layer at the same display time. The pictures in different layers may be pictures from different viewpoints or pictures with different resolutions. In particular, a displacement vector corresponding to pictures of different viewpoints is called a disparity vector. In the following description, when a motion vector and a displacement vector are not distinguished, they are simply referred to as a vector mvLX. A prediction vector and a difference vector related to the vector mvLX are referred to as a prediction vector mvpLX and a difference vector mvdLX, respectively. Whether the vector mvLX and the difference vector mvdLX are motion vectors or displacement vectors is determined using a reference picture index refIdxLX associated with the vectors.

(画像復号装置の構成) 次に、本実施形態に係る画像復号装置31の構成について説明する。図5は、本実施形態に係る画像復号装置31の構成を示す概略図である。画像復号装置31は、エントロピー復号部301、予測パラメータ復号部302、参照ピクチャメモリ(参照画像記憶部、フレームメモリ)306、予測パラメータメモリ(予測パラメータ記憶部、フレームメモリ)307、予測画像生成部308、逆量子化・逆DCT部311、及び加算部312、残差格納部313(残差記録部)を含んで構成される。また、予測パラメータ復号部302は、インター予測パラメータ復号部303及びイントラ予測パラメータ復号部304を含んで構成される。予測画像生成部308は、インター予測画像生成部309及びイントラ予測画像生成部310を含んで構成される。     (Configuration of Image Decoding Device) Next, the configuration of the image decoding device 31 according to the present embodiment will be described. FIG. 5 is a schematic diagram illustrating a configuration of the image decoding device 31 according to the present embodiment. The image decoding device 31 includes an entropy decoding unit 301, a prediction parameter decoding unit 302, a reference picture memory (reference image storage unit, frame memory) 306, a prediction parameter memory (prediction parameter storage unit, frame memory) 307, and a prediction image generation unit 308. , An inverse quantization / inverse DCT unit 311, an addition unit 312, and a residual storage unit 313 (residual recording unit). The prediction parameter decoding unit 302 includes an inter prediction parameter decoding unit 303 and an intra prediction parameter decoding unit 304. The predicted image generation unit 308 includes an inter predicted image generation unit 309 and an intra predicted image generation unit 310.

エントロピー復号部301は、外部から入力された符号化ストリームTeに対してエントロピー復号を行って、個々の符号(シンタックス要素)を分離し復号する。分離された符号には、予測画像を生成するための予測情報および、差分画像を生成するための残差情報などがある。   The entropy decoding unit 301 performs entropy decoding on the encoded stream Te input from the outside, and separates and decodes individual codes (syntax elements). The separated codes include prediction information for generating a prediction image and residual information for generating a difference image.

エントロピー復号部301は、分離した符号の一部を予測パラメータ復号部302に出力する。分離した符号の一部とは、例えば、予測モードPredMode、分割モードpart_mode、マージフラグmerge_flag、マージインデックスmerge_idx、インター予測フラグinter_pred_idcinter_pred_idc、参照ピクチャインデックスrefIdxLX、予測ベクトルインデックmvp_LX_idx、差分ベクトルmvdLXである。どの符号を復号するか否かの制御は、予測パラメータ復号部302の指示に基づいて行われる。エントロピー復号部301は、量子化係数を逆量子化・逆DCT部311に出力する。この量子化係数は、符号化処理において、残差信号に対してDCT(Discrete Cosine Transform、離散コサイン変換)を行い量子化して得られる係数である。   The entropy decoding unit 301 outputs a part of the separated code to the prediction parameter decoding unit 302. Some of the separated codes are, for example, a prediction mode PredMode, a partition mode part_mode, a merge flag merge_flag, a merge index merge_idx, an inter prediction flag inter_pred_idcinter_pred_idc, a reference picture index refIdxLX, a prediction vector index mvp_LX_idx, and a difference vector mvdLX. Control of which code to decode is performed based on an instruction from the prediction parameter decoding unit 302. The entropy decoding unit 301 outputs the quantization coefficient to the inverse quantization / inverse DCT unit 311. This quantization coefficient is a coefficient obtained by performing quantization and performing DCT (Discrete Cosine Transform) on the residual signal in the encoding process.

インター予測パラメータ復号部303は、エントロピー復号部301から入力された符号に基づいて、予測パラメータメモリ307に記憶された予測パラメータを参照してインター予測パラメータを復号する。インター予測パラメータ復号部303は、復号したインター予測パラメータを予測画像生成部308に出力し、また予測パラメータメモリ307に記憶する。インター予測パラメータ復号部303の詳細については後述する。   Based on the code input from the entropy decoding unit 301, the inter prediction parameter decoding unit 303 refers to the prediction parameter stored in the prediction parameter memory 307 and decodes the inter prediction parameter. The inter prediction parameter decoding unit 303 outputs the decoded inter prediction parameter to the prediction image generation unit 308 and stores it in the prediction parameter memory 307. Details of the inter prediction parameter decoding unit 303 will be described later.

イントラ予測パラメータ復号部304は、エントロピー復号部301から入力された符号に基づいて、予測パラメータメモリ307に記憶された予測パラメータを参照してイントラ予測パラメータを復号する。イントラ予測パラメータとは、ピクチャブロックを1つのピクチャ内で予測する処理で用いるパラメータ、例えば、イントラ予測モードIntraPredModeである。イントラ予測パラメータ復号部304は、復号したイントラ予測パラメータを予測画像生成部308に出力し、また予測パラメータメモリ307に記憶する。   Based on the code input from the entropy decoding unit 301, the intra prediction parameter decoding unit 304 refers to the prediction parameter stored in the prediction parameter memory 307 and decodes the intra prediction parameter. The intra prediction parameter is a parameter used in a process of predicting a picture block within one picture, for example, an intra prediction mode IntraPredMode. The intra prediction parameter decoding unit 304 outputs the decoded intra prediction parameter to the prediction image generation unit 308 and stores it in the prediction parameter memory 307.

イントラ予測パラメータ復号部304は、輝度と色差で異なるイントラ予測モードを導出しても良い。この場合、イントラ予測パラメータ復号部304は、輝度の予測パラメータとして輝度予測モードIntraPredModeY、色差の予測パラメータとして、色差予測モードIntraPredModeCを復号する。輝度予測モードIntraPredModeYは、35モードであり、プレーナ予測(0)、DC予測(1)、方向予測(2〜34)が対応する。色差予測モードIntraPredModeCは、プレーナ予測(0)、DC予測(1)、方向予測(2、3、4)、LMモード(5)の何れかを用いるものである。   The intra prediction parameter decoding unit 304 may derive different intra prediction modes depending on the luminance and color difference. In this case, the intra prediction parameter decoding unit 304 decodes the luminance prediction mode IntraPredModeY as the luminance prediction parameter and the color difference prediction mode IntraPredModeC as the color difference prediction parameter. The luminance prediction mode IntraPredModeY is a 35 mode and corresponds to planar prediction (0), DC prediction (1), and direction prediction (2 to 34). The color difference prediction mode IntraPredModeC uses one of the planar prediction (0), DC prediction (1), direction prediction (2, 3, 4), and LM mode (5).

参照ピクチャメモリ306は、加算部312が生成した参照ピクチャのブロック(参照ピクチャブロック)を、復号対象のピクチャ及びブロック毎に予め定めた位置に記憶する。予測パラメータメモリ307は、予測パラメータを、復号対象のピクチャ及びブロック毎に予め定めた位置に記憶する。具体的には、予測パラメータメモリ307は、インター予測パラメータ復号部303が復号したインター予測パラメータ、イントラ予測パラメータ復号部304が復号したイントラ予測パラメータ及びエントロピー復号部301が分離した予測モードpredModeを記憶する。記憶されるインター予測パラメータには、例えば、予測リスト利用フラグpredFlagLX(インター予測フラグinter_pred_idcinter_pred_idc)、参照ピクチャインデックスrefIdxLX、ベクトルmvLXがある。   The reference picture memory 306 stores the reference picture block (reference picture block) generated by the addition unit 312 at a predetermined position for each decoding target picture and block. The prediction parameter memory 307 stores the prediction parameter at a predetermined position for each picture and block to be decoded. Specifically, the prediction parameter memory 307 stores the inter prediction parameter decoded by the inter prediction parameter decoding unit 303, the intra prediction parameter decoded by the intra prediction parameter decoding unit 304, and the prediction mode predMode separated by the entropy decoding unit 301. . The stored inter prediction parameters include, for example, a prediction list use flag predFlagLX (inter prediction flag inter_pred_idcinter_pred_idc), a reference picture index refIdxLX, and a vector mvLX.

予測画像生成部308には、エントロピー復号部301から入力された予測モードpredModeが入力され、また予測パラメータ復号部302から予測パラメータが入力される。また、予測画像生成部308は、予測対象ブロックごとに、参照ピクチャメモリ306から参照ピクチャを読み出す。予測画像生成部308は、予測モードpredModeが示す予測モードで、入力された予測パラメータと読み出した参照ピクチャを用いて予測ピクチャブロックP(予測画像)を生成する。   The prediction image generation unit 308 receives the prediction mode predMode input from the entropy decoding unit 301, and also receives prediction parameters from the prediction parameter decoding unit 302. Further, the predicted image generation unit 308 reads a reference picture from the reference picture memory 306 for each prediction target block. The predicted image generation unit 308 generates a predicted picture block P (predicted image) using the input prediction parameter and the read reference picture in the prediction mode indicated by the prediction mode predMode.

ここで、予測モードpredModeがインター予測モードを示す場合、インター予測画像生成部309は、インター予測パラメータ復号部303から入力されたインター予測パラメータと読み出した参照ピクチャを用いてインター予測により予測ピクチャブロックPを生成する。予測ピクチャブロックPは予測単位PUに対応する。PUは、上述したように予測処理を行う単位となる複数の画素からなるピクチャの一部分、つまり1度に予測処理が行われる復号対象ブロックに相当する。   Here, when the prediction mode predMode indicates the inter prediction mode, the inter prediction image generation unit 309 uses the inter prediction parameter input from the inter prediction parameter decoding unit 303 and the read reference picture to perform the prediction picture block P by inter prediction. Is generated. The predicted picture block P corresponds to the prediction unit PU. The PU corresponds to a part of a picture composed of a plurality of pixels as a unit for performing the prediction process as described above, that is, a decoding target block on which the prediction process is performed at once.

インター予測画像生成部309は、予測リスト利用フラグpredFlagLXが1である参照ピクチャリスト(L0リスト、もしくはL1リスト)に対し、参照ピクチャインデックスrefIdxLXで示される参照ピクチャから、復号対象ブロックを基準としてベクトルmvLXが示す位置にある参照ピクチャブロックを参照ピクチャメモリ306から読み出す。インター予測画像生成部309は、読み出した参照ピクチャブロックについて予測を行って予測ピクチャブロックPを生成する。インター予測画像生成部309は、生成した予測ピクチャブロックPを加算部312に出力する。   For the reference picture list (L0 list or L1 list) for which the prediction list use flag predFlagLX is 1, the inter predicted image generation unit 309 generates a vector mvLX based on the decoding target block from the reference picture indicated by the reference picture index refIdxLX. The reference picture block at the position indicated by is read from the reference picture memory 306. The inter prediction image generation unit 309 performs prediction on the read reference picture block to generate a prediction picture block P. The inter prediction image generation unit 309 outputs the generated prediction picture block P to the addition unit 312.

予測モードpredModeがイントラ予測モードを示す場合、イントラ予測画像生成部310は、イントラ予測パラメータ復号部304から入力されたイントラ予測パラメータと読み出した参照ピクチャを用いてイントラ予測を行う。具体的には、イントラ予測画像生成部310は、復号対象のピクチャであって、既に復号されたブロックのうち復号対象ブロックから予め定めた範囲にある参照ピクチャブロックを参照ピクチャメモリ306から読み出す。予め定めた範囲とは、復号対象ブロックがいわゆるラスタースキャンの順序で順次移動する場合、例えば、左、左上、上、右上の隣接ブロックのうちのいずれかであり、イントラ予測モードによって異なる。ラスタースキャンの順序とは、各ピクチャにおいて、上端から下端まで各行について、順次左端から右端まで移動させる順序である。   When the prediction mode predMode indicates the intra prediction mode, the intra predicted image generation unit 310 performs intra prediction using the intra prediction parameter input from the intra prediction parameter decoding unit 304 and the read reference picture. Specifically, the intra predicted image generation unit 310 reads, from the reference picture memory 306, a reference picture block that is a decoding target picture and is in a predetermined range from the decoding target block among blocks that have already been decoded. The predetermined range is, for example, any of the left, upper left, upper, and upper right adjacent blocks when the decoding target block sequentially moves in a so-called raster scan order, and varies depending on the intra prediction mode. The raster scan order is an order in which each row is sequentially moved from the left end to the right end in each picture from the upper end to the lower end.

イントラ予測画像生成部310は、読み出した参照ピクチャブロックについてイントラ予測モードIntraPredModeが示す予測モードで予測を行って予測ピクチャブロックを生成する。イントラ予測画像生成部310は、生成した予測ピクチャブロックPを加算部312に出力する。イントラ予測パラメータ復号部304において、輝度と色差で異なるイントラ予測モードを導出する場合、イントラ予測画像生成部310は、輝度予測モードIntraPredModeYに応じて、プレーナ予測(0)、DC予測(1)、方向予測(2〜34)の何れかによって輝度の予測ピクチャブロックを生成し、色差予測モードIntraPredModeCに応じて、プレーナ予測(0)、DC予測(1)、方向予測(2、3、4)、LMモード(5)の何れかによって色差の予測ピクチャブロックを生成する。   The intra predicted image generation unit 310 generates a predicted picture block by performing prediction in the prediction mode indicated by the intra prediction mode IntraPredMode for the read reference picture block. The intra predicted image generation unit 310 outputs the generated predicted picture block P to the addition unit 312. When the intra prediction parameter decoding unit 304 derives an intra prediction mode different in luminance and color difference, the intra prediction image generation unit 310 performs planar prediction (0), DC prediction (1), direction according to the luminance prediction mode IntraPredModeY. A prediction picture block of luminance is generated by any of prediction (2 to 34), and planar prediction (0), DC prediction (1), direction prediction (2, 3, 4), LM according to the color difference prediction mode IntraPredModeC A color difference prediction picture block is generated in any one of modes (5).

逆量子化・逆DCT部311は、エントロピー復号部301から入力された量子化係数を逆量子化してDCT係数を求める。逆量子化・逆DCT部311は、求めたDCT係数について逆DCT(Inverse Discrete Cosine Transform、逆離散コサイン変換)を行い、復号残差信号を算出する。逆量子化・逆DCT部311は、算出した復号残差信号を加算部312および残差格納部313に出力する。   The inverse quantization / inverse DCT unit 311 performs inverse quantization on the quantization coefficient input from the entropy decoding unit 301 to obtain a DCT coefficient. The inverse quantization / inverse DCT unit 311 performs inverse DCT (Inverse Discrete Cosine Transform) on the obtained DCT coefficient to calculate a decoded residual signal. The inverse quantization / inverse DCT unit 311 outputs the calculated decoded residual signal to the addition unit 312 and the residual storage unit 313.

加算部312は、インター予測画像生成部309及びイントラ予測画像生成部310から入力された予測ピクチャブロックPと逆量子化・逆DCT部311から入力された復号残差信号の信号値を画素毎に加算して、参照ピクチャブロックを生成する。加算部312は、生成した参照ピクチャブロックを参照ピクチャメモリ306に記憶し、生成した参照ピクチャブロックをピクチャ毎に統合した復号レイヤ画像Tdを外部に出力する。
(インター予測パラメータ復号部の構成) 次に、インター予測パラメータ復号部303の構成について説明する。図6は、本実施形態に係るインター予測パラメータ復号部303の構成を示す概略図である。インター予測パラメータ復号部303は、インター予測パラメータ復号制御部3031、AMVP予測パラメータ導出部3032、加算部3035及びマージ予測パラメータ導出部3036を含んで構成される。
The adder 312 outputs the prediction picture block P input from the inter prediction image generation unit 309 and the intra prediction image generation unit 310 and the signal value of the decoded residual signal input from the inverse quantization / inverse DCT unit 311 for each pixel. Addition to generate a reference picture block. The adder 312 stores the generated reference picture block in the reference picture memory 306, and outputs a decoded layer image Td in which the generated reference picture block is integrated for each picture to the outside.
(Configuration of Inter Prediction Parameter Decoding Unit) Next, the configuration of the inter prediction parameter decoding unit 303 will be described. FIG. 6 is a schematic diagram illustrating a configuration of the inter prediction parameter decoding unit 303 according to the present embodiment. The inter prediction parameter decoding unit 303 includes an inter prediction parameter decoding control unit 3031, an AMVP prediction parameter derivation unit 3032, an addition unit 3035, and a merge prediction parameter derivation unit 3036.

インター予測パラメータ復号制御部3031は、インター予測に関連する符号(シンタックス要素)の復号をエントロピー復号部301に指示し、符号化データに含まれる符号(シンタックス要素)を例えば、分割モードpart_mode、マージフラグmerge_flag、マージインデックスmerge_idx、インター予測フラグinter_pred_idc、参照ピクチャインデックスrefIdxLX、予測ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLXを抽出する。   The inter prediction parameter decoding control unit 3031 instructs the entropy decoding unit 301 to decode a code (syntax element) related to inter prediction, and the code (syntax element) included in the encoded data is, for example, divided mode part_mode, Merge flag merge_flag, merge index merge_idx, inter prediction flag inter_pred_idc, reference picture index refIdxLX, prediction vector index mvp_LX_idx, and difference vector mvdLX are extracted.

インター予測パラメータ復号制御部3031は、まず、符号化データからマージフラグを抽出する。インター予測パラメータ復号制御部3031が、あるシンタックス要素を抽出すると表現する場合は、あるシンタックス要素の復号をエントロピー復号部301に指示し、該当のシンタックス要素を符号化データから読み出すことを意味する。ここで、マージフラグが示す値が1、すなわち、マージ予測モードを示す場合、インター予測パラメータ復号制御部3031は、マージ予測に係る予測パラメータとして、マージインデックスmerge_idxを抽出する。インター予測パラメータ復号制御部3031は、抽出したマージインデックスmerge_idxをマージ予測パラメータ導出部3036に出力する。   The inter prediction parameter decoding control unit 3031 first extracts a merge flag from the encoded data. When the inter prediction parameter decoding control unit 3031 expresses that a certain syntax element is to be extracted, it means that the entropy decoding unit 301 is instructed to decode a certain syntax element, and the corresponding syntax element is read from the encoded data. To do. Here, when the value indicated by the merge flag is 1, that is, indicates the merge prediction mode, the inter prediction parameter decoding control unit 3031 extracts the merge index merge_idx as a prediction parameter related to merge prediction. The inter prediction parameter decoding control unit 3031 outputs the extracted merge index merge_idx to the merge prediction parameter derivation unit 3036.

マージフラグmerge_flagが0、すなわち、AMVP予測モードを示す場合、インター予測パラメータ復号制御部3031は、エントロピー復号部301を用いて符号化データからAMVP予測パラメータを抽出する。AMVP予測パラメータとして、例えば、インター予測フラグinter_pred_idc、参照ピクチャインデックスrefIdxLX、ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLXがある。インター予測パラメータ復号制御部3031は、抽出したインター予測フラグinter_pred_idcinter_pred_idcから導出した予測リスト利用フラグpredFlagLXと、参照ピクチャインデックスrefIdxLXをAMVP予測パラメータ導出部3032及び予測画像生成部308(図5)に出力し、また予測パラメータメモリ307(図5)に記憶する。インター予測パラメータ復号制御部3031は、抽出したベクトルインデックスmvp_LX_idxをAMVP予測パラメータ導出部3032に出力する。インター予測パラメータ復号制御部3031は、抽出した差分ベクトルmvdLXを加算部3035に出力する。また、インター予測パラメータ復号制御部3031は、インター予測パラメータ導出時に導出された変位ベクトル(NBDV、Neigh bour base Disparity Vector)およびVSP処理を行うか否かを示すフラグであるVSPフラグを、インター予測画像生成部309に出力する。   When the merge flag merge_flag is 0, that is, indicates the AMVP prediction mode, the inter prediction parameter decoding control unit 3031 uses the entropy decoding unit 301 to extract the AMVP prediction parameter from the encoded data. Examples of the AMVP prediction parameters include an inter prediction flag inter_pred_idc, a reference picture index refIdxLX, a vector index mvp_LX_idx, and a difference vector mvdLX. The inter prediction parameter decoding control unit 3031 outputs the prediction list use flag predFlagLX derived from the extracted inter prediction flag inter_pred_idcinter_pred_idc and the reference picture index refIdxLX to the AMVP prediction parameter derivation unit 3032 and the prediction image generation unit 308 (FIG. 5). Moreover, it memorize | stores in the prediction parameter memory 307 (FIG. 5). The inter prediction parameter decoding control unit 3031 outputs the extracted vector index mvp_LX_idx to the AMVP prediction parameter deriving unit 3032. The inter prediction parameter decoding control unit 3031 outputs the extracted difference vector mvdLX to the addition unit 3035. In addition, the inter prediction parameter decoding control unit 3031 uses a displacement vector (NBDV, Neighbor base Disparity Vector) derived at the time of deriving the inter prediction parameter and a VSP flag that is a flag indicating whether or not to perform VSP processing, as an inter prediction image. The data is output to the generation unit 309.

図7は、本実施形態に係るマージ予測パラメータ導出部3036の構成を示す概略図である。マージ予測パラメータ導出部3036は、マージ候補導出部30361とマージ候補選択部30362を備える。マージ候補導出部30361は、マージ候補格納部303611と、拡張マージ候補導出部303612と基本マージ候補導出部303613を含んで構成される。   FIG. 7 is a schematic diagram illustrating a configuration of the merge prediction parameter deriving unit 3036 according to the present embodiment. The merge prediction parameter derivation unit 3036 includes a merge candidate derivation unit 30361 and a merge candidate selection unit 30362. The merge candidate derivation unit 30361 includes a merge candidate storage unit 303611, an extended merge candidate derivation unit 303612, and a basic merge candidate derivation unit 303613.

マージ候補格納部303611は、拡張マージ候補導出部303612及び基本マージ候補導出部303613から入力されたマージ候補を格納する。なお、マージ候補は、予測リスト利用フラグpredFlagLX、ベクトルmvLX、参照ピクチャインデックスrefIdxLXを含んで構成されている。マージ候補格納部303611において、格納されたマージ候補には、所定の規則に従ってインデックスが割り当てられる。例えば、拡張マージ候補導出部303612から入力されたマージ候補には、インデックスとして「0」を割り当てる。   The merge candidate storage unit 303611 stores the merge candidates input from the extended merge candidate derivation unit 303612 and the basic merge candidate derivation unit 303613. The merge candidate includes a prediction list use flag predFlagLX, a vector mvLX, and a reference picture index refIdxLX. In the merge candidate storage unit 303611, an index is assigned to the stored merge candidates according to a predetermined rule. For example, “0” is assigned as an index to the merge candidate input from the extended merge candidate derivation unit 303612.

拡張マージ候補導出部303612は、変位ベクトル取得部3036122と、レイヤ間マージ候補導出部3036121と変位マージ候補導出部3036123、図示しないVSPマージ候補導出部3036124を含んで構成される。   The extended merge candidate derivation unit 303612 includes a displacement vector acquisition unit 3036122, an inter-layer merge candidate derivation unit 3036121, a displacement merge candidate derivation unit 3036123, and a VSP merge candidate derivation unit 3036124 (not shown).

変位ベクトル取得部3036122は、まず、復号対象ブロック(PU)を含む符号化ユニットCUに隣接する複数の候補ブロック(例えば、左、上、右上に隣接するブロック)から順に変位ベクトルを取得する。具体的には、候補ブロックの一つを選択し、選択した候補ブロックのベクトルが変位ベクトルであるか動きベクトルであるかを、候補ブロックの参照ピクチャインデックスrefIdxLXを用いてリファレンスレイヤ判定部303111(後述)を用いて判定し変位ベクトルが有る場合には、それを変位ベクトルとする。候補ブロックに変位ベクトルがない場合には、次の候補ブロックを順に走査する。隣接するブロックに変位ベクトルがない場合、変位ベクトル取得部3036122は、時間的に別の表示順の参照ピクチャに含まれるブロックの対象ブロックに対応する位置のブロックの変位ベクトルの取得を試みる。変位ベクトルが取得できなかった場合には、変位ベクトル取得部3036122は、変位ベクトルとしてゼロベクトルを設定する。得られた変位ベクトルはNBDV(Neighbour Base Disparity Vector)と呼ばれる。   First, the displacement vector acquisition unit 3036122 acquires displacement vectors in order from a plurality of candidate blocks (for example, blocks adjacent to the left, upper, and upper right) adjacent to the encoding unit CU including the decoding target block (PU). Specifically, one of the candidate blocks is selected, and whether the selected candidate block vector is a displacement vector or a motion vector is determined by using a reference picture index refIdxLX of the candidate block as a reference layer determination unit 303111 (described later). ), If there is a displacement vector, it is set as the displacement vector. If there is no displacement vector in the candidate block, the next candidate block is scanned in order. When there is no displacement vector in the adjacent block, the displacement vector acquisition unit 3036122 attempts to acquire the displacement vector of the block at the position corresponding to the target block of the block included in the reference picture in the temporally different display order. When the displacement vector cannot be acquired, the displacement vector acquisition unit 3036122 sets a zero vector as the displacement vector. The obtained displacement vector is called NBDV (Neighbour Base Disparity Vector).

変位ベクトル取得部3036122は、デプスリファインメントフラグdepth_refinement_flagが1に等しいとき、NBDVの水平成分を、デプスDV導出部351で得られるベクトルに置き換えることで更新された変位ベクトルを得る(NBDVの垂直成分はそのまま)。更新された変位ベクトルは、DoNBDV(Depth Orientated Neighbour Base Disparity Vector)と呼ばれる。デプスDV導出部351には、デプスベースDVを導出する場合に用いるブロックの左上座標(xTL、yTL)と幅nPSW、高さnPSW、変位ベクトルmvDisp[]として、各々、復号対象ブロック(PU)を含む符号化ユニットCUの左上座標(xCb, yCb)、CUの幅nCbS、CUの高さnCbS、変位ベクトルNBDVを入力する。また、ブロックをさらに分割するか否かを示すフラグsplitFlagには0を入力する。   When the depth refinement flag depth_refinement_flag is equal to 1, the displacement vector acquisition unit 3036122 obtains an updated displacement vector by replacing the horizontal component of the NBDV with the vector obtained by the depth DV deriving unit 351 (the vertical component of the NBDV is As is). The updated displacement vector is called DoNBDV (Depth Orientated Neighbor Base Disparity Vector). The depth DV deriving unit 351 receives the decoding target block (PU) as the upper left coordinates (xTL, yTL), width nPSW, height nPSW, and displacement vector mvDisp [] of the block used when the depth base DV is derived. The upper left coordinates (xCb, yCb) of the encoding unit CU to be included, the CU width nCbS, the CU height nCbS, and the displacement vector NBDV are input. Further, 0 is input to the flag splitFlag indicating whether or not the block is further divided.

変位ベクトル取得部3036122は、変位ベクトル(DoNBDV)をレイヤ間マージ候補導出部3036121及び変位マージ候補導出部に出力する。さらに、得られた変位ベクトル(NBDV、DoNBDV)を、インター予測画像生成部309に出力する。   The displacement vector acquisition unit 3036122 outputs the displacement vector (DoNBDV) to the inter-layer merge candidate derivation unit 3036121 and the displacement merge candidate derivation unit. Further, the obtained displacement vectors (NBDV, DoNBDV) are output to the inter predicted image generation unit 309.

レイヤ間マージ候補導出部3036121は、変位ベクトル取得部3036122から変位ベクトルを入力される。レイヤ間マージ候補導出部3036121は、別レイヤ(例えばベースレイヤ、ベースビュー)の復号対象ピクチャと同一POCを持つピクチャ内から、変位ベクトル取得部3036122から入力された変位ベクトルだけが示すブロックを選択し、該ブロックが有する動きベクトルである予測パラメータを予測パラメータメモリ307から読み出す。より具体的には、レイヤ間マージ候補導出部3036121が読みだす予測パラメータは、対象ブロックの中心点を起点にしたときに、起点の座標に変位ベクトルを加算した座標を含むブロックの予測パラメータである。
参照ブロックの座標(xRef、yRef)は、対象ブロックの座標が(xP、yP)、変位ベクトルが(mvDisp[0]、mvDisp[1])、対象ブロックの幅と高さがnPSW、nPSHの場合に以下の式により導出する。
The inter-layer merge candidate derivation unit 3036121 receives the displacement vector from the displacement vector acquisition unit 3036122. The inter-layer merge candidate derivation unit 3036121 selects a block indicated only by the displacement vector input from the displacement vector acquisition unit 3036122 from a picture having the same POC as the decoding target picture of another layer (eg, base layer, base view). The prediction parameter, which is a motion vector included in the block, is read from the prediction parameter memory 307. More specifically, the prediction parameter read by the inter-layer merge candidate derivation unit 3036121 is a prediction parameter of a block including coordinates obtained by adding a displacement vector to the coordinates of the starting point when the center point of the target block is the starting point. .
The coordinates (xRef, yRef) of the reference block are the coordinates of the target block (xP, yP), the displacement vector (mvDisp [0], mvDisp [1]), and the width and height of the target block are nPSW, nPSH. Is derived by the following equation.

xRef = Clip3( 0, PicWidthInSamplesL-1, xP + ( ( nPSW - 1 ) >> 1 ) + ( ( mvDisp[0] + 2 ) >> 2 ) )
yRef = Clip3( 0, PicHeightInSamplesL-1, yP + ( ( nPSH - 1 ) >> 1 ) + ( ( mvDisp[1] + 2 ) >> 2 ))
なお、レイヤ間マージ候補導出部3036121は、予測パラメータが動きベクトルか否かを、インター予測パラメータ復号制御部3031に含まれる後述するリファレンスレイヤ判定部303111の判定方法において偽(変位ベクトルではない)と判定した方法により判定する。レイヤ間マージ候補導出部3036121は、読みだした予測パラメータをマージ候補としてマージ候補格納部303611に出力する。また、レイヤ間マージ候補導出部3036121は、予測パラメータを導出出来なかった際には、その旨を変位マージ候補導出部に出力する。本マージ候補は、動き予測のインターレイヤ候補(インタービュー候補)でありレイヤ間マージ候補(動き予測)とも記載する。
xRef = Clip3 (0, PicWidthInSamples L -1, xP + ((nPSW-1) >> 1) + ((mvDisp [0] + 2) >> 2))
yRef = Clip3 (0, PicHeightInSamples L -1, yP + ((nPSH-1) >> 1) + ((mvDisp [1] + 2) >> 2))
Note that the inter-layer merge candidate derivation unit 3036121 determines whether or not the prediction parameter is a motion vector in the determination method of a reference layer determination unit 303111 (described later) included in the inter prediction parameter decoding control unit 3031 (not a displacement vector). The determination is made according to the determined method. The inter-layer merge candidate derivation unit 3036121 outputs the read prediction parameter as a merge candidate to the merge candidate storage unit 303611. Further, when the prediction parameter cannot be derived, the inter-layer merge candidate derivation unit 3036121 outputs that fact to the displacement merge candidate derivation unit. This merge candidate is a motion prediction inter-layer candidate (inter-view candidate) and is also described as an inter-layer merge candidate (motion prediction).

変位マージ候補導出部3036123は、変位ベクトル取得部3036122から変位ベクトルを入力される。変位マージ候補導出部3036123は、入力された変位ベクトルと、変位ベクトルが指す先のレイヤ画像の参照ピクチャインデックスrefIdxLX(例えば、復号対象ピクチャと同一POCを持つベースレイヤ画像のインデックス)をマージ候補としてマージ候補格納部303611に出力する。本マージ候補は、変位予測のインターレイヤ候補(インタービュー候補)でありレイヤ間マージ候補(変位予測)とも記載する。   The displacement merge candidate derivation unit 3036123 receives the displacement vector from the displacement vector acquisition unit 3036122. The displacement merge candidate derivation unit 3036123 merges the input displacement vector and the reference picture index refIdxLX of the previous layer image indicated by the displacement vector (for example, the index of the base layer image having the same POC as the decoding target picture) as a merge candidate. The data is output to the candidate storage unit 303611. This merge candidate is a displacement prediction inter-layer candidate (inter-view candidate) and is also described as an inter-layer merge candidate (displacement prediction).

VSPマージ候補導出部3036124は、ブロック視点合成予測(Block View Synthesis Prediction)マージ候補を導出する。VSPマージ候補は、別の視点画像から予測画像を生成する変位マージ候補の一種であるが、PU内をさらに小さいブロックに分割して、予測画像生成処理を行うマージ候補である。VSP処理は、インター予測画像生成部309で行われる。VSPマージ候補では、VSPフラグを1とする。   The VSP merge candidate derivation unit 3036124 derives a block view synthesis prediction merge candidate. The VSP merge candidate is a type of displacement merge candidate that generates a predicted image from another viewpoint image, but is a merge candidate that divides the PU into smaller blocks and performs a predicted image generation process. The VSP process is performed by the inter predicted image generation unit 309. In a VSP merge candidate, the VSP flag is set to 1.

基本マージ候補導出部303613は、空間マージ候補導出部3036131と時間マージ候補導出部3036132と結合マージ候補導出部3036133とゼロマージ候補導出部3036134を含んで構成される。   The basic merge candidate derivation unit 303613 includes a spatial merge candidate derivation unit 3036131, a temporal merge candidate derivation unit 3036132, a merge merge candidate derivation unit 3036133, and a zero merge candidate derivation unit 3036134.

空間マージ候補導出部3036131は、所定の規則に従って、予測パラメータメモリ307が記憶している予測パラメータ(予測リスト利用フラグpredFlagLX、ベクトルmvLX、参照ピクチャインデックスrefIdxLX)を読み出し、読み出した予測パラメータをマージ候補として導出する。読み出される予測パラメータは、復号対象ブロックから予め定めた範囲内にあるブロック(例えば、復号対象ブロックの左下端、左上端、右上端にそれぞれ接するブロックの全部又は一部)のそれぞれに係る予測パラメータである。導出されたマージ候補はマージ候補格納部303611に格納される。空間マージ候補導出部3036131では、VSPフラグは、参照ブロックでVSPフラグをそのまま用いる。すなわち、参照ブロックのVSPフラグが1の場合、対応する空間マージ候補のVSPフラグは1、それ以外の場合はVSPフラグを0とする。以下、時間マージ候補導出部3036132、結合マージ候補導出部3036133、ゼロマージ候補導出部3036134では、VSPフラグは0に設定する。   The spatial merge candidate derivation unit 3036131 reads the prediction parameters (prediction list use flag predFlagLX, vector mvLX, reference picture index refIdxLX) stored in the prediction parameter memory 307 according to a predetermined rule, and uses the read prediction parameters as merge candidates. To derive. The prediction parameter to be read is a prediction parameter relating to each of the blocks within a predetermined range from the decoding target block (for example, all or a part of the blocks in contact with the lower left end, upper left upper end, and upper right end of the decoding target block, respectively). is there. The derived merge candidates are stored in the merge candidate storage unit 303611. The spatial merge candidate derivation unit 3036131 uses the VSP flag as it is in the reference block as the VSP flag. That is, when the VSP flag of the reference block is 1, the VSP flag of the corresponding spatial merge candidate is 1, and in other cases, the VSP flag is 0. Hereinafter, in the time merge candidate derivation unit 3036132, the merge merge candidate derivation unit 3036133, and the zero merge candidate derivation unit 3036134, the VSP flag is set to 0.

時間マージ候補導出部3036132は、復号対象ブロックの右下の座標を含む参照画像中のブロックの予測パラメータを予測パラメータメモリ307から読みだしマージ候補とする。参照画像の指定方法は、例えば、スライスヘッダに置いて指定された参照ピクチャインデックスrefIdxLXでも良いし、復号対象ブロックに隣接するブロックの参照ピクチャインデックスrefIdxLXのうち最小のものを用いて指定しても良い。導出されたマージ候補はマージ候補格納部303611に格納される。   The temporal merge candidate derivation unit 3036132 reads the prediction parameter of the block in the reference image including the lower right coordinate of the decoding target block from the prediction parameter memory 307 and sets it as a merge candidate. The reference picture designation method may be, for example, the reference picture index refIdxLX designated in the slice header, or may be designated using the smallest reference picture index refIdxLX of the block adjacent to the decoding target block. . The derived merge candidates are stored in the merge candidate storage unit 303611.

結合マージ候補導出部3036133は、既に導出されマージ候補格納部303611に格納された2つの異なる導出済マージ候補のベクトルと参照ピクチャインデックスを、それぞれL0、L1のベクトルとして組み合わせることで結合マージ候補を導出する。導出されたマージ候補はマージ候補格納部303611に格納される。   The merge merge candidate derivation unit 3036133 derives merge merge candidates by combining two different derived merge candidate vectors and reference picture indexes already derived and stored in the merge candidate storage unit 303611 as L0 and L1 vectors, respectively. To do. The derived merge candidates are stored in the merge candidate storage unit 303611.

ゼロマージ候補導出部3036134は、参照ピクチャインデックスrefIdxLXが0であり、ベクトルmvLXのX成分、Y成分が共に0であるマージ候補を導出する。導出されたマージ候補はマージ候補格納部303611に格納される。   The zero merge candidate derivation unit 3036134 derives a merge candidate in which the reference picture index refIdxLX is 0 and both the X component and the Y component of the vector mvLX are 0. The derived merge candidates are stored in the merge candidate storage unit 303611.

図17は、マージ候補導出部30361が導出するマージ候補の例を示すものである。2つのマージ候補が同じ予測パラメータである場合に順番を詰める処理を除くと、マージインデックス順に、レイヤ間マージ候補、空間マージ候補(左下)、空間マージ候補(右上)、空間マージ候補(右上)、変位マージ候補、VSPマージ候補、空間マージ候補(左下)、空間マージ候補(左上)、時間マージ候補の順になる。また、それ以降に、結合マージ候補、ゼロマージ候補があるが、図17では省略している。   FIG. 17 shows an example of merge candidates derived by the merge candidate deriving unit 30361. If two merge candidates have the same prediction parameter, excluding the processing of reducing the order, the merge index order, layer merge candidate (lower left), spatial merge candidate (upper right), spatial merge candidate (upper right), Displacement merge candidates, VSP merge candidates, spatial merge candidates (lower left), spatial merge candidates (upper left), and temporal merge candidates. Further, there are a merge merge candidate and a zero merge candidate thereafter, which are omitted in FIG.

マージ候補選択部30362は、マージ候補格納部303611に格納されているマージ候補のうち、インター予測パラメータ復号制御部3031から入力されたマージインデックスmerge_idxに対応するインデックスが割り当てられたマージ候補を、対象PUのインター予測パラメータとして選択する。マージ候補選択部30362は選択したマージ候補を予測パラメータメモリ307(図5)に記憶するとともに、予測画像生成部308(図5)に出力する。   The merge candidate selection unit 30362 selects, from the merge candidates stored in the merge candidate storage unit 303611, a merge candidate to which an index corresponding to the merge index merge_idx input from the inter prediction parameter decoding control unit 3031 is assigned. As an inter prediction parameter. The merge candidate selection unit 30362 stores the selected merge candidate in the prediction parameter memory 307 (FIG. 5) and outputs it to the prediction image generation unit 308 (FIG. 5).

図8は、本実施形態に係るAMVP予測パラメータ導出部3032の構成を示す概略図である。AMVP予測パラメータ導出部3032は、ベクトル候補導出部3033と予測ベクトル選択部3034を備える。ベクトル候補導出部3033は、参照ピクチャインデックスrefIdxに基づいて予測パラメータメモリ307(図5)が記憶するベクトル(動きベクトル又は変位ベクトル)をベクトル候補mvpLXとして読み出す。読み出されるベクトルは、復号対象ブロックから予め定めた範囲内にあるブロック(例えば、復号対象ブロックの左下端、左上端、右上端にそれぞれ接するブロックの全部又は一部)のそれぞれに係るベクトルである。   FIG. 8 is a schematic diagram illustrating the configuration of the AMVP prediction parameter derivation unit 3032 according to the present embodiment. The AMVP prediction parameter derivation unit 3032 includes a vector candidate derivation unit 3033 and a prediction vector selection unit 3034. The vector candidate derivation unit 3033 reads a vector (motion vector or displacement vector) stored in the prediction parameter memory 307 (FIG. 5) as a vector candidate mvpLX based on the reference picture index refIdx. The vector to be read is a vector related to each of the blocks within a predetermined range from the decoding target block (for example, all or a part of the blocks in contact with the lower left end, the upper left upper end, and the upper right end of the decoding target block, respectively).

予測ベクトル選択部3034は、ベクトル候補導出部3033が読み出したベクトル候補のうち、インター予測パラメータ復号制御部3031から入力されたベクトルインデックスmvp_LX_idxが示すベクトル候補を予測ベクトルmvpLXとして選択する。予測ベクトル選択部3034は、選択した予測ベクトルmvpLXを加算部3035に出力する。   The prediction vector selection unit 3034 selects, as the prediction vector mvpLX, a vector candidate indicated by the vector index mvp_LX_idx input from the inter prediction parameter decoding control unit 3031 among the vector candidates read by the vector candidate derivation unit 3033. The prediction vector selection unit 3034 outputs the selected prediction vector mvpLX to the addition unit 3035.

図9は、ベクトル候補の一例を示す概念図である。図9に示す予測ベクトルリスト602は、ベクトル候補導出部3033において導出される複数のベクトル候補からなるリストである。予測ベクトルリスト602において、左右に一列に配列された5個の長方形は、それぞれ予測ベクトルを示す領域を示す。左端から2番目のmvp_LX_idxの真下の下向きの矢印とその下のmvpLXは、ベクトルインデックスmvp_LX_idxが、予測パラメータメモリ307においてベクトルmvpLXを参照するインデックスであることを示す。   FIG. 9 is a conceptual diagram showing an example of vector candidates. A predicted vector list 602 illustrated in FIG. 9 is a list including a plurality of vector candidates derived by the vector candidate deriving unit 3033. In the prediction vector list 602, five rectangles arranged in a line on the left and right indicate areas indicating prediction vectors, respectively. The downward arrow directly below the second mvp_LX_idx from the left end and mvpLX below the mvp_LX_idx indicate that the vector index mvp_LX_idx is an index referring to the vector mvpLX in the prediction parameter memory 307.

候補ベクトルは、復号処理が完了したブロックであって、復号対象ブロックから予め定めた範囲のブロック(例えば、隣接ブロック)を参照し、参照したブロックに係るベクトルに基づいて生成される。なお、隣接ブロックには、対象ブロックに空間的に隣接するブロック、例えば、左ブロック、上ブロックの他、対象ブロックに時間的に隣接するブロック、例えば、対象ブロックと同じ位置で、表示時刻が異なるブロックから得られたブロックを含む。加算部3035は、予測ベクトル選択部3034から入力された予測ベクトルmvpLXとインター予測パラメータ復号制御部から入力された差分ベクトルmvdLXを加算してベクトルmvLXを算出する。加算部3035は、算出したベクトルmvLXを予測画像生成部308(図5)に出力する。   The candidate vector is a block for which decoding processing has been completed, and is generated based on a vector related to the referenced block with reference to a block (for example, an adjacent block) in a predetermined range from the decoding target block. The adjacent block has a block that is spatially adjacent to the target block, for example, the left block and the upper block, and a block that is temporally adjacent to the target block, for example, the same position as the target block, and has a different display time. Contains blocks derived from blocks. The addition unit 3035 adds the prediction vector mvpLX input from the prediction vector selection unit 3034 and the difference vector mvdLX input from the inter prediction parameter decoding control unit to calculate a vector mvLX. The adding unit 3035 outputs the calculated vector mvLX to the predicted image generation unit 308 (FIG. 5).

図15は、本実施形態のインター予測パラメータ復号制御部3031の構成を示すブロック図である。図15に示すように、インター予測パラメータ復号制御部3031は、残差予測フラグ復号部30311、及び図示しない、分割モード復号部、マージフラグ復号部30311、マージインデックス復号部30312、インター予測フラグ復号部、参照ピクチャインデックス復号部、ベクトル候補インデックス復号部、ベクトル差分復号部を含んで構成される。分割モード復号部、マージフラグ復号部、マージインデックス復号部、インター予測フラグ復号部、参照ピクチャインデックス復号部、ベクトル候補インデックス復号部、ベクトル差分復号部は各々、分割モードpart_mode、マージフラグmerge_flag、マージインデックスmerge_idx、インター予測フラグinter_pred_idc、参照ピクチャインデックスrefIdxLX、予測ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLXを復号する。   FIG. 15 is a block diagram illustrating a configuration of the inter prediction parameter decoding control unit 3031 of the present embodiment. As illustrated in FIG. 15, the inter prediction parameter decoding control unit 3031 includes a residual prediction flag decoding unit 30311, and a split mode decoding unit, a merge flag decoding unit 30311, a merge index decoding unit 30312, and an inter prediction flag decoding unit (not illustrated). A reference picture index decoding unit, a vector candidate index decoding unit, and a vector difference decoding unit. The partition mode decoding unit, the merge flag decoding unit, the merge index decoding unit, the inter prediction flag decoding unit, the reference picture index decoding unit, the vector candidate index decoding unit, and the vector difference decoding unit are respectively divided mode part_mode, merge flag merge_flag, and merge index. The merge_idx, inter prediction flag inter_pred_idc, reference picture index refIdxLX, prediction vector index mvp_LX_idx, and difference vector mvdLX are decoded.

残差予測フラグ復号部30311は、エントロピー復号部301を用いて、残差予測フラグiv_res_pred_weight_idxが復号される。   The residual prediction flag decoding unit 30311 uses the entropy decoding unit 301 to decode the residual prediction flag iv_res_pred_weight_idx.

図10は、残差予測フラグ復号部30311の構成を示すブロック図である。図16は、残差予測フラグ復号部30311が復号対象とする符号化データの構成を示す例である。残差予測フラグiv_res_pred_weight_idxは、残差予測フラグ格納部303112に記録されると共に、インター予測画像生成部309に入力される。   FIG. 10 is a block diagram illustrating a configuration of the residual prediction flag decoding unit 30311. FIG. 16 is an example illustrating a configuration of encoded data to be decoded by the residual prediction flag decoding unit 30311. The residual prediction flag iv_res_pred_weight_idx is recorded in the residual prediction flag storage unit 303112 and input to the inter prediction image generation unit 309.

変位ベクトル取得部は、対象PUに隣接するブロックが変位ベクトルを持つ場合には、その変位ベクトルを予測パラメータメモリ307から抽出し、予測パラメータメモリ307を参照し、対象PUに隣接するブロックの予測フラグpredFlagLX、参照ピクチャインデックスrefIdxLXとベクトルmvLXを読み出す。変位ベクトル取得部は、内部にリファレンスレイヤ判定部303111を備える。変位ベクトル取得部は、対象PUに隣接するブロックの予測パラメータを順に読み出し、リファレンスレイヤ判定部303111を用いて、隣接ブロックの参照ピクチャインデックスから隣接ブロックが変位ベクトルを備えるか否かを判定する。隣接ブロックが変位ベクトルを備える場合には、その変位ベクトルを出力する。隣接ブロックの予測パラメータに変位ベクトルが無い場合にはゼロベクトルを変位ベクトルとして出力する。   When the block adjacent to the target PU has a displacement vector, the displacement vector acquisition unit extracts the displacement vector from the prediction parameter memory 307, refers to the prediction parameter memory 307, and predicts the prediction flag of the block adjacent to the target PU. Read predFlagLX, reference picture index refIdxLX and vector mvLX. The displacement vector acquisition unit includes a reference layer determination unit 303111 therein. The displacement vector acquisition unit sequentially reads prediction parameters of blocks adjacent to the target PU, and determines whether the adjacent block has a displacement vector from the reference picture index of the adjacent block using the reference layer determination unit 303111. If the adjacent block has a displacement vector, the displacement vector is output. If there is no displacement vector in the prediction parameter of the adjacent block, the zero vector is output as the displacement vector.

(リファレンスレイヤ判定部303111) リファレンスレイヤ判定部303111は、入力された参照ピクチャインデックスrefIdxLXに基づいて、参照ピクチャインデックスrefIdxLXが指す参照ピクチャと、対象ピクチャの関係を示すリファレンスレイヤ情報reference_layer_infoを定める。リファレンスレイヤ情報reference_layer_infoは、参照ピクチャへのベクトルmvLXが変位ベクトルであるか動きベクトルであるかを示す情報である。   (Reference Layer Determination Unit 303111) The reference layer determination unit 303111 determines reference layer information reference_layer_info indicating the relationship between the reference picture indicated by the reference picture index refIdxLX and the target picture based on the input reference picture index refIdxLX. Reference layer information reference_layer_info is information indicating whether the vector mvLX to the reference picture is a displacement vector or a motion vector.

対象ピクチャのレイヤと参照ピクチャのレイヤが同じレイヤである場合の予測を、同一レイヤ予測と呼び、この場合に得られるベクトルは動きベクトルである。対象ピクチャのレイヤと、参照ピクチャのレイヤが異なるレイヤである場合の予測をレイヤ間予測と呼び、この場合に得られるベクトルは変位ベクトルである。   Prediction when the target picture layer and the reference picture layer are the same layer is called co-layer prediction, and the vector obtained in this case is a motion vector. Prediction when the target picture layer and the reference picture layer are different layers is called inter-layer prediction, and the vector obtained in this case is a displacement vector.

(デプスDV導出部351) デプスDV導出部351は、エントロピー復号部301において符号化データから復号されたデプスDV変換テーブルと、インター予測パラメータ復号部309から得られた変位ベクトル(NBDV)と、参照ピクチャメモリ306に格納されたデプス画像を用いて、以下の処理により、デプス由来の変位ベクトル(DoNBDV)を導出する。デプスDV導出部351は、導出対象となるブロック(サブブロック)の左上座標(xTL,yTL)、サブブロックの幅nSubBlkW、高さnSubBlkH、分割フラグsplitFlag、デプス画像refDepPels[][]、変位ベクトルMvDisp[]を入力とする。     (Depth DV Deriving Unit 351) The depth DV deriving unit 351 includes a depth DV conversion table decoded from the encoded data in the entropy decoding unit 301, a displacement vector (NBDV) obtained from the inter prediction parameter decoding unit 309, and a reference. Using the depth image stored in the picture memory 306, a displacement vector (DoNBDV) derived from the depth is derived by the following processing. The depth DV deriving unit 351 has the upper left coordinates (xTL, yTL) of the block (subblock) to be derived, the width nSubBlkW, the height nSubBlkH, the division flag splitFlag, the depth image refDepPels [] [], the displacement vector MvDisp. Use [] as input.

デプスDV導出部351は、サブブロックをさらに分割したサブサブブロックごとに、サブサブブロックのコーナーおよびその付近の点を複数個用いて、デプスの代表値maxDepを導出する。   The depth DV deriving unit 351 derives a depth representative value maxDep by using a plurality of sub-sub-block corners and points in the vicinity thereof for each sub-sub-block obtained by further dividing the sub-block.

(サブサブブロックへの分割) デプスDV導出部351は、分割フラグsplitFlagが1の場合(VSPの場合)には、ブロックをサブブロックに分割し、サブブロックをサブサブブロックに分割する。分割フラグsplitFlagが0の場合(デプスリファインの場合)には、ブロックの分割は行わない(サブブロック、サブサブブロックの幅、高さに、ブロックの幅と高さを設定する)。変位ベクトルの導出は、サブサブブロック単位に行われる。   (Division into Sub-subblocks) When the division flag splitFlag is 1 (in the case of VSP), the depth DV deriving unit 351 divides the block into sub-blocks and divides the sub-blocks into sub-sub-blocks. When the split flag splitFlag is 0 (in the case of depth refinement), the block is not divided (the width and height of the block are set in the width and height of the subblock and subsubblock). The derivation of the displacement vector is performed in units of sub-subblocks.

(ブロック分割) デプスDV導出部351は、分割フラグsplitFlagが1の場合、サブブロックの幅nSubBlkW、高さnSubBlkHに8を設定する。さらに、デプスDV導出部351は、サブブロック毎に、サブブロックを分割するサブサブブロックのサイズ(8×4又は4×8)を決定する。まず、サブブロックの代表するデプス値として、左上端の座標のデプス画像の画素値をrefDepPels[ xP0 ][ yP0 ]、右上端の画素値をrefDepPels[ xP1 ][ yP0 ]、左下端の画素値をrefDepPels[ xP1 ][ yP0 ]、右下端の画素値をrefDepPels[ xP0 ][ yP0 ]とした場合、以下の条件式が成立する場合(horSplitFlagが0以外の場合)には、サブサブブロックの幅nSubSubBlkW、高さnSubSubBlkHに、nSubBlkW>>1、高さnSubSubBlkHを設定し、成立しない場合には、サブサブブロックの幅nSubSubBlkW、高さnSubSubBlkHに、nSubBlkW、高さnSubSubBlkH>>1を設定する。   (Block Division) When the split flag splitFlag is 1, the depth DV deriving unit 351 sets 8 to the width nSubBlkW and the height nSubBlkH of the subblock. Furthermore, the depth DV deriving unit 351 determines the size (8 × 4 or 4 × 8) of the sub-subblock for dividing the subblock for each subblock. First, as the representative depth value of the sub-block, the pixel value of the depth image at the upper left coordinate is refDepPels [xP0] [yP0], the upper right pixel value is refDepPels [xP1] [yP0], and the lower left pixel value is When refDepPels [xP1] [yP0] and the pixel value at the lower right corner are refDepPels [xP0] [yP0], if the following conditional expression is satisfied (when horSplitFlag is other than 0), the width of the sub-subblock nSubSubBlkW, NSubBlkW >> 1 and height nSubSubBlkH are set in the height nSubSubBlkH. If not established, nSubBlkW and height nSubSubBlkH >> 1 are set in the width nSubSubBlkW and the height nSubSubBlkH of the sub-subblock.

horSplitFlag =( refDepPelsP0 > refDepPelsP3 ) == ( refDepPelsP1 > refDepPelsP2 )
なお、ブロック分割に用いるデプス画像上の座標xP0、yP0、xP1、yP1の導出方法は、ブロック分割参照位置導出(サブブロック座標導出)において、後述する。
horSplitFlag = (refDepPelsP0> refDepPelsP3) == (refDepPelsP1> refDepPelsP2)
A method for deriving coordinates xP0, yP0, xP1, and yP1 on the depth image used for block division will be described later in block division reference position derivation (subblock coordinate derivation).

分割フラグsplitFlagが0の場合、サブブロックの幅nSubBlkW、高さnSubBlkH、サブサブブロックの幅nSubSubBlkW、高さnSubSubBlkHに、ブロックの幅nPSW、高さnPSHを設定する。   When the split flag splitFlag is 0, the block width nPSW and height nPSH are set in the subblock width nSubBlkW, height nSubBlkH, subsubblock width nSubSubBlkW, and height nSubSubBlkH.

以下、サブサブブロック毎(デプス参照ブロック毎)に、代表デプス値を導出し、変位ベクトルを導出する。   Hereinafter, a representative depth value is derived for each sub-subblock (for each depth reference block), and a displacement vector is derived.

(代表デプス値の導出) 次に、デプスDV導出部351は、サブブロックの左上の座標を(xTL,yTL)、サブサブブロックの左上の相対座標(xSubB、ySubB)から、サブサブブロックの左端のX座標xP0と、右端のX座標xP1と、上端のY座標yP0と、下端のY座標yP1を設定する。   (Derivation of Representative Depth Value) Next, the depth DV deriving unit 351 determines the upper left coordinate of the sub-block as (xTL, yTL), and the upper left relative coordinate (xSubB, ySubB) of the sub-sub block as the leftmost X of the sub-sub block. Coordinate xP0, right end X coordinate xP1, upper end Y coordinate yP0, and lower end Y coordinate yP1 are set.

次に、デプスDV導出部351は、サブサブブロックのデプスの代表値を導出する。具体的には、サブサブブロックのコーナーおよびその付近4点のデプス画像の画素値refDepPels[ xD0 ][ yD0 ]、refDepPels[ xD0 ][ yD1 ]、refDepPels[ xD1 ][ yD0 ]、refDepPels[ xD1 ][ yD1 ]の最大値を以下の式を用いて導出し、代表デプス値maxDepとする。   Next, the depth DV deriving unit 351 derives a representative value of the depth of the sub-subblock. Specifically, the pixel values refDepPels [xD0] [yD0], refDepPels [xD0], refDepPels [xD1] [yD0], refDepPels [xD1] [yD1] of the depth image at the corner of the sub-sub block and the four points in the vicinity thereof ] Is derived using the following formula and is set as the representative depth value maxDep.

maxDep = 0
maxDep = Max( maxDep, refDepPels[ xD0 ][ yD0 ] )
maxDep = Max( maxDep, refDepPels[ xD1 ][ yD0] )
maxDep = Max( maxDep, refDepPels[ xD0][ yD1 ] )
maxDep = Max( maxDep, refDepPels[ xD1][ yD1 ] )
ここで関数Max(x,y)は、第1引数xが第2引数y以上であればxを、そうでなければyを返す関数である。
maxDep = 0
maxDep = Max (maxDep, refDepPels [xD0] [yD0])
maxDep = Max (maxDep, refDepPels [xD1] [yD0])
maxDep = Max (maxDep, refDepPels [xD0] [yD1])
maxDep = Max (maxDep, refDepPels [xD1] [yD1])
The function Max (x, y) is a function that returns x if the first argument x is greater than or equal to the second argument y, and returns y otherwise.

代表デプス値の導出に用いるデプス画像上の座標xP0、yP0、xP1、yP1の導出方法は代表デプス位置導出(サブサブブロック座標導出)において、後述する。   A method of deriving the coordinates xP0, yP0, xP1, and yP1 on the depth image used for deriving the representative depth value will be described later in the representative depth position derivation (sub-sub-block coordinate derivation).

なお、実施例4−1の場合のように、デプスDV導出部351は、サブサブブロックの上の隅2点を用いて代表デプス値maxDepを求めても良い。   Note that, as in the case of Example 4-1, the depth DV deriving unit 351 may obtain the representative depth value maxDep using the two upper corner points of the sub-subblock.

maxDep = 0
maxDep = Max( maxDep, refDepPels[ xD0 ][ yD0 ] )
maxDep = Max( maxDep, refDepPels[ xD1 ][ yD0] )
下記の式も同値である。
maxDep = 0
maxDep = Max (maxDep, refDepPels [xD0] [yD0])
maxDep = Max (maxDep, refDepPels [xD1] [yD0])
The following formula is also equivalent.

maxDep = Max( refDepPels[ xD0 ][ yD0 ], refDepPels[ xD1 ][ yD0] )
以上の説明では代表デプス値maxDepは、デプスの代表点の最大値を用いているが、平均値を用いることも可能である。この場合、デプスDV導出部351は、以下の式により代表デプス値maxDepを導出する。
maxDep = Max (refDepPels [xD0] [yD0], refDepPels [xD1] [yD0])
In the above description, the representative depth value maxDep uses the maximum value of the representative points of the depth, but an average value can also be used. In this case, the depth DV deriving unit 351 derives the representative depth value maxDep using the following equation.

maxDep = (refDepPels[ xD0 ][ yD0 ] + refDepPels[ xD1 ][ yD0 ] + refDepPels[ xD1 ][ yD1 ] + refDepPels[ xD1 ][ yD1 ]+2)>>2
なお、実施例4−1の場合のように、デプスDV導出部351は、サブサブブロックの上の隅2点を用いる場合には、代表デプス値maxDepを以下の式により平均値を求める。
maxDep = (refDepPels [xD0] [yD0] + refDepPels [xD1] [yD0] + refDepPels [xD1] [yD1] + refDepPels [xD1] [yD1] +2) >> 2
As in the case of Example 4-1, the depth DV deriving unit 351 obtains the average value of the representative depth value maxDep using the following expression when using the two upper corner points of the sub-subblock.

maxDep = (refDepPels[ xD0 ][ yD0 ] + refDepPels[ xD1 ][ yD0 ]+1)>>1
(変位ベクトルの導出) デプスDV導出部351は、代表デプス値maxDepとデプスDV変換テーブルDepthToDisparityBと変位ベクトル(NBDV)MvDispが示すレイヤのレイヤIDrefViewIdxを用いて、デプス由来の変位ベクトルの水平成分である視差配列disparitySamplesを、サブサブブロック内の画素(x、y)(xは0からnSubSubBlkW-1、yは0からnSubSubBlkH-1の値を取る)ごとに、以下の式Aを用いて導出する。
maxDep = (refDepPels [xD0] [yD0] + refDepPels [xD1] [yD0] +1) >> 1
(Derivation of Displacement Vector) The depth DV derivation unit 351 is a horizontal component of the displacement vector derived from the depth using the representative depth value maxDep, the depth DV conversion table DepthToDisparityB, and the layer IDrefViewIdx of the layer indicated by the displacement vector (NBDV) MvDisp. The disparity array disparitySamples is derived using the following formula A for each pixel (x, y) in the sub-subblock (x is a value from 0 to nSubSubBlkW-1, and y is a value from 0 to nSubSubBlkH-1).

disparitySamples[x][y] =DepthToDisparityB[refViewIdx][maxDep]・・・(式A)
つまり、導出された視差ベクトルは、ブロック内の各サブサブブロックに対して、視差ベクトル画像disparitySamples[x][y]に格納される。
disparitySamples [x] [y] = DepthToDisparityB [refViewIdx] [maxDep] ... (Formula A)
That is, the derived disparity vector is stored in the disparity vector image disparitySamples [x] [y] for each sub-subblock in the block.

for( yOff = 0; yOff < nSubSubBlkH; yOff++ )
for( xOff = 0; xOff < nSubSubBlkW; xOff++ ) {
x = xSubB + xOff
y = ySubB + yOff
disparitySamples[x][y] = DepthToDisparityB[refViewIdx][maxDep]
ここで、xOff、yOffは、各サブサブブロックのサブブロック左上座標(xSub、ySub)からの相対座標であり、また、サブサブブロック単位で符号化データから復号されたパラメータにより導出される参照ビューrefViewIdxのデプスDV変換テーブルDepthToDisparityBを用いて、代表デプス値maxDepから座標(x,y)における変位ベクトルの水平方法ベクトルdisparitySamples[x][y]が以下の式により導出されている。
for (yOff = 0; yOff <nSubSubBlkH; yOff ++)
for (xOff = 0; xOff <nSubSubBlkW; xOff ++) {
x = xSubB + xOff
y = ySubB + yOff
disparitySamples [x] [y] = DepthToDisparityB [refViewIdx] [maxDep]
Here, xOff and yOff are relative coordinates from the sub-block upper left coordinates (xSub, ySub) of each sub-sub block, and the reference view refViewIdx derived from the parameters decoded from the encoded data in sub-sub-block units. Using the depth DV conversion table DepthToDisparityB, the horizontal method vector disparitySamples [x] [y] of the displacement vector at the coordinates (x, y) is derived from the representative depth value maxDep by the following equation.

disparitySamples[x][y] = DepthToDisparityB[refViewIdx][maxDep]
なお、デプスDV変換テーブルDepthToDisparityBの要素DepthToDisparityB[d]は、傾きcp_scaleとオフセットcp_off、傾きの精度cp_precisionを用いて、以下の式によって求めることができる。パラメータcp_scale、cp_off、cp_precisionは参照する視点毎に符号化データ中のパラメータセットから復号する。
disparitySamples [x] [y] = DepthToDisparityB [refViewIdx] [maxDep]
The element DepthToDisparityB [d] of the depth DV conversion table DepthToDisparityB can be obtained by the following equation using the slope cp_scale, the offset cp_off, and the slope precision cp_precision. The parameters cp_scale, cp_off, and cp_precision are decoded from the parameter set in the encoded data for each viewpoint to be referred to.

log2Divは、BitDepthY -1 + cp_precision
offset = ( cp_off << BitDepthY ) + ( ( 1 << log2Div ) >> 1 )
scale = cp_scale
DepthToDisparityB[ d ] = ( scale * d + offset ) >> log2Div
(デプス値を導出する構成の詳細)
(概要) 上述したように、デプスアクセスの範囲を自由にすると、アクセスのバンド幅が大きくなってしまう。そこで本実施形態では、デプスアクセスを制限している。
log2Div is BitDepth Y -1 + cp_precision
offset = (cp_off << BitDepthY) + ((1 << log2Div) >> 1)
scale = cp_scale
DepthToDisparityB [d] = (scale * d + offset) >> log2Div
(Details of configuration for deriving depth values)
(Outline) As described above, if the depth access range is made free, the access bandwidth becomes large. Therefore, in this embodiment, depth access is restricted.

デプスは多くのオブジェクトにおいて、オブジェクト内で大きく変化しない、ほぼ一様の値である。この性質を考慮して、デプスアクセスは、それぞれのPUにおける4隅にアクセスするとし、個々のブロック内であればアクセス自体はまばらである。しかしながら、デプスアクセスの上端左の位置は制限されないため、ブロックにより全く異なる位置をアクセスする可能性が有り、アクセスの範囲は広がる。ここで、デプスを用いて変位ベクトルを求める技術は、変位ベクトルの垂直方向の範囲を、ほぼ0と仮定しており、かつ、デプス自体がほぼ一様であるということを考慮すれば、さらにアクセスを均一にすることで、帯域幅を適切に減ずることが可能である。   The depth is an almost uniform value that does not change greatly in the object in many objects. Considering this property, it is assumed that the depth access accesses four corners in each PU, and the access itself is sparse within each block. However, since the position at the upper left of the depth access is not limited, there is a possibility of accessing a completely different position depending on the block, and the access range is expanded. Here, the technique for obtaining the displacement vector using the depth assumes that the vertical range of the displacement vector is almost zero, and further considers that the depth itself is substantially uniform. It is possible to reduce the bandwidth appropriately by making the frequency uniform.

デプスに基づいた技術は2つあり、1つはデプスリファインメントであり、もう1つは視差合成予測(VSP)である。デプスリファインメントは、他の視点のデプス情報を用いて、より正確な視差ベクトルを得ている。隣接するPUのDVから導かれるネイバーベース視差ベクトル(NBDV)は、デプス由来NBDV(DoNBDV)と置き換えられる。このデプス由来NBDV(DoNBDV)は、他の視点画像における、PU位置からNBDV分シフトした位置のデプス値から導かれる。DVはカメラ位置が固定であれば、デプスと1対1対応するため、DVはデプス値から導かれ得る。   There are two techniques based on depth, one is depth refinement, and the other is disparity synthesis prediction (VSP). In depth refinement, more accurate disparity vectors are obtained using depth information of other viewpoints. The neighbor base disparity vector (NBDV) derived from the DV of the adjacent PU is replaced with the depth-derived NBDV (DoNBDV). This depth-derived NBDV (DoNBDV) is derived from the depth value at a position shifted by NBDV from the PU position in another viewpoint image. Since DV has a one-to-one correspondence with depth if the camera position is fixed, DV can be derived from the depth value.

視差合成予測(VSP)は、ブロック生成方法を予測する。その位置は、PUが自動的にそれぞれのサブPUへと分割される位置であり、そのサイズは、8×4または4×8である。そして、それぞれのサブPU視差ベクトルは、他の視点のデプス情報から導かれる。   Disparity synthesis prediction (VSP) predicts a block generation method. The position is a position where the PU is automatically divided into the respective sub PUs, and the size is 8 × 4 or 4 × 8. Each sub-PU disparity vector is derived from depth information of other viewpoints.

本実施形態では、デプスDV導出部351は、デプスアクセスする際に、常に制限されたアドレスのデータのみをアクセスするように、デプスアクセスに用いるデプスブロックのテクスチャブロックに対する相対位置の垂直方向の位置を0とする(実施例1−1)か、又は、デプスアクセスに用いるデプスブロックの垂直方向の位置を、テクスチャブロックによらずに4又は8の倍数に制限(実施例1−2)している。さらに、本実施形態では、デプスDV導出部351は、デプスアクセスを減らすために、VSPの分割の際に参照するサブブロックの隅の位置の垂直成分を4又は8の倍数(実施例2−1)にする。また、VSPおよびデプスリファインメントにおいて代表デプス値を定めるためにアクセスする代表デプス位置導出として、隅の位置の垂直成分を4又は8の倍数(実施例3−1)(実施例3−2)(実施例3−3)(実施例3−4)にする。なお、代表デプス値を定めるためにアクセスする代表デプス位置導出をVSPとデプスリファインメントの場合で異なる処理を用いることによりアクセスを低減することもできる。この場合を、(実施例4−1)(実施例4−2)で説明する。   In the present embodiment, the depth DV deriving unit 351 determines the vertical position of the relative position of the depth block used for the depth access to the texture block so that only the data of the limited address is always accessed during the depth access. 0 (Embodiment 1-1), or the vertical position of the depth block used for depth access is limited to a multiple of 4 or 8 regardless of the texture block (Embodiment 1-2). . Further, in the present embodiment, the depth DV deriving unit 351 reduces the vertical access to the vertical component of the corner position of the sub-block referred to when dividing the VSP by a multiple of 4 or 8 (Example 2-1). ). In addition, as a representative depth position derivation that is accessed to determine a representative depth value in VSP and depth refinement, the vertical component of the corner position is a multiple of 4 or 8 (Example 3-1) (Example 3-2) (Example 3-2) Example 3-3) (Example 3-4) is used. The access can also be reduced by using different processing for deriving the representative depth position to determine the representative depth value between the VSP and the depth refinement. This case will be described in (Example 4-1) (Example 4-2).

なお、各実施例は、単体でもデプスアクセスを容易にする効果を奏するが、組み合わせより大きな効果を得ることができる。例えば、デプスアクセスに用いるデプスブロックのテクスチャブロックに対する相対位置の垂直方向の位置を0とする実施例1−1と、参照するデプスブロックの下側の垂直方向位置yP1を、上側の垂直方向位置yP0にサブブロック高さnSubBlkHを加えた値となるようにしてデプスアクセスを減らす実施例2−1、代表デプス値を定めるためにアクセスする代表デプス位置導出をVSPとデプスリファインメントの場合ともに8の倍数とする実施例4−2(もしくは実施例4−2A、実施例3−3)を組み合わせることにより、デプスにアクセスする全ての処理において、デプスアクセスの垂直成分を8の倍数とすることができる。また、実施例1−1の代わりに実施例1−3を用いても8の倍数に制限することができる。実施例2−1と実施例4−2(実施例4−2A)の組み合わせによれば、サブブロック位置の導出と、デプスリファンメントにおけるサブサブブロック位置の導出を共通化することができる。   In addition, although each Example has the effect which makes depth access easy even if it is single, it can obtain a bigger effect than a combination. For example, the first embodiment in which the vertical position of the relative position of the depth block used for depth access with respect to the texture block is set to 0, and the lower vertical position yP1 to be referred to are referred to as the upper vertical position yP0. Example 2-1 in which depth access is reduced by adding sub-block height nSubBlkH to a value obtained by subtracting the representative depth position to be used to determine the representative depth value in both VSP and depth refinement in multiples of 8 In combination with Example 4-2 (or Example 4-2A, Example 3-3), the vertical component of depth access can be made a multiple of 8 in all processes accessing depth. Moreover, even if Example 1-3 is used instead of Example 1-1, it can restrict | limit to the multiple of 8. According to the combination of Example 2-1 and Example 4-2 (Example 4-2A), the derivation of the sub-block position and the derivation of the sub-sub-block position in the depth reference can be made common.

他に例えば、実施例1−1と、実施例2−1、実施例4−1(または実施例4−1A)を組み合わせることにより、デプスにアクセスする全ての処理において、デプスアクセスの垂直成分を4の倍数とすることができる。また、実施例1−1の代わりに実施例1−2を用いても4の倍数に制限することができる。実施例2−1と実施例4−1(実施例4−1A)の組み合わせによれば、サブブロック位置の導出と、デプスリファンメントにおけるサブサブブロック位置の導出を共通化することができる。   In addition, for example, by combining the embodiment 1-1, the embodiment 2-1, and the embodiment 4-1 (or the embodiment 4-1A), the vertical component of the depth access is changed in all the processes that access the depth. It can be a multiple of four. Moreover, even if Example 1-2 is used instead of Example 1-1, it can restrict | limit to the multiple of 4. According to the combination of Example 2-1 and Example 4-1 (Example 4-1A), the derivation of the sub-block position and the derivation of the sub-sub-block position in the depth reference can be made common.

他に例えば、デプスアクセスに用いるデプスブロックの垂直方向の位置を、4の倍数に制限する実施例1−2、参照するデプスブロックの下側の垂直方向位置yP1(yD1)を、上側の垂直方向位置yP0(yD0)にサブブロック高さnSubBlkH(サブサブブロック高さnSubSubBlkH)を加えた値となるようにしてデプスアクセスを減らす実施例2−1、実施例3−1を組み合わせることにより、デプスにアクセスする全ての処理において、デプスアクセスの垂直成分を4の倍数とすることができる。また、実施例2−1と実施例3−1の組み合わせによれば、サブブロック位置の導出とサブサブブロック位置の導出を共通化することができる。   In addition, for example, in Embodiment 1-2 in which the vertical position of the depth block used for depth access is limited to a multiple of 4, the lower vertical position yP1 (yD1) of the reference depth block is set to the upper vertical direction. Depth access is reduced by combining sub-block height nSubBlkH (sub-sub-block height nSubSubBlkH) to position yP0 (yD0), and the depth is reduced by combining the embodiments 2-1 and 3-1. In all processing, the vertical component of depth access can be a multiple of four. Moreover, according to the combination of Example 2-1 and Example 3-1, it is possible to share the derivation of the sub-block position and the derivation of the sub-sub-block position.

他に例えば、デプス参照位置の垂直成分をラウンドする実施例2−2、実施例3−2を組み合わせることにより、デプスにアクセスする全ての処理において、デプスアクセスの垂直成分を4の倍数とすることができる。また、実施例2−2と実施例3−2の組み合わせによれば、サブブロック位置の導出とサブサブブロック位置の導出を共通化することができる。   In addition, for example, by combining the embodiment 2-2 and the embodiment 3-2 that round the vertical component of the depth reference position, the vertical component of the depth access is set to a multiple of 4 in all the processes that access the depth. Can do. Moreover, according to the combination of Example 2-2 and Example 3-2, subblock position derivation and subsubblock position derivation can be made common.

他に例えば、デプス参照位置の垂直成分をラウンドする実施例2−3、実施例3−3を組み合わせることにより、デプスにアクセスする全ての処理において、デプスアクセスの垂直成分を8の倍数とすることができる。また、実施例2−2と実施例3−2の組み合わせによれば、サブブロック位置の導出とサブサブブロック位置の導出を共通化することができる。   In addition, for example, by combining the embodiment 2-3 and the embodiment 3-3 that round the vertical component of the depth reference position, the vertical component of the depth access is set to a multiple of 8 in all the processes that access the depth. Can do. Moreover, according to the combination of Example 2-2 and Example 3-2, subblock position derivation and subsubblock position derivation can be made common.

(視差アレイの導出プロセス) デプスDV導出部351は、デプスブロックの上端左の位置(xTL,yTL)を、ブロックの左上座標(xP、yP)に変位ベクトルmvDisp[]だけ加算した位置として下記によって導出する。
xTL = xP + ( ( mvDisp[0] + 2 ) >> 2 )
yTL = yP (実施例1−1)
又は、
yTL = ((yP + ( ( mvDisp[1] + 1 )>>2)+2) >> 2 ) << 2 (実施例1−2:4の倍数の場合)
yTL = ((yP + ( ( mvDisp[1] + 1 )>>2)+4) >> 3 ) << 3 (実施例1−2:8の倍数の場合)
サイズ(nPSW)x(nPSH)のアレイdisparitySamplesは、以下の通りに特定されることにより導出する。
(Parallax Array Derivation Process) The depth DV deriving unit 351 sets the position (x TL , y TL ) at the upper left corner of the depth block as a position obtained by adding the displacement vector mvDisp [] to the upper left coordinates (xP, yP) of the block. Derived by:
x TL = xP + ((mvDisp [0] + 2) >> 2)
y TL = yP (Example 1-1)
Or
y TL = ((yP + ((mvDisp [1] + 1) >> 2) +2) >> 2) << 2 (Example 1-2: In case of multiple of 4)
y TL = ((yP + ((mvDisp [1] + 1) >> 2) +4) >> 3) << 3 (Example 1-2: In case of multiple of 8)
The array disparitySamples of size (nPSW) × (nPSH) is derived by being specified as follows.

(実施例1−1)では、ブロックの左上座標(xP、yP)に加える変位として、変位ベクトルmvDisp[]の水平成分のみを用い、垂直成分は0としている。デプスアクセスに用いる変位ベクトルの垂直成分を0としているため、ブロックの座標が定まれば、デプスアクセス時の変位は水平方向に限定されるため、アクセスが容易になる(ハードウェアでのデプス画像の転送が容易になり、ソフトウェアにおいてもキャッシュが当たりやすくなる)。なお、ブロックの座標はCU単位であるデプスリファインの場合には8の倍数、PU単位であるVSPでは4の倍数であるから、デプスブロックの位置は必ず4の倍数となる。   In Example 1-1, only the horizontal component of the displacement vector mvDisp [] is used as the displacement to be added to the upper left coordinates (xP, yP) of the block, and the vertical component is zero. Since the vertical component of the displacement vector used for depth access is set to 0, if the coordinates of the block are determined, the displacement during depth access is limited to the horizontal direction, so access is easy (depth image in hardware). Transfer becomes easy, and it is easy to hit the cache in software). Note that the coordinates of the block are multiples of 8 for depth refinement in CU units, and multiples of 4 for VSPs in PU units, so the position of the depth block is always a multiple of 4.

(実施例1−2)では、ブロックの左上座標(xP、yP)に加える変位として、変位ベクトルmvDisp[]の水平成分と垂直成分を用いるが、デプスブロックの座標を4の倍数に限定する。なお、4の倍数への限定する処理は上記に限定されない。例えば、右シフトにより4の剰余の切り捨てて及び2ビット左シフトは、以下の処理で行うこともできる。
yTL = (((yP<<2) + mvDisp[1] + 8) >> 4 ) << 2
(実施例1−3)では、ブロックの左上座標(xP、yP)に加える変位として、変位ベクトルmvDisp[]の水平成分と垂直成分を用いるが、デプスブロックの座標を8の倍数に限定する。
yTL = (((yP<<2) + mvDisp[1] + 16) >> 5 ) << 3
これらの場合も、デプスアクセス時の変位は垂直方向位置が限定されるためアクセスが容易になる。
In Example 1-2, the horizontal and vertical components of the displacement vector mvDisp [] are used as the displacement added to the upper left coordinates (xP, yP) of the block, but the coordinates of the depth block are limited to multiples of 4. Note that the process of limiting to a multiple of 4 is not limited to the above. For example, truncation of the remainder of 4 by right shift and 2-bit left shift can be performed by the following processing.
y TL = (((yP << 2) + mvDisp [1] + 8) >> 4) << 2
In Example 1-3, the horizontal and vertical components of the displacement vector mvDisp [] are used as the displacement added to the upper left coordinates (xP, yP) of the block, but the coordinates of the depth block are limited to multiples of 8.
y TL = (((yP << 2) + mvDisp [1] + 16) >> 5) << 3
Also in these cases, the displacement at the depth access is easy to access because the vertical position is limited.

デプスDV導出部351は、デプスブロック左上位置(xTL、yTL)、デプスブロック左上位置に対するサブブロック左上位置の相対位置(xB、yB)、サブサブブロックの左上位置の相対位置(xSubB、ySubB)から、ブロック分割参照位置(サブブロック座標)xP0、xP1、yP0、yP1、代表デプス位置(サブサブブロック座標)xD0、xD1、yP0、yP1を導出する。 The depth DV deriving unit 351 includes a depth block upper left position (x TL, y TL ), a relative position (xB, yB) of the upper left position of the sub block with respect to the upper left position of the depth block, and a relative position (xSubB, ySubB) of the upper left position of the sub sub block. From these, block division reference positions (sub-block coordinates) xP0, xP1, yP0, yP1, and representative depth positions (sub-sub-block coordinates) xD0, xD1, yP0, yP1 are derived.

(サブブロック座標の導出プロセス) 以下、VSPのサブサブブロック分割の判定に用いるデプス画像の参照位置であるブロック分割参照位置xP0, xP1, yP0, yP1の導出処理を説明する。   (Subblock Coordinate Derivation Process) Derivation processing of block division reference positions xP0, xP1, yP0, and yP1 that are reference positions of depth images used for determination of sub-subblock division of VSP will be described below.

(サブブロック座標の導出プロセス:実施例2−1) デプスDV導出部351は、VSPのサブサブブロック分割の判定に用いるデプス画像の参照位置であるブロック分割参照位置を導出する。デプスDV導出部351は、下側の垂直方向位置yP1を、上側の垂直方向位置yP0にサブブロック高さnSubBlkHを加えた値となるように、サブブロック座標を以下のように導出できる。   (Subblock Coordinate Derivation Process: Example 2-1) The depth DV deriving unit 351 derives a block division reference position that is a reference position of a depth image used for determination of sub-subblock division of VSP. The depth DV deriving unit 351 can derive the sub-block coordinates so that the lower vertical position yP1 becomes a value obtained by adding the sub-block height nSubBlkH to the upper vertical position yP0.

xP0 = Clip3( 0, pic_width_in_luma_samples− 1, xTL + xB )
yP0 = Clip3( 0, pic_height_in_luma_samples − 1, yTL + yB )
xP1 = Clip3( 0, pic_width_in_luma_samples− 1, xTL + xB + nSubBlkW − 1 )
yP1 = Clip3( 0, pic_height_in_luma_samples −1, yTL + yB + nSubBlkH )
なお、pic_width_in_luma_samplesとpic_height_in_luma_samplesは、それぞれ画像の幅と高さを表し、関数Clip3(x,y,z)は、第3引数zが第1引数xより小さい場合にはxを、zが第2引数yよりも大きければyを、そうでなければzを返す関数である。(以下同様)。なお、別の処理において画面内に収めるクリップがなされる場合(yP0のように左上位置yTLが既にクリップされている場合には画面外にでることがない場合)などにおいては、デプスDV導出部351におけるクリップ処理は省略しても良い(サブサブブロック座標導出処理においても同様)。クリップを外した表現を示すと、以下となる。
xP0 = Clip3 (0, pic_width_in_luma_samples− 1, x TL + xB)
yP0 = Clip3 (0, pic_height_in_luma_samples − 1, y TL + yB)
xP1 = Clip3 (0, pic_width_in_luma_samples− 1, x TL + xB + nSubBlkW − 1)
yP1 = Clip3 (0, pic_height_in_luma_samples −1, y TL + yB + nSubBlkH)
Note that pic_width_in_luma_samples and pic_height_in_luma_samples represent the width and height of the image, respectively, and the function Clip3 (x, y, z) is x when the third argument z is smaller than the first argument x, and z is the second argument. If y is larger than y, y is returned. Otherwise, z is returned. (The same applies hereinafter). In addition, when a clip that fits in the screen is made in another process (when the upper left position yTL is already clipped like yP0), the depth DV deriving unit 351 is not used. The clip processing at may be omitted (the same applies to the sub-sub-block coordinate derivation processing). The expression with the clip removed is as follows.

xP0 = xTL + xB
yP0 = yTL + yB
xP1 = xTL + xB + nSubBlkW − 1
yP1 = yTL + yB + nSubBlkH
実施例2−1では、サブブロックの左下および右下の垂直方向位置を求める際に、サブブロックの左上および右上の垂直位置であるyp0にサブブロックの高さnSubBlkH(nSubSubBlkH)を加えた値を用いる。サブブロックの高さnSubBlkHの最小値は8であるから、(サブブロックの左上位置の垂直成分yTLが8の倍数であれば)デプスアクセスする際の垂直方向位置は8の倍数のラインに限定される。なお、サブブロックの左上座標の垂直成分yTLを8の倍数とする方法は、実施例1−3の制限(8の倍数の場合)を用いる方法などにより行うことができる。
xP0 = x TL + xB
yP0 = y TL + yB
xP1 = x TL + xB + nSubBlkW − 1
yP1 = y TL + yB + nSubBlkH
In Example 2-1, when obtaining the vertical position of the lower left and lower right of the sub-block, a value obtained by adding the height nSubBlkH (nSubSubBlkH) of the sub-block to yp0 which is the vertical position of the upper left and upper right of the sub-block. Use. Since the minimum value of the sub-block height nSubBlkH is 8, the vertical position at the time of depth access is limited to a line that is a multiple of 8 (if the vertical component y TL at the upper left position of the sub-block is a multiple of 8). Is done. Note that the method of making the vertical component y TL of the upper left coordinate of the sub-block a multiple of 8 can be performed by a method using the limitation (in the case of a multiple of 8) of Example 1-3.

図24に、実施例2−1の場合のデプスDV導出部351の動作例を示す。図24に示すように、実施例2−1では、デプスDV導出部351は、サブブロックサイズが8×8の場合、すなわち8×8サブブロック単位で、サブサブブロックに分割する場合には、8の倍数のラインのみにデプスアクセスする。サブブロックサイズを仮に4×4にした場合には、4の倍数のラインのみにデプスアクセスする。   FIG. 24 illustrates an operation example of the depth DV deriving unit 351 in the case of the embodiment 2-1. As shown in FIG. 24, in Example 2-1, the depth DV deriving unit 351 performs 8 when the subblock size is 8 × 8, that is, when dividing into 8 × 8 subblock units. Depth access only to multiples of. If the sub-block size is set to 4 × 4, depth access is made only to lines that are multiples of 4.

(サブブロック座標の導出プロセス:実施例2−2) デプスDV導出部351は、以下のように、垂直方向座標をラウンドする処理を加え、サブブロックの左上位置の垂直成分yTLが4の倍数などに限定されるか否かによらずに、デプスをアクセスする点の垂直成分が4の倍数に限定されるようにしても良い。 (Subblock Coordinate Derivation Process: Example 2-2) The depth DV deriving unit 351 adds a process of rounding the vertical coordinate as follows, and the vertical component y TL at the upper left position of the subblock is a multiple of 4. The vertical component of the point at which the depth is accessed may be limited to a multiple of 4, regardless of whether or not it is limited.

デプスDV導出部351は、ブロック分割参照位置を以下のように導出できる。   The depth DV deriving unit 351 can derive the block division reference position as follows.

xP0 = Clip3( 0, pic_width_in_luma_samples − 1, xTL + xB )
yP0 = Clip3( 0, pic_height_in_luma_samples − 1, (yTL + yB + round0) >> 2) << 2)
xP1 = Clip3( 0, pic_width_in_luma_samples −1, xTL + xB + nSubBlkW −1 )
yP1 = Clip3( 0, pic_height_in_luma_samples − 1, (yTL + yB + nSubBlkH − 1+ round1) >> 2) << 2)
ここで、round0、round1は、右に2ビット、左に2ビットシフトする処理においてラウンド方向を制御するための定数(ここではround0=0..3、round1=0..3などとする)。
xP0 = Clip3 (0, pic_width_in_luma_samples − 1, x TL + xB)
yP0 = Clip3 (0, pic_height_in_luma_samples − 1, (y TL + yB + round0) >> 2) << 2)
xP1 = Clip3 (0, pic_width_in_luma_samples −1, x TL + xB + nSubBlkW −1)
yP1 = Clip3 (0, pic_height_in_luma_samples − 1, (y TL + yB + nSubBlkH − 1+ round1) >> 2) << 2)
Here, round0 and round1 are constants for controlling the round direction in the process of shifting 2 bits to the right and 2 bits to the left (here, round0 = 0..3, round1 = 0..3, etc.).

(サブブロック座標の導出プロセス:実施例2−3) デプスDV導出部351は、以下のように、垂直方向座標をラウンドする処理を加え、サブブロックの左上位置の垂直成分yTLによらずに、デプスをアクセスする点の垂直成分が8の倍数に限定されるようにしても良い。 (Subblock Coordinate Derivation Process: Example 2-3) The depth DV deriving unit 351 adds processing for rounding the vertical coordinate as follows, regardless of the vertical component yTL at the upper left position of the subblock. The vertical component of the point for accessing the depth may be limited to a multiple of 8.

デプスDV導出部351は、ブロック分割参照位置を以下のように導出できる。   The depth DV deriving unit 351 can derive the block division reference position as follows.

xP0 = Clip3( 0, pic_width_in_luma_samples − 1, xTL + xB )
yP0 = Clip3( 0, pic_height_in_luma_samples − 1, (yTL + yB + round0) >> 3) << 3)
xP1 = Clip3( 0, pic_width_in_luma_samples −1, xTL + xB + nSubBlkW −1 )
yP1 = Clip3( 0, pic_height_in_luma_samples − 1, (yTL + yB + nSubBlkH − 1+ round1) >> 3) << 3)
ここで、round0、round1は、右に3ビット、左に3ビットシフトする処理においてラウンド方向を制御するための定数(ここではround0=4..7、round1=4..7とする)。
xP0 = Clip3 (0, pic_width_in_luma_samples − 1, x TL + xB)
yP0 = Clip3 (0, pic_height_in_luma_samples − 1, (y TL + yB + round0) >> 3) << 3)
xP1 = Clip3 (0, pic_width_in_luma_samples −1, x TL + xB + nSubBlkW −1)
yP1 = Clip3 (0, pic_height_in_luma_samples − 1, (y TL + yB + nSubBlkH − 1+ round1) >> 3) << 3)
Here, round0 and round1 are constants for controlling the round direction in the process of shifting 3 bits to the right and 3 bits to the left (here, round0 = 4..7, round1 = 4..7).

実施例2−3では、サブブロックのコーナー座標の垂直方向位置yPO、yP1を、右に3ビットシフト、左に3ビットシフトする処理を含んで導出することにより、8の倍数となるように設定する。   In the embodiment 2-3, the vertical position yPO, yP1 of the corner coordinates of the sub-block is set to be a multiple of 8 by deriving including the process of shifting 3 bits to the right and 3 bits to the left. To do.

(サブサブブロック座標の導出プロセス) 以下、デプス参照ブロック(サブサブブロック)から代表デプスを求める場合に用いる、代表デプスの位置xD0,xD1,yD1,yD2の導出処理を説明する。   (Sub-subblock coordinate derivation process) Described below is the process of deriving the representative depth positions xD0, xD1, yD1, and yD2, which are used when the representative depth is obtained from the depth reference block (sub-subblock).

(サブサブブロック座標の導出プロセス:実施例3−1) デプスDV導出部351は、サブサブブロック座標(代表デプス位置)を以下のように導出できる。   (Sub-sub-block coordinate derivation process: Example 3-1) The depth DV deriving unit 351 can derive the sub-sub-block coordinates (representative depth position) as follows.

xD0 = Clip3( 0, pic_width_in_luma_samples − 1, xTL + xSubB )
yD0 = Clip3( 0, pic_height_in_luma_samples − 1, yTL + ySubB )
xD1 = Clip3( 0, pic_width_in_luma_samples −1, xTL + xSubB + nSubSubBlkW −1)
yD1 = Clip3( 0, pic_height_in_luma_samples − 1, yTL + ySubB + nSubSubBlkH)
実施例3−1では、サブサブブロックの左下および右下の垂直方向位置を求める際に、サブサブブロックの左上および右上の垂直位置にサブサブブロックの高さnSubSubBlkHを加えた値を用いる。実施例3−1の処理では、デプスリファインメントの場合、サブサブブロックの高さの最小値は8であるから、デプスアクセスする際の垂直方向位置は8の倍数のラインに限定される。VSPの場合、サブサブブロックの高さの最小値は4であるから、(実施例1の制限によりデプスブロックの左上位置の垂直成分yTLが4の倍数であれば)、デプスアクセスする際の垂直方向位置は4の倍数のラインに限定される。これにより、デプスアクセスが容易になる。図20、図25に、実施例3−1の場合のデプスDV導出部351の動作例(VSPの場合)を示す。図20、図25に示すように、実施例3−1では、デプスDV導出部351は、参照デプスブロック(サブサブブロックサイズ)が8×4の場合、4の倍数のラインのみにデプスアクセスする。また、デプスDV導出部351は、参照デプスブロックが4×8の場合、8の倍数のラインのみにデプスアクセスする。
xD0 = Clip3 (0, pic_width_in_luma_samples − 1, x TL + xSubB)
yD0 = Clip3 (0, pic_height_in_luma_samples − 1, y TL + ySubB)
xD1 = Clip3 (0, pic_width_in_luma_samples −1, x TL + xSubB + nSubSubBlkW −1)
yD1 = Clip3 (0, pic_height_in_luma_samples − 1, y TL + ySubB + nSubSubBlkH)
In Example 3-1, when the lower left and lower right vertical positions of the sub sub block are obtained, a value obtained by adding the height nSubSubBlkH of the sub sub block to the upper left and upper right vertical positions of the sub sub block is used. In the processing of Example 3-1, in the case of depth refinement, since the minimum value of the height of the sub-subblock is 8, the vertical position at the time of depth access is limited to lines that are multiples of 8. In the case of VSP, since the minimum value of the height of the sub-sub-block is 4, (if the vertical component y TL at the upper left position of the depth block is a multiple of 4 due to the limitation of the first embodiment), the vertical at the time of depth access Directional positions are limited to lines that are multiples of four. This facilitates depth access. 20 and 25 show an operation example (in the case of VSP) of the depth DV deriving unit 351 in the case of the embodiment 3-1. As illustrated in FIGS. 20 and 25, in Example 3-1, the depth DV deriving unit 351 performs depth access only to lines that are multiples of 4 when the reference depth block (sub-subblock size) is 8 × 4. Further, when the reference depth block is 4 × 8, the depth DV deriving unit 351 performs depth access only to lines that are multiples of 8.

図24に、実施例3−1の場合のデプスDV導出部351の動作例(デプスリファインの場合)を示す。図24に示すように、実施例3−1では、デプスDV導出部351は、デプスリファインの場合、8の倍数のラインのみにデプスアクセスする。   FIG. 24 illustrates an operation example (in the case of depth refinement) of the depth DV deriving unit 351 in the case of the embodiment 3-1. As illustrated in FIG. 24, in the example 3-1, the depth DV deriving unit 351 performs depth access only to lines that are multiples of 8 in the case of depth refinement.

(サブサブブロックの導出処理:実施例3−2) デプスDV導出部351は、代表デプス位置を以下のように、ラウンド演算を用いて導出できる。   (Sub-sub-block derivation process: Example 3-2) The depth DV deriving unit 351 can derive the representative depth position using a round operation as follows.

xD0 = Clip3( 0, pic_width_in_luma_samples − 1, xTL + xSubB )
yD0 = Clip3( 0, pic_height_in_luma_samples − 1, ((yTL + ySubB + round0) >> 2) << 2 )
xD1 = Clip3( 0, pic_width_in_luma_samples −1, xTL + xSubB + nSubSubBlkW −1)
yD1 = Clip3( 0, pic_height_in_luma_samples − 1, ((yTL + ySubB + nSubSubBlkH − 1+ round1) >> 2) << 2 )
ここで、round0、round1は、右に2ビット、左に2ビットシフトする処理においてラウンド方向を制御するための定数(例えば、round0=0..3、round1=0..3とする)。
xD0 = Clip3 (0, pic_width_in_luma_samples − 1, x TL + xSubB)
yD0 = Clip3 (0, pic_height_in_luma_samples − 1, ((y TL + ySubB + round0) >> 2) << 2)
xD1 = Clip3 (0, pic_width_in_luma_samples −1, x TL + xSubB + nSubSubBlkW −1)
yD1 = Clip3 (0, pic_height_in_luma_samples − 1, ((y TL + ySubB + nSubSubBlkH − 1+ round1) >> 2) << 2)
Here, round0 and round1 are constants for controlling the round direction in the process of shifting 2 bits to the right and 2 bits to the left (for example, round0 = 0..3 and round1 = 0..3).

実施例3−2では、サブサブブロックのコーナー座標の垂直方向位置yDO、yD1を、右に2ビットシフト、左に2ビットシフトする処理を含んで導出することにより、4の倍数となるように設定する。   In Example 3-2, the vertical position yDO, yD1 of the corner coordinates of the sub-subblock is set to be a multiple of 4 by deriving including the process of shifting 2 bits to the right and 2 bits to the left. To do.

実施例3−2は、サブサブブロックの参照位置(代表デプス位置)の垂直方向位置yD0、yD1を4の倍数に限定する。これにより、デプスアクセスが容易になる。   In Example 3-2, the vertical position yD0 and yD1 of the reference position (representative depth position) of the sub-subblock is limited to a multiple of four. This facilitates depth access.

(サブサブブロックの導出処理:実施例3−3) デプスDV導出部351は、代表デプス位置を以下のように、ラウンド演算を用いて導出できる。   (Sub-sub-block derivation process: Example 3-3) The depth DV deriving unit 351 can derive the representative depth position using a round operation as follows.

xD0 = Clip3( 0, pic_width_in_luma_samples − 1, xTL + xSubB )
yD0 = Clip3( 0, pic_height_in_luma_samples − 1, ((yTL + ySubB + round0) >> 3) << 3 )
xD1 = Clip3( 0, pic_width_in_luma_samples −1, xTL + xSubB + nSubSubBlkW −1)
yD1 = Clip3( 0, pic_height_in_luma_samples − 1, ((yTL + ySubB + nSubSubBlkH − 1+ round1) >> 3) << 3 )
ここで、round0、round1は、右に3ビット、左に3ビットシフトする処理においてラウンド方向を制御するための定数(例えば、round0=0..7、round1=0..7とする)。
xD0 = Clip3 (0, pic_width_in_luma_samples − 1, x TL + xSubB)
yD0 = Clip3 (0, pic_height_in_luma_samples − 1, ((y TL + ySubB + round0) >> 3) << 3)
xD1 = Clip3 (0, pic_width_in_luma_samples −1, x TL + xSubB + nSubSubBlkW −1)
yD1 = Clip3 (0, pic_height_in_luma_samples − 1, ((y TL + ySubB + nSubSubBlkH − 1+ round1) >> 3) << 3)
Here, round0 and round1 are constants for controlling the round direction in the process of shifting 3 bits to the right and 3 bits to the left (for example, round0 = 0..7, round1 = 0..7).

実施例3−3では、サブサブブロックのコーナー座標の垂直方向位置yDO、yD1を、右に3ビットシフト、左に3ビットシフトする処理を含んで導出することにより、8の倍数となるように設定する。実施例3−3では、サブサブブロックの参照位置(代表デプス位置)の垂直方向位置yD0、yD1を8の倍数に限定する。これにより、デプスアクセスが容易になる。   In Example 3-3, the vertical position yDO, yD1 of the corner coordinates of the sub-sub block is set to be a multiple of 8 by deriving including the process of shifting 3 bits to the right and 3 bits to the left. To do. In Example 3-3, the vertical position yD0 and yD1 of the reference position (representative depth position) of the sub-subblock is limited to a multiple of 8. This facilitates depth access.

図21、図28に実施例3−3の場合のデプスDV導出部351の動作例を示す(VSPの場合、round0=4..7,round1=1..4の場合)。図21、図28に示すように、実施例3−3では、デプスDV導出部351は、サブサブブロックのサイズ(8×4もしくは4×8)に関わらず、サブサブブロックのデプス画像を参照する際に、8の倍数のラインのみにアクセスする。なお、図28の例は、ラウンドを制御する定数round0が4から7(例えば4)、round1が1から4(例えば4)の場合である。この定数を選択する場合、サブサブブロックの左上座標の垂直成分yTLに応じてアクセスするラインが変化するため、デプス由来の変位ベクトルを導出する効果の意味では好ましい。 FIG. 21 and FIG. 28 show an example of the operation of the depth DV deriving unit 351 in the case of the embodiment 3-3 (in the case of VSP, round0 = 4..7, round1 = 1..4). As shown in FIGS. 21 and 28, in Example 3-3, the depth DV deriving unit 351 refers to the depth image of the sub-subblock regardless of the size (8 × 4 or 4 × 8) of the sub-subblock. In addition, only lines that are multiples of 8 are accessed. The example of FIG. 28 is a case where the constant round0 for controlling the round is 4 to 7 (for example, 4) and round1 is 1 to 4 (for example, 4). If you choose this constant, since the line to be accessed in response to the vertical component y TL of the upper left coordinates of the sub-sub-block is changed, preferably in the sense of the effect deriving a displacement vector from depth.

(サブサブブロックの導出処理:実施例3−4) デプスDV導出部351は、代表デプス位置を以下のように導出できる。   (Sub-subblock Derivation Process: Example 3-4) The depth DV deriving unit 351 can derive the representative depth position as follows.

xD0 = Clip3( 0, pic_width_in_luma_samples − 1, xTL + xSubB )
yD0 = Clip3( 0, pic_height_in_luma_samples − 1, yTL + ySubB )
xD1 = Clip3( 0, pic_width_in_luma_samples −1, xTL + xSubB + nSubSubBlkW −1)
yD1 = yD0
実施例3−4では、サブサブブロックの左下位置と右下位置が、左上位置と右上位置と一致するように設定する(垂直方向位置yD0とyD1に同じ値を設定する)。従って実質的には2点のみにアクセスするのと同じとなる。図26に、実施例3−4の場合のデプスDV導出部351の動作例を示す。図26に示すように、実施例3−4では、デプスDV導出部351は、参照デプスブロック(サブサブブロックサイズ)が8×4の場合、4の倍数のラインのみにデプスアクセスする。また、デプスDV導出部351は、参照デプスブロックが4×8の場合、8の倍数のラインのみにデプスアクセスする。実施例3−4では、デプスアクセスする際の垂直方向位置は4の倍数のラインに限定されることにより、デプスアクセスが容易になる。また、サブサブブロックのアクセスが実質的に2点となるため、デプスアクセスが容易になる。
xD0 = Clip3 (0, pic_width_in_luma_samples − 1, x TL + xSubB)
yD0 = Clip3 (0, pic_height_in_luma_samples − 1, y TL + ySubB)
xD1 = Clip3 (0, pic_width_in_luma_samples −1, x TL + xSubB + nSubSubBlkW −1)
yD1 = yD0
In Example 3-4, the lower left position and the lower right position of the sub-subblock are set so as to coincide with the upper left position and the upper right position (the same value is set in the vertical positions yD0 and yD1). Therefore, it is substantially the same as accessing only two points. FIG. 26 illustrates an operation example of the depth DV deriving unit 351 in the case of the embodiment 3-4. As illustrated in FIG. 26, in Example 3-4, the depth DV deriving unit 351 performs depth access only to lines that are multiples of 4 when the reference depth block (sub-subblock size) is 8 × 4. Further, when the reference depth block is 4 × 8, the depth DV deriving unit 351 performs depth access only to lines that are multiples of 8. In the embodiment 3-4, depth access is facilitated by limiting the vertical position for depth access to lines that are multiples of four. Further, since the sub-sub-block access is substantially two points, depth access is facilitated.

(サブサブブロックの導出処理:実施例4−1) 実施例4−1では、サブサブブロックの導出処理は、VSPの場合(splitFlag=1)と、デプスリファインメントの場合(splitFlag=0)の場合で、異なる処理を用いても良い。デプスDV導出部351は、ブロック分割する場合(VSPの場合)の代表デプス位置を以下のように導出する。VSPでは、代表デプス位置は、2点(xD0, yD0)、(xD1, yD0)である。       (Sub-subblock derivation process: Example 4-1) In Example 4-1, the sub-subblock derivation process is performed in the case of VSP (splitFlag = 1) and in the case of depth refinement (splitFlag = 0). Different processing may be used. The depth DV deriving unit 351 derives the representative depth position when the block is divided (in the case of VSP) as follows. In VSP, the representative depth positions are two points (xD0, yD0) and (xD1, yD0).

xD0 = Clip3( 0, pic_width_in_luma_samples − 1, xTL + xSubB )
yD0 = Clip3( 0, pic_height_in_luma_samples − 1, yTL + ySubB )
xD1 = Clip3( 0, pic_width_in_luma_samples −1, xTL + xSubB + nSubSubBlkW −1)
ここで、デプスDV導出部351は、以下の式により代表デプス値maxDepを導出する。
xD0 = Clip3 (0, pic_width_in_luma_samples − 1, x TL + xSubB)
yD0 = Clip3 (0, pic_height_in_luma_samples − 1, y TL + ySubB)
xD1 = Clip3 (0, pic_width_in_luma_samples −1, x TL + xSubB + nSubSubBlkW −1)
Here, the depth DV deriving unit 351 derives the representative depth value maxDep by the following equation.

maxDep = Max( refDepPels[ xP0 ][ yP0 ], refDepPels[ xP0 ][ yP1] )
また、ブロック分割しない場合(デプスリファインの場合)の代表デプス位置は、以下のように導出できる。
maxDep = Max (refDepPels [xP0] [yP0], refDepPels [xP0] [yP1])
In addition, the representative depth position when not dividing blocks (in the case of depth refinement) can be derived as follows.

xD0 = Clip3( 0, pic_width_in_luma_samples − 1, xTL + xSubB )
yD0 = Clip3( 0, pic_height_in_luma_samples − 1, yTL + ySubB )
xD1 = Clip3( 0, pic_width_in_luma_samples −1, xTL + xSubB + nSubSubBlkW −1)
yD1 = Clip3( 0, pic_width_in_luma_samples −1, yTL + ySubB + nSubSubBlkH)
デプスリファインでは、代表デプス位置は、4点(xD0, yD0)、(xD1, yD0)、(xD0, yD1)、(xD1, yD1)であり、デプスDV導出部351は、既に説明したように、4点のデプス値から代表デプス値maxDepを導出する。実施例4−1では、ブロック分割する場合(VSPの場合)にはサブサブブロックの上側のみを参照し、ブロック分割しない場合(デプスリファインの場合)にサブサブブロックの上側と下側を参照する。
xD0 = Clip3 (0, pic_width_in_luma_samples − 1, x TL + xSubB)
yD0 = Clip3 (0, pic_height_in_luma_samples − 1, y TL + ySubB)
xD1 = Clip3 (0, pic_width_in_luma_samples −1, x TL + xSubB + nSubSubBlkW −1)
yD1 = Clip3 (0, pic_width_in_luma_samples −1, y TL + ySubB + nSubSubBlkH)
In the depth refinement, the representative depth positions are four points (xD0, yD0), (xD1, yD0), (xD0, yD1), (xD1, yD1), and the depth DV deriving unit 351, as already described, A representative depth value maxDep is derived from the depth values of the four points. In Example 4-1, when the block is divided (in the case of VSP), only the upper side of the sub-sub block is referred to, and when the block is not divided (in the case of depth refinement), the upper and lower sides of the sub-sub block are referred to.

図21に実施例4−1のVSPの例も示す。図21に示すように、実施形態3−3と同様、実施例4−1も、デプスDV導出部351は、参照デプスブロック(サブサブブロックサイズ)が8×4の場合、4の倍数のラインのみにデプスアクセスする。また、デプスDV導出部351は、参照デプスブロックが4×8の場合、8の倍数のラインのみにデプスアクセスする。実施例4−1では、デプスリファインメントの場合、デプス参照ブロック(サブサブブロック)の左下および右下の垂直方向位置を求める際に、サブサブブロックの左上および右上の垂直位置にサブサブブロックの高さnSubBlkH(nSubSubBlkH)を加えた値を用いる(実施例3−1と同様)。図24に示すように、デプスリファインの場合、ブロックの左上座標の垂直成分は8の倍数であれば、ブロックの高さ(CUの高さ)は8の倍数であるから、サブブロックの上側の位置および下側の位置はともに8の倍数となる。実施例4−1では、デプスアクセスする際の垂直方向位置は、デプスリファインの場合、8の倍数のラインに限定され、VSPの場合には、4の倍数のラインに限定されることより、デプスアクセスが容易になる。また、VSPの場合、サブサブブロックのアクセスが2点となるため、デプスアクセスが容易になる。   FIG. 21 also shows an example of the VSP of Example 4-1. As shown in FIG. 21, similarly to Embodiment 3-3, in Example 4-1 as well, the depth DV deriving unit 351 is configured so that only the multiple of 4 is used when the reference depth block (sub-subblock size) is 8 × 4. Access depth. Further, when the reference depth block is 4 × 8, the depth DV deriving unit 351 performs depth access only to lines that are multiples of 8. In Example 4-1, in the case of depth refinement, when obtaining the vertical positions of the lower left and lower right of the depth reference block (sub sub block), the height nSubBlkH of the sub sub block is located at the upper left and upper right vertical positions of the sub sub block. A value obtained by adding (nSubSubBlkH) is used (same as in Example 3-1). As shown in FIG. 24, in the depth refinement, if the vertical component of the upper left coordinate of the block is a multiple of 8, the height of the block (the height of the CU) is a multiple of 8, so Both the position and the lower position are multiples of 8. In Example 4-1, the vertical position at the time of depth access is limited to a multiple of 8 in the case of depth refinement, and is limited to a multiple of 4 in the case of VSP. Easy access. Further, in the case of VSP, since the sub-sub-block access is two points, depth access is facilitated.

なお、実施例3−4と同様に、サブサブブロックの左下位置と右下位置が、左上位置と右上位置と一致するように設定することで、実質的に2点のアクセスとする方式により、VSPの場合もデプスリファインの場合も一様に、4点を参照しても良い。この場合を実施例4−1Aに示す。   Similar to the embodiment 3-4, by setting the lower left position and the lower right position of the sub-sub-block to be the same as the upper left position and the upper right position, the VSP can be substantially accessed by two points. In the case of the above and the depth refinement, the four points may be referred to uniformly. This case is shown in Example 4-1A.

(サブサブブロックの導出処理:実施例4−1A) 実施例4−1Aは、実施例4−1と同様、VSPの場合にはサブサブブロックの上側のみを参照し、デプスリファインメントの場合にサブサブブロックの上側と下側を参照するが、代表デプスの導出処理をVSPとデプスリファインメントの場合で共通化する。具体的には、デプスDV導出部351は、代表デプス位置を以下のように導出できる。       (Sub-subblock derivation process: Example 4-1A) In the same manner as Example 4-1, Example 4-1A refers only to the upper side of the sub-subblock in the case of VSP, and sub-subblock in the case of depth refinement. The reference depth derivation process is shared between the VSP and the depth refinement. Specifically, the depth DV deriving unit 351 can derive the representative depth position as follows.

xD0 = Clip3( 0, pic_width_in_luma_samples − 1, xTL + xSubB )
yD0 = Clip3( 0, pic_height_in_luma_samples − 1, yTL + ySubB )
xD1 = Clip3( 0, pic_width_in_luma_samples −1, xTL + xSubB + nSubSubBlkW −1)
yD1 = splitFlag ? yD0:Clip3(0,pic_height_in_luma_samples−1, yTL +
ySubB + nSubSubBlkH)
実施例4−1Aでは、splitFlagが1の場合(ここではVSPの場合)には、サブサブブロックの左下位置と右下位置が、左上位置と右上位置と一致するように設定する(垂直方向位置yD0とyD1に同じ値を設定する)。splitFlagが0の場合(ここではデプスリファインメントの場合)には、サブサブブロックの左下および右下の垂直方向位置を求める際に、サブサブブロックの左上および右上の垂直位置にサブサブブロックの高さnSubBlkH(nSubSubBlkH)を加えた値を用いる。これにより、実施例4−1Aも実施例4−1と同様の効果が得られる。すなわち、図21を用いて説明したように、VSPの場合には4の倍数のラインのみにデプスアクセスする。また、図24を用いて説明したように、レプリリファインの場合には4の倍数のラインのみにデプスアクセスする。
。また、実施例4−1Aでは、代表デプスを得る処理がVSPの場合と、デプスリファインの場合で共通化される効果を奏する。デプスリファインメントの場合、デプス参照ブロック(サブサブブロック)の左下および右下の垂直方向位置を求める際に、サブサブブロックの左上および右上の垂直位置にサブサブブロックの高さnSubBlkH(nSubSubBlkH)を加えた値を用いる(実施例3−1と同様)。
xD0 = Clip3 (0, pic_width_in_luma_samples − 1, x TL + xSubB)
yD0 = Clip3 (0, pic_height_in_luma_samples − 1, y TL + ySubB)
xD1 = Clip3 (0, pic_width_in_luma_samples −1, x TL + xSubB + nSubSubBlkW −1)
yD1 = splitFlag? yD0: Clip3 (0, pic_height_in_luma_samples−1, y TL +
ySubB + nSubSubBlkH)
In Example 4-1A, when splitFlag is 1 (here, in the case of VSP), the lower left position and the lower right position of the sub-subblock are set to coincide with the upper left position and the upper right position (vertical position yD0). And yD1 are set to the same value). When splitFlag is 0 (here, in the case of depth refinement), the sub-sub-block height nSubBlkH (sub-block height is set to the upper-left and upper-right vertical positions of the sub-sub block when the vertical position of the lower left and lower right of the sub-sub block is obtained. nSubSubBlkH) is used. Thereby, Example 4-1A also has the same effect as Example 4-1. That is, as described with reference to FIG. 21, in the case of VSP, only depth lines of multiples of 4 are accessed. In addition, as described with reference to FIG. 24, in the case of the re-refining, the depth access is made only to the multiple of 4 lines.
. Further, in Example 4-1A, there is an effect that is shared between the case where the processing for obtaining the representative depth is VSP and the case of depth refinement. For depth refinement, the value obtained by adding the height nSubBlkH (nSubSubBlkH) of the sub-sub block to the vertical position of the upper left and upper right of the sub-sub block when determining the vertical position of the lower left and lower right of the depth reference block (sub sub block) (Similar to Example 3-1).

図24に示すように、デプスリファインの場合、ブロックの左上座標の垂直成分は8の倍数であれば、ブロックの高さ(CUの高さ)は8の倍数であるから、サブブロックの上側の位置および下側の位置はともに8の倍数となる。   As shown in FIG. 24, in the depth refinement, if the vertical component of the upper left coordinate of the block is a multiple of 8, the height of the block (the height of the CU) is a multiple of 8, so Both the position and the lower position are multiples of 8.

(サブサブブロックの導出処理:実施例4−1B) デプスDV導出部351は、サブサブブロック座標(代表デプス位置)を以下のように導出できる。   (Sub-subblock Derivation Processing: Example 4-1B) The depth DV deriving unit 351 can derive the sub-subblock coordinates (representative depth position) as follows.

xD0 = Clip3( 0, pic_width_in_luma_samples − 1, xTL + xSubB )
yD0 = Clip3( 0, pic_height_in_luma_samples − 1, yTL + ySubB )
xD1 = Clip3( 0, pic_width_in_luma_samples −1, xTL + xSubB + nSubSubBlkW −1)
yD1 = nSubSubBlkH == 4 ? yD0, Clip3( 0, pic_height_in_luma_samples − 1, yTL + ySubB + nSubSubBlkH)
実施例4−1Bでは、デプス参照ブロックの高さが4の場合(すなわち、VSPの場合で8×4のデプス参照ブロックの場合)には、サブサブブロックの左下位置と右下位置が、左上位置と右上位置と一致するように設定する(上側の垂直方向位置yD0と下側の垂直方向位置yD1に同じ値を設定する)。それ以外の場合(VSPで4×8のデプス参照ブロックの場合もしくはデプスリファインの場合)上側垂直方向位置yD0にデプス参照ブロック(ここでは、サブサブブロック)の高さnSubBlkH(nSubSubBlkH)を加えることによりサブサブブロックの垂直方向位置の下側の垂直方向位置yD1を導出する。
xD0 = Clip3 (0, pic_width_in_luma_samples − 1, x TL + xSubB)
yD0 = Clip3 (0, pic_height_in_luma_samples − 1, y TL + ySubB)
xD1 = Clip3 (0, pic_width_in_luma_samples −1, x TL + xSubB + nSubSubBlkW −1)
yD1 = nSubSubBlkH == 4? yD0, Clip3 (0, pic_height_in_luma_samples − 1, y TL + ySubB + nSubSubBlkH)
In Example 4-1B, when the height of the depth reference block is 4 (that is, in the case of VSP, in the case of an 8 × 4 depth reference block), the lower left position and the lower right position of the sub-sub block are the upper left position. Are set to coincide with the upper right position (the same value is set for the upper vertical position yD0 and the lower vertical position yD1). In other cases (in the case of a 4 × 8 depth reference block or depth refinement in the VSP), the sub-sub-sub block is obtained by adding the height nSubBlkH (nSubSubBlkH) of the depth reference block (here, sub-sub block) to the upper vertical position yD0. A vertical position yD1 below the vertical position of the block is derived.

図29に実施例4−2のVSPの例を示す。実施例4−2では、デプスリファインの場合には、デプスアクセスする際の垂直方向位置が8の倍数のラインに限定され、VSPの場合には、デプスアクセスする際の垂直方向位置が4の倍数のラインに限定されることにより、デプスアクセスが容易になる。なお、実施例4−1、実施例4−1A、実施例4−1BのVSPの場合において、デプス参照ブロックの左上座標の垂直成分yD0をさらにラウンドを用いて、以下の式で導出しても良い(図27)。   FIG. 29 shows an example of the VSP of the embodiment 4-2. In the embodiment 4-2, in the case of depth refinement, the vertical position at the time of depth access is limited to a line that is a multiple of 8. In the case of VSP, the vertical direction position at the time of depth access is a multiple of 4. By limiting to this line, depth access becomes easy. Note that, in the case of the VSPs of Example 4-1, Example 4-1A, and Example 4-1B, the vertical component yD0 of the upper left coordinate of the depth reference block may be derived by the following equation using a round. Good (FIG. 27).

yD0 = Clip3( 0, pic_height_in_luma_samples − 1, yTL + ySubB + 4) >> 3) << 3
ラウンドを用いる場合については、さらに実施例4−2として再度、説明する。
yD0 = Clip3 (0, pic_height_in_luma_samples − 1, y TL + ySubB + 4) >> 3) << 3
The case of using a round will be described again as Example 4-2.

(サブサブブロックの導出処理:実施例4−2)
実施例4−2でも、実施例4−1と同様、サブサブブロックの導出処理として、VSPの場合(splitFlag=1)と、デプスリファインメントの場合(splitFlag=0)の場合で、異なる処理を用いる。実施例4−2では、実施例3−2と同様、ラウンドを用いて、位置を4の倍数(8の倍数)に設定する。
(Sub-subblock derivation process: Example 4-2)
Also in the embodiment 4-2, as in the embodiment 4-1, different processing is used for sub-subblock derivation processing in the case of VSP (splitFlag = 1) and in the case of depth refinement (splitFlag = 0). . In Example 4-2, as in Example 3-2, the position is set to a multiple of 4 (a multiple of 8) using a round.

デプスDV導出部351は、VSPの場合に、代表デプス値maxDepの導出に用いる代表デプス位置を以下のように導出する。VSPでは、代表デプス位置は、2点(xD0, yD0)、(xD1, yD0)である。   In the case of VSP, the depth DV deriving unit 351 derives the representative depth position used for deriving the representative depth value maxDep as follows. In VSP, the representative depth positions are two points (xD0, yD0) and (xD1, yD0).

xD0 = Clip3( 0, pic_width_in_luma_samples − 1, xTL + xSubB )
yD0 = Clip3( 0, pic_height_in_luma_samples − 1, ((yTL + ySubB + round0)>>3)<<3 )
xD1 = Clip3( 0, pic_width_in_luma_samples −1, xTL + xSubB + nSubSubBlkW −1)
ここで、round0は、右に3ビット、左に3ビットシフトする処理においてラウンド方向を制御するための定数(ここではround0=4などとする)。ラウンド方向を制御する定数には4の代わりに、4から7の値を用いても良い。デプスDV導出部351は、VSPの場合に、以下の式により代表デプス値maxDepを導出する。
xD0 = Clip3 (0, pic_width_in_luma_samples − 1, x TL + xSubB)
yD0 = Clip3 (0, pic_height_in_luma_samples − 1, ((y TL + ySubB + round0) >> 3) << 3)
xD1 = Clip3 (0, pic_width_in_luma_samples −1, x TL + xSubB + nSubSubBlkW −1)
Here, round0 is a constant for controlling the round direction in the process of shifting 3 bits to the right and 3 bits to the left (here, round0 = 4 or the like). Instead of 4, a value from 4 to 7 may be used as a constant for controlling the round direction. In the case of VSP, the depth DV deriving unit 351 derives the representative depth value maxDep using the following equation.

maxDep = Max( refDepPels[ xD0 ][ yD0 ], refDepPels[ xD0 ][ yD1] )
図27に実施例4−2のVSPの例を示す(round0を4から7に設定した場合)。
maxDep = Max (refDepPels [xD0] [yD0], refDepPels [xD0] [yD1])
FIG. 27 shows an example of the VSP of the embodiment 4-2 (when round0 is set from 4 to 7).

また、実施例4−2では、デプスDV導出部351は、ブロック分割しない場合(デプスリファインの場合)の代表デプス位置は、以下のように導出する。   In the embodiment 4-2, the depth DV deriving unit 351 derives the representative depth position when the block is not divided (in the case of depth refinement) as follows.

xD0 = Clip3( 0, pic_width_in_luma_samples − 1, xTL + xSubB )
yD0 = Clip3( 0, pic_height_in_luma_samples − 1, yTL + ySubB )
xD1 = Clip3( 0, pic_width_in_luma_samples −1, xTL + xSubB + nSubSubBlkW −1)
yD1 = Clip3( 0, pic_height_in_luma_samples −1, yTL + ySubB + nSubSubBlkH)
デプスリファインでは、代表デプス位置は、4点(xD0, yD0)、(xD1, yD0)、(xD0, yD1)、(xD1, yD1)であり、デプスDV導出部351は、既に説明したように、4点のデプス値から代表デプス値maxDepを導出する。実施例4−2では、ブロック分割する場合(VSPの場合)にはサブサブブロックの上側のみを参照し、ブロック分割しない場合(デプスリファインの場合)にサブサブブロックの上側と下側を参照する。また、上側の座標も8の倍数にラウンドされるため、8の倍数のラインのみにデプスアクセスする。実施例4−2では、デプスリファインメントの場合、デプス参照ブロック(サブサブブロック)の左下および右下の垂直方向位置を求める際に、サブサブブロックの左上および右上の垂直位置にサブサブブロックの高さnSubSubBlkHを加えた値を用いる。サブブロックサイズが8×8の場合、8の倍数のラインのみにデプスアクセスする。
xD0 = Clip3 (0, pic_width_in_luma_samples − 1, x TL + xSubB)
yD0 = Clip3 (0, pic_height_in_luma_samples − 1, y TL + ySubB)
xD1 = Clip3 (0, pic_width_in_luma_samples −1, x TL + xSubB + nSubSubBlkW −1)
yD1 = Clip3 (0, pic_height_in_luma_samples −1, y TL + ySubB + nSubSubBlkH)
In the depth refinement, the representative depth positions are four points (xD0, yD0), (xD1, yD0), (xD0, yD1), (xD1, yD1), and the depth DV deriving unit 351, as already described, A representative depth value maxDep is derived from the depth values of the four points. In Example 4-2, when the block is divided (in the case of VSP), only the upper side of the sub-subblock is referred to, and when the block is not divided (in the case of depth refinement), the upper and lower sides of the sub-subblock are referred to. Further, since the upper coordinate is also rounded to a multiple of 8, only the line having a multiple of 8 is accessed in depth. In Example 4-2, in the case of depth refinement, when obtaining the vertical positions of the lower left and lower right of the depth reference block (sub sub block), the height nSubSubBlkH of the sub sub block is located at the upper left and upper right vertical positions of the sub sub block. The value added with is used. When the sub-block size is 8 × 8, only the multiple of 8 is accessed in depth.

(ラウンドを方向を制御する定数について)
上記の説明では、実施例4−2において、ラウンド方向を制御する定数round0として4から7の値を用いる場合には、サブサブブロックの左上座標yTL + ySubBが8の倍数の場合には、デプスアクセスする場合の垂直成分yD0としてyTL + ySubBが、サブサブブロックの左上座標yTL + ySubBが8の倍数ではない場合(例えば8の倍数+4)の場合にも垂直成分yD0としてyTL + ySubB+4が、設定され、どちらの場合も垂直成分yD0は8の倍数の座標となる。
(About constants that control the direction of the round)
In the above description, in Example 4-2, when a value of 4 to 7 is used as the constant round0 for controlling the round direction, the depth is calculated when the upper left coordinate y TL + ySubB of the sub sub block is a multiple of 8. In the case where y TL + ySubB is a vertical component yD0 for access and the upper left coordinate y TL + ySubB of the sub-sub block is not a multiple of 8 (for example, a multiple of 8 + 4), y TL + ySubB + 4 is also used as the vertical component yD0. In both cases, the vertical component yD0 is a coordinate of a multiple of 8.

図30は、ラウンドとラウンド方向を制御する変数の効果を示す。図30(a)はラウンドがない場合である。クリップを省略すると以下の式で表現できる。   FIG. 30 shows the effect of variables controlling the round and round direction. FIG. 30A shows a case where there is no round. If the clip is omitted, it can be expressed by the following formula.

yD0 = yTL + ySubB
この場合、サブサブブロックの左上座標の垂直成分yTLに応じてアクセスするラインが変化するため、デプス由来の変位ベクトルを導出する効果の意味では、好ましい。但し、ラウンドがないため、サブサブブロックの座標が8の倍数とならない可能性がある。図30(b)は、既に説明したラウンドがある場合である。クリップを省略すると以下の式により表現できる。
yD0 = y TL + ySubB
In this case, since the line to be accessed in response to the vertical component y TL of the upper left coordinates of the sub-sub-block is changed, in the sense of the effect deriving a displacement vector from depth, preferred. However, since there is no round, the coordinates of the sub-subblock may not be a multiple of 8. FIG. 30B shows the case where there is a round already described. If the clip is omitted, it can be expressed by the following equation.

yD0 = (yTL + ySubB+ 4)>>3)<<3
サブサブブロックの左上座標の垂直成分yTLに応じてアクセスするラインが変化するためデプス由来の変位ベクトルを導出する効果の意味で好ましく、さらに、デプスアクセスは8の倍数に制限されているためデプスアクセスも容易である。よって、yD0を、サブサブブロック左上座標の垂直成分yTL と、サブサブブロックのサブブロック左上座標からの相対位置ySubBに、定数4(より詳細には4から7のいずれか)を加算して、右に3ビットシフトし、左に3ビットシフトすることにより、サブサブブロックの参照位置yD0の垂直成分を導出する処理は、視差合成予測の効果を保持したまま、デプスアクセスを低減する効果を奏する。
yD0 = (y TL + ySubB + 4) >> 3) << 3
Preferably in terms of the effect deriving a displacement vector from depth for line access in accordance with the vertical component y TL of the upper left coordinates of the sub-sub-block is changed, further, depth accessible due to restriction to a multiple of the depth access 8 Is also easy. Therefore, yD0 is added to the vertical component y TL of the sub-subblock upper left coordinate and the relative position ySubB from the sub-block upper left coordinate of the sub sub block by adding a constant 4 (more specifically, any of 4 to 7) to the right The process of deriving the vertical component of the reference position yD0 of the sub-subblock by shifting to 3 bits to the left and shifting to the left by 3 bits has the effect of reducing the depth access while maintaining the effect of the disparity synthesis prediction.

図30(c)は、ラウンド方向を制御する定数round0が、0(詳細には0から3のいずれか)の場合であり、クリップを省略すると以下の式で表現できる。   FIG. 30C shows the case where the constant round0 for controlling the round direction is 0 (specifically, any one of 0 to 3). If the clip is omitted, it can be expressed by the following equation.

yD0 = (yTL + ySubB)>>3)<<3、
サブサブブロックの左上座標の垂直成分yTLに応じてアクセスするラインが変化しない。具体的には、サブサブブロックの左上座標yTL + ySubBが8の倍数の場合も8の倍数+4の場合も同じ点になる。この場合、サブサブブロックの左上座標の違いが、代表デプス位置の違いとして反映されないため、デプス由来の変位ベクトルを導出する効果の意味では、好ましくなく、図30(c)に示すround0=4(または4から7)のラウンドの方が効果の意味では適当である。なお、ラウンド方向を制御する定数round0が0から3のいずれかの場合においても、デプスアクセスを8の倍数とすることでデプスアクセスを容易にする効果はある。
yD0 = (y TL + ySubB) >> 3) << 3,
Line to be accessed is not changed depending on the vertical component y TL of the upper left coordinates of the sub-sub-blocks. Specifically, the upper left coordinates y TL + ySubB of the sub-sub block are the same when the multiple of 8 and the multiple of 8 + 4. In this case, the difference in the upper left coordinates of the sub-sub-blocks is not reflected as the difference in the representative depth position, which is not preferable in terms of the effect of deriving the displacement vector derived from the depth, and round0 = 4 (or shown in FIG. 30C). Rounds 4 to 7) are more appropriate in terms of effects. Even when the constant round0 for controlling the round direction is any one of 0 to 3, there is an effect of facilitating the depth access by making the depth access a multiple of 8.

(実施例4−2の別の構成)
実施例4−2の別の構成として、デプスDV導出部351は、デプスにアクセスを行う全ての場合において(VSPの場合にもデプスリファインメントの場合)にも、8の倍数のラインのみにデプスアクセスする。
(Another configuration of Example 4-2)
As another configuration of the embodiment 4-2, the depth DV deriving unit 351 performs the depth only on the multiple of 8 in all cases where the depth is accessed (in the case of VSP or depth refinement). to access.

なお、デプスリファインの場合にも下記のような、ラウンド処理を行っても良い。   In the case of depth refinement, the following round processing may be performed.

xD0 = Clip3( 0, pic_width_in_luma_samples − 1, xTL + xSubB )
yD0 = Clip3( 0, pic_height_in_luma_samples − 1, ((yTL + ySubB + round0) >> 3) << 3 )
xD1 = Clip3( 0, pic_width_in_luma_samples −1, xTL + xSubB + nSubSubBlkW −1)
yD1 = Clip3( 0, pic_height_in_luma_samples − 1, ((yTL + ySubB + nSubSubBlkH − 1+ round1) >> 3) << 3 )
ここで、round0は、右に3ビット、左に3ビットシフトする処理においてラウンド方向を制御するための定数(ここではround0=1..8などとする)。また、図30(b)で説明したようにround0=4としても良い。上記のように、ラウンド処理を行う場合、デプスリファインの場合にも左上座標yTLが8の倍数でない場合でも8の倍数のみに制限される。
xD0 = Clip3 (0, pic_width_in_luma_samples − 1, x TL + xSubB)
yD0 = Clip3 (0, pic_height_in_luma_samples − 1, ((y TL + ySubB + round0) >> 3) << 3)
xD1 = Clip3 (0, pic_width_in_luma_samples −1, x TL + xSubB + nSubSubBlkW −1)
yD1 = Clip3 (0, pic_height_in_luma_samples − 1, ((y TL + ySubB + nSubSubBlkH − 1+ round1) >> 3) << 3)
Here, round0 is a constant for controlling the round direction in the process of shifting 3 bits to the right and 3 bits to the left (here, round0 = 1..8, etc.). Further, as described in FIG. 30B, round0 = 4 may be set. As described above, when round processing is performed, even in the case of depth refinement, even when the upper left coordinate yTL is not a multiple of 8, it is limited to a multiple of 8.

(サブサブブロックの導出処理:実施例4−2A)
実施例4−2Aも、ブロック分割する場合(VSPの場合)にはサブサブブロックの上側のみを参照し、ブロック分割しない場合(デプスリファインメントの場合)にサブサブブロックの上側と下側を参照するが、代表デプスの導出処理をVSPとデプスリファインメントの場合で共通化する。具体的には、デプスDV導出部351は、代表デプス位置を以下のように導出できる。
(Sub-subblock derivation process: Example 4-2A)
In the example 4-2A, when block division is performed (in the case of VSP), only the upper side of the sub-sub block is referred to, and when block division is not performed (in the case of depth refinement), the upper and lower sides of the sub-sub block are referred to. The representative depth derivation process is shared between the VSP and the depth refinement. Specifically, the depth DV deriving unit 351 can derive the representative depth position as follows.

xD0 = Clip3( 0, pic_width_in_luma_samples − 1, xTL + xSubB)
yD0 = Clip3( 0, pic_height_in_luma_samples − 1, yTL + ySubB + 4) >> 3) << 3
xD1 = Clip3( 0, pic_width_in_luma_samples −1, xTL + xSubB + nSubSubBlkW −1)
yD1 = splitFlag ? yD0 : Clip3( 0, pic_width_in_luma_samples −1, yTL + ySubB + nSubSubBlkH)
実施例4−2Aでは、splitFlagが1の場合(ここではVSPの場合)には、サブサブブロックの左下位置と右下位置が、左上位置と右上位置と一致するように設定する(垂直方向位置yD0とyD1に同じ値を設定する)。splitFlagが0の場合(ここではデプスリファインメントの場合)には、サブサブブロックの左下および右下の垂直方向位置を求める際に、サブサブブロックの左上および右上の垂直位置にサブサブブロックの高さnSubBlkH(nSubSubBlkH)を加えた値を用いる。これにより、デプスアクセスについては、実施例4−2と同様の効果が得られる。すなわち、VSPの場合もデプスリファインの場合も8の倍数のラインのみにデプスアクセスする。また、実施例4−2Aでは、代表デプスを得る処理がVSPの場合と、デプスリファインの場合で共通化される効果を奏する。
xD0 = Clip3 (0, pic_width_in_luma_samples − 1, x TL + xSubB)
yD0 = Clip3 (0, pic_height_in_luma_samples − 1, y TL + ySubB + 4) >> 3) << 3
xD1 = Clip3 (0, pic_width_in_luma_samples −1, x TL + xSubB + nSubSubBlkW −1)
yD1 = splitFlag? yD0: Clip3 (0, pic_width_in_luma_samples −1, y TL + ySubB + nSubSubBlkH)
In Example 4-2A, when splitFlag is 1 (here, in the case of VSP), the lower left position and the lower right position of the sub-sub-block are set to coincide with the upper left position and the upper right position (vertical position yD0). And yD1 are set to the same value). When splitFlag is 0 (here, in the case of depth refinement), the sub-sub-block height nSubBlkH (sub-block height is set to the upper-left and upper-right vertical positions of the sub-sub block when the vertical position of the lower left and lower right of the sub-sub block is obtained. nSubSubBlkH) is used. As a result, the same effects as those of the embodiment 4-2 can be obtained for the depth access. In other words, in the case of VSP and depth refinement, only depth multiples of 8 are accessed. Further, in Example 4-2A, there is an effect that is shared between the case where the processing for obtaining the representative depth is VSP and the case of depth refinement.

(代表デプス値を用いた変位ベクトル導出) 図18は、デプスを用いて、デプスリファイン後の変位ベクトル(DoNBDV)及びVSPに用いる変位ベクトルを求める方法を示している。図18に示すように、DoNBDVの場合は、
DoNBDV[0]=DepthToDisparityB[refViewIds][depth]
DoNBDV[1]=NBDV[1]
で求め、VSPの場合は、
DV[0]=DepthToDisparityB[refViewIdx][depth]
DV[1]=0
で求める。ここでdepthは代表デプスの値である。VSPでは、図19に示すように、デプスDV導出部351は、変位ベクトル(NBDV)の水平成分をデプス由来のベクトルとして求め、垂直成分を0に設定することにより、デプス由来の変位ベクトル(DoNBDV)を求めている。なお、本実施例1−1、1−2における上段のアドレスは以下の表1の通りである。ここで、HTM8とは、H.265 TM(Test Model)8のことである。
(Displacement Vector Derivation Using Representative Depth Value) FIG. 18 shows a method for obtaining a depth refined displacement vector (DoNBDV) and a displacement vector used for VSP using depth. As shown in FIG. 18, in the case of DoNBDV,
DoNBDV [0] = DepthToDisparityB [refViewIds] [depth]
DoNBDV [1] = NBDV [1]
In the case of VSP,
DV [0] = DepthToDisparityB [refViewIdx] [depth]
DV [1] = 0
Ask for. Here, depth is a representative depth value. In the VSP, as shown in FIG. 19, the depth DV deriving unit 351 obtains the horizontal component of the displacement vector (NBDV) as a vector derived from the depth, and sets the vertical component to 0, whereby the depth derived displacement vector (DoNBDV). ) The upper addresses in Examples 1-1 and 1-2 are as shown in Table 1 below. Here, HTM8 is H.264. 265 TM (Test Model) 8

Figure 2015080053
Figure 2015080053

なお、実施例2−1、2−2における上段及び下段のアドレスは以下の表2の通りである。ここで、HTM8とは、HEVCをベースとする3次元符号化標準のテストモデルTM(Test Model)8のことである。   The addresses of the upper and lower stages in Examples 2-1 and 2-2 are as shown in Table 2 below. Here, the HTM8 is a test model TM (Test Model) 8 of a three-dimensional encoding standard based on HEVC.

Figure 2015080053
Figure 2015080053

(インター予測画像生成部309) 図11は、本実施形態に係るインター予測画像生成部309の構成を示す概略図である。インター予測画像生成部309は、動き変位補償部3091、残差予測部3092、照度補償部3093、重み予測部3094を含んで構成される。     (Inter prediction image generation part 309) FIG. 11: is schematic which shows the structure of the inter prediction image generation part 309 which concerns on this embodiment. The inter prediction image generation unit 309 includes a motion displacement compensation unit 3091, a residual prediction unit 3092, an illuminance compensation unit 3093, and a weight prediction unit 3094.

(動き変位補償) 動き変位補償部3091は、インター予測パラメータ復号部303から入力された、予測リスト利用フラグpredFlagLX、参照ピクチャインデックスrefIdxLX、動きベクトルmvLX、VSPフラグ、変位ベクトルに基づいて、動き変位補償画像を生成する。VSPフラグが0の場合には、動き変位補償部3091は、参照ピクチャメモリ306から、参照ピクチャインデックスrefIdxLXで指定された参照ピクチャの対象ブロックの位置を起点として、ベクトルmvLXだけずれた位置にあるブロックを読み出し補間することによって動き変位補償画像を生成する。ここで、ベクトルmvLXが整数ベクトルでない場合には、動き補償フィルタ(もしくは変位補償フィルタ)と呼ばれる小数位置の画素を生成するためのフィルタを施して、動き変位補償画像を生成する。一般に、ベクトルmvLXが動きベクトルの場合、上記処理を動き補償と呼び、変位ベクトルの場合は変位補償と呼ぶ。ここでは総称して動き変位補償と表現する。以下、L0予測の動き変位補償画像をpredSamplesL0、L1予測の動き変位補償画像をpredSamplesL1と呼ぶ。両者を区別しない場合predSamplesLXと呼ぶ。以下、動き変位補償部3091で得られた動き変位補償画像predSamplesLXに、さらに残差予測および照度補償が行われる例を説明するが、これらの出力画像もまた、動き変位補償画像predSamplesLXと呼ぶ。なお、以下の残差予測および照度補償において、入力画像と出力画像を区別する場合には、入力画像をpredSamplesLX、出力画像をpredSamplesLX´と表現する。VSPフラグが1の場合には、動き変位補償部3091は、VSP部3094において、動き変位補償画像を生成する。     (Motion displacement compensation) The motion displacement compensation unit 3091 performs motion displacement compensation based on the prediction list use flag predFlagLX, the reference picture index refIdxLX, the motion vector mvLX, the VSP flag, and the displacement vector input from the inter prediction parameter decoding unit 303. Generate an image. When the VSP flag is 0, the motion displacement compensation unit 3091 blocks from the reference picture memory 306 at a position shifted by the vector mvLX from the position of the target block of the reference picture specified by the reference picture index refIdxLX. And a motion displacement compensation image is generated by interpolation. Here, when the vector mvLX is not an integer vector, a motion displacement compensation image is generated by applying a filter called a motion compensation filter (or displacement compensation filter) for generating a pixel at a decimal position. In general, when the vector mvLX is a motion vector, the above processing is called motion compensation, and when the vector mvLX is a displacement vector, it is called displacement compensation. Here, it is collectively referred to as motion displacement compensation. Hereinafter, the motion displacement compensation image for L0 prediction is referred to as predSamplesL0, and the motion displacement compensation image for L1 prediction is referred to as predSamplesL1. If the two are not distinguished, they are called predSamplesLX. Hereinafter, an example in which residual prediction and illuminance compensation are further performed on the motion displacement compensation image predSamplesLX obtained by the motion displacement compensation unit 3091 will be described. These output images are also referred to as motion displacement compensation images predSamplesLX. In the following residual prediction and illuminance compensation, when an input image and an output image are distinguished, the input image is expressed as predSamplesLX and the output image is expressed as predSamplesLX ′. When the VSP flag is 1, the motion displacement compensation unit 3091 generates a motion displacement compensation image in the VSP unit 3094.

(視差合成予測) VSP部3094による視差合成予測(VSP)プロセスを以下説明する。視差合成予測(VSP)では、対象ブロック(PU)を、サブブロック(サブサブブロック)に分割し、サブサブブロック単位のデプス由来変位ベクトルを用いて、動き変位補償を行う。サブサブブロックへの分割およびサブサブブロックの変位ベクトルは、デプスDV導出部351により導出される。デプスDV導出部351には、デプスベースDVを導出する場合に用いるブロックの左上座標(xTL、yTL)と幅nPSW、高さnPSH、変位ベクトルmvDisp[]として、各々、復号対象ブロック(PU)を含む符号化ユニットCUの左上座標(xCb、yCb)、PUの幅nPbW、PUの高さnPbH、変位ベクトルNBDVを入力する。また、ブロックをさらに分割するか否かを示すsplitFlagには1を入力する。デプスDV導出部351により、サブサブブロック単位の視差ベクトルはdisparitySamples[][]として、導出される。VSP部3094は、デプスDV導出部351で導出されたこのサブサブブロック単位で、参照ピクチャメモリ306から、サブサブブロック変位ベクトル分だけずれた位置のブロックを読み出し補間することによって動き変位補償画像を生成する。     (Parallax synthesis prediction) A parallax synthesis prediction (VSP) process by the VSP unit 3094 will be described below. In disparity synthesis prediction (VSP), a target block (PU) is divided into sub-blocks (sub-sub-blocks), and motion displacement compensation is performed using a depth-derived displacement vector in units of sub-sub-blocks. The division into sub-subblocks and the displacement vector of the sub-subblock are derived by the depth DV deriving unit 351. The depth DV deriving unit 351 receives the decoding target block (PU) as the upper left coordinates (xTL, yTL), the width nPSW, the height nPSH, and the displacement vector mvDisp [] of the block used when the depth base DV is derived. The upper left coordinates (xCb, yCb), PU width nPbW, PU height nPbH, and displacement vector NBDV of the encoding unit CU are included. Also, 1 is input to splitFlag indicating whether or not the block is further divided. The depth DV deriving unit 351 derives the disparity vector for each sub-subblock as disparitySamples [] []. The VSP unit 3094 generates a motion displacement compensation image by reading out and interpolating a block at a position shifted by the sub sub block displacement vector from the reference picture memory 306 in units of this sub sub block derived by the depth DV deriving unit 351. .

(視差合成予測(VSP)プロセス) 対象ピクチャの左上の輝度に対応する、対象予測ブロックの左上の輝度のピクチャ内位置(xP,yP)は、下記よって導出できる。     (Parallax Synthesis Prediction (VSP) Process) The in-picture position (xP, yP) of the upper left luminance of the target prediction block corresponding to the upper left luminance of the target picture can be derived as follows.

xP = xC + xB
yP = yC + yB
輝度の二次元アレイrefPicL、及び色度の2つの二次元アレイrefPicCbとrefPicCrから成る参照ピクチャは、インプットとしてrefIdxLXを用いて導出される。
xP = xC + xB
yP = yC + yB
A reference picture consisting of a two-dimensional array of luminance refPic L and two two-dimensional arrays of chromaticity, refPic Cb and refPic Cr, is derived using refIdxLX as an input.

変数refViewIdxは、ViewIdx(RefPicListX[refIdxLX])および変数depthViewIdxと等しく設定され、変数depthViewIdxは、RefViewIdx[xC+xB][yC+yB]と等しく設定される。変数mvDispは、mvDisp[xC+xB][yC+yB]と等しく設定される。なお、refIdxLXはデプスピクチャを導出するために用いられてもよい。また、テクスチャピクチャの参照インデックスは、視差合成予測マージ候補の導出プロセスにおいて特定されるプロセスと同様に導出されてもよい。   The variable refViewIdx is set equal to ViewIdx (RefPicListX [refIdxLX]) and the variable depthViewIdx, and the variable depthViewIdx is set equal to RefViewIdx [xC + xB] [yC + yB]. The variable mvDisp is set equal to mvDisp [xC + xB] [yC + yB]. Note that refIdxLX may be used to derive a depth picture. Further, the reference index of the texture picture may be derived in the same manner as the process specified in the process for deriving the disparity synthesis prediction merge candidate.

上述したように、視差アレイの導出プロセスは、インプットとして、位置(xP,yP)の輝度、視差ベクトルmvDisp、変数refViewIdx、変数depthViewIdx、変数nPSWおよびnPSH、4と等しい変数nSubBlkW、および、4と等しい変数nSubBlkHを用いる。そして、アウトプットはサイズ(nPSW)x(nPSH)のアレイdisparitySamplesである。なお、VSPもまた上述した視差アレイの導出プロセスを用いる。したがって、上記の導出プロセスが変更されると、デプスリファインメント処理およびVSPデプスアクセス処理がそれに合わせて変更される。   As described above, the process of deriving the parallax array has as input the luminance of the position (xP, yP), the parallax vector mvDisp, the variable refViewIdx, the variable depthViewIdx, the variables nPSW and nPSH, and the variable nSubBlkW equal to 4, and 4. The variable nSubBlkH is used. The output is an array disparitySamples of size (nPSW) × (nPSH). The VSP also uses the above-described parallax array derivation process. Therefore, when the above derivation process is changed, the depth refinement process and the VSP depth access process are changed accordingly.

ピクチャ内輝度位置を(xIntL,yIntL)、4分割された単位における(1/4pel単位)のオフセットを(xFracL,yFracL)とする。 The luminance position in the picture is (xInt L , yInt L ), and the offset of (1/4 pel unit) in the unit divided into four is (xFrac L , yFrac L ).

動き変位補償画像predSampleL内の輝度位置(xL=0..nPbW−1,yL=0..nPbH−1)の各々に対して、対応する動き変位補償画像predSamplesL[xL][yL]は以下のように導出される。 For each of the luminance position of the motion displacement compensation image predSample in L (x L = 0..nPbW-1 , y L = 0..nPbH-1), the corresponding motion displacement compensation image predSamples L [x L] [ y L ] is derived as follows.

変数xIntL、yIntL、xFracL、及びyFracLは、以下のようにして求められる。     The variables xIntL, yIntL, xFracL, and yFracL are obtained as follows.

xIntL = xP + xL+ disparitySamples[ xL ][ yL ]
yIntL = yP + yL
xFracL = disparitySamples[ xL ][ yL ] & 3
yFracL = 0
VSPにおいて、垂直コンポーネントまたは視差ベクトルは、常に0として仮定される。したがって、yIntは、disparitySamplesを使用せず、yFracは常に0である。動き変位補償画像predSamplesL[xL][yL]は、(xIntL,yIntL)、(xFracL,yFracL)、およびrefPicLにより動き変位補償により導出する。ピクチャ内色度位置を(xIntC,yIntC)、8分割単位(1/8 pel単位)におけるオフセットを(xFracC,yFracC)とする。
xIntL = xP + xL + disparitySamples [xL] [yL]
yIntL = yP + yL
xFracL = disparitySamples [xL] [yL] & 3
yFracL = 0
In VSP, the vertical component or disparity vector is always assumed to be zero. Therefore, yInt does not use disparitySamples and yFrac is always 0. The motion displacement compensation image predSamples L [x L ] [y L ] is derived by motion displacement compensation using (xInt L , yInt L ), (xFrac L , yFrac L ), and refPic L. The chromaticity position in the picture is (xInt C , yInt C ), and the offset in 8 division units (1/8 pel units) is (xFrac C , yFrac C ).

動き変位補償画像predSampleCb及びpredSampleCr内の色度位置(xC=0..nPbW/2−1,yC=0..nPbH/2−1)の各々に対して、対応する動き変位補償画像predSamplesLXCb[xC][yC]及びpredSamplesCr[xC][yC]は以下のように導出される。 Motion displacement compensation corresponding to each of the chromaticity positions (x C = 0..nPbW / 2−1, y C = 0..nPbH / 2−1) in the motion displacement compensation images predSample Cb and predSample Cr The images predSamplesLX Cb [x C ] [y C ] and predSamples Cr [x C ] [y C ] are derived as follows.

変数xIntC, yIntC, xFracC, and yFracCは、次のように導出される。 The variables xInt C , yInt C , xFrac C , and yFrac C are derived as follows.

xIntC = ( xP / 2 ) + xC + disparitySamples[ xC << 1 ][ yC << 1 ]
yIntC = ( yP / 2 ) + yC
xFracC = disparitySamples[ xC << 1][ yC << 1 ] & 7
yFracC = 0
動き変位補償画像predSamplesCb[xC][yC]は、 (xIntC,yIntC )、(xFracC,yFracC)、及びrefPicCbを用いて動き変位補償により導出する。動き変位補償画像predSamplesCr[xC][yC]は、(xIntC,yIntC )、(xFracC,yFracC)、及びrefPicCrを用いて動き変位補償により導出する。
xIntC = (xP / 2) + xC + disparitySamples [xC << 1] [yC << 1]
yIntC = (yP / 2) + yC
xFracC = disparitySamples [xC << 1] [yC << 1] & 7
yFracC = 0
The motion displacement compensation image predSamples Cb [x C ] [y C ] is derived by motion displacement compensation using (xInt C , yInt C ), (xFrac C , yFrac C ), and refPic Cb . The motion displacement compensation image predSamples Cr [x C ] [y C ] is derived by motion displacement compensation using (xInt C , yInt C ), (xFrac C , yFrac C ), and refPic Cr .

(残差予測) 残差予測部3092は、残差予測実施フラグresPredFlagが1の場合に、入力された動き変位補償画像predSamplesLXに対して、残差予測を行う。残差予測実施フラグresPredFlagが0の場合には、入力された動き変位補償画像predSamplesLXをそのまま出力する。refResSamples残差予測は、予測画像生成の対象とする対象レイヤ(第2のレイヤ画像)とは異なる参照レイヤ(第1のレイヤ画像)の残差を、対象レイヤの予測した画像である動き変位補償画像predSamplesLXに加えることにより行われる。すなわち、参照レイヤと同様の残差が対象レイヤにも生じると仮定して、既に導出された参照レイヤの残差を対象レイヤの残差の推定値として用いる。ベースレイヤ(ベースビュー)では同じレイヤの画像のみが参照画像となる。従って、参照レイヤ(第1のレイヤ画像)がベースレイヤ(ベースビュー)である場合には、参照レイヤの予測画像は動き補償による予測画像であることから、対象レイヤ(第2のレイヤ画像)による予測においても、動き補償による予測画像である場合に、残差予測は有効である。すなわち、残差予測は対象ブロックが動き補償の場合に有効であるという特性を持つ。図12は残差予測部3092の構成を示すブロック図である。残差予測部3092は、残差予測実施フラグ導出部30921と、参照画像取得部30922と、残差合成部30923から構成される。     (Residual Prediction) When the residual prediction execution flag resPredFlag is 1, the residual prediction unit 3092 performs residual prediction on the input motion displacement compensation image predSamplesLX. When the residual prediction execution flag resPredFlag is 0, the input motion displacement compensation image predSamplesLX is output as it is. The refResSamples residual prediction is a motion displacement compensation that is an image obtained by predicting a residual of a reference layer (first layer image) different from a target layer (second layer image) that is a target of predicted image generation. This is done by adding to the image predSamplesLX. That is, assuming that the same residual as that of the reference layer also occurs in the target layer, the already derived residual of the reference layer is used as an estimated value of the residual of the target layer. In the base layer (base view), only the image of the same layer becomes the reference image. Therefore, when the reference layer (first layer image) is a base layer (base view), the predicted image of the reference layer is a predicted image by motion compensation, and thus depends on the target layer (second layer image). Also in prediction, residual prediction is effective in the case of a predicted image by motion compensation. That is, the residual prediction has a characteristic that it is effective when the target block is motion compensation. FIG. 12 is a block diagram showing a configuration of the residual prediction unit 3092. The residual prediction unit 3092 includes a residual prediction execution flag deriving unit 30921, a reference image acquisition unit 30922, and a residual synthesis unit 30923.

残差予測実施フラグ導出部30921は、残差予測フラグiv_res_pred_weight_idxが0ではなく、かつ、対象ブロックが動き補償である場合に、残差予測実施フラグresPredFlagに残差予測を実行することを示す1を設定する。一方、残差予測フラグiv_res_pred_weight_idxが0である、又は、対象ブロックが動き補償でない場合(視差補償である場合)に、残差予測実施フラグresPredFlagに0を設定する。   The residual prediction execution flag deriving unit 30921 indicates that the residual prediction flag iv_res_pred_weight_idx is not 0 and the target block is motion compensation, and indicates 1 indicating that residual prediction is to be performed on the residual prediction execution flag resPredFlag. Set. On the other hand, when the residual prediction flag iv_res_pred_weight_idx is 0, or when the target block is not motion compensation (when it is parallax compensation), 0 is set to the residual prediction execution flag resPredFlag.

参照画像取得部30922は、残差予測実施フラグresPredFlagが1の場合には、インター予測パラメータ復号部303から入力された動きベクトルmvLXと残差予測変位ベクトルmvDisp、及び参照ピクチャメモリ306に格納された対応ブロックcurrIvSamplesLXと対応ブロックの参照ブロックrefIvSamplesLXを読み出す。   When the residual prediction execution flag resPredFlag is 1, the reference image acquisition unit 30922 stores the motion vector mvLX and the residual prediction displacement vector mvDisp input from the inter prediction parameter decoding unit 303 and the reference picture memory 306. Read the corresponding block currIvSamplesLX and the reference block refIvSamplesLX of the corresponding block.

図13は、対応ブロックcurrIvSamplesLXを説明するための図である。図13に示すように、対象レイヤ上の対象ブロックに対応する対応ブロックは、参照レイヤ上の画像の対象ブロックの位置を起点として、参照レイヤと対象レイヤの位置関係を示すベクトルである変位ベクトルmvDispだけずれた位置になるブロックに位置する。具体的には、参照画像取得部30922は、対象ブロックの画素の座標(x,y)を、対象ブロックの変位ベクトルmvDispだけずらした位置の画素を導出する。変位ベクトルmvDispが1/4ペルの小数精度であることを考慮し、残差生成部30922は、対象ブロックの画素の座標が(xP、yP)である場合に対応する整数精度の画素R0のX座標xIntとY座標yInt、及び変位ベクトルmvDispのX成分の小数部分xFracとY成分の小数部分yFracを、
xInt = xPb + ( mvLX[ 0 ] >> 2 )
yInt = yPb + ( mvLX[ 1 ] >> 2 )
xFrac = mvLX[ 0 ] & 3
yFrac = mvLX[ 1 ] & 3
の式により導出する。ここで、X & 3は、Xの下位2ビットのみを取り出す数式である。
FIG. 13 is a diagram for explaining the corresponding block currIvSamplesLX. As shown in FIG. 13, the corresponding block corresponding to the target block on the target layer is a displacement vector mvDisp that is a vector indicating the positional relationship between the reference layer and the target layer, starting from the position of the target block of the image on the reference layer. It is located in a block that is displaced by a certain amount. Specifically, the reference image acquisition unit 30922 derives a pixel at a position where the coordinates (x, y) of the pixel of the target block are shifted by the displacement vector mvDisp of the target block. Considering that the displacement vector mvDisp has a decimal precision of 1/4 pel, the residual generation unit 30922 uses the X of the pixel R0 with integer precision corresponding to the case where the coordinates of the pixel of the target block are (xP, yP). The coordinate xInt, the Y coordinate yInt, and the X component fractional part xFrac and the Y component fractional part yFrac of the displacement vector mvDisp,
xInt = xPb + (mvLX [0] >> 2)
yInt = yPb + (mvLX [1] >> 2)
xFrac = mvLX [0] & 3
yFrac = mvLX [1] & 3
It is derived by the following formula. Here, X & 3 is a mathematical expression for extracting only the lower 2 bits of X.

次に、参照画像取得部30922は、変位ベクトルmvDispが1/4ペルの小数精度であることを考慮し、補間画素predPartLX[x][y]を生成する。まず、整数画素A(xA,yB)、B(xB,yB)、C(xC,yC)及びD(xD,yD)の座標を、
xA = Clip3( 0, picWidthInSamples −1, xInt )
xB = Clip3( 0, picWidthInSamples −1, xInt + 1 )
xC = Clip3( 0, picWidthInSamples −1, xInt )
xD = Clip3( 0, picWidthInSamples −1, xInt + 1 )
yA = Clip3( 0, picHeightInSamples −1, yInt )
yB = Clip3( 0, picHeightInSamples −1, yInt )
yC = Clip3( 0, picHeightInSamples −1, yInt + 1 )
yD = Clip3( 0, picHeightInSamples −1, yInt + 1 )
の式により導出する。ここで、整数画素Aは画素R0に対応した画素であり、整数画素B,C,Dはそれぞれ整数画素Aの右、下、右下に隣接する整数精度の画素であり、Clip3(x, y, z)は、zをx以上、y以下に制限(クリップ)する関数である。参照画像取得部30922は、各整数画素A、B、C、及びDに対応する参照画素refPicLX[ xA ][ yA ]、refPicLX[ xB ][ yB ]、refPicLX[ xC ][ yC ]、及びrefPicLX[ xD ][ yD ]を参照ピクチャメモリ306から読み出す。そして、参照画像取得部30922は、参照画素refPicLX[ xA ][ yA ]、refPicLX[ xB ][ yB ]、refPicLX[ xC ][ yC ]、refPicLX[ xD ][ yD ]と変位ベクトルmvDispのX成分の小数部分xFracとY成分の小数部分yFracを用いて、画素R0から変位ベクトルmvDispの小数部分だけずらした位置の画素である補間画素predPartLX[x][y]を導出する。具体的には、
predPartLX[ x ][ y ] = (refPicLX[ xA ][ yA ] * ( 8 − xFrac ) * ( 8 − yFrac ) + refPicLX[ xB ][ yB ] * ( 8 − yFrac ) * xFrac
+ refPicLX[ xC ][ yC ] * ( 8 − xFrac ) * yFrac
+ refPicLX[ xD ][ yD ] * xFrac * yFrac ) >> 6
の式により導出する。
Next, the reference image acquisition unit 30922 generates an interpolation pixel predPartLX [x] [y] in consideration of the fact that the displacement vector mvDisp has a pel resolution of 1/4 pel. First, the coordinates of integer pixels A (xA, yB), B (xB, yB), C (xC, yC) and D (xD, yD) are
xA = Clip3 (0, picWidthInSamples −1, xInt)
xB = Clip3 (0, picWidthInSamples −1, xInt + 1)
xC = Clip3 (0, picWidthInSamples −1, xInt)
xD = Clip3 (0, picWidthInSamples −1, xInt + 1)
yA = Clip3 (0, picHeightInSamples −1, yInt)
yB = Clip3 (0, picHeightInSamples −1, yInt)
yC = Clip3 (0, picHeightInSamples −1, yInt + 1)
yD = Clip3 (0, picHeightInSamples −1, yInt + 1)
It is derived by the following formula. Here, the integer pixel A is a pixel corresponding to the pixel R0, and the integer pixels B, C, and D are integer precision pixels adjacent to the right, bottom, and bottom right of the integer pixel A, respectively, and Clip3 (x, y , z) is a function that restricts (clips) z to be not less than x and not more than y. The reference image acquisition unit 30922 includes reference pixels refPicLX [xA] [yA], refPicLX [xB] [yB], refPicLX [xC] [yC], and refPicLX [corresponding to the integer pixels A, B, C, and D, respectively. xD] [yD] is read from the reference picture memory 306. Then, the reference image acquisition unit 30922 includes reference pixels refPicLX [xA] [yA], refPicLX [xB] [yB], refPicLX [xC] [yC], refPicLX [xD] [yD] and the X component of the displacement vector mvDisp. An interpolated pixel predPartLX [x] [y], which is a pixel that is shifted from the pixel R0 by the decimal part of the displacement vector mvDisp, is derived using the decimal part xFrac and the decimal part yFrac of the Y component. In particular,
predPartLX [x] [y] = (refPicLX [xA] [yA] * (8 − xFrac) * (8 − yFrac) + refPicLX [xB] [yB] * (8 − yFrac) * xFrac
+ refPicLX [xC] [yC] * (8 − xFrac) * yFrac
+ refPicLX [xD] [yD] * xFrac * yFrac) >> 6
It is derived by the following formula.

参照画像取得部30922は、上記の補間画素導出処理を、対象ブロック内の各画素に対して行い、補間画素の集合を補間ブロックpredPartLXとする。参照画像取得部30922は、導出した補間ブロックpredPartLXを、対応ブロックcurrIvSamplesLXとして、残差合成部30923に出力する。   The reference image acquisition unit 30922 performs the above interpolation pixel derivation process on each pixel in the target block, and sets a set of interpolation pixels as an interpolation block predPartLX. The reference image acquisition unit 30922 outputs the derived interpolation block predPartLX to the residual synthesis unit 30923 as the corresponding block currIvSamplesLX.

図14は、参照ブロックrefIvSamplesLXを説明するための図である。図14に示すように、参照レイヤ上の対応ブロックに対応する参照ブロックは、参照レイヤ上の参照画像の対応ブロックの位置を起点として、対象ブロックの動きベクトルmvLXだけずれた位置になるブロックに位置する。参照画像取得部30922は、対応ブロックcurrIvSamplesLXを導出した処理と、変位ベクトルmvDispをベクトル(mvDisp[ 0 ] + mvLX [ 0 ]、mvDisp[ 1 ] + mvLX [ 1 ])に置き換えている点を除いて、同様の処理を行うことで、対応ブロックrefIvSamplesLXを導出する。参照画像取得部30922は、対応ブロックrefIvSamplesLXを残差合成部30923に出力する。   FIG. 14 is a diagram for explaining the reference block refIvSamplesLX. As shown in FIG. 14, the reference block corresponding to the corresponding block on the reference layer is located at the block that is shifted by the motion vector mvLX of the target block, starting from the position of the corresponding block of the reference image on the reference layer. To do. The reference image acquisition unit 30922 removes the process of deriving the corresponding block currIvSamplesLX and replacing the displacement vector mvDisp with a vector (mvDisp [0] + mvLX [0], mvDisp [1] + mvLX [1]). The corresponding block refIvSamplesLX is derived by performing the same processing. The reference image acquisition unit 30922 outputs the corresponding block refIvSamplesLX to the residual synthesis unit 30923.

残差合成部30923は、残差予測実施フラグresPredFlagが1の場合には、動き変位補償画像predSamplesLX、対応ブロックcurrIvSamplesLX、参照ブロックrefIvSamplesLX及び残差予測フラグiv_res_pred_weight_idxから、補正動き変位補償画像predSamplesLX´を導出する。補正動き変位補償画像predSamplesLX´は、
predSamplesLX´ = predSamplesLX+
((currIvSamplesLX−refIvSamplesLX)>>(iv_res_pred_weight_idx − 1))
の式を用いて求める。残差合成部30923は、残差予測実施フラグresPredFlagが0の場合には、動き変位補償画像predSamplesLXをそのまま出力する。
When the residual prediction execution flag resPredFlag is 1, the residual synthesis unit 30923 derives a corrected motion displacement compensation image predSamplesLX ′ from the motion displacement compensation image predSamplesLX, the corresponding block currIvSamplesLX, the reference block refIvSamplesLX, and the residual prediction flag iv_res_pred_weight_idx. To do. The corrected motion displacement compensation image predSamplesLX´
predSamplesLX´ = predSamplesLX +
((currIvSamplesLX−refIvSamplesLX) >> (iv_res_pred_weight_idx − 1))
It is calculated using the following formula. When the residual prediction execution flag resPredFlag is 0, the residual synthesis unit 30923 outputs the motion displacement compensation image predSamplesLX as it is.

(照度補償) 照度補償部3093は、照度補償フラグic_enable_flagが1の場合に、入力された動き変位補償画像predSamplesLXに対して、照度補償を行う。照度補償フラグic_enable_flagが0の場合には、入力された動き変位補償画像predSamplesLXをそのまま出力する。照度補償部3093に入力される動き変位補償画像predSamplesLXは、残差予測がオフの場合には、動き変位補償部3091の出力画像であり、残差予測がオンの場合には、残差予測部3092の出力画像である。     (Illuminance compensation) When the illuminance compensation flag ic_enable_flag is 1, the illuminance compensation unit 3093 performs illuminance compensation on the input motion displacement compensation image predSamplesLX. When the illumination compensation flag ic_enable_flag is 0, the input motion displacement compensation image predSamplesLX is output as it is. The motion displacement compensation image predSamplesLX input to the illuminance compensation unit 3093 is an output image of the motion displacement compensation unit 3091 when the residual prediction is off, and the residual prediction unit when the residual prediction is on. 3092 is an output image.

(画像符号化装置の構成) 次に、本実施形態に係る画像符号化装置11の構成について説明する。図22は、本実施形態に係る画像符号化装置11の構成を示すブロック図である。画像符号化装置11は、予測画像生成部101、減算部102、DCT・量子化部103、エントロピー符号化部104、逆量子化・逆DCT部105、加算部106、予測パラメータメモリ(予測パラメータ記憶部、フレームメモリ)108、参照ピクチャメモリ(参照画像記憶部、フレームメモリ)109、符号化パラメータ決定部110、予測パラメータ符号化部111、残差格納部313(残差記録部)を含んで構成される。予測パラメータ符号化部111は、インター予測パラメータ符号化部112及びイントラ予測パラメータ符号化部113を含んで構成される。     (Configuration of Image Encoding Device) Next, the configuration of the image encoding device 11 according to the present embodiment will be described. FIG. 22 is a block diagram illustrating a configuration of the image encoding device 11 according to the present embodiment. The image encoding device 11 includes a prediction image generation unit 101, a subtraction unit 102, a DCT / quantization unit 103, an entropy encoding unit 104, an inverse quantization / inverse DCT unit 105, an addition unit 106, a prediction parameter memory (prediction parameter storage). Unit, frame memory) 108, reference picture memory (reference image storage unit, frame memory) 109, coding parameter determination unit 110, prediction parameter coding unit 111, and residual storage unit 313 (residual recording unit). Is done. The prediction parameter encoding unit 111 includes an inter prediction parameter encoding unit 112 and an intra prediction parameter encoding unit 113.

予測画像生成部101は、外部から入力されたレイヤ画像Tの視点毎の各ピクチャについて、そのピクチャを分割した領域であるブロック毎に予測ピクチャブロックPを生成する。ここで、予測画像生成部101は、予測パラメータ符号化部111から入力された予測パラメータに基づいて参照ピクチャメモリ109から参照ピクチャブロックを読み出す。予測パラメータ符号化部111から入力された予測パラメータとは、例えば、動きベクトル又は変位ベクトルである。予測画像生成部101は、符号化対象ブロックを起点として予測された動きベクトル又は変位ベクトルが示す位置にあるブロックの参照ピクチャブロックを読み出す。予測画像生成部101は、読み出した参照ピクチャブロックについて複数の予測方式のうちの1つの予測方式を用いて予測ピクチャブロックPを生成する。予測画像生成部101は、生成した予測ピクチャブロックPを減算部102に出力する。なお、予測画像生成部101は、既に説明した予測画像生成部308と同じ動作であるため予測ピクチャブロックPの生成の詳細は省略する。   The predicted image generation unit 101 generates a predicted picture block P for each block which is an area obtained by dividing the picture for each viewpoint of the layer image T input from the outside. Here, the predicted image generation unit 101 reads the reference picture block from the reference picture memory 109 based on the prediction parameter input from the prediction parameter encoding unit 111. The prediction parameter input from the prediction parameter encoding unit 111 is, for example, a motion vector or a displacement vector. The predicted image generation unit 101 reads the reference picture block of the block at the position indicated by the motion vector or the displacement vector predicted from the encoding target block. The prediction image generation unit 101 generates a prediction picture block P using one prediction method among a plurality of prediction methods for the read reference picture block. The predicted image generation unit 101 outputs the generated predicted picture block P to the subtraction unit 102. Note that since the predicted image generation unit 101 performs the same operation as the predicted image generation unit 308 already described, details of generation of the predicted picture block P are omitted.

予測画像生成部101は、予測方式を選択するために、例えば、レイヤ画像に含まれるブロックの画素毎の信号値と予測ピクチャブロックPの対応する画素毎の信号値との差分に基づく誤差値を最小にする予測方式を選択する。予測方式を選択する方法は、これには限られない。符号化対象のピクチャがベースビューピクチャである場合には、複数の予測方式とは、イントラ予測、動き予測及びマージ予測である。動き予測とは、上述のインター予測のうち、表示時刻間の予測である。マージ予測とは、既に符号化されたブロックであって、符号化対象ブロックから予め定めた範囲内にあるブロックと同一の参照ピクチャブロック及び予測パラメータを用いる予測である。符号化対象のピクチャがノンベースビューピクチャである場合には、複数の予測方式とは、イントラ予測、動き予測、マージ予測、及び変位予測である。変位予測(視差予測)とは、上述のインター予測のうち、別レイヤ画像(別視点画像)間の予測である。さらに、動き予測、マージ予測、及び変位予測である。変位予測(視差予測)に対して、追加予測(残差予測および照度補償)を行う場合と行わない場合の予測がある。   In order to select a prediction method, the predicted image generation unit 101, for example, calculates an error value based on a difference between a signal value for each pixel of a block included in the layer image and a signal value for each corresponding pixel of the predicted picture block P. Select the prediction method to minimize. The method for selecting the prediction method is not limited to this. When the encoding target picture is a base-view picture, the plurality of prediction methods are intra prediction, motion prediction, and merge prediction. Motion prediction is prediction between display times among the above-mentioned inter predictions. The merge prediction is a prediction that uses the same reference picture block and prediction parameter as a block that has already been encoded and is within a predetermined range from the encoding target block. When the picture to be encoded is a non-base view picture, the plurality of prediction methods are intra prediction, motion prediction, merge prediction, and displacement prediction. The displacement prediction (disparity prediction) is prediction between different layer images (different viewpoint images) in the above-described inter prediction. Furthermore, motion prediction, merge prediction, and displacement prediction. For displacement prediction (disparity prediction), there are predictions with and without additional prediction (residual prediction and illuminance compensation).

予測画像生成部101は、イントラ予測を選択した場合、予測ピクチャブロックPを生成する際に用いたイントラ予測モードを示す予測モードpredModeを予測パラメータ符号化部111に出力する。予測画像生成部101は、動き予測を選択した場合、予測ピクチャブロックPを生成する際に用いた動きベクトルmvLXを予測パラメータメモリ108に記憶し、インター予測パラメータ符号化部112に出力する。動きベクトルmvLXは、符号化対象ブロックの位置から予測ピクチャブロックPを生成する際の参照ピクチャブロックの位置までのベクトルを示す。動きベクトルmvLXを示す情報には、参照ピクチャを示す情報(例えば、参照ピクチャインデックスrefIdxLX、ピクチャ順序番号POC)を含み、予測パラメータを表すものであっても良い。また、予測画像生成部101は、インター予測モードを示す予測モードpredModeを予測パラメータ符号化部111に出力する。   When the intra prediction is selected, the predicted image generation unit 101 outputs a prediction mode predMode indicating the intra prediction mode used when generating the predicted picture block P to the prediction parameter encoding unit 111. When motion prediction is selected, the predicted image generation unit 101 stores the motion vector mvLX used when generating the predicted picture block P in the prediction parameter memory 108 and outputs the motion vector mvLX to the inter prediction parameter encoding unit 112. The motion vector mvLX indicates a vector from the position of the encoding target block to the position of the reference picture block when the predicted picture block P is generated. The information indicating the motion vector mvLX may include information indicating a reference picture (for example, a reference picture index refIdxLX, a picture order number POC), and may represent a prediction parameter. Further, the predicted image generation unit 101 outputs a prediction mode predMode indicating the inter prediction mode to the prediction parameter encoding unit 111.

予測画像生成部101は、変位予測を選択した場合、予測ピクチャブロックPを生成する際に用いた変位ベクトルを予測パラメータメモリ108に記憶し、インター予測パラメータ符号化部112に出力する。変位ベクトルdvLXは、符号化対象ブロックの位置から予測ピクチャブロックPを生成する際の参照ピクチャブロックの位置までのベクトルを示す。変位ベクトルdvLXを示す情報には、参照ピクチャを示す情報(例えば、参照ピクチャインデックスrefIdxLX、ビューIDview_id)を含み、予測パラメータを表すものであっても良い。また、予測画像生成部101は、インター予測モードを示す予測モードpredModeを予測パラメータ符号化部111に出力する。予測画像生成部101は、マージ予測を選択した場合、選択した参照ピクチャブロックを示すマージインデックスmerge_idxをインター予測パラメータ符号化部112に出力する。また、予測画像生成部101は、マージ予測モードを示す予測モードpredModeを予測パラメータ符号化部111に出力する。上記の、動き予測、変位予測、マージ予測において、予測画像生成部101は、残差予測実施フラグresPredFlagが残差予測を行うことを示す場合には、既に説明したように予測画像生成部101に含まれる残差予測部3092において残差予測を行う。   When the prediction image generation unit 101 selects the displacement prediction, the prediction image generation unit 101 stores the displacement vector used in generating the prediction picture block P in the prediction parameter memory 108 and outputs it to the inter prediction parameter encoding unit 112. The displacement vector dvLX indicates a vector from the position of the encoding target block to the position of the reference picture block when the predicted picture block P is generated. The information indicating the displacement vector dvLX may include information indicating a reference picture (for example, reference picture index refIdxLX, view IDview_id) and may represent a prediction parameter. Further, the predicted image generation unit 101 outputs a prediction mode predMode indicating the inter prediction mode to the prediction parameter encoding unit 111. When the merged prediction is selected, the predicted image generation unit 101 outputs a merge index merge_idx indicating the selected reference picture block to the inter prediction parameter encoding unit 112. Further, the predicted image generation unit 101 outputs a prediction mode predMode indicating the merge prediction mode to the prediction parameter encoding unit 111. In the above-described motion prediction, displacement prediction, and merge prediction, the prediction image generation unit 101, when the residual prediction execution flag resPredFlag indicates that the residual prediction is performed, as described above, the prediction image generation unit 101 Residual prediction is performed in the included residual prediction unit 3092.

減算部102は、予測画像生成部101から入力された予測ピクチャブロックPの信号値を、外部から入力されたレイヤ画像Tの対応するブロックの信号値から画素毎に減算して、残差信号を生成する。減算部102は、生成した残差信号をDCT・量子化部103と符号化パラメータ決定部110に出力する。   The subtraction unit 102 subtracts the signal value of the prediction picture block P input from the prediction image generation unit 101 for each pixel from the signal value of the corresponding block of the layer image T input from the outside, and generates a residual signal. Generate. The subtraction unit 102 outputs the generated residual signal to the DCT / quantization unit 103 and the encoding parameter determination unit 110.

DCT・量子化部103は、減算部102から入力された残差信号についてDCTを行い、DCT係数を算出する。DCT・量子化部103は、算出したDCT係数を量子化して量子化係数を求める。DCT・量子化部103は、求めた量子化係数をエントロピー符号化部104及び逆量子化・逆DCT部105に出力する。   The DCT / quantization unit 103 performs DCT on the residual signal input from the subtraction unit 102 and calculates a DCT coefficient. The DCT / quantization unit 103 quantizes the calculated DCT coefficient to obtain a quantization coefficient. The DCT / quantization unit 103 outputs the obtained quantization coefficient to the entropy encoding unit 104 and the inverse quantization / inverse DCT unit 105.

エントロピー符号化部104には、DCT・量子化部103から量子化係数が入力され、符号化パラメータ決定部110から符号化パラメータが入力される。入力される符号化パラメータには、例えば、参照ピクチャインデックスrefIdxLX、ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLX、予測モードpredMode、及びマージインデックスmerge_idx等の符号がある。エントロピー符号化部104は、入力された量子化係数と符号化パラメータをエントロピー符号化して符号化ストリームTeを生成し、生成した符号化ストリームTeを外部に出力する。   The entropy coding unit 104 receives the quantization coefficient from the DCT / quantization unit 103 and the coding parameter from the coding parameter determination unit 110. Input encoding parameters include codes such as a reference picture index refIdxLX, a vector index mvp_LX_idx, a difference vector mvdLX, a prediction mode predMode, and a merge index merge_idx. The entropy encoding unit 104 generates an encoded stream Te by entropy encoding the input quantization coefficient and encoding parameter, and outputs the generated encoded stream Te to the outside.

逆量子化・逆DCT部105は、DCT・量子化部103から入力された量子化係数を逆量子化してDCT係数を求める。逆量子化・逆DCT部105は、求めたDCT係数について逆DCTを行い、復号残差信号を算出する。逆量子化・逆DCT部105は、算出した復号残差信号を加算部106に出力する。   The inverse quantization / inverse DCT unit 105 inversely quantizes the quantization coefficient input from the DCT / quantization unit 103 to obtain a DCT coefficient. The inverse quantization / inverse DCT unit 105 performs inverse DCT on the obtained DCT coefficient to calculate a decoded residual signal. The inverse quantization / inverse DCT unit 105 outputs the calculated decoded residual signal to the addition unit 106.

加算部106は、予測画像生成部101から入力された予測ピクチャブロックPの信号値と逆量子化・逆DCT部105から入力された復号残差信号の信号値を画素毎に加算して、参照ピクチャブロックを生成する。加算部106は、生成した参照ピクチャブロックを参照ピクチャメモリ109に記憶する。   The addition unit 106 adds the signal value of the predicted picture block P input from the predicted image generation unit 101 and the signal value of the decoded residual signal input from the inverse quantization / inverse DCT unit 105 for each pixel, and refers to them. Generate a picture block. The adding unit 106 stores the generated reference picture block in the reference picture memory 109.

予測パラメータメモリ108は、予測パラメータ符号化部111が生成した予測パラメータを、符号化対象のピクチャ及びブロック毎に予め定めた位置に記憶する。参照ピクチャメモリ109は、加算部106が生成した参照ピクチャブロックを、符号化対象のピクチャ及びブロック毎に予め定めた位置に記憶する。   The prediction parameter memory 108 stores the prediction parameter generated by the prediction parameter encoding unit 111 at a predetermined position for each picture and block to be encoded. The reference picture memory 109 stores the reference picture block generated by the addition unit 106 at a predetermined position for each picture and block to be encoded.

符号化パラメータ決定部110は、符号化パラメータの複数のセットのうち、1つのセットを選択する。符号化パラメータとは、上述した予測パラメータやこの予測パラメータに関連して生成される符号化の対象となるパラメータである。予測画像生成部101は、これらの符号化パラメータのセットの各々を用いて予測ピクチャブロックPを生成する。   The encoding parameter determination unit 110 selects one set from among a plurality of sets of encoding parameters. The encoding parameter is a parameter to be encoded that is generated in association with the above-described prediction parameter or the prediction parameter. The predicted image generation unit 101 generates a predicted picture block P using each of these sets of encoding parameters.

符号化パラメータ決定部110は、複数のセットの各々について情報量の大きさと符号化誤差を示すコスト値を算出する。コスト値は、例えば、符号量と二乗誤差に係数λを乗じた値との和である。符号量は、量子化誤差と符号化パラメータをエントロピー符号化して得られる符号化ストリームTeの情報量である。二乗誤差は、減算部102において算出された残差信号の残差値の二乗値についての画素間の総和である。係数λは、予め設定されたゼロよりも大きい実数である。符号化パラメータ決定部110は、算出したコスト値が最小となる符号化パラメータのセットを選択する。これにより、エントロピー符号化部104は、選択した符号化パラメータのセットを符号化ストリームTeとして外部に出力し、選択されなかった符号化パラメータのセットを出力しない。   The encoding parameter determination unit 110 calculates a cost value indicating the amount of information and the encoding error for each of the plurality of sets. The cost value is, for example, the sum of a code amount and a square error multiplied by a coefficient λ. The code amount is the information amount of the encoded stream Te obtained by entropy encoding the quantization error and the encoding parameter. The square error is the sum between pixels regarding the square value of the residual value of the residual signal calculated by the subtracting unit 102. The coefficient λ is a real number larger than a preset zero. The encoding parameter determination unit 110 selects a set of encoding parameters that minimizes the calculated cost value. As a result, the entropy encoding unit 104 outputs the selected set of encoding parameters to the outside as the encoded stream Te, and does not output the set of unselected encoding parameters.

予測パラメータ符号化部111は、予測画像生成部101から入力されたパラメータに基づいて予測ピクチャを生成する際に用いる予測パラメータを導出し、導出した予測パラメータを符号化して符号化パラメータのセットを生成する。予測パラメータ符号化部111は、生成した符号化パラメータのセットをエントロピー符号化部104に出力する。予測パラメータ符号化部111は、生成した符号化パラメータのセットのうち符号化パラメータ決定部110が選択したものに対応する予測パラメータを予測パラメータメモリ108に記憶する。予測パラメータ符号化部111は、予測画像生成部101から入力された予測モードpredModeがインター予測モードを示す場合、インター予測パラメータ符号化部112を動作させる。予測パラメータ符号化部111は、予測モードpredModeがイントラ予測モードを示す場合、イントラ予測パラメータ符号化部113を動作させる。   The prediction parameter encoding unit 111 derives a prediction parameter used when generating a prediction picture based on the parameter input from the prediction image generation unit 101, and encodes the derived prediction parameter to generate a set of encoding parameters. To do. The prediction parameter encoding unit 111 outputs the generated set of encoding parameters to the entropy encoding unit 104. The prediction parameter encoding unit 111 stores, in the prediction parameter memory 108, a prediction parameter corresponding to the one selected by the encoding parameter determination unit 110 from the generated set of encoding parameters. The prediction parameter encoding unit 111 operates the inter prediction parameter encoding unit 112 when the prediction mode predMode input from the predicted image generation unit 101 indicates the inter prediction mode. The prediction parameter encoding unit 111 operates the intra prediction parameter encoding unit 113 when the prediction mode predMode indicates the intra prediction mode.

インター予測パラメータ符号化部112は、符号化パラメータ決定部110から入力された予測パラメータに基づいてインター予測パラメータを導出する。インター予測パラメータ符号化部112は、インター予測パラメータを導出する構成として、インター予測パラメータ復号部303(図5等、参照)がインター予測パラメータを導出する構成と同一の構成を含む。インター予測パラメータ符号化部112の構成については、後述する。   The inter prediction parameter encoding unit 112 derives an inter prediction parameter based on the prediction parameter input from the encoding parameter determination unit 110. The inter prediction parameter encoding unit 112 includes the same configuration as the configuration in which the inter prediction parameter decoding unit 303 (see FIG. 5 and the like) derives the inter prediction parameter as a configuration for deriving the inter prediction parameter. The configuration of the inter prediction parameter encoding unit 112 will be described later.

イントラ予測パラメータ符号化部113は、符号化パラメータ決定部110から入力された予測モードpredModeが示すイントラ予測モードIntraPredModeをインター予測パラメータのセットとして定める。   The intra prediction parameter encoding unit 113 determines the intra prediction mode IntraPredMode indicated by the prediction mode predMode input from the encoding parameter determination unit 110 as a set of inter prediction parameters.

(インター予測パラメータ符号化部の構成) 次に、インター予測パラメータ符号化部112の構成について説明する。インター予測パラメータ符号化部112は、インター予測パラメータ復号部303に対応する手段である。図23は、本実施形態に係るインター予測パラメータ符号化部112の構成を示す概略図である。インター予測パラメータ符号化部112は、インター予測パラメータ符号化制御部1031、マージ予測パラメータ導出部1121、AMVP予測パラメータ導出部1122、減算部1123、及び予測パラメータ統合部1126を含んで構成される。     (Configuration of Inter Prediction Parameter Encoding Unit) Next, the configuration of the inter prediction parameter encoding unit 112 will be described. The inter prediction parameter encoding unit 112 is means corresponding to the inter prediction parameter decoding unit 303. FIG. 23 is a schematic diagram illustrating a configuration of the inter prediction parameter encoding unit 112 according to the present embodiment. The inter prediction parameter encoding unit 112 includes an inter prediction parameter encoding control unit 1031, a merge prediction parameter derivation unit 1121, an AMVP prediction parameter derivation unit 1122, a subtraction unit 1123, and a prediction parameter integration unit 1126.

マージ予測パラメータ導出部1121は、上述のマージ予測パラメータ導出部3036(図7参照)と同様な構成を有する。   The merge prediction parameter derivation unit 1121 has the same configuration as the merge prediction parameter derivation unit 3036 (see FIG. 7).

インター予測パラメータ符号化制御部1031は、インター予測に関連する符号(シンタックス要素の復号をエントロピー符号化部104に指示し、符号化データに含まれる符号(シンタックス要素)を例えば、分割モードpart_mode、マージフラグmerge_flag、マージインデックスmerge_idx、インター予測フラグinter_pred_idcinter_pred_idc、参照ピクチャインデックスrefIdxLX、予測ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLXを符号化する。   The inter prediction parameter encoding control unit 1031 instructs the entropy encoding unit 104 to decode a code related to the inter prediction (syntax element decoding), for example, a code (syntax element) included in the encoded data. , Merge flag merge_flag, merge index merge_idx, inter prediction flag inter_pred_idcinter_pred_idc, reference picture index refIdxLX, prediction vector index mvp_LX_idx, and difference vector mvdLX are encoded.

インター予測パラメータ符号化制御部1031は、追加予測フラグ符号化部10311、マージインデックス符号化部10312、ベクトル候補インデックス符号化部10313、及び図示しない、分割モード符号化部、マージフラグ符号化部、インター予測フラグ符号化部、参照ピクチャインデックス符号化部、ベクトル差分符号化部を含んで構成される。分割モード符号化部、マージフラグ符号化部、マージインデックス符号化部、インター予測フラグ符号化部、参照ピクチャインデックス符号化部、ベクトル候補インデックス符号化部10313、ベクトル差分符号化部は各々、分割モードpart_mode、マージフラグmerge_flag、マージインデックスmerge_idx、インター予測フラグinter_pred_idcinter_pred_idc、参照ピクチャインデックスrefIdxLX、予測ベクトルインデックスmvp_LX_idx、差分ベクトルmvdLXを符号化する。   The inter prediction parameter encoding control unit 1031 includes an additional prediction flag encoding unit 10311, a merge index encoding unit 10312, a vector candidate index encoding unit 10313, and a split mode encoding unit, a merge flag encoding unit, an inter not shown. A prediction flag encoding unit, a reference picture index encoding unit, and a vector difference encoding unit are configured. The division mode encoding unit, the merge flag encoding unit, the merge index encoding unit, the inter prediction flag encoding unit, the reference picture index encoding unit, the vector candidate index encoding unit 10313, and the vector difference encoding unit are respectively divided modes. Part_mode, merge flag merge_flag, merge index merge_idx, inter prediction flag inter_pred_idcinter_pred_idc, reference picture index refIdxLX, prediction vector index mvp_LX_idx, and difference vector mvdLX are encoded.

追加予測フラグ符号化部1031は、追加予測が行われるか否かを示すために、照度補償フラグic_enable_flag、残差予測フラグiv_res_pred_weight_flsgを符号化する。   The additional prediction flag encoding unit 1031 encodes the illumination compensation flag ic_enable_flag and the residual prediction flag iv_res_pred_weight_flsg to indicate whether additional prediction is performed.

マージ予測パラメータ導出部1121には、予測画像生成部101から入力された予測モードpredModeがマージ予測モードを示す場合、符号化パラメータ決定部110からマージインデックスmerge_idxが入力される。マージインデックスmerge_idxは、予測パラメータ統合部1126に出力される。マージ予測パラメータ導出部1121は、マージ候補のうちマージインデックスmerge_idxが示す参照ブロックの参照ピクチャインデックスrefIdxLX、ベクトルmvLXを予測パラメータメモリ108から読み出す。マージ候補とは、符号化対象となる符号化対象ブロックから予め定めた範囲にある参照ブロック(例えば、符号化対象ブロックの左下端、左上端、右上端に接する参照ブロックのうち)であって、符号化処理が完了した参照ブロックである。   The merge index merge_idx is input from the encoding parameter determination unit 110 to the merge prediction parameter derivation unit 1121 when the prediction mode predMode input from the predicted image generation unit 101 indicates the merge prediction mode. The merge index merge_idx is output to the prediction parameter integration unit 1126. The merge prediction parameter derivation unit 1121 reads the reference picture index refIdxLX and the vector mvLX of the reference block indicated by the merge index merge_idx from the prediction candidates from the prediction parameter memory 108. The merge candidate is a reference block (for example, a reference block in contact with the lower left end, upper left end, and upper right end of the encoding target block) within a predetermined range from the encoding target block to be encoded, This is a reference block for which the encoding process has been completed.

AMVP予測パラメータ導出部1122は、上述のAMVP予測パラメータ導出部3032(図8参照)と同様な構成を有する。AMVP予測パラメータ導出部1122には、予測画像生成部101から入力された予測モードpredModeがインター予測モードを示す場合、符号化パラメータ決定部110からベクトルmvLXが入力される。AMVP予測パラメータ導出部1122は、入力されたベクトルmvLXに基づいて予測ベクトルmvpLXを導出する。AMVP予測パラメータ導出部1122は、導出した予測ベクトルmvpLXを減算部1123に出力する。なお、参照ピクチャインデックスrefIdx及びベクトルインデックスmvp_LX_idxは、予測パラメータ統合部1126に出力される。   The AMVP prediction parameter derivation unit 1122 has the same configuration as the AMVP prediction parameter derivation unit 3032 (see FIG. 8). When the prediction mode predMode input from the predicted image generation unit 101 indicates the inter prediction mode, the vector mvLX is input from the encoding parameter determination unit 110 to the AMVP prediction parameter derivation unit 1122. The AMVP prediction parameter derivation unit 1122 derives a prediction vector mvpLX based on the input vector mvLX. The AMVP prediction parameter derivation unit 1122 outputs the derived prediction vector mvpLX to the subtraction unit 1123. Note that the reference picture index refIdx and the vector index mvp_LX_idx are output to the prediction parameter integration unit 1126.

減算部1123は、符号化パラメータ決定部110から入力されたベクトルmvLXからAMVP予測パラメータ導出部1122から入力された予測ベクトルmvpLXを減算して差分ベクトルmvdLXを生成する。差分ベクトルmvdLXは予測パラメータ統合部1126に出力する。   The subtraction unit 1123 subtracts the prediction vector mvpLX input from the AMVP prediction parameter derivation unit 1122 from the vector mvLX input from the coding parameter determination unit 110 to generate a difference vector mvdLX. The difference vector mvdLX is output to the prediction parameter integration unit 1126.

予測画像生成部101から入力された予測モードpredModeがマージ予測モードを示す場合には、予測パラメータ統合部1126は、符号化パラメータ決定部110から入力されたマージインデックスmerge_idxをエントロピー符号化部104に出力する。予測画像生成部101から入力された予測モードpredModeがインター予測モードを示す場合には、予測パラメータ統合部1126は、次の処理を行う。   When the prediction mode predMode input from the predicted image generation unit 101 indicates the merge prediction mode, the prediction parameter integration unit 1126 outputs the merge index merge_idx input from the encoding parameter determination unit 110 to the entropy encoding unit 104. To do. When the prediction mode predMode input from the predicted image generation unit 101 indicates the inter prediction mode, the prediction parameter integration unit 1126 performs the following process.

予測パラメータ統合部1126は、符号化パラメータ決定部110から入力された参照ピクチャインデックスrefIdxLX及びベクトルインデックスmvp_LX_idx、減算部1123から入力された差分ベクトルmvdLXを統合する。予測パラメータ統合部1126は、統合した符号をエントロピー符号化部104に出力する。   The prediction parameter integration unit 1126 integrates the reference picture index refIdxLX and vector index mvp_LX_idx input from the encoding parameter determination unit 110 and the difference vector mvdLX input from the subtraction unit 1123. The prediction parameter integration unit 1126 outputs the integrated code to the entropy encoding unit 104.

(デプスDV導出部361) 図23に示すように、本実施形態に係る画像符号化装置11は、デプスDV導出部361を備えている。デプスDV導出部361は、図23に示すように、デプスDV変換テーブルと、マージ予測パラメータ導出部3036から得られた変位ベクトル(NBDV)と、参照ピクチャメモリ109に格納されたデプス画像を用いて、デプス由来の変位ベクトル(DoNBDV)を導出する。デプスDV導出部361におけるより具体的な処理は、デプスDV導出部351において説明した処理と同様であるので、ここでは説明を省略する。デプスDV変換テーブルは、カメラの位置を示すカメラパラメータを用いて導出し設定する。デプスDV変換テーブルのパラメータcp_scale、cp_off、cp_precisionは視点毎に符号化データ中のパラメータセットで符号化する。なお、上述した実施形態における画像符号化装置11、画像復号装置31の一部、例えば、エントロピー復号部301、予測パラメータ復号部302、予測画像生成部101、DCT・量子化部103、エントロピー符号化部104、逆量子化・逆DCT部105、符号化パラメータ決定部110、予測パラメータ符号化部111、エントロピー復号部301、予測パラメータ復号部302、予測画像生成部308、逆量子化・逆DCT部311をコンピュータで実現するようにしても良い。その場合、この制御機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいう「コンピュータシステム」とは、画像符号化装置11−11h、画像復号装置31−31hのいずれかに内蔵されたコンピュータシステムであって、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。     (Depth DV Deriving Unit 361) As shown in FIG. 23, the image encoding device 11 according to the present embodiment includes a depth DV deriving unit 361. The depth DV deriving unit 361 uses the depth DV conversion table, the displacement vector (NBDV) obtained from the merge prediction parameter deriving unit 3036, and the depth image stored in the reference picture memory 109, as shown in FIG. Depth-derived displacement vector (DoNBDV) is derived. More specific processing in the depth DV deriving unit 361 is the same as the processing described in the depth DV deriving unit 351, and thus description thereof is omitted here. The depth DV conversion table is derived and set using camera parameters indicating the position of the camera. The parameters cp_scale, cp_off, and cp_precision of the depth DV conversion table are encoded with the parameter set in the encoded data for each viewpoint. Note that a part of the image encoding device 11 and the image decoding device 31 in the above-described embodiment, for example, the entropy decoding unit 301, the prediction parameter decoding unit 302, the predicted image generation unit 101, the DCT / quantization unit 103, and entropy encoding. Unit 104, inverse quantization / inverse DCT unit 105, encoding parameter determination unit 110, prediction parameter encoding unit 111, entropy decoding unit 301, prediction parameter decoding unit 302, predicted image generation unit 308, inverse quantization / inverse DCT unit 311 may be realized by a computer. In that case, the program for realizing the control function may be recorded on a computer-readable recording medium, and the program recorded on the recording medium may be read by a computer system and executed. The “computer system” here is a computer system built in either the image encoding device 11-11h or the image decoding device 31-31h, and includes an OS and hardware such as peripheral devices. . The “computer-readable recording medium” refers to a storage device such as a flexible medium, a magneto-optical disk, a portable medium such as a ROM and a CD-ROM, and a hard disk incorporated in a computer system. Furthermore, the “computer-readable recording medium” is a medium that dynamically holds a program for a short time, such as a communication line when transmitting a program via a network such as the Internet or a communication line such as a telephone line, In such a case, a volatile memory inside a computer system that serves as a server or a client may be included that holds a program for a certain period of time. The program may be a program for realizing a part of the functions described above, and may be a program capable of realizing the functions described above in combination with a program already recorded in a computer system.

また、上述した実施形態における画像符号化装置11、画像復号装置31の一部、または全部を、LSI(Large Scale Integration)等の集積回路として実現しても良い。画像符号化装置11、画像復号装置31の各機能ブロックは個別にプロセッサ化しても良いし、一部、または全部を集積してプロセッサ化しても良い。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現しても良い。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いても良い。   Moreover, you may implement | achieve part or all of the image coding apparatus 11 in the embodiment mentioned above and the image decoding apparatus 31 as integrated circuits, such as LSI (Large Scale Integration). Each functional block of the image encoding device 11 and the image decoding device 31 may be individually made into a processor, or a part or all of them may be integrated into a processor. Further, the method of circuit integration is not limited to LSI, and may be realized by a dedicated circuit or a general-purpose processor. Further, in the case where an integrated circuit technology that replaces LSI appears due to progress in semiconductor technology, an integrated circuit based on the technology may be used.

以上、図面を参照してこの発明の一実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。   As described above, the embodiment of the present invention has been described in detail with reference to the drawings. However, the specific configuration is not limited to the above, and various design changes and the like can be made without departing from the scope of the present invention. It is possible to

〔まとめ〕 本発明の構成によれば、復号済みの他のピクチャのデプスを取りに行く処理、すなわちデプスアクセスの範囲が無制限に広がることを防止することができる。これにより、デプスアクセスの処理負荷を軽くすることができるとともに、処理に必要な符号量を減らすことができる。   [Summary] According to the configuration of the present invention, it is possible to prevent the processing of obtaining the depth of another decoded picture, that is, the range of depth access from being unlimitedly expanded. As a result, the processing load for depth access can be reduced, and the amount of code required for processing can be reduced.

また、予測対象ブロックの位置と垂直位置が同じ位置にある、復号済みの他のピクチャのデプスを用いるので、より処理負荷を軽くすることができる。   Further, since the depth of another decoded picture whose vertical position is the same as the position of the prediction target block is used, the processing load can be further reduced.

また、垂直位置が4の倍数となる位置にある、復号済みの他のピクチャのデプスを用いるので、より処理負荷を軽くすることができる。   Further, since the depth of another decoded picture at a position where the vertical position is a multiple of 4 is used, the processing load can be further reduced.

また、垂直位置が8の倍数となる位置にある、復号済みの他のピクチャのデプスを用いるので、より処理負荷を軽くすることができる。   Further, since the depth of another decoded picture whose vertical position is a multiple of 8 is used, the processing load can be further reduced.

また、復号済みの他のピクチャのデプスを取りに行く処理、すなわちデプスアクセスの範囲が無制限に広がることを防止することができる。これにより、デプスアクセスの処理負荷を軽くすることができるとともに、処理に必要な符号量を減らすことができる。   In addition, it is possible to prevent the process of obtaining the depth of another decoded picture, that is, the range of depth access from being expanded without limit. As a result, the processing load for depth access can be reduced, and the amount of code required for processing can be reduced.

本発明は、画像データが符号化された符号化データを復号する画像復号装置、および、画像データが符号化された符号化データを生成する画像符号化装置に好適に適用することができる。また、画像符号化装置によって生成され、画像復号装置によって参照される符号化データのデータ構造に好適に適用することができる。   The present invention can be suitably applied to an image decoding apparatus that decodes encoded data obtained by encoding image data and an image encoding apparatus that generates encoded data obtained by encoding image data. Further, the present invention can be suitably applied to the data structure of encoded data generated by an image encoding device and referenced by the image decoding device.

1…画像伝送システム 11…画像符号化装置 101…予測画像生成部 102…減算部 103…DCT・量子化部 104…エントロピー符号化部 105…逆量子化・逆DCT部 106…加算部 108…予測パラメータメモリ(フレームメモリ) 109…参照ピクチャメモリ(フレームメモリ) 110…符号化パラメータ決定部 111…予測パラメータ符号化部 112…インター予測パラメータ符号化部 1121…マージ予測パラメータ導出部 1122…AMVP予測パラメータ導出部 1123…減算部 1126…予測パラメータ統合部 113…イントラ予測パラメータ符号化部 21…ネットワーク 31…画像復号装置 301…エントロピー復号部 302…予測パラメータ復号部 303…インター予測パラメータ復号部 3031…インター予測パラメータ復号制御部 30311…残差予測フラグ復号部 303111…リファレンスレイヤ判定部 303112…残差予測フラグ格納部 303113…残差予測フラグ判定部 30312…マージインデックス復号部 30313…ベクトル候補インデックス復号部 3032…AMVP予測パラメータ導出部 3035…加算部 3036…マージ予測パラメータ導出部
30361…マージ候補導出部 303611…マージ候補格納部 303612…拡張マージ候補導出部 3036121…レイヤ間マージ候補導出部 3036122…変位ベクトル取得部 3036123…変位マージ候補導出部 303613…基本マージ候補導出部 3036131…空間マージ候補導出部 3036132…時間マージ候補導出部 3036133…結合マージ候補導出部 3036134…ゼロマージ候補導出部 30362…マージ候補選択部 304…イントラ予測パラメータ復号部 306…参照ピクチャメモリ(フレームメモリ) 307…予測パラメータメモリ(フレームメモリ) 308…予測画像生成部 309…インター予測画像生成部 3091…変位補償部 3092…残差予測部 30921…残差予測実施フラグ導出部 30922…参照画像取得部 30923…残差合成部 3093…照度補償部 3094…重み予測部 310…イントラ予測画像生成部 311…逆量子化・逆DCT部 312…加算部 313…残差格納部 351、361…デプスDV導出部(デプス導出部) 41…画像表示装置
DESCRIPTION OF SYMBOLS 1 ... Image transmission system 11 ... Image coding apparatus 101 ... Prediction image generation part 102 ... Subtraction part 103 ... DCT / quantization part 104 ... Entropy coding part 105 ... Dequantization / inverse DCT part 106 ... Addition part 108 ... Prediction Parameter memory (frame memory) 109 ... Reference picture memory (frame memory) 110 ... Coding parameter determination unit 111 ... Prediction parameter coding unit 112 ... Inter prediction parameter coding unit 1121 ... Merge prediction parameter derivation unit 1122 ... AMVP prediction parameter derivation 1123 ... Subtraction unit 1126 ... Prediction parameter integration unit 113 ... Intra prediction parameter encoding unit 21 ... Network 31 ... Image decoding device 301 ... Entropy decoding unit 302 ... Prediction parameter decoding unit 303 ... Inter prediction parameter decoding unit 3031 Inter prediction parameter decoding control unit 30311 ... residual prediction flag decoding unit 303111 ... reference layer determination unit 303112 ... residual prediction flag storage unit 303113 ... residual prediction flag determination unit 30312 ... merge index decoding unit 30313 ... vector candidate index decoding unit 3032 ... AMVP prediction parameter derivation unit 3035 ... Addition unit 3036 ... Merge prediction parameter derivation unit 30361 ... Merge candidate derivation unit 303611 ... Merge candidate storage unit 303612 ... Extended merge candidate derivation unit 3036121 ... Inter-layer merge candidate derivation unit 3036122 ... Displacement vector acquisition unit 3036123 ... displacement merge candidate derivation unit 303613 ... basic merge candidate derivation unit 3036131 ... spatial merge candidate derivation unit 3036132 ... time merge candidate derivation unit 3036 133 ... Merged merge candidate derivation unit 3036134 ... Zero merge candidate derivation unit 30362 ... Merge candidate selection unit 304 ... Intra prediction parameter decoding unit 306 ... Reference picture memory (frame memory) 307 ... Prediction parameter memory (frame memory) 308 ... Prediction image generation unit 309 ... Inter prediction image generation unit 3091 ... Displacement compensation unit 3092 ... Residual prediction unit 30921 ... Residual prediction execution flag derivation unit 30922 ... Reference image acquisition unit 30923 ... Residual synthesis unit 3093 ... Illuminance compensation unit 3094 ... Weight prediction unit 310 ... Intra prediction image generation unit 311 ... Inverse quantization / inverse DCT unit 312 ... Addition unit 313 ... Residual storage unit 351, 361 ... Depth DV derivation unit (depth derivation unit) 41 ... Image display device

Claims (5)

予測パラメータの導出にデプスを用いる画像復号装置であって、
復号済みの他のピクチャにおけるデプスから、予測パラメータの導出に用いるデプスを導出するデプス導出部と、
上記デプス導出部が導出したデプスを用いて予測パラメータを導出する予測パラメータ復号部と、を備え、
上記デプス導出部は、上記復号済みの他のピクチャにおける制限された位置のデプスを用いることを特徴とする画像復号装置。
An image decoding device that uses depth to derive a prediction parameter,
A depth deriving unit for deriving a depth used for deriving a prediction parameter from depths in other decoded pictures;
A prediction parameter decoding unit that derives a prediction parameter using the depth derived by the depth deriving unit,
The depth decoding unit uses a depth of a limited position in the other decoded picture.
上記デプス導出部は、上記復号済みの他のピクチャにおいて、予測対象ブロックの位置と垂直位置が同じ位置のデプスを用いることを特徴とする請求項1に記載の画像復号装置。   2. The image decoding apparatus according to claim 1, wherein the depth deriving unit uses a depth at which the position of the prediction target block and the vertical position are the same in the other decoded pictures. 上記デプス導出部は、上記復号済みの他のピクチャにおいて、垂直位置が4の倍数となる位置のデプスを用いることを特徴とする請求項1に記載の画像復号装置。   The image decoding device according to claim 1, wherein the depth deriving unit uses a depth at a position where the vertical position is a multiple of 4 in the other decoded pictures. 上記デプス導出部は、記復号済みの他のピクチャにおいて、垂直位置が8の倍数となる位置のデプスを用いることを特徴とする請求項1に記載の画像復号装置。   2. The image decoding apparatus according to claim 1, wherein the depth deriving unit uses a depth at a position where the vertical position is a multiple of 8 in another picture that has been decoded and decoded. 予測パラメータの導出にデプスを用いる画像符号化装置であって、
復号済みの他のピクチャにおけるデプスから、予測パラメータの導出に用いるデプスを導出するデプス導出部と、
上記デプス導出部が導出したデプスを用いて予測パラメータを導出する予測パラメータ復号部と、を備え、
上記デプス導出部は、上記復号済みの他のピクチャにおける制限された位置のデプスを用いることを特徴とする画像符号化装置。
An image encoding device that uses depth to derive prediction parameters,
A depth deriving unit for deriving a depth used for deriving a prediction parameter from depths in other decoded pictures;
A prediction parameter decoding unit that derives a prediction parameter using the depth derived by the depth deriving unit,
The image coding apparatus according to claim 1, wherein the depth deriving unit uses a depth of a limited position in the other decoded picture.
JP2013215118A 2013-10-15 2013-10-15 Image decoder and image encoder Pending JP2015080053A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013215118A JP2015080053A (en) 2013-10-15 2013-10-15 Image decoder and image encoder

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013215118A JP2015080053A (en) 2013-10-15 2013-10-15 Image decoder and image encoder

Publications (1)

Publication Number Publication Date
JP2015080053A true JP2015080053A (en) 2015-04-23

Family

ID=53011160

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013215118A Pending JP2015080053A (en) 2013-10-15 2013-10-15 Image decoder and image encoder

Country Status (1)

Country Link
JP (1) JP2015080053A (en)

Similar Documents

Publication Publication Date Title
JP6469588B2 (en) Residual prediction device, image decoding device, image coding device, residual prediction method, image decoding method, and image coding method
JP6441236B2 (en) Image decoding apparatus and image encoding apparatus
JP6360053B2 (en) Illuminance compensation device, image decoding device, image coding device
US10306235B2 (en) Image decoding apparatus, image coding apparatus, and prediction-vector deriving device
JP6225241B2 (en) Image decoding apparatus, image decoding method, image coding apparatus and image coding method
WO2015056719A1 (en) Image decoding device and image coding device
US10200717B2 (en) Image decoding device, image coding device, and predicted image generation device
JP6473078B2 (en) Image decoding device
WO2015056620A1 (en) Image decoding device and image coding device
JP6118199B2 (en) Image decoding apparatus, image encoding apparatus, image decoding method, image encoding method, and computer-readable recording medium
JP2016034050A (en) Image decoder, image encoder, and data structure
WO2015141696A1 (en) Image decoding device, image encoding device, and prediction device
JP2016066864A (en) Image decoding device, image encoding device, and merge mode parameter derivation device
JP2017135432A (en) Viewpoint synthesis prediction apparatus, image decoding apparatus, and image encoding apparatus
WO2015190510A1 (en) Viewpoint synthesis prediction device, image decoding device, and image coding device
WO2016056587A1 (en) Displacement arrangement derivation device, displacement vector derivation device, default reference view index derivation device, and depth lookup table derivation device
JP2015080053A (en) Image decoder and image encoder
JP6401707B2 (en) Image decoding apparatus, image decoding method, and recording medium
JP2014204327A (en) Image decoding apparatus and image encoding apparatus