(57)【特許請求の範囲】
【請求項１】
物品の３次元モデルを生成するモデル生成装置（Ｂ００）であって、
３次元空間上に任意の姿勢でそれぞれ配置された複数の物品を３次元計測し、計測データを取得する３次元計測機（Ａ０４）と、
該３次元計測機により計測された前記複数の物品の計測データを、一つの物品を複数の仮想的な計測位置から計測したモデル計測データの集合とみなし、前記複数の仮想的な計測位置のそれぞれについて、対応するモデル計測データを抽出するモデル計測データ抽出部（Ｂ１１）と、
該モデル計測データ抽出部により抽出したモデル計測データを統合することにより前記物品の３次元モデルを生成するモデル計測データ統合部（Ｂ１２）と、を備えることを特徴とするモデル生成装置。
【請求項２】
請求項１に記載のモデル生成装置であって、
前記モデル計測データ抽出部は、
前記計測データを教示画面に出力する描画部（Ｃ１１）と、
複数の物品から選択された一つの物品の領域を、前記計測データが出力された前記教示画面上で設定する領域設定部（Ｃ１２）と、
該領域設定部によって設定された前記領域内に存在する計測データを基に、仮モデルを生成する仮モデル生成部（Ｃ１３）と、
前記仮モデルを用いて前記複数の物品の残りの物品の位置姿勢を検出する検出部（Ｃ１４）と、を備え、
前記モデル計測データ抽出部は前記検出部によって検出された前記残りの物品の位置姿勢を基にモデル計測データを抽出し、
前記モデル計測データ統合部は前記モデル計測データを前記仮モデルに統合することで３次元モデルを生成することを特徴とするモデル生成装置。
【請求項３】
請求項２に記載のモデル生成装置であって、
前記検出部は、前記仮モデルの初期姿勢に近い姿勢の物品から順番に検出し、
前記モデル計測データ抽出部は、前記検出部の検出結果に基づき、前記仮モデルの初期姿勢に近い順にモデル計測データを抽出し、
前記モデル計測データ統合部は、前記モデル計測データが抽出される毎に、逐次的にモデル計測データを前記仮モデルに統合することを特徴とするモデル生成装置。
【請求項４】
請求項２または請求項３に記載のモデル生成装置であって、前記モデル計測データ抽出部が、前記検出部の検出結果の成否を操作者が指示するための検出成否指示部（Ｃ１５）を備えることを特徴とするモデル生成装置。
【請求項５】
請求項２から４のいずれか一項に記載のモデル生成装置であって、前記モデル計測データ抽出部は、前記検出部によって検出された物品の位置姿勢の近傍に存在する前記計測データを基に前記モデル計測データを抽出することを特徴とするモデル生成装置。
【請求項６】
請求項２から５のいずれか一項に記載のモデル生成装置であって、
前記モデル計測データ抽出部が誤った計測データをモデル計測データとして不正に抽出すると共に前記モデル計測データ統合部が不正に抽出された不正モデル計測データを前記仮モデルに統合した場合であっても、前記モデル計測データ統合部が、前記計測データと前記仮モデルとの整合性を基に、前記仮モデルから前記不正モデル計測データを抽出して除去する不正モデル計測データ除去部（Ｃ１６）を備えることを特徴とするモデル生成装置。
【請求項７】
請求項２から６のいずれか一項に記載のモデル生成装置であって、
前記モデル計測データ統合部が、前記モデル計測データを前記仮モデルに統合する際に、前記モデル計測データと前記仮モデルの間に重複部が存在する場合には、前記モデル計測データから該重複部を除去した後で、前記モデル計測データを前記仮モデルに統合することを特徴とするモデル生成装置。
【請求項８】
請求項２から６のいずれか一項に記載のモデル生成装置であって、
前記モデル計測データ統合部が、前記モデル計測データを前記仮モデルに統合する際に、前記モデル計測データと前記仮モデルの間に重複部が存在する場合には、前記モデル計測データの該重複部を基に仮モデルの該重複部を更新することを特徴とするモデル生成装置。
【請求項９】
請求項２から８のいずれか一項に記載のモデル生成装置であって、前記モデル計測データ統合部が、前記検出部によって検出された物品の位置姿勢から算出される前記仮想計測位置及びモデル計測データの少なくとも一方をパラメータとする最適化を行い、生成されるべきモデルの高精度化を行うことを特徴とするモデル生成装置。
【請求項１０】
請求項１から９のいずれか一項に記載のモデル生成装置であって、
前記３次元計測機が、３次元空間上に配置された複数の物品を３次元計測した後に、物品の積載状態を変更し、前記複数の物品の新たな３次元計測を行うことを一回以上繰返し、前記モデル計測データ抽出部及び前記モデル計測データ統合部が、複数回の３次元計測により得られた複数の計測データを基に前記物品の３次元モデルを生成することを特徴とするモデル生成装置。
【請求項１１】
請求項１から１０のいずれか一項に記載のモデル生成装置と、
前記モデル生成装置によって生成された３次元モデルと前記３次元計測機で取得された計測データとの対応付けに基づいて、前記物品の位置姿勢を算出する位置姿勢算出部（Ｂ２０）と、
を備えることを特徴とする位置姿勢算出装置。
【請求項１２】
前記物品をハンドリング可能なロボット（Ａ０１）と、
請求項１から１０のいずれか一項に記載のモデル生成装置と、
前記モデル生成装置によって生成された３次元モデルと前記３次元計測機で取得された計測データとの対応付けに基づいて、前記物品の位置姿勢を算出する位置姿勢算出部（Ｂ２０）とを備え、
前記位置姿勢算出部によって算出された前記物品の位置姿勢に基づいて、前記ロボットが前記物品をハンドリングすることを特徴とするハンドリングロボット装置（Ａ００）。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、対象物品を３次元計測機で計測し、計測データを用いて対象物品の３次元モデルを生成するモデル生成装置に関する。さらに、本発明は、対象物品の３次元モデルと計測データに基づいて、対象物品の位置姿勢を算出する位置姿勢算出装置に関する。さらに、本発明は、対象物品の３次元モデルと計測データに基づいて、対象物品の位置姿勢を算出し、算出された物品の位置姿勢に基づいてロボットが対象物品をハンドリングするハンドリングロボット装置に関する。
【背景技術】
【０００２】
３次元計測機で計測された計測データと３次元モデルとを照合して、対象物品（以下、単に「物品」と呼ぶ場合がある）の位置姿勢を算出する装置では、対象物品などの３次元モデルを事前に作成する必要がある。そして、３次元モデルは、主に以下の二つの方法により作成される。
【０００３】
第一の方法においては、対象物品のＣＡＤデータを使用する。特許文献１は、ＣＡＤデータから位置姿勢推定用の３次元モデルを生成する技術を開示している。特許文献１においては、ＣＡＤデータからその対象物品を３次元計測したときに取得できると期待できる計測データを生成し、生成された計測データに基づいて、位置姿勢推定用の３次元モデルを生成している。
【０００４】
第二の方法においては、対象物品を実際に３次元計測機で計測して３次元モデルを生成する。しかしながら、一般的な３次元計測機は、上方に露出している物品の表面のみを計測する。このため、様々な物品位置姿勢を算出するためには、予め様々な視点から物品を計測しておく必要がある。特許文献２においては、物品の姿勢を少しずつ変化させながら３次元計測と位置姿勢の算出とを繰返し、算出された位置姿勢に基づいて各計測データを統合することで物品の３次元モデルを生成している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１０−０７９４５３号公報
【特許文献２】特開２０１０−１１３３９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、前述した従来の手法には以下のような問題がある。
特許文献１の手法においては、予めＣＡＤデータを準備する必要がある。対象物品のＣＡＤデータが利用可能であるとは限らないので、そのような場合には３次元モデルを作成できない。また、全ての物品表面に対して、期待通りに３次元計測できる保証はない。光学系を利用した３次元計測機は、特定の表面特性、例えば物品表面に部分的に存在する黒い領域に対して、３次元計測を行うことは困難である。しかしながら、ＣＡＤデータから３次元モデルを生成した場合には、そのような表面特性を考慮することができない。仮にそのような表面特性をモデル化してもモデル化誤差が発生し、生成された３次元モデルと実際の計測データとの間に乖離が発生する可能性がある。
【０００７】
特許文献２の手法は、物品の姿勢を少しずつ変更させるたびに３次元計測と位置姿勢の算出とを繰返す必要がある。例えば、カムシャフトのような回転体を軸周りに２０度ずつ回転させながら計測を行う場合には、合計で１８回計測する必要がある。さらに、軸周りだけではなく、あらゆる物品位置姿勢を算出できるような３次元モデルを作成する場合には、計測回数は非常に膨大になり、３次元モデルを作成する手間もこれに比例して膨大になる。従って、３次元モデルを作成するのに多大な時間が必要とされる。
【０００８】
本発明はこのような事情に鑑みてなされたものであり、ＣＡＤデータが存在しない対象物品の３次元モデルを、３次元計測機を用いて一度または少ない回数の計測により簡単に生成することのできるモデル生成装置、ならびに、そのようなモデル生成装置を含む位置姿勢算出装置およびハンドリングロボット装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
前述した目的を達成するために１番目の発明によれば、物品の３次元モデルを生成するモデル生成装置であって、３次元空間上に任意の姿勢でそれぞれ配置された複数の物品を３次元計測し、計測データを取得する３次元計測機と、該３次元計測機により計測された前記複数の物品の計測データを、一つの物品を複数の仮想的な計測位置から計測したモデル計測データの集合とみなし、前記複数の仮想的な計測位置のそれぞれについて、対応するモデル計測データを抽出するモデル計測データ抽出部と、該モデル計測データ抽出部により抽出したモデル計測データを統合することにより前記物品の３次元モデルを生成するモデル計測データ統合部と、を備えることを特徴とするモデル生成装置が提供される。
２番目の発明によれば、１番目の発明において、前記モデル計測データ抽出部は、前記計測データを教示画面に出力する描画部と、複数の物品から選択された一つの物品の領域を、前記計測データが出力された前記教示画面上で設定する領域設定部と、該領域設定部によって設定された前記領域内に存在する計測データを基に、仮モデルを生成する仮モデル生成部と、前記仮モデルを用いて前記複数の物品の残りの物品の位置姿勢を検出する検出部と、を備え、前記モデル計測データ抽出部は前記検出部によって検出された前記残りの物品の位置姿勢を基にモデル計測データを抽出し、前記モデル計測データ統合部は前記モデル計測データを前記仮モデルに統合することで３次元モデルを生成する。
３番目の発明によれば、２番目の発明において、前記検出部は、前記仮モデルの初期姿勢に近い姿勢の物品から順番に検出し、前記モデル計測データ抽出部は、前記検出部の検出結果に基づき、前記仮モデルの初期姿勢に近い順にモデル計測データを抽出し、前記モデル計測データ統合部は、前記モデル計測データが抽出される毎に、逐次的にモデル計測データを前記仮モデルに統合する。
４番目の発明によれば、２番目または３番目の発明において、前記モデル計測データ抽出部が、前記検出部の検出結果の成否を操作者が指示するための検出成否指示部を備える。
５番目の発明によれば、２番目から４番目のいずれかの発明において、前記モデル計測データ抽出部は、前記検出部によって検出された物品の位置姿勢の近傍に存在する前記計測データを基に前記モデル計測データを抽出する。
６番目の発明によれば、２番目から５番目のいずれかの発明において、前記モデル計測データ抽出部が誤った計測データをモデル計測データとして不正に抽出すると共に不正に抽出された不正モデル計測データを前記仮モデルに統合した場合であっても、前記モデル計測データ統合部が、前記計測データと前記仮モデルとの整合性を基に、前記仮モデルから前記不正モデル計測データを抽出して除去する不正モデル計測データ除去部を備える。
７番目の発明によれば、２番目から６番目のいずれかの発明において、前記モデル計測データ統合部が、前記モデル計測データを前記仮モデルに統合する際に、前記モデル計測データと前記仮モデルの間に重複部が存在する場合には、前記モデル計測データから該重複部を除去した後で、前記モデル計測データを前記仮モデルに統合する。
８番目の発明によれば、２番目から６番目のいずれかの発明において、前記モデル計測データ統合部が、前記モデル計測データを前記仮モデルに統合する際に、前記モデル計測データと前記仮モデルの間に重複部が存在する場合には、前記モデル計測データの該重複部を基に仮モデルの該重複部を更新する。
９番目の発明によれば、１番目から８番目のいずれかの発明において、前記モデル計測データ統合部が、前記検出部によって検出された物品の位置姿勢から算出される前記仮想計測位置及びモデル計測データの少なくとも一方をパラメータとする最適化を行い、生成されるべきモデルの高精度化を行う。
１０番目の発明によれば、１番目から９番目のいずれかの発明において、前記３次元計測機が、３次元空間上に配置された複数の物品を３次元計測した後に、物品の積載状態を変更し、前記複数の物品の新たな３次元計測を行うことを一回以上繰返し、前記モデル計測データ抽出部及び前記モデル計測データ統合部が、複数回の３次元計測により得られた複数の計測データを基に前記物品の３次元モデルを生成する。
１１番目の発明によれば、１番目から１０番目のいずれかのモデル生成装置と、前記モデル生成装置によって生成された３次元モデルと前記３次元計測機で取得された計測データとの対応付けに基づいて、前記物品の位置姿勢を算出する位置姿勢算出部と、を備えることを特徴とする位置姿勢算出装置が提供される。
１２番目の発明によれば、前記物品をハンドリング可能なロボットと、１番目から１０番目のいずれかのモデル生成装置と、前記モデル生成装置によって生成された３次元モデルと前記３次元計測機で取得された計測データとの対応付けに基づいて、前記物品の位置姿勢を算出する位置姿勢算出部とを備え、前記位置姿勢算出部によって算出された前記物品の位置姿勢に基づいて、前記ロボットが前記物品をハンドリングすることを特徴とするハンドリングロボット装置が提供される。
【発明の効果】
【００１０】
１番目の発明においては、ＣＡＤデータが存在しない物品に対しても、物品の位置姿勢算出などに使用される３次元モデルを生成することができる。３次元計測機を用いて物品の３次元モデルを生成する際に、任意の姿勢でそれぞれ配置された複数の物品の計測データを、一つの物品を複数の仮想的な計測位置から計測したモデル計測データの集合とみなしている。このため、一回の計測により３次元モデルを生成することが可能になる。
２番目の発明においては、初めに一つの物品の計測データから仮モデルを教示し、その仮モデルを使用して残りの物品の位置姿勢を検出し、その検出結果を基にモデル計測データを抽出して仮モデルに統合している。このため、操作者の負担を大きくすることなく、３次元モデルを生成することが可能になる。
３番目の発明においては、仮モデルの初期姿勢に近い姿勢の物品から検出してモデル計測データを抽出して仮モデルに逐次的に統合している。つまり、精度よく安定して検出できる物品から順番に検出して仮モデルを拡張することができる。これにより、初期の仮モデルにはモデル計測データが全く存在しない物品の面に対しても、最終的にモデル計測データの抽出および統合が可能になる。
４番目の発明においては、仮モデルを用いた検出結果が正しいか否かを操作者が指示することにより、３次元モデルに誤ったモデル計測データが追加されるのを防ぐことができる。
５番目の発明においては、仮モデルを用いた検出結果を基に、モデル計測データを抽出する際に、既存のモデル計測データ近傍の点を新規のモデル計測データとして抽出している。従って、教示の手間なく、自動的にモデル計測データを抽出することができる。
６番目の発明においては、モデル計測データに誤った３次元点が含まれ、仮モデルに統合されてしまった場合であっても、仮モデルと計測データとの整合性を確認して、不正に統合されたモデル計測データを除去する。これにより、正しい３次元モデルを生成することができる。
７番目の発明においては、新たに抽出したモデル計測データを仮モデルに統合する際、モデル計測データと仮モデルの間に重複する３次元点が存在する場合には、その重複する３次元点を統合しないようにしている。このため、３次元モデルのデータが重くなることを防ぐとともに、情報に過不足のない３次元モデルを生成することが可能になる。
８番目の発明においては、新たに抽出したモデル計測データを仮モデルに統合する際、モデル計測データと仮モデルの間に重複する３次元点が存在する場合には、重複する３次元点から新たな３次元点を算出し、仮モデルを更新している。このため、３次元モデルのデータが重くなることを防ぐとともに、情報に過不足のない３次元モデルを生成することが可能になる。さらに、計測誤差を緩和した３次元モデルを生成することができる。
９番目の発明においては、モデル計測データの統合処理が完了した後に、仮想的な計測位置及びモデル計測データに属する各３次元点の位置の最適化処理を行うことで、より精度の高い３次元モデルを生成することが可能になる。
１０番目の発明においては、一度に計測できる物品の個数が少ない場合でも、複数回３次元計測を行うと共に複数の計測データを用いることにより３次元モデルを生成している。これにより、様々な計測位置から物品を計測することで得られる３次元モデルを同様に生成することが可能になる。このような場合であっても、一つの物品を少しずつ姿勢変化させながら計測するよりも短時間で３次元モデルを生成することができる。
１１番目の発明においては、ＣＡＤデータの存在しない物品に対しても物品の位置姿勢を算出することができる。また、３次元計測機により物品を計測することにより３次元モデルを生成しているので、３次元モデル生成時の教示の手間を大幅に減らすことができる。さらに、ＣＡＤデータを使用する位置姿勢算出装置と比較して、実際に計測を行う３次元計測機を使用して３次元モデルを作成するため、３次元モデルと位置姿勢算出時の計測データの間に齟齬が生じにくい。
１２番目の発明においては、ＣＡＤデータの存在しない物品に対しても、３次元空間上に配置された物品の位置姿勢を算出し、算出結果に基づいて物品を正確にハンドリングすることができる。また、物品の３次元計測を行うことで物品の３次元モデルを生成しているので、３次元モデル生成時の教示の手間を大幅に減らすことができる。
【００１１】
添付図面に示される本発明の典型的な実施形態の詳細な説明から、本発明のこれら目的、特徴および利点ならびに他の目的、特徴および利点がさらに明解になるであろう。
【図面の簡単な説明】
【００１２】
【図１】本発明に基づくハンドリングロボット装置の概略図である。
【図２】本発明に基づくモデル生成装置を含む３次元認識装置の機能ブロック図である。
【図３】計測データを説明するための図である。
【図４】仮想的な計測位置を説明するための図である。
【図５】ハンドリングロボット装置の動作を示すフローチャートである。
【図６Ａ】仮モデルを説明するための第一の図である。
【図６Ｂ】仮モデルを説明するための第二の図である。
【図６Ｃ】仮モデルを説明するための第三の図である。
【図６Ｄ】仮モデルを説明するための第四の図である。
【図７】誤ったモデル計測データを除去することを説明するための図である。
【発明を実施するための形態】
【００１３】
以下、添付図面を参照して本発明の実施形態を説明する。以下の図面において同様の部材には同様の参照符号が付けられている。理解を容易にするために、これら図面は縮尺を適宜変更している。
図１は本発明に基づくハンドリングロボット装置の概略図である。図１に示されるように、ハンドリングロボット装置Ａ００はロボットＡ０１と、ロボットＡ０１を制御するロボット制御装置Ａ０２と、ロボットＡ０１のアーム先端に取付けられたハンドＡ０３と、３次元計測機Ａ０４と、３次元認識装置Ａ０５とを主に含んでいる。
【００１４】
図１に示されるように３次元計測機Ａ０４は架台Ａ０７の先端に固定されている。そして、３次元計測機Ａ０４の計測範囲内には複数の同種または同形状の物品Ａ０６がバラ積みされている。あるいは、複数の物品Ａ０６は３次元空間上に任意の姿勢でそれぞれ配置されていてもよい。３次元計測機Ａ０４は、バラ積みされた物品Ａ０６の表面を計測して、複数の３次元点の位置情報を計測データとして取得する。
【００１５】
また、ハンドＡ０３は複数の物品Ａ０６から一つの物品を把持および解放するものであり、ロボット制御装置Ａ０２により制御される。なお、３次元計測機Ａ０４は、ロボットＡ０１の先端部に取付けられていてもよい。
【００１６】
３次元計測機Ａ０４は、非接触で物品Ａ０６を計測する種々の方式を利用できる。そのような方式は、例えば、二つのカメラによるステレオ方式、レーザスリット光を走査する方式、レーザスポット光を走査する方式、プロジェクタ等の装置を用いてパターン光を物品に投影する方式、光が投光器から出射されてから物品表面で反射し受光器に入射するまでの飛行時間を利用する方式などが挙げられる。
【００１７】
図１から分かるように、３次元計測機Ａ０４および３次元認識装置Ａ０５は通信ケーブル等の通信部によって互いに通信可能に接続されている。同様に、３次元認識装置Ａ０５およびロボット制御装置Ａ０２は通信ケーブル等の通信部によって互いに通信可能に接続されている。なお、ロボット制御装置Ａ０２が３次元認識装置Ａ０５としての機能を有するようにして、ロボット制御装置Ａ０２が後述する３次元モデルＢ４０の生成や物品の位置姿勢Ｂ５０の算出を行うようにしてもよい。
【００１８】
図２は本発明に基づくモデル生成装置を含む３次元認識装置の機能ブロック図である。厳密には、図２において破線で示される部分Ｂ００が本発明のモデル生成装置に相当する。図２に示されるモデル生成部Ｂ１０は、３次元計測機Ａ０４により計測された複数の物品の計測データを、一つの物品を複数の仮想的な計測位置から計測したモデル計測データの集合とみなし、複数の仮想的な計測位置のそれぞれについて、対応するモデル計測データを抽出するモデル計測データ抽出部Ｂ１１と、モデル計測データ抽出部Ｂ１１により抽出したモデル計測データを統合することにより物品の３次元モデルを生成するモデル計測データ統合部Ｂ１２とを含んでいる。
【００１９】
さらに、図２に示されるように、モデル計測データ抽出部Ｂ１１は、計測データを教示画面Ｃ１７に出力する描画部Ｃ１１と、複数の物品から選択された一つの物品の領域を、計測データが出力された教示画面上で設定する領域設定部Ｃ１２と、領域設定部Ｃ１２によって設定された領域内に存在する計測データを基に、仮モデルを生成する仮モデル生成部Ｃ１３と、仮モデルを用いて複数の物品の残りの物品の位置姿勢を検出する検出部Ｃ１４とを含んでいる。また、モデル計測データ抽出部Ｂ１１は、検出部Ｃ１４の検出結果の成否を操作者が指示するための検出成否指示部Ｃ１５を備えている。
【００２０】
さらに、モデル計測データ統合部Ｂ１２は、モデル計測データ抽出部Ｂ１１が誤った計測データをモデル計測データとして不正に抽出すると共に不正に抽出された不正モデル計測データを仮モデルに統合した場合であっても、モデル計測データ統合部Ｂ１２が、計測データと仮モデルとの整合性を基に、仮モデルから不正モデル計測データを抽出して除去する不正モデル計測データ除去部Ｃ１６を含んでいる。
【００２１】
図２から分かるように、３次元計測機Ａ０４により複数の物品Ａ０６の計測データＢ３０が取得される。ここで、図３は計測データを説明するための図である。図３には、複数の物品Ａ０６ａ〜Ａ０６ｈが示されている。図３に示される例においては、これら物品Ａ０６ａ〜Ａ０６ｈは軸部と、軸部の一端に取付けられた楕円形のフランジ部と、フランジ部の周面近傍に取付けられていてフランジ部から軸部とは反対方向に延びる突起部とを含んでいる。
【００２２】
理解を容易にする目的で、図３における物品Ａ０６ａ〜Ａ０６ｈは、それらの軸部が概ね同一方向を向くと共に、フランジ部が軸部回りの異なる回転位置にあるように配置されている。当然のことながら、実際にはこれら複数の物品Ａ０６ａ〜Ａ０６ｈはバラ積みされていて、互いに異なる位置姿勢を有していてもよい。また、物品Ａ０６が他の形状であってもよい。
【００２３】
そして、それぞれの物品Ａ０６のそれぞれの表面には複数の黒丸が示されている。図３に示される黒丸のそれぞれは、３次元計測機Ａ０４により計測された物品Ａ０６の表面における３次元点の位置情報を意味する計測データＢ３０である。図２に示されるモデル生成部Ｂ１０は、後述するように計測データＢ３０を用いて物品の３次元モデルＢ４０を生成する。
【００２４】
図３から分かるように、一つの物品、例えば物品Ａ０６ａの上方を向いている面に対して計測データＢ３０が取得される。別の姿勢の物品、例えば物品Ａ０６ｂでも上方を向いている面に対して、計測データＢ３０が取得されるが、それには物品Ａ０６ａでは死角となっている面の情報が含まれている。従って、複数の物品Ａ０６ａ〜Ａ０６ｈを同時に計測することで取得される計測データＢ３０には、一つの物品を様々な仮想的な計測位置から計測することで得られる情報が含まれているとみなすことができる。
【００２５】
ここで、仮想的な計測位置について、図４を用いてもう少し詳しく説明する。図４においては仮想的な計測位置Ｃ０６ａ〜Ｃ０６ｈが示されている。これら仮想的な計測位置Ｃ０６ａ〜Ｃ０６ｈは、図３に示される物品Ａ０６ａ〜Ａ０６ｈと計測位置の相対的な位置関係に基づいて、基準となる座標系を一つの物品Ａ０６上に設けたときに算出される仮想的な計測位置のそれぞれに対応する。
本発明においては、図３に示される物品Ａ０６ａ〜Ａ０６ｈの計測データＢ３０は、一つの物品Ａ０６を図４に示される複数の仮想的な計測位置Ｃ０６ａ〜Ｃ０６ｈから計測したときに得られる計測データ（以後、モデル計測データＢ１３とする）の集合とみなしている。
【００２６】
再び図２を参照すると、モデル計測データ抽出部Ｂ１１は、計測データＢ３０から、一つの仮想的な計測位置Ｃ０６から計測されたモデル計測データＢ１３を後述するように抽出する。さらに、モデル計測データ統合部Ｂ１２がモデル計測データＢ１３を複数の仮想的な計測位置に基づいて統合することにより、物品の３次元モデルＢ４０が生成される。
【００２７】
図５はハンドリングロボット装置の動作を示すフローチャートである。以下、図５を参照して、図１に示されるハンドリングロボット装置Ａ００で実行される処理を説明する。ハンドリングロボット装置Ａ００の立ち上げ時には、図５の左方に示されるように、３次元計測機Ａ０４を用いて３次元モデルＢ４０の生成を行う。
【００２８】
図５のステップＳ１０１においては、３次元計測機Ａ０４の計測範囲に、複数の物品Ａ０６を前述したようにバラ積みする。このとき、複数の物品Ａ０６が様々な姿勢になるようにするのが好ましい。このような場合には、一つの物品Ａ０６を様々な計測位置から計測するのと同様であると判断できるので、信頼性の高い３次元モデルの生成が可能になる。複数の物品Ａ０６をバラ積みした後で、ステップＳ１０２に進む。
【００２９】
ステップＳ１０２においては、バラ積みされた複数の物品Ａ０６の表面を３次元計測機Ａ０４により計測する。３次元計測機Ａ０４により取得された計測データＢ３０（図３を参照されたい）は３次元認識装置Ａ０５内に保持される。計測データＢ３０の取得が完了すると、ステップＳ１０３に進む。
【００３０】
ステップＳ１０３においては、描画部Ｃ１１が、計測データＢ３０を教示画面Ｃ１７に出力する。この場合、図３に示されるように、３次元計測機Ａ０４または他の撮像部により撮像された複数の物品Ａ０６ａ〜Ａ０６ｈの画像に、計測データＢ３０を重ねて表示するのが好ましい。
【００３１】
そして、操作者は、領域設定部Ｃ１２を用いて複数のＡ０６ａ〜Ａ０６ｈから一つの物品を囲む領域を設定する。図３には、領域設定部Ｃ１２により設定された物品Ａ０６ａを囲む領域が示されている。
【００３２】
そして、仮モデル生成部Ｃ１３は、設定された物品Ａ０６ａの領域内の計測データＢ３０に基づいて仮モデルＤ０１を生成する。図６Ａにおいては、物品Ａ０６ａに対応した仮想的な計測位置Ｃ０６ａから計測されたモデル計測データＢ１３にて仮モデルＤ０１を生成したものとする。なお、図６Ａ〜図６Ｄに示される黒丸はモデル計測データＢ１３であり、図６Ａ〜図６Ｄのそれぞれにおける黒丸の集合が仮モデルＤ０１である。
【００３３】
ここで、仮モデルＤ０１を教示する方法は問わない。例えば、カメラ画像上に３次元点を投影した点をプロットし、領域指定やマスク教示などで有効な３次元点を教示してもよい。仮モデルＤ０１の教示が完了すると、ステップＳ１０４に進む。
【００３４】
ステップＳ１０４においては、検出部Ｃ１４は、仮モデルＤ０１と、ステップＳ１０３で使用されなかった計測データＢ３０とを照合して、残りの物品Ａ０６、特に残りの物品の位置姿勢を検出する。例えば図６Ｂに示されるように、検出部Ｃ１４は仮想的な計測位置Ｃ０６ａに近い仮想的な計測位置、例えば計測位置Ｃ０６ｂ、Ｃ０６ｈに対応する物品の位置姿勢を順に検出する。
【００３５】
そして、ステップＳ１０５において検出部Ｃ１４が検出に成功した場合にはステップＳ１０６に進む。ステップＳ１０６においては、検出結果を基に、検出結果に対応する仮想的な計測位置Ｃ０６から計測されたモデル計測データＢ１３を抽出する。具体的には、まず、その時点における仮モデルＤ０１を、検出によって算出される物品の位置姿勢に基づいて座標変換する。
【００３６】
座標変換された仮モデルＤ０１のいずれかの３次元点に近い計測データＢ３０内の３次元点が存在した場合、その３次元点を新たなモデル計測データＢ１３として抽出する。具体的には、仮モデルＤ０１内のそれぞれの３次元点と計測データＢ３０内のそれぞれの３次元点との間の距離を算出する。そして、算出された距離が所定の閾値より小さい場合には、その計測データＢ３０内の３次元点をモデル計測データとして抽出する。
【００３７】
ところで、ステップＳ１０４における検出に誤検出があり、その誤検出結果を用いて３次元モデルを生成した場合には、最終的な３次元モデルが誤って生成されることになる。このため、操作者は検出結果が正しいことを確認し、正しくない結果については、検出成否指示部Ｃ１５によって使用しないようにする。そして、正しいことが保証された検出結果のみを用いて、ステップＳ１０６、Ｓ１０７の処理を行うのが好ましい。これにより、誤った検出結果を排除できるので、３次元モデルに誤ったモデル計測データＢ１３が追加されるのを防ぐことができる。なお、モデル計測データＢ１３の抽出が完了したら、ステップＳ１０７に進む。
【００３８】
ステップＳ１０７においては、抽出されたモデル計測データＢ１３を仮モデルＤ０１に統合する。この点に関し、新たに抽出されたモデル計測データＢ１３と仮モデルＤ０１には重複部がする。このため、新たに抽出されたモデル計測データＢ１３全てを毎回統合してしまうと、最終的な３次元モデルのデータが冗長で非常に重くなってしまう。
【００３９】
このため、３次元モデルを生成する際には、情報の過不足がないように統合するのが望ましい。このようなことを達成するために、以下の二つの方法がある。
【００４０】
第一の方法においては、新たに抽出されたモデル計測データＢ１３の３次元点近傍に、既に仮モデルＤ０１の３次元点が存在する場合、新たに抽出されたモデル計測データＢ１３からその３次元点を除去して仮モデルに統合しないようにする。
【００４１】
第二の方法においては、新たに抽出されたモデル計測データＢ１３の３次元点近傍に既に仮モデルＤ０１の３次元点が存在する場合、新たに抽出されたモデル計測データＢ１３の３次元点および仮モデルＤ０１の３次元点から新たな３次元点を一つ算出する。例えば、新たな３次元点は、新たに抽出されたモデル計測データＢ１３の３次元点および仮モデルＤ０１の３次元点の重心であっても良い。この場合には、計測誤差を緩和したモデルを生成することが可能になる。
【００４２】
図７は誤ったモデル計測データを除去することを説明するための図である。図７においては一つの物品に対して三つの３次元点Ｂ３０ａ〜Ｂ３０ｃが計測データＢ３０として取得されている。そして、一般的な三角パッチ生成手法により三つの３次元点Ｂ３０ａ〜Ｂ３０ｃが三角パッチをなす場合には、３次元計測機Ａ０４と３次元点Ｂ３０ａ〜Ｂ３０ｃの４点から形成される四角錐内には、物体が何も存在しないことが期待できる。このため、モデル計測データＢ１３ａがその四角錐内に存在する場合、そのモデル計測データＢ１３ａは不正なモデル計測データＢ１３であるとして不正モデル計測データ除去部Ｃ１６により除去することができる。
【００４３】
従って、誤った３次元点がモデル計測データＢ１３として抽出されてしまった場合でも、計測データＢ３０との整合性を確認することで、誤ったモデル計測データＢ１３を除去することが可能である。このため、本発明では、正しい３次元モデルを生成することができる。
【００４４】
なお、予めモデル計測データが存在しない領域をカメラ画像やボクセル表示された教示画面上で教示する方法も有効である。モデル計測データの統合が完了したら、ステップＳ１０４に戻る。そして、更新された仮モデルＤ０１を使用してステップＳ１０４〜Ｓ１０７の処理を繰返す。
【００４５】
ここで、図６Ａに示される仮モデルＤ０１を初期登録した仮想的な計測位置Ｃ０６ａから遠い計測位置、例えば図４に示される仮想的な計測位置Ｃ０６ｅから計測されるモデル計測データを、初期の仮モデルＤ０１を用いて検出することは不可能であるか、またはその検出精度が低い。
【００４６】
このため、図６Ｂに示されるように、仮想的な計測位置Ｃ０６ａに近い仮想的な計測位置、例えば計測位置Ｃ０６ｂ、Ｃ０６ｈから計測される物品を順に検出する。このような操作を繰返すことにより、図６Ｂから図６Ｃより分かるように、仮モデルＤ０１は次第に拡張される。そして、図６Ｄに示すように、最終的には仮想的な計測位置Ｃ０６ｅから計測した物品を検出し、そのモデル計測データをステップＳ１０７で統合する。これにより、全ての仮想的な計測位置Ｃ０６ａ〜Ｃ０６ｈのモデル計測データＢ１３が反映された仮モデルＤ０１を作成することができる。
【００４７】
言い換えれば、本発明においては、精度よく安定して検出できる物品から順番に検出して仮モデルＤ０１を拡張している。これにより、初期の仮モデルにはモデル計測データＢ１３が全く存在しない物品の面に対しても、最終的にモデル計測データＢ１３の抽出および統合が可能になる。
【００４８】
そして、ステップＳ１０５において検出に失敗した場合には、残りの物品Ａ０６は存在しないので、ステップＳ１０８に進む。ステップＳ１０８においては、統合が終わった仮モデルＤ０１の最適化を行い、３次元モデルＢ４０を生成する。
【００４９】
これまで説明した処理において、３次元モデルの生成に使用している推定パラメータは仮想的な計測位置Ｃ０６（姿勢情報も含む）および仮モデルＤ０１に属する各３次元点の位置である。ステップＳ１０８においては、これら全てのパラメータを推定対象とし、マッチング誤差の合計（最小二乗誤差）が最小となる解を求めることで、より高精度な３次元モデルを生成することが可能になる。
【００５０】
例えば、一般的にバンドルアジャストメントとして知られる最適化手法を適用することができる。バンドルアジャストメントでは非線形最適化を数値解析によって行うが、その際の初期値は、事前の検出で把握している仮想的な計測位置Ｃ０６および仮モデルＤ０１に属する３次元点を用いれば良い。このように、モデル計測データＢ１３の仮モデルＤ０１への統合処理が完了した後に、仮想的な計測位置及び仮モデルＤ０１属する各３次元点の位置の最適化処理を行うことで、より精度の高い３次元モデルＢ４０を生成することが可能になる。
【００５１】
このようにして、本発明においては、ＣＡＤデータが存在しない物品Ａ０６に対しても、物品の位置姿勢算出などに使用される３次元モデルを生成することができる。本発明において３次元計測機Ａ０４を用いて物品Ａ０６の３次元モデルを生成する際に、任意の姿勢でそれぞれ配置された複数の物品の計測データを、一つの物品を複数の仮想的な計測位置から計測したモデル計測データの集合とみなしている。このため、本発明においては、３次元計測機Ａ０４を用いた一回の計測により３次元モデルを生成することが可能になる。
【００５２】
しかしながら、別の実施形態においては、３次元計測を複数回行うようにしてもよい。３次元計測を再度行う場合には、ステップＳ１０５で検出に失敗した後に、ステップＳ１０８に進むことなしに、ステップＳ１０１に戻り、物品の再配置を行い、その後の処理を繰返せばよい。
【００５３】
例えば、３次元計測機Ａ０４の計測範囲に少数、例えば二つの物品Ａ０６のみしか配置できない場合には、様々な仮想的な計測位置から計測したのと同様な３次元モデルを一度の３次元計測で生成することは困難である。しかしながら、二つの物品を再配置した上で計測を行うことを複数回繰返した場合には、様々な計測位置から計測することで取得できる３次元モデルを同様に生成することが可能になる。このような場合であっても、一つの物品を少しずつ姿勢変化させながら計測するよりも短時間で３次元モデルを生成することができる。
【００５４】
ここで、３次元モデルが未知である物品が複数計測されている計測データから、計算によりモデル計測データＢ１３を抽出するのは困難である。また、操作者が、全てのモデル計測データの抽出を教示する場合には、操作者の負担が大きすぎる。このため、本発明では、前述したように、仮モデルＤ０１を教示し、その仮モデルＤ０１を使用して残りの物品の位置姿勢を検出し、その検出結果を基にモデル計測データＢ１３を抽出して仮モデルＤ０１に統合している。このため、操作者の負担を大きくすることなく、３次元モデルを生成することが可能である。
【００５５】
ところで、図５の右方に示される物品の搬送処理は、例えば図示しない操作スイッチを操作して物品Ａ０６のハンドリング開始指令が入力されることにより、開始される。図５のステップＳ２０１においては、３次元空間上に配置された複数の物品Ａ０６の３次元計測を行う。この処理は、ステップＳ１０２の処理と実質的に同様である。
【００５６】
次いで、ステップＳ２０２に進んで、３次元空間上に配置された複数の物品Ａ０６から一つの物品Ａ０６の検出を行う。この処理は、ステップＳ１０４の処理と実質的に同様である。一つの物品Ａ０６の検出が終了したら、ステップＳ２０３に進む。
【００５７】
そして、物品位置姿勢算出部Ｂ２０は、モデル生成部Ｂ１０によって予め生成された３次元モデルＢ４０と、前述したように別途計測された物品Ａ０６の計測データＢ３０との照合を行い、物品Ａ０６の位置姿勢Ｂ５０を算出する。
【００５８】
３次元モデルと計測データとを照合して、物品Ａ０６の位置姿勢を算出する方法は、どのような方法であってもよい。例えば、３次元モデルのモデル点からＰＰＦ（Ｐｏｉｎｔ  Ｐａｉｒ  Ｆｅａｔｕｒｅ）特徴量やＳＨＯＴ（Ｓｉｇｕｎａｔｕｒｅ  ｏｆ  Ｈｉｓｔｏｇｒａｍ  ｏｆ  Ｏｒｉｅｎｔａｔｉｏｎ）特徴量のような３次元特徴を計算する。計測データについても同様に３次元特徴を計算する。そして、計測データから同じ特徴量を持つ３次元点を探索し、そこから位置姿勢を算出してもよい。
【００５９】
あるいは、予め決められた探索位置範囲や探索姿勢範囲内で３次元モデルを構成する３次元点を座標変換し、計測データの３次元点との差分を求める。そして、差分が所定値以下の３次元点があれば、そのような３次元モデルの３次元点は一致したとカウントする。そして、この処理を３次元モデル内で計測できていることが期待できる３次元点で行い、一致数が所定数以上となると、そのときの位置姿勢を算出結果として出力してもよい。
【００６０】
本発明では、ＣＡＤデータを使用する位置姿勢算出装置と比較して、実際に計測を行う３次元計測機Ａ０４を使用して３次元モデルを作成している。このため、３次元モデルと位置姿勢算出時の計測データの間に齟齬が生じにくいという利点がある。
【００６１】
次いで、ステップＳ２０３においては、ロボットＡ０１を制御して、それにより、ステップＳ２０２で検出された物品Ａ０６の位置姿勢に対応した位置に、ロボットＡ０１のハンドＡ０３を移動させる。そして、ハンドＡ０３により物品Ａ０６を把持させ、ロボットＡ０１に所定のハンドリング動作を行わせる。物品Ａ０６のハンドリング処理が完了すると、物品搬送作業を終了する。
【００６２】
このように、本発明では、ＣＡＤデータの存在しない物品に対しても、３次元空間上に配置された物品Ａ０６の位置姿勢を算出し、算出結果に基づいて物品Ａ０６を正確にハンドリングすることができる。また、物品Ａ０６の３次元計測を行うことで物品Ａ０６の３次元モデルを生成しているので、３次元モデル生成時の教示の手間を大幅に減らすことができる。
【００６３】
あるいは、ステップＳ２０３においては、基準となる物品の位置姿勢である基準物品位置姿勢に対する基準ロボット位置姿勢を予めロボット制御装置Ａ０２に記憶する。次いで、ステップＳ２０２で認識した物品Ａ０６の位置姿勢に対して、基準物品位置姿勢と基準ロボット位置姿勢との間の相対的な位置関係に一致するようなロボット位置姿勢を求める。そして、そのようなロボット位置姿勢にハンドＡ０３を移動させるようにロボットＡ０１を制御してもよい。
【００６４】
本実施形態では、検出した一つの物品Ａ０６を把持して搬送することによりシステムを終了している。しかしながら、一度の検出で複数の物品Ａ０６の位置姿勢を算出し、検出された複数の物品Ａ０６を連続して把持および搬送するようにしてもよい。あるいは、３次元空間上に配置された複数の物品の全てを順次搬送するようにしてもよい。なお、物品のハンドリング時には、特開２００２−３３１４８０号公報に記載されるように、ハンドＡ０３が物品Ａ０６が収納される箱に干渉するのを回避してもよい。
【００６５】
典型的な実施形態を用いて本発明を説明したが、当業者であれば、本発明の範囲から逸脱することなしに、前述した変更および種々の他の変更、省略、追加を行うことができるのを理解できるであろう。
【符号の説明】
【００６６】
Ａ００    ハンドリングロボット装置
Ａ０１    ロボット
Ａ０２    ロボット制御装置
Ａ０３    ハンド
Ａ０４    ３次元計測機
Ａ０５    ３次元認識装置
Ａ０６、Ａ０６ａ〜Ａ０６ｈ    物品
Ａ０７    架台
Ｂ００    モデル生成装置
Ｂ１０    モデル生成部
Ｂ１１    モデル計測データ抽出部
Ｂ１２    モデル計測データ統合部
Ｂ１３、Ｂ１３ａ    モデル計測データ
Ｂ２０    物品位置姿勢算出部（位置姿勢算出部）
Ｂ３０ａ〜Ｂ３０ｃ    ３次元点（計測データ）
Ｂ４０    ３次元モデル
Ｂ５０    物品の位置姿勢
Ｃ０６、Ｃ０６ａ〜Ｃ０６ｈ    仮想的な計測位置
Ｃ１１    描画部
Ｃ１２    領域設定部
Ｃ１３    仮モデル生成部
Ｃ１４    検出部
Ｃ１５    検出成否指示部
Ｃ１６    不正モデル計測データ除去部
Ｄ０１    仮モデル
【図１】
0006298035.tif 000002
【図２】
0006298035.tif 000003
【図３】
0006298035.tif 000004
【図４】
0006298035.tif 000005
【図５】
0006298035.tif 000006
【図６Ａ】
0006298035.tif 000007
【図６Ｂ】
0006298035.tif 000008
【図６Ｃ】
0006298035.tif 000009
【図６Ｄ】
0006298035.tif 000010
【図７】
0006298035.tif 000011