(57)【要約】【課題】ストロークデータの精度を上げる。【解決手段】ストロークデータ処理部１００は、筆記デバイスのストロークを無線で検出することによって得られるストロークデータを処理する。ストロークデータ処理部１００は、筆記対象の用紙上の事前に指定された校正用の４点であってその校正用の４点のうちのどの３点も一直線上にない校正用の４点に筆記デバイスが触れた場合に、その校正用の４点のそれぞれに対応する、筆記デバイスが触れた４つの実測上の位置をストロークデータから取得する４点位置取得部３０を含む。ストロークデータ処理部１００はさらに、４つの実測上の位置の関係からストロークデータのひずみ成分を打ち消すようにストロークデータを補正する補正部６０を含む。【選択図】図６
2010205172.tif 000002
【特許請求の範囲】
【請求項１】
筆記デバイスのストロークを無線で検出することによって得られるストロークデータを処理する処理デバイスであって、
筆記対象の用紙上の事前に指定された校正用の４点であってその校正用の４点のうちのどの３点も一直線上にない校正用の４点、に前記筆記デバイスが触れた場合に、その校正用の４点のそれぞれに対応する、前記筆記デバイスが触れた４つの実測上の位置を前記ストロークデータから取得する４点位置取得部と、
前記４つの実測上の位置の関係から前記ストロークデータのひずみ成分を打ち消すように前記ストロークデータを補正する補正部と、を備えることを特徴とする処理デバイス。
【請求項２】
前記４点位置取得部における前記校正用の４点は、前記用紙の４隅にそれぞれ位置することを特徴とする請求項１に記載の処理デバイス。
【請求項３】
前記補正部は、前記ひずみ成分が線対称となる前提で、前記ストロークデータ上での、その線対称の基準となる線の位置を導出することを特徴とする請求項１または２に記載の処理デバイス。
【請求項４】
前記筆記デバイスのストロークは前記用紙の１辺に取り付けられたセンサデバイスによって前記ストロークデータに変換され、
前記補正部は、前記ひずみ成分が前記１辺から離れるほど大きくなる前提で、前記ひずみ成分を打ち消すように前記ストロークデータを補正することを特徴とする請求項１から３のいずれかに記載の処理デバイス。
【請求項５】
前記４点位置取得部は、連続する４回のタップ動作に対応する位置を、前記４つの実測上の位置として取得することを特徴とする請求項１から４のいずれかに記載の処理デバイス。
【請求項６】
用紙に筆記する筆記デバイスと、
前記筆記デバイスのストロークを無線で検出してストロークデータに変換するセンサデバイスと、
前記ストロークデータを処理する処理デバイスと、を備え、
前記処理デバイスは、
前記用紙上の事前に指定された校正用の４点であってその校正用の４点のうちのどの３点も一直線上にない校正用の４点、に前記筆記デバイスが触れた場合に、その校正用の４点のそれぞれに対応する、前記筆記デバイスが触れた４つの実測上の位置を前記ストロークデータから取得する４点位置取得部と、
前記４つの実測上の位置の関係から前記ストロークデータのひずみ成分を打ち消すように前記ストロークデータを補正する補正部と、を含むことを特徴とする電子筆記システム。
【請求項７】
筆記デバイスのストロークを無線で検出することによって得られるストロークデータを補正するストロークデータ補正方法であって、
筆記対象の用紙上の事前に指定された校正用の４点であってその校正用の４点のうちのどの３点も一直線上にない校正用の４点、に前記筆記デバイスで触れるステップと、
前記校正用の４点のそれぞれに対応する、前記筆記デバイスが触れた４つの実測上の位置を前記ストロークデータから取得するステップと、
前記４つの実測上の位置の関係から前記ストロークデータのひずみ成分を打ち消すように前記ストロークデータを補正するステップと、を含むことを特徴とするストロークデータ補正方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子筆記システムにおいてストロークデータを補正する技術に関する。
【背景技術】
【０００２】
デジタルペンとは、実際に用紙に筆記する筆記デバイスと、筆記デバイスのストロークをデータ化して記憶するセンサデバイスとを有するユニットである。現在製造、販売されているデジタルペンとしては、ぺんてる株式会社製「Ａｉｒｐｅｎ（登録商標）」、ＭＶＰｅｎテクノロジーズ株式会社製「ＭＶＰｅｎ」などがある（特許文献１参照）。
【０００３】
デジタルペンが登場した当時は、たとえば大学生が講義ノートをレジュメ化するために用いるなど、個人的な用途での使用が多かった。最近では、技術の進歩からデジタルペンの低廉化が進み、また文字認識技術の向上もあって、デジタルペンを業務で使用する企業、団体も増えている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−３５３１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
企業におけるデジタルペンの利用の一態様としては、帳票の記入にデジタルペンを用い、得られたストロークのデータをＯＣＲ（光学文字認識：Optical Character Recognition）技術を用いてデータ化することがある。この文字認識を行う際にはストロークのデータを精度良く得る必要がある。しかしながら現状、その精度が十分に高いとは言い難い。
なお、ここでストロークデータの精度とは、帳票上に実際に描かれたストロークと、ストロークデータが示すストロークとの一致の度合いである。
【０００６】
本発明はこうした状況に鑑みてなされたものであり、そのある態様の例示的な目的は、ストロークデータの精度を上げる補正技術の提供にある。
【課題を解決するための手段】
【０００７】
本発明のある態様は処理デバイスに関する。この処理デバイスは、筆記デバイスのストロークを無線で検出することによって得られるストロークデータを処理する処理デバイスであって、筆記対象の用紙上の事前に指定された校正用の４点であってその校正用の４点のうちのどの３点も一直線上にない校正用の４点、に筆記デバイスが触れた場合に、その校正用の４点のそれぞれに対応する、筆記デバイスが触れた４つの実測上の位置をストロークデータから取得する４点位置取得部と、４つの実測上の位置の関係からストロークデータのひずみ成分を打ち消すようにストロークデータを補正する補正部と、を備える。
【０００８】
「ストローク」とは、筆記デバイスが用紙に筆記する際の軌跡であってもよい。
【０００９】
この態様によると、ストロークデータのひずみ成分による誤差を低減できる。
【００１０】
本発明の別の態様は、電子筆記システムである。この電子筆記システムは、用紙に筆記する筆記デバイスと、筆記デバイスのストロークを無線で検出してストロークデータに変換するセンサデバイスと、ストロークデータを処理する処理デバイスと、を備える。処理デバイスは、用紙上の事前に指定された校正用の４点であってその校正用の４点のうちのどの３点も一直線上にない校正用の４点、に筆記デバイスが触れた場合に、その校正用の４点のそれぞれに対応する、筆記デバイスが触れた４つの実測上の位置をストロークデータから取得する４点位置取得部と、４つの実測上の位置の関係からストロークデータのひずみ成分を打ち消すようにストロークデータを補正する補正部と、を含む。
【００１１】
この態様によると、ストロークデータのひずみ成分による誤差を低減できる。
【００１２】
なお、以上の構成要素の任意の組み合わせや、本発明の構成要素や表現を装置、方法、システム、コンピュータプログラム、コンピュータプログラムを格納した記録媒体などの間で相互に置換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１３】
本発明のある態様によれば、ストロークデータの精度を上げることができる。
【図面の簡単な説明】
【００１４】
【図１】実施の形態に係るストロークデータ処理部を含む電子筆記システムの構成を示す概念図である。
【図２】ストロークデータセットを示すデータ構造図である。
【図３】図３（ａ）〜（ｂ）は、ストロークデータに生じるひずみ成分を示す模式図である。
【図４】図４（ａ）〜（ｂ）は、第１補正方法を示す概念図である。
【図５】第２補正方法を示す概念図である。
【図６】実施の形態に係るストロークデータ処理部を含むＡＳＰサーバの機能および構成を示すブロック図である。
【図７】帳票イメージＤＢのデータ構造図である。
【図８】ストロークデータ処理部における一連の処理を示すフローチャートである。
【発明を実施するための形態】
【００１５】
以下、本発明を好適な実施の形態をもとに図面を参照しながら説明する。各図面に示される同一または同等の構成要素、部材、処理には、同一の符号を付するものとし、適宜重複した説明は省略する。また、各図面において本発明に係る実施の形態を説明する上で重要ではない部材の一部は省略して表示する。
【００１６】
本発明の実施の形態は、ぺんてる株式会社製「Ａｉｒｐｅｎ（登録商標）」などのデジタルペンによって得られるストロークデータを好適に補正する処理デバイスを提供する。この処理デバイスは、平行移動成分、回転成分およびスケール成分だけでなくひずみ成分をも打ち消すようにストロークデータを補正する。この際ユーザは帳票上の校正用の４点にタップする。これにより、ストロークデータの精度を上げることができる。またストロークデータと帳票のイメージとのずれを低減できるので、ＯＣＲエンジンによる文字認識および文字データの取得がより容易となる。
【００１７】
図１は、実施の形態に係るストロークデータ処理部を含む電子筆記システム９の構成を示す概念図である。電子筆記システム９は、デジタルペン３と、携帯端末５と、ネットワーク６と、ＡＳＰサーバ７と、を備える。デジタルペン３は、筆記デバイス１と、センサデバイス２と、を含む。
【００１８】
ユーザは用紙、たとえば帳票４に筆記デバイス１を用いて筆記する。ユーザが筆記する間、筆記デバイス１はその発信部１ａから超音波および赤外線を数十Ｈｚの頻度で発信する。発信された赤外線はセンサデバイス２の赤外線センサ２ｃによって検出され、超音波はセンサデバイス２の第１超音波センサ２ａおよび第２超音波センサ２ｂによって検出される。センサデバイス２は赤外線を検出してから超音波を検出するまでの時間差から筆記デバイス１の位置を２次元座標の形で取得する。
【００１９】
センサデバイス２は図示しないメモリを備え、当該メモリには筆記デバイス１の発信部１ａが発信する頻度で筆記デバイス１の位置を示す２次元座標が格納されてゆく。以降では、このようにして取得される２次元座標の集合をストロークデータと呼ぶこととする。この２次元座標の集合を順に直線でつないでゆけばユーザのストロークの情報を得ることができる。
なお、筆記デバイス１およびセンサデバイス２はデジタルペン３を構成する。かかるデジタルペン３は、たとえば上述のぺんてる株式会社製「Ａｉｒｐｅｎ（登録商標）」等の既知の技術によって実現される。
【００２０】
ユーザは帳票４一枚への記入を終えると、帳票４上の事前に指定された校正用の４点であってその校正用の４点のうちのどの３点も一直線上にない校正用の４点（以降、Ｂ１点、Ｂ２点、Ｂ３点、Ｂ４点と呼ぶ）にタップする。なお、ユーザは帳票４への記入の前にＢ１点、Ｂ２点、Ｂ３点、Ｂ４点にタップしてもよいし、帳票４への記入中にＢ１点、Ｂ２点、Ｂ３点、Ｂ４点にタップしてもよい。Ｂ１点、Ｂ２点、Ｂ３点、Ｂ４点へのタップは、後述するストロークデータの補正に利用される。
【００２１】
スマートフォンなどの携帯端末５は、Ｂｌｕｅｔｏｏｔｈ、ＵＳＢ（Universal Serial Bus）や赤外線通信などの既知の通信技術を用いてセンサデバイス２と通信し、センサデバイス２のデバイスメモリからストロークデータと使用されたデジタルペン３を一意に特定するデバイスＩＤとを取得する。携帯端末５は、取得したストロークデータを帳票ごとに分割し、分割されたそれぞれのストロークデータに、帳票が記入された日付と時刻を示すタイムスタンプと、デバイスメモリから取得したデバイスＩＤと、記入された帳票の種別を一意に特定する帳票種別ＩＤと、を付加する。このようにして携帯端末５によって生成される、帳票ごとにタイムスタンプと、デバイスＩＤと、ストロークデータと、帳票種別ＩＤと、を対応付けて記憶するテーブルをストロークデータセット８と呼ぶ。
なお、帳票種別ＩＤは、ユーザが携帯端末５に記入対象の帳票の種別を入力することによって得られる。
また、デバイスＩＤは、携帯端末５内のクライアントプログラムによって付与されてもよい。
【００２２】
携帯端末５は、ＬＡＮ（Local Area Network）・ＷＡＮ（Wide Area Network）・インターネット等のネットワーク６を介してアプリケーションサービスプロバイダ（Application Service Provider, ASP）のＡＳＰサーバ７と接続される。ＡＳＰサーバ７は実施の形態に係るストロークデータ処理部を含み、携帯端末５から取得するストロークデータセット８のストロークデータを補正する。ＡＳＰサーバ７は補正されたストロークデータをＯＣＲエンジンを使用して文字列データに変換し、それを帳票に入力されたデータとして入力データＤＢ（Data Base）に格納する。このようにアプリケーションサービスプロバイダは、実施の形態に係るストロークデータ補正技術を使用して文字認識の精度を高めた電子筆記システム９を提供できる。
【００２３】
図２は、ストロークデータセット８を示すデータ構造図である。ストロークデータセット８の行のそれぞれは、ユーザによって記入された帳票一枚分のストロークデータに対応する。ストロークデータセット８は、タイムスタンプ２０２と、デバイスＩＤ２０４と、帳票一枚分のストロークデータである一枚分ストロークデータ２０６と、帳票種別ＩＤ２０８と、を対応付けて記憶する。
【００２４】
ここで本実施の形態におけるストロークデータの補正の原理を説明する。本発明者は、ストロークデータには少なくとも以下の３種類の理由による誤差が生じることを見出した。
（１）筆記デバイス１の傾き
筆記デバイス１は実際に帳票４に触れるボール部分よりおよそ５ｍｍ上部に発信部１ａを搭載している。したがって記入時の筆記デバイス１の傾きによって誤差が生じ、また傾き具合によってその誤差が変動する。特に右利きの場合と左利きの場合との間の差が大きい。
（２）帳票４とセンサデバイス２の関係
センサデバイス２は、筆記デバイス１とセンサデバイス２との相対位置を取得するので、センサデバイス２を帳票４の適切な位置に置かないとその分ずれが生じる。
（３）センサデバイス２の特性
センサデバイス２は、超音波を使用してセンサデバイス２の位置を特定する。しかしながら周囲の温度や湿度により超音波の伝わり方は変わってくる。これにより、特にセンサデバイス２から離れるにつれて、帳票４の中心に向かうずれの量が大きくなる、つまりひずみ成分が大きくなる。さらにこのひずみ成分は線対称となる。この線対称の基準となる線の位置は、センサデバイス２の構成、たとえば第１超音波センサ２ａおよび第２超音波センサ２ｂの位置によって異なる。またこの線の位置は、周囲の温度や湿度の変化による超音波の伝搬の特性の変化にも起因して変動する。
【００２５】
図３（ａ）〜（ｂ）は、ストロークデータに生じるひずみ成分を示す模式図である。図３（ａ）〜（ｂ）は発明者の実測値に基づいている。図３（ａ）は、帳票１１０およびその上に筆記デバイスによって実際に互いに平行に描かれた３本の線１１４、１１６、１１８を示す。センサデバイス２は帳票１１０の１辺１１２に取り付けられる。線１１４は帳票１１０の中心付近に描かれた線である。図３（ｂ）は、図３（ａ）のストロークをセンサデバイス２が検出することで得られたストロークデータの画像表示１２０を示す。ここでは本実施の形態に係る補正を行っていない。線１２４は線１１４に、線１２６は線１１６に、線１２８は線１１８に対応する。１辺１２２は１辺１１２に対応する。図３（ａ）および図３（ｂ）から分かるとおり、帳票１１０には３本の線１１４、１１６、１１８が互いに平行に描かれていても、ストロークデータではそれらの線がセンサデバイス２が取り付けられた１辺から離れるほど中心に寄っていくひずみが生じる。
【００２６】
本発明者は、ストロークデータに生じる上述の３種類の誤差の影響を打ち消すため、以下の原理に基づくストロークデータの第１補正方法および第２補正方法を考案した。
図４（ａ）〜（ｂ）は、第１補正方法を示す概念図である。図４（ａ）は、センサデバイス２によって定義される２次元座標空間を示す。以降、（３）のひずみ成分が所定の環境において第１超音波センサ２ａの位置と第２超音波センサ２ｂの位置との間を等分する線に対して線対称となると仮定する。
【００２７】
矩形枠３００はセンサデバイス２が定義する帳票４の外周を示す。センサデバイス２は帳票４の１辺３０２に取り付けられる。ここではＢ１点、Ｂ２点、Ｂ３点、Ｂ４点のうちＢ１点、Ｂ２点、Ｂ３点を用いて補正する場合を考える。以降、Ｂ１点、Ｂ２点、Ｂ３点は帳票４の４隅のうち、１辺３０２の両端の２隅を含む３隅にそれぞれ位置する場合を考える。図４（ａ）〜（ｂ）で示されるＢ１、Ｂ２、Ｂ３は、センサデバイス２によって定義される２次元座標空間内で、帳票４上のＢ１点、Ｂ２点、Ｂ３点があるべき位置を示す。Ｂ１、Ｂ２はｘ軸上にあり、線分Ｂ１Ｂ２と線分Ｂ２Ｂ３とのなす角は９０度である場合を考える。
【００２８】
帳票４の記入後に筆記デバイス１がタップしたＢ１点、Ｂ２点、Ｂ３点のそれぞれに対応する、センサデバイス２が取得した３つの実測上の筆記デバイス１の位置を以降Ｐ１、Ｐ２、Ｐ３と呼ぶ。図４（ａ）は、Ｂ１を用いた誤差の平行移動成分の補正、Ｂ１およびＢ２を用いた誤差の回転成分の補正、Ｂ１およびＢ２を用いた誤差のｘ方向のスケール成分の補正およびＢ２およびＢ３を用いた誤差のｙ方向のスケール成分の補正を行った後の状態を示す。これらの補正により、上述の（１）および（２）の理由による誤差はほぼ打ち消すことができ、Ｂ１とＰ１、Ｂ２とＰ２は良く一致する。またｙ軸（ｘ＝０）と第１超音波センサ２ａの位置と第２超音波センサ２ｂの位置との間を等分する線とが一致する。つまり所定の環境においては（３）の理由によるひずみ成分はｙ軸に対して線対称となる。
【００２９】
さらに、線分Ｂ２Ｐ３を線分Ｂ２Ｂ３に合わせる変換をストロークデータの＋ｘの領域に加える。より具体的には、まず線分Ｂ２Ｐ３と線分Ｂ２Ｂ３とがなすひずみ角θを下記の式１により求める。
θ＝ａｃｏｓ(Ｂ２Ｂ３／Ｂ２Ｐ３)    …（式１）
次に、補正対象のストロークデータを（ｘ，ｙ）、線分Ｂ１Ｂ２の長さをＬとして、式１で求めたθを用いて補正後のストロークデータ（ｘ’,ｙ’）を下記の式２および式３から求める。
ｘ’＝Ｌ・ｘ／（Ｌ−２・ｙ・ｓｉｎθ）    …（式２）
ｙ’＝ｙ    …（式３）
-ｘの領域に対しては、ｙ軸に対する線対称性を仮定して式２および式３を用いて補正する。
【００３０】
しかしながら実際の使用環境は変動するので、その変動に伴いひずみ成分の線対称の基準となる線もｙ軸からずれることとなる。すると単に式２、式３を用いて変換してもひずみ成分を打ち消すことができない。そこで本発明者は、（３）の理由によるひずみ成分が線対称となる前提で、ストロークデータ上での、その線対称の基準となる線の位置を導出することでこの問題を解決する第２補正方法を見出した。
【００３１】
図５は、第２補正方法を示す概念図である。図５では、センサデバイス２によって定義される２次元座標空間が示される。矩形枠４００はセンサデバイス２が定義する帳票４の外周を示す。センサデバイス２は帳票４の１辺４０２に取り付けられる。第２補正方法では校正用の４点であるＢ１点、Ｂ２点、Ｂ３点、Ｂ４点全てを使用する。Ｂ１点、Ｂ２点、Ｂ３点、Ｂ４点は、帳票４の４隅にそれぞれ位置する。図５で示されるＢ１、Ｂ２、Ｂ３、Ｂ４は、センサデバイス２によって定義される２次元座標空間内で、帳票４上のＢ１点、Ｂ２点、Ｂ３点、Ｂ４点があるべき位置を示す。特にＢ１、Ｂ２はｘ軸上にあり、線分Ｂ１Ｂ２と線分Ｂ２Ｂ３とのなす角は９０度、線分Ｂ１Ｂ２と線分Ｂ１Ｂ４とのなす角は９０度である場合を考える。
【００３２】
帳票４の記入後に筆記デバイス１がタップしたＢ１点、Ｂ２点、Ｂ３点、Ｂ４点のそれぞれに対応する、センサデバイス２が取得した４つの実測上の筆記デバイス１の位置を以降Ｐ１、Ｐ２、Ｐ３、Ｐ４と呼ぶ。
【００３３】
図５では、Ｂ１を用いた誤差の平行移動成分の補正、Ｂ１およびＢ２を用いた誤差の回転成分の補正、Ｂ１およびＢ２を用いた誤差のｘ方向のスケール成分の補正およびＢ２およびＢ３を用いた誤差のｙ方向のスケール成分の補正を行った後の状態が示される。これらの補正により、上述の（１）および（２）の理由による誤差はほぼ打ち消すことができ、Ｂ１とＰ１、Ｂ２とＰ２は良く一致する。しかしながら（３）の理由によるひずみ成分のため、Ｐ３はＢ３からｘ方向にずれ、Ｐ４はＢ４からｘ方向にずれる。また、ひずみ成分の線対称の基準となる基準線４０４もｙ軸からずれる。
【００３４】
基準線４０４の位置を導出するため、まず線分Ｂ２Ｐ３と線分Ｂ２Ｂ３とがなす第１ひずみ角θ１を下記の式４により求める。
θ１＝ａｃｏｓ(Ｂ２Ｂ３／Ｂ２Ｐ３)    …（式４）
線分Ｂ１Ｐ４と線分Ｂ１Ｂ４とがなす第２ひずみ角θ２を下記の式５により求める。
θ２＝ａｃｏｓ(Ｂ１Ｂ４／Ｂ１Ｐ４)    …（式５）
そしてひずみ成分が線対称となることから、基準線４０４の位置を第１ひずみ角θ１および第２ひずみ角θ２を用いて下記の式６によって導出する。
【数１】
2010205172.tif 000003
ここでＬは線分Ｂ１Ｂ２の長さ、Ｌ’はＢ１から基準線４０４までの距離である。
【００３５】
式６の導出過程を説明する。ひずみ成分が基準線４０４に対して線対称である場合、Ｂ１およびＰ４を通る直線と基準線４０４との交点がＢ２およびＰ３を通る直線と基準線４０４との交点と一致する。したがって
Ｙ／Ｌ’＝ｔａｎ（９０°−θ２）    …（式７）
Ｙ／（Ｌ−Ｌ’）＝ｔａｎ（９０°−θ１）    …（式８）
が成立する。ここでＹはＢ１およびＰ４を通る直線と基準線４０４との交点のｙ座標である。式７および式８からＹを消去すると式６が得られる。
【００３６】
基準線４０４の位置Ｌ’が導出されると、上述の式２および式３と同様にしてストロークデータを補正する。補正対象のストロークデータを（ｘ，ｙ）、補正後のストロークデータを（ｘ’,ｙ’）とすると、＋ｘの領域では
【数２】
2010205172.tif 000004
および式６によって補正後のストロークデータ（ｘ’,ｙ’）を求める。-ｘの領域では、
【数３】
2010205172.tif 000005
および式６によって補正後のストロークデータ（ｘ’,ｙ’）を求める。この補正により（３）の理由によるひずみ成分を打ち消すことができる。
【００３７】
図６は、実施の形態に係るストロークデータ処理部１００を含むＡＳＰサーバ７の機能および構成を示すブロック図である。ここに示す各ブロックは、ハードウェア的には、コンピュータのＣＰＵをはじめとする素子や機械装置で実現でき、ソフトウェア的にはコンピュータプログラム等によって実現されるが、ここでは、それらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックはハードウェア、ソフトウェアの組合せによっていろいろなかたちで実現できることは、当業者には理解されるところである。
【００３８】
ＡＳＰサーバ７は、通信部１０と、ストロークデータＤＢ２０と、実施の形態に係るストロークデータ処理部１００と、ＯＣＲエンジン７０と、入力データＤＢ８０と、を含む。もちろんＡＳＰサーバ７は、サーバとしての機能を実現するための他の図示しない構成を有する。
通信部１０は、携帯端末５との通信を制御する。通信部１０は、携帯端末５からストロークデータセット８を取得し、ストロークデータＤＢ２０へ格納する。
【００３９】
ストロークデータ処理部１００は、所望の一枚分ストロークデータ２０６をストロークデータＤＢ２０から取得する。ストロークデータ処理部１００は、Ｂ１点、Ｂ２点、Ｂ３点、Ｂ４点へのタップに対応する実測上の２次元座標を用いて一枚分ストロークデータ２０６を補正する。ストロークデータ処理部１００は、４点位置取得部３０と、帳票イメージＤＢ４０と、第１補正部５０と、第２補正部６０と、を含む。
【００４０】
図７は、帳票イメージＤＢ４０のデータ構造図である。帳票イメージＤＢ４０は、帳票種別ＩＤ２０８と、その帳票種別ＩＤ２０８によって指定される種類の帳票で定義されるＢ１点、Ｂ２点、Ｂ３点、Ｂ４点が持つべき校正点２次元座標群２１０と、その帳票種別ＩＤ２０８によって指定される種類の帳票のイメージを保持するファイルのパスであるイメージファイルパス２１２と、を対応付けて記憶する。Ｂ１点が持つべき校正点２次元座標がＢ１、Ｂ２点が持つべき校正点２次元座標がＢ２、Ｂ３点が持つべき校正点２次元座標がＢ３、Ｂ４点が持つべき校正点２次元座標がＢ４である。
【００４１】
図６に戻る。４点位置取得部３０は、ストロークデータ取得部３２と、連続タップ抽出部３４と、タップ位置比較部３６と、を有する。
ストロークデータ取得部３２は、ユーザからのストロークデータの処理要求を受けると、ストロークデータＤＢ２０からタイムスタンプ２０２およびデバイスＩＤ２０４をキーとして処理対象の一枚分ストロークデータ２０６およびその帳票種別ＩＤ２０８を取得する。
【００４２】
連続タップ抽出部３４は、ストロークデータ取得部３２によって取得された一枚分ストロークデータ２０６から、連続する４回のタップの２次元座標を抽出する。
ここで、１回のタップとは筆記デバイス１が帳票４に軽く触れた後すぐに離す動作である。ストロークデータは数十Ｈｚでサンプリングされた２次元座標の集合であることを考えると、ストロークデータ上では１回のタップは、所定の個数以上連続した、所定の範囲内にある２次元座標の組と捉えられる。この所定の個数および所定の範囲は実験により定めればよい。一例としては、所定の個数とはセンサデバイス２が０．１秒間にストロークデータをサンプリングする回数である。また、所定の範囲とは、平均的な筆圧を有する人が用紙にタップした際にペン先が動きうる範囲、たとえば２ｍｍである。
【００４３】
連続タップ抽出部３４は、一枚分ストロークデータ２０６のなかに、所定の個数以上連続した、所定の範囲内にある２次元座標の組を検出した場合、１回のタップを検出したと判断し、その２次元座標の組の中心に当たる２次元座標、たとえばそれらの組の平均の２次元座標、を抽出する。
連続タップ抽出部３４は、連続する４回のタップが検出された場合、その４回のタップのそれぞれに対応して抽出された４つの候補２次元座標（ｘ１，ｙ１）、（ｘ２，ｙ２）、（ｘ３，ｙ３）、（ｘ４，ｙ４）をタップ位置比較部３６へ渡す。なお連続タップ抽出部３４は、連続する４回のタップが検出できなかった場合は処理を中断し、図示しない表示デバイスを通じてユーザに警告を示す。または、ユーザが補正を望んでいないと判断して一枚分ストロークデータ２０６を補正せずにＯＣＲエンジン７０へ渡してもよい。
【００４４】
タップ位置比較部３６は、ストロークデータ取得部３２によって取得された帳票種別ＩＤ２０８をキーとして対応する校正点２次元座標群Ｂ１、Ｂ２、Ｂ３、Ｂ４を帳票イメージＤＢ４０から取得する。タップ位置比較部３６は、取得された校正点２次元座標群Ｂ１、Ｂ２、Ｂ３、Ｂ４と、連続タップ抽出部３４によって渡された４つの候補２次元座標（ｘ１，ｙ１）、（ｘ２，ｙ２）、（ｘ３，ｙ３）、（ｘ４，ｙ４）とを比較する。タップ位置比較部３６は、Ｂ１と４つの候補２次元座標（ｘ１，ｙ１）、（ｘ２，ｙ２）、（ｘ３，ｙ３）、（ｘ４，ｙ４）のそれぞれとの距離を順に計算する。そしてその距離が所定の範囲内に収まる候補２次元座標があればその候補２次元座標をＰ１点の２次元座標Ｐ１とする。Ｂ２、Ｂ３、Ｂ４についても同様な計算を行いＰ２、Ｐ３、Ｐ４を決める。以降Ｐ１、Ｐ２、Ｐ３、Ｐ４をまとめて実測点２次元座標群と呼ぶ。
【００４５】
なお、上述のタップ位置比較部３６によれば、ユーザがどの順番にＢ１点、Ｂ２点、Ｂ３点、Ｂ４点をタップしたとしても、その順番に関係なくＰ１点、Ｐ２点、Ｐ３点、Ｐ４点の２次元座標を定めることができる点に注意すべきである。これにより、ユーザにとってより使いやすい補正手段を提供できる。
また、タップ位置比較部３６は校正点２次元座標の少なくともひとつについて、それとの距離が所定の範囲内に収まる候補２次元座標が見つからなかった場合は処理を中断し、図示しない表示デバイスを通じてユーザに警告を示す。
【００４６】
４点位置取得部３０では、ユーザによる補正動作が行われたか否かを、連続した４回のタップを検出することで判別している。この点について、本発明者は当業者としての経験から以下を認識するに至った。
一般的な帳票に記入する際に、タップを行うことはまれである。したがってストロークデータからのタップの検出精度は高い。これによりタップを補正動作の検出に用いることで、補正動作の誤検出や検出漏れを低減できる。また、一般的な帳票の記入に際し、タップが４回連続して行われることはほぼ無いに等しい。したがって、実施の形態のように連続した４回のタップを補正動作に割り当てておけば、やはり補正動作の誤検出や検出漏れを低減できる。
【００４７】
第１補正部５０は、タップ位置比較部３６から校正点２次元座標群Ｂ１、Ｂ２、Ｂ３、Ｂ４および実測点２次元座標群Ｐ１、Ｐ２、Ｐ３、Ｐ４を取得する。第１補正部５０は、Ｐ１およびＰ２がＢ１およびＢ２にそれぞれ一致するよう一枚分ストロークデータ２０６を平行移動し回転変換しｘ方向にスケール変換する。第１補正部５０は、Ｐ３のｙ座標がＢ３のｙ座標と一致するよう一枚分ストロークデータ２０６をｙ方向にスケール変換する。
【００４８】
第２補正部６０は、Ｐ１点、Ｐ２点、Ｐ３点、Ｐ４点の位置の関係から一枚分ストロークデータ２０６のひずみ成分を打ち消すように一枚分ストロークデータ２０６を補正する。第２補正部６０は、第１ひずみ角導出部６２と、第２ひずみ角導出部６４と、基準位置導出部６６と、データ変換部６８と、を有する。
第１ひずみ角導出部６２は、上述の式４により第１ひずみ角θ１を導出する。第２ひずみ角導出部６４は、上述の式５により第２ひずみ角θ２を導出する。基準位置導出部６６は、ひずみ成分の線対称の基準となる基準線の位置Ｌ’を上述の式６によって導出する。データ変換部６８は、＋ｘの領域では上述の式９および式１０により、-ｘの領域では上述の式１１および式１２により、一枚分ストロークデータ２０６を変換する。
【００４９】
ＯＣＲエンジン７０は、帳票種別ＩＤ２０８をキーとして対応するイメージファイルパス２１２を帳票イメージＤＢ４０から取得する。ＯＣＲエンジン７０は、第２補正部６０によって補正された一枚分ストロークデータ２０６と、取得したイメージファイルパス２１２によって指定される帳票イメージとをつきあわせる。ＯＣＲエンジン７０はたとえば、補正された一枚分ストロークデータ２０６から、帳票イメージにおいて名前の入力個所となっている領域に当たるストロークデータを抽出する。ＯＣＲエンジン７０は、抽出されたストロークデータを公知の文字認識技術を用いて解析し、ユーザが名前の入力個所に書き込んだ文字列を、名前を示す文字データとして取得する。
ＯＣＲエンジン７０は、補正された一枚分ストロークデータ２０６を文字列データに変換し、それを帳票４に入力されたデータとして入力データＤＢ（Data Base）に格納する。
【００５０】
以上の構成によるストロークデータ処理部１００の動作を説明する。図８は、ストロークデータ処理部１００における一連の処理を示すフローチャートである。
ストロークデータ処理部１００はストロークデータを取得する（Ｓ７０２）。取得したストロークデータに４つの連続するタップを検出しなかった場合（Ｓ７０４のＮ）、処理を終了する。取得したストロークデータに４つの連続するタップを検出した場合（Ｓ７０４のＹ）、校正用の４点の２次元座標を取得する（Ｓ７０６）。タップに対応する２次元座標が校正用の２次元座標から遠い場合（Ｓ７０８のＮ）、処理を終了する。タップに対応する２次元座標が校正用の２次元座標に十分近い場合（Ｓ７０８のＹ）、ストロークデータに平行移動、回転およびスケーリングの補正を行う（Ｓ７１０）。＋ｘの領域の第１ひずみ角θ１を導出する（Ｓ７１２）。-ｘの領域の第２ひずみ角θ２を導出する（Ｓ７１４）。ひずみ成分が線対称となる基準線の位置を導出する（Ｓ７１６）。導出された第１ひずみ角θ１、第２ひずみ角θ２および基準線の位置を用いて誤差のひずみ成分を打ち消すようストロークデータを補正する（Ｓ７１８）。
【００５１】
本実施の形態において、ストロークデータＤＢ２０、帳票イメージＤＢ４０および入力データＤＢ８０の例は、コンピュータに内蔵されたハードディスクやメモリである。また、４点位置取得部３０、第１補正部５０、第２補正部６０は、図示しないＣＰＵと、ＯＳ（operating system）によって管理されているサーバにインストールされたアプリケーションプログラムのモジュールと、システムプログラムのモジュールと、ハードディスクから読み出したテーブルの内容を一時的に記憶するメモリなどにより実現できることは当業者には理解されるところである。
【００５２】
本実施の形態に係るストロークデータ処理部１００によれば、ストロークデータに発生する誤差を打ち消すことができる。特に誤差のひずみ成分を打ち消すことができる。これにより、ユーザが帳票４に記入する際の実際のストロークと、ＡＳＰサーバ７に取得されるストロークデータによって示されるストロークとを精度良く一致させることができる。したがって、たとえばＯＣＲエンジン７０によってストロークデータから文字認識および文字列入力を行う場合は、文字の読み取り精度を高めることができる。
【００５３】
また、本実施の形態に係るストロークデータ処理部１００によれば、図５に見られるように帳票４の４隅を校正用の４点としている。これにより、ひずみ成分の計算が簡単になる。
【００５４】
また、本実施の形態に係るストロークデータ処理部１００によれば、ひずみ成分が線対称となる前提で、ストロークデータ上での、その線対称の基準となる基準線の位置を導出し、その基準線の位置を用いてひずみ成分を打ち消す。したがって、使用環境の変動に伴い基準線がずれたとしても、そのずれを修正した上でひずみ成分を打ち消すことができる。これにより使用環境によらずに、実際のストロークと、ストロークデータによって示されるストロークとを精度良く一致させることができる。
【００５５】
また、本実施の形態に係るストロークデータ処理部１００によれば、ひずみ成分がセンサデバイス２が取り付けられた１辺から離れるほど大きくなる前提で、そのひずみ成分を打ち消すようにストロークデータを補正する。図３（ａ）〜（ｂ）で本発明者が見出したとおり、このようなひずみ成分は実際に発生するので、それを打ち消すことで実際のストロークとストロークデータが示すストロークとの一致の精度をさらに高めることができる。
【００５６】
以上、実施の形態に係るストロークデータ処理部１００、ストロークデータ処理部１００が含まれるＡＳＰサーバ７およびＡＳＰサーバ７が含まれる筆記デバイス１の構成と動作について説明した。この実施の形態は例示であり、その各構成要素や各処理の組み合わせにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【００５７】
実施の形態では、校正用の４点であるＢ１点、Ｂ２点、Ｂ３点、Ｂ４点は、帳票４の４隅に位置する場合について説明したが、これに限られない。たとえば帳票４の隅に限らず、校正用の４点はそのうちの任意の３点が一直線上になければ帳票４のどこにあってもよい。校正用の４点のうちの任意の３点が一直線上になければ、その校正用の４点から独立な角度を２つ定義できるからである。言い換えると、第２補正部は、一直線上にない校正用の４点のそれぞれに対応する４つの実測上の位置の関係から、ストロークデータのひずみ成分を打ち消すようにストロークデータを補正してもよい。
【００５８】
実施の形態ではセンサデバイス２が取り付けらた１辺から離れるほど大きくなるひずみ成分を補正する場合について説明したが、これに限られない。図３（ａ）〜（ｂ）で説明されたひずみ成分について考察すると、ストロークデータがひずむ方向（ｘ軸方向）と、ひずみ量が変化する方向（ｙ軸方向）とが存在する。したがって実施の形態で説明されたひずみ成分とは異なるひずみ成分であっても、ストロークデータがひずむ方向とひずみ量が変化する方向とを有するひずみ成分であれば、実施の形態に係る補正技術で精度良く補正できることは、本明細書の記載から当業者には明らかである。特に、ストロークデータがひずむ方向の軸と、ひずみ量が変化する方向の軸とが定義されるように校正用の４点を選ぶと補正の精度のさらなる向上が期待できる。言い換えると、ひずみ成分の表れ方に応じて校正用の４点の位置を決めればストロークデータの補正の精度は向上しうる。
【００５９】
以上、実施の形態にもとづき本発明を説明したが、実施の形態は、本発明の原理、応用を示しているにすぎないことはいうまでもなく、実施の形態には、請求の範囲に規定された本発明の思想を逸脱しない範囲において、多くの変形例や配置の変更が可能であることはいうまでもない。
【符号の説明】
【００６０】
１  筆記デバイス、  ２  センサデバイス、  ３  デジタルペン、  ４  帳票、  ５  携帯端末、  ６  ネットワーク、  ７  ＡＳＰサーバ、  ９  電子筆記システム、  １０  通信部、  ２０  ストロークデータＤＢ、  ３０  ４点位置取得部、  ４０  帳票イメージＤＢ、  ５０  第１補正部、  ６０  第２補正部、  ７０  ＯＣＲエンジン、  １００  ストロークデータ処理部。
【図１】
2010205172.tif 000006
【図２】
2010205172.tif 000007
【図３】
2010205172.tif 000008
【図４】
2010205172.tif 000009
【図５】
2010205172.tif 000010
【図６】
2010205172.tif 000011
【図７】
2010205172.tif 000012
【図８】
2010205172.tif 000013