本明細書で説明される本願の実施形態の可能な実施態様の例として働く、変換ベースの残差コーディングを使用するブロックベースの予測復号器を示す概略ブロック図である。
本明細書で説明される復号器の実施形態の可能な実施態様の例として働く、図1の符号器に適するブロックベースの予測ビデオ復号器を示す概略ブロック図である。
それぞれ、イントラ予測およびインター予測を使用して符号化されたコーディング・ブロックへのピクチャの区分の例を示し、それぞれ予測信号および残差信号の加算による残差に基づく予測補正を同時に概略的に示す、予測残差の変換ベースの残差コーディングのための残差ブロックへの同一のピクチャの区分を示す図である。
ある種の変換を介する残差ブロックに関連する変換係数ブロック92の逆符号化による残差ブロックの変換ベースの残差コーディングを示す概略図である。
コーディングされたセットが最後の非0係数と最初の係数位置の変換係数との間のすべての係数を含むように、DC係数などの特定の最初にスキャンされる変換係数からこの最初の係数から最も遠い係数へスキャンする時に最後の非0変換係数を指示する指示を介してコーディングされたセットを定義することによる変換係数ブロックの変換係数のコーディングされたセットのコーディングを示す概略図である。
第1の2進化コードを単に含む2進化から2進化がカットオフ値の第1の2進化コードの符号語とそれに続く第2の2進化コードとを含む状態への切替を有する、第1の2進化コードおよび第2の2進化コードからなる2進化を使用する変換係数のコーディングの可能性を示す概略図である。
2進化がたとえば図6の第2の2進化コードの基礎になることのできる時の、プレフィックス部分およびサフィックス部分を有する2進化を有する可能性を示す概略図である。
パーティションへの変換係数ブロックの区分、ここでは、パーティションの行および列への通常の区分を示す図であり、したがって、各パーティションは、係数の配列からなり、区分は、変換係数および/または下で説明されるように変換係数のゼロネス指示へのコンテキスト・セット関連付けに使用され得る。
コンテキスト・セット関連付けのためのパーティションの使用を示す概略図である。
変換係数ブロックと、現在エントロピ符号化/復号されている変換係数の1つのコンテキストを選択するためのこの現在符号化/復号されている変換係数ブロックのローカル・テンプレートの使用とを概略的に示す図である。
残差ブロックの複数の色成分への分解に関するこのブロックのコーディングを示す概略図である。
変換係数ブロック92のすべての変換係数が0である(この場合に、変換係数の量子化レベルは、コーディングされる必要がないが、復号器側で0と推論され得る)かどうかを指示するグローバル・ゼロネス指示190を含むものとしてのそのブロック92のデータ・ストリーム14へのコーディングのデータ96を概略的に示す図である。
パーティションの単位で、コーディングされたサブブロック・フラグCBFによって変換係数のゼロネスを指示するためのパーティションへの変換係数ブロックの区分の使用を概略的に示す図である。
変換係数ブロックがそこにコーディングされるデータ96が、図5に示された非0変換係数の最後の係数位置を指示する最終位置指示114を含むことができることを示す図である。
コンテキスト・セットからのある種のコンテキストを使用するコンテキスト適合的な形での変換係数の量子化レベルのエントロピ復号/符号化を例示的に示す図である。
変換係数ブロックがそこにコーディングされるデータが、最後の係数位置から最初の係数位置への図5のスキャン・パートのトラバースに対応するデータ・ストリーム内のコーディング順序102内の変換係数の量子化レベルの順次コーディングを含むことができるという事実を概略的に示す図である。
別の色成分の同一の残差ブロックの変換係数ブロックに依存する、ある色成分のコンテキスト選択を実行する本願の第1の実施形態を示す概略図である。
図8に示された形状と一致しないパーティションへの変換係数ブロックの区分を示す概略図である。
図10で教示されるコンテキスト選択に使用されるローカル・テンプレートの形状の変更の可能性またはこれを使用不能にすることさえ示す概略図である。
パーティションの変換係数がお互いとインターリーブされる形で変換係数をトラバースして変換係数を順次符号化するスキャン・パートを有するパーティションに区分される変換係数ブロックを示す概略図である。
たとえば現在エントロピ符号化/復号されている変換係数のコンテキスト選択に使用されるカウントと共に、現在エントロピ符号化/復号されている変換係数およびあるしきい値を超える以前に符号化された変換係数を例示的に示す、変換係数ブロックと、図15に示されたインターリーブするスキャン・パートを使用するそのコーディングとを示す概略図である。
図18に例示的に示されたインターリーブするスキャン・パートを用いる変換係数ブロックのコーディングから生じる、一方では係数の量子化レベルのコーディング・シーケンスを、他方ではコーディングされたサブブロック・フラグのゼロネス指示を示す概略図である。
やはり、非0係数のハッチングを使用する図示を伴う、図15および図16に示された異なるパーティションの変換係数をインターリーブするスキャン・パートを有する変換係数ブロックを示す図である。
変換係数ブロックの変換例のパーティション単位のスキャンの例を示す図である。
変換係数ブロックのコーディングの擬似コードを示す図である。
変換係数の量子化レベルの絶対値の2進化の擬似コードを示す図である。
変換係数の量子化レベルの絶対値の2進化の例を示す図である。
変換係数ブロックの変換係数のコーディングの擬似コードを示す図である。
変換係数ブロックの変換係数のコーディングの擬似コードを示す図である。
パーティションへの変換係数ブロックの区分の異なる例を示す図である。
図面の以下の説明は、本明細書で説明される実施形態を作り込むことのできるコーディング・フレームワークの例を形成するために、ビデオのピクチャをコーディングするブロックベースの予測コーデックのビデオ符号器およびビデオ復号器の説明の提示から始まる。ビデオ符号器およびビデオ復号器を、図1から図3に関して説明する。その後、本願のさらなる実施形態の説明を、図面に関して提示する。同一物に番号が付けられ、上のセクションでは、上のどの部分が下で説明され請求されるどの部分を指すのかの参照が行われる。これらの実施形態のすべてを、それぞれ図1および図2のビデオ符号器およびビデオ復号器に作り込むことができるが、後続の図面に関して説明されるものなどの本明細書で説明される実施形態を使用して、図1および図2のビデオ符号器およびビデオ復号器の基礎になるコーディング・フレームワークに従っては動作しないビデオ符号器およびビデオ復号器を形成することもできる。
図1は、ピクチャ12のシーケンスからなるビデオ11をデータ・ストリーム14に予測コーディングする装置を示す。ブロック単位の予測コーディングが、このために使用される。さらに、変換ベースの残差コーディングが、例示的に使用される。この装置または符号器は、符号10を使用して指示される。図2は、ここでも例示的に変換ベースの残差復号を使用する、データ・ストリーム14からピクチャ・ブロック内のピクチャ12’からなるビデオ11’を予測復号するように構成された装置20を示し、ここで、アポストロフィは、それぞれ復号器20によって再構成されたピクチャ12’およびビデオ11’が、予測残差信号の量子化によって導入されるコーディング損失に関して装置10によって最初に符号化されたピクチャ12から逸脱することを指示するのに使用された。図1および図2は、変換ベースの予測残差コーディングを例示的に使用するが、本願の実施形態は、この種の予測残差コーディングに制限されない。これは、以下で概要を示すように、図1および図2に関して説明される他の詳細にもあてはまる。
符号器10は、予測残差信号を空間からスペクトルへの変換の対象にし、そのように入手された予測残差信号をデータ・ストリーム14に符号化するように構成される。同様に、復号器20は、データ・ストリーム14から予測残差信号を復号し、そのように入手された予測残差信号をスペクトルから空間への変換の対象にするように構成される。
内部的に、符号器10は、元の信号すなわちビデオ11または現在のピクチャ12からの予測信号26の逸脱を測定するために予測残差24を生成する予測残差信号フォーマ22を含むことができる。予測残差信号フォーマ22は、たとえば、元の信号すなわち現在のピクチャ12から予測信号を減算する減算器とすることができる。符号器10は、やはり符号器10に含まれる量子化器32による量子化の対象にされるスペクトル領域予測残差信号24’を入手するために、予測残差信号24を空間からスペクトルへの変換の対象にするトランスフォーマ28をさらに含む。そのように量子化された予測残差信号24’’は、ビットストリーム14にコーディングされる。このために、符号器10は、データ・ストリーム14に変換され量子化されるものとして予測残差信号をエントロピ・コーディングするエントロピ・コーダ34をオプションで含むことができる。予測残差26は、データ・ストリーム14に復号され、これから復号可能である予測残差信号24’’を基礎として符号器10の予測ステージ36によって生成される。このために、予測ステージ36は、図1に示されているように、量子化損失を除いて信号24’に対応するスペクトル領域予測残差信号24’’’を入手するために予測残差信号24’’を逆量子化する逆量子化器38と、これに続く、量子化損失を除いて元の予測残差信号24に対応する予測残差信号24’’’’を入手するために、後者の予測残差信号24’’’を逆変換すなわちスペクトルから空間への変換の対象にする逆トランスフォーマ40を内部的に含むことができる。予測ステージ36のコンバイナ42は、再構成された信号46すなわち元の信号12の再構成を入手するために、加算によるなど、予測信号26と予測残差信号24’’’’とを再結合する。再構成された信号46は、信号12’に対応することができる。
その後、予測ステージ36の予測モジュール44は、たとえばスペクトル予測すなわちイントラ予測および/または時間予測すなわちインター予測を使用することによって、信号46に基づいて予測信号26を生成する。これに関する詳細を、以下で説明する。
同様に、復号器20は、予測ステージ36に対応する、これに対応する形で相互接続された構成要素から内部的に構成され得る。具体的には、復号器20のエントロピ復号器50は、データ・ストリームから量子化されたスペクトル領域予測残差信号24’’をエントロピ復号することができ、ここにおいて、予測ステージ36のモジュールに関して上で説明した形で相互接続され、協力する逆量子化器52、逆トランスフォーマ54、コンバイナ56、および予測モジュール58は、予測残差信号24’’に基づいて再構成された信号を回復し、その結果、図2に示されているように、コンバイナ56の出力が、再構成された信号すなわちビデオ11’またはその現在のピクチャ12’をもたらす。
上で具体的には説明されないが、符号器10が、たとえばあるレートおよび歪みに関連する判断基準すなわちコーディング・コストを最適化する形などのある最適化方式に従って、かつ/またはあるレート制御を使用して、たとえば予測モード、動きパラメータ、および類似物を含むなんらかのコーディング・パラメータをセットすることができることはたやすく明白になる。下でより詳細に説明するように、符号器10、復号器20、および対応するモジュール44、58は、それぞれ、イントラコーディング・モードおよびインターコーディング・モードなどの異なる予測モード、または、前者のモードが、ピクチャ・ブロックの予測モードがそれに基づいて構成されるプリミティブ予測モードのある種のセットまたはプールを形成するモードをサポートする。符号器および復号器がこれらの予測構成の間で切り替える粒度は、それぞれ、ブロックへのピクチャ12および12’の副分割に対応することができる。これらのブロックの一部を、完全にイントラコーディングされるブロックとすることができ、一部のブロックを、完全にインターコーディングされるブロックとすることができ、オプションで、さらなるブロックを、イントラコーディングとインターコーディングとの両方を使用して入手されるブロックとすることができるが、その詳細が後で示されることに留意されたい。イントラコーディング・モードによれば、ブロックの予測信号は、それぞれのブロックの既にコーディング/復号された空間的隣接物に基づいて入手される。その選択物の中である種のイントラ予測パラメータをある程度表す複数のイントラコーディングされたサブモードが、存在する場合がある。それぞれの指向性イントラコーディング・サブモードに固有のある方向に沿って隣接物のサンプル値をそれぞれのブロックに外挿することによってそれぞれのブロックの予測信号が充てんされる、指向性または角度的イントラコーディング・サブモードがある場合がある。イントラコーディング・サブモードは、たとえば、それぞれのブロックの予測信号がそれに従ってそれぞれのブロック内のすべてのサンプルにDC値を割り当てるDCコーディング・モードおよび/またはそれぞれのブロックの予測信号が隣接するサンプルに基づいて2次元線形関数によって定義される平面のチルトおよびオフセットを導出することを用いてそれぞれのブロックのサンプル位置に対する2次元線形関数によって記述されるサンプル対の空間分布になると近似されまたは決定される平面イントラコーディング・モードなどの1つまたは複数のさらなるサブモードをも含む場合がある。これと比較して、インター予測モードによれば、ブロックの予測信号は、たとえば、ブロック内部を時間予測することによって入手することができる。インター予測モードのパラメータ化に関して、動きベクトルを、データ・ストリーム内でシグナリングすることができ、動きベクトルは、以前にコーディング/復号されたピクチャがそれぞれのブロックの予測信号を入手するためにサンプリングされる、ビデオ11の以前にコーディングされたピクチャの部分の空間変位を指示する。これは、量子化された空間領域予測残差信号24’’を表すエントロピコーディングされた変換係数レベルなどのデータ・ストリーム14に含まれる残差信号コーディングに加えて、データ・ストリーム14が、ブロック予測モードへの割り当てに関する予測関連パラメータ、インター予想モードの動きパラメータなどの割り当てられた予測モードに関する予測パラメータ、およびオプションで、下でさらに詳細に概要を示す割り当てられた予測モードおよび予測パラメータを使用するブロックの最終予測信号の構成を制御するさらなるパラメータをその中に符号化され得ることを意味する。さらに、データ・ストリームは、それぞれピクチャ12および12’のブロックへの副分割を制御し、シグナリングするパラメータを含むことができる。復号器20は、符号器が行うのと同一の形でピクチャを副分割し、同一の予測モードおよびパラメータをブロックに割り当て、同一の予測信号をもたらすために同一の予測を実行するのに、これらのパラメータを使用する。
図3は、一方では再構成された信号すなわち再構成されたピクチャ12’の間の関係を、他方ではデータ・ストリーム内でシグナリングされる予測残差信号24’’’’と予測信号26との組合せを示す。上で既に示したように、この組合せを加算とすることができる。予測信号26は、図3で、変化するサイズのブロック80へのピクチャ・エリアの副分割として示されているが、これは単に例である。この副分割は、ブロックの行および列へのピクチャ・エリアの規則的副分割などの任意の副分割、または、四分木副分割もしくは類似物などの変化するサイズの葉ブロックへのピクチャ12の複数木副分割とすることができ、その混合物が図3に示されており、図3では、ピクチャ・エリアは、まず木のルート・ブロックの行および列に副分割され、このルート・ブロックが、ブロック80をもたらす再帰的複数木副分割に従ってさらに副分割される。
図3の予測残差信号24’’’’は、ブロック84へのピクチャ・エリアの副分割としても図示されている。これらのブロックを、コーディング・ブロック80からこれを区別するために変換ブロックまたは残差ブロックと呼ぶことができる。効果的に、図3は、符号器10および復号器20が、それぞれピクチャ12およびピクチャ12’のブロックへの2つの異なる副分割すなわち、コーディング・ブロック80への1つの副分割およびブロック84への別の副分割を使用することができることを示す。両方の副分割を同一とすることができる、すなわち、各ブロック80が変換ブロック84を同時に形成することができ、その逆も可能であるが、図3は、たとえば、変換ブロック84への副分割がブロック80への副分割の拡張を形成し、その結果、2つのブロック80の間の境界が2つのブロック84の間の境界にオーバーレイする場合、または言い換えると、各ブロック80が、変換ブロック84のうちの1つに一致するか変換ブロック84のクラスタと一致するかのいずれかである場合を示す。しかし、副分割は、変換ブロック84がその代わりにブロック80の間のブロック境界を横切ることができるようにお互いから独立に決定されまたは選択されることも可能である。変換ブロック84への副分割に関する限り、同様の陳述が、ブロック80への副分割に関して公開されるものに関して真である、すなわち、ブロック84を、行および列に配置されたブロックへのピクチャ・エリアの規則的副分割の結果、ピクチャ・エリアの再帰的複数木副分割の結果、その組合せ、または任意の他の種類のセグメンテーションの組みわせとすることができる。余談として、ブロック80および84が、正方形、長方形、または任意の他の形状であることに制限されないことに留意されたい。さらに、予測信号が形成されるブロック80への現在のピクチャ12の副分割および予測残差がコーディングされるブロック84への現在のピクチャ12の副分割は、コーディング/復号に使用される唯一の副分割ではない可能性がある。予測信号決定および残差コーディングが実行される粒度からのこれらの副分割が実行されるが、第1に、残差コーディングが、その代わりに副分割なしで実行され得、第2に、これらの副分割以外の粒度で、符号器および復号器が、予測パラメータ、予測信号構成制御信号、および類似物などの前述のパラメータの一部を含むことができる、ある種のコーディング・パラメータをセットすることができる。
図3は、予測信号26と予測残差信号24’’’’との組合せが、再構成された信号12’を直接にもたらすことを示す。しかし、複数の予測信号24を予測残差信号24’’’’と組み合わせて、たとえば別々のDPBを有する別々の予測ループ内でコーディング/復号される他のビューまたは他のコーディング・レイヤから入手される予測信号など、代替実施形態によるピクチャ12’をもたらすことができることに留意されたい。
図3では、変換ブロック84は、以下の意味を有しなければならない。トランスフォーマ28および逆トランスフォーマ54は、これらの変換ブロック84の単位でその変換を実行する。たとえば、多数のコーデックが、すべての変換ブロック84に関してある種のDSTまたはDCTを使用する。一部のコーデックは、変換ブロック84の一部に関して予測残差信号が空間領域で直接にコーディングされるようにするために、変換のスキップを可能にする。しかし、下で説明される実施形態によれば、符号器10および復号器20は、複数の変換をサポートする形で構成される。たとえば、符号器10および復号器20によってサポートされる変換は、下記を含むことができる。
○DCT-II(またはDCT-III)、ここで、DCTは、離散コサイン変換を表す
○DST-IV、ここで、DSTは、離散サイン変換を表す
○DCT-IV
○DST-VII
○恒等変換(IT)
当然、トランスフォーマ28は、これらの変換の順方向変換バージョンのすべてをサポートするが、復号器20または逆トランスフォーマ54は、その対応する逆方向バージョンまたは逆バージョンをサポートする。
○逆DCT-II(または逆DCT-III)
○逆DST-IV
○逆DT-IV
○逆DST-VII
○恒等変換(IT)
どの場合でも、サポートされる変換のセットが、1つのスペクトルから空間への変換または1つの空間からスペクトルへの変換など、1つの変換だけを含むことができることに留意されたい。
上で既に概要を示したように、図1から図3は、本願によるビデオ符号器およびビデオ復号器の特定の例を形成するために下でさらに説明される概念を実施できる例として提示された。その範囲において、それぞれ図1および図2のビデオ符号器およびビデオ復号器は、本明細書で下で説明されるビデオ符号器およびビデオ復号器の可能な実施態様を表す。
後で説明される本願のさまざまな態様の実施形態は、時々、前に提示された共通の基礎になる概念を利用する。すなわち、後で説明される実施形態の符号器および復号器は、概要を示されたように、実施態様において、図1~図3に関して上で示された詳細に対応する必要があるのではなく、以下の技術的詳細のうちの1つまたは複数に対応することができ、これらの技術的詳細は、後で説明される実施形態の理解を助けまたは支援する。たとえば、図4を参照されたい。この後で説明される実施形態は、ピクチャ・コーディングに関するという点で一致する。ピクチャは、ビデオの一部とすることができ、下で説明される復号器および符号器は、それぞれ、ビデオ符号器およびビデオ復号器とすることができるが、それでも、ピクチャ・コーディングをあてはめることができる。したがって、図4は、その実施形態が下で説明される符号器および復号器の全般的な挙動またはタスクを概略的に示す。
図4は、コーディングされるピクチャを示す。図1~図3に使用されたものと同一の符号が、下で示される詳細を使用して本願の実施形態に達する形で図1~図3の例を実施するのにどのように使用できるのかに関する理解を助けるために使用される。さらに、図4は、ピクチャ12のブロック84を示す。これは、現在コーディングされているブロックまたは現在復号されているブロックである。符号84の使用は、下で概要を示される変換コーディングが、上で図1から図3に関して概要を示された予測残差に関する可能性があるが、これが、原理的に、代替実施形態で中止され得る状況であることを明らかにする。すなわち、本明細書の下で示されるすべての実施形態に関して、本明細書で言及される変換係数ブロックが、イントラピクチャ予測またはインターピクチャ予測に関する残差など、ブロック84内の予測残差の変換を表す可能性がある。ブロック84は、変換90によって変換係数ブロック92に関する。変換の例は、図1~図3に関して上で示され、これらは、すべての実施形態にあてはまる。1つの変換が、ブロック84に関して選択される。代替案では、変換を固定することができる。選択の場合に、選択を、データ・ストリーム内でシグナリングすることができる。変換の中で、1つを恒等変換とすることができる。変換係数ブロック92の変換が、ブロック84のサイズと一致する次元またはサイズを有するすなわち、ブロック92の係数の個数が、ブロック84内のサンプルの個数と一致する可能性があるが、これが、サポートされるすべての変換にあてはまる必要はなく、使用される単に1つの変換90の場合に、あてはまらない場合がある。符号器と復号器との両方が、復号器は提示のために、符号器は復号されたピクチャ・バッファを供給するために、空間領域内で予測残差などのブロック84の内部を再構成するために逆変換を使用する場合がある。以下で説明する実施形態は、データ・ストリーム14に/から変換係数ブロック92を復号/符号化するタスク108に集中する。
図4に示されているように、変換係数ブロック92は、長方形配列に配置された変換係数91からなるものとすることができる。すなわち、変換係数ブロック92を、長方形ブロックとすることができる。
変換90の目的は、冗長性削減を目指し、より少数の係数91に向かって非0係数を集めることである。たとえば、変換係数ブロック92を示す図5を参照されたい。変換係数位置104すなわち左上の係数位置にある変換係数は、DC係数とすることができ、たとえば、この係数位置104に向かって、ある係数が0ではない量子化レベルに量子化される確率は、高まる。この状況を活用するために、変換係数ブロック92のコーディングは、係数位置104から全般的に離れる形でスキャニング経路94に沿った係数位置104から始めて変換係数を順次スキャンする時に係数位置104から最も遠い変換係数位置98を指示するデータ・ストリーム内の指示のシグナル化を含むことができる。この終端位置98の指示は、データ・ストリーム14が、コーディングされたセット100が、終端係数104を含んでそこまでの終端係数位置98を含むすべての変換係数を含む、変換係数91すなわち図5のハッチングされた係数のコーディングされたセット100だけに符号化されることの指示として働かなければならない。図5でハッチングされていない他の係数は、符号器側で0になることが知られている。
それは、変換係数91のコーディングされたセットが、逆方向118すなわち、一般に終端係数係数104から離れるスキャニング経路94に沿った順方向位置ではなく、終端係数係数104につながる反対方向に沿ってデータ・ストリーム14にコーディングされる時に、本願のいくつかの実施形態で有用であり、使用され得る。
以下で説明されるいくつかの実施形態に関して具体的には議論されないが、変換係数91の量子化レベルが2進化を使用してデータ・ストリーム14にコーディングされることが、後者の実施形態に(オプションで)あてはまりさえする可能性がある。すなわち、ある種の変換係数91の量子化レベルが、図6に示されているように、ビン・ストリングまたは符号語161にマッピングされた2進化によるものである。この2進化は、ある種のプレフィックスとして働く第1の2進化コード160と、第2の2進化コード162とからなるものとすることができる。より正確には、図6の106を、量子化レベルと仮定する。量子化レベル106が、あるカットオフ値164を超える場合に、量子化レベル106は、カットオフ値164に対応する第1の2進化コードの符号語によってプレフィックスされる第2の2進化コードから発する部分162からなるビン・ストリング161に2進化される。しかし、量子化レベル106がカットオフ値を超えない場合には、量子化レベル106は、第1の2進化コード160だけからなるビン・ストリングにマッピングされる。いくつかの実施形態では、カットオフ値164は、ある種の変換係数について0になる可能性があり、その場合に、2進化161は第2の2進化コード162だけを含む。
ある変換係数の2進化161を形成する1つまたは複数のビンを、スキャニング経路94に沿った係数ごとに、それぞれデータ・ストリーム内にコーディングすることができ、そこから復号することができるが、後で説明するいくつかの実施形態は、係数をトラバースする複数のパスを利用することができる。これは、「以前に符号化され/復号された変換係数」が下で言及される時に必ず、その2進化が、完全には符号化/復号されていないことを意味する。そうではなく、少なくとも1つのビンが、そのような以前の変換係数に関して符号化/復号されている。2進化161は、第1の2進化コードの長さ、第2の2進化コードの長さ、ならびに2進化161の全体的な2進化長さが、量子化レベル106に関して、より正確にはその大きさに関して単調に増加する形で形成され得る。すなわち、2進化161の先頭ビットのより多くが、ある量子化レベル106に関して読み取られるたびに、第1に、2進化161が完全に読み取られる可能性がより高くなり、第2に、量子化レベル106がそれ未満にならない絶対値またはこれらの先頭ビンに続き、まだ読み取られていない2進化161のビンがある場合に量子化レベルが最小限でも有する絶対値が、より大きくなる。
具体的な例として、たとえば、第1の2進化コード160のビンが、第2の2進化コードのコーディング/符号化に同行する1つまたは複数のパス内で最初にコーディング/符号化される場合がある。第1の2進化コード160のビンが、コンテキスト適合エントロピ・コーディングを使用してコーディングされる可能性があるが、第2の2進化コード162のビンが、等確率バイパス・モードを使用して、すなわち、1のコード・レートを使用してコーディングされる可能性がある。
図7に示されているように、第2の2進化コード自体は、プレフィックス部分162aおよびサフィクス部分162bを含む圧縮された2進化コードとすることができる。2進化パラメータ163は、プレフィックス部分162aの長さを調整することができる。たとえば、2進化パラメータ163は、Exp-Golomb次数またはRiceパラメータとすることができる。
やはり、第1の2進化コードに属する2進化161のビン165を、コンテキスト適合2進コーディングを使用してコーディングすることができる。これを、図6にハッチングを使用して示す。第2の2進化コーディング162に属する他のビン165は、バイパス・モードを使用してコーディングすることができ、図6および図7でハッチングなしで示されている。後で説明される多数の実施形態が、コンテキスト選択に関する。このコンテキスト選択は、特定の実施態様として、たとえばビン165のうちの1つまたは複数のコンテキスト適合コーディングに使用され得る。さらなる詳細を、以下で示す。
本願の実施形態の説明を開始する前に、後で説明される実施形態の一部によって時々共通して使用されるさらなる概念を提示する。具体的には、いくつかの実施形態によれば、変換係数ブロック92は、あるパーティション120内のすべての変換係数が0であり、したがって変換係数91をコーディングする時にスキップされ得ることをシグナリングするために、図8で破線を使用して示されているように、パーティション120に区分される。ゼロネス・シグナル化のためのそのような区分が使用される場合に、あるパーティションに関して、その中の変換係数91がすべて0であるのかどうか、または、そうではなく、その中の変換係数91がデータ・ストリーム内にコーディングされるのかどうかをシグナリングするために、指示が、パーティションごとにデータ・ストリーム14内でシグナリングされる。本願のさまざまな実施形態の説明中に反対に教示されない場合に、その後に適用されるすべての実施形態にあてはまる1つの可能性は、あるパーティション120のすべての変換係数91が、すべての他のパーティションの変換係数の前にスキャン経路94によってスキャンされまたはトラバースされるようになる形で、変換係数91がスキャニング経路94によってトラバースされるようになる形で、スキャニング部分94を選択できることである。後者の可能性を、上で図6および図7に関して述べた複数パス代替案と組み合わせる時には、コーディングされた/復号がすべての他のパーティションの変換係数に進む前に、あるパーティション120内の変換係数91が完全にコーディングされる、すなわち、ビン・ストリング161のビンが完全にコーディングされる可能性がある。すなわち、スキャン経路94に沿ったスキャン順序118などのスキャン順序での次のパーティションの変換係数の符号化/復号に1つまたは複数のパスでコーディング/復号が進行する前に、1つまたは複数のパスが、スキャン経路94に沿って、あるパーティション120の変換係数91をトラバース 符号化/復号するのに使用される。
パーティションを使用するもう1つの概念を、図9に関して示す。後で説明する少数の実施形態が、この概念を利用する。ここで、変換係数ブロック92は、コンテキスト使用のためにパーティション120に区分される。コンテキスト・セット110aから110cが、図9の右側に示されている。コンテキストのセット110a~cは、「P#」によって指示される1つまたは複数のコンテキストを含む。各「コンテキスト」は、その代わりにコンテキスト・モデルとして表され得、このコンテキストを使用するエントロピ・コーディングの基礎になる確率推定値を指示する。たとえば、2進エントロピ・コーディングすなわちビンのエントロピ・コーディングの場合に、コンテキストは、たとえばビン値のうちの1つの確率推定値を、したがって他のビン値の確率推定値をも自動的に指示する。パーティション120のそれぞれは、コンテキスト・セット110a~cのうちの1つを関連付けられる。たとえば、あるパーティション120内の変換係数91は、そのパーティション120に関連する、コンテキスト・セット110のうちの選択された1つを使用してエントロピ・コーディング/符号化され、このセットからの選択は、たとえば、現在の係数91の近傍の係数の評価に基づいて行われる。
後者の情況を、たとえば図10に示す。現在符号化/復号されている変換係数は、ここでは十字130を使用して強調される。現在符号化/復号されているとは、上で述べた複数パス手法を使用する時に、この係数130の1つのビンが現在符号化/復号されていることを意味する。符号132は、係数130またはその付近に位置決めされたローカル・テンプレートを指示し、このローカル・テンプレート132またはその中に位置決めされた係数は、係数130またはその現在符号化/復号されているビンを符号化するのに使用されるコンテキストを決定するために評価されまたは使用される。やはり、いくつかの実施形態は、ローカル・テンプレート132の使用に直接に言及する。しかし、現在符号化/復号されている係数130のコーディングに使用されるコンテキストを決定するためのローカル・テンプレート132の使用に具体的には言及しない、後で説明する実施形態は、実際に、コンテキスト選択のこの形をも利用するように変更され得る。係数130の選択は、図9の実施形態によれば、現在の係数130が配置されているパーティション120aに関連するセットから行うことができる。しかし、コンテキスト・セットのパーティション固有付与のための区分の使用は、単に例であり、すべての実施形態によって使用されるとは限らない。
後で説明する実施形態の一部が直接に関係し、他の実施形態を変更するか拡張するのにも使用され得る別の態様は、複数の成分すなわち複数の色成分に関するブロック84の内容に関する。色成分の例は、たとえば、それによればブロック84の内容が、ルマLの空間的にサンプリングされた成分および2つのコマ成分C1およびC2の空間的にサンプリングされた成分である、ルマ/コマ表現であるが、他の例も存在する可能性がある。したがって、ブロック84は、第1の色成分のサンプル配列841、第2の色成分のサンプル配列842、第3の色成分のサンプル配列843からなる。この態様は、各成分を別々に扱うことができることである。すなわち、成分ごとに、ブロック84のそれぞれのサンプル配列は、プレディクタのそれぞれの成分に関する予測残差を表すことができる。各サンプル配列は、好ましくは同一の変換である変換90の対象にされ、対応する変換係数ブロック921から923を生じる。しかし、さまざまな色成分のサンプル解像度が、お互いとは異なる可能性があり、したがって、サンプル配列の間のサイズおよび変換係数ブロックの間のサイズが、同様に異なる可能性があることに留意されたい。各変換係数ブロック921から923は、データ・ストリーム14への/からの復号/符号化108の対象にされ、各変換係数ブロック921から923は、図3から図9に関して説明した手段、ステップ、およびプロセスの対象にされる。図11aで説明する複数成分概念を、色成分態様にさらには言及しない、後で説明する実施形態に適用することができるが、後で説明する実施形態を、1つの成分だけが存在する事例または実施態様に同様に使用できることに留意されたい。
上でまだ説明していない別の態様は、ある変換係数ブロック92のコーディングが、したがってその復号が、その変換係数ブロック92の変換係数91のいずれかが非0であるかどうかの指示190から始まることができるという事実である。そうではない場合に、変換係数ブロックが、大域的に0であることが復号器にわかっている。図11bに示されたこの指示190が、少なくとも1つの非0係数91が存在することを指示する場合に、上で概要を示した概念の任意の組合せが、変換係数ブロックをコーディングするのに使用される。同様の形で、図11cは、パーティション120に関する同様の指示150を示す、すなわち、これらは、関連するパーティション120内のゼロネスを指示する。図11dは、位置98を指示することのできる最終位置指示114を示す。図11eは、関連するコンテキスト・セット110から選択された、現在の係数の量子化レベル106をエントロピ符号化/復号116するのに現在使用されている個々のコンテキストを示し、図11fは、量子化レベル106がデータ・ストリーム内にコーディングされるコーディング順序102すなわち、たとえば方向118でパス94をトラバースすることから生じる順序を示す。
読者はここで、後で説明する本願の実施形態を理解し、これに従う準備をしなければならない。本願の第1の態様に関する実施形態を、図12に関して説明する。ここで、符号器および復号器は、1つのブロック84の異なる色成分の異なる変換係数ブロックのエントロピ・コーディングの実行に関して特殊な形でピクチャ12をデータ・ストリーム14に符号化/復号する。図12は、2つの色成分からなり、これによってサンプル配列841および842からなるものとしてブロック84を示すが、この構成が、図11aに関して説明した3つの色成分を含むことができることは明白である。図11aに関して説明したように、符号器は、それぞれ同様に第1の変換係数ブロック921および第2の変換係数ブロック922を入手するために第1の色成分および第2の色成分に関して別々にピクチャ12のブロック84を変換90の対象にし、復号器は、それぞれ第1の変換係数ブロック921および第2の変換係数ブロック922に逆変換を別々に実行することによってピクチャのブロック84を導出する。データ・ストリーム14への/からの第2の変換係数ブロック922のエントロピ符号化およびエントロピ復号に関して、符号器および復号器は、第1の変換係数ブロック921に依存するコンテキストを使用してコンテキスト適合的に動作する。この依存性は、図12では矢印300によって示されている。
たとえば、第1の変換係数ブロックへの依存性300を使用して決定されるコンテキストは、図8に関して上で説明したパーティション固有指示に関係し、あるパーティション120内の変換係数91が、すべて0または少なくとも1つの非0係数を含むのどちらであるのかを指示することができ、後者の場合に、そのパーティション内の変換係数91の量子化レベルは、データ・ストリーム14に/からエントロピ符号化/復号されるが、このエントロピ符号化/復号は、すべて0を指示する他のパーティションに関してスキップされる。パーティション120に関するそのような指示を、フラグとすることができ、コーディングされたサブブロック・フラグと呼ぶことができる。あるパーティション/サブブロック120のそのようなコーディングされたサブブロック・フラグに関して選択されるコンテキストを、たとえば、第1の変換係数ブロック内の同一位置のサブブロック(パーティション)に関してコーディングされるコーディングされたサブブロック・フラグ(さらなる指示)に依存して選択することができる。したがって、選択を、2つの使用可能なコンテキストの間で行うことができ、第1の使用可能なコンテキストは、第1の変換係数ブロック921内の同一位置のパーティションのフラグが1である場合に使用され、第2の使用可能なコンテキストは、第1の変換係数ブロック921内の同一位置のパーティションのフラグが0である場合に、第2の変換係数ブロック922内のあるパーティションのフラグに関して使用される。しかし、第2の変換係数ブロック922のあるパーティション120のある指示に関する依存性300を、その代わりに、異なる形で実施することができる。たとえば、第2の変換係数ブロック922のあるパーティション120に関するゼロネスのある指示に関して選択されるコンテキストは、同一位置のパーティション内の変換係数ブロックなどの第1の変換係数ブロックの変換係数の量子化レベルに依存することができる。
すなわち、上で明示的には述べなかったが、我々は、2つの変換ブロック921および922が、等しい形状およびサイズを有するか、水平次元および垂直次元に関して等しいアスペクト比を有する可能性があり、パーティション120の区分が、これらのブロック921および922に関して等しいか、一方の変換係数ブロック921を他方にスケーリングする時に一致すると仮定することができる。
その代わりにまたはそれに加えて、依存性300は、上で説明した変換係数ゼロネスの大域指示に関係する場合がある。すなわち、変換係数ブロック922に関してデータ・ストリーム14にコーディングされまたはこれから復号される指示は、依存性300を介して、使用されるコンテキストに関して、第1の変換係数ブロック921に依存する。この指示が、第2の変換係数ブロック921の変換係数91が少なくとも1つの非0係数を含むことを指示する場合には、ブロック922の変換係数91の量子化レベルは、データ・ストリーム14にエントロピ符号化され、データ・ストリーム14からエントロピ復号されるが、この指示が、第2の変換係数ブロック内のすべての変換係数が0であることを指示する場合には、第2の変換係数ブロック922のコーディング/復号は、そのブロック922のすべての変換係数91が0であると復号器が推論することによって行われる。たとえば、依存性300は、その場合に、第2の変換係数ブロック922のゼロネスの指示に使用されるコンテキストを、第1の変換係数ブロック921に関してコーディング/復号される対応する指示に依存するものにすることができる。代替案では、依存性300は、変換係数ブロック922のゼロネスの指示に使用されるコンテキストを、第1の変換係数ブロック921の変換係数の量子化レベルに依存するものにすることができる。たとえば、第1の変換係数ブロック921の指示が、第1の変換係数ブロック921の少なくとも1つの変換係数の非ゼロネスを指示する場合には、第1のコンテキストが、第2の変換係数ブロックの指示に選択され得、第1の変換係数ブロック921の対応するゼロネス指示が、第1の変換係数ブロック921の変換係数の全ゼロネスを指示する場合には、第2のコンテキストが、第2の変換係数ブロック922のゼロネス指示に選択され得る。
それに加えてまたはその代わりに、依存性300は、終端係数位置98の位置指示に関することができる。この位置指示をデータ・ストリーム14内でシグナリングする、異なる可能性が存在する。たとえば、位置指示を、順方向116でスキャン経路94に沿って測定される時の、すべての係数位置の中の位置98のアドレスまたはランクとして位置98を指示する1次元のアドレスまたはランクとしてデータ・ストリーム内でシグナリングすることができる。代替案では、位置指示は、位置98をそれぞれ変換係数ブロック921および922内の水平位置および垂直位置に関して指示する2つの座標によって、それぞれの変換係数ブロック内の位置98を指示する 位置を指示することができる。ここで、既に上で議論した依存性300の実施の可能性に加えてまたはその代わりに、依存性300は、第2の変換係数ブロック922の位置98の最終位置指示に影響することができる。具体的には、この指示を符号化するのに使用されるコンテキストは、第1の変換係数ブロック921の位置98の最終位置指示または第1の変換係数ブロック921内の有意な変換係数91の位置もしくは分布の評価など、第1の変換係数ブロックに依存することができる。
ブロック921および922の最終位置指示が符号化される形は、2進化コードへの2進化をも含むことができ、その依存性が依存性300を含むコンテキストは、最終位置指示の2進化コードの最初のビンなどの1つまたは複数のビンに関して使用され得る。
それに加えてまたはその代わりに、第2の変換係数ブロック922内の変換係数91の2進化161の最初のビンなどの1つまたは複数のビンが、依存性130の対象になる場合がある、すなわち、2進化161の1つまたは複数のビンを符号化するのに使用されるコンテキストが、第1の変換係数ブロック921の同一位置の変換係数の2進化の対応するビンなど、第1の変換係数ブロック921に依存する場合がある。
図12の実施形態(1つまたは複数)の説明を終えるにあたって、図12に示された2つの色成分をコマ成分とすることができ、具体的には、第2の変換係数ブロックの色成分をCrとすることができ、第1の変換係数ブロック921の色成分をCbとすることができることに留意されたい。
ピクチャをデータ・ストリーム内に符号化する符号器およびピクチャをデータ・ストリームから復号する復号器の次の実施形態は、本願のさらなる態様すなわち、特定の変換係数位置すなわち、上で概要を示したようにDC係数位置とすることのできる変換係数位置104の特定のコンテキスト・セット110を提供することによってコーディング効率向上を目指す態様に関する。この実施形態は、以下では正確にこの変換係数位置104に関して提示されるが、特定の係数個別のコンテキスト・セットの提供が、その代わりにまたはそれに加えて、係数位置98すなわち、スキャン経路94に沿って測定された係数位置104から最も遠い非0係数の位置に適用され得ることに留意されたい。「コンテキスト個別」は、コンテキスト・セットが、同一の変換係数ブロックの任意の他の係数91に使用されないという事実または、問題の変換係数位置、ここでは104のコンテキスト・セットに含まれるコンテキストのいずれもが、同一の変換係数ブロック内の他の変換係数のコーディングに使用されないという事実さえ表す。
この実施形態を、図5に基づいて示すことができる。符号器および復号器は、所定の方向102で第1の終端係数位置98から第2の終端係数104へスキャン・パターン94によってトラバースする 変換係数91のコーディングされたセット100を表すデータ96をデータ・ストリーム内に/から符号化/復号することによって(図4と比較されたい)スキャン・パターン94を使用してデータ・ストリーム内に/から変換係数ブロック92を符号化/復号するように構成され、データ96は、変換係数のコーディングされたセット100内の非0変換係数の量子化レベル、すなわち、少なくとも、それらの位置に沿った非0変換係数の量子化レベルまたはコーディングされたセット100のすべての変換係数の量子化レベルを含む。上で図5に関して説明した位置98の位置指示のシグナリングが、現在説明される実施形態に関して単に例として理解されなければならず、この位置指示のシグナリングが、その代わりにこの実施形態では中止され得、たとえば、変換係数ブロック92のすべての変換係数91を包含するコーディングされたセット100が、コーディングされたセット100を決定する際に符号器および復号器を必然的にまたは他の形で同期化することを理解されたい。
どの場合でも、本実施形態によれば、DC係数位置とすることのできる終端係数位置104に関して、コンテキストの特定の(第1の)セット110を使用して量子化レベルをコンテキスト適合的にエントロピ符号化/エントロピ復号するように構成され、位置104の係数に使用されるこのコンテキスト・セット110は、変換係数のコーディングされたセット100内の任意の他の変換係数91に使用されるコンテキストの1つまたは複数のセットと互いに素にされる。特定の例によれば、たとえば、あるコンテキスト・セット110が、位置104のDC変換係数の量子化レベルをエントロピ符号化するのに使用され、別の/異なるコンテキスト・セット110が、ブロック92のすべての他の変換係数91の量子化レベルをエントロピ符号化/復号するのに使用され、コンテキスト・セットの間の「差」は、位置104の係数のコンテキスト・セットに含まれるコンテキストのいずれもが、他の変換係数のコンテキスト・セットに含まれず、逆も同様であることを含むことができる。
位置固有コンテキスト・セットが、位置98の変換係数量子化レベルに使用される、上で述べた代替案によれば、他のすべての変換係数91は、位置98の変換係数に使用されるコンテキスト・セットとは異なる、同一のコンテキスト・セットを使用することができる。やはり上で述べたさらなる代替案の場合に、位置固有コンテキスト・セットを、位置104の変換係数と位置98の変換係数との両方に使用することができ、これらを、お互いに対して相互に異なり、たとえばコーディングされたセット100に含まれ、スキャン経路94に沿って位置104と位置98との間にある係数91のエントロピ符号化/復号に合同で使用されるコンテキスト・セットと相互に異なるものとすることができる。
したがって、1つの係数位置すなわちここでは係数位置104のために個別に提供される位置固有コンテキスト・セットを、たとえば、位置104として変換係数の2進化161の1つまたは複数のビンを符号化するのに使用することができる。この1つまたは複数のビン165を、第1の2進化コード160の1つまたは複数のビン165とすることができる。たとえば、これを、たとえば対応する位置の変換係数が有意であるすなわち非0であるか否かを示した、このビンに関する2進化161のビン順序で最初のビンとすることができる。同様に、他の変換係数に使用されるコンテキストの互いに素にされたセットは、これらの他の変換係数の2進化161の対応する1つまたは複数のビンに使用される。
図5に関して述べたコンテキスト・セットが、そこからの特定のコンテキストが現在符号化/復号されている変換係数に使用されるリザーバとして働くことができることを想起されたい。すなわち、位置104の変換係数の位置固有コンテキスト・セット110は、位置104の変換係数の係数レベルの2進化161の1つまたは複数のビンのエントロピ符号化/復号に実際に使用されるコンテキストが、図10に示されたローカル・テンプレート132を使用してそこから選択されるリザーバの基礎として働く。図10に示されたローカル・テンプレート132は、現在エントロピ符号化/復号されている変換係数130の近傍の5つの変換係数位置すなわち、現在エントロピ符号化/復号されている変換係数130の右、下、および斜め右下の係数位置ならびに、次の右に最も近い位置および係数130の次の下に最も近い位置を含む。しかし、これは単なる例であり、ローカル・テンプレート132によって包含される位置の個数および位置を、異なって選択することができる。
完全さのために、コンテキスト固有コンテキスト・セットが1つまたは2つの特定の係数位置104および/または98に使用される、上で述べた実施形態を、残りの変換係数に関して、パーティション固有係数セット110が、変換係数ブロック92がその中に区分されるパーティション120に関して、それに従って使用され得る、図8に関して述べた可能性と組み合わせることができることに留意されたい。たとえば、図13は、位置104を示し、変換係数ブロック92が、複数のパーティションすなわちここでは4つのパーティション120に区分されることを示す。この実施形態によれば、パーティション固有コンテキスト・セットは、位置104の係数の量子化レベルのエントロピ符号化/復号に使用されるが、ブロック92のすべての他の変換係数91に関して、使用されるコンテキスト・セットは、それぞれの変換係数91が配置されるパーティションに関連するコンテキスト・セットになると決定され、これらのコンテキスト・セットは、相互に互いに素にされると同時に、特に位置104に関して提供されるコンテキスト・セットと互いに素にされ得る。
図13の例では、パーティションは、DC係数位置などの終端係数位置104と、変換係数ブロックの反対の角すなわち、水平方向と垂直方向との両方で最高周波数に対応することのできる係数ブロック92の右下側の係数位置とを通って走る変換係数ブロックの対角線122に、斜めの方向に沿って対角線方向に延びる。
図5および図13に関して説明した実施形態を、図12に関して説明した実施形態とたやすく組み合わせられることは明白である。
次に説明する実施形態は、ピクチャをデータ・ストリーム内に符号化する符号器およびデータ・ストリームからピクチャを復号する復号器に関する本願のさらなる態様に関し、この態様は、現在符号化/復号されている変換係数のコンテキスト選択またはコンテキスト決定に関して固有である。実施形態(1つまたは複数)を、図10に関して最もよく理解し、説明することができる。具体的には、符号器および復号器は、現在符号化/復号されている変換係数130に位置決めされたローカル・テンプレート132によって決定される位置に配置された1つまたは複数の以前に符号化/復号された変換係数の和および/またはその中の有意な変換係数の個数に基づいて決定されるコンテキストの使用によって、変換係数ブロック92の現在符号化/復号されている変換係数130の量子化レベルをコンテキスト適合的にエントロピ符号化/復号するように構成される。本実施形態(1つまたは複数)に従って、変換係数またはより正確にはその量子化レベルが、次々にすなわち次の変換係数91のエントロピ符号化/復号に進む前に完全にエントロピ・コーディング/復号されることが可能であるが、上で説明した概念を適用することができ、これに従って、変換係数の量子化レベルのエントロピ符号化/復号が、複数のパスで量子化レベルの2進化のビンのコンテキスト適合された2進エントロピ・コーディングを使用して行われることを想起されたい。コンテキスト適合性を、上で議論したように第1の2進化コード160に制限することができる。すなわち、一方で、ローカル・テンプレート132を使用することと、ローカル・テンプレート132内の1つまたは複数の変換係数の和を形成することおよび/またはその中の有意な変換係数の個数をカウントすることとによって選択され/決定されるコンテキストを、第1の2進化コード160の1つまたは複数のビンに適用できることに留意されたい。さらに、複数パス・コーディングを使用することができる。すなわち、現在エントロピ符号化/復号されている変換係数130を、そのビンが現在エントロピ符号化/復号されている変換係数とすることができる。さらに、ブロック92の変換係数91の2進化161のビン165が、複数のパスで順次コーディングされる時に、ローカル・テンプレート132に包含されるビン165または変換係数91の2進化161が、これまでに不完全にエントロピ符号化/復号されている可能性がある。したがって、係数130またはより正確にはその現在符号化/復号されているビンのコンテキストの決定に関して、以下のように和を計算することができる。具体的には、ローカル・テンプレート132内の係数91の和は、ローカル・テンプレート132内に配置された1つまたは複数の変換係数の係数レベルの所定の絶対値(ローカル・テンプレート132の内部のそれぞれの係数の係数レベルが、複数パス・ビン符号化/復号プロセスでこれまでに符号化/復号されたその変換係数の係数レベルの2進化のビンに従って最小限でも有しなければならない所定の絶対値)の和として計算され得る。特定の例として、2進化161が、以下のビンを含むと考えることができ、第1の2進化コード160の最初のビンは、上で既に述べたように、2進化161が関係する変換係数の量子化レベルが有意であるすなわち非0であるか否かを指示することができる。2進化160のビン順序で2番目のビンも、第1の2進化コード160に属することができる、すなわち、コンテキスト適合エントロピ符号化/復号の対象になることができ、2進化160が関係する係数の量子化レベルの絶対値が1を超えるか否かを指示することができる。ビン順序で3番目のビンも、第1の2進化コード160に属することができ、変換係数の絶対値が偶数または奇数のいずれであるのかすなわちそのパリティを指示することができる。ビン順序でのさらなるビンすなわち4番目のビンも、第1の2進化コード160に属することができ、現在の変換係数が、パリティが偶数である場合に2を超え、パリティが奇数である場合に3を超えるかどうかを指示することができる。他のビンは、第2の2進化コード162に属することができる。したがって、ローカル・テンプレート132内の係数に関して既にエントロピ符号化/復号されたビンの個数に依存して、その絶対量子化レベル値は、完全に既知であり、和の加数を形成することができるか、最小の絶対値が、その代わりに使用され、その係数の量子化レベルの素手の符号化/復号されたビンに基づいて導出され得るかのいずれかになる。
ローカル・テンプレート内の有意な係数の個数に関する限り、第1のビンが、少なくとも、逆方向118で現在符号化/復号されている係数130を過ぎてスキャンに沿って先行するローカル・テンプレート内の係数に関してローカル・テンプレート内の係数に関して既に符号化されているので、同一のことが、上で概要を示した例に従って使用可能である。
特定の例は、コンテキスト決定が和だけに基づくこととすることができる。別の例は、コンテキストが、単にテンプレート132内の有意な係数の個数またはカウントに基づいて決定/選択されることとすることができる。さらなる例は、和および有意な係数の個数の間の差が使用されることとすることができる。さらに、その代わりにまたはそれに加えて、概要を示した形で決定されるコンテキストを、具体的に例示したビンのいずれかまたは複数など、第1の2進化コード160の1つまたは複数のビンに関して使用することができる。
図10に関して説明した実施形態(1つまたは複数)を、上で説明した実施形態のいずれとも組み合わせることができる。
次に説明する実施形態(1つまたは複数)は、本願のさらなる態様に関し、本願の態様の前に説明した実施形態のいずれとも組み合わされ得る。この説明も、図10に関して提供することができる。図10に関しておよび以前に説明した実施形態(1つまたは複数)に関して説明した復号器および符号器と同様に、これから説明する実施形態(1つまたは複数)は、ピクチャをデータ・ストリーム内に符号化する符号器およびデータ・ストリームからピクチャを復号する復号器であって、変換係数ブロック92をデータ・ストリーム内に/から符号化/復号するように構成された符号器および復号器に関する。しかし、これから説明する実施形態(1つまたは複数)によれば、ローカル・テンプレート、具体的にはその位置に配置された1つまたは複数の以前に符号化/復号された変換係数が、2進化パラメータをセットするのに使用される。変換係数ブロック92の現在符号化/復号されている変換係数130の量子化レベルの絶対値は、2進化パラメータを使用してパラメータ化された2進化を使用して2進化される形で符号化/復号される。1つまたは複数の以前に符号化/復号された変換係数の和および/またはその中の有意な変換係数の個数が、決定に使用される。
すなわち、この実施形態の説明は、この実施形態(1つまたは複数)に関する1つまたは複数の以前に符号化/復号された変換係数のローカル・テンプレートの評価に基づくコンテキストの決定に関して以前に与えた説明とは大きく離れ、2進化パラメータのセッティングに集中するものである。この実施形態(1つまたは複数)に従って、変換係数ブロックの変換係数の量子化レベルのどの絶対値が符号化/復号されるのか、およびどの2進化パラメータがローカル・テンプレート132を使用してセットされるのかを使用する2進化を、上で図6に関して説明した2進化161とすることができるが、必ずしもそうである必要はないことに留意されたい。すなわち、ここで意図される2進化は、そのビンがコンテキスト適合的にコーディングされる第1の2進化コードまたは第1の部分もしくはプレフィックス部分を有することができるが、変換係数ブロック全体が、たとえばバイパス・コードを使用してコーディングされることも可能であり、あるいは、ここで意図される2進化が、第2の2進化コード162だけからなることも可能である。ローカル・テンプレート132の評価に基づいて決定される2進化パラメータは、プレフィックス部分162aの長さを決定することができる。ローカル・テンプレート132内の1つまたは複数の以前に符号化/復号された変換係数の量子化レベルの絶対値の和を2進化パラメータにマッピングするために、ルックアップ・テーブルを使用することができる。2進化パラメータを、これが変換係数にわたって連続的に増加しまたは連続的に減少するようになる形で決定することができる。
さらなる詳細に関して、前に説明した、すなわち2進化のコンテキスト適合的にエントロピ・コーディングされたビンがそれに基づいてコーディングされるコンテキストの決定に関して説明した実施形態の説明を参照する。これらの詳細は、複数パス手法を使用する変換係数のトラバースの場合に和をどのように決定できるのかを示す。これに関して、この実施形態ならびに以前の実施形態に関して、複数パス手法を、複数パス手法がパーティション単位で適用される形で行うことができることを想起されたい。しかし、どの場合でも、スキャン経路94が、全般的に変換係数ブロック92の右下から左上を指す時に、図10に示されたテンプレート位置すなわち、現在符号化/復号されている変換係数130の右および/または下にあるテンプレート位置が、現在符号化/復号されている変換係数またはその現在のビンがデータ・ストリーム内に/から符号化/復号される時に既に符号化/復号されている傾向がある。
次に説明する実施形態(1つまたは複数)は、カットオフ値164に関して固有のデータ・ストリーム内に/からピクチャを符号化/復号する符号器および復号器に関する。したがって、以下の説明は、図4および図6の組合せに基づいて最もよく理解することができる。ここで、符号器および復号器は、カットオフ値164未満の第1の2進化コード160と、カットオフ値を超える、カットオフ値に関する第1の2進化コードの符号語によってプレフィックスされた第2の2進化コード162とを使用して2進化された形で、変換係数ブロック92の変換係数91の量子化レベル106の絶対値を符号化/復号することによって、図5に示されたスキャン・パターン94を使用して変換係数ブロック92をデータ・ストリーム内に/から符号化/復号するように構成される。可能な全般的な実施態様の例または概念の上の説明から明瞭になるように、第1の2進化コード160のビンを、コンテキスト適合2進エントロピ・コーディングを使用してコーディングし、第2の2進化コードを、等確率バイパス・モードを使用してコーディングすることができる。この実施形態によれば、変換係数ブロック92の変換係数91のカットオフ値は、以前に符号化/復号された変換係数に依存して適合的に変更される。
特定の実施形態によれば、適合変更を、以下のように実施することができる。変換係数ブロック92を、変換係数91をパーティションごとにスキャンするために変換係数ブロック92を通るスキャン経路94を有するパーティション120に区分することができる。すなわち、1つの区分されたものの中のすべての変換係数位置が、次のパーティションの前にスキャン経路94によってスキャン/トラバースされる。これを超えて、変換係数91の符号化/復号は、ビン165が複数のパスでコーディングされるようになる形で行われる。第1の2進化コード160のビン165は、コンテキスト・エントロピ符号化の対象にされ、第2の2進化コード162のビンは、等確率バイパス・モードの対象にされる。第1の2進化コード160のビンは、第2の2進化コード162のビンの前に符号化/復号される。このコーディング環境では、カットオフ値の適合変更は、次のように実施され得る。現在のパーティション内の変換係数91のビン165が、1つまたは複数の先導パスでスキャンされる。しかし、コンテキスト適合2進エントロピ・コーディング/復号を使用してコーディングされるビン165の個数を、制限することができる。すなわち、その場合に、1つのパスが、第1の2進化コード160のビン165をコーディングするのに使用されると仮定する。次に、現在のパーティション120内の係数91の量子化レベルの絶対値の第1の2進化コード160のビン165が、係数ごとにコーディングされる。次に、このように個々の係数91についてコーディングされたビンの個数は、それぞれの変換係数の量子化レベルの値に依存して変化する。ある係数で、第1の2進化コード160のコンテキスト適合的に2進エントロピ・コーディングされるビン165の最大個数に達する。したがって、第1のパスが完了される。次のパスは、もう一度先頭からすなわち、ブロック92の位置104から最も遠いパーティション120内の係数位置から、現在のパーティションの係数912をスキャンする。コンテキスト適合的に2進エントロピ・コーディングされるビンの最大個数に達する前のすべての係数に関して、カットオフ値164は、カットオフ値の初期値と等しくなる。コンテキスト適合的にエントロピ・コーディングされるビンの最大個数に達するので第1の2進化コード160のビン165がコンテキスト適合的に完全にエントロピ符号化/復号され得ない係数に関して、カットオフ値は、その係数の第1の2進化コード160のコーディングされたビン165の個数に対応する形で減らされる。具体的には、カットオフ値は、この係数に関して、その係数に関してコーディングされたビンの個数に対応して減らされ、この係数の第2の2進化コード162は、第1の2進化コードのビン165に関連する最大絶対値を超える「残り」を単純にコーディングする。そのパーティション120の後続の係数に関して、カットオフ値は、0になり、2進化161は、第2の2進化コード162だけからなる。
概要を示した例では、カットオフ値の適合変更が、中心的な役割を演ずる。後で概要を示す実施形態(1つまたは複数)では、カットオフ値のセッティングは、コーディング効率を高めるのに使用されるが、この実施形態によれば、セッティングは、その代わりに、変換係数ブロックのコーディング/復号中のカットオフ値の適合セッティングではなく、それぞれ変換係数ブロックのコーディングおよびその復号の始めのカットオフ値の初期セッティングとすることができるが、前者のオプションも、この実施形態に従って存在する。すなわち、これらの実施形態(1つまたは複数)によれば、ピクチャをデータ・ストリーム内に/から符号化/復号する符号器および復号器は、カットオフ値164未満の第1の2進化コードを使用し、カットオフ値を超える、カットオフ値164に関する第1の2進化コード160の符号語によってプレフィックスされた第2の2進化コード162を使用して2進化する形で変換係数ブロック92の変換係数91の量子化レベル106の絶対値を符号化/復号することによって、変換係数ブロック92を符号化/復号する。カットオフ値164は、
・ブロック84のサイズ、
・ブロック84の色成分、
・イントラ・コーディング・モードまたはインター・コーディング・モードなど、ブロック84がその予測残差を表す予測信号の基礎になる予測モード、
・変換係数ブロック92の基礎になる変換、
・変換係数ブロック92を量子化するのに使用される量子化パラメータ、
・以前に符号化/復号された変換係数のエネルギの測定、および
・以前に符号化/復号された変換係数の評価
のうちの1つまたは複数に依存してセットされる。
やはり、本明細書で説明されるセッティングは、係数91ごとに、またはその代わりに、単に位置98の係数などの最初にコーディングされる係数に関して、またはその代わりに、各パーティション内のスキャン経路94によって最初にトラバースされる係数に関して、すなわち、最初にトラバースされるパーティション120内の位置98としての係数および同様に任意の続くパーティション120内の最初にトラバースされる係数に関して、行われ得る。
カットオフ値164のセッティングに関する上で述べた代替案を、複数の可能性において実施することができる。しかし、原理的に、カットオフ値のセッティングは、一例として、前の例に関して概要を示した形で実施することもできる、すなわち、係数ごとに、これまでに既にコンテキスト適合的に2進エントロピ・コーディング/復号された第1の2進化コードのビンの個数に依存する形でセットすることができる。この個数を、エネルギの測定として使用することができ、あるいは、この個数を、以前に復号/符号化された変換係数の評価の結果とすることができる。第1の2進化コード160の既に符号化/復号されたビンの個数またはカウントが、パーティション120ごとに行われる場合に、この個数またはカウントは、現在のパーティション120内の以前に符号化/復号された変換係数のエネルギの測定を表す。しかし、カットオフ値164のセッティングのこの実施形態ならびにカットオフ値164の適合的変更の前の実施形態(1つまたは複数)に関して、コンテキスト適合的に2進エントロピ・コーディングされるビンの最大個数に関する変形形態もあり、パーティション120ごとに別々に最大個数を定義するのではなく、最大個数を大域的に決定できることに留意されたい。これは、1つの特定の係数91と1つのパーティション120のみの中に位置決めされた変換係数ブロック92全体とに関して最大個数に達することを意味する。すべての以前にスキャンされたパーティション120に関して、カットオフ値は、初期のカットオフ値に対応するが、0までのカットオフ値164の減少は、そのパーティション内でのみ発生する。続くパーティションは、そのすべての係数91に関して0のカットオフ値164を有する。
上で概要を示し/リストした代替案の1つまたは複数に依存してカットオフ値164をセットする、概要を示した実施形態の多数のさらなる実施形態が存在する。たとえば、以前に符号化/復号された変換係数の評価を、ローカル・テンプレート132によって決定される位置に配置された係数91に制限することができる。すなわち、セッティングは、現在符号化/復号されている変換係数130について行われ、セッティングは、効果的に適合変更になる。その代わりに、以前に符号化/復号された変換係数の評価を、現在符号化/復号されている変換係数130がそこに配置される現在位置に対してオフセットされ、コーディング順序118に従って現在のパーティションに先行する、変換係数ブロックのパーティション内の位置に配置された係数に関して行うことができる。後者の代替案では、評価を、パーティション120ごとに、すなわち、それぞれのパーティション120内の変換係数91のコーディングの始めでのカットオフ値のある種の初期セッティングで行うことができる。さらなる代替案を、以下でさらに議論する。1つ、たとえば、初期セッティングを、上でリストした1つまたは複数の代替案のいずれかに従って行うことができる。所定のしきい値に続くかこれを超えるカットオフ値164の初期セット値に依存して、カットオフ値の適合変更をアクティブ化するか、カットオフ値を一定に保つことができる。一例は、たとえば、量子化パラメータに依存してカットオフ値を当初にセットすることである。量子化パラメータによって決定される量子化が、所定のしきい値より微細である場合には、適合変更をアクティブ化することができ、カットオフ値を適合的に変更することができ、したがって、以前に符号化/復号された変換係数に応じて初期セッティングに対して相対的に修正することができるが、量子化パラメータがより粗な量子化に対応する場合には、カットオフ値は一定に保たれる。
以下では、ローカル・テンプレート132の形状を具体的に扱う本願の態様に関する本願の実施形態(1つまたは複数)に関する。すなわち、この実施形態(1つまたは複数)によれば、符号器は、データ・ストリーム14へのピクチャの符号化に関し、復号器は、データ・ストリームからのピクチャの復号に関する。符号器および復号器は、現在符号化/復号されている変換係数130に位置決めされたローカル・テンプレート132によって決定される位置に配置された1つまたは複数の以前に符号化された変換係数に基づいて決定され、またはローカル・テンプレート132が使用不能にされる場合には以前に符号化/復号された変換係数91とは独立に決定されるコンテキストの使用によって、変換係数ブロック92の現在符号化されている変換係数130の量子化レベル106をエントロピ符号化/復号するように構成される。具体的には、図14の実施形態によれば、1)以前に符号化/復号された変換係数91および/または2)ブロック84のサイズ、ブロック84の色成分、順方向116に沿ってスキャン・パターン94をトラバースする時に最後の非0変換係数が生じる位置の終端係数位置決めされ の位置すなわち98、および変換係数ブロック92の基礎になる変換90のうちの1つまたは複数に依存して、ローカル・テンプレート132の形状が、セットされ、またはこれに依存してローカル・テンプレート132が使用不能にされ、これは、ローカル・テンプレート132が消え、位置決めされた係数を全く含まないことを意味する。図14は、ローカル・テンプレート132の2つの形状170および172を例示的に示す。一方すなわち172は、図10に関して示され、上で説明された例に対応する。他方すなわち170は、単に、すぐ右の隣接する係数位置と、現在エントロピ符号化/復号されている係数130のすぐ下の隣接する位置とを含む。
依存性が以前に符号化/復号された変換係数に関する、第1の代替案によれば、以前に符号化/復号された変換係数に対する依存性を、ローカル・プリミティブ・テンプレート170などのローカル・テンプレートのより小さい形状によって決定される位置に配置された1つまたは複数の以前に符号化/復号された変換係数に制限することができる。プリミティブ・テンプレート170に位置決めされた係数の評価に応じて、たとえば、このプリミティブ・テンプレート170がコンテキスト決定に使用されるのかどうか、またはより大きいプリミティブ・テンプレート172が使用されるのかどうかが判断される。より大きいプリミティブ・テンプレート172は、プリミティブ・テンプレート170より、現在符号化されている変換係数から遠くに延びる。第2のプリミティブ・テンプレート172は、第1のプリミティブ・テンプレート170によっても含まれる位置を含んでも、これらを含まなくてもよい。
より小さいテンプレート170内の係数の評価に基づくどの形状を使用すべきかの判断は、プリミティブ・テンプレート170内の1つまたは複数の以前に符号化された変換係数の和またはその中の有意な変換係数の個数に依存して行うことができる。使用不能化の判断を、プリミティブ・テンプレート170内の1つまたは複数の係数の評価に依存して行うことすらできる。さらに、使用不能化の判断を、変換係数ブロック内の以前に符号化/復号された変換係数から導出されるアキュムレータ値またはあるしきい値を超える変換係数ブロック内の以前に符号化/復号された変換係数のカウントが所定の量を超えるかどうかに依存して行うことができる。それに加えてまたはその代わりに、有意である、変換係数ブロック内の以前に符号化/復号された変換係数91のカウントが所定の量を超える場合に、ローカル・テンプレートを使用不能にすることができる。
ローカル・テンプレート132内の1つまたは複数の係数に対するコンテキスト依存性に関して、上で示した詳細は真である可能性がある、すなわち、ローカル・テンプレート内の有意な係数の和および/または個数を使用できる可能性がある。さらに、ローカル・テンプレート132に基づいて導出されるコンテキストを、プレフィックス部分160のビン165に関する使用に制限することができる。さらに、複数パスの使用およびローカル・テンプレート132内の和の決定に関する関連に関する上の注記が、ここでもあてはまる可能性がある。
特定の実施形態を参照すると、ローカル・テンプレート132が、クロマ成分に関して使用不能にされるが、ローカル・テンプレート132が、ルマ成分に関して使用不能にされない場合がある。
本願のさらなる実施形態(1つまたは複数)は、コンテキスト・セット使用を決定するための粒度としてパーティション120を使用する時のパーティション120のサイズに関する。たとえば、図8および図13を参照する。この態様に関する本願の実施形態(1つまたは複数)は、特徴をデータ・ストリーム14に/から符号化/復号する符号器および復号器を説明するものである。これらは、パーティション120ごとに、それぞれのパーティションに関連するコンテキスト・セット110を使用して、変換係数ブロック92の変換係数91の量子化レベル106をコンテキスト適合的にエントロピ符号化/復号することによって、変換係数ブロック92の変換係数91を符号化/復号する。しかし、具体的には、変換係数ブロック92がそれに副分割されるパーティション120は、1)たとえば、図8ではお互いに一致するが、図13に示されているようにお互いに一致しないように形状において変化し、かつ/または2)変換係数91の量子化レベルのエントロピ符号化/復号がそれに沿って実行され、たとえばデータ・ストリーム14内でシグナリングされ得るスキャニング・パターンに依存して形状を定められ、たとえばそれぞれ現在のブロック84/92に固有に決定され、かつ/または3)ブロック84のサイズに依存して形状を定められ、かつ/または4)データ・ストリーム14内でシグナリングされる明示的なパーティション形状決定情報に依存して形状を定められる。この実施形態では、たとえば、あるパーティション120内の係数91ごとに、それぞれの係数またはその現在のビンのエントロピ符号化に実際に使用すべき、それぞれのパーティションに関連するコンテキストのセットを判断するのに、ローカル・テンプレート132を使用することが可能である場合がある。現在の実施形態のパーティション120は、コーディングされたブロック・フラグすなわちそれぞれのパーティション内のすべての変換係数91が0であるか否かの指示が上で説明したようにそれに関してデータ・ストリーム内で送信されるパーティションとしてさらに働くことができる。
本願のさらなる実施形態(1つまたは複数)は、本願のさらなる態様すなわち、ゼロネス指示のためにパーティションがそれに従って使用されるが、指示150が、パーティションに関して、それぞれのパーティション内のすべての変換係数がデータ・ストリーム内にコーディングされるのかどうか、またはそれぞれのパーティション内のすべての変換係数のコーディングがスキップされ、それぞれのパーティション内のすべての変換係数が0であるのかどうかを指示する態様に関する。具体的には、本願のこの態様によれば、指示は、すべての係数がコーディングされるか否かを指示する形で解釈される。これらのパーティションのそれぞれは、指示によってそのように指示される場合にそれぞれのパーティション内の変換係数がそれを使用して符号化されるコンテキストのセットを関連付けられ得る。言い換えると、ゼロネスのパーティションごとの指示は、そのようにセットされる場合に、あるパーティション内のすべての変換係数がコーディングされ、この情況をそれ以上疑う必要がないことを指示する。指示150がその係数のコーディングをシグナリングするパーティションの最後にコーディングされた係数の有意フラグさえ、すべての以前の係数が0であることに基づいて推論されないものとすることができる。
本願のさらなる実施形態(1つまたは複数)は、本願のさらなる態様すなわち、パーティション・モードが変換係数ブロック92に関してデータ・ストリーム内でそれに従ってシグナリングされ、このパーティション・モードが、パーティション個別のコンテキスト・セット110を関連付ける際に使用されるパーティション120への区分が適用されるか否かを指示する態様に関する。より正確には、この実施形態(1つまたは複数)は、変換係数ブロック92の区分モードをデータ・ストリーム14に/から符号化/復号すること、ならびに、パーティション・モードがたとえばパーティション120への区分をオンに切り替える第1のモードである場合に、変換係数ブロック92が副分割されるパーティションのパーティション120ごとに、それぞれのパーティションに関連するコンテキスト・セット110を使用して変換係数ブロック92の変換係数91の量子化レベル106をコンテキスト適合的にエントロピ符号化/復号することと、パーティション・モードが、たとえばパーティション120への区分がオフに切り替えられることを指示する第2のモードである場合に、コンテキストの大域セットを使用して変換係数91の量子化レベル106をコンテキスト適合的にエントロピ符号化/復号することとによって変換係数ブロック92を符号化/復号することを用いてピクチャをデータ・ストリーム内に/から符号化/復号する符号器および復号器を説明するものである。しかし、大域性を、位置104の係数および/または位置98に位置決めされた係数に使用される特殊なコンテキスト・セットに関して制限できることに留意されたい。やはり、この実施形態においても、パーティション120は、変換係数ゼロネスの指示がデータ・ストリーム内で送られる単位を形成するという役割をさらに演じることができる、すなわち、パーティション120ごとに、コーディングされるサブブロック・フラグを、それぞれのパーティション内のすべての変換係数91が0であるか否かを指示するデータ・ストリーム内のシグナルとすることができる。
本願の最後の態様を扱う実施形態(1つまたは複数)を、図15を参照することによって最もよく理解することができる。やはり、この態様は、パーティション120へのパーティション個別のコンテキスト・セット110の関連付けのためのパーティション120への区分の使用に関する。符号器および復号器は、ピクチャをデータ・ストリーム内に/から符号化/復号し、スキャン・パターン94を使用して変換係数ブロック92を符号化/復号するように構成され、スキャン・パターン94は、変換係数ブロック92が副分割されるパーティションのパーティション120ごとに、それぞれのパーティション120に関連126するコンテキスト・セット110を使用して変換係数ブロック92の変換係数の量子化レベル106をコンテキスト適合的にエントロピ符号化/復号することによって変換係数ブロック92の変換係数91を順次トラバースする。しかし、スキャン・パターン94が、パーティションごとの形で変換係数91を例示的にスキャンすると説明された以前の説明とは異なって、図15のスキャン・パターン94は、変換係数91を異なってスキャンし、図15は、スキャン・パターンにアポストロフィを使用することすなわち94’によって、その状況を示す。スキャン・パターン94’は、第1のパーティションの少なくとも1つの変換係数が、第2のパーティションの2つの変換係数の間にトラバースされるようになる形で、変換係数ブロック92の変換係数91を順次トラバースする。たとえば、図15の係数91’が、そのような係数であり、これは、パーティション1201の2つの係数の間にスキャンされる。しかし、これは、パーティション1202のメンバである。
しかし、パーティション120へのコンテキスト・セットのパーティション単位の関連付けは、パーティション120に関連付けられたコンテキスト・セット110が、パーティション120の各対に関して相互に異なるか、相互に互いに素であることを意味しない。言い換えると、コンテキストの1つのセットを、2つのパーティションに共通して関連付けることができる。たとえば、スキャン・パターン94に沿った変換係数91のインターリーブを、共通のコンテキスト・セット110を関連付けられたパーティション120に関するものとすることができる。これを理解するために、スキャン部分94’の別の例を示す図16を参照すると、スキャン部分94’は、図16の例では変換係数ブロック92が区分される唯一のパーティション120aおよび120bである少なくとも2つのパーティション120、ここではパーティション120aおよび120bの変換係数をインターリーブする形で変換係数91をトラバースする。ここで、共通のコンテキスト・セットを、パーティション120aおよび120bに関連付けることができる。しかし、図15と図16との両方の例で、パーティションを、ゼロネス・コーディングまたはゼロネス指示がデータ・ストリームすなわちコーディングされたサウンドブロック・フラグ内でシグナリングされる単位としてさらに使用することができる。図15および図16の実施形態では、現在符号化/復号されている変換係数130が配置されるそれぞれのパーティション120に関連するコンテキスト・セット110からのコンテキスト選択は、かつ、上で議論したローカル・テンプレート132を使用して実行され得る。それに加えてまたはその代わりに、関連するコンテキスト・セット110からのコンテキスト選択を、現在のパーティション内の以前に復号/符号化された変換係数のカウントに基づいて行うことができる。現在符号化/復号されている変換係数は、このカウントが1つまたは複数のしきい値を超えるかどうかに依存するなどで配置される。たとえば、図16の例では、変換係数130が、現在符号化/復号されている変換係数である場合に、4つのハッチングされた変換係数は、1つまたは複数のしきい値を超えるブロック92の以前に符号化/復号された変換係数を表す可能性がある。
ゼロネス指示またはコーディングされたサブブロック・フラグを利用する時に、これを、あるパーティション120の変換係数が最初にスキャンされる時に、それぞれデータ・ストリーム内にコーディングし、そこから復号することができる。すなわち、あるパーティション120のゼロネス指示またはコーディングされたサブブロック・フラグを、そのパーティションの最初の変換係数91がスキャン部分94’に沿ってスキャンされるや否や、スキャンすることができる。図17および図18に、この例を示す。図18は、やはり、ここでは3つのパーティション120a、120b、および120cに区分された変換係数ブロック92の例を示す。別のパーティションすなわちパーティション120bの2つの変換係数の間のスキャン部分94’内の1つの変換係数91(インターリーブされた)が、符号91’によって示されている。図17は、この変換係数91’が、図5に関して上で議論した最終位置指示を使用する時に、たまたま、最初にコーディングされる変換係数でもある、すなわち、位置98に位置決めされていると仮定する。その量子化レベル106がコーディングされ、これに、パーティション120b内のすべての変換係数91が0なので0であるパーティション102bのコーディングされたサブブロック・フラグCBF2が続く。図18は、すべて非0の変換係数91が、ハッチングを使用して指示されると仮定する。係数位置104の真下の係数は、スキャン部分順序で別のパーティションの2つの係数の間に配置された係数91’のうちの1つでもある。これは、現在、スキャンされるパーティション120aの最初の係数であり、したがって、パーティション120bのCBS2に続くこのパーティション120aに関して指示されるゼロネス指示CBF3である。やはり、係数位置104の真下の係数91’が非0であると仮定されるので、CBF3は、1としてシグナリングされ、パーティション120a内の係数91が、コーディングされる。
前述の実施形態が、本願の異なる態様に属する を、他のすべての実施形態またはその組合せに関するクロス色成分コンテキスト派生物に関する実施形態、コンテキスト派生物に関する実施形態を有する2進化パラメータ・セッティングに関する実施形態、ローカル・テンプレートを使用するセットなどからのコンテキスト選択に関する実施形態を有するある種の係数soパーティションへのコンテキスト・セット属性に関する実施形態などと組み合わせることができることを、上でしばしば言及したが、ここでもう一度留意されたい。
したがって、上の実施形態は、画像およびビデオ圧縮でのエントロピ・コーディングに関するものなどの変換係数ブロック・コーディングに関する。
上の実施形態は、デジタル信号処理の分野、具体的には、画像およびビデオの復号器および符号器の方法および装置に関する。特筆すべきことに、上の実施形態は、区分技法を使用する画像およびビデオの圧縮アーキテクチャでのエントロピ・コーディング・ステージに適用される戦略のセットをもたらす。改善されたコンテキスト・モデリング戦略が、構文要素の処理順序を変更することによって達成された。技法のセットは、なかんずく、現在のレベルのローカル・アクティビティの分析と、専用のコンテキスト・モデルの使用と、構文処理順序の変更と、クロス成分構文要素の評価と、極端な可能性を有するコーディング状態の除外または専用処理とを含んだ。
具体的には、上の実施形態は、特に区分技法を使用する画像およびビデオの圧縮アーキテクチャでの残差圧縮ステージに関する構文要素に適するエントロピ・コーディングの新しい技法のセットを提示する。そのような設計は、通常、長方形またはブロックなどの規則的な形状にピクチャを分割する。一般性を失わずに、用語ブロックは、本文書の説明の適用される区分技法を説明する任意の形状を表す。出発点は、図3に関して上で説明した最大の許容されるサイズとすることができ、区分アルゴリズムは、各ブロックをさらにより小さい単位に分割することができる。そのような区分を、技術的現状のHigh Efficiency Video Coding(HEVC)仕様などの四分木構造を使用することによって実行することができる。区分の異なる戦略、たとえば、四分木ではなく2分木を使用する戦略も可能である。区分のほかに、残差圧縮ステージの前の新しいコーディング・ツールが、既存の手法をさらに進化させることを必要とする。改善された圧縮効率を達成するために、以下の態様に対処する。
・コーディング順序を変更する構文要素の定義(たとえば、図15、図16、図18)
・上記変更に関連して、2進化を調整する(たとえば、カットオフ値の適合変更に関して)
・2進化プロセスが作るビンごとのコンテキスト・モデリング(たとえば、ある特性に関するローカル・コンテキスト・テンプレートの形状の適合または使用不能化の概念を参照されたい)
・空間(たとえば、ローカル・テンプレートを利用するか、たとえばエネルギに関するある種の特性に依存するカットオフ値をセットする実施形態などを参照されたい)、周波数(たとえば、ある種の特性に関するローカル・コンテキスト・テンプレートの形状の適合または使用不能化と、たとえばエネルギに関するある種の特性に依存するカットオフ値のセッティングなどの概念を参照されたい)、およびクロス成分(たとえば、図11aを参照する請求項)領域でのローカル・アクティビティの評価
・極端な可能性を有するコーディング・モードの除外
・極端な可能性を有するコーディング・モードの専用処理
・専用コーディング状態の別々の処理
HEVCで使用されるエントロピ・コーディング・ステージは、Context-based Adaptive Binary Arithmetic Coding(CABAC)であり、これは、3つの内部処理ステージからなる。第1のステージは、2進化ステージであり、第2のステージは、コンテキスト・モデリング・ステージであり、最終処理ユニットは、2進算術コーディング・エンジンである。すべての入力シンボルが、2進化ステージを通る。その出力は、入力がすでに2進数である場合には同一のシンボル、またはビン・ストリングと称する入力シンボルを表す2進数または符号語のいずれかである。コンテキスト・モデリング・ステージは、コンテキスト・モデルを選択し、その選択をエントロピ・コーディング・エンジンに渡す。CABACで実施されるM-Coderなどの2進算術コーディング・エンジンが、通常、均一な確率を有するシンボルに関してバイパス・モードをサポートすることに留意されたい。本文書の残りは、コンテキスト・モードを用いるコーディングを通常モード、コンテキスト・モードを用いないコーディングをバイパス・モードと呼ぶ。
残差圧縮ステージすなわち、変換係数レベルの送信に関して、入力は、主に、整数値の係数からなるブロックである。これらの値は、通常、周波数領域に変換される予測残差であり、レベルは、しばしば、量子化プロセスに起因する元の情報の部分的量だけを表す。処理が、エントロピ・コーディング・ステージで順次的性質なので、1次元ベクトルへの2次元形状の分解が必要である。スキャニング・パターンは、1次元ベクトルへの2次元ブロックのマッピングを指定する。そのようなスキャニング・パターンは、HEVCなどで、変換係数の部分的な量だけがビットストリーム内で送信されるたびに、複数回適用され得る。本文書は、以下の段落で異なる視点から残差圧縮ステージを説明する。
HEVCでの残差圧縮は、次のように働く。コーディングされたブロック・フラグ(CBF)構文要素が、まずコーディングされ、現在変換されているブロックの非有意性すなわち、すべての変換係数レベルが0と等しいか否かをシグナリングする。有意なレベルが存在する時には、最下位スキャニング位置が指定される。これは、選択されたスキャニング・パターンに依存し、シグナリングされる最後の位置からスキャニング・パターンによって定義される最初の位置までのすべてのレベルがコーディングされる。暗黙のうちに、スキャニング順序は、逆の順序でのスキャニング・パターンの使用と同一である。サブタスクへのこのプロセス全体の分割が、実施の複雑さおよび圧縮効率に関する改善を可能にする。4×4より大きい変換ブロックは、サブブロックと称する4×4のサブユニットで処理される。サブブロックの処理順序は、スキャニング位置の処理と同一である、すなわち、各サブブロックが規則的な周波数位置を表し、変換ブロックが、垂直スキャンブロックを使用して8×8ブロックに関して図19に例示的に示されているようにN×MではなくN/4×M/4のサイズを有すると仮定する。
有意な変換ブロックに関する第1のステップでは、最後の位置の絶対座標すなわち左上角が座標原点として定義されるx座標およびy座標がコーディングされる。3つの事前に定義されたスキャニング・パターン、すなわち対角線、水平、または垂直のうちの1つが選択される。予測モードがイントラである時に、変換ブロックは、8×8以下であり、プレディクタの方向は、水平または垂直のスキャニング・パターンのいずれが使用される場合であっても、事前に定義された範囲内にある。次に、最後の有意なレベルを含むサブブロックから開始して、レベルに関する残りの情報が、レベルが再構成されるまでコーディングされる。説明されたプロセスは、処理順で最後のサブブロックまで残りのサブブロックに関して繰り返され、最後のサブブロックは、必ず、DC周波数位置を包含するサブブロックである。サブブロックのCBFのコーディングなど、処理に組み込まれる追加の技法が存在する。これは、最後のスキャニング位置のシグナリングそのサブブロックの有意性をすでに推論するので、最後のサブブロックに関してスキップされる。DC周波数位置を包含するサブブロックの推論も、特殊な事例である。さらに、符号ビット隠蔽(SBH)技法を、サブブロックごとに適用することができる。概要を、図20に示す。
2進化ステージの観点から、各整数値のxは、区間上の点を表し、区間の各点は、符号号を割り当てられる。単項コードは、|x|=nが2進値b0に終端2進値b1が続く回数nによって表される、一般に使用される方式である。整数値のシンボルのセットが制限される時に、終端2進値を、最大の入力シンボルのために残し、いわゆる切り捨てられた単項コードを残すことができる。HEVCでは、レベルの2進化プロセスは、3つの異なる方式の合成である。最初の3つの絶対レベル値は、切り捨てられた単項部分に含まれる。現在の絶対値が、限界より大きい時に、残りの値は、Riceコードを使用して2進化される。実際のRiceコードは、次数kを指定することによって選択される。しかし、Riceコードによって包含される区間も、制限され、区間値の残りの値は、2進化にExponential-Golombコードを使用する。HEVCでは、Exponential-Golombコードの次数が、必ずk+1と等しい。コードの間の推移を、2進化境界と称し、両方の境界すなわち、切り捨てられた単項からRiceへの推移およびRiceからExponential-Golombへの推移は、第1の境界に関してコーディングされる構文要素の個数、第2の境界に関してRiceパラメータkに依存して適合的である。第1の境界は、各サブブロック内で切り替わり、各サブブロックの処理の始めには3と等しい。2を超える絶対レベルがコーディングされる時には必ず、境界は2に下げられる。1を超える8つの絶対レベルがコーディングされる時にも必ず、境界は1に下げられる。その結果は、サブブロックによって包含されるすべての周波数位置に関して、有意性が通常モードでコーディングされるが、レベルが1を超えるかどうかの情報が8つの位置まで、レベルが2を超えるかどうかの情報が1回のみコーディングされることである。Riceパラメータkの選択は、次の通りである。このパラメータは、各サブブロックの始めには0と等しい。レベル全体が再構成された後に、絶対値がしきい値と比較され、絶対値がしきい値を超える場合には、kを1つ増分する。しかし、kは、HEVCのメイン・プロファイルを考慮すると、4に制限され、この値を超えない。レベルの2進化を、図21および図22に要約する。
各サブブロックのコーディングは、構文要素がグループ内で順序付けられるように、複数のスキャニング・パスに分割される。第1の処理パスでは、有意性情報が送信される。次に、1を超えるすべての構文要素、次に2を超えるすべての構文要素、残りの絶対レベル、および最後に符号が送信される。整数値の最後の有意な位置の2進化は、次のように働く。ブロック・サイズに応じて、最大値は、Nと等しいブロック・サイズに関してN-1に制限される。サイズNに応じて、2進化の出力は、切り捨てられた単項コードと固定長2進項コードとの組合せである。
コンテキスト・モデリングは、詳細には以下のように働く。一般に、固定長2進化コード、Golomb-Riceコード、またはExponential-Golombコードから生じる2進シンボル(ビン)は、バイパス・モードでコーディングされ、単項コードまたは切り捨てられた単項コードに関するビンは、通常モードを使用してコーディングされる。また、既に2進である入力シンボルは、通常、算術2進コーダの通常モードでコーディングされる。ルマ成分のCBFに関して、専用のコンテキスト・モデルが、0と等しい残差四分木(RQT)深さに関して使用され、残りの深さに関して別の専用コンテキスト・モデルが使用される。クロマでのCBFシグナリングが、ルマのように葉レベルではなく各深さに沿うので、専用コンテキスト・モデルが、RQTの深さごとに使用される。x座標およびy座標として指定される最後の位置が、ブロック・サイズに依存する特定の個数の連続するビンに関して同一のコンテキスト・モデルを使用する。より具体的には、ビンごとに単一のコンテキスト・モデルを使用するのではなく、均一なコンテキスト量子化器が使用され、使用されるコンテキスト・モデルの個数を削減する。レベルのコーディングは、異なるコンテキスト・モデル・セットを使用する4つの構文要素タイプを使用する。サブブロックのCBFは、隣接する右サブブロックおよび下サブブロックの有意性すなわち、両方の隣接物が有意である、両方の隣接物が有意ではない、2つのうちの1つが有意であるに応じて3つの異なるコンテキスト・モデルを使用する。有意性フラグは、コンテキスト・モデルがサブブロック内のスキャニング位置に固定して割り当てられる4つの異なるパターンを使用し、パターンは、隣接する右サブブロックおよび下サブブロックに依存する。通常モードを使用する残りのレベル情報は、1より大きく、2すなわち、第1の2進化境界が3と等しい時の切り捨てられた単項コードの2つのビンである。2より大が1回コード化されるので、単一のコンテキスト・モデルが使用される。1より大きい情報に関して、セット内の次のコンテキスト・モデルが、最初の非終端2進値b0が発生するまで使用される。そのケースが発生する場合に、専用のコンテキスト・モデルが、サブブロックの終りまで使用される。さらに、コンテキスト・セットが、以前のサブブロック内の1を超えるレベルの存在に依存して選択される。
コンテキスト・モデリングは、エントロピ・コーディング・ステージで重要な態様を演ずる。より高い圧縮効率結果を、コンテキスト・モデリングに関するより高度な技法を使用することによって達成することができる。本明細書で提示される実施形態は、既存の情報がコンテキスト・モデリング・ステージに関してより早期に使用可能になるようにコーディング順序を変更することによって、レベル・コーディングの圧縮効率を改善する。可能なコーディング構造を、図23に示す。
一実施形態によれば、処理順序は、次のスキャニング位置にステップする前に各レベルが完全に送信されるように変更される。それを行うことによって、より高い圧縮効率を可能にするコンテキスト・モデリング・ステージの条件が使用可能にされる。具体的には、サブブロックを複数のパスで処理するのではなく、各スキャニング位置の絶対レベルが、完全に送信され、その結果、1つの処理パスだけが必要になる。複数スキャニング・パス手法は、いくつかのハードウェア・アーキテクチャに関して利益を有するが、別のアーキテクチャ・タイプに関して、たとえばメモリ・アクセスに関して不利益をも有する。概要を、図24に示す。
変更された処理順序は、隣接する周波数位置を評価する時に、部分的な量のみではなく完全な絶対レベルが使用可能になるように、絶対レベルを完全に送信する。変更が、必ずしも説明されたように固定されるとは限らないことに留意されたい。しばしば、残差エネルギは平坦であり、その結果、絶対レベルが小さくなる。トレードオフ動作モードは、指定されたしきい値より大きい絶対レベルの特定の量が検出される時にのみテンプレート評価を可能にする(たとえば、図14に関して説明した実施形態を参照されたい)。さらに、スループットの理由から、絶対レベルが1を超えること、2を超えることを指示するフラグの個数は、通常モードではビンの個数を減らすために制限され得る(たとえば、図6に関して説明した、カットオフ値4を適合させまたはセットすることを目指す実施形態を参照されたい)。絶対レベル・コーディングを使用する時に、サブブロックの概念は、必ずしも4×4形状に頼る必要はなく(たとえば、図13に関してなど、パーティションの形状決定に関する実施形態)、連続するスキャニング位置のグループとすることができる。すなわち、異なるパーティションに属する係数のインターリーブを、行わなくてもよい。サブブロックの主な理由を、コンテキスト・モデリングとすることができることに留意されたい。4×4サブブロックの概念を、スキャニング位置のグループにたやすく拡張することができる。たとえば、16と等しいスキャニング位置の固定された個数を使用して、既存の4×4サブブロックに類似する構成をもたらすことができる。図25は、同一のサイズであるがジグザク・スキャンに従う(右)4つのパーティションへのサイズ16(係数での)の4つのパーティションへの規則的なパーティション(左)の変換の例を示す。
連続するスキャニング位置へのグループ化は、しばしば、選択されたサイズに依存するスキャニング位置のみからなる。圧縮効率を改善するために、サイズを、可変であるが(パーティションの形状に関する実施形態を参照されたい)、所与の変換ブロックサイズに関して固定されるように構成することができる。別の例は、次の通りである。DC周波数位置は、専用の形状を形成することができ、スキャニング位置形成の回数は、対角線と等しい。このサイズが、ブロック・サイズに依存する形で構成されなければならないことに留意されたい。グループへの特定の個数の連続するスキャニング・パターンの形成は、周波数位置の間の隣接関係を残す。したがって、お互いに空間的に近いスキャニング位置をグループ化することが合理的である。既存のスキャニング・パターンと組み合わせるために、1つのグループのスキャニング位置を連続的に処理する必要はない(図15、図16、および図18を参照されたい)。そうではなく、グループのCBFは、グループの最初のスキャニング位置が処理される時にコーディングされる。図17および図18を参照されたい。さらに、グループ化は、前もって、たとえば前方駆動手法(前述の明示的なパーティション形状決定情報と比較されたい)または逆方向駆動手法(前述のスキャン・パターンまたはブロック・サイズに依存するパーティション形状決定と比較されたい)、またはその両方の組み合わせを使用して指定され得る。この構成では、最後の有意な位置に依存して、グループ化が使用されるか否かをシグナリングするさらなるフラグが、コーディングされ、グループのCBFの存在または不在をもたらす(パーティション・モード・シグナリングを使用する実施形態を参照されたい)。スキャニング位置の個数の適合は、以下のように高周波数位置でのあるレベルのコスト削減を可能にする。一般に、より高い周波数位置でのレベルは、低いエネルギを有し、有意なレベルの間の距離は、より低い周波数位置より大きくなる傾向を有する。したがって、レート歪み最適化量子化手法は、そのようなレベルを非有意にさらに量子化する。スキャニング位置の個数を適合的に形成する時に、2つのそのようなレベルの間の距離のコストを、さらに低減することができる。この概念を、他の目的にも適用することができる。高い残差エネルギを有するより高い動作点で、有意なレベルのみを有するスキャニング位置のグループのコストを、さらに低減することができる。また、CBFが1と等しい時に、グループ内の少なくとも1つの有意な係数の存在ではなくそのグループがコーディングされることを意味するように、グループのCBFの定義が変更される。セマンティックの変更は、論理を削減する。
4:2:0クロマ・サブサンプリングされた信号の経験的なデータの観点から、ルマ残差信号は、通常、空間的に隣接する(たとえば、空間的に対応する)クロマ残差信号より高いエネルギからなる。この事実を、レベルがCBFのシグナリングの直後にコーディングされるように処理が再順序付けされる時のレベルのコーディングに組み込むことができる。その場合に、より多くの情報が、コンテキスト・モデリング・ステージに関して評価され得る。ルマCBFおよび残差のコンテキスト・モデリングを、クロマCBFまたはクロマ残差の結果に対して条件付けることができる(図12の説明と比較されたい)。さらに、最後の有意な位置のコーディングを、レベル・コーディングから、すなわち3つすべての変換ブロックが有意である場合に、分離することができる。3つすべての最後の有意な位置が、成功裡にコーディングされる。CBFのコーディングと同様に、最後の有意な位置のコーディングを、隣接する(たとえば同一位置の)変換ブロックの最後の有意な位置の結果に対して条件付けることができる(図12の説明と比較されたい)。さらなる技法は、最後の有意な位置すなわち2つのクロマ変換ブロックの合同コーディングであり、単一の最後のスキャニング位置だけが、2つの最後の有意な位置の代わりにコーディングされる、すなわち、位置指示114が、たとえばルマおよびクロマに関して合同で1回だけコーディングされることである。
第1の2進化境界すなわちカットオフ値164は、適合的であり、複雑さと圧縮効率との間のトレードオフの特徴を表す。より低い圧縮効率は、低すぎる固定された境界を選択する時に達成され、高い複雑さは、高すぎる固定された境界を選択する時に生じる。高い境界が、改善された圧縮効率の比例する増加にはつながらず、改善が非常に制限されることに留意されたい。しかし、動作点は、残差圧縮ステージの前の異なる区分戦略および追加のまたは新規のコーディング技法の故に変更された。たとえば、5と等しい第1の2進化境界をセットすることによって、順方向に適合的に制御されまたは逆方向に適合的に制御されるのいずれかである適合変換などの追加の変換モードが使用可能にされる時に、改善された圧縮効率がもたらされる。第1の2進化境界を使用して、異なるコーディング・モードを制御することができる。たとえば、レベルの高いエネルギが検出され、その結果、ビンが通常モードでコーディングされない時に、第1の2進化境界を0と等しくセットすることができる(カットオフ値の変更およびセッティングに関する上の実施形態と比較されたい)。高い信号エネルギの検出は、変換ブロックまたは変換ブロックのサブブロックの既に送信された構文要素(または2進判断)の値を分析することによって実現することができる。一例として、高い信号エネルギの検出を、あるしきい値との絶対値の和(変換ブロックまたは変換ブロックのサブブロック内の)の比較によって実現することができる。その代わりに、検出を、スキャニング位置(変換ブロックまたは変換ブロックのサブブロックの)にわたる第1のスキャン・パス内で既にコーディングされたビンの個数をあるしきい値と比較することによって実現することができる(複数パス概念と組み合わされた、カットオフ値の変更およびセッティングに関する上の実施形態と比較されたい)。
共通の動作点の構成は、次の通りである。初期境界すなわちカットオフ値は、使用される予測モード、変換モード、おより量子化パラメータに依存し、3より大きい、すなち、5と等しい(カットオフ値のセッティングに関する上の実施形態を参照されたい)。HEVCでの構成と同一のモードの組合せに関して、初期の第1の境界は、3にセットされる。このモードでは、境界は、レベル値の発生に依存して減らされる(カットオフ値の変更に関する上の実施形態を参照されたい)。しかし、初期の第1の境界が5と等しい時には、この値が、グループに関してまたは変換ブロック全体に関して固定して保たれる。
コンテキスト導出に関するローカル・テンプレートは、既存の技法の一部として使用されたが、制限された情報を用いて使用された、すなわち、絶対レベルの部分的量だけが評価された。コーディング構造に変更を適用することによって、既存の情報が、復号プロセスのより早期に使用可能になり、したがって、コンテキスト・モデリング・ステージで使用され得る。絶対レベルが、コーディング構造に適用される前述の技法に起因して使用可能になるので、ローカル・テンプレートによって包含される周波数位置は、より多くの情報からなる。提示される実施形態の一部は、この事実を次のように活用する。各レベルが完全にコーディングされるようにコーディングが順序付けられるので、ローカル・テンプレートは、既にコーディングされた隣接する空間位置を評価する。隣接するレベルの絶対和および有意なレベルの個数が、単項2進化または切り捨てられた単項2進化とすることのできる第1の2進化コードの一部としてビンのコンテキスト・モデルを導出するのに使用される。Riceパラメータなどの2進化パラメータ163を、評価から導出することもできる。例の構成は、以下の通りである。
テンプレートの形状は、固定または適合的とすることができる。形状適合実施形態を、上で説明した。たとえば、テンプレート・サイズが5と等しく、最初の2つの隣接する位置の評価が、既に非常に大きい絶対和につながる時に、残りの隣接する位置の評価をスキップし、ローカル・テンプレートの適合形状をもたらすことができる(図14と比較されたい)。この形状を、ブロック・サイズ、色成分、最後の有意な位置、および選択された変換に応じて構成することができる。特殊な場合に、テンプレートのサイズを、0に等しくセットすることができ、その結果、ローカル隣接物内部の既にコーディングされた量子化レベルのいずれもが、コンテキスト派生に使用されなくなる。その後、ローカル・テンプレートは破棄される。残差エネルギが、周波数位置の間で分散され、平坦である時、すなわち、絶対レベルが低い時に、より多くの隣接する周波数位置を包含するテンプレートが、より効率的である。そのような状況は、しばしば、高周波数位置での最後の有意な位置に関連して、より大きい変換ブロック内にある。
量子化インデックスの2進化のビンが、変換ブロックまたは変換ブロックのサブブロックのスキャン位置にわたる複数のスキャン・パスでコーディングされる場合に、現在のスキャン・パスおよび以前のスキャン・パスで送信されたビンだけが、コンテキスト・モデルの導出に使用される。その場合に、部分的に再構成された絶対レベル(現在のスキャン・パスおよび以前のスキャン・パスで送信されたビンを使用して導出される)が使用される。具体的には、第1のパスで送信される(変換ブロックまたはサブブロックのスキャン位置にわたって)コンテキストコーディングされたビンに関して、テンプレートが、第1のスキャン・パスでコーディングされたビンによって与えられる部分的に再構成された変換係数レベルを使用して評価される。
異なるコンテキスト・モデル・セットを、現在の対角線、ブロック・サイズ、適用される変換、選択されたプレディクタまたは予測モード、および切り捨てられた単項符号語内の位置などの情報に依存して使用することができる。コンテキスト希釈を回避するために、コンテキスト・セットを合併することができる。たとえば、隣接する対角線を、図25の右に示されているように1つのパーティションに関連付けることができる)一例として、ある種のコンテキスト・セットを、複数の対角線位置に関して使用することができる(すなわち、変換係数のブロックが、対角線(x+y)位置に依存して複数の領域に区分され、別々のコンテキスト・セットが、これらのパーティションのそれぞれに使用される)。同様に、異なるコンテキスト・セットを、他のパラメータまたは異なるパラメータの組合せの複数の値を合併することによって入手することができる。DC位置専用のコンテキスト・モデル・セットも、ある種の情況で有益である(たとえば、位置104および/または98のサンプル固有コンテキスト・セットを提供する実施形態を参照されたい)。それは、DC係数(変換係数のブロック内の位置x=0およびy=0すなわち位置104に配置される)に関して、他のすべての係数位置とは異なるコンテキスト・モデルのセットを使用できることを意味する。そのようなコンテキスト・セット区別を、切り捨てられた単項コードの一部であるすべてのビンに適用することができる。それは、コンテキスト・セットを指定する、上で述べた方法のいずれもが、変換係数レベルの2進化の個々のビンに、またはその代わりに変換係数レベルの2進化のビンのサブセットに、または別の代替案として変換係数レベルの2進化のすべてのコンテキストコーディングされるビンに、適用され得ることを意味する。
コンテキスト・モデル選択は、テンプレート評価の結果に依存する。たとえば、レベルの絶対和およびテンプレート内の有意な位置の個数が導出される。この2つの数に依存して、切り捨てられた単項コードなどの第1の2進化コード160のすべてのビン部分のコンテキスト・モデルおよびRiceパラメータkを導出することができる。たとえば、絶対和から有意な位置の個数を減じたものは、コンテキスト・モデル・セット内のコンテキスト・モデル・インデックスを直接にもたらす。コンテキスト・モデル・セットが制限されているので、この値を、コンテキスト・モデル・セット内のコンテキスト・モデルの個数までにクリッピングすることができる。Riceパラメータに関して、マッピング・テーブルを導出することができ、その結果、絶対和とRiceパラメータとの間の直接マッピングを確立できるようになる。しかし、テーブル・サイズを制限するために、絶対和も制限されなければならない。
コンテキスト・モデル選択を、選択された変換によって導出することもできる。具体的には、主係数のサブセットだけに適用される副変換が使用される場合に、コンテキスト・モデルの専用のセットを両方のサブセットに使用することができる。
既知であり、圧縮効率を改善するために活用することのできるコーディング状態が存在する。1つのケースが、最後の有意なスキャニング位置のレベル・コーディングに関して与えられる。この位置に関して、専用のコンテキスト・モデルが、切り捨てられた単項2進化とすることのできる第1の2進化コードの一部であるビンのコーディングに使用される。これを、たとえば対角線を評価することによって、ブロック内の現在位置と組み合わせることができ、その結果、異なるコンテキスト・セットを使用できるようになる。これを、上で説明した方法とさらに組み合わせることができ、ここでは、コンテキスト・モデルの別の異なるセットが、DC変換係数レベル(すなわち、変換ブロックの内部の位置x=0およびy=0の変換係数レベル)のビンに使用される。最後の有意なスキャニング位置がDC位置と等しい場合に関して、複数の可能性があり、最後の位置のコンテキスト・セットが使用される(すなわち、最後の位置がより高い優先順位を有する)か、DC位置のコンテキスト・セットが使用される(すなわち、最後の位置がより高い優先順位を有する)か、別々のコンテキスト・セットが、最後のスキャニング位置でもあるDC位置に使用される。上で述べたように、異なるコンテキスト・セットを、変換係数レベルの2進化の個々のビンに、またはその代わりに、変換係数レベルの2進化のビンのサブセットに、または別の代替案として、変換係数レベルの2進化のすべてのコンテキストコーディングされるビンに適用することができる。
別のケースは、ローカル・テンプレート内のすべての係数が有意であり、その絶対レベルのすべてが特定のしきい値を超える時である。そのようなケースでは、コンテキスト・モデリングは、変換ブロックの終りまでローカル・テンプレート評価が使用不能にされるモードに切り替わる。やはり、異なるコンテキスト・モデル・セットの使用が、たとえば現在の対角線に依存して、可能である。対照的に、低周波数で発生するがシグナリングを必要とするコーディング・モードを除外することができる。そのようなコーディング・モードは、たとえば、以前のグループが多数の絶対レベルからなる時のグループのCBFのコーディングである。この例では、構成は、あるグループによって包含されるスキャニング位置が連続して処理される構成である。別の例は、第1の2進化境界160である。各グループの先頭の固定された境界値から開始するのではなく、以前のグループの絶対レベルが分析され、境界は、1と5との間で変化する。スループット態様を緩和するために、以前のグループが非常に高い残差エネルギからなる時に、境界に0をセットすることができる。その場合には、第1の2進化境界160が消える。ローカル・テンプレートの使用は、統計が極端ではない時すなわち、条件付き確率が最小エントロピに近くはない時に、効率的である。後者の場合に、テンプレート評価を使用不能にし、圧縮効率を維持しながらより低い複雑さにつなげることができる。これは、レベルの量が処理性能に関して重要な態様を演じる時の、より高い動作点に特に有用である。別のケースは、主な量のレベルが有意ではない時の変換ブロックの始めに与えられる。このケースでは、不確実性が高く、コンテキスト・モデリングに使用できる追加情報の量が少ないので、テンプレート評価を使用不能にすることができる。
色成分とも呼ばれ、それぞれが異なる色情報、たとえば輝度情報およびクロミナンス情報を担持する、異なるプレーンが存在する。すべてのプレーンが、ピクチャの同一面積を包含し、その結果、カラー・プレーン内の変換ブロックは、すべての他のカラー・プレーンに対応物を有する。これらの変換ブロックは、それぞれ同一の構文を使用して、連続してコーディングされる。その結果、同一の構文要素が、変換ブロックごとに存在する。したがって、色成分のある変換ブロックからの情報が、次の変換ブロックに関して使用可能である。これは、他の色成分の対応物を評価することによって、現在処理されているブロック内のコンテキスト・モデル/構文要素のセットを導出するのに活用される(図12と比較されたい)。1つのケースが、第2のクロマ成分のコーディングされたブロック・フラグ(CBF)のコーディングに関して与えられる。第1のクロマ成分の先行するCBFの値に依存して、2つ異なるコンテキストの一方が選択される。別の例は、絶対係数レベル・コーディングに関する切り捨てられた単項コードの第1のビンである。やはり、先行するカラー・プレーン内の同一位置の切り捨てられた単項コードの第1のビンの値が、異なるコンテキスト・セットを選択するために評価される。
コーディング構造に関する好ましい実施形態では、コーディングは、各変換係数レベルが変換ブロックのスキャニング位置ごとに完全に送信されるように編成される。別の好ましい実施形態では、レベルは、2つのパスでコーディングされ、その結果、部分160のすべての通常にコーディングされるビン165が、コーディングされ、これに部分162のバイパス・ビン165が続くようになっている。本発明の別の好ましい実施形態では、パスの個数が保たれるが、処理は、サブブロックごと処理ではなく変換ブロック全体に関する。
好ましい実施形態では、グループ化形状は、固定され、既存の4×4より小さい固定された形状サイズを有する。別の好ましい実施形態では、グループ化形状は、固定され、可変形状サイズを有する。形は、変換ブロック・サイズ、および/または色成分、および/または予測モード、および/または選択された変換、および/または最後の有意な位置に依存する。さらなる好ましい実施形態では、形状サイズは、順方向適合決定を使用して適合的に導出される。この実施形態では、形状サイズは、規則的な4×4形状から始まり、サイズは、一例として8×8になることができる。
好ましい実施形態では、スキャニング・パターンは、図13に例示的に示されているようにグループ化から分離され、その結果、グループのCBFは、グループの最初の周波数位置がコーディングされる時にコーディングされる。この構成では、スキャニング・パターンを、たとえば水平とすることができ、その結果、変換ブロックの各行が、完全に処理されるようになるが、形状は、それでも4×4または垂直である。
好ましい実施形態では、コーディング構造は、対応する変換ブロックのCBFフラグのコーディングの直後にレベルがコーディングされるように配置される。この並べ変えは、コンテキスト・モデリングに関して既にコーディングされた空間的に隣接する変換ブロックを評価する可能性を使用可能にする。さらなる好ましい実施形態では、クロマ・ブロックのコーディングが、インターリーブされる。この構成では、最後の位置が1回コーディングされ、コーディングは、2つのクロマ変換ブロックの間で切り替わる。さらなる実施形態では、最後の位置が、通常にコーディングされ、2つのクロマ・ブロックの間での切替は、スキャニング位置が整列される時にアクティブ化される。別の好ましい実施形態では、2つのクロマ・ブロックがインターリーブされ、その結果、4:2:0コンテンツのクロマと同一のサイズを有する変換ブロックが生成されるようになる。その後、接続されたクロマ・ブロックが、通常にコーディングされる。
好ましい実施形態では、最後の有意な位置は、クロマ変換ブロックに関して合同でコーディングされる。この構成では、最後の位置および最後ではない有意な位置が、コーディングが始まる最後の位置ではであるのではなく、したがって有意性情報が、その特定の位置に関してコーディングされなければならない。さらなる実施形態では、最後の位置は、2つのクロマ・ブロックに関して1回コーディングされるが、クロマ・ブロックの一方だけに関して指定される。他方のクロマ・ブロックに関して、有意性は、他方のクロマ・ブロックの最後の有意な位置でコーディングされなければならない。
好ましい実施形態では、CBFは、変換ブロックをコーディングしなければならないことを意味する。その結果は、変換ブロックが有意ではない可能性があることである。この特定の構成では、最後の有意な位置は、最後の位置のみと等しい。この構成を、ブロック・サイズ、予測モード、変換モード、その他などの特定の条件に結合することができる。たとえば、1次元パーティションを使用する時に、結果のストライプは、4×4ブロックに関して1×4のみである。そのような状況では、最初の1×4ストライプが有意である時に、CBFは、1と等しくなると推論され得る。
好ましい実施形態では、CBFは、グループの周波数位置をコーディングしなければならないことを意味する。この構成では、すべてのスキャニング位置がコーディングされ、グループ内の最後のスキャニング位置は、推論されない。
2進化に関する好ましい実施形態では、第1の2進化境界164は、ブロック・サイズ、色成分、予測モード、または選択された変換に依存する、変換ブロックごとの変数である。この構成では、第1の境界は、ビットストリーム内でのシグナリングを必要とする別の変換モードの時に5とすることができる。しかし、通常の変換に関して、第1の境界を、3に保つことができる。
好ましい実施形態では、第1の境界164は、境界が3を超える時に絶対に減少しない。この好ましい実施形態では、レベルが静的ではないと仮定され、したがって、通常より多数のビンを通常モードでコーディングすることに意味がある。別の好ましい実施形態では、第1の境界の減少は、ブロック(変換ブロックまたは変換ブロックのサブブロックを表す可能性がある)内のコーディングされたシンボルの個数に依存する。さらなる好ましい実施形態では、第1の境界は、テンプレート評価に依存して適合的である。たとえば、有意な位置の個数が0である時には、第1の境界は5である。しかし、所与の量、たとえば3つの有意なレベルがテンプレート内にある時には、境界は、2と等しくなるようにセットされ、5つの有意なレベルがテンプレート内にある時には、境界は、1と等しくなるようにセットされる。
好ましい実施形態では、Riceパラメータは、テンプレートを使用して導出される。この構成では、レベルの絶対和がとられ、Riceパラメータにマッピングされる。テーブル・サイズは、8、16、または32と等しい限界を有することができる。ルックアップ・テーブル内の値を、経験的に導出することができる。本発明の別の好ましい実施形態では、Riceパラメータは、テンプレートを使用する場合であっても、グループに関して絶対に減らされない。本発明のさらなる好ましい実施形態では、Riceパラメータは、テンプレートによって包含されるレベルのオプションのRiceパラメータに依存する。この構成では、既にコーディングされたレベルの第1の2進化境界を計算において考慮できることに留意されたい。
好ましい実施形態では、Riceコードによって包含される区間は、Riceパラメータに依存し、Riceパラメータが大きくなるにつれて大きくなる。さらなる好ましい実施形態では、Riceコードによって包含される区間は、ブロック・サイズ、および/または予測モード、および/または変換サイズ、および/または量子化パラメータに依存する。この段落の好ましい実施形態に関して、第2の2進化境界を、Riceコードによって包含される区間から推論できることに留意されたい。
好ましい実施形態では、Exp-Golombの次数は、固定され、0と等しい。さらなる好ましい実施形態では、Exp-Golomb次数は、当初に、Riceパラメータに1を加えたものである。別の好ましい実施形態では、Exp-Golomb次数は、当初に、Riceパラメータである。両方の好ましい実施形態では、Exp-Golombコードは、制限された区間だけを包含し、値が区間の端より大きい時には、Exp-Golombが、残りの値に関して、異なる次数を用いてもう一度適用される。好ましい実施形態では、Exp-Golomb次数は、1と等しいステップ・サイズで、0になるまで減少する。さらなる好ましい実施形態では、Exp-Golomb次数は、直接に0と等しい。
コンテキスト・モデリングに関して、好ましい実施形態では、テンプレート形状は、固定され、すべての隣接する空間隣接物を包含する。さらなる好ましい実施形態では、テンプレート形状は、固定され、別のカラー・チャネル内の空間的に隣接する隣接物をも包含する。この構成は、クロマ変換ブロックのコーディングのために設計されたものである。
好ましい実施形態では、テンプレート形状は、適合的であり、変換ブロックの始めに導出される。具体的には、形状は、変換ブロック・サイズ、および/または予測モード、および/または変換、および/または量子化パラメータに依存して、より大きいかより小さい。本発明のさらなる好ましい実施形態では、テンプレート形状は、変換ブロック内で調整される。この構成では、形状は、より大きくまたはより小さくなる。たとえば、形状サイズが、5と等しく、3つまたは4つの隣接する位置が有意であるが、絶対レベル和が、あるしきい値未満である時に、テンプレートは、より多くの隣接位置を組み込むように拡大される。その一方で、すべての周波数位置が、有意であり、絶対レベル和が、あるしきい値を超える時には、形状は、より小さくなり、たとえば3に等しくセットされる。
好ましい実施形態では、切り捨てられた単項部分の最初のビンに関してセットされるコンテキスト・モデルは、対角線に依存する。この構成では、ルマ変換ブロックは、3つの異なるコンテキスト・セットを使用することができるが、クロマ変換ブロックは、2つの異なるコンテキスト・セットだけを使用する。対角線は、切替点を定義し、ルマとクロマとの間で異なることができる。本発明のさらなる好ましい実施形態では、ビットストリーム内でシグナリングされなければならない変換が選択される時に、異なるコンテキスト・セットが使用される。
好ましい実施形態では、第2の位置から始まるビンすなわち、第1のビンを除く切り捨てられた単項コードのすべてのビンは、同一のコンテキスト・セットを使用する。本発明のさらなる好ましい実施形態では、ビンは、コンテキスト・モデル・セットの同一のセットを使用するが、コンテキスト・セットは、対角線に応じて異なるものとすることができる。別の好ましい実施形態では、ビンは、コンテキスト・モデル・セットの同一のセットを使用するが、コンテキスト・セットは、選択された変換に応じて異なるものとすることができる。別の好ましい実施形態では、第1の対角線は、専用のコンテキスト・モデル・セットを使用する。さらなる好ましい実施形態では、第4の位置から始まるビンすなわち、第1、第2、および第3のビンを除く切り捨てられた単項コードのすべてのビンが、選択された変換に応じて別のコンテキスト・セットを使用する。
好ましい実施形態では、第1のビンのコンテキスト・モデルは、使用されるコンテキスト・セットと同一のサイズを有する特定のしきい値に制限された、テンプレートの絶対和を使用して導出される。さらなる好ましい実施形態では、評価は、絶対レベル和からクリッピングの前の有意な位置の個数を減ずる。別の好ましい実施形態では、評価は、絶対レベル和からクリッピングの後の有意な位置の個数を減ずる。さらなる好ましい実施形態では、絶対レベルの分散が、コンテキスト・モード・セット内のコンテキスト・モデルの個数に正規化され 計算される。
好ましい実施形態では、切り捨てられた単項コードの終りまでの第2のビンのコンテキスト・モデル コンテキスト・モデルが、絶対レベル和から有意な位置の個数を減算することによって選択される。本発明のさらなる好ましい実施形態では、既存の手法が使用されるが、テンプレートを含めるために変更される。この構成では、専用コンテキスト・モデルへの切替は、より早期に、たとえば、絶対レベル和があるしきい値を超える時に発生することができる。
好ましい実施形態では、選択された変換が、まず復号される。この変換が、主変換ステージおよび副変換ステージからなり、主変換のサブセットだけが、副ステージによってさらに変換される場合に、2つの異なるテンプレートが、係数位置の両方のセットに関して使用される。
好ましい実施形態では、専用コンテキスト・モデルが、切り捨てられた単項コードのビンの最後の有意な位置に使用される。この構成では、コンテキスト・モデルは、最後の有意な位置に排他的に使用される。詳細を、図5に関して議論した。別の好ましい実施形態では、最後の有意な位置の切り捨てられた単項コードのビンのコンテキスト・モデリングは、別のカラー・プレーン内の同一の位置の変換ブロックを含む空間的に隣接する変換ブロックの既にコーディングされた最後の有意な位置に依存する。具体的には、切り捨てられた単項コードの現在のビンの選択されるコンテキスト・モデル・セットは、別のカラー・プレーン内の最後の有意な位置に依存する。現在のビンによって指示される現在位置がより大きい時には必ず、別のコンテキスト・セットが選択される。
好ましい実施形態では、ルマCBFのコンテキスト・モデリングは、既にコーディングされたクロマCBFに依存する。さらなる好ましい実施形態では、第2のクロマCBFのコンテキスト・モデリングは、第1の既にコーディングされたCBFに依存する。本発明の別の好ましい実施形態では、第1のクロマCBFのコンテキスト・モデルは、既にコーディングされたルマCBFに依存する。本発明のさらなる好ましい実施形態では、コーディング構造が変更される時に、CBFのコンテキスト・モデリングは、別のカラー・プレーン内の同一の位置の変換ブロックをも含む、空間的に隣接する変換ブロックからのエネルギ情報を使用する。具体的には、絶対和が、評価され、しきい値のリストと比較される。値がしきい値を超える時には必ず、コンテキスト・インデックスが1つ増分される。さらなる好ましい実施形態では、CBFのコンテキスト・モデリングは、同一のエネルギ情報を使用するが、しきい値のセットは、現在のおよび/または隣接するブロックの予測モード、たとえば、予測モードがLMChromaモードのうちの1つであるかどうかに依存する。別の好ましい実施形態では、CBFのコンテキスト・モデリングは、同一のエネルギ情報を使用するが、コンテキスト・セットは、予測モード 現在のおよび/または隣接するブロック たとえば、予測モードがLMChromaモードのうちの1つであるかどうかに依存して異なる可能性がある。
好ましい実施形態では、切り捨てられた単項コードの第1のビンのコンテキスト・モデリングは、別のカラー・プレーン内の同一の位置の変換ブロックをも含む、空間的に隣接する変換ブロック内の既にコーディングされたビンに依存する。具体的には、コンテキスト・モデルは、別のカラー・プレーン内の同一の位置の切り捨てられた単項コードの第1のビンの値に依存して選択される。
好ましい実施形態では、切り捨てられた単項コードのビンのコンテキスト・モデリングは、別のカラー・プレーン内の同一の位置の変換ブロックをも含む、空間的に隣接する変換ブロック内の既にコーディングされたビンに依存する。具体的には、コンテキスト・モデルは、別のカラー・プレーン内の同一の位置の切り捨てられた単項コードの対応するビン位置の値に依存して選択される。さらなる好ましい実施形態では、切り捨てられた単項コードのビンのコンテキスト・モデリングは、別のカラー・プレーン内の同一の位置の変換ブロックをも含む、空間的に隣接する変換ブロックからのエネルギ情報を使用する。具体的には、変換ブロックの別個の区域の絶対和が、評価され、しきい値のリストと比較される。値がしきい値より大きい時には必ず、別のコンテキスト・セットが選択される。
好ましい実施形態では、テンプレートは、十分な個数の絶対レベルがコーディングされた時に使用可能/使用不能にされる。さらなる好ましい実施形態では、テンプレートは、十分な個数の有意な位置がコーディングされた時に使用可能/使用不能にされる。
上でセットした実施形態を、下で言い換えて要約する。
一実施形態によれば、ピクチャをデータ・ストリーム内に符号化する符号器は、それぞれ第1の変換係数ブロックおよび第2の変換係数ブロックを入手するために第1の色成分および第2の色成分について別々にピクチャのブロックを変換の対象にし、第1の変換係数ブロックに依存するコンテキストを使用して第2の変換係数ブロックをコンテキスト適合的にエントロピ符号化するように構成され得る。
一実施態様によれば、符号器は、第2の変換係数ブロックがそれに副分割されるパーティションのセットのパーティションごとに、それぞれのパーティション内の変換係数がデータ・ストリーム内に符号化されるかどうかまたはそれぞれのパーティション内の変換係数の符号化がスキップされ、それぞれのパーティション内のすべての変換係数が0であるかどうかの指示150を符号化し、それぞれのパーティション内の変換係数がデータ・ストリーム内に符号化されることを指示が指示するパーティションの第2の変換係数ブロックの変換係数の量子化レベルをエントロピ符号化し、それぞれのパーティション内の変換係数の符号化がスキップされ、パーティション内のすべての変換係数が0であることを指示が指示するパーティション内の変換係数の符号化をスキップするように構成され得、指示の符号化は、第1の変換係数ブロックに依存するコンテキストを使用するコンテキスト適合エントロピ・コーディングを使用して実行される。
さらなる実施態様によれば、符号器は、第1の変換係数ブロックがそれに副分割されるさらなるパーティションのセットのさらなるパーティションごとに、それぞれのさらなるパーティション内の変換係数がデータ・ストリーム内に符号化されるのかどうか、または、それぞれのさらなるパーティション内の変換係数の符号化がスキップされ、それぞれのさらなるパーティション内のすべての変換係数が0であるのかどうかを指示するさらなる指示を符号化し、それぞれのさらなるパーティション内の変換係数がデータ・ストリーム内に符号化されることをさらなる指示が指示するパーティションの第1の変換係数ブロックの変換係数の量子化レベルをエントロピ符号化し、それぞれのさらなるパーティション内の変換係数の符号化がスキップされ、それぞれのさらなるパーティション内のすべての変換係数が0であることをさらなる指示が指示するさらなるパーティション内の変換係数の符号化をスキップするように構成され得、指示の符号化は、さらなるパーティションのさらなる指示および/または第1の変換係数ブロックの変換係数の量子化レベルに依存するコンテキストを使用するコンテキスト適合エントロピ・コーディングを使用して実行される。
さらなる実施態様によれば、符号器は、第2の変換係数ブロック内の変換係数がデータ・ストリーム内に符号化されるのかどうか、または、それぞれのパーティション内の変換係数の符号化がスキップされ、第2の変換係数ブロック内のすべての変換係数が0であるのかどうかの指示190を符号化し、第2の変換係数ブロックの変換係数がデータ・ストリーム内に符号化されることを指示が指示する場合に、第2の変換係数ブロックの変換係数の量子化レベルをエントロピ符号化し、第2の変換係数ブロック内の変換係数の符号化がスキップされ、パーティション内のすべての変換係数が0であることを指示が指示する場合に、第2の変換係数ブロックの変換係数の符号化をスキップするように構成され得る、指示190の符号化は、第1の変換係数ブロックに依存するコンテキストを使用するコンテキスト適合エントロピ・コーディングを使用して実行される。
さらなる実施形態によれば、符号器は、第1の変換係数ブロックの変換係数がデータ・ストリーム内に符号化されるのかどうか、または、第1の変換係数ブロックの変換係数の符号化がスキップされ、それぞれのさらなるパーティション内のすべての変換係数が0であるのかどうかのさらなる指示190を符号化し、第1の変換係数ブロックの変換係数がデータ・ストリーム内に符号化されることをさらなる指示が指示する場合に、第1の変換係数ブロックの変換係数の量子化レベルをエントロピ符号化し、それぞれのさらなるパーティション内の第1の変換係数ブロックの変換係数の符号化がスキップされ、第1の変換係数ブロックのすべての変換係数が0であることをさらなる指示が指示する場合に、第1の変換係数ブロックの変換係数の符号化をスキップするように構成され得、指示190の符号化は、さらなる指示および/または第1の変換係数ブロックの変換係数の量子化レベルに依存するコンテキストを使用するコンテキスト適合エントロピ・コーディングを使用して実行される。
さらなる実施形態によれば、符号器は、順方向に沿って第1の変換係数ブロックの変換係数を順次トラバースする第1のスキャン・パターンをトラバースする時に、第1の最後の非0変換係数が存在する第1の終端係数位置の第1の指示114をデータ・ストリーム内に符号化し、逆方向で第1の終端係数位置から第1のスキャン・パターンによってトラバースされるの変換係数の第1のコーディングされたセットを表す第1のデータであって、変換係数の第1のコーディングされたセット内の非0変換係数の量子化レベルを含む第1のデータをデータ・ストリーム内に符号化し、順方向に沿って第2の変換係数ブロックの変換係数を順次トラバースする第2のスキャン・パターンをトラバースする時に、第2の最後の非0変換係数が存在する第2の終端係数位置の第2の指示114をデータ・ストリーム内に符号化し、逆方向で第2の終端係数位置から第2のスキャン・パターンによってトラバースされるの変換係数の第2のコーディングされたセットを表す第2のデータであって、変換係数の第2のコーディングされたセット内の非0変換係数の量子化レベルを含む第2のデータをデータ・ストリーム内に符号化するように構成され得、第2の指示の符号化は、第1の終端係数位置に依存するコンテキストを使用するコンテキスト適合エントロピ・コーディングを使用して実行される。
別の実施形態によれば、データ・ストリームからピクチャを復号する復号器は、それぞれ第1の変換係数ブロックおよび第2の変換ブロックを入手するために、第1の色成分および第2の色成分に関して別々に、ピクチャのブロックを変換の対象にし、第1の変換係数ブロックに依存するコンテキストを使用して第2の変換係数ブロックをコンテキスト適合的にエントロピ復号するように構成され得る。
一実施態様によれば、復号器は、第2の変換係数ブロックがそれに副分割されるパーティションのセットのパーティションごとに、それぞれのパーティション内の変換係数がデータ・ストリーム内に符号化されるのかどうか、または、それぞれのパーティション内の変換係数の符号化がスキップされ、それぞれのパーティション内のすべての変換係数が0であるのかどうかの指示150を復号し、それぞれのパーティション内の変換係数がデータ・ストリーム内に符号化されることを指示が指示するパーティションの第2の変換係数ブロックの変換係数の量子化レベルをエントロピ復号し、それぞれのパーティション内の変換係数の符号化がスキップされ、パーティション内のすべての変換係数が0であることを指示が指示するパーティション内の変換係数の復号をスキップするように構成され得、指示の復号は、第1の変換係数ブロックに依存するコンテキストを使用するコンテキスト適合エントロピ・コーディングを使用して実行される。
さらなる実施態様によれば、復号器は、第1の変換係数ブロックがそれに副分割されるさらなるパーティションのセットのさらなるパーティションごとに、それぞれのさらなるパーティション内の変換係数がデータ・ストリーム内に符号化されるのかどうか、または、それぞれのさらなるパーティション内の変換係数の符号化がスキップされ、それぞれのさらなるパーティション内のすべての変換係数が0であるのかどうかのさらなる指示150を復号し、それぞれのさらなるパーティション内の変換係数がデータ・ストリーム内に符号化されることをさらなる指示が指示するパーティションの第1の変換係数ブロックの変換係数の量子化レベルをエントロピ復号し、それぞれのさらなるパーティション内の変換係数の符号化がスキップされ、さらなるパーティション内のすべての変換係数が0であることをさらなる指示が指示するさらなるパーティション内の変換係数の復号をスキップするように構成され得る、指示の復号は、さらなるパーティションのさらなる指示および/または第1の変換係数ブロックの変換係数の量子化レベルに依存するコンテキストを使用するコンテキスト適合エントロピ・コーディングを使用して実行される。
さらなる実施態様によれば、第2の変換係数ブロック内の変換係数がデータ・ストリーム内に符号化されるのかどうか、または、それぞれのパーティション内の変換係数の符号化がスキップされ、第2の変換係数ブロック内のすべての変換係数が0であるのかどうかの指示190を復号し、第2の変換係数ブロックの変換係数がデータ・ストリーム内に符号化されることを指示が指示する場合に、第2の変換係数ブロックの変換係数の量子化レベルをエントロピ復号し、第2の変換係数ブロックの変換係数の復号がスキップされ、パーティション内のすべての変換係数が0であることを指示が指示する場合に、第2の変換係数ブロックの変換係数の復号をスキップするように構成され得、指示190の復号は、第1の変換係数ブロックに依存するコンテキストを使用するコンテキスト適合エントロピ・コーディングを使用して実行される。
さらなる実施態様によれば、復号器は、第1の変換係数ブロックの変換係数がデータ・ストリーム内に符号化されるのかどうか、または第1の変換係数ブロックの変換係数の符号化がスキップされ、それぞれのさらなるパーティション内のすべての変換係数ブロックが0であるのかどうかのさらなる指示190を復号し、第1の変換係数ブロックの変換係数がデータ・ストリーム内に符号化されることをさらなる指示が指示する場合に、第1の変換係数ブロックの変換係数の量子化レベルをエントロピ復号し、それぞれのさらなるパーティション内の第1の変換係数ブロックの変換係数の符号化がスキップされ、第1の変換係数ブロックのすべての変換係数が0であることをさらなる指示が指示する場合に、第1の変換係数ブロックの変換係数の復号をスキップするように構成され得、指示190の復号は、さらなる指示および/または第1の変換係数ブロックの変換係数の量子化レベルに依存するコンテキストを使用するコンテキスト適合エントロピ・コーディングを使用して実行される。
さらなる実施態様によれば、復号器は、順方向に沿って第1の変換係数ブロックの変換係数を順次トラバースする第1のスキャン・パターンをトラバースする時に、第1の最後の非0変換係数が存在する第1の終端係数位置の第1の指示114をデータ・ストリームから復号し、逆方向で第1の終端係数位置から第1のスキャン・パターンによってトラバースされる第1の変換係数ブロックの変換係数の第1のコーディングされたセットを表すデータ・ストリームを表す第1のデータであって、変換係数の第1のコーディングされたセット内の非0変換係数の量子化レベルを含む、第1のデータをデータ・ストリームから復号し、順方向に沿って第2の変換係数ブロックの変換係数を順次トラバースする第2のスキャン・パターンをトラバースする時に第2の最後の非0変換係数が存在する第2の終端係数位置の第2の指示114をデータ・ストリームから復号し、逆方向で第2の終端係数位置から第2のスキャン・パターンによってトラバースされる変換係数の第2のコーディングされたセットを表す第2のデータであって、変換係数の第2のコーディングされたセット内の非0変換係数の量子化レベルを含む第2のデータをデータ・ストリームから復号するように構成され得、の第2の指示の復号は、第1の終端係数位置に依存するコンテキストを使用するコンテキスト適合エントロピ・コーディングを使用して実行される。
さらなる実施形態によれば、ピクチャ12をデータ・ストリーム(14に符号化する符号器は、変換係数ブロック92の変換係数を順次トラバースするスキャン・パターン94を使用してピクチャ12のブロック84を表す変換係数ブロック92を、所定の方向102で第1の終端係数位置98から第2の終端係数104へのスキャン・パターン94[またはスキャン経路]によってトラバースされる変換係数91のハッチングされて図示されたコーディングされたセット100を表すデータ96をデータ・ストリーム14内に符号化することであって、データ96は、変換係数のコーディングされたセット100内の[少なくとも]非0変換係数の量子化レベル106を含む、符号化することによって、データ・ストリーム14に符号化108するように構成され得、符号器は、変換係数のコーディングされたセット100内のすべての他の非0変換係数に使用されるコンテキスト112の第2のセット110と互いに素な、第1の終端係数位置98または第2の終端係数位置104での非0変換係数の量子化レベルのコンテキスト112の第1のセット110を使用してコンテキスト適合的に量子化レベル106をエントロピ符号化するように構成される。
一実施態様によれば、符号器は、順方向116に沿ってスキャン・パターン94をトラバースする時に、最後の非0変換係数が存在する終端係数位置の指示114をデータ・ストリーム14内に符号化するように構成され得、所定の方向102は、逆方向118であり、第1の終端係数位置は、指示114によって指示される終端係数位置であり、第2の終端係数位置104は、スキャン・パターン94に沿って逆方向118で最後にトラバースされる係数位置である。
さらなる実施態様によれば、符号器は、第1の終端係数位置98の非0変換係数のコンテキストの第1のセットを使用するように構成され得る。
さらなる実施態様によれば、符号器は、第2の終端係数位置の非0変換係数にコンテキスト・セットの第1のセットを使用するように構成され得る。
さらなる実施態様によれば、符号器は、第1の終端係数位置98の非0変換係数にコンテキストの第1のセットを使用し、第2の終端係数位置98の非0変換係数に第1のセットに互いに素なコンテキストの第3のセットを使用するように構成され得、第1のセットおよび第3のセットは、スキャン・パターンに沿って、第1の終端係数位置と第2の終端係数位置との間にある変換係数のコーディングされたセット内のすべての非0変換係数に使用されるコンテキストの第2のセットに互いに素である。
さらなる実施態様によれば、第1のセットは、第1の終端係数位置98の直後で第2の終端係数位置104の直前のスキャン・パターン94に沿ってトラバースされる逆方向118の係数位置の非0変換係数に使用されるコンテキストの第2のセットに互いに素とすることができる。
さらなる実施態様によれば、互いに素であることは、第1の終端係数位置98とは独立とすることができる。
さらなる実施態様によれば、符号器は、変換係数ブロック92の他の非0変換係数の量子化レベルをエントロピ符号化116し、変換係数ブロック92がそれに副分割されるパーティション120のパーティション・サブブロックごとに、第1のセットに互いに疎なコンテキストのセットを使用するように構成され得る。
さらなる実施態様によれば、変換係数ブロックがそれに副分割されるパーティション120は、第2の終端係数位置、たとえば、DC位置を通って走る変換係数ブロック92の対角線に斜めの方向に沿って対角線方向に延びることができる。
さらなる実施形態によれば、データ・ストリーム14からピクチャ12を復号する復号器は、変換係数ブロック92の変換係数を順次トラバースするスキャン・パターン94を使用してデータ・ストリーム14からピクチャ12のブロック84を表す変換係数ブロック92を、所定の方向102で第1の終端係数位置98から第2の終端係数104へスキャン・パターン94[またはスキャン経路]によってトラバースされる変換係数91のハッチングされて図示されたコーディングされたセット100を表すデータ96をデータ・ストリーム14から復号することであって、データ96は、変換係数のコーディングされたセット100内の[少なくとも]非0変換係数の量子化レベル106を含む、復号することによって復号するように構成され得、復号器は、変換係数のコーディングされたセット100内のすべての他の非0変換係数に使用されるコンテキスト112の第2のセット110に互いに素な、第1の終端係数位置98または第2の終端係数位置104の非0変換係数の量子化レベルのコンテキスト112の第1のセット110を使用して量子化レベル106をコンテキスト適合的にエントロピ復号するように構成される。
一実施態様によれば、復号器は、データ・ストリーム14から、順方向116に沿ってスキャン・パターン94をトラバースする時の最後の非0変換係数が存在する終端係数位置の指示114を復号するように構成され得、所定の方向102は、逆方向118であり、第1の終端係数位置は、指示114によって指示される終端係数位置であり、第2の終端係数位置104は、スキャン・パターン94に沿って逆方向118で最後にトラバースされる係数位置である。
さらなる実施態様によれば、復号器は、第1の終端係数位置98の非0変換係数にコンテキストの第1のセットを使用するように構成され得る。
さらなる実施態様によれば、復号器は、第2の終端係数位置の非0変換係数にコンテキストの第1のセットを使用するように構成され得る。
さらなる実施態様によれば、復号器は、第1の終端係数位置98の非0変換係数にコンテキストの第1のセットを使用し、第2の終端係数位置98の非0変換係数に第1のセットに互いに素なコンテキストの第3のセットを使用するように構成され得、第1のセットおよび第3のセットは、スキャン・パターンに沿って第1の終端係数位置と第2の終端係数位置との間にある変換係数のコーディングされたセット内のすべての非0変換係数に使用されるコンテキストの第2のセットに互いに素である。
さらなる実施態様によれば、復号器は 第1のセットは、第1の終端係数位置98の直後で第2の終端係数位置104の直前のスキャン・パターン94に沿ってトラバースされる逆方向118の係数位置の非0変換係数に使用されるコンテキストの第2のセットに互いに素とすることができる。
さらなる実施態様によれば、互いに素であることは、第1の終端係数位置98とは独立とすることができる。
さらなる実施態様によれば、復号器は、変換係数ブロック92の他の非0変換係数の量子化レベルをコンテキスト適合的にエントロピ符号化116し、変換係数ブロック92がそれに副分割されるパーティション120のパーティション(サブブロック)ごとに、前記第1のセットに互いに素なコンテキストのセットを使用するように構成され得る。
さらなる実施態様によれば、変換係数ブロックがそれに副分割されるパーティション120は、第2の終端係数位置(たとえば、DC位置)を通って走る変換係数ブロック92の対角線122に斜めの方向沿って対角線方向に延びることができる。
別の実施形態によれば、ピクチャをデータ・ストリーム内に符号化する符号器は、ピクチャ12のブロック84を表す変換係数ブロック92の現在符号化されている変換係数に位置決めされたローカル・テンプレート132によって決定される位置に配置された1つまたは複数の以前に符号化された変換係数の和およびその中の有意な変換係数の個数に基づいて決定されるコンテキストの使用によって、現在符号化されている変換係数の量子化レベルをコンテキスト適合的にエントロピ符号化するように構成され得る。
一実施態様によれば、符号器は、和に基づいて決定される第1の値と個数に基づいて決定される第2の値との間の差を形成することによってコンテキストを決定するように構成され得る。
さらなる実施態様によれば、符号器は、単項コードを用いる量子化レベルの絶対値の2進化のコンテキスト適合2進算術コーディングを使用して量子化レベルをエントロピ符号化するように構成され得、コンテキストは、単項コードのビンに使用される。
別の実施形態によれば、データ・ストリームからピクチャを復号する復号器は、ピクチャ12のブロック84を表す変換係数ブロック92の現在復号されている変換係数に位置決めされたローカル・テンプレート132によって決定される位置に配置された1つまたは複数の以前に復号された変換係数の和およびその中の有意な変換係数の個数に基づいて決定されるコンテキストの使用によって、現在復号されている変換係数の量子化レベルをコンテキスト適合的にエントロピ復号するように構成され得る。
一実施態様によれば、復号器は、和に基づいて決定される第1の値と個数に基づいて決定される第2の値との間の差を形成することによってコンテキストを決定するように構成され得る。
さらなる実施態様によれば、復号器は、単項コードを用いる量子化レベルの絶対値の2進化のコンテキスト適合2進算術コーディングを使用して量子化レベルをエントロピ復号するように構成され得、コンテキストは、多項コードのビンに使用される。
別の実施形態によれば、ピクチャをデータ・ストリーム内に符号化する符号器は、2進化パラメータを使用してパラメータ化される2進化161を使用して2進化される形でピクチャ12のブロック84を表す変換係数ブロックの現在符号化されている変換係数の量子化レベルの絶対値を符号化することと、現在符号化されている変換係数に位置決めされたローカル・テンプレート132によって決定される位置に配置された1つまたは複数の以前に符号化された変換係数の和およびその中の有意な変換係数の個数に基づいて2進化パラメータ[たとえば、カットオフ値、Exp Golomb次数またはRiceパラメータ]をセットすることとによって、変換係数ブロック92をデータ・ストリーム内に符号化するように構成され得る。
別の実施形態によれば、データ・ストリームからピクチャを復号する復号器は、2進化パラメータ163を使用してパラメータ化される2進化161を使用して2進化される形で、ピクチャ12のブロック84を表す変換係数ブロックの現在復号されている変換係数の量子化レベルの絶対値を復号することと、現在復号されている変換係数に位置決めされたローカル・テンプレート132によって決定される位置に配置された1つまたは複数の以前に復号された変換係数の和およびその中の有意な変換係数の個数に基づいて2進化パラメータ[たとえば、カットオフ値、Exp Golomb次数またはRiceパラメータ]をセットすることとによって、データ・ストリームから変換係数ブロック92を復号するように構成され得る。
別の実施形態によれば、ピクチャをデータ・ストリーム内に符号化する符号器は、カットオフ値164未満の単項コード160を使用し、カットオフ値を超える、カットオフ値に関する単項コード160によってプレフィックスされた非単項コード162を使用して2進化される形で、ピクチャ12のブロック84を表す変換係数ブロックの変換係数の量子化レベル106の絶対値を符号化することと、初期カットオフ・セッティングなしで、以前に符号化された変換係数に依存して(請求項41から60と比較されたい)変換係数ブロックの変換係数のカットオフ値を適合的に変更することとによって、変換係数ブロックの変換係数を順次トラバースするスキャン・パターン94を使用して変換係数ブロック92をデータ・ストリーム内に符号化するように構成され得る。
別の実施形態によれば、データ・ストリームからピクチャを復号する復号器は、カットオフ値164未満の単項コード160を使用し、カットオフ値を超える、カットオフ値に関する単項コード160によってプレフィックスされた非単項コード162を使用して2進化される形でピクチャ12のブロック84を表す変換係数ブロックの変換係数の量子化レベル106の絶対値を復号することと、以前に復号された変換係数に依存して(初期カットオフ・セッティングなしで、請求項41から60と比較されたい)変換係数ブロックの変換係数のカットオフ値を適合的に変更することとによって、変換係数ブロックの変換係数を順次トラバースするスキャン・パターン94を使用して変換係数ブロック92をデータ・ストリームから復号するように適合され得る。
別の実施形態によれば、ピクチャをデータ・ストリーム内に符号化する符号器は、カットオフ値未満の[すなわちカットオフ値未満の絶対値に関する]単項コード160を使用し、カットオフ値を超える、カットオフ値に単項コード160を使用して2進化される形で、変換係数ブロックの変換係数の量子化レベル106の絶対値を符号化することと、ブロック(84)のサイズと、ブロック(84)の色成分と、ブロック(84)がその予測残差を表す予測信号の基礎になる予測モードと、変換係数ブロック(84)の基礎になる変換と、変換係数ブロック(92)を量子化するのに使用される量子化パラメータと、以前に符号化された変換係数のエネルギの測定と、現在符号化されている変換係数に位置決めされたローカル・テンプレート132によって決定される位置に配置され、または、現在符号化されている変換係数がそこに配置される現在のパーティションに対してオフセットされ、所定の方向102でスキャン・パターンに沿って変換係数ブロックの変換係数をトラバースすることによって定義される変換係数ブロックの変換係数の量子化レベル106の絶対値の符号化に使用されるコーディング順序に従って現在のパーティションに先行する、変換係数ブロック92のパーティション内の位置に配置される、以前に符号化された変換係数の評価とのうちの1つまたは複数に依存してカットオフ値(164)を[たとえば、当初に]セットすることとによって変換係数ブロック92をデータ・ストリーム内に符号化するように構成され得る。
一実施形態によれば、符号器は、カットオフ値が当初に所定のしきい値に続く値にセットされる[より微細な量子化を意味する]場合に、以前に符号化された変換係数に依存して変換係数ブロックの変換係数のカットオフ値を適合的に変更し、カットオフ値が所定のしきい値を超える値に当初にセットされる[より粗な量子化を意味する]場合に、少なくとも予備的に[たとえば、次数方向102で最後のパリションに達するまでカットオフ値164を一定に保つように構成され得る。
さらなる実施形態によれば、符号器は、現在符号化されている変換係数に位置決めされたローカル・テンプレート132によって決定される位置に配置された1つまたは複数の以前に符号化された変換係数の和およびそのうちの有意な変換係数の個数に基づいて、現在符合化されている変換係数のカットオフ値を適合的に変更するように構成され得る。
さらなる実施態様によれば、符号器は、変換係数ブロックがそれに副分割されるパーティションのパーティションごとに、それぞれのパーティションに関連するコンテキストのセットを使用して単項コードの1つまたは複数のビンをコンテキスト適合的にエントロピ符号化するように構成され得、符号器は、所定のパーティションの前にコーディング順序によってトラバースされるパーティション内に配置された以前に符号化された変換係数の評価に依存する形で所定のパーティションのセッティングを実行するように構成される。
さらなる実施態様によれば、符号器は、以前に符号化された変換係数のエネルギの測定が、あるしきい値を増加させる場合に、単項コードが存在しなくなるように、カットオフ値に0をセットすることを含む形でカットオフ値を適合的に変更するように構成され得る。
別の実施形態によれば、データ・ストリームからピクチャを復号する復号器は、、カットオフ値未満の[すなわち、カットオフ値未満の絶対値に関する]単項コード160を使用し、カットオフ値を超える、カットオフ値に関する単項コード160によってプレフィックスされた非単項コード162を使用して2進化される形で、ピクチャ12のブロック84を表す変換係数ブロックの変換係数の量子化レベル106の絶対値を復号することと、ブロック(84)のサイズと、ブロック(84)の色成分と、ブロック(84)の予測残差が表す予測信号の基礎になる予測モードと、変換係数ブロック(92)の基礎になる変換と、変換係数ブロック(92)を量子化するのに使用される量子化パラメータと、以前に復号された変換係数のエネルギの測定と、現在復号されている変換係数に位置決めされたローカル・テンプレート132によって決定される位置に配置され、または、現在復号されている変換係数がそこに配置される現在のパーティションに対してオフセットされ、所定の方向102でスキャン・パターンに沿って変換係数ブロックの変換係数をトラバースすることによって定義される変換係数ブロックの変換係数の量子化レベル106の絶対値の復号に使用されるコーディング順序に従って現在のパーティションに先行する、変換係数ブロック92のパーティション内の位置に配置される、以前に復号された変換係数の評価とのうちの1つまたは複数に依存してカットオフ値164を[当初に]セットすることとによってデータ・ストリームから変換係数ブロック92を復号するように構成され得る。
一実施態様によれば、復号器は、カットオフ値が、所定のしきい値に続く値に当初にセットされる[より微細な量子化を意味する]場合に、以前に復号された変換係数に依存して、変換係数ブロックの変換係数のカットオフ値を適合的に変更し、カットオフ値が、所定のしきい値を超える値に当初にセットされる[より粗な量子化を意味する]場合に、少なくとも予備的に[たとえば、他の方向102で最後のパリションに達するまでカットオフ値164を一定に保つように構成され得る。
さらなる実施態様によれば、復号器は、現在復号されている変換係数に位置決めされたローカル・テンプレート132によって決定される位置に配置された1つまたは複数の以前に符号化された変換係数の和およびそのうちの有意な変換係数の個数に基づいて現在符号化されている変換係数のカットオフ値を適合的に変更するように構成され得る。
さらなる実施態様によれば、復号器は、変換係数ブロックがそれに副分割されるパーティションのパーティションごとに、それぞれのパーティションに関連するコンテキストのセットを使用して、単項コードの1つまたは複数のビンをコンテキスト適合的にエントロピ復号するように構成され得、復号器は、所定のパーティションの前にコーディング順序によってトラバースされるパーティション内に配置された以前に復号された変換係数の評価に依存する形で所定のパーティションのセッティングを実行するように構成される。
さらなる実施態様によれば、復号器は、以前に復号された変換係数のエネルギの測定があるしきい値を増加させる場合に単項コードが存在しなくなるように、カットオフ値を0にセットすることを含む形でカットオフ値を適合的に変更するように構成され得る。
別の実施形態によれば、ピクチャをデータ・ストリーム内に符号化する符号器は、以前に符号化された変換係数に依存して、および/またはピクチャ(12)のブロック(84)のサイズと、順方向(116)に沿ってスキャン・パターンをトラバースする時に最後の非0変換係数が存在する終端係数位置の位置と、ブロック(84)を表す変換係数ブロック(92)の基礎になる変換とのうちの1つまたは複数に依存してローカル・テンプレート(132)の形状をセットし、またはローカル・テンプレート(132)を使用不能にする[テンプレート固有コンテキスト依存性が使用不能にされるようにするために]ことと、現在符号化されている変換係数に位置決めされたローカル・テンプレート(132)によって決定される位置に配置された1つまたは複数の以前に符号化された変換係数に基づいて決定され、またはローカル・テンプレートが使用不能にされる場合に以前に符号化された変換係数とは独立であるコンテキストの使用とによって、変換係数ブロック(92)の現在符号化されている変換係数の量子化レベルをコンテキスト適合的にエントロピ符号化するように構成され得る。
一実施態様によれば、符号器は、以前に符号化された変換係数に依存するローカル・テンプレートの形状をセットする際に、現在符号化されている変換係数に位置決めされた第1のローカル・プリミティブ・テンプレート170によって決定される位置に配置された1つまたは複数の以前に符号化された変換係数に依存してローカル・テンプレートの形状をセットするように構成され得る。
さらなる実施態様によれば、符号器は、以前に符号化された変換係数に依存してローカル・テンプレートの形状をセットする際に、現在符号化されている変換係数に位置決めされた第1のローカル・プリミティブ・テンプレート170によって決定される位置に配置された1つまたは複数の以前に符号化された変換係数に依存して、ローカル・テンプレート132の形状が、第1のローカル・プリミティブ・テンプレート170、または第2のプリミティブ・テンプレート172であって、第2のプリミティブ・テンプレートは、現在符号化されている変換係数から第1の第2のプリミティブ・テンプレートより遠くに延び、第1のローカル・プリミティブ・テンプレートによって決定される位置を含みまたは含まない、第2のプリミティブ・テンプレート172のどちらであるべきかを判断するように構成され得る。
さらなる実施態様によれば、符号器は、現在符号化されている変換係数に位置決めされた第1のローカル・プリミティブ・テンプレート170によって決定される位置に配置された1つまたは複数の以前に符号化された変換係数の和または変換係数の中の有意な変換係数の個数に依存して判断を実行するように構成され得る。
さらなる実施態様によれば、符号器は、変換係数ブロック内の以前に符号化された変換係数に基づいて導出される累算値またはあるしきい値を超える変換係数ブロック内の以前に符号化された変換係数のカウントが、所定の量を超える場合に、ローカル・テンプレートを使用不能にし、かつ/または有意ではない、変換係数ブロック内の以前に符号化された変換係数のカウントが、所定の量を超える場合に、ローカル・テンプレートを使用不能にするように構成され得る。
さらなる実施態様によれば、符号器は、現在符号化されている変換係数に位置決めされたローカル・テンプレートによって決定される位置に配置された1つまたは複数の以前に符号化された変換係数の和または変換係数の中の有意な変換係数の個数に基づいてコンテキストを決定するように構成され得る。
別の実施形態によれば、データ・ストリームからピクチャを復号する復号器は、以前に復号された変換係数および/またはピクチャ12のブロック84のサイズと、順方向116に沿ってスキャン・パターンをトラバースする時に最後の非0変換係数が存在する終端係数位置の位置と、ブロック84を表す変換係数ブロック92の基礎になる変換とのうちの1つまたは複数に依存してローカル・テンプレート132の形状をセットし、またはローカル・テンプレート132を使用不能にする[テンプレート固有コンテキスト依存性が使用不能にされるようにするために]ことと、現在復号されている変換係数に位置決めされたローカル・テンプレート130によって決定される位置に配置された1つまたは複数の以前に復号された変換係数に基づいて決定され、またはローカル・テンプレートが使用不能にされる場合に、以前に復号された変換係数とは独立であるコンテキストの使用とによって、変換係数ブロック82の現在復号されている変換係数の量子化レベルをコンテキスト適合的にエントロピ復号するように構成され得る。
一実施態様によれば、復号器は、以前に復号された変換係数に依存するローカル・テンプレートの形状をセットする際に、現在復号されている変換係数130に位置決めされた第1のローカル・プリミティブ・テンプレート170によって決定される位置に配置された1つまたは複数の以前に復号された変換係数に依存してローカル・テンプレートの形状をセットするように構成され得る。
さらなる実施態様によれば、復号器は、以前に復号された変換係数に依存してローカル・テンプレートの形状をセットする際に、ローカル・テンプレート132の形状が、第1のローカル・プリミティブ・テンプレート170または第2のプリミティブ・テンプレート172であって、第2のプリミティブ・テンプレートは、第1の第2のプリミティブ・テンプレートより現在復号されている変換係数から遠くに延び、第1のローカル・プリミティブ・テンプレートによって決定される位置を含みまたは含まない、第2のプリミティブ・テンプレートのどちらであるべきかを、現在復号されている変換係数に位置決めされた第1のローカル・プリミティブ・テンプレート170によって決定される位置に配置された1つまたは複数の以前に復号された変換係数に依存して判断するように構成され得る。
さらなる実施態様によれば、復号器は、現在復号されている変換係数に位置決めされた第1のローカル・プリミティブ・テンプレート170によって決定される位置に配置された1つまたは複数の以前に復号された変換係数の和または変換係数の中の有意な変換係数の個数に依存して判断を実行するように構成され得る。
さらなる実施態様によれば、復号器は、変換係数ブロック内の以前に復号された変換係数に基づいて導出される累算値またはあるしきい値を超える変換係数ブロック内の以前に復号された変換係数のカウントが所定の量を超える場合に、ローカル・テンプレートを使用不能にし、かつ/または、有意ではない、変換係数ブロック内の以前に復号された変換係数のカウントが、所定の量を超える場合に、ローカル・テンプレートを使用不能にするように構成され得る。
さらなる実施態様によれば、復号器は、現在復号されている変換係数に位置決めされたローカル・テンプレートによって決定される位置に配置された1つまたは複数の以前に復号された変換係数の和または変換係数の中の有意な変換係数の個数に基づいてコンテキストを決定するように構成され得る。
別の実施形態によれば、ピクチャをデータ・ストリーム内に符号化する符号器は、ピクチャ12のブロック84を表す変換係数ブロックがそれに副分割されるパーティションのパーティションごとに、それぞれのパーティションに関連するコンテキストのセットを使用して、変換係数ブロックの変換係数の量子化レベル106をコンテキスト適合的にエントロピ符号化することによって、変換係数ブロック92の変換係数92を符号化するように構成され得、変換係数ブロックがそれに副分割されるパーティションは、形状において変化し[すなわち、お互いに一致しない]、かつ/または、エントロピ符号化 変換係数ブロックの変換係数の量子化レベルがそれに沿って実行される[かつ、たとえばデータ・ストリーム内でシグナリングされ、または固有に決定され得る]スキャニング・パターンに依存して形状を定められ、かつ/または、ブロック84のサイズに依存して形状を定められ、かつ/または、明示的なパーティション形状決定情報に依存して形状を定められる。
一実施態様によれば、符号器は、パーティションを異なるパーティションの変換係数とインターリーブせずに順次トラバースする形で変換係数ブロックの変換係数を順次トラバースするスキャン・パターンに従うことによって、順次変換係数ブロックの変換係数の量子化レベルをコンテキスト適合的にエントロピ符号化するように構成され得る。
さらなる実施態様によれば、変換係数ブロックがそれに副分割されるパーティションは、変換係数ブロックのDC変換係数を通る垂線方向に斜めの方向に沿って対角線方向に延びることができる。
別の実施形態によれば、データ・ストリームからピクチャを復号する復号器は、ピクチャ12のブロック84を表す変換係数ブロックがそれに副分割されるパーティションのパーティションごとに、それぞれのパーティションに関連するコンテキストのセットを使用して変換係数ブロックの変換係数の量子化レベル106をコンテキスト適合的にエントロピ復号することによって、変換係数ブロック92の変換係数92を復号するように構成され得、変換係数ブロックがそれに副分割されるパーティションは、形状において変化し[すなわち、お互いに一致しない]、かつ/または、エントロピ復号 変換係数ブロックの変換係数の量子化レベルがそれに沿って実行される[かつ、たとえばデータ・ストリーム内でシグナリングされ、または固有に決定され得る]スキャニング・パターンに依存して形状を定められ、かつ/または、ブロック84のサイズに依存して形状を定められ、かつ/または、明示的なパーティション形状決定情報に依存して形状を定められる。
一実施態様によれば、復号器は、パーティションを異なるパーティションの変換係数をインターリーブせずに順次トラバースする形で変換係数ブロックの変換係数を順次トラバースするスキャン・パターンに従うことによって、変換係数ブロックの変換係数の量子化レベルを順次コンテキスト適合的にエントロピ復号するように構成され得る。
さらなる実施態様によれば、変換係数ブロックがそれに副分割されるパーティションは、変換係数ブロックのDC変換係数を通る垂直方向に斜めの方向に沿って対角線方向に延びることができる。
別の実施形態によれば、ピクチャをデータ・ストリーム内に符号化する符号器は、ピクチャ12のブロック84を表す変換係数ブロックがそれに副分割されるパーティションのセットのパーティションごとに、それぞれのパーティション内のすべての変換係数がデータ・ストリーム内に符号化されるのか、またはそれぞれのパーティション内のすべての変換係数の符号化がスキップされ、それぞれのパーティション内のすべての変換係数が0になるのかどうかの指示150を符号化することと、それぞれのパーティション内のすべての変換係数がデータ・ストリーム内に符号化されることを指示が指示するパーティションごとに、それぞれのパーティションに関連するコンテキストのセットを使用して、それぞれのパーティションのすべての変換係数の量子化レベルをコンテキスト適合的にエントロピ符号化することとによって、変換係数ブロック92の変換係数を符号化するように構成され得る。
一実施態様によれば、符号器は、それぞれのパーティション内の以前に符号化された変換係数のいずれもがすべて0であるか否かにかかわりなく、それぞれのパーティションの変換係数のなかで最後に符号化されたそれぞれのパーティションの最後の変換係数について、最後の変換係数が0であるか否かを指示するフラグをエントロピ符号化することによって、それぞれのパーティション内のすべての変換係数がデータ・ストリーム内に符号化されることを指示が指示するパーティションごとに、それのパーティションのすべての変換係数の量子化レベルをエントロピ符号化するように構成され得る。
さらなる実施態様によれば、データ・ストリームからピクチャを復号する復号器は、ピクチャ12のブロック84を表す変換係数ブロックがそれに副分割されるパーティションのセットのパーティションごとに、それぞれのパーティション内のすべての変換係数がデータ・ストリーム内に復号されるのかどうか、またはそれぞれのパーティション内のすべての変換係数の復号がスキップされ、それぞれのパーティション内のすべての変換係数が0であるのかどうかの指示150を復号することと、それぞれのパーティション内のすべての変換係数がデータ・ストリーム内に復号されることを指示が指示するパーティションごとに、それぞれのパーティションに関連するコンテキストのセットを使用して、それぞれのパーティションのすべての変換係数の量子化レベルをコンテキスト適合的にエントロピ復号することとによって、変換係数ブロック92の変換係数を復号するように構成され得る。
さらなる実施態様によれば、復号器は、それぞれのパーティションの変換係数の間で最後に復号されるそれぞれのパーティションの最後の変換に関して、それぞれのパーティション内の以前に復号された変換係数のいずれもがすべて0であるか否かに関わりなく、最後の変換係数が0であるか否かを指示するフラグを、エントロピ符号化することによって、それぞれのパーティション内のすべての変換係数がデータ・ストリーム内に復号されることを指示が指示するパーティションごとに、それぞれのパーティションのすべての変換係数の量子化レベルをエントロピ復号するように構成され得る。
別の実施形態によれば、ピクチャをデータ・ストリーム内に符号化する符号器は、ピクチャ12のブロック84を表す変換係数ブロック92の区分モードをデータ・ストリーム内に符号化し、パーティション・モードが第1のモード[たとえば、オンに切り替えられたパリション120へのパリション]である場合に、変換係数ブロックがそれに副分割されるパーティションのパーティションごとに、それぞれのパーティションに関連するコンテキストのセットを使用して、変換係数ブロックの変換係数の量子化レベルをコンテキスト適合的にエントロピ符号化することと、パーティション・モードが第2のモード[たとえば、オフに切り替えられたパリション120へのパリション]である場合に、コンテキストの大域セットを使用して、変換係数ブロックの変換係数の量子化レベルをコンテキスト適合的にエントロピ符号化することと(→請求項21から40と同様、ただし、モードに依存し、互いに素であることは単にオプションである)によって、変換係数ブロックを符号化するように構成され得る。
一実施態様によれば、パーティション・モードが第1のモードである場合に、パーティションのセットのパーティションごとに、それぞれのパーティション内の変換係数の量子化レベルがデータ・ストリーム内に符号化されるのかどうか、または、それぞれのパーティション内の変換係数の量子化レベルの符号化がスキップされ、それぞれのパーティション内のすべての変換係数が0であるのかどうかの指示を符号化し、変換係数の量子化レベルのエントロピ符号化において、パーティション内の変換係数の量子化レベルの符号化がスキップされ、パーティション内のすべての変換係数が0であることを指示が指示するパーティションに関してエントロピ符号化をスキップするように構成される、請求項161に記載の符号器。
一実施形態によれば、データ・ストリームからピクチャを復号する復号器は、データ・ストリームからピクチャ12のブロック84を表す変換係数ブロック92の区分モードを復号し、パーティション・モードが第1のモード[たとえば、オンに切り替えられたパリション120へのパリション]である場合に、変換係数ブロックがそれに副分割されるパーティションのパーティションごとに、それぞれのパーティションに関連するコンテキストのセットを使用して、変換係数ブロックの変換係数の量子化レベルをコンテキスト適合的にエントロピ復号することと、パーティション・モードが第2のモード[たとえば、オフに切り替えられたパリション120へのパリション]である場合に、コンテキストの大域セットを使用して、変換係数ブロックの変換係数の量子化レベルをコンテキスト適合的にエントロピ復号することと(→請求項21から40と同様、ただし、モードに依存し、ブロック92全体のソーンなど、互いに素であることは単にオプションであるによって、変換係数ブロックを復号するように構成され得る。
一実施態様によれば、復号器は、パーティション・モードが第1のモードである場合に、パーティションのセットのパーティションごとに、それぞれのパーティション内の変換係数の量子化レベルがデータ・ストリーム内に復号されるのかどうか、または、それぞれのパーティション内の変換係数の量子化レベルの復号がスキップされ、それぞれのパーティション内のすべての変換係数が0であるのかどうかの指示を復号し、変換係数の量子化レベルのエントロピ復号において、パーティション内の変換係数の量子化レベルの復号がスキップされ、パーティション内のすべての変換係数が0であることを指示が指示するパーティションに関してエントロピ復号をスキップするように構成され得る。
別の態様によれば、ピクチャをデータ・ストリーム内に符号化する符号器は、ピクチャ12のブロック84を表す変換係数ブロックがそれに副分割されるパーティション120a、b、cのパーティションごとに、それぞれのパーティション120に関連126するコンテキストのセット110a、b、cを使用して、変換係数ブロックの変換係数の量子化レベル106をコンテキスト適合的にエントロピ符号化することによって、変換係数ブロックの変換係数91を順次トラバースするスキャン・パターン94’を使用して変換係数ブロック92をデータ・ストリーム14に符号化するように構成さ得、スキャン・パターン94’は、第1のパーティション、たとえば120aまたは120cの少なくとも1つの変換係数(ハッチングされた変換係数91’)などが第2のパーティション、たとえば120bの2つの変換係数の間にトラバースされるようになる形で、変換係数ブロック92の変換係数91を順次トラバースする。
一実施態様によれば、符号器は、コンテキストの1つのセットが、第1のパーティションおよび第2のパーティション、たとえば120aまたは120cに共通して関連付けられるようにするために構成され得る。
さらなる実施態様によれば、符号器は、変換係数ブロック92の変換係数の量子化レベルをコンテキスト適合的にエントロピ符号化する際に、現在符号化されている変換係数に位置決めされたローカル・テンプレート132によって決定される位置に配置された1つまたは複数の以前に符号化された変換係数に基づいて、現在符号化されている変換係数130に関して、現在符号化されている変換係数がその中に配置されるパーティション、たとえば120aに関連するコンテキスト112のセット110からコンテキストを決定するように構成され得る。
さらなる実施態様によれば、符号器は、変換係数ブロックの変換係数の量子化レベルをコンテキスト適合的にエントロピ符号化する際に、現在符号化されている変換係数に関して、現在符号化されている変換係数に位置決めされたローカル・テンプレート132によって決定される位置が、現在符号化されている変換係数がその中に配置されるパーティション内にあるかどうかに関わりなく、位置に配置された1つまたは複数の以前に符号化された変換係数、および/または現在符号化されている変換係数(130)がその中に配置されるパーティション、たとえば120a内に配置された、1つまたは複数のあるしきい値を超える以前に符号化された変換係数、たとえばハッチングされた変換係数140のカウント(例の図では例示的に4)に基づいて、現在符号化されている変換係数がその中に配置されるパーティションに関連するコンテキストのセットからコンテキストを決定するように構成され得る。
さらなる実施態様によれば、符号器は、変換係数ブロック92がそれに副分割されるパーティションのセットのパーティション120a、b、cごとに、それぞれのパーティション内の変換係数がデータ・ストリーム内に符号化されるのかどうか、または、それぞれのパーティション内の変換係数の符号化がスキップされ、それぞれのパーティション内のすべての変換係数が0であるのかどうかの指示150を符号化し、変換係数の量子化レベルのエントロピ符号化において、パーティション内の変換係数の符号化がスキップされ、パーティション内のすべての変換係数が0であることを指示が指示するパーティションに関してエントロピ符号化をスキップするように構成され得る。
さらなる実施態様によれば、符号器は、指示150を、データ・ストリーム内で、それぞれのパーティション内の変換係数がデータ・ストリーム内に符号化されることを指示が指示するパーティション、たとえば1201および1203内の変換係数の量子化レベルの間に、指示が関係するパーティション内で最初に出会う変換係数の代わりに[例ではCBF2などの0であるCBFの場合]、または最初に出会う変換係数の前に[例ではCBF3などの1であるCBFの場合]符号化するように構成され得る。
別の実施形態によれば、データ・ストリームからピクチャを復号する復号器は、ピクチャ12のブロック84を表す変換係数ブロックがそれに副分割されるパーティションのパーティションごとに、それぞれのパーティション120に関連126するコンテキストのセット110a、b、cを使用して、変換係数ブロックの変換係数の量子化レベル106をコンテキスト適合的にエントロピ復号することによって、変換係数ブロックの変換係数を順次トラバースするスキャン・パターン94’を使用して、変換係数ブロック92をデータ・ストリーム14から復号するように構成され得、スキャン・パターン94’は、第1のパーティションの少なくとも1つの変換係数(ハッチングされた変換係数91’など)が第2のパーティションの2つの変換係数の間にトラバースされるようになる形で、変換係数ブロック92の変換係数91を順次トラバースする。
一実施態様によれば、復号器は、コンテキストの1つのセットが、第1のパーティションおよび第2のパーティション、たとえば120aまたは120cに共通して関連付けられるようにするために構成され得る。
さらなる実施態様によれば、復号器は、変換係数ブロック92の変換係数の量子化レベルをコンテキスト適合的にエントロピ復号する際に、現在復号されている変換係数に位置決めされたローカル・テンプレート132によって決定される位置に配置された1つまたは複数の以前に符号化された変換係数に基づいて、現在符号化されている変換係数130に関して、現在復号されている変換係数がその中に配置されるパーティション、たとえば120aに関連するコンテキスト112のセット110からコンテキストを決定するように構成され得る。
さらなる実施態様によれば、符号器は、変換係数ブロックの変換係数の量子化レベルをコンテキスト適合的にエントロピ復号する際に、現在復号されている変換係数に関して、現在復号されている変換係数に位置決めされたローカル・テンプレート132によって決定される位置が、現在復号されている変換係数がその中に配置されるパーティション内にあるかどうかに関わりなく、位置に配置された1つまたは複数の以前に復号された変換係数、および/または現在復号されている変換係数130がその中に配置されるパーティション、たとえば、120a内に配置された、1つまたは複数のあるしきい値を超える以前に復号された変換係数(たとえば、ハッチングされた変換係数140)のカウント(例の図では例示的に4に基づいて、現在復号されている変換係数がその中に配置されるパーティションに関連するコンテキストのセットからコンテキストを決定するように構成され得る。
さらなる実施態様によれば、復号器は、変換係数ブロック92がそれに副分割されるパーティションのセットのパーティション120a、b、cごとに、それぞれのパーティション内の変換係数がデータ・ストリーム内に復号されるのかどうか、または、それぞれのパーティション内の変換係数の復号がスキップされ、それぞれのパーティション内のすべての変換係数が0であるのかどうかの指示150を復号し、変換係数の量子化レベルのエントロピ復号において、パーティション内の変換係数の復号がスキップされ、パーティション内のすべての変換係数が0であることを指示が指示するパーティションに関してエントロピ復号をスキップするように構成され得る。
さらなる実施態様によれば、符号器は、指示150を、データ・ストリームから、それぞれのパーティション内の変換係数がデータ・ストリーム内に復号されることを指示が指示するパーティション、たとえば1201および1203内の変換係数の量子化レベルの間に、指示が関係するパーティション内で最初に出会う変換係数の代わりに[例ではCBF2などの0であるCBFの場合]、または最初に出会う変換係数の前に[例ではCBF3などの1であるCBFの場合]復号するように構成され得る。
いくつかの態様が、装置の文脈で説明されたが、これらの態様が、ブロックまたはデバイスが方法ステップまたは方法ステップの特徴に対応する、対応する方法の説明をも表すことは明白である。同様に、方法ステップの文脈で説明された態様は、対応する装置の対応するブロック、項目、または特徴の記述をも表す。方法ステップの一部またはすべては、たとえばマイクロプロセッサ、プログラマブル・コンピュータ、または電子回路などのハードウェア装置によって(またはこれを使用して)実行され得る。いくつかの実施形態で、最も重要な方法ステップのうちの1つまたは複数を、そのような装置によって実行することができる。
発明的な符号化されたデータ・ストリームを、デジタル記憶媒体上に記憶することができ、あるいは、無線伝送媒体またはインターネットなどの有線伝送媒体などの伝送媒体上で伝送することができる。
ある種の実施要件に応じて、本発明の実施形態を、ハードウェアまたはソフトウェアで実施することができる。実施態様を、デジタル記憶媒体、たとえば、それぞれの方法を実行できるプログラム可能コンピュータ・システムと協力する(または協力することのできる)電子的に可読の制御信号をその上に記憶された、フロッピ・ディスク、DVD、Blu-Ray、CD、ROM、PROM、EPROM、EEPROM、またはフラッシュ・メモリを使用して実行することができる。したがって、デジタル記憶媒体は、コンピュータ可読とすることができる。
本発明による一部の実施形態は、電子的に可読の制御信号を有するデータ担体を含み、これらは、本明細書で説明される方法のうちの1つを実行できるなど、プログラマブル・コンピュータ・システムと協力することができる。
一般に、本発明の実施形態を、プログラム・コードのコンピュータ・プログラム製品として実施することができ、プログラム・コードは、コンピュータ・プログラム製品がコンピュータ上で走行する時に方法のうちの1つを実行するように動作可能である。プログラム・コードは、たとえば、機械可読担体上に記憶され得る。
他の実施形態は、機械可読担体上に記憶された、本明細書で説明される方法のうちの1つを実行するコンピュータ・プログラムを含む。
したがって、言い換えると、本方法の実施形態は、コンピュータ・プログラムがコンピュータ上で実行される時に本明細書で説明される方法のうちの1つを実行するプログラム・コードを有するコンピュータ・プログラムである。
したがって、発明的方法のさらなる実施形態は、本明細書で説明される方法のうちの1つを実行するコンピュータ・プログラムをその上に記録されたデータ担体(またはデジタル記憶媒体もしくはコンピュータ可読媒体)である。データ担体、データ記憶媒体、または記録された媒体は、通常、有形であり、かつ/または非一時的である。
したがって、本発明のさらなる実施形態は、本明細書で説明される方法のうちの1つを実行するコンピュータ・プログラムを表すデータ・ストリームまたは信号のシーケンスである。データ・ストリームまたは信号のシーケンスは、たとえば、たとえばインターネットを介するデータ通信接続を介して転送されるように構成され得る。
さらなる実施形態は、本明細書で説明される方法のうちの1つを実行するように構成されまたは適合された、たとえばコンピュータまたはプログラマブル論理デバイスを含む。
さらなる実施形態は、本明細書で説明される方法のうちの1つを実行するコンピュータ・プログラムをその上にインストールされたコンピュータを含む。
本発明によるさらなる実施形態は、本明細書で説明される方法のうちの1つを実行するプログラムを受信器に転送する(たとえば、電子的にまたは光学的に)ように構成された装置またはシステムを含む。受信器は、たとえば、コンピュータ、モバイル・デバイス、メモリ・デバイス、または類似物とすることができる。装置またはシステムは、たとえば、受信器にコンピュータ・プログラムを転送するファイル・サーバを含むことができる。
いくつかの実施形態で、プログラム論理デバイス(たとえば、フィールド・プログラマブル・ゲート・アレイが、本明細書で説明される方法の機能性の一部またはすべての実行するのに使用され得る。いくつかの実施形態で、フィールド・プログラマブル・ゲート・アレイは、本明細書で説明される方法のうちの1つを実行するためにマイクロプロセッサを組み込むことができる。一般に、方法は、任意のハードウェア装置によって好ましく実行される。
本明細書で説明される装置を、ハードウェア装置を使用して、コンピュータを使用して、またはハードウェア装置とコンピュータとの組合せを使用して実施することができる。
本明細書で説明される装置または本明細書で説明される装置の任意の構成要素を、少なくとも部分的にハードウェアおよび/またはソフトウェアで実施することができる。
本明細書で説明される方法を、ハードウェア装置を使用して、コンピュータを使用して、またはハードウェア装置とコンピュータとの組合せを使用して、実行することができる。
本明細書で説明される方法または本明細書で説明される装置の任意の構成要素を、少なくとも部分的にハードウェアおよび/またはソフトウェアによって実行することができる。
上で説明した実施形態は、単に本発明の例示である。本明細書で説明される配置および詳細の修正および変更が、当業者に明白であることを理解されたい。したがって、切迫した特許請求の範囲によってのみ制限され、本明細書の説明および例示によって提示される特定の詳細によっては制限されないことが意図されている。