(57)【要約】【課題】  複数センシングノードの連携によりユーザ個々の行動や置かれている空間的、時間的状況を「場」として認識することで、ユーザの要求を認知し、その結果を元に個々のユーザに合わせ自律的に応答するシステムを構築する。【解決手段】  複数センシングノード１０ａ〜１０ｄ及び自律応答機器１２を認識対象空間１に設置して、当該空間１を認識するためのセンシングノード・ネットワークを構成し、複数認識手段にてユーザの置かれた空間的・時間的な「場」の認識を実現する。また、統合処理部（マスタ）を当該センシングノード１０ａ〜１０ｄから動的に決定することで、負荷の分散及び、複数ユーザが存在した場合、個々のユーザの要求に特化した認識処理を行う。【選択図】  図１
2005115649.tif 000002
【特許請求の範囲】
【請求項１】
カメラを含む複数のセンシングノードと、応答機器とを具備する情報処理システムであって、
前記複数のセンシングノードの夫々は、所定の空間内の動物体を複数の認識手法を用いて認識し、前記複数のセンシングノードのうちマスタとされたセンシングノードに認識結果を送信し、
前記マスタとされたセンシングノードは、当該認識結果に応じて前記応答機器に所定の動作をさせるためのコマンドを送信し、
前記応答機器は、前記コマンドに応じた行動を起こすことを特徴とする情報処理システム。
【請求項２】
請求項１において、
前記マスタとされたセンシングノードは、当該空間における状況が変化したことを認識した際に、前記複数のセンシングノードに対して当該空間における状況にあわせた認識手段、アルゴリズム又は、前記複数のセンシングノードの組み合わせを変化させることを特徴とする情報処理システム。
【請求項３】
請求項１において、
前記マスタとされたセンシングノードは、当該空間における状況が変化したことを認識した際に、当該変化後の空間における状況にあわせたマスタを前記複数のセンシングノードの中から一つ選択することを特徴とする情報処理システム。
【請求項４】
請求項１において、
前記マスタとされたセンシングノードは、認識対象が前記所定の空間内から離れることを認識した際に、当該認識対象が移動した先に存在するシステムに制御を受け渡すことを特徴とする情報処理システム。
【請求項５】
請求項１において、
前記複数のセンシングノードの夫々は、前記カメラによって撮影された動画像の前後フレームの差分により動きを持つ複数物体を検出し、前記マスタとされたセンシングノードに検出データを送信し、
前記マスタとされたセンシングノードは、前記複数のセンシングノードから送信された前記検出データから３点測位することで、複数動物体の位置を検出することを特徴とする情報処理システム
【請求項６】
請求項１において、
前記複数のセンシングノードの夫々は、被写体となる人物のジェスチャを認識し、認識結果を前記マスタとされたセンシングノードに送信し、
前記マスタとされたセンシングノードは、前記認識結果に基づいてジェスチャの意味を認識し、時間軸における状況変化を認知することが可能であることを特徴とする情報処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、空間におけるユーザの行動やユーザがおかれている状況を複数の処理装置により認識する、認識処理システムに関するものである。
【背景技術】
【０００２】
ユビキタス時代が到来する中、我々の取り巻くあらゆる場所に、周囲の状況を認識可能とする多くのセンシングノードを配置することが考えられており、例えばＩＣタグや、ＲＦタグの実現により物流におけるトラッキングを可能している。その結果、従来は人間の能動的な指示に対してのみＩＴ（Ｉｎｆｏｒｍａｔｉｏｎ  Ｔｅｃｈｎｏｌｏｇｙ）が処理結果を返すのみであったが、ＩＴ側が我々の周囲状況を把握することが可能となり、ＩＴが自律的に人間に対し応答を行うことが可能となる。
【０００３】
また、周囲の状況を把握する技術として、認識装置の存在がある。従来の一般的な認識装置は、単一の目的、例えば顔認証を行う、人を検知する、等、を実現するために、カメラなどの単一の入力手段により、単一の認識アルゴリズムを単一の情報処理機器に固定的に実装することで処理を行っている。また、空間内における人の位置や人の動線追跡・管理を行うために、カメラなどの入力手段を複数持ち、情報処理装置を階層的に構成することで効率的に処理する装置が、例えば特許文献１や特許文献２に開示されている。
【０００４】
【特許文献１】特開平１１−１５９８１号公報
【０００５】
【特許文献２】特開平７−３０６０１２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本願発明者等は、本願発明をするにあたって、各センシングノードが画像認識や、音声認識、知能処理ができるほどインテリジェントなノードの集合体を形成し、それぞれのノードが連携して現実世界を認識することで、これまでとはまったく違ったサービスの提供が可能となることを思いついた。
【０００７】
しかしながら、上記のＩＣタグやＲＦタグでは、一意に定めた数百桁のＩＤ番号といった数百バイト規模のＲＯＭデータを持っているに過ぎない。従って、各ノードの機能が単純であり、現実世界におけるごく一部の情報しかセンスできていない。また、例えば特許文献１や特許文献２に記載されるような従来の認識装置では、所定空間内における物体や人の位置検出を行うこと等の単一の目的を達成するために設けられた装置であるため、人を取り巻く周囲状況を把握し、空間内における物理的情報のみならず、空間内で起こっている時間軸的な「場」を認識することは困難であることに気が付いた。
【０００８】
そこで、本願発明の一つの目的は、複数のセンシングノードの連携により人間の行動、状況をより多角的に認識すること、つまりユーザ個々の行動や置かれている空間的、時間的状況を「場」として認識することで、ユーザの要求や状況を認知し、その結果を元にシステムが個々のユーザに合わせ自律的に応答するシステムを構築することにある。
【０００９】
この発明の前記ならびにそのほかの目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１０】
上述の課題を解決するために本願において開示される発明のうち代表的なものの概要を簡単に説明すれば以下の通りである。
【００１１】
カメラを含む複数のセンシングモジュールと、応答機器とを具備する情報処理システムであって、前記複数のセンシングモジュールの夫々は、所定の空間内の動物体を複数の認識手法を用いて認識し、前記複数のセンシングモジュールのうちマスタとされたセンシングモジュールに認識結果を送信し、前記マスタとされたセンシングモジュールは、当該認識結果に応じて前記応答機器に所定の動作をさせるためのコマンドを送信し、前記応答機器は、前記コマンドに応じた行動を起こす。
【００１２】
更に望ましくは、前記マスタとされたセンシングモジュールは、当該空間における状況が変化したことを認識した際に、前記複数のセンシングモジュールに対して当該空間における状況にあわせた認識手段、アルゴリズム又は、前記複数のセンシングモジュールの組み合わせを変化させる。
【００１３】
または、前記マスタとされたセンシングモジュールは、当該空間における状況が変化したことを認識した際に、当該変化後の空間における状況にあわせたマスタを前記複数のセンシングモジュールの中から一つ選択する。
【００１４】
または、前記マスタとされたセンシングモジュールは、認識対象が前記所定の空間内から離れることを認識した際に、当該認識対象が移動した先に存在するシステムに制御を受け渡す。
【００１５】
または、前記複数のセンシングモジュールの夫々は、前記カメラによって撮影された動画像の前後フレームの差分により動きを持つ複数物体を検出し、前記マスタとされたセンシングモジュールに検出データを送信し、前記マスタとされたセンシングモジュールは、前記複数のセンシングモジュールから送信された前記検出データから３点測位することで、複数動物体の位置を検出する。
【００１６】
または、前記複数のセンシングモジュールの夫々は、被写体となる人物のジェスチャを認識し、認識結果を前記マスタとされたセンシングモジュールに送信し、前記マスタとされたセンシングモジュールは、前記認識結果に基づいてジェスチャの意味を認識し、時間軸における状況変化を認知することが可能であるように構成する。
【発明の効果】
【００１７】
本発明により、空間的・時間的な場の認識が可能となる。または、これまでのサーバ・クライアント型システムと比較して、システム全体の負荷低減が期待できる。
【発明を実施するための最良の形態】
【００１８】
本発明の実施形態の代表例として、展示会などの説明ブースにおける説明員支援システムを挙げ、以下説明する。図１に当該展示ブース空間（3メートル×3メートル四方）の空間見取り図を示す。認識対象空間（１）に情報処理装置を具備したカメラ４台をセンシングノード（１０ａ〜１０ｄ）（以下、単にノードという）として、当該対象空間が見渡せる位置に設置する。なお当該ノードは、認識率の向上を図りたい、音声の認識といった機能的に新たな認識を行わせたい、等、その目的によって任意の個数を取りうる。また、これら当該ノードは認識目的に合わせ、カメラの以外にもマイクフォン、温度、湿度、圧力、振動、などの各種センサのいずれの組み合わせで構成しても良い。
【００１９】
本システムでは、ノード（１０ａ）とノード（１０ｂ）を説明ブースにおけるパネル側に同一直線上に配置し、ノード（１０ｃ）をパネルとは空間を挟み逆方向の中心に配置する。また、ノード（１０ｄ）はパネル正面に配置する。すべてのノードにおいてカメラの中心線が、空間内の中心点（１５）と一致するように、カメラ方向を決定する。これら複数のノードによる協調認識処理により、本システムでは、認識内容である説明員（１１）や来会者（１３ａ、１３ｂ）の位置、来会者（１３ａ）の顔部、及び説明員（１１）のジェスチャを検出し、その結果に基づき、自律応答機器（１２）（ペットロボット、携帯電話など）が説明員、来会者に対し行動を起こす。
【００２０】
本実施例では、例えば、”来会者がパネルに興味を示した”、”説明員の説明を待っている”又は”説明を受けている”などのパネル付近の来会者の行動や説明員のジェスチャを認識することを一つの目的としている。即ち、来会者の顔部や説明員のジェスチャ等は、パネル付近でのみ認識すればよい。そこで、ノード（１０ａ〜１０ｃ）を図１に示すように３点に配置することにより説明員（１１）や来会者（１３ａ、１３ｂ）の位置を検出し、ノード（１０ｄ）をパネル（１４）付近に配置することにより来会者（１３ａ）の顔部、及び説明員（１１）のジェスチャを検出するように機能を分割している。これにより一つのノードに必要な機能が制限されるため各ノード(１０ａ〜１０ｄ）の処理負担を軽減することが可能となる。
【００２１】
さらに上記認識に際して、説明員を中心とするその時々の状況、例えば「来会者待ち」、「説明待ち」、「説明中」といった時間軸方向で分割される状況を「場」と定義する。言い換えれば、ある時間を指定した場合に対象となる空間における状況を一つの「場」と定義する。即ち、「場」は、ある時間を指定した場合に対象となる空間における状況とその時間以前の「場」から定められる。また、「場」は、認識対象者がその時間において必要としているサービスに応じた状況ということも可能である。例えば、来会者がパネル（１４）付近にいる場合に、「説明を受けたい」という状況の「場」や「説明を受けている」という状況の「場」である。このような認識対象空間におけるその時々の「場」によって使用するセンシングノード、認識手段・方法や自律応答を変えることで、ユーザ（本システムでは説明員及び来会者）に対し最適な情報提供を行うことを可能とする。例えば、パネル１４付近に来会者がいないことをセンシングノード（１０ａ〜１０ｃ）で検出した場合は、「説明待機中」の場として認識し、自律応答機器１１（例えばロボット）に来会者に対してパネル１４に興味を持たせるような行動をさせることが可能となる。また、「説明中」の場として認識している時に、他の来会者がパネルに興味を持ったことをセンシングノード（１０ｄ）で検出した場合は、自動応答機器１１（例えばロボット）に、当該来会者に対して「お待ちください」等の声を掛けさせると共に、この場にはいない他の説明員の携帯電話等にメール送付し、直ぐにパネル１４前に戻るように指示することも可能である。
【００２２】
図２に本システムの構成図を示す。各センシングノード（認識処理装置）ＲＰＵ（１０ａ〜１０ｄ）は、カメラ等のセンサＳＥＮＳＯＲ（１００）及び、当該カメラにて撮影した動画像に対し認識処理を行う情報処理装置ＰＵ１（１０１ａ）で構成される。また、これらの複数のセンシングノードＲＰＵは、ロボット、携帯電話等の携帯機器といった人間に対し直接自律応答する応答機器ＡＰＰ（１２）と共にネットワーク（１０３）を介して接続される。なお、ネットワークはＵＳＢやイーサーネット等の有線のネットワークであっても、無線ＬＡＮやＢｌｕｅ Ｔｏｏｔｈ等の無線のネットワークであっても構わない。自律応答機器ＡＰＰ（１２）は、ディスプレイやスピーカ、モータ、ＬＥＤ、といったユーザに対し情報提示をする手段となるヒューマン・インタフェースＨＩＦ（１０２）と、コマンドのデコード並びに当該ヒューマン・インタフェースＨＩＦ（１０２）の自律制御を行う情報処理装置ＰＵ２（１０１ｂ）、から構成される。これらの情報処理装置ＰＵ１，ＰＵ２（１０１ａ、１０１ｂ）は、夫々、センシングノードＲＰＵ及び自動応答機器ＡＰＰの中に内蔵されるのが好ましい。センシングノードＲＰＵ（１０ａ〜１０ｄ）や自動応答機器ＡＰＰ（１２）の中に内蔵することにより一つのセンシングノードを小さく構成することができ、一つの空間内により多くのセンシングノードを配置することが可能となる。但、内蔵させることが処理性能等のため困難な場合は、パーソナルコンピュータ等の既存の情報処理装置を利用しても構わない。
【００２３】
本システムでは、センシングノードＲＰＵ（１０ａ〜１０ｄ）及び自律応答機器ＡＰＰ（１２）を制御するサーバは別途設けず、当該複数のセンシングノード及び自律応答機器間から、統合制御処理を行うマスタを動的に決定し、マスタとなったノードまたは機器は統合制御処理も同時に行う。また、例えば各々対象ユーザに一番近い機器をマスタにし、周辺ノードとのネットワークを動的に構成することで、対象ユーザに対して必要な情報を他のセンシングノードから受取ることが可能となり、当該ユーザが所望のサービスを別個に受けることが可能となる。但、説明会場ブースのように認識対象空間が固定されており、また、想定ユーザをパネル(１４)の近い位置にいることが明確な説明員のみとしている場合のように想定ユーザが固定されている場合は、マスタを動的に変化させる必要はない。
【００２４】
図３・図４を用いて、本システムの処理フローを説明する。図３は、システムの処理フローを示しており、図４は、「場」の遷移を示している。なお、ここでは、理解しやすくするために一人の想定ユーザに対する本システムの処理フローについて説明する。処理開始（２００）と共にセンシングノード（１０ａ〜１０ｄ）及び自律応答機器（１２）は初期状態における動作手順を示した初期プロファイルを設定（２０１）する。本システムの初期状態は、図４で示す「来会者無し」（３４）に当る。なお、ここで「来会者無し」とは、認識対象空間に来会者がいない、即ち、対象ユーザがいない状況とする。当該プロファイルにはマスタの位置、認識対象空間（１）に存在するセンシングノード（１０ａ〜１０ｄ）及び自律応答機器（１２）の位置、動作手順、認識プログラム本体が定義されている。続いてマスタの決定（２０２）を行う。処理開始時には、認識対象空間（１）には、入り口を見渡せるセンシングノード（１０ａ）をマスタとする。マスタ決定後、当該プロファイルに定義されている認識動作に必要なセンシングノード及び自律応答機器の利用予約を行い（２０３）、当該センシングノード及び当該自律応答機器とでネットワークを構成する（２０４）。本システムでは、対象空間（１）に存在するすべての機器にてネットワークを構成する。また、本実施例における空間では、入り口が一つしかなく、来会者は常に入り口から入場するため、入り口を監視しているノード（１０ａ）以外のセンシングノード（１０ｂ〜１０ｄ）を待機状態として、低電力化を図ることも可能である。
【００２５】
以上で初期設定は終了し、空間認識処理を開始（２０５）する。「来会者無し」の状況においては、当該処理では、センシングノード（１０ａ〜１０ｄ）にて、来会者（１３ａ）の検出を行う。来会者が入り口から入場するというアクションが起こると同時に、マスタであるセンシングノード（１０ａ）はその状況を認識する。ここで、来会者（１３ａ）が入り口（１６）から入場すると、「来会者待ち」（３０）の場が発生する（変化する)。「来会者待ち」の「場」は、認識対象空間（１）に来会者（１３ａ)は存在するが、サービス対象であるパネル（１４）付近に来会者（１０ａ）がいない状態とする。言い換えれば、来会者（１０ａ）は、認識対象空間（１）内において、どのようなサービスを受けることができるかという情報を必要としている「場」ということができる。ここで、マスタであるノード（１０ａ）は、他のノード（１０ｂ〜１０ｄ）に対して、「来会者待ち」（３０）への場の変化にあわせたコマンドを発行し（２０９）、各ノード（１０ａ〜ｄ）は、「来会者待ち」（３０）の場に対応したプロファイルを読み込み、更新する（２１０）プロファイルの更新には、「来会者待ち」（３０）の場に必要な機能モジュール、即ち、位置検出モジュールの読み込みも含まれる。また、処理フロー（２０９）において、自動応答機器（１１）に対し来会者（１３ａ）にパネル（１４）でどのような説明を行う予定かを伝えるようなアクションを起こさせるコマンドを発行してもよい。次に、「場」が終了したかを判断する（２１１）。「場」の終了に関しては後に詳述するが、現在は、来会者が認識空間内にいるため「場」は終了せず、処理フロー（２１４）に戻り、マスタの決定を行う（２０２）。現在の「場」は、「来会者待ち」であり、来会者（１３ａ）がパネルに近づくか否かを検出する。即ち、マスタは、位置検出を行うノード（１０ａ〜１０ｃ）のいずれかとすればよいが、ここでは、来会者に最も近いノード（１０ｃ）をマスタとする。その後、リソースの予約と入手をし（２０３）、ネットワークの構築を行った後、空間認識を行う（２０５）。上述の通り、「来会者待ち」の「場」においては、来会者（１３ａ）の位置検出を行う。
【００２６】
ここで、来会者（１３ａ）がパネル（１４）の付近に移動した場合、システムは、図４に示す「説明待ち」（３１）に「場」が遷移する。「説明待ち」の「場」は、来会者がパネルの近くに来ているが説明員が説明を行っていない状態とする。言い換えれば、来会者（１３ａ）は、パネル（１４）に掲載される情報について説明を必要としている「場」であるということができる。ここで、マスタであるノード（１０ｃ）は、自律応答機器（１２）に対し、アクションコマンドを送信（２０９）する。そのアクションコマンドに応じて、自動応答機器（１２）は、アクションを起こす。例えば、来会者がパネル（１４）が見える位置まで移動し止まった場合は、「いらっしゃいませ」と、来会者がパネル付近にいるがパネル（１４）が見える位置よりも遠方で止まった場合は「パネルの近くにお越しください」といったメッセージを流す。このような「場」の変化を促す行動が認識された場合、場の変化に合わせプロファイルに定義されたコマンドも発行（２０９）される。例えば、本システムで「来会者待ち」（３０）から「説明待ち」（３１）の場に遷移するコマンドが発行され、「説明待ち」（３１）という「場」のプロファイルを各センシングノード（１０ａ〜１０ｄ）が読み込む（２１０）。ここで、プロファイルには、来会者（１３ａ）がパネル（１４）近傍に居つづけるかを検出ための位置検出モジュールと、来会者（１３ａ）がパネル（１４）に興味を持っているか（見ているか）を検出するための顔部検出モジュールと、説明員（１２）が説明を始めたかを検出するためのジェスチャ検出モジュールが含まれる。
【００２７】
次に、処理フロー（２１４）に戻り、来会者がパネルを見ているか否かを判断するためセンシングノード（１０ｄ）がマスタとして決定され、リソースの予約と入手をし（２０３）、ネットワークの構築（２０４）を行った後、説明員（１２）や来会者（１３ａ）の位置検出、来会者（１３ａ）の顔部の検出、説明員（１２）のジェスチャの認識等を行う（２０５）。
【００２８】
ここで、説明員が所定のジェスチャを行ったことを認識すると「場」が「説明中」（３２）に遷移する。「説明中」の「場」は、説明員（１２）が来会者（１３ａ）に対して説明をしている「場」である。言い換えれば、来会者（１３ａ）がサービスを受けている「場」ということもできる。そこで、マスタであるノード（１０ｄ）は、自律応答機器（１２）にコマンドを発行し、例えば、「名刺を渡す」といったアクションを起こさせる（２０９）。それと並行して、「説明中」（３２）という「場」に遷移するためのコマンドが発行され、各センシングノードは、「説明中」（３２）の「場」に関するプロファイルを読み込み（２１０）、処理フロー（２１４）に遷移する。当該プロファイルには、「説明中」（３２）の場において、既に来会者（１３ａ）はパネル（１４）を見ているため、顔部検出モジュールは含まれず、位置検出モジュール及びジェスチャ検出モジュールが含まれる。続いて、再度、マスタの決定がされるが、来会者は、パネル１４の近くにいるためマスタは、ノード（１０ｄ）まま変更はない。
【００２９】
更に、使用するセンシングノード及び自律応答機器の再予約（２０３）及びネットワーク構築（２０４）を行う。上述の通り、「説明中」の「場」では、パネルを見る来会者の顔をノード（１０ｄ）にて検知する必要はないので、これまで動作中であったノード（１０ｄ）における顔検出モジュールの動作は停止され、リソースの負荷を減らすことが可能となる。当該場では、位置検出及びジェスチャ検出モジュールの動作は継続される。但、「場」の変化を正確に検知するために、位置検出によって説明員（１２）が所定の位置にいる場合のみ、ジェスチャ認識モジュールを動作させるようにしても良い。このようにすることにより説明員（１２）が所定の位置で説明終了のジェスチャを行った場合のみジェスチャ検出することになるため、システムの誤作動を防止することが可能となる。空間認識において（２０５）、説明員（１２）が説明終了のジェスチャをしたことを検出した場合は、「場」は当初の「来会者待ち」（３０）に遷移（３２２）し、当該応答機器（１１）は来会者（１３ａ）に対し「さようなら」といったメッセージを発する。ここで、来会者（１３ａ）は、パネル（１４）付近にいると考えられるため、来会者（１３ａ）の位置関係を見ると「説明待ち」（３１）の「場」になると考えられる。しかし、「説明中」（３２）の「場」から遷移している、即ち、既に説明を受け終わっていると考えられるため、「説明待ち」（３１）の「場」でなく、「来会者待ち」（３０）の「場」に遷移する。このように本実施例では、次の「場」に遷移する際に、遷移する前の「場」の状況を考慮して、遷移すべき「場」を判断する。
【００３０】
「来会者待ち」（３０）の「場」において、来会者（１３ａ）が認識対象空間（１）から離れた場合、当該「場」は終了し、「来会者無し」（３４）の状態となる。なお、広大な空間を認識対象人物が移動した場合、各々の認識空間において「場」の変化を、近接した認識空間対象としたシステムに引き継ぐ必要がある。つまり「場」を、当該人物を中心とした物理的空間とした場合、「場」のハンドオーバー（２１２）が必要となる。当該人物が移動したことで、当該認識対象空間における「場」が終了した場合（２１１）、即ち、認識対象（来会者）が対象空間から隣接の空間に移動した場合、当該空間のマスタは、隣接空間のシステムのマスタに対し、「場」の引継ぎを行うことで、広大な空間における複数システムの連携を可能とする。
【００３１】
以上、「場」の変化に伴う処理フローを説明したが、本システムのように「場」の認識を行う場合、「場」の変化は起こらないが、認識対象空間（１）の明るさなどの環境変化や、認識対象人物の移動により、センシングノード（１０ａ〜１０ｄ）における認識処理方法自体を変更したい場合が考えられる。そのような状況変化においても、使用する認識モジュールを変更したり、停止したり、といったリソースの再調整やマスタの変更を行う（２０８）ことで、状況変化に対しシステムが柔軟に対応することを可能とする。
【００３２】
続いて、図５に本システムのマスタ処理部ＭＳＰ（４１）、スレーブ処理部ＳＬＰの処理概要を示す。各センシングノード（１０ａ〜１０ｄ）はスレーブ処理部として認識処理を行う。また、マスタとして割り当てられたセンシングノードは、マスタ処理部としても働く。即ち、各センシングノード（１０ａ〜１０ｄ）は、マスタ処理部ＭＳＰ（４１）・スレーブ処理部ＳＬＰの両方の動作が可能とされ、実際には、マスタとして割り当てられたセンシングノードがマスタ処理部ＭＳＰ（４１）として動作する。スレーブ処理部ＳＬＰにおいて、カメラＣＡＭ（４０１）により得た画像データはＡ／Ｄ変換ＡＤＣ（４０２）され、さらにＹＵＶ→ＲＧＢ色変換及びフィルタ処理ＣＣＲ（４０３）が行われ、動物体検出、顔部検出、特定色検出、といった特徴点抽出ＦＰＥ（４０４）が行われる。その後、求められた特徴点から動物体の重心点や、顔部のカメラ上の座標、ジェスチャの種別認識処理ＲＰ（４０５）が行われ、マスタ処理部の状況テーブルＳＴＢＬ（４１１）にその情報が随時更新される形で書き込まれていく（４３）。スレーブ側で行われる補正、特徴点抽出、認識処理の各処理モジュールはプロファイルとして予め制御テーブルに格納されており、その動作はマスタ側から制御され、マスタが当該制御テーブルＳＴＢＬ（４１１）に書き込んだ動作モジュール情報（４３）を元に、動作モジュールの設定や、不必要なモジュールの停止制御が可能となる。また、各センシングノード（１０ａ〜１０ｂ）で特徴点の抽出を行っているためマスタ処理部へのデータ転送量が画像データそのものを転送する場合と比較して少なくてすむ。更に、比較的処理量の多い画像処理を各センシングノード（１０ａ〜１０ｄ）に分散しているため、画像データをそのままマスタ処理部に転送する場合と比較してマスタ処理部における負荷の軽減をすることができる。
【００３３】
マスタ処理部ＭＳＰ（２１）では各センシングノード（１０ａ〜１０ｄ）からの認識処理結果を制御テーブルＳＴＢＬ（４１１）に保持し、当該テーブルから結果を引き出すことで所望の認識処理を行う。例えば、各ノードから得られた動物体の位置情報から動物体の空間内における位置決定ＰＤを行う（４１２）。また決定された位置情報及び、当該ノードにてジェスチャ認識により識別されたジェスチャ情報、また当該ノードにて行われた顔部検出結果を元に、状況データベースＳＤＢ（４１３）のルールデータに基づいて、場の変化や空間内での状況変化の検知といった状況判断ＳＪＧを行い（４１４）、その結果を元に自律応答機器ＡＰＰ（１２）に対しアクションコマンドの発行（４４）を行う。コマンドは、当該自律応答機器に対応した行動ルールデータベースＡＤＢ（４１７）の情報を元に、当該応答機器での詳細な動作が定義されたオブジェクトとして構築される。
【００３４】
以上、来会者が一人の場合について説明したが、来会者が複数になったとしても同様に処理することが可能である。例えば、来会者（１３ａ）が説明を受けている状況で他の来会者（１３ｂ）が入場した場合は、図６のように来会者（１３ａ）に対応した処理フロー（６１３ａ）と来会者（１３ｂ）に対応した処理フロー（６１３ｂ）とを並行して実行すればよい。なお、各ノードの情報処理装置ＰＵ１が複数のプロセッサを有するマルチプロセッサであれば処理フロー（６１３ａ、６１４ｂ）を異なるプロセッサに割り当てることで並列処理をすることが可能である。また、各ノードの情報処理装置ＰＵ１がプロセッサを一つしか有していない場合は、夫々の処理フロー（６１３ａ，６１３ｂ）を一つのタスクとし、時分割的に切り換えて処理を行えばよい。このように複数の処理フローを並行して実行する場合、マスタを動的に切り換えることで、処理フロー（６１３ａ）においてマスタとされるノードと処理フロー（６１３ｂ）においてマスタとされるノードとを異ならせることが可能となるため、システム全体の負荷軽減を図ることができる。
【００３５】
以上のように、複数のセンシングノード（１０ａ〜１０ｄ）を配置し、当該ノード間にて複数認識手段を協調的に用いることで、これまでにない空間的・時間的な「場」の認識が可能となる。また、ユーザの置かれた環境によって、又は、ユーザの望む認識目的によって、認識処理を協調して行うセンシングノード・ネットワークを自律構成し、統合処理部（マスタ）を動的に決定することで個々のユーザに対して最適な認識処理を行うことが可能となると同時に、これまでのサーバ・クライアント型システムと比較して、システム全体の負荷低減が期待できる。その結果、例えば、個々の人を取り巻くさまざまな状況を認識し、差し迫る危険や要求を察知し、それを元にＩＴが自律的に情報提供するサービスが実現することが可能となる。例えば、店舗におけるコンシェルジェ型サービスの一例として、お客様の当該店舗におけるショッピングを「場」としたとき、手にとっている商品の詳細情報を配信したり、当該商品に強い興味を持つ場合その商品に詳しい店員を呼び出したり、また当該商品に関連する他の商品を紹介したり、などお客様個々の嗜好、状況に応じた情報提供サービスが実現する。なお、言うまでもないが、空間認識をするための機能モジュールは、上述の機能モジュールに限定されることはなく、そのサービスに必要な機能モジュールを各ノードに用意することになる。
【００３６】
続いて、複数動物体の位置検出を複数センシングノードのマスタ・スレーブ協調処理により求める手順を説明する。図７は当該センシングノードにおける動物体抽出フローを示している。マスタにより動物体抽出モジュールが動作設定されている場合（２１５）、まずカメラから画像が取得され（４０２）、まずYUV→RGB色変換、フィルタ（ぼかし）補正（４０３）が掛けられ、フレームメモリに画像が保持される（４１８）。続いてフレーム間の差分を取ることで動き検出を（４１９）、動きオブジェクトとして切り出し、カメラとオブジェクトの中心点の水平方向における角度θを求め（４２０）、角度情報はマスタ処理部へ送信される（４２１）。
【００３７】
図８は、フレーム差分による動き検出から角度算出までのフロー（４５）の詳細を示している。フレームメモリ上に保持されている、現フレーム画像をフレームA、前フレーム画像をフレームB、前々フレーム画像をフレームCとすると、まずフレームA及びフレームBの対応する各画素の差分と、フレームB及びフレームCの対応する各画素の差分を求める（４５１）。次に、各差分値が定められた閾値よりも下回っている場合、つまり前後フレームの対応する画素が同一とみなされる場合、黒でマスクし、差分値が閾値を上回っている場合、つまり動きがあるとみなすことができる画素は白でマスクし、動きの２値画像を生成（４５２）する。続いて、フレームA、B及びフレームB、Cそれぞれの差分画像のANDを取る（４５３）ことで、動きを持つオブジェクトが形として抽出される。
【００３８】
抽出されたオブジェクトの輪郭抽出（４５５）を行い、当該オブジェクトの面積を算出（４５５）する。前記面積がある一定以上のオブジェクトのみ、角度算出対象とする（４５６）ことで、ノイズによって生じた動きオブジェクトを取り除くことができる。動きオブジェクトの輪郭座標から、中心点を算出し、カメラの中心線とオブジェクトの中心点が水平方向でなす角θを算出する。オブジェクトが複数ある場合は、動きオブジェクトがなくなる（４５９）まで、上記の処理を繰り返す。最終的に、検出された面積一定以上のオブジェクトの数及び、当該オブジェクトのθを算出し、図９のフォーマットに従ってマスタへ送信される。
【００３９】
図９は各センシングノードで検出された動きオブジェクトの角度情報を送信する際のフォーマットである。（４３０）はマスタのアドレス、（４３１）は当該センシングノードのアドレス、（４３２）はマスタ方向へのデータの流れを示すフラグ、（４３３）はデータの種類（ここでは角度情報であるというフラグ）、（４３４）は検出された動きオブジェクト数、（４３５ａ〜）は複数当該オブジェクトのθである。動きオブジェクトの個数及び各々の角度情報及びは、マスタに送られ、マスタ内の状況テーブルに保持される。
【００４０】
図１０はマスタにおける空間位置検出動作フローを示している。マスタでは、状況テーブルに書き込まれた角度情報（４２３）を元に、各カメラの空間内における位置関係はすでに既知なので、各カメラから角度情報が到着した時点（４２４）で３点測位の原理で動物体の位置決定（４２５）を行う。
【００４１】
図１１は本位置決定の方法を示している。動物体（４４０）の位置決定は、以下のように行われる。まず、センシングノード（１０ａ）から得る角度情報（４４２）をθ１、当該ノード（１０ｂ）から得る角度情報（４４３）をθ２とし、当該ノード（１０ａ）の空間位置を原点とし、当該ノード（１０ａ）と同（１０ｂ）間の距離（４４４）をｄとする。当該ノードと直線（４４４）の成す角（４４１）θ’、及びｄは既知であるため、θ１、θ２により動物体（４４０）の位置は三角関数にて決定される。
【００４２】
しかしながら、上記方法による位置検出では対象となる動物体（４４０）が２体以上となると、対応点が最大４点以上表れることになり、複数動物体の位置同時決定はできない。そこで、上記θ１、θ２による位置決定の後に、センシングノード（１０ｃ）で得られる角度情報（４４５）θ３を用いることで、複数対応点から、当該動物体の位置を絞り込み決定する。つまり、当該対応点の座標データ、当該ノード（１０ｃ）の空間位置、角度θ３により、当該座標データの整合性を確認することで、最終位置を決定する。位置情報は、３０ｃｍ精度のグリッド単位で、マスタの位置管理テーブルに書き込まれる。なお、前記３台のセンシングノードに加え、第４、第５と複数のノードを、障害物などで死角となる領域をカバーするように配置することで、位置認識精度を高めることができる。本位置決定方式では、フレーム差分動き抽出を用いているが、近隣３フレームのみに注目した処理であるため環境変化に対しロバスト性が高く、また３台以上のカメラを用いることで複数動物体の位置検出を同時に行うことができる。
【００４３】
続いて、ジェスチャ認識処理手順について説明する。図１２はスレーブ処理部のセンシングノードにおけるジェスチャ認識処理フローを示している。本認識では説明員（１１）の手にピンク色のマーカーを付け、色検出によりマーカーをトラッキングすることで、ジェスチャを判別する。マスタによりジェスチャ認識モジュールが動作設定されている場合（２１５）、カメラにて取り込まれた画像をＨＳＶ（Ｈｕｅ  Ｓａｔｕｒａｔｉｏｎ  Ｂｒｉｇｈｔｎｅｓｓ）系へ色変換し、色相（Ｈｕｅ）からピンク領域を抽出（４６１）する。ノイズ除去のため検出されたピンク領域の面積が一定以上の場合（４６２）のみ、領域の中心点座標を算出し、フレーム毎にピンク領域の移動ベクトルを求める（４６３）。このベクトルの時間的な変化の組み合わせを定義することにより、例えばピンク領域が上下に移動したなど、ジェスチャパターンとして認識（４６４）する。また、ピンク領域の軌跡を求め、円などの図形とのパタンマッチングにより、ジェスチャパターンとすることも可能である。なお、ジェスチャパターンの種別はスレーブ側、マスタ側共に共有し、図１３に示すフォーマットで、ジェスチャの種類（４６６）をマスタ側に通知する。
【００４４】
続いて、顔検出処理手順について説明する。図１４はスレーブ処理部のセンシングノードにおける顔検出処理フローを示している。標準顔をテンプレートとして定義しておき、複数のサイズにて画面上をテンプレートマッチングすることにより、顔部を検出する。マスタによりジェスチャ認識モジュールが動作設定されている場合（２１５）、カメラにて取り込まれた画像に対し、予め定義した標準顔テンプレートをサイズ別に数種類生成（４７１）、当該画像を操作することで、標準テンプレートとのパタンマッチングを行う。マッチング結果に基づき、顔数のカウント（４７５）を行い、図１５に示すフォーマットにてマスタに対し、検出顔数（４７６）、当該顔部の座標（４７７ａ〜）を通知する。
【００４５】
このように、本実施例では、例えば、同じ動作検出である動物体検出モジュールとジェスチャ認識モジュールとを分けているように空間認識モジュールを細分化している。このように細分化することにより、一つの空間認識モジュールが小さくなると共に、動物体検出モジュールを動作させたまま、ジェスチャ認識モジュールを停止させる等の細かい制御が可能となり、システム負荷の低減が可能となる。
【００４６】
以上、実施例に基づいて説明してきたが、本願の目的に逸脱しない範囲での種々の変更が可能である。例えば、位置検出・ジェスチャ検出・顔検出等に関して、本願で示した以外の方式を採用しても良いし、機能モジュールは位置検出モジュール、ジェスチャ検出モジュール、顔部検出モジュール以外を組み合わせても問題ない。また、本実施例では、ノード（１０ａ〜１０ｃ）を位置検出に、ノード（１０ｄ）を顔部検出・ジェスチャ検出と機能を分けて用いたが、すべての機能をノードに持たせても良い。例えば、広い展示会場に複数のパネルが存在する空間のように、夫々のパネルにカメラを設置することが困難な場合は、設置された複数のノードが同じ機能を有し、その「場」の状況に応じて各ノードの役割を変更することにより設置するノードの数を減らすことが可能となる。
【産業上の利用可能性】
【００４７】
本発明は、「場」を認識して自立的に応答するシステムに広く適用することができる。
【図面の簡単な説明】
【００４８】
【図１】本発明の代表例である展示会説明員支援システムの構成図である。
【図２】展示支援システムの装置構成を示すブロック図である。
【図３】協調認識処理の動作フローチャートを説明する図である。
【図４】展示説明における「場」の遷移図である。
【図５】展示支援システムにおけるマスタ・スレーブ処理部の機能構成図である。
【図６】複数の認識対象者がいた場合における協調認識処理の動作フローチャートを説明する図である。
【図７】スレーブ処理側における空間位置検出動作のフローチャートを説明する図である。
【図８】スレーブ処理側における動物体抽出のフローチャートを説明する図である。
【図９】マスタへ送信する空間位置検出結果のフォーマットを示す図である。
【図１０】マスタ処理側における空間位置検出動作のフローチャートを説明する図である。
【図１１】マスタ処理側における空間位置検出方法を説明する図である。
【図１２】スレーブ処理側におけるジェスチャ認識動作のフローチャートを説明する図である。
【図１３】マスタへ送信するジェスチャ認識結果のフォーマットを示す図である。
【図１４】スレーブ処理側における顔部抽出動作のフローチャートを説明する図である。
【図１５】マスタへ送信する顔部抽出結果のフォーマットを示す図である。
【符号の説明】
【００４９】
１…認識対象空間、１０ａ、１０ｂ、１０ｃ、１０ｄ…センシングノード、１１…説明員、１２…自律応答機器、１３ａ、１３ｂ…来会者、１４…展示パネル、１５…空間の中心点、１６…入り口、１００…センサ（カメラ）、１０１ａ、１０１ｂ…情報処理装置、１０２…ヒューマン・インタフェース、１０３…ネットワーク、２００…開始点、２０１、２０２、２０３、２０４、２０５、２０７、２０８、２０９…処理、２１０、２１２…処理、２０６、２１１…判別処理、２１３…終了点、２１４…合流点、３０、３１、３２…状態、３０１、３０２、３１１、３１２、３２１、３２２…遷移グラフ、４１…マスタ処理部、４２…マスタ制御データ、４３…スレーブ処理データ、４４…アクションコマンド、４０１…カメラ、４０２…Ａ／Ｄ変換、４０３…色補正、４０４…特徴点抽出、４０５…認識処理、４０６…制御テーブル、４１１…状況テーブル、４１２…位置決定部、４１３…状況データベース、４１４…状況判断部、４１５…行動決定部、４１７…行動コマンドデータベース、４５…動物体オブジェクト抽出処理、４１８、４１９、４２０、４２１…処理、４５１、４５２、４５３、４５４、４５５、４５７、４５８…処理、４５６、４５９…判別処理、４３０…マスタのＩＰアドレス、４３１…自身のＩＰアドレス、４３２…マスタ方向へのデータの流れを示すフラグ、４３３…処理の種別、４３４…抽出された動物体の数、４３５ａ、４３５ｂ、４３５ｃ…角度、４２２、４２３、４２５、４２６…処理、４２４…判別処理、４４０…動物体、４４１、４４２、４４３、４４５…角度、４４４…直線距離、４６１、４６３、４６４、４６５…処理、４６２…判別処理、４６６…ジェスチャの種別、４７１、４７２、４７４、４７５…処理、４７３…判別処理、４７６…抽出された顔数、４７７ａ、４７７ｂ…抽出された顔部の座標データ、６１３ａ，６１４ｂ…処理フロー。
【図１】
2005115649.tif 000003
【図２】
2005115649.tif 000004
【図３】
2005115649.tif 000005
【図４】
2005115649.tif 000006
【図５】
2005115649.tif 000007
【図６】
2005115649.tif 000008
【図７】
2005115649.tif 000009
【図８】
2005115649.tif 000010
【図９】
2005115649.tif 000011
【図１０】
2005115649.tif 000012
【図１１】
2005115649.tif 000013
【図１２】
2005115649.tif 000014
【図１３】
2005115649.tif 000015
【図１４】
2005115649.tif 000016
【図１５】
2005115649.tif 000017