(57)【要約】【課題】簡易に使用者の個人認証を行うことができる個人認証装置を実現すること。【解決手段】振動制御部２５２は、使用者がゲームコントローラ１０の筐体１１０を握持した状態で、筐体１１０の内部に配設された振動モータ１２０が発生する周波数を連続的に変化させる。３軸加速度センサ１４０及び３軸角速度センサ１８０は、振動モータ１２０の振動を検出する。検出された振動は、抽出部１５６によって周波数成分を抽出され、データ加工部２５５によって周波数成分毎に重み付けされる。記憶部２５３は、重み付けされた周波数成分を使用者毎に記憶する。判定部２５４は、使用者が筐体１１０を握持した状態で振動モータ１２０を振動させて得た測定データから抽出された周波数成分を、記憶部２５３の周波数成分と比較照合して個人認証を行う。【選択図】図２
2011227569.tif 000002
【特許請求の範囲】
【請求項１】
筐体内部に配置された振動源と、
使用者が前記筐体を握持した状態で前記振動源を振動させて当該振動源の周波数を連続的に変化させる振動制御部と、
前記振動源による振動を検出する多軸振動検出手段と、
連続的に変化する前記振動源の周波数毎に前記多軸振動検出手段により検出して得た複数の測定データからそれぞれ周波数成分を抽出する抽出手段と、
前記周波数成分毎に加工して出力する加工手段と、
加工した前記周波数成分を使用者毎に記憶する記憶手段と、
使用者が前記筐体を握持した状態で前記振動源を振動させて得た測定データから抽出された周波数成分を、前記記憶手段に記憶された周波数成分と比較照合して個人認証を行う判定手段と、
を有する、
個人認証装置。
【請求項２】
前記多軸振動検出手段は、３軸方向の加速度を検出する３軸加速度センサと、
前記３軸加速度センサの各軸を中心とする回動を検出するジャイロセンサとを備える、
請求項１記載の個人認証装置。
【請求項３】
前記加工手段は、前記波数成分毎に重み付けする、
請求項１記載の個人認証装置。
【請求項４】
前記加工手段は、前記周波数成分のピーク値を抽出する、
請求項１記載の個人認証装置。
【請求項５】
前記記憶手段は、加工された前記周波数成分を使用者毎に対応付けた個人データを複数記憶し、
前記判定手段は、記憶された全ての前記個人データの中で最も周波数成分との類似度が高い周波数成分のデータの使用者を、同一人であると判定する、
請求項１記載の個人認証装置。
【請求項６】
ゲームコントローラの筐体内部に配置された振動源と、
使用者が前記筐体を握持した状態で前記振動源を振動させて当該振動源の周波数を連続的に変化させる振動制御部と、
前記振動源による振動を検出する多軸振動検出部と、
連続的に変化する前記振動源の周波数毎に前記多軸振動検出部により検出して得た複数の測定データからそれぞれ周波数成分を抽出する抽出部と、
前記周波数成分毎に加工して出力する加工部と、
加工した前記周波数成分を使用者毎に記憶する記憶手段と、
使用者が前記筐体を握持した状態で前記振動源を振動させて得た測定データから抽出した現在の周波数成分を、前記記憶手段に記憶された周波数成分と比較照合して個人認証を行う判定部とを具備し、
前記判定部は、全ての前記周波数成分の中で最も現在の周波数成分との類似度が高い周波数成分に対応付けられた使用者を、同一人である候補と判定する、
個人認証装置。
【請求項７】
前記判定部が同一人である候補と判定した使用者を、順次人単位で提示する、
請求項６記載の個人認証装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、使用者の個人認証を行う個人認証装置に関し、特にゲームコントローラに搭載される個人認証装置に関する。
【背景技術】
【０００２】
従来、携帯電話などの電子機器において、使用者の個人認証を行う場合、数字４桁の入力によるパスワード認証の他に、例えば、特許文献１に示すように加速度センサを用いて認証するものが知られている。
【０００３】
特許文献１では、携帯電話に搭載した加速度センサを用いて、ユーザが携帯電話自体を振ったり、傾けたりした際の携帯電話の移動パターンを個人認証情報として認証する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−１１６３１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１の構成では、ユーザを認証する際に、携帯電話自体の移動パターンを携帯電話に搭載された加速度センサに検出させるために、携帯電話を振ったり、傾けたりする等移動させる手間が生じる。
【０００６】
近年では、筐体自体を移動させることなく、簡易に使用者の個人認証を行うことができる装置が望まれている。
【０００７】
本発明はかかる点に鑑みてなされたものであり、簡易に使用者の個人認証を行うことができる個人認証装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の個人認証装置の一つの態様は、筐体内部に配置された振動源と、使用者が前記筐体を握持した状態で前記振動源を振動させて当該振動源の周波数を連続的に変化させる振動制御部と、前記振動源による振動を検出する多軸振動検出手段と、連続的に変化する前記振動源の周波数毎に前記多軸振動検出手段により検出して得た複数の測定データからそれぞれ周波数成分を抽出する抽出手段と、前記周波数成分毎に加工して出力する加工手段と、加工した前記周波数成分を使用者毎に記憶する記憶手段と、使用者が前記筐体を握持した状態で前記振動源を振動させて得た測定データから抽出された周波数成分を、前記記憶手段に記憶された周波数成分と比較照合して個人認証を行う判定手段とを有する構成を採る。
【発明の効果】
【０００９】
本発明によれば、簡易に使用者の個人認証を行うことができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の一実施の形態に係る個人認証装置を用いるゲームコントローラの要部構成図
【図２】同個人認証装置を示す機能ブロック図
【図３】使用者によって握られたゲームコントローラを示す図
【図４】記憶部に記憶される使用者の正規化した個人データを示すレーダーチャート
【図５】重み付けされる前の個人データである加工前個人データのレーダーチャート
【図６】本発明の一実施の形態に係る個人認証装置の認証処理を説明するためのフローチャート
【図７】本発明の一実施の形態の係る個人認証装置における重み付けフィルタの生成方法を説明するフローチャート
【図８】加工前の個人データを示す図
【図９】重み付けフィルタの説明に供する図
【図１０】個人データの差分を示す図
【発明を実施するための形態】
【００１１】
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
【００１２】
図１は、本発明の一実施の形態に係る個人認証装置１００を用いるゲームコントローラ１０の要部構成図であり、図２は同個人認証装置１００を示す機能ブロック図である。
【００１３】
図１に示すゲームコントローラ１０は、家庭用テレビジョン受像機等のディスプレイ２３（図２参照）に接続コードを介して接続されるゲーム装置本体２０（図２参照）とともにゲーム装置を構成する。
【００１４】
ゲームコントローラ１０は、主に、ディスプレイ２３に表示されるゲーム空間に登場するプレイヤオブジェクトを操作するための操作扞として機能し、ゲーム装置本体２０に操作情報を与える。ゲームコントローラ１０には、図示しないが、それぞれ複数の操作ボタン、キー、およびスティック等の操作部が設けられている。
【００１５】
なお、図２に示すゲーム装置本体２０は、例えば、ＣＰＵ（Central Processing Unit）やＧＰＵ（Graphics Processing Unit）及びＤＳＰ（Digital Signal Processor）などの各種マイクロプロセッサ、ＡＳＩＣ(Application Specific Integrated Circuit)、ＩＣメモリなどが実装されたメイン制御部２２（図２参照）と、図示しない光学ディスクやメモリカード等の情報記憶媒体を読み取る読み取り部等とを有する。
【００１６】
ゲーム装置本体２０では、メイン制御部２２が、情報記憶媒体からゲームプログラム及び各種設定データを読み出し実行することによって、その結果をゲーム画像としてディスプレイ２３に表示する。
【００１７】
また、ゲーム装置本体２０とゲームコントローラ１０とは無線通信によって接続されており、ゲーム装置本体２０は、通信部２１を介して、ゲームコントローラ１０から送信される操作情報、認証情報などを含む送信情報を受信する。
【００１８】
ゲーム装置本体２０のメイン制御部２２は、ゲームコントローラ１０から送信される操作情報に基づいて、各種のゲーム演算を実行し、ゲーム画像等の画像を生成してディスプレイ２３に表示する。また、メイン制御部２２は、ゲームコントローラ１０から送信される認証情報に基づいて、プログラムデータを実行して、認証情報の画像を生成してディスプレイ２３に表示する。ゲーム装置本体２０とゲームコントローラ１０とは、互いの通信部２１、１５１を介して、ここでは、Ｂｌｕｅｔｏｏｔｈ（登録商標）を用いてデータの送受信を行っているが、これに限らない。ゲーム装置本体２０とゲームコントローラ１０とが、ＵＷＢ（Ultra Wide Band：超広帯域無線）或いは無線ＬＡＮ等の近距離無線を介してデータの送受信を行うようにしてもよい。
【００１９】
ゲームコントローラ１０の筐体１１０内部には、筐体１１０を振動させる振動モータ１２０と、振動モータ１２０を駆動させる駆動回路部１３０と、通信部１５１を有するコントローラ制御部１５０と、振動検出部１７０とが配設されている。
【００２０】
個人認証装置１００は、ゲームコントローラ１０の筐体１１０内に配置された振動モータ１２０と、駆動回路部１３０と、コントローラ制御部１５０と、振動制御部２５２と、記憶部２５３と、振動検出部１７０（３軸加速度センサ１４０及び３軸角速度センサ１８０）と、抽出部１５６と、判定部２５４と、データ加工部２５５とを備える。なお、本実施の形態に係る個人認証装置１００では、振動制御部２５２、記憶部２５３、判定部２５４及びデータ加工部２５５は、ゲーム装置本体２０のメイン制御部２２に設けられる構成としたがこれに限らず、ゲームコントローラ１０自体に設けた構成としてもよい。
【００２１】
ゲームコントローラ１０の筐体１１０は、角部が面取りされた矩形断面を有する棒状体に形成されている。筐体１１０は、長手方向の一端側の部分（後方部分という）で使用者に握られることによって利用される。
【００２２】
図３は使用者によって握られたゲームコントローラ１０を示す図である。なお、図３では、ゲームコントローラ１０の筐体１１０において、使用者に握られる後方部分は、握持部１１１と称して図示する。
【００２３】
図３に示すようにゲームコントローラ１０のＸ軸、Ｙ軸を水平にした状態において、個人認証装置１００（図２参照）は、振動モータ１２０を駆動して、振動検出部１７０を介して得た測定データを用いて使用者の個人認証を行う。この個人認証は、使用者に、ゲームコントローラ１０の筐体１１０を意識的に移動させることなく行うことができる。なお、この個人認証についての詳細は後述する。
【００２４】
ゲームコントローラ１０の筐体１１０では、後方部分に位置する握持部１１１の内方に、基板１６０が配設されている。この基板１６０に、駆動回路部１３０、３軸加速度センサ１４０及びコントローラ制御部１５０が実装されている。また、振動モータ１２０は、筐体１１０内において、握持部１１１から離間する他端側の部分（前方部分という）に配設されている。
【００２５】
振動モータ１２０は、回転軸を筐体１１０の長手方向に沿うように配置されており、この回転軸に偏心させた分銅が取り付けられている。ここでは、振動モータ１２０は、筐体１１０内に、回転軸を筐体１１０の長手方向と平行に、言い換えれば、Ｙ軸方向と平行にして配置されている。振動モータ１２０は、図１に示すように、駆動回路部１３０によって、図示しない回転軸が矢印Ａ方向（又は矢印Ａと逆方向）に回転して、筐体１１０に振動を発生させる。
【００２６】
駆動回路部１３０は、通信部１５１を介して入力される振動制御部２５２からの振動制御信号に応じた駆動電圧を振動モータ１２０に印加して電流を供給する。
【００２７】
ここでは、駆動回路部１３０は、入力される振動制御信号に基づいて、所定時間（２〜３秒）間に、レベルの異なる複数の電圧を振動モータ１２０に印加して、振動モータ１２０に、一定速度で連続的に変化する周波数の振動を発生させる。
【００２８】
振動検出部１７０は、ｎ次元方向の複数の振動として、ここでは、３軸（Ｘ軸、Ｙ軸、Ｚ軸）の加速度及び３軸の角速度を検出するものであり、３軸加速度センサ１４０と、３軸角速度センサ１８０とを有する。
【００２９】
３軸加速度センサ１４０は、ｎ次元方向の複数の振動を検出する多軸センサの一例であり、ここでは、３次元方向の複数の加速度を検出することによって、筐体１１０の姿勢、動作を検出可能である。なお、以下では、３軸加速度センサ１４０により検出される振動を、加速度データとも称して説明する。
【００３０】
詳細には、３軸加速度センサ１４０は、筐体１１０の長手方向における他端側の方向（前方向）をＹ軸のプラス方向、正面からみて上方向をＺ軸のプラス方向、正面からみて図１中の紙面手前方向をＸ軸のプラス方向とする直交３軸方向の各加速度を検出する。なお、３軸加速度センサ１４０で検出して出力されるＸ軸、Ｙ軸、Ｚ軸の各軸に応じた加速度（加速度センサ出力）を、以下では、ＡｃｃＸ，ＡｃｃＹ，ＡｃｃＺと称する。また、３軸加速度センサ１４０は、検出した加速度に比例した電圧等の検出信号を軸毎にコントローラ制御部１５０の通信部１５１を介してゲーム装置本体２０の通信部２１に出力する。
【００３１】
３軸加速度センサ１４０は、使用者が筐体１１０の握持部１１１を握持した状態で振動モータ１２０が、連続的して変化する複数の振動周波数を発生する際に、筐体１１０に発生する振動を、軸毎に検出してコントローラ制御部１５０に出力する。なお、３軸加速度センサ１４０は、振動モータ１２０の駆動によって振動する筐体１１０の振動の変化を大きく検出したいため、振動モータ１２０からできるだけ離れた位置に配置されることが望ましい。
【００３２】
３軸角速度センサ（ジャイロスコープ）１８０は、ｎ次元方向の複数の振動を検出する多軸センサの一例である。ここでは、３軸角速度センサ（ジャイロスコープ）１８０は、Ｘ軸、Ｙ軸、Ｚ軸の３軸を中心に回転する際の回転角速度（「軸の角速度」とも称する）を検出することによって、筐体１１０の姿勢、動作を検出する。すなわち、３軸角速度センサ１８０は、使用者が筐体１１０の握持部１１１を握持した状態で、振動モータ１２０が、連続して変化する複数の振動周波数を発生する際に、Ｘ軸、Ｙ軸、Ｚ軸を中心に捻る動作を検出する。この検出された角速度は、コントローラ制御部１５０に出力される。なお、３軸角速度センサ１８０で検出して出力されるＸ軸、Ｙ軸、Ｚ軸に対応する角速度（角速度センサ出力）を、以下では、ＲｏｔＸ，ＲｏｔＹ，ＲｏｔＺと称する。
【００３３】
このように３軸加速度センサ１４０及び３軸角速度センサ１８０を有する振動検出部１７０は、使用者により握られた筐体１１０内の駆動モータ１２０の駆動に伴い、Ｘ軸、Ｙ軸、Ｚ軸の各方向の加速度と、Ｘ軸、Ｙ軸、Ｚ軸の各角速度とを検出する。
【００３４】
コントローラ制御部１５０は、例えばＩＩＣ（Inter-Integrated Circuit）バス等を用いたローカルバス回路によって互いに接続された各種入力デバイス及び出力デバイス間の入出力を制御する。
【００３５】
コントローラ制御部１５０は、ＣＰＵやローカルバス回路におけるデータ通信を制御するバスコントローラＩＣなどの各種マイクロチップやＩＣメモリなどの電子部品と、ゲーム装置本体２０の通信部２１と無線通信を実現する通信部１５１である近距離通信モジュールなどを実装する。コントローラ制御部１５０は、ローカルバス回路を介して各種入力デバイスから送信された信号に基づいて操作入力信号を生成し、生成した操作入力信号を、通信部１５１を介してゲーム装置本体２０へ送信する。
【００３６】
具体的には、コントローラ制御部１５０は、振動モータ１２０の振動周波数毎に３軸加速度センサ１４０及び３軸角速度センサ１８０により検出された３軸加速度データ及び３軸角速度データを使用者の測定データとしてゲーム装置本体２０に出力する。また、コントローラ制御部１５０は、通信部１５１を介してゲーム装置本体２０から送信された信号を受信し、この受信信号に対応づけられている出力デバイスへ制御信号を生成・送出する。
【００３７】
なお、以下では、コントローラ制御部１５０において入力される信号に対応して出力される信号の生成・送出処理の説明は省略する。また、コントローラ制御部１５０は、通信部２１、１５１を介して入力される振動制御部２５２からの振動制御信号を駆動回路部１３０に出力する。また、コントローラ制御部１５０は、３軸加速度センサ１４０及び３軸角速度センサ１８０から入力される測定データを、通信部１５１、２１を介してメイン制御部２２の抽出部１５６に出力する。
【００３８】
振動制御部２５２は、振動モータ１２０の駆動を制御して、使用者が筐体１１０を握持した状態で、駆動回路部１３０を介して振動モータ１２０の回転数を所定の周波数領域でスイープする。言い換えれば、振動制御部２５２は、振動モータ１２０に異なる振動周波数を所定の周波数領域内で順に発生させる。例えば、振動制御部２５２は、振動モータ１２０に供給する電圧の大きさを段階的に切り換えることにより振動モータ１２０への供給電圧を一定の割合で徐々に大きく変化する。
【００３９】
ここでは、振動制御部２５２は、振動モータ１２０の回転数を周波数０Ｈｚ〜２００Ｈｚまでの範囲内において、１０Ｈｚ刻みで順に連続的に変化するように、駆動回路部１３０に振動制御信号を出力している。なお、振動制御信号は、振動制御部２５２によって、記憶部２５３に記憶された連続的に増加する駆動電圧値を順次読み出して生成され、通信部２１、１５１を介して駆動回路部１３０に送出される。
【００４０】
これにより、２０個の異なる周波数毎に、３軸に関して６種類の測定データを取得でき、一つの個人データを１２０個（２０×６）の要素により構成できる。このように本実施の形態の個人認証装置１００では、振動周波数毎に３軸加速度センサ１４０及び３軸加速度センサ１８０を用いて短時間で多くの情報を検出できる。なお、振動検出の対象となる振動モータ１２０の振動周波数帯域は、０〜２００Ｈｚの範囲で１０Ｈｚ毎に増加させた２０の帯域としたが、３軸の加速度に加えて３軸の角速度を検出するものあれば、いくつの帯域でも構わない。
【００４１】
また、振動モータ１２０に、異なる振動周波数（具体的には、連続的に変換する振動周波数）を発生させる上記駆動電圧値の範囲を、振動モータ１２０を駆動させた際に、筐体１１０を握持する使用者の手の周波数に近い周波数又は一致する周波数が発生しやすい駆動電圧を含むように設定することが望ましい。振動モータ１２０の振動周波数と使用者の手の周波数が合う場合、筐体１１０の振幅が大きくなって、３軸加速度センサ１４０によって検出される加速度が大きくなると予想されるからである。検出される加速度が大きくなると個人に著しい差が生じることになり、個人の特徴として捉えやすくなる。
【００４２】
ここでは、振動制御部２５２が駆動回路部１３０を介して振動モータ１２０に発生させる周波数は、複数の使用者を対象として、筐体１１０を握った状態で、使用者の手の周波数と最も共振しやすい振動周波数の統計の結果として、０〜２００Ｈｚに設定している。
【００４３】
抽出部１５６は、３軸加速度センサ１４０及び３軸角速度センサ１８０により検出された測定データ（角速度データ、角速度データ）から、各測定データを示す周波数成分を抽出する。
【００４４】
具体的には、抽出部１５６は、段階的に変化する振動モータ１２０の振動周波数毎に、３軸加速度センサ１４０及び３軸角速度センサ１８０により検出されたデータに対してＦＦＴ（Fast Fourier Transform）によるスペクトラム解析を行う。これにより、抽出部１５６は、段階的に変化する振動モータ１２０の振動周波数毎に、検出された各データから周波数成分（ここでは６種類）を抽出する。抽出した周波数成分は、記憶部２５３に、加工前の個人データ（加工前個人データ）の要素として格納される。また、これら抽出した周波数成分は、記憶部２５３に格納されるとともにデータ加工部２５５に出力されてもよい。
【００４５】
記憶部２５３は、振動モータ１２０に供給される駆動電圧値を記憶している。また、記憶部２５３は、３軸加速度センサ１４０及び３軸角速度センサ１８０で検出した複数の測定データ（「周波数成分」に相当）と、これら測定データを加工した後で正規化してなる個人データとを、使用者毎に対応付けて記憶する。
【００４６】
図４は、記憶部２５３に記憶される使用者の正規化した測定データである個人データを示すレーダーチャートである。
【００４７】
個人データは、記憶部２５３において、使用者毎に対応付けられて格納された個人データであり、使用者が筐体１１０を握った状態（図３参照）で発生する振動モータ１２０（図２参照）の異なる振動周波数毎に得た複数の測定データを用いて構成される。
【００４８】
図４に示す個人データＰ１は、振動モータ１２０における複数の振動周波数（回転数）毎のＸ軸、Ｙ軸、Ｚ軸の各方向の加速度データ及びＸ軸、Ｙ軸、Ｚ軸回りの回転動の角速度データから周波数成分を抽出した後で正規化したレーダーチャートとしている。
【００４９】
個人データＰ１は、振動モータ１２０（図２参照）を駆動して、周波数０Ｈｚ〜２００Ｈｚの範囲で１０Ｈｚ毎に振動周波数を発生させて得た複数の測定データ（ＡｃｃＸ、ＡｃｃＹ、ＡｃｃＺ、ＲｏｔＸ、ＲｏｔＹ、ＲｏｔＺ）を用いて形成されている。
【００５０】
具体的に、個人データＰ１を構成するＡｃｃＸ１０、ＡｃｃＹ１０、ＡｃｃＺ１０は、振動モータ１２０の回転数が１０Ｈｚの際に３軸加速度センサ１４０においてＸ軸、Ｙ軸、Ｚ軸でそれぞれ検出された測定データを示す。
【００５１】
また、ＡｃｃＸ２０、ＡｃｃＹ２０、ＡｃｃＺ２０は、振動モータ１２０の回転数が２０Ｈｚの際に３軸加速度センサ１４０においてＸ軸、Ｙ軸、Ｚ軸でそれぞれ検出されたデータを示している。
【００５２】
同様に、ＡｃｃＸ３０、４０、…ＡｃｃＸ２００、ＡｃｃＹ３０、４０、…ＡｃｃＹ２００、ＡｃｃＺ３０、４０、…ＡｃｃＺ２００は、振動モータ１２０の回転数を３０Ｈｚ〜２００Ｈｚまでの範囲で１０Ｈｚずつ変化させたときに３軸加速度センサ１４０においてＸ軸、Ｙ軸、Ｚ軸でそれぞれ検出されたデータ（加速度データ）を示している。なお、図４において、ＡｃｃＺ２００はＡｃｃＹ０と、ＡｃｃＹ２００はＡｃｃＸ０と、ＡｃｃＸ２００はＲｏｔＺ０と、重なる位置で示している。
【００５３】
また、図４において、ＲｏｔＸ１０、ＲｏｔＹ１０、ＲｏｔＺ１０は、振動モータ１２０の回転数が１０Ｈｚの際に、３軸角速度センサ１８０においてＲｏｔＸ軸、ＲｏｔＹ軸、ＲｏｔＺ軸でそれぞれ検出されたデータを示す。さらに、図４において、ＲｏｔＸ２０、ＲｏｔＹ２０、ＲｏｔＺ２０は、振動モータ１２０の回転数が２０Ｈｚの際に、３軸角速度センサ１８０においてＲｏｔＸ軸、ＲｏｔＹ軸、ＲｏｔＺ軸でそれぞれ検出されたデータを示している。
【００５４】
同様に、ＲｏｔＸ３０、４０、…ＲｏｔＸ２００、ＲｏｔＹ３０、４０、…ＲｏｔＹ２００、ＲｏｔＺ３０、４０、…ＲｏｔＺ２００は、振動モータ１２０の回転数を３０Ｈｚ〜２００Ｈｚまでの範囲で１０Ｈｚずつ変化させたとき（３０Ｈｚ、４０Ｈｚ、…２００Ｈｚ）に３軸加速度センサ１４０においてＲｏｔＸ軸、ＲｏｔＹ軸、ＲｏｔＺ軸でそれぞれ検出されたデータ（加速度データ）を示している。なお、図４において、ＲｏｔＺ２００はＲｏｔＹ０と、ＲｏｔＹ２００はＲｏｔＸ０と、ＲｏｔＸ２００はＡｃｃＺ０と、重なる位置で示している。
【００５５】
個人データを生成するための各周波数成分の加工（重み付け）及び正規化は、データ加工部２５５によって行われ、記憶部２５２に格納される。
【００５６】
この個人データＰ１は、３軸加速度センサ１４０及び３軸角速度センサ１８０において得られた各軸に関する測定データ（加速度データ及び角速度データ）から抽出された周波数成分に対し、加工処理を行うことによって生成されている。
【００５７】
詳細には、個人データＰ１は、振動モータ１２０において連続して変化しながら発生する複数の振動周波数毎にＸ、Ｙ、Ｚの各軸対応で検出した各軸方向の加速度及び各軸回りの角速度を示す周波数成分をそれぞれ重み付けした後で正規化されることにより生成されている。これにより、重み付けされた各軸の周波数成分により構成される個人データは、いずれも個人データとしての特徴が顕れるようになっている。
【００５８】
図５は、図４に示す個人データにおいて重み付けされる前の個人データＰ２を示すレーダーチャートである。図５に示す周波数成分（ＡｃｃＸ、ＡｃｃＹ、ＡｃｃＺ等で示すＸ軸、Ｙ軸、Ｚ軸の加速度データ及び、ＲｏｔＸ、ＲｏｔＹ、ＲｏｔＺ等で示すＸ軸、Ｙ軸、Ｚ軸廻りの回転データ）は、振動モータ１２０の回転数を所定の周波数帯域でスイープした際に、Ｘ軸、Ｙ軸、Ｚ軸に関してそれぞれ検出される信号を抽出部１５６によって解析して周波数成分として抽出されたデータであり、重み付け及び正規化される前（加工前）のデータである。つまり、図５の個人データは、一回の測定によって検出された後で抽出され、且つ、重み付けフィルタを通す前（フィルタリングする前）の周波数成分を示す生データ群である。
【００５９】
データ加工部２５５は、加工処理として、連続的に変化する前記振動源の周波数毎に抽出部１５６により抽出された周波数成分毎（図５参照）に、重み付けフィルタを用いて重み付けを行っている。すなわち、データ加工部２５５は、抽出部１５６により抽出された周波数成分のそれぞれに、生成した重み付けフィルタを用いて重み付けを行うことによって、各周波数成分を、それぞれが所属する個人を示す特徴的なデータにする。
【００６０】
これに加えて、データ加工部２５５は、抽出部１５６により抽出された周波数成分を周波数成分毎に重み付けした後に、正規化して使用者毎に関連付けることによって図４の個人データを生成する。
【００６１】
すなわち、データ加工部２５５は、個人データの構成要素であり、且つ、振動モータ１２０の振動周波数毎に抽出される各軸に関する加速度検出量及び回転検出量（周波数成分値）に重み付けした後、個人データ毎にダイナミックレンジを調整して正規化する。
【００６２】
すなわち、正規化は、個人データの要素となり、且つ、重み付けされた周波数成分に対して、ＭＡＸ値を有する周波数成分のＭＡＸ値が、他の周波数成分におけるＭＡＸ値（ここでは「１」）となるように、ゲイン調整を行うことである。このように個人データＰ１は構成され、測定データを正規化したデータとも称することができ、個人認証ＩＤとして機能する。
【００６３】
加速度検出量及び回転検出量を加工（重み付け）した要素、つまり、周波数成分により構成される使用者の個人データは、記憶部２５３に、データベースとして各個人毎に、各周波数成分の生データとともに関連付けられて、各個人毎の複数個記憶される。記憶部２５３は、使用者毎に過去複数件分の測定データをリングバッファで記憶する。
【００６４】
ここでは、記憶部２５３は、使用者毎に過去５件分の個人データ（履歴データ）を、使用者毎に記憶している。
【００６５】
これら履歴データとして格納される複数件の個人データは、使用者Ａ、Ｂ…Ｘ毎に、過去５件分の古い順で並ぶ個人データである。
【００６６】
記憶部２５３に格納される個人データは、同じ条件であっても筐体１１０に対する使用者の握り方、握る強さ、手のサイズ等の関係により、使用者毎にその特徴が現れる。
【００６７】
ここでは、個人データは、条件毎に、つまり、連続的に変化した振動モータ１２０の振動周波数毎に、３軸加速度センサ１４０及び３軸角速度センサ１８０を介して取得されたデータに重み付けしてなる複数の周波数成分によって構成される。
【００６８】
本実施の形態では、記憶部２５３の記憶する使用者の数を１０人と想定しているが、これに限らず、２人以上であれば何人の使用者を記憶していても良い。また、使用者毎の過去の測定データである個人データを５件としたが、何件でもよい。記憶部２５３の記憶する使用者毎の個人データは２件以上であることが望ましい。
【００６９】
判定部２５４は、使用者が筐体１１０を握持した状態で振動モータ１２０を振動させて得た個人データを、記憶部２５３の個人データと比較照合して個人認証を行う。
【００７０】
詳細には、判定部２５４は、データ加工部２５５によって個人データとして正規化された、３軸加速度センサ１４０及び３軸角速度センサ１８０で検出した実際に筐体１１０を握っている使用者の測定データと、記憶部２５３に記憶された履歴データとしての個人データとを比較照合する。この比較照合は、個人データ（図４参照）のチャートの形状（モータ１２０振動周波数毎の各軸方向の加速度及び角速度のバランス）を比較して照合する。
【００７１】
判定部２５４は、記憶部２５３内のデータベースに格納された全ての履歴データの中から、正規化した使用者の測定データとの類似度が高い個人データの順に、当該個人データの使用者を同一人の候補として判定する。
【００７２】
具体的には、認証対象となる使用者の個人データにおける、振動モータ１２０が発生する振動周波数毎の各軸における値を、格納された個人データ（履歴データ）においてそれぞれ対応する振動周波数毎の各軸における値との差を算出し、算出された差を二乗して差分分析値とする。
【００７３】
そして、算出された差分分析値の総和を算出する。このようして判定部２５４は、一個人データ（履歴データ）の差分分析値の総和を、全ての個人データ（履歴データ）を対象に算出し、履歴データ毎の差分分析値の総和を比較する。比較の結果、判定部２５４は照合処理として、差分分析値の総和が最も０に近い順に、順位付けを行い、この順位が高い個人データ（履歴データ）の使用者を、認証対象となる使用者と同一人であると判定する。
【００７４】
すなわち、判定部２５４は、全ての個人データ（履歴データ）と測定データとの差分を採って（ここでは認証対象となる使用者の現測定データと、格納された個人データを構成する１２０個のデータからそれぞれ引き算して）、各々二乗して＋−を消去した値に、合致する値である０に近い順に、順位付けする。なお、順位付けにおいて、差分分析値の総和が大きく、０からかけ離れている場合、これらのデータに対応する個人データは除外して順位付けを行う。また、１２０個のデータとは、ここでは、複数の周波数毎（０〜２００Ｈｚまでの間で１０Ｈｚずつ増加する周波数毎（計２０）に測定されたＲｏｔＸ、ＲｏｔＹ，ＲｏｔＺ、ＡｃｃＸ、ＡｃｃＹ、ＡｃｃＺ（計６）である。
【００７５】
このように、判定部２５４は、使用者毎に記憶された過去の測定データである複数の履歴データの中で、認証対象となる使用者の測定データとの類似度が最も高い個人データの使用者を、同一人であると判定する。
【００７６】
ここでは、記憶部２５３には、個人データ（履歴データ）と、加工前の個人データとが記憶されている。判定部２５４は、個人データ（履歴データ）の中で、測定データとの類似度が最も高いデータに対応する使用者を、同一人であると判定する。このため、使用者の認証度の向上が図られている。
【００７７】
このように判定部２５４は、過去の履歴データであり、且つ、個人ＩＤとして機能する個人データと、現在認証中の使用者の測定データとを比較判定するにあたり、個人差としての特徴が一番顕れる軸を照合するのではなく、対応する各軸で検出された加速度及び角速度を示す測定データの全てを用いて照合する。
【００７８】
判定部２５４によって、同一人であると判定した使用者は、メイン制御部２２の機能によって、認証対象である使用者の候補として、順次人単位でディスプレイ２３を介して提示される。認証対象である使用者は、この提示された情報に基づいてゲームコントローラ１０の操作ボタンを押下する等して、その認証の確認を行うことができる。なお、判定部２５４における照合処理として、差分分析値の総和が最も０に近い順に、順位付けを行い、この順位が高い履歴データの使用者を、認証対象となる使用者と同一人であると判定したが、この判定の方法はこれに限らない。例えば、順位を、使用者毎に総和して、その総和が最も少ない数に対応する使用者を、認証対象となる使用者と同一人と判定しても良い。
【００７９】
このように構成された個人認証装置１００の動作について説明する。
【００８０】
図６は、本発明の一実施の形態に係る個人認証装置１００の認証処理を説明するためのフローチャートである。
【００８１】
まず、使用者は、図３に示すようにゲームコントローラ１０の筐体１１０の握持部１１１を握り、ゲームコントローラ１０を介して個人認証装置１００に認証処理を開始させる。この認証処理の開始は、例えば、ゲームコントローラ１０に設けられた操作ボタンを押下して、通信部１５１、２１を介して、ゲーム装置本体２０のメイン制御部２２に認証処理開始信号を送信してもよいし、ゲーム装置本体２０自体を操作することで行っても良い。
【００８２】
認証処理が開始されると、ステップＳ３０では、振動制御部２５２は、記憶部２５３に格納された駆動電圧値を読み出して、通信部２１を介してゲームコントローラ１０に送信する。振動制御部２５２からの駆動制御信号は、通信部１５１を介して駆動回路部１３０に入力され、振動モータ１２０を駆動して振動させる。
【００８３】
これにより、振動モータ１２０は、連続的に変化する振動周波数を発生する。ここでは、振動モータ１２０は、振動制御部２５２によって、０Ｈｚ〜２００Ｈｚの間で１０Ｈｚずつ大きくなるように連続的に変化する振動周波数を発生する。
【００８４】
ステップＳ３１では、３軸加速度センサ１４０及び３軸角速度センサ１８０は、使用者が筐体１１０の握持部１１１を握った状態で発生した振動を検出し、通信部１５１を介してメイン制御部２２に出力する。具体的には、ステップＳ３１では、３軸加速度センサ１４０は、振動周波数毎（ここでは駆動電圧の違いにより振動モータ１２０で発生する振動周波数毎）にＸ軸、Ｙ軸、Ｚ軸の加速度を検出し、測定データとしてメイン制御部２２に出力する。このとき、３軸角速度センサ１８０は、振動周波数毎（ここでは駆動電圧の違いにより振動モータ１２０で発生する振動周波数毎）にＸ軸、Ｙ軸、Ｚ軸の各軸回りの角速度を検出し、測定データとしてメイン制御部２２に出力する。
【００８５】
ステップＳ３２では、メイン制御部２２は、３軸加速度センサ１４０及び３軸角速度センサ１８０により検出した測定データ（加速度データ及び角速度データ）から周波数成分を抽出する。
【００８６】
具体的には、ステップＳ３２では、メイン制御部２２の抽出部１５６が、３軸加速度センサ１４０及び３軸角速度センサ１８０から入力される測定データをＦＦＴ解析して、その周波数成分を抽出する。
【００８７】
ステップＳ３３では、メイン制御部２２は、重み付けフィルタを用いて、抽出した周波数成分に重み付けを行う。
【００８８】
詳細には、ステップＳ３３では、メイン制御部２２のデータ加工部２５５が、検出したＸ軸の加速度、Ｙ軸の加速度、Ｚ軸の加速度、Ｘ軸回りの角速度、Ｙ軸回りの角速度、Ｚ軸回りの角速度のデータ（測定データ）に重み付けするための重み付けファイルを生成するとともに、各データを重み付けする。これにより、３軸加速度センサ１４０からの検出データでは、使用者の個体差が現れやすくなる。なお、このステップＳ３３における重み付けフィルタ生成の詳細については後述する。
【００８９】
ステップＳ３４では、データ加工部２５５は、個人データ毎に、０〜２００Ｈｚの範囲で、１０Ｈｚずつに大きくなる振動周波数毎に検出される使用者の測定データにおいて、ＭＡＸ値が使用者の測定データのＭＡＸ値となるように、測定データを構成する全てのデータ（駆動電圧毎の各軸における振動を示す各軸の加速度データ）をゲイン調整して正規化する。ここでは、使用者の一回の測定による得た測定データの各データに対してダイナミックレンジを調整、つまり、測定データ内のデータのＭＡＸ値が所定の値（ここでは１）となるようにゲイン調整を行っている。
【００９０】
すなわち、ステップＳ３４では、データ加工部２５５は、個人データＰ１（図４参照）に示すように、個人データＰ１を構成するＡｃｃＸ、ＡｃｃＹ、ＡｃｃＺ、ＲｏｔＸ、ＲｏｔＹ、ＲｏｔＺによって、１０Ｈｚ〜２００Ｈｚの範囲内において１０Ｈｚ毎に検出した周波数成分において、ＭＡＸ値を示す周波数成分を「１」として、他の周波数成分との調整を行い適宜、正規化を行っている。
【００９１】
ステップＳ３５では、判定部２５４は、記憶部２５３に履歴データ（個人データ）があるかを確認し、履歴データが記憶部２５３に格納されていれば、ステップＳ３６に移行し、履歴データが記憶部２５３になければ、ステップＳ４０に移行する。
【００９２】
ステップＳ３６では、判定部２５４が、正規化した測定データと全ての履歴データと比較する。このステップＳ３６における判定部２５４の処理は、上述した比較照合処理のうちの比較処理である。
【００９３】
ステップＳ３７では、判定部２５４は、正規化した測定データと、全ての履歴データとを比較して、全ての履歴データに対し、正規化した測定データとの類似度が高い順に順位付けを行いステップＳ３８に移行する。なお、このステップＳ３７における判定部２５４の処理は、上述した比較照合処理のうちの照合処理である。
【００９４】
ステップＳ３８では、判定部２５４は、順位付けした、個人ＩＤである履歴データ（個人データ）の中で、一番順位が高い、つまり、類似度が高い個人データの使用者と、正規化した測定データの使用者を同一人であると認証して、ステップＳ３９に移行する。
【００９５】
ステップＳ３９では、判定部２５４は、正規化した測定データの使用者に、認証した履歴データの使用人本人（該当者）である否かを提示し、使用者本人であれば、ステップＳ４０に移行し、使用者本人でなければ、ステップＳ４１に移行する。
【００９６】
ステップＳ４０では、判定部２５４は、正規化した測定データ群を使用者の個人ＩＤとなる個人データとし、この個人データを履歴データとして記憶部２５３に記憶する。加えて、ステップＳ４０では、判定部２５４は、正規化される前のフィルタリングされていない測定データ（重み付けフィルタを通していない周波数成分）を、正規化した測定データの使用者に関連付けて記憶部２５３に保存して処理を終了する。
【００９７】
ステップＳ４１では、順位付けによって同一人と認証した履歴データ（個人データ）をマスクしてステップＳ３７に移行する。具体的には、ステップＳ４１では、判定部２５４は、順位付けによって同一人と認証した履歴データの使用者の履歴データを全てマスクする。また、ステップＳ３７では、判定部２５４は、マスクされた履歴データを除外した全ての履歴データに、正規化した測定データとの類似度が高い順に再び順位付けを行い以降の処理をくり返す。
【００９８】
このようにして、個人認証装置１００を備えるゲーム装置では、ゲーム装置本体２０は、ゲームコントローラ１０を用いて、個人の特定を行って、その個人に対応した設定や機能にゲーム装置本体２０側で、切り替えることができる。
【００９９】
次に、ステップＳ３３において重み付けを行う際に用いられる重み付けフィルタの生成を説明する。
【０１００】
図７は、本発明の一実施の形態の係る個人認証装置における重み付けフィルタの生成方法を説明するフローチャートである。
【０１０１】
ここでは、記憶部２５３は、Ａ、Ｂ、…、Ｘ人の個人データを記憶しているものとし、個人データは、各個人毎に複数個存在している（Database={Ａ０，Ａ１，Ａ２，Ａ３，…Ａｎ，Ｂ０，Ｂ１，…Ｘｍ−１、Ｘｍ}）。つまり、記憶部２５３は、個人データのデータベースとして機能する。なお、これら各個人Ａ、Ｂ、…、Ｘに複数個対応付けられた個人データＡ０，Ａ１，Ａ２，Ａ３，…Ａｎ，Ｂ０，Ｂ１，…Ｘｍ−１、Ｘｍは、ここでは重み付けフィルタを通していない重み付けフィルタリング前、つまり加工前の個人データ（生データ）である。
【０１０２】
図８は、加工前の個人データ（生個人データ）Personalをテキストで示す図であり、このような生個人データは、記憶部２５３に、所定の個人に対応付けられた個人データ（加工、正規化後の個人データ）とともに、データベースとして格納されている。
【０１０３】
記憶部２５３のデータベースにおいて、各個人データＡ０，Ａ１，Ａ２，Ａ３，…Ａｎ，Ｂ０，Ｂ１，…Ｘｍ−１、Ｘｍは、それぞれ、図８に示すように個人データ（Personal）として｛ＡｃｃＸ０−１０Ｈｚ，ＡｃｃＸ１０−２０Ｈｚ，…，ＡｃｃＸ１９０−２００Ｈｚ，ＡｃｃＹ０−１０Ｈｚ，…，ＡｃｃＹ１９０−２００Ｈｚ，ＡｃｃＺ０−１０Ｈｚ，…，ＡｃｃＺ１９０−２００Ｈｚ，ＲｏｔＸ０−１０Ｈｚ，ＲｏｔＸ１０−２０Ｈｚ，…，ＲｏｔＸ１９０−２００Ｈｚ，ＲｏｔＹ０−１０Ｈｚ，…，ＲｏｔＹ１９０−２００Ｈｚ，ＲｏｔＺ０−１０Ｈｚ，…，ＲｏｔＺ１９０−２００Ｈｚ｝の形態を有する。なお、ＡｃｃＸ，ＡｃｃＹ，ＡｃｃＺは３軸（Ｘ，Ｙ、Ｚ）加速度センサ出力であり、ＲｏｔＸ，ＲｏｔＹ，ＲｏｔＺ：３軸（Ｘ，Ｙ、Ｚ）角速度センサ出力である。
【０１０４】
ステップＳ５１では、メイン制御部２２のデータ加工部２５５は、乱数を用いて初期重み付けフィルタを生成する。
【０１０５】
図９は重み付けフィルタ（Weight）の説明に供する図であり、重み付けフィルタの一例を示す図である。重み付けフィルタ（Weight）は、図９に示すように、Weight＝｛Weight０−１０Ｈｚ，Weight１０−２０Ｈｚ，…，Weight１９０−２００Ｈｚ｝の形態を有する。重み（Weight）は、振動周波数毎に、生個人データを構成する測定データ毎に設定され、且つ、０≦Weight≦１．０を満たす。
【０１０６】
ステップＳ５２では、データ加工部２５５は、生成した重み付けフィルタを評価するためのフィルタ評価用データとしての個人データ（例えば個人データＡ０）を、記憶部２５３における個人データのデータベース中から設定して取り出す（読み込む）。
【０１０７】
ステップＳ５３では、データ加工部２５５は、記憶部２５３（データベース）からフィルタ評価用データとして設定した個人データ（個人データＡ０）以外の個人データ群（個人データＡ１，Ａ２，Ａ３，…Ａｎ，Ｂ０，Ｂ１，…Ｘｍ−１、Ｘｍ）を取り出す。
【０１０８】
ステップＳ５４では、ファイル評価用データ（個人データＡ０）とフィルタ評価用データとして設定した個人データ以外の個人データ、すなわち、記憶部２５２のデータベース内の個人データ群との差分を計算し、個人データ群において、最も差分が短い（少ない）個人データを求める。
【０１０９】
差分を図１０に示す。図１０は、個人データの差分の説明に供する図である。
【０１１０】
図１０に示すように、個人データの差分（Ｄｉｆｆ）は、ファイル評価用データ（個人データＡ０）とフィルタ評価用データ（個人データＡ０）以外の個人データ群（Ａ１，Ａ２，Ａ３，…Ａｎ，Ｂ０，Ｂ１，…Ｘｍ−１、Ｘｍ）における各個人データと差分を、初期重み付けフィルタ（Weight）で重み付けした値の絶対値とする。この個人データの差分（Ｄｉｆｆ＝｜(PersonalＡ−PersonalＢ)・Weight｜）は、振動周波数毎に検出された個人データＡ０の各要素（測定データ）及び個人データＡ０以外の個人データ毎の各要素（測定データ）の二乗差と、初期重み付けフィルタ（Weight）の振動周波数毎の重み付けとを用いて算出される。
【０１１１】
すなわち、Ｄｉｆｆ＝｜(Personal.Ａ−Personal.Ｂ)・Weight｜＝（PersonalＡ.ＡｃｃＸ０−１０Ｈｚ−PersonalＢ.ＡｃｃＸ０−１０Ｈｚ）２・Weight０−１０Ｈｚ＋（PersonalＡ.ＡｃｃＸ１０−２０Ｈｚ−PersonalＢ.ＡｃｃＸ１０−２０Ｈｚ）２・Weight１０−２０Ｈｚ＋…+（PersonalＡ.ＡｃｃＸ１９０−２００Ｈｚ−PersonalＢ.ＡｃｃＸ１９０−２００Ｈｚ）２・Weight１９０−２００Ｈｚ+（PersonalＡ.ＡｃｃＹ０−１０Ｈｚ−PersonalＢ.ＡｃｃＹ０−１０Ｈｚ）２・Weight０−１０Ｈｚ＋…＋（PersonalＡ.ＡｃｃＺ０−１０Ｈｚ−PersonalＢ.ＡｃｃＺ０−１０Ｈｚ）２・Weight０−１０Ｈｚ＋…＋(PersonalＡ.ＲｏｔＹ０−１０Ｈｚ−PersonalＢ.ＲｏｔＹ０−１０Ｈｚ)２・Weight０−１０Ｈｚ＋…＋(PersonalＡ.ＲｏｔＺ１９０−２００Ｈｚ−PersonalＢ.ＲｏｔＺ１９０−２００Ｈｚ)２・Weight１９０−２００Ｈｚとなる。
【０１１２】
このように、ステップＳ５４では、データ加工部２５５は、フィルタ評価用データ（Ａ０）と、フィルタ評価用データ以外の個人データ群（Ａ１，Ａ２，Ａ３，…Ａｎ，Ｂ０，Ｂ１，…Ｘｍ−１、Ｘｍ）の各個人データとを用いて対応するＤｉｆｆを算出する。データ加工部２５５は、算出したＤｉｆｆを比較して、その比較の結果、最も差分が短い個人データを判定する。
【０１１３】
ステップＳ５５では、データ加工部２５５は、上記Ｄｉｆｆを用いて、最も差分が短い個人データが所属する個人と、フィルタ評価用データが所属する個人と一致したか否かを判定する。ステップＳ５５において、最も差分が短い個人データが所属する個人と、フィルタ評価用データが所属する個人とが一致していればステップＳ５６に移行し、一致していなければステップＳ５７に移行する。
【０１１４】
ステップＳ５６では、データ加工部２５５は、フィルタ評価で用いられた重み付けフィルタに対して、重み付けフィルタとしての適性度を＋１にして（重み付けフィルタとしての評価値を上げて）、ステップＳ５８に移行する。
【０１１５】
一方、ステップＳ５７では、データ加工部２５５は、フィルタ評価で用いられた重み付けフィルタに対して、重み付けフィルタとしての適性度を−１にして（重み付けフィルタとしての評価値を下げて）、ステップＳ５８に移行する。
【０１１６】
ステップＳ５８では、データ加工部２５５は、生成した重み付けフィルタ及び設定したフィルタ評価用データとそれ以外の個人データ群を用いて、全データベース要素に対する評価が完了したか否かを判定する。すなわち、ステップＳ５８では、データベース内の個人データ（履歴データ）の全てをファイル評価用データとして設定し、設定したフィルタ評価用データ以外の全ての個人データ群との差分を算出して重み付けフィルタ評価を行ったか否かを判定する。
【０１１７】
ステップＳ５８において、全データベース要素に対する評価が完了していなければステップＳ５９に移行して、データベースから次のフィルタ評価用データを設定して、ステップＳ５３に戻り処理をくり返す。
【０１１８】
一方、ステップＳ５８において、全データベース要素に対して、生成した重み付けフィルタ適正の評価が完了していればステップＳ６０に移行する。
【０１１９】
ステップＳ６０では、データ加工部２５５は、フィルタ適性度に基づいて、生成した重み付けフィルタが十分な適正を持つ重み付けフィルタであるか否かを判定する。ステップＳ６０において、生成した重み付けフィルタが十分な適正を持つフィルタであれば、重み付けフィルタ生成処理は終了し、十分な適正を持つフィルタでなければステップＳ６１に移行する。
【０１２０】
ステップＳ６１では、探索アルゴリズムにより、より適性度の高いフィルタが生成されるまで、ステップＳ５２に移行して処理を繰り返す。
【０１２１】
このようにデータ加工部２５５は、適性度の高い重み付けフィルタを生成する。この生成した重み付けフィルタを用いて、データ加工部２５５は、抽出した測定データ（加速度データ及び角速度データ）である周波数成分に、各個人データ毎（詳細には各個人データの測定データ毎）に重み付けを行う。
【０１２２】
本実施の形態によれば、使用者はゲームコントローラ１０を使用する体勢をとるだけで、つまり、ゲームコントローラ１０を握持して、振動モータ１２０で振動周波数を一定割合で増加する振動周波数を発生させて、振動検出部１７０に振動を検出させて、個人認証を行う。つまり、使用者がゲームコントローラ１０を握持するだけで、個人認証を行うことができ、使用者に意識させることなく個人用設定、個人用データなどが選択自在となり操作感の向上を図ることができる。
【０１２３】
また、使用者に対して、キーを打ち込む動作、ゲームコントローラ１０自体を所定の方向に移動させる動作の要求を行うことなく、簡易に個人認証を行うことができる。
【０１２４】
また、ゲームコントローラ１０等の機器は、近年、操作感を使用者に付与するためのバイブレータ（振動モータ）や、ゲームやアプリケーションにおける操作の入力方法として、ゲームコントローラ１０などの機器にかかる加速度を検知し、操作の一部として認識させるために加速度センサ（特に３軸加速度センサ）を備えるものが多く知られている。
【０１２５】
これら機能を予め備えたゲームコントローラを用いて、バイブレータ及び加速度センサの双方の機能を損なうことなく、また双方の機能のみで簡易的に個人認証を行うことができる。
【０１２６】
本実施の形態の個人認証装置１００によれば、機器において個人認証を行う際に、従来の光学センサを用いた指紋のパターン認証や、赤外線を用いた静脈パターン認証を行う生体認証及び虹彩パターン、顔、目の網膜における毛細血管のパターンを、光学センサを用いたカメラでイメージとして取り込む画像解析による認証技術等と比較して、使用するセンサ類が小型低コストである。また、振動モータの振動を利用することによって、個人認証を実現するために、追加の機器、部品を極力少なくすることができる。
【０１２７】
このように本実施の形態の個人認証装置１００は、振動モータ（バイブレータ）と、多軸センサ（加速度センサ及び角速度センサ）と、を備えた機器で簡易的な個人認証を行うことができる。
【０１２８】
なお、本実施の形態では、個人認証装置１００は、ゲームコントローラ１０とゲーム装置本体２０に適用した構成としたが、これに限らず、ゲームコントローラ１０自体や携帯電子機器に搭載してもよい。すなわち、個人認証装置１００の構成要件は、機器の筐体内に振動モータ１２０と、振動を検知する３軸加速度センサ１４０及び３軸角速度センサ１８０のうちの少なくとも一方のセンサと、が搭載されていれば、その他の構成要件はどこに、どのように設けられてもよい。
【０１２９】
具体的には、ゲームコントローラ１０を電子機器とし、この電子機器内に、メイン制御部２２側の振動制御部２５２、記憶部２５３、判定部２５４及びデータ加工部２５５を、振動モータ１２０、３軸加速度センサ１４０、３軸角速度センサ１８０とともに搭載される構成としてもよい。このように構成する際には、電子機器自体に、認証を提示する表示部を備え、判定部２５４の判定結果を表示可能な構成にすることが望ましい。
【０１３０】
また、図６を用いて説明した本実施の形態の認証処理では、ステップＳ４１の後、ステップＳ３７に移行して、判定部２５４は、マスクされた履歴データ（記憶部２５３に格納された個人データ）を除外した全ての履歴データに、正規化した測定データとの類似度が高い順に再び順位付けを行うようにしたが、ステップＳ４１の後、ステップＳ３８に移行する処理であってもよい。この場合のステップＳ３８では、判定部２５４は、先の処理で既に順位付けされた全ての履歴データを用いて再び照合処理を行う。具体的には、判定部２５４は、マスクされた履歴データの使用者が除かれ、且つ、先の処理で既に順位付けされた全履歴データの使用者の中から最上位（順位の最も小さい）使用者を、正規化された測定データの使用者と同一人であると認証する。
【０１３１】
このように、本実施の形態の個人認証装置によれば、振動源である振動モータ１２０に段階的に変化する振動を発生させた際に抽出した３軸に関する各周波数成分に対して重み付けを行うことによって、既に記憶部２５３に登録されているデータベース上での認証最適係数を常に抽出できる。
【０１３２】
このため、個人認証を行う上での最適なデータベースを構築することが出来る。また、強力な電波、電源電圧の異常、入力耐性以上のノイズ、静電気による放電等の外乱が混入して、認証率を上げるための最適な周波数帯が異なる場合でも、外乱レベルで正規化を行うことなく、好適に対応出来る。
【０１３３】
なお、上記実施の形態の個人認証装置１００におけるデータ加工部２５５では、重み付け処理に替えて、加工処理として周波数成分毎に特徴的な周波数成分、つまり、周波数成分のピーク値を抽出する処理を行うようにしても良い。
【０１３４】
例えば、個人認証装置１００のデータ加工部２５５において、ＦＦＴ解析により抽出された各周波数成分のピーク値付近に、ウィンドウ周波数範囲を設定する。これにより、ウィンドウ内の周波数成分のピークのみ抽出して、それ以外の余分な情報を除外する。なお、ここで設定されるウィンドウの所定幅は、２つ以上の周波数スペクトラムを抽出出来る帯域幅とし、例えば１００Ｈｚの幅で設定する。これにより各個人毎に検出された測定データ（加速度データ及び角速度データ）から抽出した周波数成分において、ピークスペクトラムの偏りが有る場合でも、所定範囲内において検知でき、情報量が増加して認証率の向上も図ることができる。
【０１３５】
なお、ここでは、本発明をハードウェアで構成する場合を例にとって説明したが、本発明をソフトウェアで実現することも可能である。例えば、振動モータ１２０と３軸加速度センサ１４０と３軸角速度センサ１８０と通信部１５１とを筐体１１０内部に搭載したゲームコントローラと通信可能なコンピュータのメモリに記憶して、コンピュータの制御部により実行されるプログラムとする。このプログラムは、使用者が前記筐体を握持した状態で前記振動モータ１２０を振動して所定の周波数領域でスイープする振動制御部２５２、振動モータ１２０で連続的に変化して発生する複数の振動周波数毎を３軸加速度センサ１４０及び３軸角速度センサ１８０で検出して得た複数の測定データから周波数成分を抽出する抽出部、抽出した周波数成分を使用者毎に記憶する記憶部２５３、及び、使用者が筐体１１０を握持した状態で振動モータ１２０を振動させて得た周波数成分を記憶部２５３のデータと比較照合して個人認証を行う判定部として、コンピュータの制御部を機能させるアルゴリズムをプログラム言語で記述したものである。このプログラムをコンピュータのメモリに記憶しておいて制御部によって実行させることによって本発明に係る個人認証装置と同様の機能を実現することができる。
【０１３６】
なお、上記本発明は、本発明の精神を逸脱しない限り、種々の改変をなすことができ、そして本発明が該改変させたものに及ぶことは当然である。
【産業上の利用可能性】
【０１３７】
本発明に係る個人認証装置は、簡易に使用者の個人認証を行うことができる効果を有し、ゲームコントローラを備えるゲーム装置に適用されるものとして有用である。
【符号の説明】
【０１３８】
１０  ゲームコントローラ
２０  ゲーム装置本体
２２  メイン制御部
１００  個人認証装置
１１０  筐体
１１１  握持部
１２０  振動モータ
１３０  駆動回路部
１４０  ３軸加速度センサ
１５６  抽出部
１７０  振動検出部
１８０  ３軸角速度センサ
２５２  振動制御部
２５３  記憶部
２５４  判定部
２５５  データ加工部
【図１】
2011227569.tif 000003
【図２】
2011227569.tif 000004
【図３】
2011227569.tif 000005
【図４】
2011227569.tif 000006
【図５】
2011227569.tif 000007
【図６】
2011227569.tif 000008
【図７】
2011227569.tif 000009
【図８】
2011227569.tif 000010
【図９】
2011227569.tif 000011
【図１０】
2011227569.tif 000012