JP2901213B2 - カラー空間変換方法 - Google Patents

カラー空間変換方法

Info

Publication number
JP2901213B2
JP2901213B2 JP3351649A JP35164991A JP2901213B2 JP 2901213 B2 JP2901213 B2 JP 2901213B2 JP 3351649 A JP3351649 A JP 3351649A JP 35164991 A JP35164991 A JP 35164991A JP 2901213 B2 JP2901213 B2 JP 2901213B2
Authority
JP
Japan
Prior art keywords
component
space
rgb
yiq
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP3351649A
Other languages
English (en)
Other versions
JPH04288684A (ja
Inventor
スティーブ・エム・ブロンスタイン
ジェームス・ディー・アレン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Publication of JPH04288684A publication Critical patent/JPH04288684A/ja
Application granted granted Critical
Publication of JP2901213B2 publication Critical patent/JP2901213B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • H04N9/67Circuits for processing colour signals for matrixing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/56Processing of colour picture signals
    • H04N1/60Colour correction or control
    • H04N1/6016Conversion to subtractive colour signals
    • H04N1/6019Conversion to subtractive colour signals using look-up tables

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、二つのカラー空間の間
の変換を行なう方法に係り、特に、RGB空間とYIQ
空間の間の高速変換に好適なカラー空間変換方法に関す
る。
【0002】
【従来の技術】カラー画像処理を行なう多くのアプリケ
ーションにおいて、二つのカラー空間の相互間での変換
が必要である。一例としてカラー画像圧縮の分野があ
る。ただし、本発明はこのようなアプリケーションに限
定されるものではない。
【0003】ある典型的なカラー画像圧縮装置は、カラ
ーファクシミリ送信機、電話回線、カラーファクシミリ
受信機からなる。送信側では、ファクシミリ送信機がま
ず画像を走査しなければならないが、一般的に赤緑青
(RGB)のカラー空間で走査する。これは通常、ハー
ドウエア/コストの面で最も簡単である。しかし、これ
までの研究によって、カラー画像を圧縮することを目的
とした場合、一つの輝度カラー平面と二つの色差カラー
平面からなるカラー空間上で圧縮を実行するほうが好ま
しいことが分かっている。このようなカラー空間がYI
Qカラー空間である。
【0004】空間的にみてI平面及びQ平面の変化率は
輝度平面のそれに比べて人間の目に感知されにくいため
に、YIQカラー空間がカラー画像圧縮のために優れて
いることが分かっている。圧縮技術では、この事実を利
用すべく、I平面及びQ平面に簡単な空間圧縮を施した
後、何らかの実際的な量子化を行なうことによってデー
タをさらに圧縮する。
【0005】圧縮システムの典型的な例では、1画素あ
たりデータが24ビットのカラー画像を出力するフロン
トエンド・スキャナーを備えているであろう。このデー
タは普通、R(赤)8ビット、G(緑)8ビット、B
(青)8ビットである。Y,I,Qへの変換によって新
たに8ビット数値が生じるけれども、二つの隣接したI
値及び二つの隣接したQ値をまとめることによって、最
終的なデータは1画素あたり16ビットになる。かくし
て、1画素あたり8ビットがほぼ即座に取り除かれた。
【0006】RGB空間とYIQ空間との間の変換は、
米国モトローラ社68030のようなマイクロプロセッ
サ上でソフトウエアによって実行されることが少なくな
い。(数1)はRGB空間からYIQ空間への線形変換
行列、(数2)はYIQ空間からRGB空間への線形変
換行列である。
【0007】
【数1】
【0008】
【数2】
【0009】注意すべきは、ここに示した3×3行列中
の数値はそれほど「フレンドリー(friendly)」ではな
いことである。これらの数値は符号付浮動小数点数であ
る。仮に、この変換を単純な乗算を使用して行なおうと
したならば、9回の乗算と6回の加算が必要となる。す
なわちY成分について Y=(0.299*R)+(0.587*G)+(0.114*B) の計算が必要てある。同様の計算がI,Q成分について
それぞれ必要である。この方法は、コード長及び必要メ
モリ容量の観点から最も単純な方法である可能性もない
ではないが、乗算が必要であるので最速の方法でないこ
とは確かである。
【0010】乗算をなくすためのごく一般的な方法は、
プログラムされたルックアップ・テーブル(look-up t
able)を用いることである。可能性のあるあらゆるR,
G,B値を予め乗算し、それをルックアップ・テーブル
に格納することになる。
【0011】ところで、前述したところから分かるよう
に、16ビット幅の256エントリーを持つ別々のルッ
クアップ・テーブルが9個必要であった。R,G,Bの
可能な範囲は通常、0〜255であり、これは一つの8
ビット数に格納される。しかしながら、線形変換の後で
は、Yは0〜255の範囲(8ビット)を持ち、Iは+
151〜−151の範囲を持ち、Qは+136〜−13
6の範囲を持つ。これらの値を表現するには、8ビット
でなく9ビットを必要とする。
【0012】しかし、現在のマイクロプロセッサシステ
ムの構造から、8ビット数を1でも超えると、アドレッ
シングの都合から一気に16ビットになる。したがっ
て、必要な全メモリ容量は9×256×2バイト、すな
わち4.5Kバイトであった。
【0013】また従来は、RGB−YIQ変換を行なう
ために、R値を取得してY(R)テーブルを索引し、そ
の値を探し出し(look-up)保持するプログラムを作
る。次にG値を取得しY(G)値を探し出し、これをY
(R)値に加算する。最後に、同じことを0について行
ない、それまでの合計に加算することによって最終的な
Y値を得る。同様のプロセスがI及びQについて行なわ
れる。結果的に全体として9回のルックアップ(look-u
p)と6回の加算が行なわれることになる。
【0014】前述の単純な演算による方法と比較し、9
回の乗算が9回のルックアップに置き換えられたが、こ
の9回のルックアップは通常、おおよそ1回の乗算より
高速である。したがって、このような単純なテーブルル
ックアップ法でも、単純な演算による方法よりは高速化
を期待できる。
【0015】
【発明が解決しようとする課題】しかし、このテーブル
ルックアップ法は、ルックアップ回数が多く高速化にも
限界があり、またテーブル容量も比較的大きく、改善の
余地が少なくない。
【0016】よって本発明の一般的な目的は、このよう
な問題点を改善できるカラー空間変換方法を提供するこ
とにある。より具体的には、本発明の目的は、32ビッ
ト・マイクロプロセッサを用いて二つのカラー空間の間
の変換、特にRGB−YIQ変換を行なうための改良し
た方法を提供することである。
【0017】
【課題を解決するための手段】本発明により提供される
第1カラー空間から第2カラー空間へ変換する方法の特
徴は、第1カラー空間の各成分に対応してそれぞれ変換
用テーブルを用意し、各変換用テーブルは、第1カラー
空間の当該成分の各値対応の複数のエントリーからな
り、各エントリーは、第2カラー空間の各成分に対応し
た部分領域に分割されて、第1カラー空間の当該成分の
値の第2カラー空間の各成分への寄与値を表わすデータ
(第2カラー空間成分データ)が格納されており、第1
カラー空間の各成分の値により、各変換用テーブルの対
応する各エントリーから、それぞれ第2カラー空間成分
データを取得し、この取得した各第2カラー空間成分デ
ータを合算し、該合算後のデータの下位ビットのマスク
操作及びバレルシフト操作の繰り返しによって、第2カ
ラー空間の各成分を順次生成することである。
【0018】RGB空間からYIQ空間への変換の場
合、変換用テーブルの各エントリーはYIQ各成分用の
3個の部分に分割された構成とし、この変換用テーブル
のルックアップにより、RGB各成分に対応したデータ
を取得し、これを合算し、該合算後のデータの下位ビッ
トをマスクすることによってYIQの一成分を生成し、
該合算後データをバレルシフトしてから下位ビットをマ
スクすることによりYIQの他の一成分を生成し、該バ
レルシフト後のデータをさらにバレルシフトしてから下
位ビットをマスクすることによりYIQの残りの一成分
を生成する。
【0019】YIQ空間からRGB空間への変換の場
合、変換用テーブルの各エントリーはRGB各成分用の
3個の部分に分割された構成として。この変換用テーブ
ルのルックアップにより、YIQ各成分に対応したデー
タを取得し、これを合算し、該合算後のデータの下位ビ
ットをマスクすることによってRGBの一成分を生成
し、該合算後データをバレルシフトしてから下位ビット
をマスクすることによりRGBの他の一成分を生成し、
該バレルシフト後のデータをさらにバレルシフトしてか
ら下位ビットをマスクすることによりRGBの残りの一
成分を生成する。
【0020】
【作用】上述のように本発明の方法によれば、RGB−
YIQ変換の場合、必要とされる操作の合計数は、テー
ブル・ルックアップが3回、加算が2回、バレルシフト
(barrel shift)が2回、それにマスク操作が2回であ
る。テーブルルックアップは3回に減る。バレルシフト
は、シフトビット数に無関係に一定の単時間で行なうこ
とができる。マスク操作に必要な時間も加算と同等であ
る。したがって、単純なテーブルルックアップ法より遥
かに高速の変換が可能であることは明かである。
【0021】バレルシフトの機能は、多くの32ビット
・マイクロプロセッサで利用できる。また、32ビット
のデータ幅であれば、これを3分割しても十分な変換精
度を得られるため、後記実施例によって明かにされるよ
うに、変換用テーブルの容量も減らすことができる。し
たがって、本発明の変換方法は、32ビット・マイクロ
プロセッサ上でのカラー空間変換に好適といえる。
【0022】
【実施例】以下、図面を用い、本発明の好適な実施例に
ついて説明する。ただし、この実施例に本発明を限定す
ることを意図しない。本発明は、特許請求の範囲により
定義される如き本発明の精神及び範囲に含まれ得るとこ
ろの変形例、修正例、均等例を包含する。
【0023】本発明の方法では、バレルシフトが用いら
れる。モトローラ社68030のような多くのマイクロ
プロセッサは、バレルシフト機構(barrel-shifting me
chanism)を内蔵している。従来、シフト操作はソフト
ウエアによる比較的遅い操作であったが、これは命令実
行時間が必要なシフト回数に比例したからである。例え
ば、ある数XがレジスタDOにあり、その5ビットのシ
フトが必要である場合、300nSを要するであろう。
10ビットのシフトが必要であれば、バレルシフター
(barrel shifter)がないと、約600nSを要するこ
とになろう。
【0024】バレルシフトの利点は、全てのシフトが、
桁数と関係無く、同時に起こることである。これが、本
発明において非常に効果的に利用されることによって、
前述の9回のテーブル・ルックアップを3回にしてい
る。
【0025】本実施例に用いられる変換用テーブルは2
56個のエントリーがあり、各エントリーは32ビット
である。したがって、必要な全メモリ容量は256×4
バイトの3倍、すなわち、たったの3Kバイトであり、
これは前述の単純ルックアップ法に必要なテーブル容量
より33パーセントも少ない。
【0026】この変換用テーブルを生成する場合、その
各エントリーの32ビット・ロケーションは、3個の1
0ビット・コンパートメントに分割される。予め計算さ
れた各ルックアップ・エレメントは32ビット・ロケー
ションの関連したコンパートメントに格納される。
【0027】RGB空間からYIQ空間への変換は、次
の通りである。ここで必要なテーブルルックアップ回数
は丁度3回である。図1は、この変換の説明図である。
【0028】最初に、R(赤)成分のための1個の32
ビット数1がルックアップされる。この値は保持され
る。次に、G(緑)成分のための1個の32ビット数2
がルックアップされ、当該二つの32ビット数1,2が
合算される。最後に、B(青)成分のための1個の32
ビット数3がルックアップされ、32ビット数合算値に
加算される。得られた32ビット数(YIQ各成分)4
は保持される。
【0029】Y値は32ビット数4の下位10ビットに
あるため、下位8ビットをマスクすることによって、Y
値を生成する。なお、Y値が0〜−255の範囲にある
場合、このマスクは不要である。このマスクは1回の操
作で、必要な時間は1回の加算にほぼ等しい。
【0030】次に、32ビット数4を右に10ビットシ
フトし、下位9ビットをマスクすることによりI値を得
る。この10ビットシフトは、1下位のバレルシフト操
作によって行なう。つまり、Iを生成するために1回の
バレルシフトと1回のマスク操作を必要であるというこ
とである。
【0031】最後に、上記のバレルシフト操作後の32
ビット数5を10ビット、1回のバレルシフト操作によ
って右シフトし、その下位9ビットをマスクすることに
よりQ値を得る。
【0032】したがって、必要な操作のトータル回数
は、テーブルルックアップが3回、加算が2回、バレル
シフトが2回、マスク操作が2回である。したがって、
68030や他の同様の32ビット・マイクロプロセッ
サ上で高速のRGB−YIQ変換を行なうことができ
る。
【0033】ここまでの説明から理解されるように、R
GB空間からYIQ空間への変換の全体プロセスを一般
的に記述するならば、次のステップから構成される。 1)RGBカラー空間に対応した、ある個数のビットロ
ケーションからなる予め計算されたエントリーを、予め
決められた個数それぞれ持つ第1、第2及び第3のルッ
クアップテーブルを生成する。 2)前記ビットロケーションを、それぞれ、それより少
ないビットロケーションからなる少なくとも3個のコー
パートメントに分割する。 3)R成分に対応した一つ目のビットロケーションの数
値を第1ルックアップテーブルより探し出す。 4)G成分のための一つのビットロケーションの数値を
第2ルックアップテーブルより探し出し、これをステッ
プ3で得たビットロケーションの数値と合算する。 5)B成分のための一つのビットロケーションの数値を
第3ルックアップテーブルより探し出し、ステップ4の
合算値に加算することにより一つのビット計算値を生成
する。 6)このビット計算値のある個数の下位ビットをマスク
してY成分の値を得る。 7)1回のバレルシフト及びマスク操作を用いて、該ビ
ット計算値を予め決められたビット数だけ右シフトし、
下位ビットをマスクしてI成分を生成する。 8)このシフト後のビット数値を予め決められた回数さ
らに右シフトし、下位ビットをマスクしてQ成分を生成
する。
【0034】ここで、具体的な数値を用いてRGB空間
とYIQ空間の双方向変換プロセスを説明する。重要な
ことは、ルックアップテーブルは、その作成段階の丸め
による小さな数値誤差が入っている可能性があることで
ある。これが、RGBを変換して得られるYIQを逆変
換して得られたRGB値と、初めのRGB値とが僅かに
異なる原因である。
【0035】32ビットロケーション内でのデータ構成
は図1の通りである。3個のテーブルルックアップ値が
1個のデータレジスタに合計され、次に、その結果がマ
スクされシフトされることによりY,I及びQの値が得
られる。
【0036】ここでRGBからYIQへの変換に用いる
ルックアップテーブルR_YIQtbl,G_YIQt
bl,B_YIQtblの内容は図3、図4及び図5に
示すとおりである。ここで入力値はR=50、G=7
5、B=97とする(基数は16)。
【0037】まず、R=50によりR_YIQtblの
ルックアップを行なう。図3において、R=50の位置
を見つけるには、第1カラムを第11行まで下がる。そ
こに、32ビット数 $00b08018 が得られる。
【0038】同様にG_YIQtblより、G=75に
対応した32ビット数 $0d73ac45をルックアップす
る。この値をRのルックアップ値に加算し、$0e242c5d
の値を得る。
【0039】最後に、B_YIQtblのルックアップ
により、B=97に対応した32ビット数 $91f38011
を得て、これを上記中間トータル値に加算することによ
って、最終トータル値 $1017acb6e を得る。
【0040】この最終トータル値について、マスク操作
とバレルシフト操作を行なうことによって、YIQ値を
得る。
【0041】まず、最終トータル値 $1017ac6e の下位
8ビットを $000000ff によりマスクし、Y値 $6e
(10進の+110)を得る。
【0042】最終トータル値を右に10ビット、バレル
シフトする。これにより32ビット数 $000405eb が得
られる。この下位8ビットを $000000ff でマスクする
ことによりI値 $eb を得る。これは10進の−21に
等しい(Iは符号付き数であるから)。
【0043】次に、上記32ビット数を右に10ビッ
ト、バレルシフトし $00000101 を得る。この下位8ビ
ットをマスクすることにより、Q値$$01 を得る。かく
して、Y=$6e,I=$eb,Q=$01 が得られた。
【0044】ここで、RGBからYIQへの変換の正確
さを確認するため、逆の変換のプロセスを説明する。こ
の変換用に用いられるルックアップテーブルY_RGB
tbl,I_RGBtbl,Q_RGBtblの内容は
図5、図6及び図8に示すとおりである。
【0045】ここで想定するルックアップテーブルの場
合、上記変換により得られたYIQ値に対して次のよう
な32ビット数が得られる。 Y=$6e に対して、Y_RBGtblから $06e1b86e
が得られる。 I=$eb に対して、I_RBGtblから $023027e2
が得られる。 Q=$01 に対して、Q_RBGtblから $003ffc01
が得られる。
【0046】これらの値を加算し、32ビット数 0951
dc01 を得る。この32ビット数の下位8ビットをマス
クし、R=$51を得る(初めの値は$50 であった)。右
に10ビット、バレルシフトし、$00025477 を得る。こ
の下位8ビットをマスクし、G=$77 を得る(初めの
値は $75 )。10ビット右へバレルシフトし、$000000
95 を得る。その下位9ビットをマスクしB=$95 (初
めの値は97)を得る。これでプロセスは終わる。
【0047】この例で用いたルックアップテーブルのセ
ットにおいて、IとQのルックアップ値は一定の係数
1.5によってスケールダウンされている。しかし、上
記手法は、9ビット符号付き数のI,Q(Iの範囲が+
151〜−151、Qの範囲+136〜−136)につ
いて完全に有効である。
【0048】ここで、変換性能について検討する。完全
無欠の性能は、困難な課題であって、現実に使用するプ
ロセッサによって、すなわち、そのクロック速度とか、
キャッシュメモリが有効であるかどうか、等々に依存す
る。しかし、比較を行なうため、68030プロセッサ
が用いられると仮定する。ここでは、クロック速度の違
いを排除するためマシンサイクル数を計数することし、
また、乗算は整数ユニットで行なわれるとする(乗数
は、例えば1000倍にスケーリングされると仮定す
る)。実際には、このようなスケーリングによって、最
終的に除算ステージが必要となるが、これは勘定にいれ
ずに計算する。
【0049】単純な行列演算による方法で必要なマシン
サイクル数は、合計264サイクルである。内訳は次の
通り。 9回の除算×28サイクル/回=252サイクル 6回の加算×2サイクル/回=12サイクル
【0050】単純ルックアップ法で必要なマシンサイク
ル数は合計48サイクルである。内訳は次の通り。 9回のルックアップ×4サイクル/回=36サイクル 6回の加算×2サイクル/回=12サイクル このように、乗算による方法に比べれば高速化できる。
【0051】ここで説明している本発明の方法で必要な
マシンサイクル数は、 3回のルックアップ×4サイクル/回=12サイクル 2回の加算×2サイクル/回=4サイクル 2回のマスク×2サイクル/回=4サイクル 2回の10ビットシフト×2サイクル/回=4サイクル
で、合計=24サイクルとなる。これから、単純ルック
アップ法に比べ、約50パーセントの速度向上が得られ
ることが分かる。この速度差は非常に大きなものであ
る。すなわち、1024×1024画素のカラー画像の
場合、両変換で1画素あたり24サイクルの削減は、全
体で5000万サイクルの削減となるが、これは、代表
的な16MHzの68030では、3秒以上もプロセッ
サ時間を節約できる。
【0052】さて、前記実施例の変換精度(正確さ)
は、多くのアプリケーションで十分満足できるものであ
る。しかし、カラー画像圧縮システムの場合、高ビット
レートでは、テーブルルックアップによって入り込む誤
差を許容できないこともあり得るので、変換精度を向上
できるモードが必要となることもある。
【0053】次に、この改良モードを説明する。図2は
その説明図である(RGBからYIQへの変換として示
されている)。このモードでは、結局は1つのマシン命
令が追加されることになる。
【0054】この動作モードでは、図3に示されるよう
に、各成分に10ビットセルをそれぞれ割り当てるので
はなく、Y及びIに11ビットを割り当て、Qに10ビ
ットを割り当てる。したがって、32ビット全部が用い
られる。
【0055】Y用の11ビットは全ビット、次のように
用いられる。Yは0から255の範囲の値をとることが
でき、付加された3ビットを小数点より右側の精度を表
わすために用いる。かくして、このモードの場合、Yに
関して1/8の精度まで記憶できる。故にYR,YG,
YBの成分の生成時に、最近整数に丸める代わりに、最
近1/8に丸める。下記例においては、前の方法に比べ
て明らかな改善がみられる。
【0056】例えば、R=65,G=28,B=37と
すると、前記モードで生成される成分は次の通りであ
る。 YR=65*0.299=19.435 は19に丸められる。 YG=28*0.587=16.436 は16に丸められる。 YB=37*0.114=4.218 は4に丸められる。 このYR,YG,YBの値を加え合わせると結果はY=
39となる。
【0057】これに対し、この改良モードにおいては、 YR=19.435 は19.375すなわち、19 3/8に
丸められる。 YG=16.436 は16.375すなわち、16 3/8に
丸められる。 YB=4.218 は4.25すなわち、4 1/8に丸めら
れる。 このYR,YG,YBの値を加え合わせると結果はY=
40となる。元の浮動小数点数を加え合わせて得られる
値は40.089であるから、この改良モードの近似値
40は、39に比べ遥かに近い数値である。
【0058】Iに関しても最近1/4に丸めるために2
ビット余分に用い、またQに関しても最近1/2に丸め
るために1ビット余分に割り当てる。この余分なビット
数は任意である。ただし、これ以外の組み合わせのほう
が、正確さがより向上することもあり得る。
【0059】逆の変換、すなわちYIQからRGBへの
変換のためには、違った精度の組み合わせが選ばれるべ
きである。この変換では1.703というような乗数が
あるため、小数点の左側により多くのビットを割り当て
る必要があり、そのため、小数点の右側の正確さを犠牲
にせざるを得ない。このようなビット割り当ての最適化
については、これ以上の説明は不要であろう。
【0060】さて、図2から理解されるように、改良モ
ードによるRGBからYIQの変換の場合、前記モード
と同じ結果を得るためにバレルシフトを1回追加するだ
けでよい。最初のシフトは、小数点の右側の不要なビッ
トを除くために3桁分行なわれる。ただし、この3ビッ
トに基づく結果を丸めることも可能である。第3ビット
に1が立っていても、これは丸めで捨てられる、すなわ
ち無意味となる。しかし、このようにすると、1命令の
追加が必要になる。2番目のシフトは、I成分を得るた
めに10桁分行なわれる。この場合も丸めが可能であ
る。そして、最後の9桁シフトによってQ成分を得る。
このようにシフトを1回追加し、そのためのクロックサ
イクルを2サイクル増加させるだけでよいから、合計2
6サイクルとなる。
【0061】以上、本発明の実施例について述べたが、
これは本発明を、開示した態様そのものに限定すること
を意図したものではなく、前述の教えるところに照ら
し、様々な修正と変形が可能であることは明白である。
前記実施例は、本発明の原理及び実際的応用を最もよく
理解させ、それによって他の当業者が本発明及び様々な
実施例を意図する特定の用途に適合させるように色々に
修正して使用できるように、選ばれ説明されたものであ
る。本発明の範囲は、特許請求の範囲及びその均等物に
よって定義されるものである。
【0062】
【発明の効果】以上説明した如く、本発明によれば、R
GB−YIQ変換等のカラー空間変換の高速化、変換の
ためのルックアップテーブルのサイズ削減を実現でき、
特にRGB−YIQ変換を、32ビット・マイクロプロ
セッサシステム上で十分な精度で高速に行なうことがで
きるという効果を達成できる。
【図面の簡単な説明】
【図1】本発明の方法によるRGBからYIQへの変換
の説明図である。
【図2】変換精度を向上するモードでのRGBからYI
Qへの変換の説明図である。
【図3】テーブルR_YIQtblの内容を示す図であ
る。
【図4】テーブルG_YIQtblの内容を示す図であ
る。
【図5】テーブルB_YIQtblの内容を示す図であ
る。
【図6】テーブルY_RGBtblの内容を示す図であ
る。
【図7】テーブルI_RGBtblの内容を示す図であ
る。
【図8】テーブルQ_RGBtblの内容を示す図であ
る。
【符号の説明】
1,2,3 ルックアップされた32ビット数 4 合算された32ビット数 5 10ビット右シフトされた32ビット数 6 20ビット右シフトされた32ビット数
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.6,DB名) G06T 1/00

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】 第1カラー空間から第2カラー空間へ変
    換する方法であって、 第1カラー空間の各成分に対応してそれぞれ変換用テー
    ブルを用意し、 各変換用テーブルは、第1カラー空間の当該成分の各値
    対応の複数のエントリーからなり、 前記各エントリーは、第2カラー空間の各成分に対応し
    た部分領域に分割されて、第1カラー空間の当該成分の
    値の第2カラー空間の各成分への寄与値を表わすデータ
    (以下、第2カラー空間成分データという)が格納され
    ており、 第1カラー空間の各成分の値により、各変換用テーブル
    の対応する各エントリーから、それぞれ第2カラー空間
    成分データを取得し、 前記取得した各第2カラー空間成分データを合算し、該
    合算後のデータの下位ビットのマスク操作及びバレルシ
    フト操作の繰り返しによって、第2カラー空間の各成分
    を順次生成することを特徴とするカラー空間変換方法。
  2. 【請求項2】 RGB空間からYIQ空間へ変換する方
    法であって、 RGB空間のRGB各成分に対応してそれぞれ変換用テ
    ーブルを用意し、 前記RGB各成分の変換用テーブルは、それぞれ該当成
    分の各値対応の複数のエントリーからなり、 前記各エントリーは、YIQ空間のYIQ各成分に対応
    した部分領域に分割されて、RGB空間の当該成分の値
    のYIQ各成分への寄与値を表わすデータ(以下、YI
    Q成分データという)が格納されており、 RGB空間の各成分の値により、各変換用テーブルの対
    応する各エントリーから、それぞれYIQ成分データを
    取得し、 前記取得した各YIQ成分データを合算し、該合算後の
    データの下位ビットをマスクすることによってYIQの
    一成分を生成し、該合算後データをバレルシフトしてか
    ら下位ビットをマスクすることによりYIQの他の一成
    分を生成し、該バレルシフト後のデータをさらにバレル
    シフトしてから下位ビットをマスクすることによりYI
    Qの残りの一成分を生成することを特徴とするカラー空
    間変換方法。
  3. 【請求項3】 YIQ空間からRGB空間へ変換する方
    法であって、 YIQ空間のYIQ各成分に対応してそれぞれ変換用テ
    ーブルを用意し、 前記YIQ各成分の変換用テーブルは、それぞれ該当成
    分の各値対応の複数のエントリーからなり、 前記各エントリーは、RGB空間のRGB各成分に対応
    した部分領域に分割されて、YIQ空間の当該成分の値
    のRGB各成分への寄与値を表わすデータ(以下、RG
    B成分データという)が格納されており、 YIQ空間の各成分の値により、各変換用テーブルの対
    応する各エントリーから、それぞれRGB成分データを
    取得し、 前記取得した各RGB成分データを合算し、該合算後の
    データの下位ビットをマスクすることによってRGBの
    一成分を生成し、該合算後データをバレルシフトして下
    位ビットをマスクすることによりRGBの他の一成分を
    生成し、該バレルシフト後のデータをさらにバレルシフ
    トしてから下位ビットをマスクすることによりRGBの
    残りの一成分を生成することを特徴とするカラー空間変
    換方法。
