(57)【要約】【課題】スキャンした紙文書のページ数が大量にある場合、ユーザーに対して、最適な格納先を提示するまでに時間がかかってしまうといった課題がある。【解決手段】画像処理装置と解析サーバーとを含む文書解析システムを提供する。画像処理装置は、文書をスキャンして得た画像データからテキストデータを抽出し、抽出したテキストデータを分割して得られる分割テキストデータを、解析サーバーから画像データの格納先候補を受信するまで解析サーバーに順次送信する。解析サーバーは、送信された分割テキストデータに基づいて解析を行ない、格納先候補が決定した時点で、格納先候補を画像処理装置に返信する。【選択図】図１０
2016212563.tif 000002
【特許請求の範囲】
【請求項１】
画像処理装置と解析サーバーとを含む文書解析システムであって、
前記画像処理装置は、
文書をスキャンして得た画像データからテキストデータを抽出する抽出手段と、
前記抽出手段で抽出したテキストデータを分割して得られる分割テキストデータを、前記解析サーバーから前記画像データの格納先候補を受信するまで前記解析サーバーに順次送信する第一の送信手段と、
前記解析サーバーから受信した格納先候補を提示して、ユーザーに格納先を選択させる選択手段と、
前記ユーザーによって選択された格納先に、前記文書をスキャンして得た前記画像データを送信する第二の送信手段と
を有し、
前記解析サーバーは、
前記第一の送信手段から送信された分割テキストデータに基づいて解析を行なう解析手段と、
前記解析手段での解析処理において格納先候補が決定した時点で、当該格納先候補を前記画像処理装置に返信する返信手段と
を有することを特徴とする文書解析システム。
【請求項２】
前記解析手段は、第一の分割テキストデータを用いた第一の解析結果と、前記第一の分割テキストデータの後に前記第一の送信手段から送信される第二の分割テキストデータを前記第一の解析結果に用いられたテキストデータに結合した結合テキストデータを用いた第二の解析結果と、を比較し、比較結果が閾値以上である場合、前記第二の解析結果を前記格納先候補として決定することを特徴とする請求項１に記載の文書解析システム。
【請求項３】
前記返信手段は、前記比較結果が閾値以上でない場合、前記画像処理装置に追加の分割テキストデータの送信依頼を送信することを特徴とする請求項２に記載の文書解析システム。
【請求項４】
前記第一の送信手段は、前記送信依頼を受信するたびに、前記抽出したテキストデータから抜粋する位置を変えて得られた分割テキストデータを送ることを特徴とする請求項３に記載の文書解析システム。
【請求項５】
前記解析手段は、テキストデータからキーワードを抽出し、抽出したキーワードと格納先に対応するキーワードとを比較することで格納先候補を解析結果として決定することを特徴とする請求項１から４のいずれか一項に記載の文書解析システム。
【請求項６】
前記第一の送信手段は、分割テキストデータが基準値に達していない場合、文書をスキャンして得た前記画像データを送信し、
前記解析手段は、前記画像データを用いた解析を行なうことを特徴とする請求項１から５のいずれか一項に記載の文書解析システム。
【請求項７】
前記解析手段は、前記画像データが示す画像の特徴点に基づいて格納先候補を解析結果として決定することを特徴とする請求項６に記載の文書解析システム。
【請求項８】
文書をスキャンして得た画像データからテキストデータを抽出する抽出手段と、
前記抽出手段で抽出したテキストデータを分割して得られる分割テキストデータを解析サーバーから前記画像データの格納先候補を受信するまで前記解析サーバーに順次送信する第一の送信手段と、
前記解析サーバーから受信した格納先候補を提示して、ユーザーに格納先を選択させる選択手段と、
前記ユーザーによって選択された格納先に、前記文書をスキャンして得た前記画像データを送信する第二の送信手段と
を有することを特徴とする画像処理装置。
【請求項９】
画像処理装置において文書をスキャンして得た画像データから抽出されたテキストデータを分割して得られた分割テキストデータを、前記画像処理装置から受信する受信手段と、
前記受信した分割テキストデータに基づいて解析を行なう解析手段と、
前記解析手段での解析処理において前記画像データの格納先候補が決定した時点で、当該格納先候補を前記画像処理装置に返信する返信手段と
を有することを特徴とする解析サーバー。
【請求項１０】
画像処理装置と解析サーバーとを用いた文書解析方法であって、
前記画像処理装置において、
文書をスキャンして得た画像データからテキストデータを抽出する抽出ステップと、
前記抽出ステップで抽出したテキストデータを分割して得られる分割テキストデータを、前記解析サーバーから前記画像データの格納先候補を受信するまで前記解析サーバーに順次送信する第一の送信ステップと、
前記解析サーバーから受信した格納先候補を提示して、ユーザーに格納先を選択させる選択ステップと、
前記ユーザーによって選択された格納先に、前記文書をスキャンして得た前記画像データを送信する第二の送信ステップと
を実行させ、
前記解析サーバーにおいて、
前記第一の送信ステップにおいて送信された分割テキストデータに基づいて解析を行なう解析ステップと、
前記解析ステップでの解析処理において格納先候補が決定した時点で、当該格納先候補を前記画像処理装置に返信する返信ステップと
を実行させることを特徴とする文書解析方法。
【請求項１１】
コンピュータを請求項１から７のいずれか一項に記載の画像処理装置の各手段として機能させるためのプログラム。
【請求項１２】
コンピュータを請求項１から７のいずれか一項に記載の解析サーバーの各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スキャンして得られた画像データを所定の格納先に格納する技術に関する。
【背景技術】
【０００２】
近年、法律事務所などの大量の紙文書を扱う分野において、スキャン機能を有する画像処理装置を利用して紙文書の電子化を行い、その紙文書の画像データを関連する格納先に分類して管理する仕組みが考えられている。スキャンして得た紙文書の画像データを格納する格納先については、ユーザーが手動で指定したり、過去に格納した格納先の履歴やあらかじめ登録しておいたブックマークなどを利用したりして、ユーザーが選択するという手法が採用されている。
【０００３】
また、文書データから抽出された文字列を使用して格納先の属性情報を検索し、検索結果を基に特定された格納先を候補としてユーザーに提示する手法も考えられている。（特許文献１参照）
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−２３４０７８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、画像処理装置においてスキャンして得た紙文書のテキストデータを特許文献１に記載されているような情報処理装置に送信し、格納先の候補が送信元に通知されるような形態においては処理に時間を要することがある。例えば、スキャンした紙文書のページ数が大量にある場合、情報処理装置において全てのテキストデータの受信を待って検索処理が行なわれたり、大量のテキストデータに基づく検索処理に時間を要したりすることがある。従って、ユーザーに対して、最適な格納先を提示するまでに時間がかかってしまうといった課題がある。
【課題を解決するための手段】
【０００６】
本発明に係る文書解析システムは、画像処理装置と解析サーバーとを含む文書解析システムであって、前記画像処理装置は、文書をスキャンして得た画像データからテキストデータを抽出する抽出手段と、前記抽出手段で抽出したテキストデータを分割して得られる分割テキストデータを、前記解析サーバーから前記画像データの格納先候補を受信するまで前記解析サーバーに順次送信する第一の送信手段と、前記解析サーバーから受信した格納先候補を提示して、ユーザーに格納先を選択させる選択手段と、前記ユーザーによって選択された格納先に、前記文書をスキャンして得た前記画像データを送信する第二の送信手段とを有し、前記解析サーバーは、前記第一の送信手段から送信された分割テキストデータに基づいて解析を行なう解析手段と、前記解析手段での解析処理において格納先候補が決定した時点で、当該格納先候補を前記画像処理装置に返信する返信手段とを有することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、画像処理装置におけるスキャン開始から画像処理装置において格納先候補が提示されるまでの時間を短縮することができる。
【図面の簡単な説明】
【０００８】
【図１】実施例にかかるシステムの構成例を示す図である。
【図２】本実施例における画像処理装置のハードウェア構成を示すブロック図である。
【図３】本実施例における解析サーバーおよびファイルサーバーのハードウェア構成を示す図である。
【図４】本実施例における解析サーバーのソフトウェア構成を説明するための図である。
【図５】実施例における画像処理装置が有するアプリケーションのソフトウェア構成を説明するための図である。
【図６】本実施例における画像処理装置の操作表示部の例である。
【図７】本実施例における画像処理装置の操作表示部の例である。
【図８】本実施例における処理のシーケンス図である。
【図９】本実施例における、格納先の候補として適している格納先情報をユーザーに選択させるための画面例である。
【図１０】本実施例における、テキスト解析処理のフローチャートである。
【図１１】本実施例におけるテキストサイズによって送信データを変更する処理を示したフローチャートである。
【発明を実施するための形態】
【０００９】
以下、本発明を実施するための形態について図面を用いて説明する。なお以下の実施例において示す構成は一例にすぎず、本発明は図示された構成に限定されるものではない。
【００１０】
［実施例１］
図１は、本実施例の文書解析システムの一例を示す構成例である。本システムはネットワーク１００を介して接続される画像処理装置１０１と、解析サーバー１０２と、ファイルサーバー１０３とを有する。ネットワーク１００は各装置間で通信を行うための基盤であって、イントラネット、インターネットもしくはその他のネットワークシステムであっても構わない。
【００１１】
画像処理装置１０１は、例えばＷｅｂブラウザー機能を有するＭＦＰ（Multifunction Peripheral）などで構成される。また、画像処理装置１０１はローカルなＩＰアドレスで管理されていても良い。その場合ネットワーク１００と画像処理装置１０１の間にゲートウェイ（不図示）が存在し、ゲートウェイはアドレス変換を行う。例えばゲートウェイにはルーターが含まれる。またゲートウェイや、画像処理装置１０１がファイアウォール機能を備えていても良い。解析サーバー１０２は、ファイルサーバー１０３に格納されているファイルを取得しキーワードを抽出してデータベース（ＤＢ）に格納する機能を有する。また、解析サーバー１０２は、ＤＢに格納されたキーワードと比較対象のテキストデータから抽出したキーワードとを比較し、類似したファイルが格納されている格納先の候補を提示する機能を有する。ファイルサーバー１０３は、紙文書をスキャンして得られた画像データなどのファイルを保存する機能を有する。ファイルサーバーは、画像処理装置１０１や解析サーバー１０２からリクエストに応じて、ファイルを格納したり、格納されているファイルを取得して送信したりする。
【００１２】
図２は画像処理装置１０１のハードウェア構成を示すブロック図の一例である。画像処理装置１０１は、制御部２１８と、ネットワーク部２１６と、画像メモリ２１７と、ＨＤＤ２１９と、操作表示部２１２と、スキャナ部２１３と、プリンタ部２１４とを有する。制御部２１８は、ＣＰＵ２２０、ＲＯＭ２２１、及びＲＡＭ２２２を含む。
【００１３】
制御部２１８は、画像処理装置１０１の全体の動作を制御する。ＣＰＵ２２０は、ＲＯＭ２２１に記憶された制御プログラムを読み出して読取制御や送信制御などの各種制御処理を実行する。ＲＡＭ２２２は、ＣＰＵ２２０の主メモリ、ワークエリア等の一時記憶領域として用いられる。また、制御部２１８は、操作表示部２１２、スキャナ部２１３、プリンタ部２１４、及びネットワーク部２１６の動作を制御する。また制御部２１８は、画像メモリ２１７やＨＤＤ２１９から各種データを読み出したり画像メモリ２１７やＨＤＤ２１９に各種データを書き込んだりする。
【００１４】
操作表示部２１２には、タッチパネル機能を有する液晶等の表示部やキーボード等が配置されている。操作表示部２１２は、操作画面を操作表示部２１２に表示する。スキャナ部２１３は、原稿の画像を読み取って画像データを生成し、制御部２１８に出力する。プリンタ部２１４は、制御部２１８から出力された画像データをシートに印刷する。
【００１５】
ネットワーク部２１６は、スキャナ部２１３で読み取られて保存された画像データから抽出したテキストデータを、指定された送信先に送信する。また、ネットワーク部２１６は、制御部２１８をネットワーク１００に接続して外部の情報処理装置（不図示）から印刷用の画像データを受信したり、操作表示部２１２で表示する画面データを受信したりする。
【００１６】
ＨＤＤ２１９は、画像データや各種プログラムを記憶する。本実施例における各種プログラムも、ＨＤＤ２１９に格納される。なお、外部の情報処理装置から受信した印刷用の画像データは、画像メモリ２１７に一時的に格納され、制御部２１８を介してプリンタ部２１４により印刷される。
【００１７】
図３は、本実施例の解析サーバー１０２およびファイルサーバー１０３のハードウェア構成図の一例である。サーバーを制御するＣＰＵ３０１、ＣＰＵ３０１のワークエリアを提供するＲＡＭ３０２、サーバー上で動作するプログラムおよび設定を記憶する記憶部３０３、他機器とネットワーク１００による通信を行うネットワーク部３０４、メインバス３００を有する。
【００１８】
尚、本実施例は特に断らない限り、ＣＰＵ３０１がメインバス３００を介してＲＡＭ３０２、記憶部３０３、ネットワーク部３０４を制御して実施する。
【００１９】
図４は、本実施例における解析サーバー１０２のソフトウェア構成を説明するための図である。図４に示す各機能部は、解析サーバー１０２が有しているＣＰＵ３０１が制御プログラムを実行することにより実現される。
【００２０】
解析サーバー１０２は、通信部４０１、解析リクエスト受付処理部４０２、解析リクエスト処理部４０３、クローラー部４０４、クローラー結果処理部４０５、キーワード抽出部４０６、ファイル情報ＤＢ部４０７を有する。
【００２１】
クローラー部４０４は、通信部４０１を介して、ファイルサーバー１０３に格納されているファイル（電子データ）とそのファイルの格納先を示す情報とを収集する。格納先とは、例えばファイルが格納されているフォルダのことであり、格納先を示す情報とはフォルダ名やフォルダへのパス情報などのことである。クローラー部４０４は、ファイルサーバー１０３に格納される新規ファイルもしくはアップデートがあるファイルについての情報の収集を行う。すでに収集しているファイルについての情報は収集しない。クローラー部４０４は収集したファイルとその格納先情報とをクローラー結果処理部４０５に渡す。
【００２２】
クローラー結果処理部４０５は、クローラー部から受け取ったファイルを、キーワード抽出部４０６に渡し、レスポンスとして、ファイルから抽出したキーワード抽出結果を受け取る。そして、クローラー結果処理部４０５は、キーワード抽出部４０６から受け取ったキーワード抽出結果と対応する格納先情報とを、ファイル情報ＤＢ部４０７に保存する。これにより、ファイル情報ＤＢ部４０７には、それぞれの格納先に格納されているファイルに適したキーワードが格納先情報と関連付けられて保存されることになる。
【００２３】
キーワード抽出部４０６は、受け取ったテキストデータまたはファイルから、キーワード情報を抽出する処理を行う。また、キーワードの出現回数などを集計する処理も行う。例えば、キーワード抽出部４０６は、ファイルのプロパティの情報からキーワードを抽出したり、文書ファイルのテキストデータを解析したりする。そして、専門用語に多く見られる複合名詞などを出現頻度などの統計的指標を利用してキーワードとして抽出する処理を行なう。また、キーワード抽出部４０６は、後述する解析リクエスト処理部４０３からの要求によりテキストデータを解析してキーワードを抽出する処理を行なう。
【００２４】
解析リクエスト受付処理部４０２は、通信部４０１を介して、画像処理装置１０１からテキストデータの解析リクエストを受け付ける。この画像処理装置１０１からのテキストデータは画像処理装置１０１においてスキャンした画像から文字認識処理（ＯＣＲ処理）を行なうことで抽出されたテキストデータである。すなわち、解析リクエスト受付処理部４０２は、画像処理装置１０１がスキャンを行なって得た画像から、画像処理装置１０１がＯＣＲ処理を行なって抽出したテキストデータを受け取る。また、解析リクエスト受付処理部４０２は、後述する解析リクエスト処理部４０３が処理した解析結果を、画像処理装置１０１にレスポンスとして送信する処理も行う。
【００２５】
解析リクエスト処理部４０３は、解析リクエスト受付処理部４０２が受信したテキストデータをキーワード抽出部４０６に渡し、テキストデータから抽出したキーワード抽出結果を受け取る。また、解析リクエスト処理部４０３は、ファイル情報ＤＢ部４０７に格納されているファイルのキーワード等の情報を取得し、受信したテキストデータから抽出したキーワード抽出結果と比較する処理を行う。比較した結果、受信したテキストデータのキーワードと類似するキーワードが関連付けられるファイルが格納される格納先候補を示すリスト（以下、格納先候補情報という）を、解析結果として解析リクエスト受付処理部に渡す。  図５は、本実施例における解析サーバー１０２に対応した画像処理装置１０１が有するアプリケーション５００のソフトウェア構成を説明するための図である。アプリケーション５００は、ＲＯＭ２２１に格納され、画像処理装置が有するＣＰＵ２２０によって実行される。アプリケーション５００は、通信部５０１、処理部５０２、画面表示部５０３を有する。
【００２６】
処理部５０２は、通信部５０１を介して、解析サーバー１０２およびファイルサーバー１０３と通信を行う。なお、処理部５０２を中心とした一連の処理シーケンスに関しては、図８を用いて後述する。主な処理としては、まず、画像処理装置１０１が有する制御部２１８を介して、スキャナ部２１３に対してスキャン実行指示を行う。また、スキャナ部２１３が紙文書などをスキャンして得られたスキャン画像データ（電子データ）からＯＣＲ処理を行なうことで抽出したテキストデータを解析サーバー１０２へ送信し、そのレスポンスとして解析結果を受け取る。解析結果とは、前述のように格納先候補情報のことである。また、処理部５０２は、格納先候補情報に基づいて選択されたファイルサーバー１０３の格納先に、スキャナ部２１３でスキャンしたスキャン画像データを送信しファイルの格納を指示する。以下、スキャン画像データのことを、単にスキャンデータと称する。
【００２７】
画面表示部５０３は、操作表示部２１２を介して、ユーザーに対して画面を表示するための処理を行う。具体的には、操作画面を表示し、ユーザーの操作に応じて処理依頼を処理部５０２に行う。
【００２８】
図６は、本実施例における画像処理装置１０１の操作表示部２１２で表示される操作画面６００の例である。この操作画面６００では、画像処理装置１０１上で利用可能なアプリケーションへアクセス可能なボタンが表示されている。ユーザーが各ボタンを押下することによって押下されたアプリケーションが起動する。なお、この操作画面６００は、画像処理装置１０１が有するメインメニューキー（不図示）を押下したときに表示されるメインメニューの画面である。例えば、ボタン６０１を押下すると、「スキャンして送信」するアプリケーションが表示されることになる。
【００２９】
図７は、本実施例における画像処理装置１０１の操作表示部２１２の例であり、ユーザーが原稿をスキャンして送信を行う際に利用するアプリケーション５００の画面例である。利用者は、スキャナ部に原稿をセットしたうえで、スタートキー７０１を押下すると、スキャンが実行される。
【００３０】
図８は、本実施例におけるユーザーが図７に示したアプリケーション５００の操作画面を利用して、原稿をスキャンし、ファイルサーバー１０３に格納するまでのシーケンス図である。ユーザーによって、画像処理装置１０１が有するメインメニューキー（不図示）が押下されて図６に示した操作画面６００が表示されるところから処理の説明をする。
【００３１】
ステップＳ８０１において、図６に示したメインメニューの画面を操作表示部２１２が表示する。表示した画面上で、ユーザー操作によってアプリケーション５００のボタンが押下されると、ステップＳ８０２において操作表示部２１２は、アプリケーション５００に対してアプリケーションが選択されたことを通知する。通知を受け、ステップＳ８０３においてアプリケーション５００は、アプリケーション５００の初期画面情報を操作表示部２１２に送信し表示指示を行う。ステップＳ８０４において、操作表示部２１２は受信した初期画面を表示する。次にユーザー操作によって、スキャナ部に原稿が置かれている状態でアプリケーション５００のスタートキーが押下されると、ステップＳ８０５において操作表示部２１２はアプリケーション５００に対してスタートキーが押下されたことを通知する。アプリケーション５００はスタートボタン押下通知を受け、ステップＳ８０６において、スキャナ部２１３にスキャン実行指示を行う。ステップＳ８０７でスキャナ部２１３は、原稿のスキャンを実行してスキャンデータ（電子データ）を生成し、ステップＳ８０８においてスキャナ部２１３は、スキャンが終了したことをアプリケーション５００に通知する。スキャン終了を受けて、アプリケーション５００はステップＳ８０９において、ステップＳ８０７でスキャナ部２１３が生成したスキャンデータからテキスト抽出を行う。すなわち、ステップＳ８０７でアプリケーション５００は、スキャンデータの文字認識処理（ＯＣＲ処理）を行いテキストデータを抽出する。
【００３２】
アプリケーション５００はステップＳ８１０において、抽出したテキストデータを解析サーバー１０２に送信し、その結果として解析結果（スキャンデータの格納先候補情報）を取得する。なお、ステップＳ８１０の詳細な処理は、図１０を利用して後述することにする。
【００３３】
ステップＳ８１１でアプリケーション５００は、ステップＳ８１０で取得した格納先候補情報をもとに、ユーザーに対して格納先を選択させるための画面情報を生成する。ステップＳ８１２でアプリケーション５００は、操作表示部２１２に対して画面表示指示を行う。ステップＳ８１３では、操作表示部２１２は画面表示を行う。格納先候補情報をもとに生成された画面の例について図９を用いて説明する。
【００３４】
図９は、本実施例における解析サーバー１０２によって解析された結果である格納先候補情報に基づいて生成される画面の例を示す図である。画面９００は、格納先の候補として適している格納先をユーザーに選択させるための画面である。画面９００には、格納先候補９０１が表示されている。ここでは、格納先のフォルダ名が格納されているものとする。このような格納先候補９０１の中からから所望の格納先をユーザーが選択し、送信ボタン９０２がユーザーによって押下されると、ステップＳ８０８で得られたスキャンデータがファイルサーバー１０３に送信される。
【００３５】
図８に戻ってシーケンスの説明を続ける。ユーザー操作によって候補先が選択され、送信ボタンが押下されるとステップＳ８１４において操作表示部２１２はアプリケーション５００に対して送信ボタンが押下されたことを通知する。通知を受けたアプリケーション５００は、ステップＳ８１５において、ネットワーク部２１６に対して、格納先の指定を含む、スキャンデータの送信指示を行う。指示を受けたネットワーク部２１６は、ステップＳ８１６において、スキャナ部２１３が生成したスキャンデータをファイルサーバー１０３に送信する。ステップＳ８１７では、スキャンデータを受信したファイルサーバーが、指定された保存先にスキャンデータを格納し、ステップＳ８１８にて、処理終了のレスポンスを返す。ネットワーク部２１６は、ステップＳ８１９にてアプリケーション５００に対してレスポンスを返す。アプリケーション５００は、ステップＳ８２０において送信完了画面の表示指示を操作表示部２１２に指示し、ステップＳ８２１において、操作表示部２１２は、完了画面を表示して処理を終了する。
【００３６】
図１０は、本実施例における図９のステップＳ８１０のテキスト解析処理を示したフローチャートである。
【００３７】
フローチャートの説明の前にテキスト解析処理の概要を簡単に説明する。本実施例のテキスト解析処理では、画像処理装置１０１において抽出された全てのテキストデータが解析サーバー１０２に送信されるのではなく、部分的に抜粋されたテキストデータが必要に応じて順次送信される。解析サーバー１０２においてはまず、抜粋された第一のテキストデータを用いて第一の解析結果を求める。その後、解析サーバー１０２は、第一のテキストデータに、その後に送られる抜粋されたテキストデータである第二のテキストデータを結合し、その結合したテキストデータを用いて第二の解析結果を求める。この第一の解析結果と第二の解析結果とが類似する場合には、それ以上の解析をせずに、第二の解析結果を画像処理装置１０１に送信する。一般に原稿には、冒頭部分や最初の数ページに重要なキーワードが含まれている傾向があり、ある一定以上のページ数を超える場合などには、同様のキーワードしか抽出されない傾向がある。そこで、本実施例では画像処理装置１０１は抽出した全てのテキストデータを解析サーバー１０２に送信するのではなく、必要に応じて部分的にテキストデータを送信して解析結果を受信する処理を行なう。このように全てのテキストデータを送信せず、また全てのテキストデータに基づく解析処理を行なわないことにより、ユーザーに解析結果を速やかに提示することができる。以下、具体的にフローチャートに従って説明をする。
【００３８】
まず、ステップＳ１００１において画像処理装置１０１は、初期化処理を行う。初期化処理として、Ｐａｒｔ番号Ｎを１に初期化、及び画像処理装置１０１が抽出したテキストを一部抜粋する際に使用する抜粋開始位置を先頭に初期化する。Ｐａｒｔ番号とは、抜粋したテキストに割り当てられた番号を示す。本実施例では、画像処理装置１０１は抽出したテキストデータを全て解析サーバー１０２に送信するのではなく、抽出したテキストデータの一部を送信する。そこで、送信対象の抜粋されたテキストデータを特定する識別子としてＰａｒｔ番号を用いることとする。
【００３９】
ステップＳ１００２において画像処理装置１０１は、抜粋開始位置より一定サイズ分のテキストデータを、抽出したテキストデータから抜粋する。以下、一定サイズ分抜粋したテキストデータを「分割テキストデータ」と呼ぶ。なお、一定サイズとは、テキストの文字数でもよいし、テキストデータのデータサイズであってもよい。抜粋するサイズ及びその設定方法は任意に決定することができる。ステップＳ１００３において画像処理装置１０１は、ステップＳ１００２で抜粋した分割テキストデータをＰａｒｔ番号と紐づけて解析サーバー１０２に送信する。
【００４０】
ステップＳ１００４において解析サーバー１０２は、画像処理装置１０１から送信された分割テキストデータを受信する。ステップＳ１００５において解析サーバー１０２は、受信した分割テキストデータが空かどうか判定する。分割テキストデータが空である場合は、例えば分割テキストデータに含まれるテキスト数が０である場合や、分割テキストデータのデータサイズが所定値未満である場合などである。
【００４１】
ステップＳ１００５において、受信した分割テキストデータが空であると判定された場合は、ステップＳ１００６において、Ｎ＝１かどうか、つまり最初の分割テキストデータの送信リクエストか判定する。ステップＳ１００６において、Ｎ＝１であると判定された場合は、ステップＳ１００７において解析サーバー１０２は、解析不可エラー通知をレスポンスとして画像処理装置１０１に返信する。解析すべきテキストが存在しないからである。一方、ステップＳ１００６において、Ｎ＝１でないと判定された場合は、解析サーバー１０２は、画像処理装置１０１で抜粋できるテキストが存在しないと判定する。そして、ステップＳ１００８において解析サーバー１０２は前Ｐａｒｔ番号の解析結果（すなわち、Ｐａｒｔ番号Ｎ−１までの解析結果）をレスポンスとして画像処理装置１０１に返信する。
【００４２】
ステップＳ１００５においてテキストデータが空でないと判定された場合、ステップＳ１００９において解析サーバー１０２は、Ｐａｒｔ番号Ｎまでの分割テキストデータをすべて結合した結合テキストデータを解析する。ステップＳ１０１０において、Ｎ＝１、つまり、最初の分割テキストデータであると判定された場合は、ステップＳ１０１１において解析サーバー１０２は、Ｐａｒｔ番号１のテキストデータ及び前記解析結果をファイル情報ＤＢ部４０７に保存する。次いで、ステップＳ１０１２において解析サーバー１０２は、レスポンスとして分割テキストデータ送信依頼を画像処理装置１０１に送信する。本実施例では、画像処理装置１０１からは分割テキストデータが必要に応じて順次送られる。そこで、最初の分割テキストデータであるＰａｒｔ番号１のテキストデータの解析結果は画像処理装置１０１には送信せずにファイル情報ＤＢ部４０７に保存しておく。
【００４３】
ステップＳ１０１０において、Ｎ＝１ではないと判定された場合とは、前回まで（Ｐａｒｔ番号Ｎ−１）まで有効なテキストデータが存在しており、かつ、Ｐａｒｔ番号Ｎ−１までのテキストデータの解析結果が保存されている場合である。そこで、ステップＳ１０１０において、Ｎ＝１ではないと判定された場合、ステップＳ１０１３において、Ｐａｒｔ番号Ｎまでの解析結果と、ファイル情報ＤＢ部４０７に保存されたＰａｒｔ番号Ｎ−１までの解析結果、つまり、前回までの解析結果とを比較する。ステップＳ１０１４において、比較結果がある閾値より低い結果の場合には、追加解析が必要なため、ステップＳ１０１１から処理を継続する。すなわち、ステップＳ１０１１において、前述のようにＰａｒｔ番号Ｎまでの結合テキストデータおよび解析結果を保存し、ステップＳ１０１２において分割テキストデータの送信依頼をレスポンスとして画像処理装置１０１に送信する。
【００４４】
一方、ステップＳ１０１４において、比較結果がある閾値より高い結果の場合には、ステップＳ１００８において解析サーバー１０２は、レスポンスとしてＰａｒｔ番号Ｎの解析結果を画像処理装置１０１へ送信する。解析結果は、前述のように格納先の候補を示す情報のことである。より具体的には、解析結果は類似度が高いフォルダ順に並んだ格納先フォルダの一覧とすることができる。ここで、類似度が高いフォルダとは、「テキストデータと関連するファイルが多く入っている」フォルダや、「テキストデータとの関連度が高いファイルが入っている」フォルダなどが挙げられる。ステップＳ１０１４では、例えば格納先の候補のリストの項目及び順位が、閾値以上同じである場合（すなわち、ほぼ変わらない場合）にＰａｒｔ番号Ｎの解析結果をクライアントに送信する。つまり、前述のようにこれ以上のテキストデータの解析は実質的に不要であるので、この時点で解析処理を打ち切る。一方、前回の解析結果と今回の解析結果との比較結果がある閾値よりも低い（すなわち、格納先候補リストの内容が前回と今回とで異なる場合）、さらなる解析処理を行い、いわば解析結果が安定化するまでテキストデータを追加して解析を行なうことになる。
【００４５】
ステップＳ１０１５において画像処理装置１０１は、解析サーバー１０２からのレスポンスを受信する。ステップＳ１０１６において画像処理装置１０１は、受信したレスポンスの内容を解析する。ステップＳ１０１６で、レスポンス結果が分割テキスト送信依頼であると判定された場合、ステップＳ１０１７において画像処理装置１０１は、Ｐａｒｔ番号をインクリメントする処理及び抜粋開始位置を前回抜粋終了位置へ移動する処理を行う。ステップＳ１０１７の処理の後、画像処理装置１０１はステップＳ１００２から処理を継続する。ステップＳ１０１６で、レスポンス結果が解析結果もしくは解析不可エラーであると判定された場合はテキスト解析処理を終了し、図８のステップＳ８１１から処理を継続する。
【００４６】
以上説明したように、本実施例によれば画像処理装置１０１においてスキャンして得られたスキャンデータから抽出したテキストデータを部分的に抜粋したテキストデータを必要に応じて順次解析サーバー１０２に送信する。そして、解析サーバー１０２において解析結果がほとんど変わらなくなった時点で解析結果を画像処理装置１０１に格納先候補情報を送信するので、ユーザーに格納先候補を提示する時間を早めることができる。
【００４７】
［実施例２］
実施例１では、アプリケーション５００が送信する分割テキストデータのＰａｒｔ番号Ｎまでの解析結果と、Ｐａｒｔ番号Ｎ−１までの解析結果とを比較して、類似度が閾値（％）を越えた場合（すなわち、ほぼ変わらない場合）に解析結果を返す例を説明した。しかしながら、電子データから抽出したテキストデータサイズ、または抜粋した分割テキストデータサイズが小さい場合、解析サーバー１０２がテキストデータを解析しても、期待した結果が返ってこない可能性が高い。本実施例では、抽出テキストデータサイズまたは分割テキストのデータサイズが基準値に達しない場合の処理を説明する。具体的には、画像処理装置１０１は抽出テキストデータサイズまたは分割テキストのデータサイズが基準値に達しない場合、テキストデータではなく、スキャンして得られた画像を示すスキャンデータを解析サーバーに送信する。そして、解析サーバーはテキストデータの解析ではなく画像データの解析によって解析結果を返す例を説明する。なお、画像処理装置１０１や解析サーバー１０２の構成および全体のシーケンスについて実施例１と同様とすることができるので、ここでの説明は省略する。
【００４８】
図１１は、本実施例におけるテキストサイズによってステップＳ８１０におけるテキスト解析処理において、画像処理装置１０１から解析サーバー１０２に送信されるデータを変更する処理を示したフローチャートである。
【００４９】
まず、ステップＳ１１０１およびステップＳ１１０２は、ステップＳ１００１およびステップＳ１００２と同様である。ステップＳ１１０３において画像処理装置１０１は、ステップＳ１１０２において抜粋した分析テキストのサイズが基準値に達しているか判定する。例えば基準値が１００文字といった文字数を示している場合、分割テキストの文字数が１００文字に達しているか否かの判定が行なわれる。なお、基準値はテキストデータサイズであってもよい。
【００５０】
ステップＳ１１０３において、分割テキストのサイズが基準値に達していると判定された場合、ステップＳ１１０４において画像処理装置１０１は、実施例１と同様にＰａｒｔ番号と紐づけて分割テキストデータを解析サーバー１０２に送信する。ステップＳ１１０３において、分割テキストが基準値に達しないと判定された場合、ステップＳ１１０５において画像処理装置１０１は、スキャンデータから抽出されたテキストデータではなく、スキャンデータを解析サーバー１０２に送信する。
【００５１】
ステップＳ１１０６において解析サーバー１０２は、画像処理装置１０１から送信されたデータを受信する。ステップＳ１１０７において解析サーバー１０２は、受信したデータがスキャンデータかどうか判定する。ステップＳ１１０７において、受信したデータがスキャンデータであると判定された場合は、ステップＳ１１０８において解析サーバー１０２は、スキャンデータを解析する。ステップＳ１１０８においては解析サーバー１０２は、実施例１で説明したようなテキストデータに基づく解析ではなく、スキャンして得られた画像データ（スキャンデータ）を解析する。本実施例では、クローラー部４０４は画像データのファイルの収集を行ない、解析サーバー１０２の不図示の解析部が画像データの特徴点を算出し、その特徴点がその画像データの格納先と関連付けてファイル情報ＤＢ部４０７に保存されている。解析サーバー１０２は、ステップＳ１１０８では、画像処理装置１０１から送信されたスキャンデータの特徴点を算出し、格納されている特徴点と比較し、類似度が高いファイルが格納されている格納先の候補を解析結果として得る。
【００５２】
テップＳ１１０９において解析サーバー１０２は、ステップＳ１１０６において得られたスキャンデータの解析結果を画像処理装置１０１に返信する。
【００５３】
一方、ステップＳ１１０７において、受信したデータがテキストデータであると判定された場合、ステップＳ１１１０に進む。ステップＳ１１１０からＳ１１１５までの処理は、実施例１のステップＳ１００９からＳ１０１４と同様の処理であるので、説明は省略する。
【００５４】
以上説明したように、本実施例では、文字数が少ないような文書をスキャンした場合には、テキストデータに基づく解析ではなく、スキャンして得られた画像データに基づく解析を行なうことで正確な格納先候補をユーザーに提示することができる。
【００５５】
＜その他の実施例＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１】
2016212563.tif 000003
【図２】
2016212563.tif 000004
【図３】
2016212563.tif 000005
【図４】
2016212563.tif 000006
【図５】
2016212563.tif 000007
【図６】
2016212563.tif 000008
【図７】
2016212563.tif 000009
【図８】
2016212563.tif 000010
【図９】
2016212563.tif 000011
【図１０】
2016212563.tif 000012
【図１１】
2016212563.tif 000013