(57)【要約】【課題】画面上で手書き入力を実行する際の使い勝手を向上させる。【解決手段】電子ボードシステム２０では、表示ユニット３０の描画表示画面３１上で一連の手書き入力操作がなされると、当該一連の手書き入力操作に基づくストロークＳの描画表示画面３１上における座標が取得される（ステップＳ１００）。そして、取得された座標に基づいて描画表示画面３１上で空間的にまとめられている複数のストロークＳが１つのグループとしてグループ化され（ステップＳ１２０）、描画表示画面３１上にストロークＳのグループへの帰属を示すグループ識別表示としてのバブルＢが表示される（ステップＳ１５０）。【選択図】図４
2008015929.tif 000002
【特許請求の範囲】
【請求項１】
画面上での手書き入力操作を受け付けると共に一連の手書き入力操作に基づくストロークを前記画面上に表示させる表示ユニットと、
前記ストロークの前記画面上における座標を取得する座標取得手段と、
前記取得された座標に基づいて前記画面上で空間的にまとめられている複数のストロークを１つのグループとしてグループ化するグループ化手段と、
前記画面上に前記ストロークの前記グループへの帰属を示すグループ識別表示を表示させる表示制御手段と、
前記画面上で前記グループに対する所定の操作がなされたときに、該操作に応じた前記グループに対する処理であるグループ処理を実行するグループ処理手段と、
を備える手書き入力処理装置。
【請求項２】
請求項１に記載の手書き入力処理装置において、
前記グループ化手段は、一対のストローク間の前記画面上における距離を算出する距離算出手段を含み、前記算出された距離が所定の閾値以下であるときに前記一対のストローク同士をグループ化する手書き入力処理装置。
【請求項３】
前記グループ化手段は、グループ化されていない一対のストローク間の距離が第１の閾値以下である場合に該グループ化されていない一対のストローク同士をグループ化すると共に、既にグループ化されている一対のストローク間の距離が前記第１の閾値よりも大きい第２の閾値以下である場合に該グループ化されている一対のストローク同士のグループ化を維持する請求項１または２に記載の手書き入力処理装置。
【請求項４】
請求項１から３の何れかに記載の手書き入力処理装置において、
前記取得された前記ストロークの座標と所定の制約とに基づいて前記グループの前記画面上における範囲であるグループ範囲を設定するグループ範囲設定手段を更に備え、
前記表示制御手段は、前記設定されたグループ範囲を前記グループ識別表示として前記画面上に表示させる手書き入力処理装置。
【請求項５】
請求項４に記載の手書き入力処理装置において、
前記グループ範囲設定手段は、
前記取得された座標に基づいて前記ストロークごとに付与されるポテンシャル場によるポテンシャルを少なくとも空間的にまとめられているストロークに対応した領域について算出するポテンシャル算出手段と、
前記算出されたポテンシャルが所定の閾値以上となる領域を囲む境界を前記グループ範囲として設定する境界設定手段と、
を含む手書き入力処理装置。
【請求項６】
前記グループ化手段は、前記取得された前記ストロークの座標と所定の制約とに基づいて前記グループの前記画面上における範囲であるグループ範囲を設定すると共に、前記ストロークごとに該ストロークが前記グループ範囲内に位置するか否かを判定し、該判定の結果に基づいて前記ストロークのグループ化を実行する請求項１に記載の手書き入力処理装置。
【請求項７】
請求項６に記載の手書き入力処理装置において、
前記グループ化手段は、
前記取得された座標に基づいて前記ストロークごとに付与されるポテンシャル場によるポテンシャルを少なくとも空間的にまとめられているストロークに対応した領域について算出するポテンシャル算出手段と、
前記算出されたポテンシャルが所定の閾値以上となる領域を囲む境界を設定する境界設定手段とを含み、
前記境界内に位置するストロークを１つのグループとしてグループ化する手書き入力処理装置。
【請求項８】
前記表示制御手段は、前記設定された境界を前記グループ識別表示として前記画面上に表示させる請求項７に記載の手書き入力処理装置。
【請求項９】
前記ポテンシャル場は、前記ストロークを構成する各点から該ストロークの接線方向かつ外方に離れるほどポテンシャルを小さく規定する濃度関数として定められている請求項５，７および８の何れかに記載の手書き入力処理装置。
【請求項１０】
前記ポテンシャル算出手段は、前記画面に対して設定された複数のグリッドの少なくとも空間的にまとめられているストロークに対応したグリッドごとに前記ポテンシャルを算出する請求項５，７，８および９の何れかに記載の手書き入力処理装置。
【請求項１１】
前記グループ処理手段は、前記画面上で前記グループを分断するストロークである分断ストロークの入力操作がなされたときに、前記入力された分断ストロークに基づいて前記グループを新たな複数のグループに分割する請求項１から１０の何れかに記載の手書き入力処理装置。
【請求項１２】
前記グループ処理手段は、前記グループに帰属するストロークのうち、前記分断ストロークよりも一側に位置するストロークを新たな１つのグループとしてグループ化し、前記分断ストロークよりも他側に位置するストロークを新たな１つのグループとしてグループ化する請求項１１に記載の手書き入力処理装置。
【請求項１３】
請求項１１または１２に記載の手書き入力処理装置において、
前記取得された座標に基づいて前記ストロークごとに付与されるポテンシャル場によるポテンシャルを少なくとも空間的にまとめられているストロークに対応した領域について算出するポテンシャル算出手段と、
前記算出されたポテンシャルが所定の閾値以上となる領域を囲む境界を設定する境界設定手段とを更に備え、
前記グループ処理手段は、前記境界と前記分断ストロークとに基づいて形成される２つのループごとに、該ループ内のストロークを１つのグループとしてグループ化する手書き入力処理装置。
【請求項１４】
前記グループ化手段は、前記画面上における前記ストロークの位置関係が変更されたときに前記ストロークのグループ化を実行する請求項１から１３の何れかに記載の手書き入力処理装置。
【請求項１５】
前記グループ化手段によるグループ化と前記表示制御手段による表示処理と前記グループ処理手段によるグループ処理とが有効とされるグループモードの選択および該選択の解除を可能とするグループモード設定手段を更に備える請求項１から１４の何れかに記載の手書き入力処理装置。
【請求項１６】
前記グループに帰属する何れかのストロークに対する所定の操作がなされたときに、該操作に応じた前記何れかのストロークに対する処理である個別処理を実行する個別処理手段を更に備える請求項１から１５の何れかに記載の手書き入力処理装置。
【請求項１７】
請求項１から１６の何れかに記載の手書き入力処理装置において、
前記表示ユニットは、所定のオブジェクト入力操作に基づくオブジェクトを前記画面上に表示可能であると共に、前記座標取得手段は、前記オブジェクトの前記画面上における座標を取得可能であり、
前記グループ化手段は、前記取得された座標に基づいて前記画面上で空間的にまとめられているストロークおよびオブジェクトを１つのグループとしてグループ化する手書き入力処理装置。
【請求項１８】
前記表示ユニットとして所定の入力装置により指定された前記画面上の絶対座標を検出可能な電子ボードを備える電子ボードシステムとして構成された請求項１から１７の何れかに記載の手書き入力処理装置。
【請求項１９】
前記表示ユニットとして所定の入力装置により指定された前記画面上の絶対座標を検出可能なタブレットを備えるタブレット型コンピュータとして構成された請求項１から１７の何れかに記載の手書き入力処理装置。
【請求項２０】
画面上での手書き入力操作を受け付けると共に一連の手書き入力操作に基づくストロークを前記画面上に表示させる表示ユニットを用いた手書き入力処理方法であって、
（ａ）前記ストロークの前記画面上における座標を取得するステップと、
（ｂ）ステップ（ａ）で取得された座標に基づいて前記画面上で空間的にまとめられている複数のストロークを１つのグループとしてグループ化するステップと、
（ｃ）前記画面上に前記ストロークの前記グループへの帰属を示すグループ識別表示を表示させるステップと、
（ｄ）前記画面上で前記グループに対する所定の操作がなされたときに、該操作に応じた前記グループに対する処理であるグループ処理を実行するステップと、
を含む手書き入力処理方法。
【請求項２１】
画面上での手書き入力操作を受け付けると共に一連の手書き入力操作に基づくストロークを前記画面上に表示させる表示ユニットと接続されるか、あるいは当該表示ユニットを含むコンピュータを手書き入力処理装置として機能させる手書き入力処理用プログラムであって、
前記ストロークの前記画面上における座標を取得する座標取得モジュールと、
前記取得された座標に基づいて前記画面上で空間的にまとめられている複数のストロークを１つのグループとしてグループ化するグループ化モジュールと、
前記画面上に前記ストロークの前記グループへの帰属を示すグループ識別表示を表示させる表示制御モジュールと、
前記画面上で前記グループに対する所定の操作がなされたときに、該操作に応じた前記グループに対する処理であるグループ処理を実行するグループ処理モジュールと、
を備える手書き入力処理用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、手書き入力処理装置、手書き入力処理方法、および手書き入力処理用プログラムに関する。
【背景技術】
【０００２】
従来から、例えば電子ホワイトボードとして構成された手書き入力処理装置として、入力ペンを介して画面（ボード）上でストロークを入力することにより、当該画面上に任意の文字や線図等を表示させることができるものが知られている（例えば、特許文献１参照。）。特許文献１に記載の装置では、ユーザによるストロークの入力が終わると、画面上に入力されたストロークを囲むセグメントが表示され、このセグメント単位でストロークを処理することが可能となる。例えば、あるセグメント内に新たなストロークが描かれると、当該新たなストロークが当該セグメント内に組み入れられる。また、画面上に２つのセグメントが存在している場合には、これら２つのセグメントを結ぶストロークを入力することにより、当該２つのセグメントを結合させることもできる。なお、この装置では、セグメント同士の重なり合いが禁止されており、何れかのセグメントを他のセグメントに接近させていくと、当該他のセグメントが画面上で縮小される。
【０００３】
【特許文献１】米国特許第６，４５９，４２２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記特許文献１に開示されたセグメント単位でのストロークの処理は、手書き入力されたストロークを取り扱う上で一つの有用な手法であると考えられる。しかしながら、特許文献1に記載の装置は、例えば２つのセグメントを結合させる場合に、両者を結ぶストロークの入力という特別な操作を要求するものであることから、使い勝手の面で必ずしも満足いくものとはいえない。また、上記特許文献１には、セグメントの設定や表示の仕方、セグメントの結合手法等については何ら具体的に記載されていない。
【０００５】
そこで、本発明による手書き入力処理装置、手書き入力処理方法、および手書き入力処理用プログラムは、画面上で手書き入力を実行する際の使い勝手を向上させることを目的の１つとする。また、本発明による手書き入力処理装置、手書き入力処理方法、および手書き入力処理用プログラムは、画面上で手書き入力を実行する際の使い勝手を向上させるために、画面上で空間的にまとめられている複数のストロークをより適正にグループ化することを目的の１つとする。
【課題を解決するための手段】
【０００６】
本発明による手書き入力処理装置、手書き入力処理方法、および手書き入力処理用プログラムは、上述の目的の少なくとも一部を達成するために以下の手段を採っている。
【０００７】
本発明による手書き入力処理装置は、
画面上での手書き入力操作を受け付けると共に一連の手書き入力操作に基づくストロークを前記画面上に表示させる表示ユニットと、
前記ストロークの前記画面上における座標を取得する座標取得手段と、
前記取得された座標に基づいて前記画面上で空間的にまとめられている複数のストロークを１つのグループとしてグループ化するグループ化手段と、
前記画面上に前記ストロークの前記グループへの帰属を示すグループ識別表示を表示させる表示制御手段と、
前記画面上で前記グループに対する所定の操作がなされたときに、該操作に応じた前記グループに対する処理であるグループ処理を実行するグループ処理手段と、
を備えるものである。
【０００８】
この手書き入力処理装置では、表示ユニットの画面上で一連の手書き入力操作がなされると、当該一連の手書き入力操作に基づくストロークの画面上における座標が取得される。そして、取得された座標に基づいて画面上で互いに近接されたり、重ね合わされたりして空間的にまとめられている複数のストロークが１つのグループとしてグループ化され、画面上にストロークのグループへの帰属を示すグループ識別表示が表示される。そして、画面上で例えば移動操作といったグループに対する所定の操作がなされたときには、該操作に応じたグループに対する処理であるグループ処理が実行される。これにより、この手書き入力処理装置では、画面上でストロークの空間的なまとまりを構築すれば、複数のストロークをグループ化すると共にグループ単位でストロークを処理することが可能となる。従って、この手書き入力処理装置によれば、画面上で手書き入力を実行する際の使い勝手を向上させることができる。
【０００９】
また、前記グループ化手段は、一対のストローク間の前記画面上における距離を算出する距離算出手段を含み、前記算出された距離が所定の閾値以下であるときに前記一対のストローク同士をグループ化するものであってもよい。これにより、画面上で空間的にまとめられている複数のストロークをまとまり具合に応じてより適正にグループ化することが可能となる。
【００１０】
また、前記グループ化手段は、グループ化されていない一対のストローク間の距離が第１の閾値以下である場合に該グループ化されていない一対のストローク同士をグループ化すると共に、既にグループ化されている一対のストローク間の距離が前記第１の閾値よりも大きい第２の閾値以下である場合に該グループ化されている一対のストローク同士のグループ化を維持するものであってもよい。これにより、画面上におけるストロークの位置関係が変更されたときに、それまでにグループ化されていないストローク同士を比較的グループ化し難くすると共に、一旦構築されたグループのグループ化を解除し難くすることが可能となる。従って、意図しないストロークのグループ化やグループ化の解除を抑制しながら、画面上でストローク（グループ）の位置関係を変更可能となるので、画面上で手書き入力を実行する際の使い勝手をより一層向上させることができる。
【００１１】
更に、本発明による手書き入力処理装置は、前記取得された前記ストロークの座標と所定の制約とに基づいて前記グループの前記画面上における範囲であるグループ範囲を設定するグループ範囲設定手段を更に備えてもよく、前記表示制御手段は、前記設定されたグループ範囲を前記グループ識別表示として前記画面上に表示させるものであってもよい。これにより、１つのグループとそれに帰属するストロークとを画面上で容易に識別させることが可能となる。
【００１２】
この場合、前記グループ範囲設定手段は、前記取得された座標に基づいて前記ストロークごとに付与されるポテンシャル場によるポテンシャルを少なくとも空間的にまとめられているストロークに対応した領域について算出するポテンシャル算出手段と、前記算出されたポテンシャルが所定の閾値以上となる領域を囲む境界を前記グループ範囲として設定する境界設定手段とを含むものであってもよい。このように、各ストロークに仮想的なポテンシャル場を付与し、各ストロークのポテンシャル場によるポテンシャルを少なくとも空間的にまとめられているストロークに対応した領域（画面上の領域）について算出した場合、ストロークの密度が高い領域すなわちストロークのまとまりの度合が高い領域ほどポテンシャルの算出値が大きくなる。従って、算出したポテンシャルが所定の閾値以上となる領域を囲む境界をグループ範囲とすれば、ストロークのグループへの帰属を示すグループ識別表示を画面上におけるストロークの空間的なまとまり具合に応じてより適正に設定して画面上に表示させることが可能となる。
【００１３】
また、前記グループ化手段は、前記取得された前記ストロークの座標と所定の制約とに基づいて前記グループの前記画面上における範囲であるグループ範囲を設定すると共に、前記ストロークごとに該ストロークが前記グループ範囲内に位置するか否かを判定し、該判定の結果に基づいて前記ストロークのグループ化を実行するものであってもよい。このようなグループ化手段を用いても、画面上で空間的にまとめられている複数のストロークをまとまり具合に応じてより適正にグループ化することが可能となる。
【００１４】
この場合、前記グループ化手段は、前記取得された座標に基づいて前記ストロークごとに付与されるポテンシャル場によるポテンシャルを少なくとも空間的にまとめられているストロークに対応した領域について算出するポテンシャル算出手段と、前記算出されたポテンシャルが所定の閾値以上となる領域を囲む境界を設定する境界設定手段とを含み、前記境界内に位置するストロークを１つのグループとしてグループ化するものであってもよい。そして、前記表示制御手段は、前記設定された境界を前記グループ識別表示として前記画面上に表示させるものであってもよい。
【００１５】
更に、前記ポテンシャル場は、前記ストロークを構成する各点から該ストロークの接線方向かつ外方に離れるほどポテンシャルを小さく規定する濃度関数として定められていてもよい。このような濃度関数を濃度関数を各ストロークに付与するポテンシャル場として用いれば、いわゆるマーチングスクエア法を利用することにより、画面上におけるストロークの空間的なまとまり具合に応じて、グループ範囲すなわちグループ識別表示としてのとしての境界をより適正に設定することが可能となる。
【００１６】
また、前記ポテンシャル算出手段は、前記画面に対して設定された複数のグリッドの少なくとも空間的にまとめられているストロークに対応したグリッドごとに前記ポテンシャルを算出するものであってもよい。
【００１７】
更に、本発明による手書き入力処理装置において、前記グループ処理手段は、前記画面上で前記グループを分断するストロークである分断ストロークの入力操作がなされたときに、前記入力された分断ストロークに基づいて前記グループを新たな複数のグループに分割するものであってもよい。これにより、画面上におけるストロークの空間的なまとまり具合に応じて構築された１つのグループを再度複数のグループに簡単に分割することが可能となる。また、グループ化を意図されていないストロークを含むグループが構築された場合には、グループ化が意図されたストロークとそうではないストロークとを切り分けるように分断ストロークを入力すれば、本来意図されたグループを簡単に構築することが可能となる。従って、このようなグループ処理手段を備えた手書き入力処理装置では、画面上で手書き入力を実行する際の使い勝手をより一層向上させることができる。
【００１８】
この場合、前記グループ処理手段は、前記グループに帰属するストロークのうち、前記分断ストロークよりも一側に位置するストロークを新たな１つのグループとしてグループ化し、前記分断ストロークよりも他側に位置するストロークを新たな１つのグループとしてグループ化するものであってよい。また、手書き入力処理装置が、前記取得された座標に基づいて前記ストロークごとに付与されるポテンシャル場によるポテンシャルを少なくとも空間的にまとめられているストロークに対応した領域について算出するポテンシャル算出手段と、前記算出されたポテンシャルが所定の閾値以上となる領域を囲む境界を設定する境界設定手段とを更に備える場合、前記グループ処理手段は、前記境界と前記分断ストロークとに基づいて形成される２つのループごとに、該ループ内のストロークを１つのグループとしてグループ化するものであってもよい。
【００１９】
更に、前記グループ化手段は、前記画面上における前記ストロークの位置関係が変更されたときに前記ストロークのグループ化を実行するものであってもよい。この場合には、画面上で何れかのストロークやグループが移動されたり、新たなストロークが作成されたりして画面上におけるストロークの位置関係が変更されると、ストロークのグループ化が実行されることになる。従って、あるストロークあるいはグループ付近に新たなストロークが追加されたり、画面上で何れかのストロークあるいはグループを他のストロークあるいはグループに接近させたりすれば、それらのストローク等を自動的にグループ化することが可能となる。
【００２０】
また、本発明による手書き入力処理装置は、前記グループ化手段によるグループ化と前記表示制御手段による表示処理と前記グループ処理手段によるグループ処理とが有効とされるグループモードの選択および該選択の解除を可能とするグループモード設定手段を更に備えてもよい。これにより、グループモードの任意の選択が可能となり、複数のグループの構築あるいはグループ化の解除等をワンアクションで実行することも可能となる。
【００２１】
更に、本発明による手書き入力処理装置は、前記グループに帰属する何れかのストロークに対する所定の操作がなされたときに、該操作に応じた前記何れかのストロークに対する処理である個別処理を実行する個別処理手段を更に備えてもよい。
【００２２】
また、本発明による手書き入力処理装置において、前記表示ユニットは、所定のオブジェクト入力操作に基づくオブジェクトを前記画面上に表示可能であると共に、前記座標取得手段は、前記オブジェクトの前記画面上における座標を取得可能であってもよく、前記グループ化手段は、前記取得された座標に基づいて前記画面上で空間的にまとめられているストロークおよびオブジェクトを１つのグループとしてグループ化する手書ものであってもよい。
【００２３】
そして、本発明による手書き入力装置は、前記表示ユニットとして所定の入力装置により指定された前記画面上の絶対座標を検出可能な電子ボードを備える電子ボードシステムとして構成されてもよく、前記表示ユニットとして所定の入力装置により指定された前記画面上の絶対座標を検出可能なタブレットを備えるタブレット型コンピュータとして構成されてもよい。すなわち、本発明による手書き入力処理装置は、画面上における文字や線図等の入力表示を可能とする装置として構成されると極めて有用である。
【００２４】
本発明による手書き入力処理方法は、
画面上での手書き入力操作を受け付けると共に一連の手書き入力操作に基づくストロークを前記画面上に表示させる表示ユニットを用いた手書き入力処理方法であって、
（ａ）前記ストロークの前記画面上における座標を取得するステップと、
（ｂ）ステップ（ａ）で取得された座標に基づいて前記画面上で空間的にまとめられている複数のストロークを１つのグループとしてグループ化するステップと、
（ｃ）前記画面上に前記ストロークの前記グループへの帰属を示すグループ識別表示を表示させるステップと、
（ｄ）前記画面上で前記グループに対する所定の操作がなされたときに、該操作に応じた前記グループに対する処理であるグループ処理を実行するステップと、
を含むものである。
【００２５】
この手書き入力処理方法によれば、画面上でストロークの空間的なまとまりを構築すれば、複数のストロークをグループ化すると共にグループ単位でストロークを処理することが可能となるので、画面上で手書き入力を実行する際の使い勝手を向上させることができる。
【００２６】
本発明による手書き入力処理用プログラムは、
画面上での手書き入力操作を受け付けると共に一連の手書き入力操作に基づくストロークを前記画面上に表示させる表示ユニットと接続されるか、あるいは当該表示ユニットを含むコンピュータを手書き入力処理装置として機能させる手書き入力処理用プログラムであって、
前記ストロークの前記画面上における座標を取得する座標取得モジュールと、
前記取得された座標に基づいて前記画面上で空間的にまとめられている複数のストロークを１つのグループとしてグループ化するグループ化モジュールと、
前記画面上に前記ストロークの前記グループへの帰属を示すグループ識別表示を表示させる表示制御モジュールと、
前記画面上で前記グループに対する所定の操作がなされたときに、該操作に応じた前記グループに対する処理であるグループ処理を実行するグループ処理モジュールと、
を備えるものである。
【００２７】
この手書き入力処理用プログラムがインストールされたコンピュータは、画面上での手書き入力操作に基づくストロークを処理する上述の本発明による手書き入力処理装置として機能することから、この手書き入力処理用プログラムを用いれば、画面上で手書き入力を実行する際の使い勝手を向上させることができる。
【発明を実施するための最良の形態】
【００２８】
次に、実施例を参照しながら本発明を実施するための最良の形態について説明する。
【実施例１】
【００２９】
図１は、本発明の第１の実施例に係る手書き入力処理装置としての電子ボードシステム（電子ホワイトボード）２０の概略構成図である。同図に示すように、本実施例の電子ボードシステム２０は、表示ユニット３０と、この表示ユニット３０と接続されるコンピュータ４０とから構成されるものである。描画表示画面３１を有する表示ユニット３０は、描画表示画面３１上での入力ペン（ポインティングデバイス）３５による手書き入力操作を受け付けると共に一連の手書き入力操作に基づくストロークＳを描画表示画面３１上に表示させることが可能なものである。すなわち、表示ユニット３０は、入力ペン３５を用いて指定された描画表示画面３１の絶対座標（Ｘ座標およびＹ座標）を検出可能な感圧式、電磁誘導式、赤外線式、あるいは光学式のセンサユニット（図示省略）を描画表示画面３１の裏側あるいは側方等に有しており、デジタイザ機能をもった電子ボードとして構成されている。なお、このセンサユニットは、予め表示ユニット３０に組み込まれているものに限られず、表示ユニット３０とは別体であって使用時に描画表示画面３１に対して装着されるものであってもよい。また、コンピュータ４０は、図示しないＣＰＵ，ＲＯＭ，ＲＡＭ、グラフィックプロセッサ（ＧＰＵ）、システムバス、各種インターフェース、記憶装置（ハードディスクドライブ）、外部記憶装置等を含む汎用のコンピュータである。そして、このコンピュータ４０には、本発明による手書き入力処理用プログラムがインストールされている。かかる手書き入力処理用プログラムは、描画表示画面３１上で手書き入力を実行する際の使い勝手を向上させるべく、描画表示画面３１での手書き入力操作により入力・表示されたストロークＳのグループ化やグループ単位でのストロークＳの処理を可能とするものである。
【００３０】
コンピュータ４０には、図１に示すように、ＣＰＵやＲＯＭ，ＲＡＭ，ＧＰＵ、各種インターフェース、記憶装置といったハードウエアと、インストールされた手書き入力処理用プログラムとの一方または双方の協働により、座標処理部４１と、グループ化演算部４２と、ポテンシャル算出部４３と、バブル境界設定部４４と、個別処理部４５と、グループ処理部４６と、画像処理部４８と、画像データ記憶部４９とが機能ブロックとして構築されている。座標処理部４１は、表示ユニット３０において検出されたストロークＳの座標（絶対座標）を表示ユニット３０から取得する。また、グループ化演算部４２は、座標処理部４１により取得されたストロークＳの座標に基づく演算処理を実行して描画表示画面３１上で空間的にまとめられているストロークＳをグループ化する。更に、ポテンシャル算出部４３は、描画表示画面３１上における各ストロークＳの座標と各ストロークＳに付与される仮想的なポテンシャル場とに基づくポテンシャルを算出し、バブル境界設定部４４は、ポテンシャル算出部４３により算出されたポテンシャルに基づいてグループ化されたストロークＳ（グループ）の範囲であるグループ範囲としてのバブル境界を設定する。個別処理部４５は、グループ化されているか否かに拘わらず、入力ペン３５を介して何れか１つのストロークＳに対する例えば移動操作や削除操作等が実行された際に、当該操作に応じた処理である個別処理を実行し、グループ処理部４６は、グループ化されたストロークＳに対する特定のグループ処理を実行する。グループ処理にはグループ化されたストロークＳを更に複数のグループに分割するグループ分割処理等が含まれ、グループ処理部４６には、当該グループ分割処理を実行する分割処理部４７等が含まれる。そして、画像処理部４８は、様々なタスクに関連した画像処理を実行し、画像データ記憶部４９は、生成された各種画像データ等を記憶する。
【００３１】
図２は、上述の表示ユニット３０の描画表示画面３１の表示例を示す説明図である。同図に示すように、電子ボードシステム２０では、ユーザが入力ペン３５の先端を描画表示画面３１に接触させると共に例えば入力ペン３５に設けられている図示しない所定のボタンを押しながら所望の軌跡を描く手書き入力操作を実行すると、ストロークＳが順次入力・表示されていき、描画表示画面３１には、ユーザの手書き入力操作に応じて例えば“Animals”，“Rabbit”，“bear”といった単語や、ウサギやクマのイラスト等が表示されることになる。また、本実施例の電子ボードシステム２０では、入力ペン３５の先端を描画表示画面３１に接触させた状態で例えば上記ボタンを２回押すと、描画表示画面３１に、図２に示すようなメニューＭが表示される。メニューＭは、例えばストロークＳの「移動」や「削除」、「アンドゥ」や「リドゥ」、ストロークＳの「色の変更」、といった一般的なメニュー項目に加えて、上述のグループ化演算部４２やグループ処理部４６の機能を有効にするための「グループモード」なるメニュー項目が用意されている。そして、ユーザが入力ペン３５を用いて、図２に示すように「グループモード」を選択（チェック）すると、描画表示画面３１上で互いに近接されたり、重ね合わされたりして空間的にまとめられているストロークＳ同士が所定のグループ化条件の成立に伴ってグループ化され、描画表示画面３１の表示状態が図３に示すような表示状態へと切り替えられる。
【００３２】
グループモードが選択されると、図３に示すように、グループモード選択前と同一の配列（位置関係）を保ったままで各ストロークＳそのまま表示されるが、それに加えて、各ストロークＳの周囲に薄色のバブルＢが表示される。そして、図３からわかるように、描画表示画面３１上でのまとまり具合に応じてグループ化されたストロークＳ（例えば、“Animals”，“bear”といった単語を構成するストロークＳや、ウサギのイラストと“Rabbit”という単語とを構成するストロークＳ、クマのイラストを構成するストロークＳ）の周囲には、グループに帰属する全ストロークＳを取り囲むようにバブルＢが表示される。すなわち、バブルＢは、ストロークＳのグループへの帰属やグループ範囲を示すグループ識別表示として機能する。また、グループモードのもとでは、グループ化されているストロークＳの周囲のバブルＢ上に入力ペン３５の先端を置いた状態で例えば上記ボタンを押せば、グループ化されたストロークＳを掴んで一体的に移動させることができる。更に、グループ化されているストロークＳの周囲のバブルＢ上に入力ペン３５の先端を置いた状態で例えば上記ボタンを２回押すと、図３に示すように、グループメニューＧＭが表示される。グループメニューＧＭは、グループ化されているストロークＳに対する一括的な処理であるグループ処理の選択を可能とするものであり、グループ全体の「切り取り」、グループ全体の「コピー」、グループ全体の「貼り付け」、…、「グループ化解除」、上述のグループ分割処理を実行する際に指定される「グループ分割」といったグループ処理に対応した複数のメニュー項目を含む。このようなグループメニューＧＭの中から所望のグループ処理を選択すれば、上述のグループ処理部４６等によりグループ化されたストロークＳが一括して処理されることになる。もちろん、グループモードのもとでも、グループ化されているか否かに拘わらず、入力ペン３５を介して何れか１つのストロークＳに対する例えば移動操作等が実行された際には、一般的なこの種の装置と同様に個別処理部４５により当該操作に応じた処理が実行される。また、何れか１つのストロークＳ上に入力ペン３５の先端を置いた状態で例えば上記ボタンを２回押すと、当該ストロークＳに対する「移動」、「削除」といった個別処理の選択を可能とする上記メニューＭが表示される。
【００３３】
そして、グループモードのもとでは、描画表示画面３１上での手書き入力操作により新たなストロークＳが入力・表示されたときや、何れかのストロークＳまたは何れかのグループの位置が変更されたときにもストロークＳのグループ化が実行される。すなわち、グループモードのもとでは、描画表示画面３１上で何れか１つのストロークＳまたは何れかのグループを他の何れかのストロークＳまたはグループに近接させれば、それらのストロークＳをグループ化することができる。また、描画表示画面３１上で、あるグループから何れかストロークＳを引き離せば、当該何れかのストロークＳのグループ化を解除することもできる。この際、バブルＢは、移動されるストロークＳ等の位置に応じて変形し、バブルＢの境界は、グループ化やその解除に応じて変化する。従って、バブルＢは、グループ化の可否を視覚的に認識するための手がかりとなる連結領域としての役割をも果たすことになる。
【００３４】
次に、本実施例の電子ボードシステム２０における上述のようなストロークＳのグループ化を実現するための処理であるグループ化表示処理について説明する。また、グループ化表示処理の説明に引き続いて、グループ処理部４６により実行されるグループ処理の代表例としてグループ分割処理について説明する。
【００３５】
〔グループ化表示処理〕
図４は、本実施例の電子ボードシステム２０において実行されるグループ化表示処理の一例を示すフローチャートである。このグループ化表示処理は、メニューＭから「グループモード」が選択されたときに１サイクル実行され、グループモードのもとで新たなストロークＳが入力されたときに手書き入力操作の開始から完了までの間に繰り返し実行され、グループモードのもとで何れかのストロークＳまたはグループを描画表示画面３１上で移動させる移動操作がなされたときに当該移動操作の開始から完了までの間に繰り返し実行されるものである。
【００３６】
図４のグループ化表示処理の開始に際して、コンピュータ４０の座標処理部４１は、表示ユニット３０において検出された全ストロークＳの描画表示画面３１の座標系（例えばピクセル単位の座標系）に基づく座標（１本のストロークＳを構成する各点の絶対座標）を表示ユニット３０から取得する（ステップＳ１００）。座標処理部４１により取得された全ストロークＳの座標はグループ化演算部４２に与えられ、グループ化演算部４２は、描画表示画面３１上に表示されている全ストロークＳにおける一対のストロークＳの組み合わせを抽出した上で、取得した各ストロークＳの座標に基づいて抽出した一対のストロークＳのすべてについて当該一対のストロークＳ間の距離（最短距離）ｄを算出する（ステップＳ１１０）。ここで、かかる一対のストロークＳ間の距離ｄは、対象となる一対のストロークＳの一方を構成する各点と他方を構成する各点との距離の中の最小の値として算出されるものである。そして、グループ化演算部４２は、得られた一対のストロークＳ間における距離ｄに基づいて、描画表示画面３１上で空間的にまとめられているストロークＳを１つのグループとするグループ化を実行する（ステップＳ１２０）。
【００３７】
かかるステップＳ１２０のグループ化処理について図５を参照しながら具体的に説明する。図５のグループ化処理の開始に際して、グループ化演算部４２は、予め定められた最初の一対のストロークＳに対応した距離ｄを取得した上で（ステップＳ２００）、取得した距離ｄに対応する一対のストロークＳ同士が既にグループ化されているか否かを判定する（ステップＳ２１０）。そして、当該一対のストロークＳ同士がグループ化されていない場合には、一対のストロークＳをグループ化する際の判定基準となる閾値ｄｒｅｆを第１の値ｄｒｅｆ１に設定する（ステップＳ２２０）。また、対象となる一対のストロークＳ同士が既にグループ化されている場合には、判定基準としての閾値ｄｒｅｆを第１の値ｄｒｅｆ１よりも大きい第２の値ｄｒｅｆ２に設定する（ステップＳ２３０）。続いて、ステップＳ２００にて取得した距離ｄとステップＳ２２０またはＳ２３０にて設定した閾値ｄｒｅｆとを比較し（ステップＳ２４０）、距離ｄが閾値ｄｒｅｆ以下であれば、対象となる一対のストロークＳ同士をグループ化する（グループ化を維持する）一方（ステップＳ２５０）、距離ｄが閾値ｄｒｅｆを上回っていれば、対象となる一対のストロークＳ同士のグループ化を解除（グループ化されていない状態を維持）する（ステップＳ２６０）。その後、一対のストロークＳのすべてについての処理が完了したか否かを判定し（ステップＳ２７０）、処理が完了していなければ、予め定められた順番に従って残りの一対のストロークＳについてステップＳ２００〜Ｓ２５０またはＳ２６０の処理を繰り返し実行し、ステップＳ２７０にて肯定判断がなされた段階で本処理を終了させる。これにより、ステップＳ１２０のグループ化処理が実行されれば、ステップＳ２４０における判定基準を満たすストロークＳ同士、すなわち描画表示画面３１上で近接されたり重ね合わされたりして空間的にまとめられているストロークＳが順次グループ化されていくことになる。なお、閾値ｄｒｅｆの設定の仕方にもよるが、ステップＳ２４０における判定基準を満たす限り、互いに分離し合っているストロークＳ同士もグループ化されることになる。また、ここでいうグループ化とは、上述のグループメニューＧＭに含まれる「切り取り」、「コピー」、「貼り付け」といったグループ処理に関し、ステップＳ２４０における判定基準を満たすストロークＳ同士を１つのストロークと見なされるように互いに関連付けすることを意味する。
【００３８】
上述のようなグループ化処理の後、グループ化演算部４２により取得された全ストロークＳの座標がポテンシャル算出部４３に与えられ、ポテンシャル算出部４３は、各ストロークＳの座標と各ストロークＳに対して付与される仮想的なポテンシャル場とを用いて、描画表示画面３１に対して設定された複数のポテンシャルグリッドごとに各ストロークＳの座標と各ストロークＳのポテンシャル場とに基づくポテンシャルを算出する（ステップＳ１３０）。ここで、本実施例では、各ストロークＳに付与される仮想的なポテンシャル場として、図６（ａ）および図６（ｂ）に示すような、１本のストロークＳを構成する各点から当該ストロークＳの接線方向かつ外方に離れるほどポテンシャルを小さく規定する濃度関数が用いられている。すなわち、この濃度関数は、１本のストロークＳを構成する何れかの点におけるポテンシャルを最大値Ｐｍａｘとし、その点から当該ストロークＳの接線方向かつ外方に離れるにつれて所定の法則に従ってポテンシャルを小さく規定すると共に上記何れかの点からの距離が値ｒ１となる位置のポテンシャルを値０とするものである。これにより、ストロークＳの始点および終点の周囲には、同心円状のポテンシャル場が仮想的に形成され、１本のストロークＳの周囲には、当該ストロークＳに沿ってそれを取り囲む等ポテンシャル線からなる仮想的なポテンシャル場が形成されることになる。また、複数のポテンシャルグリッドは、例えば所定数のピクセル間隔で等間隔に並設されたものであり、描画表示画面３１の座標系と対応関係を有している。
【００３９】
このように各ストロークＳに仮想的なポテンシャル場を付与し、各ストロークＳを構成する各点の座標とポテンシャル場とに基づくポテンシャルを各ストロークＳに対応したポテンシャルグリッドについて算出した場合、図７からわかるように、ポテンシャル場の重なりにより、ストロークＳの密度が高い領域、すなわち画面上で空間的にまとめられているストロークＳの周辺に対応したポテンシャルグリッドほどポテンシャルが大きくなる。従って、描画表示画面３１上でまとめられているストロークＳは、算出したポテンシャルがある閾値Ｐｒｅｆ以上となるポテンシャルグリッドに基づく領域に含まれることになり、図７に示すように、この領域に対しては、それを囲む閉じた境界であるバブル境界ｂｂを設定することができる。ステップＳ１３０の処理は、このようなバブル境界ｂｂの設定を目的として、各ストロークＳに対応したポテンシャルグリッドごとにポテンシャルを算出するものである。この場合、１つのポテンシャルグリッドにおけるポテンシャルは、当該１つのポテンシャルグリッドと各ストロークＳを構成する各点との距離に基づいて濃度関数としてのポテンシャル場から得られる値を加算することにより求められる。
【００４０】
ポテンシャル算出部４３により算出された各ポテンシャルグリッドのポテンシャルはバブル境界設定部４４に与えられ、バブル境界設定部４４は、ポテンシャル算出部４３からの各ポテンシャルグリッドのポテンシャルに基づいて上述のバブルＢの境界たるバブル境界ｂｂ（図７参照。）を設定する（ステップＳ１４０）。この場合、バブル境界設定部４４は、いわゆるマーチングキューブ法を２次元に応用したマーチングスクエア法を用いて、算出された各ポテンシャルグリッドのポテンシャルと所定の閾値Ｐｒｅｆとの比較を行うことにより、上述のバブルＢの境界たるバブル境界ｂｂを設定する。このように各ポテンシャルグリッドのポテンシャルと閾値Ｐｒｅｆとを比較した場合、何れか１つのポテンシャルグリッドのポテンシャルが閾値Ｐｒｅｆ以上となったのに対して、当該何れか１つのポテンシャルグリッドに隣接するポテンシャルグリッドのポテンシャルが閾値Ｐｒｅｆ未満となった場合には、これら２つのポテンシャルグリッド間には、マーチングキューブ法における等値面に相当する境界が存在していることになる。これを踏まえて、本実施例では、４つのポテンシャルグリッド間におけるポテンシャルの算出値と閾値Ｐｒｅｆとの比較結果に対応した境界を図８（ａ）〜図８（ｇ）に例示するようにパターン化したルックアップテーブルが画像データ記憶部４９に記憶されており（ただし、図８において黒い丸印はポテンシャルが閾値Ｐｒｅｆ以上となるポテンシャルグリッドを示し、白い丸印はポテンシャルが閾値Ｐｒｅｆ未満となるポテンシャルグリッドを示す。）、ステップＳ１４０において、バブル境界設定部４４は、当該ルックアップテーブルを参照しながら各ポテンシャルグリッドのポテンシャル値と所定の閾値Ｐｒｅｆとの比較結果に基づいて描画表示画面３１に表示させるバブルＢのバブル境界ｂｂの座標を設定する。これにより、描画表示画面３１上の全ストロークＳに関して、グループ化されるべきストロークＳの描画表示画面３１上における範囲（グループ範囲）であるバブル境界ｂｂをより高速に設定することが可能となる。こうして描画表示画面３１上のすべてのストロークＳに関するバブル境界ｂｂが設定されると、画像処理部４８は、必要なデータを画像データ記憶部４９から読み出し、ステップＳ１００にて入力された座標に基づいて各ストロークＳを表示させると共に、ステップＳ１４０にて設定されたバブル境界ｂｂの座標に基づいて各ストロークＳに対応したバブルＢを表示させ（ステップＳ１５０）、本処理を一旦終了させる。
【００４１】
このように、本実施例の電子ボードシステム２０では、メニューＭから「グループモード」が選択されると、上述のグループ化表示処理が実行されるので、複数のストロークＳからなるグループの構築あるいはグループ化の解除をワンアクションで実行することが可能となる。また、「グループモード」が選択されている状態で、何れかのストロークＳやグループが描画表示画面３１上で移動されたり、描画表示画面３１上で新たなストロークＳが作成されたりして描画表示画面３１上におけるストロークＳの位置関係が変更されると、ストロークＳの作成開始から完了まで、あるいは移動操作の開始から完了まで上述のグループ化表示処理が実行されるので、それにより、変更後のストロークＳの位置関係に応じたグループを構築することが可能となる。
【００４２】
ここで、図９および図１０を参照しながら、描画表示画面３１の表示状態を例にとって、上述のグループ化表示処理について具体的に説明する。図９は、描画表示画面３１上で手書き入力操作を実行してイラストを描画したときの描画表示画面３１の表示状態を例示する説明図である。所望のイラスト（ここでは、クマの顔）を描画するに際して、描画表示画面３１上で概ね環状の最初のストロークＳ1（顔の輪郭）を手書き入力すると、図９（ａ）に示すように、描画表示画面３１上には、ストロークＳ1と共にそれを囲む概ね環状のバブルＢが表示される（ステップＳ１５０）。続いて描画表示画面３１上で最初のストロークＳ1の近傍もしくはストロークＳ1と接するように２番目のストロークＳ2（向かって左側の耳）を入力すると、ストロークＳ1およびＳ2がグループ化されると共に（ステップＳ１２０，Ｓ２５０）、図９（ｂ）に示すようにストロークＳ1およびＳ2を取り囲むようにバブルＢが表示される（ステップＳ１５０）。同様に、描画表示画面３１上でストロークＳ1の近傍もしくはストロークＳ1と接するように３番目のストロークＳ2（向かって右側の耳）を入力すると、ストロークＳ1，Ｓ2およびＳ3がグループ化されると共に（ステップＳ１２０，Ｓ２５０）、図９（ｃ）に示すようにストロークＳ1，Ｓ2およびＳ3を取り囲むようにバブルＢが表示される（ステップＳ１５０）。そして、最後に、描画表示画面３１上でストロークＳ1の内側にストロークＳ4，Ｓ5およびＳ6（目や口）を入力すると、ストロークＳ1〜Ｓ6がグループ化されると共に（ステップＳ１２０，Ｓ２５０）、図９（ｄ）に示すようにストロークＳ1〜Ｓ6を取り囲むようにバブルＢが表示されることになる（ステップＳ１５０）。
【００４３】
また、図１０（ａ）に示すように、描画表示画面３１上にウサギのイラストを構成する複数のストロークＳからなるグループＳＧと、“Rabbit”という単語を構成する複数のストロークＳからなるグループＳＧとが分離（グループ化されることなく）して表示されている場合に、例えば“Rabbit”という単語のグループＳＧの周囲のバブルＢを入力ペン３５により掴むことにより、当該グループＳＧに帰属するストロークＳを一体的に移動させることができる。そして、描画表示画面３１上で“Rabbit”という単語のグループＳＧをウサギのイラストのグループＳＧに接近させていくと、“Rabbit”という単語のグループＳＧに帰属する何れかのストロークＳと、ウサギのイラストのグループＳＧに帰属する何れかのストロークＳとの距離ｄが閾値ｄｒｅｆ（＝ｄｒｅｆ１）以下となった時点で（ステップＳ１２０，Ｓ２４０）、両グループＳＧが１つのグループとしてグループ化される（ステップＳ１２０，Ｓ２５０）。そして、このようなグループ化がなされたときには、“Rabbit”という単語のグループＳＧに帰属する何れかのストロークＳと、ウサギのイラストのグループＳＧに帰属する何れかのストロークＳとが十分に接近し合っており、ポテンシャル場同士の接合（重なり合い）に起因して、これらのストロークＳはポテンシャルが閾値Ｐｒｅｆ以上となる領域に含まれるようになる。これに伴い、ステップＳ１３０にて算出されたポテンシャルに基づいて、それまで２つのグループＳＧに帰属していたストロークＳを取り囲むバブル境界ｂｂが設定され（ステップＳ１４０）、それまで別々に表示されていた各グループＳＧのバブルＢが、ステップＳ１５０にてあたかも互いに結合されたかのように一体に表示される。そして、“Rabbit”という単語のグループＳＧが描画表示画面３１上で停止すると、図１０（ｂ）に示すように、グループ化されたすべてのストロークＳの位置（座標）に基づくバブルＢが表示される。このように、本実施例の電子ボードシステム２０では、描画表示画面３１上で何れかのグループＳＧ（あるいはストロークＳ）を他のグループＳＧ（あるいはストロークＳ）に接近させれば、それらのストロークＳ（グループＳＧ）を自動的にグループ化すると共にグループ範囲を示すバブルＢを描画表示画面３１上に表示させることが可能となる。
【００４４】
以上説明したように、本実施例の電子ボードシステム２０では、表示ユニット３０の描画表示画面３１上で一連（一画）の手書き入力操作がなされると、当該一連の手書き入力操作に基づくストロークＳの描画表示画面３１上における座標が取得される（ステップＳ１００）。そして、取得された座標に基づいて描画表示画面３１上で空間的にまとめられている複数のストロークＳが１つのグループとしてグループ化され（ステップＳ１２０）、描画表示画面３１上にストロークＳのグループへの帰属を示すグループ識別表示としてのバブルＢが表示される（ステップＳ１５０）。すなわち、本実施例の電子ボードシステム２０では、一対のストロークＳ間の描画表示画面３１上における距離ｄが算出されると共に（ステップＳ１１０）、算出された距離ｄが所定の閾値ｄｒｅｆ（値ｄｒｅｆ１または値ｄｒｅｆ２）以下であるときに一対のストロークＳ同士がグループ化されていく。これにより、電子ボードシステム２０では、描画表示画面３１上でストロークＳを近接させたり、重ね合わせたりしてストロークＳの空間的なまとまりを構築すれば、複数のストロークＳをまとまり具合に応じてより適正にグループ化することが可能となる。また、描画表示画面３１上で例えば移動操作といったストロークＳのグループに対する所定の操作がなされたときには、該操作に応じたグループに対する処理であるグループ処理が実行される。これにより、本実施例の電子ボードシステム２０では、描画表示画面３１上でストロークＳの空間的なまとまりを構築すれば、複数のストロークＳからなるグループ単位でストロークＳを処理することが可能となる。従って、電子ボードシステム２０によれば、描画表示画面３１上で手書き入力を実行する際の使い勝手を向上させることができる。
【００４５】
また、ステップＳ１２０のグループ化処理に際しては、それまでにグループ化されていない一対のストロークＳ間の距離が第１の値ｄｒｅｆ１以下である場合に当該グループ化されていない一対のストロークＳ同士がグループ化され、既にグループ化されている一対のストロークＳ間の距離が第１の値ｄｒｅｆ１よりも大きい第２の値ｄｒｅｆ２以下である場合に当該グループ化されている一対のストロークＳ同士のグループ化が維持されることになる。これにより、描画表示画面３１上におけるストロークの位置関係が変更されたときに、それまでにグループ化されていないストロークＳ同士を比較的グループ化し難くすると共に、一旦構築されたグループのグループ化を解除し難くすることが可能となる。従って、意図しないストロークＳのグループ化やグループ化の解除を抑制しながら、画面上でストロークＳ（グループ）の位置関係を変更可能となるので、描画表示画面３１上で手書き入力を実行する際の使い勝手をより一層向上させることができる。
【００４６】
更に、本実施例の電子ボードシステム２０では、描画表示画面３１上の各ストロークＳの座標と所定の制約としてのポテンシャル算出（ステップＳ１３０）の結果とに基づいて描画表示画面３１上におけるグループの範囲であるバブル境界ｂｂが設定された後（ステップＳ１４０）、設定されたバブル境界ｂｂ（グループ範囲）がグループ識別表示としてストロークＳと共に描画表示画面３１上に表示される（ステップＳ１５０）。このように、各ストロークＳに仮想的なポテンシャル場を付与し、各ストロークＳの座標とポテンシャル場とに基づくポテンシャルを複数のポテンシャルグリッドごとに算出し、算出したポテンシャルが所定の閾値Ｐｒｅｆ以上となる領域を囲むバブル境界ｂｂを設定すれば、グループ範囲としてのバブル境界ｂｂを描画表示画面３１上におけるストロークＳの空間的なまとまり具合に応じてより適正に設定して描画表示画面３１上に表示させることができる。これにより、描画表示画面３１上で１つのグループとそれに帰属するストロークＳとを容易に識別させることが可能となる。そして、このようなポテンシャル算出処理（ステップＳ１３０）およびバブル境界ｂｂの設定（ステップＳ１４０）をグループ化処理（ステップＳ１２０）と分離することにより、演算負荷を軽減することも可能となる。
【００４７】
また、各ストロークＳに付与するポテンシャル場として、ストロークＳを構成する各点から当該ストロークＳの接線方向かつ外方に離れるほどポテンシャルを小さく規定する濃度関数を用いれば、いわゆるマーチングスクエア法を利用することにより、描画表示画面３１上におけるストロークＳの空間的なまとまり具合に応じて、グループ範囲すなわちグループ識別表示としてのバブル境界ｂｂをより適正に設定することが可能となる。なお、本実施例では、描画表示画面３１に対して設定された複数のポテンシャルグリッドのすべてについてポテンシャルを算出しているが、これに限られるものではない。すなわち、演算負荷等を考慮して、各ストロークＳの座標とポテンシャル場の外延とに基づいてポテンシャルを算出するポテンシャルグリッドを選択した上で、選択されたポテンシャルグリッドについてのみポテンシャルを算出してもよい。
【００４８】
更に、グループ識別表示は、必ずしもバブル境界ｂｂに基づくバブルＢである必要はなく、バブルＢの代わりに、ストロークＳのグループへの帰属を示すグループ識別表示としてグループ化されたストロークＳに何らかのマークを表示させてもよく、グループ化されたストロークＳの色を変化させたり、統一したりしてグループ識別表示としてもよい。また、グループモードのもとでも、通常時にはグループ識別表示としてのバブルＢを描画表示画面３１上に表示させず、描画表示画面３１上で入力ペン３５の先端が空間的にまとめられているストロークＳのバブル境界ｂｂの内側に置かれたときに、バブルＢあるいはバブル境界ｂｂを表示させるようにしてもよい。また、本実施例では、ステップＳ１２０のグループ化処理後にポテンシャル算出（ステップＳ１３０）を実行し、ポテンシャル算出の結果に基づいてバブル境界ｂｂを設定しているため（ステップＳ１４０）、場合によっては、ステップＳ１２０にて定められた１つのグループに対して複数のバブル境界ｂｂが設定されてしまうおそれもないとはいえない。従って、１つのグループに対して複数のバブル境界ｂｂが設定された場合には、ステップＳ１４０の処理の後に、各ポテンシャルグリッドのポテンシャルと比較される閾値Ｐｒｅｆの値を小さくするか、あるいは当該１つのグループに帰属するストロークＳのポテンシャル場を強めてバブル境界ｂｂを再設定する後処理を実行してもよい。また、ステップＳ１２０にて定められた１つのグループに対してステップＳ１４０にて複数のバブル境界ｂｂが設定された場合には、ステップＳ１４０の後に、設定されたバブル境界ｂｂの内側に位置するストロークＳを１つのグループとして再グループ化する後処理を実行してもよい。
【００４９】
〔グループ分割処理〕
引き続き、本実施例の電子ボードシステム２０のグループ処理部４６によるグループ処理の一つであるグループ分割処理について説明する。図１１は、主としてグループ処理部４６の分割処理部４７により実行されるグループ分割処理の一例を示すフローチャートである。図１１のグループ分割処理は、メニューＭから「グループモード」が選択されている状態で、図１２（ａ）に示すように、ユーザの手書き入力操作により入力されたストロークＤＳによって描画表示画面３１上の複数のストロークＳを囲むバブルＢすなわち何れかのグループＳＧのバブルＢが分断されたときに開始される。以下、このようにグループＳＧのバブルＢを分断するストロークすなわち何れかのバブルＢＢのバブル境界ｂｂと２箇所で交差するストロークを「分断ストロークＤＳ」という。
【００５０】
図１１のグループ分割処理の開始に際して、分割処理部４７は、まず、分断ストロークＤＳにより分断されたバブルＢにより囲まれている全ストロークＳの座標（各点の絶対座標）と、当該バブルのバブル境界ｂｂの座標（各点の絶対座標）と、入力された分断ストロークＤＳの座標（各点の絶対座標）とを取得する（ステップＳ３００）。次いで、取得したバブル境界ｂｂの座標と分断ストロークＤＳの座標とに基づいて図１２（ｂ）に示すような２つの閉じたループＬ１，Ｌ２を作成する（Ｓ３１０）。このような２つのループＬ１およびＬ２を作成したならば、ステップＳ３００にて取得した各ストロークＳの座標等を用いて、ストロークＳごとにループＬ１，Ｌ２のうちの何れの内側に位置するか否かを判定し、判定結果に基づいてストロークＳのグループ化を実行する（ステップＳ３２０）。ここでいうグループ化は、１つのループＬ１またはＬ２内に位置するすべてのストロークＳを上述のグループメニューＧＭに含まれる「切り取り」、「コピー」、「貼り付け」といったグループ処理に関して１つのストロークと見なされるように互いに関連付けすることを意味する。
【００５１】
このようにして分断ストロークＤＳにより分断されたバブルＢにより囲まれているストロークＳの再グループ化が実行されると、続いて、上述のポテンシャル算出部４３により、ステップＳ３１０にて設定されたループＬ１を必要十分に囲む描画表示画面３１上の領域に対応した複数のポテンシャルグリッドと、ステップＳ３１０にて設定されたループＬ２を必要十分に囲む描画表示画面３１上の領域に対応した複数のポテンシャルグリッドとのポテンシャルが算出される（ステップＳ３３０）。この場合、ループＬ１に対応した複数のポテンシャルグリッドについては、ループＬ１内に位置するストロークＳのみのポテンシャル場によるポテンシャルが算出され、ループＬ２に対応した複数のポテンシャルグリッドについては、ループＬ２内に位置するストロークＳのみのポテンシャル場によるポテンシャルが算出される。なお、ループＬ１，Ｌ２を必要十分に囲む領域に対応したポテンシャルグリッドは、各ストロークＳの座標とポテンシャル場の外延とに基づいて選択され得る。こうしてステップＳ３３０にて算出された各ポテンシャルグリッドのポテンシャルは、バブル境界設定部４４に与えられ、バブル境界設定部４４は、上述のマーチングスクエア法を用いて各ポテンシャルグリッドのポテンシャルと所定の閾値Ｐｒｅｆとの比較を行うことにより、ループＬ１内に位置するストロークＳに対応したバブル境界ｂｂと、ループＬ２内に位置するストロークＳに対応したバブル境界ｂｂとの座標を設定する（ステップＳ３４０）。そして、画像処理部４８は、必要なデータを画像データ記憶部４９から読み出し、図１２（ｃ）に示すように、ステップＳ３００に取得された座標に基づいて各ストロークＳを表示させると共にステップＳ３４０にて設定されたバブル境界ｂｂの座標に基づいて各ループＬ１，Ｌ２に対応したバブルＢを表示させ（ステップＳ３５０）、本処理を終了させる。
【００５２】
以上説明したように、本実施例の電子ボードシステム２０では、描画表示画面３１上で複数のストロークＳを取り囲むバブルＢすなわちグループＳＧを分断する分断ストロークＤＳが入力されたときに、当該バブルＢのバブル境界ｂｂと分断ストロークＤＳとに基づいて形成される２つのループＬ１，Ｌ２ごとに、ループＬ１，Ｌ２内のストロークＳが１つのグループとしてグループ化される。すなわち、電子ボードシステム２０では、何れかのバブルＢを分断する分断ストロークＤＳが入力されると、図１２（ｂ）および（ｃ）からわかるように、当該分断ストロークＤＳよりも一側（図中左側）に位置するストロークＳが新たな１つのグループとしてグループ化され、入力された分断ストロークＤＳよりも他側（図中右側）に位置するストロークＳが新たな１つのグループとしてグループ化される。これにより、描画表示画面３１上におけるストロークＳの空間的なまとまり具合に応じて構築された１つのグループＳＧを再度複数のグループＳＧに簡単に分割することが可能となる。また、グループ化を意図されていないストロークＳを含むグループＳＧが構築された場合には、グループ化が意図されたストロークＳとそうではないストロークＳとを切り分けるようにストロークＳを入力すれば、本来意図されたグループを簡単に構築することができる。従って、このようなグループ分割処理が実行され得る電子ボードシステム２０では、描画表示画面３１上で手書き入力を実行する際の使い勝手をより一層向上させることが可能となる。
【００５３】
なお、分断ストロークＤＳの入力の仕方によっては、バブル境界ｂｂと分断ストロークＤＳとにより形成される２つのループＬ１，Ｌ２の何れかまたは双方に１本のストロークＳのみが含まれることもあり得るので、ここでいう「新たな複数のグループ」は、単一のストロークＳのみが帰属するものを含むことになる。そして、描画表示画面３１上におけるストロークＳの空間的なまとまり具合によっては、図１２（ｃ）において二点鎖線で示すように、ステップＳ３４０にて設定されるループＬ１に対応したバブル境界ｂｂとループＬ２に対応したバブル境界ｂｂとが交差し、それにより描画表示画面３１上でループＬ１に対応したバブルＢとループＬ２に対応したバブルＢとが重なり合うこともあり得る。ただし、このようにバブル境界ｂｂ同士が重なり合っても、その後、図１２（ｄ）に示すように、ユーザにより双方のグループＳＧ（バブルＢ）は描画表示画面３１上で互いに引き離されると想定されることから実用上何ら不都合はないと考えられる。
【００５４】
また、このような分断ストロークＤＳに基づくグループ分割処理に関連した他のグループ処理の一例としては、次のようなグループの一括削除が挙げられる。すなわち、複数のストロークＳを取り囲むバブルＢ（グループ）を完全に分断しないストロークＳ、つまり複数のストロークＳを取り囲むバブルＢのバブル境界ｂｂと１点（１箇所）のみで交差するストロークＳが入力された場合には、当該バブルＢに対応したグループを一括して削除するようにしてもよい。
【実施例２】
【００５５】
次に、本発明の第２の実施例に係る手書き入力処理装置としての電子ボードシステム２０Ｂについて説明する。第２の実施例に係る電子ボードシステム２０Ｂは、第１の実施例に係る電子ボードシステム２０と一部を除いて基本的に同様のハード構成を有するものである。従って、以下、重複した説明を回避するために、第２の実施例の電子ボードシステム２０Ｂについては、第１の実施例の電子ボードシステム２０と同一の符号を用いるものとし、詳細な説明を省略する。第２の実施例に係る電子ボードシステム２０Ｂでは、図４のグループ化表示処理に代えて、図１３に例示されるグループ化表示処理が実行される。このグループ化表示処理も、メニューＭから「グループモード」が選択されたときに１サイクル実行され、グループモードのもとで新たなストロークＳが入力されたときに手書き入力操作の開始から完了までの間に繰り返し実行され、グループモードのもとで何れかのストロークＳまたはグループを描画表示画面３１上で移動させる移動操作がなされたときに当該移動操作の開始から完了までの間に繰り返し実行されるものである。
【００５６】
図１３のグループ化表示処理の開始に際して、コンピュータ４０の座標処理部４１は、表示ユニット３０において検出された全ストロークＳの座標（各点の絶対座標）を表示ユニット３０から取得する（ステップＳ４００）。座標処理部４１により取得された全ストロークＳの座標はポテンシャル算出部４３に与えられ、ポテンシャル算出部４３は、各ストロークＳの座標と各ストロークＳに対して付与される仮想的なポテンシャル場とを用いて、描画表示画面３１に対して設定された複数のポテンシャルグリッドごとに各ストロークＳの座標と各ストロークＳのポテンシャル場とに基づくポテンシャルを算出する（ステップＳ４１０）。各ストロークＳに付与される仮想的なポテンシャル場は、図４のグループ化表示処理の場合と同様に、１本のストロークＳを構成する各点から当該ストロークＳの接線方向かつ外方に離れるほどポテンシャルを小さく規定する濃度関数である。そして、ステップＳ４１０において、１つのポテンシャルグリッドにおけるポテンシャルは、当該１つのポテンシャルグリッドと各ストロークＳを構成する各点との距離に基づいて濃度関数としてのポテンシャル場から得られる値を加算することにより求められる。
【００５７】
ポテンシャル算出部４３により算出された各ポテンシャルグリッドのポテンシャルはバブル境界設定部４４に与えられる。バブル境界設定部４４は、いわゆるマーチングキューブ法を２次元に応用したマーチングスクエア法を用いて、算出された各ポテンシャルグリッドのポテンシャルと所定の閾値Ｐｒｅｆとの比較を行いながら、図８に例示したようなルックアップテーブルを用いて、上述のバブルＢの境界たるバブル境界ｂｂの座標を設定する。こうして描画表示画面３１上のすべてのストロークＳに関するバブル境界ｂｂが設定されると、グループ化演算部４２は、ステップＳ４００にて取得した各ストロークＳの座標とステップＳ４２０にて設定されたすべてのバブル境界ｂｂの座標とに基づいて、ストロークＳごとに何れかのグループ範囲としてのバブル境界ｂｂ内に位置するか否かを判定し、判定結果に基づいてストロークＳのグループ化を実行する（ステップＳ４３０）。ここでいうグループ化も、１つのバブル境界ｂｂ内に位置するすべてのストロークＳを上述のグループメニューＧＭに含まれる「切り取り」、「コピー」、「貼り付け」といったグループ処理に関して１つのストロークと見なされるように互いに関連付けすることを意味する。そして、ストロークＳのグループ化が完了すると、画像処理部４８は、必要なデータを画像データ記憶部４９から読み出し、ステップＳ４００にて入力された座標に基づいて各ストロークＳを表示させると共にステップＳ４２０にて設定されたバブル境界ｂｂの座標に基づいて各ストロークＳに対応したバブルＢを表示させ（ステップＳ４４０）、本処理を一旦終了させる。
【００５８】
以上説明したように、第２の実施例に係る電子ボードシステム２０Ｂでは、複数のストロークＳの描画表示画面３１上における座標に基づいて当該描画表示画面３１上で空間的にまとめられているストロークＳが１つのグループとしてグループ化され（ステップＳ４３０）、ストロークＳのグループへの帰属を示すグループ識別表示たるバブルＢと共にストロークＳが描画表示画面３１上に表示される（ステップＳ４４０）。すなわち、電子ボードシステム２０Ｂでは、ステップＳ４００にて取得された描画表示画面３１上におけるストロークＳの各々の座標と所定の制約としての上述のポテンシャル算出（ステップＳ４１０）の結果とに基づいて１つのグループとしてグループ化されるべきストロークＳの描画表示画面３１上における範囲（グループ範囲）であるバブル境界ｂｂが設定されると共に（ステップＳ４２０）、ストロークＳごとに該ストロークＳがバブル境界ｂｂ内に位置するか否かが判定され、判定結果に基づいてストロークＳのグループ化が実行される（ステップＳ４３０）。
【００５９】
これにより、電子ボードシステム２０Ｂにおいても、描画表示画面３１上でストロークＳを近接させたり、重ね合わせたりしてストロークＳの空間的なまとまりを構築するだけでストロークＳをグループ化することができる。また、各ストロークＳに仮想的なポテンシャル場を付与し、各ストロークＳの座標とポテンシャル場とに基づくポテンシャルを描画表示画面３１に対して設定された複数のポテンシャルグリッドごとに算出し、算出したポテンシャルが所定の閾値Ｐｒｅｆ以上となる領域を囲むバブル境界ｂｂ内のストロークを１つのグループとすれば、描画表示画面３１上におけるストロークＳの空間的なまとまり具合に応じてより適正にストロークＳのグループ化を実行することができる。更に、本実施例の電子ボードシステム２０Ｂでは、ステップＳ４２０にて設定されるバブル境界ｂｂがグループ識別表示としてストロークＳの周囲に表示されるので、１つのグループとそれに帰属するストロークＳとを描画表示画面３１上で容易に識別させることが可能となる。そして、電子ボードシステム２０Ｂでは、描画表示画面３１上で例えば移動操作といったストロークＳのグループに対する所定の操作がなされたときには、該操作に応じたグループに対する処理であるグループ処理が実行される。これにより、本実施例の電子ボードシステム２０では、描画表示画面３１上でストロークＳの空間的なまとまりを構築すれば、複数のストロークＳからなるグループ単位でストロークＳを処理することが可能となる。従って、電子ボードシステム２０によれば、描画表示画面３１上で手書き入力を実行する際の使い勝手を向上させることができる。
【００６０】
なお、第２の実施例においても、グループ識別表示は、必ずしもバブル境界ｂｂに基づくものである必要はなく、バブルＢの代わりに、ストロークＳのグループへの帰属を示すグループ識別表示としてグループ化されたストロークＳに何らかのマークを表示させてもよく、グループ化されたストロークＳの色を変化させたり、統一したりしてグループ識別表示としてもよい。また、グループモードのもとでも、通常時にはグループ識別表示としてのバブルＢを描画表示画面３１上に表示させず、描画表示画面３１上で入力ペン３５の先端が空間的にまとめられているストロークＳのバブル境界ｂｂの内側に置かれたときに、バブルＢあるいはバブル境界ｂｂを表示させるようにしてもよい。
【００６１】
以上、実施例を用いて本発明の実施の形態について説明したが、本発明は上記実施例に何ら限定されるものではなく、本発明の要旨を逸脱しない範囲内において、様々な変更をなし得ることはいうまでもない。
【００６２】
すなわち、上記各実施例の電子ボードシステム２０，２０Ｂは、入力ペン３５や図示しないマウスやキーボード等を用いたオブジェクト入力操作に応じてコンピュータ４０の記憶装置等から図（イラスト）や文字等のオブジェクトを読み出して描画表示画面３１上に表示させるものであってもよい。そして、この場合には、座標処理部４１に描画表示画面３１上におけるストロークＳの座標と共に、オブジェクト入力操作に応じて表示されたオブジェクトの描画表示画面３１上における座標を取得させ、グループ化演算部４２に座標処理部４１により取得された座標に基づいて描画表示画面３１上で空間的にまとめられているストロークＳおよびオブジェクトを１つのグループとしてグループ化させるとよい。このような機能を電子ボードシステム２０，２０Ｂに組み込めば、手書き入力処理装置としての使い勝手や汎用性をより一層向上させることができる。また、描画表示画面３１上に表示されたオブジェクトに対しては、例えばオブジェクトの画像中心（または重心）等である基準位置におけるポテンシャルを最大とし、該基準位置から径方向に離れるほどポテンシャルを小さく規定する濃度関数をポテンシャル場として付与するとよい。そして、オブジェクトの基準位置の描画表示画面３１上における座標に基づいて、ストロークＳとオブジェクト間の距離、あるいはポテンシャルに基づくグループ化を実行すればよい。
【００６３】
また、本発明による手書き入力装置は、図１４に示すように、本発明による手書き入力処理用プログラムがインストールされると共に表示ユニットとしてスタイラス５０といった入力装置により指定された描画表示画面３１上の絶対座標を検出可能なタブレットを備えるタブレット型コンピュータ２０Ｃとして構成されてもよい。そして、このようなタブレット型コンピュータ２０Ｃをプロジェクタ６０に接続し、描画表示画面３１上の画像をスクリーン７０に投影すれば、タブレット型コンピュータ２０Ｃを第１の実施例に係る電子ボードシステム２０と同様の態様で使用することが可能となる。更に、本発明による手書き入力装置は、コンピュータに接続されたプロジェクタにより投影される投影画面上での手書き入力を可能とする電子ボードシステムとして構成されてもよい。
【産業上の利用可能性】
【００６４】
本発明は、情報処理分野において有用である。
【図面の簡単な説明】
【００６５】
【図１】本発明の第１の実施例に係る手書き入力処理装置である電子ボードシステム２０の概略構成図である。
【図２】第１の実施例に係る電子ボードシステム２０に含まれる表示ユニット３０の描画表示画面３１の表示例を示す説明図である。
【図３】グループモードが選択されたときの表示ユニット３０の描画表示画面３１の表示例を示す説明図である。
【図４】第１の実施例に係る電子ボードシステム２０において実行されるグループ化表示処理の一例を示すフローチャートである。
【図５】図４のステップＳ１２０におけるグループ化処理の一例を示すフローチャートである。
【図６】（ａ）および（ｂ）は、実施例の電子ボードシステム２０において各ストロークＳに付与されるポテンシャル場を例示する説明図である。
【図７】各ストロークＳの座標と各ストロークＳに付与されたポテンシャル場とに基づくポテンシャルにより規定されるバブル境界ｂｂを示す説明図である。
【図８】（ａ），（ｂ），（ｃ），（ｄ），（ｅ），（ｆ）および（ｇ）は、バブル境界ｂｂを設定する際に用いられるルックアップテーブルを例示する説明図である。
【図９】描画表示画面３１上で手書き入力操作を行ってイラストを描画したときの描画表示画面３１の表示状態を例示する説明図である。
【図１０】描画表示画面３１上で複数のストロークＳからなるグループＳＧを移動させたときに描画表示画面３１の表示状態を例示する説明図である。
【図１１】実施例の電子ボードシステム２０において実行されるグループ分割処理の一例を示すフローチャートである。
【図１２】（ａ），（ｂ）および（ｃ）は、実施例の電子ボードシステム２０において実行されるグループ分割処理を説明するための説明図である。
【図１３】第２の実施例に係る電子ボードシステム２０Ｂにおいて実行されるグループ化表示処理の一例を示すフローチャートである。
【図１４】本発明による手書き入力処理装置の変形例としてのタブレット型コンピュータ２０Ｃを例示する説明図である。
【符号の説明】
【００６６】
２０，２０Ｂ  電子ボードシステム、２０Ｃ  タブレット型コンピュータ、３０  表示ユニット、３１  描画表示画面、３５  入力ペン、４０  コンピュータ、４１  座標処理部、４２  グループ化演算部、４３  ポテンシャル算出部、４４  バブル境界設定部、４５  個別処理部、４６  グループ処理部、４７  分割処理部、４８  画像処理部、４９  画像データ記憶部、５０  スタイラス、６０  プロジェクタ、７０  スクリーン、Ｂ  バブル、ｂｂ  バブル境界、Ｌ１，Ｌ２  ループ、Ｓ  ストローク、ＤＳ  分断ストローク、ＳＧ  グループ。
【図１】
2008015929.tif 000003
【図２】
2008015929.tif 000004
【図３】
2008015929.tif 000005
【図４】
2008015929.tif 000006
【図５】
2008015929.tif 000007
【図６】
2008015929.tif 000008
【図７】
2008015929.tif 000009
【図８】
2008015929.tif 000010
【図９】
2008015929.tif 000011
【図１０】
2008015929.tif 000012
【図１１】
2008015929.tif 000013
【図１２】
2008015929.tif 000014
【図１３】
2008015929.tif 000015
【図１４】
2008015929.tif 000016