(57)【要約】【課題】残留レベルデータの位置依存エントロピ符号化のための埋込みコーデック(EBC)回路および方法を提供する。【解決手段】EBC回路は、入力画像の複数の画像ブロックのための量子化変換残留レベルの複数のブロックを記憶するように構成されたメモリと、複数のブロック中の第1のブロック内の複数の量子化変換残留レベルを量子化変換残留レベルの第1のセットおよび量子化変換残留レベルの第1のセットに分類する符号器回路とを備える。符号器回路は、量子化変換残留レベルの第1のセット上に第1のエントロピ符号化方式を、量子化変換残留レベルの第2のセット上に第1のエントロピ符号化方式と第2のエントロピ符号化方式との組み合わせを、第1のブロックにおける直流から交流(DCからAC)の走査順序で適用する。【選択図】図１
2020127188.tif 000002
【特許請求の範囲】
【請求項１】
埋込みコーデック（ＥＢＣ）回路であって、
入力画像の複数の画像ブロックための量子化変換残留レベルの複数のブロックを記憶するように構成されたメモリと、
符号器回路と、を備え、前記符号器回路は、
前記複数のブロック中の第１のブロック内の複数の量子化変換残留レベルを、前記複数の量子化変換残留レベル中の各量子化変換残留レベルと閾値レベル値との比較に基づいて、量子化変換残留レベルの第１のセットおよび量子化変換残留レベルの第２のセットに分類し、
前記量子化変換残留レベルの第１のセット上に第１のエントロピ符号化方式を、前記量子化変換残留レベルの第２のセット上に前記第１のエントロピ符号化方式と第２のエントロピ符号化方式との組み合わせを、前記第１のブロックにおいて直流から交流（ＤＣからＡＣ）の走査順序で適用し、
符号化画像ブロックのビット流れを、前記第１のエントロピ符号化方式、および第１のエントロピ符号化方式と前記第２のエントロピ符号化方式との組合せを、前記第１のブロックにおいて続いて起こる直流から交流（ＤＣからＡＣ）の走査順序に従って適用することによって発生する、埋込みコーデック（ＥＢＣ）回路。
【請求項２】
前記符号器回路は、前記複数の画像ブロック上に一連の符号化方式を実行して、前記入力画像の圧縮した画像データのビット流れを発生するようにさらに構成され、
前記圧縮した画像データのビット流れは、前記符号化画像ブロックの発生したビット流れを備える、請求項１に記載のＥＢＣ回路。
【請求項３】
前記圧縮した画像データのビット流れは、前記複数の画像ブロックの符号化段階において前記圧縮した画像データのビット流れを得るために適用される、一連の符号化方式を表すヘッダー情報を備え、前記一連の符号化方式は、前方変換、これに続く量子化、残差予測、および第１のエントロピ符号化方式、または前記第１のエントロピ符号化方式と前記第２のエントロピ符号化方式との前記組合せのうち選択されたものを連続して適用することを含む、請求項２に記載のＥＢＣ回路。
【請求項４】
前記符号器回路は、前記量子化変換残留レベルの複数のブロックを、前記入力画像の前記複数のブロック上への前記一連の符号化方式の適用に基づいて発生するようにさらに構成されている、請求項３に記載のＥＢＣ回路。
【請求項５】
前記前方変換は、前記入力画像の前記複数の画像ブロック上に、一次元の行直接余弦変換（１Ｄ行ＤＣＴ）および１Ｄ列変換ＤＣＴを連続して適用することを備える、請求項３に記載のＥＢＣ回路。
【請求項６】
前記比較は、各量子化変換残留レベルの絶対値が前記閾値レベル値よりも小さくても又はこれと等しくても検査に対応する、請求項１に記載のＥＢＣ回路。
【請求項７】
前記量子化変換残留レベルの第１のセットの中の各量子化変換残留レベルの絶対値は、前記閾値レベル値よりも小さいまたはこれと等しい、請求項１に記載のＥＢＣ回路。
【請求項８】
前記量子化変換残留レベルの第２のセットの中の各量子化変換残留レベルの絶対値は、前記閾値レベル値よりも大きい、請求項１に記載のＥＢＣ回路。
【請求項９】
対応する画像ブロックが輝度画像ブロックであるとき、前記第１のブロックはルマブロックである、請求項１に記載のＥＢＣ回路。
【請求項１０】
対応する画像ブロックがクロマ画像ブロックであるとき、前記第１のブロックはクロマＵブロックまたはクロマＶブロックである、請求項１に記載のＥＢＣ回路。
【請求項１１】
前記第１のエントロピ符号化方式はハフマンエントロピ符号化方式であり、前記第２のエントロピ符号化方式は指数関数的Ｇｏｌｏｍｂエントロピ符号化方式である、請求項１に記載のＥＢＣ回路。
【請求項１２】
前記符号器回路は、前記量子化変換残留レベルの第１のセットを、予め特定されたハフマンテーブルのセットに基づいて符号化するようにさらに構成され、前記量子化変換残留レベルの第１のセットは、前記ハフマンエントロピ符号化方式に従ってエントロピ符号化される、請求項１１に記載のＥＢＣ回路。
【請求項１３】
前記予め特定されたハフマンテーブルのセットは、デフォルトハフマンテーブルの第１のセットおよび位置特異的なハフマンテーブルの第の２セットを備える、請求項１２に記載のＥＢＣ回路。
【請求項１４】
前記符号器回路は、前記デフォルトハフマンテーブルの第１のセットからデフォルトハフマンテーブルを選択して、前記量子化変換残留レベルの第１のセットを、前記第１のブロック内で前記ＤＣからＡＣの走査順序に従って符号化するようにさらに構成されている、請求項１３に記載のＥＢＣ回路。
【請求項１５】
前記符号器回路は、前記位置特異的なハフマンテーブルの第２のセットから、位置特異的なハフマンテーブルを、第１のブロック内の各量子化変換残留レベルの特定の位置に基づいて選択するように構成され、前記位置特異的なハフマンテーブルは、前記量子化変換残留レベルの第１のセットを、前記第１のブロック内で前記ＤＣからＡＣの走査順序に従って符号化するために選択される、請求項１３に記載のＥＢＣ回路。
【請求項１６】
前記符号器回路は、前記量子化変換残留レベルの第２のセット中の各量子化変換残留レベルのためのスキップコードを、前記第１のエントロピ符号化方式に従って発生するようにさらに構成され、前記スキップコードは、予め特定されたハフマンテーブルのセットに基づいて発生する、請求項１に記載のＥＢＣ回路。
【請求項１７】
前記スキップコードの発生により、復号器回路が、各量子化変換残留レベルを、前記量子化変換残留レベルの第１のセットまたは前記量子化変換残留レベルの第２のセットに分類することが可能になる、請求項１６に記載のＥＢＣ回路。
【請求項１８】
前記符号器回路は、前記量子化変換残留レベルの第２のセットを、前記量子化変換残留レベルの第２のセット上への前記第２のエントロピ符号化方式の適用に基づいて符号化するようにさらに構成され、各量子化変換残留レベルは、前記量子化変換残留レベルの第２のセット中の各量子化変換残留レベルのための前記スキップコードを発生した後に符号化される、請求項１６に記載のＥＢＣ回路。
【請求項１９】
前記第１のブロック内でのＤＣからＡＣの走査順序は、前記第１のブロックにおいてＤＣ量子化変換残留レベルが走査され、ＡＣ量子化変換残留レベルが後に続く走査シーケンスである、請求項１に記載のＥＢＣ回路。
【請求項２０】
方法であって、
メモリおよび符号器回路を備える埋込みコーデック（ＥＢＣ）回路において、
前記メモリによって、入力画像の複数の画像ブロックのための量子化変換残留レベルの複数のブロックを記憶する段階と、
前記符号器回路によって、前記複数のブロック中の第１のブロック内の複数の量子化変換残留レベルを、前記複数の量子化変換残留レベル中の各量子化変換残留レベルと閾値レベル値との比較に基づいて、量子化変換残留レベルの第１のセットおよび量子化変換残留レベルの第２のセットに分類する段階と、
前記符号器回路によって、前記量子化変換残留レベルの第１のセット上に第１のエントロピ符号化方式を、前記量子化変換残留レベルの第２のセット上に前記第１のエントロピ符号化方式と前記第２のエントロピ符号化方式との組み合わせを、前記第１のブロックにおいて直流から交流（ＤＣからＡＣ）の走査順序で適用する段階と、
前記符号器回路によって、符号化画像ブロックのビット流れを、前記第１のエントロピ符号化方式、および前記第１のエントロピ符号化方式と前記第２のエントロピ符号化方式との組合せを、前記第１のブロックにおいて続いて起こる直流から交流（ＤＣからＡＣ）の走査順序を選択的に適用することによって発生する段階と、を備える方法。
【発明の詳細な説明】
【技術分野】
【０００１】
〔関連出願への相互参照／参照による援用〕
[0001]  なし
【０００２】
[0002]  開示の様々な実施形態は、埋込みコーデック（ＥＢＣ）回路における画像および映像の圧縮および復元技術に関する。より具体的には、開示の様々な実施形態は、残留レベルデータの位置依存エントロピ符号化のためのＥＢＣ回路に関する。
【背景技術】
【０００３】
[0003]  画像圧縮用の画像技術における最近の進歩は、画像の取込みおよび表示装置におけるオンチップコーデックに対する需要の増加につながり、これらは、画像を異なる解像度（例えば十分に高い分解能（ＨＤ）４Ｋ解像度および８Ｋ解像度）で表示品位の大幅な劣化および／またはメモリ使用量への衝撃なしに、記憶可能である。従来から、エントロピ符号化段階において、画像ブロックのための残留レベルのいくつかを符号化するために用いるビットの数は冗長なビットを含み、冗長なビットは、従来、画像ブロックのための全てのタイプの残留レベルに関して一様なエントロピ符号化方式を使用することによって生じる場合がある。エントロピ符号化段階におけるビットの数の冗長は、一様なエントロピ符号化方式が、第１のブロック内の残留レベルの位置に関係なく適用されるときさらに変動し、変動は、画像ブロックのための情報の点からより多くの圧縮を備えた領域を表すことができる。
【０００４】
[0004]  従来のおよび伝統的な取組みのさらなる制限および欠点は、本願の残りの部分においておよび図面に関して詳述するような、記載されたシステムと本開示のいくつかの態様との比較を通じて当業者に明白になる。
【発明の概要】
【０００５】
[0005]  残留レベルデータの位置依存エントロピ符号化のための埋込みコーデック（ＥＢＣ）回路および方法が提供され、実質的に図示されおよび／または少なくとも図の１つに関連して記載され、特許請求の範囲により完全に記述されている。
【０００６】
[0006]  本開示のこれらのならびに他の特徴および利点は、以下に示す本開示の詳細な説明を、全体を通じて同じ参照番号が同じ部分を指す添付図面とともに再検討することによって、よく理解できる。
【図面の簡単な説明】
【０００７】
【図１】開示の実施形態に従って、残留レベルデータの位置依存エントロピ符号化のための埋込みコーデック（ＥＢＣ）回路および他の回路を有する、典型的な媒体機器を示すブロック図である。
【図２】開示の実施形態に従って、様々な周辺の構成部品を有する、残留レベルデータの位置依存エントロピ符号化のための埋込みコーデック（ＥＢＣ）回路を示すブロック図である。
【図３Ａ】開示の実施形態に従って、入力画像ブロックの量子化変換残留レベルのブロックのための第１のヒストグラム分布を描いている。
【図３Ｂ】開示の実施形態に従って、入力画像ブロックの量子化変換残留レベルのブロックのための第２のヒストグラム分布を描いている。
【図４Ａ】開示の実施形態に従って、図２のＥＢＣ回路による残留レベルデータの位置依存エントロピ符号化のための典型的な動作を図示するフローチャートである。
【図４Ｂ】開示の実施形態に従って、符号化方式を図２のＥＢＣ回路によって二次元（２Ｄ）の画像ブロック上に順次適用する、異なるブロック出力を示す図表である。
【図５Ａ】開示の実施形態に従って、図５Ｂと一緒に、残留レベルデータの位置依存エントロピ符号化のための典型的な方法を図示するフローチャートを描いている。
【図５Ｂ】開示の実施形態に従って、図５Ａと一緒に、残留レベルデータの位置依存エントロピ符号化のための典型的な方法を図示するフローチャートを描いている。
【発明を実施するための形態】
【０００８】
[0013]  本開示の様々な実施形態は、残留レベルデータの位置依存エントロピ符号化のための方法および埋込みコーデック（ＥＢＣ）回路に見出すことができる。ＥＢＣ回路はメモリおよび符号器回路を含み、それらは、符号化方式を画像ブロック上に順次適用することによって符号化画像ブロックのビット流れの発生を扱う。開示されたＥＢＣ回路は、ブロックにおける量子化変換残留レベルを、量子化変換残留レベルの分類に基づいて２つの異なるセットに符号化するように構成できる。分類を用いて、異なるセットは、量子化変換残留レベルの異なるエントロピ符号化方式によって適切に符号化することができ、符号化はまた、ビット流れのためのビットレートにおける変動の原因となることがある。第１のブロック内での量子化変換残留レベルの位置に基づいて適切なエントロピ符号化方式を適用することにより、複数コードが発生し、それらは、サンプルごとに必要なビットの数、および符号化画像ブロックのビット流れのためのビットレートに関して効率的である。位置依存エントロピ符号化方式をサブブロックレベルに適用することにより、画像ブロックを符号化するために従来から必要とされる多くのビットがさらに減少できる。
【０００９】
[0014]  例えば、量子化変換残留レベルの第１のセットは、ハフマンエントロピ符号化方式の適用によって符号化することができ、それは、ハフマンテーブルのセットからハフマンテーブルを選択することができる。ハフマンテーブルの選択は、ブロックにおける量子化変換残留レベルの位置に依存することができ、また以前に符号化された量子化変換残留レベルの絶対値に依存する。第２のセットの量子化変換残留レベルについて、ｋ番目の指数関数的Ｇｏｌｏｍｂ符号方式が使用できる。
【００１０】
[0015]  図１は典型的な媒体機器を示すブロック図であり、媒体機器は、開示の実施形態に従って、残留レベルデータの位置依存エントロピ符号化のための埋込みコーデック（ＥＢＣ）回路および他の回路を有する。図１を参照すると、プロセッサ１０６、埋込みコーデック（ＥＢＣ）回路１０８および外部メモリ１１０を含む媒体機器１０２が示される。いくつかの実施形態では、画像センサ１０４が、プロセッサ１０６、ＥＢＣ回路１０８および外部メモリ１１０と通信可能に連結できる。システムバス１１２がさらに示され、それは、画像センサ１０４、プロセッサ１０６、ＥＢＣ回路１０８および外部メモリ１１０を相互に連結している。
【００１１】
[0016]  媒体機器１０２は、適切な論理、回路、インターフェイスを備え、それらは、圧縮されていない原画像および／または原映像を、外部メモリ１１０中に符号化された（すなわち圧縮された）画像および／または映像として記憶するように構成できる。媒体機器１０２は、メディアコンテンツ（例えば、符号化画像および／または映像）の符号化ならびに復号化、さらに媒体機器１０２とインターフェイス接続されたディスプレイ画面において復号化された再生を管理するようにさらに構成できる。媒体機器１０２は、これにメディアコンテンツをオフライン（ネットワークなし）で符号化するための他の計算回路とともに、専用オンチップコーデック回路（例えばＥＢＣ回路１０８）、および画像（圧縮されていない原画像または符号化画像）を記憶するための外部メモリ１１０を含む。いくつかの実施形態では、媒体機器１０２はまた、１つまたは複数の画像センサー（例えば画像センサー１０４）を含み、これにより圧縮されていないファイル形式である原画像ファイル形式（例えばビット深度が１４ビットである原画像）で画像を取り込む。そのような場合、捕えた画像は、媒体機器１０２のＥＢＣ回路１０８によって符号化することができる。媒体機器１０２の例は、限定されないが、デジタルカメラ、携帯式通信装置（例えばラップトップ、スマートフォン、タブレット、ファブレット、スマート時計、スマート眼鏡など）、媒体サーバー、ワークステーション、デスクトップコンピュータ、および拡張現実／仮想現実／混合現実（ＡＲ／ＶＲ／ＭＲ）機器を含むことができる
【００１２】
[0017]  図１には示さないが、媒体機器１０２はネットワークインターフェイスも含み、それは、符号化された画像および／または非圧縮の原画像および／または映像の共有を、他の周辺の機器または同じグルーブに接続された機器を用いて、通信ネットワーク（図１に示さない）を介して管理するように構成できる。ネットワークインターフェイスおよび通信ネットワークの詳細は、簡潔さのための本開示から省略する。
【００１３】
[0018]  画像センサ１０４は、適切な論理、回路およびインターフェイスを備え、それらは、画像センサ１０４の視界（ＦＯＶ）のシーンの圧縮されていない原画像または圧縮されない原画像のシーケンスを取り込むように構成できる。画像センサ１０４は、相補型金属酸化膜半導体（ＣＭＯＳ）センサのような能動型ピクセルセンサとして実装することができる。いくつかの実施形態では、能動型ピクセルセンサの代わりに、画像センサ１０４は、受動型ピクセルセンサ（例えば電荷結合素子（ＣＣＤ）センサ、過剰サンプリングされた２値画像センサ、平面フーリエ取込みアレイ（ＰＦＣＡ）、裏面照射型（ＢＳＩまたはＢＩ）センサ）の１つとして実装することができる。図示しないが、画像センサ１０４は、専門のマイクロプロセッサ（またはマイクロコントローラ）も含み、それは、画像センサ１０４、メモリバッファに記憶された画像を処理するグラフィック処理ユニット（ＧＰＵ）および／または画像センサ１０４に統合されたメモリからの画像データに従って動作するように構成されている。
【００１４】
[0019]  プロセッサ１０６は、適切な論理、回路およびインターフェイスを備え、それらは、専用メモリ（例えばＥＢＣ回路１０８中の外部メモリ１１０またはオンチップメモリ）に記憶された定まった命令を実行するように構成できる。プロセッサ１０６は、本技術で公知の多くのプロセッサ技術に基づいて実装することができる。プロセッサ１０６の例には、限定されないが、グラフィカルな処理装置（ＧＰＵ）、プロセッサ用の双対プロセッサ（例えば専門の画像双対プロセッサ用である）、専門のデジタル信号プロセサ、中央処理装置（ＣＰＵ）、ｘ８４ベースのプロセッサ、ｘ６４ベースのプロセッサ、縮小命令セットコンピュータ（ＲＩＳＣ）プロセッサ、特定用途向け集積回路（ＡＳＩＣ）プロセッサ、複合命令セットコンピュータ（ＣＩＳＣ）プロセッサが含まれる。
【００１５】
[0020]  ＥＢＣ回路１０８は、適切な論理、回路およびインターフェイスを備え、それらは、複数の画像ブロック（例えば、１６ｘ９画像ブロックまたは８ｘ４画像ブロック）を特定の圧縮因子に従って符号化し、さらに符号化された複数の画像ブロックをＥＢＣ回路１０８において受け取った命令に応じて復号化するように構成できる。複数の画像ブロックは、画像センサ１０４による走査に続いて画像センサ１０４から検索された入力画像（すなわち、圧縮されない原画像）または二次元（２Ｄ）ピクセルアレイの一部にすることができる。ＥＢＣ回路１０８は、外部メモリ１１０中の符号化画像ブロック（複数可）のビット流れの記憶をさらに管理することができ、または符号化画像ブロック（複数可）のビット流れを、専用通信ネットワークを介して他の媒体機器（例えば携帯メディアプレイヤ）に転送するのを管理することができる。
【００１６】
[0021]  ＥＢＣ回路１０８は、媒体機器１０２の他の計算回路とインターフェイス接続された、専門のハードウェア符号器／復号器として実装することができる。そのような実装では、ＥＢＣ回路１０８は、特定の計算回路上の特定の波形率に関連することができる。特定の計算回路の例は、限定されないが、標準マイクロプロセッサ（ＭＰＵ）またはデジタル信号プロセッサ（ＤＳＰ）に基づいて、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、プログラム可能論理回路（ＰＬＤ）、特定用途向け集積回路（ＡＳＩＣ）、プログラム可能ＡＳＩＣ（ＰＬ−ＡＳＩＣ）、特定用途向け集積部品（ＡＳＳＰ）、およびシステムオンチップ（ＳＯＣ）を含むことができる。別の実施形態に従って、ＥＢＣ回路１０８はまた、グラフィカルな処理装置（ＧＰＵ）とインターフェイス接続して、ＥＢＣ回路１０８の動作を並列処理することができる。さらに別の実施形態に従って、ＥＢＣ回路１０８は、媒体機器１０２のハードウェア回路上で、メモリに記憶されたプログラム可能な命令と、論理ユニット（またはプログラマブル論理ユニット）との組合せとして実装することができる。
【００１７】
[0022]  外部メモリ１１０は、適切な論理、回路およびインターフェイスを備え、それらは、入力画像（圧縮されていな原画像または符号化された画像））あるいは入力画像のシーケンスを記憶するように構成できる。外部メモリ１１０は、画像センサ１０４から検索された、非圧縮の原画像ブロック（２Ｄ）を記憶する画像バッファとして働くようにさらに構成できる。追加的に、外部メモリ１１０は、ＥＢＣ回路１０８によって選択的に適用される一連の符号化／復号化方式に関連した命令を記憶し、これにより符号化画像ブロック（複数可）のビット流れを発生することができる。典型的な実施形態では、外部メモリ１１０は、ＥＢＣ回路１０８と外部的にインターフェイス接続できるダイナミックＲＡＭ（ＤＲＡＭ）回路にすることができる。別の典型的な実施形態では、外部メモリ１１０は、ＥＢＣ回路１０８と外部的にインターフェイス接続できるスタティックＲＡＭ（ＳＲＡＭ）回路にすることができる。外部メモリ１１０の実装のさらなる例は、限定されないが、ランダムアクセスメモリ（ＲＡＭ）、読み出し専用メモリ（ＲＯＭ）、読み取り専用メモリ（ＥＥＰＲＯＭ）、ハードディスクドライブ（ＨＤＤ）、ソリッドステートドライブ（ＳＳＤ）、ＣＰＵキャッシュ、または安全なデジタル（ＳＤ）カードを含む。
【００１８】
[0023]  図１には示さないが、媒体機器１０２は、既知のコーデック基準によって実装できる映像コーデックなどをさらに含み、既知のコーデック標準は、高度な映像コーデック（ＡＶＣ）／メディアエキスパート（ＭＰＥＧ４／ＡＶＣ）またはＨ．２６４を含む、ＭＰＥＧ−４／ＨＥＶＣまたはＨ．２６５などを含むことができる。追加的に、映像コーデックは、ＦＦｍｐｅｇ、Ｘｖｉｄ、ＤＩＶｘ、ＶＰ１−９、Ｗｉｎｄｏｗｓメディアコーデック、ＦＦａｖｓなどを含む、他のコーデックライブラリによって支持することができる。
【００１９】
[0024]  システムバス１１２は、媒体機器１０２の異なる構成部品に連結されたデータチャネル（または導電性パス）のセットを含み得る、ハードウェアバスにすることができる。別言すれば、システムバス１１２は、媒体機器１０２の異なる構成部品のデータポート、アドレスポートおよび制御信号ポートを相互に連結することができる。例えば、システムバス１１２は、画像センサ１０４、プロセッサ１０６、ＥＢＣ回路１０８、外部メモリ１１０および他の回路を相互連結することができる。システムバス１１２は、媒体機器１０２に搭載された異なる構成部品間で、シリアルデータ通信または並列処理されたデータ通信を促進するように構成できる。システムバス１１２の例は、８ビットの並列単一システムバス、１６ビットの並列単一のシステムバス、３２ビットの並列単一システムバス、６４ビットの並列単一システムバス、直列データバスなどを含むことができる。
【００２０】
[0025]  動作時、入力画像の複数の画像ブロック（すなわち２Ｄ画像ブロック）を媒体機器１０２の外部メモリ１１０によって受け取ることができる。いくつかの実施形態では、第１の画像ブロックは、媒体機器１０２に接続されたオンチップ画像センサ（たとえば、画像センサ１０４）またはカメラ機器からの複数の画像ブロックから順次検索することができる。他の実施形態では、複数の画像ブロックを、非圧縮の原画像の論理区画から検索することができ、非圧縮の原画像は、媒体機器１０２の永続的なメモリに記憶され、またはカメラ、データサーバなどのような他の媒体メモリから外部的に受け取ることができる。
【００２１】
[0026]  ＥＢＣ回路１０８は、外部メモリ１１０または画像センサ１０４からの複数の画像ブロックから第１の画像ブロックを連続して受け取るように構成できる。ＥＢＣ回路１０８は、第１の画像ブロック上で一連の符号化方式を実行して、符号化画像ブロックのビット流れを発生するように構成できる。同様に、ＥＢＣ回路１０８は、複数の画像ブロック上で一連の符号化方式を実行して、入力画像の圧縮した画像データのビット流れを発生するように構成できる。圧縮した画像データのビット流れは、既に発生した符号化画像ブロックのビット流れを含むことができる。圧縮した画像データのビット流れはヘッダー情報を含み、ヘッダー情報は、複数の画像ブロックの符号化段階において一連の符号化方式が適用され、圧縮した画像データのビット流れを得ることを示す。一連の符号化方式は、前方変換を順次適用することを含み、量子化、残差予測、および１つまたは複数のエントロピ符号化方式が後に続くことができる。一連の符号化方式では、ＥＢＣ回路１０８は、入力画像の複数の画像ブロックから第１の画像ブロックを選択するようにさらに構成できる。その後、ＥＢＣ回路１０８は、第１の画像ブロック上に前方変換を適用して、複数の変換係数を発生するように構成できる。
【００２２】
[0027]  実施形態に従って、前方変換は、入力画像の複数の画像ブロック中の第１の画像ブロック上に、一次元行直接の余弦変換（１Ｄ行ＤＣＴ）および１Ｄ列変換ＤＣＴを順次適用する。１Ｄ行ＤＣＴの後に１Ｄ列ＤＣＴが続くような適用は、行・列ＤＣＴ方法と呼ぶことができる。行・列ＤＣＴ方法では、第１の画像ブロックのための２Ｄ  ＤＣＴが、１Ｄ行ＤＣＴおよび１Ｄ列ＤＣＴを順次適用することによって計算できる。ここで、１Ｄ行ＤＣＴの適用は、第１の画像ブロックの各行上に１Ｄ  ＤＣＴ変換を適用することに対応して、複数の行的変換係数を発生することができ、１Ｄ列ＤＣＴの適用は、行的変換係数のブロックの各列上への１Ｄ  ＤＣＴの適用に対応して、複数の変換係数を発生することができる。
【００２３】
[0028]  実施形態に従って、前方変換は、正弦曲線の単一変換（それは、正規直交基底または固有ベクトルのファミリを含む）のファミリに基づくことができる。１Ｄの前方変換の例は、限定されないが、Ｉ−ＶＩＩＩ離散余弦変換（ＤＣＴ）タイプ、Ｉ−ＶＩＩＩ離散正弦変換タイプ（ＤＳＴ）、離散ウェーブレット変換（ＤＷＴ）、および双対木複数ウェーブレット変換（ＤＣＷＴ）を含むことができる。
【００２４】
[0029]  実施形態に従って、第１の画像ブロックは、ＹＣｂＣｒ色空間における、輝度画像ブロック、クロマブルー画像ブロックまたはクロマレッド画像ブロックの組合せとして表わすことができ、そのような場合に、ＥＢＣ回路１０８は、行・列ＤＣＴ方法のような前方変換を、輝度画像ブロック、クロマレッド画像ブロックおよびクロマブルー画像ブロック上に別々に適用して、ルマブロック、クロマＵブロックおよびクロマＶブロックを発生するように構成できる。
【００２５】
[0030]  ＥＢＣ回路１０８は、第１の画像ブロックのための複数の変換係数を量子化して複数の量子化変換レベルを発生するようにさらに構成できる。同様に、第１の画像ブロック以外の画像ブロック用の変換係数をさらに量子化して、対応する複数の量子化変換レベルを発生することができる。したがって、ＥＢＣ回路１０８は、複数の画像ブロック中の各画像ブロック用の複数の変換係数を連続して量子化した後に、量子化変換レベルの複数のブロックを発生するように構成できる。
【００２６】
[0031]  実施形態に従って、ＥＢＣ回路１０８は、ルナブロック、クロマＵブロックおよびクロマＶブロックの各々における複数の変換係数を量子化して、対応する複数の量子化変換レベルを発生するように構成できる。複数の量子化変換レベルは、複数の離散した量子化ビンによって互いに分離することができる。複数の量子化ビンのための刻み幅は、１Ｄサブブロックの変換係数を複数の量子化変換レベルに効率的に量子化するために、さらに適応して（または一様に）選択することができる。各量子化変換レベルは、量子化ビンの上界および下限から中央値にすることができ、例えば「（１５５，１７５）」量子化ビンは、量子化変換レベル「（１５５＋１７５）／２」、（すなわち「１６５」を含むことができる。量子化により、ＥＢＣ回路１０８は、変換ドメインデータ（すなわち、第１の画像ブロックのための複数の変換係数）から、視覚的に顕著な品質低下なしに、冗長な係数情報を除去することができる。
【００２７】
[0032]  複数の量子化ビンは、量子化パラメータ（ＱＰ）に基づいて決定することができ、量子化パラメータは、適応量子化方式に従って定めた割合につれて変動して、メディアコンテンツを符号化しまたは復号化することができる。ＱＰは、符号化画像ブロック（すなわち、２Ｄ画像ブロック）のビット流れにおいて、０からビット深度まで変動することができる。例えば、圧縮した画像ブロックの８ビットのビット流れのためのＱＰは、変換係数の第１のブロック用に「７」として、変換係数の第２のブロック用に「０」として選択することができ、それが示唆するのは、変換係数の第１のブロックは、第２のブロックよりも微細な刻み幅で量子化され、第２のブロックは、全く量子化されない場合があるということである。
【００２８】
[0033]  ＥＢＣ回路１０８は、量子化変換レベルの複数のブロック上に残りの予測方式を適用するようにさらに構成でき、その場合、各ブロックは、第１の画像ブロックのような対応する２Ｄ画像ブロック用の複数の量子化変換レベルを含むことができる。残差予測方式を適用した後、量子化変換残留レベルの複数のブロックは、量子化変換レベルの複数のブロックから得ることができる。実施形態に従って、ＥＢＣ回路１０８は、残差予測方式を、複数の画像ブロック中の第１の画像ブロックのためのルマブロック、クロマＵブロックおよびクロマＶブロック内の複数の量子化変換レベル上に選択的に適用するように構成できる。例として、残差予測方式を選択的に適用することは、ルマブロックのＤＣ量子化変換レベル（複数可）のみが符号化されたパルス符号変調（ＰＣＭ）であり、クロマＵおよびクロマＶブロックの全てのＤＣおよびＡＣ量子化変換レベルはＰＣＭ符号化されることを含み得る。
【００２９】
[0034]  対応する複数の画像ブロックのための量子化変換残留レベルの複数のブロックは、ＥＢＣ回路１０８内の外部メモリ１１０またはオンチップメモリ（例えば、専用ＳＲＡＭまたはオンチップキャッシュ）のようなメモリに記憶することができる。残差予測方式の例は、限定されないが、ＰＣＭ方式、差動パルス符号変調（ＤＰＣＭ）方式または適応性ＤＰＣＭ（ＡＤＰＣＭ）方式を含む。ＤＰＣＭ方式およびＡＤＰＣＭ方式では、各量子化変換レベルを利用する代わりに、残余は、参照量子化レベルから予測される。
【００３０】
[0035]  第１のブロックは、複数の量子化変換残留レベルを含むことができ、さらにＤＣ量子化変換残留レベルおよび複数のＡＣ量子化変換残留レベルを含むことができる。例えば、「６４」の量子化変換残留レベルから成る「８ｘ８」ブロックは、「１」のＤＣ量子化変換残留レベルと、「６３」のＡＣ量子化変換残留レベルとを含む。ここで、「ＤＣ」および「ＡＣ」は、ゼロ周波数および非ゼロ周波数を示す量子化変換残留レベルをそれぞれ表す。言い換えれば、「ＤＣ」は、画像ブロックまたはサブブロック中の第１の期間である直流（ＤＣ）期間であるのでゼロ周波数を表し、残りの成分は、非ゼロ周波数を示す交流（ＡＣ）期間（ＡＣ値またはＡＣ係数とも呼ばれる）として公知であり、画像圧縮ドメインにおいて周知である。したがって、ＡＣ量子化変換残留レベルはＡＣ係数の量子化変換残留レベルに対応し、ＤＣ量子化変換残留レベルはＤＣ係数の量子化変換残留レベルに対応する。
【００３１】
[0036]  実施形態に従って、ＥＢＣ回路１０８は、複数の量子化変換残留レベルの第１のブロックにおける絶対値のヒストグラム分布を計算して、第１のブロック内の複数の量子化変換残留レベルをエントロピ符号化するように構成できる。ヒストグラム分布は、第１のブロック内の複数の量子化変換残留レベルにおける絶対値の変動の広がりを示すことができる。別言すれば、ヒストグラム分布は、量子化変換残留レベルの範囲を表わす異なるビンを含むことができ、複数の量子化変換残留レベルの各々は、適切なビンに割り当てることができる。異なるビンは、対応するビンに割り当てた量子化変換残留レベルの総数を表すことができる。ヒストグラム分布は、ＥＢＣ回路１０８によって利用して第１のブロック内の複数の量子化変換残留レベルを分類することができる。
【００３２】
[00037]  ＥＢＣ回路１０８は、第１のブロック内の複数の量子化変換残留レベルを、量子化変換残留レベルの第１のセットおよび量子化変換残留レベルの第２のセットに分類するように構成できる。分類は、複数の量子化変換残留レベル中の各量子化変換残留レベルと閾値レベル値との比較に基づいて行うことができる。例えば、第１のセットは、絶対値が「５」（すなわち閾値レベル値）よりも大きい全ての量子化変換残留レベルを含むことができ、第２のセットは、絶対値が５（すなわち閾値レベル値）よりも小さい又はこれと等しい全ての量子化変換残留レベルを含むことができる。
【００３３】
[0038]  分類は論理的分類にすることができ、その場合、第１のブロック内の複数の量子化変換残留レベルは、量子化変換残留レベルを分類主導で再配置することなく、依然として単独のブロックとして処理することができる。エントロピ符号化段階において、ＥＢＣ回路１０８は、第１のブロック内の特定の位置における量子化変換残留レベルが量子化変換残留レベルの第１のセットまたは量子化変換残留レベルの第２のセットに属するかどうかを検出する必要があっても良い。ＥＢＣ回路１０８が第１のブロックを走査している間に、量子化変換残留レベルは、量子化変換残留レベルの第１のセットからであると識別されるときはいつでも、ＥＢＣ回路１０８は、そのような量子化変換残留レベルに、第１のエントロピ符号化方式（例えばハフマンエントロピ符号化方式）を適用するように構成できる。ＥＢＣ回路１０８が第１のブロックを走査している間に、量子化変換残留レベルは量子化変換残留レベルの第２のセットからであると識別されるときはいつでも、ＥＢＣ回路１０８は、第１のエントロピ符号化方式（例えばハフマンエントロピー符号化方式）に基づいてスキップコードを発生するように構成できる。スキップコードはトリガーコードとして働くことができ、トリガーコードは、検出された（例えば符号器回路または復号器回路によって）とき、現在走査されている量子化変換残留レベル（またはビットの符号化された部分）は、量子化変換残留レベルの第２のセットに属し、絶対値が閾値レベル値よりも大きいことを表す。その後、ＥＢＣ回路１０８は、第２のエントロピ符号化方式（例えば、ｋ番目の順序指数関数的Ｇｏｌｏｍｂエントロピ符号化方式）を、対応する量子化変換残留レベルのスキップコードが発生した後、量子化変換残留レベルの第２のセット中の各量子化変換残留レベルに適用するように構成できる。第１のエントロピ符号化方式、または第１のエントロピ符号化方式（スキップコードを発生するための）と第２のエントロピ符号化方式との組合せは、第１のブロック内でＥＢＣ回路１０８によって後に続くＤＣからＡＣの走査順序に従って、第１のブロック内の複数の量子化変換残留レベル上に適用することができる。ＤＣからＡＣの走査シーケンスは、第１のブロックにおいて、ＤＣ量子化変換残留レベルが走査されて、ＡＣ量子化変換残留レベルが後に続く走査シーケンスにすることができる。こうして、異なるエントロピ符号化方式を、量子化変換残留レベルの位置に基づいて、第１のブロックにおいてＤＣからＡＣに走査順序に従って選択的に適用することは、第１のブロック中の複数の量子化変換残留レベル向けの位置依存エントロピ符号化方式と呼ぶことができる。
【００３４】
[0039]  ＥＢＣ回路１０８は、符号化画像ブロックのビット流れを、量子化変換残留レベルの第１のセット上に第１のエントロピ符号化方式を、量子化変換残留レベルの第２のセット上に第１のエントロピ符号化方式と第２のエントロピ符号化方式との組合せを選択的に適用することによって発生するようにさらに構成できる。スキップコードは、ビット流れの一部にすることができ、量子化変換残留レベルの第２のセットに属し得る、量子化変換残留レベルに関連したコード（量子化変換残留レベルを表すビットのセット）に先行する。
【００３５】
[0040]  例えば、「４ｘ４」ブロックは「１６」の量子化変換残留レベルを含むことができ、そのうち「９」の量子化変換残留レベルは、絶対値が「５」よりも大きく、「７」の量子化変換残留レベルは絶対値が「５」よりも小さい又はこれと等しい。ＥＢＣ回路１０８は、ハフマンエントロピ符号化方式を適用することによって「９」の量子化変換残留レベルを符号化して、「３ビット／コード」の「９」ハフマンコード（またはコード）すなわち合計「２７ビット」から成るビット流れを発生するように構成できる。「７」の量子化変換残留レベルの絶対値が「５」よりも大きいので、ハフマンコードは、そのような量子化変換残留レベルを符号化するためにより多くのビットを取得することができる。従って、ＥＢＣ回路１０８は、「２ビット」のスキップコードを発生し、量子化変換残留レベルと閾値レベル値との差（例えば、「７」−「５」または「２」）を符号化し、符号化は、指数関数的Ｇｏｌｏｍｂ方式を、量子化変換残留レベル（「７」の量子化変換残留レベルから）と閾値レベル値との差に適用することによって行うように構成できる。指数関数的Ｇｏｌｏｍｂエントロピ符号化方式は、小さい値を符号化するために他のエントロピ符号化方式よりも少ないビットを使用／利用することができ、「７」の量子化変換残留レベルは、レベルごとに「３」のビットによって符号化することができる。したがって、「７」の量子化変換残留レベルは、レベルごとに「３」のビットおよびスキップコードごとに追加の「２」のビット、すなわち合計「３５」ビットによって符号化することができる。ハフマンコードは、「７」の量子化変換残留レベルのために、レベルごとに「５」以上のビットを使用し、従って、位置ベースのエントロピ符号化は、量子化変換残留レベルの第１のブロックを符号化するためにビットの量を減らし、それは、量子化変換残留レベルの第１のブロックのための圧縮因子を増すのを支援することができる。
【００３６】
[0041]  実施形態に従って、ＥＢＣ回路１０８のＥＢＣ復号器回路（図１に示さない）が、異なる符号化テーブル（例えば、ハフマンエントロピ符号化方式、指数関数的Ｇｏｌｏｍｂエントロピ符号化方式などのためのカスタム符号化テーブル）および量子化テーブルを予め記憶するように構成できる。従って、符号化画像ブロックのビット流れは、異なる符号化テーブルおよび量子化テーブルを含む必要がないようにできる。実施形態に従って、ＥＢＣ回路１０８は、符号化画像ブロックのビット流れを発生し、結果としてビット流れが符号化画像ブロックのビット流れを復号化するために異なる符号化方式を利用する外部復号器によって復号化可能であるように構成できる。そのような場合には、ＥＢＣ回路１０８は、ヘッダー情報または符号化画像ブロックのビット流れに関連する異なる後続流れにおいて、異なる符号化テーブル（例えば、ハフマンエントロピ符号化方式、指数関数的Ｇｏｌｏｍｂエントロピ符号化方式などのためのカスタム符号化テーブル）および量子化テーブルを追加するように構成できる。ビット流れにおけるそのようなカスタムテーブルおよび量子化テーブルの追加によって、ＥＢＣ回路１０８の出力は、他の復号器回路によって復号化可能にできる。
【００３７】
[0042]  実施形態に従って、符号化画像ブロックのビット流れは、入力画像（例えば、２Ｄ画像）の一部として、外部メモリ１１０のようなメモリまたはＥＢＣ回路１０８内のオンチップメモリに記憶することができる。符号化画像ブロックのビット流れには、異なる用途で多数の実装があり得る。実装のうちのいくつかは本明細書に簡単に説明した。１つの実装では、プロセッサ１０６は、符号化１Ｄ画像ブロックのビット流れを、システムバス１１２を介して、媒体機器１０２のシステムバス１１２に通信可能に連結された（または接続された）ディスプレイ回路（例えばビデオカード）のフレームバッファー（またはフレーム記憶）に転送するように構成できる。フレームバッファーは、ディスプレイ回路のための圧縮したフレームバッファーとして働くことができる。ディスプレイ回路（図１に示さない）は、画像ブロックのビット流れを復号化してさらに利用して、媒体機器１０２のディスプレイスクリーン上に画像のパッチを表示することができる。別の実装では、プロセッサ１０６は、符号化画像ブロックのビット流れをシステムバス１１２を介して復号器バッファに転送するように構成でき、復号器バッファは、例えば媒体機器１０２内にある映像復号器の復号器画像バッファ（ＤＰＢ）、画像復号器用のバッファメモリーまたは映像コーデックの符号化された画像バッファ（ＣＰＢ）である。
【００３８】
[0043]  典型的な実装では、媒体機器１０２は、デジタルビデオカメラまたはデジタル画像カメラのようなカメラにすることができ、また符号化画像ブロックのビット流れは、カメラ内のＣＭＯＳセンサから直接受け取るピクセル値の２Ｄアレイに対応することができる。特定のシナリオでは、ＥＢＣ回路１０８は、ＣＭＯＳセンサ回路に実装することができる。ＥＢＣ回路１０８の詳細な動作は、例えば図２、図３および図４にさらに詳しく記載する。
【００３９】
[0044]  図２は、開示の実施形態に従って、様々な周辺の構成部品を有する、残留レベルデータの位置依存エントロピ符号化のための埋込みコーデック（ＥＢＣ）回路を示すブロック図である。図２は図１からの要素とともに説明する。図２を参照すると、ＥＢＣ回路１０８のブロック図解２００が示される。ＥＢＣ回路１０８は、入力／出力（Ｉ／Ｏ）インターフェイス２０２、オンチップメモリ２０４、符号器回路２０６および復号器回路２０８を含むことができる。ブロック図解２００には、画像センサ１０４、プロセッサ１０６および外部メモリ１１０も示され、これらは、システムバス１１２によってＥＢＣ回路１０８に通信可能に連結されている。いくつかの実施形態では、プロセッサ１０６および外部メモリ１１０は、開示の範囲から逸脱することなく、ＥＢＣ回路１０８内に実装することができる。
【００４０】
[0045]  入出力インターフェイス２０２は、適切な論理、回路およびインターフェイスを備え、これらは、複数のＩ／Ｏポートを管理して、システムバス１１２を介して他の周辺の回路（例えば外部メモリ１１０、プロセッサ１０６または画像センサ１０４）からの通信データの交換を促進するように構成できる。通信データは、符号化画像ブロック、制御信号、ＣＰＵ命令などのビット流れを含むことができる。Ｉ／Ｏポートの構成は、ＥＢＣ回路１０８の仕様、例えばＡＳＩＣ、ＦＰＧＡまたはＳｏＣチップ内の物理的なＩ／Ｏピンに依存することができる。
【００４１】
[0046]  オンチップメモリ２０４は、異なる動作上のデータ（例えば、ドメインデータ、残留レベル、量子化レベル、エントロピ符号化ビットなど）を記憶するように構成できる、適切な論理、回路およびインターフェイスを備え、動作上のデータは、ＥＢＣ回路１０８の異なる構成部品によって画像ブロックを符号化するために利用できる。オンチップメモリ２０４が記憶するように構成できる動作上のデータの例は、限定されないが、符号化画像ブロックのビット流れ、変換ドメインデータ、量子化変換レベル、量子化変換残留レベルおよび１Ｄ／２Ｄ画像ブロックを含むことができる。オンチップメモリ２０４は、Ｒ／Ｗ速度、記憶容量、組立て要因などのような、定めたメモリ仕様で設計された特定のメモリとして実施することができる。オンチップメモリ２０４の例は、限定されないが、静的ランダムアクセスメモリ（ＳＲＡＭ）、動的アクセスメモリ（ＤＲＡＭ）および静的動的ＲＡＭ（ＳＤ−ＲＡＭ）を含むことができる。
【００４２】
[0047]  符号器回路２０６は、画像ブロックのビット流れを発生するように構成できる適切な論理、回路およびインターフェイスを備え、発生には、画像ブロック上で、オンチップメモリ２０４または外部メモリ１１０のようなメモリに記憶された一連の符号化方式（位置依存エントロピー符号化方式を含む）を順次適用する。符号器回路２０６は、量子化変換残留レベルのブロック（画像ブロックに対応する）を符号化するために使用できるビットの数を減らすために最適化でき、入力された画像ブロックの圧縮効率および／または圧縮因子を改善する。いくつかの実施形態では、符号器回路２０６はハードウェア符号器チップにすることができ、符号器チップは、ＡＳＩＣ、プログラム可能論理回路（ＰＬＤ）、ＳＯＣ、ＦＰＧＡ、デジタル信号プロセサ（ＤＳＰ）または他の専門化された回路の１つに基づいて実装することができる。他の実施形態では、符号器回路２０６は、ハードウェアと、オンチップメモリ２０４に記憶された命令（例えば、ＶＨＤＬ論理またはＨＤＬ論理に基づいた命令）のセットとの組合せとして実装することができる。
【００４３】
[0048]  復号器回路２０８は、符号化画像ブロックのビット流れを、ビット流れ中のヘッダー情報およびスキップコードのセットに基づいて復号化するように構成できる、適切な論理、回路およびインターフェイスを備え、それにより量子化変換残留レベルを、異なるセット、例えば量子化変換残留レベルの第１のセットおよび量子化変換残留レベルの第２のセットに分類することがトリガーされる。復号器回路２０８は、予め記憶した量子化テーブルおよび符号化テーブルを有することができ、両テーブルは、復号器回路２０８が、符号化画像ブロックのビット流れを復号化するためにための参考として働くことができる。いくつかの実施形態では、復号器回路２０８はハードウェア符号器チップにすることができ、符号器チップは、ＡＳＩＣ、プログラム可能論理回路（ＰＬＤ）、ＳＯＣ、ＦＰＧＡ、デジタル信号プロセサ（ＤＳＰ）または他の専門化された回路の１つに基づいて実装することができる。他の実施形態では、復号器回路２０８は、ハードウェアと、オンチップメモリ２０４内に記憶されたセットの命令（例えばＶＨＤＬ理論またはＨＤＬ論理に基づいた命令）との組合せとして実装することができる。
【００４４】
[0049]  動作時、複数のブロックの量子化変換残留レベルが、入力画像の複数の画像ブロックから発生し、さらに外部メモリ１１０またはオンチップメモリ２０４のようなメモリに記憶することができる。複数のブロックは、入力画像のパッチとも呼ばれる、複数の画像ブロックに対応する残留レベルデータにすることができる。量子化変換残留レベルの複数のブロックは、量子化が後に続く１Ｄ前方変換と、量子化変換レベルの複数のブロックのための残差予測とに基づき発生することができる。例えば、「１２８０ｘ７２０」の入力画像は、「８０」「１６ｘ９」の画像ブロックを有する。符号器回路２０６は、量子化変換残留レベルの複数の「１６ｘ９」ブロックを発生し、発生は、「８０」画像ブロックの各「１６ｘ９」画像ブロック上に、「１６ｘ１」行ＤＣＴ−ＩＩ変換、「１６ｘ１」列ＤＣＴ−ＩＩ変換を順次適用すること、「７」の量子化パラメータによる量子化、後に続く「８０」画像ブロックの各「１６ｘ９」ブロック内での量子化変換レベルのＰＣＭ符号化によって起こる。
【００４５】
[0050]  複数のブロックの量子化変換残留レベルをエントロピ符号化するために、符号器回路２０６は、外部メモリ１１０またはオンチップメモリ２０４のようなメモリから、複数のブロック中の第１のブロックを検索するように構成できる。第１のブロックは、ＤＣ量子化変換残留レベルおよび複数のＡＣ量子化変換残留レベルを含むことができ、例えば「１６ｘ１６」ブロックは、１つのＤＣ量子化変換残留レベルと、「１５」のＡＣ量子化変換残留レベルとを有することができる。
【００４６】
[0051]    所定の実施形態では、第１のブロックは、対応する画像ブロックが輝度画像ブロックであればルマブロックであり、第１のブロックは、対応する画像ブロックがクロマ画像ブロックであれば、クロマＵブロックまたはクロマＶブロックである。さらに、第１のＲＧＢ画像ブロックのために、符号器回路２０６は、ＲＧＢ（またはＢＧＲ）画像ブロックをルマブロック、クロマＵブロックおよびクロマＶブロックに変換するように構成できる。ルマブロック、クロマＵブロックまたはクロマＶブロック内のＡＣ量子化変換残留レベルの絶対値は、パターンに従って変動することができ、パターンは、高周波のＡＣ量子化変換残留レベルおよび低周波のＡＣ量子化変換残留レベルを有する特定の領域を表すことができる。
【００４７】
[0052]  第１のブロック内でのＤＣ量子化変換残留レベルおよびＡＣ量子化変換残留レベルの位置は、方向（例えば走査順序）に基づくことができ、方向は、第１の画像ブロック（第１のブロックに対応する）において１Ｄ列変換および１Ｄ列変換を複数のピクセル値上に連続して適用するために選択されている。例えば、１Ｄ列ＤＣＴ変換の適用により、第１の位置にＤＣ変換係数が発生し、第１のブロック内の異なる列中の引き続く位置に残りのＡＣ変換係数が発生する。同様に、１Ｄ行変換を適用した後に１Ｄ列ＤＣＴ変換を連続して適用することにより、第１の位置にＤＣ変換係数が発生し、第１のブロック内の異なる列の引き続く位置に残りのＡＣ変換係数が発生する。
【００４８】
[0053]  符号器回路２０６は、複数のブロック中の第１のブロック内の複数の量子化変換残留レベルを、量子化変換残留レベルの第１のセットおよび量子化変換残留レベルの第２のセットに分類するように構成できる。複数の量子化変換残留レベルの分類は、複数の量子化変換残留レベル中の各量子化変換残留レベルと、閾値レベル値との比較に基づいて行うことができる。比較は、第１のブロック内の複数の量子化変換残留レベル中の各量子化変換残留レベルの絶対値が、閾値レベル値よりも小さい、これと等しいまたはこれよりも大きくても、検査に対応することができる。実施形態に従って、量子化変換残留レベルの第１のセットの中の各量子化変換残留レベルの絶対値は、閾値レベル値よりも小さく、これと等しくまたはこれよりも大きくできる。実施形態に従って、量子化変換残留レベルの第２のセット中の各量子化変換残留レベルの絶対値は、閾値レベル値よりも大きい。
【００４９】
[0054]  実施形態に従って、符号器回路２０６は、第１のブロック（例えばルマブロック、クロマＵブロックまたはクロマＶブロック）内に複数の量子化変換残留レベルのヒストグラム分布を発生するように構成できる。ヒストグラム分布は複数のビンを有することができ、例えば、第１のビンは、量子化変換残留レベルの絶対値のための範囲「［０および５］」（「５」を含む）］を有することができる。後続のビンは、範囲「［０および５］」よりも大きい状態にある量子化変換残留レベルの絶対値を含むことができる。符号器回路２０６は、絶対値が第１ビンの範囲内にある量子化変換残留レベルを、量子化変換残留レベルの第１のセットに分類するように構成できる。同様に、符号器回路２０６は、絶対値が第１のビンの範囲よりも大きい量子化変換残留レベルを、量子化変換残留レベルの第２のセットに分類するように構成できる。
【００５０】
[0055]  符号器回路２０６は、第１のエントロピ符号化方式を量子化変換残留レベルの第１のセット上に適用し、および第１のエントロピ符号化方式と第２のエントロピ符号化方式との組合せを量子化変換残留レベルの第２のセット上に適用するようにさらに構成できる。第１のエントロピ符号化方式の適用、または第１のエントロピ符号化方式と第２のエントロピ符号化方式との組合せの適用は、第１のブロックにおけるＤＣからＡＣの走査順序に実装することができる。第１のブロック内でのＤＣからＡＣの走査順序は、第１のブロックにおいてＤＣ量子化変換残留レベルが走査され、ＡＣ量子化変換残留レベルの走査が後に続く走査シーケンスにすることができる。より具体的には、ＤＣからＡＣの走査命令が続いて起こることによって、符号器回路２０６は、第１のエントロピ符号化方式と第２のエントロピ符号化方式との間で切り換わるように構成できる。切換えは、第１のブロックにおける量子化変換残留レベル（ＤＣまたはＡＣ）の位置、第１のブロック内の特定位置において、量子化変換残留レベルが量子化変換残留レベルの第１のセットまたは量子化変換残留レベルの第２のセットにあるかどうかに、基づくことができる。
【００５１】
[0056]  実施形態に従って、第１のエントロピ符号化方式は、ハフマンエントロピ符号化方式にすることができ、第２のエントロピ符号化方式は、指数関数的Ｇｏｌｏｍｂエントロピ符号化方式にすることができる。符号器回路２０６は、量子化変換残留レベルの第１のセットを、予め特定されたハフマンテーブルのセットに基づいて符号化するようにさらに構成できる。量子化変換残留レベルの第１のセットは、ハフマンエントロピ符号化方式に従ってエントロピ符号化することができる。予め特定されたハフマンテーブルのセットは、デフォルトハフマンテーブルの第１のセットおよび位置特異的なハフマンテーブルの第の２セットを含むことができる。
【００５２】
[0057]  実施形態に従って、予め特定されたハフマンテーブルのセットは、第１の位置特異的なハフマンテーブル（「Ｔ0」）、第２の位置特異的なハフマンテーブル（「Ｔ1」）、第３の位置特異的なハフマンテーブル（「Ｔ2」）を含む。さらに、予め特定されたハフマンテーブルのセットは、ルマブロック用の第１のデフォルトハフマンテーブル（「Ｔ3」）、クロマＵブロックまたはクロマＶブロック用の第２のデフォルトハフマンテーブル（「Ｔ4」）を含む。表１は、予め特定されたハフマンテーブルの表を以下のように示す。
2020127188.tif 000003
表１：予め特定されたハフマンテーブル
【００５３】
[0058]  表１において、異なる量子化変換残留レベルすなわち「０」、「１」、「−１」、ａｂｓ（「２」）、ａｂｓ（「３」）、ａｂｓ（「４」）およびａｂｓ（「５」）のためのハフマンコードが、Ｔ0、Ｔ1、Ｔ2、Ｔ3およびＴ4にそれぞれ与えられる。追加的に、スキップコードのためのハフマンコードが発生し、発生は、第１のブロックにおいてＤＣからＡＣの走査順序の特定位置で検出された量子化変換残留レベルが、閾値（例えば閾値「５」）よりも大きいとき起こる。デフォルトハフマンテーブルおよび位置特異的なハフマンテーブルの選択は、エントロピ符号化段階において符号器回路２０６によって、後に続く異なる規則に基づいて行なうことができる。規則は本明細書で検討した。
【００５４】
[0059]  実施形態に従って、符号器回路２０６は、デフォルトハフマンテーブルの第１のセット（例えば、テーブルＴ1、Ｔ3またはＴ4に示す）からデフォルトハフマンテーブルを選択して、第１のブロックにおいてＤＣからＡＣの走査順序に従って、量子化変換残留レベルの第１のセットを符号化するように構成できる。デフォルトハフマンテーブルの第１のセットは、量子化変換残留レベルが、エントロピ符号化段階においてルマブロックおよびクロマ（ＵまたはＶ）ブロックからデフォルトテーブルとして選択されるときは、デフォルトテーブルとして選択することができる。デフォルトハフマンテーブルの第１のセットが選択された場合、異なる位置における量子化変換残留レベルは、第１のブロック内の量子化変換残留レベルの絶対値に対応して一覧表示されたハフマンコードによって符号化することができる。
【００５５】
[0060]  実施形態に従って、デフォルトハフマンテーブルが、デフォルトハフマンテーブルの第１のセット（例えば、表１に示したＴ3またはＴ4）から選択され、第１のブロック内の現在位置における特定の量子化変換残留レベルためのハフマンコードを発生することができ、これは、以前に符号化された量子化変換残留レベルの絶対値が、「５」のような閾値レベル値よりも大きいときはいつでも起こる。実施形態に従って、符号器回路２０６は、位置特異的なハフマンテーブルの第２のセット（例えば表１、Ｔ0、Ｔ1およびＴ2に示す）から、第１のブロック内の各量子化変換残留レベルの特定位置に基づいて、位置特異的なハフマンテーブルを選択するようにさらに構成できる。位置特異的なハフマンテーブルは、量子化変換残留レベルの第１のセットを符号化するために、第１のブロック内でのＤＣからＡＣの走査順序に従って選択することができる。
【００５６】
[0061]  例えば、量子化変換残留レベルの「４ｘ４」ブロックは、以下のように与えることができる。
2020127188.tif 000004
ブロック（Ｂ）では、「４ｘ４」すなわち「１６」の量子化変換残留レベルがあり、その場合第１の量子化変換残留レベルは、値が「−２１」であるＤＣ量子化変換残留レベルであり、残りの量子化変換残留レベルは、ＡＣ量子化変換残留レベルである。ブロック（Ｂ）をエントロピ符号化するために、ブロック（Ｂ）内の複数の量子化変換残留レベルは、第１のセットおよび第２のセットに分類されている。第１のセットは、「５」よりも小さいまたはこれと等しい量子化変換残留レベルの絶対値、すなわち「０、０、０、０、０、０、１、１、１、２、３、５および５」を有することができる。同様に、第２のセットは、「５」よりも大きい量子化変換残留レベルの絶対値、すなわち「６、７および２１」を有することができる。
【００５７】
[0062]  符号器回路２０６は、ブロック（Ｂ）をＤＣからＡＣの走査順序に走査し、それにより、ブロック（Ｂ）内の量子化変換残留レベルが符号器回路２０６によってアクセス可能なシーケンス（または位置）が特定されるように構成できる。その後、符号器回路２０６は、現在位置において量子化変換残留レベルが第１のセットまたは第２のセットの何れからであるかに基づいて、ハフマンエントロピ符号化方式、またはハフマンエントロピ符号化方式と指数関数的Ｇｏｌｏｍｂエントロピ符号化方式との組合せを選択的に適用するように構成できる。現在位置では、量子化変換残留レベルが第１のセットの一部である場合、符号器回路２０６は、量子化変換残留レベルのためのハフマンコードを、デフォルトハフマンテーブル（例えば、ブロック（Ｂ）がルマブロックまたはクロマブロックの場合）に基づいて発生するように構成できる。
【００５８】
[0063]  実施形態に従って、ＤＣからＡＣの走査順序では、符号器回路２０６は第１のブロック内の現在位置での量子化変換残留レベルは、量子化変換残留レベルの第２のセットの一部であると識別するように構成できる。そのような場合、符号器回路２０６は、量子化変換残留レベルの第２のセット中の各量子化変換残留レベル用のスキップコードを、第１のエントロピ符号化方式、例えばハフマンエントロピ符号化方式に従って発生すようにさらに構成できる。スキップコードの発生により、復号器回路２０８は、復号化段階において、各量子化変換残留レベルを、量子化変換残留レベルの第１のセットまたは量子化変換残留レベルの第２のセットに分類することが可能になる。
【００５９】
[0064]  スキップコードの発生後、符号器回路２０６は、量子化変換残留レベルの第２のセット上に第２のエントロピ符号化方式（例えば、指数関数的Ｇｏｌｏｍｂエントロピ符号化方式）を適用することに基づいて、量子化変換残留レベルの第２のセットを符号化するように構成できる。指数関数的Ｇｏｌｏｍｂエントロピ符号化方式は、ｋ番目順序の指数関数的Ｇｏｌｏｍｂエントロピ符号化方式にすることができ、その場合ｋの値は、画像ブロックのコンテンツに基づいて予め定めまたは適応させることができる。各量子化変換残留レベルは、量子化変換残留レベルの第２のセット中の各量子化変換残留レベル用のスキップコードが発生した後に、符号化することができる。量子化変換残留レベルの第２のセットの中の各量子化変換残留レベル用に符号化されたコードが後に続くスキップコードを連続して発生することは、第１のエントロピ符号化方式と第２のエントロピ符号化方式との組合せの適用に対応することができる。
【００６０】
[0065]  いくつかの実施形態において、表１に示すように、量子化変換残留レベルの第２のセット中の量子化変換残留レベルのために、スキップコードは、予め特定されたハフマンテーブルのセットに基づいて（ハフマンエントロピ符号化方式の適用とも呼ばれる）発生することができる。その後、符号器回路２０６は、同じ量子化変換残留レベル用に、指数関数的Ｇｏｌｏｍｂコードを発生するように構成できる。代替的に、量子化変換残留レベルが閾値レベル値（例えば「５」）よりも大きいことをスキップコードが既に示すので、符号器回路２０６は、量子化変換残留レベルと閾値レベル値との間の絶対差用に指数関数的Ｇｏｌｏｍｂコードを発生するように構成できる。したがって、復号器回路２０８は、スキップコード用の符号化された量子化変換残留レベルが復号化段階で検出されたときはいつでも、指数関数的Ｇｏｌｏｍｂコードを、量子化変換残留レベルの実際の値と閾値レベル値との間の絶対差として扱うように構成できる。
追加的に、指数関数的Ｇｏｌｏｍｂコードは復号化することができるので、閾値レベル値の追加により、量子化変換残留レベルは再び実際の値に戻ることができる。そのような場合、指数関数的Ｇｏｌｏｍｂエントロピ符号化方式の実装により、特に指数関数的Ｇｏｌｏｍｂエントロピ符号化方式の適用のための符号器回路２０６への入力がより小さい入力値（例えば、典型的に「０〜３」の範囲）を含むとき、ハフマンエントロピ符号化方式と比較して、使用するビット数がより少なくできる。
【００６１】
[0066]  符号器回路２０６は、符号化画像ブロックのビット流れを発生し、発生は、第１のエントロピ符号化方式、および第１のエントロピ符号化方式と第２のエントロピ符号化方式との組合せを適用することによって、第１のブロック内で続いて起こるＤＣからＡＣの走査順序に従って起こるように構成できる。いくつかの実施形態では、発生したビット流れは、後の段階に媒体機器１０２で使用するために、オンチップメモリ２０４および外部メモリ１１０のようなメモリに記憶することができる。他の実施形態では、発生したビット流れは、ＥＢＣ回路１０８の内部の復号器回路２０８、あるいは外部の映像コーデックまたは画像コーデック回路に直接伝達することができる。符号器回路２０６および実装したエントロピ符号化方式の詳細は、例えば図３Ａ、図３Ｂ、図４Ａおよび図４Ｂにさらに詳しく記載する。
【００６２】
[0067]  図３Ａおよび図３Ｂは、開示の実施形態に従って、一緒に、入力画像ブロックの量子化変換残留レベルのブロックのための、第１のヒストグラム分布および第２のヒストグラム分布を描いている。図３Ａおよび図３Ｂを参照すれば、第１のヒストグラム分布３００Ａおよび第２のヒストグラム分布３００Ｂが示される。
【００６３】
[0068]  図３Ａを参照して、符号器回路２０６は、サンプルごとに「４」ビットのようなサンプルごとに特定のビットにおいて、第１のヒストグラム分布３００Ａを発生するために、量子化変換残留レベルのルマブロック（すなわち第１のブロック）を走査する（ＤＣからＡＣの走査順序にしたがって）ように構成できる。第１のヒストグラム分布３００Ａは、ルマブロック（すなわち第１のブロック）の量子化変換残留レベル（Ｙ軸線に沿って表わす）の総数を、「５」のような特定のビンサイズである異なるヒストグラムビン（Ｘ軸に沿って表わす）に与える。示すように、１Ｄ行ＤＣＴ変換および１Ｄ列ＤＣＴ変換を適用した後に、量子化変換残留レベルの最大数は「０」から「５」の範囲にあり、量子化変換残留レベルの残りの数は値「５」よりも大きい。したがって、ヒストグラム分布に基づいて、符号器回路２０６は、閾値レベル値「５」を設定するように構成できる。ルマブロック内では、「５」よりも小さいまたはこれと等しい全ての量子化変換残留レベルは、ハフマンエントロピ符号化方式の適用を受けることができる。残りの量子化変換残留レベルは、ハフマンエントロピ符号化方式の適用を受けて、スキップコードを発生することができ、スキップコードは、絶対値が閾値レベル値「５」よりも大きい、量子化変換残留レベル（復号器回路２０８または符号器回路２０６における）の存在を独自に示すことができる。その後、対応する量子化変換残留レベルのための各スキップコードのために、符号器回路２０６は、ルマブロック内の対応する量子化変換残留レベルのために指数関数的Ｇｏｌｏｍｂコードを発生するように構成できる。
【００６４】
[0069]  図３Ｂを参照して、クロマブロック（すなわち第１のブロック）の量子化変換残留レベルを走査して（ＤＣからＡＣの走査順序にしたがって）、符号器回路２０６は、サンプルごとに「４」ビットのようなサンプルごとに特定のビットで第２のヒストグラム分布３００Ｂを発生するように構成できる。第２のヒストグラム分布３００Ｂにより、クロマＵブロックまたはクロマＶブロックの量子化変換残留レベル（Ｙ軸に沿って表わす）の総数が、「５」のような特定のビンサイズの異なるヒストグラムビン（Ｘ軸に沿って表わす）内に与えられる。示すように、１Ｄ行ＤＣＴ変換および１Ｄ列ＤＣＴ変換を適用した後に、量子化変換残留レベルの最大数は範囲「０」〜「５」にあり、量子化変換残留レベルの残りの数は値「５」よりも大きい。したがって、ヒストグラム分布に基づいて、符号器回路２０６は、「５」のような閾値レベル値を設定するように構成できる。クロマブロック内では、「５」よりも小さい全ての量子化変換残留レベルは、ハフマンエントロピ符号化方式の適用を受けることができる。残りの量子化変換残留レベルは、ハフマンエントロピ符号化方式の適用を受けてスキップコードを発生することができ、スキップコードは、絶対値が閾値レベル値「５」よりも大きい量子化変換残留レベルの存在（復号器回路２０８または符号器回路２０６における）を独自に示すことができる。その後、対応する量子化変換残留レベル用の各スキップコードに代えて、符号器回路２０６は、ルマブロック内で対応する量子化変換残留レベルための指数関数的Ｇｏｌｏｍｂコードを発生するように構成できる。
【００６５】
[0070]  図４Ａは、開示の実施形態に従って、図２のＥＢＣ回路による残留レベルデータの位置依存エントロピ符号化のための典型的な動作を図示するフローチャートである。図４Ａは、図１、図２、図３Ａおよび図３Ｂからの要素とともに説明する。図４Ａを参照すると、ステップ４０４から始まるフローチャート４００Ａが示される。フローチャート４００Ａは、量子化変換残留レベルの第１のブロック４０２における位置依存エントロピ符号化の適用の流れを記載している。
【００６６】
[0071]  示すように、第１のブロック４０２は、「４ｘ４」ブロックにすることができ、それは、複数の量子化変換残留レベル、すなわちＡ11、Ａ12、Ａ13、Ａ14、Ａ21、Ａ22、Ａ23、Ａ24、Ａ31、Ａ32、Ａ33、Ａ34、Ａ41、Ａ42、Ａ43およびＡ44を含む。ここで、Ａ11は、ＤＣ量子化変換残留レベルにすることができ、残りのＡ12、Ａ13、Ａ14、Ａ21、Ａ22、Ａ23、Ａ24、Ａ31、Ａ32、Ａ33、Ａ34、Ａ41、Ａ42、Ａ43およびＡ44は、ＡＣ量子化変換残留レベルにすることができる。符号器回路２０６は、第１のブロック４０２をＤＣからＡＣの走査順序で走査するように構成でき、ここでＤＣ量子化変換残留レベルが最初に走査され、ＡＣ量子化変換残留レベルの漸進的な行型走査が後に続く。
【００６７】
[0072]  ４０４にて、量子化変換残留レベル「Ａ11」の絶対値が「５」よりも小さい又はこれと等しいかどうかが決定できる。ここで、図３Ａおよび図３Ｂに記載したように、「５」は閾値レベル値にすることができる。符号器回路２０６は、量子化変換残留レベル「Ａ11」の絶対値が「５」よりも小さい又はこれと等しいかどうかを決定するように構成できる。「Ａ11」の絶対値が「５」よりも小さい又はこれと等しい場合、制御は４０６に進む。そうでなければ、制御は４０８に進む。
【００６８】
[0073]  ４０６にて、「Ａ11」は、の量子化変換残留レベルの第１のセットに分類することができる。符号器回路２０６は、「Ａ11」を量子化変換残留レベルの第１のセットに分類するように構成できる。「Ａ11」を第１のセットに分類することは、「Ａ11」の絶対値が、閾値レベル値「５」よりも小さい又はこれと等しいことを表し得る。さらに、そのような分類により、「Ａ11」はハフマンエントロピ符号化方式によって符号化されたエントロピにできることが表される。
【００６９】
[0074]  ４０８にて、「Ａ11」は、量子化変換残留レベルの第２のセットに分類することができる。符号器回路２０６は、「Ａ11」を量子化変換残留レベルの第２のセットに分類するように構成できる。「Ａ11」を第２のセットに分類することは、「Ａ11」の絶対値が閾値レベル値「５」より大きいことを表し得る。さらに、そのような分類により、「Ａ11」は、それ自体を、指数関数的Ｇｏｌｏｍｂエントロピ符号化方式によって符号化された第１のセットおよびさらなるエントロピから分離するために、スキップコードを必要とすることを表し得る。
【００７０】
[0075]  ４１０にて、「Ａ11」がルマブロックの一部かどうかが決定できる。ルマブロックは、光の三原色（ＲＧＢ）（またはＢＧＲ）画像ブロックの変換である輝度画像ブロックに対応する。符号器回路２０６は、「Ａ11」がルマブロックの一部かどうかを決定して、「Ａ11」用のハフマンコードを発生するための適切なハフマンテーブルを選択するように構成できる。「Ａ11」がルマブロックの一部である場合、制御は４１２に進む。そうでなければ、制御は４１４に進む。
【００７１】
[0076]  ４１２にて、「Ａ11」用のハフマンコードは、ルマブロック向けのデフォルトハフマンテーブルに基づいて発生できる。符号器回路２０６は、ルマブロック向けのデフォルトハフマンテーブルに基づいて、「Ａ11」用のハフマンコードを発生するように構成できる。いくつかの実施形態では、デフォルトハフマンテーブルの代わりに、符号器回路２０６は、ハフマンテーブルを、ハフマンテーブルの予め特定されたセット（例えば図２の表１に与えたＴ0、Ｔ1、Ｔ2、Ｔ3およびＴ4）から選択するように構成できる。特定のハフマンテーブルの選択は、ルマブロック（すなわち第１のブロック）における「Ａ11」のような、選択された量子化変換残留レベルの位置に依存することができる。さらに、いくつかの実施形態では、特定のハフマンテーブルの選択は、ルマブロック内で続いて起こるＤＣからＡＣの走査順序に依存することができる。
【００７２】
[0077]  ４１４にて、「Ａ11」用のハフマンコードは、クロマブロック（例えばＣｂ／クロマＵまたはＣｒ／クロマＶブロック）向けのデフォルトハフマンテーブルに基づいて発生することができる。符号器回路２０６は、「Ａ11」用のハフマンコードをクロマブロック向けのデフォルトハフマンテーブルに基づいて発生するように構成できる。いくつかの実施形態では、デフォルトハフマンテーブルの代わりに、符号器回路２０６は、ハフマンテーブルの予め特定されたセット（例えば図２の表１に与えるＴ0、Ｔ1、Ｔ2、Ｔ3およびＴ4）からハフマンテーブルを選択するように構成できる。特定のハフマンテーブルの選択は、クロマブロック（すなわち第１のブロック）における、「Ａ11」のような選択された量子化変換残留レベルの位置に依存することができる。さらに、いくつかの実施形態では、特定のハフマンテーブルの選択は、クロマブロック内で続けて起こるＤＣからＡＣの走査順序に依存することができる。
【００７３】
[0078]  ４１６にて、「Ａ11」用のスキップコードは、ハフマンテーブルの予め特定されたセットからのデフォルトハフマンテーブルに基づいて発生することができる。符号器回路２０６は、「Ａ11」用のスキップコードを発生するように構成できる。スキップコードが発生するのは、符号器回路２０６が、「Ａ11」用の適用可能なエントロピ符号化方式および「Ａ11」のクラスの少なくとも一方を識別するのを助けるためである。さらに、スキップコードは、復号器回路２０８によってビット流れ内で検出されたとき、復号器回路２０８をトリガーして量子化変換残留レベルから来るべきそれに続くビットを扱い、残留レベルは、絶対値が閾値レベル値「５」よりも大きく、かつビット流れ内でスキップコードに続いて起こるビットために、指数関数的Ｇｏｌｏｍｂエントロピ復号方式のようなエントロピ復号化方式を選択する。
【００７４】
[0079]  ４１８にて、「Ａ11」のために指数関数的Ｇｏｌｏｍｂコードを発生することができる。符号器回路２０６は、「Ａ11」用のスキップコードが発生した後、「Ａ11」用の指数関数的Ｇｏｌｏｍｂコードを発生するように構成できる。所定の実施形態では、指数関数的Ｇｏｌｏｍｂコードは、「Ａ11」と閾値レベル値「５」との間の絶対差に関して発生することができる。そのような実装では、指数関数的Ｇｏｌｏｍｂコードは、「Ａ11」の全値ではなく差だけを記憶することができ、それにより、結果的にそうでなければ「Ａ11」の値を記憶するように要求される、ビットの数が減少することができる。
【００７５】
[0080]  ４２０にて、制御は「Ａ12」のような次の量子化変換残留レベルに進むことができる。符号器回路２０６は、制御を、第１のブロック４０２内における次の残留レベル、たとえば量子化変換「Ａ12」に進めるように構成できる。
【００７６】
[0081]  図４Ｂは、開示の実施形態に従って、一連の符号化方式を図２のＥＢＣ回路によって二次元（２Ｄ）の画像ブロック上に順次適用した、異なるブロック出力を示す図表である。図４Ｂは、図１、図２、図３Ａ、図３Ｂおよび図４Ａからの要素とともに説明する。図４Ｂを参照して、量子化変換残留レベルの異なるブロック、すなわち行ＤＣＴルマブロック、列ＤＣＴルマブロック、行ＤＣＴクロマブロックおよび列ＤＣＴクロマブロックが示される。行ＤＣＴルマブロック、列ＤＣＴルマブロック、行ＤＣＴクロマブロックおよび列ＤＣＴクロマブロックでは、異なる領域は、対応するブロックを符号化するために使用する、予め特定されたハフマンテーブルのセット（例えば表１に示されるＴ0、Ｔ1、Ｔ2、Ｔ3およびＴ4）からのハフマンテーブルを特定するために示される。
【００７７】
[0082]  図５Ａおよび図５Ｂは、開示の実施形態に従って、一緒に残留レベルデータの位置依存エントロピ符号化のための典型的な方法を図示するフローチャートを描いている。図５は、図１、図２、図３Ａ、図３Ｂ、図４Ａおよび図４Ｂからの要素とともに説明する。図５Ａおよび図５Ｂを参照すると、フローチャート５００が示される。フローチャート５００は、ステップ５０２から開始し５０４に進む動作を記載することができる。
【００７８】
[0083]  ５０４にて、入力画像は、複数の画像ブロックに分割することができる。符号器回路２０６は、入力画像、例えば「１２８０ｘ７２０」入力画像を、複数の画像ブロック、例えば複数の１６ｘ１６画像ブロックに分割するように構成できる。
【００７９】
[0084]  ５０６にて、１Ｄ行ＤＣＴ変換および１Ｄ列ＤＣＴ変換の連続する適用と、後に続く量子化および残差予測とが複数の画像ブロック上で実行され、量子化変換残留レベルの複数のブロックを発生する。符号器回路２０６は、１Ｄ行ＤＣＴ変換および１Ｄ列ＤＣＴ変換を連続する適用と、引き続く量子化および残差予測とを複数の画像ブロック上で実行するように構成でき、これにより複数のブロックの量子化変換残留レベルが発生する。
【００８０】
[0085]  ５０８にて、入力画像の複数の画像ブロックのための量子化変換残留レベルの複数のブロックが記憶できる。メモリ（例えばオンチップメモリ２０４または外部メモリ１１０）は、入力画像の複数の画像ブロックのための量子化変換残留レベルの複数のブロックを記憶するように構成できる。
【００８１】
[0086]  ５１０にて、第１のブロック内の各位置における量子化変換残留レベルは、閾値レベル値よりも小さい又はこれと等しいかどうかが決定できる。符号器回路２０６は、第１のブロック内の各位置における量子化変換残留レベルが閾値レベル値よりも小さい又はこれと等しいかどうかを決定するように構成できる。第１のブロック内の各位置における量子化変換残留レベルが、閾値レベル値よりも小さい又はこれと等しい場合、制御は５０８に進み、そうでなければ制御は５１２に進む。
【００８２】
[0087]  ５１２にて、複数のブロック中の第１のブロック内にある複数の量子化変換残留レベルの１つまたは複数は、量子化変換残留レベルの第１のセットに分類することができる。符号器回路２０６は、第１のブロック内にある複数の量子化変換残留レベルの１つまたは複数を、量子化変換残留レベルの第１のセットに分類するように構成できる。
【００８３】
[0088]  ５１４にて、量子化変換残留レベルの第１のセット上に、第１のエントロピ符号化方式が第１のブロックにおいてでＤＣからＡＣの走査順序で適用できる。符号器回路２０６は、第１のエントロピ符号化方式を、量子化変換残留レベルの第１のセット上に、第１のブロックにおいてＤＣからＡＣの走査順序で適用するように構成できる。
【００８４】
[0089]  ５１６にて、複数のブロック中の第１のブロック内にある複数の量子化変換残留レベルの１つまたは複数は、量子化変換残留レベルの第２のセットに分類することができる。符号器回路２０６は、第１のブロック内にある複数の量子化変換残留レベルの１つまたは複数を、量子化変換残留レベルの第２のセットに分類するように構成できる。
【００８５】
[0090]  ５１８にて、量子化変換残留レベルの第２のセット上に、第１のエントロピ符号化方式と第２のエントロピ符号化方式との組合せが、第１のブロック内でＤＣからＡＣの走査順序で適用できる。符号器回路２０６は、第１のエントロピ符号化方式と第２のエントロピ符号化方式との組合せを、量子化変換残留レベルの第２のセット上に、第１のブロック内でＤＣからＡＣの走査順序で適用するように構成できる。
【００８６】
[0091]  ５２０にて、符号化画像ブロックのビット流れが、第１のエントロピ符号化方式、および第１のエントロピ符号化方式と第２のエントロピ符号化方式との組合せを、第１のブロック内で続いて起こるＤＣからＡＣの走査に従って適用することによって、発生することができる。符号器回路２０６は、符号化画像ブロックのビット流れを発生し、発生は、第１のエントロピ符号化方式、および第１のエントロピ符号化方式と第２のエントロピ符号化方式との組合せを、第１のブロック内で続いて起こるＤＣからＡＣの走査順序に従って適用することによって起こるように構成できる。制御は終了に進む。
【００８７】
[0092]  開示の所定の実施形態は、埋込みコーデック（ＥＢＣ）回路（例えばＥＢＣ回路１０８）に見出される。開示の様々な実施形態は、メモリ（例えばオンチップメモリ２０４または外部メモリ１１０）と、メモリに通信可能に連結された符号器回路（例えば符号器回路２０６）とを含む、ＥＢＣ回路を提供することができる。メモリは、入力画像の複数の画像ブロックのための、量子化変換残留レベルの複数のブロックを記憶するように構成できる。符号器回路は、複数のブロック中の第１のブロック内にある複数の量子化変換残留レベルを、量子化変換残留レベルの第１のセットおよび量子化変換残留レベルの第２のセットに分類するように構成できる。分類は、複数の量子化変換残留レベル中の各量子化変換残留レベルと閾値レベル値との比較に基づいて行なうことができる。符号器回路は、第１のエントロピ符号化方式を量子化変換残留レベルの第１のセット上に、第１のエントロピ符号化方式と第２のエントロピ符号化方式との組合わせを量子化変換残留レベルの第２のセット上に、第１のブロック内でのＤＣからＡＣの走査順序で適用するようにさらに構成できる。いくつかの実施形態では、第１のブロック内のＤＣからＡＣの走査順序は、第１のブロックにおいてＤＣ量子化変換残留レベルが走査され、ＡＣ量子化変換残留レベルが後に続き得る走査シーケンスである。符号化画像ブロックのビット流れは、符号器回路を用いて、第１のエントロピ符号化方式、および第１のエントロピ符号化方式と第２のエントロピ符号化方式との組合せを、第１のブロック内で続いて起こるＤＣからＡＣの走査順序に従って適用することよって、さらに発生することができる。
【００８８】
[0093]  実施形態に従って、符号器回路は、複数の画像ブロック上で符号化方式を順次実行して、入力画像の圧縮した画像データのビット流れを発生するように構成できる。圧縮した画像データのビット流れは、符号化画像ブロックの発生したビット流れを含むことができる。圧縮した画像データのビット流れはヘッダー情報を含み、ヘッダー情報は、複数の画像ブロックの符号化段階において、圧縮した画像データのビット流れを得るために符号化方式が順次適用されることを示し得る。一連の符号化方式は、前方変換、これに続く量子化、残差予測、および第１のエントロピ符号化方式、または第１のエントロピ符号化方式と第２のエントロピ符号化方式との組合せのうち選択されたものを連続して適用することを含み得る。符号器回路は、一連の符号化方式を入力画像の複数のブロック上に順次適用することに基づいて、量子化変換残留レベルの複数のブロックを発生するように構成できる。前方変換は、一次元の行直接余弦変換（１Ｄ行ＤＣＴ）および１Ｄ列ＤＣＴ変換を、入力画像の複数のブロック上に順次適用することを含み得る。
【００８９】
[0094]  実施形態に従って、複数の量子化変換残留レベル中の各量子化変換残留レベルと閾値レベル値との比較は、各量子化変換残留レベルの絶対値が閾値レベル値よりも小さい又はこれと等しい場合でも、検査に対応することができる。ある場合には、量子化変換残留レベルの第１のセット中の各量子化変換残留レベルの絶対値が、閾値レベル値よりも小さい又はこれと等しい。他の場合には、量子化変換残留レベルの第２のセット中の各量子化変換残留レベルの絶対値が、閾値レベル値よりも大きい。
【００９０】
[0095]  所定の実施形態では、第１のブロックは、対応する画像ブロックが輝度画像ブロックであるときルマブロックにすることができ、第１のブロックは、対応する画像ブロックがクロマ画像ブロックであるとき、クロマＵブロックまたはクロマＶブロックにすることができる。
【００９１】
[0096]  実施形態に従って、第１のエントロピ符号化方式はハフマンエントロピ符号化方式にすることができ、第２のエントロピ符号化方式は指数関数的Ｇｏｌｏｍｂエントロピ符号化方式にすることができる。符号器回路は、量子化変換残留レベルの第１のセットを、予め特定されたハフマンテーブルのセットに基づいて符号化するように構成できる。量子化変換残留レベルの第１のセットは、ハフマンエントロピ符号化方式に従ってエントロピ符号化することができる。予め特定されたハフマンテーブルのセットは、デフォルトハフマンテーブルの第１のセット、および位置特異的なハフマンテーブルの第２のセットを含むことができる。実施形態に従って、符号器回路は、デフォルトハフマンテーブルの第１のセットからデフォルトハフマンテーブルを選択して、量子化変換残留レベルの第１のセットを、第１のブロックにおけるＤＣからＡＣの走査順序に従って符号化するようにさらに構成できる。別の実施形態に従って、符号器回路は、位置特異的なハフマンテーブルを、第１のブロック内にある各量子化変換残留レベルの特定の位置に基づいて、位置特異的なハフマンテーブルの第２のセットから選択するようにさらに構成できる。位置特異的なハフマンテーブルは、量子化変換残留レベルの第１のセットを、第１のブロック内でのＤＣからＡＣの走査順序に従って符号化するために選択することができる。
【００９２】
[0097]  実施形態に従って、符号器回路は、量子化変換残留レベルの第２のセット中の各量子化変換残留レベルのためのスキップコードを、第１のエントロピ符号化方式に従って発生するようにさらに構成することができる。スキップコードは、予め特定されたハフマンテーブルのセットに基づいて発生することができる。スキップコードの発生により、復号器回路が、各量子化変換残留レベルを、量子化変換残留レベルの第１のセットまたは量子化変換残留レベルの第２のセットに分類することが可能になる。したがって、符号器回路は、量子化変換残留レベルの第２のセットを、量子化変換残留レベルの第２のセット上への第２のエントロピ符号化方式の適用に基づいて、符号化するようにさらに構成できる。各量子化変換残留レベルは、量子化変換残留レベルの第２のセット中の各量子化変換残留レベルのためにスキップコードを発生した後に、符号化することができる。
【００９３】
[0098]  本開示はハードウェア、またはハードウェアとソフトウェアとの組合せにおいて実現することができる。本開示は、集中型様式において、少なくとも１つのコンピュータシステムで実装し、または分散型様式において、異なる要素をいくつかの相互連結されたコンピュータシステムにわたって広げて実現することができる。本明細書に記載された方法を実施するのに適した、コンピュータシステムまたは他の装置を適合させることができる。ハードウェアとソフトウェアとの組合せは、コンピュータプログラムを備えた汎用計算機システムにして、コンピュータプログラムは、ロードされおよび実行されるときコンピュータシステムを制御して、本明細書に記載された方法を実施することができる。本開示は、同様に他の機能を行なう集積回路の一部を備え得るハードウェアで実現することができる。
【００９４】
[0099]  本開示はまた、コンピュータプログラム製品に埋め込むことができ、コンピュータプログラム製品は、本明細書に記載した方法の実施を可能にする全ての特徴を備え、かつコンピュータシステムにロードされたときこれらの方法を実行することができる。
コンピュータプログラムは、本文脈では、命令セットのあらゆる言語、コードまたは表記法によるあらゆる表現を意味し、命令は、情報処理能力を有するシステムに、特定の機能を、直接的にまたは以下の何れかまたは両方の後に実行することを意図する。
ａ）別の言語、コードまたは表記法への変換
ｂ）異なる材料形態の再生
【００９５】
[0100]  本開示は、所定の実施形態に関して記載してきたが、当業者であれば、様々な変更が行なわれ得ること、本開示の範囲から逸脱することなく均等物で置き換え得ることを理解する。さらに、多くの修正が、特別の状況または材料を本開示の教示に適応させるために、その範囲から逸脱することなくなし得る。従って、現在の開示は、開示された特別の実施形態に限定されず、添付した請求項の範囲内に属する全ての実施形態を含むことを意図している。
【符号の説明】
【００９６】
１０２  媒体機器
１０４  画像センサ
１０６  プロセッサ
１０８  埋込みコーデック回路
１１０  外部メモリ
２０６  符号器回路
【図１】
2020127188.tif 000005
【図２】
2020127188.tif 000006
【図３Ａ】
2020127188.tif 000007
【図３Ｂ】
2020127188.tif 000008
【図４Ａ】
2020127188.tif 000009
【図４Ｂ】
2020127188.tif 000010
【図５Ａ】
2020127188.tif 000011
【図５Ｂ】
2020127188.tif 000012
【外国語明細書】
2020127188000001.pdf