(57)【要約】  本開示の各態様は、ビデオ符号化および復号化のための方法および装置を提供する。いくつかの例では、装置は処理回路を含む。当該処理回路は、現在ブロックの予測画像を生成するためのフレーム内予測モードを決定し、符号化されたビデオビットストリームから抽出されたシグナリング情報に基づいて１つ以上の主変換を決定し、決定されたフレーム内予測モードおよび決定された１つ以上の主変換に基づいて二次変換を決定する。当該処理回路はまた、符号化されたビデオビットストリームから抽出された入力ブロックの１つ以上の係数、決定された１つ以上の主変換および決定された二次変換に基づいて、現在ブロックの残差画像を再構築する。そして、当該処理回路は、現在ブロックの予測画像および残差画像に基づいて、現在ブロックの画像を再構築する。
2021517395.tif 000002
【特許請求の範囲】
【請求項１】
デコーダでビデオを復号化する方法であって、
現在ブロックの予測画像を生成するためのフレーム内予測モードを決定するステップと、
符号化されたビデオビットストリームから抽出されたシグナリング情報に基づいて、１つ以上の主変換を決定するステップと、
前記決定されたフレーム内予測モードと、前記決定された１つ以上の主変換とに基づいて、二次変換を決定するステップと、
前記符号化されたビデオビットストリームから抽出された入力ブロックの１つ以上の係数と、前記決定された１つ以上の主変換と、前記決定された二次変換とに基づいて、現在ブロックの残差画像を再構築するステップと、
前記現在ブロックの予測画像および残差画像に基づいて、前記現在ブロックの画像を再構築するステップと、を含む、
ことを特徴とする方法。
【請求項２】
前記１つ以上の主変換に基づいて、前記二次変換を使用して二次変換処理を実行するかどうかを決定するステップ、をさらに含み、
ここで、前記二次変換処理を実行すると決定された場合、前記二次変換を決定することと、前記決定された二次変換に基づいて前記現在ブロックの残差画像を再構築することとを実行する、
ことを特徴とする請求項１に記載の方法。
【請求項３】
前記１つ以上の主変換を決定するステップは、水平変換および垂直変換の複数のペアのうちの１つを決定するステップ、を含み、
前記二次変換を決定するステップは、複数の二次変換のうちの１つを識別し、ここで、前記識別される二次変換が、前記フレーム内予測モードと、前記水平変換および垂直変換の複数のペアのうちの１つとの組み合わせに関連付けられるステップ、を含み、また、
前記複数の二次変換のそれぞれが、前記水平変換および垂直変換の複数のペアのうちの異なるペアに関連付けられる、
ことを特徴とする請求項１に記載の方法。
【請求項４】
前記１つ以上の主変換を決定するステップは、前記符号化されたビデオビットストリームから抽出された第１フラグが第１値を有する場合、水平変換および垂直変換のペアがＤＣＴ−ＩＩ（離散コサイン変換−タイプＩＩ）変換であると決定するステップ、を含む、
ことを特徴とする請求項１に記載の方法。
【請求項５】
前記符号化されたビデオビットストリームから抽出された第１フラグが前記第１値を有する場合、前記二次変換を使用する二次変換処理を実行しないと決定するステップ、をさらに含む、
ことを特徴とする請求項４に記載の方法。
【請求項６】
前記１つ以上の主変換を決定するステップは、前記符号化されたビデオビットストリームから抽出された第１フラグが第２値を有する場合、前記符号化されたビデオビットストリームから抽出された変換インデックスに基づいて、前記水平変換および垂直変換のペアを決定するステップと、
前記符号化されたビデオビットストリームから抽出された第１フラグが前記第２値を有する場合、前記フレーム内予測モードと、前記水平変換および垂直変換のペアとに基づいて、前記二次変換を決定することを実行するステップと、を含む、
ことを特徴とする請求項４に記載の方法。
【請求項７】
前記符号化されたビデオビットストリームから抽出された第１フラグが第２値を有し、かつ、前記入力ブロックの１つ以上の係数が、複数個未満の係数のうちの１つに対応し、また高周波数領域に非ゼロの係数を有しなく、ここで、前記複数個の係数の量子化レベルが閾値より小さいである場合、
前記水平変換がデフォルトの水平変換であり、前記垂直変換がデフォルトの垂直変換であり、および、
前記符号化されたビデオビットストリームから抽出された第１フラグが前記第２値を有する場合、前記フレーム内予測モードと、前記デフォルトの水平変換と、前記デフォルトの垂直変換とに基づいて、前記二次変換を決定することを実行する、
ことを特徴とする請求項４に記載の方法。
【請求項８】
前記前記ブロックが色度ブロックであり、かつ、
前記決定されたフレーム内予測モードと、前記符号化されたビデオビットストリームから抽出されたシグナリング情報に基づいて１つ以上の同一の場所に配置された輝度ブロックに対して決定された１つ以上の主変換と、前記１つ以上の同一の場所に配置された輝度ブロックに対して決定された１つ以上の二次変換とに基づいて、前記１つ以上の主変換を決定することを実行する、
ことを特徴とする請求項１に記載の方法。
【請求項９】
前記前記ブロックが色度ブロックであり、かつ、
前記現在ブロックが直接モードによって予測された色度成分を有する場合のみ、１つ以上の同一の場所に配置された輝度ブロックに対して決定された１つ以上の主変換と、前記１つ以上の同一の場所に配置された輝度ブロックに対して決定された１つ以上の二次変換とに基づいて、前記１つ以上の主変換を決定することを実行する、
ことを特徴とする請求項１に記載の方法。
【請求項１０】
前記１つ以上の主変換を決定するステップは、前記符号化されたビデオビットストリームから抽出された変換インデックスに基づいて、ＤＣＴ−ＩＩ（離散コサイン変換−タイプＩＩ）変換およびＤＳＴ−ＶＩＩ（離散サイン変換−タイプＶＩＩ）変換を含む候補変換のみから、水平変換および垂直変換のペアを決定するステップを含み、および、
前記主変換処理を実行した後に、さらに、前記決定されたフレーム内予測モードおよび前記変換インデックスに基づいて決定された置換処理を実行することに基づいて、前記残差画像を再構築することを実行する、
ことを特徴とする請求項１に記載の方法。
【請求項１１】
前記１つ以上の主変換を決定するステップは、前記フレーム内予測モードが垂直モードおよび水平モードのうちの一つに対応する場合、前記フレーム内予測モードと、前記符号化されたビデオビットストリームから抽出された変換インデックスとに基づいて、水平変換および垂直変換のペアを決定するステップ、を含む、
ことを特徴とする請求項１に記載の方法。
【請求項１２】
前記１つ以上の主変換を決定するステップは、前記符号化されたビデオビットストリームが水平変換および垂直変換のうちの一つのみに使用される変換インデックスを含む場合、
前記符号化されたビデオビットストリームから抽出された変換インデックスに基づいて、前記水平変換および垂直変換のうちの一つを決定し、かつ、
前記水平変換および垂直変換のうちのもう一つをデフォルト変換に決定するステップ、を含む、
ことを特徴とする請求項１に記載の方法。
【請求項１３】
処理回路を含む装置であって、前記処理回路は、
現在ブロックの予測画像を生成するためのフレーム内予測モードを決定し、
符号化されたビデオビットストリームから抽出されたシグナリング情報に基づいて、１つ以上の主変換を決定し、
前記決定されたフレーム内予測モードと、前記決定された１つ以上の主変換とに基づいて、二次変換を決定し、
前記符号化されたビデオビットストリームから抽出された入力ブロックの１つ以上の係数と、前記決定された１つ以上の主変換と、前記決定された二次変換とに基づいて、現在ブロックの残差画像を再構築し、
前記現在ブロックの予測画像および残差画像に基づいて、前記現在ブロックの画像を再構築するように構成される、
ことを特徴とする装置。
【請求項１４】
前記処理回路は、
前記１つ以上の主変換に基づいて、前記二次変換を使用して二次変換処理を実行するかどうかを決定し、
前記二次変換処理を実行すると決定された場合、前記二次変換を決定し、前記決定された二次変換に基づいて現在ブロックの残差画像を再構築するように構成される、
ことを特徴とする請求項１３に記載の装置。
【請求項１５】
前記処理回路は、
水平変換および垂直変換の複数のペアのうちの１つを決定し、
複数の二次変換のうちの１つを識別し、ここで、前記識別される二次変換が、前記フレーム内予測モードと、前記水平変換および垂直変換の複数のペアのうちの１つとの組み合わせに関連付けられるように構成され、
ここで、前記複数の二次変換のそれぞれが、前記水平変換および垂直変換の複数のペアのうちの異なるペアに関連付けられる、
ことを特徴とする請求項１３に記載の装置。
【請求項１６】
前記処理回路は、
前記符号化されたビデオビットストリームから抽出された第１フラグが第１値を有する場合、水平変換および垂直変換のペアがＤＣＴ−ＩＩ（離散コサイン変換−タイプＩＩ）変換であると決定するように構成される、
ことを特徴とする請求項１３に記載の装置。
【請求項１７】
前記処理回路は、
前記符号化されたビデオビットストリームから抽出された第１フラグが第２値を有する場合、前記符号化されたビデオビットストリームから抽出された変換インデックスに基づいて、前記水平変換および垂直変換のペアを決定し、
前記符号化されたビデオビットストリームから抽出された第１フラグが前記第２値を有する場合、前記フレーム内予測モードと、前記水平変換および垂直変換のペアとに基づいて、前記二次変換を決定するように構成される、
ことを特徴とする請求項１６に記載の装置。
【請求項１８】
前記符号化されたビデオビットストリームから抽出された第１フラグが第２値を有し、かつ
前記入力ブロックの１つ以上の係数が、複数個未満の係数のうちの１つに対応し、また、高周波数領域に非ゼロの係数を有しなく、ここで、前記複数個の係数の量子化レベルが閾値より小さいである場合、
前記水平変換がデフォルトの水平変換であり、前記垂直変換がデフォルトの垂直変換であり、および、
前記処理回路は、前記符号化されたビデオビットストリームから抽出された第１フラグが第２値を有する場合、前記フレーム内予測モードと、前記デフォルトの水平変換と、前記デフォルトの垂直変換とに基づいて、前記二次変換を決定するように構成される、
ことを特徴とする請求項１６に記載の装置。
【請求項１９】
前記現在ブロックが色度ブロックであり、
前記処理回路は、前記決定されたフレーム内予測モードと、前記符号化されたビデオビットストリームから抽出されたシグナリング情報に基づいて１つ以上の同一の場所に配置された輝度ブロックに対して決定された１つ以上の主変換と、前記１つ以上の同一の場所に配置された輝度ブロックに対して決定された１つ以上の二次変換とに基づいて、前記１つ以上の主変換を決定するように構成される、
ことを特徴とする請求項１３に記載の装置。
【請求項２０】
命令を記憶している不揮発性コンピュータ読み取り可能な記憶媒体であって、前記命令は、ビデオ復号化のためのコンピュータによって実行される場合、
現在ブロックの予測画像を生成するためのフレーム内予測モードを決定することと、
符号化されたビデオビットストリームから抽出されたシグナリング情報に基づいて、１つ以上の主変換を決定することと、
前記決定されたフレーム内予測モードと、前記決定された１つ以上の主変換とに基づいて、二次変換を決定することと、
前記符号化されたビデオビットストリームから抽出された入力ブロックの１つ以上の係数と、前記決定された１つ以上の主変換と、前記決定された二次変換とに基づいて、現在ブロックの残差画像を再構築することと、
前記現在ブロックの予測画像および残差画像に基づいて、前記現在ブロックの画像を再構築することと、を前記コンピュータに実行させる、
ことを特徴とする記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
「関連出願の相互参照」
本開示は、２０１８年３月７日に提出された米国仮出願第６２／６３９，９９８号「主変換および二次変換に関する統一化および簡略化」、および、２０１８年１１月２１日に提出された米国出願第１６／１９８，４６２号「ビデオ符号化／復号化のための方法および装置」に対する優先権の利益を主張し、それらの全ての内容が参照により本明細書に組み込まれる。
［技術分野］
本開示は、概してビデオ符号化／復号化に関連する実施形態を説明する。
【背景技術】
【０００２】
本明細書で提供される背景技術の説明は、本開示のコンテキストを全体的に示すことを目的とする。この背景技術部分及び本明細書の各態様において説明された、現在署名されている発明者の作業の程度は、本開示の提出時に先行技術として示されておらず、また、本開示の先行技術として認められていることを明示または暗示していない。
【０００３】
ビデオ符号化と復号化は、動き補償を有するフレーム間画像予測を用いて実行されることができる。圧縮されていないデジタルビデオは、一連の画像を含むことができ、各画像が、例えば１９２０×１０８０の輝度サンプルおよび関連付けられた色度サンプルの空間的次元を有する。この一連の画像は、例えば１秒間に６０枚の画像または６０ヘルツ（Ｈｚ）の固定または可変の画像レート（非公式にはフレームレートとして知られている）を有することができる。圧縮されていないビデオには、非常に高いビットレート要件がある。例えば、サンプルあたり８ビットの１０８０ｐ６０  ４：２：０のビデオ（６０Ｈｚのフレームレートでの１９２０ｘ１０８０の輝度サンプル解像度）は、１．５Ｇｂｉｔ／ｓの帯域幅に近い必要がある。このようなビデオは、一時間で６００ＧＢ以上の記憶空間を必要とする。
【０００４】
ビデオ符号化および復号化の１つの目的は、入力ビデオ信号における冗長情報を圧縮により低減することである。圧縮は、上記の帯域幅または記憶空間に対する要件を低減することを助けることができ、いくつかの場合では、二桁以上程度を低減することができる。無損失性および損失性の圧縮、ならびに両方の組み合わせは、いずれも使用されることができる。無損失性の圧縮とは、元の信号の正確なコピーを圧縮された元の信号から再構築することができる、という技術を指す。損失性の圧縮が使用される場合、再構築された信号は、元の信号と同一ではない可能性があるが、元の信号と再構築された信号との間の歪みが十分に小さいので、再構築された信号が予想されるアプリケーションに利用されることができる。ビデオの場合、損失性の圧縮は広く使われている。許容される歪みの量は、アプリケーションに依存し、例えば、あるストリーミングアプリケーションを消費するユーザは、テレビ貢献アプリケーションのユーザより、高い歪みを許容することができる。実現可能な圧縮比は、より高い許可／許容可能な歪みがより高い圧縮比を生成することができる、ということを反映している。
【０００５】
ビデオエンコーダおよびデコーダは、例えば動き補償、変換、量子化およびエントロピー符号化を含む、いくつかの広範なカテゴリからの技術を利用することができる。
【０００６】
ビデオ符号化／復号化技術は、フレーム内符号化として知られている技術を含むことができる。フレーム内符号化では、サンプル値は、以前に再構築された参照画像からのサンプルまたは他のデータを参照せずに表現される。いくつかのビデオコーデックでは、画像は空間的にサンプルブロックに細分される。すべてのサンプルブロックがフレーム内モードで符号化された場合、その画像はフレーム内画像とすることができる。独立したデコーダリフレッシュ画像などのようなフレーム内画像およびそれらの派生は、デコーダの状態をリセットするために使用されることができ、したがって、符号化されたビデオビットストリームおよびビデオセッション中の１番目の画像または静止画像として使用されることができる。フレーム内ブロックのサンプルは変換に用いられ、また、変換係数はエントロピー符号化の前に量子化されることができる。フレーム内予測は、プリ変換ドメインにおけるサンプル値を最小化する技術であることができる。いくつかの場合では、変換後のＤＣ値が小さくなり、ＡＣ係数が小さくなるほど、エントロピー符号化後のブロックを表すために、与えられた量子化ステップサイズで必要なビットが少なくなる。
【０００７】
例えばＭＰＥＧ―２符号化技術から知られているような従来のフレーム内符号化は、フレーム内予測を使用していない。しかしながら、いくつかのより新しいビデオ圧縮技術は、例えば、周囲のサンプルデータおよび／またはメタデータからデータブロックを取得しようとする技術を含み、周囲のサンプルデータおよび／またはメタデータは、空間的に隣接するブロックの符号化／復号化期間で、かつ、復号化順の前に得られたものである。このような技術は、以降「フレーム内予測」技術と呼ばれる。少なくともいくつかの場合では、フレーム内予測は、参照画像からの参照データを使用せずに、再構築中の現在画像からの参照データのみを使用する、ということに留意されたい。
【０００８】
多くの異なる形態のフレーム内予測が存在することができる。与えられたビデオ符号化技術では、このような技術のうちの２つ以上を使用することができる場合、使用中の技術は、フレーム内予測モードで符号化を行うことができる。いくつかの場合では、モードは、サブモードおよび／またはパラメータを有してもよいし、これらのモードが、単独で符号化されてもよく、またはモードコードワードに含まれてもよい。どのコードワードを与えられたモード／サブモード／パラメータの組み合わせに使用するかは、フレーム内予測によって符号化効率利得に影響を及ぼすので、コードワードをビットストリームに変換するために使用されるエントロピー符号化技術には、このような場合もある。
【０００９】
フレーム内予測の特定のモードは、Ｈ．２６４で導入され、Ｈ．２６５において改善され、また、共同探索モデル（ＪＥＭ：ｊｏｉｎｔ  ｅｘｐｌｏｒａｔｉｏｎ  ｍｏｄｅｌ）、汎用ビデオ符号化（ＶＶＣ：ｖｅｒｓａｔｉｌｅ  ｖｉｄｅｏ  ｃｏｄｉｎｇ）、ベンチマークセット（ＢＭＳ：ｂｅｎｃｈｍａｒｋ  ｓｅｔ）などの、更新しい符号化／復号化技術においてさらに改善される。予測ブロックは、既に利用可能なサンプルに属する、隣接するサンプル値を使用して形成されることができる。隣接するサンプルのサンプル値は、ある方向に従って予測ブロックにコピーされる。使用中の方向への参照は、ビットストリームに符号化されてもよく、または、その自身が予測されてもよい。
【００１０】
図１を参照して、右下には、Ｈ．２６５の３５個の予測可能な方向から知られている９つの予測方向のサブセットが描かれている。矢印が収束する点（１０１）は、予測されているサンプルを表す。矢印は、サンプルが予測されている方向を表す。例えば、矢印（１０２）は、サンプル（１０１）が水平から４５度の角度になる右上の１つ以上のサンプルから予測されることを示す。同様に、矢印（１０３）は、サンプル（１０１）が水平から２２．５度の角度になるサンプル（１０１）の左下の１つ以上のサンプルから予測されることを示す。
【００１１】
引き続き図１を参照すると、左上には４×４のサンプルの正方形ブロック（１０４）が描かれている（太い破線で示される）。正方形ブロック（１０４）は、１６個のサンプルを含み、各サンプルが、「Ｓ」と、Ｙ次元（例えば、行索引）での位置と、Ｘ次元（例えば、列索引）での位置とでラベル付けられている。例えば、サンプルＳ２１は、Ｙ次元での２番目のサンプル（上から）とＸ次元での１番目のサンプル（左から）である。同様に、サンプルＳ４４は、Ｙ次元およびＸ次元の両方でのブロック（１０４）の４番目のサンプルである。このブロックが４×４サイズのサンプルであるため、Ｓ４４は右下にある。さらに、同様の番号付けスキームに従う参照サンプルも示されている。参照サンプルは、「Ｒ」と、ブロック（１０４）に対するＹ位置（例えば、行索引）およびＸ位置（例えば、列索引）とでラベル付けられている。Ｈ．２６４とＨ．２６５の両方では、予測サンプルは再構築中のブロックに隣接しているので、負の値を使用する必要はない。
【００１２】
フレーム内画像予測は、シグナルで通知された予測方向に応じて、隣接するサンプルから参照サンプル値をコピーすることによって機能することができる。例えば、符号化されたビデオビットストリームには、シグナリングが含まれていると仮定すると、このシグナリングは、このブロックに対して、矢印（１０２）と一致する予測方向を示し、すなわち、サンプルが水平と４５度の角度になる右上の１つ以上の予測サンプルから予測される。この場合、サンプルＳ４１、Ｓ３２、Ｓ２３、Ｓ１４は、参照サンプルＲ０５から予測される。そして、サンプルＳ４４は、参照サンプルＲ０８から予測される。
【００１３】
いくつかの場合では、参照サンプルを計算するために、特に、方向が４５度で均等に割り切れない場合、例えば、補間を通じて複数の参照サンプルの値を組み合わせることができる。
【００１４】
ビデオ符号化技術の発展につれて、可能な方向の数が既に増加された。Ｈ．２６４（２００３年）では、９つの異なる方向を表すことができた。これは、Ｈ．２６５（２０１３年）で３３個に増加し、ＪＥＭ／ＶＣ／ＢＭＳは、開示時点で最多６５個の方向をサポートすることができる。最も可能な方向を識別するための実験が行われ、そして、エントロピー符号化におけるいくつかの技術は、少数のビットでそれらの可能性がある方向を表すために使用され、可能性が低い方向に対して、いくつかの代償を受ける。さらに、方向の自体は、隣接する既に復号化されたブロックで使用される隣接する方向から予測されることができる場合がある。
【００１５】
図２は、時間の経過とともに増加する予測方向の数を説明するために、ＪＥＭによる６５個のフレーム内予測方向を描く概略図２０１である。
【００１６】
フレーム内予測方向から符号化されたビデオビットストリームにおける方向を表すビットへのマッピングは、ビデオ符号化技術によって異なることができ、また、例えば、予測方向への簡単な直接マッピングから、フレーム内予測モード、コードワード、最も可能性が高いモードを含む複雑な適応スキーム、および類似な技術まで、様々なものがある。しかしながら、すべての場合では、ビデオコンテンツにおいて、他の特定の方向よりも統計的に発生する可能性が低い特定の方向が存在する可能性がある。ビデオ圧縮の目的は冗長性の削減であるため、それらの可能性が低い方向は、適切に機能するビデオ符号化技術では、可能性が高い方向よりも多くのビットで表される。
【発明の概要】
【００１７】
本開示の各態様は、ビデオ符号化および復号化のための方法および装置を提供する。いくつかの例では、装置は処理回路を含む。当該処理回路は、現在ブロックの予測画像を生成するためのフレーム内予測モードを決定し、符号化されたビデオビットストリームから抽出されたシグナリング情報に基づいて１つ以上の主変換を決定し、決定されたフレーム内予測モードおよび決定された１つ以上の主変換に基づいて二次変換を決定する。当該処理回路はまた、符号化されたビデオビットストリームから抽出された入力ブロックの１つ以上の係数、決定された１つ以上の主変換および決定された二次変換に基づいて、現在ブロックの残差画像を再構築する。また、当該処理回路は、現在ブロックの予測画像および残差画像に基づいて、現在ブロックの画像を再構築する。
【００１８】
いくつかの例では、当該処理回路は、１つ以上の主変換に基づいて、二次変換を使用して二次変換処理を実行するかどうかを決定する。いくつかの例では、二次変換処理を実行すると決定された場合、当該処理回路は、前記二次変換を決定し、決定された二次変換に基づいて現在ブロックの残差画像を再構築する。
【００１９】
いくつかの例では、１つ以上の主変換を決定する場合、当該処理回路は、水平変換および垂直変換の複数のペアのうちの１つを決定する。いくつかの例では、当該処理回路は、複数の二次変換のうちの１つを識別し、ここで、前記識別される二次変換が、フレーム内予測モードと、水平変換および垂直変換の複数のペアのうちの１つとの組み合わせに関連つけられ、また、複数の二次変換のそれぞれが、水平変換および垂直変換の複数のペアのうちの異なるペアに関連付けられる。
【００２０】
いくつかの例では、符号化されたビデオビットストリームから抽出された第１フラグが第１値を有する場合、当該処理回路は、水平変換および垂直変換のペアがＤＣＴ−ＩＩ（離散コサイン変換−タイプＩＩ）変換であると決定する。少なくとも１つの例では、符号化されたビデオビットストリームから抽出された第１フラグが第１値を有する場合、当該処理回路は、二次変換を使用するた二次変換処理を実行しないと決定する。
【００２１】
少なくとも別の例では、符号化されたビデオビットストリームから抽出された第１フラグが第２値を有する場合、当該処理回路は、符号化されたビデオビットストリームから抽出された変換インデックスに基づいて、水平変換および垂直変換のペアを決定し、符号化されたビデオビットストリームから抽出された第１フラグが第２値を有する場合、フレーム内予測モードと、水平変換および垂直変換のペアとに基づいて、前記二次変換を決定することを実行する。
【００２２】
少なくとも別の例では、符号化されたビデオビットストリームから抽出された第１フラグが第２値を有し、かつ、入力ブロックの１つ以上の係数が、複数個未満の係数のうちの１つに対応し、また高周波数領域に非ゼロの係数を有しなく、ここで、前記複数個の係数の量子化レベルが閾値より小さいである場合、当該水平変換がデフォルトの水平変換であり、当該垂直変換がデフォルトの垂直変換である。符号化されたビデオビットストリームから抽出された第１フラグが第２値を有する場合、当該処理回路は、フレーム内予測モードと、デフォルトの水平変換と、デフォルトの垂直変換とに基づいて、二次変換を決定する。
【００２３】
少なくとも１つの例では、現在ブロックが色度ブロックであり、かつ、決定されたフレーム内予測モードと、符号化されたビデオビットストリームから抽出されたシグナリング情報に基づいて１つ以上の同一の場所に配置された輝度ブロックに対して決定された１つ以上の主変換と、１つ以上の同一の場所に配置された輝度ブロックに対して決定された１つ以上の二次変換とに基づいて、前記１つ以上の主変換を決定することを実行する。
【００２４】
少なくとも１つの例では、現在ブロックが直接モードにより予測された色度成分を有する場合のみ、１つ以上の同一の場所に配置された輝度ブロックに対して決定された１つ以上の主変換と、１つ以上の同一の場所に配置された輝度ブロックに対して決定された１つ以上の二次変換とに基づいて、前記１つ以上の主変換を決定することを実行する。
【００２５】
いくつかの例では、前記１つ以上の主変換を決定するステップは、符号化されたビデオビットストリームから抽出された変換インデックスに基づいて、ＤＣＴ−ＩＩ（離散コサイン変換−タイプＩＩ）変換およびＤＳＴ−ＶＩＩ（離散サイン変換−タイプＶＩＩ）変換を含む候補変換のみから、水平変換および垂直変換のペアを決定するステップを含み、および、主変換処理を実行した後、さらに、決定されたフレーム内予測モードおよび変換インデックスに基づいて決定された置換処理を実行することに基づいて、残差画像を再構築することを実行する。
【００２６】
いくつかの例では、前記１つ以上の主変換を決定するステップは、フレーム内予測モードが垂直モードおよび水平モードのうちの一つに対応する場合、フレーム内予測モードと、符号化されたビデオビットストリームから抽出された変換インデックスとに基づいて、水平変換および垂直変換のペアを決定するステップを含む。
【００２７】
いくつかの例では、前記１つ以上の主変換を決定するステップは、符号化されたビデオビットストリームが水平変換および垂直変換のうちの一つのみに使用される変換インデックスを含む場合、符号化されたビデオビットストリームから抽出された変換インデックスに基づいて、水平変換および垂直変換のうちの一つを決定し、水平変換および垂直変換のうちのもう一つをデフォルト変換に決定するステップを含む。
【００２８】
本開示の各態様はまた、命令を記憶している不揮発性コンピュータ読み取り可能な記憶媒体を提供し、前記命令がビデオ復号化のためのコンピュータによって実行される場合、前記ビデオ復号化のための方法を前記コンピュータに実行させる。
【図面の簡単な説明】
【００２９】
開示された主題の更なる特徴、性質、および様々な利点は、以下の詳細な説明および添付図面からより明らかになり、ここで、
【図１】Ｈ．２６５によるフレーム内予測モードのサブセットの概略図である。
【図２】ＪＥＭによるフレーム内予測方向の概略図である。
【図３】一実施形態による通信システム（３００）の簡略化されたブロック図の概略図である。
【図４】一実施形態による通信システム（４００）の簡略化されたブロック図の概略図である。
【図５】一実施形態によるデコーダ（５１０）の簡略化されたブロック図の概略図である。
【図６】一実施形態によるエンコーダの簡略化されたブロック図の概略図である
【図７】別の実施形態によるエンコーダのブロック図を示す図である。
【図８】別の実施形態によるデコーダのブロック図を示す図である。
【図９】一実施形態によるデコーダ（９００）におけるエントロピーデコーダ（９１０）および残差デコーダ（９２０）のブロック図を示す図である。
【図１０Ａ】一実施形態によるギブンズ回転（Ｇｉｖｅｎｓ  ｒｏｔａｔｉｏｎｓ）のグラフィック表現を示す図である。
【図１０Ｂ】一実施形態によるギブンズ回転の組み合わせに基づくハイパーキューブギブンズ変換（Ｈｙｐｅｒｃｕｂｅ−Ｇｉｖｅｎｓ  Ｔｒａｎｓｆｏｒｍ）のグラフィック表現を示す図である。
【図１１】一実施形態によるギブンズ回転の組み合わせに基づく別のハイパーキューブギブンズ変換のグラフィック表現を示す図である。
【図１２】一実施形態によるエンコーダ（１２００）における残差エンコーダ（１２１０）およびエントロピーエンコーダ（１２２０）のブロック図を示す図である。
【図１３】本開示の一実施形態による復号化プロセス（１３００）を概説するフローチャートを示す図である。
【図１４】本開示の一実施形態による符号化プロセス（１４００）を概説するフローチャートを示す図である。
【図１５】一実施形態によるコンピュータシステムの概略図である。ｓ
【発明を実施するための形態】
【００３０】
図３は、本開示の実施形態による通信システム（３００）の簡略化されたブロック図である。通信システム（３００）は、例えばネットワーク（３５０）を介して相互に通信することができる複数の端末デバイスを含む。例えば、通信システム（３００）は、ネットワーク（３５０）を介して相互接続された第１ペアの端末デバイス（３１０）と（３２０）を含む。図３の例では、第１ペアの端末デバイス（３１０）と（３２０）は、データの単方向伝送を行う。例えば、端末デバイス（３１０）は、ネットワーク（３５０）を介して他の端末デバイス（３２０）に伝送するために、ビデオデータ（例えば、端末デバイス（３１０）によって捕捉されたビデオ画像ストリーム）を符号化することができる。符号化されたビデオデータは、１つ以上の符号化されたビデオビットストリームの形で伝送されることができる。端末デバイス（３２０）は、ネットワーク（３５０）から、符号化されたビデオデータを受信し、符号化されたビデオデータを復号化してビデオ画像を復元し、復元されたビデオデータに基づいてビデオ画像を表示することができる。単方向データ伝送は、メディアサービングアプリケーションなどでは一般的である。
【００３１】
別の例では、通信システム（３００）は、例えばビデオ会議中に発生する可能性がある、符号化されたビデオデータの双方向伝送を実行する第２ペアの端末デバイス（３３０）と（３４０）を含む。データの双方向伝送の場合、一例では、端末デバイス（３３０）と（３４０）の各端末デバイスは、ネットワーク（３５０）を介して端末デバイス（３３０）と（３４０）のうちの他方の端末デバイスに送信するために、ビデオデータ（例えば、端末デバイスによって捕捉されたビデオ画像ストリーム）を符号化することができる。端末デバイス（３３０）と（３４０）の各端末デバイスは、端末デバイス（３３０）と（３４０）のうちの他方の端末デバイスによって送信された、符号化されたビデオデータを受信することもでき、また、符号化されたビデオデータを復号化してビデオ画像を復元し、復元されたビデオデータに基づいて、アクセス可能な表示デバイスにビデオ画像を表示することもできる。
【００３２】
図３の例では、端末デバイス（３１０）、（３２０）、（３３０）および（３４０）は、サーバ、パーソナルコンピュータおよびスマートフォンとして示されてもよいが、本開示の原理は、これに限定されていない。本開示の実施形態は、ラップトップコンピュータ、タブレットコンピュータ、メディアプレイヤーおよび／または専用のビデオ会議機器を有するアプリケーションを見つける。ネットワーク（３５０）は、端末デバイス（３１０）、（３２０）、（３３０）および（３４０）間で、符号化されたビデオデータを伝送する任意の数のネットワークを表し、有線（ワイヤード）および／または無線の通信ネットワークを含む。通信ネットワーク（３５０）は、回路交換および／またはパケット交換のチャネルでデータを交換することができる。代表的なネットワークは、電気通信ネットワーク、ローカルエリアネットワーク、ワイドエリアネットワークおよび／またはインターネットを含む。本開示の目的のために、ネットワーク（３５０）のアーキテクチャおよびトポロジは、以下に本明細書で説明されない限り、本開示の動作にとって重要ではない場合がある。
【００３３】
図４は、開示された主題に対するアプリケーションの例として、ストリーミング環境におけるビデオエンコーダおよびビデオデコーダの配置を示す。開示された主題は、例えば、ＣＤ、ＤＶＤ、メモリスティックなどを含むデジタルメディアへの圧縮されたビデオの記憶、ビデオ会議、デジタルＴＶなどを含む、他のビデオサポートアプリケーションにも同等に適用可能である。
【００３４】
ストリーミングシステムは、捕捉サブシステム（４１３）を含むことができ、この捕捉サブシステムが、例えばデジタルカメラなどのビデオソース（４０１）を含むことができ、例えば圧縮されていないビデオ画像ストリーム（４０２）を作成する。一例では、ビデオ画像ストリーム（４０２）は、デジタルカメラによって撮影されたサンプルを含む。符号化されたビデオデータ（４０４）（または符号化されたビデオビットストリーム）と比較する際に、高いデータボリュームを強調するために太い線で描かれたビデオ画像ストリーム（４０２）は、ビデオソース（４０１）に結合されたビデオエンコーダ（４０３）を含む電子デバイス（４２０）によって処理されることができる。ビデオエンコーダ（４０３）は、以下でより詳細に説明するように、開示された主題の様々な態様を可能にするかまたは実現するために、ハードウェア、ソフトウェア、またはそれらの組み合わせを含むことができる。ビデオ画像ストリーム（４０２）と比較する際に、より低いデータボリュームを強調するために細い線で描かれた、符号化されたビデオデータ（４０４）（または符号化されたビデオビットストリーム（４０４））は、将来の使用のためにストリーミングサーバ（４０５）に記憶されることができる。図４のクライアントサブシステム（４０６）および（４０８）などのような１つ以上のストリーミングクライアントサブシステムは、符号化されたビデオデータ（４０４）のコピー（４０７）および（４０９）を検索するために、ストリーミングサーバー（４０５）にアクセスすることができる。クライアントサブシステム（４０６）は、例えば、電子デバイス（４３０）にビデオデコーダ（４１０）を含むことができる。ビデオデコーダ（４１０）は、伝入される、符号化されたビデオデータのコピー（４０７）を復号化して、伝出される、ビデオ画像ストリーム（４１１）を生成し、このビデオ画像ストリーム（４１１）が、ディスプレイ（４１２）（例えば、ディスプレイスクリーン）または他のレンダリングデバイス（図示せず）に表示されることができる。一部のストリーミングシステムでは、符号化されたビデオデータ（４０４）、（４０７）および（４０９）（例えば、ビデオビットストリーム）は、特定のビデオ符号化／圧縮規格に従って符号化されることができる。これらの規格の例は、ＩＴＵ−Ｔ推薦Ｈ．２６５を含む。一例では、開発中のビデオ符号化規格は、非公式には次世代ビデオ符号化またはＶＶＣ（Ｖｅｒｓａｔｉｌｅ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ）と呼ばれる。開示された主題は、ＶＶＣのコンテキストで使用されることができる。
【００３５】
なお、電子デバイス（４２０）および（４３０）は、他のコンポーネント（図示せず）を含むことができる。例えば、電子デバイス（４２０）は、ビデオデコーダ（図示せず）を含むことができ、電子デバイス（４３０）は、同様にビデオエンコーダ（図示せず）を含むことができる。
【００３６】
図５は、本開示の実施形態によるビデオデコーダ（５１０）のブロック図を示す。ビデオデコーダ（５１０）は、電子デバイス（５３０）に含まれることができる。電子デバイス（５３０）は、受信機（５３１）（例えば、受信回路）を含むことができる。ビデオデコーダ（５１０）は、図４の例におけるビデオデコーダ（４１０）の代わりに使用することができる。
【００３７】
受信機（５３１）は、ビデオデコーダ（５１０）によって復号化される１つ以上の符号化されたビデオシーケンスを受信することができ、同じまたは別の実施形態では、一度に1つの符号化されたビデオシーケンスを受信することができ、ここで、各符号化されたビデオシーケンスの復号化が、他の符号化されたビデオシーケンスから独立されている。符号化されたビデオシーケンスは、チャネル（５０１）から受信されることができ、このチャネルが、符号化されたビデオデータを記憶する記憶デバイスへのハードウェア／ソフトウェアのリンクであってもよい。受信機（５３１）は、それぞれの使用エンティティ（図示せず）に伝送されることができる、例えば符号化されたオーディオデータおよび／または補助データストリームなどのような他のデータとともに、符号化されたビデオデータを受信することができる。受信機（５３１）は、符号化されたビデオシーケンスを他のデータから分離することができる。ネットワークジッタを防止するために、バッファメモリ（５１５）は、受信機（５３１）とエントロピーデコーダ／解析器（Ｐａｒｓｅｒ）（５２０）（以降「解析器（５２０）」）との間に結合されることができる。いくつかのアプリケーションでは、バッファメモリ（５１５）は、ビデオデコーダ（５１０）の一部である。他の場合では、バッファメモリ（５１５）は、ビデオデコーダ（５１０）の外部に配置されてもよい（図示せず）。さらに他の場合では、例えばネットワークジッタを防止するために、ビデオデコーダ（５１０）の外部にバッファメモリ（図示せず）があり得て、さらに、例えば再生タイミングを処理するために、ビデオデコーダ（５１０）の内部に別のバッファメモリ（５１５）があり得る。受信機（５３１）が十分な帯域幅および制御可能性を有するストア／フォワードデバイスからまたは等時性同期ネットワーク（ｉｓｏｓｙｎｃｈｒｏｎｏｕｓ  ｎｅｔｗｏｒｋ）からデータを受信する場合、バッファメモリ（５１５）は、必要ではないかまたは小さくてもよい。インターネットなどのようなベストエフォートパケットネットワークで使用するために、バッファメモリ（５１５）は、必要になる場合があり、比較的大きくすることができ、有利には適応性のサイズにすることができ、オペレーティングシステムまたはビデオデコーダ（５１０）の外部の類似要素（図示せず）に少なくとも部分的に実装されることができる。
【００３８】
ビデオデコーダ（５１０）は、符号化されたビデオシーケンスからシンボル（５２１）を再構築するための解析器（５２０）を含むことができる。これらのシンボルのカテゴリには、ビデオデコーダ（５１０）の動作を管理するために使用される情報と、電子デバイス（５３０）の不可欠な部分ではないが、図５に示すように、電子デバイス（５３０）に結合されることができるレンダリングデバイス（５１２）（例えば、ディスプレイスクリーン）などのようなレンダリングデバイスを制御するための潜在的情報とが含まれる。レンダリングデバイスの制御情報は、補足強化情報（ＳＥＩメッセージ：Ｓｕｐｐｌｅｍｅｎｔａｒｙ  Ｅｎｈａｎｃｅｍｅｎｔ  Ｉｎｆｏｒｍａｔｉｏｎ）またはビジュアルユーザビリティ情報（ＶＵＩ）パラメータセットフラグメント（図示せず）の形であってもよい。解析器（５２０）は、受信された、符号化されたビデオシーケンスに対して解析／エントロピー復号化を行うことができる。符号化されたビデオシーケンスの符号化は、ビデオ符号化技術または規格に従うことができ、可変長符号化、ハフマン符号化、コンテキスト感度を有するかまたは有しないかの算術符号化などを含む、様々な原理に従うことができる。解析器（５２０）は、グループに対応する少なくとも１つのパラメータに基づいて、符号化されたビデオシーケンスから、ビデオデコーダにおける画素のサブグループのうちの少なくとも１つのサブグループパラメータのセットを抽出することができる。サブグループは、画像のグループ（ＧＯＰ：Ｇｒｏｕｐ  ｏｆ  Ｐｉｃｔｕｒｅｓ）、画像、タイル、スライス、マクロブロック、符号化ユニット（ＣＵ：Ｃｏｄｉｎｇ  Ｕｎｉｔ）、ブロック、変換ユニット（ＴＵ：Ｔｒａｎｓ  ｆｏｒｍ  Ｕｎｉｔ）、予測ユニット（ＰＵ：Ｐｒｅｃｔｉｏｎ  Ｕｎｉｔ）などを含むことができる。解析器（５２０）は、変換係数、量子化器パラメータ値、動きベクトルなどのような情報を符号化されたビデオシーケンスから抽出することもできる。
【００３９】
解析器（５２０）は、シンボル（５２１）を作成するために、バッファメモリ（５１５）から受信されたビデオシーケンスに対してエントロピー復号化／解析動作を実行することができる。
【００４０】
シンボル（５２１）の再構築は、符号化されたビデオ画像またはその一部（例えば、フレーム間画像およびフレーム内画像、フレーム間ブロックおよびフレーム内ブロック）のタイプおよび他の要因に応じて、複数の異なるユニットに関連することができる。どのようなユニットに関連するか、およびどのように関連するかは、解析器（５２０）によって、符号化されたビデオシーケンスから解析されたサブグループ制御情報によって制御されることができる。解析器（５２０）と以下の複数のユニットとの間のそのようなサブグループ制御情報のフローは、明瞭にするために示されていない。
【００４１】
既に言及された機能ブロックに加えて、ビデオデコーダ（５１０）は、以下に説明するように、いくつかの機能ユニットに概念的に細分されることができる。商業的制約で動作する実際の実施形態では、これらのユニットの多くは、互いに密接に相互作用し、少なくとも部分的には互いに統合されることができる。しかしながら、開示された主題を説明する目的のために、以下の機能ユニットへの概念的な細分は適切である。
【００４２】
第１ユニットは、スケーラ／逆変換ユニット（５５１）である。スケーラ／逆変換ユニット（５５１）は、量子化された変換係数と、どのような変換を使用するかということ、ブロックサイズ、量子化因子、量子化スケーリング行列などを含む制御情報とを、解析器（５２０）からシンボル（５２１）として受信する。スケーラ／逆変換ユニット（５５１）は、アグリゲータ（５５５）に入力できるサンプル値（残差画像とも呼ばれる）を含むブロックを出力することができる。
【００４３】
いくつかの場合では、スケーラ／逆変換ユニット（５５１）の出力サンプルは、フレーム内符号化ブロックに属することができ、即ち、以前に再構築された画像からの予測情報を使用していないが、現在画像の以前に再構築された部分からの予測情報を使用することができるブロックである。このような予測情報は、フレーム内画像予測ユニット（５５２）によって提供されてもよい。いくつかの場合では、フレーム内画像予測ユニット（５５２）は、現在画像バッファ（５５８）から抽出された、周囲の既に再構築された情報を使用して、再構築中のブロック（フレーム内予測画像とも呼ばれる）と同じサイズおよび形状のブロックを生成する。現在画像バッファ（５５８）は、例えば、部分的に再構築された現在画像および／または完全に再構築された現在画像をバッファリングする。アグリゲータ（５５５）は、いくつかの場合では、サンプルごとに基づいて、フレーム内予測ユニット（５５２）によって生成された予測情報を、スケーラ／逆変換ユニット（５５１）によって提供される出力サンプル情報に追加する。
【００４４】
他の場合では、スケーラ／逆変換ユニット（５５１）の出力サンプルは、フレーム間符号化されたブロックおよび潜在的に動き補償されたブロックに属することができる。このような場合、動き補償予測ユニット（５５３）は、参照画像メモリ（５５７）にアクセスして、予測に用いられるサンプルを抽出することができる。抽出されたサンプルが、ブロックに関連するシンボル（５２１）に基づいて動き補償された後、これらのサンプル（フレーム間予測画像とも呼ばれる）は、出力サンプル情報を生成するために、アグリゲータ（５５５）によってスケーラ／逆変換ユニット（５５１）の出力（この場合、残差サンプルまたは残差信号と呼ばれる）に追加されることができる。動き補償予測ユニット（５５３）が予測サンプルを抽出するときの参照画像メモリ（５５７）内のアドレスは、例えば、Ｘ、Ｙ、および参照画像成分を有することができるシンボル（５２１）の形で、動き補償予測ユニット（５５３）に利用可能な動きベクトルによって制御されることができる。動き補償は、サブサンプルの正確な動きベクトルが使用中であるときに、参照画像メモリ（５５７）から抽出されたサンプル値の補間、運動ベクトル予測メカニズムなどを含むこともできる。
【００４５】
アグリゲータ（５５５）の出力サンプルは、ループフィルタユニット（５５６）において様々なループフィルタリング技術によって採用されてもよい。ビデオ圧縮技術は、符号化されたビデオシーケンス（符号化されたビデオビットストリームとも呼ばれる）に含まれ、解析器（５２０）からのシンボル（５２１）としてループフィルタユニット（５５６）に利用可能になるパラメータによって制御されるループ内フィルタ技術を含むことができ、また、符号化された画像または符号化されたビデオシーケンスの前の部分（復号化順序で）を復号化する期間で得られたメタ情報に応答し、および、以前に再構築されてループフィルタリングされたサンプル値に応答することもできる。
【００４６】
ループフィルタユニット（５５６）の出力は、レンダリングデバイス（５１２）に出力することができ、および、将来のフレーム間画像予測で使用するために参照画像メモリ（５５７）に記憶することができるサンプルストリームとすることができる。
【００４７】
特定の符号化された画像は、完全に再構築されると、将来の予測のための参照画像として使用することができる。例えば、現在画像に対応する符号化された画像が完全に再構築され、符号化された画像が（例えば、解析器（５２０）によって）参照画像として識別されると、現在画像バッファ（５５８）は、参照画像メモリ（５５７）の一部になることができ、そして、後続の符号化された画像の再構築を開示する前に、新しい現在画像バッファを再割り当てることができる。
【００４８】
ビデオデコーダ（５１０）は、例えばＩＴＵ−Ｔ  Ｒｅｃ．Ｈ．２６５．などのような規格における所定のビデオ圧縮技術に従って復号化動作を実行することができる。符号化されたビデオシーケンスは、符号化されたビデオシーケンスがビデオ圧縮技術または規格の構文と、ビデオ圧縮技術または規格の文書としてのプロファイルとの両方に従うという意味で、使用されているビデオ圧縮技術または規格によって指定された構文に従うことができる。具体的には、プロファイルは、ビデオ圧縮技術または規格で使用可能なすべてのツールから、そのプロファイルで使用できる唯一のツールとしていくつかのツールを選択することができる。符号化されたビデオシーケンスの複雑さが、ビデオ圧縮技術または規格の階層によって定義された範囲内にあるということもコンプライアンスに必要である。いくつかの場合では、階層は、最大画像サイズ、最大フレームレート、（例えば、毎秒メガ（ｍｅｇａ）個のサンプルを単位として測定された）最大再構築サンプルレート、最大参照画像サイズなどを制限する。階層によって設定された制限は、いくつかの場合では、仮想参照デコーダ（ＨＲＤ：Ｈｙｐｔｈｅｔｉｃａｌ  Ｒｅｆｅｒｅｎｃｅ  Ｄｅｃｏｄｅｒ）仕様と、符号化されたビデオシーケンスにおいてシグナルで通知されるＨＲＤバッファ管理のメタデータとによって、さらに制限されることができる。
【００４９】
一実施形態では、受信機（５３１）は、符号化されたビデオとともに付加（冗長）的なデータを受信することができる。付加的なデータは、符号化されたビデオシーケンスの一部として含まれることができる。付加的なデータは、データを適切に復号化し、および／または元のビデオデータをより正確に再構築するために、ビデオデコーダ（５１０）によって使用されることができる。付加的なデータは、例えば、時間的、空間的、または信号雑音比（ＳＮＲ：ｓｉｇｎａｌ  ｎｏｉｓｅ  ｒａｔｉｏ）拡張層、冗長スライス、冗長画像、前方誤り訂正符号などのような形式にすることができる。
【００５０】
図６は、本開示の一実施形態によるビデオエンコーダ（６０３）のブロック図を示す。ビデオエンコーダ（６０３）は、電子デバイス（６２０）に含まれる。電子デバイス（６２０）は、送信機（６４０）（例えば、送信回路）を含む。ビデオエンコーダ（６０３）は、図４の例におけるビデオエンコーダ（４０３）の代わりに使用することができる。
【００５１】
ビデオエンコーダ（６０３）は、ビデオエンコーダ（６０３）によって符号化されるビデオ画像を捕捉するビデオソース（６０１）（図６の例における電子デバイス（６２０）の一部ではない）から、ビデオサンプルを受信することができる。別の例では、ビデオソース（６０１）は、電子デバイス（６２０）の一部である。
【００５２】
ビデオソース（６０１）は、ビデオエンコーダ（６０３）によって符号化されたソースビデオシーケンスをデジタルビデオサンプルストリームの形式で提供することができ、前記デジタルビデオサンプルストリームは、任意の適切なビット深度（例えば、８ビット、１０ビット、１２ビット…）、任意の色空間（例えば、ＢＴ．６０１  Ｙ  ＣｒＣＢ、ＲＧＢ…）及び任意の適切なサンプリング構造（例えば、Ｙ  ＣｒＣｂ  ４：２：０、Ｙ  ＣｒＣｂ  ４：４：４）を有することができる。メディアサービスシステムでは、ビデオソース（６０１）は、以前に準備されたビデオを記憶する記憶デバイスであってもよい。ビデオ会議システムでは、ビデオソース（６０１）は、ローカル画像情報をビデオシーケンスとして捕捉するカメラであってもよい。ビデオデータは、順番に見られるときに動きを与える複数の個別の画像として提供されることができる。画像自体は、空間画素アレイとして構成されてもよく、ここで、各画素は、使用中のサンプリング構造、色空間などに応じて、１つ以上のサンプルを含むことができる。当業者は、画素とサンプルとの間の関係を容易に理解することができる。以下の説明は、サンプルに焦点を当てる。
【００５３】
一実施形態によれば、ビデオエンコーダ（６０３）は、リアルタイムで、またはアプリケーションによって要求される任意の他の時間制約の下で、ソースビデオシーケンスの画像を、符号化されたビデオシーケンス（６４３）に符号化し圧縮することができる。適切な符号化速度を実施することは、コントローラ（６５０）の１つの機能である。いくつかの実施形態では、コントローラ（６５０）は、以下で説明するように他の機能ユニットを制御し、他の機能ユニットに機能的に結合される。該結合は、明瞭にするために図示されていない。コントローラ（６５０）によって設定されたパラメータは、レート制御関連パラメータ（画像スキップ、量子化器、レート歪み最適化技術のλ（ラムダ）値…）、画像サイズ、画像のグループ（ＧＯＰ：ｇｒｏｕｐ  ｏｆ  ｐｉｃｔｕｒｅｓ）レイアウト、最大動きベクトル探索範囲などを含むことができる。コントローラ（６５０）は、特定のシステム設計に対して最適化されたビデオエンコーダ（６０３）に関連する他の適切な機能を有するように構成されることができる。
【００５４】
いくつかの実施形態では、ビデオエンコーダ（６０３）は、符号化ループで動作するように構成される。過度に簡単化された説明として、一例では、符号化ループは、ソースコーダ（６３０）（例えば、符号化される入力画像と、参照画像とに基づいて、シンボルストリームなどのようなシンボルを作成することを担当する）と、ビデオエンコーダ（６０３）に埋め込まれた（ローカル）デコーダ（６３３）とを含むことができる。デコーダ（６３３）は、（リモート）デコーダがサンプルデータを作成すると同様の方法でシンボルを再構築してサンプルデータを作成する（開示された主題で考慮されているビデオ圧縮技術では、シンボルと符号化されたビデオビットストリームとの間の任意の圧縮が無損失であるからである）。再構築されたサンプルストリーム（サンプルデータ）は、参照画像メモリ（６３４）に入力される。シンボルストリームの復号化により、デコーダの位置（ローカルまたはリモート）に関係なくビット正確な結果が得られるため、参照画像メモリ（６３４）のコンテンツは、「ローカル」）デコーダ（６３３）と「リモート」）デコーダの間でもビットで正確に対応する。言い換えれば、エンコーダの予測部分が「見た」参照画像サンプルは、デコーダが復号化期間に予測を使用する際に「見た」サンプル値と全く同じである。この参照画像の同期性の基本原理（および、例えばチャネル誤差の原因で同期性が維持されない場合に生じるドリフト）は、いくつかの関連技術でも使用されている。
【００５５】
「ローカル」デコーダ（６３３）の動作は、既に図５に関連して以上で詳細に説明された、ビデオデコーダ（５１０）などのような「リモート」デコーダの動作と同じであってもよい。しかし、図５をさらに簡単に参照すると、シンボルが利用可能であり、かつ、エントロピーコーダ（６４５）および解析器（５２０）によって符号化されたビデオシーケンスへのシンボルの符号化／復号化が無損失であることができるため、バッファメモリ（５１５）と解析器（５２０）を含むビデオデコーダ（５１０）のエントロピーデコード部分は、ローカルデコーダ（６３３）で完全に実行できない可能性がある。
【００５６】
この時点で、デコーダに存在する解析／エントロピー復号化以外のいかなるデコーダ技術も、対応するエンコーダにおいて、実質的に同一の機能形式で必ず存在する必要がある、ということが観察されている。このため、開示された主題は、デコーダ動作に焦点を合わせる。エンコーダ技術の説明は、包括的に説明されたデコーダ技術の逆であるため、省略されることができる。特定の領域だけで、より詳細な説明が必要であり、以下で提供される。
【００５７】
動作中に、いくつかの実施形態では、ソースコーダ（６３０）は、動き補償予測符号化を実行することができ、前記動き補償予測符号化は、ビデオシーケンスから「参照画像」として指定された１つ以上の以前に符号化された画像を参照して、入力画像を予測的に符号化する。このようにして、符号化エンジン（６３２）は、入力画像の画素ブロックと、入力画像に対する予測参照として選択されることができる参照画像の画素ブロックとの間の差分を符号化する。
【００５８】
ローカルビデオデコーダ（６３３）は、ソースコーダ（６３０）によって生成されたシンボルに基づいて、参照画像として指定されることができる画像の符号化されたビデオデータを復号化することができる。符号化エンジン（６３２）の動作は、有利には損失性プロセスであってもよい。符号化されたビデオデータがビデオデコーダ（図６に示されない）で復号化された場合、再構築されたビデオシーケンスは、通常、いくつかの誤差を伴うソースビデオシーケンスのレプリカであってもよい。ローカルビデオデコーダ（６３３）は、参照画像に対してビデオデコーダによって実行されることができる復号化プロセスをコピーして、再構築された参照画像を参照画像キャッシュ（６３４）に記憶することができる。このようにして、ビデオエンコーダ（６０３）は、遠端ビデオデコーダによって得られる（伝送誤差が存在しない）再構築された参照画像と共通のコンテンツを有する再構築された参照画像のコピーを、ローカルに記憶することができる。
【００５９】
予測器（６３５）は、符号化エンジン（６３２）に対して予測検索を実行することができる。すなわち、符号化される新しい画像について、予測器（６３５）は、新しい画像の適切な予測参照として機能するサンプルデータ（候補参照画素ブロックとして）または特定のメタデータ、例えば参照画像動きベクトル、ブロック形状などについて、参照画像メモリ（６３４）を検索することができる。予測器（６３５）は、適切な予測参照を見つけるために、サンプルブロックに基づいて、画素ブロックごとに動作することができる。いくつかの場合では、予測器（６３５）によって得られた検索結果によって決定されるように、入力画像は、参照画像メモリ（６３４）に記憶された複数の参照画像から引き出された予測参照を有することができる。
【００６０】
コントローラ（６５０）は、例えば、ビデオデータを符号化するために使用されるパラメータおよびサブグループパラメータの設定を含む、ソースコーダ（６３０）の符号化動作を管理することができる。
【００６１】
上述のすべての機能ユニットの出力は、エントロピーコーダ（６４５）でエントロピー符号化されることができる。エントロピーコーダ（６４５）は、例えばハフマン符号化、可変長符号化、算術符号化などのような、当業者に知られている技術に従って、シンボルを無損失で圧縮することにより、様々な機能ユニットによって生成されたシンボルを符号化されたビデオシーケンスに変換する。
【００６２】
送信機（６４０）は、符号化されたビデオデータを記憶する記憶デバイスへのハードウェア／ソフトウェアリンクであることができる通信チャネル（６６０）を介した送信に備えるために、エントロピーコーダ（６４５）によって生成成された、符号化されたビデオシーケンスをバッファリングすることができる。送信機（６４０）は、ビデオコーダ（６０３）からの符号化されたビデオデータを、送信される他のデータ、例えば、符号化されたオーディオデータおよび／または補助データストリーム（ソースは図示せず）とマージすることができる。
【００６３】
コントローラ（６５０）は、ビデオエンコーダ（６０３）の動作を管理することができる。符号化する期間、コントローラ（６５０）は、各符号化された画像に、特定の符号化された画像タイプを割り当てることができ、これは、それぞれの画像に適用できる符号化技術に影響を与える可能性がある。例えば、画像は、以下の画像タイプのいずれかとして割り当てられることが多いし、即ち、フレーム内画像（Ｉ画像）は、シーケンス内の任意の他の画像を予測のソースとして使用せずに、符号化および復号化されることができるものであってもよい。いくつかのビデオコーデックは、独立したデコーダリフレッシュ（Ｉｎｄｅｐｅｎｄｅｎｔ  Ｄｅｃｏｄｅｒ  Ｒｅｆｒｅｓｈ、「ＩＤＲ」）画像などの異なるタイプのフレーム内画像を許容する。当業者は、Ｉ画像の変種とそれらのアプリケーションおよび機能とを理解している。
【００６４】
予測画像（Ｐ画像）は、多くとも１つの動きベクトルおよび参照インデックスを使用して各ブロックのサンプル値を予測するフレーム内予測またはフレーム間予測を使用して符号化および復号化され得るものであってもよい。
【００６５】
双方向予測画像（Ｂ画像）は、多くとも２つの動きベクトルおよび参照インデックスを使用して各ブロックのサンプル値を予測するフレーム内予測またはフレーム間予測を使用して符号化および復号化され得るものであってもよい。同様に、複数の予測画像は、単一のブロックの再構築に、２つ以上の参照画像および関連付けられたメタデータを使用することができる。
【００６６】
ソース画像は、一般的に、複数のサンプルブロック（例えば、それぞれ４×４、８×８、４×８、または１６×１６個のサンプルのブロック）に空間的に細分され、ブロックごとに符号化されることができる。これらのブロックは、ブロックのそれぞれの画像に適用される符号化割り当てによって決定されるように、他の（既に符号化された）ブロックを参照して予測的に符号化されることができる。例えば、Ｉ画像のブロックは、非予測的に符号化されてもよく、またはそれらが同じ画像の既に符号化されたブロックを参照して予測的に符号化されてもよい（空間予測またはフレーム内予測）。Ｐ画像の画素ブロックは、１つ前に符号化された参照画像を参照して、空間的予測を介してまたは時間的予測を介して予測的に符号化されてもよい。Ｂ画像のブロックは、１つまたは２つ前に符号化された参照画像を参照して、空間的予測を介してまたは時間的予測を介して予測的に符号化されてもよい。
【００６７】
ビデオエンコーダ（６０３）は、例えばＩＴＵ―Ｔ  Ｈ．２６５などのような所定のビデオ符号化技術または規格に従って、符号化動作を実行することができる。その動作において、ビデオエンコーダ（６０３）は、入力ビデオシーケンスにおける時間的と空間的冗長性を利用する予測符号化動作を含む、様々な圧縮動作を実行することができる。したがって、符号化されたビデオデータは、使用されるビデオ符号化技術または規格によって指定された構文に従うことができる。
【００６８】
一実施形態では、送信機（６４０）は、符号化されたビデオとともに、付加的なデータを送信することができる。ソースコーダ（６３０）は、そのようなデータを、符号化されたビデオシーケンスの一部として含むことができる。付加的なデータは、時間的／空間的／ＳＮＲ拡張層、冗長画像やスライスなどのような他の形式の冗長データ、ＳＥＩ（Ｓｕｐｐｌｅｍｅｎｔａｒｙ  Ｅｎｈａｎｃｅｍｅｎｔ  Ｉｎｆｏｒｍａｔｉｏｎ）メッセージ、ＶＵＩ（Ｖｉｓｕａｌ  Ｕｓａｂｉｌｉｔｙ  Ｉｎｆｏｒｍａｔｉｏｎ）パラメータセットフラグメントなどを含むことができる。
【００６９】
ビデオは、時系列で複数のソース画像（ビデオ画像）として捕捉されることができる。フレーム内画像予測（フレーム内予測と略称されることが多い）は、与えられた画像における空間的相関を利用し、フレーム間画像予測は、画像間の（時間的または他の）相関を利用する。一例では、現在画像と呼ばれる、符号化／復号化中の特定の画像がブロックに分割される。現在画像のブロックが、ビデオにおける以前に符号化され、まだバッファリングされている参照画像における参照ブロックに類似している場合、現在画像のブロックは、動きベクトルと呼ばれるベクトルによって符号化されることができる。動きベクトルは、参照画像における参照ブロックを指し、複数の参照画像が使用されている場合、参照画像を識別する３番目の次元を有することができる。
【００７０】
いくつかの実施形態では、双方向予測技術は、フレーム間画像予測に使用されることができる。双方向予測技術によれば、例えば、復号化の順で両方とも、ビデオにおける現在画像の前にある（ただし、表示の順でそれぞれ、過去と将来にあるかもしれない）第１および第２参照画像などのような２つの参照画像が使用される。現在画像におけるブロックは、第１参照画像における第１参照ブロックを指す第１動きベクトルと、第２参照画像における第２参照ブロックを指す第２動きベクトルによって符号化されることができる。ブロックは、第１参照ブロックおよび第２参照ブロックの組み合わせによって予測されることができる。
【００７１】
さらに、符号化効率を向上させるために、マージモード技術は、フレーム間画像予測で使用されることができる。
【００７２】
本開示のいくつかの実施形態によれば、フレーム間画像予測やフレーム内画像予測などのような予測は、ブロックの単位で実行される。例えば、ＨＥＶＣ規格に従って、ビデオ画像のシーケンスにおける画像は、圧縮のために符号化ツリーユニット（ＣＴＵ：ｃｏｄｉｎｇ  ｔｒｅｅ  ｕｎｉｔ）に分割され、画像におけるＣＴＵは同じサイズ、例えば６４×６４画素、３２×３２画素、または１６×１６画素を有する。一般的に、ＣＴＵは、１つの輝度ＣＴＢと２つの色度ＣＴＢである３つの符号化ツリーブロック（ＣＴＢ）を含む。各ＣＴＵは、再帰的に四分木で１つ以上の符号化ユニット（ＣＵ）に分割されてもよい。例えば、６４×６４画素のＣＴＵは、１つの６４×６４画素のＣＵ、４つの３２×３２画素のＣＵ、または１６つの１６×１６画素のＣＵに分割されることができる。一例では、各ＣＵは、フレーム間予測タイプまたはフレーム内予測タイプなどのようなＣＵに対する予測タイプを決定するために分析される。ＣＵは、時間的および／または空間的予測可能性に応じて、１つ以上の予測ユニット（ＰＵ）に分割される。通常、各ＰＵは、輝度予測ブロック（ＰＢ）と２つの色度ＰＢを含む。一実施形態では、符号化（エンコーディング／デコーディング）における予測動作は、予測ブロックの単位で実行される。輝度予測ブロックを予測ブロックの例として使用すると、予測ブロックは、８×８画素、１６×１６画素、８×１６画素、１６×８画素などのような画素値（例えば、輝度値）の行列を含む。
【００７３】
図７は、本開示の別の実施形態によるビデオエンコーダ（７０３）の図を示す。ビデオエンコーダ（７０３）は、ビデオ画像シーケンスにおける現在ビデオ画像内のサンプル値の処理ブロック（例えば、予測ブロック）を受信し、処理ブロックを符号化されたビデオシーケンスの一部である符号化された画像に符号化するように構成される。一例では、ビデオエンコーダ（７０３）は、図４の例におけるビデオエンコーダ（４０３）の代わりに使用される。
【００７４】
ＨＥＶＣの例では、ビデオエンコーダ（７０３）は、例えば８×８サンプルの予測ブロックなど（例えば、ブロックの画像）のような処理ブロックのサンプル値の行列を受信する。ビデオエンコーダ（７０３）は、例えばレート歪み最適化を使用して、フレーム内モード、フレーム間モード、または双方向予測モードを使用して処理ブロックを符号化するかどうかを決定する。処理ブロックがフレーム内モードで符号化される場合、ビデオエンコーダ（７０３）は、フレーム内予測技術を使用して、処理ブロックを符号化された画像に符号化することができ、また、処理ブロックがフレーム間モードまたは双方向予測モードで符号化される場合、ビデオエンコーダ（７０３）は、それぞれフレーム間予測または双方向予測技術を使用して、処理ブロックを符号化された画像に符号化することができる。特定のビデオ符号化技術では、マージモードは、予測値以外にある符号化された動きベクトル成分の利点を利用しない場合に、動きベクトルが１つ以上の動きベクトル予測値から導出されるフレーム間画像予測サブモードにすることができる。特定の他のビデオ符号化技術では、主題ブロックに適用可能な動きベクトル成分が存在する場合がある。一例では、ビデオエンコーダ（７０３）は、処理ブロックのモードを決定するためのモード決定モジュール（図示せず）などのような他のコンポーネントを含む。
【００７５】
図７の例では、ビデオエンコーダ（７０３）は、図７に示すように一緒に結合された、フレーム間エンコーダ（７３０）と、フレーム内エンコーダ（７２２）と、残差計算器（７２３）と、スイッチ（７２６）と、残差エンコーダ（７２４）と、汎用コントローラ（７２１）と、エントロピーエンコーダ（７２５）とを含む。
【００７６】
フレーム間エンコーダ（７３０）は、現在ブロック（例えば、処理ブロック）のサンプルを受信し、そのブロックを参照画像（例えば、前の画像と後の画像におけるブロック）内の１つ以上の参照ブロックと比較し、フレーム間予測情報（例えば、フレーム間符号化技術による冗長情報説明、動きベクトル、マージモード情報）を生成して、任意の適切な技術を使用して、フレーム間予測情報に基づいてフレーム間予測結果（例えば、予測されたブロック）を計算するように構成される。
【００７７】
フレーム内エンコーダ（７２２）は、現在ブロック（例えば、処理ブロック）のサンプルを受信し、いくつかの場合では、そのブロックを同じ画像で既に符号化されたブロックと比較し、変換後に量子化された係数を生成して、いくつかの場合では、フレーム内予測情報（例えば、１つ以上のフレーム内符号化技術によるフレーム内予測方向情報）を生成するように構成される。
【００７８】
汎用コントローラ（７２１）は、汎用制御データを決定し、汎用制御データに基づいてビデオエンコーダ（７０３）の他のコンポーネントを制御するように構成される。一例では、汎用コントローラ（７２１）は、ブロックのモードを決定し、そのモードに基づいて制御信号をスイッチ（７２６）に提供する。例えば、モードがフレーム内である場合、汎用コントローラ（７２１）は、残差計算器（７２３）によって使用されるフレーム内モード結果（例えば、ブロックのフレーム内予測画像）を選択するように、スイッチ（７２６）を制御し、フレーム内予測情報を選択して、そのフレーム内予測情報をコードストリームに含めるように、エントロピーエンコーダ（７２５）を制御する。また、モードがフレーム間モードである場合、汎用コントローラ（７２１）は、残差計算器（７２３）によって使用されるフレーム間予測結果（例えば、ブロックのフレーム間予測画像）を選択するように、スイッチ（７２６）を制御し、フレーム間予測情報を選択して、そのフレーム間予測情報をコードストリームに含めるように、エントロピーエンコーダ（７２５）を制御する。
【００７９】
残差計算器（７２３）は、受信されたブロック（例えば、ブロックの画像）とフレーム内エンコーダ（７２２）またはフレーム間エンコーダ（７３０）から選択された予測結果（ブロックの予測画像）との間の差（残差データまたは残差画像）を計算するように構成される。残差エンコーダ（７２４）は、空間領域から周波数領域に残差データを変換するように構成される。一例では、残差エンコーダ（７２４）は、周波数領域で残差データを変換し、変換係数を生成するように構成される。次に、変換係数は量子化処理を受けて、量子化された変換係数が得られる。
【００８０】
エントロピーエンコーダ（７２５）は、符号化されたブロックを含むようにビットストリームをフォーマットするように構成される。エントロピーエンコーダ（７２５）は、ＨＥＶＣ規格などのような適切な規格に従って様々な情報を含むように構成される。一例では、エントロピーエンコーダ（７２５）は、汎用制御データ、選択された予測情報（例えば、フレーム内予測情報またはフレーム間予測情報）、残差情報、およびビットストリーム内の他の適切な情報を含むように構成される。開示された主題によれば、フレーム間モードまたは双方向予測モードのマージサブモードでブロックを符号化する場合、残差情報はないということに留意されたい。
【００８１】
図８は、本開示の別の実施形態によるビデオデコーダ（８１０）の図を示す。ビデオデコーダ（８１０）は、符号化されたビデオシーケンスの一部である符号化された画像を受信し、符号化された画像を復号化して再構築された画像を生成するように構成される。一例では、ビデオデコーダ（８１０）は、図４の例におけるビデオデコーダ（４１０）の代わりに使用される。
【００８２】
図８の例では、ビデオデコーダ（８１０）は、図８に示されるように一緒に結合された、エントロピーデコーダ（８７１）と、フレーム間デコーダ（８８０）と、残差デコーダ（８７３）と、再構築モジュール（８７４）と、フレーム内デコーダ（８７２）とを含む。
【００８３】
エントロピーデコーダ（８７１）は、符号化された画像から、符号化された画像を構成する構文要素を表す特定のシンボルを再構築するように構成されることができる。このようなシンボルは、例えば、ブロックを符号化するためのモード（例えば、フレーム内、フレーム間、双方向予測、後者の２つのマージサブモードまたは別のサブモード）と、フレーム内デコーダ（８７２）またはフレーム間デコーダ（８８０）による予測に使用される特定のサンプルまたはメタデータをそれぞれ識別できる予測情報（例えば、フレーム内予測情報またはフレーム間予測情報など）と、例えば量子化された変換係数の形式の残差情報などとを含む。一例では、予測モードがフレーム間予測モードまたは双方向予測モードである場合、フレーム間予測情報は、フレーム間デコーダ（８８０）に提供される。そして、予測タイプがフレーム内予測タイプである場合、フレーム内予測情報は、フレーム内デコーダ（８７２）に提供される。残差情報は、逆量子化を受けて、残差デコーダ（８７３）に提供されることができる。
【００８４】
フレーム間デコーダ（８８０）は、フレーム間予測情報を受信し、フレーム間予測情報に基づいてフレーム間予測結果（例えば、現在ブロックのフレーム間予測画像）を生成するように構成される。
【００８５】
フレーム内デコーダ（８７２）は、フレーム内予測情報を受信し、フレーム内予測情報に基づいて予測結果（例えば、現在ブロックのフレーム内予測画像）を生成するように構成される。
【００８６】
残差デコーダ（８７３）は、逆量子化を実行して、逆量子化された変換係数を抽出し、その逆量子化された変換係数を処理して、残差を周波数領域から空間領域に変換して現在ブロックの残差画像を取得するように構成される。残差デコーダ（８７３）はまた、特定の制御情報（量子化器パラメータ（ＱＰ）を含むように）も必要とする場合があり、その情報は、エントロピーデコーダ（８７１）によって提供される場合がある（これが低ボリューム制御情報のみであるため、データ経路は図示されていない）。
【００８７】
再構築モジュール（８７４）は、空間領域において、残差デコーダ（８７３）による出力としての現在ブロックの残差画像と、場合によってはフレーム間予測モジュールまたはフレーム内予測モジュールによる出力としての予測結果（例えば、現在ブロックの予測画像）とを組み合わせて、再構築されたブロック（例えば、現在ブロックの再構築された画像）を形成するように構成され、再構築されたブロックは、再構築された画像の一部とすることができ、その後、再構築された画像は、再構築されたビデオの一部とすることができる。それは、視覚的品質を改善するために、デブロッキング動作などのような他の適切な動作を実行することができる、ということに留意されたい。
【００８８】
ビデオエンコーダ（４０３）、（６０３）および（７０３）と、ビデオデコーダ（４１０）、（５１０）および（８１０）とは、任意の適切な技術を使用して実現されることができる、ということに留意されたい。一実施形態では、ビデオエンコーダ（４０３）、（６０３）および（７０３）と、ビデオデコーダ（４１０）、（５１０）および（８１０）とは、１つ以上の集積回路を使用して実現されることができる。別の実施形態では、ビデオエンコーダ（４０３）、（６０３）および（７０３）と、ビデオデコーダ（４１０）、（５１０）および（８１０）とは、ソフトウェア命令を実行する１つ以上のプロセッサを使用して実装されることができる。
【００８９】
図９は、一実施形態によるデコーダ（９００）におけるエントロピーデコーダ（９１０）および残差デコーダ（９２０）のブロック図を示す。デコーダ（９００）は、符号化されたビデオシーケンスの一部である符号化された画像を受信し、符号化された画像を復号化して再構築された画像を生成するように構成される。いくつかの例では、デコーダ（９００）は、ビデオデコーダ（４１０）、（５１０）または（８１０）に対応する。
【００９０】
図９の例では、デコーダ（９００）は、残差デコーダ（９２０）に結合されたエントロピーデコーダ（９１０）を含む。いくつかの例では、エントロピーデコーダ（９１０）は、解析器（５２０）またはエントロピーデコーダ（８７１）に対応し、残差デコーダ（９２０）は、スケーラ／逆変換ユニット（５５１）または残差デコーダ（８７３）に対応する。したがって、図４、図５および図８を参照して説明したものと同一または類似である、デコーダ（９００）、エントロピーデコーダ（９１０）および残差デコーダ（９２０）の構成および特徴は、簡略化または省略されることができる。さらに、いくつかの実施形態では、デコーダ（９００）は、エントロピーデコーダ（９１０）および残差デコーダ（９２０）以外の他のコンポーネントを含む。
【００９１】
エントロピーデコーダ（９１０）は、符号化されたビデオシーケンスを受信し、入力ブロック（９３２）および対応する制御情報を残差デコーダ（９２０）に出力することができる。いくつかの例では、入力ブロック（９３２）は、現在ブロックの符号化された残差画像を表す量子化された係数を含む。残差デコーダ（９２０）は、入力ブロック（９３２）の１つ以上の係数を受信し、入力ブロック（９３２）の１つ以上の係数および制御情報に基づいて、現在ブロックの残差画像を出力することができる。
【００９２】
図９の例では、残差デコーダ（９２０）は、逆量子化ユニット（９２２）、二次変換ユニット（９２４）、置換ユニット（９２６）および主変換ユニット（９２８）を含む。いくつかの実施形態では、残差デコーダ（９２０）のすべてのコンポーネントは、図９に描かれておらず、図示されていない。さらに、本明細書に記載された様々なユニットは、ハードウェア回路、命令を実行する処理回路、またはそれらの組み合わせを使用して実現されることができる。
【００９３】
逆量子化ユニット（９２２）は、エントロピーデコーダ（９１０）から入力ブロック（９３２）の１つ以上の係数を受信し、中間ブロック（９３４）を生成することができ、当該中間ブロック（９３４）は、エントロピーデコーダ（９１０）からの量子化因子および／または量子化スケーリング行列に基づく再スケーリングされた係数を含む。
【００９４】
二次変換ユニット（９２４）は、中間ブロック（９３４）の特定の部分に対する二次変換に基づいて二次変換処理を実行し、現在ブロックの残差画像の周波数領域表現に対応する変換ブロック（９３６）を取得することができる。いくつかの例では、中間ブロック（９３４）の特定の部分は、中間ブロック（９３４）の低周波数部分に対応する。いくつかの例では、中間ブロック（９３４）の特定の部分は、中間ブロック（９３４）の左上部分に対応する。
【００９５】
主変換ユニット（９２８）は、変換ブロック（９３６）を受信し、エントロピーデコーダ（９１０）からの制御情報に示される１つ以上の主変換に基づいて主変換処理を実行し、再構築されたブロック（９３８）を生成することができる。
【００９６】
置換ユニット（９２６）は、エントロピーデコーダ（９１０）からの制御情報に示される置換処理に基づいて、再構築されたブロック（９３８）を再び並べ替え、現在ブロックの再構築された残差画像を出力することができる。その後、現在ブロックの画像は、現在ブロックの残差画像と、フレーム内予測またはフレーム間予測などの予測スキームを使用して生成された現在ブロックの予測画像とに基づいて再構築されることができる。
【００９７】
いくつかの実施形態では、二次変換ユニット（９２４）および置換ユニット（９２６）のうちの１つまたは複数は、制御情報に従って無効化されてもよく、または必要に応じて省略されてもよい。二次変換ユニット（９２４）が無効化または省略された場合、逆量子化ユニット（９２２）の出力（９３４）は、変換されたブロック（９３６）として使用される。置換ユニット（９２６）が無効化または省略された場合、主変換ユニット（９２８）の出力（９３８）は、再構築された残差画像として使用される。
【００９８】
いくつかの実施形態では、デコーダによって実行される主変換処理は、エンコーダによって実行される対応する主変換処理の逆であってもよい。いくつかの実施形態では、デコーダによって実行される二次変換処理は、エンコーダによって実行される対応する二次変換処理の逆であってもよい。
【００９９】
主変換処理に関して、いくつかの例では、主変換処理は、水平変換および垂直変換を使用して実行されることができる。さまざまなタイプの変換基底関数は、主変換処理を実行するために使用されることができる。例えば、表１は、ＤＣＴ−ＩＩ（離散コサイン変換−タイプＩＩ）、ＤＣＴ−Ｖ（離散コサイン変換−タイプＶ）、ＤＣＴ−ＶＩＩＩ（離散コサイン変換−タイプＶＩＩＩ）、ＤＳＴ−Ｉ（離散サイン変換−タイプＩ）およびＤＳＴ−ＶＩＩ（離散サイン変換−タイプＶＩＩ）を含む、適用可能な変換基底関数のタイプを示している。もちろん、他のタイプの変換基底関数は、残差符号化のために適用されることもできる。
【０１００】
【表１】
2021517395.tif 000003
例えば、既にＨＥＶＣで採用されているＤＣＴ−ＩＩおよび４×４  ＤＳＴ−ＶＩＩに加えて、適応マルチ変換（ＡＭＴ：Ａｄａｐｔｉｖｅ  Ｍｕｌｔｉｐｌｅ  Ｔｒａｎｓｆｏｒｍ、またはエンハンスドマルチ変換（ＥＭＴ：Ｅｎｈａｎｃｅｄ  Ｍｕｌｔｉｐｌｅ  Ｔｒａｎｓｆｏｒｍ）として知られているか、あるいはマルチ変換選択（ＭＴＳ：Ｍｕｌｔｉｐｌｅ  Ｔｒａｎｓｆｏｒｍ  Ｓｅｌｅｃｔｉｏ）としてしられている）スキームは、フレーム間およびフレーム内の両方の符号化されたブロックの残差符号化に使用されることができる。
【０１０１】
いくつかの例では、変換行列の直交性を維持するために、変換されたブロックは、例えばＨＥＶＣでの８ビットの代わりに１０ビット表現を使用するなど、より高い精度で量子化されることができる。変換された係数の中間値が１６ビットの範囲内に維持されるために、水平変換後かつ垂直変換後に、現在のＨＥＶＣ変換で使用されている右シフトと比較して、全ての係数は、２ビット以上で右シフトされることができる。
【０１０２】
いくつかの実施形態では、ＡＭＴは、幅および高さの両方が６４以下であるＣＵに適用され、ＡＭＴが適用されるか否かは、ＣＵレベルフラグによって制御される。ＣＵレベルフラグが０に等しい場合、残差を符号化するために、ＤＣＴ−ＩＩをＣＵに適用することができる。ＡＭＴが有効なＣＵ内の輝度符号化ブロックについて、使用される水平および垂直変換を識別するために、２つの付加的なフラグを信号で通知することができる。いくつかの例では、変換スキップモードを使用してブロックの残差を符号化することができる。いくつかの例では、構文符号化の冗長性を回避するために、ＣＵレベルのＡＭＴフラグが０に等しくない場合、変換スキップフラグは信号で通知されない。
【０１０３】
フレーム内符号化ブロックのための残差符号化について、異なるフレーム内予測モードの異なる残差統計のため、モード依存の変換候補選択処理が使用される。いくつかの例では、表２に示すように３つの変換サブセットを定義でき、表３に示すように、フレーム内予測モードに基づいて変換サブセットを選択することができる。
【０１０４】
【表２】
2021517395.tif 000004
いくつかの実施形態では、サブセットの概念に関して、変換サブセットは、まず、ＣＵレベルのＡＭＴフラグが１に等しいＣＵのフレーム内予測モードを使用して、表２に基づいて識別される。その後、水平および垂直変換のそれぞれについて、表３に従って、識別された変換サブセットにおける２つの変換候補のうちの１つを、明示的に信号で通知されたフラグに基づいて選択することができる。
【０１０５】
【表３】
2021517395.tif 000005
フレーム間符号化ブロックの残差符号化について、いくつかの例では、ＤＳＴ−ＶＩＩおよびＤＣＴ−ＶＩＩＩを含む、１つの変換セットのみが、水平および垂直変換の両方に使用される。
【０１０６】
二次変換処理について、非分離二次変換（ＮＳＳＴ：ｎｏｎ−ｓｅｐａｒａｂｌｅ  ｓｅｃｏｎｄａｒｙ  ｔｒａｎｓｆｏｒｍ）を適用することができる。いくつかの実施形態では、ＮＳＳＴは、主変換後の低周波係数のみに適用される。いくつかの例では、変換係数ブロックの幅（Ｗ）および高さ（Ｈ）の両方が８以上である場合、８×８のＮＳＳＴが、変換係数ブロックの左上の８×８領域に適用される。そうでなければ、変換係数ブロックのＷまたはＨのいずれかが４に等しい場合、４×４のＮＳＳＴが適用され、また、４×４の非分離変換が変換係数ブロックの左上のｍｉｎ（８，Ｗ）×ｍｉｎ（８，Ｈ）領域で実行される。
【０１０７】
いくつかの実施形態例では、非分離可能な変換の行列乗算の実装は、例として４×４の入力ブロックを用いて以下のように説明される。非分離可能な変換を適用するには、４×４の入力ブロックＸ
2021517395.tif 000006
は、ベクトル
2021517395.tif 000007
2021517395.tif 000008
として表現される。
【０１０８】
非分離可能な変換は、
2021517395.tif 000009
として計算され、ここで、
2021517395.tif 000010
は、変換係数ベクトルを示し、Ｔは、１６×１６の変換行列である。その後、１６×１の係数ベクトル
2021517395.tif 000011
は、そのブロックのスキャン順序（水平、垂直、または対角）を使用して４×４のブロックとして再編成される。より小さいインデックスを有する係数は、４×４の係数ブロック内に、より小さいスキャンインデックスで配置される。
【０１０９】
いくつかの例では、バタフライ実現を有するハイパーキューブギブンス変換（ＨｙＧＴ：Ｈｙｐｅｒｃｕｂｅ−Ｇｉｖｅｎｓ  Ｔｒａｎｓｆｏｒｍ）が、行列乗算の代わりに使用され、非分離可能な変換の複雑さを低減させる。例えば、この直交変換の基本要素はギブンス回転であり、このギブンス回転が直交行列Ｇ（ｍ，ｎ，θ）で定義され、また、
2021517395.tif 000012
によって定義される要素を有する。
【０１１０】
図１０Ａは、一実施形態によるギブンス回転のグラフィック表現を示す。これらの変換は、図１０Ａのようにグラフィックで表現することができ、ここで、
2021517395.tif 000013
かつ、
2021517395.tif 000014
である。
【０１１１】
ハイパーキューブ配列にギブンス回転のセットを組み合わせることにより、ＨｙＧＴを実現することができる。図１０Ｂは、一実施形態によるギブンス回転の組み合わせに基づくハイパーキューブギブンス変換のグラフィック表現を示す。図１０Ｂの例では、「バタフライ」形状のフローチャートに基づいて１６個の要素（４×４非分離可能な変換）のためのＨｙＧＴを計算することができる。例えば、Ｎが２の累乗であると仮定すると、ＨｙＧＴラウンド（ｒｏｕｎｄ）は、ｌｏｇ２（Ｎ）パス（ｐａｓｓ）のシーケンスとして定義され、ここで、各パスでは、ベクトルｍおよびｎにおけるインデックスは、次元ｌｏｇ２（Ｎ）を有するハイパーキューブのエッジによって、各方向に順次的に定義される。
【０１１２】
良好な圧縮を得るために、２つ以上のＨｙＧＴラウンドを使用することができる。図１１は、一実施形態によるギブンス回転の組み合わせに基づく別のハイパーキューブギブンス変換のグラフィック表現を示す。図１１に示すように、完全な非分離可能ま二次変換は、ＲラウンドのＨｙＧＴから構成され、変換係数の分散に従って変換係数をソートするために、オプションの置換パスを含むことができる。いくつかの例では、２ラウンドのＨｙＧＴは、４×４の二次変換に適用され、４ラウンドのＨｙＧＴは、８×８の二次変換に適用される。
【０１１３】
いくつかの実施形態では、現在ブロックがフレーム内符号化される場合、二次変換処理および／または二次変換処理を実行するための二次変換を実行するかスキップするかは、主変換処理のための１つ以上の主変換に基づいて決定されることができる。したがって、いくつかの例では、符号化されたビットストリームにおける特定のフレーム内符号化されたブロックのための二次変換処理を制御するためのパラメータを含む必要はない。このようにして、主変換処理と二次変換処理を実行するためのパラメータを個別に信号で通知する代わりに、二次変換処理が主変換処理に関連付けられ、そして、制御情報は、主変換処理と二次変換処理の組み合わせに対して信号で通知されると見なされている。
【０１１４】
例えば、デコーダ（９００）の復号化コントローラは、エントロピーデコーダ（９３２）と協働して、現在ブロックの予測画像を生成するためのフレーム内予測モードを決定し、符号化されたビデオシーケンスまたは符号化されたビデオビットストリームから抽出されたシグナリング情報に基づいて、１つ以上の主変換を決定することができる。復号化コントローラはさらに、１つ以上の主変換に基づいて、二次変換を使用して二次変換処理を実行するか否かをさらに決定することができる。
【０１１５】
いくつかの例では、二次変換処理が実行されるべきであると決定された場合、デコーダ（９００）の復号化コントローラは、決定されたフレーム内予測モードおよび決定された１つ以上の主変換に基づいて、二次変換を決定することができる。残差デコーダ（９２０）は、符号化されたビデオビットストリームから抽出された入力ブロックの１つ以上の係数、決定された１つ以上の主変換、および決定された二次変換に基づいて、現在ブロックの残差画像を再構築することができる。
【０１１６】
いくつかの例では、二次変換処理が実行されないと決定された場合、残差デコーダ（９２０）は、入力ブロックの１つ以上の係数および決定された１つ以上の主変換に基づいて、現在ブロックの残差画像を再構築し、二次変換処理をスキップすることができる。
【０１１７】
現在ブロックの残差画像が再構築された後、デコーダ（９００）は、現在ブロックの予測画像および残差画像に基づいて、現在ブロックの画像を再構築することができる。
【０１１８】
１つの例示的な実施形態では、ＤＣＴ−ＩＩが主水平および垂直変換として使用される場合、二次変換が使用されないが信号で通知されるか、または二次変換が信号で通知されないが使用されるか、あるいは二次変換が信号で通知されないが、復号化された情報から二次変換の使用が推定される。いくつかの例では、二次変換は、ブロック高さ、ブロック幅、ブロック形状、変換係数、およびフレーム内予測方向のうちの少なくとも１つ以上に基づいて決定され得る。
【０１１９】
別の例示的な実施形態では、１つの二次変換は、１対の水平／垂直変換タイプのみに関連付けられる。いくつかの例では、１つの二次変換は、様々なフレーム内予測モードに使用されることができる。
【０１２０】
別の例示的な実施形態では、１つの変換フラグは、デフォルト変換、例えばＤＣＴ−ＩＩが使用されるかどうかを示すために信号で通知される。例えば、変換フラグが０である場合、ＤＣＴ−ＩＩは水平変換と垂直変換の両方に使用され、二次変換は適用されない。一方、変換フラグが１である場合、変換インデックスはさらに、主変換と二次変換のどの組み合わせが適用されるかを示すために信号で通知されてもよい。
【０１２１】
いくつかの実施形態では、現在ブロックの残差画像を表す変換ブロックが変換スキップモードによって符号化されない場合、特定の条件下で、変換フラグも変換インデックスも信号で通知されず、ＤＣＴ−ＩＩのみが使用される。この条件は、（ｉ）変換ブロックがＮ個（例えば、１、２または３）未満の係数を有し、ここで、その係数の量子化レベルが所定の閾値（例えば、１、２または３）より小さいこと、および（ｉｉ）変換ブロックが特定の位置（例えば、その高周波数部分）に非ゼロの係数を有しないこと、のうちの１つ以上を含むが、これらに限定されない。
【０１２２】
いくつかの実施形態では、変換ブロックが変換スキップモードによって符号化されない場合、特定の条件下で、変換フラグは依然として信号で通知されるが、変換インデックスは信号で通知されず、また、主変換と二次変換のデフォルトの組み合わせが使用される。この条件は、（ｉ）変換ブロックがＮ個（例えば、１、２または３）未満の係数を有し、ここで、その係数の量子化レベルが所定の閾値（例えば、１、２または３）より小さいこと、および（ｉｉ）変換ブロックが特定の位置（例えば、その高周波数部分）に非ゼロの係数を有しないこと、のうちの１つ以上を含むが、これらに限定されない。
【０１２３】
いくつかの実施形態では、変換ブロックが変換スキップモードによって符号化されない場合、特定の条件下で主変換のみが使用され、二次変換が使用されない。この条件は、（ｉ）変換ブロックがＮ個（例えば、１、２または３）未満の係数を有し、ここで、その係数の量子化レベルが所定の閾値（例えば、１、２または３）より小さいこと、および（ｉｉ）変換ブロックが特定の位置（例えば、その高周波数部分）に非ゼロの係数を有しないこと、のうちの１つ以上を含むが、これらに限定されない。
【０１２４】
いくつかの例では、現在ブロックが色度ブロックである場合、現在色度ブロックのための主変換および／または二次変換は、１つ以上の同一の場所に配置された輝度ブロックの様々な設定から推定されることができる。したがって、輝度および色度ブロックのための変換シグナリングスキームがを統一されることができる。
【０１２５】
１つの実施形態では、変換シグナリングは色度ブロックに適用されず、色度ブロックのための主変換および二次変換は、同一の場所に配置された輝度ブロックに適用される主変換および二次変換、および色度フレーム内予測方向に基づいて導出される。
【０１２６】
いくつかの実施形態では、この導出は、直接モード（すなわち、ＤＭモードであり、ここで、色度ブロックのためのフレーム内予測モードが、同一の場所に配置された輝度ブロックのためのフレーム内予測モードと同じである）によって色度成分が予測される場合のみに適用される。いくつかの実施形態では、色度ブロックのフレーム内予測モードが輝度ベースのモード（すなわち、ＬＭモードであり、ここで、色度ブロックのためのフレーム内予測モードが、同一の場所に配置された輝度ブロックのためのフレーム内予測モードに基づいて推定される）である場合、他のデフォルトのフレーム内モード、例えば平面モードまたはＤＣモードに関連付けられる主変換および二次変換が使用される。
【０１２７】
いくつかの実施形態では、主変換は、符号化されたビデオビットストリームから抽出された変換インデックスに基づいて、ＤＣＴ−ＩＩ（離散コサイン変換−タイプＩＩ）変換およびＤＳＴ−ＶＩＩ（離散サイン変換−タイプＶＩＩ）変換を含む候補変換から主決定される。デコーダ（９００）では、まず、例えば各行／列の要素の反転や行／列の並べ替えなどの置換方法が、フレーム内予測モードおよび信号で通知された変換インデックスに基づいて選択され、そして、主逆変換処理が主変換ユニット（９２８）によって実行された後、この置換が置換ユニット（９２６）によって適用される。
【０１２８】
いくつかの実施形態では、いくつかのフレーム内予測モードについて、主変換のシグナリングはモードに依存するものであってもよい。いくつかの実施形態では、いくつかのフレーム内予測モードについて、垂直または水平変換のみは信号で通知されてもよい。いくつかの実施形態では、垂直および水平変換が個別に信号で通知される代わりに、予め定義された垂直および水平変換ペアのみが信号で通知される。
【０１２９】
１つの例では、変換タイプが水平（または垂直）方向に対して信号で通知されない場合、デフォルトの変換タイプ、例えば、ＤＳＴ−ＶＩＩまたはＤＳＴ−ＩＶが水平（または垂直）方向に対して使用される。いくつかの例では、ＤＳＴ−ＩＶは、少なくとも、
2021517395.tif 000015
に基づく基底関数を有する。
【０１３０】
別の例示的な実施形態では、垂直フレーム内予測、例えばＨＥＶＣにおけるフレーム内予測モードインデックス２６、およびＪＥＭにおけるフレーム内予測モードインデックス５０について、水平変換選択のみが信号で通知される。
【０１３１】
別の例示的な実施形態では、水平フレーム内予測、例えばＨＥＶＣにおけるフレーム内予測モードインデックス１０、およびＪＥＭにおけるフレーム内予測モードインデックス１８について、垂直変換選択のみが信号で通知される。
【０１３２】
図１２は、一実施形態によるエンコーダ（１２００）における残差エンコーダ（１２１０）およびエントロピーエンコーダ（１２２０）のブロック図を示す。エンコーダ（１２００）は、現在ブロックの残差画像を受信し、当該残差画像を符号化されたビデオシーケンスに符号化するようお構成される。いくつかの例では、エンコーダ（１２００）は、ビデオエンコーダ（４０３）、（６０３）または（７０３）に対応する。
【０１３３】
図１２の例では、エンコーダ（１２００）は、エントロピーエンコーダ（１２２０）に結合された残差エンコーダ（１２１０）を含む。いくつかの例では、エントロピーコーダ（１２２０）は、エントロピーエンコーダ（６４５）またはエントロピーデコーダ（７２５）に対応し、残差エンコーダ（１２１０）は、符号化エンジン（６３２）または残差エンコーダ（７２４）に対応する。したがって、図４、図６および図７を参照して説明したものと同一または類似である、エンコーダ（１２００）、エントロピーエンコーダ（１２２０）および残差エンコーダ（１２１０）の構成および特徴は、簡略化または省略されることができる。さらに、いくつかの実施形態では、エンコーダ（１２００）は、エントロピーエンコーダ（１２２０）および残差エンコーダ（１２１０）に加えて、他の要素も含む。
【０１３４】
図１２の例では、残差エンコーダ（１２１０）は、置換ユニット（１２１４）、主変換ユニット（１２１２）、二次変換ユニット（１２１６）および量子化ユニット（１２１８）を含む。いくつかの実施形態では、残差エンコーダ（１２１０）の全てのコンポーネントが図１２に描かれておらず、図示されていない。さらに、本明細書に記載される様々なユニットは、ハードウェア回路、命令を命令する処理回路、またはそれらの組み合わせを使用して実現されることができる。
【０１３５】
置換ユニット（１２１４）は、置換処理に基づいて、現在ブロックの残差画像を再配置して、置換処理情報をエントロピーデコーダ（１２２０）に提供することができる。置換ユニット（１２１４）は、再配置されたブロック（１２３２）を出力することができる。いくつかの例では、置換ユニット（１２１４）が省略または無効化された場合、残差画像は、再配置されたブロック（１２３２）として使用される。
【０１３６】
主変換ユニット（１２１２）は、再配置されたブロック（１２３２）を受信し、１つ以上の主変換に基づいて主変換処理を実行して、再配置されたブロック（１２３２）を空間領域から周波数領域に変換し、また、変換されたブロック（１２３４）を出力することができる。主変換ユニット（１２１２）は、主変換処理を実行するための１つ以上の主変換を、エントロピーエンコーダ（１２２０）に転送することができる。
【０１３７】
二次変換ユニット（１２１６）は、中間ブロック（１２３６）を得るために、変換されたブロック（１２３４）の特定の部分に対する二次変換に基づいて、二次変換処理を実行し、中間ブロック（１２３６）を得ることができる。いくつかの例では、変換されたブロック（１２３４）の特定の部分は、変換ブロック（１２３４）の低周波数部分に対応する。いくつかの例では、変換されたブロック（１２３４）の特定の部分は、変換されたブロック（１２３４）の左上部分に対応する。いくつかの例では、二次変換ユニット（１２１６）が省略または無効化された場合、変換されたブロック（１２３４）は中間ブロック（１２３６）として使用される。
【０１３８】
量子化ユニット（１２１８）は、中間ブロック（１２３６）を受信し、決定された量子化因子数および／または量子化スケーリング行列に基づいて、量子化されたブロック（１２３８）を生成し、量子化されたブロック（１２３８）をエントロピーエンコーダ（１２２０）に出力する。量子化ユニット（１２１８）はまた、採用された量子化因子および／または量子化スケーリング行列に関する情報を、エントロピーエンコーダ（１２２０）に転送することができる。
【０１３９】
最後に、エントロピーエンコーダ（１２２０）は、量子化されたブロック（１２３８）および全ての関連付けられた制御情報を、符号化されたビデオシーケンスに符号化することができる。
【０１４０】
いくつかの実施形態では、エンコーダによって実行される主変換処理は、デコーダによって実行される対応する主変換処理の逆であってもよい。いくつかの実施形態では、エンコーダによって実行される二次変換処理は、デコーダによって実行される対応する二次変換処理の逆であってもよい。
【０１４１】
図９を参照して示されるように、現在ブロックのための二次変換は、現在ブロックのための１つ以上の主変換およびフレーム内予測モードに基づいて決定されることができ、そのため、二次変換のための制御情報またはインデックスについての別個のシグナリングが省略されることができる。また、符号化プロセス中に、色度ブロックのための二次変換および／または制御情報の一部または全部は、現在ブロックまたは同一の場所に配置された輝度ブロックのための１つ以上の主変換に関連付けることによって決定されることができ、また、このような制御情報のための付加的な符号化トライアルはスキップされることができる。これにより、符号化効率を向上させることができ、画像を符号化するための計算リソースが削減されることができる。
【０１４２】
図１３は、本開示の実施形態による復号化プロセス（１３００）を概説するフローチャートを示す。当該プロセス（１３００）は、フレーム内モードで符号化されたブロックの再構築に使用されることができ、ブロックの残差画像を再構築することを含む。いくつかの実施形態では、１つ以上の動作は、当該プロセス（１３００）の前または後に実行されてもよく、図１３に示されるいくつかの動作は、並べ替えまたは省略されてもよい。
【０１４３】
様々な実施形態では、当該プロセス（１３００）は、例えば、端末デバイス（３１０）、（３２０）、（３３０）および（３４０）における処理回路、ビデオデコーダ（４１０）、（５１０）および（８１０）の機能を実行する処理回路、ビデオデコーダ（９００）の機能を実行する処理回路などの処理回路によって実行される。いくつかの実施形態では、当該プロセス（１３００）はソフトウェア命令で実現され、したがって、処理回路が当該ソフトウェア命令を実行する場合、処理回路は当該プロセス（１３００）を実行する。当該プロセスは（Ｓ１３０１）から始まり、（Ｓ１３１０）に進む。
【０１４４】
（Ｓ１３１０）では、現在ブロックの予測画像を生成するためのフレーム内予測モードを決定する。いくつかの例では、フレーム内予測モードに基づいて、図４、図５、および図８を参照して示されるように、現在ブロックの予測画像を生成することができる。
【０１４５】
（Ｓ１３２０）では、符号化されたビデオビットストリームから抽出されたシグナリング情報に基づいて、入力ブロックの１つ以上の係数を処理するための１つ以上の主変換を決定する。例えば、図９を参照して示されるように、復号化コントローラまたはエントロピーエンコーダは、符号化されたビデオビットストリームを使用して信号で通知された制御情報に基づいて、入力ブロックの１つ以上の係数を処理するための１つ以上の主変換を決定することができる。
【０１４６】
（Ｓ１３３０）では、図９を参照して示されるように、入力ブロックの１つ以上の係数を処理するための少なくとも１つ以上の主変換に基づいて、入力ブロックの１つ以上の係数を処理するための二次変換処理を実行するかどうかを決定する。二次変換処理を実行すると決定された場合、当該プロセスは（Ｓ１３４０）に進む。二次変換処理を実行しないと決定された場合、当該プロセスは（Ｓ１３５５）に進む。
【０１４７】
（Ｓ１３４０）では、決定されたフレーム内予測モードおよび決定された１つ以上の主変換に基づいて、入力ブロックの１つ以上の係数を処理するための二次変換を決定する。例えば、復号化コントローラまたはエントロピーエンコーダは、図９を参照して示されるように、決定されたフレーム内予測モードおよび決定された１つ以上の主変換に基づいて、入力ブロックの１つ以上の係数を処理するための二次変換を決定することができる。
【０１４８】
（Ｓ１３５０）では、入力ブロックの１つ以上の係数、決定された１つ以上の主変換、および決定された二次変換に基づいて、現在ブロックの残差画像を再構築する。例えば、図９を参照して示されるように、残差デコーダは、残差画像を再構築することができる。
【０１４９】
一方、（Ｓ１３５５）では、入力ブロックの１つ以上の係数、および決定された１つ以上の主変換に基づいて、現在ブロックの残差画像を再構築し、また、二次変換処理をスキップする。例えば、図９を参照して示されるように、残差デコーダは、残差画像を再構築することができる。
【０１５０】
（Ｓ１３６０）では、図４、図５および図８を参照して示されるように、予測画像および残差画像に基づいて、現在ブロックの画像を再構築する。
【０１５１】
その後、当該プロセスは、（Ｓ１３９９）に進み、終了する。
【０１５２】
図１４は、本開示の実施形態による符号化プロセス（１４００）を概説するフローチャートを示す。当該プロセス（１４００）は、フレーム内モードで符号化されたブロックの符号化に使用されることができ、ブロックの残差画像を符号化することを含む。いくつかの実施形態では、１つ以上の動作は、当該プロセス（１４００）の前または後に実行されてもよく、図１４に示されるいくつかの動作は、並べ替えまたは省略されてもよい。
【０１５３】
様々な実施例では、当該プロセス（１４００）は、例えば、端末デバイス（３１０）、（３２０）、（３３０）および（３４０）における処理回路、ビデオエンコーダ（４０３）、（６０３）および（７０３）の機能を実行する処理回路、ビデオエンコーダ（１２００）の機能を実行する処理回路などの処理回路によって実行される。いくつかの実施形態では、当該プロセス（１４００）はソフトウェア命令で実現され、したがって、処理回路が当該ソフトウェア命令を実行する場合、処理回路は当該プロセス（１４００）を実行する。当該プロセスは（Ｓ１４０１）から始まり、（Ｓ１４１０）に進む。
【０１５４】
（Ｓ１４１０）では、現在ブロックの予測画像を生成するためのフレーム内予測モードを決定する。いくつかの例では、フレーム内予測モードに基づいて、図４、図６、および図７を参照して示されるように、現在ブロックの予測画像を生成することができる。
【０１５５】
（Ｓ１４２０）では、現在ブロックの予測画像に基づいて、現在ブロックの残差画像を生成する。例えば、図４、図６および図７を参照して示されるように、エンコーダは、残差画像を生成することができる。
【０１５６】
（Ｓ１４３０）では、図４、図６および図７を参照してに示されるように、様々なトライアル符号化設定をテストすることにより、残差画像を処理するための１つ以上の主変換を決定する。
【０１５７】
（Ｓ１４４０）では、図１２を参照して示されるように、残差画像を処理するための少なくとも１つ以上の主変換に基づいて、残差画像を処理するための二次変換処理を実行するかどうかを決定する。二次変換処理を実行すると決定された場合、当該プロセスは、（Ｓ１４５０）に進む。二次変換処理を実行しないと決定された場合、当該プロセスは、（Ｓ１４６５）に進む。
【０１５８】
（Ｓ１４５０）では、決定されたフレーム内予測モードおよび決定された１つ以上の主変換に基づいて、残差画像を処理するための二次変換を決定する。例えば、図１２を参照して示されるように、符号化コントローラは、決定されたフレーム内予測モードおよび決定された１つ以上の主変換に基づいて、残差画像を処理するための二次変換を決定することができる。
【０１５９】
（Ｓ１４６０）では、残差画像、決定された１つ以上の主変換、および決定された二次変換に基づいて、変換されたブロックを生成する。例えば、図１２を参照して示されるように、残差エンコーダは、残差画像を再構築することができる。
【０１６０】
一方、（Ｓ１４６５）では、残差画像および決定された１つ以上の主変換に基づいて、変換されたブロックを生成し、二次変換処理をスキップする。例えば、図１２を参照して示されるように、残差エンコーダは、残差画像を再構築することができる。
【０１６１】
（Ｓ１４７０）では、図４、図６および図７を参照して示されるように、決定されたフレーム内予測モードおよび変換されたブロックに基づいて、現在ブロックを符号化することができる。
【０１６２】
その後、当該プロセスは、（Ｓ１４９９）に進み、終了する。
【０１６３】
上記の技術は、コンピュータ読み取り可能な命令を使用するコンピュータソフトウェアとして実現され、また、物理的に１つ以上のコンピュータ読み取り可能な媒体に記憶されることができる。例えば、図１５は、開示された主題の特定の実施形態を実現するのに適したコンピュータシステム（１５００）を示す。
【０１６４】
コンピュータソフトウェアは、任意の適切なマシンコードまたはコンピュータ言語を使用して符号化されることができ、アセンブリ、コンパイル、リンク、または同様のメカニズムを受けて命令を含むコードを作成することができ、命令は、１つ以上のコンピュータ中央処理ユニット（ＣＰＵ）、グラフィック処理ユニット（ＧＰＵ）などによって、直接的に実行されてもよく、またはコード解釈、マイクロコード実行などによって実行されてもよい。
【０１６５】
命令は、例えば、パーソナルコンピュータ、タブレットコンピュータ、サーバ、スマートフォン、ゲームデバイス、オブジェクトネットワークデバイス（ｉｎｔｅｒｎｅｔ  ｏｆ  ｔｈｉｎｇｓ  ｄｅｖｉｃｅｓ）などを含む、様々なタイプのコンピュータまたはそのコンポーネントで実行されてもよい。
【０１６６】
図１５に示されるコンピュータシステム（１５００）のコンポーネントは、本質的に例示的なものであり、本開示の実施形態を実現するコンピュータソフトウェアの使用範囲または機能に関するいかなる制限も示唆することが意図されていない。コンポーネントの構成は、コンピュータシステム（１５００）の例示的な実施形態に示されているコンポーネントのいずれかまたは組み合わせに関連する任意の依存性または要件を有すると解釈されるべきではない。
【０１６７】
コンピュータシステム（１５００）は、いくつかのヒューマンインターフェース入力デバイスを含むことができる。このようなヒューマンインターフェース入力デバイスは、触覚入力（例えば、キーストローク、スワイプ、データグローブの動きなど）、オーディオ入力（例えば、音声、拍手など）、視覚入力（例えば、ジェスチャーなど）、嗅覚入力（図示せず）によって、1人以上のユーザによる入力に応答することができる。ヒューマンインタフェースデバイスはまた、例えばオーディオ（例えば、音声、音楽、環境音など）、画像（例えば、スキャンされた画像、静止画像カメラから得られた写真画像など）、ビデオ（例えば、２次元ビデオ、立体映像を含む３次元ビデオなど）などの、人間による意識的な入力に必ずしも直接関連されているとは限らない、特定のメディアを捕捉するために使用されることもできる。
【０１６８】
ヒューマンインタフェース入力デバイスは、キーボード（１５０１）、マウス（１５０２）、トラックパッド（１５０３）、タッチスクリーン（１５１０）、データグローブ（図示せず）、ジョイスティック（１５０５）、マイクロホン（１５０６）、スキャナ（１５０７）、カメラ（１５０８）（それぞれの1つだけが図示された）のうちの１つまたは複数を含むことができる。
【０１６９】
コンピューターシステム（１５００）はまた、いくつかのヒューマンインターフェース出力デバイスを含むことができる。そのようなヒューマンインターフェース出力デバイスは、例えば、触覚出力、音、光、および嗅覚／味覚によって、１人以上のユーザの感覚を刺激することができる。このようなヒューマンインターフェース出力デバイスは、触覚出力デバイス（例えば、タッチスクリーン（１５１０）、データグローブ（図示せず）またはジョイスティック（１５０５）による触覚フィードバックであるが、入力デバイスとして作用しない触覚フィードバックデバイスであってもよい）、オーディオ出力デバイス（例えば、スピーカ（１５０９）、ヘッドホン（図示せず））、視覚出力デバイス（例えば、ＣＲＴスクリーン、ＬＣＤスクリーン、プラズマスクリーン、ＯＬＥＤスクリーンを含むスクリーン（１５１０）であり、各々は、タッチスクリーン入力機能を備えてもよく、あるいは備えていなくてもよいし、各々は、触覚フィードバック機能を備えてもよく、あるいは備えていなくてもよいし、これらのいくつかは、例えば、ステレオグラフィック出力、仮想現実メガネ（図示せず）、ホログラフィックディスプレイとスモークタンク（図示せず）、およびプリンタ（図示せず）などによって、２次元の視覚出力または３次元以上の視覚出力を出力することができる。
【０１７０】
コンピューターシステム（１５００）は、ＣＤ／ＤＶＤを有するＣＤ／ＤＶＤ  ＲＯＭ／ＲＷ（１５２０）を含む光学媒体または類似の媒体（１５２１）、サムドライブ（１５２２）、リムーバブルハードドライブまたはソリッドステートドライブ（１５２３）、テープおよびフロッピーディスク（図示せず）などのようなレガシー磁気媒体、セキュリティドングル（図示せず）などのような特殊なＲＯＭ／ＡＳＩＣ／ＰＬＤベースのデバイスなどのような、人間がアクセス可能な記憶デバイスおよびそれらに関連する媒体を含むことができる。
【０１７１】
当業者はまた、ここで開示されている主題に関連して使用される「コンピュータ読み取り可能な媒体」という用語は、伝送媒体、搬送波、または他の一時的な信号を包含しないことを理解すべきである。
【０１７２】
コンピューターシステム（１５００）はまた、一つ以上の通信ネットワークへのインターフェースを含むことができる。ネットワークは、例えば、無線、有線、光学的であってもよい。ネットワークはさらに、ローカルネットワーク、広域ネットワーク、大都市圏ネットワーク、車両用ネットワークおよび産業用ネットワーク、リアルタイムネットワーク、遅延耐性ネットワークなどであってもよい。ネットワークの例は、イーサネット（登録商標）、無線ＬＡＮ、セルラーネットワーク（ＧＳＭ（登録商標）、３Ｇ、４Ｇ、５Ｇ、ＬＴＥなど）などのＬＡＮ、テレビケーブルまたは無線広域デジタルネットワーク（有線テレビ、衛星テレビ、地上放送テレビを含む）、車両用および産業用ネットワーク（ＣＡＮＢｕｓを含む）などを含む。いくつかのネットワークは、一般に、いくつかの汎用データポートまたは周辺バス（１５４９）（例えば、コンピュータシステム（１５００）のＵＳＢポート）に接続された外部ネットワークインターフェースアダプタが必要であり、他のシステムは、通常、以下に説明するようにシステムバスに接続することによって、コンピュータシステムシステム（１５００）のコアに統合される（例えば、ＰＣコンピュータシステムへのイーサネットインターフェース、またはスマートフォンコンピュータシステムへのセルラーネットワークインターフェース）。これらのネットワークのいずれかを使用して、コンピュータシステム（１５００）は、他のエンティティと通信することができる。このような通信は、単方向の受信のみ（例えば、放送ＴＶ）、単方向の送信のみ（例えば、Ｃａｎｂｕｓから特定のＣａｎｂｕｓデバイスへ）、あるいは、双方向の、例えばローカルまたは広域デジタルネットワークを使用して他のコンピュータシステムへの通信であってもよい。上述のように、特定のプロトコルおよびプロトコルスタックは、それらのネットワークおよびネットワークインターフェースのそれぞれで使用されることができる。
【０１７３】
上記のヒューマンインターフェースデバイス、ヒューマンアクセス可能な記憶デバイス、およびネットワークインターフェースは、コンピューターシステム（１５００）のコア（１５４０）に接続されることができる。
【０１７４】
コア（１５４０）は、１つ以上の中央処理ユニット（ＣＰＵ）（１５４１）、グラフィック処理ユニット（ＧＰＵ）（１５４２）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）（１５４３）の形式の専用プログラマブル処理ユニット、特定のタスクのためのハードウェア加速器（１５４４）などを含むことができる。これらのデバイスは、リードオンリーメモリ（ＲＯＭ）（１５４５）、ランダムアクセスメモリ（１５４６）、例えば内部の非ユーザアクセスハードディスクドライブ、ＳＳＤなどの内部大容量ストレージ（１５４７）などとともに、システムバス（１５４８）を介して接続されてもよい。いくつかのコンピュータシステムでは、付加的なＣＰＵ、ＧＰＵなどによって拡張を可能にするために、システムバス（１５４８）に１つ以上の物理的プラグの形でアクセスすることができる。周辺デバイスは、コアのシステムバス（１５４８）に直接的に接続されてもよく、または周辺バス（１５４９）を介して接続されてもよい。周辺バスのアーキテクチャは、外部コントローラインターフェース（ＰＣＩ）、汎用シリアルバス（ＵＳＢ）などを含む。
【０１７５】
ＣＰＵ（１５４１）、ＧＰＵ（１５４２）、ＦＰＧＡ（１５４３）、および加速器（１５４４）は、いくつかの命令を実行することができ、これらの命令を組み合わせて上述のコンピュータコードを構成することができる。そのコンピュータコードは、ＲＯＭ（１５４５）またはＲＡＭ（１５４６）に記憶されることができる。また、一時的なデータは、ＲＡＭ（１５４６）に記憶されることができる一方、永久的なデータは、例えば内部大容量ストレージ（１５４７）に記憶されることができる。１つ以上のＣＰＵ（１５４１）、ＧＰＵ（１５４２）、大容量ストレージ（１５４７）、ＲＯＭ（１５４５）、ＲＡＭ（１５ｓ４６）などと密接に関連することができる、キャッシュメモリを使用することにより、任意のメモリデバイスに対する高速記憶および検索が可能になる。
【０１７６】
コンピュータ読み取り可能な媒体は、様々なコンピュータ実行された動作を実行するためのコンピュータコードを有することができる。媒体およびコンピュータコードは、本開示の目的のために特別に設計および構成されたものであってもよく、またはコンピュータソフトウェア分野の技術者によって知られ、利用可能な媒体およびコードであってもよい。
【０１７７】
限定ではなく例として、アーキテクチャ（１５００）、特にコア（１５４０）を有するコンピュータシステムは、１つ以上の有形な、コンピュータ読み取り可能な媒体に具体化されたソフトウェアを実行する、（ＣＰＵ、ＧＰＵ、ＦＰＧＡ、加速器などを含む）プロセッサとして機能を提供することができる。このようなコンピュータ読み取り可能な媒体は、上記のユーザがアクセス可能な大容量ストレージに関連する媒体であり、コア内部大容量ストレージ（１５４７）またはＲＯＭ（１５４５）などの、不揮発性コア（１５４０）を有する特定のストレージであってもよい。本開示の様々な実施形態を実現するソフトウェアは、そのようなデバイスに記憶され、コア（１５４０）によって実行されてもよい。コンピュータ読み取り可能な媒体は、特定のニーズに応じて、１つ以上のメモリデバイスまたはチップを含むことができる。このソフトウェアは、コア（１５４０）、具体的にはその中のプロセッサ（ＣＰＵ、ＧＰＵ、ＦＰＧＡなどを含む）に、ＲＡＭ（１５４６）に記憶されているデータ構造を定義することと、ソフトウェアによって定義されたプロセスに従ってこのようなデータ構造を変更することとを含む、本明細書に説明された特定のプロセスまたは特定のプロセスの特定の部分を実行させることができる。加えてまたは代替として、コンピュータシステムは、ロジックハードワイヤードされているか、または別の方法で回路（例えば、アクセラレータ（１５４４））に組み込まれているため、機能を提供することができ、この回路は、ソフトウェアの代わりに動作し、またはソフトウェアと一緒に動作して、本明細書に説明された特定のプロセスの特定のプロセスまたは特定の部分を実行することができる。適切な場合には、ソフトウェアへの参照はロジックを含むことができ、逆もまた然りである。適切な場合には、コンピュータ読み取り可能な媒体への参照は、実行されるソフトウェアを記憶する回路（集積回路（ＩＣ）など）を含み、実行されるロジックを具体化する回路、またはその両方を兼ね備えることができる。本開示は、ハードウェアおよびソフトウェアの任意の適切な組み合わせを包含する。
【０１７８】
付録Ａ：頭字語
ＪＥＭ：ｊｏｉｎｔ  ｅｘｐｌｏｒａｔｉｏｎ  ｍｏｄｅｌ、共同探索モデル
ＶＶＣ：ｖｅｒｓａｔｉｌｅ  ｖｉｄｅｏ  ｃｏｄｉｎｇ、汎用ビデオ符号化
ＢＭＳ：ｂｅｎｃｈｍａｒｋ  ｓｅｔ、ベンチマークセット
ＭＶ：Ｍｏｔｉｏｎ  Ｖｅｃｔｏｒ、モーションベクトル
ＨＥＶＣ：Ｈｉｇｈ  Ｅｆｆｉｃｉｅｎｃｙ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ、高効率ビデオ符号化／復号化
ＳＥＩ：Ｓｕｐｐｌｅｍｅｎｔａｒｙ  Ｅｎｈａｎｃｅｍｅｎｔ  Ｉｎｆｏｒｍａｔｉｏｎ、補足強化情報
ＶＵＩ：Ｖｉｓｕａｌ  Ｕｓａｂｉｌｉｔｙ  Ｉｎｆｏｒｍａｔｉｏｎ、ビジュアルユーザビリティ情報
ＧＯＰｓ：Ｇｒｏｕｐｓ  ｏｆ  Ｐｉｃｔｕｒｅｓ、画像のグループ
ＴＵｓ：Ｔｒａｎｓｆｏｒｍ  Ｕｎｉｔｓ、変換ユニット
ＰＵｓ：Ｐｒｅｄｉｃｔｉｏｎ  Ｕｎｉｔｓ、予測ユニット
ＣＴＵｓ：Ｃｏｄｉｎｇ  Ｔｒｅｅ  Ｕｎｉｔｓ、符号化ツリーユニット
ＣＴＢｓ：Ｃｏｄｉｎｇ  Ｔｒｅｅ  Ｂｌｏｃｋｓ、符号化ツリーブロック
ＰＢｓ：Ｐｒｅｄｉｃｔｉｏｎ  Ｂｌｏｃｋｓ、予測ブロック
ＨＲＤ：Ｈｙｐｏｔｈｅｔｉｃａｌ  Ｒｅｆｅｒｅｎｃｅ  Ｄｅｃｏｄｅｒ、仮想参照デコーダ
ＳＮＲ：Ｓｉｇｎａｌ  Ｎｏｉｓｅ  Ｒａｔｉｏ、信号雑音比
ＣＰＵｓ：Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔｓ、中央処理ユニット
ＧＰＵｓ：Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔｓ、グラフィック処理ユニット
ＣＲＴ：Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ、陰極線管
ＬＣＤ：Ｌｉｑｕｉｄ−Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ、液晶ディスプレイ
ＯＬＥＤ：Ｏｒｇａｎｉｃ  Ｌｉｇｈｔ−Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ、有機発光ダイオード
ＣＤ：Ｃｏｍｐａｃｔ  Ｄｉｓｃ、コンパクトディスク
ＤＶＤ：Ｄｉｇｉｔａｌ  Ｖｉｄｅｏ  Ｄｉｓｃ、デジタルビデオディスク
ＲＯＭ：Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ、読み取り専用メモリ
ＲＡＭ：Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ、ランダムアクセスメモリ
ＡＳＩＣ：Ａｐｐｌｉｃａｔｉｏｎ−Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ、特定用途向け集積回路
ＰＬＤ：Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ、プログラマブルロジックデバイス
ＬＡＮ：Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ、ローカルエリアネットワーク
ＧＳＭ：Ｇｌｏｂａｌ  Ｓｙｓｔｅｍ  ｆｏｒ  Ｍｏｂｉｌｅ  ｃｏｍｍｕｎｉｃａｔｉｏｎｓ、モバイル通信のグローバルシステム
ＬＴＥ：Ｌｏｎｇ−Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ、長期的な進化
ＣＡＮＢｕｓ：Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ  Ｂｕｓ、コントローラエリアネットワークバス
ＵＳＢ：Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ、汎用シリアルバス
ＰＣＩ：Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ、外部コントローラインターフェース
ＦＰＧＡ：Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙｓ、フィールドプログラマブルゲートアレイ
ＳＳＤ：ｓｏｌｉｄ−ｓｔａｔｅ  ｄｒｉｖｅ、ソリッドステートドライブ
ＩＣ：Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ、集積回路
ＣＵ：Ｃｏｄｉｎｇ  Ｕｎｉｔ、符号化ユニット
本開示は、いくつかの例示的な実施形態について説明したが、本開示の範囲内にある変更、配置、および様々な均等置換が存在している。したがって、当業者は、本明細書では明確に示されていないかまたは説明されていないが、本開示の原則を具現しているので、本開示の精神および範囲内にある、様々なシステムおよび方法を設計することができる、ということを理解されたい。
【図１】
2021517395.tif 000016
【図２】
2021517395.tif 000017
【図３】
2021517395.tif 000018
【図４】
2021517395.tif 000019
【図５】
2021517395.tif 000020
【図６】
2021517395.tif 000021
【図７】
2021517395.tif 000022
【図８】
2021517395.tif 000023
【図９】
2021517395.tif 000024
【図１０Ａ】
2021517395.tif 000025
【図１０Ｂ】
2021517395.tif 000026
【図１１】
2021517395.tif 000027
【図１２】
2021517395.tif 000028
【図１３】
2021517395.tif 000029
【図１４】
2021517395.tif 000030
【図１５】
2021517395.tif 000031
【手続補正書】
【提出日】令和2年9月28日(2020.9.28)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ビデオを復号化するためにデコーダが実行する方法であって、
現在ブロックの予測画像を生成するためのフレーム内予測モードを決定するステップと、
符号化されたビデオビットストリームから抽出されたシグナリング情報に基づいて、１つ以上の主変換を決定するステップと、
前記決定されたフレーム内予測モードと、前記決定された１つ以上の主変換とに基づいて、二次変換を決定するステップと、
前記符号化されたビデオビットストリームから抽出された入力ブロックの１つ以上の係数と、前記決定された１つ以上の主変換と、前記決定された二次変換とに基づいて、現在ブロックの残差画像を再構築するステップと、
前記現在ブロックの予測画像および残差画像に基づいて、前記現在ブロックの画像を再構築するステップと、を含む、
ことを特徴とする方法。
【請求項２】
前記１つ以上の主変換に基づいて、前記二次変換を使用して二次変換処理を実行するかどうかを決定するステップ、をさらに含み、
前記二次変換処理を実行すると決定された場合、前記二次変換を決定することと、前記決定された二次変換に基づいて前記現在ブロックの残差画像を再構築することとを実行する、
ことを特徴とする請求項１に記載の方法。
【請求項３】
前記１つ以上の主変換を決定するステップは、水平変換および垂直変換の複数のペアのうちの１つを決定するステップ、を含み、
前記二次変換を決定するステップは、複数の二次変換のうちの１つを識別し、前記識別される二次変換は、前記フレーム内予測モードと、前記水平変換および垂直変換の複数のペアのうちの１つとの組み合わせに関連付けられるステップ、を含み、また、
前記複数の二次変換のそれぞれが、前記水平変換および垂直変換の複数のペアのうちの異なるペアに関連付けられる、
ことを特徴とする請求項１または２に記載の方法。
【請求項４】
前記１つ以上の主変換を決定するステップは、前記符号化されたビデオビットストリームから抽出された第１フラグが第１値を有する場合、水平変換および垂直変換のペアがＤＣＴ−ＩＩ（離散コサイン変換−タイプＩＩ）変換であると決定するステップ、を含む、
ことを特徴とする請求項１または３に記載の方法。
【請求項５】
前記符号化されたビデオビットストリームから抽出された第１フラグが前記第１値を有する場合、前記二次変換を使用する二次変換処理を実行しないと決定するステップ、をさらに含む、
ことを特徴とする請求項４に記載の方法。
【請求項６】
前記１つ以上の主変換を決定するステップは、前記符号化されたビデオビットストリームから抽出された第１フラグが第２値を有する場合、前記符号化されたビデオビットストリームから抽出された変換インデックスに基づいて、前記水平変換および垂直変換のペアを決定するステップと、
前記符号化されたビデオビットストリームから抽出された第１フラグが前記第２値を有する場合、前記フレーム内予測モードと、前記水平変換および垂直変換のペアとに基づいて、前記二次変換を決定することを実行するステップと、を含む、
ことを特徴とする請求項４または５に記載の方法。
【請求項７】
前記符号化されたビデオビットストリームから抽出された第１フラグが第２値を有し、かつ、前記入力ブロックの１つ以上の係数が、複数個の係数のうちの１つに対応し、高周波数領域に非ゼロの係数を持たず、
前記複数個の係数の量子化レベルが閾値より小さい場合、
前記水平変換がデフォルトの水平変換であり、前記垂直変換がデフォルトの垂直変換であり、および、
前記符号化されたビデオビットストリームから抽出された第１フラグが前記第２値を有する場合、前記フレーム内予測モードと、前記デフォルトの水平変換と、前記デフォルトの垂直変換とに基づいて、前記二次変換を決定することを実行する、
ことを特徴とする請求項４または５に記載の方法。
【請求項８】
前記ブロックが色度ブロックであり、かつ、
前記決定されたフレーム内予測モードと、前記符号化されたビデオビットストリームから抽出されたシグナリング情報に基づいて１つ以上の同一の場所に配置された輝度ブロックに対して決定された１つ以上の主変換と、前記１つ以上の同一の場所に配置された輝度ブロックに対して決定された１つ以上の二次変換とに基づいて、前記１つ以上の主変換を決定することを実行する、
ことを特徴とする請求項１−７のうちの何れか１項に記載の方法。
【請求項９】
前記ブロックが色度ブロックであり、かつ、
前記現在ブロックが直接モードによって予測された色度成分を有する場合のみ、１つ以上の同一の場所に配置された輝度ブロックに対して決定された１つ以上の主変換と、前記１つ以上の同一の場所に配置された輝度ブロックに対して決定された１つ以上の二次変換とに基づいて、前記１つ以上の主変換を決定することを実行する、
ことを特徴とする請求項１−７のうちの何れか１項に記載の方法。
【請求項１０】
前記１つ以上の主変換を決定するステップは、前記符号化されたビデオビットストリームから抽出された変換インデックスに基づいて、ＤＣＴ−ＩＩ（離散コサイン変換−タイプＩＩ）変換およびＤＳＴ−ＶＩＩ（離散サイン変換−タイプＶＩＩ）変換を含む候補変換のみから、水平変換および垂直変換のペアを決定するステップを含み、および、
前記主変換を実行した後に、さらに、前記決定されたフレーム内予測モードおよび前記変換インデックスに基づいて決定された置換処理を実行することに基づいて、前記残差画像を再構築することを実行する、
ことを特徴とする請求項１または９に記載の方法。
【請求項１１】
前記１つ以上の主変換を決定するステップは、前記フレーム内予測モードが垂直モードおよび水平モードのうちの一つに対応する場合、前記フレーム内予測モードと、前記符号化されたビデオビットストリームから抽出された変換インデックスとに基づいて、水平変換および垂直変換のペアを決定するステップ、を含む、
ことを特徴とする請求項１または９に記載の方法。
【請求項１２】
前記１つ以上の主変換を決定するステップは、前記符号化されたビデオビットストリームが水平変換および垂直変換のうちの一つのみに使用される変換インデックスを含む場合、
前記符号化されたビデオビットストリームから抽出された変換インデックスに基づいて、前記水平変換および垂直変換のうちの一つを決定し、かつ、
前記水平変換および垂直変換のうちのもう一つをデフォルト変換に決定するステップ、を含む、
ことを特徴とする請求項１または９に記載の方法。
【請求項１３】
処理回路を含む装置であって、前記処理回路は、
現在ブロックの予測画像を生成するためのフレーム内予測モードを決定し、
符号化されたビデオビットストリームから抽出されたシグナリング情報に基づいて、１つ以上の主変換を決定し、
前記決定されたフレーム内予測モードと、前記決定された１つ以上の主変換とに基づいて、二次変換を決定し、
前記符号化されたビデオビットストリームから抽出された入力ブロックの１つ以上の係数と、前記決定された１つ以上の主変換と、前記決定された二次変換とに基づいて、現在ブロックの残差画像を再構築し、
前記現在ブロックの予測画像および残差画像に基づいて、前記現在ブロックの画像を再構築するように構成される、
ことを特徴とする装置。
【請求項１４】
前記処理回路は、
前記１つ以上の主変換に基づいて、前記二次変換を使用して二次変換処理を実行するかどうかを決定し、
前記二次変換処理を実行すると決定された場合、前記二次変換を決定し、前記決定された二次変換に基づいて現在ブロックの残差画像を再構築するように構成される、
ことを特徴とする請求項１３に記載の装置。
【請求項１５】
前記処理回路は、
水平変換および垂直変換の複数のペアのうちの１つを決定し、
複数の二次変換のうちの１つを識別し、前記識別される二次変換は、前記フレーム内予測モードと、前記水平変換および垂直変換の複数のペアのうちの１つとの組み合わせに関連付けられるように構成され、
ここで、前記複数の二次変換のそれぞれが、前記水平変換および垂直変換の複数のペアのうちの異なるペアに関連付けられる、
ことを特徴とする請求項１３または１４に記載の装置。
【請求項１６】
前記処理回路は、
前記符号化されたビデオビットストリームから抽出された第１フラグが第１値を有する場合、水平変換および垂直変換のペアがＤＣＴ−ＩＩ（離散コサイン変換−タイプＩＩ）変換であると決定するように構成される、
ことを特徴とする請求項１３または１５に記載の装置。
【請求項１７】
前記処理回路は、
前記符号化されたビデオビットストリームから抽出された第１フラグが第２値を有する場合、前記符号化されたビデオビットストリームから抽出された変換インデックスに基づいて、前記水平変換および垂直変換のペアを決定し、
前記符号化されたビデオビットストリームから抽出された第１フラグが前記第２値を有する場合、前記フレーム内予測モードと、前記水平変換および垂直変換のペアとに基づいて、前記二次変換を決定するように構成される、
ことを特徴とする請求項１６に記載の装置。
【請求項１８】
前記符号化されたビデオビットストリームから抽出された第１フラグが第２値を有し、かつ
前記入力ブロックの１つ以上の係数が、複数個の係数のうちの１つに対応し、高周波数領域に非ゼロの係数を持たず、
前記複数個の係数の量子化レベルが閾値より小さい場合、
前記水平変換がデフォルトの水平変換であり、前記垂直変換がデフォルトの垂直変換であり、および、
前記処理回路は、前記符号化されたビデオビットストリームから抽出された第１フラグが第２値を有する場合、前記フレーム内予測モードと、前記デフォルトの水平変換と、前記デフォルトの垂直変換とに基づいて、前記二次変換を決定するように構成される、
ことを特徴とする請求項１６に記載の装置。
【請求項１９】
前記現在ブロックが色度ブロックであり、
前記処理回路は、前記決定されたフレーム内予測モードと、前記符号化されたビデオビットストリームから抽出されたシグナリング情報に基づいて１つ以上の同一の場所に配置された輝度ブロックに対して決定された１つ以上の主変換と、前記１つ以上の同一の場所に配置された輝度ブロックに対して決定された１つ以上の二次変換とに基づいて、前記１つ以上の主変換を決定するように構成される、
ことを特徴とする請求項１３−１８のうちの何れか１項に記載の装置。
【請求項２０】
ビデオ復号化装置のコンピュータに、
現在ブロックの予測画像を生成するためのフレーム内予測モードを決定することと、
符号化されたビデオビットストリームから抽出されたシグナリング情報に基づいて、１つ以上の主変換を決定することと、
前記決定されたフレーム内予測モードと、前記決定された１つ以上の主変換とに基づいて、二次変換を決定することと、
前記符号化されたビデオビットストリームから抽出された入力ブロックの１つ以上の係数と、前記決定された１つ以上の主変換と、前記決定された二次変換とに基づいて、現在ブロックの残差画像を再構築することと、
前記現在ブロックの予測画像および残差画像に基づいて、前記現在ブロックの画像を再構築することと、
を実行させることを特徴とするコンピュータプログラム。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００２
【補正方法】変更
【補正の内容】
【０００２】
本明細書で提供される背景技術の説明は、本開示のコンテキストを全体的に示すことを目的とする。この背景技術部分及び本明細書の各態様において説明された、現在署名されている発明者の研究は、本開示の提出時に先行技術として示されていない可能性があり、また、明示的にも黙示的にも本開示の先行技術として認めていない。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００１０
【補正方法】変更
【補正の内容】
【００１０】
図１を参照して、右下には、Ｈ．２６５の３５個の予測可能な方向から知られている９つの予測方向のサブセットが描かれている。矢印が収束する点（１０１）は、予測されているサンプルを表す。矢印は、サンプルが予測されている方向を表す。例えば、矢印（１０２）は、サンプル（１０１）が水平から４５度の角度にある右上の１つ以上のサンプルから予測されることを示す。同様に、矢印（１０３）は、サンプル（１０１）が水平から２２．５度の角度にあるサンプル（１０１）の左下の１つ以上のサンプルから予測されることを示す。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００１６
【補正方法】変更
【補正の内容】
【００１６】
フレーム内予測方向から符号化されたビデオビットストリームにおける方向を表すビットへのマッピングは、ビデオ符号化技術によって異なる可能性があり、また、例えば、予測方向への簡単な直接マッピングから、フレーム内予測モード、コードワード、最も可能性が高いモードを含む複雑な適応スキーム、および類似な技術まで、様々なものがある。しかしながら、すべての場合に、ビデオコンテンツにおいて、他の特定の方向よりも統計的に発生する可能性が低い特定の方向が存在する可能性がある。ビデオ圧縮の目的は冗長性の削減であるため、それらの可能性が低い方向は、適切に機能するビデオ符号化技術では、可能性が高い方向よりも多くのビットで表される。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００５２
【補正方法】変更
【補正の内容】
【００５２】
ビデオソース（６０１）は、ビデオエンコーダ（６０３）によって符号化されたソースビデオシーケンスをデジタルビデオサンプルストリームの形式で提供することができ、デジタルビデオサンプルストリームは、任意の適切なビット深度（例えば、８ビット、１０ビット、１２ビット…）、任意の色空間（例えば、ＢＴ．６０１  Ｙ  ＣｒＣＢ、ＲＧＢ…）及び任意の適切なサンプリング構造（例えば、Ｙ  ＣｒＣｂ  ４：２：０、Ｙ  ＣｒＣｂ  ４：４：４）を有することができる。メディアサービスシステムでは、ビデオソース（６０１）は、以前に準備されたビデオを記憶する記憶デバイスであってもよい。ビデオ会議システムでは、ビデオソース（６０１）は、ローカル画像情報をビデオシーケンスとして捕捉するカメラであってもよい。ビデオデータは、順番に見られるときに動きを与える複数の個別の画像として提供されることができる。画像自体は、空間画素アレイとして構成されてもよく、ここで、各画素は、使用中のサンプリング構造、色空間などに応じて、１つ以上のサンプルを含むことができる。当業者は、画素とサンプルとの間の関係を容易に理解することができる。以下の説明は、サンプルに焦点を当てる。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００５４
【補正方法】変更
【補正の内容】
【００５４】
いくつかの実施形態では、ビデオエンコーダ（６０３）は、符号化ループで動作するように構成される。過度に簡単化された説明として、一例では、符号化ループは、ソースコーダ（６３０）（例えば、符号化される入力画像と、参照画像とに基づいて、シンボルストリームなどのようなシンボルを作成することを担当する）と、ビデオエンコーダ（６０３）に埋め込まれた（ローカル）デコーダ（６３３）とを含むことができる。デコーダ（６３３）は、（リモート）デコーダがサンプルデータを作成すると同様の方法でシンボルを再構築してサンプルデータを作成する（開示された主題で考慮されているビデオ圧縮技術では、シンボルと符号化されたビデオビットストリームとの間の任意の圧縮が無損失であるからである）。再構築されたサンプルストリーム（サンプルデータ）は、参照画像メモリ（６３４）に入力される。シンボルストリームの復号化により、デコーダの位置（ローカルまたはリモート）に関係なくビット正確な結果が得られるため、参照画像メモリ（６３４）のコンテンツは、「ローカル」デコーダ（６３３）と「リモート」デコーダの間でもビット正確に対応する。言い換えれば、エンコーダの予測部分が「見た」参照画像サンプルは、デコーダが復号化期間に予測を使用する際に「見た」サンプル値と全く同じである。この参照画像の同期性の基本原理（および、例えばチャネル誤差の原因で同期性が維持されない場合にはドリフトが生じる）は、いくつかの関連技術でも使用されている。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００５６
【補正方法】変更
【補正の内容】
【００５６】
この時点で、デコーダに存在する解析／エントロピー復号化以外のいかなるデコーダ技術も、対応するエンコーダにおいて、実質的に同一の機能形式で必ず存在する必要がある、ということが分かる。このため、開示された主題は、デコーダ動作に焦点を合わせる。エンコーダ技術の説明は、包括的に説明されたデコーダ技術の逆であるため、省略されることができる。特定の領域だけで、より詳細な説明が必要であり、以下で提供される。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００５７
【補正方法】変更
【補正の内容】
【００５７】
動作中に、いくつかの実施形態では、ソースコーダ（６３０）は、動き補償予測符号化を実行することができ、動き補償予測符号化は、ビデオシーケンスから「参照画像」として指定された１つ以上の以前に符号化された画像を参照して、入力画像を予測的に符号化する。このようにして、符号化エンジン（６３２）は、入力画像の画素ブロックと、入力画像に対する予測参照として選択されることができる参照画像の画素ブロックとの間の差分を符号化する。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】０１７８
【補正方法】変更
【補正の内容】
【０１７８】
付録Ａ：略語
ＪＥＭ：ｊｏｉｎｔ  ｅｘｐｌｏｒａｔｉｏｎ  ｍｏｄｅｌ、共同探索モデル
ＶＶＣ：ｖｅｒｓａｔｉｌｅ  ｖｉｄｅｏ  ｃｏｄｉｎｇ、汎用ビデオ符号化
ＢＭＳ：ｂｅｎｃｈｍａｒｋ  ｓｅｔ、ベンチマークセット
ＭＶ：Ｍｏｔｉｏｎ  Ｖｅｃｔｏｒ、モーションベクトル
ＨＥＶＣ：Ｈｉｇｈ  Ｅｆｆｉｃｉｅｎｃｙ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ、高効率ビデオ符号化／復号化
ＳＥＩ：Ｓｕｐｐｌｅｍｅｎｔａｒｙ  Ｅｎｈａｎｃｅｍｅｎｔ  Ｉｎｆｏｒｍａｔｉｏｎ、補足強化情報
ＶＵＩ：Ｖｉｓｕａｌ  Ｕｓａｂｉｌｉｔｙ  Ｉｎｆｏｒｍａｔｉｏｎ、ビジュアルユーザビリティ情報
ＧＯＰｓ：Ｇｒｏｕｐｓ  ｏｆ  Ｐｉｃｔｕｒｅｓ、画像のグループ
ＴＵｓ：Ｔｒａｎｓｆｏｒｍ  Ｕｎｉｔｓ、変換ユニット
ＰＵｓ：Ｐｒｅｄｉｃｔｉｏｎ  Ｕｎｉｔｓ、予測ユニット
ＣＴＵｓ：Ｃｏｄｉｎｇ  Ｔｒｅｅ  Ｕｎｉｔｓ、符号化ツリーユニット
ＣＴＢｓ：Ｃｏｄｉｎｇ  Ｔｒｅｅ  Ｂｌｏｃｋｓ、符号化ツリーブロック
ＰＢｓ：Ｐｒｅｄｉｃｔｉｏｎ  Ｂｌｏｃｋｓ、予測ブロック
ＨＲＤ：Ｈｙｐｏｔｈｅｔｉｃａｌ  Ｒｅｆｅｒｅｎｃｅ  Ｄｅｃｏｄｅｒ、仮想参照デコーダ
ＳＮＲ：Ｓｉｇｎａｌ  Ｎｏｉｓｅ  Ｒａｔｉｏ、信号雑音比
ＣＰＵｓ：Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔｓ、中央処理ユニット
ＧＰＵｓ：Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔｓ、グラフィック処理ユニット
ＣＲＴ：Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ、陰極線管
ＬＣＤ：Ｌｉｑｕｉｄ−Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ、液晶ディスプレイ
ＯＬＥＤ：Ｏｒｇａｎｉｃ  Ｌｉｇｈｔ−Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ、有機発光ダイオード
ＣＤ：Ｃｏｍｐａｃｔ  Ｄｉｓｃ、コンパクトディスク
ＤＶＤ：Ｄｉｇｉｔａｌ  Ｖｉｄｅｏ  Ｄｉｓｃ、デジタルビデオディスク
ＲＯＭ：Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ、読み取り専用メモリ
ＲＡＭ：Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ、ランダムアクセスメモリ
ＡＳＩＣ：Ａｐｐｌｉｃａｔｉｏｎ−Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ、特定用途向け集積回路
ＰＬＤ：Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ、プログラマブルロジックデバイス
ＬＡＮ：Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ、ローカルエリアネットワーク
ＧＳＭ：Ｇｌｏｂａｌ  Ｓｙｓｔｅｍ  ｆｏｒ  Ｍｏｂｉｌｅ  ｃｏｍｍｕｎｉｃａｔｉｏｎｓ、モバイル通信のグローバルシステム
ＬＴＥ：Ｌｏｎｇ−Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ、ロングタームエボリューション
ＣＡＮＢｕｓ：Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ  Ｂｕｓ、コントローラエリアネットワークバス
ＵＳＢ：Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ、汎用シリアルバス
ＰＣＩ：Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ、外部コントローラインターフェース
ＦＰＧＡ：Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙｓ、フィールドプログラマブルゲートアレイ
ＳＳＤ：ｓｏｌｉｄ−ｓｔａｔｅ  ｄｒｉｖｅ、ソリッドステートドライブ
ＩＣ：Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ、集積回路
ＣＵ：Ｃｏｄｉｎｇ  Ｕｎｉｔ、符号化ユニット
本開示は、いくつかの例示的な実施形態について説明したが、本開示の範囲内にある変更、配置、および様々な均等置換が存在している。したがって、当業者は、本明細書では明確に示されていないかまたは説明されていないが、本開示の原則を具現しているので、本開示の精神および範囲内にある、様々なシステムおよび方法を設計することができる、ということを理解されたい。
【国際調査報告】
2021517395.tif 000032