説明

入力装置および方法、並びにプログラム

【課題】比較的大きい遅延がある系においても、入力時の操作感を向上させることができるようにする。
【解決手段】 入力装置のセンサー102は、テレビジョン受像機を制御するためのユーザーの操作を検出し、操作に対応する操作信号を出力する。速度取得部201と加速度取得部203は、検出された操作信号とその微分値を取得する。関数部221は、ユーザーの操作に対する操作信号の応答の遅延を補償するための、微分値により規定される関数を取得する。補償部222は、取得された関数により操作信号を補償する。補償された操作信号は入力装置からテレビジョン受像機に送信される。テレビジョン受像機は受信した操作信号に基づいて、表示されているポインタを入力装置が操作された任意の方向に移動表示させる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は入力装置および方法、並びにプログラムに関し、特に、入力時の操作感を向上させることができるようにした入力装置および方法、並びにプログラムに関する。
【背景技術】
【0002】
最近、地上デジタルテレビジョン放送が開始され、テレビジョン受像機にEPG(Electronic Program Guide)を表示させることができる。EPGにおいては、各番組がマトリクス状に配置、表示される。ユーザーはリモートコントローラを操作して、ポインタを任意の位置に移動させ、所定の番組を選択する。
【0003】
一般的に、テレビジョン受像機に付属しているリモートコントローラは、ポインタを垂直方向かまたは水平方向にしか移動させることができない。すなわち、ポインタを所定の表示位置から斜め方向の目的位置に直接移動させることはできない。
【0004】
そこで、ユーザーの3次元の自由空間における任意の方向への操作を検知して、その操作された方向にポインタを移動させるリモートコントローラが提案されている。しかし、このようなリモートコントローラにおいては、ユーザーの操作と、実際のポインタの移動のタイミングとが一致せず、ユーザーが操作上の違和感を覚えることが多い。
【0005】
特許文献1には、3次元の自由空間の任意の方向へ操作されるリモートコントローラではないが、アイソメトリックジョイスティックと呼ばれる感圧性デバイスを操作してポインタを移動させるパーソナルコンピュータのキーボードの中央に設置されたコントローラに関して、その操作感を改善することが提案されている。
【0006】
特許文献1の発明は、図1に示されるように、実線で示される入力に対して、破線で示されるような出力を得る伝達関数を実現することで、主に上記デバイスの不感帯(すなわち、小さい圧力が無視されるデッドゾーン)により生じるポインタ移動の開始時の動作の鈍さや、停止時のオーバーシュートを改善している。
【0007】
【特許文献1】特許第3217945号公報
【発明の開示】
【発明が解決しようとする課題】
【0008】
テレビジョン受像機のようないわゆるコンシューマー用のAV機器では、パーソナルコンピュータなどと比べてMPU(Micro Processing Unit)のクロックなども遅い。その結果、例えば画面上のポインタを移動する場合でも、移動信号を受け取ってから画面上のポインタが移動するまでに比較的大きな遅延が発生する。この場合、ポインタの移動開始時や停止時だけでなく、移動中の加減速時に発生する遅延によっても、ユーザーは違和感を感じてしまう。
【0009】
またユーザーが3次元の自由空間で操作するタイプのリモートコントローラを用いる場合には、操作とそれに対応する操作信号が出力されるまでの時間的な遅延が加わる。また、リモートコントローラを操作する手は自由に動けるために、ユーザーは操作に対するポインタの動きの遅延をジョイスティック等と比べて認識しやすい。その結果、ユーザーが感じる違和感は更に顕著なものとなる。
【0010】
しかしながら、特許文献1の技術では、上記のような場合に、操作時にユーザーが違和感を感じることなく、迅速にポインタの移動を開始させたり、ポインタを思い通りに移動させたり、また迅速にポインタの移動を停止させることは困難である。
【0011】
本発明は、このような状況に鑑みてなされたものであり、入力時の操作感を向上させることができるようにするものである。特に、比較的大きい遅延がある系においても、入力時の操作感を向上させることができるようにするものである。
【課題を解決するための手段】
【0012】
本発明の一側面は、電子機器を制御するためのユーザーの操作を検出し、前記操作に対応する操作信号を出力する検出部と、検出された前記操作信号とその微分値を取得する第1の取得部と、前記ユーザーの前記操作に対する前記操作信号の応答の遅延を補償するための、前記微分値により規定される関数を取得する第2の取得部と、取得された前記関数により前記操作信号を補償する補償部とを備える入力装置である。
【0013】
本発明の一側面においては、検出部は、電子機器を制御するためのユーザーの操作を検出し、前記操作に対応する操作信号を出力し、第1の取得部は、検出された前記操作信号とその微分値を取得し、第2の取得部は、前記ユーザーの前記操作に対する前記操作信号の応答の遅延を補償するための、前記微分値により規定される関数を取得し、補償部は、取得された前記関数により前記操作信号を補償する。
【発明の効果】
【0014】
以上のように、本発明の一側面によれば、入力時の操作感を向上させることができる。
特に、比較的大きい遅延がある系においても、入力時の操作感を向上させることができる。
【図面の簡単な説明】
【0015】
【図1】従来の入力装置の伝達関数の特性を示す図である。
【図2】本発明の入力システムの構成を示すブロック図である。
【図3】入力装置の外観の構成を示す斜視図である。
【図4】入力装置の内部の構成を示す図である。
【図5】センサー基板の構成を示す斜視図である。
【図6】入力装置の使用状態を示す図である。
【図7】入力装置の内部の電気的構成を示すブロック図である。
【図8】MPUの機能的構成を示すブロック図である。
【図9】入力装置のポインタ表示処理を説明するフローチャートである。
【図10】ゲインの特性を説明する図である。
【図11】速度の変化を示す図である。
【図12】変位の変化を示す図である。
【図13】入力装置を振動させた場合の特性の変化を示す図である。
【図14】入力装置を振動させた場合の特性の変化を示す図である。
【図15】速度の変化を示す図である。
【図16】変位の変化を示す図である。
【図17】変位の変化を示す図である。
【図18】速度の変化を示す図である。
【図19】変位の変化を示す図である。
【図20】速度の変化を示す図である。
【図21】変位の変化を示す図である。
【図22】速度の変化を示す図である。
【図23】テレビジョン受像機のタイマー処理を説明するフローチャートである。
【図24】入力装置のポインタ表示処理を説明するフローチャートである。
【図25】入力装置のポインタ表示処理を説明するフローチャートである。
【図26】速度の変化を示す図である。
【図27】変位の変化を示す図である。
【図28】変位の変化を示す図である。
【図29】変位の変化を示す図である。
【図30】速度の変化を示す図である。
【図31】入力装置の他の実施の形態の構成を示す図である。
【図32】入力装置の他の実施の形態の構成を示す図である。
【図33】入力装置の他の実施の形態の構成を示す図である。
【図34】本発明の他の入力システムの構成を示すブロック図である。
【図35】画像処理部の機能的構成を示すブロック図である。
【図36】テレビジョン受像機のポインタ表示処理を説明するフローチャートである。
【図37】画像処理部の他の機能的構成を示すブロック図である。
【図38】テレビジョン受像機のポインタ表示処理を説明するフローチャートである。
【図39】変位の変化を示す図である。
【発明を実施するための最良の形態】
【0016】
以下、発明を実施するための最良の形態(以下、実施の形態と称する)について説明する。なお、説明は以下の順序で行う。
1.第1の実施の形態(システムの構成)
2.第1の実施の形態(入力装置の構成)
3.第1の実施の形態(入力装置の電気的構成)
4.第1の実施の形態(入力装置のMPUの機能的構成)
5.第1の実施の形態(入力装置の動作)
6.第1の実施の形態(入力装置の特性)
7.第2の実施の形態(テレビジョン受像機の動作)
8.第2の実施の形態(入力装置の動作)
9.第3の実施の形態(入力装置の動作)
10.第3の実施の形態(入力装置の特性)
11.第4の実施の形態(入力装置の構成)
12.第5の実施の形態(入力装置の構成)
13.第6の実施の形態(入力装置の構成)
14.第7の実施の形態(入力システムの構成)
15.第7の実施の形態(画像処理部の機能的構成)
16.第7の実施の形態(テレビジョン受像機の動作)
17.第8の実施の形態(画像処理部の機能的構成)
18.第8の実施の形態(テレビジョン受像機の動作)
19.変形例
【0017】
<1.第1の実施の形態>
[システムの構成]
【0018】
図2は、本発明の入力システムの一実施の形態の構成を表している。
【0019】
この入力システム1は、電子機器としてのテレビジョン受像機10と、それを遠隔制御するポインティングデバイスあるいはリモートコントローラとしての入力装置31とにより構成されている。
【0020】
テレビジョン受像機10は、アンテナ11、通信部12、MPU(Micro Processing Unit)13、復調部14、ビデオRAM(Random Access Memory)15、および出力部16により構成されている。
【0021】
アンテナ11は、入力装置31からの電波を受信する。通信部12は、アンテナ11を介して受信した電波を復調し、MPU13に出力する。また通信部12はMPU13からの信号を変調し、アンテナ11を介してテレビジョン受像機10に送信する。MPU13は、入力装置31からの指示に基づいて各部を制御する。
【0022】
復調部14は、図示せぬアンテナを介して受信されたテレビジョン放送信号を復調し、ビデオ信号をビデオRAM15に出力し、オーディオ信号を出力部16に出力する。ビデオRAM15は、復調部15から供給されたビデオ信号に基づく画像と、MPU13からのポインタ、アイコンなどのオンスクリーンデータの画像とを合成し、出力部16の画像表示部に出力する。出力部16は、画像表示部で画像を表示するほか、スピーカなどで構成される音声出力部から音声を出力する。
【0023】
図2の表示例においては、出力部16の画像表示部に、アイコン21とポインタ22が表示されている。入力装置31はアイコン21やポインタ22の表示位置を変更する場合の他、テレビジョン受像機10を遠隔制御する場合にユーザーにより操作される。
【0024】
[入力装置の構成]
【0025】
図3は、入力装置31の外形の構成を表している。入力装置31は、電子機器を制御する操作信号を生成するためにユーザーにより操作される操作部としての本体32を有している。本体32の上面には、ボタン33,34が、右側面には、ジョグダイヤル35が、それぞれ設けられている。
【0026】
図4は、入力装置31の本体32の内部の構成を表している。入力装置31の内部には、メイン基板51、センサー基板57、および電池56が収容されている。メイン基板51には、MPU52、水晶発振器53、通信部54、およびアンテナ55が取り付けられている。
【0027】
図5に拡大して示されるように、センサー基板57には、MEMS(Micro Electro Mechanical Systems)の技術により製造された、角速度センサー58と加速度センサー59が取り付けられている。センサー基板57は、角速度センサー58と加速度センサー59の直交する2つの感度軸であるX軸とY軸に平行とされている。
【0028】
本体32の先頭(後述する図6における左方向の端部)を、典型的にはその先に位置するテレビジョン受像機10(図6には示されていないが左方向に位置する)に向けた状態で、本体32の全体がユーザーにより、例えば図6に示される任意の方向D1や方向D2に操作された場合、2軸式振動型角速度センサーで構成される角速度センサー58は、それぞれX軸とY軸と平行なピッチ回転軸71とヨー回転軸72を中心として回転するピッチ角とヨー角の角速度を検出する。加速度センサー59は、X軸およびY軸の方向の加速度を検出する2軸型加速度センサーである。加速度センサー59は、センサー基板57を感度平面として、重力加速度をベクトル量として検知することができる。なお、加速度センサー59としては、X軸、Y軸、およびZ軸の3軸を感度軸とする3軸型加速度センサーを用いることもできる。
【0029】
2本の電池56は各部に必要な電力を供給する。
【0030】
図6は、入力装置31の使用状態を表している。同図に示されるように、入力装置31はユーザーが手81で保持し、入力装置31の全体を3次元の自由空間において任意の方向に操作する。入力装置31はその操作された方向を検出し、その操作された方向の操作信号を出力する。また入力装置31は、ボタン33,34や、ジョグダイヤル35などが操作された場合、その操作信号を出力する。
【0031】
ボタン33は通常のマウスの左ボタンに対応し、ボタン34は右ボタンに対応する。ボタン33は人指し指で、ボタン34は中指で、ジョグダイヤル35は親指で、それぞれ操作される。ボタンが操作されたとき発行されるコマンドは任意であるが、例えば次のように設定することができる。
【0032】
ボタン33の1回押し:左クリック:選択
ボタン33の長押し:ドラッグ:アイコンの移動
ボタン33の2回押し:ダブルクリック:ファイル、フォルダを開く、プログラムを実行する
ボタン34の1回押し:右クリック:メニューの表示
ジョグダイヤルの回転:スクロール
ジョグダイヤルの押し:決定
【0033】
このように設定すれば、ユーザーは、通常のパーソナルコンピュータのマウスと同様の操作感覚で入力装置31を使用することができる。
【0034】
ボタン33は2段スイッチとすることもできる。この場合、1段目のスイッチが操作されたとき、または押圧されたままの状態にされたとき、入力装置31の移動を表す操作信号が出力され、2段目のスイッチが操作されたとき選択される。勿論、専用のボタンを設け、そのボタンが操作されたとき、移動を表す操作信号が出力されるようにすることもできる。
【0035】
[入力装置の電気的構成]
【0036】
図7は、入力装置31の電気的構成を表している。同図に示されるように、入力装置31は、MPU52、水晶発振器53、通信部54、およびアンテナ55の他、入力部101およびセンサー102を有している。
【0037】
水晶発振器53はMPU52に基準のクロックを供給する。ボタン33,34、ジョグダイヤル35、その他のボタンなどで構成される入力部101は、ユーザーにより操作されたとき、その操作に対応する信号をMPU52に出力する。角速度センサー58と加速度センサー59で構成されるセンサー102は、ユーザーにより本体32の全体が操作されたとき、操作時の角速度や加速度を検出し、MPU52に出力する。センサー102は、電子機器を制御するためのユーザーの操作を検出し、その操作に対応する操作信号を出力する検出部として機能する。
【0038】
MPU52は、入力に対応する操作信号を生成し、通信部54からアンテナ55を介して電波でテレビジョン受像機10に出力する。この電波はアンテナ11によりテレビジョン受像機10により受信される。また、通信部54は、テレビジョン受像機10からの電波をアンテナ55を介して受信し、信号を復調してMPU52に出力する。
【0039】
[入力装置のMPUの機能的構成]
【0040】
図8は、内蔵するメモリに記憶されているプログラムに従って動作するMPU52の機能的構成を表している。MPU52は、速度取得部201、記憶部202、加速度取得部203、補償処理部204、加速度取得部205、速度演算部206、および移動量計算部207を有している。
【0041】
補償処理部204は、関数部221と補償部222により構成されている。関数部221は、ゲイン取得部211、補正部212、および制限部213を有しており、補償部222は、乗算部214を有している。
【0042】
この実施の形態の場合、速度取得部201と加速度取得部203は、検出された操作信号とその微分値を取得する第1の取得部を構成する。速度取得部201は、センサー102のうちの角速度センサー58からの角速度信号を、ユーザーの操作に対応する操作信号として取得する。記憶部202は、速度取得部201により取得された角速度信号を記憶する。操作された操作部の加速度を取得する第1の取得部としての加速度取得部203は、記憶部202に記憶された、1ステップ前と後の角速度信号の差を演算することで、角加速度信号を演算する。すなわち、加速度取得部203は、操作信号としての角速度信号の微分値としての角加速度信号を取得する。
【0043】
取得された加速度により操作信号の応答の遅延を補償するための関数を取得する第2の取得部としての関数部221は、加速度取得部203により取得された微分値としての加速度により規定される関数であるゲインG(t)、または速度取得部201により取得された操作信号としての速度と、加速度取得部203により取得された微分値としての加速度により規定される関数であるゲインG(t)を生成し、操作信号としての速度に乗算する。すなわち操作信号を補正することで、遅延を補償する処理が実行される。
【0044】
ゲイン取得部211は、加速度取得部203により取得された加速度に対応するゲインG(t)を取得する。補正部212は、速度取得部201により取得された角速度、またはテレビジョン受像機10から受信したタイマー値に基づいて、必要に応じて、ゲインG(t)を補正する。制限部213は、ゲインG(t)、または補正されたゲインG(t)が閾値を超えるのを制限する。関数により操作信号を補償する補償部として機能する補償部222を構成する乗算部214は、速度取得部201により取得された角速度に、制限部213により制限されたゲインG(t)を乗算して、補正された角速度を出力する。
【0045】
加速度取得部205は、センサー102のうちの加速度センサー59からの加速度信号を取得する。速度演算部206は補正された角速度と、加速度取得部205により取得された加速度を用いて速度を演算する。
【0046】
移動量計算部207は、速度演算部206より供給された速度に基づいて、本体32の移動量を計算し、入力装置31の操作信号として通信部54に出力する。
【0047】
上述したように、通信部54はこの信号を変調し、アンテナ55を介してテレビジョン受像機10に送信する。
【0048】
[入力装置の動作]
【0049】
次に図9を参照して入力装置31のポインタ表示処理について説明する。この処理は、テレビジョン受像機10の出力部16に表示されているポインタ22を所定の方向に移動させるために、ユーザーが本体32を手で保持し、ボタン33の1段目のスイッチを操作するか、または押圧したままの状態にして、入力装置31の全体を任意の所定の方向に操作した場合、すなわち、3次元の自由空間において、入力装置31の全体が任意の方向に動かされた場合に実行される。すなわちこの処理は、テレビジョン受像機10の画面の表示を制御する操作信号を、入力装置31からテレビジョン受像機10に出力する処理である。
【0050】
ステップS1において速度取得部201はセンサー102が出力した角速度信号を取得する。すなわち、ユーザーが本体32を手で保持して、3次元の自由空間において所定の方向に操作したことが、角速度センサー58により検出され、本体32の動きに伴う角速度(ωx(t),ωy(t))の検出信号が取得される。
【0051】
ステップS2において記憶部202は、取得された角速度(ωx(t),ωy(t))をバッファリングする。ステップS3において加速度取得部203は、角加速度(ω’x(t),ω’y(t))を取得する。具体的には、記憶部202に前回記憶された角速度(ωx(t−1),ωy(t−1))と今回の角速度(ωx(t),ωy(t))との差をその間の時間で除算することで、角加速度(ω’x(t),ω’y(t))が演算される。
【0052】
次にステップS4乃至ステップS7において、補償処理部204により、取得された速度と加速度により操作信号の応答の遅延を補償するための演算が行なわれる。
【0053】
すなわちステップS4においてゲイン取得部211は、ステップS3で取得された角加速度(ω’x(t),ω’y(t))に応じたゲインG(t)を取得する。この関数としてのゲインG(t)は、後述するステップS7で角速度に乗算される。従って、その値1が基準値となり、ゲインG(t)が基準値より大きいとき、操作信号としての角速度は大きくなるように補正され、基準値より小さいとき、角速度は小さくなるように補正される。
【0054】
ゲインG(t)は、加速時(すなわち微分値である角加速度が正であるとき)、基準値以上(値1以上)の値とされ、減速時(すなわち微分値である角加速度が負であるとき)、基準値未満(値1未満)の値とされる。さらにゲインG(t)の絶対値は、加速度の絶対値が大きいほど基準値(値1)との差が大きくなる値とされる。
【0055】
ゲインG(t)は、演算することで取得してもよいし、予めマッピングされたテーブルから読み出すことで取得することもできる。また、ゲインG(t)は、X方向とY方向とで独立に求めてもよいし、両者のうちの絶対値が大きい方を代表値として選択するなどして1つを求めることもできる。
【0056】
ステップS5において補正部212は、速度取得部201により取得された角速度(ωx(t),ωy(t))に基づいてゲインG(t)を補正する。具体的には、ゲインG(t)は、角速度(ωx(t),ωy(t))が大きいほど、基準値(値1)に近い値となるように補正される。すなわち、この実施の形態の場合、ステップS4の処理(角加速度による処理)とステップS5の処理(角速度による処理)により、操作信号としての角速度とその微分値である角加速度の両方により規定される関数であるゲインG(t)が取得されることになる。
【0057】
この場合にも、補正値は、X方向とY方向とで独立に求めてもよいし、両者のうちの絶対値が大きい方を代表値として選択するなどして1つを求めることもできる。
【0058】
ステップS6において制限部213は、ゲインG(t)が閾値を超えないように制限する。すなわち、補正されたゲインG(t)が、予め定められている閾値の範囲内になるように制限される。換言すれば、閾値が最大値または最小値とされ、ゲインG(t)の絶対値が閾値を超えないように制限される。これにより、入力装置31が振動された場合に、ゲインG(t)の絶対値が小さ過ぎて遅延補償ができなくなったり、絶対値が大き過ぎて発振状態になってしまうようなことが抑制される。
【0059】
ステップS4ないしステップS6の処理は、各ステップの条件を満足するようにゲインG(t)をゲイン取得部211に予めマッピングしておけば、1回の読み出し処理で実行することができる。
【0060】
図10はこれらの条件を満足したマッピングの例を表している。この実施の形態においては、横軸は角加速度を、縦軸はゲインG(t)を、それぞれ表している。ゲインG(t)は、切片が1であり、角速度毎の傾きが正の直線により表されている。角速度は絶対値を表している。
【0061】
従って、同図の横軸に示される角加速度が正である場合(図10の右側の半分の領域の場合)、縦軸で表されるゲインG(t)は基準値(値1)以上の値となり、角加速度が負である場合(図10の左側の半分の領域の場合)、基準値(値1)未満の値となる(ステップS4)。
【0062】
さらに、ゲインG(t)は、基準値(値1)を切片とする傾きが正の直線で表される値とされているので、ゲインG(t)の絶対値は、角加速度の絶対値が大きいほど基準値(値1)との差の絶対値が大きくなる値となる(ステップS4)。換言すれば、微分値としての角加速度の絶対値が大きいほど、ゲインG(t)は操作信号としての角速度に対する補正量が大きくなる値に設定される。例えば角速度が1digit/sである場合、角加速度が5digit/s2である(すなわち角加速度の絶対値が小さい)とき、ゲインG(t)の値は約3である(値1との差の絶対値は2と小さい)のに対して、角加速度が−10digit/s2である(すなわち角加速度の絶対値が大きい)とき、ゲインG(t)の値は約−5となる(値1との差の絶対値は6と大きい)。
【0063】
また、ゲインG(t)は、角速度が大きいほど、基準値(値1)に近い値となる(ステップS5)。換言すれば、操作信号としての角速度が小さいほど、ゲインG(t)は角速度に対する補正量が大きくなる値に設定される。例えば、角加速度が15digit/s2である場合、角速度が1digit/sであれば(すなわち角速度が小さければ)、ゲインG(t)は約8となり(すなわちゲインG(t)の絶対値は大きくなり)、角速度が2digit/sであれば(すなわち角速度が大きければ)、ゲインG(t)は約5となる(すなわちゲインG(t)の絶対値は小さくなる)。角加速度が−50digit/s2である場合、角速度が4digit/sであれば(すなわち角速度が小さければ)、ゲインG(t)は約−6となり(すなわちゲインG(t)の絶対値は大きくなり)、角速度が16digit/sであれば(すなわち角速度が大きければ)、ゲインG(t)は約−1となる(すなわちゲインG(t)の絶対値は小さくなる)。
【0064】
またこのことは、角速度の補正は、実質的に、角速度が小さい場合においてのみ行われ、角速度が大きい場合には実行されないことを意味する。図10において、角速度が64digit/s、あるいは128digit/sと大きい場合、ゲインG(t)は基準値(値1)またはそれに近い値とされ、実質的に速度は補正されない。すなわち、角速度の補正は、入力装置31の移動開始直後と停止直前に行われる。
【0065】
このように、角速度が小さいほど、ゲインG(t)の絶対値を大きくすることで、自然な操作感を実現することができる。
【0066】
さらにゲインG(t)は、その値が閾値−10と閾値10の範囲内となるように、すなわちこれらの閾値を超えないように制限されている(ステップS6)。つまり、ゲインG(t)の最大値は閾値10とされ、最小値は閾値−10とされている。
【0067】
なお、図10の各速度の特性を表す各線は、直線ではなく、曲線とすることもできる。
【0068】
ステップS7において乗算部214は、操作信号としての角速度(ωx(t),ωy(t))にゲインG(t)を乗算する。すなわちゲインG(t)を係数として角速度に乗算することで、補正された角速度(ωx1(t),ωy1(t))が生成される。例えば、X軸方向とY軸方向をまとめた代表値としてゲインG(t)を使用した場合、補正された角速度(ωx1(t),ωy1(t))は次式で演算される。
【0069】
ωx1(t)=ωx(t)・G(t)
ωy1(t)=ωy(t)・G(t) (1)
【0070】
ステップS8において速度演算部206は速度(Vx(t),Vy(t))を演算する。速度は角速度に回転半径を乗算することで求められる。すなわち、ユーザーが入力装置31を操作した場合の入力装置31の運動は、ユーザーの肩、肘、または手首などを中心とした回転運動を合成したものとなる。そしてその回転半径は合成された回転運動の時間毎に変化する回転中心から入力装置31までの距離となる。
【0071】
入力装置31の速度を(Vx(t),Vy(t))とすると、回転半径(Rx,Ry)は次式で表される。
(Rx,Ry)=(Vx(t),Vy(t))/(ωx(t),ωy(t))・・・(2)
【0072】
式(2)の右辺の(Vx(t),Vy(t)),(ωx(t),ωy(t))は、速度のディメンジョンである。この式(2)の右辺に表されている速度と角速度とがそれぞれ微分され、加速度、あるいは加速度の時間変化率のディメンジョンとされても相関関係は失われない。同様に、速度と角速度とがそれぞれ積分され、変位のディメンジョンとされても相関関係は失われない。
【0073】
従って、式(2)の右辺に表されている速度および角速度をそれぞれ変位、加速度、加速度の時間変化率のディメンジョンとして、以下の式(3)乃至式(5)が得られる。
(Rx,Ry)=(x(t),y(t))/(ψ(t),θ(t))・・・(3)
(Rx,Ry)=(ax(t),ay(t))/(ω’x(t),ω’y(t))・・・(4)
(Rx,Ry)=(a’x(t),a’y(t))/(ω’’x(t),ω’’y(t))・・・(5)
【0074】
上記式のうち、例えば式(5)に注目すると、加速度(ax(t),ay(t))の変化値(a’x(t),a’y(t))と、角加速度(ω’x(t),ω’y(t))の変化値(ω’’x(t),ω’’y(t))が既知であれば、回転半径(Rx,Ry)を求められることが分かる。この実施の形態においては、式(5)に基づいて半径(Rx,Ry)が求められる。
【0075】
すなわち、加速度取得部205がセンサー102を構成する加速度センサー59が検出する加速度(ax(t),ay(t))を取得するので、速度演算部206は、加速度(ax(t),ay(t))を微分して、加速度の変化値(a’x(t),a’y(t))を演算する。また、速度演算部206は、速度取得部201が検出する角速度(ωx(t),ωy(t))を2階微分して、角加速度(ω’x(t),ω’y(t))の変化率(ω’’x(t),ω’’y(t))を演算する。そして速度演算部206は、加速度の変化率(a’x(t),a’y(t))を、角加速度(ω’x(t),ω’y(t))の変化率(ω’’x(t),ω’’y(t))で除算することで、回転半径(Rx,Ry)を演算する。
【0076】
さらに速度演算部206は、求めた半径(Rx,Ry)に角速度を乗算することで速度(Vx(t),Vy(t))を演算するのであるが、この角速度として、補正された角速度(ωx1(t),ωy1(t))、すなわちゲインG(t)が乗算された角速度(ωx(t),ωy(t))が用いられる。
【0077】
ステップS9において移動量計算部207は、補正された角速度(ωx1(t),ωy1(t))を用いて、ポインタ移動量を計算し、出力する。移動量計算部207は、ポインタ22の直前の位置座標に、速度を加算することで、新たな位置座標を演算する。すなわち、入力装置31の単位時間当たりのX方向とY方向の変位が、出力部16の画像表示部に表示されるポインタ22の単位時間当たりのX方向とY方向の変位量に変換される。
これにより、ゲインG(t)が大きいほど、すなわち操作信号としての角速度の補正量が大きいほど、応答の遅延の補償量が大きくなるようにポインタ移動量が計算される。つまり、ゲインG(t)が大きいほど、入力装置31が操作されてからポインタ22が移動するまでの遅延は少なくなり、ゲインG(t)の値をさらに大きくすれば、ポインタ22の動きが入力装置31の操作より位相的に進むことになる。
【0078】
なお、より簡便な方法としてステップS8を省略し、ステップS7で求めた補正された角速度を用いて、ポインタ移動量を求めてもよい。
【0079】
また、ここでは、入力装置31の手振れ成分をローパスフィルタで除去する処理、操作速度が遅い場合(低速度、低加速度である場合)、ポインタ22がアイコン21上に停止し易くするために、ポインタ22の移動速度を極端に遅くするための処理なども実行される。その他、例えば、ボタン33,34などを操作するとき入力装置31が動いてしまい、それが入力装置31全体の操作と誤認識されて、ポインタ22が移動してしまうのを防止するために、ボタン操作時にはポインタ22の移動を禁止する処理、加速度センサー59により検出された重力方向を下方向として、入力装置31の傾きを補正するための処理なども実行される。
【0080】
以上の処理は本体32が操作されている間、繰り返し行われる。
【0081】
ポインタ移動量を表す操作信号は、通信部54からアンテナ55を介してテレビジョン受像機10に送信される。
【0082】
テレビジョン受像機10においては、通信部12が入力装置31からの信号をアンテナ11を介して受信する。MPU13は受信された信号に対応する位置にポインタ22が表示されるようにビデオRAM15をマッピングする。その結果、出力部16においては、ポインタ22がユーザーの操作に対応する位置に表示される。
【0083】
なお、図9の各ステップS1乃至ステップS9のうちの一部または全部の処理は、テレビジョン受像機10側で実行することもできる。例えば、ステップS8までの処理を入力装置31で行い、ステップS9の処理はテレビジョン受像機10で実行することができる。そのようにすると、入力装置31の構成を簡略化し、その負担を軽減することができる。この場合、図8の機能的ブロックの一部または全部がテレビジョン受像機10側に具備される。
【0084】
また、以上の処理における角速度、角加速度は、単なる速度、加速度とすることもできる。
【0085】
[入力装置の特性]
【0086】
図11と図12は、ユーザーが入力装置31を所定の方向に移動させて停止する操作をした場合のポインタの移動を表している。図11において縦軸は速度を表し、横軸は時間を表しており、図12において縦軸は変位を表し、横軸は時間を表している。それぞれの単位はシミュレーション上の相対値である。このことは、後述する特性を表わす他の図においても同様である。
【0087】
速度の変化を表す図11において、線L1は実際の操作(すなわち、ポインタ22の遅延がない理想的な状態)に対応する速度を表している。速度が0の状態から、一定の割合で徐々に大きくなって、30に達し、所定の期間その速度が保持されている。その後、速度30の状態から、一定の割合で徐々に小さくなって、0に達している。線L2は応答に遅れのある系での速度を表す。すなわち、入力装置31が操作されてから、その操作に応答してポインタ22が移動されるまでに時間的な遅延がある系でのポインタ22の速度を表している。線L2は線L1と同様の特性となっているが、線L1より時間Tだけ遅延している(すなわち、位相的に遅れている)。つまり、入力装置31がユーザーにより操作された場合、その速度は線L1のように変化するが、その操作信号は遅延して検出されるため、操作信号の速度(操作信号に基づき制御されるポインタ22の速度に対応する)は、線L2のように変化する。
【0088】
線L3は、図9のフローチャートで示されるように、遅延を補償処理した場合の結果を表している。運動の開始時において、線L3の速度変化の開始点は線L2と同じであり、速度が0であるその開始点から線L2より大きい傾きで(すなわちより加速度の絶対値がより大きい状態で)、急激に、速度が線L2より大きくなり、線L1より若干小さいが、線L1に近い値となる。換言すれば、運動開始直後、補償した線L3は、急激に、遅延がない線L1とほぼ同じ特性になる。図中の位置で表現すれば、運動開始直後に、線L3は線L2より上で、線L1に近い、線L1より下に位置した状態になる。つまり、遅延時間が、最大値Tから急激に最小値Tになる。これは、ユーザーが操作を開始すると、すぐに応答することを意味する。すなわち、線L3は線L2の遅延を補償した、線L1に近似した線になることがわかる。
【0089】
その後、線L3は線L1の近傍で、線L1(従って、線L2)とほぼ同様の一定の傾きで(すなわち、一定の遅延時間Tのまま)徐々に大きくなる。ただし、線L3は線L2より位相的に進んでいるが、線L1より位相的に若干遅れた状態(すなわち、図11において、線L3は線L2より上側および左側に位置するが、線L1より若干下側および右側に位置する状態)となっている。すなわちポインタは移動開始直後から、ほぼ遅延がない状態(最小の遅延時間Tの状態)で加速される。
【0090】
線L3は速度30を超えてもさらに大きくなる。そして、線L2が一定の速度30になる直前のタイミングで、線L3は速度40に達した後、大きい傾きで、急激に、速度30まで減少する。これは、過渡的な速度の増加状態が急激に解消され、安定速度に達することを意味する。
【0091】
その後、線L3の速度は所定の時間、一定値30のままとなる。すなわち、ポインタ22の速度は0の状態から徐々に大きくなった後、30で安定する。
【0092】
運動の停止時においては、線L1の速度が30より小さくなり始めても、線L3の速度はまだしばらくの時間、30のままである。そして、線L2の速度が30から減少し始める直前のタイミングで、線L3は、大きい傾きで、急激に(すなわちより加速度の絶対値がより大きい状態で)、線L1に近い値であって、線L1より大きい速度18まで減少する。つまり、遅延時間が、最大値Tから急激に最小値Tになる。これは、ユーザーが操作を停止しようとすると、すぐに応答することを意味する。すなわち、線L3は、線L2の遅延を補償した線L1に近似した線になり、遅延が補償されていることがわかる。
【0093】
その後、線L3は線L1(従って、線L2)とほぼ同様の傾きで、線L1の近接で、一定の傾きで(すなわち、一定の遅延時間Tのまま)徐々に小さくなる。ただし、線L3は線L2より位相的に進んでいるが、線L1より位相的に若干遅れた状態(すなわち、図11において、線L3は線L2より下側および左側に位置するが、線L1より若干上側および右側に位置する状態)となる。すなわちポインタは移動停止開始直後から、ほぼ遅延がない状態(最小の遅延時間Tの状態)で減速される。
【0094】
線L3は、速度が0を超えてもさらに小さくなる。そして、線L2の速度が速度0になる直前のタイミングで、線L3の速度は約−9に達した後、そこから大きい傾きで(すなわち急激に)0まで増加する。これは、過渡的な速度の減少状態が急激に解消され、0に達することを意味する。
【0095】
結局、線L3は、線L2の遅れを補償した、線L1に近い特性になっている。
【0096】
図12は、図11の速度変化に対応するポインタ22の変位を表している。線L11は実際の操作に対応する変位(すなわち遅れがない変位)を表し、線L12は遅延した系の変位を表し、線L13は図9のフローチャートで示されるように遅延を補償処理した場合の結果を表している。
【0097】
線L11は、変位が0の状態からほぼ一定の傾きで増加した後、約2900に達する特性となっている。線L12は、線L11とほぼ同じ変化の特性となっているが、線L11より遅延している(すなわち、位相的に遅れている)。図においては、線L12は線L11より図中下側および右側に位置している。
【0098】
線L13は、線L12とほぼ同じ開始点から変位が始まり、速やかに線L11に近い値となり、その後、線L11(従って線L12)とほぼ同様の傾きで、一定の割合で徐々に大きくなる。ただし、線L13は線L12より大きいが、線L11より若干小さい。すなわち、図12において、線L13は線L12より大きく、かつ、線L11の近傍で、線L11より小さくなっている。このように、線L13は、線L12の遅延を補償した線であって、線L11に近似した特性の線となる。
【0099】
線L13は、変位2900に達する直前に、線L11より若干大きくなり(すなわち、図12において、線L13は線L11より若干上側に位置する状態となり)、その後、一定値2900に収束する。このように、線L13は、線L12の遅れを補償して線であって、線L11に近似した特性の線になる。
【0100】
その結果、ユーザーは入力装置31を自由空間で任意の方向に操作して、例えばポインタ22をその方向の所望のアイコン21まで速やかに移動させ、そこで停止させることができる。そのときユーザーが、操作上の違和感を覚えることが抑制される。すなわち、ユーザーが、ポインタ22の移動の開始が、入力装置31の操作の開始より遅いと感じたり、ポインタ22の移動の停止が、入力装置31のN操作の停止より遅いと感じたりすることが抑制される。その結果、操作感を向上させることができる。
【0101】
このことは、いわゆるコンシューマ用の電子機器で顕著となる。すなわち、コンシューマ用の電子機器は業務用の電子機器に比べて、MPUのクロックなども遅く、遅延が大きい。しかし、そのような電子機器でもユーザーが操作上の違和感を感じるようなことが抑制され、操作感を向上させることができる。
【0102】
以上においてはポインタの移動操作について説明したが、スクロール、ズーミング(拡大、・縮小)、回転など、他のGUI(Graphical User Interface)の画面操作に適用しても、同様に操作感を向上させることができる。
【0103】
図13は、入力装置31を振動させた場合の特性を表している。図13Aの縦軸は速度、図13Bの縦軸は変位、をそれぞれ表し、横軸はいずれも時間を表している。
【0104】
図13Aにおいて、線L21は遅延がない場合、線L22は遅延がある場合、線L23は遅延を補償した場合、をそれぞれ表している。図13Bにおいて、線L31は遅延がない場合、線L32は遅延がある場合、線L33は遅延を補償した場合、をそれぞれ表している。入力装置31の振動の周波数が高いとき、遅延の補償ができておらず、また発振していることがわかる。
【0105】
図14は、入力装置31を振動させた場合において、ゲインG(t)を制限した場合の特性を表している。図14Aの縦軸は速度、図14Bの縦軸は変位、をそれぞれ表し、横軸はいずれも時間を表している。
【0106】
図14Aにおいて、線L51は遅延がない場合、線L52は遅延がある場合、線L53は遅延を補償した場合、をそれぞれ表している。図14Bにおいて、線L61は遅延がない場合、線L62は遅延がある場合、線L63は遅延を補償した場合、をそれぞれ表している。これらの図から、発振が抑制されていることがわかる。これが、図9のステップS6の処理の効果である。
【0107】
なお、同様の効果は、ローパスフィルタにより発振周波数を除去することでも実現することができる。
【0108】
本実施の形態においては、ユーザーの操作を先読みすることもできる。すなわち、位相的に進むまで、遅延を過剰に補償することもできる。これはゲインG(t)の値を大きくすることで実現することができる。図15と図16は、この場合の特性を表している。図15と図16は、それぞれ図11と図12に対応する。図15の線L81、L82、L83は、図11の線L1、L2、L3にそれぞれ対応し、図16の線L91、L92、L93は、図12の線L11、L12、L13にそれぞれ対応する。
【0109】
図15を図11と比較して明らかなように、図15においては、運動開始直後に、線L83が線L82と同じ始点から急激に大きくなった後、線L81より大きくなり(図中線83が線L81より上側および左側に位置し)、その後、線L81と同じ傾斜で徐々に増加する。また、運動停止時においても、線L83は、一定値30から急激に、線L81より小さくなり(図中線83が線L81より下側および左側に位置し)、その後、線L81と同じ傾斜で徐々に減少する。
【0110】
図16においても、運動開始直後、線L93は、線L92より大きいだけでなく、急激に線L91より大きくなり、以後、線L91の近傍で、ほぼ線L91と同様に増加し、変位2900に収束する。
【0111】
この場合、ポインタ22がユーザーの操作より先行して移動することになる。
【0112】
そこで、若干の遅れが残るように補償した場合、位相的に進むように補償した場合、およびほとんど遅れが0になるように補償した場合、の3つの場合を比較すると、図17乃至図22に示されるようになる。図17と図18は、若干の遅れが残るように補償した場合を表し、図18と図19は、位相的に進むように補償した場合を表し、図20と図21は、ほとんど遅れが0になるように補償した場合を表している。いずれもポインタが所定の方向に移動された後、逆方向に移動された場合を表している。
【0113】
図17、図19、および図21の縦軸は変位量を表し、図18、図20、および図22の縦軸は速度を表す。横軸はいずれも時間を表す。
【0114】
図17と図18において、線L101、線L111は遅延がない場合、線L102、線L112は系に0.2秒の遅延がある場合(補償しない場合)、線L103、線L113、線L131は若干の遅延が残るように補償した場合、をそれぞれ表している。図17において、線L103は、線L101と線L102の間に位置しており、図18においても、線L113は、線L111と線L112の間に位置しており、遅延が0.2秒より短い時間に補償されていることがわかる。
【0115】
図19と図20において、線L121、線L131は遅延がない場合、線L122、線L132は系に遅延がある場合(補償しない場合)、線L123、線L133は位相的に進むように補償した場合、をそれぞれ表している。図19において、変位が増加する場合、線L123は線L121より上側および左側に位置しており、変位が減少する場合、線L123は線L121より下側および左側に位置している。図20においても速度が増加する場合、線L133は線L131より上側および左側に位置しており、速度が減少する場合、線L133は線L131より下側および左側に位置しており、線L123、線L133が、線L122、線L132より位相的に進んでいることがわかる。
【0116】
図21と図22において、線L141、線L151は遅延がない場合、線L142、線L152は遅延がある場合(補償しない場合)、線L143、線L153は遅延が残らないように補償した場合、をそれぞれ表している。図21において、変位が増加する場合も、変位が減少する場合も、ほぼ線L143は線L141に沿って変化している。図22においても速度が増加および減少する場合、ほぼ線L153は線L151に沿って変化しており、適正な補償が行われていることがわかる。
【0117】
複数の被験者で実験したところ、図21と図22に示されるように、応答の遅れがほぼ0になるように補償した場合の操作感が、図17乃至図20に示される場合に較べて、最も違和感がないと評価された。
【0118】
<2.第2の実施の形態>
[テレビジョン受像機の動作]
【0119】
ゲインG(t)の値を、テレビジョン受像機10における遅延量に応じて変更することもできる。図23と図24はこの場合のテレビジョン受像機10と入力装置31の処理を表している。
【0120】
テレビジョン受像機10は図23に示されるタイマー処理を実行する。
【0121】
ステップS31においてテレビジョン受像機10は、タイマー値に0をセットする。ステップS32においてテレビジョン受像機10は、処理サイクル完了まで待機する。すなわち、入力装置31から出力されたポインタ移動量の情報を受信してから、画面のポインタ22の移動を完了するまでの処理サイクルが完了したとき、ステップS33においてテレビジョン受像機10は、その間に計測したタイマー値を送信する。その後、処理はステップS31に戻り、同様の処理が繰り返し実行される。
【0122】
すなわち、テレビジョン受像機10は各処理サイクルが完了する毎に、各処理サイクルの処理に要した時間に対応するタイマー値を入力装置31に送信する。つまり、テレビジョン受像機10が上記処理に要する時間は、テレビジョン受像機10で使用されているMPU13の能力によって異なる他、処理中のMPU13の負荷等の状況によっても変化する。そこで、テレビジョン受像機10は処理時間をタイマーで計測し、それを入力装置31に送信する。
【0123】
[入力装置の動作]
【0124】
処理時間が長ければ、それだけ遅延量が大きいことになる。そこで入力装置31は、テレビジョン受像機10からのタイマー値に基づいてゲインG(t)の値を、図24のフローチャートに示されるように制御する。
【0125】
図24のステップS51乃至ステップS60の処理は、基本的に図9のステップS1乃至ステップS9の処理と同様の処理である。ただし、図24においては、図9のステップS5の角速度に基づいてゲインG(t)を補正する処理は省略されている。なお省略しなくてもよい。補正処理を省略しなかった場合、ゲインG(t)は、角速度と角加速度により規定される関数となり、省略した場合、角加速度により規定される関数となる。
【0126】
そして図24においては、図9のステップS4に対応するステップS54の処理の後に、ステップS55として、タイマー値を受信する処理が実行される。
【0127】
すなわち、ステップS51において角速度(ωx(t),ωy(t))が取得されると、ステップS52でそれが記憶部202に一旦バッファリングされる。ステップS53で、今回の角速度(ωx(t),ωy(t))と記憶された前回の角速度(ωx(t−1),ωy(t−1))との差(1ステップ前と後の角速度の差)を演算することで角加速度(ω’x(t),ω’y(t))が演算される。すなわち、角速度が微分され、微分値である角加速度が取得される。ステップS54では角加速度(ω’x(t),ω’y(t))に応じたゲインG(t)が取得される。
【0128】
ステップS55で補正部212は、図23のステップS33でテレビジョン受像機10から送信されたタイマー値を受信する。具体的には、テレビジョン受像機10からの信号がアンテナ55を介して通信部54により受信、復調され、補正部212により取得される。そしてステップS56で補正部212は、タイマー値に応じてゲインG(t)を補正する。具体的には次式が演算される。
加速時:G(t)+α
減速時:G(t)−α (6)
【0129】
上記式のαは、タイマー値が大きいほど大きい正の値であり、所定の関数に基づき演算されるか、またはマッピングされたメモリから取得される。従って、ゲインG(t)は、加速時、遅延が大きい程、大きい値に補正され、減速時、遅延が大きい程、小さい値に補正される。
【0130】
その後のステップS57乃至ステップS60の処理は、図9のステップS6乃至ステップS9の処理と同様であり、その説明は繰り返しになるので省略する。
【0131】
処理に時間がかかると、それに比例して遅延量も大きくなる。そこで上記式(6)に示されるように遅延量に応じてゲインG(t)を変化させることで、より操作感を向上させることができる。
【0132】
なお、この場合においても、処理の一部または全部を、テレビジョン受像機10側で実行させることができる。
【0133】
<3.第3の実施の形態>
[入力装置の動作]
【0134】
図9の実施の形態では、ゲインG(t)を速度と加速度により決定するようにしたが、加速度のみにより決定することもできる。図25はこの場合のポインタ表示処理を表している。
【0135】
ステップS81において速度取得部201は、角速度センサー58の出力から角速度(ωx(t),ωy(t))を得する。ステップS82で角速度が記憶部202により一旦記憶されると、ステップS83で加速度取得部203は、今回の角速度(ωx(t),ωy(t))と、記憶部202に記憶されている前回の角速度(ωx(t−1),ωy(t−1))との差(1ステップ前と後の角速度の差)を演算することで角加速度(ω’x(t),ω’y(t))を取得する。すなわち、角速度が微分され、微分値である角加速度が取得される。
【0136】
ステップS84でゲイン取得部211は、角加速度(ω’x(t),ω’y(t))に応じたゲインG(t)を取得する。ゲインG(t)は、加速時には1より大きい値とされ、減速時には1より小さい値とされる。
【0137】
ステップS85において制限部213は、ゲインG(t)を基準値を超えないように制限する。
【0138】
ステップS86において乗算部214は、角速度(ωx(t),ωy(t))にゲインG(t)を乗算して、補正された角速度(ωx1,ωy1)を演算する。すなわち、次式が演算される。なおこの式(7)は、上述した式(1)と同じ式である。
【0139】
ωx1(t)=ωx(t)・G(t)
ωy1(t)=ωy(t)・G(t) (7)
【0140】
ステップS87において速度演算部206は速度(Vx(t),Vy(t))を演算する。すなわち、ユーザーが入力装置31を操作した場合における入力装置31の運動の半径(Rx,Ry)が、加速度の変化率(a’x(t),a’y(t))を、角加速度変化率(ω’’x(t),ω’’y(t))で除算することで求められる。
【0141】
そして速度演算部206は、求めた半径(Rx,Ry)に角速度を乗算することで速度(Vx(t),Vy(t))を演算する。この場合の角速度として、補正角速度(ωx1(t),ωy1(t))、すなわちゲインG(t)が乗算された角速度(ωx(t),ωy(t))が用いられる。
【0142】
ステップS88において移動量計算部207は、ステップS87の処理で演算された速度(Vx(t),Vy(t))を用いて、ポインタ移動量を計算し、出力する。移動量計算部207は、ポインタ22の直前の位置座標に、速度を加算することで、新たな位置座標を演算する。すなわち、入力装置31の単位時間当たりのX方向とY方向の変位が、出力部16の画像表示部に表示されるポインタ22の単位時間当たりのX方向とY方向の変位量に変換される。これにより、ゲインG(t)が大きいほど、すなわち角速度の補正量が大きいほど、応答の遅延の補償量が大きくなるようにポインタ移動量が計算される。
【0143】
このように、この実施の形態においては、図9のステップS5における角速度(ωx(t),ωy(t))に基づくゲインG(t)の補正処理が行われない。すなわち、ゲインG(t)が角加速度のみにより取得・決定される。
【0144】
なお、この場合においても、処理の一部または全部を、テレビジョン受像機10側で実行させることができる。
[入力装置の特性]
【0145】
図26と図27は、図25に示されるように加速度のみにより決定されたゲインG(t)を用いて遅れを補償処理した場合の速度と変位の変化を表している。図26は図11に対応し、図27は図12に対応している。
【0146】
図26の線L161、線L162、および線L163は、図11の線L1、線L2、および線L3にそれぞれ対応する。移動の開始時、補償された速度の線L163は、遅延している速度の線L162とほぼ同じ始点から、線L161(従って、線L162)より大きい傾きで一定の割合で約50まで増加し、そこから大きい傾斜で30まで減少する。その後、所定の時間、一定の速度30となり、移動の終了時、補償された速度の線L163は、遅延している速度の線L162が減少を開始する点とほぼ同じ点から、線L161より大きい傾きで一定の割合で約−17まで減少する。さらに線L163は、そこから大きい傾きで0まで増加する。
【0147】
図27の線L171、線L172、および線L173は、図12の線L11、線L12、および線L13にそれぞれ対応する。移動の開始時、線L173は、線L172とほぼ同じ開始点から変位が始まり、速やかに線L171に近い値となり、その後、線L171(従って線L172)とほぼ同様の傾きで、一定の割合で徐々に大きくなる。ただし、線L173は線L172より大きいが、線L171より若干小さい。すなわち、図27において、線L173は線L172より大きく、かつ、線L171の近傍で、線L171より小さくなっている。このように、線L173は、線L172の遅延を補償した線であって、線L171に近似した特性の線となる。
【0148】
線L173は、約2900の変化に達する直前に、線L171より大きくなり(すなわち、図27において、線L173は線L171より若干上側に位置する状態となり)、その後、一定値2900に収束する。このように、線L173は、線L172の遅れを補償して線であって、線L171に近似した特性の線になる。
【0149】
しかし、図26を図11と比較して明らかなように、加速時および減速時において、線L163が線L161の近傍に移置するまでの時間が、図11の場合より長くなる。
【0150】
また、図27を図12と比較して明らかなように、移動開始直後において、線L173が線L171の近傍に移置するまでの時間が、図12の場合より長く、かつ線L173と線L171との間の距離が、図12における場合より大きい。停止開始時においても、線L173が線L171の近傍に移置するまでの時間が、図12の場合より長く、かつ線L173と線L171との間の距離が、図12における場合より大きい。
【0151】
図28と図29は、加速度のみにより決定したゲインG(t)を利用して、ポインタを所定の方向に移動させた後、逆方向に戻す操作を行った場合の結果を表している。線L181、線191は遅延がない場合、線L182、線192は遅延がある場合(補償しない場合)、線L183、線193はほぼ遅延が0になるように補償した場合、をそれぞれ表している。
【0152】
図28は、速度が大きい領域での遅延が補償されるようにした場合を表している。この場合の被験者の評価は、速度が大きい場合には遅延を意識しないが、速度が小さい場合には、遅延が気になるというものであった。
【0153】
図29は、速度が小さい領域での遅延が補償されるようにした場合を表している。この場合の被験者の評価は、速度が小さい場合には遅延を意識しないが、速度が大きい場合には、遅延が気になるというものであった。
【0154】
図30は、加速度のみにより決定したゲインG(t)を利用して、ポインタを所定の方向に移動させた後、逆方向に戻す操作を行った場合における速度の変化を表している。線L201は遅延がない場合、線L202は遅延がある場合(補償しない場合)、線L203は遅延がほぼ0になるように補償した場合、をそれぞれ表している。
【0155】
この場合の被験者の評価は、遅延はほぼ補償されているという感覚はもてるものの、ポインタ22の動きはじめと動き終わりの感応性に違和感を覚えるというものであった。すなわち、ユーザーが入力装置31を操作した後、一拍おいて、突然極端にポインタの加速が始まり、停止時も、急減速してポインタ22が停止するので不自然な感じがするというものであった。
【0156】
以上のように、被験者から、ポインタ22の移動の遅延は十分ではないが一応補償されているという評価は得られた。しかし、速度プロファイルが現実と乖離しており、入力装置31が勝手に不自然な加減速を行っているという評価、すなわち、いかにも人工的な補償がなされているという評価が得られた。従って、ゲインG(t)は加速度だけでなく、加速度と速度の両方に基づき決定するのが好ましい。
【0157】
<4.第4の実施の形態>
[入力装置の構成]
【0158】
以上においては、角速度センサー58と加速度センサー59をセンサーとして用いるようにしたが、イメージセンサーを用いることもできる。図31はこの場合の構成を表している。
【0159】
この実施の形態においては、入力装置31の先端に、CMOS(complementary metal oxide semiconductor)などのイメージセンサー401が取り付けられている。ユーザーは、入力装置31を操作して、イメージセンサー401により、それが指向する方向の画像を撮像させる。イメージセンサー401により撮像された画像の現在座標(X1,Y1)と、時間Δtだけ前の座標(X2,Y2)から、速度(Vx,Vy)が次式に従って演算される。
Vx=(X1−X2)/Δt
Vy=(Y1−Y2)/Δt (9)
【0160】
以下、この速度を利用して、上述した場合と同様に補償処理を行うことができる。
【0161】
<5.第5の実施の形態>
[入力装置の構成]
【0162】
さらに、センサーとして地磁気センサーを利用することもできる。図32はこの場合の実施の形態を表している。
【0163】
この実施の形態においては、入力装置31は、センサー501と演算部502を有している。センサー501は、地磁気センサー511と加速度センサー512を有している。
【0164】
ユーザーは入力装置31を任意の方向に移動させる。地磁気センサー511は入力装置31が操作された場合、その絶対的角度(方向)を検出する。演算部502は式(9)で表わした場合と同様に(但し、座標値は角度値に置き換えられる)、時間的に前後の角度をその間の時間で除算することで、角速度を演算する。
【0165】
以下、この角速度を利用して、上述した場合と同様に補償処理を行うことができる。
【0166】
なお、演算部502は、加速度センサー512の検出出力に基づいて、ピッチ角とロール角を算出し、それに基づいて、傾斜を補償して、位置座標をより正確な値に補正する。
その処理には、公知の傾斜補償アルゴリズムを用いることができる。
【0167】
<6.第6の実施の形態>
[入力装置の構成]
【0168】
また、可変抵抗をセンサーとして利用することもできる。図33はこの場合の実施の形態を表している。
【0169】
この実施の形態においては、入力装置31がセンサーとして、可変抵抗600を有している。可変抵抗600においては、スライド部604,605が、図中左右方向(X軸方向)に配置された棒状の抵抗器612,613により案内されて、左右方向にスライド自在とされている。同様に、スライド部608,609が、図中上下方向(Y軸方向)に配置された棒状の抵抗器610,611により案内されて、図中上下方向(Y軸方向)にスライド自在とされている。
【0170】
端部にスライド部604,605が取り付けられているバー602には、溝603が形成されている。端部にスライド部608,609が取り付けられているバー606には、溝607が形成されている。溝603,607には、操作部601がスライド自在に配置されている。
【0171】
従ってユーザーが、操作部601を枠614内で、任意の方向に移動させると、操作部601が位置するX軸方向の抵抗値とY軸方向の抵抗値が変化する。この抵抗値は枠614のX方向とY方向の座標を表している。そこで、式(9)で表した場合と同様に、2つの座標を時間で除算することで、速度を求めることができる。
【0172】
以下、この速度を利用して、上述した場合と同様に補償処理を行うことができる。
【0173】
図33の入力装置31においては、操作部601の質量を大きくし、入力装置31全体を所定の方向に傾けることで操作部601が枠614内で移動するようにしてもよいし、ユーザーが操作部601を指で操作するようにしてもよい。
【0174】
<7.第7の実施の形態>
[入力システムの構成]
【0175】
図34は、本発明の他の入力システムの一実施の形態の構成を表している。
【0176】
図34の入力システム701においては、ユーザーの手や指のジェスチャによる操作が検出され、それによりコマンドが入力される。
【0177】
入力システム701のテレビジョン受像機711は、復調部721、ビデオRAM722、画像処理部723、MPU724、および出力部725を有している。またテレビジョン受像機711の上部には、イメージセンサ726が取り付けられている。
【0178】
復調部721は、図示せぬアンテナを介して受信されたテレビジョン放送信号を復調し、ビデオ信号をビデオRAM722に出力し、オーディオ信号を出力部725に出力する。ビデオRAM722は、復調部721から供給されたビデオ信号を記憶する他、イメージセンサ726が撮像した画像を記憶する。画像処理部723はビデオRAM722に記憶されたユーザーの画像から、手または指(これらは入力装置31の操作部に対応するので、以下、操作部とも称する)のジェスチャを検出し、コマンド化する。この機能は、例えば特開昭59−132079号公報、特開平10−207618号公報などの公知の技術により実現可能である。
【0179】
画像処理部723は、イメージセンサ726が撮像したユーザーの操作部のジェスチャを検出するものなので、この実施の形態の場合、電子機器としてのテレビジョン受像機711の構成の一部が入力装置を構成している。画像処理部723は、ポインタ22などの座標をMPU724に出力する。MPU724は、入力された座標に基づいて出力部725に表示されるポインタ22の表示位置を制御する。
【0180】
なお、画像処理部723とMPU724は、一体化して構成することもできる。
【0181】
出力部725は、画像表示部と音声出力部とを有している。検出部としてのイメージセンサ726は出力部725の画像表示部に表示されている画像を見ながらジェスチャ運動をするユーザーの身体の少なくとも一部である操作部を撮像する。
【0182】
[画像処理部の機能的構成]
【0183】
図35は、内蔵するメモリに記憶されているプログラムに従って動作する画像処理部723の機能的構成を表している。画像処理部723は、変位取得部821、記憶部822、速度取得部823、記憶部824、加速度取得部825、補償処理部826、および出力部827を有している。
【0184】
変位取得部821は、ビデオRAM722に記憶されたユーザーの操作部の変位を取得する。記憶部822は、変位取得部821により取得された変位を記憶する。速度取得部823は、記憶部822に記憶された、1ステップ前と後の変位の差を演算することで、速度信号を演算する。すなわち変位を微分することで操作信号としての速度が取得される。記憶部824は、速度取得部823により取得された速度を記憶する。加速度取得部825は、記憶部824に記憶された、1ステップ前と後の速度信号の差を演算することで、加速度信号を演算する。すなわち、操作信号としての速度を微分することで、その微分値としての加速度が取得される。この実施の形態の場合、速度取得部823と加速度取得部825は、第1の取得部を構成する。
【0185】
補償処理部826は、加速度取得部825により取得された微分値としての加速度により規定されるゲインG(t)、または変位取得部821により取得された操作信号としての速度と、加速度取得部825により取得された微分値としての加速度により規定されるゲインG(t)を生成し、操作信号としての速度に乗算する。すなわち操作信号としての速度が補正される。
【0186】
補償処理部826は、関数部841と補償部842を有し、関数部841は、ゲイン取得部831、補正部832、および制限部833を有し、補償部842は乗算部834を有している。
【0187】
ゲイン取得部831は、加速度取得部825により取得された微分値としての加速度により規定されるゲインG(t)を取得する。補正部832は、速度取得部823により取得された操作信号としての速度に基づいて、必要に応じて、ゲインG(t)を補正する。制限部833は、補正されないゲインG(t)、または補正されたゲインG(t)が閾値を超えるのを制限する。乗算部834は、速度取得部823により取得された操作信号としての速度に、制限部833により制限された関数であるゲインG(t)を乗算することにより、操作信号としての速度を補正し、遅延を補償する。
【0188】
出力部827は、乗算部834により補償された操作信号としての速度に基づいて、ポインタ22の座標を演算し、出力する。
【0189】
[テレビジョン受像機の動作]
【0190】
次に図36を参照してテレビジョン受像機711のポインタ表示処理について説明する。この処理は、テレビジョン受像機711の出力部725に表示されているポインタ22を所定の方向に移動させるために、ユーザーが操作部を任意の所定の方向に操作した場合、すなわち、3次元の自由空間において、操作部の全体が任意の方向に動かされた場合に実行される。この処理は、テレビジョン受像機711の画面の表示を制御する操作信号を、実質的に入力装置を内蔵する(すなわち、一体化されている)テレビジョン受像機711において生成する処理である。
【0191】
ステップS101において変位取得部821は変位(x(t),y(t))を取得する。具体的には、ユーザーの操作部の画像がイメージセンサ726により撮像され、ビデオラム723に記憶される。変位取得部821はこの画像から、操作部の座標を取得する。
【0192】
ステップS102において記憶部822は、取得された変位(x(t),y(t))をバッファリングする。ステップS103において速度取得部823は、速度(x’(t),y’(t))を取得する。具体的には、記憶部822に前回記憶された変位(x(t−1),y(t−1))と今回の変位(x(t),y(t))との差をその間の時間で除算することで、操作信号としての速度(x’(t),y’(t))が演算される。すなわち微分値が演算される。
【0193】
ステップS104において記憶部824は、取得された速度(x’(t),y’(t))をバッファリングする。ステップS105において加速度取得部825は、加速度(x’’(t),y’’(t))を取得する。具体的には、記憶部824に前回記憶された速度(x’(t−1),y’(t−1))と今回の速度(x’(t),y’(t))との差をその間の時間で除算することで、微分値としての加速度(x’’(t),y’’(t))が演算される。すなわち、操作信号の微分値が取得される。
【0194】
次にステップS106乃至ステップS109において、補償処理部826により、取得された操作信号としての速度と、その微分値としての加速度により、操作信号の応答の遅延を補償するための演算が行なわれる。
【0195】
すなわちステップS106においてゲイン取得部831は、ステップS105で取得された加速度(x’’(t),y’’(t))により規定されるゲインG(t)を取得する。この関数としてのゲインG(t)は、後述するステップS109で操作信号としての速度に乗算される。従って、その値1が基準値となり、ゲインG(t)が基準値より大きいとき、速度は大きくなるように補正され、基準値より小さいとき、速度は小さくなるように補正される。
【0196】
ゲインG(t)は、加速時(すなわち加速度が正であるとき)、基準値以上(値1以上)の値とされ、減速時(すなわち加速度が負であるとき)、基準値未満(値1未満)の値とされる。さらにゲインG(t)の絶対値は、加速度の絶対値が大きいほど基準値(値1)との差が大きくなる値とされる。
【0197】
ゲインG(t)は、演算することで取得してもよいし、予めマッピングされたテーブルから読み出すことで取得することもできる。また、ゲインG(t)は、X方向とY方向とで独立に求めてもよいし、両者のうちの絶対値が大きい方を代表値として選択するなどして1つを求めることもできる。
【0198】
ステップS107において補正部832は、速度取得部823により取得された速度(x’(t),y’(t))に基づいてゲインG(t)を補正する。具体的には、ゲインG(t)は、速度(x’(t),y’(t))が大きいほど、基準値(値1)に近い値となるように補正される。
【0199】
この場合にも、補正値は、X方向とY方向とで独立に求めてもよいし、両者のうちの絶対値が大きい方を代表値として選択するなどして1つを求めることもできる。
【0200】
なお、この補正処理は省略することもできる。補正処理を省略しなかった場合、ゲインG(t)は、速度と加速度により規定される関数となり、省略した場合、加速度により規定される関数となる。
【0201】
ステップS108において制限部833は、ゲインG(t)が閾値を超えないように制限する。すなわち、補正されたゲインG(t)が、予め定められている閾値の範囲内になるように制限される。換言すれば、閾値が最大値または最小値とされ、ゲインG(t)の絶対値が閾値を超えないように制限される。これにより、ユーザーの操作部が振動された場合に、ゲインG(t)の絶対値が小さ過ぎて遅延補償ができなくなったり、絶対値が大き過ぎて発振状態になってしまうようなことが抑制される。
【0202】
ステップS106ないしステップS108の処理は、各ステップの条件を満足するようにゲインG(t)をゲイン取得部831に予めマッピングしておけば、1回の読み出し処理で実行することができる。
【0203】
ステップS109において補償部842を構成する乗算部834は、操作信号としての速度(x’(t),y’(t))にゲインG(t)を乗算する。すなわちゲインG(t)を係数として速度に乗算することで、補正された速度(x’1(t),y’1(t))が生成される。例えば、X軸方向とY軸方向をまとめた代表値としてゲインG(t)を使用した場合、補正された速度(x’1(t),y’1(t))は次式で演算される。
【0204】
x’1(t)=x’(t)・G(t)
y’1(t)=y’(t)・G(t) (10)
【0205】
ステップS110において出力部827は、補正された速度(x’1(t),y’1(t))に基づいて、座標を演算し、出力する。出力部827は、ポインタ22の直前の位置座標に、速度を加算することで、新たな位置座標を演算する。すなわち、ユーザーの操作部の単位時間当たりのX方向とY方向の変位が、出力部725の画像表示部に表示されるポインタ22の単位時間当たりのX方向とY方向の変位量に変換される。これにより、ゲインG(t)が大きいほど、すなわち速度の補正量が大きいほど、応答の遅延の補償量が大きくなるようにポインタ移動量が計算される。つまり、ゲインG(t)が大きいほど、操作部が操作されてからポインタ22が移動するまでの遅延は少なくなり、ゲインG(t)の値をさらに大きくすれば、ポインタ22の動きが操作部の操作より位相的に進むことになる。
【0206】
また、ここでは、操作部の手振れ成分をローパスフィルタで除去する処理、操作速度が遅い場合(低速度、低加速度である場合)、ポインタ22がアイコン21上に停止し易くするために、ポインタ22の移動速度を極端に遅くするための処理なども実行される。
【0207】
以上の処理は操作部が操作されている間、繰り返し行われる。
【0208】
以上のように、この実施の形態においては、ゲインG(t)が、操作信号としての速度とその微分値としての加速度に応じて決定される。
【0209】
<8.第8の実施の形態>
[画像処理部の機能的構成]
【0210】
ゲインG(t)を、操作信号としての変位と、その微分値としての速度に応じて決定することもできる。図37と図38を参照してこの場合の実施の形態について説明する。
【0211】
図37は、この場合の画像処理部723の機能的構成を示すブロック図である。
【0212】
図37の画像処理部723においては、図35における記憶部824と加速度取得部825が省略され、速度取得部823の出力が、そのままゲイン取得部831に供給されている。また、補正部832と乗算部834には、速度検出部823が所得する速度に代えて、変位取得部821が取得する変位が供給されている。図37の画像処理部723のその他の構成は、図35における場合と同様であり、繰り返しになるのでその説明は省略する。この実施の形態の場合、変位取得部821と速度取得部823は、第1の取得部を構成する。
【0213】
[テレビジョン受像機の動作]
【0214】
次に図38を参照してテレビジョン受像機711のポインタ表示処理について説明する。この処理は、テレビジョン受像機711の出力部725に表示されているポインタ22を所定の方向に移動させるために、ユーザーが操作部を任意の所定の方向に操作した場合、すなわち、3次元の自由空間において、操作部の全体が任意の方向に動かされた場合に実行される。この処理も、テレビジョン受像機711の画面の表示を制御する操作信号を、実質的に入力装置を内蔵する(すなわち、一体化されている)テレビジョン受像機711において生成する処理である。
【0215】
ステップS151において変位取得部821は変位(x(t),y(t))を取得する。具体的には、ユーザーの操作部の画像がイメージセンサ726により撮像され、ビデオラム723に記憶される。変位取得部821はこの画像から、操作部の座標を取得する。
【0216】
ステップS152において記憶部822は、取得された変位(x(t),y(t))をバッファリングする。ステップS153において速度取得部823は、速度(x’(t),y’(t))を取得する。具体的には、記憶部822に前回記憶された変位(x(t−1),y(t−1))と今回の変位(x(t),y(t))との差をその間の時間で除算することで、速度(x’(t),y’(t))が演算される。すなわち、操作信号としての変位(x(t),y(t))の微分値としての速度(x’(t),y’(t))が取得される。
【0217】
次にステップS154乃至ステップS157において、補償処理部826により、取得された変位と速度により操作信号の応答の遅延を補償するための演算が行なわれる。
【0218】
すなわちステップS154においてゲイン取得部831は、ステップS153で取得された速度(x’(t),y’(t))に応じたゲインG(t)を取得する。この関数としてのゲインG(t)は、後述するステップS157で変位に乗算される。従って、その値1が基準値となり、ゲインG(t)が基準値より大きいとき、操作信号としての変位は大きくなるように補正され、基準値より小さいとき、変位は小さくなるように補正される。
【0219】
ゲインG(t)は、速度が正であるとき(例えば、操作部が左方向(または上方向)に移動しているとき)、基準値以上(値1以上)の値とされ、速度が負であるとき(例えば、操作部が右方向(または下方向)に移動しているとき)、基準値未満(値1未満)の値とされる。さらにゲインG(t)の絶対値は、速度の絶対値が大きいほど基準値(値1)との差が大きくなる値とされる。
【0220】
ゲインG(t)は、演算することで取得してもよいし、予めマッピングされたテーブルから読み出すことで取得することもできる。また、ゲインG(t)は、X方向とY方向とで独立に求めてもよいし、両者のうちの絶対値が大きい方を代表値として選択するなどして1つを求めることもできる。
【0221】
ステップS155において補正部832は、変位取得部823により取得された操作信号としての変位(x(t),y(t))に基づいてゲインG(t)を補正する。具体的には、ゲインG(t)は、変位(x(t),y(t))が大きいほど、基準値(値1)に近い値となるように補正される。
【0222】
この場合にも、補正値は、X方向とY方向とで独立に求めてもよいし、両者のうちの絶対値が大きい方を代表値として選択するなどして1つを求めることもできる。
【0223】
なお、この補正処理は省略することもできる。補正処理を省略しなかった場合、ゲインG(t)は、変位と速度により規定される関数となり、省略した場合、速度により規定される関数となる。
【0224】
ステップS156において制限部833は、ゲインG(t)が閾値を超えないように制限する。すなわち、補正されたゲインG(t)が、予め定められている閾値の範囲内になるように制限される。換言すれば、閾値が最大値または最小値とされ、ゲインG(t)の絶対値が閾値を超えないように制限される。これにより、ユーザーの操作部が振動された場合に、ゲインG(t)の絶対値が小さ過ぎて遅延補償ができなくなったり、絶対値が大き過ぎて発振状態になってしまうようなことが抑制される。
【0225】
ステップS154ないしステップS156の処理は、各ステップの条件を満足するようにゲインG(t)をゲイン取得部831に予めマッピングしておけば、1回の読み出し処理で実行することができる。
【0226】
ステップS157において乗算部834は、変位(x(t),y(t))にゲインG(t)を乗算する。すなわちゲインG(t)を係数として変位に乗算することで、補正された変位(x1(t),y1(t))が生成される。例えば、X軸方向とY軸方向をまとめた代表値としてゲインG(t)を使用した場合、補正された変位(x1(t),y1(t))は次式で演算される。
【0227】
x1(t)=x(t)・G(t)
y1(t)=y(t)・G(t) (11)
【0228】
ステップS158において出力部827は、補正された変位(x1(t),y1(t))を出力する。すなわち、ゲインG(t)が大きいほど、すなわち変位の補正量が大きいほど、応答の遅延の補償量が大きくなる。つまり、ゲインG(t)が大きいほど、操作部が操作されてからポインタ22が移動するまでの遅延は少なくなり、ゲインG(t)の値をさらに大きくすれば、ポインタ22の動きが操作部の操作より位相的に進むことになる。
【0229】
また、ここでは、操作部の手振れ成分をローパスフィルタで除去する処理、操作速度が遅い場合(低速度、低加速度である場合)、ポインタ22がアイコン21上に停止し易くするために、ポインタ22の移動速度を極端に遅くするための処理なども実行される。
【0230】
以上の処理は操作部が操作されている間、繰り返し行われる。
【0231】
以上のように、この実施の形態においては、ゲインG(t)が、変位と速度に応じて決定される。
【0232】
[変位の変化]
【0233】
次に、上述した図36と図38の実施の形態のように、操作信号の遅延を補償した場合の変位の変化について、図39を参照して説明する。
【0234】
図39は、変位の変化を示す図である。縦軸は変位としての座標(ピクセル)を表し、横軸は時間を表している。図39Bは、図36の実施の形態のように、速度と加速度に基づき規定されるゲインG(t)により、操作信号としての速度の遅延を補償した場合の変位の変化を表している。図39Cは、図38の実施の形態のように、変位と速度に基づき規定されるゲインG(t)により、操作信号としての変位の遅延を補償した場合の変位の変化を表している。これに対して、図39Aは、図36と図38の実施の形態のような操作信号の遅延を補償しなかった場合の変位の変化を表している。
【0235】
図39Aにおいて、線L301は操作部の変位を表しており、線L302は、操作部の変位の検出結果に基づいてポインタ22の表示を制御した場合のポインタ22の変位を表している。操作に対する操作信号の遅延が補償されていないので、線L302は線L301より位相的に遅れている。
【0236】
図39Bにおいて、線L311は、図39Aの線L301と同様に、操作部の変位を表している。線L312は、図36の実施の形態のように、操作信号の速度と加速度の検出結果に基づいて規定されるゲインG(t)により、操作信号としての速度の遅延を補償した場合の変位の変化を表している。操作に対する操作信号の遅延が補償されているので、線L312は線L311に対して位相的に殆ど遅れておらず、殆ど同相である。
【0237】
図39Cにおいて、線L321は、図39Aの線L301と同様に、操作部の変位を表している。線L322は、図38の実施の形態のように、操作信号の変位と速度の検出結果に基づいて規定されるゲインG(t)により、操作信号としての変位の遅延を補償した場合の変位の変化を表している。操作に対する操作信号の遅延が補償されているので、線L322は線L321に対して位相的に殆ど遅れておらず、殆ど同相である。
【0238】
[変形例]
【0239】
以上においては、入力装置31により操作される電子機器を、テレビジョン受像機10としたが、パーソナルコンピュータ、その他の電子機器を制御する場合にも本発明は適用することができる。
【0240】
さらに、制御対象の電子機器が、例えば携帯電話機、PDA(Personal Digital Assistants)などの携帯電子機器である場合には、入力装置31をその携帯電子機器と別の構成とするほか、一体化した構成にすることもできる。一体化された場合、携帯電子機器全体を所定の方向に操作することで入力が行われる。
【0241】
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【0242】
なお、本明細書において、プログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【0243】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【0244】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【0245】
1 入力システム, 10 テレビジョン受像機, 11 アンテナ, 12 通信部, 13 MPU, 14 復調部, 15 ビデオRAM, 16 出力部, 21 アイコン, 22 ポインタ, 52 MPU, 58 角速度センサー, 59 加速度センサー, 101 入力部, 102 センサー, 201 速度取得部, 202 記憶部, 203 加速度取得部, 204 補償処理部, 205 加速度演算部, 206 速度演算部, 207 移動量計算部, 211 ゲイン取得部, 212 補正部, 213 制限部, 214 乗算部, 221 関数部, 222 補償部

