情報処理方法及びその装置
【課題】 物体の形状に応じた多数の画像からなる複数視点画像を生成する、または、三次元モデル生成や、任意視点物体認識等の画像処理を行う情報処理方法を提供する。
【解決手段】 撮像手段によって複数の視点から物体を撮像した複数の撮像画像に基づいて、複数の視点ごとに物体からの撮像手段への相対位置姿勢を算出する。算出された複数の相対位置姿勢に基づいて、撮像手段による撮像が不足している方向の撮像手段の不足位置姿勢を算出する。算出された不足位置姿勢を表示手段に表示する画像を生成する。
【解決手段】 撮像手段によって複数の視点から物体を撮像した複数の撮像画像に基づいて、複数の視点ごとに物体からの撮像手段への相対位置姿勢を算出する。算出された複数の相対位置姿勢に基づいて、撮像手段による撮像が不足している方向の撮像手段の不足位置姿勢を算出する。算出された不足位置姿勢を表示手段に表示する画像を生成する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、三次元物体を複数の異なる視点から撮像した多数の画像からなる複数視点画像を生成する方法に関する。
【背景技術】
【0002】
三次元物体を撮像した画像を用いて三次元モデルを生成するには、様々な視点から撮像した多数の画像が必要である。また、三次元物体を任意の視点から撮像した画像により、その物体を認識するにも、その認識を行う識別器の学習においても、様々な視点から撮像した多数の画像を用いることが好適である。なお、ここでの識別器の学習は、学習によって随時増えていく多数のデータを用いて識別器のパラメータを設定・調整することであり、学習によって調整しながら最適な制御を行えるようにする。このように、物体を様々な視点から撮像した多数の画像を取得する方法として、現在までに様々な手法が提案されている。
【0003】
特許文献1には、複数の撮像装置と、被写体を設置する回転台とからなる撮像装置を用い、物体上の特徴点を基準にする装置が提案されている。これにより、被写体の姿勢を変更可能とし、物体の全周囲画像を取得できる。
【0004】
特許文献2の多視点画像処理プログラムのように、複数のマーカを基準として視点位置を対応させる方法も提案されている。これにより、特許文献1のように、大掛かりな撮像装置を用いずに、物体を様々な視点から撮像した画像を取得できる。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2007−72537号公報
【特許文献2】特開2004−139294号公報
【特許文献3】特開2007−156528号公報
【特許文献4】特開2000−194859号公報
【非特許文献】
【0006】
【非特許文献1】V.Lepetit,F.Moreno−Noguer,P.Fua “EPnP:An Accurate O(n) Solution to the PnP Problem”, International Journal of Computer Vision,Vol.81,No.2,pp.155−166,2008
【非特許文献2】G.Reitmayr,T.W.Drummond,“Going out:Robust Model−based Tracking for Outdoor Augmented Reality”,IEEE/ACM International Symposium on Mixed and Augmented Reality,pp.109−118,2006
【非特許文献3】安藤慎吾、草地良規、鈴木章、荒川健一、“サポートベクトル回帰を用いた三次元物体の姿勢推定方法”、電子情報通信学会論文誌 D、Vol.J89−D、pp.1840−1847、2006
【非特許文献4】村瀬洋、S.K.Nayar、“2次元照合による三次元物体認識:パラメトリック固有空間法”、電子情報通信学会論文誌 D−II、Vol.J77−D−2(11)、pp.2179−2187,1994
【非特許文献5】S.M.Seitz,C.R.Dyer,“View Morphing”,Proceedings of SIGGRAPH 96,pp.21−30,1996
【発明の概要】
【発明が解決しようとする課題】
【0007】
高精度な三次元モデル生成や、任意視点物体認識を行う識別器の学習において、物体を様々な視点から満遍なく撮像した多数の画像を取得できることが好ましい。しかし、上記の手法では、物体を様々な視点から満遍なく撮像する場合の最適な方法がない又は、簡易な方法で実現できないという課題があった。
【0008】
また、より良い三次元モデル生成や、任意視点物体認識を行う識別器の学習においては、その物体の形状に応じ、例えば、構造が複雑な部分を撮像する視点に関しては、より密に画像を取得する等することが好適である。しかし、どの部分を撮像する視点を密にすれば良いかは自明でないという課題があった。また、密にすべき視点が与えられたとしても、簡易にそのような画像を取得する方法がないという課題があった。
【0009】
本発明は、このような点に鑑みなされたものであり、物体を様々な視点から撮像した多数の画像を用いて、物体認識に不足している撮像画像が何であるかを提示することを目的とする。
【課題を解決するための手段】
【0010】
上記目的は以下の方法によって達成される。
【0011】
相対位置姿勢算出手段が、撮像手段によって複数の視点から物体を撮像した複数の撮像画像に基づいて、該複数の視点ごとに該物体からの該撮像手段への相対位置姿勢を算出する相対位置姿勢算出工程と、
不足位置姿勢算出手段が、前記算出された複数の相対位置姿勢に基づいて、前記撮像手段による撮像が不足している方向からの前記相対位置姿勢を不足位置姿勢として算出する不足位置姿勢算出工程と、
不足視点画像生成手段が、前記算出された不足位置姿勢を表示手段に表示する画像を生成する不足視点画像生成工程と、
を有することを特徴とする情報処理方法。
【0012】
上記目的は以下の方法によっても達成される。
【0013】
相対位置姿勢算出手段が、撮像手段によって複数の視点から物体を撮像した複数の撮像画像に基づいて、該複数の視点ごとに該物体からの該撮像手段への相対位置姿勢を算出する相対位置姿勢算出工程と、
画像正規化手段が、前記複数の撮像画像を統一したフォーマットに正規化する画像正規化工程と、
識別器学習手段が、前記物体の姿勢を推定する識別器に、前記正規化された複数の撮像画像を学習させる識別器学習工程と、
不足位置姿勢算出手段が、前記算出された複数の相対位置姿勢の姿勢と、前記識別器で推定される前記物体の姿勢とを比較することにより、前記撮像手段で前記物体を撮像が不足している方向からの前記相対位置姿勢を不足位置姿勢として算出する不足位置姿勢算出工程と、
不足視点画像生成手段が、前記算出された不足位置姿勢を表示手段に表示する画像を生成する不足視点画像生成工程と、
を有することを特徴とする情報処理方法。
【発明の効果】
【0014】
本発明によれば、物体認識に不足している撮像画像が何であるかを提示することができる。
【図面の簡単な説明】
【0015】
【図1】第1の実施形態における構成図である。
【図2】第1の実施形態における計測座標系の定義を示す図である。
【図3】第1の実施形態におけるカメラ座標系、画像座標系の定義を示す図である。
【図4】第1の実施形態における処理を示すフローチャートである。
【図5】第1の実施形態における不足位置姿勢算出部における処理のフローチャートである。
【図6】第1の実施形態における表示部107に表示する画像の例を示す図である。
【図7】第2の実施形態における構成図である。
【図8】第2の実施形態における処理を示すフローチャートである。
【図9】第2の実施形態における画像正規化部での処理画像の例を示す図である。
【図10】第2の実施形態における不足位置姿勢算出部における処理のフローチャートである。
【図11】第3の実施形態における構成図である。
【図12】第3の実施形態における処理を示すフローチャートである。
【図13】本願の実施形態を実現するためのコンピュータの構成例である。
【図14】2つの画像の比較に基づいた視点不足判定の例である。
【図15】姿勢推定結果に基づいた視点不足判定の例である。
【図16】第3の実施形態における不足位置姿勢算出部での処理を示すフローチャートである。
【発明を実施するための形態】
【0016】
以下、添付図面を参照しながら、本発明の実施形態を説明する。
【0017】
〔第1の実施形態〕
本実施形態では、計測対象となる物体を様々な視点から満遍なく撮像した多数の画像から、複数視点画像を生成する。
【0018】
図1は、本実施形態における構成図である。本実施形態は、撮像部101、画像入力部102、相対位置姿勢算出部103、複数視点画像保持部104、不足位置姿勢算出部105、不足視点画像生成部106、表示部107で構成される。また、現実空間に置かれた計測台111には、計測対象となる物体112が支柱113に載置されている。物体112の周囲には、複数のマーカ121、122、・・・、128が配置されている。また、各マーカ121から128までの8個のマーカがそれぞれ、色1、色2、・・・、色8の色のマーカとする。
【0019】
撮像部101は、物体112を撮像する。例えば、支柱113に載置された物体112を、ユーザが持つカメラで撮像する。撮像部101は、撮像した画像を外部に出力可能なものである。例えば、CCD等の撮像素子、レンズからなるデジタルスチルカメラや、カムコーダ等がある。撮像された画像は、例えば、ユーザがデジタルスチルカメラのシャッタを押下したタイミングで、画像入力部102へ送られる。
【0020】
画像入力部102は、撮像部101から送信されてきた画像を処理部12に入力する。画像入力部102で入力された画像は、相対位置姿勢算出部103へ送られる。
【0021】
相対位置姿勢算出部103は、計測対象である物体112と撮像部101の相対位置姿勢を算出する。相対位置姿勢算出部103で算出された物体112と撮像部101との相対位置姿勢は、複数視点画像保持部104へ送られる。
【0022】
複数視点画像保持部104は、相対位置姿勢算出部103で求めた撮像姿勢データと、当該撮像姿勢の計測処理を行った画像とを関連付けて記憶する。記憶を繰り返し、撮像姿勢データが所定の数に至るまで記録する。記録された撮像姿勢データは、不足位置姿勢算出部へ送られる。
【0023】
不足位置姿勢算出部105は、複数視点画像保持部104に記憶されている、現段階までに撮像した多数の撮像姿勢データに基づき、現段階で撮像が不足している視点を算出する。
【0024】
不足視点画像生成部106は、不足位置姿勢算出部105で算出された不足視点の撮像姿勢データから、不足している視点を示す画像を生成する。
【0025】
表示部107は、不足視点画像生成部106で生成された表示画像を表示する。
【0026】
図2は、本実施形態における計測座標系の定義を示す図である。計測台111には、計測対象となる物体を載置するための支柱113が設けられている。計測座標系は、支柱113と計測台111の接合位置200を原点とし、x軸201、y軸202、z軸203とする。
【0027】
撮像部101により撮像した画像を処理することで、いずれのマーカであるかを一意に区別する。例えば、マーカは、三次元位置が既知で異なる色のとき、撮像部101で撮像した画像から、各マーカ特有の色を抽出する処理を行う。これにより、画像内に存在するマーカの特定と、そのマーカの画像内での位置検出ができる。マーカの三次元位置は、固定されており、計測座標系におけるマーカの中心の位置を予め計測する。
【0028】
図3は、カメラ座標系、画像座標系の定義を示す図である。計測座標系を設定したのと同様に、撮像部101に対し、三次元のカメラ座標系を定義する。また、撮像画像に対応する仮想的な平面である画像面31を定義し、その画像面における2次元の画像座標系を定義する。カメラ座標系は、撮像部101のレンズの主点を原点310とする。そして、撮像画像の右方向に対応する方向をx’軸311、上方向に対応する方向をy’軸312、レンズの光軸と平行で、撮像部101の撮像方向301とは反対方向の軸をz’軸313と定義する。また、画像座標系を、これも図3に示したように、画像面302の中心を原点320とし、画像の右方向に対応する方向をx”軸321、上方向に対応する方向をy”軸322とする2次元座標系として定義する。
【0029】
図4は、本実施形態における処理のフローチャートである。以下、複数視点画像生成方法の例について説明する。
【0030】
ステップS401では、画像入力部102が、撮像部101から送信されてきた画像を相対位置姿勢算出部103に入力する。物体112を撮像した画像は、少なくとも4つのマーカが、画像内に存在する必要がある。画像入力部102で入力された画像は、相対位置姿勢算出部103に送信され、ステップS402へ進む。
【0031】
ステップS402では、相対位置姿勢算出部103が、計測対象である物体112と撮像部101の相対位置姿勢を算出する。すなわち、画像入力部102から送信された画像を処理することにより、送信された画像を撮像したときの撮像部の位置姿勢を計測する。
【0032】
送信された画像に対し、各マーカに特有の、色1から色8までの色の抽出処理を行い、それぞれのマーカについて、画像内に存在するか否かの判定を行う。具体的には、各画素のRGB値から色相を求め、その色相と、抽出対象である色の色相とが、所定範囲内であれば、その画素を抽出する。対応する色の画素が、画像から抽出された場合、その色に対応するマーカが存在すると判定する。マーカの色に対応する画素の、画像における重心位置(上述の画像座標系における位置(x”、y”))を求める。これにより、計測座標系における三次元位置が既知である4つ以上のマーカの、画像座標系における位置を求めることができる。また、レンズの焦点距離がf[mm]と既知であれば、非特許文献1に記載の技術により、計測座標系に対するカメラ座標系の相対的な位置姿勢を求めることができる。
【0033】
2つの三次元座標系の相対位置姿勢は、座標系の並進成分と、回転成分の2つで表現する。並進成分は、2つの三次元座標の原点間の並進移動成分であり、計測座標系の原点40から、カメラ座標系の原点310までの並進移動成分(Tx、Ty、Tz)として表現する。回転成分は、回転軸と、回転軸を中心とする回転量で表現する。具体的には、計測座標系のx軸201、y軸202、z軸203が、カメラ座標系のx’軸311、y’軸312、z’軸313と、それぞれ同一方向になる回転量で表現する。すなわち、計測座標系を、計測座標系の原点を通る回転軸を中心に回転させた時の、回転軸方向(Rx、Ry、Rz)、及び、回転角θとして表現する。この回転成分は、4つのパラメータからなり、回転軸方向を表す(Rx、Ry、Rz)は、Rx2+Ry2+Rz2=1となるように正規化されたものであるため、実際の自由度は、回転の自由度と同一となる。計測した相対位置姿勢を、座標系間の並進成分(Tx、Ty、Tz)、及び、回転成分として、回転軸方向(Rx、Ry、Rz)と回転角θで表現し、これを撮像姿勢データとする。
【0034】
相対位置姿勢算出部103で算出された物体112と撮像部101との相対位置姿勢は、複数視点画像保持部104へ送られ、ステップS403へ進む。
【0035】
ステップS403では、複数視点画像保持部104が、相対位置姿勢算出部103で求めた撮像姿勢データと、当該撮像姿勢の計測処理を行った画像とを関連付けて記憶する。すなわち、ユーザが撮像した物体112の画像と、その画像を撮像したときの撮像部101の位置姿勢が、複数視点画像保持部104に関連付けられて記憶される。なお、関連付けて記憶する撮像姿勢データが所定の数に至るまで、繰り返した後、ステップS404へ進む。例えば、60程度の数が得られるまで、撮像を繰り返してもよい。
【0036】
ステップS404では、不足位置姿勢算出部105が、複数視点画像保持部104に記憶されている、現段階までに撮像した多数の撮像姿勢データに基づき、現段階で撮像が不足している視点を算出する。
【0037】
図5は、不足位置姿勢算出部における処理のフローチャートである。ステップS404における、不足位置姿勢算出部105の具体的な処理の詳細について説明する。
【0038】
ステップS501は、略均等方向計算ステップである。本ステップでは、物体112を中心とした仮想的な三次元空間内の球面上に、略均等に仮想的な視点を配置する。具体的には、仮想的な三次元空間に、仮想座標系を用意し、その仮想座標系の原点を中心とする半径1の球面上に、所定個数M個の点を略均等に配置した場合の撮像可能な方向を計算する。
【0039】
例えば、特許文献3に記載に技術により、球面上に略均等に点を配置することができる。球面上に略均等に配置する所定個数M個の点は、例えば20から100程度の任意の値にすればよく、M=60とする。そのため、60個分の球面上の点が得て、それぞれの点の、仮想的な三次元空間の仮想座標系における位置を、(Pxi、Pyi、Pzi)(i=1、2、・・・、60)とする。
【0040】
ステップS502は、類似方向判定ステップである。本ステップでは、類似した姿勢での撮像が、まだ行われていない点があるか否かを判定する。具体的には、各点から、球の中心に向かって撮像したと仮定した場合の、仮想的な三次元空間内での撮像姿勢と、類似した姿勢での撮像が既に行われているか否かを判定する。ここでは単純に、まず、各点から球の中心を撮像するように撮像部101を配置したと想定する。そして、その時の、図5に示したカメラ座標系のz’軸503の、仮想座標系における方向を求める。この方向は、球面上の点から、球の中心に向かって撮像する、つまり、カメラ座標系のz’軸503の負方向が、球の中心を通るように配置するので、この方向は、各点の仮想座標系における位置そのものになる。例えば、ある点(Pxi、Pyi、Pzi)から球の中心を撮像するように撮像部101を配置したと想定する。この場合、カメラ座標系のz’軸503の、仮想座標系における方向は、単純に(Pxi、Pyi、Pzi)になる。そして、この方向と、既に撮像が行われた複数の撮像姿勢の中から、カメラ座標系のz’軸503の、計測座標系における方向との類似度が、最も高いものを検索して、その類似度を求める。この類似度としては、それぞれの方向の内積等を用いて求めればよく、2方向の内積を類似度として用いる。また、既に撮像が行われた夫々の撮像姿勢において、カメラ座標系z’軸503の計測座標系における方向(Qx、Qy、Qz)を求めるとする。これは、その撮像姿勢データの回転成分が、回転軸方向(Rx、Ry、Rz)、回転角θである場合、次の式(1)により求められる。
【0041】
【数1】
【0042】
つまり、球面上に略均等に配置したある点に対応する方向(Pxi、Pyi、Pzi)と、複数視点画像保持部104に記憶されている複数の撮像姿勢データから、上記式(1)により求めた(Qx、Qy、Qz)との内積をそれぞれ求める。その中から、内積値が最も大きいものを求める。
【0043】
そして、求めた最大の内積値が、所定の基準の値以上であるかを判定し、所定の基準の値以上であるならば、球面上に配置したその点に対応する視点からの撮像は充分であると判定する。所定の基準の値以下であるならば、その点に対応する視点からの撮像が不足していると判定する。ここで判定に用いる所定の基準の値は、1未満の任意の値でよいが、例えば0.8程度といった値を用いる。
【0044】
ステップS503は、非類似方向算出ステップである。本ステップでは、撮像が不足している視点として、その点から、球の中心に向かって撮像した場合の撮像姿勢を求める。具体的には、球面上のある点に関して、撮像が不足していると判定された場合は、その点に対応する方向(Pxi、Pyi、Pzi)を、撮像が不足している視点に対応する撮像姿勢とする。これらにより、撮像が不足している視点を算出する。
【0045】
ステップS405では、不足位置姿勢があるか否かを判定する。不足位置姿勢算出部105が、球面上に略均等に配置した全ての点について、その点に対応する視点からの撮像が充分であると判定された場合、計測対象物体を様々な視点から満遍なく撮像できたと判断し、処理を終了する。
【0046】
一方、球面上に略均等に配置した点に対応する視点からの撮像が不足していると判定された場合、撮像姿勢に関するデータ(Pxi、Pyi、Pzi)を、不足視点画像生成部106に送信し、ステップS406へ進む。
【0047】
ステップS406では、不足視点画像生成部106が、不足位置姿勢算出部105より送信されてきた撮像姿勢に関するデータに基づいて、不足している視点を示す画像を生成する。
【0048】
図6は、表示部107に表示する画像の例である。矢印601は、不足位置姿勢算出部105より送信されてきた撮像が不足している視点からの撮像姿勢に対応する矢印である。矢印601は、計測座標系の原点40から、撮像が不足している視点からの撮像姿勢に関するデータ(Pxi、Pyi、Pzi)への点線602の上にある。矢印601により不足している視点が確認できる。不足している視点は、矢印に限らず、ユーザが不足している視点が分かる形で表現すればよい。
【0049】
計測対象物体の撮像を行うユーザは、表示部107に表示された不足している視点からの撮像を行う。撮像部101から、矢印601に対応する視点からの画像が画像入力部102に送信され、ステップS401へ戻る。これにより、様々な視点から満遍なく撮像した多数の画像からなる複数視点画像が記憶され、様々な視点から満遍なく撮像した多数の画像からなる複数視点画像を生成できる。
【0050】
ステップS407では、表示部107が、不足視点画像生成部106で生成された画像を表示する。すなわち、撮像部101をどこに移動させて物体112を撮像すべきかを表示する。物体112を、様々な視点から満遍なく撮像した画像が複数視点画像保持部104に保持され、不足している視点が無くなるまで処理を続ける。
【0051】
以上、第1の実施形態は、計測対象物体112を、様々な視点から満遍なく撮像した多数の画像からなる複数視点画像生成方法の例を説明した。
【0052】
〔変形例1−1〕
計測対象物体を、様々な視点から満遍なく撮像した多数の画像からなる複数視点画像を生成した。しかし、計測対象の物体によっては、所定の視点付近からの撮像を密に行った方が好適な場合がある。例えば、計測対象物体の内、三次元的な構造が複雑な部分を撮像するような視点に関しては、その他の構造が簡素な部分より、密に撮像を行った方がよい。例えば、計測対象物体の三次元モデルに関するデータを予め入力しておき、データを解析することによって、計測対象物体の三次元的な構造が複雑な部分を求める。例えば、ポリゴンモデルの場合、ポリゴン数により、構造の複雑さを評価すればよい。次に、計測対象物体の三次元的な構造が複雑な部分を撮像する視点を求める。そして、仮想的な球面上に略均等に配置した多数の点の内、構造が複雑な部分を撮像する視点付近に対応する点から少しずらした点を追加生成する。これにより、構造が複雑な部分を撮像する視点付近における球面上の点の密度が高くなる。仮想的な球面上に配置した複数の点を用いて、構造が複雑な部分を撮像するような視点の画像を密に取得することができる。
【0053】
〔変形例1−2〕
ステップS402では、直接的に計測対象物体と、撮像部101の相対位置姿勢を求めた。撮像部101の位置姿勢を求めるとき、マーカを用いた方法に限らない。例えば、撮像された画像以外から求めてもよい。計測対象物体の三次元モデルを予め入力し、三次元モデルを二次元画像に投影したときの特徴と、撮像した画像の特徴とを比較することで、相対位置姿勢を求めてもよい。非特許文献2に記載の技術を用いて、三次元モデルから撮像部と物体112の相対位置姿勢を推定し、撮像部101と物体112との相対位置姿勢を求めてもよい。
【0054】
〔第2の実施形態〕
第2の実施形態では、ある物体を撮像した画像を入力した際に、その物体がどのような姿勢であるかを認識する識別器の学習を行うための複数視点画像生成を行う情報処理方法の例を示す。
【0055】
図7は、本実施形態における構成図である。本実施形態は、撮像部101、画像入力部102、相対位置姿勢算出部103、画像正規化部701、複数視点画像保持部104、識別器学習部702、不足位置姿勢算出部105、不足視点画像生成部106、表示部107で構成される。また、現実空間に置かれた計測台111には、計測対象となる物体112が支柱113に載置されている。物体112の周囲には、複数のマーカ121、122、・・・、128が配置されている。また、各マーカ121から128までの8個のマーカがそれぞれ、色1、色2、・・・、色8の色のマーカとする。加えて、マーカ以外の領域が色9で統一されており、計測対象である物体112は、色1から色9までの色が含まれていないものとする。以下では、上記構成において、第1の実施形態と異なる部分のみ説明し、同様の部分に関しては説明を省略する。
【0056】
撮像部101は、112を撮像する。撮像された画像は、画像入力部102に送られる。
【0057】
画像入力部102は、撮像部101から送信されてきた画像を相対位置姿勢算出部103に入力する。画像入力部102で入力された画像は、相対位置姿勢算出部103に送られる。
【0058】
相対位置姿勢算出部103は、計測対象である物体112と撮像部101の相対位置姿勢を算出する。相対位置姿勢算出部103で算出された物体112と撮像部101との相対位置姿勢は、複数視点画像保持部104へ送られる。
【0059】
画像正規化部701は、計測対象である物体112の画像を統一したフォーマットに正規化する。具体的には、計測対象である物体のみを入力された画像から切り出した画像をグレースケール化して所定のサイズに正規化する。
【0060】
複数視点画像保持部104は、相対位置姿勢算出部103で求めた撮像姿勢データと、当該撮像姿勢の計測処理を行った画像とを関連付けて記憶する。記憶を繰り返し、撮像姿勢データが所定の数に至るまで記録する。記録された撮像姿勢データは、識別器学習部702へ送られる。
【0061】
識別器学習部702は、複数視点画像保持部104に記憶された多数の画像と撮像姿勢データに基づいて、画像中に存在する物体112の姿勢を推定する識別器の学習を行う。
【0062】
不足位置姿勢算出部105は、識別器学習部702で学習を行った識別器の推定結果に基づいて、現段階までに撮像した多数の撮像姿勢データに基づき、現段階で撮像が不足している視点を算出する。
【0063】
不足視点画像生成部106は、不足位置姿勢算出部105で算出された不足視点の撮像姿勢データから、不足している視点を示す画像を生成する。
【0064】
表示部107は、不足視点画像生成部106で生成された表示画像を表示する。
【0065】
図8は、本実施形態における、複数視点画像生成方法の処理フローを示した図である。
【0066】
ステップS801では、画像入力部102が、撮像部101から送信されてきた画像を処理部12に入力する。画像入力部102で入力された画像は、相対位置姿勢算出部103に送信され、ステップS802へ進む。
【0067】
ステップS802では、相対位置姿勢算出部103が、計測対象である物体112と撮像部101の相対位置姿勢を算出する。
【0068】
ステップS803では、画像正規化部701が、計測対象である物体112の画像を統一したフォーマットに正規化する。具体的には、計測対象である物体112のみを入力された画像から切り出した画像をグレースケール化して所定のサイズに正規化する。
【0069】
図9は、画像正規化部701での処理画像の例である。ステップS803における画像正規化部701の具体的な処理の詳細について説明する。図9(a)は、入力された画像である。入力された画像に対して、複数のマーカの色である色1から色8、及び、マーカ以外の領域に配色された色9以外の色である画素を抽出する。抽出された結果、図9(b)の計測対象の物体112の領域のみが抽出された画像が生成される。この画像から、図9(c)のように、抽出された外接正方形領域9を切り出す。そして、切り出した正方形領域を、カラー画像からグレースケール画像に変換する。図9(d)のように、この切り出した領域の幅、及び、高さが、所定の長さw画素になるように、拡大、若しくは、縮小処理を行うことでサイズの正規化を行う。ここでの所定の長さw画素は、任意の値でよい。画像正規化部701では、複数のマーカの色、及び、1色に統一された計測系の色以外の領域を抽出することによって、計測対象である物体112の領域の切り出しを行う。しかし、本発明はこれに限るものではなく、計測対象である物体の領域を切り出せるような方法であれば、その他の方法でもよい。
【0070】
ステップS804では、複数視点画像保持部104が、正規化処理を行った画像を相対位置姿勢算出部103で計測した撮像姿勢データと関連付けて記憶する。
【0071】
ステップS805では、識別器学習部702が、複数視点画像保持部104に記憶された多数の画像と撮像姿勢データに基づいて、画像中に存在する物体112の姿勢を推定する識別器の学習を行う。識別器の学習では、複数視点画像保持部104に記憶された、切り出し処理部702で物体切り出し等の処理を行った複数の画像、及び、それぞれに対応する撮像姿勢データを、学習データとして用いる。例えば、非特許文献3に記載のサポートベクトル回帰法に三次元物体の姿勢推定に、この識別器を用いてもよい。ただし、この識別器による予測値は、ロール、ピッチ、ヨーの3値を、物体112の姿勢の推定値としている。具体的には、撮像姿勢データの回転成分を表す、回転軸方向(Rx、Ry、Rz)、及び、回転角θの値を推定する。
【0072】
例えば、複数視点画像保持部104に記憶されている多数の画像(100×100画素のグレースケール画像)を用い、主成分分析により、画像群の固有空間を求める。固有空間の次元数は、任意の値でもよいが、累積寄与率を用いて決定するのが好ましい。例えば、累積寄与率が90%以上になる次元数までを、固有空間の次元数d(<100×100)として用いる。そして、記憶されている多数の画像の各々をd次元の固有空間に射影することで生成したデータを入力データとする。多数の画像の各々に対応する撮像姿勢データの回転成分を表す回転軸方向(Rx、Ry、Rz)、及び、回転角θを、サポートベクトル回帰法における目標値として学習を行う。このようなサポートベクトル回帰法に基づいた識別器では、画像正規化部による物体112の切り出し画像を入力することにより、計測対象物体112の姿勢が出力される。なお、識別器学習部702は、サポートベクトル回帰法を用いた識別器に限るものではない。例えば、非特許文献4に開示のパラメトリック固有空間法等、撮像された物体112の画像から、その物体112の姿勢を推定する識別器を用いてもよい。
【0073】
ステップS806では、不足位置姿勢算出部105が、識別器学習部724で学習した時点での識別器の推定能力に基づき、現段階で撮像が不足している視点を算出する。例えば、仮想的な三次元空間内の球面上に、略均等に所定個数の点を配置し、その各点から球の中心に向かって撮像を行う複数の視点(以下、仮想視点)を用意する。そして、仮想視点の各々について、複数視点画像保持部104に記憶されている複数の撮像姿勢データの内、その仮想視点に最も近い2つの視点(以下、撮像済隣接視点)を選択する。カメラ座標系のz’軸方向間の内積値が視点の近さを示す。これにより、撮像が不足している視点を算出する。
【0074】
図10は、不足位置姿勢算出部における処理のフローチャートである。ステップS806における、不足位置姿勢算出部123の具体的な処理の詳細について説明する。
【0075】
ステップS1001では、仮想的な三次元空間内の球面上に、略均等に所定個数の点を配置し、その各点から球の中心に向かって撮像を行う複数の視点(以下、仮想視点)を用意する。そして、仮想視点の各々について、複数視点画像保持部104に記憶されている複数の撮像姿勢データの内、その仮想視点に最も近い2つの視点(以下、撮像済隣接視点)を選択する。視点の近さについては、カメラ座標系のz’軸方向間の内積値が高い程、近い視点であると判定すればよい。そして、選択された2つの撮像済隣接視点に対応する計測対象物体112の画像を用いて、仮想視点に対応する位置から撮像した場合の、計測対象物体112の推定画像を生成する。推定画像は、上記仮想視点から観測した計測対象物体112の仮想的な画像である。推定画像の生成方法は、上記のような仮想的な画像を生成できる手法であれば、どのような手法を用いても構わない。また、切り出し処理部702で処理と同様に、グレースケールで、画像の幅、高さがw画素の画像を生成してもよい。
【0076】
ステップS1002では、生成した仮想視点から撮像した場合の計測対象物体112の画像を識別器学習部702の識別器に入力し、識別器の姿勢推定結果を求める。具体的には、ある仮想視点からの撮像に対応する計測対象物体の合成画像を用意し、その合成画像に対して、学習した識別器を適用し、その合成画像中の物体の姿勢推定結果を算出する。
【0077】
ステップS1003では、この姿勢推定結果が、対応する仮想視点から撮像した場合の、撮像系71の撮像姿勢と類似していない場合、撮像が不足していると判定する。類似しているか否かについては、仮想視点に対応する撮像姿勢と、姿勢推定結果との誤差が所定値以内であるか否かによって判定してもよい。2つの姿勢の誤差は、どちらか一方の姿勢を、もう一方の姿勢と一致するように回転させた場合の回転角を、2つの姿勢の誤差とすればよい。
【0078】
図15は、姿勢推定結果に基づいた視点不足判定の例を示す模式的な図である。
【0079】
例えば、撮像済隣接視点に対応する2つの画像1501、1502から、それらの中間位置に対応する仮想視点からの画像1503を(例えば、モーフィングを用いて)生成する。そして、その画像を、今までに取得した画像を用いて学習した、物体の姿勢(回転軸方向、及び、回転角)を出力する識別関数(例えば、多値の非線形カーネル回帰関数等)に入力する。出力される物体の姿勢(推定値)が、所定範囲内であるか否かに基づいて、その中間視点での撮影データが不足しているか否かを判定する。すなわち、中間視点の推定姿勢出力1504(識別関数の出力)が中間視点として正しいか否かを判定し、不足している視点を算出する。図15中の曲線は、正しい姿勢の値(多値)を模式的に示したものである。姿勢推定出力1504が、図15に示したように、この曲線に近い出力であれば、仮想視点1503に対応する視点からの画像は不足していないと判定する。姿勢推定出力1504が、この曲線から大きく離れた出力ならば、仮想視点1503に対応する視点からの画像が、識別器の学習に不足していると判定する。
【0080】
ステップS1004では、撮像が不足していると判定された仮想視点に対応する撮像姿勢を求める。例えば、仮想的な球面上の位置(Pxi、Pyi、Pzi)を、仮想視点に対応する撮像姿勢として求める。
【0081】
ステップS807では、不足位置姿勢があるか否かを判定する。不足位置姿勢算出部105が、球面上に略均等に配置した全ての点について、その点に対応する視点からの撮像が充分であると判定された場合、識別器の学習にとって十分に計測対象物体112の複数視点画像が撮像できたと判断し、ステップS810へ進む。一方、球面上に略均等に配置した点に対応する視点からの撮像が不足していると判定された場合、不足していると判定された仮想視点に対応する撮像姿勢に関するデータ(Pxi、Pyi、Pzi)を、不足視点画像生成部106に送信しステップS808へ進む。
【0082】
ステップS808では、不足視点画像生成部106が、不足位置姿勢算出部105より送信されてきた撮像姿勢に関するデータに基づいて、不足している視点を示す画像を生成する。
【0083】
ステップS809では、表示部107が、不足視点画像生成部106で生成された画像を表示する。
【0084】
ステップS810では、不足した視点がなくなった状態での識別器に関するデータを複数視点画像保持部104に記憶する。具体的には、写像される固有空間に関する固有空間の次元数と、その次元数分の基底ベクトルと、複数のサポートベクトル、及び、複数のサポートベクトルに対応する線形結合係数を記憶する。
【0085】
本実施形態により、計測対象物体の画像から、その姿勢を推定する識別器の学習に必要な画像からなる複数視点画像を生成できる。また、複数視点画像を用いて、任意視点物体認識を行う識別器が学習を行うことにより、その識別器を用いることで、物体がどのような姿勢であるのかを推定できる。
【0086】
以上、第2の実施形態は、撮像した物体がどのような姿勢であるのかを認識する識別器の学習を行うための複数視点画像生成方法の例を説明した。
【0087】
〔変形例2−1〕
表示部107に不足視点画像生成部106で生成された画像を表示することにより、ユーザが不足視点からの撮像を行った。しかし、ユーザが撮像するのではなく、ロボットアーム等に撮像部101を載置し、ロボットアーム等を不足視点へ移動させ、不足視点からの撮像を行うようにしてもよい。この場合、不足位置姿勢算出部105で不足していると判定された仮想視点に対応する撮像姿勢に関するデータを、ロボットアーム等の動作制御部に送信する。そして、動作制御部では、送信された撮像姿勢に関するデータに基づきロボットアーム等を移動させ、移動完了後に、撮像部101での撮像を実施する。これにより、不足視点からの撮像ができ、自動的に、識別器の学習に充分な複数視点画像を得ることができる。
【0088】
〔第3の実施形態〕
第3の実施形態では、計測対象物体の三次元モデルを生成するための複数視点画像生成を行う情報処理方法の例を示す。
【0089】
図11は、本実施形態における構成図である。本実施形態は、撮像部101、画像入力部102、相対位置姿勢算出部103、画像正規化部701、複数視点画像保持部104、三次元モデル生成部1101、不足位置姿勢算出部105、不足視点画像生成部106、表示部107で構成される。また、現実空間に置かれた計測台111には、計測対象となる物体112が支柱113に載置されている。物体112の周囲には、複数のマーカ121、122、・・・、128が配置されている。また、各マーカ121から128までの8個のマーカがそれぞれ、色1、色2、・・・、色8の色のマーカとする。加えて、マーカ以外の領域が色9で統一されており、計測対象である物体112は、色1から色9までの色が含まれていないものとする。以下では、上記構成において、第1の実施形態及び第2の実施形態と異なる部分のみ説明し、同様の部分に関しては説明を省略する。
【0090】
撮像部101は、物体112を撮像する。撮像された画像は、処理部12に送られる。
【0091】
画像入力部102は、撮像部101から送信されてきた画像を処理部12に入力する。画像入力部102で入力された画像は、相対位置姿勢算出部103に送られる。
【0092】
相対位置姿勢算出部103は、計測対象である物体112と撮像部101の相対位置姿勢を算出する。相対位置姿勢算出部103で算出された物体112と撮像部101との相対位置姿勢は、複数視点画像保持部104へ送られる。
【0093】
画像正規化部701は、計測対象である物体112のみを入力された画像から切り出す。切り出した画像をグレースケール化して所定のサイズに正規化する。
【0094】
複数視点画像保持部104は、相対位置姿勢算出部103で求めた撮像姿勢データと、当該撮像姿勢の計測処理を行った画像とを関連付けて記憶する。
【0095】
三次元モデル生成部1101は、複数視点画像保持部104に記憶された、複数の視点から撮像した計測対象物体112の画像を用いて、その計測対象物体の三次元モデルを生成する。
【0096】
不足位置姿勢算出部105は、生成した三次元モデルに基づいて、現段階までに撮像した多数の撮像姿勢データに基づき、現段階で撮像が不足している視点を算出する。
【0097】
不足視点画像生成部106は、不足位置姿勢算出部105で算出された不足視点の撮像姿勢データから、表示する画像を生成する。
【0098】
表示部107は、不足視点画像生成部106で生成された表示画像を表示する。
【0099】
図12は、本実施形態における、複数視点画像生成方法の処理フローを示した図である。
【0100】
ステップS1201では、画像入力部102が、撮像部101から送信されてきた画像を入力する。画像入力部102で入力された画像は、相対位置姿勢算出部103に送信され、ステップS1202へ進む。
【0101】
ステップS1202では、相対位置姿勢算出部103が、計測対象である物体112と撮像部101の相対位置姿勢を算出する。
【0102】
ステップS1203では、画像正規化部701が、計測対象である物体112のみを入力された画像から切り出す。切り出した画像をグレースケール化して所定のサイズに正規化する。
【0103】
ステップS1204では、複数視点画像保持部104が、物体切り出し、正規化処理を行った画像を、相対位置姿勢算出部103で計測した撮像姿勢データと関連付けて記憶する。
【0104】
ステップS1205では、三次元モデル生成部1101が、複数視点画像保持部104に記憶された、複数の視点から撮像した計測対象物体112の画像を用いて、その計測対象物体の三次元モデルを生成する。例えば、特許文献4に記載の技術を用いて、複数の視点から撮像した物体112の三次元モデルを生成する。
【0105】
ステップS1206では、不足位置姿勢算出部105が、三次元モデル生成部1101で生成した三次元モデルに基づき、現段階で撮像が不足している視点を算出する。
【0106】
図16は、不足位置姿勢算出部における処理のフローチャートである。ステップS1206における、不足位置姿勢算出部105の具体的な処理の詳細について説明する。
【0107】
ステップS1601では、まず、仮想的な三次元空間内の球面上に、略均等に所定個数の点を配置し、その各点に対応する仮想視点を用意する。そして、仮想視点の各々について、2つの撮像済隣接視点を選択する。そして、選択された2つの撮像済隣接視点に対応する計測対象物体112の画像を用い、仮想視点に対応する位置から撮影した場合の、計測対象物体112の推定画像を生成する。推定画像は、例えば、非特許文献5に記載の視点モーフィング法を用いて生成してもよい。
【0108】
ステップS1602では、現段階までに得られた複数視点画像を用いて生成した三次元モデルのレンダリング画像を生成する。三次元モデルのレンダリング画像は、3D−CGの技術であるレンダリングにより、三次元モデル生成部1101で生成した三次元モデルを、各仮想視点から観測する条件でレンダリングした画像である。
【0109】
ステップ1603では、各仮想視点に対応する、推定画像とレンダリング画像を比較し、その2枚の画像の類似度が低いならば、その仮想視点からの撮像が不足していると判定する。ここでの2つの画像の比較は、例えば、正規化相関による比較を行い、正規化相関の値が所定値以下ならば、2つの画像の類似度が低いと判定する。
【0110】
図14は、2つの画像の比較に基づいた視点不足判定の例を示す模式的な図である。
【0111】
例えば、撮像済隣接視点に対応する2つの画像1401、1402から、それらの中間位置に対応する仮想視点からの画像1403を(例えば、視点モーフィング法を用いて)生成する。また、現段階までに得られた複数視点画像を用いて生成した三次元モデルを、同中間視点から観測する条件で投影するようにレンダリングしたレンダリング画像1404を生成する。そして、その両者を比較し、それらの類似度(例えば、エッジ抽出結果の正規化相関値)が、所定値以上であるか否かに基づいて、その中間視点での撮影データが不足しているか否かを判定する。すなわち、視点モーフィング法等による推定画像1403と、レンダリング画像1404との誤差1405が大きい場合、対応する視点が不足していると判定する。
【0112】
ステップS1604では、撮像が不足していると判定された仮想視点に対応する撮像姿勢を求める。例えば、仮想的な球面上の位置(Pxi、Pyi、Pzi)を、仮想視点に対応する撮像姿勢として求めればよい。
【0113】
ステップS1207では、不足位置姿勢があるか否かを判定する。不足位置姿勢算出部105が、球面上に略均等に配置した全ての点について、その点に対応する視点からの撮像が充分であると判定された場合、三次元モデルの生成にとって十分に計測対象物体112の複数視点画像が撮像できたと判断し、ステップS1210へ進む。一方、球面上に略均等に配置した点に対応する視点からの撮像が不足していると判定された場合、撮像姿勢に関するデータ(Pxi、Pyi、Pzi)を、不足視点画像生成部106に送信しステップS1208へ進む。
【0114】
ステップS1208では、不足視点画像生成部106が、不足位置姿勢算出部105より送信されてきた撮像姿勢に関するデータに基づいて、不足している視点を示す画像を生成する。
【0115】
ステップS1209では、表示部107が、不足視点画像生成部106で生成された画像を表示する。
【0116】
ステップS1210では、三次元モデル生成部1101が、不足している視点がなくなった複数の画像から、計測対象物体112の三次元モデルを生成し、複数視点画像保持部104に記憶する。
【0117】
物体の三次元モデルを生成する三次元モデル生成に必要な多数の画像からなる複数視点画像を生成できる。
【0118】
撮像部101をロボットアームなどに載置し、ロボットアーム等を不足視点へ移動させ、不足視点の撮像を行うようにすることにより、自動的に、三次元モデルの生成に充分な複数視点画像を得ることもできる。
【0119】
以上、第3の実施形態は、計測対象物体の三次元モデルを生成するための複数視点画像生成方法の例を説明した。
【0120】
〔その他の実施形態〕
図13は、本願の実施形態を実現するためのコンピュータの構成例である。
【0121】
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク1307又は各種の記憶媒体1302、1303を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ1301(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【技術分野】
【0001】
本発明は、三次元物体を複数の異なる視点から撮像した多数の画像からなる複数視点画像を生成する方法に関する。
【背景技術】
【0002】
三次元物体を撮像した画像を用いて三次元モデルを生成するには、様々な視点から撮像した多数の画像が必要である。また、三次元物体を任意の視点から撮像した画像により、その物体を認識するにも、その認識を行う識別器の学習においても、様々な視点から撮像した多数の画像を用いることが好適である。なお、ここでの識別器の学習は、学習によって随時増えていく多数のデータを用いて識別器のパラメータを設定・調整することであり、学習によって調整しながら最適な制御を行えるようにする。このように、物体を様々な視点から撮像した多数の画像を取得する方法として、現在までに様々な手法が提案されている。
【0003】
特許文献1には、複数の撮像装置と、被写体を設置する回転台とからなる撮像装置を用い、物体上の特徴点を基準にする装置が提案されている。これにより、被写体の姿勢を変更可能とし、物体の全周囲画像を取得できる。
【0004】
特許文献2の多視点画像処理プログラムのように、複数のマーカを基準として視点位置を対応させる方法も提案されている。これにより、特許文献1のように、大掛かりな撮像装置を用いずに、物体を様々な視点から撮像した画像を取得できる。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2007−72537号公報
【特許文献2】特開2004−139294号公報
【特許文献3】特開2007−156528号公報
【特許文献4】特開2000−194859号公報
【非特許文献】
【0006】
【非特許文献1】V.Lepetit,F.Moreno−Noguer,P.Fua “EPnP:An Accurate O(n) Solution to the PnP Problem”, International Journal of Computer Vision,Vol.81,No.2,pp.155−166,2008
【非特許文献2】G.Reitmayr,T.W.Drummond,“Going out:Robust Model−based Tracking for Outdoor Augmented Reality”,IEEE/ACM International Symposium on Mixed and Augmented Reality,pp.109−118,2006
【非特許文献3】安藤慎吾、草地良規、鈴木章、荒川健一、“サポートベクトル回帰を用いた三次元物体の姿勢推定方法”、電子情報通信学会論文誌 D、Vol.J89−D、pp.1840−1847、2006
【非特許文献4】村瀬洋、S.K.Nayar、“2次元照合による三次元物体認識:パラメトリック固有空間法”、電子情報通信学会論文誌 D−II、Vol.J77−D−2(11)、pp.2179−2187,1994
【非特許文献5】S.M.Seitz,C.R.Dyer,“View Morphing”,Proceedings of SIGGRAPH 96,pp.21−30,1996
【発明の概要】
【発明が解決しようとする課題】
【0007】
高精度な三次元モデル生成や、任意視点物体認識を行う識別器の学習において、物体を様々な視点から満遍なく撮像した多数の画像を取得できることが好ましい。しかし、上記の手法では、物体を様々な視点から満遍なく撮像する場合の最適な方法がない又は、簡易な方法で実現できないという課題があった。
【0008】
また、より良い三次元モデル生成や、任意視点物体認識を行う識別器の学習においては、その物体の形状に応じ、例えば、構造が複雑な部分を撮像する視点に関しては、より密に画像を取得する等することが好適である。しかし、どの部分を撮像する視点を密にすれば良いかは自明でないという課題があった。また、密にすべき視点が与えられたとしても、簡易にそのような画像を取得する方法がないという課題があった。
【0009】
本発明は、このような点に鑑みなされたものであり、物体を様々な視点から撮像した多数の画像を用いて、物体認識に不足している撮像画像が何であるかを提示することを目的とする。
【課題を解決するための手段】
【0010】
上記目的は以下の方法によって達成される。
【0011】
相対位置姿勢算出手段が、撮像手段によって複数の視点から物体を撮像した複数の撮像画像に基づいて、該複数の視点ごとに該物体からの該撮像手段への相対位置姿勢を算出する相対位置姿勢算出工程と、
不足位置姿勢算出手段が、前記算出された複数の相対位置姿勢に基づいて、前記撮像手段による撮像が不足している方向からの前記相対位置姿勢を不足位置姿勢として算出する不足位置姿勢算出工程と、
不足視点画像生成手段が、前記算出された不足位置姿勢を表示手段に表示する画像を生成する不足視点画像生成工程と、
を有することを特徴とする情報処理方法。
【0012】
上記目的は以下の方法によっても達成される。
【0013】
相対位置姿勢算出手段が、撮像手段によって複数の視点から物体を撮像した複数の撮像画像に基づいて、該複数の視点ごとに該物体からの該撮像手段への相対位置姿勢を算出する相対位置姿勢算出工程と、
画像正規化手段が、前記複数の撮像画像を統一したフォーマットに正規化する画像正規化工程と、
識別器学習手段が、前記物体の姿勢を推定する識別器に、前記正規化された複数の撮像画像を学習させる識別器学習工程と、
不足位置姿勢算出手段が、前記算出された複数の相対位置姿勢の姿勢と、前記識別器で推定される前記物体の姿勢とを比較することにより、前記撮像手段で前記物体を撮像が不足している方向からの前記相対位置姿勢を不足位置姿勢として算出する不足位置姿勢算出工程と、
不足視点画像生成手段が、前記算出された不足位置姿勢を表示手段に表示する画像を生成する不足視点画像生成工程と、
を有することを特徴とする情報処理方法。
【発明の効果】
【0014】
本発明によれば、物体認識に不足している撮像画像が何であるかを提示することができる。
【図面の簡単な説明】
【0015】
【図1】第1の実施形態における構成図である。
【図2】第1の実施形態における計測座標系の定義を示す図である。
【図3】第1の実施形態におけるカメラ座標系、画像座標系の定義を示す図である。
【図4】第1の実施形態における処理を示すフローチャートである。
【図5】第1の実施形態における不足位置姿勢算出部における処理のフローチャートである。
【図6】第1の実施形態における表示部107に表示する画像の例を示す図である。
【図7】第2の実施形態における構成図である。
【図8】第2の実施形態における処理を示すフローチャートである。
【図9】第2の実施形態における画像正規化部での処理画像の例を示す図である。
【図10】第2の実施形態における不足位置姿勢算出部における処理のフローチャートである。
【図11】第3の実施形態における構成図である。
【図12】第3の実施形態における処理を示すフローチャートである。
【図13】本願の実施形態を実現するためのコンピュータの構成例である。
【図14】2つの画像の比較に基づいた視点不足判定の例である。
【図15】姿勢推定結果に基づいた視点不足判定の例である。
【図16】第3の実施形態における不足位置姿勢算出部での処理を示すフローチャートである。
【発明を実施するための形態】
【0016】
以下、添付図面を参照しながら、本発明の実施形態を説明する。
【0017】
〔第1の実施形態〕
本実施形態では、計測対象となる物体を様々な視点から満遍なく撮像した多数の画像から、複数視点画像を生成する。
【0018】
図1は、本実施形態における構成図である。本実施形態は、撮像部101、画像入力部102、相対位置姿勢算出部103、複数視点画像保持部104、不足位置姿勢算出部105、不足視点画像生成部106、表示部107で構成される。また、現実空間に置かれた計測台111には、計測対象となる物体112が支柱113に載置されている。物体112の周囲には、複数のマーカ121、122、・・・、128が配置されている。また、各マーカ121から128までの8個のマーカがそれぞれ、色1、色2、・・・、色8の色のマーカとする。
【0019】
撮像部101は、物体112を撮像する。例えば、支柱113に載置された物体112を、ユーザが持つカメラで撮像する。撮像部101は、撮像した画像を外部に出力可能なものである。例えば、CCD等の撮像素子、レンズからなるデジタルスチルカメラや、カムコーダ等がある。撮像された画像は、例えば、ユーザがデジタルスチルカメラのシャッタを押下したタイミングで、画像入力部102へ送られる。
【0020】
画像入力部102は、撮像部101から送信されてきた画像を処理部12に入力する。画像入力部102で入力された画像は、相対位置姿勢算出部103へ送られる。
【0021】
相対位置姿勢算出部103は、計測対象である物体112と撮像部101の相対位置姿勢を算出する。相対位置姿勢算出部103で算出された物体112と撮像部101との相対位置姿勢は、複数視点画像保持部104へ送られる。
【0022】
複数視点画像保持部104は、相対位置姿勢算出部103で求めた撮像姿勢データと、当該撮像姿勢の計測処理を行った画像とを関連付けて記憶する。記憶を繰り返し、撮像姿勢データが所定の数に至るまで記録する。記録された撮像姿勢データは、不足位置姿勢算出部へ送られる。
【0023】
不足位置姿勢算出部105は、複数視点画像保持部104に記憶されている、現段階までに撮像した多数の撮像姿勢データに基づき、現段階で撮像が不足している視点を算出する。
【0024】
不足視点画像生成部106は、不足位置姿勢算出部105で算出された不足視点の撮像姿勢データから、不足している視点を示す画像を生成する。
【0025】
表示部107は、不足視点画像生成部106で生成された表示画像を表示する。
【0026】
図2は、本実施形態における計測座標系の定義を示す図である。計測台111には、計測対象となる物体を載置するための支柱113が設けられている。計測座標系は、支柱113と計測台111の接合位置200を原点とし、x軸201、y軸202、z軸203とする。
【0027】
撮像部101により撮像した画像を処理することで、いずれのマーカであるかを一意に区別する。例えば、マーカは、三次元位置が既知で異なる色のとき、撮像部101で撮像した画像から、各マーカ特有の色を抽出する処理を行う。これにより、画像内に存在するマーカの特定と、そのマーカの画像内での位置検出ができる。マーカの三次元位置は、固定されており、計測座標系におけるマーカの中心の位置を予め計測する。
【0028】
図3は、カメラ座標系、画像座標系の定義を示す図である。計測座標系を設定したのと同様に、撮像部101に対し、三次元のカメラ座標系を定義する。また、撮像画像に対応する仮想的な平面である画像面31を定義し、その画像面における2次元の画像座標系を定義する。カメラ座標系は、撮像部101のレンズの主点を原点310とする。そして、撮像画像の右方向に対応する方向をx’軸311、上方向に対応する方向をy’軸312、レンズの光軸と平行で、撮像部101の撮像方向301とは反対方向の軸をz’軸313と定義する。また、画像座標系を、これも図3に示したように、画像面302の中心を原点320とし、画像の右方向に対応する方向をx”軸321、上方向に対応する方向をy”軸322とする2次元座標系として定義する。
【0029】
図4は、本実施形態における処理のフローチャートである。以下、複数視点画像生成方法の例について説明する。
【0030】
ステップS401では、画像入力部102が、撮像部101から送信されてきた画像を相対位置姿勢算出部103に入力する。物体112を撮像した画像は、少なくとも4つのマーカが、画像内に存在する必要がある。画像入力部102で入力された画像は、相対位置姿勢算出部103に送信され、ステップS402へ進む。
【0031】
ステップS402では、相対位置姿勢算出部103が、計測対象である物体112と撮像部101の相対位置姿勢を算出する。すなわち、画像入力部102から送信された画像を処理することにより、送信された画像を撮像したときの撮像部の位置姿勢を計測する。
【0032】
送信された画像に対し、各マーカに特有の、色1から色8までの色の抽出処理を行い、それぞれのマーカについて、画像内に存在するか否かの判定を行う。具体的には、各画素のRGB値から色相を求め、その色相と、抽出対象である色の色相とが、所定範囲内であれば、その画素を抽出する。対応する色の画素が、画像から抽出された場合、その色に対応するマーカが存在すると判定する。マーカの色に対応する画素の、画像における重心位置(上述の画像座標系における位置(x”、y”))を求める。これにより、計測座標系における三次元位置が既知である4つ以上のマーカの、画像座標系における位置を求めることができる。また、レンズの焦点距離がf[mm]と既知であれば、非特許文献1に記載の技術により、計測座標系に対するカメラ座標系の相対的な位置姿勢を求めることができる。
【0033】
2つの三次元座標系の相対位置姿勢は、座標系の並進成分と、回転成分の2つで表現する。並進成分は、2つの三次元座標の原点間の並進移動成分であり、計測座標系の原点40から、カメラ座標系の原点310までの並進移動成分(Tx、Ty、Tz)として表現する。回転成分は、回転軸と、回転軸を中心とする回転量で表現する。具体的には、計測座標系のx軸201、y軸202、z軸203が、カメラ座標系のx’軸311、y’軸312、z’軸313と、それぞれ同一方向になる回転量で表現する。すなわち、計測座標系を、計測座標系の原点を通る回転軸を中心に回転させた時の、回転軸方向(Rx、Ry、Rz)、及び、回転角θとして表現する。この回転成分は、4つのパラメータからなり、回転軸方向を表す(Rx、Ry、Rz)は、Rx2+Ry2+Rz2=1となるように正規化されたものであるため、実際の自由度は、回転の自由度と同一となる。計測した相対位置姿勢を、座標系間の並進成分(Tx、Ty、Tz)、及び、回転成分として、回転軸方向(Rx、Ry、Rz)と回転角θで表現し、これを撮像姿勢データとする。
【0034】
相対位置姿勢算出部103で算出された物体112と撮像部101との相対位置姿勢は、複数視点画像保持部104へ送られ、ステップS403へ進む。
【0035】
ステップS403では、複数視点画像保持部104が、相対位置姿勢算出部103で求めた撮像姿勢データと、当該撮像姿勢の計測処理を行った画像とを関連付けて記憶する。すなわち、ユーザが撮像した物体112の画像と、その画像を撮像したときの撮像部101の位置姿勢が、複数視点画像保持部104に関連付けられて記憶される。なお、関連付けて記憶する撮像姿勢データが所定の数に至るまで、繰り返した後、ステップS404へ進む。例えば、60程度の数が得られるまで、撮像を繰り返してもよい。
【0036】
ステップS404では、不足位置姿勢算出部105が、複数視点画像保持部104に記憶されている、現段階までに撮像した多数の撮像姿勢データに基づき、現段階で撮像が不足している視点を算出する。
【0037】
図5は、不足位置姿勢算出部における処理のフローチャートである。ステップS404における、不足位置姿勢算出部105の具体的な処理の詳細について説明する。
【0038】
ステップS501は、略均等方向計算ステップである。本ステップでは、物体112を中心とした仮想的な三次元空間内の球面上に、略均等に仮想的な視点を配置する。具体的には、仮想的な三次元空間に、仮想座標系を用意し、その仮想座標系の原点を中心とする半径1の球面上に、所定個数M個の点を略均等に配置した場合の撮像可能な方向を計算する。
【0039】
例えば、特許文献3に記載に技術により、球面上に略均等に点を配置することができる。球面上に略均等に配置する所定個数M個の点は、例えば20から100程度の任意の値にすればよく、M=60とする。そのため、60個分の球面上の点が得て、それぞれの点の、仮想的な三次元空間の仮想座標系における位置を、(Pxi、Pyi、Pzi)(i=1、2、・・・、60)とする。
【0040】
ステップS502は、類似方向判定ステップである。本ステップでは、類似した姿勢での撮像が、まだ行われていない点があるか否かを判定する。具体的には、各点から、球の中心に向かって撮像したと仮定した場合の、仮想的な三次元空間内での撮像姿勢と、類似した姿勢での撮像が既に行われているか否かを判定する。ここでは単純に、まず、各点から球の中心を撮像するように撮像部101を配置したと想定する。そして、その時の、図5に示したカメラ座標系のz’軸503の、仮想座標系における方向を求める。この方向は、球面上の点から、球の中心に向かって撮像する、つまり、カメラ座標系のz’軸503の負方向が、球の中心を通るように配置するので、この方向は、各点の仮想座標系における位置そのものになる。例えば、ある点(Pxi、Pyi、Pzi)から球の中心を撮像するように撮像部101を配置したと想定する。この場合、カメラ座標系のz’軸503の、仮想座標系における方向は、単純に(Pxi、Pyi、Pzi)になる。そして、この方向と、既に撮像が行われた複数の撮像姿勢の中から、カメラ座標系のz’軸503の、計測座標系における方向との類似度が、最も高いものを検索して、その類似度を求める。この類似度としては、それぞれの方向の内積等を用いて求めればよく、2方向の内積を類似度として用いる。また、既に撮像が行われた夫々の撮像姿勢において、カメラ座標系z’軸503の計測座標系における方向(Qx、Qy、Qz)を求めるとする。これは、その撮像姿勢データの回転成分が、回転軸方向(Rx、Ry、Rz)、回転角θである場合、次の式(1)により求められる。
【0041】
【数1】
【0042】
つまり、球面上に略均等に配置したある点に対応する方向(Pxi、Pyi、Pzi)と、複数視点画像保持部104に記憶されている複数の撮像姿勢データから、上記式(1)により求めた(Qx、Qy、Qz)との内積をそれぞれ求める。その中から、内積値が最も大きいものを求める。
【0043】
そして、求めた最大の内積値が、所定の基準の値以上であるかを判定し、所定の基準の値以上であるならば、球面上に配置したその点に対応する視点からの撮像は充分であると判定する。所定の基準の値以下であるならば、その点に対応する視点からの撮像が不足していると判定する。ここで判定に用いる所定の基準の値は、1未満の任意の値でよいが、例えば0.8程度といった値を用いる。
【0044】
ステップS503は、非類似方向算出ステップである。本ステップでは、撮像が不足している視点として、その点から、球の中心に向かって撮像した場合の撮像姿勢を求める。具体的には、球面上のある点に関して、撮像が不足していると判定された場合は、その点に対応する方向(Pxi、Pyi、Pzi)を、撮像が不足している視点に対応する撮像姿勢とする。これらにより、撮像が不足している視点を算出する。
【0045】
ステップS405では、不足位置姿勢があるか否かを判定する。不足位置姿勢算出部105が、球面上に略均等に配置した全ての点について、その点に対応する視点からの撮像が充分であると判定された場合、計測対象物体を様々な視点から満遍なく撮像できたと判断し、処理を終了する。
【0046】
一方、球面上に略均等に配置した点に対応する視点からの撮像が不足していると判定された場合、撮像姿勢に関するデータ(Pxi、Pyi、Pzi)を、不足視点画像生成部106に送信し、ステップS406へ進む。
【0047】
ステップS406では、不足視点画像生成部106が、不足位置姿勢算出部105より送信されてきた撮像姿勢に関するデータに基づいて、不足している視点を示す画像を生成する。
【0048】
図6は、表示部107に表示する画像の例である。矢印601は、不足位置姿勢算出部105より送信されてきた撮像が不足している視点からの撮像姿勢に対応する矢印である。矢印601は、計測座標系の原点40から、撮像が不足している視点からの撮像姿勢に関するデータ(Pxi、Pyi、Pzi)への点線602の上にある。矢印601により不足している視点が確認できる。不足している視点は、矢印に限らず、ユーザが不足している視点が分かる形で表現すればよい。
【0049】
計測対象物体の撮像を行うユーザは、表示部107に表示された不足している視点からの撮像を行う。撮像部101から、矢印601に対応する視点からの画像が画像入力部102に送信され、ステップS401へ戻る。これにより、様々な視点から満遍なく撮像した多数の画像からなる複数視点画像が記憶され、様々な視点から満遍なく撮像した多数の画像からなる複数視点画像を生成できる。
【0050】
ステップS407では、表示部107が、不足視点画像生成部106で生成された画像を表示する。すなわち、撮像部101をどこに移動させて物体112を撮像すべきかを表示する。物体112を、様々な視点から満遍なく撮像した画像が複数視点画像保持部104に保持され、不足している視点が無くなるまで処理を続ける。
【0051】
以上、第1の実施形態は、計測対象物体112を、様々な視点から満遍なく撮像した多数の画像からなる複数視点画像生成方法の例を説明した。
【0052】
〔変形例1−1〕
計測対象物体を、様々な視点から満遍なく撮像した多数の画像からなる複数視点画像を生成した。しかし、計測対象の物体によっては、所定の視点付近からの撮像を密に行った方が好適な場合がある。例えば、計測対象物体の内、三次元的な構造が複雑な部分を撮像するような視点に関しては、その他の構造が簡素な部分より、密に撮像を行った方がよい。例えば、計測対象物体の三次元モデルに関するデータを予め入力しておき、データを解析することによって、計測対象物体の三次元的な構造が複雑な部分を求める。例えば、ポリゴンモデルの場合、ポリゴン数により、構造の複雑さを評価すればよい。次に、計測対象物体の三次元的な構造が複雑な部分を撮像する視点を求める。そして、仮想的な球面上に略均等に配置した多数の点の内、構造が複雑な部分を撮像する視点付近に対応する点から少しずらした点を追加生成する。これにより、構造が複雑な部分を撮像する視点付近における球面上の点の密度が高くなる。仮想的な球面上に配置した複数の点を用いて、構造が複雑な部分を撮像するような視点の画像を密に取得することができる。
【0053】
〔変形例1−2〕
ステップS402では、直接的に計測対象物体と、撮像部101の相対位置姿勢を求めた。撮像部101の位置姿勢を求めるとき、マーカを用いた方法に限らない。例えば、撮像された画像以外から求めてもよい。計測対象物体の三次元モデルを予め入力し、三次元モデルを二次元画像に投影したときの特徴と、撮像した画像の特徴とを比較することで、相対位置姿勢を求めてもよい。非特許文献2に記載の技術を用いて、三次元モデルから撮像部と物体112の相対位置姿勢を推定し、撮像部101と物体112との相対位置姿勢を求めてもよい。
【0054】
〔第2の実施形態〕
第2の実施形態では、ある物体を撮像した画像を入力した際に、その物体がどのような姿勢であるかを認識する識別器の学習を行うための複数視点画像生成を行う情報処理方法の例を示す。
【0055】
図7は、本実施形態における構成図である。本実施形態は、撮像部101、画像入力部102、相対位置姿勢算出部103、画像正規化部701、複数視点画像保持部104、識別器学習部702、不足位置姿勢算出部105、不足視点画像生成部106、表示部107で構成される。また、現実空間に置かれた計測台111には、計測対象となる物体112が支柱113に載置されている。物体112の周囲には、複数のマーカ121、122、・・・、128が配置されている。また、各マーカ121から128までの8個のマーカがそれぞれ、色1、色2、・・・、色8の色のマーカとする。加えて、マーカ以外の領域が色9で統一されており、計測対象である物体112は、色1から色9までの色が含まれていないものとする。以下では、上記構成において、第1の実施形態と異なる部分のみ説明し、同様の部分に関しては説明を省略する。
【0056】
撮像部101は、112を撮像する。撮像された画像は、画像入力部102に送られる。
【0057】
画像入力部102は、撮像部101から送信されてきた画像を相対位置姿勢算出部103に入力する。画像入力部102で入力された画像は、相対位置姿勢算出部103に送られる。
【0058】
相対位置姿勢算出部103は、計測対象である物体112と撮像部101の相対位置姿勢を算出する。相対位置姿勢算出部103で算出された物体112と撮像部101との相対位置姿勢は、複数視点画像保持部104へ送られる。
【0059】
画像正規化部701は、計測対象である物体112の画像を統一したフォーマットに正規化する。具体的には、計測対象である物体のみを入力された画像から切り出した画像をグレースケール化して所定のサイズに正規化する。
【0060】
複数視点画像保持部104は、相対位置姿勢算出部103で求めた撮像姿勢データと、当該撮像姿勢の計測処理を行った画像とを関連付けて記憶する。記憶を繰り返し、撮像姿勢データが所定の数に至るまで記録する。記録された撮像姿勢データは、識別器学習部702へ送られる。
【0061】
識別器学習部702は、複数視点画像保持部104に記憶された多数の画像と撮像姿勢データに基づいて、画像中に存在する物体112の姿勢を推定する識別器の学習を行う。
【0062】
不足位置姿勢算出部105は、識別器学習部702で学習を行った識別器の推定結果に基づいて、現段階までに撮像した多数の撮像姿勢データに基づき、現段階で撮像が不足している視点を算出する。
【0063】
不足視点画像生成部106は、不足位置姿勢算出部105で算出された不足視点の撮像姿勢データから、不足している視点を示す画像を生成する。
【0064】
表示部107は、不足視点画像生成部106で生成された表示画像を表示する。
【0065】
図8は、本実施形態における、複数視点画像生成方法の処理フローを示した図である。
【0066】
ステップS801では、画像入力部102が、撮像部101から送信されてきた画像を処理部12に入力する。画像入力部102で入力された画像は、相対位置姿勢算出部103に送信され、ステップS802へ進む。
【0067】
ステップS802では、相対位置姿勢算出部103が、計測対象である物体112と撮像部101の相対位置姿勢を算出する。
【0068】
ステップS803では、画像正規化部701が、計測対象である物体112の画像を統一したフォーマットに正規化する。具体的には、計測対象である物体112のみを入力された画像から切り出した画像をグレースケール化して所定のサイズに正規化する。
【0069】
図9は、画像正規化部701での処理画像の例である。ステップS803における画像正規化部701の具体的な処理の詳細について説明する。図9(a)は、入力された画像である。入力された画像に対して、複数のマーカの色である色1から色8、及び、マーカ以外の領域に配色された色9以外の色である画素を抽出する。抽出された結果、図9(b)の計測対象の物体112の領域のみが抽出された画像が生成される。この画像から、図9(c)のように、抽出された外接正方形領域9を切り出す。そして、切り出した正方形領域を、カラー画像からグレースケール画像に変換する。図9(d)のように、この切り出した領域の幅、及び、高さが、所定の長さw画素になるように、拡大、若しくは、縮小処理を行うことでサイズの正規化を行う。ここでの所定の長さw画素は、任意の値でよい。画像正規化部701では、複数のマーカの色、及び、1色に統一された計測系の色以外の領域を抽出することによって、計測対象である物体112の領域の切り出しを行う。しかし、本発明はこれに限るものではなく、計測対象である物体の領域を切り出せるような方法であれば、その他の方法でもよい。
【0070】
ステップS804では、複数視点画像保持部104が、正規化処理を行った画像を相対位置姿勢算出部103で計測した撮像姿勢データと関連付けて記憶する。
【0071】
ステップS805では、識別器学習部702が、複数視点画像保持部104に記憶された多数の画像と撮像姿勢データに基づいて、画像中に存在する物体112の姿勢を推定する識別器の学習を行う。識別器の学習では、複数視点画像保持部104に記憶された、切り出し処理部702で物体切り出し等の処理を行った複数の画像、及び、それぞれに対応する撮像姿勢データを、学習データとして用いる。例えば、非特許文献3に記載のサポートベクトル回帰法に三次元物体の姿勢推定に、この識別器を用いてもよい。ただし、この識別器による予測値は、ロール、ピッチ、ヨーの3値を、物体112の姿勢の推定値としている。具体的には、撮像姿勢データの回転成分を表す、回転軸方向(Rx、Ry、Rz)、及び、回転角θの値を推定する。
【0072】
例えば、複数視点画像保持部104に記憶されている多数の画像(100×100画素のグレースケール画像)を用い、主成分分析により、画像群の固有空間を求める。固有空間の次元数は、任意の値でもよいが、累積寄与率を用いて決定するのが好ましい。例えば、累積寄与率が90%以上になる次元数までを、固有空間の次元数d(<100×100)として用いる。そして、記憶されている多数の画像の各々をd次元の固有空間に射影することで生成したデータを入力データとする。多数の画像の各々に対応する撮像姿勢データの回転成分を表す回転軸方向(Rx、Ry、Rz)、及び、回転角θを、サポートベクトル回帰法における目標値として学習を行う。このようなサポートベクトル回帰法に基づいた識別器では、画像正規化部による物体112の切り出し画像を入力することにより、計測対象物体112の姿勢が出力される。なお、識別器学習部702は、サポートベクトル回帰法を用いた識別器に限るものではない。例えば、非特許文献4に開示のパラメトリック固有空間法等、撮像された物体112の画像から、その物体112の姿勢を推定する識別器を用いてもよい。
【0073】
ステップS806では、不足位置姿勢算出部105が、識別器学習部724で学習した時点での識別器の推定能力に基づき、現段階で撮像が不足している視点を算出する。例えば、仮想的な三次元空間内の球面上に、略均等に所定個数の点を配置し、その各点から球の中心に向かって撮像を行う複数の視点(以下、仮想視点)を用意する。そして、仮想視点の各々について、複数視点画像保持部104に記憶されている複数の撮像姿勢データの内、その仮想視点に最も近い2つの視点(以下、撮像済隣接視点)を選択する。カメラ座標系のz’軸方向間の内積値が視点の近さを示す。これにより、撮像が不足している視点を算出する。
【0074】
図10は、不足位置姿勢算出部における処理のフローチャートである。ステップS806における、不足位置姿勢算出部123の具体的な処理の詳細について説明する。
【0075】
ステップS1001では、仮想的な三次元空間内の球面上に、略均等に所定個数の点を配置し、その各点から球の中心に向かって撮像を行う複数の視点(以下、仮想視点)を用意する。そして、仮想視点の各々について、複数視点画像保持部104に記憶されている複数の撮像姿勢データの内、その仮想視点に最も近い2つの視点(以下、撮像済隣接視点)を選択する。視点の近さについては、カメラ座標系のz’軸方向間の内積値が高い程、近い視点であると判定すればよい。そして、選択された2つの撮像済隣接視点に対応する計測対象物体112の画像を用いて、仮想視点に対応する位置から撮像した場合の、計測対象物体112の推定画像を生成する。推定画像は、上記仮想視点から観測した計測対象物体112の仮想的な画像である。推定画像の生成方法は、上記のような仮想的な画像を生成できる手法であれば、どのような手法を用いても構わない。また、切り出し処理部702で処理と同様に、グレースケールで、画像の幅、高さがw画素の画像を生成してもよい。
【0076】
ステップS1002では、生成した仮想視点から撮像した場合の計測対象物体112の画像を識別器学習部702の識別器に入力し、識別器の姿勢推定結果を求める。具体的には、ある仮想視点からの撮像に対応する計測対象物体の合成画像を用意し、その合成画像に対して、学習した識別器を適用し、その合成画像中の物体の姿勢推定結果を算出する。
【0077】
ステップS1003では、この姿勢推定結果が、対応する仮想視点から撮像した場合の、撮像系71の撮像姿勢と類似していない場合、撮像が不足していると判定する。類似しているか否かについては、仮想視点に対応する撮像姿勢と、姿勢推定結果との誤差が所定値以内であるか否かによって判定してもよい。2つの姿勢の誤差は、どちらか一方の姿勢を、もう一方の姿勢と一致するように回転させた場合の回転角を、2つの姿勢の誤差とすればよい。
【0078】
図15は、姿勢推定結果に基づいた視点不足判定の例を示す模式的な図である。
【0079】
例えば、撮像済隣接視点に対応する2つの画像1501、1502から、それらの中間位置に対応する仮想視点からの画像1503を(例えば、モーフィングを用いて)生成する。そして、その画像を、今までに取得した画像を用いて学習した、物体の姿勢(回転軸方向、及び、回転角)を出力する識別関数(例えば、多値の非線形カーネル回帰関数等)に入力する。出力される物体の姿勢(推定値)が、所定範囲内であるか否かに基づいて、その中間視点での撮影データが不足しているか否かを判定する。すなわち、中間視点の推定姿勢出力1504(識別関数の出力)が中間視点として正しいか否かを判定し、不足している視点を算出する。図15中の曲線は、正しい姿勢の値(多値)を模式的に示したものである。姿勢推定出力1504が、図15に示したように、この曲線に近い出力であれば、仮想視点1503に対応する視点からの画像は不足していないと判定する。姿勢推定出力1504が、この曲線から大きく離れた出力ならば、仮想視点1503に対応する視点からの画像が、識別器の学習に不足していると判定する。
【0080】
ステップS1004では、撮像が不足していると判定された仮想視点に対応する撮像姿勢を求める。例えば、仮想的な球面上の位置(Pxi、Pyi、Pzi)を、仮想視点に対応する撮像姿勢として求める。
【0081】
ステップS807では、不足位置姿勢があるか否かを判定する。不足位置姿勢算出部105が、球面上に略均等に配置した全ての点について、その点に対応する視点からの撮像が充分であると判定された場合、識別器の学習にとって十分に計測対象物体112の複数視点画像が撮像できたと判断し、ステップS810へ進む。一方、球面上に略均等に配置した点に対応する視点からの撮像が不足していると判定された場合、不足していると判定された仮想視点に対応する撮像姿勢に関するデータ(Pxi、Pyi、Pzi)を、不足視点画像生成部106に送信しステップS808へ進む。
【0082】
ステップS808では、不足視点画像生成部106が、不足位置姿勢算出部105より送信されてきた撮像姿勢に関するデータに基づいて、不足している視点を示す画像を生成する。
【0083】
ステップS809では、表示部107が、不足視点画像生成部106で生成された画像を表示する。
【0084】
ステップS810では、不足した視点がなくなった状態での識別器に関するデータを複数視点画像保持部104に記憶する。具体的には、写像される固有空間に関する固有空間の次元数と、その次元数分の基底ベクトルと、複数のサポートベクトル、及び、複数のサポートベクトルに対応する線形結合係数を記憶する。
【0085】
本実施形態により、計測対象物体の画像から、その姿勢を推定する識別器の学習に必要な画像からなる複数視点画像を生成できる。また、複数視点画像を用いて、任意視点物体認識を行う識別器が学習を行うことにより、その識別器を用いることで、物体がどのような姿勢であるのかを推定できる。
【0086】
以上、第2の実施形態は、撮像した物体がどのような姿勢であるのかを認識する識別器の学習を行うための複数視点画像生成方法の例を説明した。
【0087】
〔変形例2−1〕
表示部107に不足視点画像生成部106で生成された画像を表示することにより、ユーザが不足視点からの撮像を行った。しかし、ユーザが撮像するのではなく、ロボットアーム等に撮像部101を載置し、ロボットアーム等を不足視点へ移動させ、不足視点からの撮像を行うようにしてもよい。この場合、不足位置姿勢算出部105で不足していると判定された仮想視点に対応する撮像姿勢に関するデータを、ロボットアーム等の動作制御部に送信する。そして、動作制御部では、送信された撮像姿勢に関するデータに基づきロボットアーム等を移動させ、移動完了後に、撮像部101での撮像を実施する。これにより、不足視点からの撮像ができ、自動的に、識別器の学習に充分な複数視点画像を得ることができる。
【0088】
〔第3の実施形態〕
第3の実施形態では、計測対象物体の三次元モデルを生成するための複数視点画像生成を行う情報処理方法の例を示す。
【0089】
図11は、本実施形態における構成図である。本実施形態は、撮像部101、画像入力部102、相対位置姿勢算出部103、画像正規化部701、複数視点画像保持部104、三次元モデル生成部1101、不足位置姿勢算出部105、不足視点画像生成部106、表示部107で構成される。また、現実空間に置かれた計測台111には、計測対象となる物体112が支柱113に載置されている。物体112の周囲には、複数のマーカ121、122、・・・、128が配置されている。また、各マーカ121から128までの8個のマーカがそれぞれ、色1、色2、・・・、色8の色のマーカとする。加えて、マーカ以外の領域が色9で統一されており、計測対象である物体112は、色1から色9までの色が含まれていないものとする。以下では、上記構成において、第1の実施形態及び第2の実施形態と異なる部分のみ説明し、同様の部分に関しては説明を省略する。
【0090】
撮像部101は、物体112を撮像する。撮像された画像は、処理部12に送られる。
【0091】
画像入力部102は、撮像部101から送信されてきた画像を処理部12に入力する。画像入力部102で入力された画像は、相対位置姿勢算出部103に送られる。
【0092】
相対位置姿勢算出部103は、計測対象である物体112と撮像部101の相対位置姿勢を算出する。相対位置姿勢算出部103で算出された物体112と撮像部101との相対位置姿勢は、複数視点画像保持部104へ送られる。
【0093】
画像正規化部701は、計測対象である物体112のみを入力された画像から切り出す。切り出した画像をグレースケール化して所定のサイズに正規化する。
【0094】
複数視点画像保持部104は、相対位置姿勢算出部103で求めた撮像姿勢データと、当該撮像姿勢の計測処理を行った画像とを関連付けて記憶する。
【0095】
三次元モデル生成部1101は、複数視点画像保持部104に記憶された、複数の視点から撮像した計測対象物体112の画像を用いて、その計測対象物体の三次元モデルを生成する。
【0096】
不足位置姿勢算出部105は、生成した三次元モデルに基づいて、現段階までに撮像した多数の撮像姿勢データに基づき、現段階で撮像が不足している視点を算出する。
【0097】
不足視点画像生成部106は、不足位置姿勢算出部105で算出された不足視点の撮像姿勢データから、表示する画像を生成する。
【0098】
表示部107は、不足視点画像生成部106で生成された表示画像を表示する。
【0099】
図12は、本実施形態における、複数視点画像生成方法の処理フローを示した図である。
【0100】
ステップS1201では、画像入力部102が、撮像部101から送信されてきた画像を入力する。画像入力部102で入力された画像は、相対位置姿勢算出部103に送信され、ステップS1202へ進む。
【0101】
ステップS1202では、相対位置姿勢算出部103が、計測対象である物体112と撮像部101の相対位置姿勢を算出する。
【0102】
ステップS1203では、画像正規化部701が、計測対象である物体112のみを入力された画像から切り出す。切り出した画像をグレースケール化して所定のサイズに正規化する。
【0103】
ステップS1204では、複数視点画像保持部104が、物体切り出し、正規化処理を行った画像を、相対位置姿勢算出部103で計測した撮像姿勢データと関連付けて記憶する。
【0104】
ステップS1205では、三次元モデル生成部1101が、複数視点画像保持部104に記憶された、複数の視点から撮像した計測対象物体112の画像を用いて、その計測対象物体の三次元モデルを生成する。例えば、特許文献4に記載の技術を用いて、複数の視点から撮像した物体112の三次元モデルを生成する。
【0105】
ステップS1206では、不足位置姿勢算出部105が、三次元モデル生成部1101で生成した三次元モデルに基づき、現段階で撮像が不足している視点を算出する。
【0106】
図16は、不足位置姿勢算出部における処理のフローチャートである。ステップS1206における、不足位置姿勢算出部105の具体的な処理の詳細について説明する。
【0107】
ステップS1601では、まず、仮想的な三次元空間内の球面上に、略均等に所定個数の点を配置し、その各点に対応する仮想視点を用意する。そして、仮想視点の各々について、2つの撮像済隣接視点を選択する。そして、選択された2つの撮像済隣接視点に対応する計測対象物体112の画像を用い、仮想視点に対応する位置から撮影した場合の、計測対象物体112の推定画像を生成する。推定画像は、例えば、非特許文献5に記載の視点モーフィング法を用いて生成してもよい。
【0108】
ステップS1602では、現段階までに得られた複数視点画像を用いて生成した三次元モデルのレンダリング画像を生成する。三次元モデルのレンダリング画像は、3D−CGの技術であるレンダリングにより、三次元モデル生成部1101で生成した三次元モデルを、各仮想視点から観測する条件でレンダリングした画像である。
【0109】
ステップ1603では、各仮想視点に対応する、推定画像とレンダリング画像を比較し、その2枚の画像の類似度が低いならば、その仮想視点からの撮像が不足していると判定する。ここでの2つの画像の比較は、例えば、正規化相関による比較を行い、正規化相関の値が所定値以下ならば、2つの画像の類似度が低いと判定する。
【0110】
図14は、2つの画像の比較に基づいた視点不足判定の例を示す模式的な図である。
【0111】
例えば、撮像済隣接視点に対応する2つの画像1401、1402から、それらの中間位置に対応する仮想視点からの画像1403を(例えば、視点モーフィング法を用いて)生成する。また、現段階までに得られた複数視点画像を用いて生成した三次元モデルを、同中間視点から観測する条件で投影するようにレンダリングしたレンダリング画像1404を生成する。そして、その両者を比較し、それらの類似度(例えば、エッジ抽出結果の正規化相関値)が、所定値以上であるか否かに基づいて、その中間視点での撮影データが不足しているか否かを判定する。すなわち、視点モーフィング法等による推定画像1403と、レンダリング画像1404との誤差1405が大きい場合、対応する視点が不足していると判定する。
【0112】
ステップS1604では、撮像が不足していると判定された仮想視点に対応する撮像姿勢を求める。例えば、仮想的な球面上の位置(Pxi、Pyi、Pzi)を、仮想視点に対応する撮像姿勢として求めればよい。
【0113】
ステップS1207では、不足位置姿勢があるか否かを判定する。不足位置姿勢算出部105が、球面上に略均等に配置した全ての点について、その点に対応する視点からの撮像が充分であると判定された場合、三次元モデルの生成にとって十分に計測対象物体112の複数視点画像が撮像できたと判断し、ステップS1210へ進む。一方、球面上に略均等に配置した点に対応する視点からの撮像が不足していると判定された場合、撮像姿勢に関するデータ(Pxi、Pyi、Pzi)を、不足視点画像生成部106に送信しステップS1208へ進む。
【0114】
ステップS1208では、不足視点画像生成部106が、不足位置姿勢算出部105より送信されてきた撮像姿勢に関するデータに基づいて、不足している視点を示す画像を生成する。
【0115】
ステップS1209では、表示部107が、不足視点画像生成部106で生成された画像を表示する。
【0116】
ステップS1210では、三次元モデル生成部1101が、不足している視点がなくなった複数の画像から、計測対象物体112の三次元モデルを生成し、複数視点画像保持部104に記憶する。
【0117】
物体の三次元モデルを生成する三次元モデル生成に必要な多数の画像からなる複数視点画像を生成できる。
【0118】
撮像部101をロボットアームなどに載置し、ロボットアーム等を不足視点へ移動させ、不足視点の撮像を行うようにすることにより、自動的に、三次元モデルの生成に充分な複数視点画像を得ることもできる。
【0119】
以上、第3の実施形態は、計測対象物体の三次元モデルを生成するための複数視点画像生成方法の例を説明した。
【0120】
〔その他の実施形態〕
図13は、本願の実施形態を実現するためのコンピュータの構成例である。
【0121】
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク1307又は各種の記憶媒体1302、1303を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ1301(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【特許請求の範囲】
【請求項1】
撮像手段によって複数の視点から物体を撮像した複数の撮像画像に基づいて、該複数の視点ごとに該物体からの該撮像手段への相対位置姿勢を算出する相対位置姿勢算出手段と、
前記算出された複数の相対位置姿勢に基づいて、前記撮像手段による撮像が不足している該撮像手段の不足位置姿勢を算出する不足位置姿勢算出手段と、
前記算出された不足位置姿勢を表示手段に表示する画像を生成する不足視点画像生成手段と、
を備えることを特徴とする情報処理装置。
【請求項2】
前記不足位置姿勢算出手段が、前記撮像手段による撮像が不足している前記物体から該撮像手段への相対位置姿勢を、前記不足位置姿勢として算出することを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記複数の物体の姿勢を推定する識別器に、前記複数の撮像画像を学習させる識別器学習手段と、を更に備え、
前記不足位置姿勢算出手段が、前記算出された複数の相対位置姿勢の姿勢と、前記識別器で推定される前記物体の姿勢とに基づいて、前記不足位置姿勢として算出することを特徴とする請求項1又は2に記載の情報処理装置。
【請求項4】
前記複数の撮像画像を統一したフォーマットに正規化する画像正規化手段
を更に備え、
前記識別機学習手段が、前記正規化された複数の撮像画像を学習させることを特徴とする請求項3に記載の情報処理装置。
【請求項5】
前記不足位置姿勢算出手段が、前記算出された複数の相対位置姿勢の姿勢と、前記識別器が学習した複数の撮像画像に基づいて設定された設定位置姿勢とを比較することにより、前記不足位置姿勢を算出することを特徴とする請求項3又は4に記載の情報処理装置。
【請求項6】
前記識別器が学習した複数の撮像画像に基づいて設定された設定位置姿勢から撮像した場合の推定画像を生成する推定画像生成手段と、
前記設定位置姿勢から観測した場合の、予め保持された前記物体の三次元モデルのレンダリング画像を生成する投影画像生成手段と、
を更に備え、
前記不足位置姿勢算出手段が、前記推定画像と前記レンダリング画像とを比較することにより、前記不足位置姿勢を算出することを特徴とする請求項3又は4に記載の情報処理装置。
【請求項7】
前記推定画像生成手段が、前記設定位置姿勢は、前記識別器が学習した複数の撮像画像を撮像した位置姿勢の互いの中間となる位置姿勢であることを特徴とする請求項5又は6に記載情報処理装置。
【請求項8】
前記識別器が学習した複数の撮像画像は、2枚の撮像画像であることを特徴とする請求項6乃至7の何れか1項に記載の情報処理装置。
【請求項9】
前記撮像画像は、前記物体と物体の周囲に配置された複数のマーカを含み、
前記複数のマーカの現実空間における三次元位置は既知であることを特徴とする請求項1乃至8の何れか1項に記載の情報処理装置。
【請求項10】
前記複数のマーカの各々は、前記物体の色及び当該マーカ以外の該複数のマーカと異なる色のマーカであることを特徴とする請求項4に記載の情報処理装置。
【請求項11】
前記相対位置姿勢算出手段が、前記撮像画像における前記複数のマーカの位置を検出することにより、該複数の視点ごとに該物体からの該撮像手段への相対位置姿勢を算出することを特徴とする請求項4又は5に記載の情報処理装置。
【請求項12】
前記検出される複数のマーカの位置は、4つ以上であることを特徴とする請求項6に記載の情報処理方法。
【請求項13】
前記相対位置姿勢算出が、予め保持された前記物体の三次元モデルの特徴と、前記撮像画像における該物体の特徴を比較することにより、該複数の視点ごとに該物体からの該撮像手段への相対位置姿勢を算出することを特徴とする請求項1に記載の情報処理方法。
【請求項14】
前記不足位置姿勢算出手段は、
前記物体を中心に略均等に該物体を撮像しうる複数の略均等方向を計算する略均等方向計算手段と、
前記算出された複数の相対位置姿勢に基づく撮像の方向に類似する前記略均等方向を判定する類似方向判定手段と、
前記類似すると判定されなかった前記略均等方向に基づいて、前記撮像手段による撮像が不足している方向を算出する非類似方向算出手段と、
を備えることを特徴とする請求項1乃至13の何れか1項に記載の情報処理方法。
【請求項15】
不足位置姿勢算出手段が、予め保持された前記物体の三次元モデルの複雑な構造を撮像できる視点付近からの前記算出された相対位置姿勢が少ないとき、当該視点からの相対位置姿勢を不足位置姿勢として算出することを特徴とする請求項1乃至14の何れか1項に記載の情報処理方法。
【請求項16】
前記複数の撮像画像に基づいて、三次元モデルを生成する三次元モデル生成手段と
を更に備えることを特徴とする請求項1乃至15の何れか1項に記載の情報処理装置。
【請求項17】
前記撮像手段を動かす撮像可動手段と
を更に有することを特徴とする請求項1乃至16の何れか1項に記載の情報処理装置。
【請求項18】
情報処理装置が行う情報処理方法であって、
前記情報処理装置の相対位置姿勢算出手段が、撮像手段によって複数の視点から物体を撮像した複数の撮像画像に基づいて、該複数の視点ごとに該物体からの該撮像手段への相対位置姿勢を算出する相対位置姿勢算出工程と、
前記情報処理装置の不足位置姿勢算出手段が、前記算出された複数の相対位置姿勢に基づいて、前記撮像手段による撮像が不足している該撮像手段の不足位置姿勢を算出する不足位置姿勢算出工程と、
前記情報処理装置の不足視点画像生成手段が、前記算出された不足位置姿勢を表示手段に表示する画像を生成する不足視点画像生成工程と、
を有することを特徴とする情報処理方法。
【請求項19】
請求項18に記載の情報処理方法の各工程をコンピュータに実行させるためのプログラム。
【請求項20】
請求項18に記載の情報処理方法の各工程をコンピュータに実行させるためのプログラムを記憶した記憶媒体。
【請求項1】
撮像手段によって複数の視点から物体を撮像した複数の撮像画像に基づいて、該複数の視点ごとに該物体からの該撮像手段への相対位置姿勢を算出する相対位置姿勢算出手段と、
前記算出された複数の相対位置姿勢に基づいて、前記撮像手段による撮像が不足している該撮像手段の不足位置姿勢を算出する不足位置姿勢算出手段と、
前記算出された不足位置姿勢を表示手段に表示する画像を生成する不足視点画像生成手段と、
を備えることを特徴とする情報処理装置。
【請求項2】
前記不足位置姿勢算出手段が、前記撮像手段による撮像が不足している前記物体から該撮像手段への相対位置姿勢を、前記不足位置姿勢として算出することを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記複数の物体の姿勢を推定する識別器に、前記複数の撮像画像を学習させる識別器学習手段と、を更に備え、
前記不足位置姿勢算出手段が、前記算出された複数の相対位置姿勢の姿勢と、前記識別器で推定される前記物体の姿勢とに基づいて、前記不足位置姿勢として算出することを特徴とする請求項1又は2に記載の情報処理装置。
【請求項4】
前記複数の撮像画像を統一したフォーマットに正規化する画像正規化手段
を更に備え、
前記識別機学習手段が、前記正規化された複数の撮像画像を学習させることを特徴とする請求項3に記載の情報処理装置。
【請求項5】
前記不足位置姿勢算出手段が、前記算出された複数の相対位置姿勢の姿勢と、前記識別器が学習した複数の撮像画像に基づいて設定された設定位置姿勢とを比較することにより、前記不足位置姿勢を算出することを特徴とする請求項3又は4に記載の情報処理装置。
【請求項6】
前記識別器が学習した複数の撮像画像に基づいて設定された設定位置姿勢から撮像した場合の推定画像を生成する推定画像生成手段と、
前記設定位置姿勢から観測した場合の、予め保持された前記物体の三次元モデルのレンダリング画像を生成する投影画像生成手段と、
を更に備え、
前記不足位置姿勢算出手段が、前記推定画像と前記レンダリング画像とを比較することにより、前記不足位置姿勢を算出することを特徴とする請求項3又は4に記載の情報処理装置。
【請求項7】
前記推定画像生成手段が、前記設定位置姿勢は、前記識別器が学習した複数の撮像画像を撮像した位置姿勢の互いの中間となる位置姿勢であることを特徴とする請求項5又は6に記載情報処理装置。
【請求項8】
前記識別器が学習した複数の撮像画像は、2枚の撮像画像であることを特徴とする請求項6乃至7の何れか1項に記載の情報処理装置。
【請求項9】
前記撮像画像は、前記物体と物体の周囲に配置された複数のマーカを含み、
前記複数のマーカの現実空間における三次元位置は既知であることを特徴とする請求項1乃至8の何れか1項に記載の情報処理装置。
【請求項10】
前記複数のマーカの各々は、前記物体の色及び当該マーカ以外の該複数のマーカと異なる色のマーカであることを特徴とする請求項4に記載の情報処理装置。
【請求項11】
前記相対位置姿勢算出手段が、前記撮像画像における前記複数のマーカの位置を検出することにより、該複数の視点ごとに該物体からの該撮像手段への相対位置姿勢を算出することを特徴とする請求項4又は5に記載の情報処理装置。
【請求項12】
前記検出される複数のマーカの位置は、4つ以上であることを特徴とする請求項6に記載の情報処理方法。
【請求項13】
前記相対位置姿勢算出が、予め保持された前記物体の三次元モデルの特徴と、前記撮像画像における該物体の特徴を比較することにより、該複数の視点ごとに該物体からの該撮像手段への相対位置姿勢を算出することを特徴とする請求項1に記載の情報処理方法。
【請求項14】
前記不足位置姿勢算出手段は、
前記物体を中心に略均等に該物体を撮像しうる複数の略均等方向を計算する略均等方向計算手段と、
前記算出された複数の相対位置姿勢に基づく撮像の方向に類似する前記略均等方向を判定する類似方向判定手段と、
前記類似すると判定されなかった前記略均等方向に基づいて、前記撮像手段による撮像が不足している方向を算出する非類似方向算出手段と、
を備えることを特徴とする請求項1乃至13の何れか1項に記載の情報処理方法。
【請求項15】
不足位置姿勢算出手段が、予め保持された前記物体の三次元モデルの複雑な構造を撮像できる視点付近からの前記算出された相対位置姿勢が少ないとき、当該視点からの相対位置姿勢を不足位置姿勢として算出することを特徴とする請求項1乃至14の何れか1項に記載の情報処理方法。
【請求項16】
前記複数の撮像画像に基づいて、三次元モデルを生成する三次元モデル生成手段と
を更に備えることを特徴とする請求項1乃至15の何れか1項に記載の情報処理装置。
【請求項17】
前記撮像手段を動かす撮像可動手段と
を更に有することを特徴とする請求項1乃至16の何れか1項に記載の情報処理装置。
【請求項18】
情報処理装置が行う情報処理方法であって、
前記情報処理装置の相対位置姿勢算出手段が、撮像手段によって複数の視点から物体を撮像した複数の撮像画像に基づいて、該複数の視点ごとに該物体からの該撮像手段への相対位置姿勢を算出する相対位置姿勢算出工程と、
前記情報処理装置の不足位置姿勢算出手段が、前記算出された複数の相対位置姿勢に基づいて、前記撮像手段による撮像が不足している該撮像手段の不足位置姿勢を算出する不足位置姿勢算出工程と、
前記情報処理装置の不足視点画像生成手段が、前記算出された不足位置姿勢を表示手段に表示する画像を生成する不足視点画像生成工程と、
を有することを特徴とする情報処理方法。
【請求項19】
請求項18に記載の情報処理方法の各工程をコンピュータに実行させるためのプログラム。
【請求項20】
請求項18に記載の情報処理方法の各工程をコンピュータに実行させるためのプログラムを記憶した記憶媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【公開番号】特開2011−198349(P2011−198349A)
【公開日】平成23年10月6日(2011.10.6)
【国際特許分類】
【出願番号】特願2010−273896(P2010−273896)
【出願日】平成22年12月8日(2010.12.8)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成23年10月6日(2011.10.6)
【国際特許分類】
【出願日】平成22年12月8日(2010.12.8)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]