(57)【要約】【課題】  ラスタデータと属性データから構成される画像データにおいて、属性データに対してデータ置換を行い、可能な限りその情報量を削減することで、属性データに圧縮処理を施す際の高速化と属性データによるメモリ占有率の削減、およびラスタデータの圧縮率を可能な限り抑制することを目的とする。【解決手段】  本発明は、画像や属性情報を圧縮符号化したページデータを限られたメモリに保持する形式の画像形成・印刷システムにおける、画素ごとの属性情報を示す属性データを圧縮することによって実現される画像圧縮方法に関するものである。レンダリング後、属性データに対して可逆圧縮を施し、更に圧縮された状態の属性データに対して置換処理（再圧縮）を行うことで属性データを構成するビット列を削減する。属性データの再圧縮を実現することにより、属性データの高速な圧縮処理とメモリ占有率の削減を実現する。【選択図】  図４
2007105911.tif 000002
【特許請求の範囲】
【請求項１】
ラスタデータ本体を構成する画素ごとに付加された属性データを圧縮符号化する属性圧縮手段と、
前記属性圧縮手段の出力である圧縮属性データに対して処理過程の中間データをメモリとの間で入出力することなく、第二の圧縮属性データに変換する属性変換手段と、
を有する画像処理装置。
【請求項２】
ラスタデータ本体を構成する画素ごとに付加された属性データを圧縮符号化する属性圧縮手段と、
前記属性圧縮手段の出力である圧縮属性データに対する復号化処理を行うことなく、第二の圧縮属性データに変換する属性変換手段と、
を有する画像処理装置。
【請求項３】
前記第二の属性データは、前記第一の属性データよりも圧縮効率が高いという特徴を有する請求項１又は請求項２記載の画像処理装置。
【請求項４】
前記第二の属性データは、前記第一の属性データの一部または全てを置換することが可能な請求項１又は請求項２記載の画像処理装置。
【請求項５】
前記第一の属性データおよび前記第二の属性データを圧縮符号化する際は、可逆圧縮方式をその手段とする請求項１又は請求項２記載の画像処理装置。
【請求項６】
前記ラスタデータを圧縮符号化する際は、非可逆圧縮方式をその手段とする請求項１又は請求項２記載の画像処理装置。
【請求項７】
可逆圧縮方式によって圧縮符号化された、前記第一の属性データおよび前記第二の属性データを伸張する属性データ伸張手段を有する請求項１又は請求項２記載の画像処理装置。
【請求項８】
非可逆圧縮方式によって圧縮符号化された、前記ラスタデータを伸張するラスタデータ伸張手段を有する請求項１又は請求項２記載の画像処理装置。
【請求項９】
入力された画像情報に基づき記録媒体上に画像を形成する印刷システムであって、
ラスタデータ本体を構成する画素ごとに付加された属性データを圧縮符号化する属性圧縮手段と、
前記属性圧縮手段出力である圧縮属性データに対して処理過程の中間データをメモリとの間で入出力することなく、第二の圧縮属性データに変換する属性変換手段と、
を備えることを特徴とする印刷システム。
【請求項１０】
入力された画像情報に基づき記録媒体上に画像を形成する印刷システムであって、
ラスタデータ本体を構成する画素ごとに付加された属性データを圧縮符号化する属性圧縮手段と、
前記属性圧縮手段出力である圧縮属性データに対する復号化処理を行うことなく、第二の圧縮属性データに変換する属性変換手段と、
を備えることを特徴とする印刷システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像や属性情報を圧縮符号化したページデータを限られたメモリに保持する形式の画像処理装置における、画素ごとの属性情報を示す属性データを圧縮することによって実現される画像圧縮方法に関するものである。
【背景技術】
【０００２】
近年、カラー印刷装置と複数のホストコンピュータとが通信可能な情報処理システムは一般化され広く使われるようになってきている。このような状況の中、前記情報処理システム上で作成される多くの電子ドキュメントが作成され、カラー印刷装置への出力要求は増大する傾向にあり、高速かつ安価なカラー印刷装置が望まれている。
【０００３】
従来から、インクジェットプリント装置を始めとするカラー印刷装置では、ホストコンピュータ等から送信されてきたページ記述言語（ＰＤＬ）を解釈し、中間言語であるディスプレイリスト（ＤＬ）を作成し、ここからラスタイメージ変換（レンダリング）するのが一般的である。この場合、ページデータをメモリに保持（ページスプール）する場合が生じる。
【０００４】
カラー画像ではレンダリング時に作成されるラスタデータのサイズは非常に大きく、可逆圧縮では前記圧縮データを所定のサイズ内に収めることができないことが多く、通常は非可逆圧縮が使用される。
【０００５】
しかし、非可逆圧縮を使用すると圧縮された画像は劣化してしまう。この画像劣化を最小限に抑える方法としては、レンダリングされた画像に対して低圧縮率から高圧縮率へ順次圧縮率を変えながら、前記所定のサイズに圧縮イメージが収まるまで、複数回数繰り返す。このような手段を講じることで、所定のサイズに収まる最低の圧縮率で圧縮され、最小限の画像劣化で済む。
【０００６】
また、レンダリングを行う際、カラー印刷装置へ入力されるＰＤＬデータのサイズは限定されていないため、このＰＤＬデータから作成されるＤＬのサイズは、場合によって非常に大きくなることがある。また、ＤＬが複雑になり、そのサイズが大きくなると、このＤＬをレンダリングするレンダラの使用するワーク領域も大きなものとなる。
【０００７】
しかし、印刷装置に搭載されるメモリ量は有限であり、かつコスト的な制約から、前記ＤＬを格納するのに十分なメモリ量を確保していない場合が多い。よって、上記ＤＬを格納する領域およびレンダラの使用できるワーク領域のサイズは限定されており、定められた一定サイズ以上のＤＬを処理できないといった制約が出てくる。
【０００８】
この制約を回避するためにフォールバックと呼ばれる処理が行われる。フォールバックは、ＤＬのサイズがある一定のサイズを越える場合や、そのＤＬを処理するためのワーク領域が一定のサイズを越えるとわかった場合に、一度そこまでに生成されたＤＬをレンダリングしてラスタデータとし、そこまで作成したＤＬを一度クリアする。
【０００９】
このラスタデータを印刷領域におけるバックグラウンドイメージとして再びＤＬの一部に追加する。通常、このバックグラウンドイメージは圧縮されるため、追加されるＤＬのサイズは元のＤＬのサイズよりも小さくなる。そこで、この空いた領域に残りのＤＬを作成していくことにより限定されたメモリ空間で大きなサイズのＤＬを処理できる。また、フォールバック時のレンダリング終了時にレンダラのワーク領域もクリアされるため、このワーク領域のサイズ制限も回避することができ、低コストな印刷装置を提供することが可能となる。
【００１０】
前述のようにフォールバック処理を行う過程で作成されたラスタデータは圧縮されてＤＬリストに追加されるが、このとき作成される圧縮データも所定のサイズに収めなければならない。フォールバックを行う際にも、ページデータに対して非可逆圧縮を行う。
【００１１】
また、前記レンダラにおいては、前記ラスタデータの生成と同時にラスタデータの各画素に対応する属性データの作成も行われる。属性データとは各画素に付属する、画像処理時に用いる制御データのことである。前記インクジェットプリント装置を始めとする印刷機能を有する装置では、属性データを参照して各画素の取り扱い方法を決定することが多い。インクジェットプリンタを始めとするカラー印刷装置の高画質化手法として、ラスタデータに属性データを付加して適切な画像処理を行うという、上記のような手法はよく用いられているものである。
【００１２】
この方法では、ホストコンピュータ上または印刷装置内でラスタデータを生成する段階で、そのラスタデータを構成する描画オブジェクトの種類（文字、イメージ、グラフィック、カラー、細線など）を認識し、そのオブジェクトを構成する各画素に対して、該当するオブジェクトを示す属性データを付加し、ラスタデータと属性データを出力データとする。そして、この出力データの印刷時に、ラスタデータに対して属性データを参照しながら適切な画像処理を施すことによって、高画質な印刷出力を得ることができる。
【００１３】
上述したラスタデータと属性データを出力データとする方法においては通常、ラスタデータおよび属性データは圧縮されて出力メモリ内に保持されている。このとき、ラスタデータには非可逆圧縮を施すことができるため、圧縮率により圧縮後のサイズをコントロールすることができる。一方、属性データについては、画像処理を行う段階ではオリジナルのデータが必要となるため、可逆圧縮を施すのが一般的である。可逆圧縮を行うため圧縮後のサイズは固定となり、データの種類によっては圧縮後のサイズが非常に大きくなってしまう場合がある。
【００１４】
したがって、システムのメモリを制限するために出力メモリサイズが固定値に制限される環境では、属性データの圧縮後のサイズが大きいと、メモリ内において属性データの占める割合が大きくなる。このような状況下では、限られたメモリにデータを保持させるためにラスタデータの圧縮率を高くしてそのサイズを小さく抑えることが必要となり、結果として、出力される画像の画質劣化が引き起こされる。また、属性データをサイズが大きいまま扱うことは、その圧縮処理において余計に時間を要することにもなる。
【００１５】
そこで、属性データ自体を削減することが必要となる。可逆圧縮方式を採用する属性データに対して、識別していたオブジェクト属性を置換することで元の情報量を削減し、高圧縮化を実現する方式が提案・実施されている（たとえば特許文献１）。
【特許文献１】特開2004-214738号公報
【発明の開示】
【発明が解決しようとする課題】
【００１６】
しかしながら、先に述べたような属性情報の置換処理は、伸張と変換と圧縮を繰り返し行う必要があることから、メモリ占有率の増加、圧縮処理における工数増加など、システム全体の性能に影響を及ぼす可能性があった。
【００１７】
本発明は、上記の問題を解決するためになされたものであり、ラスタデータと属性データから構成される画像データにおいて、属性データに対してデータ置換を行い、可能な限りその情報量を削減することで、属性データに圧縮処理を施す際の高速化と属性データによるメモリ占有率の削減、およびラスタデータの圧縮率を可能な限り抑制することを目的とする。
【課題を解決するための手段】
【００１８】
上記目的を達成する本発明の画像処理装置は、以下に示す構成を備える。
【００１９】
ラスタデータ本体を構成する画素ごとに付加された属性データを圧縮符号化する属性圧縮手段と、前記属性圧縮手段出力である圧縮属性データに対して処理過程の中間データをメモリとの間で入出力することなく、第二の圧縮属性データに変換する属性変換手段と、
を有する。上記構成により、属性データに圧縮処理を施す際の高速化と属性データによるメモリ占有率の削減、およびラスタデータの圧縮率を可能な限り抑制することが可能になる。
【発明の効果】
【００２０】
画像情報と属性情報を圧縮符号化したページデータをメモリに保持する形式の画像形成システムにおいて、属性データの圧縮処理の高速化とメモリ占有率の削減を実現する。
【発明を実施するための最良の形態】
【００２１】
本発明は、画素ごとの属性情報を示す属性データを付加したラスタデータを圧縮する画像圧縮方法であって、前記属性データに応じて、その置換対象となる置換データを決定し、レンダリング後、前記属性データを前記置換データに置換し、置換された属性データと前記ラスタデータを圧縮する。ここでの置換データとは、置換前の属性データよりも圧縮効果が高いビット列のことを示す。
【００２２】
以下、図面を参照して本発明の実施形態について説明する。
【００２３】
本実施形態を説明する前に、本実施形態を適用するのに好適なインクジェットプリント装置の構成について図１を用いて説明する。
【００２４】
図１は、本発明の画像圧縮方法を実現させるインクジェットプリント装置の概略構成図である。このインクジェットプリント装置は、外部にネットワークや直接インタフェースで接続されているホストコンピュータ等の外部情報源から供給される印刷情報（文字属性など）やフォーム情報、マクロ命令などを入力して記憶すると共に、それらの情報に従って対応する文字パターンやフォームパターンなどを作成し、記憶媒体である記録紙などに画像を形成（印刷）するものである。なお、本実施形態を適用するプリンタはインクジェットプリンタに限られるものではなく、レーザビームプリンタを始めとした他のプリント方式にも適用可能である。
【００２５】
図１において、１００１は往路走査プリントヘッドであり、ブラック、シアン、マゼンタ、イエローの４色のカラーインクがそれぞれ封入されたインクタンクと、それぞれのインクに対応した４つのプリントヘッドとを一体化したマルチヘッドとして構成されている。それら４つのプリントヘッドは、矢印X1の往路走査方向に沿ってブラック、シアン、マゼンタ、イエローの各インク用のものが並ぶように配列されている。１００２は復路走査プリントヘッドであり、往路走査プリントヘッドと同様に構成されている。４色のインクに対応する４つのプリントヘッドの配列は、往路走査プリントヘッド１００１とは対称的に、往路走査方向X1に沿ってイエロー、マゼンタ、シアン、ブラックの順番で配列されている。
【００２６】
１００３は、往路走査プリントヘッド１００１および復路走査プリントヘッド１００２を搭載して、往復の主走査方向X1、X2に移動されるキャリッジである。キャリッジ１００３はプリント動作していない状態などの待機時にはホームポジション位置（図１のＰ）にある。キャリッジ１００３は、ガイドロッドＧにガイドされつつ、図示しない移動機構によって主走査方向X1、X2に移動される。１００６は紙送りローラであり、補助ローラ１００５と共に、プリント媒体としての記録紙１００７をおさえながら、矢印Yの副走査方向へ間欠的に搬送する。１００４は給紙ローラであり、記録紙１００７の給紙を行うと共に、紙送りローラ１００６および補助ローラ１００５と同様に記録紙３０７をおさえる役割を果たす。
【００２７】
次に、以上の構成による基本的な往復プリント動作について説明する。
【００２８】
待機時にホームポジション位置Ｐにあるキャリッジ１００３は、記録開始命令により往路走査方向X1に移動し、これに伴い往路走査プリントヘッド１００１における４つのプリントヘッドは、それぞれの複数のインク吐出口から画像データに従ってインクを吐出し、そのインクによって記録紙１００７上の印字等のプリントを行う。記録紙１００７の端部までの１行分の画像データのプリントが終了すると、紙送りローラ１００５が矢印方向へ回転して、記録紙１００７をＹ方向へ所定幅だけ紙送りする。続いて、キャリッジ１００３が復路走査方向X2に移動しながら、復路プリントヘッド１００２における４つのプリントヘッドの複数のノズルから画像データに従ってインクを吐出して、記録紙１００７上に印字等のプリントを行う。そして、元のホームポジションＰの位置まで戻る。その後、再び紙送りローラ１００５が記録紙１００７をＹ方向へ所定幅だけ紙送りする。このようなヘッドの走査動作と紙送り動作との繰り返しによって、順次、記録紙１００７上に画像をプリントする。
【００２９】
なお、本例のインクジェットプリント装置の図示しない本体内には、キャリッジ駆動用のキャリッジモータ、給紙ローラ駆動用の給紙モータ、紙搬送駆動用の紙搬送モータなどを駆動するためのモータドライバ、プリントヘッドを駆動するためのプリントヘッド駆動用のドライバなどが備えられている。
【００３０】
図２は、本実施形態を示す前記インクジェットプリント装置におけるプリンタ制御システムの構成を説明するブロック図である。
【００３１】
図２に示すプリンタ制御ユニット２１０２において、ＣＰＵ２００１はプリンタのＣＰＵであり、ＲＯＭ２００４に記憶された制御プログラムや外部メモリ２００７に記憶された制御プログラムなどに基づいてシステムバス5に接続される各種のデバイスへのアクセスを総合的に制御し、印刷部インタフェース２００８を介して接続される印刷部２００９に出力画像として画像信号を出力する。
【００３２】
なお、ＲＯＭ４には、ＣＰＵ２００１の制御プログラムや、前記インクジェットプリント装置の制御に必要なデータを記憶する。ＣＰＵ２００１はI/O２０１１を介して外部ネットワーク２２００に接続されているホストコンピュータ等の外部装置と通信可能に構成されている。
【００３３】
なお、ホストコンピュータと外部ネットワークを介して通信するとしているが、図示しない直接インタフェースを介してホストコンピュータと接続し、通信を行うことも可能である。
【００３４】
２００２はＲＡＭで、ＣＰＵ２００１の主メモリ・ワークエリア等として機能する。なお、ＲＡＭ２００２は図示しない増設ポートに接続されるオプションＲＡＭによりメモリ容量を拡張することができるように構成されている。２００３は前記ＲＡＭ２００２上に用意される画像出力用メモリであり、フォールバックメモリや出力メモリとして後述するハードレンダラ２０１２で作成されるラスタデータおよび属性データが記録される。
【００３５】
２００６はメモリコントローラであり、ハードディスク等の外部メモリ２００７へのアクセスを制御する。２０１２はハードレンダラであり、内部にローカルメモリを持っている。ハードレンダラ２０１２は、ローカルメモリに転送されてきたＤＬまたはＲＡＭ２００２上にあるＤＬをそのまま解釈し、ラスタデータおよびラスタデータの各画素に対応する属性データを作成する。
【００３６】
ここで生成される各属性データは、１ビットのカラービット、１ビットの細線ビットおよび２ビットのオブジェクト種ビットの３つのビットフィールド系４ビットで構成されている。
【００３７】
なお、カラービットは対応する画素がカラーオブジェクトを構成する画素であるか、白黒オブジェクトを構成する画素であるかを表し、このビットが「０」である時にはカラーオブジェクトを構成する画素であり、「１」である時には白黒オブジェクトを構成する画素であることを示す。
【００３８】
細線ビットは対応する画素が細線を構成する画素であるか否かを表し、このビットが「１」である時には細線を構成する画素であることを示す。
【００３９】
オブジェクト種ビットは対応する画素がどのような種類の描画オブジェクトを構成しているかを表し、「０１」の時には文字オブジェクトを構成する画素であり、「１０」の時にはグラフィックスオブジェクトを構成する画素であり、「１１」の時にはイメージオブジェクトを構成する画素であり、「００」の時には、その画素はどのようなオブジェクトも構成されていないことを示す。
【００４０】
２０１３の非可逆圧縮伸張部は、前記ラスタデータに非可逆圧縮を施し、ＲＡＭ２００３上の画像出力メモリ２００２へ記憶する。本実施形態による非可逆圧縮部ではＪＰＥＧ方式を採用している。ＪＰＥＧ方式は圧縮時に使用するQ-TABLEを変更することで圧縮対象となる画像の圧縮率を変更することが可能であり、圧縮率が高くなるほど画像劣化が大きくなる。
【００４１】
本実施形態では、前記の通り非可逆圧縮にＪＰＥＧ方式を採用しているが、圧縮率を変更可能な非可逆圧縮方法であれば、ＪＰＥＧ方式に限らず、他の圧縮方法を用いることが可能である。
【００４２】
可逆圧縮部２０１４は前記属性データに可逆圧縮を施し、画像出力メモリ２００２へ記憶する。本実施形態による可逆圧縮部ではPackbits方式を採用している。Packbits方式は非符号化とランレングス符号化を組み合わせたもので、２バイト以上で構成される。1バイト目はいくつ同じデータが続くか、もしくはいくつ異なるデータが続くかを示すコントロールバイトであり、その後にデータが続く。ここで、同じ種類のデータが連続している場合は2バイトで表せ、異なるデータが続いている場合はデータ数より1バイト多いバイト数で表せる。
【００４３】
本実施形態では、前記の通り可逆圧縮にはPackbits方式を用いているが、可逆にデータの圧縮と伸張が行える方法であれば、Packbits方式に限らず、他の圧縮方式を用いることが可能である。
【００４４】
画像処理部２０１５は、レンダラ２０１２によって生成された属性データに基づいて、ラスタデータに文字用の画像処理、イメージ用の画像処理、グラフィック用の画像処理、カラー用の画像処理、白黒用の画像処理、細線用の画像処理のいずれか、または組み合わせて施す。
【００４５】
以下、図３〜図６を用いながら本実施形態の詳細を説明する。具体的には、ラスタデータの処理と属性データの処理について、それぞれ受信データをＤＬ化する段階から印刷する段階までを順序立てて説明する。
【００４６】
図３は、前記インクジェットプリント装置２１０１の基本的な動作を表すフローチャートである。まず、ステップ３００２でプリンタ２１０１が外部入力用バス２２００を通じてＰＤＬデータを受信すると、ステップ３００３へ進む。ステップ３００３では、ＣＰＵ２００１においてＰＤＬデータの解析処理を行い、ＤＬを作成する。そして、ステップ３００４へ進み、作成したＤＬをハードレンダラ２０１２において解釈し、レンダリングする。この工程により、ラスタデータが生成され、ラスタデータの各画素に付属する属性データが生成される。そして、ステップ３００４では更に、生成されたラスタデータに対して非可逆圧縮部２０１３で非可逆圧縮を施し、ラスタデータと同時に生成された属性データに対しては可逆圧縮部２０１４で可逆圧縮を施す。そして、必要に応じて属性データに対しては更にコード変換処理を施した上で、それぞれを出力メモリ２００２へ格納する。その後、ステップ３００５においては、ラスタデータに対し、出力メモリ２００２に格納された属性データに従った適切な画像処理を施し、ステップ３００６で画像処理後のラスタデータを印刷部２００９へ転送して、全ての処理を終了する。
【００４７】
以下、ステップ３００４において、レンダラ２０１２で生成されたラスタデータおよび属性データが出力メモリ２００２に格納されるまでの動作を、図４のフローチャートを用いて詳細に説明を行う。
【００４８】
ステップ４００１において、レンダリングおよび圧縮置換処理が開始されると、まずステップ４００２において、後に非可逆圧縮を行う際の圧縮率設定の初期化を行う。初期化においてはQ-TABLEのIDを「１」に設定し、この時点での非可逆圧縮の圧縮率は最も低いものとする。この場合、ラスタデータを非可逆圧縮する際の画像劣化の度合いは最も少ないものとなる。Q-TABLEの初期値設定が終了すると、ステップ４００３へ進み、レンダラ２０１２によるレンダリングが開始される。
【００４９】
１バンドデータづつレンダリングされたラスタデータと、ラスタデータの各画素に対応する属性データをＲＡＭ２００３上に確保した一時メモリ内に格納する。なお、本実施形態では、レンダリングする単位を１バンドデータづつとしているが、この値は任意のものを設定可能である。
【００５０】
次に、ステップ４００４へ進む。ステップ４００４では属性データに対してPackbits方式による可逆圧縮を施し、ラスタデータに対してはＪＰＥＧ方式による非可逆圧縮を施す。この際、属性データの圧縮は可逆圧縮伸張部２０１４にて行われ、ラスタデータの圧縮は非可逆圧縮伸張部２０１３にて行われる。ラスタデータにＪＰＥＧ圧縮を施す際は、前記Q-TABLEのIDが圧縮率の目安となる。初期設定でのQ-TABLEのIDは「１」であり、この場合の圧縮率は低い。よって、ＪＰＥＧ圧縮を行った際の画像劣化も少ないものとなる。ラスタデータは非可逆圧縮を施された後、属性データの処理が終了するまでの間、非可逆圧縮部２０１３にて一時的に保持される。
【００５１】
ステップ４００５へ進み、圧縮された属性データおよびラスタイメージを画像出力メモリ２００２へ格納する。出力画像メモリ２００２へデータを格納後、ステップ４００６へ進む。ステップ４００６ではラスタデータと属性データのデータ量の合計値が、画像出力メモリの容量を上回らないか、判定を行う。
【００５２】
このステップ４００６にて、画像出力メモリ２００２の容量以上に、ラスタデータと属性データを合わせたデータ量があると判定された場合、ステップ４００９へ進む。これは、現在のラスタデータ用の非可逆圧縮率では、画像出力メモリ２００２へ、１ページ分のデータを格納することは不可能であると判断したことを意味しており、データ量を削減する必要がある。ステップ４００９では、ラスタイメージを再圧縮すべきか、属性データを再圧縮すべきかを判断する。ラスタイメージを再圧縮すると判断した場合は、ステップ４０１０へ進み、非可逆圧縮を行う際の圧縮率を高めるため、Q-TABLEのIDを１だけインクリメントし、再設定する。再設定後はステップ４０１１へ進み、再びラスタデータの圧縮を行うこととする。ラスタデータを再圧縮した後は、ステップ４００５へ進み、画像出力メモリ２００２へデータを格納後、再びステップ４００６でデータ量の判定を行うことになる。
【００５３】
一方、ステップ４００９で属性データを再圧縮すべきであると判定した場合は、ステップ４０１２へ進み、属性データに対してPackbits方式による可逆圧縮を施す。この可逆圧縮は、可逆圧縮伸張部２０１４で行われる。
【００５４】
そしてステップ４０１３へ進み、可逆圧縮を施した状態の属性データについてデコード処理を行う。この工程は可逆圧縮伸張部２０１４で行われる。デコードが終了した後、ステップ４０１４へ進み、属性データ再圧縮を行う。この属性データ再圧縮とは、既にステップ４０１２にてPackbits方式を用いた可逆圧縮を施されている属性データに対して、コードレベルでデータ変換処理を行うものである。
【００５５】
コード変換を行う際は、グラフィックス属性を細線属性と同等のものとして扱う、隣り合う画素は近い属性にする、という方法で属性コードを一部置換して、その種類を削減し、データ量の更なる圧縮を実現する。属性データの種類が減ることで、属性データのビット列において同じデータが連続しやすい状態となり、Packbits方式による可逆圧縮の効果も向上し、属性データのサイズを削減する。このように、可逆圧縮を施された状態の属性データに対して、更にデータ置換によって実現されるコード変換を行うことで、再圧縮を実現する。この属性データ再圧縮も可逆圧縮伸張部２０１４にて行われる。図５は、属性コード変換の概念図である。左から右へ、（１）Packbitsによって可逆圧縮された属性データ、そして属性コード変換工程を経て、（２）コード変換された後の属性データ、となる。図５において、属性データは細線属性とグラフィックス属性に限定している。ここで細線属性は10、グラフィックス属性は11である。（１）の状態のデータは、0310で細線属性データが３連続で並んでいることを示し、0611ではグラフィックス属性データが６連続で並んでいることを示している。この（１）の状態に対し、属性データ変換を施すと、（２）の状態になる。属性データ変換工程では、細線属性データをグラフィックス属性データとして扱うという制御を行い、10を11として変換する。その結果、（２）の状態では属性データが0911となる。これはグラフィックス属性データが９連続で並んでいることと同義であることを示しており、この場合、データ量が半減していることがわかる。
【００５６】
ステップ４０１４の属性データ再圧縮が終わったならば、続いてステップ４０１５の属性データエンコード工程へ進む。この工程も可逆圧縮伸張部２０１４にて行われる。
【００５７】
エンコードが終了した後、ステップ４００５へ進み、圧縮および変換された属性データを画像出力メモリ２００２へ格納する。ここで属性データは、そのデータサイズが大きく削減されているため、画像出力メモリ２００２へ格納されるまで、メモリに格納されることなく扱うことが可能である。ここで図６は、メモリを利用しない場合の属性データに関するデータフローの概念を示しているものである。左から右へ、可逆圧縮した状態の属性データがプリントヘッドへ送られていく状況を表している。属性データに再圧縮を施すことで、太線のようにメモリを使用しなくても描画を行えることを示しており、属性データに再圧縮を施さなければ、点線のようにメモリを複数回利用することになることを示している。
【００５８】
出力画像メモリ２００２へデータを格納後、ステップ４００６へ進む。ステップ４００６ではラスタデータと属性データのデータ量の合計値が、画像出力メモリの容量を上回らないか、判定を行う。
【００５９】
ステップ４００６において、ラスタデータと属性データが画像出力メモリへ格納可能であると判定された場合、ステップ４００７へ進む。ステップ４００７では、全ての入力データについて、レンダリング圧縮工程を終えたかどうかを判定する。もし、まだ残りのデータがある場合はステップ４００２へ進み、該当するデータについて１バンドデータづつステップ４００２以下の工程を繰り返し行う。ステップ４００７にて、残されたデータがないと判定された場合はレンダリング圧縮工程を終了し、印刷工程へ進む。
【００６０】
以上で説明した通り、本実施形態ではインクジェットプリント装置２１０１に送信されてきたデータに基づいて作成された属性データに対し、Packbits方式による可逆圧縮を施した後に、再圧縮工程としてのデータ置換を行う。データ置換の際には、グラフィック属性と細線属性を同様のものとするといった扱いをすることで、属性データの種類を減らす。属性データの種類が減ることで、属性データのビット列において同じデータが連続しやすい状態となり、Packbits方式による可逆圧縮の効果も向上し、データ量の削減効果もあがりやすくなる。上記のような工程を経ることで、属性データは画像出力メモリへ展開されるまで圧縮されたままの状態で扱うことが可能となり、属性データをメモリへ格納する必要性はなくなる。そのため、属性データの高速な圧縮処理と共にメモリ占有率の削減も実現できるようになる。属性データによるメモリ占有率を削減することが可能になることから、メモリ領域の大部分を非可逆圧縮したラスタデータのスプールに用いることができる。すなわち、ラスタデータと属性データの合計サイズが所定の出力メモリのサイズを超えてしまう場合にも、ラスタデータの圧縮率を必要以上に高めることなく、画像出力メモリへの格納が可能となるため、画像の劣化を低減させることも可能となる。
【図面の簡単な説明】
【００６１】
【図１】本発明を適用可能なインクジェットプリント装置の概略構成図である。
【図２】本発明の第一実施形態を示す、システムの構成を説明するブロック図である。
【図３】本発明を適用した際の一連の動作を説明するフローチャートである。
【図４】本発明を適用した際の、レンダリングおよび圧縮置換工程の詳細について説明するフローチャートである。
【図５】本発明を適用した際の属性コード変換の一例である。ここでは細線属性をグラフィックス共通属性としてみなした場合を示している。
【図６】本発明を適用した際の、メモリを利用しない場合の属性データのデータフロー
【符号の説明】
【００６２】
１００１  往路走査プリントヘッド
１００２  復路走査プリントヘッド
１００３  キャリッジ
１００４  給紙ローラ
１００５  補助ローラ
１００６  紙送りローラ
１００７  記録紙（プリント媒体）
２００１  ＣＰＵ
２００２  画像出力メモリ
２００３  ＲＡＭ
２００４  ＲＯＭ
２００５  システムバス
２００６  メモリコントローラ
２００７  外部メモリ
２００８  印刷用インタフェース
２００９  印刷部
２０１０  操作パネル
２０１１  入出力ポート
２０１２  ハードレンダラ（ローカルメモリを含む）
２０１３  非可逆圧縮伸張部
２０１４  可逆圧縮伸張部
２０１５  画像処理部
２１０１  インクジェットプリント装置本体
２１０２  プリント制御部
２２００  入力用バス
【図１】
2007105911.tif 000003
【図２】
2007105911.tif 000004
【図３】
2007105911.tif 000005
【図４】
2007105911.tif 000006
【図５】
2007105911.tif 000007
【図６】
2007105911.tif 000008