JP2013191163A - 情報処理装置、情報処理方法、及び、プログラム - Google Patents

情報処理装置、情報処理方法、及び、プログラム Download PDF

Info

Publication number
JP2013191163A
JP2013191163A JP2012058679A JP2012058679A JP2013191163A JP 2013191163 A JP2013191163 A JP 2013191163A JP 2012058679 A JP2012058679 A JP 2012058679A JP 2012058679 A JP2012058679 A JP 2012058679A JP 2013191163 A JP2013191163 A JP 2013191163A
Authority
JP
Japan
Prior art keywords
foreground
model
state
particle
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2012058679A
Other languages
English (en)
Inventor
Kuniaki Noda
邦昭 野田
Kenta Kawamoto
献太 河本
Duerr Peter
ペーター ドゥール
Kotaro Sabe
浩太郎 佐部
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2012058679A priority Critical patent/JP2013191163A/ja
Priority to US13/767,037 priority patent/US9111172B2/en
Priority to CN2013100740270A priority patent/CN103337063A/zh
Publication of JP2013191163A publication Critical patent/JP2013191163A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/751Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
    • G06V10/7515Shifting the patterns to accommodate for positional errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/277Analysis of motion involving stochastic approaches, e.g. using Kalman filters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20076Probabilistic image processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Image Analysis (AREA)

Abstract

【課題】環境中の物体等の学習を、容易に行う。
【解決手段】前景状態推定部は、実際に観測される実画像を用いて、画像の前景の状態を推定する。見えモデル更新部14は、前景の状態の推定結果を用いて、画像の背景の見えの背景見えモデル、及び、前景の見えの前景見えモデルを更新する。本技術は、例えば、物体を操作するエージェントの学習を行う場合等に適用できる。
【選択図】図21

Description

本技術は、情報処理装置、情報処理方法、及び、プログラムに関し、特に、例えば、ロボット等の、アクションを行うことが可能なエージェントがアクションを行う環境中の物体等の学習を、容易に行うことができるようにする情報処理装置、情報処理方法、及び、プログラムに関する。
従来、ある環境をカメラで撮影することによって得られる画像を用いて、その環境中の物体の学習(や認識)を行うには、学習対象(や認識対象)の画像領域の切り出しを行う必要がある。
学習対象の画像領域を切り出す方法としては、主に学習対象の外見に関する事前知識を用いるアプローチ(特許文献1)と、対象物体の運動を利用するアプローチ(特許文献2,3,4)がある。
外見に関する事前知識を用いるアプローチでは、物体を特定するためのマーキングや、あらかじめ学習対象(対象物体)に関して学習を行うことで認識モデルを作っておくことが行われる。
対象物体の運動を利用するアプローチでは、画像差分やオプティカルフローなどを用いて運動している画像領域のみが抽出される。
ところで、例えば、ロボットが物体を操作する物体操作タスクでは、操作対象の物体と、ロボットが物体を操作する(ロボット自体の)ハンドとを区別する必要がある。
このため、外見に関する事前知識を用いるアプローチでは、物体とハンドに、それぞれを区別するためのラベルをマーキングしておき、ロボットが、そのラベルを識別する必要がある。また、対象物体の運動を利用するアプローチでは、カメラで撮影された画像から切り出した画像領域が、物体の画像領域かどうかを認識する必要がある。
さらに、カメラで撮影された画像から切り出した画像領域が、対象物体の画像領域であるかどうかを認識するにあたっては、その認識を行う認識器に、ハンドと物体とを区別することができるように、ハンドを指定しておく(ハンドの知識を与えておく)必要がある。
また、特許文献4に記載の技術では、カメラで撮像された画像中で、ハンドを含むロボットアームがどのように写るかや、ロボットアームに対してどのようなコマンドを出力すると、ロボットアームの手先位置(ハンド)がどこに移動するか等といった幾何モデルが、あらかじめ作成され、その幾何モデルに従って物体操作が行われる。
特許文献4に記載の技術では、以上のような幾何モデルに従って物体操作が行われるため、カメラとロボットアームの相対位置を変化させた場合や、カメラのレンズを交換した場合、ロボットアームのサイズを変化させた場合等には、そのつど、幾何モデルを、人手によって修正する必要がある。
特開平7-88791号公報 特開平5-282275号公報 特開平7-29081号公報 特開2005-128959号公報
ロボット等の、アクションを行うことが可能なエージェントがアクションを行う環境中の物体の学習を行う場合、物体を特定するためのマーキングや、運動している画像領域の抽出を行う必要があり、面倒であった。
本技術は、このような状況に鑑みてなされたものであり、ロボット等の、アクションを行うことが可能なエージェントがアクションを行う環境中の物体等の学習を、容易に行うことができるようにするものである。
本技術の一側面の情報処理装置、又は、プログラムは、実際に観測される画像である実画像を用いて、画像の前景の状態を推定する前景状態推定部と、前記前景の状態の推定結果を用いて、画像の背景の見えの背景見えモデル、及び、前記前景の見えの前景見えモデルを更新する見えモデル更新部とを備える情報処理装置、又は、情報処理装置として、コンピュータを機能させるためのプログラムである。
本技術の一側面の情報処理方法は、実際に観測される画像である実画像を用いて、画像の前景の状態を推定し、前記前景の状態の推定結果を用いて、画像の背景の見えの背景見えモデル、及び、前記前景の見えの前景見えモデルを更新するステップを含む情報処理方法である。
本技術の一側面においては、実際に観測される画像である実画像を用いて、画像の前景の状態が推定され、前記前景の状態の推定結果を用いて、画像の背景の見えの背景見えモデル、及び、前記前景の見えの前景見えモデルが更新される。
なお、情報処理装置は、独立した装置であっても良いし、1つの装置を構成している内部ブロックであっても良い。
また、プログラムは、伝送媒体を介して伝送することにより、又は、記録媒体に記録して、提供することができる。
本技術の一側面によれば、環境中の物体等の学習を、容易に行うことができる。
本技術の概要を説明する図である。 本技術が適用される環境の例を説明する図である。 前景モデル#i、及び、背景モデル、並びに、前景モデル#i、及び、背景モデルを用いて生成される観測画像xtの例を示す図である。 前景#iの状態zi tを説明する図である。 前景#iの運動モデルaiを説明する図である。 前景#iのアクションui tを説明する図である。 前景モデル#i、及び、背景モデルを用いて、観測画像を生成する生成モデルのグラフィカルモデルの例を示す図である。 EMアルゴリズムを説明するフローチャートである。 モデルθのグラフィカルモデルの例を示す図である。 パーティクルフィルタを説明する図である。 ルーレット法を説明する図である。 等間隔サンプリングを説明する図である。 前景モデル#i、及び、背景モデルを用いて、観測画像を生成する生成モデルθの実装の例を示す図である。 パーティクルの重みwi(l) tを用いた前景テクスチャモデルτiの更新を説明する図である。 背景テクスチャモデルτwの更新を説明する図である。 エージェントによる物体操作を説明する図である。 操作対象の物体の現在の状態と、目標状態とを示す図である。 物体の並進運動を説明する図である。 物体の回転運動を説明する図である。 ハンドの初期位置を説明する図である。 本技術を適用したエージェントの一実施の形態の構成例を示すブロック図である。 前景状態推定部13の構成例を示すブロック図である。 運動モデル推定部18の構成例を示すブロック図である。 アクション生成部22の構成例を示すブロック図である。 エージェントが行う、前景モデル、背景モデル、及び、運動モデルの学習処理の概要を説明するフローチャートである。 エージェントが行う、前景モデル、背景モデル、及び、運動モデルの学習処理の詳細を説明するフローチャートである。 エージェントが物体操作のために行うアクション制御処理の概要を説明するフローチャートである。 エージェントが物体操作のために行うアクション制御処理の詳細を説明するフローチャートである。 シミュレーションの結果を、模式的に示す図である。 本技術を適用したコンピュータの一実施の形態の構成例を示すブロック図である。
[第0章 本技術の概要]
図1は、本技術の概要を説明する図である。
本技術は、環境中の物体を操作することが可能なマニピュレータとしてのハンド等と、環境を観測(撮影)することが可能なカメラ等とを具備したロボット等の、アクション可能なエージェントによって、実環境下での物体操作を実現する際に必要な環境、物体、及び、ハンド等の身体(エージェントの可動部分)のモデルを、カメラで観測される画像から学習し、そのモデルを用いて状態認識を行うためのアルゴリズムに関する技術である。
本技術では、特に、環境中の物体に関するモデル(操作対象とする物体の外観や、加えられた加速度によって、その物体が環境下でどのように運動するかを決定する動力学パラメータ等)を、設計者が、あらかじめ作り込むことなく、エージェントが環境とのインタラクションを通じて得た経験から、学習により自己組織的に獲得する。
さらに、本技術では、例えば、カメラで観測される画像が、高解像度の画像になった場合や、環境中の物体の姿勢が変化すること等により、表現すべき状態変数の粒度が細かくなった場合、次元が増加した場合であっても、高速に学習を行う。
本技術では、エージェントと環境とのインタラクションを通じて得られた物体操作の経験は、エージェントに搭載されたカメラを通じて、画像時系列として、学習器に入力される。
ここで、ハンドや物体に明示的なマーカが添付されておらず、ハンドや物体の外観に関する事前知識が何も与えられない状態から学習を開始し、ハンドや物体が混在して運動している様子が映っている画像から、ハンドや物体の外観や運動に関するモデルを学習することは、一般に困難である。また、表現すべき状態変数の粒度が細かくなった場合や、次元が増加した場合に、学習のための計算量が飛躍的に増大するのでは、実環境下でのエージェントの制御のような実時間性を求められる条件下での実用性に問題が生じる。
本技術では、カメラで観測される画像を、エージェントのハンドや、操作対象の物体(前景)の外観や運動に関するモデルと、物体操作を行う環境(背景)のモデルとに分離して表現し、画像の観測系列(画像の観測値の系列)を説明するためのフレームワークを用意する。
さらに、本技術では、物体操作の経験等が映った画像の観測系列に基づき、確率モデルの最尤推定の手法(EM(Expectation Maximization)アルゴリズム)を用いて、逐次的にモデルのパラメータを推定することで、経験から自己組織的にモデルを学習する。

