(57)【特許請求の範囲】
【請求項１】
映像データを符号化する方法であって、前記方法は、
二次元配列の変換係数を含む変換単位を、コンピュータデバイスによって受信することと；
単一レベル走査順に沿って前記二次元配列の前記変換係数を、前記コンピュータデバイスによって処理することと
を含み、
前記処理は、前記単一レベル走査順に沿ったそれぞれの非ゼロ変換係数に対して、前記非ゼロ変換係数の絶対レベルを符号化する１つあるいは複数のコンテキストモデルを選択することを含み、
前記選択は、前記単一レベル走査順に沿ってすでに符号化された１つあるいは複数の変換係数に基づき、
前記１つあるいは複数のコンテキストモデルの選択は、前記非ゼロ変換係数に関連する第１シンタクス要素の第１コンテキストモデルを選択することを含み、
前記第１シンタクス要素は、前記非ゼロ変換係数の前記絶対レベルが１よりも大きいか否かを示し、
前記第１コンテキストモデルの選択は、１に等しい絶対レベルを有する、前記単一レベル走査順に沿ってすでに符号化された変換係数の第１閾値数に基づく、
映像データを符号化する方法。
【請求項２】
前記第１閾値数は、１０に等しい、
請求項１記載の方法。
【請求項３】
前記１つあるいは複数のコンテキストモデルの選択はさらに、前記非ゼロ変換係数に関連する第２シンタクス要素の第２コンテキストモデルを選択することを含み、
前記第２シンタクス要素は、前記非ゼロ変換係数の前記絶対レベルが２よりも大きいか否かを示す、
請求項１記載の方法。
【請求項４】
前記第２コンテキストモデルの選択は、１よりも大きな絶対レベルを有する、前記単一レベル走査順に沿ってすでに符号化された変換係数の第２閾値数に基づく、
請求項３記載の方法。
【請求項５】
前記第２閾値数は、１０に等しい、
請求項４記載の方法。
【請求項６】
前記１つあるいは複数のコンテキストモデルの選択はさらに、前記変換単位のサイズに基づき、
前記方法はさらに、前記非ゼロ変換係数の正または負を示すサインを符号化することを含む、
請求項１〜５何れか一項記載の方法。
【請求項７】
前記１つあるいは複数のコンテキストモデルの選択はさらに、前記非ゼロ変換係数に関連する第３シンタクス要素を選択することを含み、
前記第３シンタクス要素は、「前記非ゼロ変換係数の前記絶対レベル」−「所定値」に等しい値である、
請求項３記載の方法。
【請求項８】
前記第２コンテキストモデルの選択は、前記第１コンテキストモデルの選択に用いるコンテキスト選択方式とは異なるコンテキスト選択方式を用いる、
請求項３記載の方法。
【請求項９】
前記第２コンテキストモデルの選択は、前記第１コンテキストモデルの選択に用いるコンテキスト選択方式と同じコンテキスト選択方式を用いる、
請求項３記載の方法。
【請求項１０】
前記単一レベル走査順は、逆方向ジグザグ走査、順方向ジグザグ走査、順方向波面走査、または逆方向波面走査に相当し、
前記方法はさらに、
前記第１コンテキストモデルと前記第２コンテキストモデルとの選択に用いるコンテキスト選択方式と同じコンテキスト選択方式を用いて、前記単一レベル走査順において前記変換単位の有意マップを符号化することを含む、
請求項９記載の方法。
【請求項１１】
映像データを復号化する方法であって、前記方法は、
単一レベル走査順に沿ってすでに符号化された二次元配列の変換係数に対応する圧縮データのビットストリームを、コンピュータデバイスによって受信することと、
圧縮データの前記ビットストリームを、前記コンピュータデバイスによって復号化することと
を含み、
前記復号化は、前記単一レベル走査順に沿ったそれぞれの非ゼロ変換係数に対して、前記非ゼロ変換係数の絶対レベルを復号化する１つあるいは複数のコンテキストモデルを選択することを含み、
前記選択は、前記単一レベル走査順に沿ってすでに復号化された１つあるいは複数の変換係数に基づき、
前記１つあるいは複数のコンテキストモデルの選択は、前記非ゼロ変換係数に関連する第１シンタクス要素の第１コンテキストモデルを選択することを含み、
前記第１シンタクス要素は、前記変換係数の前記絶対レベルが１よりも大きいか否かを示し、
前記１つあるいは複数のコンテキストモデルの選択はさらに、前記非ゼロ変換係数に関連する第２シンタクス要素の第２コンテキストモデルを選択することを含み、
前記第２シンタクス要素は、前記非ゼロ変換係数の前記絶対レベルが２よりも大きいか否かを示し、
前記第２コンテキストモデルの選択は、１よりも大きな絶対レベルを有する、前記単一レベル走査順に沿ってすでに復号化された変換係数の第２閾値数に基づく、
映像データを復号化する方法。
【請求項１２】
前記第２コンテキストモデルの選択は、前記第１コンテキストモデルの選択に用いるコンテキスト選択方式と同じコンテキスト選択方式を用い、
前記方法はさらに、
前記第１コンテキストモデルと前記第２コンテキストモデルとの選択に用いるコンテキスト選択方式と同じコンテキスト選択方式を用いて、前記単一レベル走査順において前記二次元配列の変換係数を含む変換単位の有意マップを符号化することと、
前記非ゼロ変換係数の正または負を示すサインを符号化することと
を含む、請求項１１記載の方法。
【請求項１３】
前記第１コンテキストモデルの選択と、前記第２コンテキストモデルの選択とは、前記二次元配列の変換係数を含む変換単位のサイズに基づく、
請求項１１または１２記載の方法。
【請求項１４】
前記非ゼロ変換係数の前記絶対レベルを復号化することは、コンテキストモデルを選択せずに第３シンタクス要素を復号化することを含む、
請求項１１〜１３何れか一項記載の方法。
【請求項１５】
映像データを復号化する方法であって、前記方法は、
単一レベル走査順に沿ってすでに符号化された複数の変換係数の二次元配列に対応する圧縮データのビットストリームを、コンピュータデバイスが受信することと；
前記圧縮データのビットストリームを前記コンピュータデバイスが復号化することであって、前記復号化は前記単一レベル走査順に沿う非ゼロ変換係数のそれぞれについて前記非ゼロ変換係数の絶対レベルの復号化に関する１つあるいは複数のコンテキストモデルを選択することを含み、前記選択は前記単一レベル走査順に沿ってすでに復号化された１つあるいは複数の変換係数に基づき、前記１つあるいは複数のコンテキストモデルの選択は前記非ゼロ変換係数に関連する第１シンタクス要素の第１コンテキストモデルを選択することを含み、前記第１シンタクス要素は前記非ゼロ変換係数の前記絶対レベルが１よりも大きいか否かを示し、前記第１コンテキストモデルの選択は、１に等しい絶対レベルを有する、前記単一レベル走査順に沿ってすでに復号化された変換係数の第１閾値数に基づく、
映像データを復号化する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテキスト適応バイナリ算術符号化などのコンテキスト適応エントロピ符号化方式の範囲内での、変換係数レベルの符号化に用いることができるコンテキストモデリング技法に関する。
【背景技術】
【０００２】
映像圧縮（すなわち符号化）システムは一般に、ほとんどの圧縮操作にブロック処理を用いる。ブロックは、近傍画素群であり、圧縮を目的とする「符号化単位」とみなされる。理論的には、すぐ近傍の画素間の相互関係をうまく利用するためには、より大きな符号化単位サイズが、望ましい。モーション・ピクチャ・エキスパート・グループ（ＭＰＥＧ）−１，ＭＰＥＧ−２，およびＭＰＥＧ−４などの特定の映像符号化標準は、４×４，８×８，または１６×１６画素（マクロブロックとして公知）の符号化単位サイズを用いる。
【０００３】
高性能映像符号化技術（ＨＥＶＣ）は、ブロック処理も採用する別の映像符号化標準である。図１において示されるように、高性能映像符号化技術は、最大符号化単位（ＬＣＵ）と言われる四角ブロックに入力画像１００を分割する。それぞれの最大符号化単位は、１２８×１２８画素の大きさとすることができ、さらに符号化単位（ＣＵ）と言われる、より小さな四角ブロックに分割することができる。たとえば最大符号化単位は、４個の符号化単位に分割することができ、それぞれは最大符号化単位サイズの４分の１である。符号化単位はさらに、より小さな４個の符号化単位に分割することができ、それぞれは最初の符号化単位サイズの４分の１である。この分割化プロセスは、特定の基準が満たされるまで繰り返され得る。図２は、７個の符号化単位（２０２−１，２０２−２，２０２−３，２０２−４，２０２−５，２０２−６，および２０２−７）に分割される最大符号化単位２００を例示する。図示されるように、符号化単位２０２−１，２０２−２，および２０２−３は、それぞれ最大符号化単位２００サイズの４分の１である。さらに最大符号化単位２００の右上の４半分は、４個の符号化単位２０２−４，２０２−５，２０２−６，および２０２−７に分割される。これらは、それぞれ４半分サイズの４分の１である。
【０００４】
それぞれの符号化単位は、１つあるいは複数の予測単位（ＰＵ）を含む。図３は、予測単位３０２−１，３０２−２，３０２−３，および３０２−４を含む符号化単位分割３００例を例示する。予測単位は、符号化単位分割３００の空間または時間予測符号化に用いられる。たとえば符号化単位分割３００が、「イントラ」モードで符号化される場合、それぞれの予測単位３０２−１，３０２−２，３０２−３，および３０２−４は、空間予測に対して独自の予測方向を有する。符号化単位分割３００が、「インタ」モードで符号化される場合、それぞれの予測単位３０２−１，３０２−２，３０２−３，および３０２−４は、時間予測に対して独自の動きベクトルと関連参照画像とを有する。
【０００５】
さらに予測単位のうちのそれぞれの符号化単位分割は、変換単位（ＴＵ）集合に関連する。他の映像符号化標準のように、高性能映像符号化技術は、ブロックの範囲内の画素を無相関化するとともにブロックエネルギを下位変換係数に圧縮すべく残留データにブロック変換を適用する。しかし、マクロブロックに単一４×４または８×８変換を適用する他の標準とは異なり、高性能映像符号化技術は、互いに異なるサイズのブロック変換集合を単一符号化単位に適用することができる。符号化単位に適用されるべきブロック変換集合は、その関連変換単位によって表わされる。例として、図４は、図３の符号化単位分割３００（予測単位３０２−１，３０２−２，３０２−３，および３０２−４を含む）を変換単位４０２−１，４０２−２，４０２−３，４０２−４，４０２−５，４０２−６，および４０２−７の関連集合とともに例示する。これらの変換単位は、別個の７個のブロック変換が、符号化単位分割３００に適用されるべきことを示す。それぞれのブロック変換の範囲は、それぞれの変換単位の位置とサイズによって規定される。特定符号化単位に関連する変換単位の構成は、様々な基準に基づき互いに異なり得る。
【０００６】
ブロック変換操作が、特定変換単位に対して適用されると、得られる変換係数は、係数データのサイズを減らすように量子化される。次に量子化変換係数は、エントロピ符号化され、それによって最終圧縮ビット集合が生じる。高性能映像符号化技術は現在、コンテキスト適応バイナリ算術符号化（ＣＡＢＡＣ）として公知のエントロピ符号化方式を提供している。コンテキスト適応バイナリ算術符号化は、コンテキストモデル（すなわち確率モデル）を適応的に選択する能力があるため、すでに符号化されたシンボル統計情報に基づき入力符号を算術的に符号化する効率的な圧縮を提供することができる。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】『Ｈ．２６４／ＡＶＣビデオ圧縮標準におけるコンテキストに基づく適応バイナリ算術符号化』マーペら。ビデオ技術のための回路とシステムのＩＥＥＥトランザクション、ＩＥＥＥサービスセンター、ピスカタウェイ、ニュージャージー州、米国。ｖｏｌ１３、ｎｏ．７。２００３年７月１日。第６２０−６３６頁。ＸＰ０１１０９９２５５。ＩＳＳＮ：１０５１−８２１５。ＤＯＩ：１０．１１０９／ＴＣＳＶＴ．２００３．８１５１７３。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかし、ＣＡＢＡＣ（コンテキストのモデリングと言われる）のコンテキストモデル選択プロセスは、複雑であり、他の圧縮方式よりも符号化／復号化に有意に多くの処理能力を必要とする。
【課題を解決するための手段】
【０００９】
一実施形態において、二次元配列の変換係数を含む変換単位を受信することと、単一レベル走査順序に沿って二次元配列の変換係数を処理することとを含む映像データの符号化方法が、提供される。処理は、単一レベル走査順序に沿ったそれぞれの非ゼロ変換係数に対して、非ゼロ変換係数の絶対レベルを符号化する１つあるいは複数のコンテキストモデルを選択することを含む。選択は、単一レベル走査順序に沿ってすでに符号化された１つあるいは複数の変換係数に基づく。
【００１０】
別の実施形態において、単一レベル走査順序に沿ってすでに符号化された二次元配列の変換係数に対応する圧縮データのビットストリームを受信することと、圧縮データのビットストリームを復号化することとを含む映像データの復号化方法が、提供される。復号化は、単一レベル走査順序に沿ったそれぞれの非ゼロ変換係数に対して、非ゼロ変換係数の絶対レベルを復号化する１つあるいは複数のコンテキストモデルを選択することを含む。選択は、単一レベル走査順序に沿ってすでに複号化された１つあるいは複数の変換係数に基づく。
【００１１】
別の実施形態において、複数の変換係数を含む変換単位を受信することと；変換単位の有意マップと、複数の変換係数の絶対レベルとを、単一走査タイプと単一コンテキストモデル選択方式とを用いることで符号化することとを含む映像データの符号化方法が、提供される。
【００１２】
別の実施形態において、すでに符号化された複数の変換係数を含む変換単位に対応する圧縮データのビットストリームを、受信することを含む映像データの復号化方法が、提供される。方法はさらに、変換単位の有意マップと、複数の変換係数の絶対レベルとを、単一走査タイプおよび単一コンテキストモデル選択方式を用いることで復号化することを含む。
【００１３】
以下の詳細な説明と添付図面は、特定実施形態の特性と利点のさらなる理解を提供する。
【図面の簡単な説明】
【００１４】
【図１】最大符号化単位（ＬＣＵ）に分割された入力画像。
【図２】符号化単位（ＣＵ）に分割された最大符号化単位。
【図３】予測単位（ＰＵ）に分割された符号化単位。
【図４】予測単位に分割された符号化単位と、符号化単位に関連する変換単位（ＴＵ）との集合。
【図５】映像コンテンツを符号化する符号器。
【図６】映像コンテンツを復号化する複号器。
【図７】コンテキスト適応バイナリ算術符号化／復号化プロセス。
【図８】変換単位における最後の有意係数位置。
【図９】前方走査を用いるコンテキストモデル選択の近傍例。
【図１０】４×４サブブロック当りの順方向ジグザグ走査と、それぞれのサブブロック範囲内の逆方向ジグザグ走査とを含む２段階レベル走査シーケンス。
【図１１】２段階レベル走査シーケンスを用いる変換係数レベルのコンテキスト適応バイナリ算術符号化／復号化プロセス。
【図１２】一実施形態にしたがう単一レベル走査を用いる変換係数レベルのコンテキスト適応バイナリ算術符号化／復号化プロセス。
【図１３】単一レベル逆方向ジグザグ走査。
【図１４】単一レベル逆方向波面走査。
【図１５】一実施形態にしたがって統一走査タイプとコンテキストモデル選択方式とを用いる、有意マップ値と変換係数レベルのコンテキスト適応バイナリ算術符号化／復号化プロセス。
【図１６】逆方向走査を用いるコンテキストモデル選択の近傍例。
【発明を実施するための形態】
【００１５】
本明細書において記載されるのは、ＣＡＢＡＣなどのコンテキスト適応エントロピ符号化方式の範囲内の、変換係数レベル符号化に用いることができるコンテキストのモデリング技法である。以下の説明で、特定実施形態の完全な理解を提供するため、数多くの実施例と具体的詳細が、説明を目的として示される。特許請求の範囲によって定義されるような特定実施形態は、これらの実施形態単独あるいは以下で記載される他の特徴と組み合わせた特徴の一部または全てを含み得るとともに、さらに本明細書において記載される特徴および構想の変更および均等物を含み得る。
【００１６】
［符号器と複合器の実施形態］
図５は、映像コンテンツを符号化する符号器５００例を示す。一実施形態において、符号器５００は、高性能映像符号化技術標準を実施することができる。符号器５００の一般的操作は、以下に記載されている。当然のことながら、この説明は、例示目的のみに提供されるもので本明細書における開示と教示を制限することを意図しない。当業者は、符号器５００の構造と操作の様々な修正、変更、および代替を認め得る。
【００１７】
図示されるように、符号器５００は、入力として現行予測単位「ｘ」を受信する。予測単位  ｘは、順に符号化されている入力画像（たとえば映像フレーム）の分割区分である符号化単位（あるいはそれらの一部）に対応する。予測単位  ｘが与えられると、予測単位「ｘ’」は、空間予測または時間予測のいずれかによって得られる（空間予測ブロック５０２または時間予測ブロック５０４を介して）。予測単位  ｘ’は、次に残留予測単位「ｅ」を生成すべく予測単位  ｘから差し引かれる。
【００１８】
生成されると、残留予測単位  ｅは、変換ブロック５０６に渡される。変換ブロックは、予測単位  ｅの１つあるいは複数の変換操作を実行するように構成される。そのような変換操作例には、離散サイン変換（ＤＳＴ）、離散コサイン変換（ＤＣＴ）、およびそれらの異形（たとえばＤＣＴ−Ｉ，ＤＣＴ−ＩＩ，ＤＣＴ−ＩＩＩ、など）が含まれる。次に変換ブロック５０６は、変換予測単位  Ｅが、２次元配列の変換係数を含むように変換ドメインの残留予測単位  ｅ（「Ｅ」）を出力する。このブロックにおいて、変換操作は、予測単位  ｅに対応する符号化単位に関連したそれぞれの変換単位に対して実行することができる（図４に関して上記されるように）。
【００１９】
変換予測単位  Ｅは、量子化器５０８に渡される。量子化器は、予測単位  Ｅの比較的高精度の変換係数を有限数の可能値に変換または量子化するように構成される。量子化後、変換予測単位  Ｅは、エントロピ符号化ブロック５１０を介してエントロピ符号化される。このエントロピ符号化プロセスは、最終圧縮ビットに量子化変換係数を圧縮する。最終圧縮ビットは、続いて適当な受信器／復号器に伝送される。エントロピ符号化ブロック５１０は、ＣＡＢＡＣ（コンテキスト適応バイナリ算術符号化）などの様々な互いに異なるタイプのエントロピ符号化方式を使用することができる。コンテキスト適応バイナリ算術符号化を実施するエントロピ符号化ブロック５１０の特定実施形態は、以下でさらに詳細に記載される。
【００２０】
前述の段階に加えて、符号器５００は、逆量子化器５１２が予測単位  Ｅの量子化変換係数を逆量子化予測単位「Ｅ’」に逆量子化する復号化プロセスを含む。予測単位  Ｅ’は、逆変換ブロック５１４に渡される。逆変換ブロック５１４は、予測単位  Ｅ’の逆量子化変換係数を逆変換し、それによって再構成された残留予測単位「ｅ’」を生成するように構成される。再構成残留予測単位  ｅ’は次に、最初の予測単位  ｘ’に付加されることで、新しい再構成予測単位「ｘ”」を形成する。ループフィルタ５１６は、ブロック境界を円滑にするとともに再構成画素と最初の画素間の符号化の歪みを最小限にすべく、再構成予測単位  ｘ”の様々な操作を実行する。次に、再構成予測単位  ｘ”は、映像コンテンツの将来フレームを符号化する予測単位として用いられる。たとえば再構成予測単位  ｘ”が、参照フレームの一部であるなら、再構成予測単位  ｘ”は、将来の時間予測のためリファレンスバッファ５１８に保存することができる。
【００２１】
図６は、図５の符号器５００に対して相補的な複号器６００例を示す。一実施形態において、複号器６００は、符号器５００のように高性能映像符号化技術標準を実施することができる。複号器６００の一般的操作は、以下に記載されるが、当然のことながら、この説明は、例示のためだけに提供されるもので、本明細書における開示と教示を制限することを意図しない。当業者は、複号器６００の構造と操作の様々な修正、変更、および代替を認め得る。
【００２２】
図示されるように、複号器６００は、符号器５００によって出力されたビットストリームなどの圧縮データのビットストリームを入力として受信する。入力ビットストリームは、エントロピ復号化ブロック６０２に渡される。エントロピ復号化ブロック６０２は、残留予測単位の量子化変換係数を生成すべくビットストリームのエントロピ復号化を実行するように構成される。一実施形態において、エントロピ復号化ブロック６０２は、符号器５００のエントロピ符号化ブロック５１０によって実行される操作の逆を実行するように構成される。エントロピ復号化ブロック６０２は、コンテキスト適応バイナリ算術符号化などの様々な互いに異なるタイプのエントロピ符号化方式を用いることができる。コンテキスト適応バイナリ算術符号化を実施するエントロピ復号化ブロック６０２の特定実施形態は、以下でさらに詳細に記載される。
【００２３】
生成されると、量子化変換係数は、残留予測単位「Ｅ’」を生成すべく逆量子化器６０４によって逆量子化される。予測単位  Ｅ’は、逆変換ブロック６０６に渡される。逆変換ブロックは、予測単位  Ｅ’の逆量子化変換係数を逆変換し、それによって再構成残留予測単位「ｅ’」を出力するように構成される。再構成残留予測単位  ｅ’は次に、すでに復号化された予測単位  ｘ’に付加されることで、新しい再構成予測単位「ｘ”」を形成する。ループフィルタ６０８は、ブロック境界を円滑にするとともに、再構成画素と最初の画素間の符号化歪みを最小限にすべく、再構成予測単位  ｘ”の様々な操作を実行する。再構成予測単位  ｘ”は次に、再構成映像フレームの出力に用いられる。特定実施形態において、再構成予測単位  ｘ”が、参照フレームの一部なら、再構成予測単位  ｘ”は、将来の予測単位の再構成のためリファレンスバッファ６１０に保存することができる（たとえば空間予測ブロック６１２または時間予測ブロック６１４を介して）。
【００２４】
［コンテキスト適応バイナリ算術符号化／復号化］
図５と図６に関して述べたように、エントロピ符号化ブロック５１０とエントロピ復号化ブロック６０２は、それぞれがコンテキスト適応バイナリ算術符号化を実施することができる。コンテキスト適応バイナリ算術符号化は、入力記号を整数でない長さ（たとえば分数の）コード名にマップする算術符号化方式である。算術符号化の効率は、かなりの程度まで入力記号の正確な確率の測定に依存する。したがって、符号化効率を改善すべく、コンテキスト適応バイナリ算術符号化は、コンテキスト適応技法を用いる。コンテキスト適応技法において互いに異なるコンテキストモデル（すなわち確率モデル）が選択され、互いに異なるシンタクス要素に適用される。さらにこれらのコンテキストモデルは、符号化／復号化中に更新することができる。
【００２５】
一般的に言えば、コンテキスト適応バイナリ算術符号化を用いてシンタクス要素を符号化するプロセスは、３つの基本段階：（１）２値化、（２）コンテキストのモデリング、および（３）バイナリ算術符号化を含む。２値化段階において、シンタクス要素は、２進シーケンスまたはビンストリングに変換される（まだ２値に評価されていない場合）。コンテキストのモデリング段階において、コンテキストモデルは、ビンストリングのうちの１つあるいは複数のビン（すなわちビット）に対して選択される（コンテキスト適応バイナリ算術符号化標準を通じて利用可能なモデルのリストから）。コンテキストモデル選択プロセスは、符号化されている特定シンタクス要素、および最近符号化された要素の統計情報に基づき互いに異なり得る。算術符号化段階において、それぞれのビンは、選択されたコンテキストモデルに基づき符号化される（算術符号器を介して）。コンテキスト適応バイナリ算術符号化を用いてシンタクス要素を復号化するプロセスは、これらの段階の逆に相当する。
【００２６】
図７は、残留予測単位（たとえば図５の量子化予測単位  Ｅ）の量子化変換係数を符号化／復号化すべく実行される典型的なコンテキスト適応バイナリ算術符号化／復号化プロセス７００を示す。プロセス７００は、たとえば図５のエントロピ符号化ブロック５１０または図６のエントロピ復号化ブロック６０２によって実施することができる。特定実施形態において、プロセス７００は、残留予測単位に関連するそれぞれの変換単位に適用される。
【００２７】
ブロック７０２においてエントロピ符号化ブロック５１０／エントロピ復号化ブロック６０２は、現行変換単位の最後の有意（すなわち非ゼロ）変換係数の（ｙ，ｘ）座標に対応する最後の有意係数位置を符号化または復号化する（所定の走査パターンに対して）。例として、図８は、ＮｘＮ変換係数の変換単位８００を例示する。係数８０２は、たとえばジグザグ走査では変換単位８００における最後の有意係数位置に対応する。符号化プロセスに関して、ブロック７０２は、「ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｙ」シンタクス要素を２値化すること（ｙ座標に対応する）と、「ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｘ」シンタクス要素を２値化すること（ｘ座標に対応する）とを含む。ブロック７０２はさらに、ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｙとｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｘシンタクス要素に対するコンテキストモデルを選択することを含む。コンテキストモデルは、所定のコンテキスト・インデックス（ｌａｓｔＣｔｘ）とコンテキスト・インデックス・インクリメント（ｌａｓｔＩｎｄＩｎｃ）に基づき選択される。一実施形態において、コンテキスト・インデックス・インクリメントは、以下のように決定される。
【００２８】
１．  現行変換単位サイズが４×４画素の場合、ｌａｓｔＩｎｄＩｎｃ＝ｌａｓｔＣｔｘ    。
２．  現行変換単位サイズが８×８画素の場合、ｌａｓｔＩｎｄＩｎｃ＝ｌａｓｔＣｔｘ＋３    。
【００２９】
３．  現行変換単位サイズが１６×１６画素の場合、ｌａｓｔＩｎｄＩｎｃ＝ｌａｓｔＣｔｘ＋８    。
４．  現行変換単位サイズが３２×３２画素の場合、ｌａｓｔＩｎｄＩｎｃ＝ｌａｓｔＣｔｘ＋１５    。
【００３０】
コンテキストモデルが選択されると、ｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｙおよびｌａｓｔ＿ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｘシンタクス要素は、選択されたモデルを用いることで算術的に符号化／復号化される。
【００３１】
ブロック７０４においてエントロピ符号化ブロック５１０／エントロピ復号化ブロック６０２は、現行変換単位に関連するバイナリ有意マップを符号化または復号化する。それぞれの有意マップの要素（シンタクス要素ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇによって表わされる）は、変換単位における対応位置での変換係数が非ゼロか否かを示す２進値である。ブロック７０４は、現行変換単位を走査することと、走査順序でのそれぞれの変換係数に対して変換係数のコンテキストモデルを選択することとを含む。次に、選択されたコンテキストモデルは、変換係数に関連するｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇシンタクス要素を算術的に符号化／復号化すべく用いられる。コンテキストモデルの選択は、基準コンテキスト・インデックス（ｓｉｇＣｔｘ）およびコンテキスト・インデックス・インクリメント（ｓｉｇＩｎｄＩｎｃ）に基づく。変数ｓｉｇＣｔｘおよびｓｉｇＩｎｄＩｎｃは、変換係数の位置、および現行変換係数周辺の１つあるいは複数の近傍係数に対する有意マップ値を考慮する近傍方式を用いることで、それぞれの変換係数に対して動力学的に決定される。
【００３２】
一実施形態において、ｓｉｇＣｔｘおよびｓｉｇＩｎｄＩｎｃは、以下で述べられるように所定の変換係数（ｙ，ｘ）に対して決定される。この実施形態において、変換単位は、順方向ジグザグ走査を用いて走査されると考えられている。他のタイプの走査は、ｓｉｇＣｔｘおよびｓｉｇＩｎｄＩｎｃの決定に互いに異なる近傍を使用することになる。
【００３３】
１．  現行変換単位サイズが４×４画素の場合、ｓｉｇＣｔｘ＝ｙ＊４でありｓｉｇＩｎｄＩｎｃ＝ｓｉｇＣｔｘ＋４８    。
２．  現行変換単位サイズが８×８画素の場合、ｓｉｇＣｔｘ＝（ｙ＞＞１）＊４＋（ｘ＞＞１）でありｓｉｇＩｎｄＩｎｃ＝ｓｉｇＣｔｘ＋３２    。
【００３４】
３．  もし現行変換単位サイズが１６×１６画素または３２×３２画素の場合、ｓｉｇＣｔｘは、現行変換係数の位置（ｙ、ｘ）と、係数の符号化された近傍の有意マップ値とに基づき、以下のように決定される。
【００３５】
ａ．  もしｙ＜＝２でありｘ＜＝２の場合、ｓｉｇＣｔｘ＝ｙ＊２＋ｘ    。
ｂ．  ｙ＝０（すなわち現行変換係数が変換単位の上部境界である）以外の場合、ｓｉｇＣｔｘ＝４＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ］［ｘ−１］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ］［ｘ−２］。
【００３６】
ｃ．  ｘ＝０（すなわち現行変換係数が変換単位の左境界である）以外の場合、ｓｉｇＣｔｘ＝７＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ−１］［ｘ］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ−２］［ｘ］。
【００３７】
ｄ．  ｘ＞１かつｙ＞１であること以外の場合、ｓｉｇＣｔｘ＝ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ−１］［ｘ］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ］［ｘ−１］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ−１］［ｘ−１］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ］［ｘ−２］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ−２］［ｘ］。
【００３８】
ｅ．  ｘ＞１以外の場合、ｓｉｇＣｔｘ＝ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ−１］［ｘ］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ］［ｘ−１］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ−１］［ｘ−１］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ］［ｘ−２］。
【００３９】
ｆ．  ｙ＞１以外の場合、ｓｉｇＣｔｘ＝ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ−１］［ｘ］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ］［ｘ−１］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ−１］［ｘ−１］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ−２］［ｘ］。
【００４０】
ｇ．  その他の場合、ｓｉｇＣｔｘ＝ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ−１］［ｘ］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ］［ｘ−１］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ−１］［ｘ−１］。
【００４１】
ｈ．  もしｓｉｇＣｔｘが１０＋（４とｓｉｇＣｔｘとの最小値）の場合、最終値。
４．  現行変換単位サイズが１６×１６画素の場合、ｓｉｇＩｎｄＩｎｃ＝ｓｉｇＣｔｘ＋１６    。
【００４２】
５．  現行変換単位サイズが３２×３２画素の場合、ｓｉｇＣｔｘ＝ｙ＊４でありｓｉｇＩｎｄＩｎｃ＝ｓｉｇＣｔｘ    。
上記の近傍決定ロジックの視覚化を促進するため、図９は、変換単位９００例における互いに異なる変換係数に対する可能な近傍の定義付けを例示する。変換単位９００の中央に位置する変換係数（たとえば（ｙ，ｘ）に位置する係数９０２）に対して、ｓｉｇＣｔｘは、（ｙ，ｘ−１），（ｙ，ｘ−２），（ｙ−１，ｘ），（ｙ−２，ｘ）、および（ｙ−１，ｘ−１）に位置する５個の近傍の有意マップ値に基づき決定される。変換単位９００の左境界に位置する変換係数（たとえば（ｙ，０）に位置する係数９０４）に対して、ｓｉｇＣｔｘは、（ｙ−１，０）と（ｙ−２，０）に位置する２個の近傍の有意マップ値に基づき決定される。変換単位９００の上部境界に位置する変換係数（たとえば（０，ｘ）に位置する係数９０６）に対して、ｓｉｇＣｔｘは、（０，ｘ−１）と（０，ｘ−２）に位置する２個の近傍の有意マップ値に基づき決定される。さらに変換単位９００の上方の上部左境界に位置する特定変換係数（たとえば係数９０８，９１０，９１２，９１４）に対して、ｓｉｇＣｔｘは、いずれの近傍データにも基づかない。
【００４３】
図７のブロック７０６でエントロピ符号化ブロック５１０／エントロピ復号化ブロック６０２は、現行変換単位の有意（すなわち非ゼロ）変換係数を符号化または復号化する。このプロセスには、それぞれの有意変換係数に対して、（１）変換係数の絶対レベル（「変換係数レベル」とも言われる）と、（２）変換係数のサイン（正または負）とを符号化または復号化することが含まれる。変換係数レベルの符号化／復号化の一環として、エントロピ符号化ブロック５１０／エントロピ復号化ブロック６０２は、互いに異なる３個のシンタクス要素：ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇ，ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ２＿ｆｌａｇ，およびｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｒｅｍａｉｎｉｎｇを符号化または復号化する。ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇは、変換係数の絶対レベルが１よりも大きいか否かを示す２進値である。ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ２＿ｆｌａｇは、変換係数の絶対レベルが２よりも大きいか否かを示す２進値である。さらにｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｒｅｍａｉｎｉｎｇは、「変換係数の絶対レベル」−「所定値」に等しい値である（一実施形態において、この所定値は３である）。
【００４４】
一実施形態において、ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇおよびｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ２＿ｆｌａｇシンタクス要素を符号化／復号化するプロセスは、サブブロック方式に基づきそれぞれのシンタクス要素のコンテキストモデルを選択することを伴う（ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｒｅｍａｉｎｉｎｇシンタクス要素は、コンテキストモデル選択を必要としないことに留意する）。この方式において、現行変換単位は、いくつかの４×４ブロックに分割され、所定の非ゼロ変換係数に対するｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇとｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ２＿ｆｌａｇのコンテキストモデル選択が、変換係数のサブブロックの範囲内の統計情報、および変換単位における前のサブブロックの統計情報に基づき実施される。これを容易にすべく、ブロック７０６において、現行変換単位は、２走査またはループ−（１）サブブロックレベルでの外側走査と、（２）変換係数レベルでの内側走査（特定サブブロック内）とを用いることで走査される。これは、図１０において視覚的に示される。図１０は、変換単位１０００の２段階レベル走査シーケンスを示す。この実施例において、走査シーケンスは、変換単位１０００の４×４サブブロックに関して順方向ジグザグパターンにしたがって進む（すなわち外側走査）。それぞれの４×４サブ部分ブロック内では走査シーケンスは、サブブロックの変換係数に関して逆方向ジグザグパターンにしたがって進む（すなわち内側走査）。これは、次のサブブロックに移動する前に変換単位１０００のうちのそれぞれの４×４サブブロックを全体として処理できるようにする。
【００４５】
図１１は、ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇとｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ２＿ｆｌａｇシンタクス要素が、図１０において示される２段階レベル走査シーケンスを用いて符号化／復号化される方法を例示するプロセス１１００を示す。ブロック１１０２において外側ＦＯＲループは、現行変換単位のうちのそれぞれのサブブロックに対して入力される。この外側ＦＯＲループは、図１０において示されるサブブロックレベル順方向ジグザグパターンなどの第１走査パターンにしたがって進む。ブロック１１０４において内側ＦＯＲループは、現行４×４サブブロックにおけるそれぞれの変換係数に対して入力される。この内側ＦＯＲループは、図１０において示される係数レベル逆方向ジグザグパターンなどの第２走査パターンにしたがって進む。ブロック１１０４の内側ＦＯＲループの範囲内でエントロピ符号化ブロック５１０／エントロピ復号化ブロック６０２は、変換係数が非ゼロの場合（すなわち対応する有意マップにおける変換係数のｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇが、１に等しい場合）、現行変換係数に対するｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇシンタクス要素を符号化または復号化する（ブロック１１０６）。
【００４６】
上記のように、ブロック１１０６でのｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇシンタクス要素の符号化／復号化は、適当なコンテキストモデルを選択することを含む。選択されるコンテキストモデルは、サブブロックレベルデータに基づく（たとえば現行サブブロック範囲内の統計情報および変換単位における前のサブブロックの統計情報）。一実施形態において、ブロック１１０６でのｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇに対するコンテキストモデルの選択は、以下のような現行サブブロックに対してコンテキスト集合（ｃｔｘＳｅｔ）を最初に決定することを含む。
【００４７】
１．  現行変換単位サイズが４×４画素の場合、ｃｔｘＳｅｔ＝０    。
２．  現行変換単位サイズが４×４よりも大きく、現行４×４サブブロックがサブブロックレベル走査順の１番目である場合（すなわちブロック１１０２のＦＯＲループ）、ｃｔｘＳｅｔ＝５    。
【００４８】
３．  その他のｃｔｘＳｅｔは、前の４×４サブブロックブロックにおいて１よりも大きい絶対値を有する変換係数の数によって決定される（ｌａｓｔＧｒｅａｔｅｒ２Ｃｔｘ）；すなわちｃｔｘＳｅｔ＝（（ｌａｓｔＧｒｅａｔｅｒ２Ｃｔｘ）＞＞２）＋１    。
【００４９】
それぞれのコンテキスト集合の範囲内に互いに異なる５個のコンテキストモデル（０〜４の番号が付けられる）が存在することができる。現行サブブロックのコンテキスト集合が、上記のように決定されると、コンテキスト集合の範囲内の特定コンテキストモデルは、以下のように現行変換係数のｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇシンタクス要素に対して選択される。
【００５０】
１．  最初のコンテキストは、１に設定される。
２．  現行４×４サブブロックにおける１よりも大きな絶対レベルを有する変換係数が符号化／復号化された後、コンテキストモデルは、０に設定される。
【００５１】
３．  現行４×４サブブロックにおける１個の変換係数のみが符号化／復号化され、その絶対レベルが１に等しい場合、コンテキストモデルは、２に設定される。
４．  現行４×４サブブロックにおける２個の変換係数のみが符号化／復号化され、それらの絶対レベルが１に等しい場合、コンテキストモデルは、３に設定される。
【００５２】
５．  現行４×４サブブロックにおける３個以上の変換係数が符号化／復号化され、それらの絶対レベルが１に等しい場合、コンテキストモデルは、４に設定される。
ブロック１１０８において、ブロック１１０４で開始された内側ＦＯＲループは、終了する（現行サブブロックの全ての変換係数が走査されると）。
【００５３】
ブロック１１１０で別の内側ＦＯＲループが、現行４×４サブブロックにおけるそれぞれの変換係数に対して入力される。このループは、実質的にループ１１０４に類似しているが、ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ２＿ｆｌａｇシンタクス要素の符号化／復号化に用いられる。とくにブロック１１１０の内側ＦＯＲループの範囲内でエントロピ符号化ブロック５１０／エントロピ復号化ブロック６０２は、変換係数のｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇが１に等しい場合、現行変換係数のｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ２＿ｆｌａｇを符号化または復号化する（ブロック１１１２）。
【００５４】
ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇシンタクス要素のように、ブロック１１１２でのｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇシンタクス要素の符号化／復号化は、適当なコンテキストモデルを選択することを含む。選択されるコンテキストモデルは、サブブロックレベルデータに基づく。一実施形態において、ブロック１１１２でのｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ２＿ｆｌａｇに対するコンテキストモデルの選択は、ブロック１１０６に関して記載されたｃｔｘＳｅｔ選択ルールセットに同じルールセットにしたがって、現行サブブロックに対するコンテキスト集合を最初に決定することを含む。現行サブブロックに対するコンテキスト集合が決定されると、コンテキスト集合の範囲内の特定コンテキストモデルは、以下のように現行変換係数のｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ２＿ｆｌａｇシンタクス要素に対して選択される。
【００５５】
１．  最初のコンテキストは、０に設定される。
２．  現行４×４サブブロックにおける１よりも大きな絶対レベルを有する１個の変換係数のみが符号化／復号化された場合、コンテキストモデルは、１に設定される。
【００５６】
３．  現行４×４サブブロックにおける１よりも大きな絶対レベルを有する２個の変換係数のみが符号化／復号化された場合、コンテキストモデルは、３に設定される。
４．  現行４×４サブブロックにおける１よりも大きな絶対レベルを有する３個の変換係数のみが符号化／復号化された場合、コンテキストモデルは、３に設定される。
【００５７】
５．  現行４×４サブブロックにおける１よりも大きな絶対レベルを有する４個以上の変換係数が符号化／復号化された場合、コンテキストモデルは、４に設定される。
ブロック１１１４において、ブロック１１００で開始された内側ＦＯＲループは、終了する（現行サブブロックのすべての変換係数が走査されると）。
【００５８】
図１１には示されないが、ブロック１１１４後、プロセス１１００は、それぞれ係数サインとｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿残留シンタクス要素を符号化／復号化すべく、さらに２個の内側ＦＯＲループ（すなわち現行サブブロック内のループ）を含むことができる。ここで留意すべきは、これらのシンタクス要素の符号化が、いずれのコンテキストモデル選択も必要としないことである。
【００５９】
ブロック１１１６において、ブロック１１０２で開始された外側ＦＯＲループは、終了する（現行変換単位の全てのサブブロックが走査されると）。
図１１およびその付随説明から分かるように、コンテキスト適応バイナリ算術符号化を用いて変換係数レベルを符号化および復号化するプロセスは、ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇおよびｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ２＿ｆｌａｇシンタクス要素のコンテキストモデルを選択するとき、主に４×４サブブロック間の依存関係のため、複雑になり得る。これらのサブブロック依存関係は、２段階レベル走査プロセスをもたらすので、比較的複雑なコンテキストモデル選択ルールが生じる。以下の部分は、コンテキスト適応バイナリ算術符号化を用いて変換係数レベルを符号化／復号化する場合に、走査およびコンテキストモデル選択を簡略化する様々な改善について記載される。
【００６０】
［単一レベル走査を用いる変換係数レベルのコンテキスト適応バイナリ算術符号化／復号化］
一連の実施形態において、図７のブロック７０６での変換係数レベルの符号化／復号化は、ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇおよびｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ２＿ｆｌａｇシンタクス要素のコンテキストモデル選択が、もはやサブブロックレベルデータに依存しないように、修正することができる。その代わり、これらの実施形態において、コンテキストモデルは、現行変換単位の範囲内の個々の変換係数に基づき選択することができる。したがって、図１１のプロセス１１００とは対照的に、変換係数レベルを符号化／復号化すべく、２段階レベル走査シーケンスを実施する必要がなくなる（すなわち外側サブブロックレベル走査と、サブブロック当りの内側係数レベル走査）。むしろ、符号化／復号化は、変換単位全体の単一レベル走査（すなわち単一レベル走査順に沿った）を用いて実施することができる。これは、コンテキストモデル選択に必要とされる符号を簡略化すると同時に、符号化／復号化性能を改善することができる。
【００６１】
図１２は、一実施形態にしたがって単一レベル走査を用いることで、コンテキスト適応バイナリ算術符号化で変換係数レベル符号化／復号化を実施するプロセス１２００を示す。とくに図１２は、ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇおよびｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ２＿ｆｌａｇシンタクス要素の符号化／復号化に着目する（ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｒｅｍａｉｎｉｎｇシンタクス要素の符号化／復号化は、コンテキストモデル選択を必要としないので記載されない）。プロセス１２００は、図７のブロック７０６の範囲内でエントロピ符号化ブロック５１０またはエントロピ復号化ブロック６０２によって実行することができる。一実施形態において、プロセス１２００は、図１１のプロセス１１００の代わりに実行されることができる。
【００６２】
ブロック１２０２においてエントロピ符号化ブロック５１０／エントロピ復号化ブロック６０２は、現行変換単位におけるそれぞれの変換係数に対してＦＯＲループを入力することができる。このＦＯＲループは、単一レベル走査順に沿った変換単位の走査を表わすことができる（すなわちいずれのサブブロック分割も必要としない走査）。一実施形態において、単一レベル走査順は、図１３において示されるような逆方向ジグザグ走査に対応することができる。別の実施形態において、単一レベル走査順は、図１４に示されるような逆方向波面走査に対応することができる。波面または逆方向波面走査において、全ての走査ラインは、同じ対角線走査方向を有する。さらに別の実施形態において、単一レベル走査順は、当該分野において公知の任意の他のタイプの走査パターンに相当することができる。
【００６３】
ブロック１２０４においてエントロピ符号化ブロック５１０／エントロピ復号化ブロック６０２は、係数が非ゼロの場合、現行変換係数のｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇシンタクス要素を符号化／復号化することができる。符号化／復号化は、現行単一レベル走査順（すなわちブロック１２０２のＦＯＲループにおいて）ですでに符号化／復号化された変換係数に基づきｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇのコンテキストモデルを選択することを含む。一実施形態において、このコンテキストモデルの選択は、以下を含むことができる。
【００６４】
１．  全変換単位サイズに対して：
ａ．  最初のコンテキストモデルを１に設定する。
ｂ．  １よりも大きな絶対レベルを有する変換係数が、現行単一レベル走査順ですでに符号化／復号化された場合、コンテキストモデルを０に設定する。
【００６５】
ｃ．  （ｎ−１）個の変換係数のみが、現行単一レベル走査順ですでに符号化／復号化され、それらの絶対レベルが１に等しい場合、コンテキストモデルを２〜Ｔ−１の範囲で変化し得るｎに設定する。
【００６６】
ｄ．  （Ｔ−１）個の変換係数が、現行単一レベル走査順ですでに符号化／復号化され、それらの絶対レベルが１に等しい場合、コンテキストモデルをＴに設定する。
ここで留意すべきは、同じルールが全変換単位サイズに適用するので、前述のロジックにおいてコンテキストモデル選択は、現行変換単位のサイズとは無関係なことである。さらに（１）（ｃ）および（１）（ｄ）に関して、選択されるコンテキストモデルは、閾値数Ｔ−１までの、現行単一レベル走査順ですでに符号化／復号化された１に等しい絶対レベルの変換係数の数に基づき変化することができる。Ｔ−１に達すると、コンテキストモデルは、閾値数Ｔに設定されることができる。特定の実施形態において、Ｔの値は、１０に設定することができる。
【００６７】
別の実施形態において、ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇに対する前述コンテキストモデル選択ロジックは、現行変換単位のサイズを考慮するように修正することができる（たとえば４×４画素から３２×３２画素まで）。この実施形態において、コンテキストモデルの選択は、以下を含むことができる：
１．  全変換単位サイズに対して：
ａ．  最初のコンテキストモデルを１に設定する。
【００６８】
ｂ．  １よりも大きな絶対レベルを有する変換係数が、現行単一レベル走査順ですでに符号化／復号化された場合、コンテキストモデルを０に設定する。
２．  ４×４変換単位に対して、（ｎ４×４−１）個の変換係数のみが現行４×４変換単位で符号化／復号化され、それらの絶対レベルが１に等しい場合、コンテキストモデルを２〜Ｔ４×４−１の範囲で変化し得るｎ４×４に設定する。（Ｔ４×４−１）個以上の変換係数が現行４×４変換単位で符号化／復号化された場合、コンテキストモデルをＴ４×４に設定する。
【００６９】
３．  ８×８変換単位に対して、（ｎ８×８−１）個の変換係数のみが現行８×８変換単位で符号化／復号化され、それらの絶対レベルが１に等しい場合、コンテキストモデルを２〜Ｔ８×８−１の範囲で変化し得るｎ８×８に設定する；（Ｔ８×８−１）個以上の変換係数が現行８×８変換単位で符号化／復号化され、それらのレベルが１に等しい場合、コンテキストモデルをＴ８×８に設定する。
【００７０】
４．  １６×１６変換単位に対して、（ｎ１６×１６−１）個の変換係数のみが現行１６×１６変換単位において符号化／復号化され、それらの絶対レベルが１に等しい場合、コンテキストモデルを２〜Ｔ１６×１６−１の範囲で変化し得るｎ１６×１６に設定する；（Ｔ１６×１６−１）個以上の変換係数が現行１６×１６変換単位で符号化／復号化され、それらのレベルが１に等しい場合、コンテキストモデルをＴ１６×１６に設定する。
【００７１】
５．  ３２×３２変換単位に対して、（ｎ３２×３２−１）個の変換係数のみが現行３２×３２変換単位で符号化／復号化され、それらの絶対レベルが１に等しい場合、コンテキストモデルを２〜Ｔ３２×３２−１の範囲で変化し得るｎ３２×３２に設定する；（Ｔ３２×３２−１）個以上の変換係数が現行３２×３２変換単位で符号化／復号化され、それらのレベルが１に等しい場合、コンテキストモデルをＴ３２×３２に設定する。
【００７２】
特定実施形態において、上記の閾値数Ｔ４×４，Ｔ８×８，Ｔ１６×１６，およびＴ３２×３２は、それぞれ４，６，８，および１０に設定することができる。
ブロック１２０６においてエントロピ符号化ブロック５１０／エントロピ復号化ブロック６０２は、現行変換係数のｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ２＿ｆｌａｇシンタクス要素を符号化／復号化することができる。符号化／復号化は、現行単一レベル走査順ですでに符号化／復号化された変換係数に基づきｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ２＿ｆｌａｇのコンテキストモデルを選択することを含む。一実施形態において、このコンテキストモデルの選択は、以下を含むことができる。
【００７３】
１．  全変換単位サイズに対して：
ａ．  最初のコンテキストモデルを１に設定する。
ｂ．  １よりも大きな絶対レベルを有するｍ個の変換係数のみが、現行単一レベル走査順ですでに符号化／復号化された場合、コンテキストモデルを、１〜Ｋ−１の範囲で変化し得るｍに設定する。
【００７４】
ｃ．  １よりも大きな絶対レベルを有するＫ個以上の変換係数が、現行単一レベル走査順ですでに符号化／復号化された場合、コンテキストモデルをＫに設定する。
ここで留意すべきは、前述のロジックにおいて、コンテキストモデル選択は、同じルールが全ての変換単位サイズに適用するので、現行変換単位のサイズには無関係なことである。さらに（１）（ｂ）と（１）（ｃ）に関して、選択されたコンテキストモデルは、閾値数Ｋ−１までの、現行単一レベル走査順ですでに符号化／復号化された１よりも大きな絶対レベルを有する変換係数の数に基づき変化し得る。Ｋに達すると、コンテキストモデルは、閾値数Ｋに設定することができる。特定実施形態において、Ｋの値は、１０に設定することができる。
【００７５】
別の実施形態において、ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ２＿ｆｌａｇの前述コンテキストモデル選択ロジックは、現行変換単位のサイズ（たとえば４×４画素〜３２×３２画素の）を考慮するように修正することができる。この実施形態において、コンテキストモデルの選択は、以下を含むことができる。
【００７６】
１．  全変換単位サイズに対して、最初のコンテキストモデルを１に設定する。
２．  ４×４変換単位に対して、１よりも大きな絶対レベルを有する（ｍ４×４−１）個の変換係数のみが、現行４×４変換単位で符号化／復号化された場合、コンテキストモデルを１〜Ｋ４×４−１の範囲で変化し得るｍ４×４に設定する；１よりも大きな絶対レベルを有するＫ４×４個以上の変換係数が、現行４×４変換単位で符号化／復号化された場合、コンテキストモデルをＫ４×４に設定する。
【００７７】
３．  ８×８変換単位に対して、１よりも大きな絶対レベルを有する（ｍ８×８−１）個の変換係数のみが、現行８×８変換単位で符号化／復号化された場合、コンテキストモデルを１〜Ｋ８×８−１の範囲で変化し得るｍ８×８に設定する；１よりも大きな絶対レベルを有するＫ８×８個以上の変換係数が、現行８×８変換単位で符号化／復号化された場合、コンテキストモデルをＫ８×８に設定する。
【００７８】
４．  １６×１６変換単位に対して、１よりも大きな絶対レベルを有する（ｍ１６×１６−１）個の変換係数のみが、現行１６×１６変換単位で符号化／復号化された場合、コンテキストモデルを１〜Ｋ１６×１６−１の範囲で変化し得るｍ１６×１６に設定する；１よりも大きな絶対レベルを有するＫ１６×１６個以上の変換係数が、現行１６×１６変換単位で符号化／復号化された場合、コンテキストモデルをＫ１６×１６に設定する。
【００７９】
５．  ３２×３２変換単位に対して、１よりも大きな絶対レベルを有する（ｍ３２×３２−１）個の変換係数のみが、現行３２×３２変換単位で符号化／復号化された場合、コンテキストモデルを１〜Ｋ３２×３２−１の範囲で変化し得るｍ３２×３２に設定する；１よりも大きな絶対レベルを有するＫ３２×３２個以上の変換係数が、現行３２×３２変換単位で符号化／復号化された場合、コンテキストモデルをＴ３２×３２に設定する。
【００８０】
特定実施形態において、上記の閾値数Ｋ４×４，Ｋ８×８，Ｋ１６×１６およびＫ３２×３２の値は、それぞれ４，６，８，および１０に設定することができる。
ブロック１２０８において、ブロック１２０２で開始されたＦＯＲループは、終了することができる（現行変換単位における全ての変換係数が、単一レベル走査順に沿って処理されると）。
【００８１】
図１２は、単一ループ（すなわちＦＯＲループ１２０２）で生じるようなｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇおよびｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ２＿ｆｌａｇシンタクス要素の符号化／復号化を示すが、特定実施形態においてこれらのシンタクス要素は、別個のループで符号化／復号化することができる。これらの実施形態において、ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇまたはｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ２＿ｆｌａｇのそれぞれのＦＯＲループは、現行変換単位の単一レベル走査に対応することができる。
【００８２】
［統一走査タイプとコンテキストモデル選択を用いる変換係数レベルと有意マップとの、コンテキスト適応バイナリ算術符号化／復号化］
上記のように、コンテキスト適応バイナリ算術符号化を用いる変換単位の符号化／復号化の１特徴は、変換単位でのそれぞれの変換係数が、非ゼロか否かを示すバイナリ有意マップを符号化／復号化することである。現行高性能映像符号化技術標準において、コンテキストモデルが有意マップのうちのそれぞれの要素（すなわちｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ）を符号化／復号化すべく選択される方法は、コンテキストモデルが変換係数レベルを符号化／復号化すべく選択される方法とは有意に異なる。たとえば図７のブロック７０４に関して記載されるように、変換単位の有意マップの符号化／復号化は、たとえば順方向ジグザグ走査を用いて変換単位を走査することと、変換係数周囲の特定近傍の有意マップ値に基づきそれぞれの変換係数のｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇシンタクス要素のコンテキストモデルを選択することとを含む。対照的に、図７のブロック７０６に関して記載されるように、変換単位の変換係数レベルの符号化／復号化は、２段階レベル入れ子走査シーケンス（たとえば４×４サブブロック当りの外側順方向ジグザグ走査と、所定サブブロックの範囲内での内側逆方向ジグザグ走査）を用いて変換単位を走査することと、サブブロックレベル係数データに基づきそれぞれの変換係数のａｂｓ＿ｃｏｅｆｆ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇおよびａｂｓ＿ｃｏｅｆｆ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ２＿ｆｌａｇシンタクス要素の別個のコンテキストモデルを選択することとを含む。
【００８３】
特定実施形態において、ブロック７０４と７０６で実施される処理は、変換単位の有意マップと変換係数レベルが同じ走査タイプに同じコンテキストモデル選択方式を用いて符号化／復号化されるように、修正することができる。この手法は、プロセス１５００として図１５において示される。
【００８４】
ブロック１５０２においてエントロピ符号化ブロック５１０／エントロピ復号化ブロック６０２は、特定走査タイプと特定コンテキストモデル選択方式を用いることで、現行変換単位の有意マップを符号化または復号化することができる。一連の実施形態において、ブロック１５０２で用いられる走査タイプは、単一レベル順方向ジグザグ走査、逆方向ジグザグ走査、順方向波面走査、逆方向波面走査、あるいは当該分野において公知の任意の他の走査タイプとすることができる。ブロック１５０２で用いられるコンテキストモデル選択方式は、図７のブロック７０４に関して上記される方式などの近傍方式とすることができる。近傍方式は、現行変換単位のうちのそれぞれの変換係数に対して変換係数周囲の１つあるいは複数の近傍変換係数に基づき変換係数のｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇシンタクス要素のコンテキストモデルを選択することができる。一実施形態において、この方式における近傍選択を制御するロジックは、用いられる走査タイプに基づき変化し得る（たとえば順方向ジグザグ、逆方向ジグザグ、その他）。
【００８５】
ブロック１５０４においてエントロピ符号化ブロック５１０／エントロピ復号化ブロック６０２は、ブロック１５０２で用いられる同じ走査タイプとコンテキストモデル選択方式を用いることで、現行変換単位のうちのそれぞれの変換係数の絶対レベル（たとえばｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇおよびｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ２＿ｆｌａｇシンタクス要素）を符号化または復号化することができる。たとえば逆方向ジグザグ走査が、ブロック１５０２で有意マップを符号化／復号化するのに用いられた場合、同じ逆方向ジグザグ走査が、ブロック１５０４での変換係数レベルの符号化／復号化に用いられることができる。さらに特定の近傍コンテキストモデル選択方式が、ブロック１５０２で有意マップの符号化／復号化に用いられた場合、同じ（または類似する）近傍方式は、ブロック１５０４での変換係数レベルの符号化／復号化に用いることができる。この統一手法は、コンテキスト適応バイナリ算術符号化と復号化の実施に必要なソフトウエアとハードウエア、あるいはそのうちのいずれか一方の複雑度を有意に減らすことができる。なぜなら、ソフトウエアとハードウエア、あるいはそのうちのいずれか一方のロジックは、有意マップおよび変換係数レベルの符号化段階に再利用できるからである。
【００８６】
以下は、統一順方向走査タイプ（たとえば順方向ジグザグ、順方向波面、など）および統一近傍方式が用いられる場合に、変換単位における変換係数（ｙ，ｘ）のｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ，ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇ、およびｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ２＿ｆｌａｇシンタクス要素に対するコンテキストモデルの選択に適用できるロジック例である。様々な実施形態において、同じロジックは、３個のシンタクス要素のうちのそれぞれに適用することができる。変数ｂａｓｅＣｔｘは、シンタクス要素の基本コンテキスト・インデックスに言及し、変数ｃｔｘＩｎｄＩｎｃは、シンタクス要素のコンテキスト・インデックス・インクリメントに言及する。
【００８７】
１．  現行変換単位サイズが４×４画素の場合、ｂａｓｅＣｔｘ＝ｙ＊４＋ｘでありｃｔｘＩｎｄＩｎｃ＝ｂａｓｅＣｔｘ＋４８    。
２．  現行変換単位サイズが８×８画素の場合、ｂａｓｅＣｔｘ＝（ｙ＞＞１）＊４＋（ｘ＞＞１）でありｃｔｘＩｎｄＩｎｃ＝ｂａｓｅＣｔｘ＋３２    。
【００８８】
３．  もし現行変換単位サイズが１６×１６画素または３２×３２画素の場合、ｂａｓｅＣｔｘは、現行変換係数の位置（ｙ、ｘ）と、係数の符号化された近傍の有意マップ値とに基づき、以下のように決定される。
【００８９】
ａ．  もしｙ＜＝２でありｘ＜＝２の場合、ｂａｓｅＣｔｘ＝ｙ＊２＋ｘ    。
ｂ．  ｙ＝０（すなわち現行変換係数が変換単位の上部境界である）以外の場合、ｂａｓｅＣｔｘ＝４＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ］［ｘ−１］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ］［ｘ−２］。
【００９０】
ｃ．  ｘ＝０（すなわち現行変換係数が変換単位の左境界である）以外の場合、ｂａｓｅＣｔｘ＝７＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ−１］［ｘ］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ−２］［ｘ］。
【００９１】
ｄ．  ｘ＞１かつｙ＞１であること以外の場合、ｂａｓｅＣｔｘ＝ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ−１］［ｘ］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ］［ｘ−１］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ−１］［ｘ−１］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ］［ｘ−２］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ−２］［ｘ］。
【００９２】
ｅ．  ｘ＞１以外の場合、ｂａｓｅＣｔｘ＝ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ−１］［ｘ］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ］［ｘ−１］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ−１］［ｘ−１］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ］［ｘ−２］。
【００９３】
ｆ．  ｙ＞１以外の場合、ｂａｓｅＣｔｘ＝ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ−１］［ｘ］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ］［ｘ−１］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ−１］［ｘ−１］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ−２］［ｘ］。
【００９４】
ｇ．  その他の場合、ｂａｓｅＣｔｘ＝ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ−１］［ｘ］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ］［ｘ−１］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ−１］［ｘ−１］。
【００９５】
ｈ．  もしｂａｓｅＣｔｘが１０＋（４とｂａｓｅＣｔｘとの最小値）の場合、最終値。
４．  現行変換単位サイズが１６×１６画素の場合、ｂａｓｅＩｎｄＩｎｃ＝ｂａｓｅＣｔｘ＋１６    。
【００９６】
５．  現行変換単位サイズが３２×３２画素の場合、ｂａｓｅＩｎｄＩｎｃ＝ｂａｓｅＣｔｘ    。
上記のロジックでｂａｓｅＣｔｘの決定に用いられる特定近傍は、図９の変換単位９００において視覚的に示される。変換単位９００の中央に位置する変換係数（たとえば（ｙ，ｘ）に位置する係数９０２）に対して、ｂａｓｅＣｔｘは、（ｙ，ｘ−１），（ｙ，ｘ−２），（ｙ−１，ｘ），（ｙ−２，ｘ），および（ｙ−１，ｘ−１）に位置する５個の近傍に基づき決定される。変換単位９００の左境界に位置する変換係数（たとえば（ｙ，０）に位置する係数９０４）に対して、ｂａｓｅＣｔｘは、（ｙ−１，０）および（ｙ−２，０）に位置する２個の近傍に基づき決定される。変換単位９００の上部境界に位置する変換係数（たとえば（０，ｘ）に位置する係数９０６）に対して、ｂａｓｅＣｔｘは、（０，ｘ−１）と（０，ｘ−２）に位置する２個の近傍に基づき決定される。さらに変換単位９００の上方の上部左境界に位置する特定の変換係数（たとえば係数９０８，９１０，９１２，９１４）に対して、ｂａｓｅＣｔｘは、いずれの近傍データにも基づかない。
【００９７】
以下は、統一逆方向走査タイプ（たとえば逆方向ジグザグ、逆方向波面、など）および統一近傍方式が用いられる場合に、変換単位における変換係数（ｙ，ｘ）のｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ，ｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ１＿ｆｌａｇ、およびｃｏｅｆｆ＿ａｂｓ＿ｌｅｖｅｌ＿ｇｒｅａｔｅｒ２＿ｆｌａｇシンタクス要素に対するコンテキストモデルの選択に適用できるロジック例である。様々な実施形態において、同じロジックは、３個のシンタクス要素のうちのそれぞれに適用することができる。変数ｂａｓｅＣｔｘは、シンタクス要素の基本コンテキスト・インデックスに言及し、変数ｃｔｘＩｎｄＩｎｃは、シンタクス要素のコンテキスト・インデックス・インクリメントに言及する。
【００９８】
１．  現行変換単位サイズが４×４画素の場合、ｂａｓｅＣｔｘ＝ｙ＊４＋ｘでありｃｔｘＩｎｄＩｎｃ＝ｂａｓｅＣｔｘ＋４８    。
２．  現行変換単位サイズが８×８画素の場合、ｂａｓｅＣｔｘ＝（ｙ＞＞１）＊４＋（ｘ＞＞１）でありｃｔｘＩｎｄＩｎｃ＝ｂａｓｅＣｔｘ＋３２    。
【００９９】
３．  もし現行変換単位サイズが１６×１６画素または３２×３２画素の場合、ｂａｓｅＣｔｘは、現行変換係数の位置（ｙ、ｘ）と、係数の符号化された近傍の有意マップ値とに基づき、以下のように決定される。
【０１００】
ａ．  もしｙ＜＝２でありｘ＜＝２の場合、ｂａｓｅＣｔｘ＝ｙ＊２＋ｘ    。
ｂ．  ｙ＝０（すなわち現行変換係数が変換単位の上部境界である）以外の場合、ｂａｓｅＣｔｘ＝４＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ］［ｘ＋１］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ］［ｘ＋２］。
【０１０１】
ｃ．  ｘ＝０（すなわち現行変換係数が変換単位の左境界である）以外の場合、ｂａｓｅＣｔｘ＝７＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ＋１］［ｘ］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ＋２］［ｘ］。
【０１０２】
ｄ．  ｘ＞１かつｙ＞１であること以外の場合、ｂａｓｅＣｔｘ＝ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ＋１］［ｘ］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ］［ｘ＋１］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ＋１］［ｘ＋１］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ］［ｘ＋２］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ＋２］［ｘ］。
【０１０３】
ｅ．  ｘ＞１以外の場合、ｂａｓｅＣｔｘ＝ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ＋１］［ｘ］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ］［ｘ＋１］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ＋１］［ｘ＋１］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ］［ｘ＋２］。
【０１０４】
ｆ．  ｙ＞１以外の場合、ｂａｓｅＣｔｘ＝ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ＋１］［ｘ］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ］［ｘ＋１］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ＋１］［ｘ＋１］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ＋２］［ｘ］。
【０１０５】
ｇ．  その他の場合、ｂａｓｅＣｔｘ＝ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ＋１］［ｘ］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ］［ｘ＋１］＋ｓｉｇｎｉｆｉｃａｎｔ＿ｃｏｅｆｆ＿ｆｌａｇ［ｙ＋１］［ｘ＋１］。
【０１０６】
ｈ．  もしｂａｓｅＣｔｘが１０＋（４とｂａｓｅＣｔｘとの最小値）の場合、最終値。
４．  現行変換単位サイズが１６×１６画素の場合、ｂａｓｅＩｎｄＩｎｃ＝ｂａｓｅＣｔｘ＋１６    。
【０１０７】
５．  現行変換単位サイズが３２×３２画素の場合、ｂａｓｅＩｎｄＩｎｃ＝ｂａｓｅＣｔｘ    。
上記のロジックでｂａｓｅＣｔｘの決定に用いられる特定近傍は、図１６の変換単位１６００において視覚的に示される。変換単位１６００の中央に位置する変換係数（たとえば（ｙ，ｘ）に位置する係数１６０２）に対して、ｂａｓｅＣｔｘは、（ｙ，ｘ＋１），（ｙ，ｘ＋２），（ｙ＋１，ｘ），（ｙ＋２，ｘ），および（ｙ＋１，ｘ＋１）に位置する５個の近傍に基づき決定される。変換単位１６００の左境界に位置する変換係数（たとえば（ｙ，０）に位置する係数１６０４）に対して、ｂａｓｅＣｔｘは、（ｙ＋１，０）および（ｙ＋２，０）に位置する２個の近傍に基づき決定される。変換単位１６００の上部境界に位置する変換係数（たとえば（０，ｘ）に位置する係数１６０６）に対して、ｂａｓｅＣｔｘは、（０，ｘ＋１）および（０，ｘ＋２）に位置する２個の近傍に基づき決定される。さらに変換単位１６００の上方の上部左境界に位置する特定変換係数（たとえば係数１６０８，１６１０，１６１２，１６１４）に対して、ｂａｓｅＣｔｘは、いずれの近傍データにも基づかない。
【０１０８】
特定実施形態は、指令実行システム、器具、デバイス、または機械によってかそれらと接続して用いる持続性コンピュータ可読記憶媒体で実施され得る。たとえば持続性コンピュータ可読媒体は、特定実施形態によって記載される方法を実施すべくコンピュータシステム／デバイスを制御するプログラムコードまたは指令を含有することができる。プログラムコードは、コンピュータシステム／デバイスのうちの１つあるいは複数のプロセッサによって実行されるとき、特定実施形態において記載される方法を実施するよう機能することができる。
【０１０９】
本明細書における説明および以下の特許請求の範囲を通して用いられるように、「ａ」、「ａｎ」、および「ｔｈｅ」は、文脈から判断して明らかにそうでないと分かる以外は、複数指示を含む。また、本明細書における説明および以下の特許請求の範囲を通して用いられるように、「ｉｎ」の意味には、文脈から判断して明らかにそうでないと分かる以外は、「ｉｎ」および「ｏｎ」が含まれる。
【０１１０】
上記の説明は、特定実施形態の特徴が実施され得る方法の実施例とともに様々な実施形態を例示する。上記の実施例および実施形態は、唯一の実施形態とみなされるべきではなく、以下の特許請求の範囲によって定義されるような特定実施形態の適応性と利点を例示すべく示される。上記の開示および以下の特許請求の範囲に基づき、特許請求の範囲によって定義されるその範囲から逸脱することなく、他の配置、実施形態、実装および均等物を用いることができる。
【図１】
0005733590.tif 000002
【図２】
0005733590.tif 000003
【図３】
0005733590.tif 000004
【図４】
0005733590.tif 000005
【図５】
0005733590.tif 000006
【図６】
0005733590.tif 000007
【図７】
0005733590.tif 000008
【図８】
0005733590.tif 000009
【図９】
0005733590.tif 000010
【図１０】
0005733590.tif 000011
【図１１】
0005733590.tif 000012
【図１２】
0005733590.tif 000013
【図１３】
0005733590.tif 000014
【図１４】
0005733590.tif 000015
【図１５】
0005733590.tif 000016
【図１６】
0005733590.tif 000017