(57)【要約】【課題】追加の切り替え操作を行わず、かつ、タイムラグが生じずに、ペンによる入力が可能なデバイスに関するモード設定を実現する。【解決手段】タブレットなどのデバイスに接触する前の、ペンに関する情報をペン情報取得部１２で取得し、取得した情報に応じて、モード決定部１５が、設定すべきモードを決定する。モード決定部１５が決定するモードは、オブジェクトを移動させるドラッグモード、オブジェクトを選択する選択モード、文字を入力する文字入力モードなどである。モード決定部１５は、ペンの移動速度、加速度、移動方向、傾き、軌跡の曲率、軌跡を直線近似した際の近似誤差、のうち少なくとも１つを、モードを決定するために用いるパラメータとして用いる。【選択図】      図１
2010176190.tif 000002
【特許請求の範囲】
【請求項１】
ペンによる入力が可能なデバイスに関するモードを設定するモード設定システムであって、前記ペンが前記デバイスに接触する前の、前記ペンに関する情報を取得するペン情報取得手段と、前記ペン情報取得手段によって取得した情報に応じて、設定すべきモードを決定するモード決定手段とを含むことを特徴とするモード設定システム。
【請求項２】
請求項１において、前記モード決定手段が決定するモードは、オブジェクトを移動させるドラッグモード、オブジェクトを選択する選択モード、文字を入力する文字入力モード、うちの少なくとも１つであることを特徴とするモード設定システム。
【請求項３】
請求項１又は請求項２において、前記モード決定手段は、モードを決定するために用いるパラメータとして、ペンの移動速度、加速度、移動方向、傾き、軌跡の曲率、軌跡を直線近似した際の近似誤差、のうち少なくとも１つを用いることを特徴とするモード設定システム。
【請求項４】
請求項１から請求項３までのいずれか１項において、
ペン情報取得手段は、前記ペンが前記デバイスに接触している場合の、前記ペンに関する情報も取得し、
前記モード決定手段は、前記ペンがタブレットに接触した時にモードを決定できない場合には、前記ペンが接触した以降の前記ペンに関する情報も用いてモードを決定することを特徴とするモード設定システム。
【請求項５】
請求項１から請求項４までのいずれか１項において、
前記モード決定手段は、所定の判定基準に基づいてモードを決定し、
前記判定基準の内容を更新する更新手段をさらに含むことを特徴とするモード設定システム。
【請求項６】
請求項１から請求項５までのいずれか１項において、
前記デバイスは、罫線およびグリッドの少なくとも一方を表示可能であり、前記ペンによる文字入力の際に前記デバイスに表示された罫線またはグリッドに沿って文字を書き始めることができるようにしたことを特徴とするモード設定システム。
【請求項７】
請求項６において、
前記罫線またはグリッドを構成する線同士の間隔を、前記デバイスに表示される内容の縮尺に応じて変化させる表示制御手段をさらに含むことを特徴とするモード設定システム。
【請求項８】
請求項１から請求項７までのいずれか１項において、
前記ペンの代わりに指を用いることを特徴とするモード設定システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はモード設定システムに関し、特にペンがタブレットに接触した後の処理に関するモードを設定するためのモード設定システムに関する。
【背景技術】
【０００２】
パーソナルコンピュータ（以下、ＰＣと略称する）のうち、近年普及し始めたものとして、タッチパネルを備えたＰＣや、タブレット型ＰＣがある。これらは、キーボード入力ではなく、ペンなどを用いて表示画面やタブレット表面への直接入力を実現したものである。
これらのＰＣにおいては、ペンなどを用いた表示画面への入力の際、複数のモードを切り替える必要がある。例えば、手書きのメモアプリケーションを考えた場合には、少なくとも手書き文字を書くモードと、オブジェクトを選択するモードが必要である。また、地図アプリケーションの場合には、少なくとも地図を移動するパンモードと、地図を拡大縮小するズームモードが必要である。さらに検索機能を加える場合には、検索モードも必要となる。ユーザは実行したいタスクに応じ、複数の取り得るモードの中から適切なモードを選び、さらにそのモードに設定することが必要である。例えばマウスでは、左右のクリックボタンやホイールなどを組み合わせて、具体的には単なるマウスの移動はカーソルの移動に割り当て、左クリックを押下しながらのマウス移動をオブジェクトの選択に割り当てるなど、ユーザはマウスを使って明示的にモードを指示することが可能である。マウスなどのように、ユーザが随意的かつ独立に制御できる複数のパラメータを入力できるデバイスであれば、モードの切り替えを入力デバイス側のみで瞬時に行うことができる。しかし、ペン入力の場合、ユーザが随意的・独立に制御できるパラメータの数が少ない。このため、多くの場合、モード切り替え操作を行わなければならない。このことは、より多くの操作が必要となることであり、操作が複雑になる問題や、タスク完了までに時間がかかるという問題が生じる。
【０００３】
従来のペン入力におけるモード切替方法は、２つに大別できる。すなわち、ペンダウン（ペン先が表示画面やタブレット表面に接触している状態を指す）前にモードを設定する方法、ペンダウン後にモードを設定する方法、のいずれかである。
（ペンダウン前にモードを設定する方法）
ペンダウン前にモード設定動作を行う方法は、最も一般的である。具体的には、画面に表示されているモード切り替えアイコンをタップする、メニューを呼び出してモードを切り替える（タップ＆ホールド等）、ボタン押下（バレルボタン、サイドスイッチ等）、という方法が考えられる。
【０００４】
また、ペンのホバー中（ペン先が表示画面やタブレット表面に近接しているが、接触していない状態を指す）のジェスチャーを使う研究として、非特許文献１や、非特許文献２があるが、いずれもユーザは意識的なかつ明示的なモード決定操作を行う必要がある。これらの方式では、余計なモード切替操作が必要なことや、ユーザが現在のモードを正しく認識し、かつ取り得るモードと切り替え方法を常に把握しておく必要があるという課題がある。
【０００５】
（ペンダウン後にモードを設定する方法）
ペンダウン後にモードを設定する方法が非特許文献３に記載されている。非特許文献３では、ストロークを認識してシステムが自動的に清書している。ユーザが円を描いた場合、厳密に正円になることはないが、システムが円であると認識し、正円に書き直す。また直線を描いた場合も同様に、システムが直線であると認識し、書き直す。
また、非特許文献４では、ストロークを認識していき、文字認識結果を逐次更新していく。この他、非特許文献５では、ストローク完了後にモードを決定する。
ところで、周知のスケッチアプリケーションソフトウェアにおいては、ペンの傾きや圧力を使ってモードを切り替えることができる。例えば、スケッチアプリケーションソフトウェアにおいて、ペン圧によって線幅が変わる。これは離散的で明確なモード切り替えではないが、一種のモード切り替えと考えることもできる。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】Fitzmaurice G.，Khan A.、Pieke R.，Buxton B.，and Kurtenbach G.，Tracking Menus，Proc. UIST2003，ACM Press(2003)，71-79.
【非特許文献２】Grossman T.，Hinckley K. Baudisch P. Agrawala M.，and Balakrishnan R.，Hover Widgets: using the tracking state to extend the capabilities of pen-operated devices. Proc. CHI2006，ACM Press(2006)，861-870.
【非特許文献３】Igarashi T.，Matsuoka S.，Kawachiya S.，and Tanaka H.，Interactive beautification: a technique for rapid geometric design， Proc. UIST1997，ACM Press(1997)，105-114.
【非特許文献４】Masui T.，Integrating pen operations for composition by example，Proc. UIST1998、ACM Press(1998)，211-212.
【非特許文献５】Saund E.，and Lank E.，Stylus input and editing without prior selection of mode，Proc. UIST2003，ACM Press(2003)，213-216.
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上述した非特許文献１、非特許文献２など、ペンダウン前にモードを決定する方法では、いずれもユーザは意識的なかつ明示的なモード決定操作を行う必要がある。これらの方式では、モード切り替え操作が必要なことや、ユーザが現在のモードを正しく認識し、かつ、取り得るモードと切り替え方法を常に把握しておく必要がある。
つまり、ペンダウン前にモード設定動作を行う場合、モードはメインの動作の前にユーザの意思により決定されているが、ユーザが明示的なモード切り替え操作を行うことが必要であり、操作が煩わしいという問題がある。また、一般に、モードはユーザを混乱させる原因であり、操作が追加され、さらにその切り替え操作が面倒となれば、余計に混乱させることになる。
【０００８】
一方、非特許文献３、非特許文献４、非特許文献５など、ペンダウン後にモードを設定する方法では、ペンダウン時点からモードが切り替わるまでにタイムラグが生じる。このため、設定されるモードによってリアルタイムなレスポンスが異なる場合には、タイムラグがユーザを混乱させる要因になる。
なお、上述したスケッチアプリケーションソフトウェアにおける線幅変更を一種のモード切り替えと考えた場合、そのモード切り替えにおいても上述したタイムラグが生じるという問題がある。
本発明の目的は、追加の切り替え操作を行わず、かつ、タイムラグが生じずにモード設定を行うことのできるモード設定システムを提供することである。
【課題を解決するための手段】
【０００９】
本発明の請求項１によるモード設定システムは、ペンによる入力が可能なデバイスに関するモードを設定するモード設定システムであって、前記ペンが前記デバイスに接触する前の、前記ペンに関する情報を取得するペン情報取得手段と、前記ペン情報取得手段によって取得した情報に応じて、設定すべきモードを決定するモード決定手段とを含むことを特徴とする。このような構成によれば、ホバー中の情報を用いてモードを決定するため、モードをユーザが決定する煩わしさがなく、またモードが決定されるまでのタイムラグがなくなるため、より素早くタスクを完了することができるようになる。
【００１０】
本発明の請求項２によるモード設定システムは、請求項１において、前記モード決定手段が決定するモードは、オブジェクトを移動させるドラッグモード、オブジェクトを選択する選択モード、文字を入力する文字入力モード、うちの少なくとも１つであることを特徴とする。設定されるモードによってオブジェクトの移動、オブジェクトの選択、文字入力が可能となるので、素早い操作が可能となる。
【００１１】
本発明の請求項３によるモード設定システムは、請求項１又は請求項２において、前記モード決定手段は、モードを決定するために用いるパラメータとして、ペンの移動速度、加速度、移動方向、傾き、軌跡の曲率、軌跡を直線近似した際の近似誤差、のうち少なくとも１つを用いることを特徴とする。少なくともペンの移動速度などをパラメータとして用いることにより、モードを正しく設定することができる。
【００１２】
本発明の請求項４によるモード設定システムは、請求項１から請求項３までのいずれか１項において、ペン情報取得手段は、前記ペンが前記デバイスに接触している場合の、前記ペンに関する情報も取得し、前記モード決定手段は、前記ペンがタブレットに接触した時にモードを決定できない場合には、前記ペンが接触した以降の前記ペンに関する情報も用いてモードを決定することを特徴とする。ペンがタブレットに接触した時にモードを設定できない場合には、ペンが接触した以降の情報も用いて入力モードを設定することで、モード設定の誤りを削減することができる。
【００１３】
本発明の請求項５によるモード設定システムは、請求項１から請求項４までのいずれか１項において、前記モード決定手段は、所定の判定基準に基づいてモードを決定し、前記判定基準の内容を更新する更新手段をさらに含むことを特徴とする。入力モードを設定する基準が、更新されることで、モード判別の精度を向上させることができる。
本発明の請求項６によるモード設定システムは、請求項１から請求項５までのいずれか１項において、前記デバイスは、罫線およびグリッドの少なくとも一方を表示可能であり、前記ペンによる文字入力の際に前記デバイスに表示された罫線またはグリッドに沿って文字を書き始めることができるようにしたことを特徴とする。罫線またはグリッドに沿って文字を入力する場合、ペンダウン前の速度が低下することが多いので、ペンの速度に基づいてモードを適切に設定することができる。
【００１４】
本発明の請求項７によるモード設定システムは、請求項６において、前記罫線またはグリッドを構成する線同士の間隔を、前記デバイスに表示される内容の縮尺に応じて変化させる表示制御手段をさらに含むことを特徴とする。表示される罫線またはグリッドが表示内容の縮尺表示を兼ねることにより、それらを表示することによる違和感を低減することができる。
本発明の請求項８によるモード設定システムは、請求項１から請求項７までのいずれか１項において、前記ペンの代わりに指を用いることを特徴とする。指を用いれば、操作のためのペンを用意する必要がなくなる。
【発明の効果】
【００１５】
本発明によれば、ペンを用いた入力方法において、タイムラグがなく、入力モードを自動的に設定することができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施の形態に係るモード設定システムの一構成例を示すブロック図である。
【図２】図１のモード設定システムの動作例を示すフローチャートである。
【図３】本発明の実施の形態に係るモード設定システムの他の構成例を示すブロック図である。
【図４】図３のモード設定システムの動作例を示すフローチャートである。
【図５】モード決定結果が妥当であるか判断する処理を追加した動作例を示すフローチャートである。
【図６】図１に、罫線またはグリッドを構成する線同士の間隔を、表示される内容の縮尺に応じて変化させる表示制御部を、追加した構成を示すブロック図である。
【図７】図３に、罫線またはグリッドを構成する線同士の間隔を、表示される内容の縮尺に応じて変化させる表示制御部を、追加した構成を示すブロック図である。
【図８】罫線表示の例を示す図である。
【図９】グリッド表示の例を示す図である。
【発明を実施するための形態】
【００１７】
以下、本発明の実施の形態を、図面を参照して説明する。なお、以下の説明において参照する各図では、他の図と同等部分は同一符号によって示されている。
（本システムの概要）
本システムは、入力モードを自動的に設定するモード設定システムであり、タイムラグが生じないことが特徴である。本システムでは、ペンがタブレット近傍にあるものの、タブレットには接触していない状態（ホバー中）において、ペンに関する情報を取得し、その取得結果に応じてモードを設定する。ホバー中であっても、ペンの位置、傾き等の情報を取得することができるタブレットなどに本システムを適用することができる。
なお、スケッチアプリケーションソフトウェアや地図アプリケーション（例えば、Ｇｏｏｇｌｅ（登録商標）ｍａｐｓ）などに、本システムを適用することができる。
【００１８】
（システムの構成例）
図１は本システムの一構成例を示すブロック図である。同図において、本システムは、オブジェクトの移動や選択、文字の入力を行うためにユーザが用いるペン１０と、ペン１０による操作が行われるデバイス１１と、デバイス１１に対するペン１０のホバー中およびデバイス１１に対するペン１０の接触中にペン１０に関する情報を取得するペン情報取得部１２と、デバイス１１に対するペン１０の先端の軌跡を保存する軌跡保存部１３と、モードの判定基準を格納する判定基準格納部１４と、軌跡保存部１３に保存された軌跡および判定基準格納部１４に格納された判定基準に従って、モードを決定するモード決定部１５と、決定されたモードに従った処理を行う処理部１６とを備えている。
【００１９】
デバイス１１は、例えば、電磁誘導方式のタブレットである。電磁誘導方式のタブレットにおいては、ペンがホバー中であっても、ペンがタブレットの操作面に接触している場合であっても、そのペンに関する情報を取得できる。電磁誘導方式のタブレットに限らず、ホバー中のペン、および、操作面に接触しているペン、に関する情報を取得できるデバイスを用いればよい。なお、以下は、デバイス１１が電磁誘導式タブレット（以下、単にタブレットと呼ぶ）である場合について説明する。
【００２０】
ペン情報取得部１２は、ペン１０に関する情報をデバイス１１から取得し、軌跡保存部１３に保存する機能を有している。
軌跡保存部１３は、後述する軌跡ＤＢ１〜３を保存する機能を有している。軌跡ＤＢ１〜３は、ペン１０の先端の軌跡に関するデータを保存するためのデータベースである。
判定基準格納部１４は、後述する判定基準４を格納する機能を有している。この判定基準４は、ペン情報取得部１２によってデバイス１１から取得された、ペン１０に関する情報についての閾値である。
【００２１】
モード決定部１５は、デバイス１１から取得された、ペン１０に関する情報と判定基準４の値との比較結果に応じて、モードを決定する。
なお、ペン情報取得部１２、モード決定部１５、処理部１６は、ＣＰＵが所定のプログラムを実行することによって実現することができる。軌跡保存部１３や判定基準格納部１４については、メモリや磁気ディスクなどの記憶手段によって実現できる。
【００２２】
（基本原理）
ペンを使ったインタラクションを行う場合、ペンがホバーした状態からタブレットに接触（ペンダウン）、タブレット上でペンが移動、タブレットからペンが離れ（ペンアップ）、再度ホバー状態に戻る、という状態遷移が繰り返される。
本システムの基本原理は、ホバー中のペン１０の状態など、ペン１０に関する情報を取得して保存しておき、ペンダウン時にホバー中のペンに関する情報からモードを決定するものである。
【００２３】
図２は、図１のモード設定システムの動作例を示すフローチャートである。同図を参照すると、ペンを用いたインタラクションを行う場合、まずペンがホバー中である状態からスタートする。次に、ペンダウンが起こるかどうかを常に監視しておく（ステップＳ１）。ペンダウンが起こらない場合、すなわちホバー中である場合には、タブレットで取得できるペンの情報を軌跡ＤＢ１に保存しておく（ステップＳ１→Ｓ２）。
【００２４】
ここで、軌跡ＤＢ１には、ペンの位置や傾き、速度など、モード決定を効率的に行えるためのパラメータを格納しておく。また、図２の判定基準４は、モード決定を高い精度で行うための基準である。この判定基準４は、予め定められたものであってもよく、またユーザ毎に異なったものでも構わない。この判定基準４は、後述する認識エンジンのパラメータとなる。認識エンジンとして、音声認識やジェスチャー認識でよく用いられるＨＭＭ（隠れマルコフモデル）を使う場合には、モード毎のモデルのパラメータ（より具体的には遷移確率や確率分布）が該当する。
その後、ペンがペンダウンした時には、モード設定ステップに進む（ステップＳ１→Ｓ３）。
【００２５】
モード設定ステップでは、軌跡ＤＢ１に保存されているホバー中のペンに関する情報と、判定基準格納部１４に保存されている判定基準４を用いて、モード判定が行われる（ステップＳ３）。タブレットへの入力モードが、この判定によって決定されたモードに設定される。例えば、オブジェクトの移動、オブジェクトの選択、文字入力、のモードが存在する場合に、これらモードのいずれか１つに設定される。なお、このモード設定ステップによるモードの設定は、ペンダウンと同時に行われる。このため、ペンダウン後にモードを設定する場合のようなタイムラグは生じない。
その後、ペンがタブレットに接触した状態で移動する時は、設定された入力モードでの処理に移行する（ステップＳ４）。
【００２６】
（実行するタスクによって異なるペンの運動）
ところで、ペンとタブレットとを用いたインタラクションでは、実行するタスクによってペンの軌跡、速度などは大きく異なる。また、その違いはペンダウン後に明確に観測されるが、ペンダウン前にも観察される。以下で具体的な違いを述べる。
一般に繊細な操作（小さな字を書く等）と大雑把な操作（大きな線を引く等）とでは、ペンの移動速度が異なる。繊細な操作ではペンがゆっくりと動き、大雑把な操作ではペンが素早く動く。この移動速度の違いは、ペンダウン前のホバー中にも観察される。そのため、例えばペンダウン直前のホバー中のペンの移動速度を観察することで、ペンダウン後に繊細な操作が行われるのか、大雑把な操作が行われるのかを予想することが可能である。
【００２７】
また、タブレット上に表示されたオブジェクト（以下、単に「オブジェクト」と呼ぶ）に対する操作の内容に関してもペンの状態に違いが観察される。ここで、オブジェクトを移動させる場合とオブジェクトを選択する場合とを考えてみる。まず、オブジェクトを移動させる場合には、ペン先の運動は移動方向にそった直線運動となる。一方、オブジェクトを円又は楕円で囲うことにより、そのオブジェクトを選択することを考えた場合には、ペン先の運動は円運動又は楕円運動となる。ペン先の運動が直線運動となるか、円運動又は楕円運動となるかの違いについては、ペンダウン以降だけでなく、ペンダウン前にも観察される。そのため、ペンダウン直前のペン先の軌跡を観察しておけば、ペンダウン後にペンが直線を描くのか、円又は楕円を描くのかを判定することができる。
【００２８】
さらに、ユーザ毎に、ペンの軌跡や速度に個人差がある。例えば、あるモードではペンダウン時に一瞬ペン先が停止するのに対し、別なモードではペンダウン時にペン先の速度が低下しないことが観察される場合がある。また、あるモードではペン速度が最小となるのがペンダウン後であるのに対し、別なモードではペンダウン前となることが観察される場合がある。
このようなペンダウン前の、ペンに関する情報の違いに基づいて、モードを判別し、モードを設定することができる。
【００２９】
（ペンの移動速度とモードとの関係）
ペンの移動速度については、例えば、以下のように算出する。すなわち、ペン先のＸＹ座標やペンの傾きなどのペンの状態を一定時間毎に計測する。計測時間の間隔は正確に一定ではなく、ある程度の範囲、例えば９〜１１ｍｓでよい。移動速度は、最新のペン状態（これが計測された時刻をｔ０とする）と直前のペン状態（同じくｔ１とする）とから算出できる。すなわち、時刻ｔ０のペン位置と時刻ｔ１のペン位置との距離を、ｔ０−ｔ１で割れば、移動速度が算出できる。また、算出される移動速度の変動を減らすために、時刻ｔ１のペン情報を用いるのではなく、それよりも過去の時刻（例えば、ｔ１０）を用いても構わない。なお、これを行うことは、移動平均を求めていることと等価である。
【００３０】
そして、上記のように計測された移動速度に基づいて、入力モードを決定する。例えば、ペンダウン時刻における移動速度がある閾値を超えていた場合には入力モードＡ（例えば、選択モード）とし、それ以下であった場合には入力モードＢ（例えば、ドラッグモード）とする。この閾値については、ユーザによって値が変わるので、事前にそのユーザに合った閾値を設定しておく必要がある。また、ユーザによっては、移動速度と設定すべきモードとの間に相関がない場合もあるので、そのようなユーザに対しては移動速度に基づいてモードを決定することはできない。
【００３１】
（ペンの加速度とモードの決定）
加速度については、上述したペンの移動速度をさらに時間で微分することによって算出できる。具体的には、時刻ｔ０における移動速度と、それよりも過去の時刻ｔ１における移動速度の差をｔ０−ｔ１で割れば算出できる。
そして、上記のように算出された加速度に基づいて、入力モードを決定する。よく見られる傾向として、選択モードの場合にはペンダウン時点よりも過去にペンの移動速度が最小となり、ドラッグモードの場合にはペンダウン時点以降で移動速度が最小となる。これを加速度の観点から見ると、移動速度が最小となる＝加速度が０（零）である。このため、加速度が０となるタイミングをみれば、モードを決定できることになる。
【００３２】
（ペンの移動方向とモードの決定）
移動方向は、時刻ｔ０とそれよりも過去の時刻ｔ１とにおけるペン先の座標の変化（ベクトル）の角度である。
移動方向に基づくモードの決定は、次のように行う。すなわち、円を描く場合（選択モード）には、時計の６時の位置から時計回りに円を描く場合が多いので、ペンダウン前の移動方向としても、左であることが多い。一方、ドラッグモードの場合には、方向は任意なので、ペンダウン前の移動方向はバラバラである。よって、ペンダウン前の移動方向が左である場合には、選択モードである可能性が高くなる。
また、上記とは異なる開始位置、回転方向をとるユーザも存在する。このようなユーザについては、判定基準を変えれば対処できる。また、一部のユーザでは開始位置、回転方向がバラバラな場合があるので、そのような場合には移動方向に基づいてモードを決定することはできない。
【００３３】
（ペンの傾きとモードの決定）
ペンの傾きは、一部の電磁式タブレットで直接取得できる。例えば、ワコム社のタブレットであれば、ペンの傾きを取得できる。ここでいう傾きとは、タブレットを基準面として見たときの、ペンの傾きのことで、２次元のベクトルである。すなわち、タブレットのＸ軸に対する傾き角度と、Ｙ軸に対する傾き角度である。ペンの傾きについては、ユーザによって特有の値になることがあるので、事前にそのユーザに合った閾値を設定しておけば、ペンの傾きに基づいてモードを決定することができる。また、ユーザによっては、ペンの傾きと設定すべきモードとの間に相関がない場合もあるので、そのようなユーザに対してはペンの傾きに基づいてモードを決定することはできない。
【００３４】
（軌跡の曲率とモードの決定）
軌跡の曲率は、ペン先の軌跡から算出する。軌跡の曲率χは、例えば、式（１）で表すことができる。
χ＝ｄθ／ｄｓ
＝ｌｉｍ（Δθ／Δｓ）
＝ｌｉｍ|[ｔ（ｓ＋Δｓ）−ｔ（ｓ）]／Δｓ|
＝|ｄｔ／ｄｓ|
＝|ｄ2ｒ／ｄｓ2|  …（１）
なお、式（１）において、ｓは、ある任意の曲線上の点Ｐ0を基点とし、そこから曲線上の任意点Ｐまでの距離である。θは曲線上の任意点Ｐ、Ｑそれぞれにおける単位接線ベクトルｔP、ｔQのなす角度である。式（１）の極限値「ｌｉｍ」は、「Δｓ→０」である。なお、この曲率の算出については、Ｗｅｂサイト（ＵＲＬ：http://ja.wikipedia.org/wiki/%E6%9B%B2%E7%8E%87）に記載されている。
【００３５】
曲率は時間毎に変化する。この曲率は曲率半径の逆数なので、曲率が小さいということは、直線に近いことを意味する。したがって、軌跡の曲率に基づいて、入力モードを決定する場合、ペンダウン時点での曲率をモード判定に利用する。そして、曲率が所定閾値より大きい場合には選択モード、所定閾値以下の場合にはドラッグモード、と決定することができる。
【００３６】
（軌跡を直線近似した際の近似誤差とモードの決定）
ペンの軌跡を直線近似するというのは、有限個の点を直線で近似することである。具体的には、点（ベクトル）をａｉ＝（ｘｉ、ｙｉ）、近似直線をｙ＝ｆ（ｘ）とすると、｜ｙｉ−ｆ（ｘｉ）｜の合計Σ｜ｙｉ−ｆ（ｘｉ）｜を最小化するｆ（ｘ）を求めることである。
ここでいう近似誤差とは、最小化されたΣ｜ｙｉ−ｆ（ｘｉ）｜のことである。軌跡がほぼ直線の場合には近似誤差はほぼ０となる。一方、軌跡が直線ではない場合には近似誤差が大きくなる。これにより、軌跡が円弧を描いているのか、ほぼ直線なのかの判定が可能となる。したがって、上記の曲率に基づく場合と同様に、近似誤差が所定閾値より大きい場合には選択モード、所定閾値以下の場合にはドラッグモード、と決定することができる。
なお、上記の各パラメータ（すなわち、ペンの移動速度、加速度、移動方向、傾き、軌跡の曲率、軌跡を直線近似した際の近似誤差）の他、ペンとタブレットとの距離（ペンがタブレットからどの程度浮いているのか）を利用してもよい。
【００３７】
（個人差を利用したモードの決定）
ところで、ユーザがそれぞれのモード毎のペンの動き（例えば、上述したペンの傾き）を事前に登録することにより、個人差を利用したモードの決定を実現することができる。これは、音声認識で認識率を上げるためにディクテーションをするのと同じである。認識エンジンは、その事前のデータを用いて学習しておく。
この時、ユーザ毎にどのパラメータがモード決定に有効なのかを、知っておく必要はない。それは認識エンジンが学習するからである。
今までは、入力モードを、ある時刻におけるパラメータのみで決定する場合について説明したが、現実的には複数のパラメータからなる時系列データを上記認識エンジンに入力しておき、ペンダウン時点で最も可能性の高いモードを選択することなる。
【００３８】
（他の構成例）
図３は本システムの他の構成例を示すブロック図である。同図において、本例のモード設定システムは、図１の構成に、判定基準格納部１４の内容を更新する判定基準更新部１７が追加された構成になっている。この判定基準更新部１７は、ＣＰＵが所定のプログラムを実行することによって実現することができる。
この判定基準更新部１７によって、判定基準格納部１４の内容すなわち判定基準を更新し、より高い精度でのモード判定を目指すことも可能である。この判定基準の更新処理を含む、本システムの動作について、図４を参照して説明する。
【００３９】
図４は、判定基準の更新処理を含む動作例を示すフローチャートである。同図において、ステップＳ１からステップＳ３までの動作については、図２の場合と同様である。
ステップＳ３においてモードが設定された後、ペンの移動に基づく処理が行われると共に、ペンが移動している時のペン情報が軌跡ＤＢ２に保存される（ステップＳ４）。この処理は、ペンアップが行われるまで継続して行われる（ステップＳ５→Ｓ４）。
【００４０】
このようにモード設定後にペンが移動している時のペン情報は、軌跡ＤＢ２に保存される。この軌跡ＤＢ２に保存される、ペンに関する情報は、上述した各パラメータ（すなわち、ペンの移動速度、ペンの加速度、ペンの移動方向、ペンの傾き、ペン先端の軌跡の曲率、軌跡を直線近似した際の近似誤差）を用いればよい。もっとも、ペンに関する情報を軌跡ＤＢ２に格納しておく理由は、ペンアップ時点でモードの正解値を求めるためである。このためには、上述した各パラメータを用いるのではなく、純粋にＸＹ座標の値だけを軌跡ＤＢ２に保存してもよいし、圧力等の他のパラメータを加えることでより正確に正解値が求められるのであれば、そのパラメータを保存してもよい。
そして、ペンアップが行われた時点で、判定基準格納部１４に格納されている判定基準４の内容が更新される（ステップＳ５→Ｓ６）。すなわち、設定されたモードが正しかったのか、誤っていたのかを知ることができるのは、ペンアップが行われた時点なので、その時点で判定基準４の内容が更新される。
【００４１】
例えば、ドラッグモードと文字入力モードとが存在する場合に、設定されたモードがドラッグモードであったにも関わらず、ペンアップ後に軌跡ＤＢ２の情報を見返してみると、ユーザは文字を描いていたということがわかれば、それはモード設定が誤っていたことになる。そこで、判定基準格納部１４に格納されている判定基準４の内容を更新すれば、モード設定を誤った判定基準４を修正することが可能である。また、モード設定が正しかった場合には、判定基準４をより厳しくし、曖昧な状態を作らないように判定基準４を修正することも可能である。判定基準４の修正は、具体的には、モードを決定するための、ペン１０に関する情報についての閾値を変更することを指す。
このように判定基準４の内容が更新されることにより、次回のペンダウン前のモード決定をより適切に行うことができる。
【００４２】
（ユーザの判断の利用）
ところで、モード設定が正しかったかどうかを、ユーザに判断させることも可能である。この場合の実装例として、ペンアップ時にポップアップメニューを表示し、ユーザに選択させることが考えられる。すなわち、ペンアップ時にポップアップメニューを表示し、モード設定が誤っていた場合にはポップアップメニューに表示されるモードの中から、本来設定されるべきモードをユーザが選択する。一方、モード設定が正しかった場合にはそのメニューを無視させる。このようにユーザに選択させることで、モード設定が正しかったのか、誤っていたのかを判断することも可能である。
【００４３】
さらに、ユーザに判定基準４の内容を修正するか否かを判断させることもできる。例えば、ペンアップ時にポップアップメニューを表示し、修正する場合にはポップアップメニューをユーザが選択し、修正しない場合には無視するなどすればよい。このように判定基準４の修正を行い、修正された判定基準４に基づいてモードを設定すれば、個人差があっても高い精度でモードを設定することができるようになる。
【００４４】
（モード設定の曖昧さに基づく処理）
次に、モード決定結果が曖昧であるか判断する処理を追加した動作について、図５を参照して説明する。同図において、ステップＳ１からステップＳ３までの動作については、図２の場合と同様である。
ステップＳ３ａにおいて、設定されたモードが妥当であったか判断する。ペンダウン時にモード判定が曖昧であった場合、ペンダウン後のペン先端の移動の軌跡を軌跡ＤＢ３に保存する（ステップＳ３ａ→Ｓ４ｂ）。そして、ステップＳ３に戻り、モード決定を繰返す。
【００４５】
設定されたモードが曖昧でなく、妥当であると判断できた場合には、モードを確定して処理を継続する（ステップＳ３ａ→Ｓ４ａ）。
このように、モードの決定が曖昧さを判断し、曖昧である場合にはペンの移動の軌跡を保存してモード判定を繰返すことにより、モード設定の誤りを削減することができる。つまり、ペンがタブレットに接触した時にモードを決定できない場合には、ペンがタブレットに接触した以降（つまり、ペンダウン後）のペンに関する情報をも用いてモードを決定することができる。
【００４６】
ちなみに、曖昧さの判定は、認識エンジンにHMMを用いた場合には、尤度を用いればよく、尤度が閾値を超えている場合には曖昧でないとし、閾値以下の場合には曖昧であると判定すればよい。
なお、軌跡ＤＢ１と軌跡ＤＢ３とは、同じ記憶領域を用いて保存してもよい。ただし、ペンダウン前の情報なのかペンダウン後の情報なのかを識別するためのフラグを付加しておく必要がある。
【００４７】
ここで、ペンダウン前の判定とペンダウン後の判定とは判定基準が異なる。例えば、ペンダウン前にはペン先にかかる圧力をモード判定に利用することはできないが、ペンダウン後にはそれを利用することができる。Ｚ方向（すなわちタブレット面に垂直な方向）の距離はペンダウン前では利用できるが、ペンダウン後では利用できない。このように、モード決定する際に必要なパラメータが異なっている可能性が高いので、軌跡ＤＢ１、軌跡ＤＢ３それぞれに含まれるパラメータは同一であっても構わない。具体的には、軌跡ＤＢ１に圧力パラメータを含むようにし、軌跡ＤＢ３にＺ方向距離を含むようにしても構わない。
もっとも、それら軌跡ＤＢ１、軌跡ＤＢ３を別々に設けてもよい。すなわち、軌跡ＤＢ１は圧力パラメータを含まず、軌跡ＤＢ３はＺ方向の距離を含まないようにしてもよい。
【００４８】
（変形例）
タブレットに、罫線やグリッドを表示しておき、それに沿って文字を入力させることをユーザに促せば、ペンの速度に基づいてモードを適切に設定することができる。
ここで、Ｇｏｏｇｌｅ（登録商標）Ｍａｐを例に説明する。パン、ズームモードに加えて、文字入力モードがあれば、手書きで“東京”と書けば、東京にフォーカスを即座に移動することができる。通常は、検索窓があり、その検索窓をタップすると文字入力モードに突入する。しかし画面の大きさに制約のあるモバイル端末では、検索窓を表示しておくのは画面の使用効率が悪くなる。また、モード切り替え操作が必要となる。そこで、本システムを使ってパン、ズーム、文字入力の３つのモードを切り替えることを考える。
【００４９】
パンの場合は円又は楕円を描き、ズームの場合は直線を描くとすれば、両者を切り分けることができる。しかし、文字入力については、そのような切り分け方では対応できない。ここで、パン、ズームは、相対的に大雑把な操作である。これに対し、小さな文字を書こうとすると、繊細な操作が要求されることになる。
ここで、ユーザインタフェースに関する周知のフィッツの法則（Fitts' Law）によると、ポインティングタスクにおけるタスク完了時間は、オブジェクトすなわちターゲットまでの距離、ターゲットの大きさの２つと、いくつかの定数を用いて定式化することができる。それによれば、距離が伸びる／ターゲットが大きくなるとポインティング速度が増す。このため、大雑把な操作（大きな動きが必要な操作：距離が大きい、ターゲットも大きい）では速度が増加し、繊細な操作（小さな動きが要求される：距離が小さく、ターゲットも小さい）では速度が低減する。
【００５０】
上述したパン、ズームは大雑把な操作であるため、速度の絶対値は大きなものとなる。これに対し、文字を書く場合には速度が低減する。ただし、描く文字のサイズが大きい場合には、速度は増加する。したがって、パン、ズームと文字入力とを、速度を使って切り分けようとした場合、文字入力における速度を落とすことが重要となる。その一つの方法として、小さな文字をユーザに書かせるという方法が考えられる。
しかしながら、小さな文字を書かせようとしても、文字の書き出しは大雑把で速度が増加する場合がある。例えば、とりあえずペンダウンしておいて、後はビジュアルフィードバックを効かせて、きれいな文字を描く、という場合である。
【００５１】
本システムではペンダウン前の、ペンに関する情報が重要なので、ペンダウン前に速度を低減しておく必要があるため、罫線またはグリッドを利用する。すなわち、罫線またはグリッドを表示しておけば、ユーザは文字の書き出し位置に制約を受ける。そのため、大雑把にペンダウンするわけにはいかず、正確なペンダウンが必要となり、この結果ペンダウン前の速度を低減させることができる。そこで、タブレットを、罫線およびグリッドの少なくとも一方を表示可能な構成とし、ペンによる文字入力の際にタブレットに表示された罫線またはグリッドに沿って文字を書き始めることができるようにする。罫線またはグリッドに沿って文字を入力する場合、ペンダウン前の速度が低下することが多いので、ペンの速度に基づいてモードを適切に設定することができる。
【００５２】
ただ、罫線やグリッドを単に表示するだけでは、目障りで違和感が生じる場合がある。このため、罫線やグリッドを縮尺表示としても利用することが望ましい。つまり、罫線またはグリッドを構成する線同士の間隔を、タブレットに表示される内容の縮尺に応じて変化させる表示制御部を追加すればよい。すなわち、図１のモード設定システムにおいては、図６のように表示制御部１８を追加すればよく、図３のモード設定システムにおいては、図７のように表示制御部１８を追加すればよい。この表示制御部１８は、ＣＰＵが所定のプログラムを実行することによって実現することができる。
【００５３】
Ｇｏｏｇｌｅ（登録商標）Ｍａｐを考えた場合、この表示制御部１８によって罫線を画面に表示する場合、例えば、図８のように表示される。すなわち、図８（ａ）のように罫線を「１Ｋｍ」という文字と共に表示している状態において、拡大表示操作すると、図８（ｂ）のように罫線同士の間隔が変化すると共に表示されている文字も「０．６Ｋｍ」に変化する。なお、この変化に伴い、画面の横方向を示す文字も、図８（ａ）の「５Ｋｍ」から図８（ｂ）の「２Ｋｍ」の表示に変化する。
【００５４】
また、表示制御部１８によってグリッドを画面に表示する場合、例えば、図９のように表示される。すなわち、図９（ａ）のようにグリッドを「１Ｋｍ」という文字と共に表示している状態において、拡大表示操作すると、図９（ｂ）のようにグリッドを構成する線同士の間隔が変化すると共に表示されている文字も「０．６Ｋｍ」に変化する。
ここで重要なことは、罫線やグリッドの大きさは、一定である必要はないということである．速度が低下するのに十分な小ささであればよいため、縮尺表示のように、キリのよい数字とするために、縮尺によって大きさが可変となるような大きさを用いることが可能であるということである。
【００５５】
図８および図９のように、表示される罫線またはグリッドが表示内容の縮尺表示を兼ねることにより、それらを表示することによってユーザに与える違和感を低減することができる。
なお、例えば静電容量方式のタッチパネルを用いれば、ペンの代わりに指を用いて、同様の操作を行うことができる。指を用いれば、操作のためのペンを用意する必要がなくなる。指を用いる場合については、上記説明中の“ペン”を“指”に読み替えればよい。すなわち、静電容量方式のタッチパネルを用いれば、指で操作する場合、少なくともホバー中の指について、ＸＹ座標を取得することができるので、電磁誘導式のタブレットにペンを用いる場合と同様に、タイムラグがなく、入力モードを自動的に設定できる。静電容量方式のタッチパネルを用いる場合、指に限らず、導電性を有する棒状の物体を用いれば、同様の作用効果が得られる。
【００５６】
（まとめ）
以上説明したように、本システムでは、ホバー中のペン情報（ペン先の位置情報等）も取得できるタブレット（例えば、電磁誘導式タブレット）などに適用されることを前提としている。そして、ホバー中のペン情報を蓄積し、ペンダウン時に蓄積したペン情報を認識し、その結果に応じてモード（選択モードやドラッグモード）を決定する。
対象とするホバー中の動きは、ユーザの意図的・意識的な動きではない。すなわち、予め決められたジェスチャーを、ホバー中に行うのではない。ペンダウン後に行うペンの動きを行うのに不可分、かつ、ユーザが意識しない動きを本システムが認識する。
【００５７】
ユーザがモード決定動作を行う必要がない（事前にも事後にも）、モードがペンダウン時に決定されているためシステムはペンダウン時から適切なレスポンスを返すことができる（時間遅れがない）、というメリットがある。つまり、ペンダウン前にユーザの意図を抽出していることになる。
このように、本システムによれば、ペンを用いた入力において、タイムラグがなく、入力モードを自動的に設定できる。さらにユーザ毎の個人差を学習することで、より高精度なモード判定によるモード設定が行えるようになる。
【産業上の利用可能性】
【００５８】
本発明は、ペンがタブレットに接触した後の処理に関するモードを設定する場合に利用することができる。
【符号の説明】
【００５９】
１〜３  軌跡ＤＢ
４  判定基準
１０  ペン
１１  デバイス
１２  ペン情報取得部
１３  軌跡保存部
１４  判定基準格納部
１５  モード決定部
１６  処理部
１７  判定基準更新部
１８  表示制御部
【図１】
2010176190.tif 000003
【図２】
2010176190.tif 000004
【図３】
2010176190.tif 000005
【図４】
2010176190.tif 000006
【図５】
2010176190.tif 000007
【図６】
2010176190.tif 000008
【図７】
2010176190.tif 000009
【図８】
2010176190.tif 000010
【図９】
2010176190.tif 000011