はじめに、一実施形態の概要について説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、この概要の記載はなんらの限定を意図するものではない。また、特段の釈明がない場合には、各図面に記載されたブロックはハードウェア単位の構成ではなく、機能単位の構成を表す。各図におけるブロック間の接続線は、双方向及び単方向の双方を含む。一方向矢印については、主たる信号(データ)の流れを模式的に示すものであり、双方向性を排除するものではない。なお、本明細書及び図面において、同様に説明されることが可能な要素については、同一の符号を付することにより重複説明が省略され得る。
一実施形態に係る生体認証制御ユニット100は、被認証者検出部101と、要求部102と、追跡制御部103と、通知部104と、を備える(図1参照)。被認証者検出部101は、被認証者を検出する。要求部102は、被認証者の生体情報を含む認証要求をサーバ装置に送信する。追跡制御部103は、測距センサを用いて追跡対象者を追跡する追跡ユニットに対し、被認証者の位置情報を含む追跡開始指示を送信すると共に、追跡ユニットから追跡結果を取得する。通知部104は、サーバ装置による被認証者の生体認証の結果と、追跡ユニットによる追跡結果と、に基づいて被認証者がゲート装置を通行できるか否か判定し、判定結果をゲート装置に通知する。
生体認証制御ユニット100は、ゲート装置から離れた位置の利用者を被認証者として検出する。生体認証制御ユニット100は、被認証者を検出すると、当該被認証者の生体認証と追跡(トラッキング)を開始する。具体的には、生体認証制御ユニット100は、サーバ装置に被認証者の生体認証を依頼し、追跡ユニットに当該被認証者の追跡を依頼(指示)する。生体認証制御ユニット100は、被認証者の追跡が完了すると(例えば、被認証者がゲート装置に進入した事実を追跡ユニットから取得すると)、被認証者の認証結果を確認する。生体認証制御ユニット100は、追跡の完了した被認証者の生体認証が成功していると、当該被認証者がゲート装置を通行することを許可する。換言すれば、被認証者の横から割り込んできた利用者に関しては、生体認証がサーバ装置に要求されず、且つ、追跡が完了することもないので、当該利用者はゲート装置を通過することができない。即ち、利用者の通行は適切に制御される。
ここで、被認証者の追跡に関し、被認証者が写る画像データを用いることが考えられる。しかし、発明者らが鋭意検討した結果、画像データを用いた被認証者の追跡では十分な追跡精度が得られないことが判明した。具体的には、画像データを用いた追跡では、画像内の位置に基づいて追跡対象者を決定するため、利用者が重なった場合等に正確な追跡が行なえないことが分かった。生体認証制御ユニット100は、測距センサ(例えば、3次元距離センサ;3D LiDAR)を用いた追跡を行う追跡ユニットに被認証者の追跡を指示することで、上記のような問題を解決する。即ち、測距センサを使った被認証者の追跡により当該被認証者の正確な現在位置が把握されるので、被認証者が重なった場合等であっても、ゲート装置を通過する権限のない利用者は確実に排除される。生体認証制御ユニット100は、画像データから被認証者を抽出し、当該抽出した被認証者の追跡を、測距センサを制御する追跡ユニットに行わせることで、利用者の通行を適切に制御する。
以下に具体的な実施形態について、図面を参照してさらに詳しく説明する。
[第1の実施形態]
第1の実施形態について、図面を用いてより詳細に説明する。
[システム構成]
図2は、第1の実施形態に係る認証システムの概略構成の一例を示す図である。図2を参照すると、認証システムは、複数のゲート装置10-1~10-3と、サーバ装置20と、を含む。
以降の説明において、ゲート装置10-1~10-3を区別する特段の理由がない場合には、単に「ゲート装置10」と表記する。他の構成についても同様に、ハイフンより左側の符号にて当該構成を代表して表記する。
ゲート装置10とサーバ装置20は、有線又は無線の通信手段により通信が可能に構成されている。サーバ装置20は、ゲート装置10と同じ建物内に設置されていてもよいし、ネットワーク(クラウド)上に設置されていてもよい。
ゲート装置10は、例えば、空港や駅に設置される装置である。ゲート装置10は、利用者の通行を制御する。第1の実施形態では、ゲート装置10は、駅に設置される改札機として説明を行う。ただし、ゲート装置10を駅に設置された改札機に限定する趣旨ではないことは勿論である。
サーバ装置20は、認証システムの全体を制御する装置である。サーバ装置20は、ゲート装置10を通過しようとする利用者の生体認証を行う装置である。サーバ装置20は、利用者がゲート装置10を通過する資格(権限)を備えていれば、当該利用者の通行を許可する。サーバ装置20は、利用者がゲート装置10を通過する資格を備えていなければ、当該利用者の通行を拒否する。
[システムの動作概略]
続いて、図面を参照しつつ、第1の実施形態に係る認証システムの動作概略を説明する。
図3に示すように、ゲート装置10は、ゲート装置10に向かって歩いてくる利用者を撮影可能に設置されたカメラ11を備える。また、ゲート装置10は、自装置内に進入した利用者を検出するための検出センサ12と、利用者の通行を制御するためのゲート13と、を備える。
また、ゲート装置10は、生体認証制御ユニット14を備える。生体認証制御ユニット14は、ゲート装置10に後付け(アドオン)可能なユニットである。ゲート装置10と生体認証制御ユニット14は、例えば、USB(Universal Serial Bus)、PCI(Peripheral Component Interconnect)又はイーサネット(登録商標)等のバス規格で接続される。また、生体認証制御ユニット14は、カメラ11等と通信可能に構成されており、これらのデバイスを制御(使用)してゲート装置10の生体認証機能を実現する。
さらに、ゲート装置10は、追跡ユニット15を備える。追跡ユニット15も、ゲート装置10に後付け(アドオン)可能なユニットである。被認証者の追跡機能をゲート装置10に追加する場合に、追跡ユニット15はゲート装置10に取り付けられる。生体認証制御ユニット14と追跡ユニット15は、例えば、USB、イーサネット(登録商標)等のバス規格で接続される。また、追跡ユニット15は、物体の検出が可能な測距センサ16を制御可能に構成されており、当該デバイスを使用して利用者の追跡を実現する。
このように、第1の実施形態に係るゲート装置10には、生体認証制御ユニット14と追跡ユニット15が搭載されている。
測距センサ16は、空間中の物体までの距離をスキャンするセンサである。測距センサ16には、ステレオカメラ、TOF(Time Of Flight)方式の距離画像センサ、3次元距離センサ(3D LiDAR)等を用いることができる。
生体認証制御ユニット14は、ゲート装置10からみて前方の所定範囲内に存在する人物(利用者、乗客)を検出する。例えば、生体認証制御ユニット14は、図3の位置X1よりもゲート装置10に近くに存在する利用者を検出する。換言すれば、生体認証制御ユニット14は、ゲート装置10から遠くに存在する利用者を検出しない。
生体認証制御ユニット14は、利用者を検出すると、当該利用者を認証対象(被認証者)に設定する。例えば、図3の例では、利用者A1が被認証者に設定される。利用者A2は、ゲート装置10から離れているため、被認証者に設定されない。
生体認証制御ユニット14は、被認証者にID(IDentifier)を付与する。例えば、図3の例では、利用者A1に「ID_A1」が付与される。以降の説明において、被認証者を識別するためのIDを「被認証者ID」と表記する。
例えば、ゲート装置10に近い位置(例えば、位置X1)で利用者が検出されると、生体認証制御ユニット14は、サーバ装置20に対して当該検出された利用者の生体認証を要求する。具体的には、生体認証制御ユニット14は、利用者の生体情報及び被認証者IDを含む「認証要求」をサーバ装置20に送信する。
認証要求を受信したサーバ装置20は、事前に登録された生体情報を用いた照合処理(認証処理)により、利用者を特定する。サーバ装置20は、当該特定された利用者がゲート装置10を通行する資格を備えているか否か判定する。例えば、サーバ装置20は、事前登録された利用者のチャージ金額等を確認し、被認証者の通行可否を判定する。なお、サーバ装置20は、被認証者の通行可否の判定をする際、外部のサーバ等に問合せをする場合もある。外部サーバ等に問合わせるか否かはシステムの仕様、設計等に依存し、且つ、本願開示の趣旨とも異なるので当該外部サーバを含むシステムの構成に関する説明を省略する。
サーバ装置20は、認証要求に対する応答(認証結果)を当該要求の送信元である生体認証制御ユニット14に送信する。具体的には、サーバ装置20は、「通行可」と判定された場合には、「認証成功」を生体認証制御ユニット14に通知する。「通行不可」と判定された場合には、サーバ装置20は、「認証失敗」を生体認証制御ユニット14に通知する。
サーバ装置20は、生体認証の結果(認証成功、認証失敗)と共に、被認証者IDをゲート装置10に通知する。上記の例では、利用者A1の認証結果と共に、被認証者ID「ID_A1」がゲート装置10に通知される。
また、ゲート装置10は、認証要求の送信(認証の開始)と実質的に同じタイミングで、上記利用者(位置X1で検出された被認証者)の追跡(トラッキング)を開始する。具体的には、生体認証制御ユニット14は、追跡ユニット15に対して被認証者の追跡開始を指示する。
その際、生体認証制御ユニット14は、顔画像が抽出された利用者の位置(座標;X座標、Y座標)を推定する。例えば、生体認証制御ユニット14は、画像データに含まれる顔の位置、大きさから当該顔に対応する人物の位置(X座標、Y座標)を推定する。例えば、生体認証制御ユニット14は、「ID_A:X1、Y1」のように、顔画像が抽出された利用者(利用者の被認証者ID)ごとにその位置を推定する。
生体認証制御ユニット14は、顔画像が抽出された被認証者の位置情報と被認証者IDを追跡ユニット15に通知する。具体的には、生体認証制御ユニット14は、被認証者の位置情報と被認証者IDを含む「追跡開始指示」を追跡ユニット15に送信する。このように、生体認証制御ユニット14は、顔画像が抽出された位置(座標)に存在する利用者(対象物)が追跡対象であることを追跡ユニット15に設定する。
追跡ユニット15は、測距センサ16を用いてゲート装置10の周辺に存在する対象物を検出する。その後、追跡ユニット15は、生体認証制御ユニット14から通知された位置と実質的に同じ位置で検出された対象物(人と推定される物体)と被認証者IDを対応付けて管理する。
追跡ユニット15は、被認証者IDと対応付けられた人物を追跡する。図3の例では、利用者A1の位置(X1、Y1)と被認証者ID「ID_A1」が追跡ユニット15に通知され、追跡ユニット15は、利用者A1の追跡を開始する。
このように、生体認証制御ユニット14は、所定範囲内で被認証者を検出すると、サーバ装置20に対する認証要求と実質的に同じタイミングで、追跡ユニット15に被認証者の追跡を指示する。
サーバ装置20が認証要求を処理している間、被認証者(例えば、位置X1で撮影された利用者A1)はゲート装置10に向かって移動する。例えば、被認証者が位置X2の場所まで移動したタイミングで、生体認証制御ユニット14は、サーバ装置20から認証要求の応答を受信する。
生体認証制御ユニット14は、サーバ装置20から認証結果を受信しても当該タイミングではゲート13の開閉をゲート装置10に指示しない。
被認証者は、さらにゲート装置10に近づき、その内部に進入する(被認証者は、位置X3に到達する)。追跡ユニット15は、追跡対象者がゲート装置10に進入すると、当該追跡対象者の被認証者IDを生体認証制御ユニット14に通知する。具体的には、追跡ユニット15は、ゲート装置10の内部に進入した追跡対象者の被認証者IDを含む「被認証者進入通知」を生体認証制御ユニット14に通知する。例えば、図3の例では、追跡ユニット15は、利用者A1の被認証者ID「ID_A1」を生体認証制御ユニット14に通知する。
生体認証制御ユニット14は、追跡ユニット15から通知された被認証者IDを記憶する。生体認証制御ユニット14は、サーバ装置20から通知された被認証者IDと追跡ユニット15から通知された被認証者IDが一致する被認証者についてゲート装置10を通行できるか否か判定する。具体的には、生体認証制御ユニット14は、追跡が完了した被認証者の認証結果が「認証成功」であれば、当該利用者はゲート装置10を通行できると判断し、その旨をゲート装置10に通知する。より具体的には、生体認証制御ユニット14は、「通行許可通知」をゲート装置10に送信する。
対して、生体認証制御ユニット14は、追跡が完了した被認証者の認証結果が「認証成功」以外(認証失敗、又は認証結果が不存在)であれば、特段の対応をしない。
利用者(被認証者)は、ゲート装置10の入り口からさらに内部に進む。利用者がゲート装置10の所定位置(位置X4)まで進むと、ゲート装置10は、自装置の中間に設置された検出センサ12からの検出信号に基づき当該被認証者を検出する。
ゲート装置10は、利用者が検出されたタイミングで、「通行許可通知」を受信していれば、ゲート13の開状態を維持して利用者のゲート通行を許可する。
対して、ゲート装置10は、利用者が検出されたタイミングで「通行許可通知」を受信していない場合、ゲート13を閉じて利用者の通行を制限する。
このように、追跡ユニット15は、追跡対象として設定された被認証者がゲート装置10に進入したことを検知すると、当該進入した被認証者の被認証者IDを生体認証制御ユニット14に通知する。当該通知(プッシュ通知)に応じて、生体認証制御ユニット14は、対応する被認証者の認証結果を確認し、認証成功であれば通行を許可する。
なお、利用者の生体情報には、例えば、顔、虹彩の模様(パターン)といった個人に固有な身体的特徴から計算されるデータ(特徴量)が例示される。あるいは、利用者の生体情報は、顔画像、虹彩画像等の画像データであってもよい。利用者の生体情報は、利用者の身体的特徴を情報として含むものであればよい。第1の実施形態では、人の顔画像又は当該顔画像から生成された特徴量を生体情報として用いて説明を行う。
図2等に示す構成は例示であって、システムの構成を限定する趣旨ではない。例えば、認証システムには少なくとも1台以上のゲート装置10が含まれていればよい。各ゲート装置10は同じ場所(例えば、同じ駅)に設置されていてもよいし、異なる場所に設置されていてもよい。
続いて、第1の実施形態に係る認証システムに含まれる生体認証制御ユニット14、追跡ユニット15、ゲート装置10及びサーバ装置20の詳細について説明する。
[生体認証制御ユニット]
図4は、第1の実施形態に係る生体認証制御ユニット14の処理構成(処理モジュール)の一例を示す図である。図4を参照すると、生体認証制御ユニット14は、通信制御部201と、被認証者検出部202と、認証要求部203と、追跡制御部204と、通行許可通知部205と、テーブル管理部206と、メッセージ出力部207、記憶部208と、を含む。
通信制御部201は、他の装置との間の通信を制御する手段である。例えば、通信制御部201は、サーバ装置20からデータ(パケット)を受信する。また、通信制御部201は、サーバ装置20に向けてデータを送信する。通信制御部201は、他の装置から受信したデータを他の処理モジュールに引き渡す。通信制御部201は、他の処理モジュールから取得したデータを他の装置に向けて送信する。このように、他の処理モジュールは、通信制御部201を介して他の装置とデータの送受信を行う。通信制御部201は、他の装置からデータを受信する受信部としての機能と、他の装置に向けてデータを送信する送信部としての機能と、を備える。
被認証者検出部202は、被認証者を検出する手段である。被認証者検出部202は、ゲート装置10から所定範囲内の人物を被認証者として検出する。より具体的には、被認証者検出部202は、ゲート装置10から所定範囲内(例えば、位置X1よりもゲート装置10に近い位置;X1からX3までの範囲内)に人が存在するか否か検出する。
なお、以降の説明において、理解の容易のため、被認証者検出部202が被認証者を検出する範囲をX軸方向で規定しているが、実際にはY軸方向の範囲(例えば、Y0~Y2の範囲)も考慮される。
被認証者検出部202は、定期的又は所定のタイミングでカメラ11から画像データを取得する。被認証者検出部202は、取得した画像データから顔画像の抽出を試みる。
被認証者検出部202による顔画像の抽出処理には、既存の技術を用いることができるので詳細な説明を省略する。例えば、被認証者検出部202は、CNN(Convolutional Neural Network)により学習された学習モデルを用いて、画像データの中から顔画像(顔領域)を抽出してもよい。あるいは、被認証者検出部202は、テンプレートマッチング等の手法を用いて顔画像を抽出してもよい。
顔画像が抽出されると、被認証者検出部202は、顔画像から目間距離を計算する。具体的には、被認証者検出部202は、顔画像から左右の目を抽出し、当該抽出された両目を結ぶ直線の長さ(画素数)を計算する。
被認証者検出部202は、計算した目間距離に対して閾値処理を実行し、その結果に応じて被認証者が上記所定範囲内に存在するか否か判定する。具体的には、目間距離が閾値よりも長ければ、被認証者検出部202は、所定範囲内にて被認証者を検出したと判定する。目間距離が閾値以下であれば、被認証者検出部202は、当該所定範囲内には被認証者は存在しないと判定する。
所定範囲内に被認証者を検出すると、被認証者検出部202は、被認証者情報テーブルにエントリを追加する。被認証者検出部202は、被認証者を識別する被認証者IDを採番し、当該被認証者IDを新たなエントリに記憶する。また、被認証者検出部202は、被認証者を被認証者情報テーブルに登録した時刻(新たなエントリを追加した時刻)も併せて被認証者情報テーブルに記憶する。
図5は、第1の実施形態に係る被認証者情報テーブルの一例を示す図である。被認証者情報テーブルは生体認証制御ユニット14のメモリ上に構築される。図5の最下段に示すように、被認証者検出部202は、例えば、位置X1において人を検出すると、被認証者情報テーブルにエントリを追加し、当該検出された人物を被認証者に設定する。なお、エントリが追加されたタイミングでは、認証ステータスフィールド、追跡ステータスフィールドには何も設定されない。
認証ステータスフィールドは、被認証者の生体認証に関する状況を管理するためのフィールドである。追跡ステータスフィールドは、被認証者の追跡状況を管理するためのフィールドである。
なお、図5に示す被認証者情報テーブルは例示であって、記憶する項目等を限定する趣旨ではない。例えば、被認証者の生体情報(顔画像、特徴量)が被認証者情報テーブルに登録されていてもよい。被認証者検出部202は、当該生体情報を用いて既に被認証者として登録されている利用者が再び被認証者情報テーブルに登録されることを防止してもよい。被認証者検出部202は、画像データから抽出された顔画像(特徴量)と被認証者情報テーブルに登録された顔画像(特徴量)が実質的に一致する場合には、当該画像データから抽出された顔画像に対応する人物を被認証者に設定しない。
被認証者の登録が終了すると、被認証者検出部202は、被認証者IDと被認証者検出時の画像データ(カメラ11から取得した画像データ、顔画像)を、認証要求部203に引き渡す。
さらに、被認証者の登録が終了すると、被認証者検出部202は、顔画像が抽出された利用者の位置(座標;X座標、Y座標)を推定する。例えば、被認証者検出部202は、画像データに含まれる顔の位置、大きさから当該顔に対応する人物の位置(X座標、Y座標)を推定する。
あるいは、被認証者検出部202は、学習モデルを使って当該位置を推定してもよい。具体的には、被認証者検出部202は、画像にラベル(X座標、Y座標)が付与された教師データを用いた機械学習により生成された学習モデルを使用して位置を推定してもよい。当該学習モデルの生成には、サポートベクタマシン、ブースティングやニューラルネットワーク等の任意のアルゴリズムを用いることができる。なお、上記サポートベクタマシン等のアルゴリズムは公知の技術を使用することができるので、その説明を省略する。
被認証者検出部202は、例えば、「ID_A:X1、Y1」のように、顔画像が抽出された利用者(利用者の被認証者ID)ごとにその位置を推定する。被認証者検出部202は、被認証者IDと利用者の位置(X座標、Y座標)を追跡制御部204に引き渡す。
認証要求部203は、被認証者検出部202により検出された被認証者の認証をサーバ装置20に要求する手段である。被認証者の顔画像を取得すると、認証要求部203は、取得した顔画像から特徴量(複数の特徴量からなる特徴ベクトル)を生成する。
特徴量の生成処理に関しては既存の技術を用いることができるので、その詳細な説明を省略する。例えば、認証要求部203は、顔画像から目、鼻、口等を特徴点として抽出する。その後、認証要求部203は、特徴点それぞれの位置や各特徴点間の距離を特徴量として計算し、複数の特徴量からなる特徴ベクトル(顔画像を特徴づけるベクトル情報)を生成する。
認証要求部203は、当該生成された特徴量(生体情報)、被認証者ID及びゲートIDを含む認証要求を生成し、サーバ装置20に送信する(図6参照)。ゲートIDは、ゲート装置10を識別するための識別情報である。ゲートIDには、ゲート装置10のMAC(Media Access Control)アドレスやIP(Internet Protocol)アドレスを用いることができる。あるいは、ゲートIDは、システム固有の識別情報(識別ID)であってもよい。サーバ装置20側にも識別IDをマスタとして保持することにより、送信した認証要求が許可されたゲート装置10からのものであることが判定できる。
認証要求をサーバ装置20に送信すると、認証要求部203は、被認証者情報テーブルの該当するエントリ(被認証者IDが同じエントリ)の認証ステータスフィールドに「認証中」を設定する(図5の下から2番目のエントリ参照)。
認証要求部203は、認証要求に対するサーバ装置20からの応答(認証結果を含む応答)を受信する。認証要求部203は、受信した応答から被認証者IDを抽出する。認証要求部203は、抽出した被認証者IDに基づいて被認証者を特定し、認証結果を被認証者情報テーブルの対応するエントリに登録する(図5の上から1番目、2番目のエントリ参照)。このように、認証要求部203は、サーバ装置20から生体認証の結果を受信すると、受信した生体認証の結果を被認証者検出部202により追加されたエントリの認証ステータスフィールドに設定する。
追跡制御部204は、被認証者検出部202により検出された被認証者の追跡を制御する手段である。追跡制御部204は、測距センサ16を用いて追跡対象者を追跡する追跡ユニット15に対し、被認証者の位置情報を含む追跡開始指示を送信する。追跡制御部204は、追跡ユニット15から追跡結果を取得する。
具体的には、追跡制御部204は、被認証者検出部202から、被認証者IDと被認証者の位置情報(X座標、Y座標)を取得する。その後、追跡制御部204は、被認証者の位置情報(推定された被認証者の位置)と被認証者IDを含む「追跡開始指示」を追跡ユニット15に送信する。
追跡制御部204は、追跡開始指示を送信した被認証者の追跡ステータスを「追跡中」に設定し、被認証者情報テーブルを更新する(図5の下から3番目のエントリ参照)。
追跡制御部204は、追跡ユニット15から「被認証者進入通知」を受信する。当該通知を受信したことに応じて、追跡制御部204は、被認証者の追跡が完了したと判断する。追跡制御部204は、当該通知に含まれる被認証者IDを用いて対応する被認証者の追跡ステータスを更新する。具体的には、追跡制御部204は、被認証者情報テーブルの対応するエントリの追跡ステータスフィールドに「追跡完了」を設定する(図5の最上段のエントリ参照)。
このように、追跡制御部204は、追跡対象者がゲート装置10に進入したことを示す被認証者進入通知を追跡ユニット15から受信する。追跡制御部204は、追跡ユニット15から取得した追跡結果(被認証者の追跡が完了した事実)を被認証者検出部202により追加されたエントリの追跡ステータスフィールドに設定する。
追跡制御部204は、追跡ユニット15からの被認証者進入通知を被認証者情報テーブルに反映すると、その旨を通行許可通知部205に通知する。
通行許可通知部205は、被認証者(利用者)がゲート装置10を通行することを許可するか否かをゲート装置10に通知する手段である。通行許可通知部205は、サーバ装置20による被認証者の生体認証の結果と、追跡ユニット15による被認証者の追跡結果と、に基づいて被認証者がゲート装置10を通行できるか否か判定し、判定結果をゲート装置10に通知する。
通行許可通知部205は、被認証者の追跡が終了したタイミング(追跡制御部204から追跡が完了した旨を取得したタイミング)で、被認証者情報テーブルにアクセスする。
通行許可通知部205は、被認証者情報テーブルに含まれる各エントリの認証ステータスフィールドと追跡ステータスフィールドを確認する。通行許可通知部205は、認証ステータスフィールドの設定値が「認証成功」、且つ、追跡ステータスフィールドの設定値が「追跡完了」のエントリが存在すれば、被認証者がゲート装置10を通行することを許可する。具体的には、上記2つの条件が満たすエントリが存在すれば、通行許可通知部205は、利用者がゲート装置10を通行できることをゲート装置10に通知する。通行許可通知部205は、「通行許可通知」をゲート装置10に送信する。
図5の例では、最上段のエントリが上記2つの条件を満たすので、通行許可通知部205は、「通行許可通知」をゲート装置10に送信する。
通行許可通知部205は、利用者(被認証者)のゲート通過を許可した場合には、その根拠となったエントリを削除する。図5の例では、通行許可通知部205は、最上段のエントリを削除する。
このように、通行許可通知部205は、被認証者進入通知が追跡制御部204により受信されたことに応じて、被認証者がゲート装置10を通行できるか否か判定する。即ち、生体認証制御ユニット14は、被認証者進入通知の受信を契機とし、サーバ装置20による認証結果に基づいて被認証者がゲート装置10を通行できるか否か判定する。
なお、通行許可通知部205は、ゲート装置10から「ゲート閉通知」を受信することがある。通行許可通知部205は、当該通知を受信すると、所定期間、被認証者情報テーブルにアクセスを続け、上記2つの条件を満たすエントリが現れるか否か(存在するか否か)を確認する。当該所定期間の間に上記2つの条件を満たすエントリが出現すれば、通行許可通知部205は、被認証者(利用者)のゲート通過を許可する。具体的には、上記2つの条件を満たすエントリが出現すれば、通行許可通知部205は、「通行許可通知」をゲート装置10に送信する。
例えば、ゲート装置10とサーバ装置20の間のネットワーク環境等に起因して、サーバ装置20からの認証結果(認証成功)が被認証者情報テーブルに反映されることが遅れた場合に、上記現象が起こり得る。あるいは、被認証者がゲート装置10を駆け抜けようとした場合にも、上記現象が起こり得る。
所定期間経過しても上記2つの条件を満たすエントリが現れない場合には、通行許可通知部205は、駅員(駅員が使用する端末)に問題発生を通知する。あるいは、通行許可通知部205は、メッセージ出力部207を介して被認証者に駅員のもとに向かうように促してもよい。
テーブル管理部206は、被認証者情報テーブルを管理する手段である。テーブル管理部206は、定期的又は所定のタイミングで被認証者情報テーブルにアクセスし、不要となったエントリを削除する。
テーブル管理部206は、各エントリの登録時刻フィールドを確認し、エントリが被認証者情報テーブルに追加されてから所定期間経過しているエントリを削除する。即ち、テーブル管理部206は、エントリの登録から所定期間経過しても上記2つの条件(認証成功、追跡完了)を満たさないエントリを削除する。
このようなテーブル管理部206の動作により、被認証者として検出された利用者がゲート装置10に向かわず他に移動した場合であっても、そのような被認証者のエントリが削除される。
エントリを削除した場合には、テーブル管理部206は、その旨をサーバ装置20や追跡ユニット15に通知してもよい。テーブル管理部206は、サーバ装置20に対しては被認証者IDを伝え、対応する被認証者の認証をキャンセルしてもよい。また、テーブル管理部206は、追跡ユニット15に対しても被認証者IDを伝え、当該被認証者IDに対応する追跡対象者を追跡の対象から外すように指示してもよい。
メッセージ出力部207は、利用者に通知するメッセージ等を出力する手段である。メッセージ出力部207は、ディスプレイ(図示せず)やスピーカー(図示せず)等を用いて必要なメッセージを利用者に通知する。例えば、ゲート装置10のゲート制御部403が利用者の通行を拒否した場合には、メッセージ出力部207は、その旨と共に対応策に関するメッセージ(例えば、駅員に連絡)を出力する。
記憶部208は、生体認証制御ユニット14の動作に必要な情報を記憶する手段である。
[追跡ユニット]
図7は、第1の実施形態に係る追跡ユニット15の処理構成(処理モジュール)の一例を示す図である。図7参照すると、追跡ユニット15は、通信制御部301と、追跡部302と、記憶部303と、を含む。
通信制御部301は、他の装置(デバイス)との間の通信を制御する手段である。例えば、通信制御部301は、生体認証制御ユニット14からデータ(パケット)を受信する。また、通信制御部301は、生体認証制御ユニット14に向けてデータを送信する。通信制御部301は、他の装置から受信したデータを他の処理モジュールに引き渡す。通信制御部301は、他の処理モジュールから取得したデータを他の装置に向けて送信する。このように、他の処理モジュールは、通信制御部301を介して他の装置とデータの送受信を行う。通信制御部301は、他の装置からデータを受信する受信部としての機能と、他の装置に向けてデータを送信する送信部としての機能と、を備える。
追跡部302は、被認証者の追跡を行う手段である。追跡部302は、生体認証制御ユニット14から「追跡開始指示」を受信する。追跡部302は、測距センサ16を制御し、ゲート装置10の周囲(とりわけ、ゲート装置10の前方)を隈なくスキャンする。追跡部302は、当該スキャンによりゲート装置10の周囲に存在する物体を検出する。
測距センサ16のスキャンによって、追跡部302は、無数の点の集合(点群)を取得する。追跡部302は、当該得られた点群に含まれる各点を物体ごとに振り分けるクラスタリングを行うことで、クラスタ(物体を構成する点の集合)を得る。追跡部302は、得られたクラスタに意味づけ(例えば、床、壁、人)を行うことで物体を検出する。例えば、追跡部302は、機械学習による画像認識(レーザが物体に反射することで得られるレーザ画像に対する画像認識)によって物体(人など)を検出する。
なお、測距センサ16を用いた物体検出には、自動車やロボットの制御における人物検出技術を用いることができるので、より詳細な説明を省略する。例えば、追跡部302は、下記の参考文献1に開示された技術を用いて物体検出を行う。
<参考文献1>
特開2021-099698号公報
追跡部302は、少なくとも1人以上の人物を検出すると、当該検出された人の位置(座標)を計算する。例えば、図3に示すように、利用者A1が位置(X1、Y1)に立ち利用者A2が位置(X0、Y0)に立っている状況で、スキャンが行われると、図8Aに示すような位置関係で2人の人物が検出される。2人の人物が検出されると、追跡部302は、それぞれの人物の中心位置を当該人物の位置(X座標、Y座標)として計算する。
なお、理解の容易のため、生体認証制御ユニット14の座標系と追跡ユニット15の座標系を同じものとして本願開示の説明を行うが、2つの座標系が異なる場合には、いずれかのユニットで必要な座標変換を行えばよい。
追跡部302は、追跡開始指示に含まれる位置情報と実質的に同じ場所に存在する人物を追跡対象に設定する。図3及び図8Aの例では、追跡部302は、利用者A1を追跡対象に設定する。
追跡対象が設定されると、追跡部302は、当該追跡対象の位置と被認証者IDを対応付けて管理する。例えば、図8Aの例では、利用者A1が追跡対象に設定されるので、追跡部302は、(ID_A1;X1、Y1)のような対応付けを行う。
追跡部302は、定期的又は所定のタイミングで測距センサ16を制御し、物体の検出を行う。例えば、利用者A1が図3の位置(X2、Y1)に移動したタイミングで物体検出が行われると、追跡部302は、図8Bに示すような位置関係で2人の人物を検出する。
追跡部302は、直前のスキャンにより得られた人物の形状と現スキャンによって得られた人物の形状を比較することで、現スキャンにより検出された人物のなかから追跡対象を特定する。追跡部302は、特定された追跡対象の位置(X座標、Y座標)を更新する。上記の例では、追跡対象者である利用者A1の位置が(X2、Y1)に更新される。
追跡部302は、更新された追跡対象の位置を確認し、当該追跡対象がゲート装置10の内部に進入しているか否か判定する。例えば、図3の例では、追跡部302は、利用者A1のX座標が位置X3よりもゲート装置10寄りであれば、当該利用者A1はゲート装置10の内部に進入したと判定する。追跡部302は、利用者A1のX座標が位置X3よりもゲート装置10から離れていれば、当該利用者A1はゲート装置10の内部に進入していないと判定する。
追跡部302は、追跡対象者がゲート装置10の内部に進入したと判定した場合、当該追跡対象者の被認証者IDを含む「被認証者進入通知」を生体認証制御ユニット14に送信する。即ち、追跡部302は、追跡対象者がゲート装置10に進入したことを示す被認証者進入通知を生体認証制御ユニット14に送信する。
このように、追跡ユニット15(追跡部302)は、追跡対象者の位置と被認証者IDを対応付けて管理し、追跡対象者がゲート装置10に進入したことに応じて追跡を完了する。追跡部302は、当該追跡を完了した追跡対象者の被認証者IDを生体認証制御ユニット14に通知する。
なお、追跡部302は、追跡を開始してから所定時間経過しても追跡完了とならない追跡対象者の情報(被認証者IDと位置)を削除してもよい。あるいは、追跡部302は、追跡対象者が所定範囲から外れた場合(例えば、追跡対象者がゲート装置10に向かわず他の場所に向かった場合)にも、当該追跡対象者の情報を削除してもよい。
記憶部303は、追跡ユニット15の動作に必要な情報を記憶する手段である。
[ゲート装置]
図9は、第1の実施形態に係るゲート装置10の処理構成(処理モジュール)の一例を示す図である。図9を参照すると、ゲート装置10は、通信制御部401と、進入者検出部402と、ゲート制御部403と、記憶部404と、を備える。
通信制御部401は、他の装置との間の通信を制御する手段である。例えば、通信制御部401は、生体認証制御ユニット14からデータ(パケット)を受信する。また、通信制御部401は、生体認証制御ユニット14に向けてデータを送信する。通信制御部401は、他の装置から受信したデータを他の処理モジュールに引き渡す。通信制御部401は、他の処理モジュールから取得したデータを他の装置に向けて送信する。このように、他の処理モジュールは、通信制御部401を介して他の装置とデータの送受信を行う。通信制御部401は、他の装置からデータを受信する受信部としての機能と、他の装置に向けてデータを送信する送信部としての機能と、を備える。
進入者検出部402は、自装置(ゲート装置10)への進入者を検出する手段である。より具体的には、進入者検出部402は、検出センサ12からの検出信号を用いて、ゲート装置10の中間地点(図3の位置X4)に到達した利用者を検出する。進入者検出部402は、位置X4にて利用者を検出すると、その旨をゲート制御部403に通知する。
ゲート制御部403は、ゲート装置10が備えるゲート13を制御する手段である。ゲート制御部403は、利用者がゲート装置10の所定位置(図3の位置X4)に到達したタイミングで、ゲート13の開閉制御を行う。
ゲート制御部403は、利用者が位置X4に到達したタイミングで、生体認証制御ユニット14から「通行許可通知」を既に受信していれば、ゲート13の開状態を維持する。対して、ゲート制御部403は、当該タイミングにて生体認証制御ユニット14から「通行許可通知」を受信していない場合には、ゲート13を閉じる。
なお、ゲート13を閉じた場合には、ゲート制御部403は、その旨を生体認証制御ユニット14に通知する。具体的には、ゲート制御部403は、「ゲート閉通知」を生体認証制御ユニット14に送信する。ゲート制御部403は、ゲート閉通知を送信してから所定期間の間に「利用者通行許可」を受信すると、ゲート13を開く。
なお、ゲート制御部403は、被認証者がゲート13を通過した事実を、生体認証制御ユニット14を介してサーバ装置20に通知する。具体的には、ゲート制御部403は、位置X4にて利用者が検出され、生体認証制御ユニット14から通行許可通知を受信していることで、利用者のゲート通過を許可した場合には、その旨を生体認証制御ユニット14に通知する。生体認証制御ユニット14の通行許可通知部205は、通行許可通知を送信することの根拠となったエントリ(被認証者情報テーブルのエントリ)に記載された被認証者IDとゲート装置10のゲートIDを含む「ゲート通過通知」をサーバ装置20に送信する。即ち、ゲート装置10(生体認証制御ユニット14)は、ゲート13を通過した被認証者の被認証者ID、ゲートIDを含む「ゲート通過通知」をサーバ装置20に送信する。
記憶部404は、ゲート装置10の動作に必要な情報を記憶する手段である。
図10は、第1の実施形態に係る生体認証制御ユニット14及びゲート装置10の動作の一例を示すシーケンス図である。
生体認証制御ユニット14は、ゲート装置10からみて前方の所定範囲内において被認証者の検出を試みる(ステップS101)。被認証者が検出されないと(ステップS101、No分岐)、生体認証制御ユニット14はステップS101の処理を繰り返す。
被認証者が検出されると(ステップS101、Yes分岐)、生体認証制御ユニット14は、当該被認証者に関する認証要求をサーバ装置20に要求する(ステップS102)。
また、生体認証制御ユニット14は、認証要求の送信と実質的に同時に、被認証者の追跡を開始する。生体認証制御ユニット14は、被認証者の位置と被認証者IDを含む追跡開始指示を追跡ユニット15に送信する(ステップS103)。
生体認証制御ユニット14は、サーバ装置20から認証結果を受信する(ステップS104)。生体認証制御ユニット14は、認証結果を被認証者情報テーブルに反映する。
追跡ユニット15は、被認証者の追跡を行い、被認証者がゲート装置10の入口に到着すると被認証者進入通知を生体認証制御ユニット14に送信する。換言すれば、生体認証制御ユニット14は、被認証者進入通知を追跡ユニット15から受信する(ステップS105)。生体認証制御ユニット14は、追跡ユニット15による追跡結果を被認証者情報テーブルに反映する。
生体認証制御ユニット14は、被認証者がゲート装置10の入口に到達したタイミングにおいて、被認証者の認証に成功していれば、通行許可通知をゲート装置10に送信する(ステップS106)。
ゲート装置10は、被認証者がゲート装置10の所定位置に到達したか否か判定する(ステップS201)。被認証者が所定位置に到達していなければ(ステップS201、No分岐)、ゲート装置10はステップS201の処理を繰り返す。
被認証者が所定位置に到達していると(ステップS201、Yes分岐)、ゲート装置10は、ゲート13の開閉制御を行う(ステップS202)。ゲート装置10は、通行許可通知を受信していれば、被認証者の通過を許可する。換言すれば、ゲート装置10は、被認証者が所定位置(ゲート装置10のゲート13付近;位置X4)に到達したタイミングで通行許可通知を受信していなければ、ゲート13を閉じて利用者の通行を遮断する。
なお、ゲート装置10は、被認証者の通行を許可した場合には、当該事実をサーバ装置20に通知する。
このように、生体認証制御ユニット14は、被認証者を検出し、当該検出された被認証者の生体情報を含む認証要求をサーバ装置20に送信する。また、生体認証制御ユニット14は、追跡ユニット15に対し、被認証者の位置情報を含む追跡開始指示を送信する。生体認証制御ユニット14は、被認証者の位置情報を追跡ユニット15に通知することで、追跡対象者を当該追跡ユニット15に設定する。追跡ユニット15は、追跡開始指示に含まれる位置情報に対応する場所に存在する人物を追跡対象者に設定し、測距センサ16を用いて当該追跡対象者の追跡を行う。追跡ユニット15は、追跡対象者がゲート装置10に進入すると被認証者進入通知を生体認証制御ユニット14に送信することで、被認証者がゲート装置10に到達したことを通知する。生体認証制御ユニット14は、被認証者進入通知を受信すると、サーバ装置20による認証結果に基づいて被認証者がゲート装置10を通行できるか否か判定する。生体認証制御ユニット14は、被認証者がゲート装置10を通行する資格を備えていれば(認証に成功すれば)、当該被認証者はゲート装置10を通行できると判断する。
[サーバ装置]
図11は、第1の実施形態に係るサーバ装置20の処理構成(処理モジュール)の一例を示す図である。図11を参照すると、サーバ装置20は、通信制御部501と、利用者登録部502と、認証部503と、ゲート通過通知処理部504と、記憶部505と、を含む。
通信制御部501は、他の装置との間の通信を制御する手段である。例えば、通信制御部501は、生体認証制御ユニット14からデータ(パケット)を受信する。また、通信制御部501は、生体認証制御ユニット14に向けてデータを送信する。通信制御部501は、他の装置から受信したデータを他の処理モジュールに引き渡す。通信制御部501は、他の処理モジュールから取得したデータを他の装置に向けて送信する。このように、他の処理モジュールは、通信制御部501を介して他の装置とデータの送受信を行う。通信制御部501は、他の装置からデータを受信する受信部としての機能と、他の装置に向けてデータを送信する送信部としての機能と、を備える。
利用者登録部502は、ゲート装置10を通過できる利用者をシステム登録する手段である。利用者登録部502は、任意の手段を用いてゲート装置10を通過できる利用者の生体情報(例えば、顔画像)を取得する。
例えば、システム利用者は、鉄道会社のWEB(ウェブ)ページや駅に設置されたキオスク端末を用いて生体情報や個人情報(氏名、住所等)をサーバ装置20に入力する。
利用者登録部502は、顔画像を取得した場合には、当該顔画像から特徴量を計算する。利用者登録部502は、システム利用者(生体情報の登録者)を識別する利用者IDと共に、利用者の生体情報(例えば、顔画像から計算された特徴量)を「利用者情報データベース」に登録する(図12参照)。
利用者登録部502は、必要に応じて、利用者の認証処理に必要な情報(業務情報)を利用者情報データベースに登録する。例えば、サーバ装置20が駅に設置された改札機(ゲート装置10)からの認証要求を処理する場合には、利用者登録部502は、チャージ金額等の情報と生体情報を対応付けて利用者情報データベースに記憶する。
図12に示す利用者情報データベースは例示であって、他の項目が生体情報(特徴量)と対応付けて記憶されていてもよい。例えば、利用者の氏名や顔画像が利用者情報データベースに登録されていてもよい。
認証部503は、生体認証制御ユニット14(ゲート装置10)から受信した認証要求を処理する手段である。認証部503は、認証要求を受信すると、当該認証要求からゲートID、被認証者IDを抽出する。認証部503は、認証状況データベースに新たなエントリを追加し、上記抽出されたゲートID、被認証者IDを記憶する(図13参照)。また、認証部503は、追記したエントリの処理ステータスに「処理中」を設定する。図13では、理解の容易のため、ゲートIDにはゲート装置10の符号を用いている。
認証状況データベースに情報登録を行うと、認証部503は、認証要求に含まれる生体情報(特徴量)を照合対象に設定し、利用者情報データベースに登録された生体情報との間で照合処理を行う。
より具体的には、認証部503は、認証要求から取り出した特徴量を照合対象に設定し、利用者情報データベースに登録されている複数の特徴量との間で1対N(Nは正の整数、以下同じ)照合を実行する。
認証部503は、照合対象の特徴量(特徴ベクトル)と登録側の複数の特徴量それぞれとの間の類似度を計算する。当該類似度には、カイ二乗距離やユークリッド距離等を用いることができる。なお、距離が離れているほど類似度は低く、距離が近いほど類似度が高い。
類似度が所定の値以上の特徴量が利用者情報データベースに登録されていなければ、認証部503は、認証結果に「認証失敗」を設定する。
類似度が所定の値以上の特徴量が利用者情報データベースに登録されていれば、認証部503は、照合処理により特定された利用者に関してゲート装置10を通過する資格を有するか否か判定する。
例えば、駅に入場するためのゲート装置10から受信した認証要求を処理する場合には、認証部503は、特定された利用者のチャージ金額が初乗り運賃以上の残高か否かを判定する。チャージ金額の残高が初乗り運賃以下であれば、認証部503は、特定された利用者はゲート装置10を通過する資格はないと判定する。チャージ金額の残高が初乗り運賃より多ければ、認証部503は、特定された利用者はゲート装置10を通過する資格があると判定する。
例えば、駅から退場するためのゲート装置10から受信した認証要求を処理する場合には、認証部503は、特定された利用者に乗車駅が設定されているか否かを判定する。乗車駅が設定されていなければ、認証部503は、特定された利用者はゲート装置10を通過する資格はないと判定する。乗車駅が設定されていると、認証部503は、利用者の経路(乗車駅と降車駅の間の経路)に応じた運賃を計算する。計算された運賃がチャージ金額を超えていれば、認証部503は、利用者はゲート装置10を通過する資格はないと判定する。計算された運賃がチャージ金額以下であれば、認証部503は、特定された利用者はゲート装置10を通過する資格があると判定する。
特定された利用者がゲート装置10を通過する資格を有さない場合には、認証部503は、認証結果に「認証失敗」を設定する。
特定された利用者がゲート装置10を通過する資格を有する場合には、認証部503は、認証結果に「認証成功」を設定する。
認証部503は、認証対象者(被認証者)の被認証者IDと認証結果(認証成功、認証失敗)を生体認証制御ユニット14(ゲート装置10)に通知する。認証成功の場合には、認証部503は、認証成功を示す肯定応答を生体認証制御ユニット14に送信する。その際、認証部503は、認証処理の対象となった利用者の被認証者IDを含む肯定応答を生体認証制御ユニット14に送信する。
認証失敗の場合には、認証部503は、認証失敗を示す否定応答を生体認証制御ユニット14に送信する。否定応答を送信する場合には、認証部503は、認証に失敗した原因を併せて生体認証制御ユニット14に通知してもよい。例えば、認証部503は、生体情報がシステムに登録されていない、チャージ金額が不足している、乗車駅が設定されていない等の認証失敗に関する要因を生体認証制御ユニット14に送信してもよい。また、認証失敗時にも、認証部503は、認証処理の対象となった利用者の被認証者IDを含む否定応答を生体認証制御ユニット14に送信する。
認証要求に対する応答をゲート装置10に送信すると、認証部503は、対応する認証状況データベースのエントリに「応答済」を設定する。また、認証成功をゲート装置10に通知した場合には、認証部503は、対応するエントリの利用者IDに認証成功者(認証成功と判定された利用者)の利用者IDを設定する。
ゲート通過通知処理部504は、ゲート装置10(生体認証制御ユニット14)から受信するゲート通過通知を処理する手段である。ゲート通過通知処理部504は、受信した通知からゲートID及び被認証者IDを抽出する。ゲート通過通知処理部504は、ゲートID及び被認証者IDをキーとして認証状況データベースを検索し、対応するエントリを特定する。
ゲート通過通知処理部504は、当該特定したエントリの利用者IDフィールドから利用者IDを読み出す。ゲート通過通知処理部504は、当該読み出した利用者IDをキーとして利用者情報データベースを検索し、対応するエントリを特定する。
ゲート通過通知処理部504は、特定したエントリに対して利用者のゲート通過に伴う処理を実行する。
例えば、駅に入場するためのゲート装置10から受信したゲート通過通知を処理する場合には、ゲート通過通知処理部504は、特定したエントリの乗車駅にゲート装置10が設置された駅を設定する。
例えば、駅から退場するためのゲート装置10から受信したゲート通過通知を処理する場合には、ゲート通過通知処理部504は、利用者の運賃を計算し、チャージ金額から当該運賃を減額する。また、ゲート通過通知処理部504は、乗車駅フィールドの設定値をクリアする。
記憶部505は、サーバ装置20の動作に必要な各種情報を記憶する。記憶部505には、利用者情報データベース、認証状況データベースが構築される。
図14は、第1の実施形態に係るサーバ装置20の動作の一例を示すフローチャートである。
サーバ装置20は、生体認証制御ユニット14から認証要求を受信する(ステップS301)。
サーバ装置20は、認証要求に含まれる生体情報と利用者情報データベースに登録された生体情報を用いた照合処理を実行する(ステップS302)。
サーバ装置20は、生体情報間の類似度が所定の値以上のエントリが存在するか否か判定する(ステップS303)。
そのようなエントリが存在しなければ(ステップS303、No分岐)、サーバ装置20は、認証結果を認証失敗に設定する(ステップS304)。
そのようなエントリが存在すれば(ステップS303、Yes分岐)、サーバ装置20は、被認証者がゲート装置10を通過する資格を有するか否か判定する(ステップS305)。
被認証者がゲート装置10を通過する資格を備えていなければ(ステップS305、No分岐)、サーバ装置20は、認証結果を認証失敗に設定する(ステップS304)。
被認証者がゲート装置10を通過する資格を備えていれば(ステップS305、Yes分岐)、サーバ装置20は、認証結果を認証成功に設定する(ステップS306)。
サーバ装置20は、認証結果(認証成功、認証失敗)を生体認証制御ユニット14に送信する(ステップS307)。
なお、ゲート通過通知を受信した際のサーバ装置20の動作に関する説明は省略する。
続いて、図面を参照しつつ、第1の実施形態に係る認証システムの動作を説明する。図15は、第1の実施形態に係る認証システムの動作の一例を示すシーケンス図である。なお、図15の動作に先立ち、システム利用者の登録は予め行われているものとする。また、図15では、生体認証制御ユニット14、追跡ユニット15はゲート装置10に一体化されたものと捉え、システムの動作を説明する。
ゲート装置10は、自装置の前方に設定された所定範囲内の被認証者を検出する(ステップS01)。
ゲート装置10は、被認証者の生体情報を取得し、当該生体情報を含む認証要求をサーバ装置20に送信する(ステップS02)。
また、認証要求の送信と実質的に同じタイミングにおいて、ゲート装置10は、被認証者の追跡を開始する(ステップS03)。
サーバ装置20は、認証処理を実行し、その結果をゲート装置10に送信する(ステップS11、S12)。
ゲート装置10は、認証結果を受信し、認証結果を被認証者情報テーブルに反映する(認証結果の反映;ステップS04)。
被認証者がゲート装置10の入り口に到達すると、ゲート装置10は、被認証者の追跡を完了する(ステップS05)。
被認証者がゲート装置10の所定位置に到達すると、ゲート装置10は、ゲート制御を行う(ステップS06)。具体的には、ゲート装置10は、認証成功及び追跡完了と設定されている被認証者の通過を許可する。
被認証者の通過を許可すると、ゲート装置10は、サーバ装置20に対してゲート通過通知を送信する(ステップS07)。
ゲート通過通知を受信すると、サーバ装置20は、ゲート通過者(認証成功者;認証成功と判定された被認証者)の情報更新を行う(ステップS13)。具体的には、サーバ装置20は、ゲート通過者に対応する利用者情報データベースのエントリを更新する。
続いて、図面を参照しつつ、利用者(被認証者、認証対象ではない利用者)による様々な移動を想定したゲート装置10の具体的な動作を説明する。
図16の上段に示すように、利用者30が被認証者に設定され、利用者31は認証対象ではない利用者とする。なお、図16を含む図面において被認証者を灰色、認証対象ではない利用者を白色でそれぞれ図示する。利用者31は、位置X1にて被認証者として検出されていないので、被認証者ではない。そのため、利用者31に関するエントリは被認証者情報テーブルには存在しない。
利用者30は、ゲート装置10に向かって歩く。利用者31は、利用者30の横からゲート装置10の内部に進入するように移動する。この場合、時間の経過とともに、両者の位置関係は図16の下段に示すようになる。
利用者31のエントリは被認証者情報テーブルに登録されていないので、利用者31が位置X4に到達するとゲート13は閉じる。また、ゲート13が閉じてから所定期間経過しても、利用者31の認証結果が被認証者情報テーブルに登録されることはないので、ゲート13が開くこともない。
あるいは、被認証者が前を歩く他の被認証者を追い抜くことも考えられる。例えば、図17の上段に示すように、利用者32及び利用者33がゲート装置10に向かって歩く場合を考える。この場合、利用者32、利用者33は共に、位置X1にて生体情報が取得され、追跡が開始されているので、被認証者(灰色の人物)に設定される。
後ろを歩く利用者33は、図17の上段に示す一点鎖線のように移動し、前の利用者32を追い抜く。この場合、時間の経過とともに、両者の位置関係は図17の下段に示すようになる。
利用者32、利用者33のエントリは被認証者情報テーブルに登録されており、利用者33の認証処理(サーバ装置20における認証処理)が成功している場合には、利用者33が位置X4に到達してもゲート13は開状態を維持する。また、利用者33に続き利用者32が位置X4に到達してもゲート13が閉じることはない。
このように、位置X1にて生体情報が取得され、被認証者として設定された利用者は、設定された順番でゲート装置10に到達(進入)しなくとも、正常に処理される。即ち、被認証者の歩行速度の相違等により、被認証者として登録された順番通りに利用者がゲート装置10に到達しなくとも利用者はゲート装置10を通過できる。このように、第1の実施形態に係る認証システムは、イレギュラーな状況も許容するのでシステムのスループットが向上する。
<第1の実施形態に係る変形例>
上記実施形態では、追跡を完了すると、追跡ユニット15は、追跡対象者の被認証者IDを含む被認証者進入通知を生体認証制御ユニット14に送信する場合について説明した。しかし、生体認証制御ユニット14は、追跡ユニット15に対し、被認証者(追跡対象者)の追跡が終了したか否かを定期的に問い合わせてもよい。
具体的には、生体認証制御ユニット14の追跡制御部204は、追跡開始指示を追跡ユニット15に送信した後、定期的に、被認証者IDを含む「位置問い合わせ」を追跡ユニット15に送信する。
追跡ユニット15の追跡部302は、当該問い合わせに含まれる被認証者IDの位置情報(X座標、Y座標)を生体認証制御ユニット14に送信する。追跡制御部204は、取得した位置情報を用いて被認証者(追跡対象者)がゲート装置10に進入したか否か判定する。追跡制御部204は、取得した位置情報から被認証者がゲート装置10に進入したと判定した場合には、被認証者情報テーブルの対応するエントリにおける追跡ステータスに「追跡完了」を設定する。追跡制御部204は、エントリに追跡完了を設定すると、その旨を通行許可通知部205に通知する。
通行許可通知部205は、当該通知に応じて、被認証者がゲート装置10を通行できるか否か判定する。即ち、追跡制御部204が取得した追跡対象者の位置情報が、追跡対象者がゲート装置10に進入したことを示す場合、通行許可通知部205は、被認証者がゲート装置10を通行できるか否か判定する。
以上のように、第1の実施形態にゲート装置10(生体認証制御ユニット14と追跡ユニット15が搭載されたゲート装置10)は、被認証者の検出を行う。ゲート装置10は、被認証者を検出すると、当該被認証者に関する認証と追跡を実質的に同じタイミングで開始する。サーバ装置20は、ゲート装置10から離れた場所から認証処理を開始できるので、生体認証の実行時間を確保できる。また、ゲート装置10は、上記離れた場所から被認証者の追跡を開始する。その際、ゲート装置10は、測距センサ16を用いた追跡を行う。ゲート装置10は、測距センサ16を使った被認証者の追跡により当該被認証者の正確な現在位置を把握できるので、被認証者によるゲート装置10への進入を確実に認識できる。換言すれば、被認証者ではない利用者がゲート装置10に割り込んだとしても、ゲート装置10は、当該割り込んだ利用者の通行を遮断できる。
続いて、認証システムを構成する各装置のハードウェアについて説明する。図18は、生体認証制御ユニット14のハードウェア構成の一例を示す図である。
生体認証制御ユニット14は、プロセッサ311、メモリ312及び通信インターフェイス313等を備える。上記プロセッサ311等の構成要素は内部バス等により接続され、相互に通信可能に構成されている。
但し、図18に示す構成は、生体認証制御ユニット14のハードウェア構成を限定する趣旨ではない。生体認証制御ユニット14は、図示しないハードウェアを含んでもよい。また、生体認証制御ユニット14に含まれるプロセッサ311等の数も図18の例示に限定する趣旨ではなく、例えば、複数のプロセッサ311が生体認証制御ユニット14に含まれていてもよい。
プロセッサ311は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、DSP(Digital Signal Processor)等のプログラマブルなデバイスである。あるいは、プロセッサ311は、FPGA(Field Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)等のデバイスであってもよい。プロセッサ311は、オペレーティングシステム(OS;Operating System)を含む各種プログラムを実行する。
メモリ312は、RAM(Random Access Memory)、ROM(Read Only Memory)、HDD(Hard Disk Drive)、SSD(Solid State Drive)等である。メモリ312は、OSプログラム、アプリケーションプログラム、各種データを格納する。
通信インターフェイス313は、他の装置と通信を行う回路、モジュール等である。例えば、通信インターフェイス313は、NIC(Network Interface Card)等を備える。
生体認証制御ユニット14の機能は、各種処理モジュールにより実現される。当該処理モジュールは、例えば、メモリ312に格納されたプログラムをプロセッサ311が実行することで実現される。また、当該プログラムは、コンピュータが読み取り可能な記憶媒体に記録することができる。記憶媒体は、半導体メモリ、ハードディスク、磁気記録媒体、光記録媒体等の非トランジェント(non-transitory)なものとすることができる。即ち、本発明は、コンピュータプログラム製品として具現することも可能である。また、上記プログラムは、ネットワークを介してダウンロードするか、あるいは、プログラムを記憶した記憶媒体を用いて、更新することができる。さらに、上記処理モジュールは、半導体チップにより実現されてもよい。
生体認証制御ユニット14は、コンピュータを搭載し、当該コンピュータにプログラムを実行させることで生体認証制御ユニット14の機能が実現できる。また、生体認証制御ユニット14は、当該プログラムにより生体認証制御ユニット14の制御方法を実行する。
追跡ユニット15のハードウェア構成は、生体認証制御ユニット14のハードウェア構成と同一とすることができるので説明を省略する。
ゲート装置10は、上述のように、カメラ11、検出センサ12及びゲート13を備える(図19参照)。なお、ゲート装置10は、生体認証制御ユニット14と同様に、プロセッサ、メモリ、通信インターフェイス等のハードウェアを備えるが、これらの構成に関する図示と説明は省略する。
カメラ11は、可視光画像を取得可能なカメラ装置である。図3では、ゲート装置10は、1つのカメラ11を備える場合について説明したが、カメラ11の数や設置を限定する趣旨ではない。例えば、複数のカメラ11がゲート装置10に設置されていてもよい。
あるいは、被認証者を検出するためのカメラ11に代えて、他の手段により被認証者が検出されてもよい。例えば、人感センサ等を用いてゲート装置10から所定の距離離れた場所の人物が検出されてもよい。あるいは、人感センサにより人物が検出されたことを契機としてカメラ11が画像データを取得し、被認証者の検出が行われてもよい。
検出センサ12は、人を検出するセンサである。検出センサ12として、例えば、光の送信デバイスと受信デバイスにより構成されたセンサ(所謂、光を用いた通過センサ)を利用できる。例えば、光の送信デバイスと受信デバイスのそれぞれが対向するように設置される(本体の内壁に2つのデバイスが設置される)。送信デバイスは、光を常時送信し、受信デバイスは、当該送信された光を受信する。ゲート装置10は、受信デバイスが光を受信できなかった場合に、人が検出されたと判定する。なお、図3では、検出センサ12を構成する2つのデバイスのうち一方のデバイスを図示している。
ゲート13は、利用者の通行を制御するデバイスである。ゲート13の方式は、特に限定されるものではなく、例えば、通路の片側又は両側から設けられたフラッパーが開閉するフラッパーゲート、3本バーが回転するターンスタイルゲート等である。
生体認証制御ユニット14や追跡ユニット15の機能は、ゲート装置10の全体を制御するCPU等により実現されてもよい。逆に、ゲート装置10の機能は、生体認証制御ユニット14が備えるプロセッサ311により実現されてもよい。
あるいは、追跡ユニット15の機能は生体認証制御ユニット14により実現されてもよい。あるいは、追跡ユニット15の機能は測距センサ16に内蔵されていてもよい。即ち、追跡ユニット15の機能が内蔵された測距センサ16と生体認証制御ユニット14が接続されていてもよい。
なお、サーバ装置20は、情報処理装置により構成可能である。サーバ装置20は、生体認証制御ユニット14と同様に、プロセッサ、メモリ、通信インターフェイス等を備えていればよく、当業者にとってその構成は明らかであるので詳細な説明を省略する。
[変形例]
なお、上記実施形態にて説明した認証システムの構成、動作等は例示であって、システムの構成等を限定する趣旨ではない。
上記実施形態では、ゲート装置10は駅に設置された改札機として説明を行った。しかし、ゲート装置10を改札機に限定する趣旨ではないことは勿論である。ゲート装置10は、空港、イベント会場、オフィス等に設置され利用者の通行を制御する装置であればよい。
上記実施形態では、サーバ装置20が利用者情報データベースを有する場合について説明した。しかし、当該データベースは、サーバ装置20とは異なるデータベースサーバに構築されていてもよい。また、認証システムには、上記実施形態にて説明した各種手段(認証要求部203、追跡制御部204等)が含まれていればよい。例えば、サーバ装置20にて実行される認証処理はゲート装置10(生体認証制御ユニット14)にて実行されてもよい。サーバ装置20の一部又は全部の機能はゲート装置10にて実現されてもよい。
上記実施形態では、生体認証制御ユニット14からサーバ装置20に顔画像から生成された特徴量に係る生体情報が送信される場合について説明した。しかし、生体認証制御ユニット14からサーバ装置20に「顔画像」そのものが生体情報として送信されてもよい。サーバ装置20は、取得した顔画像から特徴量を生成し、認証処理(1対N照合)を実行してもよい。
上記実施形態では、被認証者検出部202が、被認証者の位置(X座標、Y座標)を推定する場合について説明した。しかし、被認証者の位置に関する推定は、追跡制御部204が行ってもよい。この場合、被認証者検出部202は、被認証者IDと画像データを追跡制御部204に引き渡せばよい。追跡制御部204は、取得した画像データを用いて被認証者の位置(X座標、Y座標)を推定すればよい。
上記実施形態では、カメラ11は単眼のカメラであることを前提としているが、カメラ11は、奥行方向を測定できるデプスカメラ(ステレオカメラ)であってもよい。この場合、生体認証制御ユニット14は、目間距離に対する閾値処理に代えて、ステレオカメラから得られる画像を用いてゲート装置10から所定の距離離れた場所の被認証者を検出してもよい。具体的には、生体認証制御ユニット14は、ステレオカメラから得られる2枚の画像を解析(視差を利用した解析)し、ゲート装置10を基準とした利用者の位置を計算する。生体認証制御ユニット14は、当該計算された位置が予め定めた場所に含まれていれば、当該利用者を被認証者に設定する。
生体認証制御ユニット14とサーバ装置20の間のデータ送受信の形態は特に限定されないが、これら装置間で送受信されるデータは暗号化されていてもよい。顔画像や当該顔画像から算出される特徴量は個人情報であり当該個人情報を適切に保護するためには、暗号化されたデータが送受信されることが望ましい。
なお、上記実施形態では、ゲート装置10と生体認証制御ユニット14、追跡ユニット15が分離している場合について説明した。しかし、これらの装置が統合されていてもよい。即ち、生体認証制御ユニット14及び追跡ユニット15はゲート装置10と一体化されていてもよい。この場合、ゲート装置10は、図9に示す構成に加え、図4に示す生体認証制御ユニット14の被認証者検出部202、認証要求部203、追跡制御部204等と、図7に示す追跡ユニット15の追跡部302を備えていればよい。
上記実施形態では、被認証者情報テーブルを用いて被認証者に関する情報を記憶、管理する場合について説明した。しかし、被認証者に関する情報はデータベース(被認証者情報データベース)を用いて記憶、管理されてもよい。
上記説明で用いた流れ図(フローチャート、シーケンス図)では、複数の工程(処理)が順番に記載されているが、実施形態で実行される工程の実行順序は、その記載の順番に制限されない。実施形態では、例えば各処理を並行して実行する等、図示される工程の順番を内容的に支障のない範囲で変更することができる。
上記の実施形態は本願開示の理解を容易にするために詳細に説明したものであり、上記説明したすべての構成が必要であることを意図したものではない。また、複数の実施形態について説明した場合には、各実施形態は単独で用いてもよいし、組み合わせて用いてもよい。例えば、実施形態の構成の一部を他の実施形態の構成に置き換えることや、実施形態の構成に他の実施形態の構成を加えることも可能である。さらに、実施形態の構成の一部について他の構成の追加、削除、置換が可能である。
上記の説明により、本発明の産業上の利用可能性は明らかであるが、本発明は、空港や駅等に設置される認証システムなどに好適に適用可能である。
上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
[付記1]
被認証者を検出する、被認証者検出部と、
前記被認証者の生体情報を含む認証要求をサーバ装置に送信する、要求部と、
測距センサを用いて追跡対象者を追跡する追跡ユニットに対し、前記被認証者の位置情報を含む追跡開始指示を送信すると共に、前記追跡ユニットから追跡結果を取得する追跡制御部と、
前記サーバ装置による前記被認証者の生体認証の結果と、前記追跡ユニットによる前記追跡結果と、に基づいて前記被認証者がゲート装置を通行できるか否か判定し、判定結果を前記ゲート装置に通知する、通知部と、
を備える、生体認証制御ユニット。
[付記2]
前記追跡制御部は、前記追跡対象者が前記ゲート装置に進入したことを示す被認証者進入通知を前記追跡ユニットから受信し、
前記被認証者進入通知が受信されたことに応じて、前記通知部は、前記被認証者がゲート装置を通行できるか否か判定する、付記1に記載の生体認証制御ユニット。
[付記3]
前記追跡制御部は、
前記追跡開始指示を送信した後、前記被認証者IDを含む位置問い合わせを前記追跡ユニットに送信し、前記追跡ユニットから前記被認証者IDに対応する前記追跡対象者の位置情報を取得し、
前記通知部は、前記取得した追跡対象者の位置情報が、前記追跡対象者が前記ゲート装置に進入したことを示す場合、前記被認証者がゲート装置を通行できるか否か判定する、付記1に記載の生体認証制御ユニット。
[付記4]
前記被認証者検出部は、前記被認証者を検出すると、被認証者情報テーブルにエントリを追加し、
前記要求部は、前記サーバ装置から前記生体認証の結果を受信すると、前記受信した生体認証の結果を前記追加されたエントリの認証ステータスフィールドに設定し、
前記追跡制御部は、前記追跡結果を前記追加されたエントリの追跡ステータスフィールドに設定し、
前記通知部は、前記認証ステータスフィールドの設定値と前記追跡ステータスフィールドの設定値に基づき、前記被認証者が前記ゲート装置を通行できるか否か判定する、付記1乃至3のいずれか一項に記載の生体認証制御ユニット。
[付記5]
前記被認証者情報テーブルに追加されてから所定期間経過したエントリを削除する、テーブル管理部をさらに備える、付記4に記載の生体認証制御ユニット。
[付記6]
前記生体情報は、顔画像又は顔画像から生成された特徴量である、付記1乃至5のいずれか一項に記載の生体認証制御ユニット。
[付記7]
複数の利用者それぞれの生体情報を記憶し、生体認証を行うサーバ装置と、
生体認証制御ユニット及び追跡ユニットが搭載されたゲート装置と、
を含み、
前記生体認証制御ユニットは、
被認証者を検出し、前記検出された被認証者の生体情報を含む認証要求を前記サーバ装置に送信すると共に、前記追跡ユニットに対し、前記被認証者の位置情報を含む追跡開始指示を送信し、
前記追跡ユニットは、
前記追跡開始指示に含まれる位置情報に対応する場所に存在する人を追跡対象者に設定し、測距センサを用いて前記追跡対象者の追跡を行い、前記追跡対象者が前記ゲート装置に進入すると被認証者進入通知を前記生体認証制御ユニットに送信し、
前記生体認証制御ユニットは、
前記被認証者進入通知を受信すると、前記サーバ装置による認証結果に基づいて前記被認証者が前記ゲート装置を通行できるか否か判定し、判定結果を前記ゲート装置に通知する、システム。
[付記8]
前記生体認証制御ユニットは、
前記被認証者の位置情報と前記被認証者の被認証者IDを含む前記追跡開始指示を前記追跡ユニットに送信し、
前記追跡ユニットは、
前記追跡対象者の位置と前記被認証者IDを対応付けて管理し、前記追跡対象者が前記ゲート装置に進入したことに応じて追跡を完了すると、前記追跡を完了した追跡対象者の前記被認証者IDを前記生体認証制御ユニットに通知する、付記7に記載のシステム。
[付記9]
前記生体認証制御ユニットは、
前記検出された被認証者の生体情報と前記被認証者IDを含む認証要求を前記サーバ装置に送信し、
前記サーバ装置は、認証対象者の前記被認証者IDを前記生体認証制御ユニットに通知する、付記8に記載のシステム。
[付記10]
前記生体認証制御ユニットは、前記サーバ装置から通知された前記被認証者IDと前記追跡ユニットから通知された前記被認証者IDが一致する被認証者について前記ゲート装置を通行できるか否か判定する、付記9に記載のシステム。
[付記11]
前記サーバ装置は、前記複数の利用者それぞれの生体情報と前記認証要求に含まれる生体情報を用いた照合処理を行う、付記7乃至10のいずれか一項に記載のシステム。
[付記12]
前記サーバ装置は、前記照合処理により特定された利用者が前記ゲート装置を通行する資格を備えているか否か判定する、付記11に記載のシステム。
[付記13]
前記測距センサは、3次元距離センサである、付記7乃至12のいずれか一項に記載のシステム。
[付記14]
生体認証制御ユニットにおいて、
被認証者を検出し、
前記被認証者の生体情報を含む認証要求をサーバ装置に送信し、
測距センサを用いて追跡対象者を追跡する追跡ユニットに対し、前記被認証者の位置情報を含む追跡開始指示を送信すると共に、前記追跡ユニットから追跡結果を取得し、
前記サーバ装置による前記被認証者の生体認証の結果と、前記追跡ユニットによる前記追跡結果と、に基づいて前記被認証者がゲート装置を通行できるか否か判定し、判定結果を前記ゲート装置に通知する、生体認証制御ユニットの制御方法。
[付記15]
生体認証制御ユニットに搭載されたコンピュータに、
被認証者を検出する処理と、
前記被認証者の生体情報を含む認証要求をサーバ装置に送信する処理と、
測距センサを用いて追跡対象者を追跡する追跡ユニットに対し、前記被認証者の位置情報を含む追跡開始指示を送信すると共に、前記追跡ユニットから追跡結果を取得する処理と、
前記サーバ装置による前記被認証者の生体認証の結果と、前記追跡ユニットによる前記追跡結果と、に基づいて前記被認証者がゲート装置を通行できるか否か判定し、判定結果を前記ゲート装置に通知する処理と、
を実行させるためのプログラムを記憶する、コンピュータ読取可能な記憶媒体。
なお、引用した上記の先行技術文献の各開示は、本書に引用をもって繰り込むものとする。以上、本発明の実施形態を説明したが、本発明はこれらの実施形態に限定されるものではない。これらの実施形態は例示にすぎないということ、及び、本発明のスコープ及び精神から逸脱することなく様々な変形が可能であるということは、当業者に理解されるであろう。即ち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得る各種変形、修正を含むことは勿論である。