(57)【特許請求の範囲】
【請求項１】
対象物体の表面までの距離情報を取得する取得手段と、
前記距離情報に基づいて前記対象物体の概略形状を生成する生成手段と、
前記対象物体の画像を取得する画像取得手段と、
前記距離情報に基づいて前記対象物体の幾何特徴を抽出すると共に、前記画像に基づいて前記対象物体の幾何特徴を抽出する抽出手段と、
前記抽出手段により抽出された前記対象物体の幾何特徴を前記生成手段により生成された前記概略形状に配置する配置手段と、
を有する情報処理装置。
【請求項２】
前記生成手段は、前記距離情報に基づいて前記対象物体の３次元の概略形状を生成し、
前記抽出手段は、前記距離情報に基づいて前記対象物体の３次元の幾何特徴を抽出し、
前記配置手段は、前記対象物体の３次元の幾何特徴を前記３次元の概略形状に配置する請求項１記載の情報処理装置。
【請求項３】
前記画像取得手段は、前記対象物体の２次元画像を取得し、
前記抽出手段は、前記２次元画像に基づいて前記対象物体の２次元の幾何特徴を抽出し、
前記配置手段は、前記対象物体を撮像する撮像デバイスを基準に前記対象物体の２次元の幾何特徴を前記３次元の概略形状に投射した際の前記２次元の幾何特徴の前記３次元の概略形状における３次元位置情報を求め、前記３次元位置情報に応じて前記２次元の幾何特徴を更に前記３次元の概略形状に配置する請求項２記載の情報処理装置。
【請求項４】
前記抽出手段による幾何特徴の抽出方法を選択する選択手段を更に有し、
前記抽出手段は、前記選択手段により選択された抽出方法に応じて前記対象物体の幾何特徴を抽出する請求項１乃至３何れか１項記載の情報処理装置。
【請求項５】
前記対象物体を撮像するデバイスの位置姿勢情報に関連付けて前記配置手段により前記概略形状に配置された複数の幾何特徴を記憶領域に記憶する記憶手段を更に有する請求項１乃至４何れか１項記載の情報処理装置。
【請求項６】
対象物体を撮像するデバイスの位置姿勢情報に基づいて前記位置姿勢情報に類似する位置姿勢情報と関連付けて前記記憶領域に記憶されている複数の幾何特徴を選択する幾何特徴選択手段と、
前記幾何特徴選択手段により選択された複数の幾何特徴と、前記幾何特徴のそれぞれに対応する対象物体の幾何特徴と、の差が少なくなるように前記対象物体の位置姿勢を推定する推定手段と、
を更に有する請求項５記載の情報処理装置。
【請求項７】
前記幾何特徴選択手段により選択された複数の幾何特徴と、前記幾何特徴のそれぞれに対応する前記対象物体の幾何特徴と、の差が閾値より大きい場合、前記対象物体の複数の幾何特徴を、前記対象物体を撮像するデバイスの位置姿勢情報に関連付けて前記記憶領域に登録する登録手段を更に有する請求項６記載の情報処理装置。
【請求項８】
情報処理装置が実行する情報処理方法であって、
対象物体の表面までの距離情報を取得する取得ステップと、
前記距離情報に基づいて前記対象物体の概略形状を生成する生成ステップと、
前記対象物体の画像を取得する画像取得ステップと、
前記距離情報に基づいて前記対象物体の幾何特徴を抽出すると共に、前記画像に基づいて前記対象物体の幾何特徴を抽出する抽出ステップと、
前記抽出ステップにより抽出された前記対象物体の幾何特徴を前記生成ステップにより生成された前記概略形状に配置する配置ステップと、
を含む情報処理方法。
【請求項９】
コンピュータを、請求項１乃至７何れか１項記載の情報処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
対象物体の３次元の形状情報を利用して、対象を観察した距離情報や２次元画像から対象物体の位置姿勢を推定する技術がある。非特許文献１では、部品のＣＡＤモデルを基本形状に分解して、その基本形状を距離情報から探索する技術が開示されている。この技術によれば、３次元の形状を利用した位置姿勢推定では、３次元形状のことをモデルと呼び、対象を撮像した画像からモデルと幾何特徴との対応付けを行う。また、この技術では、対応付けられた幾何特徴の３次元空間での距離や、画面へ投影した差異を評価値として位置姿勢のパラメータを推定する。この位置姿勢推定の技術により、例えばロボットによる部品のピッキングのためのハンド位置を計算することができる。
モデルとして利用される３次元の形状情報は、製品の設計時に使われるＣＡＤモデルを利用することが一般的である。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】ＫＡＴＳＵＳＨＩ  ＩＫＥＵＣＨＩ，"Ｇｅｎｅｒａｔｉｎｇ  ａｎ  Ｉｎｔｅｒｐｒｅｔａｔｉｏｎ  Ｔｒｅｅ  ｆｒｏｍ  ａ  ＣＡＤ  Ｍｏｄｅｌ  ｆｏｒ  ３Ｄ−Ｏｂｊｅｃｔ  Ｒｅｃｏｇｎｉｔｉｏｎ  ｉｎ  Ｂｉｎ−Ｐｉｃｋｉｎｇ  Ｔａｓｋｓ，"Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｊｏｕｒｎａｌ  ｏｆ  Ｃｏｍｐｕｔｅｒ  Ｖｉｓｉｏｎ，Ｖｏｌ．１，Ｎｏ．２，ｐｐ．１４５−１６５，１９８７．
【発明の概要】
【発明が解決しようとする課題】
【０００４】
位置姿勢推定の際に、対象物体のＣＡＤモデルが必ず用意できるとは限らない。非特許文献１のような位置姿勢推定では、位置姿勢のパラメータにより剛体変換したＣＡＤモデルと観測対象との差を小さくするように位置姿勢のパラメータを推定するために、ＣＡＤモデルそのものが無い場合には推定そのものができない。
本発明は、ＣＡＤモデルが無い対象物体の位置姿勢推定を、少ない手間で実現するための技術を提供することを目的とする。
【課題を解決するための手段】
【０００５】
そこで、本発明の情報処理装置は、対象物体の表面までの距離情報を取得する取得手段と、前記取得手段により取得された前記距離情報に基づいて前記対象物体の概略形状を生成する生成手段と、前記取得手段により取得された前記距離情報に基づいて前記対象物体の幾何特徴を抽出する抽出手段と、前記抽出手段により抽出された前記対象物体の幾何特徴を前記生成手段により生成された前記概略形状に配置する配置手段と、を有する。
【発明の効果】
【０００６】
本発明によれば、ＣＡＤモデルが無い対象物体の位置姿勢推定を、少ない手間で実現するための技術を提供することができる。
【図面の簡単な説明】
【０００７】
【図１】情報処理装置のハードウェア構成の一例を示す図である。
【図２】実施形態１の情報処理装置のソフトウェア構成等の一例を示す図である。
【図３】実施形態１の情報処理の一例を示すフローチャートである。
【図４】実施形態２の情報処理装置のソフトウェア構成等の一例を示す図である。
【図５】実施形態２の情報処理の一例を示すフローチャートである。
【図６】実施形態３の情報処理装置のソフトウェア構成等の一例を示す図である。
【図７】システム構成の一例を示す図である。
【発明を実施するための形態】
【０００８】
以下、本発明の実施形態について図面に基づいて説明する。
【０００９】
＜実施形態１＞
図１は、情報処理装置１００のハードウェア構成の一例を示す図である。
図１において、ＣＰＵ１０１は、システムバス１０４に接続された各種デバイスの制御を行う。
ＲＯＭ１０２は、ＢＩＯＳのプログラムやブートプログラムを記憶する。
ＲＡＭ１０３は、ＣＰＵ１０１の主記憶装置として使用される。
キーボードコントローラ（ＫＢＣ）１０５は、マウス等のポインティングデバイス（ＰＤ）１０９や、キーボード（ＫＢ）１１０からの情報等の入力に係る処理を行う。
表示制御部（ＣＲＴＣ）１０６は、内部にビデオメモリを有し、ＣＰＵ１０１からの指示に従ってそのビデオメモリに描画すると共に、ビデオメモリに描画されたイメージデータをビデオ信号としてＣＲＴ１１１に出力する。なお、図１において表示装置としてＣＲＴ１１１を例示しているが、液晶表示装置等、その表示装置の種類は問わない。
ディスクコントローラ（ＤＫＣ）１０７は、ハードディスク（ＨＤＤ）１１２へのアクセスを行う。
ネットワークインタフェースカード（ＮＩＣ）１０８は、ネットワークに接続し、ネットワークを介しての情報通信を行うものである。
なお、ＨＤＤ１１２には、ＯＳのプログラムやＯＳ上で動作する各種アプリケーションのプログラム等が格納される。ＨＤＤ１１２は、記憶領域の一例である。
上記構成において、情報処理装置１００の電源がＯＮになると、ＣＰＵ１０１は、ＲＯＭ１０２に格納されたブートプログラムに従って、ＨＤＤ１１２からＯＳのプログラムをＲＡＭ１０３に読み込み、処理を実行することによって、各装置の機能を実現する。
つまり、情報処理装置１００のＣＰＵ１０１がプログラムに基づき処理を実行することによって、情報処理装置１００のソフトウェア構成及び後述するフローチャートの処理が実現される。
【００１０】
図２は、実施形態１の情報処理装置１００のソフトウェア構成等の一例を示す図である。
情報処理装置１００は、少なくとも、ソフトウェア構成として、距離情報取得部１０と、２次元画像取得部２０と、概略形状生成部３０と、幾何特徴抽出部４０と、幾何特徴選択部５０と、幾何特徴配置部６０と、視点別特徴保持部７０と、を含む。
距離情報取得部１０は、プロジェクタ等により取得された対象物体を含む距離画像から対象物体の表面までの距離情報を取得する。例えば、プロジェクタは、構造的なパターンを対象物体に投影して、対象面に反射した画像を取得する。距離情報取得部１０は、この画像からパターンを復号することによりプロジェクタの投影位置を特定する。そして、距離情報取得部１０は、撮像位置と投影位置との関係から三角測量により対象物体の距離を計算し、距離情報を取得する。但し、このことは本実施の形態を制限するものではなく、距離情報取得部１０は、他の方法を用いて距離情報を取得するようにしても良い。例えば、距離情報取得部１０は、ラインレーザーを利用して、対象を直線運動させたときのレーザーの反射位置を計測し、三次元の位置情報に変換した距離情報を取得するようにしても良い。
２次元画像取得部２０は、撮像デバイスで撮像された対象物体を含む２次元画像の画像データを取得する。撮像デバイスは、例えば、レンズ歪み等のカメラパラメータを事前校正したＣＣＤやＣＭＯＳ等の撮像素子によるカメラ等である。２次元画像は、例えば、３色のカラーフィルターを利用したカラー画像である。また、情報処理装置１００が２台以上のカメラと通信可能であれば、カメラ間の相対的な位置姿勢を事前に校正しておくことでステレオカメラを構成することができる。複数の視点の画像を利用することで、部品同士の遮蔽による影響を低減することができる。
【００１１】
概略形状生成部３０は、距離情報取得部１０で得られた距離情報から対象物体の３次元形状を再構成する。距離情報を格子状に配置された対象までの距離値とすれば、概略形状生成部３０は、隣接する格子点を頂点とするメッシュを生成することができる。また、概略形状生成部３０は、複数視点から撮像された結果の距離情報を統合しても良い。この場合、概略形状生成部３０は、距離情報の距離点群同士の相対的な位置姿勢を、ＩＣＰ（Ｉｔｅｒａｔｉｖｅ  Ｃｌｏｓｅｓｔ  Ｐｏｉｎｔｓ）等のアルゴリズムを用いることで算出することができる。また、概略形状生成部３０は、ボクセルの格子点を利用してメッシュを生成する方法や、点群に対してドロネー三角形によりメッシュを生成する方法等を用いることができる。予め対象物体の形状メッシュデータが入手可能な場合には、概略形状生成部３０は、形状メッシュデータを利用して概略形状を生成しても良い。例えば、概略形状生成部３０は、対象物体の形状メッシュデータを、ネットワーク等を介してダウロードし、取得して、ＨＤＤ１１２等に記憶し、利用する。
【００１２】
幾何特徴選択部５０は、２次元画像や距離情報に含まれる対象物体が撮像されている範囲にある幾何特徴の抽出方法を選択する。例えば、幾何特徴選択部５０は、予め設定された抽出方法やＣＲＴ１１１、ＫＢ１１０等を介して利用者により設定された抽出方法を幾何特徴抽出部４０で利用する抽出方法として選択する。２次元画像から幾何特徴を抽出する方法としては、以下のようなものがある。コーナー点を抽出するＨａｒｒｉｓ  オペレータ、エッジを抽出するＳｏｂｅｌやＣａｎｎｙオペレータ、テクスチャの密度や方向を抽出する方法、色のヒストグラムや局所的な領域の勾配ヒストグラムを用いる方法等である。また、距離情報から幾何特徴を抽出する方法としては、注目領域の周辺の法線ベクトルを円柱に投影したときのヒストグラムによる識別や、２点間の奥行きの差を用いる方法や、局所領域の曲率を計算する方法等ある。幾何特徴選択部５０は、複数の抽出方法を選択しても良い。
【００１３】
幾何特徴抽出部４０は、幾何特徴選択部５０により選択されている幾何特徴抽出方法に基づいて対象物体が撮像されている２次元画像、距離情報に対して画像処理を行う。そして、幾何特徴抽出部４０は、その結果を２次元画像であれば幾何特徴の２次元位置情報、距離情報であれば幾何特徴の３次元位置情報として複数の幾何特徴の抽出を行う。なお、複数の幾何特徴抽出方法を用いることで、２次元画像、距離情報、共に扱うことができたり、幾何特徴の対応付けの精度を向上させることができたりする。
【００１４】
幾何特徴配置部６０は、幾何特徴抽出部４０で抽出された幾何特徴の位置情報と概略形状生成部３０で生成された概略形状との関連付けを行う。例えば撮像デバイスが対象物を撮像した場合、平面に模様が描かれている台座部や、指標となる構造物が一緒に撮像する。このようにすることで、撮像画像より撮像時の撮像デバイスの位置姿勢を求めることができる。幾何特徴配置部６０は、撮像時の撮像デバイスの位置姿勢と概略形状生成部３０で生成した概略形状との剛体変換を、指標が配置されている環境に変更が無く対象物体が動かなければ、行うことができる。ここで、剛体変換は、オブジェクト（対象物）の位置と方向とは変更しても形状は変更しない座標変換のことである。距離情報から抽出された幾何特徴の３次元位置情報は、撮像デバイス中心の座標系となっている。したがって、幾何特徴配置部６０は、３次元位置情報に先ほどの撮像時の撮像デバイスの位置姿勢の逆変換を乗算することで、対象部品の基準座標系に変換することができる。これにより、様々な視点から撮像された距離情報から抽出された幾何特徴の３次元位置情報を、対象物体のモデル座標系基準の３次元位置情報として統合することができる。２次元画像から抽出された幾何特徴は画面上の位置と撮像デバイス原点とを結ぶ直線上に特徴点が存在する。そこで、幾何特徴配置部６０は、撮像デバイス原点と幾何特徴の画面上の位置とを結ぶ直線と、概略形状生成部３０で生成された概略形状のメッシュモデルの各ポリゴン面との交点があるかどうかの判定を行い、交点の中で最も撮像デバイス原点に近い位置を求める。なお、メッシュモデルは、撮像デバイスの位置姿勢とモデル座標系とに応じて配置しておく。ポリゴン面との交点は撮像デバイス座標系（カメラ座標系）なので、撮像デバイスの撮像時の位置姿勢の逆変換を乗じることで、モデル座標系での位置に変換できる。以下、概略形状に幾何特徴が配置されたものを幾何モデルともいう。
【００１５】
視点別特徴保持部７０は、抽出された幾何特徴を保持するデータベースをＨＤＤ１１２等に登録、管理する。視点別特徴保持部７０は、幾何特徴配置部６０で用いられた撮像デバイスの位置姿勢をテーブルのキーとして、モデル座標系に変換された各幾何特徴の３次元位置情報をリストとするデータベースを構築し、管理する。撮像デバイスと対象物体との相対的な位置姿勢の情報を保持しておくことで、実際に観察される幾何特徴のみを効率的に登録することができる。視点別特徴保持部７０は、登録する際の撮像デバイスの位置姿勢を、できるだけ重複がないようにする。
【００１６】
以下、情報処理装置１００が実行する実施形態１の情報処理の一例を図３に示す。
ステップＳ１０において、距離情報取得部１０は、対象物体を含む距離画像を取得し、前記距離画像から対象物体の表面までの距離情報を取得する。例えば、距離情報取得部１０は、対象物体に投影されたパターン光に基づき、パターンのそれぞれの位置を特定し、撮像デバイスで撮像した位置との対応から三角測量により対象物体の距離を計算し、距離情報を取得する。
ステップＳ２０において、２次元画像取得部２０は、撮像デバイスで撮像された対象物体を含む２次元画像の画像データを取得する。
ステップＳ３０において、概略形状生成部３０は、距離情報取得部１０で得られた距離情報から対象物体の３次元形状を再構成する。一方向からの距離情報では対象物体の見えていない面等も存在するため、概略形状生成部３０は、異なる視点から撮像された距離画像から取得された距離情報を張り合わせて概略形状を生成する。
ステップＳ４０において、幾何特徴選択部５０は、距離情報や２次元画像からの幾何特徴の抽出方法を選択する。例えば、幾何特徴選択部５０は、予め設定された抽出方法やＣＲＴ１１１、ＫＢ１１０等を介して利用者により設定された抽出方法を幾何特徴抽出部４０で利用する抽出方法として選択する。ここで、情報処理装置１００は、位置姿勢推定に用いられる幾何特徴だけを抽出すれば良い。したがって、幾何特徴選択部５０は、位置姿勢推定に必要な幾何特徴だけを抽出する幾何特徴の抽出方法を選択する。
【００１７】
ステップＳ５０において、幾何特徴抽出部４０は、幾何特徴選択部５０により選択されている幾何特徴抽出方法に基づいて対象物体が撮像されている２次元画像から２次元の幾何特徴を抽出する。以下、説明の簡略化のため、２次元の幾何特徴として、エッジ上の点とその方向とを例に説明を行う。
ステップＳ６０において、幾何特徴抽出部４０は、幾何特徴選択部５０により選択されている幾何特徴抽出方法に基づいて対象物体を含む距離画像から３次元の幾何特徴を抽出する。以下、説明の簡略化のため、３次元の幾何特徴として、面上の点とその法線とを例に説明を行う。
【００１８】
ここで、位置合わせをする際には、推定する位置姿勢に応じて、位置の変換を行うため、エッジは２次元ではなく３次元の点でなくてはならない。
したがって、ステップＳ７０において、幾何特徴配置部６０は、ステップＳ５０で抽出されたエッジの画像上の位置をステップＳ３０で生成された概略形状に投影した際の３次元の位置を計算する。より具体的に説明すると、幾何特徴配置部６０は、対象物体を撮像する撮像デバイスを基準に対象物体の画像上のエッジの位置を３次元の概略形状に投射した際のエッジの３次元の概略形状における３次元位置情報を求める。
ステップＳ８０において、視点別特徴保持部７０は、撮像デバイスの位置姿勢の情報（位置姿勢情報）をテーブルのキーとして、ステップＳ６０で抽出された３次元の幾何特徴とステップＳ７０で３次元位置情報を求めた２次元の幾何特徴とを登録する。
【００１９】
本実施形態の処理によれば、対象物体の２次元画像や距離情報から幾何特徴を抽出し、位置姿勢推定のための幾何モデルを生成することができる。即ち、対象物体を復元可能なモデルを生成するわけではないため、少ない手間でＣＡＤモデルが無い対象物体の位置姿勢推定を実現するための技術を提供することができる。
【００２０】
＜実施形態２＞
図４は、実施形態２の情報処理装置１００のソフトウェア構成等の一例を示す図である。
情報処理装置１００は、ソフトウェア構成として、実施形態１の構成に加え、視点別特徴選択部８０と、位置姿勢推定部９０と、を含む。
後述する位置姿勢推定部９０における位置姿勢推定では、生成された幾何モデルを用いて画像中の対象物体の位置姿勢が求められる。対象物体が３次元形状である場合、物体自身による遮蔽や反対側の面を観測することができないので、予め観察視点からの観測される特徴量のみを列挙しておくことで位置姿勢推定の効率を良くすることができる。
視点別特徴選択部８０は、位置姿勢推定が実行される際に、撮像デバイスと対象物体との位置姿勢情報が得られたときに、視点別特徴保持部７０に保持されているテーブルから登録時の位置姿勢情報であるキーとの類似度を計算する。そして、視点別特徴選択部８０は、類似度の高い位置姿勢情報を候補として選択する。視点別特徴選択部８０は、類似度の計算として、以下の処理を行う。即ち、視点別特徴選択部８０は、問い合わせている位置姿勢情報と、テーブルに登録されているキーである位置姿勢情報とのうち、モデル原点から撮像デバイス原点へ向かうベクトルを求め、単位ベクトル同士の内積を計算する。そして、視点別特徴選択部８０は、より大きい値を有するものを少なくとも１つ以上求める。類似度の高い位置姿勢情報を複数、利用する場合には、視点別特徴選択部８０は、内積に応じて幾何特徴の重みを付与することで、幾何特徴の線形補間を行うことができる。
【００２１】
又は、視点別特徴選択部８０は、コンピュータグラフィックスの描画用機能を用いて登録されている幾何特徴を選択しても良い。テーブルとして保持している他の視点のデータを利用する場合、視点別特徴選択部８０は、概略形状生成部３０により生成された概略形状を推定する位置姿勢情報に合わせて撮像デバイス視点でメッシュとして描画を行い、幾何特徴の位置に指標となる図形を描画する。各幾何特徴の指標となる図形が、メッシュの裏側や他の部位に遮蔽されている場合、視点別特徴選択部８０は、グラフィックスの奥行き判定により観察できないことを利用することで、観察される可能性の高い幾何特徴のみをテーブルから抽出できる。
これにより、位置姿勢推定部９０における位置姿勢推定で利用される幾何特徴を見えている状態に応じて利用できるようにすることができる。更に、幾何特徴は局所的な平面を既定している場合が多く、観察方向の変化によっては検出の位置がずれる場合がある。それらの位置を補正する方法として、例えば、視点別特徴選択部８０は、バンドル調整法を利用することができる。バンドル調整法は、複数視点で観察される注目点の画面への投影誤差を最小化するように、撮像デバイスの位置姿勢情報と注目点の３次元位置とを補正するものである。本実施形態の処理においても複数の視点で観測された情報があるので、バンドル調整法を適用することができる。これにより、幾何特徴の３次元位置の曖昧性を低減することができ、位置姿勢推定の幾何モデルとして精度を向上することができる。
【００２２】
位置姿勢推定部９０は、視点別特徴選択部８０により選択された複数の幾何特徴と、前記幾何特徴のそれぞれに対応する対象物体の幾何特徴と、の差が少なくなるように前記対象物体の位置姿勢を推定する。即ち、位置姿勢推定部９０は、幾何特徴抽出部４０で抽出された幾何特徴と対象の概略位置姿勢に基づいて視点別特徴選択部８０で選択されたモデル座標系の幾何特徴との位置に基づいて、幾何モデルの撮像デバイス座標系の位置姿勢情報をパラメータとして最適化計算を行う。位置姿勢推定部９０は、３次元の幾何特徴の位置に関して、推定している位置姿勢情報の６パラメータを行列表現したものを乗じることで、撮像デバイス座標系に変換することができる。位置姿勢推定部９０は、幾何特徴抽出部４０で抽出された幾何特徴との差を評価値として、前記差を小さくするように位置姿勢情報のパラメータを推定する。推定する方法としては、非線形最適化法であるガウス・ニュートン法等を適用すれば良い。また、３次元の位置同士の対応が既知であれば、ＤＬＴ（Ｄｉｒｅｃｔ  Ｌｉｎｅａｒ  Ｔｒａｎｓｆｏｒｍ）等の固有値分解を用いた方法でも位置姿勢情報を求めることができる。また、ノイズが含まれている場合には、最小二乗推定の推定精度が低下するため、Ｍ推定等のロバスト推定法による計測情報の分散による重み付けを行うことも有効である。更に、複数の幾何特徴を利用できる場合、位置姿勢情報のパラメータを推定する３点以上の点の組み合わせをランダムに選択し、そこから複数のセットによるパラメータのうち、最も残差が少ないパラメータを利用するＲＡＮＳＡＣ法を用いることも効果的である。
【００２３】
以下、情報処理装置１００が実行する実施形態２の情報処理の一例を図５に示す。
図５のステップＳ１０〜ステップＳ８０の処理は、実施形態１の図３のステップＳ１０〜ステップＳ８０の処理と同様である。
ステップＳ９０において、視点別特徴選択部８０は、幾何特徴の分布の方向や幾何特徴周辺の輝度分布等を用いて対象物体の観察位置姿勢情報の概略値を算出し、ステップＳ８０で登録されたテーブルのキーである位置姿勢情報に類似するレコードを検索する。前記レコードには、幾何特徴を登録した際の２次元の幾何特徴と距離情報に係る幾何特徴の複数の情報が格納されているものとする。
ステップＳ１００において、位置姿勢推定部９０は、ステップＳ９０で参照した幾何特徴のリストのそれぞれの三次元位置を、推定中の位置姿勢情報の値を用いて座標変換する。２次元画像から得られた幾何特徴に対応付けするには、位置姿勢推定部９０は、三次元空間をカメラの座標系に合わせるように射影変換を行えば良い。位置姿勢推定部９０は、射影変換された幾何特徴とステップＳ５０で抽出された幾何特徴の画面上で近いもの同士を対応づけする。距離情報に対しても同様で、位置姿勢推定部９０は、距離の近いものを対応付けする。対応づけられた登録された幾何特徴と観察された幾何特徴とは、対応する点の距離を小さくする指標を用いて位置姿勢情報のパラメータを推定することができる。これらのアルゴリズムは、一般的にＩＣＰと呼ばれる開示された技術を利用すれば良い。一般には、座標変換は非線形であるため、線形近似をして反復解法するガウス・ニュートン法等で解を求めることができる。
【００２４】
本実施形態の処理によれば、ＣＡＤモデルが無くとも、生成した幾何モデルを用いて対象物体の位置姿勢推定を行うことができる。
【００２５】
＜実施形態３＞
ロボット等の生産自動化を行う場合に、新しい部品が追加されたり、ロットごとに形状が多少異なる場合に変更を加えたり、位置姿勢推定の形状モデルが自動的に追加・更新されると利便性が向上する。
図６は、実施形態３の情報処理装置１００のソフトウェア構成等の一例を示す図である。
情報処理装置１００は、ソフトウェア構成として、実施形態２の構成に加え、幾何特徴対応探索部９５を含む。
幾何特徴対応探索部９５は、部品のカテゴリとして未知のものや、これまでに登録されていない視点からの幾何特徴であるかどうかを判断する。幾何特徴対応探索部９５は、新たな部品であれば、位置姿勢推定の幾何モデルを新規に作成し、これまでの修正で済む範囲であれば、既存の位置姿勢計測の幾何モデルを更新するよう制御する。そのために幾何特徴対応探索部９５は、登録されている全ての幾何特徴との相関計算を行い、数量等により正規化した値を尤度として計算し、ユーザー又はシステムにより設定されている閾値を越えるかどうかで処理を行う。幾何特徴対応探索部９５は、視点別特徴選択部８０から視点別特徴保持部７０に登録されている幾何特徴と３次元位置の配置の差異を計算する。幾何特徴対応探索部９５は、最も差の少ない幾何特徴を用いたときの差が設定された閾値より大きい場合には、位置姿勢用の特徴点のデータを、新規又は更新されたものとして、視点別特徴保持部７０に、検出された幾何特徴を追加登録する。幾何特徴対応探索部９５は、これまでに対象となっている以外の未登録のカテゴリの部品の場合、全体の尤度が低いことから、位置姿勢推定のモデル構造を新規に生成して、カテゴリと共に登録すれば良い。事前に位置姿勢情報が登録されて無い場合、幾何特徴対応探索部９５は、新たに位置姿勢情報をキーとして登録して、検出した幾何特徴の３次元位置をデータとして追加する。また、観察方向として既に登録されている視線方向に対して、視線のなす角度が大きい場合、幾何特徴対応探索部９５は、部品の形状が変更されたものとして、差が大きい幾何特徴のデータを削除し、検出した新しい幾何特徴の３次元位置を追加する。このことで、データを更新することができる。
【００２６】
本実施形態の処理によれば、位置姿勢推定を実行中の距離情報・２次元画像を用いてデータを更新することができるため、利用者がモデルを生成するための指示を与えなくても自動的に位置姿勢推定モデルが更新され手間を減らすことができる。また、形状差異による位置姿勢推定モデルの精度を低減することができるため、形状差異による位置姿勢推定の失敗が減少し、システムの停止時間を短縮することができる。
【００２７】
＜実施形態４＞
上述した実施形態の処理をロボットによるバラ積みピッキングや組立作業のシステムとして利用することで、従来のＣＡＤによる設計情報を使わなくても対象部品のピッキングが可能となり、教示の手間の低減や、把持動作に対して安定性を向上することができる。
本実施形態の位置決め機構としてのロボットアームによるシステムの構成図を図７に示す。
情報処理装置１００は、ロボットアーム６００のエンドエフェクタ部に装着された撮像デバイス５１０とプロジェクタ５２０とに接続されている。プロジェクタ５２０から空間コード化パターンや、ランダムドットパターン等の投影位置が識別するコードを含むパターン図形を対象物体７００に投影する。投影された反射像を撮像デバイス５１０で撮像する。また、撮像デバイス５１０は、パターンを投影しない、又は全点灯したときの反射像を２次元画像として撮像する。情報処理装置１００は、撮像デバイス５１０及びプロジェクタ５２０を制御する。視点別特徴保持部７０のテーブルを、外部記憶装置に登録しておくことで、永続的にデータを利用することが可能となる。ロボットアームの手先位置は、ロボットアームのエンコーダ情報を用いれば計算することができるので、その計算結果を撮像デバイスの位置姿勢情報として利用することができる。
位置姿勢推定部９０により推定された対象物体の位置姿勢情報のパラメータは、エンドエフェクタのハンド部と撮像デバイスとの相対位置姿勢を事前に校正して求めておくことで、ロボットアームの手先位置に変換できる。情報処理装置１００は、その変換後のロボットアームの手先位置をロボットアーム６００の手先位置指令値として伝えることで、現在の位置からロボットアームを動かして対象部品を把持することができる。計測対象の形状が未知の場合、情報処理装置１００は、対象物体を複数の視点で観察できるようにロボットアーム位置を動かして、距離情報と２次元画像を取得して、位置姿勢推定用の幾何特徴のテーブルを生成することができる。これにより、ＣＡＤモデルが無い場合でも、一連の手続きにより位置姿勢推定が可能となる。
【００２８】
＜その他の実施形態＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給する。そして、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読み出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００２９】
上述した各実施形態の処理によれば、対象物体の位置合わせの技術を製造ラインの現場で利用する際に、対象物体の３次元情報としてＣＡＤモデルが利用できない場合であっても、位置姿勢推定が可能となる。例えば、既製の汎用部品で２次元の図面しか存在しない場合や、設計部門の設計情報が製造部門で機密のため利用できない場合等、対象部品のＣＡＤモデルがそもそも利用できない場合でも、位置姿勢計測用のモデルを作ることができる。また、既にＣＡＤデータがある場合であっても、概略形状生成部においてメッシュのデータとして本装置の構成を変更せずに利用することができる。また、対象部品に対して複数の部品が組み付けられた複数の部品が結合した状態等、設計時のＣＡＤモデルの３次元形状とは異なる場合には結合した状態のモデルを改めてＣＡＤのデザインツールで再配置を行う手間がかかる。そのため、上述した実施形態の手法により結合した状態の一つの位置姿勢推定のモデルとして登録することで手間を解消することができる。
更に、リバースエンジニアリングによる形状再構成には、高価な撮像機材を現場に搬入し、撮像のための手続きやアプリケーションの習熟が必要で、製造ラインで汎用的に用いることがコスト面で困難であったことが解消される。
よって、ＣＡＤモデルが無い対象物体の位置姿勢推定を、少ない手間で実現するための技術を提供することができる。
【符号の説明】
【００３０】
１００  情報処理装置
１０１  ＣＰＵ
１１２  ＨＤＤ
【図１】
0006584139.tif 000002
【図２】
0006584139.tif 000003
【図３】
0006584139.tif 000004
【図４】
0006584139.tif 000005
【図５】
0006584139.tif 000006
【図６】
0006584139.tif 000007
【図７】
0006584139.tif 000008