以下、本発明に係る実施形態について、図面を参照して詳細に説明する。
以下で説明する実施形態は、インクジェット記録装置を例にしているが、本発明は、インクジェット記録装置に限られるものではない。ドットを記録するための記録手段と記録媒体との相対移動中に、記録手段によって記録媒体に画像を記録する方式の装置であれば、インクジェット記録装置以外の装置でも適用可能である。
また、記録手段と記録媒体との「相対移動(あるいは相対走査)」とは、記録媒体に対して記録手段が相対的に移動(走査)する動作、あるいは、記録手段に対して記録媒体が相対的に移動(搬送)する動作を指す。シリアル型の記録装置でマルチパス記録を実行する場合、記録媒体の同一領域に対して記録手段が複数回対向するように、記録ヘッドの走査が複数回実行される。一方、フルライン型の記録装置でマルチパス記録を実行する場合、記録媒体の同一領域に対して記録手段が複数回対向するように、記録媒体の搬送が複数回実行される。なお、記録手段とは、1つ以上の記録素子群(ノズル列)あるいは1つ以上の記録ヘッドを指す。
以下で説明する画像処理装置では、記録媒体の同一領域(所定領域)に対する記録手段の複数回の相対移動あるいは複数の記録素子群の相対移動によって上記同一領域に画像を記録するためのデータ処理を行う。ここで、「同一領域(所定領域)」とは、ミクロ的には「1つの画素領域」を指し、マクロ的には「1回の相対移動で記録可能な領域」を指す。「画素領域(単に「画素」と呼ぶ場合もある)」とは、多値画像データによって階調表現可能な最小単位の領域を指す。一方、「1回の相対移動で記録可能な領域」とは、1回の相対移動中に記録手段が通過する記録媒体上の領域、あるいは、この領域よりも小なる領域(例えば、1ラスター領域)を指す。例えば、シリアル型の記録装置において、図11に示されるようなM(Mは2以上の整数)パスのマルチパスモードを実行する場合、マクロ的には図中の1つの記録領域を同一領域と定義することも可能である。
<記録装置の概要説明>
図1は、本発明の実施の形態に係るフォトダイレクトプリンタ装置(以下、PDプリンタ)1000、すなわち画像形成装置(画像処理装置)の概観斜視図である。PDプリンタ1000は、ホストコンピュータ(PC)からデータを受信して印刷する通常のPCプリンタとしての機能以外に、以下のような様々な機能を持ち合わせている。すなわち、メモリカードなどの記憶媒体に記憶されている画像データを直接読取って印刷する機能や、デジタルカメラやPDAなどからの画像データを受信して印刷する機能である。
図1において、本実施形態に係るPDプリンタ1000の外殻をなす本体は、下ケース1001、上ケース1002、アクセスカバー1003及び排出トレイ1004の外装部材を有している。また、下ケース1001は、PDプリンタ1000の略下半部を、上ケース1002は本体の略上半部をそれぞれ形成している。両ケースの組合せによって内部に後述の各機構を収納する収納空間を有する中空体構造をなし、その上面部及び前面部にはそれぞれ開口部が形成されている。
排出トレイ1004は、その一端部が下ケース1001に回転自在に保持され、その回転によって下ケース1001の前面部に形成される開口部を開閉させ得るようになっている。このため、記録時には、排出トレイ1004を前面側へと回転させて開口部を開成させることにより、ここから記録された記録媒体(普通紙、専用紙、樹脂シート等を含む)が排出可能となると共に、排出された記録媒体を順次積載し得るようになっている。また排紙トレイ1004には、2枚の補助トレイ1004a,1004bが収納されており、必要に応じて各トレイを手前に引き出すことにより、記録媒体の支持面積を3段階に拡大、縮小させ得るようになっている。
アクセスカバー1003は、その一端部が上ケース1002に回転自在に保持され、上面に形成される開口部を開閉し得るようになっている。アクセスカバー1003を開くことによって本体内部に収納されている記録ヘッドカートリッジ(不図示)或いはインクタンク(不図示)等の交換が可能となる。尚、アクセスカバー1003を開閉させると、その裏面に形成された突起がカバー開閉レバーを回転させ、その回転位置をマイクロスイッチなどで検出することにより、アクセスカバー1003の開閉状態を検出し得るようになっている。
上ケース1002の上面には、電源キー1005が設けられている。上ケース1002の右側には、液晶表示部1006や各種キースイッチ等を備える操作パネル1010が設けられている。操作パネル1010の構造は、図2を参照して詳しく後述する。1007は自動給送部で、記録媒体を装置本体内へと自動的に給送する。1008はヘッド・紙間選択レバーで、記録ヘッドと記録媒体との間隔を調整するためのレバーである。1009はカードスロットで、ここにメモリカードを装着可能なアダプタが挿入され、このアダプタを介してメモリカードに記憶されている画像データを直接取り込んで印刷することができる。メモリカード(PC)としては、例えばコンパクトフラッシュ(登録商標)メモリ、スマートメディア、メモリスティック等がある。1011はビューワ(液晶表示部)で、PDプリンタ1000の本体に着脱可能であり、PCカードに記憶されている画像の中からプリントしたい画像を検索する場合などに、1コマ毎の画像やインデックス画像などを表示するのに使用される。1012は後述するデジタルカメラを接続するためのUSB端子である。PD装置1000の後面には、パーソナルコンピュータ(PC)を接続するためのUSBコネクタが設けられている。
<操作部の概要説明>
図2は、本発明の実施の形態に係るPDプリンタ1000の操作パネル1010の概観図である。図において、液晶表示部1006には、印刷に関する条件を各種設定するためのメニュー項目が表示される。例えば、以下の項目が有る。
・複数ある写真画像ファイルの内、印刷したい写真画像の先頭番号
・指定コマ番号(開始コマ指定/印刷コマ指定)
・印刷を終了したい最後の写真番号(終了)
・印刷部数(部数)
・印刷に使用する記録媒体の種類(用紙種類)
・1枚の記録媒体に印刷する写真の枚数設定(レイアウト)
・印刷の品位の指定(品位)
・撮影した日付を印刷するかどうかの指定(日付印刷)
・写真を補正して印刷するかどうかの指定(画像補正)
・印刷に必要な記録媒体の枚数表示(用紙枚数)
これら項目は、カーソルキー2001を用いて選択、或いは指定することが出来る。また、モードキー2002を押下する毎に、印刷の種類(インデックス印刷、全コマ印刷、1コマ印刷、指定コマ印刷等)を切り替えることができ、これに応じて対応するLED2003が点灯する。メンテナンスキー2004は、記録ヘッドのクリーニング等、記録装置のメンテナンスを行わせるためのキーである。印刷開始キー2005は、印刷の開始を指示する時、或いはメンテナンスの設定を確立する際に押下される。印刷中止キー2006は、印刷を中止させる時や、メンテナンスの中止を指示する際に押下される。
<制御部電気仕様概要>
図3は本発明の実施の形態に係るPDプリンタ1000の制御に係る主要部の構成を示すブロック図である。図3において、前述の図面と共通する部分は同じ記号を付与して、それらの説明は省略する。以下の説明から明らかとなるように、PDプリンタ1000は画像処理装置として機能する。
図3において、3000は制御部(制御基板)を示している。3001は画像処理ASIC(専用カスタムLSI)を示している。3002はDSP(デジタル信号処理プロセッサ)で、内部にCPUを有し、後述する各種制御処理及び、輝度信号(RGB)から濃度信号(CMYK)への変換、スケーリング、ガンマ変換、誤差拡散等の画像処理等を担当している。3003はメモリで、DSP3002のCPUの制御プログラムを記憶するプログラムメモリ3003a、及び実行時のプログラムを記憶するRAMエリア、画像データなどを記憶するワークメモリとして機能するメモリエリアを有している。3004はプリンタエンジンで、ここでは、複数色のカラーインクを用いてカラー画像を印刷するインクジェットプリンタのプリンタエンジンが搭載されている。3005はデジタルカメラ(DSC)3012を接続するためのポートとしてのUSBコネクタである。3006はビューワ1011を接続するためのコネクタである。3008はUSBハブ(USB HUB)で、PDプリンタ1000がPC3010からの画像データに基づいて印刷を行う際には、PC3010からのデータをそのままスルーし、USB3021を介してプリンタエンジン3004に出力する。これにより、接続されているPC3010は、プリンタエンジン3004と直接、データや信号のやり取りを行って印刷を実行することができる(一般的なPCプリンタとして機能する)。3009は電源コネクタで、電源3019により、商用ACから変換された直流電圧を入力している。PC3010は一般的なパーソナルコンピュータ、3011は前述したメモリカード(PCカード)、3012はデジタルカメラ(DSC:Digital Still Camera)である。
なお、この制御部3000とプリンタエンジン3004との間の信号のやり取りは、前述したUSB3021又はIEEE1284バス3022を介して行われる。
<プリンタエンジン部電気仕様概要>
図4は、本発明の実施の形態に係る、プリンタエンジン3004の内部構成を示すブロック図である。図において、E1004はメイン基板である。E1102はエンジン部ASIC(Application Specific Integrated Circuit)である。これは、制御バスE1014を通じてROM E1004に接続され、ROM E1004に格納されたプログラムに従って、各種制御を行っている。例えば、各種センサに関連するセンサ信号E0104や、マルチセンサE3000に関連するマルチセンサ信号E4003の送受信を行う。そのほか、エンコーダ信号E1020、電源キー1005や操作パネル1010上の各種キーからの出力の状態を検出している。また、ホストI/F E0017、フロントパネル上のデバイスI/F E0100の接続およびデータ入力状態に応じて、各種論理演算や条件判断等を行い、各構成要素を制御し、PDプリンタ1000の駆動制御を司っている。
E1103はドライバ・リセット回路である。これは、エンジン部ASIC E1102からのモータ制御信号E1106に従って、CRモータ駆動信号E1037、LFモータ駆動信号E1035、APモータ駆動信号E4001およびPRモータ駆動信号E4002を生成し、各モータを駆動する。さらに、ドライバ・リセット回路E1103は、電源回路を有しており、メイン基板E0014、記録ヘッドを搭載して移動するキャリッジに備えられたキャリッジ基板、操作パネル1010など各部に必要な電源を供給する。さらには電源電圧の低下を検出して、リセット信号E1015の発生および初期化を行う。
E1010は電源制御回路であり、エンジン部ASIC E1102からの電源制御信号E1024に従って発光素子を有する各センサ等への電源供給を制御する。
ホストI/F E0017は、図3中の制御部3000中の画像処理ASIC3001およびUSB HUB3008を介してPC3010と接続されている。そして、エンジン部ASIC E1102からのホストI/F信号E1028を、ホストI/FケーブルE1029に伝達したり、ケーブルE1029からの信号をエンジン部ASIC E1102に伝達したりする。
プリンタエンジンの電力は、図3の電源コネクタ3009と接続された電源ユニットE0015から供給され、メイン基板E0014内外の各部へは、必要に応じて電圧変換されてから供給される。一方、電源ユニット制御信号E4000がエンジン部ASIC E1102から電源ユニットE0015に送信され、PDプリンタ本体の低消費電力モード等の制御に用いられる。
エンジン部ASIC E1102は1チップの演算処理装置内蔵半導体集積回路であり、前述したモータ制御信号E1106、電源制御信号E1024および電源ユニット制御信号E4000等を出力する。そして、ホストI/F E0017との信号の授受を行うとともに、パネル信号E0107を通じて、操作パネル上のデバイスI/F E0100との信号の授受を行う。さらに、センサ信号E0104を通じてPEセンサ、ASFセンサ等各部センサ類により状態を検知する。さらに、マルチセンサ信号E4003を通じてマルチセンサE3000を制御するとともに状態を検知する。またパネル信号E0107の状態を検知して、パネル信号E0107の駆動を制御して操作パネル上のLED 2003の点滅を制御する。
さらにエンジン部ASIC E1102は、エンコーダ信号(ENC)E1020の状態を検知してタイミング信号を生成し、ヘッド制御信号E1021で記録ヘッド5004とのインターフェースをとり記録動作を制御する。ここにおいて、エンコーダ信号(ENC)E1020はCRFFC E0012を通じて入力されるエンコーダセンサE0004の出力信号である。また、ヘッド制御信号E1021は、フレキシブルフラットケーブルE0012を通じて不図示のキャリッジ基板に接続される。キャリッジ基板で受信されたヘッド制御信号は、ここに構成されたヘッド駆動電圧変調回路およびヘッドコネクタを経て記録ヘッドH1000に供給されるとともに、記録ヘッドH1000からの各種情報をASIC E1102に伝達する。このうち吐出部毎のヘッド温度情報については、メイン基板上のヘッド温度検出回路E3002で信号増幅された後、エンジン部ASICE1102に入力され、各種制御判断に用いられる。
図中、E3007はDRAMであり、記録用のデータバッファ、図3中の制御部3000中の画像処理ASIC3001またはUSB HUB3008を介したPC3010からの受信データバッファ等として使用される。また各種制御動作に必要なワーク領域としても使用される。
<記録部の概要>
図5は、本発明の実施の形態に係るシリアル型のインクジェット記録装置のプリンタエンジン部の記録部の概要を示す斜視図である。記録媒体Pは、自動給送部1007によって搬送経路上に配置された搬送ローラ5001とこれに従動するピンチローラ5002とのニップ部に給送される。その後、記録媒体Pは、搬送ローラ5001の回転によって、プラテン5003上に案内、支持されながら図中矢印A方向(副走査方向)に搬送される。ピンチローラ5002は、不図示のバネ等の押圧手段により、搬送ローラ5001に対して弾性的に付勢されている。これら搬送ローラ5001およびピンチローラ5002が記録媒体搬送方向の上流側にある第1搬送手段の構成要素をなす。
プラテン5003は、インクジェット形態の記録ヘッド5004の吐出口が形成された面(吐出面)と対向する記録位置に設けられ、記録媒体Pの裏面を支持することで、記録媒体Pの表面と吐出面との距離を一定の距離に維持する。プラテン5003上に搬送されて記録が行われた記録媒体Pは、回転する排出ローラ5005とこれに従動する回転体である拍車5006との間に挟まれてA方向に搬送され、プラテン5003から排紙トレイ1004に排出される。排出ローラ5005および拍車5006が記録媒体搬送方向の下流側にある第2搬送手段の構成要素をなす。
記録ヘッド5004は、その吐出口面をプラテン5003ないし記録媒体Pに対向させた姿勢で、キャリッジ5008に着脱可能に搭載されている。キャリッジ5008は、キャリッジモータE0001の駆動力により2本のガイドレール5009および5010に沿って往復移動され、その移動の過程で記録ヘッド5004は記録信号に応じたインク吐出動作を実行する。キャリッジ5008が移動する方向は、記録媒体が搬送される方向(矢印A方向)と交差する方向であり、主走査方向と呼ばれる。これに対し、記録媒体搬送方向は副走査方向と呼ばれている。キャリッジ5008および記録ヘッド5004の主走査(記録を伴う移動)と、記録媒体の搬送(副走査)とを交互に繰り返すことにより、記録媒体Pに対する記録が行われる。
図20は、記録ヘッド5004を吐出口形成面から観察した場合の概略図である。図中、51は第1シアンノズル列(記録素子群)であり58は第2シアンノズル列である。52は第1マゼンタノズル列であり57は第2マゼンタノズル列である。53は第1イエローノズル列であり、56は第2イエローノズル列である。54は第1ブラックノズル列であり、55は第2ブラックノズル列である。各ノズル列の副走査方向における幅はdであり、1回の走査によってdの幅の記録が可能となっている。本実施形態の記録ヘッド5004は、シアン(C)、マゼンタ(M)、イエロー(Y)およびブラック(K)の各色について、ほぼ等量のインクを吐出する(ほぼ同じ大きさのドットを記録する)2本ずつのノズル列を備え、その両方のノズル列を用いて記録媒体に画像を記録する。これによって、個々のノズルのばらつきに起因する濃度むらやすじを、約1/2に低減することが出来る。また、本例のように各色のノズル列を主走査方向に対し対称に配置することによって、往路方向の記録走査でも復路方向の記録走査でも記録媒体に対するインクの付与順序を一定にすることが出来る。すなわち、往路方向であっても復路方向であっても、記録媒体に対するインクの付与順序は、C→M→Y→K→K→Y→M→Cとなり、双方向記録を行ってもインクの付与順序に起因する色むらは発生しない。
また、本実施形態の記録装置はマルチパス記録を実行することが出来るので、記録ヘッド5004が1回の記録走査で記録可能な領域は、複数回の記録走査によって段階的に画像が形成される。このとき、各記録走査の間に記録ヘッド5004の幅dよりも小さな量の搬送動作を行うことにより、個々のノズルのばらつきに起因する濃度むらやすじをさらに低減することが出来る。マルチパス記録を行うか否か、あるいはマルチパス数(同一領域に対し記録走査を行う回数)は、操作パネル1010からユーザが入力した情報や、ホスト装置から受信される画像情報によって、適宜定められるようになっている。
次に、上記記録装置にて実行可能なマルチパス記録の一例について図11を用いて説明する。ここでは、マルチパス記録の一例として2パス記録を例に挙げて説明するが、本発明は2パス記録に限定されるものではなく、3パス、4パス、8パス、16パス等のM(Mは2以上の整数)パス記録であればよい。なお、本発明において好適に適用される「M(Mは2以上の整数)パスモード」とは、記録素子の配列範囲の幅よりも小なる量の記録媒体の搬送を介在させた記録素子群のM回の走査によって記録媒体上の同一領域に記録を行うモードである。このようなMパスモードでは、記録媒体の1回の搬送量を、記録素子の配列範囲の幅の1/Mの幅に対応した量に等しく設定するのが好ましく、このような設定を行うことで、上記同一領域の搬送方向における幅が記録媒体の1回の搬送量に対応する幅に等しくなる。
図11は、2パス記録の様子を模式的に示した図であり、4つの同一領域に相当する第1記録領域から第4記録領域に対して記録する場合の記録ヘッド5004と記録領域との相対的な位置関係を示している。この図11では、図5に示される記録ヘッド5004のうちのある色の1つのノズル列(1つの記録素子群)51だけを示している。そして、以下では、ノズル列(記録素子群)51を構成する複数のノズル(記録素子)のうち、搬送方向上流側に位置するノズル群を上流側ノズル群105Aと称し、搬送方向下流側に位置するノズル群を下流側ノズル群105Bと称する。また、各同一領域(各記録領域)の副走査方向(搬送方向)における幅は、記録ヘッドの複数の記録素子の配列範囲の幅(1280ノズル幅)の約半分に相当する幅(640ノズル幅)に等しい。
第1走査では、上流側ノズル群105Aを用いて第1記録領域に記録されるべき画像の一部だけを記録する。この上流側ノズル群105Aによって記録される画像データは、個々の画素について、オリジナル画像データ(第1記録領域に最終的に記録すべき画像に対応した多値の画像データ)の階調値が約1/2に低減されたものとなっている。このような第1走査での記録終了後、Y方向に沿って640ノズル分の距離だけ記録媒体を搬送する。
次いで、第2走査では、上流側ノズル群105Aを用いて第2記録領域に記録されるべき画像の一部だけを記録すると共に、下流側ノズル群105Bを用いて第1記録領域に記録されるべき画像を完成させる。この下流側ノズル群105Bによって記録される画像データついても、オリジナル画像データ(第1記録領域に最終的に記録すべき画像に対応した多値の画像データ)の階調値が約1/2に低減されたものとなっている。これにより、第1記録領域には、階調値が約1/2に低減された画像データが2回記録されることになるので、オリジナル画像データの階調値が保存される。このような第2走査での記録終了後、記録媒体をY方向に640ノズル分の距離だけ搬送する。
次いで、第3走査では、上流側ノズル群105Aを用いて第3記録領域に記録されるべき画像の一部だけを記録すると共に、下流側ノズル群105Bを用いて第2記録領域に記録されるべき画像を完成させる。この後、記録媒体をY方向に640ノズル分の距離だけ搬送する。最後に、第4走査では、上流側ノズル群105Aを用いて第4記録領域に記録されるべき画像の一部だけを記録すると共に、下流側ノズル群105Bを用いて第3記録領域に記録されるべき画像を完成させる。この後、記録媒体をY方向に640ノズル分の距離だけ搬送する。他の記録領域に対しても同様な記録動作を行っていく。
以上のような記録主走査と搬送動作とを繰り返すことにより、各記録領域に対して2パス記録が行われる。
ところで、このようなマルチパス記録を記録媒体全域に渡って行う際、記録媒体の先端部、中央部および後端部では、搬送ローラ5001や排出ローラ5005によるニップ状態が異なっている。そして、先端部から中央部に記録が移行していく際や、中央部から後端部に記録が移行していく際は、記録媒体の端部が排出ローラのニップ部に突入したり搬送ローラのニップ部から外れたりするときの衝撃によって、数十μm程度の突発的な搬送誤差が生じることがある。この場合、この搬送動作の前後に行われる記録走査においては、記録媒体に記録するドット群のずれ(プレーン間のずれ)が発生しやすい。つまり、中央部から先端部や後端部に切り替わる領域では、他の領域に比べて濃度が変化するなどの弊害が発生しやすい傾向にある。
<ドット重複率の制御と濃度むらおよび粒状感の関係>
背景技術の項で述べたように、異なる走査や異なる記録素子群で記録されるドット同士がずれて重なると、画像の濃度変動が生じ、これが濃度むらとして知覚される。そこで本発明では、同じ位置(同じ画素や同じサブ画素)に重複して記録すべきドットを予め幾つか用意し、記録位置ずれが生じた際に、隣り合うドットが互いに重なり合い白紙領域を増加させる一方、重複したドットが互いに離れ白紙領域を減少させるようにする。これにより、記録位置ずれによる白紙領域の増と減、すなわち濃度の増と減が相殺し合い、画像全体としての濃度変化を抑制することが期待できる。
但し、重複したドットを予め用意することは、粒状感を悪化させることにも繋がる。例えば、全てのドットを2つずつ重ねながらN個のドットを記録する場合は、ドットを記録する位置が(N/2)個になり、ドットを全く重ねない場合に比べて、ドット同士の間隔が広がる。従って、全ドットを重ねた場合の画像の空間周波数は、ドットを全く重ねない場合の画像よりも低周波側に移行する。一般に、インクジェット記録装置により記録される画像の空間周波数は、人間の視覚特性が比較的敏感に反応する低周波領域から比較的鈍感になる高周波領域を含んでいる。よって、ドットの記録周期を低周波側に移動させることは、粒状感を感知させ画像弊害を招致することに繋がる。
すなわち、粒状感を抑えるためにドットの分散性を高くする(ドットの重複率を低く抑える)とロバスト性が損なわれ、ロバスト性を重視するためにドットの重複率を高くすると粒状感が問題視されることになり、両者を同時且つ完全に回避することは困難となる。
しかしながら、上記濃度変化についても粒状感についても、それぞれ、ある程度の許容範囲(人間の視覚特性上、視認されにくい範囲)を有している。よって、この許容範囲内に両者を抑える程度に、ドット重複率を調整することが出来れば、弊害の目立たない画像を出力することが期待できる。但し、上記許容範囲やドットの径や配置状態は、例えばインクの種類や記録媒体の種類、また濃度データ値など様々な条件に応じて変化し、適切なドット重複率が常に一定とは限らない。よって、より積極的にドットの重複率を制御可能な構成を備え、様々な条件に応じてこれを調整することが好ましい。
ここで「ドット重複率」について説明する。「ドット重複率」とは、図7や後述する図19に示されるように、K(Kは1以上の整数)個の画素領域で構成される単位領域に記録されるべき総ドット数のうち、異なる走査あるいは異なる記録素子群によって画素領域内の同じ位置に重複して記録されるべきドット(重なりドット)数の割合である。なお、同じ位置とは、図7の場合には同じ画素位置を指し、図19の場合にはサブ画素位置を指す。
以下、図7を用いて、4画素(主走査方向)×3画素(副走査方向)で構成される単位領域に対応した第1プレーンと第2プレーンのドット重複率について説明する。なお「第1プレ−ン」とは、第1走査あるいは第1ノズル群に対応した2値データの集合を表し、「第2プレ−ン」とは、第2走査あるいは第2ノズル群に対応した2値データの集合を表している。また、「1」はドットの記録を示すデータを表し、「0」はドットの非記録を示すデータを表している。
図7(A)〜(E)では、第1プレーンの「1」の個数が“4”で、第2プレ−ンの「1」の個数も“4”であるため、4画素×3画素で構成される単位領域に記録されるべき総ドット数は“8”となる。一方、同じ画素位置に対応する、第1プレーンと第2プレーンの「1」の個数が、同じ画素に重ねて記録されるべきドット(重なりドット)の数となる。この定義によれば、重なりドット数は、図7(A)の場合に“0”、図7(B)の場合には“2”、図7(C)の場合には“4”、図7(D)の場合には“6”、図7(E)の場合には“8”となる。従って、図7(H)に示されるように、図7(A)〜(E)のドット重複率は、それぞれ、0%、25%、50%、75%、100%となる。
さらに、図7(F)および(G)は、プレーンの記録ドット数および総ドット数が、図7(A)〜(E)の場合とは異なる場合を示している。図7(F)は、第1プレーンの記録ドット数“4”で、第2プレ−ンの記録ドット数が“3”で、総ドット数が“8”で、重なりドット数が“3”で、ドット重複率が57%の場合を示している。一方、図7(G)は、第1プレーンの記録ドット数“4”で、第2プレ−ンの記録ドット数が“2”で、総ドット数が“6”で、重なりドット数が“2”で、ドット重複率が33%の場合を示している。
このように本明細書における「ドット重複率」は、異なる走査あるいは異なる記録素子群に対応したドットデータを仮想的に重ねた場合のドットデータの重複率であって、紙面上においてドットが重複する面積率や割合を示すものではない。
以下、ドット重複率を制御するための画像処理方法について、複数の実施形態を例に説明する。
(第1の実施形態)
図6は、図11で示したように2回の記録走査によって記録媒体の同一領域の画像を完成させるマルチパス記録を行う場合の画像処理を説明するためのブロック図である。本実施形態において、多値画像データ入力部(61)、色変換/画像データ分割部(62)、階調補正処理部(63−1、63−2)および量子化処理部(65−1、65−2)は、制御部3000に備えられている。一方、2値データ分割処理部(67−1、67−2)は、プリンタエンジン3004に備えられている。
外部機器から、多値画像データ入力部61によって、RGBの多値の画像データ(256値)が入力される。この入力画像データ(多値のRGBデータ)は、画素毎に、色変換/画像データ分割部62によって、各インク色(CMYK)に対応した第1記録走査用と第2記録走査用の2組の多値画像データ(多値濃度データ)に変換される。具体的には、色変換/画像データ分割部62には、RGB値と、第1走査用のCMYK値(C1,M1,Y1,K1)および第2走査用のCMYK値(C2,M2,Y2,K2)と、が一対一で対応付けられた3次元のルックアップテーブルが予め設けられている。そして、この3次元のルックアップテーブル(LUT)を用いることにより、RGBデータが、第1走査用の多値濃度データ(C1,M1,Y1,K1)と第2走査用の多値濃度データ(C2,M2,Y2,K2)に一括して変換される。この際、テーブル格子点値から外れる入力値に対しては、その周囲のテーブル格子点の出力値から補間によって出力値を算出してもよい。
このように色変換/画像データ分割部62は、画素に対応する入力画像データに基づいて、第1走査用の多値データ(C1,M1,Y1,K1)と第2走査用の多値データ(C2,M2,Y2,K2)を生成するデータ生成部の役割を担う。本実施形態では、この色変換/画像データ分割部で実行するデータ変換に特徴を持たせることによって、ドット重複率の制御を実現する。詳しい制御方法については後述する。
このようにして生成された第1走査用多値データと第2走査用多値データは、それぞれ、色毎に、階調補正処理部63−1および63−2にて階調補正処理が施される。ここでは、多値データの信号値と記録媒体上で表現される濃度値との関係が線形となるように、多値データの信号値変換が行われる。その結果、第1走査用の多値データ64−1(C1´,M1´,Y1´,K1´)と第2走査用の多値データ64−2(C2´,M2´,Y2´,K2´)が得られる。以下の処理は、シアン(C)、マゼンタ(M)、イエロー(Y)およびブラック(K)のそれぞれについて独立に並行して行われるので、これ以後の説明はブラック(K)のみについて行う。
量子化処理部65−1では、第1走査用の多値データ64−1(K1´)に対し2値化処理(量子化処理)が行われ、第1走査用の2値データK1″(第2の量子化データ)66−1が生成される。また、量子化処理部65−2では、第2走査用の多値データ64−2(K2´)に対し2値化処理(量子化処理)が行われ、第2走査用の2値データK2″(第2の量子化データ)66−2が生成される。本実施形態において、2つの量子化処理部65−1および65−2で採用される量子化方法は、一般的な誤差拡散方式である。
この際、両方の走査でドットが記録される画素と一方の走査でのみドットが記録される画素とを適度に混在させるため、これら2つの誤差拡散処理では異なる拡散マトリクスを採用することが好ましい。例えば、第1の量子化処理部65−1では図13(A)で示した拡散マトリクスを用い、第2の量子化処理部65−2では同図(B)で示した拡散マトリクスを用いる。
以上のような2つの量子化処理の結果、K1″とK2″の両方が1である画素にはドットが重複して記録され、K1″とK2″の両方が0である画素にはドットが記録されないことになる。また、K1″とK2″のどちらか一方が1である画素には、ドットが1つだけ記録されることになる。
量子化処理部65−1および65−2によって、2値の画像データK1″およびK2″が得られると、これらデータK1″およびK2″はそれぞれ、IEEE1284バス3022を介して図3で示したプリンタエンジン3004に送られる。以後の処理はプリンタエンジン3004で実行される。
プリンタエンジン3004において、2値の画像データK1″(66−1)およびK2″(66−2)は、それぞれ、図20に示す2つのノズル列51と55に対応した2値データに分割される。すなわち、第1走査用の2値画像データK1″(66−1)は、第1走査2値データ分割処理部67−1によって、第1ノズル列の第1走査用の2値データ68−1と、第2ノズル列の第1走査用の2値データ68−2に分割される。また、第2走査用の2値画像データK2″(66−2)は、第2走査2値データ分割処理部67−2によって、第1ノズル列の第2走査用の2値データ68−3と、第2ノズル列の第2走査用の2値データ68−4に分割される。
ここで、第1走査2値データ分割処理部および第2走査2値データ分割処理部について詳しく説明する。本実施形態において、第1走査2値データ分割処理部67−1および第2走査2値データ分割処理部67−2では、予めメモリ(ROM E1004)に記憶されているマスクを利用して分割処理が実行される。マスクとは、個々の画素に対して2値画像データの記録の許容(1)または非許容(0)が予め定められたデータの集合体であり、2値画像データと画素毎に論理積演算することで、上記2値画像データを分割するものである。
2値の画像データをN分割する場合、N個のマスクが用いられるのが一般であり、2値の画像データを2分割する本実施形態では、図8に示されるような2つのマスク1801、1802が使用される。ここでは、マスク1801は第1ノズル列用の2値データを生成するために利用され、マスク1802は第2ノズル列用の2値データを生成するために利用される。これら2つのマスクは互いに補完の関係を有しているため、これらマスクで分割された2値データ同士は互いに重なることがない。従って、異なるノズル列によって記録されるドット同士が紙面上で重なる確率が低く抑えられるため、上述した走査間に対して行われるドット重複率制御に比べて、粒状感の悪化を招きにくい。なお、図8において、黒で示される部分が画像データの記録を許容するデータ(1:画像データをマスクしないデータ)であり、白で示される部分は画像データの記録を許容しないデータ(0:画像データをマスクするデータ)である。
このようなマスク1801、1802を用いて、第1走査2値データ分割処理部および第2走査2値データ分割処理部で分割処理が行われる。詳しくは、第1走査2値データ分割処理部67−1では、2値データK1″(66−1)とマスク1801との論理積演算を画素毎に行うことで第1ノズル列用の2値データ68−1が生成される。同様に、2値データK1″(66−1)とマスク1802との論理積演算を画素毎に行うことで第2ノズル列用の2値データ68−1が生成される。一方、第2走査2値データ分割処理部67−2では、2値データK1″(66−2)とマスク1801との論理積演算を画素毎に行うことで第1ノズル列用の2値データ68−3が生成される。同様に、2値データK1″(66−2)とマスク1802との論理積演算を画素毎に行うことで第2ノズル列用の2値データ68−4が生成される。なお、第1走査2値データ分割処理部67−1と第2走査2値データ分割処理部67−2とでは、同じマスクパターン1801および1802のセットを用いているが、異なるマスクパターンのセットを使用してもよい。
その後、各2値画像データ(68−1〜4)は、対応するノズル列の対応する走査ごとに用意されたバッファ69−1〜4に格納される。そして、個々のバッファに2値の画像データが必要量格納されると、対応するバッファに格納されているデータに従って記録動作が実行される。
以下、本実施形態の特徴的なドット重複率を制御するための処理方法を説明する。表1は、本実施形態の色変換/画像データ分割処理部62による第1走査用および第2走査用の多値データへの分配率と、それぞれの多値データに対し第1の実施形態の様な一般的な誤差拡散処理を施した場合の、第1走査と第2走査でのドット重複率を示している。インク記録率(%)とは、単位面積当たりに記録される1色のインクのドット数に相当し、単位面積当たりにドットが記録されていない状態を0%、単位面積当たりに最大数のドットが記録されている状態を100%としている。従って、例えば、記録率60%とは、最大ドット数の60%に相当する数のドットが単位面積に記録されている状態を指す。表1では、このようなインク記録率を0〜100%の10段階で示している。なお、後述するように、このインク記録率(0〜100%)は、異なる走査に対応した同色の多値の濃度データの合計値(0〜255)と相関性があり、インク記録率の値が大きくなるほど上記合計値も大きくなる。また、インク分配率(%)とは、複数回の走査に対応した同色の多値の濃度データの合計値(インク記録率)に対する各走査の濃度データの値の割合を指しており、分配率の合計は100%となっている。このようにインク分配率は、入力画像データ(RGB)の変換後の複数の同色の濃度データ値(例えば、C1:C2)の比(分配比)に相当する。例えば、複数回の走査に対応した複数の濃度データの合計値が128(記録率50%)で、第1走査用の濃度データ値が64(記録率25%)で、第2走査用の濃度データ値も64(記録率25%)である場合を考える。この場合、第1走査および第2走査の分配率はそれぞれ50%となり、第1走査用の第1の濃度データ値と第2走査用の第2の濃度データ値との比は1:1となる。表1では、このような分配率を6段階で示している。そして、分配率とインク記録率のそれぞれの条件に対応し、一般的な誤差拡散法によって2値化処理した結果のドット重複率が表1の各欄に示されている。
図9は、表1をグラフに示したものである。図において、横軸は記録率、縦軸はドット重複率を示している。表1に示した6段階の分配率のそれぞれについて、記録率に対するドット重複率が傾きの異なる直線で示されている。
例えば、第1記録走査の分配率が100%、第2記録走査の分配率が0%である場合、全多値データは第1記録走査のみによって記録される。よって、ドットが重なり合うことはなく、記録率が上昇してもドット重複率は0%のままである。第2記録走査の分配率を徐々に上げていくと、記録率に対するドット重複率の傾きは徐々に上がる。そして、分配率が第1記録走査と第2記録走査で50%ずつである場合、記録率に対するドット重複率の傾きは最も大きくなり、記録率が100%のときにドット重複率は50%となる。
従って、表1や図9に示すような分配率に対するドット重複率を予め取得しておけば、分配率を調整することにより所望のドット重複率を実現することが可能となる。
ところで、インク記録率の全領域(0%−100%)のうち、中間調近傍すなわち画素数のほぼ半数のドットが記録されるような領域では、ドットの重複状態の変化が紙面におけるドットの被覆率に影響しやすい。よって、このような中間濃度領域で特に濃度むらが問題となりやすく、他の濃度領域(低濃度領域、高濃度領域)よりもドット重複率を高く設定しておくことが望まれる。一方、濃度ムラが問題となりにくい低濃度領域では、濃度ムラ軽減よりも粒状感低減を優先して、ドット重複率を低く設定するのが望ましい。また、高濃度領域では、濃度ムラ軽減よりも濃度アップを優先して、ドット重複率を低く設定するのが望ましい。
図9における太線311は、表1に示されるように記録率(すなわち異なる走査に対応した複数の多値の濃度データの合計値)に応じてドット重複率を調整する様子を示している。本実施形態では、記録率20%までの低濃度領域ではドット重複率を0%とし、記録率が20−60%の中間濃度領域ではドット重複率を30%まで徐々に上昇させ、記録率60%以上の高濃度領域ではドット重複率を20%以下まで徐々に下降させる。このようなドット重複率を実現するためには、記録率0−20%では分配率を(100%:0%)とし、記録率が20−60%では分配率を(50%:50%)になるまで徐々に変化させる。そして、記録率60%において、ドット重複率が最も高く(30%)なるように、分配率を(50%:50%)にする。また、記録率60−100%の高濃度領域では分配率を(90%:10%)になるまで徐々に変化させる。
このように本実施形態では、濃度領域毎のドット重複率を最適設定するために、記録率に応じて分配率を変化させている。具体的には、濃度ムラが最も懸念される中間濃度領域におけるドット重複率が低濃度領域や高濃度領域よりも高くなるように、複数の濃度データ値の比(分配比)の偏りを低濃度領域や高濃度領域よりも中間濃度領域において小さく設定している。なお、上記分配率の調整は、擬似輪郭の発生を抑えるために、なるべく記録率の変化に対してなだらかに変化させることが好ましい。
ところで、本実施形態では、色変換/画像データ分割部62にて、入力画像データ(RGB)を複数の走査に対応した複数の濃度データ(複数のCMYKセット)に一括変換するので、表1や図9で示した「記録率」に対応するようなパラメータを実際に扱うことはない。しかし、変換後の複数の同色濃度データの合計値と記録率とは相関性があり、合計値が大きくなれば、結果的に、2値化後の記録率も大きくなる。つまり、異なる走査に対応した複数の濃度データの合計値は「記録率」に相当する。従って、実際の処理では、3次元LUTにおいて、複数の同色濃度データの合計値(記録率)と分配率の関係が図9の太線で示したグラフを満足するように、入力画像データ(RGB)と複数の濃度データ(複数のCMYKセット)とを対応付けておけばよい。そして、このようなLUTを用いて、色変換/画像データ分割部62においてデータ変換を行う。こうすることで、複数の同色の濃度データ値の比(分配率)が、上記の記録率および合計値と相関のある入力画像データに応じて一義的に決まることになるため、「記録率」パラメータを用いずとも、図9に示すような記録率と分配率との関係が満足される。よって、図9に示されるような記録率に相応のドット重複率を実現することができる。以上の構成によれは、ロバスト性が最も懸念される中間濃度領域についてのドット重複率を、低濃度領域や高濃度領域よりも高く設定することが出来、濃度むらと粒状感の優先度が変化する全階調領域において、良好な画像を出力することが可能となる。
但し、本発明および本実施形態は、必ずしも、図6に示したように、色変換/画像データ分割部62にて多値の輝度データ(RGB)を複数回の走査に対応した複数の多値の濃度データ(CMYK)に3次元LUTを用いて一括変換する必要はない。図10で示した特許文献1や特許文献2のように、RGBをCMYKに色変換する処理と、CMYKを複数回の走査に対応した複数の多値の濃度データに変換する処理とを独立に設けても構わない。この場合、色変換後の多値データに応じて定められる分配率に従って、すなわち図9に示される分配率に従って、複数の多値の濃度データを生成すればよい。
なお、表1では、色変換/画像データ分配処理部62において、第1の記録走査と第2の記録走査の分配率の和が100%になるようにそれぞれの分配率が定められているが、本実施形態はこれに限定されるものではない。画像処理の都合や絶対濃度の向上を目的として、第1記録走査の分配率の和と第2記録走査の分配率の和が100%以上になっても良いし、100%未満に抑えるようにしても構わない。
以上では、記録率すなわち各記録走査の多値データの合計値に応じて分配率を調整する例で説明したが、本実施形態の構成によれば、あるインク色の記録率が等しい場合であっても、その記録率を導き出すRGBのバランスに応じて分配率を調整することも出来る。例えばシアンの記録率が同じであったとしても、青空の色を表現する場合と、濃いグレーを表現する場合とでは、濃度むらと粒状感の目立ち方が異なり、青空の色を表現する場合の方が、より濃度むらが目立ち易いことが多い。すなわち、シアンの記録率が同じであっても、他色の記録率やそのバランスすなわちRGBの座標に応じて濃度むらと粒状感の優先度が異なるのである。
表2は、青空の色を表現する入力画像データ(R=200,G=255,B=255)と、濃いグレーを表現する入力画像データ(R=50,G=50,B=50)について、分配率を異ならせる場合を示している。どちらの色についても、シアンの記録率は50%と等しくなっているが、より濃度むらが目立ち易い青空の色の方が、ドット重複率を高めるために分配率の偏りを小さくしているのがわかる。
本実施形態の構成であれば、このように、各RGBの座標が表現する色で、濃度むらと粒状感のどちらを優先するかに応じて適切な分配率が得られるように、RGBの座標とCMYKの多値データが対応付けられたLUTを用意することが出来る。これにより、ロバスト性が懸念される色のドット重複率を、他色よりも高く設定することが出来るので、濃度むらと粒状感の優先度が変化する全色空間領域において、良好な画像を出力することが可能となる。
以上のように本実施形態によれば、複数回の走査に対応した多値の同色濃度データ値の比(分配率)を入力画像データ(RGB)に応じて変化させることで、入力画像データが表現する色に相応のドット重複率を実現することができる。これにより、処理の軽減化という第1の実施形態と同じ効果を得ながらも、ロバスト性に優れ、粒状感も低減され且つ濃度も十分な高品位な画像出力を、インク色の全階調領域ひいてはRGB色空間の全領域において実現することが可能となる。
以下、図6で説明した画像処理について、図12を用いてより具体的に説明する。図12は、図6に示した画像処理の具体例をイメージ化したものである。ここでは、4画素×4画素の計16画素に対応した入力画像データ141を処理する場合について説明する。符号A〜Pは、各画素に対応する入力画像データ141のRGB値の組合せを示している。符号A1〜P1は、各画素に対応した第1走査用の多値画像データ142のCMYK値の組合せを示している。符号A2〜P2は、各画素に対応した第2走査用の多値画像データ143のCMYK値の組合せを示している。
図において、第1走査用の多値画像データ142が図6の第1走査用の多値データ64−1に相当し、第2走査用の多値画像データ143が図6の第1走査用の多値データ64−2に相当する。また、第1走査用の量子化データ144が図6の第1走査用の2値データ66−1に相当し、第2走査用の量子化データ145が図6の第2走査用の2値データ66−2に相当する。更に、第1ノズル列に対応した第1走査用の量子化データ146が図6の2値データ68−1に相当し、第2ノズル列に対応した第1走査用の量子化データ147が図6の2値データ68−2に相当する。また、第1ノズル列に対応した第2走査用の量子化データ148が図6の2値データ68−3に相当し、第2ノズル列に対応した第2走査用の量子化データ149が図6の2値データ68−4に相当する。
まず、入力画像データ141(RGBデータ)が、図6の色変換/画像データ分割部62に入力される。すると、色変換/画像データ分割部62では、3次元のLUTによって、入力画像データ141(RGBデータ)が、画素毎に、第1走査用の多値画像データ142(CMYKデータ)と第2走査用の多値画像データ143(CMYKデータ)に変換される。ここで、色変換/画像データ分割部62では、入力画像データ141が低濃度領域あるいは高濃度領域を表す場合には、2つの多値画像データの偏りが比較的大きくなるように多値画像データ(142および143)が生成される。一方、入力画像データ141が中間濃度領域を表す場合には、2つの多値画像データの偏りが比較的小さくなるように多値画像データ(142および143)が生成される。なお、これ以降の処理(階調補正処理、量子化処理、マスク処理)は、CMYKの各色について独立に並行して行われるので、以下では、説明の便宜上、1色(K)のみについて示し、その他の色については省略する。
上述のようにして得られた第1走査用の多値画像データ(142)は図6の第1の量子化処理部65−1に入力され、誤差拡散処理が施されて、第1走査用の量子化データ(144)が生成される。一方、第2走査用の多値画像データ(143)は第2の量子化処理部65−2に入力され、誤差拡散処理が施されて、第2走査用の量子化データ(145)が生成される。このとき、第1走査用の多値画像データ142に誤差拡散処理を行う場合は、図13(A)で示される誤差拡散マトリックスAが用いられる。また、第2走査用の多値画像データ143に誤差拡散処理を行う場合は、図13(B)で示される誤差拡散マトリックスBが用いられる。図において、第1走査用および第2走査用の量子化データ(144、145)のうち、「1」のデータはドットの記録(インクの吐出)を示すデータであり、「0」のデータはドットの非記録(インクの非吐出)を示すデータである。
続いて、第1走査2値データ分割処理部67−1では、第1走査用の量子化データ144をマスクにより分割することで、第1ノズル列に対応した第1走査用の量子化データ146と第2ノズル列に対応した第1走査用の量子化データ147を生成する。詳しくは、第1走査用の量子化データ144を図8のマスク1801によって間引くことにより、第1ノズル列に対応した第1走査用の量子化データ146を得る。また、第1走査用の量子化データ144を図8のマスク1802によって間引くことにより、第2ノズル列に対応した第1走査用の量子化データ147を得る。一方、第2走査2値データ分割処理部67−2では、第2走査用の量子化データ145をマスクにより分割することで、第1ノズル列に対応した第2走査用の量子化データ148と第2ノズル列に対応した第2走査用の量子化データ149を生成する。詳しくは、第2走査用の量子化データ145を図8のマスク1801によって間引くことにより、第1ノズル列に対応した第2走査用の量子化データ148を得る。また、第2走査用の量子化データ145を図8のマスク1802によって間引くことにより、第2ノズル列に対応した第2走査用の量子化データ149を得る。
ところで、本実施形態では、互いに補間関係のある2つのマスクパターンを用いて2つのノズル列に対応した同一走査用の2値データを生成しているため、ノズル列間ではドットの重なり合いは起こらない。勿論、走査間のみならずノズル列間にもドットの重なり合いを発生させることも出来るが、色変換/画像データ分割部で複数のノズル列×複数の走査を対象に多値データを生成すると、量子化処理の対象となるデータ数が増大し、データ処理の負荷が高まってしまう。また、ノズル間での記録位置ずれは走査間での記録位置ずれよりも小さく、ノズル列間にドット重複率制御を適用せずとも、濃度変動の問題が顕在化されにくい。このような理由から、本実施形態では、マルチパス数分だけ多値データを生成し、ノズル列間では、補完関係にあるマスクパターンでドットを分配している。
以上説明したように本実施形態によれば、入力画像データが表す濃度に相応のドット重複率とするべく、入力画像データに応じた分配比に従って、異なる走査に対応した複数の濃度データを生成し、その後それぞれの多値データに対して2値化処理を実行する。これにより、例えば、記録位置ずれによる濃度変動に起因した濃度むらが最も懸念される中間濃度領域におけるドット重複率を、低濃度領域や高濃度領域よりも高くできる。つまり、粒状感よりも濃度むらの方が目立ちやすい中濃度領域と濃度むらよりも粒状感やその他の弊害が懸念される低濃度領域および高濃度領域とでドット重複率を異ならせることにより、全濃度領域で良好な画像を出力することが可能となる。
(第2の実施形態)
第1の実施形態では、ドット重複率を制御するために、色変換/画像データ分割部における分配率を調整する方法を説明した。本実施形態では、第1の実施形態で採用したドット重複率調整方法に加え、色変換/画像データ分割部によって生成された複数の多値濃度データを量子化する際の量子化処理にも特徴を持たせる。そして、色変換/画像データ分割部と量子化処理部の協働によってドット重複率を制御する方法を採用する。
図21は、図11で示したように2回の記録走査によって記録媒体の同一領域の画像を完成させるマルチパス記録を行う場合の画像処理を説明するためのブロック図である。ここでは、デジタルカメラ3012などの画像入力機器から入力された画像データに対し、図の21〜25までの処理を図3で説明した制御部3000で行い、27以降の処理をプリンタエンジン3004によって行うものとする。このように、図21に示される多値画像データ入力部(21)、色変換/画像データ分割部(22)、階調補正処理部(23−1、23−2)および量子化処理部(25)は、制御部3000に備えられている。一方、2値データ分割処理部(27−1、27−2)は、プリンタエンジン3004に備えられている。
外部機器から、多値画像データ入力部21によって、RGBの多値の画像データ(256値)が入力される。この入力画像データ(多値のRGBデータ)は、色変換/画像データ分割部22によって、第1走査用の多値データと第2走査用の多値データに一括して変換され、階調補正処理部23−1および23−2にて階調補正が施される。これにより、1走査用の多値データ24−1と第2走査用の多値データ24−2が得られる。なお、色変換/画像データ分割部および階調補正処理部の構成は上記実施形態と同様である。すなわち、多値のRGBデータに応じた分配率に従って、異なる走査に対応した複数の多値の濃度データ(CMYK)を生成する。
なお、本実施形態においても、色変換/画像データ分割部22の構成は、3次元のルックアップテーブルを用いる形態でなくても構わない。RGBをCMYKに色変換する処理と、CMYKを記録走査に対応した複数の多値の濃度データに変換する処理とを独立に設け、色変換後の多値データに応じて定められる分配率に従って、複数の多値の濃度データを生成する構成であってもよい。
次に、第1走査用多値データと第2走査用多値データは、それぞれ、色毎に、階調補正処理部23−1および23−2にて階調補正処理が施される。ここでは、多値データの信号値と記録媒体上で表現される濃度値との関係が線形となるように、多値データの信号値変換が行われる。その結果、第1走査用の多値データ24−1(C1´,M1´,Y1´,K1´)と第2走査用の多値データ24−2(C2´,M2´,Y2´,K2´)が得られる。以下の処理は、シアン(C)、マゼンタ(M)、イエロー(Y)およびブラック(K)のそれぞれについて独立に並行して行われるので、これ以後の説明はブラック(K)のみについて行う。
続いて、量子化処理部25では、第1走査用の多値データ24−1(第1の多値濃度データ K1´)と第2走査用の多値データ24−2(第2の多値濃度データ K2´)のそれぞれに対し2値化処理(量子化処理)が行われる。すなわち、各多値データは0または1のどちらかに変換(量子化)されて、第1走査用の2値データK1″(第1の量子化データ)26−1および第2走査用のK2″(第2の量子化データ)26−2となる。この際、K1″とK2″の両方が1である画素にはドットが重複して記録され、K1″とK2″の両方が0である画素にはドットが記録されないことになる。また、K1″とK2″のどちらか一方が1である画素には、ドットが1つだけ記録されることになる。
本実施形態では、この量子化処理部25における量子化方法に特徴を持たせることによっても、ドット重複率を制御可能としている。以下に、本実施形態の量子化処理方法について説明する。
量子化処理部25において実行される処理工程を、図16のフローチャートを用いて説明する。このフローチャートにおいて、K1´およびK2´は注目画素における入力多値データであり0〜255の値を有している。また、K1errおよびK2errは、既に量子化処理が終了した周辺の画素から発生した累積誤差値で、K1ttlおよびK2ttlは入力多値データと累積誤差値を合計した値である。更にK1″およびK2″は、第1記録走査用と第2記録走査用の2値の量子化データである。
本処理においては、2値の量子化データであるK1″やK2″の値を決定する際に用いる閾値(量子化パラメータ)が、K1ttlやK2ttlの値に応じて異なるようになっている。そのためにK1ttlやK2ttlの値に応じて閾値が一義的に決まるようなテーブルが予め用意されている。ここで、K1″を決定する際にK1ttlと比較するための閾値をK1table[K2ttl]とし、K2″を決定する際にK2ttlと比較するための閾値をK2table[K1ttl]とする。K1table[K2ttl]はK2ttlの値によって定まる値であり、K2table[K1ttl]はK1ttlの値によって定まる値である。
本処理が開始されると、まず、S21によりK1ttlおよびK2ttlを算出する。次いで、S22において、下記表3に示されるような閾値テーブルを参照することにより、S21で求めたK1ttlおよびK2ttlから、2つの閾値K1table[K2ttl]およびK2table[K1ttl]を取得する。閾値K1table[K2ttl]は、表3の閾値テーブルの「参照値」としてK2ttlを用いることによって一義的に定められる。一方、閾値K2table[K1ttl]は、表3の閾値テーブルの「参照値」としてK1ttlを用いることによって一義的に定められる。
続くS23〜S25においてK1″の値を決定し、S26〜S28においてK2″を決定する。具体的には、S23において、S21で算出したK1ttlがS22で取得した閾値K1table[K2ttl]以上であるか否かを判定する。そして、K1ttlが閾値以上であると判定された場合にはK1″=1とし、この出力値(K1″=1)に応じて累積誤差値K1err(=K1ttl−255)を算出して更新する(S25)。一方、K1ttlが閾値未満であると判定された場合にはK1″=0とし、この出力値(K1″=0)に応じて累積誤差値K1err(=K1ttl)を算出して更新する(S24)。
次いで、S26において、S21で算出したK2ttlがS22で取得した閾値K2table[K1ttl]以上であるか否かを判定する。そして、K2ttlが閾値以上であると判定された場合にはK2″=1とし、この出力値(K1″=1)に応じて累積誤差値K2err(=K2ttl−255)を算出して更新する(S28)。一方、K2ttlが閾値未満であると判定された場合にはK2″=0とし、この出力値(K2″=0)に応じて累積誤差値K2err(=K2ttl)を算出して更新する(S27)。
その後、S29において、上記のように更新された累積誤差値K1errおよびK2errを、図13に示される誤差拡散マトリクスに従って、未だ量子化処理が終了していない周辺画素に拡散する。本実施形態では、累積誤差値K1errを周辺画素に拡散するために図13(A)に示される誤差拡散マトリクスを用い、一方、累積誤差値K2errを周辺画素に拡散するために図13(B)に示される誤差拡散マトリクスを用いる。
このように本実施形態では、第1走査に対応した多値データ(K1ttl)に量子化処理を行うのに用いる閾値(量子化パラメータ)を、第2走査に対応した多値データ(K2ttl)に基づいて決定している。同様に、第2走査に対応した多値データ(K2ttl)に量子化処理を行うのに用いる閾値(量子化パラメータ)を、第1走査に対応した多値データ(K1ttl)に基づいて決定している。つまり、2回の走査のうちの一方の走査に対応した多値データと他方の走査に対応した多値データの両方に基づいて、一方の走査に対応した多値データの量子化処理も、他方の走査に対応した多値データの量子化処理も実行するのである。これにより、例えば、一方の走査でドットが記録される画素には、他方の走査ではドットが極力記録されないように制御することができるため、ドットの重なりに起因する粒状感の悪化を抑制することができる。
図22(A)は、上記図16のフローチャートに従って、下記表3の閾値テーブルの図22(A)の欄に記述される閾値を用いて量子化処理(2値化処理)を行った結果を入力値(K1ttlおよびK2ttl)と対応付けて説明するための図である。K1ttlおよびK2ttlは共に0〜255の値を取り得、閾値テーブルの図22の欄に示されるように閾値128を境に記録(1)および非記録(0)が決定される。図中のポイント221は全くドットを記録しない領域(K1″=0且つK2″=0)と、2つのドットが重なる領域(K1″=1且つK2″=1)の境界点となる。この例では、K1″=1となる確率(すなわちドット記録率)はK1´/255となり、K2″=1となる確率はK2´/255となる。
図22(B)は、上記図16のフローチャートに従って、下記表3の閾値テーブルの図22(B)の欄に記述される閾値を用いて量子化処理(2値化処理)を行った結果を、入力値(K1ttlおよびK2ttl)と対応付けて説明するための図である。ポイント231は、全くドットを記録しない領域(K1″=0且つK2″=0)と1ドットのみを生ずる領域(K1″=1且つK2″=0、あるいはK1″=0且つK2″=0)との境界である。また、ポイント232は、2つのドットを重複して記録する領域(K1″=1且つK2″=1)と1ドットのみを生ずる領域(K1″=1且つK2″=0、あるいはK1″=0且つK2″=0)との境界である。ポイント231と232がある程度の距離を置いて離れていることにより、図22(A)の場合に比べ、どちらか一方のドットが記録される領域が増え、両方のドットが記録される領域が減少している。つまり、図22(B)の場合は、図22(A)の場合よりも、ドット重複率が低減される確率が高く、粒状性を低く抑えるのに有利である。図22(A)の様にドット重複率が急峻に変化するポイントが存在すると、階調の僅かな変化によって濃度むらが発生する場合が有り得るが、図22(B)の場合には階調の変化に応じてドット重複率も滑らかに変化していくので、その様な濃度むらも起こり難い。
本実施形態の量子化処理においては、Kttlの値やK1´とK2´の関係に対して様々な条件を設けることにより、K1″およびK2″の値ひいてはドット重複率を様々に調整することが出来る。以下にいくつかの例を図22(C)〜図22(G)を用いて説明する。なお、図22(C)〜図22(G)は、上述した図22(A)および図22(B)と同様、下記表3に示される閾値テーブルに記述される閾値を用いて量子化した結果(K1″およびK2″)と入力値(K1ttlおよびK2ttl)との対応関係を示した図である。
図22(C)は、ドット重複率を図22(A)と図22(B)の間の値にするようにした場合を示す図である。ポイント241は図22(A)のポイント221と図22(B)のポイント231の中間点になるように定められている。また、ポイント242は図22(A)のポイント221と図22(B)のポイント232の中間点になるように定められている。
また、図22(D)は、図22(B)の場合よりもドット重複率を更に低減するようにした場合を示す図である。ポイント251は図22(A)のポイント221と図22(B)のポイント231を3:2に外分する点に定められている。また、ポイント252は図22(A)のポイント221と図22(B)のポイント232を3:2に外分する点に定められている。
図22(E)は、図22(A)の場合よりもドット重複率を増加させるようにした場合を示している。図において、ポイント261は、全くドットを記録しない領域(K1″=0且つK2″=0)と1ドットのみを生ずる領域(K1″=1且つK2″=0)と、2つのドットを重複して記録する領域(K1″=1且つK2″=1)との境界点である。また、ポイント262は、全くドットを記録しない領域(K1″=0且つK2″=0)と1ドットのみを生ずる領域(K1″=0且つK2″=1)と、2つのドットを重複して記録する領域(K1″=1且つK2″=1)との境界点である。図22(E)によれば、全くドットを記録しない領域(K1″=0且つK2″=0)から、2つのドットを重複して記録する領域(K1″=1且つK2″=1)への遷移が生じ易くなり、ドット重複率を増加させる事が出来る。
また、図22(F)は、ドット重複率を図22(A)と図22(E)の間の値にするようにした場合を示す図である。ポイント271は図22(A)のポイント221と図22(E)のポイント261の中間点となるように定められている。そして、ポイント272は図22(A)のポイント221と図22(E)のポイント262の中間点となるように定められている。
更に、図22(G)は、図22(E)の場合よりも更にドット重複率を増加させるようにした場合を示している。ポイント281は図22(A)のポイント221と図22(E)のポイント261を3:2に外分する点に定められている。そして、ポイント282は図22(A)のポイント221と図22(E)のポイント262を3:2に外分する点に定められている。
次に、下記表3に示される閾値テーブルを用いた量子化処理の方法について具体的に説明する。表3は、図22(A)〜図22(G)に示した処理結果を実現するために、図16で説明したフローチャートのS22において閾値を取得するための閾値テーブルである。
ここでは、入力値(K1ttl、K2ttl)が(100、120)で、且つ、閾値テーブルの図22(B)の欄に記述される閾値を用いる場合について説明する。まず、図16のS22では、表3に示される閾値テーブルと、K2ttl(参照値)に基づいて、閾値K1table[K2ttl]を求める。参照値(K2ttl)が「120」であれば、閾値K1table[K2ttl]は「120」となる。同様に、閾値テーブルとK1ttl(参照値)に基づいて、閾値K2table[K1ttl]を求める。参照値(K1ttl)が「100」であれば、閾値K2table[K1ttl]は「101」となる。次いで、図16のS23において、K1ttlと閾値K1table[K2ttl]を比較判定し、この場合、K1ttl(=100)<閾値K1table[K2ttl](=120)であるため、K1″=0(S24)となる。同様に、図16のS26において、K2ttlと閾値K2table[K1ttl]を比較判定し、この場合、K2ttl(=120)≧閾値K2table[K1ttl](=101)であるため、K2″=1(S28)となる。この結果、図22(B)に示されるように、(K1ttl、K2ttl)=(100、120)の場合には、(K1″、K2″)=(0、1)となる。
また、別の例として、入力値(K1ttl、K2ttl)=(120、120)で、且つ、閾値テーブルの図22(C)の欄に記述される閾値を用いる場合について説明する。この場合、閾値K1table[K2ttl]は「120」となり、閾値K2table[K1ttl]は「121」となる。従って、K1ttl(=120)≧閾値K1table[K2ttl](=120)であるため、K1″=1となり、一方、K2ttl(=120)<閾値K2table[K1ttl](=121)であるため、K2″=0となる。この結果、図22(C)に示されるように、(K1ttl、K2ttl)=(120、120)の場合には、(K1″、K2″)=(1、0)となる。
以上のような量子化処理によれば、2回の走査に対応した多値データの両方に基づいて、2回の走査夫々に対応した多値データを量子化することで、2回の走査間でのドット重複率を制御している。これにより、一方の走査で記録されるドットと他方の走査で記録されるドットの重複率を好適な範囲内、すなわち、高いロバスト性と低い粒状性を両立させることができる範囲内に収めることができる。
再び、図21に戻る。量子化処理部25によって、以上説明したような所望のドット重複率を実現するための2値の画像データK1CおよびK2”が得られると、これらデータはそれぞれ、IEEE1284バス3022を介して図3で示したプリンタエンジン3004に送られる。以後の処理はプリンタエンジン3004で実行される。
プリンタエンジン3004において、2値の画像データK1″(26−1)およびK2″(26−2)は、それぞれ、2つのノズル列54と55に記録される2値データに分割される。すなわち、第1走査用の2値画像データK1″(26−1)は、第1走査2値データ分割処理部27−1によって、第1ノズル列の第1走査用の2値データ28−1と、第2ノズル列の第1走査用の2値データ28−2に分割される。また、第2走査用の2値画像データK2″(26−2)は、第2走査2値データ分割処理部27−2によって、第1ノズル列の第2走査用の2値データ28−3と、第2ノズル列の第2走査用の2値データ28−4に分割される。
ここで、第1走査2値データ分割処理部および第2走査2値データ分割処理部について詳しく説明する。本実施形態において、第1走査2値データ分割処理部27−1および第2走査2値データ分割処理部27−2では、予めメモリ(ROM E1004)に記憶されているマスクを利用して分割処理を実行する。マスクとは、個々の画素に対して2値画像データの記録の許容(1)または非許容(0)が予め定められたデータの集合体であり、2値画像データと画素毎に論理積演算することで、上記2値画像データを分割するものである。
2値の画像データをN分割する場合、N個のマスクが用いられるのが一般であり、2値の画像データを2分割する本実施形態では、図8に示されるような2つのマスク1801、1802が使用される。ここでは、マスク1801は第1ノズル列用の2値データを生成するために利用され、マスク1802は第2ノズル列用の2値データを生成するために利用される。これら2つのマスクは互いに補完の関係を有しているため、これらマスクで分割された2値データ同士は互いに重ねることがない。従って、異なるノズル列によって記録されるドット同士が紙面上で重なる確率が低く抑えられるため、上述した走査間に対して行われるドット重複率制御に比べて、粒状感の悪化を招きにくい。なお、図8において、黒で示される部分が画像データの記録を許容するデータ(1:画像データをマスクしないデータ)であり、白で示される部分は画像データの記録を許容しないデータ(0:画像データをマスクするデータ)である。
このようなマスク1801、1802を用いて、第1走査2値データ分割処理部および第2走査2値データ分割処理部で分割処理が行われる。詳しくは、第1走査2値データ分割処理部27−1では、2値データK1″(26−1)とマスク1801との論理積演算を画素毎に行うことで第1ノズル列用の2値データ28−1が生成される。同様に、2値データK1″(26−1)とマスク1802との論理積演算を画素毎に行うことで第2ノズル列用の2値データ28−1が生成される。
一方、第2走査2値データ分割処理部27−2では、2値データK1″(26−2)とマスク1801との論理積演算を画素毎に行うことで第1ノズル列用の2値データ28−3が生成される。同様に、2値データK1″(26−2)とマスク1802との論理積演算を画素毎に行うことで第2ノズル列用の2値データ28−4が生成される。
その後、各2値画像データ(28−1〜4)は、対応するノズル列の対応する走査ごとに用意されたバッファに格納される。そして、個々のバッファに2値の画像データが必要量格納されると、対応するノズル列が対応する走査のバッファに格納されているデータに従って記録動作を実行する。
図21で説明した画像処理の各データ変換の様子は、図12で説明した第1の実施形態と略同様である。すなわち、色変換/画像データ分割部62では、入力画像データ141の値に基づいた分配率に従って、多値画像データ(142および143)が生成される。 また、量子化部25では、第1走査用の多値画像データ142に誤差拡散処理を行う場合、図16および表3を用いて説明した通り、誤差拡散処理の際に用いる閾値を第2走査用の多値画像データ143に基づいて決定する。その後、こうして決定された閾値と、図13(A)で示される誤差拡散マトリックスAを用いて、第1走査用の多値画像データ142に対し2値化のための誤差拡散処理を行う。これにより、第1走査用の2値の量子化データ144が生成される。同様に、第2走査用の多値画像データ143に誤差拡散処理を行う場合、図16および表3を用いて説明した通り、誤差拡散処理の際に用いる閾値を第1走査用の多値画像データ142に基づいて決定する。その後、こうして決定された閾値と、図13(B)で示される誤差拡散マトリックスBを用いて、第2走査用の多値画像データ143に対し2値化のための誤差拡散処理を行う。これにより、第2走査用の2値の量子化データ145が生成される。なお、第1走査用および第2走査用の量子化データ(144、145)のうち、「1」のデータはドットの記録(インクの吐出)を示すデータであり、「0」のデータはドットの非記録(インクの非吐出)を示すデータである。
なお、以上の説明では、ノズル列間では上述したようなドット重複率制御は適用されない構成になっているが、本実施形態においても第1の実施形態と同様、走査間のみならずノズル列間にもドット重複率制御を適用することは可能である。但し、ノズル列間にもドット重複率制御を適用すると、量子化対象のデータ数が多くなるため、データ処理の負荷が大きくなってしまう。従って、本実施形態では、走査間にだけドット重複率制御を適用し、ノズル列間にはドット重複率制御を適用しないようにしている。
以上説明した処理によれば、異なる走査に対応した2値画像データを重ねた場合に、ドット同士が重なる箇所(両方のプレーンに“1”が存在する画素)がある程度存在するため、濃度変動に強い画像を得ることができる。その一方で、ドット同士が重なる箇所はそれ程多くないため、ドット同士の重なりが原因で生じる粒状感の悪化を招かずに済む。更に、走査間にだけドット重複率制御を適用し、ノズル列間にはドット重複率制御を適用しないようにしているので、ドット重複率制御による処理負荷を抑制しながら、濃度むら低減と粒状感低減をバランスよく実現することが出来る。
以上説明した本実施形態によれば、入力多値データを異なる走査に対応した複数の多値の濃度データ(CMYK)に変換する際に、その分配率を入力多値データに応じて調整する。さらにその後に、互いのプレーンの多値濃度データに基づいてそれぞれのプレーンの量子化処理を実行する。このような2段階のドット重複率の調整手段を有用することにより、ロバスト性に優れ粒状感も低減された高品位な画像を出力することが可能となる。
(第2の実施形態の変形例1)
上述したように、本実施形態で好適に実行される量子化処理は、図16を用いて説明したようなドット重複率を制御できる誤差拡散処理であるが、本実施形態において適用可能な量子化処理はこれに限られるものではない。以下、本実施形態で適用可能な量子化処理の別例について図24を用いて説明する。
図24は、本実施形態の制御部3000が、ドット重複率を低減するために実行可能な誤差拡散法の一例を説明するためのフローチャートである。当該フローチャートにおいて、各種パラメータは図16で説明したものと同じである。
注目画素に対する量子化処理が開始されると、まずS11において、K1ttlおよびK2ttlが算出され、更にこれらを加算したKttlが算出される。このとき、Kttlは0〜510の値を有する。続くS12〜S17では、Kttlの値やK1ttlおよびK2ttlの大小関係に応じて、2値の量子化データに相当するK1″およびK2″の値を決定する。
Kttl>128+255の場合はS14へ進み、K1″およびK2″を共に1とする。また、Kttl≦128の場合はS17へ進み、K1″およびK2″を共に0とする。一方、128+255≧Kttl>128の場合はS13進み、K1ttlとK2ttlの大小関係を更に調べる。S13でK1ttl>K2ttlの場合はS16に進み、K1″=1且つK2″=0とする。K1ttl≦K2ttlの場合はS15に進み、K1″=0且つK2″=1とする。
なお、S14〜S17においては、それぞれの決定した出力値に応じて累積誤差値K1errおよびK2errを新たに算出して更新する。すなわち、K1″=1の場合にはK1err=K1ttl−255とし、K1″=0の場合にはK1err=K1ttlとする。同様に、K2″=1の場合にはK2err=K2ttl−255とし、K2″=0の場合にはK2err=K2ttlとする。さらに続くS18では、更新された累積誤差値K1errおよびK2errを、所定の拡散マトリクス(例えば、図13に示される拡散マトリクス)に従って、未だ量子化処理が終了していない周辺画素に拡散する。以上で本処理が完了する。なお、ここでは、累積誤差値K1errを周辺画素に拡散するために図13(A)に示される誤差拡散マトリクスを用い、累積誤差値K2errを周辺画素に拡散するために図13(B)に示される誤差拡散マトリクスを用いる。
以上説明した変形例1によれば、第1走査用と第2走査用の多値の画像データの両方に基づいて、第1走査用の多値の画像データの量子化処理も、第2走査用の多値の画像データの量子化処理も実行する。これにより、2つの走査において所望のドット重複率を有する画像を出力することが可能となり、ロバスト性に優れ粒状感も低減された高品位な画像が得られる。
(第2の実施形態の変形例2)
上述の実施形態では、2回の記録走査で同一領域(例えば、画素領域)の記録を完成させる、いわゆる2パス記録の例を説明したが、本実施形態は2パス記録に限定されるものではない。本実施形態は3パス、4パス、8パス等のM(Mは2以上の整数)パス記録に適用可能である。以下、3パス記録を行う場合の画像処理について説明する。
本変形例2では、同一領域に対する走査回数すなわちマルチパス数を3にし、3つのプレーンについてドット重複率を制御する。この場合、図21の色変換/画像データ分配部22で生成される多値の濃度データの数は3つになる。すなわち、入力画像データ(RGB)と3パスに対応した多値の濃度データ(C1M1Y1K1/C3M2Y2K2/C3M3Y3K3)とが対応付けられた3次元LUTを参照することで、入力画像データが多値の濃度データに一括変換される。それに伴い、量子化処理部25は、3つの多値データすなわち第1多値データ〜第3多値データのそれぞれに対し、用意された閾値テーブルを参照することにより得られた閾値を用いて量子化処理を行い、3つの2値データを出力することになる。
図17は、本実施形態の制御部3000が、3回の走査に対応した3プレーンの多値データを量子化する際の処理工程を説明するためのフローチャートである。当該フローチャートにおいて、各種パラメータは図16で説明したものと同じである。但し、第3走査用の、入力多値データK3´、累積誤差値K3err、入力多値データと累積誤差値を合計した値K3ttl、および2値の出力データK3″がパラメータとして追加されている。また、K3″を決定するためにK3ttlと比較するための閾値をK3tableとし、K3tableは、閾値テーブルを参照することによって、K1ttlとK2ttlの中の最大値から定められる値とする。
本処理が開始されると、まず、S31によりK1ttl、K2ttlおよびK3ttlが算出され、更にS32において、閾値テーブルを参照することにより、K1table、K2tableおよびK3tableを取得する。本例で参照する閾値テーブルは、表3に記載の閾値テーブルに対し、K3table用の1列分が増えた形態となっている。そして、K1tableについては、K2ttlおよびK3ttlのうち、より大きい値MAX[K2ttl、K3ttl]を、閾値を選択するための参照値とする。また、K2tableについてはMAX[K1ttl、K3ttl]を、さらに、K3tableについてはMAX[K1ttl、K2ttl]を、それぞれ閾値を選択するための参照値とする。
続くS33〜S35においてK1″の値を決定し、S36〜S38においてK2″を決定し、S39〜S41においてK3″を決定する。いずれも、K1ttl、K2ttlあるいはK3ttlがS32で取得した閾値以上であれば、K1″=1(S35)、K2″=1(S38)またはK3″=1(S41)とする。一方、K1ttl、K2ttlあるいはK3ttlがS32で取得した閾値未満であれば、K1″=0(S34)、K2″=0(S37)またはK3″=0(S40)とする。そして、それぞれの出力値に応じて累積誤差値K1err、K2errおよびK3errを算出して更新する。更にS42において、更新された累積誤差値K1err、K2errおよびK3errを、所定の拡散マトリクスに従って、未だ量子化処理が終了していない周辺画素に拡散する。以上で本処理が終了する。なお、ここでも、累積誤差値K1errを周辺画素に拡散するために図13(A)に示される誤差拡散マトリクスを用い、累積誤差値K2errを周辺画素に拡散するために図13(B)に示される誤差拡散マトリクスを用いる。
以上では、注目する記録走査に対応した多値データを量子化する際に用いる閾値(例えばK1table)を決めるための参照値を、他の1回の記録走査に対応する多値データの最大値(MAX[K2ttl、K3ttl])とした。しかし、本実施形態において参照値はこれに限られるものではない。例えば他の複数の記録走査に対応する多値データの和(K2ttl+K3ttl)を参照値とすることも出来る。どのような方法で参照値を定めるにせよ、その参照値から個々の記録走査の多値データを量子化するための適切な閾値が一義的に得られるような閾値テーブルが用意されていれば、本方法は有効となる。
以上説明した方法を用いれば、3パス用のデータを、濃度領域毎に所望のドット重複率が実現されるように生成することが可能となる。
また、上記方法を応用すれば、記録媒体の同一領域(例えば、画素領域)に対して記録ヘッドをM(Mは2以上の整数)回走査させるマルチパス記録であっても、濃度領域毎に所望のドット重複率が実現されるようにMパスのデータを生成することが出来る。この場合、Mパスのデータ夫々の量子化処理においては、M個の多値データに基づいて閾値が選択される構成となる。
(その他)
上記では、所望のドット重複率を実現するために、2値化(量子化)のための閾値を参照値から選択可能なテーブルを用意する内容で説明したが、量子化の方法は上記に限られるものではない。必ずしも、閾値と比較することによって、記録(1)と非記録(0)が決定される構成でなくてもよい。例えば、2プレーンの場合には、K1″やK2″が K1ttlおよびK2ttlの両方を参照値とすることによって一義的に記録(1)または非記録(0)が決定されるような2次元テーブルを用意することも出来る。また、3プレーンの場合には、K1″、K2″およびK3″のそれぞれが、K1ttl、K2ttlおよびK3ttlの3つを参照値とすることによって一義的に決定されるような3次元テーブルを用意することも出来る。
テーブルの詳細は省略するが、このような多次元のテーブルを利用する場合には、よりシンプルな制御で、且つ、ドット重複率をより自由度の高い状態で制御出来るというメリットが得られる。一方、表3に示したような1次元の閾値テーブルを利用する場合には、より少ないメモリ容量でテーブルを作成することが出来るというメリットが得られる。
更には、全くテーブルを用いずに分岐と演算のみで2値化(量子化)処理を行うことも可能である。この場合、演算に用いられる何らかの係数が、所望のドット重複率を実現する値に設定されていれば、本実施例の効果を得ることが可能となる。このような場合、上述したテーブルを用意する場合に比べて、更にメモリ容量(消費ROMサイズやRAMサイズ)を小さくする事が出来る。
(第3の実施形態)
第1および第2の実施形態では、画像データの入力から記録までの一連の処理を、全て記録解像度と等しい解像度で行う場合について説明した。しかしながら、今日のように記録解像度が益々高まる状況においては、全ての処理を記録解像度と等しい解像度で行っていると、処理のために要するメモリや時間が多大になり、装置の負担が大きくなってしまう。よって、主な画像処理は記録解像度よりも低い(粗い)解像度で行い、256階調の多値の画像データをより低い階調のL(Lは3以上)値の多値データに変換した状態で、記録装置のプリンタエンジンに送信する形態が有用されている。この場合、プリンタエンジンでは、受信した低い階調のL値の多値データを、記録解像度に対応した2値データに変換するためのドットパターン(インデックスパターン)をメモリに備えている。なお、以下では、L値化の一例として3値化を例に挙げて説明するが、Lの値は3に限られるものでなく、L=4、5、9あるいは16等の様々な値を取り得ることはいうまでもない。
図23は、本実施形態における、2回の記録走査によって同一領域(例えば、画素領域)の画像を完成させるマルチパス記録を行う場合の画像処理を説明するためのブロック図である。多値画像データ入力部41〜階調補正処理部43までの処理は、図6や図21で示した多値画像データ入力部〜階調補正処理部と殆ど等しい処理である。すなわち、外部機器から、多値画像データ入力部41によって、RGBの多値の画像データ(256値)が入力される。そして、この入力画像データ(多値のRGBデータ)が、色変換/画像データ分割部42によって、第1走査用の多値濃度データ(CMYK)と第2走査用の多値濃度データ(CMYK)に一括して変換される。この際、本実施形態では、第1および第2の実施形態と同じように、第1の記録走査と第2の記録走査とで分配率に所定の偏りを持たせた状態でCMYKデータを分配(生成)してもよいが、第1および第2の実施形態とは異なり、上記分配率に偏りを持たせずに、均等にCMYKデータを分配(生成)してもよい。その後、階調補正処理部43−1〜2により階調補正が行われ、第1走査用の多値濃度データ(C1´、M1´Y1´、K1´)44−1と第2走査用の多値濃度データ(C2´、M2´Y2´、K2´)44−2が生成される。これ以後の説明はブラック(K)のみについて行う。
量子化処理部45には、第1走査用の多値データ(K1´)44−1と第2走査用の多値データ(K2´)44−2が入力される。量子化処理部45において、第1走査用の多値データ(K1´)と第2走査用の多値データ(K2´)のそれぞれは0〜2の3値に量子化され、第1走査用の量子化データ(K1″)および第2走査用の量子化データ(K2″)が生成される。具体的には、第2の実施形態の量子化処理部25で行う量子化処理と同様、まずK1´およびK2´に周辺の誤差を累積したK1ttlおよびK2ttlを得る。その後、第1走査用の多値データ(K1´)を量子化する際に用いる閾値を、K2ttlに基づいて決定し、第2走査用の多値データ(K2´)を量子化する際に用いる閾値を、K1ttlに基づいて決定する。
本実施形態の場合、3値に量子化するため、2つの閾値すなわち第一の閾値とこれよりも大きな第二の閾値を用いる。そして、注目画素における入力多値データと累積誤差値を合計した値(合計値:K1ttlやK2ttl)と第一および第二の閾値との大小関係によって、出力値は決定される。すなわち、合計値が第二閾値以上の場合には出力値は「2」となり、合計値が第一閾値以上で且つ第二閾値未満の場合には出力値は「1」となり、合計値が第一閾値未満の場合には出力値は「0」となる。
このように、K2ttlに基づいて決定された閾値に基づいて、第1走査用の多値データ(K1´)を量子化して第1走査用の量子化データ(K1″)を得る。同様に、K1ttlに基づいて決定された閾値を用いて、第2走査用の多値データ(K2´)を量子化することで第2走査用の量子化データ(K2″)を得る。第一の閾値と第二の閾値の決定方法としては、2値化の例と同様、第一の閾値テーブルと第二の閾値テーブルを同一の参照値を用いてそれぞれ決定すればよい。
図18は、量子化処理部45における量子化(3値化)処理の結果(K1″およびK2″)と入力値(K1ttlおよびK2ttl)との対応関係を、図22と同様に示した図である。図18において、K1″の値とK2″の値は、1回目の記録走査および2回目の記録走査のそれぞれで注目画素に記録されるドットの数を示している。ここでは、K2ttlを量子化するために用いる第一の閾値を太点線で示し、第二の閾値を太破線で示している。
例えば、K1″とK2″の両方が2である注目画素には、1回目の記録走査と2回目の記録走査で2個ずつドットが記録される。また、K1″が1で且つK2″が2である注目画素には、1回目の記録走査で1個ドットが記録され且つ2回目の記録走査で2個ドットが記録される。また、K1″とK2″の両方が0である注目画素にはドットが記録されない。
再び図23を参照するに、量子化処理部45において量子化された3値の画像データ(量子化データ)K1″およびK2″はプリンタエンジン3004に送信され、インデックス展開処理部46においてインデックス処理が行われる。なお、インデックス展開処理は、L(Lは3以上の整数)値の量子化データを2値化するものであるので、量子化処理の一部としてとらえることができる。このインデックス展開処理については下記で詳しく説明する。
次いで、このインデックス展開処理部46によって、3値の画像データK1″は第1走査用の2値画像データ47−1に変換され、3値の画像データK2″は第1走査用の2値画像データ47−2に変換される。その後、第1走査用の2値画像データ47−1は、第1走査2値デ−タ分割部48−1によって、第1ノズル列の第1走査用2値データ49−1と第2ノズル列の第1走査用2値デ−タ49−2に分割される。同様に、第2走査用の2値画像データ47−2は、第1走査2値デ−タ分割部48−2によって、第1ノズル列の第1走査用2値データ49−3と第2ノズル列の第2走査用2値デ−タ49−4に分割される。この分割処理は、第1の実施形態と同様、マスクパターンを利用して実行される。そして、これら4種類の2値データ(49−1〜4)は、それぞれ、対応するバッファ(50−1〜4)に格納される。その後、個々のバッファに2値データが所定量格納されると、対応するバッファに格納されているデータに従って記録動作が実行される。
図19は、本実施形態におけるインデックス展開処理およびインデックスパターン(ドットパターン)の例を説明するための図である。本実施形態のインデックス展開処理部46では、1画素に対応する3値の画像データ(K1″、K2″)が、2サブ画素×2サブ画素に対応する2値の画像データ(ドットパターン)に変換される。詳しくは、0〜2のいずれかの値を有する3値の画像データK1″は、第1走査用のドットパターンに変換される。同様に、0〜2のいずれかの値を有する3値の画像データK2″は、第2走査用のドットパターンに変換される。そして、これら第1走査用のドットパターンと第2走査用のドットパターンを重ね合わせたパターン(図中の最も右側に示される「記録媒体上でのドットパターン」)が画素に記録されることになる。なお、第1および第2の走査用のドットパターンに関して、斜線部分はサブ画素へのドットの記録を示すデータ(「1」のデータ)を意味しており、白部分はサブ画素へのドットの非記録を示すデータ(「0」のデータ)を意味している。また、記録媒体上でのドットパターンに関し、黒部分はサブ画素に2ドット記録されることを意味し、斜線部分はサブ画素に1ドット記録されることを意味し、白部分はサブ画素にドットが記録されないことを意味している。
ここで、画素に対応する3値以上の画像データをm×nのサブ画素に対応する2値のドットパターンに変換するような画像処理を採用した場合の、ドット重複率について図19を用いて説明する。このような場合の「ドット重複率」とは、複数のサブ画素で構成される1画素領域に記録されるべき総ドット数のうち、異なる走査(あるいは異なる記録素子群)で画素領域内の同じサブ画素位置に重複して記録されるドット数の割合を指す。具体的に説明すると、図19を参照するに、K1″とK2″の両方が0の場合、第1記録走査でも第2記録走査でもドットは記録されずドット重複率は0である。K1″とK2″のどちらか一方が0の場合、一方の走査でだけドットが記録されるので、ドット重複率は0%のままである。K1″とK2″の両方が1の場合、2サブ画素×2サブ画素の左上のサブ画素に2つのドットが重複して記録されるため、ドット重複率は100%(=2÷2×100)となる。また、どちらか一方が1で他方が2の場合、2サブ画素×2サブ画素のうち左下のサブ画素に2つのドットが重複して記録され、左上のサブ画素に1ドットだけ記録されるため、ドット重複率は67%(=2÷3×100)となる。更に、K1″とK2″の両方が2の場合、サブ画素でドットが重ならないのでドット重複率は0%となる。つまり、図19に示したような各レベルに一対一で対応するインデックスパターン(ドットパターン)を予め用意しておけば、図18に示した量子化処理でK1″とK2″の組み合わせが決まることにより、画素領域のドットの重複率も一義的に定まることになる。
次に、本実施形態におけるドット重複率と濃度領域との関係について図19を用いて説明する。図19の例では、1画素に最大4ドットまで記録可能となっている。従って、記録率100%とは、1画素内に4ドットが記録された状態をいう。図19の例では、K1″=0でK2″=0の場合は記録率0%、K1″=1(or0)でK2″=1(or0)の場合は記録率25%、K1″=1でK2″=1の場合は記録率50%となっている。また、K1″=1(or2)でK2″=2(or1)の場合は記録率75%、K1″=2でK2″=2の場合は記録率100%となっている。そして、記録率0および25%の低濃度領域ではドット重複率が0%となっており、記録率50%の中間濃度領域ではドット重複率が100%となっており、記録率75%および100%の高濃度領域では夫々ドット重複率が67%および100%となっている。このように本実施形態でも、濃度ムラが最も懸念される中間濃度領域におけるドット重複率をその他の濃度領域(低濃度領域や高濃度領域)よりも高くしている。
以上説明した本実施形態によれば、図18に示したような量子化方法と、図19に示したドットパターンを利用することにより、インデックス展開処理を利用しながらも、所望のドット重複率を有する画像を出力することが可能となる。結果、ロバスト性に優れ粒状感も低減された高品位な画像を、高速且つ高解像度に出力することが可能となる。
(第4の実施形態)
第1〜第3の実施形態では、入力画像データに基づいて複数回の相対走査に対応した複数の多値画像データを生成し、これら複数の多値画像データに対して特徴的な量子化処理を行う場合について説明したが、本発明はこれに限られるものではない。第1〜第3の実施形態における複数回の相対走査を複数の記録素子群に置き換えることも可能である。
すなわち、上記では、ノズル列間の記録位置ずれの方が、記録走査間の記録位置ずれよりも小さい傾向にある、と説明した。しかし、場合によっては、ノズル列間の記録位置ずれ量と記録走査間の記録位置ずれ量の大小関係が、上述した関係と逆転することも有り得る。例えば、図5に示したガイドレール5009および5010が湾曲し、キャリッジ5008の傾きが走査中に変動してしまうような場合には、ノズル列間の記録位置ずれの方が、記録走査間の記録位置ずれよりも大きくなり得る。そして、このような場合、ノズル列間にだけドット重複率制御を適用し、走査間にはマスク分割処理を適用する形態が考えられる。
そこで、本実施形態では、入力画像データ(RGB)を複数の記録走査ではなく、複数の記録素子群に対応した多値の濃度データ(CMYK)に変換する。その後、上述した実施形態と同様の階調補正処理および量子化処理を施し、これにより、複数の記録素子群に対応した2値画像データ(例えば、K1″、K2″)を得る。その後、これら2値画像データ(K1″、K2″)を、それぞれ、Mパスに対応したM種のマスクによって分割する。これにより、Mパス分の複数の記録素子群に対応した2値の画像データを得る。
(その他の実施形態)
上記の実施形態では、同色のインクを吐出するノズル列(記録素子群)を2列ずつ配備した記録ヘッドを用いる例について説明したが、本発明は、同色インクを吐出するノズル列(記録素子群)の数は2に限られるものではない。同色インクを吐出するノズル列(記録素子群)の数は1、4、8等のN(Nは1以上の整数)であればよい。また、上記の殆どの本実施形態では、2回の相対移動で同一領域(例えば、画素領域)の記録を完成させる、いわゆる2パス記録の例を説明したが、本発明は2パス記録に限定されるものではない。本発明は、3パス、4パス、8パス等のM(Mは2以上の整数)パス記録について広く適用可能である。
N個のノズル列でMパス記録を行う場合、まず、入力画像データ(RGB)から、M回の相対移動に対応したM組の多値濃度データを生成する。次いで、これらM組の多値濃度データを夫々量子化してM回の相対移動に対応したM組の量子化データを生成する。その後、Nが1の場合にはマスクパターンによるデータ分割は行われず、上記M回の相対移動に対応した量子化データに従って、M回の相対移動中に、1つのノズル列により同一領域の画像を記録する。一方、Nが2以上の場合には、上記M回の相対移動に対応したM組の量子化データを、それぞれ、互いに補完の関係を有するN個のマスクによってN分割することで、N個のノズル列に対応したM回の相対移動用の量子化データを生成する。そして、これら量子化データに従って、N個のノズル列によるM回の相対移動中に、同一領域の画像を記録する。
以上では、Mパス記録の場合に、入力画像データ(RGB)から、M回の相対移動に対応したM組の多値の濃度データ(Mセット分のCMYK)が生成される場合について説明したが、本発明はこれに限定されるものではない。3パス以上のMパス記録モードでは、M組の濃度データを生成することは必須ではなく、Mよりも少ないP(Nは2以上の整数)組の濃度データを生成する形態であってもよい。この場合、まず、Mよりも少ないP組の画像データを生成し、その後、P組の濃度データを量子化してP組の量子化データを得る。その後、P組の量子化データのうちの少なくとも1組の量子化データを分割してMパス分のM組の量子化データを得るのである。
以下、より具体的に3パスモードの一例について説明する。まず、入力画像データ(RGBデータ)から、第1および第3の相対移動に共通した第1の濃度データと、第2の相対移動に対応した第2の濃度とを生成する。次いで、第1の濃度データに量子化処理を行うことで量子化データAを得て、この量子化データAをマスクパターンにより分割することで第1の相対移動用の量子化データと第3の相対移動用の量子化データを得る。また、第2の濃度データに量子化処理を行うことで第2の相対移動用の量子化データを得る。これにより、3回の相対移動分の量子化データ(2値データ)を得ることができる。
次に、4パスモードの一例について説明する。まず、入力画像データ(RGBデータ)に基づいて、第1および第2の相対移動に共通に対応した第1の濃度データと、第3および第4の相対移動に共通に対応した第2の濃度データとを生成する。次いで、第1の濃度データに量子化処理を行うことで量子化データBを得て、この量子化データBをマスクパターンにより分割することで第1の相対移動用の量子化データと第2の相対移動用の量子化データを得る。また、第2の濃度データに量子化処理を行うことで量子化データCを得て、この量子化データCをマスクパターンにより分割することで第3の相対移動用の量子化データと第4の相対移動用の量子化データを得る。これにより、4回の相対移動分の量子化データ(2値データ)を得ることができる。
以上から明らかなように、本発明のMパス記録モードでは、前述したようにMよりも少ないP組の濃度データを生成してもよいし、上述した第1の実施形態のようにM組の濃度データを生成してもよい。要するに、本発明では、入力画像データから、少なくとも1回の相対移動に対応した第1の濃度データと、他の少なくとも1回の相対移動に対応した第2の濃度データとを生成すればよい。なお、ここで説明したMパスデータ生成処理を、N記録素子群データ生成処理に応用できることは、第4の実施形態からも明らかである。すなわち、同色インクを吐出するN個の記録素子群を用いる場合にも、Nよりも少ないP組の濃度データを生成してもよいし、上述した第4の実施形態のようにN組の濃度データを生成してもよい。
また、上記実施形態では、CMYKの4色のインクを用いる形態について説明したが、使用可能なインク色の種類数はこれに限られるものではない。上記4色のインクに、淡シアン(Lc)や淡マゼンタインク(Lm)を加えたり、レッドインク(R)やブルーインク(B)等の特色インクを加えてもよい。また、上記実施形態では、複数色のインクが使用されるカラー記録モードを実行する場合について説明したが、本発明は単色インクが使用されるモノカラーモードにも適用可能である。この場合、入力画像データ(RGB)から、複数回の相対移動に対応した複数の単色の濃度データが生成される。更には、本発明は、カラープリンタのみならず、モノクロプリンタにも適用可能である。
更に、上記実施形態では、中間濃度の画素領域におけるドット重複率を低濃度の画素領域および高濃度の画素領域におけるドット重複率よりも高くするように、色変換手段による変換処理および量子化手段による量子化処理の少なくとも一方を実行する構成について説明した。しかしながら、本発明は、このような構成に限られるものではない。本発明は、中間濃度の画素領域におけるドット重複率を低濃度の画素領域および高濃度の画素領域におけるドット重複率よりも高くする点に特徴があり、この特徴こそが、今まで未解決であった課題を解決する策に相当する。よって、色変換手段および量子化手段を用いることは必須ではない。但し、中間濃度の画素領域におけるドット重複率を低濃度の画素領域および高濃度の画素領域におけるドット重複率よりも高くするために、中間濃度の画素領域に対応する濃度データ値の比の偏りを低濃度の画素領域および高濃度の画素領域に対応する濃度データ値の比の偏りよりも小さくするように上記変換処理を実行することは、好ましい形態の1つに相当する。また、中間濃度の画素領域におけるドット重複率が低濃度の画素領域および高濃度の画素領域におけるドット重複率よりも高くなるように、他の走査に対応した濃度データに基づいてその走査に対応した濃度データに量子化処理を行うことも、好ましい形態の1つに相当する。
また、上記実施形態では、図3〜図4の電気ブロック図を有する記録装置を用いる場合について説明したが、本発明はこのような構成に限定されるものではない。例えばプリンタ制御部とプリンタエンジン部は、それぞれ独立のモジュールとして説明したが、制御部とプリンタエンジン部で同一のASIC・CPU・ROM・RAMを共用しても良い。また、図では制御部とプリンタエンジン部が汎用のI/FであるUSBやIEEE1284によって接続されているが、本発明はいずれの接続方法を用いても構わない。またPCからの接続が、USB HUBを介して直接プリンタエンジン部に接続された形式を取っているが、制御部が画像データを中継しても良い。更には必要に応じて制御部がPCからの画像データに対して適宜画像処理を行ってからプリンタエンジン部に送信する形を取っても良い。
以上の実施形態では、量子化までの画像処理を制御部3000で、それ以降の処理をプリンタエンジン3004で実行する構成について説明したが、本発明はこのような構成に限定されるものでもない。上述したような一連の処理が実行されるのであれば、ハードウエア、ソフトウエアを問わず、いずれの処理手段によって実行される形態であっても本発明の範疇である。
以上の実施形態では、画像処理機能を有する制御部3000を備えた記録装置(画像形成装置)を例に、本発明の特徴的な画像処理を実行する画像処理装置を説明してきたが、本発明はこのような構成に限定されるものではない。本発明の特徴的な画像処理が、プリンタドライバがインストールされたホスト装置(例えば、図3のPC3010)で実行され、量子化処理後あるいは分割処理後の画像データが記録装置に入力されるような構成であっても構わない。このような場合、記録装置に接続されるホスト装置(外部機器)が、本発明の画像処理装置に該当する。
本発明は、上述した画像処理の機能を実現するためのコンピュータ可読プログラムを構成するプログラムコード、またはそれを記憶した記憶媒体によっても実現される。この場合、ホスト装置や画像形成装置のコンピュータ(またはCPUやMPU)が上記プログラムコードを読出し実行することによって上述した画像処理が実現されることになる。このように、上述した画像処理をコンピュータに実行させるための、コンピュータにより読み取り可能なプログラム、あるいは、そのプログラムを記憶した記憶媒体も本発明に含まれる。
プログラムコードを供給するための記憶媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、ROMなどを用いることができる。
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOSが実際の処理の一部または全部を行うものであってもよい。更に、プログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、CPUなどが実際の処理の一部または全部を行うものであってもよい。