(57)【特許請求の範囲】
【請求項１】
イメージを表す入力画素ブロックデータであって、第１固定データビット数を備えている入力画素ブロックデータを、前記第１固定ビット数未満の減らされた第２目標固定ビット数の圧縮画素ブロックデータを与えるように圧縮する方法において、
ハイブリッド量子化符号化テーブルであって、
（ａ）前記符号化テーブルの対応する複数のデータ量子化間隔を表す第１固定ビット長の複数の符号語を含む第１符号語セットと、
（ｂ）前記第１固定長より短い第２固定長であって、前記符号化テーブルの少なくとも１つのデータ量子化間隔を表す少なくとも１つの第２固定長の符号語を含む、前記第１符合語セットより少ない符合語を有する第２符号語セットと
を含むハイブリッド量子化符号化テーブルを提供するステップと、
前記減らされた第２目標固定ビット数の圧縮画素ブロックを与えるように、入力画素ブロックの量子化に際して、前記第１および第２符号語セットの符号語を動的に選択するステップと、
前記減らされた第２固定ビット数を含む対応する圧縮画素ブロックを与えるように、前記入力画素ブロックのデータ要素に前記選択された符号語を割り当てるステップと
を備えたことを特徴とする方法。
【請求項２】
請求項１において、前記符号化テーブルは、前記第１固定ビット長の前記符号語より数が顕著に少ない前記第２固定ビット長の前記符号語を含むことを特徴とする方法。
【請求項３】
請求項１において、前記第１符号語セットの前記符号語に符号ビットを使用するステップをさらに含み、
前記第１符号語セットの前記データ量子化間隔が非線形に増加することを特徴とする方法。
【請求項４】
請求項１において、前記第２符号語セットの前記符号語が、前記符号語の初期ビットシーケンスに所定のビットパターンを含むことを特徴とする方法。
【請求項５】
請求項１において、前記第２符号語セットの前記符号語が、前記第１符号語セットの前記符号語より１ビット小さいことを特徴とする方法。
【請求項６】
イメージを表す入力画素ブロックデータであって、第１固定データビット数を備えている入力画素ブロックデータを、前記第１固定ビット数未満の減らされた第２目標固定ビット数の圧縮画素ブロックデータを与えるように圧縮する装置において、
データを受け取り、前記データをフォーマットする入力ネットワーク（１２）と、
前記データを圧縮データに圧縮するための圧縮テーブルであって、
（ａ）前記符号化テーブルの対応する複数のデータ量子化間隔を表す第１固定ビット長の複数の符号語を含む第１符号語セットと、
（ｂ）前記第１固定長より短い第２固定長であって、前記符号化テーブルの少なくとも１つのデータ量子化間隔を表す少なくとも１つの第２固定長の符号語を含む、前記第１符合語セットより少ない符号語を有する第２符号語セットと
を含む圧縮テーブルを含む圧縮ネットワーク（２０）と、
前記圧縮データをストアするためのメモリ（１４）と、
前記減らされた第２目標固定ビット数の圧縮画素ブロックを与えるように、入力画素ブロックの量子化に際して、前記第１および第２符号語セットの符号語を動的に選択する手段と
を備えたことを特徴とする装置。
【請求項７】
請求項６において、
前記圧縮データを受け取り再構成データを生成するための圧縮解除テーブルを含む圧縮解除ネットワーク（２６）と、
前記再構成データを受け取るための出力ネットワークと
をさらに含むことを特徴とする装置。
【請求項８】
請求項６において、前記各符号語の予め定めたビットパターンを、量子化レベルインデックスおよび再構成レベル値と関係付けをしたことを特徴とする装置。
【請求項９】
請求項６において、前記第２符号語セットの前記符号語が、前記符号語の初期ビットシーケンスに予め定めた一意のビットパターンを含むことを特徴とする装置。
【請求項１０】
ＭＰＥＧ符号化イメージを表すデータを処理する方法において、
（ａ）圧縮解除データを生成するために前記データを圧縮解除するステップと、
（ｂ）減らされた目標固定ビット数の圧縮画素ブロックデータを与えるように前記圧縮解除データを圧縮するステップと、
（ｃ）前記圧縮画素ブロックデータをストアするステップと
を備え、
前記圧縮ステップは、前記減らされた目標固定ビット数の圧縮画素ブロックを与えるように、入力画素ブロックの量子化に際して、第１および第２符号語セットに関係付けられた長さの異なる符号語を動的に選択するステップを伴い、前記第１符合語セットは第１固定ビット長の複数の符合語を含み、前記第２符合語セットは前記第１固定長より短い第２固定ビット長の少なくとも１つの符合語を含み、前記第１符合語セットよりも少ない符合語を有することを特徴とする方法。
【請求項１１】
請求項１０において、前記第２符号語セットに関係付けした符号語の数が、前記第１符号語セットに関係付けをした符号語の数より顕著に少ないことを特徴とする方法。
【請求項１２】
請求項１０において、前記ＭＰＥＧ符号化イメージを表すデータが、差分値を表すことを特徴とする方法。
【請求項１３】
請求項１０において、前記減らされた第２固定ビット数を含む圧縮画素ブロックを与えるように、前記圧縮解除データのデータ要素に、選択された符号語を割り当てるステップを含むことを特徴とする方法。
【請求項１４】
請求項１０において、前記第２符号語セットの符号語が、前記符号語の初期ビットシーケンスに所定のビットパターンを含むことを特徴とする方法。
【請求項１５】
請求項１０において、前記第２符号語セットの符号語が、前記第１符号語セットの符号語より１ビット小さいことを特徴とする方法。
【請求項１６】
請求項１０において、
（ｄ）再構成データを生成するために前記圧縮画素データを圧縮解除するステップと、
（ｅ）出力ネットワークに前記再構成データを出力するステップと
をさらに備え、
前記再構成データを、前記圧縮ステップと実質的に逆の態様で生成することを特徴とする方法。
【発明の詳細な説明】
本発明は、圧縮／圧縮解除ネットワーク（ｃｏｍｐｒｅｓｓｉｏｎ／ｄｅｃｏｍｐｒｅｓｓｉｏｎ  ｎｅｔｗｏｒｋ）に関する。具体的に言うと、本発明は、データスループットとメモリ効率を促進するための圧縮／圧縮解除テーブルの特性の変更に関する。
符号語（ｃｏｄｅｗｏｒｄ）の分解能（ｒｅｓｏｌｕｔｉｏｎ）は、符号化されたデータを正確に再構成するのに重要である。固定長量子化参照テーブルを用いると、圧縮ネットワークが、最小の処理を使用してデータを効率的に量子化し、逆量子化することができるようになる。出力符号語の表現に多数のビットを使用する量子化テーブルを用いると、出力符号語の表現に少数のビットを使用するテーブルよりよい分解能を得ることができる。しかし、ビット数が増えると、量子化の後のデータを記憶するのに必要なメモリが増え、同一のデータを転送するのに必要な帯域幅が大きくなる。量子化テーブルは、所与の量子化レベルについて、ほぼ同一の値の複数の入力データ点を１つの出力値に圧縮するという点で、非可逆（ｌｏｓｓｙ）である。再構成中には、同一の量子化された値が、テーブルの特定の量子化レベルの分解能の範囲内のすべてのデータ点を表す。データの不一致は、データの圧縮および圧縮解除に使用されるテーブルの分解能に依存する。周知の固定長量子化テーブルでは、出力符号語の表現に使用されるビット数によって指定される数のレベルが示され、すべての符号語が、所与のテーブル内では同一のビット数によって表現される。例えば、３ビットの出力符号語を用いるテーブルは、８つ（２3）のレベルを有し、４ビットのテーブルは、１６（２4）レベルを有する。テーブルの平均分解能、一般的に各レベルの平均分解能は、テーブルの定義域をテーブルのレベル数で除算した値である。
量子化テーブルでは、出力量子化データが、複数ビットの語（ｗｏｒｄ）またはシンボル（ｓｙｍｂｏｌ）によって表現される。本明細書では、ある種類のデータに対して、少なくとも１つの量子化レベルについて支配的なシンボル当たりビット数より少ないシンボル当たりビット数のシンボルを使用する量子化テーブルによって、帯域幅とメモリ要件を大幅に削減できることが認識されている。本発明の原理によれば、圧縮テーブルおよび圧縮解除テーブルは、周知の一般的なレートで値を受け取る少なくとも１つのレベルが、Ｍビット未満のシンボルを用いて圧縮されることを除いて、支配的なＭビットの各シンボルと関係付けをしたＮ個のレベルを有する。
【図面の簡単な説明】
図１は従来技術による４ビット量子化テーブルを示す図である。
図２は本発明の原理による４ビット量子化テーブルを示す図である。
図３は本発明を使用することができる圧縮／圧縮解除ネットワークのブロック図である。
図４は本発明の原理に従ってテーブルを設計するための１つの可能な方法を定義する流れ図である。
一実施例では、頻繁に発生する入力データに関係付けをしたレベル７を除いて、１５個の量子化テーブルレベルのそれぞれに、４ビットの出力符号語シンボルを関係付けをした。レベル７の場合、３ビットシンボルが使用される。短いシンボルを使用するたびに、帯域幅とメモリが他の用途のために保存される。例えばビデオデータのために存在するものなど、長いシーケンスのデータの場合、メモリと帯域幅の削減は重要である。本発明は、逆量子化テーブルにも関係付けをした。
上で定義された量子化テーブルは、ハイブリッドバイレングス（ｂｉ−ｌｅｎｇｔｈ、長さが２つある）テーブルである。符号語の表現に使用されるビット数に応じて、複数のテーブルレベルを選択して、所望の帯域幅削減を得ることができる。バイレングステーブルでなければ、ハイブリッドテーブルは、Ｎレングス（Ｎ−ｌｅｎｇｔｈ）テーブルになり、Ｎは短い符号語を有するレベルの数になる。また、短いシンボルのビット数は、必要であれば２から３以上までに変更することができる。これによって、ビット節約を追跡するためにより複雑な状態機械が必要になる。
一般に、固定長テーブルは、固定された周知のビットレート／帯域幅節約を得るために存在し、各データ値は、同一のビット数に圧縮される。可変長テーブルは、可能な最小のビットレートと最大の帯域幅節約を得るために存在する。量子化テーブルの場合、固定長テーブルと可変長テーブルの両方が、ある量のデータ消失と誤差を生じる。固定されたまたは周知の帯域幅削減を必要とする状況では、ハイブリッドテーブルを用いると、圧縮システムが、削減された帯域幅の中でより高い解像度を維持できるようになる。このような状況の一例が、定義済みまたは周知のデータサイズ／レート／帯域幅のデータストリームへのオーバーヘッド情報の挿入である。
図１は当技術分野で周知の固定長非可逆量子化テーブルを示す。このテーブルは、１２８（両端を含めて−６４から６３まで）の領域（ｄｏｍａｉｎ）を有し、例えば７ビット値の入力値を、４ビットの出力シンボルに減らす。各シンボルは、量子化されたデータ値を表す。量子化テーブルのパラメータには、関係付けをした決定点（ｄｅｃｉｓｉｏｎ  ｐｏｉｎｔ）と、再構成レベル（ｒｅｃｏｎｓｔｒｕｃｔｉｏｎ  ｌｅｖｅｌ）とが含まれ、量子化出力符号語シンボル（ｑｕａｎｔｉｚｅｄ  ｏｕｔｐｕｔ  ｃｏｄｅｗｏｒｄ  ｓｙｍｂｏｌ）と関係付けをした量子化レベルインデックス（ｑｕａｎｔｉｚａｔｉｏｎ  ｌｅｖｅｌ  ｉｎｄｅｘ）が含まれる。この決定点によって、量子化境界が設定され、関係付けをした出力シンボル（００００．．．１１１０）に対する入力値が識別される。この決定点値に等しいが、その前の決定点値より大きい入力値は、そのレベルに含まれ、圧縮中に関係付けをしたシンボルによって表現され、圧縮解除時には再構成レベルによって表現される。例えば、レベルインデックス０は、−５０の決定点を有し、これには−５０から−６４までの入力値が含まれ、シンボル００００によって表現され、−５７の値になるように再構成される。この例のシンボルは４ビット長なので、このテーブルには、１６（２4）の可能なレベルがある。しかし、テーブル（図１と図２の両方）が、差分パルス符号変調（ＤＰＣＭ）予測誤差値を表す時には、そのテーブルは、通常、予測誤差値に固有の対称性を維持するために、奇数個のレベル（１５）を有する。ＤＰＣＭ処理は、後で説明する。
各量子化レベルは、８．５（例えば、１５レベルに分割された１２８の領域）の平均分解能を有するが、個々の圧縮／圧縮解除ネットワークの独自の他の要因に応じて、あるレベルが、実際に平均分解能と異なる分解能を表現することができる。テーブルの領域内の所与の入力値に対して、入力値は、入力値が決定点以下であるが前の決定点より大きい決定点に関して分類される。その後、決定点のインデックスによって、そのデータ値の表現に使用される４ビットシンボルが識別される。逆量子化の際には、４ビットシンボルによって、再構成値につながるインデックスが識別される。再構成値は、元の入力データ値と等しいか、ほぼ等しい。
図２は本発明の原理を実施するテーブルを示す。このテーブルは、１２８（両端を含めて−６４から６３まで）の領域を有し、７ビット入力値を、１４個の４ビット出力シンボルまたは１つの３ビット出力シンボル（レベル７）に減らす。このテーブルは、通常の４ビットテーブルで可能な最大の１６レベルに対して、１５個の可能な量子化レベルを有する。図１および図２の両方のテーブルに含まれるＤＰＣＭ処理に関連せずに、可能なレベルの数が減らされる（２nの最大値から）。というのは、シンボルの１つ（０００）に、３ビットだけが含まれるからである。テーブル内のレベルの数を１つだけ減らすと、各レベルについて平均約６．３％だけテーブルの最大分解能が下がる。１２８の領域の場合、１６レベルのテーブルは、各レベルについて８．０の平均分解能を有し、１５レベルのテーブルは、各レベルについて約８．５（例えば１５レベルに分割された１２８の領域）の平均分解能を有する。３ビットのテーブルは、８つの可能なレベルだけを有する。８レベルではなく１５レベルのテーブルを使用すると、３ビットのテーブルは、７つのレベルが追加され、各レベルの解像度で平均８７．５％の向上を表す。３ビットシンボル（例えば、この例では０００）が、１５レベルのテーブル内で、頻繁にアクセスされるように配置される場合、帯域幅とメモリ要件の削減が大きくなり、データ分解能の消失より重要になる。したがって、本発明によれば、Ｎレベルを有し（例えば１５レベル）、各レベルが支配的な（predominantly）Ｍビット（例えば４ビット）の関係付けをした出力シンボルを有する量子化テーブルにおいて、少なくとも１つのレベル（例えばレベル７）が、頻繁に発生する値と、Ｍ未満のビット（例えば３ビット）を有する対応するシンボルとに関係付けをした。
圧縮解除ネットワークは、圧縮解除のためにデータを取り出す時に、３ビットシンボルと４ビットシンボルを識別しなければならない。これは、３ビットシンボルのビットパターンを予約することによって容易になる。例えば、図２では、３ビットシンボルだけが、パターン「０００」を有する。すべてのシンボルの最初の３ビットは、８ビットデータ値の逆量子化と８ビットデータ値の再構成の時に、ビットパターン「０００」がそれらのビットで発生する時に、必ずネットワークが３ビットシンボルを識別し、第４ビットを処理しないように予約される。シンボルの４ビットパターンのすべてについて、選択された３ビットパターンは、２回発生する。この３ビットシンボルの発生のうちの１つだけが、テーブル内の量子化レベルを表す。というのは、このネットワークが、他の情報がなければ３ビットシンボルについて１つのレベルしか認識できないからである。４ビットテーブルの場合には任意の３ビットパターンを使用することができ、３ビットシンボルだけが、予約されたパターンを有することができる。
このテーブルが使用される所与のシステムについて、設計者が、支配的な４ビットテーブルで１つではなく２つの３ビットシンボルを使用することが効率的であると判断した場合、量子化テーブルと逆量子化テーブルは、１４個以下のレベルを有する形で設計できる。任意のビット位置での、「００」などの２ビットパターンは、１６個の可能なシンボルのうちで４回だけ発生する。短いシンボルビットパターンを有しない１２個のレベルには、４ビット出力シンボルが割り当てられる。２ビットパターンを使用して３ビットシンボルを識別すると、３ビットシンボルの間の区別のために１ビットが残され、これによって、２つの異なるレベルが一意に識別される。これは、それぞれが１６個の可能なシンボルの中に２回発生する２つの一意の３ビットパターンを有する場合と同一である。したがって、１６レベルのうちの１４レベルが、この配置のために使用可能である。
３ビットシンボルは、量子化中に頻繁に発生する入力データ値にこのシンボルを関係付けをした可能性を最適化するように配置される。したがって、特定のシステムを前もって評価して、３ビットシンボルを配置する位置を統計的に識別しなければならない。統計測定を正確に行うために必要な場合には、このシステムに複数の圧縮／圧縮解除ネットワークを含めることができる。例えば、図２の表は、通常は予測ネットワークから導出される差分パルス符号変調（ＤＰＣＭ）予測誤差値を処理する。このような予測ネットワークは周知である。ＤＰＣＭを使用する圧縮ネットワーク内で、予測ネットワークは、前のデータ値を使用して次のデータ値を予測する。実際の値と予測された値の間の差が判定され、この差が予測誤差になる。予測誤差の絶対値は、一般に、数値的に実際の値および予測された値より小さく、したがって、より少ないビット数で正確に表現できる。
ＤＰＣＭ予測誤差値は、通常は、０誤差を中心に対称的に発生し、統計的には、鐘形曲線に似た形で、０誤差またはその付近でより頻繁に発生する。誤差値が発生する頻度は、システムに入力される予測誤差値のすべての分布を導出することによって、テーブルを設計する前に測定することができる。この情報を用いて、３ビットシンボルは、使用される確度が最大の位置に配置され、これによって、帯域幅とメモリ要件が最小になると同時に、処理効率が維持される。３ビットシンボルによって表現されるレベルの分解能は、３ビットシンボルの使用を最適化するために調節することができる。図２では、３ビットシンボルが、このシステムに関して予測誤差が発生する可能性が最も高い０の周囲に配置されている。この特定のレベル（レベル７）は、テーブルのレベル配置が統計的な発生に関して最適化されているので、３から−２までの６の分解能を有する。やはり、使用される圧縮ネットワークの種類に応じて、３ビットシンボルの配置は、量子化テーブルおよび逆量子化テーブルが受け取るデータ値の統計的発生に依存する。統計的に最適の配置は、短い符号語シンボルの実施に影響を及ぼさずに、異なる種類のシステムの間で変更することができる。
シンボルは例えば予測誤差値によって表現されるＤＰＣＭ入力データなど、入力データの対称性を利用するように設計することができる。図２のテーブルは入力値が０を中心に対称に発生するＤＰＣＭ処理に基づくものである。したがって、シンボルの１ビットを、符号ビットとして予約することができる。レベル０からレベル６のシンボルの右端のビット（最下位ビット）は「０」であるが、レベル８からレベル１４のシンボルのこのビットは「１」である。このネットワークは、再構成の際には４ビットのうちの３ビットだけを復号すれば十分であり、複雑さの低い回路によって、再構成されたデータ値に正しい符号を追加することができる。
図３は本発明を使用する量子化テーブルおよび逆量子化テーブルを使用することのできる１つの可能なシステムを示す。圧縮ネットワーク１２は、その入力１０で、入力ネットワーク（図示せず）から入力データを受け取る。入力データは、量子化器（ｑｕａｎｔｉｚｅｒ）２０とコンバイナ（ｃｏｍｂｉｎｅｒ）２２に送られる。量子化器２０は、必要な入力値をプレディクタ（ｐｒｅｄｉｃｔｏｒ）１８に渡し、プレディクタ１８は、量子化される値の予測値を生成する。コンバイナ２２は予測値を受け取り、その予測値に関係付けをした元の入力値から予測値を減算する。この差は予測誤差値であって量子化器２０によって受け取られ、量子化器２０は、本発明の原理に従って設計された量子化テーブルを使用して、予測誤差値を量子化する。量子化器２０からの圧縮されたデータ出力シンボルは、フレームメモリ１４に送られる。
出力ネットワーク（図示せず）がデータを必要とする時には、圧縮解除ネットワーク１６が、フレームメモリ１４から圧縮データを受け取り、逆量子化器（ｄｅｑｕａｎｔｉｚｅｒ）２６が、本発明の原理に従って設計された逆量子化テーブルを使用して、圧縮された予測誤差値を逆量子化する。この予測誤差値は、プレディクタ１２に類似したプレディクタ２４に渡され、予測値が生成される。この予測値は、逆量子化器２６に送り返され、圧縮解除された予測誤差値に加算されて、対応する再構成された元の入力値またはそれに近い近似値がもたらされる。再構成された値は出力ネットワークに送られる。
入力ネットワークは、ＭＰＥＧフォーマットで符号化され、圧縮されたオーディオ信号およびビデオ信号を受け取るＭＰＥＧ互換テレビジョン受信機内の信号プロセッサとすることができる。この受信機は、受け取った信号を復号し、圧縮解除し、８ビットイメージ画素の８×８ブロックを入力１０に供給する。対応する出力ネットワークは、標準ディスプレイまたは高精細度ディスプレイとの互換性を有する表示プロセッサとすることができる。この表示プロセッサは、動き補償情報を導出するために、所与のイメージフレーム内の画素ブロックにランダムアクセスする必要がある。フレームメモリ１４は、表示プロセッサがイメージフレームを必要とするまでそれらのイメージフレームを記憶する。
図４には既に説明した図３のネットワークで使用するための量子化テーブルおよび逆量子化テーブルを設計する方法の１つを示す。成功裡にテーブルを設計するために、正確に各ステップの順序に従う必要はない。例えば、ステップ４６は、ステップ４４の前に行うことができ、ステップ４８はどこで行ってもよい。ステップ４０では、テーブルが有するレベルの数を判定する。これは、各シンボルが有するビット数、テーブルが受け取るデータの種類、そのデータに対してネットワークが行う処理の種類、および、使用されるシステムに固有の他の変数に依存する。ステップ４２で、データおよびシステムを統計的に分析して、入力データ値が発生する頻度を判定し分類する。ステップ４４で、頻繁に発生するデータを受け取るテーブルレベルに、短いシンボルを割り当てる。ステップ４６で、他のレベルに普通の長さのシンボルを割り当てる。ステップ４８で、シンボルのうちの１ビットを符号ビットとして予約する。この符号ビットは、データの正しい符号の保存と追加のために、複雑さの低い回路によって別に処理することができる。最後に、ステップ５０で、各レベルの分解能を定義する。レベルを調節し、その結果、一部のレベルが他のレベルより微細な分解能を有するようにすることができる。この決定は、使用されるデータおよびシステムの統計的分析にも基づく。
上で述べた量子化ネットワークは、当業者に周知のハフマン（Ｈｕｆｆｍａｎ）符号化と混同してはならない。ハフマン符号化は、可逆（ｌｏｓｓｌｅｓｓ）統計的エントロピ符号化であり、平均出力符号語長より短いものと長いものの両方の符号語長を有する。また、ハフマン符号化を使用するエンコーダへの各入力は、エンコーダの出力で一意のシンボルを生成される。ハフマン符号化はエントロピ符号化であるから、ハフマン符号化を固定ビットレートの圧縮システムに使用することは不可能である。ハフマン符号化は、固定ビットレートをもたらすのに必要な制御を提供しない。
本発明に従って本明細書で説明した方法は、その方法およびシステムが非可逆システムに適用されるので、各レベルの発生の頻度がほぼ等しい場合であっても、メモリおよび帯域幅の削減を容易にする。本発明の原理によるシンボルは、量子化レベルに関係付けをした決定点によって決定される範囲の入力データを表現する。元のデータは、通常は、圧縮解除の際に正確には再作成されない。また、上で説明した方法の代わりにハフマン符号化を実施すると、より複雑なハードウェアと、平均／支配的シンボルサイズより長いシンボル長がもたらされるはずである。というのは、符号語間の区別のために各符号語が一意のパターンを有する必要があるからである。すなわち、４ビット符号語が「０１０１」の場合、より多くのビットを有する符号語が、最初の４ビットに「０１０１」を有することができず、そうでなければ、復号器がそのビットパターンを誤って識別することになる。本発明を組み込んだ量子化テーブルでは、短いシンボルだけがＮビットの一意のビットパターンを有する。より長いビットパターンを、最初のＮビットの後で繰り返すことができる。これによって、ハフマン符号化と比較して、必要なネットワークの複雑さがかなり減る。
【図１】
0003990464.tif 000002
【図２】
0003990464.tif 000003
【図３】
0003990464.tif 000004
【図４】
0003990464.tif 000005