(57)【要約】【課題】手書き入力された文字の向きを文書整形に利用すること等を実現した情報処理システムを提供する。【解決手段】実施形態によれば、情報処理システムは、タッチスクリーンディスプレイと、記録手段と、判別手段と、を具備する。記録手段は、前記タッチスクリーンディスプレイ上で手書きされた軌跡を示すストロークデータをストロークデータ間の順序関係を識別可能に記録する。判別手段は、前記記録手段により順序関係が識別可能な２以上のストロークデータの位置関係に基づき、前記ストロークデータで示される軌跡が表す文字の向きを判別する。【選択図】図６
2014052718.tif 000002
【特許請求の範囲】
【請求項１】
タッチスクリーンディスプレイと、
前記タッチスクリーンディスプレイ上で手書きされた軌跡を示すストロークデータをストロークデータ間の順序関係を識別可能に記録する記録手段と、
前記記録手段により順序関係が識別可能な２以上のストロークデータの位置関係に基づき、前記ストロークデータで示される軌跡が表す文字の向きを判別する判別手段と、
を具備する情報処理システム。
【請求項２】
前記ストロークデータで示される軌跡が表す文字を認識して文字コードを取得する認識手段を具備し、
前記認識手段は、前記判別手段により判別された文字の向きに基づき、２以上の文字を１つの文字列として処理するために手書き領域内に設定する文字ブロック領域の向きを調整する、
請求項１に記載の情報処理システム。
【請求項３】
前記認識手段により取得された文字コードに対応する文字を、前記認識手段により抽出された文字ブロック領域の配置情報に基づき、前記タッチスクリーンディスプレイに表示する整形文書表示手段を具備する請求項２に記載の情報処理システム。
【請求項４】
前記判別手段は、第１のストロークデータの位置から前記第１のストロークデータに後続する第２のストロークデータの位置への移動方向と、文字を書く際の運筆方向として水平および垂直のそれぞれについて予め定められた方向とを比較して、前記ストロークデータで示される軌跡が表す文字の向きを判別する請求項１に記載の情報処理システム。
【請求項５】
前記判別手段により判別された文字の向きに基づき、前記タッチスクリーンディスプレイの向きを検知する検知手段を具備する請求項１に記載の情報処理システム。
【請求項６】
前記ストロークデータで示される軌跡を前記タッチスクリーンディスプレイに表示する手書き文書表示手段を具備する請求項１に記載の情報処理システム。
【請求項７】
コンピュータを、
タッチスクリーンディスプレイ上で手書きされた軌跡を示すストロークデータをストロークデータ間の順序関係を識別可能に記録する記録手段、
前記記録手段により順序関係が識別可能な２以上のストロークデータの位置関係に基づき、前記ストロークデータで示される軌跡が表す文字の向きを判別する判別手段、
として機能させるためのプログラム。
【請求項８】
情報処理システムの処理方法であって、
タッチスクリーンディスプレイ上で手書きされた軌跡を示すストロークデータをストロークデータ間の順序関係を識別可能に記憶媒体へ記録し、
順序関係が識別可能に記録された２以上のストロークデータの位置関係に基づき、前記ストロークデータで示される軌跡が表す文字の向きを判別する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、手書き入力された文書の処理技術に関する。
【背景技術】
【０００２】
近年、タブレット端末、ＰＤＡ（Personal digital assistant）、スマートフォンといったバッテリ駆動可能で携行容易な情報処理装置が種々開発されている。この種の情報処理装置の多くは、ユーザによる入力操作を容易にするために、タッチスクリーンディスプレイを備えている。
【０００３】
ユーザは、タッチスクリーンディスプレイ上に表示されるメニューまたはオブジェクトを指などでタッチすることにより、これらメニューまたはオブジェクトに関連づけられた機能の実行を情報処理装置に指示することができる。
【０００４】
また、タッチスクリーンディスプレイを使った入力操作は、情報処理装置に対して動作指示を与えるに止まらず、手書きで文書を入力する用途にも使われている。最近では、この種の情報処理装置を持参して会議に出席し、タッチスクリーンディスプレイ上で手書き入力を行うことで、メモを取ること等も行われ始めている。文字認識機能を搭載した情報処理装置では、手書き入力された文書に対応するテキストデータを得ることができる。手書き入力に関する処理については、これまでも種々の提案がなされている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１２−３５８６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
例えば「ＡＢＣ」という３文字が手書き入力された場合、文字認識機能を搭載した情報処理装置は、「ＡＢＣ」が手書きされた領域を１つの文字ブロック領域として抽出し、各文字を認識する。「Ａ」、「Ｂ」、「Ｃ」の３文字は、同一の文字ブロック領域に属するので、１つの文字列（オブジェクト）「ＡＢＣ」として処理される。
【０００７】
ところで、タッチスクリーンディスプレイの表示面（入力面）の形状は、通常、矩形であり、タッチスクリーンディスプレイを備える情報処理装置は、その表示面を横長または縦長のいずれに向けても利用できるのが一般的である。また、日本語は、縦書き、横書きのいずれも可能である。そのため、文字ブロック領域が（手書き入力を行った）ユーザの意図した通りに設定されず、例えば「ＡＢＣ」という３文字が縦書きされた場合、これらが１つの文字列としてではなく、「Ａ」、「Ｂ」、「Ｃ」という互いに独立した文字（オブジェクト）として処理されてしまうことも少なくなかった。
【０００８】
本発明の一形態は、手書き入力された文字の向きを文書整形に利用すること等を実現した情報処理システム、プログラムおよび情報処理システムの処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
実施形態によれば、情報処理システムは、タッチスクリーンディスプレイと、記録手段と、判別手段と、を具備する。記録手段は、前記タッチスクリーンディスプレイ上で手書きされた軌跡を示すストロークデータをストロークデータ間の順序関係を識別可能に記録する。判別手段は、前記記録手段により順序関係が識別可能な２以上のストロークデータの位置関係に基づき、前記ストロークデータで示される軌跡が表す文字の向きを判別する。
【図面の簡単な説明】
【００１０】
【図１】実施形態に係る情報処理システム（情報処理装置）の外観を示す斜視図。
【図２】同実施形態の情報処理装置と外部装置（パーソナルコンピュータ，サーバ）との連携動作を示す図。
【図３】同実施形態の情報処理装置のタッチスクリーンディスプレイ上に手書きされる手書きデータの例を示す図。
【図４】同実施形態の情報処理装置によって記憶媒体に保存される手書きデータを説明するための図。
【図５】同実施形態の情報処理装置のシステム構成を示す図。
【図６】同実施形態の情報処理装置上で動作するデジタルノートブックアプリケーションプログラムの機能ブロック図。
【図７】同実施形態の情報処理装置上で動作するデジタルノートブックアプリケーションプログラムによる文字向き検出の基本原理を説明するための図。
【図８】同実施形態の情報処理装置上で動作するデジタルノートブックアプリケーションプログラムによる文字向き検出の例を示す第１の図。
【図９】同実施形態の情報処理装置上で動作するデジタルノートブックアプリケーションプログラムによる文字向き検出の例を示す第２の図。
【図１０】同実施形態の情報処理装置上で動作するデジタルノートブックアプリケーションプログラムによる文字向き検出の例を示す第３の図。
【図１１】同実施形態の情報処理装置上で動作するデジタルノートブックアプリケーションプログラムによる文書整形の例を示す図。
【図１２】同実施形態の情報処理装置上で動作するデジタルノートブックアプリケーションプログラムの処理手順を示すフローチャート。
【発明を実施するための形態】
【００１１】
以下、実施の形態について図面を参照して説明する。
【００１２】
本実施形態の情報処理システムは、例えば、タブレットコンピュータ、ノートブック型パーソナルコンピュータ、スマートフォン、ＰＤＡ等、ペンまたは指によって手書き入力可能なペン・ベースの携帯型情報処理装置として実現され得る。図１は、本実施形態に係る情報処理システム（情報処理装置）の外観を示す斜視図である。図１に示すように、ここでは、情報処理装置が、タブレットコンピュータ１０として実現されている場合を想定する。タブレットコンピュータ１０は、本体１１とタッチスクリーンディスプレイ１７とを備える。タッチスクリーンディスプレイ１７は、本体１１の上面に重ね合わせるように取り付けられている。
【００１３】
本体１１は、薄い箱形の筐体を有している。タッチスクリーンディスプレイ１７には、フラットパネルディスプレイと、フラットパネルディスプレイの画面上のペンまたは指の接触位置を検出するように構成されたセンサとが組み込まれている。フラットパネルディスプレイは、例えば、液晶表示装置（ＬＣＤ：Liquid crystal display）であってもよい。センサとしては、例えば、静電容量方式のタッチパネル、電磁誘導方式のデジタイザなどを使用することができる。以下では、デジタイザとタッチパネルの２種類のセンサの双方がタッチスクリーンディスプレイ１７に組み込まれている場合を想定する。
【００１４】
デジタイザおよびタッチパネルの各々は、フラットパネルディスプレイの画面を覆うように設けられる。このタッチスクリーンディスプレイ１７は、指を使用した画面に対するタッチ操作のみならず、ペン１００を使用した画面に対するタッチ操作も検出することができる。ペン１００は例えば電磁誘導ペンであってもよい。ユーザは、外部オブジェクト（ペン１００又は指）を使用してタッチスクリーンディスプレイ１７上で手書き入力操作を行うことができる。外部オブジェクト（ペン１００又は指）の軌跡、つまり手書き入力操作によって手書きされる各ストロークの軌跡（筆跡）は、画面上に表示される。外部オブジェクトが画面に接触されている間の外部オブジェクトの軌跡が１ストロークに相当する。手書きされた文字または図形などに対応する多数のストロークの集合、つまり多数の軌跡（筆跡）の集合が手書き文書を構成する。
【００１５】
本実施形態では、この手書き文書は、イメージデータではなく、各ストロークの軌跡の座標列とストローク間の順序関係を示す時系列情報として記憶媒体に保存される。この時系列情報の詳細は図４を参照して後述するが、この時系列情報は、概して、複数のストロークにそれぞれ対応する時系列のストロークデータの集合を意味する。各ストロークデータは、ある一つのストロークに対応し、このストロークの時系列座標を示す。これらストロークデータの並びの順序は、手書きされた文字または図形の筆順に相当する。
【００１６】
タブレットコンピュータ１０は、記憶媒体から既存の任意の時系列情報を読み出し、この時系列情報に対応する手書き文書、つまりこの時系列情報によって示される複数のストロークそれぞれに対応する軌跡を画面上に表示することができる。さらに、タブレットコンピュータ１０は編集機能を有している。この編集機能は、「消しゴム」ツール、範囲指定ツール、および他の各種ツール等を用いたユーザによる編集操作に応じて、表示中の手書き文書内の任意のストロークの軌跡を消去または移動することができる。さらに、この編集機能は、幾つかの手書き操作の履歴を取り消すことなどを可能にする。
【００１７】
本実施形態では、時系列情報（手書き文書）は、１つのまたは複数のページとして管理され得る。この場合、時系列情報（手書き文書）を１つの画面に収まる面積単位で区切り、１つの画面に収まる時系列情報のまとまりを１つのページとして記録してもよい。あるいは、ページのサイズを可変できるようにしてもよい。この場合、ページのサイズは１つの画面のサイズよりも大きい面積に広げることができるので、画面のサイズよりも大きな面積の手書き文書を一つのページとして扱うことができる。１つのページ全体をディスプレイに同時に表示できない場合は、そのページを縮小してするようにしてもよいし、縦横スクロールによってページ内の表示対象部分を移動するようにしてもよい。
【００１８】
図２は、本実施形態のタブレットコンピュータ１０と外部装置（パーソナルコンピュータ１，サーバ２）との連携動作の例を示している。タブレットコンピュータ１０は、パーソナルコンピュータ１やクラウドと連携することができる。すなわち、タブレットコンピュータ１０は、無線ＬＡＮなどの無線通信デバイスを備えており、パーソナルコンピュータ１との無線通信を実行することができる。さらに、タブレットコンピュータ１０は、インターネット上のサーバ２との通信を実行することもできる。サーバ２はオンラインストレージサービス、他の各種クラウドコンピューティングサービスを実行するサーバであってもよい。
【００１９】
パーソナルコンピュータ１はハードディスクドライブ（ＨＤＤ）のようなストレージデバイスを備えている。タブレットコンピュータ１０は、時系列情報（手書き文書）をネットワーク越しにパーソナルコンピュータ１に送信して、パーソナルコンピュータ１のＨＤＤに記録することができる（アップロード）。タブレットコンピュータ１０とパーソナルコンピュータ１との間のセキュアな通信を確保するために、通信開始時には、パーソナルコンピュータ１がタブレットコンピュータ１０を認証するようにしてもよい。この場合、タブレットコンピュータ１０の画面上にユーザに対してＩＤまたはパスワードの入力を促すダイアログを表示してもよいし、タブレットコンピュータ１０のＩＤなどを自動的にタブレットコンピュータ１０からパーソナルコンピュータ１に送信してもよい。
【００２０】
これにより、タブレットコンピュータ１０内のストレージの容量が少ない場合でも、タブレットコンピュータ１０が多数の時系列情報（手書き文書）あるいは大容量の時系列情報（手書き文書）を扱うことが可能となる。
【００２１】
さらに、タブレットコンピュータ１０は、パーソナルコンピュータ１のＨＤＤに記録されている任意の１以上の時系列情報を読み出し（ダウンロード）、その読み出した時系列情報によって示されるストロークそれぞれの軌跡をタブレットコンピュータ１０のタッチスクリーンディスプレイ１７の画面に表示することができる。この場合、複数の時系列情報（手書き文書）それぞれのページを縮小することによって得られるサムネイルの一覧を表示してもよいし、これらサムネイルから選ばれた１ページをタッチスクリーンディスプレイ１７に通常サイズで表示してもよい。
【００２２】
さらに、タブレットコンピュータ１０が通信する先はパーソナルコンピュータ１ではなく、前述したように、ストレージサービスなどを提供するクラウド上のサーバ２であってよい。タブレットコンピュータ１０は、時系列情報（手書き文書）をネットワーク越しにサーバ２に送信して、サーバ２のストレージデバイス２Ａに記録することができる（アップロード）。さらに、タブレットコンピュータ１０は、サーバ２のストレージデバイス２Ａに記録されている任意の時系列情報を読み出して（ダウンロード）、その時系列情報によって示されるストロークそれぞれの軌跡をタブレットコンピュータ１０のタッチスクリーンディスプレイ１７の画面に表示することができる。
【００２３】
このように、本実施形態では、時系列情報が格納される記憶媒体は、タブレットコンピュータ１０内のストレージデバイス、パーソナルコンピュータ１内のストレージデバイス、サーバ２のストレージデバイスのいずれであってもよい。
【００２４】
次に、図３および図４を参照して、ユーザによって手書きされたストローク（文字、マーク、図形、表など）と時系列情報との関係について説明する。図３は、ペン１００などを使用してタッチスクリーンディスプレイ１７上に手書きされる手書き文書（手書き文字列）の例を示している。
【００２５】
手書き文書では、一旦手書きされた文字や図形などの上に、さらに別の文字や図形などが手書きされるというケースが多い。図３においては、「ＡＢＣ」の手書き文字列が「Ａ」、「Ｂ」、「Ｃ」の順番で手書きされ、この後に、手書きの矢印が、手書き文字「Ａ」のすぐ近くに手書きされた場合が想定されている。
【００２６】
手書き文字「Ａ」は、ペン１００などを使用して手書きされる２つのストローク（「∧」形状の軌跡、「−」形状の軌跡）によって、つまり２つの軌跡によって表現される。最初に手書きされる「∧」形状のペン１００の軌跡は例えば等時間間隔でリアルタイムにサンプリングされ、これによって「∧」形状のストロークの時系列座標ＳＤ１１、ＳＤ１２、…、ＳＤ１ｎが生成される。同様に、次に手書きされる「−」形状のペン１００の軌跡もサンプリングされ、これによって「−」形状のストロークの時系列座標ＳＤ２１、ＳＤ２１、…、ＳＤ２ｎが生成される。
【００２７】
手書き文字「Ｂ」は、ペン１００などを使用して手書きされた２つのストローク、つまり２つの軌跡によって表現される。手書き文字「Ｃ」は、ペン１００などを使用して手書きされた手書きされた１つのストローク、つまり１つの軌跡によって表現される。手書きの「矢印」は、ペン１００などを使用して手書きされた手書きされた２つのストローク、つまり２つの軌跡によって表現される。
【００２８】
図４は、図３の手書き文書に対応する時系列情報２００を示している。時系列情報は、複数のストロークデータＳＤ１、ＳＤ２、…、ＳＤ７を含む。時系列情報２００内においては、これらストロークデータＳＤ１、ＳＤ２、…、ＳＤ７は、筆跡順に、つまり複数のストロークが手書きされた順に時系列に並べている。
【００２９】
時系列情報２００において、先頭の２つのストロークデータＳＤ１、ＳＤ２は、手書き文字「Ａ」の２つのストロークをそれぞれ示している。３番目と４番目のストロークデータＳＤ３、ＳＤ４は、手書き文字「Ｂ」を構成する２つのストロークをそれぞれ示している。５番目のストロークデータＳＤ５は、手書き文字「Ｃ」を構成する１つのストロークを示している。６番目と７番目のストロークデータＳＤ６、ＳＤ７は、手書き「矢印」を構成する２つのストロークをそれぞれ示している。
【００３０】
各ストロークデータは、一つのストロークに対応する時系列座標、つまり一つのストロークに対応する複数の座標を示す。各ストロークデータにおいては、複数の座標はストロークが書かれた順に時系列に並べられている。例えば、手書き文字「Ａ」に関しては、ストロークデータＳＤ１は、手書き文字「Ａ」の「∧」形状のストロークの時系列座標、つまりｎ個の座標データＳＤ１１、ＳＤ１２、…ＳＤ１ｎを含む。ストロークデータＳＤ２は、手書き文字「Ａ」の「−」形状の時系列座標、つまりｎ個の座標データＳＤ２１、ＳＤ２２、…ＳＤ２ｎを示す。なお、座標データの数はストロークデータ毎に異なっていてもよい。
【００３１】
各座標データは、対応する軌跡内のある１点に対応するＸ座標およびＹ座標を示す。例えば、座標データＳＤ１１は、「∧」形状のストロークの始点に対応するＸ座標（Ｘ１１）およびＹ座標（Ｙ１１）を示す。ＳＤ１ｎは、「∧」形状のストロークの終点に対応するＸ座標（Ｘ１ｎ）およびＹ座標（Ｙ１ｎ）を示す。
【００３２】
また、各座標データは、タイムスタンプ情報Ｔを含んでいる。タイムスタンプ情報Ｔは、対応する点が手書きされた時間を示す。手書きされた時間は絶対時間（例えば、年月日時分秒）またはある時点を基準とした相対時間のいずれであってもよい。例えば、各ストロークデータに、ストロークが書き始められた絶対時間（例えば、年月日時分秒）を付加し、さらに、ストロークデータ内の各座標データに、絶対時間との差分を示す相対時間をタイムスタンプ情報Ｔとして付加してもよい。
【００３３】
さらに、各座標データには、筆圧を示す情報（Ｚ）を追加してもよい。
【００３４】
図４で説明したような構造を有する時系列情報２００は、個々のストロークの筆跡だけでなく、文字又は図形が手書きされた筆順も表すことができる。したがって、この時系列情報２００を使用することにより、図３に示すようにたとえ手書き「矢印」の先端部が手書き文字「Ａ」上に重ねてまたは手書き文字「Ａ」に近接して書かれたとしても、手書き文字「Ａ」と手書き「矢印」の先端部とを異なる文字または図形として扱うことが可能となる。
【００３５】
いま、図３に破線の四角で示されているように、ユーザによって画面上のある範囲が指定された場合を想定する。破線の四角によって示される指定範囲には、手書き文字「Ａ」の２つのストロークと、手書き「矢印」の先端部に対応する１つのストロークが含まれている。通常であれば、手書き文字「Ａ」の２つのストロークのみならず、手書き「矢印」の先端部に対応する１つのストロークも、処理対象の時系列情報部分として選択されてしまう可能性がある。
【００３６】
しかし、本実施形態では、時系列情報２００を使用することにより、手書き「矢印」の先端部を処理対象の時系列情報部分から除外することができる。すなわち、本実施形態では、時系列情報２００が解析され、これによって手書き文字「Ａ」の２つのストローク（ストロークデータＳＤ１、ＳＤ２）については連続的に手書きされたものと判定され、さらに、手書き「矢印」の先端部（ストロークデータＳＤ７）の手書きタイミングは、手書き文字「Ａ」の２つのストロークの手書きタイミングと不連続であることが判定される。したがって、手書き「矢印」の先端部（ストロークデータＳＤ７）を処理対象の時系列情報部分から除外することができる。
【００３７】
さらに、本実施形態の時系列情報２００においては、前述したように、ストロークデータＳＤ１、ＳＤ２、…、ＳＤ７の並びは手書き文字の筆順を示す。例えば、ストロークデータＳＤ１およびＳＤ２の並びは、最初に「∧」形状のストロークが手書きされ、次に「−」形状のストロークが手書きされたことを表す。したがって、たとえ２つの手書き文字の筆跡同士が互いに類似していても、それら２つの手書き文字の筆順が互いに異なる場合には、それら２つの手書き文字を異なる文字として区別することができる。
【００３８】
さらに、本実施形態では、前述したように、手書き文書は、イメージまたは文字認識結果ではなく、時系列のストロークデータの集合から構成される時系列情報２００として記憶されるので、手書き文字の言語に依存せずに手書き文字を扱うことができる。よって、本実施形態の時系列情報２００の構造は、使用言語の異なる世界中の様々な国で共通に使用できる。
【００３９】
図５は、タブレットコンピュータ１０のシステム構成を示す図である。
【００４０】
タブレットコンピュータ１０は、図５に示されるように、ＣＰＵ１０１、システムコントローラ１０２、主メモリ１０３、グラフィクスコントローラ１０４、ＢＩＯＳ−ＲＯＭ１０５、不揮発性メモリ１０６、無線通信デバイス１０７およびＥＣ（Embedded controller）１０８等を備える。
【００４１】
ＣＰＵ１０１は、タブレットコンピュータ１０内の各種モジュールの動作を制御するプロセッサである。ＣＰＵ１０１は、ストレージデバイスである不揮発性メモリ１０６から主メモリ１０３にロードされる各種ソフトウェアを実行する。これらソフトウェアには、オペレーティングシステム（ＯＳ）２０１や各種アプリケーションプログラムが含まれている。各種アプリケーションプログラムには、デジタルノートブックアプリケーションプログラム２０２が含まれている。このデジタルノートブックアプリケーションプログラム２０２は、前述の手書き文書を作成および表示する機能、手書き文書を編集する機能、筆跡検索機能、および文字・図表認識機能等を有している。
【００４２】
また、ＣＰＵ１０１は、ＢＩＯＳ−ＲＯＭ１０５に格納された基本入出力システム（ＢＩＯＳ：Basic input/output system）も実行する。ＢＩＯＳは、ハードウェア制御のためのプログラムである。
【００４３】
システムコントローラ１０２は、ＣＰＵ１０１のローカルバスと各種コンポーネントとの間を接続するデバイスである。システムコントローラ１０２には、主メモリ１０３をアクセス制御するメモリコントローラも内蔵されている。また、システムコントローラ１０２は、ＰＣＩ  ＥＸＰＲＥＳＳ規格のシリアルバスなどを介してグラフィクスコントローラ１０４との通信を実行する機能も有している。
【００４４】
グラフィクスコントローラ１０４は、タブレットコンピュータ１０のディスプレイモニタとして使用されるＬＣＤ１７Ａを制御する表示コントローラである。このグラフィクスコントローラ１０４によって生成される表示信号はＬＣＤ１７Ａに送られる。ＬＣＤ１７Ａは、表示信号に基づいて画面イメージを表示する。ＬＣＤ１７Ａ上にはタッチパネル１７Ｂおよびデジタイザ１７Ｃが配置されている。タッチパネル１７Ｂは、ＬＣＤ１７Ａの画面上で入力を行うための静電容量式のポインティングデバイスである。指が接触される画面上の接触位置および接触位置の動き等はタッチパネル１７Ｂによって検出される。デジタイザ１７ＣはＬＣＤ１７Ａの画面上で入力を行うための電磁誘導式のポインティングデバイスである。ペン１００が接触される画面上の接触位置および接触位置の動き等はデジタイザ１７Ｃによって検出される。
【００４５】
無線通信デバイス１０７は、無線ＬＡＮまたは３Ｇ移動通信などの無線通信を実行するように構成されたデバイスである。ＥＣ１０８は、電力管理のためのエンベデッドコントローラを含むワンチップマイクロコンピュータである。ＥＣ１０８は、ユーザによるパワーボタンの操作に応じてタブレットコンピュータ１０を電源オン／電源オフする機能を有している。
【００４６】
図６は、タブレットコンピュータ１０上で動作するデジタルノートブックアプリケーションプログラム２０２の機能ブロック図である。
【００４７】
図６に示すように、デジタルノートブックアプリケーションプログラム２０２は、手書きデータ入力部６１、手書きデータ蓄積部６２、表示処理部６３、文書整形部６４、整形データ蓄積部６５および通信制御部６６を有している。
【００４８】
前述したように、タッチスクリーンディスプレイ１７は、画面に対するタッチ操作をタッチパネル１７Ｂまたはデジタイザ１７Ｃで検出する。手書きデータ入力部６１は、このタッチパネル１７Ｂまたはデジタイザ１７Ｃから出力される検出信号を入力するモジュールである。手書きデータ入力部６１によって入力された検出信号は、手書きデータ蓄積部６２に供給される。手書きデータ蓄積部６２は、この検出信号を、前述した時系列情報２００として、タブレットコンピュータ１０内の記憶媒体（不揮発性メモリ１０６）に蓄積するモジュールである。
【００４９】
また、手書きデータ入力部６１によって入力された検出信号は、表示処理部６３にも供給される。表示処理部６３は、この検出信号に基づき、手書きされた各ストロークの軌跡（筆跡）をタッチスクリーンディスプレイ１７のＬＣＤ１７Ａに即時的に表示するモジュールである。表示処理部６３は、手書きデータ蓄積部６２によって蓄積された時系列情報２００に基づき、過去に手書きされた各ストロークの軌跡（筆跡）をタッチスクリーンディスプレイ１７のＬＣＤ１７Ａに表示することもできる。
【００５０】
文書整形部６４は、手書きで入力された文書を清書する自動整形機能を提供するモジュールである。文書整形部６４は、手書きデータ蓄積部６２によって蓄積された時系列情報２００を解析して、手書き文書のレイアウトを維持しつつ、図形、文字を抽出および認識して電子文書に変換する。この電子文書への変換時に、手書き文書のレイアウトを維持するために、文書整形部６４は、文字向き検出部６４Ａを有している。文字向き検出部６４Ａについては後述する。
【００５１】
整形データ蓄積部６５は、文書整形部６４によって取得された電子文書をタブレットコンピュータ１０内の記憶媒体（不揮発性メモリ１０６）に蓄積するモジュールである。表示処理部６３は、整形データ蓄積部６５によって蓄積された電子文書をタッチスクリーンディスプレイ１７のＬＣＤ１７Ａに表示することもできる。
【００５２】
そして、通信制御部６６は、手書きデータ蓄積部６２によって蓄積された時系列情報２００または整形データ蓄積部６５によって蓄積された電子文書を、無線通信デバイス１０７を介してパーソナルコンピュータ１またはサーバ２に送信するモジュールである。通信制御部６６は、時系列情報２００または電子文書を、無線通信デバイス１０７を介してパーソナルコンピュータ１またはサーバ２から受信することもできる。
【００５３】
次に、自動整形機能を提供する文書整形部６４が備える文字向き検出部６４Ａの動作原理について説明する。
【００５４】
文字向き検出部６４Ａは、書き順から文字の向きを検出するモジュールである。文字向き検出部６４Ａは、例えば図７に示すように、人間が文字を書く際、基本的に、左から右へ、また、上から下へと文字を完成させる習慣を、文字の向きの検出に利用する。
【００５５】
いま、例えば図８に示すように、ユーザが、「天気がいいね。」という文字列を手書き入力した場合を想定する。図８（Ａ）は、横書きで文字列が手書き入力された様子を示しており、一方、図８（Ｂ）は、縦書きで文字列が手書き入力された様子を示している。
【００５６】
横書き（Ａ）、縦書き（Ｂ）のいずれの場合も、文書整形部６４は、第１に、文字列の各文字の向き（ａ１）を文字向き検出部６４Ａによって検出する。文字向き検出部６４Ａによって文字列の各文字の向きを検出すると、文書整形部６４は、第２に、時系列情報２００に基づき、文字列の各文字の並び方向（ａ２）を検出する。これにより、「天気がいいね。」を１つの文字列として処理すべく、文字ブロック領域を適切に設定することが可能となる。
【００５７】
ところで、図８では、タッチスクリーンディスプレイ１７の画面の向きをいわゆるランドスケープ（横長）とした状態で手書き入力が行われた例を示した。今度は、例えば図９に示すように、タッチスクリーンディスプレイ１７の画面の向きをいわゆるポートレート（縦長）とした状態で手書き入力が行われた例を示す。
【００５８】
図９（Ａ）は、タッチスクリーンディスプレイ１７の画面の向きをポートレートとした状態で、かつ、横書きで、「天気がいいね。」という文字列が手書き入力された様子を示している。また、図９（Ａ´）は、タッチスクリーンディスプレイ１７の画面への視点を図９（Ａ）に示す位置から９０度移動させた様子を示している。この図９（Ａ´）と図９（Ｂ）との比較で明らかなように、文字列の各文字の並び方向だけでは、タッチスクリーンディスプレイ１７の画面の向きがランドスケープまたはポートレートのいずれであるのかを判定することはできず、また、文字列が縦書きまたは横書きのいずれであるのかを判定することもできない。
【００５９】
これに対して、文字向き検出部６４Ａを備える文書整形部６４は、文字向き検出部６４Ａの検出結果に基づき、タッチスクリーンディスプレイ１７の画面の向きがランドスケープまたはポートレートのいずれであるのかを判定することができ、また、（時系列情報２００から判別した）文字列の各文字の並び方向と併せて、文字列が縦書きまたは横書きのいずれであるのかを判定することができる。なお、ここでは、「天気がいいね。」の１行だけを示したが、タッチスクリーンディスプレイ１７の画面上一杯に複数行複数列の文字がマトリックス状に手書き入力された場合においても、文字の向き、文字の並びが検出されて、各文字列が正しく処理されることになる。
【００６０】
このように、文字向き検出部６４Ａは、タッチスクリーンディスプレイ１７の向きを検出する機能も提供できる。例えば、タブレットコンピュータ１０の電源オン時、所定または任意の文字または文字列をユーザに筆記させることにより、ユーザが、タッチスクリーンディスプレイ１７をどのような向きで利用しているかを判別することが可能である。
【００６１】
続いて、図１０を参照して、文字列がタッチスクリーンディスプレイ１７の画面の向きに対して斜めに手書き入力された場合を考える。図１０（Ａ）に示すように、「天気がいいね。」という文字列が斜めに手書き入力されると、通常は、図１０（Ｂ´）に示すように、文字列の各文字について、文字ブロック領域（ｂ１´）が設定されてしまう可能性が高い。即ち、「天気がいいね。」という１つの文字列としてではなく、「天」、「気」、「が」、「い」、「い」、「ね」、「。」という各々が独立した文字として処理されてしまう可能性が高い。
【００６２】
これに対して、文字向き検出部６４Ａを備える文書整形部６４は、文字向き検出部６４Ａの検出結果および（時系列情報２００から判別した）文字列の各文字の並び方向に基づき、図１０（Ｂ）に示すように、「天気がいいね。」という文字列が１つの文字列として処理されるように、文字ブロック領域（ｂ１）の向きを調整することができる。
【００６３】
この斜めに手書き入力された文字列を１つの文字列として処理することを可能としたことによって、文書整形部６４は、電子文書への変換時に、手書き文書のレイアウトを維持することを実現する。図１１を参照して、より具体的に説明すると、図１１（Ａ）に示すように、「起動」という文字が矢印に沿って斜めに手書き入力された場合、図１１（Ｂ）に示すように、矢印に沿って「起動」という文字列が斜めに配置されるように、文字ブロック領域の向きを調整し、また、この文字ブロック領域の配置情報に基づき、表示を行うことで、手書き文書を忠実に整形することができる。
【００６４】
図１２は、タブレットコンピュータ１０上で動作するデジタルノートブックアプリケーションプログラム２０２の処理手順を示すフローチャートである。
【００６５】
タッチスクリーンディスプレイ１７上で手書き入力が行われると（ブロックＡ１のＹＥＳ）、デジタルノートブックアプリケーションプログラム２０２は、その筆跡をタッチスクリーンディスプレイ１７に表示すると共に（ブロックＡ２）、その筆跡に対応する手書きデータ（時系列情報２００）を蓄積する（ブロックＡ３）。
【００６６】
一方、手書き文書の整形指示が受け付けられると（ブロックＡ１のＮＯ，ブロックＡ４のＹＥＳ）、デジタルノートブックアプリケーションプログラム２０２は、蓄積した手書きデータを読み出し（ブロックＡ５）、文字領域を検出する（ブロックＡ６）。デジタルノートブックアプリケーションプログラム２０２は、検出した文字領域内の各文字の向きを検出して（ブロックＡ７）、文字領域の向きを調整する（ブロックＡ８）。
【００６７】
続いて、デジタルノートブックアプリケーションプログラム２０２は、手書き文書の整形を実行し（ブロックＡ９）、整形した文書（電子文書）をタッチスクリーンディスプレイ１７に表示すると共に（ブロックＡ１０）、その整形文書に対応する整形データを蓄積する（ブロックＡ１１）。
【００６８】
以上のように、本実施形態の情報処理システムによれば、手書き入力された文字の向きを判別し、判別した向きを文書整形に利用すること等が実現される。
【００６９】
なお、本実施形態の文字向き検出処理の手順は全てソフトウェアによって実現することができるので、このソフトウェアをコンピュータ読み取り可能な記憶媒体を通じて通常のコンピュータに導入することにより、本実施形態と同様の効果を容易に実現することができる。
【００７０】
また、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に構成要素を適宜組み合わせてもよい。
【符号の説明】
【００７１】
１０…タブレットコンピュータ、１１…本体、１７…タッチスクリーンディスプレイ、１７Ａ…ＬＣＤ、１７Ｂ…タッチパネル、１７Ｃ…デジタイザ、６１…手書きデータ入力部、６２…手書きデータ蓄積部、６３…表示処理部、６４…文書整形部、６４Ａ…文字向き検出部、６５…整形データ蓄積部、６６…通信制御部、１０１…ＣＰＵ、１０２…システムコントローラ、１０３…主メモリ、１０４…グラフィクスコントローラ、１０５…ＢＩＯＳ−ＲＯＭ、１０６…不揮発性メモリ、１０７…無線通信デバイス、１０８…ＥＣ、２０１…オペレーティングシステム、２０２…デジタルノートブックアプリケーションプログラム。
【図１】
2014052718.tif 000003
【図２】
2014052718.tif 000004
【図３】
2014052718.tif 000005
【図４】
2014052718.tif 000006
【図５】
2014052718.tif 000007
【図６】
2014052718.tif 000008
【図７】
2014052718.tif 000009
【図８】
2014052718.tif 000010
【図９】
2014052718.tif 000011
【図１０】
2014052718.tif 000012
【図１１】
2014052718.tif 000013
【図１２】
2014052718.tif 000014
【手続補正書】
【提出日】平成25年4月4日(2013.4.4)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
手書きされた軌跡を示すストロークデータをストロークデータ間の順序関係を識別可能に記録する記録手段と、
前記記録手段により順序関係が識別可能な２以上のストロークデータの位置関係に基づき、前記ストロークデータで示される軌跡が表す文字の向きを判別する判別手段と、
前記ストロークデータで示される軌跡が表す文字に対応する文字コードを取得する認識手段と、
を具備し、
前記認識手段は、前記判別手段により判別された文字の向きに基づき、２以上の文字を１つの文字列として処理するために手書き領域内に設定する文字ブロック領域の向きを調整する情報処理システム。
【請求項２】
前記認識手段により取得された文字コードに対応する文字を、前記認識手段により向きが調整された文字ブロック領域内に表示する表示手段を具備する請求項１に記載の情報処理システム。
【請求項３】
前記判別手段は、第１のストロークデータの位置から前記第１のストロークデータに後続する第２のストロークデータの位置への移動方向と、文字を書く際の運筆方向として水平および垂直のそれぞれについて予め定められた方向とを比較して、前記ストロークデータで示される軌跡が表す文字の向きを判別する請求項１に記載の情報処理システム。
【請求項４】
前記ストロークデータを入力可能なタッチスクリーンディスプレイをさらに備え、
前記判別手段により判別された文字の向きに基づき、前記タッチスクリーンディスプレイの向きを検知する検知手段を具備する請求項１に記載の情報処理システム。
【請求項５】
前記ストロークデータを入力可能なタッチスクリーンディスプレイをさらに備え、
前記ストロークデータで示される軌跡を前記タッチスクリーンディスプレイに表示する手書き文書表示手段を具備する請求項１に記載の情報処理システム。
【請求項６】
コンピュータを、
手書きされた軌跡を示すストロークデータをストロークデータ間の順序関係を識別可能に記録する記録手段、
前記記録手段により順序関係が識別可能な２以上のストロークデータの位置関係に基づき、前記ストロークデータで示される軌跡が表す文字の向きを判別する判別手段、
前記ストロークデータで示される軌跡が表す文字に対応する文字コードを取得する認識手段、
として機能させ、
前記認識手段は、前記判別手段により判別された文字の向きに基づき、２以上の文字を１つの文字列として処理するために手書き領域内に設定する文字ブロック領域の向きを調整するプログラム。
【請求項７】
情報処理システムの処理方法であって、
手書きされた軌跡を示すストロークデータをストロークデータ間の順序関係を識別可能に記憶媒体へ記録し、
順序関係が識別可能に記録された２以上のストロークデータの位置関係に基づき、前記ストロークデータで示される軌跡が表す文字の向きを判別し、
前記ストロークデータで示される軌跡が表す文字に対応する文字コードを取得し、
前記文字コードを取得することは、前記判別された文字の向きに基づき、２以上の文字を１つの文字列として処理するために手書き領域内に設定する文字ブロック領域の向きを調整する方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００９
【補正方法】変更
【補正の内容】
【０００９】
実施形態によれば、情報処理システムは、記録手段と、判別手段と、認識手段とを具備する。記録手段は、手書きされた軌跡を示すストロークデータをストロークデータ間の順序関係を識別可能に記録する。判別手段は、前記記録手段により順序関係が識別可能な２以上のストロークデータの位置関係に基づき、前記ストロークデータで示される軌跡が表す文字の向きを判別する。認識手段は、前記ストロークデータで示される軌跡が表す文字に対応する文字コードを取得する。認識手段は、前記判別手段により判別された文字の向きに基づき、２以上の文字を１つの文字列として処理するために手書き領域内に設定する文字ブロック領域の向きを調整する。