(57)【特許請求の範囲】
【請求項１】
画像を色情報に基づいて部分領域に分割する分割手段と、
前記部分領域ごとに、該部分領域が変化領域か否かを判断するために用いる閾値を該部分領域のサイズに応じて決定する決定手段と、
前記部分領域ごとに、該部分領域の色情報と該部分領域の周辺にある周辺部分領域の色情報との差分が前記決定された閾値よりも小さいか否かを判断する判断手段と、
前記判断手段により、前記差分が閾値よりも小さいと判断された場合に、前記部分領域を記憶手段に保存する保存手段と、
前記記憶手段に保存された前記部分領域の数が所定の個数以上である場合に、該記憶手段に保存された部分領域をまとめた領域に対して同一の画像処理方法を選択する選択手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記決定手段は、前記部分領域のサイズが所定のサイズよりも大きい場合に、該サイズが前記所定のサイズより小さい場合に比べ、前記閾値を小さな値に決定する、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記記憶手段は、第１の記憶手段及び第２の記憶手段を含み、
前記保存手段は、前記部分領域のサイズが第１のサイズよりも大きい場合に、前記判断手段により前記差分が前記閾値よりも小さいと判断された前記部分領域を前記第１の記憶手段に保存し、
前記部分領域のサイズが前記第１のサイズよりも小さい第２のサイズよりも小さい場合に、前記判断手段により前記差分が前記閾値よりも小さいと判断された前記部分領域を前記第２の記憶手段に保存し、
前記選択手段は、前記第１の記憶手段に保存された部分領域と前記第２の記憶手段に保存された部分領域とを別個にまとめ、当該まとめた前記第１の記憶手段に保存された部分領域と当該まとめた前記第２の記憶手段に保存された部分領域とに対して画像処理方法を別個に選択する、
ことを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記選択手段は、前記判断手段により、前記部分領域の色情報と前記周辺部分領域の色情報との差分が前記閾値以上であると判断された場合に、該部分領域に対して前記同一の画像処理方法とは異なる画像処理方法を選択する、
ことを特徴とする請求項１ないし３のいずれか１項に記載の情報処理装置。
【請求項５】
前記選択手段は、前記記憶手段に保存された前記部分領域の数が前記所定の個数より少ない場合に、該記憶手段に保存された部分領域の各々に対して前記同一の画像処理方法とは異なる画像処理方法を選択する、
ことを特徴とする請求項１ないし４のいずれか１項に記載の情報処理装置。
【請求項６】
前記判断手段は、前記部分領域の色情報と前記周辺部分領域の色情報との前記差分を求める際に、前記部分領域に分割された前記画像の左上の部分領域から右下の部分領域に対して順次、該差分が前記閾値よりも小さいか否かの判断を行う、
ことを特徴とする請求項１ないし５のいずれか１項に記載の情報処理装置。
【請求項７】
前記色情報は画素値を用いる、ことを特徴とする請求項１ないし６のいずれか１項に記載の情報処理装置。
【請求項８】
前記分割手段は、前記画像の隣接する画素のうち、同一の画素値を持つ画素を、他の画素値を持つ画素を包含しないようにまとめ、同一色領域とする、
ことを特徴とする請求項１ないし７のいずれか１項に記載の情報処理装置。
【請求項９】
前記選択手段は、前記同一の画像処理方法としてＬｏｓｓｙ圧縮を選択する、
ことを特徴とする請求項１ないし８のいずれか１項に記載の情報処理装置。
【請求項１０】
画像を色情報に基づいて部分領域に分割する分割工程と、
前記部分領域ごとに、該部分領域が変化領域か否かを判断するために用いる閾値を該部分領域のサイズに応じて決定する決定工程と、
前記部分領域ごとに、該部分領域の色情報と該部分領域の周辺にある周辺部分領域の色情報との差分が前記決定された閾値よりも小さいか否かを判断する判断工程と、
前記判断工程において、前記差分が閾値よりも小さいと判断された場合に、前記部分領域を記憶手段に保存する保存工程と、
前記記憶手段に保存された前記部分領域の数が所定の個数以上である場合に、該記憶手段に保存された部分領域をまとめた領域に対して同一の画像処理方法を選択する選択工程と、
を備えることを特徴とする情報処理装置の制御方法。
【請求項１１】
請求項１乃至９のいずれか１項に記載の各手段としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報処理装置、情報処理装置の制御方法、及びプログラムに関する。
【背景技術】
【０００２】
従来、ページ内の文字や画像が記述されたページ記述言語（ＰＤＬ：Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）からラスターデータを生成する描画処理において、処理の効率化や高速化を図るための提案がなされている。例えば、ＰＤＬ内の画像や、ＰＤＬから生成されたラスターデータの内容に応じて、適切な画像圧縮方法や色変換処理を適用することが行われている。
【０００３】
特許文献１は、画像を複数の領域に分割し、領域毎に文字領域を含むか、モノクロ領域であるか、カラー領域であるかといった属性を判定し、該判定された属性に応じて画像符号化時のサブサンプリング手段を選択する方法を開示している。また、特許文献２は、各画素の色情報から平坦領域、変化領域に分類し、変化領域内の特定の画素を前景画素として抽出し、前景画素と非前景画素で異なる処理を選択する方法を開示している。更に、特許文献３は、画像を同一色の領域に分割し、該領域のピクセル数から、該領域の圧縮方法を選択する方法を開示している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−１７６７４号公報
【特許文献２】特開２０１０−２７７２２７号公報
【特許文献３】米国特許第５９８２９３７号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００５】
画像内を複数の領域に分割し、領域毎に処理を選択する場合に、画像内の色情報を基に領域分割することが考えられる。そして、分割された領域の大きさや、領域の色情報に基づいて領域のテキストや自然画といった属性を判断し、該属性から適切な処理を選択しうる。また、グラデーション画像の様に色が細かく変化する変化領域に対しては、変化領域全体として固有の画像処理を施すことが求められる。
しかしながら、特許文献１〜３に開示の方法では、上述したような変化領域に対して、同一色の領域に分割された各領域に対して個別に画像処理が行われてしまう可能性がある。
【０００６】
本発明は、画像内に含まれるグラデーションの様に色が細かく変化する変化領域に対して正しく変化領域であると判断し、変化領域をまとめて適切な画像処理方法を選択することが可能となる情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一実施形態の情報処理装置は、画像を色情報に基づいて部分領域に分割する分割手段と、部分領域ごとに、該部分領域が変化領域か否かを判断するために用いる閾値を該部分領域のサイズに応じて決定する決定手段と、部分領域ごとに、該部分領域の色情報と該部分領域の周辺にある周辺部分領域の色情報との差分が決定された閾値よりも小さいか否かを判断する判断手段と、判断手段により、差分が閾値よりも小さいと判断された場合に、部分領域を記憶手段に保存する保存手段と、
記憶手段に保存された前記部分領域の数が所定の個数以上である場合に、該記憶手段に保存された部分領域をまとめた領域に対して同一の画像処理方法を選択する選択手段と、
を備えることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、画像内に含まれるグラデーションの様に色が細かく変化する変化領域に対して正しく変化領域であると判断し、変化領域をまとめて適切な画像処理方法を選択することが可能となる情報処理装置を提供することができる。
【図面の簡単な説明】
【０００９】
【図１】一実施形態における情報処理システムの構成の一例を示した図である。
【図２】情報処理システムのモジュール構成の一例を示した図である。
【図３】ＰＤＬデータ及びオブジェクトリストの一例を示した図である。
【図４】中間データの一例を示した図である。
【図５】各部分領域の属性を判断する処理を説明するためのフローチャートである。
【図６】画像を同一色領域に分割した場合の一例を示した図である。
【図７】画像を同一色領域に分割する処理の手順の一例を示した図である。
【図８】同一色領域のサイズを算出する方法の一例を示した図である。
【図９】グラデーション画像を同一色領域に分割した一例を示した図である。
【図１０】グラデーションを含む画像の処理順序を示した図である。
【図１１】第１及び第２のＳｔａｃｋの構造例を示した図である。
【発明を実施するための形態】
【００１０】
まず、本発明の説明に先立ち、グラデーション等の変化領域を含む画像に対する従来の画像処理方法について説明する。
図９は、グラデーション画像を同一色領域に分割した一例を示した図である。
従来の方法では、変化領域内の各色領域がそれぞれ別の領域として認識・処理され、変化領域全体として適切な処理が選択されない場合がある。図９（Ｂ）のグラデーション画像は、図９（Ａ）のグラデーション画像を説明のために簡略化したグラデーション画像である。図９（Ｂ）に対し処理を選択する場合には、まず色情報に基づき、領域９０１〜９０５の同一色領域に分割する。そして、それぞれの同一色領域に対し、領域の大きさや色情報からテキストや自然画領域といった属性を判断し、最適な処理を選択する。
【００１１】
ただし、該グラデーション画像が大きい場合には、各領域９０１〜９０５の大きさも大きくなる。そのため、各領域の属性は、それぞれ単色の図形や背景であると判断され、本来であれば図９（Ｃ）に示す様に１つのグラデーション領域として処理すべきにも関わらず、図９（Ｄ）に示す様に領域９０１〜９０５の各色別々の領域として処理される場合がある。
例えば、画像の圧縮に関して、画質の劣化を抑えつつ、圧縮後のデータサイズを小さくするために、自然画等の領域はＬｏｓｓｙ圧縮を行う。一方、テキスト領域は画質の劣化を避けるために、Ｌｏｓｓｌｅｓｓ圧縮を行う。このように、領域毎の属性に応じて圧縮方法を選択することを考える。このとき、グラデーション画像は、Ｌｏｓｓｙ圧縮を行っても画質の劣化が目立たないため、グラデーション画像全体としてＬｏｓｓｙ圧縮を行いたい。しかし、図９（Ｄ）の様に、各色領域が図形属性の領域と判断される場合には、グラデーション全体として処理されずに、各色領域で別々にＬｏｓｓｌｅｓｓ圧縮されてしまう。
【００１２】
また、実際のグラデーション画像は、図９（Ｂ）のような簡略化したグラデーション画像と異なり、図９（Ａ）の様に多数の色から構成されるため、各色領域に分割した場合に領域数が膨大な数となる。そのため、領域毎に別々に画像処理を行った場合には、グラデーション画像の画像処理に時間がかかってしまう。
【００１３】
これに対して、本実施形態によれば、例えば、入力ＰＤＬ内に含まれる画像や、入力ＰＤＬから生成されたラスターデータ内に含まれるグラデーションの様に色が細かく変化する変化領域に対し、正しくグラデーションの属性を持つと判断することが可能になる。また、変化領域全体に対して、適切な画像処理を選択し、実施することが可能となる。以下、本発明を実施するための形態について図面などを参照して説明する。
【００１４】
（第１実施形態）
図１は、本発明における情報処理システムの構成の一例を示した図である。
図１において、コンピュータ１０１は、データ転送ケーブル１０３を経由してプリンタ１０２と接続されている。コンピュータ１０１は、ユーザからの操作と、印刷データとしてＰＤＬの入力を受け付けるアプリケーション部１０４と、入力されたＰＤＬを解析し、中間データに変換し、プリンタ１０２に中間データを転送する処理部１０５とを有する。プリンタ１０２は、データ転送ケーブル１０３を介して送信された中間データを受信し、該中間データをレンダリングし、ラスターデータを作成するレンダリング部１０６と、該ラスターデータの印刷処理を制御するプリンタエンジン部１０７とを有する。
【００１５】
なお、本発明の実施形態は、図１の構成によらず、コンピュータ１０１がレンダリング部１０６の機能を有し、ネットワークで接続されたプリンタ１０２にラスターデータを送信する構成であってもよい。また、プリンタ１０２が処理部１０５の機能を有し、ＰＤＬを受信、若しくは入力を受け付け、ＰＤＬからラスターデータ作成まで行う構成であってもよい。
【００１６】
図２は、本発明における情報処理システムのモジュール構成の一例を示した図である。
ＰＤＬ２０１は、アプリケーション部１０４からユーザによって印刷指示されたＰＤＦやＸＰＳといったＰＤＬ形式のデータで、図３（Ａ）に示す様に、テキストやグラフィック、画像などの描画情報を含む。ＰＤＬ解析モジュール２０２は、ＰＤＬ２０１を受け取り、ＰＤＬを解析し、ＰＤＬ内に含まれるテキストやグラフィック、画像等のオブジェクト情報から印刷ページ内に含まれるオブジェクトをリスト化したオブジェクトリスト２０３を作成する。
【００１７】
オブジェクトリスト２０３は、例えば、図３（Ｂ）の様にページ内に含まれるオブジェクトを、ページのスキャンライン毎にリスト化した図３（Ｃ）に示す２次元のリスト形式が考えられる。オブジェクトを描画する際に、該オブジェクトの描画開始スキャンラインがｉ行目の場合には、ｉ行目のリストＯｂｊｅｃｔＬｉｓｔ［ｉ］にオブジェクト情報を追加する。リストに登録される各オブジェクト情報に含まれる情報としては、テキストのストリング情報や、図形のパス情報、画像情報、塗り情報、画像データ等が考えられる。
【００１８】
中間データ生成モジュール２０４は、ＰＤＬ解析モジュール２０２で生成したオブジェクトリスト２０３を解析し、中間データ２０７を作成する。中間データ２０７は、例えば図４（Ａ）に示す様に、ページ内のオブジェクトの描画位置や、エッジ情報を含むレイアウト情報４０１と、ページ内のオブジェクトの描画色等の各塗り情報を示す塗り情報４０２とから構成される形式が考えられる。
【００１９】
また、ページ内のオブジェクトが画像であった場合には、該画像の画像データ４０３も含まれる。塗り情報４０２は、図４（Ｂ）に示す様に、各塗りに対するＩｎｄｅｘ情報と、塗りタイプと、塗りタイプに応じた色値とが含まれている。また、塗りタイプが画像の場合には、該画像のデータのサイズや格納場所に係る情報を含んでおり、該塗り情報を基に画像データを取得することが可能である。
【００２０】
また、中間データ生成モジュール２０４において中間データ２０７を作成する際には、中間データのデータサイズを小さくするために、ＰＤＬ２０１内の画像データは必要に応じて圧縮される。
更に、画像の圧縮に関しては、中間データ生成モジュール２０４において、画像を複数の部分領域に分割する。そして、画像の情報や描画内容を基に各部分領域の属性を判断し、判断した属性に応じて複数の圧縮方法から単一の部分領域、または複数の部分領域に対して最適な画像圧縮方法を選択する。そして、画像の領域データ（若しくは画像データ）を、選択された圧縮方法を実施する画像処理モジュール（本実施形態では、画像処理モジュール２０５及び画像処理モジュール２０６）に送信する。画像処理モジュールは、受け取った画像データを圧縮し、中間データ生成モジュール２０４に圧縮データを返す。
【００２１】
また、本実施形態では、画像処理モジュールは２０５及び２０６の２つであるが、中間データ生成モジュール２０４で判断される属性に応じて１つ以上の構成であればよく、複数の画像処理モジュールを組み合わせる処理を行ってもよい。更に、本実施形態では、判断された属性により選択されるのは画像の圧縮方法であるが、これによらず、色変換や、補間方法等、その他の画像処理や、それらの組み合わせを選択してもよい。
【００２２】
中間データ生成モジュール２０４は、受け取った圧縮結果を中間データ２０７に格納する。これにより、例えば画像全体をＬｏｓｓｙ圧縮することによる図形やテキスト部の不要な画質劣化や、不適切な画像分割による処理の増加を抑えると共に、中間データ２０７のデータサイズを小さくすることが可能となる。
中間データ２０７は、データ転送ケーブル１０３を介してプリンタ１０２に送信される。プリンタ１０２は、受信した中間データ２０７をレンダリングモジュール２０８で解析し、レンダリングすることにより印刷用のラスターデータ２０９を生成する。
【００２３】
図５は、複数の部分領域に分割された画像の各部分領域の属性を判断する処理、及びその判断に基づき圧縮方法を選択する処理を説明するためのフローチャートである。これらの処理は、中間データ生成モジュール２０４により行われる。
ステップＳ５０１では、中間データ生成モジュール２０４は、オブジェクトリストに含まれる画像オブジェクトの画像データを取得し、画像データをラスター形式に展開する。ステップＳ５０２では、中間データ生成モジュール２０４は、取得したラスター画像データを同一のピクセル値（画素値）を持つ隣接する画素をまとめ、同一色領域（部分領域）に分割する。
【００２４】
図６は、画像を同一色領域に分割した場合の一例である。
図６（Ａ）に示す画像に対して、同一の画素値の隣接画素をまとめた場合には、図６（Ｂ）に示す様に部分領域６０１〜６０５に分割される。また、図６（Ｃ）に示す様に１つの同一色領域６０６に異なる色の領域６０７が包含されている場合には、図６（Ｄ）に示す様に１つの同一色領域に別の同一色領域が包含されない様に部分領域６０８〜６１０に分割する。
【００２５】
図７は、画像を同一色領域に分割する処理の一例を示した図である。
図７（Ａ）に示す画像を、ピクセル単位で示したのが図７（Ｂ）である。先ず図７（Ｃ）に示す様に、画像に左上から水平方向を示す矢印のスキャンライン方向にピクセルを走査していき、画素値が異なる位置をエッジとして検出する。１つのスキャンラインの走査が終われば、１つ下のスキャンラインを同様に走査し、この手順を繰り返すことで画像全体を走査する。
【００２６】
図７（Ｄ）の様に画像内のピクセル単位でのエッジ７０７が検出できれば、左側、すなわち矢印の始点側の画素値が同一の隣接エッジを連結し、図７（Ｅ）に示す様に、画像内のエッジを検出する。画像内のエッジ連結が完了すれば、各エッジからスキャンライン方向（右、すなわち矢印の終点方向）に次のエッジまでのピクセルを同一色領域とすることで図７（Ｆ）の様に、同一色領域（部分領域）７０１〜７０６に分割する。
【００２７】
図５の説明に戻る。ステップＳ５０３〜Ｓ５１４の処理は、ステップＳ５０２で分割した同一色領域を、画像の左から右、上から下方向の順に、すなわち左上の部分領域から右下の部分領域に対して順次処理を行う。ステップＳ５０３では、中間データ生成モジュール２０４は、同一色領域のサイズ情報を用いて、後述する色情報比較（コントラスト比較）手段で用いる閾値Ｔｈ１を決定する。具体的には、例えば図８（Ａ）に示す同一色領域に対し、図８（Ｂ）の外接矩形８０１の高さＨと幅Ｗから、図８（Ｃ）に示す様に同一色領域のサイズＳ＝Ｈ＋Ｗとして算出し、該サイズＳの値に応じて閾値Ｔｈ１の値をａ１〜ａ３に決定する。なお、図８（Ｃ）において、閾値Ｔｈ１を決定するために用いた値Ｓ１及びＳ２は、それぞれサイズを比較するための第１のサイズ及び第２のサイズであり、所定の値を用いるものとする。また、サイズＳは、Ｈ＋Ｗに限らず、領域の面積や、外接矩形の対角線の長さ等、他の値であってもよい。
【００２８】
例えば、サイズの大きい（Ｓ≧Ｓ２）同一色領域は、単色の図形属性（第３の属性）である可能性が高い。従来の方法では、サイズの大きいグラデーション属性の同一色領域は、図形と判断されることがあるが、本実施形態では、サイズに応じてコントラス比較で用いる閾値Ｔｈ１を決めることができる。そのため、コントラスト比較ではサイズの大きい同一色領域に対してグラデーション属性を検出するために、閾値Ｔｈ１を小さく設定する（ａ３）ことが考えられる。また、サイズの小さい領域（Ｓ＜Ｓ１）は自然画属性（第２の属性）である可能性が高い。従来の方法では、サイズの小さい図形等の属性の同一色領域は、自然画やグラデーションの一部と判断されることがあるが、本実施形態では、サイズに応じてコントラス比較で用いる閾値Ｔｈ１を決めることができる。そのため、コントラスト比較ではサイズの小さい同一色領域に対して文字領域や模様等の図形領域の属性を検出するために、閾値Ｔｈ１を大きく設定する（ａ１）ことが考えられる。
【００２９】
その他の大きさ（Ｓ１≦Ｓ＜Ｓ２）の領域については、コントラストの高い領域を図形属性（第３の属性）、低い領域を自然画属性（第２の属性）と判断するために閾値Ｔｈ１（ａ２）を設定する。本実施形態では、サイズによって特に判断したい属性（グラデーションか図形か）を変えることができ、この場合にそれぞれのサイズで設定される閾値Ｔｈ１の値ａ１〜ａ３は、ａ３＜ａ２＜ａ１の関係を持つように設定する。なお、閾値Ｔｈ１の値ａ１〜ａ３の設定は、これに限られるものではなく、例えばサイズの小さい同一色領域であってもグラデーション属性であるか否かを判断したい場合には、ａ１を小さく設定してもよく、上述した関係式を必ずしも満たす必要はない。また、閾値Ｔｈ１は、本実施形態では、ａ１〜ａ３の３つから選択して決定されるが、これに限られるものではない。閾値Ｔｈ１は、判断する属性の種類や、選択される画像処理に応じた数や値から選択されればよい。
【００３０】
ステップＳ５０４では、中間データ生成モジュール２０４は、ステップＳ５０３で決定した閾値Ｔｈ１が予め定められた所定の閾値（ａ３）であるか否かを判断する。そして閾値Ｔｈ１が所定の閾値であればステップＳ５０５に進み、閾値Ｔｈ１が所定の閾値でなければ、ステップＳ５０７に進む。
【００３１】
ステップＳ５０５では、中間データ生成モジュール２０４は、同一色領域と、該同一色領域の周辺部分領域（例えば右側隣接の周辺部分領域）とのコントラストＣ（画素値の差分）を求める。例えば、同一色領域の画素値が（Ｒ１、Ｇ１、Ｂ１）であり、周辺部分領域の画素値（Ｒ２、Ｇ２、Ｂ２）であった場合には、コントラストＣ＝｜Ｒ１−Ｒ２｜＋｜Ｇ１−Ｇ２｜＋｜Ｂ１−Ｂ２｜として求める方法が考えられる。コントラストＣと前述の閾値Ｔｈ１を比較し、Ｃ≧Ｔｈ１であればステップＳ５１８に進み、Ｃ＜Ｔｈ１であればステップＳ５０６に進む。また、本実施形態では、色情報の比較に、部分領域と周辺部分領域とのコントラスト（画素値の差分）を用いているが、これに限られるものではなく、色相や明度といったその他の色情報を用いても良い。
【００３２】
ステップＳ５０６では、中間データ生成モジュール２０４は、周辺部分領域とのコントラストが閾値Ｔｈ１未満であった同一色領域を、該同一色領域を記憶手段である第１のＳｔａｃｋに登録して保存する。周辺部分領域とのコントラストが閾値Ｔｈ１未満であった同一色領域は、グラデーション等の変化領域の属性（第１の属性）である可能性が高いからである。第１のＳｔａｃｋの構造例としては、図１１に示す様なリスト形式が考えられる。ここではＳｔａｃｋのエントリ１１０１からＳｔａｃｋ内に登録された各同一色領域の識別情報、サイズ情報、色情報、エッジ情報、圧縮方法を含む領域情報１１０２〜１１０４が順に連結される。そして新たな同一色領域の領域情報を追加する場合には、Ｓｔａｃｋ内の最右領域１１０４に連結し追加する構造が考えられる。
【００３３】
ステップＳ５１８では、中間データ生成モジュール２０４は、現在の同一色領域と、ステップＳ５０５でコントラストを比較した周辺部分領域とは異なる周辺部分領域（例えば左側隣接の周辺部分領域）とのコントラストＣ２（画素値の差分）を求める。そして、中間データ生成モジュール２０４は、コントラストＣ２と前述の閾値Ｔｈ１を比較し、Ｃ２≧Ｔｈ１であればステップＳ５０７に進み、Ｃ＜Ｔｈ１であればステップＳ５０６に進む。
ステップＳ５０７では、中間データ生成モジュール２０４は、第１のＳｔａｃｋに登録されている同一色領域の個数Ｎｕｍ１を取得し、Ｎｕｍ１と予め定められた閾値Ｔｈ２とを比較する。Ｎｕｍ１が所定の個数以上、すなわちＮｕｍ１≧Ｔｈ２であれば処理はステップＳ５０９に進む。また、Ｎｕｍ１が所定の個数より少ない、すなわちＮｕｍ１＜Ｔｈ２であればステップＳ５０８に進む。このように第１のＳｔａｃｋに登録されている同一色領域の個数に基づいて処理を分けているのは、グラデーション等の変化領域は多くの数の同一色領域で構成され得るという知見に基づいているからである。
【００３４】
ステップＳ５０９では、第１のＳｔａｃｋ内の領域は、グラデーション等の変化領域の属性（第１の属性）であると判断できる。そこで中間データ生成モジュール２０４は、第１のＳｔａｃｋ内の領域全体を１つの領域とし、まとめて同一の画像処理方法（例えばＬｏｓｓｙ圧縮）を選択する。そして、各領域に圧縮方法をセットし、第１のＳｔａｃｋ内の領域をＬｏｓｓｙ圧縮するために画像処理モジュール２０５に送信する。画像処理モジュール２０５では、受信した領域をまとめてＬｏｓｓｙ圧縮を行う。すなわち、同一色のラスター画像データが複数隣接して配置されている全体のラスター画像データに対してＬｏｓｓｙ圧縮がかけられる。
ステップＳ５０８では、第１のＳｔａｃｋ内の領域は、自然画の属性（第２の属性）であると判断できる。そこで中間データ生成モジュール２０４は、第１のＳｔａｃｋ内の領域を、記憶手段である第２のＳｔａｃｋに登録（保存）する。ここで、第２のＳｔａｃｋの構造例としては、前述の第１のＳｔａｃｋと同様のリスト形式が考えられる。
【００３５】
ステップＳ５１０では、中間データ生成モジュール２０４は、第１のＳｔａｃｋ内の領域をクリアする。
ステップＳ５１１では、中間データ生成モジュール２０４は、ステップＳ５０５と同様に、周辺部分領域とのコントラストＣを求め、閾値Ｔｈ１と比較し、Ｃ≧Ｔｈ１であればステップＳ５１３に進む。また、Ｃ＜Ｔｈ１であればステップＳ５１２に進み、該領域を自然画の属性（第２の属性）であると判断される。そして中間データ生成モジュール２０４は、現在の同一色領域を、第２のＳｔａｃｋに登録する。
【００３６】
ステップＳ５１３では、周辺部分領域とのコントラストが閾値Ｔｈ１以上（閾値以上）であった同一色領域は、図形領域の属性を持つと判断される。そこで中間データ生成モジュール２０４は、現在の同一色領域に対して例えばＬｏｓｓｌｅｓｓ圧縮を選択し、その選択された圧縮方法を領域の圧縮方法にセットする。
ステップＳ５１４では、画像内の全ての同一色領域に対し、ステップＳ５０３〜ステップＳ５１３の処理が完了したか否かを判断する。完了していればステップＳ５１５に進み、完了していなければ次の同一色領域に対し、ステップＳ５０３〜ステップＳ５１３の処理を行う。
なお、ステップＳ５０８及びステップＳ５１２では、第１のＳｔａｃｋ内の領域と、ステップＳ５１１のコントラスト比較の結果がＣ＜Ｔｈ１となった領域とに対し、第２の属性と判断した。しかし、それぞれ異なる属性（例えば、新たに第４、第５の属性を追加し、第４、第５の属性）と判断してもよい。
【００３７】
ステップＳ５１５では、自然画属性（第２の属性）と判断され、第２のＳｔａｃｋに登録された同一色領域の個数に応じて処理を切り替える。そのため、第２のＳｔａｃｋに登録されている領域の個数Ｎｕｍ２を取得し、この同一色領域の個数Ｎｕｍ２と予め定められた閾値Ｔｈ３との比較を行い、Ｎｕｍ２≧Ｔｈ３であればステップＳ５１７に進む。Ｎｕｍ２＜Ｔｈ３であればステップＳ５１６に進む。
【００３８】
ステップＳ５１６では、第２のＳｔａｃｋに登録されている各領域に対し、Ｌｏｓｓｌｅｓｓ圧縮を選択し、各領域に対し圧縮方法をセットする。
ステップＳ５１７では、第２のＳｔａｃｋに登録されている領域に対し、一括でＬｏｓｓｙ圧縮を選択し、各領域に対し圧縮方法をセットする。なお、ステップＳ５０９で第１のＳｔａｃｋに保存され、１つの領域としてまとめられた部分領域とは別個にまとめられる。また、本実施形態においては、Ｓ５０９で第１の属性に対して選択される画像処理と、Ｓ５１７において、第２の属性に対して選択される画像処理は共に同一の画像処理（Ｌｏｓｓｙ圧縮）が選択される。しかし、本実施形態に拠らず、第１の属性、第２の属性に選択される画像処理は異なる画像処理（例えば、異なる方式のＬｏｓｓｙ圧縮や圧縮率の異なるＬｏｓｓｙ圧縮）であっても良い。重要なのは、Ｓ５０９で第１の属性を持つと判断された領域全体と、Ｓ５１７で第２の属性を持つと判断された領域全体とに対して、別個に画像処理方法が選択されることである。
【００３９】
ステップＳ５１９では、ステップＳ５０１〜ステップＳ５１８の処理により、選択された圧縮方法に基づいて、第２のＳｔａｃｋ内の各領域と、Ｓ５１３において第３の属性と判断された各領域を、各画像処理モジュール２０５、２０６にまとめて送信する。例えば、第２のＳｔａｃｋ内の領域に対し、Ｌｏｓｓｙ圧縮方法が選択された場合は画像処理モジュール２０５、Ｌｏｓｓｌｅｓｓ圧縮方法が選択された場合は画像処理モジュール２０６に送信する。各画像処理モジュールでは、Ｓ５１９において送信された領域に対し、まとめてＬｏｓｓｙ圧縮、Ｌｏｓｓｌｅｓｓ圧縮を実施する。そして、画像処理モジュールでの圧縮処理後に、圧縮結果を受け取る。
【００４０】
また、図５のステップＳ５０３〜ステップＳ５１４の処理は、画像左上の領域から右下方向の部分領域に対し順次行われる。ステップＳ５０４〜ステップＳ５１０の処理により、１つのグラデーション画像内の部分領域が連続して第１のＳｔａｃｋに記憶される。そしてステップＳ５０７の判断の結果、ステップＳ５０９に進んだ場合には、１つの領域としてのグラデーション画像で、Ｌｏｓｓｙ圧縮を実施することが可能となる。すなわち、１つのグラデーション画像であると判断された複数の部分領域に対して、同一の画像処理方法を用いることができる。
【００４１】
具体的に、図１０（Ａ）に示す２つのグラデーション領域１００２、１００３を含む画像を例に示す。図１０（Ａ）の画像はステップＳ５０２で同一色領域に分割することにより、図１０（Ｂ）に示す部分領域１００４〜１０２０に分割される。ステップＳ５０３〜ステップＳ５１４では、矢印１０２３に示す様に左から右、上から下の順に処理されるため、各部分領域は、左上から右下の部分領域１００４、１００５、１０１８、１００７、１００８、・・・の順に処理される。そのため、グラデーション領域１００２、１００３に含まれる各部分領域は、１００７〜１０１１、１０１２〜１０１６の順に連続して処理されることになる。
【００４２】
ここで、各部分領域のサイズＳが図８（Ｃ）のＳ≧Ｓ２となり、閾値Ｔｈ１にたとえば前述のａ３が選択され、コントラスト比較において、各領域のコントラストが閾値Ｔｈ１未満と判断されたとする。この場合には、部分領域１００７〜１０１０、１０１２〜１０１５は、ステップＳ５０４、ステップＳ５０５さらにステップＳ５０６の順に処理され、それぞれ連続して第１のＳｔａｃｋに記憶される。そして、その後１０１１、１０１６の部分領域の処理では、ステップＳ５０５において右側隣接領域とのコントラストＣが閾値Ｔｈ１より大きいと判断されるため、ステップＳ５１８に進む。
【００４３】
ステップＳ５１８では、左側隣接領域とのコントラストＣ２を閾値Ｔｈ１と比較し、各部分領域のコントラストＣ２が閾値Ｔｈ１未満と判断されるため、ステップＳ５０６に進み、第１のＳｔａｃｋに記憶される。ここで、次の１０２０、１０１７の領域の処理では、ステップＳ５０５において右側隣接領域とのコントラストＣが閾値Ｔｈ１より大きいと判断されるため、ステップＳ５１８に進む。しかしステップＳ５１８では、左側隣接領域とのコントラストＣ２を閾値Ｔｈ１と比較し、Ｃ２≧Ｔｈ１と判断されるため、ステップＳ５０７に進む。ステップＳ５０７でＮｕｍ１≧Ｔｈ２となった場合には（例えば、Ｔｈ２＝４）、第１のスタック内に登録された１００７〜１０１１、１０１２〜１０１６の領域はグラデーション属性と判断される。これにより、図１０（Ａ）の２つのグラデーション領域１００２、１００３において、図１０（Ｃ）の領域１０２１、１０２２に示す様に、グラデーション領域内の同一色領域は、１つのグラデーション属性を持つ領域として判断される。そして同一の画像処理方法としてＬｏｓｓｙ圧縮処理を選択することが可能となる。
【００４４】
なお、上述した実施形態では、画像を分割した部分領域を第１、第２、第３のいずれかの属性を持つ判断し、各属性に対してＬｏｓｓｙ圧縮またはＬｏｓｓｌｅｓｓ圧縮を選択したが、これに限られるものではない。選択したい画像処理に合わせた数の属性を判断すればよい。また、選択する画像処理もＬｏｓｓｙ圧縮及びＬｏｓｓｌｅｓｓ圧縮の２つの圧縮方法に限らず、２つ以上の画像圧縮方法や、色変換などの異なる画像処理方法の選択を行ってもよい。
【００４５】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００４６】
以上、本発明の好ましい実施形態について説明したが、本発明は、これらの実施形態に限定されず、その要旨の範囲内で種々の変形および変更が可能である。
【符号の説明】
【００４７】
１０１    コンピュータ
２０４    中間データ生成モジュール
【図１】
0006521650.tif 000002
【図２】
0006521650.tif 000003
【図３】
0006521650.tif 000004
【図４】
0006521650.tif 000005
【図５】
0006521650.tif 000006
【図６】
0006521650.tif 000007
【図７】
0006521650.tif 000008
【図８】
0006521650.tif 000009
【図９】
0006521650.tif 000010
【図１０】
0006521650.tif 000011
【図１１】
0006521650.tif 000012