以下、図面を参照して、本発明の実施形態を詳細に説明する。
図1は、本発明のテレワーク管理システムのシステム構成の一例を示す図である。
テレワーク管理システム100は、1または複数の管理サーバ101、1または複数のテレワーカ用PC111、1または複数の管理者用PC121がインターネット130を介して接続される構成となっている。
管理サーバ101は、テレワーカの在席・離席状況に関する情報や第三者による覗き込み、成りすまし等の情報(テレワーク情報)を一元管理するサーバであり、サービス環境ネットワーク104上に構築されている。
管理サーバ101へは、テレワーカ用PC111と管理者用PC121が、アカウントID(ユーザID)とパスワードを用いた認証処理により接続し、管理サーバ101は、テレワーカ用PC111からテレワーク情報(テレワーカ用PC111から受信した各種情報)を受信した場合は、管理サーバ101のデータベースに格納する。また、管理者用PC121からテレワーク情報の取得要求があった場合は、管理サーバ101のデータベースから必要なテレワーク情報を取り出す。
テレワーカ用PC111は、テレワーカから勤務中か勤務外かの申請(申告)を受け付け、また接続された撮像装置により撮影された映像(画像)から端末前方状態(テレワーカが在席・離席しているのか、覗き込みやなりすましが発生しているか)を検知する端末である。自宅ネットワーク110上に存在し、端末前方状態は、ルータ112、インターネット130、及びルータ103を介して管理サーバ101へ送信される。
管理者用PC121は、テレワーク情報を確認するための端末であり、社内ネットワーク120上に存在し、テレワーク情報の確認には、ウェブ管理コンソール(ウェブブラウザ上で動作)を使用し、ルータ122、インターネット130、及びルータ103を介して管理サーバ101に接続する。
なお、本実施例においては、テレワーカ用PC111が端末前方状態を検知し、管理サーバ101へ情報を送信する構成として説明するが、テレワーカ用PC111から映像(画像)のみを管理サーバ101に送信し、管理サーバ101において当該映像(画像)から端末前方状態を検知するよう構成しても良い。
図2は、本発明の実施形態における管理サーバ101、テレワーカ用PC111、管理者用PC121に適用可能な情報処理装置のハードウェア構成の一例を示すブロック図である。各装置ともに、同様な構成を備えるため、同一の符号を用いて説明する。
図2に示すように、情報処理装置は、システムバス200を介してCPU(Central Processing Unit)201、ROM(Read Only Memory)202、RAM(Random Access Memory)203、記憶装置204、入力コントローラ205、音声入力コントローラ206、ビデオコントローラ207、メモリコントローラ208、よび通信I/Fコントローラ209が接続される。
CPU201は、システムバス200に接続される各デバイスやコントローラを統括的に制御する。
ROM202あるいは記憶装置204は、CPU201が実行する制御プログラムであるBIOS(Basic Input/Output System)やOS(Operating System)や、本情報処理方法を実現するためのコンピュータ読み取り実行可能なプログラムおよび必要な各種データ(データテーブルを含む)を保持している。
RAM203は、CPU201の主メモリ、ワークエリア等として機能する。CPU201は、処理の実行に際して必要なプログラム等をROM202あるいは記憶装置204からRAM203にロードし、ロードしたプログラムを実行することで各種動作を実現する。
入力コントローラ205は、入力装置210からの入力を制御する。入力装置210としては、キーボード、タッチパネル、マウス等のポインティングデバイス等が挙げられる。
なお、入力装置210がタッチパネルの場合、ユーザがタッチパネルに表示されたアイコンやカーソルやボタンに合わせて押下(指等でタッチ)することにより、各種の指示を行うことができることとする。
また、タッチパネルは、マルチタッチスクリーンなどの、複数の指でタッチされた位置を検出することが可能なタッチパネルであってもよい。
音声入力コントローラ206は、マイク/スピーカ211がマイク機能として動作する場合、マイク/スピーカ211からの音声入力を制御し、マイク/スピーカ211から入力された音声を認識することが可能となっている。また、音声入力コントローラ206は、マイク/スピーカ211がスピーカ機能として動作する場合、マイク/スピーカ211への音声出力を制御し、マイク/スピーカ211に対し音声を出力することが可能となっている。
ビデオコントローラ207は、ディスプレイ212などの外部出力装置への表示を制御する。ディスプレイは本体と一体になったノート型パソコンのディスプレイも含まれるものとする。なお、外部出力装置はディスプレイに限ったものははく、例えばプロジェクタであってもよい。また、前述のタッチ操作により受け付け可能な装置については、入力装置210を提供する。
なおビデオコントローラ207は、表示制御を行うためのビデオメモリ(VRAM)を制御することが可能で、ビデオメモリ領域としてRAM203の一部を利用することもできるし、別途専用のビデオメモリを設けることも可能である。
本発明では、ユーザが情報処理装置を通常使用する場合の表示に用いられる第1のビデオメモリ領域と、所定の画面が表示される場合に、第1のビデオメモリ領域の表示内容に重ねての表示に用いられる第2のビデオメモリ領域を有している。ビデオメモリ領域は2つに限ったものではなく、情報処理装置の資源が許す限り複数有することが可能なものとする。
メモリコントローラ208は、外部メモリ213へのアクセスを制御する。外部メモリとしては、ブートプログラム、各種アプリケーション、フォントデータ、ユーザファイル、編集ファイル、および各種データ等を記憶する外部記憶装置(ハードディスク)、フレキシブルディスク(FD)、或いはPCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリ等を利用可能である。
通信I/Fコントローラ209は、ネットワーク214を介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いた通信やISDNなどの電話回線、および携帯電話の3G回線を用いた通信が可能である。
なお、記憶装置204は情報を永続的に記憶するための媒体であって、その形態をハードディスク等の記憶装置に限定するものではない。例えば、SSD(Solid State Drive)などの媒体であってもよい。
また本実施形態における通信端末で行われる各種処理時の一時的なメモリエリアとしても利用可能である。
尚、CPU201は、例えばRAM203内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、ディスプレイ212上での表示を可能としている。また、CPU201は、ディスプレイ212上の不図示のマウスカーソル等でのユーザ指示を可能とする。
次に、図3、図4のフローチャートを用いて、本実施形態におけるテレワーク管理システムが実行する処理について説明する。
図3、図4のフローチャートは、テレワーカ用PC111のCPU201が所定の制御プログラムを読み出して実行する処理である。
ステップS301では、テレワーカ用PC111のCPU201は、設定ファイルから各種パラメータを読み込む。パラメータには、例えば、カメラの画像サイズ、顔認証の類似度の閾値(条件)がある。
顔認証の類似度の閾値は、テレワーカ本人かどうかの判断に使用する値であり、本実施例においては、0.7を指定する。
読み込んだ各パラメータは、RAM203に記憶させておき、必要なときに参照する。
ステップS302では、テレワーカ用PC111のCPU201は、ステップS314で証跡情報を送信できるよう、管理サーバ101との通信接続を確立する。通信接続の確立には、あらかじめ管理サーバに登録しているテレワーカのシステムログイン用のアカウントID(ユーザID)とログインパスワードを使用して認証を行う。
ステップS303では、テレワーカ用PC111のCPU201は、S302で認証が成功して通信接続されると、テレワーカ用PC111に接続されたカメラにより撮影された画像を取得する。取得した画像はRAM203に記憶しておく。ここで、テレワーカ用PC111に接続されたカメラは、テレワーカ用PC111の前方のユーザを撮影可能な位置に設けれられている。
ステップS304では、テレワーカ用PC111のCPU201は、ステップS303で取得した画像から顔を検出する。顔の検出には公知技術を用いるものとする。検出結果はRAM203に記憶しておく。
ステップS305では、テレワーカ用PC111のCPU201は、ステップS304において検出された顔の個数が、1個であるか、2個以上であるか、0個(未検出)であるかを判定する。すなわち、顔の検出個数を判定する。
顔の検出数が0個(未検出)の場合、処理をステップS308に移行し、端末前方状態(テレワーカの勤務状態)を「離席」として判定し設定する。
検出数が2個以上の場合、処理をステップS307に移行し、端末前方状態(テレワーカの勤務状態)を「覗き見」(覗き込み)として判定し設定する。
検出数が1個の場合、処理をステップS306に移行し、S304で撮影された撮像画像に含まれる顔が、テレワーカ本人の顔であるか否かを確認するための顔認証処理をおこなう。
ステップS306では、テレワーカ用PC111のCPU201は、S303でカメラにより撮影された画像からS304で検出された顔の顔画像と、予め登録されたテレワーカ本人の顔画像(認証用顔画像)との類似度を算出する。ここで、テレワーカ本人の顔画像は、予め、テレワーカ用PC111(及び/又は管理サーバ101)のメモリ等の記憶手段に予め記憶されている。
ここで、予め登録されたテレワーカ本人の顔画像は、図11に示す認証用顔画像のデータテーブル1101に示される、テレワーカ用PC111(及び/又は管理サーバ101)のメモリ等の記憶手段に予め登録されており、テレワーカ用PC111は、類似度を算出する際に取得する。
図11は、認証用顔画像のデータテーブル1101の一例を示す図である。
認証用顔画像のデータテーブル1101には、予め登録されたテレワーカ本人の顔画像のファイル名を示す「認証用顔画像ファイル名」と、当該ファイル名のファイルの格納先を示す「ファイルパス」とから構成されている。
ステップS309では、テレワーカ用PC111のCPU201は、ステップS306で算出した類似度と、ステップS301で読み込んだ類似度の閾値とを比較し、画像から検出された顔がテレワーカ本人の顔であるかを判定する。
具体的には、算出された類似度が閾値以上の場合は本人と判定し、閾値未満の場合は、他人と判定する。
ステップS306、S309は、本発明の顔認証手段の適用例であり、認証対象の被写体の撮影画像に含まれる顔画像と、登録手段(S419)により登録された認証用顔画像と、を用いて顔認証を行う。
本人と判定された場合(ステップS309:YES)は、処理をステップS310に移行し、端末前方状態(テレワーカの勤務状態)を「在席」に設定する。
他人と判定された場合(ステップS309:NO)は、処理をステップS311に移行し、端末前方状態(テレワーカの勤務状態)を「なりすまし」に設定する。
ステップS312では、テレワーカ用PC111のCPU201は、端末前方状態(テレワーカの勤務状態)を判定し、「覗き見」または「なりすまし」の場合は、処理をステップS313に移行する。また、「在席」または「離席」と判定された場合は、処理をステップS314に移行する。
ステップS313では、テレワーカ用PC111のCPU201は、ディスプレイに表示されている画面のスクリーンショットをスクリーン画面として取得する。
ステップS314では、テレワーカ用PC111のCPU201は、ステップS303で取得したカメラ画像と、ステップS313で取得したスクリーン画像とを、管理サーバ101に証跡情報として送信する。
ここで送信される証跡情報は、管理サーバ101が受信してメモリに記憶され管理される。
管理サーバ101は、この証跡情報を管理することにより、なりすまし、覗き見、離席、在席を示す状態と、その日時(時間帯)とを、ユーザごとに管理する。
また、管理サーバ101は、この証跡情報のうち、なりすまし、覗き見を示す状態の日時(時間帯)等の情報を不正証跡データテーブル(図11の1102)として説明する。
図11の1102は、不正証跡データテーブルの一例を示す図である。
図11に示す不正証跡データテーブル1102Aは、「不正証跡データID」、「不正状態」、「不正発生日時」、「カメラ画像パス」、「スクリーンショット画像パス(スクリーン画像パス)」、「不正ユーザID」から構成される。
ここで、「不正証跡データID」は、なりすまし、覗き見の不正の証跡情報を識別する情報(レコードのID)である。また、「不正状態」は、なりすまし、覗き見を識別する情報である。また、「不正発生日時」は、当該不正状態が発生した日時又は時間帯を示す情報である。また、「カメラ画像パス」は、当該不正状態が発生したと判定されたカメラ画像(S303で取得された画像)の格納先を示す情報である。また、「スクリーンショット画像パス」は、S313で取得されたスクリーン画像の格納先を示す情報である。また、「不正ユーザID」は、S302の認証処理で認証されているユーザのユーザIDである。
S314では、「不正状態」、「不正発生日時」、「S303で取得したカメラ画像」、「S313で取得したスクリーン画像」、「S302で認証されたユーザID」の情報を管理サーバ101に送信し、管理サーバ101は、当該情報を受信すると、「不正証跡データID」を採番して、「S303で取得したカメラ画像」を格納した格納先を「カメラ画像パス」に格納し、「S313で取得したスクリーン画像」を格納した格納先を「スクリーンショット画像パス(スクリーン画像パス)」に格納する。
ステップS315では、テレワーカ用PC111のCPU201は、本実施形態の処理を終了する指示がなされたかを判断する。例えば、メニュー等からテレワーカ本人により明示的に終了命令があったかを判断する。処理を終了する場合は、本フローチャートの処理を終了し、処理を終了させない場合は、再びステップS303の処理に戻る。
次に、図4のフローチャートを用いて、S306に顔認証処理で用いられる、予め登録するテレワーカ本人の顔画像の登録処理(S303で取得したカメラ画像の比較対象の顔画像の登録処理)について説明する。
図4は、S306に顔認証処理で用いられる、予め登録するテレワーカ本人の顔画像の登録処理の一例を示すフローチャートである。
図4に示すフローチャートに示す各ステップの処理は、テレワーカ用PC111のCPU201が、プログラムを読み出して実行することにより、実現される。
テレワーカ用PC111は、S302でユーザ認証が成功した後に、まず、ユーザにより、顔画像の登録画面要求の指示を受け付ける。
テレワーカ用PC111は、当該指示を受け付けると、図5に示す顔画像登録画面を表示する(ステップS401)
図5は、顔画像登録画面の一例を示す図である。
図5には、9つの表示領域502〜510が表示されており、各表示領域内にそれぞれ人物のシルエット(オブジェクト)(511、513、515、517、519、521、523、525、527)が表示されている。
また、各表示領域(502〜509)には、矢印(512、514、516、518、520、522、524、526)が表示されている。この矢印(オブジェクト)は、顔画像登録画面で登録すべき人物の顔の所定の向きを示している。たとえば、また、514の矢印は、顔を真上(0°)に向くように指示しており、顔が真上を向いた顔画像が配置されることを示している。また、516の矢印は、顔を右上(45°)に向くように指示しており、顔が右上を向いた顔画像が配置されることを示している。また、518の矢印は、顔を右(90°)に向くように指示しており、顔が右(90°)を向いた顔画像が配置されることを示している。また、520の矢印は、顔を右下(135°)に向くように指示しており、顔が右下(135°)を向いた顔画像が配置されることを示している。また、522の矢印は、顔を真下(180°)に向くように指示しており、顔が真下(180°)を向いた顔画像が配置されることを示している。また、524の矢印は、顔を左下(225°)に向くように指示しており、顔が左下(225°)を向いた顔画像が配置されることを示している。また、526の矢印は、顔を左(270°)に向くように指示しており、顔が左(270°)を向いた顔画像が配置されることを示している。また、512の矢印は、顔を左上(315°)に向くように指示している。顔が左上(315°)を向いた顔画像が配置されることを示している。
このように、図5に示すように、各表示領域のそれぞれに対して、当該表示領域に対応する顔の向きを示すオブジェクト(矢印)を表示する。これにより、ユーザは、どの向きの顔画像が撮影済みで、どの向きの顔画像が不足しているかを把握することができる。また、S412、S413、S416で撮影済みの顔画像が表示領域に表示されるため、撮影済みのどの向きの顔画像がどのようなものであり、顔認証の精度向上に適したものであるかをユーザは確認することができ、撮り直しなどを行うことで、顔認証の精度向上に適した顔画像を効率よく登録することが可能となる。
表示領域510には、このような矢印が表示されていないが、このような矢印が表示されていないことで、真正面又は略正面を向いた顔画像が配置されることを示している。表示領域510には、このような矢印を表示していないが、真正面又は略正面の方向を示すオブジェクト(例えば、●などのオブジェクト)表示してもよい。
すなわち、表示領域510(第1の表示領域)は、被写体の顔が正面又は略正面を向いている撮影画像を表示する表示領域である。
このように、9つの方向(被写体の顔の所定の向き)を向いた顔の画像を撮影することで、それぞれの向きに対応した表示領域に、当該撮影された顔画像が表示されることとなる。
すなわち、図5に示す通り、被写体の顔の所定の向きに対応する所定の位置に、当該顔の所定の向きの被写体の撮影画像を表示するための表示領域を、複数の所定の向きごとに表示する。
表示領域510は、9つの全ての方向を向いた顔の画像が撮影されるまでは、人物(被写体)のライブ映像が表示され、9つの全ての方向を向いた顔の画像が撮影されると、真正面又は略正面を向いた顔画像が表示(配置)される。
表示領域510は、本発明の第1の表示領域の適用例であり、カメラにより撮影されたライブ映像(リアルタイム映像(動画))を表示する。
表示領域502〜509は、本発明の第2の表示領域の適用例であり、第1の表示領域に隣り合う方向の位置に表示された第2の表示領域であって、当該方向に該当する顔の向きの被写体の撮影画像を表示する第2の表示領域である。
図5等に示す通り、第2の表示領域(502〜509)は、第1の表示領域(510)に対して左右上下、右上、右下、左上、左下のそれぞれの方向の位置に表示された表示領域を含む。
また、図5の528は、撮影開始ボタンであり、529は、登録ボタンである。529の登録ボタンは、S417までは、押下不可能になっている。
テレワーカ用PC111は、図5に示す顔画像登録画面を表示すると(ステップS401)、テレワーカ用PC111のカメラにより撮影されたライブ映像の画像を取得して表示領域510に表示する処理を開始する(ステップS402)。
ここで、図6に、ステップS402により、テレワーカ用PC111のカメラにより撮影開始されたライブ映像が表示領域510に表示されている顔画像登録画面の一例を示す。
図6は、テレワーカ用PC111のカメラにより撮影開始されたライブ映像が表示領域510に表示されている顔画像登録画面の一例を示す図である。
テレワーカ用PC111は、図6に示すように、ライブ映像の画像を解析して特定された顔を点線601で囲むように表示する。ここでは、当該特定された顔を点線601で囲んでいるが、例えば、点線ではなく、当該特定された顔を緑色などの識別可能な実線で囲むようにしてもよい。
次に、テレワーカ用PC111は、ユーザによる撮影開始ボタン528の押下を受け付ける。
テレワーカ用PC111は、ユーザにより撮影開始ボタン528が押下されたか否かを判定し(ステップS403)、押下されたと判定された場合には(YSE)、処理をステップS404に移行すると共に、528のボタンの表示を撮影開始から撮影中に変更する。一方、押下されていないと判定された場合には(NO)、処理をS403に戻し、ユーザによる撮影開始ボタン528の押下を待つ。
ユーザは、撮影開始ボタン528を押下すると、例えば、真正面又は略正面、右上、右、右下、下、左下、左、左上、上の順で、顔の方向を変えながら、カメラによる撮影を行う。
テレワーカ用PC111は、9つの全ての表示領域502〜510に対応する、9方向の全ての顔画像を撮影したか否かを判定する(ステップS404)。
そして、テレワーカ用PC111は、ステップS404において、9方向の全ての顔画像を撮影したと判定された場合には(YES)、処理をS416に移行する。一方、ステップS404において、9方向の全ての顔画像を撮影していないと判定された場合には(NO)、処理をステップS405に移行する。
そして、テレワーカ用PC111は、ステップS403で撮影開始ボタン528が押下されてから所定時間が経過したか否かを判定する(ステップS405)。
テレワーカ用PC111は、ステップS403で撮影開始ボタン528が押下されてから所定時間が経過したと判定された場合には(YES)、処理をステップS415に移行する。
また、テレワーカ用PC111は、ステップS403で撮影開始ボタン528が押下されてから所定時間が経過していないと判定された場合には(NO)、処理をステップS406に移行する。
テレワーカ用PC111は、テレワーカ用PC111のカメラによる、被写体(人物)の静止画の撮影を行う撮影処理を実行する(ステップS406)。ステップS406の撮影は、例えば、1秒間隔で撮影するように、撮影タイミングの調整を行った上で行われる。
そして、テレワーカ用PC111は、ステップS406の撮像処理で撮影された画像(静止画)を解析して、人物の顔、及び当該顔の向き(角度などのベクトル情報)を特定する(ステップS407)。
S407は、本発明の特定手段の適用例であり、撮影された撮影画像の顔の向きを特定する。
そして、テレワーカ用PC111は、ステップS407で特定された顔の向き(角度などのベクトル情報)が、9つの表示領域502〜510の何れかに対応する所定の9方向(所定の向き)の何れかに該当するか否かを判定する(ステップS408)。
テレワーカ用PC111は、具体的には、9つの表示領域502〜510ごとに、表示領域に対応する顔の方向を示す方向情報(ベクトル情報)を記憶している。
例えば、503の表示領域は、真上(0°)のベクトル情報を記憶しており、504の表示領域は、右上(45°)のベクトル情報を記憶しており、505の表示領域は、右(90°)のベクトル情報を記憶しており、506の表示領域は、右下(135°)のベクトル情報を記憶しており、507の表示領域は、真下(180°)のベクトル情報を記憶しており、508の表示領域は、左下(225°)のベクトル情報を記憶しており、509の表示領域は、左(270°)のベクトル情報を記憶しており、502の表示領域は、左上(315°)のベクトル情報を記憶しており、510の表示領域は、真正面又は略正面(角度なし)のベクトル情報を記憶している。
テレワーカ用PC111は、ステップS407で特定されたベクトル情報が、各表示領域に対応して記憶されている各ベクトル情報からプラスマイナス10°等の所定範囲内にあるかを判定することにより、ステップS407で特定された顔の向きが、9つの表示領域502〜510の何れかに対応する9方向の何れかに該当するか否かを判定する。すなわち、テレワーカ用PC111は、ステップS407で特定された顔の向きが、真上であるか、右上であるか、右であるか、右下であるか、真下であるか、左下であるか、左であるか、左上であるか、真正面又は略正面であるかを判定する(ステップS408)。
そして、テレワーカ用PC111は、ステップS407で特定された顔の向きが、9つの表示領域502〜510の何れかに対応する9方向の何れかに該当すると判定された場合には(ステップS408:YES)、処理をステップS409に移行し、一方、9方向の何れにも該当しないと判定された場合には(ステップS408:NO)、処理をステップS404に移行する。
次に、テレワーカ用PC111は、ステップS407で特定された顔の向きが、ステップS408において真正面又は略正面の方向に該当すると判定されたか否かを判定する(ステップS409)。
そして、テレワーカ用PC111は、ステップS407で特定された顔の向きが、ステップS408において真正面又は略正面の方向に該当すると判定された場合には(ステップS409:YES)、現在処理対象の撮影画像(ステップS406で撮影された画像)を、表示領域510に対応付けてメモリに一時保存する(ステップS414)。そして、処理をステップS404に戻す。
テレワーカ用PC111は、ステップS407で特定された顔の向きが真正面又は略正面の方向に該当しない(真正面又は略正面の方向ではない)と判定された場合(ステップS409:NO)、処理をS410に移行する。
テレワーカ用PC111は、ステップS408において該当すると判定された顔の向きに対応する表示領域(ステップS408で特定された顔の向きの表示領域)に、既に、撮影画像が表示されているか否かを判定する(ステップS410)。
そして、テレワーカ用PC111は、ステップS408において該当すると判定された顔の向きに対応する表示領域(ステップS408で特定された顔の向きの表示領域)に、既に、撮影画像が表示されていると判定された場合には(ステップS410:YES)、処理をステップS411に移行して、表示されていないと判定された場合には(ステップS410:NO)、処理をステップS413に移行する。
テレワーカ用PC111は、ステップS413において、ステップS408で該当すると判定された顔の向きに対応する表示領域(ステップS408で特定された顔の向きの表示領域)に、現在処理対象の撮影画像(ステップS406で撮影された画像)を表示すると共に、当該撮影画像をメモリに一時保存する。また、このとき、ステップS407で特定された顔の向き(角度などのベクトル情報)も撮影画像に対応付けて記憶する。そして、処理をS404に移行する。
テレワーカ用PC111は、ステップS411において、ステップS410で表示済みと判定された表示中の撮影画像に対応付けて記憶された顔の向き(角度などのベクトル情報)よりも、現在処理対象の撮影画像の顔の向き(角度などのベクトル情報)の方が、当該表示領域に対応して記憶されているベクトル情報が示す方向に近いかを否かを判定する。
本実施形態において、ベクトル情報とは、顔の向きを示すベクトルであり、例えば、図14に示す矢印(1401〜1408)が顔の向きを示すベクトルを示している。
図14は、図10の顔画像登録画面の変形例を示す画面である。
1401のベクトルは、315°を示しており、1402のベクトルは、0°を示しており、1403のベクトルは、45°を示しており、1404のベクトルは、90°を示しており、1405のベクトルは、135°を示しており、1406のベクトルは、180°を示しており、1407のベクトルは、225°を示しており、1408のベクトルは、270°を示している。このようなベクトルを示す矢印を図14に示すように、顔画像登録画面に表示するようにしてもよい。
このベクトルは、撮影画像を解析して特定された顔の領域を示す矩形の点線601の移動方向、及び、傾きから特定される。
本実施形態では、顔の向きを示すベクトルに基づいて顔の向きを特定しているが、顔の向きを特定することができれば、ベクトルを用いない既知の他の方法であってもよい。
そして、テレワーカ用PC111は、ステップS410で表示済みと判定された表示中の撮影画像に対応付けて記憶された顔の向き(角度などのベクトル情報)よりも、現在処理対象の撮影画像の顔の向き(角度などのベクトル情報)の方が、当該表示領域に対応して記憶されているベクトル情報が示す方向に近いと判定された場合には(ステップS411:YES)、当該現在表示中の撮影画像を、現在処理対象の撮影画像に表示を切り替えて、現在処理対象の撮影画像をメモリに一時保存する(ステップS412)。また、このとき、ステップS407で特定された顔の向き(角度などのベクトル情報)も撮影画像に対応付けて記憶する。また、ここで表示が切り替わり表示されなくなった撮影画像、及び、当該撮影画像により特定された顔の向き(角度などのベクトル情報)については、メモリから削除する。そして、処理をステップS404に戻す。
S412、S413、S416では、撮影済みの顔画像が表示領域に表示されるため、撮影済みのどの向きの顔画像がどのようなものであり、顔認証の精度向上に適したものであるかをユーザは確認することができ、撮り直しなどを行うことで、顔認証の精度向上に適した顔画像を効率よく登録することが可能となる。それゆえ、被写体の顔の複数の所定の向きの撮影画像の撮影にかかる利便性を向上させることができる。
また、テレワーカ用PC111は、ステップS410で表示済みと判定された表示中の撮影画像に対応付けて記憶された顔の向き(角度などのベクトル情報)よりも、現在処理対象の撮影画像の顔の向き(角度などのベクトル情報)の方が、当該表示領域に対応して記憶されているベクトル情報が示す方向に近くない(表示中の撮影画像に対応付けて記憶された顔の向きよりも、現在処理対象の撮影画像の顔の向きの方が、当該表示領域に対応して記憶されているベクトル情報が示す方向から遠い)と判定された場合には(ステップS411:NO)、処理をステップS404に移行する。
テレワーカ用PC111は、ステップS404において、9方向の全ての顔画像を撮影したと判定された場合には(ステップS404:YES)、すなわち、9方向の全ての表示領域に対応して撮影画像が記憶されていると判定された場合には、表示領域510に表示中のライブ映像の表示を停止し、ステップS414でメモリに一時保持した顔が真正面又は略正面の方向を向いている撮影画像を、表示領域510に表示する(ステップS416)。
すなわち、表示手段(ステップS416)は、全ての表示領域に対応する顔の向きが特定された撮影画像が撮影された場合に、図10に示すように、第1の表示領域(510)へのライブ映像の表示を、被写体の顔が正面又は略正面を向いている撮影画像の表示に切り替えて表示する。
そして、テレワーカ用PC111は、528のボタンを撮影中から撮影開始に変更すると共に、529の登録ボタンがユーザにより押下可能になるように、登録ボタン529をアクティブに変更する(ステップS417)。
次に、テレワーカ用PC111は、ユーザによる、登録ボタン529の押下を受け付ける(ステップS418)。
そして、テレワーカ用PC111は、ユーザにより登録ボタン529が押下されたと判定された場合には(YES)、現在、9つの全ての表示領域502〜510に表示されている撮影画像であって、現在、一時保持されている撮影画像を認証用顔画像として、テレワーカ用PC111のメモリに登録する処理、及び/又は、管理サーバ101のメモリに登録するべく、管理サーバに送信する処理を実行する(ステップS419)。
ステップS419は、本発明の登録手段の適用例であり、表示手段(S412、S413、S416)により、各表示領域に表示された撮影画像を、顔認証で用いられる認証用顔画像として登録する。
そして、テレワーカ用PC111は、ステップS419の処理を実行すると、処理を終了する、又は、処理を、図12に示すステップS1201に移行する。
また、ステップS419の処理を実行すると、テレワーカ用PC111は、ステップS311で、過去に「なりすまし」と設定したか否かを、証跡情報の履歴を用いて判定し、過去に「なりすまし」と設定したことがあると判定された場合には、処理を図12のステップS1201に移行し、設定したことが無いと判定された場合には、処理を終了するようにしてもよい。
テレワーカ用PC111は、ユーザにより登録ボタン529が押下されていないと判定された場合には(ステップS418:NO)、処理をS420に移行する。
テレワーカ用PC111は、ユーザにより撮影開始ボタン528が押下されたか否かを判定し(S420)、押下されたと判定された場合には(S420:YES)、処理をステップS404に移行し、一方、押下されていないと判定された場合には(S420:NO)、処理をステップS418に移行する。
また、テレワーカ用PC111は、ステップS415において、9方向のいずれかに該当して(ステップS408でYESと判定され)、S414、S412、S413の何れかで一時保存された撮影画像があるか否かを判定し、一時保存された撮影画像が無いと判定された場合には(ステップS415:NO)、処理をステップS401に戻し、一時保存された撮影画像が有ると判定された場合には(ステップS415:YSE)、処理をS417に移行する。
このように、ユーザが、撮影開始ボタン528を押下し、例えば、真正面又は略正面、右上の順で、顔の向きを変えると、図7に示すように、表示領域504に、顔が右上を向いている撮影画像が表示される。このときは、まだ、全ての表示領域に対応する撮影画像が一時保持されていないため、表示領域510にライブ映像が表示される。
図7、図8、図9は、ユーザを撮影中の顔画像登録画面の一例を示す図である。
図7〜図9に示す表示領域510には、ライブ映像が表示されている。
そして、次に、ユーザが、顔の向きを右に変えると、図8に示すように、表示領域505に、顔が右を向いている撮影画像が表示される。このときは、まだ、全ての表示領域に対応する撮影画像が一時保持されていないため、表示領域510にライブ映像が表示される。
次に、ユーザが、顔の向きを右下に変えると、図9に示すように、表示領域506に、顔が右下を向いている撮影画像が表示される。このときは、まだ、全ての表示領域に対応する撮影画像が一時保持されていないため、表示領域510にライブ映像が表示される。
このように、ユーザは、どの向きの顔画像の撮影が出来たか、どの向きの顔画像の撮影が出来ていないかを確認しつつ、現在のユーザのライブ映像を確認することが出来るため、顔画像の登録操作に関する操作性、ユーザビリティを向上させることができる。
このようにして、ユーザが顔の向きを変えながら、カメラによる撮影を行うことで、9つの全方向の顔の撮影が完了する。そして、9つの全方向の顔の撮影が完了すると、図10に示すように、各表示領域に、各表示領域に対応する顔の向きの撮影画像が表示され、表示領域510のライブ映像の表示が停止する。
図10は、ユーザの9つの全方向の顔の撮影が完了した際の顔画像登録画面の一例を示す図である。
テレワーカ用PC111は、ステップS419の処理により登録された撮影画像(認証用顔画像)は、テレワーカ用PC111のメモリに記憶されている認証用顔画像のデータテーブル1101(図11)に、当該登録された撮影画像(認証用顔画像)のファイル名、及びファイルパスが格納して、認証用顔画像のデータテーブル1101(図11)を更新する。
このように、テレワーク管理システムが顔認証で用いる複数の向きの顔画像を簡易に撮影して登録することが出来るようになる。すなわち、顔画像の登録操作に関する操作性、ユーザビリティを向上させることができる。また、複数の向きの顔画像を登録するため、ユーザの顔認証の認証精度を向上させることが出来るようになる。
ステップS401、S402、S412、S413、S416は、本発明の表示手段の適用例であり、顔認証で用いられる撮影画像を撮影する際に、それぞれ異なる顔の向きに対応して、当該顔の向きの被写体の撮影画像を表示する表示領域(502〜510)を含む画像登録画面(図5〜図10)を表示する。
すなわち、ステップS401、S402、S412、S413、S416は、本発明の表示手段の適用例であり、被写体の顔の複数の所定の向きのそれぞれに対応した表示領域(502〜510)を表示する。
また、ステップS412、S413、S416は、特定手段(S407)により特定された顔の向きに対応する表示領域に、当該顔の向きが特定された撮影画像を表示する(表示手段)。
すなわち、ステップS412、S413、S416は、被写体の顔を認識又は認証するために撮影された撮影画像を、当該撮影画像の被写体の顔の向きに対応する表示領域に表示する(表示手段)。
また、ステップS401、S402、ステップS412、S413、S416は、被写体の顔の所定の向きに対応する所定の位置に、当該顔の所定の向きの被写体の撮影画像を表示するための表示領域を、複数の所定の向きごとに表示する。
次に、過去になりすましと判定された顔画像(S304で撮影されたカメラ画像)と、図4に示す処理を実行して新規に登録された9つの全方向を向いた顔の認証用顔画像とを用いて、再度、S306、及びS309の処理を実行することにより、過去の認証用顔画像の不備に起因して過去になりすましと誤って判定された判定結果を、修正(補正・訂正)する処理について、説明する。
例えば、以前登録した認証用顔画像が、正面画像(又は略正面画像)のみであり、他の向きを向いた顔の認証用顔画像が登録されていない場合であって、S304で撮影されたカメラ画像の顔が、例えば、右上を向いている画像である場合、ステップS306で算出した類似度が低く算出されてしまい、テレワーカ本人であるにも関わらず、なりすましと判定(設定)されてしまうおそれがある。
そのような場合であっても、管理者が、そのなりすましと設定された不正証跡データに含まれるカメラ画像を確認して、そのカメラ画像に撮像されているユーザが、テレワーカ本人であるかを監査しなければならず、管理者の作業負担が増加してしまうおそれがある。
そのような負担の軽減を図るために、図12に示す処理を実行する。
次に、図12のフローチャートを用いて、本実施形態におけるテレワーク管理システムが実行する処理について説明する。
図12は、本実施形態におけるテレワーク管理システムが実行する処理の一例を示す図である。
図12に示すステップS1201、S1210の処理は、テレワーカ用PC111のCPU201が所定の制御プログラムを読み出して実行する処理である。
また、図12に示すステップS1202〜S1209の処理は、管理サーバ101のCPU201が所定の制御プログラムを読み出して実行する処理である。
まず、テレワーカ用PC111は、過去に「なりすまし」として判定された顔画像(S304で撮影されたカメラ画像)の再顔認証処理の要求を、管理サーバ101に送信する(ステップS1201)。
そして、管理サーバ101は、当該要求を、テレワーカ用PC111から受信すると(ステップS1202)、現在、テレワーカ用PC111の認証成功しているユーザのユーザIDの「不正状態」が「なりすまし」のカメラ画像をメモリ等の記憶手段から取得する(ステップS1203)。
例えば、管理サーバ101は、図11の不正証跡データテーブル1102Aの「不正ユーザID」(ユーザID)が「1」で、「不正状態」が「なりすまし」のレコードを特定し、当該特定されたレコードのうち未処理の最上位のレコードの「カメラ画像パス」に示される格納先から「なりすまし」と判定されたカメラ画像(顔画像)を取得する。
そして、管理サーバ101は、S419で送信されて新規登録した撮影画像(認証用顔画像)と、ステップS1203で取得したカメラ画像(顔画像)との類似度を算出することにより、当該カメラ画像の顔認証処理を実行する(ステップS1204)。
ここで、「新規登録した撮影画像(認証用顔画像)」とは、カメラ画像(顔画像)が「なりすまし」として判定された時よりも後に新規に登録された撮影画像(認証用顔画像)のことである。
ステップS1204では、複数の向きを向いている、それぞれの顔画像と、ステップS1203で取得したカメラ画像(顔画像)との類似度を、それぞれ算出する。そして、最も類似度の高い値を、後述のS1205で用いることとする。
そして、管理サーバ101は、ステップS309の処理と同様に、ステップS1204で算出した類似度と、ステップS301で読み込んだ類似度の閾値とを比較し、カメラ画像から検出された顔がテレワーカ本人の顔であるかを判定する(ステップS1205)。
管理サーバ101は、カメラ画像から検出された顔がテレワーカ本人の顔であると判定された場合には(ステップS1205:YES)、不正証跡データテーブル1102Aの現在処理対象のレコードの「不正状態」の「なりすまし」を「在席」に設定変更し(ステップS1206)、処理をステップS1207に移行する。
図11の不正証跡データテーブル1102Bは、ステップS1206において、不正証跡データテーブル1102Aの不正証跡データIDが2のレコードの「不正状態」の「なりすまし」が「在席」に設定変更された例を示すテーブルである。
また、管理サーバ101は、カメラ画像から検出された顔がテレワーカ本人の顔ではないと判定された場合には(ステップS1205:NO)、処理をステップS1207に移行する。
管理サーバ101は、不正証跡データテーブル1102Aの中から特定された1又は複数のレコード(「不正ユーザID」(ユーザID)が「1」で、「不正状態」が「なりすまし」のレコード)の全てのカメラ画像(顔画像)に対してS1203〜1206の処理を実行したか否かを判定し(ステップS1207:YES)、全てのカメラ画像(顔画像)に対して当該処理を実行したと判定された場合には(S1207:YES)、処理をS1208に移行し、一方、全てのカメラ画像(顔画像)に対して当該処理を実行していないと判定された場合には、処理をS1203に戻して、次のレコードを処理対象にして、S1203〜1206の処理を実行する。
管理サーバ101は、ステップS1206において、不正証跡データテーブル1102Aのレコードの「不正状態」の「なりすまし」を「在席」に設定変更したか否かを判定し(ステップS1208)、設定変更したと判定された場合には(YES)、更新された不正証跡データテーブルを含む証跡情報(証跡情報の履歴情報)を用いて、S302で認証成功したユーザの勤務履歴画面(図13)を表示するための表示情報を生成する。ここでは、S1206で、なりすまし」を「在席」に設定変更した日時(時間帯)を強調表示(識別表示)する勤務履歴画面(図13)を表示するための表示情報を生成する。
そして、管理サーバ101は、当該生成された勤務履歴画面(図13)の表示情報をテレワーカ用PC111に送信する(ステップS1209)。
テレワーカ用PC111は、勤務履歴画面(図13)の表示情報を受信すると、当該表示情報に従って、勤務履歴画面(図13)を表示部に表示する(ステップS1210)
図13は、勤務履歴画面の一例を示す図である。
図13に示す通り、勤務履歴画面の横軸には、日付軸が表示されており、縦軸には、時間軸が表示されている。そして、勤務履歴画面には、ステップS302でユーザ認証が成功したユーザ(例えば、ユーザIDが1のユーザ)の、在席中の時間帯、離席中の時間帯、なりすましの時間帯、覗き込みの時間帯、図12の処理により「なりすまし」から「在席中」に変更された時間帯を識別表示している。
図12の処理により「なりすまし」から「在席中」に変更された時間帯は、不正証跡データテーブル1102Bの「不正状態」が「なりすまし」に変更されているレコードの「不正発生日時」(時間帯)が強調表示される。
これにより、どの時間帯の「なりすまし」が「在席中」に変更されたかを確認すること容易になり、図4に示す処理を実行して新規の顔画像を登録したことによる効果を確認することが出来るようになる。
このように、過去になりすましと判定された顔画像(S304で撮影されたカメラ画像)と、図4に示す処理を実行して新規に登録された9つの全方向を向いた顔の認証用顔画像とを用いて、再度、S306、及びS309の処理を実行することにより、過去の認証用顔画像の不備に起因して過去になりすましと誤って判定された判定結果を、自動的に修正(補正・訂正)することが可能となり、なりすまし画像を監査する管理者の作業負担を軽減可能とすることができる。
ここで、管理者がなりすまし画像などを監査する監査処理について説明する。
なりすまし画像を監査する管理者が操作する管理者用PC121が、管理サーバ101にアクセスして、例えば、ユーザIDの勤務履歴画面の表示要求を送信すると、管理サーバ101が、不正証跡データテーブルを含む証跡情報(証跡情報の履歴情報)を取得して、証跡情報に基づき図13に示す当該ユーザIDの勤務履歴画面の表示情報を生成して、管理者用PC121に送信する。そして、管理者用PC121は、当該表示情報に従って、当該ユーザIDの勤務履歴画面を表示する。そして、管理者は、勤務履歴画面を介して、なりすましの時間帯、覗き込みの時間帯、図12の処理により「なりすまし」から「在席中」に変更された時間帯のいずれかの時間帯に対して表示指示を行うと、管理者用PC121は、管理サーバ101に対して、当該表示指示された時間帯のカメラ画像、及びスクリーンショット画像の取得要求を送信し、管理サーバ101は、当該取得要求を受信すると当該取得要求に含まれる当該時間帯のカメラ画像、及びスクリーンショット画像を不正証跡データテーブルから特定して取得し、当該取得したカメラ画像、及びスクリーンショット画像を管理者用PC121に送信する。そして、管理者用PC121は、当該カメラ画像、及びスクリーンショット画像を表示し、管理者は、その画像を見て、なりすまし等を監査する。
図12では、テレワーカ用PC111と、管理サーバ101とで処理を分けて実行する例について説明したが、全ての処理をテレワーカ用PC111で実行するように構成してもよい。
その場合、不正証跡データテーブルを含む証跡情報(履歴情報)は、テレワーカ用PC111に記憶されているものとする。
本実施例においては、図3、図4のフローチャートで示す処理をテレワーカ用PC111で実行するものとして説明したが、管理サーバ101において実行するよう構成してもよい。この場合、テレワーカ用PC111から管理サーバに対して、撮影された画像を送信し、管理サーバが処理を実行する。
本実施例では、テレワーク管理支援システムで顔認証するために認証用顔画像を登録する例について説明したが、本発明は、テレワーク管理支援システムに限定されるものではなく、顔が撮影された撮影画像を用いて顔認証又は顔認識を行う他のシステムでも適用可能である。また、本実施例では、「顔認証」の用途の例で説明したが、「顔認識」の用途の例でもよい。その場合、顔の認識の精度を向上させることができる。
以上、本発明によれば、被写体の顔の複数の所定の向きの撮影画像の撮影にかかる利便性を向上させることができる。
また、顔認証に用いる複数の向きの顔画像の登録に関するユーザビリティを向上させることが可能となる。
また、本発明によれば、なりすまし画像を監査する管理者の作業負担を軽減可能とすることが可能となる。
本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、本発明におけるプログラムは、図3、図4、図12に示すフローチャートの処理方法をコンピュータが実行可能なプログラムであり、本発明の記憶媒体は図3、図4、図12の処理方法をコンピュータが実行可能なプログラムが記憶されている。なお、本発明におけるプログラムは図3、図4、図12の各装置の処理方法ごとのプログラムであってもよい。
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムを読み出し、実行することによっても本発明の目的が達成されることは言うまでもない。
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記録した記録媒体は本発明を構成することになる。
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、DVD−ROM、磁気テープ、不揮発性のメモリカード、ROM、EEPROM、シリコンディスク等を用いることが出来る。
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
また、本発明は、複数の機器から構成されるシステムに適用しても、ひとつの機器から成る装置に適用しても良い。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。