(57)【要約】【課題】スキャン画像の文字認識結果を用いて、当該スキャン画像に対しファイル名等の付帯情報をユーザが簡単な操作で設定できるようにする。【解決手段】文書をスキャンして得られたスキャン画像に対して所定の処理を行う装置であって、前記スキャン画像内の一続きの文字列と推認される単位領域をユーザが選択可能に表示した、前記所定の処理を行うための、ＵＩ画面を表示する表示制御手段と、前記ＵＩ画面を介してユーザが選択した前記単位領域に対してＯＣＲ処理を行ない、該ＯＣＲ処理によって抽出された文字列を用いて前記所定の処理のための付帯情報を設定する設定手段と、を備え、前記設定手段は、前記付帯情報を設定する際に、ユーザが選択した単位領域とその周辺にある他の単位領域との位置関係に応じて、前記抽出された文字列の間に区切り文字を挿入する、ことを特徴とする。【選択図】図１０
2019041150.tif 000002
【特許請求の範囲】
【請求項１】
文書をスキャンして得られたスキャン画像に対して所定の処理を行う装置であって、
前記スキャン画像内の一続きの文字列と推認される単位領域をユーザが選択可能に表示した、前記所定の処理を行うための、ＵＩ画面を表示する表示制御手段と、
前記ＵＩ画面を介してユーザが選択した単位領域に対してＯＣＲ処理を行ない、該ＯＣＲ処理によって抽出された文字列を用いて前記所定の処理のための付帯情報を設定する設定手段と、
を備え、
前記設定手段は、前記付帯情報を設定する際に、ユーザが選択した単位領域とその周辺にある他の単位領域との位置関係に応じて、前記抽出された文字列の間に区切り文字を挿入する、
ことを特徴とする装置。
【請求項２】
前記設定手段は、現にユーザが選択中の単位領域及びその１つ前の選択に係る単位領域が特定の方向に連続していない場合に前記区切り文字を挿入することを特徴とする請求項１に記載の装置。
【請求項３】
前記設定手段は、現にユーザが選択中の単位領域における基準となる位置とその１つ前の選択に係る単位領域における基準となる位置が同じかどうか、及び、現にユーザが選択中の単位領域とその１つ前の選択に係る単位領域が隣り合っているかどうかに基づいて、特定の方向に連続しているかどうかを判定することを特徴とする請求項２に記載の装置。
【請求項４】
前記設定手段は、現にユーザが選択中の単位領域とその１つ前の選択に係る単位領域の間に別の単位領域が存在しないとき、隣り合っていると判定することを特徴とする請求項３に記載の装置。
【請求項５】
前記設定手段は、現にユーザが選択中の単位領域とその１つ前の選択に係る単位領域が隣り合っていると判定される場合において、双方の単位領域の間の距離を所定の閾値と比較し、当該距離が所定の閾値内の場合にのみ、双方の単位領域が隣り合っていると判定することを特徴とする請求項４に記載の装置。
【請求項６】
前記所定の閾値は、ユーザが選択した単位領域の高さの３倍未満であることを特徴とする請求項５に記載の装置。
【請求項７】
前記設定手段は、
複数の単語が登録された辞書データを有し、
ユーザが選択中の単位領域から抽出された文字列と前方一致する単語が前記辞書データ内に存在する場合、当該選択に係る単位領域と特定の方向に連続している単位領域に対してさらに前記ＯＣＲ処理を行ない、該ＯＣＲ処理によって抽出された文字列を用いて前記付帯情報を設定する
ことを特徴とする請求項１に記載の装置。
【請求項８】
前記特定の方向は、前記文書のフォーマット又は前記文書で使用されている言語に基づき決定されることを特徴とする請求項２乃至７のいずれか１項に記載の装置。
【請求項９】
前記表示制御手段は、前記設定手段で設定された付帯情報を構成する文字列の間に、区切り文字を挿入するためのボタンを表示し、
前記設定手段は、ユーザによって押下された前記ボタンの位置に区切り文字を挿入する
ことを特徴とする請求項１乃至８のいずれか１項に記載の装置。
【請求項１０】
前記所定の処理は、前記スキャン画像のデータを保存する処理であり、
前記付帯情報は、前記スキャン画像を保存する際のファイル名である
ことを特徴とする請求項１乃至９のいずれか１項に記載の装置。
【請求項１１】
前記所定の処理は、前記スキャン画像のデータを所定の場所にアップロードする処理であり、
前記付帯情報は、アップロード先を示すパス名である
ことを特徴とする請求項１乃至９のいずれか１項に記載の装置。
【請求項１２】
前記所定の処理は、前記スキャン画像のデータをＦＡＸ送信する処理であり、
前記付帯情報は、ＦＡＸ番号である
ことを特徴とする請求項１乃至９のいずれか１項に記載の装置。
【請求項１３】
前記所定の処理は、前記スキャン画像のデータをメール送信する処理であり、
前記付帯情報は、メールアドレスである
ことを特徴とする請求項１乃至９のいずれか１項に記載の装置。
【請求項１４】
文書をスキャンして得られたスキャン画像に対して所定の処理を行う装置の制御方法であって、
表示制御手段が、前記スキャン画像内の一続きの文字列と推認される単位領域をユーザが選択可能に表示した、前記所定の処理を行うためのＵＩ画面を表示するステップと、
設定手段が、前記ＵＩ画面を介してユーザが選択した前記単位領域に対してＯＣＲ処理を行ない、該ＯＣＲ処理によって抽出された文字列を用いて前記所定の処理のための付帯情報を設定するステップと、
を含み、
前記設定するステップでは、前記付帯情報を設定する際に、ユーザが選択した単位領域とその周辺にある他の単位領域との位置関係に応じて、前記抽出された文字列の間に区切り文字を挿入する、
ことを特徴とする制御方法。
【請求項１５】
コンピュータを、請求項１乃至１３のいずれか１項に記載の装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スキャン画像の文字認識結果を用いて、当該スキャン画像に対してファイル名等を設定する技術に関する。
【背景技術】
【０００２】
従来より、文書の管理手法として、紙文書をスキャンして電子化する手法が広く行われている。そして、文書の電子化に際して、スキャンされた画像データに対して文字認識処理（ＯＣＲ処理）を行い、認識された文字を電子化した文書ファイルのファイル名に使用する技術がある。例えば、特許文献１には、スキャンした画像データに対してＯＣＲ処理を行う複数の領域を予め設定しておき、さらに予め設定したファイル名の書式を示すルールと各領域の文字認識結果とに従って、ファイル名を設定する技術が開示されている。また、該ファイル名の書式を示すルールには、複数の領域それぞれの文字認識結果の間に、ハイフン等の特殊記号（区切り文字）が付加されるように設定できることも開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−１７６６２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１の方法では、ＯＣＲ処理の対象領域とファイル名の書式を示すルールとを、文書の種類ごとに設定する必要がある。したがって、種類の異なる様々な文書に対して適切にファイル名を付けるためには、文書の種類に応じて事前にルール設定をする必要があり、その作業に多くの手間がかかってしまう。また、特許文献１の方法では、各領域の文字認識結果の間に挿入される区切り文字は、予め設定したルールに従うため、ファイル名を付与する際に区切り文字を挿入するかどうかを実際のスキャン画像に応じて適応的に変えることができない。図を用いて具体例を示す。図１は、見積書のスキャン画像に対してファイル名を設定する様子を示している。いま、１つのまとまりのある文字列の領域（文字列領域）毎にＯＣＲ処理を行い、文字列領域同士の間には区切り文字として「＿（アンダーバー）」を挿入するというルールが設定されていたとする。図１に示す例では、「見積書」の各文字（１つ１つの漢字）の間にスペースが存在していることから、本来であれば分離されたくない位置で各文字列領域に分離され、「見＿積＿書」のようにファイル名が設定されている。このようなケースでは、文字認識結果の間に区切り文字が挿入されないようにしたいが、特許文献１の技術では対応することができない。
【０００５】
本発明は、上述した課題に対応するべく、スキャン画像の文字認識結果を用いて、ユーザが簡単な操作で、当該スキャン画像に対しファイル名等を設定できるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
本発明に係る装置は、文書をスキャンして得られたスキャン画像に対して所定の処理を行う装置であって、前記スキャン画像内の一続きの文字列と推認される単位領域をユーザが選択可能に表示した、前記所定の処理を行うための、ＵＩ画面を表示する表示制御手段と、前記ＵＩ画面を介してユーザが選択した単位領域に対してＯＣＲ処理を行ない、該ＯＣＲ処理によって抽出された文字列を用いて前記所定の処理のための付帯情報を設定する設定手段と、を備え、前記設定手段は、前記付帯情報を設定する際に、ユーザが選択した単位領域とその周辺にある他の単位領域との位置関係に応じて、前記抽出された文字列の間に区切り文字を挿入する、ことを特徴とする。
【発明の効果】
【０００７】
本発明によれば、スキャン画像の文字認識結果を用いて、当該スキャン画像についてのファイル名等をユーザは簡単な操作で設定することができる。
【図面の簡単な説明】
【０００８】
【図１】従来の問題点を説明する図
【図２】画像処理システムの全体構成を示す図
【図３】（ａ）はＭＦＰのハードウェア構成図、（ｂ）はファイルサーバのハードウェア構成図
【図４】ＭＦＰのソフトウェア構成図
【図５】スキャン画像の生成からアップロードまでの動作制御の流れを示すフローチャート
【図６】スキャン設定画面の一例を示す図
【図７】プレビュー画面の一例を示す図
【図８】プレビュー画面でファイル名が生成された状態を示す図
【図９】アップロード画面の一例を示す図
【図１０】実施例１に係る、ファイル名生成処理の詳細を示すフローチャート
【図１１】実施例２に係る、ファイル名生成処理の詳細を示すフローチャート
【図１２】連続している文字列領域の文字列を自動選択する処理の詳細を示すフローチャート
【発明を実施するための形態】
【０００９】
以下、本発明を実施するための形態について図面を用いて説明する。なお、以下の実施の形態は特許請求の範囲に係る発明を限定するものでなく、また実施の形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【実施例１】
【００１０】
＜画像処理システムの構成＞
図２は、本実施例に係る画像処理システムの全体構成を示す図である。画像処理システムは、ＭＦＰ１１０とファイルサーバ１２０とで構成され、ＬＡＮ（Local Area Network）を介して互いに通信可能に接続されている。
【００１１】
ＭＦＰ（Multi Function Printer）１１０は、スキャナやプリンタといった複数の機能を有する複合機であり、画像処理装置の一例である。ファイルサーバ１２０は、電子化された文書ファイルを保存・管理する外部サーバの一例である。本実施例の画像処理システムは、ＭＦＰ１１０とファイルサーバ１２０とからなる構成としているがこれに限定されない。例えば、ＭＦＰ１１０がファイルサーバ１２０の役割を兼ね備えてもよい。また、ＬＡＮに代えてインターネットなどを介した接続形態であってもよい。また、ＭＦＰ１１０は、ＰＳＴＮ（Public Switched Telephone Networks）に接続され、ファクシミリ装置（不図示）との間で画像データをファクシミリ通信することができる。
【００１２】
図３（ａ）は、ＭＦＰ１１０のハードウェア構成図である。ＭＦＰ１１０は、制御部２１０、操作部２２０、プリンタ部２２１、スキャナ部２２２、モデム２２３で構成される。制御部２１０は、以下の各部２１１〜２１９で構成され、ＭＦＰ１１０全体の動作を制御する。ＣＰＵ２１１は、ＲＯＭ２１２に記憶された制御プログラムを読み出して、読取／印刷／通信などＭＦＰ１１０が有する各種機能を実行・制御する。ＲＡＭ２１３は、ＣＰＵ２１１の主メモリ、ワークエリア等の一時記憶領域として用いられる。なお、本実施例では１つのＣＰＵ２１１が１つのメモリ（ＲＡＭ２１３またはＨＤＤ２１４）を用いて後述のフローチャートに示す各処理を実行するものとするが、これに限定されない。例えば、複数のＣＰＵや複数のＲＡＭまたはＨＤＤを協働させて各処理を実行してもよい。ＨＤＤ２１４は、画像データや各種プログラムを記憶する大容量記憶部である。操作部Ｉ／Ｆ２１５は、操作部２２０と制御部２１０とを接続するインタフェースである。操作部２２０には、タッチパネルやキーボードなどが備えられており、ユーザによる操作／入力／指示を受け付ける。プリンタＩ／Ｆ２１６は、プリンタ部２２１と制御部２１０とを接続するインタフェースである。印刷用の画像データはプリンタＩ／Ｆ２１６を介して制御部２１０からプリンタ部２２１へ転送され、記録媒体上に印刷される。スキャナＩ／Ｆ２１７は、スキャナ部２２２と制御部２１０とを接続するインタフェースである。スキャナ部２２２は、不図示の原稿台やＡＤＦ（Auto Document Feeder）にセットされた原稿を読み取って画像データを生成し、スキャナＩ／Ｆ２１７を介して制御部２１０に入力する。ＭＦＰ１１０は、スキャナ部２２２で生成された画像データをプリンタ部２２１から印刷出力（コピー）する他、ファイル送信またはメール送信することができる。モデムＩ／Ｆ２１８は、モデム２２３と制御部２１０とを接続するインタフェースである。モデム２２３は、ＰＳＴＮ上のファクシミリ装置との間で画像データをファクシミリ通信する。ネットワークＩ／Ｆ２１９は、制御部２１０（ＭＦＰ１１０）をＬＡＮに接続するインタフェースである。ＭＦＰ１１０は、ネットワークＩ／Ｆ２１９を用いてＬＡＮ上の外部装置（ファイルサーバ１２０など）に画像データや情報を送信したり、各種情報を受信したりする。
【００１３】
図３（ｂ）は、ファイルサーバ１２０のハードウェア構成図である。ファイルサーバ１２０は、ＣＰＵ３１１、ＲＯＭ３１２、ＲＡＭ３１３、ＨＤＤ３１４及びネットワークＩ／Ｆ３１５で構成される。ＣＰＵ３１１は、ＲＯＭ３１２に記憶された制御プログラムを読み出して各種処理を実行することで、ファイルサーバ１２０全体の動作を制御する。ＲＡＭ３１３は、ＣＰＵ３１１の主メモリ、ワークエリア等の一時記憶領域として用いられる。ＨＤＤ３１４は、画像データや各種プログラムを記憶する大容量記憶部である。ネットワークＩ／Ｆ３１５は、ファイルサーバ１２０をＬＡＮに接続するインタフェースである。ファイルサーバ１２０は、ネットワークＩ／Ｆ３１５を用いてＬＡＮ上の他の装置（ＭＦＰ１１０など）との間で各種情報を送受信する。
【００１４】
＜ＭＦＰのソフトウェア構成＞
図４は、ＭＦＰ１１０のソフトウェア構成図である。ＭＦＰ１１０のソフトウェアは、ネイティブ機能モジュール４１０とアディショナル機能モジュール４２０の大きく２つに分けられる。ネイティブ機能モジュール４１０に含まれる各部は、ＭＦＰ１１０に標準的に備えられた機能モジュールである。これに対し、アディショナル機能モジュール４２０に含まれる各部は、ＭＦＰ１１０に追加的に備わる機能モジュールであり、例えばアプリケーションのインストールによって実現される機能モジュールである。本実施例におけるアディショナル機能モジュール４２０は、Ｊａｖａ（登録商標）をベースとしたアプリケーションであり、ＭＦＰ１１０への機能追加を容易に実現できる。なお、ＭＦＰ１１０には図示しない他のアプリケーションがインストールされていても良い。以下、両機能モジュール４１０及ぶ４２０を構成する各部について説明する。
【００１５】
アプリケーション表示部４２３は、操作部２２０のタッチパネルに、ユーザによる各種操作を受け付けるためのＵＩ画面を表示する表示制御を行う。表示するＵＩ画面の詳細については後述する。スキャン指示部４２１は、ＵＩ画面を介して入力されたユーザ指示に従い、スキャン設定や転送設定の情報を含んだスキャン要求をスキャン実行部４１１に送信して、スキャン処理を実行させる。このスキャン要求には、後述するアプリケーション受信部４２２が受信する画像データが、当該スキャン要求に対応したものかどうかを識別するための要求ＩＤも含まれる。
【００１６】
スキャン実行部４１１は、スキャン指示部４２１からのスキャン要求を受けて、スキャナＩ／Ｆ２１７を介してスキャナ部２２２を制御しスキャン処理を実行する。これにより、原稿が読み取られて画像データが生成される。スキャンによって生成された画像データ（以下、「スキャン画像データ」と呼ぶ。）はその転送先を特定する転送設定の情報と共に転送部４１２に渡される。転送部４１２は、スキャン実行部４１１から受け取ったスキャン画像データを、転送設定に従って転送する。スキャン画像データの転送先としては、ファイルサーバ１２０や、ＬＡＮ上のＰＣ（不図示）等を設定可能である。ただし、本実施例では、スキャン実行部４１１で生成されたスキャン画像データは、一旦全て、アディショナル機能モジュール４２０に転送するように設定されているものとする。転送部４１２は、ＦＴＰ（File Transfer Protocol）クライアント機能を有しており、ＦＴＰサーバ機能を有するアプリケーション受信部４２２に対してＦＴＰでスキャン画像データを転送する。
【００１７】
アプリケーション受信部４２２は、転送部４１２から内部転送されたスキャン画像データを受信し、アプリケーション転送部４２４に渡す。アプリケーション転送部４２４は、受信したスキャン画像データを画像解析部４２５に渡す。画像解析部４２５は、受け取ったスキャン画像データに対して文字列領域の特定や文字認識といった画像解析処理を行なう。そして、スキャン画像データとその解析結果は、アプリケーション転送部４２４を介してプレビュー表示部４２６に渡される。プレビュー表示部４２６は、スキャン画像データとその解析結果に基づき、ユーザがファイル名設定を行うためのＵＩ画面を生成し、操作部２２０の液晶パネルに表示するといった表示制御を行う。
【００１８】
アップロード指示部４２７は、ユーザがフォルダパス設定を行うためのＵＩ画面を生成し、操作部２２０のタッチパネルに表示する。アプリケーション転送部４２４は、ファイルサーバ１２０にスキャン画像データを転送（送信）する。アプリケーション転送部４２４は、転送が終了すると、アプリケーション表示部４２３に転送が終了したことを通知する。アプリケーション表示部４２３は、アプリケーション転送部４２４からの通知を受けて、表示内容を更新する。また、アプリケーション転送部４２４は、ＳＭＢ（Server Message Block）クライアント機能を有している。これにより、ＳＭＢサーバ機能を有するファイルサーバ１２０に対して、ＳＭＢを用いてファイル操作及びフォルダ操作を行う。なお、使用するプロトコルは、ＳＭＢに限定されるものではなく、WebDAV、ＦＴＰ、ＳＭＴＰ等であってもよい。また、ＳＯＡＰやＲＥＳＴといったファイル送信目的以外のプロトコルも使用可能である。
【００１９】
続いて、ＭＦＰ１１０において原稿からスキャン画像を生成し、ファイルサーバ１２０にアップロードする際の動作制御について説明する。図５は、スキャン画像の生成からアップロードまでの制御の流れを示すフローチャートである。この一連の処理は、制御部２１０において、ＣＰＵ２１１がＨＤＤ２１４に記憶された制御プログラムを実行することにより実現される。以下、詳しく説明する。
【００２０】
ステップ５０１では、アプリケーション表示部４２３により、スキャン処理のための各種設定を行うためのＵＩ画面（以下、「スキャン設定画面」と呼ぶ。）が、操作部２２０のタッチパネルに表示される。図６は、スキャン設定画面の一例を示す図である。図６のスキャン設定画面６００には、５つの設定ボタン６０１〜６０５が存在する。［カラー設定］ボタン６０１は、原稿をスキャンする際のカラー／モノクロを設定するためのボタンである。［解像度設定］ボタン６０２は、原稿をスキャンする際の解像度を設定するためのボタンである。［両面読み取り設定］ボタン６０３は、原稿の両面をスキャンしたい場合に用いる設定ボタンである。［原稿混載設定］ボタン６０４は、サイズが異なる原稿をまとめてスキャンしたい場合に用いる設定ボタンである。［画像形式設定］ボタン６０５は、スキャン画像データの保存形式を指定する際に用いる設定ボタンである。これら設定ボタン６０１〜６０５を用いた設定時には、ＭＦＰ１１０においてサポートされている範囲で設定可能な候補（選択肢）が表示され、ユーザは表示された候補から望むものを選択する。なお、上述の設定ボタンは一例であって、これらすべての設定項目が存在しなくても良いし、これら以外の設定項目が存在してもよい。ユーザは、このようなスキャン設定画面６００を介してスキャン処理についての詳細な設定を行なう。［キャンセル］ボタン６２０は、スキャン設定を中止する場合に用いるボタンである。［スキャン開始］ボタン６２１は、原稿台等にセットした原稿に対するスキャン処理の開始を指示するためのボタンである。
【００２１】
ステップ５０２では、アプリケーション表示部４２３により、ユーザによるボタン操作の内容によって処理の切り分けがなされる。［スキャン開始］ボタン６２１の押下が検出された場合は、アプリケーション表示部４２３によって各設定ボタン６０１〜６０５で設定された内容とスキャン処理の実行開始の受付が、スキャン指示部４２１に対して伝えられる。一方、［キャンセル］ボタン６２０の押下が検出された場合は本処理を終える。
【００２２】
ステップ５０３では、スキャン指示部４２１からの指示に応答して、スキャン実行部４１１によってスキャン処理が実行される。これにより得られたスキャン画像データは、ステップ５０４において、転送部４１２を通じてアプリケーション受信部４２２にＦＴＰで内部転送され、さらにアプリケーション転送部４２４を介して画像解析部４２５に送られる。
【００２３】
ステップ５０５では、画像解析部４２５において、スキャン画像データの解析処理が実行される。具体的には、まず、スキャン画像データに対し、画像信号の二値化やスキャン時にずれた原稿の傾きの修正、原稿が正立する方向への回転などを行なって、解析処理を行いやすい状態に補正する。そして、補正されたスキャン画像（２値画像）に対してエッジ抽出などを行って、当該画像内の文字列領域、すなわち、一続きの文字列と推認される塊（単位領域）を特定する。以下の表１は、ある見積書のスキャン画像の一部に対して画像解析処理を行った結果の一例を示している。
【００２４】
【表１】
2019041150.tif 000003
【００２５】
上記表１において、［番号］は、特定された各文字列領域を一意に示す番号である。この例では１から１１までの通し番号が、認識した順番に付けられている。［領域のＸ座標］は、特定された各文字列領域の左上隅のＸ座標を示す。［領域のＹ座標］は、特定された各文字列領域の左上隅のＹ座標を示す。以後、文字列領域に対して“座標”と言う場合は、特に断らない限り、文字列領域の左上隅の位置座標のことを意味するものとする。［領域の幅］は、特定された各文字列領域の左辺から右辺までの距離を示す。［領域の高さ］は、特定された各文字列領域の上辺から下辺までの距離を示す。本実施例では、［領域のＸ座標］、［領域のＹ座標］、［領域の幅］、［領域の高さ］はいずれもピクセルで示すが、ポイントやインチ等で示してもよい。スキャン画像から抽出された各文字列領域の情報（以下、「文字列領域情報」と呼ぶ。）は、画像解析データとしてアプリケーション転送部４２４に渡される。画像解析データは、例えばＣＳＶやＸＭＬのフォーマットとするが、他のフォーマットであっても構わない。また、ＨＤＤ２１４に一旦保存した上で、所定のタイミングで渡してもよい。
【００２６】
ステップ５０６では、プレビュー表示部４２６により、ステップ５０３で読み込まれたスキャン画像が、操作部２２０のタッチパネルにプレビュー表示される。このプレビュー表示用の画面データは、アプリケーション表示部４２３によって生成・提供される。ユーザは、スキャン画像がプレビュー表示されたＵＩ画面（以下、「プレビュー画面」と呼ぶ。）を介して、スキャン画像データのファイル名を設定することができる。図７（ａ）は、プレビュー画面の一例を示す図である。プレビュー画面７００において、画面中央にあるプレビュー領域７１０内に、読み込まれたスキャン画像が表示される。そして、プレビュー領域７１０内には、スキャン画像と共にその表示状態を変更するための複数のボタン７１１〜７１４も表示される。ボタン７１１及び７１２はスキャン画像の全体を表示しきれないときに現れるボタンで、表示領域を縦方向にスクロールするためのボタンである。ＭＦＰ１１０が備えるタッチパネルは通常それほど大きくはない。そこで、例えば、スキャン画像がA4縦・横書きの原稿を読み取ったものである場合は、スキャン画像の幅方向（短手方向）全体がプレビュー領域７１０にちょうど収まるように上詰めで縮小表示されるよう初期設定される。つまり、初期設定においては、A4縦のスキャン画像の下部はプレビュー領域７１０内に表示されないことになる。このようなとき、「↓」ボタン７１２を押下すると下に表示領域がスクロールし、下部を表示させることができる。さらに、スキャン画像が例えばA4横やA3などの場合には、表示領域を横方向にスクロールするためのボタンをさらに設ければよい。ボタン７１３及び７１４は、表示領域を拡大・縮小するためのボタンであり、「＋」のボタン７１３を押下するとズームインし、「−」のボタン７１４を押下するとズームアウトする。これらボタン操作による動作を、プレビュー画面上でのスワイプやピンチアウト／ピンチインといったユーザの指による操作で実現してもよい。また、プレビュー領域７１０には、ステップ５０５の画像解析処理によって特定された文字列領域が、上述の文字列領域情報に基づき、ユーザに識別可能な態様で表示される。図７（ｂ）は、図７（ａ）のプレビュー画面７００において、各文字列領域が囲み枠によって識別可能に表示された状態を示す図であり、各文字列領域は前述の表１に対応している。ユーザが、プレビュー領域７１０に表示された文字列領域の中から任意の文字列領域を選択（例えば指でタッチ）すると、そこに含まれる文字列がファイル名入力欄７０１に表示、すなわち自動入力され、ファイル名を構成する文字列の一部となる。［戻る］ボタン７２０は、プレビュー表示を中止する場合に用いるボタンである。［次へ］ボタン７２１は、読み込まれたスキャン画像データのアップロード先を設定する画面に移行するためのボタンである。また、ボタン７０２はファイル名のフォーマット等を設定するためのボタンである。なお、上述した各種ボタンの種類、各文字列領域の表示や選択の態様は一例にすぎず、これに限定されない。例えば、ファイル名入力欄７０１に表示された文字列を修正・変更したり、ファイル名を確定したりするためのボタンがあってもよい。
【００２７】
ステップ５０７では、プレビュー表示部４２６により、読み込まれたスキャン画像に対するファイル名の生成がなされる。図８は、ファイル名生成後のプレビュー画面７００の状態を示している。この例では、「見」、「積」、「書」、「東京株式会社」、「2017年04月14日」に対応する文字列領域が順次選択されたことで、「見積書_東京株式会社_2017年04月14日」の文字列が、ファイル名入力欄７０１に表示・設定されている。また、プレビュー領域７１０では、ユーザがタッチ操作した文字列領域の囲みが、ファイル名の一部として選択されたことを示すため太枠に変わっている。このファイル名生成処理の詳細については後述する。所望するファイル名が生成されてユーザが［次へ］ボタン７２１を押下すると、ステップ５０８へ進む。
【００２８】
ステップ５０８では、プレビュー表示部４２６により、ステップ５０２と同様、ユーザによるボタン操作の内容によって処理の切り分けがなされる。［次へ］ボタン７２１の押下が検出された場合は、ファイル名入力欄７０１に表示中のファイル名（ファイル名として設定された文字列）の情報がアップロード指示部４２７へ送られ、ステップ５０９へ進む。一方、［戻る］ボタン７２０の押下が検出された場合は、ステップ５０１（スキャン設定画面の表示）へ戻る。
【００２９】
ステップ５０９では、アップロード指示部４２７により、スキャン画像データの転送先を設定するためのＵＩ画面（以下、「アップロード設定画面」と呼ぶ。）が、操作部２２０のタッチパネルに表示される。ユーザは、このアップロード設定画面を介して、ファイルサーバ１２０へのアップロードに関する詳細設定を行う。図９は、アップロード設定画面の一例を示す図である。ユーザは、［フォルダパス］入力欄９０１に、ファイルサーバ１２０へ外部転送する際のフォルダパスの名称（パス名）を入力する。図９の例では、“2017_04_04”がパス名として入力されている。入力方法としては、例えばフォルダパス入力欄９０１へのタップ操作に応じてキーボード画面のサブウインドウ（不図示）を表示し、ユーザに、当該キーボード画面を介してパス名を入力させる方法がある。あるいは、ＨＤＤ２１４内に保持するアドレス帳の中から選択して設定できるようにしてもよい。［戻る］ボタン９２０は、アップロードに関する詳細設定を中止する場合に用いるボタンである。［アップロード］ボタン９２１は、［フォルダパス］入力欄９０１で設定したフォルダパスへのアップロードを指示するためのボタンである。
【００３０】
ステップ５１０では、アップロード指示部４２７により、ステップ５０８と同様、ユーザによるボタン操作の内容によって処理の切り分けがなされる。［アップロード］ボタン９２１の押下が検出された場合は、ステップ５１１へ進む。その際、フォルダパス入力欄９０１に入力されたパス名、ステップ５０７で生成されたファイル名、ファイルサーバ設定の各情報が、アプリケーション転送部４２４へ渡される。ここで、ファイルサーバ設定は、ファイルサーバ１２０にスキャン画像データを格納するために必要な情報であり、具体的には、ホスト名、フォルダパスの起点、ログイン用のユーザ名とパスワードといった情報を含む。一方、［戻る］ボタン９２０の押下が検出された場合は、ステップ５０６（プレビュー画面の表示）へ戻る。
【００３１】
ステップ５１１では、アプリケーション転送部４２４により、スキャン画像データの格納先パスが、アップロード指示部４２７から受け取った情報に基づき生成される。具体的には、ファイルサーバ設定（ファイルサーバ１２０のホスト名、フォルダパスの起点）にフォルダパスを加えて生成される。これにより、例えば“\\server01\Share\2017_04_04”といった格納先パスが生成される。そして、ステップ５１２では、アプリケーション転送部４２４により、ファイルサーバ１２０に対するアクセスが実行される。この際、ファイルサーバ設定に含まれるユーザ名とパスワードをファイルサーバ１２０に送信する。ユーザ名とパスワードを受け取ったファイルサーバ１２０では、認証処理が実行される。
【００３２】
ステップ５１３では、アプリケーション転送部４２４により、ファイルサーバ１２０での認証結果に従って処理の切り分けがなされる。すなわち、ファイルサーバ１２０から認証成功の通知を受信した場合は、ステップ５１４に進む。一方、認証失敗の通知を受信した場合は、本処理を終了する。
【００３３】
ステップ５１４では、アプリケーション転送部４２４により、ステップ５１１で生成された格納先パスが示すフォルダにスキャン画像データが外部転送され、ファイルサーバ１２０内に格納される。
【００３４】
以上が、本実施例に係るスキャン画像の生成からアップロードまでの動作制御の内容である。なお、本実施例では、ステップ５０５〜５０７の処理を、スキャンによって生成された１ページ分の画像データに対して行うことを想定している。例えば、プレビュー画面７００内に次のページの画像解析を行うためのボタンを設け、その解析によって得られた次ページのプレビュー表示を行って、次ページ以降の文字列領域からファイル名を構成する文字列を設定できるようにしてもよい。
【００３５】
＜ファイル名の生成＞
図１０は、プレビュー表示部４２６におけるファイル名生成処理（ステップ５０７）の詳細を示すフローチャートである。以下、図１０のフローに沿って説明する。
【００３６】
ステップ１００１では、タッチパネル上に表示されたプレビュー画面７００へのユーザによるタッチ操作の有無が監視される。タッチ操作が検出されるとステップ１００２へ進む。続くステップ１００２では、タッチ操作の内容によって処理の切り分けがなされる。タッチ操作の内容が、［次へ］ボタン７２１または［戻る］ボタン７２０の押下であった場合は、本処理を終了する。［次へ］ボタン７２１または［戻る］ボタン７２０の押下ではなかった場合は、ステップ１００３へ進む。
【００３７】
ステップ１００３では、タッチ操作がなされたタッチパネル上の位置座標（x,y）が取得される。続くステップ１００４では、タッチ操作された位置座標が、いずれかの文字列領域と重なるかどうかが判定される。例えば、タッチ操作された位置座標が、プレビュー領域７１０に表示された各文字例領域の内側（文字列領域の四隅を表す位置座標で特定される矩形の内側）に含まれるかどうかで判定する。タッチ操作された位置座標がいずれかの文字列領域と重なっている場合は、ステップ１００５へ進む。一方、重なっていない場合は、ステップ１００１に戻る。
【００３８】
ステップ１００５では、タッチ操作された位置座標と重なっている文字列領域の文字列が取得される。文字列の取得は、タッチ操作によって選択された文字列領域（以下、「選択文字列領域」と呼ぶ。）に対するＯＣＲ処理を画像解析部４２５で実行して、文字列を抽出することで取得される。そして、ステップ１００６では、ファイル名入力欄７０１に現在表示中のファイル名が取得される。続くステップ１００７では、取得したファイル名の中身が“空”であるか判定する。ここで、ファイル名が“空”とは、ファイル名表示領域７１０内に何らの文字列も表示されていない空欄状態を意味する。取得したファイル名が“空”であった場合は、ステップ１０１０に進む。一方、“空”でなかった場合は、ステップ１００８に進む。
【００３９】
ステップ１００８では、現在の選択文字列領域と、１つ前の選択文字列領域との位置関係に基づいて、双方の文字列領域が特定の方向に連続しているかどうかが判定される。横書きの一般的な言語（例えば日本語や英語）の場合は左から右へ文字が続くので、右方向に連続しているかどうか（現在の選択文字列領域が１つ前の選択文字列領域の右隣りにあるかどうか）がチェックされる。もちろん、文書のフォーマットや使用する言語によって、縦方向（下方向）や左方向への連続性がチェックされることはいうまでもない。具体的には、以下の２つの条件を用いて、文字列領域同士が特定の方向に連続しているかどうかをチェックする。  
・双方の文字列領域における基準となる位置（ここでは左上隅のＹ座標）が同じ
・双方の文字列領域が隣り合っている（別の文字列領域が間に存在しない）
なお、基準となる位置の比較においては、スキャン画像の傾き等を考慮し、数ピクセル程度の誤差があっても同じと判定する。また、文字列領域の特定の座標を比較するのに代えて、文字列領域の特定の辺（例えば下辺）の位置を基準として判定に用いてもよい。また、隣り合う文字列領域同士の間の距離を所定の閾値と比較する閾値処理を追加的に行って、当該距離が閾値内の場合にのみ、双方の文字列領域が隣り合うと判定するようにしてもよい。所定の閾値は任意であるが、例えば文字列領域の高さの３倍未満、望ましくは２倍程度である。判定の結果、現在の選択文字列領域が１つ前の選択文字列領域の右隣りにある場合は、ステップ１０１０に進む。一方、右隣りにない場合は、１００９に進む。なお、横書きではなく縦書きの場合は、現在の選択文字列領域が、１つ前の選択文字列領域の下隣りにあるかどうかを、上述の条件に準じてチェックすればよい。
【００４０】
ステップ１００９では、ステップ１００６で取得したファイル名の末尾に、所定の区切り文字を追加する処理がなされる。所定の区切り文字として、ここでは、アンダーバーを例に説明するが、これに限定されるものではない。例えばハイフンなどアンダーバー以外の記号・文字でも構わないし、さらにはスペースのような実体を伴わないものでも構わない。
【００４１】
ステップ１０１０では、ステップ１００５で取得した文字列（選択文字列領域から抽出した文字列）が、ファイル名の構成要素として設定される。この際、既に設定された文字列が存在している場合は、その末尾に追加される。そして、ステップ１０１１では、現時点で設定されている文字列が、ファイル名入力欄７０１に表示（自動入力）される。
【００４２】
以上が、ファイル名生成処理の内容である。このような処理によって、ユーザに選択された複数の文字列領域同士が連続していない場合にのみ、各文字列領域の文字認識結果の間に区切り文字を挿入して、スキャン画像のファイル名が生成される。
【００４３】
ここで、図８で示す「見積書＿東京株式会社＿2017年04月14日」のファイル名が生成されるまでの過程を、前述の表１を参照して説明する。まず、表１における１〜１１の通し番号は、それぞれ以下に示すように各文字列領域と対応付けられている。  
１：「見」
２：「積」
３：「書」
４：「東京株式会社」
５：「御中」
６：「見積もり番号」
７：「R-1234」
８：「納品希望日」
９：「2017年04月14日」
１０：「横浜株式会社」
１１：「横浜市1000-1」
【００４４】
最初に、「見」の文字列領域へのタッチ操作を検知すると、その座標と「見」の文字が取得される（ステップ１００１〜１００６）。そして、この段階ではファイル名入力欄７０１は何らの文字列も表示されておらず“空”の状態なので（ステップ１００７でＹｅｓ）、ファイル名入力欄７０１に「見」が表示される（ステップ１０１１）。また、プレビュー領域７１０では、ユーザのタッチ操作によってファイル名の一部として選択されたことを示すため、「見」の文字列領域の囲みが太枠に変わる。
【００４５】
次に、「積」の文字列領域へのタッチ操作を検知すると、その座標と「積」の文字が取得される（ステップ１００１〜１００６）。そして、この段階ではファイル名入力欄７０１には「見」の文字が表示されており“空”ではない（ステップ１００７でＮｏ）。よって、現在選択中の「積」の文字列領域と、その一つ前の選択に係る「見」の文字列領域とが隣り合うかどうかが、前述の２つの条件に従って判定される（ステップ１００８）。まず、双方の文字列領域のＹ座標はどちらも“５”である（表１を参照）。よって、１つ目の条件は満たしている。次に、２つ目の条件を、当該Ｙ座標上にあるすべての文字列領域をＸ座標の順番でソートし、一つ前の選択文字列領域と現在の選択文字列領域とがソート後の順番で隣り合うかどうかでチェックする。いま、「見」の文字列領域のＹ座標上には、「積」の文字列領域と「書」の文字列領域が存在する。これら３つの文字列領域をＸ座標で昇順にソートすると、「見」「積」「書」の順で横並びになっており、一つ前の選択文字列領域と現在の選択文字列領域は隣り合っている（ステップ１００８でＹｅｓ）。よって、ファイル名入力欄７０１において、「見」の文字に続けて「積」の文字が追加される（ステップ１０１０）。この時点で、ファイル名は「見積」となる。そして、文字列領域へのタッチ操作に応答して、同様の処理がなされ、ファイル名入力欄７０１において「積」の文字に続けて「書」の文字が追加される（ステップ１０１０）。この時点でファイル名は「見積書」となる。また、プレビュー領域７１０では、「見」の文字列領域と同様、「積」と「書」の文字列領域の囲みが太枠に変わる。
【００４６】
次に、「東京株式会社」の文字列領域へのタッチ操作を検知すると、その座標と「東京株式会社」の文字が取得される（ステップ１００１〜１００６）。この場合、現在選択中の「東京株式会社」の文字列領域と、その一つ前の選択に係る「書」の文字列領域とは隣り合わない（ステップ１００８でＮｏ）。よって、ファイル名入力欄７０１において、「見積書」の文字に続けて区切り文字であるアンダーバー“＿”が追加設定される（ステップ１００９）。この時点でファイル名は「見積書＿」となる。その後、さらに「東京株式会社」の文字が追加され（ステップ１０１０）、ファイル名は「見積書＿東京株式会社」となる。そして、ユーザによる「2017年04月14日」の文字列領域へのタッチ操作を検知すると、その座標と「2017年04月14日」の文字が取得される（ステップ１００１〜１００６）。現在選択中の「2017年04月14日」の文字列領域と、その一つ前の選択に係る「東京株式会社」の文字列領域とは隣り合っていない（ステップ１００８でＮｏ）。よって、ファイル名入力欄７０１において、「東京株式会社」の文字に続けて区切り文字であるアンダーバー“＿”が追加設定される（ステップ１００９）。この時点でファイル名は「見積書＿東京株式会社−」となる。その後、さらに「2017年04月14日」の文字が追加され（ステップ１０１０）、最終的に「見積書＿東京株式会社＿2017年04月14日」のファイル名が得られる。また、プレビュー領域７１０では、「見」「積」「書」の各文字列領域と同様、「東京株式会社」と「2017年04月14日」の文字列領域の囲みも太枠に変わる。
【００４７】
以上が、ファイル名生成処理の内容である。本実施例では、スキャン画像内の文字列領域の文字認識結果を用いてファイル名を設定する場面を例に説明したが、本発明の適用範囲はファイル名を設定する場面に限定されるものではない。例えば、スキャン画像のアップロード先といったデータの転送先設定や、ＦＡＸ送信やメール送信の宛先設定に適用してもよい。この場合、例えば、前述の図９のアップロード設定画面９００において、スキャン画像内の文字列領域の文字認識結果をフォルダパスの候補として選択可能に表示し、ユーザ選択に応じてパス名を設定できるようにする。また、不図示の宛先設定画面において、スキャン画像内の文字列領域の文字認識結果をＦＡＸ番号やメールアドレスの候補として選択可能に表示し、ユーザ選択に応じてＦＡＸ番号やメールアドレスを設定できるようにする。このように、ファイル名設定以外の場面、例えばデータの転送先等の設定など、スキャン画像に関連する様々な情報（付帯情報）の設定を行う場面において、本発明は幅広く適用可能である。
【００４８】
以上のとおり本実施例によれば、ユーザはスキャン画像内の文字列領域を順に選択することで、適切な位置に区切り文字が挿入されたファイル名等を簡単に設定することができる。
【実施例２】
【００４９】
次に、ファイル名等に付けたい単語の構成文字が複数の文字列領域に分離している場合に、そのすべての文字列領域をユーザがいちいち選択しなくても、１つのまとまりのある文字列として自動選択する態様を実施例２として説明する。なお、ＭＦＰ１１０におけるスキャン動作の制御の流れなど実施例１と共通する内容については説明を省略することとし、以下では本実施例の特徴であるファイル名生成処理を中心に説明するものとする。
【００５０】
図１１は、本実施例に係る、プレビュー表示部４２６による、ファイル名生成処理の詳細を示すフローチャートである。ステップ１１０１〜ステップ１１０９の各処理は、実施例１の図１０のフローのステップ１００１〜ステップ１００９と同じである。図１０のフローと異なるのは、ファイル名が“空”と判定（ステップ１１０７でＹｅｓ）された後、及び、区切り文字が追加（ステップ１１０９）された後の処理である。すなわち、ステップ１１１０では、プレビュー表示部４２６によって、現に選択中の文字列領域に連続していると判定された文字列領域の文字列を、ファイル名を構成する文字列として自動で選択する処理を行う。図１２は、連続している文字列領域の文字列を自動選択する処理の詳細を示すフローチャートである。以下、図１２のフローに沿って説明する。
【００５１】
ステップ１２０１では、現在の選択文字列領域から抽出された文字列が、専用バッファ（以下、「選択文字列バッファ」と呼ぶ。）に保存される。続くステップ１２０２では、予め用意された辞書データを参照して、選択文字列バッファ内に保存されている文字列と前方一致する単語が、辞書データ内に存在するかどうかが判定される。この場合において、辞書データは、例えばアディショナル機能モジュール４２０内に予め保持されているものとする。辞書データは、一般的な単語からなる用語集やユーザが事前に任意の単語を登録して生成された独自の用語集、或いはユーザがファイル名として用いた文字列を蓄積した履歴情報などで構成される。表２に、辞書データの一例を示す。
【００５２】
【表２】
2019041150.tif 000004
【００５３】
いま、前述の図７（ｂ）のプレビュー画面７００において、「見」の文字列領域が選択されていたとする。この場合、「見」の文字列領域から抽出された文字列である「見」と、表２に示す辞書データ内の各単語とが比較され、前方一致する単語があるかどうかが判定される。この例では、番号２の「見積書」が前方一致すると判定されることになる。このように辞書データ内に前方一致する単語が存在した場合は、ステップ１２０３に進む。一方、前方一致する単語が存在しなかった場合は、本処理を抜けて、図１１のフローのステップ１１１１へ進む。
【００５４】
ステップ１２０３では、現に選択中の文字列領域に連続している文字列領域が存在するかどうかが判定される。本実施例では、右隣りに連続している文字列領域があるかどうかが、図１０のフローのステップ１００８の処理と同様の手法で判定することになる。連続している文字列領域が存在する場合は、ステップ１２０４に進む。一方、連続している文字列領域が存在しない場合は、本処理を抜けて、図１１のフローのステップ１１１１へ進む。
【００５５】
ステップ１２０４では、連続していると判定された文字列領域に対してＯＣＲ処理を行ない、ＯＣＲ処理によって取得された文字列が上述の選択文字列バッファに追加保存される。これにより、現に選択中の文字列領域に連続している文字列領域の文字列が、現に選択中の文字列領域の文字列に続けて、選択文字列バッファ内に保存される。その後、ステップ１２０２に戻って、追加保存された文字列を含む選択文字列バッファ内の文字列と前方一致する単語が辞書データ内に存在するかどうかが判定される。そして、連続している文字列が存在しなくなった段階で、本処理を抜ける。こうして、現に選択中の文字列領域に連続するすべての文字列領域から抽出された文字列が、選択文字列バッファ内に順次保存されることになる。
【００５６】
以上が、文字列の自動選択処理の内容である。これにより、例えば、「見」の文字列領域が選択された場合には、その右隣りに連続して存在する「積」と「書」の文字列領域も自動的に選択される。つまり、ユーザは、「積」の文字列領域と「書」の文字列領域をタッチ操作して選択する手間を省くことができる。図１１のフローの説明に戻る。
【００５７】
ステップ１１１１では、選択文字列バッファ内に保存されている全ての文字列が、ファイル名の構成要素として設定される。この際、設定済みの文字列がファイル名入力欄７０１に存在している場合は、その末尾に追加設定される。そして、ステップ１１１２では、ステップ１１１１における追加設定後の文字列が、ファイル名入力欄７０１に表示される。
【００５８】
以上が、本実施例に係る、ファイル名生成処理の内容である。
【００５９】
＜変形例＞
上述のようにして得られたファイル名が、ユーザの意に反して区切り文字を含んでいないというケースも考えられる。そこで、ユーザが区切り文字を手動で挿入してファイル名を修正できるようにしてもよい。この場合、例えば、文字列領域同士が連続しているとの判定結果に基づいて区切り文字を挿入しなかった文字列領域間に、区切り文字を挿入するためのボタンを表示する。前述の図７（ｂ）の例では、プレビュー表示領域７１０内の、「見」文字列領域と「積」の文字列領域との間、及び、「積」の文字列領域と「書」の文字列領域との間にこのボタンを表示する。そして、ユーザが当該ボタンを押下すると、ファイル名を構成する文字列中の対応する位置に区切り文字が挿入されるようにする。この際、当該ボタンを押下する度に、区切り文字の種類（例えば、ハイフン、アンダーバー、スペース、区切り文字なしの４種類）が切り替わるようにしてもよい。また、プレビュー表示領域７１０内にボタンを設ける代わりに、ファイル名入力欄７０１に表示中の文字列に対し、区切り文字の挿入候補の位置を指し示す吹き出し表示を行ってもよい。なお、本変形例は、実施例１にも適用可能である。
【００６０】
本実施例によれば、ファイル名等に付けたい単語の構成文字が複数の文字列領域に分離されている場合において、その全ての文字列領域をユーザが選択しなくても、１つのまとまりのある文字列として自動的に選択され得る。これにより、ユーザはより効率的に、スキャン画像に対するファイル名等の設定を行うことができる。
【００６１】
（その他の実施例）  
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１】
2019041150.tif 000005
【図２】
2019041150.tif 000006
【図３】
2019041150.tif 000007
【図４】
2019041150.tif 000008
【図５】
2019041150.tif 000009
【図６】
2019041150.tif 000010
【図７】
2019041150.tif 000011
【図８】
2019041150.tif 000012
【図９】
2019041150.tif 000013
【図１０】
2019041150.tif 000014
【図１１】
2019041150.tif 000015
【図１２】
2019041150.tif 000016