(57)【特許請求の範囲】
【請求項１】
ラスタ方向と前記ラスタ方向に直交するカラム方向とによって各画素の位置が定義される階調画像に誤差拡散処理を施す画像処理装置における画像処理方法であって、
階調画像を表すＮラスタ（Nは２以上の整数）分の多値データについて、量子化対象となる注目画素を量子化する量子化工程と、
前記量子化工程によって量子化された画素の誤差を、量子化前の周辺の多値データに加算する加算工程と、
を有し、
前記量子化工程においては、
前記注目画素を前記カラム方向に移動させながら前記量子化を行い、同一カラムのN画素分の処理が終了し、前記注目画素を次のカラムに移動させた後に前記カラム方向に量子化を行うことを繰り返すことによりNラスタ分の前記多値データを処理し、
前記加算工程においては、
前記量子化された画素よりも前に量子化された画素のラスタにおける量子化前の画素を含む周辺の量子化前の画素に前記誤差を加算し、かつ、一つのラスタの画素の処理においてそのラスタの画素の誤差が加算される画素は、一通りに定められていることを特徴とする画像処理方法。
【請求項２】
前記Nは、２であることを特徴とする請求項１記載の画像処理方法。
【請求項３】
前記Nは、３であることを特徴とする請求項１記載の画像処理方法。
【請求項４】
請求項１乃至請求項３のいずれか１項に記載の画像処理方法を用いて形成された擬似階調画像に基づいて記録媒体に画像を記録することを特徴とする記録装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタル階調画像から多値又は２値の擬似階調画像を作成するハーフトーン処理を行う画像処理方法及び記録装置に関する。
【背景技術】
【０００２】
従来から、写真のような連続階調を持つ画像を記録する場合、微小なドットのサイズが異なるように記録しているか、微小なドットの密度を変えて記録している。デジタル階調画像を２値の擬似階調画像に変換する濃度保存型の代表的なハーフトーン手法の１つとして、誤差拡散法があげられる。
【０００３】
誤差拡散法は、微小なドットの密度を変えることにより階調を表現する。誤差拡散法は、入力階調値と閾値との比較による量子化を行った際に生ずる誤差を所定の割合で量子化処理方向（主走査方向）及び主走査方向と直交する方向（副走査方向）の隣接画素に拡散し、誤差の低減を行う方法である。誤差拡散法は、ドットをランダムに配置し、その密度によって階調を表現するため、モアレの発生を考慮する必要がなく、階調性と高分解能を両立する手法である。
【０００４】
このような誤差拡散処理をより高画質に行う方法として、量子化処理方向を所定ラスタ毎に任意に切り替える方法が開示されている（例えば特許文献１参照）。この方法によれば、量子化処理方向を所定ラスタ毎に任意に切り替えることにより、拡散の方向を均一でなくすることができる。その結果、記録画像の低濃度部に表れる斜め方向のドットのつながりや、記録画像の高濃度部に表れる白抜けのつながりを抑制することができる。
【０００５】
一方、誤差拡散処理をより高速に行う方法として、複数のラスタについてのドット形成有無の判断を並行して行うことにより、この複数のラスタの画像データを迅速に変換する方法が開示されている（例えば特許文献２参照）。この方法によれば、複数のラスタについてドットの形成有無の判断を並行して行うため、データを読み書きするためのメモリへのアクセス頻度が減少するため、ドット形成有無の判断を迅速に行うことができる。
【特許文献１】特開平０３−１５１７６２号公報
【特許文献２】特許３６６１６２４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
近年、画像処理速度は高速となり、出力可能な画像サイズは大きくなり、ドットのサイズは微小となっており、処理可能な画像データサイズが大きくなっている。これに伴い、入力画像データ、誤差バッファなどさらに大容量のメモリサイズが必要となってきているという課題がある。一方、そのような課題がある中でも、記録画像は、従来と同等若しくはそれ以上に高画質であることが求められている。
【０００７】
前記特許文献１の方法では、高画質な記録画像を得るためには、量子化処理方向を出来るだけ少ないラスタ数毎に切り替えることが必要である。また、副走査方向の未処理画素に拡散される誤差を、記録画像の主走査方向の画素数に対応する分だけ誤差バッファとしてのＲＡＭに保持することが必要である。そのため、誤差バッファとして大容量のメモリサイズのＲＡＭが必要になるとともに、ラスタ毎にメモリへの読み書きのための時間が発生するために処理時間が長くなってしまうという課題がある。
【０００８】
一方、前記特許文献２の方法では、高速で処理を行うためには、複数のラスタについてのドット形成有無の判断を並行して行うことが必要である。並行して処理されるラスタ間では、誤差を高速に読み書き可能なレジスタに保持することができ、高速に処理をすることができる。しかし、ドット形成有無の判断を並行して行うため、量子化処理方向をラスタ毎に切り替えることが難しい。そのため、特許文献１に開示された方法の効果である、記録画像の低濃度部に表れるドットのつながりや記録画像の高濃度部に表れる白抜けのつながりを抑制する効果を得るためには、発生した誤差を周囲の未処理画素へ拡散する範囲を広くとる必要がある。その結果、未処理画素へ拡散する誤差の演算量が増大してしまうという課題がある。
【０００９】
そこで、本発明は、このような課題を解決するためになされたものである。具体的には、誤差拡散処理時のメモリへのアクセスを低減することで高速に処理を行うとともに、良好にドットを分散するハーフトーン処理を行う画像処理方法及び記録装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記の課題を解決するための本発明は、ラスタ方向と前記ラスタ方向に直交するカラム方向とによって各画素の位置が定義される階調画像に誤差拡散処理を施す画像処理装置における画像処理方法であって、
階調画像を表すＮラスタ（Nは２以上の整数）分の多値データについて、量子化対象となる注目画素を量子化する量子化工程と、
前記量子化工程によって量子化された画素の誤差を、量子化前の周辺の多値データに加算する加算工程と、
を有し、
前記量子化工程においては、
前記注目画素を前記カラム方向に移動させながら前記量子化を行い、同一カラムのN画素分の処理が終了し、前記注目画素を次のカラムに移動させた後に前記カラム方向に量子化を行うことを繰り返すことによりNラスタ分の前記多値データを処理し、
前記加算工程においては、
前記量子化された画素よりも前に量子化された画素のラスタにおける量子化前の画素を含む周辺の量子化前の画素に前記誤差を加算し、かつ、一つのラスタの画素の処理においてそのラスタの画素の誤差が加算される画素は、一通りに定められていることを特徴とする。
【００１１】
また、上記の課題を解決するための別の本発明は、上記画像処理方法を用いて形成された擬似階調画像に基づいて記録媒体に画像を記録することを特徴とする記録装置である。
【発明の効果】
【００１２】
本発明によれば、量子化処理方向をＮラスタ（Ｎ≧２）毎に同一方向とし、発生する誤差を処理ラスタより前のラスタの未処理画素を含む範囲に分配することにより、誤差拡散処理時のメモリへのアクセスを低減し、良好にドットを分散することが出来る。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の実施例について、図面を参照して詳細に説明する。本発明の実施例では、濃度保存型の量子化方法として誤差拡散処理法を例示する。
【００１４】
なお、この明細書において、「記録」（以下、「プリント」とも称する）とは、文字、図形等有意の情報を形成する場合のみならず、有意無意を問わず、広く記録媒体上に画像、模様、パターン等を形成する、又は媒体の加工を行う場合も表すものとする。また、人間が視覚で知覚し得るように顕在化したものであるか否かを問わない。
【００１５】
また、「記録媒体」とは、一般的な記録装置で用いられる紙のみならず、広く、布、プラスチック・フィルム、金属板、ガラス、セラミックス、木材、皮革等、インクを受容可能なものも表すものとする。
【００１６】
また、「インク」とは、上記「記録」の定義と同様広く解釈されるべきもので、記録媒体上に付与されることによって、画像、模様、パターン等の形成又は記録媒体の加工、或いはインクの処理に供され得る液体を表すものとする。インクの処理としては、例えば記録媒体に付与されるインク中の色剤の凝固又は不溶化させることが挙げられる。
【００１７】
またさらに、「ノズル」とは、特にことわらない限り吐出口乃至これに連通する液路及びインク吐出に利用されるエネルギーを発生する素子を総括して言うものとする。
【実施例１】
【００１８】
＜インクジェット記録装置本体の概略説明（図１６〜図１７）＞
図１６は本発明の代表的な実施例であるインクジェット記録装置の外観斜視図であり、図１７は図１６に示したインクジェット記録装置のアッパカバーを取り外した状態を示す斜視図である。
【００１９】
図１６〜図１７に示されるように、インクジェット記録装置（以下、記録装置）１０２の前面に手差し挿入口８８が設けられ、その下部に前面へ開閉可能なロール紙カセット８９が設けられている。記録紙等の記録媒体（以下、記録媒体）は手差し挿入口８８又はロール紙カセット８９から記録装置内部へと供給される。インクジェット記録装置は、２個の脚部９３に支持された装置本体９４、排紙された記録媒体を積載するスタッカ９０、内部が透視可能な透明で開閉可能なアッパカバー９１を備えている。また、装置本体９４の右側には、操作パネル部１２、インク供給ユニット１０８が配設されている。操作パネル部１２の裏側には制御ユニット１０５が配設される。
【００２０】
このような構成の記録装置１０２はＡ０、Ｂ０などのポスタサイズの大きな画像を記録することができる。
【００２１】
図１７に示されているように、記録装置１０２は、記録媒体を矢印Ｂ方向（副走査方向）に搬送するための搬送ローラ７０を備えている。また、記録媒体の幅方向（矢印Ａ方向、主走査方向）に往復移動可能に案内支持されたキャリッジユニット（以下、キャリッジ）１０４を備えている。キャリッジ１０４にはキャリッジモータ（不図示）の駆動力がキャリッジベルト（以下、ベルト）２７０を介して伝えられ、矢印Ａ方向に往復移動する。キャリッジ１０４にはインクジェット記録ヘッド（以下、記録ヘッド）１１が装着される。記録ヘッド１１の吐出口の目詰まりなどによるインク吐出不良は吸引式インク回復ユニット１０９により解消される。
【００２２】
この記録装置の場合、キャリッジ１０４には、記録媒体にカラー記録を行うために、４つのカラーインクに対応して４つのヘッドからなる記録ヘッド１１が装着されている。即ち、記録ヘッド１１は、Ｋ（ブラック）インクを吐出するＫヘッド、Ｃ（シアン）インクを吐出するＣヘッド、Ｍ（マゼンタ）インクを吐出するＭヘッド、Ｙ（イエロ）インクを吐出するＹヘッドで構成されている。このような構成のため、インク供給ユニット１０８にはＫインク、Ｃインク、Ｍインク、Ｙインクを夫々収容する４つのインクタンクが含まれる。
【００２３】
以上の構成で記録媒体に記録を行う場合、まず、送ローラ７０によって記録媒体を所定の記録開始位置まで搬送する。その後、キャリッジ１０４により記録ヘッド１１を主走査方向に走査させる動作と、搬送ローラ７０により記録媒体を副走査方向に搬送させる動作とを繰り返すことにより、記録媒体全体に対する記録が行われる。
【００２４】
即ち、ベルト２７０およびキャリッジモータによってキャリッジ１０４が図１７に示された矢印Ａ方向に移動することにより、記録媒体に記録が行われる。キャリッジ１０４が走査される前の位置（ホームポジション）に戻されると、搬送ローラによって記録媒体が副走査方向に搬送され、その後、再び図２中の矢印Ａ方向にキャリッジを走査することにより、記録媒体に対する画像や文字等の記録が行なわれる。上記の動作を繰り返し、記録媒体の１枚分の記録が終了すると、その記録媒体はスタッカ９０内に排紙され、例えば、Ａ０サイズ１枚分の記録が完了する。
【００２５】
＜インクジェット記録装置の制御回路の説明（図１８）＞
図１８は、図１６〜図１７に示した記録装置の主要な制御構成を示すブロック図である。
【００２６】
図１８において、１０１は画像データやコマンド等を供給するホスト装置（この例では、パソコン（ＰＣ））である。記録装置１０２はＰＣ１０１からの画像データやコマンド、パラメータ、画像処理ＬＵＴ（ルックアップテーブル）等の受信を行い、その受信画像データをコマンドやパラメータ、画像処理ＬＵＴに応じて記録を行う。
【００２７】
パソコン（ＰＣ）１０１は、一般的なものであり、キーボードやディスプレイを有し、ユーザとのインタフェースをアプリケーションソフトや記録装置専用のプリンタドライバや専用プリンタ制御ソフト（ＲＩＰ等）で実現している。
【００２８】
さて、記録装置１０２は、記録装置１０２の全体を制御するためにＣＰＵ、ＡＳＩＣ、ＤＭＡＣ、ＲＡＭ、ＲＯＭなどを備えた制御ユニット１０５を含む。また、記録ヘッド１１を搭載したキャリッジ１０４、キャリッジ１０４を主走査方向に往復移動させるキャリッジ搬送ユニット１０６を含む。加えて、記録装置１０２は記録媒体を副走査方向に移動させる媒体搬送ユニット１０７、記録ヘッド１１へインクを供給する供給ユニット１０８、記録ヘッド１１を良好な状態に回復させる回復ユニット１０９を含む。さらに、記録装置１０２には記録ヘッド１１の電源や制御ユニット１０５や他のユニット部に電源を供給する電源ユニット１０や、キースイッチやＬＣＤなどのディスプレイを有する操作パネル部１２が備えられている。
【００２９】
なお、この実施例では、機構部の詳細な図面や説明は省略するが、記録装置１０２はシリアルプリンタ動作する。
【００３０】
電源ユニット１０は、ＡＣスイッチや操作パネル部１２上のソフトスイッチ等でオンオフされる。そして、制御ユニット１０５には、ロジック電源として電圧３．３Ｖと５Ｖの電源が供給され、各ユニットのアクチュエータ（モータ等）に対しては電圧２４Ｖの電源が制御ユニット内のＩ／Ｏ制御部＆ドライバ部２６経由で供給される。また、記録ヘッド１１のヘッド電源は、制御ユニット内のヘッド電源制御部を介して設定電圧値で電源ユニット１０から供給される。
【００３１】
制御ユニット１０５は機能的には、全体動作を管理するシーケンス制御部２１、画像データを記録データに変換する画像処理部２３、記録データを記録装置１０２の動作に合わせてタイミング調整するタイミング制御部２４を備える。さらに、記録ヘッド１１の駆動データや駆動パルスや駆動電圧等を制御するヘッド駆動部２５、記録装置１０２の内部ユニットのセンサやアクチュエータ（モータ等）とのインタフェースや駆動制御を行うＩ／Ｏ制御部＆ドライバ部２６等も備えられる。
【００３２】
制御ユニット１０５は、物理的には回路基板である。特に、シーケンス制御部２１はＣＰＵ、そのＣＰＵの制御用プログラムや各種データを格納するＲＯＭ、ＣＰＵのワークエリアとして使用され各種データを格納するＲＡＭ、ホスト装置であるＰＣ１０１とのインタフェースを制御するＩ／Ｆ部等で構成される。一方、画像処理部２３、タイミング制御部２４、及びヘッド駆動部２５は、ＡＳＩＣとＲＡＭなどのメモリで主に構成され、Ｉ／Ｏ制御部＆ドライバ部２６は汎用ＬＳＩやトランジスタ等の電気回路で構成される。
【００３３】
画像処理部２３は色変換処理部４３、出力γ処理部４４、以下に詳細に説明する擬似中間調処理を行う２値化処理部４６を含む。色変換処理部４３では、ＰＣ１０１からの輝度データ（ＲＧＢ各色成分データ）をインク色に対応した濃度データ（Ｋ、Ｃ、Ｍ、Ｙ成分）に画像処理ＬＵＴに基づいて変換する。出力γ処理部４４は、色変換処理部４３からの濃度データを記録装置１０２の出力γ特性に基づいてγ変換する。そして、２値化処理部４６は出力γ処理部４４からの濃度データ（多値データ）を以下に説明する誤差拡散法を用いて擬似中間調処理を行い２値の画像データに変換する。
【００３４】
タイミング制御部２４は、ＨＶ変換部４７とメモリ部４８とレジ調整部４９を含む。ＨＶ変換部４７では、画像処理部２３で処理された各インク色に対応した２値の画像データの配列順番（ラスタ方向（主走査方向）順）を記録ヘッド１１のノズル配列方向の順番（カラム方向（副走査方向）順）に変換する。そのカラム方向順に変換された画像データはメモリ部４８に格納される。レジ調整部４９では、メモリ部４８からの読み出しタイミングを記録ヘッド１１の位置や移動方向等に応じて各インク色に対応した画像データ毎に制御し各インクによる記録がずれない様に調整する。
【００３５】
次に、以上のような構成の記録装置の２値化処理部４６に適用される誤差拡散法について説明する。
【００３６】
なお、以上の構成からも明らかなように、画像濃度データはＫ、Ｃ、Ｍ、Ｙ成分からなるが、各色成分についての処理は同じであるので、ここでは１つの色成分の処理についてのみ説明する。また、各色成分の各画素は８ビットで表現されることとし、この１画素８ビットの濃度データが誤差拡散処理により２値化される。
【００３７】
最初に、処理ビット数８ビットで階調画像から２値の擬似階調画像を作成する通常の誤差拡散処理について、図１のフローチャートを用いて説明する。
【００３８】
画像データが画像処理装置１１６に入力されて、ラスタデータに対して誤差拡散処理が開始される前に量子化処理方向が決定される（ステップＳ１０５）。量子化処理方向は、画像の左端から右端への方向若しくは右端から左端への方向の２種類の方向から選択される。この処理方向は、０か１の乱数を用いてランダムに切り替えてもよいし、所定の規則性に基づいて切り替えてもよい。そして、バッファに保持された１ラスタ分のデータが画像処理部２３に入力され（ステップＳ１１０）、ステップＳ１０５で決定された処理方向へ誤差拡散処理を行うために、注目画素値Ｉｎが画像処理部２３に入力される（ステップＳ１２０）。次に、注目画素値Ｉｎに対して周辺画素からの累積誤差値Ｅｃｒｔが加算され（ステップＳ１２５）、画像処理部２３の２値化処理部４６において、入力補正値（Ｉｎ＋Ｅｃｒｔ）と閾値Ｔｈが比較される（ステップＳ１３０）。ここで入力補正値が閾値Ｔｈよりも大きい場合（（Ｉｎ＋Ｅｃｒｔ）＞Ｔｈ）はドットがＯＮ（出力値１）となり、閾値Ｔｈ以下の場合は（（Ｉｎ＋Ｅｃｒｔ）≦Ｔｈ）はドットがＯＦＦ（出力値０）となる。そして、ドットがＯＮの場合、量子化対象となる注目画素で発生する量子化誤差Ｅｒｒは、Ｅｒｒ＝（Ｉｎ＋Ｅｃｒｔ）―２５５で算出され、ドットがＯＦＦの場合は、Ｅｒｒ＝（Ｉｎ＋Ｅｃｒｔ）―０として算出される（ステップＳ１３５）。注目画素で発生した量子化誤差Ｅｒｒは、量子化処理方向が画像の左端から右端の場合は、図２に示す誤差拡散マトリクス１により、周辺の未処理画素に分配される（ステップＳ１４０）。なお、図２中の＊は注目画素を示し、図２中のＡ〜Ｄの画素に分配することを示している。量子化処理方向が画像の右端から左端の場合は、誤差拡散マトリクス１とは鏡像関係にある誤差拡散マトリクスが使用される。以上の処理により注目画素に対する処理が終了し（ステップＳ１７５）、画像処理部２３に入力された１ラスタ分のデータの全画素について処理が終了した場合は、全ラスタが終了したかの判定（ステップＳ１８５）に移る。ステップＳ１７５において画像処理部２３に入力された１ラスタの全画素について処理が終了していない場合は、ステップＳ１２０に移り、次の注目画素に対して処理を行う。ステップＳ１８５において全ラスタが終了した場合は、画像データに対する処理は終了し、全ラスタが終了していない場合は、次の１ラスタのデータに対して量子化処理方向の決定（ステップＳ１０５）を行う。
【００３９】
次に、本実施例における処理ビット数８ビットで階調画像から２値の擬似階調画像を作成する誤差拡散処理について図３のフローチャートを用いて説明する。本実施例における誤差拡散処理は、Ｎラスタ（Ｎは２以上の整数）毎に量子化処理方向を切り替え、先頭ラスタを除く（Ｎ−１）ラスタにおいて発生した誤差を処理ラスタより前のラスタの未処理画素を含む範囲に分配する誤差拡散処理である。なお、図１と同一の処理には同一の番号を記す。
【００４０】
ステップＳ１０５の処理は図１のステップＳ１０５の処理と同一なので説明を省略するが、本実施例では、Ｎラスタ毎に量子化処理方向を切り替えられる。そして、バッファに保持されたＮラスタ分のデータが画像処理部２３に入力され（ステップＳ１１５）、ステップＳ１２０に移る。ステップＳ１２０からステップＳ１３５までの処理は、図１のステップＳ１２０からステップＳ１３５までの処理と同一なので説明を省略する。ステップＳ１３５において発生した誤差は、処理方向が画像の左端から右端の場合は、注目画素がＮラスタ中の先頭ラスタであれば（ステップＳ１４５）、図４に示す誤差拡散マトリクス２により、周辺の未処理画素に分配される（ステップＳ１５５）。注目画素がＮラスタ中の先頭ラスタでない場合は、図４に示す誤差拡散マトリクス３により、処理ラスタより前のラスタの未処理画素を含む範囲に分配される（ステップＳ１６０）。処理方向が画像の右端から左端の場合は、誤差拡散マトリクス２及び誤差拡散マトリクス３とは鏡像関係にある誤差拡散マトリクスが使用される。なお、図４中の＊は注目画素を示し、図４中のＡ〜Ｈの画素に分配することを示している。以上の処理により注目画素に対する処理が終了し（ステップＳ１７０）、画像処理部２３に入力されたＮラスタの全画素について処理が終了した場合は（ステップＳ１８０）、全ラスタが終了したかの判定（ステップＳ１１０）に移る。画像処理部２３に入力されたＮラスタの全画素について処理が終了していない場合は、ステップＳ１２０に移り、次の注目画素に対して処理を行う。ステップＳ１８５の処理は図１のステップＳ１８５の処理と同一なので説明を省略する。
【００４１】
２ラスタ毎に量子化処理方向を切り替え、先頭ラスタを除く１ラスタにおいて発生した誤差を処理ラスタより前のラスタの未処理画素を含む範囲に分配する誤差拡散処理を例として、前記フローチャートを参照して以下に詳細に説明する。
【００４２】
２ラスタ分のデータの入力があり（ステップＳ１１５）、このデータに対して量子化処理方向が画像の左端から右端へ誤差拡散処理が行われる場合（ステップＳ１０５）について例示する。
【００４３】
通常の誤差拡散処理では、図５の（ａ）のように処理が行われ、大きな矢印で示す量子化処理方向へ、小さな矢印で示す順に１画素ずつ処理されていく。１ラスタ目の処理が終了した後に２ラスタ目へと処理が移り、量子化処理方向に１画素ずつ処理されていく。この場合、１ラスタ目と２ラスタ目とも図２の誤差拡散マトリクス１が用いられている。
【００４４】
一方、本実施例の誤差拡散処理では、２ラスタ目の誤差は、２ラスタ目より前のラスタ（１ラスタ目）の未処理画素を含む範囲に分配されるため（図４参照）、図５の（ｂ）のように処理が行われる。１ラスタ目と２ラスタ目の画素が交互に処理されていき、１ラスタ目では図４の誤差拡散マトリクス２により誤差が分配され、２ラスタ目では図４の誤差拡散マトリクス３により誤差が分配される。別の表現をすると、カラム方向に注目画素を移動させながら行うN画素分の量子化をラスタ方向に繰り返すことにより、Nラスタ分の多値データを量子化し、量子化された画素の誤差を誤差拡散マトリクスに従って量子化前の画素に分配している。
【００４５】
本実施例では、同一方向に処理されるＮラスタに分配される拡散誤差はレジスタに保持し、次のＮラスタへ分配される拡散誤差は、ＲＡＭに格納するものとする。ＣＰＵは、処理を行う演算器と処理中のデータを一時保持するレジスタとから構成されているため、レジスタに保持されているデータは、ＲＡＭに格納されているデータより高速に処理することが可能である。
【００４６】
前述の特許文献１で開示されている画像処理装置では、１ラスタ毎に次のラスタに拡散する誤差を１ラスタ分の誤差バッファであるＲＡＭに格納しており、次のラスタの多値情報が画像処理部に入力された際にＲＡＭから読み出され加算される。本実施例では、同一方向に処理される２ラスタに分配される拡散誤差はレジスタに保持し、次の２ラスタの先頭ラスタに拡散する誤差１ラスタ分をＲＡＭに格納する構成となる。そのため、従来に比べＲＡＭへのアクセスを半分に減少し、高速に処理することが可能となる。
【００４７】
また、本実施例では、先頭ラスタを除く１ラスタにおいて発生した誤差は、処理ラスタより前のラスタの未処理画素を含む範囲に分配される。図５（ａ）及び図５（ｂ）のどちらの処理を行っても、前述したように従来に比べＲＡＭへのアクセスが減少し、高速に処理することが可能である。
【００４８】
しかし、図５（ａ）の処理をする場合、図２の誤差拡散マトリクス１のみを用いて処理を行うと、図６のようにドットが鎖状に連なり、ドットの分散性が低下する。これは、図７に示すように、誤差の拡散範囲が小さく、誤差の拡散方向が同一方向であることから、上のラスタからの誤差が図７中の７０１の画素に伝わらず、図７中の７０１の画素がドットＯＮになり、ドットの分散性が低下するためと考えられる。これは、誤差拡散マトリクス（誤差の拡散範囲）を大きくすれば解消できるが、誤差拡散マトリクスを大きくすると、その分だけ分配する誤差を演算するために処理時間を要してしまう。
【００４９】
また、図８に示すように、１ラスタ目で誤差拡散マトリクス４を、２ラスタ目で誤差拡散マトリクス５をと、誤差の分配比率が異なる誤差拡散マトリクスを使用する場合も考えられる。なお、図８中の＊は注目画素を示し、図８中のＡ〜Ｈの画素に分配することを示している。また、誤差拡散マトリクス４と誤差拡散マトリクス５とでＡ〜Ｈの符号を変えていることで、誤差拡散マトリクス４と誤差拡散マトリクス５とで誤差の分配比率が異なることを示している。この場合、誤差拡散マトリクス４と誤差拡散マトリクス５の誤差の分配比率を類似した値に設定すると、前述したようにドットが鎖状に連なり、ドットの分散性が低下する。一方、誤差の分配比率を誤差拡散マトリクス４は主走査方向に誤差拡散マトリクス５は副走査方向に大きくとると、図９に示すように、ドットの分散性は良くなるが、誤差の分配比率を主走査方向に大きく設定したラスタにドットが集中する。これは、図１０に示すように、拡散される誤差が誤差の分配比率を主走査方向に大きく設定したラスタに偏るため、ドットが打たれやすいラスタとドットが打たれにくいラスタとが発生してしまうためである。通常、インクジェットプリンタ等のインク滴を吐出して画像を形成する画像処理装置は、図１１に示すようにラスタ方向と直交する方向に所定の解像度で配置されたノズル列を有する。このノズル列の各ノズルは各ラスタに対応しており、所定のノズルから所定の記録位置にインクが吐出される。そのため、前述のように、特定のラスタにドットが集中すると、そのラスタに対応する特定のノズルのみが連続して使用されてしまうため、その特定のノズルの性能が他のノズルよりも早く低下する場合がある。
【００５０】
そのため、本実施例で示すように、先頭ラスタを除く１ラスタにおいて発生した誤差を処理ラスタより前のラスタの未処理画素を含む範囲に分配する。その結果、誤差拡散マトリクスを大きくすることなく、図１２に示すような、特定のラスタにドットが集中しておらずドット分散性のよい出力画像が得られる。
【００５１】
このように、本実施例の処理は、従来に比べメモリ（ＲＡＭ）へのアクセスが減少することで高速に処理が行えるとともに、ドット分散性が良好な出力画像を得ることができる。
【実施例２】
【００５２】
本実施例での処理を図１３のフローチャートを用いて説明する。なお、図１、図３と同一の処理には、同一の番号を記し、詳しい説明は省略する。
【００５３】
本実施例では、ステップＳ１４５で注目画素がＮラスタ中の先頭ラスタでない場合はステップＳ１５０に移り、注目画素がＮラスタ中の２ラスタ目であるかどうかを判断する。そして、２ラスタ目の場合は誤差拡散マトリクス３により（ステップＳ１６０）、それ以外のラスタの場合は図１４に示す誤差拡散マトリクス６により（ステップＳ１６５）周辺の未処理画素に誤差を分配する。なお、図１４中の＊は注目画素を示し、図１４中のＩ〜Ｎの画素に分配することを示している。これらの処理以外は実施例１の図３の処理と共通する。
【００５４】
３ラスタ毎に量子化処理方向を切り替え、先頭ラスタを除く２ラスタにおいて発生した誤差は処理ラスタより前のラスタの未処理画素を含む範囲に分配される誤差拡散処理を例として、前記フローチャートを参照して以下に詳細に説明する。
【００５５】
本実施例の誤差拡散処理では、２ラスタ目の誤差は、２ラスタ目より前のラスタ（１ラスタ目）の未処理画素を含む範囲に分配される。また、３ラスタ目の誤差は、３ラスタ目より前のラスタ（１ラスタ目、２ラスタ目）の未処理画素を含む範囲に分配される（図１４参照）。このため、図１５のように処理が行われる。１ラスタ目、２ラスタ目、３ラスタ目の画素が順に処理され、１ラスタ目では誤差拡散マトリクス２により誤差が分配され、２ラスタ目では誤差拡散マトリクス３により誤差が分配され、３ラスタ目では誤差拡散マトリクス６により誤差が分配される。
【００５６】
本実施例では、同一方向に処理される３ラスタに分配される拡散誤差はレジスタに保持し、次の３ラスタへ分配される拡散誤差は、ＲＡＭに格納するものとする。そのため、従来に比べＲＡＭへのアクセスが３分の１に減少し、高速に処理することが可能となる。さらに、３ラスタ目に発生した誤差を１ラスタ目の未処理画素まで分配しているため、実施例１よりもさらにドット分散性が良好な出力画像を得ることが可能となる。
【００５７】
以上、２つの実施例について説明したが、本発明はこれらの実施例に限られるものではなく、その要旨を逸脱しない範囲で様々な形態による実施が可能である。例えば、誤差拡散処理のビット数はどのような値をとってもよいし、量子化処理方向の決定処理とＮラスタ分のデータ入力処理の順序はどちらが先でもよい。また、以上に示した誤差拡散マトリクスは１例として示したもので、誤差拡散マトリクスの拡散範囲、誤差の分配比率は特定の値に限定されない。量子化処理方向が同一方向であるＮラスタに対して、処理ラスタより前のラスタの未処理画素を含む範囲に誤差の分配を行う誤差拡散マトリクスであれば、どのような誤差拡散マトリクスにしてもよい。さらに、このような誤差拡散マトリクスは、先頭ラスタを除く全てのラスタで使用される必要はなく、先頭ラスタを除くラスタの中の少なくとも１つのラスタで使用されてもよい。また、量子化処理方向が同一方向であるＮラスタにおける画素の処理順序はどのような順序をとってもよく、使用される誤差拡散マトリクスに応じて変更することができる。また、量子化処理方向も乱数を用いてランダムに処理方向を決定してもよいし、所定の規則性に基づいて処理方向を決定してもよい。
【００５８】
また、以上説明した実施例では、量子化処理方向が同一方向であるNラスタに対応したN種類の誤差拡散マトリクスを使用したが、使用する誤差拡散マトリクスの種類も限定されない。
【００５９】
また、以上説明した実施例では、多値の画像データを入力し、記録装置側でその画像データを濃度画像データに変換し、さらに、専用の回路で２値化処理（誤差拡散処理）を行うとしたが本発明はこれによって限定されるものではない。例えば、パソコンなどのホスト側で２値化処理（誤差拡散処理）を行っても良い。この場合、その処理はプリンタドライバなどのソフトウェアが実行しても良い。
【００６０】
なお、本発明は、複数の機器（例えばホストコンピュータ、インタフェース機器、リーダ、プリンタなど）から構成されるシステムに適用しても良い。
【００６１】
また、本発明の目的は、前述した実施例の機能を実現するプログラムを格納した記憶媒体をシステム或いは装置に供給し、それらのコンピュータ（又はＣＰＵ）がそのプログラムを読み出し実行することによっても達成される。この場合、記憶媒体から読み出されたプログラム自体が前述した実施例の機能を実現することにより、そのプログラム及び該プログラムを記憶した記憶媒体は本発明を構成することになる。プログラムを供給するための記憶媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることが出来る。
【００６２】
また、コンピュータが読み出したプログラムの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）などが実際の処理の一部を行い、その処理によって前述した実施例の機能が実現される場合も含まれる。
【００６３】
さらに、記憶媒体から読み出されたプログラムが、機能拡張ボードや機能拡張ユニットに備わるメモリに書き込まれ、それらのＣＰＵなどがプログラムの指示に基づき処理の一部又は全部を行い、前述した実施例の機能が実現される場合も含まれる。
【図面の簡単な説明】
【００６４】
【図１】通常の誤差拡散処理の一例を示すフローチャートである。
【図２】誤差拡散処理において使用する誤差拡散マトリクスの一例を示す図である。
【図３】実施例１の誤差拡散処理を示すフローチャートである。
【図４】実施例１の誤差拡散処理において使用する誤差拡散マトリクスを示す図である。
【図５】誤差拡散処理における量子化処理方向と画素の処理順序を示す図である。
【図６】誤差拡散処理結果の１例を示す図である。
【図７】ドットが鎖状に連なる原因を説明する図である。
【図８】誤差拡散処理において使用する誤差拡散マトリクスの１例を例示する図である。
【図９】誤差拡散処理結果の１例を示す図である。
【図１０】ドットが特定のラスタに集中する原因を説明する図である。
【図１１】本発明が適用可能なインクジェットプリンタのノズル列を例示する図である。
【図１２】実施例１の誤差拡散処理結果を例示する図である。
【図１３】実施例２の誤差拡散処理を示すフローチャートである。
【図１４】実施例２の誤差拡散処理において使用する誤差拡散マトリクスを示す図である。
【図１５】実施例２の誤差拡散処理における量子化処理方向と画素の処理順序を示す図である。
【図１６】本発明の代表的な実施例であるインクジェット記録装置の外観斜視図である。
【図１７】本発明の代表的な実施例であるインクジェット記録装置の外観斜視図である。
【図１８】図１６〜図１７に示した記録装置の主要な制御構成を示すブロック図である。
【符号の説明】
【００６５】
４６  ２値化処理部
【図１】
0004989378.tif 000002
【図２】
0004989378.tif 000003
【図３】
0004989378.tif 000004
【図４】
0004989378.tif 000005
【図５】
0004989378.tif 000006
【図７】
0004989378.tif 000007
【図８】
0004989378.tif 000008
【図１０】
0004989378.tif 000009
【図１１】
0004989378.tif 000010
【図１３】
0004989378.tif 000011
【図１４】
0004989378.tif 000012
【図１５】
0004989378.tif 000013
【図１６】
0004989378.tif 000014
【図１７】
0004989378.tif 000015
【図１８】
0004989378.tif 000016
【図６】
0004989378.tif 000017
【図９】
0004989378.tif 000018
【図１２】
0004989378.tif 000019