(57)【特許請求の範囲】
【請求項１】
ビデオコーディングシステムにおいて量子化マトリクスに従ってトランスフォームブロックを処理する方法であって、
第１のサイズを有する１又はそれ以上の初期量子化マトリクスを受け取るステップと、
前記１又はそれ以上の初期量子化マトリクスの中の１つから、第２のサイズを有する１又はそれ以上の派生量子化マトリクスを導出するステップであり、前記第１のサイズは前記第２のサイズと異なる、ステップと、
前記第１のサイズの１つ又は前記第２のサイズの１つに等しいブロックサイズを有し、ピクチャに関連付けられるトランスフォームブロックを受け取るステップと、
前記ブロックサイズが前記第１のサイズの１つに等しい場合は、前記１又はそれ以上の初期量子化マトリクスの夫々１つに従って前記トランスフォームブロックを処理するステップと、
前記ブロックサイズが前記第２のサイズの１つに等しい場合は、前記１又はそれ以上の派生量子化マトリクスの夫々１つに従って前記トランスフォームブロックを処理するステップと
を有し、
前記１又はそれ以上の派生量子化マトリクスを導出するステップは、１の正方な初期量子化マトリクス及び１の正方な派生量子化マトリクスの最低空間周波数に対応するエントリを整列させることにより、前記１の正方な初期量子化マトリクスを前記１の正方な派生量子化マトリクスの低周波数エントリへマッピングし、前記１の正方な初期量子化マトリクスは、前記１の正方な派生量子化マトリクスよりも小さい、
方法。
【請求項２】
前記１又はそれ以上の初期量子化マトリクスは、４×４量子化マトリクス及び８×８量子化マトリクスを有し、前記４×４量子化マトリクス及び前記８×８量子化マトリクスは、デフォルトの量子化マトリクスであり、前記１又はそれ以上の派生量子化マトリクスは全て、８×８よりも大きい正方トランスフォームブロックサイズに対応する、
請求項１に記載の方法。
【請求項３】
前記１又はそれ以上の初期量子化マトリクスは、１又はそれ以上の正方な初期量子化マトリクスを有し、該１又はそれ以上の正方な初期量子化マトリクスは、デフォルトの量子化マトリクスであり、前記１又はそれ以上の派生量子化マトリクスは全て、矩形トランスフォームブロックサイズに対応する、
請求項１に記載の方法。
【請求項４】
前記１又はそれ以上の初期量子化マトリクスは、４×４量子化マトリクス及び８×８量子化マトリクスを有し、前記４×４量子化マトリクス及び前記８×８量子化マトリクスは、ユーザ定義の量子化マトリクスであり、前記１又はそれ以上の派生量子化マトリクスは全て、８×８よりも大きい正方トランスフォームブロックサイズに対応する、
請求項１に記載の方法。
【請求項５】
前記１又はそれ以上の初期量子化マトリクスは、１又はそれ以上の正方な初期量子化マトリクスを有し、該１又はそれ以上の正方な初期量子化マトリクスは、ユーザ定義の量子化マトリクスであり、前記１又はそれ以上の派生量子化マトリクスは全て、矩形トランスフォームブロックサイズに対応する、
請求項１に記載の方法。
【請求項６】
フラグは、デフォルトの量子化マトリクスが各シーケンスについて使用されるかどうかを示すようシーケンスレベルにおいて組み込まれる、
請求項１に記載の方法。
【請求項７】
フラグは、シーケンスレベルの量子化マトリクスが現在のピクチャについて使用されるかどうかを示すようピクチャレベルにおいて組み込まれる、
請求項１に記載の方法。
【請求項８】
フラグは、シーケンスレベルの量子化マトリクスが現在のピクチャについて使用されるかどうかを示すよう適応レベルにおいて組み込まれる、
請求項１に記載の方法。
【請求項９】
フラグは、シーケンスレベルの量子化マトリクスが前記１又はそれ以上の初期量子化マトリクスから導出されるかどうかを示すようピクチャレベルにおいて組み込まれ、前記１又はそれ以上の初期量子化マトリクスは、４×４量子化マトリクス及び８×８量子化マトリクスを有する、
請求項１に記載の方法。
【請求項１０】
フラグは、シーケンスレベルの量子化マトリクスが前記１又はそれ以上の初期量子化マトリクスから導出されるかどうかを示すよう適応レベルにおいて組み込まれ、前記１又はそれ以上の初期量子化マトリクスは、４×４量子化マトリクス及び８×８量子化マトリクスを有する、
請求項１に記載の方法。
【請求項１１】
前記１又はそれ以上の初期量子化マトリクスは、４×４量子化マトリクス及び８×８量子化マトリクスを有し、前記１又はそれ以上の派生量子化マトリクスは、１６×１６量子化マトリクス及び３２×３２量子化マトリクスを有する、
請求項１に記載の方法。
【請求項１２】
前記１又はそれ以上の派生量子化マトリクスは、１６×４、４×１６、３２×８、及び８×３２の量子化マトリクスを更に有する、
請求項１１に記載の方法。
【請求項１３】
シンタックス情報は、前記第２のサイズが全て前記ブロックサイズに関連する矩形サイズを含むことを示すようビデオビットストリームにおいて組み込まれる、
請求項１に記載の方法。
【請求項１４】
シンタックス情報は、前記第２のサイズが全て８×８よりも大きいブロックサイズに関連するサイズを含むことを示すようビデオビットストリームにおいて組み込まれる、
請求項１に記載の方法。
【請求項１５】
前記１又はそれ以上の派生量子化マトリクスを導出するステップは、空間周波数アップサンプリング及び線形補間／外挿、又は空間周波数アップサンプリング及びサンプル繰り返しのいずれかにより、１の正方な初期量子化マトリクスを１の正方な派生量子化マトリクスへ変換し、前記１の正方な初期量子化マトリクスは、前記１の正方な派生量子化マトリクスよりも小さい、
請求項１に記載の方法。
【請求項１６】
前記空間周波数アップサンプリングは、終点が整列された空間周波数アップサンプリングを有する、
請求項１５に記載の方法。
【請求項１７】
前記１又はそれ以上の派生量子化マトリクスを導出するステップは、データ外挿により前記１の正方な派生量子化マトリクスの残りのエントリを生成する、
請求項１に記載の方法。
【請求項１８】
前記１又はそれ以上の派生量子化マトリクスは、１又はそれ以上の派生矩形量子化マトリクスを有し、該１又はそれ以上の派生矩形量子化マトリクスは、空間周波数デシメーションにより夫々の正方な派生量子化マトリクスから導出される、
請求項１に記載の方法。
【請求項１９】
前記１又はそれ以上の初期量子化マトリクスは、１又はそれ以上の正方な初期量子化マトリクスを有し、該１又はそれ以上の正方な初期量子化マトリクスは、夫々の１又はそれ以上のより大きい正方な初期量子化マトリクスから変換された１又はそれ以上の変換初期量子化マトリクスであり、該１又はそれ以上の変換初期量子化マトリクスは、前記１又はそれ以上の派生量子化マトリクスを導出するステップにおいて前記１又はそれ以上の初期量子化マトリクスとして使用される、
請求項１に記載の方法。
【請求項２０】
前記１又はそれ以上の初期量子化マトリクスは、第１の８×８正方初期量子化マトリクス及び第２の８×８正方初期量子化マトリクスを有し、前記第１の８×８正方初期量子化マトリクスは、１６×１６正方初期量子化マトリクスから変換され、前記第２の８×８正方初期量子化マトリクスは、３２×３２正方初期量子化マトリクスから変換される、
請求項１９に記載の方法。
【請求項２１】
前記１又はそれ以上の正方な初期量子化マトリクスは、空間周波数デシメーションに基づき前記夫々の１又はそれ以上のより大きい正方な初期量子化マトリクスから変換される、
請求項１９に記載の方法。
【請求項２２】
前記１又はそれ以上の正方な初期量子化マトリクスは、該１又はそれ以上の正方な初期量子化マトリクス及び前記夫々の１又はそれ以上のより大きい正方な初期量子化マトリクスの最低空間周波数に対応するエントリが整列されるように前記夫々の１又はそれ以上のより大きい正方な初期量子化マトリクスの低周波数エントリを前記１又はそれ以上の正方な初期量子化マトリクスへマッピングすることに基づき、前記夫々の１又はそれ以上のより大きい正方な初期量子化マトリクスから変換される、
請求項１９に記載の方法。
【請求項２３】
トランスフォームブロックが量子化マトリクスに従って処理されるビデオコーディングシステムであって、
第１のサイズを有する１又はそれ以上の初期量子化マトリクスを受け取り、
前記１又はそれ以上の初期量子化マトリクスの中の１つから、第２のサイズを有する１又はそれ以上の派生量子化マトリクスを導出し、ただし前記第１のサイズは前記第２のサイズと異なり、
前記第１のサイズの１つ又は前記第２のサイズの１つに等しいブロックサイズを有するトランスフォームブロックを受け取り、
前記ブロックサイズが前記第１のサイズの１つに等しい場合は、前記１又はそれ以上の初期量子化マトリクスの夫々１つに従って前記トランスフォームブロックを処理し、
前記ブロックサイズが前記第２のサイズの１つに等しい場合は、前記１又はそれ以上の派生量子化マトリクスの夫々１つに従って前記トランスフォームブロックを処理する
よう構成される第１の電子回路
を有し、
前記の１又はそれ以上の派生量子化マトリクスの導出は、１の正方な初期量子化マトリクス及び１の正方な派生量子化マトリクスの最低空間周波数に対応するエントリを整列させることにより、前記１の正方な初期量子化マトリクスを前記１の正方な派生量子化マトリクスの低周波数エントリへマッピングし、前記１の正方な初期量子化マトリクスは、前記１の正方な派生量子化マトリクスよりも小さい、
システム。
【請求項２４】
第２の電子回路を更に有し、
前記１又はそれ以上の初期量子化マトリクスは、１又はそれ以上の正方な初期量子化マトリクスを有し、該１又はそれ以上の正方な初期量子化マトリクスは、前記第２の電子回路においてハードワイヤードである、
請求項２３に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビデオコーディングに関する。特に、本発明は、量子化マトリクスに従うトランスフォームブロック処理に関する。
【背景技術】
【０００２】
量子化マトリクスは、本来的なビデオ品質を改善するために、ＭＰＥＧ−２及びＨ．２６４／ＡＶＣのような様々なビデオコーディング標準において利用されてきた。変換係数の夫々は、量子化マトリクス（又はスケーリングマトリクス）によって特定される個々の量子化ステップに従って量子化される。その有効性により、量子化マトリクスは、新生のＨＥＶＣ（High  Efficiency  Video  Coding）システムによっても導入されている。量子化マトリクスは通常、システムによって使用される変換として同じ次元を有する。例えば、ＭＰＥＧ−２及びＨ．２６４／ＡＶＣにおいて、変換サイズは８×８及び４×４を含む。従って、量子化マトリクスのサイズも４×４及び８×８をサポートする。デフォルトの量子化マトリクス及びユーザ定義の量子化マトリクスがＨ．２６４／ＡＶＣにおいて使用される。更に、別個の量子化マトリクスが、Ｈ．２６４／ＡＶＣにおいてイントラモード及びインターモードのために選択される。イントラ４×４、インター４×４、イントラ８×８及びインター８×８のための量子化マトリクスは夫々、図１Ａ〜Ｄにおいて示される。エンコーダは、現在のピクチャが均一（flat）量子化マトリクス、デフォルトの量子化マトリクス又はユーザ定義の量子化マトリクスを使用するかどうかを決定することができる。ユーザ定義の量子化マトリクスが選択される場合は、量子化マトリクスに関連する情報がビットストリームにおいて組み込まれ、デコーダが対応する量子化マトリクスを回復することができるようにする。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
ＭＰＥＧ−２及びＨ．２６４／ＡＶＣにおいて、量子化マトリクスの最大サイズは８×８である。デフォルトの量子化マトリクスを記憶するメモリ要求は相対的に小さく、それはコーディングシステムにとって如何なる有意な問題ももたらさない。ユーザ定義の量子化マトリクスが使用される場合に、ユーザ定義の量子化マトリクスに関連するデータサイズも大きな問題ではない。それにも関わらず、ＨＥＶＣにおいては、更なる変換サイズが採用されており、変換サイズは３２×３２の大きさでありうる。例えば、２つ（イントラ及びインター）の４×４デフォルト量子化マトリクス及び２つの８×８デフォルト量子化マトリクスを記憶するには、１６０バイトしか必要とされない。同じようにただ２つの３２×３２デフォルト量子化マトリクスを記憶するには、２０４８バイトが必要とされる。ＭＰＥＧ−２／Ｈ２６４／ＡＶＣ及びＨＥＶＣのための量子化マトリクスの総ストレージ要求は夫々、表１及び２において示される。表に示されるように、ＨＥＶＣにおける量子化マトリクスのためのデータサイズ要求は大いに増大される（１８倍以上）。高速なハードウェアベースの実施のために、量子化マトリクスはハードワイヤードであってよく、量子化マトリクスに関連するデータサイズは装置に対して有意な影響を有する。従って、量子化マトリクスを記憶するために必要とされるデータサイズを減らすことができる新たな量子化マトリクス表現法を開発することが非常に望まれる。ユーザ定義の量子化マトリクスが使用される場合に、大きな量子化マトリクスは、相当な大きさの貴重なビットレートを消費する。従って、ユーザ定義の量子化マトリクスを変換するデータレートを減らすことができる新たな量子化マトリクス表現法を開発することも望まれる。
【０００４】
【表１】
0005815853.tif 000002
【０００５】
【表２】
0005815853.tif 000003
【課題を解決するための手段】
【０００６】
ビデオコーディングシステムにおいて量子化マトリクスに従ってトランスフォームブロックを処理する方法及びシステムが開示される。本発明の実施形態は、１以上の初期量子化マトリクスから又は１の以前に導出された量子化マトリクスから１以上の派生量子化マトリクスを導出する。一実施形態において、初期量子化マトリクスは４×４及び８×８の量子化マトリクスを含み、これらはデフォルト又はユーザ定義のいずれかであってよい。他の実施形態では、８×８よりも大きい全ての量子化マトリクスは、４×４及び８×８の初期量子化マトリクスから導出され得る。更なる他の実施形態では、全ての矩形量子化マトリクスは、４×４及び８×８の初期量子化マトリクスから導出され得る。
【０００７】
本発明の一態様は、初期量子化マトリクスを派生量子化マトリクスへ変換する方法を扱う。より小さい正方な初期量子化マトリクスは、空間周波数アップサンプリング及び線形補間、又は空間周波数アップサンプリング及びサンプル繰り返しのいずれかにより、より大きい正方な派生量子化マトリクスへ変換され得る。代替的に、この変換は、より小さい正方な初期量子化マトリクス及びより大きい正方な派生量子化マトリクスの最低空間周波数に対応するエントリを整列させることによって、より小さい正方な初期量子化マトリクスをより大きい派生量子化マトリクスの低周波数エントリへマッピングすることで達成され得る。
【０００８】
本発明の一態様は、正方サイズを有する初期量子化マトリクスを導出することを扱う。該初期量子化マトリクスは、記憶又は送信されないより大きい正方な初期量子化マトリクスから導出され得る。導出は、空間周波数デシメーションに従って実行され得る。代替的に、導出は、前記正方な初期量子化マトリクス及び前記より大きい正方な初期量子化マトリクスの最低空間周波数に対応するエントリを整列させるように前記より大きい正方な初期量子化マトリクスの低周波数エントリを前記正方な初期量子化マトリクスへマッピングすることで実行され得る。
【０００９】
本発明の一態様は、量子化マトリクス表現を可能にするシンタックス設計を扱う。フラグは、デフォルトの量子化マトリクスが各シーケンスについて使用されるかどうかを示すようシーケンスレベルにおいて組み込まれ得る。フラグはまた、シーケンスレベルの量子化マトリクスが現在のピクチャについて使用されるかどうかを示すよう適応レベル又はピクチャレベルにおいて組み込まれ得る。シンタックス情報は、８×８よりも大きいサイズを有する全ての量子化マトリクスが初期量子化マトリクスから導出されることを示すようビデオビットストリームにおいて組み込まれ得る。また、シンタックス情報は、全ての矩形量子化マトリクスが初期量子化マトリクスから導出されることを示すようビデオビットストリームにおいて組み込まれ得る。
【図面の簡単な説明】
【００１０】
【図１Ａ】イントラ４×４のためにＡＶＣにおいて使用される量子化マトリクスを表す。
【図１Ｂ】インター４×４のためにＡＶＣにおいて使用される量子化マトリクスを表す。
【図１Ｃ】イントラ８×８のためにＡＶＣにおいて使用される量子化マトリクスを表す。
【図１Ｄ】インター８×８のためにＡＶＣにおいて使用される量子化マトリクスを表す。
【図２】空間周波数アップサンプリング及び線形補間により８×８量子化マトリクスを１６×１６量子化マトリクスへ変換する例を表す。
【図３Ａ】空間周波数アップサンプリング及び線形補間により１６×１６派生量子化マトリクスを３２×３２量子化マトリクスへ変換する例を表す。
【図３Ｂ】空間周波数アップサンプリング及び線形補間により１６×１６派生量子化マトリクスを３２×３２量子化マトリクスへ変換する例を表す。
【図４Ａ】４×１６及び１６×６の量子化マトリクスを１６×１６量子化マトリクスから導出する例を表す。
【図４Ｂ】４×１６及び１６×６の量子化マトリクスを１６×１６量子化マトリクスから導出する例を表す。
【図４Ｃ】４×１６及び１６×６の量子化マトリクスを１６×１６量子化マトリクスから導出する例を表す。
【図５】図３Ａ及びＢの３２×３２量子化マトリクスから３２×８量子化マトリクスを導出する例を表す。
【図６】８×８量子化マトリクスが１６×１６及び３２×３２の量子化マトリクスを導出するために使用される場合に、４×４量子化マトリクス及び８×８量子化マトリクスに基づく量子化マトリクス表現の例を表す。
【図７】１６×１６及び３２×３２の量子化マトリクスが夫々の８×８量子化マトリクスから導出される場合に、１つの４×４量子化マトリクス及び３つの８×８量子化マトリクスに基づく量子化マトリクス表現の例を表す。
【図８】本発明に従う量子化マトリクス表現を可能にするＨＥＶＣのＳＰＳのための例となるシンタックス設計を表す。
【図９】本発明に従う量子化マトリクス表現を可能にするＨＥＶＣのＰＰＳのための例となるシンタックス設計を表す。
【図１０】本発明に従う量子化マトリクス表現を可能にするＨＥＶＣのＡＰＳのための例となるシンタックス設計を表す。
【図１１】“scaling_list_param()”関数の例となる実施を表す。
【図１２】初期量子化マトリクスに基づき矩形の又はより大きい量子化マトリクスを導出するための例となるシンタックス設計を表す。
【発明を実施するための形態】
【００１１】
量子化マトリクスの増大するデータサイズを克服するために、本発明に従う実施形態は、１又はそれ以上の量子化マトリクスを受け取り、該初期量子化マトリクスに基づき１又はそれ以上の派生量子化マトリクスを導出する。例えば、８×８デフォルト量子化マトリクスが初期量子化マトリクスとして使用され得る。初期８×８量子化マトリクスは、１６×１６の派生量子化マトリクスを導出するために使用され得る。１６×１６の派生量子化マトリクスは更に、３２×３２の派生量子化マトリクスを導出するために使用され得る。初期量子化マトリクスがより大きい派生量子化マトリクスを導出するために使用される場合に、導出プロセスは、初期量子化マトリクスをより大きいマッピングされる量子化マトリクスにマッピングし、該マッピングされる量子化マトリクスの残りのエントリを派生量子化マトリクスに補間することによる空間周波数アップサンプリングを有する。
【００１２】
例えば、初期量子化マトリクスのエントリは、等しい空間周波数を有するマッピングされる量子化マトリクスのエントリへマッピングされる。例として、初期８×８量子化マトリクスは、１６×１６量子化マトリクスを導出するために使用される。マッピングされる１６×１６量子化マトリクスは、次の式（１）〜（４）に従って生成され得る：
【００１３】
【数１】
0005815853.tif 000004
なお、０≦ｉ、ｊ≦７及びｔは、７よりも小さい値を有する閾値である。
【００１４】
マッピング後、導出された１６×１６量子化マトリクスの残りのエントリは補間によって生成され得る。例えば、次の式（５）及び（６）において示されるような、その直ぐ左右両隣又は直ぐ上下両隣のマッピングされるエントリに基づく線形補間が使用されてよい：
【００１５】
【数２】
0005815853.tif 000005
直ぐ左右両隣又は直ぐ上下両隣がマッピングされるエントリでない導出された１６×１６量子化マトリクスのエントリについて、補間プロセスは、次の式（７）〜（１０）に従って実行される：
【００１６】
【数３】
0005815853.tif 000006
図２は、上記の量子化マトリクス導出プロセスに従う例を表し、このとき、閾値ｔは４であるよう選択される。この例では、イントラ８×８量子化マトリクスが、イントラ１６×１６モードのための派生１６×１６量子化マトリクスを導出するために、初期量子化マトリクスとして使用される。第１のステップの間、８×８量子化マトリクスのエントリは、同じ空間周波数を有するマッピングされる１６×１６量子化マトリクスへマッピングされる。マッピングされたエントリは、図２において斜線部分によって示される。然るに、６４個のマッピングされるエントリが、１６×１６の派生量子化マトリクスのために決定される。式（１）〜（４）において特定されるマッピングプロセスは、如何なる残りのエントリも常に水平又は垂直方向において２つの既存のマッピングされたエントリの間にあるように構成されるマッピングされるエントリをもたらす。より小さいマトリクス及びより大きいマトリクスの終点を整列させるために、アップサンプリングのインターバルは同じでなくてよい。インターバルを可能な限り一様に保ちながら、インターバルの１つは、終点を水平及び垂直方向において整列させるために調整されるべきである。式（１）〜（４）における閾値ｔは、調整されたインターバルについて位置を決定するために使用される。マッピングのタイプは、本開示において「終点が整列された線形空間周波数アップサンプリング」と呼ばれる。斜線なしの部分によって示される残りのエントリは、次いで、少なくとも２つの隣り合うマッピングされたエントリを用いて補間される。
【００１７】
空間周波数アップサンプリングの後、補間が最初に水平方向において、次いで垂直方向において実行され得る。例えば、水平補間は、最初の行２１０、次に３番目の行２２０に適用され得る。行２１０及び２２０が両方とも補間された後、行２１０及び２２０における全てのエントリは、マッピング又は補間のいずれかにより利用可能である。行２３０は、マッピングされた隣の行又は補間された隣の行のいずれかに基づき垂直補間によって生成され得る。それにも関わらず、マッピングされた隣の行に基づく垂直補間は、水平補間を待たずにいつでも実行され得る。更に、水平方向に補間された隣の行に基づく行２３０の垂直補間は、行２１０及び２２０の完了を待たずに、対応するエントリが利用可能になればいつでも開始することができる。様々な処理順序がまた使用されてよい。例えば、垂直補間が最初に実行され、次いで水平補間が実行されてよい。終点が整列された線形空間周波数アップサンプリングが先に開示されているが、矩形空間周波数アップサンプリングがまた使用されてよく、このとき、式（１）は、より大きい量子化マトリクスについて全てのアップサンプリングされたエントリを生成するよう適用される。この場合に、最後のアップサンプリングされたエントリを過ぎた残りのエントリは、補間に代えて外挿を用いて生成されるべきである。
【００１８】
同様に、インター１６×１６量子化マトリクスの導出は、インター８×８量子化マトリクスに基づき実行され得る。１６×１６派生量子化マトリクスが得られた後、１６×１６派生量子化マトリクスは、同様のプロセスにより３２×３２の派生量子化マトリクスを生成するために使用され得る。３２×３２派生量子化マトリクスは、閾値ｔ＝９について図３Ａ及び３Ｂにおいて示されている。なお、３２×３２派生量子化マトリクスの上部分が図３Ａにおいて示され、３２×３２派生量子化マトリクスの下部分が図３Ｂにおいて示される。図３Ａ及び３Ｂにおいて、斜線部分は、１６×１６派生量子化マトリクスからのマッピングされたエントリを示す。特に、交差斜線部分３１０は、そもそも８×８量子化マトリクスからのエントリを示し、単なる斜線部分３２０は、１６×１６量子化マトリクスの派生エントリを示す。
【００１９】
本発明の他の実施形態では、正方量子化マトリクスが、非正方量子化マトリクスのエントリを生成するために初期量子化マトリクスとして使用される。更に、初期量子化マトリクスとして使用される正方量子化マトリクスは、より小さいサイズを有する初期量子化マトリクスから導出されている。例えば、４×１６及び１６×４の量子化マトリクスは、１６×１６量子化マトリクスから導出され得、１６×１６量子化マトリクスは、原の８×８量子化マトリクスから導出されている。同様に、８×３２及び３２×８の量子化マトリクスは、３２×３２量子化マトリクスから導出され得る。３２×３２量子化マトリクスは、１６×１６量子化マトリクスから導出されている。
【００２０】
図４Ａは、初期８×８量子化マトリクスから導出される初期１６×１６量子化マトリクスの例を表し、初期８×８量子化マトリクスは図２において示されている。それにも関わらず、他の１６×１６量子化マトリクスも、非正方量子化マトリクスを導出するために使用されてよい。１６×４量子化マトリクスを生成するために、４つの行が、垂直範囲にわたるよう選択され得る。例えば、０番目（０から始まるインデックス）、５番目、１０番目、及び１５番目の行が、図４Ａにおいて斜線付きの行４１０〜４１６によって示されるように、１６×４量子化マトリクスを形成するよう選択され得る。同様に、０番目、５番目、１０番目、及び１５番目の列が、図４Ａにおいて斜線付きの列４２０〜４２６によって示されるように、４×１６量子化マトリクスを形成するよう選択され得る。導出された１６×４量子化マトリクス及び４×１６量子化マトリクスは夫々、図４Ｂ及び４Ｃにおいて示される。量子化マトリクスにおけるエントリの位置は空間周波数に関連付けられるので、図４Ａに示されるサブサンプリングプロセスは周波数デシメーションと等価である（この場合に、４：１デシメーション）。１６×４及び４×１６の量子化マトリクスを導出するために使用される特定の行又は列は、例示を目的とする。当業者は、１６×４及び４×１６の量子化マトリクスを導出するよう他の行又は列を選択してよい。例えば、０番目、４番目、８番目、及び１２番目の行／列又は３番目、７番目、１１番目、及び１５番目の行／列も選択され得る。３２×８量子化マトリクスは、３２×３２量子化マトリクスの０番目、４番目、８番目、１２番目、１６番目、２１番目、２６番目、及び３１番目の行から導出され得、８×３２量子化マトリクスは、対応する３２×３２量子化マトリクスの０番目、４番目、８番目、１２番目、１６番目、２３番目、２７番目、及び３１番目の列から導出され得る。先と同じく、３２×８及び８×３２の量子化マトリクスを導出するために使用される特定の行又は列は、例示を目的とする。図５は、３２×３２量子化マトリクスの０番目、４番目、８番目、１２番目、１６番目、２１番目、２６番目、及び３１番目の行から導出される３２×８量子化マトリクスの例を表し、３２×３２量子化マトリクスは図３Ａ及び３Ｂにおいて示されている。当業者は、３２×８及び８×３２の量子化マトリクスを導出するよう他の行又は列を選択してよい。
【００２１】
本発明の更なる実施形態では、より大きい量子化マトリクスは、より小さい量子化マトリクスから導出される。例えば、４×４、８×８、１６×１６及び３２×３２の量子化マトリクスによるコーディングシステムは、８×８量子化マトリクスから１６×１６及び３２×３２の量子化マトリクスを導出してよい。従って、システムは、図６において示される４×４及び８×８の量子化マトリクスを記憶又は送信することしか必要としない。デフォルトの４×４及び８×８の量子化マトリクスが使用される場合に、それらの量子化マトリクスは、小さいサイズのためにＲＯＭ／ＰＲＯＭ及び他の論理回路のようなメモリ又は記憶装置においてハードコードされ得る。
【００２２】
デフォルト８×８の量子化マトリクスは通常、８×８のトランスフォームブロックのための性能を最適化するよう設計される。従って、８×８トランスフォームブロックのために設計される初期８×８量子化マトリクスに基づき導出される１６×１６又は３２×３２の量子化マトリクスは、１６×１６又は３２×３２のトランスフォームブロックのために設計される１６×１６又は３２×３２の量子化マトリクスと同じくらいうまくは機能することができない。然るに、本発明の他の実施形態は、１６×１６量子化マトリクスの導出のために個別の８×８量子化マトリクスを利用する。それは更に、性能を改善するよう３２×３２量子化マトリクスの導出のために他の個別の８×８量子化マトリクスを使用する。１６×１６及び３２×３２の量子化マトリクスを導出するために使用される個別の８×８量子化マトリクスは夫々、１６×１６又は３２×３２のトランスフォームブロックのために設計される原の１６×１６及び３２×３２の量子化マトリクスをダウンサンプリングすることによって、導出され得る。量子化マトリクス表現は図７において示され、１つの初期量子化マトリクスは４×４のサイズを有し、３つの初期量子化マトリクスは８×８のサイズを有する。１６×１６及び３２×３２の量子化マトリクスは、夫々の８×８量子化マトリクスから導出される。図６における量子化マトリクス表現と比較して、図７における量子化マトリクス表現は、２つの８×８量子化マトリクスのための追加記憶を必要とする。
【００２３】
図６及び図７において、初期４×４及び８×８量子化マトリクスは、デフォルトの量子化マトリクス又はユーザ定義の量子化マトリクスであってよい。１６×１６及び３２×３２の量子化マトリクスが個別の８×８量子化マトリクスに基づき導出される場合に、個別の８×８量子化マトリクスは夫々、デフォルト又はユーザ定義の１６×１６及び３２×３２の量子化マトリクスをダウンサンプリングすることによって、導出され得る。
【００２４】
より大きい量子化マトリクスをダウンサンプリングすることでより小さい量子化マトリクスを生成する種々の方法が存在する。それらの方法は２つのタイプに分類可能であり、１つは、より大きい量子化マトリクスにわたって一様にダウンサンプリングすることであり、他は、低周波領域において密にダウンサンプリングすることである。例として、１６×１６又は３２×３２量子化マトリクスは、次の式（１１）及び（１２）に従って、８×８量子化マトリクスを生成するよう一様にダウンサンプリングされ得る：
【００２５】
【数４】
0005815853.tif 000007
上述されたように、量子化マトリクスにおけるエントリの位置は空間周波数に関連付けられ、式（１１）及び（１２）において示されるサブサンプリングプロセスは周波数デシメーションと等価である（この場合に、２：１及び４：１デシメーション）。ダウンサンプリングパターンはまた、空間オフセットを含んでよい。例えば、ダウンサンプリングパターンは、右へ１つ及び下へ１つ移動されてよい。すなわち、C8x8[0][0]=C16x16[1][1]。本発明の実施形態はまた、終点が整列された線形ダウンサンプリングを含み、これは、図２において示される、終点が整列された線形空間周波数アップサンプリングの逆のプロセスに対応する。同様に、３２×３２量子化マトリクスのための個別の８×８量子化マトリクスは、終点が整列された線形空間周波数アップサンプリングにより導出され得る。
【００２６】
他の例として、１６×１６又は３２×３２の量子化マトリクスの低周波数エントリは、次の式（１３）及び（１４）に従って、２つの量子化マトリクスの８×８量子化マトリクスへマッピングされ得る：
【００２７】
【数５】
0005815853.tif 000008
上記の例では、２つの対応する量子化マトリクスの最低周波数エントリが整列される。すなわち、C8x8[0][0]=C16x16[0][0]及びC8x8[0][0]=C32x32[0][0]。
【００２８】
線形補間は、より小さい量子化マトリクスからより大きい量子化マトリクスを生成するために使用され得る。より小さい量子化マトリクスが原のより大きい量子化マトリクスから一様ダウンサンプリングによって生成された場合に、線形補間はダウンサンプリングパターンを考慮してよい。例えば、１６×１６派生量子化マトリクスは、次のように、８×８量子化マトリクスから補間され得る：
【００２９】
【数６】
0005815853.tif 000009
なお、Ｎ＝８である。
【００３０】
式（１５）において、８×８量子化マトリクスのエントリは、線形空間周波数アップサンプリングにより、同じ空間周波数を有するマッピングされる１６×１６量子化マトリクスへマッピングされる。垂直補間は式（１６）において実行され、それに続いて水平補間が式（１７）において実行され、垂直及び水平の各方向において２つのマッピングされる隣のエントリの間でデータが生成される。式（１８）は、２次元補間により４つのマッピングされるエントリの間でデータを生成するために使用される。式（１９）及び（２０）は、垂直及び水平の各方向において、外挿により、最後にマッピングされるエントリを過ぎたエントリについてデータを生成する。なお、サンプル繰り返し（sample  repetition）が、この例におけるデータ外挿のための手段として使用される。式（１３）〜（２０）は、８×８マトリクスから１６×１６マトリクスへの線形補間／外挿の例を表す。それにも関わらず、式（１）〜（１０）において記載される例のような他の補間方法も使用されてよい。垂直及び水平方向における他の処理順序が同様に使用されてよい。１６×１６量子化マトリクスが導出された後、３２×３２量子化マトリクスは、サンプル繰り返しにより、導出された１６×１６量子化マトリクスから補間／外挿され得る：
【００３１】
【数７】
0005815853.tif 000010
なお、C’NxNは１６×１６量子化マトリクスを表し、C’2Nx2Nは３２×３２量子化マトリクスを表し、且つ、Ｎ＝１６である。サンプル繰り返しが１６×１６量子化マトリクスを３２×３２量子化マトリクスへ補間／外挿するために使用されるが、他のタイプの補間／外挿も本発明の実施形態を実施するために使用されてよい。式（１５）〜（２４）において示される方法は、線形補間により８×８量子化マトリクスから１６×１６量子化マトリクスを導出する。１６×１６量子化マトリクスが導出された後、サンプル繰り返し技術が、導出された１６×１６量子化マトリクスに基づき３２×３２量子化マトリクスを導出するために使用される。８×８量子化マトリクスから１６×１６及び３２×３２の量子マトリクスを導出する代替の方法は、単に、次の式（２５）及び（２６）に従うサンプル繰り返しに基づいてよい：
【００３２】
【数８】
0005815853.tif 000011
より小さい量子化マトリクスが、より大きい量子化マトリクスの低周波数に対応するエントリをより小さい量子化マトリクスへマッピングすることによってダウンコンバートされた場合に、対応するアップコンバージョン方法が、より小さい量子化マトリクスに基づきより大きい量子化マトリクスを導出するために使用され得る。例えば、１６×１６派生量子化マトリクスは、次のように、８×８量子化マトリクスから補間／外挿されることでアップコンバートされ得る：
【００３３】
【数９】
0005815853.tif 000012
３２×３２派生量子化マトリクスは、次のように、８×８量子化マトリクスから補間／外挿されることでアップコンバートされ得る：
【００３４】
【数１０】
0005815853.tif 000013
式（２７）〜（３２）において示されるようなより大きい量子化マトリクスの導出は、２つの部分を有する。第１の部分は、式（２７）及び（３０）において示されるように、より小さい量子化マトリクスをより大きい量子化マトリクスの低周波数エントリへマッピングすることである。第２の部分は、より大きい量子化マトリクスの残りのエントリについてデータを外挿することである。上記の例は、最初に水平方向、次いで垂直方向において外挿を実行するが、それはまた、最初に垂直方向、次いで水平方向において外挿を実行してよい。更に、１次元の外挿が示されているが、当業者はまた、第１の部分が実行された後に残りのエントリについてデータを生成するために２次元補間／外挿を用いてよい。
【００３５】
コーディングシステムが上記の量子化マトリクス表現を用いることを可能にするために、シンタックスの組が設計されるべきである。シンタックスの組は、量子化マトリクスに関連する情報をデコーダへ伝達するよう、ＳＰＳ（Sequence  Parameter  Set  RBSP  Syntax）、ＰＰＳ（Picture  Parameter  Set  RBSP  Syntax）又はＡＰＳ（Adaptation  Parameter  Set  RBSP  Syntax）において加えられ得る。
【００３６】
ＨＥＶＣのシーケンスレベルにおいて、seq_quant_matrix_present_flagは、シーケンス全体が量子化マトリクスを使用するか否かを示すためにＳＰＳにおいて使用され得る。シーケンス全体が量子化マトリクスを使用する場合には、seq_quant_matrix_present_idxは、指定されるトランスフォームサイズ及び各チャネルが量子化マトリクスを使用するか否かを決定するために、各トランスフォームサイズ及び各色又はチャネル（例えば、Ｙ，Ｕ，Ｖ）についてチェックされる。指定されるトランスフォームサイズ及び各チャネルが量子化マトリクスを使用し且つトランスフォームサイズが４×４又は８×８である場合は、ユーザ定義の量子化マトリクスが組み込まれる。エントロピコーディングは、ユーザ定義の量子化マトリクスに関連する必要とされるデータレートを減らすために使用されてよい。さもなければ、implicit_quant_matrix_present_idxは、矩形量子化マトリクス及びより大きい量子化マトリクスが４×４及び８×８の量子化マトリクスから導出されるかどうかを決定するためにチェックされる。implicit_quant_matrix_present_idxが真でない場合は、ユーザ定義の量子化マトリクスがビデオビットストリームにおいて組み込まれる。ユーザ定義の量子化マトリクスは、エントロピ符号化されてよい。本発明に従う量子化マトリクス表現を可能にするＳＰＳのための例となるシンタックス設計は、図８において示される。
【００３７】
ＨＥＶＣのピクチャレベルにおいて、pic_quant_matrix_present_flagは、現在のピクチャが量子化マトリクスを使用するか否かを示すためにＰＰＳにおいて使用され得る。次の例となるシンタックスは、図９において示されるようにＰＰＳ（Picture  Parameter  Set）、又は図１０において示されるようにＡＰＳ（Adaptation  Parameter  Set）において組み込まれ得る。“pic_quant_matrix_present_flag”が真である場合は、“scaling_list_param()”関数が呼び出される。“scaling_list_param()”関数の例となる実施は図１１において示される。矩形量子化マトリクス及びより大きい量子化マトリクスについて、それらは、対応する初期量子化マトリクスが復号化される場合に導出される。導出の一実施例は図１２において示される。図９乃至図１２において示されるシンタックス設計は、本発明の実施形態を容易にするよう例示として意図される。当業者は、本発明の技術的範囲から逸脱することなしに本発明を実施するために他のシンタックス設計を使用してよい。
【００３８】
ユーザ定義の量子化マトリクスが使用される場合に、本発明に従う実施形態は、より大きい量子化マトリクスに関連する伝達情報量を減らすことができる。従って、より多くのバンド幅が、より良いシステム性能を達成するようビデオデータに利用可能となる。比較のために、ＨＥＶＣテストモデルバージョン４．０（ＨＥＶＣ−４．０）に基づくコーディングシステムが使用され、このとき、４×４、８×８、１６×４、４×１６、１６×１６、３２×８、８×３２、３２×３２のブロックサイズが使用される。従来のアプローチでは、全てのブロックサイズのためのユーザ定義の量子化マトリクスがビットストリームにおいて伝達される。他方で、本発明の一実施形態に従って、４×４及び８×８のユーザ定義の量子化マトリクスしかビットストリームにおいて組み込まれない。他の量子化マトリクスは、伝達される４×４及び８×８の量子化マトリクスから導出される。量子化マトリクスを伝達することから節約されるビットレートは、基礎を成すビデオデータのために使用され得る。従って、改善された性能が達成され得る。性能はＢＤレートに関して測定され、負の数は性能改善を示し、ＢＤレート改善は、主観的品質劣化を伴わずに従来のシステムに対して得られる。
【００３９】
表３は、高効率（ＨＥ；High  Efficiency）コーディング構成及び低複雑性（ＬＣ；Low  Complexity）コーディング構成についての比較を表す。いずれの場合も、１０％より多い改善が達成されている。表４は、ランダムアクセスＨＥコーディング構成及びランダムアクセスＬＣコーディング構成についての比較を表す。改善はいずれの場合も約４０％である。表５は、Ｂフレームのための低遅延ＨＥコーディング構成及び低遅延ＬＣコーディング構成についての比較を表す。改善はいずれの場合も５０％より多い。表６は、Ｐフレームのための低遅延ＨＥコーディング構成及び低遅延ＬＣコーディング構成についての比較を表す。改善はいずれの場合も５０％より多い。
【００４０】
【表３】
0005815853.tif 000014
【００４１】
【表４】
0005815853.tif 000015
【００４２】
【表５】
0005815853.tif 000016
【００４３】
【表６】
0005815853.tif 000017
上記の説明は、当業者が、特定の用途及びその要件との関連で提供されるように本発明を実施することを可能にするために与えられている。記載される実施形態の様々な変更は、当業者には明らかであり、ここで定義される一般的原理は、他の実施形態へ適用されてよい。従って、本発明は、図示及び記載される特定の実施形態に制限されるよう意図されず、ここで開示される原理及び新規の特徴と一致する最も広い適用範囲を受けるべきである。上記の詳細な説明において、様々な具体的な詳細は、本発明の全体的な理解を提供するために明らかにされている。それにも関わらず、本発明は実施されてよいことが当業者によって理解される。
【００４４】
上述された本発明の実施形態は、様々なハードウェア、ソフトウェアコード、又はそれらの組み合わせにおいて実施されてよい。例えば、本発明の実施形態は、ここで記載される処理を実施するようビデオ圧縮チップに組み入れられた回路又はビデオ圧縮ソフトウェアに組み入れられたプログラムコードであってよい。本発明の実施形態はまた、ここで記載される処理を実施するようデジタル信号プロセッサ（ＤＳＰ）において実行されるプログラムコードであってよい。本発明はまた、コンピュータプロセッサ、デジタル信号プロセッサ、マイクロプロセッサ、又はフィールドプログラマブルゲートアレイ（ＦＰＧＡ）によって実施される多数の関数を有してよい。それらのプロセッサは、本発明によって具現される特定の方法を定義する機械読取可能なソフトウェアコード又はファームウェアコードを実行することによって、本発明に従う特定のタスクを実施するよう構成され得る。ソフトウェアコード又はファームウェアコードは、異なるプログラミング言語及び異なるフォーマット又はスタイルにおいて開発されてよい。ソフトウェアコードはまた、異なるターゲットプラットフォームのためにコンパイルされてよい。なお、本発明に従ってタスクを実施するようコードを設定するソフトウェアコード及び他の手段の異なるコードフォーマット、スタイル及び言語は、本発明の精神及び適用範囲から逸脱しない。
【００４５】
本発明は、その精神又は必須の特徴から逸脱することなしに他の具体的な形態において具現されてよい。記載される例は、あらゆる点で単なる例示であって限定ではないと考えられるべきである。従って、本発明の適用範囲は、上記の説明によってよりむしろ添付の特許請求の範囲によって示される。特許請求の範囲の均等の範囲及び意味に入る全ての変更は、それらの適用範囲内に包含されるべきである。
【００４６】
［関連出願の相互参照］
本発明は、“Quantization  matrix  representation  for  video  coding  in  HEVC”と題された、２０１１年８月２３日付けで出願された米国特許仮出願第６１／５２６４５３号及び“Quantization  matrix  representation  for  video  coding  in  HEVC”と題された、２０１２年２月８日付けで出願された米国特許仮出願第６１／５９６３５０号に基づく優先権を主張するものである。これらの米国特許出願は、その全文を参照により本願に援用する。
【図１Ａ】
0005815853.tif 000018
【図１Ｂ】
0005815853.tif 000019
【図１Ｃ】
0005815853.tif 000020
【図１Ｄ】
0005815853.tif 000021
【図２】
0005815853.tif 000022
【図３Ａ】
0005815853.tif 000023
【図３Ｂ】
0005815853.tif 000024
【図４Ａ】
0005815853.tif 000025
【図４Ｂ】
0005815853.tif 000026
【図４Ｃ】
0005815853.tif 000027
【図５】
0005815853.tif 000028
【図６】
0005815853.tif 000029
【図７】
0005815853.tif 000030
【図８】
0005815853.tif 000031
【図９】
0005815853.tif 000032
【図１０】
0005815853.tif 000033
【図１１】
0005815853.tif 000034
【図１２】
0005815853.tif 000035