(57)【特許請求の範囲】
【請求項１】
装置のコントローラ内にプログラムされる画像圧縮方法であって、
ａ．画像を１又はそれ以上のブロックに分割するステップと、
ｂ．差分パルス符号変調符号化及びパルス符号変調符号化を用いて、前記１又はそれ以上のブロックのうちの１つのブロックを複数の量子化係数値で符号化するステップと、
を含み、
前記差分パルス符号変調符号化が、
ｉ．前記ブロックを量子化するステップと、
ｉｉ．前記ブロック内の各量子化サンプルの予測値をラスタ走査の順序で計算するステップと、
ｉｉｉ．前記量子化サンプルの各々に関して、量子化ブロックのサンプル値と前記量子化サンプルの前記予測値との間の差分を求めることにより、量子化残差を決定するステップと、
ｉｖ．最初のサンプル量子化値及び量子化残差の組を出力するステップと、
を有し、
方法は、さらに、
ｃ．前記複数の量子化係数値による前記符号化の最良モードであって、前記ブロック内の各量子化サンプルあたりの劣化なく符号化されたビットを最も多く有する最良モードを決定するステップと、
ｄ．前記符号化の前記最良モードで前記ブロックを処理して圧縮データを生成するステップと、
を含むことを特徴とする方法。
【請求項２】
前記量子化係数値の各々の符号長を計算するステップをさらに含む、
ことを特徴とする請求項１に記載の方法。
【請求項３】
前記最良モードを決定するステップが、ある量子化係数値により、許可された最大ビット数よりも高いビット数が生じる場合に、前記量子化係数値を自動的に拒絶するステップを含む、
ことを特徴とする請求項１に記載の方法。
【請求項４】
前記最良モードを決定するステップは、許可された最大ビット数以下、かつ、最も大きなビット数の量子化係数値による符号化のモードを前記最良モードとして選択するステップを含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記最良モードで前記ブロックを処理するステップが、パルス符号変調符号化又は差分パルス符号変調符号化を含み、該差分パルス符号変調符号化は、信号ビット作成、及びエントロピ符号化をさらに含む、
ことを特徴とする請求項１に記載の方法。
【請求項６】
前記エントロピ符号化が、量子化残差に関して、複数の振幅ビット、同等数の先行するゼロ、及び符号ビットを決定するステップを含む、
ことを特徴とする請求項５に記載の方法。
【請求項７】
前記圧縮データが、一定の予め設定したサイズである、
ことを特徴とする請求項１に記載の方法。
【請求項８】
前記コントローラが、プログラムされたコンピュータ可読媒体及び特定用途向け回路から成る群から選択される、
ことを特徴とする請求項１に記載の方法。
【請求項９】
前記装置が、パーソナルコンピュータ、ラップトップコンピュータ、コンピュータワークステーション、サーバ、メインフレームコンピュータ、ハンドヘルドコンピュータ、携帯情報端末、セルラ／携帯電話機、スマート家電、ゲーム機、デジタルカメラ、デジタルカムコーダ、カメラ付き電話機、スマートホン、携帯音楽装置、ビデオプレーヤ、ＤＶＤライタ／プレーヤ、テレビ、及び家庭用娯楽システムから成る群から選択される、
ことを特徴とする請求項１に記載の方法。
【請求項１０】
装置のコントローラ内にプログラムされる画像ブロック復号方法であって、
ａ．前記画像ブロックが差分パルス符号変調を用いて符号化されているか、それともパルス符号変調を用いて符号化されているかを判定するステップを含み、
前記差分パルス符号変調は、
ｉ．前記ブロックを量子化するステップと、
ｉｉ．前記ブロック内の各量子化サンプルの予測値をラスタ走査の順序で計算するステップと、
ｉｉｉ．前記量子化サンプルの各々に関して、量子化ブロックのサンプル値と前記量子化サンプルの前記予測値との間の差分を求めることにより、量子化残差を決定するステップと、
ｉｖ．最初のサンプル量子化値及び量子化残差の組を出力するステップと、
を有し、
方法は、さらに、
ｂ．前記画像ブロックが差分パルス符号変調を用いて符号化されている場合、差分パルス符号変調復号を用いて前記画像ブロックを復号するステップと、
ｃ．前記画像ブロックがパルス符号変調を用いて符号化されている場合、パルス符号変調復号を用いて前記画像ブロックを復号するステップと、
を含むことを特徴とする方法。
【請求項１１】
前記画像ブロックが、他の画像ブロックとは無関係に復号される、
ことを特徴とする請求項１０に記載の方法。
【請求項１２】
装置のコントローラ内にプログラムされるエンコーダであって、
ａ．１又はそれ以上のブロックのうちの１つのブロックを複数の量子化係数値によって符号化するための、第１の量子化係数モジュールによる差分パルス符号変調符号化モジュールと、
ｂ．符号化ブロックの符号長を求めるための符号長計算モジュールと、
ｃ．前記複数の量子化係数値による前記符号化の最良モードを決定するためのモード決定モジュールと、
ｄ．前記最良モードとしてパルス符号変調が選択された場合にパルス符号変調符号化を実行するためのパルス符号変調モジュールと、
ｅ．前記最良モードとして差分パルス符号変調が選択された場合に、前記１又はそれ以上のブロックのうちの１つのブロックを、選択された最良モード量子化係数値によって符号化するための、第２の量子化係数モジュールによる差分パルス符号変調符号化モジュールと、
を備え、
前記モード決定モジュールは、さらに、許可された最大ビット数以下、かつ、最も大きなビット数の量子化係数値による符号化のモードを前記最良モードとして選択するよう構成されていることを特徴とするエンコーダ。
【請求項１３】
ａ．前記第２の差分パルス符号変調モジュールを示すビットを生成するための信号ビット作成モジュールと、
ｂ．ビットストリームを生成するためのエントロピ符号化モジュールと、
をさらに備えることを特徴とする請求項１２に記載のエンコーダ。
【請求項１４】
前記ビットストリームが、一定の予め設定したサイズである、
ことを特徴とする請求項１３に記載のエンコーダ。
【請求項１５】
装置のコントローラ内にプログラムされるデコーダであって、
ａ．ブロックが差分パルス符号変調を用いて符号化されているか、それともパルス符号変調を用いて符号化されているかを判定するための判定モジュールを備え、
前記差分パルス符号変調は、
ｉ．前記ブロックを量子化し、
ｉｉ．前記ブロック内の各量子化サンプルの予測値をラスタ走査の順序で計算し、
ｉｉｉ．前記量子化サンプルの各々に関して、量子化ブロックのサンプル値と前記量子化サンプルの前記予測値との間の差分を求めることにより、量子化残差を決定し、
ｉｖ．最初のサンプル量子化値及び量子化残差の組を出力する、
デコーダは、さらに、
ｂ．前記ブロックが差分パルス符号変調を用いて符号化されている場合、差分パルス符号変調復号を用いて前記ブロックを復号するための差分パルス符号変調モジュールと、
ｃ．前記ブロックがパルス符号変調を用いて符号化されている場合、パルス符号変調復号を用いて前記ブロックを復号するためのパルス符号変調モジュールと、
を備えることを特徴とするデコーダ。
【請求項１６】
装置のコントローラ内にプログラムされるシステムであって、エンコーダ及びデコーダを備え、
ａ．前記エンコーダが、
ｉ．画像を１又はそれ以上のブロックに分割し、
ｉｉ．前記１又はそれ以上のブロックのうちの１つのブロックを複数の量子化係数値によって符号化し、
ｉｉｉ．前記複数の量子化係数値による前記符号化の最良モードであって、前記ブロック内の各量子化サンプルあたりの劣化なく符号化されたビットを最も多く有する最良モードを決定し、
ｉｖ．前記符号化の前記最良モードによって前記ブロックを処理して圧縮データを生成し、
ｂ．前記デコーダが、
ｉ．前記ブロックが差分パルス符号変調を用いて符号化されているか、それともパルス符号変調を用いて符号化されているかを判定し、
前記差分パルス符号変調は、
１）．前記ブロックを量子化し、
２）．前記ブロック内の各量子化サンプルの予測値をラスタ走査の順序で計算し、
３）．前記量子化サンプルの各々に関して、量子化ブロックのサンプル値と前記量子化サンプルの前記予測値との間の差分を求めることにより、量子化残差を決定し、
４）．最初のサンプル量子化値及び量子化残差の組を出力する、
前記デコーダは、さらに、
ｉｉ．前記ブロックが差分パルス符号変調を用いて符号化されている場合、差分パルス符号変調復号を用いて前記ブロックを復号し、
ｉｉｉ．前記ブロックがパルス符号変調を用いて符号化されている場合、パルス符号変調復号を用いて前記ブロックを復号する、
ことを特徴とするシステム。
【請求項１７】
前記エンコーダは、さらに、許可された最大ビット数以下、かつ、最も大きなビット数の量子化係数値による符号化のモードを前記最良モードとして選択するよう構成されていることを特徴とする請求項１６に記載のシステム。
【請求項１８】
ａ．ビデオを取得するためのビデオ取得要素と、
ｂ．アプリケーションを記憶するためのメモリであって、
ｉ．画像を１又はそれ以上のブロックに分割し、
ｉｉ．前記１又はそれ以上のブロックのうちの１つのブロックを複数の量子化係数値によって符号化し、
ｉｉｉ．前記複数の量子化係数値による前記符号化の最良モードであって、前記ブロック内の各量子化サンプルあたりの劣化なく符号化されたビットを最も多く有する最良モードを決定し、
ｉｖ．前記符号化の前記最良モードによって前記ブロックを処理して圧縮データを生成する、
ためのアプリケーションを記憶するためのメモリと、
ｃ．前記メモリに結合されて、前記アプリケーションを処理するように構成された処理要素と、
を備え、
前記最良モードによる前記ブロックの処理は、差分パルス符号変調符号化及びパルス符号変調符号化を含み、該差分パルス符号変調符号化は、前記圧縮データへの信号ビット作成、及びエントロピ符号化をさらに含み、前記最良モードが差分パルス符号変調符号化であるとき、前記信号ビットの第１は、差分パルス符号変調モジュールを表し、前記信号ビットの第２は、ａｌｌＺｅｒｏＦｌａｇであることを特徴とするカメラ装置。
【請求項１９】
前記圧縮データが、一定の予め設定したサイズである、
ことを特徴とする請求項１８に記載のカメラ装置。
【請求項２０】
前記最良モードの決定は、さらに、許可された最大ビット数以下、かつ、最も大きなビット数の量子化係数値による符号化のモードを前記最良モードとして選択することを含むことを特徴とする請求項１８に記載のカメラ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理の分野に関する。より詳細には、本発明は、ランダムアクセス機能による画像圧縮に関する。
【背景技術】
【０００２】
従来の画像圧縮システムには、いくつかの問題点がある。これらのシステムは、視覚マスキング、及び画像内容によって空間的に変化する人間の視覚系（ＨＶＳ）のその他の特性を活用することができない。この理由は、これらのアルゴリズムが使用する量子化パラメータが、通常は画像範囲にわたって変化しないからである。この結果、画像を効率的に圧縮することができない。また、これらのシステムを用いて目標のビットレート又は視覚品質を達成するには、画像を複数回圧縮しなければならない。
【発明の概要】
【課題を解決するための手段】
【０００３】
ランダムアクセス機能による画像圧縮方法。この方法は、デジタル画像のイントラ符号化を含む。画像を小ブロックに分割し、各ブロックを、画像内のその他のブロックとは無関係に符号化する。エンコーダが、ブロックごとに、一定の予め設定した数のビットを生成する。各画像ブロックの復号を、他のいずれの画像ブロックとも無関係に行うことができる。
【０００４】
１つの側面では、装置のコントローラ内にプログラムされる画像圧縮方法が、画像を１又はそれ以上のブロックに分割するステップと、これらの１又はそれ以上のブロックのうちの１つのブロックを複数の量子化係数値で符号化するステップと、この複数の量子化係数値による符号化の最良モードを決定するステップと、この符号化の最良モードでブロックを処理して圧縮データを生成するステップと、を含む。この方法は、量子化係数値の各々の符号長を計算するステップをさらに含む。最良モードを決定するステップは、ある量子化係数により、許可された最大ビット数よりも高いビット数が生じる場合に、この量子化係数を自動的に拒絶するステップを含む。ブロックを符号化するステップは、差分パルス符号変調符号化及びパルス符号変調符号化を用いてブロックを符号化するステップを含む。差分パルス符号変調符号化は、ブロックを量子化するステップと、このブロック内の各量子化サンプルの予測値をラスタ走査の順序で計算するステップと、これらのサンプルの各々に関して、量子化ブロックサンプルと量子化サンプルの予測値との間の差分を求めることにより、量子化残差を決定するステップと、最初のサンプル量子化値及び量子化残差の組を出力するステップと、を含む。最良モードは、オリジナルブロックサンプルのうちで、劣化なく符号化されたビットを最も多く有する。最良モードでブロックを処理するステップは、パルス符号変調符号化又は差分パルス符号変調符号化を含み、この差分パルス符号変調符号化は、信号ビット作成、エントロピ符号化、及びリファインメント（refinement）をさらに含む。エントロピ符号化は、量子化残差に関して、複数の振幅ビット、同等数の先行するゼロ、及び符号ビットを決定するステップを含む。圧縮データは、一定の予め設定したサイズである。コントローラは、プログラムされたコンピュータ可読媒体及び特定用途向け回路から成る群から選択される。装置は、パーソナルコンピュータ、ラップトップコンピュータ、コンピュータワークステーション、サーバ、メインフレームコンピュータ、ハンドヘルドコンピュータ、携帯情報端末、セルラ／携帯電話機、スマート家電、ゲーム機、デジタルカメラ、デジタルカムコーダ、カメラ付き電話機、ｉＰｈｏｎｅ、ｉＰｏｄ（登録商標）、ビデオプレーヤ、ＤＶＤライタ／プレーヤ、テレビ、及び家庭用娯楽システムから成る群から選択される。
【０００５】
別の態様では、装置のコントローラ内にプログラムされる画像ブロック復号方法が、画像ブロックが差分パルス符号変調を用いて符号化されているか、それともパルス符号変調を用いて符号化されているかを判定するステップと、画像ブロックが差分パルス符号変調を用いて符号化されている場合、差分パルス符号変調復号を用いて画像ブロックを復号するステップと、画像ブロックがパルス符号変調を用いて符号化されている場合、パルス符号変調復号を用いて画像ブロックを復号するステップと、を含む。画像ブロックは、他の画像ブロックとは無関係に復号される。
【０００６】
別の態様では、装置のコントローラ内にプログラムされるエンコーダが、１又はそれ以上のブロックのうちの１つのブロックを複数の量子化係数値によって符号化するための、第１の量子化係数による差分パルス符号変調符号化モジュールと、符号化ブロックの符号長を求めるための符号長計算モジュールと、複数の量子化係数値による符号化の最良モードを決定するためのモード決定モジュールと、この最良モードとしてパルス符号変調が選択された場合にパルス符号変調符号化を実行するためのパルス符号変調モジュールと、最良モードとして差分パルス符号変調が選択された場合に、１又はそれ以上のブロックのうちの１つのブロックを、選択された最良モード量子化係数によって符号化するための、第２の量子化係数による差分パルス符号変調符号化モジュールと、を備える。このエンコーダは、第２の差分パルス符号変調モジュールを示すビットを生成するための信号ビット作成モジュールと、ビットストリームを生成するためのエントロピ符号化モジュールと、ビットストリームをリファインメントするためのリファインメントモジュールと、をさらに備える。ビットストリームは、一定の予め設定したサイズである。
【０００７】
別の態様では、装置のコントローラ内にプログラムされるデコーダが、ブロックが差分パルス符号変調用いて符号化されているか、それともパルス符号変調を用いて符号化されているかを判定するための判定モジュールと、ブロックが差分パルス符号変調を用いて符号化されている場合、差分パルス符号変調復号を用いてブロックを復号するための差分パルス符号変調モジュールと、ブロックがパルス符号変調を用いて符号化されている場合、パルス符号変調復号を用いてブロックを復号するためのパルス符号変調モジュールと、を備える。
【０００８】
別の態様では、装置のコントローラ内にプログラムされるシステムが、画像を１又はそれ以上のブロックに分割し、これらの１又はそれ以上のブロックのうちの１つのブロックを複数の量子化係数値によって符号化し、この複数の量子化係数値による符号化の最良モードを決定し、この符号化の最良モードによってブロックを処理して圧縮データを生成するエンコーダと、ブロックが差分パルス符号変調を用いて符号化されているか、それともパルス符号変調を用いて符号化されているかを判定し、ブロックが差分パルス符号変調を用いて符号化されている場合、差分パルス符号変調復号を用いてブロックを復号し、ブロックがパルス符号変調を用いて符号化されている場合、パルス符号変調復号を用いてブロックを復号するデコーダと、を備える。
【０００９】
別の態様では、カメラ装置が、ビデオを取得するためのビデオ取得要素と、画像を１又はそれ以上のブロックに分割し、これらの１又はそれ以上のブロックのうちの１つのブロックを複数の量子化係数値によって符号化し、これらの複数の量子化係数値による符号化の最良モードを決定し、この符号化の最良モードによってブロックを処理して圧縮データを生成するためのアプリケーションを記憶するためのメモリと、このメモリに結合されて、アプリケーションを処理するように構成された処理要素と、を備える。圧縮データは、一定の予め設定したサイズである。
【図面の簡単な説明】
【００１０】
【図１】いくつかの実施形態によるエンコーダのブロック図である。
【図２】いくつかの実施形態による例示的なＶＬＣ計算を示す図である。
【図３】いくつかの実施形態による例示的なエントロピ符号化テーブルを示す図である。
【図４】いくつかの実施形態による、差分パルス符号変調（ＤＰＣＭ）モードのビットストリーム構造を示す図である。
【図５】いくつかの実施形態による、サンプル当たりビット数（ｂｐｓ）が整数であるパルス符号変調（ＰＣＭ）モードのビットストリーム構造を示す図である。
【図６】いくつかの実施形態による画像符号化方法のフロー図である。
【図７】いくつかの実施形態による画像復号方法のフロー図である。
【図８】いくつかの実施形態による、ランダムアクセス機能方法によって画像圧縮を行うように構成された例示的なコンピュータ装置のブロック図である。
【発明を実施するための形態】
【００１１】
ビデオ圧縮には、イントラ符号化及びインター符号化という２種類の符号化がある。イントラ符号化は、現在のフレームからの情報を使用し、ビデオシーケンス内の他のフレームからの相対情報を使用しない。本明細書で説明する方法は、イントラ符号化に焦点を当てたものであるが、この方法を他の符号化の実施構成に使用することもできる。この方法では、画像をブロックに分割し、各ブロックを他のブロックとは無関係に符号化し、ブロックごとに、一定の予め設定した数のｂｌｏｃｋＢｉｔＢｕｄｇｅｔビットをエンコーダにより生成する。本明細書で説明する方法を使用して、他のいずれの画像部分も復号する必要なくブロックを復号することができる。各ブロックは、画像の一部の１又はそれ以上の色成分のサンプル値を有する。各ブロックの形状は、通常は長方形であるが、正方形、円形、卵形又は三角形などのあらゆる形状が可能である。
【００１２】
エンコーダ
ブロック内の画像サンプルの数を、ｓａｍｐｌｅｓＮｕｍと呼ぶ。従って、エンコーダは、１つのブロックに関して特定数のサンプル当たりビット（ｂｐｓ）を含むサンプルを生成し、ｂｐｓ＝ｂｌｏｃｋＢｉｔＢｕｄｇｅｔ／ｓａｍｐｌｅｓＮｕｍである。ｂｐｓの値は１を上回るべきであり、典型的なｂｐｓの値は、４、５、又は６である。本明細書で使用する他の用語には、ブロックをパルス符号変調（ＰＣＭ）モードで符号化した場合に生成されるビット数（ＤＰＣＭ及びＰＣＭを示すために使用される１ビットを除く）であるＰＣＭｃｏｄｅＬｅｎｇｔｈＴｏｔａｌ（ＰＣＭｃｏｄｅＬｅｎｇｔｈＴｏｔａｌはｂｌｏｃｋＢｉｔＢｕｄｇｅｔに等しい）、ブロックを差分パルス符号変調（ＤＰＣＭ）モードで符号化した場合に生成されるビット数であるＤＰＣＭｃｏｄｅＬｅｎｇｔｈＴｏｔａｌ、及びオリジナルの画像サンプルのビット深度であるｄｅｐｔｈがあり、典型的なｄｅｐｔｈ値は、８、１０又は１２を含むが、その他の値も可能である。
【００１３】
エンコーダの目的は、ｄｅｐｔｈ個のｂｐｓを有する画像を取得して、この画像がブロック当たりｂｌｏｃｋＢｉｔＢｕｄｇｅｔ個のビットを有するように画像のビットストリームを生成することである。その後、デコーダがこの逆を行う。
【００１４】
図１は、いくつかの実施形態によるエンコーダ１００のブロック図である。オリジナルデータブロックを、ＤＰＣＭ符号化を用いて、１、２、４、８、１６、３２、６４及び１２８などの異なる量子化係数で符号化する。符号長は、各ＤＰＣＭ符号化から計算される。この符号長は、全ての信号ビットを含むが、（後述するような）リファインメントビット及びゼロ詰めビットは除外する。ある量子化係数でのＤＰＣＭ符号化によって生じるビット数が、許可された最大ビット数（ｂｌｏｃｋＢｉｔＢｕｄｇｅｔ）よりも大きくなる場合、この符号化は自動的に拒絶される。例えば、最大ビット数が１６０であり、ある量子化係数に関する符号化によって生じるビット数が１７０である場合、この符号化は拒絶される。データブロックには、ＰＣＭを用いた符号化も行われる。残りの符号化のうち、異なるＤＰＣＭ符号化及びＰＣＭ符号化から最良モードが選択される。この最良モードは、ブロックサンプル当たりの劣化なく符号化されるビット数によって表される、デコーダにおける再構成品質が最も高いものに対応する。ＤＰＣＭモードを選択した場合、信号ビットの作成、ｑｆによるＤＰＣＭ符号化の後のエントロピ符号化、及びリファインメントなどのさらなるステップが行われる。ＰＣＭモードを選択した場合、ＰＣＭ処理が行われる。この結果、ビデオビットストリームが圧縮される。いくつかの実施形態では、エンコーダ１００が、ｑｆ１０２によるＤＰＣＭ符号化、符号長計算１０４、モード決定１０６、ＰＣＭ１０８、信号ビット作成１１０、エントロピ符号化１１２、及びリファインメント１１４を行うための１又はそれ以上のモジュールを含む。これらのモジュールは、ハードウェア、ソフトウェア、ファームウェア、又はこれらのいずれかの組み合わせで実現することができる。
【００１５】
ｑｆモジュールによるＤＰＣＭ符号化
ＤＰＣＭ符号化の場合、ブロックは、１つの量子化ステップサイズ（量子化係数とも呼ぶ）ｑｆで一様に量子化され、この場合、ｑｆは２の累乗、すなわちｑｆ＝２qnである。量子化後のブロックのサンプル値を、量子化ブロック又は量子化サンプルと呼ぶ。基本的に、量子化を行うと最下位ビットが除去される。例えば、１０個のビットが存在し、ｑｎが４である場合、６個の最上位ビットのみが使用される。
【００１６】
量子化ブロック内の各色成分の最初のサンプルを除くサンプルの各々に関し、量子化ブロック内の１又はそれ以上のすでに量子化された他のサンプル値に基づいて、ラスタ走査の順序で予測値を計算する。この予測値は、（左側画素などの）隣接画素をａ、（上方画素などの）隣接画素をｂ、及び斜めの隣接画素をｃとする平面予測ａ＋ｂ−ｃ、ＪＰＥＧ−ＬＳ予測、又は符号化されたブロック外のサンプル値へのアクセスを必要としない他のあらゆる種類の予測を使用して取得することができる。量子化ブロック内のサンプルとその予測との差分を計算し、この差分を量子化残差と呼ぶ。ｑｆによるＤＰＣＭ符号化の出力は、各成文の最初のサンプルの量子化値、及び残りのサンプルの量子化残差を含む。量子化値、及び量子化残差の振幅は各々、ｄｅｐｔｈ−ｑｎビットである。量子化残差は、符号のための追加の１ビットも有する。
【００１７】
符号長計算モジュール
ｑｆモジュールによるＤＰＣＭ符号化の出力の各々に関して値を生成し、これをＤＰＣＭｃｏｄｅＬｅｎｇｔｈＴｏｔａｌで示す。ＤＰＣＭｃｏｄｅＬｅｎｇｔｈＴｏｔａｌは、ＤＰＣＭモードを用いてブロックを符号化した場合にエントロピ符号化モジュール及び信号ビット作成モジュールが生成する符号の長さの合計である。ＤＰＣＭｃｏｄｅＬｅｎｇｔｈＴｏｔａｌは、ビットストリームを生成せずに計算することができる。
【００１８】
モード決定モジュール
モード決定モジュールは、ｂｌｏｃｋＢｉｔＢｕｄｇｅｔよりもＤＰＣＭｃｏｄｅＬｅｎｇｔｈＴｏｔａｌの方が大きな全てのＤＰＣＭモードを拒絶する。残りのモードに関しては、これらのモードの各々に関してモード決定モジュールがビット範囲を計算する。所与のモードでは、そのモードで劣化なく符号化されるブロック内の全てのオリジナルサンプルのビット数がビット範囲になる。ビット範囲は、モード決定に使用される符号化品質の尺度である。ＰＣＭモードでは、ビット範囲を常にｂｌｏｃｋＢｉｔＢｕｄｇｅｔ−１に等しく設定することができる。ＤＰＣＭモードでは、ビット範囲が可変であり、ｑｎ及びブロックサンプル値に依存する。モード決定モジュールは、ビット範囲が最も大きなモード（最良モードなど）を選択する。最良モードのモード数を、モード決定モジュールの出力とすることができる。
【００１９】
ＰＣＭモジュール
最良モードがＰＣＭモードである場合にのみ、ビットストリームの生成にＰＣＭモジュールを用いる。ＰＣＭモジュールは、ビットストリームを生成する。ビットストリームの最初のビットは、ＰＣＭモードを示す「０」である。ｆｌｏｏｒ（ｘ）を、ｘ以下の最大整数を表すものとして、ｎ＝ｆｌｏｏｒ（（ｂｌｏｃｋＢｉｔＢｕｄｇｅｔ−ｌ）／ｓａｍｐｌｅｓＮｕｍ）とする。また、ｆ＝（ｎ＋ｌ）＊ｓａｍｐｌｅｓＮｕｍ−（ｂｌｏｃｋＢｉｔＢｕｄｇｅｔ−１）とする。この場合、ブロック内のｆ個のサンプル（例えば、ラスタ走査順の最初のｆ個のサンプルなど）が、量子化数ｑｎ＝ｄｅｐｔｈ−ｎによって量子化され、残りのサンプルは、ｑｎ＝ｄｅｐｔｈ−ｎ−１によって量子化される。この結果、量子化値のビットは、変化なくビットストリーム内に配置される。ｂｐｓが整数の場合、これがビットの残りに簡約化される。ビットの残りは、以下のようにして生成される。ブロック内の最初のサンプルは、量子化係数ｑｎ＝（ｄｅｐｔｈ−ｂｐｓ＋１）によって一様に量子化される。この値は、２進表現でｂｐｓ−１ビットを有する。ブロック内のサンプルの残りは、量子化係数ｑｎ＝ｄｅｐｔｈ−ｂｐｓによって一様に量子化される。これらの値は各々、２進表現でｂｐｓビットを有する。量子化サンプルのビットは、変化なくビットストリーム内に配置される。ＰＣＭモジュールは、正確にｂｌｏｃｋＢｉｔＢｕｄｇｅｔビットを生成する。
【００２０】
信号ビット作成モジュール
最良モードがＤＰＣＭモードである場合、信号ビット作成モジュールはｍ＋２ビットを生成し、その後これが、特定のＤＰＣＭモジュール及びａｌｌＺｅｒｏＦｌａｇの値を示すために使用される。最初のビットは、最良モードがＤＰＣＭモードであり、ＰＣＭモードではないことを示す「１」である。ＰＣＭモード及びＤＰＣＭモードとして「０」及び「１」をそれぞれ指定しているが、この逆も使用できると理解されたい。次のｍ個のビットは、ＤＰＣＭモード数を表す。次のビットは、「ａｌｌＺｅｒｏＦｌａｇ」ビットであり、量子化残差の少なくとも１つが非ゼロである場合には０に設定され、量子化結果の全てがゼロである場合には１に設定される。
【００２１】
エントロピ符号化モジュール
エントロピ符号化モジュールは、ビットストリームを生成する。このビットストリーム内には、各色成分の量子化された最初のサンプル（サンプル当たりｄｅｐｔｈ−ｑｎ個のビット）の２進表現が配置される。ａｌｌＺｅｒｏＦｌａｇが「１」である場合、他のビットはビットストリーム内に配置されない。ａｌｌＺｅｒｏＦｌａｇが「１」でない場合、本明細書で説明するように、ブロック内のサンプルの残りに関して、マッピング及び指数ゴロム符号を適用することにより、可変長符号（ＶＬＣ）ビットを生成する。所与の量子化残差値に関し、エントロピ符号器は、以下のステップによってＶＬＣを計算する。
１．量子化残差の振幅を表すのに必要な総ビット数（最上位「１」の左側の複数の０は無視する）をカウントする。これにより、量子化残差を表す値Ｋが得られる。
２．ビットストリームにＫ個のゼロを書き込む。
３．Ｋ個の振幅ビットを書き込む。
４．負の場合には０を、ゼロ又は正の場合には１の符号ビットを書き込む。
図２に、いくつかの実施形態による例示的なＶＬＣ計算を示している。
【００２２】
図３に、いくつかの実施形態による例示的なエントロピ符号化テーブルを示す。このテーブルに示すように、最も左側の列は量子化残差の入力である。中央の列は、入力すなわち振幅及び符号ビットの２進表現であり、符号ビットは、負の場合には０、正及びゼロの場合には１である。出力は、Ｋ個のゼロの後に、Ｋ個の振幅ビット及び末尾の符号ビットを含む。
【００２３】
リファインメントモジュール
リファインメントモジュールは、ｍｉｎ（（ｂｌｏｃｋＢｉｔＢｕｄｇｅｔ−ＤＰＣＭｃｏｄｅＬｅｎｇｔｈＴｏｔａｌ），ｑｎ＊ｓａｍｐｌｅｓＮｕｍ）個のビットを含むビットストリームを最初に生成し、この場合、ＤＰＣＭｃｏｄｅＬｅｎｇｔｈＴｏｔａｌ及びｑｎの値は最良モードの値である。これらのビットはオリジナルサンプルのビットであり、ＤＰＣＭモジュールによって符号化されない最上位ビットから開始して、各サンプルの最下位ビットに至る。次に、（ｂｌｏｃｋＢｉｔＢｕｄｇｅｔ−ＤＰＣＭｃｏｄｅＬｅｎｇｔｈ）が、（ｑｎ＊ｓａｍｐｌｅｓＮｕｍ）よりも大きい場合、これは、ブロック全体が、ｂｌｏｃｋＢｉｔＢｕｄｇｅｔビットよりも少ないビットによって劣化なく符号化されたことを意味する。この場合、ビットストリーム内に、（ｂｌｏｃｋＢｉｔＢｕｄｇｅｔ−ＤＰＣＭｃｏｄｅＬｅｎｇｔｈ−ｑｎ＊ｓａｍｐｌｅｓＮｕｍ）個のゼロをゼロ詰めビットとして配置して、エンコーダにより生成される総ビット数をｂｌｏｃｋＢｉｔＢｕｄｇｅｔに等しくする。
【００２４】
図４に、いくつかの実施形態による、ＤＰＣＭモードのビットストリーム構造４００を示す。ビットストリーム構造４００は、ｂｌｏｃｋＢｉｔＢｕｄｇｅｔの長さを有する。
（最上位ビットとも呼ばれる）最初のビットは、ＤＰＣＭモードを示す「１」である。次に、ｍ個のビットを使用してｑｆの値を示す。次に、各色成分における最初のサンプルを表すｄｅｐｔｈ−ｑｎ個のビットが続く。次に、ａｌｌＺｅｒｏＦｌａｇビットがくる。
その後、ブロックの残りのサンプルの各々に関して、エントロピ符号化モジュールにより生成されたビットが続く。この時点での総ビット数が、ブロックビット予算（ｂｌｏｃｋ  ｂｉｔ  ｂｕｄｇｅｔ）よりも少ない場合、追加のリファインメントビットを加えて、符号化精度をさらに高める。最終的に、リファインメントビットを送信した後にブロックが劣化なく符号化された場合、末尾にゼロ詰めビットを添付する。
【００２５】
図５に、いくつかの実施形態による、ＰＣＭモードのビットストリーム構造５００を示す。ビットストリーム構造５００は、ｂｌｏｃｋＢｉｔＢｕｄｇｅｔの長さを有する。（最上位ビットとも呼ばれる)最初のビットは、ＰＣＭモードを示す「０」である。次に、残りの画素に対して、ブロック内の画素を全て表すＰＣＭ符号が含まれる。
【００２６】
デコーダ
ビットストリームの最初のビットを読み出す。このビットが「０」である場合、デコーダはＰＣＭ復号を適用する。このビットが「１」である場合、デコーダはＤＰＣＭ復号を適用する。
【００２７】
ＰＣＭ復号
（上記の）符号化のためのＰＣＭモジュールの欄に記載した表記を使用すると、ブロック内の最初のｆ個のサンプルの各々に関して、ビットストリームからｎ個のビットを読み出し、デコーダにおいて再構成されたサンプルのｎ個の最上位ビットとして配置する。ブロック内のサンプルの残りの各々に関して、ビットストリームからｎ＋１ビットを読み出し、この再構成されたサンプルのｎ＋１個の最上位ビットとして配置する。ｂｐｓが整数である場合、この処理は簡約化され、最初のサンプルに関して、ビットストリームからｂｐｓ−１個のビットを読み出す。これらのビットを、最初のサンプルのｂｐｓ−１個の最上位ビットとしてブロック内に配置する。ブロック内の残りのｓａｍｐｌｅｓＮｕｍ−１個のサンプルの各々に関して、ビットストリームからｂｐｓ個のビットを読み出し、このビットをサンプルのｂｐｓ個の最上位ビットとして配置する。上記の処理において設定されていないサンプルの次の最上位ビットを「１」に設定する。ｄｅｐｔｈ個のビットサンプルのビットの残りを「０」に設定する。
【００２８】
ＤＰＣＭ復号
ビットストリームの次のｍ個のビットを読み出す。これらのｍ個のビットを使用して、量子化に使用するｑｆ値を復号する。ビットストリームの次のビットを読み出す。このビットは、ａｌｌＺｅｒｏＦｌａｇを表す。各色成分の最初のサンプルのｄｅｐｔｈ−ｑｎ個の最上位ビットをビットストリームから読み出し、これらのサンプルの最上位ビットとして配置する。ａｌｌＺｅｒｏＦｌａｇ＝０の場合、残りのサンプルに関して、エントロピ符号化したＶＬＣを読み出し復号して量子化残差を生成する。各サンプルに関し、すでに符号化／復号した量子化サンプルに基づいてエンコーダにおいて計算したように、量子化サンプルの予測を計算する。その後、この（量子化サンプルの）予測値に量子化残差を加えて量子化サンプルを生成する。これらの量子化サンプルを、サンプルの残りのｄｅｐｔｈ−ｑｎ個の最上位ビットとして配置する。ａｌｌＺｅｒｏＦｌａｇ＝０でない場合（ａｌｌＺｅｒｏＦｌａｇ＝１などの場合）、サンプルの残りのｄｅｐｔｈ−ｑｎ個の最上位ビットを０に設定する。ｑｎ＞０の場合、各サンプルの残りのｑｎ個のビットに関して、（もしあれば）リファインメントビットを読み出し、エンコーダによってビットストリーム内に配置された順序と全く同じ順序で適所に配置する。デコーダは、（あったとしても）ゼロ詰めビットを無視する。（もしあれば）各サンプルの残りビットに関して、最上位ビットを１に設定し、ビットの残りを０に設定する。
【００２９】
図６は、いくつかの実施形態による画像符号化方法のフロー図である。ステップ６００において、画像をブロックに分割する。ステップ６０２において、ブロックを異なる量子化係数値でＤＰＣＭ符号化する。ステップ６０４において、これらの量子化係数の各々の符号長を計算する。ステップ６０６において、最良モードがどれであるかを決定する。
最良モードは、量子化係数の異なるＤＰＣＭ符号化及びＰＣＭ符号化から選択される。本明細書で説明したように、最良モードは、ビット範囲によって測定した最も劣化の少ないブロックである。ビット範囲は、ＤＰＣＭにおけるエントロピ符号化及びリファインメントを通じて、或いはＰＣＭにおいてビットストリーム内にビットを明示的に配置することによって符号化された全てのビットの数のみを含む。例えば、劣化のないビットの数をカウントして、ビットの劣化が最も少ないモードが最良モードに等しい。ステップ６０６におけるモード決定に応じて、次のステップは、ＤＰＣＭの場合又はＰＣＭの場合のいずれかになる。
ＰＣＭが選択された場合、ステップ６０８においてＰＣＭ処理を行う。ＤＰＣＭが選択された場合、ステップ６１０において信号ビットを作成する処理を行う。ステップ６１２において、ｑｆによるＤＰＣＭ符号化を行う。いくつかの実施形態では、ステップ６０２においてｑｆによるＤＰＣＭ符号化を行った場合、このステップは繰り返されない。いくつかの実施形態では、ステップ６０２とステップ６１２が異なり、ステップ６１２が行われる。例えば、いくつかの実施形態では、ステップ６０２においてビットストリームを生成せず、ステップ６１２においてビットストリームを生成する。或いは、ステップ６０２において符号化を行わずにビットをカウントし、ステップ６１２において符号化を行う。その後、ステップ６１４においてエントロピ符号化を行う。ステップ６１６においてリファインメントを行う。最終的なビットストリームは圧縮データとなる。これらのステップの順序は変更することができ、実施形態によってはいくつかのステップを省略することができる。
【００３０】
図７は、いくつかの実施形態による画像復号方法のフロー図である。ステップ７００において、ブロックがＤＰＣＭ符号化を使用して符号化されているか、それともＰＣＭ符号化を使用して符号化されているかを判定する。ＰＣＭ符号化を使用している場合、ステップ７０２においてＰＣＭ復号を使用する。ＰＣＭ復号については、本明細書で説明した。ＤＰＣＭ符号化を使用している場合、ステップ７０４においてＤＰＣＭ復号を使用する。
【００３１】
図８は、いくつかの実施形態による、ランダムアクセス機能による画像圧縮方法を実施するように構成された例示的なコンピュータ装置８００のブロック図である。コンピュータ装置８００は、画像及びビデオなどの情報を取得し、記憶し、計算し、通信し、及び／又は表示するために使用することができる。例えば、コンピュータ装置８００は、画像を取得して記憶することができる。装置８００上で画像を取得又は閲覧する際に、画像圧縮方法を使用することができる。一般に、コンピュータ装置８００を実現するのに適したハードウェア構造として、ネットワークインターフェイス８０２、メモリ８０４、プロセッサ８０６、（単複の）Ｉ／Ｏ装置８０８、バス８１０、及び記憶装置８１２が挙げられる。十分な速度の好適なプロセッサを選択する限り、プロセッサの選択は重要ではない。メモリ８０４は、当業で公知のいずれの従来のコンピュータメモリであってもよい。記憶装置８１２は、ハードドライブ、ＣＤ−ＲＯＭ、ＣＤＲＷ、ＤＶＤ、ＤＶＤＲＷ、フラッシュメモリカード、又はその他のいずれかの記憶装置を含むことができる。コンピュータ装置８００は、１又はそれ以上のネットワークインターフェイス８０２を含むことができる。ネットワークインターフェイスの例には、イーサネット又はその他の種類のＬＡＮに接続されたネットワークカードがある。（単複の）Ｉ／Ｏ装置８０８は、キーボード、マウス、モニタ、ディスプレイ、プリンタ、モデム、タッチ画面、ボタンインターフェイス及びその他の装置のうちの１又はそれ以上を含むことができる。画像圧縮方法を実施するために使用される（単複の）画像圧縮アプリケーション８３０は、記憶装置８１２及びメモリ８０４に記憶されて、アプリケーションが通常処理されるように処理される可能性が高い。コンピュータ装置８００には、図８に示すものよりも多くの又は少ない構成要素を含めることができる。いくつかの実施形態では、画像圧縮ハードウェア８２０が含まれる。図８のコンピュータ装置８００は、画像圧縮用のアプリケーション８３０及びハードウェア８２０を含むが、この画像圧縮方法を、ハードウェア、ファームウェア、ソフトウェア又はこれらのいずれかの組み合わせでコンピュータ装置上に実装することもできる。例えば、いくつかの実施形態では、画像圧縮アプリケーション８３０がメモリ内にプログラムされ、プロセッサを使用して実行される。別の例として、いくつかの実施形態では、画像圧縮ハードウェア８２０が、画像圧縮方法を実施するように特別に設計されたゲートを含むプログラムされたハードウェア論理である。
【００３２】
いくつかの実施形態では、（単複の）画像圧縮アプリケーション８３０が、複数のアプリケーション及び／又はモジュールを含む。本明細書で説明したように、これらのモジュールは、ｑｆによるＤＰＣＭ符号化、符号長計算、モード決定、ＰＣＭ、信号ビット作成、エントロピ符号化、及びリファインメントを含む。いくつかの実施形態では、ｑｆモジュールによる第２のＤＰＣＭ符号化を利用して、最良モードの決定に役立てるために第１のＤＰＣＭ符号化を使用し、符号化を行うために第２のＤＰＣＭ符号化を使用する。いくつかの実施形態では、量子化係数ごとに別個のＤＰＣＭ符号化モジュールが存在する。いくつかの実施形態では、モジュールが、１又はそれ以上のサブモジュールも含む。いくつかの実施形態では、これより少ない又は追加のモジュールを含めることができる。
【００３３】
好適なコンピュータ装置の例には、パーソナルコンピュータ、ラップトップコンピュータ、コンピュータワークステーション、サーバ、メインフレームコンピュータ、ハンドヘルドコンピュータ、携帯情報端末、セルラ／携帯電話機、スマート家電、ゲーム機、デジタルカメラ、デジタルカムコーダ、カメラ付き電話機、ｉＰｏｄ（登録商標）／ｉＰｈｏｎｅ、ビデオプレーヤ、ＤＶＤライタ／プレーヤ、テレビ、家庭用娯楽システム、又はその他のいずれかの好適なコンピュータが挙げられる。
【００３４】
画像圧縮方法を利用するには、ユーザがデジタルカムコーダ上などにビデオ／画像を取得し、このビデオの取得中又は取得後に、画像圧縮方法によって各ビデオが自動的に圧縮され、ビデオが適切に圧縮されて高品質ビデオが維持されるようにする。画像圧縮方法は、ユーザの関与を伴わずに自動的に行われる。同様に、デコーダは、ビデオを復号しているときには、適切に表示するように自動的にビデオを復号する。
【００３５】
動作時には、本明細書で説明した画像圧縮方法が、いくつかの実施形態では、低いハードウェアコスト（例えば、それほど多くの論理ゲートを必要としない）、低い複雑度、少ない遅延、非常に高い視覚品質（例えば、視覚的に劣化しない）で画像圧縮を行い、復号のために他のブロックに依存しない（例えば、ブロックサイズが固定されているので、あらゆるブロックを復号する）。この画像圧縮方法は、限定するわけではないが、無線高品位（無線ＨＤ）を含むあらゆる実施構成で使用することができる。
【００３６】
本明細書で説明した画像圧縮方法は、ビデオ及び／又は画像とともに使用することができる。
【００３７】
ランダムアクセス機能による画像圧縮方法のいくつかの実施形態
１．装置のコントローラ内にプログラムされる画像圧縮方法であって、
ａ．画像を１又はそれ以上のブロックに分割するステップと、
ｂ．前記１又はそれ以上のブロックのうちの１つのブロックを複数の量子化係数値で符号化するステップと、
ｃ．前記複数の量子化係数値による前記符号化の最良モードを決定するステップと、
ｄ．前記符号化の前記最良モードで前記ブロックを処理して圧縮データを生成するステップと、
を含むことを特徴とする方法。
【００３８】
２．前記量子化係数値の各々の符号長を計算するステップをさらに含む、
ことを特徴とする条項１に記載の方法。
【００３９】
３．前記最良モードを決定するステップが、ある量子化係数により、許可された最大ビット数よりも高いビット数が生じる場合に、前記量子化係数を自動的に拒絶するステップを含む、
ことを特徴とする条項１に記載の方法。
【００４０】
４．前記ブロックを符号化するステップが、差分パルス符号変調符号化及びパルス符号変調符号化を用いて前記ブロックを符号化するステップを含む、
ことを特徴とする条項１に記載の方法。
【００４１】
５．前記差分パルス符号変調符号化が、
ａ．前記ブロックを量子化するステップと、
ｂ．前記ブロック内の各量子化サンプルの予測値をラスタ走査の順序で計算するステップと、
ｃ．前記サンプルの各々に関して、量子化ブロックサンプルと前記量子化サンプルの前記予測値との間の差分を求めることにより、量子化残差を決定するステップと、
ｄ．最初のサンプル量子化値及び量子化残差の組を出力するステップと、
を含むことを特徴とする条項４に記載の方法。
【００４２】
６．前記最良モードが、劣化なく符号化されたビットを最も多く有する、
ことを特徴とする条項１に記載の方法。
【００４３】
７．前記最良モードで前記ブロックを処理するステップが、パルス符号変調符号化又は差分パルス符号変調符号化を含み、該差分パルス符号変調符号化は、信号ビット作成、エントロピ符号化、及びリファインメントをさらに含む、
ことを特徴とする条項１に記載の方法。
【００４４】
８．前記エントロピ符号化が、量子化残差に関して、複数の振幅ビット、同等数の先行するゼロ、及び符号ビットを決定するステップを含む、
ことを特徴とする条項７に記載の方法。
【００４５】
９．前記圧縮データが、一定の予め設定したサイズである、
ことを特徴とする条項１に記載の方法。
【００４６】
１０．前記コントローラが、プログラムされたコンピュータ可読媒体及び特定用途向け回路から成る群から選択される、
ことを特徴とする条項１に記載の方法。
【００４７】
前記装置が、パーソナルコンピュータ、ラップトップコンピュータ、コンピュータワークステーション、サーバ、メインフレームコンピュータ、ハンドヘルドコンピュータ、携帯情報端末、セルラ／携帯電話機、スマート家電、ゲーム機、デジタルカメラ、デジタルカムコーダ、カメラ付き電話機、ｉＰｈｏｎｅ、ｉＰｏｄ（登録商標）、ビデオプレーヤ、ＤＶＤライタ／プレーヤ、テレビ、及び家庭用娯楽システムから成る群から選択される、
ことを特徴とする条項１に記載の方法。
【００４８】
１２．装置のコントローラ内にプログラムされる画像ブロック復号方法であって、
ａ．前記画像ブロックが差分パルス符号変調を用いて符号化されているか、それともパルス符号変調を用いて符号化されているかを判定するステップと、
ｂ．前記画像ブロックが差分パルス符号変調を用いて符号化されている場合、差分パルス符号変調復号を用いて前記画像ブロックを復号するステップと、
ｃ．前記画像ブロックがパルス符号変調を用いて符号化されている場合、パルス符号変調復号を用いて前記画像ブロックを復号するステップと、
を含むことを特徴とする方法。
【００４９】
１３．前記画像ブロックが、他の画像ブロックとは無関係に復号される、
ことを特徴とする条項１２に記載の方法。
【００５０】
１４．装置のコントローラ内にプログラムされるエンコーダであって、
ａ．１又はそれ以上のブロックのうちの１つのブロックを複数の量子化係数値によって符号化するための、第１の量子化係数による差分パルス符号変調符号化モジュールと、
ｂ．符号化ブロックの符号長を求めるための符号長計算モジュールと、
ｃ．前記複数の量子化係数値による前記符号化の最良モードを決定するためのモード決定モジュールと、
ｄ．前記最良モードとしてパルス符号変調が選択された場合にパルス符号変調符号化を実行するためのパルス符号変調モジュールと、
ｅ．前記最良モードとして差分パルス符号変調が選択された場合に、前記１又はそれ以上のブロックのうちの１つのブロックを、選択された最良モード量子化係数によって符号化するための、第２の量子化係数による差分パルス符号変調符号化モジュールと、
を備えることを特徴とするエンコーダ。
【００５１】
１５．ａ．前記第２の差分パルス符号変調モジュールを示すビットを生成するための信号ビット作成モジュールと、
ｂ．ビットストリームを生成するためのエントロピ符号化モジュールと、
ｃ．前記ビットストリームをリファインメントするためのリファインメントモジュールと、
をさらに備えることを特徴とする条項１４に記載のエンコーダ。
【００５２】
１６．前記ビットストリームが、一定の予め設定したサイズである、
ことを特徴とする条項１５に記載のエンコーダ。
【００５３】
１７．装置のコントローラ内にプログラムされるデコーダであって、
ａ．前記ブロックが差分パルス符号変調用いて符号化されているか、それともパルス符号変調を用いて符号化されているかを判定するための判定モジュールと、
ｂ．前記ブロックが差分パルス符号変調を用いて符号化されている場合、差分パルス符号変調復号を用いて前記ブロックを復号するための差分パルス符号変調モジュールと、
ｃ．前記ブロックがパルス符号変調を用いて符号化されている場合、パルス符号変調復号を用いて前記ブロックを復号するためのパルス符号変調モジュールと、
を備えることを特徴とするデコーダ。
【００５４】
１８．装置のコントローラ内にプログラムされるシステムであって、エンコーダ及びデコーダを備え、
ａ．前記エンコーダが、
ｉ．画像を１又はそれ以上のブロックに分割し、
ｉｉ．前記１又はそれ以上のブロックのうちの１つのブロックを複数の量子化係数値によって符号化し、
ｉｉｉ．前記複数の量子化係数値による前記符号化の最良モードを決定し、
ｉｖ．前記符号化の前記最良モードによって前記ブロックを処理して圧縮データを生成し、
ｂ．前記デコーダが、
ｉ．前記ブロックが差分パルス符号変調を用いて符号化されているか、それともパルス符号変調を用いて符号化されているかを判定し、
ｉｉ．前記ブロックが差分パルス符号変調を用いて符号化されている場合、差分パルス符号変調復号を用いて前記ブロックを復号し、
ｉｉｉ．前記ブロックがパルス符号変調を用いて符号化されている場合、パルス符号変調復号を用いて前記ブロックを復号する、
ことを特徴とするシステム。
【００５５】
１９．ａ．ビデオを取得するためのビデオ取得要素と、
ｂ．
ｉ．画像を１又はそれ以上のブロックに分割し、
ｉｉ．前記１又はそれ以上のブロックのうちの１つのブロックを複数の量子化係数値によって符号化し、
ｉｉｉ．前記複数の量子化係数値による前記符号化の最良モードを決定し、
ｉｖ．前記符号化の前記最良モードによって前記ブロックを処理して圧縮データを生成する、
ためのアプリケーションを記憶するためのメモリと、
ｃ．前記メモリに結合されて、前記アプリケーションを処理するように構成された処理要素と、
を備えることを特徴とするカメラ装置。
【００５６】
２０．前記圧縮データが、一定の予め設定したサイズである、
ことを特徴とする条項１９に記載のカメラ。
【００５７】
本発明の構造及び動作の原理を容易に理解できるようにするために、詳細を盛り込んだ特定の実施形態を用いて本発明を説明した。本明細書における特定の実施形態及びその詳細についてのこのような言及は、本明細書に添付する特許請求の範囲を限定するためのものではない。当業者には、特許請求の範囲により定義される本発明の思想及び範囲から逸脱することなく、例示目的で選択した実施形態においてその他の様々な修正を行えることが容易に明らかになるであろう。
【符号の説明】
【００５８】
１００：エンコーダ
１０２：ｑｆによるＤＰＣＭ符号化
１０４：符号長計算
１０６：モード決定
１１０：信号ビット作成
１１２：エントロピ符号化
１１４：リファインメント
【図１】
0005550005.tif 000002
【図２】
0005550005.tif 000003
【図３】
0005550005.tif 000004
【図４】
0005550005.tif 000005
【図５】
0005550005.tif 000006
【図６】
0005550005.tif 000007
【図７】
0005550005.tif 000008
【図８】
0005550005.tif 000009