(57)【要約】  本発明では、ビデオ信号のデコードを実行する方法およびそのための装置が開示される。具体的には、インター予測モードに基づいて映像を復号する方法であって、現ブロックにマージモード（merge mode）が適用される場合には、上記現ブロックの空間隣接ブロック（spatial neighboring block）および時間マージ候補（temporal neighboring block）を用いて、マージ候補リスト（merge candidate list）を生成する段階と、上記マージ候補リスト内で上記現ブロックのインター予測に用いられる候補を指示するマージインデックス（merge index）を獲得する段階と、上記現ブロックのインター予測に用いられる候補の動きベクトルに基づいて上記現ブロックに有される複数のサブブロックのそれぞれの動きベクトルを導出する段階と、上記サブブロックのそれぞれの動きベクトルを用いて上記現ブロックの予測サンプルを生成する段階と、を有することができる。【選択図】図１４
2021516502.tif 000002
【特許請求の範囲】
【請求項１】
インター予測モードに基づいて映像を復号する方法であって、
現ブロックにマージモード（merge mode）が適用される場合、前記現ブロックの空間隣接ブロック（spatial neighboring block）および時間マージ候補（temporal neighboring block）を用いて、マージ候補リスト（merge candidate list）を生成する段階と
前記マージ候補リスト内で、前記現ブロックのインター予測に用いられる候補を指示するマージインデックス（merge index）を獲得する段階と、
前記現ブロックのインター予測に用いられる候補の動きベクトルに基づいて前記現ブロックに有される複数のサブブロックのそれぞれの動きベクトルを導出する段階と、
前記サブブロックのそれぞれの動きベクトルを用いて前記現ブロックの予測サンプルを生成する段階と、を有し、
前記サブブロックの大きさは、８ｘ８以上の固定された特定の大きさに設定される、映像の復号方法。
【請求項２】
前記マージ候補リストを生成する段階は、
前記現ブロックのコロケートピクチャ（collocated picture）内で前記空間隣接ブロックの動きベクトルによって特定される前記現ブロックの時間隣接ブロックを前記マージ候補リストに追加する段階を有する、請求項１に記載の映像の復号方法。
【請求項３】
前記マージ候補リストを生成する段階は、
前記現ブロックのコロケートピクチャ（collocated picture）内で、前記現ブロックの空間隣接ブロックのうちの予め定義された順序上の最初の空間隣接ブロックの動きベクトルによって特定される前記現ブロックの時間隣接ブロックを前記マージ候補リストに追加する段階を有する、請求項１に記載の映像の復号方法。
【請求項４】
前記マージ候補リストを生成する段階は、
前記現ブロックの幅および高さが予め定義された最小の大きさより小さいかどうかを確認する段階と、
前記確認の結果、前記現ブロックの幅および高さが予め定義された最小の大きさ以上の場合、前記現ブロックのコロケートピクチャ（collocated picture）内で前記空間隣接ブロックの動きベクトルによって特定される前記現ブロックの時間隣接ブロックを前記マージ候補リストに追加する段階と、を有する、請求項１に記載の映像の復号方法。
【請求項５】
前記予め定義された最小の大きさは、前記サブブロックの大きさに設定される、請求項４に記載の映像の復号方法。
【請求項６】
インター予測モードに基づいて映像を復号する装置であって、
現ブロックにマージモード（merge mode）が適用される場合、前記現ブロックの空間マージ候補（spatial merge candidate）および時間マージ候補（temporal merge candidate）を用いて、マージ候補リスト（merge candidate list）を生成するマージ候補リスト生成部と、
前記マージ候補リスト内で前記現ブロックのインター予測に用いられるマージ候補を指示するマージインデックス（merge index）を獲得するマージインデックス獲得部と、
前記現ブロックのインター予測に用いられるマージ候補の動きベクトルに基づいて前記現ブロックに有される複数のサブブロックのそれぞれの動きベクトルを導出するサブブロックの動きベクトル導出部と、
前記サブブロックのそれぞれの動きベクトルを用いて前記現ブロックの予測ブロックを生成する予測ブロック生成部と、を有し、
前記サブブロックの大きさは、８ｘ８以上の固定された特定の大きさに設定される、映像の復号装置。
【請求項７】
前記マージ候補リスト生成部は、
前記現ブロックのコロケートピクチャ（collocated picture）内で前記空間隣接ブロックの動きベクトルによって特定される前記現ブロックの時間隣接ブロックを前記マージ候補リストに追加する、請求項６に記載の映像の復号装置。
【請求項８】
前記マージ候補リスト生成部は、
前記現ブロックのコロケートピクチャ（collocated picture）内で、前記現ブロックの空間隣接ブロックのうちの予め定義された順序上の最初の空間隣接ブロックの動きベクトルによって特定される前記現ブロックの時間隣接ブロックを前記マージ候補リストに追加する、請求項６に記載の映像の復号装置。
【請求項９】
前記マージ候補リスト生成部は、
前記現ブロックの幅および高さが予め定義された最小の大きさより小さいかどうかを確認し、
前記確認の結果、前記現ブロックの幅および高さが予め定義された最小の大きさ以上の場合、前記現ブロックのコロケートピクチャ（collocated picture）内で前記空間隣接ブロックの動きベクトルによって特定される前記現ブロックの時間隣接ブロックを前記マージ候補リストに追加する、請求項６に記載の映像の復号装置。
【請求項１０】
前記予め定義された最小の大きさは、前記サブブロックの大きさに設定される、請求項９に記載の映像の復号装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、静止画または動画の処理方法に関し、さらに詳細には、インター予測モード（inter prediction mode）に基づいて静止画または動画をエンコード/デコードする方法およびこれをサポート（支援）する装置に関する。
【背景技術】
【０００２】
圧縮符号化とは、デジタル化した情報を通信回線を介して転送（送信）したり、記憶（貯蔵）媒体に適合した形で記憶するための一連の信号処理技術を意味する。映像、イメージ、音声などのメディアが圧縮符号化の対象となることができ、特に、映像を対象として圧縮符号化を実行する技術をビデオ映像圧縮と称する。
【０００３】
次世代ビデオコンテンツは、高解像度（high spatial resolution）、高フレームレート（high frame rate）および映像表現の高次元化（high dimensionality of scene representation）という特徴を有するようになる。そのようなコンテンツを処理するためには、メモリストレージ（memory storage）、メモリアクセスレート（率）（memory access rate）および処理電力（processing power）の面でとてつもない増加をもたらす。
【０００４】
したがって、次世代のビデオコンテンツをさらに効率的に処理するためのコーディングツールをデザインする必要がある。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の目的は、時間的（temporal）動き情報の類似性に基づいて、インター予測（または画面間予測）を行う（遂行する）にあたって、ハードウェアリソース（資源）の使用を減らすための方法および装置を提案する。
【０００６】
本発明で解決しようとする技術的課題は、以上で言及した技術的課題に限定されず、言及していないさらに他の技術的課題は、下の記載から、本発明が属する技術分野で通常の知識を有する者に明確に理解されるべきである。
【課題を解決するための手段】
【０００７】
本発明の一様態は、インター予測モードに基づいて映像を復号（デコーディング）する方法であって、現（現在）ブロックにマージモード（merge mode）が適用される場合、現ブロックの空間隣接ブロック（spatial neighboring block）および時間マージ候補（temporal neighboring block）を用いて、マージ候補リスト（merge candidate list）を生成する段階と、マージ候補リスト内で現ブロックのインター予測に用いられる候補を指示するマージインデックス（merge index）を獲得する段階と、現ブロックのインター予測に用いられる候補の動きベクトルに基づいて現ブロックに有される複数のサブブロックのそれぞれの動きベクトルを導出（誘導）する段階と、サブブロックのそれぞれの動きベクトルを用いて現ブロックの予測サンプルを生成する段階と、を有し、サブブロックの大きさは、８ｘ８以上の固定された特定の大きさに設定されることができる。
【０００８】
実施形態として、マージ候補リストを生成する段階は、現ブロックのコロケートピクチャ（collocated picture）内で空間隣接ブロックの動きベクトルによって特定される現ブロックの時間隣接ブロックをマージ候補リストに追加する段階を有することができる。
【０００９】
実施形態として、マージ候補リストを生成する段階は、現ブロックのコロケートピクチャ（collocated picture）内で、現ブロックの空間隣接ブロックのうちの予め定義された順序上の最初の空間隣接ブロックの動きベクトルによって特定される現ブロックの時間隣接ブロックをマージ候補リストに追加する段階を有することができる。
【００１０】
実施形態として、マージ候補リストを生成する段階は、現ブロックの幅および高さが予め定義された最小の大きさよりも小さいかどうかを確認する段階と、確認の結果、現ブロックの幅および高さが予め定義された最小の大きさ以上の場合、現ブロックのコロケートピクチャ（collocated picture）内で空間隣接ブロックの動きベクトルによって特定される現ブロックの時間隣接ブロックをマージ候補リストに追加する段階と、を有することができる。
【００１１】
実施形態として、予め定義された最小の大きさは、サブブロックの大きさに設定されることができる。
【００１２】
本発明の他の一様態は、インター予測モードに基づいて映像を復号する装置であって、現ブロックにマージモード（merge mode）が適用される場合、現ブロックの空間マージ候補（spatial merge candidate）および時間マージ候補（temporal merge candidate）を用いて、マージ候補リスト（merge candidate list）を生成するマージ候補リスト生成部と、マージ候補リスト内で現ブロックのインター予測に用いられるマージ候補を指示するマージインデックス（merge index）を獲得するマージインデックス獲得部と、現ブロックのインター予測に用いられるマージ候補の動きベクトルに基づいて現ブロックに有される複数のサブブロックのそれぞれの動きベクトルを導出するサブブロックの動きベクトル導出部と、サブブロックのそれぞれの動きベクトルを用いて現ブロックの予測ブロックを生成する予測ブロック生成部と、を有し、サブブロックの大きさは、８ｘ８以上の固定された特定の大きさに設定されることができる。
【００１３】
実施形態として、マージ候補リスト生成部は、現ブロックのコロケートピクチャ（collocated picture）内で空間隣接ブロックの動きベクトルによって特定される現ブロックの時間隣接ブロックをマージ候補リストに追加することができる。
【００１４】
実施形態として、マージ候補リスト生成部は、現ブロックのコロケートピクチャ（collocated picture）内で、現ブロックの空間隣接ブロックのうちの予め定義された順序上の最初の空間隣接ブロックの動きベクトルによって特定される現ブロックの時間隣接ブロックをマージ候補リストに追加することができる。
【００１５】
実施形態として、マージ候補リスト生成部は、現ブロックの幅および高さが予め定義された最小の大きさより小さいかどうかを確認し、確認の結果、現ブロックの幅および高さが予め定義された最小の大きさよりも大きいか等しい場合には、現ブロックのコロケートピクチャ（collocated picture）内で空間隣接ブロックの動きベクトルによって特定される現ブロックの時間隣接ブロックをマージ候補リストに追加することができる。
【００１６】
実施形態として、予め定義された最小の大きさは、サブブロックの大きさに設定されることができる。
【発明の効果】
【００１７】
本発明の実施形態によると、すでにデコードされたピクチャの動き情報を用いて、予測ブロックを生成するにあたり、ハードウェアゲートカウント（gate count）を効果的に低減することができる。
【００１８】
また、本発明の実施形態によると、すでにデコードされたピクチャの動き情報を用いて、インター予測を行うにあたって、ハードウェアゲートカウント（gate count）を減らすと同時に、それに応じて伴う圧縮性能の損失を最小にすることができる。
【００１９】
本発明で得られる効果は、以上で言及した効果に制限されず、言及しないもう一つの効果は、以下の記載から、本発明が属する技術分野で通常の知識を有する者に明確に理解されるべきである。
【図面の簡単な説明】
【００２０】
【図１】本発明が適用される実施形態として、ビデオ／映像信号のエンコードが行われるエンコード装置の概略ブロック図である。
【図２】本発明が適用される実施形態として、ビデオ／映像信号のデコードが行われるデコード装置の概略ブロック図である。
【図３】本発明が適用されることができる実施形態として、マルチタイプのツリー（木）構造の一例を示す図である。
【図４】本発明が適用されることができる実施形態として、マルチタイプのツリーを伴う四分木（クアッドツリー）（quadtree with nested multi-type tree）構造のパーティション分割情報のシグナリングメカニズムを例示する図である。
【図５】本発明が適用されることができる実施形態として、四分木および入れ子（伴う）マルチタイプのツリー（quadtree and nested multi-type tree）構造に基づいてＣＴＵをマルチ（多重）ＣＵに分割する方法を例示する図である。
【図６】本発明が適用されることができる実施形態として、三分木（ターナリツリー）（ternary-tree）分割を制限する方法を例示する図である。
【図７】本発明が適用されることができる実施形態として、二分木（バイナリツリー）分割および三分木分割で発生することができる冗長（リダンダント）（redundant）分割パターンを例示する図である。
【図８】本発明の実施形態に係るインター予測ベースのビデオ／映像のエンコード方法と本発明の実施形態に係るエンコード装置内のインター予測部とを例示する図である。
【図９】本発明の実施形態に係るインター予測ベースのビデオ／映像のエンコード方法と本発明の実施形態に係るエンコード装置内のインター予測部とを例示する図である。
【図１０】本発明の実施形態に係るインター予測ベースのビデオ／映像をデコードする方法と本発明の実施形態に係るデコード装置内のインター予測部とを例示する図である。
【図１１】本発明の実施形態に係るインター予測ベースのビデオ／映像をデコードする方法と本発明の実施形態に係るデコード装置内のインター予測部とを例示する図である。
【図１２】本発明が適用される実施形態として、マージモードまたはスキップモードで用いられる周辺ブロックを説明する図である。
【図１３】本発明が適用される一実施形態に係るマージ候補リストの構成方法を例示するフローチャートである。
【図１４】本発明が適用される一実施形態に係るマージ候補リストの構成方法を例示するフローチャートである。
【図１５】本発明が適用される一実施形態として、ＡＴＭＶＰ（Advanced Temporal Motion Vector Prediction）候補を導出する方法を説明する図である。
【図１６】本発明が適用される一実施形態として、ＡＴＭＶＰ（Advanced Temporal Motion Vector Prediction）候補を導出する方法を説明する図である。
【図１７】本発明が適用される一実施形態として、ＡＴＭＶＰ（Advanced Temporal Motion Vector Prediction）候補を導出する方法を例示する図である。
【図１８】本発明が適用される一実施形態に係る時間動きベクトルデータ（Temporal motion vector data）を圧縮する方法とこれに用いられる空間候補の位置とを例示する図である。
【図１９】本発明が適用される一実施形態に係る時間動きベクトルデータ（Temporal motion vector data）を圧縮する方法とこれに用いられる空間候補の位置とを例示する図である。
【図２０】本発明が適用される実施形態に係る候補リスト（candidate list）に基づいて、インター予測されたブロック（inter predicted block）を生成する方法を示すフローチャートである。
【図２１】本発明が適用される実施形態に係る候補リスト（candidate list）の生成方法を示すフローチャートである。
【図２２】本発明が適用される実施形態に係るインター予測に用いられる周辺ブロックの一例を示す図である。
【図２３】本発明が適用される実施形態に係る拡張されたＡＴＭＶＰ（Advanced Temporal Motion Vector Prediction）候補を導出する方法を例示する図である。
【図２４】本発明が適用される実施形態に係る参照ピクチャ内における時間隣接ブロックの動きベクトルをフェッチ（パッチ）するプロセス（fetching process）を例示する図である。
【図２５】本発明が適用される実施形態に係る参照ピクチャ内における時間隣接ブロックの動きベクトルをフェッチするプロセス（fetching process）を例示する図である。
【図２６】本発明が適用される実施形態に係るサブブロック単位で時間隣接ブロックの動きベクトルをフェッチするプロセス（fetching process）を示す図である。
【図２７】本発明が適用される実施形態に係る候補リスト（candidate list）を生成する方法を示すフローチャートである。
【図２８】本発明が適用される実施形態に係るインター予測ブロックを生成する方法を例示するフローチャートである。
【図２９】本発明が適用される実施形態に係るインター予測装置を例示する図である。
【図３０】本発明が適用されるビデオコーディングシステムを示す図である。
【図３１】本発明が適用される実施形態として、コンテンツストリーミングシステムの構造図である。
【発明を実施するための形態】
【００２１】
本発明に係る理解を助けるために詳細な説明の一部として含まれる添付図面は、本発明の実施形態を提供し、詳細な説明と共に本発明の技術的特徴を説明する。
【００２２】
以下、本発明に係る好適な実施形態を、添付の図面を参照して詳細に説明する。添付された図面と共に以下に開示される詳細な説明は、本発明の例示的な実施形態を説明しようとするものであり、本発明が実施されることができる唯一の実施形態を示すようにすることではない。以下の詳細な説明は、本発明の完全な理解を提供するために具体的な細部事項を含む。しかしながら、当業者は、本発明は、このような具体的な詳細がなくても実施できることを知る。
【００２３】
いくつかの場合、本発明の概念が曖昧になることを避けるために、公知の構造および装置は省略されるか、各構造および装置の中核機能を中心としたブロック図の形式で示されることができる。
【００２４】
さらに、本発明で用いられる用語は、可能な限り、現在広く用いられる一般的な用語を選択したが、特定の場合には、出願人が任意に選定した用語を用いて説明する。そのような場合には、該当部分の詳細な説明で、その意味を明確に記載するため、本発明の説明で用いられる用語の名称のみで単純に解釈されてはならないものであり、その対応する用語の意味まで把握して解釈されるべきであることを明らかにしておく。
【００２５】
以下の説明で用いられる特定の用語は、本発明の理解を助けるために提供されたものであり、このような特定の用語の使用は、本発明の技術的思想を逸脱しない範囲で他の形態に変更されることができる。例えば、信号、データ、サンプル、ピクチャ、フレーム、ブロックなどの場合、各コーディングの過程で適切に置換されて解釈されることがある。
【００２６】
以下、本明細書で「処理ユニット」は、予測、変換、および/または量子化などのエンコード/デコードの処理過程が実行される単位を意味する。以下、説明の便宜のために処理ユニットは、「処理ブロック」または「ブロック」と称することもできる。
【００２７】
処理ユニットは、輝度（luma）成分の単位と色差（chroma）成分の単位とを含む意味で解釈されることができる。例えば、処理ユニットは、コーディングツリーユニット（ＣＴＵ：Coding Tree Unit）、コーディングユニット（ＣＵ：Coding Unit、符号化ユニット）、予測ユニット（ＰＵ：Prediction Unit）または変換ユニット（ＴＵ：Transform Unit）に対応することができる。
【００２８】
また、処理ユニットは、輝度（luma）成分の単位または色差（chroma）成分の単位として解釈されることができる。例えば、処理ユニットは、輝度（luma）成分のコーディングツリーブロック（ＣＴＢ：Coding Tree Block）、コーディングブロック（ＣＢ：Coding Block）、予測ブロック（ＰＵ：Prediction Block）または変換ブロック（ＴＢ：Transform Block ）に該当することができる。あるいは、色差（chroma）成分のコーディングツリーブロック（ＣＴＢ）、コーディングブロック（ＣＢ）、予測ブロック（ＰＵ）または変換ブロック（ＴＢ）に対応することができる。また、これに限定されるものではなく、処理ユニットは、輝度（luma）成分の単位と色差（chroma）成分の単位とを含む意味で解釈されることもできる。
【００２９】
また、処理ユニットは、必ずしも正方形のブロックに限定されるものではなく、３つ以上の頂点を有する多角形の形で構成されることもできる。
【００３０】
なお、以下、本明細書においてピクセルまたは画素などをサンプルとして総称する。そして、サンプルを用いることは、ピクセル値または画素値などを用いることを意味することができる。
【００３１】
図１は、本発明が適用される実施形態として、ビデオ／映像信号の符号化が行われるエンコード装置の概略ブロック図を示す。
【００３２】
図１を参照すると、エンコード装置１００は、映像分割部１１０、減算部１１５、変換部１２０、量子化部１３０、逆量子化部１４０、逆変換部１５０、加算部１５５、フィルタリング部１６０、メモリ１７０、インター予測部１８０、イントラ予測部１８５およびエントロピエンコード部１９０を含んで構成されることができる。インター予測部１８０およびイントラ予測部１８５は、予測部と総称されることができる。つまり、予測部は、インター予測部１８０およびイントラ予測部１８５を含むことができる。変換部１２０、量子化部１３０、逆量子化部１４０、逆変換部１５０は、残差（レジデュアル）（residual）処理部に含まれることができる。残差処理部は、減算部１１５をさらに含むこともできる。一実施形態として、前述した映像分割部１１０、減算部１１５、変換部１２０、量子化部１３０、逆量子化部１４０、逆変換部１５０、加算部１５５、フィルタリング部１６０、インター予測部１８０、イントラ予測部１８５およびエントロピエンコード部１９０は、一つのハードウェアコンポーネント（例えば、エンコーダまたはプロセッサ）によって構成されることができる。また、メモリ１７０は、ＤＰＢ（Decoded Picture Buffer）を含むことができ、デジタル記憶媒体によって構成されることもできる。
【００３３】
映像分割部１１０は、エンコード装置１００に入力された入力映像（または、ピクチャ、フレーム）を１つまたは複数の処理ユニット（processing unit）に分割することができる。一例として、上記処理ユニットは、コーディングユニット（Coding Unit、ＣＵ）と呼ばれることができる。この場合、コーディングユニットは、コーディングツリーユニット（Coding Tree Unit、ＣＴＵ）または最大コーディングユニット（Largest Coding Unit、ＬＣＵ）からＱＴＢＴ（Quad-Tree Binary-Tree）構造に基づいて再帰的（recursively）に分割されることができる。例えば、一つのコーディングユニットは、四分木構造および/または二分木構造に基づいて、下位（サブ）デプス（deeper）の複数のコーディングユニットに分割されることができる。この場合、例えば、四分木構造が先に適用され、二分木構造が後で適用されることができる。あるいは、二分木構造が先に適用されることもある。これ以上分割されない最終コーディングユニットに基づいて、本発明に係るコーディング手順が実行されることができる。この場合、映像の特性に応じた符号化効率などに基づいて、コーディングユニットがすぐに最終的なコーディングユニットとして用いられることができ、または、必要に応じて、コーディングユニットは、再帰的に（recursively）さらに下位デプスのコーディングユニットに分割され、最適サイズのコーディングユニットが最終コーディングユニットとして用いられることができる。ここで、コーディング手順とは、後述する予測、変換、および復元などの手続きを含むことができる。他の例として、上記処理ユニットは、予測ユニット（ＰＵ：Prediction Unit）または変換ユニット（ＴＵ：Transform Unit）をさらに含むことができる。この場合、上記予測ユニットおよび上記変換ユニットは、それぞれ前述した最終コーディングユニットから分割またはパーティショニングされることができる。上記予測ユニットは、サンプル予測の単位であり得、上記変換ユニットは、変換係数を導出する単位、および/または変換係数から残差信号（residual signal）を導出する単位であり得る。
【００３４】
ユニットは、場合によって、ブロック（block）または領域（area）などの用語と混用されることができる。一般的な場合、ＭｘＮブロックは、Ｍ個の列およびＮ個の行からなるサンプルまたは変換係数（transform coefficient）の集合を示すことができる。サンプルは、一般的に、ピクセルまたはピクセルの値を示すことができ、輝度（luma）成分のピクセル／ピクセル値のみを示すこともあり、彩度（chroma）成分のピクセル/ピクセル値のみを示すこともできる。サンプルは、一つのピクチャ（または映像）をピクセル（pixel）またはペル（pel）に対応する用語として用いることができる。
【００３５】
エンコード装置１００は、入力映像信号（オリジナル（原本）ブロック、オリジナルのサンプルアレイ）において、インター予測部１８０またはイントラ予測部１８５から出力された予測信号（予測されたブロック、予測サンプルアレイ）を減算して残差信号（residual signal、残りのブロック、残りのサンプルアレイ）を生成することができ、生成された残差信号は、変換部１２０に転送される。この場合、図示のように、エンコーダ１００内で入力映像信号（オリジナル（原本）ブロック、オリジナルのサンプルアレイ）において予測信号（予測ブロック、予測サンプルアレイ）を減算するユニットは、減算部１１５と呼ばれることができる。予測部は、処理対象ブロック（以下、現ブロックと称する）の予測を行い、上記現ブロックの予測サンプルを含む予測されたブロック（predicted block）を生成することができる。予測部は、現ブロックもしくはＣＵ単位でイントラ予測が適用されるか、またはインター予測が適用されるかを決定することができる。予測部は、各予測モードの説明で後述するように、予測モード情報などの予測に関する様々な情報を生成し、エントロピエンコード部１９０に伝達することができる。予測に関する情報は、エントロピエンコード部１９０でエンコードされてビットストリーム形態で出力されることができる。
【００３６】
イントラ予測部１８５は、現ピクチャ内のサンプルを参照して、現ブロックを予測することができる。上記参照されたサンプルは、予測モードに応じて上記現ブロックの周辺（neighbor）に位置することができ、または離れて位置することもできる。イントラ予測において、予測モードは、複数の非方向性モードおよび複数の方向性モードを含むことができる。非方向性モードは、例えば、ＤＣモードおよび平面（プラナ）モード（Ｐｌａｎａｒモード）を含むことができる。方向性モードは、予測方向の細かい程度に応じて、例えば、３３個の方向性予測モードまたは６５個の方向性予測モードを含むことができる。ただし、これは、例であって、設定によってそれ以上、またはそれ以下の数の方向性予測モードが用いられることができる。イントラ予測部１８５は、周辺ブロックに適用される予測モードを用いて、現ブロックに適用される予測モードを決定することもできる。
【００３７】
インター予測部１８０は、参照ピクチャ上で動きベクトルによって特定される参照ブロック（参照サンプルのアレイ）に基づいて、現ブロックの予測されたブロックを導出することができる。このとき、インター予測モードで転送される動き情報の量を減らすために、周辺のブロックと現ブロックとの間の動き情報の相関性に基づいて、動き情報を、ブロック、サブブロック、またはサンプル単位で予測することができる。上記動き情報は、動きベクトルおよび参照ピクチャインデックスを含むことができる。上記動き情報は、インター予測方向（Ｌ０予測、Ｌ１予測、Ｂｉ予測など）の情報をさらに含むことができる。インター予測の場合、周辺ブロックは、現ピクチャ内に存在する空間的周辺ブロック（spatial neighboring block）と参照ピクチャに存在する時間的周辺ブロック（temporal neighboring block）とを含むことができる。上記参照ブロックを含む参照ピクチャと上記時間的周辺ブロックを含む参照ピクチャとは、同じであることもあり、異なることもある。上記時間的周辺ブロックは、コロケート（同じ位置）参照ブロック（collocated reference block）、コロケート（同じ位置）ＣＵ（ｃｏｌＣＵ）などの名前で呼ばれることができ、上記時間的周辺ブロックを含む参照ピクチャは、コロケートピクチャ（collocated picture、ｃｏｌＰｉｃ）と呼ばれることもできる。例えば、インター予測部１８０は、周辺ブロックに基づいて動き情報候補リストを構成し、上記現ブロックの動きベクトルおよび/または参照ピクチャのインデックスを導出するためにどの候補が用いられるかを指示する情報を生成することができる。様々な予測モードに基づいて、インター予測が行われることができ、例えば、スキップモードおよびマージモードの場合に、インター予測部１８０は、周辺ブロックの動き情報を現ブロックの動き情報として用いることができる。スキップモードの場合、マージモードとは異なり、残差信号が転送されないことがある。動き情報予測（Motion Vector Prediction、ＭＶＰ）モードの場合、周辺ブロックの動きベクトルを動きベクトル予測子（motion vector predictor）として用いて、動きベクトル差分（motion vector difference）をシグナリングすることによって、現ブロックの動きベクトルを指示することができる。
【００３８】
上記インター予測部１８０もしくは上記イントラ予測部１８５を介して生成された予測信号は、復元信号を生成するために用いられるか、または残差信号を生成するために用いられることができる。
【００３９】
変換部１２０は、残差信号に変換技法を適用して変換係数（transform coefficients）を生成することができる。たとえば、変換技法は、ＤＣＴ（Discrete Cosine Transform）、ＤＳＴ（Discrete Sine Transform）、ＫＬＴ（Karhunen-Loeve Transform）、ＧＢＴ（Graph-Based Transform）、またはＣＮＴ（Conditionally Non-linear Transform）のうちの少なくとも一つを含むことができる。ここで、ＧＢＴは、ピクセル間の関係情報をグラフで表現するとしたときに、このグラフから得られた変換を意味する。ＣＮＴは、以前に復元されたすべてのピクセル（all previously reconstructed pixel）を用いて予測信号を生成し、それに基づいて獲得される変換を意味する。また、変換プロセスは、正方形の同じ大きさを有するピクセルブロックに適用されることもあり、正方形ではない可変サイズのブロックにも適用されることができる。
【００４０】
量子化部１３０は、変換係数を量子化してエントロピエンコード部１９０に転送し、エントロピエンコード部１９０は、量子化された信号（量子化された変換係数に関する情報）をエンコードして、ビットストリームとして出力することができる。上記量子化された変換係数に関する情報は、残差情報と呼ばれることができる。量子化部１３０は、係数スキャン順（scan order）に基づいて、ブロックの形の量子化された変換係数を１次元ベクトルの形で再整列することができ、上記１次元ベクトルの形の量子化された変換係数に基づいて、上記量子化された変換係数に関する情報を生成することもできる。エントロピエンコード部１９０は、例えば指数ゴロム（exponential Golomb）、ＣＡＶＬＣ（Context-Adaptive Variable Length Coding）、ＣＡＢＡＣ（Context-Adaptive Binary Arithmetic Coding）などの様々なエンコード方法を実行することができる。エントロピエンコード部１９０は、量子化された変換係数のほか、ビデオ／映像復元に必要な情報（例えば構文要素（syntax elements）の値など）を共に、または別々にエンコードすることもできる。エンコードされた情報（例えば、エンコードされたビデオ／映像情報）は、ビットストリームの形でＮＡＬ（Network Abstraction Layer）ユニット単位で転送または記憶されることができる。上記ビットストリームは、ネットワークを介して転送されることができ、またはデジタル記憶媒体に記憶されることができる。ここで、ネットワークは、放送網、および/またはネットワークなどを含むことができ、デジタル記憶媒体は、ＵＳＢ、ＳＤ、ＣＤ、ＤＶＤ、Ｂｌｕ−ｒａｙ（登録商標）、ＨＤＤ、ＳＳＤなどの様々な記憶媒体を含むことができる。エントロピエンコード部１９０から出力された信号を伝送（送信）する伝送（送信）部（図示せず）および/または記憶する記憶部（図示せず）が、エンコード装置１００の内／外部のエレメントとして構成されることができ、または転送（送信）部は、エントロピエンコード部１９０の構成要素であり得る。
【００４１】
量子化部１３０から出力された量子化された変換係数は、予測信号を生成するために用いられることができる。例えば、量子化された変換係数に、ループ内の逆量子化部１４０および逆変換部１５０を介して逆量子化および逆変換を適用することにより、残差信号を復元することができる。加算部１５５は、復元された残差信号をインター予測部１８０またはイントラ予測部１８５から出力された予測信号に加えることで、復元（reconstructed）信号（復元ピクチャ、復元ブロック、復元サンプルアレイ）を生成することができる。スキップモードが適用された場合のように処理対象ブロックの残差がない場合、予測されたブロックが復元ブロックとして用いられることができる。加算部１５５は、復元部または復元ブロック生成部と呼ばれることができる。生成された復元信号は、現ピクチャ内の次の処理対象ブロックのイントラ予測のために用いられることができ、後述するようにフィルタリングを経て、次のピクチャのインター予測のために用いられることもできる。
【００４２】
フィルタリング部１６０は、復元信号にフィルタを適用して主観的／客観的画質を向上させることができる。例えば、フィルタリング部１６０は、復元ピクチャに様々なフィルタリング方法を適用して修正された（modified）復元ピクチャを生成することができ、上記修正された復元ピクチャを、メモリ１７０、具体的には、メモリ１７０のＤＰＢに記憶することができる。上記様々なフィルタリングの方法は、例えば、デブロック（ジブロッキング）フィルタリング、サンプル適応オフセット（sample adaptive offset）、適応ループフィルタ（adaptive loop filter）、両方向フィルタ（bilateral filter）などを含むことができる。フィルタリング部１６０は、各フィルタリング方法の説明で後述するように、フィルタリングに関する様々な情報を生成し、エントロピエンコード部１９０に伝達することができる。フィルタリングに関する情報は、エントロピエンコード部１９０でエンコードされてビットストリーム形態で出力されることができる。
【００４３】
メモリ１７０に転送された修正された復元ピクチャは、インター予測部１８０によって参照ピクチャとして用いられることができる。エンコード装置は、これを介して、インター予測が適用される場合、エンコード装置１００とデコード装置とにおける予測ミスマッチを回避することができ、符号化効率も向上させることができる。
【００４４】
メモリ１７０ＤＰＢは、修正された復元ピクチャをインター予測部１８０における参照ピクチャとして用いるために記憶することができる。メモリ１７０は、現ピクチャ内の動き情報が導出された（またはエンコードされた）ブロックの動き情報および/または既に復元されたピクチャ内のブロックの動き情報を記憶することができる。上記記憶された動き情報は、空間的周辺ブロックの動き情報または時間的周辺ブロックの動き情報として活用されるために、インター予測部１８０に伝達されることができる。メモリ１７０は、現ピクチャ内の復元されたブロックの復元サンプルを記憶することができ、イントラ予測部１８５に伝達することができる。
【００４５】
図２は、本発明が適用される実施形態として、ビデオ／映像信号のデコードが行われるデコード装置の概略ブロック図を示す。
【００４６】
図２を参照すると、デコード装置２００は、エントロピデコード部２１０、逆量子化部２２０、逆変換部２３０、加算部２３５、フィルタリング部２４０、メモリ２５０、インター予測部２６０およびイントラ予測部２６５を含んで構成されることができる。インター予測部２６０およびイントラ予測部２６５を合わせて予測部と呼ぶことができる。つまり、予測部は、インター予測部１８０およびイントラ予測部１８５を含むことができる。逆量子化部２２０、逆変換部２３０を合わせて残差処理部と呼ぶことができる。つまり、残差処理部は、逆量子化部２２０、逆変換部２３０を含むことができる。前述したエントロピデコード部２１０、逆量子化部２２０、逆変換部２３０、加算部２３５、フィルタリング部２４０、インター予測部２６０およびイントラ予測部２６５は、実施形態に応じて一つのハードウェアコンポーネント（例えば、デコーダまたはプロセッサ）によって構成されることができる。また、メモリ１７０は、ＤＰＢ（Decoded Picture Buffer）を含むことができ、デジタル記憶媒体によって構成されることもできる。
【００４７】
ビデオ／映像情報を含むビットストリームが入力されると、デコード装置２００は、図１のエンコード装置によるビデオ／映像情報が処理されたプロセスに対応して映像を復元することができる。例えば、デコード装置２００は、エンコード装置で適用された処理ユニットを用いてデコードを行うことができる。したがって、デコード処理ユニットは、例えば、コーディングユニットであり得、コーディングユニットは、コーディングツリーユニットまたは最大コーディングユニットから四分木構造および/または二分木構造に沿って分けられることができる。そして、デコード装置２００を介してデコードおよび出力された復元映像信号は、再生装置で再生されることができる。
【００４８】
デコード装置２００は、図１のエンコード装置から出力された信号をビットストリーム形態で受信することができ、受信した信号は、エントロピデコード部２１０を介してデコードすることができる。例えば、エントロピデコード部２１０は、上記ビットストリームを解析して映像復元（またはピクチャ復元）に必要な情報（例えば、ビデオ／映像情報）を導出することができる。例えば、エントロピデコード部２１０は、指数ゴロム符号化、ＣＡＶＬＣまたはＣＡＢＡＣなどのコーディング方法に基づいてビットストリーム内の情報をデコードし、映像復元に必要な構文要素の値、残差に関する変換係数の量子化された値を出力することができる。さらに詳細には、ＣＡＢＡＣエントロピデコード方法は、ビットストリームで各構文要素に対応するビン（bin）を受信し、デコード対象構文要素の情報ならびに周辺およびデコード対象ブロックのデコード情報、または前の段階でデコードされたシンボル/ビンの情報を用いてコンテキスト（context）モデルを決定し、決定したコンテキストモデルに基づいて、ビンの発生確率を予測して、ビンの算術復号（デコーディング）（arithmetic decoding）を実行して、各構文要素の値に対応するシンボルを生成することができる。このとき、ＣＡＢＡＣエントロピデコード方法は、コンテキストモデルを決定した後、次のシンボル／空のコンテキスト（文脈）モデルのためにデコードされたシンボル／ビンの情報を用いて、コンテキストモデルを更新することができる。エントロピデコード部２１1０でデコードされた情報のうちの予測に関する情報は、予測部（インター予測部２６０およびイントラ予測部２６５）に提供され、エントロピデコード部２１０から、エントロピデコードが行われた残差値、すなわち量子化された変換係数および関連パラメータ情報が、逆量子化部２２０に入力されることができる。また、エントロピデコード部２１０でデコードされた情報のうちのフィルタリングに関する情報は、フィルタリング部２４０に提供されることができる。一方、エンコード装置から出力された信号を受信する受信部（図示せず）は、デコード装置２００の内／外部エレメントとしてさらに構成されることがあり、または受信部は、エントロピデコード部２１０の構成要素であり得る。
【００４９】
逆量子化部２２０においては、量子化された変換係数を逆量子化して変換係数を出力することができる。逆量子化部２２０は、量子化された変換係数を２次元ブロックの形で再整列することができる。この場合、上記再整列は、エンコード装置で実行された係数スキャン順序に基づいて再整列を実行することができる。逆量子化部２２０は、量子化パラメータ（例えば、量子化段階サイズ情報）を用いて、量子化された変換係数の逆量子化を行い、変換係数（transform coefficient）を獲得することができる。
【００５０】
逆変換部２３０においては、変換係数を逆変換して残差信号（残差ブロック、残差サンプルアレイ）を獲得することになる。
【００５１】
予測部は、現ブロックの予測を行い、上記現ブロックの予測サンプルを含む予測されたブロック（predicted block）を生成することができる。予測部は、エントロピデコード部２１０から出力された上記予測に関する情報に基づいて、上記現ブロックにイントラ予測が適用されるか、またはインター予測が適用されるかを決定することができ、具体的なイントラ／インター予測モードを決定することができる。
【００５２】
イントラ予測部２６５は、現ピクチャ内のサンプルを参照して、現ブロックを予測することができる。上記参照されるサンプルは、予測モードに応じて上記現ブロックの周辺（neighbor）に位置することができ、または離れて位置することもできる。イントラ予測において、予測モードは、複数の非方向性モードおよび複数の方向性モードを含むことができる。イントラ予測部２６５は、周辺ブロックに適用された予測モードを用いて、現ブロックに適用される予測モードを決定することもできる。
【００５３】
インター予測部２６０は、参照ピクチャ上で動きベクトルによって特定される参照ブロック（参照サンプルのアレイ）に基づいて、現ブロックの予測されたブロックを導出することができる。このとき、インター予測モードで転送される動き情報の量を減らすために周辺のブロックと現ブロックとの間の動き情報の相関性に基づいて、動き情報を、ブロック、サブブロック、またはサンプル単位で予測することができる。上記動き情報は、動きベクトルおよび参照ピクチャインデックスを含むことができる。上記動き情報は、インター予測方向（Ｌ０予測、Ｌ１予測、Ｂｉ予測など）の情報をさらに含むことができる。インター予測の場合、周辺ブロックは、現ピクチャ内に存在する空間的周辺ブロック（spatial neighboring block）と参照ピクチャに存在する時間的周辺ブロック（temporal neighboring block）とを含むことができる。例えば、インター予測部２６０は、周辺ブロックに基づいて動き情報候補リストを構成し、受信した候補の選択情報に基づいて、上記現ブロックの動きベクトルおよび/または参照ピクチャのインデックスを導出することができる。様々な予測モードに基づいて、インター予測が行われることができ、上記予測に関する情報は、上記現ブロックのインター予測のモードを指示する情報を含むことができる。
【００５４】
加算部２３５は、獲得された残差信号をインター予測部２６０またはイントラ予測部２６５から出力された予測信号（予測されたブロック、予測サンプルアレイ）に加えることで、復元信号（復元ピクチャ、復元ブロック、復元サンプルアレイ）を生成することができる。スキップモードが適用された場合のように処理対象ブロックの残差がない場合、予測されたブロックが復元ブロックとして用いられることができる。
【００５５】
加算部２３５は、復元部または復元ブロック生成部と呼ばれることができる。生成された復元信号は、現ピクチャ内の次の処理対象ブロックのイントラ予測のために用いられることができ、後述するようにフィルタリングを経て、次のピクチャのインター予測のために用いられることもできる。
【００５６】
フィルタリング部２４０は、復元信号にフィルタリングを適用して主観的／客観的画質を向上させることができる。例えば、フィルタリング部２４０は、復元ピクチャに様々なフィルタリング方法を適用して修正された（modified）復元ピクチャを生成することができ、上記修正された復元ピクチャを、メモリ２５０、具体的には、メモリ２５０のＤＰＢに転送することができる。上記様々なフィルタリングの方法は、例えば、デブロックフィルタリング、サンプル適応オフセット（sample adaptive offset）、適応ループフィルタ（adaptive loop filter）、両方向フィルタ（bilateral filter）などを含むことができる。
【００５７】
メモリ２５０のＤＰＢに記憶された（修正された）復元ピクチャは、インター予測部２６０によって参照ピクチャとして用いられることができる。メモリ２５０は、現ピクチャ内の動き情報が導出された（またはデコードされた）ブロックの動き情報および/または既に復元されたピクチャ内のブロックの動き情報を記憶することができる。上記記憶された動き情報は、空間的周辺ブロックの動き情報または時間的周辺ブロックの動き情報として活用されるために、インター予測部２６０に伝達されることができる。メモリ１７０は、現ピクチャ内の復元されたブロックの復元サンプルを記憶することができ、イントラ予測部２６５に伝達することができる。
【００５８】
本明細書において、エンコード装置１００のフィルタリング部１６０、インター予測部１８０およびイントラ予測部１８５で説明された実施形態は、それぞれデコード装置２００のフィルタリング部２４０、インター予測部２６０およびイントラ予測部２６５にも同一または対応するように適用されることができる。
【００５９】
Ｂｌｏｃｋ  Ｐａｒｔｉｔｉｏｎｉｎｇ
【００６０】
本文書に係るビデオ／映像（ビデオ）コーディング方法は、様々な詳細な技術に基づいて行うことができ、それぞれの詳細な技術を概略的に説明すると、次の通りである。以下で説明される技術は、前述した、および/または後述されるビデオ／映像のエンコード／デコードの手順における予測、残差処理（（逆）変換、（逆）量子化など）、構文要素のコーディング、フィルタリング、パーティショニング／分割などの関連の手続きに関連付けることができることは、当業者にとって自明である。
【００６１】
本文書に沿ったブロックパーティショニング手順は、前述したエンコード装置の映像分割部１１０で実行され、パーティショニング関連情報が、エントロピエンコード部１９０により（エンコード）処理され、ビットストリームの形でデコード装置に伝達されることができる。デコード装置のエントロピデコード部２１０は、上記ビットストリームから獲得した上記パーティショニング関連情報に基づいて、現ピクチャのブロックパーティショニング構造を導出し、これを基に映像デコードのための一連の手順（例えば、予測、残差処理、ブロック復元、イン（リン）ループフィルタリングなど）を実行することができる。
【００６２】
Ｐａｒｔｉｔｉｏｎｉｎｇ  ｏｆ  ｐｉｃｔｕｒｅ  ｉｎｔｏ  ＣＴＵｓ
【００６３】
ピクチャは、コーディングツリーユニット（ＣＴＵｓ）のシーケンスに分割される（divided into a sequence）ことができる。ＣＴＵは、コーディングツリーブロック（ＣＴＢ）に対応することができる。あるいは、ＣＴＵは、ルマサンプルのコーディングツリーブロックと、対応するクロマサンプルの二つのコーディングツリーブロックと、を含むことができる。つまり、三つのサンプルアレイを含むピクチャに対し、ＣＴＵは、ルマサンプルのＮｘＮブロックとクロマサンプルの二つの対応ブロックとを含むことができる。
【００６４】
コーディングおよび予測などのためのＣＴＵの最大許容サイズは、変換のためのＣＴＵの最大許容サイズと異なることがある。たとえば、ＣＴＵ内のルマブロックの最大許容サイズは、１２８ｘ１２８であり得る。
【００６５】
Ｐａｒｔｉｔｉｏｎｉｎｇ  ｏｆ  ｔｈｅ  ＣＴＵｓ  ｕｓｉｎｇ  ａ  ｔｒｅｅ  ｓｔｒｕｃｔｕｒｅ
【００６６】
ＣＴＵは、四分木（Quad-Tree、ＱＴ）構造に基づいてＣＵに分割されることができる。四分木構造は、クォーターナリ（quaternary）ツリー構造と呼ばれることができる。これは、様々なローカル（局地的）特徴（local characteristic）を反映するためである。一方、本文書においては、ＣＴＵは、四分木だけでなく、二分木（Binary-Tree、ＢＴ）および三分木（Ternary-Tree、ＴＴ）を含むマルチタイプのツリー構造の分割に基づいて分割されることができる。以下、ＱＴＢＴ構造とは、四分木および二分木ベースの分割構造を含むことができ、ＱＴＢＴＴＴとは、四分木、二分木および三分木ベースの分割構造を含むことができる。あるいは、ＱＴＢＴ構造は、四分木、二分木および三分木ベースの分割構造を含むこともできる。コーディングツリー構造において、ＣＵは、正方形または長方形の形状を有することができる。ＣＴＵは、まず、四分木構造に分割されることができる。以後、四分木構造のリーフノードは、マルチタイプのツリー構造によってさらに分割されることができる。
【００６７】
図３は、本発明が適用されることができる実施形態として、マルチタイプのツリー構造の一例を示す図である。
【００６８】
本発明の一実施形態において、マルチタイプのツリー構造は、図３に示すような４つの分割タイプを含むことができる。上記４つの分割タイプは、垂直二分割（バイナリ分割）（Vertical Binary Splitting、ＳＰＬＩＴ＿ＢＴ＿ＶＥＲ）、水平二分割（Horizontal Binary Splitting、ＳＰＬＩＴ＿ＢＴ＿ＨＯＲ）、垂直三分割（ターナーリ分割）（Vertical Ternary Splitting、ＳＰＬＩＴ＿ＴＴ＿ＶＥＲ）、水平三分割（Horizontal Ternary Splitting、ＳＰＬＩＴ＿ＴＴ＿ＨＯＲ）を含むことができる。上記マルチタイプのツリー構造のリーフノードは、ＣＵと呼ばれることができる。このようなＣＵは、予測および変換手順のために用いられることができる。本文書において、一般的に、ＣＵ、ＰＵ、ＴＵは、同じブロックサイズを有することができる。ただし、最大許容変換の長さ（maximum supported transform length）がＣＵのカラー成分（colour component）の幅または高さより小さい場合には、ＣＵとＴＵとが互いに異なるブロックサイズを有することができる。
【００６９】
図４は、本発明が適用されることができる実施形態として、マルチタイプのツリーを伴う四分木（quadtree with nested multi-type tree）構造のパーティション分割情報のシグナリングメカニズムを例示する図である。
【００７０】
ここで、ＣＴＵは、四分木のルート（root）として扱われ、四分木構造で初めてパーティショニングされる。各四分木のリーフノードは、以後、マルチタイプのツリー構造で、さらにパーティショニングされることができる。マルチタイプのツリー構造において、第１フラグ（a first flag、例えば、ｍｔｔ＿ｓｐｌｉｔ＿ｃｕ＿ｆｌａｇ）は、そのノードが追加的にパーティショニングされるかを指示するためにシグナリングされる。そのノードが追加的にパーティショニングされる場合、第２フラグ（a second flag、例えば、ｍｔｔ＿ｓｐｌｉｔ＿ｃｕ＿ｖｅｒｔｉｃｌａ＿ｆｌａｇ）が分割方向（splitting direction）を指示するためにシグナリングされることができる。その後、第３フラグ（a third flag、例えば、ｍｔｔ＿ｓｐｌｉｔ＿ｃｕ＿ｂｉｎａｒｙ＿ｆｌａｇ）が、分割タイプが二分割であるか三（ターナリ）分割であるかを指示するためにシグナリングされることができる。例えば、上記ｍｔｔ＿ｓｐｌｉｔ＿ｃｕ＿ｖｅｒｔｉｃａｌ＿ｆｌａｇおよび上記ｍｔｔ＿ｓｐｌｉｔ＿ｃｕ＿ｂｉｎａｒｙ＿ｆｌａｇに基づいて、ＣＵのマルチタイプのツリー分割モード（multi-type tree splitting mode、ＭｔｔＳｐｌｉｔＭｏｄｅ）が、次の表１のように導出されることができる。
【００７１】
＜表１＞
【表１】
2021516502.tif 000003
【００７２】
図５は、本発明が適用されることができる実施形態として、四分木および入れ子マルチタイプのツリー（quadtree and nested multi-type tree）構造に基づいてＣＴＵをマルチＣＵに分割する方法を例示する図である。
【００７３】
ここで、太線のブロック辺（ボールドブロックエッジ）（bold block edges）は、四分木パーティショニングを、残りのエッジは、マルチタイプのツリーパーティショニングを示す。マルチタイプのツリーを伴った四分木のパーティションは、コンテンツ適応（アダプタテッド）コーディングツリー構造を提供することができる。ＣＵは、コーディングブロック（ＣＢ）に対応することができる。あるいは、ＣＵは、ルマサンプルのコーディングブロックと、対応するクロマサンプルの二つのコーディングブロックと、を含むことができる。ＣＵのサイズは、ＣＴＵだけ大きいこともあり、またはルマサンプル単位で４ｘ４ほど小さいこともある。たとえば、４：２：０カラーフォーマット（ｏｒクロマフォーマット）である場合、最大クロマＣＢサイズは６４ｘ６４であり、最小クロマＣＢサイズは２ｘ２であり得る。
【００７４】
本文書において、例えば、最大許容ルマＴＢサイズは６４ｘ６４であり、最大許容クロマＴＢサイズは３２ｘ３２であり得る。上記ツリー構造に沿って分割されたＣＢの幅または高さが最大変換幅または高さより大きい場合、そのＣＢは、自動的に（または暗黙的に）水平および垂直方向のＴＢサイズ制限を満たすまで分割されることができる。
【００７５】
一方、マルチタイプのツリーを伴った四分木コーディングツリースキームのために、以下のパラメータがＳＰＳ構文（syntax：シンタックス）要素で定義および識別されることができる。
【００７６】
−ＣＴＵ  ｓｉｚｅ：四分木のルートノード（quaternary tree root node）サイズ
【００７７】
−ＭｉｎＱＴＳｉｚｅ：四分木のリーフノード（quaternary tree leaf node）の最小許容サイズ
【００７８】
−ＭａｘＢｔＳｉｚｅ：二分木のルートノード（binary tree root node）の最大許容サイズ
【００７９】
−ＭａｘＴｔＳｉｚｅ：三分木のルートノード（ternary tree root node）の最大許容サイズ
【００８０】
−ＭａｘＭｔｔＤｅｐｔｈ：四分木リーフ（quadtree leaf）で分割されるマルチタイプのツリー（multi-type tree）の最大に許容される層の深さ
【００８１】
−ＭｉｎＢｔＳｉｚｅ：二分木のリーフノード（binary tree leaf node）の最小許容サイズ
【００８２】
−ＭｉｎＴｔＳｉｚｅ：三分木のリーフノード（ternary tree leaf node）の最大許容サイズ
【００８３】
マルチタイプのツリーを伴った四分木コーディングツリー構造の一例として、ＣＴＵサイズは、１２８ｘ１２８ルマサンプルおよび二つの対応するクロマサンプルの６４ｘ６４ブロックに設定されることができる（４：２：０クロマフォーマットで）。この場合、ＭｉｎＯＴＳｉｚｅは１６ｘ１６に設定され、ＭａｘＢｔＳｉｚｅは１２８ｘ１２８に設定され、ＭａｘＴｔＳｚｉｅは６４ｘ６４に設定され、ＭｉｎＢｔＳｉｚｅおよびＭｉｎＴｔＳｉｚｅ（for both width and height）は４ｘ４で、そしてＭａｘＭｔｔＤｅｐｔｈは４に設定されることができる。四分木パーティショニングは、ＣＴＵに適用されて四分木のリーフノードを生成することができる。四分木のリーフノードは、リーフＱＴノードと呼ばれることができる。四分木のリーフノードは、１６ｘ１６サイズ（すなわち、ｔｈｅ  ＭｉｎＯＴＳｉｚｅ）から１２８ｘ１２８サイズ（すなわち、ｔｈｅ  ＣＴＵ  ｓｉｚｅ）を有することができる。リーフＱＴノードが１２８ｘ１２８である場合、さらに、二分木／三分木に分割されないことがある。これは、この場合、分割されてもＭａｘＢｔｓｉｚｅおよびＭａｘＴｔｓｚｉｅ（すなわち、６４ｘ６４）を超過するからである。それ以外の場合、リーフＱＴノードは、マルチタイプのツリーにさらに分割されることができる。したがって、リーフＱＴノードは、マルチタイプのツリーのルートノード（root node）であり、リーフＱＴノードは、マルチタイプのツリーデプス（ｍｔｔＤｅｐｔｈ）０の値を有することができる。マルチタイプのツリーデプスがＭａｘＭｔｔｄｅｐｔｈ（例えば、４）に到達した場合、これ以上追加の分割は考慮されないことがある。マルチタイプのツリーノードの幅が、ＭｉｎＢｔＳｉｚｅと同じで、２ｘＭｉｎＴｔＳｉｚｅより小さいか等しいとき、それ以上追加の水平分割は考慮されないことがある。マルチタイプのツリーノードの高さが、ＭｉｎＢｔＳｉｚｅと同じで、２ｘＭｉｎＴｔＳｉｚｅより小さいか等しいとき、それ以上追加の垂直分割は考慮されないことがある。
【００８４】
図６は、本発明が適用されることができる実施形態として、三分木（ternary-tree）分割を制限する方法を例示する図である。
【００８５】
図６を参照すると、ハードウェアデコーダにおける６４ｘ６４ルマブロックおよび３２ｘ３２クロマパイプラインの設計を可能にするために、ＴＴ分割は、特定の場合に制限されることができる。例えば、ルマコーディングブロックの幅または高さが予め設定された特定の値（例えば、３２、６４）より大きい場合、図６に示すように、ＴＴ分割が制限されることができる。
【００８６】
本文書において、コーディングツリースキームは、ルマおよびクロマブロックが個別（separate）ブロックのツリー構造を有することをサポートすることができる。ＰおよびＢスライスに対し、一つのＣＴＵ内、ルマおよびクロマＣＴＢは、同じコーディングツリー構造を有するように制限されることができる。しかしながら、Ｉスライスに対して、ルマおよびクロマブロックは、互いに別々のブロックツリー構造を有することができる。個別のブロックツリーモードが適用される場合、ルマＣＴＢは、特定のコーディングのツリー構造に基づいてＣＵに分割され、クロマＣＴＢは、他のコーディングツリー構造に基づいて、クロマＣＵに分割されることができる。これは、Ｉスライス内ＣＵは、ルマ成分のコーディングブロックまたは２つクロマ成分のコーディングブロックで構成され、ＰまたはＢスライスのＣＵは、三つの色成分のブロックで構成されることができることを意味することができる。
【００８７】
前述した“Ｐａｒｔｉｔｉｏｎｉｎｇ  ｏｆ  ｔｈｅ  ＣＴＵｓ  ｕｓｉｎｇ  ａ  ｔｒｅｅ  ｓｔｒｕｃｔｕｒｅ”で、マルチタイプツリーを伴った四分木コーディングツリー構造について説明したが、ＣＵが分割される構造は、これに限定されない。たとえば、ＢＴ構造およびＴＴ構造は、マルチ（多数の）分割ツリー（Multiple Partitioning Tree、ＭＰＴ）の構造に含まれる概念で解釈されることができ、ＣＵは、ＱＴ構造およびＭＰＴ構造を介して分割されると解釈することができる。ＱＴ構造およびＭＰＴ構造を介してＣＵが分割される一例において、ＱＴ構造のリーフノードがいくつのブロックに分割されるかについての情報を含む構文要素（例えば、ＭＰＴ＿ｓｐｌｉｔ＿ｔｙｐｅ）と、ＱＴ構造のリーフノードが垂直および水平のうちのどちらの方向に分割されるかについての情報を含む構文要素（例えば、ＭＰＴ＿ｓｐｌｉｔ＿ｍｏｄｅ）と、がシグナリングされることで、分割構造が決定されることができる。
【００８８】
さらに他の例において、ＣＵは、ＱＴ構造、ＢＴ構造またはＴＴ構造と別の方法で分割されることができる。つまり、ＱＴ構造に基づいて、下位デプスのＣＵが上位デプスのＣＵの１/４サイズに分割されたり、ＢＴ構造に応じて、下位デプスのＣＵが上位デプスのＣＵの１/２サイズに分割されたり、ＴＴ構造に基づいて下位デプスのＣＵが上位デプスのＣＵの１/４または１/２のサイズに分割されるものとは異なり、下位デプスのＣＵは、場合によって、親デプスのＣＵの１/５、１/３、３/８、３/５、２/３または５/８のサイズに分割されることができ、ＣＵが分割される方法は、これに限定されない。
【００８９】
ツリーノードブロックの部分（a portion）が下部（bottom）または右（right）ピクチャ境界を超える（exceeds）場合、そのツリーノードブロックは、すべてのコーディングされたＣＵのすべてのサンプルが上記ピクチャ境界内に位置するように制限されることができる。この場合、例えば、次のような分割ルールが適用されることができる。
【００９０】
−  ツリーノードブロック（tree node block）の一部（a portion）が左側および右側ピクチャ境界のすべてを超える場合、
【００９１】
−  上記ブロックがＱＴノードであり、上記ブロックの大きさが最小ＱＴサイズより大きい場合、上記ブロックは、ＱＴ分割モードで強制分割される。
【００９２】
−  そうでなければ、上記ブロックは、水平二分割（Horizontal Binary Splitting、ＳＰＬＩＴ＿ＢＴ＿ＨＯＲ）モードで強制分割される。
【００９３】
−  そうではなく、ツリーノードブロック（tree node block）の一部（a portion）が下部ピクチャ境界を超えた場合、
【００９４】
−  上記ブロックがＱＴノードであり、上記ブロックのサイズが最小ＱＴサイズより大きく、上記ブロックのサイズが最大ＢＴサイズより大きい場合、上記ブロックは、ＱＴ分割モードで強制分割される。
【００９５】
−  そうではなく、上記ブロックがＱＴノードであり、上記ブロックの大きさが最小ＱＴサイズより大きく、上記ブロックのサイズが最大ＢＴサイズより小さいか等しい場合、上記ブロックは、ＱＴ分割モードまたは水平二分割（Horizontal Binary Splitting 、ＳＰＬＩＴ＿ＢＴ＿ＨＯＲ）モードで強制分割される。
【００９６】
−  そうでなければ（上記ブロックがＢＴＴノードまたは上記ブロックのサイズが最小ＱＴサイズより小さいか等しい）、上記ブロックは、水平二分割（Horizontal Binary Splitting、ＳＰＬＩＴ＿ＢＴ＿ＨＯＲ）モードで強制分割される。
【００９７】
−  そうではなく、ツリーノードブロック（tree node block）の一部（a portion）が右側ピクチャ境界のすべてを超える場合、
【００９８】
−  上記ブロックがＱＴノードであり、上記ブロックのサイズが最小ＱＴサイズより大きく、上記ブロックのサイズが最大ＢＴサイズより大きい場合、上記ブロックは、ＱＴ分割モードで強制分割される。
【００９９】
−  そうではなく、上記ブロックがＱＴノードであり、ブロックのサイズが最小ＱＴサイズより大きく、上記ブロックのサイズが最大ＢＴサイズより小さいか等しい場合、上記ブロックは、ＱＴ分割モードまたは垂直二分割（Vertical Binary Splitting、ＳＰＬＩＴ＿ＢＴ＿ＶＥＲ）モードで強制分割される。
【０１００】
−  そうでなければ（上記ブロックがＢＴＴノードであるかまたは上記ブロックのサイズが最小ＱＴサイズより小さいか等しい）、上記ブロックは、垂直二分割（Vertical Binary Splitting、ＳＰＬＩＴ＿ＢＴ＿ＶＥＲ）モードで強制分割される。
【０１０１】
一方、前述したマルチタイプのツリーを伴った四分木コーディングブロック構造は、非常に柔軟なブロックパーティショニングの構造を提供することができる。マルチタイプのツリーがサポートされる分割タイプのため、他の分割パターンが、場合によって、潜在的に同じコーディングブロック構造の結果をもたらす。このような冗長な（redundant）分割パターンの発生を制限することにより、パーティショニング情報のデータ量を削減することができる。下の図を参照して説明する。
【０１０２】
図７は、本発明が適用されることができる実施形態として、二分木分割および三分木分割で発生することができる冗長分割パターンを例示する図である。
【０１０３】
図７に示すように、２段階レベルの一方向の連続する二分割（two levels of consecutive binary splits in one direction）は、三分割の後の中心パーティションの二分割と同じコーディングブロック構造を有する。このような場合、三分木分割の中心パーティションの二分木分割（in the given direction）は、制限されることができる。このような制限は、すべてのピクチャのＣＵに対し適用することができる。このような特定の分割が制限される場合、対応する構文要素のシグナリングは、このような制限された場合を反映して修正されることができ、これを通じてパーティショニングのためにシグナリングされるビット数を減らすことができる。例えば、図７に示された例のように、ＣＵの中心パーティションの二分木分割が制限される場合、分割が二分割であるか三分割であるかを指すｍｔｔ＿ｓｐｌｉｔ＿ｃｕ＿ｂｉｎａｒｙ＿ｆｌａｇ構文要素はシグナリングされず、その値は、デコーダによって０と推論されることがある。
【０１０４】
予測（prediction）
【０１０５】
デコードが実行される現処理ユニットを復元するために、現処理ユニットが含まれる現ピクチャまたは他のピクチャのデコードされた部分を用いることができる。
【０１０６】
復元に現ピクチャのみを用いる、すなわち、画面内予測のみを実行するピクチャ（スライス）をイントラピクチャまたはＩピクチャ（スライス）、各ユニットを予測するために最大１つの動きベクトルおよびリファレンスインデックスを用いるピクチャ（スライス）を予測ピクチャ（predictive picture）またはＰピクチャ（スライス）、最大２つの動きベクトルおよびリファレンスインデックスを用いるピクチャ（スライス）を双方向（ペア）予測ピクチャ（Bi-predictive picture）またはＢピクチャ（スライス）と呼ぶことができる。
【０１０７】
イントラ予測は、同じデコードされたピクチャ（またはスライス）のデータ要素（例えば、サンプル値など）から現在の処理ブロックを導出する予測方法を意味する。つまり、現ピクチャ内の復元された領域を参照して、現在の処理ブロックのピクセル値を予測する方法を意味する。
【０１０８】
以下、インター予測について、さらに注意深く見る。
【０１０９】
インター予測（Inter prediction）（または画面間予測）
【０１１０】
インター予測は、現ピクチャ以外のピクチャのデータ要素（例えば、サンプル値または動きベクトルなど）に基づいて、現処理ブロックを導出する予測方法を意味する。つまり、現ピクチャ以外の復元された他のピクチャ内の復元された領域を参照して、現処理ブロックのピクセル値を予測する方法を意味する。
【０１１１】
インター予測（またはピクチャ間予測）は、ピクチャ間に存在する冗長性（重複性）を除去する技術で、ほとんど動き推定（motion estimation）および動き補償（motion compensation）を介して行われる。
【０１１２】
本発明は、先に図１および図２で説明したインター予測方法の詳細な技術を説明するもので、デコーダの場合、後述する図１０のインター予測ベースのビデオ／映像をデコードする方法および図１１のデコード装置内のインター予測部で示すことができる。加えて、エンコーダの場合、後述する図８のインター予測ベースのビデオ／映像のエンコード方法および図９のエンコード装置内のインター予測部で示すことができる。さらに、図８および図９によってエンコードされたデータは、ビットストリームの形態で記憶されることができる。
【０１１３】
エンコード装置/デコード装置の予測部は、ブロック単位でインター予測を実行して、予測サンプルを導出することができる。インター予測は、現ピクチャ以外のピクチャのデータ要素（例えば、サンプル値、または動き情報など）に依存する方法で導出される予測を示すことができる。現ブロックにインター予測が適用される場合、参照ピクチャのインデックスが示す参照ピクチャ上で動きベクトルによって特定される参照ブロック（参照サンプルアレイ）に基づいて、現ブロックの予測されたブロック（予測サンプルアレイ）を導出することができる。
【０１１４】
このとき、インター予測モードで転送される動き情報の量を減らすために、周辺ブロックと現ブロックとの間の動き情報の相関性に基づいて、現ブロックの動き情報をブロック、サブブロック、またはサンプル単位で予測することができる。上記動き情報は、動きベクトルおよび参照ピクチャインデックスを含むことができる。上記動き情報は、インター予測タイプ（Ｌ０予測、Ｌ１予測、Ｂｉ予測など）の情報をさらに含むことができる。
【０１１５】
インター予測が適用される場合、周辺ブロックは、現ピクチャ内に存在する空間的周辺ブロック（spatial neighboring block）と参照ピクチャに存在する時間的周辺ブロック（temporal neighboring block）とを含むことができる。上記参照ブロックを含む参照ピクチャと上記時間的周辺ブロックを含む参照ピクチャとは、同じことも有り得、異なることもある。上記時間的周辺ブロックは、コロケート参照ブロック（collocated reference block）、コロケートＣＵ（ｃｏｌＣＵ）などの名で呼ばれることができ、上記時間的周辺ブロックを含む参照ピクチャは、コロケートピクチャ（collocated picture、ｃｏｌＰｉｃ）と呼ばれることもできる。たとえば、現ブロックの周辺ブロックに基づいて動き情報候補リストが構成されることがあり、上記現ブロックの動きベクトルおよび/または参照ピクチャのインデックスを導出するためにどのような候補が選択（使用）されるかを指示するフラグまたはインデックス情報がシグナリングされることができる。
【０１１６】
様々な予測モードに基づいて、インター予測が行われることができ、例えば、スキップモードおよびマージモードの場合、現ブロックの動き情報は、選択された周辺ブロックの動き情報と同じであり得る。スキップモードの場合、マージモードとは異なり、残差信号が転送されないことがある。動き情報予測（Motion Vector Prediction、ＭＶＰ）モードの場合、選択された周辺ブロックの動きベクトルを動きベクトル予測子（motion vector predictor）として用いて、動きベクトル差分（motion vector difference）が、シグナリングされることができる。この場合、上記動きベクトル予測子と動きベクトル差分との合（計）を用いて上記現ブロックの動きベクトルを導出することができる。
【０１１７】
図８および図９は、本発明の実施形態に係るインター予測ベースビデオ／映像エンコード方法および本発明の実施形態に係るエンコード装置内インター予測部を例示する図である。
【０１１８】
図８および図９を参照すると、Ｓ８０１は、エンコード装置のインター予測部１８０によって実行されることができ、Ｓ８０２は、エンコード装置の残差処理部によって実行されることができる。具体的には、Ｓ８０２は、エンコード装置の減算部１１５によって実行されることができる。Ｓ８０３で、予測情報は、インター予測部１８０によって導出され、エントロピエンコード部１９０によってエンコードされることができる。Ｓ８０３で、残差情報は、残差処理部によって導出され、エントロピエンコード部１９０によってエンコードされることができる。上記残差情報は、上記残差サンプルに関する情報である。上記残差情報は、上記残差サンプルに対する量子化された変換係数に関する情報を含むことができる。
【０１１９】
前述したように、上記残差サンプルは、エンコード装置の変換部１２０を介して変換係数として導出され、上記変換係数は、量子化部１３０を介して量子化された変換係数として導出されることができる。上記量子化された変換係数に関する情報が、残差コーディング手順を介してエントロピエンコード部１９０でエンコードされることができる。
【０１２０】
エンコード装置は、現ブロックのインター予測を行う（Ｓ８０１）。エンコード装置は、現ブロックのインター予測モードおよび動き情報を導出し、上記現ブロックの予測サンプルを生成することができる。ここで、インター予測モードの決定、動き情報の導出および予測サンプルの生成手順は、同時に実行されることもあり、いずれか１つの手順が、他の手順より先に実行されることもできる。たとえば、エンコード装置のインター予測部１８０は、予測モード決定部１８１、動き情報導出部１８２、予測サンプル導出部１８３を含むことができ、予測モード決定部１８１で、上記現ブロックの予測モードを決定し、動き情報導出部１８２において、上記現ブロックの動き情報を導出し、予測サンプル導出部１８３において、上記現ブロックの動きサンプルを導出することができる。
【０１２１】
たとえば、エンコード装置のインター予測部１８０は、動き推定（motion estimation）を介して参照ピクチャの一定領域（サーチエリア）内において、上記現ブロックと類似のブロックをサーチし、上記現ブロックとの差が最小または一定基準以下の参照ブロックを導出することができる。これに基づいて、上記参照ブロックが位置する参照ピクチャを指す参照ピクチャのインデックスを導出し、上記参照ブロックと上記現ブロックとの位置の差に基づいて、動きベクトルを導出することができる。エンコード装置は、様々な予測モードのうちの上記現ブロックに対して適用されるモードを決定することができる。エンコード装置は、上記様々な予測モードに対するＲＤ  ｃｏｓｔを比較し、上記現ブロックの最適な予測モードを決定することができる。
【０１２２】
たとえば、エンコード装置は、上記現ブロックにスキップモードまたはマージモードが適用される場合、後述するマージ候補リストを構成し、上記マージ候補リストに含まれるマージ候補が指す参照ブロックのうちの上記現ブロックとの差が最小または一定の基準以下である参照ブロックを導出することができる。この場合、上記導出された参照ブロックと関連付けられているマージ候補が選択され、上記選択されたマージ候補を指すマージインデックス情報が生成され、デコード装置にシグナリングされることができる。上記選択されたマージ候補の動き情報を用いて、上記現ブロックの動き情報が導出されることがある。
【０１２３】
他の例として、エンコード装置は、上記現ブロックに（Ａ）ＭＶＰモードが適用される場合、後述する（Ａ）ＭＶＰ候補リストを構成し、上記（Ａ）ＭＶＰ候補リストに含まれるｍｖｐ（motion vector predictor）候補のうちの選択されたｍｖｐ候補の動きベクトルを、上記現ブロックのｍｖｐとして用いることができる。この場合、例えば、前述した動き推定によって導出された参照ブロックを指す動きベクトルが上記現ブロックの動きベクトルとして用いられることができ、上記ｍｖｐ候補のうちの上記現ブロックの動きベクトルとの差が最も小さい動きベクトルを有するｍｖｐ候補が、上記選択されたｍｖｐ候補となることができる。上記現ブロックの動きベクトルから上記ｍｖｐを引いた差分であるＭＶＤ（Motion Vector Difference）が導出されることができる。この場合、上記ＭＶＤに関する情報がデコード装置にシグナリングされることができる。また、（Ａ）ＭＶＰモードが適用される場合、上記参照ピクチャインデックスの値は、参照ピクチャインデックス情報で構成され、別途に、上記デコード装置にシグナリングされることができる。
【０１２４】
エンコード装置は、上記予測サンプルに基づいて残差サンプルを導出することができる（Ｓ８０２）。エンコード装置は、上記現ブロックのオリジナルサンプルと上記予測サンプルとの比較を通じて、上記残差サンプルを導出することができる。
【０１２５】
エンコード装置は、予測情報および残差情報を含む映像情報をエンコードする（Ｓ８０３）。エンコード装置は、エンコードされた映像情報をビットストリームの形態で出力することができる。上記予測情報は、上記予測手順に関連する情報で、予測モード情報（例えば、ｓｋｉｐ  ｆｌａｇ、ｍｅｒｇｅ  ｆｌａｇ  ｏｒ  ｍｏｄｅ  ｉｎｄｅｘなど）および動き情報に関する情報を含むことができる。上記動き情報に関する情報は、動きベクトルを導出するための情報である候補の選択情報（例えば、ｍｅｒｇｅ  ｉｎｄｅｘ、ｍｖｐ  ｆｌａｇ  ｏｒ  ｍｖｐ  ｉｎｄｅｘ）を含むことができる。また、上記動き情報に関する情報は、前述したＭＶＤに関する情報および/または参照ピクチャのインデックス情報を含むことができる。
【０１２６】
また、上記動き情報に関する情報は、Ｌ０予測、Ｌ１予測、または双方向（bi）予測が適用されるかどうかを示す情報を含むことができる。上記残差情報は、上記残差サンプルに関する情報である。上記残差情報は、上記残差サンプルに対する量子化された変換係数に関する情報を含むことができる。
【０１２７】
出力されたビットストリームは、（デジタル）記憶媒体に記憶されてデコード装置に伝達されることができ、またはネットワークを介してデコード装置に伝達されることもできる。
【０１２８】
一方、前述したように、エンコード装置は、上記参照サンプルおよび上記残差サンプルに基づいて復元ピクチャ（復元サンプルおよび復元ブロックを含む）を生成することができる。これは、デコード装置で実行されるのと同じ予測結果をエンコード装置で導出するためであり、これを介してコーディング（符号化）効率を高めることができるからである。したがって、エンコード装置は、復元ピクチャ（または復元サンプル、復元ブロック）をメモリに記憶し、インター予測のための参照ピクチャとして活用することができる。上記復元ピクチャにインループフィルタリング手続きなどがさらに適用されることができることは、前述した通りである。
【０１２９】
図１０および図１１は、本発明の実施形態に係るインター予測ベースのビデオ／映像をデコードする方法、および本発明の実施形態に係るデコード装置内インター予測部を例示する図である。
【０１３０】
図１０および図１１を参照すると、デコード装置は、上記エンコード装置で実行された動作と対応する動作を実行することができる。デコード装置は、受信した予測情報に基づいて、現ブロックに対して予測を行い、予測サンプルを導出することができる。
【０１３１】
Ｓ１００１ないしＳ１００３は、デコード装置のインター予測部２６０によって実行されることができ、Ｓ１００４の残差情報は、デコード装置のエントロピデコード部２１０によってビットストリームから獲得されることができる。デコード装置の残差処理部は、上記残差情報に基づいて、現ブロックの残差サンプルを導出することができる。具体的には、上記残差処理部の逆量子化部２２０は、上記残差情報に基づいて導出された量子化された変換係数に基づいて、逆量子化を実行して変換係数を導出し、上記残差処理部の逆変換部２３０は、上記変換係数の逆変換を実行し、上記現ブロックの残差サンプルを導出することができる。Ｓ１００５は、デコード装置の加算部２３５または復元部によって実行されることができる。
【０１３２】
具体的には、デコード装置は、受信した予測情報に基づいて、上記現ブロックの予測モードを決定することができる（Ｓ１００１）。デコード装置は、上記予測情報内の予測モード情報に基づいて、上記現ブロックにどのようなインター予測モードが適用されるかを決定することができる。
【０１３３】
例えば、上記のｍｅｒｇｅ  ｆｌａｇに基づいて、上記現ブロックに上記マージモードが適用されるか、または（Ａ）ＭＶＰモードが決定されるかどうかを決定することができる。あるいは、上記ｍｏｄｅ  ｉｎｄｅｘに基づいて、様々なインター予測モード候補のうちのいずれか１つを選択することができる。上記インター予測モード候補は、スキップモード、マージモードおよび/もしくは（Ａ）ＭＶＰモードを含むことができ、または後述する様々なインター予測モードを含むことができる。
【０１３４】
デコード装置は、上記決定されたインター予測モードに基づいて、上記現ブロックの動き情報を導出する（Ｓ１００２）。例えば、デコード装置は、上記現ブロックにスキップモードまたはマージモードが適用される場合、後述するマージ候補リストを構成し、上記マージ候補リストに含まれるマージ候補のうちの１つのマージ候補を選択することができる。上記選択は、前述した選択情報（merge index）に基づいて実行されることができる。上記選択されたマージ候補の動き情報を用いて上記現ブロックの動き情報が導出されることができる。上記選択されたマージ候補の動き情報が、上記現ブロックの動き情報として用いられることができる。
【０１３５】
他の例として、デコード装置は、上記現ブロックに（Ａ）ＭＶＰモードが適用される場合、後述する（Ａ）ＭＶＰ候補リストを構成し、上記（Ａ）ＭＶＰ候補リストに含まれるｍｖｐ（motion vector predictor）候補のうちの選択されたｍｖｐ候補の動きベクトルを上記現ブロックのｍｖｐとして用いることができる。上記選択は、前述した選択情報（ｍｖｐ  ｆｌａｇ  ｏｒ  ｍｖｐ  ｉｎｄｅｘ）に基づいて実行されることができる。この場合、上記ＭＶＤに関する情報に基づいて、上記現ブロックのＭＶＤを導出することができ、上記現ブロックのｍｖｐおよび上記ＭＶＤに基づいて、上記現ブロックの動きベクトルを導出することができる。また、上記参照ピクチャのインデックス情報に基づいて、上記現ブロックの参照ピクチャインデックスを導出することができる。上記現ブロックに関する参照ピクチャリスト内で、上記参照ピクチャのインデックスが指すピクチャが、上記現ブロックのインター予測のために参照される参照ピクチャとして導出されことができる。
【０１３６】
一方、後述するように、候補リストの構成なしで上記現ブロックの動き情報が導出されることができ、この場合、後述する予測モードで開始された手順に従って、上記現ブロックの動き情報が導出されることができる。この場合、前述したような候補リストの構成は、省略されることができる。
【０１３７】
デコード装置は、上記現ブロックの動き情報に基づいて、上記現ブロックの予測サンプルを生成することができる（Ｓ１００３）。この場合、上記現ブロックの参照ピクチャインデックスに基づいて、上記参照ピクチャを導出し、上記現ブロックの動きベクトルが上記参照ピクチャ上で指す参照ブロックのサンプルを用いて、上記現ブロックの予測サンプルを導出することができる。この場合、後述するように、場合によって、上記現ブロックの予測サンプルのうちの全部または一部の予測サンプルのフィルタリング手順が実行されることができる。
【０１３８】
例えば、デコード装置のインター予測部２６０は、予測モード決定部２６１、動き情報導出部２６２、予測サンプル導出部２６３を含むことができ、予測モード決定部２６１で受信された予測モード情報に基づいて、上記現ブロックの予測モードを決定し、動き情報導出部２６２から受信した動き情報に関する情報に基づいて、上記現ブロックの動き情報（動きベクトルおよび/または参照ピクチャのインデックスなど）を導出し、予測サンプル導出部２６３において、上記現ブロックの予測サンプルを導出することができる。
【０１３９】
デコード装置は、受信した残差情報に基づいて、上記現ブロックの残差サンプルを生成する（Ｓ１００４）。デコード装置は、上記予測サンプルおよび上記残差サンプルに基づいて、上記現ブロックの復元サンプルを生成し、これに基づいて復元ピクチャを生成することができる（Ｓ１００５）。以後、上記復元ピクチャにインループフィルタ手続きなどがさらに適用されることは、前述した通りである。
【０１４０】
前述したように、インター予測の手順は、インター予測モードを決定する段階と、決定された予測モードに応じた動き情報を導出する段階と、導出された動き情報に基づいて予測を実行（予測サンプルを生成）する段階と、を含むことができる。
【０１４１】
インター予測モード決定（Determination of inter prediction mode）
【０１４２】
ピクチャ内の現ブロックの予測のために、様々なインター予測モードが用いられる。たとえば、マージモード、スキップモード、ＭＶＰモード、アフィン（Affine）モードなど、様々なモードが用いられる。ＤＭＶＲ（Decoder side Motion Vector Refinement）モードでは、ＡＭＶＲ（Adaptive Motion Vector Resolution）モードなどが付随的なモードとして、さらに用いられることができる。アフィンモードは、アフィン動き予測（affine motion prediction）モードと呼ばれることもある。ＭＶＰモードは、ＡＭＶＰ（Advanced Motion Vector Prediction）モードと呼ばれることもある。
【０１４３】
現ブロックのインター予測モードを指す予測モード情報が、エンコード装置からデコード装置にシグナリングされることができる。上記予測モード情報は、ビットストリームに含まれてデコード装置によって受信されることができる。上記予測モード情報は、多数の候補モードのうちのいずれか１つを指示するインデックス情報を含むことができる。あるいは、フラグ情報の階層的シグナリングを介してインター予測モードを指示することもできる。この場合、上記予測モード情報は、複数のフラグを含むことができる。
【０１４４】
たとえば、スキップフラグをシグナリングしてスキップモードの適用が可能か否かを指示し、スキップモードが適用されることができない場合にマージフラグをシグナリングしてマージモードの適用が可能か否かを指示し、マージモードが適用されることができない場合にＭＶＰモードが適用されるものと指示したり、追加の区分のためのフラグをさらにシグナリングすることもできる。アフィンモードは、独立したモードでシグナリングされることもあり、またはマージモードもしくはＭＶＰモードなどに従属するモードでシグナリングされることもできる。例えば、アフィンモードでは、後述するように、マージ候補リストまたはＭＶＰ候補リストの一つの候補として構成されることもできる。
【０１４５】
動き情報導出（Derivation of motion information according to inter prediction mode）
【０１４６】
現ブロックの動き情報を用いて、インター予測を行うことができる。エンコード装置は、動き推定（motion estimation）手順を介して、現ブロックの最適な動き情報を導出することができる。たとえば、エンコード装置は、現ブロックのオリジナルピクチャ内のオリジナルブロックを用いて、相関性が高い類似の参照ブロックを参照ピクチャ内の決められた探索（サーチ）範囲内で分数ピクセル単位で探索することができ、これにより動き情報を導出することができる。ブロックの類似性は、位相（phase）ベースのサンプル値の差に基づいて導出することができる。例えば、ブロックの類似性は、現ブロック（または現ブロックのテンプレート）と参照ブロック（または参照ブロックのテンプレート）との間のＳＡＤに基づいて計算っされることができる。この場合、サーチスペース内でＳＡＤが最も小さい参照ブロックに基づいて動き情報を導出することができる。導出された動き情報は、インター予測モードに基づいて様々な方法に基づいてデコード装置にシグナリングされることができる。
【０１４７】
マージモードおよびスキップモード
【０１４８】
図１２は、本発明が適用される実施形態として、マージモードまたはスキップモードで用いられる周辺ブロックを説明する図である。
【０１４９】
マージモード（merge mode）が適用される場合、現在の予測ブロックの動き情報が直接転送されず、周辺予測ブロックの動き情報を用いて上記現在の予測ブロックの動き情報を導出することになる。したがって、マージモードが用いられたことを知らせるフラグ情報と周辺のどの予測ブロックが用いられたかを知らせるマージインデックスとを転送することにより、現在の予測ブロックの動き情報を指示することができる。
【０１５０】
エンコーダは、マージモードを実行するために、現在の予測ブロックの動き情報を導出するために用いられるマージ候補ブロック（merge candidate block）を探索することができる。例えば、上記マージ候補ブロックは、最大５個まで用いることができるが、本発明はこれに限定されない。そして、上記マージ候補ブロックの最大数は、スライスヘッダ（またはタイルのグループヘッダ）で転送することができるが、本発明はこれに限定されない。上記マージ候補ブロックを見つけた後、エンコーダは、マージ候補リストを生成することができ、これらのうちの最も小さいコストを有するマージ候補ブロックを最終マージ候補ブロックとして選択することができる。
【０１５１】
本発明は、上記マージ候補リストを構成するマージ候補ブロックの様々な実施形態を提供する。
【０１５２】
上記マージ候補リストは、例えば、５つのマージ候補ブロックを用いることができる。例えば、４つの空間的マージ候補（spatial merge candidate）と１つの時間的マージ候補（temporal merge candidate）とを用いることができる。具体例として、空間的マージ候補の場合、図１２に示されたブロックを空間的マージ候補として用いることができる。
【０１５３】
図１３は、本発明が適用される一実施形態に係るマージ候補リストの構成方法を例示するフローチャートである。
【０１５４】
図１３を参照すると、コーディング装置（エンコーダ/デコーダ）は、現ブロックの空間的周辺ブロックを探索して導出された空間的マージ候補をマージ候補リストに挿入する（Ｓ１３０１）。例えば、上記空間的周辺ブロックは、上記現ブロックの左下側コーナ周辺ブロック、左側周辺ブロック、右上側コーナ周辺ブロック、上側周辺ブロック、左上側コーナ周辺ブロックを含むことができる。ただし、これは、例として、前述した空間的周辺ブロック以外にも右側周辺ブロック、下側周辺ブロック、右下側の周辺ブロックなどの追加の周辺ブロックが、さらに上記空間周辺ブロックとして用いられることができる。コーディング装置は、上記空間的周辺ブロックを優先順位に基づいて探索して、使用可能（可用）なブロックを検出し、検出されたブロックの動き情報を、上記空間的マージ候補として導出することができる。例えば、エンコーダおよびデコーダは、図１２に示された５つのブロックをＡ１、Ｂ１、Ｂ０、Ａ０、Ｂ２の順に探索して、使用可能な候補を順次インデックスしてマージ候補リストとして構成することができる。
【０１５５】
コーディング装置は、上記現ブロックの時間的周辺ブロックを探索して導出した時間的マージ候補を上記マージ候補リストに挿入する（Ｓ１３０２）。上記時間的周辺ブロックは、上記現ブロックが位置する現ピクチャと異なるピクチャである参照ピクチャ上に位置することができる。上記時間的周辺ブロックが位置する参照ピクチャは、ｃｏｌｌｏｃａｔｅｄピクチャまたはｃｏｌピクチャと呼ばれることができる。上記時間的周辺ブロックは、上記ｃｏｌピクチャ上における上記現ブロックと同じ位置のブロック（co-located block）の右下側コーナ周辺ブロックおよび右下側センターブロックの順に探索することができる。
【０１５６】
一方、ｍｏｔｉｏｎ  ｄａｔａ  ｃｏｍｐｒｅｓｓｉｏｎが適用される場合、上記ｃｏｌピクチャにおける一定のストレージユニットごとに、特定の動き情報を代表動き情報として記憶することができる。この場合、上記一定のストレージユニット内のすべてのブロックの動き情報を記憶する必要がなく、これによりｍｏｔｉｏｎ  ｄａｔａ  ｃｏｍｐｒｅｓｓｉｏｎ効果を得ることができる。この場合、一定のストレージユニットは、例えば、１６ｘ１６サンプル単位、もしくは８ｘ８サンプル単位などで予め決められることもあり、またはエンコーダからデコーダに上記一定の（日程）ストレージユニットのサイズ情報がシグナリングされることもある。上記ｍｏｔｉｏｎ  ｄａｔａ  ｃｏｍｐｒｅｓｓｉｏｎが適用される場合、上記時間的周辺ブロックの動き情報は、上記時間的周辺ブロックが位置する上記一定ストレージユニットの代表動き情報に置き換えられることができる。
【０１５７】
つまり、この場合、実現の側面で見ると、上記時間的周辺ブロックの座標に位置する予測ブロックではなく、上記時間的周辺ブロックの座標（左上端サンプルポジション）に基づいて、一定の値だけ算術的に右シフトした後算術的に左シフトした位置をカバーする予測ブロックの動き情報に基づいて、上記時間的マージ候補が導出されることができる。例えば、上記一定のストレージユニットが２ｎｘ２ｎサンプル単位である場合、上記時間的周辺ブロックの座標を（ｘＴｎｂ、ｙＴｎｂ）とすると、修正された位置である（（ｘＴｎｂ  ＞＞  ｎ）＜＜  ｎ）、（ｙＴｎｂ  ＞＞  ｎ）＜＜  ｎ））に位置する予測ブロックの動き情報が、上記時間的マージ候補のために用いられることができる。
【０１５８】
具体的には、例えば、上記一定のストレージユニットが１６ｘ１６サンプル単位である場合、上記時間的周辺ブロックの座標を（ｘＴｎｂ、ｙＴｎｂ）とすると、修正された位置である（（ｘＴｎｂ  ＞＞  ４）＜＜  ４）、（ｙＴｎｂ  ＞＞  ４）＜＜  ４））に位置する予測ブロックの動き情報が、上記時間的マージ候補のために用いられることができる。あるいは、例えば、上記一定のストレージユニットが８ｘ８サンプル単位である場合、上記時間的周辺ブロックの座標が（ｘＴｎｂ、ｙＴｎｂ）とすると、修正された位置である（（ｘＴｎｂ  ＞＞  ３）＜＜  ３）、（ｙＴｎｂ＞  ＞  ３）＜＜  ３））に位置する予測ブロックの動き情報が、上記時間的マージ候補のために用いられることができる。
【０１５９】
コーディング装置は、現在のマージ候補の数が最大マージ候補の数よりも小さいかどうかを確認することができる（Ｓ１３０３）。上記最大マージ候補の数は、予め定義されたり、エンコーダからデコーダにシグナリングされることができる。例えば、エンコーダは、上記最大マージ候補の数に関する情報を生成し、エンコードして、ビットストリームの形で、上記デコーダに伝達することができる。上記最大マージ候補の数が全部満たされると、以降の候補の追加プロセスは進行しないことがある。
【０１６０】
上記確認の結果、上記現在のマージ候補の数が上記最大マージ候補の数よりも小さい場合、コード装置は、追加マージ候補を上記マージ候補リストに挿入する（Ｓ１３０４）。上記追加マージ候補は、例えばＡＴＭＶＰ、ｃｏｍｂｉｎｅｄ  ｂｉ−ｐｒｅｄｉｃｔｉｖｅマージ候補（現スライスのスライスタイプがＢタイプの場合）、および/またはゼロベクトルマージ候補を含むことができる。
【０１６１】
上記確認の結果、上記現在のマージ候補の数が上記最大マージ候補の数よりも小さくない場合、コード装置は、上記マージ候補リストの構成を終了することができる。この場合、エンコーダは、ＲＤ（Rate-Distortion）  ｃｏｓｔに基づいて、上記マージ候補リストを構成するマージ候補のうちの最適なマージ候補を選択することができ、上記選択されたマージ候補を指す選択情報（例えば、merge index）をデコーダにシグナリングすることができる。デコーダは、上記マージ候補リストおよび上記選択情報に基づいて、上記最適なマージ候補を選択することができる。
【０１６２】
上記選択されたマージ候補の動き情報が上記現ブロックの動き情報として用いられることができ、上記現ブロックの動き情報に基づいて、上記現ブロックの予測サンプルを導出することができることは、前述した通りである。エンコーダは、上記予測サンプルに基づいて、上記現ブロックの残差サンプルを導出することができ、上記残差サンプルに関する残差情報をデコーダにシグナリングすることができる。デコーダは、上記残差情報に基づいて導出された残差サンプルおよび上記予測サンプルに基づいて復元サンプルを生成し、これに基づいて復元ピクチャを生成することができることは、前述した通りである。
【０１６３】
スキップモード（skip mode）が適用される場合、前のマージモードが適用される場合と同じ方法で、上記現ブロックの動き情報を導出することができる。ただし、スキップモードが適用される場合、そのブロックの残差信号が省略され、したがって、予測サンプルが直接復元サンプルとして用いられることができる。
【０１６４】
ＭＶＰモード
【０１６５】
図１４は、本発明が適用される一実施形態に係るマージ候補リストの構成方法を例示するフローチャートである。
【０１６６】
ＭＶＰ（Motion Vector Prediction）モードが適用される場合、復元された空間的周辺ブロック（例えば、先の図１２で説明した周辺ブロックであり得る）の動きベクトルおよび/または時間的周辺ブロック（またはＣｏｌブロック）に対応する動きベクトルを用いて、動きベクトル予測子（motion vector predictor、ｍｖｐ）の候補リストが生成されることができる。つまり、復元された空間的周辺ブロックの動きベクトルおよび/または時間的周辺ブロックに対応する動きベクトルは、動きベクトル予測子候補として用いられることができる。
【０１６７】
上記予測に関する情報は、上記リストに含まれる動きベクトル予測子候補のうちの選択された最適な動きベクトル予測子候補を指示する選択情報（例えば、ＭＶＰフラグまたはＭＶＰインデックス）を含むことができる。このとき、予測部は、上記選択情報を用いて、動きベクトルの候補リストに含まれる動きベクトル予測子候補のうちの現ブロックの動きベクトル予測子を選択することができる。エンコード装置の予測部は、現ブロックの動きベクトルと動きベクトル予測子との間の動きベクトルの差分（ＭＶＤ）を求めることができ、これをエンコードして、ビットストリームの形で出力することができる。つまり、ＭＶＤは、現ブロックの動きベクトルから、上記動きベクトル予測子を引いた値で求められることができる。このとき、デコード装置の予測部は、上記予測に関する情報に含まれる動きベクトルの差分を獲得し、上記動きベクトル差分と上記動きベクトル予測子との加算を介して、現ブロックの上記動きベクトルを導出することができる。デコード装置の予測部は、参照ピクチャを指示する参照ピクチャのインデックスなどを上記予測に関する情報から獲得または導出することができる。例えば、動きベクトル予測子候補リストは、図１４に示すように構成されることができる。
【０１６８】
ＡＴＭＶＰ（Advanced Temporal Motion Vector Prediction）
【０１６９】
図１５および図１６は、本発明が適用される一実施形態として、ＡＴＭＶＰ（Advanced Temporal Motion Vector Prediction）候補を導出する方法を説明する図である。
【０１７０】
図１５を参照すると、ＡＴＭＶＰは、時間的に隣接するピクチャのｃｏｌｌｏｃａｔｅｄ  ｂｌｏｃｋｓの動き情報に基づいて、コーディングユニットのサブブロックの動き情報を導出する方法である。これを介して、時間的動きベクトル予測（Temporal Motion Vector Prediction、ＴＭＶＰ）の性能を向上させることができ、一般的な、またはｗｏｒｓｔ  ｃａｓｅの複雑度を下げることができる。本発明において、ＡＴＭＶＰは、サブブロックベースの時間マージ候補（subblock-based temporal merging candidate）、ＳｂＴＭＶＰと。称されることもある。
【０１７１】
本発明の一実施形態において、ＡＴＭＶＰは、次のようなプロセスにより導出されることができる。
【０１７２】
まず、エンコーダ／デコーダは、隣接するコーディングユニットが利用可能で、用いられるコーディングユニットの動きベクトルが、現候補リスト内の動きベクトルと異なる場合、空間的隣接コーディングユニットから動きベクトルを追加することができる。一例として、図１６を参照すると、前述したプロセスは、Ａ１、Ｂ１、Ｂ０、Ａ０、Ｂ２の順に従って実行されることができる。他の一例として、複雑度の改善のために、前述したプロセスは、固定された位置（たとえば、Ａ１の位置）のブロックの動きベクトルのみを用いてＡＴＭＶＰを導出することもできる。
【０１７３】
上記エンコーダ／デコーダは、用いられるＮｏ個のスペースの候補のうちの最初の動きベクトル候補を、ｃｏｌｌｏｃａｔｅｄ  ｐｉｃｔｕｒｅおよび各サブブロックの動き情報を導出する位置を決定するために用いることができる。ここで、Ｎｏは、用いられるスペース候補（者）の数を示す。Ｎｏが０であれば、ｃｏｌｌｏｃａｔｅｄ  ｐｉｃｔｕｒｅおよび動き０のｃｏｌｌｏｃａｔｅｄ  ｐｏｓｉｔｉｏｎは、各サブブロックの動き情報を導出するために用いられることができる。
【０１７４】
多数の参照ピクチャが用いられる場合、ＡＴＭＶＰにおいて互いに異なるコーディングユニットのｃｏｌｌｏｃａｔｅｄ  ｐｉｃｔｕｒｅは、同じではないことがある。現ピクチャ内の互いに異なるコーディングユニットに対し、ＡＴＭＶＰの導出のために、互いに異なるｃｏｌｌｏｃａｔｅｄ  ｐｉｃｔｕｒｅを有するということは、多数の参照ピクチャの動きの情報フィールドが導出されるべきであることを意味し、これは、メモリの帯域幅（bandwidth）を増加させるために望ましくない。
【０１７５】
したがって、本発明は、ＡＴＭＶＰを導出するとき、同じｃｏｌｌｏｃａｔｅｄ  ｐｉｃｔｕｒｅを用いる、さらに単純化されたデザインを提供する。たとえば、同じｃｏｌｌｏｃａｔｅｄ  ｐｉｃｔｕｒｅを用いる方法は、スライス（またはタイルのグループ）のヘッダで定義されることがあるが、本発明はこれに限定されない。一例として、ブロックレベルで、隣接ブロックＡの参照ピクチャがｃｏｌｌｏｃａｔｅｄ  ｐｉｃｔｕｒｅと異なる場合、隣接ブロックＡの動きベクトルは、時間的動きベクトルのスケーリング方法に基づいてスケーリングされることができる。そして、上記隣接ブロックＡのスケーリングされた動きベクトルは、ＡＴＭＶＰで用いられることができる。
【０１７６】
図１７は、本発明が適用される一実施形態として、ＡＴＭＶＰ（Advanced Temporal Motion Vector Prediction）候補を導出する方法を例示する図である。
【０１７７】
図１７を参照すると、本発明の一実施形態において、現ブロックの右下端（right-bottom）のブロックまたは現ブロックの中央（center）の位置の時間隣接ブロック（またはｃｏｌＰＢ）の動きベクトルを用いるＴＭＶＰは、画面内の動きを反映していないので、エンコーダ/デコーダは、周辺ブロックの動きベクトルが指す位置のｃｏｌＰＢの動きベクトルをＭＶＰとして用いることができる。
【０１７８】
たとえば、エンコーダ／デコーダは、図１７に示されたマージ候補者の構成手順と共にチェックしながら、最初に用いられるスペース隣接ブロック（spatial neighbor block）の動きベクトルを見つけることができる。そして、参照ピクチャにおいて、上記動きベクトルが指す位置をｃｏｌ−ＰＢ（つまり、ＡＴＭＶＰ候補）として導出することができる。
【０１７９】
また、上記動きベクトルは、各サブブロック単位で対応ブロック（corresponding block）の動きベクトルとして用いられる。この際、特定のサブブロックに動きベクトルが存在しない場合、上記対応ブロックの中心（center）に位置するセンターブロックの動きベクトルを利用可能でないサブブロックのための動きベクトルとして用い、これを代表動きベクトルとして記憶することができる。
【０１８０】
Ｔｅｍｐｏｒａｌ  ｍｏｔｉｏｎ  ｖｅｃｔｏｒ  ｄａｔａ  Ｓｔｏｒａｇｅ  ｒｅｄｕｃｔｉｏｎ
【０１８１】
本発明の一実施形態において、時間動きベクトルデータ（Temporal motion vector data）圧縮のために、空間候補の動きベクトルデータに基づいて、時間動きベクトルの記憶（Temporal motion vector storage）を減少させる方法を提案する。
【０１８２】
図１８および図１９は、本発明が適用される一実施形態に係る、時間動きベクトルデータ（Temporal motion vector data）を圧縮する方法およびこれに用いられる空間候補の位置を例示する図である。
【０１８３】
図１８を参照すると、本発明の実施形態において、空間候補（spatial candidate）がインター予測によって予測されると、空間候補の動きベクトルは、圧縮のためのデフォルト（基本）動きベクトルとして設定されることができる。たとえば、最大５つの空間候補がデフォルトの時間動きベクトルを導出するための参照時間の動き情報として用いられることができる。一実施形態であり、上記の５つの空間候補は、図１９に示すように設定されることができる。
【０１８４】
また、時間動きベクトルデータは、空間候補の動きベクトルに基づいて圧縮されることができる。空間候補をサーチする順序は、図１８に示されるのと同じであり得る。空間候補（者）は、センターブロック（Ｃ）、左上側ブロック（ＴＬ）、右上側ブロック（ＴＲ）、左下側ブロック（ＢＬ）、右下側ブロック（ＢＲ）の順に沿って確認されることができる。これは、一実施形態であるだけであり、本発明はこれに限定されず、他の組み合わせ可能な順序が適用されることができる。
【０１８５】
まず、エンコーダ/デコーダは、センターブロック（Ｃ）がインター予測されたことを確認することができる。上記センターブロック（Ｃ）がインター予測された場合、エンコーダ/デコーダは、上記センターブロック（Ｃ）の動きベクトルを動きベクトル予測のためのデフォルト（default：基本値）に設定することができる。
【０１８６】
上記センターブロック（Ｃ）がインター予測されなかった場合、エンコーダ/デコーダは、左上側ブロック（ＴＬ）がインター予測されたことを確認することができる。左上側ブロック（ＴＬ）がインター予測された場合、エンコーダ/デコーダは、エンコーダは、上記左上側ブロック（ＴＬ）の動きベクトルを動きベクトル予測のためのデフォルト（default）に設定することができる。
【０１８７】
上記左上側ブロック（ＴＬ）がインター予測されなかった場合、エンコーダ/デコーダは、右上側ブロック（ＴＲ）がインター予測されたことを確認することができる。上記右上側ブロック（ＴＲ）がインター予測された場合、エンコーダ/デコーダは、上記右上側ブロック（ＴＲ）の動きベクトルを動きベクトル予測のためのデフォルト（default）に設定することができる。
【０１８８】
上記右上側ブロック（ＴＲ）がインター予測されなかった場合、エンコーダ/デコーダは、左下側ブロック（ＢＬ）がインター予測されたことを確認することができる。上記左下側ブロック（ＢＬ）がインター予測された場合、エンコーダ/デコーダは、上記左下側ブロック（ＢＬ）の動きベクトルを動きベクトル予測のためのデフォルト（default）に設定することができる。
【０１８９】
上記左下側ブロック（ＢＬ）がインター予測されなかった場合、エンコーダ/デコーダは、右下側ブロック（ＢＲ）がインター予測されたことを確認することができる。上記右下側ブロック（ＢＲ）がインター予測された場合、エンコーダ/デコーダは、上記右下側ブロック（ＢＲ）の動きベクトルを動きベクトル予測のためのデフォルト（default：基本値）に設定することができる。
【０１９０】
上記右下側ブロック（ＢＲ）がインター予測されなかった場合、エンコーダ/デコーダは、イントラモードをデフォルト値（default）に設定することができる。
【０１９１】
上記のような過程を介して、エンコーダ/デコーダは、デフォルト動きベクトル（default motion vector）を動き情報に圧縮することができる。
【０１９２】
適応的サブブロック大きさに基づいてＡＴＭＶＰを実行する実施形態
【０１９３】
本発明の一実施形態において、適応的サブブロックの大きさに基づいてＡＴＭＶＰを実行する方法を提案する。たとえば、ＡＴＭＶＰ導出のために用いられるサブブロックの大きさは、スライスレベルで適応的に適用されることができる。
【０１９４】
一方、４ｘ４ブロック単位でＡＴＭＶＰ動き情報が導出される場合、一つのＡＴＭＶＰコーディングユニット内で４ｘ４サブブロックごとの単位で動きの導出および動き補償が行われることになるという問題点が生じることがある。
【０１９５】
これを解決するために、エンコーダは、ＡＴＭＶＰ動き導出のために用いられる１つのデフォルトサブブロック大きさ（default sub-block size）をシーケンスレベルでデコーダにシグナリングすることができる。
【０１９６】
他の一例として、デフォルトサブブロック大きさ（default sub-block size）が現在のスライスで用いられる場合、ピクチャまたはスライスレベルでフラグがシグナリングされることができる。上記フラグがｆａｌｓｅの場合、ＡＴＭＶＰサブブロック大きさは、スライスヘッダからさらにシグナリングされることができる。
【０１９７】
Ｃｏｌｌｏｃａｔｅｄ  ｂｌｏｃｋの導出のための領域を制限する実施形態
【０１９８】
本発明において、ＡＴＭＶＰのためのＣｏｌｌｏｃａｔｅｄ  ｂｌｏｃｋの領域は、現在のＣＴＵとｃｏｌｌｏｃａｔｅｄ  ｐｉｃｔｕｒｅ内の一列（one column）のＮｘＮブロックとを含むことができる。例えば、上記ＮｘＮブロックは、４ｘ４ブロックであり得るが、本発明はこれに限定されない。
【０１９９】
マージ候補の動きベクトルによって識別されたＡＴＭＶＰ  Ｃｏｌｌｏｃａｔｅｄ  ｂｌｏｃｋが上記制限された領域の外に位置する場合、上記制限された領域内に位置するように移動することができる。例えば、上記制限された領域内の最も近い境界に位置するように移動することができる。
【０２００】
Ｓｕｂｂｌｏｃｋ−ｂａｓｅｄ  ｔｅｍｐｏｒａｌ  ｍｅｒｇｉｎｇ  ｃａｎｄｉｄａｔｅを導出する実施形態
【０２０１】
本発明の一実施形態において、エンコーダ/デコーダは、空間的に隣接するブロックの動き情報に基づいて特定されるｃｏｌｌｏｃａｔｅｄ  ｐｉｃｔｕｒｅ内ｃｏｌｌｏｃａｔｅｄ  ｂｌｏｃｋ（またはｃｏｌｌｏｃａｔｅｄ  ｓｕｂｂｌｏｃｋ）の動き情報をサブブロックベースの時間マージ候補（subblock-based temporal merging candidate）としてサブブロックマージ候補リスト（subblock merging candidate list）に追加することができる。
【０２０２】
本発明において、空間的に隣接するブロックの動き情報は、時間動きベクトル（temporal motion vector）と呼ばれることができる。実施形態として、エンコーダ/デコーダは、現在のコーディングブロックの幅および高さが予め決められた特定の大きさ以上の場合、サブブロックベースの時間マージ候補を導出することができる。例えば、予め決められた特定の大きさは、８であり得る。
【０２０３】
実施形態として、エンコーダ/デコーダは、用いられる空間候補のうちの最初の空間候補の動き情報を時間動きベクトルに設定することができる。一例として、エンコーダ/デコーダは、Ａ１、Ｂ１、Ｂ０、Ａ０の順に利用可能な空間候補を探索することができる。このとき、エンコーダ/デコーダは、利用可能な空間候補の中から参照ピクチャがｃｏｌｌｏｃａｔｅｄ  ｐｉｃｔｕｒｅと同じ空間候補を時間動きベクトルに設定することができる。他の一例として、エンコーダ/デコーダは、一つの固定された位置の空間候補が利用可能かどうかを確認し、利用可能な場合、その領域の候補の動きベクトルを時間動きベクトルに設定することができる。例えば、上記一つの固定された位置の空間候補をＡ１の位置のブロックに設定することができる。
【０２０４】
また、エンコーダ/デコーダは、上記時間動きベクトルを用いてｃｏｌｌｏｃａｔｅｄ  ｐｉｃｔｕｒｅ内のｃｏｌｌｏｃａｔｅｄ  ｂｌｏｃｋの位置を特定することができる。一例として、次の数式１を用いることができる。
【０２０５】
＜数式１＞
【数１】
2021516502.tif 000004
【０２０６】
ここで、（ｘＣｏｌＣｔｒＣｂ、ｙＣｏｌＣｔｒＣｂ）は、中央位置の右下側のサンプルを含むｃｏｌｌｏｃａｔｅｄ  ｃｏｄｉｎｇ  ｂｌｏｃｋのｔｏｐ−ｌｅｆｔ  ｓａｍｐｌｅ位置を示し、ｔｅｍｐＭｖは、上記時間動きベクトルを示す。
【０２０７】
また、エンコーダ/デコーダは、サブブロック単位で、現在のコーディングブロック内の各サブブロックの動き情報を導出する位置を決定することができる。一実施形態において、次の数式２を用いて、ｃｏｌｌｏｃａｔｅｄ  ｐｉｃｔｕｒｅ内ｃｏｌｌｏｃａｔｅｄ  ｓｕｂｂｌｏｃｋの位置が導出されることができる。
【０２０８】
＜数式２＞
【数２】
2021516502.tif 000005
【０２０９】
ここで、（ｘＳｂ、ｙＳｂ）は、現在のサブブロックの位置を示す。
【０２１０】
一実施形態において、エンコーダ/デコーダは、現在のｃｏｌｌｏｃａｔｅｄ  ｓｕｂｂｌｏｃｋが利用可能でない場合、時間動きベクトルを用いて特定されるｃｏｌｌｏｃａｔｅｄ  ｂｌｏｃｋの動き情報を用いることができる。
【０２１１】
図２０は、本発明が適用される実施形態に係る候補リスト（candidate list）に基づいて、インター予測されたブロック（inter predicted block）を生成する方法を示すフローチャートである。
【０２１２】
図２０を参照すると、先の図１および図２で説明したインター予測部（１８０、２６０）によって実行されるインター予測プロセスを例示する。図２０においては、インター予測を介して、予測された動き情報（ＰＭＩ、Predicted Motion Information）を導出して予測を行う方法として、マージモードおよびインターモード（すなわち、（Ａ）ＭＶＰモード）が用いられる場合を仮定する。ただし、本発明がこれに限定されるものではなく、それ以外に様々なモードがインター予測のために適用されることができる。
【０２１３】
前述したように、マージモードおよびインターモードは、予測ブロックの生成に用いられる最終ＰＭＩを導出するために、候補インデックス（candidate index）以外に、さらに動き情報差分（ＭＶＤ、Motion Vector Difference）、参照リスト（reference list）（または参照ピクチャリスト）および/または参照ピクチャインデックス（reference picture index）のうちの少なくとも一つを、ビットストリームを介して転送を受けるかどうかに応じて区分されることができる。
【０２１４】
具体的には、エンコーダ/デコーダは、現ブロックにマージモードが適用されるかどうかを確認する（Ｓ２００１）。
【０２１５】
現ブロックにマージモードが適用される場合、エンコーダ/デコーダは、マージ候補（またはマージ候補リスト）を生成し、現ブロックのインター予測に用いられたＰＭＩを選択する（Ｓ２００２、２００３）。マージモードが適用される場合、エンコーダは、上記選択されたＰＭＩ情報をマージインデックスとしてデコーダに転送することができる。上記マージインデックスは、マージ候補の中から、特定のマージ候補を指示することができる。エンコーダ/デコーダは、上記特定のマージ候補（者）の動き情報を現ブロックのインター予測のための動きベクトルとして用いることができる。
【０２１６】
現ブロックにマージモードが適用されない場合（つまり、インターモードが適用される場合）、エンコーダ/デコーダは、インター候補（またはインター候補リスト）を生成し、現ブロックのインター予測に用いられる最初のＰＭＩ（または動きベクトル予測子（motion vector predictor））を選択する（Ｓ２００４、Ｓ２００５）。インターモードが適用される場合、エンコーダは、上記選択されたＰＭＩ情報を動きベクトル予測子フラグ（またはインデックス）としてデコーダに転送することができる。上記動きベクトル予測子フラグは、インター候補の中から、特定のインター候補を指示することができる。そして、上記インター候補は、動きベクトル予測子候補と呼ばれることができる。エンコーダ/デコーダは、上記初期ＰＭＩに動きベクトル差分を加算することにより、予測に用いられた動きベクトルを導出する（Ｓ２００６）。
【０２１７】
エンコーダ/デコーダは、導出された動きベクトルを用いて、現ブロックの予測ブロックを生成する（Ｓ２００７）。
【０２１８】
つまり、マージモードが適用される場合、エンコーダ/デコーダは、最終ＰＭＩを導出するために、候補インデックス（すなわち、マージインデックス）のシグナリング以外に、追加的なシンタックス（または構文要素）を利用せず、候補インデックスを介して、選択した候補の動き情報を用いて、現ブロックの予測ブロックを生成する。このとき、候補生成プロセスは、Ｓ２００２段階（またはブロック）で行われる。
【０２１９】
インターモードが適用される場合にも、マージモードと同様の方法でＳ２００４の段階で候補生成処理が実行される。インターモードが適用される場合、エンコーダ/デコーダは、選択された候補の動き情報に基づいて、追加の動き情報を受けて、最終的ＰＭＩを導出し、これを用いて、現ブロックの予測ブロックを生成する。
【０２２０】
以下で、隣接ブロックの動き情報を用いて、候補（または候補リスト）を生成する方法を説明する。
【０２２１】
図２１は、本発明が適用される実施形態に係る候補リスト（candidate list）を生成する方法を示すフローチャートである。
【０２２２】
図２１を参照すると、説明の便宜のためにデコーダを中心に説明するが、本実施形態の候補リストの生成方法は、エンコーダでも同じように実行されることができる。一実施形態において、先の図１２〜図１７で説明した方法が適用されることができ、これに関する重複する説明は、省略する。
【０２２３】
図２１に示された候補の構成手順は、一つの例として、本発明がこれに限定されるものではなく、順序が変更されたり、一部の段階が省略または追加されることができる。また、図２１で追加される候補は、一つの例として、それ以外に、他の様々な色々な候補が追加されることもでき、図２１に示された候補のうちの一部の候補が使用されないことがある。
【０２２４】
デコーダは、空間隣接ブロック（spatial neighboring block）（または空間候補（spatial candidate））を候補リストに追加する（Ｓ２１０１）。例えば、デコーダは、先に説明した図１６の周辺候補ブロックを候補リストに追加することができる。
【０２２５】
デコーダは、時間隣接ブロック（temporal neighboring block）（または時間候補（temporal candidate））を候補リストに追加する（Ｓ２１０２）。
【０２２６】
デコーダは、組み合わせた動き情報（または組み合わせた動きベクトル）を候補リストに追加し、ゼロ動きベクトルを候補リストに追加する（Ｓ２１０３、Ｓ２１０４）。
【０２２７】
図２２は、本発明が適用される実施形態に係るインター予測に用いられる周辺ブロックの一例を示す。
【０２２８】
図２２を参照すると、エンコーダ/デコーダは、空間的類似性をベースにする空間隣接ブロックの動き情報および時間的類似性に基づいて、時間隣接ブロックの動き情報を用いて、候補リストを構成することができる。本発明において、空間隣接ブロックの動き情報は、空間隣接情報と呼ばれることができ、時間隣接ブロックの動き情報は、時間隣接情報、対応（corresponded）時間情報と呼ばれることができる。
【０２２９】
実施形態として、エンコーダ/デコーダは、図２２に示すような空間候補（または空間隣接情報）を用いて、候補リストを構成することができる。そして、エンコーダ/デコーダは、図２２に示すような時間候補（または対応時間情報）を用いて、候補リストを構成することができる。
【０２３０】
前述したように、空間的類似性を考慮した時間的類似性情報を補正するために、適応的時間動きベクトル予測子（ＡＴＭＶＰ、Adaptive Temporal Motion Vector Prediction）が用いられることができる。ＡＴＭＶＰは、時間的に隣接するピクチャのコロケートブロック（collocated block）の動き情報に基づいて、サブブロックの動き情報を導出する方法である。これにより、時間的動きベクトル予測（Temporal Motion Vector Prediction、ＴＭＶＰ）の性能を向上させ、複雑度を改善することができる。本発明において、ＡＴＭＶＰは、サブブロックベースの時間マージ候補（subblock-based temporal merging candidate）、ＳｂＴＭＶＰなどと呼ばれることができる。
【０２３１】
つまり、現ブロックの右下側（right-bottom）または中央（center）の位置のコロケートブロックの動きベクトルを用いるＴＭＶＰは、ピクチャ内における動きを反映していないため、周辺ブロックの動きベクトルが指す位置のコロケイテッドブロックの動きベクトルが動きベクトル予測子で用いられる。
【０２３２】
先で説明した図１７を再び参照すると、一実施形態において、エンコーダ/デコーダは、予め設定されたマージ候補（Merge candidate）の構成順にチェックしながら、最初に利用可能な空間隣接ブロック（spatial neighbor block）の動きベクトルを見つけることができる。以後、エンコーダ/デコーダは、参照ピクチャ（reference picture）内で、該当動きベクトル（つまり、時間動きベクトル（temporal motion vector））が示す位置をコロケートブロックに決定することができる。これにより、対応ブロック（corresponding block）（または時間動きベクトル）の精度（正確度）を高めることができる。一実施形態として、上記参照ピクチャは、コロケイテッドピクチャ（collocated picture）として定義されることができる。
【０２３３】
エンコーダ/デコーダは、現在のコーディングブロック内でサブブロック単位で時間動きベクトルによって特定される対応ブロックの動きベクトルを導出することができる。一実施形態として、特定サブブロックに対応する動きベクトルが存在しない場合（または利用可能でない場合）、エンコーダ/デコーダは、コロケイテッドブロックの中央に位置する、ブロックの動きベクトルを代表動きベクトルに設定（または記憶）し、上記特定サブブロックのための動きベクトルとして用いることができる。
【０２３４】
一実施形態において、ＡＴＭＶPモードを用いるために、エンコーダ/デコーダは、マージ候補（merge candidate）の数を増やして適用することができる。そして、そのために追加の構文（または構文要素）は使用されないことがある。マージ候補の最大数を指示する構文は、上位レベルの構文を介して、エンコーダからデコーダに転送されることができる。上記上位レベルの構文は、例えば、シーケンスパラメータセット（ＳＰＳ、Sequence Parameter Set）、ピクチャパラメータセット（ＰＰＳ、Picture Parameter Set）、スライスヘッダ（slice header）であり得る。一例として、マージ候補の最大数は、６個であり得る。
【０２３５】
また、一実施形態において、拡張されたＡＴＭＶＰ候補を示すＡＴＭＶＰ−ｅｘｔ候補が、候補リストに追加されることもできる。ＡＴＭＶＰ−ｅｘｔは、前述したＡＴＭＶＰと同様に、既存のＴＭＶＰを改善するための方法であり、空間隣接ブロックと時間隣接ブロックとを組み合わせて、サブブロック単位の動きベクトルを導出することができる。
【０２３６】
図２３は、本発明が適用される実施形態に係る拡張されたＡＴＭＶＰ（Advanced Temporal Motion Vector Prediction）候補を導出する方法を例示する図である。
【０２３７】
図２３を参照すると、現ブロック２３０１の大きさが１６ｘ１６である場合を仮定する。また、図２３において、サブブロック単位で動きベクトルを導出することにおいて、サブブロックの大きさが４ｘ４である場合を仮定するが、本発明がこれに制限されるものではなく、後述する８ｘ８以上の固定された大きさで、上記サブブロックの大きさが定義されることができる。
【０２３８】
エンコーダ/デコーダは、現ブロック２３０１内、それぞれのサブブロックの動きベクトルを導出するために左側水平方向および上側垂直方向の位置の空間隣接ブロックの動きベクトル、そして、右側の水平方向および下側垂直方向の位置の時間隣接ブロックの動きベクトルを用いる。
【０２３９】
たとえば、エンコーダ/デコーダは、現ブロック２３０１内で、０番の位置のサブブロックのための動きベクトルを導出するために、Ｌ−０およびＡ−０の位置の空間隣接ブロックの動きベクトルを導出し、現ブロック２３０１内で、１および４位置のサブブロックの時間隣接ブロックの動きベクトルを導出し、４つの動きベクトルの平均値を計算することができる。エンコーダ/デコーダは、上記４つの動きベクトルの平均値を、現ブロック２３０１内で、０番の位置のサブブロックの動きベクトルとして決定することができる。一実施形態として、４つのブロックのうちの一部だけが利用可能な場合、エンコーダ/デコーダは、利用可能なブロックの動きベクトルの平均値を計算することができる。また、一実施形態として、参照インデックスは、予め設定（例えば、参照インデックス０または１、コロケイテッドピクチャ）されることができる。
【０２４０】
一実施形態において、ＡＴＭＶＰモードと同様に、拡張されたＡＴＭＶＰモードを用いるために、エンコーダ/デコーダは、マージ候補（merge candidate）の数を増やして適用することができる。そして、そのために追加の構文（または構文要素）は、用いられないことがある。
【０２４１】
図２４および図２５は、本発明が適用される実施形態に係る参照ピクチャ内における時間隣接ブロックの動きベクトルをフェッチするプロセス（fetching process）を例示する図である。
【０２４２】
図２４を参照すると、エンコーダ/デコーダは、現ブロックの時間隣接ブロックの動きベクトル（以下、時間動きベクトルと呼ばれることがある）を導出するために、メモリ（先の図１の１７０、図２の２５０）（具体的には、メモリのＤＰＢ）の参照ピクチャ（またはコロケートピクチャ）内で対応位置（corresponding position）に記憶された動き情報をフェッチ（または導出、獲得）することができる。
【０２４３】
本発明においては、説明の便宜のために、上記メモリがＤＲＡＭである場合を中心に説明するが、これに限定されるものではなく、上記メモリは、ＤＲＡＭ、ＵＳＢ、ＳＤ、ＣＤ、ＤＶＤ、Ｂｌｕ−ｒａｙ（登録商標）、ＨＤＤ、ＳＳＤなどの様々な記憶媒体を含むことができる。
【０２４４】
実施形態として、上記参照ピクチャ（またはコロケートピクチャ）内の上記対応位置は、現ブロックの右下端（right-bottom）のブロックまたは現ブロックの中央（center）の位置（つまり、ＴＭＶＰ）であり得、上記現ブロックの空間隣接ブロックの動きベクトルによって特定される位置（つまり、ＡＴＭＶＰ）であり得る。
【０２４５】
図２５を参照すると、現ブロック単位でＤＲＡＭ２５０１から時間動きベクトルをフェッチする場合を仮定する。この場合、図２５に示すように、エンコーダ/デコーダは、ＤＲＡＭ２５０１内で、現ブロックの対応位置ブロック２５０２に記憶された、一つの動きベクトルを時間動きベクトルとしてフェッチする。
【０２４６】
一方、本発明の実施形態に係るＡＴＭＶＰ（つまり、サブブロックベースの時間マージ候補）または拡張されたＡＴＭＶＰが適用される場合、サブブロック単位で動き情報をフェッチするため、図２５に示すように、現ブロック単位１つの動き情報をフェッチすることができない。つまり、ＡＴＭＶＰまたは拡張されたＡＴＭＶＰが適用される場合、さらに多くの量のデータがＤＲＡＭ２５０１からフェッチされなければならない。下の図を参照して説明する。
【０２４７】
図２６は、本発明が適用される実施形態に係るサブブロック単位で時間隣接ブロックの動きベクトルをフェッチするプロセス（fetching process）を示す図である。
【０２４８】
図２６を参照すると、現ブロックが４つのサブブロックに分割されて動き補償が行われる場合を仮定する。また、前述したように、本発明においては、説明の便宜のために、上記メモリがＤＲＡＭ２６０１である場合を中心に説明するが、これに限定されるものではなく、上記メモリは、ＤＲＡＭ２６０１、ＵＳＢ、ＳＤ、ＣＤ、ＤＶＤ、ブルーレイ、ＨＤＤ、ＳＳＤなどの様々な記憶媒体を含むことができる。
【０２４９】
図２６に示すように、４つのサブブロック単位で動き情報をフェッチする場合、エンコーダ/デコーダは、ＤＲＡＭ２６０１に記憶された参照ピクチャ（またはコロケートピクチャ）内で、現ブロックの対応位置ブロック２６０２内でそれぞれのサブブロックに対応する４つの動き情報をフェッチする。つまり、４つのサブブロック単位で動き情報をフェッチする場合、エンコーダ/デコーダは、先の図２５で説明した場合に対して（に対比）ＤＲＡＭ２６０１から約４倍のデータをフェッチしなければならない。
【０２５０】
図２５および図２６を比較すると、サブブロックの大きさは、ＤＲＡＭ２６０１からフェッチするデータの量に決定的な影響を及ぼしていることがわかる。したがって、サブブロックの大きさは、ハードウェア、フェッチ性能に応じてデコーダおよびエンコーダパイプライン構成およびスループット（throughput）に大きな影響を与えることができる。
【０２５１】
アフィン動き予測（affine motion prediction）のようなサブブロックベースの動き補償方法は、導出された制御点の動きベクトルに基づいてサブブロック単位で動きベクトルが導出されるが、ＡＴＭＶＰ、すなわち、サブブロックベースの時間マージ候補（または予測子）の場合には、参照ピクチャ（またはコロケートピクチャ）の対応ブロック内でサブブロック単位でメモリに記憶された動きベクトルを持ってくるので、類似のサブブロックベースの動き補償であっても、サブブロックの大きさに応じたハードウェア負荷（負担）は、アフィン動き予測とＡＴＭＶＰとで大きな違いを有する。
【０２５２】
現ブロックを複数のサブブロックに過度に分割する場合は、フェッチを実行するメモリバス（memory bus）の大きさに応じて、複数の回数のフェッチを実行しなければならないという問題が発生することがある。
【０２５３】
したがって、本発明においては、このような問題点を解決するために、固定された最小のサブブロックの大きさを設定（または決定、定義）し、設定されたサブブロック単位での時間動き情報のフェッチプロセスを実行する方法を提案する。
【０２５４】
従来のＡＴＭＶＰまたはＡＴＶＭＰ−ｅｘｔの場合、４ｘ４の大きさのサブブロック単位で、現ブロックを分割して、フェッチおよび動き補償を行う。この場合には、前述したように現ブロックの大きさに応じて、フェッチが要求されるメモリが過度に大きくなることができる。ハードウェアの負荷が非常に大きくなることができ、圧縮性能が低下することができる。
【０２５５】
したがって、本発明の実施形態においては、固定された８ｘ８の大きさのサブブロックまたは固定された１６ｘ１６の大きさのサブブロック単位に分割する方法を提案する。本実施形態で提案する方法は、実験の結果を通じて、ハードウェアの複雑度の向上に対して（対比）圧縮性能の損失が少ないことが証明されており、上記実験結果は、次の表２〜５と同じである。
【０２５６】
まず、下記の表２は、４ｘ４のサブブロック単位でＡＴＭＶＰを実行した圧縮性能を示す。
【０２５７】
＜表２＞
【表２】
2021516502.tif 000006
【０２５８】
次の表３は、８ｘ８のサブブロック単位でＡＴＭＶＰを実行した圧縮性能を示す。
【０２５９】
＜表３＞
【表３】
2021516502.tif 000007
【０２６０】
次の表４は、１６ｘ１６のサブブロック単位でＡＴＭＶＰを実行した圧縮性能を示す。
【０２６１】
＜表４＞
【表４】
2021516502.tif 000008
【０２６２】
次の表５は、３２ｘ３２のサブブロック単位でＡＴＭＶＰを実行した圧縮性能を示す。
【０２６３】
＜表５＞
【表５】
2021516502.tif 000009
【０２６４】
上記表２〜５の実験結果を参照すると、サブブロックの大きさに応じて、圧縮効率とデコード速度との間の差がトレードオフの結果を有するが、ハードウェアの複雑度の改善に対する（対比）圧縮性能の損失が非常に少ないことを確認することができる。
【０２６５】
本発明の実施形態において、エンコーダ/デコーダは、４ｘ４より大きな単位、つまり、８ｘ８、１６ｘ１６または３２ｘ３２単位でサブブロックベースの動き補償（つまり、ＡＴＭＶＰ、ＡＴＭＶＰ−ｅｘｔ）を行うことができ、該大きさのサブブロック単位でサブブロックベースの時間の動き情報をフェッチことができる。
【０２６６】
本発明の実施形態によると、サブブロックベースの動き補償を行うにあたって、相対的に少ない圧縮損失に対して（対比）、高いハードウェアの複雑度の改善効果を得ることができる。
【０２６７】
以下においては、ハードウェアの複雑度を向上（改善）させるために、本発明で提案するサブブロックベースの時間の動き情報導出方法（つまり、ＡＴＭＶＰ、ＡＴＭＶＰ−ｅｘｔ）の適用をコーディングブロックの大きさに応じて制限する方法を提案する。
【０２６８】
本発明の実施形態において、エンコーダ/デコーダは、現ブロック（または現コーディングブロック）の幅または高さが予め定義された大きさより小さい場合、サブブロックベースの時間の動き情報導出方法（つまり、ＡＴＭＶＰ、ＡＴＭＶＰ−ｅｘｔ）を実行しないことがある。
【０２６９】
先に図２４〜図２６で説明した方法は、同じ面積の単位で動き情報のデータフェッチ量を減らすことにより、ハードウェアの複雑度を改善した反面、本実施形態においては、さらにワーストケース（worst case）の複雑度を改善させることができる。従来のビデオ圧縮技術は、ピクチャまたはブロックを様々な形に分割して予測および変換、その他のコーディングを行う。
【０２７０】
これにより、コーディングブロック（コーディングユニットまたは予測ユニット）の大きさは、４ｘ４または４ｘ８、８ｘ４などの小さな大きさのブロックに分割されることができる。このような場合、現ブロックの大きさが時間の動き情報（または時間動きベクトル）を、フェッチする最小のサブブロックの大きさより小さい場合が発生することができる。この場合、ハードウェア面では、最小のサブブロックの大きさではない、最小のコーディングブロックの大きさでフェッチを実行することができる。
【０２７１】
したがって、本発明においては、このような問題を改善するために、現処理ブロックの大きさ（または現ブロックの幅および/もしくは高さ）が予め定義された最小の大きさより小さい場合、ブロック単位時間動きベクトル候補が用いられないことがある。つまり、本発明の実施形態において、エンコーダ/デコーダは、現処理ブロックの大きさ（または現ブロックの幅および/もしくは高さ）が予め定義された最小の大きさ以上の場合に限り、サブブロックベースの時間動きベクトル候補を候補リストに追加することができる。一実施形態として、次の数式３が、サブブロック単位時間動きベクトル候補を用いるための条件として用いられることができる。
【０２７２】
＜数式３＞
【数３】
2021516502.tif 000010
【０２７３】
図２７は、本発明が適用される実施形態に係る候補リスト（candidate list）の生成方法を示すフローチャートである。
【０２７４】
図２７を参照すると、説明の便宜のためにデコーダを中心に説明するが、本実施形態の候補リストの生成方法は、エンコーダでも同じように実行されることができる。一実施形態において、先の図１２〜図１７、図２１〜図２６で説明した方法が適用されることができ、これに関する重複する説明は省略する。
【０２７５】
図２７に示された候補の構成手順は、一つの例として、本発明がこれに限定されるものではなく、順序が変更されたり、一部の段階が省略または追加されることができる。また、図２７で追加される候補は、一つの例として、加えて、他の様々な候補が追加されることもあり、図２７に示された候補のうちの一部の候補が使用されないことがある。
【０２７６】
デコーダは、空間隣接ブロック（spatial neighboring block）（または空間候補（spatial candidate））を候補リストに追加する（Ｓ２７０１）。例えば、デコーダは、先に説明した図１６の周辺候補ブロックを候補リストに追加することができる。
【０２７７】
デコーダは、現ブロックの幅および高さが予め定義された最小の大きさより大きいか同じかを確認する（Ｓ２７０２）。
【０２７８】
デコーダは、現ブロックの幅および高さが予め定義された最小の大きさ以上の場合、時間隣接ブロック（temporal neighboring block）（または時間候補（temporal candidate））を候補リストに追加する（Ｓ２７０３）。現ブロックの幅または高さが予め定義された最小の大きさより小さい場合、デコーダは、時間隣接ブロック（temporal neighboring block）（または時間候補（temporal candidate））を候補リストに追加しないことがある。
【０２７９】
デコーダは、組み合わせた動き情報（または組み合わせた動きベクトル）を候補リストに追加し、ゼロ動きベクトルを候補リストに追加する（Ｓ２７０４、Ｓ２７０５）。
【０２８０】
以上で説明した本発明の実施形態は、説明の便宜上、それぞれの実施形態を区分して説明したが、本発明がこれに限定されるものではない。つまり、先に説明した実施形態は、それぞれ独立して実行されることもあり、一つまたは複数のいくつかの実施形態が組み合わせられて実行されることもある。
【０２８１】
図２８は、本発明が適用される実施形態に係るインター予測ブロックを生成する方法を例示するフローチャートである。
【０２８２】
図２８を参照すると、説明の便宜のためにデコーダを中心に説明するが、本発明がこれに制限されるものではなく、インター予測に基づいて、インター予測ブロックを生成する方法は、エンコーダでも実質的に同じように適用されることができる。
【０２８３】
デコーダは、現ブロックにマージモード（merge mode）が適用される場合、上記現ブロックの空間隣接ブロック（spatial neighboring block）および時間マージ候補（temporal neighboring block）を用いて、マージ候補リスト（merge candidate list）を生成する（Ｓ２８０１）。
【０２８４】
デコーダは、上記マージ候補リスト内で、上記現ブロックのインター予測に用いられる候補を指示するマージインデックス（merge index）を獲得する（Ｓ２８０２）。
【０２８５】
デコーダは、上記現ブロックのインター予測に用いられる候補の動きベクトルに基づいて、上記現ブロックに含まれる複数のサブブロックのそれぞれの動きベクトルを導出する（Ｓ２８０３）。
【０２８６】
デコーダは、上記サブブロックのそれぞれの動きベクトルを用いて上記現ブロックの予測サンプルを生成する（Ｓ２８０４）。
【０２８７】
実施形態として、上記サブブロックの大きさは、８ｘ８以上の固定された特定の大きさに設定することができる。
【０２８８】
実施形態としては、上記マージ候補リストを生成する段階は、上記現ブロックのコロケートピクチャ（collocated picture）内で上記空間隣接ブロックの動きベクトルによって特定される上記現ブロックの時間隣接ブロックを上記マージ候補リストに追加する段階を含むことができる。
【０２８９】
実施形態として、上記マージ候補リストを生成する段階は、上記現ブロックのコロケートピクチャ（collocated picture）内で、上記現ブロックの空間隣接ブロックのうちの予め定義された順序上の最初の空間隣接ブロックの動きベクトルによって特定される上記現ブロックの時間隣接ブロックを上記マージ候補リストに追加する段階を含むことができる。
【０２９０】
実施形態として、上記マージ候補リストを生成する段階は、上記現ブロックの幅および高さが予め定義された最小の大きさより小さいかどうかを確認する段階と、上記確認の結果、上記現ブロックの幅および高さが予め定義された最小の大きさ以上の場合、上記現ブロックのコロケートピクチャ（collocated picture）内で上記空間隣接ブロックの動きベクトルによって特定される上記現ブロックの時間隣接ブロックを上記マージ候補リストに追加する段階と、を含むことができる。
【０２９１】
実施形態として、上記予め定義された最小の大きさは、上記サブブロックの大きさに設定されることができる。
【０２９２】
図２９は、本発明が適用される実施形態に係るインター予測装置を例示する図である。
【０２９３】
図２９においては、説明の便宜のために、インター予測部一つのブロックで示したが、インター予測部は、エンコーダおよび/またはデコーダに含まれる構成で実現されることができる。
【０２９４】
図２９を参照すると、インター予測部に先立ち、図８〜図３２で提案された機能、プロセスおよび/または方法を実現する。具体的には、インター予測部マージ候補リスト生成部２９０１、マージインデックス獲得部２９０２、サブブロックの動きベクトル導出部２９０３および予測ブロック生成部２９０４を含んで構成されることができる。
【０２９５】
マージ候補リスト生成部２９０１は、現ブロックにマージモード（merge mode）が適用される場合、上記現ブロックの空間隣接ブロック（spatial neighboring block）および時間マージ候補（temporal neighboring block）を用いて、マージ候補リスト（merge candidate list）を生成する。
【０２９６】
マージインデックス獲得部２９０２は、上記のマージ候補リスト内で、上記現ブロックのインター予測に用いられる候補を指示するマージインデックス（merge index）を獲得する。
【０２９７】
サブブロックの動きベクトル導出部２９０３は、上記現ブロックのインター予測に用いられる候補の動きベクトルに基づいて上記現ブロックに含まれる複数のサブブロックのそれぞれの動きベクトルを導出する。
【０２９８】
予測ブロック生成部２９０４は、上記サブブロックのそれぞれの動きベクトルを用いて上記現ブロックの予測サンプルを生成する。
【０２９９】
実施形態としては、上記サブブロックの大きさは、８ｘ８以上の固定された特定の大きさに設定することができる。
【０３００】
実施形態として、上記マージ候補リスト生成部２９０１は、上記現ブロックのコロケートピクチャ（collocated picture）内で上記空間隣接ブロックの動きベクトルによって特定される上記現ブロックの時間隣接ブロックを上記マージ候補リストに追加することができる。
【０３０１】
実施形態として、上記マージ候補リスト生成部２９０１は、上記現ブロックのコロケートピクチャ（collocated picture）内で、上記現ブロックの空間隣接ブロックのうちの予め定義された順序上の最初の空間隣接ブロックの動きベクトルによって特定される上記現ブロックの時間隣接ブロックを上記マージ候補リストに追加することができる。
【０３０２】
実施形態として、上記マージ候補リスト生成部２９０１は、上記現ブロックの幅および高さが予め定義された最小の大きさより小さいかどうかを確認し、上記確認の結果、上記記現ブロックの幅および高さが予め定義された最小の大きさ以上の場合、上記現ブロックのコロケートピクチャ（collocated picture）内で上記空間隣接ブロックの動きベクトルによって特定される上記現ブロックの時間隣接ブロックを上記マージ候補リストに追加することができる。
【０３０３】
実施例として、上記予め定義された最小の大きさは、上記サブブロックの大きさに設定されることができる。
【０３０４】
図３０は、本発明が適用されるビデオコーディングシステムを示す。
【０３０５】
ビデオコーディングシステムは、ソース装置（source device）および受信装置（receiving device）を含むことができる。ソース装置は、エンコードされたビデオ／映像情報またはデータを、ファイルまたはストリーミング形式でデジタル記憶媒体またはネットワークを介して受信装置に伝達することができる。
【０３０６】
上記ソース装置は、ビデオソース（video source）、エンコード装置（encoding apparatus）、転送部（transmitter）を含むことができる。上記受信装置は、受信部（receiver）、デコード装置（decoding apparatus）およびレンダラ（renderer）を含むことができる。上記エンコード装置は、ビデオ／映像エンコード装置と呼ばれることができ、上記デコード装置は、ビデオ／映像デコード装置と呼ばれることができる。送信器は、エンコード装置に含まれることができる。受信器は、デコード装置に含まれることができる。レンダラは、ディスプレイ部を含むこともでき、ディスプレイ部は、別の装置または外部のコンポーネントで構成されることもある。
【０３０７】
ビデオソースは、ビデオ／映像のキャプチャ、合成または生成過程などを通じてビデオ／映像を獲得することができる。ビデオソースは、ビデオ／映像キャプチャ装置および/またはビデオ／映像生成装置を含むことができる。ビデオ／映像キャプチャ装置は、例えば、１つまたは複数のカメラ、以前にキャプチャされたビデオ／映像を含むビデオ／映像アーカイブなどを含むことができる。ビデオ／映像生成装置は、例えばコンピュータ、タブレットおよびスマートフォンなどを含むことができ、（電子的に）ビデオ／映像を生成することができる。たとえば、コンピュータなどを通じて、仮想のビデオ／映像が生成されることができ、この場合、関連するデータが生成される過程として、ビデオ／映像キャプチャプロセスが代わることができる。
【０３０８】
エンコード装置は、入力ビデオ／映像をエンコードすることができる。エンコード装置は、圧縮およびコーディング効率のために予測、変換、量子化などの一連の手順を実行することができる。エンコードされたデータ（エンコードされたビデオ／映像情報）は、ビットストリーム（bitstream）の形で出力されることができる。
【０３０９】
転送部は、ビットストリームの形で出力されたエンコードされたビデオ／映像情報またはデータを、ファイルまたはストリーミング形式でデジタル記憶媒体またはネットワークを介して受信装置の受信部に伝達することができる。デジタル記憶媒体は、ＵＳＢ、ＳＤ、ＣＤ、ＤＶＤ、Ｂｌｕ−ｒａｙ（登録商標）、ＨＤＤ、ＳＳＤなど、様々な記憶媒体を含むことができる。転送部は、予め決められたファイルフォーマットを介してメディアファイルを生成するためのエレメントを含むことができ、放送/通信ネットワークを介して転送するためのエレメントを含むことができる。受信部は、上記ビットストリームを抽出してデコード装置に伝達することができる。
【０３１０】
デコード装置は、エンコード装置の動作に対応する逆量子化、逆変換、予測などの一連の手順を実行して、ビデオ／映像をデコードすることができる。
【０３１１】
レンダラは、デコードされたビデオ／映像をレンダリングすることができる。レンダリングされたビデオ／映像は、ディスプレイ部を介して表示されることができる。
【０３１２】
図３１は、本発明が適用される実施形態として、コンテンツのストリーミングシステム構造図を示す。
【０３１３】
図３１を参照すると、本発明が適用されるコンテンツのストリーミングシステムは、概して、エンコードサーバ、ストリーミングサーバ、Ｗｅｂサーバ、メディアストレージ、ユーザ装置およびマルチメディア入力装置を含むことができる。
【０３１４】
上記エンコードサーバは、スマートフォン、カメラ、ビデオカメラなどのマルチメディア入力装置から入力されたコンテンツをデジタルデータに圧縮してビットストリームを生成し、これを上記ストリーミングサーバに転送する役割を果たす。他の例として、スマートフォン、カメラ、ビデオカメラなどのマルチメディア入力装置がビットストリームを直接生成する場合、上記エンコードサーバは、省略されることができる。
【０３１５】
上記ビットストリームは、本発明が適用されるエンコード方法またはビットストリームを生成する方法によって生成されることができ、上記ストリーミングサーバは、上記ビットストリームを転送または受信する過程で一時的に上記ビットストリームを記憶することができる。
【０３１６】
上記ストリーミングサーバは、Ｗｅｂ（ウェブ）サーバを介した、ユーザの要求（要請）に基づいて、マルチメディアデータをユーザ装置に転送し、上記ウェブサーバは、ユーザにどのようなサービスがあるかを知らせる媒介体の役割を果たす。ユーザが上記Ｗｅｂサーバに所望するサービスを要求すると、上記Ｗｅｂサーバは、これをストリーミングサーバに伝達し、上記ストリーミングサーバは、ユーザに、マルチメディアデータを転送する。この際、上記コンテンツのストリーミングシステムは、別の制御サーバを含むことができ、この場合、上記制御サーバは、上記コンテンツのストリーミングシステム内の各装置間のコマンド/応答を制御する役割を果たす。
【０３１７】
上記ストリーミングサーバは、メディアストレージおよび/またはエンコードサーバからコンテンツを受信することができる。例えば、上記のエンコードサーバからコンテンツを受信することになる場合、上記コンテンツをリアルタイムで受信することができる。この場合、円滑なストリーミングサービスを提供するために、上記ストリーミングサーバは、上記ビットストリームを一定時間の間記憶することができる。
【０３１８】
上記ユーザ装置の例としては、携帯電話、スマートフォン（smartphone）、ノートパソコン（laptop computer）、デジタル放送用端末機、ＰＤＡ（Personal Digital Assistants）、ＰＭＰ（Portable Multimedia Player）、ナビゲーション、スレートＰＣ（slate PC）、タブレットＰＣ（tablet PC）、ウルトラブック（ULTRABOOK（登録商標））、ウェアラブル装置（wearable device、例えば、ウォッチ（位置）型端末（smartwatch）、グラス型端末（smart glass）、ＨＭＤ（Head Mounted Display））、デジタルＴＶ、デスクトップコンピュータ、デジタルサイネージなどがあることができる。
【０３１９】
上記コンテンツのストリーミングシステム内の各サーバは、分散サーバで運用されることができ、この場合、各サーバで受信されるデータは、分散処理されることができる。
【０３２０】
上記記述されたように、本発明で説明した実施形態は、プロセッサ、マイクロプロセッサ、コントローラ、またはチップ上で実現されて実行されることができる。例えば、各図で示した機能ユニットは、コンピュータ、プロセッサ、マイクロプロセッサ、コントローラ、またはチップ上で実現されて実行されることができる。
【０３２１】
また、本発明が適用されるデコーダおよびエンコーダは、マルチメディア放送送受信装置、モバイル通信端末、ホームシネマビデオ装置、デジタルシネマビデオ装置、監視用カメラ、ビデオ対話装置、ビデオ通信などのリアルタイム通信装置、モバイルストリーミング装置、記憶媒体、ビデオカメラ、ビデオオンデマンド（ＶｏＤ）サービス提供装置、ＯＴＴビデオ（Over The Top video）装置、インターネットストリーミングサービス提供装置、３次元（３Ｄ）ビデオ装置、テレビ電話、ビデオ装置、および医療用ビデオ装置などに含まれることができ、ビデオ信号またはデータ信号を処理するために用いられることができる。たとえば、ＯＴＴビデオ（Over The Top video）装置は、ゲーム機、ブルーレイプレーヤ、インターネット接続ＴＶ、ホームシアターシステム、スマートフォン、タブレットＰＣ、ＤＶＲ（Digital Video Recorder）などを含むことができる。
【０３２２】
また、本発明が適用される処理方法は、コンピュータで実行されるプログラムの形で生産されることができ、コンピュータが読み取り可能な記録媒体に記憶されることができる。本発明に係るデータ構造を有するマルチメディアデータもまた、コンピュータが読み取り可能な記録媒体に記憶されることができる。上記コンピュータが読み取り可能な記憶媒体は、コンピュータで読み取り可能なデータが記憶されるあらゆる種類のストレージ装置および分散ストレージ装置を含む。上記コンピュータが読み取り可能な記憶媒体は、例えば、ブルーレイディスク（ＢＤ）、ユニバーサルシリアルバス（ＵＳＢ）、ＲＯＭ、ＰＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、ＲＡＭ、ＣＤ−ＲＯＭ、磁気テープ、フロッピ（登録商標）ディスク、および光学データ記憶装置を含むことができる。また、上記コンピュータが読み取り可能な記録媒体は、搬送波（例えば、インターネットを通じた伝送）の形で実現されたメディアを含む。また、エンコード方法で生成されたビットストリームは、コンピュータが読み取り可能な記録媒体に記憶されたり、有無線通信ネットワークを介して転送されることができる。
【０３２３】
また、本発明の実施形態は、プログラムコードによるコンピュータプログラム製品として実現されることができ、上記プログラムコードは、本発明の実施形態により、コンピュータで実行されることができる。上記プログラムコードは、コンピュータによって読み取り可能なキャリア上に記憶されることができる。
【０３２４】
以上で説明した実施形態は、本発明の構成要素および特徴が所定の形態で結合されたものである。各構成要素または特徴は、別の明示的な言及がない限り選択的なものとして検討されるべきである。各構成要素または特徴は、他の構成要素や特徴と結合されない形態で実施されることができる。また、一部の構成要素および/または特徴を結合して、本発明の実施形態を構成することも可能である。本発明の実施形態で説明される動作の順序は、変更されることができる。どの実施形態の一部の構成や特徴も、他の実施形態に含まれることができ、または他の実施形態に対応する構成もしくは特徴と代替（交替）されることができる。特許請求の範囲で明示的な引用関係がない請求項を結合して実施形態を構成したり、出願後の補正により新しい請求項として含めることができることは自明である。
【０３２５】
本発明に係る実施形態は、様々な手段、例えば、ハードウェア、ファームウェア（firmware）、ソフトウェアまたはそれらの組み合わせなどにより実現されることができる。ハードウェアによる実現の場合、本発明の一実施形態は、一つまたは複数のＡＳＩＣｓ（Application Specific Integrated Circuits）、ＤＳＰｓ（Digital Signal Processors）、ＤＳＰＤｓ（Digital Signal Processing Devices）、ＰＬＤｓ（Programmable Logic Devices）、ＦＰＧＡｓ（Field Programmable Gate Arrays）、プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサなどにより実現されることができる。
【０３２６】
ファームウェアやソフトウェアによる実現の場合、本発明の一実施形態は、以上で説明した機能または動作を実行するモジュール、プロシージャ、関数などの形態で実現されることができる。ソフトウェアコードは、メモリに記憶されてプロセッサによって駆動されることができる。上記メモリは、上記プロセッサの内部または外部に位置して、既に公知の多様な手段により、上記プロセッサとデータを送受信することができる。
【０３２７】
本発明は、本発明の必須の特徴を逸脱しない範囲で他の特定の形態で具体化されることができることは、当業者にとって自明である。したがって、前述した詳細な説明は、すべての面で制限的に解釈されてはならず、例示的なものとみなされるべきである。本発明の範囲は、添付された請求項の合理的解釈によって決定されるべきで、本発明の等価的範囲内におけるすべての変更は、本発明の範囲に含まれる。
【産業上の利用可能性】
【０３２８】
以上、前述した本発明の好ましい実施形態は、例示の目的のために開示されたもので、当業者であれば、以下に添付された特許請求の範囲に開示された本発明の技術的思想およびその技術的範囲内で、様々な他の実施形態を改良、変更、代替または付加などが可能である。
【図１】
2021516502.tif 000011
【図２】
2021516502.tif 000012
【図３】
2021516502.tif 000013
【図４】
2021516502.tif 000014
【図５】
2021516502.tif 000015
【図６】
2021516502.tif 000016
【図７】
2021516502.tif 000017
【図８】
2021516502.tif 000018
【図９】
2021516502.tif 000019
【図１０】
2021516502.tif 000020
【図１１】
2021516502.tif 000021
【図１２】
2021516502.tif 000022
【図１３】
2021516502.tif 000023
【図１４】
2021516502.tif 000024
【図１５】
2021516502.tif 000025
【図１６】
2021516502.tif 000026
【図１７】
2021516502.tif 000027
【図１８】
2021516502.tif 000028
【図１９】
2021516502.tif 000029
【図２０】
2021516502.tif 000030
【図２１】
2021516502.tif 000031
【図２２】
2021516502.tif 000032
【図２３】
2021516502.tif 000033
【図２４】
2021516502.tif 000034
【図２５】
2021516502.tif 000035
【図２６】
2021516502.tif 000036
【図２７】
2021516502.tif 000037
【図２８】
2021516502.tif 000038
【図２９】
2021516502.tif 000039
【図３０】
2021516502.tif 000040
【図３１】
2021516502.tif 000041
【手続補正書】
【提出日】令和2年9月8日(2020.9.8)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００３５
【補正方法】変更
【補正の内容】
【００３５】
エンコード装置１００は、入力映像信号（オリジナル（原本）ブロック、オリジナルのサンプルアレイ）において、インター予測部１８０またはイントラ予測部１８５から出力された予測信号（予測されたブロック、予測サンプルアレイ）を減算して残差信号（residual signal、残りのブロック、残りのサンプルアレイ）を生成することができ、生成された残差信号は、変換部１２０に転送される。この場合、図示のように、エンコード装置１００内で入力映像信号（オリジナル（原本）ブロック、オリジナルのサンプルアレイ）において予測信号（予測ブロック、予測サンプルアレイ）を減算するユニットは、減算部１１５と呼ばれることができる。予測部は、処理対象ブロック（以下、現ブロックと称する）の予測を行い、上記現ブロックの予測サンプルを含む予測されたブロック（predicted block）を生成することができる。予測部は、現ブロックもしくはＣＵ単位でイントラ予測が適用されるか、またはインター予測が適用されるかを決定することができる。予測部は、各予測モードの説明で後述するように、予測モード情報などの予測に関する様々な情報を生成し、エントロピエンコード部１９０に伝達することができる。予測に関する情報は、エントロピエンコード部１９０でエンコードされてビットストリーム形態で出力されることができる。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００４６
【補正方法】変更
【補正の内容】
【００４６】
図２を参照すると、デコード装置２００は、エントロピデコード部２１０、逆量子化部２２０、逆変換部２３０、加算部２３５、フィルタリング部２４０、メモリ２５０、インター予測部２６０およびイントラ予測部２６５を含んで構成されることができる。インター予測部２６０およびイントラ予測部２６５を合わせて予測部と呼ぶことができる。つまり、予測部は、インター予測部２６０およびイントラ予測部２６５を含むことができる。逆量子化部２２０、逆変換部２３０を合わせて残差処理部と呼ぶことができる。つまり、残差処理部は、逆量子化部２２０、逆変換部２３０を含むことができる。前述したエントロピデコード部２１０、逆量子化部２２０、逆変換部２３０、加算部２３５、フィルタリング部２４０、インター予測部２６０およびイントラ予測部２６５は、実施形態に応じて一つのハードウェアコンポーネント（例えば、デコーダまたはプロセッサ）によって構成されることができる。また、メモリ１７０は、ＤＰＢ（Decoded Picture Buffer）を含むことができ、デジタル記憶媒体によって構成されることもできる。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００４８
【補正方法】変更
【補正の内容】
【００４８】
デコード装置２００は、図１のエンコード装置から出力された信号をビットストリーム形態で受信することができ、受信した信号は、エントロピデコード部２１０を介してデコードすることができる。例えば、エントロピデコード部２１０は、上記ビットストリームを解析して映像復元（またはピクチャ復元）に必要な情報（例えば、ビデオ／映像情報）を導出することができる。例えば、エントロピデコード部２１０は、指数ゴロム符号化、ＣＡＶＬＣまたはＣＡＢＡＣなどのコーディング方法に基づいてビットストリーム内の情報をデコードし、映像復元に必要な構文要素の値、残差に関する変換係数の量子化された値を出力することができる。さらに詳細には、ＣＡＢＡＣエントロピデコード方法は、ビットストリームで各構文要素に対応するビン（bin）を受信し、デコード対象構文要素の情報ならびに周辺およびデコード対象ブロックのデコード情報、または前の段階でデコードされたシンボル/ビンの情報を用いてコンテキスト（context）モデルを決定し、決定したコンテキストモデルに基づいて、ビンの発生確率を予測して、ビンの算術復号（デコーディング）（arithmetic decoding）を実行して、各構文要素の値に対応するシンボルを生成することができる。このとき、ＣＡＢＡＣエントロピデコード方法は、コンテキストモデルを決定した後、次のシンボル／空のコンテキスト（文脈）モデルのためにデコードされたシンボル／ビンの情報を用いて、コンテキストモデルを更新することができる。エントロピデコード部２１０でデコードされた情報のうちの予測に関する情報は、予測部（インター予測部２６０およびイントラ予測部２６５）に提供され、エントロピデコード部２１０から、エントロピデコードが行われた残差値、すなわち量子化された変換係数および関連パラメータ情報が、逆量子化部２２０に入力されることができる。また、エントロピデコード部２１０でデコードされた情報のうちのフィルタリングに関する情報は、フィルタリング部２４０に提供されることができる。一方、エンコード装置から出力された信号を受信する受信部（図示せず）は、デコード装置２００の内／外部エレメントとしてさらに構成されることがあり、または受信部は、エントロピデコード部２１０の構成要素であり得る。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００５７
【補正方法】変更
【補正の内容】
【００５７】
メモリ２５０のＤＰＢに記憶された（修正された）復元ピクチャは、インター予測部２６０によって参照ピクチャとして用いられることができる。メモリ２５０は、現ピクチャ内の動き情報が導出された（またはデコードされた）ブロックの動き情報および/または既に復元されたピクチャ内のブロックの動き情報を記憶することができる。上記記憶された動き情報は、空間的周辺ブロックの動き情報または時間的周辺ブロックの動き情報として活用されるために、インター予測部２６０に伝達されることができる。メモリ２５０は、現ピクチャ内の復元されたブロックの復元サンプルを記憶することができ、イントラ予測部２６５に伝達することができる。
【手続補正５】
【補正対象書類名】図面
【補正対象項目名】図２
【補正方法】変更
【補正の内容】
【図２】
2021516502.tif 000042
【国際調査報告】
2021516502.tif 000043
2021516502.tif 000044
2021516502.tif 000045
2021516502.tif 000046