(57)【要約】【課題】ページ記述言語形式の元データが表わす画像、及び原稿を読み取って得られた読取画像の差分を抽出するときのデータ変換に要する時間を短縮する。【解決手段】中間データ生成部２２は、ページ記述言語形式の元データから、描画オブジェクトの重なりが除去された中間データを生成し、二値化処理部２６は、原稿を読み取って得られた多値のビットマップデータに二値化処理を施して、二値のビットマップデータを生成し、ビットマップデータ生成部２４は、前記中間データの描画命令又は前記元データの描画命令が表わす描画オブジェクトに、最小画素値及び最大画素値以外の画素が含まれない場合に、前記中間データから直接、二値のビットマップデータを生成し、差分抽出部２８は、ビットマップデータ生成部２４により生成された二値のビットマップデータと、二値化処理部２６により生成された二値のビットマップデータとを比較して差分を抽出する。【選択図】図２
2014007595.tif 000002
【特許請求の範囲】
【請求項１】
（中間調なし）
ページ記述言語形式の元データから、描画オブジェクトの重なりが除去された中間データを生成する第１生成手段と、
原稿を読み取って得られた多値のビットマップデータに二値化処理を施して、二値のビットマップデータを生成する第２生成手段と、
前記中間データの描画命令又は前記元データの描画命令が表わす描画オブジェクトに、最小画素値及び最大画素値以外の画素が含まれない場合に、前記中間データから直接、二値のビットマップデータを生成する第３生成手段と、
前記第２生成手段により生成された二値のビットマップデータと、第３生成手段により生成された二値のビットマップデータとを比較して差分を抽出する差分抽出手段と、
を備えた情報処理装置。
【請求項２】
（中間調あり）
前記第３生成手段は、前記中間データの描画命令又は前記元データの描画命令が表わす描画オブジェクトに、最小画素値及び最大画素値以外の画素が含まれる場合には、前記中間データから多値のビットマップデータを生成した後に該多値のビットマップデータに前記変換手段の二値化処理の方式と同じ方式の二値化処理を施して二値のビットマップデータを生成する
請求項１に記載の情報処理装置。
【請求項３】
（追加１：中間調あり）
ページ記述言語形式の元データから、描画オブジェクトの重なりが除去された中間データを生成する第１生成手段と、
原稿を読み取って得られた多値のビットマップデータに二値化処理を施して、二値のビットマップデータを生成する第２生成手段と、
前記中間データの描画命令又は前記元データの描画命令が表わす描画オブジェクトに、最小画素値及び最大画素値以外の画素が含まれる場合に、前記中間データから多値のビットマップデータを生成した後に該多値のビットマップデータに前記変換手段の二値化処理の方式と同じ方式の二値化処理を施して二値のビットマップデータを生成する第３生成手段と、
前記第２生成手段により生成された二値のビットマップデータと、第３生成手段により生成された二値のビットマップデータとを比較して差分を抽出する差分抽出手段と、
を備えた情報処理装置。
【請求項４】
（追加２：中間調なし）
ページ記述言語形式の元データから、描画オブジェクトの重なりが除去された中間データを生成する第１生成手段と、
原稿を読み取って得られた多値のビットマップデータに二値化処理を施して、二値のビットマップデータを生成する第２生成手段と、
前記中間データの描画命令又は前記元データの描画命令が表わす描画オブジェクトに、中間調の画素が含まれない場合に、前記中間データから直接、二値のビットマップデータを生成する第３生成手段と、
前記第２生成手段により生成された二値のビットマップデータと、第３生成手段により生成された二値のビットマップデータとを比較して差分を抽出する差分抽出手段と、
を備えた情報処理装置。
【請求項５】
（中間調なし）
コンピュータを、
ページ記述言語形式の元データから、描画オブジェクトの重なりが除去された中間データを生成する第１生成手段、
原稿を読み取って得られた多値のビットマップデータに二値化処理を施して、二値のビットマップデータを生成する第２生成手段、
前記中間データの描画命令又は前記元データの描画命令が表わす描画オブジェクトに、最小画素値及び最大画素値以外の画素が含まれない場合に、前記中間データから直接二値のビットマップデータを生成する第３生成手段、及び
前記第２生成手段により生成された二値のビットマップデータと、第３生成手段により生成された二値のビットマップデータとを比較して差分を抽出する差分抽出手段、
として機能されるためのプログラム。
【請求項６】
（追加３：中間調あり）
コンピュータを、
ページ記述言語形式の元データから、描画オブジェクトの重なりが除去された中間データを生成する第１生成手段、
原稿を読み取って得られた多値のビットマップデータに二値化処理を施して、二値のビットマップデータを生成する第２生成手段、
前記中間データの描画命令又は前記元データの描画命令が表わす描画オブジェクトに、最小画素値及び最大画素値以外の画素が含まれる場合に、前記中間データから多値のビットマップデータを生成した後に該多値のビットマップデータに前記変換手段の二値化処理の方式と同じ方式の二値化処理を施して二値のビットマップデータを生成する第３生成手段、及び
前記第２生成手段により生成された二値のビットマップデータと、第３生成手段により生成された二値のビットマップデータとを比較して差分を抽出する差分抽出手段、
として機能されるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及びプログラムに関する。
【背景技術】
【０００２】
特許文献１には、ＰＤＬ（ページ記述言語）を解釈する手段を有し、文字の背景のグラフィックの色値と前記グラフィック部の上に描画される文字の色値を比較する比較手段、及び同じ色値の場合は文字の属性をグラフィックに変更する手段を有する画像処理装置が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−１２９３４２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明は、ページ記述言語形式の元データが表わす画像、及び原稿を読み取って得られた読取画像の差分を抽出するために、該元データから二値のビットマップデータを生成する際に、常に中間データから多値のビットマップデータを生成した後に該多値のビットマップデータから二値のビットマップデータを生成する場合に比べて、データ変換に要する時間を短縮することができる情報処理装置、及びプログラムを得ることを目的とする。
【課題を解決するための手段】
【０００５】
請求項１の発明の情報処理装置は、ページ記述言語形式の元データから、描画オブジェクトの重なりが除去された中間データを生成する第１生成手段と、原稿を読み取って得られた多値のビットマップデータに二値化処理を施して、二値のビットマップデータを生成する第２生成手段と、前記中間データの描画命令又は前記元データの描画命令が表わす描画オブジェクトに、最小画素値及び最大画素値以外の画素が含まれない場合に、前記中間データから直接、二値のビットマップデータを生成する第３生成手段と、前記第２生成手段により生成された二値のビットマップデータと、第３生成手段により生成された二値のビットマップデータとを比較して差分を抽出する差分抽出手段と、を備えている。
【０００６】
請求項２の発明は、請求項１に記載の情報処理装置において、前記第３生成手段が、前記中間データの描画命令又は前記元データの描画命令が表わす描画オブジェクトに、最小画素値及び最大画素値以外の画素が含まれる場合には、前記中間データから多値のビットマップデータを生成した後に該多値のビットマップデータに前記変換手段の二値化処理の方式と同じ方式の二値化処理を施して二値のビットマップデータを生成するようにしてもよい。
【０００７】
請求項３の発明の情報処理装置は、ページ記述言語形式の元データから、描画オブジェクトの重なりが除去された中間データを生成する第１生成手段と、原稿を読み取って得られた多値のビットマップデータに二値化処理を施して、二値のビットマップデータを生成する第２生成手段と、前記中間データの描画命令又は前記元データの描画命令が表わす描画オブジェクトに、最小画素値及び最大画素値以外の画素が含まれる場合に、前記中間データから多値のビットマップデータを生成した後に該多値のビットマップデータに前記変換手段の二値化処理の方式と同じ方式の二値化処理を施して二値のビットマップデータを生成する第３生成手段と、前記第２生成手段により生成された二値のビットマップデータと、第３生成手段により生成された二値のビットマップデータとを比較して差分を抽出する差分抽出手段と、を備えている。
【０００８】
請求項４の発明の情報処理装置は、ページ記述言語形式の元データから、描画オブジェクトの重なりが除去された中間データを生成する第１生成手段と、原稿を読み取って得られた多値のビットマップデータに二値化処理を施して、二値のビットマップデータを生成する第２生成手段と、前記中間データの描画命令又は前記元データの描画命令が表わす描画オブジェクトに、中間調の画素が含まれない場合に、前記中間データから直接、二値のビットマップデータを生成する第３生成手段と、前記第２生成手段により生成された二値のビットマップデータと、第３生成手段により生成された二値のビットマップデータとを比較して差分を抽出する差分抽出手段と、を備えている。
【０００９】
請求項５の発明は、コンピュータを、ページ記述言語形式の元データから、描画オブジェクトの重なりが除去された中間データを生成する第１生成手段、原稿を読み取って得られた多値のビットマップデータに二値化処理を施して、二値のビットマップデータを生成する第２生成手段、前記中間データの描画命令又は前記元データの描画命令が表わす描画オブジェクトに、最小画素値及び最大画素値以外の画素が含まれない場合に、前記中間データから直接二値のビットマップデータを生成する第３生成手段、及び前記第２生成手段により生成された二値のビットマップデータと、第３生成手段により生成された二値のビットマップデータとを比較して差分を抽出する差分抽出手段、として機能されるためのプログラムである。
【００１０】
請求項６の発明は、コンピュータを、ページ記述言語形式の元データから、描画オブジェクトの重なりが除去された中間データを生成する第１生成手段、原稿を読み取って得られた多値のビットマップデータに二値化処理を施して、二値のビットマップデータを生成する第２生成手段、前記中間データの描画命令又は前記元データの描画命令が表わす描画オブジェクトに、最小画素値及び最大画素値以外の画素が含まれる場合に、前記中間データから多値のビットマップデータを生成した後に該多値のビットマップデータに前記変換手段の二値化処理の方式と同じ方式の二値化処理を施して二値のビットマップデータを生成する第３生成手段、及び前記第２生成手段により生成された二値のビットマップデータと、第３生成手段により生成された二値のビットマップデータとを比較して差分を抽出する差分抽出手段、として機能されるためのプログラムである。
【発明の効果】
【００１１】
請求項１に記載の発明によれば、常に中間データから多値のビットマップデータを生成した後に該多値のビットマップデータから二値のビットマップデータを生成する場合に比べて、データ変換に要する時間を短縮することができる。
【００１２】
請求項２に記載の発明によれば、最小画素値及び最大画素値以外の画素が含まれる画像について中間データから二値のビットマップデータを直接生成して差分を抽出する場合に比べて、差分抽出精度が低下しない。
【００１３】
請求項３に記載の発明によれば、最小画素値及び最大画素値以外の画素が含まれる画像について中間データから二値のビットマップデータを直接生成して差分を抽出する場合に比べて、差分抽出精度が低下しない。
【００１４】
請求項４に記載の発明によれば、常に中間データから多値のビットマップデータを生成した後に該多値のビットマップデータから二値のビットマップデータを生成する場合に比べて、データ変換に要する時間を短縮することができる。
【００１５】
請求項５に記載の発明によれば、常に中間データから多値のビットマップデータを生成した後に該多値のビットマップデータから二値のビットマップデータを生成する場合に比べて、データ変換に要する時間を短縮することができる。
【００１６】
請求項６に記載の発明によれば、最小画素値及び最大画素値以外の画素が含まれる画像について中間データから二値のビットマップデータを直接生成して差分を抽出する場合に比べて、差分抽出精度が低下しない。
【図面の簡単な説明】
【００１７】
【図１】情報処理装置、端末装置、及び印刷装置の接続状態を示す図である。
【図２】情報処理装置の構成を機能的に示した機能構成図である。
【図３】エッジリスト形式の中間データに含まれるエッジデータを模式的に表わした図である。
【図４】（Ａ）は、エッジリスト形式の中間データを模式的に示す図であり、（Ｂ）は、（Ａ）のエッジリストにより表わされる画像を模式的に示す図である。
【図５】情報処理装置のハードウェア構成例を示す図である。
【図６】第１の実施形態のビットマップデータ生成部で実行される処理ルーチンの流れを示すフローチャートである。
【図７】ビットマップデータの生成から差分抽出までの流れを模式的に示す模式図である。
【図８】第２の実施形態のビットマップデータ生成部で実行される処理ルーチンの流れを示すフローチャートである。
【発明を実施するための形態】
【００１８】
以下、図面を参照して、実施形態について詳細に説明する。
【００１９】
［第１の実施形態］
【００２０】
第１の実施形態において、図１に示すように、情報処理装置１０、及び端末装置１２ａ、１２ｂ、１２ｃが通信手段１６を介して接続されている。なお、通信手段１６は、公衆回線であってもよいし、インターネット、ＬＡＮ（Local Area Network)、ＷＡＮ(Wide Area Network)等のネットワークであってもよい。また、通信手段を、無線の通信手段としてもよいし、有線の通信手段としてもよい。
【００２１】
端末装置１２ａ、１２ｂ、１２ｃは、アプリケーション等により作成されたデータを印刷するための、ページ記述言語（ＰＤＬ：Page Description Language）で記述した印刷データ（以下、ＰＤＬデータと呼称する）を作成して、情報処理装置１０に送信する。ＰＤＬデータは、例えば、ＨＰＧＬ形式或いはＰＤＦ形式のデータであってもよいし、ポストスクリプト等であってもよい。なお、端末装置１２ａ、１２ｂ、１２ｃは、それぞれコンピュータにより構成され、それぞれＰＤＬデータを作成して情報処理装置１０に送信する。
【００２２】
情報処理装置１０には、印刷装置１４が接続されており、端末装置１２ａ、１２ｂ、１２ｃから受信したＰＤＬデータから印刷用のビットマップデータを生成して印刷装置１４に転送する。なお、情報処理装置１０は、ＰＤＬデータを解釈して、ＰＤＬデータよりもビットマップデータに変換しやすい中間データを生成し、この中間データからビットマップデータを生成するようにしている。中間データについては後述する。
【００２３】
印刷装置１４は、印刷画像を用紙等の記録媒体に印刷する印刷手段を有する。印刷装置１４の印刷手段は、情報処理装置１０から受信したビットマップデータに基づいて印刷する。
【００２４】
なお、ここでは、情報処理装置１０と印刷装置１４とが個別の装置により構成されている例について説明するが、情報処理装置１０と印刷装置１４とが一体的に形成されていてもよい。また、ここでは図示を省略するが、印刷装置１４が直接通信手段１６に接続され、この印刷装置１４が、端末装置１２ａ、１２ｂ、１２ｃから直接ＰＤＬデータを受信し、該受信したＰＤＬデータからビットマップデータを生成して印刷することが可能に構成されていてもよい。また、印刷装置１４は、中間データを情報処理装置１０から受信し、受信した中間データから印刷装置１４自身でビットマップデータを生成して印刷するようにしてもよい。
【００２５】
本実施形態の印刷装置１４には、更に、原稿の画像を読み取る読取手段も設けられている。この読取手段により原稿を読み取って得られたビットマップデータ（以下、読取画像データと呼称する）は、情報処理装置１０に送信され、情報処理装置１０で保持される。なお、読取画像データが、印刷装置１４で保持されるようにしてもよい。
【００２６】
本実施形態では、読取手段は、読取画像データとして、読取画像を２値より多い多値で表わしたビットマップデータを出力するように構成されている。
【００２７】
情報処理装置１０は、ＰＤＬデータが表わす画像と読取画像データが表わす画像とで、互いに異なる部分（以下、異なる部分を「差分」という）を抽出する差分抽出機能も備えている。
【００２８】
例えば、端末装置１２ａ、１２ｂ、１２ｃのいずれかを操作する利用者が、アプリケーション等によりデータを作成し、該データをＰＤＬデータに変換して印刷装置１４により印刷させた後、該印刷物に、手書きによる追加や修正ペン等による削除等の変更を加え、該変更を加えた印刷物を印刷装置１４により読み取らせたりする場合がある。情報処理装置１０は、差分抽出機能により、例えば、上記印刷装置１４により読み取って得られた読取画像データが表わす画像と、元々のＰＤＬデータが表わす画像との差分を抽出する。本実施形態では、差分の抽出は、画像を２値で表わしたビットマップデータ同士を比較して行う。
【００２９】
より具体例を挙げて説明する。例えば、建築業界における検図の現場では、修正前の原稿はＰＤＬデータとして存在するが、該ＰＤＬデータの修正後の原稿が紙でしか存在しない場合がある。この場合、ＰＤＬデータを一旦ビットマップデータに変換し、修正後の原稿の画像を読取手段により読み取って、ビットマップデータ同士で比較を行うこととなる。このとき、ビットマップデータは、一般にＡ１〜Ａ３のサイズのデータとなるため、通常のオフィス文書と比較してデータサイズが大きくなる。このため、差分抽出を行う際には多値のビットマップデータを２値のビットマップデータに変換してから行う。ここでは、一例として建築業界の検図を例に挙げたが、建築業界だけでなく、様々な場面で、二値のビットマップデータに変換してから差分を抽出することが行なわれる。
【００３０】
従って、本実施形態においては、差分抽出の前に、多値のビットマップデータである読取画像データを二値化して二値のビットマップデータを生成すると共に、ＰＤＬデータの画像を表わす二値のビットマップデータを生成するようにしている。
【００３１】
図２は、情報処理装置１０の構成を機能的に示した機能構成図である。情報処理装置１０は、データ取得部２０、第１生成手段の一例としての中間データ生成部２２、第３生成手段の一例としてのビットマップデータ生成部２４、第２生成手段の一例としての二値化処理部２６、差分抽出部２８、差分画像生成部３０、及び差分表示部３２を備えている。
【００３２】
データ取得部２０は、差分を抽出する対象となるＰＤＬデータと読取画像データとを取得する。
【００３３】
中間データ生成部２２は、データ取得部２０で取得されたＰＤＬデータを解析し、ページ単位で多値の中間データを生成する。ここで、ＰＤＬデータ及び中間データについて説明する。
【００３４】
ＰＤＬデータは、ページ内に描画されるフォントやグラフィック、イメージ等の描画オブジェクトの描画命令が記述されたデータであって、同じ領域に対する複数の描画命令が含まれている場合もある。すなわち、ＰＤＬデータは、描画オブジェクトの重なり（階層構造）を有するデータである。
【００３５】
例えば、複数の描画オブジェクトの少なくとも一部が互いに重なる場合、最終的な印刷段階では、（最上層の描画オブジェクトが透明或いは半透明でない限り）その重なり部分においては、最上層の描画オブジェクトの画素値が印刷装置１４により印刷されることとなるため、それより下層の描画オブジェクトの画素値は印刷されない。従って、ＰＤＬデータに含まれる描画命令には、最終的な印刷画像に寄与しない描画命令が含まれていることもある。
【００３６】
中間データは、描画オブジェクトの重なりが除去されたデータである。このため、中間データに含まれる描画命令の各々は、最終的に印刷される印刷画像の形成に寄与する。ただし、中間データは、画素単位で画素値を保持するビットマップデータを生成する前段階のデータであるため、その抽象度はＰＤＬデータより低いが、ビットマップデータよりは高い形式のデータ構造となっている。
【００３７】
中間データには、例えば、エッジリスト形式の中間データ、ディスプレイリスト形式の中間データがある。
【００３８】
エッジリスト形式の中間データは、ライン毎（ここでは、ｘ軸方向のライン毎）に同一の画素値の画素が連続する区間及び該画素値（色値ともいう）を示すエッジデータを描画命令として、画像を表現するものである。図３は、ｘ−ｙ座標系のｙ座標値が０のラインに対応するエッジリストの一例を模式的に示した図である。図３に示すように、エッジリストを構成するエッジデータは、高さ１の描画領域を表現する描画オブジェクトを示すデータであり、色値colorと、該色値colorの画素が連続する区間の始点（開始ｘ座標）startと、該色値colorの画素が連続する区間の終点（終了ｘ座標）endと、次のエッジデータの格納先を示すアドレスnextとを有する。次のエッジデータが存在しなければ、アドレスnextにはNULLが格納される。
【００３９】
このように、エッジリスト形式は、次のエッジデータへのアドレスnextによって、ライン毎のエッジデータの各々が連結されるリスト構造とされている。エッジデータが連結されてなるデータ群をエッジリストと呼ぶ。
【００４０】
図４（Ａ）は、図４（Ｂ）に示す６画素×６画素の画像をエッジリスト形式で表したときの中間データを模式的に示す図である。エッジリスト形式の中間データは、各ライン毎のエッジデータと、各ラインの先頭のエッジデータへのアドレス（先頭アドレス）を格納する先頭アドレステーブルとにより構成される。例えば、図４（Ａ）において、ｙ座標値が５の２番目のエッジデータは、ｘ座標値１から４までの領域を色値０で描画することを意味する。
【００４１】
ディスプレイリスト形式の中間データ（図示省略）は、重なりが除去された後の各描画オブジェクトの形状と端部のｘ、ｙ座標とを記述したリスト構造のデータであり、描画オブジェクトの属性データを格納したヘッダ部と、描画オブジェクトを四角形や線分等の基本オブジェクトに分解した場合の個々の基本オブジェクトに関するデータを格納したデータ部と、によって描画命令が構成される。
【００４２】
ヘッダ部は、描画オブジェクトの色値情報と、描画オブジェクトの補足情報（文字、グラフィックス、イメージ等の識別子等）と、データ部を構成する基本オブジェクトの数を示す情報とを有する。また、データ部は、基本オブジェクトのタイプ情報と、該基本オブジェクトの座標情報とを有する。なお、基本オブジェクトとは、描画オブジェクトを少なくとも１組の平行な辺を有する四角形（台形、平行四辺形、長方形等）又は線分に分割した場合の個々の図形（オブジェクト）である。
【００４３】
ビットマップデータ生成部２４は、中間データから二値のビットマップデータを生成する。本実施形態において、ビットマップデータ生成部２４は、中間データの描画命令が表わす描画オブジェクトの画素値に、中間調の画素値が含まれている場合と、含まれていない場合とで二値のビットマップデータの生成方法を異ならせる。詳細は後述する。
【００４４】
二値化処理部２６は、読取画像データから二値のビットマップデータを生成する二値化処理を行う。ここでは、読取画像データに、予め設定定された方式の二値化処理を施して二値化する。
【００４５】
差分抽出部２８は、ビットマップデータ生成部２４から取得した二値のピットマップデータと、二値化処理部２６から取得した二値のビットマップデータとを比較して、その差分を抽出し、差分を示す情報（以下、差分情報という）を出力する。なお、ここでは、対応するビットマップデータ同士を比較して差分を抽出する。すなわち、元のＰＤＬデータから生成された二値のビットマップデータと、その元のＰＤＬデータに基づいて画像が印刷された原稿或いはその原稿に修正を施した修正済みの原稿を読み取って得られた読取画像データを二値化した二値のビットマップデータとが比較される。
【００４６】
差分画像生成部３０は、差分抽出部２８からの差分情報に基づいて、差分が明示された差分画像の差分画像データを生成する。
【００４７】
差分表示部３２は、差分画像生成部３０で生成された差分画像データに基づいて、差分画像を表示する。
【００４８】
なお、情報処理装置１０のハードウェア構成例を図５に示す。情報処理装置１０は、図５に示すコンピュータ９８がプログラムを実行することにより実現される。
【００４９】
コンピュータ９８は、ＣＰＵ（Central Processing Unit）８０、ＲＯＭ（Read Only Memory）８２、ＲＡＭ（Random Access Memory）８４、ＨＤＤ（Hard Disk Drive）８６、操作部８８、表示部９０、及び通信ＩＦ（Interface）９２がバス９４を介して接続されて構成されている。
【００５０】
ＣＰＵ８０は、ＲＯＭ８２やＨＤＤ８６に記憶されているプログラムを実行し、自装置全体の動作を制御する。ＲＯＭ８２には、ＣＰＵ８０が実行するプログラム（後述する処理ルーチンのプログラム等を含む）やＣＰＵ８０の処理に必要な情報等が記憶されている。ＣＰＵ８０が該プログラムを実行することによって、図２を用いて説明した情報処理装置１０の各機能を実現する。ＲＡＭ８４は、ワークメモリ等として使用される。
【００５１】
ＨＤＤ８６には、ＣＰＵ８０が実行するプログラム、様々な設定情報やデータが記憶されている。外部から受信した読取画像データやＰＤＬデータもＨＤＤ８６に記憶される。
【００５２】
なお、ＣＰＵ８０が実行するプログラムを記憶するための記憶媒体は、ＨＤＤ８６やＲＯＭ８２に限定されない。例えば、フレキシブルディスクやＤＶＤディスク、光磁気ディスクやＵＳＢメモリ（ユニバーサルシリアルバスメモリ）等（不図示）であってもよいし、通信手段１６に接続された他の装置の記憶装置であってもよい。
【００５３】
操作部８８は、例えば、キーボードやマウス等により構成され、利用者が操作部８８を操作することより各種情報が指定される。表示部９０は、例えば、液晶ディスプレイ、ＥＬディスプレイ等により構成され、ＣＰＵ８０の制御により各種画像やメッセージ、或いは後述する差分画像等を表示する。
【００５４】
通信ＩＦ９２は、通信手段１６を介して他の装置と通信を行うためのインタフェースである。
【００５５】
次に、本実施形態における作用を図６、図７を用いて説明する。
【００５６】
図６は、情報処理装置１０のビットマップデータ生成部２４により実行される処理ルーチンの流れを示すフローチャートである。本処理ルーチンは、中間データ生成部２２により、中間データが生成された後に実行される。また、中間データはページ単位で生成されるため、１つのＰＤＬデータの中に複数ページ分のデータが含まれていた場合には、そのページ数分、本処理ルーチンが繰り返される。なお、以下では、中間データがエッジリスト形式のデータである場合を例に挙げて説明する。
【００５７】
ステップ１００において、ビットマップデータ生成部２４は、１ページ分の全ラインを検査済みか否かを判断する。ここで、検査とは、中間データの各ラインを構成する描画命令としてのエッジデータを参照して、その色値が中間調を示す値か否かを検査する処理をいう。ここで中間調を示す値とは、色値が取り得る値のうち、最小画素値及び最大画素値以外の値をいう。
【００５８】
本実施形態では、中間データ生成部２２により生成される中間データの描画命令により指定される色値は、階調数が２より多い多値、ここでは、０以上２５５以下の２５６階調で表現されているものとする。従って、ここでは、最小画素値０（ここでは白）及び最大画素値２５５（ここでは黒）を除く値、即ち、１以上２５４以下の色値を有する画素を、中間調の画素としている。なお、０が黒、２５５が白であってもよい。また、ここでは、２５６階調を例に挙げたが、０以上１５以下の１６階調であってもよい。この場合には、０及び１５以外の画素値が中間調の画素値となる。
【００５９】
ビットマップデータ生成部２４は、ステップ１００において否定判断した場合には、ステップ１０２において、未検査のラインを１つ選択する。
【００６０】
ステップ１０４において、ビットマップデータ生成部２４は、選択したラインにリストされた全エッジデータ（以下、エッジデータを単にエッジという）を検査済みか否か判断する。
【００６１】
ビットマップデータ生成部２４は、ステップ１０４において肯定判断した場合には、ステップ１００に戻る。
【００６２】
ビットマップデータ生成部２４は、ステップ１０４において否定判断した場合には、ステップ１０６において、現在選択中のラインから未検査のエッジを選択する。
【００６３】
ステップ１０８において、ビットマップデータ生成部２４は、選択したエッジの色値を参照し、該色値が０又は２５５であるか否かを判断する。
【００６４】
ビットマップデータ生成部２４は、ステップ１０８において肯定判断した場合には、ステップ１０４に戻る。
【００６５】
ビットマップデータ生成部２４は、ステップ１０８において否定判断した場合には、ステップ１１０において、そのページに中間調の画素があると判断する。そして、ビットマップデータ生成部２４は、ステップ１１２において、処理中の中間データを多値のビットマップデータに変換する（図７（Ａ）も参照）。
【００６６】
ステップ１１４において、ビットマップデータ生成部２４は、上記変換した多値のビットマップデータに二値化処理を施して二値のビットマップデータに変換する。ここでは、二値化処理部２６において読取画像データを二値化するときの方式と同じ方式で二値化処理が行なわれる（図７（Ｂ）も参照）。
【００６７】
二値化処理の方式が異なる場合とは、具体的には、ディザや誤差拡散等、２値化のアルゴリズム自体が異なる、使用するハーフトーンパターンが異なる、黒にするか、白にするかを判定する閾値が異なる等の場合である。２つのビットマップデータの差分を取る際、この２値化処理の方式が異なると、その影響により本来差分がない場合にも差分が抽出されてしまう。従って、中間データから生成された多値のビットマップデータを二値化するときの方式と、読取画像データを二値化するときの方式とが同じ方式となるようにしている。
【００６８】
なお、上記ステップ１０８において、エッジの色値が、中間調の色値であるか否か（上記例では、１以上２５４以下であるか否か）を判断するようにしてもよい。この場合には、ステップ１０８において肯定判断するとステップ１１０に進み、否定判断するとステップ１０４に戻ることになる。
【００６９】
より具体的に、前述した建築業界における検図を例に挙げると、元々の原稿（ＰＤＬデータの画像）に中間調の色が付いている場合には、読取画像における色が元々の原稿と異なっていても二値化処理の方式によっては同じと判定されてしまうことがある。また、建築図面は、線や文字部分は白黒で描画されることが多いが、ある領域を中間調で塗りつぶす箇所もある。こうした箇所は、二値化処理の方式によって、二値化結果が異なり、差分抽出結果に大きく影響するため、両者の二値化処理の方式が等しくなるようにしている。
【００７０】
一方、ステップ１００において、ビットマップデータ生成部２４は、１ページ分の全ラインを検査済みであると判断した場合には、処理中の中間データの各描画オブジェクトの色値が０及び２５５の二値のみであることを示す（その中間データが表わすページは二値画像である）ため、ステップ１１６に進み、中間調の画素なしと判断する。
【００７１】
次に、ビットマップデータ生成部２４は、ステップ１１８において、処理中の中間データを二値のビットマップデータに変換する。ここでは、多値のビットマップデータを生成してから二値のビットマップデータを生成するという２段階のステップは踏まずに、中間データから直接、二値のビットマップデータを生成する（図７（Ｃ）も参照）。
【００７２】
具体的には、中間データで表わされる各描画オブジェクトの色値は全て０か２５５であるため、各エッジデータの色値を使用して（或いは該色値を、何らかの二値に置換えて）、画素単位で画素値を保持する二値のビットマップデータを生成する。
【００７３】
また、ビットマップデータ生成部２４とは別に、読取画像側でも、二値化処理部２６が読取画像データに二値化処理を施して、二値のビットマップデータを生成する（図７（Ｄ）も参照）。
【００７４】
差分抽出部２８は、ＰＤＬデータの中間データから生成された二値のビットマップデータと、読取画像データを二値化して生成された二値のビットマップデータとを比較して差分を抽出する（図７（Ｅ）も参照）。差分抽出部２８は、抽出した差分を示す情報（差分情報）を差分画像生成部３０に供給する。差分画像生成部３０は、差分情報に基づいて、差分を表わす画像（差分画像）の差分画像データを生成する。
【００７５】
差分表示部３２は、差分画像生成部３０で生成された差分画像データに基づいて、差分画像を表示する。なお、差分画像は、利用者が差分を把握することができれば、その表示形式は特に限定されず、例えば、差分部分については、ＰＤＬデータと読取画像データの各部分画像を重畳して配置し、それ以外の部分（差分として抽出されなかった部分）については、重畳せずに、ＰＤＬデータと読取画像データのいずれか一方が表わす画像を配置した差分画像としてもよい。或いは差分部分については、予め定められた色を用いて印刷するようにしてもよいし、予め定められたマークを追加して印刷してもよい。
【００７６】
以上説明したように、本実施形態では、中間データの描画命令が表わす描画オブジェクトに、中間調の画素が１つも含まれていなければ、中間データから直接、二値のビットマップデータを生成して、差分を抽出するようにしている。
【００７７】
例えば、前述したように、サイズが大きな建築図面では、中間データを多値のビットマップデータに変換すると時間がかかる。また、更に、多値のビットマップデータを２値化する時間もかかり、差分抽出が完了するまでの時間に大きな影響を及ぼす。従って、常に、中間データを多値のビットマップデータに変換してから二値のビットマップデータを生成するのではなく、中間調の画素が含まれていないページの中間データについては、直接中間データから二値のビットマップデータを生成し、データ変換にかかる時間を短縮するようにしている。
【００７８】
前述したように、差分抽出において、ＰＤＬデータが元々の原稿であり、この原稿の画像と比較される読取画像データはそのＰＤＬデータの印刷物そのものか該印刷物に修正を加えたものである。従って、元々の原稿であるＰＤＬデータが中間調の画素を含まない二値の画像を表わすデータであれば、読取画像データも修正箇所以外は白黒二値の画像を表わすデータとなるため、スクリーン処理により二値化したとしても、黒色の画素は黒色の画素として変換され、白色の画素は白色の画素として変換される。すなわち、元々の原稿に対応する部分では、二値化方式の違いによる変動は生じない。従って、差分抽出部２８において、問題なく差分が抽出される。
【００７９】
［第２の実施形態］
【００８０】
第１の実施形態においては、中間データに基づいて、その中間データの描画命令が表わす描画オブジェクトに中間調の画素が含まれているか否かを判断して、中間データが表わすページに中間調の画素が含まれているか否かを判断する例について説明したが、この判断をＰＤＬデータに基づいて行うようにしてもよい。
【００８１】
ただし、第１の実施形態で説明したように、ＰＤＬデータは、描画オブジェクトの重なりが除去されていないデータである。従って、厳密に判断しようとすれば、各描画命令が表わす描画オブジェクトの座標を確認し、描画オブジェクトの重なりを考慮した上で判断する必要がある。しかしながら、このように厳密に判断すると、ＰＤＬデータからビットマップデータに変換するのと同様に時間がかかってしまう。
【００８２】
そこで、本実施形態では、描画オブジェクトの重なりは考慮せずに、ＰＤＬデータに含まれる描画命令の各々が表わす描画オブジェクトの画素値の全てが中間調の画素値でなければ、中間データから直接二値のビットマップデータに変換するものとする。また、ＰＤＬデータに含まれる描画命令の各々が表わす描画オブジェクトの画素値の少なくとも１つが、中間調の画素値であれば、該ＰＤＬデータの画像に中間調の画素ありと判断して中間データから多値のビットマップデータに変換し、その後二値のビットマップデータに変換するものとする。
【００８３】
なお、このように重なりを考慮しないで判断する場合には、実際の描画オブジェクトの重なり状態によっては、最終的に得られる画像に中間調の画素が含まれていなくても（例えば、中間調の画素を含む描画オブジェクトの上に、中間調の画素を含まない描画オブジェクトが重ねられる場合であっても）、中間調の画素が含まれていると判断される可能性がある（以下、これを便宜的に誤判断という）。
【００８４】
しかしながら、例えば、前述した建築図面は、白黒で描画された線や文字からなる図面が多く、中間調での描画は比較的少ない。従って、例えば、１００ページ分の建築図面のＰＤＬデータに、中間調の色値を指定した描画命令を含むページが１〜２ページ含まれており、その１〜２ページについて誤判断されて多値のビットマップデータが生成されてしまったとしても、全体として見ればごくわずかなページ数であるため、全体の処理時間は短縮される。
【００８５】
以下、本実施形態の作用について説明する。なお、装置構成は第１の実施形態と同様であるため説明を省略する。
【００８６】
図８は、本実施形態に係るビットマップデータ生成部２４により実行される処理ルーチンの流れを示すフローチャートである。本実施形態の処理ルーチンは、中間データ生成部２２により、中間データが生成された後に、ページ単位で実行される。従って、１つのＰＤＬデータの中に複数ページ分のデータが含まれていた場合には、そのページ数分、本処理ルーチンが繰り返される。
【００８７】
ステップ２００において、ビットマップデータ生成部２４は、１ページ分の全描画コマンドを検査済みか否かを判断する。なお、本実施形態において、検査とは、ＰＤＬデータの１ページ分の描画命令を参照して、その色値が中間調を示す値か否かを検査する処理をいう。
【００８８】
ビットマップデータ生成部２４は、ステップ２００において否定判断した場合には、ステップ２０２において、未検査の描画命令を１つ選択する。
【００８９】
ステップ２０４において、ビットマップデータ生成部２４は、選択した描画命令により指定された描画色値が０又は２５５であるか否かを判断する。
【００９０】
ビットマップデータ生成部２４は、ステップ２０４において肯定判断した場合には、ステップ２００に戻る。
【００９１】
ビットマップデータ生成部２４は、ステップ２０４において否定判断した場合には、ステップ２０６において、そのページに中間調の画素があると判断する。そして、ビットマップデータ生成部２４は、ステップ２０８において、処理中のページに該当する中間データを多値のビットマップデータに変換する。
【００９２】
ステップ２１０において、ビットマップデータ生成部２４は、上記変換した多値のビットマップデータに二値化処理を施して二値のビットマップデータに変換する。第１の実施形態と同様に、二値化処理部２６において読取画像データを二値化するときの方式と同じ方式で二値化処理が行なわれる。
【００９３】
一方、ステップ２００において、ビットマップデータ生成部２４は、１ページ分の全描画命令を検査済みであると判断した場合には、ステップ２１２に進み、中間調の画素なしと判断し、ステップ２１４において、処理中のページに該当する中間データを二値のビットマップデータに変換する。
【００９４】
なお、上記例は一例であり、例えば、ビットマップデータ生成部２４が、中間データ生成部２２により中間データが生成される前にＰＤＬデータを取得して、中間調の判断までの処理を行い、中間データ生成部２２により中間データが生成された後にビットマップデータへの変換を行うようにしてもよい。
【００９５】
また、上記ステップ２０４において、描画色値が、中間調の色値であるか否か（上記例では、１以上２５４以下であるか否か）を判断するようにしてもよい。この場合には、ステップ２０４において肯定判断するとステップ２０６に進み、否定判断するとステップ２００に戻ることになる。
【００９６】
また、情報処理装置１０は、ＰＤＬデータが、ＹＭＣＫ各色の画素値からなるカラーの描画オブジェクトの描画命令を含む場合であっても、色毎に中間調を検査して、少なくとも１つの色で１つでも中間調の画素があれば、中間データを多値のビットマップデータに変換してから二値化処理を行い、１つも中間調の画素がなければ、中間データを直接二値のビットマップデータに変換するようにしてもよい。
【００９７】
また、第１及び第２の実施形態においては、コンピュータ９８がプログラムを実行することにより情報処理装置１０を実現する例について説明したが、例えば半導体集積回路、ＡＳＩＣ(Application Specific Integrated Circuit)等で実現することも可能であり、情報処理装置１０の各機能部を、例えば電子回路等で実現することも可能である。
【符号の説明】
【００９８】
１０   情報処理装置
１４   印刷装置
２０   データ取得部
２２   中間データ生成部
２４   ビットマップデータ生成部
２６   二値化処理部
２８   差分抽出部
３０   差分画像生成部
３２   差分表示部
８０  ＣＰＵ
８２  ＲＯＭ
８４  ＲＡＭ
８６  ＨＤＤ
８８  操作部
９０  表示部
９８  コンピュータ
【図１】
2014007595.tif 000003
【図２】
2014007595.tif 000004
【図３】
2014007595.tif 000005
【図４】
2014007595.tif 000006
【図５】
2014007595.tif 000007
【図６】
2014007595.tif 000008
【図７】
2014007595.tif 000009
【図８】
2014007595.tif 000010