(57)【要約】【課題】タブレット型コンピュータにおける効率的な手書き文字認識方法およびシステムを提供する。【解決手段】タブレット型コンピュータにおける手書き文字認識方法で使用される複数のプログラム・モジュールのうち、相対的に優先度の高い処理を行うプログラム・モジュール群はユーザフィードバックを迅速に行うことを目的とし、一方、優先度の低い処理を行うプログラム・モジュール群はバックグラウンドで実施されるテキストデータ生成処理、文字認識の精度向上処理を目的とする。複数のプログラム・モジュール群を作成することにより、従来技術を単純に組み合わせたものよりも優れたユーザ体験を手書き文字認識方法およびシステムを提供することができる。【選択図】図５
2012014517.tif 000002
【特許請求の範囲】
【請求項１】
タブレット型コンピュータにおける手書き文字認識方法であって、
該タブレット型コンピュータが実行する前記方法は、
（ａ）複数のプログラム・モジュールのうち、相対的に優先度の低い処理を行うプログラム・モジュールを処理優先度の低いスレッドとして生成するステップと、
（ｂ）前記スレッドを実行するか否かを判定するステップと、
（ｃ）前記スレッドを実行しないと判定した場合に、ユーザ入力を受信するステップと、
（ｄ）前記ユーザ入力が前記タブレット型コンピュータのディスプレイの第１の領域に対して行われたものであるか否かを判定するステップと、
（ｅ）前記ユーザ入力が前記第１の領域に対して行われたと判定された場合に、前記第１の領域に前記ユーザ入力に対応する描画を行うとともに、該描画を前記ディスプレイの第２の領域にビットマップデータとして表示するステップと、
（ｆ）前記描画に対応する筆跡データを、前記スレッドのプログラム・モジュールがアクセス可能な共有リストに格納するステップと、
（ｇ）前記スレッドを実行するとの判定がされるまで、上記ステップ（ｂ）〜（ｆ）を繰り返すステップと、
（ｈ）前記スレッドを実行すると判定した場合に、前記共有リストにユーザによって入力された筆跡データが格納されているか否かを判定するステップと、
（ｉ）前記筆跡データが格納されている場合、前記共有リストから前記筆跡データを読み出すステップと、
（ｊ）読み出した前記筆跡データに対応する１つまたは複数のテキストデータを推定するステップであって、該１つまたは複数のテキストデータは少なくとも確度の情報を含む、ステップと、
（ｋ）前記推定された１つまたは複数のテキストデータを対応する前記筆跡データと結合して格納するステップと
を含むことを特徴する方法。
【請求項２】
前記推定するステップ（ｊ）は、
（ｊ１）読み出した前記筆跡データに含まれる入力のタイミング情報やストロークの開始位置情報に基づいて、前記対応する１つまたは複数のテキストデータを推定するステップをさらに含み、
前記推定は、前記タブレット型コンピュータに格納されている文字パターンと照合することによって行われ、該照合の結果にしたがって前記確度の情報が決定される、ことを特徴とする請求項１に記載の方法。
【請求項３】
前記推定するステップ（ｊ１）は、
前記推定した前記対応する１つまたは複数のテキストデータに後続するテキストデータの候補を予測するステップをさらに含むことを特徴とする請求項２に記載の方法。
【請求項４】
前記推定は、読み出した前記筆跡データと以前に入力されたユーザ別の筆跡データとを照合することによって行われることを特徴とする請求項２に記載の方法。
【請求項５】
所定の閾値を超える前記確度の情報を有する前記推定された１つまたは複数のテキストデータをユーザに対して提示するステップと、
前記ユーザに対して提示することに応答して、前記推定された１つまたは複数のテキストデータのうち１つのテキストデータをユーザ入力にしたがって確定するステップと
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項６】
前記ユーザ入力にしたがって確定するステップは、
前記１つまたは複数のテキストデータのうち１つのテキストデータを正しいデータとしてユーザに選択させるための第１のユーザ入力画面を表示するステップと、
前記１つまたは複数のテキストデータのうち１つのテキストデータを正しいデータに修正するための第２のユーザ入力画面を表示するステップと
をさらに含むことを特徴とする請求項５に記載の方法。
【請求項７】
前記第２の領域に表示される、前記描画に対応するビットマップデータは、前記タブレット型コンピュータのディスプレイの前記第２の領域の大きさにしたがって、縮小表示されることを特徴とする請求項１に記載の方法。
【請求項８】
前記格納するステップ（ｆ）は、前記ユーザ入力に対応する描画に結合される、前記タブレット型コンピュータのマイクロホンを介して入力された音声入力が存在する場合に、音声入力の認識結果である音声データと前記筆跡データとを結合して該共有リストに格納するステップをさらに含み、
前記判定するステップ（ｈ）は、前記共有リストに前記筆跡データおよび該筆跡データに結合されている前記音声データが格納されているか否かを判定するステップをさらに含み、
前記読み出すステップ（ｉ）は、前記筆跡データおよび前記音声データが格納されている場合、前記共有リストから前記筆跡データおよび前記音声データを読み出すステップをさらに含み、
前記推定するステップ（ｊ）は、読み出した前記筆跡データおよび前記音声データに対応する１つまたは複数のテキストデータであって、少なくとも確度の情報を含むテキストデータを推定するステップをさらに含む、
ことを特徴する請求項１または５に記載の方法。
【請求項９】
前記推定するステップ（ｊ）は、
（ｊ２）読み出した前記音声データの少なくともイントネーションの情報に基づいて、前記音声データに対応する１つまたは複数のテキストデータを推定するステップであって、該イントネーションの情報は前記タブレット型コンピュータに格納されている、ステップと、
（ｊ３）読み出した前記筆跡データに含まれる入力のタイミング情報やストロークの開始位置情報に基づいて推定された前記対応する１つまたは複数のテキストデータに基づいて、前記音声データに対応する１つまたは複数のテキストデータを推定するステップと
の少なくとも１つを含むことを特徴とする請求項８に記載の方法。
【請求項１０】
タブレット型コンピュータにおける手書き文字認識システムであって、
１つまたは複数のプログラム・モジュールを含む第１のプログラム・モジュール群を格納する手段と、
前記第１のプログラム・モジュール群よりも優先度の低い処理を行う１つまたは複数のプログラム・モジュールを含む第２のプログラム・モジュール群を格納する手段と、
認識結果データベースと
を備え、
前記第１のプログラム・モジュール群は、
受信したユーザ入力が前記タブレット型コンピュータのディスプレイの第１の領域に対して行われたものであると判定した場合に、該第１の領域に該ユーザ入力に対応する描画を行うとともに、該描画を該ディスプレイの第２の領域にビットマップデータである筆跡データとして表示し、該筆跡データを前記第２のプログラム・モジュール群がアクセス可能な共有リストに格納するための縮小表示プログラム・モジュール
を少なくとも含み、
前記第２のプログラム・モジュール群は、
前記共有リストに前記筆跡データが格納されている場合に、該共有リストから該筆跡データを読み出すとともに、読み出した該筆跡データに対応する１つまたは複数のテキストデータを推定するための特定語句認識プログラム・モジュールであって、該テキストデータは少なくとも確度の情報を含む、特定語句認識プログラム・モジュール
を少なくとも含み、
前記推定されたテキストデータは、対応する前記筆跡データと結合されて前記認識結果データベースに格納される、
ことを特徴するシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、手書き文字認識方法およびシステムに関する。より詳細に言えば、本発明は、タブレット型コンピュータに実装されているタッチパネルを介して入力された手書き文字を認識する方法およびシステムに関する。
【背景技術】
【０００２】
近年、スマートフォンと呼ばれる携帯電話の一種が広まっている。このスマートフォンの中には、筐体にスイッチやボタンがほとんど無く、タッチパネル式のディスプレイを指などで触れる（「ジェスチャー」とも言われる）ことによりほとんどの操作を行うものが知られている。
【０００３】
このタイプのスマートフォンの機能を継承したタブレット型コンピュータについても、近年、普及しつつある。このタブレット型コンピュータは、当該スマートフォンの数倍の大きさ（例えば、Ａ４版やＢ５判ノート程度の大きさ）を有することから、上記スマートフォンでは画面の大きさにより制約があった動画コンテンツの視聴や電子書籍の閲覧など従来よりも拡張されたユーザ体験（user experience）を提供することができる。
【０００４】
このタブレット型コンピュータは、無線ＬＡＮやセルラーネットワークなどの無線ネットワークを介してインターネットから様々なアプリケーション（ソフトウェア）をダウンロードすることができる。ユーザはそのアプリケーションを個々のニーズにあわせて使用することができる。これらのアプリケーションの中には、手書き方式によりメモを作成することができるものも存在する。ユーザは作成したメモのデータを他のユーザに提供することができ、また、他のアプリケーションと連携させて活用することができる。
【０００５】
パーソナル・コンピュータ（以下、「ＰＣ」とする）や携帯電話・ＰＨＳに実装されるアプリケーションにおいては、メモを作成・編集する機能として、従来、以下の機能の１つまたは複数を組み合わせて実施することが知られていた。
１）ある領域（領域Ａ）で入力した文字を別の領域（領域Ｂ）に縮小して表示
２）複数の規定領域から入力する領域を選択し、入力文字列を選択した領域内に表示
３）手書き文字認識
４）辞書、および文字の連続性に関する確率を用いた手書き文字認識精度の向上
５）文章内の特定語句の自動認識とそれに対するアノテーション添付
６）タッチスクリーン／タッチパッドで、ジェスチャーを利用した電子機器の操作
７）文章検索
８）電子メール、ＳＮＳ、ネット上情報保存・共有などのネットワークを介したサービス
９）入力履歴等を用いた、文章入力時の予測変換
１０）音声認識による単語および文章の入力
上記の従来技術の他にも手書き文字認識に関しては、従来から多くの改良がなされてきた（特許文献１、２参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００３−３０８４８４号公報
【特許文献２】特開平６−３３２６１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、タブレット型コンピュータに対して、上記従来技術１）〜６）を全て単純に組み合わせて実装すると、ユーザ入力に対する反応が遅くなり、ユーザ体験が劣化するという課題があった。
【０００８】
また、タブレット型コンピュータにおける手書き文字認識では漢字変換を行わないので、特に携帯電話・ＰＨＳなどでの単語や文章入力時の効率を大幅に向上させている上記９）予測変換や１０）音声認識の機能の恩恵にあずかれないという課題があった。
【０００９】
本発明は、上記課題に鑑みてなされたものであって、その目的とするところは、タブレット型コンピュータにおけるより効率的な手書き文字認識方法およびシステムを提供することにある。
【課題を解決するための手段】
【００１０】
上記の課題を解決するために、本発明は、タブレット型コンピュータにおける手書き文字認識方法を提供する。当該タブレット型コンピュータが実行する前記方法は、（ａ）複数のプログラム・モジュールのうち、相対的に優先度の低い処理を行うプログラム・モジュールを処理優先度の低いスレッドとして生成するステップと、（ｂ）前記スレッドを実行するか否かを判定するステップと、（ｃ）前記スレッドを実行しないと判定した場合に、ユーザ入力を受信するステップと、（ｄ）前記ユーザ入力が前記タブレット型コンピュータのディスプレイの第１の領域に対して行われたものであるか否かを判定するステップと、（ｅ）前記ユーザ入力が前記第１の領域に対して行われたと判定された場合に、前記第１の領域に前記ユーザ入力に対応する描画を行うとともに、該描画を前記ディスプレイの第２の領域にビットマップデータとして表示するステップと、（ｆ）前記描画に対応する筆跡データを、前記スレッドのプログラム・モジュールがアクセス可能な共有リストに格納するステップと、（ｇ）前記スレッドを実行するとの判定がされるまで、上記ステップ（ｂ）〜（ｆ）を繰り返すステップと、（ｈ）前記スレッドを実行すると判定した場合に、前記共有リストにユーザによって入力された筆跡データが格納されているか否かを判定するステップと、（ｉ）前記筆跡データが格納されている場合、前記共有リストから前記筆跡データを読み出すステップと、（ｊ）読み出した前記筆跡データに対応する１つまたは複数のテキストデータを推定するステップであって、該１つまたは複数のテキストデータは少なくとも確度の情報を含む、ステップと、（ｋ）前記推定された１つまたは複数のテキストデータを対応する前記筆跡データと結合して格納するステップを含むことを特徴する。
【００１１】
また、本発明は、タブレット型コンピュータにおける手書き文字認識システムを提供する。当該システムは、１つまたは複数のプログラム・モジュールを含む第１のプログラム・モジュール群を格納する手段と、前記第１のプログラム・モジュール群よりも優先度の低い処理を行う１つまたは複数のプログラム・モジュールを含む第２のプログラム・モジュール群を格納する手段と、認識結果データベースを備え、前記第１のプログラム・モジュール群は、受信したユーザ入力が前記タブレット型コンピュータのディスプレイの第１の領域に対して行われたものであると判定した場合に、該第１の領域に該ユーザ入力に対応する描画を行うとともに、該描画を該ディスプレイの第２の領域にビットマップデータである筆跡データとして表示し、該筆跡データを前記第２のプログラム・モジュール群がアクセス可能な共有リストに格納するための縮小表示プログラム・モジュールを少なくとも含み、前記第２のプログラム・モジュール群は、前記共有リストに前記筆跡データが格納されている場合に、該共有リストから該筆跡データを読み出すとともに、読み出した該筆跡データに対応する１つまたは複数のテキストデータを推定するための特定語句認識プログラム・モジュールであって、該テキストデータは少なくとも確度の情報を含む、特定語句認識プログラム・モジュールを少なくとも含み、前記推定されたテキストデータは、対応する前記筆跡データと結合されて前記認識結果データベースに格納される、ことを特徴する。
【発明の効果】
【００１２】
本発明によれば、タブレット型コンピュータにおけるより効率的な手書き文字認識方法およびシステムを提供することができる。
【００１３】
また、本発明によれば、手書き入力に対するユーザフィードバックがより迅速に行われ、手書き文字認識を行う際に従来では活用できていなかった予測変換機能や音声認識機能を利用することができる。
【００１４】
また、本発明によれば、筆跡情報とともに保存される１つまたは複数のテキストベースの文字列情報が存在するため、作成したメモに対して全文検索を行ったり、あるいはネットワーク上で提供される各種ウェブサービスにテキストベースの文字列情報を送信して連携したりすることも可能となる。
【図面の簡単な説明】
【００１５】
【図１】本発明に係るタブレット型コンピュータのシステム構成図である。
【図２】本発明に係る手書き文字認識方法を実行するためのプログラム・モジュールを示す図である。
【図３】本発明に係るタブレット型コンピュータの外観を示す図である。
【図４】本発明に係る手書き文字認識のフローを示す図である。
【図５】本発明に係る手書き文字認識のフローを示す図である。
【発明を実施するための形態】
【００１６】
以下、本発明の例示的な実施形態について詳細に説明する。
【００１７】
（システム構成）
図１は、本発明に係る手書き文字認識方法が実装されるタブレット型コンピュータ１００のシステム構成図である。
【００１８】
タブレット型コンピュータ１００は、制御部１０１、主記憶部１０２、補助記憶部１０３、インターフェース（Ｉ／Ｆ）部１０４、表示部１０５、認識結果ＤＢ１０６、辞書ＤＢ１０７、文字パターンＤＢ１０８および個人別履歴ＤＢ１０９を備える。これらの構成要素１０１〜１０９はバス１２０で相互に接続されており、制御部１０１によって各構成要素１０２〜１０９は統括して制御される。また、タブレット型コンピュータ１００は、スタイラスペン１６０を介してユーザ入力を受けることができる。図１では、スタイラスペン１６０は、タブレット型コンピュータ１００と有線で接続されていないことを示すために、破線の矢印で示されている。
【００１９】
制御部１０１は、中央処理装置（ＣＰＵ）とも呼ばれ、上述したように各構成要素１０２〜１０９の制御やデータの演算を行い、また、補助記憶部１０３に格納されている各種プログラム・モジュールを主記憶部１０２に読み出して実行する。主記憶部１０２は、メインメモリとも呼ばれ、タブレット型コンピュータ１００が受信した各種データ、コンピュータ実行可能な命令および当該命令による演算処理後のデータなどを記憶する。
【００２０】
補助記憶部１０３は、ハードディスク（ＨＤＤ）などに代表される記憶装置であり、データやプログラムを長期的に保存する際に使用される。主記憶部１０２は、補助記憶部１０３よりも記憶容量が相対的に小さいため、一時的なデータの記憶や演算処理などに使用されるのに対し、補助記憶部１０３は、必要なデータや情報の長期的な記憶・保存のために使用される。つまり、制御部１０１がプログラムを実行してデータの演算を行う場合には、補助記憶部１０３から必要なデータやプログラムを主記憶部１０２に読み出し、演算結果のデータを長期的に記憶・保存するには制御部１０１が補助記憶部１０３に演算結果のデータを書き込むこととなる。
【００２１】
インターフェース（Ｉ／Ｆ）部１０４は、手書き文字入力用のスタイラスペン１６０との間でデータを送受信する際のインターフェースの役割を果たす。タブレット型コンピュータ１００の外部から受信したデータは、主記憶部１０２に一時的に記憶される。また、インターフェース部１０４は、ユーザより各種コマンドや入力データ（各種マスタ、テーブルなど）を受け付けるインターフェース（入力画面などのアプリケーションプログラム）を表示部１０５に提供する。表示部１０５は、タブレット型コンピュータ１００によって処理されるデータや上記インターフェースを表示する。
【００２２】
認識結果ＤＢ１０６は、タブレット型コンピュータ１００によって認識された、ユーザ入力の筆跡情報と当該筆跡情報に結合された１つまたは複数の文字列および／または音声情報を格納する。
【００２３】
辞書ＤＢ１０７は、タブレット型コンピュータ１００において使用される、国語、類語、新語、英和・和英などの辞書や百科事典の情報を格納する。これらの辞書や百科事典は、タブレット型コンピュータ１００に予め内蔵されていても良いし、ネットワーク経由でダウンロードして格納されても良い。辞書ＤＢ１０７には、音声情報を認識する際に使用されるイントネーションなどの情報も含まれる。また、辞書ＤＢ１０７に格納されている各種辞書や百科事典は、タブレット型コンピュータ１００で稼動するアプリケーションで使用することができる管理情報などをメタデータとして保有する（例えば、使用頻度に応じた優先使用順位の情報、など）。
【００２４】
文字パターンＤＢ１０８は、ユーザによって入力された筆跡情報に基づいて対応する文字や語句を推定する際に使用される文字パターン（テンプレート）を格納する。この文字パターンは、タブレット型コンピュータ１００に予め内蔵されていても良いし、ネットワーク経由でダウンロードして格納されても良い。
【００２５】
個人別履歴ＤＢ１０９は、以前に入力した筆跡情報、辞書ＤＢ１０７に格納されている辞書や百貨事典の使用頻度および音声の特徴をユーザ別に保存しておくデータベースである。このデータベースを利用することにより、例えば、「会議」という文字についても個々人による筆跡の特徴を記憶することが可能であり、また、個々人の声の特徴も記憶することができるため、文字認識および音声認識の精度向上に役立たせることが可能となる。
【００２６】
スタイラスペン１６０は、タブレット型コンピュータ１００に表示される入力欄に文字を描画可能なものであれば、周知の任意のスタイラスペンを利用することができる。
【００２７】
（プログラム・モジュールの機能）
図２は、本発明に係る手書き文字認識方法を実行するためのプログラム・モジュールを示す図である。これらのプログラム・モジュールは、ユーザからの命令（入力）や特定の発生イベントに応答して制御部１０１によって主記憶部１０２上で実行される。
【００２８】
タブレット型コンピュータ１００は、第１モジュール群２０１および第２モジュール群２０２を有する。第１モジュール群２０１は、縮小表示モジュール２１１、選択領域表示モジュール２１２およびジェスチャー認識モジュール２１６を有する。第２モジュール群２０２は、手書き文字認識モジュール２１３、文字認識精度向上モジュール２１４および特定語句認識モジュール２１５を有する。
【００２９】
タブレット型コンピュータ１００は、文章検索モジュール２１７、ネットワークサービスモジュール２１８、予測変換モジュール２１９および音声認識モジュール２２０も有する。文章検索モジュール２１７およびネットワークサービスモジュール２１８は、ユーザの指示にしたがって第２モジュール群２０２と連携して起動されることが可能である。
【００３０】
文章検索モジュール２１７は、認識結果ＤＢ１０６に記憶されているテキストベースの文字列データを検索する機能を提供する。スタイラスペン１６０によって入力された手書き文字は、認識結果ＤＢ１０６に、手書き文字自体である筆跡情報（ビットマップデータ）として保存されると共に１つまたは複数のテキストベースの文字列データとして保存される。文章検索モジュール２１７は、この１つまたは複数の文字列データに基づいて検索を行うことができる。
【００３１】
ネットワークサービスモジュール２１８は、電子メール送受信機能、ＳＮＳへのアクセス機能、およびインターネットなどのネットワーク上に存在する情報をダウンロードして保存し、またネットワークに対してアップロードして共有するための機能を提供する。タブレット型コンピュータ１００は、ユーザの操作に基づき、スタイラスペン１６０によって入力された筆跡情報と文字パターンＤＢ１０８に記憶されているテンプレートとから画像を生成し、あるいは、認識した文字列の連続から文章を生成し、生成された画像・文章をネットワークサービスモジュール２１８を介してネットワークに送信し、当該ネットワークから提供される各種アプリケーションによるサービスを利用することができる。
【００３２】
予測変換モジュール２１９は、ユーザによって文字が入力されたことに応答してその文字の変換候補や後続する文字列を予測して提示する機能を提供する。この機能は、例えば、文字を入力する時に一部の文字を入力するとその入力された文字に基づいて予想される変換後の語句や後続の文字を提示する。
【００３３】
音声認識モジュール２２０は、タブレット型コンピュータ１００に内蔵されるマイクロホンを介して入力された音声入力を電気信号である音声情報として認識する。かかる認識時に、音声認識モジュール２２０は、スタイラスペン１６０によってほぼ同時に入力された筆跡情報がある場合には、その筆跡情報に音声情報を結合することができる。この結合処理に使用される情報は、例えば、ｓｙｓｄａｔｅなどの日付時刻情報である。例えば、ペン１６０を使用して「会議の場所」と手書き入力する時（あるいは入力直後）に、「１階会議室」と音声入力する場合には、筆跡情報「会議の場所」と音声情報「１階会議室」とが結合されて主記憶部１０２（最終的には認識結果ＤＢ１０６）に記憶される。
【００３４】
また、音声認識モジュール２２０は、音声認識した単語や文章の確度を辞書ＤＢ１０７に基づいて決定することができる。例えば、「きょういく」という音声入力に対して、「今日行く」あるいは「教育」という音声情報として認識される際に、前後の文脈や声のイントネーションに基づいていずれの認識結果が相対的に高い確度であるのかといった情報を決定することができる。この確度の情報（確かさの度合い）は、予測変換の精度を向上させるために使用される。
【００３５】
本明細書において説明されているように、筆跡情報（ビットマップデータ）に結合された音声情報がある場合には、音声認識モジュール２２０は、その音声情報に関しても推定処理を行い、１つまたは複数の文字列データ（テキストデータ）を確度の情報付きで獲得する。
【００３６】
第１モジュール群２０１は、ユーザフィードバックを優先して処理するために複数のプログラム・モジュールをまとめたものである。すなわち、第１モジュール群２０１は、［背景技術］の欄で説明した、１）、２）、６）の機能をベースに付加機能をあわせて実装するモジュール群である。
【００３７】
縮小表示モジュール２１１は、図３に示すように、タブレット型コンピュータ１００のディスプレイのある特定の領域（領域Ａ）にスタイラスペン１６０で入力された文字を、ビットマップデータとしてディスプレイの別の領域（領域Ｂ）に縮小して表示させる機能を提供する。例えば、ユーザがスタイラスペン１６０を使用してメモ作成アプリケーションに対して文字を入力する場合、文字入力欄（領域Ａ）は手書きをしやすい大きさの入力欄であり、筆跡情報が表示される表示欄（領域Ｂ）は入力された一連の文章を読むことが十分な大きさの表示欄である。また、縮小表示モジュール２１１は、スタイラスペン１６０により入力された筆跡情報を第２モジュール群２０２に送信する。音声認識モジュール２２０によって認識された音声情報が筆跡情報に結合されている場合には、筆跡情報と音声情報が結合されたままで送信される。送信された筆跡情報および／または音声情報は、例えば主記憶部１０２上の可変長リストに記憶されるが、記憶された情報は後述する処理が始まるまでそのまま保存される。
【００３８】
選択領域表示モジュール２１２は、複数の規定領域から入力する領域を選択して、入力文字をその選択した領域内へ表示する機能を提供する。図３に示した例で説明すると、ユーザは領域Ａおよび領域Ｂのいずれの領域でも入力領域を選択することができる。選択領域表示モジュール２１２は、ユーザによって選択された領域に入力された文字を表示する。また、選択領域表示モジュール２１２は、選択した領域において当該領域の右端に達した場合には自動的に改行処理を行う。改行の間隔は、規定のテンプレートやユーザによって予め設定された設定情報に依存する。さらに、選択領域表示モジュール２１２は、上記テンプレートや設定情報によっては領域中に筆記した文字が入りきらなくなる場合に、表示部１０５が表示可能なようになるまで、文字の縮小率を自動的に上げて文字列を表示可能にする。
【００３９】
ジェスチャー認識モジュール２１６は、タブレット型コンピュータ１００のタッチスクリーン／タッチパッドで、ジェスチャー（例えば、人間の指で表示部１０５を触れる）を利用した操作を可能にする。例えば、表示部１０５上に表示されている任意のアプリケーションのアイコンを１回タッチするジェスチャーを感知したら、そのアプリケーションを起動したり、あるいは、当該アイコンをドラッグするジェスチャーを感知したらそのアイコンを表示部１０５内で移動させたりする。
【００４０】
次に、第２モジュール群２０２の各モジュール２１３〜２１５について説明する。第２モジュール群２０２は、［背景技術］の欄で説明した、３）、４）、５）の機能をベースに付加機能をあわせて実装するモジュール群である。第２モジュール群２０２は、第１モジュール群２０１の処理に余裕がある時に処理を行う。第１モジュール群２０１の処理に余裕があるか否かの判定は、例えば、ユーザがスタイラスペン１６０による入力を一時休止し、手を休めている時など、所定のイベントに基づいて行われる。
【００４１】
手書き文字認識モジュール２１３は、スタイラスペン１６０によって入力された手書き文字、すなわち、縮小表示モジュール２１１から送信されて記憶されている筆跡情報を、例えば可変長リストから読み出して推定する。手書き文字認識モジュール２１３は、筆跡情報に付随する入力のタイミング情報やストロークの開始位置情報などに基づいて、読み出した筆跡情報から一文字ずつ推定する。ここで一文字に決定することができず、複数候補が推定される場合には、複数候補を確度付きで認識して保存する。なお、かかる推定は、文字パターンＤＢ１０８に記憶されている文字パターンと照合することによって行うことができる。
【００４２】
文字認識精度向上モジュール２１４は、辞書や文字の連続性に関する確率情報を用いることによって手書き文字認識の精度を向上させる機能を提供する。辞書は辞書ＤＢ１０７に含まれている辞書であり、文字の連続性とは文章として成立するか否かの情報を示す。また、文字認識精度向上モジュール２１４は、個人別履歴ＤＢ１０９に格納されているユーザ別の情報を利用して手書き文字認識の精度を向上させる。
【００４３】
特定語句認識モジュール２１５は、手書き文字認識モジュール２１３および文字認識精度向上モジュール２１４と連携することにより、文章内の特定語句の認識とそれに対するアノテーション（注釈）を付する機能を提供する。つまり、特定語句認識モジュール２１５は、１つまたは複数の文字区切り候補、１つまたは複数の文字認識の候補、辞書や文字の連続性に関する確率情報、および音声認識の結果を総合的に判断して、１つまたは複数の文字の区切りと対応する文字の候補を確度付きで算出する。算出された１つまたは複数の文字の区切りと対応する文字の候補は、タブレット型コンピュータ１００のディスプレイ上で常時見えることなく認識結果ＤＢ１０６に保存されており、保存されたこれらのデータはユーザによって行われる検索操作で使用される。この検索操作は、複数の文字の区切りおよび対応する文字の候補が存在する場合には、確度の高い順に行われる。
【００４４】
特定語句認識モジュール２１５は、算出した１つまたは複数の文字の区切りと対応する文字の候補を確度の高い順に表示部１０５に表示して、ユーザから文字認識の確定情報を得ることもできる。また特定語句認識モジュール２１５は、ユーザから文字認識の間違えについて指摘・訂正を受けることができる。かかるユーザからの確定情報や指摘・訂正情報については、アプリケーションを提示してユーザに正しい候補を選択してもらったり、あるいは、誤認識した文字を再度丁寧に筆記してもらったりすることにより得ることができる。
【００４５】
文章検索モジュール２１７は、テキストベースの上記算出された文字認識の結果に対して検索を行う。一実施形態ではこの検索は、ユーザによって確定処理された文字列データに対してのみ行われるのではなく、所定の確度以上の文字の組み合わせに対して並行して行われることも可能である。
【００４６】
（処理フロー）
図４は、上記各モジュールを使用する、本発明に係る手書き文字認識のフローを示す図である。以下の説明では、図３に示すように、タブレット型コンピュータ１００のディスプレイのうちユーザの手元に近い領域を領域Ａとして定義し、残りの領域を領域Ｂとして定義する。領域Ａに入力された文字は、筆跡情報として領域Ｂに縮小表示される。
【００４７】
ステップＳ４０１にて、タブレット型コンピュータ１００は、第２モジュール群２０２の処理を優先度の低いスレッドとして生成する。ここで、「優先度の低い」とするのは、上述したように、第２モジュール群２０２の処理は、第１モジュール群２０１の処理に余裕がある時に行われるためである。また、「スレッド」とはソフトウェアの実行単位であり、１つまたは複数のプログラム・モジュールを含むことができる。
【００４８】
ステップＳ４０２にて、タブレット型コンピュータ１００は、第２モジュール群２０２の処理を開始することができるか否かを判定する。具体的には、タブレット型コンピュータ１００に対するユーザ入力が所定の時間ないなど予め定められた期間のユーザ入力の有無を判定する。その期間中、ユーザ入力があればステップＳ４０３に処理が進み、ユーザ入力がなければ図５に示す第２モジュール群２０２の処理フローに処理が進む。
【００４９】
ステップＳ４０３にて、タブレット型コンピュータ１００は、ユーザ入力を受信する。ここで、ユーザ入力には、ジェスチャー、スタイラスペン１６０による入力、音声入力およびタブレット型コンピュータ１００本体機器への入力などが含まれる。
【００５０】
ステップＳ４０４にて、タブレット型コンピュータ１００は、ユーザ入力が、ジェスチャーに該当するか否かを判定する。上述したように、ジェスチャーとは、タブレット型コンピュータ１００のディスプレイに対して行われるユーザの指などによる接触行為のことを指す。ステップＳ４０５にて、タブレット型コンピュータ１００は、ジェスチャーに対応する処理を行う。具体的には、タブレット型コンピュータ１００は、対応するアプリケーションの操作などを行う。タブレット型コンピュータ１００は、この処理が終了したら、ステップＳ４０２に処理を戻す。
【００５１】
ステップＳ４０６にて、タブレット型コンピュータ１００は、ユーザ入力がスタイラスペン１６０を介した領域Ａへの入力に該当するか否かを判定する。
【００５２】
ステップＳ４０７にて、タブレット型コンピュータ１００は、スタイラスペン１６０による入力に対応する描画を領域Ａに行うとともに、縮小表示モジュール２１１を用いて、所定のタイミングで領域Ｂに対してその描画に対応するビットマップデータを領域Ｂに縮小表示する。この縮小表示は、領域Ｂに既に表示されているビットマップデータと新たに追加されるビットマップデータの大きさを考慮して、領域Ｂに既に表示されているビットマップデータと新たに追加されるビットマップデータを縮小表示することによって行われる。また、タブレット型コンピュータ１００は、領域Ａに入力された文字列が画面右端に到達した場合、選択領域表示モジュール２１２を用いて、使用されているテンプレートや設定情報に従って自動的に改行処理を行う。
【００５３】
ステップＳ４０８にて、タブレット型コンピュータ１００は、領域Ａに入力された文字を筆跡情報として、縮小表示モジュール２１１を介して第２モジュール群２０２に送信し、領域Ｂとの共有リスト（例えば可変長リスト）に保存する。タブレット型コンピュータ１００は、この処理が終了したら、ステップＳ４０２に処理を戻す。
【００５４】
ステップＳ４０９にて、タブレット型コンピュータ１００は、ユーザ入力が音声入力か否かを判定する。音声入力は、タブレット型コンピュータ１００のマイクロホンによって電気信号に変換される。ステップＳ４１０にて、タブレット型コンピュータ１００は、音声認識モジュール２２０を使用して、音声入力が行われた際に入力されていた筆跡情報と音声情報を結合し、その後領域Ｂとの共有リストに保存する。タブレット型コンピュータ１００は、この処理が終了したら、ステップＳ４０２に処理を戻す。
【００５５】
ステップＳ４１１にて、タブレット型コンピュータ１００は、ユーザ入力が機器本体からの入力あるいはスタイラスペン１６０を介した領域Ａ以外への入力操作なのか否かを判定する。ステップＳ４１２にて、タブレット型コンピュータ１００は、当該入力に対応する処理を行う（例えば、初期表示画面を表示する、など）。タブレット型コンピュータ１００は、この処理が終了したら、ステップＳ４０２に処理を戻す。
【００５６】
図５は、本発明に係る手書き文字認識のフローのうち、第２モジュール群２０２に係る処理を示す図である。
【００５７】
ステップＳ５０１にて、タブレット型コンピュータ１００は、領域Ａと領域Ｂの共有リストにデータが保存されているか否かを判定する。上述したように、共有リストには縮小表示モジュール２１１によって筆跡情報が送信され、保存されている。この共有リストに未処理の筆跡情報が格納されていればステップＳ５０２に処理が進み、一方、未処理の筆跡情報が格納されていなければ図５の処理フローは終了する。データが未処理であるか、あるいは処理済であるかを判定するのは、筆跡情報データに付随するフラグの値や所定のメタデータの値によって行うことができる。
【００５８】
ステップＳ５０２にて、タブレット型コンピュータ１００は、手書き文字認識モジュール２１３を用いて共有リストから筆跡情報や音声情報を読み出して主記憶部１０２に格納する。
【００５９】
ステップＳ５０３にて、手書き文字認識モジュール２１３は、筆跡情報のヘッダ部分に格納されている入力のタイミング情報やストロークの開始位置情報などに基づいて、読み出した筆跡情報から一文字ずつ推定する。一文字に決定することができず、複数候補が推定される場合には、複数候補を確度付きで推定しておく。かかる推定は、文字パターンＤＢ１０８に格納されている文字パターンと照合することによって行うことができる。タブレット型コンピュータ１００は、予測変換モジュール２１９を使用して、読み出した文字列およびその後に続く文字列を推定することも可能である。また、手書き文字認識モジュール２１３は、上述したような文字認識精度向上モジュール２１４および特定語句認識モジュール２１５と連携して処理を行うことにより、当該推定の精度を向上させることができる。
【００６０】
また、上記筆跡情報に関連付けられた音声情報がある場合には、音声認識モジュール２２０は、その音声情報に関して推定処理を行い、１つまたは複数の推定結果（テキストデータ）を確度付きで獲得する。音声認識時に確度の情報を使用することで予測変換を行うことが可能となる。
【００６１】
ステップＳ５０４にて、タブレット型コンピュータ１００は、任意の処理として、推定した１つまたは複数の文字や語句の確度が所定の確度以上であれば、特定語句認識モジュール２１５を使用して表示部１０５に表示する。表示部１０５に表示された１つまたは複数の文字や語句は、ユーザによって確定処理や誤り訂正処理がなされる。例えば、タブレット型コンピュータ１００は、表示部１０５に１つまたは複数の文字や語句について確定処理をユーザに行わせるための画面を表示させたり、あるいはユーザに誤り訂正をさせるために訂正のための入力欄や編集画面を表示させたりすることができる。ステップＳ５０５にて、タブレット型コンピュータ１００は、任意の処理として、ユーザによって行われた確定処理や誤り訂正処理にしたがって文字認識を行う。
【００６２】
ステップＳ５０６にて、タブレット型コンピュータ１００は、認識結果である１つまたは複数の文字列データ（テキストデータ）を筆跡情報（ビットマップデータ）と結合して認識結果ＤＢ１０６に保存する。保存が完了したら、ステップＳ５０１に処理が戻る。
【００６３】
（その他の実施形態）
上記の実施形態に付加することが可能な以下の機能についてもタブレット型コンピュータ１００の有するプログラム・モジュールやデータベースに追加することができる。
【００６４】
図１に示したように、タブレット型コンピュータ１００は、個人別履歴ＤＢ１０９を有する。上述のステップＳ５０３において筆跡情報から一文字ずつ推定する際に、個人別履歴ＤＢ１０９に格納されている当該ユーザの筆跡情報と照合することによって、より高い確度の推定を行うことができる。格納されている筆跡情報は以前の文字認識結果である文字列データと関連付けられている。個人別履歴ＤＢ１０９を参照しながら照合を行う際には、タブレット型コンピュータ１００は、個人別履歴ＤＢ１０９の筆跡情報を基準にして、ユーザ入力された筆跡情報を必要に応じて拡大または縮小させつつ、あるいは、少しずつずらしながら照合を行う。
【００６５】
音声認識モジュール２２０は、個人別履歴ＤＢ１０９に保存されているユーザ別の音声の特徴に基づいて、タブレット型コンピュータ１００のユーザの音声を聞き分けて、音声認識を行うこともできる。例えば、会議などで複数の人が発言する場合を想定すると、通常のモードでは、タブレット型コンピュータ１００に内蔵されているマイクロホンは複数の人の音声入力に対して音声認識を行ってしまうが、この機能を利用するとタブレット型コンピュータ１００のユーザの音声入力だけを選別して音声認識を行うことが可能となる。
【００６６】
また、タブレット型コンピュータ１００は、入力された文字や語句、あるいは音声認識した単語などから辞書ＤＢ１０７に格納されている各種辞書の優先順位を決定することも可能である。例えば、コンピュータ・サイエンスの分野で使用される文字や語句が格納されている辞書が多く使用される場合には、タブレット型コンピュータ１００は、当該辞書を参照する順番を高い優先順位に変更することができる。このようにある特定の辞書が多用される場合には、辞書ＤＢ１０７に格納されている辞書の優先順位を変更することにより、文字や語句の推定の精度を向上させることが可能となる。なお、上述したように、辞書ＤＢ１０７にはネットワークから新たな分野の辞書をダウンロードして追加することが可能である。
【００６７】
（まとめ）
上述の実施形態で説明した方法、機能および手段は、コンピュータ実施可能なプログラムとして実装することも可能であり、また、当該プログラムを格納したコンピュータ読み取り可能な記録媒体として実施することも可能である。
【００６８】
上記で説明した実施形態はあくまでも例示であり、本発明は上記の実施形態に限定されることはなく、様々な変形が可能である。すなわち、特許請求の範囲に記載された技術的思想に基づくものである限り、その変形は本発明の技術範囲内に含まれる。
【符号の説明】
【００６９】
１００  タブレット型コンピュータ
１０６  認識結果ＤＢ
１０７  辞書ＤＢ
１０８  文字パターンＤＢ
１０９  個人別履歴ＤＢ
１６０  スタイラスペン
２０１  第１モジュール群
２０２  第２モジュール群
２１１  縮小表示モジュール
２１２  選択領域表示モジュール
２１３  手書き文字認識モジュール
２１４  文字認識精度向上モジュール
２１５  特定語句認識モジュール
２１６  ジェスチャー認識モジュール
２１７  文章検索モジュール
２１８  ネットワークサービスモジュール
２１９  予測変換モジュール
２２０  音声認識モジュール
【図１】
2012014517.tif 000003
【図２】
2012014517.tif 000004
【図３】
2012014517.tif 000005
【図４】
2012014517.tif 000006
【図５】
2012014517.tif 000007