(57)【要約】      （修正有）【課題】高画質の画像データの圧縮された画像形成データに基づいて画像形成することができる画像形成装置を提供する。【解決手段】圧縮形式情報を含むコマンドと圧縮された画像データとを有する画像形成データを受信し，圧縮形式情報に基づいて圧縮された画像データを解凍し，当該解凍された再生画像データにしたがって画像を形成する画像形成装置において，コマンドに元の画像データのビット数に関する第１ビット数情報が含まれる。そして，画像形成装置は，コマンドの第１ビット数情報を解析するコマンド解析手段と，圧縮された画像データを前記圧縮形式情報に基づいて解凍し再生画像データを生成する解凍ユニットと，当該再生画像データを画素に対応した二値化データに変換する二値化処理手段とを有し，解凍ユニットは第１ビット数情報に対応するビット数で再生画像データを出力する。【選択図】図２
2006217578.tif 000002
【特許請求の範囲】
【請求項１】
圧縮形式情報を含むコマンドと圧縮された画像データとを有する画像形成データを受信し，前記圧縮形式情報に基づいて前記圧縮された画像データを解凍し，当該解凍された再生画像データにしたがって画像を形成する画像形成装置において，
前記コマンドに元の画像データのビット数に関する第１ビット数情報が含まれ，
前記コマンドの第１ビット数情報を解析するコマンド解析手段と，
前記圧縮された画像データを前記圧縮形式情報に基づいて解凍し再生画像データを生成する解凍ユニットと，
当該再生画像データを画素に対応した二値化データに変換する二値化処理手段とを有し，
前記解凍ユニットは前記第１ビット数情報に対応するビット数で前記再生画像データを出力することを特徴とする画像形成装置。
【請求項２】
請求項１において，
前記二値化処理手段は当該第１ビット数情報のビット数に対応して前記再生画像データを前記二値化データに変換することを特徴とする画像形成装置。
【請求項３】
請求項１において，
前記圧縮形式が直流成分と交流成分の信号を生成するディスクリートコサイン変換を有する形式であり，
前記圧縮された画像データは，前記直流成分のビット数に関する第２ビット数情報を有し，前記解凍ユニットは，当該第２ビット数情報にしたがって前記直流成分と交流成分から逆ディスクリートコサイン変換を行って前記再生画像データを生成することを特徴とする画像形成装置。
【請求項４】
請求項３において，
前記直流成分の第２ビット数情報は，当該直流成分のビット数の拡張を含むか否かの情報であることを特徴とする画像形成装置。
【請求項５】
圧縮形式情報を含むコマンドと圧縮された画像データとを有する画像形成データを受信し，前記圧縮形式情報に基づいて前記圧縮された画像データを解凍し，当該解凍された再生画像データにしたがって画像を形成する画像形成装置に対し，前記画像形成データをコンピュータに生成させる画像圧縮プログラムにおいて，
前記圧縮形式が直流成分と交流成分の信号を生成するディスクリートコサイン変換を有する形式であり，
元の画像データのビット数に関する第１ビット数情報を前記圧縮形成情報と共にコマンドに含ませ，当該元の画像データを前記圧縮形成形式にしたがって圧縮して前記圧縮された画像データを生成し，前記画像形成データを生成する手順と，
当該画像形成データを，前記画像形成装置に送信させる手順とをコンピュータに実行させ，
更に，前記圧縮された画像データは，前記直流成分のビット数に関する第２ビット数情報を有し，前記生成手順では，前記直流成分を前記第２ビット数情報のビット数で生成する事を特徴とする画像圧縮プログラム。
【請求項６】
画像データを圧縮し，前記圧縮された画像データを有する画像形成データを出力する画像圧縮手段と，画像形成手段とを有する画像形成システムにおいて，
前記画像データは，第１のビット数または前記第１のビット数より多い第２のビット数の画像データであり，
前記画像圧縮手段は，前記画像データのビット数にかかわらず，所定のビット数で直流成分と交流成分を生成するディスクリートコサイン変換により画像データを圧縮して前記画像形成データを生成し，当該画像形成データに更に前記元の画像データのビット数に関する第１ビット数情報を含ませて前記画像形成手段へ送出することを特徴とする画像形成システム。
【請求項７】
請求項６において，
前記画像形成手段は，前記画像形成データを受信し，前記圧縮された画像データの直流成分及び交流成分から逆ディスクリートコサイン変換を行って所定のビット数で解凍データを生成した後に，当該解凍データから，前記第１ビット数情報に基づいて前記第１または第２のビット数で再生画像データを生成し，当該再生画像データにしたがって画像形成することを特徴とする画像形成システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，画像形成装置及びそのドライバプログラムに関し，特に，ＪＰＥＧ圧縮された画像形成データに元の画像データの形式情報と圧縮データの形式情報とを含ませることにより，より高画質の画像形成を可能にする画像形成装置及びそのドライバプログラムに関する。
【背景技術】
【０００２】
インクジェットにより画像を形成する画像形成装置は，デジタルカメラで撮像した写真やコントローラ上で作成されたデザインなどを印刷媒体上に印刷する手段として広く普及している。特に，インクの色をシアン（Ｃ），マゼンタ（Ｍ），イエロー（Ｙ），ブラック（Ｋ）以外にライトシアン，ライトマゼンタ，ライトブラックなど追加することで再現可能な色をより高品質にすることができ，高画質化を可能にしている。
【０００３】
画像形成装置は，ホストコンピュータに接続され，ホストコンピュータから画像形成データを受信し，所定の画像処理を行って印刷エンジン，例えばインクヘッドや電子写真エンジンに画像再生データを出力する。高画質化に伴って画像形成データが大容量化しており，ホストコンピュータと画像形成装置間の通信データ量を抑えることが，画像形成の時間削減に必要になる。
【０００４】
通信データ量を抑制するために，ホストコンピュータ側でデータ圧縮を行い，画像形成装置側でデータ解凍を行う。データの圧縮方式は種々の方法があり，代表的な方法としては，ＪＰＥＧ圧縮法，ランレングス圧縮法などである。特に，ＪＰＥＧ圧縮法は，写真などの画像の圧縮方式として広く普及しており，その場合は，ホストコンピュータが画素のＲＧＢデータからなる画像データをＪＰＥＧ圧縮し，その圧縮されたデータをプリンタなどの画像形成装置に通信線を介して送信し，画像形成装置側で解凍する。インクジェットによる画像形成装置においてＪＰＥＧ圧縮された画像形成データを受信して画像を生成することついては，以下の特許文献１に記載されている。
【特許文献１】特開２００２−１８７３１５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来の一般的なＲＧＢ画像データ，例えば，デジタルスチールカメラから撮像される画像データは，画素に対応するそれぞれ８ビットのＲＧＢ階調データで構成されている。また，ホストコンピュータのモニタ画面上に表示されるための画像データも同様である。したがって，画像形成装置は，圧縮された画像形成データの元の画像データは８ビットのＲＧＢデータであることを前提に解凍し，画像処理を行う。
【０００６】
ところが，近年においてより高画質の画像データとして，１２ビットのＲＧＢ階調データを利用することなどが提案されてきている。かかる画像データがＪＰＥＧ圧縮された場合，従来の画像形成装置では，解凍後８ビットのＲＧＢ階調データとしてしか取り扱うことができず，送信側の画像データがビット数を増やして高画質化されても受信側の画像形成装置では対応することができず，高画質化の妨げとなる。
【０００７】
そこで，本発明の目的は，高画質の画像データの圧縮された画像形成データに基づいて画像形成することができる画像形成装置を提供することにある。
【課題を解決するための手段】
【０００８】
上記の目的を達成するために，本発明の第１の側面によれば，圧縮形式情報を含むコマンドと圧縮された画像データとを有する画像形成データを受信し，前記圧縮形式情報に基づいて前記圧縮された画像データを解凍し，当該解凍された再生画像データにしたがって画像を形成する画像形成装置において，前記コマンドに元の画像データのビット数に関する第１ビット数情報が含まれる。そして，画像形成装置は，前記コマンドの第１ビット数情報を解析するコマンド解析手段と，前記圧縮された画像データを前記圧縮形式情報に基づいて解凍し再生画像データを生成する解凍ユニットと，当該再生画像データを画素に対応した二値化データに変換する二値化処理手段とを有し，前記解凍ユニットは前記第１ビット数情報に対応するビット数で前記再生画像データを出力することを特徴とする。
【０００９】
上記の第１の側面によれば，画像形成データのコマンドに解凍前の元の画像データのビット数情報が含まれているので，そのビット数情報にしたがって解凍後の再生画像データを生成することができる。よって，多ビット化により元の画像データが高画質化されている場合も，画像形成装置はその元の画像データに対応する再生画像データにもとづいて画像形成することができる。
【００１０】
上記の第１の側面において，好ましい実施例では，前記二値化処理手段は当該ビット数に対応して再生画像データを前記二値化データに変換する。
【００１１】
更に，上記の第１の側面において，好ましい実施例では，前記圧縮形式が直流成分と交流成分の信号を生成するディスクリートコサイン変換を有する形式であり，前記圧縮された画像データは，前記直流成分のビット数に関する第２ビット数情報を有し，前記解凍ユニットは，当該第２ビット数情報にしたがって前記直流成分と交流成分から逆ディスクリートコサイン変換を行って前記再生画像データを生成することを特徴とする。
【００１２】
上記の目的を達成するために，本発明の第２の側面によれば，圧縮形式情報を含むコマンドと圧縮された画像データとを有する画像形成データを受信し，前記圧縮形式情報に基づいて前記圧縮された画像データを解凍し，当該解凍された再生画像データにしたがって画像を形成する画像形成装置に対し，前記画像形成データをコンピュータに生成させる画像圧縮プログラムおいて，前記圧縮形式が直流成分と交流成分の信号を生成するディスクリートコサイン変換を有する形式である。そして，画像圧縮プログラムは，元の画像データのビット数に関する第１ビット数情報を前記圧縮形成情報と共にコマンドに含ませ，当該元の画像データを前記圧縮形成形式にしたがって圧縮して前記圧縮された画像データを生成し，前記画像形成データを生成する手順と，当該画像形成データを，前記画像形成装置に送信させる手順とをコンピュータに実行させ，更に，前記圧縮された画像データは，前記直流成分のビット数に関する第２ビット数情報を有し，前記生成手順では，前記直流成分を前記第２ビット数情報のビット数で生成することを特徴とする。
【００１３】
上記の第２の側面によれば，第１ビット数情報と第２ビット数情報とにより，高画質の画像圧縮を行うことができ，かかる情報を画像形成データに含ませることで，画像形成装置に高画質の画像を形成させることができる。
【発明を実施するための最良の形態】
【００１４】
以下，図面にしたがって本発明の実施の形態について説明する。但し，本発明の技術的範囲はこれらの実施の形態に限定されず，特許請求の範囲に記載された事項とその均等物まで及ぶものである。
【００１５】
図１は，本実施の形態における画像形成装置の構成図である。この画像形成装置は，一例として，大判用紙への画像形成を可能にするインクジェットプリンタであり，コントローラ２０が，図示しないホストコンピュータから画像形成データを受信し，それを画像処理して画像再生データを生成し，インクを吐出する多数のノズルを有する印刷ヘッド１０に画像再生信号３８を出力する。コントローラ２０は，画像再生データを生成するための画像処理を制御するＣＰＵと，そのＣＰＵバスＣＢＵＳ１と，ＣＰＵバスＣＢＵＳ１に接続された画像処理ユニット２２とを有する。また，ＣＰＵバスＣＢＵＳ１には外部ＣＰＵメモリＣＰＵＭＥＭが接続され，この外部ＣＰＵメモリには，種々のパラメータや制御プログラムが格納されている。
【００１６】
また，ＣＰＵバスＣＢＵＳ１は，画像処理ユニット２２内のＣＰＵインターフェースＣＰＵＩＦを介して第２のＣＰＵバスＣＢＵＳ２に接続されている。また，画像処理ユニット２２は，種々の通信路ＮＥＴ１〜３のインターフェースＩＦ１〜３と，入力データの転送制御を行うパス制御部２４と，解凍処理を行う解凍ユニット群２６と，ラスタ方向の画像再生データを印刷ヘッドのパス毎に分解するパス分解処理部３２と、パス毎に分解された画像再生データを印刷ヘッドのノズル順に順番を入れ替えるノズル順変換処理部３４とが、それぞれ専用のハードウエアブロックとして設けられる。また，色変換及び二値化処理部１２は、解凍ユニット群２６やパス分解処理部３２，ノズル順変換処理部３４のようなコントローラ２０内の専用ハードウエアではなく，外付けの専用プロセッサにより構成され、色変換及び二値化処理をプログラムにより実現し，それらの処理の変更に容易に対応できるようにしている。
【００１７】
更に，画像処理ユニット２２は，前述のパス制御部２４，解凍ユニット群２６，パス分解処理部３２，ノズル順変換処理部３４を接続するローカルバスＬＢＵＳを有し，このローカルバスＬＢＵＳには外部メモリコントローラ２８を介して外部の大容量メモリＥ−ＭＥＭが接続される。外部メモリコントローラ２８と外部メモリＥ−ＭＥＭとは，メモリバスＭＢＵＳを介して接続される。そして，外部の大容量メモリＥ−ＭＥＭは，入力される画像形成データを一時的に格納し，各処理後のデータを一時的に格納する複数のバッファ領域を有する。また，ローカルバスＬＢＵＳが二値化インターフェースユニット３０に接続され，二値化バスＨＴＢＵＳを介して色変換及び二値化処理部１２に接続される。また，ローカルバスＬＢＵＳは，ヘッドインターフェースユニット３６を介して印刷ヘッド１０に接続される。
【００１８】
ＣＰＵバスＣＢＵＳ１，ＣＢＵ２は，コマンド解釈などに利用されるのに対して，ローカルバスＬＢＵＳは大量の画像データの転送に利用されるので，ＣＰＵバスに比較すると大容量のバス（ローカルバスは１２８ビット，ＣＰＵバスは３２ビット）に形成されている。
【００１９】
画像処理ユニット２２内の専用処理ユニットらは，ＣＰＵと，第１のＣＰＵバスＣＢＵＳ１及び第２のＣＰＵバスＣＢＵＳ２を介してその動作を制御される。例えば，ＣＰＵが，各処理ユニットの動作開始レジスタに動作開始フラグを書き込むことで各専用処理ユニットは対応する処理を実行し，ＣＰＵは，各処理ユニットの処理終了時に動作終了割り込み信号を受信してその動作終了を検知する。
【００２０】
インクジェットの大判プリンタは、印刷業などで広く利用されているが、本実施の形態では，３種類の入力フォーマットを受信可能である。第１に，ＲＧＢ画像データをＪＰＥＧ形式で圧縮したＪＰＥＧ圧縮データと，第２に，印刷ヘッド１０のノズルに対応してＣ（シアン），Ｍ（マゼンタ），Ｙ（イエロー），Ｋ（ブラック），lc（ライトシアン），lm（ライトマゼンタ），lk（ライトブラック），llk（第２ライトブラック）の８色のカ
ラーデータであり二値化済みデータ（各色２ビット）からなるランレングス圧縮データ、第３に，ＣＭＹＫ各８ビットの画像データを前ラスタと比較してその差分をとるＲＨＶ２方式の圧縮データである。
【００２１】
第１のＪＰＥＧ圧縮データの場合は，ホストコンピュータ側で元の画像データがＪＰＥＧ圧縮され，その圧縮データが通信線ＮＥＴ１〜ＮＥＴ３を介してコントローラ２０に入力される。圧縮率が高いので通信データ量を小さくすることができ，ホストコンピュータとプリンタ間の通信時間を短くすることができる。但し，プリンタ側では，受信したＪＰＥＧ圧縮データを解凍してＲＧＢ画像データを再生し，その再生したＲＧＢ画像データを，色変換，二値化処理，ヘッドのノズルに対応させる変換処理（パス分解処理とノズル順変換処理）を行う必要がある。
【００２２】
第２のランレングス圧縮データ場合は，ホストコンピュータ側で色変換と二値化処理が行われているので，プリンタ側では解凍処理して，ヘッドデータへの変換処理の後，印刷ヘッド１０に画像再生信号３８として出力すればよく，プリンタ側での処理が簡略化される。
【００２３】
そして，第３のＲＨＶ２圧縮データは，ホストコンピュータ側で色変換処理が行われているので，プリンタ側では，解凍処理して，二値化処理とヘッドのノズルに対応させる変換処理を行う必要がある。
【００２４】
このように入力されたデータには、それぞれの圧縮形式に対応する解凍（復号化）処理と、必要に応じた色変換と二値化処理、それにヘッドデータへの変換処理，つまりドット毎の二値化データをパス毎に分解するパス分解処理、パス毎に分解されたラスタ方向に並べられたデータをヘッドのノズル順に並び替えるノズル順変換処理とが施される。
【００２５】
次に，入力される画像形成データに対応してデータの流れと処理について説明する。入力される画像形成データは、パケットの形態で種々の通信路ＮＥＴ１〜３を介して入力され，それぞれの入力インターフェースＩＦ１〜３は、パケットを元のデータ列に再構成するなどの処理を行い、送信前の元のデータに戻す。そして、この入力データは，パス制御部２４内のＦＩＦＯメモリで構成される第１の入力バッファＩ−ＢＵＦ１に格納されながら、ローカルバスＬＢＵＳを介して、外部の大容量メモリＥ−ＭＥＭの入力バッファＩ−ＢＵＦ３に格納される。この外部メモリＥ−ＭＥＭは，例えば，ダブルレートのシンクロナスＤＲＡＭであり，大容量且つ高速メモリである。また，外部メモリＥ−ＭＥＭへのアクセスは、メモリコントローラユニットＥ−ＭＣとメモリバスＭＢＵＳを経由して行われる。
【００２６】
そして、外部メモリＥ−ＭＥＭに格納された入力データのうち、先頭の部分が再度ローカルバスＬＢＵＳを介して、パス制御部２４内の第２の入力バッファＩ−ＢＵＦ２に格納される。つまり、入力データが全て外部メモリＥ−ＭＥＭに格納されると共に、その先頭の一部のみがパス制御部２４内の第２の入力バッファＩ−ＢＵＦ２に格納されて停止する。第１及び第２の入力バッファＩ−ＢＵＦ１，２は，ＦＩＦＯバッファであり，図示しないＦＩＦＯコントローラにより制御される。
【００２７】
そこで、ＣＰＵは、ＣＰＵバスＣＢＵＳ１，２を介して第２の入力バッファＩ−ＢＵＦ２にアクセスして、入力データの先頭部分のコマンドを解析する。入力データのコマンドには、圧縮形式を特定する圧縮形式情報を含む。またコマンドには，上記ＪＰＥＧ圧縮フォーマットとＲＨＶ圧縮フォーマットの場合は、データ量（何バイトか）が記述され、その後に続くデータ量を認識することができる。また，上記ランレングス圧縮フォーマットの場合は、コマンドにはデータ量の記載はない
ＣＰＵは、コマンドを解析してフォーマットの種類（圧縮形式情報）とデータ量を認識すると、外部メモリＥ−ＭＥＭの第３の入力バッファＩ−ＢＵＦ３内に格納した入力データを，次々に第２の入力バッファＩ−ＢＵＦ２に転送し、そこから解凍ユニット群２６内のフォーマットの種類に対応する解凍ユニットＪＰＥＧＵ，ＲＬＥＵ，ＲＨＶＵにデータを転送させる。このデータ転送は、ローカルバスＬＢＵＳを経由せず、第２の入力バッファＩ−ＢＵＦ２から専用線で行われる。
【００２８】
ＪＰＥＧフォーマットの場合は、対応する解凍ユニットＪＰＥＧＵで解凍（復号化）され、解凍済みの再生画像データが外部メモリＥ−ＭＥＭのＲＧＢバッファＲＧＢ−ＢＵＦに格納される。この再生画像データは，所定の解像度の画素に対応するそれぞれ８ビットまたは１６ビットのＲＧＢ階調データである。このＲＧＢバッファに格納されたＲＧＢの再生画像データは、二値化インターフェースユニット３０を経由して色変換＆二値化処理部１２に転送され、そこで色変換処理されてプリンタのインクの色空間ＣＭＹＫの画像データに変換され，更に，印刷ヘッド１０のノズルによるインク吐出データ（２ビット）に二値化処理がされ、外部メモリＥ−ＭＥＭのプレーンバッファＰＬ−ＢＵＦに格納される。２ビットのインク吐出データは，前述の８色のインクそれぞれに対して大きなドット印刷用の吐出の有無と，小さなドット印刷用の吐出の有無を示すものであり，二値化データである。また，上記の二値化処理部１２では，解凍済みの再生画像データの解像度をより高い解像度に変換する解像度変換を必要に応じて行う。その結果，二値化処理により，プリンタヘッドにより印刷される画素密度の解像度でドットの吐出有無を示す二値化データとなる。
【００２９】
プレーンバッファＰＬ−ＢＵＦに格納されたＣＭＹＫの二値化データは、パス分解処理３２でヘッド１０のパス毎の二値化データに分解されて，外部メモリＥ−ＭＥＭ内のパスバッファＭＷ−ＢＵＦに格納される。そして，パス毎に分解された二値化データは，ノズル順変換処理部３４でヘッドのノズル順に並び替えられ，そのノズル順二値化データが外部メモリＥ−ＭＥＭ内のヘッドバッファＨＤ−ＢＵＦに格納される。最後に，ノズル順に並び替えられたノズル順二値化データが、ヘッドコントロールユニット３６を経由して、画像再生データ３８としてプリンタヘッド１０に転送される。
【００３０】
入力される画像形成データがランレングス圧縮フォーマットの場合は、ホストコンピュータ側で色変換処理と二値化処理済みの８色の二値化データを圧縮したものである。したがって，入力される画像形成データは、第２の入力バッファＩ−ＢＵＦ２から専用線でランレングス解凍ユニットＲＬＥＵに転送され，そこで解凍され、外部メモリＥ−ＭＥＭのプレーンバッファＰＬ−ＢＵＦに格納される。その後の処理は、ＪＰＥＧ圧縮フォーマットと同じである。
【００３１】
ＲＨＶ圧縮フォーマットの場合は、ホストコンピュータ側でＲＧＢデータからＣＭＹＫデータに色変換され，そのＣＭＹＫ４色の画像データをＲＨＶ圧縮される。そこで，入力される画像形成データは，第２の入力バッファＩ−ＢＵＦ２から専用線でＲＨＶ解凍ユニットＲＨＶＵに転送され，そこで解凍処理され、ＣＭＹＫの画像データとして外部メモリＥ−ＭＥＭのＲＧＢバッファＲＧＢ−ＢＵＦに格納さる。その後、そのＣＭＹＫ画像データが二値化処理部１２に転送され、そこで二値化処理されて前述の８色の二値化データが生成される。そして，この８色の二値化データは、外部メモリＥ−ＭＥＭのプレーンバッファＰＬ−ＢＵＦに格納される。その後は、ＪＰＥＧ圧縮フォーマットの場合と同じである。
【００３２】
上記のとおり，異なる圧縮フォーマットの入力データは，第１の入力バッファＩ−ＢＵＦ１，外部メモリＥ−ＭＥＭ内の第３の入力バッファＩ−ＢＵＦ３，そして第２の入力バッファＩ−ＢＵＦ２に転送され格納される。そして，第２の入力バッファＩ−ＢＵＦ２に格納された入力データの先頭に位置するコマンドがＣＰＵにより解析され，その圧縮形式情報が検出される。さらに，ＣＰＵは，圧縮データを，検出した圧縮形式情報に対応する解凍ユニットＪＰＥＧＵ，ＲＬＥＵ，ＲＨＶＵに第２の入力バッファＩ−ＢＵＦ２から専用線を介して転送する。それぞれの解凍ユニットで解凍された後は，必要に応じて，色変換と二値化処理が同処理部１２で，パス分割処理が同処理部３２で，ノズル順変換処理が同処理部３４でそれぞれ行われ，プリンタヘッド１０に出力すべき二値化データがヘッドバッファＨＤ−ＢＵＦに格納される。このヘッドのノズル順に並び替えられた二値化データが画像再生信号３８としてプリンタヘッド１０に送信される。
【００３３】
図２は，ＪＰＥＧ圧縮フォーマットの場合における画像形成データの構成を示す図である。ホストコンピュータ側から送信される画像形成データ５０は，圧縮形式情報ＦＭＴと元の画像データのビット数に関する第１ビット数情報Ｄ８／１６とを有するコマンド５２と，ＪＰＥＧ圧縮された画像データ５４とで構成される。このコマンド５２がＣＰＵにより解析され，圧縮形式が検出され，元の画像データであるＲＧＢデータがそれぞれ８ビットの階調データか１６ビットの階調データかも検出される。更に，圧縮画像データ５４は，ＪＰＥＧマーカ５４Ａと圧縮データ５４Ｂとで構成され，ＪＰＥＧマーカ５４Ａには，直流成分のビット数の拡張を含むか否かの情報ＤＣ８／１６が含まれる。つまり，ビット数が拡張されていない場合は，直流成分は８ビットで構成され，ビット数が拡張されている場合は，直流成分は１６ビットで構成される。したがって，ＪＰＥＧ解凍ユニットＪＰＥＧＵは，このＪＰＥＧマーカ５４Ａを解析して，直流成分の有効ビット数を検出する。
【００３４】
図３は，ＪＰＥＧ圧縮フォーマットの場合におけるホストコンピュータとプリンタでの処理の流れを示す図である。ホストコンピュータＰＣに格納されている元の画像データ６０は，それぞれ８ビットのＲＧＢ画像データまたはそれぞれ１６ビット（または８ビットより多いビット数）のＲＧＢデータである。したがって，１６ビットのＲＧＢデータのほうが階調解像度がより高く高画質である。かかる元の画像データ６０が，ホストコンピュータＰＣのプリンタドライバプログラムによりＪＰＥＧ圧縮される（Ｓ６２）。ＪＰＥＧ圧縮処理に際して，元の画像データのビット数に関する第１ビット数情報Ｄ８／１６がＪＰＥＧ圧縮された画像形成データのコマンド５２内に格納される（Ｓ６４）。また，ＪＰＥＧ圧縮のディスクリートコサイン変換により生成される直流成分の有効ビット数に関する第２ビット数情報ＤＣ８／１６が，ＪＰＥＧ圧縮データのマーカ５４Ａに格納される。
【００３５】
図４は，上記のプリンタドライバによるＪＰＥＧ圧縮処理を示すフローチャート図である。ドライバプログラムは，元の画像データの印刷要求に応答して，その元の画像データ６０を解析し（Ｓ８０），ＲＧＢデータがそれぞれ８ビットか１６ビット（または８ビットより多いビット数）かを検出し（Ｓ８２），それぞれ検出したビット数を第１ビット数情報Ｄ８／１６として設定する（Ｓ８４，Ｓ８６）。更に，ドライバプログラムは，高画質印刷要求か否かに応じてディスクリートコサイン変換後の直流成分のビット数を８ビットか１６ビットかに設定する（Ｓ８８，Ｓ９０，Ｓ９２）。そして，第１及び第２ビット数情報に対応して，ＪＰＥＧ圧縮処理を行う（Ｓ９４）。
【００３６】
ＪＰＥＧ処理は，ディスクリートコサイン変換処理により画像データの直流成分と交流成分とを生成する。この時，第２ビット数情報ＤＣ８／１６が８ビットの場合は，画像の特徴部分をより多く含む直流成分は８ビットで生成され，第２ビット数情報が１６ビットの場合は，直流成分は１６ビットに生成される。直流成分は，画像の特徴をより多く含んでいるので，この成分を１６ビットに拡張することで，圧縮率の低下を回避しつつ解凍後の画像を高画質にすることができる。交流成分は，画像の特徴部分をそれほど含んでいないので，第２ビット数情報にかかわらず８ビットで生成される。また，ＪＰＥＧ処理は，直流成分と交流成分に対しする量子化処理と，量子化されたデータをハフマン符号化する符号化処理とを含む。
【００３７】
そして，ドライバプログラムは，第１ビット数情報Ｄ８／１６と圧縮形式情報ＦＭＴとを有するコマンド５２を生成する（Ｓ９６）と共に，第２ビット数情報ＤＣ８／１６を含むマーカと圧縮データを有する圧縮データ５４を生成する（Ｓ９８）。その結果，画像形成データ５０が生成される。その後，ドライバプログラムは，画像形成データ５０を所定の通信路を介してプリンタに送信する。
【００３８】
図３に戻り，ホストコンピュータから画像形成データ５０がプリンタに送信される（Ｓ６６）。プリンタでは，前述したとおり，第１入力バッファＩ−ＢＵＦ１，外部メモリＥ−ＭＥＭ，第２入力バッファＩ−ＢＵＦ２に入力画像形成データが格納され，第２入力バッファＩ−ＢＵＦ２に格納されているコマンドが，ＣＰＵにより読み出され解析される（Ｓ６８）。ＪＰＥＧ圧縮された画像形成データの場合は，ここでＣＰＵによりＪＰＥＧ圧縮フォーマットであることが検出され，圧縮データ５４がＪＰＥＧ解凍ユニットＪＰＥＧＵに転送され，そこで解凍処理される（Ｓ７０）。
【００３９】
図５は，ＪＰＥＧ解凍ユニットの構成とそれが生成する再生画像データを示す図である。ＪＰＥＧ解凍ユニットＪＰＥＧＵは，専用ハードウエアで構成され，ＪＰＥＧ復号器４０とデータセレクタ４２とを有し，更に，ＪＰＥＧ復号器４０は，ハフマン復号器４４と，逆量子化器４６と，逆ディスクリートコサイン変換器（逆ＤＣＴ）４８とで構成され，画像形成データ５０を復号化して有効ビット数１６ビットのＲＧＢ画像データを再生画像データ６０Ａとして生成する。逆ＤＣＴ４８には，ＪＰＥＧマーカ５４Ａに格納された第２のビット数情報ＤＣ８／１６が与えられ，この第２のビット数情報にしたがって直流成分と交流成分を逆ＤＣＴ変換する。その結果，１６ビットのＲＧＢ再生画像データ６０Ａが生成される。ＤＣＴ変換は，非可逆的変換であるので，再生画像データ６０Ａは必ずしも元の画像データ６０と同一ではないが，１６ビットのＲＧＢデータである。
【００４０】
ＪＰＥＧ解凍ユニットのデータセレクタ４２には，第１のビット数情報Ｄ８／１６が与えられ，元の画像データの有効ビット数（８ビットまたは１６ビット）に対応して，ＪＰＥＧ復号器４０が生成した１６ビットの再生画像データ６０Ａの有効部分をセレクトして，１２８ビットのローカルバスＬＢＵＳにその有効な再生画像データ６０Ａを出力し，外部メモリ制御部Ｅ−ＭＣを介して外部メモリのＲＧＢバッファＲＧＢ−ＢＵＦに格納する。つまり，図５に示されるように，第１のビット数情報Ｄ８／１６が８ビットの場合は，ローカルバスＬＢＵＳには８ビットのＲＧＢデータが送出され，第１のビット数情報Ｓ８／１６が１６ビットの場合は，ローカルバスＬＢＵＳには１６ビットのＲＧＢデータが送出される。
【００４１】
このように，ＪＰＥＧ解凍ユニットは，第２のビット数情報ＤＣ８／１６にしたがって逆ＤＣＴ処理を行い，第１のビット数情報Ｄ８／１６にしたがって選択したビットからなる再生画像データをローカルバスＬＢＵＳに出力する。
【００４２】
図３に戻り，プリンタのコントローラ２０は，外部メモリ内のＲＧＢバッファＲＧＢ−ＢＵＦの再生画像データを，二値化インターフェースユニット３０と二値化バスＨＴＢＵＳとを介して色変換及び二値化処理部１２に転送する。色変換及び二値化処理部１２は，そのファームウエアを実行して，再生画像データに対しＲＧＢからＣＭＹＫへの色変換処理を行うと共に，８色のインクの吐出有無に対応する二値化データを生成する二値化処理を実行する。このとき，色変換及び二値化処理部１２には，ＲＧＢデータの有効ビット数を示す第１のビット数情報Ｄ８／１６が与えられる。この情報にしたがって，専用プロセッサである処理部１２は，８ビットのＲＧＢデータまたは１６ビットのＲＧＢデータに対する色変換と二値化処理とを行う。二値化されたデータは，外部メモリのプレーンバッファＰＬＢＵＦに格納される。色変換及び二値化処理部１２は，専用プロセッサで構成され，８ビットのＲＧＢデータに対する処理プログラムと，１６ビットのＲＧＢデータに対する処理プログラムとがファームウエアとしてメモリに格納されている。したがって，与えられる第１のビット数情報Ｄ８／１６に応じて，対応する処理プログラムが実行される。
【００４３】
更にプリンタのコントローラ２０は，二値化されたデータを，パス分解処理部３２とノズル順変換処理部３４とによりヘッドデータに変換する（Ｓ７４）。そして，変換されたヘッドデータを画像再生信号３８としてプリンタヘッド１０に出力する（Ｓ７６）。
【００４４】
図６は，プレーンバッファ内のラスタ方向の二値化データをヘッドデータに変換する処理を説明する図である。プレーンバッファＰＬ−ＢＵＦ内の二値化データ１００は，印刷媒体の行Ｌ１〜Ｌ４のラスタ方向（行方向）の順に並べられている。つまり，行Ｌ１の二値化データ「Ａ１Ｂ１Ａ１Ｂ１．．．．」の後に，行Ｌ２の二値化データ「Ａ２Ｂ２Ａ２Ｂ２．．．．」が，その後に，行Ｌ３の二値化データ「Ａ３Ｂ３Ａ３Ｂ３．．．．」が，その後に，行Ｌ４の「Ａ４Ｂ４Ａ４Ｂ４．．．．」が続いている。今仮に，プリンタヘッド１０が４つのノズルからなり，４つのラスタＬ１〜Ｌ４を２回のパスＡ，Ｂで印刷するものとする。つまり，パスＡで二値化データ１００の「Ａ」が印刷され，次のパスＢで二値化データ１００の「Ｂ」が印刷されるものとする。
【００４５】
まず，パス分割処理部３２による処理により，ラスタ方向に並べられていた二値化データ１００がヘッドのパス毎のデータに分割される。つまり，パスＡの二値化データ１０２は，行Ｌ１の「Ａ１Ａ１Ａ１Ａ１．．．．」，行Ｌ２の「Ａ２Ａ２Ａ２Ａ２．．．．」，行Ｌ３，Ｌ４の「Ａ３Ａ３Ａ３Ａ３．．．．」と「Ａ４Ａ４Ａ４Ａ４．．．．」の順に並べなおされ，パスＢの二値化データ１０４も同様に並べなおされる。次に，ノズル順変換処理部３４で，各パスの二値化データ１０２，１０４が，プリンタヘッド１０のノズル１〜４の順番に並びなおされる。このノズル順変換処理は，横方向の二値化データ１０２，１０４を，ノズル１０のノズル方向の順番に並びなおすものであり，いわゆる横・縦変換処理である。その結果，パスＡの二値化データ１０２は，ノズル順変換処理によりノズル順データ１０６のように「Ａ１Ａ２Ａ３Ａ４Ａ１Ａ２Ａ３Ａ４．．．．」と並びなおされる。同様に，パスＢの二値化データ１０４は，ノズル順変換処理によりノズル順データ１０８のように「Ｂ１Ｂ２Ｂ３Ｂ４Ｂ１Ｂ２Ｂ３Ｂ４．．．．」と並びなおされる。
【００４６】
そして，プリンタヘッド１０が記録用紙上を移動する最初のパスＡにおいて，ヘッドコントロールユニット３６がノズル順データ１０６から画像再生信号３８を生成してノズル駆動信号としてプリンタヘッド１０に供給する。この画像再生信号３８は，ヘッド１０のノズル１〜４の順番に供給される。同様に，プリンタヘッド１０の次のパスＢにおいて，ノズル順データ１０８から生成された画像再生信号３８がプリンタヘッド１０に供給される。
【００４７】
以上説明したとおり，本実施の形態によれば，ＪＰＥＧ圧縮された画像形成データをホストコンピュータからプリンタに送信し，プリンタで画像処理の後に画像を形成する場合，圧縮データに元の画像データの有効ビット数を示す第１のビット数情報と，ＪＰＥＧ圧縮により生成されたＤＣＴ変換後の直流成分の有効ビット数を示す第２のビット数情報とを含ませている。それにより，プリンタのコントローラ２０は，第１のビット数情報を検出して画像処理に反映し，第２のビット数情報を検出して逆ＤＣＴ変換処理に反映することができる。それにより高画質の画像形成を可能にする。なお実施例では色変換及び二値化処理部１２を、専用のプロセッサで構成する例を挙げて説明したが、専用のプロセッサとしては、汎用プロセッサを色変換及び二値化処理専用に用いても良いし、ＤＳＰなどの画像処理専用のプロセッサを用いても良い。
【実施例】
【００４８】
上記の実施の形態に基づいて，８ビットまたは１６ビットで構成された画像データをＪＰＥＧ圧縮して画像形成データを生成する画像圧縮手段と，ＪＰＥＧ圧縮データを解凍して再生画像データを生成し，これに基づき画像形成する画像形成手段とから成る画像形成システムにおける圧縮・解凍処理についての具体例を説明する。まず，画像圧縮手段としての画像圧縮プリンタドライバにおける，ディスクリートコサイン（ＤＣＴ）によるＪＰＥＧ圧縮処理について説明する。次に，画像形成手段としての画像形成装置のＪＰＥＧ解凍ユニットにおける，解凍処理について説明する。
【００４９】
図７は，画像圧縮プリンタドライバのＪＰＥＧ圧縮処理により生成される画像形成データの構成例を示す図である。図２でも説明したとおり，画像形成データ５０は，圧縮形式情報ＦＭＴと元の画像データのビット数に関する第１ビット数情報Ｄ８／１６とを有するコマンド５２と，ＪＰＥＧ圧縮された圧縮画像データ５４とで構成される。
【００５０】
圧縮画像データ５４を構成するＪＰＥＧマーカ５４Ａには，ＤＣＴ変換により生成される直流成分及び交流成分の有効ビット数に関する成分ビット数情報ＤＡ１１／１５が含まれる。ここで，直流成分及び交流成分は，ビット拡張されていない場合は１１ビットで構成され，ビット拡張されている場合は１５ビットで構成される。また，後述するように直流成分のビット数が拡張されたときにのみ交流成分のビット数も拡張される。よって，成分ビット数情報ＤＡ１１／１５は，直流成分と交流成分がともに拡張され１５ビットで構成される場合，ともに拡張されず１１ビットである場合，または，直流成分が拡張されて１５ビットで構成され，交流成分が拡張されずに１１ビットで構成される場合のいずれかを識別する情報である。
【００５１】
また，圧縮画像データ５４を構成する圧縮された画像データ５４Ｂには，ＪＰＥＧ圧縮処理・解凍処理に用いられる量子化係数テーブルＱ−ＴＢＬとハフマンテーブルＨ−ＴＢＬ，及びハフマン符号データＨ−ＤＴが含まれる。量子化係数テーブルＱ−ＴＢＬは，ＤＣＴ変換により生成される直流成分と交流成分を量子化するための係数を収めたテーブルである。ハフマンテーブルＨ−ＴＢＬは，量子化された直流成分と交流成分をハフマン符号に置き換える場合の各成分と符号との対応付けを格納するテーブルである。ハフマン符号データＨ−ＤＴは，ハフマンテーブルＨ−ＴＢＬを参照するための一連の参照情報である。
【００５２】
後述するＪＰＥＧ解凍ユニットでは，解凍処理に際しては上記のハフマンテーブルＨ−ＴＢＬ，量子化係数テーブルＱ−ＴＢＬ，ハフマン符号データＨ−ＤＴに基づき圧縮された画像データ５４Ｂを解凍する。ＪＰＥＧマーカ５４ＡはＪＰＥＧ解凍ユニットで解析された後，これに含まれる成分ビット数情報はハーフトーニングなどの処理を行う色変換＆二値化処理部１２（図１）で参照される。
【００５３】
図８は，直流成分と交流成分のビット拡張を含む場合の画像圧縮プリンタドライバのＪＰＥＧ圧縮処理を示すフローチャート図である。ドライバプログラムは，元の画像データの印刷要求に応答して，その元の画像データ６０を解析し（Ｓ８０），ＲＧＢデータがそれぞれ８ビットか１６ビット（または８ビットより多いビット数）かを検出し（Ｓ８２），それぞれ検出したビット数を第１ビット数情報Ｄ８／１６に設定する（Ｓ８４，Ｓ８６）。この第１ビット数情報は，画像形成装置側のＪＰＥＧ解凍ユニットが解凍処理を行う際に参照する。
【００５４】
次に，ドライバプログラムは，高画質印刷要求か否かに応じて，成分ビット数情報の直流成分のビット数を１１ビットか１５ビットかに設定する（Ｓ８８０，Ｓ８９０，Ｓ８９２）。また，直流成分を１５ビットに拡張して設定した場合（Ｓ８９２），高画質印刷要求の程度に応じて，より高画質を要求されている場合には，成分ビット数情報の交流成分のビット数についても同様に１１ビットか１５ビットかに設定する（Ｓ９００，Ｓ９１０，Ｓ９１２）。
【００５５】
更に，ドライバプログラムは，成分ビット数情報に対応して，ＪＰＥＧ圧縮処理（Ｓ９２０）を行う。そして，第１ビット数情報と圧縮形式情報とを有するコマンドを生成し（Ｓ９４０），成分ビット数情報と圧縮データとを有する圧縮画像データを生成して（Ｓ９６０），ＪＰＥＧ圧縮処理を終了する。
【００５６】
図９は，プリンタドライバのＪＰＥＧ圧縮処理にともなうデータの変化と，そのビット数の変化を説明する図である。
【００５７】
まず，ホストコンピュータＰＣに格納されている元の画像データは，それぞれ８ビットまたは１６ビット（あるいは８ビットより多いビット数）のＲＧＢデータＤ５０２である。かかる元の画像データが，ＪＰＥＧ圧縮処理に際して，輝度成分（Ｙ），輝度成分と青色成分の差（Ｕ），及び輝度成分と赤色成分の差（Ｖ）で表現されるＹＵＶデータＤ５０４に変換される（Ｓ９４１）。ここで，それぞれ８ビットのＲＧＢ画像データはそれぞれ８ビットの，それぞれ１６ビットのＲＧＢ画像データはそれぞれ１６ビットのＹＵＶデータＤ５０４に変換される。
【００５８】
以下の処理は，ＹＵＶデータＤ５０４に対し，輝度成分（Ｙ），輝度成分と青色成分の差（Ｕ），及び輝度成分と赤色成分の差（Ｖ）の各成分ごとに行われる。
【００５９】
まず，８ビットまたは１６ビットのＹＵＶデータＤ５０４に対し，ＤＣＴ変換が行われ（Ｓ９４２），直流成分及び交流成分Ｄ５０６が生成される。この直流成分及び交流成分は，ＹＵＶデータＤ５０４のビット数にかかわらず，ホストコンピュータＰＣのドライバプログラムにおいては整数部分が１１ビットの浮動小数点型データとして生成される。よって，ＤＣＴ変換（Ｓ９４２）以降のＪＰＥＧ圧縮処理においては，元の画像データのビット数が８ビットか１６ビット（あるいは８ビットより多いビット数）かによらず，整数部１１ビットの浮動小数点型データである直流成分または交流成分に対し同一の処理を行うことが可能となる。
【００６０】
ＤＣＴ変換は，画像データの２次元状の画素を８画素×８画素の６４画素毎のブロックに分割し，全ての画素についてこのブロック単位に行う。１ブロック内の６４画素のＹＵＶ値をＤＣＴ変換すると，２次元状に配列された６４個のＤＣＴ係数が得られる。図１０（Ａ）は，ＤＣＴ変換の結果として得られた，６４個のＤＣＴ係数で構成されるブロックＤＢを示している。ここで，ＤＣＴ係数は，そのブロックの画像の特徴を最も多く含む低周波成分である１個の直流成分Ｄと，高周波成分である６３個の交流成分Ａ１〜Ａ６３である。
【００６１】
これらの各成分は，左から右に進むにつれて高周波の水平周波数成分をより多く含み，上から下に進むにつれて高周波の垂直周波数成分をより多く含むように配置されており，高周波成分を多く含むにつれ，その成分のＤＣＴ係数の絶対値は小さいものとなる。
【００６２】
図９に戻り，上記のようなブロック単位で生成された直流成分及び交流成分Ｄ５０６に対し，量子化係数テーブルＱ−ＴＢＬを用いて量子化（Ｓ９４４）を行い，量子化された直流成分及び交流成分Ｄ５０８を得る。量子化の結果得られるデータも整数部分が１１ビットの浮動小数点型データとして構成される。
【００６３】
量子化に用いられる量子化係数テーブルＱ−ＴＢＬは，直流成分と各交流成分に対する除数を格納したテーブルである。量子化係数テーブルＱ−ＴＢＬの各除数でブロック内の各成分のＤＣＴ係数を除し，結果値を最も近い整数部へ整数化することにより量子化が行われる。また，量子化係数テーブルＱ−ＴＢＬは，圧縮データの一部として画像形成装置に送られ，ＪＰＥＧ解凍ユニットが解凍処理を行う際に参照される。
【００６４】
図１０（Ａ）では，ブロックＤＢの各成分を量子化して得られるブロックＢＢを示しており，ブロックＢＢは，量子化された直流成分Ｄ１と，量子化された交流成分Ａ１１，Ａ２１，Ａ３１，…で構成され，もともと係数の絶対値が小さい高周波部分は「０」に整数化されることを表している。
【００６５】
図９に戻り，整数部分１１ビットの浮動小数点型データとして構成される量子化された直流成分及び交流成分Ｄ５０８に対し，ジグザグ変換，零ランレングス変換，そしてハフマン符号化を行い（Ｓ９４５），ハフマンテーブルＨ−ＴＢＬと，ハフマン符号データＨ−ＤＴを得る。
【００６６】
ジグザグ変換は，図１０（Ａ）で示すブロックＢＢの２次元状に配置された量子化された直流成分と交流成分を，直流成分Ｄ１から，直流成分Ａ１１，Ａ２１，Ａ３１，…，Ａ７１，Ａ８１，Ａ，９１，・・・，０，０，０とジグザグに読み出し，１次元のビット列ＢＳに並べ替える処理である。
【００６７】
すると，ビット列ＢＳは末尾に「０」が連続するように構成されるので，零ランレングス変換により，連続する「０」値の個数を一括して１つのハフマン符号に変換する。これにより，冗長なデータを圧縮することができる。
【００６８】
そして，ハフマン符号化では， ビット列ＢＳとして構成される量子化された直流・交流成分に対し，出現頻度に応じたビット数のハフマン符号を対応付ける。つまり，出現頻度の高い成分にはより少ないビット数を対応付けることにより，全体としてのデータ量を圧縮することができる。かかる処理の結果，ビット列ＢＳからは，一連のハフマン符号であるハフマンデータＨ−ＤＴと，ハフマン符号と量子化された直流・交流成分との対応付けを格納したハフマンテーブルＨ−ＴＢＬが生成される。 
【００６９】
こうして生成されたハフマンデータＨ−ＤＴとハフマンテーブルＨ−ＴＢＬの例を図１０（Ｂ）に示す。ハフマン符号データＨ−ＤＴを構成するハフマン符号は，ハフマンテーブルＨ−ＴＢＬを参照する参照情報ＨＣ１，ＨＣ２，ＨＣ３，…として構成され，ハフマンテーブルＨ−ＴＢＬはこれら参照情報と量子化された直流成分Ｄ１及び交流成分Ａ１１，Ａ２１，・・・との対応付けを格納する。よって，ハフマン符号データＨ−ＤとハフマンテーブルＨ−ＴＢＬは，参照データと被参照テーブルという関係になる。このハフマンテーブルＨ−ＴＢＬは，圧縮データの一部として画像形成装置に送られ，ＪＰＥＧ解凍ユニットが解凍処理を行う際に参照される。
【００７０】
図９に戻り，以上のジグザグ変換，零ランレングス変換，及びハフマン符号化を通じて，直流成分及び交流成分は整数部分が１１ビットの浮動小数点型データとして構成される。しかし，高画質印刷要求に応じて直流成分または交流成分のビット数を拡張する場合は，ハフマン符号化の段階で，小数点を４ビット分シフトして整数部分を１５ビットに拡張した浮動小数点型データとしてハフマンテーブルＨ−ＴＢＬに格納する。
【００７１】
このように，ドライバプログラムでは，ハフマンテーブルＨ−ＴＢＬに量子化された直流成分及び交流成分データを格納する時点でビット拡張を行うが，その時点まではＤＣＴ変換，量子化，ジグザグ変換などの各処理を一律に整数部１１ビットの浮動小数点型データである直流成分及び交流成分に対して行うことができる。
【００７２】
再度図９に戻り，最後にＹＵＶ各成分のハフマン符号データＨ−ＤＴ，ハフマンテーブルＨ−ＴＢＬ，及び量子化係数テーブルＱ−ＴＢＬを含む圧縮画像データ５４Ｂを生成する。
【００７３】
以上のようにして，ホストコンピュータＰＣのプリンタドライバでは８ビットまたは１６ビットの画像データを１１ビットの直流成分及び交流成分としてＪＰＥＧ圧縮し，ビット拡張の有無に応じたハフマンテーブルを有する画像形成データ５０として画像形成装置に送信する。これを受信した画像形成装置では，ＪＰＥＧ解凍ユニットにおいて解凍処理を行い，生成した再生画像データに基づき画像形成を行う。
【００７４】
図１１は，ＪＰＥＧ解凍ユニットの構成と，それが生成する解凍データ及び再生画像データのビット数を説明する図である。画像形成装置のＪＰＥＧ解凍ユニットＪＰＥＧＵは，専用ハードウェアで構成され，ＪＰＥＧヘッダ分析部Ｊ１０，記憶部ＭＥＭ，ハフマン復号化部Ｊ１２，零ランレングス復号化部Ｊ１４，逆量子化部Ｊ１６，逆ディスクリートコサイン変換（逆ＤＣＴ変換）部Ｊ１８，ＹＵＶ・ＲＧＢ変換部Ｊ２０，及びバッファメモリＦＩＦＯ１〜４を有し，それぞれがローカルバスＬＢＵＳ１で接続されている。このようなＪＰＥＧ解凍ユニットＪＰＥＧＵは，不図示のクロック発生器から与えられる基準クロックＣＬＫに従って各処理を行い，処理の結果はレジスタインターフェースＲｅｇＩ／Ｆを介して不図示の外部レジスタに適宜格納する。
【００７５】
ＪＰＥＧ解凍ユニットＪＰＥＧＵは，以上の構成により，ホストコンピュータＰＣから送られてくるＪＰＥＧ圧縮された画像形成データ５０を復号化し，有効ビット数８または１６ビットのＲＧＢ画像データを再生画像データ６０ＡとしてローカルバスＬＢＵＳ出力し，外部メモリ制御部Ｅ−ＭＣを介して外部メモリのＲＧＢバッファＲＧＢ−ＢＵＦ（図１）に格納する。
【００７６】
まず，ＪＰＥＧヘッダ解析部Ｊ１０は，画像形成データ５０のコマンド５２及びマーカ５４Ａを解析し，元の画像データのビット数に関する第１ビット数情報Ｄ８／１６，直流成分及び交流成分のビット数の拡張・非拡張に関する成分ビット数情報ＤＡ１１／１５を読み出す。更に，圧縮画像データ５４Ｂに含まれる量子化係数テーブルＱ−ＴＢＬ，ハフマンテーブルＨ−ＴＢＬを読み出して記憶部ＭＥＭに格納し，ハフマン符号データＨ−ＤＴをバッファＦＩＦＯ１に格納する。
【００７７】
次に，ハフマン復号化部Ｊ１２では，バッファＦＩＦＯ１からハフマンデータＨ−ＤＴを読み出し，記憶部ＭＥＭのハフマンテーブルＨ−ＴＢＬを参照して量子化された直流成分及び交流成分を復号する。すなわち，ハフマン符号データＨ−ＤＴのハフマンテーブルＨ−ＴＢＬに対する参照情報に基づき，参照情報と対応付けられた量子化された直流成分または交流成分をハフマンテーブルＨ−ＴＢＬから読み出して，１次元に並んだ量子化された状態の直流成分及び交流成分としてバッファＦＩＦＯ２に格納する。ただし，この時点では，連続する「０」値に量子化された交流成分は，１つのハフマン符号に変換されたままである。
【００７８】
ここで，ハフマンテーブルＨ−ＴＢＬに格納されている量子化された直流成分及び交流成分に着目すると，これら成分は，もともとプリンタドライバ側で非拡張の場合は整数部分１１ビット，拡張された場合は整数部分１５ビットの浮動小数点型データとして構成されていた。ところが，ＪＰＥＧ解凍ユニットＪＰＥＧＵでは，これら直流成分及び交流成分の整数部分を有効ビットとして処理するので，拡張された成分は有効ビット数１５ビットで，拡張されていない成分は有効ビット数１１ビットで構成されることになる。
【００７９】
したがって，ＪＰＥＧ解凍ユニットＪＰＥＧＵにおいては，ハフマンテーブルＨ−ＴＢＬに格納されたデータに従って復号を行うことにより，成分ビット数情報によることなく，自動的にビット拡張された成分は拡張されたビット数で，拡張されていない成分は拡張されていないビット数で復号することができる。
【００８０】
次に，零ランレングス復号化部Ｊ１４では，バッファＦＩＦＯ２に格納された上記のデータを読み出し，連続する「０」値を復号化し，量子化された直流成分と交流成分が連続するビット列ＢＳ（図１０（Ａ））を再生してバッファＦＩＦＯ３に格納する。
【００８１】
次に，逆量子化部Ｊ１６は，バッファＦＩＦＯ３に格納されたビット列ＢＳを逆ジグザグ変換しながら読み出して，２次元状に並び替えてブロックＢＢ（図１０（Ａ））を再生する。そして，量子化係数テーブルＱ−ＴＢＬの各係数をブロックＢＢの対応する各成分に乗算して，量子化前の直流成分及び交流成分により構成されるブロックＤＢを再生して逆ＤＣＴ変換部Ｊ１８に出力する。
【００８２】
そして，逆ＤＣＴ変換部Ｊ１８は，ブロックＤＢを構成する直流成分及び交流成分に対し逆ＤＣＴ変換を行い，８画素×８画素の６４画素のＹＵＶ値をそれぞれ１２ビットの整数で再生して，バッファＦＩＦＯ４に格納する。すると，バッファＦＩＦＯ４には，復号された６４画素毎のＹＵＶデータが格納される。このＹＵＶデータは，解凍データに該当する。
【００８３】
上述したハフマン復号化から逆量子化までの処理において，直流成分と交流成分はハフマンテーブルに格納されたデータのビット数に応じたビット数，つまり１１ビットまたは１５ビットで構成されている。しかし，逆ＤＣＴ変換の段階で，生成されるＹＵＶデータがそれぞれ有効ビット数１２ビットで構成される。
【００８４】
以上の処理を，すべてのブロックについて行い全画素のＹＵＶデータを生成した後，ＹＵＶ・ＲＧＢ変換部Ｊ２０が，バッファＦＩＦＯ４からＹＵＶデータを読み出し，ＲＧＢデータに変換してローカルバスＬＢＵＳに再生画像データ６０Ａとして出力する。ここでは，それぞれ１２ビットのＹＵＶデータをそれぞれ１２ビットのＲＧＢ画像データに変換し，その後，第１ビット数情報に基づき有効ビット数の拡縮を行う。すなわち，元の画像データがそれぞれ８ビットで構成されるＲＧＢデータである場合は，有効ビット数を４ビット分上位にシフトして８ビットのＲＧＢ画像データを出力する。あるいは，元の画像データがそれぞれ１６ビットで構成されるＲＧＢデータである場合は，有効ビット数を４ビット分拡張して，１６ビットのＲＧＢデータを出力する。
【００８５】
このように，ＪＰＥＧ解凍ユニットＪＰＥＧＵにおいては，ＪＰＥＧ解凍処理の最後の段階で逆ＤＣＴ変換により一旦１２ビットのＹＵＶデータである解凍データを生成し，そのＹＵＶデータをＲＧＢデータに変換する際に第１ビット数情報に基づき元の画像データと同じビット数で再生画像データを構成する。よって，直流成分と交流成分のビット拡張の有無によらず同一の回路構成による処理でＪＰＥＧ圧縮されたデータを解凍することが可能となる。
【００８６】
以上のとおり，本実施例の画像形成システムにおいては，プリンタドライバ側では画像データが通常のビット数（８ビット）であっても，多ビット化されたビット数（１６ビット）であっても，ＤＣＴ変換で１１ビットの直流・交流成分に変換する。これにより，同一の処理手順でＪＰＥＧ圧縮することが可能となる。更に，プリンタドライバでは元の画像データのビット数に関する情報を第１ビット数情報としてコマンドに含ませる。これにより，画像形成装置のＪＰＥＧ解凍ユニット側では，同一の回路構成による処理でＪＰＥＧ圧縮されたデータを解凍した後，ＲＧＢデータとして再生画像データを生成する段階で第１ビット数情報を参照し，元の画像データのビット数を反映できる。よって，かかる再生画像データに基づき高画質の画像形成が可能になる。
【図面の簡単な説明】
【００８７】
【図１】本実施の形態における画像形成装置の構成図である。
【図２】ＪＰＥＧ圧縮フォーマットの場合における画像形成データの構成を示す図で    ある。
【図３】ＪＰＥＧ圧縮フォーマットの場合におけるホストコンピュータとプリンタで    の処理の流れを示す図である。
【図４】プリンタドライバによるＪＰＥＧ圧縮処理を示すフローチャート図である。
【図５】ＪＰＥＧ解凍ユニットの構成とそれが生成する再生画像データを示す図であ    る。
【図６】ヘッドデータに変換する処理を説明する図である。
【図７】画像圧縮プリンタドライバのＪＰＥＧ圧縮処理により生成される画像形成データの構成例を示す図である。
【図８】直流成分と交流成分のビット拡張を含む場合の画像圧縮プリンタドライバのＪＰＥＧ圧縮処理を示すフローチャート図である。
【図９】プリンタドライバのＪＰＥＧ圧縮処理にともなうデータの変化と，そのビット数の変化を説明する図である。
【図１０】ＪＰＥＧ圧縮処理の過程で生成される各種データの構成を説明する図である。
【図１１】ＪＰＥＧ解凍ユニットの構成と，それが生成する解凍データ及び再生画像データのビット数を説明する図である。
【符号の説明】
【００８８】
５０：画像形成データ    ５２：コマンド    ５４：圧縮データ
５４Ａ：ＪＰＥＧマーカ    ５４Ｂ：圧縮画像データ
ＦＭＴ：圧縮形式情報      Ｄ８／１６：第１のビット数情報
ＤＣ８／１６：第２のビット数情報
【図１】
2006217578.tif 000003
【図２】
2006217578.tif 000004
【図３】
2006217578.tif 000005
【図４】
2006217578.tif 000006
【図５】
2006217578.tif 000007
【図６】
2006217578.tif 000008
【図７】
2006217578.tif 000009
【図８】
2006217578.tif 000010
【図９】
2006217578.tif 000011
【図１０】
2006217578.tif 000012
【図１１】
2006217578.tif 000013