(57)【特許請求の範囲】
【請求項１】
複数の要素のマトリクスに関連付けられたビデオデータを処理する方法であって、
前記マトリクスを通して、所定の走査パターンを使用して前記ビデオデータを読み取ることであって、前記複数の要素の各要素は、位置（ｙ，ｘ）を有し、ここで、０≦ｙ≦（高さ−１）および０≦ｘ≦（幅−１）であり、マトリクスの面積は、高さ×幅である、前記読み取ること、
位置（０，０）の要素から位置（高さ−１，幅−１）の要素まで予め設定された走査パターンにおける複数の要素の各要素のコンテキストモデルを決定することであって、
前記予め設定された走査パターンがジグザグパターンである場合、
位置（０，０）における要素では、コンテキストモデルを、前記マトリクスの面積を有する異なるマトリクスの位置（０，０）における対応する要素に対するコンテキストモデルとして決定し、
位置（１，０）における要素では、コンテキストモデルを、前記異なるマトリクスの位置（１，０）における対応する要素に対するコンテキストモデルとして決定し、
位置（０，１）における要素では、コンテキストモデルを、前記異なるマトリクスの位置（０，１）における対応する要素に対するコンテキストモデルとして決定し、
位置（０，０）、（１，０）、（０，１）以外の位置における要素では、前記複数の要素のうちの他の要素の値に基づいて、複数のジグザグ走査線のうちの単一のジグザグ走査線の各要素のコンテキストモデルを決定し、
前記他の要素は前記要素と同じジグザグ走査線に沿っておらず、前記他の要素は、前記複数のジグザグ走査線のうちの２本以下の前記他のジグザグ走査線に含まれ、
前記予め設定された走査パターンが垂直パターンである場合、
０≦ｋ≦（高さ−１）の各位置（ｋ，０）における要素では、前記コンテキストモデルを、前記マトリクスの面積を有する異なるマトリクスの位置（ｋ，０）における対応する要素に対するコンテキストモデルとして決定し、
位置（ｋ，０）以外の位置における要素では、前記複数の要素のうちの他の要素の値に基づいて、複数の垂直走査線のうちの単一の垂直走査線の各要素のコンテキストモデルを決定し、
前記他の要素は前記要素と同じ垂直走査線に沿っておらず、前記他の要素は、前記複数の垂直走査線のうちの２本以下の前記他の垂直走査線に含まれ、
前記予め設定された走査パターンが水平パターンである場合、
０≦ｐ≦（幅−１）の各位置（０，ｐ）における要素では、前記コンテキストモデルを、前記マトリクスの面積を有する異なるマトリクスの位置（０，ｐ）における対応する要素に対するコンテキストモデルとして決定し、
位置（０，ｐ）以外の位置における要素では、前記複数の要素のうちの他の要素の値に基づいて、複数の水平走査線のうちの単一の水平走査線の各要素のコンテキストモデルを決定し、
前記他の要素は前記要素と同じ単一の水平走査線に沿っておらず、前記他の要素は、前記複数の水平走査線のうちの２本以下の前記他の水平走査線に含まれる
ことにより、前記位置（０，０）の要素から位置（高さ−１，幅−１）の要素まで予め設定された走査パターンにおける複数の要素の各要素のコンテキストモデルを決定すること、
それぞれ決定されたコンテキストモデルに基づいて各要素を処理することを備える、方法。
【請求項２】
前記予め設定された走査パターンがジグザグパターンである場合、前記他の要素は、前記複数のジグザグ走査線のうちの他の１本のジグザグ走査線のみに含まれ、
前記予め設定された走査パターンが垂直パターンである場合、前記他の要素は、前記複数の垂直走査線のうちの他の１本の垂直走査線のみに含まれ、
前記予め設定された走査パターンが水平パターンである場合、前記他の要素は、前記複数の水平走査線のうちの他の１本の水平走査線のみに含まれる、請求項１に記載の方法。
【請求項３】
前記異なるマトリクスは、前に符号化されたマトリクスである、請求項１に記載の方法。
【請求項４】
前記マトリクスは顕著性マップを含み、
前記複数の要素の各要素は、ビデオ圧縮係数の有無を示す、請求項１に記載の方法。
【請求項５】
前記複数の要素のそれぞれは二進数であり、各二進数は、ビデオブロックの量子化変換係数がゼロであるか否かを示す、請求項１に記載の方法。
【請求項６】
前記他のジグザグ走査線は、前記ジグザグ走査パターンのうちの前に処理されたジグザグ走査線であり、
前記他の垂直走査線は、前記垂直走査パターンのうちの前に処理された垂直走査線であり、
前記他の水平走査線は、前記水平走査パターンのうちの前に処理された水平走査線である、請求項１に記載の方法。
【請求項７】
前記処理することは、前記コンテキストモデルを確率値にマッピングすることを含む、請求項１に記載の方法。
【請求項８】
前記ビデオデータは、ビデオピクチャブロックを示し、
前記方法は、
前記ビデオデータに変換を適用して、変換係数を導出すること、
前記変換係数を量子化すること
をさらに含み、
前記要素は、量子化された前記変換係数のうちの１つの値が０であるか否かを示す、請求項１に記載の方法。
【請求項９】
前記予め設定された走査パターンが垂直パターンである場合に前記コンテキストモデルを決定することは、
前記位置（０，１）における要素では、前記コンテキストモデルを、前記異なるマトリクスの前記位置（０，１）における対応する要素に対するコンテキストモデルとして決定することを含む、請求項１に記載の方法。
【請求項１０】
前記予め設定された走査パターンが水平パターンである場合に前記コンテキストモデルを決定することは、
前記位置（１，０）における要素では、前記コンテキストモデルを、前記異なるマトリクスの前記位置（１，０）における対応する要素に対するコンテキストモデルとして決定することを含む、請求項１に記載の方法。
【請求項１１】
第１の要素に関する前記決定すること及び前記処理することは、第２の要素に対する前記決定すること及び処理することと並列に実行され、
前記第１の要素および前記第２の要素は、前記複数のジグザグ走査線のうちの一つのジグザグ走査線、前記複数の垂直走査線のうちの一つの垂直走査線、および前記複数の水平走査線のうちの一つの水平走査線のうちの一つの走査線に配置される、請求項１に記載の方法。
【請求項１２】
要素のマトリクスにより表される顕著性マップを処理する方法であって、前記マトリクスは複数の走査線に沿って符号化され、各走査線は前記マトリクスの前記要素のうちの１つ又は複数を含み、
前記方法は、
前記複数の要素のマトリクスの各要素に使用すべきコンテキストモデルを決定することであって、
前記複数の要素のマトリクスは、高さ×幅の面積を有し、前記複数の要素の各要素は、位置（ｙ，ｘ）を有し、ここで、０≦ｙ≦（高さ−１）および０≦ｘ≦（幅−１）であり、
前記複数の走査線がジグザグパターンを形成する場合、
位置（０，０）における要素に使用すべきコンテキストモデルを、前記マトリクスの面積を有する異なるマトリクスの位置（０，０）における対応する要素に対するコンテキストモデルとして決定し、
位置（１，０）における要素に使用すべきコンテキストモデルを、前記異なるマトリクスの位置（１，０）における対応する要素に対するコンテキストモデルとして決定し、
位置（０，１）における要素に使用すべきコンテキストモデルを、前記異なるマトリクスの位置（０，１）における対応する要素に対するコンテキストモデルとして決定し、
前記複数の走査線が垂直パターンを形成する場合、
０≦ｋ≦（高さ−１）の各位置（ｋ，０）における要素に使用すべきコンテキストモデルを、前記マトリクスの面積を有する異なるマトリクスの位置（ｋ，０）における対応する要素に対するコンテキストモデルとして決定し、
前記複数の走査線が水平パターンを形成する場合、
０≦ｐ≦（幅−１）の各位置（０，ｐ）における要素に使用すべきコンテキストモデルを、前記マトリクスの面積を有する異なるマトリクスの位置（０，ｐ）における対応する要素に対するコンテキストモデルとして決定し、
前記複数の要素のマトリクスの他の要素では、前記マトリクスの一部分の要素に基づいて前記複数の走査線の第１の走査線の要素に使用すべきコンテキストモデルを決定し、前記一部分の要素は前記複数の走査線のうちの第２の走査線の要素からなり、前記第２の走査線は前記第１の走査線に隣接する
ことにより、前記複数の要素のマトリクスの各要素に使用すべきコンテキストモデルを決定すること、
それぞれ決定されるコンテキストモデルに基づいて各要素を処理することを備える、方法。
【請求項１３】
前記マトリクスの一部分の要素は、２つの要素、３つの要素、４つの要素、または５つの要素からなる、請求項１２に記載の方法。
【請求項１４】
前記コンテキストモデルを決定することは、
前記複数の走査線が垂直パターンを形成する場合に、前記位置（０，１）における要素に使用すべきコンテキストモデルを、前記異なるマトリクスの前記位置（０，１）における対応する要素に対するコンテキストモデルとして決定すること、
前記複数の走査線が水平パターンを形成する場合に、前記位置（１，０）における要素に使用すべきコンテキストモデルを、前記異なるマトリクスの前記位置（１，０）における対応する要素に対するコンテキストモデルとして決定することを含み、
前記異なるマトリクスは、前に符号化されたマトリクスである、請求項１２に記載の方法。
【請求項１５】
ビデオデータを処理するシステムであって、
プロセッサを備え、
前記プロセッサは、
複数の走査線を含む所定の走査パターンに沿って顕著性マップの要素を読み出すことであって、前記顕著性マップは、前記複数の要素のマトリクスを含み、前記マトリクスは、高さ×幅の面積を有し、各要素は、位置（ｙ，ｘ）を有し、ここで、０≦ｙ≦（高さ−１）および０≦ｘ≦（幅−１）であり、
前記複数の走査線がジグザグパターンを形成する場合、
位置（０，０）における要素に使用すべきコンテキストモデルを、前記マトリクスの面積を有する異なるマトリクスの位置（０，０）における対応する要素に対するコンテキストモデルとして決定し、
位置（１，０）における要素に使用すべきコンテキストモデルを、前記異なるマトリクスの位置（１，０）における対応する要素に対するコンテキストモデルとして決定し、
位置（０，１）における要素に使用すべきコンテキストモデルを、前記異なるマトリクスの位置（０，１）における対応する要素に対するコンテキストモデルとして決定し、
前記複数の走査線が垂直パターンを形成する場合、
０≦ｋ≦（高さ−１）の各位置（ｋ，０）における要素に使用すべきコンテキストモデルを、前記マトリクスの面積を有する異なるマトリクスの位置（ｋ，０）における対応する要素に対するコンテキストモデルとして決定し、
前記複数の走査線が水平パターンを形成する場合、
０≦ｐ≦（幅−１）の各位置（０，ｐ）における要素に使用すべきコンテキストモデルを、前記マトリクスの面積を有する異なるマトリクスの位置（０，ｐ）における対応する要素に対するコンテキストモデルとして決定し、
一組の他の要素に基づいて、前記複数の走査線のうちの走査線の他の要素のコンテキストモデルを決定することであって、前記一組の他の要素は、前記複数の走査線のうちの２本以下の他の走査線の要素を含む、前記決定すること、
それぞれ決定されるコンテキストモデルに基づいて各要素を処理すること
を含むステップを実施するための命令を実行する、システム。
【請求項１６】
前記顕著性マップは複数の二進数を含み、
各二進数は、前記ビデオデータのビデオ圧縮係数がゼロであるか否かを示す、請求項１５に記載のシステム。
【請求項１７】
前記一組の他の要素は他の１本の走査線からの要素からなる、請求項１５に記載のシステム。
【請求項１８】
前記一組の他の要素は、処理中の前記要素を有する前記走査線に平行する他の１本の走査線からの要素からなる、請求項１５に記載のシステム。
【請求項１９】
前記ビデオデータはビデオピクチャブロックを示し、
前記プロセッサは、
前記ビデオデータに変換を適用して、変換係数を導出すること、
前記変換係数を量子化すること、
を含むステップを実施するための命令をさらに実行し、
前記顕著性マップは、量子化された前記変換係数のそれぞれの値がゼロであるか否かを示す、請求項１５に記載のシステム。
【請求項２０】
前記処理ステップを実行するための前記命令は、前記要素を符号化する命令および前記要素を復号化する命令のうちの１つの命令をさらに含む、請求項１５に記載のシステム。
【請求項２１】
前記ステップは、
前記複数の走査線が垂直パターンを形成する場合に、前記位置（０，１）における要素に使用すべきコンテキストモデルを、前記異なるマトリクスの前記位置（０，１）における対応する要素に対するコンテキストモデルとして決定すること、
前記複数の走査線が水平パターンを形成する場合に、前記位置（１，０）における要素に使用すべきコンテキストモデルを、前記異なるマトリクスの前記位置（１，０）における対応する要素に対するコンテキストモデルとして決定することを含み、
前記異なるマトリクスは、前に符号化されたマトリクスである、請求項１５に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的にはビデオ画像処理に関し、より詳細にはビデオ画像データの符号化及び復号化に関する。
【背景技術】
【０００２】
ビデオ圧縮は、多くの演算にブロック処理を使用する。ブロック処理では、隣接ピクセルのブロックが符号化ユニットにグループ化され、圧縮演算はこのピクセルグループを１つのユニットとして処理して、符号化ユニット内の隣接セルの相関を利用する。ブロックに基づく処理は多くの場合、予測符号化及び変換符号化を含む。量子化を用いる変換符号化は、ソースピクチャから取得される変換ブロックの量子化により、ソースピクチャ内の変換ブロックに関連するデータが破棄されることが多く、それにより、帯域幅要件を下げるが、多くの場合、ソースピクチャから元の変換ブロックを再生成するに当たり品質損失も生じるため、一般に「不可逆的」であるデータ圧縮の一種である。
【０００３】
ＭＰＥＧ−４  ＡＶＣは、Ｈ．２６４としても知られ、ブロック処理で変換符号化を使用する、確立されているビデオ圧縮規格である。Ｈ．２６４では、ピクチャは１６×１６ピクセルのマクロブロック（ＭＢ）に分割される。各ＭＢは多くの場合、より小さなブロックにさらに分割される。ＭＢに等しいか、又はＭＢよりも小さなサイズのブロックは、ピクチャ内／ピクチャ間予測を使用して予測され、空間変換が量子化と共に予測残差に適用される。残差の量子化変換係数は一般に、エントロピー符号化方法（すなわち、可変長符号化又は算術符号化）を使用して符号化される。コンテキスト適応型二値算術符号化（Context Adaptive Binary Arithmetic Coding:ＣＡＢＡＣ）がＨ．２６４に導入されて、適応型二値算術符号化技法を１組のコンテキストモデル（Context model）に組み合わせることにより、実質的に可逆的圧縮効率が提供される。コンテキストモデル選択は、ＣＡＢＡＣにおいて、適応の程度及び冗長低減を提供する役割を果たす。Ｈ．２６４は、２Ｄブロックへの２種類の走査パターンを指定する。ジグザグ走査が、プログレッシブビデオ圧縮技法を用いて符号化されたピクチャに使用され、交互走査が、インタレースビデオ圧縮技法を用いて符号化されたピクチャに使用される。
【０００４】
Ｈ．２６４の後に続くものとして開発された国際ビデオ符号化規格であるＨＥＶＣ（High Efficiency Video Coding:高性能ビデオ符号化）は、変換ブロックサイズを１６×１６ピクセル及び３２×３２ピクセルに拡張して、高精細（ＨＤ）ビデオ符号化に役立つ。
【図面の簡単な説明】
【０００５】
【図１Ａ】本発明の様々な実施形態を使用し得るビデオシステムである。
【図１Ｂ】本発明の実施形態を実施し得るコンピュータシステムである。
【図２Ａ】本発明の実施形態による特定のビデオ符号化原理を示す。
【図２Ｂ】本発明の実施形態による特定のビデオ符号化原理を示す。
【図３Ａ】本発明の実施形態による特定のビデオ符号化原理を示す。
【図３Ｂ】本発明の実施形態による特定のビデオ符号化原理を示す。
【図４Ａ】本発明の実施形態による符号器及び復号器の可能な構造を示す。
【図４Ｂ】本発明の実施形態による符号器及び復号器の可能な構造を示す。
【図５Ａ】本発明の実施形態によるさらなるビデオ符号化原理を示す。
【図５Ｂ】本発明の実施形態によるさらなるビデオ符号化原理を示す。
【図６Ａ】本発明の様々な実施形態と併せて使用し得る可能な走査パターンを示す。
【図６Ｂ】本発明の様々な実施形態と併せて使用し得る可能な走査パターンを示す。
【図６Ｃ】本発明の様々な実施形態と併せて使用し得る可能な走査パターンを示す。
【図６Ｄ】本発明の様々な実施形態と併せて使用し得る可能な走査パターンを示す。
【図６Ｅ】本発明の様々な実施形態と併せて使用し得る可能な走査パターンを示す。
【図７Ａ】本発明の実施形態において使用し得る処理方法を示す。
【図７Ｂ】本発明の実施形態において使用し得る処理方法を示す。
【図８】本発明の実施形態において、隣接要素をいかに使用して、コンテキストモデルの決定に使用し得るかを示す。
【図９】本発明の実施形態において、隣接要素をいかに使用して、コンテキストモデルの決定に使用し得るかを示す。
【図１０】本発明の実施形態において、隣接要素をいかに使用して、コンテキストモデルの決定に使用し得るかを示す。
【図１１】本発明の実施形態において、隣接要素をいかに使用して、コンテキストモデルの決定に使用し得るかを示す。
【図１２】本発明の実施形態において、隣接要素をいかに使用して、コンテキストモデルの決定に使用し得るかを示す。
【図１３】本発明の実施形態において、隣接要素をいかに使用して、コンテキストモデルの決定に使用し得るかを示す。
【図１４】本発明の実施形態において、隣接要素をいかに使用して、コンテキストモデルの決定に使用し得るかを示す。
【図１５】本発明の実施形態において、隣接要素をいかに使用して、コンテキストモデルの決定に使用し得るかを示す。
【図１６】本発明の代替の実施形態を示す。
【図１７】本発明の代替の実施形態を示す。
【図１８】本発明の代替の実施形態を示す。
【図１９】本発明の代替の実施形態を示す。
【図２０】本発明の代替の実施形態を示す。
【図２１】本発明の代替の実施形態を示す。
【図２２】本発明の代替の実施形態を示す。
【図２３】本発明の代替の実施形態を示す。
【図２４】本発明の代替の実施形態を示す。
【図２５】本発明の代替の実施形態を示す。
【図２６】本発明の代替の実施形態を示す。
【図２７】本発明の代替の実施形態を示す。
【図２８】本発明の代替の実施形態を示す。
【図２９】本発明の代替の実施形態を示す。
【図３０】本発明の代替の実施形態を示す。
【図３１】本発明の代替の実施形態を示す。
【図３２】本発明の代替の実施形態を示す。
【図３３】本発明の代替の実施形態を示す。
【図３４】本発明の代替の実施形態を示す。
【図３５】本発明の代替の実施形態を示す。
【図３６】本発明の代替の実施形態を示す。
【図３７】本発明の代替の実施形態を示す。
【図３８】本発明の代替の実施形態を示す。
【図３９】本発明の代替の実施形態を示す。
【図４０】本発明の代替の実施形態を示す。
【図４１】本発明の代替の実施形態を示す。
【図４２】本発明の代替の実施形態を示す。
【図４３】本発明の代替の実施形態を示す。
【図４４】本発明の代替の実施形態を示す。
【図４５】本発明の代替の実施形態を示す。
【図４６】本発明の代替の実施形態を示す。
【図４７】本発明の代替の実施形態を示す。
【図４８】本発明の代替の実施形態を示す。
【図４９】本発明の代替の実施形態を示す。
【図５０】本発明の代替の実施形態を示す。
【図５１】本発明の代替の実施形態を示す。
【発明を実施するための形態】
【０００６】
詳細な説明
本発明の様々な実施形態について、添付図面を参照してより詳細に後述する。
しかし、添付図面が本発明の実施形態を示し、したがって、本発明の範囲の限定として見なされるべきではなく、他の等しく効果的な実施形態を認め得ることに留意されたい。
【０００７】
本発明の様々な実施形態及び特徴についてこれより説明する。本発明の一実施形態では、ビデオデータ係数のマトリクス（matrix）の顕著性マップ（significance map）は、コンテキスト適応型二値算術符号化（ＣＡＢＡＣ）を使用して符号化又は復号化される。より詳細には、量子化され変換された係数のマトリクスの顕著性マップは、（符号化又は復号化のいずれか一方で）走査パターンに沿って線（走査線と呼ばれる）毎に走査される。各走査線は走査パターンの垂直部分、水平部分、又は対角部分であり得る。特定の走査線内で処理される各要素のコンテキストモデルは、その走査線内にはなく、他の走査線内にある隣接要素の値に基づいて選ばれる。いくつかの実施形態では、隣接要素は他の２本以下の走査線内にある。他の実施形態では、近接要素は他の１本の走査線内のみにある。
【０００８】
同じ走査線内にある隣接要素に頼らないことにより、並列処理が促進される。例えば、第１の符号器はある走査線に沿って二進数を処理することができ、その間、第２の符号器は並列して、同じ走査線内の別の二進数を処理することができる。この同時処理は、２つの二進数のそれぞれのコンテキストモデルが相互依存していないことにより促進される。すなわち、第１の符号器により処理されている二進数は、コンテキストモデルの選択に関して、第２の符号器により処理されている二進数に依存しない。
【０００９】
本発明の別の実施形態では、変換領域内のブロックの場合、関連付けられた顕著性マップが、走査パターンを辿って符号化される。走査パターンは、現在のブロック、現在のスライス、現在のピクチャ、若しくは現在のシーケンスに対して事前に決定されるか、又は現在のブロック、現在のスライス、現在のピクチャ、若しくは現在のシーケンスに利用可能な少数の可能な走査パターンのうちの１つであることができる。
【００１０】
本発明のさらに別の実施形態では、顕著性マップ内の要素のコンテキストモデルは、変換領域内の要素の周波数位置に基づいて選択される。変換領域内の低周波数位置にある要素は、他の変換ブロック内にあるが、同じ周波数位置にある他の要素と同じコンテキストモデルを共有し得、その理由は、同じ周波数位置にあるこれらの要素間に高い相関がある可能性があるためである。変換領域内の高周波数位置にある要素は、同じ走査線に沿った隣接符号化要素を除き、同じブロック内の隣接する符号化要素の値（０又は１）に基づいて決定し得る。
【００１１】
本発明の実施形態を使用し得るビデオシステムの例についてこれより説明する。図中、機能ブロックとして示される要素をハードウェア、ソフトウェア、又はこれらの組み合わせで実施し得ることが理解される。さらに、本発明の実施形態は、パーソナルコンピュータ、スマートフォン、又はタブレットコンピュータ等の他のシステムで利用することもできる。
【００１２】
図１Ａを参照すると、全体的に１０と示されるビデオシステムは、ケーブルテレビネットワークのヘッドエンド１００を含む。ヘッドエンド１００は、ビデオコンテンツを近隣区域１２９、１３０、及び１３１に配信するように構成される。ヘッドエンド１００は、ヘッドエンド階層内で動作し得、階層内で高いヘッドエンドほど、一般に、大きな機能を有する。ヘッドエンド１００は、衛星放送アンテナ１１２に通信可能にリンクされ、衛星放送アンテナ１１２から非ローカル番組のビデオ信号を受信する。ヘッドエンド１００はローカル局１１４にも通信可能にリンクされ、ローカル局１１４はローカル番組をヘッドエンド１００に配信する。ヘッドエンド１００は、衛星放送アンテナ１１２から受信されるビデオ信号を復号化する復号器１０４、ローカル局１１４からローカル番組を受信するオフエア受信器１０６、ヘッドエンド１００の様々な構成要素間でデータトラフィックをルーティングする切り替え器（switcher）１０２、顧客に配信するためにビデオ信号を符号化する符号器１１６、顧客に配信するために信号を変調する変調器１１８、及び様々な信号を結合して単一のマルチチャネル伝送にする結合器１２０を含む。
【００１３】
ヘッドエンド１００は、ハイブリッドファイバケーブル（ＨＦＣ）ネットワーク１２２にも通信可能にリンクされる。ＨＦＣネットワーク１２２は複数のノード１２４、１２６、及び１２８に通信可能にリンクされる。各ノード１２４、１２６、及び１２８は、近隣区域１２９、１３０、及び１３１のうちの１つに同軸ケーブルによりリンクされ、ケーブルテレビ信号をその近隣地区に配信する。図１Ａの複数の近隣地区１３０の１つはより詳細に示される。近隣地区１３０は、図１Ａに示される家１３２を含むいくつかの住宅を含む。家１３２内には、ビデオディスプレイ１３６に通信可能にリンクされたセットトップボックス１３４がある。セットトップボックス１３４は、第１の復号器１３８及び第２の復号器１４０を含む。第１及び第２の復号器１３８及び１４０は、ユーザインタフェース１４２及び大容量記憶装置１４４に通信可能にリンクされる。ユーザインタフェース１４２はビデオディスプレイ１３６に通信可能にリンクされる。
【００１４】
動作中、ヘッドエンド１００は、ローカル及び非ローカル番組のビデオ信号を衛星放送アンテナ１１２及びローカル局１１４から受信する。非ローカル番組ビデオ信号は、デジタルビデオストリームの形態で受信され、その一方で、ローカル番組ビデオ信号はアナログビデオストリームとして受信される。いくつかの実施形態では、ローカル番組はデジタルビデオストリームとして受信することもできる。デジタルビデオストリームは復号器１０４により復号化され、顧客の要求に応答して切り替え器１０２に送信される。ヘッドエンド１００は、大容量記憶装置１１０に通信可能にリンクされたサーバ１０８も含む。大容量記憶装置１１０は、ビデオオンデマンド（ＶＯＤ）を含む様々な種類のビデオコンテンツを記憶し、サーバ１０８はビデオコンテンツを検索し、スイッチャー１０２に提供する。切り替え器１０２は、ローカル番組を変調器１１８に直接ルーティングし、変調器１１８はローカル番組を変調し、非ローカル番組（任意のＶＯＤを含む）を符号器１１６にルーティングする。符号器１１６は、非ローカル番組をデジタル符号化する。次に、符号化非ローカル番組は変調器１１８に送信される。結合器１２０は、変調アナログビデオデータ及び変調デジタルビデオデータを受信し、ビデオデータを結合し、マルチ無線周波数（ＲＦ）チャネルを介してＨＦＣネットワーク１２２に送信する。
【００１５】
ＨＦＣネットワーク１２２は、結合ビデオデータをノード１２４、１２６、及び１２８に送信し、これらのノードはデータを各近隣地区１２９、１３０、及び１３１に再送信する。家１３２はこのビデオデータをセットトップボックス１３４、より詳細には第１の復号器１３８及び第２の復号器１４０において受信する。第１及び第２の復号器１３８及び１４０は、ビデオデータのデジタル部分を復号化し、復号化データをユーザインタフェース１４２に提供し、次に、ユーザインタフェース１４２は復号化データをビデオディスプレイ１３６に提供する。
【００１６】
図１Ａの符号器１１６並びに復号器１３８及び１４０（並びに本明細書に記載される他の全てのステップ及び機能）は、メモリ又は別の種類の記憶装置等のコンピュータ可読記憶装置に記憶されるコンピュータ可読命令を含むコンピュータコードとして実施し得る。コンピュータコードは、特定用途向け集積回路（ＡＳＩＣ）又は他の種類の回路等のプロセッサによりコンピュータシステムで実行される。例えば、符号器１１６を実施するコンピュータコードは、ヘッドエンド１００に存在するコンピュータシステム（サーバ等）で実行し得る。他方、復号器１３８及び１４０のコンピュータコードは、一種のコンピュータシステムを構成するセットトップボックス１３４で実行し得る。コードは、ソースコード、オブジェクトコード、実行可能コード、又は他の形式のプログラム命令から構成されるソフトウェアプログラムとして存在し得る。
【００１７】
図１Ｂは、符号器１１６並びに復号器１３８及び１４０のコンピュータコードを実行し得るコンピュータシステムの例を示す。コンピュータシステムは、全体的に４００と示され、本明細書に記載される方法、機能、及び他のステップの幾つか又は全てを実行するソフトウェア命令を実施又は実行し得るプロセッサ４０１又は処理回路を含む。プロセッサ４０１からのコマンド及びデータは、通信バス４０３を介して通信される。コンピュータシステム４００は、ランダムアクセスメモリ（ＲＡＭ）等のコンピュータ可読記憶装置４０２も含み、コンピュータ可読記憶装置４０２に、実行中、プロセッサ４０１のソフトウェア及びデータが存在し得る。記憶装置４０２は不揮発性データ記憶装置も含み得る。コンピュータシステム４００は、ネットワークに接続するためのネットワークインタフェース４０４も含み得る。他の既知の電子構成要素を追加してもよく、又はコンピュータシステム４００に示される構成要素と置換してもよい。コンピュータシステム４００は、ヘッドエンド１００に存在し、符号器１１６を実行してもよく、又はセットトップボックス１３４内に実施して、復号器１３８及び１４０を実行してもよい。さらに、コンピュータシステム４００は、ヘッドエンド１００及びセットトップボックス１３４以外の場所に存在してもよく、小型化して、スマートフォン又はタブレットコンピュータに一体化してもよい。
【００１８】
本発明の実施形態において、ビデオデータが符号器１１６並びに復号器１３８及び１４０によりいかに符号化され復号化されるかの高水準な説明をこれより提供する。この実施形態では、符号器及び復号器は高性能ビデオ符号化（ＨＥＶＣ）方法に従って動作する。ＨＥＶＣは、ブロックに基づくハイブリッド空間及び時間予測符号化方法である。ＨＥＶＣでは、入力ピクチャはまず、図２Ａに示されるように、ＬＣＵ（largest coding units:最大符号化ユニット）と呼ばれる正方形ブロックに分割される。基本符号化ユニットが１６×１６ピクセルのマクロブロックである他のビデオ符号化規格と異なり、ＨＥＶＣでは、ＬＣＵは１２８×１２８ピクセルと大きくすることができる。ＬＣＵは、ＣＵ（符号化ユニット）と呼ばれる４つの正方形ブロックに分割することができ、ＣＵはＬＣＵのサイズの１／４である。各ＣＵは４つのより小さなＣＵにさらに分けることができ、このＣＵは元のＣＵのサイズの１／４である。特定の基準が満たされるまで、分割プロセスを繰り返すことができる。図３Ａは、ＣＵに分割されたＬＣＵの例を示す。
【００１９】
特定のＬＣＵがＣＵにいかに分割されるかは、四分木（quadtree）で表すことができる。四分木の各ノードにおいて、ノードがサブノードにさらに分割される場合、フラグが「１」に設定される。その他の場合、フラグは「０」に設定を取り消される。例えば、図３ＡのＬＣＵ区画は図３Ｂの四分木で表すことができる。これらの「分割フラグ」はまとめて、スキップモードフラグ、統合モードフラグ、及び予測ユニット（predictive unit:ＰＵ）モードフラグを含むビデオストリーム内の他のフラグと共に符号化される。図３Ｂの四分木の場合、分割フラグ１０１００が、その他のフラグと共にオーバーヘッドとして符号化される。
【００２０】
各ＣＵは予測ユニット（ＰＵ）にさらに分割することができる。したがって、四分木の各リーフにおいて、最後のＣＵ  ２Ｎ×２Ｎは、図２Ｂに示されるように、４つの可能なパターン（Ｎ×Ｎ、Ｎ×２Ｎ、２Ｎ×Ｎ、及び２Ｎ×２Ｎ）のうちの１つを保有することができる。ＣＵは、空間的又は時間的に予測符号化することができる。ＣＵがイントラモードで符号化される場合、ＣＵの各ＰＵはそれ自体の空間予測方向を有することができる。ＣＵが中間モード（inter mode）で符号化された場合、ＣＵの各ＰＵはそれ自体の動きベクトル及び関連付けられた参照ピクチャを有することができる。
【００２１】
各ＣＵは、ブロック変換演算の適用により変換ユニット（transform unit:ＴＵ）に分割することもできる。ブロック変換演算はブロック内のピクセルを非相関化し、ブロックエネルギーを変換ブロックの低次係数にコンパクト化する傾向を有する。しかし、１つのみの変換８×８又は４×４がＭＢに適用される他の方法とは異なり、本実施形態では、図５Ａに示されるように、サイズの異なる１組のブロック変換をＣＵに適用し得、ここでは、左のブロックがＰＵに区画されるＣＵであり、右のブロックは関連付けられた変換ユニット（ＴＵ）の組である。ＣＵ内の各ブロック変換のサイズ及び位置は、ＲＱＴと呼ばれる別個の四分木により記述される。図５Ｂは、図５Ａの例におけるＣＵのＴＵの四分木表現を示す。この例では、１１０００が符号化され、オーバーヘッドの部分として送信される。
【００２２】
任意の所与のＣＵのＴＵ及びＰＵは異なる目的で使用し得る。ＴＵは通常、変換、量子化、及び符号化演算に使用され、その一方で、ＰＵは通常、空間及び時間予測に使用される。所与のＣＵの場合、ＰＵの数とＴＵの数との間に直接的な関係がある必要はない。
【００２３】
符号器１１６（図１Ａ）は、本発明の実施形態によれば、図４Ａに示されるいくつかの機能モジュールで構成される。これらのモジュールはハードウェア、ソフトウェア、又はこれらの２つの任意の組み合わせで実施し得る。現在のＰＵ、ｘが与えられる場合、予測ＰＵ、ｘ’がまず、空間予測又は時間予測を通して得られる。この空間又は時間予測は空間予測モジュール１２９又は時間予測モジュール１３０のそれぞれにより実行される。
【００２４】
水平、垂直、４５度対角、１３５度対角、ＤＣ、平坦等を含む、空間予測モジュール１２９がＰＵ毎に実行することができる幾つかの可能な空間予測方向がある。一実施形態では、４×４、８×８、１６×１６、３２×３２、及び６４×６４ブロックのルマ（Ｌｕｍａ）イントラ予測モードの数はそれぞれ、１８、３５、３５、３５、及び４である。ルマイントラモードを含め、ＩｎｔｒａＦｒｏｍＬｕｍａと呼ばれる追加のモードをクロマ（Ｃｈｒｏｍａ）イントラ予測モードに使用し得る。シンタックスは、ＰＵ毎の空間予測方向を示す。
【００２５】
符号器１１６（図１Ａ）は、動き予測演算を通して時間的予測を実行する。特に、時間予測モジュール１３０（図４Ａ）は、参照ピクチャ上で現在ＰＵの最適適合予測を検索する。最適適合予測は、動きベクトル（motion vector:ＭＶ）及び関連付けられた参照ピクチャ（ｒｅｆＩｄｘ）により記述される。Ｂピクチャ内のＰＵは最高で２つのＭＶを有することができる。ＭＶ及びｒｅｆＩｄｘの両方は、ビットストリーム内のシンタックスの一部である。
【００２６】
次に、予測ＰＵは現在ＰＵから差し引かれ、剰余ＰＵ，ｅが生成される。剰余ＰＵ，ｅは次に、一度に１つの変換ユニット（ＴＵ）ずつ変換モジュール１１６により変換され、変換領域内の剰余ＰＵ，Ｅが生成される。このタスクを達成するために、変換モジュール１１６は正方形又は非正方形ブロック変換のいずれかを使用する。
【００２７】
図４Ａを再び参照すると、変換係数Ｅは量子化モジュール１１８により量子化され、高精度変換係数を有限数の可能な値に変換する。量子化係数は次に、エントロピー符号化モジュール１２０によりエントロピー符号化され、最終的な圧縮ビットが生成される。エントロピー符号化モジュール１２０により実行される特定のステップについてより詳細に以下において考察する。
【００２８】
時間及び空間予測を促進するために、符号器１１６も量子化変換係数Ｅをとり、逆量子化モジュール１２２を用いて逆量子化し、Ｅ’という逆量子化変換係数を生成する。逆量子化変換係数Ｅ’は次に、逆変換モジュール１２４により逆変換されて、再構築剰余ＰＵ，ｅ’を生成する。次に、再構築剰余ＰＵ，ｅ’は、空間又は時間のいずれかの対応する予測ｘ’に加算されて、再構築ＰＵ，ｘ’’を形成する。
【００２９】
なお図４Ａを参照すると、非ブロック化フィルタ演算が再構築ＰＵ，ｘ’’に対して実行され、まず、ブロック化アーチファクトを低減する。復号化ピクチャへの非ブロック化フィルタプロセスの完了後、サンプル適応オフセットプロセスが条件により実行され、それにより、再構築ピクセルと元のピクセルとのピクセル値オフセットを補償する。適合型ループフィルタ関数が条件によりループフィルタモジュール１２６により再構築ＰＵに対して実行され、これにより、入力ピクチャと出力ピクチャとの符号化歪みが最小化される。再構築ピクチャが参照ピクチャである場合、それらの再構築ピクチャは、将来の時間予測のために参照バッファ１２８に記憶される。
【００３０】
本発明の実施形態では、イントラピクチャ（Ｉピクチャ等）及びインターピクチャ（Ｐピクチャ又はＢピクチャ等）が符号器１１６（図１Ａ）によりサポートされる。イントラピクチャは、他のピクチャを参照せずに符号化される。したがって、空間予測がイントラピクチャ内部のＣＵ／ＰＵに使用される。イントラピクチャは、復号化を開始することができる可能なポイントを提供する。他方、インターピクチャは高圧縮を目的とする。インターピクチャはイントラ予測及びインター予測の両方をサポートする。イントラピクチャ内のＣＵ／ＰＵは空間又は時間のいずれかで予測符号化される。時間参照は、前に符号化されたイントラ又はインターピクチャである。
【００３１】
本発明の実施形態によるエントロピー符号化モジュール１２０（図４Ａ）の動作について、より詳細にこれより説明する。エントロピー符号化モジュール１２０は、量子化モジュール１１８から受信する係数の量子化マトリクスをとり、その量子化マトリクスを使用して、全ての量子化係数の符号を表す符号マトリクスを生成するとともに、顕著性マップを生成する。顕著性マップは、各要素が量子化係数マトリクス内の非ゼロ量子化係数の位置を指定するマトリクスである。特に、量子化された２Ｄ変換マトリクスがあり、位置（ｙ，ｘ）における量子化係数の値がゼロではない場合、それは顕著とみなされ、「１」が関連付けられた顕著性マップ内の位置（ｙ，ｘ）に割り当てられる。その他の場合、「０」が顕著性マップ内の位置（ｙ，ｘ）に割り当てられる。
【００３２】
エントロピー符号化モジュール１２０は、顕著性マップを作成すると、顕著性マップを符号化する。一実施形態では、これは、コンテキスト適応型二値算術符号化（ＣＡＢＡＣ）技法を使用して達成される。そうするに当たり、エントロピー符号化モジュール１２０は、走査線に沿って顕著性マップを走査し、顕著性マップ内のエントリ毎に、符号化モジュールは、そのエントリのコンテキストモデルを選ぶ。次に、エントロピー符号化モジュール１２０は、選ばれたコンテキストモデルに基づいてエントリを符号化する。すなわち、各エントリには、使用されているコンテキストモデル（数学的確率モデル）に基づいて確率が割り当てられる。確率は、顕著性マップ全体が符号化されるまで蓄積される。
【００３３】
エントロピー符号化モジュール１２０により出力される値並びにエントロピー符号化符号、顕著性マップ、及びゼロではない係数は、符号器１１６（図１Ａ）によりビットストリームに挿入される。このビットストリームは、ＨＦＣネットワーク１２２を介して復号器１３８及び１４０に送信される。復号器１３８及び１４０（図１Ａ）は、ビットストリームを受信する場合、図４Ｂに示される機能を実行する。符号器１３８のエントロピー復号化モジュール１４６は、符号値、顕著性マップ、及びゼロではない係数を復号化して、量子化変換係数を再生成する。顕著性マップを復号化するに当たり、エントロピー復号化モジュール１２０は、エントロピー符号化モジュール１２０と併せて説明された手順の逆を実行する−走査線で構成された走査パターンに沿って顕著性マップを復号化する。次に、エントロピー復号化モジュール１４６は、係数を逆量子化モジュール１４７に提供し、逆量子化モジュール１４７は係数マトリクスを逆量子化し、逆量子化変換係数Ｅ’を生成する。逆量子化モジュール１４７は、逆量子化係数Ｅ’を逆変換モジュール１４９に提供する。逆変換モジュール１４９は、逆変換演算を係数Ｅ’に対して実行して、再構築剰余ＰＵ，ｅ’を生成する。フィルタリング及び空間予測が、図４Ａと併せて説明されたように適用される。
【００３４】
上述したように、符号器側でのビデオピクチャの圧縮ビットストリームへの変換及び復号器側でのビットストリームの元のビデオピクチャへの変換は、マルチステッププロセスである。本明細書において開示される本発明の様々な実施形態は一般に、顕著性マップが符号化され復号化されるプロセスの部分に向けられる。
【００３５】
本発明の実施形態による並列処理を達成するために、顕著性マップの要素のうちの少なくとも１つのコンテキストモデルは、同じ走査線に沿った要素を除き、隣接要素の値に基づいて選ばれる。このようにして、同じ走査線に沿った要素間に依存性がなくなる。
【００３６】
図６Ａ〜図６Ｅを参照すると、符号器１１６（図１Ａ）は、走査パターンに沿って線毎に顕著性マップ６００を処理する。これらの各図では、走査パターンは一連の矢印付き線（arrow-headed line）で表され、各線は走査パターン内の走査線を表す。走査パターンは、例えば、図６Ａに示されるジグザグ走査（zigzag scan）等のジグザグ走査、図６Ｂに示される対角左下走査等の対角左下走査、図６Ｃに示される対角右上走査等の対角右上走査、図６Ｄに示される垂直走査等の垂直走査、又は図６Ｅに示される水平走査等の水平走査であり得る。図６Ａ〜図６Ｅに示される走査パターンは、逆に実行してもよく、したがって、パターンは逆の角から開始され、矢印の方向は逆になる。
【００３７】
各例では、要素６０２及び６０４は走査パターン内で同じ走査線に沿うが、互いに並列処理することができる。これは、これらの２つの要素のそれぞれのコンテキストモデルが他方の要素の値に依存しないためである。換言すれば、第１の要素６０２のコンテキストモデルは、第２の要素６０４の値に依存しない。
【００３８】
これより、より具体的な例を提供する。（図６Ａ、図６Ｂ、又は図６Ｃのように）顕著性マップの要素が対角走査パターンで処理される場合、図７Ａの手順を使用し得る。図７Ａは、顕著性マップの１組の処理規則のマトリクス表現である。これらの規則は以下のように表現し得、「高さ」は顕著性マップマトリクスの高さ（ｙ軸に沿った要素の数）であり、「幅」は顕著性マップマトリクスの幅（ｘ軸に沿った要素の数）である。
【００３９】
規則Ａ：位置（０，０）、（０，１）、又は（１，０）における要素の場合、符号器又は復号器は一意のコンテキストモデルを割り当てる。すなわち、現在ブロック内の位置（０，０）、（０，１）、又は（１，０）における要素は、同じ位置（０，０）、（０，１）、又は（１，０）における他のブロックの顕著性マップ内の他の要素と同じコンテキストモデルを共有する。
【００４０】
規則Ｂ：位置（０，ｘ＞１）における要素では、符号器又は復号器は、位置（０，ｘ−１）、（０，ｘ−２）、及び（１，ｘ−２）における隣接要素の値（０又は１）に基づいて、コンテキストモデルを選ぶ。
【００４１】
規則Ｃ：位置（ｙ＞１，０）における要素では、符号器又は復号器は、位置（ｙ−１，０）、（ｙ−２，０）、及び（ｙ−２，１）における隣接要素の値（０又は１）に基づいて、コンテキストモデルを選ぶ。
【００４２】
規則Ｄ：位置（ｙ＞０，ｘ＞０）における要素では、符号器又は復号器は、位置（ｙ−１，ｘ−１）、（ｙ−１，ｘ）、及び（ｙ，ｘ−１）における隣接要素の値（０又は１）に基づいて、コンテキストモデルを選ぶ。
【００４３】
規則Ｅ：位置（ｙ＞０，ｘ＞０）における要素では、符号器又は復号器は、ｘ＞１の場合、（ｙ−１，ｘ−２）及び（ｙ，ｘ−２）における隣接要素の値（０又は１）に基づいて、コンテキストモデルを選ぶ。
【００４４】
規則Ｆ：位置（ｙ＞０，ｘ＞０）における要素では、符号器又は復号器は、ｘが１よりも大きく、ｙが高さ−１よりも小さい場合、（ｙ＋１，ｘ−２）における隣接要素の値（０又は１）に基づいて、コンテキストモデルを選ぶ。
【００４５】
規則Ｇ：位置（ｙ＞０，ｘ＞０）における要素では、符号器又は復号器は、ｙが１よりも大きい場合、（ｙ−２，ｘ−１）及び（ｙ−２，ｘ）における隣接要素の値（０又は１）に基づいて、コンテキストモデルを選ぶ。
【００４６】
規則Ｈ：位置（ｙ＞０，ｘ＞０）における要素では、符号器又は復号器は、ｙが１よりも大きく、ｘが幅−１よりも小さい場合、（ｙ−２，ｘ＋１）における隣接要素の値（０又は１）に基づいて、コンテキストモデルを選ぶ。
【００４７】
２進法の「１」のインスタンスの総数が計算され、符号器又は復号器は、その数に対応するコンテキストモデルを使用する。例えば、規則Ｄ、Ｅ、及びＦが要素（ｙ，ｘ）に適用される場合、符号器又は復号器は、（ｙ−１，ｘ−１）、（ｙ−１，ｘ）、（ｙ，ｘ−１）、（ｙ−１，ｘ−２）、（ｙ，ｘ−２）、及び（ｙ＋１，ｘ−２）での隣接要素の中から２進法の「１」のインスタンス数を計算する。これらの隣接要素の中に３つの２進法の「１」インスタンスがある場合、コンテキストモデル番号３を使用して、処理中の要素を符号化又は復号化する。各コンテキストモデルは、顕著性マップ内の要素に異なる確率をもたらし得る。
【００４８】
図７Ｂのフローチャートを参照して、本発明の実施形態による上の規則Ａ〜Ｈの適用についてこれより説明する。ステップ７０２において、符号器又は復号器は、要素が位置（０，０）、（０，１）、又は（１，０）にあるか否かを判断する。それらの位置にある場合、プロセスはステップ７０４に続き、そこで、符号器又は復号器は、同じサイズの他の変換ユニット（ＴＵ）内の同じ位置にある要素と同じコンテキストモデルを使用する。例えば、同じサイズの前のＴＵ内の位置（０，１）にある要素がコンテキストモデル１を使用する場合、位置（０，１）での要素はコンテキストモデル１を使用する。
【００４９】
ステップ７０６において、符号器又は復号器は、要素が位置（０，ｘ＞１）にあるか否かを判断する。そうである場合、プロセスはステップ７０８に続き、符号器又は復号器は、位置（０，ｘ−１）、（０，ｘ−２）、及び（１，ｘ−２）における隣接要素の値（０又は１）に基づいてコンテキストモデルを選択する。その他の場合、プロセスはステップ７１０に移り、符号器又は復号器は、要素が位置（ｙ＞１，０）にあるか否かを判断する。そうである場合、プロセスはステップ７１２に移り、符号器又は復号器は、隣接要素（ｙ−１，０）、（ｙ−２，０）、及び（ｙ−２，１）に基づいて要素のコンテキストモデルを選択する。
【００５０】
ステップ７１４において、符号器又は復号器は、要素が位置（ｙ＞０，ｘ＞０）にあるか否かを判断する。その位置にある場合、プロセスはステップ７１６に移り、符号器又は復号器は、位置（ｙ−１，ｘ−１）、（ｙ−１，ｘ）、及び（ｙ，ｘ−１）にある要素の値に基づいてその要素のコンテキストモデルを選択する。その位置にない場合、プロセスはステップ７１８に移り、符号器又は復号器は、要素のｘ座標が１よりも大きいか否かを判断する。１よりも大きい場合、プロセスはステップ７２０に進み、符号器又は復号器はさらに、位置（ｙ−１，ｘ−２）及び（ｙ，ｘ−２）における要素の値を考慮する。１よりも大きくない場合、プロセスはステップ７２６に移る。
【００５１】
ステップ７２２において、符号器又は復号器は、ｙが顕著性マップの高さから１を引いたものよりも小さいか否かを判断する。ステップ７２４において、小さい場合、符号器又は復号器はさらに、位置（ｙ＋１，ｘ−２）にある要素の値を考慮する。ステップ７２６において、符号器又は復号器はｙが１よりも大きいか否かを判断する。大きい場合、符号器又は復号器はさらに、ステップ７２８において、位置（ｙ−２，ｘ−１）及び（ｙ−２，ｘ）にある要素の値を考慮する。ステップ７３０において、符号器又は復号器は、ｘが顕著性マップの幅から１を引いたものよりも小さいか否かを判断する。小さい場合、符号器又は復号器はさらに、位置（ｙ−２，ｘ＋１）にある要素の値を考慮する。
【００５２】
これより図８〜図１５を参照して、上述した処理方式を使用して、顕著性マップの複数の要素をいかに並列処理することができるかの例をこれより示す。この例では、２つの復号器１３８及び１４０（図１Ａ）（第１及び第２の復号器と呼ぶ）が顕著性マップ（すなわち、図８〜図１５の仮説的顕著性マップ）を復号化していると仮定する。
【００５３】
第１の復号器及び第２の復号器は、顕著性マップを対角左下走査パス（図６Ｂに示される走査パスのような）で復号化する。上で概説した規則Ａに従い、第１の復号器は、前に復号化された顕著性マップ内の位置（０，０）にある要素の復号化に適用されたものと同じコンテキストモデルを位置（０，０）にある要素に適用する。第２の復号器は、前に復号化された顕著性マップ内の位置（０，１）にある要素の復号化に適用されたものと同じコンテキストモデルを位置（０，１）にある要素に適用する。第２の復号器の動作と並列して、第１の復号器は、前に復号化された顕著性マップ内の位置（１，０）にある要素の復号化に適用されたものと同じコンテキストモデルを位置（１，０）にある要素に適用する。
【００５４】
第１の復号器は、位置（０，０）、（０，１）、及び（１，０）における要素の値に基づいて、位置（１，１）にある要素のコンテキストモデルを選択する。第２の復号器は同時に、同じ要素群−（０，０）、（０，１）、及び（１，０）を使用することにより、位置（２，０）にある要素のコンテキストモデルを決定する。このプロセスは、走査パターンに沿って各走査線で続けられる。以下の表１は、復号化されている顕著性マップの要素の座標を、使用されるコンテキストモデルの決定に使用される隣接要素、隣接要素群を示す図及び参照符号、並びに使用される規則（上の規則Ａ〜Ｈ）と共に列挙する。第１の復号器及び第２の復号器により並列に符号化することができる複数の要素の例が、１列目に示される。簡潔にするために、顕著性マップのあらゆる要素が復号化されているものとして示されるわけではない。表１に示される要素は単なる例が意図される。
【００５５】
【表１】
0005787116.tif 000002
図７Ａ及び図７Ｂ並びにそれらに付随する上記説明は、同じ走査線内にある要素に頼らないコンテキストモデルを選ぶことにより、顕著性マップをいかに符号化又は復号化することができるかの例を示す。しかし、本発明の他の実施形態により、顕著性マップの符号化及び復号化を行う多くの他の可能な方法がある。以下の例１〜１８はこれらの他の方法のうちのいくつかを示す。
例１
この例は、最高で５つの符号化隣接要素を利用するジグザグ走査パターンの場合のコンテキストモデル選択を示す。特に、高さ×幅の顕著性マップ（図１６）を考えると、顕著性マップ内の要素のコンテキストモデルは以下のように決定される。
【００５６】
位置（０，０）、（０，１）、又は（１，０）における要素の場合、一意のコンテキストモデルが割り当てられる。すなわち、現在ブロック内の位置（０，０）、（０，１）、又は（１，０）における要素は、同じ位置（０，０）、（０，１）、又は（１，０）における他のブロック内の他の要素と同じコンテキストモデルを共有する（図１７のステップ１７００及び１７０２）。
【００５７】
位置（０，ｘ＞１）における要素の場合、コンテキストモデルは、位置（０，ｘ−１）及び（０，ｘ−２）における隣接要素の値（０又は１）に基づいて選択される（図１７のステップ１７０４及び１７０６）。
【００５８】
位置（ｙ＞１，０）における要素の場合、コンテキストモデルは、位置（ｙ−１，０）及び（ｙ−２，０）における隣接要素の値（０又は１）に基づいて選択される（図１７のステップ１７０８及び１７１０）。
【００５９】
位置（ｙ＞０，ｘ＞０）における要素の場合、コンテキストモデルは、位置（ｙ−１，ｘ−１）及び（ｙ−１，ｘ）及び（ｙ，ｘ−１）における隣接要素の値（０又は１）に基づいて選択され（図１７のステップ１７１２及び１７１４）、
ｘが１よりも大きく、且つｙが高さ−１よりも小さい場合には、（ｙ＋１，ｘ−２）における隣接要素の値（０又は１）にも基づいて選択され（図１７のステップ１７１６及び１７１８）、
ｙが１よりも大きく、且つｘが幅−１よりも小さい場合には、（ｙ−２，ｘ＋１）における隣接要素の値（０又は１）にも基づいて選択される（図１７のステップ１７２０及び１７２２）。
【００６０】
この例において提供される方式を使用することにより、記憶する必要がある係数は２本の隣接走査線内の係数のみである。
例２
この例は、最高で４つの符号化隣接要素を利用するジグザグ走査パターンの場合のコンテキストモデル選択を示す。特に、高さ×幅の顕著性マップ（図１８）を考えると、顕著性マップ内の要素のコンテキストモデルは以下のように決定される。
【００６１】
位置（０，０）、（０，１）、又は（１，０）における要素の場合、一意のコンテキストモデルが割り当てられる。すなわち、現在ブロック内の位置（０，０）、（０，１）、又は（１，０）における要素は、同じ位置（０，０）、（０，１）、又は（１，０）における他のブロック内の他の要素と同じコンテキストモデルを共有する（図１９のステップ１９００及び１９０２）。
【００６２】
位置（０，ｘ＞１）における要素の場合、コンテキストモデルは、位置（０，ｘ−１）及び（０，ｘ−２）における隣接要素の値（０又は１）に基づいて選択される（図１９のステップ１９０４及び１９０６）。
【００６３】
位置（ｙ＞１，０）における要素の場合、コンテキストモデルは、位置（ｙ−１，０）及び（ｙ−２，０）における隣接要素の値（０又は１）に基づいて選択される（図１９のステップ１９０８及び１９１０）。
【００６４】
位置（ｙ＞０，ｘ＞０）における要素の場合、コンテキストモデルは、位置（ｙ−１，ｘ）及び（ｙ，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図１９のステップ１９１２及び１９１４）。
【００６５】
位置（ｙ＞０，ｘ＞０）における要素の場合、コンテキストモデルは、ｘが１よりも大きく、且つｙが高さ−１よりも小さい場合には、（ｙ＋１，ｘ−２）における隣接要素の値（０又は１）に基づいて選択される（図１９のステップ１９１６及び１９１８）。
【００６６】
位置（ｙ＞０，ｘ＞０）における要素の場合、コンテキストモデルは、ｙが１よりも大きく、且つｘが幅−１よりも小さい場合には、（ｙ−２，ｘ＋１）における隣接要素の値（０又は１）に基づいて選択される（図１９のステップ１９２０及び１９２２）。
【００６７】
この例において提供される方式を使用することにより、記憶する必要がある係数は１本の隣接走査線内の係数のみである。
例３
この例は、最高で４つの符号化隣接要素を利用するジグザグ走査パターンの場合のコンテキストモデル選択を示す。特に、高さ×幅の顕著性マップ（図２０）を考えると、顕著性マップ内の要素のコンテキストモデルは以下のように決定される。
【００６８】
位置（０，０）、（０，１）、又は（１，０）における要素の場合、一意のコンテキストモデルが割り当てられる。すなわち、現在ブロック内の位置（０，０）、（０，１）、又は（１，０）における要素は、同じ位置（０，０）、（０，１）、又は（１，０）における他のブロック内の他の要素と同じコンテキストモデルを共有する（図２１のステップ２１００及び２１０２）。
【００６９】
位置（０，ｘ＞１）における要素の場合、コンテキストモデルは、位置（０，ｘ−１）及び（１，ｘ−２）における隣接要素の値（０又は１）に基づいて選択される（図２１のステップ２１０４及び２１０６）。
【００７０】
位置（ｙ＞１，０）における要素の場合、コンテキストモデルは、位置（ｙ−１，０）及び（ｙ−２，１）における隣接要素の値（０又は１）に基づいて選択される（図２１のステップ２１０８及び２１１０）。
【００７１】
位置（ｙ＞０，ｘ＞０）における要素の場合、コンテキストモデルは、位置（ｙ−１，ｘ）及び（ｙ，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図２１のステップ２１１２及び２１１４）。
【００７２】
位置（ｙ＞０，ｘ＞０）における要素の場合、コンテキストモデルは、ｘが１よりも大きく、且つｙが高さ−１よりも小さい場合には、（ｙ＋１，ｘ−２）における隣接要素の値（０又は１）に基づいて選択される（図２１のステップ２１１６及び２１１８）。
【００７３】
位置（ｙ＞０，ｘ＞０）における要素の場合、コンテキストモデルは、ｙが１よりも大きく、且つｘが幅−１よりも小さい場合には、（ｙ−２，ｘ＋１）における隣接要素の値（０又は１）に基づいて選択される（図２１のステップ２１２０及び２１２２）。
【００７４】
この例において提供される方式を使用することにより、記憶する必要がある係数は１本の隣接走査線内の係数のみである。
例４
この例は、最高で３つの符号化隣接要素を利用するジグザグ走査パターンの場合のコンテキストモデル選択を示す。特に、高さ×幅の顕著性マップ（図２２）を考えると、顕著性マップ内の要素のコンテキストモデルは以下のように決定される。
【００７５】
位置（０，０）、（０，１）、又は（１，０）における要素の場合、一意のコンテキストモデルが割り当てられる。すなわち、現在ブロック内の位置（０，０）、（０，１）、又は（１，０）における要素は、同じ位置（０，０）、（０，１）、又は（１，０）における他のブロック内の他の要素と同じコンテキストモデルを共有する（図２３のステップ２３００及び２３０２）。
【００７６】
位置（０，ｘ＞１）における要素の場合、コンテキストモデルは、位置（０，ｘ−１）及び（０，ｘ−２）における隣接要素の値（０又は１）に基づいて選択される（図２３のステップ２３０４及び２３０６）。
【００７７】
位置（ｙ＞１，０）における要素の場合、コンテキストモデルは、位置（ｙ−１，０）及び（ｙ−２，０）における隣接要素の値（０又は１）に基づいて選択される（図２３のステップ２３０８及び２３１０）。
【００７８】
位置（ｙ＞０，ｘ＞０）における要素の場合、コンテキストモデルは、位置（ｙ−１，ｘ）、（ｙ，ｘ−１）、及び（ｙ−１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図２３のステップ２３１２及び２３１４）。
【００７９】
この例において提供される方式を使用することにより、記憶する必要がある係数は２本の隣接走査線内の係数のみである。
例５
この例は、最高で２つの符号化隣接要素を利用するジグザグ走査パターンの場合のコンテキストモデル選択を示す。特に、高さ×幅の顕著性マップ（図２４）を考えると、顕著性マップ内の要素のコンテキストモデルは以下のように決定される。
【００８０】
位置（０，０）、（０，１）、又は（１，０）における要素の場合、一意のコンテキストモデルが割り当てられる。すなわち、現在ブロック内の位置（０，０）、（０，１）、又は（１，０）における要素は、同じ位置（０，０）、（０，１）、又は（１，０）における他のブロック内の他の要素と同じコンテキストモデルを共有する（図２５のステップ２５００及び２５０２）。
【００８１】
位置（０，ｘ＞１）における要素の場合、コンテキストモデルは、位置（０，ｘ−１）及び（０，ｘ−２）における隣接要素の値（０又は１）に基づいて選択される（図２５のステップ２５０４及び２５０６）。
【００８２】
位置（ｙ＞１，０）における要素の場合、コンテキストモデルは、位置（ｙ−１，０）及び（ｙ−２，０）における隣接要素の値（０又は１）に基づいて選択される（図２５のステップ２５０８及び２５１０）。
【００８３】
位置（ｙ＞０，ｘ＞０）における要素の場合、コンテキストモデルは、位置（ｙ−１，ｘ）及び（ｙ，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図２５のステップ２５１２及び２５１４）。
【００８４】
この例において提供される方式を使用することにより、記憶する必要がある係数は１本の隣接走査線内の係数のみである。
例６
この例は、最高で２つの符号化隣接要素を利用するジグザグ走査パターンの場合のコンテキストモデル選択を示す。特に、高さ×幅の顕著性マップ（図２６）を考えると、顕著性マップ内の要素のコンテキストモデルは以下のように決定される。
【００８５】
位置（０，０）、（０，１）、又は（１，０）における要素の場合、一意のコンテキストモデルが割り当てられる。すなわち、現在ブロック内の位置（０，０）、（０，１）、又は（１，０）における要素は、同じ位置（０，０）、（０，１）、又は（１，０）における他のブロック内の他の要素と同じコンテキストモデルを共有する（図２７のステップ２７００及び２７０２）。
【００８６】
位置（０，ｘ＞１）における要素の場合、コンテキストモデルは、位置（０，ｘ−１）及び（１，ｘ−２）における隣接要素の値（０又は１）に基づいて選択される（図２７のステップ２７０４及び２７０６）。
【００８７】
位置（ｙ＞１，０）における要素の場合、コンテキストモデルは、位置（ｙ−１，０）及び（ｙ−２，１）における隣接要素の値（０又は１）に基づいて選択される（図２７のステップ２７０８及び２７１０）。
【００８８】
位置（ｙ＞０，ｘ＞０）における要素の場合、コンテキストモデルは、位置（ｙ−１，ｘ）及び（ｙ，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図２７のステップ２７１２及び２７１４）。
【００８９】
この例において提供される方式を使用することにより、記憶する必要がある係数は１本の隣接走査線内の係数のみである。
例７
この例は、最高で５つの符号化隣接要素を利用する垂直走査パターンの場合のコンテキストモデル選択を示す。特に、高さ×幅の顕著性マップ（図２８）を考えると、顕著性マップ内の要素のコンテキストモデルは以下のように決定される。
【００９０】
位置（ｙ，０）又は（０，１）における要素の場合、一意又は結合コンテキストモデルが割り当てられる。すなわち、現在ブロック内の位置（ｙ，０）又は（０，１）における要素は、同じ位置（ｙ，０）又は（０，１）における他のブロック内の他の要素と同じコンテキストモデルを共有し、０＜Ｎ０，Ｎ１，・・・Ｎｋ＜高さであり、且つ和（Ｎ０，Ｎ１，・・・Ｎｋ）＝高さである間、ｎ個の要素を結合して、同じコンテキストを共有することができる（図２９のステップ２９００及び２９０２）。
【００９１】
位置（０，ｘ＞１）における要素の場合、コンテキストモデルは、位置（０，ｘ−１）及び（１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図２９のステップ２９０４及び２９０６）。
【００９２】
位置（１，ｘ＞０）における要素の場合、コンテキストモデルは、位置（０，ｘ−１）、（１，ｘ−１）、及び（２，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図２９のステップ２９０８及び２９１０）。
【００９３】
位置（ｙ＝高さ−１，ｘ＞０）における要素の場合、コンテキストモデルは、位置（ｙ，ｘ−１）及び（ｙ−１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図２９のステップ２９１２及び２９１４）。
【００９４】
位置（ｙ＝高さ−２，ｘ＞０）における要素の場合、コンテキストモデルは、位置（ｙ，ｘ−１）及び（ｙ＋１，ｘ−１）、（ｙ−１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図２９のステップ２９１６及び２９１８）。
【００９５】
位置（高さ−２＞ｙ＞１，ｘ＞０）における要素の場合、コンテキストモデルは、位置（ｙ−２，ｘ−１）、（ｙ−１，ｘ−１）、（ｙ，ｘ−１）、（ｙ＋１，ｘ−１）、及び（ｙ＋２，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図２９のステップ２９２０及び２９２２）。
【００９６】
この例において提供される方式を使用することにより、記憶する必要がある係数は１本の隣接走査線内の係数のみである。
例８
この例は、最高で５つの符号化隣接要素を利用する垂直走査パターンの場合のコンテキストモデル選択を示す。特に、高さ×幅の顕著性マップ（図３０）を考えると、顕著性マップ内の要素のコンテキストモデルは以下のように決定される。
【００９７】
位置（ｙ，０）における要素の場合、一意又は結合コンテキストモデルが割り当てられる。すなわち、現在ブロック内の位置（ｙ，０）における要素は、同じ位置（ｙ，０）における他のブロック内の他の要素と同じコンテキストモデルを共有し、０＜Ｎ０，Ｎ１，・・・Ｎｋ＜高さであり、且つ和（Ｎ０，Ｎ１，・・・Ｎｋ）＝高さである間、ｎ個の要素を結合して、同じコンテキストを共有することができる（図３１のステップ３１００及び３１０２）。
【００９８】
位置（０，ｘ＞０）における要素の場合、コンテキストモデルは、位置（０，ｘ−１）及び（１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図３１のステップ３１０４及び３１０６）。
【００９９】
位置（１，ｘ＞０）における要素の場合、コンテキストモデルは、位置（０，ｘ−１）、（１，ｘ−１）、及び（２，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図３１のステップ３１０８及び３１１０）。
【０１００】
位置（ｙ＝高さ−１，ｘ＞０）における要素の場合、コンテキストモデルは、位置（ｙ，ｘ−１）及び（ｙ−１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図３１のステップ３１１２及び３１１４）。
【０１０１】
位置（ｙ＝高さ−２，ｘ＞０）における要素の場合、コンテキストモデルは、位置（ｙ，ｘ−１）、（ｙ＋１，ｘ−１）、及び（ｙ−１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図３１のステップ３１１６及び３１１８）。
【０１０２】
位置（高さ−２＞ｙ＞１，ｘ＞０）における要素の場合、コンテキストモデルは、位置（ｙ−２，ｘ−１）、（ｙ−１，ｘ−１）、（ｙ，ｘ−１）、（ｙ＋１，ｘ−１）、及び（ｙ＋２，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図３１のステップ３１２０及び３１２２）。
【０１０３】
この例において提供される方式を使用することにより、記憶する必要がある係数は１本の隣接走査線内の係数のみであり、コンテキストとしての位置の使用は、第１の列に対してのみ適用され、これにより、アルゴリズムが簡素化される。
例９
この例は、最高で４つの符号化隣接要素を利用する垂直走査パターンの場合のコンテキストモデル選択を示す。特に、高さ×幅の顕著性マップ（図３２）を考えると、顕著性マップ内の要素のコンテキストモデルは以下のように決定される。
【０１０４】
位置（ｙ，０）又は（０，１）における要素の場合、一意又は結合コンテキストモデルが割り当てられる。すなわち、現在ブロック内の位置（ｙ，０）又は（０，１）における要素は、同じ位置（ｙ，０）又は（０，１）における他のブロック内の他の要素と同じコンテキストモデルを共有し、０＜Ｎ０，Ｎ１，・・・Ｎｋ＜高さであり、且つ和（Ｎ０，Ｎ１，・・・Ｎｋ）＝高さである間、ｎ個の要素を結合して、同じコンテキストを共有することができる（図３３のステップ３３００及び３３０２）。
【０１０５】
位置（０，ｘ＞１）における要素の場合、コンテキストモデルは、位置（０，ｘ−１）及び（１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図３３のステップ３３０４及び３３０６）。
【０１０６】
位置（１，ｘ＞０）における要素の場合、コンテキストモデルは、位置（０，ｘ−１）、（１，ｘ−１）、及び（２，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図３３のステップ３３０８及び３３１０）。
【０１０７】
位置（ｙ＝高さ−１，ｘ＞０）における要素の場合、コンテキストモデルは、位置（ｙ，ｘ−１）及び（ｙ−１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図３３のステップ３３１２及び３３１４）。
【０１０８】
位置（高さ−２＞ｙ＞１，ｘ＝１）における要素の場合、コンテキストモデルは、位置（ｙ−１，ｘ−１）、（ｙ，ｘ−１）、及び（ｙ＋１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図３３のステップ３３１６及び３３１８）。
【０１０９】
位置（高さ−２＞ｙ＞１，ｘ＞０）における要素の場合、コンテキストモデルは、位置（ｙ，ｘ−２）、（ｙ−１，ｘ−１）、（ｙ，ｘ−１）、及び（ｙ＋１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図３３のステップ３３２０及び３３２２）。
【０１１０】
この例において提供される方式を使用することにより、記憶する必要がある係数は２本の隣接走査線内の係数のみである。
例１０
この例は、最高で４つの符号化隣接要素を利用する垂直走査パターンの場合のコンテキストモデル選択を示す。特に、高さ×幅の顕著性マップ（図３４）を考えると、顕著性マップ内の要素のコンテキストモデルは以下のように決定される。
【０１１１】
位置（ｙ，０）における要素の場合、一意又は結合コンテキストモデルが割り当てられる。すなわち、現在ブロック内の位置（ｙ，０）における要素は、同じ位置（ｙ，０）における他のブロック内の他の要素と同じコンテキストモデルを共有し、０＜Ｎ０，Ｎ１，・・・Ｎｋ＜高さであり、且つ和（Ｎ０，Ｎ１，・・・Ｎｋ）＝高さである間、ｎ個の要素を結合して、同じコンテキストを共有することができる（図３５のステップ３５００及び３５０２）。
【０１１２】
位置（０，ｘ＞０）における要素の場合、コンテキストモデルは、位置（０，ｘ−１）及び（１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図３５のステップ３５０４及び３５０６）。
【０１１３】
位置（１，ｘ＞０）における要素の場合、コンテキストモデルは、位置（０，ｘ−１）、（１，ｘ−１）、及び（２，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図３５のステップ３５０８及び３５１０）。
【０１１４】
位置（ｙ＝高さ−１，ｘ＞０）における要素の場合、コンテキストモデルは、位置（ｙ，ｘ−１）及び（ｙ−１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図３５のステップ３５１２及び３５１４）。
【０１１５】
位置（高さ−２＞ｙ＞１，１）における要素の場合、コンテキストモデルは、位置（ｙ−１，ｘ−１）、（ｙ，ｘ−１）、及び（ｙ＋１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図３５のステップ３５１６及び３５１８）。
【０１１６】
位置（高さ−２＞ｙ＞１，ｘ＝１）における要素の場合、コンテキストモデルは、位置（ｙ−１，ｘ−１）、（ｙ，ｘ−１）、及び（ｙ＋１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図３５のステップ３５２０及び３５２２）。
【０１１７】
位置（高さ−２＞ｙ＞１，ｘ＞１）における要素の場合、コンテキストモデルは、位置（ｙ，ｘ−２）、（ｙ−１，ｘ−１）、（ｙ，ｘ−１）、及び（ｙ＋１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図３５のステップ３５２４及び３５２６）。
【０１１８】
この例において提供される方式を使用することにより、記憶する必要がある係数は２本の隣接走査線内の係数のみであり、コンテキストとしての位置の使用は、第１の列に対してのみ適用され、これにより、アルゴリズムが簡素化される。
例１１
この例は、最高で３つの符号化隣接要素を利用する垂直走査パターンの場合のコンテキストモデル選択を示す。特に、高さ×幅の顕著性マップ（図３６）を考えると、顕著性マップ内の要素のコンテキストモデルは以下のように決定される。
【０１１９】
位置（ｙ，０）又は（０，１）における要素の場合、一意又は結合コンテキストモデルが割り当てられる。すなわち、現在ブロック内の位置（ｙ，０）又は（０，１）における要素は、同じ位置（ｙ，０）又は（０，１）における他のブロック内の他の要素と同じコンテキストモデルを共有し、０＜Ｎ０，Ｎ１，・・・Ｎｋ＜高さであり、且つ和（Ｎ０，Ｎ１，・・・Ｎｋ）＝高さである間、ｎ個の要素を結合して、同じコンテキストを共有することができる（図３７のステップ３７００及び３７０２）。
【０１２０】
位置（０，ｘ＞１）における要素の場合、コンテキストモデルは、位置（０，ｘ−１）及び（１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図３７のステップ３７０４及び３７０６）。
【０１２１】
位置（ｙ＝高さ−１，ｘ＞０）における要素の場合、コンテキストモデルは、位置（ｙ，ｘ−１）及び（ｙ−１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図３７のステップ３７０８及び３７１０）。
【０１２２】
位置（高さ−２＞ｙ＞１，ｘ＞０）における要素の場合、コンテキストモデルは、位置（ｙ−１，ｘ−１）、（ｙ，ｘ−１）、及び（ｙ＋１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図３７のステップ３７１２及び３７１４）。
【０１２３】
この例において提供される方式を使用することにより、記憶する必要がある係数は１本の隣接走査線内の係数のみである。
例１２
この例は、最高で３つの符号化隣接要素を利用する垂直走査パターンの場合のコンテキストモデル選択を示す。特に、高さ×幅の顕著性マップ（図３８）を考えると、顕著性マップ内の要素のコンテキストモデルは以下のように決定される。
【０１２４】
位置（ｙ，０）における要素の場合、一意又は結合コンテキストモデルが割り当てられる。すなわち、現在ブロック内の位置（ｙ，０）における要素は、同じ位置（ｙ，０）における他のブロック内の他の要素と同じコンテキストモデルを共有し、０＜Ｎ０，Ｎ１，・・・Ｎｋ＜高さであり、且つ和（Ｎ０，Ｎ１，・・・Ｎｋ）＝高さである間、ｎ個の要素を結合して、同じコンテキストを共有することができる（図３９のステップ３９００及び３９０２）。
【０１２５】
位置（０，ｘ＞０）における要素の場合、コンテキストモデルは、位置（０，ｘ−１）及び（１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図３９のステップ３９０４及び３９０６）。
【０１２６】
位置（ｙ＝高さ−１，ｘ＞０）における要素の場合、コンテキストモデルは、位置（ｙ，ｘ−１）及び（ｙ−１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図３９のステップ３９０８及び３９１０）。
【０１２７】
位置（高さ−２＞ｙ＞１，ｘ＞０）における要素の場合、コンテキストモデルは、位置（ｙ−１，ｘ−１）、（ｙ，ｘ−１）、及び（ｙ＋１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図３９のステップ３９１２及び３９１４）。
【０１２８】
この例において提供される方式を使用することにより、記憶する必要がある係数は１本の隣接走査線内の係数のみであり、コンテキストとしての位置の使用は、第１の列に対してのみ適用され、これにより、アルゴリズムが簡素化される。
例１３
この例は、最高で５つの符号化隣接要素を利用する水平走査パターンの場合のコンテキストモデル選択を示す。特に、高さ×幅の顕著性マップ（図４０）を考えると、顕著性マップ内の要素のコンテキストモデルは以下のように決定される。
【０１２９】
位置（０，ｘ）又は（１，０）における要素の場合、一意又は結合コンテキストモデルが割り当てられる。すなわち、現在ブロック内の位置（０，ｘ）又は（１，０）における要素は、同じ位置（０，ｘ）又は（１，０）における他のブロック内の他の要素と同じコンテキストモデルを共有し、０＜Ｍ０，Ｍ１，・・・Ｍｐ＜幅であり、且つ和（Ｍ０，Ｍ１，・・・Ｍｐ）＝幅である間、ｍ個の要素を結合して、同じコンテキストを共有することができる（図４１のステップ４１００及び４１０２）。
【０１３０】
位置（ｙ＞１，０）における要素の場合、コンテキストモデルは、位置（ｙ−１，０）及び（ｙ−１，１）における隣接要素の値（０又は１）に基づいて選択される（図４１のステップ４１０４及び４１０６）。
【０１３１】
位置（ｙ＞０，１）における要素の場合、コンテキストモデルは、位置（ｙ−１，０）、（ｙ−１，１）、及び（ｙ−１，２）における隣接要素の値（０又は１）に基づいて選択される（図４１のステップ４１０８及び４１１０）。
【０１３２】
位置（ｙ＞０，ｘ＝幅−１）における要素の場合、コンテキストモデルは、位置（ｙ−１，ｘ）及び（ｙ−１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図４１のステップ４１１２及び４１１４）。
【０１３３】
位置（ｙ＞０，ｘ＝幅−２）における要素の場合、コンテキストモデルは、位置（ｙ−１，ｘ−１）、（ｙ−１，ｘ）、及び（ｙ−１，ｘ＋１）における隣接要素の値（０又は１）に基づいて選択される（図４１のステップ４１１６及び４１１８）。
【０１３４】
位置（ｙ＞０，幅−２＞ｘ＞１）における要素の場合、コンテキストモデルは、位置（ｙ−１，ｘ−２）、（ｙ−１，ｘ−１）、（ｙ−１，ｘ）、（ｙ−１，ｘ＋１）、及び（ｙ−１，ｘ＋２）における隣接要素の値（０又は１）に基づいて選択される（図４１のステップ４１２０及び４１２２）。
【０１３５】
この例において提供される方式を使用することにより、記憶する必要がある係数は１本の隣接走査線内の係数のみである。
例１４
この例は、最高で５つの符号化隣接要素を利用する水平走査パターンの場合のコンテキストモデル選択を示す。特に、高さ×幅の顕著性マップ（図４２）を考えると、顕著性マップ内の要素のコンテキストモデルは以下のように決定される。
【０１３６】
位置（０，ｘ）における要素の場合、一意又は結合コンテキストモデルが割り当てられる。すなわち、現在ブロック内の位置（０，ｘ）における要素は、同じ位置（０，ｘ）における他のブロック内の他の要素と同じコンテキストモデルを共有し、０＜Ｍ０，Ｍ１，・・・Ｍｐ＜幅であり、且つ和（Ｍ０，Ｍ１，・・・Ｍｐ）＝幅である間、ｍ個の要素を結合して、同じコンテキストを共有することができる（図４３のステップ４３００及び４３０２）。
【０１３７】
位置（ｙ＞０，０）における要素の場合、コンテキストモデルは、位置（ｙ−１，０）及び（ｙ−１，１）における隣接要素の値（０又は１）に基づいて選択される（図４３のステップ４３０４及び４３０６）。
【０１３８】
位置（ｙ＞０，１）における要素の場合、コンテキストモデルは、位置（ｙ−１，０）、（ｙ−１，１）、及び（ｙ−１，２）における隣接要素の値（０又は１）に基づいて選択される（図４３のステップ４３０８及び４３１０）。
【０１３９】
位置（ｙ＞０，ｘ＝幅−１）における要素の場合、コンテキストモデルは、位置（ｙ−１，ｘ）及び（ｙ−１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図４３のステップ４３１２及び４３１４）。
【０１４０】
位置（ｙ＞０，ｘ＝幅−２）における要素の場合、コンテキストモデルは、位置（ｙ−１，ｘ−１）、（ｙ−１，ｘ）、及び（ｙ−１，ｘ＋１）における隣接要素の値（０又は１）に基づいて選択される（図４３のステップ４３１６及び４３１８）。
【０１４１】
位置（ｙ＞０，幅−２＞ｘ＞１）における要素の場合、コンテキストモデルは、位置（ｙ−１，ｘ−２）、（ｙ−１，ｘ−１）、（ｙ−１，ｘ）、（ｙ−１，ｘ＋１）、及び（ｙ−１，ｘ＋２）における隣接要素の値（０又は１）に基づいて選択される（図４３のステップ４３２０及び４３２２）。
【０１４２】
この例において提供される方式を使用することにより、記憶する必要がある係数は１本の隣接走査線内の係数のみであり、コンテキストとしての位置の使用は、第１の行に対してのみ適用され、これにより、アルゴリズムが簡素化される。
例１５
この例は、最高で４つの符号化隣接要素を利用する水平走査パターンの場合のコンテキストモデル選択を示す。特に、高さ×幅の顕著性マップ（図４４）を考えると、顕著性マップ内の要素のコンテキストモデルは以下のように決定される。
【０１４３】
位置（０，ｘ）又は（１，０）における要素の場合、一意又は結合コンテキストモデルが割り当てられる。すなわち、現在ブロック内の位置（０，ｘ）又は（１，０）における要素は、同じ位置（０，ｘ）又は（１，０）における他のブロック内の他の要素と同じコンテキストモデルを共有し、０＜Ｍ０，Ｍ１，・・・Ｍｋ＜幅であり、且つ和（Ｍ０，Ｍ１，・・・Ｍｋ）＝幅である間、ｍ個の要素を結合して、同じコンテキストを共有することができる（図４５のステップ４５００及び４５０２）。
【０１４４】
位置（ｙ＞１，０）における要素の場合、コンテキストモデルは、位置（ｙ−１，０）及び（ｙ−１，１）における隣接要素の値（０又は１）に基づいて選択される（図４５のステップ４５０４及び４５０６）。
【０１４５】
位置（ｙ＞０，１）における要素の場合、コンテキストモデルは、位置（ｙ−１，０）、（ｙ−１，１）、及び（ｙ−１，２）における隣接要素の値（０又は１）に基づいて選択される（図４５のステップ４５０８及び４５１０）。
【０１４６】
位置（ｙ＞０，ｘ＝幅−１）における要素の場合、コンテキストモデルは、位置（ｙ−１，ｘ）及び（ｙ−１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図４５のステップ４５１２及び４５１４）。
【０１４７】
位置（ｙ＝１，幅−２＞ｘ＞１）における要素の場合、コンテキストモデルは、位置（ｙ−１，ｘ−１）、（ｙ−１，ｘ）、及び（ｙ−１，ｘ＋１）における隣接要素の値（０又は１）に基づいて選択される（図４５のステップ４５１６及び４５１８）。
【０１４８】
位置（ｙ＞１，幅−２＞ｘ＞１）における要素の場合、コンテキストモデルは、位置（ｙ−２，ｘ）、（ｙ−１，ｘ−１）、（ｙ−１，ｘ）、及び（ｙ−１，ｘ＋１）における隣接要素の値（０又は１）に基づいて選択される（図４５のステップ４５２０及び４５２２）。
【０１４９】
この例において提供される方式を使用することにより、記憶する必要がある係数は２本の隣接走査線内の係数のみである。
例１６
この例は、最高で４つの符号化隣接要素を利用する水平走査パターンの場合のコンテキストモデル選択を示す。特に、高さ×幅の顕著性マップ（図４６）を考えると、顕著性マップ内の要素のコンテキストモデルは以下のように決定される。
【０１５０】
位置（０，ｘ）における要素の場合、一意又は結合コンテキストモデルが割り当てられる。すなわち、現在ブロック内の位置（０，ｘ）における要素は、同じ位置（０，ｘ）における他のブロック内の他の要素と同じコンテキストモデルを共有し、０＜Ｍ０，Ｍ１，・・・Ｍｐ＜幅であり、且つ和（Ｍ０，Ｍ１，・・・Ｍｐ）＝幅である間、ｍ個の要素を結合して、同じコンテキストを共有することができる（図４７のステップ４７００及び４７０２）。
【０１５１】
位置（ｙ＞０，０）における要素の場合、コンテキストモデルは、位置（ｙ−１，０）及び（ｙ−１，１）における隣接要素の値（０又は１）に基づいて選択される（図４７のステップ４７０４及び４７０６）。
【０１５２】
位置（ｙ＞０，１）における要素の場合、コンテキストモデルは、位置（ｙ−１，０）、（ｙ−１，１）、及び（ｙ−１，２）における隣接要素の値（０又は１）に基づいて選択される（図４７のステップ４７０８及び４７１０）。
【０１５３】
位置（ｙ＞０，ｘ＝幅−１）における要素の場合、コンテキストモデルは、位置（ｙ−１，ｘ）及び（ｙ−１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図４７のステップ４７１２及び４７１４）。
【０１５４】
位置（ｙ＝１，幅−２＞ｘ＞１）における要素の場合、コンテキストモデルは、位置（ｙ−１，ｘ−１）、（ｙ−１，ｘ）、及び（ｙ−１，ｘ＋１）における隣接要素の値（０又は１）に基づいて選択される（図４７のステップ４７１６及び４７１８）。
【０１５５】
位置（ｙ＞１，幅−２＞ｘ＞１）における要素の場合、コンテキストモデルは、位置（ｙ−２，ｘ）、（ｙ−１，ｘ−１）、（ｙ−１，ｘ）、及び（ｙ−１，ｘ＋１）における隣接要素の値（０又は１）に基づいて選択される（図４７のステップ４７２０及び４７２２）。
【０１５６】
この例において提供される方式を使用することにより、記憶する必要がある係数は２本の隣接走査線内の係数のみであり、コンテキストとしての位置の使用は、第１の行に対してのみ適用され、これにより、アルゴリズムが簡素化される。
例１７
この例は、最高で３つの符号化隣接要素を利用する水平走査パターンの場合のコンテキストモデル選択を示す。特に、高さ×幅の顕著性マップ（図４８）を考えると、顕著性マップ内の要素のコンテキストモデルは以下のように決定される。
【０１５７】
位置（０，ｘ）又は（１，０）における要素の場合、一意又は結合コンテキストモデルが割り当てられる。すなわち、現在ブロック内の位置（０，ｘ）又は（１，０）における要素は、同じ位置（０，ｘ）又は（１，０）における他のブロック内の他の要素と同じコンテキストモデルを共有し、０＜Ｍ０，Ｍ１，・・・Ｍｐ＜幅であり、且つ和（Ｍ０，Ｍ１，・・・Ｍｐ）＝幅である間、ｍ個の要素を結合して、同じコンテキストを共有することができる（図４９のステップ４９００及び４９０２）。
【０１５８】
位置（ｙ＞１，０）における要素の場合、コンテキストモデルは、位置（ｙ−１，０）及び（ｙ−１，１）における隣接要素の値（０又は１）に基づいて選択される（図４９のステップ４９０４及び４９０６）。
【０１５９】
位置（ｙ＞０，ｘ＝幅−１）における要素の場合、コンテキストモデルは、位置（ｙ−１，ｘ）及び（ｙ−１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図４９のステップ４９０８及び４９１０）。
【０１６０】
位置（ｙ＞０，幅−２＞ｘ＞１）における要素の場合、コンテキストモデルは、位置（ｙ−１，ｘ−１）、（ｙ−１，ｘ）、及び（ｙ−１，ｘ＋１）における隣接要素の値（０又は１）に基づいて選択される（図４９のステップ４９１２及び４９１４）。
【０１６１】
この例において提供される方式を使用することにより、記憶する必要がある係数は１本の隣接走査線内の係数のみである。
例１８
この例は、最高で３つの符号化隣接要素を利用する水平走査パターンの場合のコンテキストモデル選択を示す。特に、高さ×幅の顕著性マップ（図５０）を考えると、顕著性マップ内の要素のコンテキストモデルは以下のように決定される。
【０１６２】
位置（０，ｘ）における要素の場合、一意又は結合コンテキストモデルが割り当てられる。すなわち、現在ブロック内の位置（０，ｘ）における要素は、同じ位置（０，ｘ）における他のブロック内の他の要素と同じコンテキストモデルを共有し、０＜Ｍ０，Ｍ１，・・・Ｍｐ＜幅であり、且つ和（Ｍ０，Ｍ１，・・・Ｍｐ）＝幅である間、ｍ個の要素を結合して、同じコンテキストを共有することができる（図５１のステップ５１００及び５１０２）。
【０１６３】
位置（ｙ＞０，０）における要素の場合、コンテキストモデルは、位置（ｙ−１，０）及び（ｙ−１，１）における隣接要素の値（０又は１）に基づいて選択される（図５１のステップ５１０４及び５１０６）。
【０１６４】
位置（ｙ＞０，ｘ＝幅−１）における要素の場合、コンテキストモデルは、位置（ｙ−１，ｘ）及び（ｙ−１，ｘ−１）における隣接要素の値（０又は１）に基づいて選択される（図５１のステップ５１０８及び５１１０）。
【０１６５】
位置（ｙ＞０，幅−２＞ｘ＞１）における要素の場合、コンテキストモデルは、位置（ｙ−１，ｘ−１）、（ｙ−１，ｘ）、及び（ｙ−１，ｘ＋１）における隣接要素の値（０又は１）に基づいて選択される（図５１のステップ５１１２及び５１１４）。
【０１６６】
本開示の全体を通して具体的に説明したが、代表的な例は広範囲の用途にわたり有用性を有し、上記考察は、限定を意図せず、限定として解釈されるべきではない。本明細書において使用される用語、説明、及び図は、例としてのみ記載され、限定を意図されない。多くの変形が例の趣旨及び範囲内で可能であることを当業者は認識する。例を参照して例を説明したが、当業者は、以下の特許請求の範囲に記載される例及びそれらの均等物の範囲から逸脱せずに、記載された例に様々な変更を行うことが可能である。
【図２Ａ】
0005787116.tif 000003
【図２Ｂ】
0005787116.tif 000004
【図３Ａ】
0005787116.tif 000005
【図５Ａ】
0005787116.tif 000006
【図５Ｂ】
0005787116.tif 000007
【図６Ａ】
0005787116.tif 000008
【図６Ｂ】
0005787116.tif 000009
【図６Ｃ】
0005787116.tif 000010
【図６Ｄ】
0005787116.tif 000011
【図６Ｅ】
0005787116.tif 000012
【図７Ａ】
0005787116.tif 000013
【図８】
0005787116.tif 000014
【図９】
0005787116.tif 000015
【図１０】
0005787116.tif 000016
【図１１】
0005787116.tif 000017
【図１２】
0005787116.tif 000018
【図１３】
0005787116.tif 000019
【図１４】
0005787116.tif 000020
【図１５】
0005787116.tif 000021
【図１６】
0005787116.tif 000022
【図１８】
0005787116.tif 000023
【図２０】
0005787116.tif 000024
【図２２】
0005787116.tif 000025
【図２４】
0005787116.tif 000026
【図２６】
0005787116.tif 000027
【図２８】
0005787116.tif 000028
【図３０】
0005787116.tif 000029
【図３２】
0005787116.tif 000030
【図３４】
0005787116.tif 000031
【図３６】
0005787116.tif 000032
【図３８】
0005787116.tif 000033
【図４４】
0005787116.tif 000034
【図４６】
0005787116.tif 000035
【図４８】
0005787116.tif 000036
【図５０】
0005787116.tif 000037
【図１Ａ】
0005787116.tif 000038
【図１Ｂ】
0005787116.tif 000039
【図３Ｂ】
0005787116.tif 000040
【図４Ａ】
0005787116.tif 000041
【図４Ｂ】
0005787116.tif 000042
【図７Ｂ】
0005787116.tif 000043
【図１７】
0005787116.tif 000044
【図１９】
0005787116.tif 000045
【図２１】
0005787116.tif 000046
【図２３】
0005787116.tif 000047
【図２５】
0005787116.tif 000048
【図２７】
0005787116.tif 000049
【図２９】
0005787116.tif 000050
【図３１】
0005787116.tif 000051
【図３３】
0005787116.tif 000052
【図３５】
0005787116.tif 000053
【図３７】
0005787116.tif 000054
【図３９】
0005787116.tif 000055
【図４０】
0005787116.tif 000056
【図４１】
0005787116.tif 000057
【図４２】
0005787116.tif 000058
【図４３】
0005787116.tif 000059
【図４５】
0005787116.tif 000060
【図４７】
0005787116.tif 000061
【図４９】
0005787116.tif 000062
【図５１】
0005787116.tif 000063