説明

情報処理装置、および情報処理方法、並びにプログラム

【課題】不確実で非同期な入力情報に基づく情報解析により、精度の高いユーザ識別処理を実行する構成を実現する。
【解決手段】カメラやマイクによって取得される画像情報や音声情報に基づいて実空間におけるユーザの存在と位置および識別情報を含む解析情報を生成する。仮想ユーザに対応する複数のターゲット各々について、(1)ターゲットの存在確率算出に適用するターゲット存在仮説情報、(2)ターゲットの存在位置の確率分布情報、(3)ターゲットが誰であるかを示すユーザ確信度情報を設定し、ターゲット存在仮説情報を適用して各ターゲットの存在確率を算出してターゲットの新規設定および削除を実行する構成としたので、例えば誤検出による誤生成ターゲットを削減し、高精度かつ高効率のユーザ識別処理を実行可能となる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、および情報処理方法、並びにプログラムに関する。さらに詳細には、外界からの入力情報、例えば画像、音声などの情報を入力し、入力情報に基づく外界環境の解析、例えば、言葉を発している人物が誰であるか等の解析処理を実行する情報処理装置、および情報処理方法、並びにプログラムに関する。
【背景技術】
【0002】
人とPCやロボットなどの情報処理装置との相互間の処理、例えばコミュニケーションやインタラクティブ処理を行うシステムはマン−マシン インタラクション システムと呼ばれる。このマン−マシン インタラクション システムにおいて、PCやロボット等の情報処理装置は、人のアクション例えば人の動作や言葉を認識するために画像情報や音声情報を入力して入力情報に基づく解析を行う。
【0003】
人が情報を伝達する場合、言葉のみならずしぐさ、視線、表情など様々なチャネルを情報伝達チャネルとして利用する。このようなすべてのチャネルの解析をマシンにおいて行うことができれば、人とマシンとのコミュニケーションも人と人とのコミュニケーションと同レベルに到達することができる。このような複数のチャネル(モダリティ、モーダルとも呼ばれる)からの入力情報の解析を行うインタフェースは、マルチモーダルインタフェースと呼ばれ、近年、開発、研究が盛んに行われている。
【0004】
例えばカメラによって撮影された画像情報、マイクによって取得された音声情報を入力して解析を行う場合、より詳細な解析を行うためには、様々なポイントに設置した複数のカメラおよび複数のマイクから多くの情報を入力することが有効である。
【0005】
具体的なシステムとしては、例えば以下のようなシステムが想定される。情報処理装置(テレビ)が、カメラおよびマイクを介して、テレビの前のユーザ(父、母、姉、弟)の画像および音声を入力し、それぞれのユーザの位置やどのユーザが発した言葉であるか等を解析し、テレビが解析情報に応じた処理、例えば会話を行ったユーザに対するカメラのズームアップや、会話を行ったユーザに対する的確な応答を行うなどのシステムが実現可能となる。
【0006】
従来の一般的なマン−マシン インタラクション システムの多くは、複数チャネル(モーダル)からの情報を決定論的に統合して、複数のユーザが、それぞれどこにいて、それらは誰で、誰がシグナルを発したのかを決定するという処理を行っていた。このようなシステムを開示した従来技術として、例えば特許文献1(特開2005−271137号公報)、特許文献2(特開2002−264051号公報)がある。
【0007】
しかし、従来のシステムにおいて行われるマイクやカメラから入力される不確実かつ非同期なデータを利用した決定論的な統合処理方法ではロバスト性にかけ、精度の低いデータしか得られないという問題がある。実際のシステムにおいて、実環境で取得可能なセンサ情報、すなわちカメラからの入力画像やマイクから入力される音声情報には様々な余分な情報、例えばノイズや不要な情報が含まれる不確実なデータであり、画像解析や音声解析処理を行う場合には、このようなセンサ情報から有効な情報を効率的に統合する処理が重要となる。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特開2005−271137号公報
【特許文献2】特開2002−264051号公報
【発明の概要】
【発明が解決しようとする課題】
【0009】
本発明は、上述の問題点に鑑みてなされたものであり、複数のチャネル(モダリティ、モーダル)からの入力情報の解析、具体的には、例えば周囲にいる人物の識別な処理を行うシステムにおいて、画像、音声情報などの様々な入力情報に含まれる不確実な情報に対する確率的な処理を行ってより精度の高いと推定される情報に統合する処理を行うことによりロバスト性を向上させ、精度の高い解析を行う情報処理装置、および情報処理方法、並びにプログラムを提供することを目的とする。
【0010】
さらに、本発明は、複数のモーダルからなる不確実で非同期な位置情報、識別情報を確率的に統合して、複数のターゲットが、それぞれどこにいて、それらは誰かを推定する際、各ターゲットが実際に存在するか否かの推定情報を利用することで、ユーザ同定の推定性能を向上させ、精度の高い解析を行う情報処理装置、および情報処理方法、並びにプログラムを提供することを目的とする。
【課題を解決するための手段】
【0011】
本発明の第1の側面は、
実空間における画像情報または音声情報のいずれかを含む情報を入力する複数の情報入力部と、
前記情報入力部からの入力情報を解析して前記実空間に存在すると推定されるユーザの位置および識別情報を含むイベント情報を生成するイベント検出部と、
前記実空間におけるユーザの存在と位置および識別情報についての仮説(Hypothesis)データを設定し、前記イベント情報に基づく前記仮説データの更新および取捨選択により、前記実空間におけるユーザの存在と位置および識別情報を含む解析情報を生成する情報統合処理部と、
を有する情報処理装置にある。
【0012】
さらに、本発明の情報処理装置の一実施態様において、前記情報統合処理部は、前記イベント検出部の生成するイベント情報を入力し、仮想的なユーザに対応する複数のターゲットを設定した複数のパーティクルを適用したパーティクルフィルタリング処理を実行して前記実空間におけるユーザの存在と位置および識別情報を含む解析情報を生成する。
【0013】
さらに、本発明の情報処理装置の一実施態様において、前記イベント検出部は、イベント発生源に対応するガウス分布からなるユーザ位置情報と、イベント発生源に対応するユーザ識別情報としてのユーザ確信度情報を含むイベント情報を生成し、前記情報統合処理部は、仮想的なユーザに対応する複数のターゲット各々について、
(1)ターゲットの存在確率算出に適用するターゲット存在仮説情報、
(2)ターゲットの存在位置の確率分布情報、
(3)ターゲットが誰であるかを示すユーザ確信度情報、
上記(1)〜(3)をターゲットデータとして有するターゲットを複数設定した複数のパーティクルを保持し、各パーティクルにイベント発生源に対応するターゲット仮説を設定し、各パーティクルのターゲット仮説に対応するターゲットデータと入力イベント情報との類似度であるイベント−ターゲット間尤度をパーティクル重みとして算出して、算出したパーティクル重みに応じたパーティクルのリサンプリング処理を行い、さらに、各パーティクルのターゲット仮説に対応するターゲットデータを前記入力イベント情報に近づけるターゲットデータ更新を含むパーティクル更新処理を実行する構成である。
【0014】
さらに、本発明の情報処理装置の一実施態様において、前記情報統合処理部は、前記ターゲット存在仮説としてターゲットが存在する仮説(c=1)、またはターゲットが存在しない仮説(c=0)を各ターゲットのターゲットデータとして設定し、ターゲット存在確率[PtID(c=1)]を、前記リサンプリング処理後のパーティクルを適用して、
[PtID(c=1)]={c=1を割り当てた同一ターゲット識別子のターゲット数}/{パーティクル数}
上記式によって算出する。
【0015】
さらに、本発明の情報処理装置の一実施態様において、前記情報統合処理部は、前記パーティクルの各々に、少なくとも1つのターゲット生成候補を設定し、該ターゲット生成候補についてのターゲット存在確率と、予め設定した閾値とを比較して、前記ターゲット生成候補のターゲット存在確率が前記閾値より大きい場合に、前記ターゲット生成候補を新規ターゲットとして設定する処理を行う。
【0016】
さらに、本発明の情報処理装置の一実施態様において、前記情報統合処理部は、前記パーティクル重みの算出処理に際して、前記ターゲット仮説として前記ターゲット生成候補が設定されているパーティクルについては、イベント−ターゲット間尤度に1より小さい係数を乗算する処理を実行して前記パーティクル重みを算出する処理を行う。
【0017】
さらに、本発明の情報処理装置の一実施態様において、前記情報統合処理部は、前記パーティクルに設定されたターゲット各々のターゲット存在確率と、予め設定した削除閾値とを比較して、ターゲット存在確率が前記削除閾値より小さい場合に、該ターゲットを削除する処理を行う。
【0018】
さらに、本発明の情報処理装置の一実施態様において、前記情報統合処理部は、前記イベント検出部から入力するイベント情報で更新されない時間の長さに基づいて、前記ターゲット存在仮説を確率的に存在(c=1)から不在(c=0)に変更する更新処理を実行し、該更新処理後、前記パーティクルに設定されたターゲット各々のターゲット存在確率と、予め設定した削除閾値とを比較して、ターゲット存在確率が前記削除閾値より小さい場合に、該ターゲットを削除する処理を行う。
【0019】
さらに、本発明の情報処理装置の一実施態様において、前記情報統合処理部は、各パーティクルにイベント発生源に対応するターゲット仮説の設定処理を、
(制約1)ターゲット存在の仮説がc=0(不在)のターゲットはイベント発生源としない、
(制約2)異なるイベントに対して、同一のターゲットをイベント発生源としない、
(制約3)同一時刻において「イベント数>ターゲット数」の場合は、ターゲット数より多いイベントはノイズと判定する、
上記制約1〜3に従った処理として実行する。
【0020】
さらに、本発明の情報処理装置の一実施態様において、前記情報統合処理部は、各ターゲットと各ユーザとを対応づけた候補データの同時生起確率(Joint Probability)を、前記イベント情報に含まれるユーザ識別情報に基づいて更新し、更新された同時生起確率の値を適用してターゲット対応のユーザ確信度を算出する処理を実行する構成を有する。
【0021】
さらに、本発明の情報処理装置の一実施態様において、前記情報統合処理部は、前記イベント情報に含まれるユーザ識別情報に基づいて更新された同時生起確率の値をマージして、各ターゲットに対応するユーザ識別子の確信度を算出する構成である。
【0022】
さらに、本発明の情報処理装置の一実施態様において、前記情報統合処理部は、複数ターゲットに同一のユーザ識別子(UserID)は割り振られないという制約に基づいて、各ターゲットと各ユーザとを対応づけた候補データの同時生起確率(Joint Probability)の初期設定を行なう構成であり、異なるターゲットに同一のユーザ識別子(UserID)が設定された候補データの同時生起確率P(Xu)の確率値は、
P(Xu)=0.0、
それ以外のターゲットデータの確率値は、
P(Xu)=0.0<P≦1.0
とする確率値の初期設定を行う構成である。
【0023】
さらに、本発明の第2の側面は、
情報処理装置において情報解析処理を実行する情報処理方法であり、
複数の情報入力部が、実空間における画像情報または音声情報のいずれかを含む情報を入力する情報入力ステップと、
イベント検出部が、前記情報入力ステップにおいて入力する情報の解析により、前記実空間に存在すると推定されるユーザの位置および識別情報を含むイベント情報を生成するイベント検出ステップと、
情報統合処理部が、前記実空間におけるユーザの存在と位置および識別情報についての仮説(Hypothesis)データを設定し、前記イベント情報に基づく前記仮説データの更新および取捨選択により、前記実空間におけるユーザの存在と位置および識別情報を含む解析情報を生成する情報統合処理ステップと、
を有することを特徴とする情報処理方法にある。
【0024】
さらに、本発明の第3の側面は、
情報処理装置において情報解析処理を実行させるプログラムであり、
複数の情報入力部に、実空間における画像情報または音声情報のいずれかを含む情報を入力させる情報入力ステップと、
イベント検出部に、前記情報入力ステップにおいて入力する情報の解析により、前記実空間に存在すると推定されるユーザの位置および識別情報を含むイベント情報を生成させるイベント検出ステップと、
情報統合処理部に、前記実空間におけるユーザの存在と位置および識別情報についての仮説(Hypothesis)データを設定させ、前記イベント情報に基づく前記仮説データの更新および取捨選択により、前記実空間におけるユーザの存在と位置および識別情報を含む解析情報を生成させる情報統合処理ステップと、
を有することを特徴とするプログラムにある。
【0025】
なお、本発明のプログラムは、例えば、様々なプログラム・コードを実行可能な情報処理装置やコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体によって提供可能なプログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、情報処理装置やコンピュータ・システム上でプログラムに応じた処理が実現される。
【0026】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【発明の効果】
【0027】
本発明の一実施例の構成によれば、カメラやマイクによって取得される画像情報や音声情報に基づいて実空間におけるユーザの存在と位置および識別情報を含む解析情報を生成する。仮想ユーザに対応する複数のターゲット各々について、(1)ターゲットの存在確率算出に適用するターゲット存在仮説情報、(2)ターゲットの存在位置の確率分布情報、(3)ターゲットが誰であるかを示すユーザ確信度情報を設定し、ターゲット存在仮説情報を適用して各ターゲットの存在確率を算出してターゲットの新規設定および削除を実行する構成としたので、例えば誤検出による誤生成ターゲットを削減し、高精度かつ高効率のユーザ識別処理を実行可能となる。
【図面の簡単な説明】
【0028】
【図1】本発明に係る情報処理装置の実行する処理の概要について説明する図である。
【図2】本発明の一実施例の情報処理装置の構成および処理について説明する図である。
【図3】音声イベント検出部122および画像イベント検出部112が生成し音声・画像統合処理部131に入力する情報の例について説明する図である。
【図4】パーティクル・フィルタ(Particle Filter)を適用した基本的な処理例について説明する図である。
【図5】本処理例で設定するパーティクルの構成について説明する図である。
【図6】各パーティクルに含まれるターゲット各々が有するターゲットデータの構成について説明する図である。
【図7】音声・画像統合処理部131の実行する処理シーケンスを説明するフローチャートを示す図である。
【図8】ターゲット重み[WtID]の算出処理の詳細について説明する図である。
【図9】パーティクル重み[WpID]の算出処理の詳細について説明する図である。
【図10】パーティクル重み[WpID]の算出処理の詳細について説明する図である。
【図11】ターゲットの存在確率の推定情報を利用したユーザ位置およびユーザ識別処理を実行する場合のパーティクル設定例とターゲット情報について説明する図である。
【図12】ターゲットの存在確率の推定情報を利用したユーザ位置およびユーザ識別処理を実行する場合のターゲットデータの例を示す図である。
【図13】本発明の情報処理装置の音声・画像統合処理部の実行する処理シーケンスを説明するフローチャートを示す図である。
【図14】イベント発生源の仮説の設定とパーティクル重み設定処理を実行した場合の処理例について説明する図である。
【図15】ターゲット数n=3(0〜2)、登録ユーザ数k=3(0〜2)の場合において、「複数ターゲットに同一のユーザ識別子(UserID)は割り振られない」という制約に従った初期状態設定例を示す図である。
【図16】「複数ターゲットに同一のユーザ識別子(UserID)は割り振られない」という制約を適用して、ターゲット間の独立性を排除した本発明に従った解析処理例を説明する図である。
【図17】図16に示す処理によって得られるマージ(Marginalize)結果について説明する図である。
【図18】1つでも重なるxu(ユーザ識別子(UserID))が存在する状態をターゲットデータから削除するデータ削減処理例について説明する図である。
【図19】tID=1,2の2ターゲットに対して、tID=canのターゲットを新たに生成して追加する場合の処理例について説明する図である。
【図20】tID=0,1,2の3ターゲットにおいて、tID=0のターゲットを削除する場合の処理例について説明する図である。
【発明を実施するための形態】
【0029】
以下、図面を参照しながら本発明の実施形態に係る情報処理装置、および情報処理方法、並びにプログラムの詳細について説明する。なお、本発明は、本出願と同一の出願人に係る先の出願である特願2007−193930に開示した構成に改良を加え、解析性能の向上を実現した発明である。
【0030】
以下では、本発明について、以下の項目順に説明する。
(1)イベント情報入力に基づく仮説更新によるユーザ位置およびユーザ識別処理
(2)ターゲットの存在確率の推定情報を利用したユーザ位置およびユーザ識別処理
(2−1)ターゲットの存在確率の推定情報を利用したユーザ位置およびユーザ識別処理の概要
(2−2)イベントによるターゲット存在の仮説更新プロセス
(2−3)ターゲット生成プロセス
(2−4)ターゲット削除プロセス
【0031】
なお、項目(1)は、特願2007−193930において開示した構成とほぼ同様である。本明細書では、項目(1)において、本発明の前提となるユーザ位置およびユーザ識別処理の全体構成を特願2007−193930の開示構成を利用して説明し、次に、項目(2)において、本発明の特徴となる構成の詳細を説明する。
【0032】
[(1)イベント情報入力に基づく仮説更新によるユーザ位置およびユーザ識別処理]
まず、図1を参照して本発明に係る情報処理装置の実行する処理の概要について説明する。本発明の情報処理装置100は、環境情報を入力するセンサ、ここでは一例としてカメラ21と、複数のマイク31〜34から画像情報、音声情報を入力し、これらの入力情報に基づいて環境の解析を行う。具体的には、複数のユーザ1,11〜4,14の位置の解析、およびその位置にいるユーザの識別を行う。
【0033】
図に示す例において、例えばユーザ1,11〜ユーザ4,14が家族である父、母、姉、弟であるとき、情報処理装置100は、カメラ21と、複数のマイク31〜34から入力する画像情報、音声情報の解析を行い、4人のユーザ1〜4の存在する位置、各位置にいるユーザが父、母、姉、弟のいずれであるかを識別する。識別処理結果は様々な処理に利用される。例えば、例えば会話を行ったユーザに対するカメラのズームアップや、会話を行ったユーザに対してテレビから応答を行うなどの処理に利用される。
【0034】
なお、本発明に係る情報処理装置100の主要な処理は、複数の情報入力部(カメラ21,マイク31〜34)からの入力情報に基づいて、ユーザの位置識別およびユーザの特定処理としてのユーザ識別処理を行うことである。この識別結果の利用処理については特に限定するものではない。カメラ21と、複数のマイク31〜34から入力する画像情報、音声情報には様々な不確実な情報が含まれる。本発明の情報処理装置100では、これらの入力情報に含まれる不確実な情報に対する確率的な処理を行って、精度の高いと推定される情報に統合する処理を行う。この推定処理によりロバスト性を向上させ、精度の高い解析を行う。
【0035】
図2に情報処理装置100の構成例を示す。情報処理装置100は、入力デバイスとして画像入力部(カメラ)111、複数の音声入力部(マイク)121a〜dを有する。画像入力部(カメラ)111から画像情報を入力し、音声入力部(マイク)121から音声情報を入力し、これらの入力情報に基づいて解析を行う。複数の音声入力部(マイク)121a〜dの各々は、図1に示すように様々な位置に配置されている。
【0036】
複数のマイク121a〜dから入力された音声情報は、音声イベント検出部122を介して音声・画像統合処理部131に入力される。音声イベント検出部122は、複数の異なるポジションに配置された複数の音声入力部(マイク)121a〜dから入力する音声情報を解析し統合する。具体的には、音声入力部(マイク)121a〜dから入力する音声情報に基づいて、発生した音の位置およびどのユーザの発生させた音であるかのユーザ識別情報を生成して音声・画像統合処理部131に入力する。
【0037】
なお、情報処理装置100の実行する具体的な処理は、例えば図1に示すように複数のユーザが存在する環境で、ユーザ1〜4がどの位置にいて、会話を行ったユーザがどのユーザであるかを識別すること、すなわち、ユーザ位置およびユーザ識別を行うことであり、さらに声を発した人物などのイベント発生源を特定する処理である。
【0038】
音声イベント検出部122は、複数の異なるポジションに配置された複数の音声入力部(マイク)121a〜dから入力する音声情報を解析し、音声の発生源の位置情報を確率分布データとして生成する。具体的には、音源方向に関する期待値と分散データN(m,σ)を生成する。また、予め登録されたユーザの声の特徴情報との比較処理に基づいてユーザ識別情報を生成する。この識別情報も確率的な推定値として生成する。音声イベント検出部122には、予め検証すべき複数のユーザの声についての特徴情報が登録されており、入力音声と登録音声との比較処理を実行して、どのユーザの声である確率が高いかを判定する処理を行い、全登録ユーザに対する事後確率、あるいはスコアを算出する。
【0039】
このように、音声イベント検出部122は、複数の異なるポジションに配置された複数の音声入力部(マイク)121a〜dから入力する音声情報を解析し、音声の発生源の位置情報を確率分布データと、確率的な推定値からなるユーザ識別情報とによって構成される[統合音声イベント情報]を生成して音声・画像統合処理部131に入力する。
【0040】
一方、画像入力部(カメラ)111から入力された画像情報は、画像イベント検出部112を介して音声・画像統合処理部131に入力される。画像イベント検出部112は、画像入力部(カメラ)111から入力する画像情報を解析し、画像に含まれる人物の顔を抽出し、顔の位置情報を確率分布データとして生成する。具体的には、顔の位置や方向に関する期待値と分散データN(m,σ)を生成する。また、予め登録されたユーザの顔の特徴情報との比較処理に基づいてユーザ識別情報を生成する。この識別情報も確率的な推定値として生成する。画像イベント検出部112には、予め検証すべき複数のユーザの顔についての特徴情報が登録されており、入力画像から抽出した顔領域の画像の特徴情報と登録された顔画像の特徴情報との比較処理を実行して、どのユーザの顔である確率が高いかを判定する処理を行い、全登録ユーザに対する事後確率、あるいはスコアを算出する。
【0041】
なお、音声イベント検出部122や画像イベント検出部112において実行する音声識別や、顔検出、顔識別処理は従来から知られる技術を適用する。例えば顔検出、顔識別処理としては以下の文献に開示された技術の適用が可能である。
佐部 浩太郎,日台 健一,"ピクセル差分特徴を用いた実時間任意姿勢顔検出器の学習",第10回画像センシングシンポジウム講演論文集,pp.547−552,2004
特開2004−302644(P2004−302644A)[発明の名称:顔識別装置、顔識別方法、記録媒体、及びロボット装置]
【0042】
音声・画像統合処理部131は、音声イベント検出部122や画像イベント検出部112からの入力情報に基づいて、複数のユーザが、それぞれどこにいて、それらは誰で、誰が音声等のシグナルを発したのかを確率的に推定する処理を実行する。この処理については後段で詳細に説明する。音声・画像統合処理部131は、音声・画像統合処理部131は、音声イベント検出部122や画像イベント検出部112からの入力情報に基づいて、
(a)複数のユーザが、それぞれどこにいて、それらは誰であるかの推定情報としての[ターゲット情報]
(b)例えば話しをしたユーザなどのイベント発生源を[シグナル情報]として、処理決定部132に出力する。
【0043】
これらの識別処理結果を受領した処理決定部132は、識別処理結果を利用した処理を実行する、例えば、例えば会話を行ったユーザに対するカメラのズームアップや、会話を行ったユーザに対してテレビから応答を行うなどの処理を行う。
【0044】
上述したように、音声イベント検出部122は、音声の発生源の位置情報を確率分布データ、具体的には、音源方向に関する期待値と分散データN(m,σ)を生成する。また、予め登録されたユーザの声の特徴情報との比較処理に基づいてユーザ識別情報を生成して音声・画像統合処理部131に入力する。また、画像イベント検出部112は、画像に含まれる人物の顔を抽出し、顔の位置情報を確率分布データとして生成する。具体的には、顔の位置や方向に関する期待値と分散データN(m,σ)を生成する。また、予め登録されたユーザの顔の特徴情報との比較処理に基づいてユーザ識別情報を生成して音声・画像統合処理部131に入力する。
【0045】
図3を参照して、音声イベント検出部122および画像イベント検出部112が生成し音声・画像統合処理部131に入力する情報の例について説明する。図3(A)は図1を参照して説明したと同様のカメラやマイクが備えられた実環境の例を示し、複数のユーザ1〜k,201〜20kが存在する。この環境で、あるユーザが話しをしたとすると、マイクで音声が入力される。また、カメラは連続的に画像を撮影している。
【0046】
音声イベント検出部122および画像イベント検出部112が生成し音声・画像統合処理部131に入力する情報は、基本的に同様の情報であり、図3(B)に示す2つの情報によって構成される。すなわち、
(a)ユーザ位置情報
(b)ユーザ識別情報(顔識別情報または話者識別情報)
これらの2つの情報である。これらの2つの情報は、イベントの発生毎に生成される。音声イベント検出部122は、音声入力部(マイク)121a〜dから音声情報が入力された場合に、その音声情報に基づいて上記の(a)ユーザ位置情報、(b)ユーザ識別情報を生成して音声・画像統合処理部131に入力する。画像イベント検出部112は、例えば予め定めた一定のフレーム間隔で、画像入力部(カメラ)111から入力された画像情報に基づいて(a)ユーザ位置情報、(b)ユーザ識別情報を生成して音声・画像統合処理部131に入力する。なお、本例では、画像入力部(カメラ)111は1台のカメラを設定した例を示しており、1つのカメラに複数のユーザの画像が撮影される設定であり、この場合、1つの画像に含まれる複数の顔の各々について(a)ユーザ位置情報、(b)ユーザ識別情報を生成して音声・画像統合処理部131に入力する。
【0047】
音声イベント検出部122が音声入力部(マイク)121a〜dから入力する音声情報に基づいて、
(a)ユーザ位置情報
(b)ユーザ識別情報(話者識別情報)
これらの情報を生成する処理について説明する。
【0048】
音声イベント検出部122による(a)ユーザ位置情報の生成処理
音声イベント検出部122は、音声入力部(マイク)121a〜dから入力された音声情報に基づいて解析された声を発したユーザ、すなわち[話者]の位置の推定情報を生成する。すなわち、話者が存在すると推定される位置を、期待値(平均)[m]と分散情報[σ]からなるガウス分布(正規分布)データN(m,σe)として生成する。
【0049】
音声イベント検出部122による(b)ユーザ識別情報(話者識別情報)の生成処理
音声イベント検出部122は、音声入力部(マイク)121a〜dから入力された音声情報に基づいて話者が誰であるかを、入力音声と予め登録されたユーザ1〜kの声の特徴情報との比較処理により推定する。具体的には話者が各ユーザ1〜kである確率を算出する。この算出値を(b)ユーザ識別情報(話者識別情報)とする。例えば入力音声の特徴と最も近い登録された音声特徴を有するユーザに最も高いスコアを配分し、最も異なる特徴を持つユーザに最低のスコア(例えば0)を配分する処理によって各ユーザである確率を設定したデータを生成して、これを(b)ユーザ識別情報(話者識別情報)とする。
【0050】
画像イベント検出部112が画像入力部(カメラ)111から入力する画像情報に基づいて、
(a)ユーザ位置情報
(b)ユーザ識別情報(顔識別情報)
これらの情報を生成する処理について説明する。
【0051】
画像イベント検出部112による(a)ユーザ位置情報の生成処理
画像イベント検出部112は、画像入力部(カメラ)111から入力された画像情報に含まれる顔の各々について顔の位置の推定情報を生成する。すなわち、画像から検出された顔が存在すると推定される位置を、期待値(平均)[m]と分散情報[σ]からなるガウス分布(正規分布)データN(m,σ)として生成する。
【0052】
画像イベント検出部112による(b)ユーザ識別情報(顔識別情報)の生成処理
画像イベント検出部112は、画像入力部(カメラ)111から入力された画像情報に基づいて、画像情報に含まれる顔を検出し、各顔が誰であるかを、入力画像情報と予め登録されたユーザ1〜kの顔の特徴情報との比較処理により推定する。具体的には抽出された各顔が各ユーザ1〜kである確率を算出する。この算出値を(b)ユーザ識別情報(顔識別情報)とする。例えば入力画像に含まれる顔の特徴と最も近い登録された顔の特徴を有するユーザに最も高いスコアを配分し、最も異なる特徴を持つユーザに最低のスコア(例えば0)を配分する処理によって各ユーザである確率を設定したデータを生成して、これを(b)ユーザ識別情報(顔識別情報)とする。
【0053】
なお、カメラの撮影画像から複数の顔が検出された場合には、各検出顔に応じて、
(a)ユーザ位置情報
(b)ユーザ識別情報(顔識別情報)
これらの情報を生成して、音声・画像統合処理部131に入力する。
また、本例では、画像入力部111として1台のカメラを利用した例を説明するが、複数のカメラの撮影画像を利用してもよく、その場合は、画像イベント検出部112は、各カメラの撮影画像の各々に含まれる各顔について、
(a)ユーザ位置情報
(b)ユーザ識別情報(顔識別情報)
これらの情報を生成して、音声・画像統合処理部131に入力する。
【0054】
次に、音声・画像統合処理部131の実行する処理について説明する。音声・画像統合処理部131は、上述したように、音声イベント検出部122および画像イベント検出部112から、図3(B)に示す2つの情報、すなわち、
(a)ユーザ位置情報
(b)ユーザ識別情報(顔識別情報または話者識別情報)
これらの情報を逐次入力する。なお、これらの各情報の入力タイミングは様々な設定が可能であるが、例えば、音声イベント検出部122は新たな音声が入力された場合に上記(a),(b)の各情報を音声イベント情報として生成して入力し、画像イベント検出部112は、一定のフレーム周期単位で、上記(a),(b)の各情報を画像イベント情報として生成して入力するといった設定が可能である。
【0055】
音声・画像統合処理部131の実行する処理について、図4以下を参照して説明する。音声・画像統合処理部131は、ユーザの位置および識別情報についての仮説(Hypothesis)の確率分布データを設定し、その仮説を入力情報に基づいて更新することで、より確からしい仮説のみを残す処理を行う。この処理手法として、パーティクル・フィルタ(Particle Filter)を適用した処理を実行する。
【0056】
パーティクル・フィルタ(Particle Filter)を適用した処理は、様々な仮説、本例では、ユーザの位置と誰であるかの仮説に対応するパーティクルを多数設定し、音声イベント検出部122および画像イベント検出部112から、図3(B)に示す2つの情報、すなわち、
(a)ユーザ位置情報
(b)ユーザ識別情報(顔識別情報または話者識別情報)
これらの入力情報に基づいて、より確からしいパーティクルのウェイトを高めていくという処理を行う。
【0057】
パーティクル・フィルタ(Particle Filter)を適用した基本的な処理例について図4を参照して説明する。例えば、図4に示す例は、あるユーザに対応する存在位置をパーティクル・フィルタにより推定する処理例を示している。図4に示す例は、ある直線上の1次元領域におけるユーザ301の存在する位置を推定する処理である。
【0058】
初期的な仮説(H)は、図4(a)に示すように均一なパーティクル分布データとなる。次に、画像データ302が取得され、取得画像に基づくユーザ301の存在確率分布データが図4(b)のデータとして取得される。この取得画像に基づく確率分布データに基づいて、図4(a)のパーティクル分布データが更新され、図4(c)の更新された仮説確率分布データが得られる。このような処理を、入力情報に基づいて繰り返し実行して、ユーザのより確からしい位置情報を得る。
【0059】
なお、パーティクル・フィルタを用いた処理の詳細については、例えば[D. Schulz, D. Fox, and J. Hightower. People Tracking with Anonymous and ID−sensors Using Rao−Blackwellised Particle Filters.Proc. of the International Joint Conference on Artificial Intelligence (IJCAI−03)]に記載されている。
【0060】
図4に示す処理例は、ユーザの存在位置のみについて、入力情報を画像データのみとした処理例として説明しており、パーティクルの各々は、ユーザ301の存在位置のみの情報を有している。
【0061】
一方、本発明に従った処理は、音声イベント検出部122および画像イベント検出部112から、図3(B)に示す2つの情報、すなわち、
(a)ユーザ位置情報
(b)ユーザ識別情報(顔識別情報または話者識別情報)
これらの入力情報に基づいて、複数のユーザの位置と複数のユーザがそれぞれ誰であるかを判別する処理を行うことになる。従って、本発明におけるパーティクル・フィルタ(Particle Filter)を適用した処理では、音声・画像統合処理部131が、ユーザの位置と誰であるかの仮説に対応するパーティクルを多数設定して、音声イベント検出部122および画像イベント検出部112から、図3(B)に示す2つの情報に基づいて、パーティクル更新を行うことになる。
【0062】
図5を参照して、本処理例で設定するパーティクルの構成について説明する。音声・画像統合処理部131は、予め設定した数=mのパーティクルを有する。図5に示すパーティクル1〜mである。各パーティクルには識別子としてのパーティクルID(PID=1〜m)が設定されている。
【0063】
各パーティクルに、位置および識別を行うオブジェクトに対応する仮想的なオブジェクトに対応する複数のターゲットを設定する。本例では、例えば実空間に存在すると推定される人数以上の仮想のユーザに対応する複数のターゲットを各パーティクルに設定する。m個のパーティクルの各々はターゲット単位でデータをターゲット数分保持する。図5に示す例では、1つのパーティクルにn個のターゲットが含まれる。各パーティクルに含まれるターゲット各々が有するターゲットデータの構成を図6に示す。
【0064】
各パーティクルに含まれる各ターゲットデータについて図6を参照して説明する。図6は、図5に示すパーティクル1(pID=1)に含まれる1つのターゲット(ターゲットID:tID=n)311のターゲットデータの構成である。ターゲット311のターゲットデータは、図6に示すように、以下のデータ、すなわち、
(a)各ターゲット各々に対応する存在位置の確率分布[ガウス分布:N(m1n,σ1n)]、
(b)各ターゲットが誰であるかを示すユーザ確信度情報(uID)
uID1n1=0.0
uID1n2=0.1

