(57)【要約】      （修正有）【課題】サブ予測ユニット単位で並列的に時間的な視点間動き情報を誘導する映像符号化方法及び映像復号方法を提供する。【解決手段】３次元映像符号化方法であって、現在ブロックに対する予測モードをインター予測モードと決定するステップと、参照ピクチャにおいて現在ブロックに対応する参照ブロックに動き情報が存在するかを判断するステップと、参照ブロックに動き情報が存在する場合に現在ブロックに関する動き情報を現在ブロック内のサブ予測ブロック単位で誘導するステップと、現在ブロックに関する動き情報に基づいて現在ブロックに対する予測サンプルを誘導するステップとを有する。【選択図】図２２
2020039157.tif 000002
【特許請求の範囲】
【請求項１】
現在ブロックの動き情報を決定するステップと、
前記現在ブロックの前記動き情報に基づいて、前記現在ブロックに対する予測サンプルを誘導するステップと、
前記現在ブロックの前記動き情報を決定するステップは、
参照ブロック内の前記現在ブロックの中央位置に対応する中央サブブロックが動き情報を有するか否かを決定するステップと、
前記参照ブロック内の前記中央サブブロックが動き情報を有するとき、前記現在ブロック内のサブブロックの動き情報を誘導するステップと、
前記参照ブロック内の前記中央サブブロックが動き情報を有しないとき、前記現在ブロックの動き情報を誘導するステップと、
を有し、
前記動き情報は、動きベクトルと参照インデックスの少なくとも一つを含むことを特徴とする映像符号化方法。
【請求項２】
前記現在ブロック内のサブブロックの前記動き情報を誘導するステップは、
前記参照ブロック内のサブブロックが動き情報を有するか否かを決定するステップであって、前記参照ブロック内の前記サブブロックは、前記現在ブロック内の現在サブブロックに対応し、
前記参照ブロック内の前記サブブロックが動き情報を有するとき、前記参照ブロック内の前記サブブロックから、前記現在ブロック内の前記現在サブブロックの動き情報を誘導するステップと、
前記参照ブロック内の前記サブブロックが動き情報を有しないとき、前記参照ブロック内の前記中央サブブロックから、前記現在ブロック内の前記現在サブブロックの動き情報を誘導するステップと、
を有することを特徴とする、請求項１に記載の映像符号化方法。
【請求項３】
前記参照ブロックは、前記現在ブロックを含む現在ピクチャと異なる時間的順序を有する参照ピクチャ内に位置することを特徴とする、請求項１に記載の映像符号化方法。
【請求項４】
現在ブロックの動き情報を誘導するステップと、
前記現在ブロックの前記動き情報に基づいて、前記現在ブロックに対する予測サンプルを誘導するステップと、
前記現在ブロックの前記動き情報を誘導するステップは、
参照ブロック内の前記現在ブロックの中央位置に対応する中央サブブロックが動き情報を有するか否かを決定するステップと、
前記参照ブロック内の前記中央サブブロックが動き情報を有するとき、前記現在ブロック内のサブブロックの動き情報を誘導するステップと、
前記参照ブロック内の前記中央サブブロックが動き情報を有しないとき、前記現在ブロックの動き情報を誘導するステップと、
を有し、
前記動き情報は、動きベクトルと参照インデックスの少なくとも一つを含むことを特徴とする映像復号化方法。
【請求項５】
前記現在ブロック内のサブブロックの前記動き情報を誘導するステップは、
前記参照ブロック内のサブブロックが動き情報を有するか否かを決定するステップであって、前記参照ブロック内の前記サブブロックは、前記現在ブロック内の現在サブブロックに対応し、
前記参照ブロック内の前記サブブロックが動き情報を有するとき、前記参照ブロック内の前記サブブロックから、前記現在ブロック内の前記現在サブブロックの動き情報を誘導するステップと、
前記参照ブロック内の前記サブブロックが動き情報を有しないとき、前記参照ブロック内の前記中央サブブロックから、前記現在ブロック内の前記現在サブブロックの動き情報を誘導するステップと、
ことを特徴とする、請求項４に記載の映像復号化方法。
【請求項６】
前記参照ブロックは、前記現在ブロックを含む現在ピクチャと異なる時間的順序を有する参照ピクチャ内に位置することを特徴とする、請求項４に記載の映像復号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、３次元映像符号化／復号化装置及び方法に関し、特に、サブ予測ユニット単位（Ｓｕｂ−Ｐｒｅｄｉｃｔｉｏｎ  Ｕｎｉｔ）で並列的に時間的な視点間動き情報を誘導する映像符号化／復号化方法及び装置に関する。
【背景技術】
【０００２】
情報通信産業の持続的な発達は、ＨＤ（Ｈｉｇｈ  Ｄｅｆｉｎｉｔｉｏｎ）解像度を有する放送サービスの世界的な拡散をもたらし、その結果、数多くのユーザがＨＤ映像に慣れるようになった。
【０００３】
ＨＤ画質に見慣れたユーザ達はより一層の高画質及び高解像度を有する映像を望むことになり、かかるユーザ達の需要を満たすために、多数の機関が次世代映像機器への開発に拍車をかけてきた。その結果、昨今ではＦＨＤ（Ｆｕｌｌ  ＨＤ）及びＵＨＤ（Ｕｌｔｒａ  Ｈｉｇｈ  Ｄｅｆｉｎｉｔｉｏｎ）を支援する映像を見ることが可能になった。
【０００４】
しかも、ユーザ達は高画質及び高解像度の映像だけでなく、立体感が感じられる３次元映像も要求することになり、かかるユーザの需要を満たすために、色々な機関では３次元映像を開発するに至った。
【０００５】
しかしながら、３次元映像は、実際映像（ｔｅｘｔｕｒｅ）情報に加えて、深さマップ（ｄｅｐｔｈ  ｍａｐ）情報も含まなければならず、２次元映像に比べて多量のデータを含む。このため、既存の映像符号化／復号化手順によって３次元映像を符号化／復号化する場合には、十分な符号化／復号化効率が得られないという問題点があった。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明が解決しようとする課題は、符号化／復号化対象ブロックの動き情報を誘導する装置及び方法を提供することにある。
【０００７】
本発明が解決しようとする他の課題は、符号化／復号化対象ブロックの動き情報を誘導するとき、データ依存性を除去する装置及び方法を提供することにある。
【０００８】
本発明が解決しようとする他の課題は、サブ予測ユニット単位で符号化／復号化対象ブロックの動き情報を誘導するとき、データ依存性を除去して映像符号化／復号化効率を向上させる装置及び方法を提供することにある。
【０００９】
本発明が解決しようとする他の課題は、サブ予測ユニット単位で符号化／復号化対象ブロックの動き情報を誘導するとき、参照ブロックの動き情報を用いて映像符号化／復号化効率を向上させる装置及び方法を提供することにある。
【課題を解決するための手段】
【００１０】
本発明の一実施例によれば、現在ブロックに対する予測モードをインター予測モードと決定するステップと、参照ピクチャにおいて前記現在ブロックに対応する参照ブロックに動き情報が存在するかを判断するステップと、前記参照ブロックに動き情報が存在する場合に、前記現在ブロックに関する動き情報を前記現在ブロック内サブ予測ブロック単位で誘導するステップと、前記現在ブロックに関する動き情報に基づいて、前記現在ブロックに対する予測サンプルを誘導するステップとを有することを特徴とする、３次元映像符号化方法を提供することができる。
【００１１】
このとき、前記現在ブロック及び前記参照ブロックは、予測ブロックであってもよい。
【００１２】
このとき、前記動き情報は、前記参照ブロックの中央に位置してもよい。
【００１３】
このとき、前記現在ブロックに関する動き情報を前記現在ブロック内サブ予測ブロック単位で誘導するステップでは、前記現在ブロック内サブ予測ブロックに対応する前記参照ブロック内サブ予測ブロックに動き情報が存在する場合に、前記参照ブロック内サブ予測ブロックに存在する動き情報を前記現在ブロック内サブ予測ブロックの動き情報として誘導することができる。
【００１４】
このとき、前記現在ブロック内サブ予測ブロックに対応する前記参照ブロック内サブ予測ブロックに動き情報が存在しない場合に、前記参照ブロックの動き情報を前記現在ブロック内サブ予測ブロックの動き情報として誘導することができる。
【００１５】
本発明の他の実施例によれば、現在ブロックに対する予測モードをインター予測モードと決定し、参照ピクチャにおいて前記現在ブロックに対応する参照ブロックに動き情報が存在するかを判断する記憶部と、前記参照ブロックに動き情報が存在する場合に、前記現在ブロックに関する動き情報を前記現在ブロック内サブ予測ブロック単位で誘導し、前記現在ブロックに関する動き情報に基づいて、前記現在ブロックに対する予測サンプルを誘導する誘導部とを備える、３次元映像符号化装置を提供することができる。
【００１６】
ここで、前記現在ブロック及び前記参照ブロックは、予測ブロックであってもよい。
【００１７】
ここで、前記動き情報は、前記参照ブロックの中央に位置してもよい。
【００１８】
ここで、前記誘導部では、前記現在ブロック内サブ予測ブロックに対応する前記参照ブロック内サブ予測ブロックに動き情報が存在する場合に、前記参照ブロック内サブ予測ブロックに存在する動き情報を前記現在ブロック内サブ予測ブロックの動き情報として誘導することができる。
【００１９】
ここで、前記現在ブロック内サブ予測ブロックに対応する前記参照ブロック内サブ予測ブロックに動き情報が存在しない場合に、前記参照ブロックの動き情報を前記現在ブロック内サブ予測ブロックの動き情報として誘導することができる。
【００２０】
本発明の更に他の実施例によれば、現在ブロックに対する予測モードをインター予測モードと決定するステップと、参照ピクチャにおいて前記現在ブロックに対応する参照ブロックに動き情報が存在するかを判断するステップと、前記参照ブロックに動き情報が存在する場合に、前記現在ブロックに関する動き情報を前記現在ブロック内サブ予測ブロック単位で誘導するステップと、前記現在ブロックに関する動き情報に基づいて、前記現在ブロックに対する予測サンプルを誘導するステップとを有する、３次元映像復号化方法を提供することができる。
【００２１】
このとき、前記現在ブロック及び前記参照ブロックは、予測ブロックであってもよい。
【００２２】
このとき、前記動き情報は、前記参照ブロックの中央に位置してもよい。
【００２３】
このとき、前記現在ブロックに関する動き情報を前記現在ブロック内サブ予測ブロック単位で誘導するステップでは、前記現在ブロック内サブ予測ブロックに対応する前記参照ブロック内サブ予測ブロックに動き情報が存在する場合に、前記参照ブロック内サブ予測ブロックに存在する動き情報を前記現在ブロック内サブ予測ブロックの動き情報として誘導することができる。
【００２４】
このとき、前記現在ブロック内サブ予測ブロックに対応する前記参照ブロック内サブ予測ブロックに動き情報が存在しない場合に、前記参照ブロックの動き情報を前記現在ブロック内サブ予測ブロックの動き情報として誘導することができる。
【００２５】
本発明の更に他の実施例によれば、現在ブロックに対する予測モードをインター予測モードと決定し、参照ピクチャにおいて前記現在ブロックに対応する参照ブロックに動き情報が存在するかを判断する記憶部と、前記参照ブロックに動き情報が存在する場合に、前記現在ブロックに関する動き情報を前記現在ブロック内サブ予測ブロック単位で誘導し、前記現在ブロックに関する動き情報に基づいて、前記現在ブロックに対する予測サンプルを誘導する誘導部とを備える、３次元映像復号化装置を提供することができる。
【００２６】
ここで、前記現在ブロック及び前記参照ブロックは、予測ブロックであってもよい。
【００２７】
ここで、前記動き情報は、前記参照ブロックの中央に位置してもよい。
【００２８】
ここで、前記誘導部では、前記現在ブロック内サブ予測ブロックに対応する前記参照ブロック内サブ予測ブロックに動き情報が存在する場合に、前記参照ブロック内サブ予測ブロックに存在する動き情報を前記現在ブロック内サブ予測ブロックの動き情報として誘導することができる。
【００２９】
ここで、前記現在ブロック内サブ予測ブロックに対応する前記参照ブロック内サブ予測ブロックに動き情報が存在しない場合に、前記参照ブロックの動き情報を前記現在ブロック内サブ予測ブロックの動き情報として誘導することができる。
【発明の効果】
【００３０】
本発明によれば、符号化／復号化対象ブロックの動き情報を誘導するという効果を有する。
【００３１】
本発明によれば、符号化／復号化対象ブロックの動き情報を誘導するとき、データ依存性を除去するという効果を有する。
【００３２】
本発明によれば、サブ予測ユニット単位で符号化／復号化対象ブロックの動き情報を誘導するとき、データ依存性を除去して映像符号化／復号化効率を向上させるという効果を有する。
【００３３】
本発明によれば、サブ予測ユニット単位で符号化／復号化対象ブロックの動き情報を誘導するとき、参照ブロックの動き情報を用いて映像符号化／復号化効率を向上させるという効果を有する。
【図面の簡単な説明】
【００３４】
【図１】３次元ビデオシステムの基本構造を概略的に示す図である。
【図２】“ｂａｌｌｏｏｎｓ”映像の実際映像と深さ情報マップ映像の一例を示す図である。
【図３】映像を符号化及び復号化するとき、映像の分割構造を概略的に示す図である。
【図４】符号化ユニット（ＣＵ）を含み得る予測ユニット（ＰＵ）の形態を示す図である。
【図５】３次元ビデオコーデック（ｃｏｄｅｃ）において視点間予測（ｉｎｔｅｒ  ｖｉｅｗ  ｐｒｅｄｉｃｔｉｏｎ）の構造を例示する図である。
【図６】３次元ビデオエンコーダ及び／又はデコーダで実際映像（ｔｅｘｔｕｒｅ  ｖｉｅｗ）と深さ情報マップ（ｄｅｐｔｈ  ｖｉｅｗ）を符号化及び／又は復号化する手順を例示する図である。
【図７】ビデオエンコーダの一実施例に係る構成を示すブロック図である。
【図８】ビデオデコーダの一実施例に係る構成を示すブロック図である。
【図９】３次元ビデオコーデックに対する予測構造の一例を示す図である。
【図１０】現在ブロックに対する併合動き（ｍｅｒｇｅ）リストを構成するために用いられる周辺ブロックを例示する図である。
【図１１】隣接した視点の動き情報を用いて、現在ブロックの動き情報を誘導する手順の一例を示す図である。
【図１２】一つの予測ユニット（Ｐｒｅｄｉｃｔｉｏｎ  Ｕｎｉｔ；ＰＵ）が複数のサブ予測ユニット（Ｓｕｂ−Ｐｒｅｄｉｃｔｉｏｎ  Ｕｎｉｔ）に分割される一例を示す図である。
【図１３】参照ブロックを用いて現在ブロックの動き情報を誘導する手順の一例を示す図である。
【図１４】現在ブロックの動き情報を誘導するために用いられる参照ブロックの一例を示す図である。
【図１５】図１５Ａ乃至図１５Ｅは、記憶空間に記憶された動き情報を用いて、動き情報を誘導する手順の一例を概略的に説明する図である。
【図１６】図１６Ａ乃至図１６Ｇは、記憶空間に記憶された動き情報を用いて、動き情報を誘導する手順の他の例を概略的に説明する図である。
【図１７】一例に係る、参照ブロックのサブ予測ユニットを用いて現在ブロックに対するサブ予測ユニットの動き情報を誘導する方法を示すフローチャートである。
【図１８】参照ブロックのサブ予測ユニットを用いて現在ブロックのサブ予測ユニットの情報を並列的に誘導する手順の一例を示す図である。
【図１９】参照ブロック内で使用可能なサブ予測ユニットが右下端に位置している場合、使用可能なサブ予測ユニットを探索する手順の一例を示す図である。
【図２０】サブ予測ユニット単位で動き情報を誘導するためにかかる時間を概略的に示す図である。
【図２１】本発明が適用されるインター予測部の構造を示すブロック図である。
【図２２】本発明の一実施例に係る、参照ブロックの任意の位置に存在するサブ予測ユニットを用いて現在ブロックに対するサブ予測ユニットの動き情報を誘導する方法を示すフローチャートである。
【図２３】本発明の他の実施例に係る、参照ブロックの任意の位置に存在するサブ予測ユニットを用いて現在ブロックに対するサブ予測ユニットの動き情報を誘導する方法を示すフローチャートである。
【図２４】任意の位置の動き情報を用いて、現在ブロックに対するサブ予測ユニットの動き情報を誘導する手順の一例を示す図である。
【図２５】本発明の更に他の実施例に係る、任意の動き情報値を用いて現在ブロックに対するサブ予測ユニットの動き情報を誘導する方法を示すフローチャートである。
【図２６】任意の動き情報値を用いて、現在ブロックに対するサブ予測ユニットの動き情報を誘導する手順の一例を示す図である。
【図２７】本発明を適用して動き情報を誘導するためにかかる時間を概略的に示す図である。
【発明を実施するための形態】
【００３５】
以下、図面を参照して本発明の実施の形態について詳しく説明する。本明細書で実施例を説明するにあって、関連した公知構成又は機能に関する具体的な説明が本明細書の要旨を曖昧にし得ると判断される場合にはその詳細な説明を省略するものとする。
【００３６】
ある構成要素が他の構成要素に“連結されている”又は“接続されている”と記載されている場合、両構成要素が直接連結又は接続されている場合も含み、両構成要素の間に更に他の構成要素が介在する場合も含むと理解すべきである。なお、本発明で特定構成を“含む”とした記載は、当該構成以外の構成を排除するという意味ではなく、更なる構成が本発明の実施又は本発明の技術的思想の範囲内で含まれてもよいということを意味する。
【００３７】
第１、第２などの用語を様々な構成要素を説明するために使うことができるが、これらの用語に構成要素が限定されるわけではない。これらの用語は一つの構成要素を他の構成要素から区別する目的でのみ使われる。例えば、本発明の権利範囲を逸脱しない範囲内で第１構成要素を第２構成要素と命名することができ、同様に、第２構成要素を第１構成要素と命名することもできる。
【００３８】
また、本発明の実施例に示す各構成部は、それぞれ異なる特徴的な機能を表すために独立して示されているものであり、分離したハードウェア又は一つのソフトウェアの構成単位からなるものを意味するわけではない。すなわち、説明の便宜上、各構成部が独立して含まれる例を示しているが、各構成部のうち少なくとも２つの構成部を組み合わせて一つの構成部としてもよく、一つの構成部が複数の構成部に区分されて機能を果たしてもよい。このような、各構成部を組み合わせた実施例及び分離させた実施例も、本発明の本質から逸脱しない限り、本発明の権利範囲に含まれる。
【００３９】
また、一部の構成要素は、本発明で本質的な機能を果たす必須の構成要素ではなく、単に性能を向上させるための選択的な構成要素であってもよい。本発明は、単に性能向上のために用いられる構成要素を除いて、本発明の本質を実現するために必須な構成部だけを含んで具現することもでき、単に性能向上のために用いられる選択的な構成要素を除いて必須構成要素だけを含む構造も、本発明の権利範囲に含まれる。
【００４０】
３次元ビデオは、ユーザに３次元立体ディスプレイ装置を用いて、まるで実の世界にいるかのような立体感を提供する。これと関連して、ＩＳＯ／ＩＥＣのＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）とＩＴＵ−ＴのＶＣＥＧ（Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）の共同標準化グループであるＪＣＴ−３Ｖ（Ｔｈｅ  Ｊｏｉｎｔ  Ｃｏｌｌａｂｏｒａｔｉｖｅ  Ｔｅａｍ  ｏｎ  ３Ｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ  Ｅｘｔｅｎｓｉｏｎ  Ｄｅｖｅｌｏｐｍｅｎｔ）では３次元ビデオ標準化を進行している。
【００４１】
図１は、３次元ビデオシステムの基本構造を概略的に示す図である。
【００４２】
図１を参照すると、３次元ビデオ（３Ｄ  ｖｉｄｅｏ；３ＤＶ）システムは、送信側（ｓｅｎｄｅｒ）及び受信側（ｒｅｃｅｉｖｅｒ）を含むことができる。このとき、図１の３次元ビデオシステムとしては、３次元ビデオ標準で考慮している基本的な３次元ビデオシステムを用いることができる。３次元ビデオ標準は、実際映像、及び実際映像に対応する深さ情報マップを用いて、ステレオスコープの映像だけでなく、オートステレオスコープ（ａｕｔｏｓｔｅｒｅｏｓｃｏｐｉｃ）映像の再生を支援できる進歩したデータ形式及びそれに関連した技術に対する標準を含むことができる。
【００４３】
送信側は多視点（ｍｕｌｔｉ−ｖｉｅｗ）の映像コンテンツを生成することができる。
具体的に、送信側ではステレオカメラ及び多視点カメラを用いてビデオ情報を生成し、深さ情報カメラを用いて深さ情報マップ（ｄｅｐｔｈ  ｍａｐ又はｄｅｐｔｈ  ｖｉｅｗ）を生成することができる。また、送信側では変換器を用いて２次元映像を３次元映像に変換することもできる。送信側では、生成されたビデオ情報及び深さ情報マップなどを用いて、Ｎ（Ｎ≧２）視点（ｖｉｅｗ）（すなわち、多視点）の映像コンテンツを生成することができる。このとき、Ｎ視点の映像コンテンツには、Ｎ視点のビデオ情報及びその深さ情報マップ（Ｄｅｐｔｈ−ｍａｐ）情報とカメラ関連付加情報などを含めることができる。Ｎ視点の映像コンテンツは、３次元ビデオエンコーダで多視点ビデオ符号化方法を用いて圧縮することができ、圧縮した映像コンテンツ（ビットストリーム）をネットワークを介して受信側の端末に送信することができる。
【００４４】
受信側（ｒｅｃｅｉｖｅｒ）は、送信側から受信した映像コンテンツを復号化して多視点（ｍｕｌｔｉ−ｖｉｅｗ）の映像を提供することができる。具体的に、受信側ではビデオデコーダ（例えば、３次元ビデオデコーダ、ステレオビデオデコーダ、２次元ビデオデコーダなど）で多視点ビデオ復号化方法を用いて、受信したビットストリームを復号化することによって、Ｎ視点の映像を復元することができる。この時、復元されたＮ視点の映像と深さ情報マップベースのレンダリング（ＤＩＢＲ；Ｄｅｐｔｈ−Ｉｍａｇｅ−Ｂａｓｅｄ  Ｒｅｎｄｅｒｉｎｇ）過程を用いて、Ｎ視点以上の仮想視点映像を生成してもよい。生成されたＮ視点以上の仮想視点映像は様々な立体ディスプレイ装置（例えば、Ｎ−視点ディスプレイ、ステレオディスプレイ、２次元ディスプレイなど）に合うように再生され、ユーザに立体感ある映像を提供する。
【００４５】
図２は、“ｂａｌｌｏｏｎｓ”映像の実際映像と深さ情報マップ映像の一例を示す図である。
【００４６】
図２の（ａ）は、国際標準化機構であるＭＰＥＧの３次元ビデオ符号化標準で使用中である“ｂａｌｌｏｏｎｓ”映像を示している。図２の（ｂ）は、図２の（ａ）に示す“ｂａｌｌｏｏｎｓ”映像に対する深さ情報マップ映像を示している。図２の（ｂ）に示す深さ情報マップ映像は、画面に見える深さ情報を画素当たりに８ビットで表現したものである。
【００４７】
深さ情報マップ（ｄｅｐｔｈ  ｍａｐ）は、仮想視点映像を生成するために用いられるものであり、実世界でカメラと実物（ｏｂｊｅｃｔ）の間の距離（実写映像と同じ解像度で各画素に該当する深さ情報）を一定のビット数で表現したものである。このとき、深さ情報マップは、深さ情報マップカメラを用いたり、実際一般映像（Ｔｅｘｔｕｒｅ）を用いて取得することができる。
【００４８】
深さ情報マップカメラを用いて取得した深さ情報マップは主に、静止した客体又は場面で高信頼度の深さ情報を提供するが、一定の距離以内でのみ深さ情報マップカメラが作動するという問題点がある。このとき、深さ情報マップカメラは、レーザー（ｌａｓｅｒ）又は構造化された光線（ｓｔｒｕｃｔｕｒｅｄ  ｌｉｇｈｔ）技法、又はＴＦＬ（Ｔｉｍｅ−ｏｆ−Ｆｌｉｇｈｔ  ｏｆ  Ｌｉｇｈｔ）に基づく深さ測定技法を用いることができる。
【００４９】
深さ情報マップは、実際一般映像（Ｔｅｘｔｕｒｅ）と変移ベクトル（Ｄｉｓｐａｒｉｔｙ  Ｖｅｃｔｏｒ）を用いて生成することもできる。変移ベクトルは、２つの一般映像間の視差を示す情報を意味する。変移ベクトルは、現在視点における任意の一つの画素を他の視点における画素と比較して最も類似な画素を探したとき、現在視点における任意の一つの画素と他の視点における画素（現在視点における任意の一つの画素と最も類似な画素）の間の距離から取得することができる。
【００５０】
実際映像とその深さ情報マップは、一つのカメラだけでなく、複数のカメラから取得した映像であってもよい。複数のカメラから取得した映像は、独立して符号化することができ、一般的な２次元ビデオ符号化／復号化コーデックを用いて符号化／復号化してもよい。また、複数のカメラから取得された映像は視点間の相関性が存在するので、複数のカメラから取得された映像は、符号化効率を上げるために、別個の視点間の予測を用いて符号化してもよい。
【００５１】
図３は、映像を符号化及び復号化するとき、映像の分割構造を概略的に示す図である。
【００５２】
映像を効率的に分割するために符号化ユニット（Ｃｏｄｉｎｇ  Ｕｎｉｔ：ＣＵ）別に符号化及び復号化を行うことができる。ユニットは、構文要素（ｓｙｎｔａｘ  ｅｌｅｍｅｎｔ）及び映像サンプルが含まれたブロックを併せて称する言葉である。ユニットが分割されるということは、ユニットに該当するブロックを分割するということを意味してもよい。
【００５３】
図３を参照すると、映像３００を最大符号化ユニット（Ｌａｒｇｅｓｔ  Ｃｏｄｉｎｇ
Ｕｎｉｔ；ＬＣＵ）（以下、ＬＣＵという。）単位で順次に分割した後、ＬＣＵごとに分割構造を決定する。本明細書で、ＬＣＵはコーディングツリーユニット（Ｃｏｄｉｎｇ
Ｔｒｅｅ  Ｕｎｉｔ；ＣＴＵ）と同じ意味で使われてもよい。分割構造は、ＬＣＵ ３１０内で映像を効率的に符号化するための符号化ユニット（以下、ＣＵという。）の分布を意味し、このような分布は、一つのＣＵを、その横及び縦のサイズを半分に減少した４個のＣＵに分割するか否かによって決定することができる。分割されたＣＵは、同じ方式で分割されたＣＵに対してその横及び縦のサイズが半分に減少した４個のＣＵに再帰的に分割されてもよい。
【００５４】
このとき、ＣＵの分割は、あらかじめ定義された深さまで再帰的に行うことができる。
深さ情報はＣＵのサイズを示す情報であり、各ＣＵごとに記憶されてもよい。例えば、ＬＣＵの深さは０であり、ＳＣＵ（Ｓｍａｌｌｅｓｔ  Ｃｏｄｉｎｇ  Ｕｎｉｔ）の深さは、あらかじめ定義された最大深さであってもよい。ここで、ＬＣＵは、上述したとおり、最大のサイズを有する符号化ユニットであり、ＳＣＵ（Ｓｍａｌｌｅｓｔ  Ｃｏｄｉｎｇ
Ｕｎｉｔ）は、最小のサイズを有する符号化ユニットである。
【００５５】
ＬＣＵ ３１０から横及び縦のサイズが半分となるように分割を行う度にＣＵの深さは１ずつ増加する。例えば、特定の深さＬでＣＵのサイズが２Ｎ×２Ｎであれば、分割が行われない場合に、ＣＵのサイズは依然として２Ｎ×２Ｎであり、分割が行われる場合に、ＣＵのサイズはＮ×Ｎとなる。この時、Ｎ×ＮのＣＵの深さはＬ＋１となる。すなわち、ＣＵのサイズに対応するＮのサイズは、深さが１増加する度に半分に減少する。
【００５６】
図３を参照すると、最小深さが０であるＬＣＵのサイズは６４×６４画素であり、最大深さが３であるＳＣＵのサイズは８×８画素であってもよい。このとき、６４×６４画素のＣＵ（ＬＣＵ）の深さは０、３２×３２画素のＣＵの深さは１、１６×１６画素のＣＵの深さは２、８×８画素のＣＵ（ＳＣＵ）の深さは３と表現することができる。
【００５７】
また、特定ＣＵを分割するか否かに関する情報は、ＣＵごとに１ビットの分割情報で表現することができる。この分割情報はＳＣＵを除いた全ＣＵに含まれてもよく、例えば、ＣＵを分割しない場合には分割情報に０を記憶し、ＣＵを分割する場合には分割情報に１を記憶することができる。
【００５８】
図４は、符号化ユニット（ＣＵ）を含み得る予測ユニット（ＰＵ）の形態を示す図である。
【００５９】
ＬＣＵから分割されたＣＵのうち、それ以上分割（ｓｐｌｉｔ）されないＣＵは、一つ以上の予測ユニットに分割又はパーティション（ｐａｒｔｉｔｉｏｎｉｎｇ）されてもよい。
【００６０】
予測ユニット（以下、ＰＵという。）は、予測を行う基本単位であり、スキップ（ｓｋｉｐ）モード、インター（ｉｎｔｅｒ）モード、イントラ（ｉｎｔｒａ）モードのうちいずれか一つで符号化及び復号化され、各モードによって様々な形態でパーティションされてもよい。
【００６１】
図４を参照すると、スキップモードの場合、ＣＵのパーティション無しで、ＣＵと同じサイズを有する２Ｎ×２Ｎモード４１０を支援することができる。
【００６２】
インターモードの場合、ＣＵに対して８つのパーティションされた形態、例えば、２Ｎ×２Ｎモード４１０、２Ｎ×Ｎモード４１５、Ｎ×２Ｎモード４２０、Ｎ×Ｎモード４２５、２Ｎ×ｎＵモード４３０、２Ｎ×ｎＤモード４３５、ｎＬ×２Ｎモード４４０、ｎＲ×２Ｎモード４４５を支援することができる。
【００６３】
イントラモードの場合、ＣＵに対して２Ｎ×２Ｎモード４１０、Ｎ×Ｎモード４２５を支援することができる。
【００６４】
図５は、３次元ビデオコーデック（ｃｏｄｅｃ）で視点間予測（ｉｎｔｅｒ  ｖｉｅｗ
ｐｒｅｄｉｃｔｉｏｎ）の構造を示す一例である。
【００６５】
視点１（Ｖｉｅｗ  １）と視点２（Ｖｉｅｗ  ２）は視点０（Ｖｉｅｗ  ０）を参照映像にして視点間予測を行うことができ、符号化順序は、視点１（Ｖｉｅｗ  １）と視点２（Ｖｉｅｗ  ２）よりも視点０（Ｖｉｅｗ  ０）が先に符号化されなければならない。
【００６６】
この時、視点０（Ｖｉｅｗ  ０）は、他の視点とは無関係に独立して符号化できることから、独立的な視点（Ｉｎｄｅｐｅｎｄｅｎｔ  Ｖｉｅｗ）という。一方、視点１（Ｖｉｅｗ  １）と視点２（Ｖｉｅｗ  ２）は、視点０（Ｖｉｅｗ  ０）を参照映像にして符号化することから、依存的な視点（Ｄｅｐｅｎｄｅｎｔ  Ｖｉｅｗ）という。独立的な視点映像は、一般の２次元ビデオコーデックを用いて符号化することができる。一方、依存的な視点映像は、視点間予測を行う必要があるため、視点間予測過程が含まれた３次元ビデオコーデックを用いて符号化することができる。
【００６７】
また、視点１（Ｖｉｅｗ  １）と視点２（Ｖｉｅｗ  ２）の符号化効率を向上させるために、視点１（Ｖｉｅｗ  １）と視点２（Ｖｉｅｗ  ２）を深さ情報マップを用いて符号化することができる。例えば、実際映像とその深さ情報マップを符号化するとき、実際映像と深さ情報マップを独立して符号化及び／又は復号化することができる。又は、実際映像と深さ情報マップを符号化するとき、実際映像と深さ情報マップを、図６のように互いに依存的に符号化及び／又は復号化することもできる。
【００６８】
図６は、３次元ビデオエンコーダ及び／又はデコーダで実際映像（ｔｅｘｔｕｒｅ  ｖｉｅｗ）及び深さ情報マップ（ｄｅｐｔｈ  ｖｉｅｗ）を符号化及び／又は復号化する手順を示す一例である。
【００６９】
図６を参照すると、３次元ビデオエンコーダは、実際映像（ｔｅｘｔｕｒｅ  ｖｉｅｗ）を符号化する実際映像エンコーダ（ｔｅｘｔｕｒｅ  ｅｎｃｏｄｅｒ）、及び深さ情報マップ（ｄｅｐｔｈ  ｖｉｅｗ）を符号化する深さ情報マップエンコーダ（ｄｅｐｔｈ  ｅｎｃｏｄｅｒ）を含むことができる。
【００７０】
このとき、実際映像エンコーダは、深さ情報マップエンコーダによって符号化された深さ情報マップを用いて実際映像を符号化することができる。一方、深さ情報マップエンコーダは、実際映像エンコーダによって符号化された実際映像を用いて深さ情報マップを符号化することができる。
【００７１】
３次元ビデオデコーダは、実際映像を復号化する実際映像デコーダ（ｔｅｘｔｕｒｅ  ｄｅｃｏｄｅｒ）、及び深さ情報マップを復号化する深さ情報マップデコーダ（ｄｅｐｔｈ  ｄｅｃｏｄｅｒ）を含むことができる。
【００７２】
このとき、実際映像デコーダは、深さ情報マップデコーダによって復号化された深さ情報マップを用いて実際映像を復号化することができる。一方、深さ情報マップデコーダは、実際映像デコーダによって復号化された実際映像を用いて深さ情報マップを復号化することができる。
【００７３】
図７は、ビデオエンコーダの一実施例に係る構成を示すブロック図である。
【００７４】
図７は、マルチビュー構造に対して適用可能なビデオエンコーダの一実施例を示し、マルチビュー構造に対するビデオエンコーダは、単一ビュー構造に対するビデオエンコーダを拡張（ｅｘｔｅｎｓｉｏｎ）して具現することができる。このとき、図７のビデオエンコーダは、図６の実際映像エンコーダ及び／又は深さ情報マップエンコーダに用いることができ、エンコーダは符号化装置を意味することができる。
【００７５】
図７を参照すると、ビデオエンコーダ７００は、インター予測部７１０、イントラ予測部７２０、スイッチ７１５、減算器７２５、変換部７３０、量子化部７４０、エントロピー符号化部７５０、逆量子化部７６０、逆変換部７７０、加算器７７５、フィルタ部７８０、及び参照ピクチャバッファー７９０を含む。
【００７６】
ビデオエンコーダ７００は、入力映像に対してイントラ（ｉｎｔｒａ）モード又はインター（ｉｎｔｅｒ）モードで符号化を行い、ビットストリーム（ｂｉｔｓｔｒｅａｍ）を出力することができる。
【００７７】
イントラ予測（ｉｎｔｒａ  ｐｒｅｄｉｃｔｉｏｎ）は、画面内予測（ｉｎｔｒａ  ｐｉｃｔｕｒｅ  ｐｒｅｄｉｃｔｉｏｎ）を意味し、インター予測（ｉｎｔｅｒ  ｐｒｅｄｉｃｔｉｏｎ）は、画面間（ｉｎｔｅｒ  ｐｉｃｔｕｒｅ）予測又はビュー間（ｉｎｔｅｒ−ｖｉｅｗ）予測を意味する。イントラモードである場合、スイッチ７１５がイントラモードに切り替わり、インターモードである場合、スイッチ７１５がインターモードに切り替わる。
【００７８】
ビデオエンコーダ７００は、入力ピクチャのブロック（現在ブロック）に対する予測ブロックを生成した後、現在ブロックと予測ブロックとの差分を符号化することができる。
【００７９】
イントラモードである場合、イントラ予測部７２０は、現在ブロックの周辺における既に符号化されたブロックの画素値を参照画素として用いることができる。イントラ予測部７２０は、参照画素を用いて現在ブロックに対する予測サンプルを生成することができる。
【００８０】
インターモードである場合、インター予測部７１０は、参照ピクチャバッファー７９０に記憶されている参照ピクチャから、入力ブロック（現在ブロック）に対応する参照ブロックを特定する動きベクトルを求めることができる。インター予測部７１０は、動きベクトル、及び参照ピクチャバッファー７９０に記憶されている参照ピクチャを用いて動き補償を行い、現在ブロックに対する予測ブロックを生成することができる。
【００８１】
マルチビュー構造において、インターモードで適用されるインター予測は、インタービュー予測を含むことができる。インター予測部７１０は、参照ビューのピクチャをサンプリングしてインタービュー参照ピクチャを構成することもできる。インター予測部７１０は、インタービュー参照ピクチャを含む参照ピクチャリストを用いてインタービュー予測を行うこともできる。ビュー間の参照関係は、ビュー間の依存性を特定する情報を用いてシグナルすることができる。
【００８２】
一方、現在ビューのピクチャと参照ビューのピクチャとが同一のサイズを有する場合、該参照ビューピクチャに適用されるサンプリングは、参照ビューピクチャからのサンプル複写又は補間による参照サンプルの生成を意味することができる。現在ビューピクチャと参照ビューピクチャの解像度が互いに異なる場合、上記参照ビューピクチャに適用されるサンプリングは、アップサンプリング又はダウンサンプリングを意味することができる。
例えば、ビュー間解像度が異なる場合には、参照ビューの復元されたピクチャをアップサンプリングしてインタービュー参照ピクチャを構成してもよい。
【００８３】
どんなビューのピクチャを用いてインタービュー参照ピクチャを構成するかは、符号化費用（ｃｏｄｉｎｇ  ｃｏｓｔ）などを考慮して決定することができる。エンコーダは、インタービュー参照ピクチャとして使われるピクチャの属するビュー（ｖｉｅｗ）を特定する情報を復号化装置に送信することができる。
【００８４】
また、インタービュー予測において参照されるビュー、すなわち、参照ビュー内で現在ブロックの予測に用いられるピクチャは、現在ピクチャ（現在ビュー内予測対象ピクチャ）と同一のＡＵ（Ａｃｃｅｓｓ  Ｕｎｉｔ）のピクチャであってもよい。
【００８５】
減算器７２５は、現在ブロックと予測ブロックとの差分によってレジデュアルブロック（ｒｅｓｉｄｕａｌ  ｂｌｏｃｋ）（レジデュアル信号）を生成することができる。
【００８６】
変換部７３０は、レジデュアルブロックに対して変換（ｔｒａｎｓｆｏｒｍ）を行って変換係数（ｔｒａｎｓｆｏｒｍ  ｃｏｅｆｆｉｃｉｅｎｔ）を出力することができる。変換省略（ｔｒａｎｓｆｏｒｍ  ｓｋｉｐ）モードが適用される場合に、変換部７３０はレジデュアルブロックに対する変換を省略してもよい。
【００８７】
量子化部７４０は、変換係数を量子化パラメータによって量子化し、量子化された係数（ｑｕａｎｔｉｚｅｄ  ｃｏｅｆｆｉｃｉｅｎｔ）を出力することができる。
【００８８】
エントロピー符号化部７５０は、量子化部７４０で算出された値又は符号化過程で算出された符号化パラメータ値などを確率分布によってエントロピー符号化し、ビットストリームを出力することができる。エントロピー符号化部７５０は、ビデオの画素情報の他、ビデオデコーディングのための情報（例えば、シンタクスエレメント（ｓｙｎｔａｘ  ｅｌｅｍｅｎｔ）など）をエントロピー符号化することもできる。
【００８９】
符号化パラメータは、符号化及び復号化に必要な情報であり、シンタクスエレメントのようにエンコーダで符号化されて復号化装置に伝達される情報だけでなく、符号化或いは復号化過程で類推され得る情報を含むこともできる。
【００９０】
レジデュアル信号は、原信号と予測信号との差を意味することができ、また、原信号と予測信号との差が変換（ｔｒａｎｓｆｏｒｍ）された形態の信号、又は原信号と予測信号との差が変換されて量子化された形態の信号を意味することもできる。ブロック単位において、レジデュアル信号をレジデュアルブロックと呼ぶこともできる。
【００９１】
エントロピー符号化が適用される場合、高い発生確率を有するシンボルに少ない数のビットを割り当て、低い発生確率を有するシンボルに多い数のビットを割り当ててシンボルを表現することにより、符号化対象シンボルに対するビット列のサイズを減少させることができる。したがって、エントロピー符号化を用いて映像符号化の圧縮性能を高めることができる。
【００９２】
エントロピー符号化のために指数ゴロム（ｅｘｐｏｎｅｎｔｉａｌ  Ｇｏｌｏｍｂ）、ＣＡＶＬＣ（Ｃｏｎｔｅｘｔ−Ａｄａｐｔｉｖｅ  Ｖａｒｉａｂｌｅ  Ｌｅｎｇｔｈ  Ｃｏｄｉｎｇ）又はＣＡＢＡＣ（Ｃｏｎｔｅｘｔ−Ａｄａｐｔｉｖｅ  Ｂｉｎａｒｙ  Ａｒｉｔｈｍｅｔｉｃ  Ｃｏｄｉｎｇ）のような符号化方法を用いることができる。例えば、エントロピー符号化部７５０は、可変長符号化（ＶＬＣ：Ｖａｒｉａｂｌｅ  Ｌｅｎｇｈｔｈ  Ｃｏｄｉｎｇ／Ｃｏｄｅ）テーブルを用いてエントロピー符号化を行うことができる。また、エントロピー符号化部７５０は、対象シンボルの二進化（ｂｉｎａｒｉｚａｔｉｏｎ）方法及び対象シンボル／ビン（ｂｉｎ）の確率モデル（ｐｒｏｂａｂｉｌｉｔｙ
ｍｏｄｅｌ）を導出した後、導出された二進化方法又は確率モデルを用いてエントロピー符号化を行うことができる。
【００９３】
量子化された係数は、逆量子化部７６０で逆量子化し、逆変換部７７０で逆変換することができる。逆量子化、逆変換された係数は加算器７７５で予測ブロックに加算し、復元ブロックを生成することができる。
【００９４】
復元ブロックはフィルタ部７８０を通過するが、フィルタ部７８０は、デブロッキングフィルタ（ｄｅｂｌｏｃｋｉｎｇ  ｆｉｌｔｅｒ）、ＳＡＯ（Ｓａｍｐｌｅ  Ａｄａｐｔｉｖｅ  Ｏｆｆｓｅｔ）、ＡＬＦ（Ａｄａｐｔｉｖｅ  Ｌｏｏｐ  Ｆｉｌｔｅｒ）のうち少なくとも一つを復元ブロック又は復元ピクチャに適用することができる。フィルタ部７８０を経た復元ブロックを参照映像バッファー７９０に記憶することができる。
【００９５】
図８は、ビデオデコーダの一実施例に係る構成を示すブロック図である。
【００９６】
図８は、マルチビュー構造に対して適用可能なビデオデコーダの一実施例を示し、マルチビュー構造に対するビデオデコーダは、単一ビュー構造に対するビデオデコーダを拡張（ｅｘｔｅｎｓｉｏｎ）して具現することができる。
【００９７】
このとき、図８のビデオデコーダは、図６の実際映像デコーダ及び／又は深さ情報マップデコーダに用いることができる。説明の便宜のために、本明細書では、‘復号化’と‘デコード’を同じ意味で使い、‘復号化装置’と‘デコーダ’を同じ意味で使うことができる。
【００９８】
図８を参照すると、ビデオデコーダ８００は、エントロピー復号化部８１０、逆量子化部８２０、逆変換部８３０、イントラ予測部８４０、インター予測部８５０、フィルタ部８６０、及び参照ピクチャバッファー８７０を含む。
【００９９】
ビデオデコーダ８００は、エンコーダから出力されたビットストリームを受信してイントラモード又はインターモードで復号化を行い、再構成された映像、すなわち、復元映像を出力することができる。
【０１００】
イントラモードである場合、スイッチをイントラ予測のために切り替え、インターモードである場合、スイッチをインター予測のために切り替えることができる。
【０１０１】
ビデオデコーダ８００は、受信したビットストリームから復元されたレジデュアルブロック（ｒｅｓｉｄｕａｌ  ｂｌｏｃｋ）を得、予測ブロックを生成した後、復元されたレジデュアルブロックと予測ブロックとを合算して、再構成されたブロック、すなわち、復元ブロックを生成することができる。
【０１０２】
エントロピー復号化部８１０は、入力されたビットストリームを確率分布によってエントロピー復号化し、量子化された係数（ｑｕａｎｔｉｚｅｄ  ｃｏｅｆｆｉｃｉｅｎｔ）及びシンタクスエレメントなどの情報を出力することができる。
【０１０３】
量子化された係数は、逆量子化部８２０で逆量子化され、逆変換部８３０で逆変換される。量子化された係数を逆量子化／逆変換し、復元されたレジデュアルブロック（ｒｅｓｉｄｕａｌ  ｂｌｏｃｋ）を生成することができる。
【０１０４】
イントラモードである場合、イントラ予測部８４０は、現在ブロックの周辺における既に符号化されたブロックの画素値を用いて、現在ブロックに対する予測ブロックを生成することができる。
【０１０５】
インターモードである場合、インター予測部８５０は、動きベクトル及び参照ピクチャバッファー８７０に記憶されている参照ピクチャを用いて動き補償を行うことによって、現在ブロックに対する予測ブロックを生成することができる。
【０１０６】
マルチビュー構造の場合、インターモードで適用されるインター予測は、インタービュー予測を含むことができる。インター予測部８５０は、参照ビューのピクチャをサンプリングしてインタービュー参照ピクチャを構成することができる。インター予測部８５０は、インタービュー参照ピクチャを含む参照ピクチャリストを用いてインタービュー予測を行うことができる。ビュー間の参照関係は、ビュー間の依存性を特定する情報を用いてシグナルすることができる。
【０１０７】
一方、現在ビューピクチャ（現在ピクチャ）と参照ビューピクチャとが同一のサイズを有する場合に、該参照ビューピクチャに適用されるサンプリングは、参照ビューピクチャからのサンプル複写又は補間による参照サンプルの生成を意味することができる。現在ビューピクチャと参照ビューピクチャの解像度が互いに異なる場合、上記参照ビューピクチャに適用されるサンプリングは、アップサンプリング又はダウンサンプリングを意味することができる。
【０１０８】
例えば、ビュー間解像度が異なる場合に、ビュー間にインタービュー予測が適用されるとき、参照ビューが復元されたピクチャをアップサンプリングしてインタービュー参照ピクチャを構成することができる。
【０１０９】
このとき、インタービュー参照ピクチャとして使われるピクチャの属するビューを特定する情報は、エンコーダからデコーダに送信されてもよい。
【０１１０】
また、インタービュー予測において参照されるビュー、すなわち、参照ビュー内で現在ブロックの予測に用いられるピクチャは、現在ピクチャ（現在ビュー内予測対象ピクチャ）と同一なＡＵ（Ａｃｃｅｓｓ  Ｕｎｉｔ）のピクチャであってもよい。
【０１１１】
復元されたレジデュアルブロックと予測ブロックとが加算器８５５で合算され、復元ブロックが生成される。言い換えると、レジデュアルサンプルと予測サンプルが加算され、復元されたサンプル又は復元されたピクチャが生成される。
【０１１２】
復元されたピクチャは、フィルタ部８６０でフィルタリングされる。フィルタ部８６０は、デブロッキングフィルタ、ＳＡＯ、ＡＬＦのうち少なくとも一つを復元ブロック又は復元ピクチャに適用することができる。フィルタ部８６０は、再構成された（ｍｏｄｉｆｉｅｄ）或いはフィルタリングされた（ｆｉｌｔｅｒｅｄ）復元ピクチャ（ｒｅｃｏｎｓｔｒｕｃｔｅｄ  ｐｉｃｔｕｒｅ）を出力する。復元ピクチャは参照ピクチャバッファー８７０に記憶され、インター予測に用いられてもよい。
【０１１３】
図７及び図８ではそれぞれのモジュールが別個の機能を果たすとしたが、本発明はこれに限定されず、一つのモジュールで２つ以上の機能を行ってもよい。例えば、図７及び図８で、イントラ予測部とインター予測部の動作は一つのモジュール（予測部）で行われてもよい。
【０１１４】
一方、図７及び図８では、一つのエンコーダ／デコーダがマルチビューに対する符号化／復号化を全て処理するとしたが、これは説明の便宜のためのものであり、エンコーダ／デコーダはビュー別に構成されてもよい。
【０１１５】
この場合、現在ビューのエンコーダ／デコーダは、他のビューの情報を用いて現在ビューの符号化／復号化を行うことができる。例えば、現在ビューの予測部（インター予測部）は、他のビューのピクセル情報又は復元されたピクチャ情報を用いて、現在ブロックに対するイントラ予測又はインター予測を行うこともできる。
【０１１６】
ここでは、ビュー間の予測だけを取り上げて説明したが、エンコーダ／デコーダは、ビュー別に構成される場合にも、一つの装置がマルチビューを処理する場合にも、他のビューの情報を用いて現在レイヤに対する符号化／復号化を行うことができる。
【０１１７】
本発明でビューに関する説明は、スケーラビリティを支援するレイヤ（ｌａｙｅｒ）に対しても同一に適用することができる。例えば、本発明でビュー（ｖｉｅｗ）はレイヤ（ｌａｙｅｒ）であってもよい。
【０１１８】
図９は、３次元ビデオコーデックに対する予測構造の一例を示す図である。説明の便宜上、図９では、３台のカメラから取得した実際映像と実際映像に対応する深さ情報マップを符号化するための予測構造を示す。
【０１１９】
図９では、３台のカメラから取得された３個の実際映像は、視点（ｖｉｅｗ）によってＴ０、Ｔ１、Ｔ２と表し、実際映像に対応する３個の深さ情報マップは、視点（ｖｉｅｗ）によってそれぞれＤ０、Ｄ１、Ｄ２と表した。ここで、Ｔ０とＤ０は視点０（Ｖｉｅｗ
０）で取得した映像であり、Ｔ１とＤ１は視点１（Ｖｉｅｗ  １）で取得した映像であり、Ｔ２とＤ２は視点２（Ｖｉｅｗ  ２）で取得した映像である。このとき、図９に示す四角形は、映像（ピクチャ）を表す。
【０１２０】
各映像（ピクチャ）は、符号化／復号化タイプによってＩピクチャ（Ｉｎｔｒａ  Ｐｉｃｔｕｒｅ）、Ｐピクチャ（Ｕｎｉ−ｐｒｅｄｉｃｔｉｏｎ  Ｐｉｃｔｕｒｅ）、Ｂピクチャ（Ｂｉ−ｐｒｅｄｉｃｔｉｏｎ  Ｐｉｃｔｕｒｅ）に区別される。これらの各ピクチャは、各ピクチャの符号化／復号化タイプによって符号化／復号化することができる。Ｉピクチャでは、インター予測無しで映像自体を符号化し、Ｐピクチャでは、単方向に存在する参照映像だけを用いてインター予測をし、Ｂピクチャでは、両方向に存在する参照映像を用いてインター予測を行うことができる。このとき、図９の矢印は、予測方向を示す。すなわち、予測方向によって実際映像とその深さ情報マップをお互い依存的に符号化／復号化することができる。
【０１２１】
インター予測によって映像の符号化／復号化を行うためには、現在ブロックの動き情報が必要である。現在ブロックの動き情報を類推する方法には、現在ブロックと隣接したブロックの動き情報を利用する方法、同じ視点内で時間的相関性を利用する方法、又は隣接した視点で視点間相関性を利用する方法があり、上述したインター予測方法は一つのピクチャで混用されてもよい。ここで、現在ブロックは、予測が行われるブロックのことをいう。動き情報は、動きベクトル、参照映像番号及び／又は予測方向（例えば、単方向予測か又は両方向予測か、時間的相関性を利用するか又は視点間相関性を利用するかなど）を意味することもできる。
【０１２２】
このとき、予測方向は、参照ピクチャ目録（Ｒｅｆｅｒｅｎｃｅ  Ｐｉｃｔｕｒｅ  Ｌｉｓｔ：ＲｅｆＰｉｃＬｉｓｔ）の使用によって、単方向予測と両方向予測とに大別できる。単方向予測は、順方向参照ピクチャ目録（ＬＩＳＴ  ０；Ｌ０）を使用する順方向予測（Ｐｒｅｄ＿Ｌ０：Ｐｒｅｄｉｃｔｉｏｎ  Ｌ０）と逆方向参照ピクチャ目録（ＬＩＳＴ  １；Ｌ１）を使用する逆方向予測（Ｐｒｅｄ＿Ｌ１：Ｐｒｅｄｉｃｔｉｏｎ  Ｌ１）とに区分される。また、両方向予測（Ｐｒｅｄ＿ＢＩ：Ｐｒｅｄｉｃｔｉｏｎ  ＢＩ）は、順方向参照ピクチャ目録（ＬＩＳＴ ０）と逆方向参照ピクチャ目録（ＬＩＳＴ １）を全て使用し、順方向予測及び逆方向予測の両方が存在することを意味することができる。
順方向参照ピクチャ目録（ＬＩＳＴ ０）を逆方向参照ピクチャ目録（ＬＩＳＴ １）に複写し、順方向予測が２つ存在する場合も両方向予測に含まれてもよい。
【０１２３】
予測方向はｐｒｅｄＦｌａｇＬ０、ｐｒｅｄＦｌａｇＬ１を用いて定義することができる。このとき、ｐｒｅｄＦｌａｇＬ０は、順方向参照ピクチャ目録（Ｌｉｓｔ０）を使用するか否かを示す指示子であり、ｐｒｅｄＦｌａｇＬ１は、逆方向参照ピクチャ目録（Ｌｉｓｔ１）を使用するか否かを示す指示子に該当する。例えば、単方向予測であると共に順方向予測である場合には、ｐｒｅｄＦｌａｇＬ０が‘１’、ｐｒｅｄＦｌａｇＬ１は‘０’になり、単方向予測であると共に逆方向予測である場合には、ｐｒｅｄＦｌａｇＬ０が‘０’、ｐｒｅｄＦｌａｇＬ１が‘１’になり、両方向予測である場合には、ｐｒｅｄＦｌａｇＬ０が‘１’、ｐｒｅｄＦｌａｇＬ１が‘１’になってもよい。
【０１２４】
図１０は、現在ブロックに対するマージ候補リスト（ｍｅｒｇｅ  ｃａｎｄｉｄａｔｅ  ｌｉｓｔ）を構成するために用いられる周辺ブロックを例示する図である。
【０１２５】
マージモード（ｍｅｒｇｅ  ｍｏｄｅ）は、インター予測を行う方法の一つであり、マージモードでは現在ブロックの動き情報（例えば、動きベクトル、参照ピクチャリスト、参照ピクチャインデックスのうち少なくとも一つ）として現在ブロックの周辺ブロックの動き情報を用いることができる。このとき、周辺ブロックの動き情報を現在ブロックの動き情報として使用することを、マージング（ｍｅｒｇｉｎｇ）、動き併合（ｍｏｔｉｏｎ  ｍｅｒｇｉｎｇ）又は併合動き（ｍｅｒｇｉｎｇ  ｍｏｔｉｏｎ）という。
【０１２６】
マージモードでは、符号化ユニット（Ｃｏｄｉｎｇ  Ｕｎｉｔ；以下、‘ＣＵ’という。）単位の併合動き（ｍｅｒｇｉｎｇ）と予測ユニット（Ｐｒｅｄｉｃｔｉｏｎ  Ｕｎｉｔ；以下、‘ＰＵ’という。）単位の併合動きが可能である。
【０１２７】
ブロック単位（例えば、ＣＵ又はＰＵ）（以下、説明の便宜のために‘ブロック’という。）で併合動きを行う場合には、ブロックパーティション（ｐａｒｔｉｔｉｏｎ）別に併合動きを行うか否かに関する情報、及び現在ブロックに隣接した周辺ブロックのうちでどのブロックと併合動きを行うかに関する情報が必要である。
【０１２８】
併合動きを行うためにマージ候補リスト(ｍｅｒｇｉｎｇ  ｃａｎｄｉｄａｔｅ  ｌｉｓｔ)を構成することができる。
【０１２９】
マージ候補リストは、動き情報のリストを意味し、マージモードが行われる前に生成することができる。ここで、マージ候補リストの動き情報は、現在ブロックに隣接した周辺ブロックの動き情報であってもよく、既にマージ候補リストに存在する動き情報を組み合わせて作った新しい動き情報であってもよい。周辺ブロックの動き情報（例えば、動きベクトル及び／又は参照ピクチャインデックス）は、周辺ブロックによって特定される或いは周辺ブロックに記憶された（周辺ブロックのデコーディングに用いられた）動き情報であってもよい。
【０１３０】
このとき、周辺ブロックは、図１０に示すように、現在ブロックと空間的（ｓｐａｔｉａｌ）に隣接して位置している周辺ブロック（ｎｅｉｇｈｂｏｒｉｎｇ  ｂｌｏｃｋ）（Ａ，Ｂ，Ｃ，Ｄ，Ｅ）と、現在ブロックと時間的（ｔｅｍｐｏｒａｌ）に対応する同一位置の候補ブロック（ｃｏ−ｌｏｃａｔｅｄ  ｂｌｏｃｋ）（Ｈ或いはＭ）を含むことができる。同一位置の候補ブロックとは、現在ブロックを含む現在ピクチャと時間的に対応する同一位置のピクチャ（ｃｏ−ｌｏｃａｔｅｄ  ｐｉｃｔｕｒｅ）内対応位置のブロックを指す。同一位置のピクチャ内Ｈブロックが可用であれば、Ｈブロックを同一位置の候補ブロックと決定し、Ｈブロックが可用でなければ、同一位置のピクチャ内Ｍブロックを同一位置の候補ブロックと決定してもよい。
【０１３１】
マージ候補リストを構成する時、周辺ブロック（Ａ，Ｂ，Ｃ，Ｄ，Ｅ）及び同一位置の候補ブロック（Ｈ或いはＭ）の動き情報を、現在ブロックのマージ候補リストを構成するマージ候補（ｍｅｒｇｅ  ｃａｎｄｉｄａｔｅ）として利用可能か否かを判断する。すなわち、現在ブロックのインター予測に利用可能なブロックの動き情報がマージ候補としてマージ候補リストに追加されてもよい。
【０１３２】
例えば、Ｘブロックに対するマージ候補リストを構成する方法として、１）まず、周辺ブロックＡを使用できる場合、周辺ブロックＡをマージ候補リストに含める。２）その後、周辺ブロックＢの動き情報が周辺ブロックＡの動き情報と同一でない場合にのみ、周辺ブロックＢをマージ候補リストに含める。３）同一の方法で、周辺ブロックＣの動き情報が周辺ブロックＢの動き情報と異なる場合にのみ、周辺ブロックＣをマージ候補リストに含め、４）周辺ブロックＤの動き情報が周辺ブロックＣの動き情報とは異なる場合にのみ、周辺ブロックＤをマージ候補リストに含める。しかも、５）周辺ブロックＥの動き情報が周辺ブロックＤの動き情報と異なる場合にのみ、周辺ブロックＥをマージ候補リストに含め、６）最後に、マージ候補リストには周辺ブロックＨ（或いはＭ）を含める。すなわち、それぞれの周辺ブロックを、Ａ→Ｂ→Ｃ→Ｄ→Ｅ→Ｈ（或いはＭ）ブロックの順でマージ候補リストに追加することができる。ここで、同一動き情報は、同一動きベクトル、同一参照ピクチャ、及び同一予測方向（単方向、両方向）を使用することを意味することができる。
【０１３３】
ここでは、周辺ブロックをマージ候補としてマージ候補リストに追加するという表現と周辺ブロックの動き情報をマージ候補としてマージ候補リストに追加するという表現を混用したが、これは、説明の便宜のためのものであり、両表現は実質的に同一である。例えば、マージ候補としての周辺ブロックは、当該ブロックの動き情報を意味しているといえる。
【０１３４】
図１１は、隣接した視点の動き情報を用いて、現在ブロックの動き情報を誘導する手順の一例を示す図である。
【０１３５】
図１１では、説明の便宜のために、一つの隣接した視点だけを用いて現在ブロックの動き情報を誘導する手順を示しているが、隣接した視点は２個以上であってもよい。
【０１３６】
図１１を参照すると、３次元ビデオシステムでは、動き情報を効率的に符号化／復号化するために、隣接した視点の動き情報を用いることができる。具体的に、図１１の現在ブロック（現在位置Ｘに対するブロック）は、現在ブロックに関する動き情報を誘導するために、隣接した視点に位置している対象ブロック（参照位置ＸＲ）を探す。このとき、隣接した視点に位置している対象ブロックは、現在ブロックに対応するブロックを意味し、現在視点における現在ピクチャと参照視点における現在ピクチャは、カメラ位置の差があるだけであるため、上述したように、変移ベクトル（Ｄｉｓｐａｒｉｔｙ  Ｖｅｃｔｏｒ；ＤＶ）を用いて、隣接した視点に位置している対象ブロックを誘導することができる。
【０１３７】
図１２は、一つの予測ユニット（Ｐｒｅｄｉｃｔｉｏｎ  Ｕｎｉｔ；ＰＵ）が複数のサブ予測ユニット（Ｓｕｂ−Ｐｒｅｄｉｃｔｉｏｎ  Ｕｎｉｔ）に分割される一例を示す図である。
【０１３８】
図１２では、６４×６４サイズを有する予測ユニット（ＰＵ）が８×８サイズのサブ予測ユニットに分割される一例を示す。図１２では、説明の便宜のために、予測ユニットが６４×６４のサイズを有する例を説明するが、予測ユニットは６４×６４サイズの他、３２×３２、１６×１６、８×８、４ｘ４などのサイズを有してもよい。３次元ビデオシステムでは、一つの予測ユニットを複数のサブ予測ユニットに分割することができる。このとき、変移ベクトルを用いた動き情報の誘導は、サブ予測ユニット単位で行われる。サブ予測ユニットは、既に設定されたサイズ（例えば、４ｘ４、８×８、１６×１６など）を有することができ、サブ予測ユニットのサイズは、符号化時に指定されてもよい。サブ予測ユニットのサイズに関する情報は、ビデオパラメータセット拡張シンタクス（Ｖｉｄｅｏ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔ（ＶＰＳ）  Ｅｘｔｅｎｓｉｏｎ  ｓｙｎｔａｘ）内に含まれてシグナルされてもよい。
【０１３９】
図１３は、参照ブロックを用いて現在ブロックの動き情報を誘導する手順の一例を示す図である。
【０１４０】
現在ブロックに対する動き情報の誘導は、参照ブロックに存在する動き情報を現在ブロックの動き情報に設定することを意味する。しかし、３次元ビデオシステムでは動き情報を効率的に符号化／復号化するために、現在視点で現在ピクチャに位置している現在ブロック（Ｘ）に対してそれぞれのサブ予測ユニット単位で動き情報を誘導することができる。
【０１４１】
すなわち、３次元ビデオシステムでは、参照ブロック（ＸＲ）のサブ予測ユニットに存在する動き情報を、現在ブロック（Ｘ）のサブ予測ユニットに関する動き情報として設定することができる。このとき、参照ブロック（ＸＲ）は、参照視点における現在ピクチャに位置している参照ブロック（ＸＲ）を意味することができ、具体的な動き情報誘導手順については後述する。
【０１４２】
図１４は、現在ブロックの動き情報を誘導するために用いられる参照ブロックの一例を示す図である。
【０１４３】
図１４によれば、参照ブロックはＰＵを意味することができ、一つの参照ブロックは総１６個のサブ予測ユニットを含むことができる。このとき、現在ブロックのそれぞれのサブ予測ユニットは、参照ブロックのサブ予測ユニットに存在する動き情報を用いて、現在ブロックのサブユニットに関する動き情報を誘導することができる。
【０１４４】
以下、図１５Ａ乃至図１５Ｅ、及び図１６Ａ乃至図１６Ｇを参照して、参照ブロックを用いて現在ブロックのサブ予測ユニットに関する動き情報を誘導する方法について具体的に説明する。
【０１４５】
図１５Ａ乃至図１５Ｅは、記憶空間に記憶された動き情報を用いて、動き情報を誘導する手順の一例を概略的に説明する図である。このとき、図１５Ａ乃至図１５Ｅで用いられる参照ブロックは、図１４の参照ブロックであってもよい。
【０１４６】
現在ブロックのサブ予測ユニットが参照ブロックのサブ予測ユニットに関する動き情報を取り込む時、参照ブロックの全サブ予測ユニットが動き情報を有しているわけではない。すなわち、動き情報を取り込むことのできない参照ブロックのサブ予測ユニットも存在しうる。したがって、動き情報を取り込むことのできないサブ予測ユニットが存在する場合には、現在ブロックのサブ予測ユニットが動き情報を誘導できないことを補完するために、現在参照されているサブ予測ユニットの前又は後に存在するサブ予測ユニットの動き情報を用いることもできる。例えば、参照ブロック内で使用可能なサブ予測ユニットの動き情報をあらかじめ記憶しておき、動き情報誘導が不可能な参照ブロックのサブ予測ユニットがある場合には、あらかじめ記憶しておいた動き情報を現在ブロックのサブ予測ユニットに挿入し、現在ブロックに対する動き情報の誘導を行うことができる。
【０１４７】
以下、上述した方法に関する円滑な理解を助けるために、参照ブロックの一番目のサブ予測ユニットは動き情報を有しており、参照ブロックの二番目のサブ予測ユニット以降に動き情報が存在しないサブ予測ユニットが発生する場合、現在ブロックのサブユニットに関する動き情報を誘導する方法の一例を、図面を参照して段階別に説明する。
【０１４８】
図１５Ａは、現在ブロックのサブ予測ユニット、及び記憶空間の初期状態を示す図である。
【０１４９】
図１５Ａを参照すると、Ｒｅｆは参照ブロックを意味し、Ｒｅｆ０，１，２，３は、参照ブロック内の各サブ予測ユニットを意味する。すなわち、Ｒｅｆ０は参照ブロックのサブ予測ユニット０（参照ブロックの一番目のサブ予測ユニット）、Ｒｅｆ１は参照ブロックのサブ予測ユニット１（参照ブロックの二番目のサブ予測ユニット）、Ｒｅｆ２は、参照ブロックのサブ予測ユニット２（参照ブロックの三番目のサブ予測ユニット）、Ｒｅｆ３は参照ブロックのサブ予測ユニット３（参照ブロックの四番目のサブ予測ユニット）を意味する。Ｃｕｒは、現在ブロックを意味し、Ｃｕｒ０，１，２，３は、現在ブロック内の各サブ予測ユニットを意味する。すなわち、Ｃｕｒ０は現在ブロックのサブ予測ユニット０（現在ブロックの一番目のサブ予測ユニット）、Ｃｕｒ１は現在ブロックのサブ予測ユニット１（現在ブロックの二番目のサブ予測ユニット）、Ｃｕｒ２は現在ブロックのサブ予測ユニット２（現在ブロックの三番目のサブ予測ユニット）、Ｃｕｒ３は現在ブロックのサブ予測ユニット３（現在ブロックの四番目のサブ予測ユニット）を意味する。
【０１５０】
このとき、図１５ＡのＲｅｆ２内の‘Ｘ’は、参照ブロックのサブ予測ユニット２を用いては動き情報の誘導が不可能であるということを意味する。
【０１５１】
図１５Ｂは、参照ブロックのサブ予測ユニットから動き情報を誘導する第１段階を示す。
【０１５２】
図１５Ｂを参照すると、現在ブロックのサブ予測ユニット０は、参照ブロックのサブ予測ユニット０から動き情報を誘導する。この時、参照ブロックのサブ予測ユニット０から動き情報の誘導ができるため、参照ブロックのサブ予測ユニット０の動き情報を記憶空間に記憶する。このとき、記憶空間に記憶された動き情報を動き情報０と定義することができ、動き情報０は、動き情報の誘導が不可能な参照ブロックのサブ予測ユニットが発生する場合に用いられる。
【０１５３】
図１５Ｃは、参照ブロックのサブ予測ユニットから動き情報を誘導する第２段階を示す。
【０１５４】
図１５Ｃを参照すると、現在ブロックのサブ予測ユニット１は、参照ブロックのサブ予測ユニット１から動き情報を誘導する。この時、参照ブロックのサブ予測ユニット１から動き情報の誘導ができるため、参照ブロックのサブ予測ユニット１の動き情報を記憶空間に記憶する。このとき、記憶されるサブ予測ユニット１の動き情報を動き情報１と定義することができ、動き情報１を動き情報０の代わりに記憶空間に記憶することができる。動き情報１は、動き情報の誘導が不可能な参照ブロックのサブ予測ユニットが発生する場合に用いることができる。
【０１５５】
図１５Ｄは、参照ブロックのサブ予測ユニットから動き情報を誘導する第３段階を示す。
【０１５６】
図１５Ｄを参照すると、現在ブロックのサブ予測ユニット２は、参照ブロックのサブ予測ユニット２から動き情報の誘導を試みる。しかし、参照ブロックのサブ予測ユニット２は動き情報の誘導が不可能なサブ予測ユニットであるため、現在ブロックのサブ予測ユニット２は、記憶空間に記憶された動き情報を用いて、現在ブロックのサブ予測ユニット２の動き情報を誘導する。この時、記憶空間に記憶された動き情報は動き情報１であってもよい。
【０１５７】
図１５Ｅは、参照ブロックのサブ予測ユニットから動き情報を誘導する第４段階を示す。
【０１５８】
図１５Ｅを参照すると、現在ブロックのサブ予測ユニット３は参照ブロックのサブ予測ユニット３から動き情報を誘導する。この時、参照ブロックのサブ予測ユニット３から動き情報の誘導ができるため、参照ブロックのサブ予測ユニット３の動き情報を記憶空間に記憶する。このとき、記憶されるサブ予測ユニット３の動き情報を動き情報３と定義することができ、動き情報３を動き情報１の代わりに記憶空間に記憶することができる。動き情報３は、動き情報の誘導が不可能な参照ブロックのサブ予測ユニットが発生する場合に用いることができる。
【０１５９】
図１６Ａ乃至図１６Ｇは、記憶空間に記憶された動き情報を用いて、動き情報を誘導する手順の他の例を概略的に説明する図である。
【０１６０】
図１６Ａ乃至図１６Ｇでは、記憶された動き情報がない状態で、動き情報の誘導が不可能な参照ブロックのサブ予測ユニットが登場し、その後、動き情報誘導が可能な参照ブロックのサブ予測ユニットが登場する場合の動き情報誘導手順を例示する。
【０１６１】
図１６Ａは、現在ブロックのサブ予測ユニット、及び記憶空間の初期状態を示す図である。
【０１６２】
図１６Ａを参照すると、Ｒｅｆは参照ブロックを意味し、Ｒｅｆ０，１，２，３は、参照ブロック内の各サブ予測ユニットを意味する。すなわち、Ｒｅｆ０は参照ブロックのサブ予測ユニット０、Ｒｅｆ１は参照ブロックのサブ予測ユニット１、Ｒｅｆ２は参照ブロックのサブ予測ユニット２、Ｒｅｆ３は参照ブロックのサブ予測ユニット３を意味する。
Ｃｕｒは現在ブロックを意味し、Ｃｕｒ０，１，２，３は、現在ブロック内の各サブ予測ユニットを意味する。すなわち、Ｃｕｒ０は現在ブロックのサブ予測ユニット０、Ｃｕｒ１は現在ブロックのサブ予測ユニット１、Ｃｕｒ２は現在ブロックのサブ予測ユニット２、Ｃｕｒ３は現在ブロックのサブ予測ユニット３を意味する。このとき、図１６ＡのＲｅｆ０及び１内の‘Ｘ’は、参照ブロックのサブ予測ユニット０及び参照ブロックのサブ予測ユニット１を用いては動き情報の誘導が不可能であるということを表す。
【０１６３】
図１６Ｂは、参照ブロックのサブ予測ユニットから動き情報を誘導する第１段階を示す。
【０１６４】
図１６Ｂを参照すると、現在ブロックのサブ予測ユニット０は参照ブロックのサブ予測ユニット０から動き情報の誘導を試みる。しかし、上述したように、参照ブロックのサブ予測ユニット０からは動き情報の誘導が不可能であり、記憶空間に記憶された動き情報もないため、第２段階に進む。
【０１６５】
図１６Ｃは、参照ブロックのサブ予測ユニットから動き情報を誘導する第２段階を示す。
【０１６６】
図１６Ｃを参照すると、現在ブロックのサブ予測ユニット１は参照ブロックのサブ予測ユニット１から動き情報の誘導を試みる。しかし、上述したように、参照ブロックのサブ予測ユニット１からも動き情報の誘導が不可能であり、記憶空間に記憶された動き情報もないため、第３段階に進む。
【０１６７】
図１６Ｄは、参照ブロックのサブ予測ユニットから動き情報を誘導する第３段階を示す。
【０１６８】
図１６Ｄを参照すると、現在ブロックのサブ予測ユニット２は、参照ブロックのサブ予測ユニット２から動き情報を誘導する。この時、参照ブロックのサブ予測ユニット２から動き情報の誘導ができるため、参照ブロックのサブ予測ユニット２の動き情報を記憶空間に記憶する。このとき、記憶空間に記憶された動き情報を動き情報２と定義することができ、動き情報２は、動き情報の誘導が不可能な参照ブロックのサブ予測ユニットが発生する場合に用いられる。
【０１６９】
図１６Ｅは、参照ブロックのサブ予測ユニットから動き情報を誘導する第４段階を示す。
【０１７０】
図１６Ｅを参照すると、現在ブロックのサブ予測ユニット０は、記憶空間に記憶された動き情報２を用いて、現在ブロックに対するサブ予測ユニット０の動き情報を誘導する。
【０１７１】
図１６Ｆは、参照ブロックのサブ予測ユニットから動き情報を誘導する第５段階を示す。
【０１７２】
図１６Ｆを参照すると、現在ブロックのサブ予測ユニット１は、記憶空間に記憶された動き情報２を用いて、現在ブロックに対するサブ予測ユニット０の動き情報を誘導する。
【０１７３】
図１６Ｇは、参照ブロックのサブ予測ユニットから動き情報を誘導する第６段階を示す。
【０１７４】
図１６Ｇを参照すると、現在ブロックのサブ予測ユニット３は、参照ブロックのサブ予測ユニット３から動き情報を誘導する。この時、参照ブロックのサブ予測ユニット３から動き情報の誘導ができるため、参照ブロックのサブ予測ユニット３の動き情報を記憶空間に記憶する。このとき、記憶されるサブ予測ユニット３の動き情報を動き情報３と定義することができ、動き情報３を動き情報２の代わりに記憶空間に記憶することができる。動き情報３は、動き情報の誘導が不可能な参照ブロックのサブ予測ユニットが発生する場合に用いることができる。
【０１７５】
図１７は、一例に係る、参照ブロックのサブ予測ユニットを用いて現在ブロックに対するサブ予測ユニットの動き情報を誘導する方法を示すフローチャートである。図１７の手順における動作は、エンコーダ及び／又はデコーダで行われてもよく、エンコーダ及び／又はデコーダ内のインター予測部、例えば、図７のインター予測部７２０又は図８のインター予測部８５０で行われてもよい。
【０１７６】
まず、参照ブロックのサブ予測ユニットに動き情報が存在する場合の手順を、図１７を参照して説明すると、インター予測部は、参照ブロックのサブ予測ユニットに動き情報が存在するか否か判断する（Ｓ１７００）。
【０１７７】
インター予測部は、参照ブロックのサブ予測ユニットに動き情報が存在する場合、参照ブロックのサブ予測ユニットに存在する動き情報を、動き情報誘導対象である現在ブロックのサブ予測ユニットに挿入する（Ｓ１７１０）。
【０１７８】
その後、インター予測部は、記憶空間に動き情報が記憶されているか否かを判断する（Ｓ１７２０）。記憶空間に記憶されている動き情報がある場合には、段階Ｓ１７５０を行う。このとき、記憶空間に関する具体的な説明は、上述したとおりであり、動き情報も上述のとおりである。
【０１７９】
仮に、記憶空間に記憶されている動き情報がないと、インター予測部は、動き情報誘導対象である現在ブロックのサブ予測ユニットが現在ブロックの一番目のサブ予測ユニットであるか否か判断する（Ｓ１７３０）。動き情報誘導対象である現在ブロックのサブ予測ユニットが現在ブロックの一番目のサブ予測ユニットに該当する場合に、インター予測部は段階Ｓ１７５０を行う。
【０１８０】
段階Ｓ１７３０で、現在ブロックのサブ予測ユニットが一番目のサブ予測ユニットでない場合、インター予測部は、現在ブロックの一番目のサブ予測ユニットから動き情報誘導対象である現在ブロックのサブ予測ユニットの直前までに存在するサブ予測ユニットに、参照ブロックのサブ予測ユニットに存在する動き情報を挿入する。例えば、動き情報誘導対象である現在ブロックのサブ予測ユニットが三番目のサブ予測ユニットであれば、インター予測部は、参照ブロックのサブ予測ユニットに関する動き情報を、現在ブロックの一番目のサブ予測ユニットから二番目のサブ予測ユニットまでに挿入する。
【０１８１】
インター予測部は、記憶空間に、参照ブロックのサブ予測ユニットに関する動き情報を記憶し、更新する（Ｓ１７５０）。このとき、動き情報の記憶及び更新に関する具体的な内容は、上述したとおりである。
【０１８２】
インター予測部は、動き情報誘導対象である参照ブロックのサブ予測ユニットが参照ブロックにおける最後のサブ予測ユニットであるか否か判断する（Ｓ１７９０）。動き情報誘導対象である参照ブロックのサブ予測ユニットが参照ブロックにおける最後のサブ予測ユニットである場合には、動き情報誘導手順を終了する。仮に、動き情報誘導対象である参照ブロックのサブ予測ユニットが参照ブロックにおける最後のサブ予測ユニットでないと、インター予測部は、参照ブロックの次のサブ予測ユニットに処理対象を移動する（Ｓ１７８０）。その後、インター予測部は段階Ｓ１７００乃至Ｓ１７９０の手順を再び行う。
【０１８３】
仮に、参照ブロックのサブ予測ユニットに動き情報が存在しない場合には、次のような手順を行う。
【０１８４】
インター予測部は、参照ブロックのサブ予測ユニットに動き情報が存在するか否か判断する（Ｓ１７００）。
【０１８５】
仮に参照ブロックのサブ予測ユニットに動き情報が存在しないと、インター予測部は、記憶空間に記憶された動き情報があるか否か判断する（Ｓ１７７０）。仮に記憶空間に記憶された動き情報がないと、インター予測部は段階Ｓ１７９０を行う。
【０１８６】
記憶空間に記憶された動き情報がある場合、インター予測部は、動き情報誘導対象であるサブ予測ユニットに、記憶空間に記憶された動き情報を挿入する（Ｓ１７５０）。
【０１８７】
インター予測部は、上述した手順を行った後、動き情報誘導対象である参照ブロックのサブ予測ユニットが参照ブロックにおける最後のサブ予測ユニットであるか否か判断する（Ｓ１７９０）。動き情報誘導対象である参照ブロックのサブ予測ユニットが参照ブロックにおける最後のサブ予測ユニットである場合には、動き情報誘導手順を終了する。仮に、動き情報誘導対象である参照ブロックのサブ予測ユニットが参照ブロックにおける最後のサブ予測ユニットでないと、インター予測部は、参照ブロックの次のサブ予測ユニットに処理対象を移動する（Ｓ１７８０）。その後、インター予測部は、段階Ｓ１７００乃至Ｓ１７９０の手順を行う。
【０１８８】
その後、上述の手順によって誘導された現在ブロックに関する動き情報に基づいて、インター予測部は、現在ブロックに対する予測サンプルを誘導する。予測サンプルは、上述した予測信号を意味することができ、上述したように、予測信号は、原信号とレジデュアル信号との差を意味することができる。
【０１８９】
上述した現在ブロックに対するサブ予測ユニットの動き情報を誘導する手順を３Ｄビデオに具体的に適用すると、下記の表１のとおりである。上述したように、表１の動作は、エンコーダ／デコーダ或いはエンコーダ／デコーダのインター予測部で行うことができる。
【０１９０】
【表１−１】
2020039157.tif 000003
【０１９１】
【表１−２】
2020039157.tif 000004
【０１９２】
【表１−３】
2020039157.tif 000005
【０１９３】
【表１−４】
2020039157.tif 000006
【０１９４】
【表１−５】
2020039157.tif 000007
【０１９５】
表１を具体的に説明すると、下記のとおりである。
【０１９６】
表１を参照すると、インター予測部には、現在予測ブロックの左上端の位置、現在予測ブロックの幅、現在予測ブロックの高さ、参照視点インデックス、及び変移ベクトルが入力される。このとき、現在予測ブロックの左上端の位置は、（ｘＰｂ，ｙＰｂ）と表示することができ、‘ｘＰｂ’は現在予測ブロックのｘ軸座標を、‘ｙＰｂ’は現在予測ブロックのｙ軸座標を意味することができる。現在予測ブロックの幅は‘ｎＰｂＷ’と表示することができ、現在予測ブロックの高さは‘ｎＰｂＨ’と表示することができる。参照視点インデックスは‘ｒｅｆＶｉｅｗＩｄｘ’と表示することができ、変移ベクトルは‘ｍｖＤｉｓｐ’と表示することができる。このとき、インター予測部は、上述したビデオエンコーダ／デコーダのインター予測部に相応してもよい。
【０１９７】
また、図１７を参照すると、参照ブロックのサブ予測ユニットを用いて、現在ブロックに対するサブ予測ユニットの動き情報を誘導する手順を終えた場合、インター予測部では、時間的視点間動き候補（ｔｅｍｐｏｒａｌ  ｉｎｔｅｒ−ｖｉｅｗ  ｍｏｔｉｏｎ  ｃａｎｄｉｄａｔｅ）が利用可能か否かを判断するフラグと、時間的視点間動きベクトル候補（ｔｅｍｐｏｒａｌ  ｉｎｔｅｒ−ｖｉｅｗ  ｍｏｔｉｏｎ  ｖｅｃｔｏｒ  ｃａｎｄｉｄａｔｅ）、参照ピクチャリストに存在する参照ピクチャを指定する参照インデックスを出力する。このとき、時間的視点間動き候補が利用可能か否かを判断するフラグは、‘ａｖａｉｌａｂｌｅＦｌａｇＬＸＩｎｔｅｒＶｉｅｗ’と定義することができ、時間的視点間動きベクトル候補は‘ｍｖＬＸＩｎｔｅｒＶｉｅｗ’と定義することができる。また、参照ピクチャリストは、‘ＲｅｆＰｉｃＬｉｓｔＬＸ’と表示することができ、参照ピクチャリストに存在する参照ピクチャを指定する参照インデックスは、‘ｒｅｆＩｄｘＬＸＩｎｔｅｒＶｉｅｗ’と定義することができる。‘ａｖａｉｌａｂｌｅＦｌａｇＬＸＩｎｔｅｒＶｉｅｗ’、‘ｍｖＬＸＩｎｔｅｒＶｉｅｗ’、‘ＲｅｆＰｉｃＬｉｓｔＬＸ’、及び‘ｒｅｆＩｄｘＬＸＩｎｔｅｒＶｉｅｗ’に存在する‘ＬＸ’は、参照ピクチャリスト０（Ｌｉｓｔ  ０；Ｌ０）又は参照ピクチャリスト１（Ｌｉｓｔ  １；Ｌ１）であってもよい。
【０１９８】
以下、インター予測部で上述の入力から上述の出力を導出するための、参照ブロックのサブ予測ユニットを用いて現在ブロックに対するサブ予測ユニットの動き情報を誘導する方法を具体的に説明する。
【０１９９】
まず、インター予測部は、参照ブロックのサブ予測ユニットを用いて現在ブロックに対するサブ予測ユニットの動き情報を誘導する前に、初期化を行う。このとき、ａｖａｉｌａｂｌｅＦｌａｇＬＸＩｎｔｅｒＶｉｅｗは０に設定され、ｍｖＬＸＩｎｔｅｒＶｉｅｗは（０，０）に設定され、ｒｅｆＩｄｘＬＸＩｎｔｅｒＶｉｅｗは−１に設定される。インター予測部で初期化を行う時、サブ予測ユニットの幅とサブ予測ユニットの高さも初期化される。このとき、サブ予測ユニットの幅は、‘ｎＳｂＷ’と表示することができ、サブ予測ユニットの高さは、‘ｎＳｂＨ’と表示することができる。変数ｎＳｂＷとｎＳｂＨの具体的な初期化方法は、下記の式１のとおりである。
【数１】
2020039157.tif 000008
【０２００】
ここで、ＳｕｂＰｂＳｉｚｅは、ＶＰＳ（ｖｉｄｅｏ  ｐａｒｅａｍｅｔｅｒ  ｓｅｔ）で指定したサブ予測ユニットの高さ、幅のサイズを意味し、ｎｕｈ＿ｌａｙｅｒ＿ｉｄは、レイヤを識別（例えば、どの参照視点であるかを識別）するインデックスを意味する。Ｍｉｎ（）は、入力される変数のうち、小さい値を有する変数を出力するためのものであり、下記の式２のように定義することができる。
【数２】
2020039157.tif 000009
【０２０１】
インター予測部では、上述した変数の他、視点間参照ピクチャ内の（ｘＲｅｆ，ｙＲｅｆ）位置における輝度（ｌｕｍａ）予測ブロックと現在ブロックのサブ予測ユニットを識別する情報、及び記憶空間に記憶された動き情報の使用が可能か否かを識別する情報も初期化されてもよい。
【０２０２】
このとき、視点間参照ピクチャ（ｉｎｔｅｒ−ｖｉｅｗ  ｒｅｆｅｒｅｎｃｅ  ｐｉｃｔｕｒｅ）内の（ｘＲｅｆ，ｙＲｅｆ）位置における輝度予測ブロックは、現在アクセスユニットにおいて参照ビューインデックスの値と同じビューインデックスを有するピクチャ内ブロックとして設定される。このとき、視点間参照ピクチャ内の（ｘＲｅｆ，ｙＲｅｆ）位置における輝度予測ブロックは‘ｉｖＲｅｆＰｉｃ’と定義され、アクセスユニットは、映像が符号化／復号化される単位を意味する。アクセスユニットは、同じ出力順序（Ｐｉｃｔｕｒｅ  Ｏｒｄｅｒ  Ｃｏｕｎｔ：ＰＯＣ）を有する別個の視点の映像を含む。例えば、視点が３個であれば、一つのアクセスユニットは、一番目の視点の一般映像及び／又は深さ情報映像、二番目の視点の一般映像及び／又は深さ情報映像、三番目の視点の一般映像及び／又は深さ情報映像を含むことができる。参照ビューインデックスは、‘ｒｅｆＶｉｅｗＩｄｘ’と定義し、ビューインデックスは、‘ＶｉｅｗＩｄｘ’と定義することができる。このとき、ＶｉｅｗＩｄｘは現在ピクチャの視点を意味してもよい。
【０２０３】
このとき、初期化のために現在ブロックのサブ予測ユニットを識別する情報は０に設定され、現在ブロックのサブ予測ユニットを識別する情報は‘ｃｕｒＳｕｂＢｌｏｃｋＩｄｘ’と定義することができる。記憶空間に記憶された動き情報の使用が可能か否かを識別する情報も０に設定されて初期化され、記憶空間に記憶された動き情報の使用が可能か否かを識別する情報は‘ｌａｓｔＡｖａｌａｂｌｅＦｌａｇ’に設定されてもよい。
【０２０４】
上述した変数の初期化を行った後、インター予測部では０から（ｎＰｂＨ／ｎＳｂＨ−１）までの範囲を有するｙＢｌｋと、０から（ｎＰｂＷ／ｎＳｂＷ−１）までの範囲を有するｘＢｌｋに対しては下記のような手順を行う。このとき、ｘＢｌｋはブロックのｘ座標を意味し、ｙＢｌｋはブロックのｙ座標を意味する。
【０２０５】
まず、インター予測部は、参照ブロックのサブ予測ユニットから動き情報が予測されるか否かを識別する情報、サブ予測ユニット予測フラグ、サブ予測ユニットの動きベクトル、及びサブ予測ユニットの参照インデックスを初期化する。具体的に、参照ブロックのサブ予測ユニットから動き情報が予測されるか否かを識別する情報は０に設定され、このとき、参照ブロックのサブ予測ユニットから動き情報が予測されるか否かを識別する情報は、‘ｃｕｒＡｖａｉｌａｂｌｅＦｌａｇ’と定義することができる。また、サブ予測ユニット予測フラグは０に設定され、このとき、サブ予測ユニット予測フラグは、‘ｓｐＰｒｅｄＦｌａｇＬ１’と定義されてもよく、ブロックの座標を表現するために‘ｓｐＰｒｅｄＦｌａｇＬ１［ｘＢｌｋ］［ｙＢｌｋ］’と定義されてもよい。サブ予測ユニットの動きベクトルは（０，０）に設定され、サブ予測ユニットの動きベクトルは‘ｓｐＭｖＬＸ’と定義することができる。サブ予測ユニットの参照インデックスは−１に設定され、このとき、サブ予測ユニットの参照インデックスは、‘ｓｐＲｅｆＩｄｘＬＸ’と定義されてもよく、ブロックの座標を表現するために‘ｓｐＲｅｆＩｄｘＬＸ［ｘＢｌｋ］［ｙＢｌｋ］’と定義されてもよい。
【０２０６】
参照ブロックの位置（ｘＲｅｆ，ｙＲｅｆ）は、下記の式３のように設定することができる。
【数３】
2020039157.tif 000010
【０２０７】
ここで、ｘＲｅｆは、参照ブロックの位置に対するｘ座標を意味し、ｙＲｅｆは、参照ブロックの位置に対するｙ座標を意味する。ＰｉｃＷｉｄｔｈＩｎＳａｍｐｌｅｓＬは、現在ピクチャで幅を意味し、ＰｉｃＨｅｉｇｈｔＩｎＳａｍｐｌｅｓＬは、現在ピクチャで高さを意味する。また、Ｃｌｉｐ３（）は、下記の式４のように定義することができる。
【数４】
2020039157.tif 000011
【０２０８】
視点間参照ブロックがイントラモードで符号化されていない場合、０から１までの範囲を有するＸに対して下記の手順を行う。視点間参照ブロックは、ｉｖＲｅｆＰｉｃが示す視点間参照ピクチャ内の（ｘＲｅｆ，ｙＲｅｆ）位置における輝度予測ブロックを表し、視点間参照ブロックは、‘ｉｖＲｅｆＰｂ’と定義することができる。すなわち、変数ｉｖＲｅｆＰｂは、ｉｖＲｅｆＰｉｃが示す視点間参照ピクチャ内の（ｘＲｅｆ，ｙＲｅｆ）位置における輝度予測ブロックを表し、ｉｖＲｅｆＰｉｃは、視点間参照ピクチャを意味する。ｉｖＲｅｆＰｂが示す参照ブロックの左上端の位置は（ｘＩｖＲｅｆＰｂ，ｙＩｖＲｅｆＰｂ）に設定されてもよい。
【０２０９】
まず、Ｘが０であるか、又は現在スライスがＢスライスである場合には、Ｙ（ＹはＸから（１−Ｘ）までの範囲を有する。）に対して次のようにそれぞれの変数を再設定する。
ｒｅｆＰｉｃＬｉｓｔＬＹＩｖＲｅｆは、ｉｖＲｅｆＰｉｃが示すピクチャ内のＲｅｆＰｉｃＬｉｓｔＬＹに設定され、このとき、ＲｅｆＰｉｃＬｉｓｔＬＹは参照ピクチャリストを意味する。ｐｒｅｄＦｌａｇＬＹＩｖＲｅｆ［ｘ］［ｙ］は、ｉｖＲｅｆＰｉｃが示すピクチャ内のＰｒｅｄＦｌａｇＬＹ［ｘ］［ｙ］に設定され、このとき、ＰｒｅｄＦｌａｇＬＹは、参照ピクチャリストを示す識別子を意味する。ｍｖＬＹＩｖＲｅｆ［ｘ］［ｙ］は、ｉｖＲｅｆＰｉｃが示すピクチャ内のＭｖＬＹ［ｘ］［ｙ］に設定され、このとき、ＭｖＬＹは動きベクトルを意味する。同様に、ｒｅｆＩｄｘＬＹＩｖＲｅｆ［ｘ］［ｙ］は、ｉｖＲｅｆＰｉｃが示すピクチャ内のＲｅｆＩｄｘＬＹ［ｘ］［ｙ］に設定され、このとき、ＲｅｆＩｄｘＬＹは参照インデックスを意味する。
【０２１０】
ここで、ｐｒｅｄＦｌａｇＬＹＩｖＲｅｆ［ｘＩｖＲｅｆＰｂ］［ｙＩｖＲｅｆＰｂ］が１の値を有する場合、０からｎｕｍ＿ｒｅｆ＿ｉｄｘ＿ｌＸ＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１（参照ピクチャリスト内に存在する参照ピクチャの個数）までの範囲を有するｉに対しては下記の式５を適用することができる。
【数５】
2020039157.tif 000012
【０２１１】
一方、表１を参照すると、ｃｕｒＡｖａｉｌａｂｌｅＦｌａｇが１である場合と０である場合とに区別してそれぞれ下記のような手順を適用する。
【０２１２】
まず、ｃｕｒＡｖａｉｌａｂｌｅＦｌａｇが１であれば、インター予測部では下記のような手順を行う。
１．ｌａｓｔＡｖａｉｌａｂｌｅＦｌａｇが０であれば、０から１までの範囲を有するＸに対して下記の式６を適用することができる。
【数６】
2020039157.tif 000013
ｌａｓｔＡｖａｉｌａｂｌｅＦｌａｇが０であり、ｃｕｒＳｕｂＢｌｏｃｋＩｄｘが０よりも大きいとき、０から（ｃｕｒＳｕｂＢｌｏｃｋＩｄｘ−１）までの範囲を有するｋに対して、変数ｉとｊは、下記の式７が適用されてもよい。
【数７】
2020039157.tif 000014
このとき、０から１までの範囲を有するＸに対しては下記の式８が適用される。
【数８】
2020039157.tif 000015
２．上述した過程の後、インター予測部では変数ｌａｓｔＡｖａｉｌａｂｌｅＦｌａｇに１を代入する。
３．その後、インター予測部では変数ｘＬａｓｔＡｖａｉｌとｙＬａｓｔＡｖａｉｌにそれぞれｘＢｌｋとｙＢｌｋを記憶させる。
仮に、ｃｕｒＡｖａｉｌａｂｌｅＦｌａｇが１であり、ｌａｓｔＡｖａｉｌａｂｌｅＦｌａｇが１であれば、インター予測部では、０から１までの範囲を有するＸに対して下記の式９を適用する。
【数９】
2020039157.tif 000016
【０２１３】
最後に、上述の過程を完了すると、変数ｃｕｒＳｕｂＢｌｏｃｋＩｄｘはｃｕｒＳｕｂＢｌｏｃｋＩｄｘ＋１に設定される。
【０２１４】
図１７に示した、現在ブロックに対するサブ予測ユニットの動き情報を誘導する方法は、参照ブロック内のサブ予測ユニットから動き情報を誘導できない場合、以前（又は以降）に参照した参照ブロックのサブ予測ユニットに関する動き情報を用いる。したがって、図１７の動き情報誘導方法では他の参照ブロックのサブ予測ユニットを必ず参照しなければならず、図１７の動き情報誘導方法は依存性を有することになる。依存性を有する動き情報誘導方法は、並列的な設計に脆弱な構造を有する。依存性を有する動き情報誘導方法が並列的な設計に脆弱であるという点を、図１８を用いて具体的に説明する。
【０２１５】
図１８には、参照ブロックのサブ予測ユニットを用いて現在ブロックのサブ予測ユニットの情報を並列的に誘導する手順の一例を示す。
【０２１６】
図１８を参照すると、Ｒｅｆは参照ブロックを意味し、このとき、Ｒｅｆ０，１，２，３，４，５，６，７はそれぞれ、参照ブロックのサブ予測ユニット０，１，２，３，４，５，６，７を意味する。Ｃｕｒは現在ブロックを意味し、このとき、Ｃｕｒ０，１，２，３，４，５，６，７はそれぞれ、現在ブロックのサブ予測ユニット０，１，２，３，４，５，６，７を意味する。Ｒｅｆ２，３，４，５内のＸは、参照ブロックのサブ予測ユニット２，３，４，５のそれぞれを動き情報誘導時に用いることができないということを意味する。
【０２１７】
図１８に係る実施例として、インター予測部では、動き情報の誘導が不可能なサブ予測ユニットから動き情報を誘導するために、上述したように、動き情報誘導が可能なサブ予測ユニットを検出する。このため、インター予測部では現在ブロックに対するそれぞれのサブ予測ユニット別に、独立して動き情報を誘導することが不可能であり、上述した手順による動き情報誘導は並列化し難いという問題点がある。
【０２１８】
図１９には、参照ブロック内で使用可能なサブ予測ユニットが右下端に位置している場合、使用可能なサブ予測ユニットを探索する手順の一例を示す。
【０２１９】
図１９を参照すると、各四角形はサブ予測ユニットを意味し、太い実線で表した四角形は、動き情報誘導時に使用可能なサブ予測ユニットを意味し、細い実線で表した四角形は、動き情報誘導時に利用不可能なサブ予測ユニットを意味する。また、点線で表した矢印は、動き情報を探索する順序を示す。
【０２２０】
図１９に示すように、参照ブロック内で動き情報を誘導できるサブ予測ユニットが右下端にのみ位置している場合には、参照ブロック内の左上端から、点線の矢印に沿って順に、動き情報誘導が可能なサブ予測ユニットを探索しなければならない。普通の場合、どの参照ブロックのどのサブ予測ユニットが動き情報誘導に利用可能かを知っていないため、参照ブロックの一番目のサブ予測ユニットから順次に、サブ予測ユニットが動き情報誘導に利用可能か否かを探索するわけである。
【０２２１】
しかし、図１９に示す動き情報の誘導は、使用可能なサブ予測ユニットを探すために、参照ブロックに存在する全サブ予測ユニットを検査しているため、頻繁なメモリの接近を招く。このとき、参照ブロックのサブ予測ユニットのうち、動き情報を有するサブ予測ユニットが少ない場合には、無駄にサブ予測ユニットを探索することになってしまう。特に、参照ブロックの全サブ予測ユニットが動き情報誘導に利用不可能な場合には、使用可能な参照ブロックのサブ予測ユニットを探索する手順にはなんの利得もなく、不要なメモリ接近だけをきたす結果となる。ここで、動き情報がないということは、現在ブロックが隣接フレーム内の参照ブロックから類似の領域を探索できなかったということを意味する。
【０２２２】
したがって、参照ブロック内に動き情報を有するサブ予測ユニットが少ないか、動き情報を有するサブ予測ユニットが全くない場合には、イントラ予測を用いて現在ブロックをより効率的に符号化／復号化することができる。すなわち、参照ブロック内に動き情報を有するサブ予測ユニットが少ないか、又は動き情報を有するサブ予測ユニットが全くない場合には、現在ブロックの周辺ピクセルから類似の領域を探して、現在ブロックの符号化／復号化を行うことがより一層効率的である。
【０２２３】
図２０は、サブ予測ユニット単位で動き情報を誘導するためにかかる時間を概略的に示す図である。
【０２２４】
図２０によれば、一つのサブ予測ユニット内の動き情報を誘導するためにかかる時間がＴであり、参照ブロック内のサブ予測ユニットの個数がＮであれば、参照ブロック内の全動き情報を誘導するためにかかる時間はＮ×Ｔとなる。上述した動き情報誘導方法は、データの依存性、及び頻繁なメモリ接近という問題を招く。データの依存性を有する動き情報誘導方法では各サブ予測ユニットの動き情報を独立して誘導することができず、よって、一つのサブ予測ユニットに関する動き情報を誘導するためには、他のサブ予測ユニットに関する動き情報が誘導されることを待たなければならない。このため、データの依存性を有する動き情報誘導方法では符号化／復号化遅延時間が発生する。
【０２２５】
結果的に、上述した動き情報誘導方法では、同時に動き情報を誘導するデータ並列化の効果を得ることができなく、上述した動き情報誘導方法の設計構造上で発生する頻繁なメモリ接近によって、メモリ使用効率が低下するという問題点がある。
【０２２６】
本発明では、上述した問題点を解決するために、動き情報誘導時に依存性を除去する装置及び方法を提案する。図２１には、本発明が適用されるインター予測部の構造の一例を示し、図２２乃至図２６には、本発明が適用される動き情報誘導方法の実施例を具体的に示す。
【０２２７】
図２１は、本発明が適用されるインター予測部２１００の構造を示すブロック図である。
【０２２８】
図２１を参照すると、インター予測部２１００は、記憶部２１１０及び誘導部２１２０を含むことができる。ここで、インター予測部２１００は、上述した３次元ビデオエンコーダにおけるインター予測部７１０又は３次元ビデオデコーダにおけるインター予測部８５０を意味することができる。また、図２１のインター予測部２１００は、上述した３次元ビデオ符号化／復号化手順に適用されてもよい。
【０２２９】
記憶部２１１０は、任意の動き情報を指定して、任意の動き情報を記憶空間に記憶する。記憶部２１１０に記憶される任意の動き情報を求めるために、参照ブロックの任意の位置に存在する動き情報を用いることができる。この時、任意の位置は、参照ブロックの中央を意味してもよく、参照ブロックの中央を含む（サブ）予測ユニットを意味してもよい。また、記憶部２１１０に記憶された任意の動き情報は、任意の初期値に設定されてもよい。仮に、任意の動き情報を記憶空間に記憶させることができない場合には、サブ予測ユニット単位で動き情報を誘導する手順を省略してもよい。サブ予測ユニット単位で動き誘導を省略する場合には、上述したようにイントラ予測を行ってもよい。記憶部２１１０の具体的な実施例は、後述する。
【０２３０】
誘導部２１２０は、現在ブロックのサブ予測ユニットで動き情報を誘導する手順を行う。この時、誘導部２１２０では基本的に、前述した動き誘導手順を行うことができる。ただし、本発明で提案する誘導部２１２０では、現在ブロックの一番目のサブ予測ユニットに対応する参照ブロックのサブ予測ユニットに動き情報が存在しない場合には、動き情報が存在する参照ブロックのサブ予測ユニットを見つけるまで検索を行った後、動き情報が存在する参照ブロックのサブ予測ユニットから現在ブロックの一番目のサブ予測ブロックの動き情報を誘導する代わりに、記憶部に記憶された動き情報から現在ブロックの一番目のサブ予測ブロックの動き情報を誘導することができる。誘導部２１２０の具体的な実施例は、後述する。
【０２３１】
以下、本発明の具体的な実施例を、図面を参照して具体的に説明する。
【０２３２】
実施例１
図２２は、本発明の一実施例に係る、参照ブロックを用いて現在ブロックに対するサブ予測ユニットの動き情報を誘導する方法を概略的に説明するフローチャートである。
【０２３３】
実施例１では、参照ブロックの中央位置に関する動き情報に基づいて、現在ブロックのサブ予測ユニット（現在サブユニット）に関する動き情報を誘導する。実施例１は、エンコーダ及びデコーダで行われてもよく、エンコーダ及びデコーダの予測部又はインター予測部で行われてもよい。ここでは、説明の便宜のために、図２１のインター予測部２１００が実施例１の動作を行うとして説明する。
【０２３４】
図２２を参照すると、インター予測部２１００は、参照ブロック内中央位置を誘導することができる（Ｓ２２００）。参照ブロック内中央位置は、式１０のように誘導することができる。このとき、参照ブロックは、参照ピクチャ内で現在ブロックと同じ位置のブロックであって、現在ブロックと同じサイズを有することができる。
【数１０】
2020039157.tif 000017
【０２３５】
ここで、ｘＰｂ、ｙＰｂは、現在ＰＵの左上端の位置を表し、ｎＰｂＷは、現在ＰＵの幅、ｎＰｂＨは現在ＰＵの高さを意味する。
【０２３６】
インター予測部２１００は、参照ブロック内中央位置に動き情報が存在するか否かを判断することができる（Ｓ２２１０）。参照ブロック内中央位置は、上述のように特定することができる。
【０２３７】
参照ブロック内中央位置に利用可能な（ａｖａｉｌａｂｌｅ）動き情報が存在しないと、インター予測部２１００は動き情報誘導手順を終了することができる。例えば、参照ブロックの中央に利用可能な動き情報がないと、インター予測部２１００は、現在ブロックに関する動き情報を誘導しなくてもよい。
【０２３８】
参照ブロック内中央位置に動き情報が存在すると、インター予測部２１００は、参照ブロックの中央位置に存在する動き情報を記憶空間に記憶することができる（Ｓ２２２０）。参照ブロックの中央に位置する動き情報は、参照ブロックの中央に最も隣接したフルサンプル（ｆｕｌｌ  ｓａｍｐｌｅ）位置を含む予測ブロックに関する動き情報であってもよい。インター予測部２１００で動き情報を記憶する具体的な手順は、上述したとおりである。インター予測部２１００は、記憶された参照ブロックの動き情報に基づいて現在サブ予測ユニットの動き情報を誘導することができる。
【０２３９】
インター予測部２１００は、現在サブ予測ユニットに対応する参照ブロックのサブ予測ユニットに動き情報が存在するか否か判断することができる（Ｓ２２４０）。
【０２４０】
参照ブロックのサブ予測ユニットに動き情報が存在する場合、インター予測部２１００は、現在サブ予測ユニットに、参照ブロックのサブ予測ユニットに関する動き情報を挿入することができる（Ｓ２２５０）。すなわち、インター予測部２１００は、参照ブロックのサブ予測ブロックに関する動き情報（例えば、動きベクトル、参照ピクチャインデックス）を、対応する現在サブ予測ユニットに関する動き情報として設定することができる。
【０２４１】
参照ブロックのサブ予測ユニットに利用可能な動き情報が存在しない場合、インター予測部２１００は、記憶空間に記憶された参照ブロックの動き情報を、現在サブ予測ユニットに挿入する（Ｓ２２６０）。すなわち、現在サブ予測ブロックに対応する参照ブロック内サブ予測ブロックの動き情報が利用可能でないと、インター予測部２１００は、Ｓ２２００段階で記憶した参照ブロックの中央に関する動き情報を、現在サブ予測ブロックに関する動き情報として設定することができる。
【０２４２】
インター予測部２１００は、現在サブ予測ユニットに対応する参照ブロック内サブ予測ブロックが参照ブロック内最後のサブ予測ユニットであるか（すなわち、現在サブ予測ブロックが現在ブロック内の最後のサブ予測ブロックであるか）否か判断することができる（Ｓ２２７０）。インター予測部２１００は、参照ブロックのサブ予測ユニットが最後のサブ予測ユニットであると、動き情報誘導手順を終了することができる。
【０２４３】
参照ブロックのサブ予測ユニットが最後のサブ予測ユニットでないと、インター予測部２１００は、動き情報の誘導を繰返し行うために、現在ブロックの次のサブ予測ユニットに対して動き情報の誘導を行う（Ｓ２２３０）。
【０２４４】
上述した実施例１の動き情報誘導手順を３Ｄビデオのデコーディングに適用すると、下記の表２のとおりである。
【０２４５】
【表２−１】
2020039157.tif 000018
【０２４６】
【表２−２】
2020039157.tif 000019
【０２４７】
【表２−３】
2020039157.tif 000020
【０２４８】
【表２−４】
2020039157.tif 000021
【０２４９】
【表２−５】
2020039157.tif 000022
【０２５０】
表２に基づいて実施例１を再び説明すると、下のとおりである。
【０２５１】
表２を参照すると、インター予測部２１００には、現在予測ブロックの左上端の位置、現在予測ブロックの幅、現在予測ブロックの高さ、参照視点インデックス、及び変移ベクトルが入力される。このとき、現在予測ブロックの左上端の位置は、（ｘＰｂ，ｙＰｂ）と定義することができる。現在予測ブロックの幅は‘ｎＰｂＷ’と定義することができ、現在予測ブロックの高さは、‘ｎＰｂＨ’と定義することができる。参照視点インデックスは、‘ｒｅｆＶｉｅｗＩｄｘ’と定義することができ、変移ベクトルは、‘ｍｖＤｉｓｐ’と表示することができる。
【０２５２】
参照ブロックのサブ予測ユニットを用いて現在ブロックに対するサブ予測ユニットの動き情報を誘導する手順を終えた場合、インター予測部２１００では、視点間予測が可能か否かを判断するフラグと、視点間動きベクトル、参照ピクチャリストに存在する参照ピクチャを指定する参照インデックスを出力することができる。このとき、視点間動き候補が利用可能か否かを判断するフラグは、‘ａｖａｉｌａｂｌｅＦｌａｇＬＸＩｎｔｅｒＶｉｅｗ’と定義することができ、時間的視点間動きベクトル候補は、‘ｍｖＬＸＩｎｔｅｒＶｉｅｗ’と定義することができる。また、参照ピクチャリストは、‘ＲｅｆＰｉｃＬｉｓｔＬＸ’と定義することができ、参照ピクチャリストに存在する参照ピクチャを指定する参照インデックスは、‘ｒｅｆＩｄｘＬＸＩｎｔｅｒＶｉｅｗ’と表示することができる。‘ａｖａｉｌａｂｌｅＦｌａｇＬＸＩｎｔｅｒＶｉｅｗ’、‘ｍｖＬＸＩｎｔｅｒＶｉｅｗ’、‘ＲｅｆＰｉｃＬｉｓｔＬＸ’、及び‘ｒｅｆＩｄｘＬＸＩｎｔｅｒＶｉｅｗ’に存在する‘ＬＸ’は、参照ピクチャリスト０（Ｌｉｓｔ  ０；Ｌ０）又は参照ピクチャリスト１（Ｌｉｓｔ  １；Ｌ１）であってもよい。
【０２５３】
以下、上述の入力から上述の出力を導出して、現在ブロックのサブ予測ユニットに関する動き情報を誘導する方法を具体的に説明する。
【０２５４】
まず、インター予測部２１００は、参照ブロックのサブ予測ユニットを用いて現在ブロックに対するサブ予測ユニットの動き情報を誘導する前に、初期化を行う。このとき、ａｖａｉｌａｂｌｅＦｌａｇＬＸＩｎｔｅｒＶｉｅｗは０に設定され、ｍｖＬＸＩｎｔｅｒＶｉｅｗは（０，０）に設定され、ｒｅｆＩｄｘＬＸＩｎｔｅｒＶｉｅｗは−１に設定されてもよい。また、インター予測部２１００で初期化を行うとき、サブ予測ユニットの幅とサブ予測ユニットの高さも初期化されてもよい。このとき、サブ予測ユニットの幅は、‘ｎＳｂＷ’と表示し、サブ予測ユニットの高さは‘ｎＳｂＨ’と表示することができる。式１１は、変数ｎＳｂＷ及びｎＳｂＨの初期化方法の一例である。
【数１１】
2020039157.tif 000023
【０２５５】
このとき、ＳｕｂＰｂＳｉｚｅは、ＶＰＳで指定したサブ予測ユニットの高さ、幅のサイズを意味し、ｎｕｈ＿ｌａｙｅｒ＿ｉｄは、レイヤを識別（例えば、どの参照視点であるかなどを識別）するインデックスを意味する。Ｍｉｎ（）は、入力される変数のうち、小さい値を有する変数を出力する演算子である。
【０２５６】
インター予測部２１００では、上述した変数の他、視点間参照ピクチャ内の（ｘＲｅｆ，ｙＲｅｆ）位置における輝度（ｌｕｍａ）予測ブロックと現在ブロックのサブ予測ユニットを識別する情報、及び記憶空間に記憶された動き情報の使用が可能か否かを識別する情報も初期化することができる。
【０２５７】
このとき、視点間参照ピクチャは、現在アクセスユニットにおいて参照ビューインデックスの値と同じビューインデックスを有するピクチャに設定されてもよい。この時、視点間参照ピクチャは‘ｉｖＲｅｆＰｉｃ’と表示し、視点間参照ピクチャ内の（ｘＲｅｆ，ｙＲｅｆ）位置における輝度予測ブロックは、‘ｉｖＲｅｆＰｂ’と表示することができる。一つのアクセスユニットは、同じ出力順序（Ｐｉｃｔｕｒｅ  Ｏｒｄｅｒ  Ｃｏｕｎｔ：ＰＯＣ）を有する別個の視点の映像を含む。参照視点インデックスは‘ｒｅｆＶｉｅｗＩｄｘ’と定義することができ、視点インデックスは‘ＶｉｅｗＩｄｘ’と定義することができる。
【０２５８】
参照位置は、実施例１に係る参照ブロックの中央を含む（ｃｏｖｅｒ）予測ブロックを特定する位置であってもよい。この時の参照位置に関する動き情報を、現在サブ予測ユニットに関する動き情報を誘導するために記憶することができる。式１２は、参照位置（ｘＲｅｆ，ｙＲｅｆ）を誘導する方法の一例である。
【数１２】
2020039157.tif 000024
【０２５９】
ここで、ｘＲｅｆＦｕｌｌ及びｙＲｅｆＦｕｌｌは、参照ブロックの中央に近接したフルサンプルの位置を表す。すなわち、ｘＲｅｆＦｕｌｌとｙＲｅｆＦｕｌｌは、整数位置のサンプルに対するｘ座標とｙ座標を表す。
【０２６０】
ｉｖＲｅｆＰｂは、（ｘＲｅｆ，ｙＲｅｆ）を含む（ｃｏｖｅｒ）予測ブロック又はサブ予測ユニットであってもよい。輝度サンプルの位置（ｘＩｖＲｅｆＰｂ，ｙＩｖＲｅｆＰｂ）がｉｖＲｅｆＰｂの左上端を特定することができる。
【０２６１】
仮にｉｖＲｅｆＰｂがイントラモードで符号化／復号化されていないと、Ｘから（１−Ｘ）までの範囲を有するＹに対して下記の（１）及び（２）の過程を適用することができる。
【０２６２】
（１）ｒｅｆＰｉｃＬｉｓｔＬＹＩｖＲｅｆは、視点間参照ピクチャｉｖＲｅｆＰｉｃ内のＲｅｆＰｉｃＬｉｓｔＬＹに設定し、ｐｒｅｄＦｌａｇＬＹＩｖＲｅｆ［ｘ］［ｙ］は、視点間参照ピクチャｉｖＲｅｆＰｉｃ内のＰｒｅｄＦｌａｇ［ｘ］［ｙ］に設定し、ｒｅｆＩｄｘＬＹＩｖＲｅｆ［ｘ］［ｙ］は、視点間参照ピクチャｉｖＲｅｆＰｉｃ内のＲｅｆＩｄｘＬＹ［ｘ］［ｙ］に設定することができる。
【０２６３】
（２）仮にｐｒｅｄＦｌａｇＬＹＩｖＲｅｆ［ｘＩｖＲｅｆＰｂ］［ｙＩｖＲｅｆＰｂ］の値が１であれば、０からｎｕｍ＿ｒｅｆ＿ｉｄｘ＿ｌＸ＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１（参照ピクチャリストＸに存在する参照ピクチャの個数）までの範囲を有するｉに対して次の過程を適用する：仮にｒｅｆＰｉｃＬｉｓｔＬＹＩｖＲｅｆ［ｒｅｆＩｄｘＬＹＩｖＲｅｆ［ｘＩｖＲｅｆＰｂ］［ｙＩｖＲｅｆＰｂ］］のＰＯＣ（Ｐｉｃｔｕｒｅ  Ｏｒｄｅｒ  Ｃｏｕｎｔ：ピクチャの出力順序）がＲｅｆＰｉｃＬｉｓｔＬＸ［ｉ］と同一であり、ａｖａｉｌａｂｌｅＦｌａｇＬＸＩｎｔｅｒＶｉｅｗが０であれば、式１３を適用することができる。
【数１３】
2020039157.tif 000025
【０２６４】
次に、ａｖａｉｌａｂｌｅＦｌａｇＬ０ＩｎｔｅｒＶｉｅｗ又はａｖａｉｌａｂｌｅＦｌａｇＬ１ＩｎｔｅｒＶｉｅｗが１であれば、インター予測部２１００は、０から（ｎＰｂＨ／ｎＳｂＨ−１）までの範囲を有するｙＢｌｋと、０から（ｎＰｂＷ／ｎＳｂＷ−１）までの範囲を有するｘＢｌｋに対しては、下記のような手順を行う。このとき、ｘＢｌｋはｘ座標を意味し、ｙＢｌｋはｙ座標を意味する。言い換えると、参照ブロックの中央で可用の動き情報が誘導された場合に、インター予測部２１００は、サブ予測ブロック単位で動き情報を誘導することができる。
【０２６５】
まず、インター予測部２１００は、参照ブロックのサブ予測ユニットから動き情報が予測されるか否かを識別する情報、サブ予測ユニット予測フラグ、サブ予測ユニットの動きベクトル、及びサブ予測ユニットの参照インデックスを初期化することができる。
【０２６６】
このとき、参照ブロックのサブ予測ユニットから動き情報が予測されるか否かを識別する情報は‘ｃｕｒＡｖａｉｌａｂｌｅＦｌａｇ’と、サブ予測ユニット予測フラグは‘ｓｐＰｒｅｄＦｌａｇＬＸ１’と、サブ予測ユニットフラグは‘ｓｐＰｒｅｄＦｌａｇＬＸ［ｘＢｌｋ］［ｙＢｌｋ］’と、サブ予測ユニットの動きベクトルは‘ｓｐＭｖＬＸ’と、サブ予測ユニットの参照インデックスは‘ｓｐＲｅｆＩｄｘＬＸ’と定義することができ、サブ予測ユニットの参照インデックスは、‘ｓｐＲｅｆＩｄｘＬＸ［ｘＢｌｋ］［ｙＢｌｋ］’と定義することができる。
【０２６７】
参照ブロックの位置（ｘＲｅｆ，ｙＲｅｆ）は、下記の式１４のようにサブブロック単位で再設定される。
【数１４】
2020039157.tif 000026
【０２６８】
ＰｉｃＷｉｄｔｈＩｎＳａｍｐｌｅｓＬは、現在ピクチャの幅を意味し、ＰｉｃＨｅｉｇｈｔＩｎＳａｍｐｌｅｓＬは、現在ピクチャの高さを意味する。また、Ｃｌｉｐ３（）は上述したとおりである。
【０２６９】
その後、視点間参照ブロックがイントラモードで符号化されていない場合、０から１までの範囲を有するＸに対して下記の手順を行う。
【０２７０】
Ｘが０であるか、又は現在スライスがＢスライスである場合には、Ｙ（Ｙは、Ｘから（１−Ｘ）までの範囲を有する。）に対して次のようにそれぞれの変数を再設定する。ｒｅｆＰｉｃＬｉｓｔＬＹＩｖＲｅｆを、ｉｖＲｅｆＰｉｃによって特定されるピクチャ（すなわち、視点間参照ピクチャ）に対する参照ピクチャリストＲｅｆＰｉｃＬｉｓｔＬＹに設定することができる。ｐｒｅｄＦｌａｇＬＹＩｖＲｅｆ［ｘ］［ｙ］はＰｒｅｄＦｌａｇＬＹ［ｘ］［ｙ］に設定される。ＰｒｅｄＦｌａｇＬＹ［ｘ］［ｙ］は、ｉｖＲｅｆＰｉｃが特定するピクチャ内（ｘ，ｙ）位置で適用される参照ピクチャリストを示す。ｍｖＬＹＩｖＲｅｆ［ｘ］［ｙ］はＭｖＬＹ［ｘ］［ｙ］に設定される。ＭｖＬＹ［ｘ］［ｙ］は、ｉｖＲｅｆＰｉｃが特定するピクチャ内（ｘ，ｙ）における動きベクトルを意味する。ｒｅｆＩｄｘＬＹＩｖＲｅｆ［ｘ］［ｙ］はＲｅｆＩｄｘＬＹ［ｘ］［ｙ］に設定される。ＲｅｆＩｄｘＬＹ［ｘ］［ｙ］は、ｉｖＲｅｆＰｉｃが示すピクチャ内（ｘ，ｙ）における参照ピクチャを表す。
【０２７１】
ｐｒｅｄＦｌａｇＬＹＩｖＲｅｆ［ｘＩｖＲｅｆＰｂ］［ｙＩｖＲｅｆＰｂ］が１の値を有する場合、０からｎｕｍ＿ｒｅｆ＿ｉｄｘ＿ｌＸ＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１（参照ピクチャリスト内に存在する参照ピクチャの個数）までの範囲を有するｉに対して、ｒｅｆＰｉｃＬｉｓｔＬＹＩｖＲｅｆ［ｒｅｆＩｄｘＬＹＩｖＲｅｆ［ｘＩｖＲｅｆＰｂ］［ｙＩｖＲｅｆＰｂ］］のＰＯＣがＲｅｆＰｉｃＬｉｓｔＬＸ［ｉ］と同一であり、ｓｐＰｒｅｄＦｌａｇＬＸ［ｘＢｌｋ］［ｙＢｌｋ］が０であれば、下記の式１５を適用することができる。
【数１５】
2020039157.tif 000027
【０２７２】
上述した過程を行った後にも、設定されたｃｕｒＡｖａｉｌａｂｌｅＦｌａｇが０である場合（すなわち、ｓｐＲｅｆＩｄｘＬＸ＝ｉでなく（例えば、ｓｐＲｅｆＩｄｘＬｘ＝−１）、ｓｐＰｒｅｄＦｌａｇＬＸ＝１でない（例えば、ｓｐＰｒｅｄＦｌａｇＬＸ＝−１である）場合）は、サブブロック単位で動き情報を誘導できない場合といえる。このため、インター予測部２１００は、０から１までの範囲を有するＸに対して式１６を適用することができる。
【０２７３】
すなわち、参照ブロックのサブ予測ユニットから動き情報の誘導が不可能な場合、インター予測部２１００は、参照ブロックの中央位置に関する動き情報から現在ブロックのサブ予測ユニットに関する動き情報を誘導することができる。
【数１６】
2020039157.tif 000028
【０２７４】
最後に、以上の過程を完了すると、変数ｃｕｒＳｕｂＢｌｏｃｋＩｄｘはｃｕｒＳｕｂＢｌｏｃｋＩｄｘ＋１に設定され、仮にａｖａｉｌａｂｌｅＦｌａｇＬ０ＩｎｔｅｒＶｉｅｗとａｖａｉｌａｂｌｅＦｌａｇＬ１ＩｎｔｅｒＶｉｅｗが０であれば、本発明の実施例１による動き情報誘導過程は終了する。
【０２７５】
実施例２
図２３は、本発明の他の実施例によって、現在ブロックに対するサブ予測ユニットの動き情報を誘導する方法を概略的に説明するフローチャートである。図２３の例では、参照ブロックの任意の位置に存在するサブ予測ユニットを用いて、現在ブロックに対するサブ予測ユニットの動き情報が誘導することができる。
【０２７６】
実施例２では、参照ブロックの中央部分を含むサブ予測ユニットの動き情報に基づいて、現在ブロックのサブ予測ユニットに関する動き情報を誘導することができる。
【０２７７】
図２３の例は、エンコーダ及びデコーダで行われてもよく、エンコーダ及びデコーダの予測部又は図２１のインター予測部２１００で行われてもよい。ここでは、説明の便宜のために、インター予測部２１００が図２３の各段階を行うとして説明する。
【０２７８】
図２３を参照すると、インター予測部２１００は、参照ブロック中央のサブ予測ユニット（中央サブ予測ユニット）の位置を導出することができる（Ｓ２３００）。参照ブロック内に位置している中央サブ予測ユニットは、参照ブロックの中央部分に位置するサブ予測ユニットを意味し、参照ブロックの中央は、上述したとおりである。式１７は、参照ブロック内中央サブ予測ユニットの位置を誘導する一例である。
【数１７】
2020039157.tif 000029
【０２７９】
ここで、（ｘＰｂ，ｙＰｂ）は、現在予測ユニットの左上端の位置を表し、ｎＰｂＷは現在予測ユニットの幅、ｎＰｂＨは現在予測ユニットの高さを意味する。
【０２８０】
インター予測部２１００は、参照ブロック内中央サブ予測ユニットに動き情報が存在するか否かを判断し（Ｓ２３１０）、参照ブロック内中央サブ予測ユニットの位置は上述したとおりである。仮に、参照ブロック内中央サブ予測ユニットの位置で動き情報が存在しない場合には、インター予測部２１００は動き情報誘導手順を終了することができる。
【０２８１】
参照ブロック内中央サブ予測ユニットに動き情報が存在する場合、インター予測部２１００は、中央位置に存在する動き情報を記憶することができる（Ｓ２３２０）。インター予測部２１００が動き情報を記憶する具体的な手順は、上述したとおりである。
【０２８２】
インター予測部２１００は、現在サブ予測ユニットの動き情報の誘導を行う。インター予測部２１００は、現在サブ予測ユニットに対応する参照ブロックのサブ予測ユニットに動き情報が存在するか否かを判断することができる（Ｓ２３４０）。
【０２８３】
参照ブロックのサブ予測ユニットに動き情報が存在する場合、インター予測部２１００は、参照ブロックのサブ予測ユニットに存在する動き情報を現在サブ予測ユニットに挿入することができる（Ｓ２３５０）。仮に、参照ブロックのサブ予測ユニットに動き情報が存在しない場合、インター予測部２１００は、Ｓ２３２０で記憶した動き情報を現在サブ予測ユニットに挿入することができる（Ｓ２３６０）。
【０２８４】
インター予測部２１００は、動き情報誘導の対象となる参照ブロックのサブ予測ユニットが最後のサブ予測ユニットであるか否か判断することができる（Ｓ２３７０）。参照ブロックのサブ予測ユニットが最後のサブ予測ユニットである場合に、インター予測部２１００は、現在ブロックに関する動き情報誘導の手順を終了することができる。仮に、参照ブロックのサブ予測ユニットが最後のサブ予測ユニットでない場合には、動き情報の誘導を繰返し行うために、現在ブロック内の次のサブ予測ユニットに対象を移動する（Ｓ２３３０）。
【０２８５】
上述した実施例２の動き情報誘導手順を３Ｄビデオに適用すると、表３のとおりである。
【０２８６】
【表３−１】
2020039157.tif 000030
【０２８７】
【表３−２】
2020039157.tif 000031
【０２８８】
【表３−３】
2020039157.tif 000032
【０２８９】
【表３−４】
2020039157.tif 000033
【０２９０】
【表３−５】
2020039157.tif 000034
【０２９１】
表３に基づいて実施例２を再び説明すると、下記のとおりである。
【０２９２】
表３で用いる変数は、表２における説明と同一である。
【０２９３】
インター予測部２１００では、参照ブロックのサブ予測ユニットを用いて現在サブ予測ユニットの動き情報を誘導するに先立ち、初期化を行う。初期化の内容は、表２で説明したとおりである。
【０２９４】
インター予測部は、参照ブロックの中央サブ予測ユニットの位置を特定することができる。この時に参照するブロックの位置は、参照位置に基づいて決定することができ、参照位置（ｘＲｅｆ，ｙＲｅｆ）は式１８のように誘導される。
【数１８】
2020039157.tif 000035
【０２９５】
ｉｖＲｅｆＰｉｃは、現在アクセスユニットでｒｅｆＶｉｅｗＩｄｘと同じＶｉｅｗＩｄｘを有するピクチャであり、ｉｖＲｅｆＰｂは、ｉｖＲｅｆＰｉｃ内で式１９によって誘導された（ｘＲｅｆ，ｙＲｅｆ）位置を含む予測ブロック又はサブ予測ユニットである。
【０２９６】
（ｘＩｖＲｅｆＰｂ，ｙＩｖＲｅｆＰｂ）は、ｉｖＲｅｆＰｂの左上端の位置を特定する。
【０２９７】
仮にｉｖＲｅｆＰｂがイントラモードで符号化／復号化されておらず、Ｘが０であるか、又は現在スライスがＢスライスである場合には、Ｘから（１−Ｘ）までの範囲を有するＹに対して下記のような手順を適用する。
【０２９８】
表２で説明したとおり、ｒｅｆＰｉｃＬｉｓｔＬＹＩｖＲｅｆはＲｅｆＰｉｃＬｉｓｔＬＹに設定され、ｐｒｅｄＦｌａｇＬＹＩｖＲｅｆ［ｘ］［ｙ］はＰｒｅｄＦｌａｇ［ｘ］［ｙ］に設定され、ｒｅｆＩｄｘＬＹＩｖＲｅｆ［ｘ］［ｙ］はＲｅｆＩｄｘＬＹ［ｘ］［ｙ］に設定される。
【０２９９】
仮にｐｒｅｄＦｌａｇＬＹＩｖＲｅｆ［ｘＩｖＲｅｆＰｂ］［ｙＩｖＲｅｆＰｂ］が１であれば、０からｎｕｍ＿ｒｅｆ＿ｉｄｘ＿ｌＸ＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１（参照ピクチャリストＸに存在する参照ピクチャの個数）までの範囲を有するｉに対して、ｒｅｆＰｉｃＬｉｓｔＬＹＩｖＲｅｆ［ｒｅｆＩｄｘＬＹＩｖＲｅｆ［ｘＩｖＲｅｆＰｂ］［ｙＩｖＲｅｆＰｂ］］のＰＯＣ（Ｐｉｃｔｕｒｅ  Ｏｒｄｅｒ  Ｃｏｕｎｔ：ピクチャの出力順序）がＲｅｆＰｉｃＬｉｓｔＬＸ［ｉ］と同一であり、ａｖａｉｌａｂｌｅＦｌａｇＬＸＩｎｔｅｒＶｉｅｗが０である場合に式１９を適用する。
【数１９】
2020039157.tif 000036
【０３００】
式１９で、ｃｅｎｔｅｒＡｖａｉｌａｂｌｅＦｌａｇは、参照ブロック内の中央サブ予測ユニットを利用可能か否かを示し、ｃｅｎｔｅｒＭｖＬＸは、参照ブロック内の中央サブ予測ユニットに対する動きベクトルを意味する。また、ｃｅｎｔｅｒＲｅｆＩｄｘＬＸは、参照ブロック内の中央サブ予測ユニットに対する参照インデックスを示し、ｃｅｎｔｅｒＰｒｅｄＦｌａｇＬＸは、中央サブ予測ユニットの参照ピクチャリストを示す。このとき、ｃｅｎｔｅｒＡｖａｉｌａｂｌｅＦｌａｇ、ｃｅｎｔｅｒＭｖＬＸ、ｃｅｎｔｅｒＲｅｆＩｄｘＬＸ、及び／又はｃｅｎｔｅｒＰｒｅｄＦｌａｇＬＸは、中央サブ予測ユニットの動き情報を意味する。すなわち、インター予測部２１００は、式１９によって設定した参照ブロックの中央サブ予測ユニットの動き情報を記憶空間に記憶することができる。
【０３０１】
上述したように変数の値を設定した後、ｃｅｎｔｅｒＡｖａｉｌａｂｌｅＦｌａｇが１である場合、インター予測部２１００では、０から（ｎＰｂＨ／ｎＳｂＨ−１）までの範囲を有するｙＢｌｋと、０から（ｎＰｂＷ／ｎＳｂＷ−１）までの範囲を有するｘＢｌｋに対しては、下記のような手順を行う。このとき、ｘＢｌｋはブロックのｘ座標を意味し、ｙＢｌｋはブロックのｙ座標を意味する。言い換えると、参照ブロック中央のサブブロックで可用の動き情報が誘導された場合に、インター予測部２１００はサブ予測ブロック単位で現在ブロックの動き情報を誘導することができる。
【０３０２】
まず、インター予測部２１００は、参照ブロックのサブ予測ユニットから動き情報が予測されるか否かを識別する情報、サブ予測ユニット予測フラグ、サブ予測ユニットの動きベクトル、及びサブ予測ユニットの参照インデックスを初期化する。具体的な内容は、表２で説明したとおりである。
【０３０３】
参照ブロックの位置（ｘＲｅｆ，ｙＲｅｆ）は、サブ予測ブロック単位で式２０のように再設定される。
【数２０】
2020039157.tif 000037
【０３０４】
ここで、ｘＲｅｆは、参照ブロックの位置に対するｘ座標を意味し、ｙＲｅｆは、参照ブロックの位置に対するｙ座標を意味する。ＰｉｃＷｉｄｔｈＩｎＳａｍｐｌｅｓＬは、現在ピクチャの幅を意味し、ＰｉｃＨｅｉｇｈｔＩｎＳａｍｐｌｅｓＬは、現在ピクチャの高さを意味する。Ｃｌｉｐ３（）は、上述したとおりである。
【０３０５】
視点間参照ブロックがイントラモードで符号化されていない場合、インター予測部２１００は、０から１までの範囲を有するＸに対して下記の手順を行う。
【０３０６】
まず、Ｘが０であるか、又は現在スライスがＢスライスであるときには、Ｙ（Ｙは、Ｘから（１−Ｘ）までの範囲を有する。）に対して次のようにそれぞれの変数を再設定する。具体的な内容は、表２で説明したとおりである。
【０３０７】
この時、ｐｒｅｄＦｌａｇＬＹＩｖＲｅｆ［ｘＩｖＲｅｆＰｂ］［ｙＩｖＲｅｆＰｂ］が１の値を有する場合、０からｎｕｍ＿ｒｅｆ＿ｉｄｘ＿ｌＸ＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１（参照ピクチャリスト内に存在する参照ピクチャの個数）までの範囲を有するｉに対して、ｒｅｆＰｉｃＬｉｓｔＬＹＩｖＲｅｆ［ｒｅｆＩｄｘＬＹＩｖＲｅｆ［ｘＩｖＲｅｆＰｂ］［ｙＩｖＲｅｆＰｂ］］のＰＯＣがＲｅｆＰｉｃＬｉｓｔＬＸ［ｉ］と同一であり、ｓｐＰｒｅｄＦｌａｇＬＸ［ｘＢｌｋ］［ｙＢｌｋ］が０であれば、下記の式２１を適用することができる。
【数２１】
2020039157.tif 000038
【０３０８】
上述した手順を行った後にも、設定されたｃｕｒＡｖａｉｌａｂｌｅＦｌａｇが０である場合（すなわち、ｓｐＲｅｆＩｄｘＬＸ＝ｉでなく（例えば、ｓｐＲｅｆＩｄｘＬｘ＝−１）、ｓｐＰｒｅｄＦｌａｇＬＸ＝１でない（例えば、ｓｐＰｒｅｄＦｌａｇＬＸ＝−１である）場合）は、サブブロック単位で動き情報を誘導できない場合といえる。したがって、インター予測部２１００は、０から１までの範囲を有するＸに対して式２２を適用することができる。
【０３０９】
すなわち、参照ブロックのサブ予測ユニットから動き情報を誘導できない場合、インター予測部２１００は、中央サブユニットの動き情報から現在ブロックのサブ予測ユニットに関する動き情報を誘導することができる。
【数２２】
2020039157.tif 000039
【０３１０】
最後に、上述した過程を全て行った場合、変数ｃｕｒＳｕｂＢｌｏｃｋＩｄｘはｃｕｒＳｕｂＢｌｏｃｋＩｄｘ＋１に設定され、仮にａｖａｉｌａｂｌｅＦｌａｇＬ０ＩｎｔｅｒＶｉｅｗ及びａｖａｉｌａｂｌｅＦｌａｇＬ１ＩｎｔｅｒＶｉｅｗが０であれば、本発明の実施例２による動き情報誘導手順は終了する。
【０３１１】
図２４は、任意の位置の動き情報を用いて、現在ブロックに対するサブ予測ユニットの動き情報を誘導する手順の一例を示す図である。
【０３１２】
図２４を参照すると、図２４の上段に位置している各ブロックは、参照ブロックのサブ予測ユニットを意味し、図２４の下段に位置している各ブロックは、現在ブロックのサブ予測ユニットを意味する。また、Ｘは任意の位置を意味し、Ｘの動き情報は、記憶空間に記憶される。このとき、図２４の任意の位置の動き情報は、実施例１の参照ブロックの中間位置の動き情報を意味することができ、図２４の任意の位置の動き情報は、実施例２の参照ブロックの中央サブ予測ユニットの動き情報を意味することができる。
【０３１３】
任意の位置の動き情報を用いて、現在ブロックに対するサブ予測ユニットの動き情報を誘導する場合、参照ブロックのサブ予測ユニットはそれぞれ、任意の位置の動き情報を用いることができる。すなわち、現在ブロックの複数のサブ予測ユニットは同時に任意の位置の動き情報を用いて動き情報を誘導することができ、任意の位置の動き情報を用いた動き情報の誘導は、データ依存性を克服することができる。したがって、任意の位置の動き情報を用いる場合、インター予測部２１００は、並列的な動き情報の誘導が可能になる。
【０３１４】
上述したように、実施例１及び実施例２は、任意の位置に存在する動き情報を用いて動き情報を誘導する。したがって、実施例１及び実施例２による動き情報誘導方法は、参照ブロック内に存在する各サブ予測ユニットがそれぞれ独立して誘導されるようにする。すなわち、実施例１及び実施例２では、動き情報の誘導が可能なサブ予測ユニットを探すために、順次に動き情報の誘導可能なサブ予測ユニットを探索する必要がなく、参照ブロックの一番目のサブ予測ユニットを動き情報の誘導に利用不可能な場合には、実施例１及び実施例２では、既に設定された動き情報を用いて現在ブロックに対するサブ予測ユニットの動き情報を誘導する。これによって、実施例１及び実施例２による動き情報の誘導は、データ依存性を除去し、各サブ予測ユニットの動き情報を並列的に誘導することができるという利点がある。また、実施例１及び実施例２による動き情報の誘導は、既存の動き情報誘導に比べて追加のメモリ接近を防止し、メモリ接近の回数を軽減するという利点がある。
【０３１５】
実施例３
図２５は、本発明の更に他の実施例に係る、任意の動き情報値を用いて現在ブロックに対するサブ予測ユニットの動き情報を誘導する方法を示すフローチャートである。
【０３１６】
図２５を参照すると、実施例３は、初期（Ｄｅｆａｕｌｔ）動き情報を設定し、参照ブロックのサブ予測ユニットから動き情報の誘導が不可能な場合、設定された初期動き情報から現在サブ予測ユニットに関する動き情報を誘導する方法を提供する。このとき、設定された初期動き情報は、零ベクトルなどを意味することができる。実施例３による具体的な動き情報誘導方法は、下記のとおりである。
【０３１７】
インター予測部２１００は、初期動き情報を記憶空間に記憶することができる（Ｓ２５００）。インター予測部２１００が動き情報を記憶する具体的な手順は、上述したとおりである。
【０３１８】
その後、インター予測部２１００は、現在サブ予測ユニットの動き情報誘導を行うことができる。インター予測部２１００は、現在サブ予測ユニットに対応する参照ブロックのサブ予測ユニットに動き情報が存在するか否かを判断することができる（Ｓ２５２０）。
【０３１９】
参照ブロックのサブ予測ユニットに動き情報が存在する場合、インター予測部２１００は、現在サブ予測ユニットに参照ブロックサブ予測ユニットの動き情報を挿入することができる（Ｓ２５３０）。参照ブロックのサブ予測ユニットに動き情報が存在しない場合、インター予測部２１００は、記憶空間に記憶された動き情報を現在サブ予測ユニットに挿入することができる（Ｓ２５４０）。
【０３２０】
インター予測部２１００は、動き情報誘導の対象となる参照ブロックのサブ予測ユニットが、最後のサブ予測ユニットであるか判断することができる（Ｓ２５５０）。参照ブロックのサブ予測ユニットが最後のサブ予測ユニットであると、インター予測部２１００は動き情報の誘導手順を終了する。参照ブロックのサブ予測ユニットが最後のサブ予測ユニットでないと、インター予測部２１００は、動き情報の誘導を繰返し行うために、参照ブロックの次のサブ予測ユニットの動き情報を探索することができる（Ｓ２５１０）。
【０３２１】
上述した実施例３の動き情報誘導手順を３Ｄ−ＨＥＶＣ  Ｄｒａｆｔ  Ｔｅｘｔ  ２に適用すれば、下記の表４のとおりである。
【０３２２】
【表４−１】
2020039157.tif 000040
【０３２３】
【表４−２】
2020039157.tif 000041
【０３２４】
【表４−３】
2020039157.tif 000042
【０３２５】
【表４−４】
2020039157.tif 000043
【０３２６】
表４に基づいて実施例３を再び説明すると、下記のとおりである。表３で用いる変数は、表２で説明したとおりである。
【０３２７】
インター予測部２１００では、参照ブロックのサブ予測ユニットを用いて現在サブ予測ユニットの動き情報を誘導するに先立ち、初期化を行う。初期化の内容は、表２で説明したとおりである。
【０３２８】
また、変数ａｖａｉｌａｂｌｅＦｌａｇＬＸＺｅｒｏ、ｍｖＬＸＺｅｒｏ、及びｒｅｆＩｄｘＬＸＺｅｒｏはそれぞれ、式２３及び式２４のように設定される。このとき、Ｘは、０又は１である。
【数２３】
2020039157.tif 000044
【数２４】
2020039157.tif 000045
【０３２９】
ここで、ａｖａｉｌａｂｌｅＦｌａｇＬＸＺｅｒｏは、初期動き情報を利用可能か否かを示す識別子を意味し、ｍｖＬＸＺｅｒｏは、初期動き情報を意味し、ｒｅｆＩｄｘＬＸＺｅｒｏは、初期動き情報の参照インデックスを意味する。
【０３３０】
上述したように変数の値を設定した後、インター予測部２１００では、０から（ｎＰｂＨ／ｎＳｂＨ−１）までの範囲を有するｙＢｌｋ、及び０から（ｎＰｂＷ／ｎＳｂＷ−１）までの範囲を有するｘＢｌｋに対しては、下記のような手順を行う。このとき、ｘＢｌｋはブロックのｘ座標を意味し、ｙＢｌｋはブロックのｙ座標を意味する。
【０３３１】
まず、インター予測部２１００は、参照ブロックのサブ予測ユニットから動き情報が予測されるか否かを識別する情報、サブ予測ユニット予測フラグ、サブ予測ユニットの動きベクトル、及びサブ予測ユニットの参照インデックスを初期化する。具体的な内容は、表２で説明したとおりである。
【０３３２】
参照ブロックの位置（ｘＲｅｆ，ｙＲｅｆ）は、サブ予測ブロック単位で式２５のように再設定される。
【数２５】
2020039157.tif 000046
【０３３３】
視点間参照ブロックがイントラモードで符号化されていない場合、インター予測部２１００は、０から１までの範囲を有するＸに対して下記の手順を行うことができる。
【０３３４】
まず、Ｘが０であるか、又は現在スライスがＢスライスであるときには、Ｙ（Ｙは、Ｘから（１−Ｘ）までの範囲を有する。）に対して、表２で説明したようにそれぞれの変数を再設定する。
【０３３５】
ｐｒｅｄＦｌａｇＬＹＩｖＲｅｆ［ｘＩｖＲｅｆＰｂ］［ｙＩｖＲｅｆＰｂ］が１の値を有する場合、０からｎｕｍ＿ｒｅｆ＿ｉｄｘ＿ｌＸ＿ａｃｔｉｖｅ＿ｍｉｎｕｓ１（参照ピクチャリスト内に存在する参照ピクチャの個数）までの範囲を有するｉに対しては、下記の式２６を適用することができる。
【数２６】
2020039157.tif 000047
【０３３６】
上述した手順を行った後、ｃｕｒＡｖａｉｌａｂｌｅＦｌａｇが０であれば、インター予測部２１００は、０から１までの範囲を有するＸに対して式２７を適用することができる。
【０３３７】
すなわち、参照ブロックのサブ予測ユニットから動き情報の誘導が不可能な場合、インター予測部２１００は、任意に設定された初期動き情報から現在ブロックのサブ予測ユニットに関する動き情報を誘導することができる。
【数２７】
2020039157.tif 000048
【０３３８】
最後に、上述した手順を全て行った場合、変数ｃｕｒＳｕｂＢｌｏｃｋＩｄｘはｃｕｒＳｕｂＢｌｏｃｋＩｄｘ＋１に設定され、仮にａｖａｉｌａｂｌｅＦｌａｇＬ０ＩｎｔｅｒＶｉｅｗ及びａｖａｉｌａｂｌｅＦｌａｇＬ１ＩｎｔｅｒＶｉｅｗが０であれば、本発明の実施例３による動き情報誘導手順は終了する。
【０３３９】
図２６は、任意の動き情報値を用いて、現在ブロックに対するサブ予測ユニットの動き情報を誘導する手順の一例を示す図である。
【０３４０】
図２６を参照すると、図２６の上段に位置している各ブロックは、参照ブロックのサブ予測ユニットを意味し、図２６の下段に位置している各ブロックは、現在ブロックのサブ予測ユニットを意味する。また、初期動き情報は記憶空間に記憶される。このとき、図２６の初期動き情報は、実施例３の任意に設定された初期動き情報を意味することができる。
【０３４１】
初期動き情報を用いて、現在ブロックに対するサブ予測ユニットの動き情報を誘導する場合、参照ブロックのサブ予測ユニットはそれぞれ、任意の値である初期動き情報を用いることができる。すなわち、現在ブロックの複数のサブ予測ユニットは任意の初期動き情報を用いて同時に動き情報の誘導を行うことができ、これによって、現在ブロックの複数のサブ予測ユニットはデータ依存性を克服することができる。したがって、任意の値を有する初期動き情報を用いる場合、インター予測部２１００は並列的な動き情報の誘導が可能となる。
【０３４２】
上述したように、実施例３では、インター予測部２１００が、任意の値を有する初期動き情報を用いて動き情報を誘導する。したがって、実施例３による動き情報誘導方法は、参照ブロック内に存在する各サブ予測ユニットがそれぞれ独立して誘導されるようにする。すなわち、実施例３では、動き情報の誘導が可能なサブ予測ユニットを探すために、動き情報誘導が可能なサブ予測ユニットを順次に探索する必要がなく、参照ブロックの一番目のサブ予測ユニットが動き情報誘導に利用不可能な場合、実施例３では、既に設定された動き情報を用いて、現在ブロックに対するサブ予測ユニットの動き情報を誘導する。これによって、実施例３による動き情報の誘導は、データ依存性を除去し、各サブ予測ユニットの動き情報を並列的に誘導できるという利点がある。また、実施例３による動き情報の誘導は、既存の動き情報の誘導に比べて追加のメモリ接近を防止し、メモリ接近の回数を軽減するという利点がある。
【０３４３】
図２７は、本発明を適用して動き情報を誘導するためにかかる時間を概略的に示す図である。
【０３４４】
図２０によれば、一つのサブ予測ユニット内の動き情報を誘導するためにかかる時間がＴであり、参照ブロック内のサブ予測ユニットの個数がＮである場合には、参照ブロック内の全動き情報を誘導するためにかかる時間がＮ×Ｔとなる。しかし、本発明の実施例に係る動き情報の誘導では、動き情報誘導の並列化が可能であるため、動き情報誘導時間はＴとなり、よって、３次元ビデオ符号化／復号化遅延時間が減少する。
【０３４５】
上述した本発明の実施例は、ブロックサイズ、符号化ユニット（Ｃｏｄｉｎｇ  Ｕｉｎｔ；ＣＵ）深さ、又は変換ユニット（Ｔｒａｎｓｆｏｒｍ  Ｕｎｉｔ；ＴＵ）深さなどによって適用範囲を別々にすることができる。適用範囲を決定する変数は、エンコーダ／デコーダであらかじめ定められた値を用いるように設定されてもよく、プロファイル又はレベルによって定められた値を用いるようにしてもよく、エンコーダが変数値をビットストリームに記載し、デコーダがビットストリームから変数値を求めて用いるようにしてもよい。
【０３４６】
例えば、ＣＵ深さによって適用範囲を別々にする場合には、表５で例示するように、与えられた深さ以上の深さにのみ適用する方式（方法Ａ）、与えられた深さ以下にのみ適用する方式（方法Ｂ）、又は与えられた深さにのみ適用する方式（方法Ｃ）を用いることができる。全ての深さに対して本発明の方法を適用しない場合には、任意の指示子（ｆｌａｇ）で示すこともでき、本発明の方法を適用しない旨をＣＵ深さ値で示すこともでき、このとき、ＣＵ深さ値は、ＣＵが有し得る最大の深さ値よりも大きい値に設定することができる。
【表５】
2020039157.tif 000049
【０３４７】
以上の実施例では、各方法を一連の段階又はユニットとしてフローチャートに基づいて説明しているが、本発明が段階の順序に限定されるわけではなく、ある段階は、上述とは異なる段階及び異なる順序で行われてもよく、又は同時に行われてもよい。また、当該技術の分野における通常の知識を有する者にとっては、フローチャートに表された段階が排他的でなく、他の段階が含まれてもよく、フローチャート中の１つ又はそれ以上の段階が、本発明の範囲に影響を与えない限度内で削除されてもよいことが理解できるであろう。
【０３４８】
上述した実施例は様々な態様の例示を含む。様々な態様を示すためのあらゆる可能な組合せを記述することはできないが、当該技術の分野における通常の知識を有する者には他の組合せも可能であるといこうは明らかである。したがって、添付の特許請求の範囲に属する如何なる交替、修正及び変更も本発明に含まれるといえる。
【０３４９】
上述した本発明に係る方法は、コンピュータで実行可能なプログラムとして製作し、コンピュータ読み取り可能な記録媒体に記憶させることができ、コンピュータ読み取り可能な記録媒体の例には、ＲＯＭ、ＲＡＭ、ＣＤ−ＲＯＭ、磁気テープ、フロッピーディスク、光データ記憶装置などがあり、また、キャリアウェーブ（例えば、インターネットを介した送信）の形態で具現されるものも含む。
【０３５０】
コンピュータ読み取り可能な記録媒体は、ネットワークで接続されているコンピュータシステムに分散され、分散方式でコンピュータ読み取り可能なコードが記憶されて実行されてもよい。そして、上記方法を具現するための機能的な（ｆｕｎｃｔｉｏｎ）プログラム、コード及びコードセグメントは、本発明の属する技術分野におけるプログラマによって容易に推論されてもよい。
【０３５１】
また、本発明の好適な実施例について図示及び説明してきたが、本発明は、上述した特定の実施例に限定されず、特許請求の範囲で請求する本発明の要旨を逸脱しない範囲で、当該発明の属する技術の分野における通常の知識を有する者によって様々な変形実施が可能であることは勿論であり、それらの変形実施を本発明の技術的思想又は展望から分離して理解してはならない。
【図１】
2020039157.tif 000050
【図２】
2020039157.tif 000051
【図３】
2020039157.tif 000052
【図４】
2020039157.tif 000053
【図５】
2020039157.tif 000054
【図６】
2020039157.tif 000055
【図７】
2020039157.tif 000056
【図８】
2020039157.tif 000057
【図９】
2020039157.tif 000058
【図１０】
2020039157.tif 000059
【図１１】
2020039157.tif 000060
【図１２】
2020039157.tif 000061
【図１３】
2020039157.tif 000062
【図１４】
2020039157.tif 000063
【図１５Ａ】
2020039157.tif 000064
【図１５Ｂ】
2020039157.tif 000065
【図１５Ｃ】
2020039157.tif 000066
【図１５Ｄ】
2020039157.tif 000067
【図１５Ｅ】
2020039157.tif 000068
【図１６Ａ】
2020039157.tif 000069
【図１６Ｂ】
2020039157.tif 000070
【図１６Ｃ】
2020039157.tif 000071
【図１６Ｄ】
2020039157.tif 000072
【図１６Ｅ】
2020039157.tif 000073
【図１６Ｆ】
2020039157.tif 000074
【図１６Ｇ】
2020039157.tif 000075
【図１７】
2020039157.tif 000076
【図１８】
2020039157.tif 000077
【図１９】
2020039157.tif 000078
【図２０】
2020039157.tif 000079
【図２１】
2020039157.tif 000080
【図２２】
2020039157.tif 000081
【図２３】
2020039157.tif 000082
【図２４】
2020039157.tif 000083
【図２５】
2020039157.tif 000084
【図２６】
2020039157.tif 000085
【図２７】
2020039157.tif 000086