(57)【特許請求の範囲】
【請求項１】
動画符号化階層の２以上のレベルにおける彩度量子化パラメータ（ＱＰ）オフセット値の２以上の初期セットを識別するステップであって、彩度ＱＰオフセット値の各初期セットは前記動画符号化階層の１つのレベルに含まれる動画ユニットの彩度ＱＰを指定するためのものである、ステップと、
複数の動画ユニットを含む量子化グループのための彩度ＱＰオフセット値の追加セットを識別するステップと、
前記複数の動画ユニットのために、（ｉ）前記複数の動画ユニットについて識別された彩度ＱＰオフセット値の前記初期セットと、（ｉｉ）前記量子化グループについて識別された彩度ＱＰオフセット値の前記追加セットと、を加算することにより、彩度ＱＰ値のセットを算出するステップと、
を備えることを特徴とする方法。
【請求項２】
前記動画符号化階層の特定のレベルにおいて指定される彩度ＱＰオフセット値の識別される初期セットは、前記動画符号化階層の前記特定のレベルに含まれる動画ユニットのためのものである
ことを特徴とする請求項１に記載の方法。
【請求項３】
前記複数の動画ユニットのための輝度ＱＰ値を識別するステップを更に備え、
前記複数の動画ユニットのために彩度ＱＰ値の前記セットを算出する前記ステップは、彩度ＱＰオフセット値の前記識別される初期セットと彩度ＱＰオフセット値の前記識別される追加セットとを前記識別される輝度ＱＰ値に加算するステップを含む
ことを特徴とする請求項１に記載の方法。
【請求項４】
彩度ＱＰオフセット値の第１の識別される初期セットがピクチャのために指定され、彩度ＱＰオフセット値の第２の識別される初期セットがスライスのために指定される
ことを特徴とする請求項１に記載の方法。
【請求項５】
動画符号化階層の第１のレベルにおける第１の動画データユニットのための彩度量子化パラメータ（ＱＰ）オフセット値の第１のセットを識別するステップと、
前記動画符号化階層の第２のレベルにおける第２の動画データユニットに適用可能な彩度ＱＰオフセット値の第２のセットを識別するステップであって、前記第１の動画データユニットは前記第２の動画データユニットを含む、ステップと、
動画データユニットの第３のセットに適用可能な彩度ＱＰオフセット値の第３のセットを識別するステップであって、動画データユニットの前記第３のセットは前記第２の動画データユニットに属する特定の動画データユニットを含む、ステップと、
彩度ＱＰオフセット値の前記第１、第２、及び第３のセットに基づいて、前記特定の動画データユニットのための彩度量子化パラメータのセットを算出するステップと、
を備えることを特徴とする方法。
【請求項６】
前記第１の動画データユニットは、ピクチャである
ことを特徴とする請求項５に記載の方法。
【請求項７】
前記第２の動画データユニットは、スライスである
ことを特徴とする請求項５に記載の方法。
【請求項８】
前記特定の動画データユニットのための彩度量子化パラメータの前記セットを算出する前記ステップは、彩度ＱＰオフセット値の前記第１、第２、及び第３のセットを輝度ＱＰ値に加算するステップを含む
ことを特徴とする請求項５に記載の方法。
【請求項９】
前記特定の動画データユニットを含む輝度量子化グループのための前記輝度ＱＰ値を識別するステップ
を更に備えることを特徴とする請求項８に記載の方法。
【請求項１０】
彩度ＱＰオフセット値の前記第３のセットは、第１の彩度成分のためのオフセット値を含み、
前記方法は、第２の彩度成分のためのオフセット値を予測するために前記第１の彩度成分のための前記オフセット値を使用するステップを更に備える
ことを特徴とする請求項５に記載の方法。
【請求項１１】
彩度ＱＰオフセット値の前記第３のセットは、第１の彩度成分のためのオフセット値を含み、
前記方法は、前記第１の彩度成分のための前記オフセット値を第２の彩度成分のためのオフセット値として使用するステップを更に備える
ことを特徴とする請求項５に記載の方法。
【請求項１２】
前記第１の動画データユニットはピクチャであり、前記第２の動画データユニットはスライスである
ことを特徴とする請求項５に記載の方法。
【請求項１３】
処理ユニットのセットと、
前記処理ユニットのうちの少なくとも１つにより実行するためのプログラムを格納した機械可読媒体と、
を備える復号器であって、
前記プログラムは、
特定の動画ピクチャのための彩度量子化パラメータ（ＱＰ）オフセット値の第１のセットを識別するモジュールと、
前記特定のピクチャの中の符号化ユニットのセットを含む量子化グループに固有の、彩度ＱＰオフセット値の第２のセットを識別するモジュールと、
符号化ユニットの前記セットを含むスライスのための彩度ＱＰオフセット値の第３のセットを識別するモジュールと、
彩度ＱＰオフセット値の前記第１、第２、及び第３のセットに基づいて、彩度量子化パラメータのセットを算出することにより、符号化ユニットの前記セットを復号するモジュールと、
を備えることを特徴とする復号器。
【請求項１４】
前記プログラムは、ビットストリームを受信するモジュールを更に備え、
前記特定の動画ピクチャは、前記ビットストリームの中に符号化されている
ことを特徴とする請求項１３に記載の復号器。
【請求項１５】
符号化ユニットの前記セットを復号する前記モジュールは、前記ビットストリームからの係数のセットを逆量子化する
ことを特徴とする請求項１４に記載の復号器。
【請求項１６】
前記プログラムは、後続のフィルタリングのために彩度ＱＰオフセット値の前記識別されるセットの一部を使用するモジュールを更に備える
ことを特徴とする請求項１３に記載の復号器。
【請求項１７】
前記後続のフィルタリングは、デブロックフィルタリングを含む
ことを特徴とする請求項１６に記載の復号器。
【請求項１８】
動画符号化階層の２以上のレベルにおける彩度量子化パラメータ（ＱＰ）オフセット値の２以上の初期セットを識別するステップであって、前記動画符号化階層の１つのレベルにおける彩度ＱＰオフセット値の各セットは当該１つのレベルに含まれる動画ユニットの彩度ＱＰを指定するためのものである、ステップと、
特定の動画データユニットを含む量子化グループに関連する彩度ＱＰオフセット値の追加セットを識別するステップと、
前記特定の動画データユニットを含む動画符号化階層の前記２以上のレベルについて識別された彩度ＱＰオフセット値の前記初期セットと、前記量子化グループについて識別された彩度ＱＰオフセット値の前記追加セットと、を加算することにより、前記特定の動画データユニットのための彩度ＱＰ値のセットを算出するステップと、
を備えることを特徴とする方法。
【請求項１９】
彩度ＱＰ値の前記セットを算出する前記ステップは、彩度ＱＰオフセット値の前記識別される初期セットと彩度ＱＰオフセット値の前記識別される追加セットとを前記特定の動画データユニットのための輝度ＱＰ値に加算するステップを含む
ことを特徴とする請求項１８に記載の方法。
【請求項２０】
前記量子化グループは彩度量子化グループであり、前記輝度ＱＰ値は前記特定の動画データユニットを含む輝度量子化グループについて指定される
ことを特徴とする請求項１９に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
先願に対する利益の請求
本願は、２０１３年９月９日に出願された米国仮特許出願第６１／８７５，６６４号の利益を請求するものである。米国仮特許出願第６１／８７５，６６４号を、参照により本願に援用する。
【背景技術】
【０００２】
次世代の高効率動画符号化（Ｈｉｇｈ  Ｅｆｆｉｃｉｅｎｃｙ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ：ＨＥＶＣ／Ｈ．２６５）標準は、ＩＴＵとＩＳＯ  ＭＰＥＧによって共同開発されたものであり、それ以前の動画符号化の標準や技術、例えば、とりわけＭＰＥＧ−２、ＭＰＥＧ−４パート２、ＭＰＥＧ−４  ＡＶＣ／Ｈ．２６４、ＶＣ１、およびＶＰ８などと対比して動画符号化効率を高めるために、いくつかの新たな動画符号化ツールを導入している。最初のバージョンでは、この新しい標準は、明確に定義された３つのプロファイル、すなわち、メイン（Ｍａｉｎ）、メイン１０（Ｍａｉｎ１０）、およびメイン静止画（Ｍａｉｎ  Ｓｔｉｌｌ  Ｐｉｃｔｕｒｅ）のプロファイルを用いて、ＹＵＶ４：２：０の８もしくは１０ビットの材料の符号化をサポートすることができる。しかし、とりわけＹＵＶ４：２：２、ＹＵＶ４：４：４、およびＲＧＢ４：４：４を含めて、他の色サンプリングフォーマットおよび色空間をサポートしようとすると共に、１０ビットを超えるサンプル精度（ビット深度）をサポートしようとする作業が今も進行中である。そのような材料の符号化は、例えばシネマへの応用、キャプチャ、動画の編集、アーカイビング、医療用イメージングといったプロ向けの各種用途を中心に、例えば、とりわけ画面コンテンツの圧縮および共有、リモートコンピューティング、およびゲームといった消費者向けの各種用途においても大いに関心を集めている。
【０００３】
最近まで、既存の動画コーデックは、ほとんどの場合、画像の輝度成分を符号化することを優先させてきた。輝度情報の符号化特性と品質とを制御する符号化パラメータは、主として、低位レベルの動画符号化階層で、例えば、ＨＥＶＣのスライス、符号化ツリーブロック、符号化ユニット、あるいは変換ブロックレベルで提供される。他のすべての成分についての制御パラメータおよびチューニングパラメータは、輝度制御パラメータの修正に関連して、主として高位レベルで、例えば、シーケンス（Ｓｅｑｕｅｎｃｅ）、ピクチャパラメータセット（Ｐｉｃｔｕｒｅ  Ｐａｒａｍｅｔｅｒ  Ｓｅｔ）、またはスライス（Ｓｌｉｃｅ）レベルでの提供が可能である。例えば、ＭＰＥＧ−４  ＡＶＣでは、輝度量子化および対応する量子化パラメータ（Ｑｕａｎｔｉｚａｔｉｏｎ  Ｐａｒａｍｅｔｅｒ：ＱＰ）は、シグナリングされたパラメータを使ってマクロブロックレベルで制御された。ピクチャパラメータセットでは、各彩度成分に１つのオフセットが与えられた。各彩度ＱＰオフセットは、対応する彩度成分のＱＰ値を、各マクロブロック内で輝度ＱＰとの関係において制御する。しかし、この関係は、ピクチャ全体について固定されている。輝度もしくは彩度エリアの品質を変更したい場合、この関係は非常に緊密であったため、他の成分も影響を受けていた。ＨＥＶＣではスライス毎に別個の彩度量子化オフセットシグナリングが可能であるため、ＨＥＶＣでは追加的な若干の制御も提供された。しかし、複数のスライスを利用することは、用途によっては望ましくないかまたは機能的でないことがあり、一方で、提供される制御は、やはり幾分粗雑である。
【０００４】
用途やコンテンツによっては、一部の色成分の品質を別々に制御できることは、全体的な品質、圧縮比および全体的なユーザ体験を向上させるのに非常に重要であることがある。例えば、一部のエリアが、色成分の中のテクスチャの違いやノイズ特性を特徴とすることがあり、一方で、色エッジ部を強調する方が、その情報を輝度で強調することより多少重要であることがある。また、ビデオディスプレイ共有やリモートコンピューティングのような４：４：４の用途については、ＲＧＢコンテンツを符号化することが望ましいかもしれず、この場合、赤色成分および青色成分の重要性が、従って所望の制御が、ＹＵＶ領域内の彩度成分より高い傾向にある。また、例えばコンピュータグラフィックスやコンピュータアプリケーションのような合成コンテンツと自然な画像や動画との組み合わせである混合動画コンテンツを符号化したいことがある。このシナリオでは、自然コンテンツと合成コンテンツの特性の差や、自然コンテンツが当初は４：２：０画像であって４：４：４に表示するためにアップコンバートされた可能性を考えると、彩度量子化パラメータを制御する能力を持つことは、符号化性能および主観的品質にかなり影響を与える可能性があるであろう。
【０００５】
必要なことは、彩度量子化パラメータを既存のコーデックと比べてさらに制御することを可能にすると共に、このサポートをすべての一般的な色フォーマット（例えば、ＹＵＶ、ＲＧＶ、ＹＣｏＣｇ、またはＹＣｏＣｇ−Ｒ）およびすべての一般的な色サンプリングスキーム（例えば４：２：０、４：２：２、４：４：４、または４：４：４：４）だけでなく、各成分についての各種のビット深度にまで拡張することを可能にする方法である。そのような方法は、符号化ブロック内の彩度ＱＰオフセット情報のシグナリングと変更とを、色フォーマットまたはサンプリングフォーマットに何ら制限を課すことなく、もっと柔軟なやり方で、可能にすべきである。
【発明の概要】
【０００６】
彩度量子化パラメータ（ＱＰ）をもっと柔軟に指定できる動画符号化システムを提供するために、本発明の一部の実施形態は、量子化グループ固有の追加の彩度ＱＰオフセット値をシグナリングする方法を提供する。一部の実施形態では、個々の量子化グループが、それ自体の彩度ＱＰオフセット値の集合（セット）を明示的に指定する。一部の実施形態では、彩度ＱＰオフセット値の見込まれる集合のテーブルが、ピクチャもしくはスライスのヘッダエリアの中に指定され、個々の量子化グループが、指標を用いてテーブルからエントリを選択して、それ自体の彩度ＱＰオフセット値の集合を判定する。次いで、量子化グループレベルの彩度ＱＰオフセット値を用いて、量子化グループ内の画素ブロックまたは画素集合についての彩度ＱＰ値が判定される。一部の実施形態では、量子化グループの彩度ＱＰ値は、動画符号化階層の高位レベルにすでに指定されている、ブロックの輝度ＱＰおよび彩度ＱＰオフセット値と共に用いられる。
【０００７】
一部の実施形態は、彩度ＱＰオフセット指定を、１つ以上の動画データユニットを含んでいる量子化グループ（ＱＧ）と関連付ける。一部の実施形態では、各ＱＧは、それ自体の彩度ＱＰオフセット指定の集合に関連付けられており、実施形態によっては、ＱＧに関連付けられた彩度ＱＰオフセット指定の集合は、ＱＧの中の動画データユニットの符号化構造の中に符号化されるかまたは組み込まれる。
【０００８】
オーバヘッドまたはビット使用をさらに削減するために、一部の実施形態は、個々の成分の利用可能なすべてのオフセット値、あるいは、両方の成分の組み合わせ値を、高位レベルの中に、例えば、シーケンスパラメータセット（ＳＰＳ）、ピクチャパラメータセット（ＰＰＳ）の中に、あるいは現行のスライスヘッダの中に指定する。実施形態によっては、高位レベルのシンタックスヘッダ（ＳＰＳ／ＰＰＳ／スライスヘッダ）は、多様な見込まれるオフセット値をテーブル形式にリストし、そのテーブル内の各エントリには指標が割り当てられる。次いで、符号化ユニット／量子化グループレベルにおいて、一部の実施形態は、所望の量子化オフセット値の指標だけを指定する。そのようなオフセットは、ＰＰＳもしくはスライスヘッダで指定されるオフセット値に非依存であってもよいし、逆に、ＰＰＳもしくはスライスヘッダで指定されるオフセット値に追加されてもよい。ビットストリームサイズを削減するため、一部の実施形態は、テーブル内のエントリ数を、最大値までに制限する。
【０００９】
別の実施形態においては、符号化器は、別の方法を用いて、量子化グループ固有の追加の彩度ＱＰオフセット値を選択して割り当てる。一部の実施形態では、符号化器が領域レベルの分析を行う、事前分析ステップを行う。一部の実施形態では、多様な動画コンテンツタイプでできた、画像の中の多様な領域を識別する。実施形態によっては、多様なタイプの動画コンテンツを持つ多様な領域に、多様な彩度ＱＰオフセット値が割り当てられるかまたは、それらが多様な量子化グループに入れられる。一部の実施形態では、グラフィックスコンテンツを実際の動画コンテンツと区別する。一部の実施形態では、当初４：４：４フォーマットで符号化された４：４：４動画コンテンツを４：２：０フォーマットからアップサンプルされた４：４：４動画コンテンツと区別する。一部の実施形態では、当初は別のビット深度であった可能性がある動画コンテンツを見分ける。一部の実施形態では、色成分全体にわたるそれらの関係およびレート制御情報に加えて、動画コンテンツのこれらの特性を用いて、すべての色成分間の量子化レベルまたは量子化の関係を判定する。
【００１０】
上記の概要(Summary)は、本発明の一部の実施形態の簡単な紹介として役立てることが意図されている。本書で開示される発明の主題すべてを紹介したり概説したりしようとするものではない。以下の詳細説明と詳細説明の中で言及される図面とは、概要の中で記述される実施形態およびその他の実施形態を詳細に説明するであろう。従って、本書によって記述されるすべての実施形態を理解するためには、概要、詳細説明、および図面を全面的に検討することが必要である。
【図面の簡単な説明】
【００１１】
本発明の新規の特徴は、添付の請求項に記述されている。しかし、説明を目的として、本発明のいくつかの実施形態が、以下の図面の中に記述されている。
【図１】彩度量子化グループを、個々のグループがそれ自体の彩度ＱＰオフセット指定の集合を持つ状態で含む、階層的動画符号化構造１００を示す図である。
【図２ａ】彩度量子化グループについての彩度ＱＰオフセット値の集合を符号化するための複数の方法を示す図である。
【図２ｂ】彩度量子化グループについての彩度ＱＰオフセット値の集合を符号化するための複数の方法を示す図である。
【図２ｃ】彩度量子化グループについての彩度ＱＰオフセット値の集合を符号化するための複数の方法を示す図である。
【図３】彩度量子化グループの定義を指定する例示的なピクチャヘッダまたはピクチャパラメータセット（ＰＰＳ）を示す図である。
【図４】彩度量子化グループの中にありうる例示的な符号化ツリーユニットを示す図である。
【図５】量子化グループ内の追加の彩度ＱＰオフセットの指定を示す図である。
【図６】２つの彩度成分について彩度ＱＰオフセット値を指定するための別の方法を用いる、量子化グループ内の追加の彩度ＱＰオフセットの指定を示す図である。
【図７】追加の彩度ＱＰオフセット指定を許容する動画ビットストリームから彩度ＱＰ値を判定するためのプロセスを概念的に示す図である。
【図８】見込まれる彩度ＱＰオフセット値のテーブルを高位レベルヘッダに含む階層的動画符号化構造を示す図である。
【図９】彩度ＱＰオフセットのテーブルを符号化する例示的なピクチャヘッダまたはピクチャパラメータセット（ＰＰＳ）を示す図である。
【図１０】彩度ＱＰオフセットテーブルの各エントリを予測的に符号化するピクチャヘッダを示す図である。
【図１１】インデックスを用いてピクチャヘッダの中のテーブルから彩度ＱＰオフセット値を検索する量子化グループの中にありうる例示的な符号化ツリーユニットを示す図である。
【図１２】インデックスを用いて彩度ＱＰオフセット値のテーブル内のエントリを選択する量子化グループを示す図である。
【図１３】見込まれる彩度ＱＰオフセット値のテーブルを用いて追加の彩度ＱＰオフセット指定を実装する動画ビットストリームから彩度ＱＰ値を判定するためのプロセスを概念的に示す図である。
【図１４】追加の彩度ＱＰオフセット値を指定する方法の選択肢を含むピクチャヘッダのための疑似コードを示す図である。
【図１５】３つの異なる方法のいずれかを用いて量子化グループについての彩度ＱＰオフセット値を指定することができる変換ユニット用の疑似コードの実装を示す図である。
【図１６】画像の例示的な分割および分類を示す図である。
【図１７】画像の多様な領域を分析し、それに応じて彩度ＱＰオフセットを割り当てるためのプロセス１７００を概念的に示す図である。
【図１８】一般的な動画符号化器を示す図である。
【図１９】一般的な動画復号器を示す図である。
【図２０】本発明の一部の実施形態が実装される電子システムを概念的に示す図である。
【発明を実施するための形態】
【００１２】
下記の記述では、説明を目的として多数の詳細が記述されている。しかし、当業者であれば、本発明はこれらの特定の詳細を用いることなく実施されうることは理解するであろう。その他の例では、不要な詳細によって本発明の記述をあいまいにしないようにするため、周知の構造やデバイスはブロック図の形式で示してある。
【００１３】
彩度量子化パラメータ（彩度ＱＰ）をもっと柔軟に指定できる動画符号化システムを提供するために、本発明の一部の実施形態は、量子化グループ固有の追加の彩度ＱＰオフセット値をシグナリングする方法を提供する。一部の実施形態では、個々の量子化グループが、それ自体の彩度ＱＰオフセット値の集合を明示的に指定する。一部の実施形態では、彩度ＱＰオフセット値の見込まれる(possible)集合のテーブルが、ピクチャもしくはスライスのヘッダエリアの中に指定され、個々の量子化グループが、指標（インデックス）を用いてテーブルからエントリを選択して、それぞれの彩度ＱＰオフセット値の集合を判定する。ついで、量子化グループレベルの彩度ＱＰオフセット値を用いて、量子化グループ内の各ブロックについての彩度ＱＰ値が判定される。一部の実施形態では、量子化グループ彩度ＱＰ値は、動画符号化階層の高位レベルにすでに指定されている、ブロックの輝度ＱＰおよび彩度ＱＰオフセット値と共に用いられる。
【００１４】
以下のセクションＩは、追加の彩度ＱＰオフセット値を指定する方法を記述する。具体的には、セクションＩ．ａは、追加の彩度ＱＰオフセット値を量子化グループ内に明示的に指定する方法を記述し、セクションＩ．ｂは、見込まれる彩度ＱＰオフセット値のテーブルを指定する方法を記述する。次いでセクションＩＩは、追加の彩度ＱＰオフセット値を識別して、それらを画像のさまざまな領域に割り当てるためのさまざまなシステムおよび方法を記述する。セクションＩＩＩは、本発明の一部の実施形態を実装する動画符号化器システムおよび動画復号器システムについて記述し、セクションＩＶは、本発明の一部の実施形態が実装されるコンピュータシステムについて記述する。
【００１５】
Ｉ．追加の彩度ＱＰオフセットの指定
ａ．追加の彩度ＱＰオフセットを量子化グループ内に指定する
本発明の一部の実施形態は、一続きの動画を符号化するために彩度量子化パラメータオフセット値（彩度ＱＰオフセット）を指定する方法を提供する。方法は、彩度ＱＰオフセット指定を彩度量子化グループに関連付けるもので、個々の彩度ＱＧは、１つ以上の動画データユニット（例えばＨＥＶＣにおける符号化ユニット）を包含している。一部の実施形態では、彩度量子化グループに関連付けられた彩度ＱＰオフセット指定の集合が、彩度量子化グループの中の動画データユニットの符号化構造内で符号化されるかまたはそれに組み込まれる。一部の実施形態では、彩度量子化グループについての彩度ＱＰオフセット指定が、彩度量子化グループを包含する高位レベルの動画符号化階層（例えばスライスまたはピクチャ）に位置する動画符号化構造について指定される他の彩度ＱＰオフセット指定に加えて、適用される。一部の実施形態では、さまざまなレベルからの彩度ＱＰオフセットが、（例えば、それらを輝度ＱＰ値に加えることによって）一緒に適用されて、彩度量子化パラメータ（彩度ＱＰ）が判定される。
【００１６】
一部の実施形態では、輝度量子化グループ（輝度ＱＧ）に加えて、彩度量子化グループ（彩度ＱＧ）が定義される。輝度ＱＧも１つ以上の動画データユニットを包含するが、輝度ＱＧは、輝度量子化パラメータ（輝度ＱＰ）を指定するためのものである。一部の実施形態では、彩度ＱＧが、１つ以上の輝度ＱＧと重なり合うかまたはそれらを包含してもよい。言い換えると、彩度ＱＧ内のさまざまな領域が、さまざまな輝度ＱＧに属していてもよく、従って、さまざまな輝度ＱＰを有していてもよい。
【００１７】
本発明の一部の実施形態に関して、図１は階層的動画符号化構造１００を示す図であるが、ここで彩度量子化グループ（彩度ＱＧ）は、個々のグループがそれ自体の彩度ＱＰオフセット指定の集合を持つ状態で含まれている。階層的動画符号化構造１００は、複数のピクチャ１０１乃至１０３を含んでいる。それらのうちでピクチャ１０２は、複数のスライス１１１乃至１１３を含んでいる。スライス１１２は、複数の彩度ＱＧ１２１乃至１２３を含んでいる。ピクチャ１０２は、一組の(a set of)彩度ＱＰオフセット指定を含むピクチャパラメータセット（ＰＰＳ）１３２を有する。彩度ＱＧ１２１乃至１２３は、それぞれ、彩度ＱＰオフセットセット１４１乃至１４３に関連付けられている。
【００１８】
階層的動画符号化構造１００は、一続きの動画画像に対応する。一続きの動画画像は、階層のさまざまなレベルにおける動画データユニットの層で構成されており、高位レベルにおける動画データユニットは、低位レベルにおける１つ以上の動画データユニットを包含している。例えば、ピクチャのグループ（ＧＯＰ）は、ピクチャより高位の階層レベルにある動画データユニットであり、ピクチャは、ピクチャのスライスより高位の階層レベルにある動画データユニットであり、スライスは、符号化ツリーユニットより高位の階層レベルにある動画データユニットである等々である。一部の実施形態では、高位レベルの動画データユニット用に指定された少なくとも一部のパラメータは、高位レベルの動画データユニットが包含する低位レベルの動画データユニットに適用可能である。例えば、一部の実施形態では、（ＰＰＳ１３２からの）ピクチャ１０２についてのピクチャレベルの彩度ＱＰオフセット指定は、ピクチャ１０２によって包含されるすべての彩度ＱＧ（例えば、彩度ＱＧ１２１乃至１２３）に適用可能である。
【００１９】
動画符号化構造１００は、一部の実施形態ではビットストリームとして符号化される。そのようなビットストリームは、ＨＥＶＣ／Ｈ．２６５標準やＭＰＥＧ−４ＡＶＣ／Ｈ．２６４標準のような、確立された動画符号化フォーマットに基づいている。Ｈ．２６５標準に基づくピクチャは、１つ以上のスライスを含むことができ、各スライスは、１つ以上の符号化ツリーユニット（ＣＴＵ）を有することができる。さらに、各ＣＴＵは、ブロックとして細分化されることがある。また、Ｈ．２６５では、輝度成分を量子化／逆量子化するための輝度量子化グループの定義が可能になる。各量子化グループでは、量子化グループ内の動画データユニットに固有の輝度量子化パラメータの導出ができる。導出された後、輝度量子化パラメータを用いて輝度ＤＣＴ係数の量子化が行われる。Ｈ．２６５標準の下で、Ｈ．２６５準拠のビットストリームのピクチャレイヤまたはスライスレイヤで提供されるオフセット値に基づいて、輝度量子化パラメータから彩度量子化パラメータが導出される。動画符号化構造１００は、Ｈ．２６５標準によって可能になるピクチャ／スライスレイヤの彩度ＱＰオフセットに加えて、彩度ＱＰオフセットシグナリングまたはその指定を提供する。
【００２０】
彩度ＱＧ１４１乃至１４３は、動画符号化構造１００の中の定義された範囲である。ＱＧ１４１乃至１４３の各々は、それ自体の彩度ＱＰオフセット値の集合１４１乃至１４３に関連付けられる。一部の実施形態では、量子化グループは、同じ一組のＱＰ値を共有する一群の動画データユニットであってもよい。一部の実施形態では、ＱＧの中の彩度ＱＰオフセットについてのシグナリングは、ＱＧ内のすべての動画データユニットに適用される。一部の実施形態では、ＱＰオフセットは、最初にシグナリングされた彩度残余情報から始まって、それ以降適用される。シグナリングに先行するいかなるエリアも、シグナリングされた彩度ＱＰオフセットに関連付けられない。言い換えると、ＱＧは「断片化」されることがある。
【００２１】
一部の実施形態では、ＱＧ（彩度または輝度）は、例えば符号化ツリーユニット、符号化ユニットまたは変換ユニットのような、動画符号化階層のさまざまなレベルまたは深度で定義されてもよく、これらはＨＥＶＣでサポートされている。一部の実施形態では、彩度ＱＰオフセットについてのＱＧの定義は、利用可能な場合には輝度成分についてのＱＧの定義を受け継ぐ。
【００２２】
一部の実施形態では、ＱＧ（彩度または輝度）の深度、レベルおよびサイズは、ビットストリームの中で柔軟に指定することができ、また、ピクチャ毎に異なっていてもよい。例えば、あるピクチャ（例えば１０１）が、その彩度ＱＧを符号化の四分木の最上位レベルに指定し（すなわち、ＱＧはＣＴＵである）、別のピクチャ（例えば１０３）が、その彩度ＱＧを符号化の四分木の低位レベルに指定することができる（例えば、ＱＧは、四分木のうちの符号化ブロックである）。一部の実施形態では、高位レベルのパラメータ（例えばＰＰＳまたはスライスヘッダ）が、動画符号化階層のどのレベルでピクチャのＱＧが定義されることになるのかを指定する。
【００２３】
また、図１は、彩度ＱＧによって指定されたオフセットをどのように用いて彩度ＱＰ値を計算するのかを示す図である。図１に示すような一部の実施形態では、彩度ＱＰオフセットパラメータの第１の集合は、すでにＰＰＳ１３２（および／またはスライス１１２のヘッダ）でシグナリングされている。一部の実施形態では、彩度ＱＧより上のレベル（例えば、ＰＰＳおよび／またはスライスヘッダ）で指定されている彩度ＱＰオフセット値は、ＱＧがそれ自体の彩度ＱＰオフセット値を指定する場合には、無視される。一部の実施形態では、高位レベルの彩度ＱＰオフセットシンタックス要素とＱＧレベルの彩度ＱＰオフセットとが、オーバヘッドを削減するため一緒に考慮される。すなわち、彩度ＱＰ値の適合は、両方のパラメータセットを同時に関連付けながら行われるのであって、シグナリングされた情報は、「二次」オフセットと考えてもよい。実施形態によっては、現行の彩度ＱＧについての彩度ＱＰ値は、以下のように計算される。
QPchroma[i]=QPluma+QPoffset_pps[i]+QPoffset_quant_group[i]    （１）
（第１の彩度成分についてはｉ＝０；第２の彩度成分についてはｉ＝１）
ここで、ＱＰｌｕｍａは、現行の彩度量子化グループに対応する輝度成分のＱＰであり、ＱＰｏｆｆｓｅｔ＿ｐｐｓ［ｉ］は、現行のＰＰＳ（またはスライスヘッダ）からのｉ番目の彩度成分のＱＰオフセットであり、ＱＰｏｆｆｓｅｔ＿ｑｕａｎｔ＿ｇｒｏｕｐ［ｉ］は、その成分のためにＱＧレベルでシグナリングされる追加オフセットである。ＱＰｏｆｆｓｅｔ＿ｐｐｓ［ｉ］＋ＱＰｏｆｆｓｅｔ＿ｑｕａｎｔ＿ｇｒｏｕｐ［ｉ］は、このようにしてｉ番目の彩度成分の総合的彩度ＱＰオフセットを構成している。
【００２４】
一部の実施形態では、彩度ＱＰ値の適合は、複数のレベルの動画符号化階層からの彩度ＱＰオフセットパラメータに基づいている。例えば、一部の実施形態では、彩度ＱＰ値の計算は、ＰＰＳからだけでなくスライスヘッダからの彩度ＱＰオフセット値も考慮する。実施形態によっては、現行のＱＧの彩度成分ｉについての彩度ＱＰ値は、以下のように計算される。
QPchroma[i]=QPluma+QPoffset_pps[i]
+QPoffset_slice[i]+QPoffset_quant_group[i]    （２）
ここでＱＰｏｆｆｓｅｔ＿ｓｌｉｃｅ［ｉ］は、現行のスライスヘッダからのｉ番目の彩度成分のＱＰオフセットであり、ＱＰｏｆｆｓｅｔ＿ｐｐｓ［ｉ］は、現行のＰＰＳからのｉ番目の彩度成分のＱＰオフセットであり、ＱＰｏｆｆｓｅｔ＿ｐｐｓ［ｉ］＋ＱＰｏｆｆｓｅｔ＿ｓｌｉｃｅ［ｉ］＋ＱＰｏｆｆｓｅｔ＿ｑｕａｎｔ＿ｇｒｏｕｐ［ｉ］という和は、ｉ番目の彩度成分の総合的彩度ＱＰオフセットである。一部の実施形態では、任意で、動画符号化階層のその他のレイヤにおいて１つ以上の追加の彩度ＱＰオフセット値を指定することが可能である。特定の符号化ブロックを符号化もしくは復号するために、実施形態によっては、その特定の符号化ブロックを包含する（またはそれに適用可能な）動画符号化階層の各レベルに沿って指定された彩度オフセットＱＰ値の一部または全部を用いる。
【００２５】
前述のとおり、彩度ＱＧの彩度ＱＰ値は、彩度ＱＰオフセットを、彩度ＱＧに適用可能な輝度ＱＰ値に加えることによって計算される。一部の実施形態では、彩度ＱＧに対応する輝度ＱＰ値が、彩度ＱＧ内で変わることがある。これは、輝度ＱＧと彩度ＱＧとが重なり合うことによって、彩度ＱＧは、異なる輝度ＱＧに入る符号化ユニットを包含し、従って、異なる輝度ＱＰ値を有することがあるためである。その結果、彩度ＱＧ内の異なる符号化ユニット同士が、（彩度ＱＧに適用可能な彩度ＱＰオフセットが、彩度ＱＧ内の異なる輝度ＱＰ値に適用されることから）、異なる彩度ＱＰ値を有することになってしまう可能性がある。
【００２６】
図１の例では、彩度ＱＧ１２１は、彩度ＱＧ１２１が４つの異なる輝度ＱＧ１７１乃至１７４と重なり合うため、４つの対応する輝度ＱＰ値（ＱＰ輝度）を有している。彩度ＱＧ１２１のこれらの４つの輝度ＱＰ値の結果として、ＰＰＳオフセット１３２およびＱＧ１オフセット１４１からの彩度ＱＰオフセット（ＱＰｏｆｆｓｅｔ＿ｐｐｓ、ＱＰｏｆｆｓｅｔ＿ｓｌｉｃｅ、ＱＰｏｆｆｓｅｔ＿ｑｕａｎｔ＿ｇｒｏｕｐ）を適用した後、４つの見込まれる彩度ＱＰ値が生じる。従って、彩度ＱＧ１２１の中の符号化ユニットは、符号化ユニットがその中に入る根本的な輝度ＱＧに依存して、これらの４つの見込まれる彩度ＱＰ値のうちの１つを有しうる。同様に、彩度ＱＧ１２３は、２つの異なる輝度ＱＧ１８１乃至１８２と重なり合い、彩度ＱＧ１２３の中の符号化ユニットは、符号化ユニットがその中に入る根本的な輝度ＱＧに依存して、２つの見込まれる彩度ＱＰ値のうちの１つを有しうる。
【００２７】
他方、彩度ＱＧ１２２は、対応する輝度ＱＰ値を１つだけ有しているが、それは、彩度ＱＧ１２２が完全に輝度ＱＧ１７５内に入っている（または、輝度ＱＧ１７５とまったく同じ符号化ユニットの集合を包含している）からである。従って、彩度ＱＧ１２２の中の符号化ユニットは、すべて、彩度ＱＰオフセットを適用した後、同じ彩度ＱＰ値を有する。
【００２８】
大半の動画符号化フォーマット（例えばＹＣｂＣｒ）については各輝度成分には２つの彩度成分が存在することから、一部の実施形態では、量子化グループについての各彩度ＱＰオフセットは、２つの彩度成分についての２つのオフセット値を計算するための指定を含む一組の値である。一部の実施形態に関して、図２ａ乃至図２ｃは、図１のＱＧ１４１についての一組のオフセット値を符号化するための複数の方法を示す図である。実施形態によっては、これらの方法のうち１つだけを用いて一組の彩度ＱＰオフセット値を符号化する。一部の実施形態は、ＱＧ固有の特性に基づいて、異なるＱＧには異なる方法を選択する。
【００２９】
図２ａは、彩度ＱＰオフセット値の集合を２つの独立したオフセット値２４１および２４２として示す図である。これら２つの値は、成分［０］（２５１）用および成分［１］（２５２）用の彩度ＱＰオフセットとして直接用いられる。一部の実施形態では、２つの彩度成分が互にほとんど相関関係がない場合に、彩度ＱＰオフセットを符号化する、この方法を選択する。彩度ＱＰオフセット値を符号化するこの方法の別例を、以下に図５を参照して詳述する。
【００３０】
図２ｂは、両方の彩度成分（２５３および２５４）によって彩度ＱＰオフセットとして同時に用いられる１つの値２４３として符号化されるオフセット値の集合を示す図である。一部の実施形態では、２つの彩度成分が、輝度成分とそれらとの関係において、極めて類似している場合に、この方法を選択する。彩度ＱＰオフセット値を符号化するこの方法の別例を、以下に図６を参照して詳述する。
【００３１】
図２ｃは、直接オフセットに基づいて直接オフセット値２４４および差分値２４５として符号化されるオフセット値の集合を示す図である。この例では、直接オフセット値２４４は、第１の彩度成分（２５５）の彩度ＱＰオフセットとして直接適用され、他方、差分値２４５と直接値２４４との和が、第２の彩度成分（２５６）の彩度ＱＰオフセット値として用いられる。一部の実施形態では、２つの彩度成分が、輝度成分とそれらとの関係において、ほんの数ビットのビットストリーム内で安価に符号化されうる小さなオフセットの分だけ異なる場合に、この方法を選択する。この方法は、（成分［１］のための）第２の彩度ＱＰオフセットを、第１の彩度ＱＰオフセットと関連付けながら符号化するものである。すなわち、第２の彩度ＱＰオフセットは、このとき、（成分［０］のための）第１の彩度ＱＰオフセットから予測される。一部の実施形態では、第１の彩度成分についての彩度ＱＰ値は、以下のように計算される。
QPchroma[0]=QPluma+QPoffset_pps[0]+QPoffset_quant_group[0]    （３）
【００３２】
第２の彩度成分についての彩度ＱＰ値は、以下のように計算される。
QPchroma[1]=QPluma+QPoffset_pps[1]+QPoffset_quant_group[0]
+QPoffset_quant_group[1]                          （４）
（第１の彩度成分についてはｉ＝０；第２の彩度成分についてはｉ＝１）
【００３３】
上記のとおり、一部の実施形態では、動画符号化階層のうちの複数の異なるレイヤからの彩度ＱＰオフセット値を用いて、最終的な彩度ＱＰ値を導出する。ＰＰＳとスライスヘッダの両方からの彩度ＱＰオフセット値を用いる一部の実施形態については、第１の彩度成分についての彩度ＱＰ値は、以下のように計算される。
QPchroma[0]=QPluma+QPoffset_pps[0]+QPoffset_slice[0]
+QPoffset_quant_group[0]                    （５）
【００３４】
第２の彩度成分についての彩度ＱＰ値は、以下のように計算される。
QPchroma[1]=QPluma+QPoffset_pps[1]+QPoffset_slice[1]
+QPoffset_quant_group[0]+QPoffset_quant_group[1]    （６）
【００３５】
上記のとおり、一部の実施形態では、輝度量子化グループおよび／または彩度量子化グループの定義は、ピクチャレベルにあるパラメータによって規定される。図３は、彩度量子化グループの定義を規定する例示的なピクチャヘッダまたはＰＰＳ３００を示す図である。例示的なピクチャヘッダ３００は、動画符号化構造１００のピクチャ１０２に関連付けられている。ピクチャヘッダ３００は、追加の彩度ＱＰオフセット（すなわち、彩度ＱＰ値の適合）を収容するために、Ｈ．２６５標準から修正された疑似コードによって記述されている。一部の実施形態では、動画標準（例えばＨ．２６５標準または修正された標準）用の疑似コードは、その動画標準に準拠したビットストリームを処理する時に、動画復号器に必要とされる動作を記述する。また、疑似コードは、その動画標準に準拠したビットストリームを生成する時に、動画符号化器に必要とされる動作を記述する。
【００３６】
例示を目的として、ピクチャヘッダ３００の疑似コードを図３に黒い行３１１乃至３１３で示す。行３１１乃至３１３によって、追加の彩度ＱＰオフセット値が可能になり、ピクチャ１０２の中の彩度ＱＰオフセットのための彩度量子化グループが定義される。具体的には、行３１１のパラメータ「ａｄｄｉｔｉｏｎａｌ＿ｃｈｒｏｍａ＿ｑｐ＿ｏｆｆｓｅｔ」が、ビットストリームの中に追加の彩度ＱＰオフセット指定があるだろうということを復号器に知らせる。この変数が特定のピクチャについて設定されていない場合、ビットストリームは、ビットの浪費を避けるため、そのピクチャについて追加の彩度ＱＰオフセットを指定するためのビットを含めようとしないであろう。
【００３７】
行３１３のパラメータ「ｃｈｒｏｍａ＿ｑｐ＿ｏｆｆｓｅｔ＿ｍａｘ＿ｄｅｐｔｈ」は、彩度ＱＧのレベル（ゆえに、サイズまたは階層深度）を定義するものである。このパラメータは、符号化ツリーユニット（ＣＴＵ）全体のサイズと等しいように設定するか、あるいはビットストリームの中の見込まれる最小の符号化ユニットのサイズまで小さく設定することができる。一部の実施形態では、追加の彩度ＱＰオフセットの指定およびシグナリングを、いずれかの所望のレベルで（例えば、ＣＴＵレベル、彩度が定義された量子化グループレベル、符号化ユニットレベル、変換ユニットレベル等で）行うことが可能である。
【００３８】
一部の実施形態では、特に彩度ＱＰオフセットについて量子化グループを定義する代わりに、ビットストリームが、パラメータ「ｄｉｆｆ＿ｃｕ＿ｑｐ＿ｄｅｌｔａ＿ｄｅｐｔｈ」を使用し、それが、輝度ＱＰについての量子化グループも定義する。一部の実施形態では、量子化グループを定義するためのパラメータが利用できない場合には、輝度については同一のＱＰがピクチャ全体に割当てられ、輝度についてのＱＰ適合は許可されない。
【００３９】
図４は、量子化グループの中にありうる例示的な符号化ツリーユニット４００を示す図である。符号化ツリーユニット４００は、追加の彩度ＱＰオフセットを収容するために、Ｈ．２６５疑似コードから修正された疑似コードによって記述されている。符号化ツリーユニット４００は、量子化グループ１２２の中にあり、これはピクチャ１０２のスライス１１２の中にある。
【００４０】
符号化ツリーユニット４００についての疑似コードを、黒い行４１１乃至４１３で示しており、これらは、符号化ツリーユニットがＱＧの一部であるかどうかを判定するために追加される。具体的には、行４１１で、（例えばピクチャヘッダ３００からの）パラメータ「ａｄｄｉｔｉｏｎａｌ＿ｃｈｒｏｍａ＿ｑｐ＿ｏｆｆｓｅｔ」を用いて、追加の彩度情報が許容されているかどうかが指示される。パラメータ「ｃｈｒｏｍａ＿ｑｐ＿ｏｆｆｓｅｔ＿ｍａｘ＿ｄｅｐｔｈ」が変数「ｌｏｇ２ＣｂＳｉｚｅ」と比較され、符号化ツリーユニット４００が、（例えば量子化グループ１２２のような）量子化グループの中にあるのかどうかが判定される。そうであれば、疑似コードは、行４１２で変数「ＩｓＣｒＣｕＱｐＯｆｆｓｅｔＣｏｄｅｄ」を０に設定する。一部の実施形態では、これによって、彩度量子化グループの開始点が初期化される。
【００４１】
図５は、ＱＧ１２２内の追加の彩度ＱＰオフセット指定を示す図である。図３および図４を参照しながら上記で論じたとおり、ＱＧ１２２は、符号化ツリーユニット４００を含むようにピクチャヘッダ３００によって定義されている。追加の彩度ＱＰオフセットは、符号化ツリーユニット４００の変換ユニット５００内で指定される。変換ユニット５００は、追加の彩度ＱＰオフセットを収容するために、Ｈ．２６５疑似コードから修正された疑似コードによって記述されている。
【００４２】
変換ユニット５００についての疑似コードを、黒い行５１１乃至５１９で示しており、これらは、追加の彩度ＱＰオフセットを指定するために追加される。具体的には、行５１１では、パラメータ「ａｄｄｉｔｉｏｎａｌ＿ｃｈｒｏｍａ＿ｑｐ＿ｏｆｆｓｅｔ」を用いて、追加の彩度情報が許容されているかどうかが指示される。変数「ＩｓＣｒＣｕＱｐＯｆｆｓｅｔＣｏｄｅｄ」を用いて、変換ユニット５００において彩度ＱＰオフセット情報を指定する（または受信する）ことが必要かどうかが指示される。ＱＧ１２２についての彩度ＱＰオフセット値がすでに符号化されている場合、彩度ＱＰオフセット値を再度指定する必要はない。
【００４３】
ＱＧ１２２が一組の彩度ＱＰオフセット値をまだ符号化していなかった（すなわち、変数「ＩｓＣｒＣｕＱｐＯｆｆｓｅｔＣｏｄｅｄ」が０である）場合、行５１２乃至５１７で変換ユニット５００は、２つの彩度成分についての彩度ＱＰオフセット値を指定する。この場合、変換ユニットは、彩度ＱＰオフセットの集合を、２つの独立した符号付きの値として指定し、符号付きの値はそれぞれ、大きさ（「ｃｕ＿ｃｈｒｏｍａ＿ｃｍｐ０＿ｑｐ＿ｏｆｆｓｅｔ＿ａｂｓ」または「ｃｕ＿ｃｈｒｏｍａ＿ｃｍｐ１＿ｑｐ＿ｏｆｆｓｅｔ＿ａｂｓ」）と符号フラグ（「ｃｕ＿ｃｈｒｏｍａ＿ｃｍｐ０＿ｑｐ＿ｄｅｌｔａ＿ｓｉｇｎ＿ｆｌａｇ」および「ｃｕ＿ｃｈｒｏｍａ＿ｃｍｐ０＿ｑｐ＿ｄｅｌｔａ＿ｓｉｇｎ＿ｆｌａｇ」）とを用いてシグナリングされる。疑似コードは、ついで、変数「ＩｓＣｒＣｕＱｐＯｆｆｓｅｔＣｏｄｅｄ」を１に設定し、これは、この量子化グループの彩度ＱＰオフセット値がすでに指定されていることを示す。
【００４４】
図２ａ乃至図２ｂを参照しながら前述したとおり、別の実施形態においては、量子化グループは、２つの彩度成分についての彩度ＱＰオフセット値を、別のかたちで指定する。図６は、ＱＧ１２２内の追加の彩度ＱＰオフセットの指定を、２つの彩度成分について彩度ＱＰオフセット値を指定するための別法を用いて示す図である。図６は、変換ユニット５００についての疑似コードと同様の疑似コードによって記述されている変換ユニット６００を示しており、唯一の違いは、行６１１乃至６１６は、両方の彩度成分に対して彩度ＱＰオフセット値（大きさ＋符号）を１つだけ指定するということである。一部の実施形態では、ほとんどの場合に２つの色成分の重要度は変わらないであろうから、両方の彩度成分について１つの彩度ＱＰオフセット値を指定することで十分である。１つか２つのそのようなパラメータのシグナリングは、事前に決められてもよいし、あるいは、例えばＳＰＳ、ＰＰＳまたはスライスヘッダのような、さまざまな高位シンタックスレベルでシグナリングされてもよいだろう。
【００４５】
一部の実施形態について、図７は、追加の彩度ＱＰオフセット指定を許容する動画ビットストリームから彩度ＱＰ値を判定するためのプロセス７００を概念的に示す図である。一部の実施形態では、プロセス７００は、表示用の動画ビットストリームを復号する時にこのプロセスを用いて彩度成分の逆量子化を行う動画復号器によって行われる。一部の実施形態では、プロセスは、復号器が動画ビットストリームを受信した時に始まり、表示のためかまたはその他の目的で、特定の動画ピクチャの復号を開始する。
【００４６】
７０５で、プロセス７００は、特定の動画ピクチャのピクチャヘッダまたはＰＰＳの中のパラメータを処理する。図３を参照しながら上述したとおり、一部の実施形態では、動画ピクチャのピクチャヘッダまたはＰＰＳは、動画ピクチャについて追加の彩度ＱＰオフセットが許容されているかどうかを判定するためのフラグ（例えば「ａｄｄｉｔｉｏｎａｌ＿ｃｈｒｏｍａ＿ｑｐ＿ｏｆｆｓｅｔ」）を含んでいる。また、ピクチャヘッダまたはＰＰＳは、追加の彩度ＱＰオフセットが定義されることになる動画階層のレイヤを（例えば、変数「ｃｈｒｏｍａ＿ｑｐ＿ｏｆｆｓｅｔ＿ｍａｘ＿ｄｅｐｔｈ」を設定することによって）識別する。
【００４７】
次に、プロセスは（７１０で）、高位レベルの彩度ＱＰオフセット値を識別する。一部の実施形態では、この高位レベルの彩度ＱＰオフセット値は、ピクチャヘッダの中に（またはＰＰＳの一部として）符号化されたピクチャレベルのオフセットである。一部の実施形態では、この高位レベルの彩度ＱＰオフセット値は、スライスヘッダの中に符号化されたスライスレベルのオフセットである。一部の実施形態は、ピクチャレベルとスライスレベルとをどちらも含めて、複数の高位レベルの彩度ＱＰオフセット値を識別する。
【００４８】
プロセスは次いで（７２０で）、この特定の動画ピクチャおよび／またはスライスについて追加の彩度ＱＰオフセットが許容されているかまたは利用可能であるかどうかを判定する。追加の彩度ＱＰオフセットが利用可能でない場合、プロセスは７５０へ進む。追加の彩度ＱＰオフセットが利用可能である場合、プロセスは７３０へ進む。
【００４９】
７３０でプロセスは、彩度量子化グループの開始点に到達したかどうかを判定する。一部の実施形態では、プロセスは、彩度量子化グループとして識別されていた動画階層のレベルに位置しているのかどうかを調べる。プロセスが彩度量子化グループの開始点に位置していない（例えば、すでに彩度量子化グループの内部に位置している）場合、プロセスは７５０へ進む。プロセスが彩度量子化グループの開始点に位置している場合、プロセスは７４０へ進む。動作７２０および７３０の例は、上記の図４を参照しながら論じている。
【００５０】
７４０でプロセスは、彩度量子化グループについての彩度ＱＰオフセット値を識別する。一部の実施形態では、彩度ＱＰオフセットは、図５および図６を参照しながら上記で論じたように、彩度量子化グループ内で明示的に符号化される。
【００５１】
次いでプロセスは（７５０で）、彩度量子化グループについての輝度ＱＰ値を識別する。上記のとおり、一部の実施形態では、輝度ＱＰ値が輝度量子化グループに従って設定されるが、輝度量子化グループは、彩度量子化グループと同じであってもよいし、同じでなくてもよい。シグナリングによっては、輝度量子化グループが彩度量子化グループより多いことや少ないことがある。一部の実施形態では、輝度量子化グループが複数の彩度量子化グループを含んでいることがあり、逆の場合もある。一部の実施形態では、彩度量子化グループと輝度量子化グループとは、互いに重なり合うことがある。従って、同じ彩度量子化グループの中の異なる符号化ユニットが、輝度量子化グループに基づいて異なる輝度ＱＰを有することがある。
【００５２】
次に、プロセスは（７６０で）彩度ＱＰ値を計算する。復号器の場合、一部の実施形態は、識別された輝度ＱＰ値と識別された個々の彩度ＱＰオフセットとから、彩度ＱＰ値を計算する。一部の実施形態では、数式（１）乃至（６）として上記で示すように、（スライス／ピクチャレベルおよびＱＧレベルからの）識別された彩度ＱＰオフセットをすべて輝度ＱＰ値に加えることによって、これが達成される。
【００５３】
次いでプロセスは（７７０で）、（高位レベルの彩度ＱＰオフセットがピクチャ全体に関する場合）ピクチャの終了点に達したかどうか、あるいは、（高位レベルの彩度ＱＰオフセットがスライスに関する場合）スライスの終了点に達したかどうかを判定する。そうであれば、プロセス７００は終了する。そうでなければ、プロセス７００は、７３０に戻って、次の量子化グループを処理する。
【００５４】
図１乃至図６を参照しながら上記で示したとおり、彩度ＱＰ値は、輝度ＱＰ値からのオフセットを用いることによって予測的に符号化される。また、一部の実施形態では、オフセット値自体も、例えばＱＧレベルのオフセットがスライスおよび／またはピクチャレベルのオフセットからのオフセットであったり、および／または、１つの彩度成分のオフセット値が別の彩度成分からのオフセットとして符号化されたりというように、相互からのオフセットによって予測的に符号化される。一部の実施形態では、彩度ＱＰオフセットはさらに、隣接する符号化ユニットもしくは符号化ブロックの彩度値もしくはオフセットから予測されたり、あるいは、現行の彩度量子化グループの符号化ユニットもしくは符号化ブロックに非常に十分に類似している可能性が高いため、隣接する動画ピクチャの中のコロケートされた符号化ユニットもしくは符号化ブロックの彩度値もしくはオフセットから予測されたりする。一部の実施形態では、少なくとも一部の量子化グループについては、予測は行われない。このような場合、彩度ＱＰ値は、（輝度からオフセットする必要はないため）輝度成分のＱＰパラメータが無視されるように（オフセットとしてではなく）明示的に符号化される。
【００５５】
一部の実施形態では、隣接する量子化グループからの一組の彩度ＱＰオフセット値が現行の量子化グループについて用いられることになることが、フラグを用いて指示される。一部の実施形態では、この隣接する量子化グループは、空間的に現行の量子化グループの左側かまたはその上側に位置している。例えば、一部の実施形態では、隣接する量子化グループの彩度ＱＰオフセット値が用いられることになるのかどうかが、フラグ「ｃｕ＿ｑｐ＿ｕｐｄａｔｅ＿ｓｉｇｎａｌ」を用いて指示される。一部の実施形態では、フラグ「ｃｕ＿ｑｐ＿ｕｐｄａｔｅ＿ｓｉｇｎａｌ」が、図６の行６１２の「ｃｕ＿ｃｈｒｏｍａ＿ｑｐ＿ｏｆｆｓｅｔ＿ａｂｓ」パラメータの前にシグナリングされる。
【００５６】
フラグが「１」である場合、現行の量子化グループは、それ自体の彩度ＱＰオフセット値を指定するための更新を提供することになる。フラグが「０」である場合、現行の量子化グループは、それ自体の彩度ＱＰオフセット値の集合を更新するのではなく、最後に指定された彩度ＱＰオフセット値の集合から（例えば左側の隣接する量子化グループから）か、または、別の以前に指定された彩度ＱＰオフセット値から（例えば上側の隣接する量子化グループからかまたは別の隣接する量子化グループから）、彩度ＱＰオフセット値を継承することになる。隣接する彩度ＱＰオフセット値が利用できない場合には、一部の実施形態ではＰＰＳおよび／またはスライスヘッダからのデフォルトＱＰオフセット値を用いる。
【００５７】
一部の実施形態では、フラグ「ｃｕ＿ｑｐ＿ｕｐｄａｔｅ＿ｓｉｇｎａｌ」が、彩度ＱＰオフセット値を指定するための異なる選択肢を扱うため、追加の見込まれる値をとることがある。例えば、一部の実施形態では、フラグが「０」である場合、左側の隣接する量子化グループからの彩度ＱＰオフセット値が用いられ、フラグが「１」である場合、上側の隣接する量子化グループからの彩度ＱＰオフセット値が用いられ、フラグが「２」である場合、現行の量子化グループが、新たな一組の彩度ＱＰオフセット値を明示的に指定することになる。そうでない場合、現行の量子化グループは、ＰＰＳおよび／またはスライスヘッダからのデフォルトＱＰオフセット値を用いることになる。一部の実施形態では、現行の量子化グループによって継承される彩度ＱＰオフセット値は、隣接する量子化グループのうちの少なくとも２つ（例えば左側と上側）の彩度ＱＰオフセット値の平均値を基にしている。
【００５８】
オーバヘッドをさらに削減するため、一部の実施形態では、これらの追加の彩度ＱＰオフセットが入るのはわずかな範囲の値、すなわち−ｘからｘまでの値に限られることを指定する。そうすることによって、（Ｃｏｎｔｅｘｔ  Ａｄａｐｔｉｖｅ  Ｂｉｎａｒｙ  Ａｒｉｔｈｍｅｔｉｃ（ＣＡＢＡＣ）符号化の場合、または「有限の」共通可変長符号化スキーム("max-limited" universal variable length coding scheme)を用いる場合）シグナリングされることになる情報の予想統計が変わるため、エントロピー符号化プロセスが変わる。一部の実施形態では、ｘの値（すなわち範囲）は、シーケンス全体について事前に決められるかまたは、ＰＰＳ、ＳＰＳもしくはスライスヘッダのような高位シンタックスレベルでシグナリングされる。実施形態によっては、ｘを直接指定するか、あるいは、ｘが２の累乗に当たる場合には値ｌｏｇ２（ｘ）を指定することによって、これを達成する。一部の実施形態は、大きさすなわちａｂｓ（ｘ）とｘの符号とを分離することによってｘを指定する。ＣＡＢＡＣでは、ａｂｓ（ｘ）の値は、二値化処理の中で必要なｃＭａｘパラメータに対応する。
【００５９】
ｂ．テーブル内に追加の彩度ＱＰオフセットを指定する
オーバヘッドやビット使用をさらに削減するため、一部の実施形態は、個々の成分の見込まれるすべてのオフセット値、あるいは、両方の成分の組み合わせ値を、高位レベルシンタックスにおいて、例えばシーケンスパラメータセット（ＳＰＳ）やピクチャパラメータセット（ＰＰＳ）の中に、あるいは現行のスライスヘッダの中に指定する。実施形態によっては、高位レベルのヘッダ（ＳＰＳ／ＰＰＳ／スライスヘッダ）は、多様な見込まれるオフセット値をテーブル形式にリストし、そのテーブル内の各エントリには指標が割り当てられる。次いで、符号化ユニット／量子化グループレベルにおいて、一部の実施形態は、所望の量子化オフセット値の指標だけを指定する。そのようなオフセットは、ＰＰＳもしくはスライスヘッダで指定されるオフセット値に非依存であってもよいし、逆に、ＰＰＳもしくはスライスヘッダで指定されるオフセット値に追加されてもよい。ビットストリームサイズを削減するため、一部の実施形態は、テーブル内のエントリの数を、最大値までに制限する。
【００６０】
図８は、高位レベルヘッダで符号化された見込まれる彩度ＱＰオフセット値のテーブル８９０を含む階層的動画符号化構造８００を示す図である。動画符号化構造の低位レベルの彩度ＱＧは、次いで、指標を用いて、見込まれる彩度ＱＰオフセット値の１つをテーブル８９０から選択して、彩度ＱＰ値を計算する。動画符号化構造８００は、動画符号化構造１００に類似している。動画符号化構造８００は、複数のピクチャ８０１乃至８０３を含んでいる。それらのうちでピクチャ８０２は、複数のスライス８１１乃至８１２を含んでいる。スライス８１１は、複数の彩度ＱＧ８２１乃至８２３を含んでいる。ピクチャ８０２は、ピクチャ８０２によって包含されるすべての彩度ＱＧに適用可能な一組の彩度ＱＰオフセット指定を含む、ピクチャパラメータセット（ＰＰＳ）８３１を有する。また、図１ならびに数式（１）および（２）を参照しながら上述したとおり、一部の実施形態は、スライスレベルの彩度ＱＰオフセット（図示せず）を指定し、そして、彩度ＱＰ値の適合は、動画符号化階層の複数のレベルからの彩度ＱＰオフセットパラメータに基づいて行なわれることを指定する。図１の彩度ＱＧ１２１乃至１２３がそれら自体の彩度ＱＰオフセット値の集合を指定するのとは異なり、彩度ＱＧ８２１乃至８２３はそれぞれ、一組の彩度ＱＰオフセット値をテーブル８９０から選択する。
【００６１】
テーブル８９０は、複数のエントリを含むアレイである。各エントリは、ピクチャの中のいずれかの量子化グループによって選択されうる一組の彩度ＱＰオフセットを格納している。この例では、テーブル８９０は、エントリ８９１乃至８９５を含んでおり、それらはそれぞれ、彩度ＱＰオフセット集合Ａ、Ｂ、Ｃ、Ｄ、Ｅに対応する。一部の実施形態では、それぞれのエントリは、いかなる数の量子化グループによって選択されてもよいし、まったく選択されなくてもよい。図８の例では、ＱＧ８２２およびＱＧ８２３はいずれも、ＱＰオフセット集合Ａ（８９１）を選択し、ＱＧ８２１は、彩度ＱＰオフセット集合Ｃ（８９３）を選択する。一部の実施形態では、符号化器は、ビットレートを最小化するため、テーブル内にどの彩度ＱＰオフセット集合を含めるのか、そして、いくつの彩度ＱＰオフセット集合を含めるのかということを決定する。
【００６２】
テーブル８９０から彩度ＱＰオフセット値の集合が識別されれば、彩度量子化パラメータの計算は、図１のそれと同様である。図８の例では、（彩度ＱＧ８２１に重なり合っている４つの輝度ＱＧからの）輝度ＱＰ値８５１が彩度ＱＧ８２１に適用可能であり、（同じ輝度ＱＧからの）輝度ＱＰ値８５２が彩度ＱＧ８２２に適用可能であり、（彩度ＱＧ８２３に重なり合っている２つの輝度ＱＧからの）輝度ＱＰ値８５３がＱＧ８２３に適用可能である。輝度ＱＰ値８５１と、（ピクチャ８０２および／またはスライス８１１についての）彩度ＱＰオフセット８３１と、（ＱＧ８２１についてのテーブルのエントリ８９３から検索された）彩度ＱＰオフセットＣとを加えると、ＱＧ８２１についての彩度ＱＰ値８６１が得られる。輝度ＱＰ値８５２と、彩度ＱＰオフセット８３１と、（テーブルのエントリ８９１から検索された）彩度ＱＰオフセットＡとを加えると、ＱＧ８２２についての彩度ＱＰ値８６２が得られる。輝度ＱＰ値８５３と、彩度ＱＰオフセット８３１と、（テーブルのエントリ８９１から検索された）彩度ＱＰオフセットＡとを加えると、ＱＧ８２３についての彩度ＱＰ値８６３が得られる。
【００６３】
一部の実施形態では、彩度ＱＰオフセットのテーブルが、符号化された動画ピクチャのヘッダエリア内で符号化される。図９は、テーブル８９０を符号化する例示的なピクチャヘッダまたはＰＰＳ９００を示す図である。ピクチャヘッダ９００は、追加の彩度ＱＰオフセットを収容するために、Ｈ．２６５標準から修正された疑似コードによって記述されている。
【００６４】
ピクチャヘッダ９００のための疑似コードを、黒い行９１１乃至９１７で示しており、これらは、彩度ＱＰオフセット用の量子化グループを定義するためだけでなく、テーブル８９０を符号化するためにも追加される。具体的には、行９１１の中にあるパラメータ「ａｄｄｉｔｉｏｎａｌ＿ｃｈｒｏｍａ＿ｑｐ＿ｏｆｆｓｅｔ」が、ピクチャ８０２について追加の彩度ＱＰオフセット指定が予定されていることを復号器に知らせ、行９１３の中にあるパラメータ「ｃｈｒｏｍａ＿ｑｐ＿ｏｆｆｓｅｔ＿ｍａｘ＿ｄｅｐｔｈ」が、ピクチャ８０２の中のＱＧについてのレベル（従って、サイズまたは階層的深度）を定義する。疑似コードの行９１４乃至９１６は、次いで、テーブル８９０の各エントリ（８９１乃至８９５）についての彩度ＱＰオフセット値を定義する。図示するとおり、テーブルの各エントリには、第１の成分についての彩度ＱＰオフセット値（「ｃｈｒｏｍａ＿ｃｍｐ０＿ｑｐ＿ｏｆｆｓｅｔ［ｋ］」）が、そして、第２の成分についての彩度ＱＰオフセット値（「ｃｈｒｏｍａ＿ｃｍｐ１＿ｑｐ＿ｏｆｆｓｅｔ［ｋ］」）が、割り当てられる。
【００６５】
彩度ＱＰオフセットテーブルの各エントリについての２つの彩度成分は相関関係にある可能性が高いのだから、一部の実施形態では、一方の彩度成分の彩度ＱＰオフセット値を用いて、他方の彩度成分の彩度ＱＰオフセット値を予測する。言い換えると、テーブル内のｋ番目のエントリについて、ｃｈｒｏｍａ＿ｃｍｐ０＿ｑｐ＿ｏｆｆｓｅｔ［ｋ］が第１の彩度成分のオフセット値を表し、ｃｈｒｏｍａ＿ｃｍｐ１＿ｑｐ＿ｏｆｆｓｅｔ［ｋ］が第２の彩度成分のオフセット値を表すとすれば、ｋ番目のエントリの第２の彩度成分についての彩度ＱＰオフセットは、以下のように計算される。
chroma_cmp1_qp_offset[k]=chroma_cmp0_qp_offset[k]
+delta_chroma_cmp1_qp_offset[k]    （７）
【００６６】
つまり、完全なオフセットパラメータ、すなわちｃｈｒｏｍａ＿ｃｍｐ１＿ｑｐ＿ｏｆｆｓｅｔ［ｋ］を送信する代わりに、一部の実施形態では、差分パラメータ、すなわちｄｅｌｔａ＿ｃｈｒｏｍａ＿ｃｍｐ１＿ｑｐ＿ｏｆｆｓｅｔ［ｋ］を送信して、第２の彩度ＱＰオフセットであるｃｈｒｏｍａ＿ｃｍｐ１＿ｑｐ＿ｏｆｆｓｅｔ［ｋ］についてのオフセットを計算する。図１０は、数式（７）に従って（行１０１５および１０１６での）彩度ＱＰオフセットテーブル８９０の各エントリ（８９１乃至８９５）をｃｈｒｏｍａ＿ｃｍｐ０＿ｑｐ＿ｏｆｆｓｅｔ［ｋ］およびｄｅｌｔａ＿ｃｈｒｏｍａ＿ｃｍｐ１＿ｑｐ＿ｏｆｆｓｅｔ［ｋ］として符号化するピクチャヘッダ１０００を示す図である。
【００６７】
ビット使用を削減するために彩度ＱＰオフセットテーブルを予測的に符号化する方法は、他にもありうる。例えば、一部の実施形態では、彩度ＱＰオフセットテーブルのエントリは、１つを除くすべてのエントリが他のエントリから予測されるように、互いに予測的に符号化される。一例として、テーブル内の第１のエントリの後に続くエントリをそれぞれ、テーブル内の前のエントリから予測される差分値として符号化することが挙げられる。一部の実施形態では、第１のエントリは、明示的なＱＰである。一部の実施形態では、第１のエントリ自体がオフセットであり、従ってそれ自体が差分でもある。
【００６８】
図１１は、ピクチャヘッダ内のテーブルからの彩度ＱＰオフセット値を用いる量子化グループの中にありうる例示的な符号化ツリーユニット１１００を示す図である。符号化ツリーユニット１１００は、追加の彩度ＱＰオフセットを収容するために、Ｈ．２６５疑似コードから修正された疑似コードによって記述されている。符号化ツリーユニット１１００は、スライス８１１の量子化グループ８２１の中にある。スライス８１１は、ピクチャ８０２の中にあり、そのヘッダまたはＰＰＳは、テーブル８９０を含んでいる。符号化ツリーユニット１１００についての疑似コードは、図４の符号化ツリーユニット４００についての疑似コードと同一であるが、なぜなら、一部の実施形態では、明示的に彩度ＱＰオフセット値を内蔵する量子化グループ内の符号化ツリーユニットと、テーブルからの一組の彩度ＱＰオフセット値を用いる量子化グループ内の符号化ツリーユニットとの間には、差がないからである。
【００６９】
符号化ツリーユニット１１００についての疑似コードを、黒い行１１１１乃至１１１３で示しているが、これらは、符号化ツリーユニットがＱＧの一部であるかどうかを判定する目的で追加されたものである。具体的には、行１１１１で、パラメータ「ａｄｄｉｔｉｏｎａｌ＿ｃｈｒｏｍａ＿ｑｐ＿ｏｆｆｓｅｔ」を用いて、追加の彩度情報が許容されているかどうかが表示される。パラメータ「ｃｈｒｏｍａ＿ｑｐ＿ｏｆｆｓｅｔ＿ｍａｘ＿ｄｅｐｔｈ」が、変数「ｌｏｇ２ＣｂＳｉｚｅ」と比較されて、符号化ツリーユニット１１００が彩度量子化グループ内にあるのかどうかが判定される。また、一部の実施形態については、これが、彩度量子化グループの開始点を初期化する。
【００７０】
図１２は、指標を用いて彩度ＱＰオフセット値のテーブルの中のエントリを選択する量子化グループを示す図である。上記で論じたとおり、量子化グループ８２１は、符号化ツリーユニット１１００を含んでおり、これが次には、変換ユニット１２００を含んでいる。図１２では、変換ユニット１２００は、追加の彩度ＱＰオフセットを収容するために、Ｈ．２６５疑似コードから修正された疑似コードによって記述されている。
【００７１】
変換ユニット１２００についての疑似コードを、黒い行１２１１乃至１２１４で示しているが、これらは、追加の彩度ＱＰオフセットを指定する目的で追加されたものである。具体的には、行１２１１で、パラメータ「ａｄｄｉｔｉｏｎａｌ＿ｃｈｒｏｍａ＿ｑｐ＿ｏｆｆｓｅｔ」を用いて、追加の彩度情報が許容されているかどうかが表示される。変数「ＩｓＣｒＣｕＱｐＯｆｆｓｅｔＣｏｄｅｄ」を用いて，変換ユニット１２００において彩度ＱＰオフセット情報を指定（または受信）することが必要なのかどうかが表示される。ＱＧ８２１についての彩度ＱＰオフセットがすでに符号化されている場合、彩度ＱＰオフセット値をもう一度指定する必要はない。ＱＧ８２１がすでに一組の彩度ＱＰオフセット値を符号化しているのではない場合（すなわち、変数「ＩｓＣｒＣｕＱｐＯｆｆｓｅｔＣｏｄｅｄ」が０である場合）、行１２１２の変換ユニット１２００が、テーブル８９０からエントリを選択するための指標「ｃｕ＿ｃｈｒｏｍａ＿ｑｐ＿ｏｆｆｓｅｔ＿ｔａｂｌｅ＿ｉｎｄｅｘ」を指定する。この例では、指標の値は、テーブル８９０のエントリＣ（８９３）に格納されている彩度ＱＰオフセット値を選択するように設定される。
【００７２】
一部の実施形態について、図１３は、見込まれる彩度ＱＰオフセット値のテーブルを用いて追加の彩度ＱＰオフセット指定を実装する動画ビットストリームから彩度ＱＰオフセット値を判定するプロセス１３００を概念的に示す図である。一部の実施形態では、プロセス１３００は、表示用またはその他の目的で動画ビットストリームを復号する時にこのプロセスを用いて彩度成分の逆量子化を行う動画復号器によって行われる。一部の実施形態では、プロセス１３００は、復号器が動画ビットストリームを受信した時に始まり、一部の実施形態では、特定の動画ピクチャの復号を開始する。
【００７３】
１３０５で、プロセス１３００は、特定の動画ピクチャのピクチャヘッダまたはＰＰＳの中のパラメータを処理する。一部の実施形態では、ピクチャヘッダは、動画ピクチャについて追加の彩度ＱＰオフセットが許容されているかどうかを判定するためのフラグを含んでいる。また、ピクチャヘッダは、追加の彩度ＱＰオフセットについての量子化グループが定義されることになる動画階層のレイヤを識別するためのパラメータを含んでいる。
【００７４】
次に、プロセスは（１３１０で）、高位レベルの彩度ＱＰオフセット値を識別する。一部の実施形態では、この高位レベルの彩度ＱＰオフセット値は、ピクチャヘッダの中に（またはＰＰＳの一部として）符号化されたピクチャレベルのオフセットである。一部の実施形態では、この高位レベルの彩度ＱＰオフセット値は、スライスヘッダの中に符号化されたスライスレベルのオフセットである。一部の実施形態では、ピクチャレベルとスライスレベルとをどちらも含めて、複数の高位レベルの彩度ＱＰオフセット値を識別する。
【００７５】
プロセスは次いで（１３２０で）、この特定の動画ピクチャまたはスライスについて追加の彩度ＱＰオフセットが許容されているかまたは利用可能であるかどうかを判定する。追加の彩度ＱＰオフセットが利用可能でない場合、プロセスは１３５０へ進む。追加の彩度ＱＰオフセットが利用可能である場合、プロセスは１３２５へ進み、ビットストリームから彩度ＱＰオフセットテーブルのエントリを受信する。
【００７６】
次に、プロセスは（１３３０で）、量子化グループの開始点に達したかどうかを判定する。一部の実施形態では、プロセスは、量子化グループとして識別されていた動画階層のレベルに位置しているのかどうかを調べる。プロセスが量子化グループの開始点に位置していない（例えば、すでにＱＧの内部に位置している）場合、プロセスは１３５０へ進む。プロセスが量子化グループの開始点に位置している場合、プロセスは１３３５へ進む。
【００７７】
１３３５でプロセスは、符号化すべき残余の彩度係数があるかどうかを判定する。一部の実施形態では、残余の彩度係数がない場合には、オフセット（またはそれらの関連指標）は、まったくシグナリングされない。シグナリングは、彩度ブロックについての最初の非ゼロ変換係数に遭遇した時に開始され、その時点から彩度量子化グループの終了まで、彩度ＱＰオフセットはアクティブになる。彩度ＱＰオフセットは、彩度ブロックの最初の非ゼロ変換係数に遭遇するまで０である（従って、彩度係数を持たない領域は、彩度ＱＰオフセットシグナリングを有しないであろう）。符号化すべき残余の彩度係数がある場合、プロセスは１３４０へ進む。そうでなければ、プロセスは１３５０へ進む。
【００７８】
１３４０では、プロセスは、量子化グループについての彩度ＱＰオフセット値の集合を格納しているとして、彩度ＱＰオフセットテーブル内のエントリの１つを選択する。一部の実施形態では、この動作は、ビットストリームから指標を受信することと、受信した指標を用いて彩度ＱＰオフセットテーブルからエントリを選択することとを伴う。テーブル内の彩度ＱＰオフセット値を予測的に符号化するような一部の実施形態では、このプロセスは、予測または差分値から（両方の彩度成分の）彩度ＱＰオフセット値を復元することを含んでいる。
【００７９】
次いでプロセスは（１３５０で）、量子化グループについての輝度ＱＰ値を識別する。上述したように、一部の実施形態では、彩度ＱＰ値についての量子化グループと同じ量子化グループについて、輝度ＱＰ値が定義される。一部の実施形態では、輝度ＱＰについての量子化グループと彩度ＱＰについての量子化グループとは、無関係に定義される。
【００８０】
次に、プロセスは（１３６０で）、彩度ＱＰ値を計算する。一部の実施形態では、識別された輝度ＱＰ値から、および、識別されたそれぞれの彩度ＱＰオフセットから、彩度ＱＰ値が計算される。一部の実施形態では、これは、上記の数式（１）乃至（６）に示したように（スライス／ピクチャレベルおよびＱＧレベルから）すべての識別された彩度ＱＰオフセットを輝度ＱＰ値に加えることによって、達成される。
【００８１】
次いでプロセスは（１３７０で）、（高位レベルの彩度ＱＰオフセットがピクチャ全体に関する場合）ピクチャの終了点に達したかどうか、あるいは、（高位レベルの彩度ＱＰオフセットがスライスに関する場合）スライスの終了点に達したかどうかを判定する。そうであれば、プロセス１３００は終了する。そうでなければ、プロセス１３００は、１３３０に戻って、次の量子化グループを処理する。
【００８２】
図５、図６および図１２では、一組の彩度ＱＰオフセット値を指定するために量子化グループが用いることができる複数の多様な方法を導入した。一部の実施形態では、異なるピクチャもしくはスライスにおける量子化グループが、異なる方法を用いて彩度ＱＰオフセット値を指定してもよい。実施形態によっては、符号化器は、柔軟性を高めて符号化のオーバヘッドを削減するために、現行のピクチャもしくはスライスについて必要だと自分が考える、最良の方法を選択する。
【００８３】
一部の実施形態について、図１４は、追加の彩度ＱＰオフセット値を指定する方法についての選択肢を含むピクチャヘッダ１４００についての疑似コードを示す図である。ピクチャヘッダ１４００は、フラグ「ａｄｄｉｔｉｏｎａｌ＿ｃｈｒｏｍａ＿ｑｐ＿ｏｆｆｓｅｔ」を（行１４１１で）、そしてフラグ「ｃｈｒｏｍａ＿ｑｐ＿ｏｆｆｓｅｔ＿ｍａｘ＿ｄｅｐｔｈ」を（行１４１３で）含んでいるという点で、ピクチャヘッダ９００に類似している。また、ピクチャヘッダ１４００は、彩度ＱＰオフセットテーブル８９０のエントリを（行１４１５乃至１４１７に）含んでいる。しかし、ピクチャヘッダ９００とは異なり、ピクチャヘッダ１４００は、「ｃｈｒｏｍａ＿ｑｐ＿ｏｆｆｓｅｔ＿ｍｅｔｈｏｄ」を（行１４１４で）設定することによって、方法も指定する。
【００８４】
図１５は、３つの異なる方法のいずれかを用いて量子化グループについての彩度ＱＰオフセット値を指定することができる変換ユニット１５００についての疑似コードの実装を示す図である。方法フラグ「ｃｈｒｏｍａ＿ｑｐ＿ｏｆｆｓｅｔ＿ｍｅｔｈｏｄ」が（行１５１２で）０に設定されている場合、変換ユニット１５００は、指標「ｃｕ＿ｃｈｒｏｍａ＿ｑｐ＿ｏｆｆｓｅｔ＿ｔａｂｌｅ＿ｉｎｄｅｘ」を用いてテーブル８９０からエントリを選択し、図１２の場合のようにＱＧ８２１の彩度ＱＰオフセット値を計算する。方法フラグが（行１５１４で）１に設定されている場合、変換ユニット１５００は、図５の場合のように（大きさと符号フラグとをいずれも用いて）２つの彩度成分についての２つの独立した彩度ＱＰオフセット値を符号化する。方法フラグが（行１５２２で）２に設定されている場合、変換ユニット１５００は、図６の場合のように、両方の彩度成分について１つの彩度ＱＰオフセット値だけを符号化する。
【００８５】
ＩＩ．追加の彩度ＱＰオフセットの割当て
別の実施形態においては、符号化器は、別の方法を用いて追加の彩度ＱＰオフセット値を識別して割り当てる。一部の実施形態では、符号化器が、量子化のための最適なＱＰ値を識別することを目的として（例えば、品質とビットレートとを最適にバランスさせるように）、動画シーケンス内の画像を分析する。一部の実施形態は、彩度ＱＰ値の共通集合によって最適に符号化されうる量子化グループを識別することを目的として、画像内のさまざまな領域を分析する。
【００８６】
一部の実施形態では、事前分析ステップが行われ、ここでは符号化器が、領域レベルの分析（例えばＮ＝Ｍ＝４の場合にＮｘＭブロック毎に、またはオブジェクト分割に基づく分析）を行って、その領域内の各色成分について、強さ（例えば、輝度の平均値または明度、および色の飽和度）、色相、分散／アクティビティ／テクスチャの特性、ノイズ特性、動作特性（例えば動きベクトルおよび／または予測歪曲値）を抽出する。
【００８７】
異なるタイプの動画コンテンツが、同一の動画ストリーム内で、あるいは同一の動画画像内で、合成されることがあるので、一部の実施形態では、異なる動画コンテンツタイプの画像の中の異なる領域を識別する。実施形態によっては、異なるタイプの動画コンテンツを持つ異なる領域は、異なる彩度ＱＰオフセット値が割り当てられるかまたは、異なる量子化グループに割り当てられる。一部の実施形態は、グラフィックスコンテンツを実際の動画コンテンツと区別する。一部の実施形態は、当初４：４：４フォーマットで符号化された４：４：４動画コンテンツを、４：２：０フォーマットからアップサンプルされた４：４：４動画コンテンツと区別する。一部の実施形態は、当初は別のビット深度であった可能性がある動画コンテンツを見分ける。一部の実施形態では、色成分全体にわたるそれらの関係およびレート制御情報に加えて、動画コンテンツのこれらの特性を用いて、すべての色成分間の量子化レベルまたは量子化の関係を判定する。
【００８８】
図１６は、画像１６００の例示的な分割および分類を示す図である。画像は、符号化ツリーユニットに分割されており、各符号化ツリーユニットは、符号化ユニットに細分化されている。画像１６００の各種の符号化ユニットは、４つの異なる彩度ＱＰオフセットグループに分割されている。一部の実施形態では、４つの異なる彩度ＱＰオフセットグループが、ＰＰＳ内でシグナリングされ、符号化器は、量子化グループレベルでシグナリングされることになる適切なグループを選択することができる。一部の実施形態では、彩度ＱＰオフセットは、符号化の時点で各量子化グループ内に明示的にシグナリングされる。
【００８９】
彩度ＱＰオフセット値の選択は、輝度成分および彩度成分間の相対的な視覚的複雑性またはテクスチャによって判定される。画像１６００の量子化グループには、それらのテクスチャのレベルに従って、異なるカテゴリ１６１１乃至１６１４が割り当てられる。例えば、すべての色成分全体で単調に見えるエリアは第１のカテゴリ１６１１に属し、高テクスチャの色成分と単調な輝度のエリアは第２のカテゴリ１６１２に属し、単調な色情報と高テクスチャの輝度のエリアは第３のカテゴリ１６１３に属し、３つの成分すべてにわたって高テクスチャのエリアは第４のカテゴリ１６１４に属する。一部の実施形態では、符号化器は、動きおよび強さに基づいて各カテゴリについて追加の下位カテゴリを作成してもよい。一部の実施形態では、２つの彩度成分自体の差を考慮に入れて、追加のカテゴリ化が行われる。
【００９０】
次いで、これらのカテゴリ化を用いて、異なるカテゴリについて異なる彩度ＱＰオフセット集合を指定することができるだろう。例えば、一部の実施形態では、第１のカテゴリ１６１１（すべて単調）にはゼロまたは負のＱＰオフセットが割り当てられる。このシナリオでは、負の彩度ＱＰオフセットによって、これらの領域における彩度品質の割当ての向上が可能になるのだが、それは、彩度品質の向上は、すべての色成分の特性によって一層はっきりしうるからである。第２のカテゴリ１６１２（単調な輝度と高テクスチャの色情報）については、より大きな、正の、ＱＰオフセットが用いられることがあるだろう。この場合、より大きな彩度ＱＰによって、輝度成分を圧倒しないようにする、彩度成分のより良い制御が可能になり、他方、彩度情報からの若干のテクスチャマスキングは、依然として用いられて、主観的な良好な品質を保証することができるだろう。第３のカテゴリ１６１３（高テクスチャの輝度だが単調な彩度）については、一部の実施形態は、より大きい負の彩度ＱＰオフセットを用いて、少し良好な色品質を保証するのに役立つようにする。その他の一部の実施形態は、より大きい正の彩度ＱＰオフセットを用いて、輝度テクスチャマスキングの効果を向上させる。第４のカテゴリ１６１４（３つの成分すべてにわたって高テクスチャ）については、一部の実施形態は、ゼロまたは正の彩度ＱＰオフセットを用いて、輝度テクスチャマスキングの効果を向上させ、そして、彩度の主観的な品質の重要でない向上のためにビットを浪費しないようにする。留意すべきことだが、量子化グループに割り当てられる的確な彩度ＱＰオフセット値は、その量子化グループについての対応する輝度ＱＰ値に依存する。主観的品質や客観的品質、あるいは他の符号化器におけるビットレート決定メカニズム次第で、別の決定が行われることもありうるだろう。
【００９１】
一部の実施形態では、限定された数の彩度ＱＰオフセットが許可または所望されている場合（領域およびそれらの所望のＱＰオフセット集合の判定は別として、それらの指定によって必要になると考えられるビットオーバヘッドの増加が見込まれるので）、各オフセット集合の発生だけでなくその知覚される主観的または客観的品質の影響に基づいて追加決定が行われる。
【００９２】
最も重要なオフセット集合だけがこのときシグナリングされるのだから、一部の実施形態では、次いで、これらの基準を用いて、ビットストリーム内でシグナリングされると見込まれる彩度ＱＰオフセット集合の数を「削減(prune)」する。「削減(prune)」というカテゴリに分類される領域には、所望の値に十分近いオフセット集合を依然として割り当てることもできる。何らかの主観的または客観的重み付けプロセスを考えれば、これは、行われうる妥協案であり、それによって、指定された彩度ＱＰオフセットは、グループ化された個々の領域タイプすべてについて「最適には満たない」が、ビットレートの制限を考えれば、ベストな全体的／統合性能がもたらされる可能性が高い。
【００９３】
事前分析が不可能なリアルタイムの用途については、一部の実施形態は、ＱＰオフセットの「事前固定（プリフィックス）決定」を用いる。一部の実施形態では、決定は、すでに符号化された以前のピクチャからのデータの分析に基づいて行なわれる。彩度ＱＰオフセットがすべての量子化グループについて明示的にシグナリングされるような一部の実施形態では、決定は、その選択された輝度量子化パラメータならびにその各種の空間−時間特性および色特性だけでなく、過去のブロックからの符号化情報（すなわち、ビットレートや輝度と彩度との間の関係はどうだったのか、あるいは、以前に符号化された他の同様のブロックまたは隣接するブロックの導入された歪みはどうだったのか）にも基づいて、すべてのアクティブに符号化されるブロックについてオンザフライで、または動的に、行われる。一部の実施形態では、輝度量子化パラメータは、同じタイプのビットレートおよびコンテンツ特性の関係および条件を所与として、彩度ＱＰオフセットと一緒に導出される。
【００９４】
一部の実施形態はさらに、その隣接するピクチャを調べることによって、現行のピクチャの彩度ＱＰオフセットの選択を改善させる。具体的には、一部の実施形態は、これらの隣接するピクチャは、どのようにして符号化されたか、あるいは符号化されることになるのかだけでなく、これらの隣接するピクチャはどのようにして現行のピクチャおよびその領域に時間的に関係しているのかについても調べる。例えば、現行のピクチャが「キー」となるピクチャとして（例えば、イントラまたは「周期的」リフレッシュピクチャとして）符号化されることになる場合、一部の実施形態は、現行のピクチャの彩度品質を向上させるために、追加の彩度ＱＰオフセットを符号化するであろう。逆に、現行のピクチャが、使い捨てのピクチャかまたは符号化階層においてそれほど重要でないピクチャである場合、一部の実施形態は、より高いビットレートをもたらすようなやり方で追加の彩度ＱＰオフセットを割り当てることは控える（あるいは、追加の彩度ＱＰオフセットをまったく使わない）であろう。他のタイプのピクチャについては、一部の実施形態は、より穏やかな彩度ＱＰオフセットの変更を用いて、ビットレートと品質との間のよりよい妥協案を達成する。
【００９５】
一部の実施形態では、例えば解像度、品質、ビット深度等といった、異なるスケーラビリティのレイヤについて、異なる彩度ＱＰオフセットパラメータが指定される。一部の実施形態は、追加の彩度ＱＰオフセットを、異なる彩度ＱＰオフセットが異なるビューに割り当てられる３Ｄ／マルチビューアプリケーションに適用する。例えば、オーバヘッドを削減して、そのようなシステムの主観的品質を最大化するために、彩度ＱＰオフセットを割り当てて予測するために、ステレオマスキングが考慮されてもよいだろう。
【００９６】
一部の実施形態については、図１７は、画像のさまざまな領域を分析して、それに従って彩度ＱＰオフセットを割り当てるためのプロセス１７００を概念的に示す図である。プロセスは、一部の実施形態では、動画符号化器によって行われる。
【００９７】
プロセスは、動画ピクチャを（１７１０で）受信した時に始まる。この動画ピクチャは、圧縮されていない動画ストリームの中の生の画像であってもよいし、圧縮された動画ビットストリームからの復号されたピクチャであってもよい。次いでプロセスは（１７２０で）、領域内の符号化ユニット同士が彩度ＱＰオフセット値の共通集合を共有できるようにさせる共通の特性を共有する、ピクチャ内の領域を識別する。例えば、一部の実施形態は、当初４：２：０フォーマットで符号化された領域を、ビットレートを削減するためにより高位のＱＰ値が（従って正の彩度ＱＰオフセットが）用いられうる領域として識別する。逆に、一部の実施形態は、当初４：４：４フォーマットで符号化された領域を、品質を維持するためにより低位のＱＰ値が（従ってより低いまたは負のＱＰオフセット値が）必要な領域として識別する。
【００９８】
プロセスは次いで（１７３０で）、各領域の空間−時間特性を分析する。一部の実施形態では、この分析には、領域のテクスチャ／分散／アクティビティ、フォーマット（４：４：４または４：２：０等）、ノイズ、動き、ビット深度、あるいは、輝度と彩度との関係あるいは２つの彩度成分間の関係に影響を及ぼしうるその他の特性の分析が含まれる。
【００９９】
次にプロセスは（１７４０で）、領域の分析に基づいて彩度ＱＰオフセット値を割り当てる。一部の実施形態では、プロセスは、最初に、１７３０で行われた分析に基づいて領域についての適切な彩度ＱＰ値を識別し、次いで、選択された輝度ＱＰ値を識別された彩度ＱＰ値から引き算して、所望の総合的彩度ＱＰオフセット値を求める。また、プロセス１７４０は、一部の実施形態では、総合的彩度ＱＰオフセット値を、動画符号化階層のさまざまなレベルでの彩度ＱＰオフセット値（例えば、ピクチャ、スライスおよび量子化グループ）に分解する。一部の実施形態は、総合的彩度ＱＰオフセット値から高位レベルシンタックス要素についての彩度ＱＰオフセット値を引き算することによって、量子化グループについての彩度ＱＰオフセット値を識別する。一部の実施形態では、この動作は、下記の図１８を参照しながら記述するように、レート制御器によって行われる。
【０１００】
次いでプロセスは（１７５０で）、領域内の量子化グループについて識別された彩度ＱＰオフセット値を、彩度ＱＰオフセットテーブルの中に投入する(populate)。また、プロセス１７００は、上記のセクションＩ．ｂで論じたように、量子化グループ内の対応する指標値を符号化する。彩度ＱＰオフセット値を明示的に指定する一部の実施形態では、プロセス１７００は、上記のセクションＩ．ａで論じたように、量子化グループ自体の中で彩度ＱＰオフセット値を符号化する。
【０１０１】
次いでプロセスは（１７６０で）、依然として分析されていない領域がピクチャ内にまだあるかどうかを判定する。そうであれば、プロセスは１７２０に戻る。そうでない場合、プロセス１７００は終了する。
【０１０２】
ＩＩＩ．動画システム
図１８は、本発明の一部の実施形態についての一般的な動画符号化器１８００（例えばＨＥＶＣ符号化器）を示す図である。符号化器１８００は、動画ソース１８０５から動画ストリームを受信して、記憶および／または送信されることになる、圧縮され符号化されたビットストリーム１８９５を生成する。
【０１０３】
動画符号化器は、変換モジュール１８１０と、量子化モジュール１８１５と、エントロピー符号化器１８２０と、逆量子化モジュール１８２５と、逆変換モジュール１８３０と、デブロックフィルタ１８４０と、サンプル適応オフセット（ＳＡＯ）フィルタ１８４５と、フレームバッファ１８５０と、レート制御モジュール１８３５と、予測モジュール１８９０とを含んでいる。予測モジュール１８９０は、動き予測モジュール１８６０と、動き補償モジュール１８６５と、イントラ予測モジュール１８７０と、モード決定モジュール１８８０とを含んでいる。また、動画符号化器１８００は、一部の実施形態では動画ディスプレイ１８５５を含んでいる。
【０１０４】
量子化モジュール１８１５は、変換モジュール１８１０からの変換係数（例えばＤＣＴ）に対して、量子化パラメータを用いて量子化を行うモジュールである。一部の実施形態では、変換モジュール１８１０は（例えば、ＨＥＶＣによってサポートされる変換−バイパスモードの下で）完全にバイパスされ、量子化モジュール１８１５が画像値や画像予測エラー値を変換せずに受信するようにされてもよい。量子化モジュール１８１５は、各色成分についての異なる領域／ブロックについて、異なるＱＰ値を適用する。また、量子化モジュール１８１５によって用いられるＱＰ値は、輝度ＱＰ値および彩度ＱＰオフセットとしてビットストリーム１８９５の中へ符号化される。一部の実施形態では、量子化モジュール１８１５によって用いられているＱＰ値は、レート制御モジュール１８３５によって判定されて供給される。
【０１０５】
レート制御モジュール１８３５は、量子化モジュール１８１５（および逆量子化モジュール１８２５）によって用いられるＱＰ値を制御することによって、符号化された動画ビットストリームのビットレートを制御する。一部の実施形態では、レート制御モジュール１８３５は、異なる量子化グループに対しては、異なるＱＰ値を量子化モジュール１８１５に供給する。量子化に最も適した（輝度および彩度についての）ＱＰ値（例えば、所与の動画シーケンスについて品質とビットレートとの最適なバランス）を識別することを目的として、一部の実施形態のレート制御モジュール１８３５は、個々の輝度量子化グループについての輝度ＱＰ値と、個々の彩度量子化グループについての一組の彩度ＱＰオフセット値とに到達するために、上記のセクションＩＩで述べた分析のうち少なくとも一部を行う。また、一部の実施形態では、レート制御器１８３５は、領域を識別し、（輝度および彩度）量子化グループを割り当てるために、分析を用いる。
【０１０６】
一部の実施形態では、レート制御器１８３５は、彩度ＱＰオフセット値の集合を分解して、動画符号化階層のさまざまなレベルにおける彩度ＱＰオフセット値の集合にする。実施形態によっては、彩度ＱＰオフセット値の集合の少なくとも一部は、上記の数式（１）乃至（７）で示すように２つの彩度成分間の予測値にさらに分解される。一部の実施形態では、総合的彩度ＱＰオフセット値から高位レベルのＱＰオフセット値を引き算することによって、低位レベルのＱＰオフセット値が識別される。例えば、一部の実施形態では、量子化グループレベルの彩度ＱＰオフセットが以下のように計算される。
QPoffset_quant_group[i]=QPchroma[i]-QPluma
-QPoffset_pps[i]-QPoffset_slice[i]    （８）
【０１０７】
次いで、彩度ＱＰオフセット値のこれらの集合がエントロピー符号化器１８２０に提供されて、ビットストリーム１８９５へと符号化されることになる。一部の実施形態では、レート制御器１８３５は、見込まれる量子化グループレベルのオフセットのテーブルをコンパイルして、コンパイルされたテーブルをエントロピー符号化器１８２０に提供する。
【０１０８】
エントロピー符号化器モジュール１８２０は、量子化された変換係数やパラメータやその他の情報に対してエントロピー符号化（例えばＣＡＢＡＣ）を行って、それらをビットストリーム１８９５へとパッケージ化するモジュールである。一部の実施形態では、エントロピー符号化モジュール１８２０は、彩度ＱＰオフセット値をレート制御器モジュール１８３５から受信して、それらをビットストリームへとエントロピー符号化する。一部の実施形態では、エントロピー符号化器１８２０は、上記のセクションＩ．ｂで述べたように、彩度ＱＰオフセット値をテーブルとしてピクチャのＰＰＳエリアへと符号化する。一部の実施形態では、エントロピー符号化器は、上記のセクションＩ．ａで述べたように、彩度ＱＰオフセット値を個別の量子化グループへと符号化する。
【０１０９】
デブロックモジュール１８４０は、動画コーデックシステムの視覚的品質および予測性能を、符号化ブロック間で形成される鋭いエッジを滑らかにすることによって向上させるループフィルタモジュールである。一部の実施形態では、デブロックモジュール１８４０は、すべての適用可能な彩度ＱＰオフセットから計算された総合的彩度ＱＰ値を用いて（すなわち、量子化グループおよびピクチャ／スライスの彩度ＱＰオフセットを含めることによって）、そのデブロック動作を行う。その他の一部の実施形態では、デブロックモジュール１８４０は、一部の指定された彩度ＱＰオフセットだけを考慮するか、またはＰＰＳまたはスライスヘッダからの彩度ＱＰオフセットだけを考慮する。実施形態によっては、シグナルである彩度ＱＰオフセット値に基づいてデブロックプロセスを制御する。例えば、一部の実施形態は、彩度ＱＰオフセット値を補正するために、デブロックパラメータを調整する。また、デブロックは、ループ外で、後工程として行われてもよい。一部の実施形態では、計算された総合的彩度ＱＰ値または一部の彩度ＱＰオフセットが、ＳＡＯ（例えばＳＡＯフィルタ１８４５）、適応ループフィルタ（ＡＬＦ）、またはノイズ付加のような、他のタイプのループ内またはループ外の後工程によって用いられる。
【０１１０】
図１９は、本発明の一部の実施形態についての一般的な動画復号器１９００（例えばＨＥＶＣ復号器）を示す図である。復号器１９００は、ビットストリーム１９０５を受信し、それを復号してディスプレイモジュール１９６５によって表示する。復号器１９００は、エントロピー復号器１９１０と、逆量子化モジュール１９２０と、逆変換モジュール１９３０と、イントラ予測モジュール１９５０と、インター予測モジュール１９８０と、デブロックモジュール１９６０と、ＳＡＯモジュール１９７０と、フレームバッファ１９７５とを含んでいる。
【０１１１】
エントロピー復号器モジュール１９１０は、入力ビットストリームに対してエントロピー復号を行って、変換係数および復号器１９００の中の他のモジュールについてのパラメータを抽出するモジュールである。具体的には、入力ビットストリーム１９０５の中に格納されている彩度量子化情報が、エントロピー復号器１９１０によって抽出され、逆量子化モジュール１９２０へと送られる。一部の実施形態では、彩度量子化情報には、ＰＰＳ、スライスヘッダ内のテーブルからかまたは量子化グループ自体から抽出される、追加の彩度ＱＰオフセット値が含まれる。
【０１１２】
復号器１９００のデブロックモジュール１９６０は、符号化器１８００のデブロックモジュール１８４０と同様の機能を行う。具体的には、デブロックモジュール１９６０も、適用可能な彩度ＱＰオフセット全部から計算された最終の彩度ＱＰ値を用いて（すなわち、量子化グループおよびピクチャ／スライスの彩度ＱＰオフセットを含めることによって）、デブロック動作を行う。他の一部の実施形態では、デブロックモジュール１９６０は、指定された彩度ＱＰオフセットの一部だけを考慮するか、あるいは、ＰＰＳまたはスライスヘッダからの彩度ＱＰオフセットだけを考慮する。一部の実施形態では、計算された総合的彩度ＱＰ値または一部の彩度ＱＰオフセットが、ＳＡＯ（すなわちＳＡＯフィルタ１９７０）、ＡＬＦ、またはノイズ付加のような、他のタイプのループ内またはループ外の後工程によって用いられる。
【０１１３】
ＩＶ．電子システム
上述の特徴および用途の多くは、コンピュータ可読記憶媒体（コンピュータ可読媒体とも呼ばれる）に記録される一組の命令として指定されるソフトウェアプロセスとして実装される。これらの命令が１つ以上のコンピュータまたは処理ユニット（例えば、１つ以上のプロセッサ、プロセッサのコア、または他の処理ユニット）によって実行されると、それらは処理ユニットに、命令の中に指示された動作を行わせる。コンピュータ可読媒体の例として、ＣＤ−ＲＯＭ、フラッシュドライブ、ランダムアクセスメモリ（ＲＡＭ）チップ、ハードドライブ、消去可能プログラム可能読み出し専用メモリ（ＥＰＲＯＭ）、電気的消去可能プログラム可能読み出し専用メモリ（ＥＥＰＲＯＭ）等が挙げられるが、それらに限定されない。コンピュータ可読媒体には、搬送波や無線または有線接続を通過する電気信号は含まれない。
【０１１４】
本明細書では、「ソフトウェア」という用語は、読み出し専用メモリの中に常駐するファームウェアや、プロセッサによる処理のためにメモリに読み込むことが可能な、磁気記憶装置の中に記憶されるアプリケーションを含むことが意図されている。また、一部の実施形態では、複数のソフトウェア発明を、別個のソフトウェア発明のままでありながら、より大きなプログラムのサブパーツとして実装することが可能である。また、一部の実施形態では、複数のソフトウェア発明を、個々のプログラムとして実装することも可能である。最終的に、本明細書で述べたソフトウェア発明を共に実装する個々のプログラムのいずれかの組み合わせは、本発明の範囲内にある。一部の実施形態では、ソフトウェアプログラムは、１つ以上の電子システム上で動作するようにインストールされた場合、ソフトウェアプログラムの動作を実行する１つ以上の特定の機械実装を定義する。
【０１１５】
図２０は、本発明の一部の実施形態が実装される電子システム２０００を概念的に示す図である。電子システム２０００は、コンピュータ（例えば、デスクトップコンピュータ、パーソナルコンピュータ、タブレットコンピュータ等）、電話、ＰＤＡ、またはいずれかの他の種類の電子デバイスであってもよい。そのような電子システムは、さまざまなタイプのコンピュータ可読媒体や、さまざまな他のタイプのコンピュータ可読媒体用のインタフェースを含んでいる。電子システム２０００は、バス２００５、処理ユニット２０１０、グラフィックス処理ユニット（ＧＰＵ）２０１５、システムメモリ２０２０、ネットワーク２０２５、読み出し専用メモリ２０３０、永久記憶デバイス２０３５、入力デバイス２０４０、出力デバイス２０４５を含んでいる。
【０１１６】
バス２００５は、電子システム２０００の多数の内部デバイスを通信で接続するシステムバス、ペリフェラルバス、チップセットバスのすべてを集合的に表している。例えば、バス２００５は、処理ユニット２０１０を、読み出し専用メモリ２０３０と、ＧＰＵ２０１５と、システムメモリ２０２０と、永久記憶デバイス２０３５とに通信で接続する。
【０１１７】
これらの各種のメモリユニットから、処理ユニット２０１０は、本発明のプロセスを実行することを目的として、実行すべき命令と、処理すべきデータとを検索する。処理ユニットは、単一のプロセッサであってもよいし、別の実施形態ではマルチコアプロセッサであってもよい。一部の命令は、ＧＰＵ２０１５に渡され、ＧＰＵ２０１５によって実行される。ＧＰＵ２０１５は、各種の計算をオフロードする(offload)ことや、処理ユニット２０１０によって提供される画像処理を補完することができる。
【０１１８】
読み出し専用メモリ（ＲＯＭ）２０３０は、電子システムの処理ユニット２０１０および他のモジュールが必要とする静的データや命令を記憶する。他方、永久記憶デバイス２０３５は、読み書き可能メモリデバイスである。このデバイスは、電子システム２０００がオフである場合でも命令およびデータを記憶する、不揮発性のメモリユニットである。本発明の一部の実施形態では、永久記憶デバイス２０３５として、（磁気ディスクまたは光ディスクおよびその対応するディスクドライブのような）大容量記憶装置を用いる。
【０１１９】
他の実施形態では、永久記憶デバイスとして、（フロッピィディスク、フラッシュメモリデバイス等およびその対応するディスクドライブのような）取り外し可能記憶デバイスを用いる。永久記憶デバイス２０３５と同様、システムメモリ２０２０は、読み書き可能メモリデバイスである。しかし、永久記憶デバイス２０３５とは異なり、システムメモリ２０２０は、ランダムアクセスメモリのような、揮発性の読み書き可能メモリである。システムメモリ２０２０は、プロセッサがランタイム時に必要とする一部の命令とデータとを記憶する。一部の実施形態では、本発明のプロセスは、システムメモリ２０２０と、永久記憶デバイス２０３５と、および／または、読み出し専用メモリ２０３０との中に記憶される。例えば、さまざまなメモリユニットが、一部の実施形態によるマルチメディアクリップを処理するための命令を含んでいる。これらのさまざまなメモリユニットから、処理ユニット２０１０は、一部の実施形態のプロセスを実行することを目的として、実行すべき命令と処理すべきデータとを検索する。
【０１２０】
また、バス２００５は、入力デバイス２０４０および出力デバイス２０４５に接続している。入力デバイス２０４０によって、ユーザは、情報を伝達することができ、電子システムへのコマンドを選択することができる。入力デバイス２０４０には、英数字キーボードと、ポインタデバイス（「カーソル制御デバイス」とも呼ばれる）と、カメラ（例えばウェブカメラ）と、マイクロフォンまたは音声コマンド等を受信するための同様のデバイスとが含まれる。出力デバイス２０４５は、電子システムによって生成された画像を表示したり、その他の方法でデータを出力したりする。出力デバイス２０４５には、プリンタや表示デバイス、例えばブラウン管（ＣＲＴ）または液晶ディスプレイ（ＬＣＤ）だけでなく、スピーカまたは同様の音声出力デバイスも含まれる。一部の実施形態は、入力デバイスとしても出力デバイスとしても機能するタッチスクリーンのようなデバイスを含んでいる。
【０１２１】
最後に、図２０に示すように、バス２００５は、電子システム２０００を、ネットワークアダプタ（図示せず）を介してネットワーク２０２５に接続する。このようにして、このコンピュータは、（例えば、ローカルエリアネットワーク（「ＬＡＮ」）やワイドエリアネットワーク（「ＷＡＮ」）やイントラネットのような）コンピュータのネットワークの一部であることもあれば、例えばインターネットのような、ネットワークのネットワークの一部であることもある。電子システム２０００のうちのいずれかの構成部品あるいはすべての構成部品が、本発明に関連して用いられてもよい。
【０１２２】
一部の実施形態は、例えば、機械可読媒体またはコンピュータ可読媒体（あるいは、コンピュータ可読記憶メディア、機械可読メディア、または機械可読記憶メディアとも呼ばれる）の中にコンピュータプログラム命令を記憶するマイクロプロセッサ、記憶装置およびメモリのような、電子的構成部品を含んでいる。そのようなコンピュータ可読媒体の一部の例として、ＲＡＭ、ＲＯＭ，読み出し専用コンパクトディスク（ＣＤ−ＲＯＭ）、追記型コンパクトディスク（ＣＤ−Ｒ）、書換可能コンパクトディスク（ＣＤ−ＲＷ）、読み出し専用デジタル多用途ディスク（例えば、ＤＶＤ−ＲＯＭ、二層式ＤＶＤ−ＲＯＭ）、各種の追記型／書換可能ＤＶＤ（例えばＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ等）、フラッシュメモリ（例えばＳＤカード、ミニＳＤカード、マイクロＳＤカード等）、磁気および／またはソリッドステート・ハード・ドライブ、読み出し専用および追記型Ｂｌｕ−Ｒａｙ（登録商標）ディスク、ウルトラ・デンシティ・オプティカル・ディスク、いずれかの他の光または磁気媒体、フロッピィディスク等がある。コンピュータ可読媒体は、少なくとも１つの処理ユニットによって実行可能であって各種の動作を行うための命令の集合を含むコンピュータプログラムを記憶してもよい。コンピュータプログラムまたはコンピュータコードの例として、コンパイラによって生成されるもののようなマシンコードや、コンピュータ、電子部品、インタプリタを用いたマイクロプロセッサによって実行される上位レベルコードを含むファイル等がある。
【０１２３】
上記の議論は、ソフトウェアを実行するマイクロプロセッサまたはマルチコアプロセッサに主に言及しているが、一部の実施形態は、１つ以上の集積回路、例えば特定用途向け集積回路（ＡＳＩＣ）またはフィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）によって行われる。一部の実施形態では、そのような集積回路は、回路自体に記憶された命令を実行する。加えて、一部の実施形態は、プログラム可能論理デバイス（ＰＬＤ）、ＲＯＭまたはＲＡＭデバイスの中に記憶されたソフトウェアを実行する。
【０１２４】
本明細書および本願のいずれかの請求項では、「コンピュータ」、「サーバ」、「プロセッサ」、「メモリ」という用語はすべて、電子デバイスまたは他の技術的デバイスのことを言う。これらの用語は、人間もしくは人間のグループを除外する。本明細書において、表示または表示手段という用語は、電子デバイス上に表示することを意味する。本明細書および本願のいずれかの請求項では、「コンピュータ可読媒体」「コンピュータ可読メディア」および「機械可読媒体」という用語は、コンピュータによって読み取られうる形式で情報を記憶する、有形の物理的対象に完全に限定される。これらの用語は、いずれかの無線信号、有線ダウンロード信号、およびいずれかの他の一過性の信号を除外する。
【０１２５】
本発明について、多数の特定の詳細を参照しながら記述してきたが、当業者は認識するであろうが、本発明は、本発明の趣旨から逸脱することなく、他の特定の形態において実施されうる。加えて、（図７、図１３、図１７を含めて）複数の図面が、プロセスを概念的に示している。これらのプロセスの特定の各動作は、図示されて記述されている順序どおりに行われないことがある。特定の各動作は、連続した一続きの動作として行われないことがあり、また、異なる実施形態では、異なる特定の動作が行われることがある。さらに、プロセスが、複数のサブプロセスを用いて実装されたり、より大きなマクロプロセスの一部として実装されたりしてもよいだろう。従って、当業者であれば、本発明は、前述の例示的な詳細に限定されるのではなく、添付の請求項によって定義されることになるということを理解するであろう。
【図１】
0005965442.tif 000002
【図２ａ】
0005965442.tif 000003
【図２ｂ】
0005965442.tif 000004
【図２ｃ】
0005965442.tif 000005
【図３】
0005965442.tif 000006
【図４】
0005965442.tif 000007
【図５】
0005965442.tif 000008
【図６】
0005965442.tif 000009
【図７】
0005965442.tif 000010
【図８】
0005965442.tif 000011
【図９】
0005965442.tif 000012
【図１０】
0005965442.tif 000013
【図１１】
0005965442.tif 000014
【図１２】
0005965442.tif 000015
【図１３】
0005965442.tif 000016
【図１４】
0005965442.tif 000017
【図１５】
0005965442.tif 000018
【図１６】
0005965442.tif 000019
【図１７】
0005965442.tif 000020
【図１８】
0005965442.tif 000021
【図１９】
0005965442.tif 000022
【図２０】
0005965442.tif 000023