【特許請求の範囲】
【請求項1】
電子機器を制御するためのユーザーの操作を検出し、前記操作に対応する操作信号を出力する検出部と、
検出された前記操作信号とその微分値を取得する第1の取得部と、
前記ユーザーの前記操作に対する前記操作信号の応答の遅延を補償するための、前記微分値により規定される関数を取得する第2の取得部と、
取得された前記関数により前記操作信号を補償する補償部と
を備える入力装置。
【請求項2】
前記第2の取得部は、前記微分値と前記操作信号の両方により規定される前記関数を取得する
請求項1に記載の入力装置。
【請求項3】
前記操作信号は、前記電子機器の画面の表示を制御する信号である
請求項2に記載の入力装置。
【請求項4】
前記補償部は、前記操作信号の応答の遅延時間が、最大値から急激に最小値になるように、前記操作信号を補償する
請求項3に記載の入力装置。
【請求項5】
前記第2の取得部は、取得された前記微分値が正である場合、取得された前記操作信号が大きくなるように補正する前記関数を取得し、取得された前記微分値が負である場合、取得された前記操作信号が小さくなるように補正する前記関数を取得する
請求項4に記載の入力装置。
【請求項6】
前記補償部は、前記操作信号の補正量が大きいほど、応答の遅延の補償量が大きくなるように前記操作信号を補償する
請求項5に記載の入力装置。
【請求項7】
前記第2の取得部は、取得された前記微分値の絶対値が大きいほど、取得された前記操作信号に対する前記補正量を大きくする前記関数を取得する
請求項6に記載の入力装置。
【請求項8】
前記第2の取得部は、取得された前記操作信号が小さいほど、取得された前記操作信号に対する前記補正量を大きくする前記関数を取得する
請求項7に記載の入力装置。
【請求項9】
前記補償部は、前記操作信号に前記関数を乗算する
請求項8に記載の入力装置。
【請求項10】
前記第2の取得部は、前記関数の絶対値が閾値を超えないように制限する
請求項9に記載の入力装置。
【請求項11】
前記第2の取得部は、前記操作信号の応答の遅延量に応じた前記関数を取得する
請求項10に記載の入力装置。
【請求項12】
前記検出部は、角速度センサー、イメージセンサー、地磁気センサー、または可変抵抗の出力を、前記操作信号として出力する
請求項11に記載の入力装置。
【請求項13】
前記検出部は、前記入力装置側に具備されている
請求項11に記載の入力装置。
【請求項14】
前記入力装置は前記電子機器と一体化されている
請求項13に記載の入力装置。
【請求項15】
前記第1の取得部、前記第2の取得部、および前記補償部の少なくとも一部は、前記電子機器側に具備されている
請求項6に記載の入力装置。
【請求項16】
前記検出部は、前記電子機器側に配置されたイメージセンサであり、ユーザーの身体の少なくとも一部を撮像し、前記操作信号として出力する
請求項15に記載の入力装置。
【請求項17】
検出部と、
第1の取得部と、
第2の取得部と、
補償部と
を備え、
前記検出部は、電子機器を制御するためのユーザーの操作を検出し、前記操作に対応する操作信号を出力し、
前記第1の取得部は、検出された前記操作信号とその微分値を取得し、
前記第2の取得部は、前記ユーザーの前記操作に対する前記操作信号の応答の遅延を補償するための、前記微分値により規定される関数を取得し、
前記補償部は、取得された前記関数により前記操作信号を補償する
入力方法。
【請求項18】
電子機器が有するコンピュータに、
前記電子機器を制御するためのユーザーの操作に対応する操作信号とその微分値を取得する手順と、
前記ユーザーの前記操作に対する前記操作信号の応答の遅延を補償するための、前記微分値により規定される関数を取得する手順と、
取得された前記関数により前記操作信号を補償する手順と
を実行させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate

【図35】
image rotate

【図36】
image rotate

【図37】
image rotate

【図38】
image rotate

【図39】
image rotate


【公開番号】特開2010−134912(P2010−134912A)
【公開日】平成22年6月17日(2010.6.17)
【国際特許分類】
【出願番号】特願2009−215255(P2009−215255)
【出願日】平成21年9月17日(2009.9.17)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】