(57)【要約】【課題】圧縮データセット中の最下位ビット数を削減し、同時にレート・歪み性能を向上させる。【解決手段】１群の数値データを選択し（処理ブロック１０１）、その数値データ中の数値データ値の最下位ビット（ＬＳＢｓ）を、それら数値データに共有される単一の最下位ビットで置き換える（処理ブロック）。【選択図】図１
2006314097.tif 000002
【特許請求の範囲】
【請求項１】
量子化対象の数値データを受信する手段と、前記数値データの最下位ビット（ＬＳＢｓ）を、前記数値データ中の各数値データ値によって共有される単一のＬＳＢで置き換える手段とを具備する符号化装置。
【請求項２】
前記単一のＬＳＢとして選ばれた値に基づいて数値データ値を調整する手段をさらに具備することを特徴とする請求項１記載の符号化装置。
【請求項３】
前記置き換えのための手段が、平均２乗誤差（ＭＳＥ）に基づいて前記単一ＬＳＢを設定する手段を具備することを特徴とする請求項１記載の符号化装置。
【請求項４】
前記置き換えのための手段が、前記数値データ中の数値データ値のＬＳＢｓの中で、どちらの２進値の出現頻度が最高であるかに応じて前記単一ＬＳＢを設定する手段を具備することを特徴とする請求項１記載の符号化装置。
【請求項５】
前記置き換えのための手段が、前記数値データを含む画像データの１領域全体のＬＳＢｓの中で、どちらの２進値の出現頻度が最高であるかに応じて前記単一ＬＳＢを設定する手段を具備することを特徴とする請求項１記載の符号化装置。
【請求項６】
前記単一ＬＳＢを、“ＬＳＢ共有化を意識していない”標準に適合したファイルに埋め込む手段をさらに具備することを特徴とする請求項１記載の符号化装置。
【請求項７】
前記単一ＬＳＢを前記ファイルへ埋め込む手段が、前記単一ＬＳＢを前記各数値データ値の１つに付加する手段を具備することを特徴とする請求項６記載の符号化装置。
【請求項８】
前記各数値データ値が１つの係数からなることを特徴とする請求項７記載の符号化装置。
【請求項９】
前記単一ＬＳＢを前記ファイルへ埋め込む手段が、ｑ−マトリクスを修正する手段を具備することを特徴とする請求項６記載の符号化装置。
【請求項１０】
前記ｑ−マトリクスを修正する手段が前記ｑ−マトリクス内の数を半分にすることを特徴とする請求項９記載の符号化装置。
【請求項１１】
前記各数値データ値のサイン（正負符号）を、前記単一ＬＳＢとの排他的論理和をとることによって反転させる手段をさらに具備することを特徴とする請求項１記載の符号化装置。
【請求項１２】
各数値データ値のサインを、それが所定の状態である確率との排他的論理和をとることによって反転させる手段をさらに具備することを特徴とする請求項１記載の符号化装置。
【請求項１３】
前記所定の状態が負であることを特徴とする請求項１２記載の符号化装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データの圧縮及び伸長の分野に関する。
【背景技術】
【０００２】
データ圧縮は、大量のデータの記憶及び伝送のために極めて有用な手段である。例えば、文書のファクシミリ送信のような画像伝送に要する時間は、圧縮を利用して、その画像の再生に必要なビット数を減らすと、著しく短縮される。
【０００３】
従来より、多くの様々なデータ圧縮手法が存在している。圧縮手法は、おおまかに分類すると２つのカテゴリー、つまり、ロッシー(lossy)符号化とロスレス（lossless）符号化とに分けることができる。ロッシー符号化とは、情報の損失が生じ、したがって元のデータの完全な再現が保証されない符号化のことである。ロッシー圧縮の目標とするところは、元のデータから変わったとしても、その変化が不快であったり目だったりしないようにすることである。ロスレス圧縮では、情報はすべて保存され、データは完全に復元可能な方法で圧縮される。
【０００４】
ロッシー圧縮の場合、信号もしくは輝度データ又はその変換データのような数値データは、量子化されてから出力符号語に変換される。量子化は、データの重要な特徴は保存しつつ重要でない特徴を除去するためのものである。ロッシー圧縮システムは、量子化に先立って、エネルギー集中のための変換を利用することが多い。ＪＰＥＧは画像データ用ロッシー符号化法の一例である。
【０００５】
圧縮画像ファイルのような、変換・符号化された圧縮データセットのデータは変換係数である。この圧縮データは、そのような係数を丸めた整数値を表している。丸め後の係数はその大部分が０である。しかし、統計的符号化であるので、圧縮ファイルの大部分のビットは非０係数を詳細に表すために費やされる。
【０００６】
係数又は他の符号語の最下位ビットが意味を持つのは、圧縮装置のＳＮＲが最下位ビットの次位ビットの重要性の水準より６．０２デシベル高い場合のみである。多くの場合、最下位ビットは圧縮信号の品質にはこれといって殆ど影響を及ぼさない。圧縮データセットにおいて、最下位ビットが何等の意味をも持たない場合には、その最下位ビットを削除するのが望ましいであろう。しかしながら、ＪＰＥＧ及び多くの類似方法にあっては、そのようなビットは圧縮ファイル中に必ずなければならないものである。
【０００７】
最下位ビットが含まれることによって必然的に無駄になる圧縮ファイルのスペースを若干埋め合わせるための別の方法が、例えば非特許文献１に示されている。この方法では、最下位ビット・チャネルの通常ビットが埋め込まれた独立したロスレス・チャネルを得るため、ある閾値に近い係数が特殊処理される。
【０００８】
【非特許文献１】Silverstein  and  Klein，“Restoration  of  Compressed  Image,”Proceedings  of  SPIE  on  Image  and  Video  Compression，pp．56-64，vol.2186，Feb．1994，San  Jose，California
【発明の開示】
【発明が解決しようとする課題】
【０００９】
本発明の一般的な目的は、新規なロッシー符号化方法及び装置を提供することにあり、より具体的な目的は、圧縮データセット（例えば圧縮ファイル）中の最下位ビット数を削減してさらに圧縮することができる符号化装置、特に、圧縮と同時にレート・歪み性能を向上させることが可能な符号化装置を提供することにある。
【課題を解決するための手段】
【００１０】
前記目的を達成するための本発明による符号化装置の主たる特徴は、量子化対象の数値データを受信する手段と、前記数値データの最下位ビット（ＬＳＢｓ）を、前記数値データ中の各数値データ値によって共有される単一のＬＳＢで置き換える手段とを具備してなることである。
【００１１】
本発明による符号化装置のもう１つの特徴は、前記単一のＬＳＢとして選ばれた値に基づいて数値データ値を調整する手段をさらに具備することである。
【００１２】
本発明による符号化装置のもう１つの特徴は、前記置き換えのための手段が、平均２乗誤差（ＭＳＥ）に基づいて前記単一ＬＳＢを設定する手段を具備することである。
【００１３】
本発明による符号化装置のもう１つの特徴は、前記置き換えのための手段が、前記数値データ中の数値データ値のＬＳＢｓの中で、どちらの２進値の出現頻度が最高であるかに応じて前記単一ＬＳＢを設定する手段を具備することである。
【００１４】
本発明による符号化装置のもう１つの特徴は、前記置き換えのための手段が、前記数値データを含む画像データの１領域全体のＬＳＢｓの中で、どちらの２進値の出現頻度が最高であるかに応じて前記単一ＬＳＢを設定する手段を具備することである。
【００１５】
本発明による符号化装置のもう１つの特徴は、前記単一ＬＳＢをＪＰＥＧのような“ＬＳＢ共有化を意識していない（unwitting）”標準に適合したファイルに埋め込む手段を具備することである。
【００１６】
本発明による符号化装置のもう１つの特徴は、前記単一ＬＳＢを前記ファイルへ埋め込む手段が前記単一ＬＳＢを前記各数値データ値の１つに付加する手段を具備することである。
【００１７】
本発明による符号化装置のもう１つの特徴は、前記各数値データ値が１つの係数からなることである。
【００１８】
本発明による符号化装置のもう１つの特徴は、前記単一ＬＳＢを前記ファイルへ埋め込む手段がｑ−マトリクスを修正する手段を具備することである。
【００１９】
本発明による符号化装置のもう１つの特徴は、前記ｑ−マトリクスを修正する手段が前記ｑ−マトリクス内の数を半分にすることである。
【００２０】
本発明による符号化装置のもう１つの特徴は、前記各数値データ値のサインを、前記単一ＬＳＢとの排他的論理和をとることによって反転させる手段をさらに具備することである。
【００２１】
本発明による符号化装置のもう１つの特徴は、各数値データ値のサインを、それが所定の状態である確率との排他的論理和をとることによって反転させる手段をさらに具備することである。
【００２２】
本発明による符号化装置のもう１つの特徴は、前記所定の状態が負であることである。
【発明の効果】
【００２３】
本発明によれば、複数の数値データ値間で最下位ビットを共有させることにより、例えば圧縮ファイル中の最下位ビット数を削減して、さらなる圧縮が可能であり、また、圧縮と同時にレート・歪み性能を向上させることが可能である等々の効果を得られる。
【発明を実施するための最良の形態】
【００２４】
以下、添付図面を参照し、本発明の実施の形態を説明する。説明の簡略化のため、添付図面中の複数の図面において、同一部分又は対応部分には同一又は同様の参照番号を用いる。
【００２５】
以下の記述中に、ビット数、ブロック・サイズ等々、様々な具体例が示される。しかし、当業者には、そのような具体例によらずに本発明を実施し得ることは明白であろう。他方、本発明をいたずらに難解にしないため、周知の構造やデバイスはブロック図で示される。
【００２６】
以下の詳細説明で、コンピュータ・メモリ内のデータビットに対する操作に関するアルゴリズム及び記号表現によって表された部分がある。このようなアルゴリズム記述及び表現は、データ処理技術分野の当業者が、その研究内容を他の当業者に対し最も効率的に伝えるために用いる手段である。あるアルゴリズムがあり、それが概して所望の結果に至る筋の通ったステップの系列だと理解されるとする。これらステップは、物理量を物理的に操作する必要があるものである。必ずという訳ではないが、通常、これらの物理量は記憶、転送、結合、比較、その他操作が可能な電気的または磁気的信号の形をとる。これらの信号をビット、数値、要素、記号、文字、用語、番号等で呼ぶのが、主に慣用上の理由から便利な場合があることが分かっている。
【００２７】
しかしながら、このような用語や同様の用語は、適切な物理量と対応付けられるべきであり、また、これら物理量につけた便宜上のラベルに過ぎないということに留意すべきである。以下の説明から明らかなように、特に断わらない限り、「処理」「演算」「計算」「判定」「表示」等の用語を用いて論じることは、コンピュータシステムのレジスタやメモリの内部の物理的（電子的）な量として表現されたデータを処理して、コンピュータシステムのメモリやレジスタ、その他同様の情報記憶装置、情報伝送装置又は表示装置の内部の同様に物理量として表現された他のデータへ変換する、コンピュータシステムや同様の電子演算装置の作用及びプロセスを指すものである。
【００２８】
また、本発明は、ここに述べる操作を実行するための装置にも関係するものである。この装置は、所望の目的のために専用に作られてもよいし、汎用コンピュータを内蔵のコンピュータ・プログラムにより選択駆動もしくは再構成してなるものでもよい。そのようなコンピュータ・プログラムは、コンピュータが読み取り可能な記憶媒体、限定するわけではないが例えば、フロッピーディスク、光ディスク、ＣＤ−ＲＯＭ、光磁気ディスクなどの任意の種類のディスク、リードオンリーメモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、ＥＰＲＯＭ、ＥＥＰＲＯＭ、磁気カード又は光カード、すなわち電子的命令の格納に適しコンピュータのシステムバスに接続される任意種類の媒体に格納してよい。ここに提示するアルゴリズムは、本質的に、いかなる特定のコンピュータ、その他の装置とも関わりがない。様々な汎用マシンを、ここに述べる内容に従ったプログラムと一緒に使用し得るが、所要の方法のためのステップの実行用により特化した装置を作るほうが好都合であるかもしれない。これら多様なマシンに要求される構造は以下の説明から明らかになろう。さらに、どのような特定のプログラミング言語とも関連付けることなく本発明を説明する。ここに述べる本発明の内容を実現するために、様々なプログラミング言語を利用し得ることが理解されよう。
【００２９】
本発明によって提供されるロッシー・データ符号化においては、１ブロックの量子化可能数値データの（又は、それ以外のひとまとまりの量子化可能数値データの）最下位ビット(LSBs)が、同ブロックの数値データ間で共有される単一のＬＳＢで置き換えられる。よって、量子化可能数値データは最下位ビットを持つ２進形式のデータである。この置換によって、数値データは量子化された数値データとなる。
【００３０】
図１は、本発明の一実施例の流れ図である。本発明は、処理ロジックによって遂行される。この処理ロジックは、ハードウェア（例えば布線ロジック）でも、ソフトウェアでも、それらの組み合わせ（例えばファームウェアなど）でもよい。例えば、本発明を、コンピュータシステムを利用して実行してもよい。
【００３１】
図１を参照する。まず、処理ロジックは１グループの量子化可能な数値データ値を選び出す（処理ブロック１０１）。これらのデータは、そうでなければならないということではないが、例えば離散コサイン変換（DCT）やウェーブレット変換のような変換を施すことによって生成された係数であろう。その１グループをどのように選ぶかは、データの形式によって決めてよい。例えば、１ブロックが６４画素からなり各ブロックが６４係数からなるＪＰＥＧシステムにおいては、選択される１グループは、１ブロック全体の係数又はその一部の係数でよい。しかし、数値データ値の１グループはブロックを基準にしたものでなくともよく、要するに、特定可能などのような領域、集合又はグループを用いてもよい。
【００３２】
１グループの数値データ値を選び出した後、処理ロジックは、それら数値データ値のそれぞれの最下位ビット（LSB）を単一の共有ＬＳＢによって置き換える（処理ブロック１０２）。したがって、１グループのＮ個のデータの全てについて、Ｎ個のＬＳＢが１個のＬＳＢで置き換えられる。すなわち、本発明はＮ個のＬＳＢの符号化のために１ビットだけ使用する。
【００３３】
一実施例によれば、共有ＬＳＢの値は、量子化可能数値データのＬＳＢの値に基づいて設定される。例えば、共有ＬＳＢの値は、それら数値データ中の数値データ値のＬＳＢにおいて発生頻度が最っとも高い２進値としてよい。
【００３４】
それらＬＳＢが全て同じ値ならば、それらＬＳＢの全部を符号化しないことによってもたらされる削減量は大きく、しかも画像の品質には影響を与えない。それらＬＳＢの過半数がdon't  care値（すなわち閾値に近い値）である場合には、例えば、グループ中の１つの量子化可能数値データ値を、グループ全体のＬＳＢを与えるために選んでよい。例えば、グループ中に９個の数値データ値があるときに、常に９番目の数値データ値のＬＳＢを用いて共有ＬＳＢの値を設定してもよい。
【００３５】
これに代わる実施例によれば、平均２乗誤差（MSE）を最適化することを基準に共有ＬＳＢが選定されるであろう。このような最適化の一実施例によれば、本発明は、共有ＬＳＢの設定に多数決投票を利用し、次の条件が成立したときにのみ共有ＬＳＢを１に設定する。
【００３６】
【数１】
2006314097.tif 000003
上式中の上に開いた括弧|_・_|は下向きに丸めること、すなわち切り捨てを意味し、床関数と呼ばれることがある。
【００３７】
後で詳述するように、ＬＳＢ値を設定した後に、数値データ中の数値データ値に補正を施してもよい。この補正の目的は、複数のＬＳＢを単一のＬＳＢで置き換えることによる歪みを減らすためである。
【００３８】
図２は、一様データの符号化プロセスの一実施例の流れ図である。このプロセスは処理ロジックによって実行されるが、この処理ロジックはハードウェアでも、ソフトウェアでも、それらの組み合わせでもよい。たいていが０であるデータような、強く集中したデータに対する適応性を向上させるため、図２のプロセスを修正してもよい。そのような変更については後に詳しく説明する。
【００３９】
図２を参照する。この一様データ符号化プロセスは、まず、量子化すべき数値データ値の１グループを選択する（処理ブロック１１０）。これらのデータ値を、ここではx1，X2，...XNと呼ぶ。この数値データ値のグループは１つのブロック（又は、任意の他の特定可能なひとまとまり）を構成することになろう。次に、これらの数値データ値を利用し、処理ロジックは次の関数を計算する（処理ブロック１１１）。
【００４０】
【数２】
2006314097.tif 000004
ここで、ｘｉはデータ値を指す。なお、他の関数を用いてもよい。
【００４１】
次に、処理ロジックは、その関数の計算結果が０以上であるか（又は０未満であるか）判定する（処理ブロック１１２）。関数の計算結果が０未満であるときには、処理ブロック１１３に移行してＬＳＢ（Ｌと呼ぶ）を１に設定し、処理ブロック１１５から処理を続ける。関数の計算結果が０以上であるときには、処理ブロック１１４に移行しいＬＳＢ値Ｌを０に設定し、処理ブロック１１５から処理を続ける。
【００４２】
処理ブロック１１５において、変数ｉが１に設定される。次に、処理ロジックは、次のようなｅｍｉｔ関数を使用して、共有ＬＳＢ以外の、量子化対象データ値の全ビットを出力する（処理ブロック１１６）。
【００４３】
【数３】
2006314097.tif 000005
そして変数ｉは１だけインクリメントされる。
【００４４】
なお、共有ＬＳＢによって生じた歪みを減らすようにデータ値は修正されることに注意されたい。
【００４５】
次に、処理ロジックは、変数ｉがＮ以下であるか判定する（処理ブロック１１７）。Ｎ以下ならば、処理ブロック１１６に戻る。Ｎ以下でなければ、処理ブロック１１８に進み、ＬＳＢ値のＬが数値データ値x1，X2，...XNの共有ＬＳＢとして出力される。次に、符号化すべきデータがまだあるか判定される（処理ブロック１１９）。ほかのデータを符号化する必要があるならば、処理ブロック１１０に戻り、プロセスが繰り返される。ほかのデータを符号化する必要がなければ、プロセスは終了する。
【００４６】
一実施例によれば、処理ブロック１１６において、共有ＬＳＢを用いることによって生じる歪みを減らすための調整が行われる。この調整は、共有ＬＳＢの選定を考慮して、それぞれの数値データに対して行われる。個々のグループのデータ値全部には調整が必要でないかもしれない。すなわち、調整が必要なのは、共有ＬＳＢを用いることにより生じる歪みが調整で減少するデータ値だけである。この調整について、図６に示す例によって説明する。
【００４７】
図７において、最初の行（ａ）は、ＬＳＢの共有化を行わない普通の量子化を表す。ここでは、ＬＳＢ共有化が適用されて共有ＬＳＢが０になると仮定する。２番目の行（ｂ）は、共有ＬＳＢを適用したが調整ステップを用いない場合の結果を表す。歪みは、０．３から１．３へ（｜15-15.3｜から｜14-15.3｜へ）増加している。３番目の行（ｃ）は、共有ＬＳＢを適用し、かつ、調整ステップで最上位ビット（MSB）を修正した場合の結果を表している。この場合、歪みは０．７（|16-15.3|）に過ぎない。ゆえに、このプロセスでデータ値を基にして調整を行うのである。この調整は、処理ブロック１１６で行われ、また、処理ブロック１１１の計算式に影響を及ぼす。
【００４８】
図１に従って符号化されたデータの復号化手順のポイントは、再構成データｘｉの計算である。一実施例によれば再構成データは次式によって計算される。
【００４９】
【数４】
2006314097.tif 000006
ここで、Ｙｉは処理ブロック１１６で出力されたＭＳＢデータであり、Ｌは共有ＬＳＢである。
【００５０】
本発明によってもたらされる信号雑音比（SNR）の向上を、一様分布データについて解析的に計算できる。様々なブロック・サイズでの信号雑音比ゲイン及び対応する平均２乗誤差（ＭＳＥ）を図７に示す。
【００５１】
図７において、ＳＮＲゲインはＭＳＥから次式によって計算される。
【００５２】
【数５】
2006314097.tif 000007
【００５３】
Ｌ＝１の場合、“共有化”はない。Ｌ＝２の場合、共有化を行ってもよいが、ＳＮＲゲインは０である。図７に示すように、Ｌ＝９の場合にＳＮＲゲインが最高であり、各ＬＳＢの符号化に平均して０．１１１ビットが用いられる。しかしながら、余分な０．１９０１ビットを常に使用した場合と同じ程度だけ期待精度（ＳＮＲ）は改善される（不適切さもしくは粗れの要因の減少による）。このように、本発明は、各ＬＳＢを保存するのにほぼ０ビットを使って、各ＬＳＢを非常に不正確に保存する。さらに、ビットレート又はＳＮＲの制御のためにブロック・サイズの選択を利用し得る。
【００５４】
また、本発明は、前述のSilversteinの方法より有利であり、特に大きなブロックサイズを扱う場合に有利である。Silversteinの方法では小さなブロックサイズを用いる必要があるのに対し、本発明は大きなブロックを用いる場合でも性能の向上をもたらす。
【００５５】
図３は、本発明の圧縮／伸長システムの一例のブロック図を示している。図３において、入力データ２０１が圧縮ブロック２０２に受信され、圧縮ブロック２０２は量子化可能な数値データ２０３を生成する。圧縮ブロック２０２は、ＤＣＴ、ウェーブレット変換、その他の変換のための変換器でよい。このような場合、圧縮ブロック２０２の出力は係数からなる。圧縮ブロック２０２は１つの圧縮手法を遂行しても複数の圧縮手法を遂行してもよい。圧縮ブロック２０２は、例えばジグザグ順序付けや埋め込み順序付けのような順序付けも行ってもよい。この場合、圧縮ブロック２０２の出力は順序付けられた係数のような順序データからなる。
【００５６】
量子化可能数値データ２０３の値はメモリ２０４に格納される。メモリ２０４は、バッファ、ＦＩＦＯ、ランダムアクセスメモリ（例えば、ダイナミックメモリ（DRAM）、スタティックラム（SRAM）、ラムバスＤＲＡＭ（RDRAM）、シンクロナスＤＲＡＭ（SDRAM）など）、又は、処理のためにアクセス可能な任意の記憶域から構成してよい。ＬＳＢ処理ブロック２０５は、メモリ２０４をアクセスして同メモリ２０４に格納されている量子化可能数値データを取り込み、そのデータ値のための共有ＬＳＢを生成する。それら量子化可能数値データは、少なくとも１グループ単位（例えば１ブロック又は複数ブロック）である。ＬＳＢ処理ブロック２０５は１つの共有ＬＳＢの生成を終わると、そのさらに符号化されたデータをメモリ２０４に書き戻す。
【００５７】
その後、メモリ２０４に格納されている符号化データは符号化データ出力２０６として通信路及び／又は記憶装置へ出力される。一実施例によれば、符号化データ出力２０６は、データのある部分のための共有ＬＳＢの値の指示情報を含むヘッダ又はタグを含んでいる。例えば、そのデータの部分は、１グループ又は１ブロック分の数値データであろう。この場合、ヘッダはグループ内又はブロック内の数値データのためのＬＳＢを指定する。別の実施例によれば、１つのヘッダ（又はタグ）によって複数のグループもしくはブロックの数値データのための複数のＬＳＢを指定するであろう。他の実施例によれば、独立した通信路又は側波帯信号パスが、共有ＬＳＢ(s)（及び／又はメッセージ）の復号化装置への送信に使用されるであろう。当該技術分野の当業者には、それ以外の多くの転送方法も明らかであろう。
【００５８】
なお、他の実施例によれば、共有ＬＳＢを生成後のデータ値に対し、さらに符号化法が適用される。例えば、データ値（ＬＳＢを除く）と、それらの共有ＬＳＢに対しハフマン符号化を適用してもよい。伸長時には、対応した復号化法が適用されることになろう。どのような符号化法を用いてもよい。同様に、圧縮時においてＬＳＢ処理の前に１種類以上の符号化法を適用してもよいが、復号化時に、ＬＳＢ処理の後に対応した復号化法が適用されることになろう。
【００５９】
復号化装置２１０は、符号化データ出力２０６の復号化のために利用し得る。復号化装置２１０はメモリ２１１を有する。このメモリ２１１は、バッファ、ＦＩＦＯ、ＲＡＭ、又は任意の記憶域から構成してもよく、符号化データ出力２０６を格納する。伸長ブロック２１２は、メモリ２１１に格納されている符号化データを伸長して復号化データ２１４を生成する。復号化装置２１０は、符号化装置で使用された各符号化法に対し必要とされる伸長方法のための、対応した復号化ハードウェア及び／又はソフトウェアを具備するであろう。
【００６０】
復号化時には、伸長ブロック２１２は、データを適切に再構成するために、ビットストリームのどこに共有ＬＳＢがあるか判断する。データストリームは、データ値グループの共有ＬＳＢを指示するための識別子（例えばコード）を含むであろう。特にグループの大きさが変動する場合には、共有ＬＳＢを“共有”するデータ値の数に関する確認情報も指示させるであろう。
【００６１】
なお、符号化装置２００及び復号化装置２１０を、１つの集積回路チップ上に形成した単一のデバイスとしてもよい。他の実施例によれば、符号化装置２００及び復号化装置２１０は、１つ以上の集積回路チップ又はデバイスである。もう一つの実施例によれば、符号化装置２００及び／又は復号化装置２１０は、コンピュータシステムで実行されるソフトウェアからなる。
【００６２】
一実施例によれば、０係数が非０係数と区別され、ＬＳＢ共有化は非０係数にのみ適用される。このようにするのは、０に非常に近い値に関しては、複数の係数又は他の数値データで共有されるＬＳＢの選び方によって、そのデータを０から離れるように変化させることがあるからである。
【００６３】
一実施例によれば、殆どが０である非常に高い周波数のサブバンドは、ＬＳＢ共有化法を用いずに符号化される。それ以外のサブバンドについては、０係数にＬＳＢ共有化が施されるであろう。
【００６４】
一実施例によれば、共有ＬＳＢは、ブロック内の係数中で閾値から最も離れた１つの係数には効いても、閾値に近い係数には大して効果がない。
【００６５】
ある実施例によれば、再構成係数レベルは非０にされ、かつ／又は、０に近いデータの扱いが簡単になるようにスケーリングされる。そのような再構成係数の領域には例えば次のようなものがある。
【００６６】
(a)  整数＋0.5：
...，-1.5，-.5，+.5，+1.5，+2.5,...
(b)  整数＋0.25  or  0.75：
...，-2.5，-1.25，-.75，-.25，+.25，+.75，+1.25,...
(c)  上記(b)の例に誤差を０に近づけるように調整を施したもの：
...，-1.25，-.75，-.15，+.15，+.75，+1.25,...
このように、上記(a)の場合、ＬＳＢは０．５の重みを持ち、再構成係数レベルがＬＳＢを持たず、かつ、共有ＬＳＢがオン（ＬＳＢ＝１）ならば、再構成レベルは２．５である。
【００６７】
０の近傍では保存的再構成法を利用してよい。例えば、正規な再構成レベル
-2，-2，-1，-1，0，0，+1，+1,...
が与えられたとすると、ＬＳＢ共有化に適したレベルは
-2，-2，-1，-1，0，0，+1，+1,...
であろう。
【００６８】
ＪＰＥＧ方式のシステムに応用する場合、同一ブロック内の６４係数の全部を、全体で１つの共有ＬＳＢを持つ単一ブロックとして処理し得る。ＪＰＥＧでは、高周波数係数の多くが０であるか０に近いため、ブロック内の係数の一部に対してＬＳＢ共有化を適用し得る。例えば、６４係数からなる各ブロックを、いくつかのサブブロックもしくはサブグループに分割し、サブブロックもしくはサブグループ毎に共有ＬＳＢを持たせることができる。
【００６９】
また、ここで述べたＬＳＢ共有化法を、ブロック内の初めの３２係数（ジグザグ順序付けで決まる）に適用してもよい。この場合、これら係数のためのＬＳＢを指示するための１ビットがブロックに挿入されるかもしれない。
【００７０】
一実施例によれば、この追加ビットの挿入は、特定のインプリメンテーション用のｑ−マトリクスの修正によって行うことができる。このような場合、ｑ−マトリクス内の数を２分の１にしてもよい。このことは、カスタマイズされたＪＰＥＧ伸長装置に対し、ブロック内の全係数に対し１つの共有ＬＳＢが存在していることを指示するであろう。この場合、一般的なＪＰＥＧ伸長装置は、単純に、そのｑ−マトリクス値が半減された１つの係数に対して共有ＬＳＢを適用するであろう、したがって、そのようなインプリメンテーションを利用して多少忠実度が悪化した画像を生成するであろう。他方、“ＬＳＢの共有化を意識している（witting）”伸長装置は忠実度を向上させるであろう。
【００７１】
このように係数が小さなグループに分割されているＪＰＥＧに適合したファイルにＬＳＢ共有化を埋め込むことができ、そして、そのファイルは共有ＬＳＢがグループ内の係数のただ１つにのみ付加されるように構成される。“ＬＳＢ共有化を意識している（witting）”伸長装置はＳＮＲが向上するであろう。しかし、“ＬＳＢ共有化を意識していない”伸長装置はＳＮＲがやや悪化する。
【００７２】
係数を例えば７ビットで表現した場合、ある一定量の歪みがある。この歪み量は、係数を８ビットで表現した場合より６．０２デシベルだけ大きい。すなわち、ビット数が多いほど歪みが少ない。歪み曲線を１つ作成すれば、スケーリング因子を用いることにより、ビット数が増減した場合の歪みの補正が可能であろう。ここに述べたＬＳＢ共有化を利用すれば、容易にこの歪み曲線以下にできる。すなわち、本発明によれば、様々な量子化の場合に忠実度の改善が可能である。
【００７３】
他の実施例によれば、例えば、ＪＰＥＧファイルに、そのサイズを増加させることなく、追加情報を付加するためにモジュラ剰余側波帯を用いる前記Silversteinとkleinの論文に述べられてる方法などと、ここに述べたＬＳＢ共有化が組み合わされる。この実施例によれば、ＬＳＢ群がブロックに分けられ、そして、ブロック毎の和（modulo
２）がロスレス側波帯の１つのビットになる。サイズがＬのブロックに対し本発明のＬＳＢ共有化を実行することにより、ＬＳＢを共有するＫ個のブロックから１つのモジュラ側波帯ビットを生成できる（すなわち、側波帯ビットレート＝１／Ｋ×Ｌ）。このような場合、最高のＳＮＲゲインはＬ＝５かつＫ＝４の場合に得られ、これはＬＳＢ共有化だけの場合よりかなり高いゲインとなる。
【００７４】
しばしば、データは一様には分布せず、０の近くに強く集中して例えば鐘形の分布曲線を形作る。このようなデータが“０に偏った”（zeroish）データであり、これは通常、０か０に近い値（特に−１又は＋１）に量子化されるだろう。この場合には、図１に示したプロセスは適当ではないかもしれない。
【００７５】
量子化系の作用を変化させるための３つの変数Ｂ，Ｄ，Ｋを導入する。したがって、これら変数は共有ＬＳＢの選定の際に量子化を最適化するために利用される。変数±Ｂは、ＬＳＢ共有化によってバイアスをかけられた全ての０に対する再構成レベルである（このバイアスと、それによる再構成レベルへの影響については、後に詳細に説明する）。変数Ｄは量子化閾値に対するバイアスであり、この量子化閾値は圧縮器によって圧縮対象データ値に対する圧縮値を決定するために用いられる。２Ｄ＋０．５の値は“０−幅”である（したがって、Ｄ＝０．２５は公称単位幅を与える）。変数Ｋは、２つの符号化コストに関する特性であるレートと歪みの比である。圧縮システムのレートと歪みは両方とも、Ｂ，Ｄ，Ｋ及び入力信号統計量の関数である。変数Ｋは、レートと歪みを同時に代替可能にするためのラグランジュ乗数の働きをする。Ｂ，Ｄ，Ｋを同時に最適化することによって、レートと歪みの最良の組み合わせを得ることができる。
【００７６】
圧縮装置によって適用される共有ＬＳＢの２つの設定のための量子化閾値と、共有ＬＳＢ＝０（Ｓ−ＬＳＢ  ｏｆｆ）、共有ＬＳＢ無し（“ＬＳＢ共有化を意識していない（unwitting）”伸長装置）及びＬＳＢ＝１（Ｓ−ＬＳＢ  ｏｎ）の３つのケースのための再構成レベルを図８に示す。一実施例によれば、圧縮装置はＺ格子を用いる“ＬＳＢ共有化を意識していない”伸長装置、例えばベースラインＪＰＥＧに対応している。すなわち、本発明は、ＪＰＥＧのような“ＬＳＢ共有化を意識していない”標準に組み込まれる。（ミラーとサイン（sign；符号）が共に反転されるならば、ＬＳＢ−ｏｆｆのシステムとＬＳＢ−ｏｎのシステムは互いに同一である）  Ｂ＝Ｄ＝０．２５で普通の一様クラスタリングとなる。
【００７７】
図８において、（０に対応する±Ｂ以外の）全ての再構成レベルが非整数のＪ±１／４であるのは、“ＬＳＢ共有化を意識していない（JPEG）伸長装置”をサポートした結果であり、非束縛システムでは任意のＺ格子を利用可能である。
【００７８】
量子化方式は、上記の閾値を充足する計算式で明示的に与えられる。共有ＬＳＢがオンの時にＬ＝１、共有ＬＳＢがオフの時にＬ＝０とする。この場合、Ｘiに対して出力される量子化（整数）値は次式で与えられる。
【００７９】
【数６】
2006314097.tif 000008
なお、量子化がＬＳＢ共有化を利用することを前提にしているため、従来アルゴリズムの閾値及び再構成レベルをそのままここで適用することは、難しいか不可能でさえあろう。
その対応策は、次式の条件の場合に、かつ、次式の条件の場合にのみ、共有ＬＳＢを１にすることである。
【００８０】
【数７】
2006314097.tif 000009
ここで、
【００８１】
【数８】
2006314097.tif 000010
【００８２】
３つのパラメータＫ，Ｂ，Ｄは、一定の基準及びトレーニング・セットを用いれば、特に図９に示す最適なＫ，Ｂ，Ｄの表からスタート値を補間すれば、選択した実施例及び選択したビットレートに合うように調整することができる。図９において、ビットレートは、１つのデータもしくは信号点（例えば白黒画像の場合は画素）あたりのビット数で表されている。
【００８３】
図４は、多くが０のデータのような強く集中したデータの符号化プロセスの流れ図である。図４において、このプロセスは初めに量子化すべき数値データ値の１グループを選ぶ（処理ブロック３０１）。ここで、選択されたデータ値をｘ１，ｘ２，．．．，ｘＮと呼ぶ。次に、これら数値データ値を使って、処理ロジックは前に定義した下記関数の計算を行う（処理ブロック３０２）。
【００８４】
【数９】
2006314097.tif 000011
【００８５】
次に、処理ロジックは上記関数の計算結果が０より大きいか判定する（処理ブロック３０３）。この関数の計算結果が０より大きければ、Ｌと呼ぶところのＬＳＢは１に設定され（処理ブロック３０４）、そして処理ブロック３０６に進む。上記関数の計算結果が０以下ならば、ＬＳＢは０に設定され（処理ブロック３０５）、そして処理ブロック３０６へ進む。
【００８６】
処理ブロック３０６で、変数ｉが１に設定される。次に、処理ロジックはデータ値ｘｉが０より大きいか判定する（処理ブロック３０７）。データ値ｘｉが０より大きければ、処理ロジックは、次のｅｍｉｔ関数を使用して、共有ＬＳＢ以外の、量子化対象のデータ値の全ビットを出力させる（処理ブロック３０８）。
【００８７】
【数１０】
2006314097.tif 000012
データ値ｘｉが０以下ならば、処理ロジックは、次のｅｍｉｔ関数を適用して、共有ＬＳＢ以外の、量子化対象のデータ値の全ビットを出力させる（処理ブロック３０９）。
【００８８】
【数１１】
2006314097.tif 000013
【００８９】
次に処理ロジックは、変数ｉをインクリメントし（処理ブロック３１０）、そして変数ｉがＮより大きいか判定する（処理ブロック３１１）。変数ｉがＮ以下ならば、処理ブロック３０７に戻る。変数ｉがＮより大きければ、処理ブロック３１２に進み、ＬＳＢ値のＬが数値データ値ｘ１，ｘ２，．．．，ｘＮのための共有ＬＳＢとして出力される。
【００９０】
その後、処理ロジックは符号化すべきデータがほかにあるか調べる（処理ブロック３１３）。ほかのデータを符号化する必要があるならば、処理ブロック３０１に戻ってプロセスが繰り返される。他方、データの終わりに達したならば、プロセスは終了する。
【００９１】
ＬＳＢを共有化して０に偏ったデータを量子化する環境においては、圧縮された（例えばウェーブレット）係数の＋１が、共有ＬＳＢがオフに設定されている時（例えば、共有ＬＳＢが論理０すなわちｌｏｗである時）には、−１よりはるかに多く発生し、かつ、共有ＬＳＢがオンに設定されている時（例えば共有ＬＳＢが論理１すなわちｈｉｇｈである時）には、ごくまれにしか発生しない。ＬＳＢがオフ（例えば０）の時に、１，０，＋１に対する再構成レベルは−１．２５，−Ｂ，＋０．７５である（典型的なビットレートで性能を向上させるためにはＢ≒０．１５）。
【００９２】
要するに、量子化トークンの確率関数はトークンを頻度順にソートすると幾何級数にかなり近い。このソート後の順序は、ＬＳＢがオフ（０又は負）の時には
0，+1，-1，+2，-2，+3，-3，+4，4，+5...
であり、ＬＳＢがオン（１又は正）の時には、
0，-1，+1，-2，+2，-3，+3，-4，+4，-5...
である。
【００９３】
模擬ラプラシアンデータの広範囲にわたる確率は、幾何級数に似ていることが知られている。正確な幾何分布であれば、コンパクト符号化が非常に容易になる。一実施例によれば、単項（unary）コードが、そのような幾何分布に対して最適であろう。この単項コードは図１０に示すとおりである。
【００９４】
これらの特徴ゆえに、圧縮装置は、ＬＳＢ共有化を適用したのちに圧縮データに単項コードを適用し得る。確率級数の幾何級数に対する類似の程度はそこそこではあるが、それでも圧縮符号化の少なくとも予備ステップとして単項コードを適用するには十分である。すなわち、単項コードを適用した後に、さらなる圧縮符号化は必要でないかもしれない。
【００９５】
別の符号化装置を使用する場合でも、圧縮コストの推定に幾何級数を使用できる。さらに、共有ＬＳＢがオフの時には正サインのほうが負サインより多く、共有ＬＳＢがオンの時には負サインのほうが正サインより多いことに着目すると、排他的論理和（XOR）関数を用いてサインの反転を行うことにより圧縮性能を上げること、殊に、“０に偏った”データの１ブロックによって１つのＬＳＢが共有される、任意の非束縛方式で圧縮性能を上げることを思いつく。したがって、一実施例によれば、符号化装置は、量子化データのサインと共有ＬＳＢの排他論理和（XOR）を取ってから、ＩＢＭ社のＱ−コーダすなわちＱＭ−コーダやその他の既存の符号化装置のような統計的符号化装置へサイン・ビットを送る。これを、ここではサイン反転と呼ぶ。前に示したＬＳＢがオンの場合のソート済み順序リストとＬＳＢがオフの場合のソート済み順序リストは、ＸＯＲ関数を用いた場合には互いに等価である。したがって、共有ＬＳＢの生成後、それ以上の符号化の前に、サイン・ビットを反転させることにより、共有ＬＳＢと排他的論理和をとったサイン・ビットと等しい修正サイン・ビットとすることができる。他の実施例によれば、サイン・ビットは、それが所定の状態（例えば、正、負など）である確率と排他的論理和をとられる。
【００９６】
さらに、符号化装置において、共有ＬＳＢの設定を選ぶ際に、歪みに対する符号化コストを考慮してもよい。分布が、例として定義した“折返し指数関数”に従う場合、非常に柔軟な量子化則が浮上する。“折返し指数関数コード”は、
0，+1，-1，+2，-2，+3,...
を、折返し順序付けにより
0，1，2，3，4，5,...
に写像する、すなわち、“単項”で表せば
0，10，110，1110，11110，111110,...
に写像するコードと定義される。なお、全てのペアについて、負数が正数より先に出現するように負の数と正の数を入れ替えてもよい。
【００９７】
上に示したコードの確率分布は、順に連続した項の間の比prob(X=0)，prob(X=+l)，prob(X=-l)，prob(X=+2)，prob(X=-2)，prob(X=+3),...が一定である任意の確率分布である。この確率分布は、共有ＬＳＢシステムにおけるトークンの分布をよく近似する。
【００９８】
“折返し指数関数”コードの一例は図１１に示すとおりである。p=Prob(LPS)は（内部の）符号化対象シンボルの確率を表すものとする。
【００９９】
Ｘに対する出力は、単に、ｙ個のＬＰＳ（“１”）の後にＭＰＳ（“０”）を続けたものである。ここで、ｙは次式で与えられる。
【０１００】
【数１２】
2006314097.tif 000014
ここで、Ｌは共有ＬＳＢである。
【０１０１】
この折返し指数関数コードが適用されるのは、調整及び量子化したｘｉを用意しかつ条件付サイン反転を適用した後であって、その結果を汎用エントロピ符号化装置（例えば算術符号化装置）へ送る前である。ＬＰＳの符号化コストが均等であると仮定すれば、符号化コスト間に、前記量子化則を導くところの単純な関係が存在する。
【０１０２】
図５は、サイン反転及び折返し指数関数符号化（又は単項符号化）とともに共有ＬＳＢ処理を利用し、復号化時に各処理の逆処理を利用する符号化装置及び復号化装置の一実施例を示している。すなわち、図５において、２０７はサイン反転のためのブロック、２０８は折返し指数関数符号化又は単項符号化のためのブロック、２０９はエントロピ符号化器（例えば算術符号化器）である。また、２１５はエントロピ復号化器（例えば算術符号化器）、２１６は折返し指数関数復号化又は単項復号化のためのブロック、２１７はサイン反転のためのブロックである。
【０１０３】
なお、前記折返し指数関数符号化は、データが適当な統計量を持つ任意の圧縮用途に利用し得る。すなわち、折返し指数関数符号化は共有ＬＳＢ符号化と無関係に使用し得る。
【０１０４】
以上の説明から理解されるように、本発明には、以下に列挙するような方法及び装置並びコンピュータ読み取り可能記録媒体が包含される。
（１）  量子化対象の数値データを選択し、前記数値データの最下位ビット（ＬＳＢｓ）を、前記数値データ中の各数値データ値により共有される単一のＬＳＢで置き換えることを特徴とするデータ符号化方法。
（２）  前記単一のＬＳＢとして選ばれた値に基づいて数値データ値を調整することを特徴とする前記（１）記載のデータ符号化方法。
（３）  前記数値データｔ＠一様分布であることを特徴とする前記（１）記載のデータ符号化方法。
（４）  前記数値データが０の近くに集中していることを特徴とする前記（１）記載のデータ符号化方法。
（５）  前記数値データの各値が１つの係数からなることを特徴とする前記（１）記載のデータ符号化方法。
（６）  前記数値データが１ブロックの変換データからなることを特徴とする前記（１）記載のデータ符号化方法。
（７）  前記ＬＳＢｓの置き換えにおいて、平均２乗誤差（ＭＳＥ）に基づいて前記単一ＬＳＢを設定することを特徴とする前記（１）記載のデータ符号化方法。
（８）  前記ＬＳＢｓの置き換えにおいて、前記数値データ中の数値データ値のＬＳＢｓの中で、どちらの２進値の出現頻度が最高であるかに応じて前記単一ＬＳＢを設定することを特徴とする前記（１）記載のデータ符号化方法。
（９）  前記ＬＳＢｓの置き換えにおいて、前記数値データを含む画像データの１領域全体のＬＳＢｓの中で、どちらの２進値の出現頻度が最高であるかに応じて前記単一ＬＳＢを設定することを特徴とする前記（１）記載のデータ符号化方法。
（１０）  前記ＬＳＢｓの置き換えにおいて、
【０１０５】
【数１３】
2006314097.tif 000015
が成立する場合に前記単一ＬＳＢを所定の２進値に設定することを特徴とする前記（１）記載のデータ符号化方法。
（１１）  前記所定の２進値が１であることを特徴とする前記（１０）記載のデータ符号化方法。
（１２）  前記単一ＬＳＢを“ＬＳＢ共有化を意識していない”標準に適合したファイルに埋め込むことを特徴とする前記（１）記載のデータ符号化方法。
（１３）  前記“ＬＳＢ共有化を意識していない”標準がＪＰＥＧであることを特徴とする前記（１２）記載のデータ符号化方法。
（１４）  前記単一ＬＳＢの前記ファイルへの埋め込みにおいて、前記単一ＬＳＢを前記各数値データ値の１つに付加することを特徴とする前記（１２）記載のデータ符号化方法。
（１５）  前記各数値データ値が１つの係数からなることを特徴とする前記（１４）記載のデータ符号化方法。
（１６）  前記単一ＬＳＢの前記ファイルへの埋め込みにおいて、ｑ−マトリクスを修正することを特徴とする前記（１２）記載のデータ符号化方法。
（１７）  前記ｑ−マトリクスの修正において、前記ｑ−マトリクス内の数を半分にすることを特徴とする前記（１６）記載のデータ符号化方法。
（１８）  前記数値データの最下位ビット（ＬＳＢｓ）の単一のＬＳＢによる置き換えにおいて、前記（７）式の条件が成立する場合に、前記単一ＬＳＢを所定の２進値に設定することを特徴とする前記（１）記載のデータ符号化方法。
（１９）  圧縮データに単項コードを適用することを特徴とする前記（１）記載のデータ符号化方法。
（２０）  前記各数値データ値のサインを、前記単一ＬＳＢとの排他的論理和をとることによって反転させることを特徴とする前記（１）記載のデータ符号化方法。
（２１）  前記各数値データ値のサインを、それが所定の状態である確率との排他的論理和をとることによって反転させることを特徴とする前記（１）記載のデータ符号化方法。
（２２）  前記所定の状態が負であることを特徴とする前記（２１）記載のデータ符号化方法。
（２３）  0,+1,-1,+2,-2,+3,....を0,1,2,3,4,5,....にそれぞれ写像するコードを用いて各数値データ値を符号化することを特徴とする前記（１）記載のデータ符号化方法。
（２４）  0,+1,-1,+2,-2,+3,....を0,1,2,3,4,5,....にそれぞれ写像するコードを用いて各数値データ値を符号化することを特徴とする前記（２０）記載のデータ符号化方法。
（２５）  量子化対象の数値データを受信する手段と、前記数値データの最下位ビット（ＬＳＢｓ）を、前記数値データ中の各数値データ値によって共有される単一のＬＳＢで置き換える手段とを具備する符号化装置。
（２６）  前記単一のＬＳＢとして選ばれた値に基づいて数値データ値を調整する手段をさらに具備することを特徴とする前記（２５）記載の符号化装置。
（２７）  前記数値データが一様分布であることを特徴とする前記（２５）記載の符号化装置。
（２８）  前記数値データが０の近くに集中していることを特徴とする前記（２５）記載の符号化装置。
（２９）  前記数値データ中の各数値データ値が１つの係数からなることを特徴とする前記（２５）記載の符号化装置。
（３０）  前記数値データが１ブロックの変換データからなることを特徴とする前記（２５）記載の符号化装置。
（３１）  前記置き換えのための手段が平均２乗誤差（ＭＳＥ）に基づいて前記単一ＬＳＢを設定する手段を具備することを特徴とする前記（２５）記載の符号化装置。
（３２）  前記置き換えのための手段が、前記数値データ中の数値データ値のＬＳＢｓの中で、どちらの２進値の出現頻度が最高であるかに応じて前記単一ＬＳＢを設定する手段を具備することを特徴とする前記（２５）記載の符号化装置。
（３３）  前記置き換えのための手段が、前記数値データを含む画像データの１領域全体のＬＳＢｓの中でどちらの２進値の出現頻度が最高であるかに応じて前記単一ＬＳＢを設定する手段を具備することを特徴とする前記（２５）記載の符号化装置。
（３４）  前記置き換えのための手段が、前記（１３）式の条件が成立する場合に前記単一ＬＳＢを所定の２進値に設定する手段を具備することを特徴とする前記（２５）記載の符号化装置。
（３５）  前記所定の２進値が１であることを特徴とする前記（３４）記載の符号化装置。
（３６）  前記単一ＬＳＢを“ＬＳＢ共有化を意識していない”標準に適合したファイルに埋め込む手段をさらに具備することを特徴とする前記（２５）記載の符号化装置。
（３７）  前記unwitting標準がＪＰＥＧであることを特徴とする前記（３６）記載の符号化装置。
（３８）  前記単一ＬＳＢを前記ファイルへ埋め込む手段が、前記単一ＬＳＢを前記各数値データ値の１つに付加する手段を具備することを特徴とする前記（３６）記載の符号化装置。
（３９）  前記各数値データ値が１つの係数からなることを特徴とする前記（３８）記載の符号化装置。
（４０）  前記単一ＬＳＢを前記ファイルへ埋め込む手段がｑ−マトリクスを修正する手段を具備することを特徴とする前記（３６）記載の符号化装置。
（４１）  前記ｑ−マトリクスを修正する手段が前記ｑ−マトリクス内の数を半分にすることを特徴とする前記（４０）記載の符号化装置。
（４２）  前記数値データの最下位ビット（ＬＳＢｓ）を単一のＬＳＢで置き換える手段が、前記（７）式の条件が成立する場合に前記単一ＬＳＢを所定の２進値に設定する手段を具備することを特徴とする前記（２５）記載の符号化装置。
（４３）  圧縮データに単項コードを適用するとこを特徴とする前記（２５）記載の符号化装置。
（４４）  前記各数値データ値のサインを、前記単一ＬＳＢとの排他的論理和をとることによって反転させる手段をさらに具備することを特徴とする前記（２５）記載の符号化装置。
（４５）  各数値データ値のサインを、それが所定の状態である確率との排他的論理和をとることによって反転させる手段をさらに具備することを特徴とする前記（２５）記載の符号化装置。
（４６）  前記所定の状態が負であることを特徴とする前記（４５）記載の符号化装置。
（４７）  0,+1,-1,+2,-2,+3,....を0,1,2,3,4,5,....にそれぞれ写像するコードを用いて各数値データ値を符号化する手段をさらに具備することを特徴とする前記（２５）記載の符号化装置。
（４８）  0,+1,-1,+2,-2,+3,....を0,1,2,3,4,5,....にそれぞれ写像するコードを用いて各数値データ値を符号化する手段をさらに具備することを特徴とする前記（４４）記載の符号化装置。
（４９）  複数の数値データ値を記憶するためのメモリと、前記複数の数値データ値のＬＳＢｓを、それら数値データ値によって共有される単一のＬＳＢで置き換える、前記メモリに接続された最下位ビット（ＬＳＢ）処理ロジックとを具備する符号化装置。
（５０）  前記複数の数値データ値がそれぞれは１つの係数からなることを特徴とする前記（４９）記載の符号化装置。
（５１）  前記複数の数値データ値が１ブロックの変換データからなることを特徴とする前記（４９）記載の符号化装置。
（５２）  前記ＬＳＢ処理ロジックが平均２乗誤差（ＭＳＥ）に基づいて前記単一ＬＳＢを設定することを特徴とする前記（４９）記載の符号化装置。
（５３）  前記ＬＳＢ処理ロジックが、前記複数の数値データ値のＬＳＢｓの中で、どちらの２進値の出現頻度が最高であるかに応じて前記単一ＬＳＢを設定することを特徴とする前記（４９）記載の符号化装置。
（５４）  前記ＬＳＢ処理ロジックが、前記（１３）式の条件が成立する場合に前記単一ＬＳＢを所定の２進値に設定することを特徴とする前記（４９）記載の符号化装置。
（５５）  前記所定の２進値が１であることを特徴とする前記（５４）記載の符号化装置。
（５６）  前記ＬＳＢ処理ロジックが、前記（７）式の条件が成立する場合に前記単一ＬＳＢを所定の２進値に設定することを特徴とする前記（４９）記載の符号化装置。
（５７）  圧縮データに単項コードを適用することを特徴とする前記（４９）記載の符号化装置。
（５８）  前記各数値データ値のサインを前記単一ＬＳＢとの排他的論理和をとることによって反転させる手段をさらに具備することを特徴とする前記（４９）記載の符号化装置。
（５９）  各数値データ値のサインを、それが所定の状態である確率との排他的論理和をとることによって反転させる手段をさらに具備することを特徴とする前記（４９）記載の符号化装置。
（６０）  前記所定の状態が負であることを特徴とする前記（５９）記載の符号化装置。
（６１）  0,+1,-1,+2,-2,+3,....を0,1,2,3,4,5,....にそれぞれ写像するコードを用いて各数値データ値を符号化する手段をさらに具備することを特徴とする前記（４９）記載の符号化装置。
（６２）  0,+1,-1,+2,-2,+3,....を0,1,2,3,4,5,....にそれぞれ写像するコードを用いて各数値データ値を符号化する手段をさらに具備することを特徴とする前記（５８）記載の符号化装置。
（６３）  システムの少なくとも１つの処理装置で実行された時に、前記少なくとも１つの処理装置に、データセットの数値データを選択させ、そして、前記数値データの最下位ビット（ＬＳＢｓ）を、前記数値データ中の数値データ値により共有される単一のＬＳＢで置き換えさせる命令シーケンスが記録されたコンピュータ読み取り可能記録媒体。
（６４）  少なくとも１つの処理装置に実行された時に、前記少なくとも１つの処理装置に、前記単一のＬＳＢとして選ばれた値に基づいて数値データ値を調整させる命令が＜前記命令シーケンスに含まれることを特徴とする前記（６３）記載の記録媒体。
（６５）  少なくとも１つの処理装置に実行された時に、前記少なくとも１つの処理装置に、平均２乗誤差（ＭＳＥ）に基づいて前記単一ＬＳＢを設定させる命令が前記命令シーケンスに含まれることを特徴とする前記（６３）記載の記録媒体。
（６６）  少なくとも１つの処理装置に実行された時に、前記少なくとも１つの処理装置に、前記数値データ中の数値データ値のＬＳＢｓの中で、どちらの２進値の出現頻度が最高であるかに応じて前記単一ＬＳＢを設定させる命令が前記命令シーケンスに含まれることを特徴とする前記（６３）記載の記録媒体。
（６７）  少なくとも１つの処理装置に実行された時に、前記少なくとも１つの処理装置に、前記数値データを含む画像の１領域全体のＬＳＢｓの中で、どちらの２進値の出現頻度が最高であるかに応じて前記単一ＬＳＢを設定させる命令が前記命令シーケンスに含まれることを特徴とする前記（６３）記載の記録媒体。
（６８）  少なくとも１つの処理装置に実行された時に、前記少なくとも１つの処理装置に、前記（１３）式の条件が成立する場合に前記単一ＬＳＢを所定の２進値に設定させる命令が前記命令シーケンスに含まれることを特徴とする前記（６３）記載の記録媒体。
（６９）  少なくとも１つの処理装置に実行された時に、前記少なくとも１つの処理装置に、前記各数値データ値のサインを、前記単一ＬＳＢとの排他的論理和をとることによって反転させる命令が前記命令シーケンスに含まれることを特徴とする前記（６３）記載の記録媒体。
（７０）  少なくとも１つの処理装置に実行された時に、前記少なくとも１つの処理装置に、前記各数値データ値のサインを、それが所定の状態である確率との排他的論理和をとることによって反転させる命令が前記命令シーケンスに含まれることを特徴とする前記（６３）記載の記録媒体。
（７１）  前記所定の状態が負であることを特徴とする前記（７０）記載の記録媒体。
（７２）  少なくとも１つの処理装置に実行された時に、前記少なくとも１つの処理装置に、0,+1,-1,+2,-2,+3,....を0,1,2,3,4,5,....にそれぞれ写像するコードを用いて各数値データ値を符号化させる命令が前記命令シーケンスに含まれることを特徴とする前記（６３）記載の記録媒体。
（７３）  少なくとも１つの処理装置に実行された時に、前記少なくとも１つの処理装置に、0,+1,-1,+2,-2,+3,....を0,1,2,3,4,5,....にそれぞれ写像するコードを用いて各数値データ値を符号化させる命令が前記命令シーケンスに含まれることを特徴とする前記（６９）記載の記録媒体。
（７４）  少なくとも１つの処理装置に実行された時に、前記少なくとも１つの処理装置に、前記単一ＬＳＢを“ＬＳＢ共有化を意識していない”標準に適合したファイルに埋め込ませる命令が前記命令シーケンスに含まれることを特徴とする前記（６３）記載の記録媒体。
（７５）  少なくとも１つの処理装置に実行された時に、前記少なくとも１つの処理装置に、前記（７）式の条件が成立する場合に前記単一ＬＳＢを所定の２進値に設定させる命令が前記命令シーケンスに含まれることを特徴とする前記（６３）記載の記録媒体。
（７６）  少なくとも１つの処理装置に実行された時に、前記少なくとも１つの処理装置に、単項コードを圧縮データに適用させる命令が前記命令シーケンスに含まれることを特徴とする前記（６３）記載の記録媒体。
（７７）  単一のＬＳＢを共有する量子化数値データを受け受信するレシーバと前記単一ＬＳＢを各数値データ値に対し用いることにより前記量子化数値データを復号化する、前記レシーバに接続された復号化器とを具備する復号化装置。
（７８）  前記復号化器が、数値データの最下位ビット（ＬＳＢｓ）を１群の数値データの各数値データ値に共有される単一のＬＳＢで置き換えることによって符号化されているデータを、前記（７）式の条件が成立する場合に前記単一ＬＳＢを所定の２進値に設定することにより復号化することを特徴とする前記（７７）記載の復号化装置。
（７９）  複数の符号化データが単一のＬＳＢを共有しており、前記単一ＬＳＢを用いて、前記複数の符号化データの各符号化データに対する再構成データ値を生成し、前記複数の符号化データの各符号化データに対する前記再構成データ値を送出するデータ復号化方法。
（８０）  前記再構成データ値の生成が下式によって行われる、
【０１０６】
【数１４】
2006314097.tif 000016
ただし、ｘｉは再構成データ値、ｙは再構成対象の符号化データ値の最上位ビット、Ｌは共有される前記単一ＬＳＢである、ことを特徴とする前記（７９）記載のデータ復号化方法。
（８１）  量子化対象の１群の数値データを選択し、前記数値データの最下位ビット（ＬＳＢｓ）を前記１群の数値データの各数値データ値により共有される単一のＬＳＢで置き換えることからなり、前記ＬＳＢｓの置き換えにおいて、前記（７）式の条件が成立する場合に前記単一ＬＳＢを所定の２進値に設定する符号化方法。
（８２）  前記単一ＬＳＢを、前記（７）式の関数の計算結果が０より大きければ第１の所定値に設定し、前記（７）式の関数の計算結果が０以下ならば第２の所定値に設定することを特徴とする前記（８１）記載の符号化方法。
（８３）  データ値が０より大きいか判定し、データ値が０以下ならば、前記（１０）式のｅｍｉｔ関数を使用して、共有ＬＳＢ以外の量子化対象データ値のビットを全て出力し、データ値が０より大きければ、前記（１１）式のｅｍｉｔ関数を使用して共有ＬＳＢ以外の量子化対象データ値のビットを全て出力することを特徴とする前記（８２）記載の符号化方法。
（８４）  各数値データのサインを、単一ＬＳＢと排他的論理和をとることによって反転させることを特徴とする前記（８１）記載の符号化方法。
（８５）  各数値データ値のサインを、それが所定の状態である確率との排他的論理和をとることによって反転させることを特徴とする前記（８１）記載の符号化方法。
（８６）  前記所定の状態が負であることを特徴とする前記（８５）記載の符号化方法。
（８７）  量子化対象の１群の数値データを選択する手段と、前記数値データの最下位ビット（ＬＳＢｓ）を前記１群の数値データの各数値データ値により共有される単一のＬＳＢで置き換える手段とを具備し、前記ＬＳＢｓの置き換えにおいて前記（７）式の条件が成立する場合に前記単一ＬＳＢを所定の２進値に設定する符号化装置。
（８８）  前記単一ＬＳＢを、前記関数の計算結果が０より大きければ第１の所定値に設定し、前記関数を適用した結果が０以下ならば第２の所定値に設定するための手段をさらに具備することを特徴とする前記（８７）記載の符号化装置。
（８９）  データ値が０より大きいか判定する手段と、データ値が０以下のときに前記（１０）式のｅｍｉｔ関数を使用して共有ＬＳＢ以外の量子化対象データ値のビットを全て出力し、データ値が０より大きいときに前記（１１）式のｅｍｉｔ関数を使用して共有ＬＳＢ以外の量子化対象データ値のビットを全て出力する手段とをさらに具備することを特徴とする前記（８７）記載の符号化装置。
（９０）  各数値データのサインを、単一ＬＳＢとの排他的論理和をとることによって反転させる手段をさらに具備することを特徴とする前記（８９）記載の符号化装置。
（９１）  各数値データ値のサインを、それが所定の状態である確率との排他的論理和をとることによって反転させる手段をさらに具備することを特徴とする前記（８７）記載の符号化装置。
（９２）  前記所定の状態が負であることを特徴とする前記（９１）記載の符号化装置。
（９３）  システムの少なくとも１つの処理装置で実行された時に、前記少なくとも１つの処理装置に、量子化対照の１群の数値データを選択させ、そして前記数値データの最下位ビット（ＬＳＢｓ）を前記１群の数値データの各数値データ値により共有される単一のＬＳＢで置き換えさせる命令シーケンスが記録され、前記ＬＳＢｓの置き換えにおいて、前記（７）式の条件が成立する場合に前記単一ＬＳＢを所定の２進値に設定する、コンピュータ読み取り可能記録媒体。
（９４）  少なくとも１つの処理装置で実行された時に、前記少なくとも１つの処理装置に、前記単一ＬＳＢを、前記関数の計算結果が０より大きければ第１の所定値に設定させ、前記関数の計算結果が０以下ならば第２の所定値に設定させる命令が前記命令シーケンスに含まれることを特徴とする前記（９３）記載の記録媒体。
（９５）  少なくとも１つの処理装置で実行された時に、前記少なくとも１つの処理装置に、データ値が０より大きいか判定させ、前記データ値が０以下のときに前記（１０）式のｅｍｉｔ関数を使用して共有ＬＳＢ以外の量子化対象データ値のビットを全て出力させ、データ値が０より大きいときに前記（１１）式のｅｍｉｔ関数を使用して共有ＬＳＢ以外の量子化対象データ値のビットを全て出力させる命令が前記命令シーケンスに含まれることを特徴とする前記（９４）記載の記録媒体。
（９６）  値の系列0,+1,-1,+2,-2,+3,....を0,1,2,3,4,5,....に写像することを特徴とするデータ符号化方法。
（９７）  各数値データ値のサインを、単一ＬＳＢとの排他的論理和をとることにより反転させることを特徴とする前記（９６）記載のデータ符号化方法。
（９８）  各数値データ値のサインを、それが所定の状態である確率との排他的論理和をとることによって反転させることを特徴とする前記（９６）記載のデータ符号化方法。
（９９）  前記所定の状態が負であることを特徴とする前記（９８）記載のデータ符号化方法。
（１００）データを受信する手段と、値の系列0,+1,-1,+2,-2,+3,....を0,1,2,3,4,5,....に写像する手段とを具備する符号化装置。
（１０１）各数値データ値のサインを、単一ＬＳＢとの排他的論理和をとることにより反転させる手段をさらに具備することを特徴とする前記（１００）記載の符号化装置。
（１０２）各数値データ値のサインを、それが所定の状態である確率との排他的論理和をとることによって反転させる手段をさらに具備することを特徴とする前記（１００）記載の符号化装置。
（１０３）前記所定の状態が負であることを特徴とする前記（１０２）記載の符号化装置。
【図面の簡単な説明】
【０１０７】
【図１】ＬＳＢ符号化の処理フローの一例を示す。
【図２】ＬＳＢ符号化の処理フローの他の例を示す。
【図３】本発明による圧縮／伸長システムの一例を示す。
【図４】ＬＳＢ符号化の処理フローの一例を示す。
【図５】本発明による圧縮／伸長システムの他の例を示す。
【図６】ＬＳＢ共有化による歪み、その補正のための調整を説明するためのデータを示す。
【図７】様々なブロック・サイズでの信号雑音比ゲイン及び対応する平均２乗誤差（ＭＳＥ）を示す。
【図８】量子化閾値と再構成レベルを示す。
【図９】ビットレートに対応したパラメータＫ，Ｂ，Ｇの最適な値を示す。
【図１０】単項コードを示す。
【図１１】折返し指数関数コードの例を示す。
【符号の説明】
【０１０８】
２００  符号化装置
２０２  圧縮ブロック
２０４  メモリ
２０５  ＬＳＢ処理ブロック
２１０  復号化装置
２１１  メモリ
２１２  伸長ブロック
２０７，２１７  サイン反転のブロック
２０８  折返し指数関数符号化又は単項符号化のブロック
２０９  エントロピ符号化器
２１５  エントロピ復号化器
２１６  折返し指数関数復号化又は単項復号化のブロック
【図１】
2006314097.tif 000017
【図２】
2006314097.tif 000018
【図３】
2006314097.tif 000019
【図４】
2006314097.tif 000020
【図５】
2006314097.tif 000021
【図６】
2006314097.tif 000022
【図７】
2006314097.tif 000023
【図８】
2006314097.tif 000024
【図９】
2006314097.tif 000025
【図１０】
2006314097.tif 000026
【図１１】
2006314097.tif 000027
【手続補正書】
【提出日】平成18年5月24日(2006.5.24)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
量子化対象の数値データを受信する手段と、
前記数値データ中の各数値データ値に基づいて、単一の最下位ビットを算出する手段と、
前記数値データ中の各数値データ値の最下位ビットを、前記算出された単一の最下位ビットに置き換える手段と、
を具備することを特徴とする符号化装置。
【請求項２】
前記量子化対象の数値データは、所定のデータを複数に分割したブロックの１つに含まれるデータであることを特徴とする請求項１に記載の符号化装置。
【請求項３】
前記最下位ビットが置き換えられた数値データを符号化して符号化データを生成する手段をさらに具備し、前記生成された符号化データは、前記符号化データにおける前記単一の最下位ビットを指示するための識別子を含むことを特徴とする請求項１又は２に記載の符号化装置。
【請求項４】
前記識別子は、前記符号化データのヘッダに格納されていることを特徴とする請求項３に記載の符号化装置。
【請求項５】
前記識別子は、各ブロックの数値データに基づいて算出された単一の最下位ビットを、複数指定することを特徴とする請求項４に記載の符号化装置。
【請求項６】
前記単一の最下位ビットを、”最下位ビット共有化を意識していない”標準に適合したファイルに埋め込む手段をさらに具備し、
前記単一の最下位ビットを前記ファイルへ埋め込む手段が、前記単一の最下位ビットを前記各数値データ値の１つに付加する手段を具備することを特徴とする請求項１記載の符号化装置。
【請求項７】
前記各数値データ値が１つの係数からなることを特徴とする請求項６記載の符号化装置。
【請求項８】
量子化対象の数値データを受信するステップと、
前記数値データ中の各数値データ値に基づいて、単一の最下位ビットを算出するステップと、
前記数値データ中の各数値データ値の最下位ビットを、前記算出された単一の最下位ビットに置き換えるステップと、
を具備することを特徴とする符号化方法。
【請求項９】
前記量子化対象の数値データは、所定のデータを複数に分割したブロックの１つに含まれるデータであることを特徴とする請求項８に記載の符号化方法。
【請求項１０】
前記最下位ビットが置き換えられた数値データを符号化して符号化データを生成するステップをさらに具備し、前記生成された符号化データは、前記符号化データにおける前記単一の最下位ビットを指示するための識別子を含むことを特徴とする請求項８又は９に記載の符号化方法。
【請求項１１】
前記識別子は、前記符号化データのヘッダに格納されていることを特徴とする請求項１０に記載の符号化方法。
【請求項１２】
前記識別子は、各ブロックの数値データに基づいて算出された単一の最下位ビットを、複数指定することを特徴とする請求項１１に記載の符号化方法。
【請求項１３】
前記単一の最下位ビットを、”最下位ビット共有化を意識していない”標準に適合したファイルに埋め込むステップをさらに具備し、
前記単一の最下位ビットを前記ファイルへ埋め込むステップが、前記単一の最下位ビットを前記各数値データ値の１つに付加するステップを具備することを特徴とする請求項８記載の符号化方法。
【請求項１４】
前記各数値データ値が１つの係数からなることを特徴とする請求項１３記載の符号化方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データの圧縮及び伸長の分野に関する。
【背景技術】
【０００２】
データ圧縮は、大量のデータの記憶及び伝送のために極めて有用な手段である。例えば、文書のファクシミリ送信のような画像伝送に要する時間は、圧縮を利用して、その画像の再生に必要なビット数を減らすと、著しく短縮される。
【０００３】
従来より、多くの様々なデータ圧縮手法が存在している。圧縮手法は、おおまかに分類すると２つのカテゴリー、つまり、ロッシー(lossy)符号化とロスレス（lossless）符号化とに分けることができる。ロッシー符号化とは、情報の損失が生じ、したがって元のデータの完全な再現が保証されない符号化のことである。ロッシー圧縮の目標とするところは、元のデータから変わったとしても、その変化が不快であったり目だったりしないようにすることである。ロスレス圧縮では、情報はすべて保存され、データは完全に復元可能な方法で圧縮される。
【０００４】
ロッシー圧縮の場合、信号もしくは輝度データ又はその変換データのような数値データは、量子化されてから出力符号語に変換される。量子化は、データの重要な特徴は保存しつつ重要でない特徴を除去するためのものである。ロッシー圧縮システムは、量子化に先立って、エネルギー集中のための変換を利用することが多い。ＪＰＥＧは画像データ用ロッシー符号化法の一例である。
【０００５】
圧縮画像ファイルのような、変換・符号化された圧縮データセットのデータは変換係数である。この圧縮データは、そのような係数を丸めた整数値を表している。丸め後の係数はその大部分が０である。しかし、統計的符号化であるので、圧縮ファイルの大部分のビットは非０係数を詳細に表すために費やされる。
【０００６】
係数又は他の符号語の最下位ビットが意味を持つのは、圧縮装置のＳＮＲが最下位ビットの次位ビットの重要性の水準より６．０２デシベル高い場合のみである。多くの場合、最下位ビットは圧縮信号の品質にはこれといって殆ど影響を及ぼさない。圧縮データセットにおいて、最下位ビットが何等の意味をも持たない場合には、その最下位ビットを削除するのが望ましいであろう。しかしながら、ＪＰＥＧ及び多くの類似方法にあっては、そのようなビットは圧縮ファイル中に必ずなければならないものである。
【０００７】
最下位ビットが含まれることによって必然的に無駄になる圧縮ファイルのスペースを若干埋め合わせるための別の方法が、例えば非特許文献１に示されている。この方法では、最下位ビット・チャネルの通常ビットが埋め込まれた独立したロスレス・チャネルを得るため、ある閾値に近い係数が特殊処理される。
【０００８】
【非特許文献１】Silverstein  and  Klein，“Restoration  of  Compressed  Image,”Proceedings  of  SPIE  on  Image  and  Video  Compression，pp．56-64，vol.2186，Feb．1994，San  Jose，California
【発明の開示】
【発明が解決しようとする課題】
【０００９】
本発明の一般的な目的は、新規なロッシー符号化方法及び装置を提供することにあり、より具体的な目的は、圧縮データセット（例えば圧縮ファイル）中の最下位ビット数を削減してさらに圧縮することができる符号化装置及び符号化方法、特に、圧縮と同時にレート・歪み性能を向上させることが可能な符号化装置及び符号化方法を提供することにある。
【課題を解決するための手段】
【００１０】
前記目的を達成するための本発明による符号装置は、量子化対象の数値データを受信する手段と、前記数値データ中の各数値データ値に基づいて、単一の最下位ビットを算出する手段と、前記数値データ中の各数値データ値の最下位ビットを、前記算出された単一の最下位ビットに置き換える手段とを具備することを特徴とする。
【００１１】
また、本発明による符号化装置は、前記量子化対象の数値データは、所定のデータを複数に分割したブロックの１つに含まれるデータであることを特徴とする。
【００１２】
また、本発明による符号化装置は、前記最下位ビットが置き換えられた数値データを符号化して符号化データを生成する手段をさらに具備し、前記生成された符号化データは、前記符号化データにおける前記単一の最下位ビットを指示するための識別子を含むことを特徴とする。
【００１３】
また、本発明による符号化装置は、前記識別子は、前記符号化データのヘッダに格納されていることを特徴とする。
【００１４】
また、本発明による符号化装置は、前記識別子は、各ブロックの数値データに基づいて算出された単一の最下位ビットを、複数指定することを特徴とする。
【００１５】
また、本発明による符号化装置は、前記単一の最下位ビットを、”最下位ビット共有化を意識していない”標準に適合したファイルに埋め込む手段をさらに具備し、前記単一の最下位ビットを前記ファイルへ埋め込む手段が、前記単一の最下位ビットを前記各数値データ値の１つに付加する手段を具備することを特徴とする。
【００１６】
また、本発明による符号化装置は、前記各数値データ値が１つの係数からなることを特徴とする。
【００１７】
前記目的を達成するための本発明による符号方法の特徴は、上記に列記した本発明による符号装置の特徴とする同様である。
【発明の効果】
【００１８】
本発明によれば、複数の数値データ値間で最下位ビットを共有させることにより、例えば圧縮ファイル中の最下位ビット数を削減して、さらなる圧縮が可能であり、また、圧縮と同時にレート・歪み性能を向上させることが可能である等々の効果を得られる。
【発明を実施するための最良の形態】
【００１９】
以下、添付図面を参照し、本発明の実施の形態を説明する。説明の簡略化のため、添付図面中の複数の図面において、同一部分又は対応部分には同一又は同様の参照番号を用いる。
【００２０】
以下の記述中に、ビット数、ブロック・サイズ等々、様々な具体例が示される。しかし、当業者には、そのような具体例によらずに本発明を実施し得ることは明白であろう。他方、本発明をいたずらに難解にしないため、周知の構造やデバイスはブロック図で示される。
【００２１】
以下の詳細説明で、コンピュータ・メモリ内のデータビットに対する操作に関するアルゴリズム及び記号表現によって表された部分がある。このようなアルゴリズム記述及び表現は、データ処理技術分野の当業者が、その研究内容を他の当業者に対し最も効率的に伝えるために用いる手段である。あるアルゴリズムがあり、それが概して所望の結果に至る筋の通ったステップの系列だと理解されるとする。これらステップは、物理量を物理的に操作する必要があるものである。必ずという訳ではないが、通常、これらの物理量は記憶、転送、結合、比較、その他操作が可能な電気的または磁気的信号の形をとる。これらの信号をビット、数値、要素、記号、文字、用語、番号等で呼ぶのが、主に慣用上の理由から便利な場合があることが分かっている。
【００２２】
しかしながら、このような用語や同様の用語は、適切な物理量と対応付けられるべきであり、また、これら物理量につけた便宜上のラベルに過ぎないということに留意すべきである。以下の説明から明らかなように、特に断わらない限り、「処理」「演算」「計算」「判定」「表示」等の用語を用いて論じることは、コンピュータシステムのレジスタやメモリの内部の物理的（電子的）な量として表現されたデータを処理して、コンピュータシステムのメモリやレジスタ、その他同様の情報記憶装置、情報伝送装置又は表示装置の内部の同様に物理量として表現された他のデータへ変換する、コンピュータシステムや同様の電子演算装置の作用及びプロセスを指すものである。
【００２３】
また、本発明は、ここに述べる操作を実行するための装置にも関係するものである。この装置は、所望の目的のために専用に作られてもよいし、汎用コンピュータを内蔵のコンピュータ・プログラムにより選択駆動もしくは再構成してなるものでもよい。そのようなコンピュータ・プログラムは、コンピュータが読み取り可能な記憶媒体、限定するわけではないが例えば、フロッピーディスク、光ディスク、ＣＤ−ＲＯＭ、光磁気ディスクなどの任意の種類のディスク、リードオンリーメモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、ＥＰＲＯＭ、ＥＥＰＲＯＭ、磁気カード又は光カード、すなわち電子的命令の格納に適しコンピュータのシステムバスに接続される任意種類の媒体に格納してよい。ここに提示するアルゴリズムは、本質的に、いかなる特定のコンピュータ、その他の装置とも関わりがない。様々な汎用マシンを、ここに述べる内容に従ったプログラムと一緒に使用し得るが、所要の方法のためのステップの実行用により特化した装置を作るほうが好都合であるかもしれない。これら多様なマシンに要求される構造は以下の説明から明らかになろう。さらに、どのような特定のプログラミング言語とも関連付けることなく本発明を説明する。ここに述べる本発明の内容を実現するために、様々なプログラミング言語を利用し得ることが理解されよう。
【００２４】
本発明によって提供されるロッシー・データ符号化においては、１ブロックの量子化可能数値データの（又は、それ以外のひとまとまりの量子化可能数値データの）最下位ビット(LSBs)が、同ブロックの数値データ間で共有される単一のＬＳＢで置き換えられる。よって、量子化可能数値データは最下位ビットを持つ２進形式のデータである。この置換によって、数値データは量子化された数値データとなる。
【００２５】
図１は、本発明の一実施例の流れ図である。本発明は、処理ロジックによって遂行される。この処理ロジックは、ハードウェア（例えば布線ロジック）でも、ソフトウェアでも、それらの組み合わせ（例えばファームウェアなど）でもよい。例えば、本発明を、コンピュータシステムを利用して実行してもよい。
【００２６】
図１を参照する。まず、処理ロジックは１グループの量子化可能な数値データ値を選び出す（処理ブロック１０１）。これらのデータは、そうでなければならないということではないが、例えば離散コサイン変換（DCT）やウェーブレット変換のような変換を施すことによって生成された係数であろう。その１グループをどのように選ぶかは、データの形式によって決めてよい。例えば、１ブロックが６４画素からなり各ブロックが６４係数からなるＪＰＥＧシステムにおいては、選択される１グループは、１ブロック全体の係数又はその一部の係数でよい。しかし、数値データ値の１グループはブロックを基準にしたものでなくともよく、要するに、特定可能などのような領域、集合又はグループを用いてもよい。
【００２７】
１グループの数値データ値を選び出した後、処理ロジックは、それら数値データ値のそれぞれの最下位ビット（LSB）を単一の共有ＬＳＢによって置き換える（処理ブロック１０２）。したがって、１グループのＮ個のデータの全てについて、Ｎ個のＬＳＢが１個のＬＳＢで置き換えられる。すなわち、本発明はＮ個のＬＳＢの符号化のために１ビットだけ使用する。
【００２８】
一実施例によれば、共有ＬＳＢの値は、量子化可能数値データのＬＳＢの値に基づいて設定される。例えば、共有ＬＳＢの値は、それら数値データ中の数値データ値のＬＳＢにおいて発生頻度が最っとも高い２進値としてよい。
【００２９】
それらＬＳＢが全て同じ値ならば、それらＬＳＢの全部を符号化しないことによってもたらされる削減量は大きく、しかも画像の品質には影響を与えない。それらＬＳＢの過半数がdon't  care値（すなわち閾値に近い値）である場合には、例えば、グループ中の１つの量子化可能数値データ値を、グループ全体のＬＳＢを与えるために選んでよい。例えば、グループ中に９個の数値データ値があるときに、常に９番目の数値データ値のＬＳＢを用いて共有ＬＳＢの値を設定してもよい。
【００３０】
これに代わる実施例によれば、平均２乗誤差（MSE）を最適化することを基準に共有ＬＳＢが選定されるであろう。このような最適化の一実施例によれば、本発明は、共有ＬＳＢの設定に多数決投票を利用し、次の条件が成立したときにのみ共有ＬＳＢを１に設定する。
【００３１】
【数１】
2006314097.tif 000028
上式中の上に開いた括弧|_・_|は下向きに丸めること、すなわち切り捨てを意味し、床関数と呼ばれることがある。
【００３２】
後で詳述するように、ＬＳＢ値を設定した後に、数値データ中の数値データ値に補正を施してもよい。この補正の目的は、複数のＬＳＢを単一のＬＳＢで置き換えることによる歪みを減らすためである。
【００３３】
図２は、一様データの符号化プロセスの一実施例の流れ図である。このプロセスは処理ロジックによって実行されるが、この処理ロジックはハードウェアでも、ソフトウェアでも、それらの組み合わせでもよい。たいていが０であるデータような、強く集中したデータに対する適応性を向上させるため、図２のプロセスを修正してもよい。そのような変更については後に詳しく説明する。
【００３４】
図２を参照する。この一様データ符号化プロセスは、まず、量子化すべき数値データ値の１グループを選択する（処理ブロック１１０）。これらのデータ値を、ここではx1，X2，...XNと呼ぶ。この数値データ値のグループは１つのブロック（又は、任意の他の特定可能なひとまとまり）を構成することになろう。次に、これらの数値データ値を利用し、処理ロジックは次の関数を計算する（処理ブロック１１１）。
【００３５】
【数２】
2006314097.tif 000029
ここで、ｘｉはデータ値を指す。なお、他の関数を用いてもよい。
【００３６】
次に、処理ロジックは、その関数の計算結果が０以上であるか（又は０未満であるか）判定する（処理ブロック１１２）。関数の計算結果が０未満であるときには、処理ブロック１１３に移行してＬＳＢ（Ｌと呼ぶ）を１に設定し、処理ブロック１１５から処理を続ける。関数の計算結果が０以上であるときには、処理ブロック１１４に移行しいＬＳＢ値Ｌを０に設定し、処理ブロック１１５から処理を続ける。
【００３７】
処理ブロック１１５において、変数ｉが１に設定される。次に、処理ロジックは、次のようなｅｍｉｔ関数を使用して、共有ＬＳＢ以外の、量子化対象データ値の全ビットを出力する（処理ブロック１１６）。
【００３８】
【数３】
2006314097.tif 000030
そして変数ｉは１だけインクリメントされる。
【００３９】
なお、共有ＬＳＢによって生じた歪みを減らすようにデータ値は修正されることに注意されたい。
【００４０】
次に、処理ロジックは、変数ｉがＮ以下であるか判定する（処理ブロック１１７）。Ｎ以下ならば、処理ブロック１１６に戻る。Ｎ以下でなければ、処理ブロック１１８に進み、ＬＳＢ値のＬが数値データ値x1，X2，...XNの共有ＬＳＢとして出力される。次に、符号化すべきデータがまだあるか判定される（処理ブロック１１９）。ほかのデータを符号化する必要があるならば、処理ブロック１１０に戻り、プロセスが繰り返される。ほかのデータを符号化する必要がなければ、プロセスは終了する。
【００４１】
一実施例によれば、処理ブロック１１６において、共有ＬＳＢを用いることによって生じる歪みを減らすための調整が行われる。この調整は、共有ＬＳＢの選定を考慮して、それぞれの数値データに対して行われる。個々のグループのデータ値全部には調整が必要でないかもしれない。すなわち、調整が必要なのは、共有ＬＳＢを用いることにより生じる歪みが調整で減少するデータ値だけである。この調整について、図６に示す例によって説明する。
【００４２】
図７において、最初の行（ａ）は、ＬＳＢの共有化を行わない普通の量子化を表す。ここでは、ＬＳＢ共有化が適用されて共有ＬＳＢが０になると仮定する。２番目の行（ｂ）は、共有ＬＳＢを適用したが調整ステップを用いない場合の結果を表す。歪みは、０．３から１．３へ（｜15-15.3｜から｜14-15.3｜へ）増加している。３番目の行（ｃ）は、共有ＬＳＢを適用し、かつ、調整ステップで最上位ビット（MSB）を修正した場合の結果を表している。この場合、歪みは０．７（|16-15.3|）に過ぎない。ゆえに、このプロセスでデータ値を基にして調整を行うのである。この調整は、処理ブロック１１６で行われ、また、処理ブロック１１１の計算式に影響を及ぼす。
【００４３】
図１に従って符号化されたデータの復号化手順のポイントは、再構成データｘｉの計算である。一実施例によれば再構成データは次式によって計算される。
【００４４】
【数４】
2006314097.tif 000031
ここで、Ｙｉは処理ブロック１１６で出力されたＭＳＢデータであり、Ｌは共有ＬＳＢである。
【００４５】
本発明によってもたらされる信号雑音比（SNR）の向上を、一様分布データについて解析的に計算できる。様々なブロック・サイズでの信号雑音比ゲイン及び対応する平均２乗誤差（ＭＳＥ）を図７に示す。
【００４６】
図７において、ＳＮＲゲインはＭＳＥから次式によって計算される。
【００４７】
【数５】
2006314097.tif 000032
【００４８】
Ｌ＝１の場合、“共有化”はない。Ｌ＝２の場合、共有化を行ってもよいが、ＳＮＲゲインは０である。図７に示すように、Ｌ＝９の場合にＳＮＲゲインが最高であり、各ＬＳＢの符号化に平均して０．１１１ビットが用いられる。しかしながら、余分な０．１９０１ビットを常に使用した場合と同じ程度だけ期待精度（ＳＮＲ）は改善される（不適切さもしくは粗れの要因の減少による）。このように、本発明は、各ＬＳＢを保存するのにほぼ０ビットを使って、各ＬＳＢを非常に不正確に保存する。さらに、ビットレート又はＳＮＲの制御のためにブロック・サイズの選択を利用し得る。
【００４９】
また、本発明は、前述のSilversteinの方法より有利であり、特に大きなブロックサイズを扱う場合に有利である。Silversteinの方法では小さなブロックサイズを用いる必要があるのに対し、本発明は大きなブロックを用いる場合でも性能の向上をもたらす。
【００５０】
図３は、本発明の圧縮／伸長システムの一例のブロック図を示している。図３において、入力データ２０１が圧縮ブロック２０２に受信され、圧縮ブロック２０２は量子化可能な数値データ２０３を生成する。圧縮ブロック２０２は、ＤＣＴ、ウェーブレット変換、その他の変換のための変換器でよい。このような場合、圧縮ブロック２０２の出力は係数からなる。圧縮ブロック２０２は１つの圧縮手法を遂行しても複数の圧縮手法を遂行してもよい。圧縮ブロック２０２は、例えばジグザグ順序付けや埋め込み順序付けのような順序付けも行ってもよい。この場合、圧縮ブロック２０２の出力は順序付けられた係数のような順序データからなる。
【００５１】
量子化可能数値データ２０３の値はメモリ２０４に格納される。メモリ２０４は、バッファ、ＦＩＦＯ、ランダムアクセスメモリ（例えば、ダイナミックメモリ（DRAM）、スタティックラム（SRAM）、ラムバスＤＲＡＭ（RDRAM）、シンクロナスＤＲＡＭ（SDRAM）など）、又は、処理のためにアクセス可能な任意の記憶域から構成してよい。ＬＳＢ処理ブロック２０５は、メモリ２０４をアクセスして同メモリ２０４に格納されている量子化可能数値データを取り込み、そのデータ値のための共有ＬＳＢを生成する。それら量子化可能数値データは、少なくとも１グループ単位（例えば１ブロック又は複数ブロック）である。ＬＳＢ処理ブロック２０５は１つの共有ＬＳＢの生成を終わると、そのさらに符号化されたデータをメモリ２０４に書き戻す。
【００５２】
その後、メモリ２０４に格納されている符号化データは符号化データ出力２０６として通信路及び／又は記憶装置へ出力される。一実施例によれば、符号化データ出力２０６は、データのある部分のための共有ＬＳＢの値の指示情報を含むヘッダ又はタグを含んでいる。例えば、そのデータの部分は、１グループ又は１ブロック分の数値データであろう。この場合、ヘッダはグループ内又はブロック内の数値データのためのＬＳＢを指定する。別の実施例によれば、１つのヘッダ（又はタグ）によって複数のグループもしくはブロックの数値データのための複数のＬＳＢを指定するであろう。他の実施例によれば、独立した通信路又は側波帯信号パスが、共有ＬＳＢ(s)（及び／又はメッセージ）の復号化装置への送信に使用されるであろう。当該技術分野の当業者には、それ以外の多くの転送方法も明らかであろう。
【００５３】
なお、他の実施例によれば、共有ＬＳＢを生成後のデータ値に対し、さらに符号化法が適用される。例えば、データ値（ＬＳＢを除く）と、それらの共有ＬＳＢに対しハフマン符号化を適用してもよい。伸長時には、対応した復号化法が適用されることになろう。どのような符号化法を用いてもよい。同様に、圧縮時においてＬＳＢ処理の前に１種類以上の符号化法を適用してもよいが、復号化時に、ＬＳＢ処理の後に対応した復号化法が適用されることになろう。
【００５４】
復号化装置２１０は、符号化データ出力２０６の復号化のために利用し得る。復号化装置２１０はメモリ２１１を有する。このメモリ２１１は、バッファ、ＦＩＦＯ、ＲＡＭ、又は任意の記憶域から構成してもよく、符号化データ出力２０６を格納する。伸長ブロック２１２は、メモリ２１１に格納されている符号化データを伸長して復号化データ２１４を生成する。復号化装置２１０は、符号化装置で使用された各符号化法に対し必要とされる伸長方法のための、対応した復号化ハードウェア及び／又はソフトウェアを具備するであろう。
【００５５】
復号化時には、伸長ブロック２１２は、データを適切に再構成するために、ビットストリームのどこに共有ＬＳＢがあるか判断する。データストリームは、データ値グループの共有ＬＳＢを指示するための識別子（例えばコード）を含むであろう。特にグループの大きさが変動する場合には、共有ＬＳＢを“共有”するデータ値の数に関する確認情報も指示させるであろう。
【００５６】
なお、符号化装置２００及び復号化装置２１０を、１つの集積回路チップ上に形成した単一のデバイスとしてもよい。他の実施例によれば、符号化装置２００及び復号化装置２１０は、１つ以上の集積回路チップ又はデバイスである。もう一つの実施例によれば、符号化装置２００及び／又は復号化装置２１０は、コンピュータシステムで実行されるソフトウェアからなる。
【００５７】
一実施例によれば、０係数が非０係数と区別され、ＬＳＢ共有化は非０係数にのみ適用される。このようにするのは、０に非常に近い値に関しては、複数の係数又は他の数値データで共有されるＬＳＢの選び方によって、そのデータを０から離れるように変化させることがあるからである。
【００５８】
一実施例によれば、殆どが０である非常に高い周波数のサブバンドは、ＬＳＢ共有化法を用いずに符号化される。それ以外のサブバンドについては、０係数にＬＳＢ共有化が施されるであろう。
【００５９】
一実施例によれば、共有ＬＳＢは、ブロック内の係数中で閾値から最も離れた１つの係数には効いても、閾値に近い係数には大して効果がない。
【００６０】
ある実施例によれば、再構成係数レベルは非０にされ、かつ／又は、０に近いデータの扱いが簡単になるようにスケーリングされる。そのような再構成係数の領域には例えば次のようなものがある。
【００６１】
(a)  整数＋0.5：
...，-1.5，-.5，+.5，+1.5，+2.5,...
(b)  整数＋0.25  or  0.75：
...，-2.5，-1.25，-.75，-.25，+.25，+.75，+1.25,...
(c)  上記(b)の例に誤差を０に近づけるように調整を施したもの：
...，-1.25，-.75，-.15，+.15，+.75，+1.25,...
このように、上記(a)の場合、ＬＳＢは０．５の重みを持ち、再構成係数レベルがＬＳＢを持たず、かつ、共有ＬＳＢがオン（ＬＳＢ＝１）ならば、再構成レベルは２．５である。
【００６２】
０の近傍では保存的再構成法を利用してよい。例えば、正規な再構成レベル
-2，-2，-1，-1，0，0，+1，+1,...
が与えられたとすると、ＬＳＢ共有化に適したレベルは
-2，-2，-1，-1，0，0，+1，+1,...
であろう。
【００６３】
ＪＰＥＧ方式のシステムに応用する場合、同一ブロック内の６４係数の全部を、全体で１つの共有ＬＳＢを持つ単一ブロックとして処理し得る。ＪＰＥＧでは、高周波数係数の多くが０であるか０に近いため、ブロック内の係数の一部に対してＬＳＢ共有化を適用し得る。例えば、６４係数からなる各ブロックを、いくつかのサブブロックもしくはサブグループに分割し、サブブロックもしくはサブグループ毎に共有ＬＳＢを持たせることができる。
【００６４】
また、ここで述べたＬＳＢ共有化法を、ブロック内の初めの３２係数（ジグザグ順序付けで決まる）に適用してもよい。この場合、これら係数のためのＬＳＢを指示するための１ビットがブロックに挿入されるかもしれない。
【００６５】
一実施例によれば、この追加ビットの挿入は、特定のインプリメンテーション用のｑ−マトリクスの修正によって行うことができる。このような場合、ｑ−マトリクス内の数を２分の１にしてもよい。このことは、カスタマイズされたＪＰＥＧ伸長装置に対し、ブロック内の全係数に対し１つの共有ＬＳＢが存在していることを指示するであろう。この場合、一般的なＪＰＥＧ伸長装置は、単純に、そのｑ−マトリクス値が半減された１つの係数に対して共有ＬＳＢを適用するであろう、したがって、そのようなインプリメンテーションを利用して多少忠実度が悪化した画像を生成するであろう。他方、“ＬＳＢの共有化を意識している（witting）”伸長装置は忠実度を向上させるであろう。
【００６６】
このように係数が小さなグループに分割されているＪＰＥＧに適合したファイルにＬＳＢ共有化を埋め込むことができ、そして、そのファイルは共有ＬＳＢがグループ内の係数のただ１つにのみ付加されるように構成される。“ＬＳＢ共有化を意識している（witting）”伸長装置はＳＮＲが向上するであろう。しかし、“ＬＳＢ共有化を意識していない”伸長装置はＳＮＲがやや悪化する。
【００６７】
係数を例えば７ビットで表現した場合、ある一定量の歪みがある。この歪み量は、係数を８ビットで表現した場合より６．０２デシベルだけ大きい。すなわち、ビット数が多いほど歪みが少ない。歪み曲線を１つ作成すれば、スケーリング因子を用いることにより、ビット数が増減した場合の歪みの補正が可能であろう。ここに述べたＬＳＢ共有化を利用すれば、容易にこの歪み曲線以下にできる。すなわち、本発明によれば、様々な量子化の場合に忠実度の改善が可能である。
【００６８】
他の実施例によれば、例えば、ＪＰＥＧファイルに、そのサイズを増加させることなく、追加情報を付加するためにモジュラ剰余側波帯を用いる前記Silversteinとkleinの論文に述べられてる方法などと、ここに述べたＬＳＢ共有化が組み合わされる。この実施例によれば、ＬＳＢ群がブロックに分けられ、そして、ブロック毎の和（modulo
２）がロスレス側波帯の１つのビットになる。サイズがＬのブロックに対し本発明のＬＳＢ共有化を実行することにより、ＬＳＢを共有するＫ個のブロックから１つのモジュラ側波帯ビットを生成できる（すなわち、側波帯ビットレート＝１／Ｋ×Ｌ）。このような場合、最高のＳＮＲゲインはＬ＝５かつＫ＝４の場合に得られ、これはＬＳＢ共有化だけの場合よりかなり高いゲインとなる。
【００６９】
しばしば、データは一様には分布せず、０の近くに強く集中して例えば鐘形の分布曲線を形作る。このようなデータが“０に偏った”（zeroish）データであり、これは通常、０か０に近い値（特に−１又は＋１）に量子化されるだろう。この場合には、図１に示したプロセスは適当ではないかもしれない。
【００７０】
量子化系の作用を変化させるための３つの変数Ｂ，Ｄ，Ｋを導入する。したがって、これら変数は共有ＬＳＢの選定の際に量子化を最適化するために利用される。変数±Ｂは、ＬＳＢ共有化によってバイアスをかけられた全ての０に対する再構成レベルである（このバイアスと、それによる再構成レベルへの影響については、後に詳細に説明する）。変数Ｄは量子化閾値に対するバイアスであり、この量子化閾値は圧縮器によって圧縮対象データ値に対する圧縮値を決定するために用いられる。２Ｄ＋０．５の値は“０−幅”である（したがって、Ｄ＝０．２５は公称単位幅を与える）。変数Ｋは、２つの符号化コストに関する特性であるレートと歪みの比である。圧縮システムのレートと歪みは両方とも、Ｂ，Ｄ，Ｋ及び入力信号統計量の関数である。変数Ｋは、レートと歪みを同時に代替可能にするためのラグランジュ乗数の働きをする。Ｂ，Ｄ，Ｋを同時に最適化することによって、レートと歪みの最良の組み合わせを得ることができる。
【００７１】
圧縮装置によって適用される共有ＬＳＢの２つの設定のための量子化閾値と、共有ＬＳＢ＝０（Ｓ−ＬＳＢ  ｏｆｆ）、共有ＬＳＢ無し（“ＬＳＢ共有化を意識していない（unwitting）”伸長装置）及びＬＳＢ＝１（Ｓ−ＬＳＢ  ｏｎ）の３つのケースのための再構成レベルを図８に示す。一実施例によれば、圧縮装置はＺ格子を用いる“ＬＳＢ共有化を意識していない”伸長装置、例えばベースラインＪＰＥＧに対応している。すなわち、本発明は、ＪＰＥＧのような“ＬＳＢ共有化を意識していない”標準に組み込まれる。（ミラーとサイン（sign；符号）が共に反転されるならば、ＬＳＢ−ｏｆｆのシステムとＬＳＢ−ｏｎのシステムは互いに同一である）  Ｂ＝Ｄ＝０．２５で普通の一様クラスタリングとなる。
【００７２】
図８において、（０に対応する±Ｂ以外の）全ての再構成レベルが非整数のＪ±１／４であるのは、“ＬＳＢ共有化を意識していない（JPEG）伸長装置”をサポートした結果であり、非束縛システムでは任意のＺ格子を利用可能である。
【００７３】
量子化方式は、上記の閾値を充足する計算式で明示的に与えられる。共有ＬＳＢがオンの時にＬ＝１、共有ＬＳＢがオフの時にＬ＝０とする。この場合、Ｘiに対して出力される量子化（整数）値は次式で与えられる。
【００７４】
【数６】
2006314097.tif 000033
なお、量子化がＬＳＢ共有化を利用することを前提にしているため、従来アルゴリズムの閾値及び再構成レベルをそのままここで適用することは、難しいか不可能でさえあろう。
その対応策は、次式の条件の場合に、かつ、次式の条件の場合にのみ、共有ＬＳＢを１にすることである。
【００７５】
【数７】
2006314097.tif 000034
ここで、
【００７６】
【数８】
2006314097.tif 000035
【００７７】
３つのパラメータＫ，Ｂ，Ｄは、一定の基準及びトレーニング・セットを用いれば、特に図９に示す最適なＫ，Ｂ，Ｄの表からスタート値を補間すれば、選択した実施例及び選択したビットレートに合うように調整することができる。図９において、ビットレートは、１つのデータもしくは信号点（例えば白黒画像の場合は画素）あたりのビット数で表されている。
【００７８】
図４は、多くが０のデータのような強く集中したデータの符号化プロセスの流れ図である。図４において、このプロセスは初めに量子化すべき数値データ値の１グループを選ぶ（処理ブロック３０１）。ここで、選択されたデータ値をｘ１，ｘ２，．．．，ｘＮと呼ぶ。次に、これら数値データ値を使って、処理ロジックは前に定義した下記関数の計算を行う（処理ブロック３０２）。
【００７９】
【数９】
2006314097.tif 000036
【００８０】
次に、処理ロジックは上記関数の計算結果が０より大きいか判定する（処理ブロック３０３）。この関数の計算結果が０より大きければ、Ｌと呼ぶところのＬＳＢは１に設定され（処理ブロック３０４）、そして処理ブロック３０６に進む。上記関数の計算結果が０以下ならば、ＬＳＢは０に設定され（処理ブロック３０５）、そして処理ブロック３０６へ進む。
【００８１】
処理ブロック３０６で、変数ｉが１に設定される。次に、処理ロジックはデータ値ｘｉが０より大きいか判定する（処理ブロック３０７）。データ値ｘｉが０より大きければ、処理ロジックは、次のｅｍｉｔ関数を使用して、共有ＬＳＢ以外の、量子化対象のデータ値の全ビットを出力させる（処理ブロック３０８）。
【００８２】
【数１０】
2006314097.tif 000037
データ値ｘｉが０以下ならば、処理ロジックは、次のｅｍｉｔ関数を適用して、共有ＬＳＢ以外の、量子化対象のデータ値の全ビットを出力させる（処理ブロック３０９）。
【００８３】
【数１１】
2006314097.tif 000038
【００８４】
次に処理ロジックは、変数ｉをインクリメントし（処理ブロック３１０）、そして変数ｉがＮより大きいか判定する（処理ブロック３１１）。変数ｉがＮ以下ならば、処理ブロック３０７に戻る。変数ｉがＮより大きければ、処理ブロック３１２に進み、ＬＳＢ値のＬが数値データ値ｘ１，ｘ２，．．．，ｘＮのための共有ＬＳＢとして出力される。
【００８５】
その後、処理ロジックは符号化すべきデータがほかにあるか調べる（処理ブロック３１３）。ほかのデータを符号化する必要があるならば、処理ブロック３０１に戻ってプロセスが繰り返される。他方、データの終わりに達したならば、プロセスは終了する。
【００８６】
ＬＳＢを共有化して０に偏ったデータを量子化する環境においては、圧縮された（例えばウェーブレット）係数の＋１が、共有ＬＳＢがオフに設定されている時（例えば、共有ＬＳＢが論理０すなわちｌｏｗである時）には、−１よりはるかに多く発生し、かつ、共有ＬＳＢがオンに設定されている時（例えば共有ＬＳＢが論理１すなわちｈｉｇｈである時）には、ごくまれにしか発生しない。ＬＳＢがオフ（例えば０）の時に、１，０，＋１に対する再構成レベルは−１．２５，−Ｂ，＋０．７５である（典型的なビットレートで性能を向上させるためにはＢ≒０．１５）。
【００８７】
要するに、量子化トークンの確率関数はトークンを頻度順にソートすると幾何級数にかなり近い。このソート後の順序は、ＬＳＢがオフ（０又は負）の時には
0，+1，-1，+2，-2，+3，-3，+4，4，+5...
であり、ＬＳＢがオン（１又は正）の時には、
0，-1，+1，-2，+2，-3，+3，-4，+4，-5...
である。
【００８８】
模擬ラプラシアンデータの広範囲にわたる確率は、幾何級数に似ていることが知られている。正確な幾何分布であれば、コンパクト符号化が非常に容易になる。一実施例によれば、単項（unary）コードが、そのような幾何分布に対して最適であろう。この単項コードは図１０に示すとおりである。
【００８９】
これらの特徴ゆえに、圧縮装置は、ＬＳＢ共有化を適用したのちに圧縮データに単項コードを適用し得る。確率級数の幾何級数に対する類似の程度はそこそこではあるが、それでも圧縮符号化の少なくとも予備ステップとして単項コードを適用するには十分である。すなわち、単項コードを適用した後に、さらなる圧縮符号化は必要でないかもしれない。
【００９０】
別の符号化装置を使用する場合でも、圧縮コストの推定に幾何級数を使用できる。さらに、共有ＬＳＢがオフの時には正サインのほうが負サインより多く、共有ＬＳＢがオンの時には負サインのほうが正サインより多いことに着目すると、排他的論理和（XOR）関数を用いてサインの反転を行うことにより圧縮性能を上げること、殊に、“０に偏った”データの１ブロックによって１つのＬＳＢが共有される、任意の非束縛方式で圧縮性能を上げることを思いつく。したがって、一実施例によれば、符号化装置は、量子化データのサインと共有ＬＳＢの排他論理和（XOR）を取ってから、ＩＢＭ社のＱ−コーダすなわちＱＭ−コーダやその他の既存の符号化装置のような統計的符号化装置へサイン・ビットを送る。これを、ここではサイン反転と呼ぶ。前に示したＬＳＢがオンの場合のソート済み順序リストとＬＳＢがオフの場合のソート済み順序リストは、ＸＯＲ関数を用いた場合には互いに等価である。したがって、共有ＬＳＢの生成後、それ以上の符号化の前に、サイン・ビットを反転させることにより、共有ＬＳＢと排他的論理和をとったサイン・ビットと等しい修正サイン・ビットとすることができる。他の実施例によれば、サイン・ビットは、それが所定の状態（例えば、正、負など）である確率と排他的論理和をとられる。
【００９１】
さらに、符号化装置において、共有ＬＳＢの設定を選ぶ際に、歪みに対する符号化コストを考慮してもよい。分布が、例として定義した“折返し指数関数”に従う場合、非常に柔軟な量子化則が浮上する。“折返し指数関数コード”は、
0，+1，-1，+2，-2，+3,...
を、折返し順序付けにより
0，1，2，3，4，5,...
に写像する、すなわち、“単項”で表せば
0，10，110，1110，11110，111110,...
に写像するコードと定義される。なお、全てのペアについて、負数が正数より先に出現するように負の数と正の数を入れ替えてもよい。
【００９２】
上に示したコードの確率分布は、順に連続した項の間の比prob(X=0)，prob(X=+l)，prob(X=-l)，prob(X=+2)，prob(X=-2)，prob(X=+3),...が一定である任意の確率分布である。この確率分布は、共有ＬＳＢシステムにおけるトークンの分布をよく近似する。
【００９３】
“折返し指数関数”コードの一例は図１１に示すとおりである。p=Prob(LPS)は（内部の）符号化対象シンボルの確率を表すものとする。
【００９４】
Ｘに対する出力は、単に、ｙ個のＬＰＳ（“１”）の後にＭＰＳ（“０”）を続けたものである。ここで、ｙは次式で与えられる。
【００９５】
【数１２】
2006314097.tif 000039
ここで、Ｌは共有ＬＳＢである。
【００９６】
この折返し指数関数コードが適用されるのは、調整及び量子化したｘｉを用意しかつ条件付サイン反転を適用した後であって、その結果を汎用エントロピ符号化装置（例えば算術符号化装置）へ送る前である。ＬＰＳの符号化コストが均等であると仮定すれば、符号化コスト間に、前記量子化則を導くところの単純な関係が存在する。
【００９７】
図５は、サイン反転及び折返し指数関数符号化（又は単項符号化）とともに共有ＬＳＢ処理を利用し、復号化時に各処理の逆処理を利用する符号化装置及び復号化装置の一実施例を示している。すなわち、図５において、２０７はサイン反転のためのブロック、２０８は折返し指数関数符号化又は単項符号化のためのブロック、２０９はエントロピ符号化器（例えば算術符号化器）である。また、２１５はエントロピ復号化器（例えば算術符号化器）、２１６は折返し指数関数復号化又は単項復号化のためのブロック、２１７はサイン反転のためのブロックである。
【００９８】
なお、前記折返し指数関数符号化は、データが適当な統計量を持つ任意の圧縮用途に利用し得る。すなわち、折返し指数関数符号化は共有ＬＳＢ符号化と無関係に使用し得る。
【００９９】
以上の説明から理解されるように、本発明には、以下に列挙するような方法及び装置並びコンピュータ読み取り可能記録媒体が包含される。
（１）  量子化対象の数値データを選択し、前記数値データの最下位ビット（ＬＳＢｓ）を、前記数値データ中の各数値データ値により共有される単一のＬＳＢで置き換えることを特徴とするデータ符号化方法。
（２）  前記単一のＬＳＢとして選ばれた値に基づいて数値データ値を調整することを特徴とする前記（１）記載のデータ符号化方法。
（３）  前記数値データｔ＠一様分布であることを特徴とする前記（１）記載のデータ符号化方法。
（４）  前記数値データが０の近くに集中していることを特徴とする前記（１）記載のデータ符号化方法。
（５）  前記数値データの各値が１つの係数からなることを特徴とする前記（１）記載のデータ符号化方法。
（６）  前記数値データが１ブロックの変換データからなることを特徴とする前記（１）記載のデータ符号化方法。
（７）  前記ＬＳＢｓの置き換えにおいて、平均２乗誤差（ＭＳＥ）に基づいて前記単一ＬＳＢを設定することを特徴とする前記（１）記載のデータ符号化方法。
（８）  前記ＬＳＢｓの置き換えにおいて、前記数値データ中の数値データ値のＬＳＢｓの中で、どちらの２進値の出現頻度が最高であるかに応じて前記単一ＬＳＢを設定することを特徴とする前記（１）記載のデータ符号化方法。
（９）  前記ＬＳＢｓの置き換えにおいて、前記数値データを含む画像データの１領域全体のＬＳＢｓの中で、どちらの２進値の出現頻度が最高であるかに応じて前記単一ＬＳＢを設定することを特徴とする前記（１）記載のデータ符号化方法。
（１０）  前記ＬＳＢｓの置き換えにおいて、
【０１００】
【数１３】
2006314097.tif 000040
が成立する場合に前記単一ＬＳＢを所定の２進値に設定することを特徴とする前記（１）記載のデータ符号化方法。
（１１）  前記所定の２進値が１であることを特徴とする前記（１０）記載のデータ符号化方法。
（１２）  前記単一ＬＳＢを“ＬＳＢ共有化を意識していない”標準に適合したファイルに埋め込むことを特徴とする前記（１）記載のデータ符号化方法。
（１３）  前記“ＬＳＢ共有化を意識していない”標準がＪＰＥＧであることを特徴とする前記（１２）記載のデータ符号化方法。
（１４）  前記単一ＬＳＢの前記ファイルへの埋め込みにおいて、前記単一ＬＳＢを前記各数値データ値の１つに付加することを特徴とする前記（１２）記載のデータ符号化方法。
（１５）  前記各数値データ値が１つの係数からなることを特徴とする前記（１４）記載のデータ符号化方法。
（１６）  前記単一ＬＳＢの前記ファイルへの埋め込みにおいて、ｑ−マトリクスを修正することを特徴とする前記（１２）記載のデータ符号化方法。
（１７）  前記ｑ−マトリクスの修正において、前記ｑ−マトリクス内の数を半分にすることを特徴とする前記（１６）記載のデータ符号化方法。
（１８）  前記数値データの最下位ビット（ＬＳＢｓ）の単一のＬＳＢによる置き換えにおいて、前記（７）式の条件が成立する場合に、前記単一ＬＳＢを所定の２進値に設定することを特徴とする前記（１）記載のデータ符号化方法。
（１９）  圧縮データに単項コードを適用することを特徴とする前記（１）記載のデータ符号化方法。
（２０）  前記各数値データ値のサインを、前記単一ＬＳＢとの排他的論理和をとることによって反転させることを特徴とする前記（１）記載のデータ符号化方法。
（２１）  前記各数値データ値のサインを、それが所定の状態である確率との排他的論理和をとることによって反転させることを特徴とする前記（１）記載のデータ符号化方法。
（２２）  前記所定の状態が負であることを特徴とする前記（２１）記載のデータ符号化方法。
（２３）  0,+1,-1,+2,-2,+3,....を0,1,2,3,4,5,....にそれぞれ写像するコードを用いて各数値データ値を符号化することを特徴とする前記（１）記載のデータ符号化方法。
（２４）  0,+1,-1,+2,-2,+3,....を0,1,2,3,4,5,....にそれぞれ写像するコードを用いて各数値データ値を符号化することを特徴とする前記（２０）記載のデータ符号化方法。
（２５）  量子化対象の数値データを受信する手段と、前記数値データの最下位ビット（ＬＳＢｓ）を、前記数値データ中の各数値データ値によって共有される単一のＬＳＢで置き換える手段とを具備する符号化装置。
（２６）  前記単一のＬＳＢとして選ばれた値に基づいて数値データ値を調整する手段をさらに具備することを特徴とする前記（２５）記載の符号化装置。
（２７）  前記数値データが一様分布であることを特徴とする前記（２５）記載の符号化装置。
（２８）  前記数値データが０の近くに集中していることを特徴とする前記（２５）記載の符号化装置。
（２９）  前記数値データ中の各数値データ値が１つの係数からなることを特徴とする前記（２５）記載の符号化装置。
（３０）  前記数値データが１ブロックの変換データからなることを特徴とする前記（２５）記載の符号化装置。
（３１）  前記置き換えのための手段が平均２乗誤差（ＭＳＥ）に基づいて前記単一ＬＳＢを設定する手段を具備することを特徴とする前記（２５）記載の符号化装置。
（３２）  前記置き換えのための手段が、前記数値データ中の数値データ値のＬＳＢｓの中で、どちらの２進値の出現頻度が最高であるかに応じて前記単一ＬＳＢを設定する手段を具備することを特徴とする前記（２５）記載の符号化装置。
（３３）  前記置き換えのための手段が、前記数値データを含む画像データの１領域全体のＬＳＢｓの中でどちらの２進値の出現頻度が最高であるかに応じて前記単一ＬＳＢを設定する手段を具備することを特徴とする前記（２５）記載の符号化装置。
（３４）  前記置き換えのための手段が、前記（１３）式の条件が成立する場合に前記単一ＬＳＢを所定の２進値に設定する手段を具備することを特徴とする前記（２５）記載の符号化装置。
（３５）  前記所定の２進値が１であることを特徴とする前記（３４）記載の符号化装置。
（３６）  前記単一ＬＳＢを“ＬＳＢ共有化を意識していない”標準に適合したファイルに埋め込む手段をさらに具備することを特徴とする前記（２５）記載の符号化装置。
（３７）  前記unwitting標準がＪＰＥＧであることを特徴とする前記（３６）記載の符号化装置。
（３８）  前記単一ＬＳＢを前記ファイルへ埋め込む手段が、前記単一ＬＳＢを前記各数値データ値の１つに付加する手段を具備することを特徴とする前記（３６）記載の符号化装置。
（３９）  前記各数値データ値が１つの係数からなることを特徴とする前記（３８）記載の符号化装置。
（４０）  前記単一ＬＳＢを前記ファイルへ埋め込む手段がｑ−マトリクスを修正する手段を具備することを特徴とする前記（３６）記載の符号化装置。
（４１）  前記ｑ−マトリクスを修正する手段が前記ｑ−マトリクス内の数を半分にすることを特徴とする前記（４０）記載の符号化装置。
（４２）  前記数値データの最下位ビット（ＬＳＢｓ）を単一のＬＳＢで置き換える手段が、前記（７）式の条件が成立する場合に前記単一ＬＳＢを所定の２進値に設定する手段を具備することを特徴とする前記（２５）記載の符号化装置。
（４３）  圧縮データに単項コードを適用するとこを特徴とする前記（２５）記載の符号化装置。
（４４）  前記各数値データ値のサインを、前記単一ＬＳＢとの排他的論理和をとることによって反転させる手段をさらに具備することを特徴とする前記（２５）記載の符号化装置。
（４５）  各数値データ値のサインを、それが所定の状態である確率との排他的論理和をとることによって反転させる手段をさらに具備することを特徴とする前記（２５）記載の符号化装置。
（４６）  前記所定の状態が負であることを特徴とする前記（４５）記載の符号化装置。
（４７）  0,+1,-1,+2,-2,+3,....を0,1,2,3,4,5,....にそれぞれ写像するコードを用いて各数値データ値を符号化する手段をさらに具備することを特徴とする前記（２５）記載の符号化装置。
（４８）  0,+1,-1,+2,-2,+3,....を0,1,2,3,4,5,....にそれぞれ写像するコードを用いて各数値データ値を符号化する手段をさらに具備することを特徴とする前記（４４）記載の符号化装置。
（４９）  複数の数値データ値を記憶するためのメモリと、前記複数の数値データ値のＬＳＢｓを、それら数値データ値によって共有される単一のＬＳＢで置き換える、前記メモリに接続された最下位ビット（ＬＳＢ）処理ロジックとを具備する符号化装置。
（５０）  前記複数の数値データ値がそれぞれは１つの係数からなることを特徴とする前記（４９）記載の符号化装置。
（５１）  前記複数の数値データ値が１ブロックの変換データからなることを特徴とする前記（４９）記載の符号化装置。
（５２）  前記ＬＳＢ処理ロジックが平均２乗誤差（ＭＳＥ）に基づいて前記単一ＬＳＢを設定することを特徴とする前記（４９）記載の符号化装置。
（５３）  前記ＬＳＢ処理ロジックが、前記複数の数値データ値のＬＳＢｓの中で、どちらの２進値の出現頻度が最高であるかに応じて前記単一ＬＳＢを設定することを特徴とする前記（４９）記載の符号化装置。
（５４）  前記ＬＳＢ処理ロジックが、前記（１３）式の条件が成立する場合に前記単一ＬＳＢを所定の２進値に設定することを特徴とする前記（４９）記載の符号化装置。
（５５）  前記所定の２進値が１であることを特徴とする前記（５４）記載の符号化装置。
（５６）  前記ＬＳＢ処理ロジックが、前記（７）式の条件が成立する場合に前記単一ＬＳＢを所定の２進値に設定することを特徴とする前記（４９）記載の符号化装置。
（５７）  圧縮データに単項コードを適用することを特徴とする前記（４９）記載の符号化装置。
（５８）  前記各数値データ値のサインを前記単一ＬＳＢとの排他的論理和をとることによって反転させる手段をさらに具備することを特徴とする前記（４９）記載の符号化装置。
（５９）  各数値データ値のサインを、それが所定の状態である確率との排他的論理和をとることによって反転させる手段をさらに具備することを特徴とする前記（４９）記載の符号化装置。
（６０）  前記所定の状態が負であることを特徴とする前記（５９）記載の符号化装置。
（６１）  0,+1,-1,+2,-2,+3,....を0,1,2,3,4,5,....にそれぞれ写像するコードを用いて各数値データ値を符号化する手段をさらに具備することを特徴とする前記（４９）記載の符号化装置。
（６２）  0,+1,-1,+2,-2,+3,....を0,1,2,3,4,5,....にそれぞれ写像するコードを用いて各数値データ値を符号化する手段をさらに具備することを特徴とする前記（５８）記載の符号化装置。
（６３）  システムの少なくとも１つの処理装置で実行された時に、前記少なくとも１つの処理装置に、データセットの数値データを選択させ、そして、前記数値データの最下位ビット（ＬＳＢｓ）を、前記数値データ中の数値データ値により共有される単一のＬＳＢで置き換えさせる命令シーケンスが記録されたコンピュータ読み取り可能記録媒体。
（６４）  少なくとも１つの処理装置に実行された時に、前記少なくとも１つの処理装置に、前記単一のＬＳＢとして選ばれた値に基づいて数値データ値を調整させる命令が＜前記命令シーケンスに含まれることを特徴とする前記（６３）記載の記録媒体。
（６５）  少なくとも１つの処理装置に実行された時に、前記少なくとも１つの処理装置に、平均２乗誤差（ＭＳＥ）に基づいて前記単一ＬＳＢを設定させる命令が前記命令シーケンスに含まれることを特徴とする前記（６３）記載の記録媒体。
（６６）  少なくとも１つの処理装置に実行された時に、前記少なくとも１つの処理装置に、前記数値データ中の数値データ値のＬＳＢｓの中で、どちらの２進値の出現頻度が最高であるかに応じて前記単一ＬＳＢを設定させる命令が前記命令シーケンスに含まれることを特徴とする前記（６３）記載の記録媒体。
（６７）  少なくとも１つの処理装置に実行された時に、前記少なくとも１つの処理装置に、前記数値データを含む画像の１領域全体のＬＳＢｓの中で、どちらの２進値の出現頻度が最高であるかに応じて前記単一ＬＳＢを設定させる命令が前記命令シーケンスに含まれることを特徴とする前記（６３）記載の記録媒体。
（６８）  少なくとも１つの処理装置に実行された時に、前記少なくとも１つの処理装置に、前記（１３）式の条件が成立する場合に前記単一ＬＳＢを所定の２進値に設定させる命令が前記命令シーケンスに含まれることを特徴とする前記（６３）記載の記録媒体。
（６９）  少なくとも１つの処理装置に実行された時に、前記少なくとも１つの処理装置に、前記各数値データ値のサインを、前記単一ＬＳＢとの排他的論理和をとることによって反転させる命令が前記命令シーケンスに含まれることを特徴とする前記（６３）記載の記録媒体。
（７０）  少なくとも１つの処理装置に実行された時に、前記少なくとも１つの処理装置に、前記各数値データ値のサインを、それが所定の状態である確率との排他的論理和をとることによって反転させる命令が前記命令シーケンスに含まれることを特徴とする前記（６３）記載の記録媒体。
（７１）  前記所定の状態が負であることを特徴とする前記（７０）記載の記録媒体。
（７２）  少なくとも１つの処理装置に実行された時に、前記少なくとも１つの処理装置に、0,+1,-1,+2,-2,+3,....を0,1,2,3,4,5,....にそれぞれ写像するコードを用いて各数値データ値を符号化させる命令が前記命令シーケンスに含まれることを特徴とする前記（６３）記載の記録媒体。
（７３）  少なくとも１つの処理装置に実行された時に、前記少なくとも１つの処理装置に、0,+1,-1,+2,-2,+3,....を0,1,2,3,4,5,....にそれぞれ写像するコードを用いて各数値データ値を符号化させる命令が前記命令シーケンスに含まれることを特徴とする前記（６９）記載の記録媒体。
（７４）  少なくとも１つの処理装置に実行された時に、前記少なくとも１つの処理装置に、前記単一ＬＳＢを“ＬＳＢ共有化を意識していない”標準に適合したファイルに埋め込ませる命令が前記命令シーケンスに含まれることを特徴とする前記（６３）記載の記録媒体。
（７５）  少なくとも１つの処理装置に実行された時に、前記少なくとも１つの処理装置に、前記（７）式の条件が成立する場合に前記単一ＬＳＢを所定の２進値に設定させる命令が前記命令シーケンスに含まれることを特徴とする前記（６３）記載の記録媒体。
（７６）  少なくとも１つの処理装置に実行された時に、前記少なくとも１つの処理装置に、単項コードを圧縮データに適用させる命令が前記命令シーケンスに含まれることを特徴とする前記（６３）記載の記録媒体。
（７７）  単一のＬＳＢを共有する量子化数値データを受け受信するレシーバと前記単一ＬＳＢを各数値データ値に対し用いることにより前記量子化数値データを復号化する、前記レシーバに接続された復号化器とを具備する復号化装置。
（７８）  前記復号化器が、数値データの最下位ビット（ＬＳＢｓ）を１群の数値データの各数値データ値に共有される単一のＬＳＢで置き換えることによって符号化されているデータを、前記（７）式の条件が成立する場合に前記単一ＬＳＢを所定の２進値に設定することにより復号化することを特徴とする前記（７７）記載の復号化装置。
（７９）  複数の符号化データが単一のＬＳＢを共有しており、前記単一ＬＳＢを用いて、前記複数の符号化データの各符号化データに対する再構成データ値を生成し、前記複数の符号化データの各符号化データに対する前記再構成データ値を送出するデータ復号化方法。
（８０）  前記再構成データ値の生成が下式によって行われる、
【０１０１】
【数１４】
2006314097.tif 000041
ただし、ｘｉは再構成データ値、ｙは再構成対象の符号化データ値の最上位ビット、Ｌは共有される前記単一ＬＳＢである、ことを特徴とする前記（７９）記載のデータ復号化方法。
（８１）  量子化対象の１群の数値データを選択し、前記数値データの最下位ビット（ＬＳＢｓ）を前記１群の数値データの各数値データ値により共有される単一のＬＳＢで置き換えることからなり、前記ＬＳＢｓの置き換えにおいて、前記（７）式の条件が成立する場合に前記単一ＬＳＢを所定の２進値に設定する符号化方法。
（８２）  前記単一ＬＳＢを、前記（７）式の関数の計算結果が０より大きければ第１の所定値に設定し、前記（７）式の関数の計算結果が０以下ならば第２の所定値に設定することを特徴とする前記（８１）記載の符号化方法。
（８３）  データ値が０より大きいか判定し、データ値が０以下ならば、前記（１０）式のｅｍｉｔ関数を使用して、共有ＬＳＢ以外の量子化対象データ値のビットを全て出力し、データ値が０より大きければ、前記（１１）式のｅｍｉｔ関数を使用して共有ＬＳＢ以外の量子化対象データ値のビットを全て出力することを特徴とする前記（８２）記載の符号化方法。
（８４）  各数値データのサインを、単一ＬＳＢと排他的論理和をとることによって反転させることを特徴とする前記（８１）記載の符号化方法。
（８５）  各数値データ値のサインを、それが所定の状態である確率との排他的論理和をとることによって反転させることを特徴とする前記（８１）記載の符号化方法。
（８６）  前記所定の状態が負であることを特徴とする前記（８５）記載の符号化方法。
（８７）  量子化対象の１群の数値データを選択する手段と、前記数値データの最下位ビット（ＬＳＢｓ）を前記１群の数値データの各数値データ値により共有される単一のＬＳＢで置き換える手段とを具備し、前記ＬＳＢｓの置き換えにおいて前記（７）式の条件が成立する場合に前記単一ＬＳＢを所定の２進値に設定する符号化装置。
（８８）  前記単一ＬＳＢを、前記関数の計算結果が０より大きければ第１の所定値に設定し、前記関数を適用した結果が０以下ならば第２の所定値に設定するための手段をさらに具備することを特徴とする前記（８７）記載の符号化装置。
（８９）  データ値が０より大きいか判定する手段と、データ値が０以下のときに前記（１０）式のｅｍｉｔ関数を使用して共有ＬＳＢ以外の量子化対象データ値のビットを全て出力し、データ値が０より大きいときに前記（１１）式のｅｍｉｔ関数を使用して共有ＬＳＢ以外の量子化対象データ値のビットを全て出力する手段とをさらに具備することを特徴とする前記（８７）記載の符号化装置。
（９０）  各数値データのサインを、単一ＬＳＢとの排他的論理和をとることによって反転させる手段をさらに具備することを特徴とする前記（８９）記載の符号化装置。
（９１）  各数値データ値のサインを、それが所定の状態である確率との排他的論理和をとることによって反転させる手段をさらに具備することを特徴とする前記（８７）記載の符号化装置。
（９２）  前記所定の状態が負であることを特徴とする前記（９１）記載の符号化装置。
（９３）  システムの少なくとも１つの処理装置で実行された時に、前記少なくとも１つの処理装置に、量子化対照の１群の数値データを選択させ、そして前記数値データの最下位ビット（ＬＳＢｓ）を前記１群の数値データの各数値データ値により共有される単一のＬＳＢで置き換えさせる命令シーケンスが記録され、前記ＬＳＢｓの置き換えにおいて、前記（７）式の条件が成立する場合に前記単一ＬＳＢを所定の２進値に設定する、コンピュータ読み取り可能記録媒体。
（９４）  少なくとも１つの処理装置で実行された時に、前記少なくとも１つの処理装置に、前記単一ＬＳＢを、前記関数の計算結果が０より大きければ第１の所定値に設定させ、前記関数の計算結果が０以下ならば第２の所定値に設定させる命令が前記命令シーケンスに含まれることを特徴とする前記（９３）記載の記録媒体。
（９５）  少なくとも１つの処理装置で実行された時に、前記少なくとも１つの処理装置に、データ値が０より大きいか判定させ、前記データ値が０以下のときに前記（１０）式のｅｍｉｔ関数を使用して共有ＬＳＢ以外の量子化対象データ値のビットを全て出力させ、データ値が０より大きいときに前記（１１）式のｅｍｉｔ関数を使用して共有ＬＳＢ以外の量子化対象データ値のビットを全て出力させる命令が前記命令シーケンスに含まれることを特徴とする前記（９４）記載の記録媒体。
（９６）  値の系列0,+1,-1,+2,-2,+3,....を0,1,2,3,4,5,....に写像することを特徴とするデータ符号化方法。
（９７）  各数値データ値のサインを、単一ＬＳＢとの排他的論理和をとることにより反転させることを特徴とする前記（９６）記載のデータ符号化方法。
（９８）  各数値データ値のサインを、それが所定の状態である確率との排他的論理和をとることによって反転させることを特徴とする前記（９６）記載のデータ符号化方法。
（９９）  前記所定の状態が負であることを特徴とする前記（９８）記載のデータ符号化方法。
（１００）データを受信する手段と、値の系列0,+1,-1,+2,-2,+3,....を0,1,2,3,4,5,....に写像する手段とを具備する符号化装置。
（１０１）各数値データ値のサインを、単一ＬＳＢとの排他的論理和をとることにより反転させる手段をさらに具備することを特徴とする前記（１００）記載の符号化装置。
（１０２）各数値データ値のサインを、それが所定の状態である確率との排他的論理和をとることによって反転させる手段をさらに具備することを特徴とする前記（１００）記載の符号化装置。
（１０３）前記所定の状態が負であることを特徴とする前記（１０２）記載の符号化装置。
【図面の簡単な説明】
【０１０２】
【図１】ＬＳＢ符号化の処理フローの一例を示す。
【図２】ＬＳＢ符号化の処理フローの他の例を示す。
【図３】本発明による圧縮／伸長システムの一例を示す。
【図４】ＬＳＢ符号化の処理フローの一例を示す。
【図５】本発明による圧縮／伸長システムの他の例を示す。
【図６】ＬＳＢ共有化による歪み、その補正のための調整を説明するためのデータを示す。
【図７】様々なブロック・サイズでの信号雑音比ゲイン及び対応する平均２乗誤差（ＭＳＥ）を示す。
【図８】量子化閾値と再構成レベルを示す。
【図９】ビットレートに対応したパラメータＫ，Ｂ，Ｇの最適な値を示す。
【図１０】単項コードを示す。
【図１１】折返し指数関数コードの例を示す。
【符号の説明】
【０１０３】
２００  符号化装置
２０２  圧縮ブロック
２０４  メモリ
２０５  ＬＳＢ処理ブロック
２１０  復号化装置
２１１  メモリ
２１２  伸長ブロック
２０７，２１７  サイン反転のブロック
２０８  折返し指数関数符号化又は単項符号化のブロック
２０９  エントロピ符号化器
２１５  エントロピ復号化器
２１６  折返し指数関数復号化又は単項復号化のブロック