(57)【特許請求の範囲】
【請求項１】
入力画像の画素データを解像度変換符号化して記憶手段に格納し、当該記憶手段に格納された画素データを読み出して解像度変換復号化した後に画素補間処理を行う画像処理装置であって、
前記入力画像の画素データを解像度変換符号化する際に、当該画素データの属性を示す属性情報に基づいて前記画素補間処理により当該画素データの解像度が低下するか否かを判定する判定手段と、
前記判定手段によって前記画素データの解像度が低下すると判定された場合、前記解像度変換符号化にて当該画素データの解像度を低下させるように処理する処理手段と、
を有することを特徴とする画像処理装置。
【請求項２】
前記判定手段は前記属性情報がラインの属性と白画素でない文字の属性とを示す場合に前記画素補間処理により前記画素データの解像度が低下すると判定することを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記画素データは、２×２画素サイズのブロックを単位とすることを特徴とする請求項１又は２記載の画像処理装置。
【請求項４】
入力画像の画素データを解像度変換符号化して記憶手段に格納し、当該記憶手段に格納された画素データを読み出して解像度変換復号化した後に画素補間処理を行う画像処理装置の処理方法であって、
判定手段が、前記入力画像の画素データを解像度変換符号化する際に、当該画素データの属性を示す属性情報に基づいて前記画素補間処理により当該画素データの解像度が低下するか否かを判定する判定工程と、
処理手段が、前記判定工程において前記画素データの解像度が低下すると判定された場合、前記解像度変換符号化にて当該画素データの解像度を低下させるように処理する処理工程と、
を有することを特徴とする画像処理装置の処理方法。
【請求項５】
コンピュータを請求項１乃至３の何れか１項に記載の画像処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及びその処理方法に関する。
【背景技術】
【０００２】
近年、高解像度のカラー画像への需要は高く、それらの高画質化への要望へ応えるべくデジタル複合機では１２００ｄｐｉ（dots per inch）や、それを超える解像度の画像を扱うようになってきた。デジタル複合機などの画像処理装置では、装置が扱う画像データを内部的にスプールする際に、符号化圧縮を行うことで、メモリやハードディスク容量の節約やそれらに対する書き込み時間を短縮し、低コスト化や高速化を実現している。
【０００３】
ここで、画像処理装置が扱う静止画像データの圧縮方式には、離散コサイン変換を利用したＪＰＥＧ方式やウェーブレット変換を利用した方式が多く使用されている。これらの符号化方式は、画像を所定のブロック単位（例えば、８×８や１６×１６画素）に符号化し、離散コサイン変換、量子化、及びエントロピー符号化を行うことで、高い圧縮効率を得てきた。
【０００４】
また、特許文献１には、画像をより小さいブロック単位領域（例えば、２×２画素）に分割し、ブロックを構成する画素の代表色と補間代表色を決定し、解像度を変換して圧縮率固定の符号化を行う画像符号化装置が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−１０４６２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、解像度変換した符号化圧縮データを復号化後に画像処理を行う画像処理装置では、以下に示す圧縮効率が低下するという問題がある。
【０００７】
画像処理装置では、プリント処理時に、符号化圧縮してスプールした画像データを復号化した後、色変換、フィルタ処理、ディザリングなどの擬似階調処理、及びスムージング処理を施し、画像形成を行っている。例えば、スムージング処理では、テキストやラインのエッジ端部に対して画素補間処理により輪郭強調を行うが、この画素補間処理により、符号化圧縮を行うブロック単位領域内の画素が太ることで解像度が低下する場合がある。即ち、解像度変換符号化時には高解像度と判定し、低い圧縮率としたブロックを構成する画素が、スムージング処理により太って低解像度となる結果、解像度変換符号化時の高解像度判定が無駄となる場合がある。
【０００８】
本発明は、解像度変換符号化時に、後段の画像処理で行われる画素補間により低解像度となるか否かを判定することで、圧縮効率を高めることが可能な画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明は、入力画像の画素データを解像度変換符号化して記憶手段に格納し、当該記憶手段に格納された画素データを読み出して解像度変換復号化した後に画素補間処理を行う画像処理装置であって、
前記入力画像の画素データを解像度変換符号化する際に、当該画素データの属性を示す属性情報に基づいて前記画素補間処理により当該画素データの解像度が低下するか否かを判定する判定手段と、
前記判定手段によって前記画素データの解像度が低下すると判定された場合、前記解像度変換符号化にて当該画素データの解像度を低下させるように処理する処理手段と、
を有することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、解像度変換を用いた符号化圧縮処理時に、所定のブロック単位領域が後段の画像処理で画素補間されるか否かを判定することが可能となる。符号化圧縮処理時には高解像度だが、符号化処理の後段の画素補間処理により低解像度となるブロック単位領域に対して高解像度判定を回避し、低解像度判定とすることが可能となる。この結果、符号化圧縮効率を高めることが可能となる。
【図面の簡単な説明】
【００１１】
【図１】本実施形態による画像処理システムの全体構成を示すブロック図。
【図２】画像データを符号化する処理を示すフローチャート。
【図３】画像データをプリント出力する処理を示すフローチャート。
【図４】中間画像データを構成する画素のデータ形式を模式的に示す図。
【図５】画像処理部１１８の詳細な構成を示すブロック図。
【図６】各画像処理ブロックの内部構成を示す図。
【図７】画像処理ブロック５０６における画像処理実行部６０３の構成を示す図。
【図８】画素補間判定処理を示すフローチャート。
【図９】解像度変換符号化処理を説明するための図。
【図１０】解像度変換符号化部１１９の構成を示すブロック図。
【図１１】画素補間判定部１００３の構成を示すブロック図。
【図１２】解像度変換符号化処理を示すフローチャート。
【図１３】解像度変換復号化処理を示すフローチャート。
【発明を実施するための形態】
【００１２】
以下、図面を参照しながら発明を実施するための形態について詳細に説明する。
【００１３】
図１は、本実施形態による画像処理システムの全体構成を示すブロック図である。図１に示すように、画像処理システムは、ホストコンピュータ１０１と、画像処理装置１０２とから構成される。
【００１４】
ホストコンピュータ１０１は、パーソナルコンピュータ（ＰＣ）やワークステーション（ＷＳ）などのコンピュータであり、これらのコンピュータ上で作成された画像や文書はＰＤＬデータとして画像処理装置１０２に入力される。
【００１５】
画像処理装置１０２は、ホストコンピュータ１０１から出力されたデータを受信する。即ち、画像処理装置１０２とホストコンピュータ１０１との間でデータ通信可能なネットワークが形成されていることを意味するが、このネットワークの構成については特に限定するものではない。
【００１６】
画像処理装置１０２は、ホストコンピュータ１０１から受信したデータに基づいて各種の画像処理を施し、画像処理済みのデータをプリントエンジン部１２２へ出力する。尚、画像処理装置１０２が行う処理の詳細については後述する。
【００１７】
一方、プリントエンジン部１２２は、画像処理装置１０２から出力された画像処理済みのデータに基づいて、紙などの記憶媒体上に印刷処理を行う。尚、本実施形態では、画像処理装置１０２に対してデータを出力するのはホストコンピュータ１０１として説明するが、これ以外の装置でも良い。例えば、スキャナ入力部（不図示）から出力されたデータを画像処理装置１０２に入力するようにしても良い。
【００１８】
次に、画像処理装置１０２の詳細な構成について説明する。この画像処理装置１０２には、ホストＩ／Ｆ部１１１、ＰＤＬ処理部１１２、ＣＰＵ１１３、ＲＡＭ１１４、ＲＯＭ１１５、記憶装置制御部１１６が含まれる。更に、画像処理装置１０２にはエンジンＩ／Ｆ部１１７、画像処理部１１８、解像度変換符号化部１１９、解像度変換復号化部１２０、記憶装置１２１、プリントエンジン部１２２が含まれる。
【００１９】
ホストＩ／Ｆ部１１１は、ホストコンピュータ１０１から出力されたＰＤＬデータを受信するためのインタフェースとして機能する。尚、ホストＩ／Ｆ部１１１は画像処理装置１０２とホストコンピュータ１０１とを繋ぐネットワークに応じて異なり、例えばイーサネット（登録商標）やシリアルインターフェースなどで構成される。
【００２０】
ＰＤＬ処理部１１２は、ホストＩ／Ｆ部１１１が受信したＰＤＬデータを展開する処理を行う。ＣＰＵ１１３は、ＲＡＭ１１４やＲＯＭ１１５に格納されているプログラムやデータを用いて画像処理装置１０２全体の制御を行うと共に、後述する画像処理装置１０２が行う各処理を実行する。
【００２１】
ＲＡＭ１１４は、ホストＩ／Ｆ部１１１を介してホストコンピュータ１０１から受信したデータを一時的に記憶するためのエリアを備える。また、ＲＡＭ１１４はＣＰＵ１１３が各種処理を実行する際に用いるワークエリアを備える。
【００２２】
ＲＯＭ１１５は、ＣＰＵ１１３が画像処理装置１０２全体を制御する際に実行するプログラムやデータや画像処理装置１０２の設定データなどが格納されている。記憶装置制御部１１６は、画像処理装置１０２が扱う画像データを記憶装置１２１に記録する際の制御を行う。エンジンＩ／Ｆ部１１７は、画像処理装置１０２による画像処理済みのデータをプリントエンジン部１２２に出力するための一連の処理を行う。
【００２３】
画像処理部１１８は、ホストコンピュータ１０１から出力されたデータからなる画像に対する画像処理を行い、特に本発明に係るスムージングなどの画素補間処理の画像処理部を含む。尚、この画像処理部１１８の詳細については後述する。
【００２４】
解像度変換符号化部１１９は、ＰＤＬ処理部１１２において展開された画像に対して、所定のブロック単位領域毎に解像度変換処理を行い、入力画像よりも低い解像度画像と、解像度変換情報を符号化した補間データとを生成する。
【００２５】
解像度変換復号化部１２０は、解像度変換符号化部１１９で生成された低解像度画像と補間データとを復号化し、符号化前の画像を生成する。尚、解像度変換符号化部１１９、及び解像度変換復号化部１２０の処理詳細については後述する。
【００２６】
記憶装置１２１は、ハードディスクなどの大容量記憶媒体であり、画像処理装置１０２がホストコンピュータ１０１から受信した画像データや処理時に生成する中間画像データを記憶する。
【００２７】
上述の各部は、画像処理装置１０２の内部バス１３１によって互いに接続される。各部間のデータ転送は、各部と内部バス１３１との間に設けられたＤＭＡＣ（Direct Memorry Access Controller）からなる不図示のデータ転送部を用いて行う。
【００２８】
次に、ホストコンピュータ１０１から画像処理装置１０２にデータを出力した場合に、画像処理装置１０２が行う処理を、図２のフローチャートを用いて説明する。この処理は、ホストＩ／Ｆ部１１１を介してホストコンピュータ１０１から出力されたＰＤＬデータの受信をＣＰＵ１１３が検知することで開始される。
【００２９】
Ｓ２０１において、ＣＰＵ１１３は、受信したＰＤＬデータを一時的にＲＡＭ１１４に格納する。次に、Ｓ２０２において、ＣＰＵ１１３は、格納したＰＤＬデータをディスプレイリスト（ＤＬ）に展開した後、Ｓ２０３において一時的にＲＡＭ１１４に格納する。尚、Ｓ２０２では、ＰＤＬデータが有する画像情報とそれに対応する属性情報を生成し、ＤＬに格納する。ここで、生成する属性情報としては、ＰＤＬ入力の文字、ＰＤＬ入力のライン、及びＰＤＬ入力の写真などを示す情報である。
【００３０】
次に、Ｓ２０４において、ＰＤＬ処理部１１２が、格納されたＤＬに基づいて画像展開処理を行い、中間画像データを生成する。中間画像データには、ＤＬが有する画像情報とそれに対応する属性情報とが、画素単位で対応付けされた状態で格納される。そして、Ｓ２０５において、この中間画像データは、解像度変換符号化部１１９において、低解像度画像データと補間データとに変換される。これら低解像度画像データと補間データとは、Ｓ２０６において、記憶装置制御部１１６を介して記憶装置１２１へ出力される。ここで、低解像度画像データと補間データとの出力は、記憶装置制御部１１６が有する不図示のデータ転送部が行うものとする。そして、ホストコンピュータ１０１から送信された画像データに応じて１ページ以上の低解像度画像データと補間データとして、記憶装置１２１に保存される。
【００３１】
次に、記憶装置１２１に保存された低解像度画像データと補間データとを読み出し、プリントエンジン部１２２に出力してプリントを行う処理を、図３のフローチャートを用いて説明する。この処理は、ＣＰＵ１１３が記憶装置制御部１１６への低解像度画像データと補間データとのスプール処理に係る終了通知を受信後に、プリント開始命令を解像度変換復号化部１２０に指示することで、開始される。
【００３２】
Ｓ３０１において、ＣＰＵ１１３は、画像処理部１１８に対して設定を行う。具体的には、画像処理部１１８が有する不図示の画像処理モジュールの各レジスタに対して必要なパラメータを書き込む。
【００３３】
次に、Ｓ３０２において、ＣＰＵ１１３は、記憶装置１２１に保存されている低解像度画像データと補間データとをＲＡＭ１１４から解像度変換復号化部１２０へ読み出すよう指示する。解像度変換復号化部１２０では、内部に有する不図示のデータ転送部が復号化された中間画像データをＲＡＭ１１４へ出力する。そして、Ｓ３０３において、画像処理部１１８は、内部に有する不図示のデータ転送部がＲＡＭ１１４から読み出した中間画像データに対してプリント出力用の画像処理を行い、プリントデータに変換する。
【００３４】
次に、Ｓ３０４において、変換されたプリントデータを、内部に有する不図示のデータ転送部がＲＡＭ１１４に出力した後、エンジンＩ／Ｆ部１１７を介してプリントエンジン部１２２へ出力する。
【００３５】
以上の処理により、ホストコンピュータ１０１から受信したデータを解像度変換符号化し、低解像度画像データ、及び補間データからなるスプールデータとして保持することができる。
【００３６】
更に、スプールデータに基づいて印刷を行う場合には、スプールデータに対して解像度変換復号化を行い、中間画像データを生成し、画像処理を行った結果をプリントエンジン部１２２に出力することができる。
【００３７】
尚、スプールデータを記憶装置１２１に保持するとしたが、これとは別にＲＡＭ１１４にのみ保持し、解像度変換復号化、及び画像処理を実行し、その結果をプリントエンジン部１２２に出力するようにしても良い。
【００３８】
図４は、中間画像データを構成する画素のデータ形式を模式的に示す図である。ここで、中間画像データを構成する各画素のデータは、色コンポーネント毎のビット深度を示す画像情報と、画像データ中で該画素の属する領域やオブジェクト情報を示すメタデータである像域情報とから構成される。具体的には、属性情報のデータ長が８ビット、色コンポーネントとしてＲ、Ｇ、Ｂそれぞれのデータ長が８ビットである。尚、属性情報のデータ長、画像情報のデータ長、及び色空間情報はこれに限定されるものでは無く、他のデータ長であっても良く、また他の色空間であっても良い。
【００３９】
次に、画像処理部１１８の詳細な構成を、図５のブロック図を用いて説明する。図５に示すように、画像処理部１１８は、データ転送を行うブロックと画像処理を行うブロックとから構成される。図５の例では、入力データ転送部５０１、出力データ転送部５０２、画像処理ブロック５０３〜５０６で構成されるものとする。ここで、画像処理部１１８を構成する画像処理ブロックは、スムージング等の画素補間処理を行うブロックを少なくとも一つ含むものとし、画像処理ブロック５０６がこれに該当するものとする。
【００４０】
また、その他の画像処理ブロック５０３〜５０５は、画像処理ブロック５０３が色変換処理、画像処理ブロック５０４が下地処理、画像処理ブロック５０５が中間調処理とする。尚、画像処理ブロックの処理内容、及び段数は一例であり、実現する画像処理に応じて増減しても良い。
【００４１】
入力データ転送部５０１は、内部バス１３１に接続され、同じく内部バス１３１に接続されるＲＡＭ１１４に予め保持された処理対応データを画像処理部１１８内部へ読み込む。ここで、処理対応データは、解像度変換符号化部１１９で生成される中間画像データである。
【００４２】
入力データ転送部５０１の動作に要する設定としては、ＲＡＭ１１４上に存在する中間画像データを構成する画像情報及び像域情報の開始アドレス番地とデータ長とを画像処理部１１８の有する不図示のレジスタに設定する。レジスタの設定は、ＣＰＵ１１３が行うものとする。
【００４３】
出力データ転送部５０２は、内部バス１３１に接続され、画像処理部１１８で処理された画像データを内部バス１３１に接続されるＲＡＭ１１４へ転送する。出力データ転送部５０２の動作に要する設定としては、ＲＡＭ１１４上に画像データを書き出すために要するページ先頭画素の画像情報及び像域情報のアドレス番地と出力データ長とを画像処理部１１８の有する他の不図示のレジスタに設定する。各レジスタの設定は、ＣＰＵ１１３が行うものとする。
【００４４】
画像処理ブロック５０３〜５０６は、入力データ転送部５０１から出力される画素データに対して各画像処理ブロック固有の画像処理をパイプライン的に行い、処理結果を出力データ転送部５０２へと出力する。
【００４５】
図６は、各画像処理ブロックの内部構成を示す図である。データ分離部６０１は、入力される画素データを解析し、画素データが画素データを画像情報と像域情報とに分離後、画像情報は画像処理実行部６０３に出力し、像域情報は属性判定部６０２に出力する。
【００４６】
属性判定部６０２は、画素データの属性を判定し、判定結果を画像処理実行部６０３へ出力すると共に、入力された像域情報をデータ結合部６０４へ出力する。画像処理実行部６０３は、判定結果に応じて、予め設定された不図示の画像処理実行に係る設定値を選択し、該当する画像情報に対して所定の画像処理を実行した後、処理結果となる画像情報をデータ結合部６０４へ出力する。
【００４７】
データ結合部６０４は、属性判定部６０２から入力された像域情報と画像処理実行部６０３から入力された処理結果である画像情報とを結合し、後段の画像処理ブロックへ出力する。尚、各画像処理ブロックの処理に応じて、画像処理実行部６０３の実装がそれぞれ異なるが、その他の構成は同様である。
【００４８】
図７は、画像処理ブロック５０６における画像処理実行部６０３の構成を示す図である。この画像処理ブロック５０６では、画像処理実行部６０３が画素補間処理を実行する。フィルタ部７０１は、画像処理ブロック５０６のデータ分離部６０１から入力される画像情報に対して平滑化フィルタ処理を行う。具体的には、画像処理ブロック５０６が備える不図示のラインバッファに貯めた画素と入力画素とを用いて処理対象注目画素の周辺画素を参照したフィルタ演算処理を行う。ラインバッファのサイズは、主走査方向の最大画素数が保持できるサイズ長であり、ライン数は周辺画素参照領域の副走査方向ライン数より１小さい値である。この例では、周辺画素参照領域を３×３画素とし、ラインバッファは２ライン分となる。また、フィルタ演算に係る各フィルタ係数は画像処理ブロック５０６が備える不図示のレジスタに予め設定される値である。
【００４９】
パターンマッチング部７０２は、フィルタ部７０１から出力され、主走査画素サイズで２ライン分となる不図示の第二の内部バッファに貯めた画素と次ラインの画素とを用いて形成した３×３画素領域に対してパターンマッチング処理を行う。マッチした場合は一致パターンフラグを真として、画素データと合わせて画素補間部７０３へ出力する。
【００５０】
一方、マッチしない場合は一致パターン情報を偽として、画素補間部７０３へ出力する。ここで、マッチングするパターンデータは、画像処理ブロック５０６が備える不図示のルックアップテーブル（ＬＵＴ）に予め設定したパターンを使用するものとする。
【００５１】
画素補間部７０３では、パターンマッチング部７０２から出力される一致パターン情報と属性判定部６０２から出力される属性情報とに応じて、画素補間を行うか否かを判定し、画素補間を行う。
【００５２】
図８は、画素補間を行うか否かの判定処理を示すフローチャートである。この処理は、データ分離部６０１からの画像情報と、それに対応するパターンマッチング部７０２から出力される一致パターン情報と、像域判定情報と、が画素補間部７０３に入力された時に実行される。
【００５３】
Ｓ８０１、Ｓ８０２、及びＳ８０３において、像域判定情報の判定を行う。像域判定情報がラインと判定された場合はＳ８０６へ遷移し、画素補間実行に係る判定フラグに真をセットし、画素補間判定処理を終了する。一方、像域判定情報が文字と判定された場合はＳ８０４へ遷移する。Ｓ８０４及びＳ８０５では、画像情報が白画素か否かを判定する。白画素と判定された場合はＳ８０７へ遷移し、判定フラグに偽をセットし、画素補間判定処理を終了する。また、白画素でないと判定された場合はＳ８０６へ遷移し、判定フラグに真をセットし、画素補間判定処理を終了する。
【００５４】
また、上述のＳ８０２及びＳ８０３において、像域判定情報がライン又は文字の何れとも一致しない場合はＳ８０７へ遷移し、判定フラグに偽をセットし、画素補間判定処理を終了する。
【００５５】
画素補間部７０３は、判定フラグ及び一致パターン情報が、共に真であれば、画素補間処理結果としてパターンマッチング部７０２から受信した画素データを出力する。しかし、判定フラグ又は一致パターン情報の何れか一方が偽であれば、画素補間処理は行わずにデータ分離部６０１から入力される画像情報を出力する。
【００５６】
以上説明した処理により、画像処理ブロック５０６の画像処理実行部６０３において、ラインか白画素でない文字で、かつ所定のパターンと一致する場合にのみ、画素補間処理が行われ、それ以外の場合には、画素補間処理が行われない。
【００５７】
次に、解像度変換符号化部１１９で行う符号化処理について、図９乃至図１２を用いて説明する。図９に示すように、入力画像９０１から２×２画素のブロック９０２を抽出し、ブロック単位で符号化圧縮して低解像度データと補間データとを出力する。
【００５８】
図９に示す９０３は、ブロック単位領域（パターン情報）９０４、ブロックを構成する色数（組み合わせ）９０５、対応する低解像度データ９０６、及び補間データ９０７、の関係を示す表である。
【００５９】
まず、ブロック単位領域９０４とブロックを構成する色数９０５との関係を説明する。ブロック色数９０５が１色で全画素が同色である場合の組み合わせは１通りである。これに対応するパターン情報を、１６進数形式で０ｘ０とする。
【００６０】
次に、ブロック色数９０５が２色である場合の組み合わせは、左上の画素を第１色とし、他方を第２色として考えると、左上以外残りの３画素へ第１色もしくは第２色が入るので、４画素同色の場合を除くと、全部で７通りである。これに対応するパターン情報を、１６進数形式で０ｘ１〜０ｘ７とする。
【００６１】
また、ブロック色数９０５が３色である場合の組み合わせは、３色のうち１色だけ２度使われる場合の数と言い換える事が可能で、４画素の座標のうち、２画素が同じ色になる場合の数を求めれば良い。つまり、３色の場合の数は、４つの座標から２つの座標を取る組み合わせとなり、全部で６通りとなる。これに対応するパターン情報を、１６進数形式で０ｘ８〜０ｘＤとする。
【００６２】
更に、ブロック色数９０５が４色である場合の組み合わせは、１色の場合と同様に１通りとなる。これに対応するパターン情報を、１６進数形式で０ｘＥとする。
【００６３】
このように、２×２画素のブロック９０２の場合、ブロック色数９０５が１〜４色全ての場合の数は、全部で１５通りである。
【００６４】
次に、ブロック色数９０５に対応する低解像度データ９０６と、補間データ９０７との構成を説明する。低解像度データ９０６は、２×２画素からなるブロック９０２の左上の画素の色情報とし、例えば色空間がＲＧＢで、各色コンポーネントのデータ長が８ビットの画素の場合、各色情報のビット長は２４ビットで表現可能である。また、この左上画素の色情報を第１色とし、以下、右上画素を第２色、右下画素を第３色、左下画素を第４色とする。
【００６５】
補間データ９０７は、ブロック９０２に応じた、パターン情報と色情報とから構成される。例えば、ブロック色数９０５が１色の場合は、パターン情報として０ｘ０と、１色を表現する色情報とから構成される。ここで、パターン情報のビット長は４ビットであり、ブロック色数９０５の全組み合わせ（１５通り）を表現する最小のビット長である。
【００６６】
色情報は、ブロック９０２を構成する画素で、２×２画素の左上以外の残り３つ（第２〜４）の画素の色情報であり、例えば色空間がＲＧＢで、各色コンポーネントのデータ長が８ビットの画素の場合、各色情報のビット長は２４ビットである。
【００６７】
以上説明した、低解像度データ９０６と補間データ９０７を用いることで、２×２画素からなるブロック９０２を圧縮符号化することが可能となる。例えば、ブロック９０２が全画素同色である場合、圧縮符号化前のデータ量はＲＧＢ８ビット４画素分の９６ビットである。この全画素同色のブロックを圧縮符号化した場合、色情報を示す低解像度データが２４ビットに、全色同色画素であることを示すパターン情報が４ビットになり、全体で２８ビットになる。また、圧縮符号化データは、補間データ（パターン情報及び色情報）９０７からブロック単位領域９０４に示す元データである２×２画素のブロック９０２に復号化できる。
【００６８】
次に、解像度変換符号化部１１９の構成及び動作を、図１０のブロック図を用いて説明する。入力データ転送部１００１は、内部バス１３１に接続され、ＲＡＭ１１４に予め保持された処理対応データを画像処理部１１８の内部へ転送し、データを所定の画素領域で切り出し画素補間判定部１００３へ出力する。ここで、処理対応データは、ＰＤＬ処理部１１２で生成される中間画像データである。
【００６９】
入力データ転送部１００１の動作のために、ＲＡＭ１１４上に存在する中間画像データを構成する画像情報と像域情報との開始アドレス番地、データ長、画素切り出しサイズ、を解像度変換符号化部１１９の有する不図示のレジスタに設定する。尚、レジスタの設定は、ＣＰＵ１１３が行うものとする。
【００７０】
出力データ転送部１００２は、内部バス１３１に接続され、解像度変換符号化部１１９で生成される符号化データを内部バス１３１に接続されるＲＡＭ１１４へ転送する。出力データ転送部１００２の動作に要する設定としては、ＲＡＭ１１４上に画像データを書き出すために要する、ページ先頭画素の画像情報及び像域情報のアドレス番地と出力データ長とを画像処理部１１８の有する他の不図示のレジスタに設定する。尚、各レジスタの設定は、ＣＰＵ１１３が行うものとする。
【００７１】
画素補間判定部１００３は、入力データ転送部１００１からの中間画像データに対して上述した画像処理実行部６０３と同様な構成で画素補間判定処理を行い、判定結果を生成する。
【００７２】
図１１は、画素補間判定部１００３の構成を示すブロック図である。画素補間判定部１００３はフィルタ部１０１１、パターンマッチング部１０１２、属性判定部１０１３、画素補間判定部１０１４で構成される。フィルタ部１０１１と、パターンマッチング部１０１２と、属性判定部１０１３とが、それぞれ行う処理は、上述した画像処理実行部６０３の各処理と同じである。また、周辺画素参照領域も、それぞれ３×３画素で同じサイズである。よって、画素補間判定部１００３で得られる判定結果は、処理後段に位置する画像処理ブロック５０６で該当画素が補間処理されるか否かを示すものとなる。
【００７３】
図１０に戻り、符号化部１００４は、画素補間判定部１００３での画素補間処理に係る判定結果に応じて、解像度変換符号化処理を行う。
【００７４】
次に、解像度変換符号化部１１９が行う符号化処理を、図１２のフローチャートを用いて説明する。この処理は、ＣＰＵ１１３がＰＤＬ処理部１１２により生成された中間画像データの受信を、解像度変換符号化部１１９に指示することで、処理が開始される。
【００７５】
Ｓ１２０１において、解像度変換符号化処理を行うための画像データを取得する。具体的には、入力データ転送部１００１を用いて、ホストコンピュータ１０１から入力され、ＰＤＬ処理部１１２で変換された後に記憶装置１２１に格納された中間画像データを取得する。取得した画像データは、解像度変換符号化部１１９が有する不図示の内部バッファに格納する。
【００７６】
次に、Ｓ１２０２において、入力データ転送部１００１が、取得した中間画像データについて、第１のブロック単位領域で切り出しを行う。第１のブロック単位領域とは、画素補間判定部１００３が備える各周辺画素参照処理の画素参照領域サイズで最大のサイズとし、この例では３×３画素（＝９画素）の領域サイズである。
【００７７】
以下、Ｓ１２０３〜Ｓ１２０５における処理は、画素補間判定部１００３で行うものとする。まず、Ｓ１２０３では、切り出された第１のブロック単位領域について、画素補間判定処理を行う。この画素補間判定処理は、上述した画像処理ブロック５０６で行われる画素補間処理における画素補間判定処理（Ｓ８０１〜Ｓ８０７）と同様であり、判定結果として画素補間に係る判定フラグを生成する。
【００７８】
次に、Ｓ１２０４及びＳ１２０５では、Ｓ１２０３で生成された判定フラグに応じて、画素補間するか否か、解像度が低下するか否かを判定する。まず、Ｓ１２０４では、判定フラグが偽の場合はＳ１２０８へ遷移する。一方、判定フラグが真の場合はＳ１２０５へ遷移し、第１のブロック単位領域の解像度が低下するか否かを判定する。具体的には、第１のブロック単位領域を構成する３×３画素の各画像情報を互いに比較し、全ての画像情報が同色であれば解像度が低下する低解像度画素領域と判定し、Ｓ１２０６へ遷移する。一方、同色でなければ解像度が低下しない高解像度画素領域と判定し、Ｓ１２０８へ遷移する。
【００７９】
以下、Ｓ１２０６〜Ｓ１２０８における処理は、符号化部１００４が行うものとする。まず、Ｓ１２０６では、解像度変換符号化の処理単位となる第２のブロック単位領域を構成する各画素の色情報を参照し、同色画素で構成されているか否かを判定する。第２のブロック単位領域とは、解像度変換符号化処理を行う画素単位領域であり、ここでは２×２画素である。これは、入力データ転送部１００１で切り出される３×３画素の第１のブロック単位領域とは異なる小さいサイズである。そのため、符号化部１００４は３×３画素分のデータを保持可能な不図示の内部バッファを備え、入力画像データを保持しながら符号化処理を行う。尚、内部バッファのサイズは一例であり、例えば３×３画素分のデータを保持可能なバッファを２重に持ち、ダブルバッファリング処理することで、処理効率化を行っても良い。
【００８０】
この処理では、第２のブロック単位領域を構成する２×２画素（＝４画素）それぞれの画像情報をコンポーネント毎に比較し、全てが一致するか否かの判定を行う。判定結果が真の場合はＳ１２０７へ遷移し、判定結果が偽の場合はＳ１２０８へ遷移する。
【００８１】
このＳ１２０７では、第２のブロック単位領域を構成する画素が全て同色であるとし、これに対応する低解像度画像データ９０６と補間データ９０７とを生成する（解像度を低下させ、データ量を削減し符号化圧縮効率が高まる）。具体的には、低解像度データとして、第２のブロック単位領域を構成する２×２画素の色情報を生成する。また、補間データとして、第２のブロック単位領域が全画素同色であることを示すパターン情報の値として０ｘ０を生成する。低解像度データと補間データとを生成後、Ｓ１２０９へ遷移する。
【００８２】
一方、Ｓ１２０８では、第２のブロック単位領域を構成する画素が全て同色でないとし、これに対応する低解像度画像データと補間データとを生成する。低解像度データとして、第２のブロック単位領域を構成する２×２画素の左上画素の色情報を生成する。また、補間データとして、ブロック単位領域を構成する色数に応じたパターン情報と第２色〜第４色の色情報とを生成する。
【００８３】
具体的には、第２のブロック単位領域が２色であれば、パターン情報の値として０ｘ１〜０ｘ７の何れかと、第２色の色情報として２×２画素の左上以外の色情報を生成する。また、第２のブロック単位領域が３色であれば、パターン情報の値として０ｘ８〜０ｘＤの何れかと、第２色の色情報として２×２画素の左上画素以外の色情報と、第３色の色情報として左上画素でも第２色でもない残りの色情報とを生成する。また、第２のブロック単位領域が４色であれば、パターン情報の値として０ｘＥを生成する。そして、第２色の色情報として２×２画素の左上画素以外の色情報と、第３色の色情報として左上画素でも第２色でもない残りの色情報と、第４色の色情報として左上画素でも第２色でも第３色でもない残りの色情報とを生成する。
【００８４】
低解像度データと補間データとを生成後、Ｓ１２０９へ遷移する。このＳ１２０９では、Ｓ１２０１で取得した全画像に対して、符号化したか否かを判定する。判定結果が偽の場合はＳ１２０２へ遷移し、残りの第２のブロック単位領域に対して符号化処理を行う。一方、判定結果が真の場合は、解像度変換符号化処理を終了する。
【００８５】
次に、解像度変換複号化部１２０が行う復号化処理を、図１３に示すフローチャートを用いて説明する。この復号化処理は、記憶装置制御部１１６による低解像度画像データと補間データとからなる符号化データスプール処理終了後に、ＣＰＵ１１３がプリント開始命令を解像度変換符号化部１１９に指示することで開始される。
【００８６】
Ｓ１３０１において、解像度変換符号化データを取得する。具体的には、解像度変換復号化部１２０が備える不図示のデータ転送部を用いて解像度変換符号化部１１９において符号化処理し、記憶装置１２１へと格納された低解像度画像データと補間データとを取得し、Ｓ１３０２へ遷移する。このＳ１３０２では、取得した補間データを第２のブロック単位領域毎で復号化し、パターン情報を生成する。
【００８７】
次に、Ｓ１３０３において、Ｓ１３０２で復号化したパターン情報に対応する低解像度画像データを第２のブロック単位領域毎に復号化し、元データである中間画像データを生成する。次に、Ｓ１３０４において、Ｓ１３０１で取得した全画像に対して、符号化したか否かを判定する。判定結果が偽の場合はＳ１３０２へ遷移し、残りの取得した符号化データに対して復号化処理を行う。一方、判定結果が真の場合は、解像度変換復号化処理を終了する。
【００８８】
本実施形態によれば、解像度変換を用いた符号化圧縮処理時に、所定のブロック単位領域が後段の画像処理で画素補間されるか否かを判定することが可能となる。そして、符号化圧縮処理時には高解像度だが、符号化処理後に低解像度となるブロック単位領域を判定し、低解像度判定とすることが可能となり、符号化圧縮効率を高めることが可能となる。これにより、符号化圧縮したデータを正しく復号化することが可能となる。
【００８９】
［本実施形態の変形例］
次に、本実施形態における解像度変換符号化部１１９の画素補間判定部１００３で行う周辺画素参照処理の参照領域を、より小さくした変形例を説明する。具体的には、解像度変換符号化処理で予め定められたブロック単位領域と同じ２×２画素サイズとする。これにより画素補間判定部１００３の実装容易化が可能となる。
【００９０】
本実施形態の変形例では、フィルタ部１０１１、及びパターンマッチング部１０１２の周辺画素参照領域がそれぞれ２×２画素であり、各処理の実装の容易性が高まり、かつ、回路規模等の実装コストを削減可能となる。具体的には、各処理において周辺画素を保持するための不図示の内部バッファサイズが、対３×３画素比の半分以下に削減される。
【００９１】
また、パターンマッチング部１０１２でのパターンサイズが縮小するためパターン保持に係るＬＵＴサイズが、対３×３画素比の半分以下に削減される。更には、符号化部１００４において、入力画像データを保持する不図示の内部バッファ量も削減される。そして、各処理に係る精度は周辺画素参照領域に応じた分だけ低下するが、解像度変換符号化処理時に画素補間判定を行うことが可能となる。
【００９２】
本実施形態の変形例によれば、解像度変換符号化部１１９の画素補間判定部１００３が行う周辺画素参照処理の参照領域サイズを解像度変換符号化処理のブロック単位領域まで小さくして実装を容易化し、後段の画像処理での画素補間に係る判定が可能となる。そして、符号化圧縮処理時には高解像度だが、符号化処理の後段画像処理により低解像度となるブロック単位領域を判定し、低解像度判定とすることが可能となり、符号化圧縮効率を高めることが可能となる。
【００９３】
［他の実施形態］
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
0005441676.tif 000002
【図２】
0005441676.tif 000003
【図３】
0005441676.tif 000004
【図４】
0005441676.tif 000005
【図５】
0005441676.tif 000006
【図６】
0005441676.tif 000007
【図７】
0005441676.tif 000008
【図８】
0005441676.tif 000009
【図１０】
0005441676.tif 000010
【図１１】
0005441676.tif 000011
【図１２】
0005441676.tif 000012
【図１３】
0005441676.tif 000013
【図９】
0005441676.tif 000014