uID1nk=0.5
これらのデータによって構成される。
【0065】
なお、(a)に示すガウス分布:N(m1n,σ1n)における[m1n,σ1n]の(1n)は、パーティクルID:pID=1におけるターゲットID:tID=nに対応する存在確率分布としてのガウス分布であることを意味する。
また、(b)に示すユーザ確信度情報(uID)における、[uID1n1]に含まれる(1n1)は、パーティクルID:pID=1におけるターゲットID:tID=nの、ユーザ=ユーザ1である確率を意味する。すなわちターゲットID=nのデータは、
ユーザ1である確率が0.0、
ユーザ2である確率が0.1、

ユーザkである確率が0.5、
であることを意味している。
【0066】
図5に戻り、音声・画像統合処理部131の設定するパーティクルについての説明を続ける。図5に示すように、音声・画像統合処理部131は、予め決定した数=mのパーティクル(PID=1〜m)を設定し、各パーティクルは、実空間に存在すると推定されるターゲット(tID=1〜n)各々について、
(a)各ターゲット各々に対応する存在位置の確率分布[ガウス分布:N(m,σ)]、
(b)各ターゲットが誰であるかを示すユーザ確信度情報(uID)
これらのターゲットデータを有する。
【0067】
音声・画像統合処理部131は、音声イベント検出部122および画像イベント検出部112から、図3(B)に示すイベント情報、すなわち、
(a)ユーザ位置情報
(b)ユーザ識別情報(顔識別情報または話者識別情報)
これらのイベント情報を入力してm個のパーティクル(PID=1〜m)の更新処理を行う。
【0068】
音声・画像統合処理部131は、これらの更新処理を実行して、
(a)複数のユーザが、それぞれどこにいて、それらは誰であるかの推定情報としての[ターゲット情報]、
(b)例えば話をしたユーザなどのイベント発生源を示す[シグナル情報]、
これらを生成して処理決定部132に出力する。
【0069】
[ターゲット情報]は、図5の右端のターゲット情報305に示すように、各パーティクル(PID=1〜m)に含まれる各ターゲット(tID=1〜n)対応データの重み付き総和データとして生成される。各パーティクルの重みについては後述する。
【0070】
ターゲット情報305は、音声・画像統合処理部131が予め設定した仮想的なユーザに対応するターゲット(tID=1〜n)の
(a)存在位置
(b)誰であるか(uID1〜uIDkのいずれであるか)
これらを示す情報である。このターゲット情報は、パーティクルの更新に伴い、順次更新されることになり、例えばユーザ1〜kが実環境内で移動しない場合、ユーザ1〜kの各々が、n個のターゲット(tID=1〜n)から選択されたk個にそれぞれ対応するデータとして収束することになる。
【0071】
例えば、図5に示すターゲット情報305中の最上段のターゲット1(tID=1)のデータ中に含まれるユーザ確信度情報(uID)は、ユーザ2(uID12=0.7)について最も高い確率を有している。従って、このターゲット1(tID=1)のデータは、ユーザ2に対応するものであると推定されることになる。なお、ユーザ確信度情報(uID)を示すデータ[uID12=0.7]中の(uID12)内の(12)は、ターゲットID=1のユーザ=2のユーザ確信度情報(uID)に対応する確率であることを示している。
【0072】
このターゲット情報305中の最上段のターゲット1(tID=1)のデータは、ユーザ2である確率が最も高く、このユーザ2は、その存在位置が、ターゲット情報305中の最上段のターゲット1(tID=1)のデータに含まれる存在確率分布データに示す範囲にいると推定されることなる。
【0073】
このように、ターゲット情報305は、初期的に仮想的なオブジェクト(仮想ユーザ)として設定した各ターゲット(tID=1〜n)の各々について、
(a)存在位置
(b)誰であるか(uID1〜uIDkのいずれであるか)
の各情報を示す。従って、各ターゲット(tID=1〜n)のk個のターゲット情報の各々は、ユーザが移動しない場合は、ユーザ1〜kに対応するように収束する。
【0074】
ターゲット(tID=1〜n)の数がユーザ数kより大きい場合、どのユーザにも対応しないターゲットが発生する。例えば、ターゲット情報305中の最下段のターゲット(tID=n)は、ユーザ確信度情報(uID)も最大で0.5であり、存在確率分布データも大きなピークを有していない。このようなデータは特定のユーザに対応するデータではないと判定される。なお、このようなターゲットについては、削除するような処理が行われる場合もある。ターゲットの削除処理については後述する。
【0075】
先に説明したように、音声・画像統合処理部131は、入力情報に基づくパーティクルの更新処理を実行して、
(a)複数のユーザが、それぞれどこにいて、それらは誰であるかの推定情報としての[ターゲット情報]、
(b)例えば話をしたユーザなどのイベント発生源を示す[シグナル情報]、
これらを生成して処理決定部132に出力する。
【0076】
ターゲット情報は、図5のターゲット情報305を参照して説明した情報である。音声・画像統合処理部131は、このターゲット情報の他に話をしたユーザなどのイベント発生源を示す[シグナル情報]についても生成して出力する。イベント発生源を示す[シグナル情報]は、音声イベントについては、誰が話をしたか、すなわち[話者]を示すデータであり、画像イベントについては、画像に含まれる顔が誰であるかを示すデータである。なお、画像イベントの場合のシグナル情報は、本例では結果としてターゲット情報のユーザ確信度情報(uID)から得られるものと一致することになる。
【0077】
音声・画像統合処理部131が、音声イベント検出部122および画像イベント検出部112から、図3(B)に示すイベント情報、すなわち、ユーザ位置情報と、ユーザ識別情報(顔識別情報または話者識別情報)、これらのイベント情報を入力して、
(a)複数のユーザが、それぞれどこにいて、それらは誰であるかの推定情報としての[ターゲット情報]、
(b)例えば話をしたユーザなどのイベント発生源を示す[シグナル情報]、
これらの情報を生成して処理決定部132に出力する処理について、図7以下を参照して説明する。
【0078】
図7は、音声・画像統合処理部131の実行する処理シーケンスを説明するフローチャートを示す図である。まず、ステップS101において、音声・画像統合処理部131は、音声イベント検出部122および画像イベント検出部112から、図3(B)に示すイベント情報、すなわち、ユーザ位置情報と、ユーザ識別情報(顔識別情報または話者識別情報)、これらのイベント情報を入力する。
【0079】
イベント情報の取得に成功した場合は、ステップS102に進み、イベント情報の取得に失敗した場合は、ステップS121に進む。ステップS121の処理については後段で説明する。
【0080】
イベント情報の取得に成功した場合は、音声・画像統合処理部131は、ステップS102以下において、入力情報に基づくパーティクル更新処理を行うことになるが、パーティクル更新処理の前にステップS102において、図5に示すm個のパーティクル(pID=1〜m)の各々にイベントの発生源の仮説を設定する。イベント発生源とは、例えば、音声イベントであれば、話をしたユーザがイベント発生源であり、画像イベントであれば、抽出した顔を持つユーザがイベント発生源である。
【0081】
図5に示す例では、各パーティクルの最下段にイベント発生源の仮説データ(tID=xx)を示している。図5の例では、
パーティクル1(pID=1)は、tID=2、
パーティクル2(pID=2)は、tID=n、

