(57)【要約】  ビデオシーケンスのインター予測符号化に使用されるマージ候補を検索するための方法とデバイスであって、当該方法は、現在のＣＵのサイズと閾値サイズとの間の比較を実行し、比較結果に基づいて、マージ候補を検索するための検索グリッドのサイズを変更して、マージ候補リストを構築することを含む。【特許請求の範囲】
【請求項１】
デバイスが実行する、ビデオシーケンスのインター予測符号化に使用されるマージ候補を検索する方法であって、前記方法は、
現在のＣＵのサイズと閾値サイズとの間の比較を実行するステップと、
前記比較の結果に基づいて、前記マージ候補を検索するための検索グリッドのサイズを変更して、マージ候補リストを構築するステップと、を含む方法。
【請求項２】
前記現在のＣＵのサイズは、前記現在のＣＵの高さと前記現在のＣＵの幅のうちの大きい方を含む請求項１に記載の方法。
【請求項３】
前記現在のＣＵのサイズは、前記現在のＣＵの高さと前記現在のＣＵの幅のうちの小さい方を含む請求項１に記載の方法。
【請求項４】
前記現在のＣＵのサイズは、前記現在のＣＵの高さと前記現在のＣＵの幅との合計を含む請求項１に記載の方法。
【請求項５】
前記現在のＣＵのサイズが前記閾値サイズよりも大きいと判定したことに応答して、前記検索グリッドのサイズを固定サイズに設定するステップと、
前記現在のＣＵのサイズが前記閾値サイズよりも小さいと判定したことに応答して、前記現在のＣＵのサイズに基づいて、前記検索グリッドのサイズを可変サイズに設定するステップと、をさらに含む請求項１に記載の方法。
【請求項６】
前記現在のＣＵのサイズが前記閾値サイズよりも小さいと判定したことに応答して、前記検索グリッドのサイズを固定サイズに設定するステップと、
前記現在のＣＵのサイズが前記閾値サイズよりも大きいと判定したことに応答して、前記現在のＣＵのサイズに基づいて、前記検索グリッドのサイズを可変サイズに設定するステップと、をさらに含む請求項１に記載の方法。
【請求項７】
前記現在のＣＵの幅に基づいて前記検索グリッドの水平サイズを決定し、
前記現在のＣＵの高さに基づいて前記検索グリッドの垂直サイズを決定する請求項１に記載の方法。
【請求項８】
シーケンスパラメータセット、ピクチャパラメータセット及びスライスヘッダのうちの少なくとも１つにおいて、前記閾値サイズを信号で示す請求項１に記載の方法。
【請求項９】
前記検索グリッドにおいて前記マージ候補を検索するためのスキャン順序はＡ（ｉ，ｊ）、Ｂ（ｉ，ｊ）、Ｃ（ｉ，ｊ）、Ｄ（ｉ，ｊ）、Ｅ（ｉ，ｊ）として表され、
ｉは、前記現在のＣＵからの水平オフセットの数を表し、
ｊは、前記現在のＣＵからの垂直オフセットの数を表し、
Ａ（０，０）は、前記現在のＣＵの左側にあり、
Ｂ（０，０）は、前記現在のＣＵの上側にあり、
Ｃ（０，０）は、前記現在のＣＵの右上隅にあり、
Ｄ（０，０）は、前記現在のＣＵの左下隅にあり、
Ｅ（０，０）は、前記現在のＣＵの左上隅にある請求項１に記載の方法。
【請求項１０】
マージモードとスキップモードのうちの少なくとも１つにおいて前記マージ候補リストを使用する請求項１に記載の方法。
【請求項１１】
前記検索グリッドは、拡張マージモードに関連する検索モードで検索される請求項１に記載の方法。
【請求項１２】
ビデオシーケンスのインター予測符号化に使用されるマージ候補を検索するためのデバイスであって、前記デバイスは、
プログラムコードを記憶するように配置される少なくとも１つのメモリと、
前記プログラムコードを読み取り、前記プログラムコードの指示に従って動作するように配置される少なくとも１つのプロセッサと、を含み、
前記プログラムコードは、
現在のＣＵのサイズと閾値サイズとの間の比較を実行するための比較コードと、
前記比較の結果に基づいて、前記マージ候補を検索するための検索グリッドのサイズを変更して、マージ候補リストを構築するための検索コードと、を含むデバイス。
【請求項１３】
前記現在のＣＵのサイズは、前記現在のＣＵの高さと前記現在のＣＵの幅のうちの大きい方を含む請求項１２に記載のデバイス。
【請求項１４】
前記現在のＣＵのサイズは、前記現在のＣＵの高さと前記現在のＣＵの幅のうちの小さい方を含む請求項１２に記載のデバイス。
【請求項１５】
前記現在のＣＵのサイズは、前記現在のＣＵの高さと前記現在のＣＵの幅との合計を含む請求項１２に記載のデバイス。
【請求項１６】
前記現在のＣＵのサイズが前記閾値サイズよりも大きいと判定したことに応答して、前記検索グリッドのサイズを固定サイズに設定することと、
前記現在のＣＵのサイズが前記閾値サイズよりも小さいと判定したことに応答して、前記現在のＣＵのサイズに基づいて前記検索グリッドのサイズを可変サイズに設定することと、をさらに含む請求項１２にに記載のデバイス。
【請求項１７】
前記現在のＣＵのサイズが前記閾値サイズよりも小さいと判定したことに応答して、前記検索グリッドのサイズを固定サイズに設定することと、
前記現在のＣＵのサイズが前記閾値サイズよりも大きいと判定したことに応答して、前記現在のＣＵのサイズに基づいて前記検索グリッドのサイズを可変サイズに設定することと、をさらに含む請求項１２に記載のデバイス。
【請求項１８】
前記現在のＣＵの幅に基づいて、前記検索グリッドの水平サイズを決定し、
前記現在のＣＵの高さに基づいて、前記検索グリッドの垂直サイズを決定する請求項１２に記載のデバイス。
【請求項１９】
マージモードとスキップモードのうちの少なくとも１つにおいて前記マージ候補リストを使用する請求項１２に記載のデバイス。
【請求項２０】
コンピュータに、請求項１乃至１１の何れか一項に記載の方法を実行させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、３５ Ｕ.Ｓ.Ｃ. § １１９に基づいて、２０１８年６月４日にてアメリカ特許商標庁に提出されたアメリカ特許出願第６２／６８０，４９７の優先権を主張し、その開示の全内容を参照により本明細書に組み込む。
【０００２】
本開示は、例えば、多用途ビデオ符号化（ＶＶＣ）などの、高効率ビデオ符号化（ＨＥＶＣ）を超えた次世代のビデオ符号化技術に関する。より具体的に、本発明は、例えばマージモードなどのインターピクチャ予測符号化のための若干の方法に関する。追加の空間的又は時間的マージ候補はマージ候補リストに挿入される。マージ候補リストの構築が変更された。マージインデックスの新しいシグナリングスキームについても検討した。
【背景技術】
【０００３】
ＨＥＶＣでは、インターピクチャ予測のためのマージモードが導入されている。隣接ブロックからの候補動きパラメータのマージ候補リストを構築する。そして、インデックスを信号で示し、当該インデックスは、使用対象となる候補を識別する。マージモードは、以前に符号化されたピクチャから取得した候補をリストに含めることで、時間予測も可能になる。ＨＥＶＣでは、図１に示す５つの空間的隣接ブロックから導出される最大４つの空間マージ候補、２つの時間的コロケートブロックから導出される１つの時間的マージ候補、及び、組み合わせられた双方向予測候補とゼロ動きベクトル候補を含む追加のマージ候補に基づいて、マージ候補リストを構築する。
【０００４】
ＨＥＶＣでは、スキップモードは、ブロックについて、動きデータが信号で明確に示されるものではなく、推定されるものであることを指示するために使用され、また、予測残差がゼロであることを指示するために使用され、つまり、変換係数は伝送されない。ＨＥＶＣでは、インターピクチャ予測スライスにおける各ＣＵの先頭で、ｓｌｉｐ_ｆｌａｇを信号で示し、当該ｓｌｉｐ_ｆｌａｇは、ＣＵが１つのＰＵ（２Ｎ×２Ｎ）のみを含み、マージモードを使用して動きデータを導出し、ビットストリームに残差データが存在しないことを意味する。
【０００５】
ジョイントビデオ探索チーム（ＪＶＥＴ）によって検討されたテストモデルソフトウェアである共同探索モデル７（ＪＥＭ ７）において、新しいマージ候補が導入される。サブＣＵモードが追加のマージ候補とすることを可能にし、これらのモードを信号で示すために追加の構文要素は必要ではない。２つの追加のマージ候補は、ＡＴＭＶＰモードとＳＴＭＶＰモードを表すために、各ＣＵのマージ候補リストに追加される。シーケンスパラメータセットが、ＡＴＭＶＰとＳＴＭＶＰとを可能にすることを指示すると、最大７つのマージ候補を使用する。追加のマージ候補の符号化ロジックは、ＨＥＶＣにおけるマージ候補の符号化ロジックと同じであり、これは、Ｐスライス又はＢスライスにおける各ＣＵについて、これらの２つの追加のマージ候補に対してさらに２回のＲＤチェックが必要である。ＪＥＭでは、插入されるマージ候補の順序は、Ａ、Ｂ、Ｃ、Ｄ、ＡＴＭＶＰ、ＳＴＭＶＰ、Ｅ（リストにおけるマージ候補が６よりも小さい場合）、ＴＭＶＰ、組み合わせられた双方向予測候補及びゼロ動きベクトル候補である。
【０００６】
ＪＥＭでは、マージインデックスの全てのバイナリビットは、ＣＡＢＡＣによってコンテキスト符号化される。ＨＥＶＣでは、最初のバイナリビットのみをコンテキスト符号化し、残りのバイナリビットをコンテキストバイパス符号化する。ＪＥＭでは、マージ候補の最大数は７である。
【０００７】
別のスキームは、８×８ブロックのステップサイズで、以前に符号化されたブロックからの候補動きベクトルにおいて検索することである。当該スキームは、最も近い空間近傍、即ち、すぐ隣接する上の行、左の列、右上隅をカテゴリ１として定義し、外部の領域（現在のブロックの境界から最も遠い３つの８×８ブロック）、及び以前に符号化されたフレームにおける連結ブロックを、カテゴリ２として分類することである。リストから、異なる参照フレームに基づき予測された隣接ブロック、又はフレーム内の符号化された隣接ブロックを削除する。そして、残りの参照ブロックのそれぞれに重みを割り当てる。当該重みは、現在のブロックまでの距離に関する。図２は、当該スキームにおけるマージ候補リストの構築の例を示す。
【０００８】
ＪＶＥＴ-Ｊ００５９では、図３に示すように、より多くの空間位置をチェックする。これらの位置の時間候補の後の番号順に従って、６から２７までの拡張空間位置をチェックする。ＭＶラインバッファを保存するために、全ての空間候補は２つのＣＴＵ線内に制限される。つまり、現在のＣＴＵ線よりも上のＣＴＵ線を超える空間候補は除外される。これらの追加の空間マージ候補のグリッドはブロックサイズに基づいている。そのため、各候補は、水平方向における次の候補からの幅のオフセット、及び垂直方向における次の候補からの高さのオフセットでる。幅と高さは現在のブロックサイズである。
【０００９】
マージ候補リスト内の候補の数はＮｕｍＭｒｇＣａｎｄｓによって制御される。ＨＥＶＣでは、ＮｕｍＭｒｇＣａｎｄｓ=５である。ＪＥＭでは、ＡＴＭＶＰがオンになる場合、ＮｕｍＭｒｇＣａｎｄｓは２増加する。この提案された方法では、ＮｕｍＭｒｇＣａｎｄｓは６増加するため、ＡＴＭＶＰがオフになる場合、ＮｕｍＭｒｇＣａｎｄｓは１１になり、ＡＴＭＶＰがオンになる場合、ＮｕｍＭｒｇＣａｎｄｓは１３になる。
【００１０】
マージ候補リストの再構築処理中に、一旦、候補の数がＮｕｍＭｒｇＣａｎｄｓに達すると、候補を追加する処理全体は停止する。生成されたマージ候補以外のマージ候補の全てに対して冗長性チェックを行う。つまり、空間位置からの一意の動き候補、ＡＴＭＶＰ及び時間候補のみをマージ候補リストに含めることができる。マージ候補リストは、現在のＪＥＭ（冗長性チェックを含む）と同様に、位置１から５までの空間位置、ＡＴＭＶＰ候補及び時間候補を追加し、また、位置６から２７までの拡張空間位置（冗長性チェックを含む）を追加することで構築される。
【発明の概要】
【課題を解決するための手段】
【００１１】
一実施例において、ビデオシーケンスのインター予測符号化に使用されるマージ候補を検索するための方法を提供し、当該方法は、現在のＣＵのサイズと閾値サイズとの間の比較を実行するステップと、比較の結果に基づいて、マージ候補を検索するための検索グリッドのサイズを変更して、マージ候補リストを構築するステップと、を含む。
【００１２】
一実施例において、ビデオシーケンスのインター予測符号化に使用されるマージ候補を検索するためのデバイスを提供し、当該デバイスは、プログラムコードを記憶するように配置される少なくとも１つのメモリと、プログラムコードを読み取り、プログラムコードの指示に従って動作するように配置される少なくとも１つのプロセッサとを含み、当該プログラムコードは、現在のＣＵのサイズと閾値サイズとの間の比較を実行するための比較コードと、比較の結果に基づいて、マージ候補を検索するための検索グリッドのサイズを変更して、マージ候補リストを構築するための検索コードとを含む。
【００１３】
一実施例において、命令が記憶される非一時的コンピュータ可読媒体を提供し、当該命令は、１つ以上の命令を含み、ビデオシーケンスのインター予測符号化に使用されるマージ候補を検索するデバイスの１つ以上のプロセッサによって当該１つ以上の命令が実行される場合に、前記１つ以上の命令によって、前記１つ以上のプロセッサは、
現在のＣＵのサイズと閾値サイズとの間の比較を実行し、
比較の結果に基づいて、マージ候補を検索するための検索グリッドのサイズを変更して、マージ候補リストを構築するために使用される。
【図面の簡単な説明】
【００１４】
開示されたテーマの他の特徴、性質及び様々な利点は以下の詳しい説明及び図面からより明確になり、図面において、
【図１】空間マージ候補の図である。
【図２】マージ候補の構築例を示す図である。
【図３】拡張空間候補の位置を示す図である。
【図４】符号化されたビデオビットストリーム内の現在のブロックを符号化するための変換タイプを信号で示す例示的な処理のフローチャートである。
【図５】本開示の一実施例による通信システムの概略ブロック図である。
【図６】ストリーミング環境におけるビデオ符号器と復号器の配置例の図である。
【図７】本開示の一実施例によるビデオ復号器の機能ブロック図である。
【図８】本開示の一実施例による検索モードを示す例示的図である。
【図９】本開示の一実施形態によるビデオ符号器の機能ブロック図である。
【図１０】一実施例によるコンピュータシステムの図である。
【発明を実施するための形態】
【００１５】
図４は、本開示の一実施例によるの通信システム（３００）の概略的ブロック図を示す。通信システム（３００）は、ネットワーク（４５０）を介して相互接続された少なくとも２つの端末（４１０〜４２０）を含み得る。データの一方向伝送の場合、第１の端末（４１０）は、ローカル位置でビデオデータを符号化して、ネットワーク（４５０）を介して他の端末（４２０）に伝送することができる。第２の端末（４２０）は、ネットワーク（４５０）から他の端末の符号化されたビデオデータを受信し、符号化されたデータを復号化し、復元されたビデオデータを表示することができる。データの一方向伝送は、媒体サービスアプリケーションなどでは一般的である。
【００１６】
図４は、例えば、ビデオ会議中に発生する可能性がある符号化されたビデオの双方向伝送をサポートするために提供される第２対の端末（４３０、４４０）を示す。データの双方向伝送の場合、各端末（４３０、４４０）は、ローカル位置でキャプチャされたビデオデータを符号化して、ネットワーク（４５０）を介して他方の端末に伝送することができる。各端末（４３０、４４０）は、また、他方の端末によって伝送された符号化されたビデオデータを受信し、符号化されたデータを復号化し、復元されたビデオデータをローカル表示デバイスに表示してもよい。
【００１７】
図４において、端末（４１０〜４４０）は、サーバ、パーソナルコンピュータ、及びスマートフォンとして例示されるが、本開示の原理はこれに限定されていない。本開示の実施例はラップトップコンピュータ、タブレット、メディアプレイヤー及び／又は専用のビデオ会議機器に適用される。ネットワーク（４５０）は端末機器（４１０〜４４０）の間で符号化されたビデオデータを伝送する任意の数のネットワークを示し、例えば、有線及び／又は無線通信ネットワークを含む。通信ネットワーク（４５０）は、回線交換及び／又はパケット交換チャネルにおいてデータを交換することができる。代表的なネットワークは、電気通信ネットワーク、ローカルエリアネットワーク、ワイドエリアネットワーク及び／又はインターネットを含む。本出願の検討の目的のために、ネットワーク（４５０）のアーキテクチャとトポロジーは、以下に本明細書で説明されない限り、本開示の操作にとって重要ではないかもしれない。
【００１８】
開示されたテーマの適用例として、図５は、ストリーミング環境におけるビデオ符号器と復号器の配置形態を示し、開示されたテーマは、等価的に、ビデオ会議、デジタルＴＶを含む、ビデオをサポートする他のアプリケーションに適用され、ＣＤ、ＤＶＤ、メモリースティックなどを含むデジタルメデイアに圧縮ビデオなどを記憶してもよい。
【００１９】
ストリーミングシステムは、キャプチャサブシステム（５１３）を含むことができ、当該キャプチャサブシステムは、例えば、デジタル撮影装置などの、例えば非圧縮のビデオサンプルストリーム（５０２）を作成するビデオソース（５０１）を含んでもよい。ビデオサンプルストリーム（５０２）は、符号化されたビデオビットストリームと比較して多いデータ量を強調するために太線として描かれる。サンプルストリーム（５０２）は、撮影装置（５０１）に連結された符号器（５０３）によって処理されることができる。符号器（５０３）は、以下でより詳細に説明する開示されたテーマの各態様を実現又は実施するために、ハードウェア、ソフトウェア、又はそれらの組み合わせを含むことができる。符号化されたビデオビットストリーム（５０４）は、サンプルストリームと比較して少ないデータ量を強調するために細い線として描かれる。符号化されたビデオビットストリーム（５０４）は、将来の使用のために、ストリームサーバ（５０５）に記憶され得る。１つ以上のストリーミングクライアント（５０６、５０８）は、ストリーミングサーバ（５０５）にアクセスして、符号化されたビデオビットストリーム（５０４）のレプリカ（５０７、５０９）を検索することができる。クライアント（５０６）は、符号化されたビデオビットストリーム（５０７）の着信レプリカを復号化し、ディスプレイ（５１２）又は他のレンダリングデバイス（図示せず）でレンダリングできる発信ビデオサンプルストリーム（５１１）を構築するビデオ復号器（５１０）を含むことができる。一部のストリーミングシステムでは、ビデオビットストリーム（５０４、５０７、５０９）を、特定のビデオ符号化／圧縮規格に従って符号化できる。これらの規格の例には、ＩＴＵ-Ｔ  Ｈ.２６５勧告書を含む。非公式に多用途ビデオ符号化（ＶＶＣ）と呼ばれるビデオ符号化規格が開発中である。開示されたテーマは、ＶＶＣのコンテキストで使用することができる。
【００２０】
図６は、本発明の一実施例によるビデオ復号器（５１０）の機能ブロック図であり得る。
【００２１】
受信機（６１０）は、復号器（５１０）によって復号化される１つ以上のコーデックビデオシーケンスを受信することができる。同一又は別の実施形態では、一度に１つの符号化されたビデオシーケンスを受信し、各符号化されたビデオシーケンスの復号化は他の符号化されたビデオシーケンスから独立している。チャネル（６１２）から符号化されたビデオシーケンスを受信することができ、チャネル（６１２）は、当該符号化されたビデオデータを記憶するストレージデバイスへのハードウェア／ソフトウェアリンクであってもよい。受信機（６１０）は、符号化されたビデオデータ及び他のデータ、例えば、それぞれの使用エンティティ（図示せず）に転送され得る符号化されたオーディオデータ及び／又は補助データストリームを受信してもよい。受信機（６１０）は、符号化されたビデオシーケンスを他のデータから分離することができる。ネットワークジッタを防止するために、バッファメモリ（６１５）は、受信機（６１０）とエントロピー復号器／パーサー（６２０）（以降、「パーサー」と呼ばれる）との間に結合され得る。受信機（６１０）が十分な帯域幅と制御性を有する記憶／転送デバイス、又は等時性リアルタイムネットワークからデータを受信する場合に、バッファ（６１５）を必要としない場合があり、又は、バッファ（６１５）が小さくなってもよい。例えばインターネットのベストパケットネットワークで使用するために、バッファ（６１５）が必要となる場合があり、バッファ（６１５）は、比較的大きくすることができ、自己適応サイズを有利に有することができる。
【００２２】
ビデオ復号器（５１０）は、エントロピー符号化されたビデオシーケンスに基づきシンボル（６２１）を再構成するために、パーサー（６２０）を含み得る。これらのシンボルのカテゴリは、復号器（５１０）の動作を管理するための情報と、ディスプレイ（５１２）などの、復号器の構成部分ではないが復号器に結合され得るレンダリングデバイスを制御するための潜在情報とを含む。図６に示すように、１つ以上のレンダリングデバイスのための制御情報は、補助拡張情報（ＳＥＩメッセージ）又はビデオユーザビリティ情報（ＶＵＩ）パラメータセットフラグメント（図示せず）の形であってよい。パーサー（６２０）は、受信された符号化されたビデオシーケンスを解析／エントロピー復号化することができる。符号化されたビデオシーケンスの符号化は、ビデオ符号化技術又は規格に準拠することができ、可変長符号化、ハフマン符号化（Ｈｕｆｆｍａｎ
ｃｏｄｉｎｇ）、文脈依存の有無にかかわらず算術符号化などを含む、当業者に周知の原理に従うことができる。パーサー（６２０）は、グループに対応する少なくとも１つのパラメーターに基づいて、符号化されたビデオシーケンスから、ビデオ復号器における画素のサブグループのうちの少なくとも１つのサブグループのサブグループパラメータセットを抽出することができる。サブグループは、ピクチャのグループ（ＧＯＰ）、ピクチャ、タイル、スライス、マクロブロック、符号化ユニット（ＣＵ）、ブロック、変換ユニット（ＴＵ）、予測ユニット（ＰＵ）などを含んでもよい。エントロピー復号器／パーサーは、また、符号化されたビデオシーケンス情報から、例えば、変換係数、量子化器パラメーター（ＱＰ）値、動きベクトルなどを抽出してもよい。
【００２３】
パーサー（６２０）は、バッファ（６１５）から受信されたビデオシーケンスに対してエントロピー復号化／解析動作を実行することで、シンボル（６２１）を作成することができる。パーサー（６２０）は、符号化されたデータを受信し、特定のシンボル（６２１）を選択的に復号化してもよい。また、パーサー（６２０）は、特定のシンボル（６２１）が動き補償予測ユニット（６５３）、スケーラ／逆変換ユニット（６５１）、イントラ予測ユニット（６５２）又はループフィルタ（６５６）に提供されたかどうかを判定してもよい。
【００２４】
シンボル（６２１）の再構築は、符号化されたビデオピクチャ又は符号化されたビデオピクチャの一部のタイプ（例えば、インターピクチャとイントラピクチャ、インターブロックとイントラブロック）及び他の要因によって、複数の異なるユニットに関与してもよい。関与するユニット、及び関与形態は、パーサー（６２０）が符号化されたビデオシーケンスから解析したサブグループ制御情報によって制御されてもよい。簡略化のために、パーサー（６２０）と以下の複数のユニットとの間のそのようなサブグループ制御情報の流れは説明されない。
【００２５】
既に言及された機能ブロックに加えて、復号器（５１０）は概念的には、以下に説明する複数の機能ユニットに細分化することができる。商業的な制約の下で運行する実際の実現形態では、これらのユニットの多くは互いに密接に相互作用し、少なくとも部分的に互いに統合することができる。しかしながら、開示されたテーマを説明するために、概念的には、以下の機能ユニットに細分化されることは適切である。
【００２６】
第１のユニットはスケーラ／逆変換ユニット（６５１）である。スケーラ／逆変換ユニット（６５１）は、パーサー（６２０）から（１つ以上の）シンボル（６２１）としての量子化変換係数及び制御情報を受信し、使用する変換方法、ブロックサイズ、量子化係数、量子化スケーリングマトリックスなどを含む。スケーラ／逆変換ユニット（６５１）は、サンプル値を含むブロックを出力することができ、当該ブロックはアグリゲータ（６５５）に入力することができる。
【００２７】
いくつかの場合に、スケーラ／逆変換ユニット（６５１）の出力サンプルは、イントラ符号化ブロック、即ち、以前に再構築されたピクチャからの予測性情報を使用しないが、現在のピクチャの以前に再構築された部分からの予測性情報を使用するブロックに属してもよい。そのような予測性情報は、イントラピクチャ予測ユニット（６５２）によって提供することができる。いくつかの場合に、イントラピクチャ予測ユニット（６５２）は、現在の（部分的に再構成された）ピクチャ（６５６）から抽出された、周囲が既に再構築された情報を使用して、再構築しているブロックと同じサイズ及び形状のブロックを生成する。いくつかの場合に、アグリゲータ（６５５）は、各サンプルに基づいて、イントラ予測ユニット（６５２）によって生成される予測情報を、スケーラ／逆変換ユニット（６５１）から提供される出力サンプル情報に追加する。
【００２８】
他の場合には、スケーラ／逆変換ユニット（６５１）の出力サンプルは、インター符号化及び潜在動き補償ブロックに属してもよい。このような場合に、動き補償予測ユニット（６５３）は、参照ピクチャメモリ（６５７）にアクセスして、予測のためのサンプルを抽出してもよい。当該ブロックに属するシンボル（６２１）に基づき、抽出されたサンプルに対して動き補償を行った後に、これらのサンプルは、アグリゲータ（６５５）によってスケーラ／逆変換ユニットの出力（この場合に、残差サンプル又は残差信号と呼ばれる）に追加されることで、出力サンプル情報を生成することができる。動き補償ユニットが予測サンプルを抽出するための参照ピクチャメモリにおけるアドレスは動きベクトルによって制御されてもよく、動きベクトルはシンボル（６２１）の形で動き補償ユニットによって使用されることができ、シンボル（６２１）は、例えば、Ｘ、Ｙ、及び参照ピクチャ成分を有してもよい。動き補償には、サブサンプルの正確な動きベクトルが使用されている際に参照ピクチャメモリから抽出されたサンプル値の補間、動きベクトル予測メカニズムなどを含んでもよい。
【００２９】
アグリゲータ（６５５）の出力サンプルは、ループフィルタユニット（６５６）において様々なループフィルタリング技術に適応され得る。ビデオ圧縮技術は、ループ内フィルタ技術を含んでもよく、ループ内フィルタ技術は、符号化されたビデオビットストリームに含まれ且つパーサー（６２０）からのシンボル（６２１）としてループフィルタユニット（６５６）に使用可能なパラメータによって制御され、しかしながら、ビデオ圧縮技術は、符号化されたピクチャ又は符号化されたビデオシーケンスの（復号化順序で）前の部分を復号化する期間に得られたメタ情報に応答してもよいし、以前に再構築されループフィルター処理されたサンプル値に応答してもよい。
【００３０】
ループフィルタユニット（６５６）の出力はサンプルストリームであってもよく、当該サンプルストリームは、将来のインターピクチャ予測で使用されるために、レンダリングデバイス（５１２）に出力され、参照ピクチャメモリ（６５６）に記憶されてもよい。
【００３１】
一部の符号化されたピクチャは、完全に再構成されると、将来の予測のために参照ピクチャとして使用されることができる。符号化されたピクチャは完全に再構成され、且つ符号化されたピクチャが（例えば、パーサー（６２０）によって）参照ピクチャとして識別されると、現在の参照ピクチャ（６５６）は参照ピクチャバッファ（６５７）の一部になることができ、そして、その後の符号化されたピクチャの再構築を開始する前に、新しい現在のピクチャメモリを再割り当てることができる。
【００３２】
ビデオ復号器（５１０）は、例えば ＩＴＵ-Ｔ Ｈ.２６５勧告書の規格に記録されている所定のビデオ圧縮技術に従って、復号化動作を実行してもよい。符号化されたビデオシーケンスがビデオ圧縮技術又は規格の構文に準拠する意味で、符号化されたビデオシーケンスは、使用されているビデオ圧縮技術又は規格によって指定される構文に準拠することができ、ビデオ圧縮技術ドキュメント又は規格で指定され、及びその中の文書ファイルで指定されるようになる。コンプライアンスについて、符号化されたビデオシーケンスの複雑さはビデオ圧縮技術又は規格のレベルで限定されている範囲内にあることも要求する。いくつかの場合に、レベルは、最大ピクチャのサイズ、最大フレームレート、最大再構成サンプルレート（例えば１秒あたりのメガのサンプルを単位として測定する）、最大参照ピクチャサイズなどを制限する。いくつかの場合に、レベルによって設定される制限は、仮想参照復号器（ＨＲＤ）の仕様及び符号化されたビデオシーケンスにおいて信号で示されるＨＲＤバッファの管理するメタデータによってさらに制限されてもよい。
【００３３】
一実施例において、受信機（６１０）は、符号化されたビデオビデオとともに、追加の（冗長な）データを受信してもよい。追加のデータは（１つ以上の）符号化されたビデオシーケンス一部として含まれてもよい。追加のデータは、ビデオ復号器（５１０）がデータを正確に復号化する、及び／又は、元のビデオデータをより正確に再構築するために使用されてもよい。追加のデータは、例えば、時間、空間、又は信号対雑音比（ＳＮＲ）拡張層、冗長スライス、冗長ピクチャ、前方誤り訂正符号などの形であってもよい。
【００３４】
図７は、本開示の一実施例によるビデオ符号器（５０３）の機能ブロック図であり得る。
【００３５】
符号器（５０３）は、ビデオソース（５０１）（符号器の一部ではない）からビデオサンプルを受信してもよく、当該ビデオソースは符号器（５０３）によって符号化される（１つ以上の）ビデオ画像をキャプチャしてもよい。
【００３６】
ビデオソース（５０１）は、符号器（５０３）によって符号化されするデジタルビデオサンプルストリームの形であるソースビデオシーケンスを提供してもよく、当該デジタルビデオサンプルストリームは、任意の適切なビット深度（例えば、８ビット、１０ビット、１２ビット…）、任意の色空間（例えば、ＢＴ．６０１ Ｙ ＣｒＣＢ、ＲＧＢ…）及び任意の適切なサンプリング構成（例えば、Ｙ ＣｒＣｂ ４:２:０、Ｙ ＣｒＣｂ ４:４:４）を有してもよい。メディアサービスシステムでは、ビデオソース（５０１）は、以前に準備されたビデオを記憶するストレージデバイスであってもよい。ビデオ会議システムでは、ビデオソース（５０３）は、ロカールイメージ情報をビデオシーケンスとしてキャプチャする撮影装置であってもよい。ビデオデータは、順番に見る際に動きが与えられる複数の個別のピクチャとして提供されてもよい。これらのピクチャ自体は空間画素アレイとして構成されてもよく、なお、各画素は、使用されるサンプリング構成、色空間などによって、１つ以上のサンプルを含んでもよい。当業者は、画素とサンプルとの間の関係を容易に理解することができる。以下の説明では、サンプルを中心に説明する。
【００３７】
一実施例によれば、符号器（５０３）は、リアルタイムで、又はアプリケーションによって要求される他の任意の時間制約の下で、ソースビデオシーケンスのピクチャを符号化し、それを符号化されたビデオシーケンス（７４３）に圧縮してもよい。適切な符号化速度を実行することはコントローラ（７５０）の機能の１つである。コントローラは、以下に説明する他の機能ユニットを制御し、これらのユニットに機能的に結合される。簡略化のために、結合は描かれていない。コントローラによって設置されるパラメータは、レート制御関連パラメータ（ピクチャスキップ、量子化器、レート歪み最適化技術のλ値…）、ピクチャサイズ、ピクチャグループ（ＧＯＰ）レイアウト、最大動きベクトル検索範囲などを含んでもよい。当業者は、コントローラ（７５０）の他の機能を容易に認識することができ、これらの機能は特定のシステム設計に対して最適化されたビデオ符号器（５０３）に属する可能性があるためである。
【００３８】
一部のビデオ符号器は、当業者が「符号化ループ」として容易に認識する形態で動作する。非常に簡略化した説明として、符号化ループは、符号器（７３０）の符号化部分（以降、「ソース符号器」と呼ばれる）（符号化される入力ピクチャ及び（１つ以上の）参照ピクチャに基づいてシンボルを構築することを担当する）、符号器（５０３）に埋め込まれる（ロカールの）復号器（７３３）を含んでもよく、当該復号器（７３３）はシンボルを再構築して（リモート）復号器によっても作成されるサンプルデータを作成する（シンボルと符号化されたビデオビットストリームとの間の圧縮は開示されたテーマで考慮されるビデオ圧縮技術では無損失であるため）。再構築されたサンプルストリームを参照ピクチャメモリ（７３４）に入力する。シンボルストリームの復号化によって、復号器の位置（ロカール又はリモート）に関係がないビットが正確である結果が得られるため、参照ピクチャバッファのコンテンツもロカール符号器とリモート符号器との間でビットが正確である。つまり、符号器の予測部分が「見る」参照ピクチャサンプルと、復号器が復号化中に予測を使用する際に「見る」サンプル値とは全く同じである。参照ピクチャの同期性という基本的な原理（及び、例えば、チャネル誤差のため、同期性を維持できない場合に生じるドリフト）は、当業者に周知のものである。
【００３９】
「ロカール」復号器（７３３）の動作は、以上で図６に基づいて詳細に説明された「リモート」復号器（５１０）の動作と同じであってもよい。しかしながら、また、図７を簡単に参照し、シンボルが利用可能であり、且つ、エントロピー符号器（７４５）及びパーサー（６２０）が無損失でシンボルを、符号化されたビデオシーケンスに符号化／復号化できる場合に、チャネル（６１２）、受信機（６１０）、バッファ（６１５）及びパーサー（６２０）を含む復号器（５１０）のエントロピー復号化部分はロカール復号器（７３３）で完全に実現されない場合がある。
【００４０】
この場合、復号器に存在する解析／エントロピー復号化に加えて、任意の復号器技術も、必然的に基本的に同じ機能形式で対応する符号器に存在することが分かる。符号器技術と完全に説明された復号器技術とは相互に逆であるため、符号器技術の説明を簡略化できる。より詳しい説明は、特定の領域のみで必要であり、以下で提供される。
【００４１】
ソース符号器（７３０）の動作の一部として、ソース符号器（７３０）は動き補償予測符号化を実行してもよく、動き補償予測符号化は、ビデオシーケンスからの「参照フレーム」として指定された１つ以上の以前に符号化されたフレームを参照することで入力フレームを予測的に符号化する。このようにして、符号化エンジン（７３２）は入力フレームの画素ブロックと、入力フレームの（１つ以上の）予測参照の（１つ以上の）参照フレームとして選択され得る画素ブロックとの間の差異を符号化してもよい。
【００４２】
ロカールビデオ復号器（７３３）は、ソース符号器（７３０）によって作成されたシンボルに基づいて、参照フレームとして指定され得るフレームの符号化されたビデオデータを復号化してもよい。符号化エンジン（７３２）の動作は、有利には、非可逆処理であり得る。符号化されたビデオデータがビデオ復号器（図６、図示せず）で復号化され得る場合、再構築されたビデオシーケンスは、通常、多少の誤差を有するソースビデオシーケンスのレプリカであり得る。ローカルビデオ復号器（７３３）は、参照フレームに対してビデオ復号器によって実行され得る復号化処理を複製し、再構成された参照フレームを参照ピクチャバッファ（７３４）に記憶してもよい。このようにして、符号器（５０３）は、再構成された参照フレームのレプリカをローカルに記憶することができ、当該レプリカは、リモートビデオ復号器によって得られる再構成された参照フレームと共通のコンテンツを有する（伝送誤差がない）。
【００４３】
予測器（７３５）は、符号化エンジン（７３２）に対して予測検索を実行することができる。つまり、符号化される新しいフレームについて、予測器（７３５）は、参照ピクチャメモリ（７３４）において、新しいピクチャの適切な予測参照として使用し得るサンプルデータ（候補参照画素ブロックとして）、又は例えば参照ピクチャの動きベクトル、ブロック形状などの特定のメタデータを検索してもよい。予測器（７３５）は、適切な予測参照を見つけるために、サンプルブロックに基づいて、画素ブロックごとに動作することができる。いくつかの場合に、例えば、予測器（７３５）によって得られた検索結果によって決定されるように、入力ピクチャは、参照ピクチャメモリ（７３４）に記憶された複数の参照ピクチャから抽出された予測参照を有してもよい。
【００４４】
コントローラ（７５０）は、例えば、ビデオデータを符号化するためのパラメータとサブグループパラメータの設置を含む、ビデオ符号器（７３０）の符号化動作を管理することができる。
【００４５】
エントロピー符号器（７４５）において、以上で言及された全ての機能ユニットの出力に対してエントロピー符号化を行ってもよい。エントロピー符号器は、例えばハフマン符号化、可変長符号化、算術符号化などの当業者に周知の技術に従って、シンボルに対して無損失圧縮を行うことにより、各機能ユニットによって生成されたシンボルを、符号化されたビデオシーケンスに変換する。
【００４６】
送信機（７４０）は、通信チャネル（７６０）を介した伝送の準備をするように、エントロピー符号器（７４５）によって作成された（１つ以上の）符号化されたビデオシーケンスをバッファリングすることができ、通信チャネル（７６０）は、符号化されたビデオデータを記憶するストレージデバイスへのハードウェア／ソフトウェアリンクであってもよい。送信機（７４０）は、ビデオ符号器（７３０）からの符号化されたビデオデータを、伝送しようとする他のデータ、例えば、符号化されたオーディオデータ及び／又は補助データストリーム（ソースは図示せず）とともにマージしてもよい。
【００４７】
コントローラ（７５０）は、符号器（５０３）の動作を管理することができる。コントローラ（７５０）は、符号化中に、各符号化されたピクチャに、対応するピクチャに適用し得る符号化技術に影響を与える可能性がある特定の符号化されたピクチャタイプを割り当て得る。例えば、通常、ピクチャは、次のフレームタイプのいずれかとして割り当てられ得る。
【００４８】
イントラピクチャ（Ｉピクチャ）は、シーケンス内の任意の他のフレームを予測のソースとして使用せずに符号化及び復号化されるピクチャであってもよい。一部のビデオビデオコーデックは、例えば、独立復号器リフレッシュピクチャを含む異なるタイプのイントラピクチャを許容する。当業者は、Ｉピクチャのそれらの変形及び対応する用途と特徴を知っている。
【００４９】
予測ピクチャ（Ｐピクチャ）は、多くとも１つの動きベクトル及び参照インデックスを使用して各ブロックのサンプル値を予測し得る場合に、イントラ予測又はインター予測を使用して符号化及び復号化を行うピクチャであってもよい。
【００５０】
双方向予測性ピクチャ（Ｂピクチャ）は、多くとも２つの動きベクトルと参照インデックスを使用して各ブロックのサンプル値を予測する場合にイントラ予測又はインター予測を使用して符号化及び復号化を行うピクチャであってもよい。同様に、複数の予測ピクチャは、２つを超える参照画像及び関連メタデータを単一のブロックの再構成に使用できる。
【００５１】
ソースピクチャは一般的に、空間的に、複数のサンプルブロック（例えば、それぞれ４×４、８×８、４×８又は１６×１６サンプルのブロック）に細分化され、ブロックごとに符号化してもよい。ブロックの対応するピクチャに適用される符号化割り当てによって決定される他の（符号化された）ブロックを参照してこれらのブロックを予測的に符号化してもよい。例えば、Ｉピクチャのブロックを非予測的に符号化してもよいし、同一のピクチャの符号化されたされたブロックを参照してこれらのＩピクチャのブロックを予測的に符号化してもよい（空間的予測又はイントラ予測）。１つの以前に符号化された参照ピクチャを参照して空間的予測又は時間的予測を介してＰピクチャの画素ブロックを非予測的に符号化してもよい。１つ又は２つの以前に符号化された参照ピクチャを参照して、空間的予測又は時間的予測を介してＢピクチャのブロックを非予測的に符号化してもよい。
【００５２】
ビデオ符号器（５０３）は、例えばＩＴＵ-Ｔ Ｈ.２６５勧告書などの所定のビデオ符号化技術又は規格に基づき、符号化動作を実行することができる。ビデオ符号器（５０３）の動作中に、ビデオ符号器（５０３）は、入力ビデオシーケンスにおける時間的及び空間的冗長性による予測符号化操作を含む様々な圧縮動作を実行することができる。従って、符号化されたビデオデータは、使用されているビデオ符号化技術又は規格によって指定された構文に準拠し得る。
【００５３】
一実施例において、送信機（７４０）は、追加のデータと符号化されたビデオとを伝送してもよい。ビデオ符号器（７３０）は、このようなデータを、符号化されたビデオシーケンスの一部として含んでもよい。追加のデータは、時間的／空間的／ＳＮＲ拡張層、例えば冗長なピクチャ、スライスのような他の形の冗長データ、補助拡張情報（ＳＥＩ）メッセージ、視覚的ユーザビリティ情報（ＶＵＩ）パラメータセットフラグメントなどを含んでもよい。
【００５４】
本開示の実施例は、例えばマージモードに関連するインターピクチャ予測符号化に使用される若干の方法を含む。実施例において、マージ候補は、現在のＣＵにすぐ隣接していない隣接ＣＵからのものであってもよい。これは、拡張マージモードと呼ばれてもよい。符号器と復号器が隣接ＣＵからのマージ候補を検索しようとする場合、グリッドサイズはＣＵのサイズに依存し得る。この場合、小さいＣＵは、小さいグリッドサイズを有し、且つ、大きいＣＵは、大きいグリッドサイズを有する。これらの実施例は、マージ概念を使用する任意のビデオ符号化方法に容易に拡張することができる。例えば、スキップモードは、マージモードを使用して動き情報を導出するため、本明細書で説明される実施形態はスキップモードにも適用できる。
【００５５】
一実施例において、現在のＣＵのサイズが閾値よりも大きい場合、検索グリッドは、Ｎ×Ｍのような、例えば１６×１６の固定検索グリッドである。現在のＣＵのサイズが閾値以下である場合、検索グリッドは、ブロックサイズに応じて自己適応的に変更される。例えば、検索グリッドは、現在のＣＵの水平方向の幅、及び現在のＣＵの垂直方向の高さを有してもよい。例えば、シーケンスパラメータセット（ＳＰＳ）、ピクチャパラメータセット（ＰＰＳ）又はスライスヘッダにおいて閾値を信号で示してもよい。閾値は事前定義されてもよい。
【００５６】
検索グリッドがブロックサイズに応じて自己適応的に変更される場合に、詳細な検索モードは、現在のＪＶＥＴ／ＨＥＶＣスキームの拡張であってもよい。別の隣接ブロックにおける対応するＡ（ｉ，ｊ）、Ｂ（ｉ，ｊ）、Ｃ（ｉ，ｊ）、Ｄ（ｉ，ｊ）、Ｅ（ｉ，ｊ）候補をスキャンする。本実施形態では、ｉとｊは、行及び列の座標である。スキャン順序は、最も近い近傍から、遠い近傍への順であってもよい。当該スキームを図８に示す。隣接ブロックの候補を検索する場合に、検索グリッドはブロックサイズに応じて自己適応的に変更される。水平方向では、検索グリッドは、ブロック幅に基づいているため、各Ａ（ｉ，ｊ）又はＤ（ｉ，ｊ）は、次のＡ（ｉ，ｊ）又はＤ（ｉ，ｊ）までのブロック幅の距離を有する。垂直方向では、検索グリッドは、高さに基づいているため、各Ｂ（ｉ，ｊ）又はＣ（ｉ，ｊ）は次のＢ（ｉ，ｊ）又はＣ（ｉ，ｊ）までの高さの距離を有する。対角線方向では、検索グリッドは、ブロックの幅と高さに基づいているため、次のＥ（ｉ，ｊ）への各Ｅ（ｉ，ｊ）は、次のＥ（ｉ，ｊ）への（幅、高さ）のオフセットを有する。検索範囲は（オフセットｘ及びオフセットｙ）によって定義される。
【００５７】
一実施例において、現在のＣＵのサイズが閾値よりも小さい場合に、検索グリッドは、Ｎ×Ｍのような、例えば１６×１６の固定検索グリッドである。現在のＣＵのサイズが閾値以上である場合、検索グリッドはブロックサイズに応じて自己適応的に変更される。即ち、検索グリッドは、現在のＣＵの水平方向の幅、及び現在のＣＵの垂直方向の高さを有してもよい。例えば、ＳＰＳ、ＰＰＳ又はスライスヘッダにおいて閾値を信号で示してもよい。閾値は事前定義されてもよい。
【００５８】
検索グリッドがブロックのサイズに応じて自己適応的に変更される場合に、詳細な検索モードは、上記の検索モードと同じであり得る。
【００５９】
一実施例において、自己適応グリッドサイズは、他の検索モードに適用されてもよい。これらの検索モードにおいて、次の候補を見つけるためのグリッドサイズは、現在のブロックサイズに応じて自己適応的に変更される。即ち、検索グリッドは、現在のブロックの水平方向の幅、及び現在のブロックの垂直方向の高さを有してもよい。一実施形態において、現在のＣＵのサイズが閾値よりも小さい場合に、検索グリッドは、Ｎ×Ｍのような、例えば１６×１６などの固定の検索グリッドである。現在のＣＵのサイズが閾値以上である場合に、検索グリッドはブロックサイズに応じて自己適応的に変更される。
【００６０】
他の実施例において、現在のＣＵのサイズが閾値以上である場合に、検索グリッドは、Ｎ×Ｍのような、例えば１６×１６などの固定の検索グリッドである。現在のＣＵのサイズが閾値よりも小さい場合に、検索グリッドは、ブロックサイズに応じて自己適応的に変更される。
【００６１】
上記の実施例において、現在のＣＵのサイズと閾値を比較する場合に、当該比較にはＣＵのサイズの様々な態様を使用することができる。例えば、ＣＵの幅とＣＵの高さのうちの最小値を使用してもよい。別の例において、ＣＵの幅とＣＵの高さのうちの最大値を使用してもよい。さらに別の例において、ＣＵの幅とＣＵの高さとの合計を使用してもよい。
【００６２】
図９は、ビデオシーケンスのインター予測符号化に使用されるマージ候補を検索ための例示的な処理９００のフローチャートである。いくつかの実現形態において、図９の１つ以上の処理ブロックは、復号器５１０によって実行されてもよい。いくつかの実現形態において、図９の１つ以上の処理ブロックは、例えば符号器５０３などの、復号器５１０とは別の、又は復号器５１０を含む別のデバイス又はデバイスのグループによって実行されもよい。
【００６３】
図９に示すように、処理９００は、現在のＣＵのサイズと閾値サイズとの間の比較を実行する（ブロック９１０）を含むことができる。また、図９に示すように、処理９００は、比較の結果に基づいて、検索グリッドのサイズを変更するかどうかを決定する（ブロック９２０）を含むことができる。さらに、図９に示すように、処理９００は、比較の結果に基づいて、マージ候補を検索するための検索グリッドのサイズを変更して、マージ候補リストを構築する（ブロック９３０）を含むことができる。
【００６４】
一実施例において、現在のＣＵのサイズは、現在のＣＵの高さと現在のＣＵの幅のうちの大きい方であってもよい。
【００６５】
一実施例において、現在のＣＵのサイズは、現在のＣＵの高さと現在のＣＵの幅のうちの小さい方であってもよい。
【００６６】
一実施例において、現在のＣＵのサイズは、現在のＣＵの高さと現在のＣＵの幅との合計であってもよい。
【００６７】
一実施例において、処理９００は、現在のＣＵのサイズが閾値サイズよりも大きいと判定したことに応答して、検索グリッドのサイズを固定サイズに設定し、現在のＣＵのサイズが閾値サイズよりも小さいと判定したことに応答して、現在のＣＵのサイズに基づいて、検索グリッドのサイズを可変サイズに設定すること、をさらに含んでもよい。
【００６８】
一実施例において、処理９００は、現在のＣＵのサイズが閾値サイズよりも小さいと判定したことに応答して、検索グリッドのサイズを固定サイズに設定し、現在のＣＵのサイズが閾値サイズよりも大きいと判定したことに応答して、現在のＣＵのサイズに基づいて検索グリッドのサイズを可変サイズに設定すること、をさらに含んでもよい。
【００６９】
一実施例において、現在のＣＵの幅に基づいて検索グリッドの水平サイズを決定し、現在のＣＵの高さに基づいて検索グリッドの垂直サイズを決定してもよい。
【００７０】
一実施例において、シーケンスパラメータセット、ピクチャパラメータセット及びスライスヘッダのうちの少なくとも１つにおいて、閾値サイズを信号で示してもよい。
【００７１】
一実施例において、検索グリッドにおいてマージ候補を検索するためのスキャン順序はＡ（ｉ，ｊ）、Ｂ（ｉ，ｊ）、Ｃ（ｉ，ｊ）、Ｄ（ｉ，ｊ）、Ｅ（ｉ，ｊ）として表され、ｉは、現在のＣＵからの水平オフセットの数を表し、ｊは、現在のＣＵからの垂直オフセットの数を表し、Ａ（０，０）は、現在のＣＵの左側にあり、Ｂ（０，０）は、現在のＣＵの上側にあり、Ｃ（０，０）は、現在のＣＵの右上隅にあり、Ｄ（０，０）は、現在のＣＵの左下隅にあり、Ｅ（０，０）は、現在のＣＵの左上隅にあってもよい。
【００７２】
一実施例において、マージ候補リストは、マージモードとスキップモードのうちの少なくとも１つで使用されてもよい。
【００７３】
図９に、処理９００の例示的なブロックを示したが、いくつかの実現形態において、図９に示すこれらのブロックに比べて、処理９００は、追加のブロック、より少ないブロック、異なるブロック又は異なって配置されたブロックを含んでもよい。追加又は代替として、処理９００の２つ以上のブロックは並行して実行されてもよい。
【００７４】
また、提案された方法は、処理回路（例えば、１つ以上のプロセッサ又は１つ以上の集積回路）によって実現されてもよい。一例では、当該１つ以上のプロセッサは、非一時的コンピュータ可読媒体に記憶されているプログラムを実行して、提案された方法の１つ又は複数を実行する。
【００７５】
上記の技術は、コンピュータ可読命令によってコンピュータソフトウェアとして実現され、１つ以上のコンピュータ可読媒体に物理的に記憶されてもよい。例えば、図１０は、開示されたテーマのいくつかの実施形態を実現するのに適したコンピュータシステム（１２００）を示す。
【００７６】
コンピュータソフトウェアは、任意の適切なマシンコード又はコンピュータ言語によって符号化することができ、任意の適切なマシンコード又はコンピュータ言語に対して、アセンブル、コンパイル、リンクなどのメカニズムを行うことで、コンピュータの中央演算処理装置（ＣＰＵ）、グラフィック処理ユニット（ＧＰＵ）などによって直接的に実行される、又は解釈、マイクロコードによって実行されることができる命令を含むコードを作成してもよい。
【００７７】
当該命令は、例えばパーソナルコンピュータ、タブレット、サーバ、スマートフォン、ゲームデバイス、モノのインターネットデバイスなどを含む、様々なタイプのコンピュータ又はそれらのコンポーネントで実行されることができる。
【００７８】
図１０に示されるコンピュータシステム１２００のコンポーネントは、本質的に例示であり、本開示の実施例を実現するためのコンピュータソフトウェアの使用範囲又は機能に制限を加えることを意図するものではない。コンポーネントの配置は、コンピュータシステム１２００の例示的な実施例に示めされたるコンポーネントのいずれか、又はそれらの組み合わせに関連する依存性又は要件を有するものとして解釈されるべきではない。
【００７９】
コンピュータシステム１２００は、特定のヒューマンインタフェース入力デバイスを含んでもよい。このようなヒューマンインタフェース入力デバイスは、例えば、触覚入力（例えば、キーストローク、スワイプ、データグローブの移動）、オーディオ入力（例えば、音声、拍手）、視覚入力（例えば、姿勢）、嗅覚入力（図示せず）による１つ以上の人間のユーザの入力に応答してもよい。ヒューマンインタフェースデバイスは、例えば、オーディオ（例えば、音声、音楽、環境音）、画像（例えば、スキャンした画像、静的画像撮影装置から取得された写真画像）、ビデオ（例えば２次元ビデオ、ステレオビデオが含まれる３次元ビデオ）などの、人間の意識的な入力に必ずしも直接関連しない特定のメディアをキャプチャするために使用されることもできる。
【００８０】
ヒューマンインタフェース入力デバイスは、キーボード１００１、マウス１００２、トラックパッド１００３、タッチスクリーン１０１０、データグローブ１２０４、ジョイスティック１００５、マイク１００６、スキャナー１００７、撮影装置１００８のうちの１つ以上を含んでもよい（それぞれが１つのみ図示される）。
【００８１】
コンピュータシステム１２００はさらに、特定のヒューマンインタフェース出力デバイスを含んでもよい。このようなヒューマンインタフェース出力デバイスは、例えば、触覚出力、音、光、及び匂い／味によって、１つ以上の人間のユーザの感覚を刺激することができる。そのようなヒューマンインタフェース出力デバイスには、触覚出力デバイス（例えば、タッチスクリーン１０１０、データグローブ１２０４、又はジョイスティック１００５による触覚フィードバックであり、入力デバイスとして機能しない触覚フィードバックデバイスもある場合がある）、オーディオ出力デバイス（例えば、スピーカー１００９、ヘッドフォン（図示せず））、視覚出力デバイス（例えば、スクリーン１０１０であり、ブラウン管（ＣＲＴ）スクリーン、液晶ディスプレイ（ＬＣＤ）スクリーン、プラズマスクリーン、有機発光ダイオード（ＯＬＥＤ）スクリーンを含み、スクリーンのそれぞれはタッチスクリーン入力機能がある場合とない場合、触覚フィードバック機能がある場合とない場合があり、そのうちの一部のスクリーンは例えばステレオグラフィック出力のような手段により、２次元の視覚的出力又は３次元以上の出力を出力できる可能性がある）、仮想現実眼鏡（図示せず）、ホログラフィックディスプレイとスモークタンク（図示せず）、及びプリンター（図示せず）を含んでもよい。
【００８２】
コンピュータシステム１２００はさらに人間がアクセス可能な記憶装置及びその関連する媒体を含んでもよく、例えば、ＣＤ／ＤＶＤなどの媒体１０２１を有するＣＤ／ＤＶＤ
ＲＯＭ／ＲＷ１０２０などの光学媒体、サムドライブ１０２２、取り外し可能なハードドライブ又はソリッドステートドライブ１０２３、磁気テープとフロッピーディスク（図示せず）のような従来の磁気媒体、セキュリティドングル（図示せず）などの専用ＲＯＭ／ＡＳＩＣ／ＰＬＤによるデバイスなどを含んでもよい。
【００８３】
また、当業者は、現在開示されたテーマに関連して使用される「コンピュータ可読媒体」という用語には、伝送媒体、搬送波又は他の一時的な信号が含まれていないことを理解するべきである。
【００８４】
コンピュータシステム１２００は、１つ以上の通信ネットワークのインタフェースも含むことができる。ネットワークは、例えば、無線、有線、光などのネットワークであってもよい。ネットワークは、ローカル、ワイドエリア、メトロポリタン、車載及び工業、リアルタイム、遅延耐性などのネットワークであってもよい。ネットワークの例には、例えば、イーサネットなどのローカルエリアネットワーク、無線ＬＡＮ、モバイル通信（ＧＳＭ）、第３世代（３Ｇ）、第４世代（４Ｇ）、第５世代（５Ｇ）、ロング・ターム・エボリューション（ＬＴＥなど）を含むセルラーネットワーク、有線テレビ、衛星テレビ、及び地上波放送テレビを含むテレビ有線又は無線ワイドエリアデジタルネットワーク、ＣＡＮＢｕｓを含む車載と工業ネットワークなどであってもよい。一部のネットワークは一般的に、特定の汎用データポート又は周辺バス（１０４９）（例えば、コンピュータシステム１２００のユニバーサルシリアルバス（ＵＳＢ）ポートなど）に接続された外部ネットワークインタフェースアダプターを必要とする。他のネットワークは一般的に、以下で説明するようなシステムバス（例えば、ＰＣコンピュータシステムに達するイーサネットインタフェース、又はスマートフォンコンピュータシステムに達するセルラーネットワークインタフェース）に接続されることで、コンピュータシステム１２００のコアに統合される。これらのネットワークのいずれかを使用して、コンピュータシステム１２００は他のエンティティと通信することができる。このような通信は、一方向、受信のみ（例えば、放送テレビ）、一方向送信のみ（例えば、あるＣＡＮｂｕｓデバイスへのＣＡＮｂｕｓ）、又は双方向（例えば、ローカルエリア又はワイドエリアディジタルネットワークを使用して他のコンピュータシステムに達する）あってもよい。上記のようなこれらのネットワークとネットワークインタフェースのそれぞれに、特定のプロトコル及びプロトコルスタックを使用することができる。
【００８５】
上記のヒューマンインタフェースデバイス、人間がアクセス可能な記憶装置、及びネットワークインタフェースは、コンピュータシステム１２００のコア１０４０に取り付けることができる。
【００８６】
コア１０４０には、１つ以上の中央処理装置（ＣＰＵ）１０４１、グラフィックス処理装置（ＧＰＵ）１０４２、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）１０４３の形式の専用なプログラマブル処理ユニット、あるタスクに使用されるハードウェアアクセラレータ１０４４などを含んでもよい。これらのデバイスは、読み取り専用メモリ（ＲＯＭ）１０４５、ランダムアクセスメモリ（ＲＡＭ）１０４６、例えばユーザがアクセスできない内部ハードディスクドライブ、ソリッドステートドライブ（ＳＳＤ）などの内部大容量記憶装置１０４７とともに、システムバス１２４８を介して接続される。一部のコンピュータシステムでは、システムバス１２４８に１つ以上の物理プラグの形でアクセスして、他のＣＰＵ、ＧＰＵなどによる拡張を可能にすることができる。周辺機器は、直接的又は周辺バス１０４９を介してコアのシステムバス１２４８に接続することができる。周辺バスのアーキテクチャは、周辺コンポーネント相互接続（ＰＣＩ）、（ＵＳＢ）などを含む。
【００８７】
ＣＰＵ１０４１、ＧＰＵ１０４２、ＦＰＧＡ１０４３、及びアクセラレータ１０４４は特定の命令を実行でき、これらの命令を組み合わせると、以上に言及されたコンピュータコードを構成する。当該コンピュータコードはＲＯＭ１０４５又はＲＡＭ１０４６に記憶されてもよい。一時的なデータもＲＡＭ１０４６に記憶されてもよく、永久データは、例えば内部大容量記憶装置１０４７に記憶されてもよい。キャッシュメモリを使用することによって、記憶装置内の任意の記憶装置への高速ストレージ及び検索を実現することができ、当該キャッシュメモリは１つ以上のＣＰＵ１０４１、ＧＰＵ１０４２、大容量記憶装置１０４７、ＲＯＭ１０４５、ＲＡＭ１０４６などと密接に関連することができる。
【００８８】
コンピュータ読み取り可能な媒体は、コンピュータが実現する様々な動作を実行するためのコンピュータコードをその上に有することができる。媒体とコンピュータコードは、本開示の目的のために、特別に設計及び構築される媒体とコンピュータコードであってもよいし、又は、それらは、コンピュータソフトウェア分野の当業者にとって周知であり且つ使用可能なタイプのものであってもよい。
【００８９】
限定ではなく例として、アーキテクチャ１２００を有するコンピュータシステム、特に、コア１０４０は、（１つ以上の）プロセッサ（ＣＰＵ、ＧＰＵ、ＦＰＧＡ、アクセラレータなどを含む）が１つ以上の有形コンピュータ可読媒体に実装されるソフトウェアを実行する結果として、機能を提供することができる。このようなコンピュータ可読媒体は、上記のような、ユーザがアクセス可能な大容量記憶装置に関する媒体、及び例えばコア内部大容量記憶装置１０４７又はＲＯＭ１０４５などの非一時的なコア１０４０を有する特定の記憶装置であってもよい。本開示を実現するための様々な実施例のソフトウェアはこのようなデバイスに記憶され、コア１０４０によって実行されることができる。特定のニーズに応じて、コンピュータ可読媒体には１つ以上の記憶装置又はチップが含まれてもよい。ソフトウェアは、コア１０４０、特にその中のプロセッサ（ＣＰＵ、ＧＰＵ、ＦＰＧＡなどを含む）に、本明細書では説明されている特定の処理又は特定の処理の特定の部分を実行させることができ、ＲＡＭ１０４６に記憶されるデータ構成を限定すること、及びソフトウェアによって限定された処理によってこのようなデータ構成を修正することが含まれる。さらに又は代替として、コンピュータシステムは、ロジックハードワイヤード、又は他の形式で回路（例えば、アクセラレータ１０４４）に実装される結果として、機能を提供することができ、当該ロジックハードワイヤード又は回路は、ソフトウェアの代わりに、又はソフトウェアとともに動作して、本明細書では説明されている特定の処理又は特定の処理の特定の部分を実行することができる。適切な場合、ソフトウェアに対する言及にはロジックが含まれ、逆に、ロジックに対する言及にはソフトウェアが含まれてもよい。適切な場合、コンピュータ可読媒体に対する言及には、実行のためのソフトウェアが記憶される回路（例えば、集積回路（ＩＣ））、実行のためのロジックを具現化する回路、又はその両方が含まれてもよい。本開示は、ハードウェアとソフトウェアとの任意の適切な組み合わせを含む。
【００９０】
この開示は、いくつかの例示的な実施例を説明したが、本開示の範囲内に含まれる変更、置換、及び様々な代替の均等物が存在する。従って、当業者は、本明細書では明示的に示されていないか、又は記載されていないが、本開示の原理を具現化したのでその精神及び範囲内にある多数のシステム及び方法を考案できることが理解されたい。
【図１】
2021516513.tif 000002
【図２】
2021516513.tif 000003
【図３】
2021516513.tif 000004
【図４】
2021516513.tif 000005
【図５】
2021516513.tif 000006
【図６】
2021516513.tif 000007
【図７】
2021516513.tif 000008
【図８】
2021516513.tif 000009
【図９】
2021516513.tif 000010
【図１０】
2021516513.tif 000011
【手続補正書】
【提出日】令和2年10月20日(2020.10.20)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
デバイスが実行する、ビデオシーケンスのインター予測符号化に使用されるマージ候補を検索する方法であって、前記方法は、
現在のＣＵのサイズと閾値サイズとの間の比較を実行するステップと、
前記比較の結果に基づいて、前記マージ候補を検索するための検索グリッドのサイズを変更して、マージ候補リストを構築するステップと、を含む方法。
【請求項２】
前記現在のＣＵのサイズは、前記現在のＣＵの高さと前記現在のＣＵの幅のうちの大きい方を含む請求項１に記載の方法。
【請求項３】
前記現在のＣＵのサイズは、前記現在のＣＵの高さと前記現在のＣＵの幅のうちの小さい方を含む請求項１に記載の方法。
【請求項４】
前記現在のＣＵのサイズは、前記現在のＣＵの高さと前記現在のＣＵの幅との合計を含む請求項１に記載の方法。
【請求項５】
前記現在のＣＵのサイズが前記閾値サイズよりも大きいと判定したことに応答して、前記検索グリッドのサイズを固定サイズに設定するステップと、
前記現在のＣＵのサイズが前記閾値サイズよりも小さいと判定したことに応答して、前記現在のＣＵのサイズに基づいて、前記検索グリッドのサイズを可変サイズに設定するステップと、をさらに含む請求項１乃至４のうちいずれか一項に記載の方法。
【請求項６】
前記現在のＣＵのサイズが前記閾値サイズよりも小さいと判定したことに応答して、前記検索グリッドのサイズを固定サイズに設定するステップと、
前記現在のＣＵのサイズが前記閾値サイズよりも大きいと判定したことに応答して、前記現在のＣＵのサイズに基づいて、前記検索グリッドのサイズを可変サイズに設定するステップと、をさらに含む請求項１乃至４のうちいずれか一項に記載の方法。
【請求項７】
前記現在のＣＵの幅に基づいて前記検索グリッドの水平サイズを決定し、
前記現在のＣＵの高さに基づいて前記検索グリッドの垂直サイズを決定する請求項１乃至６のうちいずれか一項に記載の方法。
【請求項８】
シーケンスパラメータセット、ピクチャパラメータセット及びスライスヘッダのうちの少なくとも１つにおいて、前記閾値サイズを信号で示す請求項１乃至７のうちいずれか一項に記載の方法。
【請求項９】
前記検索グリッドにおいて前記マージ候補を検索するためのスキャン順序はＡ（ｉ，ｊ）、Ｂ（ｉ，ｊ）、Ｃ（ｉ，ｊ）、Ｄ（ｉ，ｊ）、Ｅ（ｉ，ｊ）として表され、
ｉは、前記現在のＣＵからの水平オフセットの数を表し、
ｊは、前記現在のＣＵからの垂直オフセットの数を表し、
Ａ（０，０）は、前記現在のＣＵの左側にあり、
Ｂ（０，０）は、前記現在のＣＵの上側にあり、
Ｃ（０，０）は、前記現在のＣＵの右上隅にあり、
Ｄ（０，０）は、前記現在のＣＵの左下隅にあり、
Ｅ（０，０）は、前記現在のＣＵの左上隅にある請求項１乃至８のうちいずれか一項に記載の方法。
【請求項１０】
マージモードとスキップモードのうちの少なくとも１つにおいて前記マージ候補リストを使用する請求項１に記載の方法。
【請求項１１】
前記検索グリッドは、拡張マージモードに関連する検索パターンで検索される請求項１に記載の方法。
【請求項１２】
ビデオシーケンスのインター予測符号化に使用されるマージ候補を検索するためのデバイスであって、前記デバイスは、
プログラムコードを記憶するように配置される少なくとも１つのメモリと、
前記プログラムコードを読み取り、前記プログラムコードの指示に従って動作するように配置される少なくとも１つのプロセッサと、を含み、
前記プログラムコードは、
現在のＣＵのサイズと閾値サイズとの間の比較を実行するための比較コードと、
前記比較の結果に基づいて、前記マージ候補を検索するための検索グリッドのサイズを変更して、マージ候補リストを構築するための検索コードと、を含むデバイス。
【請求項１３】
前記現在のＣＵのサイズは、前記現在のＣＵの高さと前記現在のＣＵの幅のうちの大きい方を含む請求項１２に記載のデバイス。
【請求項１４】
前記現在のＣＵのサイズは、前記現在のＣＵの高さと前記現在のＣＵの幅のうちの小さい方を含む請求項１２に記載のデバイス。
【請求項１５】
前記現在のＣＵのサイズは、前記現在のＣＵの高さと前記現在のＣＵの幅との合計を含む請求項１２に記載のデバイス。
【請求項１６】
前記プログラムコードは、
前記現在のＣＵのサイズが前記閾値サイズよりも大きいと判定したことに応答して、前記検索グリッドのサイズを固定サイズに設定するためのコードと、
前記現在のＣＵのサイズが前記閾値サイズよりも小さいと判定したことに応答して、前記現在のＣＵのサイズに基づいて前記検索グリッドのサイズを可変サイズに設定するためのコードと、をさらに含む請求項１２乃至１５のうちいずれか一項に記載のデバイス。
【請求項１７】
前記プログラムコードは、
前記現在のＣＵのサイズが前記閾値サイズよりも小さいと判定したことに応答して、前記検索グリッドのサイズを固定サイズに設定するためのコードと、
前記現在のＣＵのサイズが前記閾値サイズよりも大きいと判定したことに応答して、前記現在のＣＵのサイズに基づいて前記検索グリッドのサイズを可変サイズに設定するためのコードと、をさらに含む請求項１２乃至１５のうちいずれか一項に記載のデバイス。
【請求項１８】
前記現在のＣＵの幅に基づいて、前記検索グリッドの水平サイズを決定し、
前記現在のＣＵの高さに基づいて、前記検索グリッドの垂直サイズを決定する請求項１２乃至１７のうちいずれか一項に記載のデバイス。
【請求項１９】
マージモードとスキップモードのうちの少なくとも１つにおいて前記マージ候補リストを使用する請求項１２乃至１８のうちいずれか一項に記載のデバイス。
【請求項２０】
コンピュータに、請求項１乃至１１のいずれか一項に記載の方法を実行させるコンピュータプログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、３５ Ｕ.Ｓ.Ｃ.§１１９に基づいて、２０１８年６月４日にてアメリカ特許商標庁に提出されたアメリカ特許出願第６２／６８０，４９７の優先権を主張し、その開示の全内容を参照により本明細書に組み込む。
【０００２】
本開示は、例えば、多用途ビデオ符号化（ＶＶＣ）などの、高効率ビデオ符号化（ＨＥＶＣ）を超えた次世代のビデオ符号化技術に関する。より具体的に、本発明は、例えばマージモードなどのインターピクチャ予測符号化のための若干の方法に関する。追加の空間的又は時間的マージ候補はマージ候補リストに挿入される。マージ候補リストの構築が変更された。マージインデックスの新しいシグナリングスキームについても検討した。
【背景技術】
【０００３】
ＨＥＶＣでは、インターピクチャ予測のためのマージモードが導入されている。隣接ブロックからの候補動きパラメータのマージ候補リストを構築する。そして、インデックスを信号で示し、当該インデックスは、使用対象となる候補を識別する。マージモードでは、以前に符号化されたピクチャから取得した候補をリストに含めることで、時間予測も可能になる。ＨＥＶＣでは、図１に示す５つの空間的隣接ブロックから導出される最大４つの空間的マージ候補、２つの時間的コロケート〔共位置〕ブロックから導出される１つの時間的マージ候補、及び、組み合わせられた双方向予測候補とゼロ動きベクトル候補を含む追加のマージ候補に基づいて、マージ候補リストを構築する。
【０００４】
ＨＥＶＣでは、スキップモードは、ブロックについて、動きデータが信号で明確に示されるものではなく、推定されるものであることを指示するために使用され、また、予測残差がゼロであることを指示するために使用され、つまり、変換係数は伝送されない。ＨＥＶＣでは、インターピクチャ予測スライスにおける各ＣＵの先頭で、ｓｌｉｐ_ｆｌａｇを信号で示し、当該ｓｌｉｐ_ｆｌａｇは、ＣＵが１つのＰＵ（２Ｎ×２Ｎ）のみを含み、動きデータがマージモードを使用して導出され、ビットストリームに残差データが存在しないことを意味する。
【０００５】
ジョイントビデオ探索チーム（ＪＶＥＴ）によって検討されたテストモデルソフトウェアである共同探索モデル７（ＪＥＭ７）において、新しいマージ候補が導入される。サブＣＵモードが追加のマージ候補として可能にされ、これらのモードを信号で示すために追加の構文要素は必要ではない。２つの追加のマージ候補が、ＡＴＭＶＰモードとＳＴＭＶＰモードを表すために、各ＣＵのマージ候補リストに追加される。シーケンスパラメータセットが、ＡＴＭＶＰとＳＴＭＶＰとを可能にすることを指示すると、最大７つのマージ候補を使用する。追加のマージ候補の符号化ロジックは、ＨＥＶＣにおけるマージ候補の符号化ロジックと同じであり、これは、Ｐスライス又はＢスライスにおける各ＣＵについて、これらの２つの追加のマージ候補に対してさらに２回のＲＤチェックが必要である。ＪＥＭでは、挿入されるマージ候補の順序は、Ａ、Ｂ、Ｃ、Ｄ、ＡＴＭＶＰ、ＳＴＭＶＰ、Ｅ（リストにおけるマージ候補が６よりも小さい場合）、ＴＭＶＰ、組み合わせられた双方向予測候補及びゼロ動きベクトル候補である。
【０００６】
ＪＥＭでは、マージインデックスの全てのバイナリビットは、ＣＡＢＡＣによってコンテキスト符号化される。ＨＥＶＣでは、最初のバイナリビットのみをコンテキスト符号化し、残りのバイナリビットをコンテキストバイパス符号化する。ＪＥＭでは、マージ候補の最大数は７である。
【０００７】
別のスキームは、８×８ブロックのステップサイズで、以前に符号化されたブロックからの候補動きベクトルにおいて検索することである。当該スキームは、最も近い空間近傍、即ち、すぐ隣接する上の行、左の列、右上隅をカテゴリ１として定義し、外部の領域（現在のブロックの境界から最大で３つの８×８ブロック離れている）、及び以前に符号化されたフレームにおける共位置のブロックを、カテゴリ２として分類することである。リストから、異なる参照フレームに基づき予測された隣接ブロック、又はイントラ符号化された隣接ブロックを削除する。そして、残りの参照ブロックのそれぞれに重みを割り当てる。当該重みは、現在のブロックまでの距離に関する。図２は、当該スキームにおけるマージ候補リストの構築の例を示す。
【０００８】
ＪＶＥＴ-Ｊ００５９では、図３に示すように、より多くの空間位置をチェックする。６から２７までの拡張空間位置は、時間的候補の後に、その番号順にチェックされる。ＭＶラインバッファを節約するために、全ての空間的候補は２つのＣＴＵライン内に制限される。つまり、現在のＣＴＵラインの上のＣＴＵラインより先の空間的候補は除外される。これらの追加の空間的マージ候補のグリッドはブロックサイズに基づいている。そのため、各候補は、水平方向において次の候補からある幅のオフセットだけ離れており、垂直方向において次の候補からある高さのオフセットだけ離れている。幅と高さは現在のブロックサイズである。
【０００９】
マージ候補リスト内の候補の数はＮｕｍＭｒｇＣａｎｄｓによって制御される。ＨＥＶＣでは、ＮｕｍＭｒｇＣａｎｄｓ＝５である。ＪＥＭでは、ＡＴＭＶＰがオンになる場合、ＮｕｍＭｒｇＣａｎｄｓは２増加する。この提案された方法では、ＮｕｍＭｒｇＣａｎｄｓは６増加するため、ＡＴＭＶＰがオフになる場合、ＮｕｍＭｒｇＣａｎｄｓは１１になり、ＡＴＭＶＰがオンになる場合、ＮｕｍＭｒｇＣａｎｄｓは１３になる。
【００１０】
マージ候補リストの再構築処理中に、一旦、候補の数がＮｕｍＭｒｇＣａｎｄｓに達すると、候補を追加する処理全体は停止する。生成されたマージ候補以外のマージ候補の全てに対して冗長性チェックを行う。つまり、諸空間位置からの一意の動き候補、ＡＴＭＶＰ及び時間的候補のみをマージ候補リストに含めることができる。マージ候補リストは、現在のＪＥＭと同様に、位置１から５までの空間位置、ＡＴＭＶＰ候補及び時間的候補を追加し（冗長性チェックを含む）、また、位置６から２７までの拡張空間位置を追加する（冗長性チェックを含む）ことで構築される。
【発明の概要】
【課題を解決するための手段】
【００１１】
一実施例において、ビデオシーケンスのインター予測符号化に使用されるマージ候補を検索するための方法を提供し、当該方法は、現在のＣＵのサイズと閾値サイズとの間の比較を実行するステップと、比較の結果に基づいて、マージ候補を検索するための検索グリッドのサイズを変更して、マージ候補リストを構築するステップと、を含む。
【００１２】
一実施例において、ビデオシーケンスのインター予測符号化に使用されるマージ候補を検索するためのデバイスを提供し、当該デバイスは、プログラムコードを記憶するように配置される少なくとも１つのメモリと、プログラムコードを読み取り、プログラムコードの指示に従って動作するように配置される少なくとも１つのプロセッサとを含み、当該プログラムコードは、現在のＣＵのサイズと閾値サイズとの間の比較を実行するための比較コードと、比較の結果に基づいて、マージ候補を検索するための検索グリッドのサイズを変更して、マージ候補リストを構築するための検索コードとを含む。
【００１３】
一実施例において、命令が記憶される非一時的コンピュータ可読媒体を提供し、当該命令は、１つ以上の命令を含み、ビデオシーケンスのインター予測符号化に使用されるマージ候補を検索するデバイスの１つ以上のプロセッサによって当該１つ以上の命令が実行される場合に、前記１つ以上の命令によって、前記１つ以上のプロセッサは、
現在のＣＵのサイズと閾値サイズとの間の比較を実行し、
比較の結果に基づいて、マージ候補を検索するための検索グリッドのサイズを変更して、マージ候補リストを構築するために使用される。
【図面の簡単な説明】
【００１４】
開示されたテーマの他の特徴、性質及び様々な利点は以下の詳しい説明及び図面からより明確になり、図面において、
【００１５】
【図１】空間的マージ候補の図である。
【００１６】
【図２】マージ候補の構築例を示す図である。
【００１７】
【図３】拡張空間的候補の位置を示す図である。
【００１８】
【図４】符号化されたビデオビットストリーム内の現在のブロックを符号化するための変換タイプを信号で示す例示的な処理のフローチャートである。
【００１９】
【図５】本開示の一実施例による通信システムの概略ブロック図である。
【００２０】
【図６】ストリーミング環境におけるビデオ符号器と復号器の配置例の図である。
【００２１】
【図７】本開示の一実施例によるビデオ復号器の機能ブロック図である。
【００２２】
【図８】本開示の一実施例による検索パターンを示す例示的図である。
【００２３】
【図９】本開示の一実施形態によるビデオ符号器の機能ブロック図である。
【００２４】
【図１０】一実施例によるコンピュータシステムの図である。
【発明を実施するための形態】
【００２５】
図４は、本開示の一実施例によるの通信システム（３００）の概略的ブロック図を示す。通信システム（３００）は、ネットワーク（４５０）を介して相互接続された少なくとも２つの端末（４１０〜４２０）を含み得る。データの一方向伝送の場合、第１の端末（４１０）は、ローカル位置でビデオデータを符号化して、ネットワーク（４５０）を介して他の端末（４２０）に伝送することができる。第２の端末（４２０）は、ネットワーク（４５０）から他の端末の符号化されたビデオデータを受信し、符号化されたデータを復号化し、復元されたビデオデータを表示することができる。データの一方向伝送は、媒体サービスアプリケーションなどでは一般的である。
【００２６】
図４は、例えば、ビデオ会議中に発生する可能性がある符号化されたビデオの双方向伝送をサポートするために提供される第２対の端末（４３０、４４０）を示す。データの双方向伝送の場合、各端末（４３０、４４０）は、ローカル位置でキャプチャされたビデオデータを符号化して、ネットワーク（４５０）を介して他方の端末に伝送することができる。各端末（４３０、４４０）は、また、他方の端末によって伝送された符号化されたビデオデータを受信し、符号化されたデータを復号化し、復元されたビデオデータをローカル表示デバイスに表示してもよい。
【００２７】
図４において、端末（４１０〜４４０）は、サーバ、パーソナルコンピュータ、及びスマートフォンとして例示されるが、本開示の原理はこれに限定されていない。本開示の実施例はラップトップコンピュータ、タブレット、メディアプレイヤー及び／又は専用のビデオ会議機器に適用される。ネットワーク（４５０）は端末機器（４１０〜４４０）の間で符号化されたビデオデータを伝送する任意の数のネットワークを示し、例えば、有線及び／又は無線通信ネットワークを含む。通信ネットワーク（４５０）は、回線交換及び／又はパケット交換チャネルにおいてデータを交換することができる。代表的なネットワークは、電気通信ネットワーク、ローカルエリアネットワーク、ワイドエリアネットワーク及び／又はインターネットを含む。本出願の検討の目的のために、ネットワーク（４５０）のアーキテクチャとトポロジーは、以下に本明細書で説明されない限り、本開示の操作にとって重要ではないかもしれない。
【００２８】
開示されたテーマの適用例として、図５は、ストリーミング環境におけるビデオ符号器と復号器の配置形態を示し、開示されたテーマは、等価的に、ビデオ会議、デジタルＴＶを含む、ビデオをサポートする他のアプリケーションに適用され、ＣＤ、ＤＶＤ、メモリースティックなどを含むデジタルメデイアに圧縮ビデオなどを記憶してもよい。
【００２９】
ストリーミングシステムは、キャプチャサブシステム（５１３）を含むことができ、当該キャプチャサブシステムは、例えば、デジタル撮影装置などの、例えば非圧縮のビデオサンプルストリーム（５０２）を作成するビデオソース（５０１）を含んでもよい。ビデオサンプルストリーム（５０２）は、符号化されたビデオビットストリームと比較して多いデータ量を強調するために太線として描かれる。サンプルストリーム（５０２）は、撮影装置（５０１）に連結された符号器（５０３）によって処理されることができる。符号器（５０３）は、以下でより詳細に説明する開示されたテーマの各態様を実現又は実施するために、ハードウェア、ソフトウェア、又はそれらの組み合わせを含むことができる。符号化されたビデオビットストリーム（５０４）は、サンプルストリームと比較して少ないデータ量を強調するために細い線として描かれる。符号化されたビデオビットストリーム（５０４）は、将来の使用のために、ストリームサーバ（５０５）に記憶され得る。１つ以上のストリーミングクライアント（５０６、５０８）は、ストリーミングサーバ（５０５）にアクセスして、符号化されたビデオビットストリーム（５０４）のレプリカ（５０７、５０９）を検索することができる。クライアント（５０６）は、符号化されたビデオビットストリーム（５０７）の着信レプリカを復号化し、ディスプレイ（５１２）又は他のレンダリングデバイス（図示せず）でレンダリングできる発信ビデオサンプルストリーム（５１１）を構築するビデオ復号器（５１０）を含むことができる。一部のストリーミングシステムでは、ビデオビットストリーム（５０４、５０７、５０９）を、特定のビデオ符号化／圧縮規格に従って符号化できる。これらの規格の例には、ＩＴＵ-Ｔ  Ｈ.２６５勧告書を含む。非公式に多用途ビデオ符号化（ＶＶＣ）と呼ばれるビデオ符号化規格が開発中である。開示されたテーマは、ＶＶＣのコンテキストで使用することができる。
【００３０】
図６は、本発明の一実施例によるビデオ復号器（５１０）の機能ブロック図であり得る。
【００３１】
受信機（６１０）は、復号器（５１０）によって復号化される１つ以上のコーデックビデオシーケンスを受信することができる。同一又は別の実施形態では、一度に１つの符号化されたビデオシーケンスを受信し、各符号化されたビデオシーケンスの復号化は他の符号化されたビデオシーケンスから独立している。チャネル（６１２）から符号化されたビデオシーケンスを受信することができ、チャネル（６１２）は、当該符号化されたビデオデータを記憶するストレージデバイスへのハードウェア／ソフトウェアリンクであってもよい。受信機（６１０）は、符号化されたビデオデータ及び他のデータ、例えば、それぞれの使用エンティティ（図示せず）に転送され得る符号化されたオーディオデータ及び／又は補助データストリームを受信してもよい。受信機（６１０）は、符号化されたビデオシーケンスを他のデータから分離することができる。ネットワークジッタを防止するために、バッファメモリ（６１５）は、受信機（６１０）とエントロピー復号器／パーサー（６２０）（以降、「パーサー」と呼ばれる）との間に結合され得る。受信機（６１０）が十分な帯域幅と制御性を有する記憶／転送デバイス、又は等時性リアルタイムネットワークからデータを受信する場合に、バッファ（６１５）を必要としない場合があり、又は、バッファ（６１５）が小さくなってもよい。例えばインターネットのベストパケットネットワークで使用するために、バッファ（６１５）が必要となる場合があり、バッファ（６１５）は、比較的大きくすることができ、適応的なサイズを有利に有することができる。
【００３２】
ビデオ復号器（５１０）は、エントロピー符号化されたビデオシーケンスに基づきシンボル（６２１）を再構成するために、パーサー（６２０）を含み得る。これらのシンボルのカテゴリは、復号器（５１０）の動作を管理するための情報と、ディスプレイ（５１２）などの、復号器の構成部分ではないが復号器に結合され得るレンダリングデバイスを制御するための潜在情報とを含む。図６に示すように、１つ以上のレンダリングデバイスのための制御情報は、補助拡張情報（ＳＥＩメッセージ）又はビデオユーザビリティ情報（ＶＵＩ）パラメータセットフラグメント（図示せず）の形であってよい。パーサー（６２０）は、受信された符号化されたビデオシーケンスを解析／エントロピー復号化することができる。符号化されたビデオシーケンスの符号化は、ビデオ符号化技術又は規格に準拠することができ、可変長符号化、ハフマン符号化（Ｈｕｆｆｍａｎ ｃｏｄｉｎｇ）、文脈依存の有無にかかわらず算術符号化などを含む、当業者に周知の原理に従うことができる。パーサー（６２０）は、グループに対応する少なくとも１つのパラメータに基づいて、符号化されたビデオシーケンスから、ビデオ復号器における画素のサブグループのうちの少なくとも１つのサブグループのサブグループパラメータセットを抽出することができる。サブグループは、ピクチャのグループ（ＧＯＰ）、ピクチャ、タイル、スライス、マクロブロック、符号化ユニット（ＣＵ）、ブロック、変換ユニット（ＴＵ）、予測ユニット（ＰＵ）などを含んでもよい。エントロピー復号器／パーサーは、また、符号化されたビデオシーケンス情報から、例えば、変換係数、量子化器パラメータ（ＱＰ）値、動きベクトルなどを抽出してもよい。
【００３３】
パーサー（６２０）は、バッファ（６１５）から受信されたビデオシーケンスに対してエントロピー復号化／解析動作を実行することで、シンボル（６２１）を作成することができる。パーサー（６２０）は、符号化されたデータを受信し、特定のシンボル（６２１）を選択的に復号化してもよい。また、パーサー（６２０）は、特定のシンボル（６２１）が動き補償予測ユニット（６５３）、スケーラ／逆変換ユニット（６５１）、イントラ予測ユニット（６５２）又はループフィルタ（６５６）に提供されたかどうかを判定してもよい。
【００３４】
シンボル（６２１）の再構築は、符号化されたビデオピクチャ又は符号化されたビデオピクチャの一部のタイプ（例えば、インターピクチャとイントラピクチャ、インターブロックとイントラブロック）及び他の要因によって、複数の異なるユニットに関与してもよい。関与するユニット、及び関与形態は、パーサー（６２０）が符号化されたビデオシーケンスから解析したサブグループ制御情報によって制御されてもよい。簡略化のために、パーサー（６２０）と以下の複数のユニットとの間のそのようなサブグループ制御情報の流れは説明されない。
【００３５】
既に言及された機能ブロックに加えて、復号器（５１０）は概念的には、以下に説明する複数の機能ユニットに細分化することができる。商業的な制約の下で運行する実際の実現形態では、これらのユニットの多くは互いに密接に相互作用し、少なくとも部分的に互いに統合することができる。しかしながら、開示されたテーマを説明するために、概念的には、以下の機能ユニットに細分化されることは適切である。
【００３６】
第１のユニットはスケーラ／逆変換ユニット（６５１）である。スケーラ／逆変換ユニット（６５１）は、パーサー（６２０）から（１つ以上の）シンボル（６２１）としての量子化変換係数及び制御情報を受信し、使用する変換方法、ブロックサイズ、量子化係数、量子化スケーリングマトリックスなどを含む。スケーラ／逆変換ユニット（６５１）は、サンプル値を含むブロックを出力することができ、当該ブロックはアグリゲータ（６５５）に入力することができる。
【００３７】
いくつかの場合に、スケーラ／逆変換ユニット（６５１）の出力サンプルは、イントラ符号化ブロック、即ち、以前に再構築されたピクチャからの予測性情報を使用しないが、現在のピクチャの以前に再構築された部分からの予測性情報を使用するブロックに属してもよい。そのような予測性情報は、イントラピクチャ予測ユニット（６５２）によって提供することができる。いくつかの場合に、イントラピクチャ予測ユニット（６５２）は、現在の（部分的に再構成された）ピクチャ（６５６）から抽出された、周囲が既に再構築された情報を使用して、再構築しているブロックと同じサイズ及び形状のブロックを生成する。いくつかの場合に、アグリゲータ（６５５）は、各サンプルに基づいて、イントラ予測ユニット（６５２）によって生成される予測情報を、スケーラ／逆変換ユニット（６５１）から提供される出力サンプル情報に追加する。
【００３８】
他の場合には、スケーラ／逆変換ユニット（６５１）の出力サンプルは、インター符号化及び潜在動き補償ブロックに属してもよい。このような場合に、動き補償予測ユニット（６５３）は、参照ピクチャメモリ（６５７）にアクセスして、予測のためのサンプルを抽出してもよい。当該ブロックに属するシンボル（６２１）に基づき、抽出されたサンプルに対して動き補償を行った後に、これらのサンプルは、アグリゲータ（６５５）によってスケーラ／逆変換ユニットの出力（この場合に、残差サンプル又は残差信号と呼ばれる）に追加されることで、出力サンプル情報を生成することができる。動き補償ユニットが予測サンプルを抽出するための参照ピクチャメモリにおけるアドレスは動きベクトルによって制御されてもよく、動きベクトルはシンボル（６２１）の形で動き補償ユニットによって使用されることができ、シンボル（６２１）は、例えば、Ｘ、Ｙ、及び参照ピクチャ成分を有してもよい。動き補償には、サブサンプルの正確な動きベクトルが使用されている際に参照ピクチャメモリから抽出されたサンプル値の補間、動きベクトル予測メカニズムなどを含んでもよい。
【００３９】
アグリゲータ（６５５）の出力サンプルは、ループフィルタユニット（６５６）において様々なループフィルタリング技術に適応され得る。ビデオ圧縮技術は、ループ内フィルタ技術を含んでもよく、ループ内フィルタ技術は、符号化されたビデオビットストリームに含まれ且つパーサー（６２０）からのシンボル（６２１）としてループフィルタユニット（６５６）に使用可能なパラメータによって制御され、しかしながら、ビデオ圧縮技術は、符号化されたピクチャ又は符号化されたビデオシーケンスの（復号化順序で）前の部分を復号化する期間に得られたメタ情報に応答してもよいし、以前に再構築されループフィルター処理されたサンプル値に応答してもよい。
【００４０】
ループフィルタユニット（６５６）の出力はサンプルストリームであってもよく、当該サンプルストリームは、将来のインターピクチャ予測で使用されるために、レンダリングデバイス（５１２）に出力され、参照ピクチャメモリ（６５６）に記憶されてもよい。
【００４１】
一部の符号化されたピクチャは、完全に再構成されると、将来の予測のために参照ピクチャとして使用されることができる。符号化されたピクチャは完全に再構成され、且つ符号化されたピクチャが（例えば、パーサー（６２０）によって）参照ピクチャとして識別されると、現在の参照ピクチャ（６５６）は参照ピクチャバッファ（６５７）の一部になることができ、そして、その後の符号化されたピクチャの再構築を開始する前に、新しい現在のピクチャメモリを再割り当てることができる。
【００４２】
ビデオ復号器（５１０）は、例えばＩＴＵ-Ｔ Ｈ.２６５勧告書の規格に記録されている所定のビデオ圧縮技術に従って、復号化動作を実行してもよい。符号化されたビデオシーケンスがビデオ圧縮技術又は規格の構文に準拠する意味で、符号化されたビデオシーケンスは、使用されているビデオ圧縮技術又は規格によって指定される構文に準拠することができ、ビデオ圧縮技術ドキュメント又は規格で指定され、及びその中の文書ファイルで指定されるようになる。コンプライアンスについて、符号化されたビデオシーケンスの複雑さはビデオ圧縮技術又は規格のレベルで限定されている範囲内にあることも要求する。いくつかの場合に、レベルは、最大ピクチャのサイズ、最大フレームレート、最大再構成サンプルレート（例えば１秒あたりのメガのサンプルを単位として測定する）、最大参照ピクチャサイズなどを制限する。いくつかの場合に、レベルによって設定される制限は、仮想参照復号器（ＨＲＤ）の仕様及び符号化されたビデオシーケンスにおいて信号で示されるＨＲＤバッファの管理するメタデータによってさらに制限されてもよい。
【００４３】
一実施例において、受信機（６１０）は、符号化されたビデオとともに、追加の（冗長な）データを受信してもよい。追加のデータは（１つ以上の）符号化されたビデオシーケンス一部として含まれてもよい。追加のデータは、ビデオ復号器（５１０）がデータを正確に復号化する、及び／又は、元のビデオデータをより正確に再構築するために使用されてもよい。追加のデータは、例えば、時間、空間、又は信号対雑音比（ＳＮＲ）拡張層、冗長スライス、冗長ピクチャ、前方誤り訂正符号などの形であってもよい。
【００４４】
図７は、本開示の一実施例によるビデオ符号器（５０３）の機能ブロック図であり得る。
【００４５】
符号器（５０３）は、ビデオソース（５０１）（符号器の一部ではない）からビデオサンプルを受信してもよく、当該ビデオソースは符号器（５０３）によって符号化される（１つ以上の）ビデオ画像をキャプチャしてもよい。
【００４６】
ビデオソース（５０１）は、符号器（５０３）によって符号化されするデジタルビデオサンプルストリームの形であるソースビデオシーケンスを提供してもよく、当該デジタルビデオサンプルストリームは、任意の適切なビット深度（例えば、８ビット、１０ビット、１２ビット…）、任意の色空間（例えば、ＢＴ．６０１ ＹＣｒＣＢ、ＲＧＢ…）及び任意の適切なサンプリング構成（例えば、ＹＣｒＣｂ ４:２:０、ＹＣｒＣｂ ４:４:４）を有してもよい。メディアサービスシステムでは、ビデオソース（５０１）は、以前に準備されたビデオを記憶するストレージデバイスであってもよい。ビデオ会議システムでは、ビデオソース（５０３）は、ローカルイメージ情報をビデオシーケンスとしてキャプチャする撮影装置であってもよい。ビデオデータは、順番に見る際に動きが与えられる複数の個別のピクチャとして提供されてもよい。これらのピクチャ自体は空間画素アレイとして構成されてもよく、なお、各画素は、使用されるサンプリング構成、色空間などによって、１つ以上のサンプルを含んでもよい。当業者は、画素とサンプルとの間の関係を容易に理解することができる。以下の説明では、サンプルを中心に説明する。
【００４７】
一実施例によれば、符号器（５０３）は、リアルタイムで、又はアプリケーションによって要求される他の任意の時間制約の下で、ソースビデオシーケンスのピクチャを符号化し、それを符号化されたビデオシーケンス（７４３）に圧縮してもよい。適切な符号化速度を実行することはコントローラ（７５０）の機能の１つである。コントローラは、以下に説明する他の機能ユニットを制御し、これらのユニットに機能的に結合される。簡略化のために、結合は描かれていない。コントローラによって設置されるパラメータは、レート制御関連パラメータ（ピクチャスキップ、量子化器、レート歪み最適化技術のλ値…）、ピクチャサイズ、ピクチャグループ（ＧＯＰ）レイアウト、最大動きベクトル検索範囲などを含んでもよい。当業者は、コントローラ（７５０）の他の機能を容易に認識することができ、これらの機能は特定のシステム設計に対して最適化されたビデオ符号器（５０３）に属する可能性があるためである。
【００４８】
一部のビデオ符号器は、当業者が「符号化ループ」として容易に認識する形態で動作する。非常に簡略化した説明として、符号化ループは、符号器（７３０）の符号化部分（以降、「ソース符号器」と呼ばれる）（符号化される入力ピクチャ及び（１つ以上の）参照ピクチャに基づいてシンボルを構築することを担当する）、符号器（５０３）に埋め込まれる（ローカルの）復号器（７３３）を含んでもよく、当該復号器（７３３）はシンボルを再構築して（リモート）復号器によっても作成されるサンプルデータを作成する（シンボルと符号化されたビデオビットストリームとの間の圧縮は開示されたテーマで考慮されるビデオ圧縮技術では無損失であるため）。再構築されたサンプルストリームを参照ピクチャメモリ（７３４）に入力する。シンボルストリームの復号化によって、復号器の位置（ローカル又はリモート）に関係がないビットが正確である結果が得られるため、参照ピクチャバッファのコンテンツもローカル符号器とリモート符号器との間でビットが正確である。つまり、符号器の予測部分が「見る」参照ピクチャサンプルと、復号器が復号化中に予測を使用する際に「見る」サンプル値とは全く同じである。参照ピクチャの同期性という基本的な原理（及び、例えば、チャネル誤差のため、同期性を維持できない場合に生じるドリフト）は、当業者に周知のものである。
【００４９】
「ローカル」復号器（７３３）の動作は、以上で図６に基づいて詳細に説明された「リモート」復号器（５１０）の動作と同じであってもよい。しかしながら、また、図７を簡単に参照し、シンボルが利用可能であり、且つ、エントロピー符号器（７４５）及びパーサー（６２０）が無損失でシンボルを、符号化されたビデオシーケンスに符号化／復号化できる場合に、チャネル（６１２）、受信機（６１０）、バッファ（６１５）及びパーサー（６２０）を含む復号器（５１０）のエントロピー復号化部分はローカル復号器（７３３）で完全に実現されない場合がある。
【００５０】
この場合、復号器に存在する解析／エントロピー復号化に加えて、任意の復号器技術も、必然的に基本的に同じ機能形式で対応する符号器に存在することが分かる。符号器技術と完全に説明された復号器技術とは相互に逆であるため、符号器技術の説明を簡略化できる。より詳しい説明は、特定の領域のみで必要であり、以下で提供される。
【００５１】
ソース符号器（７３０）の動作の一部として、ソース符号器（７３０）は動き補償予測符号化を実行してもよく、動き補償予測符号化は、ビデオシーケンスからの「参照フレーム」として指定された１つ以上の以前に符号化されたフレームを参照することで入力フレームを予測的に符号化する。このようにして、符号化エンジン（７３２）は入力フレームの画素ブロックと、入力フレームの（１つ以上の）予測参照の（１つ以上の）参照フレームとして選択され得る画素ブロックとの間の差異を符号化してもよい。
【００５２】
ローカルビデオ復号器（７３３）は、ソース符号器（７３０）によって作成されたシンボルに基づいて、参照フレームとして指定され得るフレームの符号化されたビデオデータを復号化してもよい。符号化エンジン（７３２）の動作は、有利には、非可逆処理であり得る。符号化されたビデオデータがビデオ復号器（図６、図示せず）で復号化され得る場合、再構築されたビデオシーケンスは、通常、多少の誤差を有するソースビデオシーケンスのレプリカであり得る。ローカルビデオ復号器（７３３）は、参照フレームに対してビデオ復号器によって実行され得る復号化処理を複製し、再構成された参照フレームを参照ピクチャバッファ（７３４）に記憶してもよい。このようにして、符号器（５０３）は、再構成された参照フレームのレプリカをローカルに記憶することができ、当該レプリカは、リモートビデオ復号器によって得られる再構成された参照フレームと共通のコンテンツを有する（伝送誤差がない）。
【００５３】
予測器（７３５）は、符号化エンジン（７３２）に対して予測検索を実行することができる。つまり、符号化される新しいフレームについて、予測器（７３５）は、参照ピクチャメモリ（７３４）において、新しいピクチャの適切な予測参照として使用し得るサンプルデータ（候補参照画素ブロックとして）、又は例えば参照ピクチャの動きベクトル、ブロック形状などの特定のメタデータを検索してもよい。予測器（７３５）は、適切な予測参照を見つけるために、サンプルブロックに基づいて、画素ブロックごとに動作することができる。いくつかの場合に、例えば、予測器（７３５）によって得られた検索結果によって決定されるように、入力ピクチャは、参照ピクチャメモリ（７３４）に記憶された複数の参照ピクチャから抽出された予測参照を有してもよい。
【００５４】
コントローラ（７５０）は、例えば、ビデオデータを符号化するためのパラメータとサブグループパラメータの設置を含む、ビデオ符号器（７３０）の符号化動作を管理することができる。
【００５５】
エントロピー符号器（７４５）において、以上で言及された全ての機能ユニットの出力に対してエントロピー符号化を行ってもよい。エントロピー符号器は、例えばハフマン符号化、可変長符号化、算術符号化などの当業者に周知の技術に従って、シンボルに対して無損失圧縮を行うことにより、各機能ユニットによって生成されたシンボルを、符号化されたビデオシーケンスに変換する。
【００５６】
送信機（７４０）は、通信チャネル（７６０）を介した伝送の準備をするように、エントロピー符号器（７４５）によって作成された（１つ以上の）符号化されたビデオシーケンスをバッファリングすることができ、通信チャネル（７６０）は、符号化されたビデオデータを記憶するストレージデバイスへのハードウェア／ソフトウェアリンクであってもよい。送信機（７４０）は、ビデオ符号器（７３０）からの符号化されたビデオデータを、伝送しようとする他のデータ、例えば、符号化されたオーディオデータ及び／又は補助データストリーム（ソースは図示せず）とともにマージしてもよい。
【００５７】
コントローラ（７５０）は、符号器（５０３）の動作を管理することができる。コントローラ（７５０）は、符号化中に、各符号化されたピクチャに、対応するピクチャに適用し得る符号化技術に影響を与える可能性がある特定の符号化されたピクチャタイプを割り当て得る。例えば、通常、ピクチャは、次のフレームタイプのいずれかとして割り当てられ得る。
【００５８】
イントラピクチャ（Ｉピクチャ）は、シーケンス内の任意の他のフレームを予測のソースとして使用せずに符号化及び復号化されるピクチャであってもよい。一部のビデオコーデックは、例えば、独立復号器リフレッシュピクチャを含む異なるタイプのイントラピクチャを許容する。当業者は、Ｉピクチャのそれらの変形及び対応する用途と特徴を知っている。
【００５９】
予測ピクチャ（Ｐピクチャ）は、多くとも１つの動きベクトル及び参照インデックスを使用して各ブロックのサンプル値を予測し得る場合に、イントラ予測又はインター予測を使用して符号化及び復号化を行うピクチャであってもよい。
【００６０】
双方向予測性ピクチャ（Ｂピクチャ）は、多くとも２つの動きベクトルと参照インデックスを使用して各ブロックのサンプル値を予測する場合にイントラ予測又はインター予測を使用して符号化及び復号化を行うピクチャであってもよい。同様に、複数の予測ピクチャは、２つを超える参照画像及び関連メタデータを単一のブロックの再構成に使用できる。
【００６１】
ソースピクチャは一般的に、空間的に、複数のサンプルブロック（例えば、それぞれ４×４、８×８、４×８又は１６×１６サンプルのブロック）に細分化され、ブロックごとに符号化されてもよい。ブロックは、該ブロックの対応するピクチャに適用される符号化割り当てによって決定される他の（既に符号化された）ブロックを参照して予測的に符号化されてもよい。例えば、Ｉピクチャのブロックは、非予測的に符号化してもよいし、同一のピクチャの符号化されたブロックを参照して予測的に符号化してもよい（空間的予測又はイントラ予測）。Ｐピクチャの画素ブロックは、非予測的に、空間的予測を介して、又は１つの以前に符号化された参照ピクチャを参照して時間的予測を介して符号化してもよい。Ｂピクチャのブロックは、非予測的に、空間的予測を介して、又は１つ又は２つの以前に符号化された参照ピクチャを参照して時間的予測を介して符号化してもよい。
【００６２】
ビデオ符号器（５０３）は、例えばＩＴＵ-Ｔ Ｈ.２６５勧告書などの所定のビデオ符号化技術又は規格に基づき、符号化動作を実行することができる。ビデオ符号器（５０３）の動作中に、ビデオ符号器（５０３）は、入力ビデオシーケンスにおける時間的及び空間的冗長性による予測符号化操作を含む様々な圧縮動作を実行することができる。従って、符号化されたビデオデータは、使用されているビデオ符号化技術又は規格によって指定された構文に準拠し得る。
【００６３】
一実施例において、送信機（７４０）は、追加のデータと符号化されたビデオとを伝送してもよい。ビデオ符号器（７３０）は、このようなデータを、符号化されたビデオシーケンスの一部として含んでもよい。追加のデータは、時間的／空間的／ＳＮＲ拡張層、例えば冗長なピクチャ、スライスのような他の形の冗長データ、補助拡張情報（ＳＥＩ）メッセージ、視覚的ユーザビリティ情報（ＶＵＩ）パラメータセットフラグメントなどを含んでもよい。
【００６４】
本開示の実施例は、例えばマージモードに関連するインターピクチャ予測符号化に使用される若干の方法を含む。実施例において、マージ候補は、現在のＣＵにすぐ隣接していない近隣のＣＵからのものであってもよい。これは、拡張マージモードと呼ばれてもよい。符号器と復号器が近隣のＣＵからのマージ候補を検索しようとする場合、グリッドサイズはＣＵのサイズに依存し得る。この場合、小さいＣＵは、小さいグリッドサイズを有し、且つ、大きいＣＵは、大きいグリッドサイズを有する。これらの実施例は、マージ概念を使用する任意のビデオ符号化方法に容易に拡張することができる。例えば、スキップモードは、マージモードを使用して動き情報を導出するため、本明細書で説明される実施形態はスキップモードにも適用できる。
【００６５】
一実施例において、現在のＣＵのサイズが閾値よりも大きい場合、検索グリッドは、Ｎ×Ｍのような、例えば１６×１６の固定検索グリッドである。現在のＣＵのサイズが閾値以下である場合、検索グリッドは、ブロックサイズに応じて適応的に変更される。例えば、検索グリッドは、水平方向では現在のＣＵの幅、及び垂直方向では現在のＣＵの高さを有してもよい。例えば、シーケンスパラメータセット（ＳＰＳ）、ピクチャパラメータセット（ＰＰＳ）又はスライスヘッダにおいて閾値を信号で示してもよい。閾値は事前定義されてもよい。
【００６６】
検索グリッドがブロックサイズに応じて適応的に変更される場合に、詳細な検索パターンは、現在のＪＶＥＴ／ＨＥＶＣスキームの拡張であってもよい。別の近隣ブロックにおける対応するＡ（ｉ，ｊ）、Ｂ（ｉ，ｊ）、Ｃ（ｉ，ｊ）、Ｄ（ｉ，ｊ）、Ｅ（ｉ，ｊ）候補をスキャンする。本実施形態では、ｉとｊは、行及び列の座標である。スキャン順序は、最も近い近傍から、遠い近傍への順であってもよい。当該スキームを図８に示す。候補を求めて近隣ブロックを検索する場合に、検索グリッドはブロックサイズに応じて適応的に変更される。水平方向では、検索グリッドは、ブロック幅に基づいているため、各Ａ（ｉ，ｊ）又はＤ（ｉ，ｊ）は、次のＡ（ｉ，ｊ）又はＤ（ｉ，ｊ）までのブロック幅の距離を有する。垂直方向では、検索グリッドは、高さに基づいているため、各Ｂ（ｉ，ｊ）又はＣ（ｉ，ｊ）は次のＢ（ｉ，ｊ）又はＣ（ｉ，ｊ）までの高さの距離を有する。対角線方向では、検索グリッドは、ブロックの幅と高さに基づいているため、次のＥ（ｉ，ｊ）への各Ｅ（ｉ，ｊ）は、次のＥ（ｉ，ｊ）への（幅、高さ）のオフセットを有する。検索範囲は（オフセットｘ及びオフセットｙ）によって定義される。
【００６７】
一実施例において、現在のＣＵのサイズが閾値よりも小さい場合に、検索グリッドは、Ｎ×Ｍのような、例えば１６×１６の固定検索グリッドである。現在のＣＵのサイズが閾値以上である場合、検索グリッドはブロックサイズに応じて適応的に変更される。即ち、検索グリッドは、水平方向では現在のＣＵの幅、及び垂直方向では現在のＣＵの高さを有してもよい。例えば、ＳＰＳ、ＰＰＳ又はスライスヘッダにおいて閾値を信号で示してもよい。閾値は事前定義されてもよい。
【００６８】
検索グリッドがブロックのサイズに応じて適応的に変更される場合に、詳細な検索パターンは、上記の検索パターンと同じであり得る。
【００６９】
一実施例において、適応グリッドサイズは、他の検索パターンに適用されてもよい。これらの検索パターンにおいて、次の候補を見つけるためのグリッドサイズは、現在のブロックサイズに応じて適応的に変更される。即ち、検索グリッドは、水平方向では現在のブロックの幅、及び垂直方向では現在のブロックの高さを有してもよい。一実施形態において、現在のＣＵのサイズが閾値よりも小さい場合に、検索グリッドは、Ｎ×Ｍのような、例えば１６×１６などの固定の検索グリッドである。現在のＣＵのサイズが閾値以上である場合に、検索グリッドはブロックサイズに応じて適応的に変更される。
【００７０】
他の実施例において、現在のＣＵのサイズが閾値以上である場合に、検索グリッドは、Ｎ×Ｍのような、例えば１６×１６などの固定の検索グリッドである。現在のＣＵのサイズが閾値よりも小さい場合に、検索グリッドは、ブロックサイズに応じて適応的に変更される。
【００７１】
上記の実施例において、現在のＣＵのサイズと閾値を比較する場合に、当該比較にはＣＵのサイズの様々な態様を使用することができる。例えば、ＣＵの幅とＣＵの高さのうちの最小値を使用してもよい。別の例において、ＣＵの幅とＣＵの高さのうちの最大値を使用してもよい。さらに別の例において、ＣＵの幅とＣＵの高さとの合計を使用してもよい。
【００７２】
図９は、ビデオシーケンスのインター予測符号化に使用されるマージ候補を検索するための例示的な処理９００のフローチャートである。いくつかの実現形態において、図９の１つ以上の処理ブロックは、復号器５１０によって実行されてもよい。いくつかの実現形態において、図９の１つ以上の処理ブロックは、例えば符号器５０３などの、復号器５１０とは別の、又は復号器５１０を含む別のデバイス又はデバイスのグループによって実行されもよい。
【００７３】
図９に示すように、処理９００は、現在のＣＵのサイズと閾値サイズとの間の比較を実行する（ブロック９１０）を含むことができる。また、図９に示すように、処理９００は、比較の結果に基づいて、検索グリッドのサイズを変更するかどうかを決定する（ブロック９２０）を含むことができる。さらに、図９に示すように、処理９００は、比較の結果に基づいて、マージ候補を検索するための検索グリッドのサイズを変更して、マージ候補リストを構築する（ブロック９３０）を含むことができる。
【００７４】
一実施例において、現在のＣＵのサイズは、現在のＣＵの高さと現在のＣＵの幅のうちの大きい方であってもよい。
【００７５】
一実施例において、現在のＣＵのサイズは、現在のＣＵの高さと現在のＣＵの幅のうちの小さい方であってもよい。
【００７６】
一実施例において、現在のＣＵのサイズは、現在のＣＵの高さと現在のＣＵの幅との合計であってもよい。
【００７７】
一実施例において、処理９００は、現在のＣＵのサイズが閾値サイズよりも大きいと判定したことに応答して、検索グリッドのサイズを固定サイズに設定し、現在のＣＵのサイズが閾値サイズよりも小さいと判定したことに応答して、現在のＣＵのサイズに基づいて、検索グリッドのサイズを可変サイズに設定すること、をさらに含んでもよい。
【００７８】
一実施例において、処理９００は、現在のＣＵのサイズが閾値サイズよりも小さいと判定したことに応答して、検索グリッドのサイズを固定サイズに設定し、現在のＣＵのサイズが閾値サイズよりも大きいと判定したことに応答して、現在のＣＵのサイズに基づいて検索グリッドのサイズを可変サイズに設定すること、をさらに含んでもよい。
【００７９】
一実施例において、現在のＣＵの幅に基づいて検索グリッドの水平サイズを決定し、現在のＣＵの高さに基づいて検索グリッドの垂直サイズを決定してもよい。
【００８０】
一実施例において、シーケンスパラメータセット、ピクチャパラメータセット及びスライスヘッダのうちの少なくとも１つにおいて、閾値サイズを信号で示してもよい。
【００８１】
一実施例において、検索グリッドにおいてマージ候補を検索するためのスキャン順序はＡ（ｉ，ｊ）、Ｂ（ｉ，ｊ）、Ｃ（ｉ，ｊ）、Ｄ（ｉ，ｊ）、Ｅ（ｉ，ｊ）として表され、ｉは、現在のＣＵからの水平オフセットの数を表し、ｊは、現在のＣＵからの垂直オフセットの数を表し、Ａ（０，０）は、現在のＣＵの左側にあり、Ｂ（０，０）は、現在のＣＵの上側にあり、Ｃ（０，０）は、現在のＣＵの右上隅にあり、Ｄ（０，０）は、現在のＣＵの左下隅にあり、Ｅ（０，０）は、現在のＣＵの左上隅にあってもよい。
【００８２】
一実施例において、マージ候補リストは、マージモードとスキップモードのうちの少なくとも１つで使用されてもよい。
【００８３】
図９に、処理９００の例示的なブロックを示したが、いくつかの実現形態において、図９に示すこれらのブロックに比べて、処理９００は、追加のブロック、より少ないブロック、異なるブロック又は異なって配置されたブロックを含んでもよい。追加又は代替として、処理９００の２つ以上のブロックは並行して実行されてもよい。
【００８４】
また、提案された方法は、処理回路（例えば、１つ以上のプロセッサ又は１つ以上の集積回路）によって実現されてもよい。一例では、当該１つ以上のプロセッサは、非一時的コンピュータ可読媒体に記憶されているプログラムを実行して、提案された方法の１つ又は複数を実行する。
【００８５】
上記の技術は、コンピュータ可読命令によってコンピュータソフトウェアとして実現され、１つ以上のコンピュータ可読媒体に物理的に記憶されてもよい。例えば、図１０は、開示されたテーマのいくつかの実施形態を実現するのに適したコンピュータシステム（１２００）を示す。
【００８６】
コンピュータソフトウェアは、任意の適切なマシンコード又はコンピュータ言語によって符号化することができ、任意の適切なマシンコード又はコンピュータ言語に対して、アセンブル、コンパイル、リンクなどのメカニズムを行うことで、コンピュータの中央演算処理装置（ＣＰＵ）、グラフィック処理ユニット（ＧＰＵ）などによって直接的に実行される、又は解釈、マイクロコードによって実行されることができる命令を含むコードを作成してもよい。
【００８７】
当該命令は、例えばパーソナルコンピュータ、タブレット、サーバ、スマートフォン、ゲームデバイス、モノのインターネットデバイスなどを含む、様々なタイプのコンピュータ又はそれらのコンポーネントで実行されることができる。
【００８８】
図１０に示されるコンピュータシステム１２００のコンポーネントは、本質的に例示であり、本開示の実施例を実現するためのコンピュータソフトウェアの使用範囲又は機能に制限を加えることを意図するものではない。コンポーネントの配置は、コンピュータシステム１２００の例示的な実施例に示めされたるコンポーネントのいずれか、又はそれらの組み合わせに関連する依存性又は要件を有するものとして解釈されるべきではない。
【００８９】
コンピュータシステム１２００は、特定のヒューマンインタフェース入力デバイスを含んでもよい。このようなヒューマンインタフェース入力デバイスは、例えば、触覚入力（例えば、キーストローク、スワイプ、データグローブの移動）、オーディオ入力（例えば、音声、拍手）、視覚入力（例えば、姿勢）、嗅覚入力（図示せず）による１つ以上の人間のユーザの入力に応答してもよい。ヒューマンインタフェースデバイスは、例えば、オーディオ（例えば、音声、音楽、環境音）、画像（例えば、スキャンした画像、静的画像撮影装置から取得された写真画像）、ビデオ（例えば２次元ビデオ、ステレオビデオが含まれる３次元ビデオ）などの、人間の意識的な入力に必ずしも直接関連しない特定のメディアをキャプチャするために使用されることもできる。
【００９０】
ヒューマンインタフェース入力デバイスは、キーボード１００１、マウス１００２、トラックパッド１００３、タッチスクリーン１０１０、データグローブ１２０４、ジョイスティック１００５、マイク１００６、スキャナー１００７、撮影装置１００８のうちの１つ以上を含んでもよい（それぞれが１つのみ図示される）。
【００９１】
コンピュータシステム１２００はさらに、特定のヒューマンインタフェース出力デバイスを含んでもよい。このようなヒューマンインタフェース出力デバイスは、例えば、触覚出力、音、光、及び匂い／味によって、１つ以上の人間のユーザの感覚を刺激することができる。そのようなヒューマンインタフェース出力デバイスには、触覚出力デバイス（例えば、タッチスクリーン１０１０、データグローブ１２０４、又はジョイスティック１００５による触覚フィードバックであり、入力デバイスとして機能しない触覚フィードバックデバイスもある場合がある）、オーディオ出力デバイス（例えば、スピーカー１００９、ヘッドフォン（図示せず））、視覚出力デバイス（例えば、スクリーン１０１０であり、ブラウン管（ＣＲＴ）スクリーン、液晶ディスプレイ（ＬＣＤ）スクリーン、プラズマスクリーン、有機発光ダイオード（ＯＬＥＤ）スクリーンを含み、スクリーンのそれぞれはタッチスクリーン入力機能がある場合とない場合、触覚フィードバック機能がある場合とない場合があり、そのうちの一部のスクリーンは例えばステレオグラフィック出力のような手段により、２次元の視覚的出力又は３次元以上の出力を出力できる可能性がある）、仮想現実眼鏡（図示せず）、ホログラフィックディスプレイとスモークタンク（図示せず）、及びプリンター（図示せず）を含んでもよい。
【００９２】
コンピュータシステム１２００はさらに人間がアクセス可能な記憶装置及びその関連する媒体を含んでもよく、例えば、ＣＤ／ＤＶＤなどの媒体１０２１を有するＣＤ／ＤＶＤ  ＲＯＭ／ＲＷ１０２０などの光学媒体、サムドライブ１０２２、取り外し可能なハードドライブ又はソリッドステートドライブ１０２３、磁気テープとフロッピーディスク（図示せず）のような従来の磁気媒体、セキュリティドングル（図示せず）などの専用ＲＯＭ／ＡＳＩＣ／ＰＬＤによるデバイスなどを含んでもよい。
【００９３】
また、当業者は、現在開示されたテーマに関連して使用される「コンピュータ可読媒体」という用語には、伝送媒体、搬送波又は他の一時的な信号が含まれていないことを理解するべきである。
【００９４】
コンピュータシステム１２００は、１つ以上の通信ネットワークのインタフェースも含むことができる。ネットワークは、例えば、無線、有線、光などのネットワークであってもよい。ネットワークは、ローカル、ワイドエリア、メトロポリタン、車載及び工業、リアルタイム、遅延耐性などのネットワークであってもよい。ネットワークの例には、例えば、イーサネットなどのローカルエリアネットワーク、無線ＬＡＮ、モバイル通信（ＧＳＭ）、第３世代（３Ｇ）、第４世代（４Ｇ）、第５世代（５Ｇ）、ロング・ターム・エボリューション（ＬＴＥなど）を含むセルラーネットワーク、有線テレビ、衛星テレビ、及び地上波放送テレビを含むテレビ有線又は無線ワイドエリアデジタルネットワーク、ＣＡＮＢｕｓを含む車載と工業ネットワークなどであってもよい。一部のネットワークは一般的に、特定の汎用データポート又は周辺バス（１０４９）（例えば、コンピュータシステム１２００のユニバーサルシリアルバス（ＵＳＢ）ポートなど）に接続された外部ネットワークインタフェースアダプターを必要とする。他のネットワークは一般的に、以下で説明するようなシステムバス（例えば、ＰＣコンピュータシステムに達するイーサネットインタフェース、又はスマートフォンコンピュータシステムに達するセルラーネットワークインタフェース）に接続されることで、コンピュータシステム１２００のコアに統合される。これらのネットワークのいずれかを使用して、コンピュータシステム１２００は他のエンティティと通信することができる。このような通信は、一方向、受信のみ（例えば、放送テレビ）、一方向送信のみ（例えば、あるＣＡＮｂｕｓデバイスへのＣＡＮｂｕｓ）、又は双方向（例えば、ローカルエリア又はワイドエリアデジタルネットワークを使用して他のコンピュータシステムに達する）あってもよい。上記のようなこれらのネットワークとネットワークインタフェースのそれぞれに、特定のプロトコル及びプロトコルスタックを使用することができる。
【００９５】
上記のヒューマンインタフェースデバイス、人間がアクセス可能な記憶装置、及びネットワークインタフェースは、コンピュータシステム１２００のコア１０４０に取り付けることができる。
【００９６】
コア１０４０には、１つ以上の中央処理装置（ＣＰＵ）１０４１、グラフィックス処理装置（ＧＰＵ）１０４２、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）１０４３の形式の専用なプログラマブル処理ユニット、あるタスクに使用されるハードウェアアクセラレータ１０４４などを含んでもよい。これらのデバイスは、読み取り専用メモリ（ＲＯＭ）１０４５、ランダムアクセスメモリ（ＲＡＭ）１０４６、例えばユーザがアクセスできない内部ハードディスクドライブ、ソリッドステートドライブ（ＳＳＤ）などの内部大容量記憶装置１０４７とともに、システムバス１２４８を介して接続される。一部のコンピュータシステムでは、システムバス１２４８に１つ以上の物理プラグの形でアクセスして、他のＣＰＵ、ＧＰＵなどによる拡張を可能にすることができる。周辺機器は、直接的又は周辺バス１０４９を介してコアのシステムバス１２４８に接続することができる。周辺バスのアーキテクチャは、周辺コンポーネント相互接続（ＰＣＩ）、（ＵＳＢ）などを含む。
【００９７】
ＣＰＵ１０４１、ＧＰＵ１０４２、ＦＰＧＡ１０４３、及びアクセラレータ１０４４は特定の命令を実行でき、これらの命令を組み合わせると、以上に言及されたコンピュータコードを構成する。当該コンピュータコードはＲＯＭ１０４５又はＲＡＭ１０４６に記憶されてもよい。一時的なデータもＲＡＭ１０４６に記憶されてもよく、永久データは、例えば内部大容量記憶装置１０４７に記憶されてもよい。キャッシュメモリを使用することによって、記憶装置内の任意の記憶装置への高速ストレージ及び検索を実現することができ、当該キャッシュメモリは１つ以上のＣＰＵ１０４１、ＧＰＵ１０４２、大容量記憶装置１０４７、ＲＯＭ１０４５、ＲＡＭ１０４６などと密接に関連することができる。
【００９８】
コンピュータ読み取り可能な媒体は、コンピュータが実現する様々な動作を実行するためのコンピュータコードをその上に有することができる。媒体とコンピュータコードは、本開示の目的のために、特別に設計及び構築される媒体とコンピュータコードであってもよいし、又は、それらは、コンピュータソフトウェア分野の当業者にとって周知であり且つ使用可能なタイプのものであってもよい。
【００９９】
限定ではなく例として、アーキテクチャ１２００を有するコンピュータシステム、特に、コア１０４０は、（１つ以上の）プロセッサ（ＣＰＵ、ＧＰＵ、ＦＰＧＡ、アクセラレータなどを含む）が１つ以上の有形コンピュータ可読媒体に実装されるソフトウェアを実行する結果として、機能を提供することができる。このようなコンピュータ可読媒体は、上記のような、ユーザがアクセス可能な大容量記憶装置に関する媒体、及び例えばコア内部大容量記憶装置１０４７又はＲＯＭ１０４５などの非一時的なコア１０４０を有する特定の記憶装置であってもよい。本開示を実現するための様々な実施例のソフトウェアはこのようなデバイスに記憶され、コア１０４０によって実行されることができる。特定のニーズに応じて、コンピュータ可読媒体には１つ以上の記憶装置又はチップが含まれてもよい。ソフトウェアは、コア１０４０、特にその中のプロセッサ（ＣＰＵ、ＧＰＵ、ＦＰＧＡなどを含む）に、本明細書では説明されている特定の処理又は特定の処理の特定の部分を実行させることができ、ＲＡＭ１０４６に記憶されるデータ構成を限定すること、及びソフトウェアによって限定された処理によってこのようなデータ構成を修正することが含まれる。さらに又は代替として、コンピュータシステムは、ロジックハードワイヤード、又は他の形式で回路（例えば、アクセラレータ１０４４）に実装される結果として、機能を提供することができ、当該ロジックハードワイヤード又は回路は、ソフトウェアの代わりに、又はソフトウェアとともに動作して、本明細書では説明されている特定の処理又は特定の処理の特定の部分を実行することができる。適切な場合、ソフトウェアに対する言及にはロジックが含まれ、逆に、ロジックに対する言及にはソフトウェアが含まれてもよい。適切な場合、コンピュータ可読媒体に対する言及には、実行のためのソフトウェアが記憶される回路（例えば、集積回路（ＩＣ））、実行のためのロジックを具現化する回路、又はその両方が含まれてもよい。本開示は、ハードウェアとソフトウェアとの任意の適切な組み合わせを含む。
【０１００】
この開示は、いくつかの例示的な実施例を説明したが、本開示の範囲内に含まれる変更、置換、及び様々な代替の均等物が存在する。従って、当業者は、本明細書では明示的に示されていないか、又は記載されていないが、本開示の原理を具現化したのでその精神及び範囲内にある多数のシステム及び方法を考案できることが理解されたい。
【国際調査報告】
2021516513.tif 000012