(57)【要約】  【課題】  予測可能な精度の整数演算により完全に可逆な色変換を実現する。  【解決手段】  本発明のフォワード変換装置は、×２ブロック３０１、加算器３０２，３０５、減算器３０３，３０４、÷４ブロック３０６により、ｎビットのＲＧＢ各入力に対するフォワード色変換を行い、ｎビットのＹrev出力、ｎ＋１ビットのＵrev，Ｖrev出力を出す。この変換出力は例えば非損失性コーダーに入力されて圧縮された後に伸長され、伸長データのインバース変換により元のｎビットのＲＧＢデータが再生される。フォワード変換中に発生した切り上げ／切り下げは本発明のインバース変換装置で補償されるため、圧縮、伸長を繰り返しても誤差は累積しない。【選択図】        図４
2006025459.tif 000002
【特許請求の範囲】
【請求項１】
ｎビットのＧ，Ｒ及びＢ信号を入力して色空間変換を行い、ｎビットのＹrev信号、（ｎ＋１）ビットのＵrev及びＶrev信号を生成するフォワード変換装置であって、
前記ｎビットのＧ信号を乗算し、（ｎ＋１）ビットの信号を出力する乗算手段と、
前記ｎビットのＲ信号と前記ｎビットのＢ信号を加算して、（ｎ＋１）ビットの信号を出力する第１の加算手段と、
前記乗算手段の（ｎ＋１）ビットの出力信号と前記第１の加算手段の（ｎ＋１）ビットの出力信号を加算して、（ｎ＋２）ビットの信号を出力する第２の加算手段と、
前記第２の加算手段の（ｎ＋２）ビットの出力信号を除算して、ｎビットのＹrev信号を出力する除算手段と、
前記ｎビットのＲ信号から前記ｎビットのＧ信号を減算して、（ｎ＋１）ビットのＵrev信号を出力する第１の減算手段と、
前記ｎビットのＢ信号から前記ｎビットのＧ信号を減算して、（ｎ＋１）ビットのＶrev信号を出力する第２の減算手段と、
を有することを特徴とするフォワード変換装置。
【請求項２】
前記乗算手段は、ｎビットのＧ信号を１ビットシフトすることで該Ｇ信号を２倍し、（ｎ＋１）ビットとして出力する第１のシフトロジック手段からなり、
前記除算手段は、前記第２の加算手段の（ｎ＋２）ビットの出力信号を逆方向に２ビットシフトすることで該出力信号を４で割り算し、ｎビットとしてＹrev信号を出力する第２のシフトロジック手段からなる、
ことを特徴とする請求項１に記載のフォワード変換装置。
【請求項３】
ｎビットのＹrev信号、（ｎ＋１）ビットのＵrev及びＶrev信号を入力して逆色空間変換を行い、ｎビットのＧ，Ｒ及びＢ信号を生成するインバース変換装置であって、
前記（ｎ＋１）ビットのＵrev信号と前記（ｎ＋１）ビットのＶrev信号を加算して、（ｎ＋２）ビットの信号を出力する第１の加算手段と、
前記第１の加算手段の（ｎ＋２）ビットの出力信号を除算して、ｎビットの信号を出力する除算手段と、
前記ｎビットのＶrev信号から前記除算手段のｎビットの出力信号を減算して、（ｎ＋１）ビットの信号を出力する減算手段と、
前記減算手段の出力信号の（ｎ＋１）ビットを所定の値域にクリッピングして、ｎビットのＧ信号を出力する第１のクリップロジック手段と、
前記（ｎ＋１）ビットのＵrev信号と前記減算手段の（ｎ＋１）ビットの出力信号を加算して、（ｎ＋２）ビットの信号を出力する第２の加算手段と、
前記第２の加算手段の出力信号の（ｎ＋２）ビットを所定の値域にクリッピングして、ｎビットのＲ信号を出力する第２のクリップロジック手段と、
前記（ｎ＋１）ビットのＶrev信号と前記減算手段の（ｎ＋１）ビットの出力信号を加算して、（ｎ＋２）ビットの信号を出力する第３の加算手段と、
前記第３の加算手段の出力信号の（ｎ＋２）ビットを所定の値域にクリッピングして、ｎビットのＢ信号を出力する第３のクリップロジック手段と、
を有することを特徴とするインバース変換装置。
【請求項４】
前記除算手段は、前記第１の加算手段の（ｎ＋２）ビットの出力信号を逆方向に２ビットシフトすることで該出力信号を４で割り算し、ｎビットとして出力するシフトロジック手段からなる、
ことを特徴とする請求項３に記載のインバース変換装置。
【請求項５】
ｎビットのＧ，Ｒ及びＢ信号を入力して色空間変換を行い、ｎビットのＹrev信号、（ｎ＋１）ビットのＵrev及びＶrev信号を生成するフォワード変換装置であって、
前記ｎビットのＧ信号を２倍して、（ｎ＋１）ビットの信号を出力する乗算手段と、
前記ｎビットのＲ信号と前記ｎビットのＢ信号を加算して、（ｎ＋１）ビットの信号を出力する第１の加算手段と、
前記乗算手段の（ｎ＋１）ビットの出力信号と前記第１の加算手段の（ｎ＋１）ビットの出力信号を加算して、（ｎ＋２）ビットの信号を出力する第２の加算手段と、
前記第２の加算手段の（ｎ＋２）ビットの出力信号を４で割り算して、ｎビットのＹrev信号を出力する第１の除算手段と、
前記乗算手段の（ｎ＋１）ビットの出力信号から前記第１の加算手段の（ｎ＋１）ビットの出力信号を減算して、（ｎ＋２）ビットの信号を出力する第１の減算手段と、
前記第１の減算手段の（ｎ＋２）ビットの出力信号を２で割り算して、（ｎ＋１）ビットのＵrev信号を出力する第２の除算手段と、
前記ｎビットのＲ信号から、前記ｎビットのＢ信号を減算して、（ｎ＋１）ビットのＶrev信号を出力する第２の減算手段と、
を有することを特徴とするフォワード変換装置。
【請求項６】
ｎビットのＹrev信号、（ｎ＋１）ビットのＵrev及びＶrev信号を入力して逆色空間変換を行い、ｎビットのＧ，Ｒ及びＢ信号を生成するインバース変換装置であって、
前記（ｎ＋１）ビットのＵrev信号の最下位ビット（ＬＳＢ）を入力して反転したＬＳＢ１ビットを出力するＮＯＴ手段と、前記NOT手段の出力１ビットと前記（ｎ＋１）ビットのＶrev信号のＬＳＢ１ビットとを入力してＡＮＤ信号１ビットを出力するＡＮＤ手段と、前記ＡＮＤ手段の出力１ビットと前記Ｕrev信号のＬＳＢ１ビットとを結合して２ビットとする結合手段と、前記結合した２ビットを前記Ｕrev信号の（ｎ＋１）ビットと加算して、（ｎ＋２）ビットの信号を出力する第１の加算手段と、前記第１の加算手段の（ｎ＋２）ビットの出力信号を２で割り算して、（ｎ＋１）ビットの信号を出力する第１の除算手段と、前記ｎビットのＹrev信号と前記第１の除算手段の（ｎ＋１）ビットの出力信号を加算して、（ｎ＋２）ビットの信号を出力する第２の加算手段と、前記第２の加算手段の出力信号の（ｎ＋２）ビットを所定の値域にクリッピングして、ｎビットのＧ信号を出力する第１のクリップロジック手段と、
前記（ｎ＋１）ビットのＶrev信号を２で割り算して、ｎビットの信号を出力する第２の除算手段と、前記ｎビットのＧ信号と前記第２の除算手段のｎビットの信号を加算して、（ｎ＋１）ビットの信号を出力する第３の加算手段と、前記第３の加算手段の（ｎ＋１）ビットの出力信号から前記（ｎ＋１）ビットのＵrev信号を減算して、（ｎ＋２）ビットの信号を出力する第１の減算手段と、前記第１の減算手段の出力信号の（ｎ＋２）ビットを所定の値域にクリッピングして、ｎビットのＲ信号を出力する第２のクリップロジック手段と、
前記（ｎ＋１）ビットのＶrev信号を１と加算して、（ｎ＋２）ビットの信号を出力する第４の加算手段と、前記第４の加算手段の（ｎ＋２）ビットの出力信号を２で割り算して、（ｎ＋１）ビットの信号を出力する第３の除算手段と、前記ｎビットのＧ信号から前記第３の除算手段の（ｎ＋１）ビットの出力信号を減算して、（ｎ＋２）ビットの信号を出力する第２の減算手段と、前記第２の減算手段の（ｎ＋２）ビットの出力信号から前記（ｎ＋１）ビットのＵrev信号を減算して、（ｎ＋２）ビットの信号を出力する第３の減算手段と、前記第３の減算手段の出力信号の（ｎ＋２）ビットを所定の値域にクリッピングして、ｎビットのＢ信号を出力する第３のクリップロジック手段と、
を有することを特徴とするインバース変換装置。
【請求項７】
ｎビットのＹrev信号、（ｎ＋１）ビットのＵrev及びＶrev信号を入力して逆色空間変換を行い、ｎビットのＧ，Ｒ及びＢ信号を生成するインバース変換装置であって、
前記（ｎ＋１）ビットのＵrev信号の最下位ビット（ＬＳＢ）を入力して反転したＬＳＢ１ビットを出力するＮＯＴ手段と、前記NOT手段の出力１ビットと前記（ｎ＋１）ビットのＶrev信号のＬＳＢ１ビットとを入力してＡＮＤ信号１ビットを出力するＡＮＤ手段と、前記ＡＮＤ手段の出力１ビットと前記Ｕrev信号のＬＳＢ１ビットとを結合して２ビットとする結合手段と、前記結合した２ビットを前記Ｕrev信号の（ｎ＋１）ビットと加算して、（ｎ＋２）ビットの信号を出力する第１の加算手段と、前記第１の加算手段の（ｎ＋２）ビットの出力信号を２で割り算して、（ｎ＋１）ビットの信号を出力する第１の除算手段と、前記ｎビットのＹrev信号と前記第１の除算手段の（ｎ＋１）ビットの出力信号を加算して、（ｎ＋２）ビットの信号を出力する第２の加算手段と、前記第２の加算手段の出力信号の（ｎ＋２）ビットを所定の値域にクリッピングして、ｎビットのＧ信号を出力する第１のクリップロジック手段と、
前記ｎビットのＧ信号から前記（ｎ＋１）ビットのＵrev信号を減算して、（ｎ＋２）ビットの信号を出力する第１の減算手段と、前記（ｎ＋１）ビットのＶrev信号を２で割り算して、ｎビットの信号を出力する第２の除算手段と、前記第１の減算手段の（ｎ＋２）ビットの出力信号と前記第２の除算手段とのｎビットの出力信号を加算して、（ｎ＋３）ビットの信号を出力する第３の加算手段と、前記第３の加算手段の出力信号の（ｎ＋３）ビットを所定の値域にクリッピングして、ｎビットのＲ信号を出力する第２のクリップロジック手段と、
前記（ｎ＋１）ビットのＶrev信号を１と加算して、（ｎ＋２）ビットの信号を出力する第４の加算手段と、前記第４の加算手段の（ｎ＋２）ビットの出力信号を２で割り算して、（ｎ＋１）ビットの信号を出力する第３の除算手段と、前記第１の減算手段の（ｎ＋２）ビットの出力信号から前記第３の除算手段の（ｎ＋１）ビットの出力信号を減算して、（ｎ＋３）ビットの信号を出力する第２の減算手段と、前記第２の減算手段の出力信号の（ｎ＋３）ビットを所定の値域にクリッピングして、ｎビットのＢ信号を出力する第３のクリップロジック手段と、
を有することを特徴とするインバース変換装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ圧縮及び伸長システムの分野に係り、特に、色空間を用いる非損失性及び損失性の圧縮／伸長システムに関する。より詳細には、本発明は可逆色変換装置に関する。
【背景技術】
【０００２】
色空間は３次元以上のベクトル空間内の領域である。何らかの基底、例えば３個の一次独立な３次元ベクトルで色座標系を定義する。一般に利用される色座標系はＲ（赤），Ｇ（緑），Ｂ（青）であり、それぞれ中心波長で定義される。３次元色座標系が与えられたとき、別の３次元線形色座標系を可逆の（正則の）３×３の行列により表すことができる。例えば、Ｙ，Ｉ，Ｑ色座標系は、Ｒ，Ｇ，Ｂを用いて次の行列により定義される。
【０００３】
【数１】
2006025459.tif 000003
【０００４】
なお、すべての色空間が線形であるわけではない。例えば、人間の視覚系をより的確にモデル化するため、ベクトルを非線形的に（例えば対数的に）リスケールしようとする色変換もある。その例がＣＩＥ  Ｌ*ｕ*ｖとＬ*ａ*ｂである。
【０００５】
様々な理由で様々な色座標系が定義されている。例えば、データをモニターに表示する場合、殆どのデジタル画像は固定した値域、例えば８ビット／座標のＲ，Ｇ，Ｂ座標系を使うのが便利である。色の非相関性を要求する用途、例えば圧縮の場合、Ｒ，Ｇ，Ｂは最適というにはほど遠い。上述のＹ，Ｉ，Ｑのような他の色座標系のほうが適当である。
【０００６】
印刷向け画像には、ＣＹＭ（シアン，黄，マゼンタ）のような減色系が時々利用される。用途によっては、超完備の４次元色空間、例えばＣＭＹＫ（シアン，黄，マゼンタ，黒）が利用される。
【０００７】
データ圧縮は、大量のデータの記憶及び伝送のために極めて有用なツールである。文書のファクシミリ送信のような画像伝送に必要な時間は、圧縮を使って画像再生に必要なビット数を減らすと飛躍的に短縮される。
【０００８】
従来より、多くの異なったデータ圧縮手法がある。圧縮手法は大きく２つの種類、すなわち損失性符号化と非損失性符号化に分類できる。損失性符号化は情報の損失をもたらす符号化を含むため、原データを完全に復元できる保証はない。損失性圧縮の目標とするところは、原データとの違いが目障りであったり目立たないようにすることである。非損失性圧縮では、全ての情報が保存され、データは完全に復元できるような方法で圧縮される。
【０００９】
非損失性圧縮では、入力シンボル又は輝度データが出力符号語へ変換される。入力には画像データ、音声データ、一次元データ（例えば時間的に変化するデータ）、二次元データ（例えば２空間方向に変化するデータ）、あるいは多次元／多重スペクトルデータが含まれであろう。圧縮がうまくいけば、符号語は入力シンボル（又は輝度データ）数より少ないビットで表現される。非損失性符号化法には、辞書符号化法（例えばＬｅｍｐｅｌ−Ｚｉｖ符号化法）、ランレングス符号化法、算術符号化法、エントロピー符号化法が含まれる。非損失性画像圧縮では、圧縮は予測又はコンテキスト及び符号化がベースになっている。ファクシミリ圧縮用ＪＢＩＧ規格と連続階調画像用ＤＰＣＭ（差動パルス符号変調−ＪＰＥＧ規格のオプション）は画像用の非損失性圧縮の例である。損失性圧縮では、入力シンボル又は輝度データは量子化されてから出力符号語へ変換される。量子化する目的は、適切な特徴量を保存する一方で重要度の低いデータは除去することである。損失性圧縮システムはしばしば、量子化に先だってエネルギー集中のための変換を利用する。ベースラインＪＰＥＧは画像データ用損失性符号化法の一例である。
【００１０】
従来、色座標系間変換が量子化と一緒に損失性圧縮のために利用されてきた。実際、ＣＣＩＲ  ６０１−１（ＹＣRＢR）のように意図的に損失性とした色空間もある。ある種の非損失性システム又は非損失性／損失性システムにおいては、変換の可逆性と効率が主たる要件である。別の非損失性／損失性システムでは、可逆変換の効率に加えて、色の非相関性も一つの要因かもしれない。例えば、上記３×３行列は、そのエントリーが非整数であるため損失性圧縮にしか役に立たないので、非相関性が要求される時には圧縮と伸長を繰り返す間に誤差を増加させるであろう。また、下位ビットに対しては、この３×３行列を適用するのは好ましくない。すなわち、この３×３行列を適用して必要な精度を得るためには、かつ、その後に逆処理を実行可能であって下位ビットを再現できるようにするためには、余分なビットを用いる必要がある。
【００１１】
色空間変換を行う時に、数値精度に関する問題が生じる。例えば、８ビットが入力される場合、必要な変換空間は一般に１０ビット又は１１ビットであり、また、安定な色空間を得るためには、内部計算でそれ以上に高い精度が必要である。画像がＲＧＢ色空間から変換されて圧縮され、そして伸長されてＲＧＢ色空間に戻されるという処理が、不十分な精度で繰り返し適用されると、誤差が累積する結果、元の色と最終的な色とが一致しなくなるであろう。これは、色ドリフト又は色空間が不安定である結果といわれる。
【発明の開示】
【発明が解決しようとする課題】
【００１２】
本発明の目的は、画像データに対する可逆色変換装置を提供することにある。本発明のもう一つの目的は、整数演算で可逆色変換を実現する装置を提供することにある。本発明の他の目的は、非損失性圧縮／伸長プロセス及びシステムの一部として利用できる可逆色変換装置を提供することにある。本発明の上記目的及びその他の目的は、以下の説明によって明白になろう。
【課題を解決するための手段】
【００１３】
本発明の色変換手段は、完全に可逆であり、非損失性圧縮／伸長プロセス及びシステムの一部として利用できる。本発明によれば、予測可能な精度の整数演算で、完全に可逆な色変換が可能である。
【００１４】
以下の説明において、Ｙ，Ｕ，Ｖなる表記は、Ｒ＝Ｇ＝Ｂで定義されるグレースケール画像上でＹ＝Ｒ＝Ｇ＝Ｂ，Ｕ＝０，Ｖ＝０のレスポンスを持つ全ての色座標のために用いられる。座標が可逆のときには、Ｙrev，Ｕrev，Ｖrevなる表記が用いられる。ＲＧＢも標準的なＲＧＢ色座標系に限定されるわけではなく、３つの座標によって表現される色座標系を指すにすぎない。ＲＧＢ以外の座標系では、Ｇが最高の情報を持つ成分として用いられる。
【００１５】
本発明は可逆色変換が可能なフォワード変換及びインバース（逆向きの）変換を含む。説明のために、必ずしも効率的かつ可逆ではない変換についてまず述べる。以下において、変換の一例を３×３行列として下に述べる。この行列Ｍは次の色座標系に基づいている。
【００１６】
【数２】
2006025459.tif 000004
【００１７】
第１行の係数を合計すると１になり、他の２行は合計が０であることに注目されたい。第１行が合計すると１になり、第２行と第３行が合計すると０になるのは、グレースケール画像に対する適切なレスポンスを保証するためである（これは上に述べた）。また、本発明においては、この行列の行列式Ｄ（行列Ｍ）は−１であることにも注目されたい。
【００１８】
本発明の説明を続けると、上記行列Ｍの一つの具体例は次式である。
【００１９】
【数３】
2006025459.tif 000005
【００２０】
本発明のフォワード変換の一実施例を構成する可逆近似は次式により定義される。
【００２１】
【数４】
2006025459.tif 000006
【００２２】
【数５】
2006025459.tif 000007
【００２３】
なる記号は切り捨てて最も近い整数に丸めること、すなわち切り下げることを意味し、時に床関数と呼ばれる。同様に、
【００２４】
【数６】
2006025459.tif 000008
【００２５】
なる記号は最も近い整数へ切り上げて丸めることを意味する。これらの可逆式は、Ｙrevの式に整数を４で割る演算が含まれるため近似式である。
【００２６】
丸め又は切り下げが用いられるとしても、上記式は可逆色変換を表す。次の式から当該変換が可逆であることが証明される。
【００２７】
【数７】
2006025459.tif 000009
【００２８】
この式が可逆であるという証明を続ける。まず次式から始める。
【００２９】
【数８】
2006025459.tif 000010
【００３０】
この式は床関数を用いないで次のように書くことができる。
【００３１】
【数９】
2006025459.tif 000011
【００３２】
ここで、ｅは打ち切り誤差で、０，１，２又は３である。
【００３３】
上式を打ち切り誤差ｅについて解くため、ＵrevとＶrevの式を加算すると次式が得られる。
【００３４】
【数１０】
2006025459.tif 000012
【００３５】
この式を上記（１）式から引いて整理すると次の式が得られる。
【００３６】
【数１１】
2006025459.tif 000013
【００３７】
打ち切り誤差ｅは０，１，２又は３のみであるから、その表現のために最下位の２ビット（ＬＳＢ）しか使われない。因数４Ｇ及び４Ｙrevは、それらビットに寄与しない。次に、この式にモジュロ（ＭＯＤ）４の関数を適用する。すなわち、
【００３８】
【数１２】
2006025459.tif 000014
【００３９】
これは次のように書くことができる。
【００４０】
【数１３】
2006025459.tif 000015
【００４１】
打ち切り誤差ｅを表す本式を上記（３）式に代入すると、次のようになる。
【００４２】
【数１４】
2006025459.tif 000016
【００４３】
この（６）式の両辺を４で割ることにより、本質的にＬＳＢを排除する。すなわち、ＵrevとＶrevの２つのＬＳＢを０で置換する。そして、この式をＧについて解く。すなわち、
【００４４】
【数１５】
2006025459.tif 000017
【００４５】
別の実施例においては、本発明は次の色座標に基づいた色変換を実行する。
【００４６】
【数１６】
2006025459.tif 000018
【００４７】
この行列は次の式によって表現できる。
【００４８】
【数１７】
2006025459.tif 000019
【００４９】
本発明のフォワード変換の一実施例を構成する可逆近似は次式で与えられる。
【００５０】
【数１８】
2006025459.tif 000020
【００５１】
可逆性は、Ｇ成分を初めに復元する構成的算法により証明される。Ｇ成分が決まったならば、Ｒ入力とＢ入力を決定できる。一実施例では、Ｇ成分はルックアップテーブル（ＬＵＴ）を使って決定される。Ｇ成分はＹrev＋（Ｕrev＋ｘ）／２に等しい。ただし、ＬＵＴ値（非線形値である）がｘに代入される。
【００５２】
【表１】
2006025459.tif 000021
【００５３】
なお、上記テーブル１はロジックつまりハードウエア又はソフトウエア、あるいはその組合せにより実現してよい。
【００５４】
テーブル１からＧを求めた後、ＲとＢは次の通り復元される。
【００５５】
【数１９】
2006025459.tif 000022
【００５６】
可逆性の証明を説明するため、フォワード変換の式を繰り返す。２つの割り算があるため、２つの誤差を考慮しなければならない。
【００５７】
【数２０】
2006025459.tif 000023
【００５８】
これらの式は次のように書くことができる。
【００５９】
【数２１】
2006025459.tif 000024
【００６０】
ここで１番目の打ち切り誤差ｅ＝０，１，２，３である。
【００６１】
【数２２】
2006025459.tif 000025
【００６２】
ここで２番目の打ち切り誤差ｆ＝０，１である。
【００６３】
【数２３】
2006025459.tif 000026
【００６４】
次に、（８）式と（９）式を加算すると次式が得られる。
【００６５】
【数２４】
2006025459.tif 000027
【００６６】
２番目の打ち切り誤差ｆは、他がすべて偶数であるので、（Ｖrev）ＭＯＤ２に
設定される。
【００６７】
（７）式と（８）式を加算すると、次の式が得られる。
【００６８】
【数２５】
2006025459.tif 000028
【００６９】
ｅとｆのＬＳＢは同一である。他はすべて偶数であるからである。
【００７０】
１番目の打ち切り誤差について解くと、次の等式が得られる。
【００７１】
【数２６】
2006025459.tif 000029
【００７２】
そして、Ｕrevとｆは既に分かっている。
ｅとｆが分かったので、Ｇを求めれば、
【００７３】
【数２７】
2006025459.tif 000030
【００７４】
となる。そして、ＬＵＴを利用して（ｅ＋ｆ）／２の値を得ることができる。
【００７５】
ＶrevのＬＳＢ＝０⇒ｆ＝０ならば、（２Ｕrev＋ｅ）／４          （１２）
ＵrevのＬＳＢ＝０ならば、ｅ＝０⇒０（ＬＵＴ値）
ＵrevのＬＳＢ＝１ならば、ｅ＝２⇒１（ＬＵＴ値）
ＶrevのＬＳＢ＝１⇒ｆ＝１、そして
ＵrevのＬＳＢ＝０ならば、ｅ＝３，ｆ＋ｅ＝４⇒２（ＬＵＴ値）
ＵrevのＬＳＢ＝１ならば、ｅ＝１，ｆ＋ｅ＝２⇒１（ＬＵＴ値）
前記変換式を使って得られるＲＧＢ値とＹＵＶ値の例を下に示す。
【００７６】
【表２】
2006025459.tif 000031
【００７７】
なお、
【００７８】
【数２８】
2006025459.tif 000032
【００７９】
は−１である。というのは、
【００８０】
【数２９】
2006025459.tif 000033
【００８１】
は負の無限大へ向かって丸められ、０へは丸められないからである。以上に検討したことを踏まえ、当業者は他の可逆色空間用のフォワード変換及びリバース変換を導き出すことができよう。
【発明の効果】
【００８２】
本発明によれば、完全に可逆な色変換のためのフォワード変換及びインバース変換装置を実現できる。圧縮／伸長のプロセス又はシステムの一部として適した色変換装置を実現できる。予測可能な精度の整数演算により、完全に可逆な色変換を実現できる。本発明の色変換装置を用いることにより、圧縮、伸長を繰り返しても誤差の累積しない圧縮／伸長システムを実現できる。
【発明を実施するための最良の形態】
【００８３】
本発明の変換装置について述べる。以下の本発明の詳細説明においては、本発明を十分理解してもらうため多くの具体例を示す。しかしながら、これらの具体例によらずに本発明を実施し得ることは当業者には明白であろう。また、周知の構造及びデバイスは、本発明をいたずらに難解にしないため、詳細には示さず、ブロック図で示す。
【００８４】
以下の詳細説明において、コンピュータ内部のデータビットに対する操作のアルゴリズム及び記号的表現によって提示される部分もある。これらのアルゴリズム記述及び記号的表現は、データ処理分野の当業者により研究の内容を他の当業者に最も効率よく伝えるために用いられる手段である。あるアルゴリズムがあって、それが概ね所望の結果に至る矛盾のないステップ系列であるとする。これらのステップは、物理量を実際に操作する必要のあるステップである。必ずというわけではないが、通常、これらの物理量は記憶、伝送、結合、比較、その他の操作が可能な電気的又は磁気的な信号の形をとる。主に慣用上の理由からであるが、これらの信号をビット、値、要素、シンボル、文字、用語、数等と呼ぶのが時に都合がよいことが分かっている。
【００８５】
しかし、これらの用語及び類似の用語は全て、それにふさわしい物理量に関連付けられるべきであり、また、それら物理量に当てはめられた単なる便宜上のラベルにすぎないことに留意すべきである。以下の説明から明らかなように、特に断らない限り、本発明全体にわたって、”処理””演算””計算””判定””表示”等々の用語を用いて論じることは、コンピュータシステムのレジスタ及びメモり内の物理的（電子的）な量として表現されたデータを処理し、コンピュータシステムのメモリやレジスタあるいは同様の情報記憶装置、情報伝送装置もしくは表示装置の内部の同様に表現された他のデータへ変換する、コンピュータシステムや同様の電子的演算装置の作用及びプロセスを指すことを理解されたい。
【００８６】
本発明は、本明細書に述べる操作を実行するための装置とも関連する。この装置は、所要の目的のため専用に作ってもよいし、汎用コンピュータを内蔵プログラムにより選択的に駆動又は再構成したものでもよい。本明細書に提示されるアルゴリズム及び表示は、本質的に、いかなる特定のコンピュータ、その他装置とも関係がない。各種汎用マシンを本明細書に述べるところに従ったプログラムで利用してもよく、あるいは、必要なステップの実行のために、より特化した装置を作る方が好都合かもしれない。これら様々なマシンに必要な構造は以下の説明から理解されよう。さらに、本発明は、いかなる特定のプログラミング言語とも関連付けずに説明する。本明細書に述べるように、本発明の教えるところを実現するために色々なプログラミング言語を使用し得ることが理解されよう。
【００８７】
本発明適用システムの概要
図１は本発明適用システムの一実施例のブロック図である。この本発明適用システムは、全部（gamut）マッチング又は色変換のサブシステムを用いて、あるソースのデータをデスティネーション装置に表示できるようにし又はデスティネーション装置用に処理できるようにする。すなわち、この本発明適用システムは、ある特定の色空間のデータのビジュアル表現を提供し、又はデータをデスティネーション装置用に処理する。
【００８８】
図１において、スキャナ１０１、カメラ１０２、レンダリングデータ１０３及びネガ１１１のような多くのソースが示されている。これらのソースはそれぞれ色データを発生する。一実施例では、スキャナ１０１はＲＧＢデータを発生するが、カメラ１０２はＲＧＢ又はフィルム特有のカラーデータを発生する。レンダリングデータ１０３はＲＧＢ又は他の色空間のデータであろう。ネガ１１１はＣＹＭデータを発生する。なお、様々なデータソースが示されているが、本システムは、１つ、２つ又は３つ以上のデータソースを用いることができる。これらのデータソースはそれぞれフォワード色空間変換器１０４Ａ，１０４Ｂ，１０４Ｃ，１０４Ｄ，．．．を含む色圧縮システムにデータを供給する。本システムに含まれる色空間変換器は、それより多くても少なくてもよい。
【００８９】
この本発明適用システムは色空間データを、完全に可逆で、かつ整数演算で実施できるように変換する。すなわち、変換された色空間データを逆変換することにより、フォワード変換プロセス中に切り上げ又は切り下げが生じたとしても、存在していたデータを全て得ることができる。
【００９０】
フォワード色空間変換器１０４Ａ〜１０４Ｄは、データを非損失性コーダー１０５Ａが符号化できるように変換する。なお、このコーダー１０５Ａは１つ以上の非損失性コーダーを意味するかもしれない。フォワード色空間変換器１０４Ａ〜１０４Ｄは、色空間データを、非損失性コーダー１０５Ａでの圧縮が簡単になる形に変換する。非損失性コーダー１０５Ａは例えば、ＪＰＥＧの非損失性オプション、ＪＢＩＧ、Ｌｅｍｐｅｌ−Ｚｉｖ、算術、ハフマン、非損失性ウエーブレット等々の符号化法によるものである。
【００９１】
この本発明適用システムは、反対色空間への直接的レンダリング１１２又はディスク若しくはチャネル１１３からカラーデータを取り込むこともできる。
【００９２】
なお、フォワード色空間変換器１０４Ａ〜１０４Ｃにより変換された色空間データを圧縮し、その後に伸長することができるように、非損失性コーダー１０５Ａはエンコーダー部とデコーダー部を含む。さらに、非損失性コーダー１０５Ａは、エンコーディング動作とデコーディング動作の間、すなわち圧縮動作と伸長動作との間のデータを扱うチャネル又はメモリ機構も含むかもしれない。
【００９３】
非損失性コーダー１０５Ａの出力は、１つ以上のインバース色空間変換器１０６Ａ，１０６Ｂ，１０６Ｃ，．．．の入力に接続される。これらのインバース色空間変換器１０６Ａ〜１０６Ｃは、色空間データを変換してフォワード色空間変換器１０４Ａ〜１０４Ｃが受け取った時の元の形へ戻す。この際に、フォワード変換の一部として発生した切り上げ又は切り下げが補償される。このように、フォワード色空間変換器１０４Ａ〜１０４Ｄ、コーダー１０５及びインバース色空間変換器１０６Ａ〜１０６Ｃからなるシステム部分は、色圧縮サブシステムを構成する。
【００９４】
インバース色空間変換器１０６Ａ〜１０６Ｃの出力は、必要ならば変換器１０７Ａ，１０７Ｂ，１０７Ｃにそれぞれ接続してもよい。変換器１０７Ａ〜１０７Ｃは、インバース色空間変換器１０６Ａ〜１０６Ｃの出力データをシステムの出力装置に用いられる装置固有の色空間へ変換できる装置固有変換器である。すなわち、変換器１０７Ａ〜１０７Ｃは装置用の色変換を行う。この色変換は全部マッチング又は他の色空間変換もしくは色選択変換であろう。色圧縮する前にターゲット出力装置が分かっているならば、フォワード色空間変換（１０４）の前に同様のオプションの色補正（１２０）を行うことができる。
【００９５】
変換器１０７Ａの出力はビデオディスプレイ１０８に接続される。変換器１０７Ｂの出力は、データのハードコピー・ビジュアル表現を提供するプリンタ／コピア１０９に接続される。変換器１０７Ｃの出力はフィルム出力１１０に接続される。入力ソースの場合と同じく、デスティネーション装置は図１に示したよりも多くても少なくてもよい。
【００９６】
なお、かかるシステムは、美術品保存、医療画像（例えば脈管撮影像）、プリプレス(pre-press)、レンダリング・グラフィックス、色管理システム（Ａpple社のＣolorＳyncシステム（商標）、Ｋodak社のＰrecious  Ｃolorシステム（商標）、ＥＦＩ社のＣＭＳシステム（商標）等）の内部における圧縮、グラフィックス及びスポットカラー（spot color）、科学用デジタルイメージ、法律関係のイメージ、ランドサット、リモートセンシング等々の用途があろう。
【００９７】
図２は損失性システムを示す。この損失性システムは、図１の非損失性システムと同じ要素を多く含む。ただし、非損失性コーダー１０５Ａは損失性コーダー１０５Ｂに置き換えられている。その動作は、損失性符号化である点を別にすれば図１のシステムと同様である。このようなシステムは多くの用途があり、デジタルビデオ、マルチメディア、デジタルカメラ、ＪＰＥＧ圧縮システム、ベクトル量子化、フラクタル圧縮、ウエーブレット圧縮、変換圧縮（例えばブロックベースのオーバーラップ変換圧縮）のコスト低減をもたらす。
【００９８】
本発明適用の色圧縮サブシステムの概要
本発明は可逆色変換が可能である。以下に、フォワード変換装置とリバース変換装置を含み、可逆色変換を行う２つの異なった変換システムを説明する。これら変換装置は、予測可能な精度の整数演算で完全に可逆である。すなわち、フォワード変換時に切り上げ又は切り下げが生じても、それはインバース変換を行う時に補正可能である。なお、以下に述べる２つの変換システムが全てではなく、本発明の教えるところは多くの色座標系に適用し得るものである。
【００９９】
上に述べたように、本発明はエンコーディング部とデコーディング部を持つ圧縮・伸長システムに組み込むことができる。そのようなシステムを図３に示す。エンコーディング部は入力データをエンコードして圧縮データを生成する働きをし、デコーディング部は前にエンコードされたデータをデコードし元の入力データの復元データを作り出す役割をする。圧縮の前のエンコーディング部で、色変換が行われる。同様に、伸長後のデコーディング部で再び色変換が行われる。
【０１００】
圧縮・伸長システムへの入力データは画像（静止画又は動画）、グラフィックスデータ等、色々な種類のものであろう。一実施例ではデータはデジタル信号データであるが、デジタイズされたアナログデータや、その他の形式のものも可能である。データソースはエンコーディング部及び／又はデコーディング部のためのメモリ又はチャネルであろう。そのような本発明を組み込んだシステムは、非損失性圧縮／伸長システムを構成することができ、あるいは損失性圧縮／伸長を行うように構成することもできる。
【０１０１】
本発明において、エンコーディング部及び／又はデコーディング部の構成要素は、コンピュータシステムで用いられるようなハードウエア又はソフトウエアにより実現し得る。
【０１０２】
本発明のフォワード変換装置及びリバース変換装置
図４は第１実施例のフォワード変換装置の一例のブロック図である。図４に示すフォワード変換装置は、第１の色空間からのデータが圧縮を施される前に第２の色空間へ変換される圧縮系の一部であるかもしれない。それは、第２の色空間のデータの方が良好な圧縮を達成し得る場合であろう。
【０１０３】
図４において、フォワード変換装置３００は３つの入力Ｒ，Ｇ，Ｂを持ち、３つの出力Ｙrev，Ｕrev及びＶrevを出す。一実施例では、Ｒ，Ｇ，Ｂの各入力は８ビット長である。なお、本発明は他のビット長（例えば１０，１１，．．．３２，．．）の入力用に構成することもできる。ＲＧＢ入力が８ビットの場合、Ｙrev出力は８ビットであり、ＵrevとＶrevの出力は９ビット長である。
【０１０４】
フォワード変換装置３００は、×２ブロック３０１、加算器３０２，３０５、減算器３０３，３０４、÷４ブロック３０６からなる。一実施例では、それらの乗算と除算はハードワイヤド・シフトで実現され、したがってハードウエアコストはほとんどかからない。
【０１０５】
×２ブロック３０１はｎビットのＧ入力を２倍する。一実施例では、×２ブロック３０１は、ｎビットを１ビットだけ左へシフトし（ビットが左（ＭＳＢ）から右へ（ＬＳＢ）へ配列されている場合）乗算を達成するシフトロジックからなる。シフト結果はｎ＋１ビットであり、これは加算器３０５の一つの入力へ送られる。
【０１０６】
加算器３０２はｎビットのＲ入力をｎビットのＢ入力と加算し、（ｎ＋１）ビットの出力を出す。加算器３０２の（ｎ＋１）ビット出力は、加算器３０５により、×２ブロック３０１の出力と加算される。加算器３０５の出力は（ｎ＋２）ビット数であり、これは÷４ブロック３０６の入力に接続される。
【０１０７】
÷４ブロック３０６は（ｎ＋２）ビット入力を４で割り、ｎビットの出力を発生する。このｎビット出力はフォワード変換装置３００のＹrev出力となる。
【０１０８】
一実施例では、÷４ブロック３０６はシフトロジックからなり、加算器３０５の出力を２ビット右へシフトすることにより除算を行う（ビットが左（ＭＳＢ）から右（ＬＳＢ）へ配列されている場合）。
【０１０９】
減算器３０３はｎビットのＲ入力からｎビットのＧ入力を引き算することにより、フォワード変換装置３００のＵrev出力を表す（ｎ＋１）ビット数を出す。
【０１１０】
減算器３０４はｎビットのＢ入力からｎビットのＧ入力を引き算することにより、フォワード変換装置３００の（ｎ＋１）ビットの出力を発生する。この加算器３０４の（ｎ＋１）ビット出力はフォワード変換３００のＶrev出力を表す。
【０１１１】
フォワード変換装置３００で生成されたＹrev，Ｕrev，Ｖrev出力は、非損失性又は損失性システムの圧縮を行うシステム又は機構へ送られるかもしれない。３×ｎビットの入力から３×ｎ＋２ビットの出力が得られるので、予測可能な精度の整数演算で可逆変換を得られる。
【０１１２】
図５は本発明の第１実施例のインバース変換装置の一例を示す。このインバース変換装置３２０はＧ，Ｒ，Ｂ成分を復元する。
【０１１３】
図５において、インバース変換装置３２０は加算器３１２，３１４，３１５、÷４ブロック３１３、減算器３１０及びクリップロジック３１１，３１６，３１７からなる。このインバース変換装置３２０はＹrev入力，Ｕrev入力及びＶrev入力を受け取り、Ｇ成分，Ｒ成分及びＢ成分を発生する。一実施例ではＹrev成分，Ｕrev成分，Ｖrev成分はそれぞれｎビット、ｎ＋１ビット、ｎ＋１ビットからなる。一実施例ではｎ＝８である。
【０１１４】
加算器３１２はＵrev入力とＹrev入力を加算し、（ｎ＋１）ビットの出力を出す。この（ｎ＋１）出力は÷４ブロック３１３によって４で割り算される。一実施例では、÷４ブロック３１３は、ｎ＋１ビット入力を右へ２ビットシフトして割り算を行うシフトロジックからなる（ビットが左（ＭＳＢ）から右（ＬＳＢ）へ配列されている場合）。減算器３１０によって、÷４ブロック３１３の出力Ｙrev入力よりら引き算される。減算器３１０の出力は（ｎ＋１）ビット数であり、これはクリップロジック３１１に入力される。一実施例では、クリップロジック３１１は、加算又は減算を行って（ｎ＋１）ビット数をある値域（例えば２５６）に押し込むことにより、インバース変換３２０の出力としてｎビットのＧ成分を発生する。例えば、８ビットにクリッピングする場合、入力が０未満のときは出力は０であり、入力が２５５より大きいときには出力は２５５であり、それ以外のときには出力は入力と等しい。
【０１１５】
加算器３１４はＵrev入力を減算器３１０の出力と加算し、（ｎ＋２）ビットの出力を出す。クリップロジック３１６は、（ｎ＋２）ビット数を所要の値域に押し込むことにより、インバース変換装置３２０から出力されるＲ成分を表すｎビット数を発生する。
【０１１６】
加算器３１５はＶrev入力を減算器３２０の出力と加算し、（ｎ＋２）ビット数を出力する。クリップロジック３１７は、インバース変換装置３２０のＢ成分出力を表すｎビット数を出力する。
【０１１７】
なお、上記インバース変換装置において、色変換を利用するシステムが非損失性圧縮システムのときには、加算器の出力はｎビット長であろうから、クリップロジックは必要でない。しかし、処理中にＹrev入力，Ｕrev入力及びＶrev入力が生成されて量子化を受けるときには、出力が正しい値域（例えば正しいビット数）に入るようにするためクリップロジックが必要である。
【０１１８】
本発明のフォワード変換装置及びリバース変換装置の他の実施例
図６は第２実施例のフォワード変換装置の一例のブロック図である。図６に示すフォワード変換装置は、第１の色空間からのデータが、圧縮を施される前に第２の色空間へ変換される圧縮系の一部であるかもしれない。それは、第２の色空間のデータの方が良好な圧縮を達成し得る場合であろう。
【０１１９】
図６において、フォワード変換装置４００はＲ，Ｇ，Ｂの３つの入力を持ち、Ｙrev，Ｕrev，Ｖrevの３つの出力を発生する。一実施例では、Ｒ，Ｇ，Ｂの各入力は８ビット長である。なお、本発明は他のビット長（例えば１０，１１，．．．３２，．．）の入力用に構成することもできる。Ｒ，Ｇ，Ｂ入力が８ビットの場合、Ｙrev出力は８ビットであり、Ｕrev出力とＶrev出力は９ビット長である。
【０１２０】
フォワード変換装置４００は、×２ブロック４０１、２入力の加算器４０２，４０４、減算器４０５，４０７、÷４ブロック４０３及び÷２ブロック４０６からなる。一実施例では、乗算と除算はハードワイヤド・シフトにより実現されるので、ハードウエアコストはほとんどかからない。
【０１２１】
×２ブロック４０１はｎビットのＧ入力を受け取るように接続され、そのｎビットを２で割り算する。一実施例では、×２ブロック４０１は、ｎビットを左へ１ビットだけシフトすることにより乗算を達成するシフトロジックからなる（ビットが左（ＭＳＢ）から右（ＬＳＢ）へ配列されている場合）。このシフトの結果はｎ＋１ビットであり、加算器４０２の一つの入力及び減算器４０５の一つの入力に接続される。
【０１２２】
加算器４０４はｎビットのＲ入力をｎビットのＢ入力と加算し、（ｎ＋１）ビット出力を生じる。加算器４０４の（ｎ＋１）ビット出力は加算器４０２の一つの入力及び減算器４０５の一つの入力に接続される。加算器４０２は２つの（ｎ＋１）ビット入力を加算して（ｎ＋２）ビット出力を発生し、この出力は÷４ブロック４０３の入力に接続される。÷４ブロック４０３は、その（ｎ＋２）ビット入力を４で割り算し、ｎビットの出力を発生する。一実施例では、÷４ブロック４０３はシフトロジックからなり、ｎ＋２ビットを右へ２ビット分シフトすることにより除算を行う（ビットが左（ＭＳＢ）から右（ＬＳＢ）へ配列されている場合）。÷４ブロック４０３のｎビット出力は、フォワード変換装置４００のＹrev出力となる。
【０１２３】
減算器４０５は、×２ブロック４０１のｎビット出力から加算器４０４のｎビット出力を引き算する。減算器４０５の出力はｎ＋２ビットからなり、÷４ブロック４０６の入力に接続される。
【０１２４】
÷２ブロック４０６は、その（ｎ＋２）ビット入力を２で割り算する。一実施例では、÷２ブロック４０６は割り算を行うためのシフトロジックからなり（ｎ＋２）ビットを右へ１ビットだけシフトすることにより割り算を実現する（ビットが左（ＭＳＢ）から右（ＬＳＢ）へ配列されている場合）。この除算の結果は（ｎ＋１）ビット出力であり、これはフォワード変換装置４００のＵrev出力となる。
【０１２５】
加算器４０７はｎビットＲ入力をｎビットＢ入力と加算し、（ｎ＋１）ビット出力を発生する。加算器４０７の（ｎ＋１）ビット出力はＶrev出力となる。
【０１２６】
前述の実施例に関連して述べたように、フォワード変換装置４００により生成されたＹrev出力，Ｕrev出力及びＶrev出力は、非損失性又は損失性システムにおいて圧縮を行うシステム又は機構へ送られるかもしれない。３×ｎビットの入力から３×ｎ＋２ビットの出力が得られるので、予測可能な精度の整数演算で可逆変換が得られる。
【０１２７】
図７及び図８は本発明の第２実施例のインバース変換装置の一例を示す。図７は、Ｇ成分復元のためのインバース変換装置のブロック図である。このＧ成分復元用インバース変換装置は前記テーブル１（ルックアップテーブル）に従って動作する。図８は、Ｒ成分及びＢ成分の復元ためのインバース変換装置のブロック図である。
【０１２８】
図７において、インバース変換装置５００はＮＯＴロジック５０１、ＡＮＤゲートロジック５０２、加算器５０３，５０５、÷２ブロック５０４及びクリップロジック５０６からなり、Ｙrev入力，Ｕrev入力，Ｖrev入力を受け取るように接続される。Ｙrev成分、Ｕrev成分、Ｖrev成分はそれぞれｎビット、ｎ＋１ビット、ｎ＋１ビットからなる。一実施例では、ｎは８である。
【０１２９】
ＮＯＴロジック５０１はＵrev入力のＬＳＢを受け取り、反転したＬＳＢを出力する。ＡＮＤゲートロジック５０２は、Ｕrev入力の反転ＬＳＢとＶrev入力のＬＳＢを受け取るように接続されている。ＡＮＤゲートロジック５０２の出力は、Ｕrev入力のＬＳＢと結合されて加算器５０３の一つの入力となる。加算器５０３は、これらの２ビットをＵrev入力と加算する。このように、ＵrevのＬＳＢとＶrevのＬＳＢがＵrevに加算される２ビット数を作るために用いられる。加算器５０３により出力される結果は（ｎ＋２）ビット数である。ＮＯＴロジック５０１、ＡＮＤゲートロジック５０２及び加算器５０３は、協動してテーブル１に示されたように丸め／切り捨てを修復する。
【０１３０】
÷２ブロック５０４は加算器５０３の出力を受け取るように接続され、その結果を２で割り算する。一実施例では、÷２ブロック５０４は入力のｎ＋２ビットを右へ１ビットシフトすることにより除算を行うシフトロジックからなる（ビットが左（ＭＳＢ）から右（ＬＳＢ）へ配列されている場合）。÷２ブロック５０４の出力はｎ＋１ビットであり、加算器５０５に１つの入力として接続される。加算器５０５は、Ｙrev入力のｎビットを÷２ブロック５０４のｎ＋１ビット出力と加算し、（ｎ＋２）ビット出力を送出する。
【０１３１】
クリップロジック５０６は加算器５０５の（ｎ＋２）ビット出力を受け取り、Ｇ出力を生成するため、例えば加算と減算により入力を許容可能な値域に押し込む。この色変換を利用するシステムが非損失性圧縮システムである場合、加算器５０５の出力はｎビット長であろうから、クリップロジック５０６は必要でない。しかし、処理中にＹrev入力，Ｕrev入力及びＶrev入力が生成されて量子化を受けているときには、出力が正しい値域（例えば正しいビット数）に入るようにするためクリップロジック５０６が必要である。例えば、８ビットにクリッピングする場合、入力が０未満のときは出力は０であり、入力が２５５より大きいときには出力は２５５であり、それ以外のときには出力は入力と等しい。
【０１３２】
ｎビットのＧ成分が復元されたならば、Ｒ，Ｂ成分復元用インバース変換装置を使用できる。図８は、そのようなインバース変換装置の一例を示す。図８において、インバース変換装置６００は加算器６０１，６０５、÷２ブロック６０２，６０４、減算器６０３，６０６，６０８、クリップロジック６０７，６０９からなる。インバース変換ロジック６００は入力としてのＧ成分、Ｕrev成分及びＶrev成分に応じてＢ成分を発生する。一実施例では、Ｕrev入力とＶrev入力は（ｎ＋１）ビット数であるが、Ｇ入力はｎビット数である。
【０１３３】
加算器６０１は（ｎ＋１）ビット入力を１と加算して（ｎ＋２）ビットの結果を出力し、この結果は÷２ブロック６０２に接続される。÷２ブロック６０２は（ｎ＋２）ビット入力を２で割り算して（ｎ＋１）ビットの結果を出し、この結果は減算器６０３の一つの入力に接続される。一実施例では、÷２ブロック６０２は（ｎ＋２）ビット入力を右へ１ビットシフトすることにより割り算を行うシフトロジックからなる（ビットが左（ＭＳＢ）から右（ＬＳＢ）へ配列されている場合）。
【０１３４】
減算器６０３は÷２ブロック６０２の出力をＧ入力から引き算する。この減算の結果は（ｎ＋２）ビットであり、これは減算器６０８の一つの入力に接続される。
【０１３５】
減算器６０８はＵrev入力並びに減算器６０３の出力を受け取るように接続されている。減算器６０８は減算器６０３の出力からＵrev入力を引き算することにより、（ｎ＋３）ビットの結果を出力する。この（ｎ＋３）ビットの結果はクリップロジック６０９に入力され、クリップロジック６０９はＢ成分を表すｎビット出力を発生する。なお、クリップロジック６０９が（クリップロジック６０７も）必要とされるのは、本発明の色変換が損失性圧縮システムに組み込まれる場合だけであろう。
【０１３６】
÷２ブロック６０４は（ｎ＋１）ビットのＶrev入力を受け取り、それを２で割り算する。一実施例では、÷２ブロック６０４はＶrev入力の（ｎ＋１）ビットを右へ１ビットシフトすることにより除算を行うシフトロジックからなる（ビットが左（ＭＳＢ）から右（ＬＳＢ）へ配列されている場合）。÷２ブロック６０４の出力は、加算器６０５によりｎビットのＧ成分と加算される。この加算の結果が減算器６０６の一つの入力に接続される（ｎ＋１）ビット入力である。
【０１３７】
減算器６０６はＶrev入力を受け取るように接続され、それを加算器６０５の（ｎ＋１）ビット出力から減算する。この減算の結果は（ｎ＋２）ビット数であり、これはクリップロジック６０７の入力に接続される。クリップロジック６０７は、その結果を正しい値域に押し込み、得られたｎビットをＲ成分として出力する。前述のように、クリップロジック６０７は色変換が非損失性圧縮システムの一部として利用される場合には必要でない。
【０１３８】
図９はＲ，Ｂ成分復元用のインバース変換装置の他の例を示す。図９において、このインバース変換装置７００は減算器７０１，７０４、加算器７０２，７０３、÷２ブロック７０５，７０６、クリップロジック７０７，７０８からなる。÷２ブロック７０５は前述のようにハードワイヤード・シフトとして実現し得る。このインバース変換装置７００は、Ｇ成分とＵrev，Ｖrev入力に応じてＲ，Ｂ成分を生成する。Ｇ成分はｎビット数であるが、Ｕrev入力とＶrev入力はｎ＋１ビット数である。
【０１３９】
Ｇ成分が生成された後、減算器７０１はＵrev入力をＧ成分から減算する。この減算の結果は加算器７０３の一つの入力へ出力される。一実施例では、減算器７０１の出力は（ｎ＋２）ビット数である。
【０１４０】
÷２ブロック７０５はＶrev入力を２で割り算し、その結果は加算器７０３の他方の入力へ入力される。一実施例では、÷２ブロック７０５は前述のようなシフトロジックからなる。一実施例では、÷２ブロック７０５の出力はｎビット数である。加算器７０３は減算器７０１の出力を÷２ブロック７０５の出力と加算する。一実施例では、加算器７０３の出力は（ｎ＋３）ビット数である。クリップロジック７０７は加算器７０３の出力を受け取り、それをＲ成分を生成させるために所要の値域に押し込める。
【０１４１】
加算器７０２はＶrev入力を１と加算する。加算器７０２の出力は÷２ブロック７０６の入力に接続される。一実施例では、加算器７０２の出力は（ｎ＋２）ビット数である。÷２ブロック７０６は、その入力を２で除し、その結果を減算器７０４へ出力する。一実施例では、÷２ブロック７０６は前述のようなシフトロジックからなり、その入力を１ビットだけシフトする。一実施例では、÷２ブロック７０６の出力は（ｎ＋１）ビット数からなる。
【０１４２】
減算器７０４は、÷２ブロック７０６の出力を減算器７０１の出力から引き算する。減算器７０４の出力はクリップロジック７０８へ送られる。一実施例では、減算器７０４の出力はｎ＋３ビット数である。
【０１４３】
クリップロジック７０８はＢ成分を出力するが、減算器７０４の出力が（ｎ＋３）ビット数である場合には、クリップロジック７０８は強制的に減算器７０４の出力をＢ成分を表すｎビット数にする。
【０１４４】
以上に述べたフォワード変換装置及びインバース変換装置は、画像が所与の色座標に基づいた３成分に分解されるシステムに組み込むことができる。９ビットの符号付き整数を９ビットの符号無し整数に変換するために、オフセット＝２５６を成分に加算することができる。そして、各成分は個別に圧縮される。かかる圧縮には、例えば、グレイコードとビットプレーン毎に適用されるＪＢＩＧとの組合せが含まれよう。他の圧縮／伸長システムに本発明を利用し得ることは当業者には明白であろう。
【０１４５】
図１０は本発明のＣＭＹＫへの適用を示す。なお、このような場合、Ｙ（黄）がＧ成分の代わりに用いられるかもしれない。別の実施例では、Ｃ（シアン）がＧ成分の代わりに用いられるかもしれない。図１０において、シアン（Ｃ）、黄（Ｙ）、マゼンタ（Ｍ）の成分が変換ブロック８０１により変換されて、Ｙrev、Ｖrev、Ｙrevの出力が生じる。変換ブロック８０１は、この変換を前に定義した変換に従って行う。変換ブロック８０１のＹrev出力とともに黒（Ｋ）成分が変換ブロック８０２に入力され、変換ブロック８０２はＹ'rev出力及びＷrev出力を出す。このように、図１０のＣＹＭＫシステムの出力はＵrev，Ｖrev，Ｙ'rev，Ｗrevの各出力である。一実施例では、変換ブロック８０２はＹ'rev出力とＷrev出力を次式に従って生成する。
【０１４６】
【数３７】
2006025459.tif 000034
【０１４７】
図１１は、図１０のＣＹＭＫ変換システム用のインバース変換システムを示す。図１１において、ブロック９０１はＹ'rev成分及びＷrev成分を受け取り、Ｋ成分及びＹrev成分を生成する。一実施例では、Ｋ，Ｙrev成分は次式により生成される。
【０１４８】
【数３８】
2006025459.tif 000035
【０１４９】
そして、Ｙrev成分が、Ｕrev成分及びＶrev成分とともにブロック９０２に入力され、ブロック９０２はＣ，Ｙ，Ｍ成分を発生する。一実施例では、ブロック９０２は前述の変換を実行する。
【０１５０】
以上の色変換プロセスは３つのベクトルに関し説明されたが、本発明の手法は必要なベクトル数の違う（例えばベクトル数が４，５等々の）色変換にも適用し得る。同じく変換プロセスが使われる、色以外のベクトルに対しても本発明を適用し得る。
【図面の簡単な説明】
【０１５１】
【図１】本発明による非損失性システムのブロック図である。
【図２】本発明による損失性システムのブロック図である。
【図３】本発明による色圧縮サブシステムの一実施例のブロック図である。
【図４】本発明によるフォワード変換装置の一例を示すブロック図である。
【図５】色座標系の複数成分を復元するために利用される本発明によるインバース変換装置の一例を示すブロック図である。
【図６】本発明のフォワード変換装置の他の例を示すブロック図である。
【図７】色座標系の一成分を復元するために利用される本発明のインバース変換装置の一部の他の例を示すブロック図である。
【図８】色座標系の複数成分を復元するための本発明のインバース変換装置の一部分の他の例を示すブロック図である。
【図９】色座標系の複数成分を復元するための本発明のインバース変換装置の一部分の別の例を示すブロック図である。
【図１０】ＣＭＹＫ色空間用の本発明のフォワード変換装置の一例を示すブロック図である。
【図１１】ＣＭＹＫ色空間用の本発明のインバース変換装置の一例を示すブロック図である。
【符号の説明】
【０１５２】
１０１，１０２，１０３，１１１  入力ソース
１０４Ａ〜１０４Ｄ  フォワード色空間変換器
１０５Ａ  非損失性コーダー
１０５Ｂ  損失性コーダー
１０６Ａ〜１０６Ｃ  インバース色空間変換器
１０７Ａ〜１０７Ｃ  色補正用変換器
１２０  色補正
１０８，１０９，１１０，１１４  デスティネーション装置
３００  フォワード変換
３０１  ×２ブロック
３０２，３０５  加算器
３０３，３０４  減算器
３０６  ÷４ブロック
３１０  減算器
３１１，３１６，３１７  クリップロジック
３１２，３１４，３１５  加算器
３１３  ÷４ブロック
３２０  インバース変換
４００  フォワード変換
４０１  ×２ブロック
４０２，４０４  加算器
４０３  ÷４ブロック
４０５，４０７  減算器
４０６  ÷２ブロック
５００  インバース変換
５０１  ＮＯＴロジック
５０２  ＡＮＤゲートロジック
５０３，５０５  加算器
５０４  ÷２ブロック
５０６  クリップロジック
６００  インバース変換
６０１，６０５  加算器
６０２，６０４  ÷２ブロック
６０３，６０６，６０８  減算器
６０７，６０９  クリップロジック
７００  インバース変換
７０１，７０４  減算器
７０２，７０３  加算器
７０５，７０６  ÷２ブロック
７０７，７０８  クリップロジック
８０１，８０２  変換ブロック
９０１，９０２  変換ブロック
【図１】
2006025459.tif 000036
【図２】
2006025459.tif 000037
【図３】
2006025459.tif 000038
【図４】
2006025459.tif 000039
【図５】
2006025459.tif 000040
【図６】
2006025459.tif 000041
【図７】
2006025459.tif 000042
【図８】
2006025459.tif 000043
【図９】
2006025459.tif 000044
【図１０】
2006025459.tif 000045
【図１１】
2006025459.tif 000046