(57)【要約】【課題】表示するポインタの振動の抑制と、ポインタ移動の応答性の良さやスムースさ等とを両立する情報処理装置を提供する。【解決手段】表示装置１５０上に表示するポインタの表示座標を、入力装置１１０からの入力座標に基づいて定める情報処理装置１００は、時系列としてサンプリングされた複数の入力座標間の移動距離を算出する移動距離算出部１２０と、サンプリングされた１以上の入力座標を平均して表示座標を算出する平均算出部１３０と、移動距離に基づき、平均算出部１３０が表示座標の算出に使用する入力座標の、時系列における範囲を変更する範囲変更部１４０とを備える。【選択図】  図１
2004287473.tif 000002
【特許請求の範囲】
【請求項１】
表示装置上に表示するポインタの表示座標を、入力装置からの入力座標に基づいて定める情報処理装置であって、
時系列としてサンプリングされた複数の前記入力座標間の移動距離を算出する移動距離算出部と、
サンプリングされた１以上の前記入力座標を平均して前記表示座標を算出する平均算出部と、
前記移動距離に基づき、前記平均算出部が前記表示座標の算出に使用する前記入力座標の、前記時系列における範囲を変更する範囲変更部と
を備えることを特徴とする情報処理装置。
【請求項２】
前記範囲変更部は、前記移動距離に対応して、前記平均算出部が前記表示座標の算出に使用する前記入力座標の、前記時系列における時間幅を変更することを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記範囲変更部は、前記移動距離が大きい場合の前記時間幅を、前記移動距離が小さい場合の前記時間幅と比較し小さくすることを特徴とする請求項２記載の情報処理装置。
【請求項４】
前記範囲変更部は、直前に前記平均算出部が使用した前記入力座標より過去にサンプリングされた前記入力座標を、前記平均算出部が使用する前記入力座標の前記範囲から除外することを特徴とする請求項１記載の情報処理装置。
【請求項５】
前記範囲変更部は、前記移動距離の変化量に対応して、前記平均算出部が前記表示座標の算出に使用する前記入力座標の、前記時系列における時間幅を変更することを特徴とする請求項１記載の情報処理装置。
【請求項６】
前記範囲変更部は、前記移動距離に基づき前記入力装置に前記入力座標の移動が入力されていないと判断した場合における前記入力座標の変動を低減する様に、前記平均算出部が前記表示座標の算出に使用する前記入力座標の、前記時系列における時間幅を設定することを特徴とする請求項１記載の情報処理装置。
【請求項７】
前記範囲変更部は、前記時間幅を前記入力座標の変動の周期以上に設定することを特徴とする請求項６記載の情報処理装置。
【請求項８】
前記入力装置は、操作者が前記入力装置に入力した力の大きさを検出するセンサを有することを特徴とする請求項１記載の情報処理装置。
【請求項９】
表示装置上に表示するポインタの表示座標を、入力装置からの入力座標に基づいて定める情報処理装置であって、
前記入力装置に入力される移動の加速度が略同一である２つの操作について、
前記表示装置上の前記ポインタの移動速度が相対的に小さい方の前記操作における前記表示装置上の前記ポインタの移動の加速度が、前記表示装置上の前記ポインタの移動速度が相対的に大きい方の前記操作における前記表示装置上の前記ポインタの移動の加速度より小さく設定できることを特徴とする情報処理装置。
【請求項１０】
表示装置上に表示するポインタの表示座標を、入力装置からの入力座標に基づいて定める情報処理装置であって、
操作者が、前記入力装置に一定の移動速度を入力する第１の操作と、前記入力装置に前記第１の操作の移動速度と比較し小さい一定の移動速度を入力する第２の操作のそれぞれを、前記入力装置が操作されていない状態において行った場合について、
前記第１の操作の開始から前記ポインタの移動速度が前記第１の操作の移動速度に達するまでに要する時間が、前記第２の操作の開始から前記ポインタの移動速度が前記第２の操作の移動速度に達するまでに要する時間と比較し短かく設定できることを特徴とする情報処理装置。
【請求項１１】
表示装置上に表示するポインタの表示座標を、入力装置からの入力座標に基づいて定める情報処理装置用のプログラムであって、
前記情報処理装置に、
時系列としてサンプリングされた複数の前記入力座標間の移動距離を算出させる移動距離算出手段と、
サンプリングされた１以上の前記入力座標を平均して前記表示座標を算出させる平均算出手段と、
前記移動距離に基づき、前記平均算出部が前記表示座標の算出に使用する前記入力座標の、前記時系列における範囲を変更させる範囲変更手段と
を備えることを特徴とするプログラム。
【請求項１２】
表示装置上に表示するポインタの表示座標を、入力装置からの入力座標に基づいて定める情報処理装置用のプログラムであって、
前記情報処理装置に、
前記入力装置に入力される移動の加速度が略同一である２つの操作について、
前記表示装置上の前記ポインタの移動速度が相対的に小さい方の前記操作における前記表示装置上の前記ポインタの移動の加速度を、前記表示装置上の前記ポインタの移動速度が相対的に大きい方の前記操作における前記表示装置上の前記ポインタの移動の加速度より小さく設定可能とさせることを特徴とするプログラム。
【請求項１３】
表示装置上に表示するポインタの表示座標を、入力装置からの入力座標に基づいて定める情報処理装置用のプログラムであって、
前記情報処理装置に、
操作者が、前記入力装置に一定の移動速度を入力する第１の操作と、前記入力装置に前記第１の操作の移動速度と比較し小さい一定の移動速度を入力する第２の操作のそれぞれを、前記入力装置が操作されていない状態において行った場合に、
前記第１の操作の開始から前記ポインタの移動速度が前記第１の操作の移動速度に達するまでに要する時間が、前記第２の操作の開始から前記ポインタの移動速度が前記第２の操作の移動速度に達するまでに要する時間と比較し短かく設定可能とさせることを特徴とするプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、情報処理装置及びプログラムに関する。特に本発明は、表示装置上に表示するポインタの表示座標を、入力装置からの入力座標に基づいて定める情報処理装置及びプログラムに関する。
【０００２】
【従来の技術】
従来、デスクトップ型やノート型等のパーソナルコンピュータ、携帯情報端末、端末装置等の情報処理装置へ座標を入力する手段として、マウス、トラックボール、トラックポイント（商標）、タッチパネル、タッチパッド、又はタブレット等のポインティングデバイスによる入力装置が多用されている。この様な入力装置は、主に、表示装置上に表示された文字又は図形を指示するポインタの表示座標を指定又は変更するために使用される。
【０００３】
この様な入力装置は、主に人間の操作をディジタル値である入力座標に変換する。この変換の過程で、ノイズによる誤差、人間の指の微小な震え、操作を入力したアナログ値が２つのディジタル値の境界に位置することによるゆれ等の要因で、入力座標の下位ビットに変動が生じる。この結果、表示装置上のポインタが細かく振動する。
【０００４】
以上に示した振動要因を抑える技術は、例えば特開２０００−２００１５１や、特開平９−６２４５０に開示されている。
特開２０００−２００１５１は、ポインタの一種であるカーソルの振動を検出し、その振動を平均化してカーソル位置表示とする技術を開示する。
特開平９−６２４５０は、ポインタの移動加速度を算出し、移動加速度が所定の範囲を越える場合に入力座標の指定位置を誤検出したと判別する技術を開示する。
【０００５】
【発明が解決しようとする課題】
以上に示した従来技術においては、平均化による抑制又は誤検出による除外を行うことにより、人間の指の震えやノイズによる誤差を低減する。一方、入力装置としては、ポインタの振動の抑制と、ポインタ移動の応答性の良さやスムースさ等とを両立することが望ましい。
【０００６】
そこで本発明は、上記の課題を解決することのできる情報処理装置及びプログラムを提供することを目的とする。この目的は特許請求の範囲における独立項に記載の特徴の組み合わせにより達成される。また従属項は本発明の更なる有利な具体例を規定する。
【０００７】
【課題を解決するための手段】
即ち、本発明の第１の形態によると、表示装置上に表示するポインタの表示座標を、入力装置からの入力座標に基づいて定める情報処理装置であって、時系列としてサンプリングされた複数の前記入力座標間の移動距離を算出する移動距離算出部と、サンプリングされた１以上の前記入力座標を平均して前記表示座標を算出する平均算出部と、前記移動距離に基づき、前記平均算出部が前記表示座標の算出に使用する前記入力座標の、前記時系列における範囲を変更する範囲変更部とを備えることを特徴とする情報処理装置を提供する。
【０００８】
前記範囲変更部は、前記移動距離に対応して、前記平均算出部が前記表示座標の算出に使用する前記入力座標の、前記時系列における時間幅を変更してもよい。
【０００９】
前記範囲変更部は、前記移動距離が大きい場合の前記時間幅を、前記移動距離が小さい場合の前記時間幅と比較し小さくしてもよい。
【００１０】
前記範囲変更部は、直前に前記平均算出部が使用した前記入力座標より過去にサンプリングされた前記入力座標を、前記平均算出部が使用する前記入力座標の前記範囲から除外してもよい。
【００１１】
前記範囲変更部は、前記移動距離の変化量に対応して、前記平均算出部が前記表示座標の算出に使用する前記入力座標の、前記時系列における時間幅を変更してもよい。
【００１２】
前記範囲変更部は、前記移動距離に基づき前記入力装置に前記入力座標の移動が入力されていないと判断した場合における前記入力座標の変動を低減する様に、前記平均算出部が前記表示座標の算出に使用する前記入力座標の、前記時系列における時間幅を設定してもよい。
【００１３】
前記範囲変更部は、前記時間幅を前記入力座標の変動の周期以上に設定してもよい。
【００１４】
前記入力装置は、操作者が前記入力装置に入力した力の大きさを検出するセンサを有してもよい。
【００１５】
本発明の第２の形態によると、表示装置上に表示するポインタの表示座標を、入力装置からの入力座標に基づいて定める情報処理装置であって、前記入力装置に入力される移動の加速度が略同一である２つの操作について、前記表示装置上の前記ポインタの移動速度が相対的に小さい方の前記操作における前記表示装置上の前記ポインタの移動の加速度を、前記表示装置上の前記ポインタの移動速度が相対的に大きい方の前記操作における前記表示装置上の前記ポインタの移動の加速度より小さく設定できることを特徴とする情報処理装置を提供する。
【００１６】
本発明の第３の形態によると、表示装置上に表示するポインタの表示座標を、入力装置からの入力座標に基づいて定める情報処理装置であって、操作者が、前記入力装置に一定の移動速度を入力する第１の操作と、前記入力装置に前記第１の操作の移動速度と比較し小さい一定の移動速度を入力する第２の操作のそれぞれを、前記入力装置が操作されていない状態において行った場合に、前記第１の操作の開始から前記ポインタの移動速度が前記第１の操作の移動速度に達するまでに要する時間が、前記第２の操作の開始から前記ポインタの移動速度が前記第２の操作の移動速度に達するまでに要する時間と比較し短かく設定できることを特徴とする情報処理装置を提供する。
【００１７】
本発明の第４の形態によると、表示装置上に表示するポインタの表示座標を、入力装置からの入力座標に基づいて定める情報処理装置用のプログラムであって、前記情報処理装置に、時系列としてサンプリングされた複数の前記入力座標間の移動距離を算出させる移動距離算出手段と、サンプリングされた１以上の前記入力座標を平均して前記表示座標を算出させる平均算出手段と、前記移動距離に基づき、前記平均算出部が前記表示座標の算出に使用する前記入力座標の、前記時系列における範囲を変更させる範囲変更手段とを備えることを特徴とするプログラムを提供する。
【００１８】
本発明の第５の形態によると、表示装置上に表示するポインタの表示座標を、入力装置からの入力座標に基づいて定める情報処理装置用のプログラムであって、前記情報処理装置に、前記入力装置に入力される移動の加速度が略同一である２つの操作について、前記表示装置上の前記ポインタの移動速度が相対的に小さい方の前記操作における前記表示装置上の前記ポインタの移動の加速度を、前記表示装置上の前記ポインタの移動速度が相対的に大きい方の前記操作における前記表示装置上の前記ポインタの移動の加速度より小さく設定可能とさせることを特徴とするプログラムを提供する。
【００１９】
本発明の第６の形態によると、表示装置上に表示するポインタの表示座標を、入力装置からの入力座標に基づいて定める情報処理装置用のプログラムであって、前記情報処理装置に、操作者が、前記入力装置に一定の移動速度を入力する第１の操作と、前記入力装置に前記第１の操作の移動速度と比較し小さい一定の移動速度を入力する第２の操作のそれぞれを、前記入力装置が操作されていない状態において行った場合に、前記第１の操作の開始から前記ポインタの移動速度が前記第１の操作の移動速度に達するまでに要する時間が、前記第２の操作の開始から前記ポインタの移動速度が前記第２の操作の移動速度に達するまでに要する時間と比較し短かく設定可能とさせることを特徴とするプログラムを提供する。
【００２０】
なお上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではなく、これらの特徴群のサブコンビネーションも又発明となりうる。
【００２１】
【発明の実施の形態】
以下、発明の実施形態を通じて本発明を説明するが、実施形態はクレームにかかる発明を限定するものではなく、また実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【００２２】
図１は、本発明の実施形態に係る情報処理装置１００の構成を示す。本実施形態に係る情報処理装置１００は、入力装置１１０、移動距離算出部１２０、平均算出部１３０、範囲変更部１４０及び表示装置１５０を備える。
【００２３】
入力装置１１０は、情報処理装置１００の操作者による操作に基づき、移動距離算出部１２０に入力座標を与える。本実施形態に係る入力装置１１０は、タッチパネル１６０、ＡＤコンバータ１８０、及びインターフェイス１９０を有する。
タッチパネル１６０は、操作者が指又は専用のペン等を用いてタッチパネル１６０上で入力するｘ座標及びｙ座標を、入力座標のアナログ信号として出力する。タッチパネル１６０は、センサ１７０を含む。センサ１７０は、操作者がタッチパネル１６０に触れたことを感知して、アナログ信号を生成する。ＡＤコンバータ１８０は、タッチパネル１６０が出力した入力座標のアナログ信号を、ディジタル信号に変換する。インターフェイス１９０は、ＡＤコンバータ１８０が出力した入力座標のディジタル信号を例えば一定周期毎等の時系列としてサンプリングする。そして、インターフェイス１９０は、サンプリングしたディジタル値である入力座標を、例えば定期的に移動距離算出部１２０に送信する。
【００２４】
入力装置１１０は、本実施形態に係るタッチパネル１６０、ＡＤコンバータ１８０、及び／又はインターフェイス１９０に代えて、マウス、トラックボール、トラックポイント（商標）、タッチパッド、又はタブレット等のポインティングデバイスを有してもよい。この様なポインティングデバイスとしては、タッチパネル１６０に対応する部品として、入力座標のアナログ信号又はディジタル信号を出力するもの、入力された移動量のアナログ信号又はディジタル信号を出力するもの、入力された移動方向のアナログ信号又はディジタル信号を出力するもの等が用いられる。いずれの場合においても、入力装置１１０からの入力から表示装置１５０上のポインタの表示座標を算出する過程で、インターフェイス１９０に相当する回路又はデバイスドライバ等のプログラムが入力座標に相当する情報を生成する。
また、入力装置１１０は、トラックポイント（商標）等のポインティングデバイスを有する場合、センサ１７０として、例えば圧電素子や歪みゲージ式センサ等の、操作者がポインティングデバイスに入力した力の大きさを検出するセンサを含んでもよい。この場合、入力装置１１０は、センサ１７０から入力された力の大きさを、例えば移動速度の大きさ等と見なして入力座標を算出する。
【００２５】
移動距離算出部１２０は、時系列としてサンプリングされた複数の入力座標を入力装置１１０から取得し、入力座標間の移動距離を算出する。本実施形態に係る移動距離算出部１２０は、一例として、入力装置１１０から受信した入力座標と、直前に入力した入力座標とを用いて移動距離を算出する。ここで、移動距離算出部１２０は、移動距離としてユークリッド距離を用いてもよいし、非ユークリッド距離を用いてもよい。
【００２６】
平均算出部１３０は、入力装置１１０から入力された入力座標を移動距離算出部１２０を介して取得する。そして、平均算出部１３０は、範囲変更部１４０により指定される範囲に属する１以上の入力座標を平均して表示装置１５０上にポインタを表示する表示座標を算出する。ここで、平均算出部１３０は、平均の算出方法として、相加平均に代えて、加重平均、相乗平均等の種々の方法を用いてもよい。
【００２７】
範囲変更部１４０は、移動距離算出部１２０が算出した移動距離に基づき、平均算出部１３０が表示座標の算出に使用する入力座標の、時系列における範囲を変更する。本実施形態に係る範囲変更部１４０は、この様な時系列における範囲の変更の一例として、平均算出部１３０が表示座標の算出に使用する入力座標の、時系列における時間幅を変更する。他の形態として、例えば範囲変更部１４０は、平均算出部１３０が表示座標の算出に使用する入力座標の、時系列における位置及び時間幅の両方を変更してもよい。
【００２８】
表示装置１５０は、範囲変更部１４０が算出した表示座標に対応する位置に、ポインタを表示する。
【００２９】
本実施形態において、情報処理装置１００は、本発明に係る入力座標及び表示座標の一例である２次元座標を使用する。ただし、本発明に係る入力座標及び表示座標は、２次元座標の他に、１次元座標や３次元座標等の種々の座標であってよい。例えば入力装置１１０は、例えば手の動きを入力するグローブ状の入力装置等の３次元座標の入力装置であってよい。また、表示装置１５０は、例えば工作機械やロボット等の機械的に３次元空間内で動作して位置を表現する装置や、３次元座標を２次元に投影して画面に表示する表示装置等の３次元座標の表示装置であってよい。
【００３０】
また、入力装置１１０及び／又は表示装置１５０は、一部又は全部が情報処理装置１００の外部に設けられてもよい。すなわち例えば、入力装置１１０及び／又は表示装置１５０は、情報処理装置１００とコネクタ等で接続されてもよい。この様な場合においても、移動距離算出部１２０、平均算出部１３０及び範囲変更部１４０を備える情報処理装置は、本発明に係る情報処理装置に相当する。
【００３１】
図２は、本発明の実施形態に係る情報処理装置１００の処理の流れを示す。本実施形態に係る範囲変更部１４０は、移動距離算出部１２０が算出した移動距離に基づき、平均算出部１３０が表示座標の算出に使用する、連続する入力座標の個数Ｎを変更する。範囲変更部１４０は、このＮの値を変更することにより、入力座標の時系列における時間幅を変更することができる。具体的には、範囲変更部１４０は、予め設定された移動距離のしきい値ＴＨ１及びＴＨ２（ただし、０＜ＴＨ１＜ＴＨ２）と、Ｎの設定値Ｎ１、Ｎ２及びＮ３（ただし、Ｎ１＞Ｎ２＞Ｎ３＞０）を用いて、移動距離＜ＴＨ１の場合にＮ＝Ｎ１、ＴＨ１≦移動距離＜ＴＨ２の場合にＮ＝Ｎ２、ＴＨ２≦移動距離の場合にＮ＝Ｎ３とする。
本実施形態に代えて、範囲変更部１４０は、１若しくは３以上のしきい値、及びそれぞれのしきい値に対応するＮの設定値を用いて、Ｎの値を設定してもよい。また、範囲変更部１４０は、移動距離を入力とし、Ｎの設定値を出力とする関数を用いてＮの値を設定してもよい。
【００３２】
まず、入力装置１１０は、操作者の操作に基づき時系列として入力座標を取得し、移動距離算出部１２０に送信する（Ｓ２００）。次に、移動距離算出部１２０は、時系列としてサンプリングされた複数の入力座標を入力装置１１０から取得し、入力座標間の移動距離を算出する（Ｓ２１０）。
【００３３】
次に、範囲変更部１４０は、移動距離算出部１２０が算出した移動距離を、ＴＨ１と比較する（Ｓ２２０）。移動距離がＴＨ１と比較し小さい場合、範囲変更部１４０は、Ｎの新しい設定値であるＮｎｅｗをＮ１とし、処理をＳ２７０に進める（Ｓ２４０）。
一方、移動距離がＴＨ１と比較し小さくない場合、範囲変更部１４０は、移動距離算出部１２０が算出した移動距離を、ＴＨ２と比較する（Ｓ２３０）。移動距離がＴＨ２と比較し小さい場合、範囲変更部１４０は、ＮｎｅｗをＮ２とする（Ｓ２５０）。一方、範囲変更部１４０は、移動距離がＴＨ２と比較し小さくない場合、範囲変更部１４０は、ＮｎｅｗをＮ３とする（Ｓ２６０）。
ここで、範囲変更部１４０は、Ｓ２２０及び／又はＳ２３０の比較で使用する移動距離として、種々のものを用いてよい。例えば、範囲変更部１４０は、移動距離算出部１２０から取得した最新の移動距離を用いて、Ｓ２２０及びＳ２３０の比較を行ってもよい。あるいは例えば、範囲変更部１４０は、最新のＮ２個の移動距離の最大値を用いてＳ２２０の比較を行い、最新のＮ３個の移動距離の最大値を用いてＳ２３０の比較を行ってもよい。
【００３４】
次に、範囲変更部１４０は、Ｎｎｅｗの値に基づきＮを変更する（Ｓ２７０）。Ｓ２７０の処理の一例として、本実施形態に係る範囲変更部１４０は、Ｎｎｅｗが直前に使用したＮの値より大きい場合には、Ｎを１増加させてＮの値をＮｎｅｗに近づける。また、範囲変更部１４０は、Ｎｎｅｗが直前に使用したＮの値以下の場合には、ＮにＮｎｅｗを代入する。これにより、範囲変更部１４０は、入力座標の取得毎に最大で１ずつＮを増加させる。従って、範囲変更部１４０は、直前に平均算出部１３０が使用した入力座標より過去にサンプリングされた入力座標を、平均算出部１３０が表示座標の算出で使用する入力座標の範囲から除外することができる。
この処理に代えて、例えば範囲変更部１４０は、Ｎを例えば１ずつ増減してＮｎｅｗに徐々に近づける処理を行ってもよい。
【００３５】
次に、平均算出部１３０は、入力装置１１０から入力された入力座標を移動距離算出部１２０を介して取得する。そして、平均算出部１３０は、最新のＮ個の入力座標を平均して、表示装置１５０上にポインタを表示する表示座標を算出する（Ｓ２８０）。表示装置１５０は、範囲変更部１４０が算出した表示座標に対応する位置に、ポインタを表示する。
【００３６】
以上に示した様に、範囲変更部１４０は、Ｓ２２０〜Ｓ２６０において、移動距離＜ＴＨ１の場合にＮｎｅｗ＝Ｎ１、ＴＨ１≦移動距離＜ＴＨ２の場合にＮｎｅｗ＝Ｎ２、ＴＨ２≦移動距離の場合にＮｎｅｗ＝Ｎ３を設定する。これにより、範囲変更部１４０は、移動距離が大きい場合の時間幅を、移動距離が小さい場合の時間幅と比較し小さくする。これにより、情報処理装置１００は、移動距離が小さい場合に十分な時間幅を設定して表示装置１５０に表示されるポインタの振動を抑えると共に、移動距離が大きい場合に時間幅を小さくして応答性を高める。この様に、情報処理装置１００は、移動距離に応じて適切なＮの値を設定することにより、ポインタの振動の抑制と、ポインタの移動の応答性の良さやスムースさを両立する。
【００３７】
図３は、本発明の実施形態に係る情報処理装置１００における入力座標の移動速度と表示の関係の一例を示す。図３のグラフは、横軸に時間、縦軸に入力座標又は表示座標の座標値をとる。本グラフにおける座標は、説明の便宜上ｘ座標の座標値のみを示すが、ｙ座標についても同様である。
【００３８】
本グラフは、操作者が入力装置１１０を操作せず静止状態とした区間Ａ、入力装置１１０をＴＨ１＜移動距離＜ＴＨ２となる速度で動かした区間Ｂ、及び入力装置１１０を移動距離＞ＴＨ２となる速度で動かした区間Ｃにおける入力座標と出力座標の関係を示す。
【００３９】
区間Ａにおいて、操作者は、入力装置１１０を操作していない。この場合、入力装置１１０が移動距離算出部１２０に送信する入力座標は、ノイズによる誤差、人間の指の微小な震え、操作を入力したアナログ値が２つのディジタル値の境界に位置することによるゆれ等の要因で変動する。範囲変更部１４０は、平均算出部１３０が平均の算出に使用する入力座標の個数を、Ｎ２及びＮ３と比較し大きいＮ１とする。ここで範囲変更部１４０は、入力装置１１０における入力座標のサンプル周期や人間の指の震えの周期等と比較し、十分大きい時間幅を指定する様Ｎ１の値を設定しておく。この設定により、範囲変更部１４０は、移動距離＜ＴＨ１の場合、入力装置１１０に入力座標の移動が入力されていないものと判断し、入力座標の変動を低減する様に時系列における時間幅を設定することができる。また、この設定により、範囲変更部１４０は、移動距離＜ＴＨ１の場合、入力装置１１０に入力座標の移動が入力されていないものと判断し、入力座標の変動を低減する様に時間幅を入力座標の変動の周期以上に設定することができる。
【００４０】
区間Ｂ及び区間Ｃにおいて、操作者は、入力装置１１０に入力される移動の加速度が同一値αである操作を、区間Ｂにおけるサンプル点Ｂ１及び区間Ｃにおけるサンプル点Ｃ１で行っている。
区間Ｂにおいて、平均算出部１３０は、Ｎ２個の入力座標の平均値を算出し、表示座標とする。このため、等速の移動においてサンプル点Ｂ１の入力座標のみを加速度α分移動させると、表示座標の移動の加速度β１は、α／Ｎ２となる。一方、区間Ｃにおいて、平均算出部１３０は、Ｎ３個の入力座標の平均値を算出し、表示座標とする。このため、等速の移動においてサンプル点Ｃ１の入力座標のみを加速度α分移動させると、表示座標の移動の加速度β２は、α／Ｎ３となる。
【００４１】
ここでＮ２＞Ｎ３に設定することで、本実施形態に係る情報処理装置１００は、表示装置１５０上のポインタの移動速度がより小さい操作である区間Ｂにおける表示装置１５０上のポインタの移動の加速度を、表示装置１５０上のポインタの移動速度がより大きい操作である区間Ｃにおける表示装置１５０上のポインタの移動の加速度と比較し小さくすることができる。この様にして、情報処理装置１００は、移動速度が小さい場合に表示装置１５０に表示されるポインタの加速度を小さくして振動を抑えると共に、移動速度が大きい場合に加速度を大きくしてポインタ移動の応答性を高める。
【００４２】
図４は、本発明の実施形態に係る情報処理装置１００における入力座標の移動開始時における表示の一例を示す。図４のグラフは、入力装置１１０が操作されていない状態（サンプル点Ｉ３までの状態）において、操作者が入力装置１１０に一定の移動速度を入力する操作を行った場合における、時間と座標値の関係を示す。図４の上側のグラフは、移動距離がＴＨ２より大きい移動速度の操作Ｄを行った場合における時間と座標値の関係を示す。図４の下側のグラフは、ＴＨ１＜移動距離＜ＴＨ２の移動速度の操作Ｅを行った場合における時間と座標値の関係を示す。本グラフにおける座標は、説明の便宜上ｘ座標の座標値のみを示すが、ｙ座標についても同様である。また、図４においては、本実施形態に係るＮ２及びＮ３の一例として、Ｎ２＝５、Ｎ３＝３が設定されているものとする。
【００４３】
図４の上側のグラフにおいて、平均算出部１３０は、３（＝Ｎ３）個の入力座標の平均値を表示座標とする。すなわち、例えばＩ４が入力された時点で平均算出部１３０は、Ｉ２、Ｉ３、及びＩ４の平均値を表示座標とする。また、例えばＩ５が入力された時点で平均算出部１３０は、Ｉ３、Ｉ４、Ｉ５の平均値を表示座標とする。このことから、操作Ｄにおいては、Ｉ５の時点で、ポインタの移動速度が入力された移動速度に達することがわかる。
【００４４】
一方、図４の下側のグラフにおいて、平均算出部１３０は、５（＝Ｎ２）個の入力座標の平均値を表示座標とする。すなわち、例えばＩ６が入力された時点で平均算出部１３０は、Ｉ２〜Ｉ６の平均値を表示座標とする。また、例えばＩ７が入力された時点で平均算出部１３０は、Ｉ３〜Ｉ６の平均値を表示座標とする。このことから、操作Ｅにおいては、Ｉ７の時点で、ポインタの移動速度が入力された移動速度に達することがわかる。
【００４５】
すなわち、Ｎ２＞Ｎ３に設定されると、本実施形態に係る情報処理装置１００は、操作者が、入力装置１１０に一定の移動速度を入力する操作Ｄと、操作Ｄの移動速度と比較し小さい一定の移動速度を入力する操作Ｅのそれぞれを、入力装置１１０が操作されていない状態において行った場合に、操作Ｄの開始からポインタの移動速度が操作Ｄの移動速度に達するまでに要する時間が、操作Ｅの開始からポインタの移動速度が操作Ｅの移動速度に達するまでに要する時間と比較し短かくすることができる。これにより、情報処理装置１００は、移動速度が大きい場合におけるポインタ移動の応答性を高める。
【００４６】
図５は、本発明の実施形態に係る情報処理装置１００における入力座標の使用範囲と表示の関係の一例を示す。図５のグラフは、移動距離＞ＴＨ２となる一定の移動速度を入力装置１１０に入力した後移動を停止した場合における、時間と座標値の関係を示す。図５の上側のグラフは、図２のＳ２７０において、範囲変更部１４０が常にＮにＮｎｅｗを代入する場合における、入力座標と表示座標の関係を示す。一方、図５の下側のグラフは、図２のＳ２７０において、範囲変更部１４０が、Ｎｎｅｗが直前に使用したＮの値より大きい際にＮを１増加させる場合における、入力座標と表示座標の関係を示す。本グラフにおける座標は、説明の便宜上ｘ座標の座標値のみを示すが、ｙ座標についても同様である。また、図５においては、本実施形態に係るＮ１及びＮ３の一例として、Ｎ１＝６、Ｎ３＝３が設定されているものとする。
【００４７】
図５の上側のグラフにおいて、範囲変更部１４０は、時刻ｔ６の時点でＮ＝Ｎ３を設定する。このため、平均算出部１３０は、時刻ｔ６において、入力座標Ｉ４〜Ｉ６の平均を算出し表示座標とする。次に、範囲変更部１４０は、時刻ｔ７の時点でＮ＝Ｎ１に設定する。このため、平均算出部１３０は、時刻ｔ７において、入力座標Ｉ２〜Ｉ７の平均を算出し表示座標とする。この場合、平均算出部１３０が出力する表示座標は、時刻ｔ６より過去の入力座標であるＩ２及びＩ３を時刻ｔ７で使用する結果、時刻ｔ６と時刻ｔ７の間で入力座標の移動と反対の方向に移動する。情報処理装置１００は、この様な表示を行うと、ポインタ移動のスムースさを損ねる。
【００４８】
一方、図５の下側のグラフにおいて、範囲変更部１４０は、時刻ｔ６の時点でＮ＝Ｎ３を設定する。このため、平均算出部１３０は、時刻ｔ６において、入力座標Ｉ４〜Ｉ６の平均を算出し表示座標とする。次に、範囲変更部１４０は、時刻ｔ７以降においてＮの値を１ずつ増加させ、時刻ｔ９の時点でＮ＝Ｎ１に設定する。このため、平均算出部１３０は、時刻ｔ７以降において、入力座標Ｉ４以降を使用して平均を算出し表示座標とする。この様に、範囲変更部１４０は、時刻ｔ７以降において、直前の時刻ｔ６で平均算出部１３０が使用した入力座標Ｉ４〜Ｉ６より過去にサンプリングされたＩ３以前の入力座標を、平均算出部１３０が表示座標の算出で使用する入力座標の範囲から除外する様に、Ｎの値を設定する。これにより、情報処理装置１００は、図５の上側のグラフの様な移動を防止し、ポインタ移動をスムースに行うことができる。
【００４９】
図６は、本発明の実施形態に係る表示装置１５０におけるポインタ５１０の表示の一例を示す。図６において、操作者は、入力装置１１０を操作していない。この場合、入力装置１１０が移動距離算出部１２０に送信する入力座標は、ノイズによる誤差、人間の指の微小な震え、操作を入力したアナログ値が２つのディジタル値の境界に位置することによるゆれ等の要因で変動する。図中のｘ方向及びｙ方向の矢印は、この要因によるポインタ５１０の振動を示す。図３の区間Ａにおいてｘ座標を例として示した様に、情報処理装置１００は、入力装置１１０における入力座標のサンプル周期や人間の指の震えの周期等と比較し十分大きい時間幅を用いて、入力座標の振動を平均化して表示座標を算出する。そして、情報処理装置１００は、算出した表示座標を用いてポインタ５１０を表示する。これにより、情報処理装置１００は、ポインタ５１０の振動を抑制することができる。
【００５０】
図７は、本発明の実施形態に係る表示装置１５０における入力軌跡６１０、表示軌跡Ａ６２０及び表示軌跡Ｂ６３０の関係の一例を示す。
【００５１】
入力軌跡６１０は、操作者が入力装置１１０に入力した入力座標を画面５００上に示した軌跡の一例である。表示軌跡Ａ６２０は、平均算出部１３０が常にＮ１個の入力座標を平均して表示座標を算出した場合における、入力軌跡６１０に対応する表示座標の軌跡の一例である。表示軌跡Ｂ６３０は、本実施形態に係る情報処理装置１００による、入力軌跡６１０に対応する表示座標の軌跡の一例である。
【００５２】
表示軌跡Ａ６２０においては、図３及び図４におけるＴＨ１＜移動速度＜ＴＨ２の場合と同様に、表示軌跡Ｂ６３０と比較しポインタの移動の加速度が小さくなる。この結果、入力軌跡６１０の移動に対する応答性が、表示軌跡Ｂ６３０と比較し悪化する。一方、情報処理装置１００は、表示軌跡Ｂ６３０の表示において、移動速度が大きい場合におけるポインタの移動の加速度を、表示軌跡Ａ６２０と比較し大きくしている。これにより、情報処理装置１００は、ポインタ移動の応答性の良さ及びスムースさを実現することができる。
【００５３】
図８は、本発明の実施形態の変形例に係る情報処理装置１００の処理の流れを示す。本実施形態に係る情報処理装置１００においては、移動距離算出部１２０は、移動距離の時間変化に基づき移動距離の変化量、すなわち移動の加速度を算出する。また、範囲変更部１４０は、移動距離算出部１２０が算出した移動距離の変化量に基づき、平均算出部１３０が表示座標の算出に使用する、連続する入力座標の個数Ｎを変更する。範囲変更部１４０は、このＮの値を変更することにより、入力座標の時系列における時間幅を変更することができる。具体的には、範囲変更部１４０は、予め設定された移動距離の変化量のしきい値ＴＨ１及びＴＨ２（ただし、０＜ＴＨ１＜ＴＨ２）と、Ｎの設定値Ｎ１、Ｎ２及びＮ３（ただし、Ｎ１＞Ｎ２＞Ｎ３＞０）を用いて、移動距離の変化量＜ＴＨ１の場合にＮ＝Ｎ１、ＴＨ１≦移動距離の変化量＜ＴＨ２の場合にＮ＝Ｎ２、ＴＨ２≦移動距離の変化量の場合にＮ＝Ｎ３とする。
本実施形態に代えて、範囲変更部１４０は、１若しくは３以上のしきい値、及びそれぞれのしきい値に対応するＮの設定値を用いて、Ｎの値を設定してもよい。また、範囲変更部１４０は、移動距離の変化量を入力とし、Ｎの設定値を出力とする関数を用いてＮの値を設定してもよい。
【００５４】
まず、入力装置１１０は、操作者の操作に基づき入力座標を取得し、移動距離算出部１２０に送信する（Ｓ７００）。次に、移動距離算出部１２０は、時系列としてサンプリングされた複数の入力座標を入力装置１１０から取得し、入力座標間の移動距離及び移動距離の変化量を算出する（Ｓ７１０）。
【００５５】
次に、範囲変更部１４０は、移動距離算出部１２０が算出した移動距離の変化量を、ＴＨ１と比較する（Ｓ７２０）。移動距離の変化量がＴＨ１と比較し小さい場合、範囲変更部１４０は、Ｎの新しい設定値であるＮｎｅｗをＮ１とし、処理をＳ７７０に進める（Ｓ７４０）。
一方、移動距離の変化量がＴＨ１と比較し小さくない場合、範囲変更部１４０は、移動距離算出部１２０が算出した移動距離の変化量を、ＴＨ２と比較する（Ｓ７３０）。移動距離の変化量がＴＨ２と比較し小さい場合、範囲変更部１４０は、ＮｎｅｗをＮ２とする（Ｓ７５０）。一方、範囲変更部１４０は、移動距離の変化量がＴＨ２と比較し小さくない場合、範囲変更部１４０は、ＮｎｅｗをＮ３とする（Ｓ７６０）。
ここで、範囲変更部１４０は、Ｓ７２０及び／又はＳ７３０の比較で使用する移動距離の変化量として、種々のものを用いてよい。例えば、範囲変更部１４０は、移動距離算出部１２０から取得した最新の移動距離の変化量を用いて、Ｓ７２０及びＳ７３０の比較を行ってもよい。あるいは例えば、範囲変更部１４０は、最新のＮ２個の移動距離の変化量の最大値を用いてＳ７２０の比較を行い、最新のＮ３個の移動距離の変化量の最大値を用いてＳ７３０の比較を行ってもよい。
【００５６】
次に、範囲変更部１４０は、Ｎｎｅｗの値に基づきＮを変更する（Ｓ７７０）。Ｓ２７０の処理の一例として、本実施形態に係る範囲変更部１４０は、Ｎｎｅｗが直前に使用したＮの値より大きい場合には、Ｎを１増加させてＮの値をＮｎｅｗに近づける。また、範囲変更部１４０は、Ｎｎｅｗが直前に使用したＮの値以下の場合には、ＮにＮｎｅｗを代入する。これにより、範囲変更部１４０は、入力座標の取得毎に最大で１ずつＮを増加させる。従って、範囲変更部１４０は、直前に平均算出部１３０が使用した入力座標より過去にサンプリングされた入力座標を、平均算出部１３０が表示座標の算出で使用する入力座標の範囲から除外することができる。
この処理に代えて、例えば範囲変更部１４０は、Ｎを例えば１ずつ増減してＮｎｅｗに徐々に近づける処理を行ってもよい。
【００５７】
次に、平均算出部１３０は、入力装置１１０から入力された入力座標を移動距離算出部１２０を介して取得する。そして、平均算出部１３０は、最新のＮ個の入力座標を平均して、表示装置１５０上にポインタを表示する表示座標を算出する（Ｓ７８０）。表示装置１５０は、範囲変更部１４０が算出した表示座標に対応する位置に、ポインタを表示する。
【００５８】
以上に示した様に、範囲変更部１４０は、Ｓ７２０〜Ｓ７６０において、移動距離の変化量＜ＴＨ１の場合にＮｎｅｗ＝Ｎ１、ＴＨ１≦移動距離の変化量＜ＴＨ２の場合にＮｎｅｗ＝Ｎ２、ＴＨ２≦移動距離の変化量の場合にＮｎｅｗ＝Ｎ３を設定する。これにより、範囲変更部１４０は、移動距離の変化量が大きい場合の時間幅を、移動距離の変化量が小さい場合の時間幅と比較し小さくする。これにより、情報処理装置１００は、移動距離の変化量が小さい場合に十分な時間幅を設定して表示装置１５０に表示されるポインタの振動を抑えると共に、移動距離の変化量が大きい場合に時間幅を小さくしてポインタの移動の応答性を高める。また、範囲変更部１４０は、移動距離に代えて移動距離の変化量に基づき時間幅を変更することにより、ポインタを一定速度で移動させている場合においてもポインタの振動を抑えることができる。
【００５９】
図９は、本発明の実施形態に係る情報処理装置１００のハードウェア構成を示す。本実施形態に係る情報処理装置１００の機能は、ＣＰＵ８１０、ＲＯＭ８２０、ＲＡＭ８３０、通信インターフェイス８４０、ハードディスクドライブ８５０、入力装置１１０、及び表示装置１５０を備える計算機８００と、計算機８００上で実行されるプログラムとの連携により実現される。計算機８００は、フロッピーディスクドライブ８６０及び／又はＣＤ−ＲＯＭドライブ８７０を更に備えてもよい。
【００６０】
情報処理装置１００を実現するプログラムは、入力装置モジュールと、移動距離算出モジュールと、平均算出モジュールと、範囲変更モジュールと、表示装置モジュールとを備える。これらのモジュールは、計算機８００を、入力装置１１０、移動距離算出部１２０、平均算出部１３０、範囲変更部１４０、及び表示装置１５０として動作させるプログラムである。
【００６１】
以上に示したプログラム又はモジュールは、外部の記憶媒体に格納されてもよい。記憶媒体としては、フロッピーディスク８８０、ＣＤ−ＲＯＭ８９０の他に、ＤＶＤやＰＤ等の光学記録媒体、ＭＤ等の光磁気記録媒体、テープ媒体、ＩＣカード等の半導体メモリ等を用いることができる。また、専用通信ネットワークやインターネットに接続されたサーバシステムに設けたハードディスク又はＲＡＭ等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムを計算機８００に提供してもよい。
【００６２】
以上、本発明を実施形態を用いて説明したが、本発明の技術的範囲は上記実施形態に記載の範囲には限定されない。上記実施形態に、多様な変更または改良を加えることができる。そのような変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【００６３】
例えば、タッチパネル１６０等の入力座標を直接操作者に指示させるポインティングデバイスを用いる場合において、移動距離算出部１２０は、入力装置１１０から指又はペン等が離れたことを、入力装置１１０からの信号、移動距離、又は移動距離の変化量に基づき検出してもよい。そして、範囲変更部１４０は、入力装置から指又はペン等が離れた場合に、Ｎを１に設定してもよい。これにより、情報処理装置１００は、操作者が入力した入力座標が不連続な場合において、２以上の入力座標の平均を算出することを防止し、不連続な表示座標を出力することができる。
【００６４】
【発明の効果】
上記説明から明らかなように、本発明によれば表示装置上に表示するポインタの表示座標を、入力装置からの入力座標に基づいて定める情報処理装置において、ポインタの振動の抑制と、ポインタ移動の応答性の良さやスムースさ等とを両立する情報処理装置及びプログラムを提供することができる。
【図面の簡単な説明】
【図１】本発明の実施形態に係る情報処理装置１００の構成を示す図。
【図２】本発明の実施形態に係る情報処理装置１００の処理を示す流れ図。
【図３】本発明の実施形態に係る情報処理装置１００における入力座標の移動速度と表示の関係の一例を示す図。
【図４】本発明の実施形態に係る情報処理装置１００における入力座標の移動開始時における表示の一例を示す図。
【図５】本発明の実施形態に係る情報処理装置１００における入力座標の使用範囲と表示の関係の一例を示す図。
【図６】本発明の実施形態に係る表示装置１５０におけるポインタ５１０の表示の一例を示す図。
【図７】本発明の実施形態に係る表示装置１５０における入力軌跡６１０、表示軌跡Ａ６２０及び表示軌跡Ｂ６３０の関係の一例を示す図。
【図８】本発明の実施形態の変形例に係る情報処理装置１００の処理を示す流れ図。
【図９】本発明の実施形態に係る情報処理装置１００のハードウェア構成を示す図。
【符号の説明】
１００  情報処理装置
１１０  入力装置
１２０  移動距離算出部
１３０  平均算出部
１４０  範囲変更部
１５０  表示装置
１６０  タッチパネル
１７０  センサ
１８０  ＡＤコンバータ
１９０  インターフェイス
５００  画面
５１０  ポインタ
６１０  入力軌跡
６２０  表示軌跡Ａ
６３０  表示軌跡Ｂ
８００  計算機
８１０  ＣＰＵ
８２０  ＲＯＭ
８３０  ＲＡＭ
８４０  通信インターフェイス
８５０  ハードディスクドライブ
８６０  フロッピーディスクドライブ
８７０  ＣＤ−ＲＯＭドライブ
８８０  フロッピーディスク
８９０  ＣＤ−ＲＯＭ
【図１】
2004287473.tif 000003
【図２】
2004287473.tif 000004
【図３】
2004287473.tif 000005
【図４】
2004287473.tif 000006
【図５】
2004287473.tif 000007
【図６】
2004287473.tif 000008
【図７】
2004287473.tif 000009
【図８】
2004287473.tif 000010
【図９】
2004287473.tif 000011