(57)【要約】【課題】誤動作を低減するとともに、ユーザへの負担を軽減する。【解決手段】情報処理装置は、画面上のカーソルの位置情報を取得する位置取得部と、カーソルの位置情報を蓄積する位置情報蓄積部と、画面で、選択されることによって所定の処理が実行される対象が表示される領域である選択対象領域の密度を算出する密度算出部と、該密度に基づいて、カーソルの停留時間の閾値を算出する閾値算出部と、位置情報蓄積部に蓄積される位置情報より、カーソルの静止を検出する検出部と、カーソルの停留時間と算出された閾値とを比較する判定部と、閾値よりカーソルの停留時間が長いと判定された場合に、カーソルの位置に基づいて、所定の命令を実行する処理部と、を備える。例えば、所定の命令は、カーソルの位置に存在する対象を選択する命令である。【選択図】図４
2013196030.tif 000002
【特許請求の範囲】
【請求項１】
画面上のカーソルの位置情報を取得する位置取得部と、
前記カーソルの位置情報を蓄積する位置情報蓄積部と、
前記画面で、選択されることによって所定の処理が実行される対象が表示される領域である選択対象領域の密度を算出する密度算出部と、
前記密度に基づいて、前記カーソルの停留時間の閾値を算出する閾値算出部と、
前記位置情報蓄積部に蓄積される位置情報より、前記カーソルの静止を検出する検出部と、
前記カーソルの停留時間と前記閾値とを比較する判定部と、
前記判定部により前記閾値より前記カーソルの停留時間が長いと判定された場合に、前記カーソルの位置に基づいて、所定の命令を実行する処理部と、
を備える情報処理装置。
【請求項２】
前記閾値算出部は、前記密度が大きいほど前記閾値を大きい値に設定する、
請求項１に記載の情報処理装置。
【請求項３】
前記閾値算出部は、ユーザの画面変化に対する反応時間分布と前記密度とに基づいて、前記閾値を算出する、
請求項２に記載の情報処理装置。
【請求項４】
前記密度算出部は、前記カーソルを含む前記画面内の所定の範囲に対する前記選択対象領域が占める範囲の割合を前記密度として算出する、
請求項１から３のいずれか一項に記載の情報処理装置。
【請求項５】
前記密度算出部は、前記カーソルを含む前記画面内の所定の範囲に存在する前記選択対象領域の数を前記密度として算出する、
請求項１から３のいずれか一項に記載の情報処理装置。
【請求項６】
前記密度算出部は、前記画面内に複数の選択対象領域が所定の一点からの方向によって特定可能に配置されている場合に、前記所定の一点を中心とする円に対する、該円周と前記各選択対象領域の交点とで形成される扇形の中心角の総和が占める割合を前記密度として算出する、
請求項１から３のいずれか一項に記載の情報処理装置。
【請求項７】
前記密度算出部は、前記画面内に複数の選択対象領域が所定の直線上に配置されている場合に、前記直線の長さに対する、各選択対象領域によって前記直線が区切られて形成される線分の長さの総和の割合を前記密度として算出する、
請求項１から３のいずれか一項に記載の情報処理装置。
【請求項８】
コンピュータが、
画面上のカーソルの位置情報を取得し、
前記カーソルの位置情報を蓄積し、
前記画面で、選択されることによって所定の処理が実行される対象が表示される領域である選択対象領域の密度を算出し、
前記密度に基づいて、前記カーソルの停留時間の閾値を算出し、
前記蓄積された位置情報より、前記カーソルの静止を検出し、
前記カーソルの停留時間と前記閾値とを比較し、
前記閾値より前記カーソルの停留時間が長いと判定された場合に、前記カーソルの位置に基づいて、所定の命令を実行する、
情報処理方法。
【請求項９】
コンピュータが、
画面上のカーソルの位置情報を取得し、
前記カーソルの位置情報を蓄積し、
前記画面で、選択されることによって所定の処理が実行される対象が表示される領域である選択対象領域の密度を算出し、
前記密度に基づいて、前記カーソルの停留時間の閾値を算出し、
前記蓄積された位置情報より、前記カーソルの静止を検出し、
前記カーソルの停留時間と前記閾値とを比較し、
前記閾値より前記カーソルの停留時間が長いと判定された場合に、前記カーソルの位置に基づいて、所定の命令を実行する、
ための情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画面上のカーソルの停留位置に応じて所定の命令を実行する情報処理装置、情報処理方法、及び情報処理プログラムに関する。
【背景技術】
【０００２】
従来、ユーザの体の一部の位置をセンサで取得し、該ユーザの体の一部の位置に応じて離れた画面上にカーソルを表示させることにより、カーソル操作を行う空間ジェスチャ技術が提案されている。
【０００３】
図１は、空間ジェスチャ技術の一例を示す図である。図１では、表示装置５００の正面のユーザの手の位置に対応して、画面上のカーソル５０１が操作される。例えば、従来、画面上のカーソル５０１を所定時間停留させることにより、該カーソルの位置にあるオブジェクトを選択する技術があった（例えば、特許文献１）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平７−２００６３２号公報
【特許文献２】特開平１１−７３２７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
図２は、従来技術の問題点を説明するための図である。図２では、画面６００と画面７００とが示されている。画面６００は、複数の選択オブジェクトが密に配置された画面である。一方、画面７００は、画面６００に比べると、選択オブジェクトが疎に配置された画面である。選択オブジェクトは、例えば、アイコン，リンク，選択ボタン等の選択対象となるオブジェクトである。
【０００６】
画面６００のように、選択オブジェクトが密に配置されている画面では、例えば、ユーザが意図せず手を静止させた場合に、カーソルの位置に選択オブジェクトが存在する可能性が高い。すなわち、画面６００のように選択オブジェクトが密に配置されている場合には、意図しない選択オブジェクトが選択されるという誤選択が発生しやすい。
【０００７】
一方、画面７００のように、選択オブジェクトが疎に配置されている画面では、誤選択が生じにくい。しかしながら、画面７００では誤選択が発生しにくいものの、例えば、選択オブジェクトの選択のために手を静止させる時間が長く、ユーザが疲れてしまう場合があった。
【０００８】
本発明の一態様は、誤動作を低減するとともに、ユーザへの負担を軽減する情報処理装置、情報処理方法、及び情報処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の態様の一つは、
画面上のカーソルの位置情報を取得する位置取得部と、
前記カーソルの位置情報を蓄積する位置情報蓄積部と、
前記画面で、選択されることによって所定の処理が実行される対象が表示される領域である選択対象領域の密度を算出する密度算出部と、
前記密度に基づいて、前記カーソルの停留時間の閾値を算出する閾値算出部と、
前記位置情報蓄積部に蓄積される位置情報より、前記カーソルの静止を検出する検出部と、
前記カーソルの停留時間と前記閾値とを比較する判定部と、
前記判定部により前記閾値より前記カーソルの停留時間が長いと判定された場合に、前記カーソルの位置に基づいて、所定の命令を実行する処理部と、
を備える情報処理装置である。
【００１０】
本発明の他の態様の一つは、上述した情報処理装置が実行する情報処理方法である。また、本発明の他の態様は、コンピュータを情報処理装置として機能させる情報処理プログラム、及び当該情報処理プログラムを記録したコンピュータ読み取り可能な記録媒体を含むことができる。コンピュータ等が読み取り可能な記録媒体には、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって蓄積し、コンピュータ等から読み取ることができる記録媒体をいう。
【発明の効果】
【００１１】
開示の情報処理装置、情報処理方法、及び情報処理プログラムによれば、誤動作を低減するとともに、ユーザへの負担を軽減することができる。
【図面の簡単な説明】
【００１２】
【図１】空間ジェスチャ技術の一例を示す図である。
【図２】従来技術の問題点を説明するための図である。
【図３】情報処理装置のハードウェア構成の一例を示す図である。
【図４】情報処理装置の機能ブロック図の一例である。
【図５】画面内の選択オブジェクトの密度Ｄの算出方法の具体例１を示す図である。
【図６】画面内の選択オブジェクトの密度Ｄの算出方法の具体例２を示す図である。
【図７】画面内の選択オブジェクトの密度Ｄの算出方法の具体例３を示す図である。
【図８】画面内の選択オブジェクトの密度Ｄの算出方法の具体例４を示す図である。
【図９】カーソルの停留時間の閾値の算出方法を説明するための図である。
【図１０】カーソルの静止状態に対するユーザの反応時間分布を示す図である。
【図１１】情報処理装置の処理のフローチャートの一例である。
【発明を実施するための形態】
【００１３】
以下、図面に基づいて、本発明の実施の形態を説明する。以下の実施形態の構成は例示であり、本発明は実施形態の構成に限定されない。
【００１４】
＜第１実施形態＞
第１実施形態では、空間ジェスチャ技術を採用する情報処理装置について説明する。この情報処理装置では、閾値よりもカーソルの停留時間が長い場合に、カーソルの位置に応じて所定の命令が実行される。所定の命令は、例えば、カーソルの位置に存在する選択オブジェクトの選択の命令である。オブジェクトは、操作対象として画面上に表示されるアイテムである。選択オブジェクトとは、選択されることによって、所定のプログラムの起動，画面遷移，等の所定の処理が実行されるオブジェクトである。すなわち、選択オブジェクトは、選択対象のオブジェクトである。選択オブジェクトには、例えば、アイコン，他のページにリンク付けられた画像や文字列，選択ボタン等がある。この閾値は、表示画面における選択オブジェクトの密度に応じて設定される。例えば、画面中の選択オブジェクトの密度が高いほど閾値が大きく、画面中の選択オブジェクトの密度が低いほど閾値が小さく設定される。第１実施形態では、カーソルの操作手段として、ユーザの手を例として説明する。選択オブジェクトは、「選択対象領域」の一例である。
【００１５】
図３は、情報処理装置のハードウェア構成の一例を示す図である。情報処理装置１は、
例えば、デスクトップ型のパーソナルコンピュータ（ＰＣ），ノート型のＰＣ，タブレット型ＰＣ，ＰＤＡ（Personal Digital Assistant），テレビ受像装置，ゲーム装置等である。
【００１６】
情報処理装置１は、プロセッサ１０１，主記憶装置１０２，入力装置１０３，出力装置１０４，表示装置１０４ａ，補助記憶装置１０５，可搬記録媒体駆動装置１０６，ネットワークインタフェース１０７，及びセンサ１０８を備える。また、これらはバス１０９により互いに接続されている。
【００１７】
入力装置１０３は、例えば、タッチパッド，マウス，タッチパネル等のポインティングデバイス，キーボード等である。また、入力装置１０３には、マイクロフォン等の音声入力装置も含まれる。また、入力装置１０３には、カメラ等の画像入力装置も含まれる。入力装置１０３は、情報処理装置１に有線又は無線で接続されていればよく、情報処理装置１に搭載されていてもよいし、外部の独立した装置であってもよい。入力装置１０３から入力されたデータは、プロセッサ１０１に出力される。
【００１８】
主記憶装置１０２は、プロセッサ１０１に、補助記憶装置１０５に格納されているプログラムをロードする記憶領域および作業領域を提供したり、バッファとして用いられたりする。主記憶装置１０２は、例えば、ＲＡＭ（Random Access Memory）のような半導体メモリである。
【００１９】
補助記憶装置１０５は、様々なプログラムや、各プログラムの実行に際してプロセッサ１０１が使用するデータを格納する。補助記憶装置１０５は、例えば、ＥＰＲＯＭ（Erasable Programmable ROM）、又はハードディスクドライブ（Hard Disc Drive）等の不揮発性のメモリである。補助記憶装置１０５は、例えば、オペレーティングシステム（ＯＳ），情報処理プログラム，その他様々なアプリケーションプログラムを保持する。
【００２０】
可搬記録媒体駆動装置１０６は、可搬記録媒体１１０に記録されるプログラムや各種データを読出し、プロセッサ１０１に出力する。可搬記録媒体１１０は、例えば、ＳＤカード，ｍｉｎｉＳＤカード，ｍｉｃｒｏＳＤカード，ＵＳＢ（Universal Serial Bus）フラッシュメモリ，ＣＤ（Compact Disc），ＤＶＤ(Digital Versatile Disk)，Ｂｌｕ−ｒａｙ  Ｄｉｓｃ又はフラッシュメモリカードのような記録媒体である。
【００２１】
ネットワークインタフェース１０７は、ネットワークとの情報の入出力を行うインタフェースである。ネットワークインタフェース１０７は、有線のネットワーク、および、無線のネットワークと接続する。ネットワークインタフェース１０７は、例えば、ＮＩＣ（Network Interface Card），無線ＬＡＮ（Local Area Network）カード等である。ネットワークインタフェース１０７で受信されたデータ等は、プロセッサ１０１に出力される。
【００２２】
センサ１０８は、カーソルを操作する操作手段を検知するためのセンサである。カーソルを操作する操作手段は、例えば、ユーザの手，指，目線等である。センサ１０８は、カーソルを操作する操作手段に応じて、例えば、距離センサ，単眼カメラ，ステレオカメラ等のセンサと物体トラッキング装置を組み合わせたものである。また、センサ１０８は、ジャイロセンサ，加速度センサ等を備える、ユーザ装着型の装置であってもよい。
【００２３】
プロセッサ１０１は、例えば、ＣＰＵ（Central Processing Unit）である。プロセッ
サ１０１は、補助記憶装置１０５又は可搬記録媒体に保持されたＯＳや様々なアプリケーションプログラムを主記憶装置１０２にロードして実行することによって、様々な処理を実行する。プロセッサ１０１は、一つであってもよいし、複数あってもよい。
【００２４】
出力装置１０４は、プロセッサ１０１の処理の結果を出力する。出力装置１０４は、スピーカ等の音声出力装置、プロジェクタ等であってもよい。表示装置１０４ａは、例えば、液晶ディスプレイ，有機ＥＬ（Electro-Luminescence）ディスプレイ，プラズマディスプレイである。出力装置１０４及び表示装置１０４ａは、情報処理装置に有線又は無線で接続されていればよく、情報処理装置１と一体であってもよいし、独立した別装置であってもよい。
【００２５】
例えば、情報処理装置１は、プロセッサ１０１が補助記憶装置１０５に保持される情報処理プログラムを主記憶装置１０２にロードして実行する。情報処理装置１は、情報処理プログラムの実行を通じて、空間ジェスチャ技術を実現する。
【００２６】
図４は、情報処理装置１の機能ブロック図の一例である。情報処理装置１は、例えば、プロセッサ１０１が補助記憶装置１０５に格納される情報処理プログラムを実行することによって、位置取得部１１，位置情報蓄積部１２，停留検出部１３，配置取得部１４，密度計算部１５，閾値計算部１６，停留継続判定部１７，命令実行部１８として動作する。ただし、これらの機能ブロックは、情報処理プログラムの実行によって実現されることに限られず、例えば、ＦＰＧＡ（Field-Programmable Gate Array）などの電気回路又は／
及び電子回路によってハードウェアによって実現されてもよい。
【００２７】
位置取得部１１は、第１実施形態においてカーソルの操作手段であるユーザの手の位置をセンサ１０８から取得し、画面上のカーソル位置を計算して取得する。手の座標系は、表示装置１０４ａの画面の法線方向をｚ軸とし、画面から離れる方向を正とする。また、手の座標系は、画面の平面内の水平方向をｘ軸、垂直方向をｙ軸とする。手の座標系において、ユーザの手の座標は、（ｘｈ，ｙｈ，ｚｈ）と表わされる。位置取得部１１は、取得した手の座標（ｘｈ，ｙｈ，ｚｈ）から、画面上のカーソル座標（ｘ，ｙ）を計算する。カーソルの座標系は、画面の水平方向をｘ軸、垂直方向をｙ軸とする。位置取得部１１は、例えば、以下の（式１）を用いて、手の座標から画面上のカーソルの座標を算出する。
【数１】
2013196030.tif 000003
ａx，ｂx，ａy，ｂyは、実数の定数であり、例えば、画面の解像度等から実験的に定義される値である。位置取得部１１は、所定の周期でユーザの手の座標（ｘｈ，ｙｈ，ｚｈ）を取得し、手の座標からカーソルの座標を取得する。所定の周期は、例えば、１秒間に３０−６０回である。位置取得部１１によって取得されたカーソルの座標は、位置情報蓄積部１２に格納される。位置情報蓄積部１２は、例えば、情報処理プログラムの実行により主記憶装置１０２の記憶領域に作成される。位置取得部１１は、「位置取得部」の一例である。位置情報蓄積部１２は、「位置情報蓄積部」の一例である。
【００２８】
停留検出部１３は、例えば、所定の周期で、位置情報蓄積部１２に蓄積されたカーソルの位置情報の履歴を読み出し、カーソルが静止しているか否かを判定する。カーソルの静止判定は、例えば、所定期間内のカーソルの移動距離を、所定の閾値と比較することにより行われる。所定の閾値は、実験的に決められる値である。ただし、これに限られず、カーソルの静止判定は、所定期間内のカーソル位置の分散、最大速度、移動方向の分散等を用いて行われてもよい。また、カーソルの静止判定は、例えば、カーソルの位置取得と同じ周期、すなわち、カーソルの位置が取得される度に実行される。
【００２９】
カーソルの移動距離Ｌは、例えば、以下の（式２）で求められる。
【数２】
2013196030.tif 000004
ｍは、位置情報蓄積部１２から読み出されるカーソルの座標の数であり、実験的に決められる。例えば、位置取得部１１が３０Ｈｚでカーソルの座標を取得している場合に、ｍ＝２４と設定すれば、過去０．８秒間のカーソルの座標履歴が考慮されることとなる。座標（ｘt，ｙt）は、最新のカーソルの座標からｔ回前に位置取得部１１によって取得されたカーソルの座標である。
【００３０】
停留検出部１３は、算出したカーソルの移動距離Ｌ（ｍ）と所定の閾値とを比較し、移動距離Ｌ（ｍ）が所定の閾値より小さいときにカーソルの静止を検出する。停留検出部１３は、カーソルの静止判定の結果（静止状態か否か）を停留継続判定部１７に出力する。また、停留検出部１３は、カーソルの静止を検出した場合、例えば、カーソル付近に静止を示すアイコンを表示したり、カーソルの位置に存在する選択オブジェクトの色を変更したりなどして、ユーザにカーソルの静止の検出を通知する。停留検出部１３は、「検出部」の一例である。
【００３１】
配置取得部１４は、情報処理装置１において実行されているアプリケーションの状態に応じて画面上に表示されている選択オブジェクトの配置を取得する。例えば、配置取得部１４は、画面の状態が遷移する度に、又は、所定の周期で画面上の選択オブジェクトの配置を取得する。また、画面上の選択オブジェクトの配置は、例えば、選択オブジェクトの位置情報，選択オブジェクトの面積，画面内の選択オブジェクトの数等の情報である。選択オブジェクトの位置情報には、例えば、座標で示される選択オブジェクトの表示範囲，画面の中心点からの選択オブジェクトの方向等がある。
【００３２】
密度計算部１５は、配置取得部１４によって取得された画面内の選択オブジェクトの配置から、画面内の選択オブジェクトの密度を計算する。例えば、密度計算部１５は、配置取得部１４が選択オブジェクトの配置を取得する度に、すなわち、画面の状態が遷移する度に、又は、所定の周期で、画面内の選択オブジェクトの密度を計算する。画面内の選択オブジェクトの密度Ｄは、例えば、以下の（式３）で示される。
【数３】
2013196030.tif 000005
以下、図５−図８によって、画面内の選択オブジェクトの密度Ｄの算出方法の具体例を示す。
【００３３】
図５は、画面内の選択オブジェクトの密度Ｄの算出方法の具体例１を示す図である。具体例１では、図５の画面５１０に示されるように、カーソルの座標から半径ｒの円Ｃｘｙにおいて、選択オブジェクトの表示領域が占める割合が密度Ｄとして算出される。具体例１における密度Ｄの式は、以下の（式４）で示される。
【数４】
2013196030.tif 000006
（式４）中のＳは、配置取得部１４によって取得された画面内の全ての選択オブジェクトである。円Ｃｘｙの半径ｒは実験的に決定される。
【００３４】
図６は、画面内の選択オブジェクトの密度Ｄの算出方法の具体例２を示す図である。具体例２の算出方法は、図６の画面５２０のように、選択オブジェクトが点Ｐを中心にルーレット状に配置されている、すなわち、点Ｐから見て一方向には、選択オブジェクトが１つしか存在しない場合に用いることができる。なお、点Ｐは、カーソルの位置には依存しない定点である。具体例２では、点Ｐを中心とする半径ｒの円Ｃにおいて、円Ｃの円周と選択オブジェクトとが重なることによって生成される扇形の中心角φの総和が占める割合が密度Ｄとして算出される。円Ｃの半径ｒは実験的に決定される。具体例２における密度Ｄの式は、以下の（式５）で示される。
【数５】
2013196030.tif 000007
【００３５】
図７は、画面内の選択オブジェクトの密度Ｄの算出方法の具体例３を示す図である。具体例３の算出方法は、図７の画面５３０のように、直線上に選択オブジェクトが配置されている場合に用いることができる。具体例３では、該直線の方向θの画面の長さに対して該直線上に配置される選択オブジェクトの該直線の方向θの長さｄの総和が占める割合が密度Ｄとして算出される。具体例３における密度Ｄの式は、以下の（式６）で示される。
【数６】
2013196030.tif 000008
【００３６】
図８は、画面内の選択オブジェクトの密度Ｄの算出方法の具体例４を示す図である。具体例４では、図８の画面５４０に示されるように、カーソルの座標から距離Ｒ以内に存在する選択オブジェクトの数が密度Ｄとして算出される。カーソルの座標からの距離Ｒは実験的な値である。具体例４における密度Ｄの式は、以下の（式７）で示される。
【数７】
2013196030.tif 000009
具体例４の密度Ｄの算出方法は、同一画面内でも、選択オブジェクトの配置が密な部分と疎な部分とがある場合に、より適している。
【００３７】
密度計算部１５は、具体例１−４のいずれの密度の算出方法を用いてもよい。また、画面の選択オブジェクトの配置に応じて、具体例１−４の算出方法を切り替えて使用しても
よい。また、画面内の選択オブジェクトの算出方法は、具体例１−４に限られない。密度計算部１５は、「密度算出部」の一例である。
【００３８】
図４に戻って、閾値計算部１６は、ユーザのカーソル操作によって所定の命令が入力されているか否かの判定に用いられる、カーソルの停留時間の閾値を算出する。ユーザのカーソル操作による所定の命令の入力には、例えば、選択オブジェクトの選択がある。カーソルの停留時間とは、すなわち、カーソルの静止状態の継続時間である。例えば、密度計算部１５が選択オブジェクトの密度を算出する度に、すなわち、画面の状態が遷移する度に、又は、所定の周期で、閾値計算部１６はカーソルの停留時間の閾値を算出する。閾値計算部１６は、カーソルの停留時間の閾値を、密度計算部１５によって算出された選択オブジェクトの密度に応じて増加する関数を用いて算出する。以下、カーソルの停留時間の閾値の算出方法の一例について、説明する。
【００３９】
図９は、カーソルの停留時間の閾値の算出方法を説明するための図である。第１実施形態では、カーソルの停留時間ｔにおけるオブジェクトの誤選択の確率Ｐ（ｔ）を所定の値ｋ（図９中、水準ｋ。０＜ｋ＜１）より小さい値にする、最小のｔを、カーソルの停留時間の閾値とする。所定の値ｋは、例えば、１％以下の値である。カーソルの停留時間ｔにおける誤選択の確率Ｐ（ｔ）は、例えば、図９に示されるように、カーソルが選択オブジェクト上に位置する確率Ｐ1とカーソルの静止状態にユーザが反応しない確率Ｐ2（ｔ）との積で定義される。カーソルの静止状態にユーザが反応しないとは、カーソルの静止状態がユーザの意図するところではないこと示す。すなわち、第１実施形態では、カーソルの停留時間の閾値を求めるために、図９に示されるように、以下の（式８）（確率Ｐ1と確
率Ｐ2（ｔ）の積が所定の値ｋ未満）を満たす最小のｔを求める。
【数８】
2013196030.tif 000010
【００４０】
画面内における選択オブジェクトの密度が高ければ、選択オブジェクト上にカーソルが位置する確率が高くなるので、カーソルが選択オブジェクト上に位置する確率Ｐ1は、選
択オブジェクトの密度Ｄに対応づけることができる。したがって、第１実施形態では、カーソルが選択オブジェクト上に位置する確率Ｐ1を、密度計算部１５によって算出される
選択オブジェクトの密度Ｄに置き換える。
【００４１】
次に、カーソルの静止状態にユーザが反応しない確率Ｐ2（ｔ）は、カーソルの静止状
態に対するユーザの反応時間分布より算出可能である。画面変化へのユーザの反応時間ｔは、例えば、ｅｘ−Ｇａｕｓｓｉａｎ分布やガンマ分布等の歪んだ釣鐘型の確率分布に適合する。第１実施形態では、停留検出部１３は、カーソルの静止を検出するとユーザに通知するためにカーソルの静止を表す画面表示を行うので、カーソルの静止状態に対するユーザの反応時間ｔを、画面変化へのユーザの反応時間ｔに置き換えることができる。ただし、例えば、ユーザの反応時間は画面表示の仕方等によって異なる可能性があるものの、第１実施形態では、反応時間分布の形状には大きな差異がなく、分布のパラメータは画面表示に依存せずに一意に定まると仮定する。
【００４２】
図１０は、カーソルの静止状態に対するユーザの反応時間分布を示す図である。上述のように、例えば、ｅｘ−Ｇａｕｓｓｉａｎ分布をカーソルの静止状態に対するユーザの反応時間分布ｆ（ｔ）（すなわち、ｆ（ｔ）は時間ｔでユーザがカーソルの静止状態に反応する確率）とみなすと、この分布ｆ（ｔ）は、図１０のＧ１のように表わされる。さらに、この反応時間分布ｆ（ｔ）を累積した累積確率分布をＦ(ｔ)とする。この累積確率分布
Ｆ（ｔ）は、図１０のＧ２のように表わされる。また、累積確率分布Ｆ（ｔ）は、カーソルの静止状態開始から時間ｔ以内に、ユーザがカーソルの静止状態に反応する確率である。したがって、カーソルの静止状態開始から時刻ｔ以内にユーザが反応しない確率Ｐ2（
ｔ）は、以下の（式９）で表わすことができる。
【数９】
2013196030.tif 000011
【００４３】
以上より、カーソルの停留時間ｔにおけるオブジェクトの誤選択の確率Ｐ（ｔ）は、以下の（式１０）で表わされる。
【数１０】
2013196030.tif 000012
誤選択の確率Ｐ（ｔ）を水準ｋに抑えるので、以下の（式１１）が成り立つ。
【数１１】
2013196030.tif 000013
（式１１）をｔについて変形すると、以下の（式１２）が得られる。
【数１２】
2013196030.tif 000014
Ｆ-1は、Ｆ（ｔ）の逆関数であることを示す。なお、ｅｘ−Ｇａｕｓｓｉａｎ分布は、解析的に解けないので、（式１２）の計算は、数値計算によって近似的に解かれる。例えば、（Ｄi，ｔi）（ｉ＝１，．．．Ｎ）のように、テーブルに密度Ｄの値と、対応する時間ｔの値とを格納しておけばよい。なお、Ｄi，Ｄi+1間は、線形補間すればよい。また、ｆ（ｔ）のパラメータは事前に実験的に決定される。
【００４４】
以上より、上述のようにして算出される時間ｔをカーソルの停留時間の閾値とすることによって、情報処理装置１では、最高でもｋの確率でしか誤選択が生じないという条件のもと、最短の停留時間を閾値に設定することができる。また、ｆ（ｔ）≧０より（例えば、図１０のＧ１）Ｆ−１が増加関数であることは明らかであるので、選択オブジェクトの密度の増加に応じて閾値ｔは増加する。閾値計算部１６は、「閾値算出部」の一例である。
【００４５】
図４に戻って、停留継続判定部１７は、停留検出部１３によってカーソルの静止が検出された場合に、閾値計算部１６によって算出された閾値とカーソルの停留時間とを比較する。停留継続判定部１７は、例えば、停留検出部１３から通知されるカーソルの静止判定結果がカーソルの静止に変化した場合に、タイマを開始し、連続してカーソルの静止が通知されている間はタイマを作動させておくことによって、カーソルの停留時間を計測する。タイマは、停留検出部１３から通知されるカーソルの静止判定結果がカーソルの静止から変化した場合に、止められる。ただし、カーソルの停留時間の計測は、タイマによる方法に限られず、例えば、情報処理装置１のクロック数で計測されてもよい。停留計測判定部１７は、カーソルの停留時間が閾値より長い場合に、命令実行部１８に命令実行の通知を出力する。停留継続判定部１７は、「判定部」の一例である。
【００４６】
命令実行部１８は、停留継続判定部１７による比較結果が、カーソルの停留時間が閾値より長い場合に、現在のカーソルの位置とアプリケーションの状態に応じた所定の命令を実行する。例えば、所定の命令が選択の命令である場合には、命令実行部１８は、カーソルの停留時間が閾値より長いと判定されると、カーソルの位置に疑似的なクリックイベントを送信する。カーソルの位置に選択オブジェクトが存在している場合には、命令実行部１８の疑似的なクリックイベントの送信により、該選択オブジェクトが選択される。命令実行部１８は、「処理部」の一例である。
【００４７】
図１１は、情報処理装置１の処理のフローチャートの一例である。図１１に示されるフローチャートは、例えば、表示装置１０４ａが起動している間繰り返し実行される。
【００４８】
ＯＰ１では、プロセッサ１０１は、表示装置１０４ａの画面表示が変化した否かを判定する。表示装置１０４ａの画面表示が変化した場合には（ＯＰ１：Ｙｅｓ）、処理がＯＰ２に進む。表示装置１０４ａの画面表示が変化していない場合には（ＯＰ１：Ｎｏ）、処理がＯＰ３に進む。ＯＰ１の処理は、配置取得部１４の処理の一つに相当する。
【００４９】
ＯＰ２では、プロセッサ１０１は、カーソルの停留時間の閾値を算出する。まず、プロセッサ１０１は表示画面内の選択オブジェクトの配置を取得し、選択オブジェクトの密度を算出する。プロセッサ１０１は、算出した選択オブジェクトの密度に応じたカーソルの停留時間の閾値を算出する。次に処理がＯＰ３に進む。ＯＰ２の処理のうち選択オブジェクトの配置の取得は、配置取得部１４の処理の一つに相当する。ＯＰ２の処理のうち選択オブジェクトの密度の算出は、密度算出部１５の処理の一つに相当する。ＯＰ２の処理のうちカーソルの停留時間の閾値の算出は、閾値計算部１６の処理の一つに相当する。
【００５０】
ＯＰ３では、プロセッサ１０１は、カーソルが静止している否かを判定する。カーソルが静止している場合には（ＯＰ３：Ｙｅｓ）、処理がＯＰ４に進む。カーソルが静止していない場合には（ＯＰ３：Ｎｏ）、処理がＯＰ１に戻る。ＯＰ３の処理は、停留検出部１３の処理の一つに相当する。
【００５１】
ＯＰ４では、プロセッサ１０１は、カーソルの停留時間がＯＰ２で算出した閾値以上か否かを判定する。カーソルの停留時間が閾値以上である場合には（ＯＰ４：Ｙｅｓ）、処理がＯＰ５に進む。カーソルの停留時間が閾値未満である場合には（ＯＰ４：Ｎｏ）、処理がＯＰ１に戻る。ＯＰ５の処理は、停留継続判定部１７の処理の一つに相当する。
【００５２】
ＯＰ５では、プロセッサ１０１は、ユーザからのカーソル操作による命令の入力を検知し、命令を実行する。その後、図１１に示されるフローチャートが終了する。ＯＰ５の処理は、命令実行部１８の処理の一つに相当する。
【００５３】
なお、上記では、図１１のフローチャートは、情報処理プログラムを実行過程において、プロセッサ１０１が実行する処理として説明された。ただし、これに限られず、図４に示される各機能ブロックがハードウェアで実現される場合には、図１１のフローチャートの各処理は、それぞれ対応する機能ブロックを実現するハードウェアによって実行される。
【００５４】
＜第１実施形態の作用効果＞
第１実施形態の情報処理装置１は、カーソルの停留時間が閾値以上か否かによって、ユーザからのカーソル操作による命令の入力の有無を判定する。このとき、カーソルの停留時間の閾値は、表示画面中の選択オブジェクトの密度が高くなるほど大きくなるように決定される。これによって、例えば、選択オブジェクトの選択において、誤選択が発生しに
くい疎な選択オブジェクトの配置の場合には、より短いカーソルの停留時間で選択操作が行われ、ユーザが手を静止させる時間を短くすることができる。また、誤選択が発生しやすい密な選択オブジェクトの配置の場合には、カーソルの停留時間の閾値が大きく設定されるので、誤選択の発生を低減することができる。
【００５５】
＜その他＞
第１実施形態では、空間ジェスチャを実現する情報処理装置について説明されたが、これに限られず、本発明は、カーソル操作可能な入力装置を備える情報処理装置、情報処理システムについても適用可能である。カーソル操作可能な入力装置には、例えば、マウス，タッチパッド等のポインティングデバイス，タッチパネル，キーパッド等がある。
【符号の説明】
【００５６】
１        情報処理装置
１１      位置取得部
１２      位置情報蓄積部
１３      停留検出部
１４      配置取得部
１５      密度計算部
１６      閾値計算部
１７      停留継続判定部
１８      命令実行部
【図１】
2013196030.tif 000015
【図２】
2013196030.tif 000016
【図３】
2013196030.tif 000017
【図４】
2013196030.tif 000018
【図５】
2013196030.tif 000019
【図６】
2013196030.tif 000020
【図７】
2013196030.tif 000021
【図８】
2013196030.tif 000022
【図９】
2013196030.tif 000023
【図１０】
2013196030.tif 000024
【図１１】
2013196030.tif 000025