パーティクルm(pID=m)は、tID=n、
このように各パーティクルについて、イベント発生源がターゲット1〜nのいずれであるかの仮説を設定する。図5に示す例では、各パーティクルについて、仮説として設定したイベント発生源のターゲットデータを二重線で囲んで示している。
【0082】
このイベント発生源の仮説設定は、入力イベントに基づくパーティクル更新処理を行う前に毎回実行する。すなわち、各パーティクル1〜m各々にイベントの発生源仮説を設定して、その仮説の下で、イベントとして音声イベント検出部122および画像イベント検出部112から、図3(B)に示すイベント情報、すなわち、
(a)ユーザ位置情報
(b)ユーザ識別情報(顔識別情報または話者識別情報)
これらのイベント情報を入力してm個のパーティクル(PID=1〜m)の更新処理を行う。
【0083】
パーティクル更新処理が行われた場合は、各パーティクル1〜m各々に設定されていたイベントの発生源の仮説はリセットされて、各パーティクル1〜m各々に新たな仮説の設定が行われる。この仮説の設定態様としては、
(1)ランダムな設定、
(2)音声・画像統合処理部131の有する内部モデルに従って設定、
上記(1),(2)のいずれかの手法で設定することが可能である。なお、パーティクルの数:mは、ターゲットの数:nより大きく設定されているので、複数のパーティクルが同一のターゲットをイベント発生源とした仮設に設定される。例えば、ターゲットの数:nが10とした場合、パーティクル数:m=100〜1000程度に設定した処理などが行われる。
【0084】
上記の(2)音声・画像統合処理部131の有する内部モデルに従って仮説を設定する処理の具体的処理例について説明する。
音声・画像統合処理部131は、まず、音声イベント検出部122および画像イベント検出部112から取得したイベント情報、すなわち、図3(B)に示す2つの情報、すなわち、
(a)ユーザ位置情報
(b)ユーザ識別情報(顔識別情報または話者識別情報)
これらのイベント情報と、
音声・画像統合処理部131の保持するパーティクルのターゲットの持つデータとの比較によって、各ターゲットの重み[WtID]を算出し、算出した各ターゲットの重み[WtID]に基づいて、各パーティクル(pID=1〜m)に対するイベント発生源の仮説を設定する。以下、具体的な処理例について説明する。
【0085】
なお、初期状態では、各パーティクル(pID=1〜m)に設定されるイベント発生源の仮説は均等な設定とする。すなわちn個のターゲット(tID=1〜n)を持つm個のパーティクル(pID=1〜m)が設定されている構成では、
ターゲット1(tID=1)をイベント発生源とするパーティクルをm/n個、
ターゲット2(tID=2)をイベント発生源とするパーティクルをm/n個、

ターゲットn(tID=n)をイベント発生源とするパーティクルをm/n個、
というように、各パーティクル(pID=1〜m)に設定する初期的なイベント発生源の仮説ターゲット(tID=1〜n)を均等に割り振る設定とする。
【0086】
図7に示すフローのステップS101において、音声・画像統合処理部131が音声イベント検出部122および画像イベント検出部112からイベント情報、すなわち、図3(B)に示す2つの情報、すなわち、
(a)ユーザ位置情報
(b)ユーザ識別情報(顔識別情報または話者識別情報)
これらのイベント情報を取得して、イベント情報の取得に成功すると、ステップS102において、音声・画像統合処理部131は、m個のパーティクル(PID=1〜m)の各々に対して、イベント発生源の仮説ターゲット(tID=1〜n)を設定する。
【0087】
ステップS102におけるパーティクル対応の仮説ターゲットの設定の詳細について説明する。音声・画像統合処理部131は、まず、ステップS101で入力したイベント情報と、音声・画像統合処理部131の保持するパーティクルのターゲットの持つデータとの比較を行い、比較結果を用いて、各ターゲットのターゲット重み[WtID]を算出する。
【0088】
ターゲット重み[WtID]の算出処理の詳細について図8を参照して説明する。ターゲット重みの算出は、図8の右端に示すように、各パーティクルに設定されるターゲット1〜nの各々に対応するn個のターゲット重みの算出処理として実行される。このn個のターゲット重みの算出に際しては、まず、図8(1)に示す入力イベント情報、すなわち、音声・画像統合処理部131が、音声イベント検出部122および画像イベント検出部112から入力したイベント情報と、各パーティクルの各ターゲットデータとの類似度の指標値としての尤度算出を行う。
【0089】
図8(2)に示す尤度算出処理例は、(1)入力イベント情報と、パーティクル1の1つのターゲットデータ(tID=n)との比較によるイベント−ターゲット間尤度の算出例を説明する図である。なお、図8には、1つのターゲットデータとの比較例を示しているが、各パーティクルの各ターゲットデータについて、同様の尤度算出処理を実行する。
【0090】
図8の下段に示す(2)尤度算出処理について説明する。図8(2)に示すように、尤度算出処理は、まず、
(a)ユーザ位置情報についてのイベントと、ターゲットデータとの類似度データとしてのガウス分布間尤度[DL]、
(b)ユーザ識別情報(顔識別情報または話者識別情報)についてのイベントと、ターゲットデータとの類似度データとしてのユーザ確信度情報(uID)間尤度[UL]
これらを個別に算出する。
【0091】
まず、(a)ユーザ位置情報についてのイベントと、ターゲットデータとの類似度データとしてのガウス分布間尤度[DL]の算出処理について説明する。
図8(1)に示す入力イベント情報中の、ユーザ位置情報に対応するガウス分布をN(m,σ)とし、
音声・画像統合処理部131の保持する内部モデルのあるパーティクルが持つあるターゲットのユーザ位置情報に対応するガウス分布をN(m,σ)とする。図8に示す例では、パーティクル1(pID=1)のターゲットn(tID=n)のターゲットデータに含まれるガウス分布をN(m,σ)とする。
【0092】
これら2つのデータのガウス分布の類似度を判定する指標としてのガウス分布間尤度[DL]は、以下の式によって算出する。
DL=N(m,σ+σ)x|m
上記式は、中心mで分散σ+σのガウス分布においてx=mの位置の値を算出する式である。
【0093】
次に、(b)ユーザ識別情報(顔識別情報または話者識別情報)についてのイベントと、ターゲットデータとの類似度データとしてのユーザ確信度情報(uID)間尤度[UL]の算出処理について説明する。
図8(1)に示す入力イベント情報中の、ユーザ確信度情報(uID)の各ユーザ1〜kの確信度の値(スコア)をP[i]とする。なお、iはユーザ識別子1〜kに対応する変数である。
音声・画像統合処理部131の保持する内部モデルのあるパーティクルが持つあるターゲットのユーザ確信度情報(uID)の各ユーザ1〜kの確信度の値(スコア)をP[i]とする。図8に示す例では、パーティクル1(pID=1)のターゲットn(tID=n)のターゲットデータに含まれるユーザ確信度情報(uID)の各ユーザ1〜kの確信度の値(スコア)をP[i]とする。
【0094】
これら2つのデータのユーザ確信度情報(uID)の類似度を判定する指標としてのユーザ確信度情報(uID)間尤度[UL]は、以下の式によって算出する。
UL=ΣP[i]×P[i]
上記式は、2つのデータのユーザ確信度情報(uID)に含まれる各対応ユーザの確信度の値(スコア)の積の総和を求める式であり、この値をユーザ確信度情報(uID)間尤度[UL]とする。
【0095】
もしくは、ユーザ確信度情報(uID)間尤度[UL]として、各積の最大値、すなわち、
UL=arg max(P[i]×P[i])
上記の値を算出し、この値をユーザ確信度情報(uID)間尤度[UL]として利用する構成としてもよい。
【0096】
入力イベント情報とあるパーティクル(pID)が持つ1つのターゲット(tID)との類似度の指標としてのイベント−ターゲット間尤度[LpID,tID]は、上記の2つの尤度、すなわち、
ガウス分布間尤度[DL]と、
ユーザ確信度情報(uID)間尤度[UL]
これら2つの尤度を利用して算出する。すなわち重みα(α=0〜1)を用いて、イベント−ターゲット間尤度[LpID,tID]は下式によって算出する。
[LpID,tID]=ULα×DL1−α
としてイベントとターゲットとの類似度の指標であるイベント−ターゲット間尤度[LpID,tID]を算出する。
ただし、α=0〜1とする。
【0097】
このイベント−ターゲット間尤度[LpID,tID]は、各パーティクルの各ターゲットについて各々算出し、このイベント−ターゲット間尤度[LpID,tID]に基づいて各ターゲットのターゲット重み[WtID]を算出する。
【0098】
なお、イベント−ターゲット間尤度[LpID,tID]の算出に適用する重み[α]は、予め固定された値としてもよいし、入力イベントに応じて値を変更する設定としてもよい。例えば入力イベントが画像である場合において、顔検出に成功し位置情報は取得できたが顔識別に失敗した場合などは、α=0の設定として、ユーザ確信度情報(uID)間尤度:UL=1としてガウス分布間尤度[DL]のみに依存してイベント−ターゲット間尤度[LpID,tID]を算出して、ガウス分布間尤度[DL]のみに依存したターゲット重み[WtID]を算出する構成としてもよい。
【0099】
また、入力イベントが音声である場合において、話者識別に成功し話者情報破取得できたが、位置情報の取得に失敗した場合などは、α=0の設定として、ガウス分布間尤度[DL]=1として、ユーザ確信度情報(uID)間尤度[UL]のみに依存してイベント−ターゲット間尤度[LpID,tID]を算出して、ユーザ確信度情報(uID)間尤度[UL]のみに依存したターゲット重み[WtID]を算出する構成としてもよい。
【0100】
イベント−ターゲット間尤度[LpID,tID]に基づく、ターゲット重み[WtID]の算出式は、以下の通りである。
【数1】

【0101】
とする。なお、上記式において、[WpID]は、各パーティクル各々に設定されるパーティクル重みである。パーティクル重み[WpID]の算出処理については後段で説明する。パーティクル重み[WpID]は初期状態では、すべてのパーティクル(pID=1〜m)において均一な値が設定される。
【0102】
図7に示すフローにおけるステップS101の処理、すなわち、各パーティクル対応のイベント発生源仮説の生成は、上記のイベント−ターゲット間尤度[LpID,tID]に基づいて算出したターゲット重み[WtID]に基づいて実行する。ターゲット重み[WtID]は、パーティクルに設定されるターゲット1〜n(tID=1〜n)に対応したn個のデータが算出される。
【0103】
m個のパーティクル(pID=1〜m)各々に対するイベント発生源仮説ターゲットは、ターゲット重み[WtID]の比率に応じて割り振る設定とする。
例えばn=4で、ターゲット1〜4(tID=1〜4)に対応して算出されたターゲット重み[WtID]が、
ターゲット1:ターゲット重み=3
ターゲット2:ターゲット重み=2
ターゲット3:ターゲット重み=1
ターゲット4:ターゲット重み=5
である場合、m個のパーティクルのイベント発生源仮説ターゲットを
m個のパーティクル中の30%をイベント発生源仮説ターゲット1、
m個のパーティクル中の20%をイベント発生源仮説ターゲット2、
m個のパーティクル中の10%をイベント発生源仮説ターゲット3、
m個のパーティクル中の50%をイベント発生源仮説ターゲット4、
このような設定とする。
すなわちパーティクルに設定するイベント発生源仮説ターゲットをターゲットの重みに応じた配分比率とする。
【0104】
この仮説設定の後、図7に示すフローのステップS103に進む。ステップS103では、各パーティクル対応の重み、すなわちパーティクル重み[WpID]の算出を行う。このパーティクル重み[WpID]は前述したように、初期的には各パーティクルに均一な値が設定されるが、イベント入力に応じて更新される。
【0105】
図9、図10を参照して、パーティクル重み[WpID]の算出処理の詳細について説明する。パーティクル重み[WpID]は、イベント発生源の仮説ターゲットを生成した各パーティクルの仮説の正しさの指標に相当する。パーティクル重み[WpID]は、m個のパーティクル(pID=1〜m)の各々において設定されたイベント発生源の仮説ターゲットと、入力イベントとの類似度であるイベント−ターゲット間尤度として算出される。
【0106】
図9には、音声・画像統合処理部131が、音声イベント検出部122および画像イベント検出部112から入力するイベント情報401と、音声・画像統合処理部131が、が保持するパーティクル411〜413を示している。各パーティクル411|413には、前述した処理、すなわち、図7に示すフローのステップS102におけるイベント発生源の仮説設定において設定された仮説ターゲットが1つずつ設定されている。図9中に示す例では、
パーティクル1(pID=1)411におけるターゲット2(tID=2)421、
パーティクル2(pID=2)412におけるターゲットn(tID=n)422、
パーティクルm(pID=m)413におけるターゲットn(tID=n)423、
これらの仮説ターゲットである。
【0107】
図9の例において、各パーティクルのパーティクル重み[WpID]は、
パーティクル1:イベント情報401とターゲット2(tID=2)421とのイベント−ターゲット間尤度、
パーティクル2:イベント情報401とターゲットn(tID=n)422とのイベント−ターゲット間尤度、
パーティクルm:イベント情報401とターゲットn(tID=n)423とのイベント−ターゲット間尤度、
これらのイベント−ターゲット間尤度に対応することになる。
【0108】
図10は、パーティクル1(pID=1)のパーティクル重み[WpID]算出処理例を示している。図10(2)に示すパーティクル重み[WpID]算出処理は、先に、図8(2)を参照して説明したと同様の尤度算出処理であり、本例では、(1)入力イベント情報と、パーティクルから選択された唯一の仮説ターゲットとの類似度指標としてのイベント−ターゲット間尤度の算出として実行される。
【0109】
図10の下段に示す(2)尤度算出処理も、先に図8(2)を参照して説明したと同様、
(a)ユーザ位置情報についてのイベントと、ターゲットデータとの類似度データとしてのガウス分布間尤度[DL]、
(b)ユーザ識別情報(顔識別情報または話者識別情報)についてのイベントと、ターゲットデータとの類似度データとしてのユーザ確信度情報(uID)間尤度[UL]
これらを個別に算出する。
【0110】
(a)ユーザ位置情報についてのイベントと、仮説ターゲットとの類似度データとしてのガウス分布間尤度[DL]の算出処理は以下の処理となる。
入力イベント情報中の、ユーザ位置情報に対応するガウス分布をN(m,σ)、
パーティクルから選択された仮説ターゲットのユーザ位置情報に対応するガウス分布をN(m,σ)、
として、ガウス分布間尤度[DL]を、以下の式によって算出する。
DL=N(m,σ+σ)x|m
上記式は、中心mで分散σ+σのガウス分布においてx=mの位置の値を算出する式である。
【0111】
(b)ユーザ識別情報(顔識別情報または話者識別情報)についてのイベントと、仮説ターゲットとの類似度データとしてのユーザ確信度情報(uID)間尤度[UL]の算出処理は以下の処理となる。
入力イベント情報中の、ユーザ確信度情報(uID)の各ユーザ1〜kの確信度の値(スコア)をPe[i]とする。なお、iはユーザ識別子1〜kに対応する変数である。
パーティクルから選択された仮説ターゲットのユーザ確信度情報(uID)の各ユーザ1〜kの確信度の値(スコア)をPt[i]として、ユーザ確信度情報(uID)間尤度[UL]は、以下の式によって算出する。
UL=ΣP[i]×P[i]
上記式は、2つのデータのユーザ確信度情報(uID)に含まれる各対応ユーザの確信度の値(スコア)の積の総和を求める式であり、この値をユーザ確信度情報(uID)間尤度[UL]とする。
【0112】
パーティクル重み[WpID]は、上記の2つの尤度、すなわち、
ガウス分布間尤度[DL]と、
ユーザ確信度情報(uID)間尤度[UL]
これら2つの尤度を利用し、重みα(α=0〜1)を用いて下式によって算出する。
パーティクル重み[WpID]=ULα×DL1−α
上記式により、パーティクル重み[WpID]を算出する。
ただし、α=0〜1とする。
このパーティクル重み[WpID]は、各パーティクルについて各々算出する。
【0113】
なお、パーティクル重み[WpID]の算出に適用する重み[α]は、前述したイベント−ターゲット間尤度[LpID,tID]の算出処理と同様、予め固定された値としてもよいし、入力イベントに応じて値を変更する設定としてもよい。例えば入力イベントが画像である場合において、顔検出に成功し位置情報は取得できたが顔識別に失敗した場合などは、α=0の設定として、ユーザ確信度情報(uID)間尤度:UL=1としてガウス分布間尤度[DL]のみに依存してパーティクル重み[WpID]を算出する構成としてもよい。また、入力イベントが音声である場合において、話者識別に成功し話者情報破取得できたが、位置情報の取得に失敗した場合などは、α=0の設定として、ガウス分布間尤度[DL]=1として、ユーザ確信度情報(uID)間尤度[UL]のみに依存してパーティクル重み[WpID]を算出する構成としてもよい。
【0114】
図7のフローにおけるステップS103の各パーティクル対応の重み[WpID]の算出は、このように図9、図10を参照して説明した処理として実行される。次に、ステップS104において、ステップS103で設定した各パーティクルのパーティクル重み[WpID]に基づくパーティクルのリサンプリング処理を実行する。
【0115】
このパーティクルリサンプリング処理は、m個のパーティクルから、パーティクル重み[WpID]に応じてパーティクルを取捨選択する処理として実行される。具体的には、例えば、パーティクル数:m=5のとき、
パーティクル1:パーティクル重み[WpID]=0.40
パーティクル2:パーティクル重み[WpID]=0.10
パーティクル3:パーティクル重み[WpID]=0.25
パーティクル4:パーティクル重み[WpID]=0.05
パーティクル5:パーティクル重み[WpID]=0.20
これらのパーティクル重みが各々設定されていた場合、
パーティクル1は、40%の確率でリサンプリングされ、パーティクル2は10%の確率でリサンプリングされる。なお、実際にはm=100〜1000といった多数であり、リサンプリングされた結果は、パーティクルの重みに応じた配分比率のパーティクルによって構成されることになる。
【0116】
この処理によって、パーティクル重み[WpID]の大きなパーティクルがより多く残存することになる。なお、リサンプリング後もパーティクルの総数[m]は変更されない。また、リサンプリング後は、各パーティクルの重み[WpID]はリセットされ、新たなイベントの入力に応じてステップS101から処理が繰り返される。
【0117】
ステップS105では、各パーティクルに含まれるターゲットデータ(ユーザ位置およびユーザ確信度)の更新処理を実行する。各ターゲットは、先に図6等を参照して説明したように、
(a)ユーザ位置:各ターゲット各々に対応する存在位置の確率分布[ガウス分布:N(m,σ)]、
(b)ユーザ確信度:各ターゲットが誰であるかを示すユーザ確信度情報(uID)として各ユーザ1〜kである確率値(スコア):Pt[i](i=1〜k)、すなわち、
uIDt1=Pt[1]
uIDt2=Pt[2]

