(57)【要約】【課題】  印刷した情報、日付、印刷を行った者などの履歴を蓄積し、蓄積した情報の検索を可能にして、万が一、情報が漏洩した場合に履歴を参照可能にする場合、入出力されたすべての画像を記憶装置に蓄積するには大容量の記憶装置が必要になる。【解決手段】  ユーザ認証を行い(S300)、ユーザ認証に成功すると画像データを取得し(S301)、ブロックセレクションにより画像データを属性ごとの領域に分割する(S302)。次に、各セグメントのオブジェクトをベクトルデータに変換し(S304)、オブジェクトごとに画像ストレージサーバに一致するオブジェクト（ベクトルデータまたは画像データ）が格納されているか否かを検索し(S305)、一致するオブジェクトを検出した場合は、そのオブジェクトに付加されたオブジェクトIDを取得する(S306)。また、一致するオブジェクトを検出しなかった場合は、当該オブジェクトのオブジェクトIDを生成し、オブジェクトIDを付加したベクトルデータ（または画像データ）を画像ストレージサーバ105に登録する(S307)。【選択図】  図3
2006243943.tif 000002
【特許請求の範囲】
【請求項１】
画像を入力して、前記画像に対するジョブを実行する実行手段と、
前記入力手段によって入力した画像を属性の異なる像域に分割する分割手段と、
前記分割手段により分割された像域の画像ごとに、対応する画像をメモリから検索して、対応する画像を検出した場合は、検出した画像のオブジェクトIDを取得する検索手段と、
前記像域の画像に対応する画像を検出しなかった場合は、固有のオブジェクトIDを付加した前記像域の画像を前記メモリに登録する登録手段と、
前記像域の位置情報および前記像域の画像のオブジェクトIDを含む、前記入力画像のレイアウトを示すスキーマ情報を生成する生成手段と、
少なくとも前記スキーマ情報を含む履歴情報を前記メモリに記録する記録手段とを有することを特徴とする画像処理装置。
【請求項２】
さらに、前記生成手段が生成したスキーマ情報に対応するスキーマ情報を前記メモリから検索し、対応するスキーマ情報を検出した場合、検出したスキーマ情報のスキーマIDを取得する取得手段と、
前記スキーマ情報に対応するスキーマ情報を検出しなかった場合、固有のスキーマIDを前記スキーマ情報に付加する付加手段とを有することを特徴とする請求項1に記載された画像処理装置。
【請求項３】
さらに、前記領域の画像をベクトルデータに変換する変換手段を有することを特徴とする請求項1または請求項2に記載された画像処理装置。
【請求項４】
前記ジョブの情報は、前記ジョブを実行した日時、ユーザの情報、前記ジョブの種類、前記画像処理装置を識別するための番号、前記ジョブの結果を含むことを特徴とする請求項1から請求項3の何れかに記載された画像処理装置。
【請求項５】
画像を入力して、前記画像に対するジョブを実行し、
前記入力画像を属性の異なる像域に分割し、
前記像域の画像ごとに、対応する画像をメモリから検索して、対応する画像を検出した場合は、検出した画像のオブジェクトIDを取得し、
前記像域の画像に対応する画像を検出しなかった場合は、固有のオブジェクトIDを付加した前記像域の画像を前記メモリに登録し、
前記像域の位置情報および前記像域の画像のオブジェクトIDを含む、前記入力画像のレイアウトを示すスキーマ情報を生成し、
少なくとも前記スキーマ情報を含む履歴情報を前記メモリに記録することを特徴とする画像処理方法。
【請求項６】
画像処理装置を制御して、請求項5に記載された画像処理を実現することを特徴とするプログラム。
【請求項７】
請求項6に記載されたプログラムが記録されたことを特徴とする記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理装置およびその方法に関し、例えば、画像およびジョブを履歴管理する画像処理に関する。
【背景技術】
【０００２】
画像処理装置の普及に従い、誰でも原稿画像の複写や送信が容易に行えるようになった。しかし、これは、ユーザにとっての利便性が向上した反面、機密情報の複写や送信といった情報漏洩が非常な問題になっている。この問題への対策として、複写や送信などの際に、読み取った画像データすべてを記録装置に蓄積しておく画像処理装置が存在する。これにより、管理者は、漏洩した情報の原稿画像を読み取った画像処理装置を調べて、漏洩源の追跡が可能になる。
【０００３】
特開2004-118243公報は、プリンタで印刷した情報、日付、印刷を行った者などの履歴を蓄積し、蓄積した情報の検索を可能にして、万が一、情報が漏洩した場合に履歴を参照可能にすることで、不正な情報の漏洩の抑止力をもたせた装置を記載する。
【０００４】
しかし、入出力されたすべての画像データを記憶装置に蓄積するには大容量の記憶装置が必要になる。それだけでなく、以前複写された原稿画像を編集して、その一部の文字や画像を変更したような画像データも、以前複写された原稿画像と異なる画像として記憶されることになり、極めて記憶効率が悪いという問題がある。
【０００５】
【特許文献１】特開2004-118243公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明は、画像およびジョブを履歴管理する場合に、オブジェクトの重複登録を防ぐことを目的とする。
【課題を解決するための手段】
【０００７】
本発明は、前記の目的を達成する一手段として、以下の構成を備える。
【０００８】
本発明にかかる画像処理装置は、画像を入力して、前記画像に対するジョブを実行する実行手段と、前記入力手段によって入力した画像を属性の異なる像域に分割する分割手段と、前記分割手段により分割された像域の画像ごとに、対応する画像をメモリから検索して、対応する画像を検出した場合は、検出した画像のオブジェクトIDを取得する検索手段と、前記像域の画像に対応する画像を検出しなかった場合は、固有のオブジェクトIDを付加した前記像域の画像を前記メモリに登録する登録手段と、前記像域の位置情報および前記像域の画像のオブジェクトIDを含む、前記入力画像のレイアウトを示すスキーマ情報を生成する生成手段と、少なくとも前記スキーマ情報を含む履歴情報を前記メモリに記録する記録手段とを有することを特徴とする。
【０００９】
本発明にかかる画像処理方法は、画像を入力して、前記画像に対するジョブを実行し、前記入力画像を属性の異なる像域に分割し、前記像域の画像ごとに、対応する画像をメモリから検索して、対応する画像を検出した場合は、検出した画像のオブジェクトIDを取得し、前記像域の画像に対応する画像を検出しなかった場合は、固有のオブジェクトIDを付加した前記像域の画像を前記メモリに登録し、前記像域の位置情報および前記像域の画像のオブジェクトIDを含む、前記入力画像のレイアウトを示すスキーマ情報を生成し、少なくとも前記スキーマ情報を含む履歴情報を前記メモリに記録することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、画像およびジョブを履歴管理する場合に、オブジェクトの重複登録を防ぐことができる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の実施例の画像処理を図面を参照して詳細に説明する。
【実施例１】
【００１２】
［画像処理システム］
図1は、機能が拡張された記録装置であるMFP（マルチファンクション複合機）を使用して情報の電子化を行う画像処理システムの構成例を示すブロック図である。
【００１３】
この画像処理システムは、オフィス（のような複数の区分）10と20がインターネットのようなWAN 104で接続された環境で実現される。
【００１４】
オフィス10内に構築されたLAN 107には、複合機(MFP: Multi-Function Processor) 100、MFP 100を制御するマネージメントPC 101、クライアントPC 102、画像を記憶する画像ストレージサーバ105、画像の履歴情報を記録するジョブアーカイブサーバ106などが接続されている。オフィス20はオフイス10とほぼ同様の構成を有するが、オフィス20内に構築されたLAN 108には、少なくとも画像ストレージサーバ105、ジョブアーカイブサーバ106などが接続されている。オフィス10のLAN 107とオフィス20のLAN 108は、LAN 107に接続されたプロキシサーバ103、WAN 104、および、LAN 108に接続されたプロキシサーバ103を介して、相互に接続されている。
【００１５】
MFP 100は、文書画像を読み取り、読み取った画像を処理する画像処理の一部を担当する。MFP 100から出力される画像信号は、通信線109を介してマネージメントPC 101に入力される。マネージメントPC 101は、通常のパーソナルコンピュータ(PC)で、画像記憶するハードディスクなどのメモリ、ハードウェアまたはソフトウェアで構成される画像処理部、CRTやLCDなどのモニタ、マウスやキーボードなどの入力部を有するが、その一部はMFP 100に一体化して構成されている。なお、以下では、マネージメントPC 101において、下記の処理などを実行する例を説明するが、マネージメントPC 101が行う処理をMFP 100で実行するようにしても構わない。
【００１６】
マネージメントPC 101は、MFP 100が読み取った画像データをブロックセレクション(BS)によって文字領域や画像領域に分割し、各領域に固有のオブジェクトIDを割り当てて、画像ストレージサーバ105に格納する。また、マネージメントPC 101は、MFP 100によってプリントした画像や送信した画像の、当該画像のオブジェクトIDとレイアウト情報からなるスキーマ情報、日付、ユーザID、ジョブ種といった属性情報をジョブ履歴としてジョブアーカイブサーバ106に記録する。
【００１７】
クライアントPC 102は、画像をMFP 100（またはマネージメントPC 101）に供給して、当該画像をプリントしたり送信したりすることができる。また、クライアントPC 102は、画像ストレージサーバ105やジョブアーカイブサーバ106に格納されている画像やスキーマ情報をダウンロードして、画像表示することができる。
【００１８】
［MFP］
図2はMFP 100の構成例を示すブロック図である。
【００１９】
オートドキュメントフィーダ(ADF)を含む画像読取部110は、一枚または重ねられた複数の原稿それぞれの画像を、光源で照射し、原稿からの反射像をレンズで固体撮像素子上に結像し、固体撮像素子からラスタ順の画像読取信号（例えば600dpi、8ビット）を得る。原稿を複写する場合は、この画像読取信号をデータ処理部115で記録信号へ変換し、複数枚の記録紙に複写する場合は、一旦、記憶部111に一頁分の記録信号を記憶した後、記録信号を繰り返し記録部112に出力することで、複数の記録紙に画像を形成する。
【００２０】
一方、クライアントPC 102から出力されるプリントデータは、LAN 107を介してネットワークインタフェイス(I/F)114へ入力され、データ処理部装置115によって記録可能なラスタデータに変換された後、記録部112によって記録紙上に画像として形成される。
【００２１】
MFP 100に対する操作者の指示は、MFP 100に装備されたキー操作部とマネージメントPC 101のキーボードやマウスからなる入力部113によって行われる。操作入力の表示および画像処理状態の表示などは表示部116によって行われる。
【００２２】
上記のMFP 100の動作は、データ処理部115内の、例えばワンチップマイクロコントローラで構成される制御部115aで制御される。
【００２３】
なお、記憶部111は、マネージメントPC 101からも制御可能である。MFP 100とマネージメントPC 101と間のデータの授受および制御は、ネットワークI/F 117および両者を直結する信号線109を介して行われる。
【００２４】
なお、MFP 100は、ディジタルカメラやディジタルビデオなどの撮像装置、ポータブルデータアシスタント(PDA)などの形態端末装置、ファクシミリなどから画像データを入手するインタフェイスを入力部113の一部として備えていてもよい。
【００２５】
また、入力部113には、ユーザを識別するためのユーザ認識部118が接続されている。ユーザ認識部118は、例えばICカードリーダ、IDや暗証入力用のキー、あるいは、指紋、手紋、毛細血管パターンや虹彩などの生体情報を識別する生体認証装置などで、MFP 100を使用するユーザを特定する情報（以下「ユーザ特定情報」と呼ぶ）を入力し、入力部113を介してデータ処理部115へユーザ特定情報を出力する。
【００２６】
一方、データ処理部115が管理する不揮発性メモリ、または、マネージメントPC 101の不揮発性メモリ（例えばハードディスク）には、MFP 100のユーザごとのセキュリティレベルを示す情報が設定され、記憶されている。従って、データ処理部115は、ユーザ認識部118から入力されるユーザ特定情報に対応するセキュリティレベルを取得することができる。また、ユーザ認識部118としてICカードリーダを使用する場合、ユーザ認識部118からデータ処理部115へICカード内のメモリに記憶されたセキュリティレベルが通知されるようにしてもよい。
【００２７】
なお、以下では、データ処理部115が、ユーザ認識部118により取得されたユーザ特定情報に対応するセキュリティレベルを取得する（または、ユーザ認識部118から直接、セキュリティレベルを取得する）ことを「ユーザ認証」と呼ぶ。
【００２８】
［処理の流れ］
図3は上記の画像処理システムによる処理の流れを説明するフローチャートで、マネージメントPC 101またはデータ処理部115、あるいは、それらの組み合わせによって実行される処理である。
【００２９】
まず、MFP 100は、ユーザ認証を行い(S300)、ユーザ認証に失敗した場合は表示装置116にその旨を表示して、操作を受け付けない。MFP 100は、ユーザ認証に成功すると、画像読取部110を動作させて、一枚の原稿の画像をラスタ走査して、画像読取信号を取得する。画像読取信号は、データ処理部115によって前処理され、入力画像の一頁分の画像データとして、記憶部111に保存される(S301)。
【００３０】
なお、クライアントPC 102からジョブを指示された場合、マネージメントPC 101は、クライアントPC 102に認証を要求し、これに対して入力されるユーザ特定情報に基づきユーザ認証を行う(S300)。そして、ユーザ認証に失敗した場合はクライアントPC 102にその旨を返し、ジョブを受け付けない。また、ユーザ認証に成功すると、マネージメントPC 101はデータ処理部115を制御して、クライアントPC 102から画像データを受け取らせ、前処理させて、入力画像の一頁分の画像データとして、記憶部111に保存させる(S301)。
【００３１】
記憶部111に格納された画像データは、以下で説明する処理からは独立してMFP 100により、ジョブの指示内容に従い処理（コピー、プリント、データ送信またはファクシミリ送信）される。
【００３２】
次に、マネージメントPC 101は、ブロックセレクション(BS)処理を行い、記憶部111に格納された画像データを、文字または線画を含む文字・線画領域、ハーフトーンの写真領域、不定形の画像領域、その他の領域に分割する。さらに、文字・線画領域については、主に文字を含む文字領域、主に表、図形などを含む線画領域を分離し、線画領域は表領域および図形領域に分離する(S302)。なお、実施例1では連結画素を検知し、連結画素の外接矩形領域の形状、サイズ、画素密度などを用いて、属性ごとの領域に分割するが、その他の領域分割手法を用いても構わない。
【００３３】
文字領域は、段落などの塊をブロックとして矩形ブロック（文字領域矩形ブロック）にセグメント化する。線画領域は、表、図形などの個々のオブジェクト（表領域矩形ブロック、線画領域矩形ブロック）ごとに、矩形ブロックにセグメント化する。また、ハーフトーンで表現される写真領域は、画像領域矩形ブロック、背景領域矩形ブロックなどの矩形ブロックにセグメント化する。なお、これら矩形ブロックの情報を「領域分割情報」という。
【００３４】
次に、データ処理部115は、BS処理によって得られた領域分割情報と、入力画像を合成して、図4に一例を示すように、表示部116の操作画面上に表示する(S303)。操作画面の左側には入力画像そのものが表示され、右側に領域分割情報が矩形ブロックとして表示される。なお、図4には、矩形ブロックの理解を容易にするため、各ブロックに、その属性を示す文字列TEXT、PICTURE、LINE、TABLEなどを示すが、実際の操作画面には属性情報は表示されず、矩形ブロックが枠線として表示される。属性情報TEXTは文字属性を、PICTUREは図形属性を、PHOTOは写真属性を、LINEは線画属性を、TABLEは表属性をそれぞれ表す。勿論、図4のように入力画像と領域分割情報とを左右に並置表示する以外に、これらを重ね合わせて入力画像上に矩形ブロックを表示するなど、多様な表示形態が可能である。
【００３５】
次に、マネージメントPC 101は、ベクトル化処理を実行して、各セグメントのオブジェクトをベクトルデータに変換する(S304)。なお、写真属性のオブジェクト（画像データ）はベクトル化しない。続いて、オブジェクトごとに画像ストレージサーバ105に一致するオブジェクト（ベクトルデータまたは画像データ）が格納されているか否かを検索する(S305)。なお、画像ストレージサーバ105は、オブジェクトをユニークなオブジェクトIDとともに記憶している。
【００３６】
オブジェクトは、テキスト、写真、表、線画などの属性に応じて検索する。検索するオブジェクトがテキストの場合は、OCR処理によって文字コードを判別し、文字列を検索すればよい。オブジェクトが図形、表、線の場合は、ベクトル化処理によって生成したベクトルデータから、矩形、特殊図形、表（罫線）それぞれの位置関係や配列などの情報からレイアウト情報を生成し、いわゆるレイアウト検索を行う。検索するオブジェクトが写真画像の場合、画像から抽出した特徴ベクトルに基づき、特徴空間上の誤差から類似率を算出して類似率が高いオブジェクトを検索する。この特徴ベクトルは、色ヒストグラムや色モーメントのような色に関する特徴量、共起行列、コントラスト、エントロピ、Gaborのウェーブレット変換などで表現されるテクスチャ特徴量、フーリエ記述子などの形状特徴量など複数挙げられるが、これら複数の特徴量のうち最適な組み合わせを用いればよい。
【００３７】
マネージメントPC 101は、検索によって一致するオブジェクトを検出した場合は、そのオブジェクトに付加されたオブジェクトIDを取得する(S306)。また、検索によって一致するオブジェクトを検出しなかった場合は、当該オブジェクトのオブジェクトIDを生成し、オブジェクトIDを付加したベクトルデータ（または画像データ）を画像ストレージサーバ105に登録する(S307)。なお、オブジェクトIDは、ユニークなものである必要があり、通常、登録日時などから生成すればよい。
【００３８】
図3には簡略化して示すが、マネージメントPC 101は、読み取った原稿画像のすべてのセグメントのオブジェクトについて、ステップS305からS307の処理を繰り返し実行する。
【００３９】
次に、マネージメントPC 101は、読み取った原稿画像のすべてのセグメントのオブジェクトに対するオブジェクトIDの取得または生成が終了すると、原稿画像のオブジェクトの位置情報と、当該オブジェクトのオブジェクトIDからなるレイアウト情報をスキーマなどで定義したスキーマ情報を生成する(S308)。
【００４０】
次に、マネージメントPC 101は、ジョブの実行日時を示す情報、認証情報（ユーザ名やユーザコード）、画像の名称（ファイル名など）、クライアントPC 102のアドレス情報（IPアドレスやMACアドレス）、ジョブの種類を示す情報（ファクシミリ送信、データ送信、プリント、コピーなど）、MFP 100の機体番号など、ジョブの結果（正常終了、異常終了など）等のジョブ属性情報を取得する(S309)。なお、画像の名称やアドレス情報など必ずしも取得できない情報は空でよい。
【００４１】
次に、マネージメントPC 101は、上記のスキーマ情報およびジョブ属性情報を履歴情報としてジョブアーカイブサーバ106に登録する(S310)。
【００４２】
以下では、図3に示した主要なステップの処理について詳細に説明する。
【００４３】
［ブロックセレクション(S302)］
ブロックセレクションは、図4に示す一頁の画像をオブジェクトの集合体と認識して、各オブジェクトの属性を文字(TEXT)、図画(PICTURE)、写真(PHOTO)、線画(LINE)、表(TABLE)に判別し、異なる属性を持つセグメント（ブロック）に分割する処理である。次に、ブロックセレクションの具体例を説明する。
【００４４】
先ず、処理すべき画像を白黒画像に二値化して、輪郭線追跡によって黒画素で囲まれる画素の塊を抽出する。所定面積以上の黒画素の塊については、その内部の白画素について輪郭線追跡を行い白画素の塊を抽出する。さらに、所定面積以上の白画素の塊の内部の黒画素の塊を抽出するというように、黒画素および白画素の塊の抽出を再帰的に繰り返す。
【００４５】
このようにして得られた画素塊に外接する矩形ブロックを生成し、矩形ブロックの大きさおよび形状に基づき属性を判定する。例えば、縦横比が1に近く、大きさが所定範囲の画素塊を文字属性の画素塊とし、さらに、近接する文字属性の画素塊が整列していてグループ化が可能な場合はそれらを文字領域とする。また、縦横比が小さい扁平な画素塊を線画領域に、所定以上の大きさで、かつ、矩形に近い形状を有し、整列した白画素塊を内包する黒画素塊が占める範囲を表領域に、不定形の画素塊が散在する領域を写真領域、その他の任意形状の画素塊を図画領域に、のようにそれぞれ分類する。
【００４６】
図5はブロックセレクションの結果の一例を示す図で、図5(a)は抽出された各矩形ブロックのブロック情報を示す。ブロック情報には、各ブロックの属性、位置の座標X、Y、幅W、高さH、OCR情報などが含まれる。属性は1〜5の数値で与えられ、「1」は文字属性、「2」は図形属性、「3」は表属性、「4」は線画属性、「5」は写真属性を表す。また、座標X、Yは入力画像における各矩形ブロックの始点のXY座標（左上角の座標）を、幅W、高さHは矩形ブロックのX座標方向の幅、Y座標方向の高さを、ポインタ情報の有無をそれぞれ表す。
【００４７】
また、図5(b)は入力ファイル情報で、ブロックセレクションによって抽出された矩形ブロックの総数を示す。
【００４８】
これら矩形ブロックごとのブロック情報は特定領域のベクトル化に利用される。また、ブロック情報によって、ベクトル化された特定領域とラスタデータの相対位置関係を特定することができ、入力画像のレイアウトを損わずにベクトル化領域とラスタデータ領域を合成することが可能になる。
【００４９】
［ベクトル化処理(S304)］
まず、ベクトル化方法には、次の手法が存在する。
【００５０】
（a）文字属性のセグメントの場合は、OCR処理により文字画像を文字コードに変換する、または、文字のサイズ、スタイル、字体を認識して視覚的に忠実なフォントデータに変換する。
【００５１】
（b）線画または文字属性のセグメントで、OCR処理による文字認識が不可能な場合は、線画または文字の輪郭を追跡し、輪郭情報（アウトライン）を線分のつながりとして表現する形式に変換する。
【００５２】
（c）図形属性のセグメントの場合は、図形オブジェクトの輪郭を追跡し、輪郭情報を線分のつながりとして表現する形式に変換する。
【００５３】
（d）上記(b)または(c)の手法で得られた線分形式のアウトライン情報をベジェ関数などでフィッティングして関数情報に変換する。
【００５４】
（e）上記(c)の手法で得られた図形オブジェクトの輪郭情報から、図形の形状を認識し、円、矩形、多角形などの図形定義情報に変換する。
【００５５】
（f）表属性のセグメントの場合、罫線や枠線を認識し、所定のフォーマットの帳票フォーマット情報に変換する。
【００５６】
以上の手法のほかにも、画像データをコード情報、図形情報、関数情報などのコマンド定義形の情報に置き替える種々のベクトル化処理が考えられる。
【００５７】
［文字領域のベクトル化］
図6はベクトル化処理(S304)の詳細を示すフローチャートで、データ処理部115（またはマネージメントPC 101）によって実行される処理である。
【００５８】
まず、ブロック情報を参照して文字属性のセグメントか否か判断し(S901)、文字属性のセグメントであればステップS902に進んでパターンマッチングの一手法を用いて文字認識を行い、対応する文字コードを得る。
【００５９】
また、文字属性のセグメント以外の場合は、詳細は後述するが、画像の輪郭に基づくベクトル化を実行する(S912)。
【００６０】
文字属性のセグメントの場合は、横書き、縦書きの判定（組み方向の判定）を行うために、画素値に対する水平、垂直の射影をとり(S902)、射影の分散を評価し(S903)、水平射影の分散が大きい場合は横書き、垂直射影の分散が大きい場合は縦書きと判定して、その判定結果に基づき、行の切り出した後、文字を切り出して文字画像を得る(S904)。
【００６１】
文字列および文字への分解は、横書きならば水平方向の射影を利用して行を切り出し、切り出した行に対する垂直方向の射影から文字を切り出す。縦書きの文字領域に対しては、水平と垂直について逆の処理を行えばよい。なお、行、文字の切り出しに際して、文字のサイズも検出し得る。
【００６２】
次に、切り出した各文字について、文字画像から得られる特徴を数十次元の数値列に変換した観測特徴ベクトルを生成する(S905)。特徴ベクトルの抽出には種々の公知手法があるが、例えば、文字をメッシュ状に分割し、各メッシュ内の文字線を方向別に線素としてカウントしたメッシュ数次元ベクトルを特徴ベクトルとする方法がある。
【００６３】
次に、観測特徴ベクトルと、予め字種ごとに求めてある辞書特徴ベクトルとを比較して、観測特徴ベクトルと辞書特徴ベクトルの距離を算出し(S906)、算出した距離を評価して、最も距離の近い字種を認識結果とする(S907)。さらに、距離の評価結果から最短距離と閾値を比較して、最短距離が閾値未満であれば類似度が高いと判定し、最短距離が閾値以上であれば類似度が低いと判定する(S908)。最短距離が閾値以上の場合（類似度が低い場合）は、形状が類似する他の文字と誤認識している可能性が高いので、ステップS907の認識結果を採用せず、文字画像を線画と同様に扱い、文字画像のアウトラインをベクトル化する(S911)。言い換えれば、誤認識の可能性が高い文字画像は、視覚的に忠実なアウトラインのベクトルデータを生成する。
【００６４】
一方、類似度が高い場合は、ステップS907の認識結果を採用するとともに、文字認識に用いる字種数分の辞書特徴ベクトルを、文字形状種すなわちフォント種に対して複数用意しておき、パターンマッチングの際に、文字コードとともにフォント種を出力することで文字フォントを認識する(S909)。続いて、文字認識およびフォント認識よって得られた文字コードおよびフォント情報を参照し、文字コードおよびフォント情報それぞれに対応して予め用意されたアウトラインデータを用いて、各文字をベクトルデータに変換する(S910)。なお、カラー画像データの場合は、文字の色を抽出してベクトルデータとともに記録する。
【００６５】
以上の処理により、文字属性のセグメントに含まれる文字画像をほぼ形状、大きさ、色が忠実なベクトルデータに変換することができる。
【００６６】
［文字領域以外のベクトル化］
文字属性のセグメント以外、すなわち図形属性、線画属性、表属性と判定されるセグメントは、黒画素塊を抽出し、その輪郭をベクトルデータに変換する。なお、写真属性のセグメントは、ベクトル化せず画像データのままにする。
【００６７】
文字領域以外のベクトル化は、まず、線画などを直線および/または曲線の組み合わせとして表現するために、曲線を複数の区間（画素列）に区切る「角」を検出する。図7はベクトル化における角抽出処理を説明する図で、角は曲率が極大になる点で、図7の曲線上の画素Piが角か否かは以下のように判定する。
【００６８】
画素Piを起点とし、線画曲線に沿って画素Piから両方向に所定画素数kずつ離れた画素Pi-k、Pi+kを線分Lで結ぶ。画素Pi-k、Pi+k間の距離をd1、画素Piから線分Lに直交するように下した線分の長さ（画素piと線分Lの距離）をd2が極大になる場合、あるいは、画素Pi-k、Pi+k間の弧の長さをAと距離d1の比d1/Aが所定の閾値以下になる場合、画素Piを角と判定する。
【００６９】
角を検出後、角によって分割された線画曲線の画素列を直線あるいは曲線で近似する。直線への近似は最小二乗法などにより実行し、曲線への近似は三次スプライン関数などを用いる。画素列を分割する角の画素は近似直線あるいは近似曲線における始端または終端になる。
【００７０】
さらに、ベクトル化された輪郭内に白画素塊の内輪郭が存在するか否かを判定し、内輪郭が存在する場合はその輪郭をベクトル化し、内輪郭の内輪郭というように、再帰的に黒画素塊および白画素塊の内輪郭をベクトル化する。
【００７１】
以上のように、輪郭の区分線を直線または曲線で近似する方法を用いれば、任意形状の図形のアウトラインをベクトル化することができる。また、入力画像がカラーの場合は、カラー画像から図形の色を抽出してベクトルデータとともに記録する。
【００７２】
図8はベクトル化において輪郭線をまとめる処理を説明する図である。
【００７３】
輪郭線の注目区間で外輪郭PRjと、内輪郭PRj+1または他の外輪郭が近接している場合、二つまたは三つ以上の輪郭線をひとまとめにして、太さをもつ線として表現することができる。例えば、輪郭PRj+1上の画素Pと、画素Piと最短距離の輪郭PRj上の画素Q間の距離PQを算出し、複数の画素間の距離PQiのばらつきが僅かである場合は、輪郭PRjおよびPRj+1を注目区間を線分PQの中点Mの点列に沿う直線または曲線で近似する。そして、中点Mの点列に沿う近似直線または近似曲線の太さは、例えば、距離PQiの平均値とすればよい。
【００７４】
線や線の集合体である表罫線は、太さをもつ線の集合として表すことにより、効率よくベクトル表現することができる。
【００７５】
［図形の認識］
以上で線図形などのアウトラインをベクトル化した後、ベクトル化された区分線を図形オブジェクトごとにグループ化する。
【００７６】
図9はベクトル化で生成したベクトルデータのグループ化処理を示すフローチャートで、ベクトルデータを図形オブジェクトごとにグループ化する処理を示している。
【００７７】
まず、各ベクトルデータの始点および終点を算出し(S1401)、始点および終点の情報を用いて、図形要素を検出する(S1402)。図形要素とは、区分線によって構成される閉図形であり、検出に際しては、始点、終点になっている共通の角の画素においてベクトルを連結する。すなわち、閉形状を構成するベクトル群はそれぞれ、その両端に連結するベクトルを有するという原理を応用する。
【００７８】
次に、図形要素内に他の図形要素もしくは区分線が存在するか否かを判定し(S1403)、存在すれば、ステップS1401およびS1402を再帰的に繰り返して、それらをグループ化して一つの図形オブジェクトとし(S1404)、存在しなければ、その図形要素を図形オブジェクトとする(S1405)。
【００７９】
なお、図9には一つの図形オブジェクト分の処理しか示さないが、他の図形オブジェクトが存在すれば、その分、図9の処理を繰り返す。
【００８０】
●図形要素の検出(S1402)
図10は図形要素の検出処理を示すフローチャートである。
【００８１】
まず、ベクトルデータより、両端に連結するベクトルを有しないベクトルを除去して、閉図形を構成するベクトルを抽出する(S1501)。
【００８２】
次に、閉図形を構成するベクトルについて、ベクトルの何れかの端点（始点または終点）を開始点として、一定方向（例えば時計回り）に順にベクトルを探索する。すなわち、他端点において他のベクトルの端点を探索し、所定距離内の最近接端点を連結ベクトルの端点とする。閉図形を構成するベクトルを一回りして開始点に戻ると、通過したベクトルすべてを一つの図形要素を構成する閉図形としてグループ化する(S1502)。また、閉図形内部にある閉図形を構成するベクトルもすべて再帰的にグループ化する。さらに、グループ化されていないベクトルの始点を開始点とし、上記と同様の処理を繰り返す。
【００８３】
そして、除去したベクトルのうち、閉図形としてグループ化したベクトルに端点が近接しているベクトル（閉図形に連結するベクトル）を検出し、検出したベクトルをそのグループにグループ化する(S1503)。
【００８４】
以上の処理によって、図形属性のセグメントに含まれる図形をほぼ形状、大きさ、色が忠実な再利用可能なベクトルデータに変換することができる。なお、写真属性のセグメントについては、ベクトル化せず写真データのままにする。
【００８５】
［変形例］
上記では、原稿画像を領域のオブジェクトごとにベクトル化し、オブジェクトIDおよびレイアウト情報からスキーマ情報を作成して、ジョブアーカイブサーバ106に登録する例を説明した。さらに、生成したスキーマ情報について、一致するスキーマ情報がジョブアーカイブサーバ106に登録されているか否かを検索し、一致するスキーマ情報を検出した場合は、そのスキーマ情報に付加されたスキーマIDを取得する。また、一致するスキーマ情報を検出しなかった場合は、ユニークなスキーマIDを生成して、取得または生成したスキーマIDを登録するスキーマ情報に付加して、履歴情報をジョブアーカイブサーバ106登録してもよい。このようにすれば、画像の出力履歴を辿ることができるようになる。
【００８６】
このように、実施例の画像処理システムによれば、各セグメントのオブジェクトに対応するオブジェクトが画像ストレージサーバ105に格納されているか否かを検索し、格納されている場合はそのオブジェクトのオブジェクトIDを取得する。また、格納されていない場合は、固有のオブジェクトIDを付加したオブジェクトを画像ストレージサーバ105に登録する。そして、取得または生成したオブジェクトIDを使用してスキーマ情報を作成し、ジョブ属性情報とともに履歴情報としてジョブストレージサーバ106に登録する。
【００８７】
図1に示す画像処理システムは、ベクトルデータや画像データとして再利用可能なデータを提供するものであるから、異なるジョブにおいて同じオブジェクトが利用される可能性は高く、過去のジョブで使用されたオブジェクトが今回のジョブに含まれる可能性が高い。そのようなオブジェクトは画像ストレージサーバ105に登録されているから、今回のジョブに含まれるオブジェクトが画像ストレージサーバ105に登録されているか否かを判定することで、既に登録済みのオブジェクトの重複登録しを防ぐことができる。
【００８８】
従って、実施例によれば、入出力されたすべての画像データを記憶装置に蓄積する必要はなく、記憶効率を向上することができる。勿論、以前複写された原稿画像を編集して、その一部の文字や画像を変更したような画像データも、変更されたオブジェクトはオブジェクトIDを付加して画像ストレージサーバ105に登録する必要があるが、未変更のオブジェクトはオブジェクトIDを取得するだけで、画像ストレージサーバ105に登録する必要はない。つまり、画像ストレージサーバ105に、オブジェクトを重複して登録することはなく、オブジェクトを登録する画像ストレージサーバ105の記憶効率を向上することができる。
【００８９】
［他の実施例］
なお、本発明は、複数の機器（例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用してもよい。
【００９０】
また、本発明の目的は、前述した実施例の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはCPUやMPU）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施例の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施例の機能が実現される場合も含まれることは言うまでもない。
【００９１】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施例の機能が実現される場合も含まれることは言うまでもない。
【００９２】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【００９３】
【図１】MFPを使用して情報の電子化を行う画像処理システムの構成例を示すブロック図、
【図２】MFPの構成例を示すブロック図、
【図３】画像処理システムによる処理の流れを説明するフローチャート、
【図４】操作画面の表示例を示す図、
【図５】ブロックセレクションの結果の一例を示す図、
【図６】ベクトル化処理の詳細を示すフローチャート、
【図７】ベクトル化における角抽出処理を説明する図、
【図８】ベクトル化において輪郭線をまとめる処理を説明する図、
【図９】ベクトル化で生成したベクトルデータのグループ化処理を示すフローチャート、
【図１０】図形要素の検出処理を示すフローチャートである。
【図１】
2006243943.tif 000003
【図２】
2006243943.tif 000004
【図３】
2006243943.tif 000005
【図４】
2006243943.tif 000006
【図５】
2006243943.tif 000007
【図６】
2006243943.tif 000008
【図７】
2006243943.tif 000009
【図８】
2006243943.tif 000010
【図９】
2006243943.tif 000011
【図１０】
2006243943.tif 000012