(57)【特許請求の範囲】
【請求項１】
３次元（３Ｄ）シーンを３次元（３Ｄ）モデルとして再構成する方法であって、
前記シーンから、センサーを用いて、赤、緑、青、及び奥行き（ＲＧＢＤ）画像と、異なる視点からのカメラを用いて、広視野（ＦＯＶ）の赤、緑、及び青（ＲＧＢ）画像とを取得するステップと、
前記ＲＧＢＤ画像及び前記ＲＧＢ画像の中からペアごとの点マッチを特定するステップと、
前記ペアごとの点マッチを用いてノード及びエッジのグラフを構築するステップであって、該ノードは前記ＲＧＢＤ画像及び前記ＲＧＢ画像を表し、該エッジは前記ＲＧＢＤ画像と前記ＲＧＢ画像との間の姿勢制約を表している、ステップと、
前記姿勢制約を用いて、前記ＲＧＢＤ画像及び前記ＲＧＢ画像の初期姿勢を推定するステップと、
前記推定された姿勢を用いて前記シーンの初期３Ｄモデルを推定するステップと、
前記グラフ内の誤ったエッジを除去するステップと、
前記初期姿勢及び前記初期３Ｄモデルに対してバンドル調整を適用して前記シーンの精緻化された姿勢及び前記３Ｄモデルを得るステップと、
を含み、前記ステップはプロセッサにおいて実行される、方法。
【請求項２】
２つの画像間のマッチングを特定することを更に含み、各画像はＲＧＢＤ画像又はＲＧＢ画像とすることができる、請求項１に記載の方法。
【請求項３】
前記ペアごとの点マッチは、高速化ロバスト特徴（ＳＵＲＦ）を用いて求められる、請求項１に記載の方法。
【請求項４】
前記特定するステップは、集合局所記述子ベクトル（ＶＬＡＤ）を用いる、請求項１に記載の方法。
【請求項５】
３点３Ｄｔｏ３Ｄ位置合わせを用いて、２つのＲＧＢＤ画像間の前記初期姿勢を求める、請求項１に記載の方法。
【請求項６】
３点２Ｄｔｏ３Ｄ姿勢推定を用いて、少なくとも１つのＲＧＢ画像と少なくとも１つのＲＧＢＤ画像との間の前記初期姿勢を求める、請求項１に記載の方法。
【請求項７】
５点２Ｄｔｏ２Ｄ相対姿勢推定を用いて、２つのＲＧＢ画像間の前記初期姿勢を求める、請求項１に記載の方法。
【請求項８】
各エッジに重みを割り当てることと、
前記姿勢制約と前記重みに基づく最小全域木とを用いて、前記グラフにおいてノードとして表される前記画像の前記初期姿勢を推定することと、
を更に含む、請求項１に記載の方法。
【請求項９】
前記重みは、１つのエッジによって連結される前記ノードによって表される画像間の前記ペアごとの点マッチの数に基づいている、請求項８に記載の方法。
【請求項１０】
前記誤ったエッジは、異なるエッジを用いて推定される姿勢間の不整合に基づいて除去される、請求項１に記載の方法。
【請求項１１】
前記センサーは赤外線（ＩＲ）センサーである、請求項１に記載の方法。
【請求項１２】
少なくとも１つのＲＧＢ画像は少なくとも２つのＲＧＢＤ画像に重なる、請求項１に記載の方法。
【請求項１３】
各エッジは、前記画像間の十分な数のペアごとの点マッチを表す、請求項１に記載の方法。
【請求項１４】
距離メトリックに基づいて前記精緻化された姿勢から遠い前記姿勢は、前記誤ったエッジの１つである、請求項１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、包括的にはコンピュータービジョン及び画像処理に関し、より詳細には、３Ｄセンサーと全方位カメラ（omnidirectional cameras：全天球カメラ）とによって取得された画像から３Ｄシーンを再構成することに関する。
【背景技術】
【０００２】
赤、緑、及び青（ＲＧＢ）画像及び従来のストラクチャフロムモーション（structure-from-motion：運動からの構造復元）手順を用いて３Ｄシーンを再構成する、多くの３Ｄ再構成法が存在する。一般的に、ＲＧＢ画像ベースの３Ｄ再構成技法は、テクスチャレス（textureless）領域、例えば、壁及び天井に対処するのに困難を有する。テクスチャレス領域を再構成するのに、アクティブセンサーを用いることができる。例えば、Ｍｉｃｒｏｓｏｆｔ  Ｘｂｏｘ（商標）のＫｉｎｅｃｔ（商標）センサーは、３Ｄデータを奥行きマップ（点群）として取得するのに赤外線（ＩＲ）パターンを用いる。また、Ｋｉｎｅｃｔ（商標）センサーは、ＲＧＢ画像を捕捉する２Ｄカメラも備えている。奥行きマップをＲＧＢ画像に位置合わせして、赤、緑、青、及び奥行き（ＲＧＢＤ）画像を生成することができる。
【０００３】
概して、Ｋｉｎｅｃｔ（商標）のような３Ｄセンサーを用いて大きなシーンを再構成することができる。例えば、非特許文献１を参照されたい。
【０００４】
しかしながら、特に、特徴点対応が良好な位置合わせを得るのに十分ではない場合がある、角部及び曲部（turns）を有するシーンにおいては、そのようなセンサーの視野（ＦＯＶ：field of view）によって、場合によっては幾つかの課題（challenges）がもたらされる可能性がある。
【０００５】
幾つかの方法は、非特許文献２におけるように、既に再構成されたＲＧＢ画像ベースのモデルを用いてＲＧＢカメラの姿勢を推定する。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】Izadi他「KinectFusion:Real-time 3D Reconstruction and Interaction Using a Moving Depth Camera」ACM Symposium on User Interface Software and Technology, October 2011
【非特許文献２】Snavely他「Photo Tourism: Exploring Photo Collections in 3D」ACM Transactions on Graphics, 2006
【発明の概要】
【０００７】
本方法の実施の形態は、３Ｄセンサーと全方位カメラとによって取得された画像を用いてシーンを３Ｄモデルとして再構成する方法を提供する。３Ｄセンサーは、Ｋｉｎｅｃｔ（商標）センサーとすることができ、全方位カメラは、広視野（ＦＯＶ）カメラとすることができる。ＲＧＢ画像はカメラによって取得され、ＲＧＢＤ画像は３Ｄセンサーによって取得される。双方のタイプの画像をともに用いて、シーンの３Ｄモデルが構成される。
【０００８】
本発明は、異なるセンサーモダリティが３Ｄ再構成に用いられる場合、特に、広ＦＯＶ  ＲＧＢ画像を用いてＲＧＢＤ画像の位置合わせを解決する場合に、より良好な再構成が可能となるという認識に基づいている。例えば、２つのＲＧＢＤ画像Ａ及びＢをマッチングするのが困難な場合、中間の広ＦＯＶ  ＲＧＢ画像Ｃを用いた位置合わせを得ることができる。このようにして、ＡとＣとの間のマッチング、及び、ＢとＣとの間のマッチングをそれぞれ得て、その後、Ｃを用いて画像ＡとＢとの間の位置合わせを得ることができる。
【０００９】
別の認識は、姿勢グラフ内の副次的な特徴を用いて、異なる画像のペア間の関係をモデル化することに基づいている。姿勢推定及び位置合わせは、画像のそれぞれの姿勢を求め、次に、制約を用いて不正確な関係を特定する。画像間のそのような不正確な関係は、シーンの完全な３Ｄモデルを得るバンドル調整（bundle adjustment）を行う前に特定される。
【図面の簡単な説明】
【００１０】
【図１】３Ｄセンサーと全方位カメラとによって取得された画像を用いてシーンを３Ｄモデルとして再構成する方法のフロー図である。
【図２】本発明の実施形態による、ノードが画像であり、エッジが画像マッチングに基づいた画像間の姿勢制約を表す概略グラフである。
【図３】本発明の実施形態による、画像がノードであり、エッジが誤ったエッジを除去する姿勢制約である、最小全域木（minimal spanning tree）の概略グラフである。
【図４】本発明の実施形態による、狭視野（ＦＯＶ）  ＲＧＢＤ画像と広ＦＯＶ  ＲＧＢ画像とを用いた３Ｄ再構成の概略図である。
【発明を実施するための形態】
【００１１】
図１は、本発明の実施形態による、３次元（３Ｄ）センサーと全方位カメラとによって取得された画像を用いてシーン１００を３Ｄモデルとして再構成する方法を示している。Ｋｉｎｅｃｔ（商標）等の３Ｄセンサーを用いて、シーン１００の狭視野（ＦＯＶ）の赤、緑、青、及び奥行き（ＲＧＢＤ）画像１０１が取得される。全方位カメラは、シーン１００の広ＦＯＶ  ＲＧＢ画像１０２を取得する。
【００１２】
従来の特徴検出器、例えば、高速化ロバスト特徴（ＳＵＲＦ：Speeded Up Robust Features）を用いて、全ての画像からキーポイントを検出し、各画像から記述子を抽出する（１０３）。
【００１３】
次に、画像間特徴マッチングを実行して、十分な数の点マッチを有する画像のペアを特定する（１０４）。また、この画像マッチングは、集合局所記述子ベクトル（ＶＬＡＤ：vector of aggregated local descriptors）等の方法を用いて行うこともできる。
【００１４】
次に、ノードが画像を表し、エッジが画像間の姿勢制約を表すグラフを構築する（１０５）。画像の姿勢を、２Ｄｔｏ３Ｄ姿勢推定、２Ｄｔｏ２Ｄ相対姿勢推定、及び３Ｄｔｏ３Ｄ位置合わせを用いて求める（１０６）。グラフ内のエッジによって表される、姿勢に対する制約を用いて、グラフ内の誤ったエッジを除去する（１０７）。その後、３Ｄモデル１１０を得るためにバンドル調整を実行する（１０８）。
【００１５】
本方法のステップは、当該技術分野において既知であるような、バスによってメモリ及び入出力インターフェースに接続されたプロセッサ５０において実行することができる。本発明は、本質的には、或るシーンの画像をシーンの３Ｄモデルに変換する。
【００１６】
図２は、画像のペア間のマッチングを表すグラフを示している。画像はノード（円形又は正方形）によって表され、各エッジは、画像間の姿勢制約を表している。上記で説明したように、広ＦＯＶ  ＲＧＢ画像２０１及び狭ＦＯＶ  ＲＧＢＤ画像２０２を用いる。２つの画像間の画像マッチングを３つの異なるシナリオ、例えば、以下のシナリオにおいて得る。
１．  エッジ２０３によって連結される２つの画像が、双方とも広ＦＯＶ  ＲＧＢ画像である。
２．  エッジ２０４によって連結される２つの画像が、双方とも狭ＦＯＶ  ＲＧＢＤ画像である。
３．  エッジ２０５によって連結される画像の一方が広ＦＯＶ  ＲＧＢ画像であり、他方の画像が狭ＦＯＶ  ＲＧＢＤ画像である。
【００１７】
２つの画像が最低限の数のキーポイントマッチを共有する場合のみ、この２つの画像がマッチしているとみなす。２つの画像が十分な数の点対応を共有する場合、この２つの画像を連結するエッジによって表される、２つの画像間の姿勢制約が存在する。
【００１８】
図２に示されるように、各広ＦＯＶ  ＲＧＢＤ画像は、幾つかの狭ＦＯＶ  ＲＧＢ画像とマッチングされる。これによって、広ＦＯＶ  ＲＧＢ画像が、多数の狭ＦＯＶ  ＲＧＢ画像を位置合わせする際の仲立ちとして機能することが可能となる。 
【００１９】
図３は、推定された姿勢に基づいて、グラフ内の誤ったエッジを除去する制約の使用を示している。これを行うために、以下のストラテジーを用いる。図３に示されているグラフを検討する。正方形は広ＦＯＶ  ＲＧＢ画像３０１を表しており、円形は狭ＦＯＶ  ＲＧＢＤ画像３０２を表している。図３のグラフ内の各エッジについて、エッジに接続している（incident）２つの画像ノードからのキーポイントマッチの数の否定に等しい重みを割り当てる。これらのエッジの重みに基づいて、最小全域木（minimal spanning tree）を求める。
【００２０】
最小全域木内のエッジを実線３０３によって示し、残りのエッジを破線３０４によって示す。全ての画像の初期姿勢を、最小全域木からの（姿勢制約を表している）エッジを用いて求める。エッジごとに接続する画像の性質に応じて、異なる姿勢推定手順を用いる。例えば、３点３Ｄｔｏ３Ｄ位置合わせ手順を用いて、２つのＲＧＢＤ画像間の相対姿勢を求めることができる。２つのＲＧＢ画像間のマッチングを仮定すると、５点２Ｄｔｏ２Ｄ相対姿勢推定手順を用いて相対姿勢を求めることができる。ＲＧＢ画像とＲＧＢＤ画像との間の相対姿勢は、２Ｄｔｏ３Ｄ姿勢推定手順を用いて得ることができる。このＲＧＢＤモデルとＲＧＢ画像との間の２Ｄｔｏ３Ｄ姿勢推定は、Taguchi他によって出願された米国特許出願第１４／３３０，３５７号においても記載されている。
【００２１】
或るＲＧＢＤ画像又はＲＧＢ画像を最小全域木内のルート（root：根）ノードとして、任意に割り当てる。一般性を失うことなく、ＲＧＢ画像３０１をルートとする。ルートノードの座標系をワールド座標系として固定する。ルートノードから幅優先探索を用いて、エッジに基づいて各画像の姿勢を求める。各エッジを探索する間、一方のノードにおける画像の姿勢は既知であり、他方のノードの姿勢は、エッジに割り当てられる相対姿勢を用いることによって推定される。全ての画像の姿勢を得た後、全域木エッジによって与えられる姿勢制約を用いて、３Ｄモデル１１０を生成するバンドル調整を実行する。バンドル調整は、シーンを記述する３Ｄ座標だけでなく画像の姿勢のパラメーターも同時に精緻化して、画像の精緻化された姿勢を得る。
【００２２】
全域木のエッジではないエッジ（non-spanning tree edge）を漸次的に追加して、ループクロージャ制約を提供し、３Ｄモデルを精緻化する後続のバンドル調整を実行する。この漸次的な追加の間、エッジが、姿勢空間において選択された距離メトリックに基づいて、既に精緻化された姿勢から遠いカメラ姿勢を生成する場合、このエッジを誤ったエッジとして扱い、このエッジはバンドル調整において用いない。
【００２３】
図４は、広ＦＯＶ  ＲＧＢ画像４０２と２つの狭ＦＯＶ  ＲＧＢＤ画像４０３とを用いた屋内シーン４０１の３Ｄ再構成の一例を示している。ＲＧＢ画像４０２を用いて、２つのＲＧＢＤ画像４０３を位置合わせする（４１０）。
【図１】
0006328351.tif 000002
【図２】
0006328351.tif 000003
【図３】
0006328351.tif 000004
【図４】
0006328351.tif 000005