uIDtk=Pt[k]
これらのデータによって構成される。
【0118】
ステップS105におけるターゲットデータの更新は、(a)ユーザ位置、(b)ユーザ確信度の各々について実行する。まず、(a)ユーザ位置の更新処理について説明する。
【0119】
ユーザ位置の更新は、
(a1)全パーティクルの全ターゲットを対象とする更新処理、
(a2)各パーティクルに設定されたイベント発生源仮説ターゲットを対象とした更新処理、
これらの2段階の更新処理として実行する。
【0120】
(a1)全パーティクルの全ターゲットを対象とする更新処理は、イベント発生源仮説ターゲットとして選択されたターゲットおよびその他のターゲットのすべてを対象として実行する。この処理は、時間経過に伴うユーザ位置の分散が拡大するという仮定に基づいて実行され、前回の更新処理からの経過時間とイベントの位置情報によってカルマン・フィルタ(Kalman Filter)を用い更新される。
【0121】
以下、位置情報が1次元の場合の更新処理例について説明する。まず、前回の更新処理時間からの経過時間[dt]とし、全ターゲットについての、dt後のユーザ位置の予測分布を計算する。すなわち、ユーザ位置の分布情報としてのガウス分布:N(m,σ)の期待値(平均):[m]、分散[σ]について、以下の更新を行う。
=m+xc×dt
σ=σ+σc×dt
なお、
:予測期待値(predicted state)
σ:予測共分散(predicted estimate covariance)
xc:移動情報(control model)
σc:ノイズ(process noise)
である。
なお、ユーザが移動しない条件の下で処理する場合は、xc=0として更新処理を行うことができる。
上記の算出処理により、全ターゲットに含まれるユーザ位置情報としてのガウス分布:N(m,σ)を更新する。
【0122】
さらに、各パーティクルに1つ設定されているイベント発生源の仮説となったターゲットに関しては、音声イベント検出部122や画像イベント検出部112から入力するイベント情報に含まれるユーザ位置を示すガウス分布:N(m,σ)を用いた更新処理を実行する。
K:カルマンゲイン(Kalman Gain)
:入力イベント情報:N(m,σ)に含まれる観測値(Observed state)
σ:入力イベント情報:N(m,σ)に含まれる観測値(Observed covariance)
として、以下の更新処理を行う。
K=σ/(σ+σ
=m+K(xc−m
σ=(1−K)σ
【0123】
次に、ターゲットデータの更新処理として実行する(b)ユーザ確信度の更新処理について説明する。ターゲットデータには上記のユーザ位置情報の他に、各ターゲットが誰であるかを示すユーザ確信度情報(uID)として各ユーザ1〜kである確立値(スコア):Pt[i](i=1〜k)が含まれている。ステップS105では、このユーザ確信度情報(uID)についても更新処理を行う。
【0124】
各パーティクルに含まれるターゲットのユーザ確信度情報(uID):Pt[i](i=1〜k)についての更新は、登録ユーザ全員分の事後確率と、音声イベント検出部122や画像イベント検出部112から入力するイベント情報に含まれるユーザ確信度情報(uID):Pe[i](i=1〜k)によって、予め設定した0〜1の範囲の値を持つ更新率[β]を適用して更新する。
【0125】
ターゲットのユーザ確信度情報(uID):Pt[i](i=1〜k)についての更新は、以下の式によって実行する。
Pt[i]=(1−β)×Pt[i]+β*Pe[i]
ただし、
i=1〜k
β:0〜1
である。なお、更新率[β]は、0〜1の範囲の値であり予め設定する。
【0126】
ステップS105では、この更新されたターゲットデータに含まれる以下のデータ、すなわち、
(a)ユーザ位置:各ターゲット各々に対応する存在位置の確率分布[ガウス分布:N(m,σ)]、
(b)ユーザ確信度:各ターゲットが誰であるかを示すユーザ確信度情報(uID)として各ユーザ1〜kである確立値(スコア):Pt[i](i=1〜k)、すなわち、
uIDt1=Pt[1]
uIDt2=Pt[2]

uIDtk=Pt[k]
これらのデータと、各パーティクル重み[WpID]とに基づいて、ターゲット情報を生成して、処理決定部132に出力する。
【0127】
なお、ターゲット情報の生成は、図5を参照して説明したように、各パーティクル(PID=1〜m)に含まれる各ターゲット(tID=1〜n)対応データの重み付き総和データとして生成される。図5の右端のターゲット情報305に示すデータである。ターゲット情報は、各ターゲット(tID=1〜n)各々の
(a)ユーザ位置情報、
(b)ユーザ確信度情報、
これらの情報を含む情報として生成される。
【0128】
例えば、ターゲット(tID=1)に対応するターゲット情報中の、ユーザ位置情報は、
【数2】

【0129】
上記式で表される。上記式において、Wは、パーティクル重み[WpID]を示している。
【0130】
また、ターゲット(tID=1)に対応するターゲット情報中の、ユーザ確信度情報は、
【数3】

【0131】
上記式で表される。上記式において、Wは、パーティクル重み[WpID]を示している。
音声・画像統合処理部131は、これらのターゲット情報をn個の各ターゲット(tID=1〜n)各々について算出し、算出したターゲット情報を処理決定部132に出力する。
【0132】
次に、図7に示すフローのステップS106の処理について説明する。音声・画像統合処理部131は、ステップS106において、n個のターゲット(tID=1〜n)の各々がイベントの発生源である確率を算出し、これをシグナル情報として処理決定部132に出力する。
【0133】
先に説明したように、イベント発生源を示す[シグナル情報]は、音声イベントについては、誰が話をしたか、すなわち[話者]を示すデータであり、画像イベントについては、画像に含まれる顔が誰であるかを示すデータである。
【0134】
音声・画像統合処理部131は、各パーティクルに設定されたイベント発生源の仮説ターゲットの数に基づいて、各ターゲットがイベント発生源である確率を算出する。すなわち、ターゲット(tID=1〜n)の各々がイベント発生源である確率を[P(tID=i)とする。ただしi=1〜nである。このとき、各ターゲットがイベント発生源である確率は、以下のように算出される。
P(tID=1):tID=1を割り当てた数/m
P(tID=2):tID=2を割り当てた数/m

P(tID=n):tID=nを割り当てた数/m
音声・画像統合処理部131は、この算出処理によって、生成した情報、すなわち、各ターゲットがイベント発生源である確率を[シグナル情報]として、処理決定部132に出力する。
【0135】
ステップS106の処理が終了したら、ステップS101に戻り、音声イベント検出部122および画像イベント検出部112からのイベント情報の入力の待機状態に移行する。
【0136】
以上が、図7に示すフローのステップS101〜S106の説明である。ステップS101において、音声・画像統合処理部131が、音声イベント検出部122および画像イベント検出部112から、図3(B)に示すイベント情報を取得できなかった場合も、ステップS121において、各パーティクルに含まれるターゲットの構成データの更新が実行される。この更新は、時間経過に伴うユーザ位置の変化を考慮した処理である。
【0137】
このターゲット更新処理は、先に、ステップS105の説明において(a1)全パーティクルの全ターゲットを対象とする更新処理と同様の処理であり、時間経過に伴うユーザ位置の分散が拡大するという仮定に基づいて実行され、前回の更新処理からの経過時間とイベントの位置情報によってカルマン・フィルタ(Kalman Filter)を用い更新される。
【0138】
位置情報が1次元の場合の更新処理例について説明する。まず、前回の更新処理からの経過時間[dt]とし、全ターゲットについての、dt後のユーザ位置の予測分布を計算する。すなわち、ユーザ位置の分布情報としてのガウス分布:N(m,σ)の期待値(平均):[m]、分散[σ]について、以下の更新を行う。
=m+xc×dt
σ=σ+σc×dt
なお、
:予測期待値(predicted state)
σ:予測共分散(predicted estimate covariance)
xc:移動情報(control model)
σc:ノイズ(process noise)
である。
なお、ユーザが移動しない条件の下で処理する場合は、xc=0として更新処理を行うことができる。
上記の算出処理により、全ターゲットに含まれるユーザ位置情報としてのガウス分布:N(m,σ)を更新する。
【0139】
なお、各パーティクルのターゲットに含まれるユーザ確信度情報(uID)については、イベントの登録ユーザ全員分の事後確率、もしくはイベント情報からスコア[Pe]が取得できない限りは更新しない。
【0140】
ステップS121の処理が終了したら、ステップS101に戻り、音声イベント検出部122および画像イベント検出部112からのイベント情報の入力の待機状態に移行する。
【0141】
以上、図7を参照して音声・画像統合処理部131の実行する処理について説明した。音声・画像統合処理部131は、図7に示すフローに従った処理を音声イベント検出部122および画像イベント検出部112からのイベント情報の入力ごとに繰り返し実行する。この繰り返し処理により、より信頼度の高いターゲットを仮説ターゲットとして設定したパーティクルの重みが大きくなり、パーティクル重みに基づくリサンプリング処理により、より重みの大きいパーティクルが残存することになる。結果として音声イベント検出部122および画像イベント検出部112から入力するイベント情報に類似する信頼度の高いデータが残存することになり、最終的に信頼度の高い以下の各情報、すなわち、
(a)複数のユーザが、それぞれどこにいて、それらは誰であるかの推定情報としての[ターゲット情報]、
(b)例えば話をしたユーザなどのイベント発生源を示す[シグナル情報]、
これらが生成されて処理決定部132に出力される。
【0142】
[(2)ターゲットの存在確率の推定情報を利用したユーザ位置およびユーザ識別処理]
[(2−1)ターゲットの存在確率の推定情報を利用したユーザ位置およびユーザ識別処理の概要]
上述した説明[(1)イベント情報入力に基づく仮説更新によるユーザ位置およびユーザ識別処理]は、本出願人と同一出願人の先の出願である特願2007−193930において開示した構成にほぼ対応する。
【0143】
上述した処理は、複数のチャネル(モダリティ、モーダルとも呼ばれる)からの入力情報、具体的には、カメラによって取得された画像情報、マイクによって取得された音声情報の解析処理により、ユーザが誰であるかのユーザ識別処理、ユーザの位置推定処理、イベントの発生源の特定処理などを行う処理である。
【0144】
しかし、上述の処理においては、各パーティクルに新たなターゲットを生成する場合、例えば人物ではないオブジェクトを人として誤って検出してしまい、誤検出に基づいて不要なターゲットを生成してしまう場合がある。
【0145】
すなわち、上述した処理例においてカメラなどの画像入力部が撮影した画像の解析、例えば既存の顔検出処理を行い、顔領域と判断される新たな画像領域が検出された場合に新たなターゲットの生成が行われる。しかし、例えばカーテンの揺らぎや様々なオブジェクトの影などが人物の顔と判断されてしまう場合がある。このように人物の顔でないものを人物の顔と判断してしまうと新たなターゲットの生成が行われ、各パーティクルに新規ターゲットが設定される。
【0146】
このような誤検出によって生成された新規ターゲットに対しても新たな入力イベント情報に基づく更新処理が実行されることになる。このような処理は、結果としては無駄な処理であり、ターゲットとユーザの対応関係の特定処理の遅延や、精度低下をもたらすことになり好ましくない。
【0147】
このような誤検出によって生成されたターゲットは、入力イベント情報に基づくターゲットやパーティクル更新処理の過程で存在しないユーザに対応するターゲットであることが次第に明らかになり、既定の削除条件を満たすことによって削除される。
【0148】
しかし、上述した処理例のターゲットの削除条件は、例えばターゲットの位置分布が一様に近くなることである。この削除条件が誤検出のターゲットの削除を遅らせる要因となる場合がある。一様に近い位置分布を持つターゲットは、新たに入力するイベント情報によって更新されやすいという性質を持つからである。一様に近い位置分布を持つターゲットは、新たに入力するイベント情報の持つ特徴に対して必ずしも大きくはずれることがない特徴を有し、入力イベント情報に対する類似性を有するため、更新されやすいからである。
【0149】
このようなターゲット更新処理が行われると、誤検出ターゲットの持つデータ、例えば位置の分布データが一様でなくなってしまい、削除条件から遠いターゲットデータを有することになる。従って、予め既定した削除条件に至るまでの時間が長期化してしまう。その結果、誤検出に基づいて生成されたターゲットは浮遊霊のように存在し続け、解析処理の遅延や解析精度の低下を増大させるという問題を発生させることになる。
【0150】
以下に説明する本発明の実施例は、このような誤検出に基づくターゲットの存在による問題点を排除することを可能とした実施例である。以下に説明する本発明の構成では、パーティクルに設定するターゲットのすべてに、ターゲットの存在確率を推定するための情報を設定する。
【0151】
このターゲット存在確率の推定情報は、ターゲット存在の仮説c:{0,1}として、パーティクルを構成するターゲットに設定する。
c=1は、ターゲットが存在する、
c=0は、ターゲットが不在(存在しない)、
これらの状態を示す仮説情報である。
【0152】
なお、各パーティクルが持つターゲットの個数は全パーティクルにおいて同数であり、同じ対象を表すターゲットID(tID)を持つ。この基本構成は、上述した[(1)イベント情報入力に基づく仮説更新によるユーザ位置およびユーザ識別処理]の構成と同じである。
【0153】
ただし、以下に説明する構成では、各パーティクル内の1つのターゲットをターゲット生成候補(tID=cnd)として設定する。イベント情報の有無とは関係なく、すべてのパーティクルに1つのターゲット生成候補(tID=cnd)を常時保持する。すなわち観測されるユーザがいない場合であってもすべてのパーティクルに1つのターゲット生成候補(tID=cnd)を保有する。
【0154】
本発明の情報処理装置の構成は、上述した[(1)イベント情報入力に基づく仮説更新によるユーザ位置およびユーザ識別処理]の構成と同じ図1、図2の構成を有する。音声・画像統合処理部131は、音声イベント検出部122および画像イベント検出部112から、図3(B)に示す2つの情報、すなわち、
(a)ユーザ位置情報
(b)ユーザ識別情報(顔識別情報または話者識別情報)
これらの入力情報に基づいて、複数のユーザの位置と複数のユーザがそれぞれ誰であるかを判別する処理を行う。
【0155】
音声・画像統合処理部131は、ユーザの位置と誰であるかの仮説に対応するパーティクルを多数設定して、音声イベント検出部122および画像イベント検出部112からの入力情報に基づいて、パーティクル更新を行う。
【0156】
図11、図12を参照して本実施例において設定されるパーティクル、およびパーティクルに含まれるターゲットが有するターゲットデータの構成と、ターゲット情報について説明する。図11、図12は、上述した[(1)イベント情報入力に基づく仮説更新によるユーザ位置およびユーザ識別処理]において説明した図5、図6に対応する図である。
【0157】
音声・画像統合処理部131は、予め設定した複数のパーティクルを有する。図11に示すm個のパーティクル1〜mである。各パーティクルには識別子としてのパーティクルID(PID=1〜m)が設定される。
【0158】
各パーティクルには、位置および識別を行うオブジェクトに対応する仮想的なオブジェクトに対応する複数のターゲットを設定する。
本例では、各パーティクル内の1つのターゲットをターゲット生成候補(tID=cnd)として設定する。イベント情報の有無とは関係なく、すべてのパーティクルに1つのターゲット生成候補(tID=cnd)を常時、保持する。すなわち観測されるユーザがいない場合であってもすべてのパーティクルに1つのターゲット生成候補(tID=cnd)を保有する。
【0159】
図11に示す例では、パーティクル(PID=1〜m)の各パーティクル内に示される最上段のターゲットがターゲット生成候補(tID=cnd)である。ターゲット生成候補(tID=cnd)も、他のターゲット(tID=1〜n)と同様のターゲットデータを保持している。このように本実施例では、図11に示すように、1つのパーティクルにたは、ーゲット生成候補(tID=cnd)を含むn+1個のターゲット(tID=cnd,1〜n)が含まれる。各パーティクルに含まれるターゲット各々が有するターゲットデータの構成を図12に示す。
【0160】
図12は、図11に示すパーティクル1(pID=1)に含まれる1つのターゲット(ターゲットID:tID=n)501のターゲットデータの構成を示す図である。ターゲット501のターゲットデータは、図12に示すように、以下のデータを有している。
(1)ターゲットの存在確率を推定するための、ターゲット存在仮説情報[c{0,1}]
(2)ターゲットの存在位置の確率分布[ガウス分布:N(m1n,σ1n)]、
(3)ターゲットが誰であるかを示すユーザ確信度情報(uID)
これらのデータによって構成される。
【0161】
(2),(3)のデータは、上述した[(1)イベント情報入力に基づく仮説更新によるユーザ位置およびユーザ識別処理]において図6を参照して説明したと同様のデータである。本処理例では、これらのデータに加えて、さらに以下のデータを持つ。
(1)ターゲットの存在確率を推定するための、ターゲット存在仮説情報[c{0,1}]
本処理例では、このターゲット存在仮説情報が各ターゲットに設定される。
【0162】
音声・画像統合処理部131は、音声イベント検出部122および画像イベント検出部112から、図3(B)に示すイベント情報、すなわち、
(a)ユーザ位置情報
(b)ユーザ識別情報(顔識別情報または話者識別情報)
これらのイベント情報を入力してm個のパーティクル(PID=1〜m)の更新処理を行う。この更新処理において、ターゲットデータ、すなわち、
(1)ターゲットの存在確率を推定するための、ターゲット存在仮説情報[c{0,1}]
(2)ターゲットの存在位置の確率分布[ガウス分布:N(m1n,σ1n)]、
(3)ターゲットが誰であるかを示すユーザ確信度情報(uID)
これらのデータ更新が行われる。
【0163】
音声・画像統合処理部131は、これらの更新処理を実行して、
(a)複数のユーザが、それぞれどこにいて、それらは誰であるかの推定情報としての[ターゲット情報]、
(b)例えば話をしたユーザなどのイベント発生源を示す[シグナル情報]、
これらを生成して処理決定部132に出力する。
【0164】
[ターゲット情報]は、図11の右端のターゲット情報に示すように、各パーティクル(PID=1〜m)に含まれる各ターゲット(tID=cnd,1〜n)対応のターゲットデータの重み付き総和データとして生成される情報である。
本処理例における[ターゲット情報]には、
(1)ターゲットの存在確率、
(2)ターゲットの存在位置、
(3)ターゲットが誰であるか(uID1〜uIDkのいずれであるか)
これらの情報が含まれる。(2),(3)の情報は、前述の[(1)イベント情報入力に基づく仮説更新によるユーザ位置およびユーザ識別処理]において説明した情報と同様の情報であり、図5に示すターゲット情報305に含まれる情報と同じ情報である。
【0165】
(1)ターゲットの存在確率は、本処理例において新たに追加されたターゲット情報である。
ターゲットの存在確率[PtID(c=1)]は、以下の式によって算出される。
PtID(c=1)={tIDでc=1を割り当てた数}/{パーティクル数}
同様に、ターゲットが存在しない確率PtID(c=0)は、以下の式によって算出される。
PtID(c=0)={tIDでc=0を割り当てた数}/{パーティクル数}
【0166】
なお、上記の計算式において、{tIDでc=1を割り当てた数}は、各パーティクルに設定された同一ターゲット識別子(tID)のターゲットにおいてc=1を割り当てたターゲット数である。{tIDでc=0を割り当てた数}は、同一ターゲット識別子(tID)のターゲットにおいてc=0を割り当てたターゲット数である。
【0167】
音声・画像統合処理部131は、例えば図11の右下に示すような存在確率データ502、すなわち各ターゲットID(tID=cnd,1〜n)各々についての存在確率Pを含むターゲット情報を生成して、処理決定部132に出力する。
【0168】
すなわち、音声・画像統合処理部131は、
(1)ターゲットの存在確率、
(2)ターゲットの存在位置、
(3)ターゲットが誰であるか(uID1〜uIDkのいずれであるか)
これらの情報をターゲット情報として処理決定部132に出力する。
【0169】
図13は、音声・画像統合処理部131の実行する処理シーケンスを説明するフローチャートを示している。
本実施例では、図13に示す3つのフロー処理、すなわち、
(a)イベントによるターゲット存在の仮説更新プロセス
(b)ターゲット生成プロセス
(c)ターゲット削除プロセス
音声・画像統合処理部131は、これら3つのプロセスを独立の処理として実行する。
【0170】
具体的には、音声・画像統合処理部131は、
(a)イベントによるターゲット存在の仮説更新プロセスは、イベント発生を契機として実行されるイベントドリブン処理として実行する。
(b)ターゲット生成プロセスは、予め設定した一定期間毎のピリオディック処理、もしくは、(a)イベントによるターゲット存在の仮説更新プロセスの処理の直後に実行する。
(c)ターゲット削除プロセスは、予め設定した一定期間毎のピリオディック処理として実行する。
以下、図13に示す(a)〜(c)の各フローチャートについて説明する。
【0171】
[(2−2)イベントによるターゲット存在の仮説更新プロセス]
まず、図13(a)に示すイベントによるターゲット存在の仮説更新プロセスについて説明する。この処理は、上述した[(1)イベント情報入力に基づく仮説更新によるユーザ位置およびユーザ識別処理]において説明した図7のフローのステップS101〜S106の処理に対応する処理である。
【0172】
なお、この図13(a)に示すイベントによるターゲット存在の仮説更新処理の実行開始前に、音声・画像統合処理部131は、図11に示すような複数(m個)のパーティクルを設定しているものとする。各パーティクルには識別子としてのパーティクルID(PID=1〜m)が設定される。また、各パーティクルには、ターゲット生成候補(tID=cnd)を含むn+1個のターゲットが含まれる。
【0173】
ステップS211において、音声・画像統合処理部131は、音声イベント検出部122および画像イベント検出部112から、例えば図3(B)に示すイベント情報、すなわち、ユーザ位置情報と、ユーザ識別情報(顔識別情報または話者識別情報)、これらのイベント情報を入力する。
【0174】
イベント情報の入力を契機としてステップS212において、ターゲット存在の仮説を生成する。
各パーティクルにおける各ターゲット存在の仮説c:{0,1}は、例えば、以下の(a),(b)いずれかの手法を適用して生成する。
(a)直前の状態に依存せずランダムに各ターゲット存在の仮説c:{0,1}を生成、
(b)直前の状態に依存し、ある確率で遷移(c=0→1,c=1→0)させることにより各ターゲット存在の仮説c:{0,1}を生成、
【0175】
(a)の手法は、各パーティクルに含まれるターゲットについて、ターゲット存在の仮説c:{0,1}を0(不在)または1(存在)のいずれかに全くランダムに設定する方法である。
(b)の手法は、直前の状態に応じて、予め設定した遷移確率(c=0→1の確率、c=1→0の確率)を適用して、各ターゲットの存在の仮説c:{0,1}を変更する手法である。この処理には、例えば、ターゲットの他のデータ、
ターゲットの存在位置の確率分布[ガウス分布:N(m1n,σ1n)]、
ターゲットが誰であるかを示すユーザ確信度情報(uID)
これらのデータを参考にすることも可能である。これらのデータがターゲットの存在を肯定するデータである場合には、ターゲット存在を示す[c=1]の設定を行い、これらのデータがターゲットの存在を否定するデータである場合には不在を示す[c=0]に設定する等の処理を行うことができる。
【0176】
次に、ステップS213において、イベント発生源ターゲットの仮説設定処理を行なう。この処理は、先に説明した図7のフローにおけるステップS102の処理に対応する。
【0177】
音声・画像統合処理部131は、ステップS213において、図11に示すm個のパーティクル(pID=1〜m)の各々にイベントの発生源の仮説を設定する。イベント発生源とは、例えば、音声イベントであれば、話をしたユーザがイベント発生源であり、画像イベントであれば、抽出した顔を持つユーザがイベント発生源である。
【0178】
本実施例では、取得したイベントがどのターゲットから発生したかの仮説を各パーティクルにイベント数分ランダムに設定するが、この仮説設定は以下に示す制約の下に行う。
(制約1)ターゲット存在の仮説がc=0(不在)のターゲットはイベント発生源としない、
(制約2)異なるイベントに対して、同一のターゲットをイベント発生源としない、
(制約3)同一時刻において「イベント数>ターゲット数」の場合は、ターゲット数より多いイベントはノイズと判定する、
【0179】
上記の制約の下、例えば、図14に示すように、1つのイベント(eID=1)に対して、
パーティクル(pID=1)は、tID=1、
パーティクル2(pID=2)は、tID=cnd、

パーティクルm(pID=m)は、tID=1、
このように各パーティクルについて、イベント発生源がターゲット(tID=cnd,1〜n)のいずれであるかの仮説を設定する。
【0180】
なお、イベント検出を行う装置、例えば顔認識に基づくイベント検出を行う装置の信頼度が低い場合などには、誤検出に基づくイベント情報によってターゲット生成候補(tID=cnd)が頻繁に更新されるのを避けるため仮説設定の際に調整を行う構成としてもよい。具体的には、ターゲット生成候補(tID=cnd)がイベント発生源ターゲットの仮説になりにくい処理を行なう。
【0181】
すなわち、取得したイベントがどのターゲットから発生したかの仮説を各パーティクルに設定する際、上記制約に加えて、さらに、ターゲット生成候補(tID=cnd)がイベント発生源ターゲットの仮説になりにくいように仮説設定のランダムさにバイアスをかける。具体的には、例えば、あるパーティクルに対して、tID=cnd,1〜nからパーティクル対応のイベント発生源ターゲットを1つ選択してイベント発生源仮説を設定する処理を以下のように行なう。
【0182】
まず、パーティクル対応の仮説設定に際して、
(1回目のtID選択)tID=cnd,1〜nからランダムにtIDを選択する。
tID=1〜nのいずれかが選択された場合は、そのままそのtIDを仮説とする。
tID=cndが選択された場合は、2回目のtID選択を行う。
(2回目のtID選択)tID=cnd,1〜nからランダムにtIDを選択する。
tID=1〜nのいずれかが選択された場合は、そのtIDを仮説とする。2回続けてtID=cndが選択された場合にのみ、そのパーティクルに対応するイベント発生源ターゲットをtID=cndとする。
【0183】
上記の処理例は、tID=cndが2回連続して選択された場合にのみtID=cndをパーティクル対応のイベント発生源仮説とする処理である。例えばこのようなバイアスをかけた処理によって、tID=1〜nに比較してtID=cndがパーティクル対応のイベント発生源仮説になる確率を低減することができる。
【0184】
なお、すべてのイベントに対して、各パーティクルにイベント発生源の仮説tID=cnd,1〜nを対応付けることは必須ではない。例えば、検出されたイベントの中の一定の割合(例えば10%)をノイズであるとして解釈し、このようなノイズと解釈したイベントに対してはイベント発生源ターゲットの仮説を設定しない構成としてもよい。なお、この仮説設定を行わない割合は、利用するイベント検出装置(例えば顔識別処理実行部)の検出性能に応じて決定してよい。
【0185】
ステップS212,S213の処理によって設定されるパーティクルの構成例を図14に示す。図14に示す例では、ある時刻における2つのイベント(eID=1,eID=2)の各々に対するイベント発生源の仮説データ(tID=xx)を各パーティクルの最下段に示している。2つのイベント(eID=1,eID=2)の各々は、例えばある時刻にカメラによって撮影された画像から検出された2つの顔領域に対応する。
【0186】
図14に示す例では、
第1イベント(eID=1)に対するイベント発生源の仮説データは、
パーティクル1(pID=1)は、tID=1、
パーティクル2(pID=2)は、tID=cnd、

パーティクルm(pID=m)は、tID=1、
このような設定である。
また、第2イベント(eID=2)に対するイベント発生源の仮説データは、
パーティクル1(pID=1)は、tID=n、
パーティクル2(pID=2)は、tID=n、

パーティクルm(pID=m)は、tID=non(仮説設定なし)、
このような設定である。
【0187】
このイベント発生源ターゲットの仮説設定は、先に説明した制約、すなわち、
(制約1)ターゲット存在の仮説がc=0(不在)のターゲットは発生源にはならない。
(制約2)異なるイベントに対して、同一のターゲットが発生源にはならない。
(制約3)「イベント数>ターゲット数」のときは、その差分のイベントはノイズとして仮説を生成する。
これらの仮説の制約に基づいた設定である。
【0188】
図14に示す例では、第2イベント(eID=2)に対するイベント発生源ターゲットの仮説として、パーティクルm(pID=m)に対してtID=non(仮説設定なし)の設定となっている。この設定は、上記の(制約1)と(制約3)に基づく処理である。すなわち、パーティクルm(PID=m)には、1つのターゲット(tID=1)のみが、ターゲット存在の仮説がc=1(存在)となっている。他のターゲットはc=0(不在)である。
【0189】
同時刻に発生した2つのイベント(eID=1,eID=2)のいずれか一方は存在する(c=1)と仮定したターゲット(tID=1)をイベント発生源ターゲットの仮説とすることが可能であるが、2つのイベントの少なくとも一方はイベント発生源ターゲットの仮説設定はできない。これは、上記制約に従った処理である。
【0190】
このように、「イベント数>ターゲット数」の場合は、各パーティクルでイベント発生源ターゲット(tID)が割り振られないイベント(eID)が存在する。このような場合は、tID=nonとする。すなわち、このイベントはノイズであるとして処理を行う。なお、P(tID=non)は「イベントがノイズである」確率を示す。
【0191】
次に、図13に示すフロー(a)のステップS214に進み、パーティクルの重み[WpID]の計算を行う。この処理は、上述した説明[(1)イベント情報入力に基づく仮説更新によるユーザ位置およびユーザ識別処理]の図7のフローのステップS103に対応する処理である。すなわち、イベント発生源ターゲットの仮説に基づいて、各パーティクルの重み[WpID]を計算する。
【0192】
この処理は、図7のフローのステップS103の処理と同様の処理であり、先に図9、図10を参照して説明した処理である。すなわち、入力するイベントのデータと、各パーティクル対応のイベント発生源仮説としたターゲットのターゲットデータとの類似度であるイベント−ターゲット間尤度として算出される。パーティクル重み[WpID]は前述したように、初期的には各パーティクルに均一な値が設定されるが、イベント入力に応じて更新される。
【0193】
図9、図10を参照して説明したように、パーティクル重み[WpID]は、イベント発生源の仮説ターゲットを生成した各パーティクルの仮説の正しさの指標に相当する。パーティクル重み[WpID]は、m個のパーティクル(pID=1〜m)の各々において設定されたイベント発生源の仮説ターゲットと、入力イベントとの類似度であるイベント−ターゲット間尤度として算出される。
【0194】
図14のような仮説ターゲット設定例では、以下のイベント−ターゲット間尤度を算出する。
【0195】
イベント(eID=1)入力に基づくパーティクル重み[WpID]の算出
パーティクル1
イベント(eID=1)の持つイベント情報(図9、図10のイベント情報401参照)とターゲット1(tID=1)とのイベント−ターゲット間尤度、
パーティクル2
イベント(eID=1)の持つイベント情報とターゲットcnd(tID=cnd)とのイベント−ターゲット間尤度、
パーティクル3
イベント(eID=1)の持つイベント情報とターゲット1(tID=1)とのイベント−ターゲット間尤度、
これらの尤度を算出し、これらの尤度に基づく算出値を各パーティクル重みとして設定する。
【0196】
イベント(eID=2)入力に基づくパーティクル重み[WpID]の算出
パーティクル1
イベント(eID=2)の持つイベント情報とターゲットn(tID=n)とのイベント−ターゲット間尤度、
パーティクル2
イベント(eID=2)の持つイベント情報とターゲットn(tID=n)とのイベント−ターゲット間尤度、
パーティクル3
イベント(eID=2)の持つイベント情報とターゲットnon(tID=non)とのイベント−ターゲット間尤度、
これらの尤度を算出し、これらの尤度に基づく算出値を各パーティクル重みとして設定する。
【0197】
具体的には、図10を参照して説明したように、パーティクル重み[WpID]は、上記の2つの尤度、すなわち、
ガウス分布間尤度[DL]と、
ユーザ確信度情報(uID)間尤度[UL]
これら2つの尤度を利用し、重みα(α=0〜1)を用いて下式によって算出する。
パーティクル重み[WpID]=ULα×DL1−α
上記式により、パーティクル重み[WpID]を算出する。
ただし、α=0〜1とする。
このパーティクル重み[WpID]は、各パーティクルについて各々算出する。
【0198】
なお、
ターゲット生成候補(tID=cnd)の重みに関しては、上記の尤度算出処理によって算出したパーティクル重み[WpID]に、さらにターゲット生成候補(tID=cnd)の生成確率Pbを乗じて最終的なパーティクル重み[WpID]とする。すなわち、ターゲット生成候補(tID=cnd)の重みは以下の値とする。
pID=Pb×(ULα×DL1−α
ターゲット生成候補(tID=cnd)の生成確率Pbとは、パーティクルに対するイベント発生源仮説設定において、tID=cnd,1〜nからターゲット生成候補(tID=cnd)がイベント発生源として設定される確率である。すなわち、ターゲット仮説としてターゲット生成候補が設定されているパーティクルについては、イベント−ターゲット間尤度に1より小さい係数を乗算してパーティクル重みを算出する。
【0199】
このように、ターゲット生成候補(tID=cnd)をイベント発生源の仮説として設定したパーティクルの重みを小さくする。この処理によって、不確実性の高いターゲット(tID=cnd)のターゲット情報に与える影響を小さくする設定としている。
【0200】
また、仮説を立てたターゲットがノイズの場合、すなわち、ターゲットnon(tID=non)の設定の場合は、尤度算出に適用するターゲットデータが存在しない。この場合は、イベント情報との類似度算出に適用するターゲットデータとして、位置や識別情報を一様分布とした仮のターゲットデータを設定し、この仮設定のターゲットデータと入力イベント情報との尤度算出を実行してパーティクル重みを算出する。
【0201】
このように、各パーティクルについて、イベント情報の入力ごとにパーティクル重みを算出する。なお、最終的なパーティクル重みは、さらに上記で計算した値を以下のような最終調整としての正規化処理を行って決定する。
(1)直前の重みと置き換えて正規化する
(2)直前の重みに乗じて正規化する
なお、正規化処理はパーティクル1〜mの重み総和を[1]とする処理である。
【0202】
(1)の直前の重みと置き換えて正規化する処理は、直前の重みを考慮することなく、新たなイベント情報の入力に基づいて算出された尤度情報によってパーティクル重みを算出して正規化してパーティクル重みを決定する処理である。Rを正規化項(Regularization term)とした場合、パーティクル重み[WpID]は以下のようにして算出される。
イベント発生源仮説ターゲットがターゲット生成候補(tID=cnd)でないパーティクルは、
pID=R×(ULα×DL1−α)、
イベント発生源仮説ターゲットがターゲット生成候補(tID=cnd)であるパーティクルは、
pID=R×Pb×(ULα×DL1−α)、
このようにして各パーティクルのパーティクル重み[WpID]を算出する。
【0203】
(2)の直前の重みに乗じて正規化する処理は、すでに過去(時刻:t−1)のイベント情報に基づいて設定されたパーティクル重み[WpID(t−1)]が存在する場合に、新たなイベント情報の入力に基づいて算出された尤度情報をこの設定済みのパーティクル重み[WpID(t−1)]に乗算してパーティクル重み[WpID(t)]を算出する処理である。具体的には、例えば以下のようにして算出される。
イベント発生源仮説ターゲットがターゲット生成候補(tID=cnd)でないパーティクルは、
pID(t)=R×(ULα×DL1−α)×WpID(t−1)
イベント発生源仮説ターゲットがターゲット生成候補(tID=cnd)であるパーティクルは、
pID(t)=R×Pb×(ULα×DL1−α)×WpID(t−1)
このようにして各パーティクルのパーティクル重み[WpID(t)]を算出する。
【0204】
音声・画像統合処理部131は、図13に示すフロー(a)のステップS214において、上述した処理によって各パーティクルのパーティクル重みを決定する。次に、ステップS215に進み、音声・画像統合処理部131は、ステップS214で設定した各パーティクルのパーティクル重み[WpID]に基づくパーティクルのリサンプリング処理を実行する。この処理は、上述した説明[(1)イベント情報入力に基づく仮説更新によるユーザ位置およびユーザ識別処理]の図7のフローのステップS104の処理に対応する処理である。パーティクルの重みに基づいて、復元抽出方法でパーティクルをリサンプリングする。
【0205】
このパーティクルリサンプリング処理は、m個のパーティクルから、パーティクル重み[WpID]に応じてパーティクルを取捨選択する処理として実行される。具体的には、例えば、パーティクル数:m=5のとき、
パーティクル1:パーティクル重み[WpID]=0.40
パーティクル2:パーティクル重み[WpID]=0.10
パーティクル3:パーティクル重み[WpID]=0.25
パーティクル4:パーティクル重み[WpID]=0.05
パーティクル5:パーティクル重み[WpID]=0.20
これらのパーティクル重みが各々設定されていた場合、
パーティクル1は、40%の確率でリサンプリングされ、パーティクル2は10%の確率でリサンプリングされる。なお、実際にはm=100〜1000といった多数であり、リサンプリングされた結果は、パーティクルの重みに応じた配分比率のパーティクルによって構成されることになる。
【0206】
この処理によって、パーティクル重み[WpID]の大きなパーティクルがより多く残存することになる。なお、リサンプリング後もパーティクルの総数[m]は変更されない。また、リサンプリング後は、各パーティクルの重み[WpID]はリセットされ、新たなイベントの入力に応じてステップS211から処理が繰り返される。
【0207】
次に、ステップS216において、音声・画像統合処理部131はパーティクルの更新処理を実行する。リサンプリングされた各パーティクル各々について、イベント発生源のターゲットデータを、観測値(イベント情報)を用いて更新する。
【0208】
各ターゲットは、先に図12を参照して説明したように、以下のターゲットデータを有している。
(1)ターゲットの存在確率を推定するための、ターゲット存在仮説情報[c{0,1}]
(2)ターゲットの存在位置の確率分布[ガウス分布:N(m,σ)]、
(3)ターゲットが誰であるかを示すユーザ確信度情報(uID)
これらのデータによって構成される。
【0209】
ステップS215におけるターゲットデータの更新は、これら(1)〜(3)の各データの(2),(3)のデータについて実行する。(1)ターゲット存在仮説情報[c{0,1}]は、イベントの取得時にステップS212において新たに設定するため、ステップS216では更新を行わない。
【0210】
(2)ターゲットの存在位置の確率分布[ガウス分布:N(m,σ)]の更新処理は、上述した[(1)イベント情報入力に基づく仮説更新によるユーザ位置およびユーザ識別処理]の処理と同様の処理として実行する。すなわち、
(p)全パーティクルの全ターゲットを対象とする更新処理、
(q)各パーティクルに設定されたイベント発生源仮説ターゲットを対象とした更新処理、
これらの2段階の更新処理として実行する。
【0211】
(p)全パーティクルの全ターゲットを対象とする更新処理は、イベント発生源仮説ターゲットとして選択されたターゲットおよびその他のターゲットのすべてを対象として実行する。この処理は、時間経過に伴うユーザ位置の分散が拡大するという仮定に基づいて実行され、前回の更新処理からの経過時間とイベントの位置情報によってカルマン・フィルタ(Kalman Filter)を用い更新される。
【0212】
以下、位置情報が1次元の場合の更新処理例について説明する。まず、前回の更新処理時間からの経過時間[dt]とし、全ターゲットについての、dt後のユーザ位置の予測分布を計算する。すなわち、ユーザ位置の分布情報としてのガウス分布:N(m,σ)の期待値(平均):[m]、分散[σ]について、以下の更新を行う。
=m+xc×dt
σ=σ+σc×dt
なお、
:予測期待値(predicted state)
σ:予測共分散(predicted estimate covariance)
xc:移動情報(control model)
σc:ノイズ(process noise)
である。
なお、ユーザが移動しない条件の下で処理する場合は、xc=0として更新処理を行うことができる。
上記の算出処理により、全ターゲットに含まれるユーザ位置情報としてのガウス分布:N(m,σ)を更新する。
【0213】
さらに、(q)各パーティクルに1つ設定されているイベント発生源の仮説となったターゲットに関しては、音声イベント検出部122や画像イベント検出部112から入力するイベント情報に含まれるユーザ位置を示すガウス分布:N(m,σ)を用いた更新処理を実行する。
K:カルマンゲイン(Kalman Gain)
:入力イベント情報:N(m,σ)に含まれる観測値(Observed state)
σ:入力イベント情報:N(m,σ)に含まれる観測値(Observed covariance)
として、以下の更新処理を行う。
K=σ/(σ+σ
=m+K(xc−m
σ=(1−K)σ
【0214】
次に、ターゲットデータの更新処理として実行する(3)ユーザ確信度の更新処理について説明する。このユーザ確信度の更新処理は、上述した[(1)イベント情報入力に基づく仮説更新によるユーザ位置およびユーザ識別処理]と同様の処理を実行してもよいが、以下に説明する排他的ユーザ推定法を適用する構成としてもよい。なお、排他的ユーザ推定法は、本出願人が、先に出願した特願2008−177609において開示した構成に対応する。
【0215】
<排他的ユーザ推定法を適用した処理について>
特願2008−177609において開示した排他的ユーザ推定法の概要について、図15〜図18を参照して説明する。
【0216】
上述した[(1)イベント情報入力に基づく仮説更新によるユーザ位置およびユーザ識別処理]において説明した処理では、各パーティクルに設定されたターゲットの更新に際して、ターゲット間の独立性を保持した更新を実行していた。すなわち、1つのターゲットデータの更新と、他のターゲットデータとの更新に関連性を持たせることなく、個々のターゲットデータを独立に更新していた。このような処理を行うと実際には起こりえない事象についても排除せずに更新が実行されてしまう。
【0217】
具体的には、異なるターゲットが同一のユーザであると推定したターゲット更新がなされる場合があり、同一人物が複数存在するといった事象について推定処理の過程で排除するといった処理は行なわれていない。
【0218】
特願2008−177609において開示した排他的ユーザ推定法は、ターゲット間の独立性を排除して精度の高い解析を行う処理である。すなわち、複数のチャネル(モダリティ、モーダル)からなる不確実で非同期な位置情報、識別情報を確率的に統合して、複数のターゲットが、それぞれどこにいて、それらは誰かを推定する際、ターゲット間の独立性を排除して全ターゲットに関するユーザID(UserID)の同時生起確率(Joint Probability)を扱うことにより、ユーザ同定の推定性能を向上させている。
【0219】
上述した[(1)イベント情報入力に基づく仮説更新によるユーザ位置およびユーザ識別処理]において説明したターゲット情報{位置(Position),ユーザID(UserID)}の生成処理として行われるターゲット位置およびユーザ推定処理を定式化すると、以下の式(式1)における確率[P]を推定するシステムであると言える。
【0220】
P(X,θ|z,Xt−1)・・・・・(式1)
なお、P(a|b)は、入力bが得られたとき、状態aが発生する確率を示す。
上記式に含まれるパラメータは以下のパラメータである。
t:時刻
={x,x,…xθ,・・・,x}:時刻tでのn人分のターゲット情報
ただし、x={x,x}:ターゲット情報{位置(Position),ユーザID(UserID)}
={zp,zu):時刻tでの観測値{位置(Position),ユーザID(UserID)}
θ:時刻tの観測値zがターゲット[θ]のターゲット情報xθの発生源である状態(θ=1〜n)
【0221】
なお、z={zp,zu)は、時刻tでの観測値{位置(Position),ユーザID(UserID)}であり、上述した説明[(1)イベント情報入力に基づく仮説更新によるユーザ位置およびユーザ識別処理]におけるイベント情報に対応する。
すなわち、
zpは、イベント情報に含まれるユーザ位置情報(position)、例えば図8(1)(a)に示すガウス分布からなるユーザ位置情報に対応する。
zuは、イベント情報に含まれるユーザ識別情報(UserID)、例えば図8(1)(b)に示す各ユーザ1〜kの確信度の値(スコア)として示されるユーザ識別情報に対応する。
【0222】
上記(式1)によって示される確率P、すなわち、
P=(X,θ|z,Xt−1
上記式は、右側に示す2つの入力、
(入力1)時刻tの観測値[z]と、
(入力2)直前の観測時刻t−1におけるターゲット情報[Xt−1]、
これらが得られたとき、
左側に示す2つの状態、すなわち、
(状態1)時刻tにおける観測値[z]が、ターゲット情報[xθ](θ=1〜n)の発生源である状態[θ]、
(状態2)時刻tにおけるターゲット情報の発生状態[X]={xp,xu}、
これらの状態の発生する確率値を示す式である。
【0223】
上述した[(1)イベント情報入力に基づく仮説更新によるユーザ位置およびユーザ識別処理]において説明したターゲット情報{位置(Position),ユーザID(UserID)}の生成処理として行われるターゲット位置およびユーザ推定処理は、上記式(式1)における確率[P]を推定するシステムであると言える。
【0224】
今、上記確率算出式(式1)をθで因数分解(Factorize)すると、以下のように変換できる。
P(X,θ|z,Xt−1)=P(X|θ,z,Xt−1)×P(θ|z,Xt−1
【0225】
ここで、因数分解(Factorize)の結果に含まれる前半の式と後半の式をそれぞれ(式2)、(式3)とおく。すなわち、
P(X|θ,z,Xt−1)・・・(式2)
P(θ|z,Xt−1)・・・(式3)
とする。
(式1)=(式2)×(式3)
である。
【0226】
上記式(式3)、すなわち、
P(θ|z,Xt−1
この式は、入力として、
(入力1)時刻tの観測値[z]、
(入力2)直前観測時刻[t−1]のターゲット情報[X-1]、
これらの入力が得られたとき、
(状態1)観測値[z]の発生源が[xθ]である状態[θ]、
上記状態の発生する確率を算出する式である。
【0227】
上述の[(1)イベント情報入力に基づく仮説更新によるユーザ位置およびユーザ識別処理]においては、この確率[θ]を、パーティクル・フィルタを用いた処理によって推定している。
具体的には例えば[Rao−Blackwellised Particle Filter]を適用した推定処理を行っている。
【0228】
一方、上記式(式2)、すなわち、
P(X|θ,z,Xt−1
この式(式2)は、
入力として、
(入力1)時刻tの観測値[z]、
(入力2)直前観測時刻[t−1]のターゲット情報[Xt−1]、
(入力3)観測値[z]の発生源が[xθ]である確率[θ]、
これらの入力が得られたとき、
(状態)時刻tにおいてターゲット情報[X]が得られる状態、
この状態の発生する確率を表している。
【0229】
上記式(式2)、すなわち、
P(X|θ,z,Xt−1
この式(式2)の状態発生確率を推定するために、
まず、推定する状態値として示されるターゲット情報[X]を、
位置情報に対応するターゲット情報[Xp]と、
ユーザ識別情報に対応するターゲット情報[Xu]、
これらの2つの状態値に展開する。
【0230】
この展開処理によって、上記式(式2)は以下のように表現される。
P(X|θ,z,Xt−1
=P(Xp,Xu|θ,zp,zu,Xpt−1,Xut−1
上記式において、
zp:時刻tの観測値[z]に含まれるターゲット位置情報、
zu:時刻tの観測値[z]に含まれるユーザ識別情報、
である。
【0231】
さらに、ターゲット位置情報に対応するターゲット情報[Xp]とユーザ識別情報に対応するターゲット情報[Xu]は独立と仮定すると上記の(式2)の展開式は、さらに以下のように2つの式の乗算式として示すことができる。
P(X|θ,z,Xt−1
=P(Xp,Xu|θ,zp,zu,Xpt−1,Xut−1
=P(Xp|θ,zp,Xpt−1)×P(Xu|θ,zu,Xut−1
【0232】
ここで、上記乗算式に含まれる前半の式と後半の式をそれぞれ(式4)、(式5)とおく。すなわち、
P(Xp|θ,zp,Xpt−1)・・・(式4)
P(Xu|θ,zu,Xut−1)・・・(式5)
とする。すなわち、
(式2)=(式4)×(式5)
である。
【0233】
上記式(式4)、すなわち、
P(Xp|θ,zp,Xpt−1
この式に含まれる位置(position)情報に対応する観測値[zp]によって、更新されるターゲット情報は、特定のターゲット(θ)の位置に関するターゲット情報[xpθ]のみである。
【0234】
ここで、ターゲットθ=1〜n各々に対応する位置に関するターゲット情報[xpθ]:xp,xp,・・・,xpは互いに独立とすると、
上記式(式4)、すなわち、
P(Xp|θ,zp,Xpt−1
この式は、以下のように展開することができる。
【0235】
P(Xp|θ,zp,Xpt−1
=P(xp,xp,…xp|θ,zp,xpt−1,xpt−1,…,xpt−1
=P(xp|xpt−1)P(xp|xpt−1)…P(xpθ|zp,xpt−1θ)…P(xp|xpt−1
【0236】
このように式(式4)は、各ターゲット(θ=1〜n)個別の確率値の乗算式として展開することができ、特定のターゲット(θ)の位置に関するターゲット情報[xpθ]のみが、観測値[zp]による更新の影響を受けることになる。
【0237】
なお、上述した[(1)イベント情報入力に基づく仮説更新によるユーザ位置およびユーザ識別処理]において説明した処理では、カルマンフィルタ(Kalman Filter)を適用してこの(式4)に対応する値を推定している。
【0238】
ただし、上述した[(1)イベント情報入力に基づく仮説更新によるユーザ位置およびユーザ識別処理]における処理において、各パーティクルに設定したターゲットデータに含まれるユーザ位置の更新は、
(a1)全パーティクルの全ターゲットを対象とする更新処理、
(a2)各パーティクルに設定されたイベント発生源仮説ターゲットを対象とした更新処理、
これらの2段階の更新処理として実行している。
【0239】
(a1)全パーティクルの全ターゲットを対象とする更新処理は、イベント発生源仮説ターゲットとして選択されたターゲットおよびその他のターゲットのすべてを対象として実行している。この処理は、時間経過に伴うユーザ位置の分散が拡大するという仮定に基づいて実行され、前回の更新処理からの経過時間とイベントの位置情報によってカルマン・フィルタ(Kalman Filter)を用い更新していた。
【0240】
すなわち、式として示すと、
P(xp|xpt−1
この確率算出処理を適用し、この確率算出処理に運動モデルのみ(時間減衰)のカルマンフィルタ[Kalman Filter]による推定処理を適用した。
【0241】
また、(a2)各パーティクルに設定されたイベント発生源仮説ターゲットを対象とした更新処理としては、音声イベント検出部122や画像イベント検出部112から入力するイベント情報に含まれるユーザ位置情報:zp(ガウス分布:N(m,σ))を用いた更新処理を実行していた。
【0242】
すなわち、式として示すと、
P(xp|zp,xpt−1
この確率算出処理を適用し、この確率算出処理に、運動モデル+観測モデルのカルマンフィルタ(Kalman Filter)による推定処理を適用した。
【0243】
次に、上記の(式2)を展開して得られたユーザ識別情報(UserID)に対応する式(式5)について解析する。すなわち、
P(Xu|θ,zu,Xut−1)・・・(式5)
上記式である。
【0244】
この式(式5)においても、ユーザ識別情報(UserID)に対応する観測値[zu]によって更新されるターゲット情報は、特定のターゲット(θ)のユーザ識別情報に関するターゲット情報[xuθ]のみである。
【0245】
ここで、ターゲットθ=1〜n各々に対応するユーザ識別情報に関するターゲット情報[xuθ]:xu,xu,・・・,xuは互いに独立とすると、
上記式(式5)、すなわち、
P(Xu|θ,zu,Xut−1
この式は、以下のように展開することができる。
P(Xu|θ,zu,Xut−1
=P(xu,xu,…,xu|θ,zu,xut−1,xut−1,…,xut−1
=P(xu|xut−1)P(xu|xut−1)…P(xuθ|zu,xut−1θ)…P(xu|xut−1
【0246】
このように式(式5)は、各ターゲット(θ=1〜n)個別の確率値の乗算式として展開することができ、特定のターゲット(θ)のユーザ識別情報に関するターゲット情報[xuθ]のみが、観測値[zu]による更新の影響を受けることになる。
【0247】
なお、上述した[(1)イベント情報入力に基づく仮説更新によるユーザ位置およびユーザ識別処理]で説明した処理でのユーザ識別情報に基づくターゲットの更新処理は以下のように行っている。
各パーティクルに設定されたターゲットには各ターゲットが誰であるかを示すユーザ確信度情報(uID)として各ユーザ1〜kである確立値(スコア):Pt[i](i=1〜k)が含まれている。
【0248】
イベント情報に含まれるユーザ識別情報によるターゲットの更新においては、観測値がない限り変わらない設定とした。式で示すと、
P(xu|xut−1
この確率は、観測値がない限り変わらない設定とした。
【0249】
各パーティクルに含まれるターゲットのユーザ確信度情報(uID):Pt[i](i=1〜k)についての更新は、登録ユーザ全員分の事後確率と、音声イベント検出部122や画像イベント検出部112から入力するイベント情報に含まれるユーザ確信度情報(uID):Pe[i](i=1〜k)によって、予め設定した0〜1の範囲の値を持つ更新率[β]を適用して更新する。
【0250】
ターゲットのユーザ確信度情報(uID):Pt[i](i=1〜k)についての更新は、以下の式によって実行する。
Pt[i]=(1−β)×Pt[i]+β*Pe[i]
ただし、
i=1〜k
β:0〜1
である。なお、更新率[β]は、0〜1の範囲の値であり予め設定する。
【0251】
この処理は、確率算出式として示すと、以下のように示すことができる。すなわち、
P(xu|zu,xut−1
上記算出式によって表すことができる。
【0252】
上述した[(1)イベント情報入力に基づく仮説更新によるユーザ位置およびユーザ識別処理]で説明したユーザ識別情報に基づくターゲットの更新処理は、上記の(式2)を展開して得られたユーザ識別情報(UserID)に対応する式(式5)、すなわち、
P(Xu|θ,zu,Xut−1)・・・(式5)
この式(式5)の確率Pの推定処理を実行することに相当する。しかし、上記の[(1)イベント情報入力に基づく仮説更新によるユーザ位置およびユーザ識別処理]では、ターゲット間でユーザ識別情報(UserID)の独立性を保持した処理が行われていた。
【0253】
従って、例えば、複数の異なるターゲットであっても同一のユーザ識別子(uID:UserID)が最も確からしいユーザ識別子であるという判断がなされ、その判断に基づく更新が実行されてしまうこともあった。すなわち、パーティクルに設定した複数の異なるターゲットが、いずれも同一のユーザに対応するというような実際上は発生することのない推定処理による更新がなされることがあった。
【0254】
また、ターゲット間でユーザ識別子(uID:UserID)の独立性を仮定した処理を行っていたため、ユーザ識別情報に対応する観測値[zu]で更新されるターゲット情報は、特定のターゲット(θ)のターゲット情報[xuθ]のみとなる。従って、全ターゲットでユーザ識別情報(uID:UserID)を更新するためには、全ターゲットに対する観測値[zu]が必要であった。
【0255】
このように、上述した[(1)イベント情報入力に基づく仮説更新によるユーザ位置およびユーザ識別処理]においては、ターゲット間の独立性を保持した解析処理を行っていた。従って、実際には起こりえない事象についても排除することなく推定処理が実行され、ターゲット更新の無駄が発生し、ユーザ識別における推定処理の効率および精度の低下を発生させることがあった。
【0256】
このような問題を解決するため、ターゲット間の独立性を排除し、複数のターゲットデータ間に関連性を持たせて、1つの観測データに基づいて複数のターゲットデータの更新処理を実行する。このような処理を行うことで実際には起こりえない事象を排除した更新を行うことが可能となり、精度の高い効率的な解析が実現される。
【0257】
本発明の情報処理装置では、図2に示す構成における音声・画像統合処理部131は、イベントの発生源であるターゲットに対応するユーザがどのユーザであるかを示すユーザ確信度情報を含むターゲットデータを、イベント情報に含まれるユーザ識別情報に基づいて更新する処理を実行する。この処理に際して、各ターゲットと各ユーザとを対応づけた候補データの同時生起確率(Joint Probability)を、イベント情報に含まれるユーザ識別情報に基づいて更新し、更新された同時生起確率の値を適用してターゲット対応のユーザ確信度を算出する処理を実行する。
【0258】
ターゲット間の独立性を排除して全ターゲットに関するユーザ識別情報(UserID)の同時生起確率(Joint Probability)を扱うことにより、ユーザ同定の推定性能を向上させることが可能となる。
【0259】
音声・画像統合処理部131では、上述した式(式5)、すなわち、
P(Xu|θ,zu,Xut−1)・・・(式5)
上記式を適用して、ユーザ識別情報に対応するターゲット情報[Xu]の独立性を排除した処理を行う。式(式5)において、ユーザ識別情報(UserID)に対応する観測値[zu]によって更新されるターゲット情報は、特定のターゲット(θ)のユーザ識別情報に関するターゲット情報[xuθ]のみである。
【0260】
この式(式5)は、以下のように展開することができる。
P(Xu|θ,zu,Xut−1
=P(xu,xu,…,xu|θ,zu,xut−1,xut−1,…,xut−1
【0261】
ここで、ユーザ識別情報に対応するターゲット情報[Xu]のターゲット間での独立性を仮定しないターゲット更新処理を行う。すなわち、複数の事象がいずれも発生する確率である同時生起確率(Joint Probability)を考慮した処理を行う。この処理のためにベイズの定理を利用する。
ベイズの定理によれば、
P(x):事象xが発生する確率(事前確率)
P(x|z):事象zが発生した後、事象xが発生する確率(事後確率)
としたとき、
P(x|z)=(P(z|x)P(x))/P(z)
上記式が成立する。
【0262】
このベイズの定理
P(x|z)=(P(z|x)P(x))/P(z)
を用いて、先に説明したユーザ識別情報(UserID)に対応する式(式5)、すなわち、
P(Xu|θ,zu,Xut−1)・・・(式5)
上記式を展開する。
【0263】
展開結果を以下に示す。
P(Xu|θ,zu,Xut−1
=P(θ,zu,Xut−1|Xu)P(Xu)/P(θ,zu,Xut−1)・・・(式6)
【0264】
上記式(式6)において、
θ:時刻tの観測値zがターゲット[θ]のターゲット情報xθの発生源である状態(θ=1〜n)
zu:時刻tにおける時刻tの観測値[z]に含まれるユーザ識別情報
これらの「θ,zu」は、ユーザ識別情報に対応する時刻tのターゲット情報[Xu]のみに依存する(Xut−1には依存しない)とすると、上記式(式6)はさらに以下のように展開できる。
P(Xu|θ,zu,Xut−1
=P(θ,zu,Xut−1|Xu)P(Xu)/P(θ,zu,Xut−1
=P(θ,zu|Xu)P(Xut−1|Xu)P(Xu)/P(θ,zu)P(Xut−1)・・・(式7)
【0265】
上記式(式7)を計算することにより、ユーザ同定の推定、すなわちユーザ識別処理を行う。
なお、ある1つのターゲットiについてのユーザ確信度(uID)、すなわち、xu(UserID)の確率を求めたいときは、同時生起確率(Joint Probability)においてそのターゲットがそのユーザ識別子(UserID)である確率をマージ(Marginalize)して求める。例えば以下の式を適用して算出する。
P(xu)=ΣXu=xuiP(Xu)
【0266】
ユーザ識別情報(UserID)に対応する式(式5)、すなわち、
P(Xu|θ,zu,Xut−1)・・・(式5)
これをベイズの定理を用いて展開して、
P(Xu|θ,zu,Xut−1
=P(θ,zu|Xu)P(Xut−1|Xu)P(Xu)/P(θ,zu)P(Xut−1)・・・(式7)
この式(式7)が得られる。
【0267】
この式(式7)において、P(θ,zu)のみを一様と仮定する。
すると式(式5)、(式7)は、以下のように表すことができる。
P(Xu|θ,zu,Xut−1)・・・(式5)
=P(θ,zu|Xu)P(Xut−1|Xu)P(Xu)/P(θ,zu)P(Xut−1)・・・(式7)
〜P(θ,zu|Xu)P(Xut−1|Xu)P(Xu)/P(Xut−1
なお、[〜]は比例を表す。
【0268】
従って、式(式5)、(式7)は、以下のような式(式8)として示すことができる。
P(Xu|θ,zu,Xut−1)・・・(式5)
=R×P(θ,zu|Xu)P(Xut−1|Xu)P(Xu)/P(Xut−1)・・・(式8)
となる。
ただし、Rは正規化項(Regularization term)とする。
【0269】
さらに式(式8)において、「複数ターゲットに同一のユーザ識別子(UserID)は割り振られない」という制約を事前確率P(Xu)、P(Xut−1)を用いて以下のように表現する。
制約1:P(Xu)=P(xu,xu,…,xu)において、1つでも重なるxu(ユーザ識別子(UserID))が存在する場合は、
P(Xu)=P(Xut−1)=NG(P=0.0)、
それ以外は、
P(Xu)=P(Xut−1)=OK(0.0<P≦1.0)
このような確率を設定する。
【0270】
図15にターゲット数n=3(0〜2)、登録ユーザ数k=3(0〜2)の場合、上記制約に従った初期状態設定例を示す。
3つのターゲットID(tID=0,1,2)に対応するユーザID(uID=0〜2)の候補は、図15に示すように、
tID0,1,2=(0,0,0)〜(2,2,2)
これらの27通りの候補データがある。
これらの27通りの候補データ各々について、全てのターゲットID(2,1,0)に対する全てのユーザID(0〜2)を対応付けたユーザ確信度として、同時生起確率(Joint Probability)を示している。
【0271】
図15に示す例では、P(Xu)=P(xu,xu,…,xu)において、1つでも重なるxu(ユーザ識別子(UserID))が存在する場合は、同時生起確率:P=0(NG)として設定され、P=0(NG)以外のP=OKとして記載された候補に対して、同時生起確率:Pに0より大きい確率値(0.0<P≦1.0)が設定される。
【0272】
このように、音声・画像統合処理部131は、複数ターゲットに同一のユーザ識別子(UserID)は割り振られないという制約に基づいて、各ターゲットと各ユーザとを対応づけた候補データの同時生起確率(Joint Probability)の初期設定を行なう。
異なるターゲットに同一のユーザ識別子(UserID)が設定された候補データの同時生起確率P(Xu)の確率値は、
P(Xu)=0.0、
それ以外のターゲットデータの確率値は、
P(Xu)=0.0<P≦1.0
とする確率値の初期設定を行う。
【0273】
図16、図17は、「複数ターゲットに同一のユーザ識別子(UserID)は割り振られない」という制約を適用して、ターゲット間の独立性を排除した本発明に従った解析処理例を説明する図である。
【0274】
なお、図16、図17の処理例は、ターゲット間の独立性を排除した処理例であり、先に説明したユーザ識別情報(UserID)に対応する式(式5)に基づいて生成した式(式8)、すなわち、
P(Xu|θ,zu,Xut−1)・・・(式5)
=R×P(θ,zu|Xu)P(Xut−1|Xu)P(Xu)/P(Xut−1)・・・(式8)
上記式を適用し、さらに、複数の異なるターゲットに同一のユーザ識別情報であるユーザ識別子(UserID)を割り振らないという制約で処理を行っている。
【0275】
すなわち、上記式(式8)において、
P(Xu)=P(xu,xu,…,xu)において、1つでも重なるxu(ユーザ識別子(UserID))が存在する場合は、
P(Xu)=P(Xut−1)=NG(P=0.0)、
それ以外は、
P(Xu)=P(Xut−1)=OK(0.0<P≦1.0)
このような確率を設定した処理を行なっている。
【0276】
上記式(式8)は、
P(Xu|θ,zu,Xut−1)・・・(式5)
=R×P(θ,zu|Xu)P(Xut−1|Xu)P(Xu)/P(Xut−1)・・・(式8)
=R×[事前確率P]×[状態遷移確率P]×(P(Xu)/P(Xut−1))
として表現される。
ただし、
[事前確率P]=P(θ,zu|Xu
[状態遷移確率P]=P(Xut−1|Xu
である。
【0277】
図16、図17の処理例は、
P(Xu)=P(xu,xu,…,xu)において、1つでも重なるxu(ユーザ識別子(UserID))が存在する場合はP=0(NG)とした設定とし他処理例である。
【0278】
すなわち、
上記の式(式8)に含まれる[事前確率P]
P(θ,zu|Xu
=P(θ,zu|xu,xu,…,xuθ,…,xu
上記式において、観測値の事前確率Pを、
xuθ=zu、このときの事前確率:P=A=0.8、
上記以外の場合の事前確率:P=B=0.2、
この確率設定とした。
【0279】
さらに、上記の式(式8)に含まれる[状態遷移確率P]
P(Xut−1|Xu
上記式において、
時刻t,t−1において、全ターゲットに関してユーザ識別子(UserID)の変化がない場合の状態遷移確率P=C=1.0、
上記以外の場合の状態遷移確率P=D=0.0、
この確率設定とした。
【0280】
図16、図17は、このような条件設定の下、2つの観測時間において、
「θ=0,zu=0」、
「θ=1,zu=1」
これらの観測情報が順に観測された場合の、ターゲットID(2,1,0)に対するユーザID(0〜2)の確率値、すなわちユーザ確信度(uID)の遷移例を示した図である。ユーザ確信度は、全てのターゲットID(2,1,0)に対する全てのユーザID(0〜2)を対応付けたデータについての同時生起確率(Joint Probability)として算出している。
【0281】
なお、「θ=0,zu=0」は、ターゲット(θ=0)から、ユーザ識別子(UID=0)に対応する観測情報[zu]が観測されたことを示す。
「θ=1,zu=1」は、ターゲット(θ=1)から、ユーザ識別子(UID=1)に対応する観測情報[zu]が観測されたことを示す。
【0282】
3つのターゲットID(tID=0,1,2)に対応するユーザID(uID=0〜2)の候補は、図16に示す(a)初期状態の欄に示しているように、
tID0,1,2=(0,0,0)〜(2,2,2)
これらの27通りである。
これらの27通りの候補データ各々について、全てのターゲットID(2,1,0)に対する全てのユーザID(0〜2)を対応付けたユーザ確信度として、同時生起確率(Joint Probability)を算出している。確率(ユーザ確信度)は、先の図13(a)初期状態と異なり、1つでも重なるxu(ユーザ識別子(UserID))が存在する場合はP=0、その他の候補に均等な確率、図に示す例では、
P=0.166667
この確率値が設定される。
【0283】
図16に示す(b)は、
「θ=0,zu=0」
この観測情報が観測された場合の、同時生起確率(Joint Probability)として算出されるユーザ確信度(全てのターゲットID(2,1,0)に対して対応付けられた全てのユーザID(0〜2)の確信度)の変化を示している。
観測情報「θ=0,zu=0」は、
ターゲットID=0からの観測情報がユーザID=0のものであるという観測情報である。
この観測情報に基づいて、27個の候補から、初期状態でP=0(NG)の設定された候補以外で、
tID=0にユーザID=0の設定された候補データの確率P(同時生起確率(Joint Probability))が高められ、その他の確率Pが低下させられる。
【0284】
初期状態で、
P=0.166667
この確率が設定された候補中、
tID=0にユーザID=0
の設定された候補の確率Pが高められて、P=0.333333に設定され、
その他の確率Pが低下させられて、P=0.0083333に設定される。
【0285】
さらに、図16に示す(c)は、
「θ=1,zu=1」
この観測情報が観測された場合の、同時生起確率(Joint Probability)として算出されるユーザ確信度(全てのターゲットID(2,1,0)に対して対応付けられた全てのユーザID(0〜2)の確信度)の変化を示している。
観測情報「θ=1,zu=1」は、
ターゲットID=1からの観測情報がユーザID=1のものであるという観測情報である。
この観測情報に基づいて、27個の候補から、初期状態でP=0(NG)の設定された候補以外で、
tID=1にユーザID=1の設定された候補データの確率P(同時生起確率(Joint Probability))が高められ、その他の確率Pが低下させられる。
【0286】
図16(c)に示すように、結果として、
4種類の確率値に分類される。
最も確率の高い候補は、
初期状態でP=0(NG)の設定されておらず、tID=0にユーザID=0が設定、かつ、tID=1にユーザID=1が設定された候補であり、これらの候補の同時生起確率:P=0.592593となる。
次に確率の高い候補は、
初期状態でP=0(NG)の設定されておらず、tID=0にユーザID=0が設定、または、tID=1にユーザID=1の設定、いずれか一方の条件のみが満足されている候補であり、これらの候補は確率P=0.148148となる。
次に確率の高い候補は、
初期状態でP=0(NG)の設定されていない候補であり、tID=0にユーザID=0が設定されてなく、かつ、tID=1にユーザID=1が設定されていない候補であり、これらの候補は確率P=0.037037となる。
最も確率の低い候補は、
初期状態でP=0(NG)の設定されている候補であり、これらの候補は確率P=0.0となる。
【0287】
図17は、図16に示す処理によって得られるマージ(Marginalize)結果である。
図17(a)〜(c)は図16(a)〜(c)に対応している。
すなわち、(a)初期状態から2つの観測情報に基づいて順次、更新した結果(b),(c)に対応しており、図17に示すデータは、
tID=0がuID=0である確率P
tID=0がuID=1である確率P

tID=2がuID=1である確率P
tID=2がuID=3である確率P
これらを図16に示す結果から算出したものである。図17の確率は、図16の27個から該当するデータの確率値を加算、すなわちマージ(Marginalize)することにより求める。例えば以下の式を適用して算出する。
P(xu)=ΣXu=xuiP(Xu)
【0288】
図17(a)に示すように、初期状態では、
tID=0がuID=0である確率P
tID=0がuID=1である確率P

tID=2がuID=1である確率P
tID=2がuID=3である確率P
これらは、すべて一律であり、P=0.333333
である。
図17(a)の下部に示すグラフは、この確率をグラフ化したデータである。
【0289】
図17(b)は、
「θ=0,zu=0」
この観測情報が観測された場合の更新結果であり、
tID=0がuID=0である確率P〜tID=2がuID=3である確率P
これらの確率を示している。
tID=0がuID=0である確率のみが高く設定され、この影響により、
tID=0がuID=1である確率P
tID=0がuID=2である確率P
この2つの確率が低下している。
【0290】
さらに、本処理例では、
tID=1について、
uID=0である確率が低下、
uID=1である確率が上昇、
uID=2である確率が上昇、
tID=2について、
uID=0である確率が低下、
uID=1である確率が上昇、
uID=2である確率が上昇、
このように、観測情報「θ=0,zu=0」を取得したと想定されるターゲット(tID=0)と異なるターゲット(tID=1,2)の確率(ユーザ確信度)も変化している。
【0291】
図16、図17に示す処理は、各ターゲットの独立性を排除した処理例である。すなわち、ある1つの観測データが1つのターゲット対応のデータのみならず、その他のターゲットのデータに対して影響を及ぼす。
【0292】
図16、図17の処理では、前述した式(式8)すなわち、
P(Xu|θ,zu,Xut−1)・・・(式5)
=R×P(θ,zu|Xu)P(Xut−1|Xu)P(Xu)/P(Xut−1)・・・(式8)
上記式に、以下の制約1、すなわち、
制約1:P(Xu)=P(xu,xu,…,xu)において、1つでも重なるxu(ユーザ識別子(UserID))が存在する場合は、
P(Xu)=P(Xut−1)=NG(P=0.0)、
それ以外は、
P(Xu)=P(Xut−1)=OK(0.0<P≦1.0)
このような確率を設定した処理例である。
【0293】
この処理の結果、図17(b)に示すように、観測情報「θ=0,zu=0」を取得したと想定されるターゲット(tID=0)と異なるターゲット(tID=2,3)の確率(ユーザ確信度)も変化することになり、各ターゲットがどのユーザに対応するかを示す確率(ユーザ確信度)が高精度にかつ効率的に更新されることになる。
【0294】
図17(c)は、
「θ=1,zu=1」
この観測情報が観測された場合の更新結果であり、
tID=0がuID=0である確率P〜tID=2がuID=3である確率P
これらの確率を示している。
tID=1がuID=1である確率を高くする更新がなされ、この影響により、
tID=1がuID=0である確率P
tID=1がuID=2である確率P
この2つの確率が低下する。
【0295】
さらに、本処理例では、
tID=0について、
uID=0である確率が上昇、
uID=1である確率が低下、
uID=2である確率が上昇、
tID=2について、
uID=0である確率が上昇、
uID=1である確率が低下、
uID=2である確率が上昇、
このように、観測情報「θ=1,zu=1」を取得したと想定されるターゲット(tID=1)と異なるターゲット(tID=0,2)の確率(ユーザ確信度)も変化している。
【0296】
なお、図15〜図17を参照して説明した処理例では、制約として、
制約1:P(Xu)=P(xu,xu,…,xu)において、1つでも重なるxu(ユーザ識別子(UserID))が存在する場合は、
P(Xu)=P(Xut−1)=NG(P=0.0)、
それ以外は、
P(Xu)=P(Xut−1)=OK(0.0<P≦1.0)
このような制約を適用してすべてのターゲットデータに対する更新処理を行なったが、この制約を適用するのではなく、以下のような処理を行う構成としてもよい。
【0297】
P(Xu)=P(xu,xu,…,xu)において、1つでも重なるxu(ユーザ識別子(UserID))が存在する状態をターゲットデータから削除して、残存するターゲットデータに対してのみ処理を行う。
このような処理を行うことで、[Xu]の状態数をkから、に削減することが可能となり処理効率を高めることが可能となる。
【0298】
データ削減処理例について、図18を参照して説明する。例えば、3つのターゲットID(tID=0,1,2)に対応するユーザID(uID=0〜2)の候補は、図18の左側に示すように、
tID0,1,2=(0,0,0)〜(2,2,2)
これらの27通りであるが、これらの27のデータ[P(Xu)=P(xu,xu,xu)]において、1つでも重なるxu(ユーザ識別子(UserID))が存在する状態をターゲットデータから削除することで、図18の右側に示す0〜5の6通りのデータとなる。
【0299】
音声・画像統合処理部131は、このように異なるターゲットに同一のユーザ識別子(UserID)が設定された候補データを削除して、それ以外の候補データのみを残存させて、残存する候補データのみをイベント情報に基づく更新対象とした処理を行う構成としてもよい。
【0300】
この6個のデータのみを更新対象として処理を行っても図16、図17を参照して説明したと同様の結果が得られることになる。
以上、図15〜図18を参照して特願2008−177609において開示した排他的ユーザ推定法の概要について説明した。
【0301】
本発明においても、この手法を適用した処理を行うことが可能である。この場合、図13のステップS216のパーティクルの更新処理として実行するターゲットデータ内の(3)ユーザ確信度の更新処理は、上記の式(式8)を適用した処理を行う。すなわち、ターゲット間の独立性を排除した処理であり、先に説明したユーザ識別情報(UserID)に対応する式(式5)に基づいて生成した式(式8)、すなわち、
P(Xu|θ,zu,Xut−1)・・・(式5)
=R×P(θ,zu|Xu)P(Xut−1|Xu)P(Xu)/P(Xut−1)・・・(式8)
上記式を適用し、さらに、複数の異なるターゲットに同一のユーザ識別情報であるユーザ識別子(UserID)を割り振らないという制約で処理を実行する。
【0302】
さらに、図15〜図18を参照して説明した同時生起確率(Joint Probability)、すなわち、全てのターゲットに対して全てのユーザIDを対応付けたデータについての同時生起確率を算出して、イベント情報として入力する観測値に基づく同時生起確率の更新を実行して、各ターゲットが誰であるかを示すユーザ確信度情報(uID)を算出する処理を行う。
【0303】
さらに、先に図17を参照して説明したように、複数の候補データの確率値を加算、すなわちマージ(Marginalize)することにより各ターゲット(tID)に対応するユーザ識別子を求める。以下の式を適用して算出する。
P(xu)=ΣXu=xuiP(Xu)
【0304】
ステップS217では、音声・画像統合処理部131は、各パーティクルに設定されたターゲットデータに基づいてターゲット情報(図11参照)を生成して処理決定部132に出力する。先に説明したように、ターゲット情報には、
(1)ターゲットの存在確率、
(2)ターゲットの存在位置、
(3)ターゲットが誰であるか(uID1〜uIDkのいずれであるか)
これらの情報が含まれる。さらに、音声・画像統合処理部131は、各ターゲット(tID=cnd,1〜n)の各々がイベントの発生源である確率を算出し、これをシグナル情報として処理決定部132に出力する。
【0305】
先に説明したように、イベント発生源を示す[シグナル情報]は、音声イベントについては、誰が話をしたか、すなわち[話者]を示すデータであり、画像イベントについては、画像に含まれる顔が誰であるかを示すデータである。
【0306】
音声・画像統合処理部131は、各パーティクルに設定されたイベント発生源の仮説ターゲットの数に基づいて、各ターゲットがイベント発生源である確率を算出する。
すなわち、ターゲット(tID=1〜n)の各々がイベント発生源である確率を[P(tID=i)とする。ただしi=1〜nである。このとき、各ターゲットがイベント発生源である確率は、以下のように算出される。
P(tID=1):tID=1を割り当てた数/m
P(tID=2):tID=2を割り当てた数/m

P(tID=n):tID=nを割り当てた数/m
音声・画像統合処理部131は、この算出処理によって、生成した情報、すなわち、各ターゲットがイベント発生源である確率を[シグナル情報]として、処理決定部132に出力する。このように、イベント発生源ターゲットの仮説の頻度を持って、イベントがどのターゲットから発生したかの確率とする。なお、イベント発生源ターゲット仮説をノイズとして設定した割合はイベントがどのターゲットから発生したものでもなくノイズである確率として処理を行う。
【0307】
ステップS217の処理が終了したら、ステップS211に戻り、音声イベント検出部122および画像イベント検出部112からのイベント情報の入力の待機状態に移行する。
【0308】
[(2−3)ターゲット生成プロセス]
次に、図13に示すフローチャート中の(b)ターゲット生成プロセスについて説明する。
【0309】
音声・画像統合処理部131は、図13(b)に示すフローチャートに従った処理を実行してパーティクルに対する新規ターゲットの設定を行う。
まず、ステップS221において、生成ターゲット候補の存在確率の計算を行う。具体的には、各パーティクルに設定したターゲット生成候補(tID=cnd)において、c=1の仮説を立てたパーティクルの頻度(割合)を生成ターゲット候補の存在確率とする。
【0310】
これは、図12に示すターゲット情報に含まれる情報である。すなわち、
(1)tID=cndが存在する確率 P(c=1):c=1を割り当てた数/m
この情報が用いられる。
音声・画像統合処理部131は、ステップS221において、ターゲット生成候補(tID=cnd)が存在する確率P(c=1)を
P=(c=1を割り当てた数/m)
として算出する。
【0311】
次に、ステップS222において、ステップS221で算出したターゲット生成候補(tID=cnd)存在確率Pと、予め保持している閾値とを比較する。
すなわち、ターゲット生成候補(tID=cnd)の存在確率Pと、閾値(例えば0.8)を比較し、存在確率Pが閾値より大きい場合は、ターゲット生成候補(tID=cnd)が存在すると判定してステップS223の処理を行う。存在確率Pが閾値以下の場合は、ターゲット生成候補(tID=cnd)は存在しないと判定し、ステップS223の処理を行うことなく処理を停止する。その後、例えば一定期間後にステップS221からの処理を再開する。
【0312】
ステップS222において、存在確率Pが閾値より大きいと判定した場合は、ステップS223において、各パーティクルに設定済みのターゲット生成候補(tID=cnd)を、新規ターゲットn+1(tiD=n+1)として設定するターゲット追加処理を行ない、さらに、新たなターゲット生成候補(tID=cnd)を追加する処理を行う。新たなターゲット生成候補(tID=cnd)は初期状態とする。
【0313】
新規ターゲットn+1(tiD=n+1)のターゲットデータは、それまでの古いターゲット生成候補(tID=cnd)の持つターゲットデータをそのまま設定する。
【0314】
新たなターゲット生成候補(tID=cnd)の位置分布(ターゲットの存在位置の確率分布[ガウス分布])は一様分布に設定する。また、ターゲットが誰であるかを示すユーザ確信度情報(uID)については、本出願人の先の出願である特願2008−177609に開示した手法で設定する。
【0315】
具体的な処理について、図19を参照して説明する。新しくターゲットを生成する場合は、ある状態に対して新しいターゲットに関するデータを増やし、その増加データに対してユーザ分の状態を割り当て、その確率値を既存のターゲットデータに対して配分(Distribute)する。
【0316】
図19にtID=1,2の2ターゲットに対して、tID=canのターゲットを新たに生成して追加する場合の処理例を示す。
【0317】
図19の左側の列は、tID=1,2の2ターゲットに対応するuIDの候補を示すターゲットデータ(0,0)〜(2,2)として9通りのデータを示している。このターゲットデータに対して、さらに、ターゲットデータを追加する。この処理によって、図19右側に示す0〜26の27通りのターゲットデータが設定される。
【0318】
このターゲットデータの増加処理における確率値の配分について説明する。例えば、tID=1,2=(0,0)から、tID=(0,0,0)、(0,0,1)、(0,0,2)の3つのデータが生成されることになる。tID=1,2=(0,0)に設定されていた確立値Pは、これらの3つのデータ[tID=(0,0,0)、(0,0,1)、(0,0,2)]に均等に配分される。
【0319】
なお、さらに、「複数ターゲットに同一UserIDは割り振られない」などの制約に従った処理を行う場合は、それに対応する事前確率や状態数の削減を行う。また、各ターゲットデータの確率の総和が[1]にならない場合、すなわち、同時生起確率(Joint Probability)の総和が[1]にならない場合は正規化処理を行って、総和を[1]に設定するように調整処理を行う。
【0320】
このように、音声・画像統合処理部131は、ターゲットを生成して追加する場合において、生成ターゲットの追加により増加した候補データに対してユーザ数分の状態を割り当て、既存の候補データに対して設定されていた同時生起確率の値を増加した候補データに対して配分(Distribute)する処理を実行して、さらに候補データ全体に設定された同時生起確率の値のトータルを1とする正規化処理を行う。
【0321】
このように、ステップS223では、過去のターゲット生成候補(tID=cnd)のUserID情報は新規ターゲットn+1(tID=n+1)にコピーし、新たなターゲット生成候補(tID=cnd)のUserID情報は初期化して設定する。
【0322】
[ターゲット削除プロセス]
次に、図13に示すフローチャート中の(c)ターゲット削除プロセスについて説明する。
【0323】
音声・画像統合処理部131は、図13(c)に示すフローチャートに従った処理を実行してパーティクルに対して設定されているターゲットの削除を行う。
【0324】
まず、ステップS231において、更新経過時間に基づくターゲットの存在の仮説生成処理を行う。すなわち、各パーティクルに設定されている各ターゲットに対して、予め設定した更新経過時間に基づくターゲットの存在の仮説生成を行う。
【0325】
具体的には、イベントで更新されない時間の長さに基づいて、ターゲット存在の仮説を確率的に存在(c=1)から不在(c=0)に変更する処理を行う。
例えば、非更新継続時間Δtに基づく存在から不在への変更確率[P]として、
P=1−exp(-a×Δt)
上記の変更確率[P]を用いる。
なお、Δtはイベントで更新されない時間、
aは係数である。
【0326】
上記式はイベントで更新されない時間(Δt)の長さが長いほど、ターゲット存在の仮説が存在(c=1)から不在(c=0)に変更されるようにした変更確率[P]の算出式を示している。
【0327】
音声・画像統合処理部131は、各ターゲットのイベントで更新されない時間の長さを計測し、計測時間に応じて、上記の変更確率[P]を適用してターゲット存在の仮説を存在(c=1)から不在(c=0)に変更する。
【0328】
ステップS232では、ターゲット生成候補(tID=cnd)を除く全ターゲット(tID=1〜n)について、存在(c=1)の仮説を立てたパーティクルの頻度(割合)を生成ターゲット候補の存在確率として算出する。なお、ターゲット生成候補(tID=cnd)は各パーティクルに常時保持する設定であるので削除対象とはしない。
【0329】
ステップS233では、ターゲット(tID=1〜n)各々について算出した存在確率について、予め設定した削除閾値と比較する。
ターゲットの存在確率が削除閾値以上の場合は、何もしない。その後、例えば一定期間後にステップS231からの処理を再開する。
各ターゲットの存在確率が削除閾値未満の場合は、ステップS234に進み、ターゲット削除処理を行う。
【0330】
ステップS234のターゲット削除処理について説明する。削除対象のターゲットのターゲットデータに含まれる位置分布(ターゲットの存在位置の確率分布[ガウス分布])データはそのデータをそのまま削除してよい。しかし、ターゲットが誰であるかを示すユーザ確信度情報(uID)については、本出願人の先の出願である特願2008−177609に開示した手法を適用した処理を行なう。
【0331】
具体的な処理について図20を参照して説明する。ある特定のターゲットを削除する場合は、そのターゲットに関する確率値をマージ(Marginalize)する。図20にtID=0,1,2の3ターゲットにおいて、tID=0のターゲットを削除する場合の例を示す。
【0332】
図20の左側の列は、tID=0,1,2の3ターゲットに対応するuIDの候補データとして0〜26の27通りのターゲットデータの設定例を示している。これらのターゲットデータから、ターゲット0を削除する場合、図20右側の列に示すように、tID=1,2の組み合わせ(0,0)〜(2,2)の9通りのデータにマージする。この場合、マージ前の27個のデータから、tID=1,2の組み合わせ(0,0)〜(2,2)の各データの組を選択して、マージ後の9通りのデータを生成する。例えば、tID=1,2=(0,0)は、tID=(0,0,0)、(1,0,0)、(2,0,0)の3つのデータのマージ処理によって生成する。
【0333】
すなわち、このターゲットデータの削除処理における確率値の配分について説明する。例えば、tID=(0,0,0)、(1,0,0)、(2,0,0)の3つのデータから、1つのtID=1,2=(0,0)が生成されることになる。tID=(0,0,0)、(1,0,0)、(2,0,0)の3つのデータに設定されていた確率値Pは、マージされてtID=1,2=(0,0)に対する確率値として設定される。
【0334】
このように、音声・画像統合処理部131は、ターゲットを削除する場合において、削除ターゲットを含む候補データに対して設定されている同時生起確率の値を、ターゲット削除後に残存する候補データにマージ(Marginalize)する処理を実行して、さらに候補データ全体に設定された同時生起確率の値のトータルを1とする正規化処理を行う。
【0335】
以上、音声・画像統合処理部131は、図13に示す3つのフロー処理、すなわち、
(a)イベントによるターゲット存在の仮説更新プロセス
(b)ターゲット生成プロセス
(c)ターゲット削除プロセス
これら3つのプロセスを独立の処理として実行する。
【0336】
なお、先に説明したように、音声・画像統合処理部131は、
(a)イベントによるターゲット存在の仮説更新プロセスは、イベント発生を契機として実行されるイベントドリブン処理として実行する。
(b)ターゲット生成プロセスは、予め設定した一定期間毎のピリオディック処理、もしくは、(a)イベントによるターゲット存在の仮説更新プロセスの処理の直後に実行する。
(c)ターゲット削除プロセスは、予め設定した一定期間毎のピリオディック処理として実行する。
【0337】
このような処理を実行することで、
イベントの誤検出によるターゲットの誤生成の低減、
イベントがノイズであることの推定、
ターゲットの生成・削除の判断をターゲットの位置分布と切り離して実行、
これらの処理が可能となり、高精度なユーザ特定処理が実現されることになる。
【0338】
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
【0339】
また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。例えば、プログラムは記録媒体に予め記録しておくことができる。記録媒体からコンピュータにインストールする他、LAN(Local Area Network)、インターネットといったネットワークを介してプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【0340】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【産業上の利用可能性】
【0341】
以上、説明したように、本発明の一実施例の構成によれば、カメラやマイクによって取得される画像情報や音声情報に基づいて実空間におけるユーザの存在と位置および識別情報を含む解析情報を生成する。仮想ユーザに対応する複数のターゲット各々について、(1)ターゲットの存在確率算出に適用するターゲット存在仮説情報、(2)ターゲットの存在位置の確率分布情報、(3)ターゲットが誰であるかを示すユーザ確信度情報を設定し、ターゲット存在仮説情報を適用して各ターゲットの存在確率を算出してターゲットの新規設定および削除を実行する構成としたので、例えば誤検出による誤生成ターゲットを削減し、高精度かつ高効率のユーザ識別処理を実行可能となる。
【符号の説明】
【0342】
11〜14 ユーザ
21 カメラ
31〜34 マイク
100 情報処理装置
111 画像入力部
112 画像イベント検出部
121 音声入力部
122 音声イベント検出部
131 音声・画像統合処理部
132 処理決定部
201〜20k ユーザ
301 ユーザ
302 画像データ
305 ターゲット情報
311 ターゲットデータ
401 イベント情報
411〜413 パーティクル
421〜423 ターゲット
501 ターゲット
502 存在確率データ

【特許請求の範囲】
【請求項1】
実空間における画像情報または音声情報のいずれかを含む情報を入力する複数の情報入力部と、
前記情報入力部からの入力情報を解析して前記実空間に存在すると推定されるユーザの位置および識別情報を含むイベント情報を生成するイベント検出部と、
前記実空間におけるユーザの存在と位置および識別情報についての仮説(Hypothesis)データを設定し、前記イベント情報に基づく前記仮説データの更新および取捨選択により、前記実空間におけるユーザの存在と位置および識別情報を含む解析情報を生成する情報統合処理部と、
を有する情報処理装置。
【請求項2】
前記情報統合処理部は、
前記イベント検出部の生成するイベント情報を入力し、仮想的なユーザに対応する複数のターゲットを設定した複数のパーティクルを適用したパーティクルフィルタリング処理を実行して前記実空間におけるユーザの存在と位置および識別情報を含む解析情報を生成する請求項1に記載の情報処理装置。
【請求項3】
前記イベント検出部は、
イベント発生源に対応するガウス分布からなるユーザ位置情報と、
イベント発生源に対応するユーザ識別情報としてのユーザ確信度情報を含むイベント情報を生成し、
前記情報統合処理部は、
仮想的なユーザに対応する複数のターゲット各々について、
(1)ターゲットの存在確率算出に適用するターゲット存在仮説情報、
(2)ターゲットの存在位置の確率分布情報、
(3)ターゲットが誰であるかを示すユーザ確信度情報、
上記(1)〜(3)をターゲットデータとして有するターゲットを複数設定した複数のパーティクルを保持し、
各パーティクルにイベント発生源に対応するターゲット仮説を設定し、各パーティクルのターゲット仮説に対応するターゲットデータと入力イベント情報との類似度であるイベント−ターゲット間尤度をパーティクル重みとして算出して、算出したパーティクル重みに応じたパーティクルのリサンプリング処理を行い、
さらに、各パーティクルのターゲット仮説に対応するターゲットデータを前記入力イベント情報に近づけるターゲットデータ更新を含むパーティクル更新処理を実行する構成である請求項1に記載の情報処理装置。
【請求項4】
前記情報統合処理部は、
前記ターゲット存在仮説としてターゲットが存在する仮説(c=1)、またはターゲットが存在しない仮説(c=0)を各ターゲットのターゲットデータとして設定し、
ターゲット存在確率[PtID(c=1)]を、前記リサンプリング処理後のパーティクルを適用して、
[PtID(c=1)]={c=1を割り当てた同一ターゲット識別子のターゲット数}/{パーティクル数}
上記式によって算出する請求項3に記載の情報処理装置。
【請求項5】
前記情報統合処理部は、
前記パーティクルの各々に、少なくとも1つのターゲット生成候補を設定し、該ターゲット生成候補についてのターゲット存在確率と、予め設定した閾値とを比較して、前記ターゲット生成候補のターゲット存在確率が前記閾値より大きい場合に、前記ターゲット生成候補を新規ターゲットとして設定する処理を行う請求項4に記載の情報処理装置。
【請求項6】
前記情報統合処理部は、
前記パーティクル重みの算出処理に際して、
前記ターゲット仮説として前記ターゲット生成候補が設定されているパーティクルについては、イベント−ターゲット間尤度に1より小さい係数を乗算する処理を実行して前記パーティクル重みを算出する処理を行う請求項5に記載の情報処理装置。
【請求項7】
前記情報統合処理部は、
前記パーティクルに設定されたターゲット各々のターゲット存在確率と、予め設定した削除閾値とを比較して、ターゲット存在確率が前記削除閾値より小さい場合に、該ターゲットを削除する処理を行う請求項4に記載の情報処理装置。
【請求項8】
前記情報統合処理部は、
前記イベント検出部から入力するイベント情報で更新されない時間の長さに基づいて、前記ターゲット存在仮説を確率的に存在(c=1)から不在(c=0)に変更する更新処理を実行し、該更新処理後、前記パーティクルに設定されたターゲット各々のターゲット存在確率と、予め設定した削除閾値とを比較して、ターゲット存在確率が前記削除閾値より小さい場合に、該ターゲットを削除する処理を行う請求項7に記載の情報処理装置。
【請求項9】
前記情報統合処理部は、
各パーティクルにイベント発生源に対応するターゲット仮説の設定処理を、
(制約1)ターゲット存在の仮説がc=0(不在)のターゲットはイベント発生源としない、
(制約2)異なるイベントに対して、同一のターゲットをイベント発生源としない、
(制約3)同一時刻において「イベント数>ターゲット数」の場合は、ターゲット数より多いイベントはノイズと判定する、
上記制約1〜3に従った処理として実行する請求項3に記載の情報処理装置。
【請求項10】
前記情報統合処理部は、
各ターゲットと各ユーザとを対応づけた候補データの同時生起確率(Joint Probability)を、前記イベント情報に含まれるユーザ識別情報に基づいて更新し、更新された同時生起確率の値を適用してターゲット対応のユーザ確信度を算出する処理を実行する構成を有する請求項1〜9いずれかに記載の情報処理装置。
【請求項11】
前記情報統合処理部は、
前記イベント情報に含まれるユーザ識別情報に基づいて更新された同時生起確率の値をマージして、各ターゲットに対応するユーザ識別子の確信度を算出する構成である請求項10に記載の情報処理装置。
【請求項12】
前記情報統合処理部は、
複数ターゲットに同一のユーザ識別子(UserID)は割り振られないという制約に基づいて、各ターゲットと各ユーザとを対応づけた候補データの同時生起確率(Joint Probability)の初期設定を行なう構成であり、
異なるターゲットに同一のユーザ識別子(UserID)が設定された候補データの同時生起確率P(Xu)の確率値は、
P(Xu)=0.0、
それ以外のターゲットデータの確率値は、
P(Xu)=0.0<P≦1.0
とする確率値の初期設定を行う構成である請求項11に記載の情報処理装置。
【請求項13】
情報処理装置において情報解析処理を実行する情報処理方法であり、
複数の情報入力部が、実空間における画像情報または音声情報のいずれかを含む情報を入力する情報入力ステップと、
イベント検出部が、前記情報入力ステップにおいて入力する情報の解析により、前記実空間に存在すると推定されるユーザの位置および識別情報を含むイベント情報を生成するイベント検出ステップと、
情報統合処理部が、前記実空間におけるユーザの存在と位置および識別情報についての仮説(Hypothesis)データを設定し、前記イベント情報に基づく前記仮説データの更新および取捨選択により、前記実空間におけるユーザの存在と位置および識別情報を含む解析情報を生成する情報統合処理ステップと、
を有することを特徴とする情報処理方法。
【請求項14】
情報処理装置において情報解析処理を実行させるプログラムであり、
複数の情報入力部に、実空間における画像情報または音声情報のいずれかを含む情報を入力させる情報入力ステップと、
イベント検出部に、前記情報入力ステップにおいて入力する情報の解析により、前記実空間に存在すると推定されるユーザの位置および識別情報を含むイベント情報を生成させるイベント検出ステップと、
情報統合処理部に、前記実空間におけるユーザの存在と位置および識別情報についての仮説(Hypothesis)データを設定させ、前記イベント情報に基づく前記仮説データの更新および取捨選択により、前記実空間におけるユーザの存在と位置および識別情報を含む解析情報を生成させる情報統合処理ステップと、
を有することを特徴とするプログラム。

【図7】
image rotate

【図13】
image rotate

【図15】
image rotate

【図16】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図14】
image rotate

【図17】
image rotate


【公開番号】特開2010−165305(P2010−165305A)
【公開日】平成22年7月29日(2010.7.29)
【国際特許分類】
【出願番号】特願2009−9116(P2009−9116)
【出願日】平成21年1月19日(2009.1.19)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】