(57)【特許請求の範囲】
【請求項１】
電子機器が第１の方向に振られる動作を検出する操作動作検出装置であって、
加速度センサによって感知された、前記第１の方向の第１の加速度値及び前記第１の方向と異なる第２の方向の第２の加速度値を取得する取得部と、
第１の判定期間における前記第２の加速度値に基づいて、判定閾値を算出する算出部と、
前記第１の判定期間における前記第１の加速度値の最大値と最小値との平均値を基準として前記判定閾値を設定し、前記第１の判定期間における前記第１の加速度値と、前記設定された判定閾値とに基づいて、前記動作が行われたか否かを判定する判定部と、
を具備する操作動作検出装置。
【請求項２】
前記判定部において前記動作が行われなかったと判定された場合に、前記第１の判定期間の次に前記動作が行われたか否かを判定する第２の判定期間の開始位置を、前記第１の判定期間における前記第１の加速度値が前記判定閾値を最初に超えた位置とする判定期間設定部、
をさらに具備する請求項１に記載の操作動作検出装置。
【請求項３】
前記算出部は、前記第１の判定期間における前記第２の加速度値の最大値と最小値との差分と所定の係数とを乗算した結果を基準値に加算することにより、前記判定閾値を算出する、請求項１又は請求項２に記載の操作動作検出装置。
【請求項４】
電子機器が第１の方向に振られる動作を検出する操作動作検出方法であって、
複数のタイミングにおいて加速度センサによって感知された、前記第１の方向の第１の加速度値及び前記第１の方向と異なる第２の方向の第２の加速度値を取得し、
判定期間において取得された前記第２の加速度値に基づいて、判定閾値を算出し、
前記判定期間において取得された前記第１の加速度値の最大値と最小値との平均値を基準として前記判定閾値を設定し、前記判定期間において取得された前記第１の加速度値と、前記設定された判定閾値とに基づいて、前記動作が行われたか否かを判定する、
操作動作検出方法。
【請求項５】
電子機器が第１の方向に振られる動作を検出する処理であって、
複数のタイミングにおいて加速度センサによって感知された、前記第１の方向の第１の加速度値及び前記第１の方向と異なる第２の方向の第２の加速度値を取得し、
判定期間において取得された前記第２の加速度値に基づいて、判定閾値を算出し、
前記判定期間において取得された前記第１の加速度値の最大値と最小値との平均値を基準として前記判定閾値を設定し、前記判定期間において取得された前記第１の加速度値と、前記設定された判定閾値とに基づいて、前記動作が行われたか否かを判定する、
操作動作検出処理を操作動作検出装置に実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、操作動作検出装置、操作動作検出方法、及びプログラムに関する。
【背景技術】
【０００２】
近年、携帯端末等の携帯電子機器の中には、ユーザが電子機器本体を振ること、つまりシェイク動作により電子機器を操作するインタフェースを持ったものがある。このような電子機器には、シェイク動作を検出する手段が搭載されている。例えば、電子機器に加速度センサが搭載され、当該加速度センサによって判定期間内に感知された加速度値が所定の閾値を超えた回数が所定回数を超えた場合に、シェイク動作が行われたと判定される。
【０００３】
また、従来、例えば、鞄の中に入れたまま歩行しているために電子機器が揺られている場合を、ユーザが積極的にシェイク動作を行っている場合と誤検出しないように、シェイク動作が行われる第１の軸と当該第１の軸と直交する第２の軸との両方の加速度値を変数とする値を評価対象値とする技術が提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−３３５２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、本来的には評価対象としない上記第２の軸方向の加速度値を評価対象値に含めると、その加速度値が大きい場合には誤検出が発生する可能性が高い。
【０００６】
開示の技術は、上記に鑑みてなされたものであって、操作動作を誤検出する可能性を低減できる、操作動作検出装置、操作動作検出方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
開示の態様では、第１の方向に振られる動作を検出する操作動作検出装置であって、加速度センサによって感知された、前記第１の方向の第１の加速度値及び前記第１の方向と異なる第２の方向の第２の加速度値を取得する取得部と、第１の判定期間における前記第２の加速度値に基づいて、判定閾値を算出する算出部と、前記第１の判定期間における前記第１の加速度値と、前記算出された判定閾値とに基づいて、前記動作が行われたか否かを判定する判定部と、を具備する。
【発明の効果】
【０００８】
開示の態様によれば、操作動作を誤検出する可能性を低減できる。
【図面の簡単な説明】
【０００９】
【図１】図１は、実施例１の操作動作検出装置を備えた携帯端末の一例を示すブロック図である。
【図２】図２は、実施例１の携帯端末と、ＸＹＺ軸の一設定例とを示す図である。
【図３】図３は、実施例１の操作動作検出装置の処理動作の一例を示すフローチャートである。
【図４】図４は、実施例１の操作動作検出装置の処理動作の説明に供する図である。
【図５】図５は、実施例１の操作動作検出装置の処理動作の説明に供する図である。
【図６】図６は、携帯端末のハードウェア構成を示す図である。
【発明を実施するための形態】
【００１０】
以下に、本願の開示する操作動作検出装置、操作動作検出方法、及びプログラムの実施形態を図面に基づいて詳細に説明する。なお、この実施形態により本願の開示する操作動作検出装置、操作動作検出方法、及びプログラムが限定されるものではない。また、実施形態において同一の機能を有する構成には同一の符号を付し、重複する説明は省略される。
【００１１】
［実施例１］
［操作動作検出装置の構成］
図１は、実施例１の操作動作検出装置を備えた携帯端末の一例を示すブロック図である。図１には、操作動作検出装置２０が搭載された携帯端末１０が示されている。図２は、携帯端末１０と、ＸＹＺ軸の一設定例とを示す図である。
【００１２】
図１において、携帯端末１０は、加速度センサ１１と、操作動作検出装置２０とを有する。そして、操作動作検出装置２０は、取得部２１と、判定期間設定部２２と、閾値算出部２３と、判定部２４とを有する。
【００１３】
加速度センサ１１は、３軸加速度センサを含み、略直交するＸ軸、Ｙ軸、及びＺ軸のそれぞれの方向の加速度を感知し、感知した加速度の値を取得部２１へ出力する。ここで、図２に示すように、携帯端末１０の表示面の上下方向及び左右方向に、Ｙ軸及びＸ軸を設定し、表示面の垂直方向にＺ軸を設定する。そして、ここでは、ユーザがＸ軸方向に携帯端末１０を振るシェイク動作を行うことにより、携帯端末１０の操作が行われる。
【００１４】
取得部２１は、加速度センサ１１から各軸の方向の加速度値を受け取り記憶する。そして、取得部２１は、判定期間設定部２２から受け取る判定期間情報の示す判定期間に対応する一連の加速度値を軸毎に閾値算出部２３及び判定部２４へ出力する。すなわち、取得部２１は、判定期間における各軸の「加速度変動曲線」を閾値算出部２３及び判定部２４へ出力する。
【００１５】
判定期間設定部２２は、判定期間を設定し、設定された判定期間を示す判定期間情報を取得部２１へ出力する。具体的は、判定期間設定部２２は、閾値算出部２３から第１の判定期間において判定閾値を超えた検出位置に関する情報を受け取り、判定部２４から第１の判定期間においてシェイク動作が検出されたか否かを示す情報を受け取る。そして、判定期間設定部２２は、シェイク動作が検出されなかった第１の判定期間の次の第２の判定期間の開始位置を第１の判定期間において最初に判定閾値を超えた検出位置に合わせて、第２の判定期間を設定する。
【００１６】
閾値算出部２３は、予め定められている閾値基準値と、誤検出の要因となる振動方向に対応する軸の加速度変動曲線とに基づいて、シェイク動作を判定するための判定閾値を算出する。例えば、誤検出の要因となる振動方向は、Ｚ軸方向である。そして、閾値算出部２３は、判定期間におけるＺ軸の加速度変動曲線上の、加速度の最大値及び最小値を検出し、検出された最大値と最小値との差である「Ｚ軸振幅値」を算出する。そして、閾値算出部２３は、閾値基準値Ｔｈｂａｓｉｓを、Ｚ軸振幅値Ａｚに所定の係数βを乗算した値によって調整することにより、判定閾値を算出する。詳細には、閾値基準値と、Ｚ軸振幅値に所定の係数を乗算した値とを加算することにより、判定閾値が算出される。閾値基準値Ｔｈｂａｓｉｓは、予め定められた定数であり、係数βは、携帯端末１０及び加速度センサ１１の特性を考慮して決定された重み付け定数である。
【００１７】
判定部２４は、閾値算出部２３によって算出された判定閾値と、シェイク動作方向に対応する軸の加速度変動曲線とに基づいて、シェイク動作が行われたか否かを判定する。例えば、シェイク動作方向は、Ｘ軸方向である。すなわち、判定閾値の算出に用いられる軸方向と、シェイク動作方向に対応する軸方向とは異なり、特にここでは、直角を成す。
【００１８】
具体的には、判定部２４は、判定期間におけるＸ軸の加速度変動曲線の「中心加速度」を基準として判定閾値を設定し、加速度変動曲線の値が判定閾値を超える位置を検出し、回数をカウントする。そして、判定部２４は、判定期間においてカウントされた回数が所定の回数以上となった場合、シェイク動作が行われたと判定する。一方、判定部２４は、判定期間においてカウントされた回数が所定の回数未満となった場合、シェイク動作が行われなかったと判定する。ここで、「中心加速度」は、判定期間におけるＸ軸の加速度変動曲線の最大値と最小値との平均値であってもよいし、判定期間におけるＸ軸の加速度変動曲線の加速度値の全体の平均値であってもよい。いずれの場合でも、基準加速度は、判定部２４によって算出される。ただし、「中心加速度」として最大値と最小値との平均値を用いることにより、加速度値の全体の平均値を用いる場合と比べて、判定部２４の処理量を低減することができる。
【００１９】
［操作動作検出装置の動作］
以上の構成を有する操作動作検出装置２０の動作について説明する。図３は、実施例１の操作動作検出装置の処理動作の一例を示すフローチャートである。図４、５は、実施例１の操作動作検出装置の処理動作の説明に供する図である。
【００２０】
取得部２１は、加速度センサ１１から各軸の方向の加速度値を順次受け取り記憶する（ステップＳ１０１）。
【００２１】
取得部２１は、判定期間設定部２２から受け取る判定期間情報の示す判定期間を経過したか否かを判定する（ステップＳ１０２）。この判定は、判定期間が経過するまで繰り返される（ステップＳ１０２否定）。
【００２２】
設定された判定期間が経過したと判定された場合（ステップＳ１０２肯定）、取得部２１は、判定期間におけるＺ軸の加速度変動曲線を閾値算出部２３へ出力し、判定期間におけるＸ軸の加速度変動曲線を判定部２４へ出力する。
【００２３】
判定部２４は、図４に示すように、判定期間におけるＸ軸の加速度変動曲線の最大値Ｘｍａｘ及び最小値Ｘｍｉｎを検出し、検出された最大値と最小値との平均値、つまり、中心加速度を算出する（ステップＳ１０３）。
【００２４】
閾値算出部２３は、図５に示すように、判定期間におけるＺ軸の加速度変動曲線の最大値Ｚｍａｘ及び最小値Ｚｍｉｎを検出し、検出された最大値と最小値との差であるＺ軸振幅値Ａｚを算出する（ステップＳ１０４）。
【００２５】
閾値算出部２３は、閾値基準値Ｔｈｂａｓｉｓと、Ｚ軸振幅値Ａｚに所定の係数βを乗算した値とを加算することにより、判定閾値を算出する（ステップＳ１０５）。具体的には、次の式によって、上側の閾値Ｔｈｕｐ及び下側の閾値Ｔｈｄｏｗｎを算出する。
Ｔｈｕｐ＝Ｔｈｂａｓｉｓ＋Ａｚ×β
Ｔｈｄｏｗｎ＝−（Ｔｈｂａｓｉｓ＋Ａｚ×β）
【００２６】
判定部２４は、ステップＳ１０３で算出された中心加速度を基準としてステップＳ１０５で算出された判定閾値を設定し、加速度変動曲線の値が判定閾値を超える位置を検出し、回数をカウントする（ステップＳ１０６）。ここで、加速度変動曲線の値が判定閾値を超える位置とは、上側の閾値Ｔｈｕｐと下側の閾値Ｔｈｄｏｗｎとの間の範囲から加速度変動曲線がはみ出した位置である。
【００２７】
判定部２４は、判定期間においてカウントされた回数が所定の回数以上であるか否かを判定する（ステップＳ１０７）。
【００２８】
カウントされた回数が所定の回数以上であると判定された場合（ステップＳ１０７肯定）、判定部２４は、シェイク動作が為されたと認識する（ステップＳ１０８）。そして、判定部２４は、シェイク動作を検出したことを示す信号を後段の処理部へ出力する。これにより、シェイク動作が示す操作に対応する処理が実行される。
【００２９】
一方、カウントされた回数が所定の回数未満であると判定された場合（ステップＳ１０７否定）、判定部２４は、シェイク動作が為されていないと認識する（ステップＳ１０９）。そして、判定部２４は、判定期間設定部２２へシェイク動作が検出されなかったことを示す信号を判定期間設定部２２へ出力する。
【００３０】
判定期間設定部２２は、シェイク動作が検出されなかった第１の判定期間の次の第２の判定期間の開始位置を第１の判定期間において最初に判定閾値を超えた検出位置に合わせて、第２の判定期間を設定する（ステップＳ１１０）。この第２の判定期間を示す判定期間情報は、取得部２１へ出力される。そして、フローは、ステップＳ１０２へ戻り、第２の判定期間が経過したか否かが判定される。
【００３１】
以上のように本実施例によれば、操作動作検出装置２０において、閾値算出部２３は、第１の判定期間におけるＺ軸方向の加速度値群に基づいて、判定閾値を算出する。そして、判定部２４は、閾値算出部２３によって算出された判定閾値と、第１の判定期間におけるＸ軸方向の加速度値群とに基づいて、操作動作が行われたか否かを判定する。
【００３２】
こうすることで、操作動作と関係が無く誤検出の要因となるＺ軸方向の加速度値に応じて、Ｘ軸方向の加速度値に基づく操作動作の判定に用いられる閾値を算出できる。すなわち、操作動作と関係が無く誤検出の要因となるＺ軸方向の加速度値を評価対象から除き、
そのＺ軸方向の加速度値を考慮した判定閾値を用いて操作動作を検出するので、誤検出の可能性を低減できる。
【００３３】
具体的には、閾値算出部２３は、第１の判定期間におけるＺ軸方向の加速度値群の内の最大値と最小値との差分と所定の係数βとを乗算した結果を閾値基準値Ｔｈｂａｓｉｓに加算することにより、判定閾値を算出する。
【００３４】
こうすることで、Ｚ軸方向の加速度値が大きい程判定閾値も大きくすることができるので、誤検出の可能性を低減できる。
【００３５】
また、判定期間設定部２２は、第１の判定期間に続く第２の判定期間の開始位置を、第１の判定期間におけるＸ軸方向の加速度値群が判定閾値を最初に超えた位置とする。すなわち、第１の判定期間と第１の判定期間に続く第２の判定期間とはオーバラップする。
【００３６】
こうすることで、第１の判定期間の途中からシェイク動作が開始され第１の判定期間においてシェイク動作が検出できなかった場合でも、第１の判定期間におけるシェイク動作を無駄にすることなく第２の判定期間で利用できる。
【００３７】
［他の実施例］
［１］実施例１では、第１の判定期間の開始タイミングについて言及していないが、特に限定されるものではなく、例えば、シェイク動作の検出結果を用いるアプリケーションの起動時であってもよいし、特定のアプリケーションと関係なく携帯端末１０の起動時であってもよい。
【００３８】
［２］実施例１の携帯端末１０は、次のようなハードウェア構成により実現することができる。
【００３９】
図６は、携帯端末のハードウェア構成を示す図である。図６に示すように、携帯端末１０は、ハードウェア的には、加速度センサ１１と、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０ａと、メモリ１０ｂと、アンテナを有するＲＦ回路１０ｃと、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）等の表示装置１０ｄと、キー入力装置１０ｅとを有する。メモリ１０ｂは、例えば、ＳＤＲＡＭ等のＲＡＭ、ＲＯＭ、フラッシュメモリにより構成される。また、取得部２１と、判定期間設定部２２と、閾値算出部２３と、判定部２４とは、例えばＣＰＵ１０ａ等の集積回路により実現される。
【００４０】
また、実施例１で説明した各種の処理は、予め用意されたプログラムをコンピュータで実行することで実現できる。すなわち、取得部２１と、判定期間設定部２２と、閾値算出部２３と、判定部２４とによって実行される各処理に対応するプログラムがメモリ１０ｂに記録され、各プログラムがＣＰＵ１０ａに読み出されてプロセスとして機能してもよい。
【符号の説明】
【００４１】
１０  携帯端末
１１  加速度センサ
２０  操作動作検出装置
２１  取得部
２２  判定期間設定部
２３  閾値算出部
２４  判定部
【図１】
0005987443.tif 000002
【図２】
0005987443.tif 000003
【図３】
0005987443.tif 000004
【図４】
0005987443.tif 000005
【図５】
0005987443.tif 000006
【図６】
0005987443.tif 000007