(57)【特許請求の範囲】
【請求項１】
１つのラスタ内の画像データであって複数階調を複数ビットで表現する画像データを印刷ヘッドの複数の走査で印刷する印刷装置において，
マスクデータを不規則に配置したマスクテーブルと，
前記画像データと複数ビットのマスクデータとの入力に応じて，当該画像データが表現する階調値で印刷有り，印刷無し，または当該画像データが表現する階調値とは異なる階調値で印刷有りを示す印刷画像データを出力するよう形成された変換テーブルと，
前記１つのラスタ内の画像データを，前記マスクデータに基づいて前記複数の走査の印刷画像データに不規則に分散させる第１，第２の分散処理を行うマスク処理部とを有し，
前記マスク処理部は，第１の分散処理では，前記画像データと前記マスクテーブルから読み出された複数ビットのマスクデータとの組合せに応じて，前記変換テーブルから第１の走査の印刷画像データと，第２の分散処理の対象となる印刷画像データとを抽出し，
第２の分散処理では，前記抽出された第２の分散処理の対象となる印刷画像データから，前記マスクテーブルから読み出された複数ビットのマスクデータのうちいずれかのビットのマスクデータに基づいて，第２及び第３の走査の印刷画像データを抽出することを特徴とする印刷装置。
【請求項２】
請求項１において，
前記マスク処理部は，前記マスクテーブルの第１の位置から読み出された複数ビットのマスクデータに基づいて前記第１の分散処理を行い，
さらに前記マスクテーブルの当該第１の位置とは異なる第２の位置から読み出された複数ビットのマスクデータに基づいて前記第２の分散処理を行うことを特徴とする印刷装置。
【請求項３】
請求項１または請求項２において，
前記マスク処理部は，前記第１の分散処理において，前記第１の走査の印刷画像データを抽出するのに用いたマスクデータと前記第２の分散処理の対象となる印刷画像データを抽出するのに用いたマスクデータとが互いに反転するデータであり，
さらに前記第２の分散処理において，前記第２の走査の印刷画像データを抽出するのに用いたマスクデータと前記第３の走査の印刷画像データを抽出するのに用いたマスクデータとが互いに反転するデータであることを特徴とする印刷装置。
【請求項４】
請求項１乃至請求項３のいずれかにおいて，
前記複数ビットのマスクデータは２ビットのマスクデータであって，
前記マスク処理部は，前記マスクテーブルから読み出されたいずれかのビットにより他方のビットを置き換えることにより前記第２の分散処理を行うことを特徴とする印刷装置。
【請求項５】
請求項１において，
前記マスク処理部は，前記第１の分散処理では，画像データの一部において，第１の走査の印刷画像データと第２の分散処理の対象となる印刷画像データとが共通の画素に対してそれぞれドットを形成するデータを抽出し，前記ドットを形成するデータの一方は当該画像データの示すドットと同じ大きさのドットを形成するデータであり，他方は当該画像データと異なる大きさのドットを形成するデータであることを特徴とする印刷装置。
【請求項６】
１つのラスタ内の画像データであって複数階調を複数ビットで表現する画像データを印刷ヘッドの複数の走査で印刷する印刷方法において，
マスクデータを不規則に配置したマスクテーブルと，
前記画像データと複数ビットのマスクデータとの入力に応じて，当該画像データが表現する階調値で印刷有り，印刷無し，または当該画像データが表現する階調値とは異なる階調値で印刷有りを示すデータを出力するように形成された変換テーブルとを備える印刷装置で，
前記１つのラスタ内の前記画像データを，前記マスクデータに基づいて前記複数の走査の印刷画像データに不規則に分散させる第１，第２の分散処理工程を行う際に，
第１の分散処理工程では，前記１つのラスタ内の前記画像データと，前記マスクテーブルから読み出された複数ビットのマスクデータとの組合せに応じて，前記変換テーブルから第１の走査の印刷画像データと，第２の分散処理工程の対象となる印刷画像データとを抽出し，
第２の分散処理工程では，前記抽出された第２の分散処理工程の対象となる印刷画像データから，前記マスクテーブルから読み出された複数ビットのマスクデータのうちいずれかのビットのマスクデータに基づいて，第２及び第３の走査の印刷画像データを抽出することを特徴とする印刷方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，印刷装置に関し，特に複数ビットの画像データのマスク処理とデータ変換を共通のマスクテーブルを用いて行う印刷装置に関する。
【背景技術】
【０００２】
インクを吐出する複数のノズルを備えるヘッドが印刷媒体上を走査しながら印刷を行うインクジェットプリンタなどの印刷装置においては，各ノズルのハード特性やインク吐出特性などが画像上に集中して画質が劣化してしまうことを防ぐために，従来から，幾つかの画質向上のための技術が紹介されている。例えば，下記特許文献１または特許文献２には，インターレース方式という技術が開示されている。また，下記特許文献３及び特許文献４には，シングリング方式またはマルチスキャン方式と呼ばれる技術が開示されている。
【０００３】
また，前記ノズル特性等を印刷対象の画像上で分散させるための技術としてマスク処理が提案されている。マスク処理では，マスクデータと呼ばれる０と１の羅列からなるデータを収めたマスクテーブルを用いて，印刷に用いられる各ドットの画像データに対して不規則にマスキングを行い，印刷される画像データを複数回のヘッド走査に分散させる。さらに，印刷するドットの大小を複数ビットで表現するような画像データに対するマスク処理では，各ドットの画像データに対する不規則なマスキングに加えて，複数の走査において大きさを変えたドットを同じ位置に重ねて印刷するようにデータ変換を行うことが，ノズル特性の規則性を分散する上で有効である。
【０００４】
上述したマスク処理を用いた印刷には幾つかの種類があり，例えば，複数のノズルを副走査方向に備えるノズル列において，その上端部及び下端部に備えられるノズルで印刷される画像データについて上記マスク処理を行うＰＯＬ（Part-line Overlap）印刷や，画像の全域にわたってマスク処理を行うＦＯＬ（Full Overlap）印刷，あるいは画像全域とノズルの上下端とでそれぞれマスク処理を行うＰＯＬとＦＯＬを組み合わせた印刷方式における処理などがある。
【０００５】
従来，マスク処理を行う場合には，前述した不規則な分散の効果を十分に得るために，マスク処理ごとに前記マスクテーブルを備える必要があった。特に，ＰＯＬとＦＯＬを組み合わせた印刷方式では複数のマスク処理が行われるので，例えば複数ビットの画像データに対して上述したようなデータ変換を伴うマスク処理を行い，データ変換を伴わないマスク処理も行う場合には，マスク処理ごとに別のマスクテーブルを備えることが必要になる。
【特許文献１】米国特許第４，１９８，６４２号
【特許文献２】特開昭５３−２０４０号公報
【特許文献３】特開平３−２０７６６５号公報
【特許文献４】特公平４−１９０３０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら，従来の技術のように，それぞれのマスク処理ごとにマスクテーブルを備える方法では，マスク処理の高速化のために当該マスク処理をハードウェア化する際に，各マスクテーブル用の各メモリがチップ上に備えられることになり，それらの物理的占有面積が大きく，チップの小型化の障害となると共に，コストアップの要因となってしまう。
【０００７】
また，これら各マスクテーブル用のメモリを外部に持たせることもできるが，その場合には，外部メモリが別部品となってやはりコストアップの要因となってしまう。さらに，この場合には，外部メモリへのアクセスが必要になり，処理スピードが低下し，高速化の妨げとなってしまう。
【０００８】
そこで本発明の目的は，１つのラスタの複数ビットの画像データを複数の走査で印刷する場合に，データ変換を伴うマスク処理と，伴わないマスク処理とを共通のマスクテーブルを用いて行う印刷装置を提供することにある。
【課題を解決するための手段】
【０００９】
上記の目的を達成するために，本発明の第１の側面によれば，１つのラスタ内の画像データであって複数階調を複数ビットで表現する画像データを印刷ヘッドの複数の走査で印刷する印刷装置において，マスクデータを不規則に配置したマスクテーブルと，前記画像データと複数ビットのマスクデータとの入力に応じて，当該画像データが表現する階調値で印刷有り，印刷無し，または当該画像データが表現する階調値とは異なる階調値で印刷有りを示す印刷画像データを出力するよう形成された変換テーブルと，前記１つのラスタ内の画像データを，前記マスクデータに基づいて前記複数の走査の印刷画像データに不規則に分散させる第１，第２の分散処理を行うマスク処理部とを有し，前記マスク処理部は，第１の分散処理では，前記画像データと前記マスクテーブルから読み出された複数ビットのマスクデータとの組合せに応じて，前記変換テーブルから第１の走査の印刷画像データと，第２の分散処理の対象となる印刷画像データとを抽出し，第２の分散処理では，前記抽出された第２の分散処理の対象となる印刷画像データから，前記マスクテーブルから読み出された複数ビットのマスクデータのうちいずれかのビットのマスクデータに基づいて，第２及び第３の走査の印刷画像データを抽出することを特徴とする。
【００１０】
上記第１の側面によれば，例えばＦＯＬとＰＯＬを組み合わせた印刷方式での分散処理において，１ラスタの複数ビットの画像データを複数の走査に分散する場合に，異なる分散処理で同じマスクテーブルを共有でき，マスクテーブル用のハードウェア資源を節約できるのでチップの小型化・コストの低減を図ることができる。
【００１１】
上記第１の側面において好ましい実施例によれば，前記マスク処理部は，前記マスクテーブルの第１の位置から読み出された複数ビットのマスクデータに基づいて前記第１の分散処理を行い，さらに前記マスクテーブルの当該第１の位置とは異なる第２の位置から読み出された複数ビットのマスクデータに基づいて前記第２の分散処理を行うことを特徴とする。よって，種類の異なる複数の分散処理において使用するマスクデータのパターンを異ならせることにより，より効果的にノズル特性の分散ができ，画質の向上を図ることができる。
【発明を実施するための最良の形態】
【００１２】
以下，図面にしたがって本発明の実施の形態について説明する。但し，発明の技術的範囲はこれらの実施の形態に限定されず，特許請求の範囲に記載された事項とその均等物まで及ぶものである。
【００１３】
図１は，本発明を適用した印刷装置の実施の形態例に係る構成図である。図１のプリンタ１が本発明を適用した印刷装置である。複数ビットの画像データに対し，指定したマスクテーブル上の位置から連なる複数ビットのマスクデータを読み出して，これを用いたマスク処理を実行する。先頭位置として指定されるマスクテーブル上の位置の自由度を高めるとともに，読み出した複数ビットのマスクデータのいずれかのビットを用いることにより，複数種類のマスク処理で１つのマスクテーブルを共用する。なおかつ，マスク処理の効果を落とすことなく，また，そのための装置規模を小さく抑えつつ，高速に行おうとするものである。
【００１４】
本実施の形態例に係るプリンタ１は，一例として，カラーで印刷可能なインクジェットプリンタであり，図１に示すように，Ｉ／Ｆ２，ＣＰＵ３，画像処理ユニット４，メモリ１０，ローカルバス９，ＤＳＰ１１，及びヘッド１２（印刷ヘッド）等で構成されている。ホストコンピュータなど外部から送信される印刷要求とその画像データは，Ｉ／Ｆ２を介してメモリ１０に格納される。その後，受信された圧縮されている画像データに対して，画像処理ユニット４，ＤＳＰ１１等により，解凍処理，色変換処理，二値化処理，及びマスク処理がそれぞれ行なわれ，処理後のデータがヘッド１２に出力される。ヘッド１２では，転送される画像データに基づいて順次インクを吐出し，印刷媒体への印字を実行する。なお，本プリンタ１では，Ｃ（シアン）Ｍ（マゼンタ）Ｙ（イエロー）Ｋ（ブラック）の４色のインクを吐出して印刷する。
【００１５】
Ｉ／Ｆ２は，ホストコンピュータなどプリンタ１外部とのインターフェースを司り，ＣＰＵ３は，上記各種の画像処理を制御する。また，メモリ１０は，画像処理ユニット４の外部に設けられたユニット外メモリであり，外部から受信した状態及び前述した各画像処理の処理後の状態における各画像データをそれぞれ所定領域に格納する。従って，解凍処理後のデータ，二値化処理後のデータ，マスク処理後のデータなどがそれぞれメモリ１０に格納される。本プリンタ１の特徴であるマスク処理部７は，メモリ１０に格納された二値化処理後のデータを読み出して処理し，処理後のデータをメモリ１０に書き戻す。
【００１６】
画像処理ユニット４は，図１に示すように，パス制御部５，解凍部６，マスク処理部７，及びヘッド出力部８等を有し，具体的には，ＡＳＩＣで構成される。パス制御部５は，前記Ｉ／Ｆ２を介してプリンタ１に入力されたデータの転送制御を行い，解凍部６は，圧縮されている画像データの前記解凍処理を行う。
【００１７】
マスク処理部７は，本プリンタ１の特徴部分であり，二値化処理後の画像データに対して，ヘッド１２の１回の走査で印刷される画像データを分散させるためのマスク処理を行う。また，当該マスク処理部７には，図示しないマスク処理に用いられるマスクテーブル７１，及び変換テーブル７２が備えられる。マスクテーブル７１，変換テーブル７２の構成については後述する。
【００１８】
ヘッド出力部８は，マスク処理後の画像データを読み込んで，ヘッド１２に順次出力する部分である。
【００１９】
ＤＳＰ１１は，前述した色変換処理及び二値化処理を行うプロセッサ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）であり，メモリ１０内に格納された所定の画像データを読み出して処理を実行し，処理後のデータを再びメモリ１０に書き戻す。
【００２０】
また，図１に示すように，画像処理ユニット４の各処理部とメモリ１０は，各処理部で必要となるメモリ１０とのデータ通信を高速に行うためのローカルバス９でつながれている。かかるローカルバス９は，いわゆるデータバスであり，画像処理ユニット４内の各処理部とＣＰＵ３をつなぐＣＰＵバスは，画像処理ユニット４内において図示を省略している。
【００２１】
最後に，ヘッド１２は，インクの色毎（ＣＭＹＫ毎）にノズル列１２１を有し，主走査方向に移動しながら，ヘッド出力部８から転送される各色の画像データに従って順次インク吐出を行い印刷媒体に印字を実施する部分である。
【００２２】
図２は，マスクテーブル７１を例示した図である。図示されるように，マスクテーブル７１は，縦横２５６の「１」又は「０」の数字で構成されるものであり，これらの数字をマスクデータと呼ぶ。複数ビットの画像データにおいては，例えば２ビットのマスクデータが，１ドットの画像データに対応している。なお，上記マスクテーブル７１のサイズは一例であって，他のサイズにすることも可能である。
【００２３】
図３は，ヘッド１２に備えられるノズル列１２１を模式的に示した図である。各色のノズル列１２１は，副走査方向に２５６のノズル１２２（例えば，Ｃの色は，Ｃ１〜Ｃ２５６）を有し，４つのノズル列１２１は，全体として主走査方向に移動しながらインク吐出を行っていく。なお，備えられるノズル１２２の数２５６は一例であって，他の数であっても構わない。
【００２４】
以上説明したような構成を有する本プリンタ１では，前述したように，マスク処理部について特徴を有している。以下，図４から図６を用いて画像データに対するマスク処理について説明し，図７から図１０においては本実施形態における具体的な処理内容を説明する。
【００２５】
図４は，簡単のために１ビット画像データを例に取り，マスク処理の概要を説明する図である。１ビット画像データのマスク処理においては，図４（ａ）に示すラスタ（ｉ）の画像データ，ｉ１，ｉ２，ｉ３，ｉ４，ｉ５，…と，図４（ｂ）に示す先頭位置からのマスクデータ，「１，１，０，０，１，…」とが一つずつ順番に掛け合わされる。かかる乗算の結果が図４（ｃ）に示されている。すなわち，画像データｉ１には，最初のマスクデータ「１」が掛けられてそのままのデータとして残り，画像データｉ２には，２番目のマスクデータ「１」が掛けられて，これもそのままのデータとして残り，また，画像データｉ３には，３番目のマスクデータ「０」が掛けられて０という計算結果になっている。
【００２６】
このように，画像データにマスクデータを掛けることにより，「０」であるマスクデータに対応する画像データについては，元の値に関わらず０の値となり，当該画像データに対応するヘッド１２におけるインク吐出については行わないことになる。従って，これら画像データについては，マスキングされたことになり，当該ラスタについての２回目の走査において，インク吐出の対象となるように処理される。
【００２７】
当該ラスタの２回目の走査においては，前記読み出したマスクデータを反転した後に画像データに乗算する。すなわち，読み出されたマスクデータが「１」である場合には「０」として，また，読み出されたマスクデータが「０」である場合には「１」として，乗算を行う。図４の例では，前述のように，マスクデータ，「１，１，０，０，１，…」が読み出され，「０，０，１，１，０，…」と反転されて，画像データ，ｉ１，ｉ２，ｉ３，ｉ４，ｉ５，…と掛け合わされる。
【００２８】
図４（ｄ）は，その演算結果を示したものである。今回は，ｉ３，ｉ４等の画像データ残され，ｉ１，ｉ２等はマスキングされる。そして，処理後の画像データがメモリ１０に書き戻され，その後，１回目と同様に，当該書き戻された画像データがヘッド出力部８を介してヘッド１２に転送され，当該画像データに基づくインク吐出がなされる。
【００２９】
なお，今回のインク吐出は，当然に，前記１回目と異なるヘッド１２のパス（走査）で行なわれるが，マスク処理の効果を出すために，１回目とは異なるノズル１２２で行なわれる。例えば，画像データがＣの色のデータである場合には，１回目のインク吐出をＣ１のノズル１２２で行い，２回目をＣ２５６で行うようにする。このようにして，今回着目したラスタの１色の画像データについての１種類のマスク処理が終了し，前述のように，当該ラスタの画像データが二つの異なるノズル１２２により，マスクデータに基づく不規則な順番で打ち分けられることになる。従って，当該ラスタ内において，各ノズル特性の影響が分散されることになる。
【００３０】
次に，複数階調を複数ビットで表現する画像データに対するマスク処理を説明する。複数階調を複数ビットで表現する画像データとは，例えば，印刷されるドット面積を４階調で表現する２ビットの画像データである。すなわち，２ビットの画像データでは，データ状態の組合せにより１つのドットをドット無し（０，０），小ドット（０，１），中ドット（１，０），及び大ドット（１，１）の４通りに表現する。かかる２ビット画像データに対するマスク処理においては，ドットの印刷が有り・無しのみの排他的なマスク処理と，同じドットを複数の走査で大きさを変え，重ねて印刷するようなマスク処理とがある。以下，前者を便宜的に「排他的マスク処理」，後者を「変換マスク処理」という。
【００３１】
変換マスク処理では，例えば，中ドット（１，０）をある走査では小ドット（０，１）として印刷し，他の走査では同じ位置に別ノズルで中ドット（１，０）を印刷する。そうすることにより，ノズル特性の影響をさらに効果的に分散でき，印刷された画像の画質を向上させることができる。一方，排他的マスク処理では，１ビット画像データの場合と同様に，２ビット画像データにより示されるドットの大きさで印刷有り・無しに走査ごとに分散する。後述するＦＯＬとＰＯＬを組み合わせた印刷方式において１ラスタに対する分散処理を複数回行う場合には，前記変換マスク処理と排他的マスク処理とが併用される。
【００３２】
図５は，２ビット画像データに対し，上述した変換マスク処理を行う場合を説明する図である。図５（ａ）に示すラスタ（ｉ）の２ビット画像データ，（ｉ１Ｕ，ｉ１Ｌ），（ｉ２Ｕ，ｉ２Ｌ），（ｉ３Ｕ，ｉ３Ｌ），…はそれぞれ中ドット（１，０），小ドット（０，１），大ドット（１，１），…を表現している。ここで，図５の（ｂ）の矢印で示す先頭位置から２ビットずつのマスクデータ，「（１，０），（０，１），（０，１），…」が画像データに順に対応付けられ，図５（ｃ）に示す変換テーブル７２に基づき，印刷画像データが出力される。
【００３３】
ここで，変換テーブル７２について説明する。変換テーブルは，２ビット画像データの４通りの状態に対し，２ビットのマスクデータの４通りの状態をそれぞれ対応させ，計１６通りの印刷画像データを変換出力として定めるように形成される。テーブル１列目の「画像データ」は，画像データ２ビットで表現されるドットの状態に対応しており，ドット無し（０，０），小ドット（０，１），中ドット（１，０），大ドット（１，１）の４通りの状態が収められている。２列目の「マスクデータ」には，これらの状態それぞれについて，２ビットのマスクデータの状態４通りが対応付けられている。そして，３列目の「変換出力」には，画像データとマスクデータの組合せ１６通りに対応する印刷画像データが，ドット無し（０，０），小ドット（０，１），中ドット（１，０），大ドット（１，１）として収められている。
【００３４】
入力される画像データと印刷画像データとして出力される変換出力との関係は，次のとおりである。変換出力は，もとの画像データが表現する階調値で印刷有り，印刷無し，または異なる階調値で印刷有りのいずれかを示している。印刷の有無は２ビットのマスクデータの上位ビット（括弧内左側のビット）に対応付けられており，下位ビット（括弧内右側のビット）の如何によらず上位ビットが「１」のときは，もとの画像データが表現する階調値で印刷有りを示す印刷画像データとして，画像データと同サイズのドットを示す印刷画像データが変換出力として出力される（行Ｒ１２，Ｒ２２，Ｒ３２１，Ｒ３２２，Ｒ４２）。一方，上位ビットが「０」のときは，印刷無しを示す印刷画像データとしてドット無しを示す変換出力（０，０）が出力される（行Ｒ１１，Ｒ２１，Ｒ３１１，Ｒ４１）。また，マスクデータが反転した場合も同様に，反転マスクデータの上位ビットによって印刷の有無が決まる。
【００３５】
ただし，例外として，中ドットを示す画像データ（１，０）については，マスクデータ（０，１）のときは小ドットを示す変換出力（０，１）が出力される（行Ｒ３１２）。つまり，マスクデータの上位ビットが「０」であるので本来はドット無しを示す変換出力（０，０）が出力されるべきところ，中ドットを示すもとの画像データ（１，０）とは異なる階調値，つまり異なるドットの大きさで印刷有りを示す印刷画像データとして，小ドットを示す変換出力（０，１）が出力される。そして，この場合マスクデータを反転させた反転マスクデータは（１，０）となり，中ドットを示す画像データ（１，０）と反転マスクデータ（０，１）に対応して中ドットを示す変換出力（１，０）が出力される（行Ｒ３２１）。すなわち，中ドットを示す画像データ（１，０）にマスクデータ（０，１）が対応した場合は，１回目の走査では小ドットの変換出力（０，１）が出力され（行Ｒ３１２），２回目の走査では反転マスクデータ（１，０）に応じて中ドットの変換出力（１，０）が出力されて（行Ｒ３２１），２回の走査で異なるサイズのドットが重ねて印刷される。かかるデータ変換は，画質向上のために意図的になされたものであるが，異なるテーブル形成のされ方であっても構わない。
【００３６】
上記のように形成された変換テーブル７２に基づくと，図５（ａ）のラスタ（ｉ）に対する１回目の操作で印刷される印刷画像データとして，画像データ（ｉ１Ｕ，ｉ１Ｌ）については，画像データ（１，０）とマスクデータ（１，０）の組合せから中ドットの変換出力（１，０）が出力される。同様に，画像データ（ｉ２Ｕ，ｉ２Ｌ），（ｉ３Ｕ，ｉ３Ｌ）については，いずれもドット無しを示す変換出力（０，０）が出力され，かかるデータ変換の結果が図５（ｄ）において示されている。
【００３７】
次に，当該ラスタに対する２回目の走査については，マスクデータは反転して用いられるので，画像データ（ｉ１Ｕ，ｉ１Ｌ），（ｉ２Ｕ，ｉ２Ｌ），（ｉ３Ｕ，ｉ３Ｌ）に，図５（ｂ）の矢印で示す位置から２ビットずつのマスクデータの反転マスクデータ「（０，１），（１，０），（１，０），…」が対応する。すると，これらの画像データと反転マスクデータとの組合せに変換テーブル７２において対応付けられた変換出力は，図５（ｅ）に示すように小ドット（０，１），小ドット（０，１），大ドット（１，１）となり，２回目の走査で印刷される印刷画像データが生成される。
【００３８】
すると，中ドットを示す画像データ（１，０）である（ｉ１Ｕ，ｉ１Ｌ）については１回目の走査で中ドットを示す変換出力（１，０）が，２回目の走査では小ドットを示す変換出力（０，１）が出力されるので，２回の走査で異なる大きさのドットを重ねて印刷する。小ドットを示す画像データ（０，１）である（ｉ２Ｕ，ｉ２Ｌ）と，大ドットを示す画像データ（１，１）である（ｉ３Ｕ，ｉ３Ｌ）については，１回目の走査と２回目の走査で排他的に分散されている。
【００３９】
図６は２ビットの画像データに対し，上述した排他的マスク処理を行う場合を説明する図である。図６（ａ）では，図５（ａ）と同じラスタの画像データを示しており，図６（ｂ）ではマスクテーブル７２において図５（ｂ）で用いたマスクデータと同じ先頭位置からのマスクデータ，「（１，０），（０，１），（０，１），…」を示している。
【００４０】
まず，１ビット画像データの場合と同様に，単純に画像データの上位ビット・下位ビットに，対応するマスクデータの上位ビット・下位ビットそれぞれと乗算した結果を図６（ｃ）に示し，同マスクデータの反転マスクデータ「（０，１），（１，０），（１，０），…」の上位ビット・下位ビットと，画像データの上位ビット・下位ビットそれぞれとの乗算結果を図６（ｄ）に示す。すると，画像データ（ｉ１Ｕ，ｉ１Ｌ）は１回目の走査で中ドット（１，０），２回目ではドット無し（０，０）に，小ドット（０，１）である画像データ（ｉ２Ｕ，ｉ２Ｌ）は１回目が小ドット（０，１），２回目がドット無し（０，０）に，分散される。
【００４１】
しかし，大ドット（１，１）である画像データ（ｉ３Ｕ，ｉ３Ｌ）は１回目が小ドット（０，１），２回目が中ドット（１，０）として処理されてしまう。つまり，２回の走査で小ドットと中ドットを重ねて印刷することになる。これでは，１回の走査で大ドットを印刷し，別の走査では印刷しないという排他的マスク処理によって大ドットを形成することができないので，不都合である。
【００４２】
そこで，図６（ｅ）で示すように，マスクデータの上位ビットを拡張して下位ビットに置き換えるという操作を行うことにより，かかる不都合を解消する。すなわち，図６（ｂ）の矢印で示す先頭位置からの２ビットずつのマスクデータ「（１，０），（０，１），（０，１），…」が，それぞれ「（１，１），（０，０），（０，０），…」に変換される。上位ビットを拡張した後の乗算の結果が図６（ｆ）で示されており，同図では第３の画像データ（ｉ３Ｕ，ｉ３Ｌ）がドット無し（０，０）として処理される。また，反転マスクデータ「（０，０），（１，１），（１，１），…」により乗算された結果は図６（ｇ）に示されており，画像データ（ｉ３Ｕ，ｉ３Ｌ）は大ドット（１，１）として処理されるので，図６（ｆ），（ｇ）との間で排他的に分散されていることが確認できる。なお，上位ビットを拡張する方法は一例であって，下位ビットを拡張してもよく，上位・下位が同じビットを用いていれば同等の効果が得られる。
【００４３】
上述のとおり，図５，６では１つのマスクテーブルを２つの異なる処理，つまり変換マスク処理，排他的マスク処理で共通に使用することができることを示した。次に，これら２つの処理が併用されるＰＯＬとＦＯＬを組み合わせた印刷方式における処理について具体例で説明し，その後，マスク処理部の具体的な構成について説明する。
【００４４】
ＰＯＬ印刷は，ＦＯＬ印刷を改良するものである。ＦＯＬ印刷は，印刷ヘッドの機械的な製造誤差に伴うノズルの特性（インク吐出角度など）に起因するバンディングを抑制するために，各ラスタを異なる２つ以上のノズルで印刷することで，主走査方向の上記ノズル特性に起因する規則性を緩和し，良好な画質を実現するものである。ところが，すべてのラスタにＦＯＬ印刷を適用すると，すべてのラスタを複数回のヘッド走査で印字する必要があり，紙送り速度が低下し印刷速度の低下を招く。そこで，ＰＯＬ印刷では，機械誤差が特に著しい印刷ヘッドの両端のノズルについてのみ，上記のオーバーラップ印刷，つまり１ラスタを２つ以上のノズルで印刷する。つまり，１ラスタ内の画像データを複数回の印刷ヘッドの走査により異なるノズルで印刷する。
【００４５】
さらにＦＯＬ印刷にＰＯＬ印刷を組み合わせたような印刷方式（以下，「ＦＯＬ＋ＰＯＬ印刷」という）では，Ｎ回の走査で完結するＦＯＬ印刷において端部ノズルの領域のみさらに走査を重ね，その端部ノズルの領域のみＮ＋１回の走査以上で完結させるようにしてＰＯＬ印刷の原理を追加している。このＦＯＬ＋ＰＯＬ印刷では，印刷速度は低下するもののＰＯＬ印刷やＦＯＬ印刷よりも高いバンディング抑制効果を得ることが出来る。
【００４６】
図７は，ＦＯＬ＋ＰＯＬ印刷を行う場合における印刷ヘッドのノズル列１２１が，インターレースを行うノズル１２２を５つ有している例を説明する図である。各走査ＳＣ１〜ＳＣ３において，どのノズルが印刷媒体８０上のどの位置でインクを吐出可能かを示している。同図において，印刷媒体８０は各ラスタＲＳ１〜ＲＳ９で円で表した８画素のインク吐出位置を有し，それぞれの画素には吐出するノズルの番号が例示されている。印刷媒体８０が副走査方向に送られることにより，ノズル列１２１を有する印刷ヘッドの位置がずれて，各位置で主走査方向に走査される。つまり，走査ＳＣ１，２，３の順にノズル列が印刷媒体上を走査する。
【００４７】
ラスタＲＳ５に注目すると，第１の走査ＳＣ１で，ノズル番号１１が全８画素のうち２画素にインクを吐出し，第２の走査ＳＣ２で，ノズル番号３２が４画素にインクを吐出し，第３の走査ＳＣ３では，ノズル番号５３が残りの２画素にインクを吐出している。つまり，ラスタＲＳ５において，ノズル列１２１の上下端のノズルが２５％ずつの画素でインクを吐出し，上下端以外のノズルが残りの５０％の画素でインクを吐出している。しかも，各ノズルが吐出する位置は，ランダムになるように分散処理されている。これにより，ラスタＲＳ５は，上下端のノズルとそれ以外のノズルにより印字されるので，ラスタ方向でのノズルの機械誤差による規則性を緩和することができる。
【００４８】
なお，各ノズル列におけるノズル１２３については２回の走査でラスタの印刷を完結するようにすることで，ノズル１２３においては２回の走査で印刷を完結するＦＯＬ印刷を，ノズル１２２においては３回の走査で印刷を完結するＰＯＬ印刷をそれぞれ適用して，前述のＦＯＬ＋ＰＯＬ印刷を実現する。その場合，ノズル１２３は各走査で５０％ずつの画素でインクを吐出する。
【００４９】
図８は，印刷画像データを３種類のノズルＮＯＺ１，２，３に割り当てるための分散処理について説明する図である。図７で示したとおり，ＦＯＬ＋ＰＯＬ印刷では，１つのラスタを印字するノズルにノズル列の上下端のノズルが含まれる場合は，複数のノズル（及び走査），例えば３つのノズルに分けてインクの吐出が行われる。したがって，２ビット画像データの例では，ドット無し（０，０），小ドット（０，１），中ドット（１，０），及び大ドット（１，１）の印刷画像データを，３つのノズルＮＯＺ１，２，３（３つの走査で同じラスタに対応する異なるノズル）に割り当てるための分散処理が必要になる。
【００５０】
例えば，図７の例におけるラスタＲＳ５の画像データに対する処理では，第１の走査ＳＣ１でラスタＲＳ５に位置するノズルＮＯＺ１（図７のノズル番号１１に対応）に２５％，第２の走査ＳＣ２でラスタＲＳ５に位置するノズルＮＯＺ２（図７のノズル番号３２に対応）に５０％，第３の走査ＳＣ３でラスタＲＳ５に位置するノズルＮＯＺ３（図１０のノズル番号５３に対応）に２５％，それぞれ分散される必要がある。
【００５１】
そこで，本実施の形態では，共通のマスクテーブルを利用して上記の分散処理を行うために，分散処理１で第２の走査ＳＣ２のノズルＮＯＺ２と，第１，第３の走査ＳＣ１，ＳＣ３のノズルＮＯＺ１，ＮＯＺ３とに５０％ずつ画像データを分散し，さらに，分散処理２で第１，第３の走査ＳＣ１，ＳＣ３のノズルＮＯＺ１，ＮＯＺ３とに割り当てられた画像データを，両ノズルＮＯＺ１，ＮＯＺ３に５０％ずつ分散する。図８中では，ラスタＲＳ５においてインクを吐出するノズルのノズル番号のみ示している。分散処理１でノズルＮＯＺ２とＮＯＺ３とに５０％ずつ分散され，分散処理２により，ノズルＮＯＺ３の破線の画素がノズルＮＯＺ１に割り当てられている。
【００５２】
また，共通のマスクテーブルを用いて上述したような２回の分散処理により２５％，５０％，２５％に画像データを分散するために，本実施形態では変換テーブルを用いた分散処理（変換マスク処理）と，マスクテーブルから読み出した２ビットのマスクデータの上位ビットを拡張したマスク処理（排他的マスク処理）とを併用し，これら２つの処理ではマスクテーブルの異なる位置から読み出したマスクデータを使用する。
【００５３】
異なる位置から読み出す理由は次のとおりである。マスクテーブルのマスクデータは５０％の分散確率を有しているので，分散処理１，２で同じ上位ビットのマスクデータに基づく同じ排他的マスク処理をすると分散処理２でマスキングした結果が分散処理１でのマスキング結果と一致してしまうため，分散処理２で半分に分散することができなくなる。すなわち，２ビットのマスクデータの上位ビットに基づいてマスク処理を決める変換テーブルによる変換マスク処理と，上位ビットを拡張した排他的マスク処理を併用した場合に同じマスクデータを用いるとで，マスク処理を決める上位ビットのマスクデータが同じになってしまい，上記の不都合が生じる。
【００５４】
そこで，分散処理１，２それぞれにおいてマスクテーブル内の参照開始の先頭アドレスをそれぞれ異ならせることにより，利用するマスクデータも実質的に異なったマスクデータを利用することができ，１のマスクテーブルを実質的に複数の異なるマスクテーブルとして利用することができる。もっとも，排他的マスク処理において下位ビットを拡張する変形例では，分散処理１と分散処理２が同じマスクデータに基づく同じマスク処理にはならないので，同じマスクデータを用いてもかまわない。さらに，例えば分散処理２ではマスクテーブルから読み出した複数ビットのマスクデータを２ビットずつ用いずに１ビットずつ用いれば，開始の先頭アドレスは同じでも，実質的に異なったマスクデータとして用いることもできる。
【００５５】
図９は，マスク処理部の具体的な回路構成の例を示す図である。図１０は，図９のマスク処理部の回路動作を示すタイミングチャート図である。図９には，画像処理ユニット４（図１参照）内のマスク処理部の回路構成と，画像処理ユニットの外に設けられる外部メモリ１０と，ＣＰＵとが示されている。マスク処理部は，共通のマスクテーブル７１を格納した内蔵メモリと，分散処理１を行う変換テーブル７２及びセレクタ８６，ならびに分散処理２を行うＡＮＤゲート８８，９０，セレクタ９２及び２ビットマスクデータの上位ビット拡張回路９４とを有する。一次メモリＭＥＭ０は，内蔵メモリであってもよいし，あるいは外部メモリ１０内に確保してもよい。そして，ＣＰＵは，マスク処理部の動作を制御するために，マスクテーブルメモリへのアドレスＡＤＤ１と，一次メモリＭＥＭ０へのアドレスＡＤＤ２と，セレクタ８６，９２へのセレクト信号ＳＥＬ１，ＳＥＬ２と，分散された印刷画像データＰＰＤを格納する印刷画像データメモリへのアドレスＡＤＤ３とを供給する。
【００５６】
図１０を参照しながら，その回路動作を説明する。前述のとおり，ＰＯＬ＋ＦＯＬ印刷するためには，上下端ノズルで印刷されるラスタの画像データを３つのノズルに分散させる必要がある。そして，この３つのノズルは，走査位置とノズル位置により特定される。そこで，マスク処理部では，分散処理１と２により３つのノズルに分散させ，外部メモリ１０では，ヘッドの走査位置ＳＣ１，ＳＣ２，ＳＣ３毎に区分して，分散させた画像データ（印刷画像データ）を格納する。また，各走査位置において，分散させた画像データは，印刷ヘッド内のノズル毎に区分して格納される。ここで，印刷ヘッド内のノズルは，副走査方向のノズル位置と，ＣＭＹＫの色別のノズル位置とで特定される。
【００５７】
１つのラスタの画像データには，ＣＭＹＫの画像データが含まれるので，各色の画像データが順番にマスク処理される。そして，各色のマスク処理では，第１，第２，第３の走査ＳＣ１，２，３におけるそのラスタに対応するノズルの画像データに分散される。つまり，図１０中に示すように，ＣＭＹＫの色の順に，各色では第１，第２，第３の走査ＳＣ１，２，３におけるノズルの順にそれぞれの画像データの抽出が行われる。なお，各色の画像データの抽出は，１走査ごとに処理しても良い。
【００５８】
まず，シアンＣの２ビット画像データＰＤが外部メモリから供給され，変換テーブル７２に入力される。同時に，ＣＰＵはアドレスＡＤＤ１として第１の先頭番地からのアドレスＡ０１をマスクテーブル７１のメモリに与え，２ビットのマスクデータＭＤを読み出し，セレクタ８６を介して変換テーブル７２に入力する。ＣＰＵはセレクト信号ＳＥＬ１を「０」にして，マスクテーブル７１の出力を選択し，反転データを変換テーブル７２に入力し，変換テーブル７２により５０％に分散かつデータ変換された画像データＰＤ１を一次メモリＭＥＭ０に書き込む。これは分散処理１に対応し，図８の例では，第１，第３の走査ＳＣ１，３のノズルＮＯＺ１，３のノズル番号１１，５３の画像データが一次メモリＭＥＭ０に格納される。
【００５９】
続いて，ＣＰＵは，アドレスＡＤＤ１として前述のアドレスＡ０１とは異なるアドレスＡ０２をマスクテーブル７１のメモリに与え，異なる先頭番地からの２ビットのマスクデータＭＤを読み出し，上位ビット拡張回路９４においてマスクデータＭＤの上位ビットＵＢを下位ビットＬＢに拡張し，ＡＮＤゲート８８，９０に入力させる。同時にＣＰＵは，一次メモリＭＥＭ０へのアドレスＡＤＤ２を与えて分散処理１で書き込まれた画像データＰＤ２として第１，第２の走査ＳＣ１，３の画像データを読み出して，ＡＮＤゲート８８，９０に入力させる。そして，ＣＰＵは，セレクト信号ＳＥＬ２として「１」を供給し，セレクタ９２にＡＮＤゲート８８の出力を選択させ，印刷画像データメモリＭＥＭ１に第１の走査ＳＣ１のノズル番号１１の印刷画像データＰＰＤを入力する。つまり，第１の走査ＳＣ１におけるノズル番号１１の印刷画像データが外部メモリ１０のメモリ領域ＭＥＭ１に格納される。
【００６０】
次に，第２の走査ＳＣ２におけるノズル番号３２の画像データが抽出される。まず，シアンＣの画像データＰＤが外部メモリから供給され，変換テーブル７２に入力される。同時に，ＣＰＵはアドレスＡＤＤ１として第１の先頭番地からのアドレスＡ０１をマスクテーブル７１のメモリに与えてマスクデータＭＤを読み出し，セレクタ８６を介して変換テーブル７２に入力する。今度は，ＣＰＵはセレクト信号ＳＥＬ１を「１」にして，マスクテーブル７１の出力を選択し，マスクデータＭＤに基づき変換テーブル７２により５０％に分散かつデータ変換された画像データＰＤ１を一次メモリＭＥＭ０に書き込む。この分散処理１により，図８の例では，第２の走査ＳＣ２のノズルＮＯＺ２のノズル番号３２の画像データが一次メモリＭＥＭ０に格納される。走査ＳＣ２のノズルＮＯＺ２の画像データは，分散処理２を必要としないので，次の位相では，ＣＰＵがアドレスＡＤＤ２を一次メモリＭＥＭ０に与えて，分散済みの画像データＰＤ２を読み出し，セレクト信号ＳＥＬ２を「０」にして読み出した画像データＰＤ２を選択し，アドレスＡＤＤ３を供給して第２の走査ＳＣ２に対応する印刷画像データメモリＭＥＭ２に書き込む。
【００６１】
最後に，第３の走査ＳＣ３におけるノズル番号５３の画像データが抽出される。まず，ＣＰＵがアドレスＡＤＤ１としてＡ０１を，セレクト信号ＳＥＬ１として「１」を出力し，第１，第３の走査ＳＣ１，３での画像データを抽出し，一次メモリＭＥＭ０に格納する。これが分散処理１である。そして，次に，ＣＰＵがアドレスＡＤＤ１として上記とは異なるＡ０２を，セレクト信号ＳＥＬ２として「２」を出力し，ＡＮＤゲート９０の出力である第３の走査ＳＣ３での印刷画像データＰＰＤを抽出し，アドレスＡＤＤ３により印刷画像データメモリＭＥＭ３に書き込む。
【００６２】
以上で，ラスタＲＳ５でのシアンＣの画像データに対する複数の走査ＳＣ１，２，３への分散処理が終了する。そして，同じラスタＲＳ５でのマゼンタＭの画像データに対する分散処理が同様にして行われる。この時，ＣＰＵは，マスクテーブル７１へのアドレスＡＤＤ１として，シアンＣの場合と異なるアドレスＡ１１，Ａ１２を出力して，シアンの画像データの分散処理１，２の時とは異なる先頭番地からのマスクデータを読み出し，マゼンタの画像データの分散処理１，２を異なるマスクデータに基づいて行う。マゼンタＭの場合も，第１，第２，第３の走査ＳＣ１，２，３のノズルの画像データが順番にマスク処理を経て抽出される。
【００６３】
残りの色のイエローＹとブラックＫの画像データについても，同様に分散処理１，２が異なるマスクデータにより行われる。また，イエローＹ，ブラックＫのマスク処理も，シアンＣやマゼンタＭとは異なるアドレスＡ２１，Ａ３１により異なるマスクデータに基づいて行われる。
【００６４】
以上のように，分散処理１，２でマスクテーブル内の異なる先頭番地からマスクデータを読み出すことで，共通のマスクテーブルを利用しながら，実質的に異なるマスクテーブルによる分散処理を可能にする。同様に，色毎にマスクテーブル内の異なる先頭番地からマスクデータを読み出すことで，共通のマスクテーブルを利用しながら，実質的に異なるマスクテーブルによる分散処理を可能にする。
【００６５】
なお，共通のマスクテーブル内の異なる位置のマスクデータを参照することで，実質的に異なるマスクテーブルを利用したマスク処理が可能になる。そして，異なる位置のマスクデータを参照するためには，例えば先頭番地を異ならせて同じようにアドレスをインクリメントしてマスクデータを読み出せば良い。または，同じ先頭番地であってもアドレスを逆方向にインクリメントまたはデクリメントすることによっても異なる位置のマスクデータを参照することができる。
【００６６】
また，以上ではＣＰＵがＡＤＤ１，ＡＤＤ２，ＳＥＬ１，ＳＥＬ２の制御を直接行っていたが，制御は別途有するハードウェアが行いＣＰＵはこのハードウェアにその制御手順を指定するという構成でも良い。
【００６７】
以上のように，２ビットの画像データに対するＦＯＬ＋ＰＯＬ印刷において複数回の異なる種類の分散処理を行う場合にも，１つのマスクテーブルを共有することができ，マスク処理の効果を落とすことなく，また，そのための装置規模を小さく抑えつつ，高速に処理を行うことができる。
【図面の簡単な説明】
【００６８】
【図１】本発明を適用した印刷装置の実施の形態例に係る構成図である。
【図２】マスクテーブル７１を例示した図である。
【図３】ヘッド１２に備えられるノズル列１２１を模式的に示した図である。
【図４】１ビット画像データを例に取り，マスク処理の概要を説明する図である。
【図５】２ビット画像データに対し，変換マスク処理を行う場合を説明する図である。
【図６】２ビットの画像データに対し，排他的マスク処理を行う場合を説明する図である。
【図７】ＦＯＬ＋ＰＯＬ印刷を行う場合における印刷ヘッドのノズル列１２１が，インターレースを行うノズル１２２を５つ有している例を説明する図である。
【図８】印刷画像データを３種類のノズルＮＯＺ１，２，３に割り当てるための分散処理について説明する図である。
【図９】マスク処理部の具体的な回路構成の例を示す図である。
【図１０】図９のマスク処理部の回路動作を示すタイミングチャート図である。
【符号の説明】
【００６９】
７１：  マスクテーブル                    ７２：  変換テーブル
ＳＣ１：ヘッドの走査位置           ＰＤ：  画像データ
【図１】
0004572336.tif 000002
【図２】
0004572336.tif 000003
【図３】
0004572336.tif 000004
【図４】
0004572336.tif 000005
【図５】
0004572336.tif 000006
【図６】
0004572336.tif 000007
【図７】
0004572336.tif 000008
【図８】
0004572336.tif 000009
【図９】
0004572336.tif 000010
【図１０】
0004572336.tif 000011