(57)【要約】      （修正有）【課題】文字認識処理を実行するモバイルデバイスごとに適した辞書を利用できる文字認識システムを提供する。【解決手段】文字認識システムが備えるモバイルデバイスは、撮影した画像に対して文字認識処理を実行し、該画像に含まれる文字列を取得し、文字列に対して修正が必要な場合に、該文字列の正解文字列をユーザから受け付け、文字列が取得された画像および正解文字列をサーバに送信する。サーバは、モバイルデバイスから送信された画像に対して、管理する字形辞書ごとに文字認識処理を実行し、実行された文字認識処理の結果とモバイルデバイスから送信された正解文字列とを用いて管理する辞書ごとに正解率を求め、該正解率が最も高くなる辞書をモバイルデバイスに送信する。モバイルデバイスは、次に文字認識処理を実行する際に、サーバから送信された辞書を用いる。【選択図】図７
2018116372.tif 000002
【特許請求の範囲】
【請求項１】
文字認識処理を実行する携帯端末と、文字認識処理に用いる辞書を管理するサーバ装置と、を備える文字認識システムであって、
前記携帯端末は、
撮影した画像に対して前記文字認識処理を実行し、該画像に含まれる文字列を取得する取得手段と、
前記文字列に対して修正が必要な場合に、該文字列の正解文字列を受け付ける受け付け手段と、
前記文字列が取得された前記画像および前記正解文字列を前記サーバ装置に送信する送信手段と、
前記サーバ装置から送信された辞書を受信する受信手段と、を備え、
前記取得手段は、次に文字認識処理を実行する際に、前記送信された辞書を用い、
前記サーバ装置は、
前記携帯端末から送信された前記画像に対して、前記管理する辞書ごとに文字認識処理を実行する実行手段と、
前記実行された文字認識処理の結果と前記携帯端末から送信された正解文字列とを用いて前記管理する辞書ごとに正解率を求め、該正解率が最も高くなる辞書を選択する選択手段と、
前記選択された辞書を前記携帯端末に送信する送信手段と、を備える、
ことを特徴とする文字認識システム。
【請求項２】
前記携帯端末が備える送信手段は、前記文字列が修正されない場合に、該文字列が取得された前記画像および正解文字列として該文字列を送信する、
ことを特徴とする請求項１に記載の文字認識システム。
【請求項３】
前記携帯端末は、前記文字認識処理に用いる辞書を優先度付きで管理する管理手段をさらに備え、
前記管理手段は、前記サーバ装置から受信された辞書の前記優先度を最も高く設定する、
ことを特徴とする請求項１または２に記載の文字認識システム。
【請求項４】
前記管理手段は、前記文字認識処理に用いる辞書の個数に応じて前記辞書を前記優先度付きで管理する、
ことを特徴とする請求項３に記載の文字認識システム。
【請求項５】
前記携帯端末は、前記取得手段が前記文字認識処理に用いた辞書とは異なる、前記携帯端末が有する他の辞書を用いた文字認識処理の再実行を指示する指示手段をさらに有する、
ことを特徴とする請求項１乃至４のいずれか１項に記載の文字認識システム。
【請求項６】
前記サーバ装置が備える選択手段は、前記管理する辞書に対して所定の個数の辞書の組み合わせを生成し、前記実行された辞書ごとの文字認識処理の結果に基づき、前記辞書の組み合わせごとの正解率を求め、前記正解率が最も高くなる前記辞書の組み合わせを選択し、
前記サーバ装置が備える送信手段は、前記選択された辞書の組み合わせを前記携帯端末に送信する、
ことを特徴とする請求項１乃至５のいずれか１項に記載の文字認識システム。
【請求項７】
前記携帯端末が備える取得手段は、前記文字認識処理のレスポンスに要する時間に応じて、該文字認識処理に用いる辞書の個数を決定する、
ことを特徴とする請求項１乃至６のいずれか１項に記載の文字認識システム。
【請求項８】
前記携帯端末が備える取得手段は、該携帯端末がオートシャッタ機能を用いて画像を撮影する場合、前記文字認識処理のレスポンスに要する時間が短いと判断して、該文字認識処理に用いる辞書の個数を１と決定する、
ことを特徴とする請求項７に記載の文字認識システム。
【請求項９】
前記携帯端末が備える取得手段は、前記文字認識処理に複数の辞書を用いる場合、
前記撮影した画像に対して前記複数の辞書をそれぞれ用いて文字認識処理を実行し、該画像に含まれる文字列および該文字列の信頼度を取得し、
前記信頼度が最も高い文字列を前記撮影した画像に含まれる文字列として取得する、
ことを特徴とする請求項１乃至８のいずれか１項に記載の文字認識システム。
【請求項１０】
文字認識処理を実行する携帯端末と、文字認識処理に用いる辞書を管理するサーバ装置と、を備える文字認識システムの制御方法であって、
前記携帯端末が、撮影した画像に対して前記文字認識処理を実行し、該画像に含まれる文字列を取得し、
前記携帯端末が、前記文字列に対して修正が必要な場合に、該文字列の正解文字列を受け付け、
前記携帯端末が、前記文字列が取得された前記画像および前記正解文字列を前記サーバ装置に送信する送信手段と、
前記サーバ装置が、前記携帯端末から送信された前記画像に対して、前記管理する辞書ごとに文字認識処理を実行し、
前記サーバ装置が、前記実行された文字認識処理の結果と前記携帯端末から送信された正解文字列とを用いて前記管理する辞書ごとに正解率を求め、該正解率が最も高くなる辞書を選択し、
前記サーバ装置が、前記選択された辞書を前記携帯端末に送信し、
前記携帯端末が、前記サーバ装置から送信された辞書を受信し、
前記携帯端末が、次に文字認識処理を実行する際に、前記送信された辞書を用いる、
ことを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文字認識システム、および文字認識システムの制御方法に関する。
【背景技術】
【０００２】
一般的な活字文字認識（文字認識）では、文字の特徴量を利用する技術が広く利用されている。文字の特徴量とは、文字の形状情報を抽象化した情報であり、活字の各文字のエッジ特徴などを利用して生成される。文字の字形の特徴量は、標準的な活字字形に基づき抽出されることが多い。標準的な活字字形としては、例えば、Ａｒｉａｌ（Ｓａｎｓ  Ｓｅｒｉｆ系書体）やＴｉｍｅｓ  Ｎｅｗ  Ｒｏｍａｎ（Ｓｅｒｉｆ系書体）、日本語であれば明朝体、ゴシック体といった、活字印刷で一般的に使用されるフォント書体のことである。
【０００３】
字形の特徴量を複数の文字について集め、その集合を字形辞書として備え、文字認識の際に文字認識システムが該字形辞書を参照する仕組みが考えられる。上述した標準的な字形を利用した文書では、実際に印字されている文字は、文字認識用の基準となる字形から多少の逸脱があっても、概ね良い認識率を得ることができる。一方、特徴的な字形で表現された文字列は、標準的な認識用の字形で設計された文字認識システムでは、認識率が落ちてしまう。
【０００４】
例えば、Ａｒｉａｌの文字認識用の字形辞書を用いて、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓの標準フォントのひとつであるＩｍｐａｃｔを使用した文字列を正確に認識することは困難である。このような、文字認識において標準的に用いられる字形とは異なる字形を、本明細書では「特徴的な字形」と称する。
【０００５】
特許文献１は、公衆網を介して端末文字認識装置と接続されたセンターマシンが、端末文字認識装置から受信した学習データを用いて再学習を行い、認識辞書を更新する文字認識システムが開示されている。特許文献１では、センターマシンが更新した認識辞書を、学習データを送信してきた端末文字認識装置に送信することが記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平０８−１８０１４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
スマートフォン等のカメラ付きモバイルデバイスにおいて、撮影した画像（撮影画像）の文字認識を行うことを考える。このとき、撮影画像上の文字の字形に適した字形辞書を用いることにより高い認識精度を得られる。しかしながら、特徴的な字形の文字が認識対象の場合、特許文献１のように既存の辞書の再学習により複数の字形を包含した辞書を作成するよりも、認識対象の字形ごとに適した辞書を使い分ける方が認識精度を高めることができる。
【０００８】
また、特徴的な字形に限らず、モバイルデバイスにおいて認識対象とする字形が多様な場合についても、既存の辞書の再学習により複数の字形を包含した辞書を作成するよりも、認識対象の字形ごとに適した辞書を都度使い分ける方が認識精度を高めることができる。
【０００９】
しかし、ユーザが認識対象の文字の字形を見極めて、適切な辞書を選択するには高度な知識を要し、容易ではない。また、使用するモバイルデバイスの処理速度などの性能を考慮する必要がある。例えば、多数の辞書をモバイルデバイスに保存しておき、文字認識を行う際に全ての辞書を利用して最も信頼度の高い結果を採用することは、処理レスポンスを遅延させるため、現実的ではない。
【００１０】
本発明は、文字認識処理を実行するモバイルデバイスごとに適した辞書を利用できる文字認識システムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明の一実施形態の文字認識システムは文字認識処理を実行する携帯端末と、文字認識処理に用いる辞書を管理するサーバ装置と、を備える。前記携帯端末は、撮影した画像に対して前記文字認識処理を実行し、該画像に含まれる文字列を取得する取得手段と、前記文字列に対して修正が必要な場合に、該文字列の正解文字列を受け付ける受付手段と、前記文字列が取得された前記画像および前記正解文字列を前記サーバ装置に送信する送信手段と、前記サーバ装置から送信された辞書を受信する受信手段と、を備え、前記取得手段は、次に文字認識処理を実行する際に、前記送信された辞書を用いる。前記サーバ装置は、前記携帯端末から送信された前記画像に対して、前記管理する辞書ごとに文字認識処理を実行する実行手段と、前記実行された文字認識処理の結果と前記携帯端末から送信された正解文字列とを用いて前記管理する辞書ごとに正解率を求め、該正解率が最も高くなる辞書を選択する選択手段と、前記選択された辞書を前記携帯端末に送信する送信手段と、を備える。
【発明の効果】
【００１２】
本発明の文字認識システムは、文字認識処理を実行するモバイルデバイスごとに適した辞書を利用できる。
【図面の簡単な説明】
【００１３】
【図１】文字認識システムの全体構成を示す図である。
【図２】サーバのハードウェア構成例を示す図である。
【図３】モバイルデバイスのハードウェア構成例を示す図である。
【図４】サーバおよびモバイルデバイスの機能構成を示す図である。
【図５】モバイルデバイスのアプリケーションの利用例を示す図である。
【図６】モバイルデバイスのアプリケーションの処理を示す図である。
【図７】サーバ上で動作する処理サービスの処理を示す図である。
【図８】サーバのバッチ処理の詳細を示す図である。
【図９】モバイルデバイスが字形辞書を受信した際の処理を示す図である。
【図１０】字形辞書に関する情報の一例を示す図である。
【図１１】モバイルデバイスのアプリケーションで表示される操作画面の一例である。
【図１２】モバイルデバイスのアプリケーションの処理を示す図である。
【図１３】サーバのバッチ処理の詳細を示す図である。
【図１４】サーバのカバレッジ処理の詳細を示す図である。
【図１５】字形辞書に関する情報の一例を示す図である。
【図１６】モバイルデバイスが字形辞書を受信した際の処理を示す図である。
【図１７】モバイルデバイスが字形辞書を受信後に実行する処理を示す図である。
【発明を実施するための形態】
【００１４】
以下、本発明を実施するための形態について図面などを参照して説明する。
【００１５】
（第１実施形態）
図１は、本発明の一実施形態における文字認識システムの全体構成を示す図である。
文字認識システムでは、サーバ１０１とモバイルデバイス（携帯端末）１０２〜１０４とがネットワーク１０５を介して接続されている。サーバ１０１は、クラウドコンピューティングにより実現するよう構成しても良い。
【００１６】
すなわち、サーバ１０１は、インターネットなどの外部ネットワークに接続する情報処理装置であって、自装置で行われるコンピュータ処理をネットワーク経由でサービスとしてクライアントに対して提供してもよい。サーバ１０１は、複数台の装置により構成されていてもよい。また、図１では、３台のモバイルデバイス１０２〜１０４を図示しているが、文字認識システムは、任意の数のモバイルデバイス１０２を含みうる。ネットワーク１０５は、インターネットやローカルエリアネットワークで実現される。
【００１７】
図２は、サーバ１０１のハードウェア構成例を示す図である。サーバ１０１は、ＣＰＵ２０１、メモリ２０２、通信部２０３、およびＨＤＤ（ハードディスクドライブ）２０４を備え、各構成要素はバスで接続されている。ＣＰＵ２０１は、メモリ２０２またはＨＤＤ２０４に保存されたプログラムを実行してサーバ１０１の各構成要素を制御する。
【００１８】
メモリ２０２は、ＣＰＵ２０１のワークメモリであり、処理中のデータやプログラムを保存する。ＨＤＤ２０４は、記憶装置であり、例えば、字形辞書および情報処理用のデータを保存する。例えば、ＣＰＵ２０１は、後述する字形辞書およびデータを利用したバッチ処理や、字形辞書の送信等を制御する。通信部２０３は、ネットワーク１０５を介してモバイルデバイス１０２〜１０４と通信を行う。
【００１９】
図３は、モバイルデバイス１０２〜１０４のハードウェア構成例を示す図である。
ここでは、モバイルデバイス１０２のハードウェア構成例について説明するが、モバイルデバイス１０３および１０４についても同様である。モバイルデバイス１０２は、ＣＰＵ３０１、メモリ３０２、カメラ３０３、通信部３０４、ＳＳＤ（ソリッドステートドライブ）、および表示部３０６を備え、各構成要素は、バスで接続されている。
【００２０】
ＣＰＵ３０１は、メモリ３０２またはＳＳＤ３０５に保存されたプログラムを実行してモバイルデバイス１０２の各構成要素を制御する。これにより、図４（Ｂ）に示すモバイルデバイス１０２を構成する各機能ブロック、および後述するフローチャートにおける処理が実現される。メモリ３０２は、ＣＰＵ３０１のワークメモリであり、処理中のデータやプログラムを保存する。
【００２１】
カメラ３０３は、撮影を行う。通信部３０４は、ネットワーク１０５を介してサーバ１０１と通信を行う。ＳＳＤ３０５は、記憶装置であり、例えば、字形辞書、情報処理用データ、および撮影画像等を保存する。表示部３０６は、種々の画面を表示する。また、表示部３０６は、ユーザによる入力操作を受け付ける。例えば、表示部３０６は、ユーザによる入力操作を受け付ける各種ボタンやタッチパネル等を含みうる。
【００２２】
図４（Ａ）は、サーバ１０１上で動作する処理サービスの機能構成を示す図である。
サーバ１０１は、制御部４００、データ保存部４０１、バッチ処理部４０２、字形辞書格納部４０３、文字認識部４０４、字形辞書配信処理部４０５、および通信部４０６を備える。図４（Ａ）に示す各機能ブロック４００〜４０６は、サーバ１０１のＣＰＵ２０１が、ＨＤＤ２０４等に格納されたプログラムを読み出して実行することにより実現される。
【００２３】
制御部４００は、サーバ１０１の各機能ブロックの動作を制御する。データ保存部４０１は、モバイルデバイス１０２〜１０４から送信されるデータやサーバ１０１にて処理済みのデータ等を保存する。バッチ処理部４０２は、バッチ処理を実行する。バッチ処理の詳細については、図８を用いて後述する。
【００２４】
字形辞書格納部４０３は、字形辞書を管理する。字形辞書格納部４０３は、複数の字形辞書を管理しており、標準的な活字字形の辞書や、例えば、文字認識システムにおいて使用されうる特徴的な字形に対する字形辞書を複数含みうる。文字認識部４０４は、文字認識処理を行う。字形辞書配信処理部４０５は、字形辞書の配信処理を行う。通信部４０６は、ネットワーク１０５との通信を行う。
【００２５】
図４（Ｂ）は、モバイルデバイス１０２〜１０４上で動作するアプリケーションソフトウェアの機能構成を示す図である。
ここでは、モバイルデバイス１０２の機能構成について説明するが、モバイルデバイス１０３および１０４についても同様である。モバイルデバイス１０２は、制御部４１０、カメラ制御部４１１、文字認識部４１２、字形辞書格納部４１３、表示部４１４、入力部４１５、および通信部４１６を備える。
【００２６】
制御部４１０は、各機能ブロックの動作を制御する。カメラ制御部４１１は、カメラ３０３による撮影を制御する。文字認識部４１２は、撮影画像から文字認識処理を行う。字形辞書格納部４１３は、サーバ１０１から配信された、文字認識処理に使用する字形辞書を保存する。表示部４１４は、モバイルデバイス１０２の情報表示を行う。入力部４１５は、ユーザによる操作を受け付け、処理する。通信部４０６は、ネットワーク１０５との通信を行う。
【００２７】
図５は、一実施形態におけるモバイルデバイスのアプリケーションの利用例を示す図である。
被写体５０１は、特徴的な字形でデザインされたフォントで印刷または刻印された文字列５０２を有する。該文字列５０２を、モバイルデバイス１０２で撮影することにより、撮影画像５０５が得られる。ユーザは、表示部３０６が備える撮影ボタン５０４を押すなどして被写体を撮影する。
【００２８】
文字列５０６は、モバイルデバイス１０２上で動作するアプリケーションソフトウェアにより、撮影画像５０５に対して文字認識処理が行われた結果を示している。ユーザは、文字列５０６を確認し、必要に応じて修正（訂正）する。ユーザが確認および修正した結果は、サーバ１０１に送信され、その後、サーバ１０１を含めたシステム内で利用される。
【００２９】
例えば、物品のシリアル番号を管理する場合に、Ａ社、Ｂ社、Ｃ社の製品を一元管理することを考える。それぞれの製品（物品）にはシリアル番号が刻印されており、それぞれの会社で刻印の字形が異なる。また、それぞれの会社で刻印される字形は、特徴的な字形が使用されることもありうる。本実施形態に係る文字認識システムでは、これらのシリアル番号をモバイルデバイス１０２のカメラで撮影し、文字認識処理を実行し、シリアル番号を管理するシステムに文字認識処理の結果を提供することができる。
【００３０】
図６は、モバイルデバイス１０２〜１０４上で動作するアプリケーションソフトウェア（アプリケーション）の処理について説明するフローチャートである。
ここでは、ユーザがモバイルデバイス１０２を操作しているものとして説明するが、モバイルデバイス１０３および１０４についても同様である。ステップ６０１で、ユーザは、モバイルデバイス１０２のアプリケーションを起動し、被写体を撮影する。
【００３１】
ステップ６０２で、アプリケーションは、文字認識に用いる字形辞書をＳＳＤ３０５からロードする。アプリケーションの利用開始時には、字形辞書は、文字認識システムで定義されたデフォルトの字形辞書がアプリケーションにバンドルされているものとする。この字形辞書は、標準的な字形に対応したものであり、特徴的な形状の字形に対して文字認識処理を行うには適していない場合が多い。
【００３２】
これに対して、本実施形態では、モバイルデバイス１０２にて実行された文字認識処理の結果に基づいて、該モバイルデバイス１０２に適した字形辞書をサーバ１０１から取得することができる。ステップ６０３で、アプリケーションは、ステップ６０２にてロードされた字形辞書で、撮影画像に含まれる文字（文字列）を認識する。
【００３３】
ステップ６０４で、アプリケーションは、撮影画像上の文字と文字認識処理の結果、認識された文字とが一致するかの確認をユーザに要求する。そして、認識結果に間違いがある場合は、スクリーンキーボード等の表示部３０６を介して文字列の修正をユーザに要求する。ステップ６０５で、アプリケーションは、ステップ６０４にて文字列の修正が行われたか判定する。
【００３４】
文字列の修正が行われた場合、処理はステップ６０６に進み、文字列の修正が行われなかった場合、処理は終了する。ステップ６０６で、アプリケーションは、撮影画像と、修正された正しい文字列、すなわち文字認識処理の正解文字列をサーバ１０１に送信する。サーバ１０１は、ステップ６０６で送信された撮影画像および正解文字列をもとに、アプリケーションに対してより適切な字形辞書を選択する。
【００３５】
図７は、サーバ１０１上で動作する処理サービスについて説明するフローチャートである。
処理サービスは、モバイルデバイス１０２〜１０４から文字認識処理の結果を受信し、該受信した結果に応じて、モバイルデバイス１０２〜１０４ごとに適した辞書を選択し、送信する。
【００３６】
ステップ７０１で、処理サービスは、モバイルデバイス１０２から図６に示したステップ６０６で送信された撮影画像および正解文字列を受信する。なお、撮影画像および正解文字列を受信するまで、処理サービスは待機する。なお、本実施形態では、モバイルデバイス１０２から撮影画像および正解文字列を受信する場合について説明するが、モバイルデバイス１０３および１０４についても同様である。
【００３７】
ステップ７０２で、処理サービスは、ステップ７０１で受信したデータをＨＤＤ２０４に保存する。処理サービスは、受信したデータがどのモバイルデバイスから送信されたものであるかを関連付けて管理する。これは、モバイルデバイスごとに適した辞書を選択するためであり、後述するバッチ処理は、バッチ処理が前回実行されてから次の実行のタイミングまでにサーバ１０１に蓄積された、モバイルデバイスごとの受信データに対して実行される。
【００３８】
ステップ７０３で、処理サービスは、バッチ処理の開始時間か判定する。バッチ処理の開始時間である場合、処理はステップ７０４に進む。バッチ処理の開始時間でない場合、処理はステップ７０１に戻り、処理サービスは、モバイルデバイス１０２〜１０４からデータを受信するまで待機する。本実施形態では、バッチ処理が、例えば、深夜などに定期的に実行されることを想定している。しかし、これに限られるものではなく、ステップ７０３の処理は実行されなくてもよい。
【００３９】
ステップ７０４で、処理サービスは、バッチ処理を開始する。バッチ処理の詳細は、図８を用いて後述する。ステップ７０５で、処理サービスは、バッチ処理により求められた字形辞書ごとの正解率が最も高い字形辞書を、モバイルデバイス１０２から送信された撮影画像に対して正解率が最も良くなる字形辞書として選択する。すなわち、ステップＳ７０５で選択された字形辞書が、モバイルデバイス１０２において最も精度良く文字認識処理を実行できる字形辞書である。
【００４０】
ステップ７０６で、処理サービスは、ステップ７０５で選択した字形辞書をモバイルデバイス１０２に送信する。すなわち、処理サービスは、サーバ１０１が管理している字形辞書の中から、モバイルデバイス１０２の文字認識処理の精度が向上する字形辞書を選択し、該モバイルデバイス１０２に送信する。そして、処理はステップ７０１に戻り、処理サービスは、モバイルデバイス１０２〜１０４からデータを受信するまで待機する。ステップ７０６で送信された字形辞書を受信したモバイルデバイス１０２の処理は、図９を用いて後述する。
【００４１】
図８は、図７に示したサーバ１０１のバッチ処理（ステップ７０４）の詳細を説明するフローチャートである。
バッチ処理では、該バッチ処理が前回実行されてから今回実行するまでの間にモバイルデバイス１０２から送信された全ての撮影画像に対して、サーバ１０１が管理する全ての字形辞書を用いて文字認識処理が実行される。すなわち、モバイルデバイス１０２から送信された撮影画像ごと字形辞書ごとに文字認識処理が実行される。
【００４２】
ステップ８０１で、サーバ１０１の処理サービスは、ステップ７０２でモバイルデバイス１０２から受信した撮影画像のうち、以降のステップの処理の対象とする撮影画像を選択する。ステップ８０２〜８０５の処理は、ステップ７０２でモバイルデバイス１０２〜１０４から受信した撮影画像に対して繰り返し行われる。
【００４３】
ステップ８０２で、処理サービスは、次のステップ８０３の文字認識処理において使用する字形辞書を選択する。処理サービスは、複数の字形辞書をＨＤＤ２０４に保存しており、その中から１つずつ字形辞書を選択し、ステップ８０３〜８０４の処理を繰り返す。ステップ８０３で、処理サービスは、ステップ８０１で選択した撮影画像に対して、ステップ８０２で選択した字形辞書を用いて文字認識処理を行う。
【００４４】
ステップ８０４で、処理サービスは、文字認識処理の結果を一時的にメモリ２０２に保存する。ステップ８０５で、処理サービスは、ＨＤＤ２０４に保存している全ての字形辞書に対して、ステップ８０３〜８０４の処理を終了したか判定する。全ての字形辞書に対して、ステップＳ８０３〜８０４の処理を終了した場合、処理はステップ８０５に進み、終了していない場合、処理はステップ８０２に戻り、次の字形辞書を選択してステップ８０３〜８０４の処理を繰り返す。
【００４５】
ステップ８０６で、処理サービスは、ステップ７０２でモバイルデバイス１０２〜１０４から受信した全ての撮影画像に対して、ステップ８０２〜８０５の処理を終了したか判定する。全ての撮影画像に対して、ステップ８０２〜８０５の処理を終了した場合、処理はステップ８０７に進み、終了していない場合、処理はステップ８０１に戻り、次の撮影画像を選択してステップＳ８０２〜８０５の処理を繰り返す。
【００４６】
ステップ８０６までの処理で、処理サービスは、ステップ７０２でモバイルデバイス１０２〜１０４から受信した全ての撮影画像ごと、およびＨＤＤ２０４に保存している全ての字形辞書ごとの文字認識処理の結果を保存している。ステップＳ８０７で、処理サービスは、全ての撮影画像ごとおよび全ての字形辞書ごとの文字認識処理（ステップ８０４）の結果と、それぞれの撮影画像と対応する、ステップ７０２でモバイルデバイス１０２〜１０４から受信した正解文字列とを比較する。
【００４７】
そして、処理サービスは、全ての撮影画像のそれぞれに対して、字形辞書ごとの文字認識処理の正解率を求める。処理サービスは、文字認識処理の結果、すなわち認識した文字と、正解文字列の対応する文字とが一致している場合、文字認識処理の結果を正解とみなす。
【００４８】
例えば、送信されたある撮影画像に含まれる文字数がのべ１０００文字あり、そのうちの３００文字において文字認識処理の結果と正解文字列の対応する文字とが一致する場合、正解率は３０％である。このように、撮影画像ごと、および字形辞書ごとに正解率が求められる。そして、処理サービスは、字形辞書ごとの全撮影画像に対する正解率を求める。
【００４９】
具体的には、撮影画像ごとおよび字形辞書ごとに求められた正解率を、字形辞書ごとに集計する。そして、字形辞書ごとの平均正解率を求める。例えば、字形辞書Ａの全撮影画像に対する正解率の平均は５０．５％、字形辞書Ｂの全撮影画像に対する正解率の平均は７８．２％、・・・等のように求められる。このように求められた字形辞書ごとの全撮影画像に対する正解率の平均値を、字形辞書ごとの正解率とする。
【００５０】
図９は、モバイルデバイス１０２のアプリケーションが、サーバ１０１が図７のステップ７０６で送信した、文字認識処理に用いる字形辞書を受信した際の処理について説明するフローチャートである。
ステップ９０１で、アプリケーションは、バックグラウンド更新の機構などを利用し、サーバ１０１の処理サービスからステップ７０６で送信された字形辞書を受信する。
【００５１】
ステップ９０２で、アプリケーションは、受信した字形辞書をＳＳＤ３０５に保存する。このとき、受信した字形辞書の優先度を優先度１に設定して保存する。優先度および優先度の保存については、図１０を用いて後述する。ステップ９０３で、アプリケーションは、受信した字形辞書以外の字形辞書がすでにＳＳＤ３０５に保存されているか判定する。受信した字形辞書以外の字形辞書がＳＳＤ３０５に保存されている場合、処理はステップ９０４に進み、保存されていない場合、処理は終了する。
【００５２】
ステップ９０４で、受信した字形辞書以外の字形辞書について、その優先度を１ずつ下げて保存する。このように、サーバ１０１から字形辞書を受信すると、モバイルデバイス１０２は、ＳＳＤ３０５に保存されている字形辞書の情報を更新する。
【００５３】
図１０は、モバイルデバイス１０２〜１０４においてＳＳＤ３０５に保存されている字形辞書に関する情報の一例である。
本実施形態では、字形辞書に関する情報として、図１０に示すＸＭＬ形式のデータでＳＳＤ３０５に保存する。なお、本実施形態では、ＸＭＬ形式を用いるが、データの形式はこれに限定されるものではなく、どのようなものでもよい。
【００５４】
モバイルデバイス１０２〜１０４は、字形辞書に関する情報として、字形辞書の実体であるファイルのファイル名および該字形辞書の優先度を保存する。図１０に示すように、＜ｄｉｃｔｉｏｎａｒｉｅｓ＞タグには、モバイルデバイスがＳＳＤ３０５に保存している字形辞書が列挙されている。各々の字形辞書に関する情報は、＜ｄｉｃｔｉｏｎａｒｙ＞タグそれぞれ保存されている。
【００５５】
詳細には、＜ｄｉｃｔｆｉｌｅ＞タグには、ＡＡＡ．ｄｉｃやＢＢＢ．ｄｉｃなど、字形辞書のファイル名を保存し、該ファイル名と関連付けて、＜ｐｒｉｏｒｉｔｙ＞タグに該字形辞書の優先度を保存する。優先度は、１、２などの数字で表し、優先度が高いほど小さい数字とする。
【００５６】
なお、優先度の表し方はこれに限られるものではない。このように、モバイルデバイス１０２〜１０４は、サーバ１０１におけるバッチ処理（ステップ７０４）によりそれぞれ選択された各モバイルデバイスにおける適切な字形辞書を、優先度の情報とともに複数個保存することができる。図６のステップ６０２でアプリケーションが文字認識に用いるためにロードする字形辞書は、優先度１の字形辞書が選択される。
【００５７】
以上のように、本実施形態によれば、文字認識処理を実行するモバイルデバイスごとに適した辞書を利用できる。モバイルデバイスで実行される文字認識処理で正しく認識されない場合、現在使用している優先度が最も高い字形辞書が、該モバイルデバイスが認識対象とする被写体には適していない可能性がある。
【００５８】
このとき、正しく認識されなかった被写体を含む撮影画像と、正解文字列とをサーバに送信する。サーバは、管理する字形辞書の中から、受信した撮影画像に対して正解率が最も高くなる字形辞書を、該撮影画像を送信したモバイルデバイスにとって適切な字形辞書であるとして、該字形辞書を該モバイルデバイスに送信する。
【００５９】
なお、ステップ８０７で、各字形辞書の文字認識処理の正解率を求める際に、例えば、文字認識処理の結果として１文字に対して複数の文字の候補が導出されることを利用し、下位の文字の候補までを含めて正解率を求めてもよい。
【００６０】
また、ステップ８０７で、各字形辞書の文字認識処理の正解率を求める際に、文字認識処理の結果として出力される文字ごとの信頼度を利用してもよい。信頼度は、１つの文字に対して、例えば、５０％等の数字で表される。信頼度を利用する場合、正解か不正解かの正解率だけでなく、例えば同じ正解率であったとしても、信頼度を加味して結果の確からしさを判断することができる。
【００６１】
（第２実施形態）
図１１は、第２実施形態におけるモバイルデバイスのアプリケーションで表示される文字認識システムの操作画面の一例を示す図である。
本実施形態では、文字認識処理の結果の信頼度が低い場合、他の字形辞書を用いて再度文字認識処理を再実行できる。第１実施形態の操作画面（図５）との差異を説明する。
【００６２】
本実施形態では、モバイルデバイス１０２のアプリケーションは、文字認識処理の結果を表示する画面において、再認識ボタン１１０１を有する。ユーザは、文字列５０６を確認し、再度文字認識処理を実行する場合は、再認識ボタン１１０１を押下する。これにより、ユーザは、モバイルデバイス１０２のアプリケーションに他の字形辞書を用いて、再度文字認識処理を実行するように指示する。
【００６３】
図１２は、本実施形態におけるモバイルデバイス１０２〜１０４上で動作するアプリケーションの処理について説明するフローチャートである。
ステップ１２０１で、ユーザは、モバイルデバイス１０２のアプリケーションを起動し被写体を撮影する。
【００６４】
ステップ１２０２で、アプリケーションは、文字認識に用いる字形辞書をＳＳＤ３０５からロードする。このとき、アプリケーションは、優先度が最も高い字形辞書をＳＳＤ３０５からロードする。字形辞書の優先度は、図１０で示したデータから取得する。ステップ１２０３で、アプリケーションは、ステップ１２０２でロードされた字形辞書で、撮影画像に含まれる文字を認識する。
【００６５】
本実施形態では、文字認識処理の結果は、第１実施形態と同様に認識された文字のほか、上述した下位の文字の候補および信頼度を含む。ステップ１２０４で、アプリケーションは、文字認識処理の結果を表示する。ステップ１２０５で、アプリケーションは、認識された文字ごとの信頼度を取得する。そして、例えば、全ての文字の信頼度の平均値を求め、該平均値が所定の閾値以下となるか判定する。
【００６６】
閾値は、文字認識システムで予め設定された値であり、例えば、ユーザが変更することも可能である。ステップ１２０５にて認識された文字ごとの信頼度の平均値が閾値以下である場合、処理はステップＳ１２０６に進み、閾値よりも大きい場合、処理はステップ１２０９に進む。ステップＳ１２０６で、アプリケーションは、図１１に示すように、ステップＳ１２０４の表示とともに、再認識ボタン１１０１を表示する。
【００６７】
図１１に示した例では、認識された文字ごとの信頼度が低かったため、ステップ１２０５の処理によって再認識ボタン１１０１が表示されたことを示している。ユーザは、文字認識処理の結果である文字列５０６に満足できない場合、再認識ボタン１１０１を押下し、モバイルデバイス１０２が有する他の字形辞書を用いて再度文字認識処理を実行することができる。
【００６８】
図１２の説明に戻る。ステップ１２０７で、アプリケーションは、ユーザが再認識ボタン１１０１を押下したか判定する。ユーザが再認識ボタン１１０１を押下した場合、処理はステップ１２０８に進み、押下していない場合、処理はステップ１２０９に進む。ステップ１２０８で、アプリケーションは、先にロードされていた字形辞書の次の優先度の字形辞書をＳＳＤ３０５からロードする。
【００６９】
そして、アプリケーションは、新しくロードされる字形辞書を用いてステップ１２０３〜１２０５の処理を繰り返す。ステップ１２０９およびステップ１２１０の処理は、図６のステップ６０４および６０６と同様のため、その説明を省略する。なお、本実施形態では、ユーザによる修正の有無に関わらず、ステップ１２１０においてアプリケーションは、全ての撮影画像と正解文字列とをサーバ１０１に送信する。
【００７０】
ユーザによる修正が行われなかった場合、正解文字列は、ステップ１２０４で表示された図１１の文字列５０６である。これは、ユーザによる修正の有無に関わらず全ての撮影画像と正解文字列とをサーバ１０１が一定量保持することによって、一時的に特徴の異なる字形の文字を認識処理した場合であっても、サーバ１０１のバッチ処理（図８）に影響を与えないためである。
【００７１】
すなわち、一時的に特徴の異なる字形の文字を認識処理した場合、認識処理に使用した字形辞書の正解率は低下する。したがって、ユーザによる修正があった撮影画像と正解文字列のみをサーバ１０１に送信した場合、サーバ１０１のバッチ処理（図８）において、字形辞書ごとの正解率を算出する際に、該字形辞書の正解率を低下させてしまう。しかし、ユーザによる修正の有無に関わらず全ての撮影画像と正解文字列とを送信することにより、上述したような変則的な認識処理の結果は、誤差としてふるい落とすことができる。
【００７２】
なお、サーバ１０１は、撮影画像と正解文字列とを保持する一定量として、例えば、直近の撮影画像１００枚分と該撮影画像に対応する正解文字列とするなど、撮影画像の枚数を文字認識システムで予め規定しておく。また、この枚数は、ユーザが後から変更することも可能である。
【００７３】
このように、本実施形態によれば、複数の字形辞書を優先度に従って使用し、文字の認識処理を実行することができる。このように、優先度に従って複数の辞書で文字認識処理を実行することにより、ユーザは容易により良い結果を選択可能となる。
【００７４】
（第３実施形態）
文字認識処理の対象とする画像をモバイルデバイス１０２のカメラ３０３による撮影により取得する場合、スキャナで画像を取得する場合と違い、手振れによる画像振れが問題となる。オートシャッタ機能は、画像振れによる画像品位の低下を抑え、より鮮明な画像を撮影するために用いられる。オートシャッタ機能は、カメラ３０３により撮影されたフレーム画像から画像振れの少ないフレーム画像を自動的に発見し、撮影画像とする。
【００７５】
文字認識処理を実行するための撮影画像を、オートシャッタ機能を用いて取得するためには、カメラ３０３により、例えば、１／３０秒のフレーム画像のように、短時間の動画のフレーム画像を静止画像として用いる。また、動画で被写体を撮影しつつ文字認識処理を実行し、動画（画像フレーム）の文字認識処理の結果を動画像とともに表示することが考えられる。
【００７６】
この場合、文字認識処理の精度を上げると処理時間が長くなり、１／３０秒といった短時間で文字認識処理を実行することが困難になる。このため、処理速度を優先すると、精度を抑えて文字認識処理を実行することになる。このような場合についても、信頼度が高い画像フレームを撮影画像として採用する。
【００７７】
モバイルデバイスの、例えばＣＰＵ速度やメモリ容量等の性能に応じてオートシャッタ機能に適合した文字認識処理を遅延なく行う場合、文字認識処理を実行する回数は抑えなければならない。したがって、オートシャッタ機能を利用した文字認識処理では、１つの字形辞書のみ利用可能である、というような処理レスポンスを考慮した制約が生じる。すなわち、本実施形態では、複数の字形辞書を用いる場合であっても、処理レスポンスの制約から少数の字形辞書を自動的に選択して文字認識処理を実行することが可能とする。
【００７８】
第１実施形態および第２実施形態では、モバイルデバイス１０２〜１０４において１回の文字認識処理に使用する辞書は１つであった。この場合、オートシャッタ機能を利用した文字認識処理を実行する場合であっても、使用する辞書が１つのため、処理レスポンスの制約を満たす。
【００７９】
これに対して、本実施形態では、複数の字形辞書を同時に利用できる場合について考える。例えば、ＣＰＵの性能が向上することによって、オートシャッタ機能を用いた画像フレームを文字認識処理に用いる場合であっても、同時に２つまで字形辞書を利用できる可能性がある。また、オートシャッタ機能を用いない場合、同時に４つまで字形辞書を利用できたとする。このように、本実施形態では、同時に複数の字形辞書を利用でき、さらに、処理のフェーズや用いる機能に応じて使用する字形辞書の個数を切り替える場合について説明する。
【００８０】
図１３は、図７に示したサーバ１０１の本実施形態におけるバッチ処理（ステップ７０４）の詳細を説明するフローチャートである。
ステップ１３０１〜１３０６の処理は、第１実施形態におけるバッチ処理（図８）のステップ８０１〜８０６と同じ処理のため、その説明を省略する。ステップ１３０７で、処理サービスは、カバレッジ計算処理を行う。カバレッジ計算処理の詳細は、図１４を用いて後述する。
【００８１】
ステップ１３０８で、処理サービスは、カバレッジ計算処理の結果に基づいて、最もカバレッジ正解率の高い字形辞書の組み合わせを求め、組み合わせ情報を生成する。ステップ１３０９で、処理サービスは、正解率の高い字形辞書のセットと、ステップ１３０８で生成した字形辞書の組み合わせ情報をモバイルデバイス１０２〜１０４に送信する。
【００８２】
図１４は、図１３に示したサーバ１０１のカバレッジ計算処理（ステップ１３０７）の詳細を説明するフローチャートである。
処理サービスは、ステップ１３０１〜１３０６までの処理で、撮影画像ごと、および字形辞書ごとに文字認識処理の正解率を求めている。
【００８３】
例えば、撮影画像１に対して、字形辞書Ａの正解率＝５０％、字形辞書Ｂの正解率＝７０％、字形辞書Ｃの正解率＝８０％、・・・。また、撮影画像２に対して、字形辞書Ａの正解率＝３０％、字形辞書Ｂの正解率＝６０％、字形辞書Ｃの正解率＝４０％、・・・。このように、ステップＳ１３０１〜１３０６までの処理で、撮影画像ごとの各字形辞書の正解率がわかっている。
【００８４】
ステップ１４０１で、処理サービスは、ＨＤＤ２０４に保存している全ての字形辞書からｎ個の字形辞書の組み合わせを生成する。例えば、ＨＤＤ２０４が保存している字形辞書が、字形辞書Ａ、字形辞書Ｂ、字形辞書Ｃの３つであり、ｎ＝２の字形辞書の組み合わせを生成する場合は、以下のようになる。すなわち、「字形辞書Ａ、字形辞書Ｂ」、「字形辞書Ａ、字形辞書Ｃ」、「字形辞書Ｂ、字形辞書Ｃ」の３通りの組み合わせがある。
【００８５】
ステップ１４０２で、処理サービスは、ステップ１４０１で生成した字形辞書の組み合わせごとの各撮影画像に対する正解率を求める。すなわち、字形辞書のある組み合わせにおいて、該組み合わせに属する字形辞書それぞれの、撮影画像に対する正解率から代表値を求め、該代表値を該組み合わせの該撮影画像に対する正解率とする。
【００８６】
例えば、ＨＤＤ２０４が保存している字形辞書が、字形辞書Ａ、字形辞書Ｂ、字形辞書Ｃの３つあり、撮影画像１に対する字形辞書Ａの正解率＝５０％、字形辞書Ｂの正解率＝７０％、字形辞書Ｃの正解率＝８０％、であるとする。このとき、ｎ＝２の字形辞書の組み合わせの１つである「字形辞書Ａ、字形辞書Ｂ」の組み合わせにおける、撮影画像１に対する正解率は、字形辞書Ｂの撮影画像１に対する正解率である「７０％」とする。
【００８７】
また、「字形辞書Ａ、字形辞書Ｃ」の組み合わせにおける、撮影画像１に対する正解率は、字形辞書Ｃの撮影画像１に対する正解率である「８０％」とする。また、「字形辞書Ｂ、字形辞書Ｃ」の組み合わせにおける、撮影画像１に対する正解率は、字形辞書Ｃの撮影画像１に対する正解率である「８０％」とする。すなわち、本実施系形態では、各組み合わせに対するある撮影画像の正解率として、その組み合わせに属する字形辞書それぞれの、該撮影画像に対する正解率のうち、最も高い正解率を用いる。
【００８８】
このように、字形辞書の組み合わせごとに、各撮影画像の正解率（代表値）が求められ、該代表値が「字形辞書を組み合わせることによって」達成できる正解率であるとみなせる。ステップ１４０３で、処理サービスは、ステップ１４０２で字形辞書の組み合わせごとに求めた撮影画像ごとの正解率、言い換えると「字形辞書の組み合わせとしての正解率」を、全画像について平均する。この平均値が、「字形辞書の組み合わせとしての全画像に対する正解率」とする。
【００８９】
ステップ１４０４で、処理サービスは、「字形辞書の組み合わせとしての全画像に対する正解率」のうち、最も正解率の高い字形辞書の組み合わせを選択する。そして、図１３のステップ１３０９において、選択した字形辞書の組み合わせに属する複数の字形辞書と、字形辞書に関する情報をモバイルデバイス１０２に送信する。字形辞書に関する情報の詳細は、図１５を用いて以下で説明する。
【００９０】
図１５は、処理サービスがステップＳ１３０９でモバイルデバイス１０２に送信する字形辞書に関する情報の一例を示す図である。
字形辞書に関する情報は、処理サービスから送信する字形辞書の組み合わせ情報を含む。なお、本実施形態では、字形辞書に関する情報は、ＸＭＬ形式を用いて記述されるが、データ形式はこれに限定されるものではなく、どのようなものでもよい。
【００９１】
＜ｄｉｃｔｉｏｎａｒｙｓｅｔ＞タグは、字形辞書の１つの組み合わせを示し、＜ｉｔｅｍｓ＞タグおよび＜ｄｉｃｔｉｏｎａｒｙ＞タグに保存される情報を含む。＜ｉｔｅｍｓ＞タグには、その組み合わせに含まれる字形辞書の個数が保存される。＜ｄｉｃｔｉｏｎａｒｙ＞タグには、組み合わせに含まれる字形辞書ごとの情報を示し、＜ｐｒｉｏｒｉｔｙ＞タグおよび＜ｄｉｃｆｉｌｅ＞タグに保存される情報を含む。
【００９２】
＜ｐｒｉｏｒｉｔｙ＞タグには、組み合わせに含まれる辞書の中での該字形辞書の優先度を保存し、＜ｄｉｃｔｆｉｌｅ＞タグには、該字形辞書のファイル名を保存する。図１５に示す例では、２つの字形辞書の組み合わせを用いる場合、ファイル名が「ＡＡＡ．ｄｉｃ」および「ＢＢＢ．ｄｉｃ」の字形辞書の組み合わせを用いると、字形辞書の組み合わせとしての正解率が最も高いことがわかる。また、１つの字形辞書を用いる場合、ファイル名が「ＣＣＣ．ｄｉｃ」を用いると、正解率が最も高いことがわかる。
【００９３】
図１６は、モバイルデバイス１０２が字形辞書を受信した際の処理を示す図である。
ここでは、モバイルデバイス１０２について説明するが、モバイルデバイス１０３および１０４についても同様である。ステップ１６０１で、モバイルデバイス１０２のアプリケーションは、サーバ１０１から、図１３で示したステップ１３０９で送信された字形辞書および字形辞書に関する情報を受信する。
【００９４】
ステップ１６０２で、アプリケーションは、受信した字形辞書および該字形辞書に関する情報をＳＳＤ３０５に保存する。アプリケーションは、次に文字認識処理を実行する際に、サーバ１０１から受信し、保存した字形辞書をロードし、また、該字形辞書に関する情報を読み取ることができる。
【００９５】
図１７は、サーバ１０１から受信した字形辞書を保存した後に、文字認識処理を実行する際のモバイルデバイス１０２の処理を説明するフローチャートである。
ステップ１７０１で、ユーザは、モバイルデバイス１０２のアプリケーションを起動し、被写体を撮影する。なお、アプリケーションは、撮影直前にオートシャッタ機能を実行し、カメラ３０３からフレーム画像を撮影画像として取得してもよい。
【００９６】
ユーザが、モバイルデバイス１０２のアプリケーションを起動し、被写体を撮影する場合の、撮影画像に対する文字認識処理を「本番文字認識」とする。また、オートシャッタ機能を実行しフレーム画像を撮影画像として取得する場合の、撮影画像に対する文字認識処理を「オートシャッタ用高速文字認識」とする。「オートシャッタ用高速文字認識」の方が高速の処理レスポンスが要求されるため、文字認識処理に利用できる字形辞書の個数は「本番文字認識」よりも少ない。
【００９７】
ステップ１７０２で、アプリケーションは、処理レスポンスに要する時間に応じて文字認識処理に用いる字形辞書の個数を決定する。決定された個数をｎとする。例えば、「オートシャッタ用高速文字認識」を実行する場合、ｎ＝１とする。また、「本番文字認識」を実行する場合、ｎ＝２とする。なお、ここで示した個数は一例であり、処理を実行するモバイルデバイス１０２の性能に応じて個数は変化しうる。
【００９８】
ステップ１７０３で、アプリケーションは、図１６のステップ１６０２でＳＳＤ３０５に保存した字形辞書および該字形辞書に関する情報を参照する。そして、ステップ１７０２で決定した個数であるｎ個の字形辞書の組み合わせを用いる場合の字形辞書を選択し、優先度が高い順に字形辞書を１つロードする。例えば、字形辞書に関する情報として図１５に示す情報がＳＳＤ３０５に保存されている場合であって、ｎ＝２のとき、ファイル名が「ＡＡＡ．ｄｉｃ」、「ＢＢＢ．ｄｉｃ」の字形辞書がこの順でロードされる。
【００９９】
ステップ１７０４でアプリケーションは、ステップ１７０３にてロードした字形辞書で、撮影画像に含まれる文字を認識する。ステップ１７０５で、アプリケーションは、ステップ１７０３にて選択された字形辞書の組み合わせに含まれる全ての字形辞書を用いて文字認識処理を実行したか判定する。組み合わせに含まれる全ての字形辞書を用いて文字認識処理を実行した場合、処理はステップ１７０６に進む。
【０１００】
一方、まだ文字認識処理を実行していない字形辞書がある場合、処理はステップ１７０３に戻り、該文字認識処理を実行していない字形辞書について、ステップ１７０３〜１７０４の処理を繰り返す。ステップ１７０６で、アプリケーションは、ステップ１７０３にて選択されたｎ個の字形辞書を用いて実行されたｎ個の文字認識処理の結果を比較し、文字認識処理の結果の信頼度の高い結果を選択する。ステップ１７０７および１７０８の処理は、図６に示したステップ６０４および６０６と同様の処理のため、その説明を省略する。
【０１０１】
このように、本実施形態では、モバイルデバイスにおいて複数の字形辞書を用いて文字認識処理を実行する場合に、字形辞書の個数に応じて適切な辞書の組み合わせを用いることができる。このため、例えば、文字認識処理のフェーズや、要求される処理レスポンス、使用中の機能に応じて、文字認識処理に用いる字形辞書の個数を切り替える場合に、該個数に応じた最適な字形辞書の組み合わせで文字認識処理を実行できる。最適な組み合わせの複数の字形辞書を用いれば、被写体によって異なる字形が使用されている場合であっても、精度の低下を抑制できる。
【０１０２】
なお、第１実施形態乃至第３実施形態では、特徴的な字形の文字を認識対象とする場合について説明したが、これに限られるものではない。例えば、標準的な字形の文字を認識対象とする場合であっても、被写体によって多様な字形が用いられているときに、本実施形態では認識対象の字形に適した辞書を都度使い分けることができる。
【０１０３】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【０１０４】
以上、本発明の好ましい実施形態について説明したが、本発明は、これらの実施形態に限定されず、その要旨の範囲内で種々の変形および変更が可能である。
【符号の説明】
【０１０５】
１０１    サーバ
１０２〜１０４    モバイルデバイス
【図１】
2018116372.tif 000003
【図２】
2018116372.tif 000004
【図３】
2018116372.tif 000005
【図４】
2018116372.tif 000006
【図５】
2018116372.tif 000007
【図６】
2018116372.tif 000008
【図７】
2018116372.tif 000009
【図８】
2018116372.tif 000010
【図９】
2018116372.tif 000011
【図１０】
2018116372.tif 000012
【図１１】
2018116372.tif 000013
【図１２】
2018116372.tif 000014
【図１３】
2018116372.tif 000015
【図１４】
2018116372.tif 000016
【図１５】
2018116372.tif 000017
【図１６】
2018116372.tif 000018
【図１７】
2018116372.tif 000019