JP4165537B2 - 色変換装置および色変換プログラム - Google Patents

色変換装置および色変換プログラム Download PDF

Info

Publication number
JP4165537B2
JP4165537B2 JP2005189661A JP2005189661A JP4165537B2 JP 4165537 B2 JP4165537 B2 JP 4165537B2 JP 2005189661 A JP2005189661 A JP 2005189661A JP 2005189661 A JP2005189661 A JP 2005189661A JP 4165537 B2 JP4165537 B2 JP 4165537B2
Authority
JP
Japan
Prior art keywords
color
value
color component
memory
stored
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.)
Active
Application number
JP2005189661A
Other languages
English (en)
Other versions
JP2007013389A (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.)
Brother Industries Ltd
Original Assignee
Brother Industries 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 Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2005189661A priority Critical patent/JP4165537B2/ja
Priority to US11/476,569 priority patent/US7777924B2/en
Publication of JP2007013389A publication Critical patent/JP2007013389A/ja
Application granted granted Critical
Publication of JP4165537B2 publication Critical patent/JP4165537B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Color Image Communication Systems (AREA)
  • Image Processing (AREA)

Description

本発明は色変換装置および色変換プログラムに関するものである。
ディスプレイで表示する色は赤、緑、青の成分で構成されている。それぞれの頭文字をとってRGB形式と呼ばれる。それに対してプリンタで印刷される色は主にシアン、マゼンダ、イエロー、ブラックの成分で構成されている。これも頭文字をとってCMYK形式と呼ばれる。ディスプレイで表示している色をプリンタで印字する場合は、RGB形式で表現された色をCMYK形式に変換する色変換処理が必要である。
RGB形式からCMYK形式への色変換処理は理論的には一律の計算式で行うことが出来る。しかし一般的にはインクやトナーの質などにより、一律の計算式ではすべての色において満足する結果を得ることはできない。
そこでLook up Table(以後LUT)と呼ばれるものを使用する。これは「RGBの各色成分値がいくつの場合は、いくつのCMYKの各色成分値を使用する」ということをテーブルにまとめたものである。RGBの各色成分値が、それぞれ例えば、0〜255までの値をとる場合、RGBの各色成分値の組み合わせは256×256×256=約1677万種類ある。これらそれぞれに対して、最適なCMYKの各色成分値が与えられる。しかし、この組み合わせはあまりにも多く、これらすべてのLUTのデータを保持するのは容量的に困難であり、またLUTを作成するのも大変な手間となる。
そこで実際にはRGBの各色成分値の256段階から、ある程度の代表点を選出し、その代表点に対するCMYKの各色成分値をまとめたLUTを使用する。代表点上にあるRGBの各色成分値はLUTをそのまま参照することでCMYKの値を得ることができる。それに対して、代表点上に無いRGBの各色成分値は周りの代表点から近似値を計算する必要がある。
この近似値の計算する方法の中に、例えば、三角錐補間(4点補間)や、三角柱補間(6点補間)や、長方形補間(8点補間)というものがある。これらは入力されたRGBの各色成分値の近傍の代表点を複数個選出し、その代表点のLUTの値から近似値を計算するというものである。この近似値の計算ではLUTの値を参照し、加算と乗算を繰り返し行い、最後に除算をするということを行っている(例えば、特許文献1参照)。
特開平8−307684号公報
しかしながら、上述の加算、乗算、除算処理は、シアン、マゼンダ、イエロー、ブラックの4色に対して個別に行っていため、時間がかかっていた。また印刷作業におけるRGB形式からCMYK形式への色変換処理はすべての点に対して行う必要がある。例えばA4の用紙を600dpiの解像度で印刷しようと思う場合、色変換しなければいけない点は約3200万点にものぼり、1点に対する色変換の処理で、計算量がわずかに増加しても、色変換処理全体として見ると、大きなスピードの低下に繋がっていた。
本発明は上述した問題点を解決するためになされたものであり、色変換処理全体としての処理速度を向上することができると共に高精度な処理が可能な色変換装置および色変換プログラムを提供することを目的としている。
この目的を達成するために、請求項1記載の色変換装置は、第1の色群の各色成分値で構成される入力値を、その入力値に対応する第2の色群の各色成分値に変換して出力するものであって、前記第1の色群の各色成分値に相当する値を座標軸とする表色空間内において、前記第1の色群の各色成分値で特定される格子点に対応付けられた前記第2の色群の各色成分値を格納する色変換テーブルと、前記表色空間内において、前記色変換テーブルにおいて前記第2の色群の各色成分値が対応付けられた格子点で構成される立方体のうち、前記入力値の位置を内部に含む立方体を選択するエリア選択手段と、前記エリア選択手段により選択された立方体における前記入力値の位置を決定するエリア座標決定手段と、前記エリア座標決定手段により決定された前記入力値の位置に基づいて、前記立方体を構成する格子点のうち、少なくとも1つの格子点について重み係数を取得する重み係数取得手段と、前記重み係数取得手段により重み係数が取得された格子点に対応する前記第2の色群の各色成分値を前記色変換テーブルから読み出し1つの演算メモリの上位バイド及び下位バイトからなる互いに異なる領域を各色毎に割り当てて格納する値格納手段と、前記値格納手段により前記演算メモリの上位バイト及び下位バイトからなる領域に格納された前記第2の色群の少なくとも2色の各色成分値に、その色成分値に対応する格子点について取得されたそれぞれの重み係数を、一度の乗算処理で乗算する乗算手段と、前記乗算手段による各格子点についての乗算結果を各色毎に、一度の加算処理で累積加算する加算手段と、前記加算手段により累積加算された累積加算結果を各色毎に読み出し、その読み出した累積加算結果を前記重み係数取得手段により取得される重み係数の合計でそれぞれ除算する除算処理を、各色毎に個別の処理で行い、前記入力値に対応する前記第2の色群の各色成分値を出力する出力手段とを備えている
請求項2記載の色変換装置は、請求項1記載の色変換装置において、前記加算手段は、前記乗算手段による各格子点についての乗算結果が各色毎に累積加算された累積値であって、前記値格納手段により前記1つの演算メモリに各色成分値が格納される少なくとも2色と同じ色の累積値を、前記1つの演算メモリと同じ配置で、1つの累積値メモリの互いに異なる領域に格納し、且つ、前記乗算手段により前記1つの演算メモリに格納される少なくとも2色の各色成分値についての乗算結果と、前記1つの累積値メモリに格納された累積値とを、一度の加算処理で各色毎に加算するものである。
請求項3記載の色変換装置は、請求項1または2に記載の色変換装置において、前記色変換テーブルに格納される前記第2の色群の各色成分値の最大値が、2N−1−1より大きく2N−1以下で構成され(Nは任意の正の整数)、且つ、前記重み係数取得手段により取得される重み係数の合計の最大値が、2M−1−1より大きく2M−1以下で構成されるとき(Mは任意の正の整数)、前記値格納手段は、少なくともN+Mビットの領域を各色毎に割り当てて、少なくとも2色の各色成分値を前記1つの演算メモリの互いに異なる領域に各色毎に格納するものである。
請求項4記載の色変換装置は、請求項3記載の色変換装置において、前記乗算手段および前記加算手段として機能するCPUを備え、前記CPUは、8nビットCPUで構成され(nは任意の正の整数)、前記1つの演算メモリは前記CPUに設けられたnバイトのメモリで構成されるものであって、前記値格納手段は、前記第2の色群のうち、8n/(N+M)色の色成分値を、前記1つの演算メモリの互いに異なる領域に各色毎に格納するものである。
請求項5記載の色変換装置は、請求項1または2に記載の色変換装置において、前記色変換テーブルに格納される前記第2の色群の各色成分値の最大値が、127より大きく255以下で構成され、且つ、前記重み係数取得手段により取得される重み係数の合計の最大値が、127より大きく255以下で構成されるものであって、前記値格納手段は2バイトの領域を各色毎に割り当てて、少なくとも2色の各色成分値を前記1つの演算メモリの互いに異なる領域に各色毎に格納するものである。
請求項6記載の色変換装置は、請求項5記載の色変換装置において、前記乗算手段および前記加算手段として機能するCPUを備え、前記CPUは64ビットCPUで構成され、前記1つの演算メモリは前記CPUに設けられた8バイトのメモリで構成されるものであって、前記値格納手段は、前記第2の色群のうち、4色のそれぞれに2バイトの領域を割り当てて、4色の各色成分値を前記1つの演算メモリに格納するものである。
請求項7記載の色変換装置は、請求項5記載の色変換装置において、前記乗算手段および前記加算手段として機能するCPUを備え、前記CPUは32ビットCPUで構成され、前記1つの演算メモリは前記CPUに設けられた4バイトのメモリで構成されるものであって、前記値格納手段は、前記第2の色群のうち、2色のそれぞれに2バイトの領域を割り当てて、2色の各色成分値を前記1つの演算メモリに格納するものである。
請求項記載の色変換装置は、請求項1からのいずれかに記載の色変換装置において、前記色変換テーブルにおいて、前記格子点に対応付けられた前記第2の色群の各色成分値は、前記値格納手段により前記1つの演算メモリに書き込まれる単位で格納されている。
請求項記載の色変換装置は、請求項1からのいずれかに記載の色変換装置において、前記重み係数取得手段により取得された重み係数が0であるかを判断する重み係数判断手段を備え、前記値格納手段は、前記重み係数判断手段により、重み係数が0でないと判断された場合、その重み係数が取得された格子点に対応する前記第2の色群の各色成分値を、前記演算メモリに格納するものである。
請求項1記載の色変換プログラムは、第1の色群の各色成分値で構成される入力値を、その入力値に対応する第2の色群の各色成分値に変換して出力する機能をコンピュータに実現させるものであって、前記コンピュータは、前記第1の色群の各色成分値に相当する値を座標軸とする表色空間内において、前記第1の色群の各色成分値で特定される格子点に対応付けられた前記第2の色群の各色成分値を格納する色変換テーブルを備えるものであり、前記表色空間内において、前記色変換テーブルにおいて前記第2の色群の各色成分値が対応付けられた格子点で構成される立方体のうち、前記入力値の位置を内部に含む立方体を選択するエリア選択ステップと、前記エリア選択ステップにより選択された立方体における前記入力値の位置を決定するエリア座標決定ステップと、前記エリア座標決定ステップにより決定された前記入力値の位置に基づいて、前記立方体を構成する格子点のうち、少なくとも1つの格子点について重み係数を取得する重み係数取得ステップと、前記重み係数取得ステップにより重み係数が取得された格子点に対応する前記第2の色群の各色成分値を前記色変換テーブルから読み出し1つの演算メモリの上位バイド及び下位バイトからなる互いに異なる領域を各色毎に割り当てて格納する値格納ステップと、前記値格納ステップにより前記演算メモリの上位バイト及び下位バイトからなる領域に格納された前記第2の色群の少なくとも2色の各色成分値に、その色成分値に対応する格子点について取得されたそれぞれの重み係数を、一度の乗算処理で乗算する乗算ステップと、前記乗算ステップによる各格子点についての乗算結果を各色毎に、一度の加算処理で累積加算する加算ステップと、前記加算ステップにより累積加算された累積加算結果を各色毎に読み出し、その読み出した累積加算結果を前記重み係数取得ステップにより取得される重み係数の合計でそれぞれ除算する除算処理を、各色毎に個別の処理で行い、前記入力値に対応する前記第2の色群の各色成分値を出力する出力ステップ手段とを前記コンピュータに実行させるものである
請求項1記載の色変換プログラムは、請求項1記載の色変換プログラムにおいて、前記加算ステップは、前記乗算ステップによる各格子点についての乗算結果が各色毎に累積加算された累積値であって、前記値格納ステップにより前記1つの演算メモリに各色成分値が格納される少なくとも2色と同じ色の累積値を、前記1つの演算メモリと同じ配置で、1つの累積値メモリの互いに異なる領域に格納し、且つ、前記乗算ステップにより前記1つの演算メモリに格納される少なくとも2色の各色成分値についての乗算結果と、前記1つの累積値メモリに格納された累積値とを、一度の加算処理で各色毎に加算するものである。
請求項1記載の色変換プログラムは、請求項1または1に記載の色変換プログラムにおいて、前記色変換テーブルに格納される前記第2の色群の各色成分値の最大値が、2N−1−1より大きく2N−1以下で構成され(Nは任意の正の整数)、且つ、前記重み係数取得ステップにより取得される重み係数の合計の最大値が、2M−1−1より大きく2M−1以下で構成されるとき(Mは任意の正の整数)、前記値格納ステップは、少なくともN+Mビットの領域を各色毎に割り当てて、少なくとも2色の各色成分値を前記1つの演算メモリの互いに異なる領域に各色毎に格納するものである。
請求項1記載の色変換プログラムは、請求項1記載の色変換プログラムにおいて、前記コンピュータは前記乗算ステップおよび前記加算ステップを実行する8nビットCPUを備え(nは任意の正の整数)、前記1つの演算メモリは前記CPUに設けられたnバイトのメモリで構成されるものであって、前記値格納ステップは、前記第2の色群のうち、8n/(N+M)色の色成分値を、前記1つの演算メモリの互いに異なる領域に各色毎に格納するものである。
請求項1記載の色変換プログラムは、請求項1または1に記載の色変換プログラムにおいて、前記色変換テーブルに格納される前記第2の色群の各色成分値の最大値が、127より大きく255以下で構成され、且つ、前記重み係数取得プログラムにより取得される重み係数の合計の最大値が、127より大きく255以下で構成されるものであって、前記値格納ステップは2バイトの領域を各色毎に割り当てて、少なくとも2色の各色成分値を前記1つの演算メモリの互いに異なる領域に各色毎に格納するものである。
請求項1記載の色変換プログラムは、請求項1記載の色変換プログラムにおいて、前記コンピュータは前記乗算ステップおよび前記加算ステップを実行する64ビットCPUを備え、前記1つの演算メモリは前記CPUに設けられた8バイトのメモリで構成されるものであって、前記値格納ステップは、前記第2の色群のうち、4色のそれぞれに2バイトの領域を割り当てて、4色の各色成分値を前記1つの演算メモリに格納するものである。
請求項1記載の色変換プログラムは、請求項1記載の色変換プログラムにおいて、前記コンピュータは前記乗算ステップおよび前記加算ステップを実行する32ビットCPUを備え、前記1つの演算メモリは前記CPUに設けられた4バイトのメモリで構成されるものであって、前記値格納ステップは、前記第2の色群のうち、2色のそれぞれに2バイトの領域を割り当てて、2色の各色成分値を前記1つの演算メモリに格納するものである。
請求項1記載の色変換プログラムは、請求項1から1のいずれかに記載の色変換プログラムにおいて、前記色変換テーブルにおいて、前記格子点に対応付けられた前記第2の色群の各色成分値は、前記値格納ステップにより前記1つの演算メモリに書き込まれる単位で格納されている。
請求項18記載の色変換プログラムは、請求項1から1のいずれかに記載の色変換プログラムにおいて、前記重み係数取得プログラムにより取得された重み係数が0であるかを判断する重み係数判断ステップを前記コンピュータに実行させ、前記値格納ステップは、前記重み係数判断ステップにより、重み係数が0でないと判断された場合、その重み係数が取得された格子点に対応する前記第2の色群の各色成分値を、前記演算メモリに格納するものである。
請求項1記載の色変換装置によれば、乗算手段により、一度の乗算処理で、1つの演算メモリの上位バイト及び下位バイトからなる領域に格納された少なくとも2色の各色成分値のそれぞれに重み係数が乗算されるので、色成分値に重み係数を乗算する乗算処理を一色ずつ個別に行う場合に比較して、乗算回数が減少し、色変換処理全体としての処理速度が向上するという効果がある。特に、処理対象の入力値の個数が多い場合には、一回の色変換処理においてわずかでも演算回数を減少させることにより、色変換処理全体としてみると、処理速度の大きな向上に繋がる。
また、加算手段により、一度の加算処理で、乗算手段による各格子点についての乗算結果を各色毎に累積加算するので、乗算結果をを累積加算する加算処理を一色ずつ個別に行う場合に比較して、加算回数が減少し、色変換処理全体としての処理速度を向上するという効果がある。
また、出力手段は、加算手段により累積加算された後の累積加算結果を各色毎に読み出し、その読み出した累積加算結果を重み係数取得手段により取得される重み係数の合計でそれぞれ除算する除算処理を、各色毎に個別の処理で行うので、高精度で演算処理を行うことができるという効果がある。
請求項2記載の色変換装置によれば、請求項1記載の色変換装置の奏する効果に加え、加算手段により、前記乗算手段による前記1つの演算メモリに格納される少なくとも2色の各色成分値についての乗算結果と、前記1つの累積値メモリに格納された累積値とが、一度の加算処理で各色毎に加算されるので、乗算結果と累積値とを加算する加算処理を一色ずつ個別に行う場合に比較して、加算回数が減少し、色変換処理全体としての処理速度が向上するという効果がある。
請求項3記載の色変換装置によれば、請求項1または2に記載の色変換装置の奏する効果に加え、前記値格納手段により、少なくともN+Mビットの領域が各色毎に割り当てられて、1つの演算メモリの互いに異なる領域に格納されるので、高精度の演算処理が可能であるという効果がある。すなわち、前記色変換テーブルに格納される前記第2の色群の各色成分値の最大値が、2N−1−1より大きく2N−1以下で構成され、且つ、前記重み係数取得手段により取得される重み係数の合計の最大値が、2M−1−1より大きく2M−1以下で構成されるとき、前記第2の色群の各色成分値に、その第2の色群の各色成分値に対応する格子点について取得された重み係数を乗算した乗算結果は2N+M−1以下となる。よって、各色毎の乗算結果が、必ずN+Mビットの領域内に格納されるので、1つの演算メモリ内において、ある色成分値についての乗算結果が他の領域に桁あふれして、他の色成分値の乗算結果を破壊することが防止される。
なお、前記加算手段により、前記乗算手段による各格子点についての乗算結果が各色毎に累積加算された累積加算結果も、2N+M−1以下となる。すなわち、各色毎の累積加算結果が、必ずN+Mビットの領域内に格納される。よって、累積値を、前記1つの演算メモリと同じ配置で、1つの累積値メモリの互いに異なる領域に格納することにより(すなわち、少なくともN+Mビットの領域を各色毎に割り当てて格納することにより)、1つの累積値メモリ内において、ある色の累積加算結果が他の領域に桁あふれして、他の色の累積加算結果を破壊することが防止される。
請求項4記載の色変換装置によれば、請求項3記載の色変換装置の奏する効果に加え、CPUが一度の演算処理で処理可能なビット数に応じた色数の各色成分値が1つの演算メモリに格納されるので、効率よく演算処理を実行させることができ、色変換処理全体としての処理速度が向上するという効果がある。
請求項5記載の色変換装置によれば、請求項1または2に記載の色変換装置の奏する効果に加え、前記値格納手段により、2バイトの領域が各色毎に割り当てられて、1つの演算メモリの互いに異なる領域に格納されるので、高精度の演算処理が可能であるという効果がある。すなわち、前記第2の色群の各色成分値の最大値が、127より大きく255以下で構成され、且つ、前記重み係数取得手段により取得される重み係数の合計の最大値が、127より大きく255以下で構成されるとき、前記第2の色群の各色成分値に、その第2の色群の各色成分値に対応する格子点について取得された重み係数を乗算した乗算結果は216−1以下となる。よって、各色毎の乗算結果が、必ず2バイトの領域内に格納されるので、ある色成分値についての乗算結果が他の領域に桁あふれして、他の色成分値の乗算結果を破壊することが防止される。
請求項6記載の色変換装置によれば、請求項5記載の色変換装置の奏する効果に加え、CPUが一度の演算処理で処理可能な64ビット(8バイト)の1つの演算メモリにおいて、それぞれ2バイトの領域が割り当てられて4色の各色成分値が格納されているので、従来はCMYKそれぞれ個別に行っていた乗算処理を1度の乗算処理で4色の各色成分値に重み係数を乗算することができ、色変換処理全体としての処理速度が向上するという効果がある。
なお、累積加算値を、前記1つの演算メモリと同じ配置で、1つの累積値メモリの互いに異なる領域に格納することにより(すなわち、4色の累積値を1つの累積値メモリに格納することにより)、前記乗算手段により前記1つの演算メモリに格納される4色の各色成分値についての乗算結果と、前記1つの累積値メモリに格納された累積値とが、一度の加算処理で各色毎に加算されるので、加算回数が減少し、色変換処理全体としての処理速度が向上するという効果がある。
請求項7記載の色変換装置によれば、請求項5記載の色変換装置の奏する効果に加え、CPUが一度の演算処理で処理可能な32ビット(4バイト)の1つの演算メモリにおいて、それぞれ2バイトの領域が割り当てられて2色の各色成分値が格納されているので、従来はCMYKそれぞれ個別に行っていた乗算処理を1度の乗算処理で2色の各色成分値に重み係数を乗算することができ、色変換処理全体としての処理速度が向上するという効果がある。
なお、累積加算値を、前記1つの演算メモリと同じ配置で、1つの累積値メモリの互いに異なる領域に格納することにより(すなわち、2色の累積値を1つの累積値メモリに格納することにより)、前記乗算手段により前記1つの演算メモリに格納される2色の各色成分値についての乗算結果と、前記1つの累積値メモリに格納された累積値とが、一度の加算処理で各色毎に加算されるので、加算回数が減少し、色変換処理全体としての処理速度が向上するという効果がある。
請求項記載の色変換装置によれば、請求項1からのいずれかに記載の色変換装置の奏する効果に加え、値格納手段により、前記第2の色群の各色成分値を、前記色変換テーブルから読み出して1つの演算メモリに格納する処理が早くなるので、色変換処理全体としての処理速度が向上するという効果がある。
請求項記載の色変換装置によれば、請求項1からのいずれかに記載の色変換装置の奏する効果に加え、重み係数が0でないと判断された場合、その重み係数が取得された格子点に対応する前記第2の色群の各色成分値を、前記演算メモリに格納するので、重み係数が0でない場合に、前記乗算手段による乗算処理および前記加算手段による加算処理が行われ、色変換処理全体としての処理速度が向上するという効果がある。すなわち、重み係数が0である場合、乗算処理による乗算結果は0となるので、加算処理により、その乗算結果0が加算されても累積値は変化しない。よって、重み係数が0である場合は、前記乗算手段よる乗算処理および前記加算手段による加算処理をスキップすることにより、処理速度をより向上させることができる。
請求項1記載の色変換プログラムによれば、乗算ステップにより、一度の乗算処理で、1つの演算メモリの上位バイト及び下位バイトからなる領域に格納された少なくとも2色の各色成分値のそれぞれに重み係数が乗算されるので、色成分値に重み係数を乗算する乗算処理を一色ずつ個別に行う場合に比較して、乗算回数が減少し、色変換処理全体としての処理速度が向上するという効果がある。特に、処理対象の入力値の個数が多い場合には、一回の色変換処理においてわずかでも演算回数を減少させることにより、色変換処理全体としてみると、処理速度の大きな向上に繋がる。
また、加算ステップにより、一度の加算処理で、乗算ステップによる各格子点についての乗算結果を各色毎に累積加算するので、乗算結果をを累積加算する加算処理を一色ずつ個別に行う場合に比較して、加算回数が減少し、色変換処理全体としての処理速度を向上するという効果がある。
また、出力ステップは、加算ステップにより累積加算された後の累積加算結果を各色毎に読み出し、その読み出した累積加算結果を重み係数取得ステップにより取得される重み係数の合計でそれぞれ除算する除算処理を、各色毎に個別の処理で行うので、高精度で演算処理を行うことができるという効果がある。
請求項1記載の色変換プログラムによれば、請求項1記載の色変換プログラムの奏する効果に加え、加算ステップにより、前記乗算ステップにより前記1つの演算メモリに格納される少なくとも2色の各色成分値についての乗算結果と、前記1つの累積値メモリに格納された累積値とが、一度の加算処理で各色毎に加算されるので、乗算結果と累積値とを加算する加算処理を一色ずつ個別に行う場合に比較して、加算回数が減少し、色変換処理全体としての処理速度が向上するという効果がある。
請求項1記載の色変換プログラムによれば、請求項1または1に記載の色変換プログラムに加え、前記値格納ステップにより、少なくともN+Mビットの領域が各色毎に割り当てられて、1つの演算メモリの互いに異なる領域に格納されるので、高精度の演算処理が可能であるという効果がある。すなわち、前記色変換テーブルに格納される前記第2の色群の各色成分値の最大値が、2N−1−1より大きく2N−1以下で構成され、且つ、前記重み係数取得ステップにより取得される重み係数の合計の最大値が、2M−1−1より大きく2M−1以下で構成されるとき、前記第2の色群の各色成分値に、その第2の色群の各色成分値に対応する格子点について取得された重み係数を乗算した乗算結果は2N+M−1以下となる。よって、各色毎の乗算結果が、必ずN+Mビットの領域内に格納されるので、1つの演算メモリ内において、ある色成分値についての乗算結果が他の領域に桁あふれして、他の色成分値の乗算結果を破壊することが防止される。
なお、前記加算ステップにより、前記乗算ステップによる各格子点についての乗算結果が各色毎に累積加算された累積加算結果も、2N+M−1以下となる。すなわち、各色毎の累積加算結果が、必ずN+Mビットの領域内に格納される。よって、累積値を、前記1つの演算メモリと同じ配置で、1つの累積値メモリの互いに異なる領域に格納することにより(すなわち、少なくともN+Mビットの領域を各色毎に割り当てて格納することにより)、1つの累積値メモリ内において、ある色の累積加算結果が他の領域に桁あふれして、他の色の累積加算結果を破壊することが防止される。
請求項1記載の色変換プログラムによれば、請求項1記載の色変換プログラムの奏する効果に加え、CPUが一度の演算処理で処理可能なビット数に応じた色数の各色成分値が1つの演算メモリに格納されるので、効率よく演算処理を実行させることができ、色変換処理全体としての処理速度が向上するという効果がある。
請求項1記載の色変換プログラムによれば、請求項1または1に記載の色変換プログラムの奏する効果に加え、前記値格納ステップにより、2バイトの領域が各色毎に割り当てられて、1つの演算メモリの互いに異なる領域に格納されるので、高精度の演算処理が可能であるという効果がある。すなわち、前記第2の色群の各色成分値の最大値が、127より大きく255以下で構成され、且つ、前記重み係数取得ステップにより取得される重み係数の合計の最大値が、127より大きく255以下で構成されるとき、前記第2の色群の各色成分値に、その第2の色群の各色成分値に対応する格子点について取得された重み係数を乗算した乗算結果は216−1以下となる。よって、各色毎の乗算結果が、必ず2バイトの領域内に格納されるので、ある色成分値についての乗算結果が他の領域に桁あふれして、他の色成分値の乗算結果を破壊することが防止される。
請求項1記載の色変換プログラムによれば、請求項1記載の色変換プログラムの奏する効果に加え、CPUが一度の演算処理で処理可能な64ビット(8バイト)の1つの演算メモリにおいて、それぞれ2バイトの領域が割り当てられて4色の各色成分値が格納されているので、1度の乗算処理で、4色の各色成分値に重み係数を乗算することができ、色変換処理全体としての処理速度が向上するという効果がある。
なお、累積加算値を、前記1つの演算メモリと同じ配置で、1つの累積値メモリの互いに異なる領域に格納することにより(すなわち、4色の累積値を1つの累積値メモリに格納することにより)、前記乗算ステップにより前記1つの演算メモリに格納される4色の各色成分値についての乗算結果と、前記1つの累積値メモリに格納された累積値とが、一度の加算処理で各色毎に加算されるので、加算回数が減少し、色変換処理全体としての処理速度が向上するという効果がある。
請求項1記載の色変換プログラムによれば、請求項1記載の色変換プログラムの奏する効果に加え、CPUが一度の演算処理で処理可能な32ビット(4バイト)の1つの演算メモリにおいて、それぞれ2バイトの領域が割り当てられて2色の各色成分値が格納されているので、1度の乗算処理で、2色の各色成分値に重み係数を乗算することができ、色変換処理全体としての処理速度が向上するという効果がある。
なお、累積加算値を、前記1つの演算メモリと同じ配置で、1つの累積値メモリの互いに異なる領域に格納することにより(すなわち、2色の累積値を1つの累積値メモリに格納することにより)、前記乗算ステップにより前記1つの演算メモリに格納される2色の各色成分値についての乗算結果と、前記1つの累積値メモリに格納された累積値とが、一度の加算処理で各色毎に加算されるので、加算回数が減少し、色変換処理全体としての処理速度が向上するという効果がある。
請求項1記載の色変換プログラムによれば、請求項1から1のいずれかに記載の色変換プログラムの奏する効果に加え、値格納ステップにより、前記第2の色群の各色成分値を、前記色変換テーブルから読み出して1つの演算メモリに格納する処理が早くなるので、色変換処理全体としての処理速度が向上するという効果がある。
請求項18記載の色変換プログラムによれば、請求項1から1のいずれかに記載の色変換プログラムの奏する効果に加え、重み係数が0でないと判断された場合、その重み係数が取得された格子点に対応する前記第2の色群の各色成分値を、前記演算メモリに格納するので、重み係数が0でない場合に、前記乗算ステップによる乗算処理および前記加算ステップによる加算処理が行われ、色変換処理全体としての処理速度が向上するという効果がある。すなわち、重み係数が0である場合、乗算処理による乗算結果は0となるので、加算処理により、その乗算結果0が加算されても累積値は変化しない。よって、重み係数が0である場合は、前記乗算ステップよる乗算処理および前記加算ステップによる加算処理をスキップすることにより、処理速度をより向上させることができる。
以下、本発明の好ましい実施例について、添付図面を参照して説明する。図1は、本発明における実施例の色変換装置として機能するパーソナルコンピュータ10(以下、これをPC10と称する。)を含むプリントシステムの全体構成を示すブロック図である。図1に示されるようなプリントシステムは、PC10と、PC10に接続されるプリンタ50とを備えている。
PC10は、文書作成アプリケーションや画像作成アプリケーションなどで作成された文書データや画像データに対し、後述する色変換処理(図7参照)などの各種処理を実行し、プリンタ50において印刷可能な印刷データに変換してプリンタ50に出力する装置である。
PC10は、図1に示すように、CPU11と、ROM12と、RAM13と、HDD14と、入力装置15と、表示装置16と、プリンタ50に接続するプリンタ用インターフェース18(I/F18)とを備えている。
CPU11は、このプリンタサーバ10を総括的に制御する中央演算処理であり、アキュムレータ11aと、レジスタ11bとを備える。また、CPU11は、図7のフローチャートで示す処理を実行するプリンタドライバ14aを含む各種プログラムを実行する。なお、本実施例のCPU11は、64ビットCPUで構成される。ここで、本明細書および特許請求の範囲において、64ビットCPUとは、一度の演算処理で64ビット(8バイト)のデータを処理することができるCPUをいう。また、CPU11は、後述する色変換処理(図7参照)において、特許請求の範囲に記載の乗算手段および加算手段として機能する。
アキュムレータ11aは、CPU11による演算処理の際の被演算数および演算結果が格納されるものである。なお、色変換処理(図7参照)においてアキュムレータ11aに格納される値については、図2を参照しつつ後述する。レジスタ11bは8バイトの汎用レジスタである。なお、CPU11が備えているアキュムレータおよびレジスタの個数は1つに限定されるものではなく、CPU11には複数個の汎用レジスタを備えていても良いが、図1においては、1つのアキュムレータ11aおよび一つのレジスタ11bのみを図示する。
ROM12は、CPU11により実行される各種制御プログラムや、それらの制御プログラムをCPU11により実行する上で必要なデータなどを格納した読み出し専用のメモリである。
RAM13は、CPU11により実行される各種処理に必要なデータやプログラムを一時的に記憶するためのメモリである。このRAM13は、原画像メモリ13aと出力画像メモリ13bとを備えている。原画像メモリ13aは、後述する色変換処理(図7参照)の対象である原画像データを格納するメモリである。原画像データは、各画素の色濃度がRGBの各色成分値で構成されるビットマップデータである。原画像データは、後述する色変換処理(図7参照)により、各画素の色濃度がC(シアン)、M(マゼンダ)、Y(イエロー)、K(ブラック)の各色成分値で構成される出力画像データに変換される。出力画像メモリ13bは、出力画像データを格納するメモリである。
なお、本実施例においては、RGBの各色成分値およびCMYKの各色成分値は、共に、0以上255以下のいずれかの値であるとして説明する。また、RGBが請求項の第1の色群に相当し、CMYKが請求項の第2の色群に相当する。
HDD14は、ハードディスクを含むハードディスク読取装置であり、プリンタドライバ14aと、ルックアップテーブル14b(LUT14b)と、三角錐補間テーブル14cとを備えている。
プリンタドライバ14aは、文書作成アプリケーションや画像作成アプリケーションなど、各種アプリケーションで作成された文書データや画像データを、プリンタ50において処理可能な印刷データに変換し、プリンタ50へ出力するためのプログラムである。PC10は、プリンタドライバ14aに従って、文書データや画像データに含まれる文字や画像に対して描画処理を行い、RGB形式の原画像データ(印刷画像データ)を生成する。その後、RGB形式の原画像データに対して色変換処理、二値化処理など各種処理を施すことにより、印刷データに変換する。色変換処理については、図7を参照して後述する。色変換処理により、PC10は、RGBの各色成分値で構成される入力値を、その入力値に対応するCMYKの各色成分値に変換して出力する。
ルックアップテーブル14bは、後述する表色空間S内において、RGBの各色成分値で特定される格子点Pに対応付けられたCMYKの各色成分値を格納するテーブルである。なお、LUT14bの構成については、図3を参照しつつ後述し、表色空間Sと格子点Pについては、図4を参照しつつ後述する。
三角錐補間テーブル14cは、後述するエリア座標に対応付けて、8個の点の重み係数を格納するテーブルである。なお、エリア座標については、図6を参照しつつ後述し、三角錐補間テーブル14cの構成については、図5を参照しつつ後述する。
入力装置15は、PC10へデータ又はコマンドを入力するものであり、キーボード、マウスなどにより構成されている。表示装置16は、プリンタサーバ10で実行される処理内容や入力されたデータなどを視覚的に確認するために、文字や画像などを表示するものであり、例えば、CRTディスプレイや液晶ディスプレイなどにより構成されている。
I/F18は、PC10とプリンタ50とを接続するものであり、PC10は、このI/F18を介することにより、プリントコマンドや、印刷データをプリンタ50に送信し、プリンタ50に記録用紙への印刷を実行させることができる。
図1に示すように、上述したCPU11と、ROM12と、RAM13と、HDD14と、入力装置15と、表示装置16と、I/F18とは、バスライン19を介して互いに接続されている。
また、図1に示すように、PC10に接続されるプリンタ50は、CPU51と、ROM52と、RAM53と、シート搬送モータ54と、キャリッジモータ55と、印字ヘッド58と、PC10に接続するインターフェース57(I/F57)とを備えている。
プリンタ50における上記のような構成において、CPU51は、プリンタ50の動作を制御するものであり、各種プログラムを実行する。ROM52は、プリンタ50の動作を制御するためのプログラムなどが格納されたメモリである。
シート搬送モータ54は、プリンタ50の所定の位置に配置された記録用紙を上流から下流への方向又はその逆方向に搬送するためのステッピングモータであり、その移動はCPU51により制御される。キャリッジモータ55は、印字ヘッド58を装着した非図示のキャリッジを、シート搬送モータ54による搬送方向に対して直交方向に、キャリッジの初期位置である始点と、該始点とは反対側の限界位置である終点との間を往復移動させるべく駆動するためのステッピングモータであり、その移動はCPU51により制御される。
印字ヘッド58は、複数のノズル、アクチュエータ(いずれも非図示)を備えたインクジェットヘッドであり、CPU51により制御されるアクチュエータの駆動によってインクをノズルから噴射して、所定の文字又は模様を印刷するものである。また、I/F57は、プリンタ50とPC10とを接続するものであり、このI/F57を介して、PC10からプリントコマンドや印刷データが入力される。
図1に示すように、上述したCPU51と、ROM52と、RAM53と、シート搬送モータ54と、キャリッジモータ55と、印字ヘッド58と、I/F57とは、バスライン59を介して互いに接続されている。
次に、図2を参照して、後述する色変換処理(図7参照)において、LUT14bから読み出されて、アキュムレータ11aに格納されるCMYKの各色成分値について説明する。図2は、アキュムレータ11aに格納されるCMYKの各色成分値を模式的に示した図である。
図2に示すように、アキュムレータ11aは、8バイトのメモリで構成される。図2においては、説明の便宜上、下位バイトから順に、各バイトそれぞれにバイト番号0〜7を付して説明する。図2に示されるように、CMYKの4色の各色成分値は、アキュムレータ11aの互いに異なる領域に各色毎に格納される。例えば、バイト番号0,1で示される領域にはCの色成分値が格納され、バイト番号2,3で示される領域にはMの色成分値が格納され、バイト番号4,5で示される領域にはYの色成分値が格納され、バイト番号6,7で示される領域にはKの色成分値が格納される。本実施例において、CMYKの各色成分値は、上述のように0以上255以下のいずれかの値であるから、それぞれ2バイトの領域内に格納することができる。また、本実施例において、上述のように、CPU11は64ビットCPUで構成されているから、アキュムレータ11aに格納された8バイト(64ビット)のデータを、一度の演算処理で処理することができる。
次に、図3を参照して、LUT14bの構成について説明する。図3は、LUT14bの構成を模式的に示した図である。図3に示すように、各格子点Pには、CMYKの各色成分値が対応付けられている。
ここで、図4を参照して格子点Pおよび表色空間Sについて説明する。図4は、表色空間Sを模式的に示した図である。図4に示すように、表色空間Sは、RGBの各色成分値を座標軸とする三次元空間である。そして、表色空間Sを分割する複数個の立方体をエリアEと称し、各エリアEを構成する頂点を、格子点Pと称する。図4においては、図面を分かりやすくするために、一つのエリアEのみ着色して図示し、一つの格子点Pのみ符号を付している。
本実施例においては、各座標軸を三等分することにより、表色空間Sを27個のエリアに等分割したものとして説明する。また、表色空間Sにおいて、RGBの各色成分値が、それぞれ0,85,170,255のいずれかで特定される点が、格子点Pとされる。
図3に戻り説明する。図3に示すように、LUT14bには、格子点Pに対応付けられた、CMYKの各色成分値が格納される。例えば、(R,G,B)=(0,0,0)で特定される格子点Pには、色成分値として、C「177」、M「150」、Y「159」、K「255」が対応付けられている(かっこ内は10進数で表記した値である)。なお、図3においては、図面を分かりやすくするために、LUT14bに、CMYKの各色成分値がそれぞれ独立に格納されているかのように図示したが、本実施例のLUT14bは、CMYKの各色成分値をそれぞれ独立に格納されていなくとも良い。
格子点Pに対応付けられて、本実施例のLUT14bに実際に格納される値を、図3に示すLUT14bの右欄に示す。例えば、(R,G,B)=(0,0,0)で特定される格子点Pに対応付けられたCMYKの各色成分値は、実際には、「B10096009F00FF00」(16進数で表記)として、LUT14bに格納される。すなわち、格子点Pに対応付けられたCMYKの各色成分値は、ひとかたまりの8バイトのデータとしてLUT14bに格納される。
LUT14bは、各格子点Pに対応付けられたCMYKの各色成分値を格納する8バイトのメモリを備え、各格子点Pに対応付けられたCMYKの各色成分値は、ひとかたまりの8バイトのデータとしてLUT14bの8バイトのメモリにそれぞれ格納される。なお、図3に示す、LUT14bに実際に格納される値は、図面に向かって左側が下位バイトに相当し、図面に向かって右側が上位バイトに相当する。また、CMYKの各色成分値は、8バイトのメモリの2バイトの領域に各色毎に格納される。本実施例において、CMYKの各色成分値の最大値は255であるから1バイトで表すことが可能なので、各色毎の2バイトの領域のうち上位バイトには0が格納される。
また、LUT14bの8バイトのメモリには、下位バイトから順に、CMYKの順に各色成分値が格納される。例えば、格子点Pに対応付けて8バイトのメモリに記憶されている値が「B10096009F00FF00」であれば、格子点Pに対応付けられているCの色成分値は「B100」であり、Mの色成分値は「9600」であり、Yの色成分値は「9F00」であり、Kの色成分値は「FF00」である。なお、これらの値はいずれも16進数で表記している。
次に図5を参照して、三角錐補間テーブル14cについて説明する。図5は、三角錐補間テーブル14cの構成を模式的に示した図である。図5に示すように、三角錐補間テーブル14cは、エリア座標に重み係数が対応付けられた図である。なお、図5に示す三角錐補間テーブル14cの右端に図示した総重み係数WTは、点0から点7の重み係数Wの合計に相当する。総重み係数WTは、必ずしも三角錐補間テーブル14cに格納されていなくとも良いが、説明を分かりやすくするために図示した。
ここで、図4に戻り、エリア座標について説明する。後述する色変換処理(図7参照)においては、RGBの各色成分値で構成される入力値が入力されると、その入力値の位置(すなわち、入力値で特定される座標)を内部に含むエリアEが選択される。例えば、入力値を構成するRGBの各色成分値がr,g,bである場合、座標(r,g,b)を内部に含むエリアEが選択される。図4には、選択されたエリアEを着色して示す。
図6を参照して、「エリア座標」について、さらに説明する。図6は、選択されたエリアEにおける入力値の位置(すなわちエリア座標)を模式的に示す図である。図6に示すように、選択されたエリアEを構成する8点の格子点のうち、表色空間Sの原点Oに最も近い格子点をエリア原点O'とした場合における入力値の位置(r',g',b')がエリア座標に相当する。本実施例において、表色空間Sの各座標軸の長さは、RGBの各色成分値の最大値である255であって、各エリアEの一辺の長さは、85(=255/3)であるので、RGBの各色成分値が、それぞれr,g,bである入力値のエリア座標(r',g',b')は、それぞれ以下の式1で表すことができる。
(式1)
r'=r%85
g'=g%85
b'=b%85
但し、%は、記号前の値を記号後の値で除算した場合の余りを意味する記号である。
さらに、図6を参照して、選択されたエリアEを構成する格子点について説明する。選択されたエリアEを構成する8点の格子点のうち、エリア原点O'を点0の符号を付し、他の格子点に、それぞれ点1から点7の符号を付して説明する。後述する色変換処理(図7参照)においては、エリア座標(r',g',b')に基づいて、点0から点7のそれぞれの重み係数Wが取得される。
図5に示すように、各点の重み係数Wはエリア座標に対応付けられて、三角錐補間テーブル14cに予め格納されている。「重み係数W」は、エリア座標から点0から点7の各点までの距離の程度を示す値であり、格子点Pに一致しない入力値に対応したCMYKの各色成分値を算出するために用いられる値である。なお、本実施例の三角錐補間テーブル14cは、各点の重み係数Wの合計である総重み係数WTの最大値が、127(=27−1)より大きく、255(=28−1)以下となるように、構成されている。
各格子点に対応付けられたCMYKの各色成分値と重み係数Wとを用いて補間することにより、格子点Pに一致しない入力値であっても、その入力値に対応するCMYKの各色成分値c,m,y,kに変換して出力することができる。重み係数Wを用いた、CMYKの各色成分値c,m,y,kの算出方法の一例を以下の式2に示す。
(式2)
c=(C0W0 +C1W1+C2W2+C3W3+C4W4+C5W5+C6W6+C7W7)/WT
m=(M0W0 +M1W1+M2W2+M3W3+M4W4+M5W5+M6W6+M7W7)/WT
y=(Y0W0 +Y1W1+Y2W2+Y3W3+Y4W4+Y5W5+Y6W6+Y7W7)/WT
k=(K0W0 +K1W1+K2W2+K3W3+K4W4+K5W5+K6W6+K7W7)/WT
但し、WT(総重み係数)=W0+W1+W2+W3+W4+W5+W6+W7
点Xに相当する格子点に対応付けられたCMYKの各色成分値:CX、MX、YX、KX
点Xの重み係数:WX
上記式2によれば、重み係数が大きい格子点に対応付けられたCMYKの各色成分値が算出結果に大きく反映され、重み係数が小さい格子点に対応付けられたCMYKの各色成分値は算出結果に小さく反映される。その結果、格子点に一致しない入力値であっても、近傍の格子点に対応付けられたCMYKの各色成分値に基づいて、対応するCMYKの各色成分値を算出することができる。
なお、重み係数WXが0である場合、色成分値CX,MX,YX,KXにその重み係数WXを乗算した乗算結果は0になるから、点Xに相当する格子点に対応付けられたCMYKの各色成分値は、算出結果には影響を及ぼさない。換言すれば、重み係数Wが0でない場合に、その点に相当する格子点が、補間に用いられる。図5および図6に示すように、本実施例においては、各エリア座標に対し8点について重み係数Wが格納されているが、この8点のうち重み係数が0以外の値とされている点は、各エリア座標に対し、最大で4点存在する。すなわち、4点を用いて補間を行う。このような補間方法は、一般的に4点補間、三角錐補間、四面体補間と称される。なお、本実施例においては、補間方法として4点補間を採用したが、エリアを構成する8点のうち6点を用いて補間を行う6点補間(三角柱補間、プリズム補間とも称する)や、8点を用いて補間を行う8点補間(長方形補間、立方体補間とも称する)など、他の補間方法も適宜採用することができる。
次に、図7のフローチャートを参照して、上記のように構成されるPC10において実行される、色変換処理について説明する。図7は、PC10で実行される色変換処理のフローチャートである。この色変換処理は、原画像メモリ13aに原画像データが格納されると起動する処理であり、上述の式2で説明した演算処理に相当する演算処理を実行するものである。
まず、8バイトのレジスタ11bに、「0」を格納する(S10)。次に、変数iを「0」とする(S12)。次に、原画像メモリ13aに格納されている原画像データから1画素分の入力値を読み込む(S14)。この入力値は、画素の色濃度に相当する値であって、RGBの各色成分値で構成される値である。
次に、表色空間S内において、入力値の位置を内部に含むエリアEを選択する(S16)。すなわち、入力値を構成するRGBの各色成分値r,g,bで表される座標(r,g,b)を、その内部に含むエリアEを選択するのである(図4参照)。
次に、選択されたエリアEにおけるエリア座標(入力値の位置)を決定する(S18)。なお、RGBの各色成分値がr,g,bである場合における、エリア座標(r',g',b')の算出方法の一例は、上述の式1に示したので、詳細な説明は省略する。
次に、決定されたエリア座標(r',g',b')に基づいて、エリアEを構成する8個の格子点について重み係数Wを取得する。本実施例においては、三角錐補間テーブル14c(図5参照)において、エリア座標(r',g',b')に対応付けられた8点の重み係数Wを、三角錐補間テーブル14cから読み込む(S20)。
次に、重み係数Wが取得された8点のうち、点iに相当する格子点に対応付けられたCMYKの各色成分値をLUT14b(図3参照)から読み出して、アキュムレータ11b(図2参照)に格納する(S24)。最初は、iが「0」であるから点0に相当する格子点に対応付けられたCMYKの各色成分値がアキュムレータ11bに格納される。
ここで、上述のように、CMYKの各色成分値は、ひとかたまりの8バイトのデータとしてLUT14bに格納されている(図3参照)。したがって、CPU11は、点iに相当する格子点に対応付けられたCMYKの各色成分値を、LUT14bから一度に読み出して、アキュムレータ11bに格納することができる。よって、色成分値を各色毎に読み出して順次アキュムレータ11bに格納する場合に比較して、処理速度が向上する。
次に、アキュムレータ11bに格納されたCMYKの各色成分値に、点iについて取得された重み係数Wを乗算する(S26)。例えば、入力値のエリア座標が(0,0,1)である場合には、点0の重み係数Wとして「213」が取得される(図5参照)。従って、アキュムレータ11bに格納されたCMYKの各色成分値に「213」が乗算される。
このように、一度の乗算処理で、アキュムレータ11aに格納されたCMYK4色の各色成分値のそれぞれに重み係数が乗算されるので、色成分値に重み係数を乗算する乗算処理を一色ずつ個別に行う場合に比較して、乗算回数が減少し、処理速度が向上する。
また図2を参照して説明したように、2バイトの領域が各色毎に割り当てられて、アキュムレータ11aの互いに異なる領域に格納されるので、乗算処理による桁あふれは発生せず、高精度の乗算処理を行うことができる。すなわち、本実施例においては、CMYKの各色成分値の最大値は、255(=28−1)以下で構成され、且つ、三角錐補間テーブル14cに格納される総重み係数WTの最大値が、255(=28−1)以下で構成されているので、CMYKの各色成分値に、重み係数Wを乗算した乗算結果は216−1以下となる。よって、各色毎の乗算結果は、必ず2バイトの領域内に格納されるので、1つのアキュムレータ11a内において、ある色成分値についての乗算結果が他の領域に桁あふれして、他の色成分値の乗算結果を破壊することがないのである。
次に、アキュムレータ11aに格納された乗算結果に、レジスタ11bに格納された値を加算し(S28)、その加算結果をレジスタ11bに格納する(S30)。そして、変数iに「1」を加算し、iが8になるまで(S34:Yes)、S24からS34の処理を繰り返す。
このようにすれば、各点についての乗算結果が各色毎に累積加算された累積値が、1つのアキュムレータ11aと同じ配置で、1つのレジスタ11bの互いに異なる領域に格納されることとなる。すなわち、8バイトのレジスタ11bの下位バイトから順に、各バイトそれぞれにバイト番号を付して説明すると、図2を参照して説明したように、バイト番号0,1で示される領域にはCの累積値が格納され、バイト番号2,3で示される領域にはMの累積値が格納され、バイト番号4,5で示される領域にはYの累積値が格納され、バイト番号6,7で示される領域にはKの累積値が格納される。
このように、レジスタ11bには、アキュムレータ11aと同じ配置でCMYKの各累積値が格納されているので、レジスタ11bに格納された累積値と、アキュムレータ11aに格納された乗算結果とが一度の加算処理で各色毎に加算される。よって、乗算結果と累積値とを加算する加算処理を一色ずつ行う場合に比較して、加算回数が減少し、色変換処理全体としての処理速度が向上する。
また、点0から点7までの乗算結果が全て累積加算されることにより、レジスタ11bには累積加算結果が格納されることとなる。CMYKの各色成分値の最大値は、255(=28−1)以下で構成され、且つ、三角錐補間テーブル14cに格納される総重み係数WTの最大値が、255(=28−1)以下で構成されているので、点0から点7についての乗算結果が累積加算された各色毎の累積加算結果は216−1以下となる。すなわち、各色毎の累積加算結果が、必ず2バイトの領域内に格納される。よって、1つのレジスタ11b内において、ある色の累積加算結果が他の領域に桁あふれして、他の色の累積加算結果を破壊することが防止される。
次に、レジスタ11bに各色毎に格納されている累積加算結果を各色毎に取り出し、総重み係数WTで除算する。具体的には、まず、レジスタ11bのバイト番号0,1の領域に格納されている累積加算結果を取り出して、総重み係数WTで除算し、その除算結果c'を出力画像メモリ13bに出力する(S36)。次に、レジスタ11bのバイト番号2,3の領域に格納されている累積加算結果を取り出して、総重み係数WTで除算し、その除算結果m'を出力画像メモリ13bに出力する(S38)。次に、レジスタ11bのバイト番号4,5の領域に格納されている累積加算結果を取り出して、総重み係数WTで除算し、その除算結果y'を出力画像メモリ13bに出力する(S40)。次に、レジスタ11bのバイト番号6,7の領域に格納されている累積加算結果を取り出して、総重み係数WTで除算し、その除算結果k'を出力画像メモリ13bに出力する(S42)。
このように累積加算結果を各色毎にレジスタ11bから読み出し、その読み出した累積加算結果を、総重み係数WTでそれぞれ除算するので、高精度で演算処理を行うことができる。すなわち、加算処理、および乗算処理は4色についてまとめて行ったが、除算処理については、各色毎に行うことにより、高精度の演算処理を可能とした。除算処理が施される場合、除算結果が整数でないと、小数点以下の桁数が大きくなる可能性があるので、一つのメモリに複数色の除算結果が格納されるように構成すると、いずれかの色の除算結果が桁あふれして、他の領域の除算結果を破壊するおそれがあるからである。
次に、原画像メモリ13aに格納された原画像データの全ての画素の入力値を読み込んだか否かを判断し(S44)、原画像データの全ての画素の入力値が読み込まれたと判断されるまで(S44:Yes)、処理を繰り返す。その結果、各画素の色濃度がRGBの各色成分で構成される原画像データが、各画素の色濃度がCMYKの各色成分で構成される出力画像データに変換され、出力画像メモリ13bに格納される。出力画像メモリ13bに格納された出力画像データは、二値化処理など各種処理が施されることにより印刷データに変換されて、プリンタ50に出力されるが、色変換後のこれらの処理については公知であるため、詳細な説明は省略する。
以上、実施例に基づき本発明を説明したが、本発明は上述した実施例に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の改良変更が可能であることは容易に推察できるものである。
例えば、本実施例では、点0から点7について取得された重み係数Wを、アキュムレータ11aに格納されたCMYKの各色成分値に乗算する処理を、点0から点7の全てについて行っていたが、重み係数Wが0である場合は、乗算処理、およびその乗算処理による乗算結果を累積加算する加算処理をスキップするように構成しても良い。
図8は、図7に示す色変換処理の変形例を示すフローチャートである。なお、図8において図7と同一の処理については同一の符号を付して説明を省略する。図8に示す色変換処理のフローチャートでは、点iについて取得された重み係数Wiが「0」であるか否かを判断する処理(S22)が設けられている点が、図7に示す色変換処理のフローチャートと異なる。
点iについて取得された重み係数Wiが「0」でない場合(S22:No)、点iの格子点に対応付けられたCMYKの各色成分値がLUT14bから読み出されて、アキュムレータ11aに格納され(S24)、図7を参照して説明したS26〜S30の処理が実行される。
一方、点iについて取得された重み係数Wiが「0」である場合(S22:Yes)、S26〜S30の処理がスキップされるので、色変換処理全体としての処理速度が向上する。すなわち、重み係数Wiが0である場合、CMYKの各色成分値に重み係数Wiを乗算した乗算結果は0となり、且つその乗算結果0が加算されても累積値は変化しないので、重み係数Wiが0である場合は、S24からS30までに行われる乗算処理および加算処理をスキップすることにより、処理速度をより向上させることができる。
また、本実施例では、CPU11が64ビットCPUで構成されていたが、CPU11が32ビットCPUで構成されるものであってもよい。この場合、アキュムレータ11aは4バイトのデータを格納可能に構成される。そして、アキュムレータ11aには、各色毎に2バイトの領域が割り当てられて、2色の色成分値が格納される。すなわち、2色の色成分値を、ひとまとめの4バイトのデータとして取り扱う。一度の演算処理で32ビット(4バイト)のデータを処理できるCPUが用いられる場合には、4バイト単位でデータを取り扱うのが最も効率的であるからである。
また、本実施例では、CMYKの各色成分値の最大値が255(=28−1)以下で構成され、且つ総重み計数WTの最大値が255(=28−1)以下で構成されていたために、各色毎に2バイト(16ビット)の領域が割り当てられていたが、CMYKの各色の成分値の最大値、および総重み係数WTの最大値に応じて、各色毎に割り当てられる領域のサイズは適宜変更することができる。すなわち、CMYKの各色成分値の最大値が(2N−1)以下で構成され、且つ総重み計数WTの最大値が(2M−1)以下で構成されている場合、各色毎に少なくともN+Mビットの領域を割り当てることにより、高精度の演算処理が可能である。すなわち、CMYKの各色成分値に、重み係数Wを乗算した乗算結果は2N+M−1以下となる。よって、各色毎の乗算結果が、必ずN+Mビットの領域内に格納されるので、ある色成分値についての乗算結果が他の領域に桁あふれして、他の色成分値の乗算結果を破壊することが防止されるのである。また、各点についての乗算結果が各色毎に累積加算された累積加算結果も、2N+M−1以下となる。よって、各色毎の累積加算結果が、必ずN+Mビットの領域内に格納されるので、ある色の累積加算結果が他の領域に桁あふれして、他の色の累積加算結果を破壊することが防止されるのである。
なお、CPU11が8nビットCPUで構成される場合(nは任意の正の整数)、アキュムレータ11aは、一般的に8nビットのメモリで構成される。したがって、各色毎に(N+M)ビットの領域を割り当てる場合、8n/(N+M)色の色成分値を、一つのアキュムレータ11aに格納することができる。
本発明における実施例の画像処理装置として機能するPCを含むプリントシステムの全体構成を示すブロック図である。 アキュムレータに格納されるCMYKの各色成分値を模式的に示した図である。 ルックアップテーブルの構成を模式的に示した図である。 表色空間を模式的に示した図である。 三角錐補間テーブルの構成を模式的に示した図である。 選択されたエリアにおける入力値の位置を模式的に示す図である。 PCで実行される色変換処理のフローチャートである。 色変換処理の変形例を示すフローチャートであって、図7に相当するフローチャートである。
符号の説明
10 PC(色変換装置、コンピュータ)
11 CPU
11a アキュムレータ(1つの演算メモリ)
11b レジスタ(累積値メモリ)
14a プリンタドライバ(色変換プログラム)
14b ルックアップテーブル(色変換テーブル)
E エリア(立方体)
S 表色空間
P 格子点
W 重み係数
WT 総重み係数(重み係数の合計)
R,G,B 第1の色群
C,M,Y,K 第2の色群
S16 エリア選択手段、エリア選択ステップ
S18 エリア座標決定手段、エリア座標決定ステップ
S20 重み係数取得手段、重み係数取得ステップ
S22 重み係数判断手段、重み係数判断ステップ
S24 値格納手段、値格納ステップ
S26 乗算手段、乗算ステップ
S28,S30 加算手段、加算ステップ
S36,S38,S40,S42 出力手段、出力ステップ

Claims (18)

  1. 第1の色群の各色成分値で構成される入力値を、その入力値に対応する第2の色群の各色成分値に変換して出力する色変換装置であって、
    前記第1の色群の各色成分値に相当する値を座標軸とする表色空間内において、前記第1の色群の各色成分値で特定される格子点に対応付けられた前記第2の色群の各色成分値を格納する色変換テーブルと、
    前記表色空間内において、前記色変換テーブルにおいて前記第2の色群の各色成分値が対応付けられた格子点で構成される立方体のうち、前記入力値の位置を内部に含む立方体を選択するエリア選択手段と、
    前記エリア選択手段により選択された立方体における前記入力値の位置を決定するエリア座標決定手段と、
    前記エリア座標決定手段により決定された前記入力値の位置に基づいて、前記立方体を構成する格子点のうち、少なくとも1つの格子点について重み係数を取得する重み係数取得手段と、
    前記重み係数取得手段により重み係数が取得された格子点に対応する前記第2の色群の各色成分値を前記色変換テーブルから読み出し1つの演算メモリの上位バイド及び下位バイトからなる互いに異なる領域を各色毎に割り当てて格納する値格納手段と、
    前記値格納手段により前記演算メモリの上位バイト及び下位バイトからなる領域に格納された前記第2の色群の少なくとも2色の各色成分値に、その色成分値に対応する格子点について取得されたそれぞれの重み係数を、一度の乗算処理で乗算する乗算手段と、
    前記乗算手段による各格子点についての乗算結果を各色毎に、一度の加算処理で累積加算する加算手段と、
    前記加算手段により累積加算された累積加算結果を各色毎に読み出し、その読み出した累積加算結果を前記重み係数取得手段により取得される重み係数の合計でそれぞれ除算する除算処理を、各色毎に個別の処理で行い、前記入力値に対応する前記第2の色群の各色成分値を出力する出力手段とを備えていることを特徴とする色変換装置。
  2. 前記加算手段は、前記乗算手段による各格子点についての乗算結果が各色毎に累積加算された累積値であって、前記値格納手段により前記1つの演算メモリに各色成分値が格納される少なくとも2色と同じ色の累積値を、前記1つの演算メモリと同じ配置で、1つの累積値メモリの互いに異なる領域に格納し、且つ、前記乗算手段により前記1つの演算メモリに格納される少なくとも2色の各色成分値についての乗算結果と、前記1つの累積値メモリに格納された累積値とを、一度の加算処理で各色毎に加算するものであることを特徴とする請求項1記載の色変換装置。
  3. 前記色変換テーブルに格納される前記第2の色群の各色成分値の最大値が、2N−1−1より大きく2N−1以下で構成され(Nは任意の正の整数)、且つ、前記重み係数取得手段により取得される重み係数の合計の最大値が、2M−1−1より大きく2M−1以下で構成されるとき(Mは任意の正の整数)、
    前記値格納手段は、少なくともN+Mビットの領域を各色毎に割り当てて、少なくとも2色の各色成分値を前記1つの演算メモリの互いに異なる領域に各色毎に格納するものであることを特徴とする請求項1または2に記載の色変換装置。
  4. 前記乗算手段および前記加算手段として機能するCPUを備え、
    前記CPUは、8nビットCPUで構成され(nは任意の正の整数)、前記1つの演算メモリは前記CPUに設けられたnバイトのメモリで構成されるものであって、
    前記値格納手段は、前記第2の色群のうち、8n/(N+M)色の色成分値を、前記1つの演算メモリの互いに異なる領域に各色毎に格納するものであることを特徴とする請求項3記載の色変換装置。
  5. 前記色変換テーブルに格納される前記第2の色群の各色成分値の最大値が、127より大きく255以下で構成され、且つ、前記重み係数取得手段により取得される重み係数の合計の最大値が、127より大きく255以下で構成されるものであって、
    前記値格納手段は2バイトの領域を各色毎に割り当てて、少なくとも2色の各色成分値を前記1つの演算メモリの互いに異なる領域に各色毎に格納するものであることを特徴とする請求項1または2に記載の色変換装置。
  6. 前記乗算手段および前記加算手段として機能するCPUを備え、
    前記CPUは64ビットCPUで構成され、前記1つの演算メモリは前記CPUに設けられた8バイトのメモリで構成されるものであって、
    前記値格納手段は、前記第2の色群のうち、4色のそれぞれに2バイトの領域を割り当てて、4色の各色成分値を前記1つの演算メモリに格納するものであることを特徴とする請求項5記載の色変換装置。
  7. 前記乗算手段および前記加算手段として機能するCPUを備え、
    前記CPUは32ビットCPUで構成され、前記1つの演算メモリは前記CPUに設けられた4バイトのメモリで構成されるものであって、
    前記値格納手段は、前記第2の色群のうち、2色のそれぞれに2バイトの領域を割り当てて、2色の各色成分値を前記1つの演算メモリに格納するものであることを特徴とする請求項5記載の色変換装置。
  8. 前記色変換テーブルにおいて、前記格子点に対応付けられた前記第2の色群の各色成分値は、前記値格納手段により前記1つの演算メモリに書き込まれる単位で格納されていることを特徴とする請求項1からのいずれかに記載の色変換装置。
  9. 前記重み係数取得手段により取得された重み係数が0であるかを判断する重み係数判断手段を備え、
    前記値格納手段は、前記重み係数判断手段により、重み係数が0でないと判断された場合、その重み係数が取得された格子点に対応する前記第2の色群の各色成分値を、前記演算メモリに格納するものであることを特徴とする請求項1からのいずれかに記載の色変換装置。
  10. 第1の色群の各色成分値で構成される入力値を、その入力値に対応する第2の色群の各色成分値に変換して出力する機能をコンピュータに実現させる色変換プログラムであって、
    前記コンピュータは、前記第1の色群の各色成分値に相当する値を座標軸とする表色空間内において、前記第1の色群の各色成分値で特定される格子点に対応付けられた前記第2の色群の各色成分値を格納する色変換テーブルを備えるものであり、
    前記表色空間内において、前記色変換テーブルにおいて前記第2の色群の各色成分値が対応付けられた格子点で構成される立方体のうち、前記入力値の位置を内部に含む立方体を選択するエリア選択ステップと、
    前記エリア選択ステップにより選択された立方体における前記入力値の位置を決定するエリア座標決定ステップと、
    前記エリア座標決定ステップにより決定された前記入力値の位置に基づいて、前記立方体を構成する格子点のうち、少なくとも1つの格子点について重み係数を取得する重み係数取得ステップと、
    前記重み係数取得ステップにより重み係数が取得された格子点に対応する前記第2の色群の各色成分値を前記色変換テーブルから読み出し1つの演算メモリの上位バイド及び下位バイトからなる互いに異なる領域を各色毎に割り当てて格納する値格納ステップと、
    前記値格納ステップにより前記演算メモリの上位バイト及び下位バイトからなる領域に格納された前記第2の色群の少なくとも2色の各色成分値に、その色成分値に対応する格子点について取得されたそれぞれの重み係数を、一度の乗算処理で乗算する乗算ステップと、
    前記乗算ステップによる各格子点についての乗算結果を各色毎に、一度の加算処理で累積加算する加算ステップと、
    前記加算ステップにより累積加算された累積加算結果を各色毎に読み出し、その読み出した累積加算結果を前記重み係数取得ステップにより取得される重み係数の合計でそれぞれ除算する除算処理を、各色毎に個別の処理で行い、前記入力値に対応する前記第2の色群の各色成分値を出力する出力ステップ手段とを前記コンピュータに実行させことを特徴とする色変換プログラム。
  11. 前記加算ステップは、前記乗算ステップによる各格子点についての乗算結果が各色毎に累積加算された累積値であって、前記値格納ステップにより前記1つの演算メモリに各色成分値が格納される少なくとも2色と同じ色の累積値を、前記1つの演算メモリと同じ配置で、1つの累積値メモリの互いに異なる領域に格納し、且つ、前記乗算ステップにより前記1つの演算メモリに格納される少なくとも2色の各色成分値についての乗算結果と、前記1つの累積値メモリに格納された累積値とを、一度の加算処理で各色毎に加算するものであることを特徴とする請求項1記載の色変換プログラム。
  12. 前記色変換テーブルに格納される前記第2の色群の各色成分値の最大値が、2N−1−1より大きく2N−1以下で構成され(Nは任意の正の整数)、且つ、前記重み係数取得ステップにより取得される重み係数の合計の最大値が、2M−1−1より大きく2M−1以下で構成されるとき(Mは任意の正の整数)、
    前記値格納ステップは、少なくともN+Mビットの領域を各色毎に割り当てて、少なくとも2色の各色成分値を前記1つの演算メモリの互いに異なる領域に各色毎に格納するものであることを特徴とする請求項1または1に記載の色変換プログラム。
  13. 前記コンピュータは前記乗算ステップおよび前記加算ステップを実行する8nビットCPUを備え(nは任意の正の整数)、前記1つの演算メモリは前記CPUに設けられたnバイトのメモリで構成されるものであって、
    前記値格納ステップは、前記第2の色群のうち、8n/(N+M)色の色成分値を、前記1つの演算メモリの互いに異なる領域に各色毎に格納するものであることを特徴とする請求項1記載の色変換プログラム。
  14. 前記色変換テーブルに格納される前記第2の色群の各色成分値の最大値が、127より大きく255以下で構成され、且つ、前記重み係数取得プログラムにより取得される重み係数の合計の最大値が、127より大きく255以下で構成されるものであって、
    前記値格納ステップは2バイトの領域を各色毎に割り当てて、少なくとも2色の各色成分値を前記1つの演算メモリの互いに異なる領域に各色毎に格納するものであることを特徴とする請求項1または1に記載の色変換プログラム。
  15. 前記コンピュータは前記乗算ステップおよび前記加算ステップを実行する64ビットCPUを備え、前記1つの演算メモリは前記CPUに設けられた8バイトのメモリで構成されるものであって、
    前記値格納ステップは、前記第2の色群のうち、4色のそれぞれに2バイトの領域を割り当てて、4色の各色成分値を前記1つの演算メモリに格納するものであることを特徴とする請求項1記載の色変換プログラム。
  16. 前記コンピュータは前記乗算ステップおよび前記加算ステップを実行する32ビットCPUを備え、前記1つの演算メモリは前記CPUに設けられた4バイトのメモリで構成されるものであって、
    前記値格納ステップは、前記第2の色群のうち、2色のそれぞれに2バイトの領域を割り当てて、2色の各色成分値を前記1つの演算メモリに格納するものであることを特徴とする請求項1記載の色変換プログラム。
  17. 前記色変換テーブルにおいて、前記格子点に対応付けられた前記第2の色群の各色成分値は、前記値格納ステップにより前記1つの演算メモリに書き込まれる単位で格納されていることを特徴とする請求項1から1のいずれかに記載の色変換プログラム。
  18. 前記重み係数取得プログラムにより取得された重み係数が0であるかを判断する重み係数判断ステップを前記コンピュータに実行させ、
    前記値格納ステップは、前記重み係数判断ステップにより、重み係数が0でないと判断された場合、その重み係数が取得された格子点に対応する前記第2の色群の各色成分値を、前記演算メモリに格納するものであることを特徴とする請求項1から1のいずれかに記載の色変換プログラム。
JP2005189661A 2005-06-29 2005-06-29 色変換装置および色変換プログラム Active JP4165537B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005189661A JP4165537B2 (ja) 2005-06-29 2005-06-29 色変換装置および色変換プログラム
US11/476,569 US7777924B2 (en) 2005-06-29 2006-06-29 Color conversion device and color conversion program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005189661A JP4165537B2 (ja) 2005-06-29 2005-06-29 色変換装置および色変換プログラム

Publications (2)

Publication Number Publication Date
JP2007013389A JP2007013389A (ja) 2007-01-18
JP4165537B2 true JP4165537B2 (ja) 2008-10-15

Family

ID=37661378

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005189661A Active JP4165537B2 (ja) 2005-06-29 2005-06-29 色変換装置および色変換プログラム

Country Status (2)

Country Link
US (1) US7777924B2 (ja)
JP (1) JP4165537B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5114717B2 (ja) * 2007-09-10 2013-01-09 株式会社リコー 画像形成装置
KR100982442B1 (ko) * 2008-08-12 2010-09-15 이화여자대학교 산학협력단 정준부호숫자를 이용한 가역 색상 변환 방법
US8390895B2 (en) * 2008-11-14 2013-03-05 Ricoh Production Print Solutions LLC Color conversions in the real domain
JP5361358B2 (ja) * 2008-12-11 2013-12-04 キヤノン株式会社 情報処理装置およびその制御方法、並びにプログラム
JP5593060B2 (ja) * 2009-11-26 2014-09-17 株式会社メガチップス 画像処理装置、および画像処理装置の動作方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5121196A (en) * 1988-11-18 1992-06-09 Konica Corporation Color processing method and apparatus with a color patch
JPH08307684A (ja) 1995-04-28 1996-11-22 Ricoh Co Ltd 色変換装置
JPH0969961A (ja) 1995-09-04 1997-03-11 Matsushita Electric Ind Co Ltd 色変換装置
JPH09153130A (ja) 1995-11-30 1997-06-10 Dainippon Printing Co Ltd 色変換方法及び装置
JP3927715B2 (ja) 1998-12-28 2007-06-13 キヤノン株式会社 色変換方法および色変換装置
JP4150994B2 (ja) 2000-08-16 2008-09-17 コニカミノルタホールディングス株式会社 画像処理装置及び色調整方法
JP4288865B2 (ja) 2001-05-16 2009-07-01 コニカミノルタホールディングス株式会社 色補間方法及び色補間装置
US6918018B2 (en) * 2002-09-27 2005-07-12 Texas Instruments Incorporated 64-bit single cycle fetch scheme for megastar architecture
JP2005026835A (ja) 2003-06-30 2005-01-27 Ricoh Co Ltd 画像処理装置
JP2005094126A (ja) 2003-09-12 2005-04-07 Canon Inc 画像処理装置および画像処理方法およびコンピュータで実行可能な画像処理プログラム

Also Published As

Publication number Publication date
US7777924B2 (en) 2010-08-17
US20070013926A1 (en) 2007-01-18
JP2007013389A (ja) 2007-01-18

Similar Documents

Publication Publication Date Title
US6075514A (en) Color table look-up having last value memory
JP4165537B2 (ja) 色変換装置および色変換プログラム
JP5267255B2 (ja) 画像処理装置、画像処理方法及びプログラム
US6860203B2 (en) Method and apparatus for printing computer generated images
US9208415B2 (en) Image processing apparatus and method encoding multi-valued image generated with fewer values
US8111419B2 (en) Rasterizing device for DL object management
US7706619B2 (en) Image processing device that produces high-quality reduced image at fast processing speed
JP2004187266A (ja) 画像配置方法、画像配置装置、および画像配置プログラム
US6046748A (en) Cooperative filter and raster operation evaluation model
JP6168062B2 (ja) 色変換装置、画像形成装置及び色変換方法
JP3146690B2 (ja) カラーページ記述言語処理装置
US9883078B2 (en) Systems and methods for efficient halftone where different dithering matrices are combined
JP2012124563A (ja) 色変換装置および印刷装置
JP2010214905A (ja) 画像形成装置、画像形成方法及びプログラム
US6778294B1 (en) Palette color cache
US7306310B2 (en) Technique for creating print data utilized by an ink jet printer
JP2007088825A (ja) 画像処理装置および画像処理方法
JP3782639B2 (ja) 情報テーブルの記憶方法および記憶構造
JP2002354276A (ja) 色変換方法および色変換装置
JP2715077B2 (ja) 印刷装置
JP2005065147A (ja) 画像処理装置、画像処理システム、圧縮画像処理用データ生成装置、画像処理方法、圧縮画像処理用データ生成方法および画像処理プログラム
KR100444899B1 (ko) 화상의회전변환방법
JP3071349B2 (ja) カラー印刷装置及びカラー印刷装置のための制御方法
JP3985568B2 (ja) プリンタホスト、プリンタドライバおよび印刷システム
JP2018079636A (ja) 画像処理装置及びプログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071018

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080122

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080324

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080708

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080721

R150 Certificate of patent or registration of utility model

Ref document number: 4165537

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110808

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120808

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120808

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130808

Year of fee payment: 5