(57)【特許請求の範囲】
【請求項１】
入力された複数の色成分により表現された第１の表色系の画像データに対して複数の色成分の組み合わせを乗算して得られる多次項の値を複数算出する算出手段と、
前記算出手段により算出された複数の多次項の値を、それぞれ予め設定されたビット数だけシフトする複数の第１のシフト手段と、
入力された前記複数の色成分の値および前記第１のシフト手段によりシフトされた後の値に対して、予め設定された複数の変換係数を、第２の表色系の各色成分毎にそれぞれ乗算する複数の乗算手段と、
前記複数の乗算手段により変換係数が乗算された後の値を、第２の表色系の各色成分毎にそれぞれ加算する複数の加算手段と、
前記複数の加算手段により加算された値をそれぞれ予め設定されたビット数だけシフトして、第２の表色系の画像データの各色成分の値として出力する複数の第２のシフト手段と、
を備えた画像処理装置。
【請求項２】
前記第１のシフト手段は、前記多次項の次数に応じたビット数だけ前記複数の多次項の値をシフトする請求項１記載の画像処理装置。
【請求項３】
前記算出手段は、前記第１の表色系の画像データに対して前記複数の色成分から選択した異なる２色の色成分の乗算値および各色成分の自乗値を前記多次項の値としてそれぞれ算出する請求項１記載の画像処理装置。
【請求項４】
前記第１の表色系の画像データがＲＧＢ表色系の画像データであり、前記第２の表色系の画像データがＬ＊ａ＊ｂ＊表色系の画像データである請求項１から３のいずれか１項記載の画像処理装置。
【請求項５】
入力された複数の色成分により表現された第１の表色系の画像データに対して複数の色成分の組み合わせを乗算して得られる多次項の値を複数算出するステップと、
算出された複数の多次項の値を、それぞれ予め設定されたビット数だけシフトするシフトステップと、
入力された前記複数の色成分の値および前記シフトステップによりシフトされた後の値に対して、予め設定された複数の変換係数を、第２の表色系の各色成分毎にそれぞれ乗算するステップと、
変換係数が乗算された後の値を、第２の表色系の各色成分毎にそれぞれ加算するステップと、
各色成分毎に加算された値をそれぞれ予め設定されたビット数だけシフトして、第２の表色系の画像データの各色成分の値として出力するステップとをコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置およびプログラムに関する。
【背景技術】
【０００２】
特許文献１には、カラー画像信号の３色のうち、各２色の差の自乗値に係数を乗じた数値を記憶するテーブルメモリと、この２色の差の絶対値を求める演算器とを備え、演算器の出力を読み出しアドレスとしてテーブルメモリを参照することにより、マスキング演算式の２次項を演算するようにしたマスキング演算装置が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開昭６２−２９３３４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の目的は、変換係数を乗算した後に全ての項に対してシフト演算を行う場合や、変換係数を乗算した項を全て加算した後に一括してシフト演算を行う場合と比較して、少ない演算処理で精度の高い色変換を実現することが可能な画像処理装置およびプログラムを提供することである。
【課題を解決するための手段】
【０００５】
［画像処理装置］
請求項１に係る本発明は、入力された複数の色成分により表現された第１の表色系の画像データに対して複数の色成分の組み合わせを乗算して得られる多次項の値を複数算出する算出手段と、
前記算出手段により算出された複数の多次項の値を、それぞれ予め設定されたビット数だけシフトする複数の第１のシフト手段と、
入力された前記複数の色成分の値および前記第１のシフト手段によりシフトされた後の値に対して、予め設定された複数の変換係数を、第２の表色系の各色成分毎にそれぞれ乗算する複数の乗算手段と、
前記複数の乗算手段により変換係数が乗算された後の値を、第２の表色系の各色成分毎にそれぞれ加算する複数の加算手段と、
前記複数の加算手段により加算された値をそれぞれ予め設定されたビット数だけシフトして、第２の表色系の画像データの各色成分の値として出力する複数の第２のシフト手段と、
を備えた画像処理装置である。
【０００６】
請求項２に係る本発明は、前記第１のシフト手段が、前記多次項の次数に応じたビット数だけ前記複数の多次項の値をシフトする請求項１記載の画像処理装置である。
【０００７】
請求項３に係る本発明は、前記算出手段が、前記第１の表色系の画像データに対して前記複数の色成分から選択した異なる２色の色成分の乗算値および各色成分の自乗値を前記多次項の値としてそれぞれ算出する請求項１記載の画像処理装置である。
【０００８】
請求項４に係る本発明は、前記第１の表色系の画像データがＲＧＢ表色系の画像データであり、前記第２の表色系の画像データがＬ＊ａ＊ｂ＊表色系の画像データである請求項１から３のいずれか１項記載の画像処理装置である。
【０００９】
［プログラム］
請求項５に係る本発明は、入力された複数の色成分により表現された第１の表色系の画像データに対して複数の色成分の組み合わせを乗算して得られる多次項の値を複数算出するステップと、
算出された複数の多次項の値を、それぞれ予め設定されたビット数だけシフトするシフトステップと、
入力された前記複数の色成分の値および前記シフトステップによりシフトされた後の値に対して、予め設定された複数の変換係数を、第２の表色系の各色成分毎にそれぞれ乗算するステップと、
変換係数が乗算された後の値を、第２の表色系の各色成分毎にそれぞれ加算するステップと、
各色成分毎に加算された値をそれぞれ予め設定されたビット数だけシフトして、第２の表色系の画像データの各色成分の値として出力するステップとをコンピュータに実行させるためのプログラムである。
【発明の効果】
【００１０】
請求項１に係る本発明によれば、変換係数を乗算した後に全ての項に対してシフト演算を行う場合や、変換係数を乗算した項を全て加算した後に一括してシフト演算を行う場合と比較して、少ない演算処理で精度の高い色変換を実現することが可能な画像処理装置を提供することができる。
【００１１】
請求項２に係る本発明によれば、請求項１に係る本発明により得られる効果に加えて、演算処理量と色変換精度のバランスを適切に保つことができるという効果を得ることができる。
【００１２】
請求項３に係る本発明によれば、第１の表色系の画像データから２次項を算出して色変換を行う際に、変換係数を乗算した後に全ての項に対してシフト演算を行う場合や、変換係数を乗算した項を全て加算した後に一括してシフト演算を行う場合と比較して、少ない演算処理で精度の高い色変換を実現することが可能な画像処理装置を提供することができる。
【００１３】
請求項４に係る本発明によれば、ＲＧＢ表色系の画像データをＬ＊ａ＊ｂ＊表色系の画像データに色変換を行う際に、変換係数を乗算した後に全ての項に対してシフト演算を行う場合や、変換係数を乗算した項を全て加算した後に一括してシフト演算を行う場合と比較して、少ない演算処理で精度の高い色変換を実現することが可能な画像処理装置を提供することができる。
【００１４】
請求項５に係る本発明によれば、変換係数を乗算した後に全ての項に対してシフト演算を行う場合や、変換係数を乗算した項を全て加算した後に一括してシフト演算を行う場合と比較して、少ない演算処理で精度の高い色変換を実現することが可能なプログラムを提供することができる。
【図面の簡単な説明】
【００１５】
【図１】ＲＧＢの色成分で表されたＲＧＢ表色系の画像データをＬ＊ａ＊ｂ＊表色系の画像データに変換するために行なわれる３×９の行列演算を説明するための図である。
【図２】図１に示したような行列演算を行う場合の変換係数の値の例を示す図である。
【図３】ＲＧＢ表色系の画像データをＬ＊ａ＊ｂ＊表色系の画像データに変換する演算処理をデジタル処理により行うための画像処理装置の構成を示す図である。
【図４】通常方式の演算器８２の具体的な構成の一例を示す図である。
【図５】図４に示した通常方式の演算器８２において使用される変換係数およびシフト量の例を示す図である。
【図６】図４に示した通常方式の演算器８２における乗算処理およびシフト演算処理を具体的に説明するための図である。
【図７】共通シフト方式の演算器８２の具体的な構成の一例を示す図である。
【図８】図７に示した共通シフト方式の演算器８２において使用される変換係数および共通シフト量の例を示す図である。
【図９】本発明の一実施形態の画像処理装置のハードウェア構成を示す図である。
【図１０】本発明の一実施形態の画像処理装置の機能構成を示すブロック図である。
【図１１】本発明の一実施形態の画像処理装置において使用される変換係数、プリシフト量、および共通シフト量の例を示す図である。
【図１２】実数計算値、通常方式、共通シフト方式および本実施形態の演算方式における演算結果を示す図である。
【図１３】１クロックでシフト演算処理と乗算処理を同時に実行可能な機能を備えるＤＳＰを用いた場合の演算処理を回路的な表現で記載した図である。
【発明を実施するための形態】
【００１６】
[背景]
まず、本発明の理解を助けるために、その背景及び概略を説明する。
【００１７】
ある色空間の画像データを他の色空間の画像データに変換する方法として、Ｎ×Ｍの行列演算を行う方法が知られている。例えば、ＲＧＢの色成分で表されたＲＧＢ表色系の画像データをＬ＊ａ＊ｂ＊表色系の画像データに変換するために、図１に示すような３×９の行列演算を行う方法が知られている。
【００１８】
この図１に示した行列演算では、入力信号として、Ｂ、Ｇ、Ｒ、Ｂ×Ｂ、Ｇ×Ｇ、Ｒ×Ｒ、Ｂ×Ｇ、Ｇ×Ｒ、Ｒ×Ｂという９つの値が入力され、出力として、Ｌ＊、ａ＊、ｂ＊という３つの値が出力信号として得られる。
【００１９】
この行列演算を行うことにより例えば、Ｌ＊＝Ｃ11×Ｂ＋Ｃ12×Ｇ＋・・・・・＋Ｃ19×Ｒ×Ｂというような演算が行われ、Ｌ＊、ａ＊、ｂ＊の値がそれぞれ算出される。このような行列演算を行う場合の変換係数Ｃ11、Ｃ12、・・・Ｃ39の値の例を図２に示す。
【００２０】
上記のような演算処理をデジタル処理により行うためには、一般的に先ず変換係数の実数値を整数値とシフト量に変換しておき、実際の演算処理を行う場合には、先ず入力値に整数値を乗算し、得られた値を予め設定されたシフト量だけシフトすることにより除算する方法が行われている。
【００２１】
このような演算を行うための画像処理装置の構成を図３に示す。この画像処理装置は、２次項生成部８１と、Ｌ＊、ａ＊、ｂ＊の色成分毎に設けられた演算器８２、８３、８４とから構成されている。
【００２２】
２次項生成部８１は、３色の色成分Ｂ、Ｇ、Ｒにより表現されたＲＧＢ表色系の画像データを入力し、その３色の色成分から選択可能な全ての２色の色成分の乗算値Ｂ×Ｇ、Ｇ×Ｒ、Ｒ×Ｇおよび各色成分の自乗値（２乗値）Ｂ×Ｂ、Ｇ×Ｇ、Ｒ×Ｒをそれぞれ算出し、入力した３色の色成分とともに出力する。
【００２３】
演算器８２、８３、８４は、それぞれ、色成分生成期８１から出力された９つの値に基づいて、Ｌ＊、ａ＊、ｂ＊の値を算出する。
【００２４】
この演算器８２の具体的な構成の一例を図４に示す。この図４に示した演算器８２は、最も一般的な方式（以下通常方式と呼ぶ）であり、乗算器９１〜９９と、シフト演算器１０１〜１０９と、加算器１１０とから構成されている。
【００２５】
乗算器９１〜９９は、それぞれ、入力値である９つの値Ｂ、Ｇ、Ｒ、Ｂ×Ｂ、Ｇ×Ｇ、Ｒ×Ｒ、Ｂ×Ｇ、Ｇ×Ｒ、Ｒ×Ｂに対して、図５に示すような変換係数Ｄ11、Ｄ12、・・・、Ｄ19を乗算する。
【００２６】
この図５に示す変換係数Ｄ11、・・・、Ｄ39およびシフト量sft11、・・・、sft39は、図２に示した変換係数を整数の変換係数とシフト量に変換したものである。
【００２７】
そして、シフト演算器１０１〜１０９は、図５に示すようなシフト量sft11、sft12、・・・、sft19により指定されたビット数だけ、乗算器９１〜９９により変換係数が乗算された後の値をシフトする。
【００２８】
そして、加算器１１０は、シフト演算器１０１〜１０９からの出力値を全て加算して、Ｌ＊の値として出力する。
【００２９】
なお、図５において変換係数Ｄ21、Ｄ22、・・・、Ｄ29およびシフト量sft21、sft22、・・・、sft29は、ａ＊の値を算出するためのものである。また、変換係数Ｄ31、Ｄ32、・・・、Ｄ39およびシフト量sft31、sft32、・・・、sft39は、ｂ＊の値を算出するためのものである。
【００３０】
このような色変換処理では、乗算処理およびシフト演算処理は、１つの項に注目すると図６に示すように行われる。この図６は、色成分Ｂの値に変換係数Ｄ11＝−５７１を乗算し、sft11＝１２ビットだけシフト演算する場合を示すものである。
【００３１】
なお、入力値である色成分Ｂの値は８ビットにより表現され、変換係数Ｄ11は符号付の１１ビットにより表現され、シフト量sft11は５ビットにより表現されている。
【００３２】
入力値である１００は、乗算器９１により変換係数Ｄ11＝−５７１が乗算されることにより１９ビットで表現される値（−５７１００）となる。そして、この値はシフト演算器１０１により１２ビットだけシフトされることにより−１３．９３７５となり加算器１１０に出力される。
【００３３】
もし、図２に示した変換係数Ｃ11＝−０．１３９６１０１２６６１５を用いて実数計算を行った場合、１００×Ｃ11＝−１３．９６１０１２６６１５となるため、図６に示した方法によりほぼ同等の結果が得られていることがわかる。
【００３４】
また、演算器８２の具体的な構成の他の例を図７に示す。この図７に示した演算器８２は、シフト演算を行う回数を減らすことを目的として、シフト演算を加算器１１０の出力値に対して１回のみ行うようにした共通シフト方式と呼ばれる構成であり、乗算器９１〜９９と、加算器１１０と、シフト演算器１２０とから構成されている。なお、図７において、図４中の構成要素と同一の構成要素には同一の符号を付し、説明を省略するものとする。
【００３５】
乗算器９１〜９９は、それぞれ、入力値である９つの値Ｂ、Ｇ、Ｒ、Ｂ×Ｂ、Ｇ×Ｇ、Ｒ×Ｒ、Ｂ×Ｇ、Ｇ×Ｒ、Ｒ×Ｂに対して、図８に示すような変換係数Ｅ11、Ｅ12、・・・、Ｅ19を乗算する。
【００３６】
この図８に示す変換係数Ｅ11、・・・、Ｅ39および共通シフト量sftＬ、sft  ａ、sft  ｂは、図２に示した変換係数を整数の変換係数と共通シフト量に変換したものである。
【００３７】
そして、加算器１１０は、乗算器９１〜９９からの出力値を全て加算して出力する。シフト演算器１２０は、共通シフト量sftＬ（１４ビット）により指定されたビット数だけ、加算器１１０の出力値をシフトして、Ｌ＊の値として出力する。
【００３８】
この共通シフト方式の演算処理によれば、図４の通常方式と比較してシフト演算処理が少なくなっていることが分かる。
【００３９】
[実施形態]
次に、本発明の実施の形態について図面を参照して詳細に説明する。
図９は本発明の一実施形態の画像処理装置のハードウェア構成を示す図である。
【００４０】
本実施形態の画像処理装置は、図９に示されるように、ＤＳＰ(Digital Signal Processor)１１と、メモリ１２と、ＲＯＭ１３とにより構成されている。
【００４１】
ＤＳＰ１１は、メモリ１２またはＲＯＭ１３に格納された制御プログラムに基づいて所定の処理を実行することによりＲＧＢ表色系の画像データをＬ＊ａ＊ｂ＊表色系の画像データへの色変換処理を実現する。なお、本実施形態では、ＤＳＰ１１は、メモリ１２またはＲＯＭ１３内に格納された制御プログラムを読み出して実行するものとして説明したが、当該プログラムをＣＤ−ＲＯＭ等の記憶媒体に格納してＤＳＰ１１に提供することも可能である。
【００４２】
図１０は、上記の制御プログラムが実行されることにより実現される本実施形態の画像処理装置の機能構成を示すブロック図である。
【００４３】
本実施形態の画像処理装置は、図１０に示されるように、２次項生成部２０と、プリシフト部３０と、乗算部４０Ｌ、４０ａ、４０ｂと、加算器５０Ｌ、５０ａ、５０ｂと、シフト演算器６０Ｌ、６０ａ、６０ｂとを備えている。
【００４４】
また、プリシフト部３０は、シフト演算器３１〜３６から構成されている。また、乗算部４０Ｌは、乗算器４１〜４９から構成されている。なお、乗算部４０ａ、４０ｂの構成は乗算部４０Ｌと同様な構成であるため、その説明は省略する。
【００４５】
２次項生成部２０は、ＲＧＢ表色系の画像データに対して３つの色成分Ｒ、Ｇ、Ｂから選択した異なる２色の色成分の乗算値（ＢＧ、ＧＲ、ＧＢ）および各色成分の自乗値（ＢＢ、ＧＧ、ＲＲ）を２次項の値としてそれぞれ算出する。なお、本実施形態における２次項生成部２０は、入力されたＢＧＲの各色成分の値もそのまま出力している。
【００４６】
プリシフト部３０におけるシフト演算器３１〜３６は、それぞれ、２次項生成部２０により算出された６つの２次項の値を、それぞれプリシフト量Ｓbb、Ｓgg、・・・、Ｓrbにより設定されたビット数だけシフトする。
【００４７】
乗算部４０Ｌにおける乗算器４１〜４９は、ＲＧＢ表色系の画像データの３つの色成分の値（Ｂ、Ｇ、Ｒ）およびプリシフト部３０においてシフト演算された後の値に対して、予め設定された９つの変換係数Ｃ1〜Ｃ9を、Ｌ＊ａ＊ｂ＊表色系の各色成分毎にそれぞれ乗算する。
【００４８】
加算器５０Ｌは、９つの乗算器４１〜４９により変換係数Ｃ１〜Ｃ9が乗算された後の値を加算して出力する。
【００４９】
シフト演算器６０Ｌは、加算器５０Ｌにより加算された値を共通シフト量ＳＬとして設定されたビット数だけシフトして、Ｌ＊ａ＊ｂ＊表色系の画像データのＬ＊成分の値として出力する。
【００５０】
また、上記で説明したのと同様な処理により、乗算部４０ａ、加算器５０ａによりａ＊成分の値が算出され、乗算部４０ｂ、加算器５０ｂによりｂ＊成分の値が算出される。
【００５１】
本実施形態において３色の出力値を得るために必要なシフト演算回数は、シフト演算器３１〜３６、６０Ｌ、６０ａ、６０ｂにおいて行われる合計９回である。
【００５２】
これに対して、図４に示した通常方式では、１色の出力を得るためにシフト演算器１０１〜１０９分の９回のシフト演算処理が必要であり、３色の出力を得るためには２７（＝９回×３色）回のシフト演算が必要となっている。
【００５３】
本実施形態では、２次の項（ＢＢ、ＧＧ、ＲＲ、ＢＧ、ＧＲ、ＲＢ）については変換係数Ｃ4〜Ｃ9を乗算する前にプリシフト部３０におけるシフト演算が行われるため、Ｌ＊、ａ＊、ｂ＊の３色で共通したシフト演算を行うことが可能となり、各色毎に独立してシフト演算を行う場合と比較してシフト演算の回数が削減されている。
【００５４】
次に、本実施形態の画像処理装置において使用される変換係数Ｃ1〜Ｃ9、プリシフト量Ｓbb〜Ｓrb、および共通シフト量ＳＬ、Ｓａ、Ｓｂの例を図１１に示す。この図１１に示した変換係数やプリシフト量、共通シフト量は、図２に示した変換係数による演算と同じ演算を行うために設定された値である。また、ここではＬ＊成分を算出するための変換係数、ａ＊成分を算出するための変換係数、ｂ＊成分を算出するための変換係数を全てＣ1〜Ｃ9で表現しているが、図１１に示すように、これらの変換係数はＬ＊、ａ＊、ｂ＊の各色毎に設定される異なる係数である。
【００５５】
なお、図１１に示した例では、プリシフト量Ｓbb〜Ｓrbは共通して４ビット、共通シフト量ＳＬ、Ｓａ、Ｓｂは全て１４ビットに設定する場合が示されているが、これらのシフト量をそれぞれ異なる値に設定することも可能である。
【００５６】
図２に示したような実数値を整数部とシフト量に置き換えるためには、まず、各実数値の中で最も大きい値が整数部のビット幅を超えない範囲で最大に保たれるようにする。例えば、図２に示す変換係数を整数部とシフト量に置き換える場合、置き換えた後の変換係数を符号付１６ビットで表現しようとすると、変換係数は±３２７６８（＝２15）の範囲としなければならない。そして、図２に示された変換係数で絶対値が最も大きな変換係数はＣ22＝１．３９５０５６９６２９６７であるため、この変換係数Ｃ22が上述した範囲に収まるような共通シフト量を設定する。具体的には、１．３９５０５６９６２９６７×２14＝２２８５６．６１３２６であり、１．３９５０５６９６２９６７×２15＝４５７１３．２２６５２であるため、上記の範囲を超えない共通シフト量として１４が設定される。
【００５７】
そして、２次の項に対する変換係数については、整数部のビット幅を超えない範囲で大きくなるようにプリシフト部３０のプリシフト量を設定する。例えば、プリシフト量を４ビットとした場合、２次の項に対する変換係数Ｃ4〜Ｃ9については、値が約２4倍となるように設定する。
【００５８】
そのため、図８に示した共通シフト方式の変換係数と比較して、図１１に示した本実施形態における変換係数は、２次の項に対する変換係数のみが約１６倍になっているのが分かる。そのため、本実施形態における演算処理の結果は、多次項に乗算される変換係数Ｃ4〜Ｃ9の実効ビットは、共通シフト方式と比較して大きくなっている。
【００５９】
何故ならば、２次の項は２つの値の乗算値であるため、ＲＧＢ単独の値と比較して絶対値が大きくなり、変換係数は相対的に小さくなるが、本実施形態の方式では、この２次の項を大きくすることにより実数計算値との間の誤差が少なくなるからである。
【００６０】
例えば、入力値をＢ＝１５０、Ｇ＝２００、Ｒ＝２５０とした場合の各演算方式による演算結果を図１２に示す。
【００６１】
この図１２を参照すると、実数計算値（理論値）と比較して最も近い値が得られるのは通常方式であるが、本実施形態における演算結果もこの通常方式とほぼ同程度の精度となっていることが分かる。また、共通シフト方式の演算結果は、通常方式や本実施形態における演算方式と比較すると、実数計算値との色差が大きくなっているのが分かる。
【００６２】
また、１クロックでシフト演算処理と乗算処理を同時に実行可能な機能を備えるＤＳＰを用いると、２次の項に対するプリシフト演算処理（プリシフト部３０）と、乗算部４０Ｌにおける乗算処理を１クロックで実行することが可能となる。つまり、このようなＤＳＰを用いることにより、図７に示した共通シフト方式と同じ演算処理量で色変換精度が通常方式に近づくこととなる。
【００６３】
このようなＤＳＰを用いた場合の演算処理を回路的な表現で記載したものを図１３に示す。
この図１３に示した構成では、シフト演算器３１〜３６と、乗算器４１〜４９と、加算器７１〜７８と、シフト演算器６０Ｌにより演算処理が行われている。
【００６４】
図１３に示すように、１クロックでシフト演算処理と乗算処理を同時に実行可能な機能を備えるＤＳＰを用いれば、シフト演算器３１および乗算器４４の処理や、シフト演算器３２、乗算器４５および加算器７１の処理や、シフト演算器３６、乗算器４９および加算器７５の処理が１クロックで実行される。
【００６５】
[変形例]
上記実施形態では、説明を簡単にするためにＲＧＢ３色の表色系の画像データから２次の項（ＢＢ、ＧＧ、ＲＲ、ＢＧ、ＧＲ、ＲＢ）を算出して色変換のための行列演算を行う場合について説明しているが、３次項以上の多次項を算出して色変換を行うような場合にも本発明は同様に適用可能である。
【００６６】
例えば入力画像データがＲＧＢ表色系の画像データの場合、３次の項として、ＢＢＢ、ＧＧＧ、ＲＲＲ、ＢＢＲ、ＢＢＧ、ＧＧＢ、ＧＧＲ、ＲＲＢ、ＲＲＧ、ＢＧＲという１０の項を算出して上記で説明した２次の項、各色成分の値とともに行列演算を行うことにより色変換処理を実現することが可能である。
【００６７】
この場合、図１０に示した構成において、２次項生成部２０を、複数の色成分により表現された表色系の画像データに対して複数の色成分の組み合わせを乗算して得られる多次項の値を複数算出する多次項生成部に置き換えれば良い。そして、プリシフト部３０では、算出された複数の多次項の値を、それぞれ予め設定されたビット数だけシフトするようにすれば良い。
【００６８】
さらに、このような構成において、プリシフト部３０では、多次項の次数に応じたビット数だけ複数の多次項の値をシフトするようにしても良い。つまり、多次項の次数毎にシフト演算を行うシフト量を設定するようにしても良い。
【００６９】
また、上記実施形態では、ＲＧＢの色空間とＬ＊ａ＊ｂ＊の色空間との間の３入力３出力の色変換（３色の色成分を３色の色成分に変換する色変換）を行う場合を用いて説明したが、本発明はこれに限定されるものではなく、ＲＧＢ、ＣＭＹ、ＣＭＹＫ、Ｌ＊ａ＊ｂ＊、ＹＣｂＣｒ、ＸＹＺ等の他の色空間を含めた複数の色空間のうちの任意の２つの色空間の間で色変換を行う場合でも同様に本発明を適用することができるものである。
【００７０】
しかし、例えば３入力４出力の色変換を行う場合には、４色目の出力を得るために、図１に示した変換係数に対してＣ41〜Ｃ49という新たな変換係数が必要となる。
【００７１】
また、４入力３出力の色変換を行う場合には、入力項の数が４色目の値の項、４色目の自乗項、４色目と他の３色との組み合わせの項だけ増加する。例えば、ＣＭＹＫを入力とする場合には、Ｃ、Ｍ、Ｙ、Ｋ、Ｃ×Ｃ、Ｍ×Ｍ、Ｙ×Ｙ、Ｋ×Ｋ、Ｃ×Ｍ、Ｍ×Ｙ、Ｙ×Ｃ、Ｋ×Ｃ、Ｋ×Ｍ、Ｋ×Ｙという１４の項が入力項となる。また、入力項の数が増えたことにより、増えた入力項に対応する変換係数も必要となる。
【００７２】
また、ＣＭＹＫの色空間からＣ’Ｍ’Ｙ’Ｋ’の色空間への色変換のような４入力４出力の色変換を行う場合には、上記の２つの場合を組み合わせれば実現可能である。
【符号の説明】
【００７３】
１１    ＤＳＰ
１２    メモリ
１３    ＲＯＭ
２０    ２次項生成部
３０    プリシフト部
３１〜３６    シフト演算器
４０Ｌ、４０ａ、４０ｂ    乗算部
４１〜４９    乗算器
５０Ｌ、５０ａ、５０ｂ    加算器
６０Ｌ、６０ａ、６０ｂ    シフト演算器
７１〜７８    加算器
８１    ２次項生成部
８２〜８４    演算器
９１〜９９    乗算器
１０１〜１０９    シフト演算器
１１０    加算器
１２０    シフト演算器
【図１】
0005757108.tif 000002
【図２】
0005757108.tif 000003
【図３】
0005757108.tif 000004
【図４】
0005757108.tif 000005
【図５】
0005757108.tif 000006
【図６】
0005757108.tif 000007
【図７】
0005757108.tif 000008
【図８】
0005757108.tif 000009
【図９】
0005757108.tif 000010
【図１０】
0005757108.tif 000011
【図１１】
0005757108.tif 000012
【図１２】
0005757108.tif 000013
【図１３】
0005757108.tif 000014