(57)【要約】      （修正有）【課題】任意の自由形状３Ｄ物体の認識、ならびに、強度画像および３Ｄセンサで捕捉されたシーン内のそれらの３Ｄ姿勢の回復を可能とする方法を提供する。【解決手段】この方法は、３Ｄ物体データを提供するとともに物体強度データを取得するステップと、３Ｄシーンデータおよびシーン強度データを提供するステップと、上記強度データからシーンフィーチャポイントを抽出するステップと、上記３Ｄシーンデータから少なくとも１つの基準ポイントを選択するステップと、各選択された基準ポイントについて、上記基準ポイントが３Ｄ物体の一部であるという推定の下で、所与の姿勢候補における３Ｄ物体と一致する抽出シーンフィーチャポイントの数を最大化することによって、３Ｄ物体についての姿勢候補を演算するステップと、上記姿勢候補からフィルタリングされた一組の姿勢を演算するステップとを備える。【選択図】図３
2014081347.tif 000002
【特許請求の範囲】
【請求項１】
３Ｄシーン（scene）データおよびシーン強度データにおける３Ｄ物体の事象を認識するため、および前記事象の３Ｄ姿勢（pose）を決定するための方法であって、
（ａ）３Ｄ物体データを提供するとともに物体強度データを取得するステップと、
（ｂ）３Ｄシーンデータおよびシーン強度データを提供するステップと、
（ｃ）前記強度データからシーンフィーチャポイントを抽出するステップと、
（ｄ）３Ｄシーンデータから少なくとも１つの基準ポイントを選択するステップと、
（ｅ）各選択された基準ポイントについて、前記基準ポイントが３Ｄ物体の一部であるという推定の下で、所与の姿勢候補における前記３Ｄ物体と一致する抽出されたシーンフィーチャポイントの数を最大化することによって、前記３Ｄ物体についての姿勢候補を演算するステップと、
（ｆ）前記姿勢候補からフィルタリングされた一組の姿勢を演算するステップとを備える、方法。
【請求項２】
ステップ（ａ）において、前記物体強度データは、前記３Ｄ物体データからの強度データを合成的に生成することによって取得される、請求項１に記載の方法。
【請求項３】
ステップ（ａ）において、前記物体強度データが与えられる、請求項１に記載の方法。
【請求項４】
ステップ（ａ）は、前記３Ｄ物体データおよび物体強度データからのモデルの演算を含む、請求項１に記載の方法。
【請求項５】
ステップ（ａ）は、
（ａ１）前記３Ｄ物体データからの少なくとも１つのサンプルポイントを選択するステップと、
（ａ２）前記物体強度データから物体フィーチャポイントを抽出するステップと、
（ａ３）選択されたサンプルポイントおよび抽出された物体フィーチャポイントの各ペアについて、２つのポイントとそれらの関係とを記述するポイントペア記述子を演算するステップと、
（ａ４）前記ポイントペア記述子によってインデックスが付けられたポイントペアを記憶するモデルを生成するステップとを含む、請求項４に記載の方法。
【請求項６】
ステップ（ａ４）は、
（ａ４ａ）前記ポイントペア記述子をサンプリングするステップと、
（ａ４ｂ）サンプリングされたポイントペア記述子をポイントペアのリストへマッピングするグローバルモデル記述を生成するステップとを含み、
各リストは、選択されたサンプルポイントと、類似のサンプルポイントペア記述子を有する抽出された物体フィーチャポイントとのすべてのペアを含む、請求項５に記載の方法。
【請求項７】
ステップ（ｄ）において、前記基準ポイントは、前記３Ｄシーンデータからランダムに選択されるか、または、前記３Ｄシーンデータを均一にサンプリングすることによって選択される、請求項１〜６のいずれか１項に記載の方法。
【請求項８】
ステップ（ｅ）において、スコア値が、各姿勢候補について計算される、請求項１〜７のいずれか１項に記載の方法。
【請求項９】
前記姿勢候補は、投票方式を用いて演算される、請求項８に記載の方法。
【請求項１０】
前記投票方式は、
（ｅ１）可能性のある物体姿勢の空間をサンプリングするステップと、
（ｅ２）各姿勢空間サンプルについてカウンタを生成するステップと、
（ｅ３）前記抽出されたシーンフィーチャポイントから少なくとも１つのシーンフィーチャポイントを選択するステップと、
（ｅ４）選択された各シーンフィーチャポイントについて、前記基準ポイントが前記３Ｄ物体の表面上であり、かつ前記シーンフィーチャポイントが前記３Ｄ物体に一致するようなマッチング姿勢を演算するステップと、
（ｅ５）ステップ（ｅ４）において演算された各マッチング姿勢について、対応する姿勢空間サンプルのためのカウンタを増加させるステップと、
（ｅ６）前記サンプリングされた姿勢空間にけるピークカウンタ値を検出するとともに、対応する姿勢空間サンプルを姿勢候補として選択するステップとを含む、請求項９に記載の方法。
【請求項１１】
ステップ（ｅ１）において、前記可能性のある物体姿勢の空間は、２つのパラメータによって表現され、
第１のパラメータは、前記３Ｄ物体上のポイントであり、
第２のパラメータは、角度である、請求項１０に記載の方法。
【請求項１２】
前記３Ｄ物体上のポイントは、前記３Ｄ物体データから選択された一組のポイントへのインデックスとして表現され、
前記角度は、前記角度の組を、等しいサイズの間隔に分割することによってサンプリングされる、請求項１１に記載の方法。
【請求項１３】
ステップ（ａ）において、前記物体強度データから物体フィーチャポイントが抽出される、請求項１０に記載の方法。
【請求項１４】
ステップ（ｅ４）において、前記マッチング姿勢は、前記基準ポイントと前記選択されたシーンフィーチャポイントとのペアに類似した、３Ｄ物体ポイントと物体フィーチャポイントとのペアの探索を可能とするデータ構造を用いて演算される、請求項１３に記載の方法。
【請求項１５】
前記類似ポイントの探索は、
（ｅ４ａ）前記基準ポイント、前記選択されたシーンフィーチャポイント、およびそれらの関係を記述するポイントペア記述子を演算するステップと、
（ｅ４ｂ）前記ポイントペア記述子を、前記データ構造へのインデックスとして使用するステップとを含む、請求項１４に記載の方法。
【請求項１６】
ステップ（ｅ４ｂ）は、
（ｅ４ｃ）前記ポイントペア記述子をサンプリングするステップと、
（ｅ４ｄ）前記サンプリングされたポイントペア記述子を３Ｄ物体ポイントおよび物体フィーチャポイントのリストにマッピングするデータ構造を用いるステップとを含む、請求項１５に記載の方法。
【請求項１７】
ステップ（ｅ４ｄ）において、ハッシュテーブルがデータ構造として用いられる、請求項１６に記載の方法。
【請求項１８】
ステップ（ｆ）の演算は、
（ｆ１）前記姿勢候補間の近接関係を規定するステップと、
（ｆ２）近接する姿勢候補のスコアの荷重和として、各姿勢のスコアを演算するステップと、
（ｆ３）（ｆ２）において演算されたスコアによって前記姿勢をランク付けすることにより、前記一組のフィルタリングされた姿勢を選択するステップとを含む、請求項９〜１７のいずれか１項に記載の方法。
【請求項１９】
前記近接関係は、前記姿勢の並進（translation）と前記姿勢の回転との差のしきい値化、または、両姿勢の下で前記３Ｄ物体上のポイントが有し得る最大距離のしきい値化によって規定される、請求項１８に記載の方法。
【請求項２０】
（ｆ３）において選択された姿勢が、前記近接する姿勢にわたる平均姿勢として再演算されるステップをさらに備える、請求項１８に記載の方法。
【請求項２１】
前記姿勢の下での、前記３Ｄシーンと前記３Ｄ物体との間の距離に基づく誤差関数を最適化することによって、前記一組のフィルタリングされた姿勢の各姿勢を改善（refine）するステップをさらに備える、請求項１〜２０のいずれか１項に記載の方法。
【請求項２２】
前記姿勢の下での、前記シーン強度データと前記モデル強度データとの間の一致性に基づく誤差関数を最適化することによって、前記一組のフィルタリングされた姿勢の各姿勢を改善するステップをさらに備える、請求項１〜２０のいずれか１項に記載の方法。
【請求項２３】
前記姿勢の下での、前記３Ｄシーンと前記３Ｄ物体との間の距離、および、前記シーン強度データと前記モデル強度データとの間の一致性に基づく誤差関数を最適化することによって、前記一組のフィルタリングされた姿勢の各姿勢を改善するステップをさらに備える、請求項１〜２０のいずれか１項に記載の方法。
【請求項２４】
ステップ（ｃ）において、エッジポイントが、シーンフィーチャポイントとして用いられる、請求項１〜２３のいずれか１項に記載の方法。
【請求項２５】
前記エッジポイントが前記３Ｄシーンデータを用いてさらにフィルタリングされるステップ（ｃ１）をさらに備える、請求項２４に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
発明の分野
本発明は、概して、機械視覚システム（マシンビジョンシステム）に関し、より特定的には、画像センサおよび３Ｄセンサの双方によって観測されるシーン（scene）における３Ｄ物体の認識および位置測定に関する。
【背景技術】
【０００２】
発明の背景
物体認識および位置測定は、多くのマシンビジョン用途の一部である。シーンにおいて対象の物体の詳細な位置を知ることは、後続の操作タスクおよび検査タスクのために極めて重要である。シーンの強度画像または３Ｄスキャンにおいて物体を発見するための多くの異なる技術が開発されており、そのタスクは一般的にマッチングと称される。本書は、シーンの強度画像および３Ｄスキャンの双方を同時に用い、３Ｄデータおよび強度データの双方におけるモデルとシーンとの間の一致性を最適化することによって物体を発見するマッチングアプローチについて説明する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】米国特許第６，７１１，２９３号
【特許文献２】米国特許第８，１６５，４０１号
【特許文献３】欧州特許第２０４７４０３号
【特許文献４】欧州特許第１９８６１５３号
【特許文献５】欧州特許第２０２６２７９号
【非特許文献】
【０００４】
【非特許文献１】キャンベル（Campbell）およびフライン（Flynn）、「自由形状物体表現技術および認識技術の調査（A Survey Of Free-Form Object Representation and Recognition Techniques）」、２００１年、コンピュータビジョンと画像の理解（Computer Vision and Image Understanding）、Vol.81、第２号、p166-210
【非特許文献２】マミック（Mamic）およびベナモン（Bennamoun）、「３Ｄ自由形状物体の表現および認識（Representation and recognition of 3D free-form objects）」、２００２年、デジタル信号処理（Digital Signal Processing）、Vol.12、第１号、p47-76
【非特許文献３】ミアン（Mian）ら、「３Ｄモデリングのための自動一致：広範なレビュー（Automatic Correspondence for 3D Modeling: An Extensive Review）」、２００５年、形状モデリング国際ジャーナル（International Journal for Shape Modeling）、Vol.11、第２号、p523
【非特許文献４】キャニー（Canny）、「エッジ検出への演算アプローチ（A Computational Approach to Edge Detection）」、パターン解析と人工知能についてのＩＥＥＥ会議（IEEE Transactions on Pattern Analysis and machine Intelligence）、8(6):679-698、１９８６年
【非特許文献５】ロゥエ（Lowe）、「局部スケール不変フィーチャからの物体認識（Object recognition from local scale-invariant features）」、コンピュータビジョンについての国際会議議事録、２、p1150-1157
【非特許文献６】ベイ（Bay）ら、「ＳＵＲＦ：高速化ロバストフィーチャ（SURF: Speeded Up Robust Features）」、コンピュータビジョンと画像の理解（Computer Vision and Image Understanding: CVIU）、２００８年、Vol.110、No.3、p346-359
【非特許文献７】カツオーラス（Katsoulas）、「ハフ変換を制約することによる距離画像における頂点のロバスト抽出（Robust extraction of vertices in range images by constraining the hough transform）」、２００３年、コンピュータ科学における講義ノート（Lecture Notes in Computer Science）、Vol.2652、p360-369
【非特許文献８】ラバーニ（Rabbani）およびヒューベル（Heuvel）、「ポイントクラウドにおける円筒の自動検出のための効率的ハフ変換（Efficient hough transform for automatic detection of cylinders in point clouds）」、２００５年、第１１回演算と画像のための高等学校の年次大会の議事録（Proceedings of the 11th Annual Conference of the Advanced school for Computing and Images：ASCI’05）、p60-65
【非特許文献９】ザハリア（Zaharia）およびプレトー（Preteux）、「ハフ変換ベースの３Ｄメッシュ検索（Hough transform-base 3D mesh retrieval）」、ビジョンジオメトリＸについてのＳＰＩＥ会議４４７６の議事録（Proceedings of the SPIE Conf. 4476 on Vision Geometric X）、p175-185
【非特許文献１０】ザン（Zhang）、「自由形状曲線の登録のための反復点マッチング（Iterative point matching for registration of free-form curves）」、１９９４年、コンピュータビジョン国際ジャーナル（International Journal of Computer Vision）、Vol.7、第３号、p119-152
【非特許文献１１】フィッツギボン（Fitzgibbon）、「２Ｄおよび３Ｄポイントセットのロバスト登録（Robust registration of 2D and 3D point sets）」、２００３年、画像およびビジョンコンピューティング（Images and Vision Computing）、Vol.21、第１３−１４号、p1145-1153
【非特許文献１２】ヴィードマン（Wiedmann）ら、「３Ｄ物体の認識と追跡（Recognition and Tracking of 3D objects）」、ＩＥＥＥ  ロボティクスおよび自動化国際会議２００９（IEEE International Conference on Robotics and Automation 2009）、p1191-1198
【非特許文献１３】グランガー（Granger）およびペネック（Pennec）、「マルチスケールＥＭ−ＩＣＰ：曲面レジストレーションのための高速かつロバストレージクラスタなアプローチ（Multi-scale EM-ICP: A fast and robust approach for surface registration）」、２００２年、コンピュータビジョンについての欧州会議（European Conference on Computer Vision）（ＥＣＣＶ  ２００２）、ｐ418-432
【発明の概要】
【発明が解決しようとする課題】
【０００５】
記述子（Descriptor）ベースまたはフィーチャ（feature）ベースの技術は、シーンにおけるポイントとモデル上のポイントとの間の対応を、記述子を用いることによって検索することに基づいている。このような記述子は、所与のシーンポイントの周囲の３Ｄ表面または強度を、低次元表現を用いて表現する。そのような記述子は、典型的には、モデルのすべてのポイントまたは選択された一組のポイントについてオフラインで演算されるとともに、データベース内に記憶される。シーン内の物体を認識するために、シーン内のポイントについて記述子が計算されるとともに、予め演算されたデータベースを用いて、対応するモデルポイントが探索される。十分な対応が見出されると、物体の姿勢（pose）を再生することができる。異なる３Ｄ表面記述子の広範囲の概要が、キャンベル（Campbell）およびフライン（Flynn）（「自由形状物体表現技術および認識技術の調査（A Survey Of Free-Form Object Representation and Recognition Techniques）」、２００１年、コンピュータビジョンと画像の理解（Computer Vision and Image Understanding）、Vol.81、第２号、p166-210）、マミック（Mamic）およびベナモン（Bennamoun）（「３Ｄ自由形状物体の表現および認識（Representation and recognition of 3D free-form objects）」、２００２年、デジタル信号処理（Digital Signal Processing）、Vol.12、第１号、p47-76）、ミアン（Mian）ら（「３Ｄモデリングのための自動一致：広範なレビュー（Automatic Correspondence for 3D Modeling: An Extensive Review）」、２００５年、形状モデリング国際ジャーナル（International Journal for Shape Modeling）、Vol.11、第２号、p523）において与えられる。強度データにおいて一般的に用いられるフィーチャ記述子は、キャニー（Canny）（「エッジ検出への演算アプローチ（A Computational Approach to Edge Detection）」、パターン解析と人工知能についてのＩＥＥＥ会議（IEEE Transactions on Pattern Analysis and machine Intelligence）、8(6):679-698、１９８６年）において説明されているようなエッジ（edge）、ロゥエ（Lowe）によるＳＩＦＴキーポイント記述子（「局部スケール不変フィーチャからの物体認識（Object recognition from local scale-invariant features）」、コンピュータビジョンについての国際会議議事録、２、p1150-1157；米国特許第６，７１１，２９３号も参照）、および、ベイ（Bay）らによるＳＵＲＦキーポイント記述子（「ＳＵＲＦ：高速化ロバストフィーチャ（SURF: Speeded Up Robust Features）」、コンピュータビジョンと画像の理解（Computer Vision and Image Understanding: CVIU）、２００８年、Vol.110、No.3、p346-359；米国特許第８，１６５，４０１号も参照）を含む。多くのほかのフィーチャポイント記述子が文献において提案されている。フィーチャ記述子に依存する方法は、対象の物体が特有の形状または強度情報をあまり有していない場合にはしばしば動作しないことがあり、これは記述子が特徴的ではないからである。
【０００６】
いくつかのアプローチは、いわゆる幾何プリミティブ（geometric primitive）を用いて、シーン内の物体を検出する。幾何プリミティブは、平面、円筒、または球のような、単純な幾何物体である。自由形状物体と比較して、幾何プリミティブは、それらの固有の対称性のために、シーン内で容易に検出可能である。シーン内におけるプリミティブまたは幾何プリミティブから成る物体を検出するいくつかの方法が存在する。欧州特許２０４７４０３においては、３Ｄ物体は、幾何プリミティブへ区分される。そして、３Ｄシーン内において、そのような幾何プリミティブが探索され、物体内のプリミティブと類似のシーン内のプリミティブを同定することによって、物体が認識される。他の方法は、一般化ハフ変換（Hough transform）の変形を用いて、シーン内の幾何プリミティブを検出する。たとえば、カツオーラス（Katsoulas）（「ハフ変換を制約することによる距離画像における頂点のロバスト抽出（Robust extraction of vertices in range images by constraining the hough transform）」、２００３年、コンピュータ科学における講義ノート（Lecture Notes in Computer Science）、Vol.2652、p360-369）、ラバーニ（Rabbani）およびヒューベル（Heuvel）（「ポイントクラウドにおける円筒の自動検出のための効率的ハフ変換（Efficient hough transform for automatic detection of cylinders in point clouds）」、２００５年、第１１回演算と画像のための高等学校の年次大会の議事録（Proceedings of the 11th Annual Conference of the Advanced school for Computing and Images：ASCI’05）、p60-65）、および、ザハリア（Zaharia）およびプレトー（Preteux）（「ハフ変換ベースの３Ｄメッシュ検索（Hough transform-base 3D mesh retrieval）」、ビジョンジオメトリＸについてのＳＰＩＥ会議４４７６の議事録（Proceedings of the SPIE Conf. 4476 on Vision Geometric X）、p175-185）である。幾何プリミティブに依存するすべての方法は、一般の自由形状物体では動作しないという欠点を有する。
【０００７】
たとえば、欧州特許第１９８６１５３号のような、距離画像における３Ｄ物体を認識するためのさまざまな方法が開発されている。そのような方法は、さまざまなセンサシステムによって返されるような、単一の距離画像上で動作する。しかしながら、全距離画像ベースのシステムは、単一の距離画像から得られた３Ｄ情報に制限され、他の３Ｄセンサまたは異なる距離画像の組合せからの一般的な３Ｄ情報に対処できない。さらに、それらは、典型的にパラメータ空間内において総当たり探索を必要とするので、リアルタイムシステムのために十分な速さを有していない。
【０００８】
物体の既知の３Ｄ姿勢を改善（refining）するためのさまざまなシステムが知られている。そのような方法は、入力として、シーン内における物体のおよその３Ｄ姿勢を必要とし、その姿勢の精度を増加する。反復最近点（Iterative Closest Point：ＩＣＰ）のような、３Ｄデータのみを用いて姿勢を最適化するいくつかのそのような方法が開発されている（たとえば、ザン（Zhang）の「自由形状曲線の登録のための反復点マッチング（Iterative point matching for registration of free-form curves）」、１９９４年、コンピュータビジョン国際ジャーナル（International Journal of Computer Vision）、Vol.7、第３号、p119-152、欧州特許第２０２６２７９号、および、フィッツギボン（Fitzgibbon）の「２Ｄおよび３Ｄポイントセットのロバスト登録（Robust registration of 2D and 3D point sets）」、２００３年、画像およびビジョンコンピューティング（Images and Vision Computing）、Vol.21、第１３−１４号、p1145-1153を参照）。物体の姿勢を改善するための他の方法は、ヴィードマン（Wiedmann）らによる「３Ｄ物体の認識と追跡（Recognition and Tracking of 3D objects）」、ＩＥＥＥ  ロボティクスおよび自動化国際会議２００９（IEEE International Conference on Robotics and Automation 2009）、p1191-1198のように強度データのみを使用する。姿勢改善の主な欠点は、入力姿勢が正しい姿勢に十分に近いことが必要であり、そうでなければ、その方法は収束しない。しかしながら、実際のアプリケーションにおいては、３Ｄシーンがしばしばクラッタ（clutter）、閉塞（occlusion）、ノイズ、および複数の物体事象（object instance）を含むために、正しい姿勢の良好な近似は得難い。
【０００９】
上述の理由のために、任意の自由形状３Ｄ物体の効果的な認識、ならびに、１つまたはより多くの強度画像および１つまたはより多くの３Ｄセンサで捕捉されたシーン内のそれらの３Ｄ姿勢の再生を可能とする方法が必要とされている。本書の目的に関して、強度画像および３Ｄセンサで捕捉されたシーンを、マルチモーダルシーン（multimodal scene）とも称することとする。
【課題を解決するための手段】
【００１０】
発明の要約
本発明は、マルチモーダルシーンにおける剛体３Ｄ物体を探索するため、およびシーン座標における物体の３Ｄ姿勢を決定するためのシステムおよび方法を提供する。典型的なアプリケーションにおいては、マルチモーダルシーンは、たとえば、２つまたはより多くのカメラを用いるステレオ法、タイムオフフライト法（time-of-flight）、デプスフロムフォーカス法（depth from focus）、照度差ステレオ法（photometric stereo）、または立体照明を用いた立体写真を用いて取得される。そして、物体の３Ｄ姿勢は、提示された方法を用いて探索される。結果として得られる３Ｄ姿勢は、たとえば、ロボットを用いて物体を操作するため、物体表面の欠陥を検出するため、または、物体の表面特性を演算するために用いられる。
【００１１】
提示された方法は、先行の方法に対していくつかの利点を有する。任意の種類の表面形状を有する自由形状物体の認識が可能になり、そのため、特定のタイプまたは形状の物体には限定されない。さらに、本方法は、ノイズ、物体の部分の欠損、クラッタ、および小さな変形に対してロバストである。３Ｄ物体の姿勢が、高精度で決定される。３Ｄ物体の探索およびその３Ｄ姿勢の再生は、ほとんど演算時間を必要とせず、リアルタイム環境に適している。
【００１２】
方法は、２つのフェーズを備える。オフラインフェーズにおいては、後に物体の探索に用いられるモデル記述が演算される。ユーザは、探索されるべき物体の３Ｄ表現、たとえば、３Ｄ  ＣＡＤモデルまたは一組の３Ｄポイント、および任意的にさまざまな視点からの物体の画像を提供する必要がある。画像が提供されない場合は、物体の３Ｄ表現から人工的にレンダリングされる。このように、本方法は、物体の幾何形状のみが必要とされる。色、テクスチャ、または表面反射情報は必要とされず、広範囲の物体のタイプについて本発明を適合させることができる。しかしながら、他の強度フィーチャを用いるため、そしてそれによって本方法のロバスト性をさらに増加するために、色およびテクスチャのような追加的な局部情報が提供されてもよい。モデル記述は、特定のレートで物体表面をサンプリングし、異なる視点からの物体の強度画像からフィーチャポイントおよびフィーチャポイント記述子を演算し、任意的に３Ｄ表現を用いてフィーチャポイントをフィルタリングし、各サンプリングされた３Ｄポイントを各フィーチャポイントとペアリングし、そのような各ペアを記述する記述子を演算し、上記ポイントペア記述子によってインデックスが付けられたデータベース内のポイントペアを記憶することによって形成される。
【００１３】
オンラインフェーズにおいては、ユーザは、一組の強度画像および一組の３Ｄシーンで構成されるマルチモーダルシーン、および、オフラインフェーズにおいて演算されたモデル表現を提供する。画像およびシーンは、互いに対して調整されなければならず、すなわち、固有センサパラメータおよびそれらの相対位置が事前に知られていなくてはならない。各強度画像について、フィーチャポイント抽出され、フィーチャポイント記述子が演算されるとともに、与えられた３Ｄデータを用いて任意的にフィルタリングされる。典型的に、フィーチャポイントとしてエッジが用いられ、フィーチャ記述子としてエッジの方向が用いられる。３Ｄデータは、テクスチャエッジを除去し、それによって幾何エッジのみを得るために用いられる。そして、３Ｄシーンが特定のレートでサンプリングされるとともに、それらのポイントのサブセットが基準ポイントとして用いられる。各基準ポイントについて、物体の３Ｄ姿勢が、基準ポイントに対してパラメータ化される。サンプリングされた３Ｄポイントは、抽出されたフィーチャポイントとペアリングされ、記述子がそのような各ペアについて演算される。モデルから、シーン内のペアと類似したポイントペアを見出すために、オフラインフェーズで演算されたデータベースが用いられる。一致したものはグループ化され、最も一致したものを有する３Ｄ姿勢が用いられる。これは、３Ｄ表面の重なり（overlap）および強度フィーチャの一致性を同時に最適化する。任意の事後処理ステップとして、再生された姿勢がさらに改善され得る。
【００１４】
第１の局面に従えば、本発明は、３Ｄシーンデータおよびシーン強度データにおける３Ｄ物体の事象を認識するため、ならびに、その事象の３Ｄ姿勢を決定するための方法を提供し、以下の、（ａ）３Ｄ物体データを提供するとともに強度データを取得するステップと、（ｂ）３Ｄシーンデータおよびシーン強度データを提供するステップと、（ｃ）強度データからシーンフィーチャポイントを抽出するステップと、（ｄ）３Ｄシーンデータから少なくとも１つの基準ポイントを選択するステップと、（ｅ）各選択された基準ポイントについて、基準ポイントが３Ｄ物体の一部であるという推定の下で、所与の姿勢候補における３Ｄ物体と一致する抽出されたシーンフィーチャポイントの数を最大化することによって、３Ｄ物体についての姿勢候補を演算するステップと、（ｆ）上記の姿勢候補からフィルタリングされた一組の姿勢を演算するステップとを備える。ステップ（ａ）における３Ｄ物体データおよびステップ（ｂ）における３Ｄシーンデータは、好ましくは、一組の３Ｄポイントまたは３Ｄコンピュータ支援設計（ＣＡＤ）モデルとして提供される。ステップ（ａ）および（ｂ）における強度データは、好ましくは、グレースケール画像またはカラー画像として提供される。あるいは、それらは、３Ｄシーンデータまたは３Ｄ物体データを人工的にレンダリングすることによって生成されてもよい。
【００１５】
好ましくは、３Ｄモデルは、ステップ（ａ）の後に３Ｄ物体から演算され、以下の、（ａ１）３Ｄ物体データから少なくとも１つのサンプルポイントを選択するステップと、（ａ２）物体強度データから物体フィーチャポイントを抽出するステップと、（ａ３）選択されたサンプルポイントおよび抽出された物体フィーチャポイントの各ペアについて、２つのポイントとそれらの関係とを記述する、ポイントペア記述子を演算するステップと、（ａ４）ポイントペア記述子によってインデックスが付けられたポイントペアを記憶するモデルを生成するステップとを含む。好ましくは、ステップ（ａ４）は、（ａ４ａ）ポイントペア記述子をサンプリングするステップと、（ａ４ｂ）サンプリングされた各ポイントペア記述子をポイントペアのリストへマッピングするグローバルモデル記述を生成するステップとを含み、各リストは、選択されたサンプルポイントと、類似のサンプルポイントペア記述子を有する抽出された物体フィーチャポイントとのすべてのペアを含む。ステップ（ａ１）におけるサンプルポイントは、好ましくは、３Ｄデータからランダムに選択されるか、または３Ｄデータを均一にサンプリングすることによって選択される。ステップ（ａ２）において抽出された物体フィーチャポイントは、好ましくは、エッジ検出器で演算されたエッジポイントであり、好ましくは、物体のシルエットエッジ（silhouette edge）のみを得るために３Ｄ物体データを用いてフィルタリングされる。ステップ（ａ４ｂ）において生成されるグローバルモデルは、好ましくは、ハッシュテーブルを使用し、ポイントペア記述子のサンプリングされたバージョンによってインデックスが付与される。
【００１６】
好ましくは、３Ｄ物体データ、３Ｄシーンデータ、物体強度データ、およびシーン強度データは処理の前にフィルタリングされ、フィルタリングは、異常値を検出し除去するステップ、ノイズを低減するステップ、および、３Ｄデータについて面法線を演算するステップのうちの少なくとも１つを含む。
【００１７】
ポイントペア記述子は、好ましくは、物体フィーチャポイントの距離によってスケーリングされ、サンプルポイントの距離および強度データの画像平面内の抽出された物体フィーチャポイントを記述するフィーチャベクトルを、エッジの相対方向、表面ポイント法線、および２つのポイントの差分ベクトルとともに記述する。さらに好ましい実施形態に従えば、以下の特徴、フィーチャポイントについて演算されたフィーチャポイント記述子、各ポイントのカラー値またはグレー値、各ポイントのテクスチャ情報、各ポイントにおける表面記述子、各ポイントにおける曲率、各ポイントにおける他の幾何学的表面情報のフィーチャの選択がさらに含まれる。
【００１８】
さらに好ましい実施形態に従えば、ステップ（ｄ）において、基準ポイントは、３Ｄシーンデータからランダムに選択されるか、または、３Ｄシーンデータを均一にサンプリングすることによって選択される。３Ｄシーンデータの均一サンプリングのためのサンプリング距離が、好ましくは、３Ｄ物体のサイズに対して演算される。
【００１９】
ステップ（ｅ）において、各姿勢候補についてのスコア値が計算されることがさらに好ましい。好ましくは、姿勢候補は、投票方式（voting scheme）を用いて演算される。投票方式は、以下の、（ｅ１）可能性のある物体姿勢の空間をサンプリングするステップと、（ｅ２）各姿勢空間サンプルについてカウンタを生成するステップと、（ｅ３）抽出されたシーンフィーチャポイントから少なくとも１つのシーンフィーチャポイントを選択するステップと、（ｅ４）各選択されたシーンフィーチャポイントについて、基準ポイントが３Ｄ物体の表面上であり、かつシーンフィーチャポイントが３Ｄ物体に一致するようなマッチング姿勢を演算するステップと、（ｅ５）ステップ（ｅ４）において演算された各マッチング姿勢について、対応する姿勢空間サンプルのためのカウンタを増加させるステップと、（ｅ６）サンプリングされた姿勢空間におけるピークカウンタ値を検出するとともに、対応する姿勢空間サンプルを姿勢候補として選択するステップとを含む。ステップ（ｅ６）において、ピークカウンタ値は、好ましくは、しきい値を超えるカウンタ値に制限される。ステップ（ｅ１）において、好ましくは、可能性のある物体姿勢の空間は２つのパラメータによって表現され、第１のパラメータは３Ｄ物体上のポイントであり、第２のパラメータは面法線周りの回転を示す角度である。３Ｄ物体上のポイントは、好ましくは、３Ｄ物体データから選択された一組のポイントへのインデックスとして表現され、回転角は一組の角度を等しいサイズの間隔に分割することによってサンプリングされる。一組のポイントは、好ましくは、３Ｄ物体データから、３Ｄ物体の表面を均一にまたはランダムにサンプリングすることによって選択される。
【００２０】
ステップ（ａ）において、物体フィーチャポイントは、物体強度データから抽出されることがさらに好ましい。フィーチャポイントは、好ましくはエッジポイントであり、深度不連続性（depth discontinuity）または物体のシルエットにおけるエッジポイントのみを取得するために、好ましくは３Ｄ物体データを用いてフィルタリングされる。
【００２１】
ステップ（ｅ４）において、姿勢は、基準ポイントおよび選択されたシーンフィーチャポイントのペアと類似した、３Ｄ物体ポイントおよび物体フィーチャポイントのペアの探索を可能とするデータ構造を用いて演算されることが好ましい。ポイントペアの探索は、好ましくは、（ｅ４ａ）基準ポイント、選択されたシーンフィーチャポイント、およびそれらの関係を記述するポイントペア記述子を演算するステップと、（ｅ４ｂ）ポイントペア記述子を、データ構造へのインデックスとして使用するステップとを含む。
【００２２】
ポイントペア記述子は、好ましくは、物体フィーチャポイントの距離によってスケーリングされ、サンプルポイントの距離および強度データの画像平面内の抽出された物体フィーチャポイントを記述するフィーチャベクトルを、エッジの相対方向、表面ポイント法線、および２つのポイントの差分ベクトルとともに記述する。さらに好ましい実施形態に従えば、以下の特徴、フィーチャポイントについて演算されたフィーチャポイント記述子、各ポイントのカラー値またはグレー値、各ポイントのテクスチャ情報、各ポイントにおける表面記述子、各ポイントにおける曲率、各ポイントにおける他の幾何学的表面情報のフィーチャの選択がさらに含まれる。
【００２３】
好ましい実施形態に従えば、ステップ（ｃ４ｂ）は、（ｃ４ｃ）ポイントペア記述子をサンプリングするステップと、（ｃ４ｄ）サンプリングされたポイントペア記述子をポイントペアのリストにマッピングするデータ構造を用いるステップとを含む。ステップ（ｃ４ｄ）においては、データ構造として、好ましくはハッシュテーブルが用いられる。
【００２４】
好ましい実施形態に従えば、ステップ（ｆ）において演算は、（ｆ１）姿勢候補間の近接関係を規定するステップと、（ｆ２）近接する姿勢候補のスコアの荷重和として、各姿勢のスコアを演算するステップと、（ｆ３）（ｆ２）において演算されたスコアによって姿勢をランク付けすることにより、一組のフィルタリングされた姿勢を選択するステップとを含む。好ましくは、近接関係は、姿勢の並進および姿勢の回転におけるしきい値化、または、両姿勢の下での３Ｄ物体上のポイントが有し得る最大距離のしきい値化によって規定される。方法は、（ｆ３）において選択された姿勢が、近接する姿勢にわたる平均姿勢として再演算されるステップをさらに含んでもよい。重み付けは、好ましくは、候補姿勢および現在の近接している姿勢に依存する。
【００２５】
本発明の方法は、好ましくは、以下の、３Ｄシーンと３Ｄ物体との間の距離、その姿勢の下でのシーン強度データおよびモデル強度データの一致性のうちの１つまたは双方に基づく誤差関数を最適化することによって、一組のフィルタリングされた姿勢の各姿勢を改善するステップをさらに備える。
【００２６】
本発明の方法は、好ましくは、一組のフィルタリングされた姿勢の各姿勢についてのスコアを演算するステップをさらに備え、そのスコアは、その姿勢の下での、３Ｄシーンと３Ｄ物体のとの間の一致性を示す。
【００２７】
本発明の方法は、好ましくは、最終姿勢の各々についてのスコアを演算するステップをさらに備える。演算されたスコアは、好ましくは、演算された姿勢の下での、３Ｄ物体の表面にある３Ｄシーンにおけるポイントの数である。
【００２８】
本発明は、添付の図面と関連して、以下の詳細な説明からより完全に理解され得る。
【図面の簡単な説明】
【００２９】
【図１】３Ｄデータが、均一サンプリングによってどのように正規化されるかを示す図である。
【図２】３Ｄポイントと画像ポイントとの間の関係が、どのように記述され得るかを示す図である。
【図３】物体座標系、局部座標系、および、局部座標を用いるシーン座標系の間の変換を示す図である。
【発明を実施するための形態】
【００３０】
好ましい実施形態の詳細な説明
標記および定義
以下のすべてのデータは、電子的形式、好ましくはデジタルで利用可能であると考えられる。記述された方法およびアルゴリズムは、電子的形式およびコンピュータ実行可能であるものと考えられる。
【００３１】
以下の標記においては、３Ｄポイントは、３つの座標値を有する３Ｄ空間のポイントである。各３Ｄポイントは、もっとも顕著な座標系として、３Ｄシーンデータが定義されるシーン座標系、および対象の３Ｄ物体が定義される物体座標系を有する座標系を参照する。３Ｄベクトルは、３つの座標値を有する３Ｄ空間におけるベクトルである。表面上のポイントにおける３Ｄ法線ベクトルは、１のユークリッド長さを有し、かつ所与のポイントにおける表面に垂直な３Ｄにおけるベクトルである。指向性ポイント群（oriented point cloud）は、３Ｄ法線ベクトルが各ポイントと関連する３Ｄポイント群である。３Ｄ剛体変換は、ポイント距離を維持する３Ｄポイントへの３Ｄポイントのマッピングであり、公式的には、任意のポイントＰ，Ｑについて、式｜Ｐ−Ｑ｜＝｜ｆ（Ｐ）−ｆ（Ｑ）｜を維持するようなマッピングｆである。すべての３Ｄ剛体変換は、回転と並進（translation）に分解され、最初に回転が対象の（argument）ポイントに適用され、その結果に並進が適用される。公式的には、すべての３Ｄ剛体変換は、ｆ（Ｐ）＝Ｒ（Ｐ）＋Ｔのような、３Ｄ回転Ｒおよび３ＤベクトルＴに分解され得る。
【００３２】
３Ｄデータ正規化は、図１に示されるような、３Ｄにおける表面を、上記表面にわたって均一に分布した一組の３Ｄポイントに変換する方法である。好ましい実施形態においては、３Ｄデータ正規化は、入力として（ａ）３Ｄにおける２Ｄ表面（１０１）を記述する３Ｄデータ、および（ｂ）サンプリング距離ｄを利用する方法である。その方法は、（ａ）入力３Ｄデータの表面上にもあるポイントのみからなり、（ｂ）結果のポイント群におけるすべてのポイントのペアが少なくとも距離ｄを有し、（ｃ）入力３Ｄデータの各ポイントが、最大でもｄの距離を有する出力ポイントの組を有するという特性を有する、一組の３Ｄポイント（１０２）を出力する。本発明の好ましい実施形態においては、３Ｄポイントの組について、一組の入力ポイントにわたって繰り返し、かつサンプリング距離よりも新しいポイントに近いポイントがポイント群内にまだない場合のみに、それらの各々を出力の組に追加することによって、それらの所望の特性を有する正規化されたポイントの組が生成される。３Ｄ  ＣＡＤモデルは、各面を一組のポイントに変換するとともに、結果として得られたポイントの組を前述のように取り扱うことによって変換される。代替的な実施形態においては、３Ｄデータは、表面からランダムにポイントを選択することによって正規化される。他の代替的な実施形態においては、法線方向が正規化のために用いられ、サブサンプリングされたポイントの組は、高曲率の領域においてより高密度になる。好ましい実施形態においては、３Ｄデータの表面から選択されたポイントの表面法線が演算される（１０３）。
【００３３】
入力ポイント群の正規化は、典型的には、依然としてもとの群の良好な表現であるより少ないポイントを有する群をもたらす。正規化は、ポイントの数を効果的に減少させるために、オフラインフェーズおよびオンラインフェーズの双方における我々の発明によって用いられ、より高速な性能をもたらす。以下に示すように、局部パラメータ空間のサンプリングについても同様に重要である。好ましい実施形態においては、サンプリング距離ｄは、物体の直径に対する事項についてパラメータ化され、ここで、その直径は、３Ｄ物体上の２つのポイント間の最大距離である。物体の直径をＤobjとおくと、サンプリング距離ｄは、τdによって、ｄ＝τd・Ｄobjとしてパラメータ化される。代替的な実施形態においては、サンプリングファクタはユーザによって与えられる。他の実施形態においては、サンプリングファクタは、３Ｄデータのノイズレベルのような事前情報に従って設定される。
【００３４】
シーンまたは物体の強度データは、１つまたはより多くの所与の視点および視野方向からのシーンまたは物体の出現であり、シーンまたは物体から照射される光の量を測定することによって得られる。強度データは、典型的には、強度画像の形式で表わされる。実際のシーンまたは物体について、強度データは、典型的には、カメラのような画像装置を用いて捕捉される。さらに、強度データは、３Ｄデータを仮想視野へレンダリングすることによって３Ｄデータから合成的に生成され得る。そのようなレンダリングされた視野の可能性のある品質は、提供される３Ｄデータのタイプおよび品質に依存する。３Ｄデータは、追加的なテクスチャ（texture）情報によって増大され得、それらは、より実際的な３Ｄ画像を生成するために、レンダリングプロセスにおいて用いられる。強度データは、１つまたはより多くのデータのチャネルから成り、各チャネルはシーンまたは物体の発現のフィルタリングされたバージョンを表わす。典型的には、複数のチャネルが、異なる光の波長を表わしており、たとえば、シーンまたは物体のカラーバージョンを可能とする。強度データは、典型的には、２Ｄグリッドの画素を用いて表わされる。以下において、この２Ｄグリッドにおける位置は、強度データにおけるポイント、画像内の位置、または画像内の座標とも称される。
【００３５】
フィーチャポイントは、強度データ内のポイントである。フィーチャポイントは、高密度に、または強度データを通して均一に分布され、あるいは、強度データ内における突き出した場所に位置付けられる。多くの異なるタイプのフィーチャポイントが文献から公知である。フィーチャポイントは、典型的には、ノイズ、クラッタ、閉塞（occlusion）、および他の外乱の存在において、安定的で反復性のある位置を有するように設計される。好ましい実施形態においては、フィーチャポイントとしてエッジポイントが用いられる。好ましい実施形態においては、キャニーエッジ抽出器が用いられる（キャニー．Ｊ（Canny, J）、「エッジ検出への演算アプローチ（A Computational Approach To Edge Detection）」、パターン解析および人工知能についてのＩＥＥＥ会議（IEEE Transactions on Pattern Analysis and machine Intelligence）、8(6):679-698、１９８６年）。代替的な実施形態においては、任意の他のタイプのフィーチャポイントが使用され得る。
【００３６】
フィーチャ記述子は、フィーチャポイント周辺の領域における強度データの圧縮された記述である。フィーチャ記述子は、典型的には、圧縮された意味における強度データの部分を記述するために用いられ、上記部分から最も表現されている情報を抽出することによって記述される。それらは、しばしば、他の場所または視野における強度データの類似の部分を同定するため、あるいは、異なる強度画像における同じ部分の空間を同定するために用いられる。好ましい実施形態においては、フィーチャポイントの位置における強度データの傾き（gradient）の方向が、フィーチャ記述子として用いられる。代替的な実施形態においては、フィーチャポイントの位置における強度値が、フィーチャ記述子として用いられ得る。他の代替的な実施形態においては、任意の種類のフィーチャ記述子が用いられ得る。複数の異なるフィーチャ記述子は、単一のフィーチャ記述子へ結合されてもよい。
【００３７】
ポイントペア記述子は、一方のポイントが３Ｄポイントであり他方のポイントがフィーチャポイントであるポイントのペアを記述する値のリストである。好ましい実施形態においては、まず、強度データ内の３Ｄポイントの位置が取得される。そして、ポイントペア記述子は、強度データの画像平面内の２つのポイント間の距離、エッジ方向と２つのポイント間の差分ベクトルとの間の角度、３Ｄポイントの法線ベクトルと差分ベクトルとの角度、および、法線ベクトルと強度データの投影中心、典型的にはカメラ中心に向かう方向との角度を含む。他の好ましい実施形態においては、フィーチャポイントおよび３Ｄポイントの追加的なフィーチャ記述子が、ポイントペア記述子に含まれる。代替的な実施形態においては、２つのポイントにおける表面の色、２つのポイントにおける曲率および他の幾何的特性のような局部特性、ならびに、背景部分において言及される局部ポイント記述子が、ポイントペア記述子に含まれ得る。代替的な実施形態においては、他の測定が、本発明の範囲から逸脱することなく、２つのポイントおよびそれらの関係を記述するために用いられ得る。ポイントペア記述子に多くの情報を追加することは、ポイントの異なるペア間を区別するための能力を増加するが、その複雑性、すなわち、他の記述子を計算し、記憶しおよび取り扱うための複雑性も増加する。
【００３８】
好ましい実施形態においては、強度画像内のｒに位置するとともに方向ｖｒとエッジ法線ｅ1を有するエッジポイントｅから見られる法線ｎrとを有する、３ＤポイントＰのポイントペア記述子Ｆの公式定義は、図２に示されるように、以下の式（１）で示される。
【００３９】
【数１】
2014081347.tif 000003
【００４０】
ここで、∠（ａ，ｂ）は、２つのベクトルの間の角度を示す。
【００４１】
【数２】
2014081347.tif 000004
【００４２】
グローバルモデル記述（global model description）は、所与のポイントペアと類似の物体についてのすべてのポイントペアをシーンから効果的に探索することを可能とするデータ構造である。すなわち、グローバルモデル記述は、シーンからのポイントペアを入力として採用し、入力ポイントペアに類似の物体についてのポイントペアのリストを出力するデータ構造および方法である。好ましい実施形態においては、サンプルポイントペア記述子からポイントペアの組へのマッピングが、ポイントペア記述子として用いられる。所与のポイントペアについてのサンプルポイントペア記述子を計算するとともに、ハッシュマップを用いて等しいサンプルポイントペア記述子を有するすべてのポイントペアを読み出すことによって、探索がなされる。ハッシュテーブルは、タイミングがモデル記述に記憶されたポイントペアの数とは独立の類似のポイントペアへの効果的なアクセスを可能にする。代替的な実施形態においては、ニアレストネイバーアクセス（nearest neighbor access）のための方法が、所与のポイントペアのうちの１つに類似のポイントペア記述子を有するすべてのポイントペアを読み出すために用いられ得る。他の代替的な実施形態においては、任意のインデキシングスキーム、たとえばサーチツリーが、データ構造として用いられ得る。
【００４３】
シーン内の物体の局部姿勢は、所与の基準ポイントが物体の表面にあるとの想定の下で、基準ポイントと称される所与の３Ｄシーンポイントに対するシーン内の物体に３Ｄ姿勢として定義される。この想定は、可能性のある姿勢を制限する。そのため、局部姿勢は、全３Ｄ姿勢よりも少ない自由度を有する。好ましい実施形態においては、局部姿勢は、以下のように、局部座標を用いてパラメータ化される。シーン内の物体表面にあると想定される基準ポイントをｓrとおくと、（ａ）ｍrはｓrに対応するモデル表面上のポイントであり、（ｂ）αは、ｓr、ｍrおよびそれらの法線を揃えた後の、ｓrの法線周りの回転角である（図３）。ｓrに対する局部座標は（ｍr，α）として記述され、全部で３つの自由度を有し、その２つはモデルの表面上のｍrの位置であり、１つは回転角αである。代替的な実施形態においては、ｕ−ｖ座標またはテクスチャ座標のような、物体表面の異なるパラメータ化が用いられ得る。
【００４４】
シーンの基準ポイントｓrについて、ＴS→Lを、ｓrをもとの位置へ並進させるとともに、正方向を指すｘ軸上のｓrの法線を回転させる剛体３Ｄ変換とおく。モデルポイントｍrについて、ＴM→Lを、ｍrをもとの位置へ並進させるとともに、正方向を指すｘ軸上のｍrの法線を回転させる剛体３Ｄ変換とおく。Ｒx（α）を、角度αでｘ軸周りに回転する剛体３Ｄ変換とおく。そして、基準ポイントｓrに対する局部座標（ｍr，α）が与えられると、モデル空間におけるポイントｍiからシーン空間内の対応するポイントｓiへのマッピングは、以下の式（３）として記述され得る。
【００４５】
【数３】
2014081347.tif 000005
【００４６】
ｓi、ｍi、ＴS→LおよびＴM→Lが既知の場合は、上記の式は、αについて解くことができる。
【００４７】
３Ｄモデル生成
本方法のオフラインフェーズにおいて、シーン内において後に認識するのに適した手法についての対象の物体を記述する方法が構築される。モデルを生成するための方法は、以下の、（ａ）３Ｄ物体データの任意的な準備のステップと、（ｂ）物体サンプルポイントの選択のステップと、（ｃ）グローバルモデル記述の生成のステップと、（ｄ）任意的に、姿勢改善のための準備のステップとを含む。好ましい実施形態においては、生成されたモデルは、選択サンプルポイントおよびグローバルモデル記述を含む。代替的な実施形態においては、以下の情報、３Ｄ物体データ、姿勢改善のために演算されたデータ、方法のユーザによって要求される追加情報が含まれ得る。
【００４８】
３Ｄ物体データの準備は、不必要な特性を除去するとともに必要とされる特性を追加することの目的を提供する。好ましい実施形態においては、以下の、（ａ１）３Ｄセンサによって生成されたノイズや異常値のような、データからの不必要な特性の任意的な抑制ステップが含まれ、まさに使用される方法がデータ取得のために用いられるセンサにも依存し、さらに（ａ２）表面法線の演算ステップが含まれ、これは表面法線がすでに利用可能の場合は任意的である。物体強度データの準備は、不必要な特性は除去し必要な特性が追加する目的を提供する。好ましい実施形態においては、物体強度データは、ガウスフィルタを用いて平滑化される。
【００４９】
好ましい実施形態においては、３Ｄ物体データは、一組の３Ｄポイント、またはコンピュータ支援設計モデル（ＣＡＤモデル）の形式のいずれかとして与えられる。代替的な実施形態においては、代数曲面が用いられ得る。他の代替的な実施形態においては、３Ｄ表面の任意の他の表現が用いられ得る。好ましい実施形態においては、物体強度データは、１つまたはより多くのデジタルカメラを用いて取得され、各々が１つまたはより多くのチャネルを含む、１つまたはより多くの強度画像の形式で与えられる。他の好ましい実施形態においては、物体強度データは、仮想カメラに所与の３Ｄ物体データをレンダリングすることによって、人工的に生成される。他の実施形態においては、他の画像技術を用いて物体強度データを取得してもよい。
【００５０】
３Ｄ物体データから、一組の物体サンプルポイントがモデルの生成のために選択される必要がある。好ましい実施形態においては、３Ｄ物体データが、上述の３Ｄデータ正規化方法を用いて副次的にサンプリングされて、少量のサンプルポイントの組が生成される。代替的な実施形態においては、ユーザは、サンプルポイントとして用いられるべき一組のポイントを提供してもよい。他の代替的な実施形態においては、３Ｄ物体データからのすべてのポイントが、物体サンプルポイントよして用いられ得る。さらに他の代替的な実施形態においては、物体からのランダムなポイントのサブセットがサンプルポイントとして用いられ得る。他の代替的な実施形態においては、本発明の範囲から逸脱することなく、他の物体サンプルポイント選択戦略が可能である。
【００５１】
物体強度データから、グローバルモデル記述の生成のために、一組のフィーチャポイントが抽出される必要がある。好ましい実施形態においては、ロバストエッジ抽出器を用いて、強度データからエッジポイントが抽出される。他の代替的な実施形態においては、本発明の範囲から逸脱することなく、他のフィーチャポイントが抽出され得る。
【００５２】
グローバルモデル記述を生成するための方法は、グローバルモデル記述のために選択された特定のデータ構造に依存する。好ましい実施形態においては、グローバルモデル記述の生成は、（ｃ１）物体サンプルポイントおよび物体フィーチャポイントの各々のペアについてのポイントペア記述子の演算と、（ｃ２）演算されたポイントペア記述子をインデックスとして用いることによる、グローバルモデル記述におけるそのようなポイントのペアの記憶とを含む。代替的な実施形態においては、ポイントは、類似のポイントペアの効果的な検索のためにポイントペア記述子が必要ないように、データ構造内に記憶され得る。
【００５３】
任意的な姿勢改善がマッチングプロセスにおいて用いられる場合、および姿勢改善のために選択された方法が３Ｄ物体から事前演算され得るいくつかの種類のデータを必要とする場合は、データはオフラインフェーズにおいても演算され、モデルとともに記憶され得る。好ましい実施形態においては、所与の探索ポイントに最も近い物体についてのポイントの高速探索を可能とするデータ構造が演算される。このデータ構造は、姿勢改善のための反復最近点（ＩＣＰ）法のために、後に用いられる。代替的な実施形態においては、任意の他の姿勢改善法のデータ構造を用いることができ、たとえば、期待値最大化法（expectation maximization：ＥＭ）がある。（グランガー（Granger）およびペネック（Pennec）の「マルチスケールＥＭ−ＩＣＰ：曲面レジストレーションのための高速かつロバストレージクラスタなアプローチ（Multi-scale EM-ICP: A fast and robust approach for surface registration）」、２００２年、コンピュータビジョンについての欧州会議（European Conference on Computer Vision）（ＥＣＣＶ  ２００２）、ｐ418-432）。
【００５４】
物体認識および姿勢決定
方法のオンラインフェーズは、３Ｄシーンデータおよびシーン強度データ内の３Ｄ物体の事象を認識し、シーン内のその事象の３Ｄ姿勢を演算する。入力として、オフラインフェーズにおいて演算されたような３Ｄシーン、シーン強度データ、および３Ｄモデルを利用し、シーン内の物体の一組の３Ｄ姿勢、および任意的に姿勢をランク付けする一組のスコアを出力する。オンラインフェーズは、以下の、（ａ）３Ｄシーンデータの準備ステップと、（ｂ）シーン強度データの準備ステップと、（ｃ）シーンフィーチャポイントの抽出ステップと、（ｄ）基準ポイントの選択ステップと、（ｅ）基準ポイントが対象の物体上であるとの想定の下で、物体とシーンとの高い一致性を導く、各基準ポイントについての一組の局部座標の演算ステップと、（ｄ）結果として得られた姿勢をフィルタリングして最終姿勢を形成するステップと、（ｅ）任意的な姿勢改善ステップと、（ｆ）任意的な最終姿勢のスコアリングを行なうステップとを含む。
【００５５】
３Ｄシーンデータの準備は、不必要な特徴を削除するとともに必要な特徴を追加することによって入力３Ｄデータを準備する目的を達成するステップである。好ましい実施形態においては、入力３Ｄデータを準備するステップは、以下の、（ａ１）３Ｄセンサによって生成されるノイズや異常値のような不必要な特徴のデータからの任意的な抑制のステップを含み、使用される方法もまたデータを取得するためのセンサに依存し、（ａ２）表面法線の演算ステップを含み、これは表面法線がすでに利用可能である場合には任意的であり、（ａ３）投影ベースのレンジスキャナの場合には、よりスキャナに近接した部分であるような、シーンのより高密度にサンプリングされた部分に向かうバイアスを避けるために、シーンポイント群においてポイントを均一に分布するステップを含む。好ましい実施形態においては、ステップ（ａ３）のためのサンプリング距離は、オフラインフェーズにおけるモデルポイント群を正規化するために用いられたサンプリング距離と等しいかより大きく、かつ、サンプルポイントペア記述子を生成するために用いられたサンプリング距離と等しいかより大きくなるように設定される。サンプリング距離を変更することは、異なるポイント数を有する正規化ポイント群をもたらし、それによって開示された方法の実行時間および精度に影響を後続的に及ぼし、その２つをバランスさせるための重要なパラメータである。代替的な実施形態においては、サンプリング距離は、ユーザによって与えられ得る。他の代替的な実施形態においては、サンプリング距離は、３Ｄデータのノイズレベルのような事前情報から演算され得る。シーン強度データの準備は、不必要な特徴を除去するとともに必要な特徴を追加する目的を達成する。
【００５６】
好ましい実施形態においては、３Ｄシーンデータは、一組の３Ｄポイントとして、またはコンピュータ支援設計モデル（ＣＡＤモデル）の形式のいずれかで与えられる。代替的な実施形態においては、代数曲面が用いられ得る。他の代替的な実施形態においては、３Ｄ表面の任意の他の表現が用いられ得る。好ましい実施形態においては、シーン強度データは、１つまたはより多くの強度画像の形式で与えられ、各々は、１つまたはより多くのチャネルを含み、１つまたはより多くのデジタルカメラを用いて取得される。他の実施形態においては、シーン強度データは、所与の３Ｄシーンデータを仮想カメラにレンダリングすることによって人工的に生成される。他の実施形態においては、シーン強度データを取得するために、他の画像技術が用いられ得る。
【００５７】
多くの基準ポイントが３Ｄシーンデータから選択され、後続のステップにおいて用いられる。方法を実行するために、対象の物体の表面上に存在する少なくとも１つの基準ポイントが選択されることが重要であり、これは、少なくとも１つの基準ポイントがそのような条件を満たす場合にのみ、後続のステップが物体姿勢を見出すためである。好ましい実施形態においては、基準ポイントは、シーンポイント群から、ポイントのランダムなサブセットを利用することによって選択され、そのサブセットにおけるポイントの数は、シーンポイント群のサイズに対してパラメータ化される。代替的な実施形態においては、均一分布されたシーンポイントセットから、またはもとの３Ｄシーンデータからのすべてのポイントが、基準ポイントとして用いられ得る。他の代替的な実施形態においては、ユーザが提供した物体のおよその位置についての知識、モデルの表面特性についての知識、シーンポイント群または他の方法の正規化が、基準ポイントの選択を進めるために用いられ得る。それらは、本発明の範囲から逸脱することなく、本発明において容易に使用することができる。選択された基準ポイントの数は、開示された方法の実行時間に直接的に影響を及ぼす。したがって、基準ポイント選択方法は、性能低下を引き起こしてしまう多すぎる基準ポイントの選択、および、対象の物体を見逃す機会が増加してしまう少なすぎる基準ポイントの選択の間をバランスさせることが必要である。
【００５８】
前のステップにおいて選択された各基準ポイントについて、基準ポイントが対象の表面上にあるという想定の下で、対象の物体が最も有していそうな３Ｄ姿勢に対応する一組の局部座標が演算される。好ましい実施形態においては、観測データを最もよく説明する局部座標を演算する、一般化ハフ（Hough）変換に類似した投票方式が採用される。代替的な実施形態においては、局部座標を最適化するいくつかの他の手法が可能であり、限定されないが、全数検索およびエネルギ関数の数値最小化が含まれる。
【００５９】
好ましい実施形態においては、対象の物体の局部座標を演算するために、一般化ハフ変換に類似した投票方式が採用される。その手法は、以下の、（ｅ１）局部座標の空間にであるパラメータ空間が一組のサンプルに区分されるステップと、（ｅ２）カウンタが各サンプルに取付けられるとともに、初期値をゼロに設定するステップと、（ｅ３）一組のシーンフィーチャポイントが、抽出されたシーンフィーチャポイントから選択されるステップと、（ｅ４）シーン強度データから抽出された各フィーチャポイントについて、モデルによるフィーチャポイントの説明をもたらすそれらすべての座標が決定されるステップとを含み、それは、それらの局部座標を用いて物体を変換する場合に、現在の基準ポイントが物体の表面上にあり、かつ現在のフィーチャポイントが物体と一致していることを意味する。その手法は、さらに、（ｅ５）フィーチャポイントを説明する各局部座標について、局部座標を含む対応するパラメータ空間サンプルのカウンタを増加させるステップと、（ｅ６）ステップ（ｅ４）および（ｅ５）を通してすべてのシーンポイントを処理した後に、局部座標空間の各サンプルについてのカウンタがパラメータ空間の部分を説明するシーンポイントの数に対応するステップとを含む。最大値を有するサンプルは、最良の手法においてシーンポイントを説明する局部座標に対応する。最終ステップにおいて、最大値を有するサンプル、またはしきい値を超えるカウンタの一組のサンプルが選択される。投票方式のいくつかの代替的な実施形態が可能であり、限定されないが、ステップ（ｅ４）において、すべてのシーンフィーチャではなくシーンフィーチャのサブセットのみを用いたり、ステップ（ｅ５）において、現在のフィーチャポイントの重みに依存する値だけカウンタを増加させたり、ステップ（ｅ６）において、ヒストグラム解析や他の方法を用いて、ピークのための投票空間を解析したりすることを含む。
【００６０】
好ましい実施形態においては、上記のステップ（ｃ１）におけるパラメータ空間の区分は、以下のようになされる。局部座標の第１の要素、すなわち、モデル表面上の位置を示す要素が、３Ｄ物体データから選択されたサンプルポイントの１つによって記述され、それにより、離散値へ黙示的に区分される。第２の要素、すなわち、基準ポイントの法線周りの回転角を記述する要素が、上述のサンプルポイントペアの角度値のサンプリングと同様に、可能性のある回転角の間隔［０°；３６０°］を等しいサイズのｎa個の間隔に分割することによって区分される。
【００６１】
ステップ（ｃ２）において、現在のシーンポイントを説明する局部座標の演算が以下のようになされる。（ｃ２．１）基準ポイントと現在のフィーチャポイントとの間のポイントペア記述子が、上述のように計算されかつサンプリングされ、（ｃ２．２）サンプルポイント記述子が、オフラインフェーズにおいて演算されたグローバルモデル記述子にアクセスするために用いられ、シーンポイントペアと同様のモデルポイントペアのリストを返し、（ｃ２．３）そのような各モデルポイントペアについて、式（３）を用いて、シーンおよびモデルのポイントペアを揃える局部座標が、シーンポイントペアおよびモデルポイントペアを用いて演算される。代替的な実施形態においては、グローバルモデル記述子は、ポイントペア記述子をサンプリングすることなく、類似のポイントペアを探索することができるニアレストネイバー法のようなデータ構造に基づき得る。他の代替的な実施形態においては、ポイントペア記述子を必要とせずに類似のポイントを直接探索することができるデータ構造が用いられ得る。
【００６２】
すべてのシーンポイントが処理された後に、ステップ（Ｃ４）は、対応するカウンタが最大値を有するパラメータ空間のサンプルを選択する。好ましい実施形態においては、最大値を有するカウンタ、すなわち、グローバル最大値が選択される。代替的な実施形態においては、特定のしきい値を超えるカウンタ値を有するすべてのサンプルが用いられ、そのしきい値は、固定であってもよいし、すべてのカウンタの最大値に依存してもよい。他の代替的な実施形態においては、グローバルしきい値の代わりに、カウンタ空間における局部ピークを検出するための方法が用いられ得る。
【００６３】
１つの局部座標が、選択された各サンプルから取得され、局部座標は、全３Ｄ姿勢（full 3D pose）に変換され、その各々は、対応する局部座標サンプルのカウンタ値とともに返される。カウンタ値は、３Ｄ姿勢のスコアである。
【００６４】
姿勢フィルタリングは、入力として、１つまたはより多くの基準ポイントから任意的にスコア値を用いて増加された姿勢候補（pose candidate）を採用するとともに、姿勢が正しいという可能性によって指示された、対象の物体の最もありそうな姿勢のみを含む一組のフィルタリングされた姿勢を出力する。一般的に、一組の姿勢は、ゼロ、１つまたはより多くの姿勢を含み得る。姿勢フィルタリングは、以下の、異なる目的を達成する。
【００６５】
（１）異常値の削除：基準ポイントについての姿勢候補は、基準ポイントが対象の物体の表面上に存在すると想定して演算される。その想定が正しくない場合、たとえば、対象の物体の表面には属しない、シーン内のクラッタポイントの場合、または、基準ポイントの法線が正しくない場合は、その基準ポイントについて結果として得られる姿勢候補は、物体の正しい姿勢に対応しない、正しくない姿勢を含むことになる。姿勢フィルタリングは、そのような正しくない姿勢を除去するように支援する。
【００６６】
（２）精度および安定性の増加：いくつかの基準ポイントが物体の表面上にある場合は、それらの各々についての姿勢候補は、物体の正しい姿勢に対応する姿勢を含んでいる。しかしながら、計算における数値誤差、データ内のノイズのため、および、上記のスキームに含まれるサンプリングステップのために、姿勢は正しい姿勢から若干異なる。姿勢フィルタリングは、異なる基準ポイントについて探索された全ての正しい姿勢をグルーピングするとともに、平均姿勢を演算し、したがって、最終結果の精度および安定性を増加する。
【００６７】
好ましい実施形態においては、姿勢フィルタリングは、以下のステップを含む。（ｄ１）姿勢同士間の近接関係を定義するステップであって、それらの回転部分の違いが固定のしきい値よりも小さい場合、およびそれらの並進ベクトルの差が固定のしきい値よりも小さい長さを有する場合に、姿勢が近接していると定義される。姿勢フィルタリングは、さらに、（ｄ２）各姿勢に対して、（（ｄ１）において定義されたような）近接する姿勢のすべてのスコアにわたる合計である新しいスコアを割り当てるステップと、（ｄ３）新しいスコアによって姿勢を並び替えるステップと、（ｄ４）最もよいスコアを有する姿勢を選択するステップと、（ｄ５）近接する姿勢にわったて平均することによって選択された姿勢を任意的に再演算するステップとを含む。代替的な実施形態においては、ステップ（ｄ１）における姿勢の近接関係は、２つの姿勢の下で、モデルからのポイントが有し得る最大偏差を、たとえば、以下のようにしきい値化することによって定義される。
【００６８】
【数４】
2014081347.tif 000006
【００６９】
ステップ（ｄ２）の代替的な実施形態においては、近接する姿勢のスコアの加重和としてスコアが計算され、その加重関数は２つの姿勢に依存する。（ｄ１）の他の代替的な実施形態においては、全ての姿勢が近接するとみなされ、上述のように加重関数が用いられる。さらに、ステップ（ｄ１）において、すべての姿勢が近接していないとみなされ、それによって、投票方式からの最高の単一のスコアを有する姿勢の選択を効果的にもたらす。代替的な実施形態においては、ｋ平均法（k-mean）またはミーンシフト法（mean shift）のような、クラスタリング方法が、最終姿勢の組を選択するために用いられ得る。ステップ（ｄ５）の好ましい実施形態においては、並進は、姿勢の並進ベクトルの平均を計算することによって平均化され、回転は姿勢の回転の平均ロドリゲスベクトルを演算することによって平均化される。ステップ（ｄ５）の代替的な実施形態においては、回転は、平均回転の計算に先立って、選択された姿勢の回転の逆数で構成される。これによって、平均回転の安定性が増加する。ステップ（ｄ５）のほかの代替的な実施形態においては、平均回転は、姿勢と平均姿勢とに依存するスコア関数を最適化することによって計算される。代替的な実施形態においては、本発明の範囲から逸脱することなく、上述した１つまたはより多くの目的を達成するためのいくつかのほかの方法が可能である。
【００７０】
姿勢改善は、シーン内のモデルのおよその姿勢に沿った、物体データとシーンデータとの組を入力として採用して、改善されたより精密なモデルの姿勢を出力する方法のクラスを記述する。姿勢改善方法は、典型的には、誤差関数を最小化することによって、シーンと物体との間の一致性を最適化する。姿勢改善の欠点は。初期のおよその姿勢が公知であり、かつその方法が十分に収束することが必要とされることである。上述のような我々の発明は、姿勢改善を用いて改善されるのに十分良好な、物体のおよその姿勢を演算する。姿勢改善の使用は任意的であり、本発明のユーザによって要求される精度に依存する。提案した方法の結果として得られる姿勢は、典型的には、グラスピング（grasping）のような物体操作に十分な精度を有する。しかしながら、表面検査、たとえば不正確に製造された部品を検出するために本発明を使用する用途は、姿勢改善のステップを必要とするかもしれない。姿勢改善は、３Ｄデータ、強度データまたはその双方を用いることができる。好ましい実施形態においては、反復最近点（ＩＣＰ）が、姿勢改善のために用いられる。ＩＣＰについて、シーン内の３Ｄポイントと物体表面との間の距離の和が最小化される。他の代替的な実施形態においては、期待値最大化が、姿勢改善のために用いられ得る。他の代替的な実施形態においては、シーンポイントと物体との間の距離を最小化する任意の方法が用いられ得る。他の代替的な実施形態においては、本発明の範囲から逸脱することなく、およその姿勢を改善するためのいくつかの他の方法が可能である。
【００７１】
スコアリングは、アルゴリズム内で計算されたような最終姿勢とともに３Ｄシーンデータおよび３Ｄ物体データを入力として採用し、計算された姿勢の品質または上記の姿勢の下でのシーンと物体との間の一致性を記述する、１つまたはより多くの値を出力する方法である。最終姿勢の品質および精度は、特に、シーン内における物体の存在（presence）と視認性（visibility）、ならびに、シーンデータおよびモデルデータの品質に依存する。スコアリングは、本方法のユーザに、結果として得られた姿勢を評価する手法を与え、その評価は後続の決定のための基礎となる。
【００７２】
最終姿勢をスコアリングするためのいくつかの代替的な実施形態が可能であり、その実施形態は、限定されないが、（ａ）投票方式において計算されたような姿勢のスコアを返す方法と、（ｂ）姿勢フィルタリングステップにおいて計算されたような積算スコアを返す方法と、（ｃ）結果の姿勢が与えられたモジュールでウェハ表面上にあるシーンポイントの数をカウントする方法と、（ｄ）シーンポイントと、結果の姿勢の下でモデルに近接したシーンポイントについてのモデル表面との間の距離の共分散（covariance）を演算する方法と、（ｅ）シーンデータを取得するために用いられたレンジセンサの画像へモデルを投影するとともに、画像領域においてモデルとシーンポイントとの間の距離を演算する方法と、（ｆ）ステレオ法（stereo method）の場合に必要とされるような、１つより多くの視野から、投影されたモデルポイントの視認性を検証するステップを追加的に有する（ｅ）の方法と、（ｇ）モデル表面ポイントの法線と対応するシーン表面ポイントとの間のドットプロダクツ（dot product）の和を演算する方法と、（ｈ）視認可能なモデル表面とトータルモデル表面との比率、または、視認可能なモデル表面と結果の姿勢が与えられたセンサカメラにおいて視認可能なモデル表面との間の比率を演算する方法と、（ｉ）シーンフィーチャと物体フィーチャとの間の類似性を演算する方法と、（ｊ）（ａ）から（ｉ）までのうちの２つまたはより多くの方法を用いるとともに、結果として得られる値を組み合わせる方法とを含む。本発明の範囲から逸脱することなく、ユーザの要求およびセンサの特性に依存する、スコアを演算する追加の手法も可能である。
【００７３】
好ましい実施形態においては、姿勢改善が用いられない場合には、方法（ｂ）において計算されたような姿勢フィルタリングステップにおいて計算されたスコアが返され、姿勢改善が用いられる場合には、方法（ｃ），（ｄ），（ｅ）または（ｆ）のスコアが返される。
【００７４】
図面および上述の説明において、本発明の詳細が例示されかつ説明されたが、そのような例示および説明は、制限的ではなく、例示的であるとみなされるべきである。変形および修正が、以下の特許請求の範囲内で、当業者によってなされてもよいことが理解されるであろう。特に、本発明は、上述の異なる実施形態からの特徴の任意の組合せを有するさらなる実施形態および下記に及ぶ。
【００７５】
さらに、請求項において、「備える（comprising）」の用語は、他の要素およびステップを排除するものではなく、不定冠詞「a」または「an」は複数を排除するものではない。単一のユニットは、請求項に記載された、いくつかの特徴の機能を満たし得る。特性および値に関連して、「本質的な」、「約」、「およそ」などの用語は、特に、まさにその特性、または、まさにその値も規定する。請求項中の参照符号は、範囲を限定するように解釈されるべきではない。
【符号の説明】
【００７６】
１０１  ２Ｄ表面、１０２  ３Ｄポイント、１０３  表面法線。
【図１】
2014081347.tif 000007
【図２】
2014081347.tif 000008
【図３】
2014081347.tif 000009