なお、画像の観測系列としては、例えば、ビデオカメラで撮影した動画や、コンピュータゲームの画面をキャプチャした動画等を採用することができる。
また、本技術では、観測モデル(後述する前景見えモデル、背景見えモデル)のフレームワークを拡張することにより、3次元の環境から観測された画像の観測系列を用いて、モデルの学習を行うことができるが、以下では、説明を簡単にするために、2次元の環境から観測された画像の観測系列をモデルの学習に用いることとして、説明を行う。
さらに、以下の説明では、観測モデルの実装として、画像のテンプレートを用いるが、観測モデルとしては、その他、例えば、画像の局所特徴量等を採用することが可能である。
[第1章 環境設定]
図2は、本技術が適用される環境の例を説明する図である。
図2では、2次元平面としての環境に、L字型の物体と、エージェントのハンドとが置かれている。
エージェントのハンドは、腕に相当するアームの先端に取り付けられており、エージェントが、アームを動かすことによって、そのアームの先端に取り付けられたハンドも動く。したがって、ハンドは、エージェントが自律的に動かすことができる。
一方、L字型の物体は、自律的に動くことはなく、ハンド等の外部から力が加えられたときに、その加えられた力に従って動く。
エージェントでは、カメラによって環境が撮影され、背景として、環境が映り、その背景に重なる前景として、位置や姿勢を変化させながら動くL字型の物体、及び、ハンドが映った画像が観測される。
なお、図2では、2次元の環境を図示してあるが、上述したように、本技術は、3次元の環境にも適用することができる。
また、図2では、エージェントにおいて観測される画像には、L字型の物体に対応する前景と、ハンドに対応する前景との2つの前景が存在するが、画像に存在する前景は、1つであってもよいし、3つ以上であってもよい。
本技術では、画像に存在する前景のうちのi番目の前景#iについて、時刻tでの重心(慣性質量の重心)の位置や姿勢等の状態をzi tと、運動モデルをaiと、移動等のために時刻tに前景が行ったアクション、又は、前景に加えられたアクションをui tと、それぞれ表す。
また、画像の背景を表すモデルを、背景モデルというとともに、画像の前景#iを表すモデルを、前景モデル#iともいう。
前景モデル#iは、前景#iの見えのモデルである前景見えモデルμiを含む。
前景見えモデルμiは、前景#iのテクスチャを表す前景テクスチャモデルτiと、前景#iの形状を表す前景形状モデルσiとを含み、式(1)で表現される。
Figure 2013191163
・・・(1)
背景モデルは、背景の見えのモデルである背景見えモデルμwを含む。
背景見えモデルμwは、背景全体のテクスチャを表す背景テクスチャモデルτwを含み、式(2)で表現される。
Figure 2013191163
・・・(2)
本技術では、画像の観測値を生成する生成モデルが、以上のような前景モデル#i、及び、背景モデルを含み、各時刻tの画像の観測値(以下、観測画像ともいう)xtを生成する。
図3は、前景モデル#i、及び、背景モデル、並びに、前景モデル#i、及び、背景モデルを含む生成モデルにおいて生成される観測画像xtの例を示す図である。
前景モデル#iにおいて、前景見えモデルμiの前景テクスチャモデルτiと前景形状モデルσiとは、例えば、同一のサイズの画像であり、そのサイズとしては、前景のサイズとして想定される最大のサイズを採用することができる。
前景テクスチャモデルτiとしての画像は、前景#iのテクスチャとしての値(例えば、RGB等)を、各画素(ピクセル、ボクセル)の画素値として有する。
前景形状モデルσiとしての画像は、例えば、0ないし1の範囲の連続値を、各画素の画素値として有する。前景形状モデルσiの各画素の画素値は、その画素が、前景(が映っている画素)である確率を表す。
いま、同一位置の画素の画素値どうしの積を、*で表すこととすると、前景見えモデルμiに含まれる前景テクスチャモデルτiと、前景形状モデルσiとの同一位置の画素の画素値どうしの積τiiによって、前景#iの見えが表現される。
図3では、2つの前景見えモデルμ1及びμ2が、背景見えモデルμw=τwに重畳され、観測画像xtが生成されている。
図4は、前景#iの状態zi tを説明する図である。
前景#iの状態zi tについては、環境(背景)における前景#iの、いわば絶対的な状態を表現するための座標系としての世界座標系Oと、世界座標系O上での前景#iの状態によらず、前景モデル(前景見えモデル)における前景の状態を表現するための座標系としてのローカル座標系O'が定義される。ローカル座標系O'は、前景モデルごとに定義される。
世界座標系Oとしては、例えば、背景見えモデルμw=τwの上から下方向をs1軸とし、左から右方向をs2軸とするとともに、背景見えモデルμw=τwの左上の点を原点とする2次元座標系を採用することができる。
ローカル座標系O'としては、例えば、前景見えモデルμ(前景テクスチャモデルτi、前景形状モデルσi)の上から下方向をr1軸とし、左から右方向をr2軸とするとともに、前景見えモデルμの左上の点を原点とする2次元座標系を採用することができる。
なお、ローカル座標系O'は、デフォルト(例えば、t=0)では、例えば、r1軸がs1軸と平行で、r2軸がs2軸と平行になっていることとする。図4において、点線の2次元座標系は、デフォルトのローカル座標系O'を表している。
前景#iの状態zi tは、例えば、時刻tの前景#i(前景見えモデルμi)の質量重心の世界座標系O上の位置si t、位置si tの変化の速度s・i t、前景#iの姿勢qi t、姿勢qi tの変化の速度q・i tを含み、式(3)で表現される。
Figure 2013191163
・・・(3)
ここで、前景#iの姿勢qi tとしては、例えば、世界座標系Oの軸s1(s2)に対して、ローカル座標系O'の軸r1(r2)がなす角度(回転角)を採用することができる。
図5は、前景#iの運動モデルaiを説明する図である。
運動モデルaiは、前景#iの質量重心のローカル座標系O'上の位置ri c、前景#iの並進成分の運動(並進運動)の性質を決定する質量(慣性質量)mi、及び、前景の回転成分の運動(回転運動)の性質を決定する重心回りの慣性モーメンIi cを含み、式(4)で表現される。
Figure 2013191163
・・・(4)
図6は、前景#iのアクションui tを説明する図である。
前景#iのアクションui tは、時刻tにおいて、前景#iに力が加えられたローカル座標系O'上の位置(作用点)ri Fと、その位置ri Fに加えられた力Fiとを含み、式(5)で表現される。
Figure 2013191163
・・・(5)
なお、時刻tに前景#iとして観測される画像の観測値xi tは、時刻tに生成モデルにおいて観測される画像の期待値λtを用いて、式(6)で表現される。
Figure 2013191163
・・・(6)
[第2章 前景モデル、及び、背景モデルの学習]
[第2.1節 生成モデルのフレームワーク]
図7は、本技術の、観測画像を生成する生成モデルのグラフィカルモデルの例を示す図である。
図7は、2つの前景#1及び#2が存在する画像の生成モデルのグラフィカルモデルを示している。
図7の生成モデルによれば、前景#1の時刻tの状態z1 tが、前景#1の運動モデルa1、直前の時刻t-1の状態z1 t-1、及び、直前の時刻t-1の前景#1のアクションu1 t-1によって決定される。
同様に、前景#2の時刻tの状態z2 tが、前景#2の運動モデルa2、直前の時刻t-1の状態z2 t-1、及び、直前の時刻t-1の前景#2のアクションu2 t-1によって決定される。
そして、生成モデルでは、前景見えモデルμ1(としての画像)が、前景#1の時刻tの状態z1 tに従って、背景見えモデルμw(としての画像)に重畳されるとともに、前景見えモデルμ2(としての画像)が、前景#2の時刻tの状態z2 tに従って、背景見えモデルμwに重畳されることで、時刻tに観測される観測画像xtが生成される。
図7において、関数f()は、前景見えモデルμ1、前景#1の時刻tの状態z1 t、前景見えモデルμ2、前景#2の時刻tの状態z2 t、及び、背景見えモデルμwを用いて、観測画像xtを生成する関数であり、生成モデルを表す。
ここで、生成モデルにおいて生成される時刻tの観測画像xtは、確率変数(観測値の期待値)であり、観測画像xtの尤度は、実際に観測される画像の観測値x~tとの比較によって求めることができる。
また、前景#iのアクションui tは、エージェントにおいて観測可能な決定的パラメータであることとする。前景#iがエージェントのハンドである場合には、エージェントは、自分の身体の一部であるハンドのアクションは知覚できるべきであるし、前景#iが、操作対象の物体である場合には、エージェントは、ハンドに接触する操作対象の物体のアクションを反作用として知覚することができるべきであるからである。
前景見えモデルμi、背景見えモデルμw、及び、前景#iの状態zi、さらには、必要に応じて、運動モデルaiが、本技術において、画像の観測値を生成する生成モデルのパラメータであり、学習によって求められる。
また、前景#iの状態ziは、時々刻々変化する潜在変数であり、運動モデルai、前景見えモデルμi、及び、背景見えモデルμwは、時刻によらない恒久的なパラメータ(モデルパラメータ)である。
なお、前景の総数をNで表すこととする。図7では、前景の総数Nを、2としてあるが、前景の総数Nとしては、1や3以上の値を採用することができる。
生成モデルにおいて生成される観測画像xtは、潜在変数としての前景#iの状態zi t、並びに、モデルパラメータとしての前景見えモデルμi t、及び、背景見えモデルμwによって決定されるので、生成モデルとしての関数f()を用いた式(7)で表現することができる。
Figure 2013191163
・・・(7)
[第2.2節 EMアルゴリズム]
図8は、EMアルゴリズムを説明するフローチャートである。
図7で示した生成モデルのような、潜在変数(zi t)を有するモデルについて、実際に観測される観測値を用いて、モデルパラメータの最尤解を求める方法としては、例えば、EM(Expectation-Maximization)アルゴリズムがある。
いま、すべての観測値の集合をXと、潜在(隠れ)変数の集合をZと、それぞれ表すこととする。
観測値Xの観測において、潜在変数Zは観測することができないが、これらの観測値Xと潜在変数Zの集合{X,Z}は、完全データと呼ばれ、観測値Xは、不完全データと呼ばれる。
完全データ{X,Z}は、確率分布であるモデルによってモデル化することができることとし、そのモデル(のモデルパラメータ)を、 θと表すこととする。
モデルθにおいて、観測値Xが観測される対数尤度ln(p(X|θ))は、モデルθにおいて、完全データ{X,Z}が観測される尤度p(X,Z|θ)を、潜在変数Zで周辺化し、対数をとることにより求めることができ、式(8)で表される。
Figure 2013191163
・・・(8)
ここで、lnは、自然対数を表す。
また、以降において、潜在変数Zについての総和(Σ)を、積分に置き換えることで、潜在変数Zが連続値である場合についても、同一の議論が成立する。
観測することができるのは、不完全データXだけであり、完全データ{X,Z}のすべてを観測することはできない。したがって、完全データ{X,Z}の尤度(関数)p(X,Z|θ)を用いることはできないため、EMアルゴリズムでは、代わりに、潜在変数Zに関する事後確率の期待値を考える。
潜在変数Zに関する事後確率の期待値を考えるプロセスが、EMアルゴリズムのEステップである。
EMアルゴリズムでは、モデルθにおいて、観測値Xが観測されたときの、潜在変数Zの事後分布p(Z|X,θ)の計算に、現在のモデルパラメータθoldが用いられ、この事後分布p(Z|X,θold)が、任意のモデルパラメータθにおいて、完全データ{X,Z}が観測される対数尤度(以下、完全データ対数尤度ともいう)ln(p(X,Z|θ))の期待値Q(θ,θold)の計算に用いられる。
したがって、期待値Q(θ,θold)は、式(9)で表される。
Figure 2013191163
・・・(9)
式(9)では、完全データ対数尤度ln(p(X,Z|θ))の期待値Q(θ,θold)が、完全データ対数尤度ln(p(X,Z|θ))の確率分布として、事後分布p(Z|X,θold)を用いて計算される。
EMアルゴリズムでは、Eステップで、以上のようにして、期待値Q(θ,θold)が求められた後、Mステップにおいて、式(10)に従い、期待値Q(θ,θold)を最大化するように、モデルパラメータθが、現在のモデルパラメータθoldから新しいモデルパラメータθnewに更新される。
Figure 2013191163
・・・(10)
ここで、式(10)argmaxは、Q(θ,θold)を最大にするモデルパラメータθを表す。
なお、最初のEステップが行われる前に、モデルパラメータθ=θoldは、例えば、乱数等によって適当な値に初期化される。
図8を参照して、EMアルゴリズムについて、さらに説明する。
EMアルゴリズムでは、ステップS11において、モデルパラメータθが、適当な初期値θoldに初期化され、処理は、ステップS12に進む。
ステップS12では、Eステップの処理が行われ、処理は、ステップS13に進む。すなわち、ステップS12では、不完全データXを用いて、事後分布p(Z|X,θold)が求められる。
ステップS13では、Mステップの処理が行われ、処理は、ステップS14に進む。すなわち、ステップS13では、事後分布p(Z|X,θold)を用いて求められる、完全データ対数尤度ln(p(X,Z|θ))の期待値Q(θ,θold)を最大化するように、新たなモデルパラメータθnewが求められる。
ステップS14では、EMアルゴリズムを終了する所定の収束条件が満たされているかどうかが判定される。
ここで、EMアルゴリズムを終了する収束条件としては、例えば、Eステップ及びMステップを、所定回数だけ繰り返したことや、新たなモデルパラメータθnewが、直前のモデルパラメータθoldからほとんど変化しなくなったこと、新たなモデルパラメータθnewにおいて観測される観測値Xの尤度が、直前のモデルパラメータθoldにおいて観測される観測値Xの尤度からほとんど変化しなくなったこと等を採用することができる。
ステップS14において、収束条件が満たされていないと判定された場合、処理は、ステップS15に進み、モデルパラメータθが、現在のモデルパラメータθoldから新しいモデルパラメータθnewに更新される。
そして、処理は、ステップS15からステップS12に戻り、以下、同様の処理が繰り返される。
また、ステップS14において、収束条件が満たされていると判定された場合、処理は終了する。
[第2.3節 パーティクルフィルタによる近似]
図9は、完全データ{X,Z}を表現するモデルθのグラフィカルモデルの例を示す図である。
図9では、観測値Xの系列x1,x2,・・・,xt+1が、潜在変数Zの連鎖z1,z2,・・・,zt+1で表されている。そして、各観測値xtは、対応する潜在変数ztの値(状態)によって条件付けられる。
モデルθが、EMアルゴリズムのEステップを解析的に計算することが困難なモデルである場合には、数値的サンプリング(モンテカルロサンプリング)に基づく近似推論法を用いてEステップを計算することができる。
モンテカルロサンプリングについては、例えば、C.M. ビショップ, パターン認識と機械学習 下 ベイズ理論による統計的予測, シュプリンガー・ジャパン, 2008, pp.364-365や、Michael Isard and Andrew Blake, CONDENSATION - conditional density propagation for visual tracking, Int. J. Computer Vision, 29, 1, 5-28, 1998等に記載されている。
潜在変数Zが連続値である場合の、完全データ対数尤度ln(p(X,Z|θ))の期待値Q(θ,θold)は、式(9)のサメーション(Σ)を積分に置き換えた式(11)で表される。
Figure 2013191163
・・・(11)
式(11)の期待値Q(θ,θold)は、サンプリング法を用い、現在の事後分布p(Z|X,θold)からサンプリングされた潜在変数ZのL個のサンプルZ(l)(l=1,2,・・・,L)の有限和によって、式(12)に示すように近似することができる。
Figure 2013191163
・・・(12)
式(12)に従って求められる期待値Q(θ,θold)については、通常のMステップで最適化することができる(期待値Q(θ,θold)を最大化するモデルパラメータθ=θnewを求めることができる)。
以上のように、式(12)に従って求められる期待値Q(θ,θold)を最大化するモデルパラメータθ=θnewを求めるEMアルゴリズムは、モンテカルロEMアルゴリズムと呼ばれる。
一方、観測値Xの系列x1,x2,・・・,xtに対して、逐次的にサンプリングを行う手法として、パーティクルフィルタと呼ばれる逐次モンテカルロアルゴリズムがある。
図10は、パーティクルフィルタを説明する図である。
パーティクルフィルタでは、例えば、図9で示されるグラフィカルモデルで表現されるモデルθにおいて、時刻t-1までに、観測値Xの系列Xt={x1,x2,・・・,xt-1}が観測され、時刻tに、状態ztにいる(状態ztになっている)事後分布p(zt|Xt-1)から、L個の状態z(l) t(z(1) t,z(2) t,・・・,z(L) t)がサンプリングされる。このサンプリングされたサンプル(ここでは、状態z(l) t)が、パーティクルと呼ばれる。
時刻tの状態ztにおいて、図7及び式(7)の生成モデルとしての関数f()に従って観測される観測値xt=f(zt)の期待値E[f(zt)]は、状態ztのパーティクル(状態パーティクル)z(l) tを用いて、式(13)で近似することができる。
Figure 2013191163
・・・(13)
ここで、w(l) tは、パーティクルz(l) tの重みを表す。重みw(l) tは、(パーティクルとしての)状態z(l) tにおいて、観測値xtが観測される(観測)尤度p(xt|z(l) t)に対応する値であり、式(14)で定義される。
Figure 2013191163
・・・(14)
なお、重みw(l) tは、式0≦w(l) t≦1で表される範囲内の値であり、式w(1) t+w(2) t+・・・+w(L) t=1を満たす。
いま、時刻tに、L個のパーティクルz(1) tないしz(L) tと、重みw(1) tないしw(L) tとが得られている場合において、時刻t+1に、観測値xt+1を観測したとき、時刻tまでに、観測値の系列Xt={x1,x2,・・・,xt}が観測され、時刻t+1に、状態zt+1にいる事後分布p(zt+1|Xt)は、時刻tに状態z(l) tにいて、時刻t+1に状態zt+1に遷移する遷移確率p(zt+1|z(l) t)と、パーティクルz(l) tの重みw(l) tとを用い、式(15)で求めることができる。
Figure 2013191163
・・・(15)
式(15)の事後分布p(zt+1|Xt)は、重みw(l) tを、混合係数とする混合分布であり、パーティクルフィルタでは、混合係数としての重みw(l) tに対応する確率で、パーティクルz(l) tを選択するリサンプリングが行われる。
図10を参照して、パーティクルフィルタについて、さらに説明する。
パーティクルフィルタでは、時刻t-1までに、観測値Xの系列Xt-1={x1,x2,・・・,xt-1}が観測され、時刻tに、状態ztにいる事後分布p(zt|Xt-1)が、L個のパーティクルz(1) t-1ないしz(L) t-1、及び、重みz(1) t-1ないしz(L) t-1によってサンプル表現される。
ここで、図10では、パーティクルz(l) tの個数Lが、5個になっている。
パーティクルフィルタでは、次の時刻tのサンプル表現を求めるために、式(15)の混合分布(事後分布)p(zt|Xt-1)の遷移確率(zt|z(l) t-1))に基づき、時刻t-1のL個のパーティクルz(1) t-1ないしz(L) t-1の次の時刻tの遷移先を算出すること、すなわち、次の時刻tのL個のパーティクルz(1) tないしz(L) tを予測(生成)することが行われる。
ここで、図10において、丸印は、パーティクルを表している。また、パーティクルを表す丸印の中の数字は、そのパーティクルとしての状態z(l) tの値の例を示している。
図10では、例えば、時刻t-1のパーティクルとしての状態z(5) t-1を表す丸印の数字は、5.0になっているが、その時刻t-1のパーティクルとしての状態z(5) t-1から、遷移確率p(zt|z(5) t-1)に基づいて予測された時刻tのパーティクルとしての状態z(5) tを表す丸印の数字は、5.4になっている。
次の時刻tのL個のパーティクルz(1) tないしz(L) tが予測された後、パーティクルフィルタでは、時刻tの観測値xtを用い、パーティクルz(l) tにおいて、観測値xtが観測される観測尤度p(xt|z(l) t)が計算される。
さらに、パーティクルフィルタでは、観測尤度p(xt|z(l) t)を用い、式(14)に従って、パーティクルz(l) tの重みw(l) tが求められる。図10では、重みw(l) tを表す丸印が、その重みw(l) tの値に相当する大きさで、図示されている。
その後、パーティクルフィルタでは、重みw(l) tに対応する確率で、パーティクルz(l) tがリサンプリングされる。
そして、パーティクルフィルタでは、そのリサンプリングされたパーティクルz(l) tを、重みw(l) tとともに、時刻tまでに観測値Xの系列Xt={x1,x2,・・・,xt}が観測され、時刻t+1に状態zt+1にいる事後分布p(zt+1|Xt)のサンプル表現として用いて、同様の処理が繰り返される。
なお、リサンプリングでは、重みw(l) tに対応する確率で、パーティクルz(l) tがサンプリングされるので、重みw(l) tが小さいために、一度もサンプリングされないパーティクルz(l) tは消滅する。
また、リサンプリングでは、重みw(l) tが大きいパーティクルz(l) tは、複数回、サンプリングされることがあるが、その場合、パーティクルz(l) tと同一の値(状態)のパーティクルが、サンプリングの回数と同一の個数だけ複製される。
以上のように、リサンプリングでは、パーティクルz(l) tと同一の値Vの複数のパーティクルが生じることがあるが、その複数のパーティクルそれぞれの値は、式(15)の遷移確率p(zt+1|z(l) t)に基づいて、次の時刻tのパーティクルの予測(遷移先の算出)が行われるときに、同一の値Vの周辺に散らばって、異なる値となる。
ここで、重みw(l) tに対応する確率で、パーティクルz(l) tをサンプリングするリサンプリングの方法としては、例えば、ルーレット法や、等間隔サンプリングと呼ばれる方法等がある。
図11は、ルーレット法を説明する図である。
ルーレット法では、0ないし1の範囲が、L個の重みw(1) t,w(2) t,・・・,w(L) tに、順番に割り当てられる。重みw(l) tには、0ないし1の範囲のうちの、重みw(l) tの大きさに比例する幅が割り当てられる。
そして、ルーレット法では、0ないし1の範囲内の値を、乱数によってサンプリングし、そのサンプリングされた値が割り当てられている重みw(l) tに対応するパーティクルを複製することが、サンプリングの回数がパーティクルの総数Lと同一になるまで繰り返される。
図12は、等間隔サンプリングを説明する図である。
等間隔サンプリングでは、ルーレット法と同様に、0ないし1の範囲が、L個の重みw(1) t,w(2) t,・・・,w(L) tに割り当てられる。
そして、等間隔サンプリングでは、0ないし1の範囲内の値が、乱数によってサンプリングされ、そのサンプリングされた値が割り当てられている重みw(l) tに対応するパーティクルが複製される。
その後、等間隔サンプリングでは、0ないし1の範囲内の値のうちの、直前にサンプリングされた値に所定の値を加算した値をサンプリングし、そのサンプリングされた値が割り当てられている重みw(l) tに対応するパーティクルを複製することが、サンプリングの回数がパーティクルの総数Lと同一になるまで繰り返される。
なお、直前にサンプリングされた値に所定の値を加算した値が、1を超える場合には、その値の小数点以下の値がサンプリングされる。
ルーレット法では、L個の乱数を計算する必要があるのに対して、等間隔サンプリングでは、1個の乱数を計算するだけで済むので、等間隔サンプリングは、ルーレット法に比較して、乱数の計算コストが小さい。
[第3章 具体的な実装]
[第3.1節 生成モデルの実装]
図13は、前景モデル#i、及び、背景モデルを用いて、観測画像を生成する生成モデルθ、すなわち、式(7)の関数f()の実装の例を示す図である。
生成モデルでは、背景見えモデルμw上に、状態z1 tが表す位置si tと姿勢qi tで、前景見えモデルμiが重畳される。
背景見えモデルμwへの前景見えモデルμi tの重畳では、背景見えモデルμwとしての背景テクスチャモデルτw(が表すテクスチャ)と、前景見えモデルμiの前景テクスチャモデルτiとが、前景見えモデルμiの前景形状モデルσiを、α値として用いて、αブレンディングされる。
例えば、いま、1番目の前景#1だけが、観測画像xtに存在することとすると、モデルパラメータ(前景見えモデルμi、背景見えモデルμw、及び、前景#iの状態zi、並びに、必要な運動モデルai)が求められた生成モデルにおいて観測される、1つの前景#1だけが存在する観測画像xtの期待値λ1(z1 t,μ1,μw)は、式(16)で表される。
Figure 2013191163
・・・(16)
ここで、σ1(r1)は、前景形状モデルσ1のローカル座標系O'上の点r1の画素値を表し、τ1(r1)は、前景テクスチャモデルτ1のローカル座標系O'上の点r1の画素値を表す。さらに、τw(r'1 t)は、背景テクスチャモデルτwの世界座標系O上の点r'1 tの画素値を表す。
また、ローカル座標系O'上の点riに、ダッシュ(')と、時刻のインデクスtを付した点r'i tは、時刻tのローカル座標系O'上の点riに対応する世界座標系O上の点(対応点)を表す。
例えば、世界座標系Oの原点回りに、ローカル座標系O'を、角度Bだけ回転した場合の、ローカル座標系O'上の点Aを、世界座標系O上の対応点に写像する写像関数を、R(A,B)と表すこととすると、ローカル座標系O'上の点riの、世界座標系O上の対応点r'i tは、写像関数R()を用いて、式(17)で表される。
Figure 2013191163
・・・(17)
式(16)によれば、ローカル座標系O'上の点r1が、前景見えモデルμ1(前景テクスチャモデルτ1、又は、前景形状モデルσ1としての画像)上の点である場合(r1∈μ1)、その点r1の対応点r'1 tの画素値λ1 t(r'1)としては、背景テクスチャモデルτwの対応点r'1 tの画素値τw(r'1 t)と、前景テクスチャモデルτ1の点r1の画素値τ1(r1)とを、前景形状モデルσ1の点r1の画素値σ1(r1)を、α値として用いてαブレンディングした値(1-σ1(r1))τw(r'1 t)+σ1(r11(r1)が採用される。
さらに、式(16)によれば、ローカル座標系O'上の点r1が、前景見えモデルμ1上の点でない場合、その点r1の対応点r'1 tの画素値λ1 t(r'1 t)としては、背景テクスチャモデルτwの対応点r'i tの画素値τw(r'1 t)が採用される。
観測画像xtに、複数の前景が存在する場合(前景モデルが複数存在する場合)、複数の前景それぞれについて、1番目の前景#1だけが観測画像xtに存在する場合と同様の処理を繰り返し行うことにより、生成モデルにおいて観測される、複数の前景が存在する観測画像xtの期待値を求めることができる。
但し、観測画像xtに、複数の前景が存在する場合、2番目以降の前景については、背景テクスチャモデルτw(背景見えモデルμw)に代えて、直前の前景について求められた観測画像xtの期待値が用いられる。
したがって、例えば、いま、2つの前景#1及び#2が、観測画像xtに存在することとすると、図13に示すように、まず、生成モデルにおいて観測される、1番目の前景#1だけが存在する観測画像xtの期待値λ1(z1 t,μ1,μw)が、式(16)に従って求められる。
そして、1番目の前景#1、及び、2番目の前景#2が存在する観測画像xtの期待値λ1,2(z1 t,z2 t,μ1,μ2,μw)が、図13に示すように、背景テクスチャモデルτwに代えて、式(16)の前景#1について求められた観測画像xtの期待値λ1(z1 t,μ1,μw)を用い、観測画像xtの期待値λ1(z1 t,μ1,μw)と同様にして求められる。
すなわち、1番目の前景#1、及び、2番目の前景#2が存在する観測画像xtの期待値λ1,2(z1 t,(z2 t,μ1,μ2,μw)は、式(18)に従って求められる。
Figure 2013191163
・・・(18)
ここで、λ1,2 t(r'2 t)は、1番目の前景#1、及び、2番目の前景#2が存在する観測画像xtの期待値λ1,2(z1 t,(z2 t,μ1,μ2,μw)としての画像の画素値のうちの、(前景#2の)ローカル座標系O'上の点r2の、世界座標系O上の対応点r'2 tの画素値を表す。
3個以上のN個の前景が存在する場合も、同様にして、そのN個の前景が存在する観測画像xtの期待値λ1(z1 t,z2 t,・・・,zN t,μ1,μ2,・・・,μN,μw)を求めることができる。
[第3.2節 前景が1つだけ存在する場合の前景の状態の推定(Eステップ)]
前景が1つだけである場合の、第2.3節で説明したパーティクルフィルタを用いたEステップの具体的な実装について説明する。
なお、ここでは、前景が1つだけであるため、i番目の前景を表すインデクスiの記載は、省略する。
EMアルゴリズムのEステップでは、前回のMステップで更新されたモデルパラメータθ=θoldを用いて、潜在変数Zの事後分布p(Z|X,θold)が求められ、この事後分布p(Z|X,θold)を用いて、完全データ対数尤度ln(p(X,Z|θ))の期待値Q(θ,θold)が、式(9)に従って計算される。
このEステップに、パーティクルフィルタを適用した場合には、時刻tまでに、観測値Xの系列Xt={x1,x2,・・・,xt}が観測されたときの、時刻t+1の潜在変数zt+1の事後分布p(zt+1|Xt)は、式(15)に従って計算することができる。
ここで、式(14)によれば、式(15)の重みw(l) tは、パーティクルとしての状態z(l) tにおいて、観測値xtが観測される観測尤度p(xt|z(l) t)に比例する。
したがって、重みw(l) tを求めるには、観測尤度p(xt|z(l) t)を求める必要がある。
本技術では、前景の状態が、パーティクルとしての状態z(l) tになっていると仮定して、そのパーティクルとしての状態z(l) tに従って、生成モデルにおいて観測される観測画像xtの期待値λtが生成される。
そして、本技術では、生成モデルにおいて観測される観測画像xtの期待値λtの、実際に観測される画像λ~tに対する誤差(期待値λtと画像λ~tとの距離)が、観測尤度p(xt|z(l) t)として求められる。
すなわち、本技術では、観測尤度p(xt|z(l) t)は、例えば、式(19)に従って求められる。
Figure 2013191163
・・・(19)
なお、λt(s)は、生成モデルθにおいて観測される時刻tの観測画像xtの期待値λtである画像の、世界座標系O上の点sの画素値を表し、λt~(s)は、時刻tに実際に観測される画像λ~tの、世界座標系O上の点sの画素値を表す。
また、式(19)において、K及びσ2は、所定の定数であり、あらかじめ決定される。
一方、時刻tのパーティクルとしての状態z(l) tが、次の時刻t+1に、状態zt+1になる確率、すなわち、パーティクルとしての状態z(l) tの遷移確率p(zt+1|z(l) t)が、ガウス分布(正規分布)に従うこととすると、パーティクルとしての状態z(l) tの遷移モデルは、例えば、式(20)で表すことができる。
Figure 2013191163
・・・(20)
ここで、△tは、時刻tと次の時刻t+1との間の間隔(時間)を表し、N(A,B)は、平均ベクトル(平均値)がAで、分散共分散行列(分散)がBのガウス分布を表す。
式(20)では、ガウス分布N(0,Σs),N(0,Σs・),N(0,Σq),N(0,Σq・)は、いずれも、平均ベクトルが0のガウス分布である。また、分散共分散行列Σs,Σs・,Σq,Σq・は、あらかじめ決定される。
式(20)の遷移モデルによれば、パーティクルとしての状態が、1時刻前の時刻tの状態としての位置st及び姿勢qt、並びに、その1回微分値(速度)s t及びq tに従って決定的に遷移する成分を有しつつ、平均ベクトルが0で、所定の分散共分散行列のガウス分布に従って、確率的に揺らぎながら遷移することとして、時刻t+1の状態zt+1が求められる(予測される)(遷移先が算出される)。
ここで、式(20)の遷移モデルは、前景の運動が、剛体運動の動力学モデルに従うことを考慮していない。
前景の運動が、剛体運動の動力学モデルに従うことを考慮する場合には、パーティクルとしての状態z(l) tの遷移モデルは、前景の運動モデルaと、前景のアクションutとを用い、例えば、式(21)で表すことができる。
Figure 2013191163
・・・(21)
ここで、γ及びφは、それぞれ、前景のアクションut(式(5))のコンポーネントになっている力Fが、同じく、前景のアクションutのコンポーネントになっている前景の位置rFに加えられた場合の、前景の重心rcの位置での並進力、及び、重心rc回りのトルクを表す。
並進力γは、前景のアクションutのコンポーネントになっている力Fに等しい。トルクφは、前景のアクションutのコンポーネントになっている力F、前景のアクションutのコンポーネントになっている前景の位置rF、及び、前景の運動モデルaのコンポーネントになっている前景の重心(の位置)rcとを用い、式φ=(rF-rc)×Fに従って求めることができる。
また、式(21)において、m及びICは、前景の運動モデルa(式(4))のコンポーネントになっている前景(に対応する物体の)質量m、及び、重心回りの慣性モーメントICを表す。
式(21)の遷移モデルは、前景の運動が、剛体運動の動力学モデルに従うことを考慮しているので、前景の状態の遷移(変化)を、厳密に表現することができる。
前景が背景上を連続的に移動することを、前提知識として仮定することができる場合、すなわち、前景の状態が環境中を連続的に変化することを仮定することができる場合には、前の時刻の情報を基に、運動モデルによって決定的に次の時刻の状態を予測しつつ、ガウス分布のノイズによって近傍をランダムに探索するという、式(20)や式(21)の遷移モデルが前提とする事前知識が有効に機能する。
その結果、パーティクルのリサンプリングの過程で、前景がなる可能性が低い状態に対する状態推定の計算を省くことができ、例えば、環境としての背景を格子状に区切って、すべての格子点について、その格子点の位置に、前景がいるかどうかを推定するような方法に比較して、スケーラビリティを大きくすることができる。
[第3.3節 複数の前景が存在する場合の前景の状態の推定(Eステップ)]
複数の前景が存在する場合の、第2.3節で説明したパーティクルフィルタを用いたEステップの具体的な実装について説明する。
複数の前景が存在する場合、前景#iごとに、その前景#iの状態zi tが存在する。前景#iの状態zi tのl番目のパーティクルを、zi(l) tと表す。また、パーティクルzi(l) tの重みを、wi(l) tと表す。
本技術では、生成モデルで観測される観測画像xt(の期待値λt)は、式(16)ないし式(18)で説明したように生成される。
パーティクルフィルタにおいてパーティクルの重みwi(l) tを求める式(14)の計算に必要な観測尤度p(xt|zi(l) t)を計算するためには、注目している前景#iについては、重みwi(l) tを求めようとするパーティクルとしての状態zi(l) tを用い、かつ、注目している前景#i以外の前景については、その前景の状態のパーティクルの分布と、各パーティクルの重みとを用い、生成モデルで観測される観測画像xtの期待値λtを計算する必要がある。
しかしながら、注目している前景#iの状態zi tのパーティクルzi(l) tの他に、注目している前景#i以外の前景の状態のパーティクルの分布、及び、各パーティクルの重みをも用いて、生成モデルで観測される観測画像xtの期待値λtを計算するのでは、計算コストが大になる。
そこで、本実施の形態では、複数の前景について、独立に、すなわち、注目している前景#i以外の前景を考慮せずに、注目している前景#iだけが、背景上に存在することと仮定することにより、実用上問題ない範囲で厳密性を犠牲にしつつ、計算の高速化を実現する。
注目している前景#iだけが、背景上に存在することを仮定した場合、注目している前景#iが、パーティクルとしての状態zi(l) tになっているときの観測尤度p(xi t|zi(l) t)は、式(22)に従って計算することができる。
Figure 2013191163
・・・(22)
なお、λi t(s)は、注目している前景#iだけが、背景上に存在することを仮定した場合に生成モデルθにおいて観測される時刻tの観測画像xtの期待値λi tである画像の、世界座標系O上の点sの画素値を表す。
また、式(22)において、λt~(s)は、式(19)の場合と同様に、時刻tに実際に観測される画像λ~tの、世界座標系O上の点sの画素値を表す。
さらに、式(22)において、K及びσ2は、式(19)の場合と同様に、所定の定数であり、あらかじめ決定される。
注目している前景#iだけが、背景上に存在することを仮定した場合に生成モデルθにおいて観測される時刻tの観測画像xtの期待値λi t=λi(zi t,μi,μw)は、式(23)に従って求めることができる。
Figure 2013191163
・・・(23)
ここで、σi(ri)は、前景形状モデルσiのローカル座標系O'上の点riの画素値を表し、τi(ri)は、前景テクスチャモデルτiのローカル座標系O'上の点riの画素値を表す。さらに、τw(r'i t)は、背景テクスチャモデルτwの世界座標系O上の点r'i tの画素値を表す。
また、ローカル座標系O'上の点riに、ダッシュ(')と、時刻のインデクスtを付した点r'i tは、式(16)で説明したように、時刻tのローカル座標系O'上の点riに対応する世界座標系O上の点(対応点)を表し、式(17)に従って求められる。
[第3.4節 前景テクスチャモデルの更新(Mステップ)]
第2.3節で説明したパーティクルフィルタを用いたEステップで行われる前景テクスチャモデルτiの更新の具体的な実装について説明する。
EMアルゴリズムのMステップでは、Eステップで潜在変数Zの事後分布p(Z|X,θold)を用いて計算される完全データ対数尤度ln(p(X,Z|θ)の期待値Q(θ,θold)を最大化するように、モデルパラメータθが、現在のモデルパラメータθoldから新しいモデルパラメータθnewに更新される。
このMステップに、パーティクルフィルタを適用した場合には、モデルパラメータθは、Eステップで求められたパーティクルの重みwi(l) tを用いて更新される。
図14は、パーティクルの重みwi(l) tを用いた前景テクスチャモデルτiの更新を説明する図である。
前景テクスチャモデルτiの更新では、時刻tにおいて、その時刻tの1時刻分の更新データτ~i tを求めるために、図14に示すように、前景#iの状態が、パーティクルとしての状態zi(l) tになっていることとして、その状態zi(l) tになっている前景#iと推定される領域の画像を、時刻tに実際に観測される画像(の観測値)λ~tから切り出し、前景#iのローカル座標系O'上に射影する。
ここで、時刻tに実際に観測される画像(以下、実画像ともいう)λ~tから切り出され、前景#iのローカル座標系O'上に射影された画像を、切り出し画像τ~i(l) tともいう。
切り出し画像τ~i(l) tは、前景テクスチャモデルτi(及び、前景形状モデルσi)と同一サイズの画像であり、式(24)で表される。
Figure 2013191163
・・・(24)
ここで、τ~i(l) t(s'i(l) t)は、切り出し画像τ~i(l) tのローカル座標系O'上の点s'i(l) tの画素値を表し、λ~t(s)は、実画像λ~tの世界座標系O上の点sの画素値を表す。
また、世界座標系O上の点sに、ダッシュ(')、前景のインデクスi、パーティクルのインデクス(l)、及び、時刻のインデクスtを付した点s'i(l) tは、世界座標系O上の点sに対応する前景#iのローカル座標系O'上の点(対応点)を表す。
世界座標系O上の点sの、前景#iのローカル座標系O'上の対応点s'i(l) tは、式(17)で説明した写像関数R(A,B)を用いることにより、式(25)で表される。
Figure 2013191163
・・・(25)
なお、式(25)では、パーティクルのインデクス(l)を省略してある。
式(24)によれば、世界座標系O上の点sの、ローカル座標系O'上の対応点s'i(l) tが、時刻tにおいて、前景見えモデルμi(前景テクスチャモデルτi、又は、前景形状モデルσiとしての画像)上の点である場合(s'i(l) t∈μi)、実画像λ~tの点sの画素値λ~t(s)が、切り出し画像τ~i(l) tの対応点s'i(l) tの画素値τ~i(l) t(s'i(l) t)として採用される。
前景テクスチャモデルτiの更新では、前景#iのL個のパーティクルzi(1) t,zi(2) t,・・・,zi(L) tについて、切り出し画像τ~i(1) t,τ~i(2) t,・・・,τ~i(L) tが求められる。そして、式(26)に従い、パーティクルzi(1) tないしzi(L) tの重みwi(1) tないしwi(L) tを用いて、L個の切り出し画像τ~i(1) tないしτ~i(L) tの重み付き平均値が、前景テクスチャモデルτiについての、時刻tの1時刻分の更新データτ~i tとして求められる。
Figure 2013191163
・・・(26)
さらに、前景テクスチャモデルτiの更新では、現在時刻tから、過去TFG-1時刻分の更新データτ~i t,τ~i t-1,・・・,τ~i t-TFG+1の平均値(所定時間分の平均化)が、新しいモデルパラメータθnewとしての新しい前景テクスチャモデルτi,newとして、式(27)に従って求められる。
Figure 2013191163
・・・(27)
なお、ここでは、L個のパーティクルzi(1) tないしzi(L) tそれぞれについて得られる切り出し画像τ~i(1) tないしτ~i(L) tの重み付き平均値を、時刻tの1時刻分の更新データτ~i tとして求めることとしたが、その他、例えば、後述するようにして、L個のパーティクルzi(1) tないしzi(L) tから最尤状態zi tを求め、その最尤状態zi tについて得られる切り出し画像τ~i tを、時刻tの1時刻分の更新データτ~i tとして採用することができる。
[第3.5 背景テクスチャモデルの更新(Mステップ)]
第2.3節で説明したパーティクルフィルタを用いたEステップで行われる背景テクスチャモデルτwの更新の具体的な実装について説明する。
図15は、背景テクスチャモデルτwの更新を説明する図である。
背景テクスチャモデルτwの更新処理では、すべての前景モデル#1ないし#Nそれぞれのすべてのパーティクルとしての状態z1(1) tないしz1(L) t,z2(1) tないしz2(L) t,・・・,zN(1) tないしzN(L) tを用いて、時刻tの1時刻分の更新データτ~w tが求められる。
すなわち、背景テクスチャモデルτwの更新処理では、図15に示すように、時刻tの実画像λ~tのうちの、前景があると推定される領域の画素値を、現在の背景テクスチャモデルτw,oldで置き換えることを、各前景モデル#iの、各パーティクルとしての状態zi(l) tについて行い、その結果得られる画像が、時刻tの1時刻分の更新データτ~w tとされる。
具体的には、まず、前景#1が、注目する注目前景とされる。そして、注目前景である前景#1の状態が、パーティクルとしての状態z1(l) tになっていることとして、時刻tの実画像λ~tのうちの、状態zi(l) tになっている前景#iと推定される領域から、前景モデル#i(前景見えモデルμi)の画像成分を除去し、かつ、現在の背景モデル(現在の背景テクスチャモデルτw,old)の画像成分を加えた画像(以下、前景除去画像ともいう)τ~w,1(l)が求められる。
前景#1の、パーティクルとしての状態z1(l) tについて得られる前景除去画像τ~w,1(l)は、式(28)で表される。
Figure 2013191163
・・・(28)
式(28)によれば、世界座標系O上の点sの、前景#1のローカル座標系O'上の対応点s'1(l) tが、前景見えモデルμ1(前景テクスチャモデルτ1、又は、前景形状モデルσ1としての画像)上の点である場合(s'1(l) t∈μ1)、前景除去画像τ~w,1(l)上の点sの画素値τ~w,1(l)(s)としては、実画像上λ~tの点sの画素値λ~t(s)に対して、前景テクスチャモデルτ1上の対応点s'1(l) tの画素値τ1(s'1(l) t)をσ1(s'1(l) t)倍して減算し、かつ、現在の背景テクスチャモデルτw,old上の点sの画素値τw,old(s)を、(1-σ1(s'1(l) t))倍して加算した値λ~t(s)−σ1(s'1(l) t1(s'1(l) t)+(1-σ1(s'1(l) t))τw,old(s)が採用される。
さらに、式(28)によれば、世界座標系O上の点sの、前景#1のローカル座標系O'上の対応点s'1(l) tが、前景見えモデルμ1上の点でない場合、実画像上λ~tの点sの画素値λ~t(s)が採用される。
その結果、前景除去画像τ~w,1(l)としては、実画像上λ~tから、パーティクルとしての状態z1(l) tになっている前景#1が除去され、その除去された前景#1に隠れていた背景が見えるようになったような画像が得られる。
背景テクスチャモデルτwの更新処理では、前景#1のL個のパーティクルz1(1) tないしz1(L) tそれぞれについて、前景除去画像τ~w,1(1)ないしτ~w,1(L)が求められる。
そして、前景#1のL個のパーティクルz1(1) tないしz1(L) tそれぞれの重みw1(1) tないしw1(L) tを用いて、前景除去画像τ~w,1(1)ないしτ~w,1(L)の重み付き平均値τ~w,1が、実画像上λ~tから前景#1を除去した最終的な画像(以下、前景#1についての最終除去画像ともいう)として求められる。
前景#1についての最終除去画像τ~w,1は、式(29)で表される。
Figure 2013191163
・・・(29)
背景テクスチャモデルτwの更新処理では、他の前景#2ないし#Nを、順次、注目前景として、同様の処理が行われる。
但し、前景#2以降の前景#iについては、実画像上λ~tに代えて、直前に注目前景であった前景#(i-1)についての最終除去画像τ~w,i-1が用いられる。
したがって、前景#iの、パーティクルとしての状態zi(l) tについて得られる前景除去画像τ~w,i(l)は、式(28)の実画像上λ~tを、前景#(i-1)についての最終除去画像τ~w,i-1に代えた式(30)に従って求められる。
Figure 2013191163
・・・(30)
そして、前景#iについての最終除去画像τ~w,iは、前景除去画像τ~w,i(l)を用い、式(29)と同様に式(31)に従って求められる。
Figure 2013191163
・・・(31)
前景#Nについての最終除去画像τ~w,Nは、実画像λ~tから、N個の前景#1ないし#Nすべてを除去し、かつ、前景#1ないし#Nそれぞれがあった領域に、現在の背景テクスチャモデルτw,oldの対応する領域を足し込んだ画像になっている。式(32)に示すように、この画像τ~w,Nが、背景テクスチャモデルτwについての、時刻tの1時刻分の更新データτ~w tとされる。
Figure 2013191163
・・・(32)
図15には、前景の数Nが2つである場合の、背景テクスチャモデルτwについての、時刻tの1時刻分の更新データτ~w tの算出の様子が示されている。
その後、背景テクスチャモデルτwの更新では、現在時刻tから、過去TBG-1時刻分の更新データτ~w t,τ~w t-1,・・・,τ~w t-TBG+1の平均値(所定時間分の平均化)が、新しいモデルパラメータθnewとしての新しい背景テクスチャモデルτw,newとして、式(33)に従って求められる。
Figure 2013191163
・・・(33)
背景テクスチャモデルτwの更新においては、前景#2以降の前景#iについては、実画像上λ~tに代えて、直前に注目前景であった前景#(i-1)についての最終除去画像τ~w,i-1を用いて、前景除去画像τ~w,i(l)が求められることで、複数の前景モデルによって、同時に、同一の前景がモデル化(獲得)されないようにする排他制御が行われる。
[第3.6節 前景形状モデルの更新(Mステップ)]
前景形状モデルσiの更新では、更新後の前景テクスチャモデルτi(新しい前景テクスチャモデルτi,new)としての画像について、どの領域が前景#iに属し、どの領域が前景#iに属さないのかの評価が、例えば、画素単位で行われる。
すなわち、前景形状モデルσiの更新では、更新後の前景テクスチャモデルτiとしての画像の各画素について、その画素が、前景#iの画素であるかどうかの評価が行われる。
前景テクスチャモデルτiとしての画像の画素が前景#iの画素であるかどうかの評価では、前景テクスチャモデルτiとしての画像の各画素について、その画素が、前景#iの画素であることの尤度(以下、前景尤度ともいう)が求められる。
前景尤度としては、例えば、前景テクスチャモデルτiとしての画像が、前景#iの期待値としての、式(26)の前景テクスチャモデルτiについての、時刻tの1時刻分の更新データτ~i tとして観測される観測される観測尤度を採用することができる。
この場合、前景尤度としての観測尤度は、例えば、式(34)に従って求めることができる。
Figure 2013191163
・・・(34)
ここで、τi(ri)は、前景テクスチャモデルτiのローカル座標系O'上の点riの画素値を表し、τi(ri)は、前景テクスチャモデルτiについての、時刻tの1時刻分の更新データτ~i tとしての画像のローカル座標系O'上の点riの画素値を表す。
さらに、L(FG|τi(ri))は、前景テクスチャモデルτiの点riの画素値τi(ri)が、前景#iの画素であることの尤度(前景尤度)を表す。
また、式(34)において、K及びσ2は、所定の定数であり、あらかじめ決定される。
前景テクスチャモデルτiとしての画像の画素が前景#iの画素であるかどうかの評価では、以上のような、前景尤度L(FG|τi(ri))の他、前景テクスチャモデルτiとしての画像の各画素について、その画素が、背景の画素であることの尤度(以下、背景尤度ともいう)が求められる。
背景尤度としては、例えば、前景テクスチャモデルτiとしての画像が、背景の期待値としての、式(31)の前景#iについての最終除去画像τ~w,i tとして観測される観測される観測尤度を採用することができる。
この場合、背景尤度としての観測尤度は、例えば、式(35)に従って求めることができる。
Figure 2013191163
・・・(35)
ここで、前景#iについての最終除去画像を表すτ~w,i tにダッシュ(')を付したτ~'w,i tは、前景#iについての最終除去画像τ~w,i tから、前景見えモデルμiの領域を切り出し、前景#iのローカル座標系に射影した射影画像(の期待値)を表す。
式(35)において、τ~w,i t(ri)は、射影画像τ~'w,i tのローカル座標系O'上の点riの画素値を表す。
さらに、L(BG|τi(ri))は、前景テクスチャモデルτiの点riの画素値τi(ri)が、背景の画素であることの尤度(背景尤度)を表す。
また、式(35)において、K及びσ2は、所定の定数であり、あらかじめ決定される。
射影画像τ~w,iは、式(31)の前景#iについての最終除去画像τ~w,i tを求めるのに用いられる、式(30)(式(28))の前景除去画像τ~w,i(l) tを用い、式(36)及び式(37)に従って求めることができる。
Figure 2013191163
・・・(36)
Figure 2013191163
・・・(37)
ここで、τ~w,i(l) tは、前景#iが、パーティクルとしての状態zi(l) tになっていると仮定した場合の射影画像を表し、τ~w,i(l) t(s'i(l) t)は、パーティクルzi(l) tに対する射影画像τ~w,i(l) tの対応点s'i(l) tの画素値を表す。
式(36)によれば、世界座標系O上の点sの、前景#iのローカル座標系O'上の対応点s'i(l) tが、前景見えモデルμi上の点であれば、前景除去画像τ~w,i(l) tの点sの画素値τ~w,i(l) t(s)が、パーティクルzi(l) tに対する射影画像τ~w,i(l) tの対応点s'i(l) tの画素値τ~w,i(l) t(s'i(l) t)として採用される。
そして、式(37)によれば、パーティクルの重みwi(l) tを用いた、各パーティクルzi(l) tに対する射影画像τ~w,i(l) tの重み付き平均値が、射影画像τ~w,i tとして求められる。
前景形状モデルσiの更新では、式(34)の前景尤度L(FG|τi(ri))と、式(35)の背景尤度L(BG|τi(ri))とを用いて、式(38)に従い、前景テクスチャモデルτiとしての画像の各画素について、その画素が前景#iの画素である確率が求められる。
Figure 2013191163
・・・(38)
ここで、p(FG|τi(ri))は、前景形状モデルσiの、前景#iのローカル座標系O'上の点(画素)riが、前景#iの画素である確率を表す。前景形状モデルσiの更新では、点riの画素値σi(ri)が、確率p(FG|τi(ri))に更新される。
[第4章 運動モデル(動力学パラメータ)の更新]
時刻t+1に、観測値xt+1を観測したとき、時刻tまでに、観測値の系列Xt={x1,x2,・・・,xt}が観測され、時刻t+1に、状態zt+1になっている事後分布p(zt+1|Xt)は、式(15)に従って求めることができる。
前景#iが時刻t+1になっている可能性が最も高い最尤状態zi t+1は、時刻t+1の事後分布p(zi t+1|Xt)が最大の状態であるから、式(39)に従って求めることができる。
Figure 2013191163
・・・(39)
運動モデルの更新では、各時刻tの、前景#iの最尤状態zi tが、逐次的に求められ、その最尤状態zi tの系列(最尤系列)Zi t={zi 1,zi 2,・・・,zi t}を、エージェントが観測可能な観測値として用いて、最尤推定を行うことにより、前景#iの運動モデルaiとしての式(4)の剛体運動の動力学パラメータri c,mi,Ii cが更新される。
最尤推定では、現在時刻tから過去に一定時間だけ遡った時刻から、現在時刻までの状態を推定し、その結果得られる状態系列の、最尤系列Zi tに対する誤差が、運動モデルaiにおいて、時刻tに、状態zi tが観測される観測尤度として採用される。
すなわち、本技術では、現在時刻tから、一定時間TDYNだけ遡った時刻t-TDYNの最尤状態zi t-TDYNを初期値として、運動モデルaiと、時刻t-TDYNから時刻t-1までの前景#iのアクションの系列Ui t-1={ui t-TDYN,ui t-TDYN+1,・・・,ui t-1}とを用い、式(40)の時間発展方程式に従って、前景#iの時刻t-TDYN+1から現在時刻tまでの状態系列Z^i t-TDYN+1:t={z^i t-TDYN+1,z^i t-TDYN+2,・・・,z^i t}が推定される。
Figure 2013191163
・・・(40)
式(40)の時間発展方程式としては、例えば、式(41)及び式(42)の剛体の運動方程式を採用することができる。
Figure 2013191163
・・・(41)
Figure 2013191163
・・・(42)
式(41)及び式(42)の運動方程式については、例えば、オイラー法やルンゲクッタ法を用いて数値計算を行うことにより、式(41)及び式(42)の運動方程式に従って運動する前景#iの状態系列Z^i t-TDYN+1:t={z^i t-TDYN+1,z^i t-TDYN+2,・・・,z^i t}を求めることができる。
本技術では、現在時刻tから時間TDYN-1だけ遡った時刻t-TDYN+1から現在時刻tまでの最尤系列Zi t={zi t-TDYN+1,zi t-TDYN+2,・・・,zi t}と、式(41)及び式(42)の運動方程式に従って求められる前景#iの状態系列Z^i t-TDYN+1:t={z^i t-TDYN+1,z^i t-TDYN+2,・・・,z^i t}との誤差に対応する値が、運動モデルaiにおいて、時刻tに、状態zi tが観測される観測尤度(運動モデルaiの前景#iの状態として、時刻tに、状態zi tが観測される観測尤度)p(zi t|ai)として求められる。
すなわち、観測尤度p(zi t|ai)は、式(43)に従って求められる。
Figure 2013191163
・・・(43)
なお、式(43)において、K及びσ2は、所定の定数であり、あらかじめ決定される。
本技術では、運動モデルaiをパーティクルとして採用し、前景モデル及び背景モデルのモデルパラメータの更新と並行して、パーティクルフィルタを用いて逐次的に、運動モデルaiの更新が行われる。
運動モデルaiをパーティクルとして採用した場合のパーティクルフィルタの基本的な計算方法は、第2章で説明した通りである。
但し、運動モデルaiのパーティクルの重みwi(l) tは、式(43)に従って求められる観測尤度p(zi t|ai)を用い、式(14)と同様にして求められる。
また、本技術では、時刻tのパーティクルとしての運動モデルai(l) tが、次の時刻t+1に、運動モデルai t+1に遷移する確率、すなわち、パーティクルとしての運動モデルai(l) tの遷移確率p(ai t+1|ai(l) t)が、ガウス分布(正規分布)に従うことと仮定し、パーティクルとしての運動モデルai(l) tの遷移モデルを、例えば、式(44)で表す。
Figure 2013191163
・・・(44)
ここで、式(20)で説明したように、N(A,B)は、平均ベクトル(平均値)がAで、分散共分散行列(分散)がBのガウス分布を表す。
式(44)では、ガウス分布N(0,Σrc),N(0,σ2 m),N(0,ΣIc)は、いずれも、平均ベクトルが0のガウス分布である。また、分散共分散行列(共分散)Σrc,σ2 m,ΣIcは、あらかじめ決定される。
式(44)の遷移モデルによれば、パーティクルとしての運動モデルは、平均ベクトルが0で、所定の分散共分散行列のガウス分布に従って、確率的に揺らぎながら遷移することとして、遷移先である時刻t+1の運動モデルai t+1が求められる(予測される)。
また、本技術では、運動モデルaiについては、時刻tのパーティクルとしての運動モデルai(l) tと、その重みwi(l) tとの重み付け平均値が、式(45)に従って求められ、時刻t+1の運動モデルai t+1は、その重み付け平均値に更新される。
Figure 2013191163
・・・(45)
[第5章 推定したモデルを用いた物体操作]
図16は、エージェントによる物体操作を説明する図である。
前景モデル(前景見えモデルμi)、背景モデル(背景見えモデルμw)、及び、前景#iの運動モデルaiが得られると、エージェントは、それらの前景モデル、背景モデル、及び、運動モデルaiを用いて、環境中の物体を操作するマニピュレータとして機能することができる。
図16では、2次元平面としての環境に、L字型の物体が、操作対象の物体として置かれており、操作対象の物体は、円形で示すエージェントのハンドが接触することにより移動する。
ここで、図16において、実線で示すL字型が、操作対象の物体の現在の状態を表しており、点線で示すL字型が、操作対象の物体の目標の状態(目標状態)を表している。
なお、操作対象の物体については、環境中で剛体の運動方程式に従って運動することとするが、外力を加えなければ、環境との摩擦によって時間とともに運動エネルギーが失われ、速度は減少することとする。すなわち、操作対象の物体は、停止させる力を加えなくても、外力を加えることをやめれば、すぐに停止することとする。
また、操作対象の物体は、それ自体、自律的に動かず、人間が手を使って物を搬送する場合と同様に、円形のハンドが接触することによってのみ動く。
さらに、ハンドについては、エージェントが、位置と速度を、任意に指定することができることとする。
図17は、操作対象の物体の現在の状態と、目標状態とを示す図である。
図17において、sobj tは、世界座標系O上の現在時刻tの物体の重心の位置(現在の位置)を表し、qobj tは、世界座標系O上の現在時刻tの物体の姿勢(現在の姿勢)を表す。
また、図17において、stgtは、世界座標系O上の物体の目標の重心の位置(目標位置)を表し、qtgtは、世界座標系O上の物体の目標の姿勢(目標姿勢)を表す。
剛体の運動は、並進運動と回転運動とに分けることができる。本技術では、操作対象の物体を、必要に応じて、並進運動させるとともに、回転運動させることで、目標状態に遷移させる。
具体的には、本技術では、例えば、まず、操作対象の物体を、並進運動させ、目標状態に対する物体の位置の誤差が十分小さくなった後に、回転運動させる。そして、回転運動中に、目標状態に対する物体の位置の誤差が大きくなった場合には、再び、物体を並進運動させ、以下、同様の処理が行われる。
一方、回転運動中に、目標状態に対する物体の位置及び姿勢の誤差が十分小さくなった場合には、物体が、目標状態に遷移したこととして、エージェントは、物体操作を終了する。
なお、上述の物体操作では、並進運動を優先的に行い、その後、回転運動を行うこととしたが、その他、例えば、回転運動を優先的に行い、その後、並進運動を行うことが可能である。
図18は、物体の並進運動を説明する図である。
物体を並進運動させるにあたり、エージェントは、物体を、なるべく回転させないで、並進させるために、剛体である物体に対して、トルクを生じさせないように、力を加える。
図18は、以上のように、物体にトルクを生じさせないように、力を加える場合の、その力の作用点を決定する方法と、その力のベクトル(力ベクトル)を決定する方法とを示している。
まず、力の作用点は、物体の目標状態の位置stgtと、現在の位置(重心)sobj tとを結ぶ直線L1と、現在の物体の縁との交点に決定される。
ここで、物体の縁は、例えば、その物体に対応する前景の前景形状モデルに対して、エッジを検出する画像処理を行うことによって求めることができる。
また、図18では、直線L1と、現在の物体の縁との交点として、2つの点scontact,0、及び、scontact,1が存在する。
このように、直線L1と、現在の物体の縁との交点として、複数の点が存在する場合、例えば、物体を、ハンドで押して操作するときには、直線L1と、現在の物体の縁との交点としての複数の点のうちの、物体の目標状態の位置stgtから最も遠い点が、力の作用点に決定される。
図18の2つの点scontact,0、及び、scontact,1については、点scontact,0が、物体の目標状態の位置stgtから最も遠い点であるため、力の作用点に決定される。
なお、物体を、ハンドで引っ張って操作するときには、直線L1と、現在の物体の縁との交点としての複数の点のうちの、物体の目標状態の位置stgtから最も近い点が、力の作用点に決定される。
時刻tに物体に加える力ベクトルFcontrol tの方向は、作用点scontact,0から目標状態の位置stgtに向かう方向に決定される。
さらに、力ベクトルFcontrol tは、物体の現在位置sobj tから目標状態の位置stgtまでの距離|stgt-sobj t|が大であるほど大になり、かつ、物体の現在の速度s・obj tが大であるほど小さくなるように、例えば、式(46)に従って決定される。
Figure 2013191163
・・・(46)
ここで、式(46)において、K0及びK1は、所定の定数であり、あらかじめ決定される。
図19は、物体の回転運動を説明する図である。
物体を回転運動させるにあたり、エージェントは、物体を、なるべく並進させないで、回転させるために、剛体である物体に対して、なるべく、重心回りのトルクが生じるように、力を加える。
図19は、以上のように、なるべく重心回りのトルクを生じさせるように、力を加える場合の、その力の作用点を決定する方法と、その力のベクトル(力ベクトル)を決定する方法とを示している。
まず、力の作用点は、物体の現在の状態の位置(重心)sobj tを通る1以上の直線と、現在の物体の縁との交点に決定される。
ここで、図19では、物体の現在の状態の位置sobj tを通る1以上の直線として、3本の直線L1,L2,L3が存在する。
また、直線L1と、現在の物体の縁との交点として、2つの点scontact,0、及び、scontact,3が、直線L2と、現在の物体の縁との交点として、2つの点scontact,1、及び、scontact,4が、直線L3と、現在の物体の縁との交点として、2つの点scontact,2、及び、scontact,5が、それぞれ存在する。
いま、例えば、図18で説明した並進運動の場合と同様に、例えば、物体を、ハンドで押して、回転運動させることとすると、物体の現在の位置sobj tを通る直線と、現在の物体の縁との交点として、複数の点が存在する場合、その複数の点の中から、物体の縁を押すように力を加えたときに生じるトルクの方向が、物体を回転したい方向と一致する点を、作用点の候補として選択する。
ここで、物体を回転したい方向としては、例えば、物体の重心回りの回転方向のうちの、物体を目標状態と一致する姿勢に回転するときに、回転角が少ない方向を採用することができる。図19では、反時計回りの方向が、物体を回転したい方向になっている。
作用点の候補が選択された後、その作用点の候補のうちの、物体の現在の位置sobj tから最も遠い候補が、作用点に決定される。
図19では、点scontact,0が、力の作用点に決定されている。
時刻tに物体に加える力ベクトルFcontrol tの方向は、物体の現在の位置sobj tと作用点とを通る直線と直交し、かつ、物体を回転したい方向に回転させる方向に決定される。
図19では、物体の現在の位置sobj tと作用点scontact,0とを通る直線L1と直交し、かつ、物体を反時計回りに回転させる方向が、力ベクトルFcontrol tの方向に決定されている。
回転運動については、力ベクトルFcontrol tによって、物体を重心sobj t回りに回転させるトルクTcontrol tが、物体の現在の姿勢qobj tから目標状態の姿勢qtgtになるまでの回転角度|qtgt-qobj t|が大であるほど大になり、かつ、物体の現在の角速度q・obj tが大であるほど小さくなるように、例えば、式(47)に従って決定される。
Figure 2013191163
・・・(47)
ここで、式(47)において、K2及びK3は、所定の定数であり、あらかじめ決定される。
トルクTcontrol tは、物体の重心sobj tから作用点までの距離を表す距離ベクトルrと、力ベクトルFcontrol tとの外積r×Fcontrol tであるから、トルクTcontrol tが決定されることにより、そのトルクTcontrol tを発生させる力ベクトルFcontrol tも決定することができる。
エージェントは、力の作用点、及び、その力の力ベクトルを決定すると、ハンドを、所定の初期位置に移動し、操作対象の物体の力の作用点に、力ベクトルを加えるように、ハンドを移動する。
図20は、ハンドの初期位置を説明する図である。
エージェントは、力の作用点scontactを通り、力ベクトルFcontrol tと平行な直線L1上で、力の作用点scontactを基点として力ベクトルFcontrol tの向きとは反対方向で、かつ、操作対象の物体と干渉しない、作用点scontactから十分遠い点smanip 0を、ハンドの初期位置(時刻t=0のハンドの位置)に決定する。
そして、エージェントは、ハンドを、初期位置smanip 0に移動し、その後、力ベクトルFcontrol tに対応する速度s・manip tで移動させる。
力ベクトルFcontrol tに対応する速度(速度ベクトル)s・manip tは、例えば、式(48)に従って求められる。
Figure 2013191163
・・・(48)
ここで、式(48)において、K4は、所定の定数であり、あらかじめ決定される。
なお、エージェントは、並進運動を開始するときと、回転運動を開始するときに、ハンドを、初期位置smanip 0に移動させる。
また、エージェントは、並進運動を開始した後、回転運動を開始するまでの間と、回転運動を開始した後、並進運動を開始するまでの間とでは、ハンドを、力ベクトルFcontrol tを用いて求められる式(48)の速度s・manip tで、連続的に移動させる。
[本技術を適用したエージェントの一実施の形態]
図21は、本技術を適用したエージェントの一実施の形態の構成例を示すブロック図である。
図21において、エージェントは、アクチュエータ制御部11、センサ12、前景状態推定部13、見えモデル更新部14、見えモデル記憶部15、最尤状態算出部16、最尤状態系列記憶部17、運動モデル推定部18、運動モデル更新部19、運動モデル記憶部20、目標生成部21、アクション生成部22、及び、アクション系列記憶部23を有する。
図21において、前景状態推定部13ないし運動モデル記憶部20が、前景見えモデルμi、背景見えモデルμw、及び、運動モデルaiを学習する学習器を構成する。
アクチュエータ制御部11には、アクション生成部22から、前景#iのアクションui t(時刻tに、前景#iに行わせるアクション、又は、前景#iが行うアクション)が供給される。
アクチュエータ制御部11は、アクション生成部22からのアクションui tに従って、例えば、エージェントの図示せぬハンド等を駆動するアクチュエータを制御し、これにより、例えば、ハンドが移動する。
センサ12は、カメラ等であり、画像を、所定のフレームレートで撮影し、その画像の観測値(エージェントが観測可能な画像の観測値)(実画像)λ~tを、前景推定部13、及び、見えモデル更新部14に供給する。
なお、センサ12は、カメラの他、例えば、ハンドに装備された圧力センサ等を含む。ハンドに装備された圧力センサによれば、ハンドが物体に接触したときの反作用によって、物体のアクションを獲得(観測)することができる。
センサ12で獲得される物体に対応する前景#iのアクションui tは、アクション系列記憶部23に供給される。
前景状態推定部13には、センサ12から画像の観測値(実画像)λ~tが供給される他、見えモデル記憶部15に記憶された前景見えモデルμi、及び、背景見えモデルμwが供給される。
前景状態推定部13は、センサ12からの実画像λ~t、並びに、見えモデル記憶部15に記憶された前景見えモデルμi、及び、背景見えモデルμwを用いて、前景#iの状態zi tを推定し、その推定の結果として、状態zi tのパーティクルzi(l) t及び重みwi(l) tを、見えモデル更新部14、及び、最尤状態算出部16に供給する。
なお、前景状態推定部13では、必要に応じて、運動モデル記憶部20に記憶された運動モデルai、及び、アクション系列記憶部23に記憶されたアクションui tをも用いて、前景#iの状態zi tを推定することができる。
見えモデル更新部14は、センサ12からの実画像λ~tと、前景状態推定部13から供給される前景#iの状態zi tの推定の結果としての状態zi tのパーティクルzi(l) t及び重みwi(l) tとを用いて、見えモデル記憶部15に記憶された前景見えモデルμi、及び、背景見えモデルμwを更新する。
すなわち、見えモデル更新部14は、式(24)ないし式(27)に従って、前景見えモデルμiのうちの前景テクスチャモデルτiを更新し、式(34)ないし式(38)に従って、前景見えモデルμiのうちの前景形状モデルσiを更新する。
また、見えモデル更新部14は、式(28)ないし式(33)に従って、背景見えモデルμw(背景テクスチャモデルτw)を更新する。
見えモデル記憶部15は、前景見えモデルμi、及び、背景見えモデルμwを記憶する。
最尤状態算出部16は、前景状態推定部13から供給される前景#iの状態zi tの推定の結果としての状態zi tのパーティクルzi(l) t及び重みwi(l) tを用い、式(39)に従って、最尤状態zi tを求めて、最尤状態系列記憶部17に供給する。
最尤状態系列記憶部17は、最尤状態算出部16かの最尤状態zi tを、順次記憶する。最尤状態系列記憶部17では、最尤状態算出部16かの最尤状態zi tが、順次記憶されることにより、結果として、最尤系列Zi t={zi 1,zi 2,・・・,zi t}が記憶される。
運動モデル推定部18は、最尤状態系列記憶部17に記憶された過去TDYN-1時間分の最尤系列Zi t={zi t-TDYN+1,zi t-TDYN+2,・・・,zi t}、及び、時刻t-TDYNの最尤状態zi t-TDYN、並びに、アクション系列記憶部23に記憶されたアクション系列Ui t-1={ui t-TDYN,ui t-TDYN+1,・・・,ui t-1}を用いて、運動モデルaiを推定し、その推定の結果として、運動モデルaiのパーティクルai(l) t及び重みwi(l) tを、運動モデル更新部19に供給する。
運動モデル更新部19は、運動モデル推定部18から供給される運動モデルaiの推定の結果としての運動モデルaiのパーティクルai(l) t及び重みwi(l) tを用いて、運動モデル記憶部20に記憶された運動モデルaiを更新する。
すなわち、運動モデル更新部19は、式(45)に従って、運動モデルaiを更新する。
運動モデル記憶部20は、運動モデルaiを記憶する。
目標生成部21は、前景の目標状態としての位置stgt及び姿勢qtgtを生成し、アクション生成部22に供給する。なお、目標生成部21は、例えば、ユーザの操作や、目標状態を設定する任意のアルゴリズム等に従って、目標状態を生成することができる。
アクション生成部22は、見えモデル記憶部15に記憶された前景見えモデルμi、最尤状態系列記憶部17に記憶された最尤状態zi t、及び、運動モデル記憶部20に記憶された運動モデルaiを用い、前景#iの状態を、目標生成部21から供給される目標状態に遷移させるためのアクションui tを生成し、アクチュエータ制御部11、及び、アクション系列記憶部23に供給する。
アクション系列記憶部23は、センサ12から供給されるアクションui t、及び、アクション生成部22から供給されるアクションui tを記憶する。
図22は、図21の前景状態推定部13の構成例を示すブロック図である。
前景状態推定部13は、見えモデル尤度計算部41、状態パーティクル更新部42、状態パーティクル記憶部43、及び、推定観測値生成部44を有する。
見えモデル尤度計算部41には、センサ12から画像の観測値(実画像)λ~tが供給されるとともに、推定観測値生成部44から、生成モデルで観測される観測画像λi(l) tが供給される。
見えモデル尤度計算部41は、センサ12からの実画像λ~tと、推定観測値生成部44からの観測画像λi(l) tとを用い、式(22)に従って、注目している前景#iが、パーティクルとしての状態zi(l) tになっているときの、前景#iの観測値xi tの観測尤度p(xi t|zi(l) t)を求めて、状態パーティクル更新部42に供給する。
状態パーティクル更新部42は、状態パーティクル記憶部43に記憶された時刻t-1のパーティクルとしての状態zi(l) t-1から、式(20)、又は、式(21)に従って、次の時刻tの状態zi tとしてのパーティクルzi(l) tを求める、パーティクルの遷移先の予測(算出)を、パーティクルとしての前景#iの状態zi tの推定として行う。
状態パーティクル更新部42は、次の時刻tの状態zi tとしてのパーティクルzi(l) tを、状態パーティクル記憶部43に供給し、時刻t-1のパーティクルとしての状態zi(l) t-1に代えて記憶させる。
さらに、状態パーティクル更新部42は、見えモデル尤度計算部41からの観測尤度p(xi t|zi(l) t)を用いて、式(14)に従い、パーティクルzi(l) tの重みwi(l) tを求め、パーティクルzi(l) tと同様に、状態パーティクル記憶部43に供給して記憶させる。
また、状態パーティクル更新部42は、パーティクルzi(l) tの重みwi(l) tに対応する確率で、パーティクルzi(l) tを選択するリサンプリングを行い、状態パーティクル記憶部43に記憶されたパーティクルzi(l) tを、リサンプリング結果に書き換える。
リサンプリング結果としてのパーティクルzi(l) tは、次の時刻t+1の観測尤度p(xi t+1|zi(l) t+1)が得られた後に、式(20)、又は、式(21)に従って、時刻t+1の状態zi t+1としてのパーティクルzi(l) t+1を予測するときに用いられる。
なお、状態パーティクル更新部42では、式(20)、及び、式(21)のうちの、式(21)に従って、時刻tの状態zi tとしてのパーティクルzi(l) tを予測するときには、運動モデル記憶部20に記憶された運動モデルai、及び、アクション系列記憶部23に記憶されたアクションui tが用いられる。すなわち、式(21)のγ/m、及び、φ/Icは、運動モデルai及びアクションui tを用いて求められる。
状態パーティクル記憶部43は、状態パーティクル更新部42が更新する、前景の状態zi tとしてのパーティクルzi(l) tと、その重みwi(l) tとを記憶する。
推定観測値生成部44は、見えモデル記憶部15に記憶された前景見えモデルμi、及び、背景見えモデルμwを用い、前景の状態が、状態パーティクル記憶部43に記憶された各パーティクルとしての状態zi(l) tになっている観測画像(生成モデルにおいて観測される画像)λi(l) tを、式(23)に従って生成し、見えモデル尤度計算部41に供給する。
図23は、図21の運動モデル推定部18の構成例を示すブロック図である。
運動モデル推定部18は、運動モデル尤度計算部51、運動モデルパーティクル更新部52、運動モデルパーティクル記憶部53、及び、推定観測値生成部54を有する。
運動モデル尤度計算部51には、最尤状態系列記憶部17から、前景#iの状態の最尤系列Zi t={zi t-TDYN+1,zi t-TDYN+2,・・・,zi t}が供給される。さらに、運動モデル尤度計算部51には、推定観測値生成部54から、式(41)及び式(42)の運動方程式に従って求められる前景#iの状態系列Z^i t-TDYN+1:t={z^i t-TDYN+1,z^i t-TDYN+2,・・・,z^i t}が供給される。
運動モデル尤度計算部51は、最尤状態系列記憶部17からの最尤系列Zi t={zi t-TDYN+1,zi t-TDYN+2,・・・,zi t}と、推定観測値生成部54からの、式(41)及び式(42)の運動方程式に従って求められる状態系列Z^i t-TDYN+1:t={z^i t-TDYN+1,z^i t-TDYN+2,・・・,z^i t}とを用い、式(43)に従って、運動モデルai tが、運動モデルとしてのパーティクルai(l) tである場合の、状態系列Z^i t-TDYN+1:tの観測尤度(運動モデルとしてのパーティクルai(l) tの下で、状態系列Z^i t-TDYN+1:tが観測される尤度)p(zi t|ai)=p(Zi t|ai(l) t)を求めて、運動モデルパーティクル更新部52に供給する。
運動モデルパーティクル更新部52は、運動モデルパーティクル記憶部53に記憶された時刻t-1のパーティクルとしての運動モデルai(l) t-1から、式(44)に従って、次の時刻tの運動モデルai tとしてのパーティクルai(l) tを求める、パーティクルの遷移先の予測(算出)を、パーティクルとしての運動モデルai tの推定として行う。
運動モデルパーティクル更新部52は、時刻tの運動モデルai tとしてのパーティクルai(l) tを、運動モデルパーティクル記憶部53に供給し、時刻t-1のパーティクルとしての運動モデルai(l) t-1に代えて記憶させる。
さらに、運動モデルパーティクル更新部52は、運動モデル尤度計算部51からの観測尤度p(Zi t|ai(l) t)を、式(14)の観測尤度p(xi t|zi(l) t)に代えて用い、式(14)に従い、パーティクルai(l) tの重みwi(l) tを求め、パーティクルai(l) tと同様に、運動モデルパーティクル記憶部53に供給して記憶させる。
また、運動モデルパーティクル更新部52は、パーティクルai(l) tの重みwi(l) tに対応する確率で、パーティクルai(l) tを選択するリサンプリングを行い、運動モデルパーティクル記憶部53に記憶されたパーティクルai(l) tを、リサンプリング結果に書き換える。
リサンプリング結果としてのパーティクルai(l) tは、次の時刻t+1の観測尤度p(Zi t+1|ai(l) t+1)が得られた後に、式(44)に従って、次の時刻t+1の運動モデルai t+1としてのパーティクルai(l) t+1を予測するときに用いられる。
運動モデルパーティクル記憶部53は、運動モデルパーティクル更新部52が更新する、前景の運動モデルai tとしてのパーティクルai(l) tと、その重みwi(l) tとを記憶する。
推定観測値生成部54は、最尤状態系列記憶部17に記憶された、時刻t-TDYNの最尤状態zi t-TDYNを初期値とし、運動モデルパーティクル記憶部53に記憶された運動モデルとしてのパーティクルai(l) t、及び、アクション系列記憶部23に記憶されたアクションの系列Ui t-1={ui t-TDYN,ui t-TDYN+1,・・・,ui t-1}を用いて、式(41)及び式(42)の運動方程式を計算することにより、式(41)及び式(42)の運動方程式に従って運動する前景#iの状態系列Z^i(l) t-TDYN+1:t={z^i(l) t-TDYN+1,z^i(l) t-TDYN+2,・・・,z^i(l) t}を求め、運動モデル尤度計算部51に供給する。
図24は、図21のアクション生成部22の構成例を示すブロック図である。
図24において、アクション生成部22は、並進運動制御部61、回転運動制御部62、及び、アクション出力部63を有し、見えモデル記憶部15に記憶された前景見えモデルμi、及び、運動モデル記憶部20に記憶された運動モデルai等を用いて、1の前景としての操作対象の物体等の状態を所定の目標状態にするための他の1つの前景としてのハンド等のアクションを生成する。
すなわち、並進運動制御部61には、見えモデル記憶部15に記憶された前景見えモデルμi、最尤状態系列記憶部17に記憶された最尤状態zi t、運動モデル記憶部20に記憶された運動モデルai、及び、目標生成部21で生成された目標状態としての目標位置stgtと目標姿勢qtgtが供給される。
並進運動制御部61は、前景見えモデルμi及び最尤状態zi tから、操作対象の前景(物体)#iの縁を認識し、図18で説明したようにして、前景#iの現在の状態(最尤状態zi t)としての位置sobj t=si tを、目標位置stgtに近づける並進運動を行うための作用点と、その作用点に加える力の力ベクトルを求める。
そして、並進運動制御部61は、作用点と力ベクトルとを、アクション出力部63に供給する。
回転運動制御部62には、見えモデル記憶部15に記憶された前景見えモデルμi、最尤状態系列記憶部17に記憶された最尤状態zi t、運動モデル記憶部20に記憶された運動モデルai、及び、目標生成部21で生成された目標状態としての目標位置stgtと目標姿勢qtgtが供給される。
回転運動制御部62は、前景見えモデルμi及び最尤状態zi tから、操作対象の前景(物体)#iの縁を認識し、図19で説明したようにして、前景#iの現在の状態(最尤状態zi t)としての姿勢qobj t=qi tを、目標姿勢qtgtに近づける回転運動を行うための作用点と、その作用点に加える力の力ベクトルを求める。
そして、回転運動制御部62は、作用点と力ベクトルとを、アクション出力部63に供給する。
アクション出力部63は、並進運動制御部61、又は、回転運動制御部62からの作用点と力ベクトルに従い、その作用点に、その力ベクトルの力を加えるための速度ベクトルs・manip tを、式(48)に従って生成し、ハンドのアクションとして、アクチュエータ制御部11、及び、アクション系列記憶部23に出力する。
なお、アクション出力部63は、並進運動を開始するときと、回転運動を開始するときには、図20で説明した初期位置smanip 0を求め、その初期位置smanip 0に、ハンドを移動させるアクションを出力する。
また、アクション出力部63には、最尤状態系列記憶部17に記憶された最尤状態zi tと、目標生成部21で生成された目標状態としての目標位置stgtと目標姿勢qtgtが供給される。
アクション出力部63は、操作対象の物体の最尤状態zi tとしての位置si tの、目標位置stgtに対する誤差と、最尤状態zi tとしての姿勢si tの、目標姿勢qtgtに対する誤差とを求め、その位置si tの誤差、及び、姿勢si tの誤差に応じて、ハンドを移動させるアクションの出力を制御する。
図25は、図21のエージェントが行う、前景モデル、背景モデル、及び、運動モデルの学習処理の概要を説明するフローチャートである。
エージェントでは、センサ12において、画像が撮影され、その画像(実画像)λ~tが、センサ12から、前景状態推定部13、及び、見えモデル更新部14に供給される。
センサ12から前景状態推定部13に、実画像λ~tが供給されると、エージェントは、ステップS31において、実画像λ~tに対して、まだ、注目モデルに選択していない前景モデル#iを、注目モデルに選択し、処理は、ステップS32に進む。
ステップS32では、前景状態推定部13は、センサ12からの画像の観測値λ~t、並びに、見えモデル記憶部15に記憶された注目モデルである前景見えモデルμi、及び、背景見えモデルμwを用いて、前景#iの状態zi tを推定し、その推定の結果として、注目モデルが表す前景#iの状態zi tのパーティクルzi(l) t及びその重みwi(l) tを、見えモデル更新部14、及び、最尤状態算出部16に供給して、処理は、ステップS33に進む。
ここで、最尤状態算出部16では、前景状態推定部13から供給される前景#iの状態zi tの推定の結果としての状態zi tのパーティクルzi(l) t及び重みwi(l) tを用い、式(39)に従って、最尤状態zi tを求めて、最尤状態系列記憶部17に供給して記憶させる。
ステップS33では、見えモデル更新部14が、センサ12からの画像の観測値λ~tと、前景状態推定部13から供給される前景#iの状態zi tの推定の結果としての状態zi tのパーティクルzi(l) t及び重みwi(l) tとを用いて、見えモデル記憶部15に記憶された前景見えモデルμiを更新して、処理は、ステップS34に進む。
ステップS34では、見えモデル更新部14が、センサ12からの画像の観測値λ~tと、前景状態推定部13から供給される前景#iの状態zi tの推定の結果としての状態zi tのパーティクルzi(l) t及び重みwi(l) tとを用いて、見えモデル記憶部15に記憶された背景見えモデルμwを更新して、処理は、ステップS35に進む。
ステップS35では、運動モデル推定部18は、最尤状態系列記憶部17に記憶された過去TDYN-1時間分の最尤系列Zi t={zi t-TDYN+1,zi t-TDYN+2,・・・,zi t}、及び、最尤状態zi t-TDYN、並びに、アクション系列記憶部23に記憶されたアクション系列Ui t-1={ui t-TDYN,ui t-TDYN+1,・・・,ui t-1}を用いて、注目モデルが表す前景#iの運動モデルaiを推定し、その推定の結果として、運動モデルaiのパーティクルai(l) t及びその重みwi(l) tを、運動モデル更新部19に供給して、処理は、ステップS36に進む。
ステップS36では、運動モデル更新部19は、運動モデル推定部18から供給される運動モデルaiの推定の結果としての運動モデルaiのパーティクルai(l) t及び重みwi(l) tを用いて、運動モデル記憶部20に記憶された運動モデルaiを更新する。
その後、処理は、ステップS36からステップS31に戻り、N個の前景モデル#1ないし#Nのうちの、実画像λ~tに対して、まだ、注目モデルに選択されていない1つの前景モデルが、注目モデルに選択され、以下、同様の処理が繰り返される。
そして、実画像λ~tに対して、N個の前景モデル#1ないし#Nが、注目モデルとして選択された場合には、センサ12から前景状態推定部13に、次の時刻t+1の実画像λ~t+1が供給されるのを待って、ステップS31ないしS36の処理が繰り返される。
なお、図25において、ステップS32ないしS34の処理が、前景モデル及び背景モデルの学習であり、ステップS35及びS36の処理が、運動モデルの学習である。
すなわち、エージェントでは、前景モデル及び背景モデルの学習と、運動モデルの学習とが交互に行われる。
図26は、図21のエージェントが行う、前景モデル、背景モデル、及び、運動モデルの学習処理の詳細を説明するフローチャートである。
エージェントでは、センサ12において、画像が撮影され、その画像(実画像)λ~tが、センサ12から、前景状態推定部13、及び、見えモデル更新部14に供給される。
センサ12から前景状態推定部13に、実画像λ~tが供給されると、エージェントは、ステップS51において、実画像λ~tに対して、まだ、注目モデルに選択していない前景モデル#iを、注目モデルに選択し、処理は、ステップS52に進む。
ステップS52では、前景状態推定部13(図22)において、状態パーティクル更新部42は、状態パーティクル記憶部43に記憶された時刻t-1のL個のパーティクルとしての前景#iの状態(以下、状態パーティクルともいう)zi(1) t-1ないしzi(L) t-1の中から、まだ、注目する注目状態パーティクルに選択していない1つの状態パーティクルzi(l) t-1を、注目状態パーティクルに選択して、処理は、ステップS53に進む。
ステップS53では、状態パーティクル更新部42は、状態パーティクル記憶部43に記憶された注目状態パーティクルzi(l) t-1から、式(20)、又は、式(21)に従って、時刻tの注目状態パーティクルzi(l) tを予測する。
さらに、状態パーティクル更新部42は、時刻tの注目状態パーティクルzi(l) tを、状態パーティクル記憶部43に供給し、時刻t-1の注目状態パーティクルzi(l) t-1に代えて記憶させて、処理は、ステップS53からステップS54に進む。
ステップS54では、前景状態推定部13(図22)において、推定観測値生成部44が、見えモデル記憶部15に記憶された前景見えモデルμi、及び、背景見えモデルμwを用い、前景の状態が、状態パーティクル記憶部43に記憶された注目状態パーティクルzi(l) tになっている観測画像(生成モデルにおいて観測される画像)λi(l) tを、式(23)に従って生成する。
推定観測値生成部44は、観測画像λi(l) tを、見えモデル尤度計算部41に供給して、処理は、ステップS54からステップS55に進む。
ステップS55では、見えモデル尤度計算部41(図22)が、センサ12からの実画像λ~tと、推定観測値生成部44からの観測画像λi(l) tとを用い、式(22)に従って、注目している前景#iが、注目状態パーティクルとしての状態zi(l) tになっているときの、前景#iの観測値xi tの観測尤度p(xi t|zi(l) t)を求める。
見えモデル尤度計算部41は、観測尤度p(xi t|zi(l) t)を、状態パーティクル更新部42に供給して、処理は、ステップS55からステップS56に進む。
ステップS56では、状態パーティクル更新部42が、見えモデル尤度計算部41からの観測尤度p(xi t|zi(l) t)を用いて、式(14)に従い、注目状態パーティクルzi(l) tの重みwi(l) tを求め、状態パーティクルzi(l) tと同様に、状態パーティクル記憶部43に供給して記憶させ、処理は、ステップS57に進む。
ステップS57では、状態パーティクル更新部42は、状態パーティクル記憶部43に記憶された時刻t-1のL個の状態パーティクルzi(1) t-1ないしzi(L) t-1のすべてを、注目状態パーティクルに選択したかどうかを判定する。
ステップS57において、L個の状態パーティクルzi(1) t-1ないしzi(L) t-1を、まだ、注目状態パーティクルに選択していないと判定された場合、処理は、ステップS52に戻り、状態パーティクル更新部42は、L個の状態パーティクルzi(1) t-1ないしzi(L) t-1のうちの、まだ、注目状態パーティクルに選択していない1つの状態パーティクルを、注目状態パーティクルに新たに選択して、以下、同様の処理が繰り返す。
また、ステップS57において、L個の状態パーティクルzi(1) t-1ないしzi(L) t-1のすべてを、注目状態パーティクルに選択したと判定された場合、処理は、ステップS58に進み、見えモデル更新部14は、センサ12から供給される実画像λ~tと、ステップS53で状態パーティクル記憶部43に記憶された時刻tの状態パーティクルzi(l) t、及び、ステップS56で状態パーティクル記憶部43に記憶された重みwi(l) tとを用いて、見えモデル記憶部15に記憶された前景見えモデルμiを更新し、処理は、ステップS59に進む。
すなわち、見えモデル更新部14は、式(24)ないし式(27)に従って、前景見えモデルμiのうちの前景テクスチャモデルτiを更新し、式(34)ないし式(38)に従って、前景見えモデルμiのうちの前景形状モデルσiを更新する。
なお、以上のように、見えモデル更新部14が、前景見えモデルμiを更新するのと並行して、最尤状態算出部16は、状態パーティクル記憶部43に記憶された状態パーティクルzi(l) t及びその重みwi(l) tを用い、式(39)に従って、最尤状態zi tを求めて、最尤状態系列記憶部17に供給して記憶させる。
ステップS59では、見えモデル更新部14は、センサ12から供給される実画像λ~tと、ステップS53で状態パーティクル記憶部43に記憶された時刻tの状態パーティクルzi(l) t、及び、ステップS56で状態パーティクル記憶部43に記憶された重みwi(l) tとを用いて、見えモデル記憶部15に記憶された背景見えモデルμwを更新し、処理は、ステップS60に進む。
すなわち、見えモデル更新部14は、式(28)ないし式(33)に従って、背景見えモデルμw(背景テクスチャモデルτw)を更新する。
ステップS60では、運動モデル推定部18(図23)において、運動モデルパーティクル更新部52は、運動モデルパーティクル記憶部53に記憶された時刻t-1のL個のパーティクルとしての前景#iの運動モデル(以下、運動モデルパーティクルともいう)ai(1) t-1ないしai(L) t-1の中から、まだ、注目する注目運動モデルパーティクルに選択していない1つの運動モデルパーティクルai(l) t-1を、注目運動モデルパーティクルに選択して、処理は、ステップS61に進む。
ステップS61では、運動モデルパーティクル更新部52が、運動モデルパーティクル記憶部53に記憶された時刻t-1の注目運動モデルパーティクルai(l) t-1から、式(44)に従って、次の時刻tの注目運動モデルパーティクルai(l) tを予測する。
さらに、ステップS61では、運動モデルパーティクル更新部52は、時刻tの注目運動モデルパーティクルai(l) tを、運動モデルパーティクル記憶部53に供給し、時刻t-1のパーティクルとしての運動モデルai(l) t-1に代えて記憶させ、処理は、ステップS62に進む。
ステップS62では、推定観測値生成部54(図23)が、最尤状態系列記憶部17に記憶された、時刻t-TDYNの最尤状態zi t-TDYNを初期値とし、運動モデルパーティクル記憶部53に記憶された注目運動モデルパーティクルai(l) t、及び、アクション系列記憶部23に記憶されたアクションの系列Ui t-1={ui t-TDYN,ui t-TDYN+1,・・・,ui t-1}を用いて、式(41)及び式(42)の運動方程式を計算することにより、注目運動モデルパーティクルai(l) tに対して、式(41)及び式(42)の運動方程式に従って運動する前景#iの状態系列Z^i(l) t-TDYN+1:t={z^i(l) t-TDYN+1,z^i(l) t-TDYN+2,・・・,z^i(l) t}を求める。
そして、推定観測値生成部54は、注目運動モデルパーティクルai(l) tに対して求められた状態系列Z^i(l) t-TDYN+1:t={z^i(l) t-TDYN+1,z^i(l) t-TDYN+2,・・・,z^i(l) t}を、運動モデル尤度計算部51に供給して、処理は、ステップS62からステップS63に進む。
ステップS63では、運動モデル尤度計算部51は、最尤状態系列記憶部17に記憶された最尤系列Zi t={zi t-TDYN+1,zi t-TDYN+2,・・・,zi t}と、推定観測値生成部54からの、注目運動モデルパーティクルai(l) tに対する状態系列Z^i(l) t-TDYN+1:t={z^i(l) t-TDYN+1,z^i(l) t-TDYN+2,・・・,z^i(l) t}とを用い、式(43)に従って、運動モデルai tが、注目運動モデルパーティクルai(l) tである場合の、状態系列Z^i(l) t-TDYN+1:tの観測尤度p(zi t|ai)=p(Zi t|ai(l) t)を求める。
そして、運動モデル尤度計算部51は、観測尤度p(zi t|ai)=p(Zi t|ai(l) t)を、運動モデルパーティクル更新部52に供給して、処理は、ステップS63からステップS64に進む。
ステップS64では、運動モデルパーティクル更新部52は、運動モデル尤度計算部51からの観測尤度p(Zi t|ai(l) t)を、式(14)の観測尤度p(xi t|zi(l) t)に代えて用い、式(14)に従い、注目運動モデルパーティクルai(l) tの重みwi(l) tを求める。
そして、運動モデルパーティクル更新部52は、注目運動モデルパーティクルai(l) tの重みwi(l) tを、運動モデルパーティクルai(l) tと同様に、運動モデルパーティクル記憶部53に供給して記憶させ、処理は、ステップS64からステップS65に進む。
ステップS65では、運動モデルパーティクル更新部52は、運動モデルパーティクル記憶部53に記憶された時刻t-1のL個の運動モデルパーティクルai(1) t-1ないしai(L) t-1のすべてを、注目運動モデルパーティクルに選択したかどうかを判定する。
ステップS65において、L個の運動モデルパーティクルai(1) t-1ないしai(L) t-1を、まだ、注目運動モデルパーティクルに選択していないと判定された場合、処理は、ステップS60に戻り、運動モデルパーティクル更新部52は、L個の運動モデルパーティクルai(1) t-1ないしai(L) t-1のうちの、まだ、注目運動モデルパーティクルに選択していない1つの運動モデルパーティクルを、注目運動モデルパーティクルに新たに選択して、以下、同様の処理が繰り返す。
また、ステップS65において、L個の運動モデルパーティクルai(1) t-1ないしai(L) t-1のすべてを、注目運動モデルパーティクルに選択したと判定された場合、処理は、ステップS66に進み、運動モデル更新部19(図21)は、運動モデルパーティクル記憶部53に記憶された運動モデルパーティクルai(l) t及び重みwi(l) tを用い、式(45)に従って、運動モデル記憶部20に記憶された運動モデルaiを更新し、処理は、ステップS67に進む。
ステップS67では、エージェントは、実画像λ~tに対して、N個の前景モデル#1ないし#Nのすべてを、注目モデルに選択したかどうかを判定する。
ステップS67において、N個の前景モデル#1ないし#Nが、まだ、注目モデルに選択されていないと判定された場合、処理は、ステップS51に戻る。ステップS51では、エージェントは、実画像λ~tに対して、まだ、注目モデルに選択していない前景モデル#iを、注目モデルに新たに選択し、以下、同様の処理が繰り返される。
また、ステップS67において、N個の前景モデル#1ないし#Nのすべてが、注目モデルに選択されたと判定された場合、処理は、ステップS68に進み、状態パーティクル更新部42(図22)は、状態パーティクル記憶部43に記憶された重みwi(l) tに対応する確率で、同じく状態パーティクル記憶部43に記憶された状態パーティクルzi(l) tを選択するリサンプリングを行い、状態パーティクル記憶部43に記憶された状態パーティクルzi(l) tを、リサンプリング結果に書き換えて、処理は、ステップS69に進む。
リサンプリング結果としての状態パーティクルzi(l) tは、次の時刻t+1の観測尤度p(xi t+1|zi(l) t+1)が得られた後に、式(20)、又は、式(21)に従って、時刻t+1の状態zi t+1としての状態パーティクルzi(l) t+1を予測するときに用いられる。
ステップS69では、運動モデルパーティクル更新部52(図23)は、運動モデルパーティクル記憶部53に記憶された重みwi(l) tに対応する確率で、同じく運動モデルパーティクル記憶部53に記憶された運動モデルパーティクルai(l) tを選択するリサンプリングを行い、運動モデルパーティクル記憶部53に記憶された運動モデルパーティクルai(l) tを、リサンプリング結果に書き換える。
リサンプリング結果としての運動モデルパーティクルai(l) tは、次の時刻t+1の観測尤度p(Zi t+1|ai(l) t+1)が得られた後に、式(44)に従って、時刻t+1の運動モデルai t+1としての運動モデルパーティクルai(l) t+1を予測するときに用いられる。
ステップS69の処理後は、センサ12において、次の時刻の実画像λ~t+1が撮影され、その実画像λ~t+1が、センサ12から前景状態推定部13に供給されるのを待って、ステップS51に戻り、以下、同様の処理が繰り返される。
なお、図26において、ステップS52ないしS57、及び、ステップS60ないしS65が、EMアルゴリズムのEステップに相当し、ステップS58及びS59、並びに、ステップS66が、EMアルゴリズムのMステップに相当する。
図27は、エージェントが物体操作のために行うアクション制御処理の概要を説明するフローチャートである。
ステップS71において、アクション出力部63(図24)は、最尤状態系列記憶部17に記憶された現在時刻tの最尤状態zi tと、目標生成部21で生成された目標状態としての目標位置stgt及び目標姿勢qtgtとに基づいて、操作対象の物体の最尤状態zi tとしての位置si tの、目標位置stgtに対する誤差(以下、位置誤差ともいう)と、最尤状態zi tとしての姿勢si tの、目標姿勢qtgtに対する誤差(以下、姿勢誤差ともいう)とが、いずれも、十分小さいかどうかを判定する。
ステップS71において、位置誤差、及び、姿勢誤差のうちの一方、又は、両方が、十分小さくないと判定された場合、すなわち、位置誤差、又は、姿勢誤差が、所定の閾値以下でない場合、処理は、ステップS72に進み、アクション出力部63は、ステップS71と同様にして、位置誤差が、十分小さいかどうかを判定する。
ステップS72において、位置誤差が、十分小さくないと判定された場合、すなわち、位置誤差が、所定の閾値以下でない場合、処理は、ステップS73に進み、アクション生成部22(図24)は、並進運動制御を行う。
すなわち、ステップS73では、並進運動制御部61は、見えモデル記憶部15に記憶された前景見えモデルμi、及び、最尤状態系列記憶部17に記憶された最尤状態zi tから、操作対象の前景(物体)#iの縁を認識し、図18で説明したようにして、前景#iの現在の状態(最尤状態zi t)としての位置si t=sobj tを、目標生成部21で生成された目標状態としての目標位置stgtに近づける並進運動を行うための作用点と、その作用点に加える力の力ベクトルを求め、アクション出力部63に供給する。
アクション出力部63は、並進運動制御部61からの作用点と力ベクトルに従い、その作用点に、その力ベクトルの力を加えるための速度ベクトルs・manip tを、式(48)に従って生成し、ハンドのアクションとして、アクチュエータ制御部11、及び、アクション系列記憶部23に出力する。
その後、処理は、ステップS73からステップS71に戻り、以下、同様の処理が繰り返される。
一方、ステップS72において、位置誤差が、十分小さいと判定された場合、すなわち、位置誤差が、所定の閾値以下である場合、処理は、ステップS73に進み、アクション生成部22は、回転運動制御を行う。
すなわち、ステップS74では、回転運動制御部62は、見えモデル記憶部15に記憶された前景見えモデルμi、及び、最尤状態系列記憶部17に記憶された最尤状態zi tから、操作対象の前景(物体)#iの縁を認識し、図19で説明したようにして、前景#iの現在の状態(最尤状態zi t)としての姿勢qi t=qobj tを、目標姿勢qtgtに近づける回転運動を行うための作用点と、その作用点に加える力の力ベクトルを求める。
そして、回転運動制御部62は、作用点と力ベクトルとを、アクション出力部63に供給する。
アクション出力部63は、回転運動制御部62からの作用点と力ベクトルに従い、その作用点に、その力ベクトルの力を加えるための速度ベクトルs・manip tを、式(48)に従って生成し、ハンドのアクションとして、アクチュエータ制御部11、及び、アクション系列記憶部23に出力する。
その後、処理は、ステップS74からステップS71に戻り、以下、同様の処理が繰り返される。
そして、ステップS71において、位置誤差、及び、姿勢誤差の両方が、十分小さいと判定された場合、アクション制御処理は、終了する。
なお、図27のアクション制御処理では(後述する図28でも同様)、並進運動が優先的に行われ、位置誤差が小さくなると、回転運動が行われるが、逆に、回転運動を優先的に行い、姿勢誤差が小さくなった場合に、並進運動を行うことが可能である。
図28は、エージェントが物体操作のために行うアクション制御処理の詳細を説明するフローチャートである。
ステップS81において、目標生成部21は、目標状態としての目標位置stgt及び目標姿勢qtgtを生成(決定)し、アクション生成部22(図24)の並進運動制御部61、回転運動制御部62、及び、アクション出力部63に供給して、処理は、ステップS82に進む。
ステップS82では、アクション出力部63は、最尤状態系列記憶部17に記憶された最尤状態zi tと、目標生成部21からの目標状態としての目標位置stgt及び目標姿勢qtgtとに基づいて、操作対象の物体の最尤状態zi tとしての位置si t=sobj tの、目標位置stgtに対する誤差(位置誤差)と、最尤状態zi tとしての姿勢si tの、目標姿勢qtgtに対する誤差(姿勢誤差)とが、いずれも、十分小さいかどうかを判定する。
ステップS82において、位置誤差、及び、姿勢誤差のうちの一方、又は、両方が、十分小さくないと判定された場合、すなわち、位置誤差、又は、姿勢誤差が、所定の閾値以下でない場合、処理は、ステップS83に進み、アクション出力部63は、ステップS82と同様にして、位置誤差が、十分小さいかどうかを判定する。
ステップS83において、位置誤差が、十分小さくないと判定された場合、すなわち、位置誤差が、所定の閾値以下でない場合、処理は、ステップS84ないしS86に順次進み、並進運動制御部61は、並進運動制御を行う。
すなわち、ステップS84において、並進運動制御部61は、見えモデル記憶部15に記憶された前景見えモデルμi、及び、最尤状態系列記憶部17に記憶された最尤状態zi tから、操作対象の前景(物体)#iの縁を認識する。
さらに、並進運動制御部61は、図18で説明したように、物体の目標位置stgtと、現在の位置(重心)sobj tとを結ぶ直線L1と、現在の物体の縁との交点を、作用点の候補に決定し、処理は、ステップS84からステップS85に進む。
ステップS85では、並進運動制御部61は、ステップS84で得られた作用点の候補のうちの、目標位置stgtから最も遠い候補を、力の作用点に選択(決定)し、処理は、ステップS86に進む。
ステップS86では、並進運動制御部61は、式(46)に従って、作用点に加える力の力ベクトルを求め、処理は、ステップS87に進む。
ステップS87では、並進運動制御部61は、ステップS84ないしS86で求めた作用点と力ベクトルを、アクション出力部63に出力し、処理は、ステップS92に進む。
一方、ステップS83において、位置誤差が、十分小さいと判定された場合、すなわち、位置誤差が、所定の閾値以下である場合、処理は、ステップS88ないしS91に順次進み、回転運動制御部62は、回転運動制御を行う。
すなわち、ステップS88において、回転運動制御部62は、見えモデル記憶部15に記憶された前景見えモデルμi、及び、最尤状態系列記憶部17に記憶された最尤状態zi tから、操作対象の前景(物体)#iの縁を認識する。
さらに、回転運動制御部62は、図19で説明したように、物体の現在の状態の位置(重心)sobj tを通る1以上の直線としての3本の直線L1,L2,L3それぞれと、現在の物体の縁との交点を、作用点の候補に決定し、処理は、ステップS88からステップS89に進む。
ステップS89では、回転運動制御部62は、ステップS88で得られた作用点の候補の中で、物体の縁を押すように力を加えたときに生じるトルクの方向が、物体を回転したい方向と一致する候補であって、物体の重心sobj tから最も遠い候補を、力の作用点に選択(決定)し、処理は、ステップS90に進む。
ステップS90では、回転運動制御部62は、作用点に加える力の力ベクトルによって発生させるトルクを、式(47)に従って求め、処理は、ステップS91に進む。
ステップS91では、回転運動制御部62は、ステップS90で求められたトルクを発生させるのに作用点に加える力の力ベクトルを求め、処理は、ステップS87に進む。
ステップS87では、回転運動制御部62は、ステップS88ないしS91で求めた作用点と力ベクトルを、アクション出力部63に出力し、処理は、ステップS92に進む。
ステップS92では、アクション出力部63が、物体操作のための運動制御が、並進運動制御部61による並進運動制御、及び、回転運動制御部62による回転運動制御のうちの一方から他方に切り替わった直後であるかどうかを判定する。
ステップS92において、運動制御が、並進運動制御、及び、回転運動制御のうちの一方から他方に切り替わった直後であると判定された場合、処理は、ステップS93に進み、アクション出力部63は、図20で説明した初期位置に、ハンドを移動させるアクションを出力する。
そして、ハンドが初期位置に移動するのを待って、処理は、ステップS93からステップS94に進む。
一方、ステップS92において、運動制御が、並進運動制御、及び、回転運動制御のうちの一方から他方に切り替わった直後でないと判定された場合、処理は、ステップS93をスキップして、ステップS94に進み、アクション出力部63は、並進運動制御部61、又は、回転運動制御部62からの作用点と力ベクトルに従い、その作用点に、その力ベクトルの力を加えるための速度ベクトルs・manip tを、式(48)に従って生成する。
さらに、アクション出力部63は、式(48)に従って生成した速度ベクトルs・manip tを、ハンドのアクションとして、アクチュエータ制御部11、及び、アクション系列記憶部23に出力し、処理は、ステップS82に戻る。
そして、ステップS82において、位置誤差、及び、姿勢誤差の両方が、十分小さいと判定された場合、すなわち、位置誤差、及び、姿勢誤差が、いずれも、所定の閾値以下である場合、操作対象の物体の状態が、目標生成部21で生成された目標状態になったとして、アクション制御処理は、終了する。
[シミュレーション]
図29は、コンピュータにおいて、背景上に、2つの前景#1及び#2を合成することにより作成した画像を、実画像λ~tとして用いた行った学習処理、及び、アクション制御処理のシミュレーションの結果を、模式的に示す図である。
シミュレーションでは、L字型の物体としての前景#1が、円形のハンドとしての前景#2によって操作される様子が映った画像を、実画像λ~tとして用いて、前景モデル、背景モデル、及び、運動モデルの学習処理を行った。
図29Aは、ある時刻tの実画像λ~tを示している。
図29Bは、時刻tにおいて得られている前景見えモデルμ1(前景テクスチャモデルτ1、及び、前景形状モデルσ1)を、最尤状態z1 tで、背景見えモデルμw=τw上に重畳するとともに、前景見えモデルμ2(前景テクスチャモデルτ2、及び、前景形状モデルσ2)を、最尤状態z2 tで、背景見えモデルμw上に重畳することにより生成した観測画像λtを示している。
図29Cは、円形のハンドによって、L字型の物体を操作するときの様子、特に、操作対象のL字型の物体に働く力ベクトルと、その力ベクトルが加えられる作用点を示している。
図29Dは、前景#1の前景見えモデルμ1の前景テクスチャモデルτ1、及び、前景形状モデルσ1、並びに、前景#2の前景見えモデルμ2の前景テクスチャモデルτ2、及び、前景形状モデルσ2を示している。
図29Eは、背景見えモデルμw=τwを示している。
図29Fは、操作対象の前景#1の運動モデルa1としての、ある時刻tの、ある2つの運動モデルパーティクル(丸印と星印で示す)それぞれの重心r1 cを示している。
図29Gは、操作対象の前景#1の運動モデルa1としての、ある時刻tの、ある2つの運動モデルパーティクル(丸印と星印で示す)それぞれの質量m1 c及び慣性モーメントI1 cを示している。
本件発明者が行ったシミュレーションによれば、学習処理が進行するにつれ、実画像λ~tの前景と背景とが、前景モデルと背景モデルとで、それぞれ分離して獲得され、さらに、実画像λ~tの2つの前景#1及び#2については、別個の前景モデルそれぞれで排他的に獲得されていき、前景見えモデルμ1及びμ2、並びに、背景見えモデルμwが、それぞれ、実画像λ~tに映る前景#1及び#2、並びに、背景に収束していく様子を確認することができた。
また、シミュレーションでは、前景見えモデルμ1及びμ2、並びに、背景見えモデルμwの収束に従って、それらの前景見えモデルμ1及びμ2、並びに、背景見えモデルμwを用いて生成される観測画像λtが、実画像λ~tに近づいていくことを確認することができた。
以上のように、本技術によれば、アクションを行うことが可能なエージェントにおいて観測される実画像λ~tの系列を、学習用の学習データとして用いて、前景や背景を区別する明示的な教師ラベルなしに、エージェントがおかれた環境中の前景の見えとその(空間的)状態、並びに、背景の見えを同時に学習する前景背景学習を、容易に行うことができる。
すなわち、本技術によれば、背景上を、複数の前景が位置や姿勢等の状態を変化させながら動いている場合に、前景の見えや状態等の情報をあらかじめ教示しなくても、背景上に前景が重畳された実画像の時系列を学習データとして用いて、前景の見え、位置や姿勢等の状態、背景の見えを同時に獲得することができる。
また、本技術によれば、実画像の他、前景のアクションの系列をも、学習データとして用いることにより、前景の運動モデルを獲得することができ、さらに、前景の運動が、剛体運動の動力学モデルに従うことを考慮して、前景の状態を精度良く推定し、ひいては、前景の見え、及び、背景の見えを、精度良く獲得することができる。
その他、本技術によれば、パーティクルフィルタを適用し、前景の観測尤度p(xt|zi(l) t)が高いパーティクルzi(l) tとしての状態だけを対象に処理を行うので、例えば、背景のすべての画素について、その画素の位置に、前景が存在しうることを考慮して処理を行う場合に比較して、計算コストを飛躍的に小さくすることができ、その結果、スケーラビリティを向上させることができる。
例えば、背景の各画素について、その画素の位置に、前景が存在しうることを考慮して処理を行う場合、標準的な家庭用PCで、1fps(Frames Per Second)の計算処理を実行するには、横×縦が30×40画素程度の解像度の画像が、実画像として用いることができる画像の限界であったが、本技術によれば、128×128画素ないし640×480画素程度の解像度の画像を、実画像として用いることができる。
また、本技術によれば、前景#iの状態zi tとして、前景#iの位置si tの他、姿勢qi tや、位置si tの変化の速度s・i t、姿勢qi tの変化の速度q・i tを扱うことができる。すなわち、本技術では、2次元の実画像については、位置si tとしてのx座標及びy座標、姿勢qi tとしての回転角、位置si tの変化の速度s・i tとしてのx成分及びy成分、並びに、姿勢qi tの変化の速度q・i tとしての角速度の6自由度を扱うことができる。
さらに、本技術では、時刻t+1に、観測値xt+1を観測したとき、時刻tまでに、観測値の系列Xt={x1,x2,・・・,xt}が観測され、時刻t+1に、状態zt+1にいる事後分布p(zt+1|Xt)が、時刻tに状態z(l) tにいて、時刻t+1に状態zt+1に遷移する遷移確率p(zt+1|z(l) t)と、パーティクルz(l) tの重みw(l) tとを用いた式(15)の混合分布であるため、そのような事後分布p(zt+1|Xt)の前景の状態としては、連続量を扱うことができる。
また、本技術では、前景見えモデルμiが、前景#iのテクスチャを表す前景テクスチャモデルτiと、画素値が前景の画素である確率を表す前景形状モデルσiとを含むので、前景見えモデルμiによれば、複雑な形状の前景であっても、その前景を精度良く表現することができる。
さらに、本技術によれば、前景の状態を推定し、その前景の推定結果を用いて、前景見えモデルμi、及び、背景見えモデルμwを更新する他、前景の推定結果を用いて、前景の空間遷移を表現する動力学パラメータである運動モデルを推定し、その運動モデルの推定結果を用いて、運動モデルを更新するので、前景#iの運動モデルaiとしての、重心ri c、質量mi、及び、慣性モーメントIi cを精度良く獲得することができる。
また、本技術によれば、前景見えモデルμi(の前景形状モデルσi)や運動モデルを用いて、環境中の物体を、任意の状態(目標状態)にする物体操作を行うことができる。
さらに、本技術では、前景#iの状態zi tとして、前景#iの位置si t、及び、姿勢qi tの他、その位置si t、及び、姿勢qi tの一次微分である位置si tの変化の速度s・i t、及び、姿勢qi tの変化の速度q.・i tを扱うので、例えば、氷の上を滑る剛体のように、慣性の法則に従って、等速度運動や等角速度運動(に近い運動)をする前景を正確にモデル化することができる。
また、本技術によれば、実世界での物体操作のように、物体の姿勢を変化させる操作や、動力学の法則に従って運動する物体を操作することができる。
例えば、本技術では、細長い物体を操作する場合に、より重心に近い位置に力を加えればより安定的に並進運動をすることができることや、物体の姿勢を変化させるためには、重心からより遠い位置に力を加えればより小さい力で姿勢を変化させることができること等を考慮して、物体操作を行うことができる。
したがって、本技術については、将来的に、3次元環境で実装し、実環境下で活動するエージェントの環境認識や、行動制御技術として応用されることを期待することができる。
さらに、本技術においては、実画像の系列とアクションの系列を、学習データとして与えるだけで、前景と背景とが別個に学習されるとともに、前景の運動モデルも学習され、最終的には、物体操作を行うことができるようになるので、従来のように、環境モデルをあらかじめ人間が作り込み、データベース化する手間が必要ない。したがって、任意の環境設定下での適応能力の向上を期待することができる。
また、本技術では、物体操作のためのアクション制御は、操作対象の物体、及び、ハンドが前景として映っている実画像を用いた逐次的な学習によって得られた前景見えモデルμi、及び、運動モデルaiに基づいて実行される。
したがって、学習の初期段階では、前景見えモデルμi、及び、運動モデルaiの学習が十分に収束していないため、環境中におけるハンドや物体等の前景の認識を精度良く行うことは困難であり、さらに、物体操作のための適切なアクション制御を行うことも困難である。
しかしながら、時間が経過し、学習が進行すると、前景の認識性能が向上し、それに伴い、物体操作のための適切なアクション制御が可能となる。その結果、エージェントでは、ハンドが、操作対象の物体に効率良く接触するように、ハンドを動かすことが可能となり、ハンドや物体等の前景の前景見えモデルμi、及び、運動モデルaiを正確に学習するための実画像が観測されやすくなるので、時間が経過するほど、学習能率が向上していくことが期待される。
ここで、本技術において、前景の認識では、例えば、生成モデルから生成される観測画像λt(s)上の、最尤状態zi tになっている前景#iの観測値xtが観測される観測尤度p(xt|zi t)が、式(19)に従い、各前景モデル#iについて計算され、観測尤度p(xt|zi t)が所定の閾値以上の前景モデル#iが、最尤状態zi tで、背景上に存在すると認識される。
[本技術を適用したコンピュータの説明]
次に、上述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータ等にインストールされる。
そこで、図30は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。
プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク105やROM103に予め記録しておくことができる。
あるいはまた、プログラムは、リムーバブル記録媒体111に格納(記録)しておくことができる。このようなリムーバブル記録媒体111は、いわゆるパッケージソフトウエアとして提供することができる。ここで、リムーバブル記録媒体111としては、例えば、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory),MO(Magneto Optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリ等がある。
なお、プログラムは、上述したようなリムーバブル記録媒体111からコンピュータにインストールする他、通信網や放送網を介して、コンピュータにダウンロードし、内蔵するハードディスク105にインストールすることができる。すなわち、プログラムは、例えば、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送することができる。
コンピュータは、CPU(Central Processing Unit)102を内蔵しており、CPU102には、バス101を介して、入出力インタフェース110が接続されている。
CPU102は、入出力インタフェース110を介して、ユーザによって、入力部107が操作等されることにより指令が入力されると、それに従って、ROM(Read Only Memory)103に格納されているプログラムを実行する。あるいは、CPU102は、ハードディスク105に格納されたプログラムを、RAM(Random Access Memory)104にロードして実行する。
これにより、CPU102は、上述したフローチャートにしたがった処理、あるいは上述したブロック図の構成により行われる処理を行う。そして、CPU102は、その処理結果を、必要に応じて、例えば、入出力インタフェース110を介して、出力部106から出力、あるいは、通信部108から送信、さらには、ハードディスク105に記録等させる。
なお、入力部107は、キーボードや、マウス、マイク等で構成される。また、出力部106は、LCD(Liquid Crystal Display)やスピーカ等で構成される。
ここで、本明細書において、コンピュータがプログラムに従って行う処理は、必ずしもフローチャートとして記載された順序に沿って時系列に行われる必要はない。すなわち、コンピュータがプログラムに従って行う処理は、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)も含む。
また、プログラムは、1のコンピュータ(プロセッサ)により処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。
さらに、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
なお、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
例えば、本技術は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
なお、本技術は、以下のような構成をとることができる。
[1]
実際に観測される画像である実画像を用いて、画像の前景の状態を推定する前景状態推定部と、
前記前景の状態の推定結果を用いて、画像の背景の見えの背景見えモデル、及び、前記前景の見えの前景見えモデルを更新する見えモデル更新部と
を備える情報処理装置。
[2]
前記前景のアクションと、前記前景の状態の推定結果から得られる前記前景の最尤状態の状態系列とを用いて、前記前景の運動モデルを推定する運動モデル推定部と、
前記運動モデルの推定結果を用いて、前記運動モデルを更新する運動モデル更新部と
を、さらに備える
[1]に記載の情報処理装置。
[3]
前記背景見えモデルは、前記背景のテクスチャを表す背景テクスチャモデルを含み、
前記前景見えモデルは、前記前景のテクスチャを表す前景テクスチャモデルと、前記前景の形状を表す前景形状モデルとを含み、
前記前景の状態は、前記前景の位置及び位置変化の速度、並びに、姿勢及び姿勢変化の速度を含み、
前記前景の運動モデルは、前記前景の質量、質量の重心、及び、重心回りの慣性モーメントを含み、
前記前景のアクションは、前記前景に加えられる力と、前記力が加えられる位置とを含む
[2]に記載の情報処理装置。
[4]
前記背景見えモデル、前記前景見えモデル、及び、前記運動モデルは、EMアルゴリズムに従って更新される
[3]に記載の情報処理装置。
[5]
前記背景見えモデル、前記前景見えモデル、及び、前記運動モデルは、パーティクルフィルタを用いたEMアルゴリズムに従って更新される
[3]又は[4]に記載の情報処理装置。
[6]
前記前景状態推定部は、前記前景の状態を表すパーティクルである状態パーティクルの重みと、前記状態パーティクルの遷移先とを算出する処理を、前記パーティクルフィルタを用いたEMアルゴリズムのEステップとして行う
[5]に記載の情報処理装置。
[7]
前記前景状態推定部は、
前記前景の状態が、前記状態パーティクルが表す状態である場合に、画像の観測値を生成する生成モデルにおいて観測される観測値の観測尤度に対応する値を、前記状態パーティクルの重みとして算出するとともに、
前記状態パーティクルが、前記状態パーティクルが表す前記前景の状態のうちの前記位置変化の速度、及び、前記姿勢変化の速度に従い、かつ、確率的に揺らぎながら遷移することとして、前記状態パーティクルの遷移先を算出し、
前記生成モデルでは、
前記前景見えモデルが表す画像上の点については、前記前景テクスチャモデルが表すテクスチャと、前記背景テクスチャモデルが表すテクスチャとを、前記前景形状モデルをα値としてαブレンディングし、
前記前景見えモデルが表す画像上の点以外の点については、前記背景テクスチャモデルが表すテクスチャを採用する
ことにより、前記生成モデルにおいて観測される前記画像の観測値が生成される
[6]に記載の情報処理装置。
[8]
前記前景状態推定部は、前記状態パーティクルが、さらに、前記アクション及び前記運動モデルに従って遷移することとして、前記状態パーティクルの遷移先を算出する
[7]に記載の情報処理装置。
[9]
前記見えモデル更新部は、
前記状態パーティクルが表す状態に従って、前記実画像から画像を切り出し、前記実画像から切り出した画像である切り出し画像を、前記状態パーティクルの重みに従って重み付け加算することにより、前記前景テクスチャモデルを更新する処理、
前記状態パーティクルが表す状態に従って、前記実画像から、前記状態に対応する前景を除去し、前記前景を除去した実画像を、前記状態パーティクルの重みに従って重み付け加算することにより、前記背景テクスチャモデルを更新する処理、
及び、前記前景テクスチャモデルが表すテクスチャの各画素が前景であることの尤度、及び、背景であることの尤度を求め、前記前景であることの尤度、及び、背景であることの尤度を用いて、前記前景テクスチャモデルが表すテクスチャの各画素が前景である確率を求めることにより、前記前景形状モデルを更新する処理
を、前記パーティクルフィルタを用いたEMアルゴリズムのMステップとして行う
[6]ないし[8]のいずれかに記載の情報処理装置。
[10]
前記見えモデル更新部は、
前記切り出し画像を、前記状態パーティクルの重みに従って重み付け加算した重み付け加算値を、所定時間分だけ平均化することにより、前記前景テクスチャモデルを更新するとともに、
前記前景を除去した実画像を、前記状態パーティクルの重みに従って重み付け加算した重み付け加算値を、所定時間分だけ平均化することにより、前記背景テクスチャモデルを更新する
[9]に記載の情報処理装置。
[11]
前記見えモデル更新部は、複数の前景見えモデルについては、
前記複数の前景見えモデルを、順次、注目する注目モデルとして、直前に注目モデルであった前景見えモデルが表す前景が除去された除去画像から、前記状態パーティクルが表す状態に従って、前記状態に対応する前景を除去し、前記前景を除去した除去画像を、前記状態パーティクルの重みに従って重み付け加算する
ことを繰り返すことにより、前記背景テクスチャモデルを更新する
[9]又は[10]に記載の情報処理装置。
[12]
前記運動モデル推定部は、前記運動モデルを表すパーティクルである運動モデルパーティクルの重みと、前記運動モデルパーティクルの遷移先とを算出する処理を、前記パーティクルフィルタを用いたEMアルゴリズムのEステップとして行う
[5]に記載の情報処理装置。
[13]
前記運動モデル推定部は、
前記運動モデルパーティクルが表す運動モデルにおいて観測される前記前景の状態の状態系列の観測尤度に対応する値を、前記運動モデルパーティクルの重みとして算出するとともに、
前記運動モデルパーティクルが、確率的に揺らぎながら遷移することとして、前記運動モデルパーティクルの遷移先を算出する
[12]に記載の情報処理装置。
[14]
前記前景の最尤状態を求める最尤状態算出部をさらに備え、
前記運動モデル推定部は、前記前景のアクション、及び、前記運動モデルパーティクルを用いて生成される前記前景の状態の状態系列と、前記前景の最尤状態の状態系列との誤差に対応する値を、前記前景の状態の状態系列の観測尤度として求める
[13]に記載の情報処理装置。
[15]
前記運動モデル更新部は、前記運動モデルパーティクルが表す運動モデルを、前記運動モデルパーティクルの重みに従って重み付け加算することにより、前記運動モデルを更新する処理を、前記パーティクルフィルタを用いたEMアルゴリズムのMステップとして行う
[12]ないし[14]のいずれかに記載の情報処理装置。
[16]
前記前景見えモデル、及び、前記運動モデルを用いて、1の前景を、所定の目標状態にするための他の1の前景のアクションを生成するアクション生成部をさらに備える
[2]ないし[15]のいずれかに記載の情報処理装置。
[17]
前記アクション生成部は、前記1の前景を、並進運動させるアクションと、回転運動させるアクションとを生成する
[16]に記載の情報処理装置。
[18]
前記アクション生成部は、前記1の前景を、並進運動させるアクションと、回転運動させるアクションとのうちの一方のアクションを、前記1の前景の状態と前記目標状態との誤差が小さくなるまで生成し続け、その後、他方のアクションを生成する
[17]に記載の情報処理装置。
[19]
実際に観測される画像である実画像を用いて、画像の前景の状態を推定し、
前記前景の状態の推定結果を用いて、画像の背景の見えの背景見えモデル、及び、前記前景の見えの前景見えモデルを更新する
ステップを含む情報処理方法。
[20]
実際に観測される画像である実画像を用いて、画像の前景の状態を推定する前景状態推定部と、
前記前景の状態の推定結果を用いて、画像の背景の見えの背景見えモデル、及び、前記前景の見えの前景見えモデルを更新する見えモデル更新部と
して、コンピュータを機能させるためのプログラム。
11 アクチュエータ制御部, 12 センサ, 13 前景状態推定部, 14 見えモデル更新部, 15 見えモデル記憶部, 16 最尤状態算出部, 17 最尤状態系列記憶部, 18 運動モデル推定部, 19 運動モデル更新部, 20 運動モデル記憶部, 21 目標生成部, 22 アクション生成部, 23 アクション系列記憶部, 41 見えモデル尤度計算部, 42 状態パーティクル更新部, 43 状態パーティクル記憶部, 44 推定観測値生成部, 51 運動モデル尤度計算部, 52 運動モデルパーティクル更新部, 53 運動モデルパーティクル記憶部, 54 推定観測値生成部, 61 並進運動制御部, 62 回転運動制御部, 63 アクション出力部, 101 バス, 102 CPU, 103 ROM, 104 RAM, 105 ハードディスク, 106 出力部, 107 入力部, 108 通信部, 109 ドライブ, 110 入出力インタフェース, 111 リムーバブル記録媒体

Claims (20)

  1. 実際に観測される画像である実画像を用いて、画像の前景の状態を推定する前景状態推定部と、
    前記前景の状態の推定結果を用いて、画像の背景の見えの背景見えモデル、及び、前記前景の見えの前景見えモデルを更新する見えモデル更新部と
    を備える情報処理装置。
  2. 前記前景のアクションと、前記前景の状態の推定結果から得られる前記前景の最尤状態の状態系列とを用いて、前記前景の運動モデルを推定する運動モデル推定部と、
    前記運動モデルの推定結果を用いて、前記運動モデルを更新する運動モデル更新部と
    を、さらに備える
    請求項1に記載の情報処理装置。
  3. 前記背景見えモデルは、前記背景のテクスチャを表す背景テクスチャモデルを含み、
    前記前景見えモデルは、前記前景のテクスチャを表す前景テクスチャモデルと、前記前景の形状を表す前景形状モデルとを含み、
    前記前景の状態は、前記前景の位置及び位置変化の速度、並びに、姿勢及び姿勢変化の速度を含み、
    前記前景の運動モデルは、前記前景の質量、質量の重心、及び、重心回りの慣性モーメントを含み、
    前記前景のアクションは、前記前景に加えられる力と、前記力が加えられる位置とを含む
    請求項2に記載の情報処理装置。
  4. 前記背景見えモデル、前記前景見えモデル、及び、前記運動モデルは、EMアルゴリズムに従って更新される
    請求項3に記載の情報処理装置。
  5. 前記背景見えモデル、前記前景見えモデル、及び、前記運動モデルは、パーティクルフィルタを用いたEMアルゴリズムに従って更新される
    請求項4に記載の情報処理装置。
  6. 前記前景状態推定部は、前記前景の状態を表すパーティクルである状態パーティクルの重みと、前記状態パーティクルの遷移先とを算出する処理を、前記パーティクルフィルタを用いたEMアルゴリズムのEステップとして行う
    請求項5に記載の情報処理装置。
  7. 前記前景状態推定部は、
    前記前景の状態が、前記状態パーティクルが表す状態である場合に、画像の観測値を生成する生成モデルにおいて観測される観測値の観測尤度に対応する値を、前記状態パーティクルの重みとして算出するとともに、
    前記状態パーティクルが、前記状態パーティクルが表す前記前景の状態のうちの前記位置変化の速度、及び、前記姿勢変化の速度に従い、かつ、確率的に揺らぎながら遷移することとして、前記状態パーティクルの遷移先を算出し、
    前記生成モデルでは、
    前記前景見えモデルが表す画像上の点については、前記前景テクスチャモデルが表すテクスチャと、前記背景テクスチャモデルが表すテクスチャとを、前記前景形状モデルをα値としてαブレンディングし、
    前記前景見えモデルが表す画像上の点以外の点については、前記背景テクスチャモデルが表すテクスチャを採用する
    ことにより、前記生成モデルにおいて観測される前記画像の観測値が生成される
    請求項6に記載の情報処理装置。
  8. 前記前景状態推定部は、前記状態パーティクルが、さらに、前記アクション及び前記運動モデルに従って遷移することとして、前記状態パーティクルの遷移先を算出する
    請求項7に記載の情報処理装置。
  9. 前記見えモデル更新部は、
    前記状態パーティクルが表す状態に従って、前記実画像から画像を切り出し、前記実画像から切り出した画像である切り出し画像を、前記状態パーティクルの重みに従って重み付け加算することにより、前記前景テクスチャモデルを更新する処理、
    前記状態パーティクルが表す状態に従って、前記実画像から、前記状態に対応する前景を除去し、前記前景を除去した実画像を、前記状態パーティクルの重みに従って重み付け加算することにより、前記背景テクスチャモデルを更新する処理、
    及び、前記前景テクスチャモデルが表すテクスチャの各画素が前景であることの尤度、及び、背景であることの尤度を求め、前記前景であることの尤度、及び、背景であることの尤度を用いて、前記前景テクスチャモデルが表すテクスチャの各画素が前景である確率を求めることにより、前記前景形状モデルを更新する処理
    を、前記パーティクルフィルタを用いたEMアルゴリズムのMステップとして行う
    請求項6に記載の情報処理装置。
  10. 前記見えモデル更新部は、
    前記切り出し画像を、前記状態パーティクルの重みに従って重み付け加算した重み付け加算値を、所定時間分だけ平均化することにより、前記前景テクスチャモデルを更新するとともに、
    前記前景を除去した実画像を、前記状態パーティクルの重みに従って重み付け加算した重み付け加算値を、所定時間分だけ平均化することにより、前記背景テクスチャモデルを更新する
    請求項9に記載の情報処理装置。
  11. 前記見えモデル更新部は、複数の前景見えモデルについては、
    前記複数の前景見えモデルを、順次、注目する注目モデルとして、直前に注目モデルであった前景見えモデルが表す前景が除去された除去画像から、前記状態パーティクルが表す状態に従って、前記状態に対応する前景を除去し、前記前景を除去した除去画像を、前記状態パーティクルの重みに従って重み付け加算する
    ことを繰り返すことにより、前記背景テクスチャモデルを更新する
    請求項9に記載の情報処理装置。
  12. 前記運動モデル推定部は、前記運動モデルを表すパーティクルである運動モデルパーティクルの重みと、前記運動モデルパーティクルの遷移先とを算出する処理を、前記パーティクルフィルタを用いたEMアルゴリズムのEステップとして行う
    請求項5に記載の情報処理装置。
  13. 前記運動モデル推定部は、
    前記運動モデルパーティクルが表す運動モデルにおいて観測される前記前景の状態の状態系列の観測尤度に対応する値を、前記運動モデルパーティクルの重みとして算出するとともに、
    前記運動モデルパーティクルが、確率的に揺らぎながら遷移することとして、前記運動モデルパーティクルの遷移先を算出する
    請求項12に記載の情報処理装置。
  14. 前記前景の最尤状態を求める最尤状態算出部をさらに備え、
    前記運動モデル推定部は、前記前景のアクション、及び、前記運動モデルパーティクルを用いて生成される前記前景の状態の状態系列と、前記前景の最尤状態の状態系列との誤差に対応する値を、前記前景の状態の状態系列の観測尤度として求める
    請求項13に記載の情報処理装置。
  15. 前記運動モデル更新部は、前記運動モデルパーティクルが表す運動モデルを、前記運動モデルパーティクルの重みに従って重み付け加算することにより、前記運動モデルを更新する処理を、前記パーティクルフィルタを用いたEMアルゴリズムのMステップとして行う
    請求項12に記載の情報処理装置。
  16. 前記前景見えモデル、及び、前記運動モデルを用いて、1の前景を、所定の目標状態にするための他の1の前景のアクションを生成するアクション生成部をさらに備える
    請求項5に記載の情報処理装置。
  17. 前記アクション生成部は、前記1の前景を、並進運動させるアクションと、回転運動させるアクションとを生成する
    請求項16に記載の情報処理装置。
  18. 前記アクション生成部は、前記1の前景を、並進運動させるアクションと、回転運動させるアクションとのうちの一方のアクションを、前記1の前景の状態と前記目標状態との誤差が小さくなるまで生成し続け、その後、他方のアクションを生成する
    請求項17に記載の情報処理装置。
  19. 実際に観測される画像である実画像を用いて、画像の前景の状態を推定し、
    前記前景の状態の推定結果を用いて、画像の背景の見えの背景見えモデル、及び、前記前景の見えの前景見えモデルを更新する
    ステップを含む情報処理方法。
  20. 実際に観測される画像である実画像を用いて、画像の前景の状態を推定する前景状態推定部と、
    前記前景の状態の推定結果を用いて、画像の背景の見えの背景見えモデル、及び、前記前景の見えの前景見えモデルを更新する見えモデル更新部と
    して、コンピュータを機能させるためのプログラム。
JP2012058679A 2012-03-15 2012-03-15 情報処理装置、情報処理方法、及び、プログラム Pending JP2013191163A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2012058679A JP2013191163A (ja) 2012-03-15 2012-03-15 情報処理装置、情報処理方法、及び、プログラム
US13/767,037 US9111172B2 (en) 2012-03-15 2013-02-14 Information processing device, information processing method, and program
CN2013100740270A CN103337063A (zh) 2012-03-15 2013-03-08 信息处理装置、信息处理方法和程序

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012058679A JP2013191163A (ja) 2012-03-15 2012-03-15 情報処理装置、情報処理方法、及び、プログラム

Publications (1)

Publication Number Publication Date
JP2013191163A true JP2013191163A (ja) 2013-09-26

Family

ID=49157719

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012058679A Pending JP2013191163A (ja) 2012-03-15 2012-03-15 情報処理装置、情報処理方法、及び、プログラム

Country Status (3)

Country Link
US (1) US9111172B2 (ja)
JP (1) JP2013191163A (ja)
CN (1) CN103337063A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020184101A1 (ja) * 2019-03-13 2020-09-17 日本電気株式会社 情報処理装置、駆動制御方法およびプログラム記憶媒体

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012212323A (ja) * 2011-03-31 2012-11-01 Sony Corp 情報処理装置、情報処理方法、及び、プログラム
JP6295122B2 (ja) * 2014-03-27 2018-03-14 株式会社メガチップス 状態推定装置、プログラムおよび集積回路
JP6317618B2 (ja) * 2014-05-01 2018-04-25 キヤノン株式会社 情報処理装置およびその方法、計測装置、並びに、作業装置
CN104574351B (zh) * 2014-08-06 2017-07-11 深圳市捷顺科技实业股份有限公司 一种基于视频处理的车位检测方法
US9844881B2 (en) * 2015-06-22 2017-12-19 GM Global Technology Operations LLC Robotic device including machine vision
US9946951B2 (en) * 2015-08-12 2018-04-17 International Business Machines Corporation Self-optimized object detection using online detector selection
CN107133549B (zh) 2016-02-29 2020-11-24 上海联影医疗科技有限公司 Ect运动门控信号获取方法及ect图像重建方法
CN109145681B (zh) * 2017-06-16 2021-02-26 北京京东尚科信息技术有限公司 用于判断目标旋转方向的方法及装置
CN110749321B (zh) * 2019-10-22 2021-05-04 中国人民解放军海军潜艇学院 航海绘算电子辅助方法、装置及系统

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0729081A (ja) 1993-07-14 1995-01-31 Toshiba Corp 移動物体認識装置
JP3426002B2 (ja) 1993-09-20 2003-07-14 三菱電機株式会社 物体認識装置
US20030006957A1 (en) * 2000-11-10 2003-01-09 Victor Colantonio Method and system for automatically covering video display of sensitive information
US7280697B2 (en) * 2001-02-01 2007-10-09 California Institute Of Technology Unsupervised learning of object categories from cluttered images
US6870945B2 (en) * 2001-06-04 2005-03-22 University Of Washington Video object tracking by estimating and subtracting background
US6954544B2 (en) * 2002-05-23 2005-10-11 Xerox Corporation Visual motion analysis method for detecting arbitrary numbers of moving objects in image sequences
US7627171B2 (en) * 2003-07-03 2009-12-01 Videoiq, Inc. Methods and systems for detecting objects of interest in spatio-temporal signals
JP4449410B2 (ja) 2003-10-27 2010-04-14 ソニー株式会社 ロボット装置及びその物体学習方法
US7623676B2 (en) * 2004-12-21 2009-11-24 Sarnoff Corporation Method and apparatus for tracking objects over a wide area using a network of stereo sensors
US20060204036A1 (en) * 2005-03-09 2006-09-14 Dean Huang Method for intelligent video processing
US7418113B2 (en) * 2005-04-01 2008-08-26 Porikli Fatih M Tracking objects in low frame rate videos
US7376246B2 (en) * 2005-06-27 2008-05-20 Mitsubishi Electric Research Laboratories, Inc. Subspace projection based non-rigid object tracking with particle filters
US7596241B2 (en) * 2005-06-30 2009-09-29 General Electric Company System and method for automatic person counting and detection of specific events
US7706610B2 (en) * 2005-11-29 2010-04-27 Microsoft Corporation Segmentation of objects by minimizing global-local variational energy
US8358806B2 (en) * 2007-08-02 2013-01-22 Siemens Corporation Fast crowd segmentation using shape indexing
TWI348659B (en) * 2007-10-29 2011-09-11 Ind Tech Res Inst Method and system for object detection and tracking
JP4561919B2 (ja) * 2008-04-21 2010-10-13 ソニー株式会社 撮像装置、画像処理装置及び画像処理方法
BRPI0917864A2 (pt) * 2008-08-15 2015-11-24 Univ Brown aparelho e método para estimativa da forma corporal
US20110032423A1 (en) * 2009-08-06 2011-02-10 Sony Corporation Adaptive user profiling for tv-centric home automation system
JP5617246B2 (ja) * 2010-01-12 2014-11-05 ソニー株式会社 画像処理装置、物体選択方法及びプログラム
US8787663B2 (en) * 2010-03-01 2014-07-22 Primesense Ltd. Tracking body parts by combined color image and depth processing
US8639026B2 (en) * 2010-10-28 2014-01-28 Qnap Systems, Inc. Background model learning system for lighting change adaptation utilized for video surveillance
JP2012212323A (ja) * 2011-03-31 2012-11-01 Sony Corp 情報処理装置、情報処理方法、及び、プログラム
JP5645079B2 (ja) * 2011-03-31 2014-12-24 ソニー株式会社 画像処理装置および方法、プログラム、並びに記録媒体
US8744123B2 (en) * 2011-08-29 2014-06-03 International Business Machines Corporation Modeling of temporarily static objects in surveillance video data
JP2014081863A (ja) * 2012-10-18 2014-05-08 Sony Corp 情報処理装置、情報処理方法、及び、プログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020184101A1 (ja) * 2019-03-13 2020-09-17 日本電気株式会社 情報処理装置、駆動制御方法およびプログラム記憶媒体
JPWO2020184101A1 (ja) * 2019-03-13 2021-10-21 日本電気株式会社 情報処理装置、駆動制御方法およびコンピュータプログラム
JP7384898B2 (ja) 2019-03-13 2023-11-21 日本電気株式会社 情報処理装置、駆動制御方法およびコンピュータプログラム

Also Published As

Publication number Publication date
US9111172B2 (en) 2015-08-18
US20130243331A1 (en) 2013-09-19
CN103337063A (zh) 2013-10-02

Similar Documents

Publication Publication Date Title
JP2013191163A (ja) 情報処理装置、情報処理方法、及び、プログラム
US9361590B2 (en) Information processing apparatus, information processing method, and program
Nagabandi et al. Deep dynamics models for learning dexterous manipulation
US11325252B2 (en) Action prediction networks for robotic grasping
US20220063089A1 (en) Machine learning methods and apparatus related to predicting motion(s) of object(s) in a robot's environment based on image(s) capturing the object(s) and based on parameter(s) for future robot movement in the environment
JP4625129B2 (ja) 座標化された混合因子分析法を用いた3次元ヒューマンモーションの単眼追跡
JP5183665B2 (ja) ロボットの少なくとも1つの将来的活動を決定する決定メカニズム、方法、モジュールおよび決定するように構成されたロボット
Kopicki et al. Learning to predict how rigid objects behave under simple manipulation
CN116476044A (zh) 使用神经网络和几何感知对象表示的机器人抓取预测
CN110730970A (zh) 使用图像嵌入优化机器人代理的策略控制器
CN109844771A (zh) 用于机器人代理的控制策略
Zhu et al. ContactArt: Learning 3D Interaction Priors for Category-level Articulated Object and Hand Poses Estimation
Caporali et al. Deformable Linear Objects Manipulation with Online Model Parameters Estimation
JP2012212323A (ja) 情報処理装置、情報処理方法、及び、プログラム
US7764288B2 (en) Methods and apparatus for accelerated animation using point multiplication and soft caching
dos Santos Júnior et al. Occlusion-robust method for RGB-D 6-DOF object tracking with particle swarm optimization
Kraft et al. Learning objects and grasp affordances through autonomous exploration
US7839407B2 (en) Methods and apparatus for accelerated animation using point multiplication
Radmard et al. Resolving occlusion in active visual target search of high-dimensional robotic systems
Rymut et al. GPU-accelerated human motion tracking using particle filter combined with PSO
Mörwald et al. Predicting the unobservable visual 3d tracking with a probabilistic motion model
Berscheid et al. Learning a generative transition model for uncertainty-aware robotic manipulation
US11607809B2 (en) Robot motion planning accounting for object pose estimation accuracy
Bokovoy et al. Maomaps: A photo-realistic benchmark for vslam and map merging quality assessment
JP7340055B2 (ja) 強化学習ポリシを訓練する方法