(57)【要約】【課題】  従来、複数回のパスに分けて画像を印字する際に使用するマスクデータの記憶容量を減らしたいという課題があったが、単に所定の圧縮方法でパスごとのマスクを圧縮した場合、圧縮率が各パスのマスクパターンに依存するため、必ずしも効率よく記憶容量を減らせるわけではない。【解決手段】  画像データの所定の領域をＮ回に分けて記録するためのマスクデータを符号化する記録マスク符号化方法において、前記マスクデータを取得する取得工程と、前記取得したマスクデータの何回目の走査で画素を記録するかを示す記録パターンに対して割り振られたＮより小さいビット数の符号データを用いて、各画素の記録パターンを前記符号データで表したインデックスデータを生成する生成工程とを有する。【選択図】  図６
2011000826.tif 000002
【特許請求の範囲】
【請求項１】
画像データの所定の領域をＮ回に分けて記録するためのマスクデータを符号化する記録マスク符号化方法において、
前記マスクデータを取得する取得工程と、
前記取得したマスクデータの何回目の走査で画素を記録するかを示す記録パターンに対して割り振られたＮより小さいビット数の符号データを用いて、各画素の記録パターンを前記符号データで表したインデックスデータを生成する生成工程とを有することを特徴とする記録マスク符号化方法。
【請求項２】
前記インデックスデータを所定の符号化方法により圧縮符号化データに変換する圧縮工程と、前記記録パターンと符号データの組み合わせを変更して生成したインデックスを前記圧縮工程により圧縮符号化して複数の圧縮符号化データを生成し最小のデータ量である圧縮符号化データを出力することを特徴とする請求項１記載の記録マスク符号化方法。
【請求項３】
画像データの所定の領域をＮ回に分けて記録するためのマスクデータを用いて画像データを記録する記録方法において、
前記マスクデータの何回目の走査で画素を記録するかを示す記録パターンに対して割り振られたＮより小さいビット数の符号データを用いて作成された、各画素の記録パターンを前記符号データで表したインデックスデータから、前記マスクデータを生成する生成工程と、
前記生成されたマスクデータを用いて画像データを記録する記録工程を有することを特徴とする記録方法。
【請求項４】
前記生成工程は、前記インデックスデータを所定の符号化方法により変換された圧縮符号化データを伸長してインデックスデータを生成し、生成したインデックスデータから、前記マスクデータを生成することを特徴とする請求項３記載の記録方法。
【請求項５】
画像データの所定の領域をＮ回に分けて記録するためのマスクデータを用いて画像データを記録する記録装置において、
前記マスクデータの何回目の走査で画素を記録するかを示す記録パターンに対して割り振られたＮより小さいビット数の符号データを用いて作成された、各画素の記録パターンを前記符号データで表したインデックスデータから、前記マスクデータを生成する生成手段と、
前記生成されたマスクデータを用いて画像データを記録する記録手段を有することを特徴とする記録装置。
【請求項６】
前記生成手段は、前記インデックスデータを所定の符号化方法により変換された圧縮符号化データを伸長してインデックスデータを生成し、生成したインデックスデータから、前記マスクデータを生成することを特徴とする請求項５記載の記録装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記録マスク符号化方法および記録方法および記録装に関し、詳しくは、画像の同一領域に対して記録ヘッドを複数回走査させるとともにその同一領域に記録ヘッドの異なる吐出口を対応させて記録を行うマルチパス記録に用いるマスクデータに関する。
【背景技術】
【０００２】
複数の記録素子を備えた記録ヘッドを用いて記録動作を行う装置の一例として、従来から複数のインクの吐出口を備えた記録ヘッドを用いるインクジェット記録装置が知られている。中でもシリアル型のインクジェット記録装置では、所定の周波数でインクを吐出する記録ヘッドを当該周波数に対応した速度で走査させる記録主走査と、記録主走査と交差する方向に記録媒体を搬送する搬送動作とを間欠的に繰り返すことにより画像を形成する。このようなシリアル型のインクジェット記録装置は、比較的小型かつ低コストに製造することが出来るので、パーソナルユース向けに広く普及している。
【０００３】
このような記録装置において記録品位を向上させる一つの記録方法として、マルチパス記録方法が知られている。この方法は、例えば、記録ヘッドの走査に伴いそれぞれのインク吐出口に対応して被記録媒体上にインクドットが形成されるべき画素列であるラインを、記録ヘッドの複数回の走査（以下、走査をパスと記述）と、それらのパス間の被記録媒体である記録用紙の搬送とを繰り返すことにより、同一のラインに異なる複数の吐出口を対応させ、それらの異なる吐出口から吐出されたインクによってその同一ラインを記録する方法である。このマルチパス記録方法により、記録ヘッドの吐出口の間に吐出量や吐出方向のばらつきがあったとしても、記録される画像を構成する各ラインが複数の異なる吐出口からのインクによって形成されるため、吐出口の上述したばらつきが分散化され、ばらつきに起因した白スジ、黒スジなどの濃度ムラの発生を抑制できる。マルチパス記録方法の一形態は、例えば特許文献１に記載されている。この公報では、同じ画素に対して同色のインクを複数の異なるノズルから吐出して記録を行うことが開示されている。
【０００４】
マルチパス記録を行う場合、その記録データは通常、マスクデータ（以下、各パスに対応するものをマスク、各パスに対応するマスクを総じてマスクデータと記述）を用いて作成される。上述したように、記録に係る各ラインは記録ヘッドの複数回のパスで完成する。このため、それぞれのラインにおいて、複数回のパスのそれぞれで記録されるべき画素は、他のパスで記録されるべき画素との関係において相互に補完の関係にある。従って、この複数のパスのそれぞれで記録されるべき画素を定めるためにマスクが用いられる。
【０００５】
上述したマスクデータには、画素に関する１、０のデータ配置による種々のパターンがある。例えば、特許文献２記載のマスクデータに乱数を利用したものや、特許文献３記載の各パス領域の境界で生じる濃度ムラの一種であるつなぎスジを低減するため、境界に隣接する画素の記録比率を低くするマスクデータ等がある。
【０００６】
上述したマスクデータは、記録装置において記録２値データにマスク処理を施すため、予めその記録装置内にマスクを保持する構成が採られることがある。マスクデータは複数のパス数に対応した個別のマスクを保持する必要があることもあり、比較的データ量が多い。そのため、ＲＯＭ等のメモリ容量を増加させ、低コスト化の妨げになるという問題があった。
【０００７】
この問題に対して特許文献４では、まず、画像データをビットマップ展開して展開バッファへ記憶し、１記録パスごとに展開バッファ内のビットマップへマスクを論理積処理して記録します。そして、マスクの１と０を反転したデータを展開バッファ内のビットマップに論理積処理して更新する構成を採用することで、用意しておくマスクを記録パス数よりも１つ少ない数に減少することが出来るようにした技術が開示されています。これにより、マスクデータを格納するメモリ容量が少なくて済むという効果がある。そのため、例えば、２パスのマスクデータであればその容量を２分の１に減らす（５０％減）ことが可能であるが、１６パスのマスクデータの場合は容量を１６分の１５に減らす（６．２５％減）こととなり、パス数が多くなるほどマスクデータの容量削減率が小さくなる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開平０２−２３１１４９号公報
【特許文献２】特開平０７−０５２３９０号公報
【特許文献３】特開平０６−１４３６１８号公報
【特許文献４】特開平０８−１８３２０８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
従来、複数回のパスに分けて画像を印字する際に使用するマスクデータの記憶容量を減らしたいという課題があったが、単に所定の圧縮方法でパスごとのマスクを圧縮した場合、圧縮率が各パスのマスクパターンに依存するため、必ずしも効率よく記憶容量を減らせるわけではない。本発明は、この点に鑑み、効率よくマスクデータの記憶容量を減らすことが出来るマスクデータの符号化・復号化方法を提供することまたはその符号化方法で記憶されたマスクデータを復号化して画像データに適用して記録する記録装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記の課題を解決するための一手法として、本発明は以下の特徴を備える。
画像データの所定の領域をＮ回に分けて記録するためのマスクデータを符号化する記録マスク符号化方法において、前記マスクデータを取得する取得工程と、前記取得したマスクデータの何回目の走査で画素を記録するかを示す記録パターンに対して割り振られたＮより小さいビット数の符号データを用いて、各画素の記録パターンを前記符号データで表したインデックスデータを生成する生成工程とを有する。
【発明の効果】
【００１１】
本発明によれば、画像データの所定の領域をＮ回に分けて記録することに関し、マスクデータの何回目の走査で画素を記録するかを示す記録パターンに対して割り振られたＮより小さいビット数の符号データを用いて、各画素の記録パターンを前記符号データで表したインデックスデータを用いるためマスクデータの記憶容量を削減することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明におけるマスクの一例を簡単に示す図である。
【図２】本発明の実施例で使用するシリアル型のインクジェット記録装置の内部構成を説明するための概略図である。
【図３】本発明の実施例で使用するインクジェット記録装置の制御ハードウェアの概略構成を説明するためのブロック図である。
【図４】実施例１において、４パス印字におけるマスクデータと画像データとの関係を説明するための図である。
【図５】実施例１において、マスクデータの符号化処理を説明するためのフローチャートである。
【図６】実施例１において、生成されるインデックスデータとマスクデータとの関係を説明するための図である。
【図７】実施例１において、関連情報が付加されたデータ形式を説明するための図である。
【図８】実施例１において、マスクデータへの復号化処理を説明するためのフローチャートである。
【図９】実施例２において、４パス印字におけるマスクデータと画像データとの関係を説明するための図である。
【図１０】実施例２において、マスクデータの符号化処理を説明するためのフローチャートである。
【図１１】実施例２において、記録パターン情報の詳細を説明するための図である。
【図１２】実施例２において、生成されるインデックスデータとマスクデータとの関係を説明するための図である。
【図１３】実施例２において、関連情報が付加されたデータ形式を説明するための図である。
【図１４】実施例２において、マスクデータへの復号化処理を説明するためのフローチャートである。
【図１５】図５または図１０を実行するコンピュータのブロック図である。
【発明を実施するための形態】
【００１３】
以下、本発明の実施形態について、図面を参照して詳細に説明する。
【実施例１】
【００１４】
本発明の説明で使用するマスクについて、図１を用いて説明する。本発明では、図１に示すような６×２のマスク（そのパスで記録される画素位置が１、記録されない画素位置が０のデータ）と記録２値データとのＡＮＤ演算を行うことでそのパスの記録２値データを作成する。実際の記録装置のマスクは、さらに大きなサイズを用いる場合が多いが、本発明実施例では、説明を簡単にするために小さいサイズのマスクを用いて説明する。
【００１５】
図２は、本実施例で使用するシリアル型のインクジェット記録装置の内部構成を説明するための概略図である。記録ヘッド１０５は主走査方向に一定の速度で移動するキャリッジ１０４に搭載され、上記一定の速度に対応した周波数でインクを滴として吐出する。１回の記録主走査が終了すると、搬送ローラ７０４および補助ローラ７０３が回転し、これらローラ対と給紙ローラ７０５および補助ローラ７０６に挟持された記録媒体Ｐは、記録ヘッド１０５の記録幅に対応した量だけ副走査方向に搬送される。このような記録主走査と搬送動作とを間欠的に繰り返すことにより、記録媒体Ｐに段階的に画像が記録される。
【００１６】
記録ヘッド１０５は、ブラック（Ｂｋ）、シアン（Ｃ）、マゼンタ（Ｍ）およびイエロー（Ｙ）の記録ヘッドが、図のように主走査方向に並列配置されており、各色の記録ヘッドには、複数の記録素子が記録解像度に応じた等しい密度で副走査方向に配備されている。なお、使用するインクの色はこの４色に加えてマットブラック（ＭＢｋ）、グレー（Ｇｙ）、淡グレー（Ｌｇ）淡シアン（Ｌｃ）、淡マゼンタ（Ｌｍ）、レッド（Ｒ）、グリーン（Ｇ）、ブルー（Ｂ）、その他の色のいずれかまたは全部を使用できる記録ヘッドであっても良い。
【００１７】
図３に本発明による記録装置２００の制御ハードウェアの概略構成を示す。
記録装置２００は、イメージコントローラ２１０とプリントエンジン２２０で構成され、ホストコンピュータ（外部装置）（以下、単にホストともいう）１００から画像データを受信して、記録処理を行う。
【００１８】
イメージコントローラ２１０は、記録装置２００の操作部（図示せず）、あるいはホストコンピュータ１００からの命令に従って、プリントエンジン２２０に制御コマンドを通知する。また、それとは別に印字中は、ホスト１００から受信した記録データを解析、展開して各色２値の画像データへの変換を行う。操作部は、記録装置２００に備えられた操作パネル上の各種入力キーなどを含む入力部、および、液晶ディスプレイ等を含む表示部からなる。プリントエンジン２２０は、イメージコントローラ２１０から送られた制御コマンドおよび画像データを基に実際の印字動作を行う。
【００１９】
イメージコントローラ２１０とプリントエンジン２２０との間は専用のインターフェースで接続され、イメージコントローラ２１０からプリントエンジン２２０へ制御コマンドを通知するコマンド通信ができる。また、このインターフェースを介してプリントエンジン２２０からイメージコントローラ２１０へプリントエンジン２２０の状態変化を通知するステータス送信からなる通信と、イメージコントローラ２１０からプリントエンジン２２０へ画像データ転送とを行うことができる。
【００２０】
プリントエンジン２２０自体は、ＲＯＭ２２３に記録されたプログラムに従って、ＭＰＵ（Ｍｉｃｒｏ  Ｐｒｏｃｅｓｓｏｒ  Ｕｎｉｔ）２２１により制御される。ＲＡＭ２２４はＭＰＵ２２１の作業領域や一時データ保存領域として利用される。ＭＰＵ２２１は、ＡＳＩＣ２２２を介して、キャリッジ駆動系２２８、搬送駆動系２２９、ヘッド駆動系２３０の制御を行う。また、ＭＰＵ２２１はＡＳＩＣ２２２から読み書き可能なプリントバッファ２２５、マスクバッファ２２６への読み書きが可能な構成になっている。また、ＡＳＩＣ２２２内には、符号化されたマスクデータを復号化するマスク復号化部２２７を備える。
【００２１】
プリントバッファ２２５は、ヘッドへ転送できる形式に変換された画像データを一時保管する。ここで、ヘッドへ転送できる形式に変換された画像データとは、ヘッドの長さ方向（図１の副走査方向）のノズル数に等しい画素数を持つデータであり、以下、ノズルデータともいう。マスクバッファ２２６は、プリントバッファ２２５からヘッドへ転送される画像データにＡＮＤ処理（論理積によるマスク）する所定のマスクパターンを一時的に保存する。このマスクデータとヘッドへ転送される画像データのＡＮＤ処理を繰り返し行うことで、マルチパス記録のための間引きを実現している。なお、パス数の異なるマルチパス印字のための複数組のマスクデータは符号化された状態でＲＯＭ２２３に用意されている。実際の印字時には、該当する符号化されたマスクデータがＲＯＭ２２３から読み出されてＡＳＩＣ２２２内のマスク復号化部２２７により復号化され、復号化されたマスクデータがマスクバッファ２２６に格納される。
【００２２】
次に、図３を参照しながら、記録装置２００の印字時の動作の概略を説明する。
ホスト１００から記録装置２００に画像データが送られることにより印字処理が開始される。イメージコントローラ２１０は、ホストから受信した画像データおよびプリントコマンドを解析し、印字品位等の印字に必要な情報を生成し、さらに画像データを解析、展開して各色２値の画像データへの変換を行う。また、イメージコントローラ２１０は、記録パス数を決定しＭＰＵ２２１へ通知する。ＭＰＵ２２１は、イメージコントローラ２１０から通知されたパス数に関する圧縮されたマスクをＲＯＭ２２３から読み出して、マスク復号化部２２７で復号化させ、マスクバッファ２２６へ復号化されたマスクデータの書き込みを行う。
【００２３】
その後、イメージコントローラ２１０では、画像データから変換した各色２値の画像データをプリントエンジン２２０へ転送する。プリントエンジン２２０では、転送された画像データをノズルデータに変換し、プリントバッファに２２５に書き込む。
【００２４】
イメージコントローラ２１０から画像転送を繰り返すことで、プリントエンジン２２０は、プリントバッファ２２５へ次々とノズルデータを保持させる。プリントバッファ２２５に保持されたノズルデータが、キャリッジ１０５の１回の走査で記録されるバンドデータを印字可能な量まで溜まった段階で、ＭＰＵ２２１はＡＳＩＣ２２２を介して、搬送駆動系２２９により用紙の搬送を行い、キャリッジ駆動系２２８によりキャリッジを移動させる。また、ＡＳＩＣ２２２に対して、画像の出力位置等の設定を行い、キャリッジを駆動して印字を開始する。
【００２５】
キャリッジが移動して、ＡＳＩＣ２２２に設定した印字開始位置に到達すると、ノズルデータが順次プリントバッファ２２５から読み出される。また、同時にマスクバッファ２２６から対応するマスクデータが読み出される。読み出されたノズルデータとマスクデータはＡＮＤ（論理積処理）され、ヘッドに転送される。ヘッド駆動系２３０の制御により、ヘッドでは、転送されたデータに従ってノズルを駆動して吐出を行う。ＭＰＵ２２１は、イメージコントローラ２１０からの画像受信からここまでの処理を繰り返すことで印字処理を行う。
【００２６】
以下、本実施の形態におけるマスクデータの符号化処理、復号化処理について詳細に説明する。
図４に本実施の形態における４パスのマスクデータと画像データとの関係を示す。マスクは各パス毎に用意され、本実施例では４パスであるため１パスから４パスまでの４枚（４０２〜４０５）のマスクをマスクデータ４０１と呼ぶ。このマスクデータ４０１は、４パスであれば図４に示すようにヘッド４００のノズル領列を４つに分割した領域とに対応している。本実施例では分かり易いように、１パス分のマスク領域は副走査方向に２画素、主走査方向に６画素と非常に小さいサイズで説明する。そのため、マスクデータ全体では副走査方向に８画素、主走査方向に６画素となる。本実施例では、４枚のマスクの（４０２〜４０５）を同じ位置の画素単位にＯＲ（論理和処理）すると１パス領域内の全ての画素がドットＯＮになるように、各パスのマスクが構成されている。
【００２７】
図４では、ヘッド４００のノズル列に対して、用紙を図の下側から１パス分ずつ搬送を行う場合を示しており、マスクと画像データのＡＮＤ（論理積処理）をすることで各パスにおいて印字される出力データを得る。そのため、図４に示すように、各パスで印字されるドット位置は、そのパスまでの各マスクをＯＲ（論理和処理）したものと等しく、４パス目印字終了後のドットの出力結果は画像データそのものであり、画像が完成することとなる。
【００２８】
本実施の形態におけるマスクデータの符号化処理について図５に示すフローチャートにより詳細に説明する。なお、この処理は、メーカ内で予め行われる処理である。そして、この処理の結果得られる符号化されたマスクデータを記録装置ＲＯＭ２２３に記憶させて販売する。製品販売後にマスクデータが追加になる場合は、図５の処理で得られた符号化データを追加する処理、または、図５の処理で得られた符号化データによりマスクデータを変更する処理を記録装置に実行させる。追加または変更するマスクデータの供給は、ホストコンピュータ１００から行うが、不図示のメモリカードユニットにメモリカードを装着してメモリカードから読み出しても良い。さらに、ホストコンピュータは、マスクデータを取得する際、メモリカードを装着して取得しても良いし、ネットワークを介してダウンロードしても良い。追加または更新するマスクデータの供給方法は、他の実施例でも同じである。
【００２９】
本実施例では、図４に示したマスクデータ４０１を符号化する処理を図５を用いて詳細に説明する。図５は、記録装置２００の製造時にメーカ内のコンピュータ（図１５）で行われる処理を示した図である。図５のフローチャートは、図１５のコンピュータで実行可能なプログラムとしてコンピュータにインストールされ、コンピュータのＲＡＭやハードディスク等の記憶部に記憶され、コンピュータのＣＰＵにより読み出されて実行される。図５において、最初にマスクデータに関する情報の取得が行われる（Ｓ５０１）。本実施例でのマスクデータに関する情報とは、パス数とマスクデータを解析して得られる記録パターン数である。記録パターン数とは、出力画素がどのパスを使用して印字されるかを示す記録パターンの総数を示す情報である。本実施例で使用されるマスクデータは、マスク領域内の全ての画素が図４に示すように「１パス目で印字」、「２パス目で印字」、「３パス目で印字」、「４パス目で印字」のいずれかの記録パターンで印字される。そのため、パス数として“４”、記録パターン数として“４”が取得される。次に符号データのビット数を決定する（Ｓ５０２）。本実施例では、記録パターン数を表す最小ビット数を符号データのビット数とする。Ｓ５０１で取得した記録パターン数は“４”であるため、４つの情報を表すことが可能な最小ビット数として２ビット（００、０１、１０、１１（２進数））が特定される。そして、Ｓ５０２で特定されたビット数で表される符号データを各記録パターンに割り振る（Ｓ５０３）。本実施例では、「１パス目で印字」に“１１（２進数）”、「２パス目で印字」に“１０（２進数）”、「３パス目で印字」に“０１（２進数）”、「４パス目で印字」に“００（２進数）”を割り振る。次に、以上の情報からインデックスデータを生成する（Ｓ５０４）。図６は図４に示したマスクデータとマスクデータから生成されるインデックスデータ６０７を示す。図６のマスクデータは、各パスでドットを打つ位置が“１”、打たない位置が“０”の２値データとして図示している。図６では、説明のため各マスクの同一位置の画素に６００〜６０３の符号を付与する。画素位置６００〜６０３は、いずれも画像データ上の同一画素位置にある画素の画素値とマスクの値とをＡＮＤ（論理積）処理する画素位置である。図６では、例として各マスクの左上の画素位置に６００〜６０３の符号を付与したが他の画素位置でも各マスク間では画素位置に関して同様の関係がある。つまり、同一が沿い地に関して、１パス目用マスクの画素位置を画素位置６００、２パス目用マスクの画素位置を画素位置６０１、３パス目用マスクの画素位置を画素位置６０２、４パス目用マスクの画素位置を画素位置６０３とする。図６のインデックスデータ６０７の画素位置６０４は、１パス目用から４パス目用までのマスクの画素位置６００から６０３に対応した位置を示している。本実施例では、４パス目用マスクの画素位置６０３のみが“１”となっているため、画素位置６００から６０３に対応する画像データの画素値が１（ドットＯＮ）であれは、ドットは４パス目で印字されることになる。そのため、インデックスデータ６０７の画素位置６０４には、Ｓ５０３で「４パス目で印字」に割り振られた符号データ“００（２進数）”をデータとして挿入する。同様に、画素位置６０５には２パス目で印字されるため符号データ“１０（２進数）”を、画素位置６０６には３パス目で印字されるため符号データ“０１（２進数）”を挿入する。このように、各マスクの対応する画素位置（画像データ上の画素に対応する各マスクの画素位置）のデータから割り振る符号データを決定し、インデックスデータ６０７を生成する。そして、生成されたインデックスデータに対して復号化の際に必要な関連情報を付加する（Ｓ５０５）。図７に関連情報が付加された本実施例のデータ形式を示す。図７に示すようにヘッダーに関連情報として、本実施例ではパス数、記録パターン数、割り振られた符号データが付加される。関連情報が付加されたインデックスデータは、所定のファイル名を付与して、このプログラムを実行した図１５のコンピュータの記憶部に出力される。
【００３０】
本実施例の符号化方法により、１０画素×４０画素のマスクデータ（各パスのマスクは１０画素×１０画素）を符号化した場合の符号化されたデータの容量は、関連情報が１２ビット（２ビット（パス数：最大４パスまで記述可能）＋２ビット（記録パターン数））＋８ビット（各記録パターンに対応する符号データの総ビット数）、インデックスデータが２００ビット（２ビット×１００画素）の合計２１２ビットとなる。一方、従来のマスクデータは４００ビット（１ビット×１００画素×４パス）となる。要するに、パス数より記録パターン数を表すことができる符号のビット数が小さければ、マスクデータを記憶する記憶容量を削減できる。
【００３１】
このように本実施例の符号化方法では、マスクデータの記憶容量を削減することが可能となり、マスクサイズが大きくなった場合やパス数が多くなった場合には、さらにマスクデータの容量を削減することが可能である。
【００３２】
次に、本実施の形態におけるマスクデータの復号化処理について図８に示すフローチャートにより詳細に説明する。この処理は、記録装置２００のＭＰＵ２２１により実行される。本実施例では、図６に示したインデックスデータに関連情報が付加された図７のデータを復号化することとして詳細に説明する。最初に関連情報の取得が行われる（Ｓ８０１）。本実施例では、図７に示すように関連情報としてパス数“４”と記録パターン数“４”、符号データの情報が取得される。次に符号データのビット数を特定する（Ｓ８０２）。本実施例では、符号データのビット数は、記録パターン数を表す最小ビット数である。Ｓ８０１で取得した記録パターン数は“４”であるため、４つの情報を表すことが可能な最小ビット数として２ビット（００、０１、１０、１１）が符号データのビット数として特定される。次に、各記録パターンに対応して割り振られた符号データを特定する（Ｓ８０３）。Ｓ８０１で取得された符号データ情報とＳ８０１で取得した記録パターン数、Ｓ８０２で特定したビット数の情報から、各記録パターンに割り振られた符号データは、「１パス目で印字」が“１１（２進数）”、「２パス目で印字」が“１０（２進数）”、「３パス目で印字」が“０１（２進数）”、「４パス目で印字」が“００（２進数）”であることが特定される。そして、Ｓ８０１で取得されたパス数、Ｓ８０２で特定された符号データのビット数、Ｓ８０３で特定された各記録パターンに割り振られた符号データを用いてインデックスデータからマスクデータを生成する（Ｓ８０４）。上述の符号化処理と同様に図６を用いて詳細に説明する。Ｓ８０２で符号データのビット数は２ビットと特定できているため、図６のインデックスデータ６０７から画素位置６０４（２ビット）が特定できる。画素位置６０４の符号データは“００（２進数）”であり、“００”は「４パス目で印字」に割り振られたことが特定できているため、４パス目用マスクの画素位置６０３に“１”をデータとして挿入し、１パス用マスクから３パス目用マスクの画素位置６００から６０２に“０”をデータとして挿入する。インデックスデータ６０７の残りの画素位置（６０５、６０６等）についても同様の手順で順次処理を行うことで、図６に示すマスクデータが生成される。
【００３３】
本発明が適用される本実施例によれば、複数組のマスクデータに対して上記符号化処理により生成されたデータを図３のＲＯＭ２２３に格納しておくことで、マスクの格納に必要なメモリ容量を大幅に削減することが可能になる。そして、印字時には、ＲＯＭ２２３から読み出されて、上記復号化処理が実装されているＡＳＩＣ内の復号化部２２７により復号化されてマスクデータとして使用することが可能である。
【実施例２】
【００３４】
本実施例では、生成したインデックスデータを既知の符号化方法によりさらに圧縮符号化して、圧縮符号化データを生成し、既知の符号化方法の圧縮率が最大となるように符号データを割り振る方法の例を示す。また、上記符号化データを復号化する方法の例も示す。本実施例の符号化処理、復号化処理の説明に使用するマスクデータを図９に示す。図９のマスクデータが図４に示したマスクデータと異なる点は、図９に示すように４パスで画像が生成された場合に２回ドットが打たれる画素位置があることである。そのため、図９のマスク９０２とマスク９０４との間で２画素、マスク９０３とマスク９０５との間で２画素、同じ画素位置が黒く塗りつぶされている。図４に示すマスクは、４枚のマスクの（４０２〜４０５）を同じ位置の画素単位にＯＲ（論理和処理）するとマスク領域内の全ての画素がドットＯＮになるように、各パスのマスクデータが構成されている。一方、図９に示すマスクは、４枚のマスクの（９０２〜９０５）を同じ位置の画素単位にＯＲ（論理和処理）するとマスク領域内の全ての画素がドットＯＮになり、さらにその中の４画素は２回ドットがＯＮとなるように各パスのマスクが構成されている。
【００３５】
本実施の形態におけるマスクデータの符号化処理について図１０に示すフローチャートにより詳細に説明する。図１０のフローチャートは、コンピュータが実行可能なプログラムとして図１５のコンピュータにインストールされ、図１５のコンピュータのＲＡＭやハードディスクに記憶され、ＣＰＵにより読み出されて実行される。また、この処理は、メーカによって記録装置２００の製造時に行われる処理である。最初にマスクデータに関する情報の取得が行われる（Ｓ１００１）。本実施例でのマスクデータに関する情報とは、パス数とマスクデータを解析して得られる記録パターン数と記録パターン情報である。記録パターン情報とは、出力画素がどのパスを使用して印字されるか（記録パターン）に関する情報である。記録パターン情報の詳細を図１１に示す。記録パターン情報は、マスクデータ復号時にＳ１００３で割り振られた符号が、どの記録パターンに対応するかを特定するために、後述するＳ１０１０にて関連情報として付加される。本実施例で使用されるマスクデータは、図９に示すように記録パターンとして「１パス目で印字」、「２パス目で印字」、「３パス目で印字」、「４パス目で印字」、「１パス目と３パス目で印字」、「２パス目と４パス目で印字」の情報が得られる。このいずれかの記録パターンによりマスクに対応する全ての出力画素が印字される。そのため、パス数として“４”、記録パターン数として“６”が取得される。次に符号データのビット数を決定する（Ｓ１００２）。実施例１と同様に本実施例でも記録パターン数を表す最小ビット数を符号データのビット数とする。Ｓ１００１で取得した記録パターン情報は“６”であるため、６つの情報を表すことが可能な最小ビット数として３ビットが特定される。そして、Ｓ１００２で特定されたビット数で表される符号データを各記録パターンに割り振る（Ｓ１００３）。本実施例では、「１パス目で印字」に“０００（２進数）”、「２パス目で印字」に“００１（２進数）”、「３パス目で印字」に“０１０（２進数）”、「４パス目で印字」に“０１１（２進数）”、「１パス目と３パス目で印字」に“１００（２進数）”、「２パス目と４パス目で印字」に“１０１（２進数）”を割り振る。次に、以上の情報からインデックスデータを生成する（Ｓ１００４）。図１２は図９に示したマスクデータとマスクデータから生成されるインデックスデータ１１０７を示す。図１２のマスクデータは、ドットを打つ位置が１、打たない位置が０の２値データとして図示している。図１２の１２００〜１２０３は、図６と同様であるので説明は省略するが、符号１２００〜１２０３は、いずれも画像データ上の同一画素位置の画素値とＡＮＤ（論理積）処理する画素位置である。つまり、同一画素位置に対応する、１パス目用マスクの画素位置を画素位置１２００、２パス目用マスクの画素位置を画素位置１２０１、３パス用マスクの画素位置１２０２、４パス用マスクの画素位置１２０３とする。図１２において、説明のため各マスクの左上の画素位置に符号１２００〜１２０３を記入する。図１２のインデックスデータ１２０７の画素位置１２０４は、１パス目から４パス目のマスクの画素位置１２００から１２０３に対応している。本実施例では、４パス用マスクの画素位置１２０３のみが“１”となっているため、画素位置１２００から１２０３に対応する画像データの画素値が１（ドットＯＮ）であれは、ドットは４パス目で印字されることになる。そのため、インデックスデータ１２０７の画素位置１２０４には、前述のＳ１００３で「４パス目で印字」に割り振られた符号データ“０１１（２進数）”をデータとして挿入する。同様に、画素位置１２０５には２パス目で印字されるため符号データ“００１（２進数）”を挿入する。画素位置１２０６は１パス目と３パス目で印字されるため符号データ“１００（２進数）”を挿入する。このように、各マスクの対応する画素位置（画像データ上の画素に対応する各マスクの画素位置）のデータから割り振る符号データを決定し、インデックスデータ１２０７を生成する。次に、生成されたインデックスデータに対して圧縮符号化処理を行う（Ｓ１００５）。本実施例では、Ｓ１００４で生成されたインデックスデータに対して可逆符号化であるＪＢＩＧ符号化方式により圧縮符号化を行う。ＪＢＩＧ符号化方式は、圧縮対象となるビットマップデータの２次元的な特徴を学習する機能を有する方式である。本実施例では、図１２に示すＳ１００４で生成されたインデックスデータ１２０７を２値のビットマップデータとみなしてＪＢＩＧにより符号化データを生成する。次にＳ１００５で生成された符号化データに対してデータサイズ（ＤＳ）を算出する（Ｓ１００６）。算出されたデータサイズ（ＤＳ）が、最小データサイズ（ＤＳｍｉｎ）と比較される（Ｓ１００７）。ここで、最小データサイズ（ＤＳｍｉｎ）の初期値としては、Ｓ１００４で最初に生成されるインデックスデータのデータサイズが挿入されている。データサイズ（ＤＳ）が最小データサイズより小さい場合には、データサイズ（ＤＳ）を最小データサイズ（ＤＳｍｉｎ）として更新し、Ｓ１００３で割り振られた符号データの情報と対応する記録パターン情報、Ｓ１００５で生成された符号化データが更新される（Ｓ１００８）。Ｓ１００８における符号データと記録パターン情報の初期値は、Ｓ１００３で最初に割り振られた符号データと対応する記録パターン情報が挿入され、符号化データの初期値はＳ１００４で最初に割り振られた符号データから生成されたインデックスデータが挿入されている。Ｓ１００８またはＳ１００７のＮＯに続き、Ｓ１００９において、全ての符号データの組み合わせが終了したかを判定する。データサイズ（ＤＳ）が最小データサイズ以上の場合には、Ｓ１００８の更新処理は行わず、全ての符号データと記録パターンの組み合わせが終了したかを判定する（Ｓ１００９）。ここで、Ｓ１００９について説明する。図１１（ａ）、（ｂ）の様に、符号データと記録パターンの組み合わせを変えて、Ｓ１００３〜Ｓ１００８を実行することで圧縮符号化データの最小のものが求まる。そこで、符号データと記録パターンの組み合わせを変更して、全ての組み合わせ手に対してＳ１００３〜Ｓ１００８を実行したか否かをＳ１００９において判定している。次に、Ｓ１００９において、各記録パターンに対して符号データ（３ビット）の全ての組み合わせを終了していなければＳ１００３に戻り、各記録パターンに対する符号データの割り振りを変更し、Ｓ１００９までの処理を行う。本実施例では、図１１（ａ）の場合に圧縮符号化データのデータ量が最小となったとする。Ｓ１００９において、各記録パターンに対して符号データ（３ビット）の全ての組み合わせを終了していれば、Ｓ１００８で保存されている圧縮符号化データに対して復号化の際に必要な関連情報を付加する（Ｓ１０１０）。Ｓ１０１０で関連情報が付加された圧縮符号化データは、所定のファイル名が付与されて、図１０のフローチャートを実行したコンピュータ（図１５）のＲＡＭやハードディスク等の記憶部に出力される。図１３に関連情報が付加された本実施例のデータ形式を示す。図１３に示すようにヘッダーに関連情報として、本実施例ではパス数、記録パターン数、Ｓ１００８で保存されている記録パターン情報、符号データ、符号化方法の情報が付加される。また、本実施例の符号化方法の情報とは、Ｓ９０７の最小データサイズ（ＤＳｍｉｎ）が初期値であれば“ＪＢＩＧによる符号化処理なし（０）”と、初期値でなければ“ＪＢＩＧによる符号化処理あり（１）”という１ビットの情報である。符号化方法の情報が“ＪＢＩＧによる符号化処理なし（０）”であれば、図１３に示す符号化データはＳ１００４で最初に割り振られた符号データから生成されたインデックスデータ（Ｓ１００８の符号化データの初期値）となる。そのため、最終的に生成される符号化データが、Ｓ１００４で生成されるインデックスデータよりデータサイズが大きくなることはない。また、マスクデータを変更する必要はなく、記録パターンと符号データの組み合わせを変更することで圧縮率が変化するので、圧縮率を上げるためにマスクパターンを変更したマスクを複数種類作成する必要はない。マスクパターンの変更は画質への影響が大きく、画質を変化させずにマスクパターンを変更することは非常に困難であるため、マスクパターンを変更せずに済む点では、製造コストの上昇を防止でき非常に有利である。
【００３６】
本実施例では、実施例１で生成されるインデックスデータに対してさらに既知の符号化方法により符号化を行い（Ｓ１００５）、Ｓ１００７からＳ１００９の処理を行うことで既知の符号化方法の圧縮率が最大となるように符号化データを割り振ることが出来る。これにより、実施例１に比べさらにマスクデータの容量を削減することが可能になる。
【００３７】
次に、本実施の形態におけるマスクデータの復号化処理について図１４に示すフローチャートにより詳細に説明する。この処理は、記録装置２００のＭＰＵ２２１により実行される。本実施例では、符号化データに関連情報が付加された図１３のデータを復号化することとして詳細に説明する。最初に関連情報の取得が行われる（Ｓ１４０１）。本実施例では、図１３に示すように関連情報としては、パス数、記録パターン数、記録パターン情報、符号データ、符号化方法の情報が取得される。次にＳ１４０１で取得された符号化方法の情報から、“ＪＢＩＧによる符号化処理なし（０）“か“ＪＢＩＧによる符号化処理あり（１）“を判定する（Ｓ１４０２）。Ｓ１４０２により“ＪＢＩＧによる符号化処理あり（１）“と判定されれば、符号化データに対して復号化処理を行い、インデックスデータを生成し（Ｓ１４０３）、符号データのビット数を特定する（Ｓ１４０３）。Ｓ１４０２により“ＪＢＩＧによる符号化処理なし（０）“と判定されれば、復号化処理は行わず、符号データのビット数を特定する（Ｓ１４０３）。本実施例では、符号データのビット数は、記録パターン数を表す最小ビット数である。Ｓ１４０３の処理は、実施例１と同様であるため詳細な説明を省略する。その後、各記録パターンに対応して割り振られた符号データを特定する（Ｓ１４０５）。Ｓ１４０１で取得された記録パターン数、記録パターン情報、符号データ、Ｓ１４０３で特定したビット数の情報から各記録パターンに対応して割り振られた符号データが特定される。そして、Ｓ１４０１で取得されたパス数と記録パターン情報、Ｓ１４０３で特定された符号データのビット数、Ｓ１４０５で特定された各記録パターンに割り振られた符号データを用いてインデックスデータからマスクデータを生成する（Ｓ１４０６）。上述の符号化処理と同様に図１２を用いて詳細に説明する。Ｓ１４０３で符号データを表す最小ビット数は３ビットと特定できているため、図１２のインデックスデータ１２０７から画素位置１２０４（３ビット）が特定できる。画素位置１２０４の符号データは“０１１（２進数）”であり、“０１１”は記録パターン情報から「４パス目で印字」に割り振られたことが特定できているため、４パス目用マスクの画素位置１２０３に“１”をデータとして挿入し、１パス目用マスクから３パス目用マスクの画素位置１２００ら１２０２に“０”をデータとして挿入する。画素位置１２０５も同様にマスクデータを生成する。画素位置１２０６の符号データは“１００（２進数）”であり、“１００”は記録パターン情報から「１パス目と３パス目で印字」に割り振られたことが特定できている。そのため、１パス目用マスクの画素位置１１００と３パス目用マスクの画素位置１２０２に“１”をデータとして挿入し、２パス用マスクの画素位置１２０１と４パス用の画素位置１２０３に“０”をデータとして挿入する。インデックスデータ１２０７の残りの画素位置についても同様の手順で順次処理を行うことで、図１２に示すマスクデータが生成される。
【００３８】
本発明が適用される本実施例によれば、複数組のマスクデータに対して上記符号化処理により生成されたデータを図３のＲＯＭ２２３に格納しておくことで、マスクの格納に必要なメモリ容量を実施例１に比べてさらに削減することが可能になる。そして、印字時には、圧縮された圧縮符号化データがＲＯＭ２２３から読み出されて、上記復号化処理機能が実装されているＡＳＩＣ内の復号化部２２７により復号化されてマスクデータとして使用することが可能となる。
【００３９】
以上、２つの実施例について説明したが、本発明はこれらの実施形態に限られるものではなく、その要旨を逸脱しない範囲で様々な形態による実施が可能である。
【００４０】
本実施例で図示したマスクデータは一例であり、マスクのサイズ、マスクの記録するビットは位置データとも図示したもの以外であってもよい。本実施例では、４パスのマスクデータに対する方法を例示したが、本発明の要旨を逸脱しない範囲であれば何パスでも良い。また、本実施例では符号データのビット数は、記録パターン数を表す最小ビット数（実施例１では２ビット、実施例２では３ビット）としたが、ＮパスのマスクデータであればＮビットより小さければ何ビットでも良い。また、本実施例では、復号時における符号データのビット数の特定は、記録パターン数を表す最小ビット数として算出しているが、関連情報として付加された符号データのビット数を参照することで特定しても良い。実施例２では、図１０の符号化処理（Ｓ１００２）の圧縮率が最大となるような符号データを割り振ったが、圧縮率が最大でなくても、インデックスデータのデータの容量より圧縮符号化データのデータ容量が小さくなるように符号データを割り振れれば実施例１とくらべて効果が得られ。また、インデックスデータのデータ容量より符号化データのデータ容量が小さくなるように符号データを割り振れれば、実施例２のように符号データの全ての組み合わせについて探索しなくても良い。また、実施例２では、データサイズを比較する（Ｓ１００７）方法によって符号データを決めているが、インデックスデータのデータの容量より符号化データのデータ容量が小さくなるように符号データを決めることができればどのような方法をであっても良い。本実施例で説明したマスクデータに関する情報（パス数、記録パターン数、記録パターン情報）や各記録パターンに対応して割り振られた符号データの情報は、予め情報として保持しているか、固定値として決められていてもよい。また、それに伴い、本発明の要旨を逸脱しない範囲で、本実施例の符号化処理、復号化処理において該当するステップや、図７、図１３に示す関連情報（ヘッダー情報）の該当する情報も省くことが可能である。実施例２において符号化処理としてＪＢＩＧを例にあげたが、可逆符号化処理であればどのような符号化処理方法でも良い。また、実施例２では、ＪＢＩＧのみで符号化処理を行う構成であったが、複数の符号化方法からインデックスデータのデータの容量より符号化データのデータ容量が小さくなる符号データと符号化方法を特定する構成とすることも可能である。
【産業上の利用可能性】
【００４１】
本発明は、記録ヘッドを用いて記録動作を行う装置であるインクジェット記録装置の例を示したが、記録媒体の所定領域に対して複数回の記録動作により画像を形成する画像形成装置であればどのような装置でも本発明を適用可能である。
【００４２】
なお、本発明は、複数の機器（例えばホストコンピュータ、インターフェース機器、リーダ、プリンタなど）から構成されるシステムに適用しても良い。
【００４３】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵまたはＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行することによっても達成されることは言うまでもない。
【００４４】
この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することにより、そのプログラムコード記憶した記憶媒体は本発明を構成することになる。
【００４５】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることが出来る。
【００４６】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）などが実際の処理の一部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００４７】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【符号の説明】
【００４８】
１０５  記録ヘッド
７０３  補助ローラ
７０６  補助ローラ
７０４  搬送ローラ
７０５  給紙ローラ
１００  ホストコンピュータ
２００  記録装置
２１０  イメージコントローラ
２２０  プリントエンジン
２２１  ＭＰＵ
２２２  ＡＳＩＣ
２２３  ＲＯＭ
２２４  ＲＡＭ
４００  ノズル領域
４０１、９０１  マスクデータ
６０７、１１０７  インデックスデータ
【図１】
2011000826.tif 000003
【図２】
2011000826.tif 000004
【図３】
2011000826.tif 000005
【図４】
2011000826.tif 000006
【図５】
2011000826.tif 000007
【図６】
2011000826.tif 000008
【図７】
2011000826.tif 000009
【図８】
2011000826.tif 000010
【図９】
2011000826.tif 000011
【図１０】
2011000826.tif 000012
【図１１】
2011000826.tif 000013
【図１２】
2011000826.tif 000014
【図１３】
2011000826.tif 000015
【図１４】
2011000826.tif 000016
【図１５】
2011000826.tif 000017