(57)【特許請求の範囲】
【請求項１】
視覚的に無損失の画像圧縮方式をモデル化するための画像圧縮テーブルを生成する方法において、
一組の誤差値（ｘ）のそれぞれに対して量子化誤差値（Ｙ）を計算するステップであって、前記量子化誤差値（Ｙ）は、少なくとも（ｘ−Ｃ）aを含む式によって対応する前記誤差値（ｘ）に関係づけられており、誤差値（ｘ）は前記各入力画像の予測画素成分とオリジナル画素成分の差を表し、前記パラメータＣとａは前記式が人間の視覚認識系統を静止画像に厳密にモデル化するように選択される、前記計算するステップと、
前記入力画像を圧縮するために、前記画像圧縮テーブル内に、前記誤差値（ｘ）と、得られた対応する量子化誤差値（Ｙ）とを格納するステップと
を有することを特徴とする方法。
【請求項２】
画像を圧縮する方法において、
視覚的無損失画像圧縮技法をモデル化する画像圧縮テーブルを生成するステップであって、前記画像圧縮テーブルは、量子化誤差値（Ｙ）と、対応する一組の誤差値（ｘ）のそれぞれに等価のコードワードとを格納しており、前記量子化誤差値（Ｙ）は、少なくとも（ｘ−Ｃ）aを含む式によって対応する前記誤差値（ｘ）に関係づけられており、誤差値（ｘ）は前記各入力画像の予測画素成分とオリジナル画素成分の差を表し、前記パラメータＣとａは前記式が人間の視覚認識系統を静止画像に厳密にモデル化するように選択される、前記生成するステップと、
前記入力画像を圧縮する際に、量子化誤差値（Ｙ）を再計算しないで、前記画像圧縮テーブルを利用するステップと
を有することを特徴とする方法。
【請求項３】
画像取込みデバイスからの入力画像を受け取る画像圧縮モジュールと、
前記画像圧縮モジュールに結合された画像圧縮テーブルであって、画像圧縮テーブルは、量子化誤差値と、一組の誤差値のそれぞれと等価な対応するコードワードとを格納するものであり、前記量子化誤差値（Ｙ）は、少なくとも（ｘ−Ｃ）aを含む式によって対応する前記誤差値（ｘ）に関係づけられており、誤差値（ｘ）は前記各入力画像の予測画素成分とオリジナル画素成分の差を表し、前記パラメータＣとａは前記式が人間の視覚認識系統を静止画像に厳密にモデル化するように選択される、前記画像圧縮テーブルと
を有することを特徴とする画像取込みデバイスを含む画像システム。
【発明の詳細な説明】
発明の背景
１．発明の分野
本発明は、一般に、ディジタル画像生成とコンピュータ・グラフィックスの分野に関する。さらに具体的に言えば、本発明は、ディジタル画像処理と圧縮を実行する方法に関する。
２．関連技術の説明
デジタル・スチル・カメラなどの小形の携帯用装置において、画像圧縮方式は、圧縮や復元後でも、許容できる画質を保ちながら、取込んだセンサ画像の記憶要求量と処理時間を減らせなければならない。この処理を果たすＶＬＳＩ（超大規模集積回路）チップは、さらに高密度なものであるから、記憶要求量と処理時間を減らすと、そのデバイスの総合電力消費量も減る。静止画像と動画ビデオの伝送または記憶用のビットレートを減らすと、取込み画像の処理が早くなり、したがって、取込み画像をＰＣ（パーソナルコンピュータ）、または他のさらに複雑なデータ処理システムにダウンロードする速度が早くなる。画像を高速で取り込んで圧縮すると、このようなカメラは、速やかに次の画像に移行し、すなわちカメラの次のクリックに移行することができる。
画像圧縮は、ＶＬＳＩチップなどのハードウェアで行われようとソフトウェアで行われようと、「損失のある」圧縮か「無損失」の圧縮か、いずれかとして分類できる。無損失の圧縮を用いれば、圧縮画像を復元するときに、圧縮前のオリジナル画像を正確に取り出すことができる。その結果、圧縮比が画像のエントロピーに大きく左右される無損失の技法は、高い圧縮比を達成しない。またこの技法は、多くのオリジナル画像情報を保存するので、計算にかかる費用が高くなる。それに反して、損失のある圧縮は、オリジナル画像の近似しか行わない。したがって、損失のある圧縮を用いれば、さらに大きい圧縮比が得られるが、伝統的には、無損失の技法と比較して、画質が低下する。このような損失のある技法の１つは、「予測符号化」と呼ばれ（ディジタル・パルス符号変調（ＤＰＣＭ）とも呼ばれ、当業界で公知のものである）、すでに処理された隣接画素の性質を直線的に組合わせることで、連続する画素の値を予測している。誤差画素は、オリジナル画素と、対応する予測画素との差として定義される。カラー値として表される誤差画素を量子化し、次に、２進符号化する。伝統的に、この量子化は、この符号化とは別に行われてきて、その処理回路を複雑にしている。
損失のある圧縮方式を用いても、量子化と符号化の処理は、きわめて計算集約的であることが多い。したがって、デジタルカメラなどの小形装置内での量子化と符号化の計算を減らすか、または排除することが望ましいであろう。このようにすれば、必要とされる回路またはチップの領域が減らされ、さらに、電力消費量も減らされることになる。
伝統的に用いられてきた損失のある技法では、画質が劣化する。さらに、デジタルカメラのように、取込み画像の品質が重要である場合に、「視覚的に」無損失である圧縮方式を用いることも望ましいことであろう。「視覚的に無損失な」方式でも、技術的には損失があろうが、いくつかの性質のために、人間の視覚系統をモデル化することになる。「視覚的に無損失な」方式を用いて圧縮された画像は、肉眼では、オリジナル画像とほぼ同一であるように見えるであろう。
このような計算集約的な技法の実施は、画像圧縮を求めるデジタルカメラや携帯用の小形装置に適切である以上に、ＶＬＳＩ回路を必要とする。したがって、さらに効率的な処理で、電力を節約しながら、様々な技法を実行する必要がある。さらに、画質を、それが人間の視覚系統と関連があるように保って、損失のある画像が、肉眼には「無損失」の画像に見えるようにする必要がある。
発明の要約
視覚的に無損失の画像圧縮方式をモデル化する画像圧縮テーブルを編集するステップを有する方法が開示されている。画像圧縮テーブルは、復元時には視覚的に無損失であるように見える画像を圧縮するのに利用される。
【図面の簡単な説明】
本発明の方法と装置の目的、特徴、利点は、以下の図面から明らかとなる。この図面において、
図１は、本発明の一実施形態の流れ図である。
図２は、本発明の一実施形態による画像圧縮テーブルを編集する詳細な流れ図である。
図３は、本発明のさらに他の実施形態の流れ図である。
図４は、本発明の一実施形態による量子化誤差値を計算する流れ図である。
図５は、本発明の一実施形態によるサンプル値を持つ画像圧縮テーブルである。
図６は、本発明の一実施形態のシステム図である。
本発明の詳細な説明
ここで、以上の図を参照して、本発明の例示的実施形態を説明する。これらの例示的実施形態は、本発明の側面を例示するために提供されるものであって、本発明の範囲を限定するものと解されてはならない。これらの例示的実施形態は、主として、ブロック図または流れ図を参照して説明される。これらの流れ図に関しては、流れ図内の各ブロックは、方法ステップも、方法ステップを実行するための装置要素も表している。この対応する装置要素は、その実施形態により、ハードウェア、ソフトウェア、ファームウェア、あるいは、それらの組合せで構成される。
図１は、本発明の一実施形態の流れ図である。
この実施形態において、高密度で、かつ効率的な画像圧縮を得る際の１ステップは、量子化した誤差値とコードから成るテーブルをあらかじめ編集することである（ステップ１１０）。可能な誤差値の総数（ここで、誤差は、予測画素（すなわち、画素の平均）と現行画素との差として定義される）は、各画素の所望の色解像度に基づくであろう（以下に述べられる）。それぞれの可能な誤差値では、対応する量子化誤差値は、コンピュータなどの或るデータ処理システムにより計算される。以下に詳述されるとおり、それぞれの量子化誤差値は、等価ハフマン（または、他のエントロピー符号化）符号を持つことになる。ハフマン符号化は、ディジタル符号化とデータ圧縮の技術において公知のものである。統合されたオリジナル量子化誤差値と等価ハフマン符号から成る単一テーブルなどを、データ処理システム上にテーブル形式で格納する。
どんな画像取込みや画像圧縮よりも前に、このテーブルがあらかじめ編集され、このテーブルを、カメラの中のＲＡＭ（ランダムアクセス・メモリ）装置またはＲＯＭ（リードオンリー・メモリ）装置にロードする（ステップ１２０）。メモリは、論理／演算回路と比較して、安価で、かつ電力が節約できるから、上記のテーブルをあらかじめ編集すると、費用と設計の点で著しい利点が提供される。
このテーブルをカメラにロードすると、そのテーブルで表される画像圧縮方式では、テーブルをあらかじめ編集したり、再ロードしたりする必要がなくなる。図３に示されるとおり、画像圧縮方式が変われば、このテーブルは、あらかじめ編集され、ロードされて、前回のテーブルに取って代るか、あるいは前回のテーブルに追加できる。ステップ１３０により、カメラのレンズ・センサシステムが取込んだ画像は、ルックアップ・テーブル手法を用いて、オンザフライ式で圧縮できる。これらの取込まれた画素は、Ｒ，Ｇ，Ｂ（赤、緑、青）のカラープレーンから成っており、予測符号化の処置が、同時にＲ，Ｇ，Ｂのカラープレーンのそれぞれの取込み画素に加えられる。
この画像が完全に取込まれて圧縮されると、次の画像が、当該テーブルの再ロードも再編集もなく、同様に処理される。次に、この圧縮された画像は、１つずつ、あるいはグループにして、データ処理システムまたはコンピュータシステムにダウンロードし、そこで、画像（１つ、または複数）の復元が行われる。（ステップ１４０）。以下に述べられる「視覚的無損失」手法を利用すると、結果として得られる画像は、目には、取込み画像をほぼ完全に復元したもののように見えるであろう。表ルックアップ圧縮の手法の利点は、取込み画像を圧縮する速度であり、したがって、カメラに、次の画像を取込める状態にしておくことができる。さらに他の利点は、復号し、逆量子化して、この取込み画像に近づける復元も、カメラにロードされた同一テーブルを用いて達成できることである。このような詳細は、視覚的無損失のアルゴリズムとともに、以下で説明される。
図２は、本発明の一実施形態によるあらかじめ編集する画像圧縮テーブルの詳細な流れ図である。
画像圧縮テーブルをあらかじめ編集する際の第１のステップは、それぞれの指定誤差値に対して、量子化誤差値を計算することである。画素は、Ｒ，Ｇ，Ｂのカラープレーンの成分に分割でき、次に、各カラープレーンにＮビットが利用されると仮定して、画素の総計が、３＊Ｎビットで定義されることになる。予測符号化方式が、各カラープレーン上で、別々に、かつ同時に動作する。したがって、この誤差は、予測画素成分と、オリジナル画素成分との差であって、−（２N−１）〜２N−１の範囲にあり、可能な誤差値の総数が２N+1−１となる。例えば、２４ビットのカラー画像は、８ビットのＲ（赤）成分、８ビットのＧ（緑）成分、８ビットのＢ（黒）成分を持つ画素から成る。各画素成分では、誤差の下限は０−２５５＝−２５５であるが、一方、その上限は２５５−０＝２５５であり、総計２８＋１−１＝５１１の誤差値を与える。次に、ステップ２１０により、２N+1−１の誤差値のそれぞれについて、量子化誤差値を計算する。量子化誤差値は、本発明の様々な実施形態において提案された視覚的無損失の方式により、ｙ＝（ｘ−Ｃ）a＋Ｃの形式を取る。ここで、ｙは量子化誤差であり、ｘはオリジナル誤差であり、Ｃは、そのしきい値であり、また「ａ」は、人間の視覚認識系統の応答から得られたエントロピー符号化係数（視覚入力に対する人間の視覚系統の応答と、人間の脳によるその応答の解釈）である。その量子化の計算のさらなる詳細は、図４に関して以下で説明される。
上記の例は、その予測において、一次元か、それとも多次元である予測符号化の一形式である。一次元のものは、予測画素成分として、画像内の同一行（ただし、前の列）の画素成分（Ｒ，Ｇ，Ｂ）である予測「左側」隣接画素成分を取出すことになる。二次元の予測符号化方式は、まず最初に、例えば予測「上側」隣接画素成分と「左側」隣接画素成分を取出して、この２つの成分の平均を取る。次に、前回の予測画素成分のこの平均値を、現行のオリジナル画素から差し引いて、誤差値を得る。これらの誤差値の量子化による誤差の伝播を最小限に抑えるために、誤差の逆量子化と近似により、帰還回復が「回復」に当てはめられる。逆量子化で得られたこの近似値を、予測画素成分（または平均）と合計すれば、少なくとも一部、その誤差を埋合わせることができる。
さらに、図２を参照すると、この処理における次のステップは、量子化誤差値を、区別できる一組のクラスに分類することである（ステップ２２０）。クラスの数は、量子化誤差値を符号化するのに必要なビット数にも、Ｃの値（量子化誤差公式の中のしきい値）にも左右される。本発明のこの実施形態に利用される２進符号化は、本質的にビット単位で行われる。したがって、２進符号化値の復号化は、ビット単位の処理が必要であるから、計算上、複雑となる。とはいえ、生成された等価コードワードの復号化は、前述の量子化誤差値を分類することにより、大幅に簡単になる。一例が、以下に与えられる。量子化誤差値を分類した後で、それぞれの量子化誤差値に対して、等価コードワードを生成できる（ステップ２３０）。各量子化誤差値は、一対の２進値（Ｈ，Ｍ）で表される。ここで、Ｈは、そのクラスのハフマン符号であり、また、Ｍは、そのクラス内の量子化誤差値の１の補数表現である。この対（Ｈ，Ｍ）は、この一連のビット「Ｈ，Ｍ」として、いっしょに連結されるとき、接頭コードワードを表す。図で示されるとおり、この接頭コードワードは、復号化の処理を大幅に簡単にする。各量子化誤差値に対して、この等価コードワードが生成されると、統合された量子化誤差値と、それらの対応する等価コードワードを、画像圧縮テーブルに格納する（ステップ２４０）。さらに、次のステップは、等価コードワードごとに、等価コードワードのビット長さを格納することである（ステップ２５０）。
この（Ｈ，Ｍ）対で生成される等価コードワードは、可変長の接頭コードである。この等価コードワードは、１０進値としてテーブルに格納される。例えば、量子化されない誤差値２、２５、１００の等価コードワードが０、１０１１１、１１１０１０であれば、これらの等価コードワードを、それぞれ１０進値０、２３、５８として、バイトでテーブルに格納する。等価コードワード０、２３、５８が、実際には、それぞれ００００００００、０００１０１１１、００１１１０１０として、８ビット（バイト）で格納されるが、等価コードワード０に対しては、１ビットだけが有効である。同様に、等価コードワード２３に対しては、０００１０１１１の最後の５ビットだけが有効であり、また等価コードワード５８に対しては、００１１１０１０の最後の６ビットだけが有効である。それゆえ、すべての等価コードワードが、同一のビット数として最適に格納されるから、長さ情報は、ルックアップ・テーブルのメモリバイトから、可変長コードを取り出せることが要求される。この可変長の等価コードワードは、８ビット構成のバイトに、いっしょにパックされて、この圧縮ファイルに出力される。例えば、量子化誤差値は、９９、２５、−２、０、９、０、０、５５、１００であり、また出力コードは、１１１０１１、１０１１０、０、０、１０１０１、０、０、１１１０００、１１１０１１であると仮定しよう。これらの出力コードは、以下のように８ビット構成のバイトにパックされて、この圧縮ファイルに出力される。
0004468490.tif 000002
それゆえ、この長さ情報は、出力バイトを、復元時に正しく「アンパック」できるようにするために必要とされる。
画像圧縮テーブル（１つ、または複数）には、量子化誤差値のインデックスに加えて、量子化誤差値ごとに、等価コードワードと、等価コードワードの長さが入っている場合がある。すべてのカラープレーンに対しては、同一テーブルを利用できる。したがって、この画像圧縮テーブルは、せいぜい２N+1−１のインデックスまたはアドレスを有する。ここで、Ｎは、画像中の画素の各色成分（Ｒ，Ｇ，Ｂ）のビット数を示す。画像圧縮テーブルをあらかじめ編集する処置は、一度だけ行う必要があり、変更せずに、各カラープレーンに施すことができる。したがって、Ｒ，Ｇ，Ｂの圧縮処理は、単一の画像圧縮テーブルを共用できる。
この画像圧縮テーブルは、量子化誤差値用に等価コードワードを表すことにより、量子化処理と２進符号化処理を統合する。このテーブルは、テーブルのインデックスとして提示された量子化誤差コードごとに、等価コードワードを与えることで、量子化と２進符号化を統合している。したがって、個別の２進符号化のステップ体系は排除される。
図３は、本発明のさらに他の実施形態の流れ図である。
単一画像圧縮テーブルは、特定の画質または圧縮比を表している。テストと実験から、量子化誤差公式ｙ＝（ｘ−Ｃ）a＋Ｃでは、人間の視覚系統の応答から得られた「ａ」＝０．４５の値は、優れた視覚的無損失性を与えることが証明されている。このような視覚的無損失の画像圧縮は、色や形状などの受取った視覚刺激の人間の脳による「認識」を表すから、静止画像には優れている。さらに、このしきい値Ｃは、テストにより、３の値が適切であることが判明した。この公式の厳密さが、以下で説明される。異なる圧縮レベルが求められる場合には、「視覚的無損失」レベルを下げて、画像圧縮比を大きくする。
本発明の様々な実施形態が基礎を置いている人間の視覚認識系統は、目がその周囲から集めたものを解釈する脳と神経系統だけでなく、視覚系統（水晶体、角膜など）からも成っている。目と人間の視覚系統は、反射光に基づいて、カメラのように多量ではあるが、ただし、はるかに離散的でない一組の画像データを脳に送る。脳は、目が「取込んだ」ものを解釈する。この解釈は、人間が「見た」ものである。画像の精細度、鮮明度、色解像度は、脳内の視覚刺激を処理する部分の識別能力によって決まる。したがって、人間の目が、例えば１，０００，０００色しか区別できない場合、さらに多くの色でプリントされたか、または表示された画像は、それを人間に伝える目的では、無縁である。同様に、エッジ検出などの人間の視覚認識系統の他のいくつかの特性は、了解される場合には、デジタルカメラなどの用途向けに、画像圧縮方式を簡単にする目的で使用できる。
デジタルカメラの場合には、人間の視覚認識系統をモデル化すると、本発明の様々な実施形態に示される「視覚的無損失」の結果が得られることになる。量子化の公式ｙ＝（ｘ−Ｃ）a＋Ｃ（ここで、「ａ」は０．４５で、Ｃは３である）は、人間の視覚認識系統を静止画像に厳密にモデル化する。この誤差は、許容でき、またこれらのパラメータが利用される場合には、肉眼では事実上、区別できない。本発明は、様々な実施形態において、量子化をあらかじめ計算して、編集するように、ルックアップ・テーブルの利用を意図しているが、当業者は、人間の視覚認識のモデル化を、ここでは、ルックアップ・テーブルに基づかない手法（この場合、量子化が、オンザフライ式で計算される）に容易に採用できることになる。このような一手法は、ソフトウェア圧縮を含む場合があり、ここでは、コンピュータに組込んだアプリケーションプログラムが、コンピュータシステムにおいて、すでに記憶された画像に対して、あるいは、このアプリケーションプログラムに次々と送られる画像に対して、ｙ＝（ｘ−Ｃ）a＋Ｃ、またはその式の変形を用いて、視覚的無損失の圧縮を実行する。
異なるタイプの用途に対しては、異なる画像圧縮比と画質が望ましいものとなる。これを容易にするために、画像生成システムのユーザは、このテーブルをあらかじめ編集するデータ処理システム上で、あるいはカメラ／画像生成システムから、所望の画質および／または圧縮レベルを選択できる（ステップ３１０）。次に、このソフトウェアは、所望の画質／圧縮レベルに対応する画像圧縮テーブルがあれば、画像圧縮テーブルを格納できるメモリまたはテーブルに問い合わせる（ステップ３２０）。対応する画像圧縮テーブルがある場合、このデータ処理システムは、この対応するテーブルをカメラ／画像生成システムにロードする（ステップ３４０）。代わりの実施形態において、異なる画像圧縮テーブルを２つ以上、カメラ／画像生成システムに格納できるが、小形のデジタルカメラにおいて、ただ１つの最適なテーブルは、所与のいかなる時でも、充分であって、邪魔にならない。カメラ／画像生成システムが、複数テーブル機能を持つとすれば、画像生成システムにも、適正なテーブルがすでに入っているかどうか問い合わせることもある。
対応する画像圧縮テーブルがない場合には、次のステップは、量子化誤差値の公式ｙ＝（ｘ−Ｃ）a＋Ｃに対して、ガンマ「ａ」、しきい値Ｃを設定することである（ステップ３３０）。このガンマと、しきい値は、圧縮方式ごとに様々であるが、或る方式（圧縮比／画質）が要求される場合に利用できるように、すぐに作表される。次のステップは、所望の方式に対応するガンマとしきい値を使用して、新規の画像圧縮テーブルを編集することである（ステップ３３５）。この画像圧縮テーブルの編集は、図２に関して説明されている。
画像圧縮テーブルを位置付けるか、または編集すると、このテーブルがカメラにロードされる（ステップ３４０）。このテーブルをカメラにロードした後で、画像がカメラで圧縮される（ステップ３５０）。これらの画像は、選択された画質／圧縮比に相応する画質／圧縮比を持つことになる。もう１つの方法として、このような画質／圧縮比の選択は、この画像を利用する特定の用途に基づいて、データ処理システムまたは画像生成システムにより、自動的に現れる。
図４は、本発明の一実施形態により量子化誤差値を計算する流れ図である。
ガンマ「ａ」としきい値Ｃがすでに決定されていると仮定して、以下の手法を使用して、量子化誤差値を計算する。基本式ｙ＝（ｘ−Ｃ）a＋Ｃの適切な式は、ｘ（誤差値）の範囲によって決まる。ｘがＣよりも大きい（ステップ４１０にてチェックされる）場合には、式ｙ＝（ｘ−Ｃ）a＋Ｃが適用される。この式を適用するため、第１のステップは、中間値Ｉ1＝（ｘ−Ｃ）を計算することである（ステップ４１２）。次に、Ｉ1をａ乗して、Ｉ2をもたらす（ステップ４１４）。最後に、値Ｉ2にＣの値を加えて、Ｙ1が得られ、このＹ1は、正の量子化誤差値となる（ステップ４１６）。量子化誤差値ｙの整数部分だけが格納され、したがって、値ｙは、テーブル挿入の前に切捨てられることになっている（ステップ４１８）。
ｘが−Ｃよりも大きいが、ただし、Ｃ以下である（ステップ４２０にてチェックされる）場合には、ｙはゼロであると判定される（ステップ４２２）。
この誤差値が、−Ｃ以下に下がる（ステップ４３０にてチェックされる）場合には、次のステップは、誤差値の絶対値を取ることである（ステップ４３２）。次に、誤差値の絶対値からＣを差し引いて、中間値Ｊ1を算出する（ステップ４３４）。次に、Ｊ1にａ乗して、Ｊ2を得る（ステップ４３６）。次に、値ＣをＪ2に加えて、Ｊ3を形成する（ステップ４３８）。最後に、この誤差値が負の数であるから、この量子化誤差値も負となる。これは、Ｊ3を負にすることで得られる（ステップ４４０）。これらの量子化誤差値を利用して、画像の誤差を圧縮することで、画像を圧縮する。
図５は本発明の一実施形態によるサンプル値を持つ画像圧縮テーブルである。
図５のテーブルは、８ビットのカラープレーン値用のサンプル値を持っている。各カラープレーンＲ，Ｇ，Ｂは、それが８ビットから成る場合に、２４ビットの色解像度の画素で復元されると、画像となる。図５の画像圧縮テーブルは、３つすべてのカラープレーンに、等しく当てはまる。つまり、３つのカラープレーンがすべて、同一範囲の誤差値を持つからである。上述のとおり、画素と予測画素との可能な誤差値は、８ビットのカラープレーンを想定して、各カラープレーンに対して、−２５５〜＋２５５となる。図５の表は、量子化されるものとして、可能な５１１個の誤差値のうちの２８個を示している。本発明の一実施形態は、式ｙ＝（ｘ−Ｃ）a＋Ｃを用いて、量子化誤差値を計算する。この式において、ｘは誤差値（図５の１列目）であり、またｙは量子化誤差値（切捨てられる、図５の２列目）である。図５に示される量子化誤差値は、０．４５のガンマ「ａ」値と、３のしきい値Ｃに一致する。図５に示されるとおり、図４の手法（ａ＝０．４５とＣ＝３）を用いることにより、５１１個の誤差値が、わずか２５個の量子化値に圧縮された。これらの誤差値は、Ｒ、Ｇ、またはＢのただ１つの画素と関係があるが、補間法を利用して、隣接する画素を組合わせて、さらに高い（例えば、２４ビットの画素）解像度の画像にすることができる。
図５の２列目に示される量子化誤差値が、編集されると、その誤差値の分類を行うことができる。しきい値Ｃは、クラス数を特定することで、この分類を決定する。この場合、Ｃは３であり、そこで、クラス数は３である。第１のクラス、すなわちクラス０は、−ＣとＣの間（すなわち、この例において、−３と３の間）にある誤差値である。これらすべての誤差値は、図４の手法を用いて、０の量子化誤差値に一致する。第２のクラス、すなわちクラス３は、このように名付けられている。なぜなら、符号なしの量子化誤差値を、４〜７と、−４〜−７で符号化するために、最大３ビットが好ましいからである。次のクラス、すなわちクラス４は、符号化するのに４ビットを必要とする８〜１５と、−８〜−１５の量子化誤差値から成っている。
これらの量子化誤差値に対して、分類が達成されると、コードワードを構築できる。各量子化誤差値用の等価コードワードは、形式「ＨＭ」を取る。ここで、Ｈは、量子化誤差値が属するクラスのハフマン符号であり、また、Ｍは、その量子化誤差値の２進表現である。負の量子化誤差値は、２進形式を取る符号なしの数の２進補数のＭ値を呈する。このクラスとＭのハフマン符号は、連結されて、等価コードワードを形成する。第１の例として、３１の誤差値は、７の量子化誤差値（ａ＝０．４５とＣ＝３を用いて計算したとき）を持つ。７の量子化誤差値はクラス３に属する。「３」のハフマン符号は「１０」であり、したがって、Ｈは１０である。値７は、２進形式で、３ビットの１１１であり、したがって、Ｍは１１１である。こうして、７の量子化誤差値用の等価コードワードは、「ＨＭ」、すなわち１０１１１である。値「１０１１１」は、７の量子化誤差値の隣りに格納される。第２の例として、−１１９の誤差値は、−１１の対応する量子化誤差値を持つ。「−１１」は、クラス４に属し、したがって、Ｈ（「４」のハフマン符号）は１１（２進）である。Ｍは、符号なし１０進数１１の補数（すなわち「０１００」）である。したがって、この等価コードワードは、−１１の量子化誤差値に対して、「１１０１００」である。
量子化誤差値と等価コードワードはまた、−２５５〜２５５の可能なあらゆる量子化誤差値に対しても、編集される。上で考察されたとおり、等価コードワードを、通信転送にふさわしいデータ構造にパックするために、各等価コードワードの長さも格納すべきである。これらの等価コードワードは、量子化と符号化という伝統的な区別できる処理を統合することを表している。
さらに、この画像圧縮テーブルは、量子化誤差値の逆数も格納できる。画像を復元しようとするときには、逆量子化誤差値が利用される。この逆量子化誤差値は、公式Ｘinv＝（ｙ−Ｃ）a＋Ｃを用いて計算される。ここで、ｙは、量子化誤差値であり、またＸinvは、逆量子化誤差値である。これらの逆数値だけが、量子化の前にオリジナル誤差値に近い（例えば、２５５は、１５として量子化され、また２５３として逆にされる）が、これは、視覚的無損失な圧縮にはまったく充分である。つまり、導かれる誤差は、人間の視覚的認識システムでは感知できない。
図６は、本発明の一実施形態のシステム図である。
例示されるものは、コンピュータシステム６１０であり、これは、カメラ６３０に接続されたＰＣ（パーソナル・コンピュータ）などの任意の汎用または専用の計算機またはデータ処理マシンである。カメラ６３０は、デジタルカメラ、デジタル・ビデオカメラ、あるいは任意の画像取込み装置または画像生成システムであって、被写体６４０のセンサ画像を取込むために利用される。本質的には、取込まれた画像が、画像圧縮回路６３２で圧縮されて、画像記憶装置６３４（ＲＡＭ、あるいは、固定ディスク、ミニチュア・カードなどのような他の記憶装置）に効率的に格納されるようにしている。ほとんどのデジタルカメラにおいて、画像は、まず最初に蓄積されて、後でダウンロードされる。これにより、カメラ６３０は、さらに遅れることなく、すばやく次の被写体を取込むことができる。
本発明のこの実施形態における画像処理は、以下のように働く。まず最初に、画像圧縮テーブルは、まだ編集されていない場合には、コンピュータシステム６１０を用いて編集される。本発明の他の様々な実施形態に記述される手法は、ＰｅｎｔｉｕｍTM（インテル社の製品）などのプロセッサ６１２と、命令アドレスや結果データを格納／ロードするのに用いられるＲＡＭなどのメモリ６１１を使用して実行される。画像圧縮テーブルを編集するのに用いられるアプリケーションは、Ｃ＋＋などの言語で書かれたソース・プログラムからコンパイルされた実行可能ファイルである場合がある。この実行可能ファイルの命令は、量子化誤差値、等価コードワードを計算し、これら、および他の値にインデックスを付けて、ディスク６１８またはメモリ６１１に格納されるテーブルを作成するのに必要な命令と対応する。この記述された手法が開示されているので、画像圧縮テーブルを編集するプログラムを計算機に組込むことは、通常の当業者には明白であろう。
コンピュータシステム６１０は、プロセッサおよびメモリへの／からの情報転送を容易にするシステムバス６１３と、Ｉ／Ｏバス６１５に結合するブリッジ６１４を備えている。Ｉ／Ｏバス６１５は、ディスプレイ・アダプタ６１６などの様々なＩ／Ｏ装置、ディスク６１８、シリアルポートなどのＩ／Ｏポートを接続する。本発明では、Ｉ／Ｏ装置、バス、ブリッジの多くの上記組合せが利用でき、また図に示される組合せは、このような可能な組合せの１つを単に例示したものにすぎない。
このテーブルが編集されると、テーブルを、Ｉ／Ｏポート６１７を通じて送り、ＲＡＭ、すなわち画像圧縮回路６３２で利用されるメモリとして、画像圧縮回路６３２にロードすることができる。このテーブルは、ロードされると、その後、画像圧縮回路６３２で利用される。
被写体６４０の画像などの画像が取込まれると、この画像は、Ｒ，Ｇ，Ｂの画素により検出されて、これらの画素値が、画像圧縮回路６３２に送られる。画像圧縮回路６３２は、予測符号化などの画像圧縮方式を実行するＩＣと他の構成要素から成っている。画像圧縮回路６３２は、予測符号化の公式により初期誤差値を計算し、次に、対応する量子化誤差値と、この誤差値用の等価コードワードを両方とも探索し、それを、画像記憶装置６３４に格納する。これらの値を、画像圧縮テーブルの中で探索することにより、量子化と符号化のステップは、カメラで実行する必要はない。誤差値の量子化と符号化を実行するのに用いられる追加的な回路を回避することで、カメラの総費用を減らす。この画像に対して、あらゆる画素が処理されると、カメラ６３０は、次の画像を取込むことができる。ユーザまたはアプリケーションが、画像のダウンロードを要望／要求すると、パックされたコードワードとして画像記憶装置に格納された圧縮画像は、画像記憶装置６３４から、Ｉ／Ｏポート６１７に転送される。Ｉ／Ｏポート６１７は、図に示されたバス・ブリッジ階層（Ｉ／Ｏバス６１５〜ブリッジ６１４〜システムバス６１３）を使用して、コードワードをメモリ６１１に、または随意にディスク６１８に一時的に格納する。これらの圧縮画像は、適切なアプリケーション・ソフトウェア（またはハードウェア）により復元される。このアプリケーション・ソフトウェア（またはハードウェア）は、その実行のために、プロセッサ６１２を利用する場合がある。この画像圧縮テーブルは、コンピュータシステム上で編集されてしまうから、この画像圧縮テーブルを再使用すれば、このコードワードに対応する実誤差値を逆に「探索」することができる。これらの誤差値は、復元画像６５０を生成するために、逆予測符号化（または、他の対応する画像復元方式）において使用される。次に、復元画像６５０は、コンピュータシステム６１０が接続されるモニタ６２０上にディスプレイ・アダプタ６１６を使用して、視覚的に表現することができる。
「ａ」値が０．４５で、しきい値Ｃが３である画像圧縮テーブルが、編集されて、カメラ６３０に使用される場合に、復元画像６５０は、「視覚的に無損失」となる。この画像は、視覚的に無損失である。つまり、公式ｙ＝（ｘ−Ｃ）a＋Ｃは、画像圧縮テーブルの計算と編集に利用されるとき、人間の視覚系統をモデル化するからである。したがって、ユーザには、復元画像６５０は、適当な表示装置（モニタ６２０とアダプタ６１６）があれば、オリジナルの被写体６４０の外観と、ほぼ見分けのつかないように見えるであろう。同様に、カメラで取込まれた他の画像を復元し、モニタ６２０上に出力することができるが、それらの画像はそれぞれ、本発明の様々な実施形態の手法、および、その別法に従う場合には、視覚的に無損失の画質を維持することになる。
ここに記述される例示的実施形態は、本発明の原理を単に例示するためにのみ提供され、本発明の範囲を限定するものと受取られるべきではない。もっと適切に言えば、本発明の原理は、ここに記述される利点を得るために、また他の利点を得るためか、あるいは、他の目的も果たすために、広範なシステムに適用される。
【図１】
0004468490.tif 000003
【図２】
0004468490.tif 000004
【図３】
0004468490.tif 000005
【図４】
0004468490.tif 000006
【図５】
0004468490.tif 000007
【図６】
0004468490.tif 000008