(57)【特許請求の範囲】
【請求項１】
複数の画像、及び、前記複数の画像の各々に含まれる複数の点の三次元における位置を示す位置情報を含む三次元情報を取得する三次元情報取得部と、
前記位置情報から、前記複数の画像の各々に含まれている複数の平面を示す平面情報を生成する画像処理部と、
前記位置情報及び前記平面情報の少なくとも何れか一方から、認識対象を選択する認識対象選択部と、
前記位置情報から、前記認識対象のポリゴンモデルを生成するポリゴンモデル生成部と、
前記複数の画像から、前記ポリゴンモデルのテクスチャとして用いられる画像を選択するテクスチャ選択部と、
背景画像及び前記背景画像に含まれる複数の点の三次元における位置を示す背景位置情報を含む背景三次元情報を記憶する背景三次元情報記憶部と、
前記ポリゴンモデルと、前記選択された画像とを組み合わせることで、前記認識対象の三次元モデルを生成し、前記生成された三次元モデルから異なる複数の二次元画像を生成する画像生成部と、を備え、
前記画像生成部は、
前記生成された三次元モデルをレンダリングするために、前記背景位置情報から、前記生成された三次元モデルを前記背景画像に配置することのできる位置、傾き及びサイズを特定し、特定された位置、傾き及びサイズでレンダリングするように、複数のパラメータ群を設定するレンダリングパラメータ設定部と、
前記複数のパラメータ群の各々を用いて、前記生成された三次元モデルをレンダリングすることで、前記複数の二次元画像を生成するレンダリング部と、を備えること
を特徴とする情報処理装置。
【請求項２】
前記認識対象の三次元モデルである認識対象モデルを示す認識対象モデルデータを記憶する認識対象モデル記憶部をさらに備え、
前記認識対象選択部は、前記認識対象モデルデータで示される前記認識対象モデルと前記三次元情報とを比較することで、前記認識対象を選択すること
を特徴する請求項１に記載の情報処理装置。
【請求項３】
前記複数の画像の各々における照明環境を推定する照明環境推定部と、
前記複数の画像の各々から、前記推定された照明環境による影響を除去する照明除去部と、をさらに備え、
前記テクスチャ選択部は、前記影響の除去された前記複数の画像から前記テクスチャとして用いられる画像を選択すること
を特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記複数の二次元画像の各々を前景画像として背景画像に合成することで、複数の学習画像データを生成する画像合成部をさらに備えること
を特徴とする請求項１から３の何れか一項に記載の情報処理装置。
【請求項５】
前記レンダリングパラメータ設定部は、前記特定された位置を示す配置情報を生成し、
前記複数の二次元画像の各々を前景画像として、前記背景画像において、前記配置情報で示される位置に合成することで、複数の学習画像データを生成する画像合成部をさらに備えること
を特徴とする請求項１から４の何れか一項に記載の情報処理装置。
【請求項６】
コンピュータを、
複数の画像の各々に含まれる複数の点の三次元における位置を示す位置情報から、前記複数の画像の各々に含まれている複数の平面を示す平面情報を生成する画像処理部、
前記位置情報及び前記平面情報の少なくとも何れか一方から、認識対象を選択する認識対象選択部、
前記位置情報から、前記認識対象のポリゴンモデルを生成するポリゴンモデル生成部、
前記複数の画像から、前記ポリゴンモデルのテクスチャとして用いられる画像を選択するテクスチャ選択部、
背景画像及び前記背景画像に含まれる複数の点の三次元における位置を示す背景位置情報を含む背景三次元情報を記憶する背景三次元情報記憶部、及び、
前記ポリゴンモデルと、前記選択された画像とを組み合わせることで、前記認識対象の三次元モデルを生成し、前記生成された三次元モデルから異なる複数の二次元画像を生成する画像生成部、として機能させ、
前記画像生成部は、
前記生成された三次元モデルをレンダリングするために、前記背景位置情報から、前記生成された三次元モデルを前記背景画像に配置することのできる位置、傾き及びサイズを特定し、特定された位置、傾き及びサイズでレンダリングするように、複数のパラメータ群を設定するレンダリングパラメータ設定部と、
前記複数のパラメータ群の各々を用いて、前記生成された三次元モデルをレンダリングすることで、前記複数の二次元画像を生成するレンダリング部と、を備えること
を特徴とするプログラム。
【請求項７】
複数の画像、及び、前記複数の画像の各々に含まれる複数の点の三次元における位置を示す位置情報を含む三次元情報を取得し、
前記位置情報から、前記複数の画像の各々に含まれている複数の平面を示す平面情報を生成し、
前記位置情報及び前記平面情報の少なくとも何れか一方から、認識対象を選択し、
前記位置情報から、前記認識対象のポリゴンモデルを生成し、
前記複数の画像から、前記ポリゴンモデルのテクスチャとして用いられる画像を選択し、
前記ポリゴンモデルと、前記選択された画像とを組み合わせることで、前記認識対象の三次元モデルを生成し、前記生成された三次元モデルから異なる複数の二次元画像を生成する情報処理方法であって、
前記生成された三次元モデルをレンダリングするために、背景画像及び前記背景画像に含まれる複数の点の三次元における位置を示す背景位置情報から、前記生成された三次元モデルを前記背景画像に配置することのできる位置、傾き及びサイズを特定し、特定された位置、傾き及びサイズでレンダリングするように、複数のパラメータ群を設定し、
前記複数のパラメータ群の各々を用いて、前記生成された三次元モデルをレンダリングすることで、前記複数の二次元画像を生成すること
を特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、プログラム及び情報処理方法に関する。
【背景技術】
【０００２】
対象を認識するために、大量の画像を学習する技術が開発されている。
このような技術では、大量の画像が必要とされるが、人又は車等のように一般化された対象の画像であれば、オープンソースを使って大量の画像を用意することができる。
しかしながら、特定の車、特定の設備又は特定の製品の画像を大量に収集するのは困難である。そこで、非特許文献１には、特定の対象の画像を大量に用意するため、対象の三次元モデルを複数の位置及び角度からレンダリングした前景画像を作成した後、予め用意された複数の背景画像に貼り合わせて画像を大量に作成する方法が提案されている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Ｍａｎｉｋ  Ｇｏｙａｌ，  Ｐａｒａｍ  Ｒａｊｐｕｒａ，  Ｈｒｉｓｔｏ  Ｂｏｊｉｎｏｖ，  ａｎｄ  Ｒａｖｉ  Ｈｅｇｄｅ，“Ｄａｔａｓｅｔ  Ａｕｇｍｅｎｔａｔｉｏｎ  ｗｉｔｈ  Ｓｙｎｔｈｅｔｉｃ  Ｉｍａｇｅｓ  Ｉｍｐｒｏｖｅｓ  Ｓｅｍａｎｔｉｃ  Ｓｅｇｍｅｎｔａｔｉｏｎ”，ａｒＸｉｖ：１７０９．００８４９ｖ３，Ｊｕｎｅ  ２６，  ２０１８
【発明の概要】
【発明が解決しようとする課題】
【０００４】
非特許文献１に記載された技術は、以下に記載された２つの理由で、生成された画像が実際にカメラで観測される画像に類似していなかった。その結果、これらの画像を学習させた際の認識精度に課題があった。【０００５】
第１の理由は、三次元モデルに設定されているテクスチャが、実際に観測されるものと異なっているという三次元モデルの品質の問題である。【０００６】
第２の理由は、三次元モデルをレンダリングするための視点及び角度が適切に設定されていないため、現実には観測し得ない画像が作成されるという問題である。例えば、椅子が反転した状態で宙に浮いている等、現実には観測し得ない画像が大量に作成される。【０００７】
そこで、本発明の１又は複数の実施の形態は、実際に撮影される画像に類似した画像を大量に生成できるようにすることを目的とする。
【課題を解決するための手段】
【０００８】
本発明の１態様に係る情報処理装置は、複数の画像、及び、前記複数の画像の各々に含まれる複数の点の三次元における位置を示す位置情報を含む三次元情報を取得する三次元情報取得部と、前記位置情報から、前記複数の画像の各々に含まれている複数の平面を示す平面情報を生成する画像処理部と、前記位置情報及び前記平面情報の少なくとも何れか一方から、認識対象を選択する認識対象選択部と、前記位置情報から、前記認識対象のポリゴンモデルを生成するポリゴンモデル生成部と、前記複数の画像から、前記ポリゴンモデルのテクスチャとして用いられる画像を選択するテクスチャ選択部と、背景画像及び前記背景画像に含まれる複数の点の三次元における位置を示す背景位置情報を含む背景三次元情報を記憶する背景三次元情報記憶部と、前記ポリゴンモデルと、前記選択された画像とを組み合わせることで、前記認識対象の三次元モデルを生成し、前記生成された三次元モデルから異なる複数の二次元画像を生成する画像生成部と、を備え、前記画像生成部は、前記生成された三次元モデルをレンダリングするために、前記背景位置情報から、前記生成された三次元モデルを前記背景画像に配置することのできる位置、傾き及びサイズを特定し、特定された位置、傾き及びサイズでレンダリングするように、複数のパラメータ群を設定するレンダリングパラメータ設定部と、前記複数のパラメータ群の各々を用いて、前記生成された三次元モデルをレンダリングすることで、前記複数の二次元画像を生成するレンダリング部と、を備えることを特徴とする。
【０００９】
本発明の１態様に係るプログラムは、コンピュータを、複数の画像の各々に含まれる複数の点の三次元における位置を示す位置情報から、前記複数の画像の各々に含まれている複数の平面を示す平面情報を生成する画像処理部、前記位置情報及び前記平面情報の少なくとも何れか一方から、認識対象を選択する認識対象選択部、前記位置情報から、前記認識対象のポリゴンモデルを生成するポリゴンモデル生成部、前記複数の画像から、前記ポリゴンモデルのテクスチャとして用いられる画像を選択するテクスチャ選択部、背景画像及び前記背景画像に含まれる複数の点の三次元における位置を示す背景位置情報を含む背景三次元情報を記憶する背景三次元情報記憶部、及び、前記ポリゴンモデルと、前記選択された画像とを組み合わせることで、前記認識対象の三次元モデルを生成し、前記生成された三次元モデルから異なる複数の二次元画像を生成する画像生成部、として機能させ、前記画像生成部は、前記生成された三次元モデルをレンダリングするために、前記背景位置情報から、前記生成された三次元モデルを前記背景画像に配置することのできる位置、傾き及びサイズを特定し、特定された位置、傾き及びサイズでレンダリングするように、複数のパラメータ群を設定するレンダリングパラメータ設定部と、前記複数のパラメータ群の各々を用いて、前記生成された三次元モデルをレンダリングすることで、前記複数の二次元画像を生成するレンダリング部と、を備えることを特徴とする。
【００１０】
本発明の１態様に係る情報処理方法は、複数の画像、及び、前記複数の画像の各々に含まれる複数の点の三次元における位置を示す位置情報を含む三次元情報を取得し、前記位置情報から、前記複数の画像の各々に含まれている複数の平面を示す平面情報を生成し、前記位置情報及び前記平面情報の少なくとも何れか一方から、認識対象を選択し、前記位置情報から、前記認識対象のポリゴンモデルを生成し、前記複数の画像から、前記ポリゴンモデルのテクスチャとして用いられる画像を選択し、前記ポリゴンモデルと、前記選択された画像とを組み合わせることで、前記認識対象の三次元モデルを生成し、前記生成された三次元モデルから異なる複数の二次元画像を生成する情報処理方法であって、前記生成された三次元モデルをレンダリングするために、背景画像及び前記背景画像に含まれる複数の点の三次元における位置を示す背景位置情報から、前記生成された三次元モデルを前記背景画像に配置することのできる位置、傾き及びサイズを特定し、特定された位置、傾き及びサイズでレンダリングするように、複数のパラメータ群を設定し、前記複数のパラメータ群の各々を用いて、前記生成された三次元モデルをレンダリングすることで、前記複数の二次元画像を生成することを特徴とする。
【発明の効果】
【００１１】
本発明の１又は複数の態様によれば、実際に撮影される画像に類似した画像を大量に生成することができる。
【図面の簡単な説明】
【００１２】
【図１】実施の形態１及び２に係る情報処理装置の構成を概略的に示すブロック図である。
【図２】座標系を説明するための概略図である。
【図３】実施の形態１及び３における前景画像生成部の構成を概略的に示すブロック図である。
【図４】変形例に係る情報処理装置の構成を概略的に示すブロック図である。
【図５】情報処理装置のハードウェア構成例を示すブロック図である。
【図６】実施の形態１に係る情報処理装置の動作を示すフローチャートである。
【図７】実施の形態１において、三次元モデル情報を生成する動作を示すフローチャートである。
【図８】実施の形態１において、三次元モデル情報から前景画像を生成する動作を示すフローチャートである。
【図９】実施の形態２における前景画像生成部の構成を概略的に示すブロック図である。
【図１０】実施の形態２において、三次元モデル情報を生成する動作を示すフローチャートである。
【図１１】実施の形態３に係る情報処理装置の構成を概略的に示すブロック図である。
【発明を実施するための形態】
【００１３】
実施の形態１．
図１は、実施の形態１に係る情報処理装置１００の構成を概略的に示すブロック図である。
情報処理装置１００は、三次元情報取得部１１０と、前景画像生成部１２０と、三次元モデルデータベース（以下、三次元モデルＤＢという）１３０と、背景画像データベース（以下、背景画像ＤＢという）１４０と、画像合成部１５０と、学習画像データベース（以下、学習画像ＤＢという）１６０とを備える。
【００１４】
三次元情報取得部１１０は、複数の画像、及び、その複数の画像の各々に含まれる複数の点の三次元における位置を示す位置情報を含む三次元情報を取得する。例えば、三次元情報取得部１１０は、ＳＬＡＭ（Ｓｉｍｕｌｔａｎｅｏｕ  Ｌｏｃａｌｉｚａｔｉｏｎ  Ａｎｄ  Ｍａｐｐｉｎｇ）等を用いて、三次元情報を取得する。
本実施の形態では、三次元情報は、例えば、複数の視点及び角度から撮影された複数の画像と、その複数の画像の各々に含まれる複数の点の三次元における位置を示す位置情報である三次元点群情報とを含む。さらに、三次元情報は、その複数の画像と、その複数の画像を撮像した位置及び角度を示すセンサ情報とを含んでいてもよい。なお、位置情報で示される複数の点の三次元における位置を三次元点群ともいう。
【００１５】
ここでは、三次元情報取得部１１０が、ＲＧＢ−Ｄ（Ｒｅｄ  Ｇｒｅｅｎ  Ｂｌｕｅ  −  Ｄｅｐｔｈ）カメラで実現される例を説明する。
ある視点で撮影された画像ｆ（ｆ＝１，２，・・・，Ｆ）を撮影したときに得られる点ｌ(ｌ＝１，２，・・・，Ｌｆ)の位置をｑｆｌとすると、ｑｆｌは、下記の（１）式で得られる。
【数１】
0006541920.tif 000002
Ｆは、ＳＬＡＭ処理中に撮影された画像の枚数であり、１以上の整数である。
Ｌｆは、各画像内で距離が得られたピクセルの数であり、１以上の整数である。
Ｋは、ＲＧＢ−Ｄカメラの内部パラメータであり、焦点又はレンズ中心等を示すパラメータである。
ｑ’ｌは、距離が得られている画像のピクセルの座標である。例えば、ｑ’ｌは、下記の（２）式で示されているように、画像の左上を原点としたときの横方向のピクセル数ｕｌと、縦方向のピクセル数ｖｌとの座標で示される。
【数２】
0006541920.tif 000003
ｄｆｌは、撮影位置から、画像ｆの点ｌに対応する対象までの距離である。ｄｆｌは、ＲＧＢ−ＤカメラのＤｅｐｔｈ  ｃｈａｎｎｅｌから得られる。
【００１６】
点ｑｆｌは、カメラの位置を原点、光軸方向をｚ軸、横方向がｘ軸、縦方向がｙ軸とする図２に示されているような座標系で表現される。
ここで、点ｑｆｌは、画像（視点）毎に異なる座標系で示される。各画像を撮影したときの点群を統合して大規模な点群を作成するには、統一の座標系で点群を表現する必要がある。一般的には、初回に撮影した画像（ｆ＝１）の座標系で、他画像を撮影したときに得た点群を表現する。
【００１７】
初回に撮影した画像の座標系に変換する代表的な方法のフローは、以下のとおりである。
まず、初回の画像と、その他の画像とから局所特徴量を抽出する。
次に、２つの画像から抽出された局所特徴量をマッチングする。
次に、マッチングした局所特徴量ペアを使って、２つの画像の関係（平行移動量及び回転量）を求める。
【００１８】
上記の方法は、代表的な方法である。これ以外にも、時間的に隣接する画像関係を積算して初回画像との位置関係を求める方法等がある。
このような方法で求めた初回画像と、他の画像ｆとの関係(移動量)をＴ１→ｆとし、初回画像を撮影したときの座標系で各点を表現すると、下記の（３）式となる。
【数３】
0006541920.tif 000004
そして、最終的に得られる三次元点群は点ｒｆｌの集合となる。
【００１９】
そして、三次元情報取得部１１０は、以上のようにして検出された三次元点群を示す三次元点群情報と、ＲＧＢ−Ｄカメラの画像センサの位置及び角度を示すセンサ情報と、ＲＧＢ−Ｄカメラで撮像された画像とを含む三次元情報を生成する。三次元情報取得部１１０は、生成された三次元情報を前景画像生成部１２０に与える。
【００２０】
なお、画像センサの位置及び角度は、各画像を撮影したときの位置及び角度である。画像の撮影位置をｐｎ、角度をｒｎとする。画像のインデックスはｎ＝１，２，・・・，Ｎであり、撮像された画像枚数をＮ（２以上の整数）とする。角度ｒｎの表現は、オイラー角、Ｑｕａｔｅｒｎｉｏｎ又はＥｕｌｅｒ−Ｒｏｄｒｉｇｕｅｓの形式等、三次元的な回転角度が定まればどのような形式でも構わない。
【００２１】
前景画像生成部１２０は、三次元情報取得部１１０で取得された三次元情報から、認識対象を示す複数の前景画像を生成して、その複数の前景画像を示す前景画像情報を生成する。
図３は、前景画像生成部１２０の構成を概略的に示すブロック図である。
前景画像生成部１２０は、画像処理部１２１と、認識対象選択部１２２と、ポリゴンモデル生成部１２３と、テクスチャ選択部１２４と、画像生成部１２５とを備える。
画像生成部１２５は、レンダリングパラメータ設定部１２６と、レンダリング部１２７とを備える。
【００２２】
画像処理部１２１は、三次元情報に含まれている位置情報から、複数の平面を示す平面情報を生成する。平面情報は、対象の表面に対応する平面を示すものである。
【００２３】
平面を検出する代表的な方法としては、ＲＡＮＳＡＣ（ＲＡＮｄｏｍ  Ｓａｍｐｌｅ  Ｃｏｎｓｅｎｓｕｓ）がある。ＲＡＮＳＡＣを使って平面を検出する方法は、以下のとおりである。
まず、三次元点群の中から数点が選択されて、平面が作成される。
次に、平面上の点が一定数あれば、作成された平面が採用され、平面上の点が一定数なければ、作成された平面は棄却される。
次に、上記の処理を繰り返して、複数の平面が検出される。
【００２４】
認識対象選択部１２２は、三次元情報から、認識対象を選択する。
三次元情報に含まれている位置情報又は平面情報には、認識対象以外の対象が含まれている可能性がある。例えば、床上に認識対象の物体を置いて、その物体を撮影する場合、床の三次元情報も同時に取得される。認識対象以外の対象を排除するため、認識対象選択部１２２は、位置情報又は平面情報から選択する。
【００２５】
例えば、認識対象選択部１２２は、三次元点群情報で示されている三次元点群を、図示されていない表示部に表示して、図示されていない入力部を介して、オペレータから認識対象の選択を受け付ける。
また、認識対象選択部１２２は、平面情報で示される複数の平面を、図示されていない表示部に表示して、図示されていない入力部を介して、オペレータから認識対象に対応する平面の選択を受け付けることで、認識対象の選択を受け付けてもよい。
さらに、認識対象選択部１２２は、三次元点群情報及び平面情報の両方から、認識対象の選択を受け付けてもよい。
【００２６】
または、認識対象選択部１２２は、予め用意された、認識対象の三次元モデルである認識対象モデルと、検出された三次元点群とを比較することで、言い換えると、これらのマッチングを行うことで、認識対象を選択してもよい。ここでの認識対象モデルは、例えば、ＣＡＤ（Ｃｏｍｐｕｔｅｒ−Ａｉｄｅｄ  ｄｅｓｉｇｎ）で生成することができる。ここで、認識対象モデルは、実際の対象のテクスチャも反映した三次元モデルではなく、対象の形状の情報のみ、又は、形状の情報にペイント等でテクスチャをラフに加えたモデルとする。
この場合、図４に示されている情報処理装置１００＃のように、認識対象モデルを示す認識対象モデルデータを記憶する認識対象モデル記憶部である認識対象モデルＤＢ１７０がさらに設けられる。
【００２７】
なお、認識対象をこの時点で選択する理由は、後段の処理であるポリゴンの作成範囲を限定するためである。任意の三次元情報に対するポリゴンの作成は難しい問題である。代表的な方法の一つであるＰｏｉｓｓｏｎ法は、対象が滑らかである事前情報を元にポリゴンを作成する方法である。対象が滑らかでない場合、例えば、角が多い物体に対しては精度が悪化する。また、もう一つの代表的な方法であるＤｅｌａｕｎａｒｙ  Ｔｒｉａｎｇｕｌａｔｉｏｎは、Ｐｏｉｓｓｏｎ法のように事前情報を用いない方法であるが、三次元点群に含まれるノイズの影響を受けたポリゴンが生成される問題がある。
このように、ノイズが載ったデータからのポリゴンモデルへの変換は、任意の対象に対しては難しく、事前情報を適切に活用するのが現実的である。一部の平面と三次元点群とのみを用いて、後段の処理をすることで、整ったポリゴンモデルが生成できる。
【００２８】
ポリゴンモデル生成部１２３は、認識対象選択部１２２で選択された認識対象のポリゴンモデルを生成し、生成されたポリゴンモデルを示すポリゴン情報を生成する。具体的には、ポリゴンモデル生成部１２３は、三次元情報に含まれている三次元点群情報及び平面情報を用いて、認識対象のポリゴンモデルを生成すればよい。ポリゴンモデルの生成方法の一例としては、上述のように、Ｐｏｉｓｓｏｎ法又はＤｅｌａｕｎａｒｙ  Ｔｒｉａｎｇｕｌａｔｉｏｎがある。
【００２９】
なお、本実施の形態では、ポリゴンモデル生成部１２３は、三次元点群情報及び平面情報を用いてポリゴンモデルを生成しているが、これらの何れか一方のみが含まれていても、その一方から他方を生成することができるため、ポリゴンモデル生成部１２３は、その一方から、ポリゴンモデルを生成することができる。
【００３０】
テクスチャ選択部１２４は、ポリゴンモデル生成部１２３で生成されたポリゴンモデルに対応するテクスチャを選択する。テクスチャは、三次元情報取得部１１０で取得された複数の画像から選択される。
【００３１】
複数の画像の中からテクスチャとして用いる画像を選択する方法の例は、以下のとおりである。
例えば、テクスチャ選択部１２４は、画像センサとポリゴンモデルとの間の距離が最も短い画像を選択するため、下記の（４）式を満たす画像ｎを選択する。
【数４】
0006541920.tif 000005
ｐｎは、画像ｎを撮影したときの位置を示す。ｑ１、ｑ２、ｑ３は、ポリゴンモデルに含まれる３点を示す。ｆ（ｐｎ，ｑ１，ｑ２，ｑ３）は、ポリゴンモデルと、位置ｐｎとの距離を示す。
【００３２】
また、テクスチャ選択部１２４は、画像センサが向いている方向と、ポリゴンの法線との角度が最も小さい画像を選択するため、下記の（５）式を満たす画像ｎを選択してもよい。
【数５】
0006541920.tif 000006
ｖｎは、画像ｎを撮影したときの画像センサの角度ｒｎから求められた、画像センサが向いている方向を示すベクトルである。ｍはポリゴンモデルの法線ベクトルを示す。ｇ（ｖｎ，ｍ）は、下記の（６）式で定義される。
【数６】
0006541920.tif 000007
【００３３】
なお、テクスチャ選択部１２４は、（４）式を満たす画像ｎ、及び、（５）式を満たす画像ｎの何れを選択してもよく、また、（４）式を満たす画像ｎ、及び、（５）式を満たす画像ｎの何れかを満たす画像を選択してもよい。
【００３４】
テクスチャ選択部１２４は、テクスチャを選択した後、テクスチャの座標であるテクスチャ座標を特定する。
テクスチャ座標は、ポリゴンモデルの３点を、テクスチャとして選択された画像にプロジェクションすることで得られる。プロジェクションは、下記の（７）式で定義される。
【数７】
0006541920.tif 000008
ｑは、ポリゴンモデルの内の１点を示す。［ｒ｜ｐ］は、テクスチャとして選択された画像を撮影したときの画像センサの位置及び角度を行列化したものである。Ｋは、ＲＧＢ−Ｄカメラの内部パラメータを示す。ｑ’は、点ｑを、テクスチャとして選択された画像上にプロジェクションした位置を示す。λは、スケールのパラメータであり、ｑ’＝（ｘ，ｙ，１）Ｔの形式に調整するためのものである。（ｘ，ｙ）は、テクスチャとして選択された画像のピクセル座標である。ＲＧＢ−Ｄカメラのレンズが歪んでいる場合、ピクセル座標には歪みを除去する処理が行われ、最終的な座標が求められる。
【００３５】
ピクセル画像からテクスチャ座標（ｕ，ｖ）に変換する方法は、下記の（８）式のとおりである。
【数８】
0006541920.tif 000009
ｗは、テクスチャとして選択された画像の横幅であり、ｈは、その画像の縦幅である。
【００３６】
ポリゴンモデル生成部１２３で生成されたポリゴンモデル情報、並びに、テクスチャ選択部１２４で選択された画像及びテクスチャ座標は、三次元モデル情報として、三次元モデルＤＢ１３０に記憶される。なお、三次元モデル情報は、三次元モデルＤＢ１３０に記憶されずに、後段の、レンダリングパラメータ設定部１２６及びレンダリング部１２７に渡されて、これらでの処理が行われてもよい。
【００３７】
画像生成部１２５は、ポリゴンモデル生成部１２３で生成されたポリゴンモデルと、テクスチャ選択部１２４でテクスチャとして選択された画像とを組み合わせることで、認識対象の三次元モデルを生成し、その三次元モデルから異なる複数の二次元画像を生成する。
【００３８】
レンダリングパラメータ設定部１２６は、三次元モデル情報を用いてレンダリングを行う際に用いられる複数のパラメータを含むパラメータ群を設定する。例えば、レンダリングパラメータ設定部１２６は、光源の位置及び強さ、ポリゴンモデルの反射強度、並びに、レンダリングするときの視点の位置及び傾き等を示すパラメータ群を設定する。ここでは、レンダリングパラメータ設定部１２６は、少なくとも１つのパラメータが異なるように複数のパラメータ群を設定する。
レンダリングパラメータの設定は、表示部及び入力部を介して、ユーザが手動で行ってもよく、レンダリングパラメータ設定部１２６が自動的に行ってもよい。レンダリングパラメータ設定部１２６が自動的にレンダリングパラメータを設定する場合には、例えば、予め複数のパラメータが準備されており、準備された複数のパラメータを組み合わせることで、レンダリングパラメータが設定されればよい。
【００３９】
レンダリングパラメータ設定部１２６は、設定された複数のパラメータ群を示すパラメータ情報をレンダリング部１２７に与える。
【００４０】
レンダリング部１２７は、パラメータ情報で示されている複数のパラメータ群の各々を用いて、三次元モデル情報で示される認識対象の三次元モデルのレンダリングを行うことで、認識対象の三次元モデルに対応する複数の二次元画像を生成する。ここで、認識対象の三次元モデルは、ポリゴンモデル生成部１２３で生成されたポリゴンモデルと、テクスチャ選択部１２４でテクスチャとして選択された画像とを組み合わせることで生成される。レンダリング部１２７は、レンダリングにより生成された複数の二次元画像を複数の前景画像とし、複数の前景画像の各々を示す画像データを、前景画像データとして、複数の前景画像データを画像合成部１５０に与える。
【００４１】
図１に戻り、三次元モデルＤＢ１３０は、ポリゴンモデル生成部１２３で生成されたポリゴンモデル情報、テクスチャ選択部１２４で選択された画像及びテクスチャ座標を含む三次元モデル情報を記憶する。
【００４２】
背景画像ＤＢ１４０は、背景画像の画像データである背景画像データを記憶する。
画像合成部１５０は、前景画像生成部１２０から与えられた前景画像データで示される前景画像を、背景画像ＤＢ１４０に記憶されている背景画像データで示される背景画像に合成することで、合成された画像を学習画像とし、その学習画像を示す学習画像データを生成する。
学習画像ＤＢ１６０は、画像合成部１５０で生成された学習画像データを記憶する。
【００４３】
図５は、情報処理装置１００のハードウェア構成例を示すブロック図である。
情報処理装置１００は、計算機１と、出力機器２と、入力機器３と、センサ４とを備える。
計算機１は、例えば、メモリと、メモリに格納されているプログラムを実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等のプロセッサとにより構成することができるコンピュータである。このようなプログラムは、ネットワークを通じて提供されてもよく、また、記録媒体に記録されて提供されてもよい。即ち、このようなプログラムは、例えば、プログラムプロダクトとして提供されてもよい。
【００４４】
また、計算機１の一部は、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔｓ）又はＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）等の処理回路で構成することもできる。
【００４５】
ここで、図１に示されている、前景画像生成部１２０、三次元モデルＤＢ１３０、背景画像ＤＢ１４０、画像合成部１５０、及び、学習画像ＤＢ１６０は、計算機１により実現することができる。
【００４６】
出力機器２は、ディスプレイ等のように、各種画面画像を表示する出力部として機能する装置である。
入力機器３は、マウス、キーボード、タッチパネル等の入力部として機能する装置である。
【００４７】
センサ４は、三次元情報を取得する三次元情報取得部１１０として機能する装置である。
実施の形態１では、センサ４は、ＲＧＢ−Ｄカメラにより実現されている。なお、センサ４は、ＩＭＵ（Ｉｎｅｒｔｉａｌ  Ｍｅａｓｕｒｅｍｅｎｔ  Ｕｎｉｔ）、又は、赤外線、ＬｉＤＡＲ（Ｌｉｇｈｔ  Ｄｅｔｅｃｔｉｏｎ  ａｎｄ  Ｒａｎｇｉｎｇ）、若しくは、超音波を用いて距離を取得することのできるセンサと、２次元の画像を撮像することのできるカメラとの組み合わせにより実現することもできる。
【００４８】
図６は、情報処理装置１００の動作を示すフローチャートである。
情報処理装置１００は、背景画像ＤＢ１４０に記憶されている背景画像データで示される背景画像の数だけ、以下の処理を繰り返す（Ｓ１０）。
【００４９】
三次元情報取得部１１０は、三次元情報を取得する（Ｓ１１）。
前景画像生成部１２０は、三次元情報取得部１１０が取得した三次元情報に基づいて、複数の前景画像を生成する（Ｓ１２）。
【００５０】
画像合成部１５０は、前景画像生成部１２０が生成した複数の前景画像の数だけ、以下の処理を繰り返す（Ｓ１３）。
画像合成部１５０は、背景画像ＤＢ１４０に記憶されている背景画像データで示される背景画像に、前景画像生成部１２０で生成された前景画像データで示される前景画像を合成することで、学習画像を生成する（Ｓ１４）。このようにして生成された学習画像を示す学習画像データは、学習画像ＤＢ１６０に蓄積される。
【００５１】
図７及び図８は、図６のステップＳ１２における前景画像を生成する動作を示すフローチャートである。
図７は、三次元モデル情報を生成する動作を示し、図８は、三次元モデル情報から前景画像を生成する動作を示す。
【００５２】
まず、図７に示されているフローチャートについて説明する。
画像処理部１２１は、三次元情報取得部１１０が取得した三次元情報から、平面を生成する（Ｓ２０）。
【００５３】
認識対象選択部１２２は、三次元情報取得部１１０が取得した三次元情報から、認識対象を選択する（Ｓ２１）。
次に、ポリゴンモデル生成部１２３は、画像処理部１２１で生成された平面、及び、認識対象選択部１２２で選択された三次元点群を用いて、ポリゴンモデルを生成する（Ｓ２１）。
【００５４】
次に、テクスチャ選択部１２４は、ポリゴンモデル生成部１２３で生成されたポリゴンモデルに対応するテクスチャとして使用する画像を選択し、選択された画像におけるテクスチャの座標であるテクスチャ座標を特定する（Ｓ２２）。
次に、テクスチャ選択部１２４は、ポリゴンモデル生成部１２３で生成されたポリゴンモデル情報、並びに、テクスチャ選択部１２４で選択された画像及びテクスチャ座標を、三次元モデル情報として、三次元モデルＤＢ１３０に記憶させる（Ｓ２３）。
【００５５】
次に、図８に示されているフローチャートについて説明する。
レンダリング部１２７は、三次元モデルＤＢ１３０から三次元モデル情報を読み込む（Ｓ３０）。
次に、レンダリング部１２７は、レンダリングパラメータ設定部１２６が設定したパラメータの組み合わせの数だけ、以下のステップＳ３２及びＳ３３の処理を繰り返す（Ｓ３１）。
【００５６】
ステップＳ３２では、レンダリング部１２７は、レンダリングパラメータ設定部１２６が設定したパラメータの１つの組み合わせを設定する。
ステップＳ３３では、レンダリング部１２７は、設定されたパラメータの組み合わせを用いて、三次元モデル情報で示される認識対象の三次元モデルに対応する画像のレンダリングを行う。
【００５７】
実施の形態１によれば、一般的な環境で取得された三次元情報を使って、学習用のデータを大量に作成できるため、簡単に学習用の画像を大量に生成することができる。
【００５８】
実施の形態２．
図１に示されているように、実施の形態２に係る情報処理装置２００は、三次元情報取得部１１０と、前景画像生成部２２０と、三次元モデルＤＢ１３０と、背景画像ＤＢ１４０と、画像合成部１５０と、学習画像ＤＢ１６０とを備える。
実施の形態２における三次元情報取得部１１０、三次元モデルＤＢ１３０、背景画像ＤＢ１４０、画像合成部１５０及び学習画像ＤＢ１６０は、実施の形態１における三次元情報取得部１１０、三次元モデルＤＢ１３０、背景画像ＤＢ１４０、画像合成部１５０及び学習画像ＤＢ１６０と同様である。
【００５９】
図９は、実施の形態２における前景画像生成部２２０の構成を概略的に示すブロック図である。
前景画像生成部２２０は、画像処理部１２１と、認識対象選択部１２２と、ポリゴンモデル生成部１２３と、テクスチャ選択部１２４と、画像生成部１２５と、照明環境推定部２２８と、照明除去部２２９とを備える。
実施の形態２における画像処理部１２１、認識対象選択部１２２、ポリゴンモデル生成部１２３、テクスチャ選択部１２４及び画像生成部１２５は、実施の形態１における画像処理部１２１、認識対象選択部１２２、ポリゴンモデル生成部１２３、テクスチャ選択部１２４及び画像生成部１２５と同様である。但し、これらは、照明除去部２２９で照明環境の影響が除去された後の画像を用いて処理を行う。
【００６０】
照明環境推定部２２８は、取得された三次元情報に含まれている画像から照明環境を推定する。例えば、照明環境推定部２２８は、取得された三次元情報に含まれる情報を用いて、光源の位置、種類及び強度を推定する。具体的には、照明環境推定部２２８は、三次元情報に含まれている画像に写り込んでいる照明光の分布から、光源の位置、種類及び強度を推定する。そして、照明環境推定部２２８は、推定された、光源の位置、種類及び強度を示す照明情報を生成し、その照明情報を照明除去部２２９に与える。
【００６１】
照明除去部２２９は、取得された三次元情報に含まれている画像から、照明環境推定部２２８で推定された照明環境による影響を除去する。例えば、照明除去部２２９は、照明情報で示される、光源の位置、種類及び強度を参照して、三次元情報に含まれている画像から照明の影響を除去する。具体的には、照明除去部２２９は、画像に含まれる影の除去、鏡面反射の除去等を画像処理で行う。そして、照明除去部２２９は、三次元情報に、照明の影響を除去した後の画像を含めて、認識対象選択部１２２に与える。
【００６２】
図１０は、実施の形態２において三次元モデル情報を生成する動作を示すフローチャートである。
なお、図１０において、図７と同様の処理については、図７と同様の符号を付することにより、詳細な説明を省略する。
【００６３】
まず、照明環境推定部２２８は、取得された三次元情報に含まれる情報を用いて、光源の位置、種類及び強度を推定する（Ｓ４０）。
次に、照明除去部２２９は、照明情報で示される、光源の位置、種類及び強度を参照して、三次元情報に含まれている画像から照明の影響を除去する（Ｓ４１）。そして、処理はステップＳ２０に進む。
【００６４】
ステップＳ２０〜Ｓ２４での処理は、図７に示されているステップＳ２０〜Ｓ２４の処理と同様である。但し、ステップＳ２０〜Ｓ２４での処理では、三次元情報に含まれている画像は、ステップＳ４１で照明の影響が除去された後の画像となっている。
【００６５】
実施の形態２によれば、三次元情報に含まれている画像から、撮像されたときの照明環境の影響を除去することができるため、実施の形態１と比べてより品質の高い三次元モデルを生成することができ、学習用の画像の品質が上がる。
【００６６】
実施の形態３．
図１１は、実施の形態３に係る情報処理装置３００の構成を概略的に示すブロック図である。
情報処理装置３００は、三次元情報取得部１１０と、前景画像生成部３２０と、三次元モデルＤＢ１３０と、画像合成部３５０と、学習画像ＤＢ１６０と、背景三次元情報データベース（以下、背景三次元情報ＤＢという）３８０とを備える。
実施の形態３における、三次元情報取得部１１０、三次元モデルＤＢ１３０及び学習画像ＤＢ１６０は、実施の形態１における、三次元情報取得部１１０、三次元モデルＤＢ１３０及び学習画像ＤＢ１６０と同様である。
【００６７】
背景三次元情報ＤＢ３８０は、背景画像及び背景画像に含まれる複数の点の三次元における位置を示す背景位置情報を含む背景三次元情報を記憶する背景三次元情報記憶部である。本実施の形態では、背景三次元情報は、例えば、複数の視点及び角度から撮影された複数の背景の画像である複数の背景画像と、複数の背景画像の各々に含まれる複数の点の三次元における位置（背景三次元点群）を示す背景位置情報である背景三次元点群情報と、背景の表面に対応する平面である背景平面を示す背景平面情報と、背景画像を撮像した位置及び角度を示す背景センサ情報とを含む。なお、背景三次元情報は、一部の情報が欠損しても構わない。例えば、背景三次元点群情報が欠損しても構わない。
【００６８】
図３に示されているように、実施の形態３における前景画像生成部３２０は、画像処理部１２１と、認識対象選択部１２２と、ポリゴンモデル生成部１２３と、テクスチャ選択部１２４と、画像生成部３２５とを備える。
実施の形態３における、画像処理部１２１、認識対象選択部１２２、ポリゴンモデル生成部１２３及びテクスチャ選択部１２４は、実施の形態１における、画像処理部１２１、認識対象選択部１２２、ポリゴンモデル生成部１２３及びテクスチャ選択部１２４と同様である。
【００６９】
画像生成部３２５は、ポリゴンモデル生成部１２３で生成されたポリゴンモデルと、テクスチャ選択部１２４でテクスチャとして選択された画像とを組み合わせることで、認識対象の三次元モデルを生成し、その三次元モデルから異なる複数の二次元画像を生成する。
【００７０】
レンダリングパラメータ設定部３２６は、背景三次元情報ＤＢ３８０に記憶されている背景三次元情報から、認識対象の三次元モデルを背景画像に配置することのできる位置、傾き及びサイズを特定し、特定された位置、傾き及びサイズでレンダリングするように、複数のパラメータ群を設定する。
【００７１】
例えば、レンダリングパラメータ設定部３２６は、背景三次元情報に含まれる背景画像上に前景画像を合成するときに、違和感がないように、背景三次元情報に含まれる視点の位置及び傾き、背景平面、並びに、背景三次元点群を用いて、レンダリングするときの視点の位置及び傾きを設定する。
具体的には、レンダリングパラメータ設定部３２６は、三次元モデル情報で示される認識対象の三次元モデルと、背景三次元モデル情報で示される背景とにより、認識対象の三次元モデルと背景とのサイズを認識することができる。このため、レンダリングパラメータ設定部３２６は、三次元モデル情報で示される認識対象の三次元モデルの底面よりも小さな背景平面には、その認識対象の三次元モデルを設置できないといった、認識対象の三次元モデルと背景とのＯｃｃｌｕｓｉｏｎ又は相対的な関係といった関係性を明確に定義することができる。
【００７２】
以上のような関係性を考慮して、レンダリングパラメータ設定部３２６は、三次元モデル情報で示される認識対象の三次元モデルと、背景三次元情報で示される背景との間の奥行き又はサイズに違和感がないように、複数のパラメータ群を設定する。
例えば、レンダリングパラメータ設定部３２６は、背景三次元情報で示されている背景画像又は背景三次元点群の少なくとも何れか一方を、図示されていない表示部に表示して、図示されていない入力部を介して、オペレータから複数のパラメータ群の入力を受け付ければよい。そして、レンダリングパラメータ設定部３２６は、入力されたパラメータ群を設定すればよい。
【００７３】
さらに、レンダリングパラメータ設定部３２６は、三次元モデル情報で示される認識対象の三次元モデルを示す画像対象識別情報であるＩＤと、その認識対象の三次元モデルに対応する前景画像を配置する背景画像上の位置を示す配置情報を生成する。その配置情報は、パラメータ情報とともに、レンダリング部３２７に与えられる。
【００７４】
レンダリング部３２７は、実施の形態１と同様に、パラメータ情報で示されている複数のパラメータ群の各々を用いて、三次元モデル情報で示される認識対象の三次元モデルをレンダリングすることで、複数の二次元画像を生成する。レンダリング部３２７は、レンダリングにより生成された二次元画像を前景画像とし、その画像データを、前景画像データとして、配置情報とともに、画像合成部３５０に与える。なお、前景画像データには、対応する認識対象の三次元モデルを示すＩＤが含まれているものとする。
【００７５】
図１１に戻り、画像合成部３５０は、前景画像生成部３２０から与えられた前景画像データで示される前景画像を、前景画像生成部３２０から与えられた配置情報で示される位置に配置することで、合成し、合成された画像を学習画像とし、その学習画像を示す学習画像データを生成する。
なお、画像合成部３５０は、前景画像データに含まれているＩＤに対応して、配置情報で示される位置及び傾きで、その前景画像データで示される前景画像を配置すればよい。
【００７６】
以上のように、実施の形態３によれば、背景画像と、前景画像とに含まれる対象の大きさ又は位置等を反映した画像を大量に生成することができる。
【００７７】
なお、以上に記載された実施の形態１〜３では、三次元情報取得部１１０として、ＲＧＢ−Ｄカメラを使用する例を示したが、実施の形態１〜３は、このような例に限定されない。例えば、三次元情報取得部１１０は、ステレオカメラにより実現することができる。ステレオカメラにより三次元情報を取得する場合には、点ｑｆｌを求める際に、左右のカメラの視差からその点ｑｆｌ（距離）が求められる。他の点については、ＲＧＢ−Ｄカメラを用いた場合と同様である。
【００７８】
また、三次元情報取得部１１０は、単眼カメラとＩＭＵ（Ｉｎｅｒｔｉａｌ  Ｍｅａｓｕｒｅｍｅｎｔ  Ｕｎｉｔ）との組み合わせにより実現することもできる。この場合には、単眼カメラにより撮影された視点が異なる二つの画像と、ＩＭＵを使って求められた視点の位置関係とを用いて、点ｑｆｌが求められる。他の点については、ＲＧＢ−Ｄカメラを用いた場合と同様である。
【符号の説明】
【００７９】
１００，２００，３００  情報処理装置、  １１０  三次元情報取得部、  １２０，２２０，３２０  前景画像生成部、  １２１  画像処理部、  １２２  認識対象選択部、  １２３  ポリゴンモデル生成部、  １２４  テクスチャ選択部、  １２５，３２５  画像生成部、  １２６，３２６  レンダリングパラメータ設定部、  １２７，３２７  レンダリング部、  ２２８  照明環境推定部、  ２２９  照明除去部、  １３０  三次元モデルＤＢ、  １４０  背景画像ＤＢ、  １５０，２５０  画像合成部、  １６０  学習画像ＤＢ、  １７０  認証対象モデルＤＢ、  ３８０  背景三次元情報ＤＢ。
【要約】
複数の画像、及び、その複数の画像の各々に含まれる複数の点の三次元における位置を示す位置情報を含む三次元情報を取得する三次元情報取得部（１１０）と、その位置情報から、その複数の画像の各々に含まれている複数の平面を示す平面情報を生成し、その位置情報から、認識対象を選択し、その位置情報から、認識対象のポリゴンモデルを生成し、その複数の画像から、生成されたポリゴンモデルのテクスチャとして用いられる画像を選択し、生成されたポリゴンモデルと、選択された画像とを組み合わせることで、認識対象の三次元モデルを生成し、生成された三次元モデルから異なる複数の二次元画像を生成する前景画像生成部（１２０）と、を備えることを特徴とする。【図１】
0006541920.tif 000010
【図２】
0006541920.tif 000011
【図３】
0006541920.tif 000012
【図４】
0006541920.tif 000013
【図５】
0006541920.tif 000014
【図６】
0006541920.tif 000015
【図７】
0006541920.tif 000016
【図８】
0006541920.tif 000017
【図９】
0006541920.tif 000018
【図１０】
0006541920.tif 000019
【図１１】
0006541920.tif 000020