(57)【要約】  指置き検出部５１は指紋センサに指が置かれたか否かを検出し、指面積検出部５２は、指紋センサ上に置かれている指の面積を、指紋センサの分割された小領域についての指置き検出結果に基づいて算出し、指位置検出部５３は、指紋センサ上の指の位置を、指紋センサの分割された小領域についての指置き検出部での検出結果に基づいて演算し、指離れ検出部５４は、指紋センサに置かれていた指が離れたか否かを検出して、それぞれの結果を制御情報生成部５０に出力する。制御情報生成部５０では、出力された結果に基づき、アクセル制御情報、ハンドル制御情報、ブレーキ制御情報等の制御情報を生成してゲームプログラムに出力する。【特許請求の範囲】
【請求項１】
指紋画像を入力する入力手段と、
当該入力手段に置かれた指の状態を検出する状態検出手段と、
当該状態検出手段の検出結果に基づき機器の制御情報を生成する制御情報生成手段とを備え、
前記状態検出手段は、
前記入力手段から入力された指紋画像の濃度値、又は、前記入力手段から入力された複数の指紋画像の濃度値の差のいずれかが所定の閾値を超えた場合に前記入力手段に指が置かれたことを検出する指置き検出手段、
前記入力手段から入力された複数の指紋画像の濃度値、又は、前記入力手段から入力された複数の指紋画像の濃度値の差のいずれかが所定の閾値を下回った場合に前記入力手段から指が離れたことを検出する指離れ検出手段、
前記入力手段の予め分割された領域内で連続して入力された複数の指紋画像の濃度値又は面積に基づき、前記入力手段上の指の移動量や移動方向を検出する指動き検出手段、
前記入力手段の予め分割された領域内で連続して入力された複数の指紋画像の濃度値又は面積に基づき、前記入力手段上の指の位置を検出する指位置検出手段、
前記入力手段上に指が置かれていない状態の濃度値と前記入力手段上に指が置かれた状態の濃度値との差を算出することにより前記入力手段上の指の接触面積を検出する指接触面積検出手段、又は、
所定時間間隔で入力された指紋画像の変位量の算出、又は、前記入力手段に指が置かれてから指が離れるまでの時間の計測のいずれかにより前記入力手段上の指の移動のリズムを検出する指リズム検出手段のうち、少なくとも１つの手段を含むことを特徴とする操作入力装置。
【請求項２】
前記指動き検出手段は、前記指紋画像の濃度値と所定の閾値との比較を、連続して入力された複数の指紋画像について行なうことにより、前記移動量や移動方向を検出することを特徴とする請求項１に記載の操作入力装置。
【請求項３】
前記指動き検出手段は、前記閾値を複数個設けることにより、指の移動量や移動方向の変化量を連続的に検出することを特徴とする請求項２に記載の操作入力装置。
【請求項４】
前記指動き検出手段は、前記指紋画像の前記領域内に占める面積の割合を、連続して入力された複数の指紋画像について算出することにより、指の移動量や移動方向の変化量を連続的に検出することを特徴とする請求項１に記載の操作入力装置。
【請求項５】
前記指位置検出手段は、前記指紋画像の濃度値と所定の閾値との比較を、連続して入力された複数の指紋画像について行なうことにより、指の位置を検出することを特徴とする請求項１に記載の操作入力装置。
【請求項６】
前記指位置検出手段は、前記閾値を複数個設けることにより、指の位置の連続的情報を検出することを特徴とする請求項５に記載の操作入力装置。
【請求項７】
前記指位置検出手段は、前記連続して入力された指紋画像の前記領域内に占める面積の割合を、連続して入力された複数の指紋画像について算出することにより、指の位置の連続的情報を検出することを特徴とする請求項１に記載の操作入力装置。
【請求項８】
前記指接触面積検出手段は、連続して入力された指紋画像の濃度値について指が置かれていない状態の濃度値との差を算出することにより、指の接触面積の連続的情報を検出することを特徴とする請求項１に記載の操作入力装置。
【請求項９】
前記状態検出手段は、前記指置き検出手段、前記指離れ検出手段、前記指動き検出手段、前記指位置検出手段、前記指接触面積検出手段、前記指リズム検出手段のうち少なくとも２つの手段を含み、
前記制御情報生成手段は、前記状態検出手段の含む２つ以上の手段からの複数の検出結果を統合して前記制御情報を生成することを特徴とする請求項１乃至８のいずれかに記載の操作入力装置。
【請求項１０】
コンピュータに、
指紋画像を取得する指紋画像取得ステップと、
当該指紋画像取得ステップにおいて取得される指紋画像から指の状態を検出する状態検出ステップと、
当該状態検出ステップにおける検出結果に基づいて機器の制御情報を生成する制御情報生成ステップとを実行させる操作入力プログラムであって、
前記状態検出ステップは、
取得した指紋画像の濃度値、又は、取得した複数の指紋画像の濃度値の差のいずれかが所定の閾値を超えた場合に指が置かれたことを検出する指置き検出ステップ、
取得した指紋画像の濃度値、又は、取得した複数の指紋画像の濃度値の差のいずれかが所定の閾値を下回った場合に指が離れたことを検出する指離れ検出ステップ、
予め分割された領域内で連続して取得した複数の指紋画像の濃度値又は面積に基づき、指の移動量や移動方向を検出する指動き検出ステップ、
予め分割された領域内で連続して取得した複数の指紋画像の濃度値を又は面積に基づき、指の位置を検出する指位置検出ステップ、
指が置かれていない状態の濃度値と取得された指紋画像の濃度値との差を算出することにより指の接触面積を検出する指接触面積検出ステップ、又は、
所定時間間隔で入力された指紋画像の変位量の算出、又は、指が置かれてから指が離れるまでの時間の計測により指の移動のリズムを検出する指リズム検出ステップのうち、少なくとも１つのステップを含むことを特徴とする操作入力プログラム。
【請求項１１】
前記指動き検出ステップは、前記指紋画像の濃度値と所定の閾値との比較を、連続して取得した複数の指紋画像について行なうことにより、前記移動量や移動方向を検出することを特徴とする請求項１０に記載の操作入力プログラム。
【請求項１２】
前記指動き検出ステップは、前記閾値を複数個設けることにより、指の移動量や移動方向の変化量を連続的に検出することを特徴とする請求項１１に記載の操作入力プログラム。
【請求項１３】
前記指動き検出ステップは、前記指紋画像の前記領域内に占める面積の割合を、連続して取得した複数の指紋画像について算出することにより、指の移動量や移動方向の変化量を連続的に検出することを特徴とする請求項１０に記載の操作入力プログラム。
【請求項１４】
前記指位置検出ステップは、前記指紋画像の濃度値と所定の閾値との比較を、連続して取得した複数の指紋画像について行なうことにより、指の位置を検出することを特徴とする請求項１０に記載の操作入力プログラム。
【請求項１５】
前記指位置検出ステップは、前記閾値を複数個設けることにより、指の位置の連続的情報を検出することを特徴とする請求項１４に記載の操作入力プログラム。
【請求項１６】
前記指位置検出ステップは、前記指紋画像の前記領域内に占める面積の割合を、連続して取得した複数の指紋画像について算出することにより、指の位置の連続的情報を検出することを特徴とする請求項１０に記載の操作入力プログラム。
【請求項１７】
前記指接触面積検出ステップは、連続して取得した指紋画像の濃度値について指が置かれていない状態の濃度値との差を算出することにより、指の接触面積の連続的情報を検出することを特徴とする請求項１０に記載の操作入力プログラム。
【請求項１８】
前記状態検出ステップは、前記指置き検出ステップ、前記指離れ検出ステップ、前記指位置検出ステップ、前記指接触面積検出ステップ、前記指リズム検出ステップのうち少なくとも２つのステップを含み、
前記制御情報生成ステップは、前記状態検出ステップの含む２つ以上のステップにおいて検出された検出結果を統合して前記制御情報を生成することを特徴とする請求項１０乃至１８のいずれかに記載の操作入力プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、指紋画像の入力により機器の操作を行なうための操作入力装置及び操作入力プログラムに関するものである。
【背景技術】
【０００２】
近年、情報の電子化やネットワーク化の急速な進行により、情報へのアクセス制御を行うためのセキュリティ技術への関心が高まっており、このようなセキュリティ技術の１つとして指紋を入力して照合し、本人認証を行うための製品が種々登場してきている。このような指紋入力装置は、小型化が指向され、携帯電話機や携帯情報端末等にも組み込まれるようになってきている。【０００３】
指紋入力装置を機器に組み込んだ場合、通常は指紋入力装置は指紋の照合の目的のみに用いられ、機器本来の目的を達成するためには別個の操作入力手段が用意されている。例えば、携帯電話機に指紋入力装置を搭載した場合、携帯電話のアドレス帳へのアクセスを指紋の照合により制限する場合に指紋入力装置が用いられることがあるが、この指紋入力装置によりアドレス帳の操作入力が行なわれるわけではなく、別個に用意された携帯電話機上の各種のキーを用いて行なわれるのが一般的である。【０００４】
このような構成では、従来から存在する機器に指紋認証機能を組み込もうとする場合、指紋入力装置を従来の構成にただ追加することになり、装置の大型化、コストの増加、操作の複雑化を招く問題がある。【０００５】
このような問題に鑑み、指紋入力装置をマウスのようなポインティングデバイスとしても使用するための提案もいくつかなされている（例えば、特許文献１〜特許文献３）。また、特許文献４では、指紋入力装置に指の置き態様を検知する手段を設け、指の押圧状態等を検知して操作入力を行なう方法が開示されている。
【特許文献１】特開平１１−１６１６１０号公報
【特許文献２】特開２００３−２８８１６０号公報
【特許文献３】特開２００２−６２９８４号公報
【特許文献４】特開２００１−１４３０５１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、上記従来の方法では、指紋入力をポインティングデバイスとしてのみ利用するか、押圧などを検知する特別の手段を設ける必要があり、指紋入力時の指の様々な状態を取得してこれらを機器の操作情報として利用するまでには至っておらず、指紋入力装置を操作入力装置として使用するには不十分なものであった。【０００７】
本発明は上記問題を解決するためになされたものであり、指紋画像を利用して機器の操作制御を行なうための操作入力装置及び操作入力プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明の操作入力装置は、指紋画像を入力する入力手段と、当該入力手段に置かれた指の状態を検出する状態検出手段と、当該状態検出手段の検出結果に基づき機器の制御情報を生成する制御情報生成手段とを備え、前記状態検出手段は、前記入力手段から入力された指紋画像の濃度値、又は、前記入力手段から入力された複数の指紋画像の濃度値の差のいずれかが所定の閾値を超えた場合に前記入力手段に指が置かれたことを検出する指置き検出手段、前記入力手段から入力された複数の指紋画像の濃度値、又は、前記入力手段から入力された複数の指紋画像の濃度値の差のいずれかが所定の閾値を下回った場合に前記入力手段から指が離れたことを検出する指離れ検出手段、前記入力手段の予め分割された領域内で連続して入力された複数の指紋画像の濃度値又は面積に基づき、前記入力手段上の指の移動量や移動方向を検出する指動き検出手段、前記入力手段の予め分割された領域内で連続して入力された複数の指紋画像の濃度値又は面積に基づき、前記入力手段上の指の位置を検出する指位置検出手段、前記入力手段上に指が置かれていない状態の濃度値と前記入力手段上に指が置かれた状態の濃度値との差を算出することにより前記入力手段上の指の接触面積を検出する指接触面積検出手段、又は、所定時間間隔で入力された指紋画像の変位量の算出、又は、前記入力手段に指が置かれてから指が離れるまでの時間の計測のいずれかにより前記入力手段上の指の移動のリズムを検出する指リズム検出手段のうち、少なくとも１つの手段を含むことを特徴とする。【０００９】
このような構成において、入力手段から指紋画像が入力され、入力時の指の状態を状態検出手段により検出して、その検出結果に基づき機器の制御情報が生成されるので、指紋認証装置の他に機器の操作を行なうための専用の入力装置を設けなくても、機器の操作を行なうことができる。また、状態検出手段としては、指が置かれたか否か（指置き検出手段）、置かれていた指が離れたか否か（指離れ検出手段）、指の移動量や移動方向の検出（指動き検出手段）、指の置かれている位置の検出（指位置検出手段）、指の接触面積の検出（指接触面積検出手段）、指の移動が一定のリズムにしたがっているか否かの検出（指リズム検出手段）の少なくとも１つを含むように構成されており、このような指の状態を検出することによって、機器の操作を制御することができる。【００１０】
また、前記指動き検出手段が、前記指紋画像の濃度値と所定の閾値との比較を、連続して入力された複数の指紋画像について行なうことにより、前記移動量や移動方向を検出するようにしてもよい。【００１１】
また、前記指動き検出手段において指紋画像の濃度値と所定の閾値との比較を行なう場合に、閾値を複数個設けることにより、指の移動量や移動方向の変化量を連続的に検出するようにしてもよい。閾値を複数個設ければ、連続量としての指の動きの出力を得ることができるため、特別な可動機構を用意しなくても、この出力に基づいて、制御情報生成手段により、アナログ的な機器の制御情報を生成することができる。【００１２】
また、前記指動き検出手段が、前記指紋画像の前記領域内に占める面積の割合を、連続して入力された複数の指紋画像について算出することにより、指の移動量や移動方向の変化量を連続的に検出するようにしてもよい。連続した入力について面積の割合を算出して移動量や移動方向を検出すれば、連続量としての指の動きの出力を得ることができるため、特別な可動機構を用意しなくても、この出力に基づいて、制御情報生成手段により、アナログ的な機器の制御情報を生成することができる。【００１３】
また、前記指位置検出手段が、前記指紋画像の濃度値と所定の閾値との比較を、連続して入力された複数の指紋画像について行なうことにより、指の位置を検出するようにしてもよい。【００１４】
また、前記指位置検出手段において指紋画像の濃度値と所定の閾値との比較を行なう場合に、閾値を複数個設けることにより、指の位置の連続的情報を検出するようにしてもよい。閾値を複数個設ければ、連続量としての指の位置の出力を得ることができるため、特別な可動機構を用意しなくても、この出力に基づいて、制御情報生成手段により、アナログ的な機器の制御情報を生成することができる。【００１５】
また、前記指位置検出手段が、前記連続して入力された指紋画像の前記領域内に占める面積の割合を、連続して入力された複数の指紋画像について算出することにより、指の位置の連続的情報を検出するようにしてもよい。連続した入力について面積の割合を算出して指の位置を検出すれば、連続量としての指の面積の出力を得ることができるため、特別な可動機構を用意しなくても、この出力に基づいて、制御情報生成手段により、アナログ的な機器の制御情報を生成することができる。【００１６】
また、前記指接触面積検出手段が、連続して入力された指紋画像の濃度値について指が置かれていない状態の濃度値との差を算出することにより、指の接触面積の連続的情報を検出するようにしてもよい。このような構成では、連続した入力について指の接触面積の出力を得られるので、特別な可動機構を用意しなくても、この出力に基づいて、制御情報生成手段により、アナログ的な機器の制御情報を生成することができる。【００１７】
また、前記状態検出手段が、前記指置き検出手段、前記指離れ検出手段、前記指動き検出手段、前記指位置検出手段、前記指接触面積検出手段、前記指リズム検出手段のうち少なくとも２つの手段を含み、前記制御情報生成手段は、前記状態検出手段の含む２つ以上の手段からの複数の検出結果を統合して前記制御情報を生成するようにしてもよい。２つ以上の検出結果を統合して制御情報を生成できるので、より複雑な制御情報を生成することができ、機器の制御の幅を広げることができる。【００１８】
また、本発明の他の側面としての操作入力プログラムは、コンピュータに、指紋画像を取得する指紋画像取得ステップと、当該指紋画像取得ステップにおいて取得される指紋画像から指の状態を検出する状態検出ステップと、当該状態検出ステップにおける検出結果に基づいて機器の制御情報を生成する制御情報生成ステップとを実行させる操作入力プログラムであって、前記状態検出ステップは、取得した指紋画像の濃度値、又は、取得した複数の指紋画像の濃度値の差のいずれかが所定の閾値を超えた場合に指が置かれたことを検出する指置き検出ステップ、取得した指紋画像の濃度値、又は、取得した複数の指紋画像の濃度値の差のいずれかが所定の閾値を下回った場合に指が離れたことを検出する指離れ検出ステップ、予め分割された領域内で連続して取得した複数の指紋画像の濃度値又は面積に基づき、指の移動量や移動方向を検出する指動き検出ステップ、予め分割された領域内で連続して取得した複数の指紋画像の濃度値を又は面積に基づき、指の位置を検出する指位置検出ステップ、指が置かれていない状態の濃度値と取得された指紋画像の濃度値との差を算出することにより指の接触面積を検出する指接触面積検出ステップ、又は、所定時間間隔で入力された指紋画像の変位量の算出、又は、指が置かれてから指が離れるまでの時間の計測により指の移動のリズムを検出する指リズム検出ステップのうち、少なくとも１つのステップを含むことを特徴とする。【００１９】
上記プログラムでは、指紋画像を取得し、その指紋画像から指の状態を検出して、その検出結果に基づき機器の制御情報が生成されるので、指紋画像以外に機器の操作を行なうための専用の入力情報を取得しなくても、機器の操作を行なうことができる。また、状態検出ステップとしては、指が置かれたか否か（指置き検出）、置かれていた指が離れたか否か（指離れ検出）、指の移動量や移動方向の検出（指動き検出）、指の置かれている位置の検出（指位置検出）、指の接触面積の検出（指接触面積検出）、指の移動が一定のリズムにしたがっているか否かの検出（指リズム検出）の各ステップの少なくとも１つを含むように構成されており、このような指の状態を検出することによって、機器の操作を制御することができる。【００２０】
また、前記指動き検出ステップが、前記指紋画像の濃度値と所定の閾値との比較を、連続して取得した複数の指紋画像について行なうことにより、前記移動量や移動方向を検出するようにしてもよい。【００２１】
また、前記指動き検出ステップにおいて記指紋画像の濃度値と所定の閾値との比較を行なう場合に、前記閾値を複数個設けることにより、指の移動量や移動方向の変化量を連続的に検出するようにしてもよい。閾値を複数個設ければ、連続量としての指の動きの出力を得ることができるため、この出力に基づいて、アナログ的な機器の制御情報を生成することができる。【００２２】
また、前記指動き検出ステップが、前記指紋画像の前記領域内に占める面積の割合を、連続して取得した複数の指紋画像について算出することにより、指の移動量や移動方向の変化量を連続的に検出するようにしてもよい。連続して取得した複数の指紋画像について面積の割合を算出して移動量や移動方向を検出すれば、連続量としての指の動きの出力を得ることができるため、この出力に基づいて、アナログ的な機器の制御情報を生成することができる。【００２３】
また、前記指位置検出ステップが、前記指紋画像の濃度値と所定の閾値との比較を、連続して取得した複数の指紋画像について行なうことにより、指の位置を検出するようにしてもよい。【００２４】
また、前記指位置検出ステップにおいて記指紋画像の濃度値と所定の閾値との比較を行なう場合に、前記閾値を複数個設けることにより、指の位置の連続的情報を検出するようにしてもよい。閾値を複数個設ければ、連続量としての指の位置の出力を得ることができるため、この出力に基づいて、アナログ的な機器の制御情報を生成することができる。【００２５】
また、前記指位置検出ステップが、前記指紋画像の前記領域内に占める面積の割合を、連続して取得した複数の指紋画像について算出することにより、指の位置の連続的情報を検出するようにしてもよい。連続して取得した複数の指紋画像について面積の割合を算出して移動量や移動方向を検出すれば、連続量としての指の位置の出力を得ることができるため、この出力に基づいて、アナログ的な機器の制御情報を生成することができる。【００２６】
また、前記指接触面積検出ステップが、連続して取得した指紋画像の濃度値について指が置かれていない状態の濃度値との差を算出することにより、指の接触面積の連続的情報を検出するようにしてもよい。このようにすると、連続して取得した指紋画像について指の接触面積の出力を得られるので、この出力に基づいて、アナログ的な機器の制御情報を生成することができる。【００２７】
また、前記状態検出ステップが、前記指置き検出ステップ、前記指離れ検出ステップ、前記指位置検出ステップ、前記指接触面積検出ステップ、前記指リズム検出ステップのうち少なくとも２つのステップを含み、前記制御情報生成ステップは、前記状態検出ステップの含む２つ以上のステップにおいて検出された検出結果を統合して前記制御情報を生成するようにしてもよい。２つ以上の検出結果を統合して制御情報を生成できるので、より複雑な制御情報を生成することができ、機器の制御の幅を広げることができる。
【発明を実施するための最良の形態】
【００２８】
次に、本発明を適用した実施の形態について以下に説明する。まず、本発明の操作入力装置を携帯電話機に搭載した第一実施形態について図面を参照して説明する。第一実施形態では、入力手段である指紋センサから取得した指紋画像に基づき、携帯電話機上で自動車の仮想ドライブを楽しむドライブゲームへの制御情報を出力するように構成される。まず、図１及び図２を参照して、携帯電話機の構成について説明する。図１は、携帯電話機１の外観図である。図２は、携帯電話機１の電気的構成を示すブロック図である。【００２９】
図１に示すように、携帯電話機１には、表示画面２と、テン・キー入力部３と、ジョグポインタ４と、通話開始ボタン５と、通話終了ボタン６と、マイク７と、スピーカー８と、機能選択ボタン９，１０と、入力手段としての指紋センサ１１と、アンテナ１２（図２参照）とが設けられている。尚、テン・キー入力部３、ジョグポインタ４、通話開始ボタン５、通話終了ボタン６、機能選択ボタン９，１０によりキー入力部３８（図２参照）が構成される。【００３０】
ここで、指紋センサ１１は、静電容量型のセンサや光学的センサ、感熱型、電界型、平面型、ライン型いずれのタイプの指紋センサを用いてもよく、指の指紋画像の一部乃至全部を指紋情報として取得できればよい。【００３１】
また、図２に示すように、携帯電話機１には、マイク７からの音声信号の増幅及びスピーカ８から出力する音声の増幅等を行うアナログフロントエンド３６と、アナログフロントエンド３６で増幅された音声信号のデジタル信号化及びモデム３４から受け取ったデジタル信号をアナログフロントエンド３６で増幅できるようにアナログ信号化する音声コーディック部３５と、変復調を行うモデム部３４と、アンテナ１２から受信した電波の増幅及び検波を行い、また、キャリア信号をモデム３４から受け取った信号により変調し、増幅する送受信部３３が設けられている。【００３２】
さらに、携帯電話機１には、携帯電話機１全体の制御を行う制御部２０が設けられ、制御部２０には、ＣＰＵ２１と、データを一時的に記憶するＲＡＭ２２と、時計機能部２３とが内蔵されている。ＲＡＭ２２は、後述する処理においてワークエリアとして使用されるものであり、指紋センサ１１から取得する指紋画像やその濃度値を記憶するエリア、後述の各処理で検出される検出結果を記憶するエリア等の記憶エリアが用意されている。また、制御部２０には、文字等を入力するキー入力部３８と、表示画面２と、指紋センサ１１と、不揮発メモリ３０と、着信音を発生するメロディ発生器３２が接続されている。メロディ発生器３２には、メロディ発生器３２で発生した着信音を発声するスピーカ３７が接続されている。不揮発メモリ３０には、制御部２０のＣＰＵ２１で実行される各種プログラムを記憶するエリア、指が置かれていない状態の指紋センサ１１の濃度値等の初期設定値を記憶するエリア、予め定められた各種の閾値を記憶するエリア等が設けられている。【００３３】
次に、以上の構成の携帯電話機１において指紋センサ１１からの入力に基づくドライブゲームの制御について図３〜図９を参照して説明する。図３は、本実施形態の機能ブロック図である。図４は、指置き検出処理の流れを示すフローチャートである。図５は、指離れ検出処理の流れを示すフローチャートである。図６は、指紋センサ１１の領域分割の模式図である。図７は、指面積検出処理の流れを示すフローチャートである。図８は、指位置検出処理の流れを示すフローチャートである。図９は、制御情報生成処理の流れを示すフローチャートである。【００３４】
図３に示すように、本実施形態においては、指置き検出部５１において指紋センサ１１に指が置かれたか否かを検出する指置き検出処理が所定時間間隔で繰り返し実行され、その検出結果が制御情報生成部５０に出力される。制御情報生成部５０では、指置き検出部からの「指置きあり」という検出結果が得られた場合に、ドライブ開始と判断して、アクセル制御情報とハンドル制御情報の基となる検出結果の取得を実行する。【００３５】
指置き検出部５１での処理と並行して、指面積検出部５２では、指紋センサ１１上に置かれている指の面積を、指紋センサ１１の分割された小領域についての指置き検出部での検出結果に基づいて算出し、制御情報生成部５０に出力する処理を繰り返し実行する。この算出された面積の値がアクセル制御情報となり、ドライブゲームのゲームプログラム５５に送信され、車速制御が実行される。【００３６】
さらに、指置き検出部５１や指面積検出部５２における処理と並行して、指位置検出部５３では、指紋センサ１１上の指の位置を、指紋センサ１１の分割された小領域についての指置き検出部での検出結果に基づいて演算し、制御情報生成部５０に出力する処理を繰り返し実行する。この位置情報がハンドル制御情報となり、ドライブゲームのゲームプログラム５５に送信され、操舵角制御が実行される。【００３７】
また、指置き検出部５１、指面積検出部５２、指位置検出部５３における処理と並行して、指離れ検出部５４では、指紋センサ１１に置かれていた指が離れたか否かを検出する指離れ検出処理が所定時間間隔で繰り返し実行され、その検出結果が制御情報生成部５０に出力される。制御情報生成部５０では、指置き検出部からの「指離れあり」という検出結果が得られた場合に、ブレーキ制御情報をゲームプログラム５５に出力し、制止制御が実行される。【００３８】
なお、図３における機能ブロックである指置き検出部５１、指面積検出部５２、指位置検出部５３、指離れ検出部５４、制御情報生成部５０はハードウェアであるＣＰＵ２１及び各プログラムにより実現される。【００３９】
次に、図４を参照して、指置き検出部５１において実行される指置き検出処理について説明する。指置き検出処理は、指紋センサ１１上に指が置かれたか否かを検出するものであり、所定の時間間隔で処理が繰り返し実行される。また、指置きの検出は、後述する指の接触面積の検出や指の位置検出に用いるため、指紋センサ１１を小領域に分割した各領域（図６参照）ごとにも並行して行われる。【００４０】
指置き検出処理を開始すると、まず、基準となる画像の濃度値を取得する（Ｓ１）。基準画像としては、例えば、指が置かれていない状態の指紋センサ１１の濃度値を予め不揮発メモリ３０に記憶しておき、この値を取得することができる。次に、指紋センサ１１上の入力画像の濃度値を取得する（Ｓ３）。そして、Ｓ１で取得した基準画像の濃度値と入力画像の濃度値の差を算出する（Ｓ５）。次に、算出された濃度値の差が、予め定めた閾値Ａ以上であるか否かを判断する（Ｓ７）。ここで、閾値Ａは、指紋センサ１１や携帯電話機１によって異なる値が用いられるが、例えば、２５６階調での濃度値の場合に「５０」等を用いることができる。【００４１】
濃度値の差が閾値Ａ以上でなければ（Ｓ７：ＮＯ）、Ｓ３に戻り、再び指紋センサ１１上の入力画像の濃度値を取得する。濃度値の差が閾値Ａ以上であれば（Ｓ７：ＹＥＳ）、指置きありを出力し（Ｓ９）、ＲＡＭ２２の指置き検出結果を記憶するエリアに記憶する。そして、処理を終了する。【００４２】
なお、上記処理では、基準画像の濃度値と入力画像の濃度値との差を算出し、この差の値と閾値を比較したが、基準画像を用いず、入力画像の濃度値そのものを閾値と比較するように構成してもよい。【００４３】
次に、図５を参照して、指離れ検出部５４で実行される指離れ検出処理について説明する。指離れ検出処理は、すでに指紋センサ１１に置かれていた指が指紋センサ１１から離されたか否かを検出するものであり、所定の時間間隔で処理が繰り返し実行される。【００４４】
指離れ検出処理を開始すると、まず、基準となる画像の濃度値を取得する（Ｓ１１）。基準画像としては、例えば、指が置かれていない状態の指紋センサ１１の濃度値を予め不揮発メモリ３０に記憶しておき、この値を取得することができる。次に、指紋センサ１１上の入力画像の濃度値を取得する（Ｓ１３）。そして、Ｓ１１で取得した基準画像の濃度値と入力画像の濃度値の差を算出する（Ｓ１５）。次に、算出された濃度値の差が、予め定めた閾値Ｂ以下であるか否かを判断する（Ｓ１７）。ここで、閾値Ｂは、指紋センサ１１や携帯電話機１によって異なる値が用いられるが、例えば、２５６階調での濃度値の場合に「７０」等を用いることができる。【００４５】
濃度値の差が閾値Ｂ以下でなければ（Ｓ７：ＮＯ）、Ｓ１３に戻り、再び指紋センサ１１上の入力画像の濃度値を取得する。濃度値の差が閾値Ｂ以下であれば（Ｓ１７：ＹＥＳ）、指離れありを出力し（Ｓ１９）、ＲＡＭ２２の指離れ検出結果を記憶するエリアに記憶する。そして、処理を終了する。【００４６】
なお、上記処理では、基準画像の濃度値と入力画像の濃度値との差を算出し、この差の値と閾値を比較したが、指置き検出処理の場合と同様、基準画像を用いず、入力画像の濃度値そのものを閾値と比較するように構成してもよい。【００４７】
次に、図６及び図７を参照して、指面積検出部５２で行なわれる指面積検出処理について説明する。図６に示すように、本実施形態では、ライン型の指紋センサ１１を３つの小領域である左領域６１、中領域６２、右領域６３に分けており、各小領域の面積値を１として算出する。そして、各小領域において前述の指置き検出処理及び指離れ検出処理が並列に実行され、これをその小領域の状態として取得し、この取得結果によって指の接触面積を算出している。なお、指紋センサ１１上で分割する小領域の数は、３個に限られるものではなく、例えば５個や７個等に分割してもよい。小領域の数を増やせばより詳細な検出結果が得られ、複雑な制御情報の生成を実行することも可能になる。また、本実施形態においては、ライン型の指紋センサ１１の場合を想定しているが、前述したように、使用する指紋センサは、指紋画像全体を一度に取得できる平面型のセンサ（エリアセンサ）であってもよい。エリアセンサの場合には、例えば、上下左右の４領域や、縦３×横３の９領域に分割して各小領域において指置き検出処理及び指離れ検出処理を実行し、指面積の算出を行なうようにするとよい。【００４８】
また、これらの小領域における指の状態取得は、図４及び図５のフローチャートにおいて、濃度値の取得処理（図４のＳ３・Ｓ５、図５のＳ１３・Ｓ１５）とその濃度値に基づいた判定処理（閾値との比較：図４のＳ７、図５のＳ１７）をループ化してシーケンシャルに逐次処理してもよいし、処理をパイプライン化して並列処理してもよい。【００４９】
図７に示すように、指面積検出処理を開始すると、まず、各小領域の状態を取得する（Ｓ２１）。次に、左領域６１に指置きありか否かを判断する（Ｓ２３）。左領域６１に指置きが検出されている場合には（Ｓ２３：ＹＥＳ）、さらに、中領域６２に指置きありか否かを判断する（Ｓ２５）。中領域６２に指置きが検出されていない場合には（Ｓ２５：ＮＯ）、左領域６１のみに指が置かれているので、指の接触面積は１となる。そこで、指面積値として１を出力し、ＲＡＭ２２の指面積値を記憶するエリアに記憶する（Ｓ２７）。そして、Ｓ２１に戻る。【００５０】
中領域６２に指置きが検出されている場合には（Ｓ２５：ＹＥＳ）、さらに右領域６３に指置きありか否かを判断する（Ｓ２９）。右領域６３に指置きが検出されていない場合には（Ｓ２９：ＮＯ）、左領域６１と中領域６２とに指が置かれているので、指の接触面積は２となる。そこで、指面積値として２を出力し、ＲＡＭ２２の指面積値を記憶するエリアに記憶する（Ｓ３０）。そして、Ｓ２１に戻る。【００５１】
右領域６３に指置きが検出されている場合には（Ｓ２９：ＹＥＳ）、すべての領域に指が置かれているので、指の接触面積は３となる。そこで、指面積値として３を出力し、ＲＡＭ２２の指面積値を記憶するエリアに記憶する（Ｓ３１）。そして、Ｓ２１に戻る。【００５２】
一方、Ｓ２３で左領域６１に指置きが検出されなかった場合には（Ｓ２３：ＮＯ）、次に、中領域６２に指置きありか否かを判断する（Ｓ３３）。中領域６２に指置きが検出されていない場合には（Ｓ３３：ＮＯ）、指紋センサ１１全体には指置きが検出されているにもかかわらず、左領域６１にも中領域６２にも指置きが検出されていないので、右領域６３にのみ指が置かれていることになり、指の接触面積は１となる。そこで、指面積値として１を出力し、ＲＡＭ２２の指面積値を記憶するエリアに記憶する（Ｓ３５）。そして、Ｓ２１に戻る。【００５３】
中領域６２に指置きが検出されている場合には（Ｓ３３：ＹＥＳ）、さらに右領域６３に指置きありか否かを判断する（Ｓ３７）。右領域６３に指置きが検出されていない場合には（Ｓ３７：ＮＯ）、中領域６２のみに指が置かれているので、指の接触面積は１となる。そこで、指面積値として１を出力し、ＲＡＭ２２の指面積値を記憶するエリアに記憶する（Ｓ３５）。そして、Ｓ２１に戻る。【００５４】
右領域６３に指置きが検出されている場合には（Ｓ３７：ＹＥＳ）、中領域６２と右領域６３とに指が置かれているので、指の接触面積は２となる。そこで、指面積値として２を出力し、ＲＡＭ２２の指面積値を記憶するエリアに記憶する（Ｓ３９）。そして、Ｓ２１に戻る。【００５５】
以上の処理を繰り返して実行することにより、指紋センサ１１上に置かれた指の接触面積を逐次算出することができる。そして、算出結果は、ＲＡＭ２２の指面積値を記憶するエリアに記憶されるので、後述の制御情報生成処理において読み出され、制御情報の生成を行なう基情報として利用される。【００５６】
次に、図８を参照して、指位置検出部５３で行なわれる指位置検出処理について説明する。指位置検出処理では、指面積検出処理と同様に、指紋センサ１１を図６に示すような３つの小領域である左領域６１、中領域６２、右領域６３に分け、各小領域において並列に実行されている指置き検出処理及び指離れ検出処理の検出結果をその小領域の状態として取得し、この取得結果によって現在の指の位置を検出している。なお、指面積検出処理の場合と同様、指紋センサ１１上で分割する小領域の数は、３個に限られるものではなく、また、エリアセンサを用いて４領域や９領域に分割して指位置検出を行なってもよい。【００５７】
図８に示すように、指位置検出処理が開始されると、まず、各小領域の状態を取得する（Ｓ４１）。次に、左領域６１に指置きありか否かを判断する（Ｓ４３）。左領域６１に指置きが検出されている場合には（Ｓ４３：ＹＥＳ）、さらに、中領域６２に指置きありか否かを判断する（Ｓ４５）。中領域６２に指置きが検出されていない場合には（Ｓ４５：ＮＯ）、左領域６１のみに指が置かれているので、指の位置は左端となる。そこで、指位置として左端を出力し、ＲＡＭ２２の指位置を記憶するエリアに記憶する（Ｓ４７）。そして、Ｓ４１に戻る。【００５８】
中領域６２に指置きが検出されている場合には（Ｓ４５：ＹＥＳ）、さらに右領域６３に指置きありか否かを判断する（Ｓ４９）。右領域６３に指置きが検出されていない場合には（Ｓ４９：ＮＯ）、左領域６１と中領域６２とに指が置かれているので、指の位置は中央より左よりとなる。そこで、指位置として左を出力し、ＲＡＭ２２の指位置を記憶するエリアに記憶する（Ｓ５０）。そして、Ｓ４１に戻る。【００５９】
右領域６３に指置きが検出されている場合には（Ｓ４９：ＹＥＳ）、すべての小領域に指が置かれているので、指はほぼ中央に位置している。そこで、指位置として中央を出力し、ＲＡＭ２２に記憶する（Ｓ５１）。そして、Ｓ４１に戻る。【００６０】
一方、Ｓ４３で左領域６１に指置きが検出されなかった場合には（Ｓ４３：ＮＯ）、次に、中領域６２に指置きありか否かを判断する（Ｓ５３）。中領域６２に指置きが検出されていない場合には（Ｓ５３：ＮＯ）、指紋センサ１１全体には指置きが検出されているにもかかわらず、左領域６１にも中領域６２にも指置きが検出されていないので、右領域６３にのみ指が置かれていることになり、指の位置は右端となる。そこで、指位置として右端を出力し、ＲＡＭ２２の指位置を記憶するエリアに記憶する（Ｓ５５）。そして、Ｓ４１に戻る。【００６１】
中領域６２に指置きが検出されている場合には（Ｓ５３：ＹＥＳ）、さらに右領域６３に指置きありか否かを判断する（Ｓ５７）。右領域６３に指置きが検出されている場合には（Ｓ５７：ＹＥＳ）、中領域６２と右領域６３とに指が置かれているので、指の位置は中央より右よりとなる。そこで、指位置として右を出力し、ＲＡＭ２２の指位置を記憶するエリアに記憶する（Ｓ５９）。そして、Ｓ４１に戻る。【００６２】
右領域６３に指置きが検出されていない場合には（Ｓ５７：ＮＯ）、中領域６２のみに指が置かれているので、指の位置は中央となる。そこで、指位置として中央を出力し、ＲＡＭ２２の指位置を記憶するエリアに記憶する（Ｓ５１）。そして、Ｓ４１に戻る。【００６３】
以上の処理を繰り返して実行することにより、逐次、指紋センサ１１上に置かれた指の位置を検出することができる。また、領域の分割数を増やした場合には、より詳細な位置情報を得ることができる。そして、検出結果は、ＲＡＭ２２の指位置を記憶するエリアに記憶されるので、後述の制御情報生成処理において読み出され、制御情報の生成を行なう基情報として利用される。【００６４】
次に、図９を参照して、制御情報生成部５０で行なう制御情報生成処理について説明する。制御情報生成処理は、指紋センサ１１に置かれた指の状態に関する情報を取得して、それに基づいてドライブゲームプログラムを制御するためのアクセル制御情報、ハンドル制御情報、ブレーキ制御情報を出力するものである。【００６５】
まず、図９に示すように、指紋センサ１１全体の指置き検出結果を取得する（Ｓ６１）。次に、取得した指置き検出結果が、指置きありか否かを判断する（Ｓ６３）。指置きありでなければ（Ｓ６３：ＮＯ）、Ｓ６１に戻り、再度指置き検出結果を取得する。【００６６】
指置きありの場合には（Ｓ６３：ＹＥＳ）、指面積検出処理で出力され、ＲＡＭ２２に記憶されている最新の指面積値を取得する（Ｓ６５）。そして、得られた指面積値に基づいてアクセス制御情報をゲームプログラムに出力する（Ｓ６７）。指面積値が大きければアクセルを強く踏む情報が出力される。【００６７】
次に、指位置検出処理で出力され、ＲＡＭ２２に記憶されている最新の指位置情報を取得する（Ｓ６９）。そして、得られた指位置に基づいてハンドル制御情報をゲームプログラムに出力する（Ｓ７１）。指の位置に基づいて、操舵角を決定する情報が出力される。【００６８】
次に、指離れ検出結果を取得する（Ｓ７３）。そして、取得した指離れ検出結果が、指離れありか否かを判断する（Ｓ７５）。指離れありでなければ（Ｓ７５：ＮＯ）、ドライブゲームを継続すると判断して、Ｓ６５に戻り、再度指面積値を取得して、ゲームプログラムへの制御情報の生成を行う。【００６９】
指離れありの場合は（Ｓ７５：ＹＥＳ）、ドライブを停止するためのブレーキ制御情報をゲームプログラムに出力する（Ｓ７７）。以上の処理により、指紋センサ１１上に置かれた指の状態（指が置かれたか、離れたか、どの位置にあるか、どの程度接触しているか）の検出結果に基づき、ゲームの進行を制御する情報を生成し、ゲームの操作を行なうことができる。【００７０】
ところで、上記第一実施形態における指面積検出処理及び指位置検出処理においては、指の面積値及び指の位置は個々の検出結果が離散的な値として出力されるが、連続量として指接触面積や指の位置を出力することも可能である。上述のようにドライブゲーム等、アナログ的な連続した制御情報を生成したい場合には特に好適に用いることができる。このような構成を取ることにより、ジョイスティックなどの特別なアナログ入力デバイスによることなく、連続情報による制御が実行できるものである。そこで、このような連続量の出力を行なう第二実施形態について以下に説明する。第二実施形態の構成は、第一実施形態と同様であるので、その説明を援用し、制御処理についても第一実施形態と異なる指面積検出処理及び指位置検出処理についてのみ図１０〜図１２を参照して説明し、その他の処理については第一実施形態の説明を援用する。図１０は、第二実施形態における指紋センサ１１の領域分割の模式図である。図１１は、第二実施形態における指面積検出処理のフローチャートである。図１２は、第二実施形態における指位置検出処理のフローチャートである。【００７１】
図１０に示すように、第二実施形態においては、ライン型の指紋センサ１１を２つの小領域である左領域７１と右領域７２に分割して、各小領域において指紋画像の濃度値を取得し、それぞれの領域で２個の閾値（本実施形態では、左領域７１の閾値ＴＨ１が１５０、ＴＨ２が７０、右領域７２の閾値ＴＨ３が１５０、ＴＨ４が７０）と濃度値とを比較することにより指の状態を判定して、指の接触面積を算出したり、指の位置を判定したりしている。このように、小領域ごとの状態を判定する際に、濃度値を複数の閾値と比較し、その比較結果を用いることで、連続量の出力が可能になる。【００７２】
まず、図１１を参照して、連続量として指の接触面積を出力する指面積検出処理について説明する。まず、各小領域の指紋画像の濃度値を取得する（Ｓ８１）。次に、取得した左領域７１の濃度値が、閾値ＴＨ１（１５０）以上であるか否かを判断する（Ｓ８３）。閾値ＴＨ１以上ということは、指紋画像の濃度が高い、すなわち、左領域７１内に指がしっかり置かれている状態であることを示している。閾値ＴＨ１以上であれば（Ｓ８３：ＹＥＳ）、次に、右領域７２についても、濃度値がＴＨ３（１５０）以上であるかを判断する（Ｓ８５）。濃度値がＴＨ３以上であれば（Ｓ８５：ＹＥＳ）、指紋センサ１１上の全体に指がしっかり置かれている状態であるから、指面積値として「４」を出力し、ＲＡＭ２２の指面積値を記憶するエリアに記憶する（Ｓ８７）。そして、Ｓ８１に戻り、再び各小領域の画像を取得する。【００７３】
左領域７１の濃度値がＴＨ１以上であるが（Ｓ８３：ＹＥＳ）、右領域７２の濃度値はＴＨ３に達していない場合（Ｓ８５：ＮＯ）、さらに、右領域７２の濃度値がＴＨ４（７０）以上か否かを判断する（Ｓ８９）。濃度値がＴＨ３未満でもＴＨ４以上であれば、指が置きかかっている状態、または、離れかかっている状態であり、ある程度は接触している状態である。そこで、ＴＨ４以上であれば（Ｓ８９：ＹＥＳ）、指面積値として３を出力し、ＲＡＭ２２に記憶する（Ｓ９１）。そして、Ｓ８１に戻り、各小領域の画像を取得する。右領域７２の濃度値がＴＨ４に達していなければ（Ｓ８９：ＮＯ）、右領域７２には指が触れていないと考えられるので指面積値として２を出力し、ＲＡＭ２２の指面積値を記憶するエリアに記憶する（Ｓ９３）。そして、Ｓ８１に戻り、再び各小領域の画像を取得する。【００７４】
左領域７１の濃度値がＴＨ１に達していない場合には（Ｓ８３：ＮＯ）、次に、左領域７１の濃度値がＴＨ２（７０）以上であるか否かを判断する（Ｓ９５）。濃度値がＴＨ１未満でもＴＨ２以上であれば、指が置きかかっている状態、又は、離れかかっている状態で、ある程度接触している状態である。そこで、ＴＨ２以上であれば（Ｓ９５：ＹＥＳ）、さらに、右領域７２について、濃度値がＴＨ３（１５０）以上であるかを判断する（Ｓ９７）。濃度値がＴＨ３以上であれば（Ｓ９７：ＹＥＳ）、左領域７１にはわずかに、右領域７２にはしっかりと、指が接触している状態であるので、指面積値として３を出力し、ＲＡＭ２２の指面積値を記憶するエリアに記憶する（Ｓ９１）。そして、Ｓ８１に戻り、再び各小領域の画像を取得する。【００７５】
左領域７１の濃度値がＴＨ１未満で（Ｓ８３：ＮＯ）、ＴＨ２以上であり（Ｓ９５：ＹＥＳ）、右領域７２の濃度値がＴＨ３未満の場合は（Ｓ９７：ＮＯ）、さらに、右領域７２の濃度値がＴＨ４以上か否かを判断する（Ｓ９９）。右領域７２の濃度値がＴＨ４以上であれば（Ｓ９９：ＹＥＳ）、左領域７１にも右領域７２にもわずかに指が接触している状態であるので、指面積値として２を出力し、ＲＡＭ２２に記憶する（Ｓ１０１）。そして、Ｓ８１に戻り、各小領域の画像を取得する。右領域７２の濃度値がＴＨ４未満である場合には（Ｓ９９：ＮＯ）、右領域７２には指が接触していないので、指面積値として１を出力し、ＲＡＭ２２の指面積値を記憶するエリアに記憶する（Ｓ１０３）。そして、Ｓ８１に戻り、再び各小領域の画像を取得する。【００７６】
左領域７１の濃度値がＴＨ２未満の場合には（Ｓ９５：ＮＯ）、左領域７１には指が接触していないので、次に、右領域７２の濃度値について判定を行う。まず右領域７２の濃度値が閾値ＴＨ３以上か否かを判断し（Ｓ１０５）、ＴＨ３以上であれば（Ｓ１０５：ＹＥＳ）、左領域７１には接触していないが、右領域７２には指がしっかり触れている状態なので、指面積値として２を出力し、ＲＡＭ２２の指面積値を記憶するエリアに記憶する（Ｓ１０１）。そして、Ｓ８１に戻り、再び各小領域の画像を取得する。【００７７】
左領域７１の濃度値がＴＨ２未満で（Ｓ９５：ＮＯ）、右領域７２の濃度値がＴＨ３未満の場合には（Ｓ１０５：ＮＯ）、さらに、右領域７２の濃度値がＴＨ４以上であるか否かを判断する（Ｓ１０７）。ＴＨ４以上であれば（Ｓ１０７：ＹＥＳ）、左領域７１には接触していないが、右領域７２には指がわずかに触れている状態であるので、指面積値として１を出力し、ＲＡＭ２２の指面積値を記憶するエリアに記憶する（Ｓ１０９）。そして、Ｓ８１に戻り、再び各小領域の画像を取得する。【００７８】
左領域７１の濃度値がＴＨ２未満で（Ｓ９５：ＮＯ）右領域７２の濃度値もＴＨ４未満の場合には（Ｓ１０５：ＮＯ、Ｓ１０７：ＮＯ）、指はほとんど指紋センサ１１に触れていないと考えられるので、指面積値として０を出力し、ＲＡＭ２２の指面積値を記憶するエリアに記憶する（Ｓ１１１）。そして、Ｓ８１に戻り、再び各小領域の画像を取得する。【００７９】
以上の指面積検出処理により、面積値は０〜４の値で出力される。この指面積検出処理を逐次繰り返すことにより、指の接触の度合いが連続値で出力されるので、前述の制御情報生成処理において、この面積値に基づいてアクセル制御情報を生成すれば、アクセルの踏み込み量を徐々に増やす、減らす等の滑らかな制御が可能となる。また、閾値の数を更に増やせば、さらに多段階の面積値を出力することができ，滑らかな制御が可能となる。【００８０】
なお、上記指面積検出処理では、各小領域について閾値を複数設けることにより、指面積の連続的な値を得ているが、各小領域の面積のうち指の置かれている面積の割合を合計することにより、指面積を得ることもできる。たとえば、左領域７１全体の面積が１００であり、そのうち指の置かれている面積Ａが５０であるとする。そして、右領域７２の面積が１００であり、そのうち指の置かれている面積Ｂが３０であるとする。この場合の指面積値Ｓは、Ｓ＝Ａ＋Ｂにより求められ、５０＋３０＝８０となる。このような数式により指面積を逐次求めていくことにより、連続した指面積値を求めることができる。【００８１】
次に、図１２を参照して、連続量として指の位置を検出する指位置検出処理について説明する。まず、各小領域の指紋画像の濃度値を取得する（Ｓ１２１）。次に、取得した左領域７１の濃度値が、閾値ＴＨ１（１５０）以上であるか否かを判断する（Ｓ１２３）。閾値ＴＨ１以上ということは、左領域７１内に指がしっかり置かれている状態であることを示している。閾値ＴＨ１以上であれば（Ｓ１２３：ＹＥＳ）、次に、右領域７２についても、濃度値がＴＨ３（１５０）以上であるかを判断する（Ｓ１２５）。濃度値がＴＨ３以上であれば（Ｓ１２５：ＹＥＳ）、指紋センサ１１上の全体に指が偏らずにしっかり置かれている状態であるから、指の位置として「中央」を出力し、ＲＡＭ２２に記憶する（Ｓ１２７）。そして、Ｓ１２１に戻り、各小領域の画像を取得する。【００８２】
左領域７１の濃度値がＴＨ１以上であるが（Ｓ１２３：ＹＥＳ）、右領域７２の濃度値はＴＨ３に達していない場合（Ｓ１２５：ＮＯ）、さらに、右領域７２の濃度値がＴＨ４（７０）以上か否かを判断する（Ｓ１２９）。濃度値がＴＨ３未満でもＴＨ４以上であれば、指が置きかかっている状態、又は、離れかかっている状態で、ある程度接触している状態である。そこで、ＴＨ４以上であれば（Ｓ１２９：ＹＥＳ）、指は左側にやや偏っている状態であると判断して、指の位置として「左」を出力し、ＲＡＭ２２に記憶する（Ｓ１３１）。そして、Ｓ１２１に戻り、各小領域の画像を取得する。右領域７２の濃度値がＴＨ４に達していなければ（Ｓ１２９：ＮＯ）、右領域７２には指がほとんど触れておらず、左側に偏っていると考えられるので、指の位置として「左端」を出力し、ＲＡＭ２２に記憶する（Ｓ１３３）。そして、Ｓ１２１に戻り、各小領域の画像を取得する。【００８３】
左領域７１の濃度値がＴＨ１に達していない場合には（Ｓ１２３：ＮＯ）、次に、左領域７１の濃度値がＴＨ２（７０）以上であるか否かを判断する（Ｓ１３５）。濃度値がＴＨ１未満でもＴＨ２以上であれば、指が置きかかっているか離れかかっているかで、ある程度接触している状態である。そこで、ＴＨ２以上であれば（Ｓ１３５：ＹＥＳ）、さらに、右領域７２について、濃度値がＴＨ３（１５０）以上であるかを判断する（Ｓ１３７）。濃度値がＴＨ３以上であれば（Ｓ１３７：ＹＥＳ）、左領域７１にはわずかに、右領域７２にはしっかりと、指が接触している状態であるので、指が右側に偏っていると考えられるから、指の位置として「右」を出力し、ＲＡＭ２２に記憶する（Ｓ１３９）。そして、Ｓ１２１に戻り、各小領域の画像を取得する。【００８４】
左領域７１の濃度値がＴＨ１未満で（Ｓ１２３：ＮＯ）、ＴＨ２以上であり（Ｓ１３５：ＹＥＳ）、右領域７２の濃度値がＴＨ３未満の場合は（Ｓ１３７：ＮＯ）、さらに、右領域７２の濃度値がＴＨ４以上か否かを判断する（Ｓ１４１）。右領域７２の濃度値がＴＨ４以上であれば（Ｓ１４１：ＹＥＳ）、左領域７１にも右領域７２にも偏りなくどちらにもわずかに指が接触している状態であるので、指の位置としては「中央」を出力し、ＲＡＭ２２に記憶する（Ｓ１４３）。そして、Ｓ１２１に戻り、各小領域の画像を取得する。右領域７２の濃度値がＴＨ４未満である場合には（Ｓ１４１：ＮＯ）、右領域７２には指が接触していないので、指が左に偏っている状態であるから、指の位置として「左」を出力し、ＲＡＭ２２に記憶する（Ｓ１４５）。そして、Ｓ１２１に戻り、各小領域の画像を取得する。【００８５】
左領域７１の濃度値がＴＨ２未満の場合には（Ｓ１３５：ＮＯ）、左領域７１には指が接触していないので、次に、右領域７２の濃度値について判定を行う。まず右領域７２の濃度値が閾値ＴＨ３以上か否かを判断し（Ｓ１４７）、ＴＨ３以上であれば（Ｓ１４７：ＹＥＳ）、左領域７１には接触していないが、右領域７２には指がしっかり触れている状態なので、指は右側にかなり偏っているから、指の位置として「右端」を出力し、ＲＡＭ２２に記憶する（Ｓ１４９）。そして、Ｓ１２１に戻り、各小領域の画像を取得する。【００８６】
左領域７１の濃度値がＴＨ２未満で（Ｓ１３５：ＮＯ）、右領域７２の濃度値がＴＨ３未満の場合には（Ｓ１４７：ＮＯ）、さらに、右領域７２の濃度値がＴＨ４以上であるか否かを判断する（Ｓ１５１）。ＴＨ４以上であれば（Ｓ１５１：ＹＥＳ）、左領域７１には接触していないが、右領域７２には指がわずかに触れている状態であるので、指の位置として「右」を出力し、ＲＡＭ２２に記憶する（Ｓ１５３）。そして、Ｓ１２１に戻り、各小領域の画像を取得する。【００８７】
左領域７１の濃度値がＴＨ２未満で（Ｓ１３５：ＮＯ）右領域７２の濃度値もＴＨ４未満の場合には（Ｓ１４７：ＮＯ、Ｓ１５１：ＮＯ）、指はほとんど指紋センサ１１に触れていないが、指紋センサ１１全体では指置きありとされているので、指の位置としては「中央」を出力し、ＲＡＭ２２に記憶する（Ｓ１５５）。そして、Ｓ１２１に戻り、各小領域の画像を取得する。【００８８】
以上の指位置検出処理により、指の位置は左端、左、中央、右、右端の５段階で出力される。この指面積検出処理を逐次繰り返すことにより、指の位置が連続値で出力されるので、前述の制御情報生成処理において、この指位置に基づいてハンドル制御情報を生成すれば、ハンドルを切る角度を徐々に増やす、減らす等の滑らかな制御が可能となる。また、閾値の数を更に増やせば、さらに多段階で指位置を検出することができ、詳細な制御情報の生成が可能となる。【００８９】
なお、上記の指位置検出処理では、各小領域について閾値を複数設けることにより、指の位置の連続的情報を得ているが、各小領域の面積のうち指の置かれている面積の割合を用いることにより、指の位置を得ることもできる。この場合、中央を０、左を負の値、右を正の値として表現する。たとえば、左領域７１全体の面積が１００であり、そのうち指の置かれている面積Ａが５０であるとする。そして、右領域７２の面積が１００であり、そのうち指の置かれている面積Ｂが３０であるとする。この場合の指位置Ｘは、Ｘ＝Ｂ−Ａにより求められ、３０−５０＝−２０となり、中央よりやや（２割）左よりとなる。このような数式により逐次指位置を求めていくことにより、連続した指位置を検出することができる。【００９０】
ところで、上記のドライブゲームの制御のための操作入力処理において、制御情報生成部５０がハンドル制御情報を生成する基になる検出結果として、指位置検出部５３からの指紋センサ１１上の指の位置の情報を用いたが、指の位置の情報に代えて、指の動きの情報を用いることもできる。そこで、図３に示す指位置検出部に代えて指動き検出部（図示外）を設けた第三実施形態について以下に説明する。第三実施形態の構成及び指位置検出に代えて指動き検出を行う以外の処理については第一実施形態と同様であるので、その説明を援用する。そして、指動き検出処理については図１３を参照して説明する。図１３は、指動き検出処理の流れを示すフローチャートである。【００９１】
図１３に示すように、指動き検出処理では、ライン型の指紋センサ１１の３つに分割された左・中・右の小領域６１〜６３（図６参照）について、まず、各小領域の状態を取得する（Ｓ１６１）。状態の取得は、第一実施形態と同様に、各小領域で並行して実行されている指置き検出処理の出力結果を取得することにより行われる。【００９２】
次に、取得した出力結果が、全領域について指置きありか否かを判断する（Ｓ１６３）。全領域について指置きありの場合には（Ｓ１６３：ＹＥＳ）、指動きを判断するための基準位置をＡとし、ＲＡＭ２２に記憶する（Ｓ１６５）。この基準位置は２回分記憶しておき、後述する処理の中で前回基準位置と今回基準位置との比較により、指の動きを検出する。次に、前回の基準位置をＲＡＭ２２から取り出して、それによって動きを判断する（Ｓ１６７〜Ｓ１７９）。初回の場合は、前回基準位置が記憶されていないので（Ｓ１６７：ＮＯ，Ｓ１７１：ＮＯ，Ｓ１７５：ＮＯ）、「動きなし」を出力し（Ｓ１７９）、Ｓ１６１に戻る。【００９３】
２回目以降の処理において、全領域について指置きありの場合（Ｓ１６３：ＹＥＳ）、基準位置をＡとし（Ｓ１６５）、前回基準位置がＡか否かを判断する（Ｓ１６７）。前回基準位置がＡの場合は（Ｓ１６７：ＹＥＳ）、今回と前回の基準位置が同一であるから、「動きなし」を出力し（Ｓ１６９）、Ｓ１６１に戻る。【００９４】
前回基準位置がＡでない場合は（Ｓ１６７：ＮＯ）、前回基準位置がＢであるか否かを判断する（Ｓ１７１）。なお、後述するが、基準位置Ｂは、左領域６１と中領域６２の両方に指置きありと判断された場合に（Ｓ１８１：ＹＥＳ）出力される（Ｓ１８３）。前回基準位置がＢの場合には（Ｓ１７１：ＹＥＳ）、左から中央へ指の位置が動いていることになるので、「右移動」を出力し（Ｓ１７３）、Ｓ１６１に戻る。【００９５】
前回基準位置がＢでない場合には（Ｓ１７１：ＮＯ）、前回基準位置がＣであるか否かを判断する（Ｓ１７５）。なお、基準位置Ｃは、右領域６３と中領域６２の両方に指置きありと判断された場合に（Ｓ１９９：ＹＥＳ）、出力される（Ｓ２０１）。前回基準位置がＣの場合には（Ｓ１７５：ＹＥＳ）、右から中央へ指の位置が動いていることになるので、「左移動」を出力し（Ｓ１７７）、Ｓ１６１に戻る。【００９６】
前回基準位置がＣでない場合は（Ｓ１７５：ＮＯ）、前回の基準位置が記憶されていないか（初回処理の場合）、前回の基準位置はＤであるから、この場合には「動きなし」を出力し（Ｓ１７９）、Ｓ１６１に戻る。【００９７】
全領域について指置きありでない場合には（Ｓ１６３：ＮＯ）、次に、左領域６１と中領域６２の両方の領域について指置きありであるか否かを判断する（Ｓ１８１）。左と中の両小領域について指置きありの場合には（Ｓ１８１：ＹＥＳ）、指動きを判断するための基準位置をＢとしてＲＡＭ２２に記憶する（Ｓ１８３）。次に、前回基準位置がＡか否かを判断する（Ｓ１８５）。前回基準位置がＡの場合は（Ｓ１８５：ＹＥＳ）、中央から左へ指の位置が動いていることになるので、「左移動」を出力し（Ｓ１８７）、Ｓ１６１に戻る。【００９８】
前回基準位置がＡでない場合は（Ｓ１８５：ＮＯ）、前回基準位置がＢであるか否かを判断する（Ｓ１８９）。前回基準位置がＢの場合には（Ｓ１８９：ＹＥＳ）、今回と前回の基準位置が同一であるから、「動きなし」を出力し（Ｓ１９１）、Ｓ１６１に戻る。【００９９】
前回基準位置がＢでない場合には（Ｓ１８９：ＮＯ）、前回基準位置がＣであるか否かを判断する（Ｓ１９３）。前回基準位置がＣの場合には（Ｓ１９３：ＹＥＳ）、右から左へ指の位置が大きく変わっていることになるので、「左大移動」を出力し（Ｓ１９５）、Ｓ１６１に戻る。【０１００】
前回基準位置がＣでない場合は（Ｓ１９３：ＮＯ）、前回の基準位置が記憶されていないか（初回処理の場合）、前回の基準位置はＤであるから、この場合には「動きなし」を出力し（Ｓ１９７）、Ｓ１６１に戻る。【０１０１】
全領域が指置きありでなく（Ｓ１６３：ＮＯ）、左・中の両小領域について指置きありでもない場合には（Ｓ１８１：ＮＯ）、右領域６３と中領域６２の両方の領域について指置きありであるか否かを判断する（Ｓ１９９）。右と中の両小領域について指置きありの場合には（Ｓ１９９：ＹＥＳ）、指動きを判断するための基準位置をＣとしてＲＡＭ２２に記憶する（Ｓ２０１）。次に、前回基準位置がＡか否かを判断する（Ｓ２０３）。前回基準位置がＡの場合は（Ｓ２０３：ＹＥＳ）、中央から右へ指の位置が動いていることになるので、「右移動」を出力し（Ｓ２０５）、Ｓ１６１に戻る。【０１０２】
前回基準位置がＡでない場合は（Ｓ２０３：ＮＯ）、前回基準位置がＢであるか否かを判断する（Ｓ２０７）。前回基準位置がＢの場合には（Ｓ２０７：ＹＥＳ）、左から右へ指の位置が大きく変わっていることになるので、「右大移動」を出力し（Ｓ２０９）、Ｓ１６１に戻る。【０１０３】
前回基準位置がＢでない場合には（Ｓ２０７：ＮＯ）、前回基準位置がＣであるか否かを判断する（Ｓ２１１）。前回基準位置がＣの場合には（Ｓ２１１：ＹＥＳ）、今回と前回の基準位置が同一であるから、「動きなし」を出力し（Ｓ２１３）、Ｓ１６１に戻る。【０１０４】
前回基準位置がＣでない場合は（Ｓ２１１：ＮＯ）、前回の基準位置が記憶されていないか（初回処理の場合）、前回の基準位置はＤであるから、この場合には「動きなし」を出力し（Ｓ２１７）、Ｓ１６１に戻る。【０１０５】
全領域が指置きありでなく（Ｓ１６３：ＮＯ）、左・中の両小領域について指置きありでなく（Ｓ１８１：ＮＯ）、右・中の両小領域について指置きありでもない場合には（Ｓ１９９：ＮＯ）、その他の場合と分類して基準位置をＤとしてＲＡＭ２２に記憶する（Ｓ２１５）。そして、基準位置がＤの場合には、前回の基準位置にかかわらず、「動きなし」を出力し（Ｓ２１７）、Ｓ１６１に戻る。【０１０６】
以上の指動き検出処理により、指の動きが「左大移動」、「左移動」、「右移動」、「右大移動」、「動きなし」の形で出力されるので、これに基づいて、制御情報生成処理では、「左に大きくハンドルを切る」、「左にハンドルを切る」、「右にハンドルを切る」、「右に大きくハンドルを切る」、「ハンドル操作なし」等のハンドル制御情報を生成してゲームプログラムに出力する。【０１０７】
ところで、上記第三実施形態での指動き検出処理は、離散的出力であるが、前述の第二実施形態と同様に、指置き検出の際の閾値を複数用意したり、指の接触面積の割合を用いたりすることにより、指動き検出についても連続的な出力を得ることができる。以下に、連続的出力を得る指動き検出を実行する場合の第四実施形態について、図１４〜図１９を参照して説明する。図１４は、連続的出力を得るための指動き検出処理のフローチャートである。図１５は、図１４のＳ２２７及びＳ２４３で実行される基準位置Ａの場合のサブルーチンのフローチャートである。図１６は、図１４のＳ２３１で実行される基準位置Ｂの場合のサブルーチンのフローチャートである。図１７は、図１４のＳ２３３及びＳ２４５で実行される基準位置Ｃの場合のサブルーチンのフローチャートである。図１８は、図１４のＳ２３９及びＳ２５３で実行される基準位置Ｄの場合のサブルーチンのフローチャートである。図１９は、図１４のＳ２３９で実行される基準位置Ｅの場合のサブルーチンのフローチャートである。【０１０８】
第四実施形態においては、第二実施形態と同様に、ライン型の指紋センサ１１を２つの小領域である左領域７１と右領域７２に分割して(図１０参照)、各小領域において指紋画像の濃度値を取得し、それぞれの領域で２個の閾値（本実施形態では、左領域７１の閾値ＴＨ１が１５０、ＴＨ２が７０、右領域７２の閾値ＴＨ３が１５０、ＴＨ４が７０）と濃度値とを比較し、指の動きを検出している。【０１０９】
図１４に示すように、指動き検出処理が開始されると、まず、、各小領域の指紋画像の濃度値を取得する（Ｓ２２１）。次に、取得した左領域７１の濃度値が、閾値ＴＨ１（１５０）以上であるか否かを判断する（Ｓ２２３）。閾値ＴＨ１以上ということは、左領域７１内に指がしっかり置かれている状態であることを示している。閾値ＴＨ１以上であれば（Ｓ２２３：ＹＥＳ）、次に、右領域７２についても、濃度値がＴＨ３（１５０）以上であるかを判断する（Ｓ２２５）。濃度値がＴＨ３以上であれば（Ｓ２２５：ＹＥＳ）、指紋センサ１１上の全体に指が偏らずにしっかり置かれている状態であり、指動きを判断するための基準位置をＡとし、前回の基準位置との比較により指の動きを判定する基準位置Ａのサブルーチンに移動する（Ｓ２２７）。ここで、基準位置は、第三実施形態と同様、２回分記憶しておき、前回基準位置と今回基準位置との比較により、指の動きを検出するためのものである。基準位置Ａのサブルーチンが終了すると、Ｓ２２１に戻り、各小領域の画像を取得する。基準位置Ａのサブルーチンについては、図１５を参照して後述する。【０１１０】
左領域７１の濃度値がＴＨ１以上であるが（Ｓ２２３：ＹＥＳ）、右領域７２の濃度値はＴＨ３に達していない場合（Ｓ２２５：ＮＯ）、さらに、右領域７２の濃度値がＴＨ４（７０）以上か否かを判断する（Ｓ２２９）。濃度値がＴＨ３未満でもＴＨ４以上であれば、指が置きかかっている状態、又は、離れかかっている状態で、ある程度接触している状態である。右領域７２の濃度値がＴＨ４に達していなければ（Ｓ２２９：ＮＯ）、右領域７２には指がほとんど触れておらず、左側に偏っていると考えられるので、指動きを判断するための基準位置をＢとし、前回の基準位置との比較により指の動きを判定する基準位置Ｂのサブルーチンに移動する（Ｓ２３１）。基準位置Ｂのサブルーチンが終了すると、Ｓ２２１に戻り、各小領域の画像を取得する。基準位置Ｂのサブルーチンについては、図１６を参照して後述する。【０１１１】
右領域７２の濃度値がＴＨ４以上であれば（Ｓ２２９：ＹＥＳ）、指動きを判断するための基準位置をＣとし、前回の基準位置との比較により指の動きを判定する基準位置Ｃのサブルーチンに移動する（Ｓ２３３）。基準位置Ｃのサブルーチンが終了すると、Ｓ２２１に戻り、各小領域の画像を取得する。基準位置Ｃのサブルーチンについては、図１７を参照して後述する。【０１１２】
左領域７１の濃度値がＴＨ１に達していない場合には（Ｓ２２３：ＮＯ）、次に、左領域７１の濃度値がＴＨ２（７０）以上であるか否かを判断する（Ｓ２３５）。濃度値がＴＨ１未満でもＴＨ２以上であれば、指が置きかかっている状態、又は、離れかかっている状態で、ある程度接触している状態である。そこで、ＴＨ２以上であれば（Ｓ２３５：ＹＥＳ）、さらに、右領域７２について、濃度値がＴＨ３（１５０）以上であるかを判断する（Ｓ２３７）。濃度値がＴＨ３以上であれば（Ｓ２３７：ＹＥＳ）、左領域７１にはわずかに、右領域７２にはしっかりと、指が接触している状態であるので、指が右側に偏っていると考えられるから、指動きを判断するための基準位置をＤとし、前回の基準位置との比較により指の動きを判定する基準位置Ｄのサブルーチンに移動する（Ｓ２３９）。基準位置Ｄのサブルーチンが終了すると、Ｓ２２１に戻り、各小領域の画像を取得する。基準位置Ｄのサブルーチンについては、図１８を参照して後述する。【０１１３】
左領域７１の濃度値がＴＨ１未満で（Ｓ２２３：ＮＯ）、ＴＨ２以上であり（Ｓ２３５：ＹＥＳ）、右領域７２の濃度値がＴＨ３未満の場合は（Ｓ２３７：ＮＯ）、さらに、右領域７２の濃度値がＴＨ４以上か否かを判断する（Ｓ２４１）。右領域７２の濃度値がＴＨ４以上であれば（Ｓ２４１：ＹＥＳ）、左領域７１にも右領域７２にも偏りなくどちらにもわずかに指が接触している状態であるので、指動きを判断するための基準位置をＡとし、前回の基準位置との比較により指の動きを判定する基準位置Ａのサブルーチンに移動する（Ｓ２４３）。基準位置Ａのサブルーチンが終了すると、Ｓ２２１に戻り、各小領域の画像を取得する。【０１１４】
右領域７２の濃度値がＴＨ４未満である場合には（Ｓ２４１：ＮＯ）、右領域７２には指が接触していないので、指が左に偏っている状態であるから、指動きを判断するための基準位置をＣとし、前回の基準位置との比較により指の動きを判定する基準位置Ｃのサブルーチンに移動する（Ｓ２４５）。基準位置Ｃのサブルーチンが終了すると、Ｓ２２１に戻り、各小領域の画像を取得する。【０１１５】
左領域７１の濃度値がＴＨ２未満の場合には（Ｓ２３５：ＮＯ）、左領域７１には指が接触していないので、次に、右領域７２の濃度値について判定を行う。まず右領域７２の濃度値が閾値ＴＨ３以上か否かを判断し（Ｓ２４７）、ＴＨ３以上であれば（Ｓ２４７：ＹＥＳ）、左領域７１には接触していないが、右領域７２には指がしっかり触れている状態なので、指は右側にかなり偏っているから、指動きを判断するための基準位置をＥとし、前回の基準位置との比較により指の動きを判定する基準位置Ｅのサブルーチンに移動する（Ｓ２４９）。基準位置Ｅのサブルーチンが終了すると、Ｓ２２１に戻り、各小領域の画像を取得する。基準位置Ｅのサブルーチンについては、図１９を参照して後述する。【０１１６】
左領域７１の濃度値がＴＨ２未満で（Ｓ２３５：ＮＯ）、右領域７２の濃度値がＴＨ３未満の場合には（Ｓ２４７：ＮＯ）、さらに、右領域７２の濃度値がＴＨ４以上であるか否かを判断する（Ｓ２５１）。ＴＨ４以上であれば（Ｓ２５１：ＹＥＳ）、左領域７１には接触していないが、右領域７２には指がわずかに触れている状態であるので、指動きを判断するための基準位置をＤとし、前回の基準位置との比較により指の動きを判定する基準位置Ｄのサブルーチンに移動する（Ｓ２５３）。基準位置Ｄのサブルーチンが終了すると、Ｓ２２１に戻り、各小領域の画像を取得する。【０１１７】
左領域７１の濃度値がＴＨ２未満で（Ｓ２３５：ＮＯ）右領域７２の濃度値もＴＨ４未満の場合には（Ｓ２４７：ＮＯ、Ｓ２５１：ＮＯ）、その他の場合と分類して基準位置をＦとしてＲＡＭ２２に記憶する（Ｓ２５５）。そして、基準位置がＦの場合には、前回の基準位置にかかわらず、「動きなし」を出力し（Ｓ２５７）、Ｓ２２１に戻り、各小領域の画像を取得する。【０１１８】
次に、図１５を参照して、基準位置Ａとなる場合の指動き判定処理について説明する。サブルーチンの処理が開始されると、まず、指動きを判断するための基準位置をＡとし、ＲＡＭ２２に記憶する（Ｓ２６１）。次に、前回の基準位置をＲＡＭ２２から取り出して、それによって動きを判断する。まず、前回基準位置がＡか否かを判断する（Ｓ２６３）。前回基準位置がＡの場合は（Ｓ２６３：ＹＥＳ）、今回と前回の基準位置が同一であるから、「動きなし」を出力し（Ｓ２６５）、図１４の指動き検出処理のルーチンに戻る。【０１１９】
前回基準位置がＡでない場合は（Ｓ２６３：ＮＯ）、前回基準位置がＢであるか否かを判断する（Ｓ２６７）。基準位置Ｂは、前述のように、左領域７１の濃度値が閾値ＴＨ１以上で、右領域７２の濃度値が閾値ＴＨ４未満である場合に出力されている。従って、前回基準位置がＢの場合には（Ｓ２６７：ＹＥＳ）、「右移動」を出力し（Ｓ２６９）、図１４の指動き検出処理のルーチンに戻る。【０１２０】
前回基準位置がＢでない場合には（Ｓ２６７：ＮＯ）、前回基準位置がＣであるか否かを判断する（Ｓ２７１）。基準位置Ｃは、前述のように、左領域７１の濃度値が閾値ＴＨ１以上で、右領域７２の濃度値が閾値ＴＨ３未満ＴＨ４以上である場合、又は、左領域７２の濃度値が閾値ＴＨ１未満ＴＨ２以上で、右領域７２の濃度値が閾値ＴＨ４未満の場合に出力されている。従って、前回基準位置がＣの場合には（Ｓ２７１：ＹＥＳ）、「右小移動」を出力し（Ｓ２７３）、図１４の指動き検出処理のルーチンに戻る。【０１２１】
前回基準位置がＣでない場合は（Ｓ２７１：ＮＯ）、前回基準位置がＤであるか否かを判断する（Ｓ２７５）。基準位置Ｄは、前述のように、左領域７１の濃度値が閾値ＴＨ１未満ＴＨ２以上で、右領域７２の濃度値が閾値ＴＨ３以上である場合、又は、左領域７２の濃度値が閾値ＴＨ２未満で、右領域７２の濃度値が閾値ＴＨ３未満ＴＨ４以上の場合に出力されている。従って、前回基準位置がＤの場合には（Ｓ２７５：ＹＥＳ）、「左小移動」を出力し（Ｓ２７７）、図１４の指動き検出処理のルーチンに戻る。【０１２２】
前回基準位置がＤでない場合は（Ｓ２７５：ＮＯ）、前回基準位置がＥであるか否かを判断する（Ｓ２７９）。基準位置Ｅは、前述のように、左領域７１の濃度値が閾値ＴＨ２未満で、右領域７２の濃度値が閾値ＴＨ３以上である場合に出力されている。従って、前回基準位置がＥの場合には（Ｓ２７９：ＹＥＳ）、「左移動」を出力し（Ｓ２８１）、図１４の指動き検出処理のルーチンに戻る。【０１２３】
前回基準位置がＥでない場合は（Ｓ２７９：ＮＯ）、前回の基準位置が記憶されていないか（初回処理の場合）、前回の基準位置はＦであるから、この場合には「動きなし」を出力し（Ｓ２８３）、図１４の指動き検出処理のルーチンに戻る。【０１２４】
次に、図１６を参照して、基準位置Ｂとなる場合の指動き判定処理について説明する。サブルーチンの処理が開始されると、まず、指動きを判断するための基準位置をＢとし、ＲＡＭ２２に記憶する（Ｓ２９１）。次に、前回の基準位置をＲＡＭ２２から取り出して、それによって動きを判断する。まず、前回基準位置がＡか否かを判断する（Ｓ２９３）。基準位置Ａは、前述のように、左領域７１の濃度値が閾値ＴＨ１以上で、右領域７２の濃度値が閾値ＴＨ３以上、又は、左領域７１の濃度値が閾値ＴＨ１未満ＴＨ２以上で、右領域７２の濃度値が閾値ＴＨ３未満ＴＨ４以上の場合に出力されている。従って、前回基準位置がＡの場合は（Ｓ２９３：ＹＥＳ）、「左移動」を出力し（Ｓ２９５）、図１４の指動き検出処理のルーチンに戻る。【０１２５】
前回基準位置がＡでない場合は（Ｓ２９３：ＮＯ）、前回基準位置がＢであるか否かを判断する（Ｓ２９７）。前回基準位置がＢの場合には（Ｓ２９７：ＹＥＳ）、今回と前回の基準位置が同一であるから、「動きなし」を出力し（Ｓ２９９）、図１４の指動き検出処理のルーチンに戻る。【０１２６】
前回基準位置がＢでない場合には（Ｓ２９７：ＮＯ）、前回基準位置がＣであるか否かを判断する（Ｓ３０１）。基準位置Ｃは、前述のように、左領域７１の濃度値が閾値ＴＨ１以上で、右領域７２の濃度値が閾値ＴＨ３未満ＴＨ４以上である場合、又は、左領域７２の濃度値が閾値ＴＨ１未満ＴＨ２以上で、右領域７２の濃度値が閾値ＴＨ４未満の場合に出力されている。従って、前回基準位置がＣの場合には（Ｓ３０１：ＹＥＳ）、「左小移動」を出力し（Ｓ３０３）、図１４の指動き検出処理のルーチンに戻る。【０１２７】
前回基準位置がＣでない場合は（Ｓ３０１：ＮＯ）、前回基準位置がＤであるか否かを判断する（Ｓ３０５）。基準位置Ｄは、前述のように、左領域７１の濃度値が閾値ＴＨ１未満ＴＨ２以上で、右領域７２の濃度値が閾値ＴＨ３以上である場合、又は、左領域７２の濃度値が閾値ＴＨ２未満で、右領域７２の濃度値が閾値ＴＨ３未満ＴＨ４以上の場合に出力されている。従って、前回基準位置がＤの場合には（Ｓ３０５：ＹＥＳ）、「左大移動」を出力し（Ｓ３０７）、図１４の指動き検出処理のルーチンに戻る。【０１２８】
前回基準位置がＤでない場合は（Ｓ３０５：ＮＯ）、前回基準位置がＥであるか否かを判断する（Ｓ３０９）。基準位置Ｅは、前述のように、左領域７１の濃度値が閾値ＴＨ２未満で、右領域７２の濃度値が閾値ＴＨ３以上である場合に出力されている。従って、前回基準位置がＥの場合には（Ｓ３０９：ＹＥＳ）、「左大大移動」を出力し（Ｓ３１１）、図１４の指動き検出処理のルーチンに戻る。【０１２９】
前回基準位置がＥでない場合は（Ｓ３０９：ＮＯ）、前回の基準位置が記憶されていないか（初回処理の場合）、前回の基準位置はＦであるから、この場合には「動きなし」を出力し（Ｓ３１３）、図１４の指動き検出処理のルーチンに戻る。【０１３０】
次に、図１７を参照して、基準位置Ｃとなる場合の指動き判定処理について説明する。サブルーチンの処理が開始されると、まず、指動きを判断するための基準位置をＣとし、ＲＡＭ２２に記憶する（Ｓ３２１）。次に、前回の基準位置をＲＡＭ２２から取り出して、それによって動きを判断する。まず、前回基準位置がＡか否かを判断する（Ｓ３２３）。基準位置Ａは、前述のように、左領域７１の濃度値が閾値ＴＨ１以上で、右領域７２の濃度値が閾値ＴＨ３以上、又は、左領域７１の濃度値が閾値ＴＨ１未満ＴＨ２以上で、右領域７２の濃度値が閾値ＴＨ３未満ＴＨ４以上の場合に出力されている。従って、前回基準位置がＡの場合は（Ｓ３２３：ＹＥＳ）、「左小移動」を出力し（Ｓ３２５）、図１４の指動き検出処理のルーチンに戻る。【０１３１】
前回基準位置がＡでない場合は（Ｓ３２３：ＮＯ）、前回基準位置がＢであるか否かを判断する（Ｓ３２７）。基準位置Ｂは、前述のように、左領域７１の濃度値が閾値ＴＨ１以上で、右領域７２の濃度値が閾値ＴＨ４未満である場合に出力されている。従って、前回基準位置がＢの場合には（Ｓ３２７：ＹＥＳ）、「右小移動」を出力し（Ｓ３２９）、図１４の指動き検出処理のルーチンに戻る。【０１３２】
前回基準位置がＢでない場合には（Ｓ３２７：ＮＯ）、前回基準位置がＣであるか否かを判断する（Ｓ３３１）。前回基準位置がＣの場合には（Ｓ３３１：ＹＥＳ）、今回と前回の基準位置が同一であるから、「動きなし」を出力し（Ｓ３３３）、図１４の指動き検出処理のルーチンに戻る。【０１３３】
前回基準位置がＣでない場合は（Ｓ３３１：ＮＯ）、前回基準位置がＤであるか否かを判断する（Ｓ３３５）。基準位置Ｄは、前述のように、左領域７１の濃度値が閾値ＴＨ１未満ＴＨ２以上で、右領域７２の濃度値が閾値ＴＨ３以上である場合、又は、左領域７２の濃度値が閾値ＴＨ２未満で、右領域７２の濃度値が閾値ＴＨ３未満ＴＨ４以上の場合に出力されている。従って、前回基準位置がＤの場合には（Ｓ３３５：ＹＥＳ）、「左移動」を出力し（Ｓ３３７）、図１４の指動き検出処理のルーチンに戻る。【０１３４】
前回基準位置がＤでない場合は（Ｓ３３５：ＮＯ）、前回基準位置がＥであるか否かを判断する（Ｓ３３９）。基準位置Ｅは、前述のように、左領域７１の濃度値が閾値ＴＨ２未満で、右領域７２の濃度値が閾値ＴＨ３以上である場合に出力されている。従って、前回基準位置がＥの場合には（Ｓ３３９：ＹＥＳ）、「左大移動」を出力し（Ｓ３４１）、図１４の指動き検出処理のルーチンに戻る。【０１３５】
前回基準位置がＥでない場合は（Ｓ３３９：ＮＯ）、前回の基準位置が記憶されていないか（初回処理の場合）、前回の基準位置はＦであるから、この場合には「動きなし」を出力し（Ｓ３４３）、図１４の指動き検出処理のルーチンに戻る。【０１３６】
次に、図１８を参照して、基準位置Ｄとなる場合の指動き判定処理について説明する。サブルーチンの処理が開始されると、まず、指動きを判断するための基準位置をＣとし、ＲＡＭ２２に記憶する（Ｓ３５１）。次に、前回の基準位置をＲＡＭ２２から取り出して、それによって動きを判断する。まず、前回基準位置がＡか否かを判断する（Ｓ３５３）。基準位置Ａは、前述のように、左領域７１の濃度値が閾値ＴＨ１以上で、右領域７２の濃度値が閾値ＴＨ３以上、又は、左領域７１の濃度値が閾値ＴＨ１未満ＴＨ２以上で、右領域７２の濃度値が閾値ＴＨ３未満ＴＨ４以上の場合に出力されている。従って、前回基準位置がＡの場合は（Ｓ３５３：ＹＥＳ）、「右小移動」を出力し（Ｓ３５５）、図１４の指動き検出処理のルーチンに戻る。【０１３７】
前回基準位置がＡでない場合は（Ｓ３５３：ＮＯ）、前回基準位置がＢであるか否かを判断する（Ｓ３５７）。基準位置Ｂは、前述のように、左領域７１の濃度値が閾値ＴＨ１以上で、右領域７２の濃度値が閾値ＴＨ４未満である場合に出力されている。従って、前回基準位置がＢの場合には（Ｓ３５７：ＹＥＳ）、「右大移動」を出力し（Ｓ３５９）、図１４の指動き検出処理のルーチンに戻る。【０１３８】
前回基準位置がＢでない場合には（Ｓ３５７：ＮＯ）、前回基準位置がＣであるか否かを判断する（Ｓ３６１）。基準位置Ｃは、前述のように、左領域７１の濃度値が閾値ＴＨ１以上で、右領域７２の濃度値が閾値ＴＨ３未満ＴＨ４以上である場合、又は、左領域７２の濃度値が閾値ＴＨ１未満ＴＨ２以上で、右領域７２の濃度値が閾値ＴＨ４未満の場合に出力されている。従って、前回基準位置がＣの場合には（Ｓ３６１：ＹＥＳ）、「右移動」を出力し（Ｓ３６３）、図１４の指動き検出処理のルーチンに戻る。【０１３９】
前回基準位置がＣでない場合は（Ｓ３６１：ＮＯ）、前回基準位置がＤであるか否かを判断する（Ｓ３６５）。前回基準位置がＤの場合には（Ｓ３６５：ＹＥＳ）、今回と前回の基準位置が同一であるから、「動きなし」を出力し（Ｓ３６７）、図１４の指動き検出処理のルーチンに戻る。【０１４０】
前回基準位置がＤでない場合は（Ｓ３６５：ＮＯ）、前回基準位置がＥであるか否かを判断する（Ｓ３６９）。基準位置Ｅは、前述のように、左領域７１の濃度値が閾値ＴＨ２未満で、右領域７２の濃度値が閾値ＴＨ３以上である場合に出力されている。従って、前回基準位置がＥの場合には（Ｓ３６９：ＹＥＳ）、「左大移動」を出力し（Ｓ３７１）、図１４の指動き検出処理のルーチンに戻る。【０１４１】
前回基準位置がＥでない場合は（Ｓ３６９：ＮＯ）、前回の基準位置が記憶されていないか（初回処理の場合）、前回の基準位置はＦであるから、この場合には「動きなし」を出力し（Ｓ３７３）、図１４の指動き検出処理のルーチンに戻る。【０１４２】
次に、図１９を参照して、基準位置Ｅとなる場合の指動き判定処理について説明する。サブルーチンの処理が開始されると、まず、指動きを判断するための基準位置をＥとし、ＲＡＭ２２に記憶する（Ｓ３８１）。次に、前回の基準位置をＲＡＭ２２から取り出して、それによって動きを判断する。まず、前回基準位置がＡか否かを判断する（Ｓ３８３）。基準位置Ａは、前述のように、左領域７１の濃度値が閾値ＴＨ１以上で、右領域７２の濃度値が閾値ＴＨ３以上、又は、左領域７１の濃度値が閾値ＴＨ１未満ＴＨ２以上で、右領域７２の濃度値が閾値ＴＨ３未満ＴＨ４以上の場合に出力されている。従って、前回基準位置がＡの場合は（Ｓ３８３：ＹＥＳ）、「右移動」を出力し（Ｓ３８５）、図１４の指動き検出処理のルーチンに戻る。【０１４３】
前回基準位置がＡでない場合は（Ｓ３８３：ＮＯ）、前回基準位置がＢであるか否かを判断する（Ｓ３８７）。基準位置Ｂは、前述のように、左領域７１の濃度値が閾値ＴＨ１以上で、右領域７２の濃度値が閾値ＴＨ４未満である場合に出力されている。従って、前回基準位置がＢの場合には（Ｓ３８７：ＹＥＳ）、「右大大移動」を出力し（Ｓ３８９）、図１４の指動き検出処理のルーチンに戻る。【０１４４】
前回基準位置がＢでない場合には（Ｓ３８７：ＮＯ）、前回基準位置がＣであるか否かを判断する（Ｓ３９１）。基準位置Ｃは、前述のように、左領域７１の濃度値が閾値ＴＨ１以上で、右領域７２の濃度値が閾値ＴＨ３未満ＴＨ４以上である場合、又は、左領域７２の濃度値が閾値ＴＨ１未満ＴＨ２以上で、右領域７２の濃度値が閾値ＴＨ４未満の場合に出力されている。従って、前回基準位置がＣの場合には（Ｓ３９１：ＹＥＳ）、「右大移動」を出力し（Ｓ３９３）、図１４の指動き検出処理のルーチンに戻る。【０１４５】
前回基準位置がＣでない場合は（Ｓ３９１：ＮＯ）、前回基準位置がＤであるか否かを判断する（Ｓ３９５）。基準位置Ｄは、前述のように、左領域７１の濃度値が閾値ＴＨ１未満ＴＨ２以上で、右領域７２の濃度値が閾値ＴＨ３以上である場合、又は、左領域７２の濃度値が閾値ＴＨ２未満で、右領域７２の濃度値が閾値ＴＨ３未満ＴＨ４以上の場合に出力されている。従って、前回基準位置がＤの場合には（Ｓ３９５：ＹＥＳ）、「右小移動」を出力し（Ｓ３９７）、図１４の指動き検出処理のルーチンに戻る。【０１４６】
前回基準位置がＤでない場合は（Ｓ３９５：ＮＯ）、前回基準位置がＥであるか否かを判断する（Ｓ３９９）。前回基準位置がＥの場合には（Ｓ３９９：ＹＥＳ）、今回と前回の基準位置が同一であるから、「動きなし」を出力し（Ｓ４０１）、図１４の指動き検出処理のルーチンに戻る。【０１４７】
前回基準位置がＥでない場合は（Ｓ３９９：ＮＯ）、前回の基準位置が記憶されていないか（初回処理の場合）、前回の基準位置はＦであるから、この場合には「動きなし」を出力し（Ｓ４０３）、図１４の指動き検出処理のルーチンに戻る。【０１４８】
以上の指動き検出処理により、指の動きは「左移動」、「左小移動」、「左大移動」、「左大大移動」、「右移動」、「右小移動」、「右大移動」、「右大大移動」、「動きなし」の９段階で出力される。この指動き検出処理を逐次繰り返すことにより、指の動きが連続値で出力されるので、前述の制御情報生成処理において、この指動きに基づいてハンドル制御情報を生成すれば、ハンドルを切る角度を徐々に増やす、減らす等の滑らかな制御が可能となる。また、閾値の数を更に増やせば、さらに多段階で指の動きを検出することができ、詳細な制御情報の生成が可能となる。【０１４９】
なお、上記の指動き検出処理では、各小領域について閾値を複数設けることにより、指の動きの連続的情報(指の移動量)を得ているが、各小領域の面積のうち指の置かれている面積の割合を用いることにより、指の位置を得ることもできる。この場合、中央を０、左を負の値、右を正の値として表現する。たとえば、左領域７１全体の面積が１００であり、そのうち指の置かれている面積Ａが５０であるとする。そして、右領域７２の面積が１００であり、そのうち指の置かれている面積Ｂが３０であるとする。この場合の指位置Ｘは、Ｘ＝Ｂ−Ａにより求められ、３０−５０＝−２０となり、中央よりやや（２割）左よりとなる。次に、指の移動量は、ある時点での指位置Ｘ１と、その少し前の指位置Ｘ２から、例えば、指移動量ΔＸ＝Ｘ１−Ｘ２のような式で計算できる。この例では、正の数値は右方向への移動と移動量を表し、負の数値は左方向への移動と移動量を表している。このような数式により逐次指の移動方向及び移動量を求めていくことにより、連続した指の動きを検出することができる。【０１５０】
以上の第一乃至第四実施形態では、携帯電話機１においてカードライブゲームを制御するための操作入力情報を指紋センサ１１からの指紋画像情報により検出するものであったが、ドライブゲームに限らず、例えば、楽曲の演奏プログラムなども指紋情報の入力により制御することができる。以下に、バイオリン演奏プログラムを制御する場合の第五実施形態について図２０〜図２３を参照して説明する。ここでは、バイオリン演奏プログラムを制御する入力情報として、指のリズムの検出処理を行っている。第五実施形態の機械的及び電気的構成は、第一実施形態と同様であるので、その説明を援用し、制御処理についても共通の部分についてはその説明を援用して省略する。図２０は、第五実施形態の機能ブロック図である。図２１は、指紋画像のずれ量を示す指紋センサ１１の模式図である。図２２は、第五実施形態における指リズム検出処理のフローチャートである。図２３は、第五実施形態における制御情報生成処理の流れを示すフローチャートである。【０１５１】
図２０に示すように、第五実施形態では、指置き検出部５１において指紋センサ１１に指が置かれたか否かを検出する指置き検出処理が所定時間間隔で繰り返し実行され、その検出結果が制御情報生成部５０に出力される。制御情報生成部５０では、指置き検出部からの「指置きあり」という検出結果が得られた場合に、演奏開始と判断する。【０１５２】
指置き検出部５１での処理と並行して、指リズム検出部５６では、指紋センサ１１上に置かれている指が一定のリズムをもって動いているか否かを検出する処理を繰り返し実行する。この指リズムの検出が演奏継続指示情報となり、指リズムの検出がなくなれば、演奏停止指示情報として制御情報生成部５０において生成される。【０１５３】
また、指置き検出部５１、及び指リズム検出部５６における処理と並行して、指離れ検出部５４では、指紋センサ１１に置かれていた指が離れたか否かを検出する指離れ検出処理が所定時間間隔で繰り返し実行され、その検出結果が制御情報生成部５０に出力される。制御情報生成部５０では、指置き検出部からの「指離れあり」という検出結果が得られた場合に、演奏停止指示情報を演奏プログラム５７に出力し、演奏停止制御が実行される。【０１５４】
なお、図２０における機能ブロックである指置き検出部５１、指リズム検出部５６、指離れ検出部５４、制御情報生成部５０はハードウェアであるＣＰＵ２１及び各プログラムにより実現される。【０１５５】
次に、図２１及び図２２を参照して、指リズム検出部５６で実行される指リズム検出処理について説明する。指リズムの検出は、ライン型の指紋センサ１１において、図２１に示すように、ある時点で取得した部分指紋画像について、後に取得した部分画像と最も類似する指紋の文様８１の位置を検索し、そのときのずれ量を一定の時間間隔で測定してΔＹを得る。そして、そのΔＹの値が一定の範囲内に入っているか否かを判定して指リズムの有無を判定するものである。【０１５６】
図２２に示すように、指リズム検出処理が開始されると、まず、初期設定としての基準となる指紋画像を取得する（Ｓ４１１）。次に、指紋センサ１１上の入力画像を取得する（Ｓ４１３）。ここで取得した入力指紋画像は、次回の処理ルーチンにおいては基準画像となるので、ＲＡＭ２２に記憶しておく。次に、基準画像と入力指紋画像との間で指紋の文様の最も類似する位置を検索した上で、基準画像と入力指紋画像とのずれ量ΔＹを算出する（Ｓ４１５）。そして、算出されたずれ量ΔＹが予め定められた閾値Ａ以下であるか否かを判断する（Ｓ４１７）。閾値Ａは、指紋センサ１１の種類や組み込まれる携帯電話機１によって異なるが、例えば、「２」を用いることができる。【０１５７】
ずれ量ΔＹが閾値Ａ以下である場合には（Ｓ４１７：ＹＥＳ）、ほとんど指の位置がずれていないので、「指リズムなし」を出力し（Ｓ４１９）、Ｓ４２５に進む。【０１５８】
ずれ量ΔＹが閾値Ａを上回っている場合には（Ｓ４１７：ＮＯ）、さらに、そのずれ量ΔＹが閾値Ｂ以上であるか否かを判断する（Ｓ４２１）。閾値Ｂは、閾値Ａと同様、指紋センサ１１の種類や組み込まれる携帯電話機１によって異なるが、例えば、「６」を用いることができる。【０１５９】
ずれ量ΔＹが閾値Ｂ以上である場合には（Ｓ４２１：ＹＥＳ））、前回から指が大きくずれているので、リズムを刻んでいるとは言い難い状態であると判断し、「指リズムなし」を出力し（Ｓ４１９）、Ｓ４２５に進む。【０１６０】
ずれ量ΔＹが閾値Ｂ未満である場合には（Ｓ４２１：ＮＯ）、閾値Ａ〜閾値Ｂの間にずれ量ΔＹが入っているので、「指リズムあり」と出力し（Ｓ４２３）、所定時間の経過を待つ（Ｓ４２５）。所定時間経過後には、再びＳ４１３に戻って指紋画像を取得し、上記処理を繰り返して基準画像との比較によるずれ量を算出する。【０１６１】
次に、以上の指リズム検出処理によって得られた指リズム検出結果を用いてバイオリン演奏プログラムを制御する制御情報精製処理について図２３を参照して説明する。【０１６２】
まず、図２３に示すように、指紋センサ１１全体の指置き検出結果を取得する（Ｓ４３１）。次に、取得した指置き検出結果が、指置きありか否かを判断する（Ｓ４３３）。指置きありでなければ（Ｓ４３３：ＮＯ）、Ｓ４３１に戻り、再度指置き検出結果を取得する。【０１６３】
指置きありの場合には（Ｓ４３３：ＹＥＳ）、指リズム検出処理で出力された最新の指リズム検出結果を取得する（Ｓ４３５）。次に、取得した指リズム検出結果が、指リズムありか否かを判断する（Ｓ４３７）。指リズムありでなければ（Ｓ４３７：ＮＯ）、演奏停止指示情報を生成し、バイオリン演奏プログラムに出力する（Ｓ４３９）。初回の場合は、指リズムは検出されていないから、まだ演奏は開始されないままとなる。【０１６４】
指リズムありの場合には（Ｓ４３７：ＹＥＳ）、演奏開始指示情報を生成し、バイオリン演奏プログラムに出力する（Ｓ４４１）。バイオリン演奏プログラムでは、演奏開始指示情報を受け取ると、すでに演奏を実行していない場合は演奏を開始し、現在演奏中の場合には演奏を継続する。【０１６５】
Ｓ４３９又はＳ４４１が終了すると、次に、指離れ検出結果を取得する（Ｓ４４３）。次に、取得した指離れ検出結果が、指離れありか否かを判断する（Ｓ４４５）。指離れありでなければ（Ｓ４４５：ＮＯ）、Ｓ４３５に戻り、再度指リズム検出結果を取得する。【０１６６】
指離れありの場合は（Ｓ４４５：ＹＥＳ）、演奏停止指示情報を生成し、バイオリン演奏プログラムに出力し（Ｓ４４７）、処理を終了する。【０１６７】
なお、指リズムの検出は、上述の方法に限らず、指が置かれてから指が離れるまで、あるいは、指が離れてから指が置かれるまでの時間間隔が一定の範囲内に収まっていることによりリズムの有無を判定するようにしてもよい。そこで、この方法による指リズム検出処理について図２４及び図２５を参照して説明する。図２４は、別の制御方法の指リズム検出処理のフローチャートである。図２５は、図２４のＳ４６３及びＳ４７１で実行されるリズム判定処理のサブルーチンのフローチャートである。【０１６８】
図２４に示すように、処理が開始されると、まず、指紋センサ１１全体の指置き検出結果を取得する（Ｓ４５１）。次に、取得した指置き検出結果が、指置きありか否かを判断する（Ｓ４５３）。指置きありでなければ（Ｓ４５３：ＮＯ）、Ｓ４５１に戻り、再度指置き検出結果を取得する。【０１６９】
指置きありの場合には（Ｓ４５３：ＹＥＳ）、時計機能部２３から現在時刻を取得し、指置き時刻としてＲＡＭ２２に記憶する（Ｓ４５５）。そして、指紋センサ１１の指離れ検出結果を取得する（Ｓ４５７）。次に、取得した指離れ検出結果が、指離れありか否かを判断する（Ｓ４５９）。指離れありでなければ（Ｓ４５９：ＮＯ）、Ｓ４５７に戻り、再度指離れ検出結果を取得する。【０１７０】
指離れありの場合は（Ｓ４５９：ＹＥＳ）、時計機能部２３から現在時刻を取得し、指離れ時刻としてＲＡＭ２２に記憶する（Ｓ４６１）。そして、指置き時刻と指離れ時刻との差を算出して指リズムがあるか否かを判定するリズム判定処理を実行する（Ｓ４６３）。リズム判定処理の詳細については、図２５を参照して後述する。【０１７１】
リズム判定処理の終了後、再び指置き検出結果を取得する（Ｓ４６５）。次に、取得した指置き検出結果が、指置きありか否かを判断する（Ｓ４６７）。指置きありでなければ（Ｓ４６７：ＮＯ）、Ｓ４６５に戻り、再度指置き検出結果を取得する。【０１７２】
指置きありの場合には（Ｓ４６７：ＹＥＳ）、時計機能部２３から現在時刻を取得し、指置き時刻としてＲＡＭ２２に記憶する（Ｓ４６９）。そして、Ｓ４６１で取得し記憶した指離れ時刻との差を算出して指リズムがあるか否かを判定するリズム判定処理を図２５に従って実行する（Ｓ４７１）。リズム判定処理終了後、Ｓ４５７に戻り、指離れ・指置きが検出される度に（Ｓ４５９：ＹＥＳ，Ｓ４６７：ＹＥＳ）リズム判定処理（Ｓ４６３，Ｓ４７１）を繰り返して実行する。【０１７３】
次に、図２５を参照して図２４のＳ４６３及びＳ４７１で実行されるリズム判定処理について説明する。まず、ＲＡＭ２２に記憶されている指置き時刻と指離れ時刻の差（時間間隔）を算出する（Ｓ４８０）。次に、算出した時間間隔が予め定められた閾値Ａ以下であるか否かを判断する（Ｓ４８１）。閾値Ａは、指紋センサ１１の種類や組み込まれる携帯電話機１によって異なるが、例えば、「０．５秒」等を用いることができる。【０１７４】
時間間隔が閾値Ａ以下の場合には（Ｓ４８１：ＹＥＳ）、ほとんどすぐに指の置き・離れ状態が変化しているので、リズムを刻んでいるとは言い難い状態であると判断し、「指リズムなし」を出力し（Ｓ４８３）、図２４のリズム検出処理のルーチンに戻る。【０１７５】
時間間隔が閾値Ａを上回っている場合には（Ｓ４８１：ＮＯ）、さらに、その時間間隔が予め定めた閾値Ｂ以上であるか否かを判断する（Ｓ４８５）。閾値Ｂは、閾値Ａと同様、指紋センサ１１の種類や組み込まれる携帯電話機１によって異なるが、例えば、「１．０秒」等を用いることができる。【０１７６】
時間間隔が閾値Ｂ以上である場合には（Ｓ４８５：ＹＥＳ）、前回の指置き又は指離れから大きく時間が空いているのでリズムを刻んでいるとは言い難い状態であると判断し、「指リズムなし」を出力し（Ｓ４８３）、図２４のリズム検出処理のルーチンに戻る。【０１７７】
時間間隔が閾値Ｂ未満である場合には（Ｓ４８５：ＮＯ）、閾値Ａ〜閾値Ｂの間に時間間隔が入っているので「指リズムあり」と出力し（Ｓ４８７）、図２４のリズム検出処理のルーチンに戻る。【０１７８】
以上説明した、第一実施形態〜第五実施形態は、携帯電話機１に指紋センサ１１を搭載しその指紋センサ１１へ置かれた指紋画像から指の状態を取得して操作入力情報とするものであった。本発明の操作入力装置・操作入力プログラムは、携帯電話機に搭載されるものに限定されず、パソコンに組み込んだり、各種の組み込み機器に搭載することができる。【０１７９】
そこで、次に、パソコンに本発明の操作入力プログラムを適用した場合の構成について図２６を参照して説明する。図２６は、パソコン１００の電気的構成を示すブロック図である。図２６に示すように、パソコン１００は、周知の構成からなり、パソコン１００を制御するＣＰＵ１２１が設けられ、ＣＰＵ１２１には、データを一時的に記憶し、各種のプログラムのワークエリアとして使用されるＲＡＭ１２２、ＢＩＯＳ等が記憶されるＲＯＭ１２３、データの受け渡しの仲介を行うＩ／Ｏインタフェイス１３３とが接続されている。Ｉ／Ｏインタフェイス１３３には、ハードディスク装置１３０が接続され、ハードディスク装置１３０には、ＣＰＵ３０で実行される各種のプログラムを記憶したプログラム記憶エリア１３１と、プログラムを実行して作成されたデータ等の情報が記憶されたその他の情報記憶エリア１３２とが設けられている。本実施形態において、本発明の操作入力プログラムは、プログラム記憶エリア１３１に記憶されている。また、カードライブゲームのようなゲームプログラムやバイオリン演奏プログラム等もプログラム記憶エリア１３１に記憶されている。【０１８０】
また、Ｉ／Ｏインタフェイス１３３には、ビデオコントローラ１３４と、キーコントローラ１３５と、ＣＤ−ＲＯＭドライブ１３６とが接続され、ビデオコントローラ１３４にはディスプレイ１０２が接続され、キーコントローラ１３５にはキーボード１０３が接続されている。ＣＤ−ＲＯＭドライブ１３６に挿入されるＣＤ−ＲＯＭ１３７には、本発明の操作入力プログラムが記憶されており、導入時には、ＣＤ−ＲＯＭ１３７から、ハードディスク装置１３０にセットアップされてプログラム記憶エリア１３１に記憶されるようになっている。尚、操作入力プログラムが記憶される記録媒体としては、ＣＤ−ＲＯＭに限らず、ＤＶＤやＦＤ(フレキシブルディスク)等でもよい。このような場合には、パソコン１００はＤＶＤドライブやＦＤＤ(フレキシブルディスクドライブ)を備え、これらのドライブに記録媒体が挿入される。また、操作入力プログラムはＣＤ−ＲＯＭ１３７等の記録媒体に記憶されているものに限らず、パソコン１００をＬＡＮやインターネットに接続してサーバからダウンロードして使用するように構成してもよい。【０１８１】
入力手段である指紋センサ１１１は、第一実施形態〜第五実施形態の携帯電話機１に搭載したものと同様に、静電容量型のセンサや光学的センサ、感熱型、電界型、平面型、ライン型いずれのタイプの指紋センサを用いてもよく、指の指紋画像の一部乃至全部を指紋情報として取得できればよい。【０１８２】
このような構成のパソコン１００における処理は、携帯電話機１における場合と特に変わるところはないので、前述した実施形態の説明を援用して省略する。【０１８３】
周知のように、パソコンで１００においてゲームプログラムを実行する場合、特にカードライブゲーム等ではジョイスティックやハンドル等の入力デバイスを接続してよりリアルにゲームを楽しめることが行なわれている。このような入力デバイスに代えて、指紋センサ１１１からの指の状態を検出して制御情報を生成するように構成すれば、特別な入力デバイスが不要であり、省スペースであるからノートパソコン等携帯用のパソコンでも十分にゲームプログラムなどを手軽に楽しむことができる。【０１８４】
また、操作スイッチを備えた各種の組み込み機器に指紋センサを搭載する場合にも、本発明の操作入力プログラムを適用することが可能である。組み込み機器への適用について、図２７を参照して説明する。図２７は、組み込み機器２００の電気的構成を示すブロック図である。指紋センサを搭載した組み込み機器としては、認証の必要な電子錠等の他、アクセス制限をかけたいコピー機やプリンタ等の事務機器、家庭用の電化製品など各種のものが考えられる。【０１８５】
図２７に示すように、組み込み機器２００は、組み込み機器２００の全体の制御を行なうＣＰＵ２１０が設けられ、ＣＰＵ２１０には、ＲＡＭ２２１や不揮発メモリ２２２等のメモリを制御するメモリ制御部２２０と、周辺機器を制御する周辺制御部２３０が接続されている。周辺制御部２３０には、入力手段である指紋センサ２４０と、ディスプレイ２５０とが接続されている。メモリ制御部２２０に接続するＲＡＭ２２１は、各種のプログラムのワークエリアとして利用される。また、不揮発メモリ２２２には、ＣＰＵ２１０で実行される各種のプログラムを記憶するエリア等が設けられている。【０１８６】
入力手段である指紋センサ２４０は、第一実施形態〜第五実施形態の携帯電話機１に搭載したものと同様に、静電容量型のセンサや光学的センサ、感熱型、電界型、平面型、ライン型いずれのタイプの指紋センサを用いてもよく、指の指紋画像の一部乃至全部を指紋情報として取得できればよい。【０１８７】
このような構成の組み込み機器２００における処理は、携帯電話機１やパソコン１００における場合と特に変わるところはないので、前述した実施形態の説明を援用して省略する。【０１８８】
近年、セキュリティ意識の高まりにより、コンピュータやネットワーク機器以外にもアクセス制限を実施したり、本人認証を実行するニーズが高まっており、指紋センサを搭載した機器の割合が増えてくることが予想される。このような場合に、操作入力装置を指紋センサと本発明の操作入力プログラムにより実現できれば、省スペース、低コスト化がはかられ、特に小型の組み込み機器には有効である。
【図面の簡単な説明】
【０１８９】
【図１】携帯電話機１の外観図である。
【図２】携帯電話機１の電気的構成を示すブロック図である。
【図３】本実施形態の機能ブロック図である。
【図４】指置き検出処理の流れを示すフローチャートである。
【図５】指離れ検出処理の流れを示すフローチャートである。
【図６】指紋センサ１１の領域分割の模式図である。
【図７】指面積検出処理の流れを示すフローチャートである。
【図８】指位置検出処理の流れを示すフローチャートである。
【図９】制御情報生成処理の流れを示すフローチャートである。
【図１０】第二実施形態における指紋センサ１１の領域分割の模式図である。
【図１１】第二実施形態における指面積検出処理のフローチャートである。
【図１２】第二実施形態における指位置検出処理のフローチャートである。
【図１３】指動き検出処理の流れを示すフローチャートである。
【図１４】連続的出力を得るための指動き検出処理のフローチャートである。
【図１５】図１４のＳ２２７及びＳ２４３で実行される基準位置Ａの場合のサブルーチンのフローチャートである。
【図１６】図１４のＳ２３１で実行される基準位置Ｂの場合のサブルーチンのフローチャートである。
【図１７】図１４のＳ２３３及びＳ２４５で実行される基準位置Ｃの場合のサブルーチンのフローチャートである。
【図１８】図１４のＳ２３９及びＳ２５３で実行される基準位置Ｄの場合のサブルーチンのフローチャートである。
【図１９】図１４のＳ２３９で実行される基準位置Ｅの場合のサブルーチンのフローチャートである。
【図２０】第五実施形態の機能ブロック図である。
【図２１】指紋画像のずれ量を示す指紋センサ１１の模式図である。
【図２２】第五実施形態における指リズム検出処理のフローチャートである。
【図２３】第五実施形態における制御情報生成処理の流れを示すフローチャートである。
【図２４】別の制御方法の指リズム検出処理のフローチャートである。
【図２５】図２４のＳ４６３及びＳ４７１で実行されるリズム判定処理のサブルーチンのフローチャートである。
【図２６】パソコン１００の電気的構成を示すブロック図である。
【図２７】組み込み機器２００の電気的構成を示すブロック図である。
【符号の説明】
【０１９０】
１      携帯電話機
１１      指紋センサ
２１      ＣＰＵ
２２      ＲＡＭ
３０      不揮発メモリ
３２      メロディ発生器
３３      送受信部
３４      モデム部
３４      モデム
５１      指置き検出部
５２      指面積検出部
５３      指位置検出部
５４      指離れ検出部
５４      制御情報生成部
５６      指リズム検出部
１００      パソコン
１１１      指紋センサ
１２１      ＣＰＵ
１２２      ＲＡＭ
１３０      ハードディスク装置
１３１      プログラム記憶エリア
２００      組み込み機器
２１０      ＣＰＵ
２２１      ＲＡＭ
２４０      指紋センサ
【図１】
2005106639.tif 000002
【図２】
2005106639.tif 000003
【図３】
2005106639.tif 000004
【図４】
2005106639.tif 000005
【図５】
2005106639.tif 000006
【図６】
2005106639.tif 000007
【図７】
2005106639.tif 000008
【図８】
2005106639.tif 000009
【図９】
2005106639.tif 000010
【図１０】
2005106639.tif 000011
【図１１】
2005106639.tif 000012
【図１２】
2005106639.tif 000013
【図１３】
2005106639.tif 000014
【図１４】
2005106639.tif 000015
【図１５】
2005106639.tif 000016
【図１６】
2005106639.tif 000017
【図１７】
2005106639.tif 000018
【図１８】
2005106639.tif 000019
【図１９】
2005106639.tif 000020
【図２０】
2005106639.tif 000021
【図２１】
2005106639.tif 000022
【図２２】
2005106639.tif 000023
【図２３】
2005106639.tif 000024
【図２４】
2005106639.tif 000025
【図２５】
2005106639.tif 000026
【図２６】
2005106639.tif 000027
【図２７】
2005106639.tif 000028
【国際調査報告】
2005106639.tif 000029
2005106639.tif 000030
2005106639.tif 000031
2005106639.tif 000032