JP3351649A 1990-12-12 1991-12-12 カラー空間変換方法 Expired - Fee Related JP2901213B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/628,904 1990-12-12
US07/628,904 US5218647A (en) 1990-12-12 1990-12-12 Method to convert between 2 color space on a 32 bit μ-processor

Publications (2)

Publication Number Publication Date
JPH04288684A JPH04288684A (ja) 1992-10-13
JP2901213B2 true JP2901213B2 (ja) 1999-06-07

Family

ID=24520800

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3351649A Expired - Fee Related JP2901213B2 (ja) 1990-12-12 1991-12-12 カラー空間変換方法

Country Status (5)

Country Link
US (1) US5218647A (ja)
JP (1) JP2901213B2 (ja)
DE (1) DE4141024C2 (ja)
FR (1) FR2670593B1 (ja)
GB (1) GB2253320B (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5438436A (en) * 1989-05-02 1995-08-01 Harris; Scott C. Facsimile machine apparatus
AU1996292A (en) * 1991-05-17 1992-12-30 Analytic Sciences Corporation, The Continuous-tone image compression
US5625713A (en) * 1991-08-09 1997-04-29 Ricoh Corporation Apparatus and method for increasing the throughput of an acoustic or image compression system
US5319793A (en) * 1992-10-21 1994-06-07 International Business Machines Corporation Method and apparatus for improved compression and recording of color video data in a personal computer using a plurality of lookup tables
JP2891073B2 (ja) * 1993-11-15 1999-05-17 日本電気株式会社 色信号変換方式
US5689592A (en) * 1993-12-22 1997-11-18 Vivo Software, Inc. Parallel processing of digital signals in a single arithmetic/logic unit
DE4444231A1 (de) * 1994-12-13 1996-06-20 Sican Gmbh Verfahren und Schaltungsanordnung zur Hin- und Rücktransformation von Bildinformation im YCrCb- und RGB-Format (Colour-Space-Conversion)
US5973734A (en) 1997-07-09 1999-10-26 Flashpoint Technology, Inc. Method and apparatus for correcting aspect ratio in a camera graphical user interface
FR2774244B1 (fr) * 1998-01-23 2000-02-25 Inst Nat Rech Inf Automat Procede de conversion de la representation d'une image video entre deux systemes de codage
US6201530B1 (en) * 1998-05-29 2001-03-13 Flashpoint Technology, Inc. Method and system of optimizing a digital imaging processing chain
US6308189B1 (en) 1998-06-03 2001-10-23 International Business Machines Corporation Apparatus for partial logical shifts and method therefor
US6317141B1 (en) 1998-12-31 2001-11-13 Flashpoint Technology, Inc. Method and apparatus for editing heterogeneous media objects in a digital imaging device
JP3729252B2 (ja) * 2001-03-26 2005-12-21 セイコーエプソン株式会社 画像処理システム、プログラムおよび情報記憶媒体
US7352893B2 (en) 2003-07-09 2008-04-01 Hewlett-Packard Development Company, L.P. Representing extended color gamut information
US9224145B1 (en) 2006-08-30 2015-12-29 Qurio Holdings, Inc. Venue based digital rights using capture device with digital watermarking capability
US7639263B2 (en) * 2007-01-26 2009-12-29 Microsoft Corporation Fast filtered YUV to RGB conversion
US10855886B2 (en) * 2018-02-20 2020-12-01 Filmic Inc. Cubiform method

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0143533B1 (en) * 1983-09-29 1993-04-07 Matsushita Electric Industrial Co., Ltd. Image data expanding and/or contracting method and apparatus
EP0228028A1 (de) * 1985-12-20 1987-07-08 Siemens Aktiengesellschaft Schaltungsanordnung zur Transformationscodierung
JPS63151263A (ja) * 1986-12-16 1988-06-23 Victor Co Of Japan Ltd 感熱記録装置の色補正回路
US4998286A (en) * 1987-02-13 1991-03-05 Olympus Optical Co., Ltd. Correlation operational apparatus for multi-dimensional images
US4887150A (en) * 1987-03-16 1989-12-12 Mitsubishi Denki Kabushiki Kaisha Device for converting video image signals to printing data signals
US4974071A (en) * 1987-04-28 1990-11-27 Canon Kabushiki Kaisha Color image data encoding apparatus having improved resolution/efficiency characteristics
GB2205465B (en) * 1987-05-13 1991-09-04 Ricoh Kk Image transmission system
US4951139A (en) * 1988-03-30 1990-08-21 Starsignal, Inc. Computer-based video compression system
JP2880513B2 (ja) * 1988-09-29 1999-04-12 大日本印刷株式会社 印刷伝送原色変換方法
US4951129A (en) * 1989-01-09 1990-08-21 Dubner Computer Systems, Inc. Digital prefiltering of encoded video signals
US5128748A (en) * 1989-02-15 1992-07-07 Hitachi, Ltd. Image processing system and apparatus for processing color documents

Also Published As

Publication number Publication date
US5218647A (en) 1993-06-08
JPH04288684A (ja) 1992-10-13
GB9126403D0 (en) 1992-02-12
GB2253320B (en) 1995-03-29
FR2670593B1 (fr) 1993-10-15
GB2253320A (en) 1992-09-02
DE4141024C2 (de) 1996-07-18
FR2670593A1 (fr) 1992-06-19
DE4141024A1 (de) 1992-07-16

Similar Documents

Publication Publication Date Title
JP2901213B2 (ja) カラー空間変換方法
KR960001276B1 (ko) 1차원 코사인 변환 계산 장치
US7639265B2 (en) Image formats for video capture, processing and display
EP0424119A2 (en) Recycling DCT/IDCT integrated circuit apparatus using a single multiplier/accumulator and a single random access memory
US5724561A (en) System and method for efficiently determining a fog blend value in processing graphical images
JP2821489B2 (ja) 静止画像圧縮処理装置及び方法
US6112219A (en) Method and apparatus for performing fast discrete cosine transforms and fast inverse discrete cosine transforms using look-up tables
JPH06309146A (ja) 数の浮動小数点表示を整数表示に変換するための装置およびピクセルの値を生成するための方法
EP0619675A1 (en) Colour image display system
US5784100A (en) Apparatus and method for performing shading correction by multiplying a differential shading correction factor and input image data
JP3577325B2 (ja) 離散余弦変換(dct)によるデータ処理方法、dct方法、およびdctデータ処理回路
CN113596581B (zh) 一种图像格式转换方法、装置、计算机设备和存储介质
US6487308B1 (en) Method and apparatus for providing 64-bit YUV to RGB color conversion
CN110769211A (zh) 一种图像栅格数据的传输与存储方法
JPH04190466A (ja) カラー画像の限定色表現装置
US6172714B1 (en) Color adjustment table system for YUV to RGB color conversion
US5715187A (en) Method and apparatus for integer multiplication
JPH01121930A (ja) データ処理装置
JPH1098743A (ja) 輝度信号の計算装置及びその方法
JP4001938B2 (ja) 多次元補間方法
JPH0646269A (ja) 静止画像データの伸長方法、圧縮方法及びそのための対応装置
JP2002540685A (ja) 画像圧縮及び圧縮解除
JP3952804B2 (ja) データ処理方法およびデータ処理装置
JPS6190277A (ja) ヒストグラム計算方法
KR100602249B1 (ko) 영상 처리 장치 및 그 처리 방법

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees