(58)【調査した分野】(Int.Cl.,DB名)
文書情報が印刷された用紙に対する筆記位置を示す座標と、該用紙を識別する情報である用紙識別情報と、該用紙内の欄に関する定義であるフォーム定義を識別するフォーム定義識別情報を筆記情報として受け付ける受付手段と、
前記受付手段によって受け付けられた筆記情報内の用紙識別情報に対応する文書を取り出せるか否かを判断する第1の判断手段と、
前記第1の判断手段によって取り出せないと判断した場合は、フォーム定義識別情報とフォーム定義を対応付けて記憶している第1の記憶手段から、フォーム定義識別情報に対応するフォーム定義を取り出せるか否かを判断する第2の判断手段と、
前記第2の判断手段によって取り出せると判断した場合は、前記第1の記憶手段から、前記フォーム定義を取り出す取出手段と、
前記取出手段によって取り出されたフォーム定義に基づいて、文書を生成する生成手段と、
前記生成手段によって生成された文書に、前記受付手段によって受け付けられた筆記情報内の筆記を重ね合わせる重合手段と、
前記第2の判断手段によって取り出せないと判断した場合は、前記受付手段によって受け付けられた筆記情報を第2の記憶手段に記憶させるように制御する記憶制御手段
を具備し、
前記第2の判断手段は、前記第1の記憶手段にフォーム定義識別情報とフォーム定義の新たな組み合わせが記憶された場合に、前記第2の記憶手段に記憶された筆記情報内のフォーム定義識別情報と対応付けられているフォーム定義を、該第1の記憶手段から取り出せるか否かを判断する
ことを特徴とする情報処理装置。
【発明を実施するための形態】
【0018】
以下、図面に基づき本発明を実現するにあたっての好適な一実施の形態の例を説明する。
図1は、本実施の形態の構成例についての概念的なモジュール構成図を示している。
なお、モジュールとは、一般的に論理的に分離可能なソフトウェア(コンピュータ・プログラム)、ハードウェア等の部品を指す。したがって、本実施の形態におけるモジュールはコンピュータ・プログラムにおけるモジュールのことだけでなく、ハードウェア構成におけるモジュールも指す。それゆえ、本実施の形態は、それらのモジュールとして機能させるためのコンピュータ・プログラム(コンピュータにそれぞれの手順を実行させるためのプログラム、コンピュータをそれぞれの手段として機能させるためのプログラム、コンピュータにそれぞれの機能を実現させるためのプログラム)、システム及び方法の説明をも兼ねている。ただし、説明の都合上、「記憶する」、「記憶させる」、これらと同等の文言を用いるが、これらの文言は、実施の形態がコンピュータ・プログラムの場合は、記憶装置に記憶させる、又は記憶装置に記憶させるように制御するの意である。また、モジュールは機能に1対1に対応していてもよいが、実装においては、1モジュールを1プログラムで構成してもよいし、複数モジュールを1プログラムで構成してもよく、逆に1モジュールを複数プログラムで構成してもよい。また、複数モジュールは1コンピュータによって実行されてもよいし、分散又は並列環境におけるコンピュータによって1モジュールが複数コンピュータで実行されてもよい。なお、1つのモジュールに他のモジュールが含まれていてもよい。また、以下、「接続」とは物理的な接続の他、論理的な接続(データの授受、指示、データ間の参照関係等)の場合にも用いる。「予め定められた」とは、対象としている処理の前に定まっていることをいい、本実施の形態による処理が始まる前はもちろんのこと、本実施の形態による処理が始まった後であっても、対象としている処理の前であれば、そのときの状況・状態に応じて、又はそれまでの状況・状態に応じて定まることの意を含めて用いる。「予め定められた値」が複数ある場合は、それぞれ異なった値であってもよいし、2以上の値(もちろんのことながら、全ての値も含む)が同じであってもよい。また、「Aである場合、Bをする」という意味を有する記載は、「Aであるか否かを判断し、Aであると判断した場合はBをする」の意味で用いる。ただし、Aであるか否かの判断が不要である場合を除く。
また、システム又は装置とは、複数のコンピュータ、ハードウェア、装置等がネットワーク(1対1対応の通信接続を含む)等の通信手段で接続されて構成されるほか、1つのコンピュータ、ハードウェア、装置等によって実現される場合も含まれる。「装置」と「システム」とは、互いに同義の用語として用いる。もちろんのことながら、「システム」には、人為的な取り決めである社会的な「仕組み」(社会システム)にすぎないものは含まない。
また、各モジュールによる処理ごとに又はモジュール内で複数の処理を行う場合はその処理ごとに、対象となる情報を記憶装置から読み込み、その処理を行った後に、処理結果を記憶装置に書き出すものである。したがって、処理前の記憶装置からの読み込み、処理後の記憶装置への書き出しについては、説明を省略する場合がある。なお、ここでの記憶装置としては、ハードディスク、RAM(Random Access Memory)、外部記憶媒体、通信回線を介した記憶装置、CPU(Central Processing Unit)内のレジスタ等を含んでいてもよい。
【0019】
用紙識別情報とは、用紙を一枚一枚特定するための情報であり、後述の紙ID(IDentification)と同一のものである(以下、紙IDともいう)。用紙識別情報は、その用紙識別情報を表す情報画像が用紙に印刷されることで、用紙を一意に識別することが可能になる。本実施の形態である情報処理装置は、用紙に情報画像を印刷するために必要な情報である用紙識別情報の他に、その用紙内の欄に関する定義であるフォーム定義のフォーム定義識別情報(以下、フォーム定義IDともいう)を含めて情報画像を生成するものであって、
図1の例に示すように、フォーム定義識別情報受付モジュール100、フォーム定義受付モジュール110、情報画像生成モジュール120、印刷モジュール130、対応付モジュール140、フォーム定義記憶モジュール150を有している。
紙面に電子ペンで筆記することにより、その筆記を電子化した筆記情報を取得する技術に関するものである。こうした技術では、まず、紙面に対し、紙面上の位置に固有な情報画像(符号パターン)を印刷しておく。これにより、電子ペンで紙面に筆記すると、電子ペンがペン先の位置にある情報画像を読み取って復号し、筆記位置を判別する。そして、判別された複数の筆記位置から筆記情報を生成する。
【0020】
フォーム定義識別情報受付モジュール100は、情報画像生成モジュール120、対応付モジュール140と接続されている。フォーム定義識別情報受付モジュール100は、用紙内の欄に関する定義を示す情報であるフォーム定義に対応付けるフォーム定義識別情報を受け付ける。フォーム定義自体は、フォーム定義受付モジュール110が受け付ける。フォーム定義識別情報受付モジュール100が受け付ける「フォーム定義識別情報」は、フォーム定義を本実施の形態において一意に識別できる情報である。受け付けるフォーム定義識別情報は複数であってもよい。また、用紙として、手書きによる文字等が記載されるものであって、例えば、帳票、アンケート用紙等が該当する。
フォーム定義受付モジュール110は、対応付モジュール140と接続されている。フォーム定義受付モジュール110は、用紙内の欄に関する定義であるフォーム定義を受け付ける。「用紙内の欄に関する定義を示す情報」とは、用紙内の欄に記載された筆記を認識等するための情報であって、例えば、その欄がある位置、その欄に記載されるべき文字の範囲等がある。具体的には、
図10に例示のフォーム定義テーブル1000の欄No.欄1020群を用いて後述する。
【0021】
情報画像生成モジュール120は、フォーム定義識別情報受付モジュール100、印刷モジュール130と接続されている。情報画像生成モジュール120は、用紙内の座標と、その用紙を識別する情報である用紙識別情報と、フォーム定義識別情報受付モジュール100によって受け付けられたフォーム定義識別情報を示す画像である情報画像を生成する。つまり、生成された情報画像には、少なくとも座標、用紙識別情報、フォーム定義識別情報の3つの情報が含まれていることになる。具体的には、
図7、8等を用いて後述する。
印刷モジュール130は、情報画像生成モジュール120と接続されている。印刷モジュール130は、情報画像生成モジュール120によって生成された情報画像を文書情報に重ね合わせて、用紙に印刷する。具体的には、
図3に例示する電子ペン用紙310を出力する。
対応付モジュール140は、フォーム定義識別情報受付モジュール100、フォーム定義受付モジュール110、フォーム定義記憶モジュール150と接続されている。対応付モジュール140は、フォーム定義識別情報とフォーム定義を対応付け、その対応付け結果をフォーム定義記憶モジュール150に記憶させる。つまり、フォーム定義識別情報を用いてフォーム定義を抽出できるようにする。
フォーム定義記憶モジュール150は、対応付モジュール140と接続されている。フォーム定義記憶モジュール150は、対応付けられたフォーム定義識別情報とフォーム定義を記憶する。具体的には、
図10に例示するフォーム定義テーブル1000を記憶する。
【0022】
図2は、本実施の形態を実現化する場合のシステム例を示す説明図である。
フォーム定義生成システム210、電子ペン用紙印刷システム220、筆記情報処理システム230がある。電子ペン用紙印刷システム220には印刷装置225が接続されており、筆記情報処理システム230には電子ペン235が接続されている。
フォーム定義生成システム210は、フォーム定義を生成するシステムであって、後述する
図12に例示のモジュール構成を含んでおり、
図13に例示のフローチャートによる処理を行う。
電子ペン用紙印刷システム220は、フォーム定義生成システム210によって生成されたフォーム定義等を用いた情報画像(以下、ドットコード画像ともいう)を重ね合わせた文書を、印刷装置225を用いて用紙に印刷するシステムであって、
図1に例示のモジュール構成を含んでおり、又は、後述する
図14に例示のモジュール構成を含んでおり、
図15に例示のフローチャートによる処理を行う。
筆記情報処理システム230は、電子ペン用紙印刷システム220によって印刷された用紙に対して電子ペン235を用いて筆記が行われた場合に、その筆記情報を文書に重ね合わせるシステムであって、後述する
図16に例示のモジュール構成を含んでおり、又は、
図17に例示のモジュール構成を含んでおり、
図18又は
図19に例示のフローチャートによる処理を行う。
【0023】
本実施の形態以外の情報処理システムでの電子ペンに関する処理では、電子ペン用紙上に印刷される帳票イメージ、又は、筆記を処理する際に使用するフォーム定義と、用紙に割り当てられる紙IDとの対応関係は、帳票を印刷して電子ペン用紙を作成する際に決定され、その情報処理システム中に記憶される。電子ペンを使用して手書きされた筆記情報を処理する際には、筆記情報から紙IDを取り出し、情報処理システム中に記憶されている情報をたどって帳票イメージや、フォーム定義を取り出す。
しかし、この方法は、電子ペン用紙を印刷するシステムと、筆記情報を処理するシステムの独立性が高い場合には使用できない。例えば、電子ペン用紙を印刷するシステムと筆記情報を処理するシステムが別のシステムであり、さらに通信ネットワークがなく、分離されているような場合がこれにあたる。通信ネットワークとして接続されている場合であっても、電子ペン用紙を印刷するシステムが、筆記情報を処理するシステムに情報を提供する機能をもつには、コストの高いサーバシステムを構築する必要があるような場合もあり、本実施の形態以外の情報処理システムを適用しにくい。
【0024】
なお、フォーム定義生成システム210、電子ペン用紙印刷システム220、筆記情報処理システム230は、
図2に示す例では互いに独立しているが、通信回線(有線、無線、その混合を問わない回線)によって接続されていてもよいし、その一部(例えば、フォーム定義生成システム210、電子ペン用紙印刷システム220)が通信回線によって接続されていてもよい。なお、本実施の形態では、フォーム定義生成システム210によって生成されたフォーム定義とフォーム定義識別情報が対応付けられた情報を共有している。
例えば、共有方法としては、以下のようなバリエーションがありうる。
(1)フォーム定義とフォーム定義識別情報との対応のコピーを電子ペン用紙印刷システム220外に取り出すことができる機能が用意されている。そして、フォーム定義とフォーム定義識別情報との対応を、筆記情報処理システム230に登録する機能が用意されている。例えば、フォーム定義とフォーム定義識別情報との対応のコピーを取り出してUSBメモリ等にコピーし、そのUSBメモリを介して筆記情報処理システム230に登録する。
(2)フォーム定義生成システム210と電子ペン用紙印刷システム220が単一のシステム中(例えば、フォーム定義生成システム210と電子ペン用紙印刷システム220が通信回線を介して接続されているシステム等)に共存しており、筆記情報処理システム230は独立している場合について、前者のフォーム定義生成システム210と電子ペン用紙印刷システム220によって構成されているシステムには、フォーム定義とフォーム定義識別情報との対応のコピーを同システム外に取り出すことができる機能が用意されており、後者の筆記情報処理システム230には、取り出したフォーム定義とフォーム定義識別情報との対応を登録する機能が用意されている。
【0025】
図3は、本実施の形態によって、情報画像が印刷された電子ペン用紙310の例を示す説明図である。電子ペン用紙310は、電子ペン用紙印刷システム220が印刷装置225(印刷モジュール130)を用いて印刷するものである。電子ペン用紙310には、ドットコード画像が印刷されている。例えば、電子ペン用紙310内の領域320には、領域320内を拡大して示している
図3(b)のようなドットコード画像が印刷されている。ドットコード画像によって、電子ペン用紙310一枚一枚に割り当てられたID(紙ID)と用紙上の位置情報(X,Y座標値)とフォーム定義IDが表現されている。
例えば、紙IDは、32ビットの空間内の数値である。文字列表記の場合は、16進文字列により表記する。よって、紙IDの範囲は「00000000」から「FFFFFFFF」である。フォーム定義IDは、紙IDのビット数よりも少ないのが一般的である。また、紙IDとフォーム定義IDのビット数を合わせて32ビットとしてもよい。
【0026】
図4は、電子ペン235内の構成例を示す説明図である。
概要を説明する。電子ペン用紙310上に電子ペン235で筆記する際、圧力センサがONになると、電子ペン用紙310上のドットコード画像を撮像し、デコードして、電子ペン用紙310の紙IDと電子ペン用紙310上の位置情報(X,Y座標値)、紙ID、フォーム定義IDを取り出し、メモリに格納する。そして、メモリに格納された情報は、通信回路を経由して筆記情報処理システム230に送信する。なお、圧力センサがONになった情報として筆圧ON情報、圧力センサがOFFになった情報として筆圧OFF情報をもメモリに格納してもよい。また、それぞれの情報が発生した時刻に関する情報(年、月、日、秒、秒以下、又はこれらの組み合わせであってもよい)を含ませるようにしてもよい。そして、デコードできなかったことを示す読取不可情報が含まれていてもよい。
【0027】
次に詳細に説明する。図示するように、電子ペン235は、ペン全体の動作を制御する制御回路401を備える。また、制御回路401は、入力画像から検出したドットコード画像を処理する画像処理部401aと、そこでの処理結果から紙ID及び位置情報を抽出するデータ処理部401bとを含む。
そして、制御回路401には、電子ペン235による筆記動作をペンチップ409に加わる圧力によって検出する圧力センサ402が接続されている。また、用紙上に赤外光を照射する赤外LED403と、画像を入力する赤外CMOS404も接続されている。さらに、紙ID、フォーム定義ID及び位置情報等を記憶するための情報メモリ405と、外部装置と通信するための通信回路406と、ペンを駆動するためのバッテリ407と、ペンの識別情報(ペンID)を記憶するペンIDメモリ408も接続されている。
【0028】
ここで、この電子ペン235の動作の概略を説明する。
電子ペン235による筆記が行われると、ペンチップ409に接続された圧力センサ402が、筆記動作を検出する。これにより、赤外LED403が点灯し、赤外CMOS404がCMOSセンサによって用紙上の画像を撮像する。
なお、赤外LED403は、消費電力を抑制するために、CMOSセンサのシャッタタイミングに同期させてパルス点灯する。
また、赤外CMOS404は、撮像した画像を同時に転送できるグローバルシャッタ方式のCMOSセンサを使用する。そして、赤外領域に感度があるCMOSセンサを使用する。また、外乱の影響を低減するために、CMOSセンサ全面に可視光カットフィルタを配置している。CMOSセンサは、70fps〜100fps(frame per second)程度の周期で、画像を撮像する。なお、撮像素子はCMOSセンサに限定するものではなく、CCD等、他の撮像素子を使用してもよい。
【0029】
このように撮像した画像が制御回路401に入力されると、制御回路401は、撮像した画像からドットコード画像を取得する。そして、それを復号し、ドットコード画像に埋め込まれている紙ID、フォーム定義ID及び位置情報を取得する。
以下、このときの制御回路401の動作について説明する。
図5は、電子ペン235(制御回路401)による処理例を示すフローチャートである。
ステップS501では、画像処理部401aは、画像を入力する。
ステップS502では、画像に含まれるノイズを除去するための処理を行う。ここで、ノイズとしては、CMOS感度のばらつきや電子回路により発生するノイズ等がある。ノイズを除去するために如何なる処理を行うかは、電子ペン235の撮像系の特性に応じて決定すべきである。例えば、ぼかし処理やアンシャープマスキング等の先鋭化処理を適用することができる。
ステップS503では、画像処理部401aは、画像からドットパターン(ドット画像の位置)を検出する。例えば、2値化処理によりドットパターン部と背景部とを切り分け、2値化された個々の画像位置からドットパターンを検出することができる。2値化画像にノイズ成分が多数含まれる場合は、例えば、2値化画像の面積や形状によりドットパターンの判定を行うフィルタ処理を組み合わせる必要がある。
【0030】
また、ステップS504では、画像処理部401aは、検出したドットパターンを2次元配列上のデジタルデータに変換する。例えば、2次元配列上で、ドットがある位置を「1」、ドットがない位置を「0」というように変換する。そして、この2次元配列上のデジタルデータは、画像処理部401aからデータ処理部401bへと受け渡される。
次いで、ステップS505では、データ処理部401bは、受け渡されたデジタルデータから、
図7(a)に示した2つのドットの組み合わせからなるビットパターンを検出する。例えば、ビットパターンに対応するブロックの境界位置を2次元配列上で動かし、ブロック内に含まれるドットの数が2つになるような境界位置を検出することにより、ビットパターンを検出することができる。
このようにしてビットパターンが検出されると、ステップS506では、データ処理部401bは、ビットパターンの種類を参照することにより、同期符号を検出する。
そして、ステップS507では、同期符号からの位置関係に基づいて、識別符号及び位置符号を検出する。
その後、ステップS508では、データ処理部401bは、識別符号を復号して紙ID、フォーム定義IDを取得し、位置符号を復号して位置情報を取得する。識別符号については、RS復号処理を施すことで紙ID、フォーム定義IDを得る。一方、位置符号については、読み出した部分系列の位置を、画像生成時に使用したM系列と比較することで、位置情報を得る。
【0031】
図6は、帳票イメージ610、フォーム定義620の例を示す説明図である。
フォーム定義は、少なくともフォーム定義620(用紙内の欄に関する定義を示す情報)を含み、帳票イメージ610を加えてもよい。フォーム定義620は、筆記情報のうち、データ化する領域を示す情報であり、かつ、データ化する際の属性情報(データ化する際の形式、文字認識する際の使用文字の範囲や、使用辞書の指定)をもつ。フォーム定義620には、例えば、記入欄622、チェック欄群624(チェック欄626、チェック欄628を含む)等がある。フォーム定義620は、具体的には、例えば、フォーム定義テーブル1000によって定義されている。
図10は、フォーム定義テーブル1000のデータ構造例を示す説明図である。フォーム定義テーブル1000は、フォーム定義ID欄1010と複数(電子ペン用紙310内にある欄の数)の欄No.欄1020によって構成されている。そして、欄No.欄1020には、欄No.欄1020の他に、X欄1021、Y欄1022、W欄1023、H欄1024、データ形式欄1025、使用文字範囲欄1026、使用辞書欄1027が含まれている。フォーム定義ID欄1010は、フォーム定義を本実施の形態で一意に識別する情報を記憶している。欄No.欄1020は、フォーム定義内の欄を一意に識別する情報を記憶している。X欄1021は、その欄(矩形)の例えば左上x座標を記憶している。Y欄1022は、その欄の例えば左上y座標を記憶している。W欄1023は、その欄の幅を記憶している。H欄1024は、その欄の高さを記憶している。データ形式欄1025は、その欄に記載される筆記のデータ形式(例えば、文字、チェックマーク等)を記憶している。使用文字範囲欄1026は、その欄に記載される筆記である文字の使用範囲(例えば、英字のみ、カタカナのみ等)を記憶している。使用辞書欄1027は、その欄に記載される筆記である文字を認識する際に利用する辞書(例えば、氏名辞書)を記憶している。なお、データ形式欄1025、使用文字範囲欄1026、使用辞書欄1027は、その欄に記入された筆記を認識する際に用いられる。
帳票イメージ610は、用紙に印刷される文書情報であり、欄の枠線、欄の名前、アンケート用紙の場合は質問事項等がある。なお、文書情報には情報画像は含まれない。
【0032】
次に、筆記情報格納用電子文書について説明する。以降、単に電子文書と表記した場合、筆記情報格納用電子文書を指す。
筆記情報格納用電子文書は、電子ペン235によって電子ペン用紙310に筆記された内容を、フォーム定義620(帳票イメージ610を含めてもよい)とともにまとめたデータである。以下から構成される。
(1)紙ID:その筆記情報格納用電子文書に対応付けられた電子ペン用紙に割り当てられている紙ID
(2)フォーム定義:その筆記情報格納用電子文書への筆記を処理するために使用するフォーム定義
そして、以下を含めてもよい。
(3)帳票イメージ:その筆記情報格納用電子文書に印刷されている帳票イメージ
具体的には、例えば、フォーム定義・帳票イメージ対応テーブル1100によって構成されている。
図11は、フォーム定義・帳票イメージ対応テーブル1100のデータ構造例を示す説明図である。対応付モジュール140が、フォーム定義・帳票イメージ対応テーブル1100を生成する。フォーム定義・帳票イメージ対応テーブル1100は、フォーム定義ID欄1110、帳票イメージID欄1120を有している。フォーム定義ID欄1110は、フォーム定義IDを記憶している。帳票イメージID欄1120は、フォームイメージ(例えば、
図6に例示の帳票イメージ610)である帳票イメージを一意に識別する情報(帳票イメージID)を記憶している。
フォーム定義・帳票イメージ対応テーブル1100は、帳票イメージIDからフォーム定義IDによって参照可能なフォーム定義テーブル1000(用紙内の欄に関する定義(フォーム定義)を示す情報)を対応付けているテーブルである。
【0033】
次に、本実施の形態で生成されるドットコード画像の元となるコードパターンについて説明する。
図7は、本実施の形態で取り扱う情報画像(コードパターン画像)の例を示す説明図である。
まず、コードパターンを構成するビットパターンについて説明する。
図7(a)に、ビットパターンの配置の一例を示す。
ビットパターンとは、情報埋め込みの最小単位である。ここでは、
図7(a)に示すように、9箇所の中から選択した2箇所にビットを配置する。図では、黒の四角が、ビットが配置された位置を示し、斜線の四角が、ビットが配置されていない位置を示している。9箇所の中から2箇所を選択する組み合わせは、36(=9C2)通りある。したがって、このような配置方法により、36通り(約5.2ビット)の情報を表現することができる。
ただし、紙IDとフォーム定義ID(以下、紙ID等ともいう)そして位置情報は、この36通りのうち32通り(5ビット)を使用して表現するものとする。
ところで、
図7(a)に示した最小の四角は、600dpiにおける2ドット×2ドットの大きさを有している。600dpiにおける1ドットの大きさは0.0423mmなので、この最小の四角の一辺は、84.6μm(=0.0423mm×2)である。コードパターンを構成するドットは、大きくなればなるほど目に付きやすくなるため、できるだけ小さいほうが好ましい。ところが、あまり小さくすると、プリンタで印刷できなくなってしまう。そこで、ドットの大きさとして、50μmより大きく100μmより小さい前記の値を採用している。これにより、プリンタで印刷可能な最適な大きさのドットを形成することができる。つまり、84.6μm×84.6μmが、プリンタで安定的に形成可能な最小の大きさなのである。
なお、ドットをこのような大きさにすることで、1つのビットパターンの一辺は、約0.5(=0.0423×2×6)mmとなる。
また、このようなビットパターンから構成されるコードパターンについて説明する。
図7(b)に、コードパターンの配置の一例を示す。
ここで、
図7(b)に示した最小の四角が、
図7(a)に示したビットパターンに相当する。すなわち、紙ID等を符号化した識別符号は、16(=4×4)個のビットパターンを使用して埋め込まれる。また、X方向の位置情報を符号化したX位置符号と、Y方向の位置情報を符号化したY位置符号とは、それぞれ、4個のビットパターンを使用して埋め込まれる。さらに、左上角部に、コードパターンの位置と回転を検出するための同期符号が、1つのビットパターンを使用して埋め込まれる。
なお、1つのコードパターンの大きさは、ビットパターンの5個分の幅に等しいため、約2.5mmとなる。本実施の形態では、このように生成したコードパターンを画像化したコードパターン画像を、用紙全面に配置する。
【0034】
図8は、本実施の形態における情報の符号化処理例及び情報画像(ドットコード画像)の生成処理例を示す説明図である。
まず、紙ID等の符号化について説明する。
紙ID等の符号化には、ブロック符号化方式のRS(リードソロモン)符号が使用される。
図7で説明した通り、本実施の形態では、5ビットの情報を表現できるビットパターンを用いて情報を埋め込む。したがって、情報の誤りも5ビット単位で発生するため、ブロック符号化方式で符号化効率がよいRS符号を使用している。ただし、符号化方式はRS符号に限定するものでなく、その他の符号化方式、例えば、BCH符号等を使用することもできる。
前述したように、本実施の形態では、5ビットの情報量をもつビットパターンを用いて情報を埋め込む。したがって、RS符号のブロック長を5ビットとする必要がある。そのため、紙ID等を5ビットずつに区切り、ブロック化する。
図8では、紙ID等「0011101101001…」から、第1のブロック「00111」と、第2のブロック「01101」とが切り出されている。
そして、ブロック化された紙ID等に対し、RS符号化処理を行う。
図8では、「blk1」、「blk2」、「blk3」、「blk4」、…というようにブロック化した後、RS符号化が行われる。
ところで、本実施の形態において、紙ID等は、16(=4×4)個のブロックに分けられる。そこで、RS符号における符号ブロック数を16とすることができる。
また、情報ブロック数は、誤りの発生状況に応じて設計することができる。例えば、情報ブロック数を8とすれば、RS(16,8)符号となる。この符号は、符号化された情報に4ブロック(=(16−8)÷2)の誤りが発生しても、それを補正することができる。また、誤りの位置を特定できれば、訂正能力をさらに向上することができる。なお、この場合、情報ブロックに格納される情報量は、40ビット(=5ビット×8ブロック)であるが、このうち32ビットを用いる。
【0035】
次に、位置情報の符号化について説明する。
位置情報の符号化には、擬似乱数系列の一種であるM系列符号が使用される。ここで、M系列とは、K段の線形シフトレジスタで発生できる最大周期の系列であり、2K−1の系列長をもつ。このM系列から取り出した任意の連続したKビットは、同じM系列中の他の位置に現れない性質をもつ。そこで、この性質を利用することにより、位置情報を符号化することができる。
ところで、本実施の形態では、符号化すべき位置情報の長さから、必要なM系列の次数を求め、M系列を生成している。しかしながら、符号化する位置情報の長さが予め分かっている場合は、M系列を毎回生成する必要はない。すなわち、固定のM系列を予め生成しておき、それをメモリ等に格納しておけばよい。
例えば、系列長8191のM系列(K=13)を使用したとする。
この場合、位置情報も5ビット単位で埋め込むため、系列長8191のM系列から5ビットずつ取り出してブロック化する。
図8では、M系列「11010011011010…」が、5ビットずつブロック化されている。
【0036】
このように、本実施の形態では、位置情報と紙ID等とで、異なる符号化方式を用いている。これは、紙ID等の検出能力を、位置情報の検出能力よりも高くなるように設定する必要があるからである。つまり、位置情報は、紙面の位置を取得するための情報なので、ノイズ等によって復号できない部分があっても、その部分が欠損するだけで他の部分には影響しない。これに対し、紙ID等は、復号に失敗すると、筆記情報を反映する対象を検出できなくなるからである。さらに、このような構成とすることによって、位置情報と紙ID等を復号する際の画像読取範囲を最小化できる。すなわち、位置情報にRS符号等の境界を有する符号化方式を使用すると、それを復号する際には境界間の符号を読み取る必要があるため、画像を読み取る範囲は
図7(b)に示した領域の2倍の領域とする必要がある。しかし、M系列を使用することで、
図7(b)に示した領域と同じ大きさの領域を読み取ればよい構成にできる。これは、M系列の性質上、M系列の任意の部分系列から位置情報を復号できるからである。すなわち、紙ID等と位置情報を復号する際には、
図7(b)に示した大きさの領域を読み取る必要があるが、その読み取る位置は、
図7(b)に示した境界と一致させる必要はない。位置情報は、M系列の任意位置の部分系列から復号できる。紙ID等は、同じ情報が用紙全面に配置されるため、
図7(b)に図示した境界から読取位置がずれても、読み取られた情報の断片を再配置することで元の情報を復元することができる。
【0037】
以上のように、紙ID等がブロック分割された後、RS符号により符号化され、また、位置情報がM系列により符号化された後、ブロック分割されると、図示するように、ブロックが合成される。すなわち、これらのブロックは、図示するようなフォーマットで2次元平面に展開される。
図8に示したフォーマットは、
図7(b)に示したフォーマットに対応している。すなわち、黒の四角が同期符号を意味している。
また、横方向に配置された「1」、「2」、「3」、「4」、…がX位置符号を、縦方向に配置された「1」、「2」、「3」、「4」、…がY位置符号を、それぞれ意味している。位置符号は、用紙の位置が異なれば異なる情報が配置されるので、座標位置に対応する数字で示しているのである。一方、斜線部分の四角が識別符号を意味している。識別符号は、用紙の位置が異なっても同じ情報が配置されるので、全て同じマークで示しているのである。
ところで、図からも分かる通り、2つの同期符号の間には、4個のビットパターンがある。したがって、20(=5×4)ビットのM系列の部分系列を配置することができる。20ビットの部分系列から13ビットの部分系列を取り出せば、その13ビットが全体(8191)の中のどの部分の部分系列なのかを特定することができる。このように、20ビットのうち13ビットを位置の特定に使用した場合、取り出した13ビットの誤りの検出又は訂正を、残りの7ビットを使用して行うことができる。すなわち、M系列を生成したときと同じ生成多項式を使用して、20ビットの整合性を確認することで、誤りの検出と訂正が可能となるのである。
その後、各ブロックにおけるビットパターンが、ドット画像を参照することにより画像化される。そして、
図8の最右に示すようなドットで情報を表す出力画像が生成される。
【0038】
図9は、電子文書管理テーブル910のデータ構造例を示す説明図である。
図9は、各用紙に印刷された電子文書を管理するためのテーブルの例を示している。
図示するように、電子文書管理テーブル910は、識別情報欄912、フォーム定義ID欄914、印刷パラメータ欄916、筆記情報欄918を有している。
識別情報欄912内の識別情報は、紙IDである。
フォーム定義ID欄914内には、各用紙に印刷された電子文書が印刷時に使用したフォーム定義のフォーム定義IDが含まれる。
印刷パラメータ欄916内の印刷パラメータは、各用紙に電子文書を印刷した際に設定した印刷パラメータである。図では、印刷パラメータを、「ページ(P),余白(A,B,C,D)」という形式で示している。Pはページ番号であり、A、B、C、Dは、それぞれ、左側、右側、上側、下側の余白(単位はmm)である。なお、ここでは、印刷パラメータとしてページ及び余白を示したが、これに限られるものではない。この他にも、通常の印刷で用いられる種々の印刷パラメータを管理することが可能である。
筆記情報欄918には、各電子文書に重合された筆記情報が含まれる。筆記情報は電子ペン235による一筆ごとのデータとなっており、一筆の筆記情報は、(X座標、Y座標)の列になっている。
【0039】
図9の例に示す電子文書管理テーブル910について、より具体的に説明する。
まず、1行目と2行目は、フォーム定義ID:0010011で示されるフォーム定義をもとに用紙が1部印刷されたことを示している。フォーム定義ID:0010011の文書は2ページからなっており、その際、左右上下の余白が1mmで印刷されている。そして、3行目と4行目は、フォーム定義ID:0010012で示されるフォーム定義をもとに用紙が1部印刷されたことを示している。フォーム定義ID:0010012の文書は2ページからなっており、その際、左右上下の余白が2mmで印刷されている。
【0040】
図12は、フォーム定義生成システムの構成例についての概念的なモジュール構成図である。フォーム定義生成システム210は、フォーム定義生成モジュール1210、フォーム定義識別情報生成モジュール1220を有している。フォーム定義生成モジュール1210は、
図6(b)に例示のフォーム定義620を生成する。例えば、操作者のキーボード等に対する操作に基づいてフォーム定義620を生成する。具体的には、
図10に例示のフォーム定義テーブル1000の欄No.欄1020群を生成する。なお、
図6(a)に例示の帳票イメージ610も生成するようにしてもよい。フォーム定義識別情報生成モジュール1220は、フォーム定義生成モジュール1210によって生成されたフォーム定義620を一意に識別できるフォーム定義IDを生成する。フォーム定義識別情報生成モジュール1220の生成したフォーム定義IDはフォーム定義識別情報受付モジュール100に渡され、フォーム定義生成モジュール1210の生成したフォーム定義はフォーム定義受付モジュール110に渡される。
【0041】
図13は、フォーム定義生成システム210による処理例を示すフローチャートである。
ステップS1302では、フォーム定義識別情報生成モジュール1220が、フォーム定義と、フォーム定義に割り当てるフォーム定義IDの数を受け付ける。なお、このフォーム定義IDの数は、管理者等の操作者によるキーボード等の操作によって受け付けられるものであってもよいし、予め定められた個数を受け付けるようにしてもよい。また、操作者は、フォーム定義IDの個数を意識している必要はなく、フォーム定義識別情報生成モジュール1220がフォーム定義生成モジュール1210によって生成されたフォーム定義の個数を計数してもよい。
ステップS1304では、フォーム定義識別情報生成モジュール1220が、割り当てるに足るサイズのフォーム定義ID空間が存在するか否かを判断し、存在する場合はステップS1306へ進み、それ以外の場合は処理を終了する(ステップS1398)。
ステップS1306では、フォーム定義生成モジュール1210が、フォーム定義を生成する。
ステップS1308では、フォーム定義生成モジュール1210とフォーム定義識別情報生成モジュール1220が、フォーム定義とフォーム定義IDを電子ペン用紙印刷システム220へ送信する。
【0042】
図14は、電子ペン用紙印刷システム220の構成例についての概念的なモジュール構成図である。
電子ペン用紙印刷システム220は、印刷指示受付モジュール1410、印刷情報生成モジュール1420、フォーム定義管理モジュール1430、紙ID管理モジュール1440、フォーム定義登録モジュール1450を有しており、印刷装置225と接続されている。
印刷指示受付モジュール1410は、フォーム定義管理モジュール1430に管理されているフォーム定義のうち、電子ペン用紙として印刷するフォーム定義を指定し、印刷部数の指示を受け付ける。この指示は、操作者のキーボード等による操作によって行われてもよいし、予め定められた指示であってもよい。
【0043】
印刷情報生成モジュール1420は、紙に印刷するための紙ID等と位置情報を示す画像である情報画像を生成する。そして、生成した情報画像を文書情報に重ね合わせて、印刷用の画像を生成する。
具体的には、印刷情報生成モジュール1420は、印刷指示受付モジュール1410によって受け付けられた指示に基づいて、印刷情報を作成する。印刷情報は、印刷指示受付モジュール1410から指定されたフォーム定義に含まれるフォーム定義のイメージ情報に、同フォーム定義に割り当てられた紙ID群のうちで未使用なものから構成されたドットコード画像を重畳したものである。印刷情報の生成時に使用された紙IDの情報は、使用済みであることを示すフラグ等を付す。割り当てる紙IDは、使用された紙IDの情報の管理を容易にするため、昇順、又は、降順に割り当てていくのが望ましい。
印刷装置225は、印刷情報生成モジュール1420によって生成された画像を用紙に印刷する。
【0044】
フォーム定義管理モジュール1430には、複数のフォーム定義が格納されている。そして、フォーム定義が新たに生成されたことにより、フォーム定義ID空間のうちのどの部分が消費されたかも合わせて管理している。
紙ID管理モジュール1440には、紙ID空間のうちのどの部分が印刷により消費されたかを管理している。
フォーム定義登録モジュール1450は、新たなフォーム定義を、フォーム定義管理モジュール1430に登録する。
【0045】
図15は、電子ペン用紙印刷システム220による処理例を示すフローチャートである。
ステップS1502では、印刷指示受付モジュール1410は、フォーム定義、フォーム定義ID及び印刷部数の指示を受け付ける。
ステップS1504では、印刷情報生成モジュール1420は、未使用の紙IDが紙ID空間の中に残っているか否かを判断し、残っている場合はステップS1506へ進み、それ以外の場合は処理を終了する(ステップS1598)。
ステップS1506では、印刷情報生成モジュール1420は、印刷部数分の処理が終了していないか否かを判断し、終了していない場合はステップS1508へ進み、それ以外の場合はステップS1512へ進む。
ステップS1508では、印刷情報生成モジュール1420は、イメージ情報に指定されたフォーム定義に割り当てられている紙ID群の中で未使用の紙IDを割り当て、座標、紙ID、フォーム定義IDから生成したドットコード画像を、イメージ情報に重畳して、印刷情報を作成する。
ステップS1510では、印刷情報生成モジュール1420は、印刷装置225に印刷情報を送付する。印刷装置225は、この印刷情報を用紙に印刷する。
ステップS1512では、フォーム定義登録モジュール1450は、紙IDの使用状況を登録する。つまり、ステップS1508で利用された紙IDを、今後使用できないようにフラグを立てる。
【0046】
図16は、本実施の形態の構成例についての概念的なモジュール構成図であり、筆記情報処理システム230内のモジュール構成の例を示している。つまり、印刷装置225によって印刷された用紙に対して電子ペン235によって筆記が行われ、その筆記に関する筆記情報を受け取って、処理を行うものである。
筆記情報受付モジュール1600、判断(A)モジュール1610、文書記憶モジュール1615、判断(B)モジュール1620、筆記情報記憶モジュール1622、定義情報記憶モジュール1624、定義情報取出モジュール1630、文書生成モジュール1640、重合モジュール1650、出力モジュール1660を有している。
【0047】
筆記情報受付モジュール1600は、判断(A)モジュール1610と接続されている。筆記情報受付モジュール1600は、文書情報が印刷された用紙に対する筆記と、その用紙を識別する情報である用紙識別情報(紙ID)と、その用紙内の欄に関する定義であるフォーム定義を識別するフォーム定義識別情報(フォーム定義ID)を筆記情報として受け付ける。具体的には、電子ペン235によって読み取られた画像から復号した情報を受け付ける。
【0048】
判断(A)モジュール1610は、筆記情報受付モジュール1600、文書記憶モジュール1615、判断(B)モジュール1620と接続されている。判断(A)モジュール1610は、筆記情報受付モジュール1600によって受け付けられた筆記情報内の用紙識別情報に対応する文書を取り出せるか否かを判断する。なお、用紙識別情報に対応する文書を取り出せると判断した場合は、重合モジュール1650へ処理を移し、前述したように筆記情報を電子文書に重ね合わせる処理を行う。
文書記憶モジュール1615は、判断(A)モジュール1610、重合モジュール1650と接続されている。文書記憶モジュール1615は、用紙識別情報と電子文書の対応を記憶している。具体的には、
図9に例示の電子文書管理テーブル910を記憶している。
【0049】
判断(B)モジュール1620は、判断(A)モジュール1610、筆記情報記憶モジュール1622、定義情報記憶モジュール1624、定義情報取出モジュール1630と接続されている。判断(B)モジュール1620は、判断(A)モジュール1610によって取り出せないと判断した場合は、定義情報記憶モジュール1624から、フォーム定義識別情報に対応するフォーム定義を取り出せるか否かを判断する。フォーム定義生成システム210によって生成されたフォーム定義識別情報であるか否かを判断するものである。
【0050】
また、判断(B)モジュール1620は、取り出せないと判断した場合は、筆記情報受付モジュール1600によって受け付けられた筆記情報を筆記情報記憶モジュール1622に記憶させるように制御するようにしてもよい。筆記情報処理システム230による処理を行う時点では、筆記情報内の用紙識別情報に該当するものが定義情報記憶モジュール1624内に記憶されていない場合に、その筆記情報が記憶される。例えば、
図11に例示のフォーム定義・帳票イメージ対応テーブル1100、
図10に例示のフォーム定義テーブル1000が未だ生成されていない場合、又はフォーム定義・帳票イメージ対応テーブル1100、フォーム定義テーブル1000は生成されているが、定義情報記憶モジュール1624には未だ記憶されていない場合がある。
そして、判断(B)モジュール1620は、定義情報記憶モジュール1624にフォーム定義識別情報とフォーム定義の新たな組み合わせが記憶された場合に、筆記情報記憶モジュール1622に記憶された筆記情報内のフォーム定義識別情報と対応付けられているフォーム定義を、定義情報記憶モジュール1624から取り出せるか否かを判断するようにしてもよい。例えば、既に生成されていたフォーム定義・帳票イメージ対応テーブル1100、フォーム定義テーブル1000が、定義情報記憶モジュール1624に記憶された場合、又はフォーム定義・帳票イメージ対応テーブル1100、フォーム定義テーブル1000が生成されて、定義情報記憶モジュール1624に記憶された場合に対応するものである。
そして、筆記情報記憶モジュール1622から取り出した筆記情報に対して、筆記情報受付モジュール1600が受け付けた筆記情報と同等に処理を行えばよい。
【0051】
定義情報記憶モジュール1624は、判断(B)モジュール1620、定義情報取出モジュール1630と接続されている。定義情報記憶モジュール1624は、フォーム定義識別情報とフォーム定義を対応付けて記憶している。具体的には、
図11に例示のフォーム定義・帳票イメージ対応テーブル1100、
図10に例示のフォーム定義テーブル1000を記憶している。
筆記情報記憶モジュール1622は、判断(B)モジュール1620と接続されている。筆記情報記憶モジュール1622は、判断(B)モジュール1620によって取り出せないと判断した場合の筆記情報を記憶する。
【0052】
定義情報取出モジュール1630は、判断(B)モジュール1620、定義情報記憶モジュール1624、文書生成モジュール1640と接続されている。定義情報取出モジュール1630は、判断(B)モジュール1620によって取り出せると判断した場合は、定義情報記憶モジュール1624から、フォーム定義識別情報に対応するフォーム定義を取り出す。
文書生成モジュール1640は、定義情報取出モジュール1630、重合モジュール1650と接続されている。文書生成モジュール1640は、定義情報取出モジュール1630によって取り出されたフォーム定義に基づいて、文書を生成する。フォーム定義620だけでなく、帳票イメージ610を用いて文書を生成してもよい。
重合モジュール1650は、文書生成モジュール1640、出力モジュール1660、文書記憶モジュール1615と接続されている。重合モジュール1650は、文書生成モジュール1640によって生成された文書に、筆記情報受付モジュール1600によって受け付けられた筆記情報内の筆記を重ね合わせたのち、文書記憶モジュール1615に登録する。ここでいう重合、あるいは、重ね合わせとは、具体的には、対象となる筆記を、電子文書管理テーブル910の該当する電子文書の筆記情報として追加することを指す。
【0053】
出力モジュール1660は、重合モジュール1650と接続されている。出力モジュール1660は、重合モジュール1650によって生成された文書(筆記が追加された文書)を出力する。文書を出力するとは、例えば、プリンタ等の印刷装置で印刷すること、ディスプレイ等の表示装置に表示すること、ファックス等の画像送信装置で画像を送信すること、画像データベース等の画像記憶装置へ画像を書き込むこと、他の情報処理装置(例えば、筆記情報を解析する情報処理装置)へ渡すこと等が含まれる。
【0054】
図17は、筆記情報処理システム230の構成例についての概念的なモジュール構成図である。
筆記情報処理システム230は、筆記情報受付モジュール1710、筆記情報処理モジュール1720、電子文書管理モジュール1730、電子文書表示モジュール1740、電子文書生成モジュール1750、フォーム定義登録モジュール1760、フォーム定義管理モジュール1770を有している。筆記情報受付モジュール1710は、前述の筆記情報受付モジュール1600に該当する。筆記情報処理モジュール1720は、前述の判断(A)モジュール1610、判断(B)モジュール1620、重合モジュール1650に該当する。電子文書管理モジュール1730は、前述の文書記憶モジュール1615に該当する。電子文書表示モジュール1740は、前述の出力モジュール1660に該当する。電子文書生成モジュール1750は、前述の定義情報取出モジュール1630、文書生成モジュール1640に該当する。フォーム定義登録モジュール1760は、フォーム定義管理モジュール1770にフォーム定義IDとフォーム定義の対応を記憶させるものである。フォーム定義管理モジュール1770は、前述の定義情報記憶モジュール1624に該当する。
【0055】
筆記情報処理システム230は、電子ペン235から筆記情報を取り出し、その筆記情報を処理し、管理するシステムである。
筆記情報処理システム230に取り込まれた筆記情報は、筆記がなされた電子ペン用紙に対応する電子文書にマージされ、電子文書管理モジュール1730に格納される。ここで、マージするとは、電子文書に筆記を書き込む(重ね合わせる)ことをいう。つまり、物理的な電子ペン用紙に行われた書き込みが、その電子ペン用紙に対応する電子文書にも行われるようにすることである。具体的には、筆記情報を、電子文書管理テーブル910の該電子文書に該当する部分(筆記情報欄918)に追加する。
他の機能としては、電子文書管理モジュール1730に格納されている電子文書を呼び出してその内容を表示したり、電子文書内の筆記情報を手書き文字認識してテキストデータに変換したり、といったことが可能である。
フォーム定義管理モジュール1770には、複数のフォーム定義が格納されている。
フォーム定義登録モジュール1760は、新たなフォーム定義を、フォーム定義管理モジュール1770に登録する。
【0056】
電子文書管理モジュール1730は、電子文書を管理する。
筆記情報受付モジュール1710は、電子ペンから筆記情報を受け付ける。
筆記情報処理モジュール1720は、筆記情報受付モジュール1710が受け付けた筆記情報を格納すべき電子文書を、電子文書管理モジュール1730から呼び出し、筆記情報を電子文書にマージして、電子文書管理モジュール1730に再度格納する。該当する電子文書が電子文書管理モジュール1730に存在しない場合は、電子文書生成モジュール1750を呼び出して、筆記情報を格納するための電子文書の生成を試みる。
電子文書生成モジュール1750は、筆記情報を格納するための電子文書を生成する。
電子文書表示モジュール1740は、電子文書を電子文書管理モジュール1730から呼び出し、内容を表示する。
【0057】
図18は、筆記情報処理システム230による処理例を示すフローチャートである。
ステップS1802では、筆記情報受付モジュール1600は、未処理の筆記情報が存在するか否かを判断し、存在する場合はステップS1804へ進み、それ以外の場合は処理を終了する(ステップS1899)。
ステップS1804では、筆記情報受付モジュール1600は、筆記情報を一つ取り出す。
ステップS1806では、判断(A)モジュール1610は、前記筆記情報に含まれる紙IDに対応する電子文書が文書記憶モジュール1615に登録済か否かを判断し、登録済である場合はステップS1808へ進み、それ以外の場合はステップS1810へ進む。
ステップS1808では、文書生成モジュール1640は、紙IDに対応する電子文書を文書記憶モジュール1615から取り出す。
【0058】
ステップS1810では、判断(B)モジュール1620は、筆記情報のフォーム定義IDに対応するフォーム定義が定義情報記憶モジュール1624に登録されているか否かを判断し、登録されている場合はステップS1812へ進み、それ以外の場合はステップS1814へ進む。
ステップS1812では、定義情報取出モジュール1630は、定義情報記憶モジュール1624からステップS1810での判断対象となったフォーム定義IDに対応するフォーム定義を取り出し、文書生成モジュール1640は、該フォーム定義をもとに、筆記情報に含まれる紙IDをもつ電子文書を作成する。なお、フォーム定義・帳票イメージ対応テーブル1100の帳票イメージID欄1120を用いて帳票イメージを用いて電子文書を作成してもよい。
ステップS1814では、判断(B)モジュール1620は、電子文書に割り当て不能な筆記情報として筆記情報記憶モジュール1622に蓄積する。フォーム定義が存在しない筆記情報は、割り当て不能な筆記情報として、筆記情報記憶モジュール1622に蓄積しておく。
ステップS1816では、重合モジュール1650は、筆記情報を、電子文書(ステップS1808で取り出した電子文書又はステップS1812で作成した電子文書)にマージし、文書記憶モジュール1615に登録する。
【0059】
図19は、筆記情報処理システム230による処理例を示すフローチャートである。このフローチャートは、新たなフォーム定義が登録された場合、割り当て不能な筆記情報として筆記情報記憶モジュール1622に管理されていた筆記情報が、新たなフォーム定義に対応するか否かを判断し、対応する場合は、新たな電子文書を生成して筆記情報を同文書にマージする処理を示している。
【0060】
ステップS1902では、判断(B)モジュール1620は、定義情報記憶モジュール1624に新たなフォーム定義が登録されたか否かを判断し、登録された場合はステップS1904へ進み、それ以外の場合はステップS1902へ戻る。
ステップS1904では、判断(A)モジュール1610は、割り当て不能な筆記情報が存在するか否かを判断し、存在する場合はステップS1906へ進み、それ以外の場合はステップS1902へ戻る。
ステップS1906では、判断(A)モジュール1610は、割り当て不能な筆記情報を一つ取り出す。
ステップS1908では、判断(A)モジュール1610は、筆記情報の紙IDに対応する電子文書が文書記憶モジュール1615に登録済か否かを判断し、登録済である場合はステップS1910へ進み、それ以外の場合はステップS1912へ進む。
【0061】
ステップS1910では、文書生成モジュール1640は、紙IDに対応する電子文書を文書記憶モジュール1615から取り出す。
ステップS1912では、判断(B)モジュール1620は、筆記情報のフォーム定義IDに対応するフォーム定義が定義情報記憶モジュール1624に登録されているか否かを判断し、登録されている場合はステップS1914へ進み、それ以外の場合はステップS1916へ進む。
ステップS1914では、定義情報取出モジュール1630は、定義情報記憶モジュール1624からフォーム定義を取り出し、文書生成モジュール1640は、該フォーム定義をもとに、筆記情報に含まれる紙IDをもつ電子文書を作成する。なお、フォーム定義・帳票イメージ対応テーブル1100の帳票イメージID欄1120を用いて帳票イメージを用いて電子文書を作成してもよい。
ステップS1916では、判断(B)モジュール1620は、電子文書に割り当て不能な筆記情報として筆記情報記憶モジュール1622に蓄積する。フォーム定義が存在しない筆記情報は、割り当て不能な筆記情報として、筆記情報記憶モジュール1622に蓄積しておく。
ステップS1918では、重合モジュール1650は、筆記情報を、電子文書(ステップS1910で取り出した電子文書又はステップS1914で作成した電子文書)にマージし、文書記憶モジュール1615に登録する。
【0062】
図20を参照して、本実施の形態のフォーム定義生成システム210、電子ペン用紙印刷システム220、筆記情報処理システム230のハードウェア構成例について説明する。
図20に示す構成は、例えばパーソナルコンピュータ(PC)などによって構成されるものであり、スキャナ等のデータ読み取り部2017と、プリンタなどのデータ出力部2018を備えたハードウェア構成例を示している。
【0063】
CPU(Central Processing Unit)2001は、前述の実施の形態において説明した各種のモジュール、すなわち、フォーム定義識別情報受付モジュール100、フォーム定義受付モジュール110、情報画像生成モジュール120、印刷モジュール130、対応付モジュール140、フォーム定義生成モジュール1210、フォーム定義識別情報生成モジュール1220、印刷指示受付モジュール1410、印刷情報生成モジュール1420、フォーム定義登録モジュール1450、筆記情報受付モジュール1600、判断(A)モジュール1610、文書記憶モジュール1615、判断(B)モジュール1620、筆記情報記憶モジュール1622、定義情報記憶モジュール1624、定義情報取出モジュール1630、文書生成モジュール1640、重合モジュール1650、出力モジュール1660、筆記情報受付モジュール1710、筆記情報処理モジュール1720、電子文書表示モジュール1740、電子文書生成モジュール1750、フォーム定義登録モジュール1760等の各モジュールの実行シーケンスを記述したコンピュータ・プログラムにしたがった処理を実行する制御部である。
【0064】
ROM(Read Only Memory)2002は、CPU2001が使用するプログラムや演算パラメータ等を格納する。RAM(Random Access Memory)2003は、CPU2001の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を格納する。これらはCPUバスなどから構成されるホストバス2004により相互に接続されている。
【0065】
ホストバス2004は、ブリッジ2005を介して、PCI(Peripheral Component Interconnect/Interface)バスなどの外部バス2006に接続されている。
【0066】
キーボード2008、マウス等のポインティングデバイス2009は、操作者により操作される入力デバイスである。ディスプレイ2010は、液晶表示装置又はCRT(Cathode Ray Tube)などがあり、各種情報をテキストやイメージ情報として表示する。
【0067】
HDD(Hard Disk Drive)2011は、ハードディスクを内蔵し、ハードディスクを駆動し、CPU2001によって実行するプログラムや情報を記録又は再生させる。ハードディスクには、フォーム定義情報、文書情報、情報画像などが格納される。さらに、その他の各種のデータ処理プログラム等、各種コンピュータ・プログラムが格納される。
【0068】
ドライブ2012は、装着されている磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体2013に記録されているデータ又はプログラムを読み出して、そのデータ又はプログラムを、インタフェース2007、外部バス2006、ブリッジ2005、及びホストバス2004を介して接続されているRAM2003に供給する。リムーバブル記録媒体2013も、ハードディスクと同様のデータ記録領域として利用可能である。
【0069】
接続ポート2014は、外部接続機器2015を接続するポートであり、USB、IEEE1394等の接続部をもつ。接続ポート2014は、インタフェース2007、及び外部バス2006、ブリッジ2005、ホストバス2004等を介してCPU2001等に接続されている。通信部2016は、通信回線に接続され、外部とのデータ通信処理を実行する。データ読み取り部2017は、例えばスキャナであり、ドキュメントの読み取り処理を実行する。データ出力部2018は、例えばプリンタであり、ドキュメントデータの出力処理を実行する。
【0070】
なお、
図20に示す情報処理装置のハードウェア構成は、1つの構成例を示すものであり、本実施の形態は、
図20に示す構成に限らず、本実施の形態において説明したモジュールを実行可能な構成であればよい。例えば、一部のモジュールを専用のハードウェア(例えば特定用途向け集積回路(Application Specific Integrated Circuit:ASIC)等)で構成してもよく、一部のモジュールは外部のシステム内にあり通信回線で接続しているような形態でもよく、さらに
図20に示すシステムが複数互いに通信回線によって接続されていて互いに協調動作するようにしてもよい。また、複写機、ファックス、スキャナ、プリンタ、複合機(スキャナ、プリンタ、複写機、ファックス等のいずれか2つ以上の機能を有している画像処理装置)などに組み込まれていてもよい。
【0071】
なお、説明したプログラムについては、記録媒体に格納して提供してもよく、また、そのプログラムを通信手段によって提供してもよい。その場合、例えば、前記説明したプログラムについて、「プログラムを記録したコンピュータ読み取り可能な記録媒体」の発明として捉えてもよい。
「プログラムを記録したコンピュータ読み取り可能な記録媒体」とは、プログラムのインストール、実行、プログラムの流通などのために用いられる、プログラムが記録されたコンピュータで読み取り可能な記録媒体をいう。
なお、記録媒体としては、例えば、デジタル・バーサタイル・ディスク(DVD)であって、DVDフォーラムで策定された規格である「DVD−R、DVD−RW、DVD−RAM等」、DVD+RWで策定された規格である「DVD+R、DVD+RW等」、コンパクトディスク(CD)であって、読出し専用メモリ(CD−ROM)、CDレコーダブル(CD−R)、CDリライタブル(CD−RW)等、ブルーレイ・ディスク(Blu−ray Disc(登録商標))、光磁気ディスク(MO)、フレキシブルディスク(FD)、磁気テープ、ハードディスク、読出し専用メモリ(ROM)、電気的消去及び書換可能な読出し専用メモリ(EEPROM(登録商標))、フラッシュ・メモリ、ランダム・アクセス・メモリ(RAM)、SD(Secure Digital)メモリーカード等が含まれる。
そして、前記のプログラム又はその一部は、前記記録媒体に記録して保存や流通等させてもよい。また、通信によって、例えば、ローカル・エリア・ネットワーク(LAN)、メトロポリタン・エリア・ネットワーク(MAN)、ワイド・エリア・ネットワーク(WAN)、インターネット、イントラネット、エクストラネット等に用いられる有線ネットワーク、あるいは無線通信ネットワーク、さらにこれらの組み合わせ等の伝送媒体を用いて伝送させてもよく、また、搬送波に乗せて搬送させてもよい。
さらに、前記のプログラムは、他のプログラムの一部分であってもよく、あるいは別個のプログラムと共に記録媒体に記録されていてもよい。また、複数の記録媒体に分割して
記録されていてもよい。また、圧縮や暗号化など、復元可能であればどのような態様で記録されていてもよい。