(57)【特許請求の範囲】
【請求項１】
イエロ、マゼンタ、シアン、及びブラックの濃度成分を有する多値画像データに誤差拡散処理を施して前記誤差拡散処理の結果を出力する画像処理装置であって、
注目画素のシアン濃度成分の濃度値とマゼンタ濃度成分の濃度値のそれぞれに、前記注目画素のシアン濃度成分の濃度値とマゼンタ濃度成分の濃度値のそれぞれに対して拡散された誤差値を加算する加算手段と、
前記加算手段により、前記誤差値が加算された前記シアン濃度成分の濃度値と前記誤差値が加算された前記マゼンタ濃度成分の濃度値との和及び差を演算する演算手段と、
前記和に基づく第１の関数を用いて前記和の値をＭ値化するＭ値化手段と、
前記差に基づく第２の関数を用いて前記差の値をＮ値化するＮ値化手段と、
前記Ｍ値化手段によるＭ値化の結果と、前記Ｎ値化手段によるＮ値化の結果とを引数として用い、誤差拡散処理の結果が格納されている２次元テーブルを参照することにより、前記注目画素のシアン濃度成分とマゼンタ濃度成分夫々についての多値の誤差拡散処理の結果を求める処理手段とを有することを特徴とする画像処理装置。
【請求項２】
Ｍ及びＮは夫々、３以上の正の整数であることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記Ｍ値化手段において用いる前記第１の関数は、前記和の値とＭ値との間の関係を表す第１のテーブルで表現され、
前記Ｎ値化手段において用いる前記第２の関数は、前記差の値とＮ値との間の関係を表す第２のテーブルで表現されることを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記２次元テーブルは、前記シアン及び前記マゼンタ濃度成分に対して共通のテーブルであることを特徴とする請求項１に記載の画像処理装置。
【請求項５】
前記２次元テーブルは、前記シアン及び前記マゼンタ濃度成分に対して別々のテーブルであることを特徴とする請求項１に記載の画像処理装置。
【請求項６】
イエロ、マゼンタ、シアン、及びブラックの濃度成分を有する多値画像データに誤差拡散処理を施して前記誤差拡散処理の結果を出力する画像処理方法であって、
注目画素のシアン濃度成分の濃度値とマゼンタ濃度成分の濃度値のそれぞれに、前記注目画素のシアン濃度成分の濃度値とマゼンタ濃度成分の濃度値のそれぞれに対して拡散された誤差値を加算する加算工程と、
前記加算工程において、前記誤差値が加算された前記シアン濃度成分の濃度値と前記誤差値が加算された前記マゼンタ濃度成分の濃度値との和及び差を演算する演算工程と、
前記和に基づく第１の関数を用いて前記和の値をＭ値化するＭ値化工程と、
前記差に基づく第２の関数を用いて前記差の値をＮ値化するＮ値化工程と、
前記Ｍ値化工程におけるＭ値化の結果と、前記Ｎ値化工程におけるＮ値化の結果とを引数として用い、誤差拡散処理の結果が格納されている２次元テーブルを参照することにより、前記注目画素のシアン濃度成分とマゼンタ濃度成分夫々についての多値の誤差拡散処理の結果を求める処理工程とを有することを特徴とする画像処理方法。
【請求項７】
請求項６に記載の画像処理方法を実行するプログラムを格納したコンピュータ装置読み取り可能な記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は画像処理装置及び画像処理方法に関し、特に、多値画像濃度データに誤差拡散処理を施して擬似中間調処理を行う画像処理装置及び画像処理方法に関する。
【０００２】
【従来の技術】
従来、多値画像を２値で表現する疑似階調処理として誤差拡散法が知られている("An Adaptive Algorithm for Spatial Gray Scale" in society for Information Display 1975 Symposium Digest of Technical Papers, 1975, 36)。この方法は、着目画素をP、その濃度をv、着目画素Pの周辺画素P0、P1、P2、P3の濃度をそれぞれv0、v1、v2、v3、２値化のための閾値をTとすると、着目画素Pにおける2値化誤差Eを周辺画素P0、P1、P2、P3に経験的に求めた重み係数W0、W1、W2、W3で振り分けてマクロ的に平均濃度を元画像の濃度と等しくする方法である。
【０００３】
例えば、出力２値データをoとすると
v ≧ T  ならば   o = 1, E = v - Vmax;      ．．．．（１）
v ＜ T  ならば   o = 0, E = v - Vmin;
( ただし、Vmax:最大濃度、Vmin:最小濃度 )
v0 = v0 + E × W0;            ．．．．（２）
v1 = v1 + E × W1;            ．．．．（３）
v2 = v2 + E × W2;            ．．．．（４）
v3 = v3 + E × W3;            ．．．．（５）
( 重み係数の例: W0 = 7/16, W1 = 1/16, W2 = 5/16, W3 = 3/16 )
と表すことができる。
【０００４】
従来、例えば、カラーインクジェットプリンタ等、シアン（Ｃ）、マゼンタ（Ｍ）、イエロ（Ｙ）、ブラック（Ｋ）４色のインクを用いて多値画像を出力する際には、各色独立に誤差拡散法等を用いて疑似階調処理を行っていたために、１色について見た場合には視覚特性が優れていても、２色以上が重なると必ずしも良好な視覚特性が得られなかった。
【０００５】
この問題を改良するために、特開平８−２７９９２０号公報および特開平１１−１０９１８号公報等においては、２色以上を組み合わせて誤差拡散法を用いることにより、２色以上が重なり合う場合においても良好な視覚特性の得られる擬似中間調処理方法が開示されている。
【０００６】
また、特開平９−１３９８４１号公報においては、２色以上を独立に疑似中階調処理をしたのちに、入力値の合計により出力値の修正を行い、同様な改良を行う方法が開示されている。
【０００７】
特に、カラー画像の中濃度領域の粒状感を低減するのに、シアン成分（Ｃ）とマゼンタ成分（Ｍ）のドットが互いに重なり合わない様に画像形成をする事が効果的であり、そのために以下の手法が用いられている。
【０００８】
図１２は従来のインクジェット方式に従う画像形成制御を示す図である。
【０００９】
ここでは、画像データは各画素各濃度成分（ＹＭＣＫ）が８ビット（階調値が０〜２５５）の多値データで表現されるとして説明する。
【００１０】
多値カラー画像の注目画素のＣ成分とＭ成分の濃度Ｃt、Ｍtは夫々、原画像のＣ成分とＭ成分の濃度値を夫々、Ｃ、Ｍとすれば、
Ｃt ＝ Ｃ  ＋  Ｃerr
Ｍt ＝ Ｍ  ＋  Ｍerr
と表される。ここで、ＣerrとＭerrとはＣ成分とＭ成分夫々について注目画素に対して誤差拡散された値である。
【００１１】
図１２に示されるように、Ｃ、Ｍの画像形成に関し、注目画素のＣ成分とＭ成分の濃度に従って、４通りの画像形成制御を行う。
１．（Ｃt＋Ｍt）の和が閾値（Threshold 1）以下、即ち、図１２の領域（１）に属する場合には、ＣインクもＭインクも用いてドット記録はしない。
２．（Ｃt＋Ｍt）の和が閾値（Threshold 1）を越えており、かつ、（Ｃt＋Ｍt）の和が別の閾値（Threshold 2）未満であり、かつ、Ｃt＞Ｍtである、即ち、図１２の領域（２）に属する場合には、Ｃインクのみでドット記録を行う。
３．（Ｃt＋Ｍt）の和が閾値（Threshold 1）を越えており、かつ、（Ｃt＋Ｍt）の和が別の閾値（Threshold 2）未満であり、かつ、Ｃt≦Ｍtである、即ち、図１２の領域（３）に属する場合には、Ｍインクのみでドット記録を行う。
４．（Ｃt＋Ｍt）の和が別の閾値（Threshold 2）以上である、即ち、図１２の領域（４）に属する場合には、ＣインクとＭインクとを用いてドット記録を行う。
【００１２】
なお、ここで、Threshold 1＜Threshold 2である。
【００１３】
【発明が解決しようとする課題】
しかしながら上記従来例のように、入力された多値画像データを各色成分毎にニ２値化して擬似中間調処理である誤差拡散処理を実行するに過ぎない。一方、最近のインクジェット方式によるカラー画像記録技術の進歩に伴って、ドロップ変調や同系色の濃淡インクの使用により、インクジェットプリンタが多値画像データを扱ってカラー画像記録を行うことが可能になってきた。
【００１４】
従って、このようなインクジェットプリンタに対応した多値の誤差拡散処理を適用することが望まれている。しかしながら、多値の誤差拡散処理では閾値条件処理が複雑になり、その処理を実際の装置に適用すると記録速度の低下が懸念される。従って、多値画像データを扱うことが可能なインクジェットプリンタに多値の誤差拡散処理を適用する際には、その処理速度を高速に維持することのできる処理方法の適用が望まれている。
【００１５】
本発明は上記従来例に鑑みてなされたもので、多値の誤差拡散処理を適用しつつ高速に高品位な画像を形成することができる画像処理装置及び画像処理方法を提供することを目的としている。
【００１６】
【課題を解決するための手段】
上記目的を達成するために本発明の画像処理装置は、以下のような構成からなる。
【００１７】
即ち、イエロ、マゼンタ、シアン、及びブラックの濃度成分を有する多値画像データに誤差拡散処理を施して前記誤差拡散処理の結果を出力する画像処理装置であって、注目画素のシアン濃度成分の濃度値とマゼンタ濃度成分の濃度値のそれぞれに、前記注目画素のシアン濃度成分の濃度値とマゼンタ濃度成分の濃度値のそれぞれに対して拡散された誤差値を加算する加算手段と、前記加算手段により、前記誤差値が加算された前記シアン濃度成分の濃度値と前記誤差値が加算された前記マゼンタ濃度成分の濃度値との和及び差を演算する演算手段と、前記和に基づく第１の関数を用いて前記和の値をＭ値化するＭ値化手段と、前記差に基づく第２の関数を用いて前記差の値をＮ値化するＮ値化手段と、前記Ｍ値化手段によるＭ値化の結果と、前記Ｎ値化手段によるＮ値化の結果とを引数として用い、誤差拡散処理の結果が格納されている２次元テーブルを参照することにより、前記注目画素のシアン濃度成分とマゼンタ濃度成分夫々についての多値の誤差拡散処理の結果を求める処理手段とを有することを特徴とする画像処理装置を備える。
【００２７】
【発明の実施の形態】
以下添付図面を参照して本発明の好適な実施形態について詳細に説明する。
【００２８】
［共通実施形態］
まず、以下のいくつかの実施形態において共通に用いられる情報処理システムの全体概要、ハードウェア構成の概要、ソフトウェア構成の概要、及び、画像処理の概要について説明する。
【００２９】
図１は、本発明の共通実施形態に係る情報処理システムの概略構成を示すブロック図である。
【００３０】
図１に示されているように、この情報処理システムは、パソコン等で構成されるホスト装置５１と、プリンタ等で構成される画像出力装置５２とを備え、これらの間が双方向インタフェース５３を介して接続されている。そして、ホスト装置５１のメモリには、本発明を適用したドライバソフトウェア５４がロードされている。
【００３１】
１．ホスト装置５１と画像出力装置５２のハードウェア構成
次に、ホスト装置５１と画像出力装置５２のハードウェア構成について説明する。
【００３２】
図２は情報処理システムを構成するホスト装置５１と画像出力装置５２のハードウェア構成概要を示すブロック図である。
【００３３】
図２に示されているように、ホスト装置５１は処理部１０００とこれに周辺装置を含めてホスト装置全体を構成している。また、画像出力装置５２は、記録ヘッド３０１０、記録ヘッド３０１０を搬送するキャリアを駆動するキャリア（ＣＲ）モータ３０１１、用紙を搬送する搬送モータ３０１２などの駆動部と、制御回路部３００３とから構成されている。
【００３４】
ホスト装置５１の処理部１０００は、制御プログラムに従ってホスト装置の全体制御を司るＭＰＵ１００１、システム構成要素を互いに接続するバス１００２、ＭＰＵ１００１が実行するプログラムやデータ等を一時記憶するＤＲＡＭ１００３、システムバスとメモリバス、ＭＰＵ１００１を接続するブリッジ１００４、例えば、ＣＲＴなどの表示装置２００１にグラフィック情報を表示するための制御機能を備えたグラフィックアダプタ１００５を含んでいる。
【００３５】
さらに、処理部１０００はＨＤＤ装置２００２とのインタフェースを司るＨＤＤコントローラ１００６、キーボード２００３とのインタフェースを司るキーボードコントローラ１００７、ＩＥＥＥ１２８４規格に従って画像出力装置５２との間の通信を司る、パラレルインタフェースである通信Ｉ／Ｆ１００８を備えている。
【００３６】
さらに、処理部１０００には、グラフィックアダプタ１００５を介して操作者にグラフィック情報等を表示する表示装置２００１（この例では、ＣＲＴ）が接続されている。更に、プログラムやデータが格納された大容量記憶装置であるハードディスクドライブ（ＨＤＤ）装置２００２、キーボード２００３が夫々、コントローラを介して接続されている。
【００３７】
一方、画像出力装置５２の制御回路部３００３は、制御プログラム実行機能と周辺装置制御機能とを兼ね備えた、画像出力装置本体５２の全体制御を司るＭＣＵ３００１、制御回路部内部の各構成要素を接続するシステムバス３００２、記録データの記録ヘッド３０１０への供給、メモリアドレスデコーディング、キャリアモータへの制御パルス発生機構等を制御回路として内部に納めたゲートアレイ（Ｇ．Ａ．）を備えている。
【００３８】
また、制御回路部３００３は、ＭＣＵ３００１が実行する制御プログラムやホスト印刷情報等を格納するＲＯＭ３００４、各種データ（画像記録情報やヘッドに供給される記録データ等）を保存するＤＲＡＭ３００５、ＩＥＥＥ１２８４規格に従いホスト装置５１との間の通信を司るパラレルインタフェースである通信Ｉ／Ｆ３００６、ゲートアレイ３００３から出力されたヘッド記録信号に基づき、記録ヘッド３０１０を駆動する電気信号に変換するヘッドドライバ３００７を備えている。
【００３９】
さらに、制御回路部３００３は、ゲートアレイ３００３から出力されるキャリアモータ制御パルスを実際にキャリア（ＣＲ）モータ３０１１を駆動する電気信号に変換するＣＲモータドライバ３００８、ＭＣＵ３００１から出力された搬送モータ制御パルスを、実際に搬送モータを駆動する電気信号に変換するＬＦモータドライバ３００９を備えている。
【００４０】
次に画像出力装置５２の具体的構成について説明する。
【００４１】
図３は、画像出力装置５２の代表的な実施形態であるインクジェットプリンタＩＪＲＡの構成の概要を示す外観斜視図である。
【００４２】
図３において、駆動モータ５０１３の正逆回転に連動して駆動力伝達ギア５００９〜５０１１を介して回転するリードスクリュー５００５の螺旋溝５００４に対して係合するキャリッジＨＣはピン（不図示）を有し、ガイドレール５００３に支持されて矢印ａ，ｂ方向を往復移動する。キャリッジＨＣには、記録ヘッドＩＪＨとインクタンクＩＴとを内蔵した一体型インクジェットカートリッジＩＪＣが搭載されている。５００２は紙押え板であり、キャリッジＨＣの移動方向にわたって記録用紙Ｐをプラテン５０００に対して押圧する。５００７，５００８はフォトカプラで、キャリッジのレバー５００６のこの域での存在を確認して、モータ５０１３の回転方向切り換え等を行うためのホームポジション検知器である。５０１６は記録ヘッドＩＪＨの前面をキャップするキャップ部材５０２２を支持する部材で、５０１５はこのキャップ内を吸引する吸引器で、キャップ内開口５０２３を介して記録ヘッドの吸引回復を行う。５０１７はクリーニングブレードで、５０１９はこのブレードを前後方向に移動可能にする部材であり、本体支持板５０１８にこれらが支持されている。ブレードは、この形態でなく周知のクリーニングブレードが本例に適用できることは言うまでもない。又、５０２１は、吸引回復の吸引を開始するためのレバーで、キャリッジと係合するカム５０２０の移動に伴って移動し、駆動モータからの駆動力がクラッチ切り換え等の公知の伝達機構で移動制御される。
【００４３】
これらのキャッピング、クリーニング、吸引回復は、キャリッジがホームポジション側の領域に来た時にリードスクリュー５００５の作用によってそれらの対応位置で所望の処理が行えるように構成されているが、周知のタイミングで所望の動作を行うようにすれば、本例にはいずれも適用できる。
【００４４】
なお、上述のように、インクタンクＩＴと記録ヘッドＩＪＨとは一体的に形成されて交換可能なインクカートリッジＩＪＣを構成しても良いが、これらインクタンクＩＴと記録ヘッドＩＪＨとを分離可能に構成して、インクがなくなったときにインクタンクＩＴだけを交換できるようにしても良い。
【００４５】
また、インクジェットプリンタＩＪＲＡの内部には、図２において言及した制御回路部が内蔵されている。
【００４６】
記録ヘッドＩＪＨは、ＹＭＣＫ各成分の多値濃度データに基づいて、少なくともイエロ（Ｙ）、マゼンタ（Ｍ）、シアン（Ｃ）、ブラック（Ｋ）の４つのインクを用いてカラー画像を記録することができる。
【００４７】
２．ソフトウェア構成の概要及び画像処理の概要
図４は、上述した情報処理システムで用いられるソフトウェアの構造を示すブロック図である。
【００４８】
図４から分かるように、画像出力装置５２に対して記録データを出力するためには、ホスト装置５２において、階層構造をしたアプリケーションソフトウェアとオペレーティングシステムとドライバソフトの３つが互いに連携して画像処理を行う。
【００４９】
この実施形態では、画像出力装置夫々に個別に依存する部分は、装置固有描画機能３１−１、３１−２、……、３１−ｎが扱い、画像処理装置の個別の実装に依存するプログラム部品を共通的に処理を行なうことができるプログラムと分離し、かつドライバソフトウェアの根幹処理部分を個別の画像出力装置から独立した構造にしている。
【００５０】
量子化量に変換された線分割化画像は、色特性変換３３や中間調処理（ハーフトーニング）３４などの画像処理が施され、さらにプリントコマンド生成３５において、データ圧縮／コマンドを付加した上で作成されたデータをＯＳ（オペレーティングシステム）に用意されたスプーラ２２を通じて画像出力装置５２へ渡すことになる。
【００５１】
図４に示すように、アプリケーションソフトウェアの階層には、アプリケーションソフトウェア１１が設けられ、ＯＳ（オペレーティングシステム）の階層には、アプリケーションソフトウェア１１からの描画命令を受け取る描画処理インタフェース２１と生成した画像データをインクジェットプリンタ等の画像出力装置５２へ渡すスプーラ２２とが設けられている。
【００５２】
そして、ドライバソフトウェアの階層には、画像出力装置固有の表現形式が記憶された装置固有描画機能３１−１、３１−２、……、３１−ｎと、ＯＳからの線分割化画像情報を受け取りドライバ内部の表色系からデバイス固有の表色系への変換を行う色特性変換部３３と、デバイスの各画素の状態を表す量子化量への変換を行うハーフトーニング部３４と、ハーフトーニングが施された画像データを画像出力装置５２へのコマンドを付加してスプーラ２２に出力するプリントコマンド生成部３５とが設けられている。
【００５３】
次に、図４と共に図５の画像処理概要を示すフローチャートを参照して、アプリケーションソフトウェアが画像出力装置５２へ画像を出力する場合について、具体的に説明する。
【００５４】
アプリケーションソフトウェア１１が画像出力装置５２へ画像を出力する場合は、まず、アプリケーションソフトウェア１１がＯＳの描画処理インタフェース２１を通じて、文字・線分・図形・ビットマップなどの描画命令を発行する（ステップＳ１）。
【００５５】
画面／紙面を構成する描画命令が完結すると（ステップＳ２）、ＯＳは、ドライバソフトウェア内部の装置固有描画機能３１−１，３１−２，…，３１−ｎを呼び出しつつ、各描画命令を、ＯＳの内部形式から装置固有の表現形式（各描画単位を線分割化したもの）に変換し（ステップＳ３）、しかる後に画面／紙面を線分割化した画像情報としてドライバソフトウェアへ渡す（ステップＳ４）。
【００５６】
ドライバソフトウェア内部では、色特性変換部３３によってデバイスの色特性を補正すると共に、ドライバソフトウェア内部の表色系からデバイス固有の表色系への変換を行い（ステップＳ５）、さらにハーフトーニング部３４によってデバイスの各画素の状態を表す量子化量への変換（ハーフトーニング）を行う（ステップＳ６）。なお、ここでの量子化量への変換とは、画像出力装置５２の処理するデータの形態に対応し、例えば、画像出力装置による記録が２値データに基づき行われる場合は、２値化し、画像出力装置による記録が多値データ（濃淡インクによる記録、大小インクによる記録を行うため）に基づき行われる場合は、多値化されることである。
【００５７】
このハーフトーニングについての詳細は、後述する各実施形態において説明する。
【００５８】
プリントコマンド生成モジュール３５は、いずれも量子化（２値化、多値化）された画像データを受け取る（ステップＳ７）。プリントコマンド生成モジュール３５は、量子化された画像情報を相異なる方法にて画像出力装置の特性に合わせて加工する。更にこのモジュールともにデータ圧縮、コマンドヘッダの付加を行う（ステップＳ８）。
【００５９】
その後、プリントコマンド生成モジュール３５は、ＯＳ内部に設けられたスプーラ２２に生成したデータを受け渡し（ステップＳ９）、画像出力装置５２へのデータ出力を行う（ステップＳ１０）。
【００６０】
なお、この実施形態では、図５のフローチャートに従ったプログラムをホスト装置５１内の記憶装置に格納し動作することにより、上述の制御方法を実現させることが可能となる。
【００６１】
以上のように、ドライバソフトウェアの根幹処理部分を個別の画像出力装置から独立した構造にしているので、ドライバソフトウェアと画像出力装置間のデータ処理の分担を、ドライバソフトウェアの構成を損なうことなく柔軟に変更することが可能になり、ソフトウェアの保守及び管理面で有利となる。
【００６２】
次に、以上説明した共通実施形態に従うシステムを用いたいくつかの実施形態について説明する。以下の各実施形態では、ハーフトーニング部３４によって実行される誤差拡散処理の詳細について説明する。
【００６３】
なお、以下に説明する誤差拡散処理は、各画素がイエロ（Ｙ）成分、マゼンタ（Ｍ）成分、シアン（Ｃ）成分、ブラック（Ｋ）成分からなる濃度データであり、各成分は８ビット（２５６階調表現）で構成される多値の画像データを用いることとする。
【００６４】
また、インクジェットプリンタＩＪＲＡはドロップ変調或いは／及び同色系の濃淡インク（例えば、淡シアンインク、濃シアンインク、淡マゼンタインク、濃マゼンタインク）を用いることによって多値化対応可能であるとする。
【００６５】
[第１実施形態]
ここでは、従来例とは異なり、誤差拡散処理によって多値濃度データを３値化する場合について説明する。この実施形態に従う誤差拡散処理の対象となるのは、Ｃ成分とＭ成分の多値画像データである。
【００６６】
図６はこの実施形態に従う画像形成制御について示すフローチャートである。
【００６７】
以下、このフローチャートを参照してこの実施形態の特徴を説明する。
【００６８】
まず、ステップＳ１０では従来例のように注目画素のＣ成分とＭ成分夫々の濃度値Ｃt、Ｍtを求める。次に、ステップＳ２０では、求められたＭ成分の濃度値ＭtとＣ成分の濃度値Ｃtとの和が第１の閾値（Threshold1）より大きいかどうかを調べる。ここで、Ｃt＋Ｍt＞Threshold1であれば、処理はステップＳ３０に進み、さらに、Ｍ成分の濃度値ＭtとＣ成分の濃度値Ｃtとの和が第２の閾値（Threshold2）未満であるかどうかを調べる。これに対して、Ｃt＋Ｍt≦Threshold1であれば、処理は終了する。
【００６９】
処理はステップＳ３０において、Ｃt＋Ｍt＜Threshold2であれば、処理はステップＳ４０に進み、Ｍ成分の濃度値ＭtとＣ成分の濃度値Ｃtとの大小関係を調べる。ここで、Ｃt＞Ｍtであれば、処理はステップＳ５０に進み、小さい液滴のＣインク（或いは淡いＣインク）で記録を行うように設定する。これに対して、Ｃt≦Ｍtであれば、処理はステップＳ６０に進み、小さい液滴のＭインク（或いは淡いＭインク）で記録を行うように設定する。ステップＳ５０或いはＳ６０の後、処理は終了する。
【００７０】
さて、ステップＳ３０において、Ｃt＋Ｍt≧Threshold2であれば、処理はステップＳ７０に進み、さらに、Ｍ成分の濃度値ＭtとＣ成分の濃度値Ｃtとの和が第３の閾値（Threshold3）未満であるかどうかを調べる。ここで、Ｃt＋Ｍt＜Threshold3であれば、処理はステップＳ８０に進み、さらに、Ｍ成分の濃度値ＭtとＣ成分の濃度値Ｃtとの差が所定のオフセット（Offset）より大きいかどうかを調べる。ここで、Ｃt−Ｍt＞Offsetであれば、処理はステップＳ９０に進み、大きい液滴のＣインク（或いは濃いＣインク）で記録を行うように設定する。その後、処理を終了する。これに対して、Ｃt−Ｍt≦Offsetであれば、処理はステップＳ１００に進む。
【００７１】
ステップＳ１００では、Ｍ成分の濃度値ＭtとＣ成分の濃度値Ｃtとの差が所定のオフセット（Offset）より大きいかどうかを調べる。ここで、Ｍt−Ｃt≦Offsetであれば、処理はステップＳ１１０に進み、小さい液滴のＣインク（或いは淡いＣインク）と小さい液滴のＭインク（或いは淡いＭインク）で記録を行うように設定する。その後、処理を終了する。これに対して、Ｍt−Ｃt＞Offsetであれば、処理はステップＳ１１０に進み、大きい液滴のＭインク（或いは濃いＭインク）で記録を行うように設定する。その後、処理を終了する。
【００７２】
また、ステップＳ７０において、Ｃt＋Ｍt≧Threshold3であれば、処理はステップＳ１３０に進み、さらに、Ｍ成分の濃度値ＭtとＣ成分の濃度値Ｃtとの和が第４の閾値（Threshold4）未満であるかどうかを調べる。ここで、Ｃt＋Ｍt＜Threshold4であれば、処理はステップＳ１４０に進み、さらに、Ｍ成分の濃度値ＭtとＣ成分の濃度値Ｃtとの大小関係を調べる。ここで、Ｃt＞Ｍtであれば、処理はステップＳ１５０に進み、大きい液滴のＣインク（或いは濃いＣインク）と小さい液滴のＭインク（或いは淡いＭインク）で記録を行うように設定する。その後、処理を終了する。これに対して、Ｃt≦Ｍtであれば、処理はステップＳ１６０に進み、小さい液滴のＣインク（或いは淡いＣインク）と大きい液滴のＭインク（或いは濃いＭインク）で記録を行うように設定する。その後、処理を終了する。
【００７３】
一方、ステップＳ１３０において、Ｃt＋Ｍt≧Threshold4であれば、処理はステップＳ１７０に進み、大きい液滴のＣインク（或いは濃いＣインク）及び大きい液滴のＭインク（或いは濃いＭインク）の両方で記録を行うように設定する。その後、処理を終了する。
【００７４】
図７は、図６に示した処理のＣ成分とＭ成分とに関する閾値条件を図示したものである。
【００７５】
以上のような処理をまとめると、Ｍ成分の濃度値ＭtとＣ成分の濃度値Ｃtとに従って次のようなドット配置がなされる。
【００７６】
（１）Ｃt＋Ｍt≦Threshold1
（Ｃ成分もＭ成分も低濃度領域→図７の領域（ａ）に対応）
ＣインクでもＭインクでもドットを記録しない。
【００７７】
（２）Ｃt＋Ｍt＞Threshold1かつＣt＋Ｍt＜Threshold2かつＣt＞Ｍt
（Ｃ成分が中濃度領域→図７の領域（ｂ）に対応）
小液滴Ｃインク（或いは淡いＣインク）でドットを記録する（排他的記録）。
【００７８】
（３）Ｃt＋Ｍt＞Threshold1かつＣt＋Ｍt＜Threshold2かつＣt≦Ｍt
（Ｍ成分が中濃度領域→図７の領域（ｃ）に対応）
小液滴Ｍインク（或いは淡いＭインク）でドットを記録する（排他的記録）。
【００７９】
（４）Ｃt＋Ｍt＞Threshold1かつＣt＋Ｍt≧Threshold2
かつＣt＋Ｍt＜Threshold3かつＣt−Ｍt＞Offset1
（Ｃ成分が高濃度領域→図７の領域（ｄ）に対応）
大液滴Ｃインク（或いは濃いＣインク）でドットを記録する（排他的記録）。
【００８０】
（５）Ｃt＋Ｍt＞Threshold1かつＣt＋Ｍt≧Threshold2
かつＣt＋Ｍt＜Threshold3かつＣt−Ｍt≦Offset1
かつＭt−Ｃt≦Offset2
（Ｃ、Ｍ成分が共に中濃度領域→図７の領域（ｅ）に対応）
小液滴Ｃインク（或いは淡いＣインク）と小液滴Ｍインク（或いは淡いＭインク）の両方でドットを記録する（重ね合わせ記録）。
【００８１】
（６）Ｃt＋Ｍt＞Threshold1かつＣt＋Ｍt≧Threshold2
かつＣt＋Ｍt＜Threshold3かつＭt−Ｃt≦Offset1
かつＭt−Ｃt＞Offset2
（Ｍ成分が高濃度領域→図７の領域（ｆ）に対応）
大液滴Ｍインク（或いは濃いＭインク）でドットを記録する（排他的記録）。
【００８２】
（７）Ｃt＋Ｍt＞Threshold1かつＣt＋Ｍt≧Threshold2
かつＣt＋Ｍt≧Threshold3かつＣt＋Ｍt＜Threshold4
かつＣt＞Ｍt
（Ｃ成分が高濃度領域、Ｍ成分が中濃度領域→図７の領域（ｇ）に対応）
大液滴Ｃインク（或いは濃いＣインク）と小液滴Ｍインク（或いは淡いＭインク）の両方でドットを記録する（重ね合わせ記録）。
【００８３】
（８）Ｃt＋Ｍt＞Threshold1かつＣt＋Ｍt≧Threshold2
かつＣt＋Ｍt≧Threshold3かつＣt＋Ｍt＜Threshold4
かつＣt≦Ｍt
（Ｃ成分が中濃度領域、Ｍ成分が高濃度領域→図７の領域（ｈ）に対応）
小液滴Ｃインク（或いは淡いＣインク）と大液滴Ｍインク（或いは濃いＭインク）の両方でドットを記録する（重ね合わせ記録）。
【００８４】
（９）Ｃt＋Ｍt≧Threshold4（＞Threshold3＞Threshold2＞Threshold1）
（Ｃ、Ｍ成分共に高濃度領域→図７の領域（ｉ）に対応）
大液滴Ｃインク（或いは濃いＣインク）と大液滴Ｍインク（或いは濃いＭインク）の両方でドットを記録する（重ね合わせ記録）。
【００８５】
従って以上説明した実施形態に従えば、Ｃ成分とＭ成分の濃度値に従ってＭインクとＣインクによる記録の仕方を変化させることにより、Ｃ成分とＭ成分夫々の濃度値を３値化し、排他的に配置する事で粒状感を低減させた記録を行うことができる。
【００８６】
[第２実施形態]
第１実施形態では誤差拡散処理によって多値濃度データを３値化する場合を扱ったが、この実施形態では、誤差拡散処理によって多値濃度データをＮ値化（Ｎ≧４）を考慮した高速化処理が可能な例について説明する。
【００８７】
第１実施形態で説明した図６のフローチャートから明らかなように、３値化の場合、Ｃ成分Ｍ成分それぞれに３値を取りうるので、その組み合わせは３×３＝９通りとなり、この場合分けを行うために合計8個のif文（条件文）による分岐処理が必要となる。つまり、Ｎ値化の場合にはＮ2−１個のif文が必要となる。よって、Ｎの値が大きくなるに連れ、その分処理時間がかかる。
【００８８】
図８はこの実施形態に従う画像形成制御について示すフローチャートである。
【００８９】
以下、このフローチャートを参照してこの実施形態の特徴を説明する。
【００９０】
誤差拡散処理によって入力多値画像データをＮ値化（Ｎ≧３）する場合、閾値条件処理が非常に複雑になるので、この実施形態では、以下の手順でその多値化を行う。
【００９１】
（１）Ｘ＝Ｃt＋Ｍt、及び、Ｙ＝Ｃt−Ｍtとして定義される関数を導入して多値の誤差拡散を行う。
【００９２】
（２）多値誤差拡散処理の結果を元に２次元テーブルを参照して、記録するドットの配置やドットの種類を決定する。この２次元テーブルはＣ成分とＭ成分に関して共通テーブルでも良いが、実際にはＣ成分用とＭ成分用に別々のテーブル（C_Table、M_Table）を用意するのが好ましい。
【００９３】
図８に戻って説明すると、まず、ステップＳ２１０では、各画素のＣ成分とＭ成分についての濃度値からＸとＹの値を決定する。
【００９４】
次に、ステップＳ２２０では、Ｘの値とＹの値とに基づいて、前述の２次元テーブルの引数（X_index，Y_index）を決定する。これらの引数は、この実施形態では、Ｘ，Ｙ夫々の関数（X_index ＝ｆ（Ｘ）、Y_index ＝ ｇ（Ｙ））として決定される。
【００９５】
最後に、ステップＳ２３０では、ステップＳ２２０で決定された引数にを用いて２次元テーブルを参照し、Ｃ成分とＭ成分夫々の誤差拡散処理による出力値（Ｃout、Ｍout）を決定する。
【００９６】
比較のために、第１実施形態で説明したのと同じ３値化処理をこの実施形態に従って実行する場合について説明する。
【００９７】
図９は第２実施形態に従って３値化を行う様子を説明する図である。
【００９８】
図９は、Ｘ＝Ｃt（＝Ｃ＋Ｃerr）＋Ｍt（＝Ｍ＋Ｍerr）に対し４値化を行う一方、Ｙ＝Ｃt（＝Ｃ＋Ｃerr）−Ｍt（＝Ｍ＋Ｍerr）に対して５値化を行うことを示している。
【００９９】
図９において、右上がりの直線は同じＸ値（＝Ｃt−Ｍt）を表し、左上がりの直線は同じＹ値（＝Ｃt＋Ｍt）を表している（Ｃｔ、Ｍｔは誤差の累積も含め、−１２８≦Ｃｔ、Ｍｔ≦３８３程度の変動幅を持つ）。
【０１００】
従って、ＣtとＭtとが上記のような変動幅をもつのであるから、Ｘは−２５６≦Ｘ≦７６６程度、Ｙは−５１１≦Ｙ≦５１１程度の変動幅をもつ。このような変動幅をもつＸとＹとを夫々、４値化、５値化を行うために、Ｘの関数（ｆ（Ｘ））とＹの関数（ｇ（Ｙ））とを導入して、４値化、５値化の処理を行う。
【０１０１】
即ち、X_index＝ｆ（Ｘ）と、Y_index＝ｇ（Ｙ）の演算を行うのである。この演算はテーブルを参照することで実現できる。
【０１０２】
このように、２回の加算演算と２回の多値化演算（テーブル参照）でＸとＹの範囲全体を４値×５値＝２０区画に場合分けする事が出来る。
【０１０３】
ここで、図９と図７とを比べてみると、図７においては、領域（ａ）、（ｂ）、（ｃ）、（ｅ）、（ｇ）、（ｈ）、（ｉ）の各領域が、図９では２つの区画の集合となっているだけで、全体的の区切り方は図７と図９とではほぼ同じである事が分かる。
【０１０４】
従って、図１０に示すような共通２次元テーブルを、Ｘ及びＹの多値化結果に基づいて参照する事によりＣ及びＭの３値化による誤差拡散処理に基づく記録制御を行うことができる。
【０１０５】
なお、図１０において、“−”はＣインクでもＭインクでもドットを記録しないことを、“ｃ”は小液滴Ｃインク（或いは淡いＣインク）でドットを記録することを、“ｍ”は小液滴Ｍインク（或いは淡いＭインク）でドットを記録することを、“Ｃ”は大液滴Ｃインク（或いは濃いＣインク）でドットを記録することを、“Ｍ”は大液滴Ｍインク（或いは濃いＭインク）でドットを記録することを、“ｃｍ”は小液滴Ｃインク（或いは淡いＣインク）と小液滴Ｍインク（或いは淡いＭインク）の両方でドットを記録することを、“Ｃｍ”は大液滴Ｃインク（或いは濃いＣインク）と小液滴Ｍインク（或いは淡いＭインク）の両方でドットを記録することを、“ｃＭ”は小液滴Ｃインク（或いは淡いＣインク）と大液滴Ｍインク（或いは濃いＭインク）の両方でドットを記録することを、“ＣＭ”は大液滴Ｃインク（或いは濃いＣインク）と大液滴Ｍインク（或いは濃いＭインク）の両方でドットを記録することを表す。
【０１０６】
また、Ｃ成分及びＭ成分夫々の色特性を考慮して、実際には図１１に示す様にＣ成分Ｍ成分それぞれ個別の２次元テーブルを用意する事が望ましい。
【０１０７】
図１１において、（ａ）がＣ成分専用の２次元テーブルを示し、（ｂ）がＭ成分専用の２次元テーブルを示す。
【０１０８】
また、図１１において、“−”はドットを記録しないことを、“ｃ”は小液滴Ｃインク（或いは淡いＣインク）でドットを記録することを、“ｍ”は小液滴Ｍインク（或いは淡いＭインク）でドットを記録することを、“Ｃ”は大液滴Ｃインク（或いは濃いＣインク）でドットを記録することを、“Ｍ”は大液滴Ｍインク（或いは濃いＭインク）でドットを記録することを表している。
【０１０９】
以上の例では説明を簡単にするために３値化の例について説明したが、この実施形態は、Ｎ≧４のＮ値化に対しても、Ｘ、Ｙの計算とＸ、Ｙの多値化処理とＣ成分とＭ成分の多値化という、条件分岐処理のない同じ単純な処理ステップを用いて実現できるので、より高次のＮに対してより有効な処理である。
【０１１０】
従って以上説明した実施形態に従えば、より高次のＮ値化処理に対しても処理を複雑にすることなく誤差拡散処理を高速に実行することができる。
【０１１１】
また以上説明した実施形態に従えば、テーブル参照を中心とした処理であり、条件判断を伴う処理演算を用いる必要がないので、例えば、ペンティアム系プロセッサなどのＭＰＵ等で用いられているパイプライン処理や先読み処理を用いた処理に向いており、このようなプロセッサをこの実施形態において用いるとさらなる高速化が期待できる。
【０１１２】
さて、以上の実施形態においては、記録ヘッドから吐出される液滴はインクであるとして説明し、さらにインクタンクに収容される液体はインクであるとして説明したが、その収容物はインクに限定されるものではない。例えば、記録画像の定着性や耐水性を高めたり、その画像品質を高めたりするために記録媒体に対して吐出される処理液のようなものがインクタンクに収容されていても良い。
【０１１３】
以上の実施形態は、特にインクジェット記録方式の中でも、インク吐出を行わせるために利用されるエネルギーとして熱エネルギーを発生する手段（例えば電気熱変換体やレーザ光等）を備え、前記熱エネルギーによりインクの状態変化を生起させる方式を用いることにより記録の高密度化、高精細化が達成できる。
【０１１４】
その代表的な構成や原理については、例えば、米国特許第４７２３１２９号明細書、同第４７４０７９６号明細書に開示されている基本的な原理を用いて行うものが好ましい。この方式はいわゆるオンデマンド型、コンティニュアス型のいずれにも適用可能であるが、特に、オンデマンド型の場合には、液体（インク）が保持されているシートや液路に対応して配置されている電気熱変換体に、記録情報に対応していて核沸騰を越える急速な温度上昇を与える少なくとも１つの駆動信号を印加することによって、電気熱変換体に熱エネルギーを発生せしめ、記録ヘッドの熱作用面に膜沸騰を生じさせて、結果的にこの駆動信号に１対１で対応した液体（インク）内の気泡を形成できるので有効である。この気泡の成長、収縮により吐出用開口を介して液体（インク）を吐出させて、少なくとも１つの滴を形成する。この駆動信号をパルス形状をすると、即時適切に気泡の成長収縮が行われるので、特に応答性に優れた液体（インク）の吐出が達成でき、より好ましい。
【０１１５】
このパルス形状の駆動信号としては、米国特許第４４６３３５９号明細書、同第４３４５２６２号明細書に記載されているようなものが適している。なお、上記熱作用面の温度上昇率に関する発明の米国特許第４３１３１２４号明細書に記載されている条件を採用すると、さらに優れた記録を行うことができる。
【０１１６】
記録ヘッドの構成としては、上述の各明細書に開示されているような吐出口、液路、電気熱変換体の組み合わせ構成（直線状液流路または直角液流路）の他に熱作用面が屈曲する領域に配置されている構成を開示する米国特許第４５５８３３３号明細書、米国特許第４４５９６００号明細書を用いた構成も本発明に含まれるものである。加えて、複数の電気熱変換体に対して、共通するスロットを電気熱変換体の吐出部とする構成を開示する特開昭５９−１２３６７０号公報や熱エネルギーの圧力波を吸収する開口を吐出部に対応させる構成を開示する特開昭５９−１３８４６１号公報に基づいた構成としても良い。
【０１１７】
さらに、記録装置が記録できる最大記録媒体の幅に対応した長さを有するフルラインタイプの記録ヘッドとしては、上述した明細書に開示されているような複数記録ヘッドの組み合わせによってその長さを満たす構成や、一体的に形成された１個の記録ヘッドとしての構成のいずれでもよい。
【０１１８】
加えて、上記の実施形態で説明した記録ヘッド自体に一体的にインクタンクが設けられたカートリッジタイプの記録ヘッドのみならず、装置本体に装着されることで、装置本体との電気的な接続や装置本体からのインクの供給が可能になる交換自在のチップタイプの記録ヘッドを用いてもよい。
【０１１９】
また、以上説明した記録装置の構成に、記録ヘッドに対する回復手段、予備的な手段等を付加することは記録動作を一層安定にできるので好ましいものである。これらを具体的に挙げれば、記録ヘッドに対してのキャッピング手段、クリーニング手段、加圧あるいは吸引手段、電気熱変換体あるいはこれとは別の加熱素子あるいはこれらの組み合わせによる予備加熱手段などがある。また、記録とは別の吐出を行う予備吐出モードを備えることも安定した記録を行うために有効である。
【０１２０】
さらに、記録装置の記録モードとしては黒色等の主流色のみの記録モードだけではなく、記録ヘッドを一体的に構成するか複数個の組み合わせによってでも良いが、異なる色の複色カラー、または混色によるフルカラーの少なくとも１つを備えた装置とすることもできる。
【０１２１】
以上説明した実施の形態においては、インクが液体であることを前提として説明しているが、室温やそれ以下で固化するインクであっても、室温で軟化もしくは液化するものを用いても良く、あるいはインクジェット方式ではインク自体を３０°Ｃ以上７０°Ｃ以下の範囲内で温度調整を行ってインクの粘性を安定吐出範囲にあるように温度制御するものが一般的であるから、使用記録信号付与時にインクが液状をなすものであればよい。
【０１２２】
加えて、積極的に熱エネルギーによる昇温をインクの固形状態から液体状態への状態変化のエネルギーとして使用せしめることで積極的に防止するため、またはインクの蒸発を防止するため、放置状態で固化し加熱によって液化するインクを用いても良い。いずれにしても熱エネルギーの記録信号に応じた付与によってインクが液化し、液状インクが吐出されるものや、記録媒体に到達する時点では既に固化し始めるもの等のような、熱エネルギーの付与によって初めて液化する性質のインクを使用する場合も本発明は適用可能である。このような場合インクは、特開昭５４−５６８４７号公報あるいは特開昭６０−７１２６０号公報に記載されるような、多孔質シート凹部または貫通孔に液状または固形物として保持された状態で、電気熱変換体に対して対向するような形態としてもよい。本発明においては、上述した各インクに対して最も有効なものは、上述した膜沸騰方式を実行するものである。
【０１２３】
さらに加えて、本発明に係る記録装置の形態としては、コンピュータ等の情報処理機器の画像出力端末として一体または別体に設けられるものの他、リーダ等と組み合わせた複写装置、さらには送受信機能を有するファクシミリ装置の形態を取るものであっても良い。
【０１２４】
なお、本発明は、複数の機器（例えばホストコンピュータ、インタフェース機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用してもよい。
【０１２５】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１２６】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１２７】
【発明の効果】
以上説明したように本発明によれば、シアン濃度成分とマゼンタ濃度成分についての多値誤差拡散処理を高速に実行することができるという効果がある。
【図面の簡単な説明】
【図１】本発明の共通実施形態に係る情報処理システムの概略構成を示すブロック図である。
【図２】情報処理システムを構成するホスト装置５１と画像出力装置５２のハードウェア構成概要を示すブロック図である。
【図３】画像出力装置５２の代表的な実施形態であるインクジェットプリンタＩＪＲＡの構成の概要を示す外観斜視図である。
【図４】情報処理システムで用いられるソフトウェアの構造を示すブロック図である。
【図５】画像処理概要を示すフローチャートである。
【図６】第１実施形態に従う画像形成制御について示すフローチャートである。
【図７】第１実施形態で用いる閾値条件を示す図である。
【図８】第２実施形態に従う画像形成制御について示すフローチャートである。
【図９】第２実施形態で用いる閾値条件を示す図である。
【図１０】第２実施形態で用いるＣＭ成分共通２次元テーブルを示す図である。
【図１１】第２実施形態で用いるＣＭ成分夫々に専用の２次元テーブルを示す図である。
【図１２】従来のインクジェット方式に従う画像形成制御を示す図である。
【符号の説明】
１１  アプリケーションソフトウェア
２１  描画処理インタフェース
２２  スプーラ
３１−１、３１−２、……、３１−ｎ  装置固有描画機能
３３  色特性変換
３４  中間調処理（ハーフトーニング）
３５  プリントコマンド生成
５１  ホスト装置
５２  画像出力装置
５３  双方向インタフェース
５４  ドライバソフトウェア
１０００  処理部
１００１  ＭＰＵ
１００２  バス
１００３  ＤＲＡＭ
１００４  ブリッジ
１００５  グラフィックアダプタ
１００６  ＨＤＤコントローラ
１００７  キーボードコントローラ
１００８  通信Ｉ／Ｆ
２００１  表示装置
２００２  ＨＤＤ装置
２００３  キーボード
３００１  ＭＣＵ
３００３  制御回路部
３００４  ＲＯＭ
３００５  ＤＲＡＭ
３００６  通信Ｉ／Ｆ
３００７  ヘッドドライバ
３００８  ＣＲモータドライバ
３００９  ＬＦモータドライバ
３０１０  記録ヘッド
３０１１  キャリア（ＣＲ）モータ
３０１２  搬送モータ
【図１】
0004467771.tif 000002
【図２】
0004467771.tif 000003
【図３】
0004467771.tif 000004
【図４】
0004467771.tif 000005
【図５】
0004467771.tif 000006
【図６】
0004467771.tif 000007
【図７】
0004467771.tif 000008
【図８】
0004467771.tif 000009
【図９】
0004467771.tif 000010
【図１０】
0004467771.tif 000011
【図１１】
0004467771.tif 000012
【図１２】
0004467771.tif 000013