(57)【要約】【課題】簡単な操作によって誤認識された文字を正しい文字に訂正できるようにする。【解決手段】カメラ１およびタッチパネルディスプレイ２と共に文字読取装置１００を構成するＯＣＲアプリケーション３に、それぞれ異なるアルゴリズムに基づき動作する複数種の訂正用エンジン３０と、各訂正用エンジン３０をそれぞれタッチパネルディスプレイ２上における特有の操作パターンに対応付けた対応付けテーブル３６とが組み込まれる。ＧＵＩ制御部３２は、文字読取処理部３１での読取処理により導出された読取文字列がタッチパネルディスプレイ２に表示し、読取文字列の表示範囲に対して実施される操作を受け付けると、訂正対象の文字を判別すると共に、その操作のパターンに対応付けられている訂正用エンジン３０をエンジン選択部３３に選択させ、選択された訂正用エンジン３０を起動して訂正対象の文字に対する置き換え用の候補文字を導出させる。【選択図】図１
2014178954.tif 000002
【特許請求の範囲】
【請求項１】
カメラとタッチパネルディスプレイとに接続され、前記カメラでの撮影により生成された文字列の画像から当該文字列中の各文字を読み取る文字読取手段の機能が設定されたコンピュータに、前記文字読取手段によって読み取られた読取文字列を訂正する訂正処理手段の機能を付与するためのプログラムであって、
前記訂正処理手段は、
それぞれ異なるアルゴリズムに基づき訂正対象の文字に対する置き換え用の候補文字を導出する複数種の訂正用エンジンと、
前記複数種の訂正用エンジンをそれぞれ前記タッチパネルディスプレイにおける特有の操作パターンに対応付けた対応付けテーブルと、
前記文字読取手段により導出された読取文字列が前記タッチパネルディスプレイに表示されている状態下で、当該読取文字列の表示範囲に対して実施される操作を受け付けて、その操作の対象となった位置により前記読取文字列中の訂正対象の文字を判別する判別手段と、
前記読取文字列の表示範囲に対して実施された操作のパターンにより前記対応付けテーブルを検索して当該操作パターンに対応する訂正用エンジンを選択するエンジン選択手段と、
前記エンジン選択手段により選択された訂正用エンジンを起動して前記読取文字列中の前記訂正対象の文字を処理させ、この訂正用エンジンが前記訂正対象の文字に対して導出した候補文字を前記タッチパネルディスプレイに表示すると共に、表示された候補文字を承認する前記タッチパネルディスプレイ上での操作を受け付けて、前記読取文字列内の前記訂正対象の文字を承認された候補文字に置き換える制御手段とを具備する、
ことを特徴とする読取文字訂正用のプログラム。
【請求項２】
前記対応づけテーブルには、前記読取文字列の少なくとも一文字を指定する操作と、この操作により指定された文字を処理させる訂正用エンジンを指定する操作との組み合わせによる操作パターンが登録される、請求項１に記載された読取文字訂正用のプログラム。
【請求項３】
前記複数種の訂正用エンジンのうちの１つは、前記読取文字列内の訂正対象の文字に対して前記文字読取手段が導出した他の文字を文字読取手段より取得して、取得した文字を候補文字として前記制御手段に渡すものであり、前記対応付けテーブルでは、この訂正用エンジンを指定する操作としてフリック操作またはタップ操作が設定されている、請求項２に記載された読取文字訂正用のプログラム。
【請求項４】
前記複数種の訂正用エンジンのうちの１つは、隣り合う一対の文字とこれらの文字を結合した構成の単独の文字とを対応付けた辞書から前記読取文字列内の訂正対象の文字に対応する一対の文字を導出して、導出された文字の組み合わせを候補文字として前記制御手段に渡すものであり、前記対応付けテーブルでは、この訂正用エンジンを指定する操作としてピンチアウト操作が設定されている、請求項２に記載された読取文字訂正用のプログラム。
【請求項５】
前記複数種の訂正用エンジンのうちの１つは、前記操作により読取文字列内で隣り合う一対の文字が訂正対象として指定されたことを条件に、単独の文字と当該文字を２つに分割して得られる一対の文字とを対応付けた辞書から前記指定された一対の文字に対応する単独の文字を導出して、導出された文字を候補文字として前記制御手段に渡すものであり、前記対応付けテーブルでは、この訂正用エンジンを指定する操作としてピンチイン操作が対応付けされている、請求項２に記載された読取文字訂正用のプログラム。
【請求項６】
カメラおよびタッチパネルディスプレイが配備された筐体の内部に、前記カメラでの撮影により生成された文字列の画像から当該文字列中の各文字を読み取る文字読取手段を具備する制御部が配備された構成の装置であって、
前記制御部には、
それぞれ異なるアルゴリズムに基づき訂正対象の文字に対する置き換え用の候補文字を導出する複数種の訂正用エンジンと、
前記複数種の訂正用エンジンをそれぞれ前記タッチパネルディスプレイにおける特有の操作パターンに対応付けた対応付けテーブルと、
前記文字読取手段により導出された読取文字列が前記タッチパネルディスプレイに表示されている状態下で、当該読取文字列の表示範囲に対して実施される操作を受け付けて、その操作の対象となった位置により前記読取文字列中の訂正対象の文字を判別する判別手段と、
前記読取文字列の表示範囲に対して実施された操作のパターンにより前記対応付けテーブルを検索して当該操作パターンに対応する訂正用エンジンを選択するエンジン選択手段と、
前記エンジン選択手段により選択された訂正用エンジンを起動して前記読取文字列中の前記訂正対象の文字を処理させ、この訂正用エンジンが前記訂正対象の文字に対して導出した候補文字を前記タッチパネルディスプレイに表示すると共に、表示された候補文字を承認する前記タッチパネルディスプレイ上での操作を受け付けて、前記読取文字列内の前記訂正対象の文字を承認された候補文字に置き換える制御手段とを具備する、
文字読取装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、タッチパネルディスプレイを備えた情報処理装置における文字の読取処理に関するもので、特に本発明は、タッチパネルディスプレイに対するユーザの操作に応じて読取結果に生じている誤りを訂正するための技術に関する。
【背景技術】
【０００２】
近年の携帯電話などの情報端末装置には、カメラが標準装備されると共に、このカメラでの撮影により生成された文字列の画像を処理するＯＣＲアプリケーションを具備するものが多く出回っている。さらに、このＯＣＲアプリケーションと連動して、ＯＣＲにより読み取られた名刺などの情報をデータベースとして管理するアプリケーションが組み込まれる場合もある（たとえば特許文献１を参照。）。
【０００３】
また、情報端末装置における文字読取処理に関しては、読取精度を向上することを目的とした種々の技術が開発されている（たとえば特許文献２，３を参照。）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−２１７９６２号公報
【特許文献２】特開２００３−２１６８９３号公報
【特許文献３】特開２００８−２５０８１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記特許文献２，３に代表されるような技術開発によって文字の読み取り精度はかなり向上しているが、どのようなシーンでも１００％の確率で文字を認識できるとは限らず、読取結果に誤りが生じることもある。この誤りはユーザの手で訂正するしかなく、その作業を行うには文字入力機能（ＩＭＥ）を呼び出さなければならないため、訂正作業にかなりの労力がかかる。
【０００６】
本発明は、上記の問題に着目すると共に、近年、スマートフォンなどのタッチパネルディスプレイを備えた情報端末装置の利用が急増していることをふまえて、読取結果を表示するタッチパネルディスプレイに対して簡単な操作を行うことによって、誤認識された文字を正しい文字に訂正できるようにすることを課題とする。
【課題を解決するための手段】
【０００７】
本発明によるプログラムは、カメラとタッチパネルディスプレイとに接続され、カメラでの撮影により生成された文字列の画像から当該文字列中の各文字を読み取る文字読取手段の機能が設定されたコンピュータに、文字読取手段によって読み取られた読取文字列を訂正する訂正処理手段の機能を付与するものである。この訂正処理手段には、それぞれ異なるアルゴリズムに基づき訂正対象の文字に対する置き換え用の候補文字を導出する複数種の訂正用エンジンが含まれると共に、以下に示す対応付けテーブル、判別手段、エンジン選択手段、制御手段が設けられる。
【０００８】
対応付けテーブルは、上記した複数種の訂正用エンジンをそれぞれタッチパネルディスプレイにおける特有の操作パターンに対応付けたものである。
判別手段は、文字読取手段により導出された読取文字列がタッチパネルディスプレイに表示されている状態下で、当該読取文字列の表示範囲に対して実施される操作を受け付けて、その操作の対象となった位置により読取文字列中の訂正対象の文字を判別する。
エンジン選択手段は、読取文字列の表示範囲に対して実施された操作のパターンにより対応付けテーブルを検索して当該操作パターンに対応する訂正用エンジンを選択する。
【０００９】
制御手段は、エンジン選択手段により選択された訂正用エンジンを起動して読取文字列中の訂正対象の文字を処理させ、この訂正用エンジンが前記訂正対象の文字に対して導出した候補文字をタッチパネルディスプレイに表示すると共に、表示された候補文字を承認するタッチパネルディスプレイ上での操作を受け付けて、読取文字列内の前記訂正対象の文字を承認された候補文字に置き換える。
【００１０】
上記の構成によれば、タッチパネルディスプレイに表示された読取文字列の中に誤りがある場合には、ユーザは、その誤認識されている文字が表示されている位置に対し、あらかじめ知らされていた情報に基づき対応付けテーブルに登録されている操作パターンの中の１つによる操作を実施する。この操作により訂正対象の文字が判別されると共に、実施された操作パターンに対応する訂正用エンジンが呼び出されて訂正対象の文字に対する置き換え用の候補文字が導出され、タッチパネルディスプレイに表示される。さらに、ユーザが表示された候補文字を承認する操作をタッチパネルディスプレイ上で行うと、読取文字列内の訂正対象の文字が選択された候補文字に置き換えられる。
【００１１】
このように、ユーザは、読取文字列を表示中のタッチパネルディスプレイに対して簡単な操作を行うことによって、誤認識された文字を選択してその文字を正しい文字に訂正することができるので、文字入力機能を使用する方法よりも容易に訂正を完了することができる。
【００１２】
一実施形態においては、対応付けテーブルには、読取文字列の少なくとも一文字を指定する操作と、この操作により指定された文字を処理させる訂正用エンジンを指定する操作との組み合わせによる操作パターンが登録される。すなわち、訂正対象の文字を指定する操作を行った後に、訂正用エンジンを指定する操作を行うことによって、特定の訂正用エンジンを起動させることができる。
ただし、対応付けテーブルに登録される操作パターンは上記の形態に限らず、訂正対象の文字と訂正用エンジンとを１つの操作により指定するようにした操作パターンを登録することもできる。
【００１３】
訂正用エンジンとしては、様々な機能を有するものを導入することができるが、ここで３種類のエンジンを対応づける操作パターンの例と共にあげる。
【００１４】
まず第１の訂正用エンジンは、読取文字列内の訂正対象の文字に対して文字読取手段が導出した他の文字を文字読取手段より取得して、取得した文字を候補文字として制御手段に渡すものである。この訂正用エンジンを指定する操作としては、「誤って認識された文字を他の文字に変更する」という観念を想起させるフリック操作またはタップ操作を設定することができる。
【００１５】
第２の訂正用エンジンは、隣り合う一対の文字とこれらの文字を結合した構成の単独の文字とを対応付けた辞書から前記読取文字列内の訂正対象の文字に対応する一対の文字を導出して、導出された文字の組み合わせを候補文字として制御手段に渡すものである。この第２の訂正用エンジンを指定する操作としては、「誤って結合された文字を分割する」という観念を想起させるピンチアウト操作を設定することができる。
【００１６】
第３の訂正用エンジンは、操作により読取文字列内で隣り合う一対の文字が訂正対象として指定されたことを条件に、単独の文字と当該文字を２つに分割して得られる一対の文字とを対応付けた辞書から前記指定された一対の文字に対応する単独の文字を導出して、導出された文字を候補文字として制御手段に渡すものである。この第３の訂正用エンジンを指定する操作としては、「誤って２つに分離された文字を結合する」という観念を想起させるピンチイン操作を設定することができる。
【００１７】
上記の訂正処理システム用のプログラムは、たとえば、文字読取手段を含むＯＣＲアプリケーション全体のプログラムに含めて提供することができるが、既存のＯＣＲアプリケーションに新機能を追加するためのバージョンアップ用のプログラムとして提供することもできる。
【００１８】
本発明による文字入力装置は、カメラおよびタッチパネルディスプレイが配備された筐体の内部に、上記の文字読取手段や訂正処理手段が組み込まれた制御部を配備した構成のものである。この文字入力装置は、スマートフォンやタブレット型の端末装置に設けられて、カメラによる撮影で生成された文字列の画像から当該文字列の各構成文字を読み取って、その読取結果である読取文字列をタッチパネルディスプレイに表示すると共に、表示された読取文字列の表示範囲に対して実施される特有のパターンによる操作を受け付けて、その操作の対象となった位置に表示されている文字への置き換え用の候補文字を導出してタッチパネルディスプレイに表示し、ユーザが候補文字を承認したことに応じてその承認された候補文字により読み取り文字列を訂正する。
上記の構成によれば、読取結果に誤りがあった場合でも、タッチパネル上での簡単な操作により誤りを訂正することができるので、利便性が大幅に高められる。
【発明の効果】
【００１９】
本発明によれば、タッチパネルディスプレイ上に表示された読取文字列内の誤りが生じている箇所に対して簡単な操作を行うことにより、読取文字列内の誤りを訂正することが可能であるので、文字読取処理の利便性が高められ、様々な目的に応用する上での不便を解消することができる。
【図面の簡単な説明】
【００２０】
【図１】本発明が適用された文字読取装置の機能ブロック図である。
【図２】対応付けテーブルのデータ構成例を示す図である。
【図３】図２のテーブル中のエンジンＡによる訂正処理が行われる場合の例を示す図である。
【図４】図２のテーブル中のエンジンＡによる訂正処理が行われる場合の他の例を示す図である。
【図５】図２のテーブル中のエンジンＢによる訂正処理が行われる場合の例を示す図である。
【図６】図２のテーブル中のエンジンＣによる訂正処理が行われる場合の例を示す図である。
【図７】欧文の読取文字列に対する訂正処理が行われる場合の具体例を２例並べて示した図である。
【図８】数字が訂正対象として指定された場合の訂正処理の例を示す図である。
【図９】ＯＣＲアプリケーションにおける一連の処理手順を示すフローチャートである。
【発明を実施するための形態】
【００２１】
図１は、本発明が適用された文字読取装置の構成を示す。
この実施例の文字読取装置１００はスマートフォンに組み込まれるもので、スマートフォンの筐体４（図３〜図８を参照。）に取り付けられたカメラ１およびタッチパネルディスプレイ２と、筐体４内の図示しない制御部に導入されたＯＣＲアプリケーション３とにより構成される。
【００２２】
ＯＣＲアプリケーション３には、文字読取処理部３１，ＧＵＩ制御部３２，エンジン選択部３３などの処理部のほか、各種文字のモデル画像が登録された文字辞書３４，読取結果記憶部３５，対応付けテーブル３６，複数種の訂正処理用エンジン３０を含むエンジンデータベース３００（以下、個々の訂正処理用エンジン３０の名称を「エンジンＡ」「エンジンＢ」「エンジンＣ」・・・とする。）などが含まれる。
なお、文字読取処理部３１やＧＵＩ制御部３２は、図示しないオペレーティングシステムを介してカメラ１やタッチパネルディスプレイ２と情報をやりとりする。
【００２３】
文字読取処理部３１は、オペレーティングシステムからの起動命令に応じてカメラ１と共に起動し、カメラ１により生成された文字列の画像を取り込んで、その画像から文字列を含む領域を抽出する。さらに文字読取処理部３１は、抽出された領域内の画像を文字毎に切り分け、この切り分けにより設定された個々の文字画像を文字辞書３４内の各モデル画像と照合し、所定値以上の一致度が得られたモデル画像に対応する文字を一致度が高いものから順に抽出する。さらに、文字読取処理部３１は、各文字画像にそれぞれ最も高い一致度が得られた文字をあてはめることによって読取結果を示す読取文字列を生成する。
【００２４】
生成された読取文字列は、ＧＵＩ制御部３２に渡されるほか、読取結果記憶部３５に保存される。また、文字画像に対する一致度が２番目以下となった各文字も、それぞれ対応する文字画像の語順に紐付けられて一致度と共に読取結果記憶部３５に保存される。
ＧＵＩ制御部３２は、文字読取処理部３１から提供された読取文字列をタッチパネルディスプレイ２に表示する。
【００２５】
ここまでに記載した機能は一般的なものであるが、さらにこの実施例のＯＣＲアプリケーション３には、タッチパネル２に表示された読取文字列中の誤りを、ユーザの操作に応じて訂正する機能が設けられている。この訂正処理は、ＧＵＩ制御部３２がエンジン選択部３３およびエンジンデータベース３００と協働して実施するものである。
【００２６】
エンジンデータベース３００には、それぞれ異なるアルゴリズムに基づき訂正対象の文字に対する置き換え用の候補文字を導出する複数種の訂正用エンジン３０が含まれる。図面および以下の説明では、これら個々の訂正用エンジン３０の名称を「エンジンＡ」「エンジンＢ」「エンジンＣ」・・・とする。この実施例では、各訂正用エンジン３０にそれぞれ特有のパターンによる指定操作を対応づけ、対応付けの関係を対応付けテーブル３６に登録している。
【００２７】
図２は、対応付けテーブル３６のデータ構成例を示す。この実施例の対応付けテーブル３６では、各種操作パターンの名称と各訂正用エンジン３０の名称とが一意的に対応づけられると共に、各エンジン３０で実施される処理の内容を簡単に示す用語が登録されている。
【００２８】
図１に参照を戻す。ＧＵＩ制御部３２は、読取文字列を表示中のタッチパネルディスプレイ２において、訂正対象箇所を指定する操作とその箇所の訂正を指示する操作とを受け付ける。なお、後記するように、訂正を指定する操作は、実質的には、使用する訂正用エンジン３０を指定する操作となる。図２に示すように、この２つの操作は個別に実施される場合が多いが、１つの操作として統合される場合もある。エンジン選択部３３は、ＧＵＩ制御部３２が受け付けた操作パターンにより対応付けテーブル３６を検索して、操作パターンに対応する訂正用エンジン３０を選択し、その選択結果をＧＵＩ制御部３２に通知する。
【００２９】
この通知を受けたＧＵＩ制御部３２は、選択された訂正用エンジン３０を起動して訂正対象の文字を供給し、その訂正用エンジン３０から当該エンジン３０が導出した候補文字を取得してタッチパネルディスプレイ２に表示する。表示された候補文字を選択する操作がタッチパネルディスプレイ２上で行われると、ＧＵＩ制御部３２は、選択された候補文字により読取文字列中の訂正対象の文字を置き換えることにより読取文字列を訂正する。訂正された読取文字列は文字読取処理部３１にフィードバックされ、文字読取処理部３１により読取結果記憶部３５に保存されていた読取文字列が訂正される。
【００３０】
この実施例でのタッチパネルディスプレイ２における候補文字の表示は、読取文字列中で選択された訂正対象の文字を未確定表示の候補文字により置き換える方法や、候補文字のリストを表示する方法により行われる。
以下、読取文字列に生じた誤りを訂正するために実施される操作や、その操作に伴いタッチパネルディスプレイ２上に生じる表示の変遷について、具体的に説明する。
【００３１】
まず、図３の例では、文字読取処理部３１により「株式会社」という文字列を対象にした読取処理が行われたが、末尾の「社（しゃ）」が「杜（もり）」という文字であると誤認識されたものとしている。
【００３２】
この例では、読取文字列が表示されたタッチパネルディスプレイ２に対し、その読取文字列内の誤り部分をタップする操作により、訂正対象の文字を指定する。図３（１）に示すように、タップされた文字「杜」には、訂正対象の文字であることを示すカーソル２０が設定される。
【００３３】
図３（１）は、タップ操作後に、カーソル２０の位置を上から下に向かってはじく操作（フリック操作）が行われた例を示す。図２に示した対応付けテーブル３６によれば、タップ操作とフリック操作との組み合わせは訂正用エンジンＡに対応する。よって、この例ではエンジンＡが起動して候補文字が導出される。
【００３４】
この実施例のエンジンＡは、図１に一点鎖線で示すように、読取結果記憶部３５にアクセスする権限を持っている。具体的に、エンジンＡは、ＧＵＩ制御部３２から訂正対象の文字や読取文字列における訂正対象の文字の位置を取得して、それらの情報により読取結果記憶部３５を検索して、訂正対象の文字に対応する文字画像につき、当該文字画像に対する候補として抽出されたが読取文字列に採用されなかった文字（一致度が２番目以下となった文字）を読み出す。読み出された各文字は、候補文字として一致度が高いものから順に並べられ、ＧＵＩ制御部３２に渡される。
【００３５】
ＧＵＩ制御部３２では、エンジンＡから候補文字の提供を受けると、その中の第１の候補文字により読取文字列内のカーソル２０内の文字を更新する。図３（２）は、この更新後の画面の例を示すもので、カーソル２０内の文字が「杜」から「社」に変更されると共に、画面の右下にＯＫボタン２１が設定されている。
この画面表示に対し、ユーザが置き換えられた候補文字が正しいと判断してＯＫボタン２１をタップすると、図３（３）に示すように、カーソル２０が消失して、誤認識された「杜」が選択された候補文字「社」に訂正された読取文字列が確定表示される。
【００３６】
上記図３の例では、訂正対象の文字を指定するためのタップ操作に続くフリック操作によってエンジンＡが起動し、導出された候補文字が直ちに表示されている。ユーザは意識していないが、タップ操作に続くフリック操作によってエンジンＡが指定され、タップ操作により指定された文字に対する置き換え用の候補文字が導出されたことにより、上記の候補文字の表示が実現したのである。
したがって、ユーザは、誤認識された文字に対してタップ操作とフリック操作とを続けて行った後、正しい文字に訂正されたことを確認してＯＫボタン２１を操作することによって、認識の誤りを訂正することができる。文字入力機能を用いて同様の訂正を行う場合と比較すると、訂正作業の効率は格段に向上する。
【００３７】
状況によっては、最初のフリック操作で呼び出された候補文字も誤っていることがあるが、その場合には、さらにフリック操作を行うことによって、２番目以降の候補文字が順に呼び出されてカーソル２０の位置の文字が更新される。したがって、ユーザは、訂正対象の文字を選択した後は、正しい文字が表示されるまでフリック操作を続けて確定操作を行うことにより、読取文字列内の誤りを訂正することができる。
また、フリック操作を続けている間に正しい文字を逃してしまった場合には、ユーザはフリック操作の方向を下から上に向かう方向に変更することにより、候補文字の呼び出し順序を反転させて、前に表示された文字を呼び戻すことができる。
【００３８】
エンジンＡを起動させるための操作や候補文字の表示は、図３の例に限定されるものではない。たとえば２番目のフリック操作をタップ操作に代えて、１番目のフリック操作によりカーソル２０が設定された後の再度のフリック操作に応じてエンジンＡを起動させてもよい。また、他の例として、図４では、誤った文字を少し長めにタップする操作（ロングタップ）によって、訂正対象の文字の指定と共に訂正指示を行っている。
【００３９】
図４の例においても、図３の例と同様に、指定された文字にはカーソル２０が設定される（図４（１））。この例では、タッチパネルディスプレイ２に対する指の接触時間が所定時間を超えたことに応じてエンジンＡが起動し、候補文字の導出に応じて、図４（２）に示すように画面の下部にメニューバー２２が表示される。このメニューバー２２には、エンジンＡにより導出された候補文字が上位３位まで表示されている。
【００４０】
上記のメニューバー２２に対し、候補文字の１つを選択する操作が行われると、カーソル２０は消失して、訂正対象の文字が選択された候補文字に置き換えられた構成の読取文字列が確定する（図４（３））。これにより読取文字列の訂正は完了する。
なお、メニューバー２２に示される３つの候補文字の中に正しい文字がない場合には、メニューバー２２内の矢印キーや＋、−のキーの操作により、他の候補文字を呼び出すことができる。メニューバー２２の表示後に所定時間が経過しても候補文字が選択されない場合には、メニューバー２２やカーソル２０は消失し、エンジンＡによる訂正モードもキャンセルされる。
【００４１】
つぎに、図５に示す例では、「イニシャル」という文字列に対する読取処理が行われたが、先頭の２文字「イニ」が漢字の「仁」であると誤認識されたものとしている。
図５（１）は、この認識結果に対し、ユーザが誤認識による文字「仁」をタップした時点の画面であって、図３や図４の例と同様に、タップされた文字にカーソル２０が設定されている。
【００４２】
つぎにこの実施例では、カーソル２０の近傍位置でピンチアウト操作が行われている（図５（２））。図２に示した対応付けテーブル３６によれば、タップ操作とピンチアウト操作との組み合わせはエンジンＢに対応する。よって、ピンチアウト操作に応じてエンジンＢが起動して、「仁」に対する置き換え用の候補文字が導出される。
【００４３】
エンジンＢには、この事例の「イニ」と「仁」のように、隣り合う関係にあって１つの文字として誤認識されやすい一対の文字とその誤認識を示す文字とが対応づけられて登録された辞書が含まれている。エンジンＢは、ＧＵＩ制御部３２から供給された訂正対象の文字によりこの辞書を検索して、訂正対象の文字に対応する一対の文字を候補文字として導出する。
【００４４】
図５（３）は、上記の処理により「イニ」という候補文字が導出され、誤認識による「仁」が「イニ」に置き換えられた画面を示す。この画面では、置き換えられた２つの候補文字に対応する範囲に拡張されたカーソル２０が設定されると共に、画面の右下にＯＫボタン２１が登場している。ユーザがＯＫボタン２１をタップすると、図５（４）に示すように、カーソル２０が消失して、置き換えられた文字による訂正が確定する。
【００４５】
次に、図６に示す例では「読書」という文字列に対する読取処理を行ったが、先頭の「読」が「言」と「売」という２つの文字に分離されて誤認識されたものとする。
この事例のように誤りの範囲が複数の文字に及ぶ場合には、その訂正箇所の指定はスワイプ操作（始端位置をタッチした後に終端位置まで指をスライドさせる操作）により行われる。図６（１）は、このスワイプ操作により誤認識された「言」および「売」を含む範囲にカーソル２０が設定された画面を示す。
【００４６】
つぎに図６の例では、カーソル２０の近傍位置でピンチイン操作が行われている（図６（２））。図２に示した対応付けテーブル３６によれば、スワイプ操作とピンチイン操作との組み合わせはエンジンＣに対応する。よって、ピンチイン操作に応じてエンジンＣが起動して、「言」と「売」との組み合わせに対する置き換え用の候補文字が導出される。
【００４７】
エンジンＣには、この事例の「読」と「言」および「売」とのように、隣り合う関係にある一対の文字であると誤認識されやすい文字がその一対の文字と対応づけられて登録された辞書が含まれている。エンジンＣは、ＧＵＩ制御部３２から供給された訂正対象の２文字によりこの辞書を検索することにより、訂正対象の２文字に対応する文字を候補文字として導出する。
【００４８】
図６（３）は、上記の導出によって、「言」と「売」とに分離して認識された文字が正しい「読」に置き換えられた画面を示す。置き換えられた候補文字にはまだカーソル２０が設定されており、画面の右下にはＯＫボタン２１が登場している。ユーザがＯＫボタン２１をタップすると、図６（４）に示すように、置き換えられた文字による訂正が確定する。
【００４９】
図５に示したように、隣り合う関係にある一対の文字が１つの文字として結合されて認識された場合の訂正に適したエンジンＢには、結合を解除して各文字を分離する、という観念を想起させるピンチアウト操作が対応付けられる。また図６に示したように、１つの文字が２文字に分離されて認識された場合の訂正に適したエンジンＣには、分離された２つの文字を引き寄せて結合する、という観念を想起させるピンチイン操作が対応付けられる。このように、各種訂正用エンジンにそれぞれそのエンジンの機能を想起させるパターンの操作を対応づけることにより、ユーザは訂正用エンジン３０の種別を意識しなくとも、読取文字列に生じた誤りの訂正に適した訂正用エンジン３０を指定して正しい文字を呼び出すことができる。よって、読取文字列を正確に訂正する作業を容易に行うことが可能になる。
【００５０】
なお、上記では、エンジンＢおよびエンジンＣには、それぞれ候補文字の導出に必要な辞書が含まれるとしたが、これら２種類の訂正用エンジンにおいて共通の辞書を使用するようにしてもよい。
【００５１】
また、図３，図５，図６の例の画面では、呼び出された候補文字を承認する操作のためにＯＫボタン２１を設定したが、承認操作の方法はこれに限らず、たとえば、候補文字が表示された画面内の空白部分（読取文字列の背景部分）をタップする操作を承認操作として受け付けてもよい。
【００５２】
候補文字を導出するための訂正用エンジン３０は、上記の３種類に限らず、種々のアルゴリズムによるエンジンを設定することができる。
たとえば、図２に示したエンジンＤは、読取文字列内で隣り合う文字の間に空白を設定する処理を行うものであり、反対に、エンジンＥは文字間の設定された空白を削除するものである。これらのエンジンＤ，Ｅについては、読取文字列内の隣り合う２つの文字を同時にタップする操作（２本指タップ）によって訂正対象箇所が指定され、その後にピンチアウト操作が行われた場合にはエンジンＤが選択され、ピンチイン操作が行われた場合にはエンジンＥが選択される。
【００５３】
図２に示したエンジンＦは、各種漢字が部首に対応づけて登録された辞書を具備しており、漢字が訂正対象に選択されたことを条件として、その訂正対象の文字の部首により辞書を検索して候補文字を導出する。このエンジンＦについては、読取文字列内の１文字を２回続けて早くタップする操作（ダブルタップ操作）によって、訂正対象の文字の指定と共にエンジンＦが指定される。
【００５４】
エンジンデータベース３００には、日本語の読取文字列を訂正するための訂正用エンジン３０に限らず、他の言語による読取文字列や数字に対する訂正用エンジン３０を含めることもできる。その訂正の方法および実施される操作のパターンの具体例を、以下に簡単に説明する。
【００５５】
図７（Ａ）は、「ＭＵＮＣＨＥＮ」という読取文字列の表示に対し、２番目の文字「Ｕ」をダブルタップする操作により、訂正対象の文字の選択と、選択された文字を記号（ウムラウト）付きの文字に訂正したものである。この場合の候補文字の導出は、たとえば、記号なし文字と記号付き文字との組み合わせが格納された辞書を有する訂正用エンジン３０によって実施される。この場合にも、最初に表示された候補文字が正しくない場合には、フリック操作またはタップ操作によって他の候補文字を呼び出すことができる。
【００５６】
図７（Ｂ）は、「ＷＯＲＤ」という読取文字列の先頭の「Ｗ」が「Ｖ」を２つ連ねたものであると誤認識された場合に、スワイプ操作などで「ＶＶ」を指定してからピンチイン操作を行うことにより、正しい文字である「Ｗ」を呼び出したものである。この場合の候補文字の導出は、英語バージョンのエンジンＣにより実施される。
【００５７】
図８は、「３月８日」という読取文字列中の「８」が「３」であると誤認識された場合に、ユーザの操作により展開される表示の変遷例を示す。
この例では、図３の例と同様に、誤認識された「３」をタップして選択した後に下フリック操作が行われる（図８（１））。この場合、フリックの勢いに応じて、カーソル２０の位置で誤認識された数字の「３」が４，５，６，・・・と順に変更されてゆく変動表示が展開される（図８（２））。この変動表示において正しい文字の「８」が表示されたときにカーソル２０の位置でタップ操作が行われると、変動表示が停止し（図８（３））、タップの指が離れると、「８」による訂正が確定する（図８（４））。
また、もし、変動表示中に目的の「８」を通り過ぎてしまった場合には、フリック操作の方向を下から上に向かう方向に変更することによって変動表示の方向を反転させることもできる。
【００５８】
図８の事例における候補文字の導出は、数字を訂正するためのアルゴリズムが組み込まれたエンジンにより実施される。
なお、この数字訂正用のエンジンに対応する操作のパターン（タップ→フリック）は図２に示したエンジンＡにも対応づけられており、先の図７（Ａ）に示した操作パターン（ダブルタップ）は図２に示したエンジンＦにも対応づけられている。このように、訂正用エンジン３０の数を増やすと、複数の訂正用エンジン３０に共通の操作パターンが対応づけられる可能性があるが、その場合には、エンジン選択部３３では、訂正対象として指定された文字の種別と操作のパターンとの組み合わせに基づいて最適な訂正用エンジン３０を選択する。
【００５９】
つぎに図９を参照して、上記のＯＣＲアプリケーション３における一連の処理の流れを説明する。
まず、カメラ１からの画像に対する文字読取処理を実施し（ステップＳ１）、その処理により導出された読取文字列を読取結果記憶部３５に保存する（ステップＳ２）。
つぎに、上記の読取処理により導出された読取文字列をタッチパネルディスプレイ２に表示する（ステップＳ３）。この表示に対して読取結果を承認する操作が行われると、ステップＳ４が「ＹＥＳ」となって処理を終了する。
【００６０】
一方、表示された読取文字列に対し、訂正対象の文字を指定するタップ操作か範囲を指定するスワイプ操作が行われると、ステップＳ４が「ＮＯ」、ステップＳ５が「ＹＥＳ」となってステップＳ６に進み、指定された文字または範囲にカーソル２０を設定することにより、その文字または範囲を選択状態にする。つぎにステップＳ７で訂正を指定する操作を確認するとステップＳ８に進み、実施された操作のパターンを判別する。さらにステップＳ９では、エンジン選択部３３の機能により対応付けテーブル３６を検索して、操作パターンに対応する訂正用エンジン３０を特定し、その訂正用エンジン３０を起動する。
【００６１】
ステップＳ１０では、起動した訂正用エンジン３０より当該エンジン３０が導出した候補文字を取得して、その候補文字をタッチパネルディスプレイ２に表示する。なお、候補文字は、カーソル２０が設定された範囲に対して導出され、図５に示したように一文字に対して複数の文字が導出されたり、図６に示したように複数の文字に対して一文字が導出される場合がある。また、図２に示したエンジンＤが起動した場合には、カーソル２０内の２つの文字およびそれらの間の空白が候補文字として導出され、エンジンＥが動作した場合には、カーソル２０内の２つの文字が空白が削除された形態に訂正された候補文字が導出される。
【００６２】
候補文字の表示に対して、ユーザによる確定操作（ＯＫボタン２１へのタップ操作）が行われると、ステップＳ１１が「ＹＥＳ」となってステップＳ１３に進み、候補文字による訂正を確定する。さらにステップＳ１４では、確定した訂正内容に基づき、読取処理部３１が読取結果記憶部３５内に保存されている読取文字列を訂正する。
【００６３】
なお、ステップＳ１０での候補文字の表示に対して他の候補文字を要求する操作が行われた場合には、ステップＳ１１が「ＮＯ」、ステップＳ１２が「ＹＥＳ」となってステップＳ１０に戻り、表示可能な他の候補文字を表示する。ただし、表示可能な候補文字がない場合には、訂正処理を中止する。また、図８に示した事例の訂正用エンジン３０が動く場合には、このエンジン３０により導出された複数の候補による変動表示が続く間、ステップＳ１０〜Ｓ１２のループが繰り返され、変動表示を停止する操作が行われたときにステップＳ１１が「ＹＥＳ」となるものとする。
【００６４】
図２のエンジンＦやロングタップ操作に対応付けされた場合のエンジンＡ（図４を参照。）のように、訂正対象の箇所を指定する操作と訂正を指示する操作とが一括して実施された場合には、まずステップＳ５で訂正対象の選択が行われたことが判別されて訂正対象が選択され、ステップＳ６において訂正指示操作が完了していることが確認される。また訂正対象の箇所を指定する操作と訂正を指示する操作とが別々に実施されたが、最初の操作から所定時間が経過しても次の指定操作が行われなかった場合や、２番目の操作が最初の操作に適合していない場合には、ステップＳ７が「ＮＯ」となってステップＳ１５に進み、訂正対象の選択を解除する。
【００６５】
また、図９では、文字読取処理が終了した直後に訂正処理を行う場合の手順を示したが、文字読取処理の直後に限らず、適宜、読取結果記憶部３５に保存されている読取文字列を読み出してタッチパネルディスプレイ２に表示して、ステップＳ５以下と同様の処理を実施してもよい。
【００６６】
上記実施例のＯＣＲアプリケーション３は、スマートフォンのほか、タブレット端末装置に組み込むことも可能である。また、訂正機能を持たない従来のＯＣＲアプリケーションが組み込まれたスマートフォンやタブレット端末装置にも、上記した訂正機能に関わるプログラムやデータファイルを導入することによって、図１に示した構成のアプリケーションへのバージョンアップすることができる。
【符号の説明】
【００６７】
１    カメラ
２    タッチパネルディスプレイ
３    ＯＣＲアプリケーション
３０  訂正用エンジン
３１  文字読取処理部
３２  ＧＵＩ制御部
３３  エンジン選択部
３４  文字辞書
３５  読取結果記憶部
３６  対応付けテーブル
１００  文字読取装置
３００  エンジンデータベース
【図１】
2014178954.tif 000003
【図２】
2014178954.tif 000004
【図３】
2014178954.tif 000005
【図４】
2014178954.tif 000006
【図５】
2014178954.tif 000007
【図６】
2014178954.tif 000008
【図７】
2014178954.tif 000009
【図８】
2014178954.tif 000010
【図９】
2014178954.tif 000011