(57)【特許請求の範囲】
【請求項１】
スキャナによって得られたビットマップ画像を入力する入力手段と、
前記入力手段により入力されたビットマップ画像の少なくとも一部の領域から、ベクタデータを生成するベクタデータ生成手段と、
前記入力手段により入力されたビットマップ画像に対して、文字認識処理または画像情報抽出処理の少なくともいずれかを行うことにより、検索用の付加情報としてのメタデータを生成するメタデータ生成手段と、
前記ベクタデータ生成手段で生成されたベクタデータと前記メタデータ生成手段で生成されたメタデータとを関連付けて格納したドキュメントを生成する第１のドキュメント生成手段と、
外部装置からＰＤＬデータを受信する受信手段と、
前記受信手段で受信したＰＤＬデータを解析することにより、ベクタデータとメタデータとを生成するＰＤＬ解析手段と、
前記ＰＤＬ解析手段で生成されたベクタデータとメタデータとを関連付けて格納したドキュメントを生成する第２のドキュメント生成手段と、
前記ドキュメントの生成に用いたデータの種別が、ビットマップ画像とＰＤＬデータのどちらであるかを示す情報を、前記メタデータに保存するデータ種別保存手段と、
前記ドキュメントのメタデータに保存されているデータの種別の情報に応じて、当該ドキュメントに対して実行する処理を切り替える切り替え手段と、
を備え、
前記ドキュメントに格納されているベクタデータをビットマップにレンダリングする処理を実行する場合、前記切り替え手段は、前記メタデータに保存されているデータの種別がビットマップ画像である場合には、当該ドキュメントに格納されているベクタデータをページ中の部分単位に分割し、異なるプロセッサにて当該分割したベクタデータのレンダリング処理を実行するように切り替える
ことを特徴とする画像処理装置。
【請求項２】
スキャナによって得られたビットマップ画像を入力する入力手段と、
前記入力手段により入力されたビットマップ画像の少なくとも一部の領域から、ベクタデータを生成するベクタデータ生成手段と、
前記入力手段により入力されたビットマップ画像に対して、文字認識処理または画像情報抽出処理の少なくともいずれかを行うことにより、検索用の付加情報としてのメタデータを生成するメタデータ生成手段と、
前記ベクタデータ生成手段で生成されたベクタデータと前記メタデータ生成手段で生成されたメタデータとを関連付けて格納したドキュメントを生成する第１のドキュメント生成手段と、
外部装置からＰＤＬデータを受信する受信手段と、
前記受信手段で受信したＰＤＬデータを解析することにより、ベクタデータとメタデータとを生成するＰＤＬ解析手段と、
前記ＰＤＬ解析手段で生成されたベクタデータとメタデータとを関連付けて格納したドキュメントを生成する第２のドキュメント生成手段と、
前記ドキュメントの生成に用いたデータの種別が、ビットマップ画像とＰＤＬデータのどちらであるかを示す情報を、前記メタデータに保存するデータ種別保存手段と、
前記ドキュメントのメタデータに保存されているデータの種別の情報に応じて、当該ドキュメントに対して実行する処理を切り替える切り替え手段と、
前記ドキュメントに格納されているベクタデータを最適化する最適化処理を実行する手段と、
を備え、
前記切り替え手段は、前記メタデータに保存されているデータの種別がＰＤＬデータである場合は前記最適化処理を実行し、前記メタデータに保存されているデータの種別がビットマップ画像の場合は前記最適化処理を省略するように切り替える
ことを特徴とする画像処理装置。
【請求項３】
スキャナによって得られたビットマップ画像を入力する入力手段と、
前記入力手段により入力されたビットマップ画像の少なくとも一部の領域から、ベクタデータを生成するベクタデータ生成手段と、
前記入力手段により入力されたビットマップ画像に対して、文字認識処理または画像情報抽出処理の少なくともいずれかを行うことにより、検索用の付加情報としてのメタデータを生成するメタデータ生成手段と、
前記ベクタデータ生成手段で生成されたベクタデータと前記メタデータ生成手段で生成されたメタデータとを関連付けて格納したドキュメントを生成する第１のドキュメント生成手段と、
外部装置からＰＤＬデータを受信する受信手段と、
前記受信手段で受信したＰＤＬデータを解析することにより、ベクタデータとメタデータとを生成するＰＤＬ解析手段と、
前記ＰＤＬ解析手段で生成されたベクタデータとメタデータとを関連付けて格納したドキュメントを生成する第２のドキュメント生成手段と、
前記ドキュメントの生成に用いたデータの種別が、ビットマップ画像とＰＤＬデータのどちらであるかを示す情報を、前記メタデータに保存するデータ種別保存手段と、
前記ドキュメントのメタデータに保存されているデータの種別の情報に応じて、当該ドキュメントに対して実行する処理を切り替える切り替え手段と、
前記ドキュメントを汎用データフォーマットへ変換する手段と、
を備え、
前記切り替え手段は、前記メタデータに保存されているデータの種別がＰＤＬデータである場合には、汎用データフォーマットに変換する前に前記ドキュメントに対してビットマップ画像へ描画展開し、当該描画展開したビットマップ画像に対して前記ベクタデータ生成手段による処理を実行した後に、前記汎用データフォーマットへ変換する処理を実行するように切り替え、一方、前記メタデータに保存されているデータの種別がビットマップ画像である場合は当該ドキュメントに含まれているベクタデータに基づいて前記汎用データフォーマットに変換する処理を実行するように切り替える
ことを特徴とする画像処理装置。
【請求項４】
スキャナによって得られたビットマップ画像を入力する入力手段と、
前記入力手段により入力されたビットマップ画像の少なくとも一部の領域から、ベクタデータを生成するベクタデータ生成手段と、
前記入力手段により入力されたビットマップ画像に対して、文字認識処理または画像情報抽出処理の少なくともいずれかを行うことにより、検索用の付加情報としてのメタデータを生成するメタデータ生成手段と、
前記ベクタデータ生成手段で生成されたベクタデータと前記メタデータ生成手段で生成されたメタデータとを関連付けて格納したドキュメントを生成する第１のドキュメント生成手段と、
外部装置からＰＤＬデータを受信する受信手段と、
前記受信手段で受信したＰＤＬデータを解析することにより、ベクタデータとメタデータとを生成するＰＤＬ解析手段と、
前記ＰＤＬ解析手段で生成されたベクタデータとメタデータとを関連付けて格納したドキュメントを生成する第２のドキュメント生成手段と、
前記ドキュメントの生成に用いたデータの種別が、ビットマップ画像とＰＤＬデータのどちらであるかを示す情報を、前記メタデータに保存するデータ種別保存手段と、
前記ドキュメントのメタデータに保存されているデータの種別の情報に応じて、当該ドキュメントに対して実行する処理を切り替える切り替え手段と、
を備え、
前記メタデータとして保持されている前記付加情報を検索する検索処理を実行する場合、前記切り替え手段は、前記データの種別がビットマップ画像であるドキュメントに対しては前記検索処理を実行し、前記データの種別がＰＤＬであるドキュメントに対しては前記検索処理を実行しないように切り替えることにより、当該検索処理の検索対象を限定する
ことを特徴とする画像処理装置。
【請求項５】
入力手段が、スキャナによって得られたビットマップ画像を入力する入力ステップと、
ベクタデータ生成手段が、前記入力ステップで入力されたビットマップ画像の少なくとも一部の領域から、ベクタデータを生成するベクタデータ生成ステップと、
メタデータ生成手段が、前記入力ステップで入力されたビットマップ画像に対して、文字認識処理または画像情報抽出処理の少なくともいずれかを行うことにより、検索用の付加情報としてのメタデータを生成するメタデータ生成ステップと、
第１のドキュメント生成手段が、前記ベクタデータ生成ステップで生成されたベクタデータと前記メタデータ生成ステップで生成されたメタデータとを関連付けて格納したドキュメントを生成する第１のドキュメント生成ステップと、
受信手段が、外部装置からＰＤＬデータを受信する受信ステップと、
ＰＤＬ解析手段が、前記受信ステップで受信したＰＤＬデータを解析することにより、ベクタデータとメタデータとを生成するＰＤＬ解析ステップと、
第２のドキュメント生成手段が、前記ＰＤＬ解析ステップで生成されたベクタデータとメタデータとを関連付けて格納したドキュメントを生成する第２のドキュメント生成ステップと、
データ種別保存手段が、前記ドキュメントの生成に用いたデータの種別が、ビットマップ画像とＰＤＬデータのどちらであるかを示す情報を、前記メタデータに保存するデータ種別保存ステップと、
切り替え手段が、前記ドキュメントのメタデータに保存されているデータの種別の情報に応じて、当該ドキュメントに対して実行する処理を切り替える切り替えステップと
変換する手段が、前記ドキュメントを汎用データフォーマットへ変換するステップと、
を含み、
前記切り替えステップは、前記メタデータに保存されているデータの種別がＰＤＬデータである場合には、汎用データフォーマットに変換する前に前記ドキュメントに対してビットマップ画像へ描画展開し、当該描画展開したビットマップ画像に対して前記ベクタデータ生成ステップを実行した後に、前記汎用データフォーマットへ変換するステップを実行するように切り替え、一方、前記メタデータに保存されているデータの種別がビットマップ画像である場合は当該ドキュメントに含まれているベクタデータに基づいて前記汎用データフォーマットに変換するステップを実行するように切り替える
ことを特徴とする画像処理方法。
【請求項６】
コンピュータを、
スキャナによって得られたビットマップ画像を入力する入力手段、
前記入力手段により入力されたビットマップ画像の少なくとも一部の領域から、ベクタデータを生成するベクタデータ生成手段、
前記入力手段により入力されたビットマップ画像に対して、文字認識処理または画像情報抽出処理の少なくともいずれかを行うことにより、検索用の付加情報としてのメタデータを生成するメタデータ生成手段、
前記ベクタデータ生成手段で生成されたベクタデータと前記メタデータ生成手段で生成されたメタデータとを関連付けて格納したドキュメントを生成する第１のドキュメント生成手段、
外部装置からＰＤＬデータを受信する受信手段、
前記受信手段で受信したＰＤＬデータを解析することにより、ベクタデータとメタデータとを生成するＰＤＬ解析手段、
前記ＰＤＬ解析手段で生成されたベクタデータとメタデータとを関連付けて格納したドキュメントを生成する第２のドキュメント生成手段、
前記ドキュメントの生成に用いたデータの種別が、ビットマップ画像とＰＤＬデータのどちらであるかを示す情報を、前記メタデータに保存するデータ種別保存手段、
前記ドキュメントのメタデータに保存されているデータの種別の情報に応じて、当該ドキュメントに対して実行する処理を切り替える切り替え手段、
前記ドキュメントを汎用データフォーマットへ変換する手段、
を備えた画像処理装置であって、
前記切り替え手段は、前記メタデータに保存されているデータの種別がＰＤＬデータである場合には、汎用データフォーマットに変換する前に前記ドキュメントに対してビットマップ画像へ描画展開し、当該描画展開したビットマップ画像に対して前記ベクタデータ生成手段による処理を実行した後に、前記汎用データフォーマットへ変換する処理を実行するように切り替え、一方、前記メタデータに保存されているデータの種別がビットマップ画像である場合は当該ドキュメントに含まれているベクタデータに基づいて前記汎用データフォーマットに変換する処理を実行するように切り替える
画像処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スキャンデータおよびページ記述データを画像形成出力する画像処理装置等に関するものである。
【背景技術】
【０００２】
画像入力機器で入力したビットマップ画像を画像入力機器の解像度に依存しない描画データに変換する技術が開発されている（例えば、特許文献１）。このようにビットマップ画像を解像度に依存しないデータに変換する処理をベクトル化またはベクタライズと呼び、ベクトル化の結果得られるデータをベクタデータと呼ぶ。これらの技術を利用すれば、入力画像を解像度に依存しないベクタデータに変換し、画像を劣化させることなく任意の大きさで再利用することができる。
【０００３】
また、ＰＤＬ（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ：ページ記述言語）データを複数の描画処理部に分配して描画処理を並列処理する技術が開発されている（例えば、特許文献２）。
【０００４】
また、ＰＤＬデータとラスタデータとで使用するＣＰＵや周波数を切替る技術が開発されている（例えば、特許文献３）。
【０００５】
ここで、スキャン画像から生成されるベクタデータは元が画像データであるため、ＰＤＬデータから生成されるベクタデータに比べて単純な描画データだが非常に冗長であるという特徴がある。
【０００６】
【特許文献１】特開２００６―２３９４２号公報
【特許文献２】特開平１１―１７０６５７号公報
【特許文献３】特開２００７−１０８８６１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかし、スキャン画像から生成されたベクタデータを印刷出力する際には元のデータが何であったかによらずＰＤＬと同様の描画展開処理を行っているため、スキャン画像から生成されたベクタデータの描画展開処理効率が悪いという課題があった。
【０００８】
また、ＰＤＬを複数の描画処理部に分配するためにはページデータを走査してＰＤＬデータを分割する処理を行ってから再度解析を行う必要があり、分割のための時間が余計にかかるという課題があった。
【０００９】
また、ベクタデータをＰＣで表示するためにはＰＤＦ（Ｐｏｒｔａｂｌｅ  Ｄｏｃｕｍｅｎｔ  Ｆｏｒｍａｔ）などの汎用フォーマットに変換する必要がある。しかし、元がＰＤＬデータの場合には描画モデルの違いにより変換後の汎用フォーマットが非常に冗長になるという課題があった。
【００１０】
さらに、保存されていたベクタデータに対して検索を行う場合、ＰＤＬデータから生成されたデータが混在すると文字列での検索が意図したとおりにかからないという課題があった。
【００１１】
特許文献３の技術はＰＤＬデータ解析・レンダリング以外のこのようなさまざまな機能に対しては、なんら解決手段を提供していない。
【００１２】
本発明は、上記課題を解決するためになされたものであり、スキャン画像の印刷出力を高速化することを目的とする。また、本発明はＰＤＬデータの汎用フォーマットへの変換を効率化することを目的とする。さらに、本発明は文書検索の利便性を向上することを目的とする。
【課題を解決するための手段】
【００１３】
上記課題を解決するために、本発明の画像処理装置は、スキャナによって得られたビットマップ画像を入力する入力手段と、前記入力手段により入力されたビットマップ画像の少なくとも一部の領域から、ベクタデータを生成するベクタデータ生成手段と、前記入力手段により入力されたビットマップ画像に対して、文字認識処理または画像情報抽出処理の少なくともいずれかを行うことにより、検索用の付加情報としてのメタデータを生成するメタデータ生成手段と、前記ベクタデータ生成手段で生成されたベクタデータと前記メタデータ生成手段で生成されたメタデータとを関連付けて格納したドキュメントを生成する第１のドキュメント生成手段と、外部装置からＰＤＬデータを受信する受信手段と、前記受信手段で受信したＰＤＬデータを解析することにより、ベクタデータとメタデータとを生成するＰＤＬ解析手段と、前記ＰＤＬ解析手段で生成されたベクタデータとメタデータとを関連付けて格納したドキュメントを生成する第２のドキュメント生成手段と、前記ドキュメントの生成に用いたデータの種別が、ビットマップ画像とＰＤＬデータのどちらであるかを示す情報を、前記メタデータに保存するデータ種別保存手段と、前記ドキュメントのメタデータに保存されているデータの種別の情報に応じて、当該ドキュメントに対して実行する処理を切り替える切り替え手段と、を備え、前記ドキュメントに格納されているベクタデータをビットマップにレンダリングする処理を実行する場合、前記切り替え手段は、前記メタデータに保存されているデータの種別がビットマップ画像である場合には、当該ドキュメントに格納されているベクタデータをページ中の部分単位に分割し、異なるプロセッサにて当該分割したベクタデータのレンダリング処理を実行するように切り替えることを特徴とする。
【発明の効果】
【００１７】
本発明によれば生成されたベクタデータの元データ種別によって処理を切り替えることで高速な印刷出力が可能になる。
【００１８】
また、同様に元データ種別によって処理を切り替えることでベクタデータの汎用フォーマットへの変換の効率化が可能になる。
【００１９】
さらに、同様に元データ種別によって処理を切り替えることで文書検索の利便性を向上することが可能になる。
【発明を実施するための最良の形態】
【００２０】
[実施例１]
以下、本発明を実施するための最良の形態について、図面を参照して説明する。
【００２１】
＜画像処理装置の構成＞
本実施例を適用するに好適な１Ｄカラー系ＭＦＰ（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ：マルチファンクション周辺機器）の構成について、図１を用いて説明する。
【００２２】
１Ｄカラー系ＭＦＰは、スキャナ、レーザ露光部、感光ドラム、作像部、定着部、給紙／搬送部及び、これらを制御する不図示のプリンタ制御部から構成される。
【００２３】
スキャナは、原稿台に置かれた原稿に対して、照明を当てて原稿画像を光学的に読み取り、その像を電気信号に変換して画像データを作成する。
【００２４】
レーザ露光部は、画像データに応じて変調されたレーザ光などの光線を等角速度で回転する回転多面鏡（ポリゴンミラー）に入射させ、反射走査光として感光ドラムに照射する。
【００２５】
作像部は、感光ドラムを回転駆動し、帯電器によって帯電させ、レーザ露光部によって感光ドラム上に形成された潜像をトナーによって現像化し、そのトナー像をシートに転写する。その際に転写されずに感光ドラム上に残った微小トナーを回収するといった一連の電子写真プロセスを実行して作像する。その際、シートが転写ベルトの所定位置に巻きつき、４回転する間に、マゼンタ（Ｍ）、シアン（Ｃ）、イエロー（Ｙ）、ブラック（Ｋ）のトナーを持つそれぞれの現像ユニット（現像ステーション）が入れ替わりで順次前述の電子写真プロセスを繰り返し実行する。４回転の後、４色のフルカラートナー像を転写されたシートは、転写ドラムを離れ、定着部へ搬送される。
【００２６】
定着部は、ローラやベルトの組み合わせによって構成され、ハロゲンヒータなどの熱源を内蔵し、作像部によってトナー像が転写されたシート上のトナーを、熱と圧力によって溶解、定着させる。
【００２７】
給紙／搬送部は、シートカセットやペーパーデッキに代表されるシート収納庫を一つ以上持っており、プリンタ制御部の指示に応じてシート収納庫に収納された複数のシートの中から一枚分離し、作像部・定着部へ搬送する。シートは作像部の転写ドラムに巻きつけられ、４回転した後に定着部へ搬送される。４回転する間に前述のＹＭＣＫ各色のトナー像がシートに転写される。また、シートの両面に画像形成する場合は、定着部を通過したシートを再度作像部へ搬送する搬送経路を通るように制御する。
【００２８】
プリンタ制御部は、ＭＦＰ全体を制御するＭＦＰ制御部と通信して、その指示に応じて制御を実行すると共に、前述のスキャナ、レーザ露光、作像、定着、給紙／搬送の各部の状態を管理しながら、全体が調和を保って円滑に動作できるよう指示を行う。
【００２９】
＜コントローラユニットの構成＞
図２は、本実施形態におけるＭＦＰのコントロールユニット（コントローラ）の一構成例を示すブロック図である。図２において、コントロールユニット２００は、画像入力デバイスであるスキャナ２０１や画像出力デバイスであるプリンタエンジン２０２と接続し、画像データの読み取りやプリント出力のための制御を行う。また、コントロールユニット２００は、ＬＡＮ１０や公衆回線２０４と接続することで、画像情報やデバイス情報をＬＡＮ１０経由で入出力するための制御を行う。
【００３０】
ＣＰＵ２０５はＭＦＰ全体を制御するための中央処理装置である。ＲＡＭ２０６は、ＣＰＵ２０５が動作するためのシステムワークメモリであり、入力された画像データを一時記憶するための画像メモリでもある。さらに、ＲＯＭ２０７はブートＲＯＭであり、システムのブートプログラムが格納されている。ＨＤＤ２０８はハードディスクドライブであり、各種処理のためのシステムソフトウェア及び入力された画像データを等格納する。操作部Ｉ／Ｆ２０９は、画像データ等を表示可能な表示画面を有する操作部２１０に対するインタフェース部であり、操作部２１０に対して操作画面データを出力する。また、操作部Ｉ／Ｆ２０９は、操作部２１０から操作者が入力した情報をＣＰＵ２０５に伝える役割をする。ネットワークインタフェース２１１は、例えばＬＡＮカード等で実現され、ＬＡＮ１０に接続して外部装置との間で情報の入出力を行う。さらにまた、モデム２１２は公衆回線２０４に接続し、外部装置との間で情報の入出力を行う。以上のユニットがシステムバス２１３上に配置されている。
【００３１】
イメージバスＩ／Ｆ２１４は、システムバス２１３と、画像データを高速で転送する画像バス２１５とを接続するためのインタフェースであり、データ構造を変換するバスブリッジである。画像バス２１５上には、ラスタイメージプロセッサ（ＲＩＰ）２１６、デバイスＩ／Ｆ２１７、スキャナ画像処理部２１８、プリンタ画像処理部２１９、画像編集用画像処理部２２０、カラーマネージメントモジュール（ＣＭＭ）２３０が接続される。
【００３２】
ラスタイメージプロセッサ（ＲＩＰ）２１６は、ページ記述言語（ＰＤＬ）コードや後述するベクタデータをイメージに展開する。デバイスＩ／Ｆ部２１７は、スキャナ２０１やプリンタエンジン２０２とコントロールユニット２００とを接続し、画像データの同期系／非同期系の変換を行う。
【００３３】
また、スキャナ画像処理部２１８は、スキャナ２０１から入力したスキャン画像データに対して、補正、加工、編集等の各種処理を行う。プリンタ画像処理部２１９は、プリント出力する画像データに対して、プリンタエンジン２０２に応じた補正、解像度変換等の処理を行う。画像編集用画像処理２２０は、画像データの回転や、画像データの圧縮伸長処理等の各種画像処理を行う。カラーマネージメントモジュール（ＣＭＭ）２３０は、画像データに対して、プロファイルやキャリブレーションデータに基づいた、色変換処理（色空間変換処理ともいう）を施す専用ハードウェアモジュールである。プロファイルとは、機器に依存した色空間で表現したカラー画像データを機器に依存しない色空間（例えばＬａｂなど）に変換するための関数のような情報である。キャリブレーションデータとは、ＭＦＰにおけるスキャナ２０１やプリンタエンジン２０２の色再現特性を修正するためのデータである。
【００３４】
＜コントローラソフトウェア構成＞
図３は、ＭＦＰの動作を制御するコントローラソフトウェアの構成を示すブロック図である。
【００３５】
プリンタインターフェイス３００は、外部との入出力のための手段である。プロトコル制御部３０２は、ネットワークプロトコルを解析・送信することによって外部との通信を行う手段である。
【００３６】
ベクタデータ生成部（第１の変換手段）３０４は、ビットマップイメージから解像度に依存しない描画記述であるベクタデータを生成（ベクタライズ）するものである。
【００３７】
メタデータ生成部（第２の変換手段）３０６はベクタライズの過程で得られる副次情報をメタデータとして生成するものである。メタデータとは描画処理には必要のない検索用の付加情報データである。
【００３８】
ＰＤＬ解析部３０８は、ＰＤＬを解析し、より処理しやすい形式の中間コード（ＤｉｓｐｌａｙＬｉｓｔ、以下、「ＤＬ」とよぶ。）に変換する手段である。ＰＤＬ解析部３０８において生成された中間コードはデータ描画部３１０に渡されて処理される。データ描画部３１０は上記中間コードをビットマップデータに展開するものであり、展開されたビットマップデータはページメモリ３１２に逐次描画されて行く。
【００３９】
ページメモリ３１２はレンダラが展開するビットマップデータを一次的に保持する揮発性のメモリである。
【００４０】
パネル入出力制御部は操作パネルからの入出力を制御するものである。
【００４１】
ドキュメント記憶部３１６は入力文書の一塊（ジョブ）単位にベクタデータ、ＤＬ、メタデータを包含するデータファイルを記憶する手段であり、ハードディスク等の二次記憶装置によって実現される。なお、このデータファイルを本実施例では「ドキュメント（またはＤｏｃｕｍｅｎｔ）」と呼ぶ。
【００４２】
スキャン制御部３１８はスキャナから入力した画像データに対して、補正、加工、編集などの各種処理を行う。
【００４３】
印刷制御部３２０は、ページメモリ３１２の内容をビデオ信号に変換処理し、プリンタエンジン部３２２へ画像転送を行なう。プリンタエンジン部３２２は受け取ったビデオ信号を記録紙に永久可視画像形成するための印刷機構部である。
【００４４】
＜コントローラユニットのデータ処理＞
次に、ドキュメントを構成するベクタデータ、ＤＬ、メタデータがどのように生成されるのかを説明する。
【００４５】
図４、図５、図６は本実施形態におけるコントロールユニット２００のデータフローを示している。
【００４６】
図４はコピー動作時のデータフローである。
【００４７】
まず原稿露光部にセットされた紙原稿はスキャン処理ｄ１によってビットマップデータに変換される。次にベクタライズ処理ｄ２とメタデータ生成処理ｄ４によってビットマップデータからそれぞれ解像度に依存しないベクタデータとそれに付随するメタデータが生成される。ベクタデータ、メタデータの具体的な生成方法については後述する。
【００４８】
次にドキュメント生成処理ｄ３によってベクタデータとメタデータが関連付けられたドキュメントが生成される。次にＤＬ生成処理ｄ５によりドキュメント中のベクタデータからＤＬが生成され、生成されたＤＬはドキュメントの中に格納されると共にレンダリング処理ｄ７に送られてビットマップに展開される。
【００４９】
展開されたビットマップは印刷処理ｄ８によって紙媒体に記録されて印刷物となる。なお、出力された印刷物をまた原稿露光部にセットすればスキャンｄ１処理からの処理を行うことができる。
【００５０】
図５は図４で示したメタデータ生成処理ｄ４の具体的なデータフローを示している。まず領域分割処理ｄ１にてビットマップから領域分割を行う。
【００５１】
領域分割とは、入力されたビットマップ画像データを解析して、画像に含まれるオブジェクトの塊毎に領域に分割し、各領域の属性を判定して分類する処理である。属性としては、文字（ＴＥＸＴ）、画像（ＰＨＯＴＯ）、線（ＬＩＮＥ）、図形（ＰＩＣＴＵＲＥ）、表（ＴＡＢＬＥ）等の種類がある。
【００５２】
ここで図７に、入力画像に対して領域分割を行った場合の一例を示す。入力画像７１に対して領域分割を行った結果が判定結果７２である。判定結果７２で、点線で囲った部分が画像を解析した結果のオブジェクトの１単位を表し、各オブジェクトに対して付されている属性の種類が領域分割の判定結果である。
【００５３】
属性毎に分類された領域の中から文字属性の領域はＯＣＲ処理ｄ２により文字認識処理され、文字列に変換される。つまり、この文字列は紙面に印字されている文字列である。一方、属性毎に分類された領域の中から画像属性の領域は画像情報抽出処理ｄ３を通して画像情報に変換される。画像情報とは画像の特徴を現す文字列であり例えば「花」や「顔」といった文字列である。画像情報の抽出には画像特徴量（画像を構成するピクセルの周波数や濃度など）検出や顔認識などの一般的な画像処理技術を用いることができる。
【００５４】
生成された文字列と画像情報はフォーマット変換処理ｄ４によって後述するデータフォーマットに整えられてメタデータが生成される。
【００５５】
図６はＰＤＬプリント時のデータフローである。ＰＤＬプリントとはＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）上のアプリケーションソフトから印刷を指示した場合にＰＣ上のプリンタドライバによって生成されたＰＤＬデータを受け取って出力する、プリンタ動作のことである。
【００５６】
まず受信したＰＤＬデータはＰＤＬデータ解析処理ｄ１によって解析され、ベクタデータが生成される。
【００５７】
次にＤＬ生成処理ｄ２によりベクタデータからＤＬが生成され、生成されたＤＬはドキュメントの中に格納されると共にレンダリング処理ｄ３に送られてビットマップに展開される。展開されたビットマップは印刷処理ｄ４によって紙媒体に記録されて印刷物となる。この過程で生成されるベクタデータ、ＤＬはドキュメント生成処理ｄ６によってドキュメントに格納される。
【００５８】
さらに、レンダリング処理ｄ３が生成したビットマップからはメタデータ生成処理ｄ５により、コピー動作時と同様に文字列や画像情報がメタデータとして生成され、ドキュメントに格納される。
【００５９】
また、ＰＤＬにはＬＩＰＳ（ＬＢＰ  Ｉｍａｇｅ  Ｐｒｏｃｅｓｓｉｎｇ  Ｓｙｓｔｅｍ）やＰＳ（ＰｏｓｔＳｃｒｉｐｔ）など様々な種類が存在するが、ＰＤＬによっては文字列情報を持っているものもある。この場合はＰＤＬ解析時に文字列からメタデータが生成され、ドキュメントに格納される。
【００６０】
次に、ドキュメント生成処理と印刷処理についてフローチャートを用いて説明する。
【００６１】
図８はドキュメント生成処理を示している。この処理はビットマップデータを受けてベクタデータ、ＤＬ、メタデータで構成されるドキュメントを生成する処理である。
【００６２】
まずステップＳ８０１で前述した領域分割処理を行う。次に領域の種別（領域属性）をステップＳ８０２においてＴＥＸＴ，ＧＲＡＰＨＩＣ，ＩＭＡＧＥに分類し、それぞれに対して別々の処理を行う。図７では領域属性をＴＥＸＴ，ＰＨＯＴＯ、ＬＩＮＥ，ＰＩＣＴＵＲＥ，ＴＡＢＬＥに分類した例を示したが、図７の領域属性はＰＨＯＴＯ、ＰＩＣＵＲＥはＩＭＡＧＥに、ＬＩＮＥ，ＴＡＢＬＥはＧＲＡＰＨＩＣに分類される。
【００６３】
領域属性がＴＥＸＴの場合は、ステップＳ８０３に進んでＯＣＲ処理を行った後、ステップＳ８０４において文字列の抽出を行う。その後、ステップＳ８０５において文字列をメタデータに変換し、ステップＳ８０６に進んで認識した文字輪郭をベクタデータに変換（ベクトル化）する。
【００６４】
ここで、もう少し説明を加えておく。
【００６５】
文字列から生成されるメタデータは文字コードの羅列であるが、文字コードの羅列はキーワード検索に必要な情報である。
【００６６】
しかし、ＯＣＲ処理では文字コードは認識できても「明朝」、「ゴシック」といった書体や「１０ｐｔ」、「１２ｐｔ」といった文字のサイズ、「イタリック」、「ボールド」といった文字修飾までは認識できない。したがって描画用には文字コードを用いるのではなく文字輪郭をベクタデータとして保持する必要がある。
【００６７】
一方、ステップＳ８０２において領域属性がＩＭＡＧＥである場合は、ステップＳ８０７に進んで画像情報抽出処理を行う。
【００６８】
ステップＳ８０７では前述したように、画像特徴量検出や顔認識などの一般的な画像処理技術を用いて画像の特徴を検知する。次にステップＳ８０８に進んで検知した画像の特徴を文字列に変換する。この変換は特徴パラメータと文字列のテーブルを保持しておけば容易である。
【００６９】
その後、ステップＳ８０９において文字列をメタデータへ変換する。
【００７０】
ＩＭＡＧＥの領域属性に対してはベクトル化を行わず、イメージデータをそのままベクタデータに保持する。
【００７１】
ステップＳ８０２において領域属性がＧＲＡＰＨＩＣである場合は、ステップＳ８１０に進んでベクトル化処理を行う。
【００７２】
ステップＳ８１１において、メタデータ又はベクタデータはドキュメントフォーマットに変換される。
【００７３】
図９はＰＤＬからのドキュメント生成・印刷処理を示している。この処理はＰＤＬデータを受けてドキュメントを生成、印刷出力する処理である。
【００７４】
まずステップＳ９０１でＰＤＬデータを解析する、解析中に文字列情報などのメタデータがＰＤＬに包含されていたらステップＳ９０９に進んでＰＤＬの情報をメタデータに追加する。
【００７５】
一方、ステップＳ９０２において文字列情報などのメタデータ以外のデータについてはステップＳ９０３に進んでベクタデータに変換した後、ステップＳ９０４に進んでドキュメントを生成する。
【００７６】
次にステップＳ９０５においてＤＬを生成し、ステップＳ９０６に進んで生成したＤＬをドキュメントに追加する。
【００７７】
ここまでのフローでドキュメントが生成されるが、その後ステップＳ９０７のレンダリング処理、ステップＳ９０８の紙媒体への印刷処理を行うと全ての処理を終了する。
【００７８】
＜ドキュメントデータ構造＞
次に、ドキュメントの構造を説明する。
【００７９】
図１１はドキュメントのデータ構造を示している。
【００８０】
ドキュメントは複数ページからなるデータであり、大きく分けるとベクタデータ（ａ）、メタデータ（ｂ）、ＤＬ（ｃ）、で構成されており、ドキュメントヘッダ（ｘ１）を先頭とする階層構造である。ベクタデータ（ａ）はさらに、ページヘッダ（ｘ２）、サマリ情報（ｘ３）、オブジェクト（ｘ４）で構成されており、メタデータ（ｂ）はさらにページ情報（ｘ５）と詳細情報（ｘ６）で構成されている。ＤＬ（ｃ）はさらに、ページヘッダ（ｘ７）と描画展開用のインストラクション（ｘ８）から構成されている。ドキュメントヘッダ（ｘ１）にはベクタデータの格納場所とＤＬの格納場所が記述されているためベクタデータとＤＬはドキュメントヘッダ（ｘ１）によって関連付けられている。
【００８１】
ベクタデータ（ａ）は解像度非依存な描画データ（解像度非依存データ）であるので、ページヘッダ（ｘ２）はページの大きさや向きなどのレイアウト情報が記述される。オブジェクト（ｘ４）にはライン、多角形、ベジェ曲線などの描画データが一つずつリンクされており、複数のオブジェクトがまとめてサマリ情報（ｘ３）に関連付けられている。サマリ情報（ｘ３）は複数のオブジェクトの特徴をまとめて表現するものであり、図７で説明した分割領域の属性情報などが記述される。
【００８２】
メタデータ（ｂ）は描画処理には関係しない検索用の付加情報である。ページ情報（ｘ５）領域には、例えばメタデータがビットマップデータから生成されたものなのか、ＰＤＬデータから生成されたものなのか、などのページ情報が、詳細情報（ｘ６）にはＯＣＲ情報や画像情報として生成された文字列（文字コード列）が記述される。
【００８３】
また、ベクタデータ（ａ）のサマリ情報（ｘ３）からはメタデータが参照されており、サマリ情報（ｘ３）から詳細情報（ｘ６）を見つけることができる。
【００８４】
ＤＬ（ｃ）はレンダラがビットマップ展開するための中間コードである。ページヘッダ（ｘ７）にはページ内の描画情報（インストラクション）の管理テーブルなどが記述され、インストラクション（ｘ８）は解像度依存な描画情報で構成されている。
【００８５】
＜入力データ種別の保存＞
次に、入力データ種別の保存処理について説明する。
【００８６】
図１０のフローチャートは入力データ種別の保存処理を示している。
【００８７】
この処理は図４および図６で説明した各ドキュメントの生成時に行われる処理である。
【００８８】
まずステップＳ１００１で生成されたドキュメントのメタデータを取得する。次にステップＳ１００２においてこのドキュメントがビットマップ画像から生成されたものであるかを判断する。図５で示したデータフローの直後であればヒットマップ画像から生成されたものである。
【００８９】
ステップＳ１００２においてビットマップ画像から生成されたと判断した場合には、ステップＳ１００３に進んでステップＳ１００１で取得したメタデータのページ情報に入力データ種別＝「全面イメージ」を設定する。一方、ステップＳ１００２においてＰＤＬから生成されたと判断した場合には、ステップＳ１００４に進んで入力データ種別を「ＰＤＬ」に設定する。なお、ステップＳ１００３において既に入力データ種別に「ＰＤＬ」が設定されていたとしてもこれを「全面イメージ」で上書き設定する。したがって、ＰＤＬをレンダリングして生成したイメージ画像はこの処理を通すことによって「全面イメージ」に書き換わることになる。
【００９０】
ここで、図１２を用いて入力データ種別についての詳細を説明する。
【００９１】
図１２は図１１で示したメタデータのデータ構造を示している。
【００９２】
図１２において、ｍｐ１、ｍｐ２はそれぞれ１ページ目、２ページ目のメタデータを示している。ｍｐ１はページＩＤ  ｍｄ１と入力データ種別  ｍｄ２、およびページ内を解析して得られる詳細なメタ情報ａ２で構成されている。ｍｐ２も同様の構成であり、全てのページは同様の構成をとる。このように、入力データ種別は各ページに一つだけ保存されるメタデータである。
【００９３】
＜入力データ種別による処理の切り替え＞
次に、図１３、図１４、図１５を用いてスキャン画像とＰＤＬの特徴について説明する。図１３は、ここでの説明に使用する印刷出力されたデータの例である。
【００９４】
黒い矩形ｏ１の上に丸い図形ｏ２を重ねたものであり、ｏ１とｏ２が重なる部分ｃ１は下地の黒が透けて見えている画である。
【００９５】
この画をスキャン画像から入力した場合の一例を図１４に、ＰＤＬから入力した場合の一例を図１５に示す。
【００９６】
スキャン画像からイメージ画像として入力された画は、前述したようにベクタライズ処理を行うが、図５で説明したように、まず領域分割を行うために図１４のように重なり部分は別領域に分割され、ｓ１，ｓ２，ｓ３の３つの領域に分割される。比較的単純なｓ１、ｓ３は点列で構成されたベクタデータに、複雑なｓ２はビットマップに変換される場合が多いが、ｓ１，ｓ２，ｓ３は領域分割されているために重なりのない描画データに変換されているという重要な特徴がある。
【００９７】
これに対してＰＤＬとして入力された画は、図１５のように黒い矩形ｐ１と丸い図形ｐ２の２つの図形で表現されており、丸い図形ｐ２に透過率５０％という指定を行うことによって重なりを実現する。つまり、ＰＤＬデータは領域に分割されておらず、より高度で抽象的な表現となる。
【００９８】
また、図１４で領域分割されたｓ１，ｓ２，ｓ３、および図１５のｐ１，ｐ２はドキュメントデータ構造においては、図１１のａ１，ａ２のように一塊のブロックに構造化される。
【００９９】
図１６はドキュメント印刷処理を示している。この処理は生成されたドキュメントを印刷出力する処理である。
【０１００】
まずステップＳ１６０１でドキュメントデータを受け取り、ステップＳ１６０２においてドキュメントデータ中のメタデータを取得する。次にステップＳ１６０９においてメタデータに保存されている入力データ種別が「全面イメージ」であるか否かを判定する。入力データ種別が「全面イメージ」である場合にはブロック毎にページデータを分割し、Ｓ１６０８においてそれぞれのブロック毎（ページ中の部分単位）にスレッドを割り当ててからステップＳ１６０３に進む。一方、ステップＳ１６０３で「全面イメージ」でない、すなわち「ＰＤＬ」であると判定した場合にはそのままステップＳ１６０３に進んで処理を続行する。
【０１０１】
ステップＳ１６０３ではドキュメント中のベクタデータからＤＬを生成する。次にステップＳ１６０４において生成したＤＬをドキュメントに追加し、ステップＳ１６０５でＤＬをビットマップにレンダリングする。最後にステップＳ１６０６において紙媒体への印刷処理を行うと処理を終了する。
【０１０２】
すなわち、各スレッドをＣＰＵ２０５の複数のプロセッサで処理すれば入力データ種別が「全面イメージ」の場合には処理を並列化することができるため高速処理が可能となる。
【０１０３】
[実施例２]
実施例１では入力データ種別を利用して並列処理を可能にしたが、本実施例では、入力データ種別を利用して余分な処理を行わないよう処理を切り替えることで高速化を図る。
まず、図１７、図１８を用いてベクタデータを最適化する処理の一例を説明する。
【０１０４】
図１７はグラデーション描画の例である。
【０１０５】
図１７（ａ）では少しずつ色の異なる平行四辺形を接合させてグラデーションを表現しており、一つの平行四辺形は（ｘ１，ｙ１）、（ｘ２，ｙ２）、（ｘ３，ｙ３）、（ｘ４，ｙ４）の４点で表現されている。このようなデータではグラデーションが滑らかになればなるほど平行四辺形の数が増え、点列データが膨大になってしまう。そこで、平行四辺形の接合具合や色の変化の割合をチェックして図１７（ｂ）のように一つの図形にまとめてしまうという最適化処理を一般的に行っている。
【０１０６】
図１８は階段状図形描画の例である。
【０１０７】
図１８（ａ）では高さが一定（通常は１ピクセル）で幅の異なる長方形を接合させて階段状の菱型を表現しており、一つの長方形は（ｘ１，ｙ１）、（ｘ２，ｙ２）、（ｘ３，ｙ３）、（ｘ４，ｙ４）の４点で表現されている。このようなデータも点列が膨大になるが、高さが一定であれば図１８（ｂ）のように（ｘ１，ｙ１）から（ｘ２，ｙ２）へｘ方向の差分だけで表現することができる。
【０１０８】
図１７、図１８のような最適化処理はベクタデータを大幅に最適化することができるが、処理に時間がかかってしまう。
【０１０９】
ここで、一般にこのような表現を行うのはアプリケーションからの出力であるＰＤＬだけである。
【０１１０】
したがって、入力データ種別を利用し、スキャン画像の場合にはこれらの最適化処理を省略することにより高速化を図ることができる。
【０１１１】
図１９は最適化処理の切り替え処理を示すフローチャートである。
【０１１２】
まずステップＳ１９０１においてドキュメント中のメタデータを取得する。
【０１１３】
次にステップＳ１９０１において取得したメタデータに保存されている入力データ種別を検出する。入力データ種別が「ＰＤＬ」である場合にはステップＳ１９０３に進み、前述した最適化処理を実行する。一方、ステップＳ１９０２において。入力データ種別が「全面イメージ」である場合には最適化処理は行わずにそのまま処理を終了する。
【０１１４】
[実施例３]
本実施例では、入力データ種別を利用して文書検索の利便性を向上する。
【０１１５】
まず、図２０、図２１、図２２を用いてスキャン画像から生成される文字列とＰＤＬから生成される文字列の特徴について説明する。
【０１１６】
図２０はここでの説明に使用する印刷出力されたデータの例である。
【０１１７】
図２０の画は正体文字ｓｔ２，ｓｔ３と、イタリック加工された文字ｓｔ１，ｓｔ４とから構成されている。
【０１１８】
この画をＰＤＬから入力した場合の一例を図２１に示す。
【０１１９】
ＰＤＬとして入力される文字列は、正体の部分は図２１（ｂ）に示すように文字コードとして入力される。一方、イタリック体の部分は図２１（ａ）に示すようにダウンロード文字（ビットマップ文字）として入力される。このように修飾のかかった文字を修飾加工済みのビットマップ文字で表現するか、イタリック加工指令と文字コードで表現するかは一般に文書を作成するアプリケーションに依存する。ダウンロード文字として入力された”ＰＤＬ”という文字部分は文字コードで表現されないため、文字列が認識できない。
【０１２０】
これに対してスキャン画像から入力された場合は、ページ内を一様にＯＣＲ処理されるため全ての文字は文字列として認識することができる。
【０１２１】
図２０の画がＰＤＬとスキャン画像それぞれで入力された場合のドキュメントデータを図２２に示す。
【０１２２】
図２２（ａ）はＰＤＬで入力された場合のドキュメントデータであり、ダウンロード文字”ＰＤＬ”（ｔ１）とテキスト文字”ｄａｔａ  ｈａｓ  ｖａｒｉｏｕｓ”（ｔ２）に分割されて保持される。ここで得られるメタデータはｔ２の文字コードから得られる文字列だけである。したがってメタデータｍｔには”ｄａｔａ”，”ｈａｓ”，”ｖａｒｉｏｕｓ”だけが保持され、ページ情報ｍｐの入力データ種別は「ＰＤＬ」となる。
【０１２３】
図２２（ｂ）はスキャン画像から入力された場合のドキュメントデータである。スキャン画像は前述したようにベクタライズ処理により文字形はベクトル点列（ｔ１）に変換され、同時にＯＣＲ処理によって文字列が抽出される。
【０１２４】
したがってメタデータｍｔには”ＰＤＬ”，”ｄａｔａ”，”ｈａｓ”，”ｖａｒｉｏｕｓ”が保持され、ページ情報ｍｐの入力データ種別は「全面イメージ（Ｉｍａｇｅ）」となる。
【０１２５】
このように、メタデータに格納される文字列は、スキャン画像から生成されるものに比べてＰＤＬから生成されるものは情報が欠落するという特徴がある。
【０１２６】
したがって、ドキュメントを全文検索して任意の文字列を含むドキュメントをピックアップするという検索機能では操作者の混乱を招く場合がある。印刷出力結果は全く同じ（図２０（ａ））であるにもかかわらず、”ＰＤＬ”という文字列でドキュメントを検索すると、図２２（ｂ）（スキャン画像からの入力）にはヒットするが図２２（ａ）（ＰＤＬからの入力）にはヒットしないからである。
【０１２７】
図２３は操作者が、ボックスに保存したドキュメントの検索を指示する場合における画像処理装置の操作部の表示部へ表示される画面の一例である。図２３のｕ１はボックス内のファイルを一覧表示するための表示部である。
【０１２８】
ｕ２は合成ボタンであり、操作者が画面上で複数のファイルを選択し、ｕ２の合成ボタンを押下することにより選択されたファイルが結合されて一つのファイルが生成される。
【０１２９】
ｕ３は検索ボタンである。操作者がファイルを探したい場合、検索ボタンを押下し、任意の文字列を入力する（不図示）ことによりボックス内のファイルが検索されて、結果がｕ１に一覧表示される。
【０１３０】
図２４は本実施例による検索処理切り替えを示すフローチャートである。
【０１３１】
この処理は生成されたドキュメントを検索の対象にするか否かを切り替える処理である。
【０１３２】
まずステップＳ２４０１でドキュメントデータ中のメタデータを取得する。次にステップＳ２４０１においてメタデータに保存されている入力データ種別が「ＰＤＬ」であるか否かを判定する。入力データ種別が「ＰＤＬ」である場合にはそのまま処理を終了する。一方、ステップＳ２４０２で「ＰＤＬ」でない、すなわち「全面イメージ」であると判定した場合にはステップＳ２４０３に進んでページ内のメタデータの検索処理を続行する。
【０１３３】
すなわち、検索対象を入力データ種別がスキャン画像であるドキュメントに限定することで操作者の混乱を防ぐことができる。
【０１３４】
[実施例４]
本実施例では、入力データ種別を利用して汎用フォーマットへの変換処理を効率化する。
【０１３５】
スキャン画像やＰＤＬから生成されたドキュメントの構造は印刷や検索するには好都合である。しかし、クライアントＰＣからアプリケーションを使って表示（プレビュー）する場合にはＰＤＦ（Ｐｏｒｔａｂｌｅ  Ｄｏｃｕｍｅｎｔ  Ｆｏｒｍａｔ）などの汎用フォーマットに変換する必要がある。しかしながら、ＰＤＬから生成されたドキュメントは汎用フォーマットへの変換は容易ではない。
【０１３６】
たとえば、ＬＩＰＳ（ＬＢＰ  Ｉｍａｇｅ  Ｐｒｏｃｅｓｓｉｎｇ  Ｓｙｓｔｅｍ）などのＰＤＬは”ＲＯＰ（Ｒａｓｔｅｒ  Ｏｐｅｒａｔｉｏｎ）”という論理演算を用いてクリッピング（型抜き）処理を行うのが一般的である。しかし、汎用フォーマットのＰＤＦの描画モデル（描画表現）にはＲＯＰが無い。そこで、ＲＯＰ処理をクリップ点列など他の描画表現に置き換える必要があり、置き換えによって作成された描画表現は非常に冗長なものとなる。
【０１３７】
図２６を用いて具体的に説明する。図２６（ａ）は説明に使用する印刷出力されたデータの例であり、型抜きされた画像が描画されている。図２６（ｂ）は図２６（ａ）を描画するための、ＰＤＬでの描画表現の例である。まずＸＯＲで画像イメージを描き、次にＡＮＤで型抜き用の黒いイメージを描く。最後にＸＯＲで先ほどと同じ画像イメージを描くことにより図２６（ａ）の結果が得られる。図２６（ｃ）は図２６（ａ）を描画するための、汎用フォーマットでの描画表現の例である。型抜きの形をした点列をクリップ領域として設定し、画像イメージを描くことにより図２６（ａ）の結果が得られる。
【０１３８】
図２５は本実施例による汎用フォーマット変換処理（データ変換処理）の切り替えを示すフローチャートである。
【０１３９】
この処理は生成されたドキュメントから汎用フォーマットへの変換時にレンダリング処理の実行／不実行を切り替える処理である。
【０１４０】
まずステップＳ２５０１でドキュメントデータ中のメタデータを取得する。次にステップＳ２５０１においてメタデータに保存されている入力データ種別が「ＰＤＬ」であるか否かを判定する。入力データ種別が「ＰＤＬ」でない場合にはそのままステップＳ２５０５へ進んで汎用フォーマットへの変換処理を行う。
【０１４１】
一方、ステップＳ２５０２で「ＰＤＬ」であると判定した場合にはステップＳ２５０３に進んで該当ページをレンダリング処理（ビットマップ展開）する。すなわち、入力データ種別（ＰＤＬ）を画像データに変更する。レンダリング処理されたＰＤＬデータはスキャン画像と同様に全面イメージデータとなるので、ステップＳ２５０４においてスキャンデータ処理を行う。スキャンデータ処理は要するに前述したスキャン画像と同一の処理である。その上でステップＳ２５０５へ進んで汎用データフォーマットへの変換を行う。この変換はステップＳ２５０２からそのままステップＳ２５０５へ進んだ場合（すなわち入力データ種別がスキャン画像の場合）と同一の処理である。
【０１４２】
すなわち、本実施例ではＰＤＬ画像は汎用フォーマットへの変換時に一旦レンダリング処理することで、スキャン画像と同じ変換処理が可能となり、汎用フォーマットが冗長な描画表現に変換されることを回避することができる。
【０１４３】
なお、ステップＳ２５０５で行う汎用フォーマットへの変換処理はドキュメントのベクタデータを汎用フォーマットの描画表現に一対一に変換するだけであるので説明は省略する。
【０１４４】
[他の実施形態]
以上、様々な実施形態を詳述したが、本発明は、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。例えば、スキャナ、プリンタ、ＰＣ、複写機、複合機及びファクシミリ装置の如くである。
【０１４５】
本発明は、前述した実施形態の各機能を実現するソフトウェアプログラムを、システム若しくは装置に対して直接または遠隔から供給し、そのシステム等に含まれるコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される。
【０１４６】
従って、本発明の機能・処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、上記機能・処理を実現するためのコンピュータプログラム自体も本発明の一つである。
【０１４７】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【０１４８】
プログラムを供給するためのコンピュータ読み取り可能な記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷなどがある。また、コンピュータ読み取り可能な記録媒体としては、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ、ＤＶＤ−Ｒ）などもある。
【０１４９】
また、プログラムは、クライアントコンピュータのブラウザを用いてインターネット／イントラネットのウェブサイトからダウンロードしてもよい。すなわち、該ウェブサイトから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードしてもよいのである。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるウェブサイトからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明の構成要件となる場合がある。
【０１５０】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布してもよい。この場合、所定条件をクリアしたユーザにのみ、インターネット／イントラネットを介してウェブサイトから暗号化を解く鍵情報をダウンロードさせ、その鍵情報で暗号化されたプログラムを復号して実行し、プログラムをコンピュータにインストールしてもよい。
【０１５１】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現されてもよい。なお、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行ってもよい。もちろん、この場合も、前述した実施形態の機能が実現され得る。
【０１５２】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれてもよい。そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ってもよい。このようにして、前述した実施形態の機能が実現されることもある。
【０１５３】
また、実施例１ではドキュメントデータをブロック毎にスレッドに割り当てたが、スキャン画像の領域分割処理の単位でありさえすればこれに限定するものではない。例えば領域分割処理が面積分割ではなくレイヤ（層）分割である場合には、レイヤ毎に割り当てることができる。
【０１５４】
また、実施例４では汎用フォーマットへの変換時にレンダリング処理を行ったが、ボックスへの保存時にバックグラウンドでレンダリング処理を行っておいても良い。これにより汎用フォーマットの変換時間を短縮することができる。
【０１５５】
また、実施例４では汎用フォーマットへの変換時にレンダリング処理を行った。レンダリング処理時に得られる属性情報（一般的にレンダリング時に出力される文字・図形・イメージなどの属性ビット）をスキャン画像処理の領域分割に利用することも考えられる。
【図面の簡単な説明】
【０１５６】
【図１】本発明の一実施例の印刷装置（ＭＦＰ）の構造を示す側断面図である。
【図２】実施形態における各機器のコントロールユニットの構成例を示すブロック図である。
【図３】実施形態におけるコントローラソフトウェアの構成の一例を示すブロック図である。
【図４】実施形態におけるスキャン・コピーのデータフローを示す図である。
【図５】実施形態におけるメタデータ生成のデータフローを示す図である。
【図６】実施形態におけるＰＤＬプリントのデータフローを示す図である。
【図７】実施形態におけるベクトル化処理のブロックセレクションの一例を表す図である。
【図８】実施形態におけるイメージからのドキュメント生成のデータフローを示す図である。
【図９】スキャン画像とＰＤＬデータの違いを示す図である。
【図１０】スキャン画像から生成されるデータを示す図である。
【図１１】ＰＤＬから生成されるデータを示す図である。
【図１２】実施形態における並列処理を示すフローチャートである。
【図１３】実施形態におけるＰＤＬの処理を示すフローチャートである。
【図１４】実施形態における入力データ種別設定処理を示すフローチャートである。
【図１５】実施形態におけるドキュメントの格納構造を示す図である。
【図１６】実施形態におけるメタデータの格納構造を示す図である。
【図１７】ベクタデータ最適化の例を示す図である。
【図１８】ベクタデータ最適化の例を示す図である。
【図１９】実施形態における最適化処理の判断処理を示す図である。
【図２０】入力データの例である。
【図２１】入力データ種別によるデータの違いを示す図である。
【図２２】実施形態におけるドキュメントデータの具体例を示す図である。
【図２３】実施形態における操作部に表示される画面の一例を示す図である。
【図２４】実施形態における検索処理の判断処理を示す図である。
【図２５】実施形態における汎用フォーマット変換の判断処理を示す図である。
【図２６】ＰＤＬと汎用フォーマットの描画表現の違いを示す図である。
【符号の説明】
【０１５７】
２００  コントロールユニット
２０１  スキャナ
２０２  プリンタエンジン
２１０  操作部
３０１  ジョブコントロール処理
１１０１  プロトコル制御部
１１０２  ベクタデータ生成部
１１０３  メタデータ生成部
１１０４  ＰＤＬ解析部
１１０５  データ描画部
１１０６  ページメモリ
１０２０  パネル入出力制御部
１０３０  ドキュメント記憶部
１３００  出力制御部
１４００  プリンタエンジン部
１５００  スキャン制御部
【図１】
0005084543.tif 000002
【図２】
0005084543.tif 000003
【図３】
0005084543.tif 000004
【図４】
0005084543.tif 000005
【図５】
0005084543.tif 000006
【図６】
0005084543.tif 000007
【図７】
0005084543.tif 000008
【図８】
0005084543.tif 000009
【図９】
0005084543.tif 000010
【図１０】
0005084543.tif 000011
【図１１】
0005084543.tif 000012
【図１２】
0005084543.tif 000013
【図１３】
0005084543.tif 000014
【図１４】
0005084543.tif 000015
【図１５】
0005084543.tif 000016
【図１６】
0005084543.tif 000017
【図１７】
0005084543.tif 000018
【図１８】
0005084543.tif 000019
【図１９】
0005084543.tif 000020
【図２０】
0005084543.tif 000021
【図２１】
0005084543.tif 000022
【図２２】
0005084543.tif 000023
【図２３】
0005084543.tif 000024
【図２４】
0005084543.tif 000025
【図２５】
0005084543.tif 000026
【図２６】
0005084543.tif 000027