(58)【調査した分野】(Int.Cl.,DB名)
前記画像処理部は、撮像画像において、検出された登録ユーザの顔領域の下方に、別のユーザの顔領域が存在する場合に、2つの顔領域の左右方向における重なりに応じて、オブジェクトの位置を決定することを特徴とする請求項1または2に記載の情報処理装置。
前記オブジェクト認証部が指定領域内にオブジェクト画像が含まれていることを検出すると、当該登録ユーザをログインさせるログイン処理部を、さらに備えることを特徴とする請求項1から4のいずれかに記載の情報処理装置。
【発明を実施するための形態】
【0011】
図1は、本発明の実施例にかかる情報処理システム1を示す。情報処理システム1は、ユーザ端末である情報処理装置10と、サーバ5とを備える。アクセスポイント(以下、「AP」とよぶ)8は、無線アクセスポイントおよびルータの機能を有し、情報処理装置10は、無線または有線経由でAP8に接続して、ネットワーク3上のサーバ5と通信可能に接続する。
【0012】
補助記憶装置2は、HDD(ハードディスクドライブ)やフラッシュメモリなどの大容量記憶装置であり、USB(Universal Serial Bus)などによって情報処理装置10と接続する外部記憶装置であってよく、また内蔵型記憶装置であってもよい。出力装置4は、画像を出力するディスプレイおよび音声を出力するスピーカを有するテレビであってよく、またコンピュータディスプレイであってもよい。出力装置4は、情報処理装置10に有線ケーブルで接続されてよく、また無線接続されてもよい。情報処理装置10は、ユーザが操作する入力装置6と無線または有線で接続し、入力装置6はユーザの操作結果を示す操作信号を情報処理装置10に出力する。情報処理装置10は、入力装置6からの操作信号を受け付けるとOS(システムソフトウェア)やアプリケーションの処理に反映し、出力装置4から処理結果を出力させる。入力装置6は複数のプッシュ式の操作ボタンや、アナログ量を入力できるアナログスティック、回動式ボタンなどの複数の入力部を有して構成される。
【0013】
情報処理装置10は、入力装置6からの操作信号を受け付けるとアプリケーションの処理に反映し、出力装置4から処理結果を出力させる。情報処理システム1において情報処理装置10はゲームを実行するゲーム装置であり、入力装置6はゲームコントローラなど情報処理装置10に対してユーザの操作信号を提供する機器である。なお入力装置6は、キーボードやマウスなどの入力インタフェースであってもよい。撮像装置であるカメラ7は出力装置4の近傍に設けられ、出力装置4周辺の空間を撮像する。
図1ではカメラ7が出力装置4の上部に取り付けられている例を示しているが、出力装置4の側部または下部に配置されてもよく、いずれにしても出力装置4の前方に位置するユーザを撮像できる位置に配置される。カメラ7は、ステレオカメラであってもよい。
【0014】
サーバ5は、情報処理システム1のユーザに対してネットワークサービスを提供する。サーバ5は、各ユーザを識別するネットワークアカウントを管理しており、各ユーザは、ネットワークアカウントを用いて、サーバ5が提供するネットワークサービスにサインインする。ユーザは情報処理装置10からネットワークサービスにサインインすることで、サーバ5に、ゲームのセーブデータや、またゲームプレイ中に獲得した仮想的な表彰品であるトロフィを登録できる。
【0015】
入力装置6のボタン構成について説明する。
[上面部の構成]
図2(a)は、入力装置上面の外観構成を示す。ユーザは左手で左側把持部78bを把持し、右手で右側把持部78aを把持して、入力装置6を操作する。入力装置6の筐体上面には、入力部である方向キー71、アナログスティック77a、77bと、4種の操作ボタン76が設けられている。4種のボタン72〜75には、それぞれを区別するために、異なる色で異なる図形が記されている。すなわち、○ボタン72には赤色の丸、×ボタン73には青色のバツ、□ボタン74には紫色の四角形、△ボタン75には緑色の三角形が記されている。筐体上面上において、方向キー71と操作ボタン76の間の平坦な領域には、タッチパッド79が設けられる。タッチパッド79は、ユーザが押すことで下方に沈み込み、またユーザが手を離すと元の位置に復帰する押下式ボタンとしても機能する。
【0016】
2つのアナログスティック77a、77bの間に機能ボタン80が設けられる。機能ボタン80は、入力装置6の電源をオンし、同時に入力装置6と情報処理装置10とを接続する通信機能をアクティブにするために使用される。なお情報処理装置10のメイン電源がオフとなっている場合、機能ボタン80が押下されると、情報処理装置10は、入力装置6から送信される接続要求を、メイン電源をオンにするための指示としても受け付け、これにより情報処理装置10のメイン電源がオンとなる。入力装置6が情報処理装置10と接続した後は、機能ボタン80は、情報処理装置10にメニュー画面を表示させるためにも使用される。
【0017】
SHAREボタン81は、タッチパッド79と方向キー71の間に設けられる。SHAREボタン81は、情報処理装置10におけるOSないしはシステムソフトウェアに対するユーザからの指示を入力するために利用される。またOPTIONSボタン82は、タッチパッド79と操作ボタン76の間に設けられる。OPTIONSボタン82は、情報処理装置10において実行されるアプリケーション(ゲーム)に対するユーザからの指示を入力するために利用される。SHAREボタン81およびOPTIONSボタン82は、いずれもプッシュ式ボタンとして形成されてよい。
【0018】
[奥側側面部の構成]
図2(b)は、入力装置奥側側面の外観構成を示す。入力装置6の筐体奥側側面の上側には、タッチパッド79が筐体上面から延設されており、筐体奥側側面の下側には、横長の発光部85が設けられる。発光部85は、赤(R)、緑(G)、青(B)のLEDを有し、情報処理装置10から送信される発光色情報にしたがって点灯する。
図1に示すように、2台の入力装置6a、6bが使用されている場合、情報処理装置10は、ユーザA、Bが各入力装置6を区別できるように、入力装置6a、6bの発光部85の点灯色を異なる色、それぞれ赤、緑と定めてよい。これにより各ユーザは、自分が使用している入力装置6を発光部85の点灯色によって認識できるため、入力装置6を取り違える可能性が低減される。
【0019】
筐体奥側側面において、上側ボタン83a、下側ボタン84aと、上側ボタン83b、下側ボタン84bとが長手方向の左右対称な位置に設けられる。上側ボタン83a、下側ボタン84aは、それぞれユーザ右手の人差し指、中指により操作され、上側ボタン83b、下側ボタン84bは、それぞれユーザ左手の人差し指、中指により操作される。図示されるように発光部85が、右側の上側ボタン83a、下側ボタン84aの並びと、左側の上側ボタン83b、下側ボタン84bの並びの間に設けられることで、各ボタンを操作する人差し指または中指によって隠れることはなく、カメラ7は、点灯した発光部85を好適に撮像することができる。上側ボタン83はプッシュ式ボタンとして構成され、下側ボタン84は回動支持されたトリガー式のボタンとして構成されてよい。
【0020】
図3は、入力装置6の構成を示す。入力装置6は、無線通信モジュール90、処理部91、発光部85および振動子98を備える。無線通信モジュール90は、情報処理装置10の無線通信モジュールとの間でデータを送受信する機能をもつ。処理部91は、入力装置6における所期の処理を実行する。
【0021】
処理部91は、メイン制御部92、入力受付部93、発光制御部94、3軸加速度センサ95、3軸ジャイロセンサ96および駆動制御部97を有する。メイン制御部92は、無線通信モジュール90との間で必要なデータの送受を行う。
【0022】
入力受付部93は、方向キー71、操作ボタン76、アナログスティック77、タッチパッド79、機能ボタン80、SHAREボタン81、OPTIONSボタン82、上側ボタン83および下側ボタン84などの入力部からの入力情報を受け付け、メイン制御部92に送る。メイン制御部92は、受け取った入力情報を必要に応じて所定の制御信号に変換して無線通信モジュール90に供給し、無線通信モジュール90は、所定のタイミングで情報処理装置10に送信する。発光制御部94は、発光部85を構成する赤色LED87、緑色LED88、青色LED89の発光を制御する。
【0023】
本実施例の情報処理システム1において、入力装置6が電源オフの状態で、ユーザが機能ボタン80を押下すると、入力装置6が電源オンされるとともに、メイン制御部92が情報処理装置10への接続要求を生成して、無線通信モジュール90が接続要求を情報処理装置10に送信する。このとき情報処理装置10がメイン電源オフの状態にあっても、情報処理装置10における無線通信モジュールは、メイン電源オフの状態でもアクティブ状態にあるため、情報処理装置10は接続要求を受信すると、メイン電源をオンしてOS(システムソフトウェア)を起動し、入力装置6との間の無線接続を確立する。
【0024】
情報処理装置10のシステムソフトウェアは、接続要求を送信した入力装置6の発光部85の発光色を決定し、発光色情報を入力装置6に送信する。このときシステムソフトウェアは、カメラ7に撮像された空間に含まれる色情報を解析し、可能な限り環境色に含まれていない色を特定して、発光部85の発光色を決定することが好ましい。これにより発光部85の点灯後、カメラ7の撮像画像から、指定した発光色で点灯する発光部85を、好適に検出することが可能となる。
【0025】
無線通信モジュール90にて受信した発光色情報はメイン制御部92に渡され、メイン制御部92は、発光制御部94に発光色情報を通知する。これにより発光制御部94は、指定された発光色で発光部85を発光させることができる。
【0026】
振動子98は偏心モータなどを含んで構成され、駆動制御部97により駆動される。3軸加速度センサ95は、入力装置6のXYZの3軸方向の加速度成分を検出し、3軸ジャイロセンサ96は、XZ平面、ZY平面、YX平面における角速度を検出する。
【0027】
図4は、情報処理装置10の機能ブロック図を示す。情報処理装置10は、メイン電源ボタン20、電源ON用LED21、スタンバイ用LED22、システムコントローラ24、クロック26、デバイスコントローラ30、メディアドライブ32、USBモジュール34、フラッシュメモリ36、無線通信モジュール38、有線通信モジュール40、サブシステム50およびメインシステム60を有して構成される。
【0028】
メインシステム60は、メインCPU(Central Processing Unit)、主記憶装置であるメモリおよびメモリコントローラ、GPU(Graphics Processing Unit)などを備える。GPUはゲームプログラムの演算処理に主として利用される。これらの機能はシステムオンチップとして構成されて、1つのチップ上に形成されてよい。メインCPUはOSを起動し、OSが提供する環境下において、補助記憶装置2にインストールされたアプリケーションを実行する機能をもつ。
【0029】
サブシステム50は、サブCPU、主記憶装置であるメモリおよびメモリコントローラなどを備え、GPUを備えない。サブCPUの回路ゲート数は、メインCPUの回路ゲート数よりも少なく、サブCPUの動作消費電力は、メインCPUの動作消費電力よりも少ない。上記したように、サブCPUは、メインCPUがスタンバイ状態にある間に動作するものであり、消費電力を低く抑えるべく、その処理機能を制限されている。なおサブCPUおよびメモリは、別個のチップに形成されてもよい。
【0030】
メイン電源ボタン20は、ユーザからの操作入力が行われる入力部であって、情報処理装置10の筐体の前面に設けられ、情報処理装置10のメインシステム60への電源供給をオンまたはオフするために操作される。以下、メイン電源がオン状態にあるとは、メインシステム60がアクティブ状態にあることを意味し、メイン電源がオフ状態にあるとは、メインシステム60がスタンバイ状態にあることを意味する。電源ON用LED21は、メイン電源ボタン20がオンされたときに点灯し、スタンバイ用LED22は、メイン電源ボタン20がオフされたときに点灯する。
【0031】
システムコントローラ24は、ユーザによるメイン電源ボタン20の押下を検出する。メイン電源がオフ状態にあるときにメイン電源ボタン20が押下されると、システムコントローラ24は、その押下操作を「オン指示」として取得し、一方で、メイン電源がオン状態にあるときにメイン電源ボタン20が押下されると、システムコントローラ24は、その押下操作を「オフ指示」として取得する。
【0032】
メインCPUは補助記憶装置2やROM媒体44にインストールされているゲームプログラムを実行する機能をもつ一方で、サブCPUはそのような機能をもたない。しかしながらサブCPUは補助記憶装置2にアクセスする機能、サーバ5との間でデータを送受信する機能を有している。サブCPUは、このような制限された処理機能のみを有して構成されており、したがってメインCPUと比較して小さい消費電力で動作できる。これらのサブCPUの機能は、メインCPUがスタンバイ状態にある際に実行される。本実施例の情報処理装置10は、メインシステム60のスタンバイ時にはサブシステム50が稼働しているため、サーバ5が提供するネットワークサービスに、常時サインインした状態を維持する。
【0033】
クロック26はリアルタイムクロックであって、現在の日時情報を生成し、システムコントローラ24やサブシステム50およびメインシステム60に供給する。
【0034】
デバイスコントローラ30は、サウスブリッジのようにデバイス間の情報の受け渡しを実行するLSI(Large-Scale Integrated Circuit)として構成される。図示のように、デバイスコントローラ30には、システムコントローラ24、メディアドライブ32、USBモジュール34、フラッシュメモリ36、無線通信モジュール38、有線通信モジュール40、サブシステム50およびメインシステム60などのデバイスが接続される。デバイスコントローラ30は、それぞれのデバイスの電気特性の違いやデータ転送速度の差を吸収し、データ転送のタイミングを制御する。
【0035】
メディアドライブ32は、ゲームなどのアプリケーションソフトウェア、およびライセンス情報を記録したROM媒体44を装着して駆動し、ROM媒体44からプログラムやデータなどを読み出すドライブ装置である。ROM媒体44は、光ディスクや光磁気ディスク、ブルーレイディスクなどの読出専用の記録メディアである。
【0036】
USBモジュール34は、外部機器とUSBケーブルで接続するモジュールである。USBモジュール34は補助記憶装置2およびカメラ7とUSBケーブルで接続してもよい。フラッシュメモリ36は、内部ストレージを構成する補助記憶装置である。無線通信モジュール38は、Bluetooth(登録商標)プロトコルやIEEE802.11プロトコルなどの通信プロトコルで、たとえば入力装置6と無線通信する。なお無線通信モジュール38は、ITU(International Telecommunication Union;国際電気通信連合)によって定められたIMT−2000(International Mobile Telecommunication 2000)規格に準拠した第3世代(3rd Generation)デジタル携帯電話方式に対応してもよく、さらには別の世代のデジタル携帯電話方式に対応してもよい。有線通信モジュール40は、外部機器と有線通信し、たとえばAP8を介してネットワーク3に接続する。
【0037】
本実施例の情報処理装置10は、複数種類のログイン処理を用意しており、ユーザからのログイン要求があると、ユーザの状況や、ログイン要求を生成した操作状況などに応じて、実行する1つのログイン処理を決定し、決定したログイン処理のユーザインタフェースをユーザに提供する。以下、3種類のログイン処理の概要を説明する。
【0038】
<ログイン処理1>
ログイン処理1は、情報処理装置10が出力装置4にユーザ選択画面を表示し、ユーザがユーザ選択画面において、入力装置6を利用して自分のアイコンを選択し、ログイン用パスコードを入力することで、情報処理装置10がユーザ認証を行い、ユーザをログインさせる処理である。ログイン処理1は、パスコードを利用した従来型のログイン処理である。
<ログイン処理2>
ログイン処理2は、情報処理装置10がカメラ7の撮像画像を利用してユーザの顔認証を行い、検出された顔画像が登録ユーザの顔であることを判定した場合に、その登録ユーザに対して、ディスプレイに映し出されているカメラ画像内で入力装置6を動かすべき位置を指定し、ユーザが入力装置6を指定領域に動かすことによってユーザ認証を行い、ユーザをログインさせる処理である。
<ログイン処理3>
ログイン処理3は、情報処理装置10がカメラ7の撮像画像を利用してユーザの顔認証を行い、検出された顔画像が登録ユーザの顔であることを判定した場合に、その登録ユーザに対して、ディスプレイに映し出されているカメラ画像内で顔を動かすべき位置を指定し、ユーザが顔を指定領域に動かすことによってユーザ認証を行い、ユーザをログインさせる処理である。
【0039】
ログイン処理1、2は、入力装置6を利用したユーザ認証を行う点で共通しているが、ログイン処理1では、ユーザがパスコードを入力することでユーザ認証が行われるのに対し、ログイン処理2では、ユーザが入力装置6を所定の領域に動かすだけでユーザ認証が行われる点で異なっている。
ログイン処理1は、ユーザが入力装置6からログイン要求を情報処理装置10に送信した場合であって、ユーザの顔画像が情報処理装置10に登録されていない場合に実行され、一方でログイン処理2は、ユーザが入力装置6からログイン要求を情報処理装置10に送信した場合であって、ユーザの顔画像が情報処理装置10に登録されている場合に実行される。ログイン処理1と2とを比較すると、ログイン処理2の方が、パスコードを入力する必要がないため、ユーザにとって簡易なログイン操作であると言える。
【0040】
ログイン処理2、3は、ともにカメラ7の撮像画像を利用した顔認証を行う点で共通しているが、ログイン処理2では、入力装置6が所定の領域に動かされたことを検出してユーザ認証を行うのに対し、ログイン処理3では、ユーザの顔が所定の領域に動かされたことを検出してユーザ認証を行う点で異なっている。
ゲームをプレイする際、ユーザが入力装置6を操作することが一般的であるが、近年では、ユーザの動きをゲームキャラクタの動きに反映するゲームも登場している。ユーザのジェスチャーを利用したゲームでは、そもそもユーザが入力装置6を用いないため、ユーザが情報処理装置10のOSにログインする際にも、入力装置6を用いずにユーザ認証が行われることが好ましい。
そのため、ログイン処理3は、ユーザが入力装置6からログイン要求を情報処理装置10に送信するのではなく、たとえば情報処理装置10が電源オフの状態で、ユーザがメイン電源ボタン20を押下したときに実行されるようにする。
【0041】
このように情報処理装置10は、ユーザが顔画像を登録しているか否か、またユーザが入力装置6からログイン要求を送信しているか否かに応じて、ログイン処理1〜3のいずれを実行するか決定する。
【0042】
図5は、情報処理装置10の構成を示す。情報処理装置10は、通信部102、入力受付部104、画像取得部106、マイク108、管理部100および登録ユーザ情報保持部150を備える。管理部100の機能は情報処理装置10のOS(システムソフトウェア)およびOSにより実行されるアプリケーションやメモリにより実現され、発光色決定部110、処理決定部120およびログイン制御部130を有する。ログイン制御部130は、選択画像表示部132、撮像画像表示部134、顔認証部136、顔枠処理部138、位置指定画像処理部140、オブジェクト認証部142、ログイン処理部144およびログインユーザ記憶部146を有する。通信部102は、
図4に示す無線通信モジュール38および有線通信モジュール40の機能を示す。
【0043】
図5において、さまざまな処理を行う機能ブロックとして記載される各要素は、ハードウェア的には、回路ブロック、メモリ、その他のLSIで構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
【0044】
本実施例の情報処理装置10は、ユーザの好適なログイン動作を支援することを1つの特徴とする。ユーザは、情報処理装置10のOSにログインするために、その前提として、ユーザアカウントを予め取得して、情報処理装置10に様々なユーザ情報を登録している必要がある。以下、ユーザアカウントを情報処理装置10に登録したユーザを、「登録ユーザ」とよぶ。
【0045】
登録ユーザ情報保持部150は、登録ユーザに関する様々な情報を保持し、具体的には、ユーザアカウントに関連付けて、ログイン用パスコード、サーバ5にサインインするためのサインインID、ネットワークアカウント、ユーザのオンラインID(ネットワーク上でのニックネーム)、またユーザを表現するためのユーザアイコンなどを、登録ユーザ情報として保持している。なお、顔認証処理のために予め顔画像を登録している登録ユーザに関しては、登録ユーザ情報保持部150が、ユーザアカウントに関連付けて、顔識別用データを登録ユーザ情報として保持している。
【0046】
ここで顔識別用データは、登録ユーザの顔画像の特徴量データであるが、顔画像データそのものであってもよい。顔識別用データは、顔認証部136による顔認識処理において比較対象とされるデータであり、顔認証部136が採用する顔認識アルゴリズムにしたがって生成される。たとえば顔識別用データは、顔のパーツの相対位置や大きさ、目や鼻やほお骨やあごの形を特徴として抽出したデータであってよい。また顔識別用データは、顔画像の標準データからの差分データとして抽出したデータであってよい。どのような顔識別用データを抽出するかは、採用する顔認識アルゴリズムによって定まり、本実施例では顔認証部136が既知の顔認識アルゴリズムを採用している。なお、顔画像を登録していない登録ユーザに関しては、当然のことながら、顔識別用データは、登録ユーザ情報保持部150に含まれていない。
【0047】
以下、少なくともユーザA、Bの登録ユーザ情報が登録ユーザ情報保持部150に格納されており、ユーザAのオンラインIDが「HANAKO」、ユーザBのオンラインIDが「SACHIKO」であるとする。以下、登録ユーザが情報処理装置10のOSにログインする際の詳細な処理について説明する。
【0048】
<ログイン処理1>
ユーザが入力装置6の機能ボタン80を押下すると、その押下情報が情報処理装置10に送信される。情報処理装置10において、通信部102が押下情報を接続要求として受け付けて、入力装置6と通信部102とを接続する。なお情報処理装置10のメイン電源がオフとなっている場合には、機能ボタン80の押下情報により情報処理装置10のメイン電源がオンとなった後、通信部102が入力装置6と接続する。また機能ボタン80の押下情報は入力受付部104に伝達され、入力受付部104は、この押下情報を、ユーザからのログイン要求として受け付け、管理部100に伝える。
【0049】
まず発光色決定部110は、ログイン要求を送信した入力装置6の発光部85の発光色を決定する。画像取得部106は、カメラ7から撮像画像データを取得する。たとえばカメラ7は周期的(たとえば1/30秒ごと)に空間を撮像して、撮像画像をUSBモジュール34を経由して画像取得部106に提供する。発光色決定部110は、所定の割当順序にしたがって発光色を決定するが、このとき割当順序により決定される発光色が撮像空間に存在していれば、撮像画像から、撮像空間に存在しない色を特定して、特定した色の中から発光色を決定してもよい。発光色決定部110が発光色を決定すると、通信部102が入力装置6に発光色情報を送信する。入力装置6において無線通信モジュール90が発光色情報を受信し、発光制御部94が、発光色情報に応じた発光色で発光部85を点灯する。たとえば発光色情報が赤色を指定する場合、入力装置6の発光部85は赤色で点灯することになる。
【0050】
また選択画像表示部132は、登録ユーザ情報保持部150に保持されている登録ユーザ情報を読み出し、情報処理装置10に登録されたユーザを選択するための選択画像を生成する。具体的に選択画像表示部132は、登録ユーザ情報のうち、ユーザアイコンおよびオンラインIDを読み出して、登録されたユーザのオンラインIDをリスト形式で並べたユーザ選択画面を出力装置4に表示する。この選択画面は、ログイン処理1におけるログイン画面を構成するが、後述するように、選択画面の初期表示時には、ログイン処理2を実行するか否かの判定処理が行われており、ログイン処理2の不実行が決定した後、正式にユーザ選択画面がログイン処理1におけるログイン画面を構成することになる。
【0051】
図6(a)はユーザ選択画面の一例を示す。選択画像表示部132は、登録ユーザ情報保持部150に保持されている全ての登録ユーザのユーザアイコンおよびオンラインIDを読み出し、読み出したユーザアイコンおよびオンラインIDをリスト形式でユーザが選択可能に表示する。以下、ユーザアイコンおよびオンラインIDを、「ユーザ特定情報」とよぶ。
【0052】
ユーザ選択画面の一部の小窓領域202に、撮像画像表示部134が、画像取得部106が取得した撮像画像を表示する。この表示画像は、カメラ7のライブ画像であり、小窓領域202の近傍には、「登録されている顔を探しています」とメッセージが表示される。このメッセージは、顔認証部136による顔認証処理中に表示され、したがって顔認証処理が終了すると、メッセージ表示は消される。つまり
図6(a)に示す状態では、ユーザ選択画面が表示されつつ、そのバックグランドにおいては、顔認証部136により、撮像画像中に、顔画像を登録したユーザが存在しているかが確認されている。
【0053】
図7は、カメラ7によって撮影される空間の一例を示す。この撮影空間には、3人のユーザが存在している。
図7において3人のユーザを取り囲む四角の枠はカメラ7の撮像範囲を表現している。カメラ7の撮像範囲は、出力装置4にてライブ画像として表示される範囲を規定するが、ライブ画像は、撮像画像の一部であってもよい。顔認証部136は、撮像画像において、人の顔と推定される部分を抜き出し、その部分の特徴量データを導出して、登録ユーザ情報保持部150に保持された顔識別用データと比較し、抜き出した顔が登録ユーザの顔であるか否かを判定する。
【0054】
具体的に顔認証部136は、抜き出したユーザの顔画像の特徴量データと、登録ユーザ情報保持部150に保持されている全ての登録ユーザの顔識別用データとの一致度を導出する。この一致度は数値表現され、たとえば100点満点中の何点という形で一致度が導出される。登録された顔画像の特徴量データとの一致度が90点を超えていれば、顔認証部136は、撮像されたユーザが、登録ユーザであることを判定するとともに、撮像されたユーザがどの登録ユーザであるかを特定する。なお一致度が90点を超えるものが複数存在する場合には、顔認証部136は、撮像されたユーザが、最高点が導出された顔識別用データの登録ユーザであることを判定すればよい。なお、撮像画像から抜き出したユーザの顔画像の特徴量データと、全ての登録ユーザの顔識別用データとの一致度を導出した結果、一致度が90点を超えるものがなければ、顔認証部136は、撮像画像に含まれるユーザが、登録ユーザでないことを判定する。このように顔認証部136は、登録ユーザ情報保持部150に保持された顔識別用データを用いて、撮像画像に存在する登録ユーザの顔画像を検出する。この顔識別技術は、既知の技術を用いてよい。
【0055】
顔認証部136により、撮像画像に含まれる3人のユーザの全てが登録ユーザでないことが判定されると、ログイン処理部144は、「登録されている顔を探しています」と表示していたメッセージを非表示とし、また小窓領域202も非表示としてよい。なお顔認証部136により、登録ユーザであることが判定された全てのユーザが既にログイン済みである場合にも、ログイン処理部144は、「登録されている顔を探しています」と表示していたメッセージを非表示とし、また小窓領域202も非表示としてよい。このように、入力装置6の操作によりログイン要求が生成される場合には、顔認証部136が、カメラ7の撮像画像に、まだログインしていない顔画像を登録したユーザが含まれているかを判定し、顔画像を登録したユーザが含まれていないことが判明したときに、選択画像表示部132が、ユーザ選択画面の表示を継続して、ログイン処理部144が、ログイン処理1を開始する。顔認証部136による判定時間は数秒であり、したがって、小窓領域202およびメッセージは、ユーザ選択画面において、数秒間だけ表示される。
【0056】
ログイン処理1では、ユーザ選択画面において、ログイン処理部144が、1つのユーザ特定情報を取り囲むフォーカス枠200をリスト上で移動可能に表示する。ユーザは入力装置6の入力部を操作してフォーカス枠200を自分のユーザ特定情報の表示領域に動かし、入力装置6の決定ボタン(○ボタン72)を押すことで、自分のユーザ特定情報を選択できる。ユーザ選択画面において、ユーザ特定情報の表示個数は制限され、
図6(a)に示す例では最大で4つに制限される。登録ユーザ数が4人を超える場合には、ユーザは入力装置6の入力部を操作して、ユーザ特定情報のリストを左方または右方にスクロールさせることができる。
【0057】
ここでログインを要求するユーザがユーザAであるとし、入力装置6aを操作して、選択画面において「HANAKO」を選択すると、ログイン処理部144は、
図6(b)に示すパスコードの入力画面を出力装置4に表示する。ここでユーザAが登録したパスコードを入力すると、ログイン処理部144が、登録ユーザ情報保持部150に保持されているユーザAのログイン用パスコードと同じであるか判定して、ユーザAのログインの許否を判定する。この一連のログイン作業において、ログイン処理部144は、入力装置6aからの操作情報のみを受け付け、入力装置6a以外の入力装置6からの操作情報を受け付けない。以上のようにログイン制御部130は、ユーザのログイン処理1を実行する。
【0058】
このように顔認証部136により、まだログインしていない登録ユーザが検出されない場合には、ログイン制御部130が、ログイン処理1を実行して、顔画像を登録していないユーザが円滑にログインできるようにする。
【0059】
<ログイン処理2>
上記したように、ユーザが入力装置6を操作してログイン要求を生成した場合、顔認証部136が、撮像画像中に、顔画像を登録したユーザが存在しないことを判定すると、ログイン処理1が実行される。一方で、ユーザが入力装置6を操作してログイン要求を生成した場合に、顔認証部136が、撮像画像中に、まだログインしていない顔画像を登録したユーザが存在することを判定すると、ログイン処理2が実行される。
【0060】
図8は、顔認証部136による顔識別結果を示す。ここでは、左側のユーザがユーザAであること、右側のユーザがユーザBであること、真ん中のユーザが、顔画像を登録した登録ユーザではないことが判定されている。顔認証部136は、ユーザA(オンラインID:HANAKO)の顔の撮像画像中の位置を示す顔領域204aと、ユーザB(オンラインID:SACHIKO)の顔の撮像画像中の位置を示す顔領域204bを設定し、顔領域204a、204bの位置座標および撮像された登録ユーザを特定する情報とを顔枠処理部138に提供する。以下、位置座標は、撮像画像をディスプレイに表示したときの2次元座標により表現される例を示すが、VRAM上に定義される座標であってもよく、いずれにしても顔領域204の座標および後述する顔枠の座標とが共通の座標系で表現されればよい。
【0061】
各顔領域204は、撮像画像中の顔の輪郭に接する矩形領域として設定されてよいが、顔輪郭よりも若干広い矩形領域として設定されてもよい。なお、ここで顔の輪郭は、頭髪まで含む輪郭を意味しているが、たとえば顔認証部136の顔認識処理が頭髪を考慮しない場合には、頭髪を除いて顔の輪郭が設定されてもよい。撮像画像中のユーザの顔の大きさおよび形状により顔領域204の大きさおよび形状は定まり、したがってユーザごとに顔領域204の大きさおよび形状は異なり、また同じユーザであっても、カメラ7との距離に応じて顔領域204の大きさおよび形状は変化する。
【0062】
顔認証部136から顔枠処理部138に提供される登録ユーザを特定する情報は、登録ユーザのユーザアカウントであってもよく、またオンラインIDであってもよい。顔認証部136は、顔領域204の位置座標と登録ユーザ特定情報とを対応付けて顔枠処理部138に提供し、すなわち
図8に示す例では、顔領域204aとユーザAの特定情報の組合せと、顔領域204bとユーザBの特定情報の組合せとを顔枠処理部138に提供する。顔枠処理部138は、顔認証部136により検出された登録ユーザに対して、出力装置4に顔枠を表示する。
【0063】
図9は、ログイン処理2におけるログイン画面を示す。
図9に示すログイン画面は、
図6に示すユーザ選択画面が表示されている間に顔認証部136により撮像画像中に顔画像を登録したユーザが検出されて、ユーザ選択画面が非表示にされた後に、出力装置4に表示される。
【0064】
ログイン処理2におけるログイン画面において、撮像画像表示領域206に、撮像画像表示部134が、カメラ7の撮像画像をライブ表示する。顔枠処理部138は、顔認証部136より提供される顔領域204a、204bの位置座標および撮像された登録ユーザを特定する情報をもとに、登録ユーザに対して顔枠210を表示する。ここではユーザAに対して顔枠210aを表示し、ユーザBに対して顔枠210bを表示している。このとき顔枠処理部138は、顔枠210aの近傍にユーザAのオンラインID(HANAKO)を表示し、顔枠210bの近傍にユーザBのオンラインID(SACHIKO)を表示する。これによりユーザA、Bは、自身の顔認識が行われていることを知ることができる。ユーザは、自身の顔枠210の近傍に、自身とは別のオンラインIDが表示されていれば、顔認識が適切に行われていないことを知ることができる。なお真ん中のユーザは、顔画像を登録した登録ユーザではないため、顔枠210は表示されていない。
【0065】
位置指定画像処理部140は、顔認証部136により検出された登録ユーザに対して、オブジェクトの位置を指定する位置指定画像212を、ディスプレイである出力装置4に表示する。ここで、オブジェクトは、ゲームコントローラである入力装置6であり、位置指定画像212は、撮像画像表示領域206に表示している撮像画像において、ユーザが入力装置6を動かしてカメラ7に撮像させる位置を指定する。ログイン処理2において、位置指定画像212は、登録ユーザがログインする際に、入力装置6を動かして配置するために表示される。
【0066】
位置指定画像処理部140は、顔認証部136より提供される顔領域204a、204bの位置座標をもとに、各登録ユーザに対して位置指定画像212を表示する。ここではユーザAに対して位置指定画像212aを表示し、ユーザBに対して位置指定画像212bを表示している。位置指定画像処理部140は、位置指定画像212のそれぞれにIDを付し、位置指定画像IDと、対応するユーザの特定情報をログイン処理部144に提供する。たとえば位置指定画像処理部140は、位置指定画像212aの指定位置画像IDを“ID1”、位置指定画像212bの指定位置画像IDを“ID2”と設定し、“ID1”とユーザAの特定情報との組合せと、“ID2”とユーザBの特定情報との組合せとを、ログイン処理部144に提供する。したがって、ここでは位置指定画像処理部140が、“ID1”とユーザAの特定情報の組合せと、“ID2”とユーザBの特定情報の組合せとを、ログイン処理部144に提供する。
【0067】
位置指定画像処理部140は、ログインしようとするユーザに対して、今から行うべき動作を理解できるような位置指定画像212を表示することが好ましい。この例では、位置指定画像212は、ゲームコントローラの画像を含み、さらに、ゲームコントローラのLEDを赤色に点灯させた画像にしている。これにより、ログインしようとするユーザは、発光部85が赤色点灯した入力装置6を、位置指定画像212で指定される領域に動かして、カメラ7に撮像させればよいことを容易に認識できるようになる。
【0068】
ログイン処理2では、入力装置6を、位置指定画像212で指定される領域に動かすことをユーザに要求するため、位置指定画像212で指定される領域は、ユーザが入力装置6を動かしやすい位置とすることが好ましい。そこで位置指定画像処理部140は、登録ユーザの顔画像の下側の位置、すなわち顔枠210の下側の位置を指定する位置指定画像212を表示する。
【0069】
図10は、ユーザが位置指定画像212で指定された位置に、入力装置6を動かしたログイン画面を示す。ここではユーザAが、出力装置4に表示されている位置指定画像212aに含まれるゲームコントローラ画像に入力装置6が重なるように、入力装置6を上に持ち上げた状態を示している。オブジェクト認証部142は、撮像画像において、位置指定画像212aにより指定された指定領域内に、入力装置6の画像が含まれているか監視する。なお、ユーザが入力装置6を動かすべき位置は、ユーザに対しては位置指定画像212aに含まれるゲームコントローラ画像により指定されるが、オブジェクト認証部142は、ゲームコントローラ画像だけでなく、その近傍まで含めた領域内で、入力装置6の画像を監視することが好ましい。たとえばオブジェクト認証部142が監視する領域は、位置指定画像212に含まれるゲームコントローラ画像の中心から所定の半径内の領域として、ゲームコントローラ画像に入力装置6が完全に合わせられなくても、オブジェクト認証部142が、位置指定画像212によって指定した領域内に、入力装置6の画像が含まれていることを検出できるようにすることが好ましい。指定領域は、矩形であっても、また他の形状であってもよい。
【0070】
なお
図10においては、位置指定画像処理部140が、ユーザA、Bに対してそれぞれ位置指定画像212a、212bを表示しており、したがってオブジェクト認証部142は、位置指定画像212a、212bで指定される領域内に、入力装置6の画像が含まれているか監視する。この例では、発光部85が赤色点灯した入力装置6のログイン処理を行っているため、位置指定画像処理部140は、赤色点灯したゲームコントローラ画像を位置指定画像212a、212bとしてそれぞれ表示し、オブジェクト認証部142は、指定領域内に、赤色の矩形領域が存在するか否かを判定して、入力装置6の存在を検出するようにしてもよい。オブジェクト認証部142は、いずれかの指定領域内において入力装置6の存在を検出すると、オブジェクト認証部142は、赤色点灯した発光部85を有する入力装置6が検出された位置指定画像212を特定する情報(位置指定画像ID)を、ログイン処理部144に通知する。
【0071】
既述したようにログイン処理部144は、予め位置指定画像処理部140から、位置指定画像IDおよびユーザの特定情報の組合せを通知されている。ログイン処理部144は、オブジェクト認証部142から位置指定画像IDを通知されると、予め通知された組合せ情報から、ユーザの特定情報を取得できる。したがってログイン処理部144は、ユーザA用に表示された位置指定画像212aで指定される領域内に赤色点灯した入力装置6が検出されたことを認識する。これによりログイン処理部144は、ユーザAを情報処理装置10にログインさせる。ログイン処理部144は、ログインユーザ記憶部146に、ログイン情報、すなわちユーザAを特定する情報(ユーザアカウント)と、ユーザAが使用する入力装置6aを特定する情報(ゲームコントローラID)と、撮像画像に含まれる入力装置6aを識別する情報(赤色発光情報)とを対応付けて記憶する。
【0072】
以上のように、ログイン処理2では、顔認証部136が顔認証を行い、その後、オブジェクト認証部142が指定領域内に入力装置6が含まれていることを検出することで、ログイン処理部144が登録ユーザをログインさせる。たとえば顔認証処理において、最初の撮影画像において人の顔を検出し、登録ユーザであるか否かの判定を行った後は、新たなユーザが撮影されない限り、顔認証処理を行わなくてもよい。なお、この場合は、検出した人の顔を撮影画像中で追跡処理し、常時、撮影画像における顔画像の位置座標を顔枠処理部138および位置指定画像処理部140に提供する。これにより顔枠210および位置指定画像212は、ユーザの顔の動きに追従して撮像画像表示領域206にて表示されることになる。なお顔認証を所定の周期で実行し、顔認証を行わない時間帯は、検出した人の顔を追跡処理するようにしてもよい。
【0073】
顔枠処理部138および位置指定画像処理部140は、既にログイン済みのユーザに対しては、顔枠210および位置指定画像212を表示しない。顔認証部136が、登録ユーザが撮像画像に含まれていることを検出すると、顔枠処理部138および位置指定画像処理部140は、検出された登録ユーザが、ログインユーザ記憶部146を参照して既にログイン済みであるか否かを判定する。たとえば画面右側のユーザB(オンラインID:SACHIKO)が、ログイン済みのユーザであれば、顔枠処理部138および位置指定画像処理部140は、顔枠210b、位置指定画像212bを表示しない。
【0074】
以下、顔枠210と位置指定画像212の表示態様について説明する。なお
図11〜
図15では、説明の便宜上、撮影画像に含まれる登録ユーザの顔以外の身体部分や他のユーザの表示を省略している。
【0075】
顔枠処理部138は、顔認証部136より提供される顔領域204a、204bの位置座標および撮像された登録ユーザを特定する情報をもとに、登録ユーザに対して顔枠210を表示する。顔認証部136から提供される顔領域204の位置座標は、たとえば矩形として設定される顔領域204の4つの頂点の座標値であってもよい。位置指定画像処理部140は、登録ユーザの顔画像の下側の位置を指定する位置指定画像212を表示する。
【0076】
各ユーザは、顔枠210および位置指定画像212を表示された後、撮像範囲内を動くこともある。上記したように、顔枠210および位置指定画像212は、ユーザの動きに追従するように撮像画像表示領域206にて表示されることが好ましい。
【0077】
図11は、ログイン画面の一例を示す。このログイン画面では、顔認証部136が、撮影画像中でユーザBを検出できなくなり、顔領域204bを設定できなくなっている。ユーザBの不検出は、顔認証部136の顔識別精度によるところもあるため、顔認証部136がユーザBを検出できなくなったからといって、ユーザBがカメラ7からフレームアウトしたとは限らない。そこで、顔枠処理部138は、所定の条件のもとで、仮にユーザBが顔認証部136により不検出となった場合であっても、一度表示した顔枠210bを表示し続ける。これにより顔認証部136がユーザBの検出成功、検出不成功を交互に繰り返したような場合に、顔枠210bの表示、非表示が交互に繰り返される事態を回避できる。なお顔枠処理部138は、ユーザBが検出されていないことを顔認証部136から通知されると、顔枠210bの表示態様を、顔枠210aとは異ならせてもよい。たとえば顔枠210bは、点滅表示されてもよい。位置指定画像処理部140は、顔枠210bが表示される限りにおいて、位置指定画像212bを、顔枠210bの下方に表示し続ける。
【0078】
上記した例では、ユーザBが不検出の場合であっても、所定の条件のもとで顔枠210bを表示し続けることを説明した。この所定の条件を構成するための基準について、以下説明する。
まず前提として、顔枠処理部138は、複数の登録ユーザに対して顔枠210を表示する場合に、表示する顔枠210の数を所定数に制限する。これは出力装置4に多数の顔枠210を表示するのが困難であるためである。そこで顔枠処理部138は、たとえば表示する顔枠210の上限を4つとし、仮に顔認証部136によって撮影画像中に5人以上の登録ユーザが検出されたとしても、4人分の顔枠210を表示することとする。
【0079】
このとき、顔枠処理部138が、どのユーザの顔枠210を表示するかを決定する必要があるが、この決定の基準とするべく、撮像されている複数の登録ユーザに対して、顔枠210を表示する優先順位を定める。この優先順位は、以下のように決定される。
(a)まずは、初期ログイン画面に含まれる登録ユーザの順位が決定される。ここでユーザA、Bが初期ログイン画面に含まれていたとすると、顔枠処理部138は、ユーザAとBのログイン回数の多い方を1位、少ない方を2位として決定してもよい。たとえばユーザBのログイン回数が多い場合には、ユーザBが1位、ユーザAが2位とされる。なお顔枠処理部138は、顔領域204の大きいユーザの優先順位を高く決定してもよい。顔枠処理部138は、顔認証部136により設定された複数の顔領域204の面積を比較して、顔領域204の大きいユーザの優先順位を高く決定してもよい。なおカメラ7がステレオカメラである場合、ユーザとカメラ7との間の距離が測定できるため、顔枠処理部138は、カメラ7との距離が近いユーザの優先順位を高く決定してもよい。
(b)次に、
図9に示す初期ログイン画面表示後のログイン画面に含まれるようになった登録ユーザの順位を高く決定する。つまり顔枠処理部138は、新たにカメラ7に撮影されるようになった登録ユーザの順位を1位として決定し、既に撮影されていた登録ユーザの順位を1つ下げる。したがって、新たにユーザCがカメラ7で撮影されると、ユーザCが1位、ユーザBが2位、ユーザAが3位とされる。このように顔枠処理部138は、(a)よりも(b)の基準を高く設定し、新たに顔認証部136により認識されたユーザの順位を高く設定する。
【0080】
顔枠処理部138は、カメラ7に撮影される登録ユーザの優先順位を決定するが、ユーザD、Eも新たに撮影された結果、ユーザBの順位が4位になったとする。このときユーザAの順位は5位であり、顔枠処理部138は、1位から4位のいずれかが設定されたユーザB、C、D、Eに対して、顔枠210を表示する。ここで、ユーザBが顔認証部136により検出されなくなると、顔枠処理部138は、ユーザBの顔枠210bを消して、ユーザAの顔枠210aを表示する。顔枠処理部138は、顔認証部136により不検出となったユーザについては、その順位を最下位に落とし、表示の優先順位を決定する。
【0081】
このように顔枠処理部138は、撮像されている複数の登録ユーザに対して、顔枠210を表示する優先順位を定め、顔枠処理部138は、定められた優先順位にしたがって、所定の上限数の範囲内で顔枠210を表示する。
【0082】
以上のことから、
図11に示すログイン画面において顔枠210bが表示され続ける条件は、このログイン画面において、4人以上の登録ユーザが検出されていない場合であり、そのような条件が満足する限りにおいて、顔枠処理部138は、顔枠210bを表示し続けるようにする。既述したように、位置指定画像処理部140は、顔枠210が表示されている限り、対応する位置指定画像212を顔枠210の近傍に表示する。なおユーザBが所定時間(たとえば30秒または1分)検出されない場合には、顔枠210bおよび位置指定画像212bが非表示とされてもよい。
【0083】
なお顔枠処理部138は、複数の顔枠210が重なる場合には、一方のみを表示するようにしてもよい。
【0084】
以下、顔領域204(顔枠210)に対する位置指定画像212の位置を決定するアルゴリズムを説明する。
図12(a)および
図12(b)は、位置決定アルゴリズムで使用するパラメータを説明するための図である。ここでは理解を容易にするために、撮像画像表示領域206にXY座標を設定しているが、実際には位置指定画像処理部140が、VRAMなどに展開される画像データをもとに、演算処理を実行する。ここでは撮像画像表示領域206の下端にX軸、左端にY軸を設定し、Xmaxは撮像画像表示領域206の横方向の画面サイズ、Ymaxは撮像画像表示領域206の縦方向の画面サイズを示す。位置指定画像処理部140は、以下のようにユーザAの顔枠210aに対する座標パラメータを導出する。
【0085】
図12(a)に示すように、位置指定画像処理部140は、顔領域204aに対する基準パラメータL、W、Hを以下のように導出する。
L:顔枠210aの縦方向の長さ
W:顔枠210aの横方向の幅
H:顔領域204aの高さ(顔領域204aの下端から撮像画像表示領域206の下端までの距離)
【0086】
図12(b)は、顔領域204aのY軸方向下方において、別のユーザの顔領域204bが重なって存在する状態を示す。この場合、位置指定画像処理部140は、重なりパラメータHol、Wolを以下のように求める。
Hol:顔領域204aの下端と顔領域204bの上端との距離
Wol:重なり幅、すなわち顔領域204aの右端(ないしは左端)と顔領域204bの左端(ないしは右端)との距離
【0087】
またさらに、位置指定画像処理部140は、位置指定画像212の位置導出アルゴリズムで用いる閾値パラメータを以下のように設定する。
なお、L1=L×α(αは1以下の定数)とする。
Th1:L1×a(aは1〜2の間の定数)
Th2:L1×d(dは0.4〜0.6の間の定数)
Th3:W×e(eは0.1〜0.3の間の定数)
Th4:Ymax×f(fは0.1以下の定数)
【0088】
図13は、位置指定画像処理部140による位置指定画像212の位置決定処理のフローチャートを示す。以下、位置指定画像212を、コントローラ画像を呼び、ユーザAの顔枠210aの下方に、コントローラ画像を配置する例を示す。
位置指定画像処理部140は、ユーザAの顔領域204aの下方に、別のユーザの顔領域が存在するか確認する(S10)。以下、説明を簡略化するため、別のユーザがユーザBであるとする。ここで顔領域204aの下方とは、
図12(a)に示すように、顔領域204aの顔幅WのY軸下方向の画面下端までの領域を意味し、この領域に、別のユーザの顔領域(たとえば顔領域204b)が存在するか確認する。
【0089】
顔領域204aの下方に別のユーザの顔領域が存在しなければ(S10のN)、位置指定画像処理部140は、コントローラ画像を、顔領域204aのTh1下方に配置することを決定する。
図14(a)は、顔領域204aのTh1下方に、コントローラ画像を配置した状態を示す。
【0090】
一方、顔領域204aの下方に別のユーザの顔領域が存在していれば(S10のY)、位置指定画像処理部140は、X軸方向の重なりWolを導出し、重なり幅WolがTh3よりも小さいか否かを判定する(S14)。ここで、重なり幅WolがTh3よりも小さければ(S14のY)、位置指定画像処理部140は、コントローラ画像を、顔領域204aのTh1下方に配置することを決定する。
図14(b)は、顔領域204aのTh1下方に、コントローラ画像を配置した状態を示す。
【0091】
このように位置指定画像処理部140は、Y軸方向(すなわち画面縦方向)において、顔領域204aに別の顔領域が重なっていない、または重なっていても重なり幅Wolが小さい場合には、顔領域204aのTh1下方に、コントローラ画像(位置指定画像212)を配置する。なお、この配置位置が、画面下端のぎりぎりとなるような場合には、位置指定画像処理部140は、コントローラ画像を、画面下端からTh4上方に配置する。これによりユーザAは、撮像画像表示領域206内でコントローラ画像を容易に確認でき、入力装置6をコントローラ画像の表示位置に合わせるように動かすことができる。
【0092】
一方、重なり幅WolがTh3以上であれば(S14のN)、位置指定画像処理部140は、顔領域204aと顔領域204bとの距離HolがTh2以上あるか否かを判定する(S16)。ここで、距離HolがTh2以上であれば(S16のY)、位置指定画像処理部140は、コントローラ画像を、顔領域204bの上端からTh4上方に配置する(S18)。
図15(a)は、顔領域204bの上端からTh4上方に、コントローラ画像を配置した状態を示す。このように位置指定画像処理部140は、顔領域204aに別の顔領域204bが大きく重なっている場合には、顔領域同士のY軸方向の間隔が大きい場合に、顔領域204bのTh4上方に、コントローラ画像(位置指定画像212)を配置する。これにより、ユーザAは、表示されているコントローラ画像が自分用に表示されていることを認識でき、一方で、ユーザBは、そのコントローラ画像は、自分用のものではないことを認識できる。
【0093】
このように位置指定画像処理部140は、ユーザAの顔領域204aの下方に、ユーザBの顔領域204bが重なって存在する場合に、2つの顔領域204a、204bの左右方向における重なりに応じて、入力装置6を配置するべき位置を決定して、コントローラ画像を表示する。これによりユーザは、自分用のコントローラ画像であるか容易に確認できるようになる。
【0094】
一方、距離HolがTh2未満であれば(S16のN)、位置指定画像処理部140は、コントローラ画像を、表示しない(S20)。
図15(b)は、顔領域204aと顔領域204bとが近接して、コントローラ画像を配置できない状態を示す。このような場合にコントローラ画像を表示しても、誰用のコントローラ画像であるかユーザが混乱する可能性があるため、位置指定画像処理部140は、コントローラ画像を表示しないこととしている。
【0095】
以上のように位置指定画像処理部140は、コントローラ画像(位置指定画像212)の配置位置を決定し、撮像画像表示領域206に表示する。位置指定画像処理部140は位置指定画像212を、常に、対応するユーザの顔の下方に表示することとし、したがってユーザは、撮像画像表示領域206に複数の位置指定画像212が表示されている場合であっても、自分用に表示されている位置指定画像212を直観的に認識できるようになる。
【0096】
このようなアルゴリズムにより位置指定画像212が表示され、ユーザAが、入力装置6を位置指定画像212に合わせるように動かすと、オブジェクト認証部142が、位置指定画像212に指定された領域内に入力装置6が存在することを検出し、ログイン処理部144が、ユーザAをOSにログインさせる。
【0097】
<ログイン処理3>
続いて、ログイン処理3について説明する。ログイン処理3では、ユーザは入力装置6を使用せずにログインする。
ユーザが情報処理装置10のメイン電源ボタン20を押下すると、情報処理装置10のメイン電源がオンとなり、入力受付部104がメイン電源の押下情報を、ユーザからのログイン要求として受け付ける。
【0098】
入力受付部104が、メイン電源の押下に基づいたログイン要求を受け付けると、撮像画像表示部134が、画像取得部106が取得した撮像画像をディスプレイである出力装置4に表示する。これにより出力装置4には、カメラ7が撮影したライブ画像が表示されることになり、出力装置4の前方にいるユーザが、出力装置4に映し出される。
【0099】
ログイン処理1、2に関して説明したように、顔認証部136は、登録ユーザ情報保持部150に保持された顔識別用データを用いて、撮像画像に存在する登録ユーザの顔画像を検出する。ログイン処理3において、この顔認証処理は、第1段階の顔認証と位置づけられる。
【0100】
図16は、顔認証部136による顔識別結果を示す。ここでは、左側のユーザがユーザAであること、右側のユーザがユーザBであること、真ん中のユーザが顔画像を登録した登録ユーザではないことが判定されている。顔認証部136は、ユーザA(オンラインID:HANAKO)の顔の撮像画像中の位置を示す顔領域220aと、ユーザB(オンラインID:SACHIKO)の顔の撮像画像中の位置を示す顔領域220bを設定し、顔領域220a、220bの位置座標および撮像された登録ユーザを特定する情報とを顔枠処理部138に提供する。
【0101】
顔認証部136から顔枠処理部138に提供される登録ユーザを特定する情報は、登録ユーザのユーザアカウントであってもよく、またオンラインIDであってもよい。顔認証部136は、顔領域220の位置座標と登録ユーザ特定情報とを対応付けて顔枠処理部138に提供し、すなわち
図16に示す例では、顔領域220aとユーザAの特定情報の組合せと、顔領域220bとユーザBの特定情報の組合せとを顔枠処理部138に提供する。
【0102】
顔枠処理部138は、顔認証部136により検出された登録ユーザに対して、出力装置4に顔枠を表示する。ログイン処理3において、この顔枠は、登録ユーザがログインする際に、顔を動かして配置するために表示される。したがって登録ユーザは、出力装置4に表示された顔枠に自身の顔を入れることで、情報処理装置10にログインできるようになる。
【0103】
図17は、出力装置4に表示される顔枠を含むログイン画面を示す。ログイン処理3におけるログイン画面において、撮像画像表示領域230に、撮像画像表示部134が、カメラ7の撮像画像をライブ表示する。
【0104】
顔枠処理部138は、顔認証部136より提供される顔領域220a、220bの位置座標および撮像された登録ユーザを特定する情報をもとに、登録ユーザに対して顔枠222を表示する。ここではユーザAに対して顔枠222aを表示し、ユーザBに対して顔枠222bを表示している。このとき顔枠処理部138は、顔枠222aの近傍にユーザAのオンラインIDを表示し、顔枠222bの近傍にユーザBのオンラインIDを表示する。これによりユーザA、Bは、自身の顔認識が適切に行われたことを知ることができ、ログインする際には、顔枠222a、222bに、顔を移動させればよいことを知る。なお真ん中のユーザは顔画像を登録した登録ユーザではないため、顔枠222は表示されていない。
【0105】
顔枠処理部138は、顔枠222のそれぞれにIDを付し、顔枠ID、顔枠222の位置座標および顔枠222を表示したユーザの特定情報とを顔認証部136に提供する。なお、顔枠処理部138が顔認証部136に提供する顔枠222の位置座標は、顔枠222そのものの位置座標であってもよいが、顔枠222に外接する矩形座標であってもよい。以下、顔枠222そのものの位置座標と、顔枠222に外接する矩形の位置座標を、まとめて顔枠の位置座標と呼ぶ。顔枠の位置座標は、顔認証部136において、ユーザの顔画像を検出するために利用される。
【0106】
たとえば顔枠処理部138は、顔枠222aの顔枠IDを“ID1”、顔枠222bの顔枠IDを“ID2”と設定し、“ID1”と顔枠222aの位置座標とユーザAの特定情報との組合せと、“ID2”と顔枠222bの位置座標とユーザBの特定情報との組合せとを、顔認証部136に提供する。また顔枠処理部138は、顔枠IDおよび顔枠222を表示したユーザの特定情報を、ログイン処理部144に提供する。したがって、ここでは顔枠処理部138が、“ID1”とユーザAの特定情報の組合せと、“ID2”とユーザBの特定情報の組合せとを、ログイン処理部144に提供する。
【0107】
図18は、ユーザが顔枠に顔を入れたログイン画面を示す。ここではユーザAが、出力装置4に表示されている顔枠222aに顔が入るように、顔や体を動かした様子を示している。顔認証部136は、顔枠222に人の顔が入っているか監視し、顔が入っている場合には、登録ユーザ情報保持部150に保持された顔識別用データを用いて、顔枠222内に入っている顔が登録ユーザのものであるか判定する。
【0108】
顔認証部136は、顔枠処理部138から提供された顔枠222の位置座標をもとに、顔枠222に人の顔が入っているか監視することができる。顔認識アルゴリズムについては上記したとおりであり、顔認証部136は、顔枠222において、人の顔が含まれていることを推定すると、その部分の特徴量データを導出して、登録ユーザ情報保持部150に保持された顔識別用データと比較し、抜き出した顔が登録ユーザの顔であることを判定する。なお顔認証部136は、顔枠処理部138から、顔枠ID、顔枠222の位置座標および顔枠222を表示したユーザの特定情報との組合せを通知されており、顔枠222に含まれた人の顔画像の特徴量データを、顔枠222を表示したユーザの顔識別用データと比較する。顔認証部136は、顔枠222に含まれるべきユーザを予め通知されていることで、顔枠222に含まれる顔の特徴量データを全ての登録ユーザの顔識別用データと比較する必要なく、効率的に顔認識処理を行うことができる。このとき顔認証部136は、顔枠222に登録ユーザの顔が所定時間(たとえば数秒)入っていることを検出することで、顔枠222に登録ユーザの顔が入れられたことを判定してもよい。
【0109】
図18の例では、顔認証部136が、顔枠222aに入った顔がユーザAの顔であることを判定する。ログイン処理3において、この処理は、第2段階の顔認証と位置づけられる。第1段階と第2段階の顔認証により、ログイン時におけるユーザ認証が終了する。
【0110】
顔認証部136は、顔枠222aにユーザAの顔が入っていることを検出すると、顔枠222aを特定する顔枠IDと、ユーザAを特定するユーザ特定情報を、ログイン処理部144に通知する。既述したようにログイン処理部144は、予め顔枠処理部138から、顔枠IDおよび顔枠222を表示したユーザの特定情報を通知されている。ログイン処理部144は、顔認証部136から顔枠IDおよびユーザ特定情報を通知されると、顔枠処理部138から通知された顔枠IDに対応付けられたユーザ特定情報を抽出し、ユーザ特定情報同士の一致を判定する。ここでは、ID1の顔枠IDに対して、双方ともユーザAの特定情報が通知されており、したがってログイン処理部144は、ユーザA用に表示された顔枠222a内にユーザAの顔が検出されたことを認識する。これによりログイン処理部144は、ユーザAを情報処理装置10にログインさせる。
【0111】
図19は、本実施例のログイン処理の実行フローチャートを示す。まず入力受付部104がログイン要求を受け付けると、その旨を管理部100に通知する。管理部100がログイン要求を受け付けると、顔認証部136が顔識別処理を実行し(S30)、撮像画像に、顔画像を登録したユーザが含まれているか判定する(S32)。なお、このとき顔認証部136は、まだログインしていない登録ユーザが含まれているか判定することが好ましい。撮像画像に、顔画像を登録した未ログインユーザが含まれていない場合には(S32のN)、処理決定部120が、ログイン処理1を、実行するべきログイン処理として決定し、ログイン制御部130が、ログイン処理1を実行する(S34)。
【0112】
一方で、撮像画像に顔画像を登録したユーザが1人でも含まれていれば(S32のY)、ログイン制御部130は、入力装置6が接続しているか否かを判定する(S36)。なおS36では、ログインユーザ記憶部146を参照して、まだログインしていない入力装置6が情報処理装置10に接続しているか否かが判定され、まだログインしていない入力装置6が存在している場合に(S36のY)、処理決定部120が、ログイン処理2を、実行するべきログイン処理として決定し、ログイン制御部130が、ログイン処理2を実行する(S38)。一方、まだログインしていない、情報処理装置10に接続した入力装置6が存在しなければ(S36のN)、処理決定部120が、ログイン処理3を、実行するべきログイン処理として決定し、ログイン制御部130が、ログイン処理3を実行する(S40)。
【0113】
以上のように、処理決定部120は、撮像画像に撮像されているユーザや、ゲームコントローラの接続の有無に応じて、実行するべきログイン処理を決定する。この決定処理はユーザの手を煩わせることなく自動的に行われるため、ユーザは、自分の状況に適したユーザインタフェースを提供されることになり、簡易なログイン動作を実現できる。なお、たとえばログイン処理3の実行中に、ユーザが所定のコマンドを発声すると、マイク108が、発声を受け付けて、これによって処理決定部120が、ログイン処理3からログイン処理1に切り替えるようにしてもよい。
【0114】
以上、本発明を実施例をもとに説明した。この実施例は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。実施例ではログイン用パスコードが設定されている場合に、ログイン処理1においてログイン用パスコードの入力を求めることを説明したが、たとえばログイン処理2および3においてもログイン用パスコードの入力を求めてもよい。
【0115】
ログイン処理2において、顔枠処理部138は、顔枠210を表示して、ログイン動作できることをユーザに知らしめているが、顔枠210以外の他のインジケータによって、ログイン動作できることを知らしめてもよい。たとえば、ログイン可能なユーザのオンラインIDを提示するだけでもよく、また、たとえば顔付近に、ログイン対象であることを示す矢印を表示するなどして、ユーザが、ログインできることを認識させるようにしてもよい。
【0116】
またログイン処理2において、位置指定画像212の大きさは、顔領域204の大きさや、ユーザとの距離に応じて設定されてもよい。
【0117】
またログイン処理2において、オブジェクト認証部142は、発光部85の発光色をもとに指定領域内における入力装置6の存在を色認識により検出している。カメラ7がステレオカメラである場合、一方のカメラで空間画像を撮像して、撮像画像表示部134が、撮像画像を表示し、また、もう一方のカメラで発光色を検出するための画像を撮像して、オブジェクト認証部142が、入力装置6を色認識により検出してもよい。なおオブジェクト認証部142は、指定領域内における入力装置6の存在を、形状認識などの認識技術によって検出してもよい。