(57)【要約】【課題】削除記号が含まれている可能性のあるストローク群から、削除された文字を判断するようにした情報処理装置を提供する。【解決手段】情報処理装置の受付手段は、ストローク群を受け付け、ストローク抽出手段は、前記受付手段によって受け付けられたストローク群から予め定められた規則に従って区切られた単位毎にストローク群を抽出し、矩形抽出手段は、前記単位毎のストローク群を囲む矩形を抽出し、領域分割手段は、前記矩形抽出手段によって抽出された矩形を領域に分割し、計数手段は、前記ストローク抽出手段によって抽出されたストローク毎に、該ストロークが存在する前記領域分割手段によって分割された領域の個数を計数し、判断手段は、前記計数手段によって計数された領域の個数に基づいて、前記矩形内のストローク群は削除されたものか否かを判断する。【選択図】図１
2015072622.tif 000002
【特許請求の範囲】
【請求項１】
ストローク群を受け付ける受付手段と、
前記受付手段によって受け付けられたストローク群から予め定められた規則に従って区切られた単位毎にストローク群を抽出するストローク抽出手段と、
前記単位毎のストローク群を囲む矩形を抽出する矩形抽出手段と、
前記矩形抽出手段によって抽出された矩形を領域に分割する領域分割手段と、
前記ストローク抽出手段によって抽出されたストローク毎に、該ストロークが存在する前記領域分割手段によって分割された領域の個数を計数する計数手段と、
前記計数手段によって計数された領域の個数に基づいて、前記矩形内のストローク群は削除されたものか否かを判断する判断手段
を具備することを特徴とする情報処理装置。
【請求項２】
前記ストロークと前記領域の境界線との交点を算出する算出手段
をさらに具備し、
前記計数手段は、前記算出手段によって算出された交点に接する領域を、ストロークが存在する領域とする
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記矩形抽出手段は、前記単位の列の高さを前記矩形の高さとして、又は該単位の列の幅を該矩形の幅として、該矩形を抽出する
ことを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
ストローク群を受け付ける受付手段と、
前記受付手段によって受け付けられたストローク群から予め定められた規則に従って区切られた単位毎にストローク群を抽出するストローク抽出手段と、
前記単位毎のストローク群を囲む矩形を抽出する矩形抽出手段と、
前記ストローク抽出手段によって抽出されたストローク毎に、該ストロークの長さを計測する計測手段と、
前記計測手段によって計測されたストロークの長さを、該ストロークが含まれている前記矩形の高さ、幅のいずれか一方又は両方を用いて正規化する正規化手段と、
前記正規化手段によって正規化されたストロークの長さに基づいて、前記矩形内のストローク群は削除されたものか否かを判断する判断手段
を具備することを特徴とする情報処理装置。
【請求項５】
ストローク群を受け付ける受付手段と、
前記受付手段によって受け付けられたストローク群から予め定められた規則に従って区切られた単位毎にストローク群を抽出するストローク抽出手段と、
前記単位毎のストローク群を囲む矩形を抽出する矩形抽出手段と、
前記矩形抽出手段によって抽出された矩形を領域に分割する領域分割手段と、
前記ストローク抽出手段によって抽出されたストローク毎に、該ストロークが存在する前記領域分割手段によって分割された領域の個数を計数する計数手段と、
前記ストローク抽出手段によって抽出されたストローク毎に、該ストロークの長さを計測する計測手段と、
前記計測手段によって計測されたストロークの長さを、該ストロークが含まれている前記矩形の高さ、幅のいずれか一方又は両方を用いて正規化する正規化手段と、
前記計数手段によって計数された領域の個数及び前記正規化手段によって正規化されたストロークの長さに基づいて、前記矩形内のストローク群は削除されたものか否かを判断する判断手段
を具備することを特徴とする情報処理装置。
【請求項６】
コンピュータを、
ストローク群を受け付ける受付手段と、
前記受付手段によって受け付けられたストローク群から予め定められた規則に従って区切られた単位毎にストローク群を抽出するストローク抽出手段と、
前記単位毎のストローク群を囲む矩形を抽出する矩形抽出手段と、
前記矩形抽出手段によって抽出された矩形を領域に分割する領域分割手段と、
前記ストローク抽出手段によって抽出されたストローク毎に、該ストロークが存在する前記領域分割手段によって分割された領域の個数を計数する計数手段と、
前記計数手段によって計数された領域の個数に基づいて、前記矩形内のストローク群は削除されたものか否かを判断する判断手段
として機能させるための情報処理プログラム。
【請求項７】
コンピュータを、
ストローク群を受け付ける受付手段と、
前記受付手段によって受け付けられたストローク群から予め定められた規則に従って区切られた単位毎にストローク群を抽出するストローク抽出手段と、
前記単位毎のストローク群を囲む矩形を抽出する矩形抽出手段と、
前記ストローク分割手段によって分割されたストローク毎に、該ストロークの長さを計測する計測手段と、
前記計測手段によって計測されたストロークの長さを、該ストロークが含まれている前記矩形の高さ、幅のいずれか一方又は両方を用いて正規化する正規化手段と、
前記正規化手段によって正規化されたストロークの長さに基づいて、前記矩形内のストローク群は削除されたものか否かを判断する判断手段
として機能させるための情報処理プログラム。
【請求項８】
コンピュータを、
ストローク群を受け付ける受付手段と、
前記受付手段によって受け付けられたストローク群から予め定められた規則に従って区切られた単位毎にストローク群を抽出するストローク抽出手段と、
前記単位毎のストローク群を囲む矩形を抽出する矩形抽出手段と、
前記矩形抽出手段によって抽出された矩形を領域に分割する領域分割手段と、
前記ストローク抽出手段によって抽出されたストローク毎に、該ストロークが存在する前記領域分割手段によって分割された領域の個数を計数する計数手段と、
前記ストローク抽出手段によって抽出されたストローク毎に、該ストロークの長さを計測する計測手段と、
前記計測手段によって計測されたストロークの長さを、該ストロークが含まれている前記矩形の高さ、幅のいずれか一方又は両方を用いて正規化する正規化手段と、
前記計数手段によって計数された領域の個数及び前記正規化手段によって正規化されたストロークの長さに基づいて、前記矩形内のストローク群は削除されたものか否かを判断する判断手段
として機能させるための情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及び情報処理プログラムに関する。
【背景技術】
【０００２】
特許文献１には、手書き入力システムを利用し、文字が筆記された記入用紙のその紙面上で的確に記入文字に対する訂正処理を確定させることを課題とし、手書き入力システムは、帳票上のドットパターンを読み込んで筆跡情報を生成するデジタルペンと、この筆跡情報からデジタルペンの筆跡をイメージデータ化した筆跡イメージを生成する筆跡イメージ生成部と、筆跡イメージを入力して文字認識を行う文字認識部と、文字認識結果から削除すべき文字を指定する取消文字指定線と削除対象の文字数を指定する削除文字数指定線とを筆跡イメージより検出する訂正指示検出部と、訂正指示検出部による検出結果に基づいて、文字認識部による文字認識結果を訂正する文字認識結果訂正部とを備えることが開示されている。
【０００３】
特許文献２には、タブレットや電子ペンによる記入手段において、一般の紙とペンを用いた通常の筆記行為とできる限り同じ作業感覚で、記入文字の削除や追加、置換、強調などの変更作業が計算機上で行える手段を提供することを課題とし、筆記者が通常の筆記行為で用いられる、削除を意味する二重線や塗りつぶし、追加を意味する山型もしくは谷型記号や矢印記号、強調を意味する囲み線や下線、といった記号をそれら変更処理の開始及びその対象となる文字を指定するための制御コマンドと対応付け、それらコマンドを筆記情報中から自動的に検出し、当該処理を自動的に実行し、またその際の変更対象文字の検出に関し、前記文字認識手法中で生成された文字切出し情報を利用し、二重線や囲み線などの制御記号が記入された場合、前記文字切出し情報とそれら制御記号との重なりの度合いを求め、変更対象文字の判定に利用することによって、高精度な検出を実現することが開示されている。
【０００４】
特許文献３には、媒体に対する筆記情報に基づく処理を行った後におけるその筆記情報の漏洩を防止することを課題とし、電子ペンで印刷文書に筆記し、通信装置に接続すると、通信装置は、筆記を電子化したストローク情報を端末装置に送信し、端末装置は、ペン認証サーバを用いて電子ペンを認証し、識別情報サーバに問い合わせてストローク情報を関連付ける電子文書の格納場所等を示す電子文書情報を取得し、文書サーバに対して電子文書情報とストローク情報とを送信することで登録を依頼し、これにより、文書サーバは、登録の成功／失敗を示す結果情報を端末装置に送信し、通信装置は、結果情報を受信すると、電子ペン内のストローク情報を消去し、結果情報が登録失敗を示していれば、再入力を促すメッセージを出力することが開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献３】特開２００８−０４０７５９号公報
【特許文献２】特開２００４−１５２０４０号公報
【特許文献１】特開２００８−０７７５５３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は、削除記号が含まれている可能性のあるストローク群から、削除された文字を判断するようにした情報処理装置及び情報処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００７】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
請求項１の発明は、ストローク群を受け付ける受付手段と、前記受付手段によって受け付けられたストローク群から予め定められた規則に従って区切られた単位毎にストローク群を抽出するストローク抽出手段と、前記単位毎のストローク群を囲む矩形を抽出する矩形抽出手段と、前記矩形抽出手段によって抽出された矩形を領域に分割する領域分割手段と、前記ストローク抽出手段によって抽出されたストローク毎に、該ストロークが存在する前記領域分割手段によって分割された領域の個数を計数する計数手段と、前記計数手段によって計数された領域の個数に基づいて、前記矩形内のストローク群は削除されたものか否かを判断する判断手段を具備することを特徴とする情報処理装置である。
【０００８】
請求項２の発明は、前記ストロークと前記領域の境界線との交点を算出する算出手段をさらに具備し、前記計数手段は、前記算出手段によって算出された交点に接する領域を、ストロークが存在する領域とすることを特徴とする請求項１に記載の情報処理装置である。
【０００９】
請求項３の発明は、前記矩形抽出手段は、前記単位の列の高さを前記矩形の高さとして、又は該単位の列の幅を該矩形の幅として、該矩形を抽出することを特徴とする請求項１又は２に記載の情報処理装置である。
【００１０】
請求項４の発明は、ストローク群を受け付ける受付手段と、前記受付手段によって受け付けられたストローク群から予め定められた規則に従って区切られた単位毎にストローク群を抽出するストローク抽出手段と、前記単位毎のストローク群を囲む矩形を抽出する矩形抽出手段と、前記ストローク抽出手段によって抽出されたストローク毎に、該ストロークの長さを計測する計測手段と、前記計測手段によって計測されたストロークの長さを、該ストロークが含まれている前記矩形の高さ、幅のいずれか一方又は両方を用いて正規化する正規化手段と、前記正規化手段によって正規化されたストロークの長さに基づいて、前記矩形内のストローク群は削除されたものか否かを判断する判断手段を具備することを特徴とする情報処理装置である。
【００１１】
請求項５の発明は、ストローク群を受け付ける受付手段と、前記受付手段によって受け付けられたストローク群から予め定められた規則に従って区切られた単位毎にストローク群を抽出するストローク抽出手段と、前記単位毎のストローク群を囲む矩形を抽出する矩形抽出手段と、前記矩形抽出手段によって抽出された矩形を領域に分割する領域分割手段と、前記ストローク抽出手段によって抽出されたストローク毎に、該ストロークが存在する前記領域分割手段によって分割された領域の個数を計数する計数手段と、前記ストローク抽出手段によって抽出されたストローク毎に、該ストロークの長さを計測する計測手段と、前記計測手段によって計測されたストロークの長さを、該ストロークが含まれている前記矩形の高さ、幅のいずれか一方又は両方を用いて正規化する正規化手段と、前記計数手段によって計数された領域の個数及び前記正規化手段によって正規化されたストロークの長さに基づいて、前記矩形内のストローク群は削除されたものか否かを判断する判断手段を具備することを特徴とする情報処理装置である。
【００１２】
請求項６の発明は、コンピュータを、ストローク群を受け付ける受付手段と、前記受付手段によって受け付けられたストローク群から予め定められた規則に従って区切られた単位毎にストローク群を抽出するストローク抽出手段と、前記単位毎のストローク群を囲む矩形を抽出する矩形抽出手段と、前記矩形抽出手段によって抽出された矩形を領域に分割する領域分割手段と、前記ストローク抽出手段によって抽出されたストローク毎に、該ストロークが存在する前記領域分割手段によって分割された領域の個数を計数する計数手段と、前記計数手段によって計数された領域の個数に基づいて、前記矩形内のストローク群は削除されたものか否かを判断する判断手段として機能させるための情報処理プログラムである。
【００１３】
請求項７の発明は、コンピュータを、ストローク群を受け付ける受付手段と、前記受付手段によって受け付けられたストローク群から予め定められた規則に従って区切られた単位毎にストローク群を抽出するストローク抽出手段と、前記単位毎のストローク群を囲む矩形を抽出する矩形抽出手段と、前記ストローク分割手段によって分割されたストローク毎に、該ストロークの長さを計測する計測手段と、前記計測手段によって計測されたストロークの長さを、該ストロークが含まれている前記矩形の高さ、幅のいずれか一方又は両方を用いて正規化する正規化手段と、前記正規化手段によって正規化されたストロークの長さに基づいて、前記矩形内のストローク群は削除されたものか否かを判断する判断手段として機能させるための情報処理プログラムである。
【００１４】
請求項８の発明は、コンピュータを、ストローク群を受け付ける受付手段と、前記受付手段によって受け付けられたストローク群から予め定められた規則に従って区切られた単位毎にストローク群を抽出するストローク抽出手段と、前記単位毎のストローク群を囲む矩形を抽出する矩形抽出手段と、前記矩形抽出手段によって抽出された矩形を領域に分割する領域分割手段と、前記ストローク抽出手段によって抽出されたストローク毎に、該ストロークが存在する前記領域分割手段によって分割された領域の個数を計数する計数手段と、前記ストローク抽出手段によって抽出されたストローク毎に、該ストロークの長さを計測する計測手段と、前記計測手段によって計測されたストロークの長さを、該ストロークが含まれている前記矩形の高さ、幅のいずれか一方又は両方を用いて正規化する正規化手段と、前記計数手段によって計数された領域の個数及び前記正規化手段によって正規化されたストロークの長さに基づいて、前記矩形内のストローク群は削除されたものか否かを判断する判断手段として機能させるための情報処理プログラムである。
【発明の効果】
【００１５】
請求項１の情報処理装置によれば、削除記号が含まれている可能性のあるストローク群から、削除されたストローク群を判断することができる。
【００１６】
請求項２の情報処理装置によれば、ストロークと領域の境界線との交点に接する領域を、ストロークが存在する領域として判断することができる。
【００１７】
請求項３の情報処理装置によれば、単位の列の高さ又は単位の列の幅を用いて、矩形を抽出することができる。
【００１８】
請求項４の情報処理装置によれば、削除記号が含まれている可能性のあるストローク群から、削除されたストローク群を判断することができる。
ことができる。
【００１９】
請求項５の情報処理装置によれば、本構成を有していない場合に比較して高精度に、削除記号が含まれている可能性のあるストローク群から、削除されたストローク群を判断することができる。
【００２０】
請求項６の情報処理プログラムによれば、削除記号が含まれている可能性のあるストローク群から、削除されたストローク群を判断することができる。
【００２１】
請求項７の情報処理プログラムによれば、削除記号が含まれている可能性のあるストローク群から、削除されたストローク群を判断することができる。
【００２２】
請求項８の情報処理プログラムによれば、本構成を有していない場合に比較して高精度に、削除記号が含まれている可能性のあるストローク群から、削除されたストローク群を判断することができる。
【図面の簡単な説明】
【００２３】
【図１】第１の実施の形態の構成例についての概念的なモジュール構成図である。
【図２】第１の実施の形態による処理例を示すフローチャートである。
【図３】第１の実施の形態による処理例を示すフローチャートである。
【図４】ストローク情報のデータ構造例を示す説明図である。
【図５】第１の実施の形態による処理例を示す説明図である。
【図６】第１の実施の形態による処理例を示す説明図である。
【図７】第２の実施の形態による処理例を示す説明図である。
【図８】第３の実施の形態の構成例についての概念的なモジュール構成図である。
【図９】従来技術において、文字列の修正例を示す説明図である。
【図１０】従来技術において、文字列の修正例を示す説明図である。
【図１１】従来技術において、文字列の修正例を示す説明図である。
【図１２】本実施の形態を実現化する場合のシステム例を示す説明図である。
【図１３】情報画像が印刷された電子ペン用紙の例を示す説明図である。
【図１４】電子ペン内の構成例を示す説明図である。
【図１５】電子ペンによる処理例を示すフローチャートである。
【図１６】本実施の形態で取り扱う情報画像（コードパターン画像）の例を示す説明図である。
【図１７】本実施の形態における情報の符号化処理例及び情報画像（ドットコード画像）の生成処理例を示す説明図である。
【図１８】本実施の形態を実現するコンピュータのハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【００２４】
まず、本実施の形態を説明する前に、その前提となる技術について図９〜１１を用いて説明する。なお、この説明は、本実施の形態の理解を容易にすることを目的とするものである。
電子ペンを用いて文字認識をする装置において、一旦記入された文字を削除（消去）したい場合がある。図９の例に示すように、文字列「ＡＢＣ」と記載した後で、実は、「ＡＣ」と修正を行いたいと考える場合がある。
ワードプロセッサ等のようにコンピュータ上の電子情報を用いる場合は、文字「Ｂ」を選択して削除することができる。
電子ペンを用いる場合は、既にインクで紙上に「ＡＢＣ」と記載されてしまう。インクでの表記上で削除して、その表記上での削除がそのまま電子的データとしての文字の削除として解釈されることが望ましい。
【００２５】
以下の例では、電子ペンを用いたオンライン文字認識において、文字列「ＡＢＣ」を文字列「ＡＣ」に修正する例（文字列「ＡＢＣ」の「Ｃ」を削除する例）を示している。
図１０は、特許文献１に記載の技術において、文字列の修正例を示す説明図である。図１０の例に示されるように、削除文字列を指定する横線と削除文字を指定する斜め線とで構成される文字列取消線を用いて、削除文字を指定する。
図１１は、特許文献２に記載の技術において、文字列の修正例を示す説明図である。図１１の例に示されるように、多重線（１本線も含む）や塗りつぶしが記載された場合に、削除として扱う例が示されている。
特許文献１のように横線と斜め線で削除する場合には、同様の形状の文字が存在する場合があるため、特に１文字だけを削除する場合は、削除記号と文字とを混同してしまう可能がある。
特許文献２のように多重線や塗りつぶしを用いる場合は、文字と削除記号との区別をすることができる。
しかしながら、特許文献２において、「記憶手段には、各制御記号の形状とそれに対応する動作との組で登録」しておく必要がある。つまり、予め定められた削除記号と同じものを操作者は筆記する必要がある。
【００２６】
以下、図面に基づき本発明を実現するにあたっての好適な各種の実施の形態の例を説明する。
図１は、第１の実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア（コンピュータ・プログラム）、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム（コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム）、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能に一対一に対応していてもよいが、実装においては、１モジュールを１プログラムで構成してもよいし、複数モジュールを１プログラムで構成してもよく、逆に１モジュールを複数プログラムで構成してもよい。また、複数モジュールは１コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって１モジュールが複数コンピュータで実行されてもよい。なお、１つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続（データの授受、指示、データ間の参照関係等）の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。「予め定められた値」が複数ある場合は、それぞれ異なった値であってもよいし、２以上の値（もちろんのことながら、全ての値も含む）が同じであってもよい。また、「Ａである場合、Ｂをする」という意味を有する記載は、「Ａであるか否かを判断し、Ａであると判断した場合はＢをする」の意味で用いる。ただし、Ａであるか否かの判断が不要である場合を除く。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク（一対一対応の通信接続を含む）等の通信手段で接続されて構成されるほか、１つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」（社会システム）にすぎないものは含まない。
また、各モジュールによる処理毎に又はモジュール内で複数の処理を行う場合はその処理毎に、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、外部記憶媒体、通信回線を介した記憶装置、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）内のレジスタ等を含んでいてもよい。
【００２７】
本実施の形態である情報処理装置は、削除記号が含まれている可能性のあるストローク群から、削除されたストローク群を判断するものであって、図１の例に示すように、オンライン文字認識モジュール１１０、ストロークスクラッチ判定モジュール１２０、文字除去モジュール１３０を有している。なお、「予め定められた規則に従って区切られた単位」として、主に文字を例にして示す。本情報処理装置が行う矩形抽出は、文字毎となる場合が多い。ただし、正確に文字であることを判定しているわけではない。また、文字と文字の境界が不明である場合もあるため、ストローク群は「文字毎」には抽出できないことがあり得る。ここで記載している矩形は、「たまたま文字のようなまとまりとして抽出されたストローク群の外接矩形」程度の意味である。また、「予め定められた規則」とは、例えば、オンライン文字認識モジュール１１０によって文字としてのストローク群を抽出するための規則を指し、具体的には、予め定められた大きさの範囲内で記載されていること、予め定められた時間内に記載されていること、前後のストローク間に予め定められた時間以上の間隔があること等、又はこれらの組み合わせ等がある。また、「ストローク群」とは、１つ以上のストロークによって構成されているストロークの集合である。したがって、ストローク群が、１つのストロークによって構成されている場合もある。
【００２８】
オンライン文字認識モジュール１１０は、ストロークスクラッチ判定モジュール１２０と接続されている。オンライン文字認識モジュール１１０は、ストローク情報１０５を受け付ける。オンライン文字認識モジュール１１０によって受け付けられるストローク情報１０５（群）には、複数のストロークが含まれており、文字列を表すストロークの他に、削除記号を示すストロークが含まれている可能性がある。削除記号は、文字上を塗り潰す記号（スクラッチ）である。具体的には、図５の例を用いて後述する。
ストローク情報１０５として、例えば、ストローク情報４００がある。図４は、ストローク情報４００のデータ構造例を示す説明図である。ストローク情報４００は、時刻欄４１０、座標位置欄４２０、ペンアップ／ダウン欄４３０を有している。時刻欄４１０は、時刻を記憶している。ここでの時刻は、時系列を示す情報（座標位置が発生した順序を示す情報）であればよい。座標位置欄４２０は、座標位置を記憶している。座標位置は、電子ペンの紙上での位置（例えば、ＸＹ座標）を示している。ペンアップ／ダウン欄４３０は、ペンアップとペンダウンを示す情報を記憶している。ペンアップは、紙から電子ペンを離したことを示しており、ペンダウンは、紙に電子ペンを押し当てたこと（押し当てていること）を示している。
例えば、１秒に７０回〜１００回程度の頻度で得られた電子ペンの座標位置と、電子ペンのアップダウン情報を用いて、ストローク情報４００が生成される。
電子ペンがダウンしている状態は、紙に文字が書かれている状態としてみなすことができる。すなわち、電子ペンがダウンしてからアップするまでを一つのストローク（一筆で書かれる文字の線）としてみなせる。
このストローク情報１０５を用いて、オンライン文字認識モジュール１１０は、紙上に記載された文字を認識する。ストローク情報１０５を用いて文字を認識する手法は種々存在している。
オンライン文字認識モジュール１１０による文字認識の結果、１又は複数の文字（認識結果（ストローク情報付）１１５）が出力される。文字認識の結果、複数のストロークの一つ一つ毎に、そのストロークがどの文字に対応しているかを判断することができる。
さらに、個々の文字を囲む矩形を形成することができる。文字を囲む矩形として、例えば、その文字の外接矩形がある。ある文字に対応しているストロークの座標情報のＸ軸、Ｙ軸それぞれの最大、最小値を用いて、外接矩形を算出することができる。
【００２９】
ストロークスクラッチ判定モジュール１２０は、オンライン文字認識モジュール１１０、文字除去モジュール１３０と接続されている。ストロークスクラッチ判定モジュール１２０は、オンライン文字認識モジュール１１０から認識結果（ストローク情報付）１１５を受け付ける。前述したように、認識結果（ストローク情報付）１１５には、各文字に対応しているストロークが含まれている。ストロークスクラッチ判定モジュール１２０は、受け付けた認識結果（ストローク情報付）１１５内のストローク群を文字毎に抽出する。つまり、認識文字毎に、その文字として認識するために用いたストロークを抽出する。
次に、ストロークスクラッチ判定モジュール１２０は、文字毎にその文字を囲む矩形を抽出する。前述したような外接矩形を用いてもよい。また、文字列の高さを矩形の高さとして、又は文字列の幅を矩形の幅として、その矩形を抽出するようにしてもよい。ここでの文字列は、対象としている文字を含む文字列である。横書きの場合、「文字列の高さを矩形の高さとして」、その矩形を抽出する。縦書きの場合、「文字列の幅を矩形の幅として」、その矩形を抽出する。例えば、横書きにおいて、「。」等の句読点、「っ」、「ょ」等の促音、拗音を示す小さな文字については、その外接矩形を縦方向に広げた矩形となる。
【００３０】
次に、ストロークスクラッチ判定モジュール１２０は、抽出した矩形を領域（以下、メッシュともいう）に分割する。領域は、矩形を分割しているものであるので、矩形よりも小さい矩形である。矩形の分割数は、縦Ｋ個横Ｌ個等のように、予め定めておけばよい。例えば、Ｋ＝６、Ｌ＝４等とする。
次に、ストロークスクラッチ判定モジュール１２０は、文字毎に抽出したストローク毎に、そのストロークが存在する領域の個数を計数する。例えば、ストロークを辿り、その座標が存在する領域を抽出すればよい。また、ストロークと領域の境界線との交点を算出し、その算出した交点に接する領域を、ストロークが存在する領域として計数するようにしてもよい。
次に、ストロークスクラッチ判定モジュール１２０は、計数した領域の個数に基づいて、矩形内の文字は削除されたものか否かを判断する。なお、対象としているストロークがスクラッチである場合は、矩形内の文字は削除されたものである。ストロークが存在する領域の個数をａとする。
例えば、
Ｐ＝ａ／（Ｋ×Ｌ）
を算出する。このように、領域の総個数で正規化したストロークの存在領域個数を、ストローク存在比（Ｐ）とする。
そして、Ｐが、予め定めておいた閾値Ｔより大であれば、そのストロークが削除記号（スクラッチ）であると判定する。Ｔは、例えば０．７等とする。
そして、ストロークスクラッチ判定モジュール１２０は、処理結果としての判定結果１２５を文字除去モジュール１３０に渡す。判定結果１２５には、認識結果と削除された文字を示す情報（例えば、Ｘ番目の文字が削除されている文字であることを示す情報）が含まれている。
【００３１】
文字除去モジュール１３０は、ストロークスクラッチ判定モジュール１２０と接続されている。文字除去モジュール１３０は、削除記号であるストロークが上書きされた文字を除去して、認識結果１３５の文字列を出力する。
【００３２】
図２は、第１の実施の形態による処理例を示すフローチャートである。
ステップＳ２０２では、オンライン文字認識モジュール１１０が、ストローク情報１０５を受け付ける。図５（ａ）の例は、消去前の文字列（対象ストローク群５００）である。図５（ｂ）の例は、ＡＢＣ（対象ストローク群５００）のうちＢ（削除文字（Ｂ）５１０）だけをスクラッチで消去したものである。つまり、図５（ａ）の例に示すように、電子ペンを用いて対象ストローク群５００として「ＡＢＣ」と手書きされた後に、図５（ｂ）の例に示すように、電子ペンを用いて文字「Ｂ」の上にスクラッチが施された場合、操作者の筆記によって削除文字（Ｂ）５１０が指定されたことになる。
ステップＳ２０４では、オンライン文字認識モジュール１１０が、ストローク情報１０５を文字認識する。文字認識の結果、図５（ｃ）のように１文字毎に文字の外接矩形（外接矩形５２０、外接矩形５３０、外接矩形５４０）を設定することができる。なお、文字認識結果として、文字列「ＡＢＣ」を得る。なお、外接矩形５３０内にはスクラッチのストロークが存在するが、文字認識できる部分を抽出するようにしてもよいし、図５（ａ）の例のように筆記された後、図５（ｂ）の例のようにスクラッチが筆記された場合（つまり、「Ｃ」が筆記された後に「Ｂ」上にスクラッチが筆記された場合）は、その時系列情報から文字列「ＡＢＣ」を得る。
ステップＳ２０６では、ストロークスクラッチ判定モジュール１２０が、ストローク情報１０５からスクラッチであるか判定し、削除された文字を特定する。ステップＳ２０６の処理については、図３の例を用いて後述する。
ステップＳ２０８では、文字除去モジュール１３０が、文字認識結果である文字列から特定された削除文字を削除する。
ステップＳ２１０では、文字除去モジュール１３０が、認識結果１３５を出力する。
【００３３】
図３は、第１の実施の形態による処理例を示すフローチャートである。
ステップＳ３０２では、文字の外接矩形を抽出する。前述の図５（ｂ）の例は、図５（ｃ）の例に示すように、外接矩形５２０、外接矩形５３０、外接矩形５４０となる。
ここで、図５（ｃ）の例は、文字の外接矩形で区切っているが、前述したように、正確に文字の外接矩形で区切ることができない場合があるため、正確に「文字」であることを要求しているわけではない点に注意が必要である。
ステップＳ３０４では、外接矩形を予め定められた個数のメッシュに分割する。例えば、外接矩形５３０をメッシュに分割した例を図５（ｄ）に示す。図５（ｄ）に示す例は、文字Ｂ（削除文字（Ｂ）５１０）の部分の、スクラッチのストロークだけを抜き出して、大きく拡大表示した図であり、Ｂ（削除文字（Ｂ）５１０）の外接矩形５３０を図５（ｄ）の例に示すようにメッシュで分割する。もちろんのことながら、外接矩形５２０、外接矩形５４０も同様にメッシュに分割するが、これらに、スクラッチはない（ステップＳ３１４）と判断される。
ステップＳ３０６では、外接矩形内の１ストロークを抽出する。
【００３４】
ステップＳ３０８では、ステップＳ３０６で抽出したストロークが存在するメッシュを計数する。つまり、スクラッチのストロークが各メッシュに存在しているかどうかを判定する。例えば、外接矩形５３０内でストロークが存在するメッシュを斜線で示した例を図５（ｅ）に示す。メッシュの数がＮで、内部にストロークが存在しているメッシュの数をａとする。図５（ｄ）の例では、メッシュは横４個縦６個であるため、Ｎは４×６＝２４である。ストロークが通るメッシュは、図５（ｅ）の例の斜線で表示している部分であり、ａ＝２２である。
ステップＳ３１０では、ストロークの存在濃度＞閾値であるか否かを判断し、ストロークの存在濃度＞閾値である場合はステップＳ３１６へ進み、それ以外の場合はステップＳ３１２へ進む。前述の例を用いて説明すると、ａ／Ｎが、閾値よりも大きいときに、そのストロークがスクラッチであると判断する。例えば、閾値を０．７として、図５（ｅ）の例では、０．７＜ａ／Ｎであるので、このストロークをスクラッチとする。
【００３５】
ステップＳ３１２では、対象としている文字内の次に判定すべきストロークはあるか否かを判断し、ある場合はステップＳ３０６へ戻り、それ以外の場合はステップＳ３１４へ進む。つまり、対象としている外接矩形内のストローク全てについて、ステップＳ３０６〜ステップＳ３１０までの処理を行う。
ステップＳ３１４では、対象としている外接矩形内にスクラッチはない（削除文字ではない）と判定する。
ステップＳ３１６では、そのストロークはスクラッチである（削除された文字である）と判定する。
ステップＳ３１８では、次に対象とすべき文字はあるか否かを判断し、ある場合はステップＳ３０２へ戻り、それ以外の場合は処理を終了する（ステップＳ３９９）。
【００３６】
図６は、第１の実施の形態による処理例を示す説明図である。これは、ステップＳ３０８の処理の一例であり、前述したストロークとメッシュの境界線との交点を用いた例を示すものである。
ストロークが存在するメッシュの個数ｍの算出方法を具体的に述べる。
まず、図６の例に示すようにＸ軸とＹ軸を設定する。この設定方法は２次元中の点位置を指定できるデカルト座標であれば、どのようなものであってもよい
文字の外接矩形をメッシュに分割するＸ軸方向の線を、Ｘ１〜Ｘｎとする。同様にＹ軸方向の線をＹ１〜Ｙｍとする。また、各メッシュにストロークが存在するか否かを示すメモリ（配列）を用意する。この配列はＯＮ（ストロークが存在する）と、ＯＦＦ（ストロークが存在しない）の２種の値を持つ。初期値は全てＯＦＦとなっている。
始点６１０から終点６２０への一つのストロークは、複数の点列から成り立っている。
連続する２つの点を対象とする。そして、この２つの点と点を結ぶ線分を対象とする。
まず、線分の端点が存在するメッシュをＯＮとする。
次に、線分の２つの端点のＸ座標最大値Ｘｍａｘ、最小値Ｘｍｉｎと、Ｙ座標最大値Ｙｍａｘ、最小値Ｙｍｉｎを求める。
ＸｍａｘとＸｍｉｎの間に存在する線Ｘｉ（ｉ＝１〜ｎ）を抽出する。
線分が、Ｘｉ（ｉ＝１〜ｎ）と交差する位置を算出する。交差する線と、交差位置のＸ座標を用いて、線分がどのメッシュに存在するかを知ることができる。
例えば、図６のＸｉと、線分が交差するＸ座標は、矢印で示した位置である。この位置に存在するメッシュの中で、かつ、Ｘｉを境界として持つメッシュを線分は通ることになる。斜線で示したメッシュに対応する配列をＯＮとする。
これを、全ての抽出したＸｉで行う。
さらに、以上を全ての連続する２点で作った線分で行う。
最終的に配列がＯＮとなったメッシュの個数を数えればよい。
【００３７】
＜第２の実施の形態＞
図７は、第２の実施の形態による処理例を示す説明図である。第２の実施の形態では、ストロークスクラッチ判定モジュール１２０が、ストローク群を受け付け、その受け付けたストローク群を文字毎に抽出し、文字毎にその文字を囲む矩形を抽出し、ストローク毎に、そのストロークの長さを計測し、計測したストロークの長さを、そのストロークが含まれている矩形の高さ、幅のいずれか一方又は両方を用いて正規化し、その正規化したストロークの長さに基づいて、矩形内の文字は削除されたものか否かを判断する。なお、「ストローク群を受け付け、その受け付けたストローク群を文字毎に抽出し、文字毎にその文字を囲む矩形を抽出すること」は、第１の実施の形態と同等の処理である。
【００３８】
第２の実施の形態では、ストロークスクラッチ判定モジュール１２０において、ストロークの長さを評価する。
まず、文字を囲む矩形の高さＨを得る。これは、その文字の矩形の高さであってもよいし、文字列全体の高さであってもよい。
次に、ストロークの長さを計測する。ストロークの長さは、例えば、全ての連続する２点間の距離の和として計測することができる。ストロークの長さをＱとする。予め閾値Ｓを用意しておき、（Ｑ／Ｈ）＞Ｓであれば、そのストロークがスクラッチであると判断する。このように文字を囲む矩形の大きさＨで正規化したストローク長さを、ストローク長さ比とする。
この例では、文字を囲む矩形の高さＨを用いたが、文字を囲む矩形の幅Ｗを用いてもよい。又は、文字を囲む矩形の高さとその矩形の幅から算出する数を用いてもよい。
例えば、次のような式等であってもよい。
（Ｈ＋Ｗ）／２
ｓｑｒｔ（Ｈ×Ｗ）  （ただし、ｓｑｒｔ（）は平方根を取得する関数）
【００３９】
＜第３の実施の形態＞
図８は、第３の実施の形態の構成例についての概念的なモジュール構成図である。
第１の実施の形態では、メッシュ内に存在するストロークの存在比を用いて、スクラッチの判定をした。第２の実施の形態では、ストロークの長さ比を用いて、スクラッチの判定をした。第３の実施の形態では、これらを組み合わせて判定するものである。
図８の例は、第１の実施の形態（第２の実施の形態）におけるストロークスクラッチ判定モジュール１２０内のモジュール構成例を示したものである。
ストロークスクラッチ判定モジュール１２０は、ストローク存在比Ａ算出モジュール８１０、ストローク長さ比Ｂ算出モジュール８２０、判定モジュール８３０を有している。
ストローク存在比Ａ算出モジュール８１０は、判定モジュール８３０と接続されている。ストローク存在比Ａ算出モジュール８１０は、オンライン文字認識モジュール１１０から認識結果（ストローク情報付）１１５を受け取り、第１の実施の形態におけるストロークスクラッチ判定モジュール１２０の処理を行って、ストローク存在比Ａを算出する。
ストローク長さ比Ｂ算出モジュール８２０は、判定モジュール８３０と接続されている。ストローク長さ比Ｂ算出モジュール８２０は、オンライン文字認識モジュール１１０から認識結果（ストローク情報付）１１５を受け取り、第２の実施の形態におけるストロークスクラッチ判定モジュール１２０の処理を行って、ストローク長さ比Ｂを算出する。
判定モジュール８３０は、ストローク存在比Ａ算出モジュール８１０、ストローク長さ比Ｂ算出モジュール８２０と接続されている。判定モジュール８３０は、ストローク存在比Ａ算出モジュール８１０によって計数された領域の個数及びストローク長さ比Ｂ算出モジュール８２０によって正規化されたストロークの長さ（ストローク存在比Ａとストローク長さ比Ｂを含む）に基づいて、矩形内の文字は削除されたものか否かを判断する。そして、判定結果１２５を文字除去モジュール１３０に渡す。
【００４０】
「ストローク存在比Ａが閾値Ｔ１より大」かつ「ストローク長さ比Ｂが閾値Ｔ２より大」の場合にスクラッチであると判断するようにしてもよいし、「ストローク存在比Ａが閾値Ｔ１より大」又は「ストローク長さ比Ｂが閾値Ｔ２より大」の場合にスクラッチであると判断するようにしてもよい。また、順番を設けて、「ストローク存在比Ａが閾値Ｔ１より大」である場合に、「ストローク長さ比Ｂが閾値Ｔ２より大」であるか否かの判断をするようにしてもよい。「ストローク長さ比Ｂが閾値Ｔ２より大」である場合に、「ストローク存在比Ａが閾値Ｔ１より大」であるか否かの判断をするようにしてもよい。順番を設けた場合は、ストローク存在比Ａ算出モジュール８１０又はストローク長さ比Ｂ算出モジュール８２０の一方の処理が終了した後に、他方の処理を行うか否かを判定モジュール８３０が判断するようにしてもよい。
また、予め個々の判定毎に閾値を用意するのではなく、一般の２クラス分類の機械学習方法を用いて判定してもよい。例えば、ニューラルネット、ａｄａｂｏｏｓｔ、ＳＶＭ等、様々な機械学習方法を用いることができる。例えば、判定モジュール８３０は、ニューラルネット、ａｄａｂｏｏｓｔ、ＳＶＭ等の機械学習器を用いて構成した２クラス分類器としてもよい。判定モジュール８３０は、予め、ストローク存在比Ａ、ストローク長さ比Ｂの値と、スクラッチ／非スクラッチの判定結果との対応を学習し、学習結果を内包している。判定モジュール８３０は、ストローク存在比Ａ算出モジュール８１０からストローク存在比Ａとストローク長さ比Ｂ算出モジュール８２０からストローク長さ比Ｂの値を受け付けて、判定結果１２５を出力する。
図８の例では、ストローク存在比Ａとストローク長さ比Ｂだけを受け付けているが、他の値を入力してもよい。ただし、他の値を受け付ける場合には、その値も用いて予め学習する必要がある。
【００４１】
図１２は、本実施の形態を実現化する場合のシステム例を示す説明図である。
電子ペン用紙印刷システム１２２０、筆記情報処理システム１２３０は、通信回線１２９９（有線、無線、その混合を問わない回線）を介して接続されている。電子ペン用紙印刷システム１２２０には印刷装置１２２５が接続されており、筆記情報処理システム１２３０には電子ペン１２３５が接続されている。なお、図１、図８等に例示したモジュール構成は、主に、筆記情報処理システム１２３０に構築されている。
電子ペン用紙印刷システム１２２０は、紙ＩＤを用いて情報画像（以下、ドットコード画像ともいう）を重ね合わせた文書を用紙に印刷装置１２２５を用いて印刷するシステムである。筆記情報処理システム１２３０は、電子ペン用紙印刷システム１２２０によって情報画像が印刷された用紙に対して、電子ペン１２３５を用いて筆記が行われた場合に、その筆記情報を文書に重ね合わせるシステムである。そして、操作者によって電子ペン１２３５を用いて記載された削除記号を検出した場合は、削除記号が重ね合わされた文字を削除した文字列（修正後の文字列）を文書に重ね合わせる。
【００４２】
図１３は、電子ペン用紙印刷システム１２２０によって、情報画像が印刷された電子ペン用紙１３１０の例を示す説明図である。電子ペン用紙１３１０は、電子ペン用紙印刷システム１２２０が印刷装置１２２５を用いて印刷するものである。電子ペン用紙１３１０には、ドットコード画像が印刷されている。例えば、電子ペン用紙１３１０内の領域１３２０には、領域１３２０内を拡大して示している図１３（ｂ）のようなドットコード画像が印刷されている。ドットコード画像によって、電子ペン用紙１３１０一枚一枚に割り当てられた紙ＩＤと用紙上の位置情報（Ｘ，Ｙ座標値）が表現されている。
例えば、紙ＩＤは、３２ｂｉｔの空間内の数値である。文字列表記の場合は、１６進文字列により表記する。よって、紙ＩＤの範囲は「００００００００」から「ＦＦＦＦＦＦＦＦ」である。
【００４３】
図１４は、電子ペン１２３５内の構成例を示す説明図である。
概要を説明する。電子ペン用紙１４９９上に電子ペン１２３５で筆記する際、圧力センサがＯＮ（前述のペンダウン）になると、電子ペン用紙１４９９上のドットコード画像を撮像し、デコードして、電子ペン用紙１４９９の紙ＩＤと電子ペン用紙１４９９上の位置情報（Ｘ，Ｙ座標値）を取り出し、メモリに格納する。そして、メモリに格納された情報を、通信回路を経由して筆記情報処理システム１２３０に送信する。なお、図４の例に示したストローク情報４００のように、圧力センサがＯＮになった情報として前述の筆圧ＯＮ情報（前述のペンダウン）、圧力センサがＯＦＦになった情報として前述の筆圧ＯＦＦ情報（前述のペンアップ）をもメモリに格納してもよい。また、それぞれの情報が発生した時刻に関する情報（年、月、日、秒、秒以下、又はこれらの組み合わせであってもよい）を含ませるようにしてもよい。
【００４４】
次に詳細に説明する。図示するように、電子ペン１２３５は、ペン全体の動作を制御する制御回路１４０１を備える。また、制御回路１４０１は、入力画像から検出したドットコード画像を処理する画像処理部１４０１ａと、そこでの処理結果から紙ＩＤ及び位置情報を抽出するデータ処理部１４０１ｂとを含む。
そして、制御回路１４０１には、電子ペン１２３５による筆記動作をペンチップ１４０９に加わる圧力によって検出する圧力センサ１４０２が接続されている。また、用紙上に赤外光を照射する赤外ＬＥＤ１４０３と、画像を入力する赤外ＣＭＯＳ１４０４も接続されている。さらに、紙ＩＤ及び位置情報等を記憶するための情報メモリ１４０５と、外部装置と通信するための通信回路１４０６と、電子ペン１２３５を駆動するためのバッテリ１４０７と、電子ペン１２３５の識別情報(ペンＩＤ)を記憶するペンＩＤメモリ１４０８も接続されている。
【００４５】
ここで、この電子ペン１２３５の動作の概略を説明する。
電子ペン１２３５による筆記が行われると、ペンチップ１４０９に接続された圧力センサ１４０２が、筆記動作を検出する。これにより、赤外ＬＥＤ１４０３が点灯し、赤外ＣＭＯＳ１４０４がＣＭＯＳセンサによって用紙上の画像を撮像する。
なお、赤外ＬＥＤ１４０３は、消費電力を抑制するために、ＣＭＯＳセンサのシャッタタイミングに同期させてパルス点灯する。
また、赤外ＣＭＯＳ１４０４は、撮像した画像を同時に転送できるグローバルシャッタ方式のＣＭＯＳセンサを使用する。そして、赤外領域に感度があるＣＭＯＳセンサを使用する。また、外乱の影響を低減するために、ＣＭＯＳセンサ全面に可視光カットフィルタを配置している。ＣＭＯＳセンサは、７０ｆｐｓ〜１００ｆｐｓ（ｆｒａｍｅ  ｐｅｒ  ｓｅｃｏｎｄ）程度の周期で、画像を撮像する。なお、撮像素子はＣＭＯＳセンサに限定するものではなく、ＣＣＤ等、他の撮像素子を使用してもよい。
【００４６】
このように撮像した画像が制御回路１４０１に入力されると、制御回路１４０１は、撮像した画像からドットコード画像を取得する。そして、それを復号し、ドットコード画像に埋め込まれている紙ＩＤ及び位置情報を取得する。
以下、このときの制御回路１４０１の動作について説明する。
図１５は、電子ペン１２３５（制御回路１４０１）による処理例を示すフローチャートである。
ステップＳ１５０１では、画像処理部１４０１ａは、画像を入力する。
ステップＳ１５０２では、画像に含まれるノイズを除去するための処理を行う。ここで、ノイズとしては、ＣＭＯＳ感度のばらつきや電子回路により発生するノイズ等がある。ノイズを除去するために如何なる処理を行うかは、電子ペン１２３５の撮像系の特性に応じて決定すべきである。例えば、ぼかし処理やアンシャープマスキング等の先鋭化処理を適用することができる。
ステップＳ１５０３では、画像処理部１４０１ａは、画像からドットパターン（ドット画像の位置）を検出する。例えば、２値化処理によりドットパターン部と背景部とを切り分け、２値化された個々の画像位置からドットパターンを検出することができる。２値化画像にノイズ成分が多数含まれる場合は、例えば、２値化画像の面積や形状によりドットパターンの判定を行うフィルタ処理を組み合わせる必要がある。
【００４７】
また、ステップＳ１５０４では、画像処理部１４０１ａは、検出したドットパターンを２次元配列上のデジタルデータに変換する。例えば、２次元配列上で、ドットがある位置を「１」、ドットがない位置を「０」というように変換する。そして、この２次元配列上のデジタルデータは、画像処理部１４０１ａからデータ処理部１４０１ｂへと受け渡される。
次いで、ステップＳ１５０５では、データ処理部１４０１ｂは、受け渡されたデジタルデータから、図１６（ａ）に示した２つのドットの組み合わせからなるビットパターンを検出する。例えば、ビットパターンに対応するブロックの境界位置を２次元配列上で動かし、ブロック内に含まれるドットの数が２つになるような境界位置を検出することにより、ビットパターンを検出することができる。
このようにしてビットパターンが検出されると、ステップＳ１５０６では、データ処理部１４０１ｂは、ビットパターンの種類を参照することにより、同期符号を検出する。
そして、ステップＳ１５０７では、同期符号からの位置関係に基づいて、識別符号及び位置符号を検出する。
その後、ステップＳ１５０８では、データ処理部１４０１ｂは、識別符号を復号して紙ＩＤを取得し、位置符号を復号して位置情報を取得する。識別符号については、ＲＳ復号処理を施すことで紙ＩＤを得る。一方、位置符号については、読み出した部分系列の位置を、画像生成時に使用したＭ系列と比較することで、位置情報を得る。
【００４８】
次に、筆記情報格納用電子文書について説明する。以降、単に電子文書と表記した場合、筆記情報格納用電子文書を指す。
筆記情報格納用電子文書は、電子ペン１２３５によって電子ペン用紙１４９９に筆記された内容を、フィールド定義とともにまとめたデータである。以下から構成される。
（１）紙ＩＤ：その筆記情報格納用電子文書に対応付けられた電子ペン用紙に割り当てられている紙ＩＤ
（２）フィールド定義：その筆記情報格納用電子文書への筆記を処理するために使用するフィールド定義
そして、以下を含めてもよい。
（３）帳票イメージ：その筆記情報格納用電子文書に印刷されている帳票イメージ
【００４９】
次に、電子ペン用紙印刷システム１２２０で生成されるドットコード画像の元となるコードパターンについて説明する。
図１６は、電子ペン用紙印刷システム１２２０で取り扱う情報画像（コードパターン画像）の例を示す説明図である。
まず、コードパターンを構成するビットパターンについて説明する。
図１６（ａ）に、ビットパターンの配置の一例を示す。
ビットパターンとは、情報埋め込みの最小単位である。ここでは、図１６（ａ）に示すように、９箇所の中から選択した２箇所にビットを配置する。図では、黒の四角が、ビットが配置された位置を示し、斜線の四角が、ビットが配置されていない位置を示している。９箇所の中から２箇所を選択する組み合わせは、３６（＝９Ｃ２）通りある。したがって、このような配置方法により、３６通り（約５．２ビット）の情報を表現することができる。
ただし、紙ＩＤ及び位置情報は、この３６通りのうち３２通り（５ビット）を使用して表現するものとする。
ところで、図１６（ａ）に示した最小の四角は、６００ｄｐｉにおける２ドット×２ドットの大きさを有している。６００ｄｐｉにおける１ドットの大きさは０．０４２３ｍｍなので、この最小の四角の一辺は、８４．６μｍ（＝０．０４２３ｍｍ×２）である。コードパターンを構成するドットは、大きくなればなるほど目に付きやすくなるため、できるだけ小さいほうが好ましい。ところが、あまり小さくすると、プリンタで印刷できなくなってしまう。そこで、ドットの大きさとして、５０μｍより大きく１００μｍより小さい前記の値を採用している。これにより、プリンタで印刷可能な最適な大きさのドットを形成することができる。つまり、８４．６μｍ×８４．６μｍが、プリンタで安定的に形成可能な最小の大きさである。
なお、ドットをこのような大きさにすることで、１つのビットパターンの一辺は、約０．５（＝０．０４２３×２×６）ｍｍとなる。
また、このようなビットパターンから構成されるコードパターンについて説明する。
図１６（ｂ）に、コードパターンの配置の一例を示す。
ここで、図１６（ｂ）に示した最小の四角が、図１６（ａ）に示したビットパターンに相当する。すなわち、紙ＩＤを符号化した識別符号は、１６（＝４×４）個のビットパターンを使用して埋め込まれる。また、Ｘ方向の位置情報を符号化したＸ位置符号と、Ｙ方向の位置情報を符号化したＹ位置符号とは、それぞれ、４個のビットパターンを使用して埋め込まれる。さらに、左上角部に、コードパターンの位置と回転を検出するための同期符号が、１つのビットパターンを使用して埋め込まれる。
なお、１つのコードパターンの大きさは、ビットパターンの５個分の幅に等しいため、約２．５ｍｍとなる。電子ペン用紙印刷システム１２２０では、このように生成したコードパターンを画像化したコードパターン画像を、用紙全面に配置する。
【００５０】
図１７は、電子ペン用紙印刷システム１２２０における情報の符号化処理例及び情報画像（ドットコード画像）の生成処理例を示す説明図である。
まず、紙ＩＤの符号化について説明する。
紙ＩＤの符号化には、ブロック符号化方式のＲＳ（リードソロモン）符号が使用される。図１６の例で説明した通り、電子ペン用紙印刷システム１２２０では、５ビットの情報を表現できるビットパターンを用いて情報を埋め込む。したがって、情報の誤りも５ビット単位で発生するため、ブロック符号化方式で符号化効率がよいＲＳ符号を使用している。ただし、符号化方式はＲＳ符号に限定するものでなく、その他の符号化方式、例えば、ＢＣＨ符号等を使用することもできる。
前述したように、電子ペン用紙印刷システム１２２０では、５ビットの情報量をもつビットパターンを用いて情報を埋め込む。したがって、ＲＳ符号のブロック長を５ビットとする必要がある。そのため、紙ＩＤを５ビットずつに区切り、ブロック化する。図１７では、紙ＩＤ「００１１１０１１０１００１…」から、第１のブロック「００１１１」と、第２のブロック「０１１０１」とが切り出されている。
そして、ブロック化された紙ＩＤに対し、ＲＳ符号化処理を行う。図１７では、「ｂｌｋ１」、「ｂｌｋ２」、「ｂｌｋ３」、「ｂｌｋ４」、…というようにブロック化した後、ＲＳ符号化が行われる。
ところで、電子ペン用紙印刷システム１２２０において、紙ＩＤは、１６（＝４×４）個のブロックに分けられる。そこで、ＲＳ符号における符号ブロック数を１６とすることができる。
また、情報ブロック数は、誤りの発生状況に応じて設計することができる。例えば、情報ブロック数を８とすれば、ＲＳ（１６，８）符号となる。この符号は、符号化された情報に４ブロック（＝（１６−８）÷２）の誤りが発生しても、それを補正することができる。また、誤りの位置を特定できれば、訂正能力をさらに向上することができる。なお、この場合、情報ブロックに格納される情報量は、４０ビット（＝５ビット×８ブロック）であるが、このうち３２ビットを用いる。
【００５１】
次に、位置情報の符号化について説明する。
位置情報の符号化には、擬似乱数系列の一種であるＭ系列符号が使用される。ここで、Ｍ系列とは、Ｋ段の線形シフトレジスタで発生できる最大周期の系列であり、２Ｋ−１の系列長をもつ。このＭ系列から取り出した任意の連続したＫビットは、同じＭ系列中の他の位置に現れない性質をもつ。そこで、この性質を利用することにより、位置情報を符号化することができる。
ところで、電子ペン用紙印刷システム１２２０では、符号化すべき位置情報の長さから、必要なＭ系列の次数を求め、Ｍ系列を生成している。しかしながら、符号化する位置情報の長さが予め分かっている場合は、Ｍ系列を毎回生成する必要はない。すなわち、固定のＭ系列を予め生成しておき、それをメモリ等に格納しておけばよい。
例えば、系列長８１９１のＭ系列（Ｋ＝１３）を使用したとする。
この場合、位置情報も５ビット単位で埋め込むため、系列長８１９１のＭ系列から５ビットずつ取り出してブロック化する。図１７では、Ｍ系列「１１０１００１１０１１０１０…」が、５ビットずつブロック化されている。
【００５２】
このように、電子ペン用紙印刷システム１２２０では、位置情報と紙ＩＤとで、異なる符号化方式を用いている。これは、紙ＩＤの検出能力を、位置情報の検出能力よりも高くなるように設定する必要があるからである。つまり、位置情報は、紙面の位置を取得するための情報なので、ノイズ等によって復号できない部分があっても、その部分が欠損するだけで他の部分には影響しない。これに対し、紙ＩＤは、復号に失敗すると、筆記情報を反映する対象を検出できなくなるからである。さらに、このような構成とすることによって、位置情報と紙ＩＤを復号する際の画像読取範囲を最小化できる。すなわち、位置情報にＲＳ符号等の境界を有する符号化方式を使用すると、それを復号する際には境界間の符号を読み取る必要があるため、画像を読み取る範囲は図１６（ｂ）に示した領域の２倍の領域とする必要がある。しかし、Ｍ系列を使用することで、図１６（ｂ）に示した領域と同じ大きさの領域を読み取ればよい構成にできる。これは、Ｍ系列の性質上、Ｍ系列の任意の部分系列から位置情報を復号できるからである。すなわち、紙ＩＤと位置情報を復号する際には、図１６（ｂ）に示した大きさの領域を読み取る必要があるが、その読み取る位置は、図１６（ｂ）に示した境界と一致させる必要はない。位置情報は、Ｍ系列の任意位置の部分系列から復号できる。紙ＩＤは、同じ情報が用紙全面に配置されるため、図１６（ｂ）に図示した境界から読取位置がずれても、読み取られた情報の断片を再配置することで元の情報を復元することができる。
【００５３】
以上のように、紙ＩＤがブロック分割された後、ＲＳ符号により符号化され、また、位置情報がＭ系列により符号化された後、ブロック分割されると、図示するように、ブロックが合成される。すなわち、これらのブロックは、図示するようなフォーマットで２次元平面に展開される。図１７に示したフォーマットは、図１６（ｂ）に示したフォーマットに対応している。すなわち、黒の四角が同期符号を意味している。
また、横方向に配置された「１」、「２」、「３」、「４」、…がＸ位置符号を、縦方向に配置された「１」、「２」、「３」、「４」、…がＹ位置符号を、それぞれ意味している。位置符号は、用紙の位置が異なれば異なる情報が配置されるので、座標位置に対応する数字で示しているのである。一方、斜線部分の四角が識別符号を意味している。識別符号は、用紙の位置が異なっても同じ情報が配置されるので、全て同じマークで示しているのである。
ところで、図からも分かる通り、２つの同期符号の間には、４個のビットパターンがある。したがって、２０（＝５×４）ビットのＭ系列の部分系列を配置することができる。２０ビットの部分系列から１３ビットの部分系列を取り出せば、その１３ビットが全体（８１９１）の中のどの部分の部分系列なのかを特定することができる。このように、２０ビットのうち１３ビットを位置の特定に使用した場合、取り出した１３ビットの誤りの検出又は訂正を、残りの７ビットを使用して行うことができる。すなわち、Ｍ系列を生成したときと同じ生成多項式を使用して、２０ビットの整合性を確認することで、誤りの検出と訂正が可能となるのである。
その後、各ブロックにおけるビットパターンが、ドット画像を参照することにより画像化される。そして、図１７の最右に示すようなドットで情報を表す出力画像が生成される。
【００５４】
なお、本実施の形態としてのプログラムが実行されるコンピュータのハードウェア構成は、図１８に例示するように、一般的なコンピュータであり、具体的にはパーソナルコンピュータ、サーバとなり得るコンピュータ等である。つまり、具体例として、処理部（演算部）としてＣＰＵ１８０１を用い、記憶装置としてＲＡＭ１８０２、ＲＯＭ１８０３、ＨＤ１８０４を用いている。ＨＤ１８０４として、例えばハードディスクを用いてもよい。オンライン文字認識モジュール１１０、ストロークスクラッチ判定モジュール１２０、文字除去モジュール１３０、ストローク存在比Ａ算出モジュール８１０、ストローク長さ比Ｂ算出モジュール８２０、判定モジュール８３０等のプログラムを実行するＣＰＵ１８０１と、そのプログラムやデータを記憶するＲＡＭ１８０２と、本コンピュータを起動するためのプログラム等が格納されているＲＯＭ１８０３と、補助記憶装置（フラッシュメモリ等であってもよい）であるＨＤ１８０４と、キーボード、マウス、タッチパネル等に対する利用者の操作に基づいてデータを受け付ける受付装置１８０６と、ＣＲＴ、液晶ディスプレイ等の出力装置１８０５と、ネットワークインタフェースカード等の通信ネットワークと接続するための通信回線インタフェース１８０７、そして、それらをつないでデータのやりとりをするためのバス１８０８により構成されている。これらのコンピュータが複数台互いにネットワークによって接続されていてもよい。
【００５５】
前述の実施の形態のうち、コンピュータ・プログラムによるものについては、本ハードウェア構成のシステムにソフトウェアであるコンピュータ・プログラムを読み込ませ、ソフトウェアとハードウェア資源とが協働して、前述の実施の形態が実現される。
なお、図１８に示すハードウェア構成は、１つの構成例を示すものであり、本実施の形態は、図１８に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア（例えばＡＳＩＣ等）で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに図１８に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、特に、パーソナルコンピュータの他、情報家電、複写機、ファックス、スキャナ、プリンタ、複合機（スキャナ、プリンタ、複写機、ファックス等のいずれか２つ以上の機能を有している画像処理装置）などに組み込まれていてもよい。
【００５６】
前述の実施の形態では、ストロークの存在比や、ストローク長さ比を用いて、ストロークがスクラッチであるか否かを判定した。この判定に用いる閾値を文字サイズ（矩形の大きさ）に応じて変更してもよい。例えば、矩形の縦横の画素数が予め定められた値よりも小さな矩形の場合、スクラッチを重畳し難い場合がある。このような場合を考慮して、閾値を下げる等の処理を行う。又は、矩形の縦横画素数自体を、ニューラルネット、ａｄａｂｏｏｓｔ、ＳＶＭ等の機械学習器で実現した判別器の特徴量として受け付け、学習するようにしてもよい。
また、前述の実施の形態の説明において、予め定められた値との比較において、「以上」、「以下」、「より大きい」、「より小さい（未満）」としたものは、その組み合わせに矛盾が生じない限り、それぞれ「より大きい」、「より小さい（未満）」、「以上」、「以下」としてもよい。
【００５７】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク（ＤＶＤ）であって、ＤＶＤフォーラムで策定された規格である「ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ−ＲＡＭ等」、ＤＶＤ＋ＲＷで策定された規格である「ＤＶＤ＋Ｒ、ＤＶＤ＋ＲＷ等」、コンパクトディスク（ＣＤ）であって、読出し専用メモリ（ＣＤ−ＲＯＭ）、ＣＤレコーダブル（ＣＤ−Ｒ）、ＣＤリライタブル（ＣＤ−ＲＷ）等、ブルーレイ・ディスク（Ｂｌｕ−ｒａｙ（登録商標）  Ｄｉｓｃ）、光磁気ディスク（ＭＯ）、フレキシブルディスク（ＦＤ）、磁気テープ、ハードディスク、読出し専用メモリ（ＲＯＭ）、電気的消去及び書換可能な読出し専用メモリ（ＥＥＰＲＯＭ（登録商標））、フラッシュ・メモリ、ランダム・アクセス・メモリ（ＲＡＭ）、ＳＤ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）メモリーカード等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク（ＬＡＮ）、メトロポリタン・エリア・ネットワーク（ＭＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。
【符号の説明】
【００５８】
１０５…ストローク情報
１１０…オンライン文字認識モジュール
１１５…認識結果（ストローク情報付）
１２０…ストロークスクラッチ判定モジュール
１２５…判定結果
１３０…文字除去モジュール
１３５…認識結果
８１０…ストローク存在比Ａ算出モジュール
８２０…ストローク長さ比Ｂ算出モジュール
８３０…判定モジュール
【図１】
2015072622.tif 000003
【図２】
2015072622.tif 000004
【図３】
2015072622.tif 000005
【図４】
2015072622.tif 000006
【図５】
2015072622.tif 000007
【図６】
2015072622.tif 000008
【図７】
2015072622.tif 000009
【図８】
2015072622.tif 000010
【図９】
2015072622.tif 000011
【図１０】
2015072622.tif 000012
【図１１】
2015072622.tif 000013
【図１２】
2015072622.tif 000014
【図１３】
2015072622.tif 000015
【図１４】
2015072622.tif 000016
【図１５】
2015072622.tif 000017
【図１６】
2015072622.tif 000018
【図１７】
2015072622.tif 000019
【図１８】
2015072622.tif 000020