(57)【要約】【課題】  複写対象となった文書のイメージデータから、当該文書に対応するオリジナル文書ファイルを特定し、そのファイルに基づいて印刷することで画質劣化を防ぎ、更に、未登録の文書の場合にはベクトル化処理を実行して登録処理を行うことで、早期の段階で画質劣化を抑制する環境を提供する。また、ベクトルデータ化することにより、再利用を容易にすることもでき、また拡大等の画像処理を行なっても画質劣化を少なくすることも可能とする。【解決手段】  オリジナル電子ファイルを特定できなかった場合には、ベクトル化処理を行ない（Ｓ５４）、アプリケーションで再利用できるデータ形式に変換し（Ｓ５５）、ファイルサーバに登録する（Ｓ５６）。この登録による所在が確定するので、その所在情報を２次元バーコードなどの識別子を用いて読取りイメージに合成し（Ｓ４８）、印刷する（Ｓ４９）ことも可能になり、当該印刷した文書を再びスキャンした場合でも登録されている電子ファイルを特定することが容易になる。【選択図】  図５
2004265384.tif 000002
【特許請求の範囲】
【請求項１】
入力された文書イメージに基づいて、格納手段に格納されているオリジナル電子データを検索する検索ステップと、
前記検索ステップでの検索結果、オリジナル電子データが特定されなかった場合、前記入力された文書イメージに対してベクトル化処理を実行するベクトル化ステップと、
前記ベクトル化ステップでベクトルデータ化された該文書イメージのデータを前記格納手段に格納する格納ステップと
を有することを特徴とする画像処理方法。
【請求項２】
更に、前記検索ステップでオリジナル電子データが特定された場合は当該検索されたオリジナル電子データの格納アドレスを通知し、前記検索ステップでオリジナル電子データが特定されなかった場合は前記ベクトル化ステップでベクトルデータ化された文書イメージのデータが格納された格納アドレスを通知する通知ステップを有することを特徴とする請求項１に記載の画像処理方法。
【請求項３】
前記検索ステップでは、前記入力された文書イメージに付加されている、前記オリジナル電子データが格納されているアドレスを示す識別子を認識し、該識別子を認識した結果に基づいて前記オリジナル電子データを検索することを特徴とする請求項１に記載の画像処理方法。
【請求項４】
前記オリジナル電子データが格納されているアドレスを示す識別子として、２次元バーコード、文字列、透かしのうちの少なくともいずれかが使用されることを特徴とする請求項３に記載の画像処理方法。
【請求項５】
前記ベクトル化ステップでは、前記文書イメージに含まれるオブジェクトの属性に基づいて複数の領域に分割し、当該分割された領域毎にベクトル化処理を実行することを特徴とする請求項１に記載の画像処理方法。
【請求項６】
前記ベクトル化ステップでは、文字属性の領域に対し、有意な画素の輪郭を抽出し、当該抽出された輪郭に基づいてアウトラインベクトルを生成することを特徴とする請求項５に記載の画像処理方法。
【請求項７】
前記ベクトル化ステップでは、文字属性の領域に対し、文字認識した結果と文字毎に予め定められたベクトルデータとに基づいて、当該文字属性領域のベクトルデータを生成することを特徴とする請求項５に記載の画像処理方法。
【請求項８】
前記ベクトル化ステップでは、文字属性の領域に対し、文字認識精度が高い場合は、文字認識した結果と文字毎に予め定められたベクトルデータとに基づいて、当該文字属性領域のベクトルデータを生成し、文字認識精度が低い場合は、文字を構成する画素の輪郭に基づいてアウトラインベクトルを生成することを特徴とする請求項５に記載の画像処理方法。
【請求項９】
前記ベクトル化ステップでは、文字属性の領域に対し、同一の文字イメージを判断し、該同一と判断された文字イメージ毎に、当該文字イメージから生成されたベクトルデータを適用することによって、当該文字属性領域のベクトルデータを生成することを特徴とする請求項５に記載の画像処理方法。
【請求項１０】
前記ベクトル化ステップでは、線属性又は線画属性の領域に対し、有意な画素の輪郭を抽出し、当該抽出された輪郭に基づいてアウトラインベクトルを生成することを特徴とする請求項５に記載の画像処理方法。
【請求項１１】
前記ベクトル化ステップでは、表属性の領域に対し、有意な画素の輪郭を抽出し、当該抽出された輪郭に基づいてアウトラインベクトルを生成することを特徴とする請求項５に記載の画像処理方法。
【請求項１２】
前記ベクトル化ステップでは、表属性の領域に対して、罫線部分については当該罫線の輪郭に基づいてアウトラインベクトルを生成し、文字部分については文字属性の領域と同様のベクトル化処理を実行することを特徴とする請求項５に記載の画像処理方法。
【請求項１３】
前記ベクトル化ステップでは、写真属性の領域に対して、画像圧縮処理を実行することを特徴とする請求項５に記載の画像処理方法。
【請求項１４】
前記ベクトル化ステップでのベクトル化処理手法を、属性毎に設定する設定ステップを、更に有し、
前記ベクトル化ステップでは、前記設定ステップで属性毎に設定されたベクトル化処理手法にしたがって、ベクトル化処理を実行することを特徴とする請求項５に記載の画像処理方法。
【請求項１５】
前記設定ステップでは、ベクトルデータ化するか画像データとして扱うか設定可能であることを特徴とする請求項１４に記載の画像処理方法。
【請求項１６】
前記設定ステップでは、文字認識結果を付加するか否か設定可能であることを特徴とする請求項１４に記載の画像処理方法。
【請求項１７】
前記設定ステップでは、背景オブジェクトに含めるよう設定可能であることを特徴とする請求項１４に記載の画像処理方法。
【請求項１８】
更に、前記格納手段に格納された電子データに対し、該電子データの格納アドレスを示す情報を付加して印刷出力する印刷制御ステップを有することを特徴とする請求項１に記載の画像処理方法。
【請求項１９】
更に、前記ベクトル化ステップでベクトルデータ化された文書イメージを、文書処理アプリケーションで扱える既定のフォーマットに変換するフォーマット変換ステップを有し、
前記格納ステップでは、当該フォーマット変換された文書イメージを格納することを特徴とする請求項１に記載の画像処理方法。
【請求項２０】
前記検索ステップでは、前記文書イメージ内に含まれる文字を文字認識した結果に基づいて、前記オリジナル電子データを検索することを特徴とする請求項１に記載の画像処理方法。
【請求項２１】
前記検索ステップでは、前記文書イメージ内の各オブジェクトのレイアウトに基づいて、前記オリジナル電子データを検索することを特徴とする請求項１に記載の画像処理方法。
【請求項２２】
前記検索ステップは、前記オリジナル電子データの候補が複数見つかったとき、当該候補を表示してユーザに選択させるステップを含むことを特徴とする請求項１に記載の画像処理方法。
【請求項２３】
前記ベクトル化ステップでは、前記検索ステップで特定されたオリジナル電子データがイメージデータであり、且つ、ベクトル化処理を実行するように指示された場合、当該イメージに対してベクトル化処理を実行することを特徴とする請求項１に記載の画像処理方法。
【請求項２４】
入力された文書イメージに基づいて、格納手段に格納されているオリジナル電子データを検索する検索ステップと、
前記検索ステップでの検索結果、オリジナル電子データが特定されなかった場合、前記入力された文書イメージに対してベクトル化処理を実行するベクトル化ステップと、
前記ベクトル化ステップでベクトルデータ化された該文書イメージのデータを前記格納手段に格納する格納ステップと
を、情報処理装置に実行させるための、コンピュータ実行可能なコンピュータプログラム。
【請求項２５】
入力された文書イメージに基づいて、格納手段に格納されているオリジナル電子データを検索する検索ステップと、
前記検索ステップでの検索結果、オリジナル電子データが特定されなかった場合、前記入力された文書イメージに対してベクトル化処理を実行するベクトル化ステップと、
前記ベクトル化ステップでベクトルデータ化された該文書イメージのデータを前記格納手段に格納する格納ステップとを、
情報処理装置に実行させるためのコンピュータプログラムを格納したコンピュータ読み取り可能な記憶媒体。
【請求項２６】
入力された文書イメージに基づいて、格納手段に格納されているオリジナル電子データを検索する検索手段と、
前記検索手段での検索結果、オリジナル電子データが特定されなかった場合、前記入力された文書イメージに対してベクトル化処理を実行するベクトル化手段と、
前記ベクトル化手段でベクトルデータ化された該文書イメージのデータを前記格納手段に格納する格納制御手段と
を有することを特徴とする画像処理システム。
【請求項２７】
少なくともスキャナを有するスキャナ搭載装置の動作を制御可能な情報処理装置であって、
前記スキャナ搭載装置でスキャンして得た文書イメージに基づいて、格納手段に格納されているオリジナル電子データを検索する検索手段と、
前記検索手段での検索結果、オリジナル電子データが特定されなかった場合、前記入力された文書イメージに対してベクトル化処理を実行するベクトル化手段と、
前記ベクトル化手段でベクトルデータ化された該文書イメージのデータを前記格納手段に格納する格納制御手段と
を有することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本願発明は、印刷された原稿を読み取り電子化する技術に関するものである。
【背景技術】
【０００２】
近年、環境問題が叫ばれる中、オフィスでのペーパーレス化が急速に進んでおり、電子文書を取り扱う各種技術が考え出されている。
【０００３】
例えば、紙文書を電子文書にする手法として、紙文書をスキャナーで読み取り、電子文書フォーマット（ＪＰＥＧなど）に変換して送信するものがある（特許文献１）。しかしながら、この特許文献１に開示された技術では、スキャナーで読み取った画像をＪＰＥＧなどの電子文書に変換することを目的とするものであるので、プリントされた文書を用いて、保存されているファイルを検索することなどは何ら考慮していない。したがって、プリントとスキャンを繰り返すことになってしまい、変換された電子文書の画像は徐々に劣化していってしまうという問題がある。
【０００４】
また、文書データを属性毎の領域に分けて、各領域は全て生画像データ（或いは圧縮画像データ）として保管することが考えられているが（特許文献２）、各領域はイメージとして扱うため、ファイル容量も大きくなってしまうし、拡大等の編集を行なうと画像が劣化してしまう。
【０００５】
一方、紙文書に対応する電子情報を検索する技術も考えられている（特許文献３、特許文献４）。特許文献３では、スキャンした入力画像に基づいて、対応する電子情報を同定する技術が開示され、さらに、該入力画像と電子情報との差分を抽出し、当該抽出した差分を前記同定した電子情報と合成する情報処理装置が記載されている。また、特許文献４では、デジタル複合機（コピー機能、スキャン機能、プリント機能などを備える）において、スキャンしたイメージ中にページＩＤを示すグラフィック・コードがあるかどうか確認し、グラフィック・コードが見つかれば、該当するページＩＤをデータベース上で検索する。そして、もし、データベース上でページＩＤが見つかれば、今取り込んだばかりのスキャン・イメージを廃棄し、これに代わってページＩＤに関連付けられた印刷データを取り出して、プリント操作によって印刷イメージを生成し且つ用紙に印刷する技術が記載されている。一方、データベース上で該当するページＩＤが見つからなかった場合、コピー操作時はスキャン・イメージをそのまま用紙に複写し、ファクシミリ操作時やファイリング操作時は、スキャン・イメージにＰＤＬコマンドを付与してＰＤＬフォーマットにして送信することが記載されている。
【０００６】
しかしながら、特許文献３の技術では、出力された紙文書に対応するオリジナルの電子文書を検索して差分情報を抽出するので、紙文書に追記された情報を差分情報として保持することができるが、前記差分情報はスキャンした画像をそのまま扱っているため、必要とされる記憶容量が大きくなってしまうという問題があり、また、出力された紙文書に対応するオリジナルの電子文書が見つからなかった場合はそのまま処理を終了してしまう。また、特許文献４の技術では、紙文書に対応するオリジナルの電子文書が見つからなかった場合にスキャン・イメージにＰＤＬコマンドを付与してＰＤＬフォーマットにしているが、単にイメージにＰＤＬコマンドを付与してＰＤＬフォーマットにするだけではファイルサイズが大きくなってしまい、データベースを圧迫してしまうという問題がある。
【特許文献１】特開２００１−３５８８６３公報
【特許文献２】特開平８−１４７４４５号公報
【特許文献３】特開平１０−６３８２０号公報
【特許文献４】特開平１０−２８５３７８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本発明はかかる問題点に鑑みなされたものであり、複写対象となった文書のイメージデータから、当該文書に対応するオリジナル文書ファイルを特定し、そのファイルに基づいて印刷することで画質劣化を防ぎ、更に、未登録の文書の場合にはベクトル化処理を実行して登録処理を行うことで、早期の段階で画質劣化を抑制する環境を提供し得る技術を提供しようとするものである。
【課題を解決するための手段】
【０００８】
この課題を解決するため、例えば本発明の画像処理システムは以下の構成を備える。すなわち、
入力された文書イメージに基づいて、格納手段に格納されているオリジナル電子データを検索する検索手段と、
前記検索手段での検索結果、オリジナル電子データが特定されなかった場合、前記入力された文書イメージに対してベクトル化処理を実行するベクトル化手段と、
前記ベクトル化手段でベクトルデータ化された該文書イメージのデータを格納手段に格納する格納制御手段とを有する。
【発明の効果】
【０００９】
本発明によれば、複写対象となった文書のイメージデータから、当該文書に対応するオリジナル文書ファイルを特定し、そのファイルに基づいて印刷することで画質劣化を防ぎ、更に、未登録の文書の場合には登録処理を行うことで、早期の段階で画質劣化を抑制する環境を提供することが可能になる。
【発明を実施するための最良の形態】
【００１０】
以下、添付図面に従って本発明に係る実施形態を説明する。
【００１１】
＜システム概要＞
図１は本願発明にかかる画像処理システムの構成例を示すブロック図である。
【００１２】
この画像処理システムは、オフィス１０とオフィス２０とをインターネット１０４で接続された例を示している。オフィス２０内の構成は、オフィス１０内と実質的に同じであるので、以下ではオフィス１０について説明することとする。
【００１３】
オフィス１０内に構築されたＬＡＮ１０７には、ＭＦＰ（Multi Function Peripheral：ネットワークスキャナやネットワークプリンタとして機能する複写機）１００、ＭＦＰ１００を制御するマネージメントＰＣ１０１、クライアントＰＣ１０２、文書ファイルを管理する文書管理サーバ（ファイルサーバ）１０６、文書データの書式等で検索できるように構成されたデータベース１０５、およびプロキシサーバ１０３が接続されている。図示では、クライアントＰＣが１つだけ示しているが、複数存在し得るものである。
【００１４】
オフィス１０のネットワーク１０７はプロキシサーバ１３を介してインターネットに接続するようになっている。一方、オフィス２０も同様である。従って、オフィス１０と２０それぞれのネットワークはインターネットを介して相互に情報通信が可能になっている。なお、公知のＶＰＮ等の技術でもって第３者がオフィス１０、２０内のネットワークに侵入することを阻止することが望まれるが、それそのものは本願発明には直接には関係がないので、省略する。
【００１５】
さて、実施形態におけるＭＦＰ１００は、紙文書の画像読み取り部（スキャナー）と読み取った画像信号に対する画像処理の一部（前処理等）を担当し、画像データはＬＡＮ１０９を用いてマネージメントＰＣ１０１に供給される。マネージメントＰＣは通常のパーソナルコンピュータで良く、内部に画像記憶手段（ハードディスク）、画像処理手段（画像処理用の回路もしくは画像処理用のプログラム）、表示手段、入力手段（キーボードやマウス（登録商標）等のポインティングデバイス）を有する。
【００１６】
図２はＭＦＰ１００の構成図である。同図においてオートドキュメントフィーダー（ＡＤＦ）を含む画像読み取り部１１０は束状、或いは１枚の原稿画像を図示しない光源で照射し、原稿反射像をレンズで固体撮像素子上に結像し、固体撮像素子からラスター状の画像読み取り信号を例えば６００dpiの解像度の画像データを得る。通常の複写を行なう際には、前記画像データをデータ処理部１１５にて各種補正処理等を行なって記録信号へ変換し、ハードディスク等の記憶装置１１１に一旦記憶（格納）する。そして、この記憶したことを、マネージメントＰＣ１０１に通知し、マネージメントＰＣ１０１の制御の下で記録装置（プリンタエンジン部でもある）１１２に順次出力して紙上に画像を形成する。
【００１７】
なお、実施形態でのＭＦＰはネットワークプリンタとしても機能するため、ページ記述言語にしたがって印刷イメージデータを生成する機能を有する。ネットワークプリンタとして機能する場合には、クライアントＰＣ１０２から出力されるプリントデータをＬＡＮ１０７からネットワークＩＦ１１４を経て、データ処理装置１１５で記録可能なラスターデータに変換した後、やはり記録装置１１１に一旦記憶し、マネージメントＰＣ１０１にそれを通知し、マネージメントＰＣ１０１の制御の下で記録装置１１２に順次出力して紙上に画像を形成することになる。このとき、生成したイメージデータが、読取って得たイメージデータであるのか、ネットワークプリンタとして機能した結果生成されたものであるかを示す情報も通知する。
【００１８】
１１３は各種キーやスイッチ、液晶表示画面上に設けられたタッチパネルで構成される入力装置であり、１１６は液晶表示器である。
【００１９】
上記構成において、マネージメントＰＣ１０１がネットワーク１０９を介してＭＦＰ１００と接続する理由は後述する説明から明らかにするが、ＭＦＰ１００内の記憶装置１１１は、マネージメントＰＣ１０１からダイレクトにアクセスするようにしており、そのアクセス速度を高速なものとするため、及び、ネットワーク１０７のトラフィックに影響を与えないためである。
【００２０】
図３は実施形態におけるマネージメントＰＣ１０１のブロック構成図である。実施形態におけるマネージメントＰＣ１０１は、通常のパーソナルコンピュータで実現している。図示において、３０は装置全体の制御を司るＣＰＵ、３１はブートプログラムやＢＩＯＳを記憶しているＲＯＭ、３２はＣＰＵ３０のワークエリアとして使用されるＲＡＭであって、ここにＯＳをはじめ、実施形態におけるＭＦＰ１００を管理するプログラムがロードされ実行されることになる。３４は表示コントローラであって、ビデオＲＡＭを内蔵している。３５は表示装置であって、実施形態では液晶表示装置を採用しているが、ＣＲＴ等の他の表示装置でも構わない。３６は表示装置３５のスクリーンの前面に設けられたタッチパネルである。３６はＭＦＰ１００との通信を行うためのネットワークＩ／Ｆ、３７はネットワーク１０７に接続するためのＩ／Ｆである。
【００２１】
通常、パーソナルコンピュータは、キーボード、マウス等（登録商標）のポインティングデバイス等の入力装置を備えるが、本実施形態では、それに代わってタッチパネルが入力装置として機能することになる。キーボードやマウスを備えるものであっても構わないし、それらを併用しても良い。
【００２２】
図４は、ＭＦＰ１００にマネージメントＰＣ１０１を収容した外観図である。図示に示す如く、マネージメントＰＣ１０１の表示装置３５、タッチパネル３６が、あたかもＭＦＰ１００の一部であるかのように見えるようにしている。なお、マネージメントＰＣ１０１のメンテナンスを行い易くするため、通常のＰＣが有するキーボードやマウス等のポインティングデバイスを、ＭＦＰの筐体内に収容させるようにしても構わない。
【００２３】
また、以下の説明から明らかになるが、マネージメントＰＣ１０１が有する表示装置３５及びタッチパネル３６は、実質的にＭＦＰ１００のユーザインタフェースとして機能する。ならば、ＭＦＰ１００装置内にマネージメントＰＣ１０１の処理を行う機能を付加させれば良いとも考えられるが、マネージメントＰＣ１０１の処理は多岐に渡り、その処理を行わせるプログラムの開発、管理の容易性、バージョンアップの容易性の観点から、本実施形態では、複合機であるＭＦＰとは独立した、汎用のパーソナルコンピュータを介在させるようにしている。
【００２４】
＜処理概要の説明＞
上記実施形態におけるシステムの処理内容を説明すると次の通りである。
【００２５】
ＭＦＰ１００において、ＡＤＦにセットされた原稿は画像読取部１１０で６００ｄｐｉの解像度の画像データとして読取られる。読み取られた画像データは、前処理（各種補正処理）を経て、ＭＦＰ１００内の記憶装置１１１に１ページ分の画像データとして格納される。マネージメントＰＣ１０１は、ＭＦＰ１００内の記憶装置１１１に新たなイメージデータが格納されているか否かをネットワーク１０９を介して監視している。或いは、ＭＦＰ１００が記憶装置１１１に原稿画像を格納した際にマネージメントＰＣにネットワーク１０９を介して通知を受けるようにしても構わない。
【００２６】
いずれにしても、マネージメントＰＣ１０１は、ＭＦＰ１００内の記憶装置１１１にイメージデータが格納されたと判定すると、以下の処理を行う。
【００２７】
先ず、読取ったイメージデータを像域分離し、各領域に細分化する（ブロックセグメント化処理）。そして、オリジナルファイルの所在を示すポインタ情報が含まれているか判別を行なう。例えば、予め設定された領域位置に２次元バーコードがあるものとして、２次元バーコードを読取る。２次元バーコードを認識しデコードできた場合、その情報中には読取った原稿に対するオリジナルファイルの所在位置情報（サーバ名＋パス付きファイル名）が含まれるので、それをマネジメントＰＣ１０１の表示装置３５に表示する。例えば、
「ファイルサーバ（文書管理サーバ）“ｘｘｘｘｘ”の“共有フォルダｘｘｘ”内に“ｘｘｘｘｘ”として格納されています。」
等のメッセージを表示する。
【００２８】
なお、ここでは、ポインタ情報として２次元バーコードを用いたが、それ以外の手法を用いても構わない。例えば、ＵＲＬを示す文字列オブジェクトを記載しておき、それを文字認識することでポインタ情報を得てもよいし、また、文字と文字の間隔を微小に変化させることによって情報を埋め込む手法や、ハーフトーンの画像に電子透かしとして埋め込む手法等を用いて、ポインタ情報がイメージ内に含まれていても構わない。
【００２９】
また、ユーザがＭＦＰ１００を複写目的で原稿を読み込ませた場合、マネージメントＰＣ１０１は、オリジナルファイルを、指定された文書管理サーバより取得し、それに基づいてイメージデータを生成するとともに、生成したイメージデータの所定位置に、オリジナルファイルの所在情報を含んだ２次元バーコードイメージを合成する。そして、その合成したイメージデータを、ＭＦＰ１００内の記憶装置１１１に格納する。このとき、先に読取って記憶装置１１１に格納されていたイメージデータは消去、もしくはオリジナルファイルに基づいて生成したイメージデータを、読取ったイメージデータに上書きする。そして、ＭＦＰ１００に対して印刷処理の指示コマンドを送出し印刷処理を行わせる。
【００３０】
なお、複写目的で原稿を読取ったのか、オリジナルファイルの所在を確認するために読取ったのかの判定は、例えば、ＭＦＰが有する操作パネルに設けられたオリジナルの所在確認を行うためのキー及び複写キーのいずれが指示されたのかをＭＦＰ１００からマネージメントＰＣ１０１に通知することで行う。また、所在確認するために読取った場合であっても、上記メッセージを表示装置３５に表示させた後、タッチパネル３６により印刷指示を行うか否かのボタンを表示し、そのボタンのタッチを検出することで印刷を実行する。
【００３１】
また、複写目的以外に編集目的などにも使用可能である。例えば、ＭＦＰ１００で原稿を読取らせた場合、そのオリジナルファイルを探し出して、その所在を示す情報を表示することになるので、ユーザがネットワークを介してそのオリジナルファイルを、自身が使用するクライアントＰＣで再度編集することもできるようになる。
【００３２】
また、原稿を複写する場合においては、原稿に対応するオリジナルファイルに基づくイメージデータを生成して印刷することになるので、読取り対象の原稿が多少汚れている場合であっても、常に高い品位の画像を複写することができるようになる。
【００３３】
一方、ＭＦＰ１００で読取る原稿には、ポインタ情報（２次元バーコード等）が存在しない場合もあり得る。マネジメントＰＣ１０１は、ＭＦＰ１００内の記憶装置１１１に格納されたイメージデータ中にバーコードが存在しないと判定する場合である。この場合には、その読取った原稿画像データに近い、既登録済みのオリジナルファイルの中から最も近いファイルを検索する。検索して得られた各候補となったオリジナルデータに基づいてサムネイル画像を生成し、各サムネイル画像とその所在を示す情報をマネジメントＰＣ１０１が有する表示装置３５に一覧表示させ、その中からタッチパネル３６で選択することで、該当するオリジナルファイルに基づく画像を印刷できるようにした。なお、ユーザが、そのオリジナルファイルの所在を知っている場合には、明示的にその所在位置及びファイルを指定できるようにしても構わない。
【００３４】
さて、原稿画像に対応する候補が１つも存在しない場合、読取った原稿は未登録であると判断し、その旨を表示装置３５に表示し、登録する／しないを指示するボタンを表示することで、ユーザに登録の確認を行わせる。
【００３５】
そして、登録する旨の指示があった場合（「登録」ボタンがタッチされた場合）、それを同じネットワーク上に存在する文書管理サーバ１０６に、所定形式のデータフォーマットに変換して新規に登録する。そして、登録した際に、その所在が決定されるので、印刷時には、その所在情報を２次元バーコードとして合成して印刷させる。
【００３６】
また、オリジナルファイルが見つかった場合でも、そのオリジナルファイルがＪＰＥＧやＴＩＦＦなどの所謂イメージファイルであった場合、ベクトル化を行なって登録し直すかどうか選択できるようにする。
【００３７】
なお、ネットワークプリンタとして機能する場合、上記通知処理は、印刷データを出力してきたクライアントＰＣに向けて送信し、クライアントＰＣの画面に表示させることになる。
【００３８】
従って、クライアントＰＣ上で動作するアプリケーションで新規に文書を作成し、印刷した場合、その印刷データには２次元バーコードはないので、上記のように該当するファイルがどれであるのかの選択画面が表示されることになる。そこで、該新規文書が文書管理サーバのデータベースに登録されていなければ、そのユーザは、自身で作成した文書ファイルを文書管理サーバに保存するように指示することになる。
【００３９】
＜処理内容の詳細＞
以上が実施形態における概要であるが、以下、図５のフローチャートに従って処理手順（主にマネージメントＰＣ１０１の処理手順）の詳細を説明することとする。なお、以下では、主に、ＭＦＰ１００で紙文書を読み込んだ場合を説明するが、ネットワークプリンタとして機能する場合の処理は上記の説明及び以下の説明から明らかになるであろう。
【００４０】
ＭＦＰ１００の画像読み取り部１１０（ＡＤＦを含む）を動作させ１枚の原稿をラスター状に走査し、イメージ情報入力処理１２０で６００dpi（１画素８ビット）の画像信号を得る。該画像信号をデータ処理部１１５で前処理（補正処理等の変換処理等）を施し記憶装置１１１に１ページ分の画像データとして保存する。
【００４１】
図５のフローチャートは、このＭＦＰ１００内の記憶装置１１１に１ページ分の画像データが記憶された場合にＭＦＰ１００からの記憶完了の通知、もしくは、ＭＦＰ１００の記憶装置１１１に１ページ分の画像データが格納したことを検出することで実行されるＣＰＵ３０の処理手順である。
【００４２】
先ず、ステップＳ４０において、記憶装置１１１に格納された画像データをＬＡＮ１０９を介してＲＡＭ３２にロードする。次いで、ステップＳ４１で、文字/線画領域とハーフトーンの画像部分とを、矩形領域単位に領域を分離する。文字部分は段落毎に塊としてまとめることによって矩形ブロックに分離し、また、線画部分は線で構成された表、図形毎に分離し、各々セグメント化する。一方、ハーフトーンで表現される画像部分は、矩形に分離されたハーフトーン画像部分、背景部等、所謂、ブロック毎に独立したオブジェクトに分割する。
【００４３】
ステップＳ４２に処理が進むと、原稿画像中に付加情報として記録されたポインタ情報（２次元バーコード等）を検出し、このバーコードをデコードする。そして、ステップＳ４２において、デコードした情報中にオリジナル電子ファイルが格納されている記憶装置内のポインター情報を検出する（ステップＳ４３）。
【００４４】
なお、実施形態では、２次元バーコードによって上記ポインタ情報が表されているものとして説明しているが、２次元バーコードに限らず、原稿画像中の所定位置に、オリジナルファイルの所在を示すＵＲＬが記述されている場合でも良い。また、場合によっては、電子透かしという技術で、人間には視認しずらいようにポインタ情報を埋め込むようになっていてもよい。勿論、これら何れでも対処できるようにしてもよい。因に、電子透かしで情報を埋め込む方法には、各文字の間隔を調整して情報を埋め込む手法、ハーフトーン画像中の各画素値を変更することで情報を埋め込む手法などを用いることが可能である。
【００４５】
さて、ステップＳ４３では、ポインター情報が検出されたか否かを判定する。ポインタ情報が検出されたと判定した場合には、ステップＳ４５に進んで、そのポインタ情報で示される文書管理サーバ（オフィス１０、２０のいずれかの文書管理サーバとなる）に該当するファイルが存在するかどうかを判定する。そのファイルの存在が確認できた場合には、ステップＳ４６に進んで、その格納アドレスを表示装置３５に表示させると共に、印刷指示ボタン、非印刷指示ボタンを表示する。なお、非印刷指示ボタンの代わりに、編集ボタンや転送ボタンなどを設ける構成としても構わない。
【００４６】
ステップＳ４７で、非印刷指示ボタンがタッチされたと判断した場合には、本処理を終了する（なお、非印刷指示ボタンの代わりに、編集ボタンや転送ボタンなどを設ける構成としていた場合は、編集や転送などの処理を行う）。また、ステップＳ４７で印刷指示ボタンがタッチされたと判断した場合には、ステップＳ４８に進み、ポインタ情報で示されたオリジナルファイルをロードし、それに基づく印刷イメージデータを生成すると共に、生成されたイメージデータの所定位置に、ポインタ情報を含む２次元バーコードイメージを生成して合成する。そして、その合成した印刷イメージデータを、ＭＦＰ１００内の記憶装置１１１にＬＡＮ１０９を介して格納する。このとき、原稿を読み取って既に記憶装置１１１格納されているイメージデータは、削除する。この後、ステップＳ４９に進んで、ＭＦＰ１００のデータ処理部１１５に対して印刷指示を行う。これを受けて、ＭＦＰ１００内のデータ処理装置１１５は、記録色成分のデータに変換し（カラープリンタの場合）、記録装置１１２で印刷を行うことになる。
【００４７】
一方、ステップＳ４４、Ｓ４５で、ポインタ情報が存在しなかった（２次元バーコードがなかった場合も含む）、或いは、ポインタ情報が検出できたが該当するオリジナルファイルがないと判断した場合、処理はステップＳ５０に進み、先のブロックセグメント化処理で文字領域と判定されたブロック内の文字を認識処理（ＯＣＲ処理）を行う。そして、ステップＳ５１において、ＯＣＲの結果から単語を抽出して全文検索、或いは各オブジェクトのレイアウトと各オブジェクトの属性から所謂レイアウト検索を行う。この検索は、データベース１０５に対して行う。
【００４８】
データベース１０５が管理するデータベースの内容は、例えば図６に示す構造をなしている。図示に示すように、１つのレコードは、ファイルの所在を示すポインタフィールド、１ページを構成するセグメントブロックの位置、個数、属性（文字領域か、線画領域か、ハーフトーン領域かを示す情報）で構成されるレイアウトフィールド、及び、文字領域に含まれる文字コード情報で構成される。
【００４９】
ステップＳ５１での検索は、読取った１ページの各セグメントブロックの配置位置及び属性情報と、ＯＣＲして得た複数の単語を、データベース１０５に通知し、検索させる。
【００５０】
この検索依頼処理が実行されて類似候補ファイルが検索できた場合、データベース１０５から検索結果（ポインタ情報とレイアウト情報とする）が通知されるので、ステップＳ５２では、その候補となるレイアウト情報に従って、各候補のサムネイル画像を生成し、サムネイル画像の一覧を表示装置３５に表示し、ユーザにその中の１つを選択させる。サムネイル画像はそのサイズが小さいので、文字部分は「・」等で表示し、図形やイメージ部分については、適当な図形、イメージを貼り付けることでサムネイル画像を生成するものとするが、このサムネイル画像はオリジナルファイルを縮小して作成するようにしても構わない。ユーザは、自身が読み込ませた原稿の大方のレイアウトと、表示画面に表示された各候補レイアウトを見比べ、その中の所望とするサムネイル画像をタッチすることで選択することになる。
【００５１】
上述したように、ステップＳ５１で候補が検索されて、ステップＳ５２で候補が選択された場合、処理はステップＳ５３に進み、選択されたサムネイル画像に対応するポインタ情報を用いて、該当するオリジナルファイルを探す。その選択されたオリジナルファイルがＪＰＥＧやＴＩＦＦやＢＭＰ等のベクトル化されていないイメージファイルである場合、先に説明したように、ベクトル化を行なって登録するか否かを問い合わせ、登録する旨の指示があった場合、以下のステップＳ５４乃至Ｓ５７を行う。一方、選択したサムネイルに対応するオリジナルファイルが、ベクトル化されているファイルであると判断した場合は、ベクトル化するかどうか問い合わせずに、ステップＳ４６に処理を進み、ステップＳ４７以降の処理を行う。
【００５２】
また、ステップＳ５１での検索の結果、原稿画像に類似するファイルがなかった場合は、ステップＳ５２で類似する画像がなかった旨が通知され、ステップＳ５３でオリジナル電子ファイルなしと判断されてステップＳ５４に進む。
【００５３】
なお、ステップＳ４５において、オリジナルファイルがあると判断した場合においても、該オリジナルファイルがＪＰＥＧやＴＩＦＦなどのベクトル化されていないイメージファイルであった場合、上述したステップＳ５３と同様に、ベクトル化して登録するかどうか問い合わせて、登録する旨の指示が合った場合には、以下のステップＳ５４乃至Ｓ５７の処理を行なうようにしても良い。
【００５４】
さて、オリジナルファイルが存在しない場合、あるいは、存在はするがＪＰＥＧやＢＭＰ等のベクトルコード化されていないイメージファイルであると判断し、更にベクトルコード化して登録する旨の指示を受けた場合には、ステップＳ５４に進んで、予め設定された内容に従って、各セグメントブロックについての後述するベクトル化処理を行う。
【００５５】
例えば、文字領域であると判定されたセグメントブロックについては、文字イメージの輪郭を識別し、文字イメージの輪郭に沿ったアウトラインベクトルを抽出することによって文字領域をベクトル化する。その際、ＯＣＲ処理結果は各文字のベクトルデータに対応する文字コードとして保持しておく。
【００５６】
また、前述したような文字イメージの輪郭に基づいてアウトラインベクトルを抽出する処理の代わりに、ＯＣＲ処理結果で、文字コードを得ているので、原稿画像を忠実に再現するための文字サイズ、スタイル、フォントを識別し、予め文字種別（フォント種別、スタイル）ごとに用意しておいたアウトラインデータを用いて、前記ＯＣＲ結果の文字コードをベクトル化するようにしても良い。
【００５７】
また、ＯＣＲ精度が高い場合は「ＯＣＲ結果と文字種別毎のアウトラインデータとに基づくベクトル化処理」を実行し、ＯＣＲの精度（認識率）が低い場合や、対応するフォントがない場合などにおいては、「文字イメージの輪郭に基づいてアウトラインベクトルを抽出することによるベクトル化処理」を実行するなど、認識率に応じて処理を自動で切り替えるようにしても構わない。
【００５８】
また、文字種別のアウトラインデータがＭＦＰやクライアントＰＣに搭載されているのならば、ＯＣＲ結果の文字コードとその文字サイズ、スタイル、フォントを識別することで、該当するセグメントの書式付テキストデータを作成し、これをベクトル化データとして用いるようにしてもよい。
【００５９】
これらのいずれの処理手順でベクトル化するかは、予め設定されているものとする。
【００６０】
また、図形領域であると判定されたブロックセグメントについては、線画のアウトラインベクトルを抽出することによって、ベクトル化処理を行う。
【００６１】
ハーフトーン領域（写真などの自然画像領域）と判定されたセグメントブロックについては、ＪＰＥＧ等の圧縮技術を使う。
【００６２】
これら各ブロックについての処理内容は、各属性に対する処理設定に従って処理されることになる。また、これらのベクトル化処理はブロック毎に行なわれ、更に、各ブロックのレイアウト情報を保存する。
【００６３】
このベクトル化処理後、ステップＳ５５に進んで、レイアウト情報に基づき各ブロックを１つのファイルにまとめ、アプリケーションで編集可能なアプリケーション用データファイルにする。このアプリケーション用データファイルの生成についての詳細は後述するが、例えば、文書中に、イメージデータやベクトルデータをエンベットし、そのエンベットされている文書をｒｔｆ（Ｒｉｃｈ  Ｔｅｘｔ  Ｆｏｒｍａｔ）形式で保存する。このようにして保存されたｒｔｆ形式のファイルを扱うことが可能なアプリケーションで読み込むことで、文章は勿論のこと、図形やイメージデータについても編集できる状態に復元することができる。なお、変換するアプリ用データファイルは、オブジェクト埋め込み可能なｒｔｆ形式に限るものではなく、例えば、ＳＶＧ（Ｓｃａｒａｂｌｅ  Ｖｅｃｔｏｒ  Ｇｒａｆｉｃｓ）フォーマットなどのその他のファイル形式に変換するようにしてもよい。
【００６４】
処理はステップＳ５６に進むと、マネージメントＰＣ１０１が接続されているローカルな文書管理サーバ１０６に登録する。また、ブロックセグメント化処理して得た各セグメントブロックの位置、個数、及び、その属性（文字、図形、ハーフトーンイメージの種別）、更にはＯＣＲして得た文字コード、並びに、文書管理サーバ１０６に格納した際のポインタ情報と共にデータベース１０５に登録を行わせる。
【００６５】
この後、ステップＳ５７で、２次元バーコードとして記憶するべきインデックス情報（含むポインタ情報）を生成し、ステップＳ４６に進む。
【００６６】
ステップＳ４６に進んだ場合には、当該登録した際のファイルの所在が通知されることになる。また、ステップＳ４７で印刷することを指示された場合には、生成したインデックス情報に基づく２次元バーコードを生成し、ＭＦＰ１００の記憶装置１１１から読出したイメージデータに、生成した２次元バーコードを合成し（ステップＳ４８）、印刷指示を行うことになる。
【００６７】
上記説明では、ＭＦＰ１００に原稿をセットして、読取らせた場合であったが、先に説明したように、実施形態におけるＭＦＰ１００はネットワークプリンタとしても機能する。従って、クライアントＰＣ１０２から原稿イメージの印刷データを受信した場合も同様に行われる。すなわち、クライアントＰＣから印刷データをＭＦＰが受信すると、それによって１ページの原稿イメージを記憶装置１１１に一旦記憶することに代わりはないからである。ただし、オリジナルファイルの所在の通知は、ネットワーク１０７を介して、マネージメントＰＣ１０１がクライアントＰＣに通知することになる。
【００６８】
さて、以下では、各処理の内容を詳細に説明することとする。
【００６９】
［ブロックセグメント化処理］
ブロックセグメント化処理（ブロックセレクション処理ともいう）とは、図７の右側に示すように、読み取った一頁のイメージデータ（図７の左側）を、各オブジェクト毎の塊として認識し、該ブロック各々を文字／図画／写真／線／表等の属性に判定し、異なる属性を持つ領域に分割する処理である。
【００７０】
ブロックセグメント化処理の一実施形態を以下に説明する。
【００７１】
先ず、入力画像を白黒に２値化し、輪郭線追跡をおこなって黒画素輪郭で囲まれる画素の塊を抽出する。面積の大きい黒画素の塊については、内部にある白画素に対しても輪郭線追跡をおこない白画素の塊を抽出、さらに一定面積以上の白画素の塊の内部からは再帰的に黒画素の塊を抽出する。
【００７２】
このようにして得られた黒画素の塊を、大きさおよび形状で分類し、異なる属性を持つ領域へ分類していく。たとえば、縦横比が“１”に近く、大きさが一定の範囲のものを文字相当の画素塊とし、さらに近接する文字が整列良くグループ化可能な部分を文字領域、扁平な画素塊を線領域、一定大きさ以上でかつ四角系の白画素塊を整列よく内包する黒画素塊の占める範囲を表領域、不定形の画素塊が散在している領域を写真領域、それ以外の任意形状の画素塊を図画領域、などとする。
【００７３】
ブロックセグメント化処理で得られた各ブロックに対するブロック情報と、入力画像に含まれるブロックを管理するための入力ファイル情報とを、図８に示す。
【００７４】
これらのブロック毎の情報は以降に説明するアプリケーションで編集できる形式への変換（以降、この処理をベクトル化という）、或いは検索の為の情報として用いる。
【００７５】
［ポインター情報の検出］
次に、ファイルの格納位置をイメージ情報から抽出する為の処理（ステップＳ４３に対応する処理）について説明する。
【００７６】
図９は原稿画像中に付加された２次元バーコード（ＱＲコードシンボル）を復号して、データ文字列を出力する過程を示すフローチャートである。２次元バーコードの付加された原稿３１０の一例を図１０に示す。
【００７７】
まず、ＭＦＰ１００によって、この原稿３１０を読込むことで、ＭＦＰ１００内のデータ処理装置で各種処理が行われ、記憶装置１１１にその読取った１枚（１ページ）のイメージデータが格納されると、そのイメージデータをＬＡＮ１０９を介して読出し、イメージデータをＣＰＵ３０で走査して、先に説明したブロックセグメント化処理の結果から所定の２次元バーコードシンボル３１１の位置を検出する。ＱＲコードの位置検出パターンは、シンボルの４隅のうちの３隅に配置される同一の位置検出要素パターンから構成されるので、それを検出する（ステップＳ３００）。
【００７８】
次に、位置検出パターンに隣接する形式情報を復元し、シンボルに適用されている誤り訂正レベルおよびマスクパターンを得る(ステップＳ３０１)。
【００７９】
シンボルの型番を決定した(ステップＳ３０２)後、形式情報で得られたマスクパターンを使って符号化領域ビットパターンをＸＯＲ演算することによってマスク処理を解除する(ステップ３０３)。尚、モデルに対応する配置規則に従い、シンボルキャラクタを読取り、メッセージのデータ及び誤り訂正コード語を復元する(ステップＳ３０４)。
【００８０】
次に、復元されたコード上に、誤りがあるかどうかの検出を行い(ステップＳ３０５)、誤りが検出された場合にはステップＳ３０６に分岐し、これを訂正する。また、誤り訂正されたデータより、モード指示子および文字数指示子に基づいて、データコード語をセグメントに分割する(ステップＳ３０７)。最後に、仕様モードに基づいてデータ文字を復号し、結果を出力する(ステップＳ３０８)。
【００８１】
尚、２次元バーコード内に組み込まれたデータは、対応するファイルのアドレス情報（ポインタ情報）を表しており、例えばファイルサーバー名およびファイル名からなるパス情報で構成される。或いは、対応するファイルへのＵＲＬで構成される。
【００８２】
本実施形態ではポインター情報が２次元バーコードを用いて付与された原稿３１０について説明したが、文字列でポインター情報が記録されるようにしてもよい。その場合は所定のルールに従った文字列のブロック（例えば予め決められた位置にある文字ブロック）を先のブロックセレクション処理で検出し、該ポインター情報を示す文字列の各文字を文字認識する事で、元ファイルのアドレス情報を得る事が可能である。
【００８３】
また、図１０の文書３１０の文字ブロック３１２、或いは３１３の文字列に対して隣接する文字と文字の間隔等に視認し難い程度の微小な変調を加え、該文字間隔に情報を埋め込むことでもポインター情報を付与できる。例えば後述する文字認識処理を行う際に各文字の間隔を検出すれば、ポインター情報が得られる。又、自然画３１４の中に不可視の電子透かしとしてポインター情報を付加する事も可能である。
【００８４】
［ポインター情報によるファイル検索］
次に、図１１を用いて、ポインタ情報に基づくファイル検索処理（ステップＳ４５に対応する処理）について説明する。
【００８５】
まず、ポインタ情報に含まれるアドレスに基づいて，ファイル・サーバーを特定する（ステップＳ４００）。
【００８６】
ここでファイルサーバとは、実施形態では文書管理サーバであることは既に説明したが、場合によってはクライアントＰＣ、或いは、ＭＦＰ１００に画像を蓄積記憶管理する機能を付加するのであれば、ＭＦＰ１００でも構わない。
【００８７】
ここでアドレスとは、ＵＲＬや、サーバ名とファイル名とを含むパス情報である。
【００８８】
ファイルサーバが特定できたら、ファイルサーバに対してアドレスを転送する（ステップＳ４０１）。
【００８９】
ファイルサーバは、アドレスを受信すると、該当するファイルを検索する（ステップＳ４０２）。ファイルが存在しない場合（ステップＳ４０３の判定がＮｏの場合）には、マネージメントＰＣに対してその旨通知する。
【００９０】
一方、ファイルが存在した場合(ステップ４０３の判定がＹｅｓ)には、先に説明したようにそのファイルを要求元（マネージメントＰＣ）に転送する(ステップＳ４０８)。
【００９１】
［ファイル検索処理］
次に、ブロックセグメント化で生成された各ブロックの配置位置に基づく検索処理（ステップＳ５１に対応する処理）を図１３のフローチャートに従って説明する。すなわち、入力した原稿画像にポインタ情報が存在しなかった場合、または、ポインタ情報は在るが電子ファイルが見つからなかった場合、或いは電子ファイルがイメージファイルであった場合に行われる。
【００９２】
ここでは、セグメントブロック化によって抽出された各ブロックが図８に示す情報（ブロック情報、入力ファイル情報）である場合を説明する。
【００９３】
情報内容として、属性、座標位置、幅と高さのサイズ、ＯＣＲ情報有無を例としてあげる。属性は、文字、線、写真、絵、表その他に分類する。簡単に説明を行うため、ブロックは座標Ｘの小さい順に並べる。即ち、図８では、Ｘ１＜Ｘ２＜Ｘ３＜Ｘ４＜Ｘ５＜Ｘ６であるものとし、各々にブロック１、ブロック２、ブロック３、ブロック４、ブロック５、ブロック６と名前をつけている。ブロック総数は、入力した１ページの画像内に含まれる全ブロック数であり、図８の場合には「６」となる。以下、これらの情報を使用して、データベース内から、入力ファイルに類似したファイルのレイアウト検索を行う処理手順を図１３のフローチャートに従って説明する。
【００９４】
フローチャートの流れは、ＭＦＰ１００で読取りブロックセグメント化処理で得られた上記情報と、データベース１０５中の同様の種類の情報とを順次比較するものである。
【００９５】
まず、ステップＳ５１０にて、後述する類似率などの初期化を行う。次に、ステップＳ５１１にてブロック総数の比較を行い、ここで、真の場合、さらにファイル内のブロックの情報を順次比較する。ブロックの情報比較では、ステップＳ５１３、Ｓ５１５、Ｓ５１８にて、属性類似率、サイズ類似率、ＯＣＲ類似率をそれぞれ算出し、ステップ５２２にてそれらをもとに総合類似率を算出する。各類似率の算出方法については、公知の技術が用いることができるので説明を省略する。ステップ５２３にて総合類似率が、予め設定された閾値Ｔｈより高ければステップＳ５２４にてそのファイルを類似候補としてあげる。但し、図中のＮ、Ｗ、Ｈは、入力原稿画像中のブロック総数、各ブロック幅、各ブロック高さとし、ΔＮ、ΔＷ、ΔＨは、入力ファイルのブロック情報を基準として誤差を考慮したものである。ｎ、ｗ、ｈは、データベースに格納されているファイルのブロック総数、各ブロック幅、各ブロック高さとする。また、不図示ではあるが、ステップＳ５１４にてサイズ比較時に、位置情報Ｘ、Ｙの比較などを行ってもよい。
【００９６】
以上、検索処理を、データベース１０５が有する全データに対して行ない、類似度が閾値Ｔｈより高く、候補として保存されたデータベースファイル（ステップＳ５２４）をサムネイル等で表示することになる（ステップＳ５２）。複数の中から操作者の選択が必要なら操作者の入力操作よってファイルの特定を行う。
【００９７】
［ベクトル化処理］
次に、イメージデータをベクトル化する処理（ステップＳ５４に対応する処理）について詳説する。
【００９８】
本実施形態では、あらかじめセグメントブロックの種別ごとに処理方法を設定するためのユーザーインターフェースが設けられる。このユーザインターフェースでの設定に応じたベクトル化処理を行う。
【００９９】
例えば、文字領域のブロックは、図２３のように「ベクトルデータ」、「二値画像」、「多値画像」の排他設定と、「ＯＣＲ情報付加」のＯＮ／ＯＦＦ設定を行うことができるようにしている。なお、「ベクトルデータ」が選択設定された場合には、ベクトル化を実行する方法として、図２３には示していないが、前述したように、「文字イメージの輪郭に基づくベクトル化」や「ＯＣＲ結果と文字種別毎のアウトラインデータとに基づくベクトル化」や「認識率に応じた処理自動切り替え」などを、更に選択設定できるようにする。
【０１００】
線画領域（線で構成される図形等の領域）のブロックや線のブロックは、図２４、図２５に示すように「ベクトルデータ」、「画像」、「背景オブジェクトに含める」の排他設定できるようにしておく。
【０１０１】
また、表領域のブロックは、図２６に示すように「ベクトルデータ」、「二値画像」、「多値画像」、「背景オブジェクトに含める」の排他設定と、「ＯＣＲ情報付加」のＯＮ／ＯＦＦ設定を行うことができるようにする。ただし背景オブジェクトに含める場合は、「ＯＣＲ情報付加」は常にＯＦＦとなる。
【０１０２】
更に、写真などの画像領域は、図２７に示すように「画像」、「背景オブジェクトに含める」の排他設定できるようにしておく。
【０１０３】
なお、これらの設定は、デフォルトでは、文字領域に関して「ベクトルデータ」（輪郭に基づくベクトル化）と「ＯＣＲ情報付加」が設定され、線画領域及び線領域に関して「ベクトルデータ」が設定され、表領域に関して「ベクトルデータ」と「ＯＣＲ情報付加」が設定され、写真領域に関して「画像」が設定されているものとする。ユーザから設定変更の指示がなされると、上述の図２３〜２７に示すようなユーザーインターフェースが呼び出されて設定することができる。また、これらの設定は、ハードディスクなどの電源を切っても保持される不揮発性記憶領域に書き込んでおき、次回以降の起動時にはハードディスクなどから読み出し自動的に設定する。すなわち、一度設定したら、変更しない限りは、従前の設定内容に従って処理される。
【０１０４】
次に、上述のインターフェースを用いて設定された内容に従った処理の詳細を述べる。例えば、文字領域に対して、「二値画像」が設定されていれば、該文字領域を２値化してベクトル化処理の結果とし、「多値画像」が設定されていれば、該文字領域をＪＰＥＧ等で圧縮してベクトル化処理の結果とする。また、「二値画像」或いは「多値画像」が設定され、且つ、「ＯＣＲ情報を付加する」がＯＦＦの場合、文字認識結果を付加せず（文字認識処理は行わず）に、画像データのみをベクトル化処理の結果とし、一方、「ＯＣＲ情報を付加する」がＯＮの場合、『文字認識』処理を行い、認識結果の文字コード、文字の大きさ、位置と、該画像データとをベクトル化結果とする。また、設定が「ベクトルデータ」の場合は、前述したような設定にしたがってベクトル化を行い、「ＯＣＲ情報を付加する」の設定がＯＮである場合、文字コードと文字のベクトルデータをベクトル化処理の結果とし、ＯＦＦの場合は、ベクトルデータのみをベクトル化の結果とする。
【０１０５】
線画、線領域に対しても同様に設定を読み出し、その設定にしたがって処理する。
【０１０６】
例えば、設定が「ベクトルデータ」の場合、そのブロック内の線・線画の輪郭を抽出し、該輪郭に基づいてアウトラインベクトルを生成することによりベクトル化処理を行い、再利用可能なベクトルデータへ変換する。また、設定が「画像」の場合、その領域を一つの画像データとして取り出して圧縮処理等を行い、ベクトル化の結果とする。また、「背景オブジェクトに含める」が設定されている場合、該領域のベクトル化の処理は行わずに、背景オブジェクトの一部として扱う。
【０１０７】
また、表領域に対しても同様に設定を読み出し、その設定にしたがって処理する。
【０１０８】
例えば、「ベクトルデータ」が選択設定されている場合、罫線や文字などの輪郭を抽出して、該輪郭に基づいてアウトラインベクトルを生成することによりベクトル化処理を行う。なお、罫線については「輪郭に基づくベクトル化処理」を行い、文字部分については、前述した文字領域についてのベクトル化処理と同様の処理を行うように設定できるようにしてもよい。また、「ＯＣＲ情報を付加する」の設定がOnである場合、文字コードとベクトルデータとをベクトル化処理の結果とし、Offの場合は、ベクトルデータのみをベクトル化の結果とする。また、「二値画像」或いは「多値画像」が設定され、且つ、「ＯＣＲ情報を付加する」がＯＦＦの場合、文字認識結果を付加せず（文字認識処理は行わず）に、該領域の画像データのみをベクトル化処理の結果とし、一方、「ＯＣＲ情報を付加する」がＯＮの場合、『文字認識』処理を行い、認識結果の文字コード、文字の大きさ、位置と、該画像データとをベクトル化結果とする。また、「背景に含める」の場合は、ベクトル化の処理は行わず背景オブジェクトの一部として扱う。
【０１０９】
また、写真領域に対しても同様に設定を読み出し、その設定にしたがって処理する。例えば、「画像」が選択されている場合、該領域をＪＰＥＧ等で圧縮する。また、「背景に含める」が選択されている場合は背景オブジェクトの一部として扱う。
【０１１０】
［文字認識］
文字認識処理は、文字単位で切り出された画像に対し、パターンマッチの一手法を用いて認識を行い、対応する文字コードを得る。この認識処理は、文字画像から得られる特徴を数十次元の数値列に変換した観測特徴ベクトルと、あらかじめ字種毎に求められている辞書特徴ベクトルと比較し、最も距離の近い字種を認識結果とする処理である。特徴ベクトルの抽出には種々の公知手法があり、たとえば、文字をメッシュ状に分割し、各メッシュ内の文字線を方向別に線素としてカウントしたメッシュ数次元ベクトルを特徴とする方法がある。
【０１１１】
ブロックセグメント化処理で抽出された文字領域に対して文字認識を行う場合は、まず該当領域に対し横書き、縦書きの判定をおこない、各々対応する方向に行を切り出し、その後、文字イメージを切り出す。横書き、縦書きの判定は、該当領域内で画素値に対する水平/垂直の射影を取り、水平射影の分散が大きい場合は横書き領域、垂直射影の分散が大きい場合は縦書き領域と判断すればよい。文字列および文字への分解は、横書きならば水平方向の射影を利用して行を切り出し、さらに切り出された行に対する垂直方向の射影から、文字を切り出すことでおこなう。縦書きの文字領域に対しては、上記水平と垂直の関係を、交換すれば良い。尚、この時、文字のサイズが検出できる。
【０１１２】
［フォント認識］
文字認識の際に用いる辞書を、字体数分だけ予め用意しておき、マッチングの際に文字コードと共にフォント種を出力することで文字のフォントが認識できる。つまり、文字認識によって、距離が最も近い特徴ベクトル情報の辞書を特定できれば、それがその文字画像のフォントであると決定する。
【０１１３】
［ＯＣＲ結果に基づく文字のベクトル化］
前記文字認識およびフォント認識よって得られた、文字コードおよびフォント情報を用いて、文字毎にあらかじめ用意されたアウトラインデータを用いて、文字部分の情報をベクトルデータに変換する。なお、読取った画像の文字がカラーの場合は、各文字の色を抽出してベクトルデータとともに記録する。
【０１１４】
以上の処理により、文字ブロックに属するイメージ情報を、ＯＣＲ結果に基づいて、ほぼ形状、大きさ、色が忠実なベクトルデータに変換出来る。
【０１１５】
［輪郭に基づくベクトル化］
文字領域について文字イメージの輪郭に基づくベクトル化が設定されている場合、あるいは、線画（図画）あるいは線、表領域とされた領域でベクトル化処理を実行すると設定されている場合、以下に記述するように、抽出された画素塊の輪郭に基づいてベクトルデータに変換する。
【０１１６】
具体的には、輪郭をなす画素の点列を、角と看倣される点で区切って、各区間を部分的な直線あるいは曲線で近似する。角とは曲率が極大となる点であり、曲率が極大となる点は、図１４に図示するように、任意点Piに対し左右ｋ個の離れた点Ｐi-k,Ｐi+kの間に弦を引いたとき、この弦とPiの距離が極大となる点として求められる。さらに、Ｐi-k,Ｐi+k間の弦の長さ/弧の長さをＲとし、Ｒの値が閾値以下である点を角とみなすことができる。角によって分割された後の各区間は、直線は点列に対する最小二乗法など、曲線は３次スプライン関数などを用いてベクトル化することができる。
【０１１７】
また、対象が内輪郭を持つ場合、ブロックセレクションで抽出した白画素輪郭の点列を用いて、同様に部分的直線あるいは曲線で近似する。
【０１１８】
以上のように、輪郭の区分線近似を用いれば、任意形状の図形のアウトラインをベクトル化することができる。元原稿がカラーの場合は、カラー画像から図形の色を抽出してベクトルデータとともに記録する。
【０１１９】
図１５に示す様に、ある区間で外輪郭と、内輪郭あるいは別の外輪郭が近接している場合、２つの輪郭線をひとまとめにし、太さを持った線として表現することができる。具体的には、ある輪郭の各点Ｐiから別輪郭上で最短距離となる点Ｑiまで線を引き、各距離ＰｉＱｉが平均的に一定長を保ってる場合、注目している区間は中点Ｒｉを点列として直線あるいは曲線で近似し、その太さは距離ＰｉＱｉの平均値とする。線や線の集合体である表罫線は、前記のような太さを持つ線の集合として効率よくベクトル表現することができる。
【０１２０】
［図形認識］
上述したように任意形状の図形のアウトラインをベクトル化した後、これらベクトル化された区分線を図形オブジェクト毎にグループ化する処理について説明する。
【０１２１】
図１６は、ベクトルデータを図形オブジェクト毎にグループ化するまでの処理手順を示している。
【０１２２】
まず、各ベクトルデータの始点、終点を算出する（ステップＳ７００）。次に各ベクトルの始点、終点情報を用いて、図形要素を検出する（ステップＳ７０１）。図形要素の検出とは、区分線が構成している閉図形を検出することである。検出に際しては、閉形状を構成する各ベクトルはその両端にそれぞれ連結するベクトルを有しているという原理を応用し、検出を行う。次に図形要素内に存在する他の図形要素、もしくは区分線をグループ化し、一つの図形オブジェクトとする（ステップＳ７０２）。また、図形要素内に他の図形要素、区分線が存在しない場合は図形要素を図形オブジェクトとする。
【０１２３】
図１７は、図形要素を検出するフローチャートを示している。先ず、ベクトルデータより両端に連結していない不要なベクトルを除去し、閉図形構成ベクトルを抽出する（ステップＳ７１０）。次に閉図形構成ベクトルの中から該ベクトルの始点を開始点とし、時計回りに順にベクトルを追っていく。開始点に戻るまで行い、通過したベクトルを全て一つの図形要素を構成する閉図形としてグループ化する（ステップＳ７１１）。また、閉図形内部にある閉図形構成ベクトルも全てグループ化する。さらにまだグループ化されていないベクトルの始点を開始点とし、同様の処理を繰り返す。最後に、ステップＳ７１０で除去された不要ベクトルのうち、ステップＳ７１１で閉図形としてグループ化されたベクトルに接合しているものを検出し一つの図形要素としてグループ化する（ステップＳ７１２）。
【０１２４】
以上によって図形ブロックを個別に再利用可能な個別の図形オブジェクトとして扱う事が可能になる。
【０１２５】
［アプリケーション用データへの変換処理］
ところで、一頁分のイメージデータをブロックセグメント化処し、ベクトル化処理した結果は、中間データ形式のファイルとして変換されている。このような中間データ形式をドキュメント・アナリシス・アウトプット・フォーマット（ＤＡＯＦ）と呼ぶことにする。図１８はＤＡＯＦのデータ構造を示す図である。
【０１２６】
図１８において、７９１はHeaderであり、処理対象の文書画像データに関する情報が保持される。レイアウト記述データ部７９２では、文書画像データ中のTEXT（文字）、TITLE（タイトル）、 CAPTION（キャプション）、LINEART（線画）、PICTURE（自然画）、FRAME（枠）、TABLE（表）等の属性毎に認識された各ブロックの属性情報とその矩形アドレス情報を保持する。文字認識記述データ部７９３では、TEXT、TITLE、CAPTION等のTEXTブロックを文字認識して得られる文字認識結果を保持する。表記述データ部７９４では、TABLEブロックの構造の詳細を格納する。画像記述データ部７９５は、各ブロックのベクトル化処理で生成されたベクトルデータ（画像で保存するように設定されている場合は画像データ）やPICTUREブロックの画像データなどを格納する。
【０１２７】
このようなＤＡＯＦは、中間データとしてのみならず、それ自体がファイル化されて保存される場合もあるが、このファイルの状態では、所謂、一般の文書作成アプリケーションで個々のオブジェクトを再利用する事は出来ない。そこで、次に、このＤＡＯＦからアプリケーション用データに変換する処理について詳説する。
【０１２８】
図１９は、全体のこのアプリケーション用データへの概略の処理手順を示している。
【０１２９】
ステップＳ８０００では、ＤＡＯＦデータの入力を行う。次いで、ステップＳ８００２は、アプリデータの元となる文書構造ツリー生成を行う。ステップＳ８００４は、文書構造ツリーを元に、ＤＡＯＦ内の実データを流し込み、実際のアプリデータを生成する。
【０１３０】
図２０は、ステップＳ８００２の文書構造ツリー生成部の詳細フローチャート、図２１（ａ），（ｂ）は、文書構造ツリーの説明図である。全体制御の基本ルールとして、処理の流れはミクロブロック（単一ブロック）からマクロブロック（ブロックの集合体）へ移行する。図２０の説明においてブロックとは、ミクロブロック、及びマクロブロックを指すものとする。
【０１３１】
ステップＳ８１００では、ブロック単位で縦方向の関連性を元に再グループ化する。スタート直後はミクロブロック単位での判定となる。ここで、関連性とは、距離が近い、ブロック幅（横方向の場合は高さ）がほぼ同一であることなどで定義することができる。また、距離、幅、高さなどの情報はＤＡＯＦを参照し、抽出する。
【０１３２】
図２１（ａ）は実際のページ構成、同図（ｂ）はその文書構造ツリーである。
【０１３３】
ステップＳ８１００の処理の結果、Ｔ３、Ｔ４、Ｔ５が一つのグループＶ１として決定され、Ｔ６、Ｔ７が一つのグループＶ２として決定され、それぞれが同じ階層のグループとしてまず生成される。
【０１３４】
ステップＳ８１０２は、縦方向のセパレータの有無をチェックする。セパレータは、例えば物理的にはＤＡＯＦ中でライン属性を持つオブジェクトである。また論理的な意味としては、アプリ中で明示的にブロックを分割する要素である。ここでセパレータを検出した場合は、同じ階層で再分割する。
【０１３５】
ステップＳ８１０４は、分割がこれ以上存在し得ないか否かをグループ長を利用して判定する。ここで、縦方向のグループ長がページ高さ（該ページに存在する複数のブロックの最上端と最下端の距離）となっている場合は、文書構造ツリー生成は終了する。
【０１３６】
図２１（ａ），（ｂ）の場合は、グループＶ１，Ｖ２には、セパレータもなく、グループ高さはページ高さではないので、ステップＳ８１０６に進む。
【０１３７】
ステップＳ８１０６は、ブロック単位で横方向の関連性を元に再グループ化する。関連性、及びその判定情報の定義は、縦方向の場合と同じである。
【０１３８】
図２１（ａ），（ｂ）の場合は、Ｔ１,Ｔ２でグループＨ１が生成され、また、Ｖ１,Ｖ２でグループＨ２が生成される。グループＨ１とＨ２は、Ｖ１，Ｖ２の１つ上位の同階層のグループとして生成される。
【０１３９】
ステップＳ８１０８は、横方向セパレータの有無をチェックする。
【０１４０】
図２１（ａ），（ｂ）では、セパレータＳ１があるので、これをツリーに登録し、Ｈ１、Ｓ１、Ｈ２という階層が生成される。
【０１４１】
ステップＳ８１１０は、分割がこれ以上存在し得ないか否かをグループ長を利用して判定する。
【０１４２】
ここで、横方向のグループ長がページ幅（該ページに存在する複数のブロックの最左端と最右端の距離）となっている場合は、文書構造ツリー生成は終了する。そうでない場合は、ステップＳ８１０２に戻り、再びもう一段上の階層で、縦方向の関連性チェックから繰り返す。
【０１４３】
図２１（ａ），（ｂ）の場合は、グループ長がページ幅になっているので、ここで終了し、最後にページ全体を表す最上位階層のＶ０が文書構造ツリーに付加される。
【０１４４】
文書構造ツリーが完成した後、その情報を元にステップＳ８００６においてアプリケーション用データの生成を行う。
【０１４５】
図２１（ａ），（ｂ）の場合の具体例を説明すると以下のようになる。すなわち、Ｈ１は水平方向に２つのブロックＴ１とＴ２があるので、２カラムとし、Ｔ１の内部情報（ＤＡＯＦを参照、文字認識結果の文章、画像など）を出力後、カラムを変え、Ｔ２の内部情報出力、その後、セパレータＳ１を出力となる。
【０１４６】
Ｈ２は水平方向に２つのブロックＶ１とＶ２があるので、２カラムとして出力、Ｖ１はＴ３、Ｔ４、Ｔ５の順にその内部情報を出力、その後カラムを変え、Ｖ２のＴ６、Ｔ７の内部情報を出力する。以上により出力された順番でアプリデータへの変換処理が行えるので、例えば、文字領域の読み順などを正しい順番でアプリデータへ変換できる。
【０１４７】
［ポインター情報の付加］
次に、図５におけるステップＳ４８におけるポインター情報付加処理について説明する。
【０１４８】
格納されている文書を紙に記録処理する場合、ポインター情報に基づくイメージデータを付加して記録することで、この印刷された文書を再度複写する場合に、簡単に元ファイルデータを取得して、常に高品位な印刷を行うことができる。
【０１４９】
図２２はポインター情報としてのデータ文字列を２次元バーコード(QRコードシンボル：JIS X０５１０)にて符号化（イメージ化）して画像中に付加する過程を示すフローチャートである。
【０１５０】
２次元バーコード内に組み込むデータは、対応するファイルのアドレス情報を表しており、例えばファイルサーバー（文書管理サーバ）名およびファイル名からなるパス情報で構成される。或いは、対応するファイルへのＵＲＬや、対応するファイルの格納されているデータベース１０５内あるいはＭＦＰ１００自身が有する記憶装置内で管理されるファイルＩＤ等で構成されるようにしてもよい。
【０１５１】
まず、符号化する種種の異なる文字を識別するため、入力データ列を分析する。また、誤り検出及び誤り訂正レベルを選択し、入力データが収容できる最小型番を選択する (ステップＳ９００)。
【０１５２】
次に、入力データ列を所定のビット列に変換し、必要に応じてデータのモード(数字、英数字、漢字等)を表す指示子や、終端パターンを付加する。さらに所定のビットコード語に変換する(ステップＳ９０１)。
【０１５３】
この時、誤り訂正を行うため、コード語列を型番および誤り訂正レベルに応じて所定のブロック数に分割し、各ブロック毎に誤り訂正コード語を生成し、データコード語列の後に付加する(ステップＳ９０２)。
【０１５４】
該ステップ９０２で得られた各ブロックのデータコード語を接続し、各ブロックの誤り訂正コード語、必要に応じて剰余コード語を後続する(ステップＳ９０３)。
【０１５５】
次に、マトリクスに位置検出パターン、分離パターン、タイミングパターンおよび位置合わせパターン等とともにコード語モジュールを配置する(ステップＳ９０４)。
【０１５６】
更に、シンボルの符号化領域に対して最適なマスクパターンを選択して、マスク処理パターンをステップＳ９０４で得られたモジュールにＸＯＲ演算により変換する(ステップＳ９０５)。
【０１５７】
最後に、ステップＳ９０５で得られたモジュールに形式情報および型番情報を生成して、２次元コードシンボルを完成する(ステップＳ９０６)。
【０１５８】
上記に説明した、アドレス情報の組み込まれた２次元バーコードは、例えば、印刷対象の電子ファイルをラスターデータに変換する際に、ラスターデータ上の所定の個所に付加して画像形成する。このようにして画像形成された紙を配布されたユーザーは、画像読取り部１１０で読み取ることにより、前述したステップ１２３にてポインター情報からオリジナル電子ファイルの格納場所を検出することができる。
【０１５９】
尚、同様の目的で付加情報を付与する手段は、本実施形態で説明した２次元バーコードの他に、例えば、ポインター情報を直接文字列で文書に付加する方法、文書内の文字列、特に文字と文字の間隔を変調して情報を埋め込む方法、文書中の中間調画像中に埋め込む方法等、一般に電子透かしと呼ばれる方法が適用出来る。
【０１６０】
［ファイルアクセス権に関する別実施形態］
通常、ネットワークを構築し、文書管理サーバで代表されるファイルサーバを設置する場合、第３者による再利用を制限することが行われることが多い。
【０１６１】
先の実施形態では文書管理サーバに蓄積されたファイルは全て自由にアクセスでき、ファイル全体、或いはその一部のオブジェクトは全て再利用が可能な事を前提に説明した。そこで、先の実施形態でポインタ情報からファイルを検索した際に、検索の結果、特定出来たファイルにアクセス権の制限が有る場合についての別実施形態を図１２を用いて説明する。同図は、図１１に代わるものである。
【０１６２】
ステップＳ４０３までは図１１の実施形態と同様の為、その説明は省略する。
【０１６３】
ファイルが特定された場合、文書管理サーバはそのファイルのアクセス権情報を調べ、アクセス制限がある場合(ステップＳ４０４)には、マネージメントＰＣ１０１に対してパスワードの送信を要求する。(ステップＳ４０５)。マネージメントＰＣ１０１は、操作者に対してパスワードの入力を促し、入力されたパスワードをファイルサーバに送信する(ステップ４０６)。なお、実施形態の場合、タッチパネルでの入力となるので、仮想キーボードを表示装置３５に表示し、その仮想キーのタッチによって、パスワードを入力する。
【０１６４】
文書管理サーバは送信されたパスワードを照合して認証を行い（Ｓ４０７）、認証成功した場合には、図５で説明した様に、ファイルのアドレスを通知すると共に、ユーザの希望する処理が画像ファイルデータの取得であれば、マネジメントＰＣ１０１に対してファイルを転送する(ステップＳ４０８)。尚、アクセス権の制御を行う為の認証の方法は、ステップＳ４０５、Ｓ４０６に示したパスワードによる方法に限定されず、例えば、指紋認証等の一般に広く用いられている生体認証、カードによる認証等、全ての認証手段を用いる事が出来る。
【０１６５】
又、ここでは、紙文書に付加的に付与されたポインター情報によりファイルを特定した場合の実施形態を示したが、図５のステップＳ５１、Ｓ５２で示す検索処理でファイルを特定した場合においても同様の制御が可能である。
【０１６６】
また、図５のステップＳ５４乃至Ｓ５６で説明したベクトル化処理に対しても、制限を加える事が出来る。即ち紙文書を走査して得られたイメージ情報から、透かし等により該文書に対してのアクセス権の制限の存在を検出した場合には、認証確認が取れた場合のみベクトル化処理を行う事で、機密性の高い文書の使用に制限をかける事が出来る。
【０１６７】
［ファイル特定に関する別実施形態］
先の実施形態では原稿走査して得られるイメージ情報から元ファイルデータを特定する手段は、図５を用いて説明したように、文書中に付与されたポインター情報に基づいて特定するか、或いは文書中に記載された各オブジェクト情報に基づいて対応する電子ファイルを検索するかのいずれかに依るが、より正確に元ファイルを特定するには、該両手段を併用すれば良い。即ち、原稿中から得られるポインター情報から元ファイルの存在が検出出来たとしても、更に該文書中のオブジェクト情報を使って、例えば、レイアウト情報に従うレイアウト検索、文字認識されたキーワードによる全文検索を検出されたファイルに対して行い、高い一致が得られた場合に該検出したファイルを、正式に元ファイルであると特定する。これは、例えば、ポインター情報の下位の部分が曖昧で有ったり、誤り訂正でも訂正できなかった場合に対して、検索の範囲を絞り込んでファイルを特定出来る為、より高速で、確度の高いファイル特定が行える。
【０１６８】
［文字領域のベクトル化の別実施例］
文字領域のベクトル化についての別実施例について説明する。
【０１６９】
一つの原稿の処理開始時はベクトルデータが格納されていない辞書を用意する。ある文字ブロックのベクトル化を行う場合、文字ブロックから一文字取り出し文字イメージから特徴抽出を行う。抽出された特徴と辞書とのマッチングを行い、マッチしなかった場合は、文字の特徴抽出結果を辞書に登録し、登録した文字の文字番号を参照する中間データを作成する。マッチする文字が存在すれば辞書内の文字の文字番号を参照する中間データを作成する。中間データは文字の画像内での位置と大きさと、辞書内の何番目の文字とマッチしているか表すもので構成され、例えば図３１のような構成である。「ｘ」は文字矩形の左上のＸ座標値、「ｙ」は文字矩形の左上のＹ座標値、「ｗ」は文字矩形の幅のピクセル値、「ｈ」は文字矩形の高さのピクセル値、「ｎ」は辞書のｎ番目の文字とマッチしていることを意味する。一つの文字ブロックの処理が終了すると辞書に登録された文字のイメージに基づいてベクトルデータを生成し、中間データと当該生成された文字ベクトルデータとを合成することでその文字ブロックのベクトル化結果とする。
【０１７０】
図３０は一つの文字ブロックの処理手順を示すフローチャートである。
【０１７１】
処理開始時の辞書の登録文字数をＮｖ、処理中の辞書の登録文字数をＮで表すことにすると、開始時はＮｖ＝Ｎである。
【０１７２】
ステップＳ１２０１の一文字抽出処理では、入力された文字ブロックの画像データから一文字の領域を切り出す処理を行う。ステップＳ１２０２では、ステップＳ１２０１の結果文字が抽出できたかどうか判断し、抽出できていればステップＳ１２０３へ、出来ていなければステップＳ１２０８へ処理を進める。
【０１７３】
ステップＳ１２０３は、文字の特徴抽出を行う。文字の特徴とは、縦横比、重心位置、輪郭データのヒストグラムベクトルなど（その他の特徴を用いても構わない）である。
【０１７４】
ステップＳ１２０４は、ステップＳ１２０３で抽出された文字の特徴と辞書に登録された文字のマッチングを行う。まず辞書の先頭の文字から縦横比と重心位置を比較し大きく異なっている文字は明らかに異なる文字であるため他の情報を使って比較することなく次の辞書中の文字へ比較対象を変更する。縦横比がほぼ等しい場合は、輪郭データのヒストグラムベクトルの比較を行う。ここでは通常のベクトル間の距離を計算し近ければ近いほどマッチングしていることになる。ここで距離があらかじめ決めておいた一定の値以下のものを候補文字としてピックアップしておく。このように辞書内の全ての文字とのマッチングを行う。
【０１７５】
ステップＳ１２０５では、ステップＳ１２０４の結果マッチした文字があるかどうか判定し、文字があればステップＳ１２０７へ、なければステップＳ１２０６へ処理を進める。
【０１７６】
ステップＳ１２０６は、処理中の文字の特徴データを辞書へ登録する。辞書は図３２のような形式であり、辞書の最後に追加する。ここでＮ＝Ｎ＋１として辞書の文字数を１つ増やす処理を行う。中間データＩＤには図３１の何番目の文字に対応するかが格納される。
【０１７７】
ステップＳ１２０７では、図３１のような形式の、辞書内の対応する文字番号が付与された中間データを生成する。
【０１７８】
ステップＳ１２０８の処理は、文字ブロック内の全ての文字が辞書とのマッチング処理が終了した場合に行われる。開始時はＮｖ文字辞書にあり、終了時がＮとなっているため、Ｎ−Ｎｖ文字分の文字のベクトル化処理を行う。ここでは辞書に格納された文字の文字イメージを少なくとも１つ用いてベクトルデータを生成する。
【０１７９】
ステップＳ１２０９は、中間データと辞書に登録されている各文字のベクトルデータを合成する処理を行い、その結果を文字ブロックのベクトル化結果として出力する。
【０１８０】
このように構成することにより、各文字ブロックごとに同じ文字に対しては同じベクトルデータを使用することができるので、原稿イメージ内の各文字を統一でき、見た目が良くなる。また、原稿内の文字イメージを用いてベクトルデータを生成するので、読み込んだ原稿に忠実なベクトルデータを生成することもできる。
【０１８１】
［ベクトル化の別実施形態］
先の実施形態では検索手段で、元ファイルの特定が出来ない場合、イメージ画像全体に対してベクトル化処理を行うが、例えば、一般の文書の場合、文書中のオブジェクト全て新規に作成された物でなく、一部のオブジェクトは他のファイルから流用して作成される場合がある。例えば、背景オブジェクト（壁紙）は文書作成アプリケーションで幾つかのパターンを予め用意してあり、その中から選択して用いるのが通常である。従って、このようなオブジェクトは文書ファイルデータベースの中の他の文書ファイル中に存在している可能性が高く、又、再利用可能なベクトルデータとして存在する可能性が高い。
【０１８２】
従って、このような背景から、図５のベクトル化処理（ステップＳ５４）の別実施形態として、ブロックセレクション処理で個別のオブジェクトに分割された各オブジェクトに対して、該オブジェクト単位でデータベース中から該一致するオブジェクトを一部に含むファイルを検索し、一致したオブジェクトに対して、個別に該ファイルからオブジェクト単位でベクトルデータを取得する。これに依って、文書全体をベクトル化する必要が無くなり、より高速にベクトル化出来、更に、ベクトル化による画質劣化を防止出来る。
【０１８３】
一方、図５において、検索処理（Ｓ５１〜Ｓ５３）で元ファイルがＰＤＦとして特定できた場合、該ＰＤＦがその文書の文字オブジェクトに対して既に文字認識された文字コードを付加ファイルとして有している場合がある。このようなＰＤＦファイルをベクトル化する際には、該文字コードファイルを用いれば、Ｓ５４以降のベクトル化処理の中の文字認識処理を省く事が出来る。即ち、ベクトル化処理をより高速に処理する事が可能に成る。
【０１８４】
［ベクトル化の別実施形態］
ベクトル化の処理が実行されることになったとき、図２８のような現在の設定内容を確認するためのインターフェースを、表示装置３５に表示するようにしてもよい。これは、図２３から図２７で設定されたもので、ハードディスクなどの記憶装置に保存してある設定である。ここで図２８の「変換」ボタンをタッチすることで、ベクトル化の処理が起動する。ここで「変更」ボタンをタッチすると、図２３から図２７のような設定画面が表示され、現在の設定を変更することができる。ただしこの場合の設定の変更はその一回のベクトル化において有効であり、設定の情報はハードディスクには書き込まない。このようにすることにより、ユーザの目的や処理する文書によってベクトル化の処理内容を変更することが可能になる。
【０１８５】
また図２９のように「デフォルトにする」というボタンを用意することで、変更した設定の内容をハードディスクなどの記憶装置に書き出すことで次回からのベクトル化時に最初に表示される設定を変更できるようになる。このようにすることにより、さらにユーザの目的に応じたベクトル化処理が可能となる。
【０１８６】
以上説明したように本実施形態によれば、複写機による紙文書を複写する際に、その文書に対応するオリジナル電子ファイルの所在を確認できると共に、オリジナル電子ファイルに基づく印刷を行うことで、画質劣化のない複写物を得ることができる。
【０１８７】
また、オリジナル電子ファイルが存在しないような紙文書を読取る場合においても、早期の段階でベクトル化処理を実行して登録することで、それ以上の画質劣化を抑制できるようになる。
【０１８８】
更に、オリジナル電子ファイルが存在しないような紙文書を読取った際の登録処理では、アプリケーションプログラムで再編集できる形式のファイルとして登録する。従って、文書の修正等の作業も簡単なものとすることができる。
【０１８９】
また、ベクトルデータ化することにより、文書イメージをイメージファイルとして格納する場合に比べ、記憶容量が少なくて済む。
【０１９０】
また、ベクトルデータ化することにより、拡大等の画像処理が行なわれたとしても画質劣化を少なくすることができる。
【０１９１】
また、属性ごとの領域に分割し、属性ごとにベクトル化処理の実行方法を設定できるので、ユーザの目的に適したデータを生成することが可能となる。
【０１９２】
なお、上記実施形態での説明から容易に理解できるように、本実施形態における特徴となる処理の大部分は、汎用の情報処理装置であるマネージメントＰＣ１０１が実行するコンピュータプログラムによるものであるので、本発明はかかるコンピュータプログラムをもその範疇とするのは明らかである。また、通常、コンピュータで動作するプログラムは、ＣＤＲＯＭ等のコンピュータ可読記憶媒体をセットし、システムにコピーもしくはインストールすることで実行可能になるものであるから、本発明はかかるコンピュータ可読記憶媒体をもその範疇とするのは明らかである。
【０１９３】
以上に説明したように本実施形態によれば、複写対象となった文書のイメージデータから、当該文書に対応するオリジナル文書ファイルを特定し、そのファイルに基づいて印刷することで画質劣化を防ぎ、更に、未登録の文書の場合には登録処理を行うことで、早期の段階で画質劣化を抑制する環境を提供することが可能になる。
【図面の簡単な説明】
【０１９４】
【図１】実施形態におけるネットワークシステム図である。
【図２】実施形態における複合機（ＭＦＰ）のブロック構成図である。
【図３】実施形態における実施形態におけるマネージメントＰＣのブロック構成図である。
【図４】実施形態におけるＭＦＰの外観図である。
【図５】実施形態におけるマネージメントＰＣの処理手順を示すフローチャートである。
【図６】実施形態におけるデータベースが記憶するデータ構造を示す図である。
【図７】紙文書を読取った際のブロックセグメント化の処理内容を説明するための図である。
【図８】ブロックセグメント化によって生成されるデータの内容を示す図である。
【図９】実施形態における２次元バーコードの読取り／デコード処理手順を示すフローチャートである。
【図１０】実施形態における２次元バーコード付き文書の例を示す図である。
【図１１】実施形態におけるファイル検索の処理手順を示すフローチャートである。
【図１２】実施形態におけるファイル検索の他の処理手順を示すフローチャートである。
【図１３】実施形態における読取り文書のレイアウトに基づくレイアウト検索処理手順を示すフローチャートである。
【図１４】実施形態における線分のベクトル化処理内容を説明するための図である。
【図１５】実施形態における線分のベクトル化処理内容を説明するための図である。
【図１６】実施形態におけるグループ化処理の概要処理手順を示すフローチャートである。
【図１７】実施形態における図形要素を検出処理手順を示すフローチャートである。
【図１８】ＤＡＯＦのデータ構造を示す図である。
【図１９】実施形態におけるアプリケーション用データ生成処理手順を示すフローチャートである。
【図２０】図１９におけるステップＳ８００２の文書構造ツリー生成部の詳細フローチャートである。
【図２１】文書構造ツリーの構造を説明するための図である。
【図２２】実施形態におけるポインタ情報を２次元バーコードにて符号化し、画像中に付加する手順を示すフローチャートである。
【図２３】実施形態における領域領域に対する設定画面の一例を示す図である。
【図２４】実施形態における領域領域に対する設定画面の一例を示す図である。
【図２５】実施形態における領域領域に対する設定画面の一例を示す図である。
【図２６】実施形態における領域領域に対する設定画面の一例を示す図である。
【図２７】実施形態における領域領域に対する設定画面の一例を示す図である。
【図２８】実施形態におけるベクトル化処理の設定内容確認の画面を示す図である。
【図２９】実施形態におけるベクトル化処理の他の設定内容確認の画面を示す図である。
【図３０】一つの文字ブロックに対する処理手順を示すフローチャートである。
【図３１】文字領域のベクトル化処理時に作成される辞書の構造を示す図である。
【図３２】文字領域のベクトル化処理時における中間データの構造を示す図である。
【図１】
2004265384.tif 000003
【図２】
2004265384.tif 000004
【図３】
2004265384.tif 000005
【図４】
2004265384.tif 000006
【図５】
2004265384.tif 000007
【図６】
2004265384.tif 000008
【図７】
2004265384.tif 000009
【図８】
2004265384.tif 000010
【図９】
2004265384.tif 000011
【図１０】
2004265384.tif 000012
【図１１】
2004265384.tif 000013
【図１２】
2004265384.tif 000014
【図１３】
2004265384.tif 000015
【図１４】
2004265384.tif 000016
【図１５】
2004265384.tif 000017
【図１６】
2004265384.tif 000018
【図１７】
2004265384.tif 000019
【図１８】
2004265384.tif 000020
【図１９】
2004265384.tif 000021
【図２０】
2004265384.tif 000022
【図２１】
2004265384.tif 000023
【図２２】
2004265384.tif 000024
【図２３】
2004265384.tif 000025
【図２４】
2004265384.tif 000026
【図２５】
2004265384.tif 000027
【図２６】
2004265384.tif 000028
【図２７】
2004265384.tif 000029
【図２８】
2004265384.tif 000030
【図２９】
2004265384.tif 000031
【図３０】
2004265384.tif 000032
【図３１】
2004265384.tif 000033
【図３２】
2004265384.tif 000034