(57)【要約】【課題】ルックアップテーブルを搭載するメモリー容量を低減しても色精度や処理速度が低下しない色変換装置を提供する。【解決手段】所定の係数を有する予め設定された変換関数を用いてルックアップテーブルを生成するテーブル生成手段と、前記ルックアップテーブルを参照して外部から入力された色入力値を前記色入力値の属する色空間と異なる色空間に属する色出力値に変換する変換手段とを有した色変換装置であって、前記テーブル生成手段は、前記色入力値の所定範囲毎に前記変換関数の前記係数を割り当てて前記ルックアップテーブルを生成する。【選択図】図３
2012124563.tif 000002
【特許請求の範囲】
【請求項１】
所定の係数を有する予め設定された変換関数を用いてルックアップテーブルを生成するテーブル生成手段と、前記ルックアップテーブルを参照して外部から入力された色入力値を前記色入力値の属する色空間と異なる色空間に属する色出力値に変換する変換手段とを有した色変換装置であって、
前記テーブル生成手段は、前記色入力値の所定範囲毎に前記変換関数の前記係数を割り当てて前記ルックアップテーブルを生成することを特徴とする色変換装置。
【請求項２】
前記ルックアップテーブルの格子点数は前記所定範囲の数より多いことを特徴とする請求項１に記載の色変換装置。
【請求項３】
前記テーブル生成手段は、前記ルックアップテーブルの格子点数を、前記所定範囲毎に割り当てられた前記係数を参照して決定することを特徴とする請求項１又は２に記載の色変換装置。
【請求項４】
請求項１から３のいずれか一項に記載の色変換装置を備えた印刷装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ルックアップテーブルを用いて色変換を行う色変換装置および印刷装置に関する。
【背景技術】
【０００２】
プリンターでは、一般的に、入力値と出力値との対応関係を記述したルックアップテーブル（Ｌｏｏｋ  Ｕｐ  Ｔａｂｌｅ：ＬＵＴ）を用いて、入力した画像データの色空間（例えばｓＲＧＢやＡｄｏｂｅ−ＲＧＢなど）からプリンターのインク量色空間（例えばＣＭＹＫインク量）に変換して印刷データを生成する。ルックアップテーブルの格子点数は搭載メモリー容量などの制約をうけるため、入力値を一定あるいは不定間隔で区切った格子でしかテーブル上に値を有さず、入力値がルックアップテーブルの格子と一致しなかった場合は近接した格子のテーブル値から各種補完演算（一般的には線形補完）を行って出力値を求めるようにするのが一般的である。
【０００３】
しかしながらこのような補完演算を行うと誤差が生じるため、色変換精度を向上させるためにはルックアップテーブルの格子点数を増やす必要があるが、ルックアップテーブルのデータサイズが大きくなり、搭載するメモリー容量の増大を招く。また、ルックアップテーブルは印刷する記録媒体や印刷解像度などの組み合わせによって個別に持たないと色精度が低下するため、対応する記録媒体・解像度の増加によって近年ますます搭載メモリー容量が増大する傾向にある。
【０００４】
この問題を解決するため、例えば特許文献１ではルックアップテーブルを圧縮することで、格子点数を増やしても搭載メモリー容量が増加しないように提案している。また、特許文献２では予め格納された少ない格子点数のルックアップテーブルを補完演算してより格子点数の多いルックアップテーブルに展開する技術を提案している。また、特許文献３に記載されているように、ルックアップテーブルでなく関数を用いて色変換を行うことで色精度を向上させる方法も提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０００−２２９７４号公報
【特許文献２】特開２００５−２１０７４０号公報
【特許文献３】特開２００６−２４６２３６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１に記載の技術は圧縮率を一定以下にすることが困難であるため、より一層の色精度向上や対応記録媒体・解像度数増加を求められたときに対応できない。また、特許文献２に記載の技術はルックアップテーブルの値をもとに補完を行うので、補完の誤差により色精度の低下を招く。また、特許文献３に記載の技術を用いると色精度は高くなるが、計算速度が遅くなるため、印刷速度の低下を招く。
【課題を解決するための手段】
【０００７】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
【０００８】
本発明は、所定の係数を有する予め設定された変換関数を用いてルックアップテーブルを生成するテーブル生成手段と、前記ルックアップテーブルを参照して外部から入力された色入力値を前記色入力値の属する色空間と異なる色空間に属する色出力値に変換する変換手段とを有した色変換装置であって、前記テーブル生成手段は、前記色入力値の所定範囲毎に前記変換関数の前記係数を割り当てて前記ルックアップテーブルを生成することを特徴とする色変換装置を提案する。
【０００９】
本発明によれば、少ないメモリー容量で格納できる変換関数から多くの格子点数を有するルックアップテーブルを動的に生成するので、必要なメモリー容量を少なくすることができる。また、色入力値の所定範囲毎に変換関数の係数を定義し、そこからルックアップテーブルの値を算出することから、ルックアップテーブルの値を補完する手法に比べ変換精度が向上するので表示品位を損ないにくい。また、印刷時にはルックアップテーブルを参照するので計算量が少なく、印刷速度への影響を抑えることができる。
【００１０】
また本発明は、前記ルックアップテーブルの格子点数は前記所定範囲の数より多いことを特徴とする色変換装置を提案する。
本発明によれば、色入力値の所定範囲毎の変換関数の係数に基づいて、所定範囲の数よりも多くの格子点を持つルックアップテーブルを生成することができ、必要なメモリー容量を少なくすることができる。
【００１１】
また本発明は、前記テーブル生成手段は、前記ルックアップテーブルの格子点数を、前記所定範囲毎に割り当てられた前記係数を参照して決定することを特徴とする色変換装置を提案する。
本発明によれば、所定範囲毎に割り当てられた係数を参照して分割数を定めるため、非線形に変化する領域ではより細かく分割し、線形に変化する領域ではより大まかに分割することで展開するメモリー容量を削減しつつ、色精度を向上させることができる。
【００１２】
また本発明は、これらの色変換装置を備えた印刷装置を提案する。
【００１３】
本発明によれば、メモリー容量がより削減されて、色精度がよく、表示品位に優れて高速な印刷装置を提供できる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施形態に係る印刷装置の概略構成図。
【図２】本発明の実施形態に係る制御ユニットのブロック図。
【図３】制御ユニットの色変換装置としてのフローチャート。
【図４】本発明の第１の実施形態に関わる色変換関数からルックアップテーブルを作成する方式を説明するためのグラフ。
【図５】各領域における係数を示す表。
【図６】図４のＡ部拡大図。
【図７】四面体線形補完を説明するための図面。
【図８】本発明の第２の実施形態に関わる色変換関数からルックアップテーブルを作成する方式を説明するためのグラフ。
【発明を実施するための形態】
【００１５】
以下、本発明を具体化した実施形態について図面に基づいて説明する。
【００１６】
〔第１の実施形態〕
図１は本実施形態に係る印刷装置１０１の概略構成図である。紙送りモーター１１１により駆動される紙送りローラー１１２によって記録媒体１２０は搬送され、キャリッジモーター１１３によってキャリッジ１１４が記録媒体１２０の搬送方向と直交して左右に動く機構となっている。キャリッジ１１４は印刷ヘッド１１５とシアン、マゼンタ、イエロー、ブラックの各色インクカートリッジ１１６よりなり、キャリッジ１１４の移動と同期して記録媒体１２０にインクを吐出し、キャリッジ１１４が端まで移動すると紙送りモーター１１１によって紙送りローラー１１２が一定量回転し、記録媒体１２０が一定量送られる。以上の動作を繰り返すことで記録媒体１２０に印刷画像が形成される。制御ユニット１３０は紙送りモーター１１１、キャリッジモーター１１３に接続されてこれらの制御を行っている。また、印刷ヘッド１１５も制御ユニット１３０に接続され、記録媒体１２０と印刷ヘッド１１５が重なっている部分に対して適切なインク量を吐出するように制御することで、記録媒体１２０上に外部から送信されてきた画像データに対応する画像を印刷するように構成される。
【００１７】
図２は制御ユニット１３０のブロック図であり、ＣＰＵ１３１、ＲＯＭ１３２、ＲＡＭ１３３、ＥＥＰＲＯＭ１３４がバスで相互に接続されて構成されており、ＣＰＵ１３１がＲＯＭ１３２上に記憶されたプログラムを実行することにより、色変換装置として機能する。このプログラムには色変換関数１４１の計算プログラムが含まれており、ＥＥＰＲＯＭ１３４上には色変換関数１４１の係数を複数備えた係数テーブル群１４２Ｓ（後述）が記録されている。
【００１８】
図３は制御ユニット１３０の色変換装置としてのフローチャートである。ステップＳ−０１で制御ユニット１３０は外部より用紙（記録媒体）種類および解像度を指定する設定情報を受け取り、ステップＳ−０２でそれに対応した係数テーブル１４２を係数テーブル群１４２Ｓより選択する。本実施形態では１２種類の用紙について、各４個の解像度を設定できる印刷装置であり、係数テーブル群１４２Ｓには４８個の係数テーブル１４２が用意されている。係数テーブル１４２は色変換関数１４１の係数が複数備えられたテーブルであり、おのおの１６３８４個の係数Ｃ（ｍ，ｎ，ｉ，ｊ，ｋ）が格納されている。ここでｍ＝１〜６４、ｎ＝１〜４、ｉ＝０〜３、ｊ＝０〜３、ｋ＝０〜３の整数であり、係数Ｃ（ｍ，ｎ，ｉ，ｊ，ｋ）はＩＥＥＥ  Ｓｔａｎｄａｒｄ  ｆｏｒ  Ｆｌｏａｔｉｎｇ−Ｐｏｉｎｔ  Ａｒｉｔｈｍｅｔｉｃ（ＡＮＳＩ／ＩＥＥＥ  Ｓｔｄ  ７５４−２００８）によって規定される倍精度浮動小数点値（８バイト）としてＥＥＰＲＯＭ１３４上に格納される。
【００１９】
色変換関数１４１は以下の数式１に示す三次スプライン関数であって、係数Ｃ（ｍ，ｎ，ｉ，ｊ，ｋ）を引数とした関数プログラムがＲＯＭ１３２上に格納されている。ｆｍ，ｎ（Ｒ，Ｇ，Ｂ）はｎ＝１のときシアンのインク量に、ｎ＝２のときマゼンタのインク量に、ｎ＝３のときイエローのインク量に、ｎ＝４のときブラックのインク量にそれぞれ対応する関数であって、ｍは領域に対応する。
【００２０】
【数１】
2012124563.tif 000003
【００２１】
ここで、ｆｍ，ｎ（Ｒ，Ｇ，Ｂ）の引数である色入力値Ｒ，Ｇ，Ｂは外部から送信される画像データに含まれる色情報であり、本実施形態ではｓＲＧＢ（ｓｔａｎｄａｒｄ  ＲＧＢ  ｃｏｌｏｒ  ｓｐａｃｅ）規格によって定義されたＲ，Ｇ，Ｂ各１バイトの計３バイトの色情報である。すなわち、Ｒ，Ｇ，Ｂ各値は０〜２５５の値をとり、その組み合わせは１６，７７７，２１６通りとなる。一方、前述した係数テーブル１４２の領域ｍはＲ，Ｇ，Ｂ各４領域に均等分割された６４個の領域であり、例えばｍ＝１の領域は０≦Ｒ≦６３、０≦Ｇ≦６３、０≦Ｂ≦６３の入力値に対応し、ｍ＝２の領域は６４≦Ｒ≦１２７、０≦Ｇ≦６３、０≦Ｂ≦６３の入力値に対応し、ｍ＝６４の領域は１９２≦Ｒ≦２５５、１９２≦Ｇ≦２５５、１９２≦Ｂ≦２５５の入力値に対応する。
【００２２】
次に図３のステップＳ−０３で色変換関数１４１を用い、Ｒ，Ｇ，Ｂ各入力値を０，５，１０，１５，…２５０，２５５のように値を５ずつ変えてシアン、マゼンタ、イエロー、ブラックのインク量を求め、算出した値をルックアップテーブル（ＬＵＴ）としてＲＡＭ１３３上に形成する（テーブル生成手段）。Ｒ，Ｇ，Ｂ各値に対して格子点数は５２個であるから、ルックアップテーブル全体としては５２×５２×５２＝１４０６０８個の格子点を持つことになる。すなわち、６４個の領域に分割された色変換関数の係数をもとに、１４０６０８個の格子点を持つルックアップテーブルを生成するのである（図４から図６を用いて詳述する）。なお、本ステップは前回と同じ係数テーブル１４２を選択している場合は既に対応するルックアップテーブルがＲＡＭ１３３上に形成されているのでスキップされる。
【００２３】
次に画像データが外部より送信されてくるのでこれを受信する（図３のステップＳ−０４）。ＲＡＭ１３３上に適宜バッファリングしながら、画像データに含まれる各画像点のｓＲＧＢ色情報（Ｒ，Ｇ，Ｂ値）を色入力値として、ＲＡＭ１３３上のルックアップテーブル及び四面体線形補完を用いてシアン、マゼンタ、イエロー、ブラックのインク量に変換（ステップＳ−０５。変換手段、図７を用いて詳述する）する。このインク量に対応する制御信号を制御ユニット１３０から印刷ヘッド１１５に送信する（ステップＳ−０６）ことで記録媒体１２０上に送信されたデータに対応した画像が形成されていく。
【００２４】
図４は図３のステップＳ−０３におけるＲＡＭ１３３上のルックアップテーブルの作成の様子を説明するためのグラフである。本グラフは色入力値のＧ値及びＢ値は０に固定したときのＲ値に沿ったブラックインク（ｎ＝４）の色変換関数１４１とそこから生成されるルックアップテーブルの格子点の様子を示している。色変換関数はＢ＝０、Ｇ＝０で固定されたＲ値軸沿いにはｍ＝１、ｍ＝２、ｍ＝３、ｍ＝４の４領域に分割されており、０≦Ｒ≦６３はｍ＝１の領域、６４≦Ｒ≦１２７はｍ＝２の領域、１２８≦Ｒ≦１９１はｍ＝３の領域、１９２≦Ｒ≦２５５はｍ＝４の領域にそれぞれ対応している。入力値がＢ＝０、Ｇ＝０で固定されたときのブラックインク（ｎ＝４）に対応した色変換関数１４１は、数式１を変形し、以下の数式２で与えられる。
【００２５】
【数２】
2012124563.tif 000004
【００２６】
ここで色変換関数１４１はスプライン関数であるので、領域の境界において連続かつ微分可能なように各領域の係数Ｃ（ｍ，４，ｉ，０，０）は設定されており、図４に示したように全体で滑らかで連続な関数である。このように、色変換関数１４１は複数の領域で異なる係数を持つスプライン関数として定義されるため、非線形な変化を自由に定義できる。図４のＣで示す曲線は領域の分割をせず、一つの３次式で色変換関数を定義したときのグラフであり、自由度が低いためスプライン関数である色変換関数１４１と大きく乖離する。このような領域を分割しない関数では色精度が著しく低下する。
【００２７】
ＬＵＴの格子点はＢ＝０，Ｇ＝０に固定したときはＲ＝０，５，１０，…，２５０，２５５の５２格子点が存在し、図４では点線Ｂで示す。このうち、Ｒ＝０，５，…，６０の１３点がｍ＝１領域、Ｒ＝６５，７０，…，１２５の１３点がｍ＝２領域、Ｒ＝１３０，１３５，…，１９０の１３点がｍ＝３領域、Ｒ＝１９５，２００，２０５，…，２５５の１３点がｍ＝４領域にそれぞれ含まれる。入力値Ｒが入力されると、対応する領域（ｍ＝１〜４）に応じた係数Ｃ（ｍ，ｎ，ｉ，ｊ，ｋ）が選択され、数式２の式に従って各格子点（Ｒ＝０，５，１０，…，２５０，２５５）におけるブラックインクに対応した出力値がＲＡＭ１３３上のルックアップテーブルにセットされる。
【００２８】
図５に係数Ｃ（ｍ，ｎ，ｉ，ｊ，ｋ）のうち、領域ｍ＝１〜４における数式２の計算に必要な係数であるＣ（ｍ，４，０〜３，０，０）を抜粋して示す。図５に示すように、領域ｍごとに異なる係数が与えられている。
【００２９】
図６は図４のＡ部拡大図である。Ａ部はｍ＝１に対応した領域であり、図５のｍ＝１の行に示した係数Ｃ（１，４，０，０，０）、Ｃ（１，４，１，０，０）、Ｃ（１，４，２，０，０）、Ｃ（１，４，３，０，０）の値を数式２に代入して得られた以下の数式３の３次式のグラフである。
【００３０】
【数３】
2012124563.tif 000005
【００３１】
数式３からＲ＝０ではｆm=1,n=4（０，０，０）＝２５５．０を得る。同様にＲ＝５，１０，１５に対してはｆm=1,n=4（５，０，０）＝２４４．８、ｆm=1,n=4（１０，０，０）＝２３５．４、ｆm=1,n=4（１５，０，０）＝２２６．７を得る（いずれも小数点以下１桁で記載した）。これらを小数点以下四捨五入し、入力値（Ｒ，Ｇ，Ｂ）＝（０，０，０）に対応したブラックインクのルックアップテーブルの格子点には２５５、入力値（Ｒ，Ｇ，Ｂ）＝（５，０，０）に対応した格子点には２４５、入力値（Ｒ，Ｇ，Ｂ）＝（１０，０，０）に対応した格子点には２３５、入力値（Ｒ，Ｇ，Ｂ）＝（１５，０，０）に対応した格子点には２２７が各１バイトの整数でＲＡＭ１３３上にセットされる。以上のような処理をルックアップテーブルの全格子点（５２×５２×５２＝１４０６０８個）に対して行うことでルックアップテーブルがＲＡＭ１３３上に形成される。なお、数式１から数式３で得られた数値が負の場合は０、２５６以上の場合は２５５に補正してルックアップテーブルに格納する。
【００３２】
図７（ａ）（ｂ）はステップＳ−０５でのＲＡＭ１３３上に形成されたルックアップテーブルを用いて画像データの（Ｒ，Ｇ，Ｂ）値をシアン、マゼンタ、イエロー、ブラックのインク量に変換する四面体線形補完を説明するための図である。図７（ａ）はルックアップテーブルの格子点を三次元的に示したものであり、各立方体の頂点がルックアップテーブルの格子点に相当し、各格子点にシアン、マゼンタ、イエロー、ブラックのインク量が０〜２５５の整数で格納されている。なお、本実施の形態では格子点数は５２×５２×５２であるが、図７（ａ）では視認性を優先して５×５×５で示している。画像データから（Ｒ，Ｇ，Ｂ）値が抽出されると、その（Ｒ，Ｇ，Ｂ）値を座標として内包する立方体ｃが定まる。この立方体ｃの８つの頂点のうち、Ｒ，Ｇ，Ｂ値の最も小さい頂点を原点（０，０，０）として画像データの入力値（Ｒ，Ｇ，Ｂ）を相対座標系（Ｒ’，Ｇ’，Ｂ’）に変換すると、図７（ｂ）に示すようにＲ’，Ｇ’，Ｂ’の大小関係によって立方体ｃの頂点のうち四個を用いた６種類の四面体のうち画像データの入力値（Ｒ’，Ｇ’，Ｂ’）を内包する一つが選択される。この四面体の頂点にあたる格子点のインク量データをルックアップテーブルから参照し、数式４に示す各頂点に応じた重みを乗じた平均値ｆaveを求めることで四面体線形補完が実施される。ここでｉ＝１〜４は四面体の４つの頂点を示すインデックスであり、ｆｉは頂点ｉにおけるルックアップテーブルに格納されるインク量であり、ｖは四面体の体積であり、ｖｉは頂点ｉを除いた四面体の残りの３つの頂点と画像データの入力値（Ｒ’，Ｇ’，Ｂ’）座標を頂点とした小四面体の体積である。
【００３３】
【数４】
2012124563.tif 000006
【００３４】
本実施形態では、１６３８４個の係数を持つ係数テーブル１４２をもとに、１４０６０８個の格子点を持つルックアップテーブルをインク数分（＝４個）作成している。各係数は８バイトの倍精度浮動小数点、ルックアップテーブルの格子点情報は１バイトの整数であり、ルックアップテーブルをＥＥＰＲＯＭ１３４に格納した場合に比べ、ＥＥＰＲＯＭ１３４の容量は４分の１以下ですむため、メモリー容量を少なくできる。また、係数を８バイトの倍精度浮動小数点でなく、４バイトの単精度浮動小数点や、２バイトの固定小数点でもてばさらにメモリー容量を少なくすることができる。ルックアップテーブルをＥＥＰＲＯＭ１３４に格納した場合でも、ルックアップテーブルの格子数をより少なくすればサイズは縮小できるが、インク量に対して色彩値が非線形に変化すると色精度が著しく低下する弊害がある。本実施形態では数式１に示すように三次の多項式（スプライン関数）をもとにルックアップテーブルのデータを生成するので、インク量に対して非線形に色彩値が変化する場合でも色精度の低下を抑えることができる。
【００３５】
また、ルックアップテーブルを展開せず、画像データの全色情報を都度、色変換関数１４１を用いて色変換すると誤差はより少なくなるが、この場合は例えば７２０ｄｐｉの解像度でＡ４サイズ（２１０×２９７ｍｍ）の画像を出力するには５０１０３９３６回の数式１に示した三次多項式演算が必要になる。ここでの演算回数は、次の算出方法に基づいている。Ａ４サイズ横のドット数が２１０×（７２０÷２５．４）＝５９５２ドット（小数点以下切捨て）、Ａ４サイズ縦のドット数が２９７×（７２０÷２５．４）＝８４１８ドット（小数点以下切捨て）となる。そして、全ドット数が５９５２×８４１８＝５０１０３９３６ドットとなる。したがって、５０１０３９３６回の演算が必要になり、印刷速度の低下を防ぐためにはＣＰＵ１３１が高速でなくてはならない。
【００３６】
本実施形態の方式ではルックアップテーブルを展開する際に全格子点（５２×５２×５２＝１４０６０８個）に対しての１４０６０８回の演算を行うだけであるので計算時間は約３５６分の１（５０１０３９３６÷１４０６０８）で済む。また、ルックアップテーブルの格子点数を十分多くとっているため、色変換の誤差は実用上問題にならない。また、本方式では記録媒体やモードが変わらない場合は２枚目以降の演算は不要であるので、連続印字を行う場合はこの差異はさらに大きくなる。本実施形態では画像データ印刷中は線形の四面体補完計算を行うだけなので、三次多項式演算に比べ演算量は大幅に少なくなり、ＣＰＵ１３１として安価で低速なものを用いても印加速度に影響することが無い。
【００３７】
このように本実施形態を用いれば、既存の技術と比して色精度が高く、高速な印刷装置を容易に製造することができる。
【００３８】
〔第２の実施形態〕
図８は第２の実施形態におけるＲＡＭ１３３上のルックアップテーブルの作成の様子を説明するためのグラフであり、第１の実施形態における図４に相当するグラフである。すなわち、色入力値のＧ値及びＢ値は０に固定されたときのＲ値に対するブラックインク（ｎ＝４）の色変換関数１４１とそこから生成されるルックアップテーブルの格子点の様子（点線Ｂ）を示している。第２の実施形態における印刷装置１０１、制御ユニット１３０の構成、制御ユニット１３０の色変換装置としてのフローチャートは第１の実施形態と全く同一であるので、同じ番号を付与することで説明は省略する。
【００３９】
本実施形態における色変換関数１４１は第１の実施形態と同様の数式１で示される関数であり、図８のように色入力値のＧ値及びＢ値は０に固定されたときには数式２で示される関数である。本実施形態では第１の実施形態とは異なり、ｍ＝１からｍ＝４の各領域により、作成されるルックアップテーブルの格子点間隔が異なる。すなわち、ｍ＝１の領域ではＲ＝０，４，８，…，５６，６０のように４ずつの間隔で格子点が形成される。ｍ＝２の領域ではＲ＝６４，８０，９６，１１２のように１６ずつの間隔で格子点が形成される。ｍ＝３の領域ではＲ＝１２８，１３６，１４４，１５２，１６０，１６８，１７６，１８４のように８ずつの間隔で格子点が形成される。ｍ＝４の領域ではＲ＝１９２，１９６，２００，…，２４８，２５２のように４ずつの間隔で格子点が形成される。
【００４０】
これらの領域ごとの格子点間隔は色変換関数１４１の非線形性が大きい領域ほど格子間隔が細かくなるように設定される。図８によると、ｍ＝１に対応する領域とｍ＝４に対応する領域で色変換関数１４１は強く非線形にカーブしており、ｍ＝２に対応する領域ではほぼ線形であり、ｍ＝３に対応する領域ではその中間である。より具体的には、本実施形態では各領域内の二次微分係数の絶対値の最大値によって分割数を決めている。すなわち、数式２のｆm,4（Ｒ，０，０）をＲで二次微分して絶対値をとった以下の数式５から、対応する範囲のＲで最大値を計算する。
【００４１】
【数５】
2012124563.tif 000007
【００４２】
例えばｍ＝１に対応する領域なら第１の実施形態例と同様に図５のｍ＝１の行に示した係数Ｃ（１，４，２，０，０）＝０．０１５００、Ｃ（１，４，３，０，０）＝−０．００００２５が参照され、数式３にこれを代入して以下の数式６を得る。
【００４３】
【数６】
2012124563.tif 000008
【００４４】
対応する０≦Ｒ≦６３領域での数式６の最大値はＲ＝０における０．０３である。同様にｍ＝２に対応する領域なら最大値は０．０００３であり、ｍ＝３に対応する領域なら最大値は０．００１３であり、ｍ＝４に対応する領域なら最大値は０．０３７４０１２であった。なお、ここまで入力値Ｇ、Ｂは固定して入力値Ｒのみで説明したが、実際にはＲ，Ｇ，Ｂについてそれぞれ二次偏微分した絶対値の領域内最大値から、Ｒ方向・Ｇ方向・Ｂ方向それぞれの格子点数の判定を個別に行う。
【００４５】
本実施形態では数式４の領域内最大値が０．０１を上回る場合は４ずつの間隔で、最大値が０．００１を下回る場合は１６ずつの間隔で、最大値が０．００１から０．０１の間である場合は８ずつの間隔でルックアップテーブルの格子点間隔を決定している。すなわち、ｍ＝１およびｍ＝４の領域では４ずつ、ｍ＝２の領域では１６ずつ、ｍ＝３の領域では８ずつの間隔で格子点を設ける。従って、Ｒ軸におけるルックアップテーブルの格子点はＲ＝０，４，８，１２，１６，２０，２４，２８，３２，３６，４０，４４，４８，５２，５６，６０，６４，８０，９６，１１２，１２８，１３６，１４４，１５２，１６０，１６８，１７６，１８４，１９２，１９６，２００，２０４，２０８，２１２，２１６，２２０，２２４，２２８，２３２，２３６，２４０，２４４，２４８，２５２，２５５と決定される。なお、ここでＲ，Ｇ，Ｂの上下限である０と２５５は強制的に格子点となる。
【００４６】
これにより、第１の実施形態ではＲ軸上に５２個の格子数があったものを、本実施形態では４５個の格子数に削減している。Ｇ，Ｂ軸方向にも同様の格子点数削減が可能であるので、ルックアップテーブルの格子点数は４５の３乗で９１１２５点となり、第１の実施形態でのルックアップテーブルの格子点数の１４０６０８点と比較して３分の２以下になり、ＲＡＭ１３３の容量をその分、小さくすることができるのでコストが安くなる。一方で、色変換関数１４１の非線形性の強い領域では第１の実施形態と同等以上の格子点数を持っているため、色精度は低下しない。また、ルックアップテーブルを展開する際の計算回数はルックアップテーブルの格子点数に比例するので同様に３分の２以下にできるため、ＣＰＵ１３１として第１の実施形態例よりさらに安価なものを用いても印刷速度に影響することが無い。
【００４７】
このように、色変換関数１４１の領域毎の係数から、非線形性が強い領域では格子点を細かく、非線形性が弱い領域では格子点数を少なくすることで、色精度を犠牲にすることなく、ルックアップテーブルのサイズを低減して搭載するメモリー容量を少なくすることでコストを低減することができる。
【００４８】
本発明は上述した実施形態に限定されるものではなく、色変換関数１４１は三次スプライン関数だけでなく、ラグランジェ関数など、既知のあらゆる関数を用いることができる。また、色変換関数１４１に入力される色入力情報はＲ，Ｇ，Ｂだけでなく、四次元のＣ，Ｍ，Ｙ，Ｋデータや一次元の明度データであっても構わない。
【００４９】
上述した実施形態では印刷装置が色変換装置を備えた構成としたが、色変換装置は印刷装置の外部、例えば印刷装置に接続されたコンピューター上のプログラムに色変換装置を組み込むことでも実現できるし、ＲＩＰ（Ｒａｓｔｅｒ  Ｉｍａｇｅ  Ｐｒｏｃｅｓｓｏｒ）上に備えても良い。
【符号の説明】
【００５０】
１０１…印刷装置、１１５…印刷ヘッド、１３０…制御ユニット、１３３…ＲＡＭ、１３４…ＥＥＰＲＯＭ、１４１…色変換関数、１４２…係数テーブル、１４２Ｓ…係数テーブル群。
【図１】
2012124563.tif 000009
【図２】
2012124563.tif 000010
【図３】
2012124563.tif 000011
【図４】
2012124563.tif 000012
【図５】
2012124563.tif 000013
【図６】
2012124563.tif 000014
【図７】
2012124563.tif 000015
【図８】
2012124563.tif 000016