A.第1実施例:
A-1.端末装置100と複合機200との構成:
図1は、実施例の画像処理システム1000を示す説明図である。画像処理システム1000は、端末装置100と、端末装置100に接続された複合機200と、を含んでいる。後述するように、複合機200は、原稿等の対象物を読み取るスキャナ部280と、画像を印刷する印刷実行部400と、複合機200の全体を制御する制御部299と、を有している。
端末装置100は、パーソナルコンピュータである(例えば、デスクトップコンピュータ、タブレットコンピュータなど)。端末装置100は、プロセッサ110と、記憶装置115と、画像を表示する表示部140と、ユーザによる操作を受け入れる操作部150と、通信インタフェース170と、を有している。これらの要素は、バスを介して互いに接続されている。記憶装置115は、揮発性記憶装置120と、不揮発性記憶装置130と、を含んでいる。
プロセッサ110は、データ処理を行う装置であり、例えば、CPUである。揮発性記憶装置120は、例えば、DRAMであり、不揮発性記憶装置130は、例えば、フラッシュメモリである。
不揮発性記憶装置130は、プログラム132と、指標値テーブル300と、第1色変換プロファイルセットLUTfと、第2色変換プロファイルセットLUTbと、を格納している。第1色変換プロファイルセットLUTfは、第1往路用色変換ルックアップテーブルLUTffと、第1復路用色変換ルックアップテーブルLUTfbと、を含んでいる。第2色変換プロファイルセットLUTbは、第2往路用色変換ルックアップテーブルLUTbfと、第2復路用色変換ルックアップテーブルLUTbbと、を含んでいる。以下、第1往路用色変換ルックアップテーブルLUTffを、第1往路用テーブルLUTffとも呼び、第1復路用色変換ルックアップテーブルLUTfbを、第1復路用テーブルLUTfbとも呼び、第2往路用色変換ルックアップテーブルLUTbfを、第2往路用テーブルLUTbfとも呼び、第2復路用色変換ルックアップテーブルLUTbbを、第2復路用テーブルLUTbbとも呼ぶ。プロセッサ110は、プログラム132を実行することによって、種々の機能を実現する。プログラム132によって実現される機能と、不揮発性記憶装置130に格納されているデータ300、LUTff、LUTfb、LUTbf、LUTbbと、のそれぞれの詳細については、後述する。プロセッサ110は、プログラム132の実行に利用される種々の中間データを、記憶装置115(例えば、揮発性記憶装置120、不揮発性記憶装置130のいずれか)に、一時的に格納する。本実施例では、プログラム132と指標値テーブル300とルックアップテーブルLUTff、LUTfb、LUTbf、LUTbbとは、複合機200の製造者によって提供されたデバイスドライバに含まれている。
表示部140は、画像を表示する装置であり、例えば、液晶ディスプレイである。これに代えて、LEDディスプレイ、有機ELディスプレイなどの、画像を表示する他の種類の装置が採用されてよい。操作部150は、ユーザによる操作を受け取る装置であり、例えば、表示部140上に重ねて配置されたタッチパネルである。これに代えて、ボタン、レバーなどの、ユーザによって操作される他の種類の装置が採用されてよい。ユーザは、操作部150を操作することによって、種々の指示を端末装置100に入力可能である。
通信インタフェース170は、他の装置と通信するためのインタフェースである(例えば、USBインタフェース、有線LANインタフェース、IEEE802.11の無線インタフェース)。通信インタフェース170には、複合機200が接続されている。
端末装置100は、ユーザの指示に従って複合機200を駆動し、複合機200に画像を印刷させる。
複合機200は、制御部299と、スキャナ部280と、印刷実行部400と、を有している。制御部299は、プロセッサ210と、記憶装置215と、画像を表示する表示部240と、ユーザによる操作を受け入れる操作部250と、通信インタフェース270と、を有している。これらの要素は、バスを介して互いに接続されている。記憶装置215は、揮発性記憶装置220と、不揮発性記憶装置230と、を含んでいる。
プロセッサ210は、データ処理を行う装置であり、例えば、CPUである。揮発性記憶装置220は、例えば、DRAMであり、不揮発性記憶装置230は、例えば、フラッシュメモリである。
不揮発性記憶装置230は、プログラム232と、指標値テーブル300と、第1色変換プロファイルセットLUTfと、第2色変換プロファイルセットLUTbと、を格納している。プロセッサ210は、プログラム232を実行することによって、種々の機能を実現する(詳細は、後述)。プロセッサ210は、プログラム232の実行に利用される種々の中間データを、記憶装置(例えば、揮発性記憶装置220、不揮発性記憶装置230のいずれか)に、一時的に格納する。データ300、LUTf、LUTbは、端末装置100の不揮発性記憶装置130に格納されているデータ300、LUTf、LUTbと、それぞれ同じである。本実施例では、プログラム232と指標値テーブル300と色変換プロファイルセットLUTf、LUTbとは、複合機200の製造者によって、ファームウェアとして、不揮発性記憶装置230に予め格納されている。
表示部240は、画像を表示する装置であり、例えば、液晶ディスプレイである。これに代えて、LEDディスプレイ、有機ELディスプレイなどの、画像を表示する他の種類の装置が採用されてよい。操作部250は、ユーザによる操作を受け取る装置であり、例えば、表示部240上に重ねて配置されたタッチパネルである。これに代えて、ボタン、レバーなどの、ユーザによって操作される他の種類の装置が採用されてよい。ユーザは、操作部250を操作することによって、種々の指示を複合機200に入力可能である。
通信インタフェース270は、他の装置と通信するためのインタフェースである。本実施例では、通信インタフェース270は、端末装置100の通信インタフェース170に接続されている。
スキャナ部280は、CCDやCMOSなどの光電変換素子を用いて光学的に原稿等の対象物を読み取ることによって、読み取った画像(「スキャン画像」と呼ぶ)を表すスキャンデータを生成する。スキャンデータは、例えば、カラーのスキャン画像を表すRGBのビットマップデータである。
印刷実行部400は、用紙(印刷媒体の一例)上に画像を印刷する装置である。本実施例では、印刷実行部400は、印刷ヘッド410(単にヘッド410とも呼ぶ)と、ヘッド駆動部420と、主走査部430と、搬送部440と、インク供給部450と、エンコーダ460と、これらの要素410、420、430、440、450、460を制御する制御回路490と、を有している。詳細は後述するが、印刷実行部400は、シアンCとマゼンタMとイエロYとブラックKとのそれぞれのインクを用いるインクジェット式の印刷装置である。なお、利用可能な複数種類のインクの組み合わせとしては、CMYKに限らず、他の種々の組み合わせ(例えば、シアンCとマゼンタMとイエロY)を採用可能である。
複合機200は、他の装置(例えば、端末装置100)によって供給された印刷データを用いて、印刷実行部400に画像を印刷させることができる。また、複合機200は、ユーザの指示に従ってスキャナ部280を駆動し、対象物を光学的に読み取ることによって、対象物を表すスキャンデータを生成する。そして、複合機200は、スキャンデータによって表される画像を印刷実行部400に印刷させることができる。また、複合機200は、外部装置(例えば、通信インタフェース270に接続されたメモリーカード)から画像データ(例えば、JPGデータ)を取得し、取得した画像データによって表される画像を印刷実行部400に印刷させることができる。
図2は、印刷実行部400の概略構成を示す図である。図2に示すように、主走査部430は、キャリッジ433と、摺動軸434と、ベルト435と、複数個のプーリ436、437と、を備えている。キャリッジ433は、印刷ヘッド410を搭載する。摺動軸434は、キャリッジ433を主走査方向(図2のDx軸方向)に沿って往復動可能に保持する。ベルト435は、プーリ436、437に巻き掛けられ、一部がキャリッジ433に固定されている。プーリ436は、図示しない主走査モータの動力によって回転する。主走査モータがプーリ436を回転させると、キャリッジ433が摺動軸434に沿って移動する。これによって、用紙PMに対して主走査方向に沿って印刷ヘッド410を往復動させる主走査が実現される。
搬送部440は、用紙PMを保持しつつ、印刷ヘッド410に対して搬送方向(図2の+Dy方向)に用紙PMを搬送する。また、搬送方向の上流側(-Dy側)を、単に、上流側とも呼び、搬送方向の下流側(+Dy側)を単に下流側とも呼ぶ。搬送部440は、印刷ヘッド410よりも上流側で用紙PMを保持する上流ローラ対441と、印刷ヘッド410よりも下流側で用紙PMを保持する下流ローラ対442と、図示しないモータと、を備える。搬送部440は、モータの動力で、これらのローラ441、442を駆動することによって、用紙PMを搬送方向に搬送する。以下、用紙PMを搬送方向に移動させる処理を、副走査とも呼ぶ。また、搬送方向を、副走査方向とも呼ぶ。
インク供給部450は、印刷ヘッド410にインクを供給する。インク供給部450は、カートリッジ装着部451と、チューブ452と、バッファタンク453と、を備えている。カートリッジ装着部451には、内部にインクが収容された容器である複数個のインクカートリッジKC、YC、CC、MCが着脱可能に装着され、これらのインクカートリッジからインクが供給される。バッファタンク453は、キャリッジ433において、印刷ヘッド410の上方に配置され、印刷ヘッド410に供給すべきインクをCMYKのインクごとに一時的に収容する。チューブ452は、カートリッジ装着部451とバッファタンク453との間を接続するインクの流路となる可撓性の管である。各インクカートリッジ内のインクは、カートリッジ装着部451、チューブ452、バッファタンク453を介して、印刷ヘッド410に供給される。バッファタンク453には、インクに混入した異物を除去するためのフィルタ(図示省略)が設けられている。
図3は、-Dz側から見た印刷ヘッド410の構成を示す図である。図3に示すように、印刷ヘッド410のノズル形成面411は、搬送部440によって搬送される用紙PMと対向する面である。ノズル形成面411には、複数のノズルNZからなる複数のノズル列、すなわち、上述したC、M、Y、Kの各インクを吐出するノズル列NC、NM、NY、NKが形成されている。各ノズル列は、複数個のノズルNZを含んでいる。複数個のノズルNZは、搬送方向(+Dy方向)の位置が互いに異なり、搬送方向に沿って所定のノズル間隔NTで並んでいる。ノズル間隔NTは、複数のノズルNZの中で搬送方向に隣り合う2個のノズルNZ間の搬送方向の長さである。これらのノズル列を構成するノズルのうち、最も上流側(-Dy側)に位置するノズルNZを、最上流ノズルNZuとも呼ぶ。また、これらのノズルのうち、最も下流側(+Dy側)に位置するノズルNZを、最下流ノズルNZdと呼ぶ。最上流ノズルNZuから最下流ノズルNZdまでの搬送方向の長さに、さらに、ノズル間隔NTを加えた長さを、ノズル長Dとも呼ぶ。
ノズル列NC、NM、NY、NKの主走査方向の位置は、互いに異なり、副走査方向の位置は、互いに重複している。図3の例では、ノズル列NK、NY、NC、NMは、+Dx方向に向かって、この順番に並んでいる。
各ノズルNZは、印刷ヘッド410の内部に形成されたインク流路(図示省略)を介してバッファタンク453に接続されている。各インク流路には、インクを吐出させるためのアクチュエータ(図示省略)が設けられている。
ヘッド駆動部420(図1)は、主走査部430による主走査中に印刷データに従って印刷ヘッド410内の各アクチュエータを駆動する電気回路を含んでいる。これによって、搬送部440によって搬送される用紙PM上に印刷ヘッド410のノズルNZからインクが吐出されて、ドットが形成される。
エンコーダ460(図1、図2)は、印刷ヘッド410の主走査方向の位置を検出する装置であり、いわゆるリニアエンコーダである。図2に示すように、エンコーダ460は、リニアスケール461と、光学センサ462と、を備えている。リニアスケール461は、主走査方向に延びる帯状の部材であり、筐体内に固定されている。リニアスケール461には、長手方向に沿って光を透過する透過部と光を透過しない非透過部とが交互に形成されている。図2に示されるように、光学センサ462は、キャリッジ433に搭載されており、主走査時には、印刷ヘッド410とともに移動する。光学センサ462は、発光素子と受光素子とを備えており、発光素子と受光素子との間にリニアスケール461が位置するように配置されている。キャリッジ433(印刷ヘッド410)が主走査方向に移動する主走査中には、発光素子から放出される光がリニアスケール461の透過部を透過して受光素子に受光されることと、非透過部によって遮られて受光素子に受光されないことと、が交互に繰り返される。エンコーダ460は、光学センサ462の受光素子にて受光された光の変化を示すパルス信号を出力する。このパルス信号に基づいてキャリッジ433の主走査方向の位置を取得できるので、該パルス信号は、キャリッジ433の主走査方向の位置を示す位置信号と言うことができる。エンコーダ460から出力される位置信号は、制御回路490に供給され、主走査や印刷ヘッド410の制御に用いられる。
A-2.印刷の概要:
印刷実行部400は、主走査部430に主走査を行わせつつ、印刷ヘッド410にインクを吐出させて用紙PMにドットを形成する部分印刷と、搬送部440による副走査(用紙PMの搬送)と、を交互に複数回実行することで、用紙PMに印刷画像を印刷する。
図4は、印刷実行部400の動作の例の説明図である。図4には、用紙PMに印刷される印刷画像OIが図示されている。印刷画像OIは、-Dy方向に並ぶ複数個の部分画像PI1~PI4を含んでいる。各部分画像は、1回の部分印刷によって印刷される画像である。部分印刷の印刷方向は、往路方向と復路方向とのいずれかである。すなわち、部分印刷は、往路方向Df(図4の+Dx方向)に印刷ヘッド410を移動させる主走査を行いつつドットを形成する往路印刷と、復路方向Db(図4の-Dx方向)に印刷ヘッド410を移動させる主走査を行いつつドットを形成する復路印刷と、のいずれかである。図4にて部分画像内には、+Dx方向または-Dx方向の点線の矢印が付されている。+Dx方向の矢印は、往路方向Dfを示し、-Dx方向の矢印は、復路方向Dbを示している。図4の例では、部分画像PI1、PI3が、復路印刷によって印刷される復路部分画像であり、部分画像PI2、PI4が、往路印刷によって印刷される往路部分画像である。このように、図4の例では、復路印刷と往路印刷とが交互に行われている。このような印刷方法は、双方向印刷とも呼ばれる。以下、1回の部分印刷を、「パス処理」または、単に「パス」とも呼ぶ。
また、図4において、+Dy方向は、用紙PMの搬送方向である。複数の部分画像は、印刷画像OIの+Dy方向側の端の部分画像から、-Dy方向に向かって1つずつ順番に、印刷される。本実施例の印刷は、いわゆる1パス印刷であり、各部分画像の搬送方向の長さ、および、1回の用紙PMの搬送量は、ノズル長Dと同じである。
図中には、往路印刷によるインクの重ね順である第1順I1と、復路印刷によるインクの重ね順である第2順I2とが、示されている。本実施例では、第1順I1は、用紙PMからMCYKの順であり、第2順I2は、用紙PMからKYCMの順である。このように、第2順I2は、第1順I1とは反対である。印刷された2つの色の間でインクの重ね順が異なる場合、重ねられたインクの種類と各種インクのそれぞれの単位面積当たりの量とが同じ場合であっても、2つの色が異なって見える場合がある。
図5(A)~図5(C)は、往路印刷によって印刷可能な最大の色範囲である往路最大色範囲CRfと、復路印刷によって印刷可能な最大の色範囲である復路最大色範囲CRbと、の例を示すグラフである。往路最大色範囲CRfは、点線で示され、復路最大色範囲CRbは、実線で示されている。各グラフは、CIELAB色空間の色成分(すなわち、L*、a*、b*)を用いて表されている。これらの色範囲CRf、CRbは、印刷されたカラーパッチを測色することによって、特定される。また、これらの色範囲CRf、CRbは、カラーパッチのCMYKのインクのそれぞれの単位面積当たりの量の組み合わせとして、予め決められた許容範囲内の任意の組み合わせを利用可能である場合の最大の色範囲である。許容範囲は、適切な印刷ができるように、予め実験的に決定される。以下、印刷された画像の色(すなわち、測色によって特定される色)を、印刷色とも呼ぶ。
図5(A)のグラフは、a*b*平面上に投影された最大色範囲CRf、CRbを示している。横軸はa*であり、縦軸はb*である。図5(B)のグラフは、a*L*平面上に投影された最大色範囲CRf、CRbを示している。横軸はa*であり、縦軸はL*である。図5(C)のグラフは、b*L*平面上に投影された最大色範囲CRf、CRbを示している。横軸はb*であり、縦軸はL*である。
図5(A)に示すように、往路最大色範囲CRfは、復路最大色範囲CRbには含まれない色範囲であって高彩度の赤色の色範囲Rrの色を、含んでいる。往路印刷は、復路印刷では印刷できない高彩度の赤色を印刷できる。図5(B)に示すように、往路最大色範囲CRfは、復路最大色範囲CRbには含まれない色範囲であって高彩度の緑色の色範囲Rgの色を、含んでいる。往路印刷は、復路印刷では印刷できない高彩度の緑色を印刷できる。また、図5(C)に示すように、復路最大色範囲CRbは、往路最大色範囲CRfには含まれない色範囲であって高彩度の黄色の色範囲Ryを、含んでいる。復路印刷は、往路印刷では印刷できない高彩度の黄色を印刷できる。
図6(A)~図6(C)は、第1色変換プロファイルセットLUTfのルックアップテーブルLUTff、LUTfbの例を示すグラフである。後述するように、印刷処理では、印刷用の画像データの色値である入力色値(本実施例では、RGBの色値)が、インクの色に対応する色値である出力色値(本実施例では、CMYKの色値)に変換される。以下、印刷用の画像データの色空間を入力色空間とも呼ぶ(本実施例では、RGB色空間)。また、印刷に利用可能な複数種類のインクの色に対応する色空間をインク色空間とも呼ぶ(本実施例では、CMYK色空間)。ルックアップテーブルLUTff、LUTfbは、入力色値と出力色値との対応関係(すなわち、入力色空間とインク色空間との対応関係)を定めている。このようなルックアップテーブルLUTf、LUTbは、色変換プロファイル、または、単に、プロファイルとも呼ばれる。第1往路用テーブルLUTffは、往路印刷のために利用され、第1復路用テーブルLUTfbは、復路印刷のために利用される。
図6(A)~図6(C)には、各ルックアップテーブルLUTff、LUTfbを用いて印刷可能な色範囲である印刷色範囲RLff、RLfbが示されている。図6(A)~図6(C)には、それぞれ、図5(A)~図5(C)と同じ平面上に投影された色範囲RLff、RLfbが示されている。第1往路印刷色範囲RLffは、第1往路用テーブルLUTffを用いる往路印刷によって印刷可能な色の範囲であり、点線で示されている。第1往路印刷色範囲RLffは、図5(A)~図5(C)の往路最大色範囲CRfに含まれている。第1復路印刷色範囲RLfbは、第1復路用テーブルLUTfbを用いる復路印刷によって印刷可能な色の範囲であり、実線で示されている。第1復路印刷色範囲RLfbは、図5(A)~図5(C)の復路最大色範囲CRbに含まれている。
本実施例では、第1往路印刷色範囲RLffは、往路最大色範囲CRfとおおよそ同じである。図6(A)、図6(B)に示すように、第1往路印刷色範囲RLffは、高彩度の色範囲Rg、Rrを含んでいる。これらの色範囲Rg、Rrは、図5(A)、図5(B)に示すように、復路最大色範囲CRbには含まれず、往路最大色範囲CRfに含まれる色範囲である。
このように、第1色変換プロファイルセットLUTfの第1往路用テーブルLUTffは、往路最大色範囲CRfに含まれる高彩度の色を印刷できるように、構成されている。例えば、図6(A)、図6(B)の第1色C1は、高彩度の緑色であり、復路最大色範囲CRbには含まれずに、往路最大色範囲CRfに含まれる色である。第3色C3は、高彩度の赤色であり、復路最大色範囲CRbには含まれずに、往路最大色範囲CRfに含まれる色である。第1往路用テーブルLUTffに基づく往路印刷によって、第1色C1、ひいては、色範囲Rg(図5(B))のように高彩度の緑色を印刷できる。また、第1往路用テーブルLUTffに基づく往路印刷によって、第3色C3、ひいては、色範囲Rr(図5(A))のように高彩度の赤色を印刷できる。
第1復路印刷色範囲RLfbは、往路最大色範囲CRfと復路最大色範囲CRbとに共通な色範囲内に制限されている。例えば、図6(C)に示すように、第1復路印刷色範囲RLfbは、高彩度の色範囲Ryを含んでいない。この色範囲Ryは、図5(C)に示すように、往路最大色範囲CRfには含まれず、復路最大色範囲CRbに含まれる色範囲である。
このように、第1色変換プロファイルセットLUTfの第1復路用テーブルLUTfbは、第1往路用テーブルLUTffに基づく往路印刷でも印刷可能な色を印刷するように、構成されている。例えば、図6(C)の第2色C2は、高彩度の黄色であり、往路最大色範囲CRfには含まれずに、復路最大色範囲CRbに含まれる色である。第1復路用テーブルLUTfbに基づく復路印刷は、第2色C2、ひいては、色範囲Ry(図5(C))のように高彩度の黄色を印刷しない。
なお、本実施例では、往路印刷と復路印刷との間で印刷される色が過度に異なることを抑制するために、ルックアップテーブルLUTff、LUTfbは、入力色空間の一部の範囲である第1特定入力色範囲では、同じ入力色値に、印刷される色がおおよそ同じである出力色値を対応付けている。図6(A)~図6(C)のハッチングで示される色範囲Rcfは、第1特定入力色範囲に対応付けられた色範囲である(第1特定印刷色範囲Rcfと呼ぶ)。本実施例では、第1特定印刷色範囲Rcfは、第1往路印刷色範囲RLffと第1復路印刷色範囲RLfbとの間のズレが大きい高彩度の色範囲Rr、Rg(図6(A)、図6(B))とその近傍を除いた残りの範囲である。従って、色範囲Rr、Rgとその近傍を含む範囲の高彩度の色以外の色については、入力色値が同じ場合には、部分印刷の方向に拘わらず、印刷される色はおおよそ同じである。
なお、図4で説明したように、往路印刷と復路印刷との間では、インクの重ね順が異なっているので、各インクの量が同じ場合に、印刷色が異なり得る。換言すれば、印刷色が同じ場合、往路印刷用の出力色値は、復路印刷用の出力色値と異なり得る。ルックアップテーブルLUTff、LUTfbは、第1特定入力色範囲内の同じ入力色値に対して、おおよそ同じ印刷色に対応する出力色値であって互いに異なる出力色値を対応付ける場合がある。
以上のように、第1色変換プロファイルセットLUTfは、復路印刷では印刷できず往路印刷で印刷可能な高彩度の色(例えば、色範囲Rg、Rrの色)の印刷を、往路印刷に許容している。そして、往路印刷では印刷できず復路印刷で印刷可能な高彩度の色(例えば、色範囲Ryの色)の印刷を、禁止することによって、往路印刷と復路印刷との間の印刷される色の差が過度に大きくなることを抑制している。
図7(A)~図7(C)は、第2色変換プロファイルセットLUTbのルックアップテーブルLUTbf、LUTbbの例を示すグラフである。ルックアップテーブルLUTbf、LUTbbは、入力色値と出力色値との対応関係(すなわち、入力色空間とインク色空間との対応関係)を定めている。第2往路用テーブルLUTbfは、往路印刷のために利用され、第2復路用テーブルLUTbbは、復路印刷のために利用される。
図7(A)~図7(C)には、各ルックアップテーブルLUTbf、LUTbbを用いて印刷可能な色範囲である印刷色範囲RLbf、RLbbが示されている。図7(A)~図7(C)には、それぞれ、図5(A)~図5(C)と同じ平面上に投影された色範囲RLbf、RLbbが示されている。第2往路印刷色範囲RLbfは、第2往路用テーブルLUTbfを用いる往路印刷によって印刷可能な色の範囲であり、点線で示されている。第2往路印刷色範囲RLbfは、図5(A)~図5(C)の往路最大色範囲CRfに含まれている。第2復路印刷色範囲RLbbは、第2復路用テーブルLUTbbを用いる復路印刷によって印刷可能な色の範囲であり、実線で示されている。第2復路印刷色範囲RLbbは、図5(A)~図5(C)の復路最大色範囲CRbに含まれている。
本実施例では、第2復路印刷色範囲RLbbは、復路最大色範囲CRbとおおよそ同じである。図7(C)に示すように、第2復路印刷色範囲RLbbは、高彩度の色範囲Ryを含んでいる。この色範囲Ryは、図5(C)に示すように、往路最大色範囲CRfには含まれず、復路最大色範囲CRbに含まれる色範囲である。
このように、第2色変換プロファイルセットLUTbの第2復路用テーブルLUTbbは、復路最大色範囲CRbに含まれる高彩度の色を印刷できるように、構成されている。例えば、図7(C)の第2色C2は、高彩度の黄色であり、往路最大色範囲CRfには含まれずに、復路最大色範囲CRbに含まれる色である。第2復路用テーブルLUTbbに基づく復路印刷によって、第2色C2、ひいては、色範囲Ry(図5(C))のように高彩度の黄色を印刷できる。
第2往路印刷色範囲RLbfは、往路最大色範囲CRfと復路最大色範囲CRbとに共通な色範囲内に制限されている。例えば、図7(A)、図7(B)に示すように、第2往路印刷色範囲RLbfは、高彩度の色範囲Rg、Rrを含んでいない。これらの色範囲Rg、Rrは、図5(A)、図5(B)に示すように、復路最大色範囲CRbには含まれず、往路最大色範囲CRfに含まれる色範囲である。
このように、第2色変換プロファイルセットLUTbの第2往路用テーブルLUTbfは、第2復路用テーブルLUTbbに基づく復路印刷でも印刷可能な色を印刷するように、構成されている。例えば、図7(A)、図7(B)の第1色C1は高彩度の緑色であり、第3色C3は高彩度の赤色である。これらの色C1、C3は、復路最大色範囲CRbには含まれずに、往路最大色範囲CRfに含まれる色である。第2往路用テーブルLUTbfに基づく往路印刷は、色C1、C3、ひいては、色範囲Rg、Rr(図5(A)、図5(B))のように高彩度の色を印刷しない。
なお、本実施例では、往路印刷と復路印刷との間で印刷される色が過度に異なることを抑制するために、ルックアップテーブルLUTbf、LUTbbは、入力色空間の一部の範囲である第2特定入力色範囲では、同じ入力色値に、印刷される色がおおよそ同じである出力色値を対応付けている。図7(A)~図7(C)のハッチングで示される色範囲Rcbは、第2特定入力色範囲に対応付けられた色範囲である(第2特定印刷色範囲Rcbと呼ぶ)。本実施例では、第2特定印刷色範囲Rcbは、第2往路印刷色範囲RLbfと第2復路印刷色範囲RLbbとの間のズレが大きい高彩度の色範囲Ry(図6(C))とその近傍を除いた残りの範囲である。従って、色範囲Ryとその近傍を含む範囲の高彩度の色以外の色については、入力色値が同じ場合には、部分印刷の方向に拘わらず、印刷される色はおおよそ同じである。なお、ルックアップテーブルLUTbf、LUTbbは、第2特定入力色範囲内の同じ入力色値に対して、おおよそ同じ印刷色に対応する出力色値であって互いに異なる出力色値を対応付ける場合がある。
以上のように、第2色変換プロファイルセットLUTbは、往路印刷では印刷できず復路印刷で印刷可能な高彩度の色(例えば、色範囲Ryの色)の印刷を、復路印刷に許容している。そして、復路印刷では印刷できず往路印刷で印刷可能な高彩度の色(例えば、色範囲Rg、Rrの色)の印刷を、禁止することによって、往路印刷と復路印刷との間の印刷される色の差が過度に大きくなることを抑制している。
以上のように、第1色変換プロファイルセットLUTfは、往路方向の部分印刷により印刷可能な高彩度の色(例えば、色範囲Rg、Rrの色(図6(A)、図6(B)))に適している。以下、第1色変換プロファイルセットLUTfを、往路方向プロファイルセットLUTfとも呼ぶ。一方、第2色変換プロファイルセットLUTbは、復路方向の部分印刷により印刷可能な高彩度の色(例えば、色範囲Ryの色(図6(C))に適している。以下、第2色変換プロファイルセットLUTbを、復路方向プロファイルセットLUTbとも呼ぶ。後述するように、色変換に利用すべき色変換プロファイルセット(対象プロファイルセットとも呼ぶ)は、印刷すべき画像に含まれる色に応じて、往路方向プロファイルセットLUTfと復路方向プロファイルセットLUTbとから選択される。
図8は、指標値テーブル300の例を示す表である。指標値テーブル300は、入力色空間の色値(ここでは、RGB値)と、部分印刷の好ましい方向を示す指標値Vと、の対応関係を定めている。指標値Vは、高彩度の色を印刷可能な部分印刷の方向を示している。「V=1」は、往路方向が好ましいことを示し、「V=-1」は、復路方向が好ましいことを示し、「V=0」は、往路方向と復路方向とのいずれもが好ましいことを示している。
第1入力色値IV1は、高彩度の緑色を示しており、対応する指標値Vは「1(往路方向)」である。第1入力色値IV1によって表される画像が往路方向プロファイルセットLUTf(具体的には第1往路用テーブルLUTff)に基づく往路印刷によって印刷される場合、印刷色は、図6(B)の高彩度の緑色の色範囲Rgの色である。一方、第1入力色値IV1によって表される画像が復路方向プロファイルセットLUTbに基づいて印刷される場合、印刷色は、色範囲Rgよりも低彩度の色である(具体的には、図7(A)~図7(C)の第2往路印刷色範囲RLbfまたは第2復路印刷色範囲RLbb内の色)。
第2入力色値IV2は、高彩度の黄色を示しており、対応する指標値Vは「-1(復路方向)」である。第2入力色値IV2によって表される画像が復路方向プロファイルセットLUTb(具体的には第2復路用テーブルLUTbb)に基づく復路印刷によって印刷される場合、印刷色は、図7(C)の高彩度の黄色の色範囲Ryの色である。一方、第2入力色値IV2によって表される画像が往路方向プロファイルセットLUTfに基づいて印刷される場合、印刷色は、色範囲Ryよりも低彩度の色である(具体的には、図6(A)~図6(C)の第1往路印刷色範囲RLffまたは第1復路印刷色範囲RLfb内の色)。
第3入力色値IV3は、高彩度の赤色を示しており、対応する指標値Vは「1(往路方向)」である。第3入力色値IV3によって表される画像が往路方向プロファイルセットLUTf(具体的には第1往路用テーブルLUTff)に基づく往路印刷によって印刷される場合、印刷色は、図6(A)の高彩度の赤色の色範囲Rrの色である。一方、第3入力色値IV3によって表される画像が復路方向プロファイルセットLUTbに基づいて印刷される場合、印刷色は、色範囲Rrよりも低彩度の色である(具体的には、図7(A)~図7(C)の第2往路印刷色範囲RLbfまたは第2復路印刷色範囲RLbb内の色)。
このように、指標値Vは、往路方向(具体的には、往路方向プロファイルセットLUTf)と、復路方向(具体的には、復路方向プロファイルセットLUTb)とのうち、より高い彩度の色を印刷可能な方向を示している。本実施例では、入力色値が第1特定入力色範囲と第2特定入力色範囲とのいずれかに含まれる場合、指標値Vはゼロである。ただし、指標値Vがゼロに設定される色範囲は、他の色範囲であってよい(例えば、第1特定入力色範囲と第2特定入力色範囲とに共通な色範囲)。
図9、図10は、印刷処理の例を示すフローチャートである。図10は、図9の続きの処理を示している。本実施例では、端末装置100(図1)のプロセッサ110は、ユーザからの印刷指示を受信する。プロセッサ110は、印刷指示に基づいて、印刷処理を開始する。印刷指示の入力方法は、任意の方法であってよい。本実施例では、ユーザは、操作部150を操作することによって、印刷指示を入力する。印刷指示は、印刷用の画像データを指定する情報を含んでいる。以下、印刷指示で指定された画像データを、対象画像データとも呼ぶ。また、対象画像データの画像を対象画像とも呼ぶ。対象画像データとしては、種々のデータが指定されてよい。例えば、記憶装置115(例えば、不揮発性記憶装置130)に格納済みの画像データや、端末装置100で動作しているアプリケーションによって生成された画像データが、指定されてよい。本実施例では、対象画像データが、ビットマップデータであり、対象画像データの各画素の画素値が、0から255までの256階調のR(赤)G(緑)B(青)の階調値で表されていることとする。指定された画像データの形式がビットマップ形式とは異なる形式である場合(例えば、EMF(Enhanced Meta File)形式)、プロセッサ110は、データ形式を変換(例えば、ラスタライズ)することによって生成されるビットマップデータを、対象画像データとして用いる。また、プロセッサ110は、対象画像データを解析することによって、ページ数Nを特定する(Nは1以上の整数)。
S110では、プロセッサ110は、対象画像データによって表されるNページのそれぞれの印刷処理が終了したか否かを判断する。未処理のページが残っている場合(S110:No)、S120で、未処理のページのうちの最初のページを、処理対象のページである注目ページとして選択する。以下、注目ページの画像を、注目画像とも呼ぶ。
図11(A)、図11(B)は、それぞれ、注目画像の例を示す概略図である。図11(A)の第1注目画像IM1は、白色の背景と3つのオブジェクトOB1~OB3を表している。第1オブジェクトOB1は、黒色の文字列のオブジェクトである。第2オブジェクトOB2は、赤色のイチゴを表すオブジェクトである。第2オブジェクトOB2の複数の画素のうちの一部の複数の画素のそれぞれのRGB値は、255,0,0であり、高彩度の赤色を示している。第3オブジェクトOB3は、黒色の複数の文字列のオブジェクトである。
図11(B)の第2注目画像IM2は、白色の背景と3つのオブジェクトOB11~OB13を表している。第1オブジェクトOB11は、黒色の文字列のオブジェクトである。第2オブジェクトOB12は、黄色の表のオブジェクトである。第2オブジェクトOB12の複数の画素のうちの一部の複数の画素のそれぞれのRGB値は、255,255,0であり、高彩度の黄色を示している。第3オブジェクトOB13は、黒色の複数の文字列のオブジェクトである。
図9のS150では、プロセッサ110は、パラメータを初期化する。具体的には、処理画素数Npがゼロに初期化され、合計値Tvがゼロに初期化される。
S160では、プロセッサ110は、注目画像の全ての画素の処理が終了したか否かを判断する。未処理の画素が残っている場合(S160:No)、S170で、プロセッサ110は、注目画像の複数の画素のうちの未処理の1個の画素を、処理対象の画素である注目画素として選択する。S180では、プロセッサ110は、対象画像データのうち注目画像に対応する部分を参照して、注目画素の入力色値(ここでは、RGB値)を特定する(注目入力色値とも呼ぶ)。S190では、プロセッサ110は、指標値テーブル300(図8)を参照して、注目入力色値に対応する指標値Vを特定する(注目指標値Vとも呼ぶ)。S195では、プロセッサ110は、注目指標値Vが「1」または「-1」である場合に、合計値Tvに注目指標値Vを加算し、処理画素数Npに1を加算する。そして、プロセッサ110は、S160へ移行する。
注目画像の全ての画素の処理が終了した場合(S160:Yes)、S500(図10)で、プロセッサ110は、平均指標値AVを算出する。本実施例では、AV=Tv/Npである。このように、平均指標値AVは、指標値Vが「1」または「-1」である画素の指標値Vの平均値である。指標値Vが「ゼロ」である画素は、平均指標値AVの算出から除かれている。
S510では、プロセッサ110は、予め決められた2つの範囲から平均指標値AVを含む範囲を特定する。本実施例では、3つの範囲は、第1範囲RV1(0≦AV)と、第2範囲RV2(AV<0)と、である。第1範囲RV1は、注目画像において、往路方向(ひいては、往路方向プロファイルセットLUTf)に適した色の画素の数が、復路方向(ひいては、復路方向プロファイルセットLUTb)に適した色の画素の数と比べて、多いことを示している。第2範囲RV2は、注目画像において、復路方向(ひいては、復路方向プロファイルセットLUTb)に適した色の画素の数が、往路方向(ひいては、往路方向プロファイルセットLUTf)に適した色の画素の数と比べて、多いことを示している。
第1範囲RV1が平均指標値AVを含む場合、S520で、プロセッサ110は、注目画像(すなわち、注目ページ)のための対象プロファイルセットとして、第1色変換プロファイルセットLUTfを選択し、S550へ移行する。第2範囲RV2が平均指標値AVを含む場合、S530で、プロセッサ110は、対象プロファイルセットとして、第2色変換プロファイルセットLUTbを選択し、S550へ移行する。
図11(A)、図11(B)の注目画像IM1、IM2の右側には、S510(図10)で特定される範囲と、対象プロファイルセットと、が示されている。第1注目画像IM1(図11(A)では、第2オブジェクトOB2を示す複数の画素の指標値Vが「1」であるので、平均指標値AVは、第1範囲RV1に含まれる。従って、対象プロファイルセットとして、第1色変換プロファイルセットLUTfが選択される。
第2注目画像IM2(図11(B)では、第2オブジェクトOB12を示す複数の画素の指標値Vが「-1」であるので、平均指標値AVは、第2範囲RV2に含まれる。従って、対象プロファイルセットとして、第2色変換プロファイルセットLUTbが選択される。
このように、注目画像IM1、IM2のそれぞれの対象プロファイルセットは、高彩度の色を含むオブジェクトOB2、OB12が、それぞれ、高い彩度の色で印刷され得るように、決定される。
図10のS550では、プロセッサ110は、注目画像の解像度変換処理を実行する。解像度変換処理は、対象画像データ(特に、注目画像に対応する部分)の解像度を印刷用の予め決められた印刷解像度に変換する処理である。
S560では、プロセッサ110は、注目画像の色変換処理を実行する。プロセッサ110は、色変換プロファイルセットLUTf、LUTbのうち、S510~S530で選択された対象プロファイルセットを用いて、解像度変換済の注目画像の各画素の色値を、インク色空間の色値に変換する。図4で説明したように、注目画像は、複数回の部分印刷(すなわち、パス処理)によって印刷される。プロセッサ110は、注目画像を、注目画像の+Dy方向側の端から、-Dy方向に向かって、ノズル長Dに対応する幅の複数の部分画像に区分することによって、複数回の部分印刷に対応する複数の部分画像を特定する。各部分画像の印刷方向は、復路印刷と往路印刷とが交互に行われるように、予め決められている。例えば、+Dy方向側の端の部分画像の印刷方向は、復路方向に予め決定されている。そして、他の部分画像の印刷方向は、-Dy方向に向かって復路印刷と往路印刷とが交互に繰り返されるように、決定される。プロセッサ110は、復路印刷に対応する部分画像の色変換処理を、対象プロファイルセットの往路用色変換ルックアップテーブルを用いて、実行する。また、プロセッサ110は、往路印刷に対応する部分画像の色変換処理を、対象プロファイルセットの復路用色変換ルックアップテーブルを用いて、実行する。
S570では、プロセッサ110は、各部分画像のハーフトーン処理を実行する。ハーフトーン処理は、例えば、誤差拡散法や、ディザマトリクスを用いる方法など、種々の方法の処理であってよい。S580では、プロセッサ110は、ハーフトーン処理の結果を表すデータを用いて、複数の部分画像のための複数の部分印刷データを生成する。印刷データは、複合機200(本実施例では、印刷実行部400の制御回路490)によって解釈可能なデータ形式のデータである。S580で生成される部分印刷データは、ハーフトーン処理の結果を示す画像データと、印刷方向を示すデータと、部分印刷の後の用紙PMの搬送量(ここでは、ノズル長Dと同じ)を示すデータと、を含んでいる。
S590では、プロセッサ110は、複数の部分印刷データを、印刷すべき順番で、複合機200へ出力する。複合機200のプロセッサ210は、受信した部分印刷データを、印刷実行部400へ出力する。印刷実行部400は、受信した部分印刷データに従って、部分画像を印刷する部分印刷を実行する。
なお、プロセッサ110は、1つの部分画像のためのS550~S590を繰り返すことによって、複数の部分画像のそれぞれのための処理を実行してもよい。
部分印刷データの出力(S590)の後、プロセッサ110は、図9のS110へ移行する。そして、プロセッサ110は、全てのページに対して、S120(図9)~S590(図10)の処理を実行する。全てのページの処理が終了した場合(S110:Yes)、プロセッサ110は、印刷処理を終了する。
以上のように、本実施例では、印刷実行部400(図1、図2)は、印刷ヘッド410と、主走査部430と、搬送部440と、を含む複数の要素を備えている。印刷ヘッド410(図3)は、KYCMのインクを吐出するための複数のノズルNZを有している。具体的には、印刷ヘッド410は、ブラックKのノズル列NKと、イエロYのノズル列NYと、シアンCのノズル列NCと、マゼンタMのノズル列NMと、を有している。そして、これらのノズル列NK、NY、NC、NMは、主走査方向に並んで配置されている。主走査部430(図2)は、用紙PMに対して主走査方向に沿って印刷ヘッド410を移動させる主走査を実行する。搬送部440は、印刷ヘッド410に対して主走査方向と交差する副走査方向(搬送方向とも呼ぶ)に沿って用紙PMを移動させる副走査を実行する(以下、搬送部440を、副走査部440とも呼ぶ)。そして、図4等で説明したように、印刷実行部400は、主走査を行いつつ印刷ヘッド410によって用紙PMにドットを形成する部分印刷と、副走査と、を交互に複数回実行することで印刷を行う。
不揮発性記憶装置130(図1)は、第1色変換プロファイルセットLUTfと第2色変換プロファイルセットLUTbとを格納している。第1色変換プロファイルセットLUTfは、往路方向の部分印刷のための第1往路用テーブルLUTffと、復路方向の部分印刷のための第1復路用テーブルLUTfbと、を含んでいる。第2色変換プロファイルセットLUTbは、往路方向の部分印刷のための第2往路用テーブルLUTbfと、復路方向の部分印刷のための第2復路用テーブルLUTbbと、を含んでいる。各ルックアップテーブルLUTff、LUTfb、LUTbf、LUTbbは、入力色空間(ここでは、RGB色空間)の複数の入力色値と複数種類のインクの色に対応する複数の成分値を含むインク色空間(ここでは、CMYK色空間)の複数の出力色値とを対応付けている。
ここで、インク色空間において、第1色変換プロファイルセットLUTfの第1往路用色変換ルックアップテーブルLUTffによって対応付けられる出力色値が分布するインク色空間内の色範囲は、第1往路印刷色範囲RLff(図6(A)~図6(C))に対応する第1色範囲である。図6(A)、図6(B)で説明したように、第1色範囲(すなわち、第1往路印刷色範囲RLff)は、第1色C1を示す第1色値を含む色範囲である。第1色C1は、第1往路用テーブルLUTffに基づく部分画像データを用いる往路方向の部分印刷によって印刷可能な色である。図7(A)~図7(C)に示すように、第1色C1は、第2往路印刷色範囲RLbfと第2復路印刷色範囲RLbbとの外の色である。すなわち、第1色C1は、第2色変換プロファイルセットLUTbの第2往路用テーブルLUTbfに基づく部分画像データを用いる部分印刷と、第2色変換プロファイルセットLUTbの第2復路用テーブルLUTbbに基づく部分画像データを用いる部分印刷と、のいずれもが印刷できない色である。往路印刷色範囲RLfに対応する第1色範囲は、このような第1色C1を含む色範囲である。
また、インク色空間において、第2色変換プロファイルセットLUTbの第2復路用色変換ルックアップテーブルLUTbbによって対応付けられる出力色値が分布するインク色空間内の色範囲は、第2復路印刷色範囲RLbb(図7(A)~図7(C))に対応する第2色範囲である。図7(C)で説明したように、第2色範囲(すなわち、第2復路印刷色範囲RLbb)は、第2色C2を示す第2色値を含む色範囲である。第2色C2は、第2復路用テーブルLUTbbに基づく部分画像データを用いる復路方向の部分印刷によって印刷可能な色である。図6(C)に示すように、第2色C2は、第1往路印刷色範囲RLffと第1復路印刷色範囲RLfbとの外の色である。すなわち、第2色C2は、第1色変換プロファイルセットLUTfの第1往路用テーブルLUTffに基づく部分画像データを用いる部分印刷と、第1色変換プロファイルセットLUTfの第1復路用テーブルLUTfbに基づく部分画像データを用いる部分印刷と、のいずれもが印刷できない色である。
S120(図9)~S530(図10)で説明したように、プロセッサ110は、印刷対象となる特定色空間(上記の入力色空間。ここでは、RGB色空間)で表された対象画像データによって示される色値を用いて、記憶装置115(ここでは、不揮発性記憶装置130)に格納された第1色変換プロファイルセットLUTfと第2色変換プロファイルセットLUTbとから、対象プロファイルセットを選択する。対象プロファイルセットは、対象画像データを用いる色変換処理で用いられるべき色変換プロファイルセットである。
図9、図10で説明したように、プロセッサ110は、複数回の部分印刷のそれぞれのために、対象画像データのうちの部分印刷に対応する部分である部分画像データを用いる色変換処理(S550、S560)を含む生成処理(S550~S580)を実行して、部分画像データに対応する部分印刷データを生成する。上述したように、複数回の部分印刷のそれぞれの印刷方向は、往路方向と復路方向とが交互に繰り返されるように、予め決められている。S560(図10)で説明したように、部分印刷の印刷方向が往路方向である場合には、色変換処理は、S510~S530で選択された対象プロファイルセットの往路用色変換プロファイルを用いて実行される。部分印刷の印刷方向が復路方向である場合には、色変換処理は、対象プロファイルセットの復路用色変換プロファイルを用いて実行される。そして、S590では、プロセッサ110は、部分印刷データを、複合機200に出力する。
以上により、第1色変換プロファイルセットLUTfが色変換処理に用いられる場合には、往路方向の部分印刷によって、第2色変換プロファイルセットLUTbが色変換処理に用いられる場合には印刷できない第1色C1が、印刷され得る。また、第2色変換プロファイルセットLUTbが色変換処理に用いられる場合には、復路方向の部分印刷によって、第1色変換プロファイルセットLUTfが色変換処理に用いられる場合には印刷できない第2色C2が、印刷され得る。そして、対象画像データによって示される色値を用いて、色変換処理で用いられるべき対象プロファイルセットが、第1色変換プロファイルセットLUTfと第2色変換プロファイルセットLUTbとから選択される。従って、印刷可能な色の範囲の制限を緩和しつつ、対象画像データによって示される画像を、適切に、印刷できる。
また、S120(図9)~S530(図10)で説明したように、プロセッサ110は、対象画像データのうちの1頁分の画像データによって示される全ての画素のそれぞれの色値を用いて、1頁分の画像データの色変換処理で用いられる対象プロファイルセットを選択する。従って、1頁分の画像データによって示される画像に適切な対象プロファイルセットが選択される。
B.第2実施例:
図12は、印刷処理の第2実施例の手順の一部を示すフローチャートである。第2実施例では、図10のS500が、図12の処理に置換される。印刷処理の他のステップは、図9、図10の対応するステップと、それぞれ同じである。第2実施例では、指標値Vの評価値の例である平均指標値AVは、注目ページの注目画像を構成する複数のブロック毎に算出されたブロック評価値を用いて、算出される。
図9のS160で、注目画像の全ての画素の処理が終了したと判断された場合(S160:Yes)、図12のS210で、プロセッサ110は、注目画像の全てのブロックの処理が終了したか否かを判断する。図13(A)は、注目画像の例を示す概略図である。この注目画像IM21は、複数の矩形状のブロックBLKに区分されている。複数のブロックBLKは、Dx方向とDy方向とに沿ってマトリクス状に配置されている。注目画像上のブロックBLKの形状と大きさと配置とは、予め決められている。
注目画像IM21は、白色の背景と、1つの大きな第1オブジェクトOB21と、複数の小さな第2オブジェクトOB22と、を表している。第1オブジェクトOB21は、赤色のイチゴを表すオブジェクトである。第1オブジェクトOB21の複数の画素のうちの一部の複数の画素のそれぞれのRGB値は、255,0,0であり、高彩度の赤色を示している。第1オブジェクトOB21は、複数のブロックBLKによって表されている。
第2オブジェクトOB22は、黄色のバナナを表すオブジェクトである。第2オブジェクトOB22の複数の画素のうちの一部の複数の画素のそれぞれのRGB値は、255,255,0であり、高彩度の黄色を示している。第2オブジェクトOB22の大きさは、1個のブロックBLKよりも小さい。
未処理のブロックが残っている場合(S210:No(図12))、S220で、プロセッサ110は、注目画像の複数のブロックBLKのうち未処理の1個のブロックBLKを、処理対象のブロックである注目ブロックとして、選択する。S230では、プロセッサ110は、パラメータを初期化する。具体的には、処理画素数Npがゼロに初期化され、合計値Tvがゼロに初期化される。なお、第2実施例では、図9のS150、S195は、省略される。
S240では、プロセッサ110は、注目ブロックの全ての画素の処理が終了したか否かを判断する。未処理の画素が残っている場合(S240:No)、S250で、プロセッサ110は、注目ブロックの複数の画素のうちの未処理の1個の画素を、処理対象の画素である注目画素として選択する。S260では、プロセッサ110は、注目画素の指標値Vである注目指標値Vが「1」または「-1」である場合に、合計値Tvに注目指標値Vを加算し、処理画素数Npに1を加算する。そして、プロセッサ110は、S240へ移行する。なお、注目指標値Vは、図9のS190で特定されている。S190では、プロセッサ110は、特定した指標値Vと画素の識別子(例えば、画素位置)との対応関係を示すデータを、記憶装置115(例えば、揮発性記憶装置120)に格納する。S260では、プロセッサ110は、この対応関係を参照して、注目画素の注目指標値Vを特定する。
注目ブロックの全ての画素の処理が終了した場合(S240:Yes)、S270で、プロセッサ110は、処理画素数Npが、予め決められた閾値Tp以上であるか否かを判断する。閾値Tpは、ゼロよりも十分に大きく、かつ、1個のブロックBLKの画素数よりも小さい値に設定されている。
例えば、図13(A)の第1オブジェクトOB21を表す各ブロックBLKaでは、第1オブジェクトOB21の複数の画素の指標値Vが「1」である。そして、「1」の指標値Vに対応する画素の数(すなわち、処理画素数Np)は、閾値Tpよりも多い。一方、第2オブジェクトOB22を表すブロックBLKbでは、第2オブジェクトOB22の複数の画素の指標値Vが「-1」である。ただし、第2オブジェクトOB22の大きさが小さいので、「-1」の指標値Vに対応する画素の数(すなわち、処理画素数Np)は、閾値Tpよりも少ない。
処理画素数Npが閾値Tp以上である場合(図12:S270:Yes)、S280で、プロセッサ110は、注目ブロックにおける指標値Vの平均値を算出する(ブロック評価値BVとも呼ぶ)。本実施例では、BV=Tv/Npである。このように、ブロック評価値BVは、指標値Vが「1」または「-1」である画素の指標値Vの平均値である。指標値Vが「ゼロ」である画素は、ブロック評価値BVの算出から除かれている。図13(A)の注目画像IM21に関しては、注目ブロックが第1オブジェクトOB21を表すブロックBLKaである場合、Np>Tpであるので、S280でブロック評価値BVが算出される。
処理画素数Npが閾値Tp未満である場合(図12:S270:No),S290で、プロセッサ110は、注目ブロックにおけるブロック評価値BVを、ゼロに決定する。図13(A)の注目画像IM21に関しては、注目ブロックが第2オブジェクトOB22を表すブロックBLKbである場合、Np<Tpであるので、S290でブロック評価値BVはゼロに決定される。
図13(B)は、注目画像IM21の複数のブロックBLKのそれぞれのブロック評価値BVの例を示す概略図である。図示するように、第1オブジェクトOB21を表すブロックBLKaでは、ブロック評価値BVは、ゼロとは異なる値(ここでは、1)に決定されている。第2オブジェクトOB22を表すブロックBLKbでは、ブロック評価値BVはゼロに決定されている。
なお、S280、S290では、プロセッサ110は、特定したブロック評価値BVとブロックBLKの識別子(例えば、ブロックBLKの位置)との対応関係を示すブロックデータを、記憶装置115(例えば、揮発性記憶装置120)に格納する。格納されたブロックデータは、後述する処理で参照される。
S280またはS290でブロック評価値BVが特定された後、プロセッサ110は、S210へ移行する。注目画像の全てのブロックBLKの処理が終了した場合(S210:Yes)、S295で、プロセッサ110は、有効ブロックの平均指標値AVを算出する。有効ブロックは、ゼロではないブロック評価値BVを有するブロックBLKである。平均指標値AVとしては、有効ブロックに含まれる複数の画素のうち、ゼロではない指標値Vを有する全ての画素の指標値Vの平均値が算出される。図13(A)、図13(B)の注目画像IM21においては、ゼロではないブロック評価値BVを有する複数のブロックBLKaに含まれる複数の画素のうち、ゼロではない指標値Vを有する全ての画素の指標値Vの平均値が算出される。指標値Vが「ゼロ」である画素は、平均指標値AVの算出から除かれている。また、第2オブジェクトOB22を表す画素は、平均指標値AVの算出から除かれている。平均指標値AVを算出した後、プロセッサ110は、図10のS510へ移行する。S510から後の処理は、第1実施例の処理と同じである。図13(A)、図13(B)の例では、有効ブロックの平均指標値AVは、赤色の第1オブジェクトOB21を表すブロックBLKaを用いて算出される。第1オブジェクトOB21を示す複数の画素の指標値Vは「1」であるので、平均指標値AVは、第1範囲RV1に含まれる。従って、対象プロファイルセットとして、第1色変換プロファイルセットLUTfが選択される。
以上のように、本実施例では、図1、図8で説明したように、記憶装置115(ここでは、不揮発性記憶装置130)は、指標値テーブル300を格納している。指標値テーブル300は、入力色空間の色値(ここでは、RGB値)と印刷方向に関する指標値Vとの予め決められた対応関係を示している。そして、S160~S190(図9)では、プロセッサ110は、指標値テーブル300に基づいて、対象画像データによって示される複数の画素のそれぞれの色値に対応付けられた指標値Vを特定する。S210~S290(図12)では、プロセッサ110は、対象画像データのうちの1頁分の画像データによって示される画像上に配置される複数のブロックBLKのそれぞれについて、ブロック内の複数の画素の指標値Vを用いてブロック評価値BVを算出する。S295(図12)、S510~S530(図10)では、プロセッサ110は、複数のブロックBLKのそれぞれのブロック評価値BVを用いて、1頁分の画像データを用いる色変換処理で用いられる対象プロファイルセットを選択する。以上により、対象プロファイルセットの選択に対する小さい領域の影響を緩和できる。
特に、本実施例では、指標値Vがゼロではない画素の数である処理画素数Npが小さいブロックBLKは、平均指標値AVの算出から除かれる(図12:S270~S295)。そして、プロセッサ110は、処理画素数Npが閾値Tp以上であるブロックBLKを特定し(S270:Yes)、特定されたブロックBLKのそれぞれの複数の画素のそれぞれの指標値Vを用いて、評価値(ここでは、平均指標値AV)を算出する(S270、S280、S290、S295)。このように、対象プロファイルセットの選択から、小さいオブジェクトを示すブロックは除かれる。従って、対象プロファイルセットとしては、目立ち易い大きなオブジェクトの色に適したプロファイルセットが、選択される。例えば、図13(A)の注目画像IM21においては、第1オブジェクトOB21は、大きいので、第1オブジェクトOB21の高彩度の赤色は、目立ち易い。第2オブジェクトOB22は、小さいので、第2オブジェクトOB22の高彩度の黄色は目立ち難い。本実施例では、小さい第2オブジェクトOB22を示すブロックの影響は、対象プロファイルセットの選択から除かれる。従って、対象プロファイルセットとしては、目立ち易い大きな第1オブジェクトOB21の色に適したプロファイルセットが、選択される。なお、閾値Tpは、対象プロファイルセットの選択から除くべき小さいオブジェクトを用いて、予め実験的に決定されてよい。
C.第3実施例:
図14は、印刷処理の第3実施例の手順の一部を示すフローチャートである。第3実施例では、図9のS160~S195が、図14の処理に置換される。印刷処理の他のステップは、図9、図10の対応するステップと、それぞれ同じである。第3実施例では、注目画像上のオブジェクトを示すオブジェクト領域が特定され、オブジェクト領域の複数の画素を用いて評価値が算出される。
S150(図9)の後、図14のS155aで、プロセッサ110は、注目ページに対応する注目画像上のオブジェクト領域を特定する。図15(A)は、注目画像の例を示す概略図である。この注目画像IM21は、白色の背景と、1つの大きなオブジェクトOB31と、多数の小さいオブジェクトOB32と、を表している。第1オブジェクトOB31は、黄色のバナナを表すオブジェクトである。オブジェクトOB31の複数の画素のうちの一部の複数の画素のそれぞれのRGB値は、255,255,0であり、高彩度の黄色を示している。第2オブジェクトOB32は、緑色の円を表すオブジェクトである。第2オブジェクトOB32の複数の画素のうちの一部の複数の画素のそれぞれのRGB値は、0,255,0であり、高彩度の緑色を示している。
このようなオブジェクトOB31、OB32を表す領域を特定する処理としては、注目画像データを解析することによってオブジェクト領域を特定する種々の処理を採用可能である。プロセッサ110は、例えば、いわゆるラベリング処理を実行することによって、オブジェクト領域を特定してよい。具体的には、プロセッサ110は、注目画像の複数の画素を、背景色(例えば、白色を含む予め決められた色範囲の色)の画素である背景画素と、他の色の画素であるオブジェクト画素と、に分類する。そして、プロセッサ110は、1以上のオブジェクト画素が連続する領域を、1個のオブジェクト領域として特定する。図15(A)の注目画像IM21では、第1オブジェクトOB31を示す領域が、1個のオブジェクト領域として特定される。また、複数の第2オブジェクトOB32のそれぞれを示す領域は、互いに異なる複数のオブジェクト領域として、特定される。
S153aでは、プロセッサ110は、注目画像上の全てのオブジェクト領域の処理が終了したか否かを判断する。未処理のオブジェクト領域が残っている場合(S153a:No)、S155aで、プロセッサ110は、注目画像上のオブジェクト領域のうちの未処理の1個のオブジェクト領域を、処理対象のオブジェクト領域である注目オブジェクト領域として選択する。S158aでは、プロセッサ110は、注目オブジェクト領域のサイズが、予め決められたサイズ閾値Ts以上であるか否かを判断する。本実施例では、オブジェクト領域のサイズとして、画素数が用いられる。サイズ閾値Tsは、ゼロよりも大きな値であり、対象プロファイルセットの選択から除くべき小さいオブジェクトを用いて、予め実験的に決定されてよい。
注目オブジェクト領域のサイズがサイズ閾値Ts未満である場合(S158a:No)、プロセッサ110は、S153aに移行する。
注目オブジェクト領域のサイズがサイズ閾値Ts以上である場合(S158a:Yes)、S160aで、プロセッサ110は、注目オブジェクト領域の全ての画素の処理が終了したか否かを判断する。未処理の画素が残っている場合(S160a:No)、S170aで、プロセッサ110は、注目オブジェクト領域の複数の画素のうちの未処理の1個の画素を、処理対象の画素である注目画素として選択する。続くS180、S190、S195は、図9のS180、S190、S195と、それぞれ同じである。これにより、注目オブジェクト領域の画素を用いて、合計値Tvと処理画素数Npとが更新される。そして、プロセッサ110は、S160aへ移行する。
注目オブジェクト領域の全ての画素の処理が終了した場合(S160a:Yes)、プロセッサ110は、S153aへ移行する。
注目画像の全てのオブジェクト領域の処理が終了した場合(S153a:Yes)、プロセッサ110は、図10のS500へ移行する。S500から後の処理は、第1実施例の処理と同じである。
以上のように、本実施例では、図1、図8で説明したように、記憶装置115(ここでは、不揮発性記憶装置130)は、指標値テーブル300を格納している。そして、S160~S190(図9)では、プロセッサ110は、指標値テーブル300に基づいて、対象画像データによって示される複数の画素のそれぞれの色値に対応付けられた指標値Vを特定する。S155a(図14)では、プロセッサ110は、対象画像データのうちの1頁分の画像データによって示される1頁分の画像上のオブジェクトを示すオブジェクト領域を特定する。S153a~S195(図14)、S500(図10)では、プロセッサ110は、特定されたオブジェクト領域のそれぞれの複数の画素のそれぞれの指標値Vを用いて評価値(ここでは、平均指標値AV)を算出する。そして、図10のS510~S530では、プロセッサ110は、平均指標値AVを用いて1頁分の画像データを用いる色変換処理で用いられる対象プロファイルセットを選択する。以上により、オブジェクト領域に適した対象プロファイルセットが選択される。
特に、本実施例では、S158a(図14)で説明したように、所定サイズTsより小さいオブジェクト領域を用いずに、所定サイズTs以上のオブジェクト領域を用いて評価値(ここでは、平均指標値AV)を算出する。従って、所定サイズTs以上のオブジェクトに適した対象プロファイルセットが選択される。具体的には、プロセッサ110は、サイズ閾値Ts以上のサイズを有するオブジェクト領域を特定し(S158a:Yes)、特定されたオブジェクト領域のそれぞれの複数の画素のそれぞれの指標値Vを用いて、評価値(ここでは、平均指標値AV)を算出する(S153a~S195(図14)、S500(図10))。このように、対象プロファイルセットの選択から、小さいオブジェクト領域は除かれる。従って、対象プロファイルセットとしては、目立ち易い大きなオブジェクトの色に適したプロファイルセットが、選択される。
図15(B)は、図15(A)の注目画像IM21のうち、平均指標値AVの算出に利用されるオブジェクト領域を示している。図示するように、多数の小さい第2オブジェクトOB32の領域は、平均指標値AVの算出には利用されずに、大きい黄色の第1オブジェクトOB31の領域が、平均指標値AVの算出に利用される。第1オブジェクトOB31を示す複数の画素の指標値Vは「-1」であるので、平均指標値AVは、第2範囲RV2に含まれる。従って、対象プロファイルセットとして、第2色変換プロファイルセットLUTbが選択される。このように、対象プロファイルセットとしては、目立ち易い大きな第1オブジェクトOB31の色に適したプロファイルセットが、選択される。
D.変形例:
(1)印刷方向に関する指標値は、「1」、「0」、「-1」の3個の値に代えて、2個の値(例えば、1、-1)から選択されてよく、4以上の値(例えば、1、0.5、0、-0.5、-1)から選択されてもよい。いずれの場合も、入力色値と指標値との対応関係を示す対応情報は、指標値テーブル300(図8)のようなテーブルに代えて、任意の形式のデータであってよい。例えば、対応情報は、入力色値と指標値との対応関係を示す関数であってよい。
(2)S500(図10)、S295(図12)で算出される指標値Vの評価値は、複数の画素の指標値Vの平均値に代えて、複数の画素の指標値Vを用いて算出される種々の値であってよい。例えば、平均値、最頻値、中央値(メディアン)、最大値、最小値等の統計量が、採用されてよい。同様に、S280(図12)で算出されるブロック評価値BVは、複数の画素の指標値Vの平均値に代えて、複数の画素の指標値Vを用いて算出される種々の値であってよい(例えば、最頻値などの統計量)。
(3)対象プロファイルセットの選択処理は、上記各実施例の処理に代えて、他の種々の処理であってよい。例えば、図9のS195と図12のS260では、指標値Vがゼロであるか否かに拘わらず、合計値Tvと処理画素数Npとが更新されてよい。また、図12のS295では、有効ブロックのそれぞれの複数の画素の指標値Vに代えて、有効ブロックのブロック評価値BVを用いて評価値が算出されてよい(例えば、ブロック評価値BVの平均値)。また、図14のS158aは、省略されてよい。すなわち、サイズに拘わらずに、全てのオブジェクト領域が、評価値(例えば、平均指標値AV)の算出に利用されてよい。対象プロファイルセットの選択に用いられる画素は、対象画像の複数の画素のうちの一部であってもよい。例えば、対象画像から均等に選択された複数の画素(例えば、格子状に並ぶ複数の画素のうちの偶数行の複数の画素)を用いて、対象プロファイルセットが選択されてよい。
(4)対象画像データの色空間は、RGB色空間に代えて、他の任意の色空間であってよい(例えば、YCbCr色空間)。また、印刷に利用可能なインクの種類は、CMYKの4種類に代えて、2以上の任意の種類であってよい。例えば、印刷実行部400は、CMYの3種類のインクを印刷に用いることとしてよい。また、ヘッド410における各インクのノズル列の並び順は、上記実施例の並び順とは異なる並び順であってよい。いずれの場合も、第1色変換プロファイルセットと第2色変換プロファイルセットとは、以下のように構成されていることが好ましい。すなわち、第1色変換プロファイルセットの往路用色変換プロファイルである第1往路用色変換プロファイルは、特定色空間の複数の色値と、インク色空間の第1色範囲の複数の色値と、を対応付けている。第1色範囲は、第1往路用色変換プロファイルに基づく部分画像データを用いる往路方向の部分印刷によって印刷可能な第1色を示す第1色値を含む色範囲である。第1色は、第2色変換プロファイルセットの往路用色変換プロファイルに基づく部分画像データを用いる部分印刷と第2色変換プロファイルセットの復路用色変換プロファイルに基づく部分画像データを用いる部分印刷とのいずれもが印刷できない色である。第2色変換プロファイルセットの復路用色変換プロファイルである第2復路用色変換プロファイルは、特定色空間の複数の色値と、インク色空間の第2色範囲の複数の色値と、を対応付けている。第2色範囲は、第2復路用色変換プロファイルに基づく部分画像データを用いる復路方向の部分印刷によって印刷可能な第2色を示す第2色値を含む色範囲である、第2色は、第1色変換プロファイルセットの往路用色変換プロファイルに基づく部分画像データを用いる部分印刷と第1色変換プロファイルセットの復路用色変換プロファイルに基づく部分画像データを用いる部分印刷とのいずれもが印刷できない色である。
(5)対象画像データの色空間である特定色空間の複数の色値とインク色空間の複数の色値とを対応付ける色変換プロファイルの構成は、ルックアップテーブルに代えて、他の種々の構成であってよい。例えば、色変換プロファイルは、特定色空間の色値からインク色空間の色値を算出する関数であってよい。
(6)印刷実行部400の構成は、図1~図3に示す構成に代えて、他の種々の構成であってよい。例えば、主走査部430の構成は、印刷ヘッド410を主走査方向に沿って往復移動させることが可能な他の任意の構成であってよい。また、往路方向Dfは、双方向の主走査方向のうちのいずれか一方の方向であってよい。例えば、-Dx方向が往路方向Dfに対応してよい。搬送部440の構成としては、上記の各実施例の構成に代えて、用紙PMを副走査方向に搬送可能な他の任意の構成を採用可能である。また、印刷実行部400は、用紙PMを支持するプラテンを備え、プラテンとローラとの間に用紙PMが挟まれてよい。また、インク供給部450は、キャリッジ433に搭載されてよい。いずれの場合も、端末装置100のような外部装置が、複合機200のように印刷実行部400を備える印刷装置に印刷を実行させる場合には、印刷装置は、印刷実行部の例であるといえる。
(7)端末装置100に代えて、複合機200の制御部299が、印刷処理を実行してよい。具体的には、プロセッサ210が、プログラム232に従って、印刷処理を実行してよい。この場合、複合機200の制御部299が、画像処理装置として動作する。また、印刷実行部400の制御回路490が、印刷処理の一部を実行してもよい。また、印刷実行部400の制御回路490が省略されてもよい。この場合、画像処理装置は、直接的に、印刷実行部400を制御すればよい。いずれの場合も、印刷実行部400を制御するための印刷データとしては、印刷すべき画像を表す画像データと、各パスの印刷方向を示すデータと、を含むデータを採用してよい。
(8)印刷処理を実行する画像処理装置は、パーソナルコンピュータとは異なる種類の装置(例えば、デジタルカメラ、スキャナ、スマートフォン)であってもよい。また、画像処理装置が、印刷装置の一部であってもよい。例えば、複合機200の制御部299が、印刷処理を実行してよい。また、ネットワークを介して互いに通信可能な複数の装置(例えば、コンピュータ)が、印刷処理の機能を一部ずつ分担して、全体として、印刷処理の機能を提供してもよい(これらの装置を備えるシステムが画像処理装置に対応する)。
上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部あるいは全部をハードウェアに置き換えるようにしてもよい。
また、本発明の機能の一部または全部がコンピュータプログラムで実現される場合には、そのプログラムは、コンピュータ読み取り可能な記録媒体(例えば、一時的ではない記録媒体)に格納された形で提供することができる。プログラムは、提供時と同一または異なる記録媒体(コンピュータ読み取り可能な記録媒体)に格納された状態で、使用され得る。「コンピュータ読み取り可能な記録媒体」は、メモリーカードやCD-ROMのような携帯型の記録媒体に限らず、各種ROM等のコンピュータ内の内部記憶装置や、ハードディスクドライブ等のコンピュータに接続されている外部記憶装置も含み得る。
以上、実施例、変形例に基づき本発明について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれる。