(57)【要約】【課題】  ドキュメントの内容によらず、データ量を抑制できる画像処理装置を提供する。【解決手段】  複数の描画要素を含んだドキュメントを処理対象として、前記描画要素の各々を、予め定めた複数の要素種別に分類し、要素種別のうち、予め定められた一部に分類された描画要素に基づいて、当該描画要素に基づいて生成されたビットマップについて第１処理と、第２処理と、のうち、どちらの処理を実行するかを選択し、選択した処理を実行する画像処理装置である。【選択図】        図１
2006270260.tif 000002
【特許請求の範囲】
【請求項１】
複数の描画要素を含んだドキュメントを処理対象として、前記描画要素の各々を、予め定めた複数の要素種別に分類する手段と、
前記要素種別のうち、予め定められた一部に分類された描画要素に基づいて、当該描画要素に基づいて生成されたビットマップから、
（１）共通する色の画素ごとに分割して処理する第１処理と、
（２）色を表すプレーンと、当該色を表すプレーンのうち元の画像を再現するために抽出するべき画素を特定するマスクプレーンとを生成する処理を行う第２処理と、
のうち、どちらの処理を実行するかを選択する選択手段と、
前記選択された第１処理又は第２処理を実行して出力する手段と、
を含むことを特徴とする画像処理装置。
【請求項２】
請求項１に記載の画像処理装置において、
前記選択手段は、前記予め定められた一部に分類された描画要素で用いられている色の数と、共通する色の画素ごとの部分ビットマップに関する面積の情報と、の少なくとも一方を用いて、前記第１処理と第２処理とのどちらを実行するかを選択することを特徴とする画像処理装置。
【請求項３】
コンピュータを用いて、
複数の描画要素を含んだドキュメントを処理対象として、前記描画要素の各々を、予め定めた複数の要素種別に分類し、
前記要素種別のうち、予め定められた一部に分類された描画要素に基づいて、当該描画要素に基づいて生成されたビットマップから、
（１）共通する色の画素ごとに分割して処理する第１処理と、
（２）色を表すプレーンと、当該色を表すプレーンのうち元の画像を再現するために抽出するべき画素を特定するマスクプレーンとを生成する処理を行う第２処理と、
のうち、どちらの処理を実行するかを選択し、
前記選択された第１処理又は第２処理を実行して出力する、
ことを特徴とする画像処理方法。
【請求項４】
コンピュータに、
複数の描画要素を含んだドキュメントを処理対象として、前記描画要素の各々を、予め定めた複数の要素種別に分類する手順と、
前記要素種別のうち、予め定められた一部に分類された描画要素に基づいて、当該描画要素に基づいて生成されたビットマップから、
（１）共通する色の画素ごとに分割して処理する第１処理と、
（２）色を表すプレーンと、当該色を表すプレーンのうち元の画像を再現するために抽出するべき画素を特定するマスクプレーンとを生成する処理を行う第２処理と、
のうち、どちらの処理を実行するかを選択する手順と、
前記選択された第１処理又は第２処理を実行して出力する手順と、
を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ドキュメントの画像データを圧縮処理する画像処理装置に関する。
【背景技術】
【０００２】
近年、コンピュータを用いたドキュメントの作成が一般的になっており、ビジネス用を始めとして数多くの種類のドキュメントがコンピュータによって電子的に生産されている。かかるドキュメントは、例えばワードプロセッサ・アプリケーションを用いて生成できる。ところが、こうしたアプリケーションによって生成したドキュメントの多くは、当該生成に用いたアプリケーションによってしか閲覧・修正できないのが一般的である。
【０００３】
そこでドキュメントをラスタライズしてビットマップ画像とすることで、生成に用いたアプリケーションを持たない利用者でも、当該ドキュメントの内容を参照可能とすることも考えられる。この場合、ビットマップ画像のデータ量は一般に大きいので、例えばランレングス圧縮を行うことにより、そのデータ量を低減することも広く行われている。
【０００４】
しかし、ドキュメントの構成要素には、例えば写真なども含まれるため、ランレングス圧縮よりもＪＰＥＧ（Joint Picture Experts Group）などの圧縮方法が適切な場合もある。そこで、処理対象となったドキュメントから、その文字部分と、写真部分とを分離して、それぞれ異なる圧縮方法で圧縮処理を行う技術がある（特許文献１）。また、文字部分と写真部分とを互いに異なる圧縮方法で処理する技術が、ＩＴＵーＴ勧告Ｔ．４４において、ＭＲＣ（Mixed Raster Content）として標準化されている。
【０００５】
このＭＲＣでは、写真等の連続階調の絵柄や、文字・線画等が混在しているときに、写真等や、文字・線画のいずれか一方を背景画像とし、他方を前景画像とする。また、これらを合成する際に、出力の画像において対応する画素を、背景・前景のどちらの画像から選択的に取り出すかを表すマスク画像を生成する。こうして、背景画像、前景画像、マスク画像の三層の画像データを生成し、各層の画像データを各々の画像の性状に適した方法で圧縮処理する。
【特許文献１】特開２００３−２４４４７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記従来の特許文献１に開示の技術やＭＲＣの技術では、次のような問題点がある。すなわち、特許文献１に開示された技術によると、文字やグラフィックス部分について色ごとに二値化したデータを生成するため、これらの部分について使用する色の数が多くなると、データ量が増大し、また画像の生成に時間がかかってしまうという問題点がある。一方、ＭＲＣの場合、単色で文字だけしかないようなドキュメントについて処理した場合にも、当該文字に係る画像データ（文字プレーン）のほかに、写真部分に係る画像データ（写真プレーン）や、マスク画像を生成することとなり、データ量が増大してしまう。
【０００７】
本発明は上記実情に鑑みて為されたもので、ドキュメントの内容によらず、データ量を抑制できる画像処理装置を提供することを、その目的の一つとする。
【課題を解決するための手段】
【０００８】
上記従来例の問題点を解決するための本発明は、画像処理装置であって、複数の描画要素を含んだドキュメントを処理対象として、前記描画要素の各々を、予め定めた複数の要素種別に分類する手段と、前記要素種別のうち、予め定められた一部に分類された描画要素に基づいて、当該描画要素に基づいて生成されたビットマップから、（１）共通する色の画素ごとに分割して処理する第１処理と、（２）色を表すプレーンと、当該色を表すプレーンのうち元の画像を再現するために抽出するべき画素を特定するマスクプレーンとを生成する処理を行う第２処理と、のうち、どちらの処理を実行するかを選択する選択手段と、前記選択された第１処理又は第２処理を実行して出力する手段と、を含むことを特徴としている。
【０００９】
ここで前記選択手段は、前記予め定められた一部に分類された描画要素で用いられている色の数と、共通する色の画素ごとの部分ビットマップに関する面積の情報と、の少なくとも一方を用いて、前記第１処理と第２処理とのどちらを実行するかを選択することとしてもよい。
【００１０】
また、本発明の一態様は画像処理方法であって、コンピュータを用いて、複数の描画要素を含んだドキュメントを処理対象として、前記描画要素の各々を、予め定めた複数の要素種別に分類し、前記要素種別のうち、予め定められた一部に分類された描画要素に基づいて、当該描画要素に基づいて生成されたビットマップから、（１）共通する色の画素ごとに分割して処理する第１処理と、（２）色を表すプレーンと、当該色を表すプレーンのうち元の画像を再現するために抽出するべき画素を特定するマスクプレーンとを生成する処理を行う第２処理と、のうち、どちらの処理を実行するかを選択し、前記選択された第１処理又は第２処理を実行して出力する、ことを特徴としている。
【００１１】
さらに、本発明の別の態様は、プログラムであって、コンピュータに、複数の描画要素を含んだドキュメントを処理対象として、前記描画要素の各々を、予め定めた複数の要素種別に分類する手順と、前記要素種別のうち、予め定められた一部に分類された描画要素に基づいて、当該描画要素に基づいて生成されたビットマップから、（１）共通する色の画素ごとに分割して処理する第１処理と、（２）色を表すプレーンと、当該色を表すプレーンのうち元の画像を再現するために抽出するべき画素を特定するマスクプレーンとを生成する処理を行う第２処理と、のうち、どちらの処理を実行するかを選択する手順と、前記選択された第１処理又は第２処理を実行して出力する手順と、を実行させることを特徴としている。
【発明を実施するための最良の形態】
【００１２】
本発明の実施の形態について図面を参照しながら説明する。本発明の実施の形態に係る画像処理装置は、図１に示すように制御部１１と、記憶部１２と、操作部１３と、表示部１４とを含んで構成されている。
【００１３】
制御部１１は、ＣＰＵ等であり、記憶部１２に格納されているプログラムに従って動作し、処理対象となったドキュメント（ここでは、複数の描画要素を含む、アプリケーションデータであるとする）から、複数のプレーンの画像データを生成して記憶部１２に格納してファイルとして出力し、あるいは、図示しない通信部を介してネットワーク上の他のコンピュータへと出力する。この制御部１１の具体的な処理の内容例については、後に述べる。
【００１４】
記憶部１２は、ＲＡＭやＲＯＭ等の記憶素子、及び／又はハードディスクを含んで構成されている。この記憶部１２には、制御部１１によって実行されるプログラムが格納されている。また、この記憶部１２は、制御部１１のワークメモリとしても動作する。
【００１５】
操作部１３は、キーボードやマウス等であり、利用者の指示操作を受け入れて、当該指示操作の内容を制御部１１に出力する。表示部１４は、ディスプレイ等であり、制御部１１から入力される指示に従って、情報を表示する。
【００１６】
ここで制御部１１の処理の内容について説明する。制御部１１が実行するプログラムは、機能的には、図２に示すように、ラスタライズ部２１と、処理選択部２２と、背景画像生成部２３と、第１前景画像生成部２５と、第２前景画像生成部２６と、を含んで構成されている。
【００１７】
ラスタライズ部２１は、処理対象となるドキュメント（アプリケーションデータ等）の入力を受けて、当該ドキュメントの各ページについてラスタライズしたビットマップに関係する画像データ（以下、単に画像データと呼ぶ）を生成する。
【００１８】
本実施の形態のラスタライズ部２１は、ビットマップに関係する画像データとして、一般的なビットマップデータを生成してもよいし、次のようにラインごとの有意画素の存在範囲を規定するデータ（エッジ配列データ）を生成してもよい。なお、このエッジ配列データについては、特開２００３−３３４３４１号公報に開示されたものと同様のものであるので、以下では、その概要を説明する。
【００１９】
本実施の形態では、ラスタライズ部２１は、一般的なワードプロセッサや、レイアウトソフトウエア等によって生成されるドキュメントを処理対象とする。こうしたドキュメントは、互いに重なり合う部分を有する複数の描画要素を含む。具体的な例を挙げると、図３に示すように、四角形の図形オブジェクトＳ上に、「Ａ」なる文字オブジェクトＬが重ね合わせられ、さらに、この文字オブジェクトＬ上に、三角形の図形オブジェクトＴが重なりあっている…というように描画されている。つまり、模式的には、図４に示すように、四角形オブジェクトを最背面として、この上に文字オブジェクト、さらにその上に三角形オブジェクトが最前面として描画されており、各オブジェクトの形状の情報は、隠蔽されている部分も含めて完全な状態で保持されている。アプリケーションでは、この重なり合いの順序や、重なり合う範囲等を調整できるようになっているのが一般的である。
【００２０】
ラスタライズ部２１は、まず、この処理対象となったドキュメントについて、当該ドキュメントに含まれる文字部分や写真部分等の各描画要素について、文字・線画と写真とに分類する。なお、例えば線画について、その形状や色、位置的な連続性、色変化の連続性などの情報に基づいて、さらに「細線」，…などと細分類してもよい。また、異なる色を連続的に配置して表現する「グラデーション」部分を別途特定して、当該部分を異なる描画要素として扱うようにしてもよい。具体的には、各オブジェクトについて分類結果の情報を関連付ける。次にラスタライズ部２１は、各描画要素について、分類結果に応じて所定の処理（例えば写真であれば、コントラストの調整など、分類ごとに予め定められた処理）を実行する。
【００２１】
次いでラスタライズ部２１は、各描画要素を中間コード情報に変換する。ここで中間コードは、各描画要素の形状を、Ｙ座標（副走査方向）の値を用いずにＸ座標（主走査方向）の開始・終了点座標、及び高さ等とで表現した情報（基本情報）と、Ｙ座標値の情報とを関連付けたものである。
【００２２】
この中間コードのうち、基本情報は、例えば図形であれば、図形の形状ごとにその内容が予め定められている。その一例として台形についての基本情報Ｂは、図５に示すように、高さＨと、左辺の始点Ｘ座標ＳＸ、左辺の傾きＳSlant、右辺の始点Ｘ座標ＥＸ、右辺の傾きＥSlantを含む。全体として台形の中間コードは、これに基点となる位置のＹ座標値Ｙとを関連付けたものとなる。なお、例えば星型のような図形については、その屈曲点を含むラインで分割することで、図６に示すように、予め定められている図形に分割して扱う（図６では、三角形と台形とに分割して扱う例を示している）。この中間コードを利用すると、図形全体の外接矩形の座標値が容易に取得できる。本実施の形態では、中間コードはドキュメントのページごとに生成されるものとする。ラスタライズ部２１は、この中間コードの情報を処理選択部２２に出力する。
【００２３】
一方、ラスタライズ部２１は、ページごとの中間コードからエッジ配列データを生成する。このエッジ配列データは、ページの上端のラインから順に、１ラインずつ生成される。このエッジ配列データは、ランレングス圧縮として知られる圧縮方法におけるのと類似した表現方法であり、ラインに含まれる有意画素の連続部分（色や描画要素の連続する部分）ごとに、図７に示すように、開始座標ＳＸと、終点座標ＥＸと、当該有意画素に係る描画要素の要素種別（文字・線画と写真との別など）を表すタグ情報Ｔと、有意画素の色を表す色値Ｃとを基本的な情報として含むものである。
【００２４】
例えば、図２に示した画像を例とすると、位置Ｙ１でのエッジ配列データは、図８に示すようなものとなる。なお、写真部分については、色値は、例えば色値の配列である画素値列の格納先アドレスを関連付けることとしておけばよい。また、このエッジ配列には、写真部分等の情報として、例えば画像の変倍率等の情報を含んでもよい。
【００２５】
ラスタライズ部２１は、こうして生成したエッジ配列データのセットを、ページごとに出力する。
【００２６】
処理選択部２２は、ラスタライズ部２１から中間コードの情報の入力を受けて、エッジ配列データを、第１前景画像生成部２５と、第２前景画像生成部２６とのどちらに出力するかを決定する。
【００２７】
処理選択部２２は、まず、各中間コードに対応するドキュメント上の描画要素の情報から、描画要素の色に関する情報を取得する。そして、色ごとに各中間コードを分類する。そして、各色ごとの中間コードのすべてを内包する矩形を特定する。例えば、各中間コードの外接矩形の情報を生成しておき、同じ色の図形に係る中間コードの各外接矩形の左上端のＸ座標とＹ座標及び右下端のＸ座標及びＹ座標のうちから、Ｘ座標値の最小値Ｘminと最大値Ｘmax、及びＹ座標値の最小値Ｙminと最大値Ｙmaxを選択し、（Ｘmin，Ｙmin）から（Ｘmax，Ｙmax）までの対角線により規定される矩形を、上記矩形として特定すればよい。この方法によると、同じ色の図形に関する中間コードをすべて内包する矩形であって、最小の矩形（内包矩形）を特定することとなる。
【００２８】
また、この内包矩形を特定する処理の過程で、エッジ配列データを、第１前景画像生成部２５と、第２前景画像生成部２６とのどちらに出力するかを決定する。
【００２９】
この処理選択部２２の処理の流れについて、図９を参照しながら説明する。また、ここでは前景となるべき要素種別の一部が、例えば図１０に示すようなプレーン設定テーブルとして予め定められているものとする。また、処理選択部２２は、色と、当該色に係る中間コードの内包矩形を特定する情報と、面積とを関連付けるテーブル（図形情報テーブル）を初期化する。
【００３０】
処理選択部２２は、入力された中間コードの一つ（過去に選択されていないもの）を注目コードとして選択する（Ｓ１）。そして当該選択した注目コードのタグ情報を参照して、前景となるべき要素種別であるか否かを調べる（Ｓ２）。ここで前景となるべき要素種別でない場合（Ｎｏの場合）は、処理Ｓ９に移行する（Ｂ）。
【００３１】
一方、処理Ｓ２において、注目コードが前景となるべき要素種別であった場合（Ｙｅｓの場合）は、当該注目コードの外接矩形の情報を生成する（Ｓ３）。処理選択部２２は、注目コードに対応する描画要素の色の情報を取得し、当該取得した色の情報に関連付けられたエントリーが図形情報テーブル上に登録されているか否かを調べる（Ｓ４）。ここでかかるエントリーが図形情報テーブル上に登録されている場合（Ｙｅｓの場合）は、当該エントリー（注目エントリー）に含まれる内包矩形の座標情報（左上隅座標（ＳＸ，ＳＹ）と右下隅座標（ＥＸ，ＥＹ）など）を取得し、次のようにして内包矩形の情報を更新する（Ｓ５）。
【００３２】
すなわち、注目コードの外接矩形の情報として、左上隅座標（Ｘlt，Ｙlt）と右下隅座標（Ｘrb，Ｙrb）が生成されている場合、
（１）Ｘlt＜ＳＸの場合、ＳＸ＝Ｘltとし、
（２）Ｘrb＞ＥＸの場合、ＥＸ＝Ｘrbとし、
（３）Ｙlt＜ＳＹの場合、ＳＹ＝Ｙltとし、
（４）Ｙrb＞ＥＹの場合、ＥＹ＝Ｙrbとする。
【００３３】
また、更新後の内包矩形の面積（ＥＸ−ＳＸ）×（ＥＹ−ＳＹ）を演算して、注目エントリーにおける面積の値を更新する（Ｓ６）。この内包矩形の面積は、いわば、共通する色の画素ごとの部分ビットマップに関する面積の情報である。
【００３４】
処理選択部２２は、更新後の面積が、予め定めた面積しきい値を越えているか否かを調べ（Ｓ７）、更新後の面積が面積しきい値を越えている場合（Ｙｅｓの場合）は、エッジ配列データを第２前景画像生成部２６に出力すると決定し（Ｓ８）、処理を終了する。
【００３５】
一方、処理Ｓ７において、更新後の面積が面積しきい値を越えていない場合（Ｎｏの場合）は、処理選択部２２は、未だ注目コードとして選択していない中間コード（未選択コード）があるか否かを調べ（Ｓ９）、未選択コードがある場合（Ｙｅｓの場合）は、処理Ｓ１に戻って処理を続ける。また、処理Ｓ９において、未選択コードがなければ（Ｎｏならば）、エッジ配列データを第１前景画像生成部２５に出力すると決定し（Ｓ１０）、処理を終了する。
【００３６】
また処理Ｓ４において、処理Ｓ３で取得した色の情報に関連付けられたエントリーが図形情報テーブル上に登録されていない場合（Ｎｏの場合）、処理Ｓ３で取得した色の情報と、注目コードの外接矩形の情報と、その面積とを関連付けて、図形情報テーブルに登録する（Ｓ１１）。処理選択部２２は、図形情報テーブル上のエントリーの数が、予め定めた色数しきい値を越えたか否かを調べ（Ｓ１２）、色数しきい値を越えている場合（Ｙｅｓの場合）は、処理Ｓ８に移行する（Ａ）。また、処理Ｓ１２において、図形情報テーブル上のエントリーの数が、予め定めた色数しきい値を越えていない場合（Ｎｏの場合）、処理Ｓ９に移行して処理を続ける。
【００３７】
この処理により、特定の色に関連する画像を取り囲む面積が面積しきい値を越える場合や、前景として含まれるべき描画要素の色の数が所定の色数しきい値を越える場合と、そうでない場合とで、前景画像の生成方法を変更することとしている。
【００３８】
背景画像生成部２３は、図１０に示したプレーン設定テーブルを参照して、ラスタライズ部２１が出力する中間コードのうち、背景プレーンとなるべき中間コードを選択する。そして、選択した中間コードを参照して、背景プレーンとなるべき描画要素を、ドキュメントのデータから抽出して、背景プレーンのデータとして出力する。例えば、この背景プレーンとなるべき中間コードは、ドキュメントのページの中の一部領域を指し示している場合がある。この場合、その領域を取り囲む矩形領域をイメージデータとして抽出して、背景プレーンのデータとして出力してもよい。
【００３９】
第１前景画像生成部２５は、エッジ配列データの入力を受けると、前景となるべき要素種別の描画要素について、色の共通する描画要素に分割して処理を行うものである。具体的には、色が共通する描画要素ごとに、二値化した二値化ビットマップデータと、色の情報と、描画位置を特定する情報とを関連付けた情報を生成する。より具体的な処理例としては、この第１前景画像生成部２５は、Ｙ＝０（ページの上辺側）から順に１ラインずつ、ラスタライズ部２１が出力するエッジ配列データを取得する。そして、取得したエッジ配列データのうち、タグ情報が前景となるべき要素種別となっているものを選択する。第１前景画像生成部２５は、この処理を１ページ分のラインについて行ってもよいし、複数に区切って行ってもよい。以下では、図１１（ａ）に示すようなドキュメントのデータについて、１ページ分のラインについて上記処理を行った場合を例として説明する。図１１（ａ）に対応するエッジ配列データは、図１１（ｂ）のようになる。なお、図１１では、予め前景となるべき要素種別以外の描画要素を除いており、また、エッジ配列データのうち、Ｘ座標の開始位置ＳＸ及び終点位置ＥＸのみを示している。
【００４０】
第１前景画像生成部２５は、図１１（ｂ）のようにして生成したエッジ配列データの列に対して、Ｙ＝０のラインからラスタスキャンの順序（Ｘ＝０からＸMaxへとラインを走査し、次いでＹを１つインクリメントして、ラインの走査を繰り返す順序）に従って、最初に処理するべきエッジ配列データを検出する。
【００４１】
図１１（ｂ）の場合、Ｙ＝１のラインにおいて、（ＳＸ，ＥＸ）＝（１，３）の黒色のエッジ配列データが見いだされる。第１前景画像生成部２５は、このエッジ配列データの色を注目色とする。以下、Ｙをインクリメントしながら、各ラインについて注目色のエッジ配列データを選択していく（例えば黒色について図１１（ｃ））。この選択した結果のデータセットは、バイナリ画像をランレングス表現したものと等価なデータとなっている。また、このデータセットによって表される画像に外接する矩形の座標は、各ラインでのＳＸのうちの最小値、及び各ラインでのＥＸのうちの最大値、Ｙ座標の最小値、最大値を見いだすことで画定できる。具体的な例として、図１１（ｃ）に対しては、左上頂点の座標が（１，１）、高さ及び幅を表す情報が（４，５）となる矩形が画定できる。
【００４２】
なお、注目色のエッジ配列データが見いだせないラインが、予め定めた閾値以上続いたときに、当該ラインで、矩形を分割するようにしてもよい。この場合は、各々に外接する矩形を生成することになる。例えば閾値を「１」とするとき、左上頂点の座標が（１，１）、高さ及び幅が（２，３）となる第１の矩形と、左上頂点の座標が（２，４）、高さ及び幅が（２，３）となる第２の矩形とが画定される。
【００４３】
第１前景画像生成部２５は、こうして注目色について、１ページ分の処理を終了すると、次に、未だ注目色として選択していない色に関連するエッジ配列データを探索して、処理を繰り返す。そして、すべてのエッジ配列データについて処理を完了すると、各色ごとに色の情報と、エッジ配列データのうち、有意画素の範囲を表す情報（Ｘ座標の開始位置ＳＸ及び終了位置ＥＸ）、ラインのＹ座標値とを関連付けた情報を前景プレーンの画像データとして出力する。
【００４４】
なお、対称とするエッジ配列データの検出処理を行う際に、既に処理したエッジ配列データであるかどうかの判別を行う方法として、例えば、処理済みのエッジ配列データの色情報を、最初に選択した注目色で置き換える方法がある。図１１の例では、最初の注目色は黒色だったので、処理が終了する毎にエッジ配列データの色を黒色に変換する。この処理によって、同じエッジ配列データを複数回処理してしまうことを防止する。
【００４５】
以上の処理により、第１前景画像生成部２５は、共通する色ごとのビットマップ画像について、当該ビットマップを二値化した二値化ビットマップデータと、色の情報と、描画位置を特定する情報とを含む、前景プレーンの画像データを生成して出力する。
【００４６】
第２前景画像生成部２６は、エッジ配列データの入力を受けると、当該入力されるエッジ配列データに基づいて、ＭＲＣにおけるのと同様の前景プレーンの画像データ及びマスクプレーンの画像データを生成する。この第２前景画像生成部２６は、ＭＲＣの処理として広く知られた処理を利用できる。
【００４７】
この処理の結果、具体例として、図１１（ａ）に示された画像に対しては、図１１（ｄ）に示すように、前景に含めるべき描画要素を二値化した（例えば描画要素の各画素を「黒」とした）マスクプレーンのデータと、図１１（ｅ）に示すように、このマスクプレーンにおいて有意画素となる部分を取り出したときに、元の前景に含めるべき描画要素が再現されるようにした色のデータ（前景プレーン）とが生成される。換言すると、このマスクプレーンのデータは、当該色を表すプレーンのうち元の画像を再現するために抽出するべき画素を特定するデータである。
【００４８】
エッジ配列データを用いてこれらのデータを生成する場合、まずマスクプレーンについては、対称となるエッジ配列データについて、その色の情報を「黒」としたデータを生成すればよい。
【００４９】
また、前景プレーンについては、前景に含めるべき描画要素に係るエッジ配列データそのものであってもよいし、次のような規則で生成してもよい。すなわち、
（１）そのラインにおいて最初のエッジ配列データ（開始点が最も左端にあるエッジ配列データ）と最後のエッジ配列データ（終了点が最も右端にあるエッジ配列データ）については、それぞれそのＸ座標値を、画像データの境界値まで拡張する。つまり、図１１（ｂ）に示すＹ＝２のラインにおいては、黒色のエッジ配列データが左端、赤色のエッジ配列データが右端に相当するので、それぞれ画像データの境界値まで拡張し、黒のエッジ配列データのＳＸを「０」とし、赤のエッジ配列データのＥＸを「６」とする。
（２）前景画像とすべきエッジ配列データとエッジ配列データの間が背景画像となる部分（すなわちマスクプレーンでオフ（「白」）となっている部分）は、所定のエッジ配列データの色でその隙間を埋める。例えばスキャンライン方向に直前の色で埋めるようにすればよい。
【００５０】
図１１（ｅ）の前景プレーンは、これらの規則を適用して生成されたものである。
【００５１】
本実施の形態の画像処理装置によると、ドキュメントのデータから、文字・線画と、写真等とを分離して別のプレーンの画像データとし、各プレーンのデータをそれぞれ異なる方法で圧縮する処理を行う場合に、例えば文字・線画のプレーンを生成するにあたり、次のように処理をすることになる。
【００５２】
すなわち、このプレーンの生成方法として、
（１）共通する色ごとの画素群（ビットマップデータ）に分け、用いられている色ごとに、ビットマップデータを二値化した二値化ビットマップと、色の情報と、描画位置を特定する情報とのセットを生成する第１の方法と、
（２）ＭＲＣにおけるのと同様に、文字・線画のビットマップ全体を二値化したマスクプレーンを生成し、色については、例えばスキャンライン方向に次の文字線画の画素を見いだすまでは、前回見いだされた文字・線画の画素値に設定するなどして、いわば穴埋めした色のプレーンを前景プレーンとして生成する第２の方法（前景プレーンのうち、マスクプレーン上で有意な画素となっている部分だけを抽出すると、元の画像となる）と、
のいずれかの方法を選択的に用いる。この選択は、例えば次のようにする。すなわち、仮に第１の方法を採用した場合に、色ごとに分けたときの各二値化ビットマップの占める面積（例えば各二値化ビットマップを囲む外接矩形の面積の総和）や、用いられている色の数が、予め定めたしきい値（面積しきい値及び色数しきい値）を越える場合には、第１の方法よりも第２の方法で生成する方がデータ量（や演算時間）を低減できるものとして、第２の方法を選択し、それ以外の場合に第１の方法を選択する。これにより、本実施の形態によると、ドキュメントの内容によらず、データ量を抑制できる。
【００５３】
そして、選択した方法によって生成した前景プレーンのデータ（マスクプレーンが生成される場合は、当該マスクプレーンのデータをも含む）と、別途生成した背景プレーンのデータとを出力する。これらの各プレーンのデータは、それぞれの圧縮処理に供される。また、圧縮した結果を１つのファイルにまとめてもよい。
【００５４】
こうした画像データを受けた側では、まず背景プレーンの画像を描画する。そして前景プレーンのデータとしてマスクプレーンが含まれているか否かを調べ、マスクプレーンが含まれていれば、第２の方法で前景プレーンが生成されたものとして、ＭＲＣと同様に、前景プレーンのうち、マスクプレーン上で有意な画素となっている部分だけを抽出して元の画像を再現し、この再現した画像を、背景の画像上に重ね合わせて描画する。
【００５５】
また、マスクプレーンが含まれていなければ、第１の方法で前景プレーンが生成されたものとして、各情報のセットについて、当該セットに含まれる二値化ビットマップを、色の情報に示される色のビットマップに変換し、次いで、当該変換後のビットマップを、背景の画像上で特定された描画位置に、重ね合わせて描画していく。各色のセットについてこの処理を行うことで、元の画像が再現される。
【００５６】
なお、プレーン設定テーブルは、図１０に示した例に限られない。このプレーン設定テーブルは、複数の候補を予め用意しておき、それぞれについて「高圧縮」、「高精彩」、「高画質」などといったキーワードに関連づけておいてもよい。この場合、利用者が、いずれかのキーワードを選択することで、利用するプレーン設定テーブルが選択される。
【図面の簡単な説明】
【００５７】
【図１】本発明の実施の形態に係る画像処理装置の例を表す構成ブロック図である。
【図２】本発明の実施の形態に係る画像処理装置の例を表す機能ブロック図である。
【図３】本発明の実施の形態に係る画像処理装置が処理対象とするドキュメントのデータの例を表す説明図である。
【図４】本発明の実施の形態に係る画像処理装置が処理対象とするドキュメントのデータの構造の概要例を表す説明図である。
【図５】中間コードの情報の生成例を表す説明図である。
【図６】中間コードの情報の生成に係る処理例を表す説明図である。
【図７】中間コードの情報の構造例を表す説明図である。
【図８】中間コードの生成例を表す説明図である。
【図９】本発明の実施の形態に係る画像処理装置における処理方法の選択処理の例を表すフローチャート図である。
【図１０】プレーン設定テーブルの例を表す説明図である。
【図１１】前景プレーンの画像データを生成する処理を例を表す説明図である。
【符号の説明】
【００５８】
１１  制御部、１２  記憶部、１３  操作部、１４  表示部、２１  ラスタライズ部、２２  処理選択部、２３  背景画像生成部、２５  第１前景画像生成部、２６  第２前景画像生成部。
【図１】
2006270260.tif 000003
【図２】
2006270260.tif 000004
【図３】
2006270260.tif 000005
【図４】
2006270260.tif 000006
【図５】
2006270260.tif 000007
【図６】
2006270260.tif 000008
【図７】
2006270260.tif 000009
【図８】
2006270260.tif 000010
【図９】
2006270260.tif 000011
【図１０】
2006270260.tif 000012
【図１１】
2006270260.tif 000013