(57)【要約】【課題】  メモリに格納されるイメージデータの圧縮を有効に行うことにより、メモリ容量を増大することなく高速化および高画質化を可能にした画像形成装置および方法を提供する。【解決手段】  印刷部５０のメモリを有効に利用するために、印刷する文書データに基づきラインデータを生成し、このラインデータを所定のライン圧縮率閾値に基づきライン単位で圧縮し、その後、このライン単位の圧縮により生成された圧縮ページデータが所望のデータ量（ページサイズ閾値）以下にならない場合は、この圧縮ページデータを更にページ圧縮して印刷部５０に供給する。【選択図】  図１
2006157444.tif 000002
【特許請求の範囲】
【請求項１】
イメージデータを圧縮してメモリに格納し、該メモリに格納された圧縮イメージデータを伸張しながら画像形成を行う画像形成装置において、
前記イメージデータを１または複数ラインデータ単位で圧縮して圧縮ページデータを生成する圧縮ページデータ生成手段と、
前記圧縮ページデータ生成手段で生成された圧縮ページデータのデータ量が予め設定された所定のデータ量を越えているかを判別する判別手段と、
前記判別手段により前記圧縮ページデータのデータ量が前記所定のデータ量を越えていると判別された場合は、該圧縮ページデータを前記所定のデータ量以下になるまで圧縮するページ圧縮手段と
を具備することを特徴とする画像形成装置。
【請求項２】
前記ページ圧縮手段で圧縮された圧縮ページデータをインターフェース手段を経由して受け取るフレームバッファ手段と、
前記フレームバッファ手段で受け取った圧縮ページデータを伸張して画像形成を行う画像形成手段と
を更に具備することを特徴とする請求項１記載の画像形成装置。
【請求項３】
前記フレームバッファ手段の空き領域を前記インターフェース手段を経由して前記ページ圧縮手段に通知する通知手段
更に具備することを特徴とする請求項２記載の画像形成装置。
【請求項４】
前記圧縮ページデータ生成手段は、
前記ラインデータを可逆圧縮する第１の圧縮手段と、
前記第１の圧縮手段で圧縮したラインデータの圧縮率が所定の圧縮率閾値以下である場合は、該ラインデータを非可逆圧縮する第２の圧縮手段と
を具備し、
各ラインデータの圧縮率が所定の閾値を越えるまで各ライン毎に前記第１の圧縮手段による可逆圧縮と前記第２の圧縮手段による非可逆圧縮とを前記第２の圧縮手段による非可逆圧縮の圧縮パラメータを順次変更して繰り返して前記圧縮ページデータを生成する
ことを特徴とする請求項１乃至３のいずれかに記載の画像形成装置。
【請求項５】
前記第１の圧縮手段は、
同じ画素値データが連続する場合にそのデータを画素値とその連続数の組に置き換えるランレングス圧縮を行い、
前記第２の圧縮手段は、
前記圧縮ラインデータを所定の画素数を単位としてそれぞれ平均化して置き換える平均化処理を行い、
前記圧縮パラメータは、
前記平均化処理における平均化の画素数である
ことを特徴とする請求項４記載の画像形成装置。
【請求項６】
前記ページ圧縮手段は、
前記圧縮ページデータ生成手段で生成された圧縮ページデータを各ライン毎に解凍し、該解凍した各ラインデータの圧縮を圧縮パラメータを順次変更して該圧縮ページデータが前記所定のデータ量以下になるまで繰り返すことによりページ圧縮を行う
ことを特徴とする請求項１乃至５のいずれかに記載の画像形成装置。
【請求項７】
前記ページ圧縮手段は、
前記ラインデータを前記圧縮パラメータの示す画素数を単位として平均化して置き換える平均化処理と、該平均化処理したラインデータを同じ画素値データが連続する場合にそのデータを画素値とその連続数の組に置き換えるランレングス圧縮とを含む
ことを特徴とする請求項６記載の画像形成装置。
【請求項８】
前記圧縮ページデータ生成手段は、
所定数のラインデータを該所定数のラインデータ単位で圧縮する第１の圧縮手段と、
前記第１の圧縮手段で圧縮した所定数のラインデータの圧縮率が所定の圧縮率閾値以下かである場合は、圧縮パラメータを変更して該所定数の圧縮ラインデータを更に圧縮する第２の圧縮手段と
を具備することを特徴とする請求項１乃至３のいずれかに記載の画像形成装置。
【請求項９】
前記第１の圧縮手段および前記第２の圧縮手段は、
所定ブロックを単位として量子化テーブルを用いて量子化して圧縮するＪＰＥＧ圧縮を行い、
前記圧縮パラメータは、
前記量子化テーブルのテーブル番号である
ことを特徴とする請求項８記載の画像形成装置。
【請求項１０】
前記ページ圧縮手段は、
前記圧縮ページデータ生成手段で生成された所定ライン数の圧縮ページデータを所定ライン数毎に解凍し、該解凍した所定ライン数ラインデータの圧縮を圧縮パラメータを順次変更して繰り返すことによりページ圧縮を行う
ことを特徴とする請求項８または９記載の画像形成装置。
【請求項１１】
前記ページ圧縮手段は、
所定ブロックを単位として量子化テーブルを用いて量子化して圧縮するＪＰＥＧ圧縮を行い、
前記圧縮パラメータは、
前記量子化テーブルのテーブル番号である
ことを特徴とする請求項１０記載の画像形成装置。
【請求項１２】
イメージデータを圧縮してメモリに格納し、該メモリに格納された圧縮イメージデータを伸張しながら画像形成を行う画像形成方法において、
前記イメージデータを１または複数ラインデータ単位で圧縮して圧縮ページデータを圧縮ページデータ生成手段により生成し、
前記圧縮ページデータ生成手段で生成された圧縮ページデータのデータ量が予め設定された所定のデータ量を越えているかを判別手段により判別し、
前記判別手段により前記圧縮ページデータのデータ量が前記所定のデータ量を越えていると判別された場合は、該圧縮ページデータをページ圧縮手段により前記所定のデータ量以下になるまで圧縮して前記メモリに格納する
ことを特徴とする画像形成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、イメージデータを圧縮してメモリに格納し、該メモリに格納された圧縮イメージデータを伸張しながら画像形成を行う画像形成装置および方法に関し、特に、メモリに格納されるイメージデータの圧縮を有効に行うことにより、メモリ容量を増大することなく高速化および高画質化を可能にした画像形成装置および方法に関する。
【背景技術】
【０００２】
従来、ページプリンタにおいて、高速かつ少ないメモリで印刷を行う技術としては、イメージデータを圧縮してメモリに格納し、該メモリに格納した圧縮イメージデータを伸張しながら順次画像形成する技術が知られている。
【０００３】
この技術を用いる場合、イメージデータが簡単で圧縮率が大きいときは、データ量が少なくなり高速に印刷できるが、イメージデータが複雑で圧縮率が小さいと、データ量が多くなり印刷に時間がかかるという問題がある。
【０００４】
ここで、圧縮率は入力データサイズ／出力データサイズと定義する。
【０００５】
また、データ量が多い場合、メモリに入りきらずにメモリオーバフローが発生する場合がある。
【０００６】
さらに、電子写真技術と呼ばれる画像形成方式においては、画像の形成を一定速度で行う必要があるが、圧縮率が小さくデータ量が多いと、データの供給速度が画像の形成速度に間に合わずにエラーを発生するという問題がある。
【０００７】
ところで、この種の装置使用される圧縮技術としては、大きく分けて可逆圧縮と非可逆圧縮に分類される。
【０００８】
可逆圧縮は圧縮伸張した結果が原画と同じになるが、非可逆圧縮では重要度の低い情報を抑制して圧縮するため、圧縮伸張すると情報が失われ、原画と同じにならない。
【０００９】
これに対して、非可逆圧縮では情報の損失を許容するために、一般的に可逆圧縮よりも大きい圧縮率を達成することができる。
【００１０】
さて、非可逆圧縮においては、画質の損失の度合いを決める圧縮パラメータを指定できることが多い。
【００１１】
たとえば、画像を縮小することによりデータ量を小さくする手法は、非可逆圧縮の一種と考えられるが、縮小すればするほど損失の度合いが増す一方、データ量が小さくなるため、縮小率が圧縮パラメータであるということができる。
【００１２】
また、ＪＰＥＧ圧縮技術では、量子化テーブルを圧縮パラメータとして、画質の損失の度合いを制御し、圧縮率を変化できることが知られている。ＪＰＥＧ圧縮については、日本工業規格ＪＩＳ  Ｘ４３０１に動作が記述されている。
【００１３】
メモリのオーバーフローを防ぐための技術として、このような圧縮技術が使用されており、例えば、特許文献１には、可逆圧縮されたラスターデータのサイズが記憶手段の容量より大きい場合に、圧縮方式を非可逆圧縮方式に切り替えてラスターデータを保存する方法が提案されている。
【００１４】
また、特許文献２には、ホストコンピュータからプリンタに印刷データを送付する場合に、プリンタの空き容量をホストコンピュータに通知し、ホストコンピュータはプリンタの空き容量ににしたがって画像の解像度を変更する方法が提案されている。
【特許文献１】特開平１０−１４７０１６号公報
【特許文献２】特開平１０−２３３８７７号公報
【発明の開示】
【発明が解決しようとする課題】
【００１５】
しかし、特許文献１では、ページ全体が必ずメモリに入るように各部の圧縮率を選択し、圧縮する必要がある。
【００１６】
そのために、各部の圧縮率はページ全体の圧縮率と同じにする必要があり、必ずしも必要でない高損失の非可逆圧縮を行ってしまう場合がある。
【００１７】
また、特許文献２では、空き容量が少なくなった時点で初めて解像度を変更するため、ページの後半の画質の損失が大きくなり、均一な結果が得られないという問題を持つ。
【００１８】
そこで、この発明は、メモリに格納されるイメージデータの圧縮を有効に行うことにより、メモリ容量を増大することなく高速化および高画質化を可能にした画像形成装置および方法を提供することを目的とする。
【課題を解決するための手段】
【００１９】
上記目的を達成するため、請求項１の発明は、イメージデータを圧縮してメモリに格納し、該メモリに格納された圧縮イメージデータを伸張しながら画像形成を行う画像形成装置において、前記イメージデータを１または複数ラインデータ単位で圧縮して圧縮ページデータを生成する圧縮ページデータ生成手段と、前記圧縮ページデータ生成手段で生成された圧縮ページデータのデータ量が予め設定された所定のデータ量を越えているかを判別する判別手段と、前記判別手段により前記圧縮ページデータのデータ量が前記所定のデータ量を越えていると判別された場合は、該圧縮ページデータを前記所定のデータ量以下になるまで圧縮するページ圧縮手段とを具備することを特徴とする。
【００２０】
また、請求項２の発明は、請求項１の発明において、前記ページ圧縮手段で圧縮された圧縮ページデータをインターフェース手段を経由して受け取るフレームバッファ手段と、前記フレームバッファ手段で受け取った圧縮ページデータを伸張して画像形成を行う画像形成手段とを更に具備することを特徴とする。
【００２１】
また、請求項３の発明は、請求項１または２の発明において、前記フレームバッファ手段の空き領域を前記インターフェース手段を経由して前記ページ圧縮手段に通知する通知手段更に具備することを特徴とする。
【００２２】
また、請求項４の発明は、請求項１乃至３のいずれかの発明において、前記圧縮ページデータ生成手段は、前記ラインデータを可逆圧縮する第１の圧縮手段と、前記第１の圧縮手段で圧縮したラインデータの圧縮率が所定の圧縮率閾値以下である場合は、該ラインデータを非可逆圧縮する第２の圧縮手段とを具備し、各ラインデータの圧縮率が所定の閾値を越えるまで各ライン毎に前記第１の圧縮手段による可逆圧縮と前記第２の圧縮手段による非可逆圧縮とを前記第２の圧縮手段による非可逆圧縮の圧縮パラメータを順次変更して繰り返して前記圧縮ページデータを生成することを特徴とする。
【００２３】
また、請求項５の発明は、請求項４の発明において、前記第１の圧縮手段は、同じ画素値データが連続する場合にそのデータを画素値とその連続数の組に置き換えるランレングス圧縮を行い、前記第２の圧縮手段は、前記圧縮ラインデータを所定の画素数を単位としてそれぞれ平均化して置き換える平均化処理を行い、前記圧縮パラメータは、前記平均化処理における平均化の画素数であることを特徴とする。
【００２４】
また、請求項６の発明は、請求項１乃至５のいずれかの発明において、前記ページ圧縮手段は、前記圧縮ページデータ生成手段で生成された圧縮ページデータを各ライン毎に解凍し、該解凍した各ラインデータの圧縮を圧縮パラメータを順次変更して該圧縮ページデータが前記所定のデータ量以下になるまで繰り返すことによりページ圧縮を行うことを特徴とする。
【００２５】
また、請求項７の発明は、請求項６の発明において、前記ページ圧縮手段は、前記ラインデータを前記圧縮パラメータの示す画素数を単位として平均化して置き換える平均化処理と、該平均化処理したラインデータを同じ画素値データが連続する場合にそのデータを画素値とその連続数の組に置き換えるランレングス圧縮とを含むことを特徴とする。
【００２６】
また、請求項８の発明は、請求項１乃至３のいずれかの発明において、前記圧縮ページデータ生成手段は、所定数のラインデータを該所定数のライン単位で圧縮する第１の圧縮手段と、前記第１の圧縮手段で圧縮した所定数のラインデータの圧縮率が所定の圧縮率閾値以下かである場合は、圧縮パラメータを変更して該所定数の圧縮ラインデータを更に圧縮する第２の圧縮手段とを具備することを特徴とする。
【００２７】
また、請求項９の発明は、請求項８の発明において、前記第１の圧縮手段および前記第２の圧縮手段は、所定ブロックを単位として量子化テーブルを用いて量子化して圧縮するＪＰＥＧ圧縮を行い、前記圧縮パラメータは、前記量子化テーブルのテーブル番号であることを特徴とする。
【００２８】
また、請求項１０の発明は、請求項８または９の発明において、前記ページ圧縮手段は、前記圧縮ページデータ生成手段で生成された所定ライン数の圧縮ページデータを所定ライン数毎に解凍し、該解凍した所定ライン数ラインデータの圧縮を圧縮パラメータを順次変更して繰り返すことによりページ圧縮を行うことを特徴とする。
【００２９】
また、請求項１１の発明は、請求項１０の発明において、前記ページ圧縮手段は、所定ブロックを単位として量子化テーブルを用いて量子化して圧縮するＪＰＥＧ圧縮を行い、前記圧縮パラメータは、前記量子化テーブルのテーブル番号であることを特徴とする。
【００３０】
また、請求項１２の発明は、イメージデータを圧縮してメモリに格納し、該メモリに格納された圧縮イメージデータを伸張しながら画像形成を行う画像形成方法において、前記イメージデータを１または複数ライン単位で圧縮して圧縮ページデータを圧縮ページデータ生成手段により生成し、前記圧縮ページデータ生成手段で生成された圧縮ページデータのデータ量が予め設定された所定のデータ量を越えているかを判別手段により判別し、前記判別手段により前記圧縮ページデータのデータ量が前記所定のデータ量を越えていると判別された場合は、該圧縮ページデータをページ圧縮手段により前記所定のデータ量以下になるまで圧縮して前記メモリに格納することを特徴とする。
【発明の効果】
【００３１】
この発明によれば、イメージデータを１または複数ラインデータ単位で圧縮して圧縮ページデータを生成し、該生成された圧縮ページデータのデータ量が予め設定された所定のデータ量を越えている場合は、該圧縮ページデータを所定のデータ量以下になるまで更に圧縮して画像形成装置のメモリに格納するように構成したので、メモリに格納されるイメージデータの圧縮を適切かつ有効に行うことができ、これにより、メモリ容量を増大することなく高速化および高画質化が可能になるという効果を奏する。
【発明を実施するための最良の形態】
【００３２】
以下、この発明に係る画像形成装置および方法を添付図面を参照して詳細に説明する。
【００３３】
図１は、この発明に係る画像形成装置の一実施例を示すブロック図である。
【００３４】
図１において、この画像形成装置１００は、文書データ入力部１０、ラインデータ生成部２０、ラインデータ圧縮部３０、ページデータ圧縮部４０、印刷部５０、平均化処理部６０を具備して構成される。
【００３５】
この実施例の画像形成装置１００においては、印刷部５０のメモリを有効に利用するために、印刷する文書データに基づきラインデータを生成し、このラインデータをラインデータ単位で圧縮し、その後、このラインデータ単位の圧縮により生成された圧縮ページデータが所望のデータ量（ページサイズ閾値）以下にならない場合は、この圧縮ページデータを更にページ圧縮して印刷部５０に供給するように構成される。
【００３６】
すなわち、図１において、文書データ入力部１０は、図示しない上位装置若しくはネットワークから印刷する文書データを有線若しくは無線で受け取る。
【００３７】
ラインデータ生成部２０は、文書データ入力部１０で受け取った文書データに基づきラインデータを生成する。
【００３８】
ここで、ラインデータとは、スキャンラインの各画素値データの連続で表現されるもので、スキャンラインとは、画像形成の単位となる媒体上の領域をさし、この領域は通常、媒体上一本の線で表現できる。
【００３９】
ラインデータ生成部２０では、このスキャンラインに対応付けられる画素値データの列であるラインデータを生成する。また、画素値データとは、媒体上の一点の色を示すデータである。
【００４０】
文書データは１つまたは複数のページから構成され、各ページは、例えば、円や四角、文字などの描画オブジェクト情報で構成されている。ラインデータ生成部２０は何も書かれていない空のラインデータに対して、描画オブジェクトを順次描画していくことにより、描画されたラインデータを生成する。
【００４１】
ラインデータ圧縮部３０は、まず、このラインデータ生成部２０で生成されたラインデータをラインデータ単位でライン圧縮する。このライン圧縮には、例えば、可逆圧縮であるランレングス圧縮を用いることができる。
【００４２】
ラインデータ圧縮部３０では、このライン圧縮により当該ラインデータが所望のライン圧縮率閾値まで圧縮できたかの判定を行い、所望のライン圧縮率閾値まで圧縮できないと判定されると、このライン圧縮されたデータを平均化処理部６０に渡し、更に平均化処理を行う。この平均化処理には、例えば、圧縮ラインデータを所定の画素数を単位としてそれぞれ平均化して置き換える処理を用いることができる。
【００４３】
平均化処理部６０で平均化処理された圧縮ラインデータは再びラインデータ圧縮部３０に戻され、ここで、再度ライン圧縮される。この処理が平均化処理部６０における平均化の圧縮パラメータを順次変更して当該ラインデータが所望のライン圧縮率閾値以上に圧縮されるまで繰り返される。
【００４４】
ラインデータ圧縮部３０における全てのラインに対するライン圧縮が終了すると、このライン圧縮により生成された圧縮ページデータがページデータ圧縮部４０に渡される。
【００４５】
ページデータ圧縮部４０では、まず、ラインデータ圧縮部３０で生成された圧縮ページデータが、所望のページサイズ閾値以下かの判定を行い、ページサイズ閾値以下であれば、そのまま印刷部５０に出力するが、所望のページサイズ閾値を越えている場合は、当該圧縮ページデータが所望のページサイズ閾値以下になるまで、ページ単位の再圧縮を行い、その後印刷部５０に出力する。このページ単位の再圧縮には、例えば、上記ランレングス圧縮と平均化処理とを組み合わせて行うことができる。
【００４６】
印刷部５０では、ページデータ圧縮部４０から出力された圧縮ページデータを伸張して印刷を行う。
【００４７】
このような構成によると、まず、ライン単位で所望の圧縮率を達成するように圧縮を行い、次に、ページ全体で所望のページサイズを達成するように圧縮を行うようにしたので、画像劣化を最小限に抑えた圧縮が可能になるとともに、ページ全体でのページデータ量を所望のデータ量以下に確実に抑えることが可能になる。
【００４８】
図２は、図１に示した画像形成装置１００の処理例を示すフローチャートである。
【００４９】
このフローチャートの処理においては、ライン圧縮にランレングス圧縮を用い、平均化処理にｎピクセル平均化を用いている。
【００５０】
また、ラインデータは、それぞれ４ビットの画素値データの連続により構成されているとする。また、この処理においては、印刷する文書データの１ページ分の処理を示している。
【００５１】
この処理が開始されると、まず、処理ライン番号ＹをＹ＝１とし、平均化処理による圧縮パラメータｎをｎ＝２に設定し（ステップ２０１）、最初のラインＹ＝１のランレングス圧縮を行う（ステップ２０２）。
【００５２】
ここで、ランレングス圧縮は、同じ画素値データが連続する場合にそのデータを画素値とその連続数の組に置き換える圧縮で、同一画素値データが１つである場合は、これを１ビットのデータ"０"と４ビットの画素値データで表し、同一画素値データが２以上連続している場合は、これを１ビットのデータ"１"と４ビットの画素値データおよびその（連続数−１）の３ビットのデータの組で表す。
【００５３】
具体的には、ラインデータが、図３（ａ）に示すように、それぞれ１０進数で表現した４ビットデータからなる要素（画素値データ）「４，４，４，１０，１２，１３，１５，１５，７，３，３，３」の連続であるとすると、このラインデータは、上記ランレングス圧縮の規則に基づき、図３（ｂ）に示すように、{1,[0,1,0,0],[0,1,0],0,[1,0,1,0],0,[1,1,0,0,],0,[1,1,0,1],1,[1,1,1,1],[0,0,1],0,[0,1,1,1,],1,[0,0,1,1],[0,1,0]}に変換される。
【００５４】
ここで、変換前の図３（ａ）に示すラインデータは、１２要素×４＝４８ビットであるが、変換後の図３（ｂ）に示す圧縮ラインデータは、４４ビットとなり、この場合の圧縮率は、４８／４４＝１．０９となる。このランレングス圧縮は、同じ画素値データが連続する個所が多いほど圧縮率が高くなり、また可逆圧縮である。
【００５５】
次に、上記ランレングス圧縮によるこのラインのライン圧縮率が予め設定した所定のライン圧縮率閾値より大きいかを調べる（ステップ２０３）。ここで、このラインのライン圧縮率が上記ライン圧縮率閾値より小さいと判断されると（ステップ２０３でＮＯ）、ステップ２０１で設定した圧縮パラメータｎ＝２による平均化処理を行う。
【００５６】
この場合の平均化処理は、ｎピクセル平均化処理により行われる（ステップ２０４）。このｎピクセル平均化処理による平均化処理は、ｎ画素（ピクセル）数を単位としてそれぞれ平均化して元の画素に置き換える処理である。
【００５７】
具体的には、圧縮パラメータがｎ＝４であり、平均化処理前のラインデータが、図４（ａ）に示すように、それぞれ１０進数で表現した４ビットデータからなる要素（画素値データ）「４，４，４，１０，１２，１３，１５，１５，７，３，３，３」の連続であるとすると、この連続する要素を４画素単位に分けて、図４（ｂ）に示すように、それぞれの画素値の平均を取り、これを元の画素に置き換える処理により行われる。
【００５８】
ステップ２０４では、まず、圧縮パラメータｎ＝２による上記平均化処理が行われ、次に、圧縮パラメータをｎ＝ｎ＋１にインクリメントし、ステップ２０２に戻り、再びランレングス圧縮を行う。この場合のランレングス圧縮においては、上記平均化処理により同じ画素値データが連続する個所が多く発生しているので、これにより高い圧縮率が得られる。
【００５９】
この処理を、ステップ２０３で、当該ラインのライン圧縮率が予め設定した所定のライン圧縮率閾値より大きいと判断されるまで繰り返し、ステップ２０３で、当該ラインのライン圧縮率が上記ライン圧縮率閾値より大きいと判断されると（ステップ２０３でＹＥＳ）、処理ライン番号ＹをＹ＝Ｙ＋１にインクリメントし、平均化処理の圧縮パラメータｎをｎ＝２に戻し（ステップ２０６）、１ページ終了かを調べる（ステップ２０７）。
【００６０】
ここで、１ページ終了でない場合は（ステップ２０７でＮＯ）、ステップ２０２に戻り、上記処理を当該ページの全てのラインのライン圧縮処理が終了するまで繰り返す。
【００６１】
このようにして、ステップ２０７で、１ページ終了と判断されると（ステップ２０７でＹＥＳ）、上記ライン圧縮処理により生成された圧縮ページデータが予め設定された所定のページサイズ閾値より小さいかを調べる（ステップ２０８）。
【００６２】
ここで、上記圧縮ページデータが上記ページサイズ閾値より大きいと（ステップ２０８でＮＯ）、ページ単位での圧縮処理が行われる。
【００６３】
ページ単位での圧縮処理は、まず、処理ライン番号ＹをＹ＝１とし（ステップ２０９）、上記圧縮ページデータの最初のラインＹ＝１のラインデータを解凍（伸張）して（ステップ２１０）、このラインのランレングス圧縮を行う（ステップ２１１）。
【００６４】
次に、このランレングス圧縮した圧縮ラインデータを圧縮パラメータｎ＝２によるｎピクセル平均化処理を行う（ステップ２１１）。
【００６５】
そして、この平均化処理を行った圧縮データを更にランレングス圧縮し（ステップ２１２）、その後、処理ライン番号ＹをＹ＝Ｙ＋１にインクリメントし（ステップ２１２）、１ページ終了かを調べ（ステップ２１４）、１ページ終了でない場合は（ステップ２１４でＮＯ）、ステップ２１０に戻り、この処理を当該ページの全てのラインのライン圧縮処理が終了するまで繰り返す。
【００６６】
このようにして、ステップ２１４で、１ページ終了と判断されると（ステップ２１４でＹＥＳ）、圧縮パラメータｎをｎ＝ｎ＋１にインクリメントし、ステップ２０８に戻り、上記ライン圧縮処理により生成された圧縮ページデータが予め設定された所定のページサイズ閾値より小さいかを調べる（ステップ２０８）。
【００６７】
ここで、上記圧縮ページデータが上記ページサイズ閾値より大きいと（ステップ２０８でＮＯ）、再びステップ２０９に進み、インクリメントした圧縮パラメータｎ＝ｎ＋１を用いてステップ２０９から２１５までのページ単位での圧縮処理を繰り返す。
【００６８】
このようにして、ステップ２０８で、圧縮ページデータが予め設定された所定のページサイズ閾値より小さいと判定されると（ステップ２０８でＹＥＳ）、この圧縮ページデータを印刷部５０に送信してこの処理を終了する。
【００６９】
上記処理は、印刷する文書データが複数ページにわたる場合は、各ページ毎に繰り返される。
【００７０】
なお、上記図２に示したフローチャートの処理においては、ページ単位での圧縮処理に一旦ライン圧縮された圧縮ラインデータを解凍して再度ページ圧縮を行うように構成したが、ライン圧縮とページ圧縮とによる二重圧縮による画質劣化を防止するために、ライン圧縮前のラインデータを保存しておいて、この保存したラインデータの圧縮によりページ単位での圧縮を行うように構成してもよい。
【００７１】
また、図２に示したフローチャートの処理においては、ライン圧縮およびページ圧縮に1次元圧縮であるランレングス圧縮を用いたが、このランレングス圧縮に代えて、２次元の可逆圧縮であるデルタロウ(DeltaRow)圧縮を用いても同様に構成することができる。
【００７２】
この可逆デルタロウ圧縮は、ラインデータの圧縮に際して前ラインのラインデータを参照して圧縮を行うもので、圧縮対象ラインの画素値データが前ラインの隣接する画素の画素値データと同じでない場合は、これを１ビットのデータ"０"と４ビットの画素値データで表し、前ラインの隣接する画素の画素値データと同じである場合は、これを１ビットのデータ"１"で表す。
【００７３】
具体的には、図５（ａ）に示すように、それぞれ１０進数で表現した４ビットデータからなる要素（画素値データ）「４，８，０，１３，１１，４，１３，１４，７，６，３，６」の連続であり、前ラインの要素が「４，８，０，１０，１２，１３，１５，１５，７，６，３，０」の連続であるとすると、このラインデータは、上記デルタロウ圧縮の規則に基づき、図５（ｂ）に示すように、{1,1,1,0,[1,1,0,1],0,[1,0,1,1],0,[0,1,0,0],0,[1,1,0,1],0,[1,1,1,0],1,1,1,0,[0,1,1,0]}に変換される。
【００７４】
ここで、変換前の図５（ａ）に示すラインデータは、１２要素×４＝４８ビットであるが、変換後の図５（ｂ）に示す圧縮ラインデータは、３２ビットとなり、この場合の圧縮率は、４８／３６＝１．３となる。この可逆デルタロウ圧縮は、前ラインと同じ画素値データが連続する個所が多いほど圧縮率が高くなる。
【００７５】
ライン圧縮およびページ圧縮に可逆デルタロウ圧縮を用いた場合、平均化処理に代えて非可逆デルタロウ圧縮を用いるこができる。
【００７６】
この非可逆デルタロウ圧縮も、ラインデータの圧縮に際して前ラインのラインデータを参照して圧縮を行うもので、圧縮パラメータをｎとすると、圧縮対象ラインの画素値データと前ラインの隣接する画素の画素値データとの差がｎを越えている場合は、これを１ビットのデータ"０"と４ビットの画素値データで表し、圧縮対象ラインの画素値データと前ラインの隣接する画素の画素値データとの差がｎ以下の場合は、これを１ビットのデータ"１"で表す。
【００７７】
具体的には、図６（ａ）に示すように、それぞれ１０進数で表現した４ビットデータからなる要素（画素値データ）「４，８，０，１３，１１，４，１３，１４，７，６，３，６」の連続であり、前ラインの要素が「４，８，０，１０，１２，１３，１５，１５，７，６，３，０」の連続であるとすると、このラインデータは、上記非可逆デルタロウ圧縮の規則に基づき、圧縮パラメータｎを２とすると、図６（ｂ）に示すように、{1,1,1,0,[1,1,0,1],1,0,[0,1,0,0],0,[1,1,0,1],1,1,1,1,0,[0,1,1,0]}に変換される。
【００７８】
ここで、変換前の図６（ａ）に示すラインデータは、１２要素×４＝４８ビットであるが、変換後の図６（ｂ）に示す圧縮ラインデータは、２８ビットとなり、この場合の圧縮率は、４８／２８＝１．７となる。この非可逆デルタロウ圧縮は、可逆デルタロウ圧縮より圧縮率が高くなる。
【００７９】
図７は、この発明に係る画像形成装置の他の実施例を示すブロック図である。
【００８０】
この実施例の画像形成装置３００は、ＤＣＴ(discrete cosine transform)変換、量子化およびハフマン符号化を用いた圧縮を採用するもので、文書データを入力する文書データ入力部３１０、ラインデータを生成するラインデータ生成部３２０、ＤＣＴ変換、量子化およびハフマン符号化を用いた圧縮を行うブロックデグレート部３３０、ブロックデグレート部３３０で生成された圧縮ページデータをページ単位で圧縮するページデータ圧縮部３４０、ページデータ圧縮部３４０で圧縮された圧縮ページデータを伸張して印刷を行う印刷部３５０を具備して構成される。
【００８１】
なお、ＤＣＴ変換、量子化およびハフマン符号化はＪＰＥＧ圧縮などで使用されており、日本工業規格ＪＩＳ  Ｘ４３０１等に動作が記述されている。この実施例では、ブロックデグレート部３３０における処理が、８×８画素のブロック単位で行われるので８ライン単位でのライン圧縮になる。
【００８２】
すなわち、ブロックデグレート部３３０では、ラインデータ生成部３２０で生成されたライン信号を８ライン単位でＤＣＴ変換し、このＤＣＴ変換した８ラインのデータを量子化テーブルを用いて量子化し、これをハフマン圧縮することにより８ライン単位での圧縮ラインデータを生成し、これを全ラインに対して行うことにより圧縮ページデータを生成する。
【００８３】
そして、この圧縮ページデータが所望のデータ量（ページサイズ閾値）以下にならない場合は、この圧縮ページデータを更にページ圧縮して印刷部５０に供給するように構成される。
【００８４】
このような構成によっても、まず、８ライン単位で所望の圧縮率を達成するように圧縮を行い、次に、ページ全体で所望のページサイズを達成するように圧縮を行うようにしたので、画像劣化を最小限に抑えた圧縮が可能になるとともに、ページ全体でのページデータ量を所望のデータ量以下に確実に抑えることが可能になる。
【００８５】
図８は、図７に示した画像形成装置３００の処理例を示すフローチャートである。
【００８６】
この処理が開始されると、まず、処理開始ライン番号ＹをＹ＝１とし、量子化テーブルのテーブル番号ｎをｎ＝１に設定し（ステップ８０１）、最初のラインＹ＝１からＹ＝８の８ラインのＤＣＴ変換、テーブル番号ｎ＝１の量子化テーブルを用いた量子化およびハフマン圧縮を行う（ステップ８０２）。
【００８７】
上記ステップ８０２の処理で用いる量子化テーブルの一例を図９（ａ）に示す。また、テーブル番号に対応する量子化テーブルの乗数の一例を図９（ｂ）に示す。ここで、量子化テーブルの乗数が大きいほど量子化が荒くなり、画質損失が増すとともに圧縮率が大きくなる。
【００８８】
次に、上記８ライン単位での圧縮によるライン圧縮率が予め設定した所定のライン圧縮率閾値より大きいかを調べる（ステップ８０３）。ここで、ライン圧縮率が上記ライン圧縮率閾値より小さいと判断されると（ステップ８０３でＮＯ）、テーブル番号をｎ＝ｎ＋１にインクリメントし（ステップ８０４）、次に、ｎ＝４かを調べ（ステップ８０５）、ｎ＝４でないと（ステップ８０５でＮＯ）、ステップ８０２に戻り、８ラインのＤＣＴ変換、テーブル番号ｎ＝２の量子化テーブルを用いた量子化およびハフマン圧縮を行う（ステップ８０２）。
【００８９】
この処理をステップ８０３でライン圧縮率が予め設定した所定のライン圧縮率閾値より大きいと判断されるか（ステップ８０３でＹＥＳ）若しくはステップ８０５でｎ＝４と判断されるまで繰り返す。
【００９０】
ステップ８０３でライン圧縮率が予め設定した所定のライン圧縮率閾値より大きいと判断されるか（ステップ８０３でＹＥＳ）若しくはステップ８０５でｎ＝４と判断されると、処理ライン番号ＹをＹ＝Ｙ＋８にインクリメントし、テーブル番号ｎをｎ＝１に戻し（ステップ８０６）、１ページ終了かを調べる（ステップ８０７）。
【００９１】
ここで、１ページ終了でない場合は（ステップ８０７でＮＯ）、ステップ８０２に戻り、上記処理を当該ページの全てのラインのライン圧縮処理が終了するまで繰り返す。
【００９２】
このようにして、ステップ８０７で、１ページ終了と判断されると（ステップ８０７でＹＥＳ）、上記圧縮処理により生成された圧縮ページデータが予め設定された所定のページサイズ閾値より小さいかを調べる（ステップ８０８）。
【００９３】
ここで、上記圧縮ページデータが上記ページサイズ閾値より大きいと（ステップ８０８でＮＯ）、ページ単位での圧縮処理が行われる。
【００９４】
ページ単位での圧縮処理は、まず、処理開始ライン番号ＹをＹ＝１とし（ステップ８０９）、上記圧縮ページデータの最初のラインＹ＝１からＹ＝８の８ラインデータを解凍（伸張）して（ステップ８１０）、この８ラインのＤＣＴ変換、テーブル番号ｎ＝１の量子化テーブルを用いた量子化およびハフマン圧縮を行う（ステップ８１１）。
【００９５】
その後、処理ライン番号ＹをＹ＝Ｙ＋８にインクリメントし（ステップ８１２）、次に、１ページ終了かを調べ（ステップ８１３）、１ページ終了でない場合は（ステップ８１３でＮＯ）、ステップ８１０に戻り、この処理を当該ページの全てのラインのライン圧縮処理が終了するまで繰り返す。
【００９６】
このようにして、ステップ８１３で、１ページ終了と判断されると（ステップ８１３でＹＥＳ）、テーブル番号ｎをｎ＝ｎ＋１にインクリメントし、次に、ｎ＝４かを調べ（ステップ８１５）、ｎ＝４でないと（ステップ８１５でＮＯ）、ステップ８０８に戻り、上記ライン圧縮処理により生成された圧縮ページデータが予め設定された所定のページサイズ閾値より小さいかを調べる（ステップ８０８）。
【００９７】
ここで、上記圧縮ページデータが上記ページサイズ閾値より大きいと（ステップ８０８でＮＯ）、再びステップ８０９に進み、インクリメントしたテーブル番号ｎ＝ｎ＋１の量子化テーブルを用いてステップ８０９から８１５までのページ単位での圧縮処理を繰り返す。
【００９８】
このようにして、ステップ８０８で、圧縮ページデータが予め設定された所定のページサイズ閾値より小さいと判定されると（ステップ８０８でＹＥＳ）、この圧縮ページデータを印刷部５０に送信してこの処理を終了する。
【００９９】
なお、ステップ８１５でｎ＝４であると判断されると（ステップ８１５でＮＯ）、所定のエラー処理が行われる（ステップ８１６）。
【０１００】
上記処理は、印刷する文書データが複数ページにわたる場合は、各ページ毎に繰り返される。
【０１０１】
なお、上記図８に示したフローチャートの処理においては、ページ単位での圧縮処理に一旦ライン圧縮された圧縮ラインデータを解凍して再度ページ圧縮を行うように構成したが、ライン圧縮とページ圧縮とによる二重圧縮による画質劣化を防止するために、ライン圧縮前のラインデータを保存しておいて、この保存したラインデータの圧縮によりページ単位での圧縮を行うように構成してもよい。
【０１０２】
図１０は、図２の処理を画像装置本体の外部の情報処理装置で行うようにしたこの発明の他の実施例を示すブロック図である。
【０１０３】
この実施例においては、情報処理端末１１００に、印刷する文書データを格納する文書メモリ１１１０、ラインデータを生成するラインデータ生成部１１２０、ラインデータ生成部１１２０で生成されたラインデータをラインデータ単位でライン圧縮して圧縮ページデータを生成するラインデータ圧縮部１１３０、ラインデータ圧縮部１１３０でライン圧縮された圧縮ラインデータの平均化処理を行う平均化処理部１１４０、ラインデータ圧縮部１１３０で生成された圧縮ページデータの再圧縮を行うページデータ圧縮部１１５０、ページデータ圧縮部１１５０で圧縮された圧縮ページデータを格納するページバッファ１１６０、画像形成装置本体２１００から送信されたフレームバッファ２１２０の空き領域情報に基づきラインデータ圧縮部１１３０およびページデータ圧縮部１１５０における圧縮率の閾値を決定する圧縮率決定部１１７０が設けられる。
【０１０４】
また、画像形成装置本体２１００には、ページバッファ１１６０に格納された圧縮ページデータをインターフェース２１１０を介して受け取るフレームバッファ２１２０、フレームバッファ２１２０に格納された圧縮ページデータを伸張して印刷する印刷部２１３０、フレームバッファ２１２０の空き領域を監視し、フレームバッファ２１２０の空き領域情報を、インタフェース２１１０を介して圧縮率決定部１１７０に通知する空き領域通知部２１４０が設けられる。
【０１０５】
上記構成において、情報処理端末１１００におけるライン単位でのライン圧縮およびページ単位でのページ圧縮は、基本的には、図２に示したフローチャートの処理と同様である。
【０１０６】
しかし、この実施例においては、ラインデータ圧縮部１１３０およびページデータ圧縮部１１５０における圧縮率の閾値を画像装置本体２１００の空き領域通知部２１４０から通知されたフレームバッファ２１２０の空き領域情報に基づき圧縮率決定部１１７０で決定するように構成されているので、フレームバッファ２１２０の空き領域に応じた木目の細かいライン圧縮処理およびページ圧縮処理が可能になり、フレームバッファ２１２０でデータがオーバーフローするような事態を確実に防止することができる。
【０１０７】
また、情報処理端末１１００から画像形成装置本体２１００に送られるデータの量を低減することができるので、印刷速度が向上し、情報処理端末１１００と画像形成装置本体２１００がネットワークで接続されている場合、ネットワーク使用料等の軽減も期待できる。
【０１０８】
なお、圧縮率決定部１１７０で決定されるラインデータ圧縮部１１３０における圧縮率の閾値は、画像全体の劣化を最小にするために、ページデータ圧縮部１１５０における圧縮率の閾値よりも小さくなるように選択される。
【０１０９】
また、上記構成において、情報処理端末１１００は、画像形成装置本体２１００の外部装置として構成されるので、十分なメモリが搭載されている場合が多く、圧縮ラインデータ生成時には十分なメモリを使用できる。
【０１１０】
図１１は、図８の処理を画像装置本体の外部の情報処理装置で行うようにしたこの発明の他の実施例を示すブロック図である。
【０１１１】
この実施例においては、情報処理端末１２００に、印刷する文書データを格納する文書メモリ１２１０、ラインデータを生成するラインデータ生成部１２２０、ラインデータ生成部１２２０で生成されたラインデータを８ライン単位でＤＣＴ変換、量子化およびハフマン圧縮して圧縮ページデータを生成するブロックデグレート部１２３０、ブロックデグレート部１２３０で生成された圧縮ページデータの再圧縮を行うページデータ圧縮部１２４０、ページデータ圧縮部１２４０で圧縮された圧縮ページデータを格納するページバッファ１２５０、画像形成装置本体２１００から送信されたフレームバッファ２１２０の空き領域情報に基づきブロックデグレート部１２３０およびページデータ圧縮部１２４０における圧縮率の閾値を決定する圧縮率決定部１２６０が設けられる。
【０１１２】
また、画像形成装置本体２１００には、ページバッファ１２５０に格納された圧縮ページデータをインターフェース２１１０を介して受け取るフレームバッファ２１２０、フレームバッファ２１２０に格納された圧縮ページデータを伸張して印刷する印刷部２１３０、フレームバッファ２１２０の空き領域を監視し、フレームバッファ２１２０の空き領域情報を、インタフェース２１１０を介して圧縮率決定部１２６０に通知する空き領域通知部２１４０が設けられる。
【０１１３】
上記構成において、情報処理端末１２００における８ライン単位でのライン圧縮およびページ単位でのページ圧縮は、基本的には、図８に示したフローチャートの処理と同様である。
【０１１４】
しかし、この実施例においても、ブロックデグレート部１２３０およびページデータ圧縮部１２４０における圧縮率の閾値を画像装置本体２１００の空き領域通知部２１４０から通知されたフレームバッファ２１２０の空き領域情報に基づき圧縮率決定部１２６０で決定するように構成されているので、フレームバッファ２１２０の空き領域に応じた木目の細かいライン圧縮処理およびページ圧縮処理が可能になり、フレームバッファ２１２０でデータがオーバーフローするような事態を確実に防止することができる。
【０１１５】
また、情報処理端末１２００から画像形成装置本体２１００に送られるデータの量を低減することができるので、印刷速度が向上し、情報処理端末１２００と画像形成装置本体２１００がネットワークで接続されている場合、ネットワーク使用料等の軽減も期待できる。
【０１１６】
なお、圧縮率決定部１２６０で決定されるブロックデグレート部１２３０における圧縮率の閾値は、画像全体の劣化を最小にするために、ページデータ圧縮部１２４０における圧縮率の閾値よりも小さくなるように選択される。
【０１１７】
また、上記構成において、情報処理端末１２００は、画像形成装置本体２１００の外部装置として構成されるので、十分なメモリが搭載されている場合が多く、圧縮ラインデータ生成時には十分なメモリを使用でき、特に、８ライン単位でのＤＣＴ変換、量子化およびハフマン圧縮を行う構成においては有利である。
【０１１８】
また、ブロックデグレード部１２３０で用いる量子化テーブルとして、イメージ部分に適用される量子化テーブル、テキスト部分に適用される量子化テーブルなど別々に用意しておくことで、各図形オブジェクトに対応したそれぞれ最適な量子化テーブルを用いた圧縮を行うことも可能になる。
【産業上の利用可能性】
【０１１９】
この発明は、イメージデータを圧縮してメモリに格納し、該メモリに格納された圧縮イメージデータを伸張しながら画像形成を行う画像形成装置に適用可能である。この発明によれば、イメージデータを１または複数ラインデータ単位で圧縮して圧縮ページデータを生成し、該生成された圧縮ページデータのデータ量が予め設定された所定のデータ量を越えている場合は、該圧縮ページデータを所定のデータ量以下になるまで更に圧縮して画像形成装置のメモリに格納するように構成したので、メモリに格納されるイメージデータの圧縮を適切かつ有効に行うことができ、これにより、メモリ容量を増大することなく高速化および高画質化が可能になる。
【図面の簡単な説明】
【０１２０】
【図１】この発明に係る画像形成装置の一実施例を示すブロック図である。
【図２】図１に示した画像形成装置の処理例を示すフローチャートである。
【図３】図２に示した処理で用いるランレングス圧縮を説明する図である。
【図４】図２に示した処理で用いるｎピクセル平均化処理を説明する図である。
【図５】可逆デルタロウ圧縮を説明する図である。
【図６】非可逆デルタロウ圧縮を説明する図である。
【図７】この発明に係る画像形成装置の他の実施例を示すブロック図である。
【図８】図７に示した画像形成装置３００の処理例を示すフローチャートである。
【図９】図８に示した処理で用いる量子化テーブルの一例およびテーブル番号に対応する量子化テーブルの乗数の一例を示す図である。
【図１０】図２の処理を画像装置本体の外部の情報処理装置で行うようにしたこの発明の他の実施例を示すブロック図である。
【図１１】図８の処理を画像装置本体の外部の情報処理装置で行うようにしたこの発明の他の実施例を示すブロック図である。
【符号の説明】
【０１２１】
１０    文書データ入力部
２０    ラインデータ生成部
３０    ラインデータ圧縮部
４０    ページデータ圧縮部
５０    印刷部
６０    平均化処理部
１００    画像形成装置
３００    画像形成装置
３１０    文書データ入力部
３２０    ラインデータ生成部
３３０    ブロックデグレート部
３４０    ページデータ圧縮部
３５０    印刷部３５０
１１００    情報処理端末
１１１０    文書メモリ
１１２０    ラインデータ生成部
１１３０    ラインデータ圧縮部
１１４０    平均化処理部
１１５０    ページデータ圧縮部
１１６０    ページバッファ
１１７０    圧縮率決定部
２１００    画像形成装置本体
２１１０    インターフェース
２１２０    フレームバッファ
２１３０    印刷部
２１４０    空き領域通知部
１２１０    文書メモリ
１２２０    ラインデータ生成部
１２３０    ブロックデグレート部
１２４０    ページデータ圧縮部
１２５０    ページバッファ
１２６０    圧縮率決定部
【図１】
2006157444.tif 000003
【図２】
2006157444.tif 000004
【図３】
2006157444.tif 000005
【図４】
2006157444.tif 000006
【図５】
2006157444.tif 000007
【図６】
2006157444.tif 000008
【図７】
2006157444.tif 000009
【図８】
2006157444.tif 000010
【図９】
2006157444.tif 000011
【図１０】
2006157444.tif 000012
【図１１】
2006157444.tif 000013