<第1の実施形態>
図1は、本発明の第1の実施形態の認証処理装置1の概観の一例を示す図である。図1に示すように、本実施形態に係る認証処理装置1は、ディスプレイ11を備えていると共に仮想平面設定手段と解析手段と認証判定手段の機能を実現するための構成の一例である情報処理装置10と、座標検出手段の機能を実現するための構成の一例である距離センサ20とを有して構成されている。情報処理装置10と距離センサ20は、信号ケーブル若しくは無線により接続されている。
距離センサ20は、検出対象物の三次元空間内における三次元座標を所定の時間周期ごとに検出するための座標検出手段の機能の一部を担っており、座標検出手段は、当該距離センサ20と情報処理装置10内の後述する座標算出部111により構成されている。また、ディスプレイ11は、認証コードに用いられる複数のコード情報にそれぞれ対応した複数の選択対象画像を画面内に表示する画像表示手段の一例である。情報処理装置10は、三次元空間内に仮想二次元平面を設定するとともに、前記画面内における前記複数の選択対象画像の表示座標と前記仮想二次元平面内における仮想座標とを対応させる仮想平面設定手段と、前記検出対象物の三次元座標を解析することにより、前記検出対象物の検出座標が前記二次元平面で前記仮想座標に対応している状態で、前記三次元空間内において前記検出対象物による所定の動きを検出したとき、認証対象者により前記選択対象画像が選ばれたと判断する解析手段と、前記解析手段で選ばれたと判断された選択対象画像に対応したコード情報と、予め登録されている認証コードのコード情報とに基づいて、認証判定を行う認証判定手段としての各機能を実現する装置の一例である。
本実施形態の認証処理装置1において、認証対象者の個人認証が、例えば4桁の数字がコード情報として用いられる認証コードの一例であるPINコードにより行われる場合、情報処理装置10は、その認証対象者から入力された4桁の数字からなるコード情報と、予め登録されている正規ユーザのPINコードとを比較し、それらが一致した場合に、当該認証対象者が正規のユーザであると認証する。
ここで、PINコードを利用した個人認証を行う場合、情報処理装置10は、先ず、認証対象者が予め登録されている複数ユーザのうちの一人であるか否かを判定するユーザ確認処理を行う。なお、予め登録されているユーザが一人のみである場合、ユーザ確認のための判定は省略することができる。予め登録されているユーザが複数である場合、例えばPINコードとは別に予め登録しておいたパスワード等を用いたユーザ確認や、予め各ユーザに配布している認証用カード等を用いたユーザ確認、或いは、各ユーザの生体情報等を用いたユーザ確認等を行うことができる。
そして、認証対象者が登録されたユーザの一人であると判定した時、情報処理装置10は、距離センサ20から供給される信号に基づいて、当該距離センサ20のセンサ面20Fの上方側の三次元空間に、仮想二次元平面の一例であるタッチパネル40を設定する。以下の説明では、この仮想的なタッチパネル40をバーチャルタッチパネル40と表記する。当該バーチャルタッチパネル40は、前記ディスプレイ11の画面と仮想的に対応したパネルとして設定される。なお、バーチャルタッチパネル40は、三次元空間内に仮想的に設定されるものであり、認証対象者や他の第三者が実際に見ることの出来るものではない。情報処理装置10が前記距離センサ20のセンサ面20Fの上方側の三次元空間を、どのようにしてバーチャルタッチパネル40として扱い得るのかについての詳細な説明は後述する。
次に、情報処理装置10は、距離センサ20から供給される信号に基づいて、認証対象者の手指の先端部(即ち、指先31)などのように或る程度狭い範囲を指し示すことが可能な先端部を有する物体が、バーチャルタッチパネル40の三次元空間内に存在するかを判断する。なお、この第1の実施形態の場合、前記先端部は手の指先に限定されず、例えばペン先などのように狭い範囲を指し示すことができるものであってもよい。そして、バーチャルタッチパネル40の三次元空間内に前記指先31等の先端部が存在している場合、情報処理装置10は、ディスプレイ11の画面上に、当該バーチャルタッチパネル40上での指先31等の先端部の位置に対応した指示マーク13を表示する。また、情報処理装置10は、バーチャルタッチパネル40内で前記指先31等が動かされた場合、当該指先31の動きに同期させて、ディスプレイ11の画面上の前記指示マーク13の表示位置を移動させる。なお、バーチャルタッチパネル40内での指先31の動きと、ディスプレイ11の画面上の指示マーク13の同期表示の詳細な説明は後述する。
さらに、情報処理装置10は、バーチャルタッチパネル40の三次元空間内に指先31等が存在していると判断した時、例えば「0〜9」までの数字キーに対応したキー画像12をディスプレイ11の画面上に表示する。これらキー画像12は、ディスプレイ11の画面内に複数表示される選択対象画像の一例である。そして、本実施形態において、これらキー画像12の画面上の配置は、ランダムな配置となされる。なお、図1のディスプレイ11の画面例は、キー画像12と指示マーク13のみ表示されているが、それらと共に例えばキャンセルを指示するためのキャンセルキーも表示される。
また前述したように、バーチャルタッチパネル40はディスプレイ11の画面と仮想的に対応したパネルとなっているため、情報処理装置10は、例えば図2に示すように、バーチャルタッチパネル40の三次元空間内において、前記ディスプレイ11の画面上にランダム配置された各キー画像12にそれぞれ対応している位置に、仮想キーV12を配置する。なお、これら仮想キーV12についても、バーチャルタッチパネル40と同様に、三次元空間内に仮想的に配置されるものであり、認証対象者や他の第三者が実際に見ることの出来るものではない。また、前記ディスプレイ11の画面上に表示されるキー画像12は、図3の(a)〜(c)に一例として示すように、認証対象者に対する個人認証が行われる度に、それらの配置がランダムに変更される。したがって、バーチャルタッチパネル40上における前記仮想キーV12も、認証対象者に対する個人認証が行われる度にそれらの配置がランダムに変更される。なお、図2の例は、仮想キーV12のみ描いているが、それらと共に例えばキャンセルの指示用の仮想キャンセルキーも配置される。
また、情報処理装置10は、認証対象者が例えば手30の指先31等の先端部により、前記バーチャルタッチパネル40上の所望の位置を指示する所定動作(所望の位置を指先31等の先端部で突くような所定の動き)が行われた時、ユーザがその位置をクリックしたと認識する。なお、本実施形態では、バーチャルタッチパネル40上の所望の位置を指示する所定の動作として、当該所望の位置を指先31等の先端部で押すような動き(或いは、押し込む動作、突く動作)を例に挙げる。本実施形態では、前記先端部により所望の位置を指示するための所定の動きを、以下の説明ではエアクリックと表記する。情報処理装置10は、距離センサ20から供給される信号に基づいて、前記バーチャルタッチパネル40の三次元空間内で前記エアクリックが行われたかを認識するが、その詳細な説明は後述する。また、エアクリックが確実に行われたかどうかについては、例えばディスプレイ11の画面上にエアクリック完了通知用の所定の表示を行ったり、エアクリック完了通知用の所定の音を発生させるなどして、認証対象者へ知らせることも可能である。或いは、第三者への秘匿性を高めるために、それら通知が全く行われなくてもよい。
そして、情報処理装置10は、認証対象者が前記バーチャルタッチパネル40内の仮想キーV12に対した位置でエアクリックを行い、そのエアクリックによってPINコードの正しい4桁の数字が順に入力されたとき、その認証対象者は正規のユーザであると判断する。
図4には、情報処理装置10の概略的な構成を示している。図4の示した各構成は、本実施形態の情報処理装置10にて行われる各処理や制御、実際のハードウェア構成をそれぞれ機能ごとに分けた機能ブロックとして表したものである。なお、図4には距離センサ20も描かれている。また、図4において、表示部(ディスプレイ11)は情報処理装置10の外部に設けられていてもよいし、メモリ部107内に記憶されている情報は外部の記憶装置に格納されていてもよい。
図5には、PINコードを利用して認証対象者の個人認証を行う際の情報処理装置10の処理及び制御の流れをフローチャートにより示している。以下、図4の各構成の動作及び処理と制御について、図5のフローチャートを参照しながら説明する。
先ず、認証対象者の個人認証が行われる場合、情報処理装置10のユーザ確認部106は、ステップS1の処理として、認証対象者が予め登録されている複数ユーザのうちの一人であるか否かのユーザ確認のための判定を行う。このユーザ確認の判定処理は、前述したように、パスワードや認証用カード、ユーザの生体情報等を用いて行われる。これらユーザ確認のための処理は既存の処理と同じであるため、その詳細な説明は省略する。
ステップS1において認証対象者が登録ユーザでないと判定された場合、制御部105は、ステップS12として、認証は否定(NG)されたとして認証NG処理を行う。制御部105は、ステップS12の認証NG処理として、例えばそれ以前の処理で取得された情報を全てクリアした後、処理をステップS11へ進める。ステップS11の処理へ進むと、制御部105の表示制御部121は、ディスプレイ11の画面上に認証NG等の表示を行う。なお認証NGの通知は音声により行われてもよい。一方、ステップS1において認証対象者が登録ユーザであると判定された場合、制御部105は、ステップS2の処理として、距離センサ出力解析部102で行われる解析結果を基に、指先31等のような狭い範囲を指し示すことのできる先端部が前記バーチャルタッチパネル40の三次元空間内に存在しているか判断する。
ここで、距離センサ出力解析部102で行われる処理の詳細を述べる前に、距離センサ20の構成と当該距離センサ20から得られる信号について説明する。距離センサ20は、図6に示すように、センサ面20Fの側に、例えば三つの赤外線LED22L,22C,22Rと、二つの赤外線カメラ21L,21Rが配されて構成されている。赤外線LED22L,22C,22Rから出射された赤外光は、当該距離センサ20のセンサ面20F側に何らかの検出対象物が存在していた場合、その検出対象物により反射されて、赤外線カメラ21L,21Rへ入射する。赤外線カメラ21L,21Rは、それぞれ撮像光学系と撮像素子を備えており、検出対象物にて反射された赤外光からなる光像を、所定の時間周期ごとに撮像する。なお、本実施形態の場合、所定の時間周期は、一例として290fps(フレーム/秒)のフレームレートとなされている。
なお、距離センサ20において、赤外線LED22L,22C,22Rから出射された赤外光が検出対象物で反射されて赤外線カメラ21L,21Rが受光できる有効範囲は、例えば図7に示すように、センサ面20F上での赤外線カメラ21L,21Rの中間点20Cから、例えば25mm〜600mmまでの距離範囲DR内で且つ広がり角θが150度の逆ピラミッド状の範囲となされている。上述した距離センサ20は、赤外線カメラ21L,21Rの撮像信号を、情報処理装置10へ出力する。
距離センサ20から出力された撮像信号は、本実施形態の情報処理装置10の距離センサ出力受信部101により受信される。距離センサ出力受信部101は、距離センサ20と情報処理装置10との間を接続する信号ケーブル或いは無線等の通信方式に応じた受信部となっている。当該距離センサ出力受信部101にて受信された撮像信号は、距離センサ出力解析部102へ送られる。
距離センサ出力解析部102は、例えば、座標算出部111と対象認識部112と先端座標情報取得部113とZ座標判定部114とを有して構成されている。座標算出部111は、距離センサ20の二つの赤外線カメラ21L,21Rからの撮像信号の画像解析を行うことにより、図7及び図8に示すように、距離センサ20の前記有効範囲内のX軸、Y軸、Z軸で表される三次元空間における検出対象物(図8の例では前記指先31)の三次元座標を算出する。なお、距離センサ20から供給される撮像信号は前述のように290fpsのフレームレートの信号となされているため、座標算出部111は、フレームごとに指先31の三次元座標を算出する。また、座標算出部111は、検出対象物が複数存在する場合であっても、或いは、一つの検出対象物内にそれぞれ異なる動きをする複数の部位が存在する場合であっても、それらについてそれぞれの三次元座標を算出する。座標算出部111にて算出されたフレームごとの三次元座標情報は、対象認識部112へ送られる。
対象認識部112は、前記フレームごとの三次元座標情報を基に、前記距離センサ20の有効範囲内の三次元空間における検出対象物がどのようなものであるかを認識する。ここで、距離センサ20の赤外線カメラにより、例えば図1中の手30の指先31などのように或る程度狭い範囲を指し示すことが可能な先端部を有する物体が撮像されているとする。この場合、対象認識部112は、前記撮像信号と前記座標算出部111でフレームごとに算出された三次元座標とから、前記検出対象物の少なくとも当該先端部を認識する。すなわち、図1や図8の例の場合、対象認識部112は、手30の少なくとも指先31を認識する。なお、詳細については第2の実施形態において後述するが、対象認識部112は、検出対象物として人の手が撮像されている場合、当該手を構成している手掌と5本の手指、及びそれら5本の手指の先端部(指先)や関節等もそれぞれ認識可能となされている。
対象認識部112にて検出対象物の先端部が認識されると、先端座標情報取得部113は、前記座標算出部111にて算出された三次元座標の中から、前記先端部の座標情報を取得する。この先端座標情報取得部113は、当該先端部の座標情報を取得すると、その座標情報を制御部105へ送る。すなわち、図5のステップS2において、制御部105は、距離センサ出力解析部102の対象認識部112による対象認識結果により、指先31等のような先端部が前記バーチャルタッチパネル40の三次元空間内に存在しているか判断可能となる。
図5のフローチャートへ説明を戻し、前記ステップS2にてバーチャルタッチパネル40の三次元空間内に先端部が存在すると判定した場合、制御部105は、処理をステップS3へ進め、一方、バーチャルタッチパネル40の三次元空間内に先端部が存在しないときにはステップS2の判定処理を繰り返す。
ステップS3へ処理を進めると、制御部105のキー配列制御部122は、前述したようにディスプレイ11上にランダム配置するキー画像12のデータを生成し、表示制御部121を介してそれらキー画像12をディスプレイ11の画面上に表示する。
その後、制御部105は、距離センサ出力解析部102の解析結果から、認証対象者がバーチャルタッチパネル40を通じて入力した認証用の4桁分の数字を取得するための、ステップS4からステップS8の処理へ移行する。
ステップS4へ処理を進めると、制御部105は、距離センサ出力解析部102の先端座標情報取得部113に対し、バーチャルタッチパネル40上で前記先端部の座標を取得させる。すなわち、このときの先端座標情報取得部113は、前記対象認識部112が認識した先端部の座標を取得する。
またこのとき、制御部105の表示制御部121は、指先31等の先端部の座標情報を基に、ディスプレイ11の画面上に表示する指示マーク13の画像を生成する。なお、指先31が三次元空間内で動かされている場合、指先31等の先端部の座標値は、赤外線カメラ21L,21Rで撮像されるフレームごとに刻々と変化することになる。このため、ディスプレイ11の画面上での指示マーク13の表示位置は、三次元空間内での指先31の動きに同期して変更されることになる。
さらに、制御部105は、ステップS5の処理として、先端座標情報取得部113が取得した先端部の座標が、バーチャルタッチパネル40の三次元空間内に配置された何れかの仮想キーV12の座標と一致したか判断する。なおこの場合の一致判定は、先端部のX,Y座標が、仮想キーV12のX,Y座標の範囲内であるかの一致判定となる。そして、制御部105は、先端部の座標が、仮想キーV12の座標と一致したと判断したときにはステップS6へ処理を進め、一方、一致していないと判断したときにはステップS4へ処理を戻す。
なお、前記仮想キーV12は、実際には認証対象者から見えず且つ三次元空間上に仮想的に設定されるものであるため、認証対象者は前記先端部を仮想キーV12の位置に正確に合わせ難いことも考えられる。この場合、一例として、前記仮想キーV12の座標の周囲に所定の大きさの検出範囲を設定しておき、制御部105は、その検出範囲内に前記先端部の座標が入っているときに、当該先端部の座標が仮想キーV12の座標に一致したと判断してもよい。
次に、制御部105は、Z座標判定部114でのZ座標判定結果に基づいて、バーチャルタッチパネル40上でエアクリックが行われたか判断する。ここで、Z座標判定部114で行われるZ座標判定処理について、図8と図9及び図10を参照して説明する。Z座標判定部114は、前記座標算出部111が算出した三次元座標のうち、距離センサ20の前記センサ面20Fの上方側三次元空間のZ座標について基準座標を設定すると共に、そのZ基準座標に対して正側(+側)のZ座標と、負側(−側)のZ座標とを設定する。なお、図9、図10の例では、バーチャルタッチパネル40を、格子状の升目が配されたスクリーンとして描いているが、これらはパネルとその座標を判り易くするために描いているだけであり、それらは認証対象者から見えるものではない。
図8の例の場合、Z座標軸は、X軸とY軸を含む仮想二次元平面であるバーチャルタッチパネル40に対して直交する奥行き方向の座標軸となっており、基準座標(Z=0)は一例として、距離センサ20のセンサ面20Fの中央に相当するZ座標となされている。また図8の例の場合、正側(+側)のZ座標は基準座標(Z=0)に対して手前側(認証対象者に近い方)、負側(−側)のZ座標は基準座標(Z=0)に対して奥行き側(認証対象者から遠い方)となっている。
そして、Z座標判定部114は、対象認識部112が認識した前記検出対象物の先端部のZ座標が、図9に示すように、前記正側(+側)から前記基準座標(Z=0)を通り過ぎて負側(−側)に変化したか否か判定する。ここで、前記先端部のZ座標の変化があったと判定した時、Z座標判定部114は、判定検出信号を制御部105へ送る。なお、Z座標判定部114は、前記先端部のZ座標が、前記正側(+側)から前記基準座標(Z=0)を通り過ぎて負側(−側)に変化した後に、さらに例えば予め決められた時間内に正側(+側)へ戻るように変化したか否かを判定してもよい。
そして、ステップS6において、前記Z座標判定部114から当該判定検出信号を受け取ると、制御部105は、エアクリックが行われたと判断する。なお、エアクリックが行われていない場合、制御部105は、ステップS4へ処理を戻す。
このように、本実施形態においては、例えば図9に示したように、指先31等の先端部のZ座標が、前記正側(+側)から基準座標(Z=0)を通り過ぎて負側(−側)に変化した後、さらに例えば正側(+側)へ戻る変化であったときに、エアクリックがなされたと判断される。このため、例えば図10に示すように、バーチャルタッチパネル40上で、認証対象者が、指先31等の先端部をZ軸方向へ押し込む動作を行ったとしても、その際の前記先端部の押し込み動作が例えばZ軸座標の正側(+側)でのみ行われた場合には、エアクリックが行われたと判断しない。すなわち、指先31等の押し込み動作が例えばZ座標の正側(+側)でのみ行われた場合、第三者からはエアクリックが行われているように見えているが、実際にはエアクリックは行われていないことになる。本実施形態では、このような見かけ上のエアクリック(フェイクエアクリック)が可能となされている。
なお、Z座標軸の基準座標は、センサ面20Fの中央に相当するZ座標に限定されず、それよりも認証対象者側により近いZ座標となされてもよいし、逆に遠いZ座標となされてもよい。また、詳細は後述する第3の実施形態において説明するが、エアクリックが行われたか判断する際に使用する座標は、Z座標軸で予め固定的に決められた基準座標に限定されない。すなわち、エアクリックが行われたか判断する際に使用する座標は、例えば認証対象者の手30の指先31がバーチャルタッチパネル40の三次元空間内で検出された後、その手30若しくは指先31が三次元空間内で所定の時間だけ静止したときのZ座標から、指先方向で且つZ軸方向に所定距離だけ離れた座標に設定可能である。言い換えると、エアクリックの判定に使用される座標は、手30若しくは指先31が三次元空間内で静止したときのZ座標に応じた可変の座標として設定可能である。
次に、ステップS6にてエアクリックが行われたと判断して、ステップS7へ処理を進めると、制御部105は、入力情報判定部103に対し、エアクリックにより入力された座標に対応した数字を、配列PIN(n)として保管させた後、「n」に「1」を加えて、ステップS8へ処理を進める。
ステップS8へ処理が進むと、制御部105は、入力情報判定部103が保管している配列PIN(n)の「n」が「m」となったか否か判定する。なお「m」は、PINコードが4桁である場合は「4」となる。したがって、制御部105は、「n」が「4」になるとステップS9へ処理を進める。すなわち、「n」が「4」になったとき、入力情報判定部103が配列PIN(n)として保管している数字は4桁の数字となり、この4桁の数字が、バーチャルタッチパネル40を用いて認証対象者により入力された数字となる。
次に、処理をステップS9へ進めると、制御部105は、入力情報判定部103に対し、例えばメモリ部107に保存されているユーザごとのPINコードの数字の配列と、前記バーチャルタッチパネル40を介して認証対象者により入力された数字の配列が完全に一致しているか否か判定させる。
ここで、メモリ部107には、一例としてユーザ情報131とPINコード132が対応付けられたテーブル情報が登録されている。当該テーブル情報は、一例として図11に示すように、複数のユーザをそれぞれ表すユーザ情報U1,U2,U3,・・・と、各ユーザの登録PINコードとが対応付けられて登録されたものである。入力情報判定部103には、先のステップS1のユーザ確認の際に登録済みと判定されたユーザのPINコードがメモリ部107から渡されており、したがって、入力情報判定部103は、ステップS9において、そのPINコードと前記認証対象者が入力した数字との一致判定を行う。
そして、入力情報判定部103が前記認証対象者の入力数字とPINコードとが一致したと判定すると、制御部105は、ステップS10として、認証は確認(OK)されたとして認証OK処理を行う。制御部105は、ステップS9からステップS10へ進んだ場合、例えばそれ以前の処理で取得された座標の情報や配列PIN(n)に保管した数字の情報等を全てクリアした後、処理をステップS11へ進める。ステップS10からステップS11へ処理が進むと、制御部105の表示制御部121は、ディスプレイ11の画面上に認証OK等の表示を行う。なお、認証OKの通知は音声により行われてもよい。
一方、ステップS9において入力数字とPINコードが一致しないと判定された場合、制御部105は、ステップS12へ処理を進めて認証NG処理を行う。ステップS9からステップS12へ進んだ場合、制御部105は、それ以前の処理で取得した座標の情報や配列PIN(n)に保管した数字の情報等を全てクリアした後、ステップS11へ処理を進める。そして、ステップS12からこのステップS11へ処理が進むと、表示制御部121は、ディスプレイ11の画面上に認証NGの表示を行う。
なお、本実施形態の認証処理装置1が例えば入室時の認証を行うための装置であり、認証結果に応じて図示しない電気錠の開閉を制御する場合、解錠制御部104は、ステップS10において、入力情報判定部103における判定結果に基づいて電気錠の開閉を制御する。すなわち、認証対象者が正規のユーザである場合、解錠制御部104は、ステップS10において、電気錠を開制御して当該ユーザの入室を可能にする。
図1や図9、図10では、認証対象者から見てディスプレイ11の画面が例えば正対している例を挙げているが、例えば図12や図13に示すようにディスプレイ11の画面は、認証対象者側から直接見えないように配置されてもよい。
図12の例は、ディスプレイ11の画面に対して例えば45度に傾けて配置した反射板51により、ディスプレイ11の表示画像を反射し、その反射された画像を認証対象者が見る構成例を示している。なお、この図12の例の場合、ディスプレイ11上の表示は鏡像とする。この図12の構成の場合、距離センサ20は、反射板51により反射されたディスプレイ画面を認証対象者が見ることになる位置の手前に配されることになり、したがって、バーチャルタッチパネル40もその距離センサ20の上方の三次元空間に配置されることになる。この図12の構成の場合、ディスプレイ11の表示画面上には反射板51が設けられ、そのディスプレイ11の表示画面は反射板51で反射されることになるため、例えば盗撮用の小型隠しカメラをディスプレイ11画面上に秘かに配置するようなことはできない。
図13の例は、ディスプレイ11の画面に対して例えば45度傾けて配置され、そのディスプレイ11の表示画像を空中に仮想的な立体像として形成する光学結像プレート50を配した構成例を示している。なお光学結像プレート50としては、一例として特開2013-127625号公報に開示されているような光学結像装置を用いることができる。この図13の構成の場合、距離センサ20は、光学結像プレート50により仮想的な立体像が形成される位置に配されることになり、バーチャルタッチパネル40も距離センサ20の上方の三次元空間に配置されることになる。また、当該光学結像プレート50は、プレート面から45度を基軸として±20度が視野角となっており、そのような狭い視野角の範囲内でしかディスプレイ11の表示画面を見ることができない。このため、例えば認証対象者の肩越し或いは横からディスプレイ11の表示画面を盗み見るようなことはできず、また、小型隠しカメラによる盗撮も不可能である。
以上説明したように、第1の実施形態の認証処理装置1によれば、三次元空間上に仮想的に配置したバーチャルタッチパネル40上に、ランダムに配置された仮想キーを指先31等でクリック(エアクリック)することでPINコードの入力がなされるため、実際に入力されている数字を、第三者に盗み見られたり、盗撮されたりすることが無く、非常に高いセキュリティ性を確保可能となっている。
また、本実施形態の認証処理装置1によれば、確実なエアクリック動作が行われたかどうかは認証対象者本人のみが認識でき、例えばフェイククリックを行うことで、第三者に何れの数字がPINコードの数字であるかを知られる虞がない。
また、本実施形態の認証処理装置1によれば、認証対象者は、バーチャルタッチパネル40でエアクリックを行うだけであり、指先で実際にタッチパネル等に触れる必要が全くないため、指紋パターンなどの痕跡が残らず、指紋パターンを盗まれることがない。
さらに、本実施形態の認証処理装置1において、図12に示した反射板51や図13に示したような光学結像プレート50を配した構成を用いれば、第三者によるPINコードの盗み見や盗撮を有効に防止することができる。
また、本実施形態の認証処理装置1によれば、ディスプレイ画面の明るい表示を見ることができるため、十分な明るさが得られていない暗い環境であっても、認証対象者はPINコードの入力が可能となる。
<第2の実施形態>
次に、本発明の第2の実施形態の認証処理装置1について以下に説明する。なお、第2の実施形態の認証処理装置1の概略的な構成は図1と同様である。また、第2の実施形態において、距離センサ20やディスプレイ11の画面表示、バーチャルタッチパネル40、ディスプレイ11の画面上にランダム配置されるキー画像12とバーチャルタッチパネル40内に配される仮想キーV12の対応関係、エアクリックとフェイククリックの区別、反射板51や光学結像プレート50等は、第1の実施形態と同様である。
ここで、前述した第1の実施形態の場合、バーチャルタッチパネル40上でエアクリックが検出される際の検出対象物は、或る程度狭い範囲を指し示すことができる先端部を有する物体であればよく、指先に限定されるものではない。また第1の実施形態において、例えば指先によりエアクリックを行うことにした場合、認証対象者は、手の親指から小指までの何れの手指をどのように使ってもよく、PINコードの数字順に入力できればよい。
これに対し、第2の実施形態の認証処理装置1は、認証対象者の手の5本の手指をそれぞれ個別に認識し、また、PINコードの各数字のうちいずれの数字がどの手指を使って入力されたかを個別に認識することにより、セキュリティ性能をさらに高めている。
このようなことを実現するため、第2の実施形態において例えば4桁のPINコードにより個人認証が行われる場合、認証処理装置1には、PINコードの各数字とその数字に対応した手指の情報が予め登録されている。
また、認証処理装置1は、バーチャルタッチパネル40を介して認証対象者から4桁の数字が入力されたとき、それら4桁の各数字がそれぞれ何れの手指を用いて入力されたのかを認識可能となされている。そして、認証処理装置1は、入力された各数字及びそれら数字を入力した各手指の情報と、PINコードとして登録されている各数字及びそれら数字に対応して登録されている各手指の情報とを比較し、それらが全て一致した場合にのみ、認証対象者が正規のユーザであると認証する。
図14には、第2の実施形態の場合の情報処理装置10の概略的な構成を示している。図14の示した各構成は、本実施形態の情報処理装置10にて行われる各処理や制御、実際のハードウェア構成をそれぞれ機能ごとに分けた機能ブロックとして表したものである。なお、図14において、前述の図4と同じ機能ブロックには図4と同一の符号を付してそれらの説明は省略する。
すなわち、第2の実施形態の情報処理装置10は、第1の実施形態の情報処理装置10とは異なる機能として、検出対象物の三次元座標を解析することにより、前記検出対象物が認証対象者の手30である場合に手30の各手指部位を個別に識別し、前記識別した手指部位の座標が前記仮想二次元平面内で前記仮想座標に対応している状態で、前記三次元空間内において前記識別した手指部位による所定の動きを検出したとき、前記識別した部位により前記選択対象画像が選ばれたと判断する解析手段と、前記個別に識別した手指部位によって順に選ばれた複数の選択対象画像に対応した複数の数字の配列と、前記選択対象画像を順に選んだ手指部位の識別情報と、予め登録されている認証コードの数字の配列と、前記認証コードの各数字に対応して予め登録されている手指部位の識別情報との一致判定により、前記認証対象者の認証判定を行う認証判定手段としての各機能を実現する装置の一例である。
図15には、第2の実施形態においてPINコードを用いた個人認証が行われる際の情報処理装置10の処理及び制御の流れをフローチャートにより示している。以下、図14の各構成の動作及び処理と制御について、図15のフローチャートを参照しながら説明する。
先ず、ステップS1の確認処理でユーザ確認がなされると、制御部205は、ステップS21の処理として、距離センサ出力解析部202で行われる解析結果から、認証対象者の前記手30が前記バーチャルタッチパネル40の三次元空間内に存在しているか判断する。
ここで、第2の実施形態の場合、距離センサ出力解析部202は、座標算出部211と対象認識部212と指識別情報取得部213と指先座標情報取得部214とZ座標判定部215とを有して構成されている。
座標算出部211は、距離センサ20の二つの赤外線カメラ21L,21Rからの撮像信号の画像解析を行うことにより、距離センサ20の前記有効範囲内の三次元空間における検出対象物(本実施形態では前記手30)の三次元座標を、フレームごとに算出する。なお、第2の実施形態において、検出対象物である手30は、手掌と5本の手指からなる物体、すなわち一つの検出対象物内にそれぞれ異なる動きをする複数の部位が存在する物体である。したがって、座標算出部211は、手30を構成している手掌及び5本の手指の三次元座標を算出する。座標算出部211にて算出されたフレームごとの三次元座標情報は、対象認識部212へ送られる。
対象認識部212は、前記フレームごとの撮像信号と三次元座標情報を基に、前記検出対象物がどのようなものであるかを認識する。ここで、距離センサ20の赤外線カメラにより、手掌及び5本の手指からなる手30が撮像されている場合、対象認識部212は、前記撮像信号と前記座標算出部211でフレームごとに算出された三次元座標とから、前記検出対象物が手30であることを認識する。また、対象認識部212は、検出対象物である手30を構成する各部位、すなわち手掌と5本の手指、それら5本の手指の先端(指先)、5本の手指の屈曲部である各関節等を認識する。このように、対象認識部212は、検出対象物が手30であることを認識すると、その対象認識結果と当該手掌と5本の指からなる手30の座標情報を制御部205へ送る。
ここで、対象認識部212において、検出対象物が人の手であること及び当該手を構成する手掌と5本の手指をどのように認識するかについて、図16を参照しながら説明する。なお、以下の説明は概念説明であり、本発明はこの例に限定されるものではない。
対象認識部212は、距離センサ20の赤外線カメラ21L,21Rにより人の手が撮像された場合、その撮像信号と前記座標算出部211でフレームごとに算出された三次元座標とから、検出対象物は他の部位よりも広い面積を有する部位(手掌に相当する部位)と、その広い部位から伸びて且つそれぞれが個別に屈曲可能な5本の部位(5本の手指に相当する部位)とからなることを認識する。
図16は、検出対象物として認識された手をモデル化して説明するための図である。図16の例では、検出対象物として認識された手掌部位を掌オブジェクトPとしてモデル化し、5本の手指部位をそれぞれ指オブジェクトF0〜F4としてモデル化して表している。なお、指オブジェクトF0は親指に対応しており、以下同様、指オブジェクトF1は人差し指、指オブジェクトF2は中指、指オブジェクトF3は薬指、指オブジェクトF4は小指にそれぞれ対応している。また、図16の例では、各手指の関節を関節オブジェクトF0j〜F4jとしてモデル化し、各手指の指先を指先オブジェクトF0t〜F4tとしてモデル化し、それら各関節オブジェクトの間或いは指先オブジェクトから隣の関節オブジェクトまでの間をボーンオブジェクトとしてモデル化して表している。対象認識部212は、図16に示すようにモデル化できる各部位を有した検出対象物が三次元空間内に存在していることを認識し、さらにそれら各部位の三次元空間内における配置関係から、当該検出対象物が人の手であると認識する。
そして、制御部205は、対象認識部212から、検出対象物として人の手の認識結果を受け取ると、図15のステップS21において、前記バーチャルタッチパネル40内で人の手30を検出したと判断し、処理をステップS3へ進める。ステップS3へ処理を進めると、制御部205は、前述の第1の実施形態と同様に、ランダム配置したキー画像12をディスプレイ11の画面上に表示させる。
次に、制御部205は、ステップS22へ処理を進め、距離センサ出力解析部102の指識別情報取得部213に対して手30の各手指を識別するための指識別情報を取得させ、また、指先座標情報取得部214に対して各指先の座標情報を取得させる。この指識別情報は、部位識別情報の一例である。
すなわち、指識別情報取得部213は、対象認識部212が認識した手30の各部位のうち、例えば図16の指オブジェクトF0〜F4のようにモデル化できる各部位を、それぞれ親指から小指までの手指部位であると識別する。そして、指識別情報取得部213は、それら手指部位を個別に識別した指識別情報を制御部205へ送る。また、指先座標情報取得部214は、前記指識別情報取得部213が識別した各手指部位のうち、例えば図16の指先オブジェクトF0t〜F4tのようにモデル化できる先端部位の座標情報を取得し、それら各指先部位の座標情報を制御部205へ送る。
次に、制御部205は、ステップS23の処理として、指識別情報取得部213からの指識別情報と指先座標情報取得部214からの指先の座標情報とにより識別されている手指の指先の座標が、バーチャルタッチパネル40の三次元空間内に配置された何れかの仮想キーV12の座標と一致したか判断する。なおこの場合の一致判定は、指先のX,Y座標が、仮想キーV12のX,Y座標の範囲内であるかの一致判定となる。そして、制御部205は、前記識別されている手指の指先座標が、仮想キーV12の座標に一致したと判断したときにはステップS24へ処理を進め、一方、一致していないと判断したときにはステップS22へ処理を戻す。なお、ステップS23の判断の際も、前述の第1の実施形態で説明したのと同様に、仮想キーV12の座標の周囲に所定の検出範囲を設けてもよい。
次に、制御部205は、Z座標判定部215でのZ座標判定結果に基づいて、バーチャルタッチパネル40上でエアクリックが行われたか判断する。なお、Z座標判定部215で行われるZ座標判定処理については前述の第1の実施形態と同様である。そして、ステップS24において、前記Z座標判定部215から判定検出信号を受け取ると、制御部205は、エアクリックが行われたと判断する。なお、エアクリックが行われていない場合、制御部205は、ステップS22へ処理を戻す。
次に、ステップS24にてエアクリックが行われたと判断して、ステップS25へ処理を進めると、制御部205は、入力情報判定部203に対し、エアクリックにより入力された座標に対応した数字を配列PIN(n)として保管させ、また、エアクリックした何れかの手指の識別情報を配列FINGER(n)に保管した後、「n」に「1」を加えて、ステップS26へ処理を進める。
ステップS26へ処理が進むと、制御部205は、入力情報判定部203が保管している配列PIN(n)の「n」が「m」となり、また、配列FINGER(n)の「n」が「m」となったか否か判定する。なお「m」は、PINコードが4桁である場合は「4」となる。したがって、制御部205は、「n」が「4」になると、処理をステップS27へ進める。すなわち、「n」が「4」になったとき、入力情報判定部203が前記配列PIN(n)として保管している数字は4桁の数字となり、この4桁の数字が、バーチャルタッチパネル40を用いて認証対象者により入力された数字となる。また、「n」が「4」になったとき、入力情報判定部203が前記配列FINGER(n)にして保管している指識別情報の数は「4」となり、これにより、それぞれが個々に識別された手指による4回のエアクリックが認証対象者からなされたことになる。
次に、処理をステップS27へ進めると、制御部205は、入力情報判定部203に対し、例えばメモリ部207に保存されているユーザごとのPINコード及び当該PINコードの各数字に対応付けられた指識別情報と、前記バーチャルタッチパネル40を介して認証対象者により入力された数字及びそれら数字を入力する際に使用された指識別情報とが、完全に一致しているか否か判定させる。
ここで、メモリ部207には、一例としてユーザ情報131とPINコード132と指識別情報133とが登録されたテーブル情報が格納されている。当該テーブル情報は、一例として図17に示すように、複数のユーザをそれぞれ表すユーザ情報U1,U2,U3,・・・と、各ユーザの登録PINコードと、それらPINコードの各数字を入力する手指の識別情報とが対応付けられて登録されてものである。入力情報判定部203には、先のステップS1のユーザ確認の際に登録済みと判定されたユーザのPINコード及び指識別情報がメモリ部107から渡されており、したがって、入力情報判定部203は、ステップS27において、そのPINコードと当該PINコードの各数字に対応した指識別情報と、前記認証対象者が入力した数字とそれら数字が入力された際の指識別情報との一致判定を行う。
そして、ステップS27において、入力情報判定部203が前記認証対象者の入力数字とPINコードと指識別情報が全て一致したと判定したとき、制御部205は、ステップS10として、認証は確認(OK)されたとして認証OK処理を行う。すなわち、例えば図18に示すように、PINコードが例えば「1,7,6,4」であり、それらPINコードの数字に対して指識別情報「F0(親指),F4(小指),F1(人差し指),F3(薬指)」が登録されていたような場合において、認証対象者から、親指により「1」、小指により「7」、人差し指により「6」、薬指により「4」の数字が、その順に入力されたとき、制御部205は、認証OK処理を行う。これ以降の処理は前述の図5のフローチャートと同様である。一方、ステップS27において入力数字とPINコードと各指識別情報が完全に一致しなかったと判定された場合、制御部205は、ステップS12へ処理を進めて認証NG処理を行う。すなわち、PINコードが例えば「1,7,6,4」であり、それらPINコードの数字に対して指識別情報「F0,F4,F1,F3」が登録されていたような場合において、認証対象者から、例えば全て人差し指を用いて「1,7,6,4」の数字が入力されたとき、制御部205は、認証NG処理を行う。
なお、前述の説明では、5本の手指全てについて手指を識別する例を挙げたが、第2の実施形態の認証処理装置1は、必要とされるセキュリティレベル(セキュリティの度合い)に応じて、例えば手指2本のみを識別することにしたり、3本のみを識別するようなことも可能である。セキュリティレベルとしては、前述した第1の実施形態のように使用する手指を特定せずにPINコードの数字のみを入力するセキュリティレベルや、5本の手指のうち所定の2本や3本のみを識別するセキュリティレベル、5本の手指全てを識別するセキュリティレベルなどを挙げることができる。これらセキュリティレベルは、登録ユーザごとに設定してもよく、また、入室管理等される場所に応じて設定してもよい。例えばセキュリティレベルとして最高レベルが求められる場所やユーザに対しては、前記5本の手指全てを識別する設定とし、例えば最も緩いレベルでもよい場所やユーザに対しては、手指を特定しない設定とすることができる。
第2の実施形態の認証処理装置1によれば、前述の第1の実施形態で説明した認証処理装置1と同様に、実際に入力されている数字を、第三者に盗み見られたり、盗撮されたりすることが無くなり、非常に高いセキュリティ性を確保可能であり、また例えばフェイククリックが行われたときには第三者に何れの数字がPINコードの数字であるかを知られる虞がない。また、第2の実施形態の認証処理装置1によれば、第1の実施形態同様に、認証対象者は指先で実際にタッチパネル等に触れる必要がなく、したがって指紋パターンなどの痕跡が残らず、指紋パターンを盗まれることがない。さらに、第2の実施形態の認証処理装置1においても、第1の実施形態同様に、反射板51や光学結像プレート50を配した構成を用いれば、第三者によるPINコードの盗み見や盗撮を有効に防止することができる。また、第2の実施形態の認証処理装置1によれば、第1の実施形態同様に、暗い環境であっても、認証対象者はPINコードの入力が可能となる。
さらに、これら第1の実施形態同様の効果に加え、第2の実施形態の認証処理装置1においては、PINコードの各数字に対し、その数字を入力する手指を個々に登録可能となされているため、より高いセキュリティ性を実現できる。例えば、PINコードが4桁の数字であった場合、それら数字の組み合わせは10の4乗で10000通りしかないが、第2の実施形態のように、PINコードの4桁の各数字の入力に対して5本の手指の何れを使用するかを登録した場合、それらの組み合わせは10×5の4乗で6250000通りとなる。すなわち、第2の実施形態によれば、PINコードの4桁の数字のみを用いた場合と比較して、セキュリティ強度が625倍となり、正規のユーザになりすまして不正を行うことが非常に難しくなる。
また、第2の実施形態の認証処理装置1の場合、前述のようにセキュリティレベルの設定が可能となされているため、登録ユーザごと、また入出管理する場所等に応じてセキュリティの度合いを変えることができる。
なお、第2の実施形態において、詳細は後述する第3の実施形態で説明するが、それぞれ認識された指先31によりエアクリックが行われたか判断する際に使用する座標は、Z座標軸で予め固定的に決められた基準座標に限定されない。すなわち、エアクリックが行われたか判断する際に使用する座標は、例えば、認証対象者の手30の指先31がバーチャルタッチパネル40の三次元空間内で検出された後、その手30の指先31が三次元空間内で所定の時間だけ静止したときのそれぞれの指先31の各Z座標から、指先方向で且つZ軸方向にそれぞれ所定距離だけ離れた座標に設定することもできる。言い換えると、エアクリックの判定に使用される座標は、それぞれの指先31が三次元空間内で静止したときの各Z座標に応じた可変の座標として設定可能である。
<第3の実施形態>
前述の第1、第2の実施形態では、バーチャルタッチパネル40が、認証対象者に対して正対するように設定された例を挙げている。すなわち、第1、第2の実施形態は、例えば重力方向をY軸方向とした場合において、バーチャルタッチパネル40がX軸とY軸を含む仮想二次元平面として設定された例を挙げている。
これに対し、第3の実施形態では、バーチャルタッチパネル40の仮想二次元平面が、認証対象者から見て略々水平に設定される例について説明する。すなわち、第3の実施形態は、図19に示すように、例えば重力方向をY軸方向とした場合において、バーチャルタッチパネル40がX軸とZ軸を含む仮想二次元平面として設定された例を挙げる。図19に示した配置の場合、認証対象者から見たディスプレイ11と距離センサ20は、例えば図20に示すような配置関係となり、バーチャルタッチパネル40は、それらディスプレイ11と距離センサ20の上空側の三次元空間に設定されることになる。この図19の例のように、バーチャルタッチパネル40とディスプレイ11の表示面を、認証対象者から見て略々水平に設定した場合、認証対象者は、既存の銀行ATMを操作する場合と略々変わらぬ体勢で、バーチャルタッチパネル40に対する操作が可能となる。
なお、図19、図20の場合、認証対象者から見て、ディスプレイ11はその表示面が水平となるように設置され、同様に、距離センサ20はセンサ面20Fが水平となるように設置されているが、これはあくまで一例である。特に、バーチャルタッチパネル40の仮想二次元平面は、距離センサ20の有効範囲内であれば、例えば重力方向をY軸方向とした場合にそのY軸に対してどのような傾きであっても設定可能であり、X軸或いはZ軸に対しても同様にどのような傾きにも設定可能である。また、図19では、Y軸方向が重力方向と一致した例を挙げて説明しているが、Y軸方向は重力方向と一致している必要はなく、重力方向に対して傾いた軸として設定されていてもよい。これは第3の実施形態だけでなく、前述した第1、第2の実施形態においても同様である。
また、第3の実施形態の認証処理装置は、認証対象者の手30の指先31がバーチャルタッチパネル40の三次元空間内で検出された後、その手30の指先31が三次元空間内で静止した時間を計測している。そして、認証処理装置は、指先31が所定の時間(以下、静止判定時間と表記する。)だけ静止したことを検出したとき、各指先31のY座標から、それらの各指先方向で且つY軸方向にそれぞれ所定距離だけ離れた座標を、エアクリックが行われたか判断する際に使用する座標(以下、エアクリック判定座標と表記する。)として設定する。すなわち、第3の実施形態の場合、エアクリック判定座標は、指先31が三次元空間内で静止判定時間だけ静止したときのそれぞれの指先31のY座標に応じた可変の座標として設定される。
また、エアクリック判定座標は、前記設定されたY座標を中心として、X軸方向とZ軸方向の幅がそれぞれ所定の幅となされた判定エリアを有するように設定されることが望ましい。すなわち、指先31は、静止した状態からY軸方向へ動かされたとき、必ずしもY軸に正確に沿って動くとは限らないためであり、指先31がエアクリック判定座標に到達したことを有効に検出可能にするためである。
図21は、親指の指先座標FC0から所定距離DY0だけ離れたY座標値が親指用のエアクリック判定座標YS0として設定され、以下同様に、人差し指〜小指の各指先座標FC1〜FC4からそれぞれ所定距離DY1〜DY4だけ離れたY座標値がそれぞれ人差し指〜小指用のエアクリック判定座標YS1〜YS4として設定された状態を概念的に示している。エアクリック判定座標YS0〜YS4は、図21のようにX軸方向とZ軸方向が所定の幅となされた判定エリアを有している。
そして、第3の実施形態の認証処理装置は、各指先座標FC1〜FC4に対してそれぞれエアクリック判定座標YS0〜YS4を設定した後、何れかの指先座標FCがエアクリック判定座標YSに達するか又は越えたとき、エアクリックが行われたと判定する。一方、第3の実施形態において、エアクリック判定座標YS0〜YS4が設定された後、何れかの指先座標FCがエアクリック判定座標YS付近まで移動してもエアクリック判定座標YSにまで達していないか又は越えていない場合には、フェイククリックとなる。
なお、各指先座標FC0〜FC4からエアクリック判定座標YS1〜YS4までの所定距離DY0〜DY4は、一例として1.0cmとする。所定距離を1.0cmとしたのは、所定距離が1.0cmよりも短く設定されていたとすると、例えば薬指等でエアクリックがなされる場合において、その薬指の動きにより中指と小指も一緒に動いてしまい、それら中指と小指でもエアクリックがなされたと誤って判定されてしまう可能性を少なくするためである。もちろん、所定距離の1.0cmは一例であり、例えば親指や人差し指、中指などのように動かし易い手指に対する所定距離は長くし、薬指のように動かし難い手指に対する所定距離は短くするような設定であってもよい。また例えば、要求されるセキュリティレベルに応じて、各指先に対する所定距離が変更されてもよい。
また、指先31が静止したか否かを判断する静止判定時間は、一例として1秒間など予め決められた時間として設定される。静止判定時間が予め決められた時間に設定されている場合、指先31が静止した状態が静止判定時間以上になったことが検出されたときに、エアクリック判定座標が設定される。なお、静止判定時間は、各指先ごとに異なる時間に設定してもよいし、例えばセキュリティレベルに応じて異なる時間に設定してもよい。
以下、本発明の第3の実施形態の認証処理装置1について以下に説明する。図22は、第3の実施形態の情報処理装置10の概略的な構成を示している。図22の示した各構成は、本実施形態の情報処理装置10にて行われる各処理や制御、実際のハードウェア構成をそれぞれ機能ごとに分けた機能ブロックとして表したものである。なお、図22において、前述の図14と同じ機能ブロックには図14と同一の符号を付してそれらの説明は省略する。
第3の実施形態の情報処理装置10は、基本的な構成と処理は図14と略々同様であるが、図14のZ座標判定部215に代えてY座標判定部255を備えており、また制御部250の処理も一部が異なる。また、第3の実施形態の場合、ディスプレイ11の画面上にランダム配置されるキー画像12とバーチャルタッチパネル40内に配される仮想キーV12の対応関係、認証対象者の各手指の認識と、エアクリックに使用される手指と4桁のPINコードとの対応付けによる個人認証等については第2の実施形態と同様であるが、バーチャルタッチパネル40、距離センサ20、ディスプレイ11の配置関係等は図19〜図21で示したようになされている。
また、図23には、第3の実施形態においてPINコードを用いた個人認証が行われる際の情報処理装置10の処理及び制御の流れをフローチャートにより示している。なお、図23において、前述の図15と同じ処理ステップには図15と同一の符号を付してそれらの説明は省略する。以下、図22の各構成の動作及び処理と制御について、図23のフローチャートを参照しながら説明する。
図23において、ステップS1からステップS22を経てステップS31に進むと、制御部250は、指先座標情報取得部214がフレームごとに取得している各指先の座標情報から、認証対象者の手30の指先31が三次元空間内で静止した時間を計測し、指先31が静止判定時間だけ静止したか判定する。制御部250は、指先31が静止判定時間になるまで静止していないと判断している間は、ステップS22へ処理を戻し、静止判定時間以上静止したことを検出すると、ステップS32へ処理を進める。
ステップS32へ処理を進めると、制御部250は、指識別情報取得部213からの指識別情報と指先座標情報取得部214からの指先の座標情報とにより識別されている手指の指先の座標が、バーチャルタッチパネル40の三次元空間内に配置された何れかの仮想キーV12の座標と一致したか判断する。なお第3の実施形態の場合の一致判定は、指先のX,Z座標が、仮想キーV12のX,Z座標の範囲内であるかの一致判定となる。そして、制御部250は、前記識別されている手指の指先座標が、仮想キーV12の座標に一致したと判断したときにはステップS33へ処理を進め、一致していないと判断したときにはステップS22へ処理を戻す。なお、ステップS32の判断の際も、前述の第1の実施形態で説明したのと同様に、仮想キーV12の座標の周囲に所定の検出範囲を設けてもよい。
ステップS33へ処理を進めると、制御部250は、前述のように、指先31のY座標から指先方向で且つY軸方向に所定距離だけ離れたエアクリック判定座標を設定する。そして、制御部250は、設定したエアクリック判定座標の情報をY座標判定部255へ渡す。そして、Y座標判定部255は、指先31の座標がエアクリック判定座標に達したか又は超えたとき、その旨を示すY座標判定結果を制御部250へ送る。
制御部250は、指先31の座標がエアクリック判定座標に達した旨のY座標判定結果を受け取ると、ステップS34の処理としてエアクリックが行われたと判断した後、ステップS25へ処理を進める。一方指先31の座標がエアクリック判定座標に達していないとき、制御部250は、ステップS22へ処理を戻す。ステップS25以降の処理は図15のフローチャートと同様であり、その説明は省略する。
なお、この第3の実施形態においても前述の第2の実施形態同様に、必要とされるセキュリティレベル(セキュリティの度合い)に応じて認識する手指の本数を変更してもよく、また、セキュリティレベルを登録ユーザごとに設定してもよく、入室管理等される場所に応じて設定してもよい。
第3の実施形態の認証処理装置1によれば、前述の第1,第2の実施形態で説明したのと同様の効果を得ることができる。また、第3の実施形態の認証処理装置1においては、認証対象者は既存の銀行ATM等を操作する場合と略々変わらぬ体勢でバーチャルタッチパネル40に対する操作が可能となり、さらに、エアクリック判定座標の設定によりエアクリックの誤判定を少なくすることができる。
<第4の実施形態>
次に、本発明の第4の実施形態の認証処理装置1について以下に説明する。なお、第4の実施形態の認証処理装置1の概観は前述の図1と同様であり、また情報処理装置10の概略的な構成は前述の第2の実施形態の図14や第3の実施形態の図22と同様であるため、それらの図示は省略する。第4の実施形態の認証処理装置1は、認証対象者の手の5本の手指をそれぞれ個別に認識し、その中の所定の手指によりエアクリックが行われたかを認識し、所定の手指によるエアクリックが行われた際に、手の5本全ての手指にそれぞれ対応した各仮想キーV12の各数字等の情報を取得する。以下、第4の実施形態について、前述した第2,第3の実施形態とは異なる部分のみ説明する。
ここで、第4の実施形態の場合、情報処理装置10は、PINコードの入力がなされる際に、認証対象者が所定の手指(本実施形態では人差し指とする。)によりエアクリックが行われた場合、5本の手指の識別情報と共に、そのエアクリック時点における5本の全ての手指の指先がそれぞれ位置している仮想キーV12の各数字の情報をも取得する。なお、エアクリックしていない残りの手指の指先がいずれの仮想キーV12内にも入っていない場合には、各仮想キーV12のいずれの数字でもないことを示す情報を取得する。本実施形態では、各仮想キーV12のいずれの数字でもないことを示す情報として記号#を用いることにする。第4の実施形態の場合、各仮想キーV12外のエリア、つまりディスプレイ11の画面に表示されている画像におけるキー画像12外の画像エリアは、各仮想キーV12のいずれの数字でもないことを示す情報(記号#)に対応した選択対象画像のエリアとなされている。
そして、第4の実施形態の情報処理装置10は、エアクリックを行った1本の手指(人差し指)の指識別情報及びその指先に対応した仮想キーV12の数字と、エアクリックしていない残り4本の手指の各識別情報及びそれらの指先の位置に対応した四つの情報(数字や記号#等からなる四つ情報)とからなる五つの情報を、例えば4桁のPINコードのうちの一つのコードを決める際の候補コード(候補配列)として取得する。
図24(a)〜図24(d)には、第4の実施形態において、バーチャルタッチパネル40の三次元空間内に配置された各仮想キーV12と、バーチャルタッチパネル40内における認証対象者の親指〜小指の五つの各指先F0〜F4の位置の一例を示している。なお、各仮想キーV12内の各数字は、それら各仮想キーV12に各々対応付けられている数字であるとする。図の例では、説明を判り易くするために、各仮想キーV12に対応した各数字が0〜9の順に配置されているが、前述の各実施形態で説明したのと同様にそれらの数字はランダムに配置されてもよい。図24(a)〜図24(d)において、エアクリックを行うのは人差し指であり、一方、図24(a)〜図24(d)の円マークECは、順番に人差し指によるエアクリックがなされた各時点において、正しいPINコードとして登録されている各数字に対応した仮想キーV12を示している。
図24(a)の例は、4桁のPINコードのうち、1番目のコード(PIN=1)が入力される際(1回目のエアクリックがなされた際)の、5つの指先F0〜F4の位置の例を示している。また、図24(a)の例では、人差し指(F1)による1回目のエアクリックがなされた時点で、入力されるべき正しいPINコード(1番目のPINコード)が数字「1」で且つその数字「1」を入力するべき手指が中指(F2)として予め登録されているとする。図24(a)の例では、例えば親指の指先F0が数字「3」の仮想キーV12内に位置し、以下同様に、人差し指の指先F1が数字「0」、中指の指先F2が数字「1」、薬指の指先F3が数字「2」、小指の指先F4が数字「6」の仮想キーV12内に位置している。したがって、図25に示すように、4桁のPINコードのうち、1番目のコード(PIN=1)を決める際の候補コードは、親指〜小指の各指先F0〜F4に対応した五つのコード「3,0,1,2,6」となる。
また、図24(b)の例は、4桁のPINコードのうち、2番目のコード(PIN=2)が入力される際(2回目のエアクリックがなされた際)の、5つの指先F0〜F4の位置の例を示している。また、図24(b)の例では、人差し指(F1)による2回目のエアクリックがなされた時点で、入力されるべき正しいPINコード(2番目のPINコード)が数字「5」で且つその数字「5」を入力するべき手指が薬指(F3)として予め登録されているとする。図24(b)の例では、例えば親指の指先F0が仮想キーV12外となっており、人差し指の指先F1が数字「3」の仮想キーV12内に位置し、以下同様に、中指の指先F2が数字「4」、薬指の指先F3が数字「5」、小指の指先F4が数字「9」の仮想キーV12内に位置している。したがって、図25に示すように、4桁のPINコードのうち、2番目のコード(PIN=2)を決める際の候補コードは、親指〜小指の各指先F0〜F4に対応した五つのコード「#,3,4,5,9」となる。
同様に、図24(c)の例は、4桁のPINコードのうち、3番目のコード(PIN=3)が入力される際(3回目のエアクリックがなされた際)の、5つの指先F0〜F4の位置の例を示している。また、図24(c)の例では、人差し指(F1)による3回目のエアクリックがなされた時点で、入力されるべき正しいPINコード(3番目のPINコード)が数字「3」で且つその数字「3」を入力するべき手指が人差し指(F1)として予め登録されているとする。図24(c)の例では、例えば親指の指先F0が仮想キーV12外、人差し指の指先F1が数字「3」、中指の指先F2と薬指の指先F3が共に数字「4」、小指の指先F4が数字「8」の仮想キーV12内に位置している。したがって、図25に示すように、4桁のPINコードのうち、3番目のコード(PIN=3)を決める際の候補コードは、親指〜小指の各指先F0〜F4に対応した五つのコード「#,3,4,4,8」となる。
同様に、図24(d)の例は、4桁のPINコードのうち、4番目のコード(PIN=4)が入力される際(4回目のエアクリックがなされた際)の、5つの指先F0〜F4の位置の例を示している。また、図24(c)の例では、人差し指(F1)による4回目のエアクリックがなされた時点で、入力されるべき正しいPINコード(4番目のPINコード)が数字「8」で且つその数字「8」を入力するべき手指が小指(F4)として予め登録されているとする。図24(d)の例では、親指の指先F0が仮想キーV12外、人差し指の指先F1が数字「3」、中指の指先F2と薬指の指先F3が共に数字「4」、小指の指先F4が数字「8」の仮想キーV12内に位置している。したがって、図25に示すように、4桁のPINコードのうち、4番目のコード(PIN=4)を決める際の候補コードは、親指〜小指の各指先F0〜F4に対応した五つのコード「#,3,4,4,8」となる。
第4の実施形態の情報処理装置10は、前述のように、4桁のPINコードの1番目のコード(PIN=1)〜4番目のコード(PIN=4)を決めるための4回のエアクリックがなされた場合、エアクリックがなされるごとに、それぞれ各指先F0〜F4に対応した五つの候補コードを取得する。そして、これら五つの候補コードにおける各数字には、各指先F0〜F4の各手指の識別情報が対応付けられている。
図24(a)〜図24(d)及び図25の例の場合、PINコードの1番目のコード(PIN=1)を決めるために取得された候補コード「3,0,1,2,6」の中で、PIN=1に登録された数字は「1」であり、その数字「1」に対応した手指は中指(F2)となされている。以下同様に、PINコードの2番目のコード(PIN=2)を決める際に取得された候補コード「#,3,4,5,9」の中で、PIN=2に登録された数字は「5」であり、その数字「5」に対応した手指は薬指(F3)となされており、PIN=3を決める際に取得された候補コード「#,3,4,4,8」の中で、PIN=3に登録された数字は「3」であり、その数字「3」に対応した手指は人差し指(F1)となされており、PIN=4を決める際に取得された候補コード「#,3,4,4,8」の中で、PIN=4に登録された数字は「8」であり、その数字「8」に対応した手指は小指(F4)となされている。
このため、図24(a)〜図24(d)及び図25の例の場合、4回のエアクリックによる入力順の4桁のPINコードとして「1,5,3,8」が取得され、また1回目のエアクリックによるコード「1」については中指(F2)の指識別情報が得られ、2回目のエアクリックによるコード「5」については薬指(F3)、3回目のエアクリックによるコード「3」については人差し指(F1)、4回目のエアクリックによるコード「8」については小指(F4)の各指識別情報が得られる。ここで、本実施形態では、認証対象者について登録されているPINコードが例えば「1,5,3,8」の順であり、それら各コードに対応した指識別情報の順番が「中指(F2)、薬指(F3)、人差し指(F1)、小指(F4)」となされているため、その登録されたPINコード及び指識別情報と、図24(a)〜図24(d)及び図25の例で4回のエアクリックにより得られたPINコード及び指識別情報とは一致し、したがって、その認証対象者は正当な登録者であると認証されることになる。
また前述したように、第4の実施形態の場合、4桁のPINコードの1番目のコード(PIN=1)〜4番目のコード(PIN=4)を決めるための4回のエアクリックがなされた際に、エアクリックごとに五つの候補コードが取得される。ここで、第4の実施形態の場合、エアクリックごとに取得された五つの候補コードのなかで、予め登録されている手指に対応した一つの候補コードのみが入力されたコードとして扱われ、それ以外の四つの手指による四つの各候補コードは全てフェイクコードとして扱われる。また、第4の実施形態の場合、エアクリックは所定の手指である人差し指のみで行われ、登録されたコードを入力する手指が人差し指として登録されていない場合には、そのエアクリックを行った人差し指によるエアクリック自体がフェイクとなる。図24(a)〜図24(d)及び図25の例の場合、1回目のエアクリックでは、中指(F2)に対応した数字「1」のみが入力されたコードとして扱われ、残りの親指(F0)に対応した数字「3」、エアクリックを行った人差し指(F1)に対応した数字「0」、薬指(F3)に対応した数字「2」、小指(F0)に対応した数字「6」は全てフェイクコードとして扱われる。同様に、2回目のエアクリックでは、薬指(F3)に対応した数字「5」のみが入力されたコードとなされ、残りの親指(F0)による記号「#」、エアクリックを行った人差し指(F1)による数字「3」、中指(F2)による数字「4」、小指(F0)による数字「9」は全てフェイクコードとして扱われる。3回目と4回目のエアクリックについても同様のことが行われる。
このように、第4の実施形態によれば、エアクリック自体がフェイクとして扱われ、五つの候補コードのなかで入力コードとして扱われるのは、予め登録された手指により選ばれた一つの候補コードのみであり、残りの四つの各候補コードは全てフェイクコードとなされる。第4の実施形態によれば、4桁のPINコードの1番目のコード(PIN=1)〜4番目のコード(PIN=4)を決めるための4回のエアクリックごとに五つの候補コードが取得されるため、PINコードの候補は、5×4×4×4=320通りとなる。このため、例えば悪意を持った者によりハッキング等が行われたとしても、登録されたPINコードがどのようなコードであるかを知られてしまう虞は非常に少ない。
第4の実施形態の情報処理装置10では、概ね前述した図15や図23のフローチャートで説明したのと同様の流れで認証処理が行われるが、第4の実施形態の場合には、図15や図23のステップS25の処理が異なる。以下、以下、第4の実施形態における認証処理について、図15や図23のフローチャートとは異なる処理について説明する。
第4の実施形態の場合、図15や図23のステップS25で説明した処理に代えて、制御部205は、入力情報判定部203に対し、前述したような人差し指による1回目〜4回目のエアクリックがなされた際の5本の手指により取得された候補コードを、配列PIN(M,N)として保管させる。「M」は1回目〜4回目のエアクリックの回数(PIN=1〜PIN=4における「1〜4」)の値となる。そして、制御部205は、入力情報判定部203に対し、配列PIN(M,N)の「M」に「1」を加えて、ステップS26へ処理を進める。第4の実施形態の場合、ステップS26に処理が進むと、制御部205は、入力情報判定部203が保管している配列PIN(M,N)の「M」が「4」となったか否か判定する。
ここで、配列PIN(M,N)の「N」は、各手指に対応した値として親指の場合は「1」、人差し指の場合は「2」、中指の場合は「3」、薬指の場合は「4」、小指の場合は「5」の値となり、また「N」が「1:5」と表現される場合には5本の手指による個々の数字や記号が入ることを表す。
一例として、前述の図24(a)〜図24(d)及び図25を用いて説明する。
1回目の人差し指によるエアクリックがなされた際、配列PIN(1,1)が「3」、配列PIN(1,2)が「0」、配列PIN(1,3)が「1」、配列PIN(1,4)が「2」、配列PIN(1,5)が「6」となり、この場合、PIN(1,1:5)は(3,0,1,2,6)となる。
2回目の人差し指によるエアクリックがなされた際、配列PIN(2,1)が「#」、配列PIN(2,2)が「3」、配列PIN(2,3)が「4」、配列PIN(2,4)が「5」、配列PIN(2,5)が「9」となり、この場合、PIN(2,1:5)は(#,3,4,5,9)となる。
3回目の人差し指によるエアクリックがなされた際、配列PIN(3,1)が「#」、配列PIN(3,2)が「3」、配列PIN(3,3)が「4」、配列PIN(3,4)が「4」、配列PIN(3,5)が「8」となり、この場合、PIN(3,1:5)は(#,3,4,4,8)となる。
4回目の人差し指によるエアクリックがなされた際、配列PIN(4,1)が「#」、配列PIN(4,2)が「3」、配列PIN(4,3)が「4」、配列PIN(4,4)が「4」、配列PIN(4,5)が「8」となり、この場合、PIN(4,1:5)は(#,3,4,4,8)となる。
これら1回目〜4回目のエアクリックがなされた際の4回の候補コード入力の結果は、
PIN(1,1:5)=(3,0,1,2,6)、
PIN(2,1:5)=(#,3,4,5,9)、
PIN(3,1:5)=(#,3,4,4,8)、
PIN(4,1:5)=(#,3,4,4,8)となる。
このような組み合わせは前述したように320通りになり、そのうち正しいPINコードは一つのみ、すなわち、一回目のエアクリックの際にはPIN(1,3)=「1」、2回目のエアクリックではPIN(2,4)=「5」、3回目のエアクリックではPIN(3,2)=「3」、4回目のエアクリックではPIN(4,5)=8であり、したがって、この例の場合の入力されたPINコードは「1,5,3,8」となる。
そして、第4の実施形態において、制御部205は、図15や図23のステップS27において、エアクリックが行われた順番のPIN(M,N)で得られた各候補コード及び指識別情報と、予め登録されているPINコード及び指識別情報との一致判定を行う。第4の実施形態の場合、1番目のPINコード「1」に対しては中指、2番目のPINコード「5」に対しては薬指、3番目のPINコード「3」に対しては人差し指、4番目のPINコード「8」に対しては小指が登録されており、ステップS27では、それらPINコード「1,5,3,8」と各登録された手指とが一致するか否かの判断が行われる。
<第5の実施形態>
前述した第4の実施形態では、PINコードとして仮想キーV12に対応した数字のみが用いられる例を挙げたが、第5の実施形態では、仮想キーV12外のエリアに対応した前述の記号「#」をもPINコードとして扱う。第5の実施形態の場合、各仮想キーV12外のエリア、つまりディスプレイ11の画面に表示されている画像におけるキー画像12外の画像エリアが、各仮想キーV12の各数字以外のコード(記号#)が設定された選択対象画像となされている。したがって、第5の実施形態の情報処理装置10は、各仮想キーV12外のエリアに対応した記号#のコードをもユーザによる選択(入力)が可能となされている。
図26(a)〜図26(d)及び図27には、第5の実施形態のように仮想キーV12外のエリアに対応した記号「#」が、PINコードの中の一つのコードとして登録された場合の認証例を示している。なお、第5の実施形態は、前述した第4の実施形態に対して、仮想キーV12外の記号「#」をPINコードの中の一つのコードとして扱うようにした場合の例である。
図26(a)〜図26(d)は、第5の実施形態において、前述の図24(a)〜図24(d)の例と同様に、各仮想キーV12と、認証対象者の各指先F0〜F4の位置の一例を示している。図26(a)〜図26(d)の円マークECは、それぞれPINコードとして登録されている数字に対応した仮想キーV12を示すために描かれている。
図26(a)の例は、4桁のPINコードのうち、人差し指による1回目のエアクリックがなされた際、つまり1番目のコード(PIN=1)の入力がなされる際の各指先F0〜F4の位置の例を示している。図26(a)の例では、人差し指(F1)による1回目のエアクリックがなされた時点で、入力されるべき正しいPINコード(1番目のPINコード)が数字「1」で且つその数字「1」を入力するべき手指が中指(F2)として予め登録されているとする。図26(a)の例では、親指(F0)が数字「3」、人差し指(F1)が数字「0」、中指(F2)が数字「1」、薬指(F3)が数字「2」、小指(F4)が数字「6」を指している。このため、図27に示すように、1番目のコード(PIN=1)を決める際の候補コードは「3,0,1,2,6」となる。
図26(b)の例は、2回目のエアクリックがなされた際、つまり2番目のコード(PIN=2)の入力がなされる際の各指先F0〜F4の位置の例を示している。図26(b)の例では、人差し指(F1)による2回目のエアクリックがなされた時点で、入力されるべき正しいPINコード(2番目のPINコード)が記号「#」で且つその記号「#」を入力するべき手指が親指(F0)として予め登録されているとする。図26(b)の例では、親指(F0)が仮想キーV12外、人差し指(F1)が数字「7」、中指(F2)が数字「8」、薬指(F3)が数字「9」、小指(F4)が仮想キーV12外を指している。このため、図27に示すように、2番目のコード(PIN=2)を決める際の候補コードは「#,7,8,9,#」となる。
図26(c)の例は、3回目のエアクリックがなされた際、つまり3番目のコード(PIN=3)が入力された際の各指先F0〜F4の位置の例を示している。図26(c)の例では、人差し指(F1)による3回目のエアクリックがなされた時点で、入力されるべき正しいPINコード(3番目のPINコード)が数字「3」で且つその数字「3」を入力するべき手指が人差し指(F1)として予め登録されているとする。図26(c)の例では、親指(F0)が仮想キーV12外、人差し指(F1)が数字「3」、中指(F2)が数字「4」、薬指(F3)が数字「5」、小指(F4)が数字「9」を指している。このため、図27に示すように、3番目のコード(PIN=3)を決める際の候補コードは「#,3,4,5,9」となる。
図26(d)の例は、4回目のエアクリックがなされた際、つまり4番目のコード(PIN=4)が入力された際の各指先F0〜F4の位置の例を示している。図26(d)の例では、人差し指(F1)による4回目のエアクリックがなされた時点で、入力されるべき正しいPINコード(4番目のPINコード)が数字「8」で且つその数字「8」を入力するべき手指が小指(F4)として予め登録されているとする。図26(d)の例では、親指(F0)と人差し指(F1)が共に仮想キーV12外、中指(F2)が数字「3」、薬指(F3)が数字「4」、小指(F4)が数字「8」を指している。このため、図27に示すように、4番目のコード(PIN=4)を決める際の候補コードは「#,#,3,4,8」となる。
図26(a)〜図25(d)及び図27の例の場合、1回目のエアクリックの際に取得されたPIN=1の各候補コード「3,0,1,2,6」の中で、PIN=1に登録された数字は「1」であり、その数字「1」に対応した手指は中指(F2)となされている。以下同様に、2回目のエアクリックの際に取得されたPIN=2の各候補コード「#,7,8,9,#」の中で、PIN=2に登録されているのは記号「#」であり、その記号「#」に対応した手指は親指(F0)となされており、3回目のエアクリック(PIN=3)の際に取得された候補コード「#,3,4,5,9」の中で、PIN=3に登録されているのは数字「3」であり、その数字「3」に対応した手指は人差し指(F1)となされており、4回目のエアクリック(PIN=4)の際に取得された各候補コード「#,#,3,4,8」の中で、PIN=4に登録されているのは数字「8」であり、その数字「8」に対応した手指は小指(F4)となされている。
このため、図26(a)〜図26(d)及び図27の例の場合、4回のエアクリックによる入力順の4桁のPINコードとして「1,#,3,8」が取得され、また1番目のPINコード「1」については中指(F2)、2番目のPINコード「5」については親指(F0)、3番目のPINコード「3」については人差し指(F1)、4番目のPINコード「8」については小指(F4)の各指識別情報が得られる。そして、認証対象者について登録されているPINコードが例えば「1,#,3,8」の順であり、それら各コードに対応した指識別情報の順番は「中指(F2)、親指(F0)、人差し指(F1)、小指(F4)」として登録されていた場合、その登録されたPINコード及び指識別情報と、図26(a)〜図26(d)及び図27の例で得られたPINコード及び指識別情報とは一致するため、その認証対象者は正当な登録者であると認証されることになる。
第5の実施形態の場合、前述の第4の実施形態と同様の効果が得られるだけでなく、仮想キーV12外のエリアについても、PINコードの中の一つのコードとして扱っているため、4桁のPINコードに対し、5の4乗=625通りの候補コードが取得され、第4の実施形態の場合の320通りより更に、ハッキング等に対する耐性が高くなる。なお、第5の実施形態の場合のフローチャートは、前述の第4の実施形態の場合と略々同様であるため、その説明は省略する。
<その他の実施形態>
前述した各実施形態では、認証対象者の手30若しくは指先31が三次元空間内で所定の時間だけ静止したときに、指先方向に所定距離だけ離れた座標をエアクリック判定のための座標として設定可能となされているが、他の例として、前記静止したと判定された後に、例えば幾つかの指先31が移動した場合、それら移動した指先31の中で移動量が最も大きい指によりエアクリックがなされたと判定してもよい。すなわち、前述の図22の構成を例に挙げて説明すると、前記認証対象者により所望の仮想キーV12に所定の指先31が合わされた状態で、前述のように手30等が所定の時間だけ静止された後に、親指から小指までの手指の指先31が三次元空間内で動いた場合、制御部250は、それらの移動量(座標の変化量)をそれぞれ比較して、変化量が最も大きい指先31によりエアクリックが行われたと判定する。すなわち、この場合における前記変化量が最も大きい指先31は、前記所望の仮想キーV12に合わせられていた所定の指先31であり、認証対象者は、その指先31を大きく動かすことなく、少ない動きでエアクリックを行えることになる。またこの例の場合、例えば認証対象者の肩越しに第三者が覗き見ていたとしても、認証対象者の指先の動きは少なく、また複数の指先が同時に動いているため、どの指でエアクリックが行われたのかを第三者は知ることができない。この例は、前述の各実施形態に適用可能である。
前述した各実施形態の認証処理装置1は、例えば銀行ATMや研究所等のような高度なセキュリティ管理が必要とされるシステムに適用可能である。図28には、各実施形態の個人認証が適用され、サーバによりセキュリティ管理がなされるシステムの概略的な構成例を示している。
図28のセキュリティシステムにおいて、サーバ300は、大別してシステム情報蓄積部301、システム制御部302、ネットワークI/F部303を有して構成されている。ネットワークI/F部303は、ネットワーク304を介して、サーバ300によりセキュリティ管理がなされる端末310との間で通信可能となされている。各端末310には前述した距離センサ20が併設されている。システム制御部302は、このセキュリティシステム全体を制御し、また、ネットワーク304を通じて接続されている端末310との間で送受信される情報の管理等も行う。
サーバ300内のシステム情報蓄積部301は、システム全体を管理するための様々な情報とともに、このセキュリティシステムに登録されている全てのユーザの前記ユーザ情報と、全ユーザのPINコードの情報と、前述した指識別情報とからなる前述のテーブル情報を蓄積している。このセキュリティシステムの場合、各端末310は、全ユーザのテーブル情報を内部に保持しておらず、認証対象者の個人認証が行われる際に当該認証に必要となる情報のみを、ネットワーク304を介してサーバ300から取得する。そして端末310は、距離センサ20の出力信号に対して前述の距離センサ出力解析部と同様の解析のみ行い、サーバ300は、その解析情報を用いて前述した各実施形態同様にして認証対象者の個人認証を行う。そして、認証対象者が正規のユーザであると判定したとき、サーバ300は、その認証対象者に対して、例えば銀行ATMを使用した入出金等の操作を許可したり、室内への出入りを許可(解錠等)したりする。
なお、前述した情報処理装置10のように端末310が個人認証まで行う場合、前述のステップS1にて認証対象者が登録ユーザであると確認できたとき、当該端末310は、サーバ300に蓄積されている全ての登録ユーザのテーブル情報の中で、ステップS1で確認したユーザ用に登録されているPINコードと指識別情報のみをサーバ300から受け取る。そして、認証対象者が正規のユーザであると端末310で判定されたとき、サーバ300は、その認証対象者に対して、例えば銀行ATMを使用した入出金等の操作や室内への出入りを許可(解錠等)する。
また、第2〜第5の実施形態では、手の5本の手指を認識する例を挙げたが、例えば左右の手をそれぞれ識別し、さらにそれら左右の手の各5本の手指を個別に識別することも可能である。左右の手の識別は、例えば前述の図16に示したモデルを例に挙げた場合、親指に相当する指オブジェクトF0が左側になっており、小指に相当する指オブジェクトF4が右側になっているような場合、右手であると認識することができる。同様に、親指の指オブジェクトF0が左側で、小指の指オブジェクトF4が右側の場合、左手であると認識することができる。このように、左右の手と合計10本の手指の全てを識別可能とした場合は、片手の5本の手指を用いる場合よりも更に高いセキュリティレベルを設定することが可能となる。
また、前述した各実施形態では、PINコードの数字をバーチャルタッチパネル40により入力する例を挙げているが、本発明は数字の入力に限定されず他の文字やアイコンなどをバーチャルタッチパネル40により入力することで個人認証を行う場合にも適用可能である。
また、前述の実施形態ではバーチャルタッチパネル40は仮想二次元パネルとなされているが、三次元的な奥行きを有した仮想三次元パネルであってもよく、この場合、一例として各仮想キーV12を当該仮想三次元パネル内のZ軸方向の異なる場所に配置してもよい。さらにこの場合、前記基準座標やエアクリック判定座標は、仮想キーV12ごとに設定されていてもよく、それら仮想キーV12ごとに設定されている基準座標やエアクリック判定座標に対してエアクリックが行われたときに、当該仮想キーV12の入力がなされたと判断してもよい。またこの例の場合、ディスプレイ11に表示されるキー画像12は、前記仮想三次元パネル内に配された仮想キーV12の奥行きに合わせて、その表示の大きさを変更して、仮想キーV12の奥行きを認証対象者に推測できるようにしてもよい。すなわち、例えば仮想キーV12が奥行き方向の近い場所に配置されるときには、ディスプレイ11上の該当するキー画像12を大きく表示し、逆に仮想キーV12が遠い場所に配置されるときには、該当するキー画像12を小さく表示すれば、認証対象者は、ディスプレイ11のキー画像12の大きさにより、仮想キーV12の奥行き方向の配置場所を推測しやすくなると考えられる。
なお、本実施形態では、バーチャルタッチパネル40上の所望の位置を指示する所定動作として、当該所望の位置を指先31等の先端部で押す(或いは、押し込む、突く)動作を例に挙げたが、例えば指先31で弾く動作(フリック動作)や触れる動作(タッチ動作)などであってもよい。
その他、本発明は、以下の処理を実行することによっても実現される。すなわち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記録媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。このプログラム及び当該プログラムを記憶したコンピュータ読み取り可能な記録媒体は、本発明に含まれる。
なお、上述した本発明の実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。