(57)【要約】【課題】マルチパス方式を用いたインクジェット記録方式で画像を形成する場合において、処理負荷を抑制して高速性を保ちつつ、各記録のドット分散性と形成画像の画質とを両立する。【解決手段】記録媒体の同一領域に対して複数回の記録を重ねることで画像を形成するための画像データを生成する画像処理装置であって、前記画像データに対して、前記画像データを構成する画素毎に、該画素を表す画素値を所定の閾値以上の第１の画像データと前記閾値未満の第２の画像データとに分割する分割手段と、前記第１の画像データに対してディザ処理を実行する第１のハーフトーン処理手段と、前記第２の画像データに対して誤差拡散処理を実行する第２のハーフトーン処理手段とを有することを特徴とする。【選択図】図６
2015164795.tif 000002
【特許請求の範囲】
【請求項１】
記録媒体の同一領域に対して複数回の記録を重ねることで画像を形成するための画像データを生成する画像処理装置であって、
前記画像データに対して、前記画像データを構成する画素毎に、該画素を表す画素値を所定の閾値以上の第１の画像データと前記閾値未満の第２の画像データとに分割する分割手段と、
前記第１の画像データに対してディザ処理を実行する第１のハーフトーン処理手段と、
前記第２の画像データに対して誤差拡散処理を実行する第２のハーフトーン処理手段と
を有することを特徴とする画像処理装置。
【請求項２】
前記複数回はＮ回であり、
前記分割手段は、前記閾値以上の画素値をさらに所定の比率によって分割することにより（Ｎ−１）回分の画像データに分割し、
前記第１のハーフトーン処理手段は、前記（Ｎ−１）回に対応する画像データそれぞれに対してディザ処理をする
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記第２のハーフトーン処理手段は、前記第１のハーフトーン処理手段における前記第１のハーフトーン処理の結果に基づいて、前記第２のハーフトーン処理を行なうことを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記複数回の記録に対応する画像データは、前記第１のハーフトーン処理手段及び第２のハーフトーン処理手段のいずれかによって処理されることを特徴とする請求項１乃至３の何れか１項に記載の画像処理装置。
【請求項５】
前記複数回の記録のそれぞれをいずれのハーフトーン処理手段で生成された画像データを用いて行うのかを、前記濃度設定手段で設定された濃度範囲に応じて設定する手段を備えることを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項６】
前記複数回の記録のうち先行する所定の記録のための画像データを前記第１のハーフトーン処理手段によって生成し、
前記複数回の記録のうち前記先行する所定の記録に後続する記録のための画像データを前記第２のハーフトーン処理手段によって生成する
ことを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項７】
記録媒体の同一領域に対して複数回の記録を重ねることで画像を形成するための画像データを生成する画像処理装置であって、
前記画像データに対して、前記画像データを構成する画素毎に、該画素を表す画素値を所定の閾値以上の第１の画像データと前記閾値未満の第２の画像データとに分割する分割手段と、
前記第１の画像データに対してディザ処理を実行する第１のハーフトーン処理手段と、
前記第２の画像データに対して、注目画素と該注目画素の近傍画素とに基づいて前記注目画素の値を決定するハーフトーン処理を実行する第２のハーフトーン処理手段と、
を有することを特徴とする画像処理装置。
【請求項８】
前記第２のハーフトーン処理手段におけるハーフトーン処理は、平均濃度近似処理であることを特徴とする請求項７に記載の画像処理装置。
【請求項９】
記録媒体の同一領域に対してＮ回の記録を重ねることで画像を形成するための画像データを生成する画像処理装置であって、
前記画像データに対して、前記画像データを構成する画素毎に分割することにより、前記Ｎ回の記録に対応する画像データに分割する分割手段と、
前記Ｎ回の画像データのうち（Ｎ−α）回に対応する画像データに対してディザ処理を実行し、（Ｎ−α）回に対応する第１のハーフトーン画像データを生成する第１のハーフトーン処理手段と、
前記Ｎ回の記録に対応する画像データのうちα回に対応する画像データに対して誤差拡散処理を実行し、α回に対応する第２のハーフトーン画像データを生成する第２のハーフトーン処理手段と、
前記αに対応する第２のハーフトーン画像データと前記（Ｎ−α）に対応する第１のハーフトーン画像データに基づく記録を制御する制御手段と
を有し、
前記制御手段は、第１のハーフトーン画像データを前記第２のハーフトーン画像データよりも先行して記録させる
ことを特徴とする画像処理装置。
【請求項１０】
前記第１のハーフトーン画像データを記録した結果を検出する検出手段と、
前記検出手段の結果に基づいて、前記第２の画像データを補正する補正手段と
を有し、
前記第２のハーフトーン処理手段は、前記補正手段により補正された第２の画像データに対して誤差拡散処理をする
ことを特徴とする請求項９に記載の画像処理装置。
【請求項１１】
さらに、記録媒体上に記録された濃度を読み取る記録濃度取得手段を有し、
前記第２のハーフトーン処理手段は、前記記録濃度取得手段により読み取られた記録媒体上に記録された濃度に基づきハーフトーン処理を行う
ことを特徴とする請求項１乃至１０に記載の画像処理装置。
【請求項１２】
請求項１乃至１１のいずれか１項に記載の画像処理装置を備えた、記録媒体の同一領域に対して複数回の記録を重ねることで画像を形成する画像形成装置。
【請求項１３】
前記複数回の記録を、同一の記録材を用いて行なうことを特徴とする請求項１２に記載の画像形成装置。
【請求項１４】
複数の記録素子を有する記録ヘッドを、前記記録媒体の同一領域に対して複数回走査させることによって画像を形成することを特徴とする請求項１２又は１３に記載の画像形成装置。
【請求項１５】
それぞれ主走査方向に並んだ複数の記録素子からなる複数の記録素子列が、前記記録媒体の副走査方向の領域に対してそれぞれ記録を行うことによって画像を形成することを特徴とする請求項１２又は１３に記載の画像形成装置。
【請求項１６】
記録媒体の同一領域に対して複数回の記録を重ねることで画像を形成するための画像データを生成する画像処理方法であって、
前記画像データに対して、前記画像データを構成する画素毎に、該画素を表す画素値を所定の閾値以上の第１の画像データと前記閾値未満の第２の画像データとに分割するステップと、
前記第１の画像データに対してディザ処理を実行する第１のハーフトーン処理ステップと、
前記第２の画像データに対して誤差拡散処理を実行する第２のハーフトーン処理ステップと
を含むことを特徴とする画像処理方法。
【請求項１７】
記録媒体の同一領域に対して複数回の記録を重ねることで画像を形成するための画像データを生成する画像処理方法であって、
前記画像データに対して、前記画像データを構成する画素毎に、該画素を表す画素値を所定の閾値以上の第１の画像データと前記閾値未満の第２の画像データとに分割するステップと、
前記第１の画像データに対してディザ処理を実行する第１のハーフトーン処理ステップと、
前記第２の画像データに対して、注目画素と該注目画素の近傍画素とに基づいて前記注目画素の値を決定するハーフトーン処理を実行する第２のハーフトーン処理ステップと、
を有することを特徴とする画像処理装置。
【請求項１８】
記録媒体の同一領域に対してＮ回の記録を重ねることで画像を形成するための画像データを生成する画像処理方法であって、
前記画像データに対して、前記画像データを構成する画素毎に分割することにより、前記Ｎ回の記録に対応する画像データに分割するステップと、
前記Ｎ回の画像データのうち（Ｎ−α）回に対応する画像データに対してディザ処理を実行し、（Ｎ−α）回に対応する第１のハーフトーン画像データを生成する第１のハーフトーン処理ステップと、
前記Ｎ回の記録に対応する画像データのうちα回に対応する画像データに対して誤差拡散処理を実行し、α回に対応する第２のハーフトーン画像データを生成する第２のハーフトーン処理ステップと、
前記αに対応する第２のハーフトーン画像データと前記（Ｎ−α）に対応する第１のハーフトーン画像データに基づく記録を制御する制御ステップと
を含み、
前記制御ステップは、第１のハーフトーン画像データを前記第２のハーフトーン画像データよりも先行して記録させる
ことを特徴とする画像処理方法。
【請求項１９】
コンピュータを、請求項１乃至１１のいずれか１項に記載の画像処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、限られた階調数で画像の濃淡を表現するハーフトーン手法及びその記録媒体への記録手法に関する。
【背景技術】
【０００２】
パソコンで処理した画像や、デジタルカメラで撮影した画像などを出力する装置として、紙等の記録媒体上に記録材を用いて画像を形成する画像形成装置がよく使われている。このような画像形成装置の出力可能な階調数は、一般にパソコン等で扱う画像の階調数に比べて少ない。そこで、画像形成装置で出力するにはパソコン等で扱う画像データに対して階調変換処理（ハーフトーン処理）を行い、画像形成装置が出力可能な階調数にする必要がある。ハーフトーン処理の代表的なものとしては、ディザ法や誤差拡散法が知られている。一般的にディザ法は処理負担が小さく並列可能な高速処理として知られる。一方、誤差拡散法はディザ法よりも粒状感や周波数応答の良好な高画質な出力を得られるが、並列化が難しくディザ法に比べ高速処理が困難であるとされている。
【０００３】
ところで、画像形成装置の中でも記録媒体に記録材を付着させることで記録媒体上に画像を形成する方式の１つにインクジェット記録方式がある。インクジェット記録方式では、記録媒体上に形成される記録材（インク）のドットがより高分散である方が高品質な画像を得られることが分かっている。さらにインクジェット記録方式において、同一領域に対して複数回に分けて記録を重ねて画像形成を行う方式（マルチパス方式などと呼ばれる）の場合には、その各々の記録（各パス）においてもインクドットが高分散である方が高品質な画像が得られることが知られている。これはインクが低分散すなわち密集して吐出されると、記録媒体上でインクが互いに凝集し、意図せぬドット配置となったり、凝集したインク滴が大きくなり全体にドットの疎密を生じる、などの理由による。このため、インクドットの凝集を抑制すべく各記録においてドットの分散性を持たせる技術が提案されている（特許文献１及び２を参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−００６５９１号公報
【特許文献２】特開２００９−２６２４５５号公報
【特許文献３】特開平２−２１０９６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１には、ディザ法を用いたハーフトーン処理によりドットの凝集を抑制しドット配置を高分散にする技術が開示されている。しかしながら、この技術では、各記録を重ねて記録媒体上に最終的に形成される画像の画質は誤差拡散法に比べ劣ったものになってしまう。
【０００６】
一方、特許文献２には、各記録で誤差拡散法を用いたハーフトーン処理を行なって、ドットの分散性を高める技術が開示されている。この技術では、各記録のドット分散性と各記録を重ねた最終的な形成画像の画質いずれをも両立することができるが、並列化処理が難しいことから処理に時間が掛かるという問題が残る。
【課題を解決するための手段】
【０００７】
本発明に係る画像処理装置は、記録媒体の同一領域に対して複数回の記録を重ねることで画像を形成するための画像データを生成する画像処理装置であって、前記画像データに対して、前記画像データを構成する画素毎に、該画素を表す画素値を所定の閾値以上の第１の画像データと前記閾値未満の第２の画像データとに分割する分割手段と、前記第１の画像データに対してディザ処理を実行する第１のハーフトーン処理手段と、前記第２の画像データに対して誤差拡散処理を実行する第２のハーフトーン処理手段と、を有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、マルチパス方式を用いたインクジェット記録方式で画像を形成する場合において、処理負荷を抑制して高速性を保ちつつ、各記録のドット分散性と形成画像の画質とを両立することができる。
【図面の簡単な説明】
【０００９】
【図１】実施例１に係る、画像処理装置のハードウェア構成を示す図である。
【図２】画像処理装置及び画像形成装置の論理構成を示す機能ブロック図である。
【図３】マルチパス方式による記録を説明する模式図である。
【図４】マルチパス方式の記録の具体的な仕方を記録ヘッドの挙動と共に説明した図である。
【図５】実施例１に係る、ハーフトーン処理部の内部構成を示すブロック図である。
【図６】実施例１における、ハーフトーン処理の流れを示すフローチャートである。
【図７】ディザ処理の詳細を示すフローチャートである。
【図８】ディザ処理に用いる閾値マトリクスの一例を示す図である。
【図９】実施例１における誤差拡散処理の詳細を示すフローチャートである。
【図１０】拡散係数の一例を示す図である。
【図１１】実施例３に係る、ハーフトーン処理部の内部構成を示すブロック図である。
【図１２】実施例４に係る、ハーフトーン処理部の内部構成を示すブロック図である。
【図１３】実施例５に係る、誤差拡散処理の詳細を示すフローチャートである。
【図１４】実施例６に係る、ハーフトーン処理部の内部構成を示すブロック図である。
【図１５】実施例８に係る、平均濃度近似処理の詳細を示すフローチャートである。
【図１６】既処理画素に対する重みの一例を示す図である。
【図１７】他列ヘッド方式による記録を説明する模式図である。
【図１８】実施例５に係る、画素毎にパスの割り振りを変える場合のフローチャートである。
【図１９】実施例９に係る、ハーフトーン処理部の内部構成を示すブロック図である。
【図２０】実施例９に係る、誤差拡散法に係るフローチャートである。
【発明を実施するための形態】
【００１０】
以下、添付図面を参照して、本発明の好適な実施例について説明する。なお、以下の実施例において示す構成は一例にすぎず、本発明は図示された構成に限定されるものではない。
【００１１】
［実施例１］
図１は、本実施例に係る、画像処理装置のハードウェア構成を示す図である。画像処理装置１００は、ＣＰＵ１０１、ＲＡＭ１０２、記憶装置１０３、汎用インターフェース（Ｉ／Ｆ）１０４、モニタ１０８、メインバス１０９で構成される。
【００１２】
汎用Ｉ／Ｆ１０４は、画像形成装置１０５、マウスやキーボードなどの入力装置１０６、メモリカード等の外部メモリ１０７をメインバス１０９に接続する。
【００１３】
ＣＰＵ１０１は、ＲＯＭやＨＤＤといった記憶装置１０３に格納されている画像処理アプリケーションを起動し、ＲＡＭ１０２に展開する。そして、記憶装置１０３や外部メモリ１０７に格納されている各種データや入力装置１０６からの指示など、画像処理に必要なデ―タがＲＡＭ１０２に転送される。さらに、画像処理アプリケーションに従って、ＲＡＭ１０２に格納されているデータがＣＰＵ１０１からの指令に基づき処理される。演算結果は、モニタ１０８に表示されたり、或いは記憶装置１０３や外部メモリ１０７に格納されたりする。
【００１４】
なお、本実施例では画像処理装置１００と画像形成装置１０５とはそれぞれ独立しているが、画像形成装置１０５が画像処理装置１００を含む構成としてもよい。
【００１５】
以下では、ＣＰＵ１０１が記憶装置１０３に格納された各種ソフトウェア（コンピュータプログラム）を動作させることで実現する各種画像処理について説明する。
【００１６】
図２は、画像処理装置１００及び画像形成装置１０５の論理構成を示す機能ブロック図である。画像処理装置１００は、入力端子２０１、入力画像バッファ２０２、色分解処理部２０３、ハーフトーン処理部２０４、ハーフトーン画像バッファ２０５、出力端子２０６を有する。また、画像形成装置１０５は、入力端子２０７、ヘッド駆動回路２０８、記録ヘッド２０９、出力端子２１０を有する。
【００１７】
まず、画像処理装置１００の各部について説明する。
【００１８】
入力画像バッファ２０２は、入力端子２０１から入力された印刷対象のカラーの画像データ（以下、入力画像データ）を格納する。ここで、入力画像データは、レッド（Ｒ）、グリーン（Ｇ）、ブルー（Ｂ）の３つの色成分により構成されているものとする。
【００１９】
色分解処理部２０３は、入力画像バッファ２０２に格納された入力画像データを、画像形成装置１０５が備える色材色に対応した画像データへ分解する。この色分解処理は、色分解用ルックアップテーブル（不図示）を参照して実行される。本実施例では、ブラック（Ｋ）単色を例に説明する。カラー画像を記録媒体上に形成する場合は、シアン（Ｃ）、マゼンタ（Ｍ）、イエロー（Ｙ）、ブラック（Ｋ）のように複数色に色分解処理すればよい。本実施例では、色分解処理後の画像データを、２５６階調を表す多値８ビットのデータ（０を白とする、０〜２５５のデータ）として説明するが、それ以上の階調数への変換を行っても構わない。
【００２０】
ハーフトーン処理部２０４は、色分解処理後の画像データに対して、ハーフトーン処理を行う。ハーフトーン処理によって、色分解処理後の画像データは画像形成装置１０５が出力可能な階調数のハーフトーン画像データへと変換される。ここでは、出力可能な階調数を、ドットのオン／オフを表す２値であるとする。すなわち、８ビットで表される多値の色分解処理後の画像データが、２値の画像データに変換される。ハーフトーン処理の詳細については後述する。なお、画像形成装置１０５が同色相で濃度の異なるインクを記録可能な場合や、大きさの異なるドットを記録可能な場合は、出力可能な階調数は２値よりも大きいこともある。得られたハーフトーン画像データは、ハーフトーン画像格納バッファ２０５に送られ、格納される。そして、ハーフトーン画像格納バッファ２０５に格納されたハーフトーン画像データは、出力端子２０６より画像形成装置１０５へ出力される。
【００２１】
なお、入力画像データは、上述したＲＧＢの色成分を有するものに限定されるものではなく、例えばＣＭＹＫの色成分を有する画像データでもよい。
【００２２】
次に、画像形成装置１０５の各部について説明する。画像形成装置１０５は、画像処理装置１００から受信したハーフトーン画像データに基づいて、記録ヘッド２０９を記録媒体に対して相対的に移動させて複数回走査させることにより、記録媒体上に画像を形成する。ここでは、記録ヘッド２０９はインクジェット方式であり、一つ以上の記録素子（ノズル）を有するものとする。
【００２３】
ヘッド駆動回路２０８は、入力端子２０７を介して入力されたハーフトーン画像データに基づいて、記録ヘッド２０９を制御するための駆動信号を生成する。
【００２４】
記録ヘッド２０９は、生成された駆動信号に基づき、記録媒体上に記録材を用いてドットを形成して画像を記録する。本実施例では、画像の記録をマルチパス方式で行うものとする。なお、記録材は、Ｋ、またはＣＭＹＫに限らず、淡いシアン（Ｌｃ）、淡いマゼンタ（Ｌｍ）や、特色インク、透明なインクを含むものであってもよい。またインク吐出後に光（紫外線）の放射を行い、インクを硬化させるような処理を行ってもよい。
【００２５】
次に、本実施例の前提となる画像記録方法であるマルチパス方式について説明する。
【００２６】
インクジェット方式の画像形成装置では、記録媒体の同一領域に対して複数回の記録を重ねることで画像を形成する、マルチパス方式が取られることが多い。図３は、マルチパス方式による記録を説明する模式図である。今、入力画像３００が、例えばインク色ブラックで濃度が一様な多階調の画像であったとする。ここでは入力画像３００が表す濃度を５０／２５５とする。ハーフトーン処理によって、この入力画像３００が、画像形成装置が出力可能な階調数である２値画像３１０に変換される。このときの２値画像３１０における分散して配置された黒ドット（ＯＮドット）の総数が領域に対して５０／２５５の面積比であれば、入力画像３００に対して濃度が近似することになる。このとき一度に２値画像３１０を記録媒体上に形成するのではなく、３０１〜３０４のように段階的に記録を重ね、最終的に２値画像３１０を形成（３０１〜３０４の記録の累積として２値画像３１０を形成）する方式がマルチパス方式である。記録媒体に対しての相対的に移動して記録ヘッドが形成する１回あたりの記録をパスと呼ぶ。図３の例は、第１パス（３０１）、第２パス（３０２）、第３パス（３０３）、第４パス（３０４）の計４回の記録を行う４パスのマルチパス方式を示している。ここで、２値画像３１０は、最終的に記録媒体上に記録される画像であるので、最終画像、最終ドットパターンとも呼ばれる。
【００２７】
図４は、マルチパス方式の記録の具体的な仕方を記録ヘッドの挙動と共に説明した図である。説明の便宜上、２パスの場合を示しているが、パス数が増えても考え方は同じである。図４の（ａ）は、説明に必要な要素を模式的に示しており、図４（ｂ）〜（ｆ）は各挙動における状態を時系列に示している。
【００２８】
図４（ａ）において、８つのＫインクノズルを持つ記録ヘッド４０１は、第１のノズル群（上の４つ）と第２のノズル群（下の４つ）で構成される。記録ヘッド４０１の上端を副走査方向（紙（記録媒体）の搬送方向であり、図の縦方向）の原点にとる。記録ヘッド４０１は、副走査方向には動かず、主走査方向（図の横方向）に往復運動を繰り返すものとする。記録媒体４０２は、画像形成装置によって画像が形成される前の状態を表している。簡単のため記録媒体は、縦方向の長さが記録ヘッド４０１と同じ長さを考え、横方向には４ドット分の幅を有するとする。記録媒体４０３は、画像形成が完了した状態を表している。
【００２９】
マルチパス方式では、記録ヘッド４０１を移動しながらの記録と記録媒体の搬送を交互に行いながら画像を形成する。
【００３０】
図４の（ｂ）に示すように、まず、画像形成前の記録媒体４０２と記録ヘッド４０１が初期位置にセットされる。画像形成が始まると、記録ヘッド４０１が初期位置から主走査方向へ移動し、図４の（ｃ）に示す状態へと遷移する。このとき、記録ヘッド４０１が記録媒体の下半分を通過する過程で、記録媒体の下半分には第１のノズル群によって画像の一部が記録される（薄い灰色で図示）。ここで記録媒体の下半分に記録されるのが、第１パスのドットパターンである。
【００３１】
次に、図４の（ｃ）の状態から、副走査方向に向かってノズル群のノズル数分（すなわちノズル４つ分）だけ移動させる。図４の（ｄ）は、この移動後の状態を示している。
【００３２】
次いで、記録ヘッド４０１を今度は主走査方向における左へ移動させ、図４の（ｅ）の状態へと遷移する。この際にも記録媒体上を通過する過程でインクの吐出を行い、記録を行う。これにより、記録媒体の下半分では第２のノズル群によって第２パスのドットパターンが重ねられ（濃い灰色で図示）、記録媒体の下半分での画像形成は完成する。一方、記録媒体の上半分では第１のノズル群による第１パスのドットパターン（薄い灰色で図示）が記録される。
【００３３】
そして、図４の（ｅ）の状態から、再び副走査方向に向かってノズル群のノズル数分（４つ分）だけ移動させて図４の（ｆ）の状態にし、再び記録ヘッド４０１を右へ走査する状態を準備する。
【００３４】
さらに、記録ヘッド４０１を今度は主走査方向へ移動させつつインクの吐出を行なう（図４の（ｇ）の状態）。これにより、記録媒体の上半分にも第２のノズル群による第２パスのドットパターンが重ねられ、画像形成が完了した状態の記録媒体４０３が得られる。
【００３５】
ここでは２パスの場合を説明したが、ノズルをＭ個持つ記録ヘッドを用いたｎパスの場合には、上から順にＭ／ｎ個ずつ区切ってノズル群とし、ノズル群単位で記録と搬送を行う。第１のノズル群は記録媒体上の対応する位置に第１パスのドットパターンを記録し、第２のノズル群は記録媒体上の対応する位置に第２パスのドットパターンを記録し、以下第ｎのノズル群・第ｎパスまで続く。逆に記録媒体から見れば図面下から段階的に画像が形成されていき、どの領域においても最初に記録されるのが第１パス目のドットパターンであり、順に第２、第３、…のドットパターンが第ｎパスまで重ねられていく。なお、上記の説明では、記録ヘッド４０１による主走査方向の走査において、左右いずれの方向の走査においても記録（インクの吐出）を行ったが、記録を行なう方向を片方向に限ってもよい。
【００３６】
マルチパス方式を取る理由としては、１回の走査で記録を行うシングルパス方式では、短時間に多量のインクが記録媒体に供給されることになり、過剰なにじみや過剰な乾燥時間、及び記録媒体のしわ（そり）の原因となることが挙げられる。またシングルパス方式では、欠陥ノズルや位置ズレをもつノズルが存在すると記録媒体上の端から端にわたる白い縞状のノイズが生じたり、所望の色飽和度を出すには不十分な場合があるといった問題もある。マルチパス方式ではそれらを抑制することができるものの、同じ理由から、マルチパス方式においても各パスにおけるドット配置は分散性が高い方が好ましい。
【００３７】
上述したマルチパス方式を前提とする、本実施例に係るハーフトーン処理部２０４について説明する。本実施例に係るハーフトーン処理部２０４は、色分解処理後の画像データを受け取り、パスに応じてハーフトーン処理を切り替えて各パスのドットパターンを決定することを特徴の１つとする。すなわち、複数回（Ｎ回）の記録を同一の記録材を用いて行なう場合において、パス毎に切り替えるものである。なお、本実施例では、４パスのマルチパス方式の場合について説明する。さらに第１〜第３パスに対してはディザ処理を実行するハーフトーン処理、第４パスに対しては誤差拡散処理を実行するハーフトーン処理を施すものとする。つまり４パスのうち先行するパスに処理負担が軽く並列化に向いたディザ処理を、後発のパスに比較的処理負担が大きい誤差拡散処理を配する。これによって、第１〜第３パスに対してディザ処理を実行している間に処理負担の大きい第４パスの誤差拡散処理の時間を確保できるので、トータルの画像処理時間が短くなり、画像形成を滞りなく行うことができる。図５は、本実施例に係るハーフトーン処理部２０４の内部構成を示すブロック図である。
【００３８】
濃度設定部５０１は、各パスのハーフトーン処理を行うための濃度範囲を設定する。この場合において、全パス数をNとすると、ディザ処理用のパスは第１パス〜第（N−α）パスで表され、誤差拡散用のパスは第（N-α＋１）〜第Ｎパスで表される。第１〜第３パスがディザ処理で、第４パスが誤差拡散処理となる本実施例の場合、N＝４、α＝１である。このように本実施例では、濃度設定部５０１によって、色分解後の画像データを構成する各画素の画素値に対して、ディザ処理を実行する濃度範囲および誤差拡散処理を実行する濃度範囲が設定される。つまり、濃度設定部５０１は、色分解後の画像データを、所定の閾値未満の画素値からなる画像データと、所定の閾値以上の画素値からなる画像データとに、所定の比率で分割する手段として機能する。
【００３９】
第１ハーフトーン部５０２は、濃度設定部５０１で設定された濃度範囲の画像に対しディザ処理を行なって、第１〜第３パスのドットパターンを決定する。
【００４０】
第２ハーフトーン部５０３は、濃度設定部５０１で設定された濃度範囲の画像に対し誤差拡散処理を行なって、第４パスのドットパターンを決定する。
【００４１】
図６は、本実施例における、ハーフトーン処理の流れを示すフローチャートである。なお、この一連の処理は、以下に示す手順を記述したコンピュータ実行可能なプログラムを記憶装置１０３からＲＡＭ１０２上に読み込んだ後、ＣＰＵ１０１によって該プログラムを実行することによって実施される。
【００４２】
色分解処理された画像データが入力されると、ステップ６０１において、濃度設定部５０１は、入力画像が持つ濃度範囲のうち第１のハーフトーン部で処理をするための濃度範囲と、第２のハーフトーン部で処理をするための濃度範囲とを設定する。具体的には、入力画像の濃度（以下、入力濃度In）に応じ、ディザ処理を行うパス（本実施例では第１〜第３パス）用の濃度In_Ditherと、誤差拡散処理を行うパス（本実施例では第４パス）用の濃度In_EDとを設定する。各濃度は、以下の式（１）によって求められる。
【００４３】
【数１】
2015164795.tif 000003
【００４４】
ここで、In(x, y)は、入力濃度Inの注目画素(x, y)における濃度値を表わす。min(In(x,y) , MAX_IN_ED )は、In(x,y) と MAX_IN_EDのうち小さい方の値を取ることを表す。MAX_IN_EDは所定の濃度値を表す定数であり、ここではMAX_IN_ED = 64とした。つまり上記式（１）は、入力濃度Inのうち所定の濃度値未満（0〜64）については、誤差拡散用濃度In_EDに割り振り、所定の濃度値以上（65〜255）をディザ用濃度In_Ditherに割り振ることを意味する。従って入力濃度の低濃度の濃度範囲は誤差拡散が実行され、高濃度の濃度範囲はディザ処理が実行されることになる。これを入力画像の全画素（画像の幅をW、高さをHとした場合、ｘ＝0〜ｗ-1、ｙ＝0〜H-1）について行ない、第１〜第３パス用の濃度In_Ditherと第４パス用の濃度In_EDとを設定する。なお、注目画素(x,y)における入力濃度Inが所定の濃度値未満（例えば、40）の場合、入力濃度Inの全てが誤差拡散処理濃度In_EDとなり、ディザ用濃度In_Ditherは“0”となる。
【００４５】
ステップ６０２において、第１ハーフトーン部５０２は、ステップ６０１で設定されたディザ用濃度In_Ditherに対しディザ処理を行い、第１〜第３パスのドットパターンを決定する。図７は、本ステップにおけるディザ処理の詳細を示すフローチャートである。図７のフローチャートの説明に入る前に、ディザ処理について簡単に説明する。図８は、ディザ処理に用いる閾値マトリクスの一例であり、幅Wm = 4、高さHm = 4、入力値（階調値）が０〜１６とした場合の閾値マトリクスである。各画素に対応するマス目には閾値となる値がそれぞれ格納されている。ディザ処理は通常、このような閾値マトリクスにおける閾値と入力値とを比較し、例えば「入力値が閾値よりも大きい場合にドットをオンに、入力値が閾値以下の場合にドットをオフにする」のように約束しておき、階調変換を行う。そして、入力画像のサイズの方が閾値マトリクスよりも大きい場合には、閾値マトリクスをタイル状に繰り返しているものとして扱う。これらの規則をまとめると、以下の式（２）で表することができる。
【００４６】
【数２】
2015164795.tif 000004
【００４７】
上記式（２）において、M(x,y)は閾値マトリクスの座標(x,y)で特定されるマス目に格納された閾値を示し、 Out_Dither(x, y)はそのときの出力値を示す。ただし、x % Wmは、ｘをWmで割った剰余を表し、y % HmはｙをHmで割った剰余を表す。このような閾値マトリクスを用いて入力画像を処理すると、入力値が大きいほどドットがオンとなる割合が高くなるため、入力された濃度に対応する二値化結果が得られる。以上がディザ処理の概要である。
【００４８】
以上を踏まえ、ステップ６０２におけるディザ処理を図７のフローチャートに沿って説明する。ここではディザ処理の対象となるパス数ｎ＝Ｎ−α（＝３）と置いて、第ｐパス（ｐ＝１、２、３）のドットパターンを決定するものとする。
【００４９】
ステップ７０１において、第１ハーフトーン部５０２は、出力結果を各パスに分解するための係数であるC_LowとC_Upを決定する。この２つの係数は、第１ハーフトーン処理部５０２に割り当てられた濃度のうち、各パスに濃度範囲を割り当てるための係数である。この２つの係数は次の式（３）によって求められる。
【００５０】
【数３】
2015164795.tif 000005
【００５１】
ステップ７０２において、第１ハーフトーン部５０２は、決定された２つの係数のうち係数C_Lowを注目画素(x,y)におけるディザ用濃度In_Dither (x,y)に乗じたものと、所定の閾値マトリクスM(x%Wm,y%Hm)とを比較する。比較の結果が真ならば（係数を乗じた入力値が閾値よりも大きい場合）、ステップ７０３に進む。一方、比較の結果が偽ならば（係数を乗じた入力値が閾値以下の場合）、ステップ７０４に進む。
【００５２】
ステップ７０３において、第１ハーフトーン部５０２は、Out_Lowの値を２５５（オンドット）に設定する。
【００５３】
ステップ７０４において、第１ハーフトーン部５０２は、Out_Lowの値を０（オフドット）に設定する。
【００５４】
ステップ７０５において、第１ハーフトーン部５０２は、決定された２つの係数のうち係数C_Upを注目画素(x,y)におけるディザ用濃度In_Ditherに乗じたものと、所定の閾値マトリクスM(x%Wm,y%Hm)とを比較する。比較の結果が真ならば（係数を乗じた入力値が閾値よりも大きい場合）、ステップ７０６に進む。一方、比較の結果が偽ならば（係数を乗じた入力値が閾値以下の場合）、ステップ７０７に進む。
【００５５】
ステップ７０６において、第１ハーフトーン部５０２は、Out_Upの値を２５５（オンドット）に設定する。
【００５６】
ステップ７０４において、第１ハーフトーン部５０２は、Out_Upの値を０（オフドット）に設定する。
【００５７】
なお、上記ステップ７０２〜７０７の各処理は、係数C_Low又はC_upが掛けられること以外は基本となるディザ処理と同じである。
【００５８】
ステップ７０８において、第１ハーフトーン部５０２は、第ｐパスの出力値を決定する。具体的には、Out_Upの値からOut_Lowの値を引いた値を出力値として決定する。このようにして得られたOut(x,y;p)が、第ｐパスの注目画素(x,y)における出力値となる。
【００５９】
以上のような処理を、ディザ処理を適用するパス数分（ここでは第１パス〜第３パスの３パス分）だけ繰り返す。
【００６０】
このような処理を行なう理由は以下のとおりである。
【００６１】
まず、第ｐパスの処理において、C_LowとC_Upとでは、C_Upの方が大きい係数である。これら係数を各入力値に乗じた上で閾値と比較することにより、ステップ７０５〜ステップ７０７のC_Upの結果は、ステップ７０２〜ステップ７０４のC_Lowの結果によるドットを全て含み、かつC_Lowの結果よりもドット数が多い出力となる。一方、第（ｐ−１）パスと第ｐパスの処理とを比べると、第（ｐ−１）パスのC_Upと第ｐパスのC_Lowとは一致するので、C_Lowの結果は前のパスのC_Upの処理の結果に等しい。今、第１パス目の処理はC_Low=0となるため、Out_Lowは必ず０である。すなわち、第１パスは入力値の一部のみをディザ処理によってドットをオンにしたものであり、第２パス以降は、処理する入力値の範囲を広げつつ、既に前のパスでドットがオンになっている位置についてはドットをオフにするものである。第ｎパスではC_Up=1となるので、第１パス〜第ｎパスの累積ドットパターンはディザ用濃度In_Ditherにディザ処理をかけたものと一致する。つまり、上述した処理を行なうことで、ディザ用濃度In_Ditherにディザ処理を施した結果を第１〜第ｎの各パスに分割したものが得られることになる。
【００６２】
ステップ７０９において、第１ハーフトーン部５０２は、Out_Upの値をディザ処理による出力値としてOut_Dither(x,y)に記録する。この時点でのOut_Upには、上述のようにディザ用濃度In_Ditherにディザ処理をかけた結果が格納されている。そのため、Out_Dither(x,y)は、ディザ処理によって注目画素(x,y)にドットが発生したか否かを表すデータとなる。
【００６３】
以上が、ステップ６０２におけるディザ処理の内容である。こうして、ディザ処理により先行する第１〜第３パスでドットが置かれると決められた画素は、後続の第４パスについての誤差拡散処理で取り消されることはない。したがって、第１〜第３パスのドット配置が決定したら、第４パスについてのハーフトーン処理を待たずに、第１〜第３パスに関して記録を開始することができる。
【００６４】
図６のフローチャートの説明に戻る。
【００６５】
ステップ６０３において、第２ハーフトーン部５０３は、ステップ６０１で設定された誤差拡散用濃度In_EDに対し誤差拡散処理を行い、第４パスのドットパターンを決定する。この誤差拡散処理には、ステップ６０２で得られたディザ処理の結果Out_Ditherを用いる。図９は、本実施例における誤差拡散処理の詳細を示すフローチャートである。
【００６６】
ステップ９０１において、第２ハーフトーン部５０３は、後述のステップ９０４で用いる閾値Ｔｈを決定する。本実施例ではＴｈ＝１２８とした。
【００６７】
ステップ９０２において、第２ハーフトーン部５０３は、誤差バッファ（Error）を初期化する。本実施例では誤差バッファの全ての画素を０で初期化する。なお、説明の便宜上、誤差バッファの大きさは入力画像の大きさと同じ（同じ幅、同じ高さを持つ）とする。また、本実施例に係る誤差拡散処理は、１行ずつ左から右へ走査することによって行われるものとし、注目画素を(x,y)とする。
【００６８】
ステップ９０３において、第２ハーフトーン部５０３は、処理対象濃度In_ED’(x,y)を設定する。具体的には、注目画素(x,y)における誤差拡散用濃度In_ED(x,y)に、ディザ法による誤差In_Dither(x,y)-Out_Dither(x,y)を加え、さらに拡散された誤差を加えたものを、新たにIn_ED’(x,y)とおく。
【００６９】
ステップ９０４において、第２ハーフトーン部５０３は、処理対象濃度In_ED’(x,y)と閾値Ｔｈとを比較する。処理対象濃度In_ED’(x,y)が閾値Ｔｈよりも大きければ、ステップ９０５に進む。一方、処理対象濃度In_ED’(x,y)が閾値Ｔｈよりも大きければ、ステップ９０５に進む。
【００７０】
ステップ９０５において、第２ハーフトーン部５０３は、誤差拡散処理による最終パスの出力値Out_ED(x,y)を２５５（オンドット）とする。
【００７１】
ステップ９０６において、第２ハーフトーン部５０３は、誤差拡散処理による最終パスの出力値Out_ED(x,y)を０（オフドット）とする。
【００７２】
ステップ９０７において、第２ハーフトーン部５０３は、入力値である処理対象濃度In_ED’(x,y)と出力値Out_ED(x,y)とに基づいて、注目画素(x,y)で発生した誤差NewErrorを求める。具体的には、入力値In_ED’(x,y)と出力値Out_ED(x,y)との差分を、注目画素(x,y)で発生した誤差NewErrorとして決定する。
【００７３】
ステップ９０８において、第２ハーフトーン部５０３は、求められた誤差NewErrorに、注目画素(x,y)の位置関係に応じた所定の拡散係数Diffuse(i,j)を掛けて、注目画素(x,y)の周囲の画素に誤差を拡散する。図１０は、拡散係数の一例を示す図である。図１０に示す拡散係数は、一般的にFloyd-Steinbergの誤差拡散係数と呼ばれている。注目画素(x,y)を図１０中の×印の画素とし、それより左右の座標をｉ（右側正）で、上下の座標をｊ（下側正）で表す。注目画素の隣接画素に割り当てられた7/16、3/16、5/16、１/16といった係数を重みとして、注目画素（x,y）で生じた誤差NewErrorを周囲の画素に拡散する。なお、誤差の拡散先が画像の外にはみ出してしまう画素については無視してよい。
【００７４】
このような処理を画像内の全画素に対して行うことで第４パスのドット配置を示すデータOut_ED(x,y)を得ることができる。本実施例では、誤差拡散処理を適用するパスが最終パスである第４パスのみに限定されているので、Out_ED(x,y)がそのまま誤差拡散処理結果としてのドットパターンとなる。もし、誤差拡散処理を適用するパスが複数存在する場合は、得られたドット配置のデータOut_ED(x,y)を任意のパス数へ分解する処理が組み込まれることになる。この誤差拡散処理を適用するパスが複数存在する場合については、実施例５において説明する。
【００７５】
以上が、本実施例に係るハーフトーン処理の内容である。
【００７６】
上述のような処理によって、適用するハーフトーン処理の内容をパスに応じて変えながら、各パスで記録すべきドットパターンを決定することができる。そして、このようなハーフトーン処理を行うことで、以下のような効果を得ることができる。
【００７７】
（本実施例による効果）
マルチパス方式では、各パスのドットの分散性が高い方が望ましいことは既に述べた通りであり、各パスの分散性を高く保ちながらハーフトーン処理する手法にディザ処理と誤差拡散処理をそれぞれベースとした手法が考えられる。一般的に、ディザ処理は高速だが粒状性や周波数応答などの画質の面では不利な手法として知られる。他方、誤差拡散処理はディザ処理に比べ高速性に劣るが画質で有利な手法であると言える。その理由は次のように説明される。
【００７８】
上述のとおりディザ処理は、閾値をアレイ状に格納した閾値マトリクスと入力値との比較によって出力値を決定する。ここで各画素の出力値は周囲の画素の出力結果に左右されない。すなわち処理の並列化が容易であり、この点が高速処理に寄与する。一方、この特徴が画像における粒状性や周波数応答性にとっては不利に働くことが多い。ディザ処理は閾値と入力値の比較で出力値を決定するので、ある明るい階調を表すために使われるドットは、それより暗い階調を表すのにも必ず用いられる。本来、階調に応じて良好な分散性を持つドットパターンのドット間距離は違うにも関わらず、明るい階調を表すドットパターンを保持したまま別の階調のドットパターンを表現しなければならないため、分散性の高いドットの配置が難しい。したがって粒状性の点で不利になるのである。また、先に述べた「出力値は周囲の画素の出力結果に左右されない」結果、画像としての解像感が低下してしまう場合がある。例えば、１画素毎に濃淡が入れ替わる高周波な入力画像があったとする。これに閾値マトリクスを適用したとき、たまたま入力値が大きい画素に大きな閾値があたり出力値を白とする判定がされると、その画素の解像感は失われてしまう。このようにして、周波数応答性に対しても不利になってしまう。総じてディザ処理は、予め定めたドットパターンを適用するため高速処理だが、それゆえの画質の課題を抱えていると言える。
【００７９】
一方誤差拡散処理は、処理済の画素において生じた誤差が次の画素に拡散される逐次処理である。拡散される誤差が確定しなければ次の画素の出力値を決定することはできないので、各画素並列の処理には不向きである。また特許文献２のように他のパスにおけるドット配置を考慮する場合、パス間での処理も第１パス、第２パス、…、と順に逐次処理で行う必要があり、さらに処理に時間を要することになる。しかしこの特徴が粒状性や周波数応答性の面では有利に働く。逐次処理は言わば入力画像に対する適応的処理であり、入力画像の階調の変化に対して適応的な位置にドットを自由に配置していくことが可能である。そのため分散性の高い、言い換えれば粒状性の低い良好なドット配置が得られる。また、誤差の拡散によって既処理画素は周囲の画素に影響を与えるため、画像の高周波な濃淡を周囲の画素を含めて表現することができ、周波数応答性にも優れる。総じて誤差拡散処理は、入力画像に対して逐次行う適用的処理のため高速性に劣るが、それゆえ画質の点で優位であると言える。
【００８０】
以上のようなディザ処理と誤差拡散処理がそれぞれ有する特徴を踏まえ、本実施例では、先行する複数のパスに関してディザ処理を用いてドット配置を決定し、最終のパスでは誤差拡散処理を適用してドット配置を決定するようにしている。これにより、ディザ処理の利点である処理の簡潔性、並列性を活かしてハーフトーン処理の高速化を図りつつ、最終パスについてディザ法によるドット配置を前提とした誤差拡散処理を行うことによって、画質向上をも図っている。濃度の一部に関してディザ法でドット配置を決定した画像に対して誤差拡散処理を行うことによって、誤差拡散処理のみを適用した場合の結果と近いドット配置が得られ、最終的なドットパターンの粒状性が改善するのである。  以上説明したように、パスに応じてハーフトーン処理の方法を変える本実施例の構成を取ることによって、処理負荷を抑制し高速性を保ちつつ、各記録のドット分散性と形成画像の画質とを両立することが可能となる。
【００８１】
また、各パスの分散性と最終ドットパターンの粒状性に関して、濃度の低いハイライトでは最終的なドットパターンの方がより重視すべきであることに留意が必要である。なぜならば、ハイライト領域ではそもそも吐出される黒ドットの数が少ないため、各パスの分散性は自ずと高まる傾向にあるためである。本実施例では、処理濃度とパスとを結び付け、ディザ処理と誤差拡散処理を併用することを前提とし、入力濃度のうち低濃度の濃度範囲に画質の点で優位な誤差拡散処理を割り当て、高濃度の濃度範囲にディザ処理を割り当てた。従って、濃度値の小さいハイライト領域では誤差拡散処理用濃度In_EDのみが設定されることになる。これによって、ハイライト領域では粒状性の良好な誤差拡散処理の影響を強め、より高品位な画像を得ることができる。
【００８２】
ただし、極ハイライト領域（例えば、入力濃度Inの値が“10”の画素からなる領域）における誤差拡散処理では掃き寄せなどの問題が生じることが知られている。そこで、この問題を避けるため極ハイライト領域に対しては全てディザ処理を行うように設定してもよい。このように、入力濃度によっては、全てのパスで同じ内容のハーフトーン処理が適用されるように濃度設定されることが望ましい場合もある。
【００８３】
なお、本明細書では、説明を簡潔にするため本質的でない部分を省略している。例えば、誤差拡散処理にはドットの並びが目障りな模様となってしまうテクスチャやワームと呼ばれる現象、低濃度・高濃度の部分でドットの生成遅延が起こる掃き寄せと呼ばれる現象が起こりうることが分かっている。そのような画質弊害に対処するべく、公知技術をさらに適用してもよい。例えば、誤差拡散係数を適応的に変更する、誤差バッファの値を０クリアするのではなくある値を持たせる、閾値を動的に変更する或いはノイズを加える、画素を走査する方向を左右互い違いにするといった処理を併せて行うようにしてもよい。
【００８４】
＜変形例＞
変形例として、入力濃度In以下であってディザにおけるドット分散性が高い濃度をディザ処理し、入力濃度Inとディザ濃度In_Ditherとの差分の濃度を誤差拡散処理するようにしてもよい。例えば1,2,4,8,16,32,64,128のうち、入力濃度In以下で入力濃度Inに近い濃度をディザ濃度In_Dither(x,y)とし、残りの濃度を誤差拡散処理する。この時、誤差拡散用濃度In_ED(x,y)として入力濃度In(x,y)を与え、Out_Dither(x,y)＝255となっている画素においてはOut_ED(x,y)＝0とする。なお、量子化誤差の算出には以下の式（４）を用いる。  
In(x,y)−Out_Dither(x,y)−Out_ED(x,y)      ・・・式（４）
ただし、上記式（４）においてOut_Dither(x,y)、Out_ED(x,y)の値が同時に“255”になることはないので、Out_Dither(x,y)＝0の時にはIn(x,y)−Out_ED(x,y)を、Out_Dither(x,y)＝255の時にはIn(x,y)−Out_Dither(x,y)を、それぞれ量子化誤差として用いてもよい。上述したような、２のべき乗ごとの濃度は低濃度側のドットパターンにドットを追加してもドット分散性の高いドットパターンを生成可能である。よって、この場合は座標(x,y)から濃度毎（1,2,4,8,16,32,64,128）のドットパターンを参照してOut_Dither(x,y)を生成してもよい。
【００８５】
［実施例２］
実施例１では、第１ハーフトーン部５０３がディザ処理にて第１〜第３パスのドットパターンを決定し、第２ハーフトーン部５０４が誤差拡散処理にて第４パスのドットパターンを決定していた。しかし、第１パスに対し第１ハーフトーン部、第２パスに対し第２ハーフトーン部、・・・第ｐパスに対し第ｐハーフトーン部といった具合に各パスに１対１で対応するハーフトーン部を設けてもよい。実施例１に沿って言えば、第１〜第３のハーフトーン部でディザ処理を行い第４ハーフトーン部で誤差拡散処理を行なうように構成してもよい。この場合、第１〜第３の各ハーフトーン部ではそれぞれ異なるC_Up、C_Lowを用いたディザ処理がなされることになる。
【００８６】
［実施例３］
実施例１は、各ハーフトーン部が処理する濃度範囲を独立した濃度設定部で設定していた。その結果、第１ハーフトーン処理部および第２ハーフトーン処理部によって処理される前に、色分解処理後の画像データは少なくとも２つの画像データに分解されることになる。しかし、濃度設定部は必ずしも独立した構成でなくてもよい。図１１は、本実施例に係る、濃度設定部を用いない態様のハーフトーン処理部２０４の内部構成を示すブロック図であり、複数のハーフトーン部（１１０１、１１０２、・・・）のみで構成される。この場合、ハーフトーン処理部２０４を構成する全てのハーフトーン部で入力濃度Inを受け取り、例えば実施例１で説明したC_Low、 C_Upのような所定の計算で決まる閾値を用いて、各ハーフトーン部で処理する濃度を決定すればよい。この場合、後に説明するような動的な処理濃度の決定はできなくなるが、パスに応じてハーフトーン処理を切り替える本発明の本質を失うものではない。
【００８７】
［実施例４］
実施例１では、第１ハーフトーン部５０２が第１〜第３パスを、第２ハーフトーン部５０３が第４パスを処理すると予め決められていた。しかし、ハーフトーン部とパスの関係はこのように限定する必要はない。図１２の（ａ）は、本実施例に係るハーフトーン処理部２０４の内部構成を示すブロック図であり、濃度設定部１２０１、パス設定部１２０４、第１ハーフトーン部１２０２、第２ハーフトーン部１２０３で構成される。
【００８８】
パス設定部１２０４は、濃度設定部１２０１で設定された濃度を、どのハーフトーン部（すなわち、どのパス）に割り振るかを決定する。パス設定部１２０４は実施例１で述べたように、入力濃度Inの階調によって、全てのパスを誤差拡散用或いはディザ用のいずれか一方のハーフトーン部に割り振ることがあってもよい。さらには、あるパスに濃度を振らず、使用されるパス数が実質的に変わるものであってもよい。
【００８９】
また、図１２の（ｂ）に示すように、パス設定部１２０４を、第１及び第２ハーフトーン部１２０２／１２０３の後段に配置し、ハーフトーン処理によってドットパターンを決定した後でどのパスに割り振るのかを設定するようにしてもよい。例えば、ハーフトーン処理が終わったものから順に第１パス、第２パスといった具合に各パスを割り当てるようにしてもよい。
【００９０】
そのほか、実施例１と異なるパスの振り分け方として次のようなものが考えられる。マルチパス方式においては、より多くの濃度を中盤のパス（４パスであれば第２パス第３パス）で記録した方が好ましいとされる。これは最初及び最後に近いパスは記録ヘッドの末端部を使用することになり、記録ヘッドの移動に伴う気流の影響を受けやすくインクの紙への着弾位置が乱れやすいためである。そこでなるべく多くの濃度を中盤のパスに割り振るようにする。実施例１の場合、MAX_IN_EDとして最大で“64”の濃度値を誤差拡散用濃度とするが、この値は0〜255の濃度値に対して２５〜１００％を占める。そのため誤差拡散を中盤のパスに配すれば、多くの濃度を中盤パスで記録するメリットを得ることができる。例えば、誤差拡散のパスを第３パスに定めたとすると、第１パス及び第２パスのドットパターンは実施例１と変わらず、実施例における第３パスが第４パスとなり、実施例１における第４パスが第３パスに割り当てられることになる。
【００９１】
なお、ディザ処理において中盤のパスほど記録する濃度が多くなるようにしてもよい。実施例１では、ディザの各パスに割り当てる濃度を式（３）で表される２つの係数C_UpとC_Lowによって定めており、各パスにおけるC_Up−C_Lowの値は１／ｎであり一定であった。これを中盤のパスほどC_Up−C_Lowの値が大きくなるように、各パスでのC_Up−C_Lowをそれぞれ設定することで、中盤のパスにより多くの濃度を設定することができる。
【００９２】
これらの手法を踏まえ、パス設定部１２０４は、例えば濃度の大きいパスから中盤のパスに割り当てる等、各パスで記録する濃度に応じてどの濃度を第何パスに配するかを決定してもよい。
【００９３】
［実施例５］
実施例１では、第１〜第３パスをディザ法で処理し、最終パスである第４パスのみを誤差拡散法で処理していた。処理の高速性を保つためには、誤差拡散法の適用数は少ない方が望ましい。しかし、トータルのパス数や誤差拡散法により処理される濃度範囲によっては、誤差拡散法を適用するパスを最終パスの１パスに限定する必要はない。  
そこで、複数のパスに対するハーフトーン処理に誤差拡散法を適用する場合（実施例１でα≧２の場合）について、実施例５として説明する。
【００９４】
図１３は、本実施例に係る誤差拡散処理の詳細を示すフローチャートである。全ステップのうちステップ１３０１〜ステップ１３０８は、実施例１で説明した図９のフローチャートのステップ９０１〜ステップ９０８に対応している。以下では、本実施例の特徴である、ステップ１３０９を中心に説明する。なお、画像処理部２０４の構成は実施例１における図５で示した構成と同じであるものとする。
【００９５】
ステップ１３０８でドット配置を示すデータOut_ED(x,y)が得られると、ステップ１３０９において、第２ハーフトーン部５０３は、これを任意のパス数へ分解する処理を行なう。ここでは、誤差拡散処理にて決定されたドットパターンを第Ａパスと第Ｂパスの２つのパスに分割する場合（α＝２）を考える。ドットパターンの分割には、例えば前述の図８で示したような閾値マトリクスを用いる。具体的には、得られたドット配置データOut_ED(x,y)の各画素と閾値マトリクスの各マス目とを対応させ、格納されている閾値が０〜７であれば第Ａパスで記録する画素、閾値が８〜１５であれば第Ｂパスで記録する画素といった具合に振り分ける。すなわちパスの分割する数、例えば“２”に応じて閾値マトリクスの値を２分割して考え、各パスに対応させる。この方法はパスマスクやパス分解などと呼ばれている。ここで用いる閾値マトリクスは、ディザ処理で用いる閾値マトリクスとは別のものを用意してもよい。分割するパス数αが変われば、閾値マトリクスにおける閾値と割り当てられるパスとの関係を変えればよい。また、最初から該当するパスが格納された形式のマトリクス等（パスマスク）を使用して割り振ってもよい。さらに、例えば注目画素(x,y)からx+yを求め、その値が奇数であれば第Ａパス、偶数であれば第Ｂパスなどといった具合に注目画素(x,y)に対しての演算結果からパスを割り当ててもよい。あるいは、誤差拡散処理にてドットが発生する度に、順に第Ａパス、第Ｂパス、第Ａパス、…のようにドットに順次パスを割り振っていく方法によっても、ドットを各パスに分解することもできる。
【００９６】
以上のような処理によって、誤差拡散法を適用するパスを１つのパスに限らずとも本発明を実施することが可能となる。なお、上述した方法は、ディザ処理によって決めたドットパターンをさらに複数パスに分ける場合についても同様に用いることが可能である。
【００９７】
また、上記パスマスクの方式等に代えて、逐次パス順に誤差拡散処理を行うことによって複数のパスにおける各ドットパターンを決定してもよい。ここでもα＝２とし、ステップ１３０８で得られたドット配置データOut_ED(x,y)を第Ａパスと第Ｂパスの２つに分割する場合を考える。まず、誤差拡散処理用の濃度から、第Ａパス用の濃度と第Ｂパス用の濃度（例えばそれぞれIn_ED/2の濃度）を設定する。そして、第Ａパス用の濃度に対し実施例１と同様の方法で誤差拡散処理を行い、まず第Ａパスのドットパターンを決定する。次に、第Ｂパスの濃度についても同様の方法で誤差拡散処理を行う。このとき、第Ａパスで決定したドットパターンを参照し、第Ａパスでドットが置かれた周辺の画素には、第Ｂパスではドットが配置されにくいようにしつつドット配置を決定する。こうすることによって、第Ａパスと第Ｂパスのドットの分散性を高めることができる。
【００９８】
以上のような方法を用いて、１度ないしは少数回の誤差拡散処理を複数のパスのドットパターンに分解することができる。これとディザ処理とを併用することにより、処理負荷を抑制し画質の向上を図ることができるのは上述の通りである。さらにこの手法を用いれば、各パスにおける濃度の極端な偏りを抑制することもできる。これについて説明する。
【００９９】
実施例１では、濃度によっては記録を行わないパスが存在していた。例えば、入力濃度がMAX_IN_ED = 64以下の範囲では全ての濃度が誤差拡散処理されるため、第４パスのみがドットの記録が行われることになる。また入力濃度が64より大きい場合でも、第４パスにおいて記録される濃度とそれ以外のパスにおいて記録される濃度に大きな偏りが生じる場合がある。記録素子の負担を考えると、各パスにおいて記録される濃度には偏りがない方が望ましい。そこで画素単位で各パスへの振り分け方を変えることで、各パスによって記録される濃度をより均等にすることができる。
【０１００】
本実施例では、画素毎に各パスのハーフトーンへの振り分け方を変更する。図１８は、本実施例に係る、画素毎にパスの割り振りを変更する場合の処理の流れを示すフローチャートである。なお、先の実施例と共通する部分は説明を省略することとする。
【０１０１】
まず、入力濃度Inに応じ、画素毎に誤差拡散処理及びディザ処理によるパス数を決定する（ステップ１８０１）。いま、全体のパス数N＝４とし、ディザ処理によるパス数ｎ、誤差拡散処理によるパス数α＝N−ｎとする。それぞれのハーフトーン処理方法において、各パス均等に濃度を割り振るとすると、ディザ処理の１パスあたりの濃度はIn_Dither／ｎ、誤差拡散処理についてはIn_ED／αとなる。MAX_IN_ED = 64より大きい濃度の範囲で、この濃度差ができるだけ小さくなるようなディザ処理のパス数ｎを選ぶと、以下のようになる。
【０１０２】
0≦In≦64  のとき     ｎ＝０、α＝４
65≦In≦99  のとき    ｎ＝１、α＝３
100≦In≦179  のとき  ｎ＝２、α＝２
180≦In≦255  のとき  ｎ＝３、α＝１
このとき画素（x,y）毎の濃度値によって異なるディザ処理によるパス数をｎ（x,y）と書くことにする。パス数が決まったら、実施例１と同様、式（１）に従いIn_Dither及びIN_EDを定める（ステップ１８０２）。
【０１０３】
ディザ処理を行う濃度In_Ditherに関しては、パスの割り振りのための２つの係数を、ｎ（x,y）を用いた以下の式（５）によって求め、各パスのドットパターンに分解する（ステップ１８０３）。
【０１０４】
【数４】
2015164795.tif 000006
【０１０５】
続くステップ１８０４の誤差拡散処理では、ディザ処理に用いた閾値マトリクスとは異なる閾値マトリクスを用い、上述のように格納された閾値の数をα（x, y）に分割して対応づけることにより、発生したドットをα(x,y)パスのいずれかに割り当てる。
【０１０６】
最後にステップ１８０５にて、ディザ処理によって生成されたドットパターンと、誤差拡散処理によって生成されたドットパターンを各パス重ね合わせることで、記録すべきドットパターンを得る。具体的にはどちらかの処理によってドットが発生していれば、そのパスでその画素位置にはドットを記録するようにする。
【０１０７】
本実施例における方法では、各パスのドットパターンの決定に誤差拡散処理の結果を使用するため、実施例１のようにディザ処理のみの特定のパスを先行し記録させることはできない。しかし、誤差拡散処理を１回に抑えながら高濃度部においては各パスのドット分散性を高め、低濃度部においては誤差拡散法により粒状性の優れたドットパターンを得ることができる。さらには各パスの記録濃度を柔軟に設定し、各パスでの記録される濃度の極端な偏りを抑制することができる。
【０１０８】
［実施例６］
ここまでの実施例では、ディザ処理を適用してドットパターンを決定し、その決定したドットパターンに基づいて、誤差拡散処理を適用してドットパターンを決定することを基本としていた。しかしながら、それぞれのハーフトーン部が、他のハーフトーン部のフィードバックを受けずに各ハーフトーン処理を行ってもよい。
【０１０９】
図１４は、本実施例に係るハーフトーン処理部２０４の内部構成を示すブロック図であり、第１ハーフトーン部１４０１と第２ハーフトーン部１４０２で構成される。第１ハーフトーン部１４０１と第２ハーフトーン部１４０２は、異なる手法を用いてハーフトーン処理を実行する。図１４から明らかなように、第１ハーフトーン部１４０１の出力が第２ハーフトーン部１４０２に入力されておらず、フィードバックがなされないことを示している。
【０１１０】
先の実施例で説明した、先行するパスで決定したドットパターンに基づいて誤差拡散処理を行なう手法の方が一般的に画質は向上すると考えられるが、先行するパスでのフィードバックを待たずに処理を行うことによって高速性を優先することができる。なお、図１４で示したフィードバックを行なわない構成において、他の実施例と同様、濃度設定部やパス設定部を設けてもよい。
【０１１１】
［実施例７］
次に、先行するパスに対して行うハーフトーン処理手法（ディザ法）のバリエーションについて説明する。例えば、以下に述べるようなドットの重なりを持たせる手法が考えられる。
【０１１２】
実施例１で説明した図７のフローチャートでは、ステップ７０１において、出力結果を各パスに分解するための係数であるC_LowとC_Upを決定していた。これにより、ディザ用濃度In_Ditherにディザ処理を施した結果を第１〜第ｎの各パスに分割したものが得られる。つまり実施例１の方法では、ディザ処理によってドットパターンが決定された第１〜第ｎの各パスは、互いにドットが排他的なドットパターンになっている。これは、式（３）の係数によって、各パスに対して互いに重複しない入力値の範囲を割り当てているためである。パス間においてドットが互いに排他的なドットパターンを記録すると、インクの位置ズレによって濃度が変動しやすいことが知られている。そこで実施例７においては、ディザ処理によってドットパターンが決定された第１〜第ｎの各パスにおいて、互いのドットパターンにおいてごく一部のドットが重なる（同じ位置にドットがある）ようにドットパターンを出力する方法について説明する。本実施例の手法では、第２パス以降において記録されるドットパターンに対して、１パス目の記録によって記録されたドットパターンの一部のドットと同じ位置のドットを追加する。そのためにここでは、第２パス以降のディザ処理のための新たな係数C_Low2、C_Up2を定義する。この新たな２つの係数は次の式（６）によって求められる。
【０１１３】
【数５】
2015164795.tif 000007
【０１１４】
上記式（６）においてＣは１よりも小さな定数であり、ｐ≧2である。これらの係数C_Low2、C_Up2に対して、C_Low、C_Upに対するステップ７０２〜ステップ７０８と同様の処理を、C_Low、C_Upに対する処理と並行して行い、ドットの配置を決定する。この際、出力ドットは、C_Up、C_Lowから決まるドットの有無と、C_Low2、C_Up2から決まるドットの有無の論理和（いずれか一方でもドットを出力すると判定されればドットを出力）となる。具体的に、ｎ＝３の場合を例に数値を入れて説明すると、第１パスのC_Low、C_Upはそれぞれ０、１／３であり、第２パスのC_Low、C_Upはそれぞれ１／３、２／３であり、第３パスのC_Low、C_Upはそれぞれ２／３から１である。これは、入力値の範囲のうち、０から１／３の範囲が第１パスに、１／３から２／３の範囲が第２パスに、２／３から１までの範囲が第３パスに割り当てられることを意味する。ステップ７０２〜ステップ７０８による処理の結果、第１〜第３パスではそれぞれのドットパターンは、入力値の範囲のうち１／３に相当する分のドットが配置され、かつ互いのドットが排他的な関係になっている。
【０１１５】
これに加え、第２パス以降のディザ処理ではC_Low2、C_Up2の範囲のドットも記録する。Ｃ＝０．１とすると、式（６）に従って算出される各係数は、第２パスでC_Low=0、C_Up=1/30、第３パスではC_Low=1/30、C_Up=2/30である。つまり第２パスでは、上記のドットパターンに加え、入力値に0〜1/30を乗じて得られる濃度分のドットが追加される。第２パスの記録に追加される、入力値のうち0〜1/30の範囲は、第１パスに割り当てられた入力値の範囲と重複する。従って第２パスに追加されるドットは、第１パスで記録されるドットパターンに含まれる一部のドットと同じ位置のドットであり、重なりのドットということになる。第３パスも同様で、C_Low2、C_Up2によって決まる範囲に相当するドットは、第１パスのドットパターンに含まれる一部のドットと同じ位置のドットであり、重なりのドットである。重なるドットの数を定数Ｃが決定しており、その値が大きいほどドットの重なりが多く、小さいほどドットの重なりが少なくなる。これを踏まえ、記録される明度が変化しないような（出力γで補正可能な）任意の値が選ばれる。
【０１１６】
前述の通り、記録するパス間において、全てのドットが異なる位置に打たれている場合、記録媒体上にドットが位置ズレを持って記録されると、記録濃度が変動する。しかしこのような処理により各パスのドットパターンの一部にドットが重なりがあると、位置ズレの発生に関わらず重なり合うドットと重ならないドットとが混在するため、記録濃度の変動を低減する効果がある。これは特に中濃度から高濃度の領域にかけて効果的である。
【０１１７】
また、ディザ法に代えて、処理負担が比較的小さく、領域的に繰り返し処理を行うなど並列化しやすい公知なハーフトーン技術を好適な技術として用いてもよい。例えば、閾値マトリクスを複数持ち、画素毎の入力値や、画像領域の属性（エッジ部／非エッジ部等）を検出した結果に基づいて閾値マトリクスを使い分けてもよい。或いは、画素値と閾値との比較ではなく、画素位置とその画素値からドットの有無を記録したデータベース或いはテーブルを参照して、直接的に出力を決定してもよい。さらには、１画素対１画素の処理ではなく、複数の画素を１領域として濃度を合わせるようなハーフトーン手法を適用してもよい。
【０１１８】
［実施例８］
次に、後続のパスに対して行なうハーフトーン処理手法のバリエーションについて説明する。例えば、特許文献３等に開示される平均濃度近似法（ＭＤ法）を用いることが考えられる。平均濃度近似処理は、誤差拡散処理において既処理の二値画素に重みをつけて和を取って平均濃度meanとし、その差を誤差として拡散する手法である。図１５は、平均濃度近似処理の詳細を示すフローチャートである。以下、その概略について説明する。
【０１１９】
まず、入力値は誤差付きの入力濃度である（ステップ１５０２）。図１６は、既処理画素に対する重みの一例を示す図である。注目画素を×印の画素として、既処理画素値（０または２５５の二値）に対し、図１６に掲げる重みを係数として掛けたものの和を取ったものが平均濃度meanである（ステップ１５０３）。
【０１２０】
そして、誤差拡散の閾値Ｔｈに代えて平均濃度meanを閾値として二値判定を行う（ステップ１５０４）。
【０１２１】
そして、得られた新たな誤差NewErrorと平均濃度meanとの差を取る（ステップ１５０７）。
【０１２２】
そして、NewErrorを誤差拡散同様に周囲の画素（近傍画素）に拡散する（ステップ１５０８）。ここでの拡散係数Diffuseは、注目画素の右の画素に１／２、下の画素に１／２である。
【０１２３】
この手法の場合、既処理画素を参照する代わりに、誤差の拡散の範囲を小さくすることができる。このような手法を誤差拡散法に代えて適用してもよい。
【０１２４】
［実施例９］
これまでの実施例（実施例６を除く）では、誤差拡散処理で参照するドット配置データはディザ処理によって決定されたものを用いていた。しかし、画像形成装置が既に記録媒体上紙等に形成したドットパターンをスキャンして得たデータを利用してもよい。
【０１２５】
以下、実施例１で説明したのと同様、４パスのマルチパス方式において、第１〜第３パスをディザ処理で、第４パスを誤差拡散処理でハーフトーン処理を行う場合を前提に説明する。
【０１２６】
今、第１〜第３パスのディザ処理が終わり、記録媒体上に第１〜第３パスのドットパターンが記録されたとする。このとき記録媒体上には第１〜第３パスの各ドットパターンが累積したドットパターンが形成されているはずである。しかし、画像形成装置のノズル、制御機構、記録媒体に発生する物理的なズレにより、記録媒体上に実際に形成されたドットパターンと意図した累積ドットパターンとは異なっている場合がある。このため、ディザ処理によって得られた第１〜第３パスのドットパターンを前提に第４パスのドットパターンを決定しても、記録媒体上の累積されたドットパターンは意図した配置にならず期待した画質が得られないということがあり得る。
【０１２７】
そこで、第１〜第３パスのドットパターンが実際に記録された記録媒体をスキャンして記録媒体上に形成された画像の濃度を取得し、取得した濃度画像と原画像との差分を最終パスで処理する誤差拡散用濃度として設定する。そして、設定された誤差拡散用濃度に対して誤差拡散処理を行い最終パスのドットパターンを決定する。
【０１２８】
図１９は、本実施例に係る、ハーフトーン処理部２０４の内部構成を示すブロック図である。本実施例の場合、記録媒体上の画像の濃度を取得する記録濃度取得部１９０２が新たに設けられており、これにより得られる記録濃度の情報を活用する。すなわち、本実施例では、第２ハーフトーン部１９０３が、第１ハーフトーン部５０２（ディザ処理）によって決定されたドット配置の情報に代えて、記録濃度取得部１９０２で取得した実際の記録濃度の情報を用いて誤差拡散処理を行って、ドットパターンを決定する。
【０１２９】
図２０は、本実施例に係る、誤差拡散処理の流れを示すフローチャートである。実施例１に係る図９のフローにおけるステップ９０１〜９０８の各ステップが、図２０のフローにおけるステップ２００１〜２００８にそれぞれ対応している。図９のフローとの違いは、実施例１のステップ９０３ではOut_Dither(x,y)を用いているのに対し、ステップ２００３ではScan(x,y)を用いている点である。ここでScan(x,y)は、記録濃度取得部１９０２によって取得された、記録媒体上の画素位置(x,y)に対応する部分の濃度を表す。In _ED(x,y)+In_Dither(x,y)は原画像の濃度を表すので、ステップ２００３では、取得した濃度画像と原画像との差分に対して誤差Error(x,y)を加えて誤差拡散処理を行っていることになる。
【０１３０】
なお、ハーフトーン処理における処理ではないので図２０のフローには示されていないが、記録濃度取得部１９０２が取得するScan(x,y)は、不図示のスキャナで適時スキャンして得られた画像データの濃度を画素単位で更新するものとする。記録媒体上の画像を読み取り可能なセンサを有するスキャナは、例えば記録ヘッド（又は記録ヘッドと共に走査する機構）に備えられ、記録ヘッドによる画像記録の走査時に、該スキャナが記録ヘッドに連動して記録媒体上の濃度を読み取る。そして、読み取られた濃度の情報が記録濃度取得部１９０２によって取得され、バッファ内にScan(x,y)として保存される。スキャナの取り付け位置に限定はないが、例えば４パス記録の場合においては、第１〜３パスが記録された後、第４パスが記録される前の記録媒体上の濃度が読み取れる位置に取り付けられる必要がある。
【０１３１】
このような手法を取ることにより、物理的なズレにより本来のドット配置とは異なったドット配置が先行するパスで形成されても、それを踏まえたドット配置を後続のパスで生成することができ、画質の悪化を抑制することができる。
【０１３２】
なお、第１ハーフトーン部５０２におけるディザ処理の理論的なドット配置（濃度）の情報を第２ハーフトーン部１９０３に入力し、第２ハーフトーン部１９０３における誤差拡散処理において当該情報を活用するようにしてもよい。すなわち、理論的なドット配置と実際に記録された濃度を比較することによって、記録に係るノズル、制御機構、記録媒体に発生する物理的なズレの特性が分かるので、その情報をドット配置にフィードバックしてもよい。
【０１３３】
［実施例１０］
これまでの実施例では、マルチパス方式の画像形成装置を前提として説明を行なった。しかし、複数の記録素子列を有するいわゆる多列ヘッド形式の画像形成装置であってもよい。図１７は、他列ヘッド方式による記録を説明する模式図である。この方式では、複数の記録素子からなる複数の記録素子列が主走査方向に十分長くつながっており、記録媒体の搬送方向（副走査方向）の領域に対して、副走査方向に並んだ記録素子列が複数回の記録を重ねて画像を形成する。なお、図１７において横軸が主走査方向とあるのはマルチパス方式との対比の便宜を考慮したものであり、この形式の記録ヘッドが必ずしも主走査方向に走査することを意味しない。この場合、第１の記録素子列での記録を第１パスとみなしディザ処理で、第２の記録素子列での記録を第２パスとみなし誤差拡散処理で、というように本発明を適用することが可能である。また、主走査方向に隣り合った記録素子列の互いの端のオーバーラップ部分に関して本発明を適用してもよい。
【０１３４】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2015164795.tif 000008
【図２】
2015164795.tif 000009
【図５】
2015164795.tif 000010
【図６】
2015164795.tif 000011
【図７】
2015164795.tif 000012
【図８】
2015164795.tif 000013
【図９】
2015164795.tif 000014
【図１０】
2015164795.tif 000015
【図１１】
2015164795.tif 000016
【図１２】
2015164795.tif 000017
【図１３】
2015164795.tif 000018
【図１４】
2015164795.tif 000019
【図１５】
2015164795.tif 000020
【図１６】
2015164795.tif 000021
【図１７】
2015164795.tif 000022
【図１８】
2015164795.tif 000023
【図１９】
2015164795.tif 000024
【図２０】
2015164795.tif 000025
【図３】
2015164795.tif 000026
【図４】
2015164795.tif 000027