(57)【要約】【課題】ユーザがスキャン画像内の文字領域をタッチ操作しやすいプレビュー状態に容易に移行できるようにする。【解決手段】スキャン画像のプレビュー表示時の初期表示における状態の情報を保存してお、当該初期表示の状態に戻すためのボタンをＵＩ画面上に設ける。【選択図】図１９
2020177523.tif 000002
【特許請求の範囲】
【請求項１】
文書をスキャンして得られたスキャン画像から文字領域を検出する検出手段と、
前記スキャン画像に対しプロパティを設定するためのＵＩ画面を表示する表示制御手段と、
を備え、
前記ＵＩ画面には、前記スキャン画像を表示するためのプレビュー領域が存在し、
前記表示制御手段は、
前記検出手段によって検出された文字領域に基づいて、所定の変倍率を決定し、
決定した前記所定の変倍率を記憶し、
前記所定の変倍率に基づき拡縮したスキャン画像を用いて前記プレビュー領域に初期表示を行ない、
前記プレビュー領域が前記初期表示の状態から変わった後に、前記ＵＩ画面に存在する所定のボタンの操作が検知されたことに応じて、前記記憶した変倍率に基づき、前記プレビュー領域を前記初期表示の状態に戻す、
ことを特徴とする画像処理装置。
【請求項２】
前記表示制御手段は、
前記検出手段によって検出されたすべての文字領域のうち前記スキャン画像における最も左にある文字領域と最も右にある文字領域を特定し、
前記特定された最も左にある文字領域と最も右にある文字領域とに基づいて、前記所定の変倍率を決定する、
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記表示制御手段は、
前記特定された最も左にある文字領域の左辺が前記プレビュー領域の左辺と、前記特定された最も右にある文字領域の右辺が前記プレビュー領域の右辺と略一致するよう前記所定の変倍率を決定し、
前記所定の変倍率による拡縮後のスキャン画像における最も左の文字領域の左辺と前記プレビュー領域の左辺とが一致するように前記初期表示を行ない、
前記プレビュー領域が前記初期表示の状態から変化した後に、前記所定のボタンの操作が検知されたことに応じて、前記プレビュー領域を前記初期表示の状態に戻す、
ことを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記表示制御手段は、さらに、
前記所定の変倍率による拡縮後のスキャン画像における最も上にある文字領域が、前記プレビュー領域の上端付近に位置するように前記初期表示を行い、
前記ボタンの操作が検知されたことに応じて、前記プレビュー領域を前記初期表示の状態に戻す、
ことを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記プロパティは、スキャン画像をファイル化する際のファイル名であることを特徴とする請求項１乃至４のいずれか１項に記載の画像処理装置。
【請求項６】
文書をスキャンして得られたスキャン画像に対しプロパティを設定するための画像処理装置の制御方法であって、
文書をスキャンして得られたスキャン画像から文字領域を検出する検出ステップと、
前記スキャン画像に対しプロパティを設定するためのＵＩ画面を表示する表示制御ステップと、
を有し、
前記ＵＩ画面には、前記スキャン画像を表示するためのプレビュー領域が存在し、
前記表示制御ステップでは、
前記検出ステップによって検出された文字領域に基づいて、所定の変倍率を決定し、
決定した前記所定の変倍率を記憶し、
前記所定の変倍率に基づき拡縮したスキャン画像を用いて前記プレビュー領域に初期表示を行ない、
前記プレビュー領域が前記初期表示の状態から変わった後に、前記ＵＩ画面に存在する所定のボタンの操作が検知されたことに応じて、前記記憶した変倍率に基づき、前記プレビュー領域を前記初期表示の状態に戻す、
ことを特徴とする制御方法。
【請求項７】
コンピュータを、請求項１乃至５のいずれか１項に記載の画像処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スキャン画像のプレビュー表示のための画像処理技術に関する。
【背景技術】
【０００２】
従来より、文書の管理手法として、文書をスキャナで読み取って得られたスキャン画像を所定フォーマットのファイルに変換し、ネットワーク上のストレージサーバに送信して保存する手法が広く利用されている。そして、ファイル送信を行う前にスキャン画像のプレビュー表示を行うことで、ユーザは、スキャンされた状態を事前に確認することができる。特許文献１には、拡大・縮小ボタンによってプレビュー表示時の拡大率或いは縮小率を変更する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−２３２８５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
スキャン画像に対してファイル名等を簡単に設定する手法として、プレビュー表示されているスキャン画像上の文字領域をユーザがタッチすることで選択させる手法がある。一般的に、ＭＦＰなどのＯＡ機器が備える操作用タッチパネルのサイズは小型のものが多いところ、上記手法を採用してファイル名等の設定を行う場合には、ユーザが文字領域を選択しやすいようスキャン画像を拡縮してプレビュー表示する必要がある。この点、ユーザがボタン操作を行ってプレビュー表示部分の拡大・縮小を行う上記特許文献１の技術では、ユーザが望むプレビュー状態にするのに手間が掛かっていた。
【０００５】
本発明は、上記課題に対応するべくなされたものである。すなわち、ユーザがスキャン画像内の文字領域をタッチ操作しやすいプレビュー状態に容易に移行できるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
本開示に係る画像処理装置は、文書をスキャンして得られたスキャン画像から文字領域を検出する検出手段と、前記スキャン画像に対しプロパティを設定するためのＵＩ画面を表示する表示制御手段と、を備え、前記ＵＩ画面には、前記スキャン画像を表示するためのプレビュー領域が存在し、前記表示制御手段は、前記検出手段によって検出された文字領域に基づいて、所定の変倍率を決定し、決定した前記所定の変倍率を記憶し、前記所定の変倍率に基づき拡縮したスキャン画像を用いて前記プレビュー領域に初期表示を行ない、前記プレビュー領域が前記初期表示の状態から変わった後に、前記ＵＩ画面に存在する所定のボタンの操作が検知されたことに応じて、前記記憶した変倍率に基づき、前記プレビュー領域を前記初期表示の状態に戻す、ことを特徴とする。
【発明の効果】
【０００７】
本開示の技術によれば、ユーザがスキャン画像内の文字領域をタッチ操作しやすいプレビュー状態に容易に移行できる。これにより、ユーザの手間を省くことができる。
【図面の簡単な説明】
【０００８】
【図１】画像処理システムの全体構成を示す図
【図２】ＭＦＰのハードウェア構成を示すブロック図
【図３】ＭＦＰ連携サーバ及びストレージサーバのハードウェア構成を示すブロック図
【図４】画像処理システムのソフトウェア構成を示すブロック図
【図５】画像処理システム全体の処理の流れを示すシーケンス図
【図６】メイン画面の一例を示す図
【図７】ログイン画面の一例を示す図
【図８】スキャン設定画面の一例を示す図
【図９】（ａ）はリクエストＩＤの一例を示す図、（ｂ）及び（ｃ）は処理状況の問合せに対するレスポンスの一例を示す図
【図１０】ファイル名設定画面の一例を示す図
【図１１】学習リクエストの一例を示す図
【図１２】ＭＦＰにおける処理の流れを示すフローチャート
【図１３】スキャン画像の一例を示す図
【図１４】ファイル名条件設定画面の一例を示す図
【図１５】文字認識結果の一例を示す図
【図１６】類似帳票判定結果の一例を示す図
【図１７】スキャン画像の一例を示す図
【図１８】ＭＦＰでのファイル名設定処理の流れを示すフローチャート
【図１９】ＭＦＰでのファイル名設定処理の流れを示すフローチャート
【図２０】プレビュー領域の初期表示部分を示す図
【図２１】ファイル名設定画面の一例を示す図
【図２２】ソフトキーボードの一例を示す図
【図２３】操作ガイダンスが表示されたファイル名設定画面の一例を示す図
【図２４】文字領域に対してタッチ操作がなされたときのファイル名設定画面の一例を示す図
【図２５】初期変倍率を調整した場合の、プレビュー領域の初期表示部分を示す図
【発明を実施するための形態】
【０００９】
以下、本発明を実施するための形態について図面を用いて説明する。なお、以下の実施の形態は特許請求の範囲に係る発明を限定するものでなく、また実施の形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
【００１０】
［実施形態１］
＜システム構成＞
図１は、本実施形態に係る、画像処理システムの全体構成を示す図である。画像処理システムは、ＭＦＰ（Multifunction Peripheral）１１０と、インターネット上でクラウドサービスを提供するサーバ装置１２０及び１３０とを含む。ＭＦＰ１１０は、インターネットを介してサーバ装置１２０及び１３０と通信可能に接続されている。
【００１１】
ＭＦＰ１１０は、スキャン機能を有する情報処理装置の一例である。ＭＦＰ１１０は、スキャン機能に加え印刷機能やＢＯＸ保存機能といった複数の機能を有する複合機である。サーバ装置１２０及び１３０は、共にクラウドサービスを提供する情報処理装置の一例である。本実施形態のサーバ装置１２０は、ＭＦＰ１１０から受け取ったスキャン画像に対し画像解析を行ったり、別のサービスを提供するサーバ装置１３０に対しＭＦＰ１１０からのリクエストを転送したりするクラウドサービスを提供する。以下、サーバ装置１２０が提供するクラウドサービスを「ＭＦＰ連携サービス」と呼ぶこととする。サーバ装置１３０は、インターネットを介して送られてきたファイルを保存したり、モバイル端末（不図示）などのウェブブラウザからの要求に応じて保存ファイルを提供したりするクラウドサービス（以下、「ストレージサービス」と呼ぶ）を提供する。本実施形態では、ＭＦＰ連携サービスを提供するサーバ装置１２０を「ＭＦＰ連携サーバ」と呼び、ストレージサービスを提供するサーバ装置１３０を「ストレージサーバ」と呼ぶこととする。
【００１２】
図１に示す画像処理システム１００の構成は一例であって、これに限定されない。例えば、ＭＦＰ連携サーバ１２０の機能をＭＦＰ１１０が兼ね備えていてもよい。また、ＭＦＰ連携サーバ１２０はインターネット上ではなくＬＡＮ（Local Area Network）経由でＭＦＰ１１０と接続されていてもよい。また、ストレージサーバ１３０を、メール配信サービスを行うメールサーバに置き換えて、文書のスキャン画像をメールに添付し送信する場面に適用してもよい。
【００１３】
＜ＭＦＰのハードウェア構成＞
図２は、ＭＦＰ１１０のハードウェア構成を示すブロック図である。ＭＦＰ１１０は、制御部２１０、操作部２２０、プリンタ部２２１、スキャナ部２２２、モデム２２３で構成される。制御部２１０は、以下の各部２１１〜２１９で構成され、ＭＦＰ１１０全体の動作を制御する。ＣＰＵ２１１は、ＲＯＭ２１２に記憶された様々な制御プログラム（後述のソフトウェア構成図で示す各種機能に対応するプログラム）を読み出して実行する。ＲＡＭ２１３は、ＣＰＵ２１１の主メモリ、ワークエリア等の一時記憶領域として用いられる。なお、本実施例では１つのＣＰＵ２１１が１つのメモリ（ＲＡＭ２１３またはＨＤＤ２１４）を用いて後述のフローチャートに示す各処理を実行するものとするが、これに限定されない。例えば、複数のＣＰＵや複数のＲＡＭまたはＨＤＤを協働させて各処理を実行してもよい。ＨＤＤ２１４は、画像データや各種プログラムを記憶する大容量記憶部である。操作部Ｉ／Ｆ２１５は、操作部２２０と制御部２１０とを接続するインタフェースである。操作部２２０には、タッチパネルやキーボードなどが備えられており、ユーザによる操作／入力／指示を受け付ける。なお、タッチパネルへのタッチ操作には、人の指による操作やタッチペンによる操作が含まれる。プリンタＩ／Ｆ２１６は、プリンタ部２２１と制御部２１０とを接続するインタフェースである。印刷用の画像データはプリンタＩ／Ｆ２１６を介して制御部２１０からプリンタ部２２１へ転送され、紙等の記録媒体上に印刷される。スキャナＩ／Ｆ２１７は、スキャナ部２２２と制御部２１０とを接続するインタフェースである。スキャナ部２２２は、不図示の原稿台やＡＤＦ（Auto Document Feeder）にセットされた原稿を光学的に読み取ってスキャン画像データを生成し、スキャナＩ／Ｆ２１７を介して制御部２１０に入力する。スキャナ部２２２で生成されたスキャン画像データは、プリンタ部２２１にて印刷したり（コピー出力）、ＨＤＤ２１４に保存したり、ＬＡＮを介してＭＦＰ連携サーバ１２０等の外部装置にファイル送信したりすることができる。モデムＩ／Ｆ２１８は、モデム２２３と制御部２１０とを接続するインタフェースである。モデム２２３は、ＰＳＴＮ上のファクシミリ装置（不図示）との間で画像データをファクシミリ通信する。ネットワークＩ／Ｆ２１９は、制御部２１０（ＭＦＰ１１０）をＬＡＮに接続するインタフェースである。ＭＦＰ１１０は、ネットワークＩ／Ｆ２１９を用いて、スキャン画像データをＭＦＰ連携サーバ１２０に送信したり、ＭＦＰ連携サーバ１２０から各種データを受信したりする。以上説明したＭＦＰ１１０のハードウェア構成は一例であり、必要に応じてその他の構成を備えるものであってもよいし、一部の構成を有していなくてもよい。
【００１４】
＜サーバ装置のハードウェア構成＞
図３は、ＭＦＰ連携サーバ１２０／ストレージサーバ１３０のハードウェア構成を示すブロック図である。ＭＦＰ連携サーバ１２０とストレージサーバ１３０は共通のハードウェア構成を有し、ＣＰＵ３１１、ＲＯＭ３１２、ＲＡＭ３１３、ＨＤＤ３１４及びネットワークＩ／Ｆ３１５で構成される。ＣＰＵ３１１は、ＲＯＭ３１２に記憶された制御プログラムを読み出して各種処理を実行することで、全体の動作を制御する。ＲＡＭ３１３は、ＣＰＵ３１１の主メモリ、ワークエリア等の一時記憶領域として用いられる。ＨＤＤ３１４は、画像データや各種プログラムを記憶する大容量記憶部である。ネットワークＩ／Ｆ３１５は、制御部３１０をインターネットに接続するインタフェースである。ＭＦＰ連携サーバ１２０及びストレージサーバ１３０は、ネットワークＩ／Ｆ３１５を介して他の装置（ＭＦＰ１１０など）から様々な処理のリクエストを受け、当該リクエストに応じた処理結果を返す。
【００１５】
＜画像処理システムのソフトウェア構成＞
図４は、本実施形態に係る、画像処理システム１００のソフトウェア構成を示すブロック図である。以下、画像処理システム１００を構成するＭＦＰ１１０及び、ＭＦＰ連携サーバ１２０及びストレージサーバ１３０それぞれの役割に対応したソフトウェア構成を、順に説明する。なお、以下では、各装置が有する諸機能のうち、文書をスキャンしてファイル化し、ストレージサーバ１３０に保存を行うまでの処理に関わる機能に絞って説明を行うものとする。
【００１６】
≪ＭＦＰのソフトウェア構成≫
ＭＦＰ１１０の機能モジュールは、ネイティブ機能モジュール４１０とアディショナル機能モジュール４２０の２つに大別される。ネイティブ機能モジュール４１０はＭＦＰ１１０に標準的に備えられたアプリケーションであるのに対し、アディショナル機能モジュール４２０はＭＦＰ１１０に追加的にインストールされたアプリケーションである。アディショナル機能モジュール４２０は、Ｊａｖａ（登録商標）をベースとしたアプリケーションであり、ＭＦＰ１１０への機能追加を容易に実現できる。なお、ＭＦＰ１１０には図示しない他の追加アプリケーションがインストールされていてもよい。
【００１７】
ネイティブ機能モジュール４１０は、スキャン実行部４１１およびスキャン画像管理部４１２を有する。また、アディショナル機能モジュール４２０は、表示制御部４２１、スキャン制御部４２２、連携サービスリクエスト部４２３、画像処理部４２４を有する。
【００１８】
表示制御部４２１は、操作部２２０のタッチパネルに、各種のユーザ操作を受け付けるためのユーザインタフェース画面（ＵＩ画面）を表示する。各種のユーザ操作には、例えば、ＭＦＰ連携サーバ１２０へアクセスするためのログイン認証情報の入力、スキャン設定、スキャンの開始指示、ファイル名設定、ファイルの保存指示などがある。
【００１９】
スキャン制御部４２２は、ＵＩ画面でなされたユーザ操作（例えば「スキャン開始」ボタンの押下）に応じて、スキャン設定の情報と共にスキャン実行部４１１に対しスキャン処理の実行を指示する。スキャン実行部４１１は、スキャン制御部４２２からのスキャン処理の実行指示に従い、スキャナＩ／Ｆ２１７を介してスキャナ部２４０に文書の読み取り動作を実行させ、スキャン画像データを生成する。生成したスキャン画像データは、スキャン画像管理部４１２によってＨＤＤ２１４に保存される。この際、保存されたスキャン画像データを一意に示すスキャン画像識別子の情報が、スキャン制御部４２２へ通知される。スキャン画像識別子は、ＭＦＰ１１０においてスキャンした画像をユニークに識別するための番号や記号、アルファベットなどである。スキャン制御部４２２は、例えばファイル化する対象のスキャン画像データを上記のスキャン画像識別子を使ってスキャン画像管理部４１２から取得する。そして、ファイル化のために必要な処理のリクエストをＭＦＰ連携サーバ１２０に対して行うよう、連携サービスリクエスト部４２３に対して指示する。
【００２０】
連携サービスリクエスト部４２３は、ＭＦＰ連携サーバ１２０に対して各種処理のリクエストを行ったり、そのレスポンスを受け取ったりする。各種処理には、例えば、ログイン認証、スキャン画像の解析、スキャン画像データの送信などが含まれる。ＭＦＰ連携サーバ１２０とのやり取りはＲＥＳＴやＳＯＡＰなどの通信プロトコルを使用される。
【００２１】
画像処理部４２４は、スキャン画像データに対し所定の画像処理を行って、表示制御部４２１が表示するＵＩ画面で用いられる画像を生成する。所定の画像処理の詳細については後述する。
【００２２】
≪サーバ装置のソフトウェア構成≫
まず、ＭＦＰ連携サーバ１２０のソフトウェア構成について説明する。ＭＦＰ連携サーバ１２０は、リクエスト制御部４３１、画像処理部４３２、ストレージサーバアクセス部４３３、データ管理部４３４、表示制御部４３５を有する。リクエスト制御部４３１は、外部装置からのリクエストを受信できる状態で待機しており、受信したリクエスト内容に応じて、画像処理部４３２、ストレージサーバアクセス部４３３、データ管理部４３４に対し所定の処理の実行を指示する。画像処理部４３２は、ＭＦＰ１１０から送られてくるスキャン画像データに対して、文字領域の検出処理、文字認識処理、類似文書の判定処理といった画像解析処理の他、回転や傾き補正といった画像加工処理を行う。ストレージサーバアクセス部４３３は、ストレージサーバ１３０に対する処理のリクエストを行う。クラウドサービスでは、ＲＥＳＴやＳＯＡＰなどのプロトコルを用いてストレージサーバにファイルを保存したり、保存したファイルを取得したりするための様々なインタフェースを公開している。ストレージサーバアクセス部４３３は、公開されたインタフェースを使用して、ストレージサーバ１３０に対するリクエストを行う。データ管理部４３４は、ＭＦＰ連携サーバ１２０で管理するユーザ情報や各種設定データ等を保持・管理する。表示制御部４３５は、インターネット経由で接続されたＰＣやモバイル端末（いずれも不図示）上で動作しているウェブブラウザからのリクエストを受けて、画面表示に必要な画面構成情報（ＨＴＭＬ、ＣＳＳ等）を返す。ユーザは、ウェブブラウザで表示される画面経由で、登録されているユーザ情報を確認したり、スキャン設定を変更したりできる。
【００２３】
次に、ストレージサーバ１３０のソフトウェア構成について説明する。ストレージサーバ１３０は、リクエスト制御部４４１、ファイル管理部４４２、表示制御部４４３を有する。リクエスト制御部４４１は、外部装置からのリクエストを受信できる状態で待機しており、本実施形態においてはＭＦＰ連携サーバ１２０からのリクエストに応じて、受信したファイルの保存や保存ファイルの読み出しをファイル管理部４４２に指示する。そして、リクエストに応じたレスポンスをＭＦＰ連携サーバ１２０に返す。表示制御部４４３は、インターネット経由で接続されたＰＣやモバイル端末（いずれも不図示）上で動作しているウェブブラウザからのリクエストを受けて、画面表示に必要な画面構成情報（ＨＴＭＬ、ＣＳＳ等）を返す。ユーザは、ウェブブラウザで表示される画面経由で、保存ファイルを確認したり取得したりすることができる。
【００２４】
＜画像処理システム全体の処理の流れ＞
図５は、ＭＦＰ１１０で文書をスキャンし、得られたスキャン画像をファイル化してストレージサーバに保存する際の、装置間の処理の流れを示すシーケンス図である。図６はＭＦＰ１１０の起動時に表示されるメインメニューのＵＩ画面（以下、「メイン画面」と表記）の一例を示す図である。文書をスキャンしてファイル化し、クラウドストレージサービスの利用に必要な専用のアプリケーションをＭＦＰ１１０にインストールすることで、メイン画面６００上に「スキャンしてクラウドストレージに保存」ボタン６０１が表示されるようになる。そして、ユーザがメイン画面６００内に表示されたメニューボタンの中から「スキャンしてクラウドストレージに保存」ボタン６０１を押下すると、図５のシーケンス図で示される一連の処理が開始する。以下、図５のシーケンス図に沿って、装置間のやり取りを時系列に説明する。なお、以下の説明において記号「Ｓ」はステップを表す。
【００２５】
ＭＦＰ１１０は、ＭＦＰ連携サーバ１２０にアクセスするためのログイン認証の情報を入力するＵＩ画面（以下、「ログイン画面」と表記）を操作部２２０に表示する（Ｓ５０１）。図７にログイン画面の一例を示す。ユーザが、予め登録されているユーザＩＤとパスワードを、ログイン画面７００上の入力欄７０２及び７０３にそれぞれ入力し「ログイン」ボタン７０１を押下すると、ログイン認証のリクエストがＭＦＰ連携サーバ１２０に送信される（Ｓ５０２）。
【００２６】
ログイン認証のリクエストを受けたＭＦＰ連携サーバ１２０は、当該リクエストに含まれるユーザＩＤとパスワードを用いて認証処理を行う（Ｓ５０３）。認証処理の結果、正規のユーザであることが確認されれば、ＭＦＰ連携サーバ１２０は、アクセストークンをＭＦＰ１１０に返す。以後、ＭＦＰ１１０からＭＦＰ連携サーバ１２０に対して行う各種リクエストの際にこのアクセストークンを一緒に送ることで、ログイン中のユーザが特定される。本実施形態では、ＭＦＰ連携サーバ１２０へのログインの完了によって、ストレージサーバ１３０へのログインも同時に完了するものとする。このためにユーザは、インターネット上のＰＣ（不図示）のウェブブラウザ等を介して、ＭＦＰ連携サービスを利用するためのユーザＩＤとストレージサービスを利用するためのユーザＩＤとの紐づけを予め行っておく。これにより、ＭＦＰ連携サーバ１２０へのログイン認証に成功すれば同時にストレージサーバ１３０へのログイン認証も完了し、ストレージサーバ１３０にログインするための操作を省略できる。そして、ＭＦＰ連携サーバ１２０においては、自装置にログインしたユーザからのストレージサービスに関するリクエストにも対応可能となる。なお、ログイン認証の方法は一般的に公知な手法（Ｂａｓｉｃ認証、Ｄｉｇｅｓｔ認証、OAuthを用いた認可等）を用いて行えばよい。
【００２７】
ログインが完了すると、ＭＦＰ１１０は、スキャン設定用のＵＩ画面（以下、「スキャン設定画面」と表記）が操作部２２０に表示される（Ｓ５０７）。図８にスキャン設定画面の一例を示す。スキャン設定画面８００には、「スキャン開始」ボタン８０１、カラー設定欄８０２、解像度設定欄８０３が存在する。「スキャン開始」ボタン８０１は、原稿台にセットした文書（本実施形態では見積書や請求書といった帳票を想定）に対するスキャン処理の開始を指示するためのボタンである。カラー設定欄８０２では、スキャン時のカラーモードを設定する。例えばフルカラーやモノクロといった選択肢の中から指定できるようになっている。解像度設定欄８０３では、スキャン時の解像度を設定する。例えば６００ｄｐｉや１２００ｄｐｉといった選択肢の中から指定できるようになっている。なお、カラーモードと解像度は設定項目の一例であって、これらすべてが存在しなくてもよいし、これら以外の設定項目が存在してもよい。また、カラーモードや解像度に関する選択肢を、ストレージサービスの要求する設定値のみに限定したりしてもよい。ログインユーザは、このようなスキャン設定画面８００を介してスキャン処理についての詳細な条件設定を行なう。スキャン設定を終えたログインユーザが、ＭＦＰ１１０の原稿台にスキャン対象の文書をセットし、「スキャン開始」ボタン８０１を押下するとスキャンが実行される（Ｓ５０５）。これにより、紙文書を電子化した画像データが生成される。スキャンの完了後、ＭＦＰ１１０は、スキャンによって得られた画像データを、その解析リクエストと共にＭＦＰ連携サーバ１２０に送信する（Ｓ５０６）。
【００２８】
スキャン画像の解析リクエストを受けたＭＦＰ連携サーバ１２０では、リクエスト制御部４３１が画像処理部４３２に対し、画像解析処理の実行を指示する（Ｓ５０７）。その際、リクエスト制御部４３１は、受信した解析リクエストを一意に特定可能なリクエストＩＤをＭＦＰ１１０に返す。図９（ａ）にリクエストＩＤの一例を示す。一方、解析処理の実行指示を受けた画像処理部４３２は、スキャン画像に対する解析処理を実行する（Ｓ５０８）。この画像解析処理では、まずスキャン画像内に存在する文字領域を検出する処理を行う。文字領域の検出は、例えば、ある閾値で２値化を行った画像から文字と推測される矩形領域を抽出する方法等、既知の方法を適用すればよい。次に、文字領域検出処理によって見つかった各文字領域に対して、文字認識処理（ＯＣＲ：Optical Character Recognition）を行う。そして、今回のスキャン対象の帳票が、過去のスキャン対象の帳票と類似しているかどうかを判定する処理（類似文書判定処理）を行う。この類似帳票の判定では、スキャン画像内に存在する各文字領域が当該スキャン画像のどこに位置するかを示す配置情報を用いる。具体的には、過去のスキャン画像についての配置情報と今回のスキャン画像についての配置情報とを比較し、文字領域の配置が類似しているかどうかを判定する。これは、文字領域の配置が類似していれば、それらは同一のフォーマットを用いて作成された帳票であると推測できることに基づいている。この類似帳票の判定で使用する過去のスキャン画像の配置情報は、後述の「帳票学習処理」によって蓄積される。これら画像解析処理によって得られた結果は、リクエスト制御部４３１に渡される。なお、本実施形態では、文字領域の配置の類似度合いのみに基づき帳票の類否を判定しているが、例えば、ＯＣＲ結果から帳票の種別（見積書、請求書など）を特定し、得られた種別の情報を加味して類否を判定してもよい。
【００２９】
上記画像解析処理が行われている間、ＭＦＰ１１０は、上述のリクエストＩＤを使用して、ＭＦＰ連携サーバ１２０に対して定期的（例えば数百ミリ秒から数ミリ秒程度毎）に処理状況の問合せを行う（Ｓ５０９〜Ｓ５０９’）。この問合せは、ＭＦＰ連携サーバ１２０からの画像解析処理の完了レスポンス（Ｓ５１０）が取得できるまで繰り返し実行される。ＭＦＰ連携サーバ１２０は、処理状況の問合せを受けると、リクエストＩＤに対応する画像解析処理の進行状況を確認し、完了していない場合は処理中を表すレスポンス（図９（ｂ）を参照）を返す。また、完了していた場合は完了を表すレスポンス（図９（ｃ）を参照）を返す。このレスポンスの“status”には現在の処理状況を示す文字列、具体的には、ＭＦＰ連携サーバ１２０で処理が行われている最中である場合には“processing”が入り、処理が完了している場合には“completed”が入る。なお、処理が失敗した場合の“failed”など、他のステータスを表す文字列が入ることもある。図９（ｃ）に示すとおり、処理完了時のレスポンスには、ステータス情報に加え、スキャン画像の解析結果に関する情報などを含む。
【００３０】
処理完了レスポンスを受信した後、ＭＦＰ１１０は、当該レスポンスに含まれる、画像解析結果の格納先を示すＵＲＬを用いて、画像解析処理の結果を、ＭＦＰ連携サーバ１２０に対してリクエストする（Ｓ５１１）。この場合のＵＲＬには、“ocrResultUrl”と“matchingResultUrl”がある。リクエストを受けてＭＦＰ連携サーバ１２０のリクエスト制御部４３１は、画像解析処理の結果情報を返す。
【００３１】
そして、ＭＦＰ１１０は、取得した結果情報を使用して、ファイル名を設定するためのＵＩ画面（以下、「ファイル名設定画面」と表記）を表示する（Ｓ５１２）。図１０に、ファイル名設定画面の一例を示す。ユーザが、ファイル名を設定して送信ボタン１００７を押下すると、ＭＦＰ１１０は、まず、当該ファイル名を設定する際にユーザが行った入力操作に関する情報（設定時入力情報）を含んだ学習リクエストをＭＦＰ連携サーバ１２０に送信する（Ｓ５１３）。図１１に、学習リクエストの一例を示す。“learningContent”において学習内容が特定され、その中には、ファイル名に使用された文字領域に関する“rectInfoArray”とメタデータに関する“metadataArray”がある。“rectInfoArray”には、ファイル名設定時に使用した文字領域の座標情報が入る。“metadataArray”には、ファイル名に使用した文字列に対応する文字領域の情報と、当該文字列に付随する区切り文字（セパレータ）の情報が入る。図１１の例では、先頭が“fileRegion0”の文字領域の文字列、その次が区切り文字、そして末尾が“fileRegion1”の文字領域の文字列、の順に並ぶファイル名構成であることを示している。
【００３２】
学習リクエストを受信したＭＦＰ連携サーバ１２０では、リクエスト制御部４３１が、画像処理部４３２に対し帳票学習処理の実行を指示する（Ｓ５１４）。この指示を受けて画像処理部４３２は、スキャン画像に存在する各文字領域の配置情報と、Ｓ５１３で受け取った学習リクエストに含まれるファイル名設定時の入力情報（ファイル名の構成情報）を保存する（Ｓ５１５）。
【００３３】
その後、ＭＦＰ１１０は、スキャン画像のデータとそのファイル化の際に設定するファイル名等の情報と共に、当該スキャン画像の保存リクエストをＭＦＰ連携サーバ１２０に送信する（Ｓ５１６）。保存リクエストを受信したＭＦＰ連携サーバ１２０では、リクエスト制御部４３１が、ファイル生成処理を開始すると共に保存リクエストを正常に受けたことを示すレスポンスをＭＦＰ１１０に返す。そのレスポンスを受け取ったＭＦＰ１１０は、処理を終了し、スキャン設定画面の表示状態（Ｓ５０４）に戻る。一方、ＭＦＰ連携サーバ１２０では、事前に登録されたスキャン設定からファイルフォーマットの情報を取得し、当該ファイルフォーマットに従ってスキャン画像をファイル化する（Ｓ５１７）。この際、生成されたファイルには保存リクエストにて指定されたファイル名が付されることになる。こうして生成されたスキャン画像ファイルは、ストレージサーバ１３０に送信され、保存される（Ｓ５１８）。
【００３４】
以上が、画像処理システム全体の処理の流れである。
【００３５】
＜ＭＦＰの処理詳細＞
続いて、ＭＦＰ１１０における動作に着目して、上述の画像処理システムでストレージサービスを利用する場合の処理について詳しく説明する。図１２は、ＭＦＰ１１０における処理の流れを示すフローチャートである。この一連の処理は、制御部２１０において、ＣＰＵ２１１がＨＤＤ２１４に記憶された制御プログラムを実行することにより実現され、前述のメイン画面６００での「スキャンしてクラウドストレージに保存」ボタン６０１の押下に応答して開始される。以下、図１２に示すフローチャートに沿って詳しく説明する。なお、各処理の冒頭における記号「Ｓ」はステップを意味する。
【００３６】
Ｓ１２０１において、表示制御部４２１は、前述のログイン画面７００を表示する。ログイン画面７００上でユーザ名とパスワードが入力欄７０２及び７０３にそれぞれ入力され、「ログイン」ボタン７０１の押下が検知されると、Ｓ１２０２に進む。
【００３７】
Ｓ１２０２において、連携サービスリクエスト部４２３は、ログイン認証リクエストをＭＦＰ連携サーバ１２０に送信する。ＭＦＰ連携サーバ１２０でのログイン認証によって正規のユーザであることが確認されると、連携サービスリクエスト部４２３は、アクセストークンをＭＦＰ連携サーバ１２０から受信する。
【００３８】
Ｓ１２０３において、アクセストークンを受信したＭＦＰ１１０では、表示制御部４２１が、前述のスキャン設定画面８００を操作部２２０に表示する。ログインユーザによって原稿台に文書がセットされ、「スキャン開始」ボタン８０１の押下が検知されると、表示制御部４２１は、スキャン制御部４２２に対してその旨を通知する。
【００３９】
Ｓ１２０４において、上記通知を受けたスキャン制御部４２２は、スキャン実行部４１１に対してスキャン処理の実行を指示する。当該指示を受けてスキャン実行部４１１は、原稿台に置かれた文書をスキャンする。本フローの説明においては、スキャン対象として帳票（より具体的には見積書）を例に説明を行うものとする。これにより、図１３に示すような見積書のスキャン画像が得られる。スキャンによって生成されたスキャン画像データは、画像データ保存部４１２に保存され、当該スキャン画像を特定可能な識別子がスキャン制御部４２１に通知される。この際、スキャンの実行中である旨を示すメッセージ画面（不図示）が操作部２２０上に表示されるようにしてもよい。
【００４０】
次に、Ｓ１２０５において、連携サービスリクエスト部４２３は、スキャン制御部４２１を介してスキャン画像データを取得し、ＭＦＰ連携サーバ１２０にその解析リクエストと共に送信する。当該解析リクエストに基づき、ＭＦＰ連携サーバ１２０では、受信したスキャン画像データに対して、前述の画像解析処理が実行される。その際、ＭＦＰ連携サーバ１２０のリクエスト制御部４３１からリクエストＩＤが返される。
【００４１】
Ｓ１２０６において、リクエストＩＤを取得した連携サービスリクエスト部４２３は、処理ステータスの取得リクエストをリクエストＩＤと共にＭＦＰ連携サーバ１２０に送信する。当該取得リクエストに基づき、ＭＦＰ連携サーバ１２０は、リクエストＩＤで特定される画像解析処理の進行状況に応じたレスポンスをＭＦＰ１１０に返す。
【００４２】
Ｓ１２０７において、連携サービスリクエスト部４２３は、受け取ったレスポンスにおけるステータスが処理中を示す“processing”であった場合はＳ１２０６に戻る。そして、所定時間の経過を待って、再び処理ステータスの取得リクエストをＭＦＰ連携サーバ１２０に送信する。受け取ったレスポンスにおけるステータスが完了を示す“completed”であった場合は、Ｓ１２０８に進む。ここで、本実施形態における処理完了時のレスポンスに含まれる画像解析結果の情報について、前述の図９（ｃ）を参照しつつ説明する。画像解析結果の情報には、“ocrResultUrl”、“matchingResultUrl”、“formKeys”の３種類の情報がある。“ocrResultUrl”は、画像解析処理のうちＯＣＲ処理の結果を取得するためのＵＲＬの情報である。“matchingResultUrl”は、画像解析処理のうち類似帳票判定処理の結果を取得するためのＵＲＬの情報である。“formKeys”は、ファイル名、メタデータ、フォルダパスといったプロパティをスキャン画像に設定するための設定値の情報であり、ＭＦＰ連携サーバ１２０において事前設定されている。“formKeys”の中には以下の情報が含まれる。
・key：スキャン画像に設定する設定値を一意に示す値
・keyType：keyの設定値の種別を示す値
・value：設定値の初期値（例えば、スキャン画像であることを示す“scan”）
・type：設定値に入力する値の種類を示す値
（例えば、文字列なら“string”、数値なら“number”、日付なら“date”など）
・displayName：ＭＦＰのタッチパネル上に設定画面を表示するときの表示名
・required：その設定値を入力することが必須かどうかを示す値
・multiSelect：ファイル名に複数の文字領域の文字列を使用するかどうかを示す値
・separator：複数の文字領域の文字列を使用する場合の文字列間を繋ぐ区切り文字の内容
・autoInput：初期ファイル名の自動入力を行うかどうかを示す値
【００４３】
図９（ｃ）には、スキャン画像にファイル名を設定する場合の“formKeys”が示されている。この図９（ｃ）の場合を例に、“value”、“displayName”、“required”、“multiSelect”の各値が、次のＳ１２０９で表示されるファイル名設定画面（図１０）にどのような影響をあたえるかを説明する。いま、“value”の内容は空である。この場合、ファイル名設定画面１０００のファイル名入力欄１００１には初期値が表示されないことになる。また、“displayName”は「ファイル名」となっている。この場合、図１０のファイル名設定画面１０００のように設定のタイトルやラベルを示す「ファイル名」の文字列が画面上部に（この例では白抜き文字で）表示されることになる。また、“required”は「true」となっている。この場合、ファイル名入力欄１００１に文字列が入っていない空の状態では送信ボタン１００７を押下することができなくなる。また、“multiSelect”が「true」となっている。この場合、スキャン画像から検出された複数の文字領域を選択することが可能になり、これによって各文字領域に対応した文字列を繋げたファイル名を設定できることになる。これら“formKeys”に含まれる上記の内容は、ＭＦＰ連携サーバ１２０の表示制御部４３５が表示するファイル名条件設定画面を介してユーザが設定する。図１４にファイル名条件設定画面の一例を示す。ファイル名条件設定画面１４００内のチェックボックス１４０１は、以前にスキャン画像のファイル名設定時に用いた文字領域の情報を使用して自動的にファイル名を入力するか否かをユーザが選択するために用いる。設定欄１４０２には、ファイル名に複数の文字領域に対応する複数の文字列を使用する場合に、文字列間に挿入する区切り文字に何を使用するかをプルダウン表示される選択肢（アンダースコア、ハイフンなど）の中から設定する。ここでは、アンダースコアが選択されている。設定欄１４０３には、ファイル名設定画面（図１０）の初期表示の際に予め入力状態にしておき、ユーザにファイル名の候補として提示する文字列（初期ファイル名）を設定する。このファイル名条件設定画面１４００で設定した内容はデータ管理部４３４で保持され、処理完了時のレスポンスを作成する際に参照される。
【００４４】
Ｓ１２０８において、連携サービスリクエスト部４２３は、処理完了時のレスポンスに含まれるＵＲＬにアクセスして、画像解析結果を取得する。図９（ｃ）の例では“ocrResultUrl”と“matchingResultUrl”に情報が格納されているので、この２つのＵＲＬにアクセスして画像解析結果を取得する。以下の表１は、図１３のスキャン画像から検出された文字領域の座標と、各文字領域についての文字認識結果（認識された文字列）を示している。
【００４５】
【表１】
2020177523.tif 000003
【００４６】
そして、図１５は、“ocrResultUrl”にアクセスして取得される、図１３のスキャン画像についての文字認識結果を示している。“imageWidth”は、解析対象のスキャン画像のＸ方向（横方向）のピクセル数を示す。“imageHeight”は、解析対象のスキャン画像のＹ方向（縦方向）のピクセル数を示す。“regions”は、スキャン画像から検出した文字領域の座標情報（“rect”）と、その文字領域に対応する文字列情報（“Text”）が含まれる。“rect”には、検出した文字領域を特定する情報が含まれ、“x”は文字領域の左上隅のＸ座標、“y”は文字領域の左上隅のＹ座標、“width”は文字領域のＸ（幅）方向のピクセル数、“height”は文字領域のＹ（高さ）方向のピクセル数を示す。“text”は、“rect”で特定される文字領域をＯＣＲ処理して得られた文字列の情報を示す。この“rect”と“text”の情報が、解析対象のスキャン画像内で検出された全ての文字領域分だけ含まれる。ただし、図１５ではその一部を省略している。
【００４７】
そして、図１６は、“matchingResultUrl”にアクセスして取得される、図１３のスキャン画像についての類似帳票判定結果を示している。“matched”には、前述の類似帳票判定処理によって、今回解析対象のスキャン画像と類似しているものが過去のスキャン画像の中から見つかったかどうかを示す値として“true”又は“false”が入る。値が“true”であれば、今回のスキャン対象の帳票が以前にスキャンした帳票と類似していることを示し、“false”であれば類似していないことを表す。“formId”には、類似する帳票が見つかった場合は、過去の類似帳票のスキャン画像を一意に示す値（ＩＤ値）が入る。一方、類似する帳票が見つからなかった場合は、今回スキャンを行った帳票のスキャン画像を一意に示す新たに作成されたＩＤ値が入る。そして、この新たに作成されたＩＤ値は、過去に類似帳票が存在しなかった帳票のスキャン画像についてのファイル名設定時の入力情報（ファイル名の構成情報）を学習させるときに使用される。“matchingScore”には、類似する帳票があった場合に一致度合いを示す値が入る。本実施形態の類似度は、過去のスキャン画像における文字領域の配置情報と今回のスキャン画像における文字領域の配置情報との一致度合を0〜1までの実数値で表したものであり、その値が大きいほど類似した帳票であることを示す。“rectInfoArray”には、過去の類似帳票のスキャン画像に対するファイル名設定時に使用された文字領域に対応する、今回解析対象のスキャン画像における文字領域を示す情報が入る。
【００４８】
図１６の例の場合は、以前に、見積書をスキャンして得られた図１３のスキャン画像に対して「見積書」と「品川株式会社」の２つの文字列を使用してファイル名を設定し、その入力情報の学習を行っている。その後に、同一フォーマットで作成した見積書をスキャンして図１７に示すスキャン画像を生成し、当該スキャン画像について類似帳票判定処理を行った結果、図１３のスキャン画像と類似していると判定されている。そして、図１３のスキャン画像に対するファイル名の設定時に使用された文字領域の情報が、自動入力の対象となる文字領域の情報として格納された状態を、図１６の例は示している。以下、図１６に示す類似帳票判定処理の結果が得られるまでの過程を説明する。
【００４９】
前提として、前述の図１１の学習リクエストに基づく学習結果が、データ管理部４３４に保存されているものとする。そして、類似帳票判定処理では、以前のファイル名設定時に用いた「見積書」と「品川株式会社」の文字領域の座標情報を用いて、今回のスキャン画像に含まれる文字領域の中の当該座標情報で示された文字領域とその一部が重なる文字領域が特定される。そして、一部が重なると特定された文字領域の座標情報と当該文字領域の文字列を“rectInfoArray”の“text”に格納される。“key”には、ファイル名の自動入力に使用する文字領域を一意に示す値が入る。“region”には“key”が一意に示す文字領域の座標情報と当該文字領域に対するＯＣＲ処理によって得られた文字列が格納される。そして、“rect”には、“key”が一意に示す文字領域を特定する情報が含まれる。この場合において、“x”は文字領域の左上隅のＸ座標、“y”は文字領域の左上隅のＹ座標、“width”は文字領域のＸ（幅）方向のピクセル数、“height”は文字領域のＹ（高さ）方向のピクセル数を示す。そして、“rect”で特定される文字領域をＯＣＲ処理して得られた文字列の情報が“text”に入っている。“metadataArray”には、ファイル名を自動入力する際に使用する文字領域の順番と区切り文字がどこに入るかを示す情報が格納される。ファイル名以外にメタデータなどのプロパティ情報が設定されている場合は、“rectInfoArray”や“metadataArray”において、必要な情報が追加される。“key”には、スキャン画像に設定する設定値を一意に示す値が格納される。“keyType”には、“key”の設定値の種別を示す値が格納される。ファイル名に使用する場合は、“key”には“filename”が入り、“keyType”には“filename”が入る。“value”には、“key”の値に使用する文字領域と区切り文字の情報が格納される。図１６の例では、“rectInfoArray”の中の“fileRegion0”の“key”を持つ文字領域の文字列が１番目、区切り文字が２番目、“fileRegion1”の“key”を持つ文字領域の文字列が３番目となっている。そして、この順番でファイル名入力欄１００１に自動入力され、初期ファイル名として表示されることになる。
【００５０】
Ｓ１２０９において、表示制御部４２１が、前述のファイル名設定画面１０００を操作部２２０に表示して、ユーザが、スキャン画像に対するファイル名の設定を行えるようにする。このファイル名設定処理の詳細については後述する。
【００５１】
Ｓ１２１０において、連携サービスリクエスト部４２３が、Ｓ１２０６の処理ステータスのリクエストに対するレスポンスを参照して、ファイル名の自動入力を行う設定となっているか否かを判定し、次の処理を決定する。具体的には、前述の図９（ｃ）で示した処理完了時のレスポンスに含まれる“autoInput”の値を参照し、自動入力を行う設定を意味する“true”の場合はＳ１２１１へ進む。一方、自動入力を行わない設定を意味する“false”の場合はＳ１２１４へ進む。
【００５２】
Ｓ１２１１において、連携サービスリクエスト部４２３は、今回のスキャン画像に類似するスキャン画像が過去に存在していたかどうかを、Ｓ１２０８で取得した画像解析結果に基づき判定する。具体的には、前述の図１６で示した類似帳票判定処理の結果に含まれる“matched”の値を参照し、過去のスキャン画像の中に類似したものが存在することを示す“true”の場合はＳ１２１２へ進む。一方、類似したものが存在しないことを示す“false”の場合はＳ１２１４へ進む。
【００５３】
Ｓ１２１２において、連携サービスリクエスト部４２３は、Ｓ１２０９のファイル名設定処理において、ファイル名入力欄１００１に自動入力されていた初期ファイル名に対して、ユーザが変更を加えたかどうかを判定する。この場合の変更には、例えば今回のファイル名に使用する文字領域を、初期ファイル名で使用されている文字領域と異なるものにしたり、区切り文字を追加したり或いは削除したりすることを含む。そして、この判定は、図１６の類似帳票判定処理の結果に含まれる“metadataArray”の“value”の値と、今回のスキャン画像に対するファイル名設定を行った後のファイル名入力欄１００１への入力情報との比較により行う。比較の結果、差異があれば初期ファイル名に対して変更がなされたと判断してＳ１２１３へ進み、一致していれば初期ファイル名に対して変更がなされていないと判断してＳ１２１４へ進む。なお、“formKeys”の“value”によって自動入力されていたファイル名の先頭文字列については、ユーザによって削除されていても入力情報が変わったとみなさずにＳ１２１４に進んでもよい。
【００５４】
Ｓ１２１３では、連携サービスリクエスト部４２３が、今回のスキャン画像に対して設定されたファイル名の構成を表す設定時入力情報の学習リクエスト（前述の図１１を参照）を、ＭＦＰ連携サーバ１２０へ送信する。この場合の学習リクエストに含まれる“formId”には、Ｓ１２０８で取得した画像解析結果の類似判定処理結果に含まれる“formId”の値が使用される。図１６の例では、“formId”の値として“aaaaaaaa-ffff-49ab-acf8-55558888eeee”が入っているので、これが学習リクエストに格納されることになる。また、“learningContent”には、ファイル名設定時に使用した入力情報の内容が格納される。まず、“rectInfoArray”には、ファイル名に使用した文字列が属する文字領域の座標情報が、その文字領域の数分だけ格納される。そして、“metadataArray”には、ファイル名の設定に用いた文字領域と区切り文字の情報が格納される。前述の表１を参照して、このときのユーザが行った操作を説明すると、ファイル名設定画面１０００のプレビュー領域１００２において、最初に番号１の「見積書」をタッチする。その次に、番号８の「品川株式会社」をタッチし、最後に送信ボタン１００７を押下している。学習リクエストを受けたＭＦＰ連携サーバ１２０は、このようなユーザ操作に基づく入力情報を蓄積し、当該蓄積した入力情報を次回以降の画像解析処理から使用することになる。学習リクエストを送信後、当該学習リクエストを正常に処理した旨のレスポンスをＭＦＰ連携サーバ１２０から受け取ると、Ｓ１２１４に進む。
【００５５】
Ｓ１２１４では、連携サービスリクエスト部４２３が、処理対象のスキャン画像データとＳ１２０９で設定されたファイル名とを対応付けて、ＭＦＰ連携サーバ１２０に送信する。この送信完了によって本処理が終了する。なお、本実施形態ではスキャン画像データとそのファイル名の送信を最後に行っているが、スキャン処理が終わり、スキャン画像管理部４１２によるスキャン画像データの保存の時点で並行して、ＭＦＰ連携サーバ１２０に送信しておいてもよい。
【００５６】
以上が、ＭＦＰ１１０における動作に着目したストレージサービスを利用する場合の処理の流れである。なお、上記の説明では、１枚の見積書をスキャンして得られた１つのスキャン画像をファイル化する際のファイル名設定を行う場面を想定していた。しかし、本実施形態はこれに限定されるものではなく、複数の文書をスキャンして得られた複数のスキャン画像をファイル化する際のファイル名設定を行う場面にも同様に適用可能である。この場合、ファイル名設定画面１０００内にページめくりをするためのボタンを設け、２ページ目や３ページ目のスキャン画像の文字領域からもファイル名の設定を行えるようにしてもよい。
【００５７】
（ファイル名設定処理）
続いて、前述のＳ１２０９にて表示制御部４２１が実行するファイル名設定処理について、図１８及び図１９に示すフローチャートに沿って詳しく説明する。
【００５８】
Ｓ１８０１では、前述のファイル名設定画面１０００のファイル名入力欄１００１に初期状態で表示されるファイル名（初期ファイル名）が生成される。初期ファイル名は、以下の手順で生成される。まず、前述の処理完了時のレスポンスを参照し、“formKeys”の“value”に何らかの値が入っていれば、当該値をファイル名の先頭に設定する。例えば、“formKeys”の“value”として“scan”の文字列が入っていた場合は、初期ファイル名の先頭に“scan”を設定する。次に、“matchingResultUrl”にアクセスして取得した類似帳票判定結果に従って所定の文字列を設定する。すなわち、“matched”の値が“true”であり、かつ、“matchingScore”が一定以上の数値（例えば0.6以上）であると、“metadataArray”の“value”で指定されるファイル名構成に従って文字列を設定する。具体的には、“value”において指定された順番に従って“rectInfoArray”で特定される文字領域の文字列を設定する。図１６の類似帳票判定結果の例では、“matched”の値が“true”であり、かつ、“matchingScore”が“0.74・・・”なので一定以上の数値である。そして、“metadataArray”の“value”にて、最初が“fileRegion0”、次が“separator”、最後が“fileRegion1”の並びであることが指定されている。よって、“fileRegion0”の“text”の値である「見積書」、処理完了レスポンスに含まれる“separator”の値である「_（アンダースコア）」、“fileRegion1”の“text”の値である「下丸子株式会社」が順に連結される。こうして「見積書_下丸子株式会社」が、初期ファイル名として生成されることになる。もし、“formKeys”の“value”に何らかの値（例えば“scan_”）が入っていた場合は、その文字を先頭に追加した「scan_見積書_下丸子株式会社」が初期ファイル名となる。類似帳票判定結果において、“matched”の値が“false”で、“matchingScore”が一定未満の数値の場合は、“formKeys”の“value”に文字列が入っていればその文字列がそのまま初期ファイル名となる。また、“formKeys”の“value”に文字列が入っていなければ初期ファイル名なし（空欄）となる。なお、本実施形態では、“matched”の値と“matchingScore”の値の２つを、“metadataArray”の“value”の順番に従って“rectInfoArray”で指定された情報を初期ファイル名生成の条件とした。しかし、これに限定されず、いずれか一方の結果のみを条件としてもよい。例えば、“matched”の値が“true”であることのみを条件に初期ファイル名を生成してもよいし、類似度合いを示す値が閾値以上であることのみを条件にファイル名を生成してもよい。
【００５９】
Ｓ１８０２では、ファイル名設定画面１０００のプレビュー領域１００２に初期状態で表示する際にスキャン画像をどの程度縮小して表示するか（以下、「初期変倍率」と呼ぶ）が決定される。この初期変倍率の決定には、“ocrResultUrl”にアクセスして取得した文字認識結果を用いる。まず、スキャン画像内で検出された全ての文字領域のうち最も左にある文字領域と最も右にある文字領域をそれぞれ求める。この場合において、最も左の文字領域となるのは、全文字領域の中で、x座標の値が最小値の文字領域である。また、最も右の文字領域となるのは、全文字領域の中で、x座標の値と文字領域幅（width）の値とを足した合計値が最大となる文字領域である。こうして決定した最も左にある文字領域の左辺がプレビュー領域１００２の左辺と、最も右にある文字領域の右辺がプレビュー領域１００２の右辺とそれぞれ一致するような変倍率を、初期変倍率として決定する。なお、決定した文字領域の端とプレビュー領域の端とを完全に一致させてしまうと、当該文字領域が小さい場合にユーザが選択（押下）しづらくなることがあるため、一定量のマージンを持たせて初期変倍率を決定してもよい。例えば、プレビュー領域１００２内で最も左に表示されることになる文字領域の左端と、最も右に表示されることになる文字領域の右端からそれぞれ１０ピクセル分の余白が確保されるように初期変倍率を決定するといった具合である。また、プレビュー領域１００２上に各種操作ボタン等のＵＩコンポーネントが重畳表示される場合には、当該ＵＩコンポーネントに文字領域が重ならないように初期変倍率を決定してもよい。具体的には、ＵＩコンポーネントの幅分をプレビュー領域１００２の幅から差し引いた上で、最も左の文字領域と最も右の文字領域とが残りの領域の幅内に収まるように初期変倍率を決定してもよい。前述の図１０のファイル名設定画面１０００の例では、プレビュー領域１００２内に３つの操作ボタン（拡大ボタン１００４、縮小ボタン１００５、復帰ボタン１００６）が存在しているので、これらのボタンに文字領域が重ならないように初期変倍率を決定する。また、スキャン対象となる帳票の上下左右の端部付近には印刷処理に関わるヘッダ情報等が印刷されていることがあり、このようなヘッダ情報等に対応する文字領域の文字列がファイル名の一部に採択される可能性は低い。そこで、スキャン画像の上下左右の端から一定量（例えば５０ピクセル）以内に存在する文字領域は、上記最も左及び最も右の文字領域を求める際に除外するようにしてもよい。
【００６０】
Ｓ１８０３では、Ｓ１８０２で決定した初期変倍率による拡縮後のスキャン画像のどの部分を、ファイル名設定画面１０００のプレビュー領域１００２内に初期状態で表示するかが決定される。上記Ｓ１８０２で決定された変倍率にて拡縮した後のスキャン画像においては、最も左の文字領域と最も右の文字領域とが収まる幅が、プレビュー領域１００２の幅と略一致する。したがって、まず、左右方向についてはプレビュー領域１００２の中にこれら左右の文字領域がちょうど収まるように、例えば最も左の文字領域の左辺がプレビュー領域１００２の左辺と一致するように初期状態で表示する部分（以下、「初期表示部分」と呼ぶ。）が決まる。その上で、最も上にある文字領域がプレビュー領域１００２の上端付近に位置するように、上下方向の初期表示部分を決定する。このとき、初期変倍率の決定時にマージンを考慮していた場合は、同様にマージン分を考慮して、初期表示部分を決定すればよい。例えば、スキャン画像の上端から一定量（例えば５０ピクセル）以内に存在する文字領域は表示対象から除外し、それ以外の文字領域の中で最も上にある文字領域が、プレビュー領域１００２の上端に表示されるように決定してもよい。図２０は、図１３のスキャン画像について決定された初期表示部分を示す図である。図２０における線の枠が、プレビュー領域１００２に初期状態で表示されるスキャン画像の範囲を示している。なお、上述のようにして初期表示部分を決定した結果、類似帳票が存在して初期ファイル名がファイル名入力欄１００１に自動で入力された場合における当該初期ファイル名に使用された文字列の文字領域が、プレビュー領域１００２に表示されないケースがある。この場合には、例えば、初期ファイル名に使用した文字列の文字領域がプレビュー領域１００２の中央に表示されるように、初期表示部分を決定すればよい。この時、ファイル名入力欄１００１に自動入力された初期ファイル名を構成する文字列と当該初期ファイル名に使用された文字列の文字領域とを、それぞれ強調表示（例えば色を変更するなど）してもよい。図２１は、図１３のスキャン画像において文字列「川崎株式会社」が初期ファイル名に自動入力されている場合のスキャン設定画面１０００の例である。ここでは、文字列「川崎株式会社」に対応する文字領域がプレビュー領域１００２の中央に位置するように、さらに、当該文字領域とファイル名入力欄１００１に入力されている文字列「川崎株式会社」の色を変更して表示している。この時、強調表示する文字領域の文字サイズが小さい場合には、適切な文字サイズとなるように初期変倍率を調整してもよい。この調整後の初期変倍率は、例えば、操作部２２０のタッチパネルのサイズとプレビュー領域１００２に初期状態で表示する範囲とに基づき得ることができる。具体的には、初期ファイル名に使用している文字列の文字領域の高さを基に、文字サイズが何ポイントかを求め、求めたポイントが閾値以上（所定サイズ以上）になるようにプレビューの初期変倍率を調整すればよい。
【００６１】
Ｓ１８０４では、Ｓ１８０１〜Ｓ１８０３までの処理結果を用いて、前述のファイル名設定画面１０００が操作部２２０に表示される。ユーザは、図１０に例示したファイル名設定画面１０００を用いて、ストレージサーバ１３０に保存するスキャン画像についてのファイル名を設定する。以下、詳しく説明する。
【００６２】
１）ファイル名入力欄
ユーザが、ファイル名入力欄１００１をタッチすると、操作部２２０のタッチパネルの表示がソフトキーボードに切り替わり、任意の文字を入力したり自動入力された文字列を編集したりすることができる。例えば、前述の図２１の例のように「川崎株式会社」が自動入力された状態のファイル名入力欄１００１の文字列部分をタッチすると、図２２に示すソフトキーボード２２００が表示される。この際、図２２に示すように、入力エリア２２０１にタッチされた文字列が入力された状態で表示される。これにより、ユーザは、ソフトキーボード２２００を操作して、タッチした「川崎株式会社」の文字列を修正することができる。また、図１０に示すような文字列が未入力状態のファイル名入力欄１００１がタッチされた場合は、入力エリア２２０１が未入力状態のソフトキーボード２２００が表示され、ユーザはこれを操作して任意の文字列をファイル名入力欄１００１に入力することができる。
【００６３】
２）プレビュー領域
プレビュー領域１００２には、前述のとおり、変倍処理が施されたスキャン画像の特定部分が表示される。そして、プレビュー領域１００２内の任意の文字領域をタッチして選択すると、当該選択した文字領域の文字列がファイル名入力欄１００１に追加される。この際、選択したことが分かるよう、選択に係る文字領域に対して下線を付したり、枠で囲んだり、色を付すなどして強調表示してもよい。また、選択した文字領域が中央になるよう表示部分を変更したり或いは表示倍率を変更したりしてもよい。さらに、複数の文字領域が選択された場合においては、それぞれの文字領域に対して異なる色を付す等、文字領域毎に表示態様を異ならせてもよい。そして、ユーザは、一度選択した文字領域を再度タッチすると、選択状態が解除（すなわち、文字領域に付した線や色を削除し元の状態に戻す。）され、ファイル名入力欄１００２内の当該文字領域に対応する文字列も削除される。なお、本実施形態では、文字領域が未選択の状態では、プレビュー領域１００２に各文字領域を示す枠等は表示しないこととしている。しかし、ユーザがタッチ可能な部分を認識できるよう各文字領域を示す枠等を予め表示しておき、選択された際にはその色を変える等してもよい。また、各文字領域が分かるようにする表示を行うかどうかをユーザがボタン等で切り替えられるようにしてもよい。そして、ユーザは、プレビュー領域１００２においてスワイプ操作を行うことで、表示される画像部分を移動することができる。
【００６４】
３）各種操作ボタン
「×」マークのボタン１００３は、ファイル名入力欄１０１に入力中の文字列のうち末尾の文字列を削除するための削除ボタンである。「＋」マークのボタン１００４は、プレビュー領域１００２に表示中の画像を拡大して表示させるための拡大ボタンであり、各文字領域をより大きく表示させたいときなどに用いる。「−」マークのボタン１００５は、プレビュー領域１００２に表示中の画像を縮小して表示させるための縮小ボタンであり、より広い範囲を表示させたいときなどに用いる。拡大や縮小を行う時には、プレビュー領域１００２の中央の座標が拡大や縮小を行う前と同一となるように表示位置の調整がなされる。「Ｕターン矢印」マークのボタン１００６は、スワイプ操作による表示位置の移動や、拡大ボタン１００４や縮小ボタン１００５の押下による表示倍率の変更を行っていた場合に、プレビュー領域１００２を初期表示状態に戻すための復帰ボタンである。「送信」ボタン１００７は、ファイル名設定画面１０００で設定したファイル名にてスキャン画像をファイル化してストレージサーバ１３０に保存させるためのボタンである。この「送信」ボタン１００７の押下に応答して、設定されたファイル名の情報と共にスキャン画像データがＭＦＰ連携サーバ１２０へ送信される。
【００６５】
Ｓ１８０５では、初期表示状態のファイル名設定画面１０００内に、操作ガイダンスが表示される。この操作ガイダンスによって、初めて操作するユーザでも、プレビュー領域１００２内の文字領域をタッチして選択することでファイル名が設定できるということを容易に理解することができる。図２３は、図１０に示すファイル名設定画面１０００におけるプレビュー領域１００２の上部に、操作ガイダンスとしてのメッセージ２３０１を重畳表示した状態を示している。このような操作ガイダンスは、操作方法を既に知っているユーザにとっては不要となるため、タッチ操作やスワイプ操作など何らかのユーザ操作を検知した時点で、当該操作ガイダンスは非表示にされる。また、一般的な文書の上部には例えば文書タイトル、会社名、帳票番号、日付といった、当該文書にとって重要な意味を持つ文字や数字が存在することが多い。よって、これら重要な意味を持つ文字列の文字領域と操作ガイダンスとが重ならないよう、文字列の属性に応じて、プレビュー領域１００２に表示する画像部分を下にずらす等してもよい。また、いずれかの文字領域に操作ガイダンスが重なってしまったり或いは文字領域から一定距離以内に入ってしまうときは、重なったり近づきすぎたりしないように操表示位置を決定すればよい。このように、操作ガイダンスの表示位置を固定せずに柔軟に決定することで、ユーザが文字領域を選択しやすくなる。
【００６６】
Ｓ１８０６は、ユーザ操作の有無の監視処理である。所定間隔でユーザ操作の有無をチェックし、何らかのユーザ操作が検知されればＳ１８０７に進む。そして、Ｓ１８０７では、前述のとおり、操作ガイダンスが非表示にされる。
【００６７】
Ｓ１８０８〜Ｓ１８１５は、検知されたユーザ操作の内容に応じて次の処理を決定する判定処理である。なお、検知されたユーザ操作に対応する処理が完了するとＳ１８０６に戻り、次のユーザ操作が検知されるのを待つ。
【００６８】
Ｓ１８０８では、検知されたユーザ操作が、プレビュー領域１００２内のいずれかの文字領域へのタッチ操作であったかどうかが判定される。具体的には、まず、タッチされた位置の座標をスキャン画像の座標に対応付けて変換する。そして、変換後の座標が、前述の文字認識結果（図１５を参照）の“regions”で特定される各文字領域のうちいずれかの領域内に含まれれば、文字領域へのタッチであると判定する。判定の結果、文字領域へのタッチであればＳ１８１６に進み、文字領域へのタッチでなければＳ１８０９に進む。文字領域へのタッチであった場合のＳ１８１６では、タッチされた文字領域が、既に選択されているかどうかが判定される。タッチされたのが未選択の文字領域の場合はＳ１８１７に進み、タッチされたのが選択済みの文字領域の場合はＳ１８１８に進む。
【００６９】
Ｓ１８１７では、タッチされた文字領域の文字列がファイル名入力欄１００１に追加され、当該文字領域に対して、選択されたことを示す強調表示処理がなされる。この際、ファイル名入力欄１００１に他の文字列が入力されていなければ、そのまま文字列が追加される。そして、当該文字領域をファイル名設定に使用したことが、ファイル名設定時の入力情報として記憶される。一方、ファイル名入力欄１００１に既に他の文字領域の文字列が入力されていた場合は、区切り文字が追加された後、タッチされた文字領域の文字列が追加される。この場合、当該文字領域をファイル名設定に使用したこと事実に加え、「第１の文字領域」、「区切り文字」、「第２の文字領域」といったように、文字列間に区切り文字を挿入したことも記憶される。図２４は、「見積書」と文字認識された文字領域が最初に選択され、続いて「下丸子株式会社」と文字認識された文字領域が選択された場合のファイル設定画面１０００を示した図である。ファイル名入力欄１００１には、タッチした文字領域の順に対応する２つの文字列が入力されており、当該２つの文字列の間にセパレータとしてのアンダースコアが入力されている。
【００７０】
Ｓ１８１８では、タッチされた文字領域の文字列がファイル名入力欄１００１から削除され、当該文字領域についての選択されたことを示す強調表示が取り消され、選択されていないことを示す通常表示の状態に戻る。また、その文字列に区切り文字が付いていた場合は、当該区切り文字も一緒に削除される。例えば、初期ファイル名の生成に用いたファイル名構成が［「第１の文字領域」、「区切り文字」、「第２の文字領域」］であったとする。この場合において、「第１の文字領域」となっている文字領域をユーザがタッチした場合は、当該第１の文字領域の文字列と一緒に区切り文字も削除され、ファイル名入力欄１００１には「第２の文字領域」の文字列のみが残ることになる。
【００７１】
検知されたユーザ操作が文字領域へのタッチでなかった場合のＳ１８０９では、検知されたユーザ操作が、プレビュー領域１００２内でのスワイプ操作であったかどうかが判定される。スワイプ操作が検知された場合はＳ１８１９に進み、そうでなければＳ１８１０に進む。
【００７２】
Ｓ１８１９では、プレビュー領域１００２に表示する画像部分をスワイプされた方向に移動させる処理が実行される。具体的には、ユーザがタッチパネル上で指を動かした移動量に応じて、プレビュー領域１００２に表示する画像部分を更新する。この処理は、プレビュー領域１００２内の文字領域以外の領域でのタッチ操作を検知した場合に限定して行ってもよい。また、文字領域へのタッチ操作であった場合もその後のユーザが指を移動させた量に応じて文字領域へのタッチとして扱わずにスワイプ操作として扱ってもよい。
【００７３】
Ｓ１８１０では、検知されたユーザ操作が、拡大ボタン１００４又は縮小ボタン１００５の押下であったかどうかが判定される。拡大ボタン１００４又は縮小ボタン１００５の押下であった場合はＳ１８２０に進み、そうでなければＳ１８１１に進む。
【００７４】
Ｓ１８２０では、プレビュー領域１００２に表示中の画像部分を、拡大又は縮小する処理が実行される。具体的には、拡大ボタン１００４が押下されていた場合はスキャン画像の変倍率を一定量増やし、縮小ボタン１００５が押下されていた場合はスキャン画像の変倍率を一定量減らす処理がなされる。ここでの一定量は任意であるが、例えば現状の倍率を基準として１０％程度である。この際、一定量の拡大又は縮小を行うまでの間に、初期変倍率が存在したり、スキャン画像の幅／高さとプレビュー領域１００２の幅／高さとが一致する倍率が存在したときは、その倍率で留めてもよい。なお、プレビュー領域１００２内にスキャン画像全体が収まる倍率（最小倍率）未満は縮小されず、最小の文字領域が一定サイズの大きさになる倍率（最大倍率）以上には拡大できないように制御される。
【００７５】
Ｓ１８１１では、検知されたユーザ操作が、復帰ボタン１００６の押下であったかどうかが判定される。復帰ボタン１００６の押下であった場合はＳ１８２１に進み、そうでなければＳ１８１２に進む。
【００７６】
Ｓ１８２１では、プレビュー領域１００２を初期表示状態に戻す処理が実行される。具体的には、プレビュー領域１００２に表示するスキャン画像の変倍率をＳ１８０２で決定した初期変倍率に戻し、さらに、プレビュー領域１００２への表示部分をＳ１８０３で決定した初期表示部分に戻す処理がなされる。この際、初期変倍率や初期表示部分の調整がなされていた場合には、当該調整後の初期変倍率や初期表示部分に戻すのが望ましい。
【００７７】
Ｓ１８１２では、検知されたユーザ操作が、ファイル名入力欄１００１に入力されている文字列へのタッチ操作であったかどうかが判定される。この際、ファイル名入力欄１００１に入力されている文字列の後ろの空白領域に対してのタッチ操作が検知された場合は、最後尾の文字列へのタッチ操作と扱えばよい。ファイル名入力欄１００１に入力されている文字列へのタッチ操作であればＳ１８２２に進み、そうでなければＳ１８１３に進む。
【００７８】
Ｓ１８２２では、タッチ操作がなされた文字列が入力エリア２２０１に入力された状態の編集用ソフトキーボードが操作部２２０に表示される。いま、ファイル名設定画面１０００が図２４に示す状態であったと仮定する。この状態下で、ファイル名入力欄１００１の「見積書」の文字列へのタッチ操作が検知された場合は、ソフトキーボードの入力エリア２２０１に「見積書」の文字列が入力された状態のソフトキーボード２２００が表示されることになる。また、「下丸子株式会社」の文字列へのタッチ操作或いはその後ろの空白領域へのタッチ操作が検知された場合は、末尾の文字列である「_下丸子株式会社」の文字が入力エリア２２０１に入力された状態のソフトキーボード２２００が表示されることになる。なお、ソフトキーボード２２００の操作は一般的なキーボードの操作と同じであるためその説明を省略する。続くＳ１８２３は、ユーザ操作の有無の監視処理である。ソフトキーボード２２００におけるＯＫボタン２２０２の押下の有無を所定間隔でチェックし、ＯＫボタン２２０２の押下が検知されればＳ１８２４に進む。なお、ＯＫボタン以外のキーが押下された場合は、当該押下されたキーに応じて、入力エリア２２０１に表示されている文字列の編集が行なわれることになる。例えば、ユーザは、ソフトキーボード２２００を用いて、文字認識処理で誤認識していた文字列の修正を行うことができる。
【００７９】
Ｓ１８２４では、区切り文字を削除する変更が行われたかかが判定される。本実施形態ではこの判定は、Ｓ１８１２でタッチされた文字列がＳ１８２２で区切り文字とともに表示された場合にのみ行なわれ、区切り文字とともに表示されなかった文字列については、区切り文字の削除が行われなかったものとして扱うものとする。すなわち、Ｓ１８２２で文字列の先頭に区切り文字が付与された状態で表示された場合、ＯＫボタン２２０２が押下された時点で、文字列の先頭に区切り文字が存在するかどうかに基づいて、区切り文字を削除するような文字列の編集が行われたか判定する。例えば、Ｓ１８１２で「下丸子株式会社」の文字列へのタッチ操作がなされると、上述のとおりソフトキーボード２２００の入力エリア２２０１には区切り文字が先頭に付された「_下丸子株式会社」の状態で表示される。そこで、先頭に区切り文字が残っているかどうかをチェックすることで、区切り文字の削除が行われたかどうかを判定する。また、Ｓ１８１２で「見積書」の文字列へのタッチ操作がなされると、上述のとおり入力エリア２２０１には「見積書」が表示されるので、この場合は、区切り文字を削除する変更は行われなかったものとして扱う。
なお、上述した例では、Ｓ１８１２でタッチされた文字列の前に区切り文字が存在する場合に、Ｓ１８２２で、区切り文字が先頭に付された文字列が入力エリア２２０１に表示されるものとして説明したが、これに限るものではない。例えば、Ｓ１８１２でタッチされた文字列の後ろに区切り文字が存在する場合に、Ｓ１８２２で、当該タッチされた文字列の後ろに区切り文字を付して入力エリア２２０１に表示するように構成した場合も、Ｓ１８２４で同様の判定を行うことができる。すなわち、図２４の例で「見積書」の文字列へのタッチ操作に応じてソフトキーボード２２００の入力エリア２２０１に「見積書_」のように末尾に区切り文字を付して表示するように構成した場合について説明する。この場合は、本ステップＳ１８２４において末尾に区切り文字が残っているかどうかをチェックすることで、区切り文字の削除が行われたかどうかを判定すればよい。
【００８０】
Ｓ１８２４で区切り文字の削除が行われたと判定された場合はＳ１８２５に進む。そして、Ｓ１８２５では、区切り文字がファイル名から削除されたことが記憶される。例えば、初期ファイル名の生成に用いたファイル名構成が［「第１の文字領域」、「区切り文字」、「第２の文字領域」］であったとする。この時に、ファイル名入力欄１００１における「第２の文字領域」に対応する文字列をタッチし、ソフトキーボード２２００を使用して区切り文字を削除すると、変更後のファイル名構成は［「第１の文字領域」、「第２の文字領域」］となる。そして、この変更後のファイル名構成の情報が保持されることになる。続くＳ１８２６では、ファイル名に区切り文字を追加する変更が行われたかかが判定される。区切り文字の追加が行われたと判定された場合はＳ１８２７に進む。そして、Ｓ１８２７では、区切り文字がファイル名に追加されたことが記憶される。例えば、初期ファイル名の生成に用いたファイル名構成が［「第１の文字領域」、「第２の文字領域」］であったとする。この時に、ファイル名入力欄１００１における「第２の文字領域」に対応する文字列をタッチし、ソフトキーボード２２００を使用して区切り文字を先頭に追加すると、変更後のファイル名構成は［「第１の文字領域」、「区切り文字」、「第２の文字領域」］となる。そして、この変更後のファイル名構成の情報が保持されることになる。
【００８１】
そして、Ｓ１８２８では、操作部２２０の表示画面が、ソフトキーボード２２００からファイル名設定画面１０００に戻された上で、変更後の内容にファイル名が修正される。この際、修正を行った文字列に対応する文字領域がプレビュー領域１００２の中央にくるようにスキャン画像の表示部分を変更してもよい。なお、ファイル名に使用されている文字列の一部が修正されても、ファイル名構成が変わっていなければ、ファイル名構成の情報が新たに保持されることはない。ただし、ある文字列に含まれる全ての文字を削除する修正を行った場合はファイル名構成も変わる。よってこの場合にも（フローチャートでは省略しているが、）、変更後のファイル名の構成情報が保持されることになる。例えば、初期ファイル名の生成に用いたファイル名構成が［「第１の文字領域」、「区切り文字」、「第２の文字領域」］であったとする。この時に、ファイル名入力欄１００１における「第２の文字領域」に対応する文字列をタッチし、ソフトキーボード２２００を使用してすべての文字を削除したとする。この場合、不要となった区切り文字も削除されて変更後のファイル名構成は［「第１の文字領域」］に変わるので、当該変更後のファイル名構成の情報が保持されることになる。
【００８２】
Ｓ１８１３では、検知されたユーザ操作が、文字列が入力されていない状態の空欄のファイル名入力欄１００１へのタッチ操作であったかどうかが判定される。空欄のファイル名入力欄１００１へのタッチ操作であればＳ１８２９に進み、そうでなければＳ１８１４に進む。
【００８３】
Ｓ１８２９では、入力エリア２２０１に何も入力されていない状態の文字列追加用ソフトキーボードが操作部２２０に表示される。続くＳ１８３０は、ユーザ操作の有無の監視処理である。ソフトキーボード２２００におけるＯＫボタン２２０２の押下の有無を所定間隔でチェックし、ＯＫボタン２２０２の押下が検知されればＳ１８３１に進む。そして、Ｓ１８３１では、操作部２２０の表示画面が、ソフトキーボード２２００からファイル名設定画面１０００に戻された上で、入力された文字列がファイル名に追加される。
【００８４】
Ｓ１８１４では、検知されたユーザ操作が、削除ボタン１００３の押下であったかどうかが判定される。削除ボタン１００３の押下であった場合はＳ１８３２に進み、そうでなければＳ１８１５に進む。Ｓ１８３２では、ファイル名入力欄１００１に入力されている文字列のうち末尾の文字列が削除される。例えば、初期ファイル名の生成に用いたファイル名構成が［「第１の文字領域」、「区切り文字」、「第２の文字領域」でれば、削除ボタン１００３の押下によって「第２の文字領域」に対応する文字列が削除される。この結果、削除後のファイル名構成は［「第１の文字領域１］となり、ファイル名は「第１の文字領域」に対応した文字列のみとなる。この際、削除された文字列に対応する文字領域については、プレビュー領域１００２において非選択を示す状態に戻される。そして、変更後のファイル名構成の情報が保持されることになる。
【００８５】
Ｓ１８１５では、検知されたユーザ操作が、送信ボタン１００７の押下であったかどうかが判定される。送信ボタン１００７の押下であった場合は、本処理を終了し、図１２のフローチャートのＳ１２１０に進む。
【００８６】
以上が、Ｓ１２０９にて実行されるファイル名設定処理の内容である。
【００８７】
＜変形例１＞
上述のＳ１８０２（初期変倍率の決定）において、最も左の文字領域と最も右の文字領域とに基づき決定した初期変倍率に従うと、プレビュー表示される各文字領域の高さ平均が所定の閾値未満となる場合は、所定の閾値以上となるように初期変倍率を変更してもよい。この場合において、「高さの平均」は、全文字領域についての平均でもよいし、一部の文字領域についての平均でもよい。一部の文字領域についての平均の例としては、決定された初期変倍率にてプレビュー領域１００２に表示されることになる文字領域の高さの平均や、スキャン画像の特定部分（例えば上半分）の文字領域の高さの平均などが挙げられる。具体例を説明する。いま、最も左の文字領域の左端と最も右の文字領域の右端との間隔（幅）が2000px、プレビュー領域１００２の幅が800px、所定の閾値が15pxであったとする。ここで、全文字領域の高さの平均が60pxであった場合に算出される初期変倍率は0.4(=800÷2000)であり、全文字領域の高さの平均は24px(=60×0.4)で所定の閾値未満ではないため0.4がそのまま初期変倍率となる。一方、全文字領域の高さの平均が30pxであった場合には、全文字領域の高さの平均は12px(=30×0.4)となる。この場合、所定の閾値未満となるため、全文字領域の高さの平均が所定の閾値以上（ここでは閾値と同じ値）になるように、初期変倍率を0.5(=0.4×15÷12)に変更する。図２５に、文字領域の高さの平均が閾値を満たせずに初期変倍率を調整した場合の、スキャン設定画面１０００の初期表示の一例を示す。この例では、初期変倍率の値を大きくする調整を行った後、Ｓ１８０３において最も左の文字領域の左端と最も上の文字領域の上端に合わせて表示部分が決定されている。その結果、帳票の右側に相当する領域が表示部分に含まれなくなるが、プレビュー領域１００２内に存在する各文字領域については視認性が確保されることになる。
【００８８】
＜変形例２＞
上述のＳ１８０３（初期表示部分の決定）において、初期ファイル名に使用した文字領域が複数ある場合は、使用した文字領域のうち一番上にある文字領域がプレビュー領域１００２に表示されるようにしてもよい。また、各文字領域における文字列の意味種別を判断し、ファイル名に使用する可能性の高い文字領域がプレビュー領域１００２内に表示されるように表示部分を調整してもよい。また、予め指定した文字領域の数分の文字領域がプレビュー領域１００２に表示されるように、表示部分を決定してもよい。さらに、初期ファイル名に使用する文字列の文字領域のうち、一番上にある文字領域と一番下にある文字領域の中間地点が、プレビュー領域１００２の中央にくるように表示部分を決定してもよい。
【００８９】
＜変形例３＞
上述のＳ１８０５（操作ガイダンスの表示）において、類似帳票のファイル名構成に従った初期ファイル名がファイル名入力欄１００１に自動入力されている場合、当該初期ファイル名に使用されている文字列の文字領域に重ならないように表示してもよい。この際、初期ファイル名に使用されている文字列が複数存在し、それらの文字領域に対して重ならないように表示することが困難な場合も考えられる。このような場合には、初期ファイル名の先頭にある文字列の文字領域を優先し、末尾にある文字列の文字領域の一部又は全部に重ねて表示してもよい。また、初期ファイル名以外の文書プロパティ、例えばメタデータなどを設定する場合には、その文書プロパティのタイプに応じて操作ガイダンスの重なりを避ける文字領域を判定し、操作ガイダンスの表示位置を決めてもよい。例えば、タイプが日付型の文書プロパティに値をセットする場合であれば、対象文書における日付の文字領域には重ならないように操作ガイダンスを表示する。このとき、各文字領域に対応する文字列が日付かどうかは、スキャン画像から抽出された文字列が特定の文字配列に当て嵌るかによって判断する。例えば、yy/mm/ddの形式における、「yy」、「mm」、「dd」のそれぞれに数字が入る場合は、日付であると判断することができる。
【００９０】
＜変形例４＞
上述のＳ１８２２（編集用ソフトキーボードの表示）において、入力エリア２２０１内に、タッチされた文字列を入力状態にして表示するのに代えて、ファイル名全体を入力状態にして表示してもよい。この場合、編集対象をユーザが誤認しないよう、他の文字列と区別する強調表示（色を変える、枠を付すなど）を行ったり、カーソルをその末尾に表示するなどし、編集対象の範囲が分かるように表示する。また、ファイル名入力欄１００１に入力されている文字列に対するタッチ操作に応答して編集用ソフトキーボードを表示するのに代えて、さらに追加的なユーザ操作（例えば不図示の専用ボタンの押下）を待って編集用ソフトキーボードを表示するようにしてもよい。
【００９１】
＜変形例５＞
また、本実施形態の説明では、ユーザによる文字領域へのタッチ操作が検出された場合には、タッチされた文字領域の文字列をファイル名に追加或いは削除する処理（Ｓ１８１７、Ｓ１８１８）が実行される。しかしながら、システムの応答が遅く、タッチ操作を検知してからその対象文字列の追加や削除がファイル名に反映されるまでに時間が掛かることがある。この場合、ユーザは自身のタッチ操作にシステムが反応していないと勘違いし、何度も同じ文字領域に対してタッチ操作を繰り返すことが考えられる。こうなると、同じ文字領域の文字列の追加と削除が繰り返し行われて、ユーザが所望する状態で止めることができない場合がありうる。例えば、削除対象の文字列を複数回タッチすると、削除対象の文字列が再入力されたりといったことが起こり得る。そこで、追加・削除処理中に同じ文字領域に対するタッチ操作が繰り返し行われないよう、追加・削除処理が完了するまでは同じ文字領域に対する新たな追加・削除のためのタッチ操作を受け付けないようにしてもよい。この際、処理中であることを示すメッセージの表示を併せて行うようにしてもよい。これにより、ファイル名設定時の入力操作において、ユーザが意図しない文字列の追加や削除が実行されてしまうのを防ぐことができる。
【００９２】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１】
2020177523.tif 000004
【図２】
2020177523.tif 000005
【図３】
2020177523.tif 000006
【図４】
2020177523.tif 000007
【図５】
2020177523.tif 000008
【図６】
2020177523.tif 000009
【図７】
2020177523.tif 000010
【図８】
2020177523.tif 000011
【図９】
2020177523.tif 000012
【図１０】
2020177523.tif 000013
【図１１】
2020177523.tif 000014
【図１２】
2020177523.tif 000015
【図１３】
2020177523.tif 000016
【図１４】
2020177523.tif 000017
【図１５】
2020177523.tif 000018
【図１６】
2020177523.tif 000019
【図１７】
2020177523.tif 000020
【図１８】
2020177523.tif 000021
【図１９】
2020177523.tif 000022
【図２０】
2020177523.tif 000023
【図２１】
2020177523.tif 000024
【図２２】
2020177523.tif 000025
【図２３】
2020177523.tif 000026
【図２４】
2020177523.tif 000027
【図２５】
2020177523.tif 000028