(57)【特許請求の範囲】
【請求項１】
任意の載置状態にある複数の同一外形の認識対象物体から１つの物体を特定する物体特定方法であって、略水平面上に載置された複数の認識対象物体を撮像してその画像情報から各物体それぞれの載置状態情報を求め、その各載置状態情報における任意の認識対象物体の載置状態情報と予め与えられたその物体の外形情報とにより前記載置状態情報の信頼度を求めるとともに、同各載置状態情報から各物体相互間の位置情報を求め、この位置情報から各物体相互の重なり状態を求めるとともに、その重なり状態の上方位置のものから順次に前記信頼度が所定値以上か否かを判定して１つの物体を特定する物体特定方法。
【請求項２】
任意の載置状態にある複数の同一外形の認識対象から１つの物体を特定する物体特定装置であって、略水平面上に載置された複数の認識対象物体を撮像してその画像情報から各物体それぞれの載置状態情報を取り込む情報入力手段と、この情報入力手段にて得られる任意の認識対象物体の載置状態情報と予め与えられたその物体の外形情報とにより該載置状態情報の信頼度を求める信頼度演算手段と、前記情報入力手段にて得られる認識対象物体の載置状態情報と前記信頼度の情報とを演算して信頼度が所定値以上の物体相互間の位置情報を求める位置演算手段と、この位置演算手段の位置情報から各物体相互の重なり状態を求めて１つの物体を特定する特定手段とを備えてなる物体特定装置。
【請求項３】
情報入力手段は、認識対象物体の任意の基準面の３次元位置情報を取り込むとともに、位置演算手段が、該認識対象物体相互の一方の物体と他方の物体との該基準面どうしの相対的な高さ位置を演算するようなしたことを特徴とする請求項２記載の物体特定装置。
【請求項４】
位置演算手段は、認識対象物体の任意の基準面を前記水平面上に投影した、その各投影面相互の重なり状態を演算する投影面演算手段を有し、特定手段が、その演算結果の重なり状態を判定する判定手段を備えてなることを特徴とする請求項３記載の物体特定装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ロボット装置などに設けられた把持手段にて把持する際に把持対象物体を特定するため、任意の載置状態にある複数の同一外形の認識対象物体から１つの物体を特定する物体特定方法に関するものである。
【０００２】
【従来の技術】
従来、例えばコンテナ内にバラ積みされた部品を、ロボット装置に設けられた把持手段にてフレキシブルにピッキングするときには、多くの場合、画像処理手法を用いて複数の認識対象物体の３次元位置・姿勢計測を行い、その把持手段にてビンピッキングする方法が採用されている。したがって、この３次元位置・姿勢を計測して１つの物体を特定する物体特定プロセスにおいては、把持すべき物体を的確に決定するとともに、その位置・姿勢を正確に把持手段へ伝達することが重要となる。
【０００３】
上記の把持手段などにて物体を把持するための、任意に載置されて不特定な位置・姿勢にある同一外形の認識対象物体から把持対象物体を特定する方法として、例えば、日本機械学会［Ｎｏ．９７−２２］ロボティクス・メカトロニクス講演会’９７講演論文集［Ｖｏｌ．Ｂ］に記載されている、「画像処理による重畳対象の最上位認識」がある。この場合、撮像した画像から、認識対象物体のエッジデータを用いて２次元形状特徴を抽出し、次いで、予め与えられた形状モデルとのマッチングを行った後、重畳された物体相互間の上下関係の判定を重畳によって生じる物体のエッジの有無により行っていた。
【０００４】
また、上記以外の把持対象物体を特定する方法としては、特開平３−２０２２９０の「ばら積み物体の取出装置」として開示されている方法がある。この場合、まず、認識対象物体上面の高さを計測し、次いで、この計測された上面高さ情報において所定の基準高さ以上の物体の中から把持対象物体を特定していた。
【０００５】
【発明が解決しようとする課題】
しかしながら、上記従来の技術において、前者の場合は、均一な色合いを呈した複数の認識対象物体の上下関係における、重畳された物体相互間に生じるエッジがあいまいで、重畳関係を正確に決定することが困難なことがあった。また、後者の場合は、その上面の高さが基準高さ以上の物体を選択して把持対象物体を特定するため、３次元姿勢における物体の傾きが大きいとき、あるいは物体相互の重なり状態が複雑なときには、的確に１つの物体を特定することができないという問題があった。さらに、上記どちらの場合においても、画像情報である認識対象物体の載置状態情報自体に対する誤差が考慮されておらず、ロボット装置へ不正確な位置・姿勢を伝達することがあって上記の把持手段を過った位置に移動させる恐れもあった。
【０００６】
本発明は、上記事由に鑑みてなしたもので、その目的とするところは、任意の載置状態にある複数の同一外形の認識対象物体を正確に認識して１つの物体を確実に特定できる物体特定方法及び装置を提供することにある。
【０００８】
【課題を解決するための手段】
上記目的を達成するために、本発明の物体特定方法にあっては、任意の載置状態にある複数の同一外形の認識対象物体から１つの物体を特定する物体特定方法であって、略水平面上に載置された複数の認識対象物体を撮像してその画像情報から各物体それぞれの載置状態情報を求め、その各載置状態情報における任意の認識対象物体の載置状態情報と予め与えられたその物体の外形情報とにより前記載置状態情報の信頼度を求めるとともに、同各載置状態情報から各物体相互間の位置情報を求め、この位置情報から各物体相互の重なり状態を求めるとともに、その重なり状態の上方位置のものから順次に前記信頼度が所定値以上か否かを判定して１つの物体を特定することを特徴としている。
【００１０】
この場合、情報入力手段にて、略水平面上に載置された複数の認識対象物体が撮像されてその画像情報から各物体それぞれの載置状態情報を取り込むことができる。位置演算手段にて、同情報入力手段にて得られる認識対象物体の載置状態情報から各物体相互間の位置情報を求めることができる。特定手段にて、同位置演算手段の位置情報から、任意の載置状態にある複数の同一外形の認識対象の各物体相互の重なり状態を求めて、１つの物体を特定できる。
【００１１】
また、任意の載置状態にある複数の同一外形の認識対象から１つの物体を特定する物体特定装置であって、略水平面上に載置された複数の認識対象物体を撮像してその画像情報から各物体それぞれの載置状態情報を取り込む情報入力手段と、この情報入力手段にて得られる任意の認識対象物体の載置状態情報と予め与えられたその物体の外形情報とにより該載置状態情報の信頼度を求める信頼度演算手段と、前記情報入力手段にて得られる認識対象物体の載置状態情報と前記信頼度の情報とを演算して信頼度が所定値以上の物体相互間の位置情報を求める位置演算手段と、この位置演算手段の位置情報から各物体相互の重なり状態を求めて１つの物体を特定する特定手段とを備えている。
【００１２】
この場合、情報入力手段にて、略水平面上に載置された複数の認識対象物体が撮像されてその画像情報から各物体それぞれの載置状態情報を取り込むことができる。信頼度演算手段にて、前記情報入力手段にて得られる任意の認識対象物体の載置状態情報と予め与えられたその物体の外形情報とにより該載置状態情報の信頼度を求めることができる。位置演算手段にて、同情報入力手段にて得られる認識対象物体の載置状態情報と前記信頼度の情報とを演算して信頼度が所定値以上の物体相互間の位置情報を求めることができる。特定手段にて、同位置演算手段の位置情報から、任意の載置状態にある複数の同一外形の認識対象の各物体相互の重なり状態を求めて、１つの物体を特定できる。
【００１３】
そして、上記情報入力手段は、認識対象物体の任意の基準面の３次元位置情報を取り込むとともに、位置演算手段が、該認識対象物体相互の一方の物体と他方の物体との該基準面どうしの相対的な高さ位置を演算することが好ましい。
【００１４】
この場合、情報入力手段にて、認識対象物体の任意の基準面の３次元位置情報が取り込まれる。位置演算手段にて、同認識対象物体相互の一方の物体と他方の物体との該基準面どうしの相対的な高さ位置が演算される。
【００１７】
また、上記位置演算手段は、認識対象物体の任意の基準面を前記水平面上に投影した、その各投影面相互の重なり状態を演算する投影面演算手段を有し、特定手段が、その演算結果の重なり状態を判定する判定手段を備えるのが好ましい。
【００１８】
この場合、位置演算手段に設けられた投影面演算手段にて、認識対象物体の任意の基準面を前記水平面上に投影した、その各投影面相互の重なり状態が演算される。特定手段に設けられた判定手段にて、同演算結果の重なり状態が判定され１つの物体を特定される。
【００２１】
【発明の実施の形態】
図１乃至図４は、本発明の請求項１、３、５全てに対応する第１の実施の形態を示し、図５乃至８は、本発明の請求項２、４、６に対応する第２の実施の形態を示し、図９、１０は、本発明の請求項７に対応する第３の実施の形態を示し、図１１、１２は、本発明の請求項８に対応する第４の実施の形態を示している。
【００２２】
［第１の実施の形態］
図１は、第１の実施の形態の物体特定方法を使用する物体特定装置を示す概略構成図である。図２は、同実施の形態の物体特定方法を示すフローチャートである。図３は、同物体特定装置の３次元画像処理を示す説明図である。図４は、同物体特定装置の位置演算部の演算処理の説明図である。
【００２３】
この実施の形態の物体特定装置１は、任意の載置状態にある複数の同一外形の認識対象から１つの物体を特定する物体特定装置であって、略水平面Ｐ上に載置された複数の認識対象物体Ｂ、Ｂ…を撮像してその画像情報から各物体それぞれの載置状態情報を取り込む情報入力手段２と、この情報入力手段２にて得られる認識対象物体Ｂ、Ｂ…の載置状態情報から各物体相互間の位置情報を求める位置演算手段５と、この位置演算手段５の位置情報から各物体相互の重なり状態を求めて１つの物体Ａを特定する特定手段６とを備えてなる。
【００２４】
又、該実施の形態の物体特定装置１においては、情報入力手段２は、認識対象物体Ｂ、Ｂ…の任意の基準面の３次元位置情報を取り込むとともに、位置演算手段５が、該認識対象物体Ｂ、Ｂ…相互の一方の物体Ｂ１と他方の物体Ｂ２との該基準面どうしの相対的な高さ位置を演算するようなしてもいる。
【００２５】
又、該実施の形態の物体特定方法においては、任意の載置状態にある複数の同一外形の認識対象物体から１つの物体を特定する物体特定方法であって、略水平面上に載置された複数の認識対象物体Ｂ、Ｂ…を撮像してその画像情報から各物体それぞれの載置状態情報を求め、その各載置状態情報から各物体相互間の位置情報を求め、この位置情報から各物体相互の重なり状態を求めて判定して１つの物体Ａを特定している。
【００２６】
詳しくは、この物体特定装置１は、例えばロボット装置１２に設けられた把持手段１３にてフレキシブルにピッキングするときに、複数の認識対象物体Ｂ、Ｂ…の３次元位置・姿勢計測を行い、その把持手段１３にてビンピッキングするのに使用される。そして、ＣＣＤカメラにて形成される撮像部３、３、及び、この撮像部３、３から出力される画像情報の３次元画像処理を行う３次元画像処理部４を備える情報入力手段２と、位置演算手段５に相当する位置演算部と、特定手段６に相当する物体特定部とを有して構成され、各部それぞれがマイクロコンピュータを中心に形成されている。
【００２７】
撮像部３、３は、認識対象物体Ｂ、Ｂ…の任意の基準面の３次元位置・姿勢計測のための２つの異なる画像を取り込むもので、それぞれが２つの異なる位置に固定されており、略水平面Ｐ上に載置された複数の認識対象物体Ｂ、Ｂ…を撮像する。
【００２８】
３次元画像処理部４は、この場合、撮像部３、３により得られた、認識対象物体Ｂ、Ｂ…の２つの異なる画像から、認識対象物体Ｂ、Ｂ…の載置状態情報である平行ステレオ画像情報を得るためのもので、図２に示す、Ｓ４１乃至Ｓ４５の手順にて、いわゆる平行ステレオ変換の演算処理を行う。この平行ステレオ変換処理によって、撮像部３、３から出力される２つの異なる画像は、その各画像が同じ焦点距離・同じ光軸方向のカメラで撮像したのと同様になるよう画像データの変換処理がなされて平行ステレオ画像情報となる。なお、この変換に必要なパラメータは，公知のキャリブレーション手法により予め求められる。
【００２９】
具体的には、まず、図３（ａ）に示す、平行ステレオ画像のうちの一方の画像（以下、基準画像と称する）中から、直線ｂ１、ｂ２、ｂ３、ｂ４を検出する。この直線検出は、例えばハフ変換と呼ばれている、基準画像中のエッジ点をパラメータ空間に投票することによりその画像中の直線を検出する手法により行っている。次いで、例えばエリアベースのステレオマッチング法と呼ばれる方法にて、ステレオ３次元計測を行う。具体的には、上記基準画像中から抽出した例えば直線ｂ１上に設定した小領域ｓ１、ｓ２、ｓ３、ｓ４に対応する領域が、図２（ｂ）に示す、他方の画像（以下、参照画像と称する）中のどこにあるかが求められて各領域毎の３次元データ演算処理を行い平行ステレオ画像情報を出力する。
【００３０】
位置演算手段５は、この場合、上記３次元画像処理部４から出力される平行ステレオ画像の３次元データから各物体相互間の位置情報を求めて、認識対象物体Ｂ、Ｂ…の各物体相互の、一方の物体Ｂ１と他方の物体Ｂ２との該基準面どうしの相対的な高さ位置を演算するもので、平行ステレオ画像情報から精度良く各物体相互間の位置情報を求めて重なりの上下を決定するため、図２に示すＳ５１乃至Ｓ５７の手順にて、図４に示す、一方の物体Ｂ１と他方の物体Ｂ２とのそれぞれの基準面どうしの相対的な高さ位置の演算を行う。
【００３１】
具体的には、図４に示すように３次元位置・姿勢の計測された２つの物体Ｂ１、Ｂ２を選び出し、各物体Ｂ１、Ｂ２を代表する面Ｑ１、Ｑ２をそれぞれ決定する。そして一方の面Ｑ１を参照面、他方の面Ｑ２を対象面として、参照面である面Ｑ１を拡張した参照平面Ｐ’の表向き方向を正領域Ｒ＋、その裏向き方向を負領域Ｒ−とする。次いで、対象面である面Ｑ２を構成する物体Ｂ２の頂点ｃ１、ｃ２、ｃ３、ｃ４のすべてについて、参照平面Ｐ’に対する正領域Ｒ＋にある頂点数を求める。その後、面Ｑ１、Ｑ２の参照面と対象面との関係を入れ替えて上記と同様の処理を行う。その結果、例えば正領域Ｒ＋にある頂点数の多い面を持つ物体Ｂ２を上側に存在する物体と判定する。このようにして，物体の相互位置関係の重なりの上下を決定するのである。
【００３２】
上記の後、特定手段６である物体特定部により、全ての各物体相互の重なり状態を求めて判定して１つの物体Ａを特定し、上記ロボット装置１２へ出力する。その結果、このロボット装置１２は、把持失敗の可能性が低い物体Ａを把持対象物体として、このロボット装置１２に設けられた把持手段１３によりアプローチし、把持する際に他の物体と干渉することなく特定された物体Ａをピックアップするのである。
【００３３】
次に、上記の手順を図２のフローチャートに基づいて説明する。情報入力手段２は、まず、ステレオペアを作成し（ステップ４１）、次いで、平行ステレオ変換を行い（ステップ４２）、その後、基準画像から直線検出を行い（ステップ４３）、基準画像の直線上に設定した小領域の３次元計測を行い（ステップ４４）、認識対象物体の任意の基準面の各直線の３次元位置情報を取り込む（ステップ４５）。
【００３４】
位置演算手段５は、まず、２つの物体の代表面Ｂ１、Ｂ２を決定し（ステップ５１）、次いで、一方の面Ｑ１を参照面、他方の面Ｑ２を対象面とし（ステップ５２）、参照面を拡張した参照平面Ｐ’の表向き方向を正領域Ｒ＋、裏向き方向を負領域Ｒ−とする（ステップ５３）。その後、対象面を構成する頂点ｃ１、ｃ２、ｃ３、ｃ４すべてについて、参照平面Ｐ’に対して正領域Ｒ＋ある頂点数を求め（ステップ５４）、フラグ確認を行い（ステップ５５）、参照面と対象面を入れ替えるとともにフラグを変更し（ステップ５６）、上記ステップ５３乃至５５の処理を行った後、正領域Ｒ＋にある頂点数の多い面を持つ物体が、上側に存在する物体と判定する（ステップ５７）。
【００３５】
したがって、以上説明した物体特定装置１及び物体特定方法によると、情報入力手段２にて、略水平面Ｐ上に載置された複数の認識対象物体Ｂ、Ｂ…が撮像されてその画像情報から各物体それぞれの載置状態情報を取り込むことができる。位置演算手段５にて、同情報入力手段２にて得られる認識対象物体Ｂ、Ｂ…の載置状態情報から各物体相互間の位置情報を求めることができる。特定手段６にて、同位置演算手段５の位置情報から、任意の載置状態にある複数の同一外形の認識対象の各物体相互の重なり状態を求めて、１つの物体を特定できるので、任意の載置状態にある複数の同一外形の認識対象物体Ｂ、Ｂ…を正確に認識して１つの物体Ａを確実に特定できる。
【００３６】
そして、情報入力手段２にて、認識対象物体Ｂ、Ｂ…の任意の基準面の３次元位置情報が取り込まれる。位置演算手段５にて、同認識対象物体Ｂ、Ｂ…相互の一方の物体と他方の物体との該基準面どうしの相対的な高さ位置が演算されるので、より正確に認識対象物体Ｂ、Ｂ…を認識して１つの物体Ａをでき、以て、例えば把持失敗の発生を少なくできる。
【００３７】
なお、本発明は、上記実施の形態として示された、直線検出方法にハフ変換、及びステレオ３次元計測にエリアベースのステレオマッチング方法を用いたもの以外に、各種画像処理手段を用いた形態のものを含むことは言うまでもない。
【００３８】
［第２の実施の形態］
図５は、第２の実施の形態の物体特定装置の位置演算部の信頼度演算処理を示すフローチャートである。図６は、同物体特定装置の物体特定方法の信頼度演算手段の説明図である。図７は、同物体特定装置の位置演算部の距離演算処理を示すフローチャートである。図８は、同物体特定装置の位置演算部の距離演算処理の説明図である。
【００３９】
この実施の形態の物体特定装置１は、位置演算部の演算処理の一部が第１の実施の形態と異なるもので、他の構成は第１の実施の形態のものと同一で、該実施の形態の物体特定装置１は、任意の載置状態にある複数の同一外形の認識対象から１つの物体を特定する物体特定装置であって、略水平面Ｐ上に載置された複数の認識対象物体Ｂ、Ｂ…を撮像してその画像情報から各物体それぞれの載置状態情報を取り込む情報入力手段２と、この情報入力手段２にて得られる任意の認識対象物体Ｂ、Ｂ…の載置状態情報と予め与えられたその物体の外形情報とにより該載置状態情報の信頼度を求める信頼度演算手段７と、前記情報入力手段２にて得られる認識対象物体の載置状態情報と前記信頼度の情報とを演算して信頼度が所定値以上の物体相互間の位置情報を求める位置演算手段５と、この位置演算手段５の位置情報から各物体相互の重なり状態を求めて１つの物体を特定する特定手段６とを備えてなる。
【００４０】
又、該実施の形態の物体特定装置は、位置演算手段５は、認識対象物体Ｂ、Ｂ…の任意の基準面の、前記水平面上における一方の物体と他方の物体相互間の距離を演算する距離演算手段８を有し、特定手段６が、その演算結果の距離値を所定の距離値とを比較する比較手段９を備えてなる。
【００４１】
又、該実施の形態の物体特定方法は、任意の載置状態にある複数の同一外形の認識対象物体から１つの物体を特定する物体特定方法であって、略水平面上に載置された複数の認識対象物体Ｂ、Ｂ…を撮像してその画像情報から各物体それぞれの載置状態情報を求め、その各載置状態情報における任意の認識対象物体の載置状態情報と予め与えられたその物体の外形情報とにより前記載置状態情報の信頼度を求めるとともに、同各載置状態情報から各物体相互間の位置情報を求め、この位置情報から各物体相互の重なり状態を求めるとともに、その重なり状態の上方位置のものから順次に前記信頼度が所定値以上か否かを判定して１つの物体Ａを特定している。
【００４２】
このものの位置演算手段５は、第１の実施の形態にて説明した３次元データの処理にて得られた載置状態情報である平行ステレオ画像情報から、より精度良く各物体相互間の位置情報を求めて重なりの上下を決定するため、図５に示すフローチャートのＳ７１からＳ７６に示す如く、個々の物体Ｂの載置状態情報の信頼度演算行う信頼度演算手段７を備えている。
【００４３】
具体的には、この場合、図２に示した３次元データの計測処理にて得られた各小領域ｓ１、ｓ２、ｓ３、ｓ４に係わるデータを、対応する小領域同士の類似度として各領域毎に記憶する。次いで、直線ｂ１上の各領域の３次元データから、直線ｂ１の３次元情報である、位置及び方向を求めるのと同時に、直線ｂ１上の各領域のステレオマッチング時の類似度を全て加算し、その合計値を直線ｂ１の計測信頼度とし、直線ｂ１、ｂ２、ｂ３、ｂ４が基準画像の水平方向との角度θをそれぞれ求め、下記の（式１）に示す導出式にて算出される係数αを、各々の直線の計測信頼度に乗じる。
α＝（１＋１００ｓｉｎ（θ））                          （式１）
但し、θは直線ｂ１と基準画像水平方向とのなす角度である。
【００４４】
そして、上記の如く、基準画像中で検出した直線ｂ１、ｂ２、ｂ３、ｂ４に対する３次元情報（位置・方向）と計測信頼度を求めた後、各直線の３次元情報と、図４に示すように予め与えられたその物体の外形情報と照合し、下記の（式２）に示す導出式にてその外形情報との整合度を求める。
【００４５】
Ｍ＝  ｜（直線ｂ１と直線ｂ２の距離）−Ｌ１｜
＋｜（直線ｂ３と直線ｂ４の距離）−Ｌ２｜
＋｜（直線ｂ１と直線ｂ４のなす角）−θ1｜
＋｜（直線ｂ２と直線ｂ３のなす角）−θ2｜        （式２）
【００４６】
すなわち、画像から計測された直線の組み合わせにより複数のモデルとの整合度Ｍがこの式２により得られるが、この得られた整合度Ｍの中の最小の整合度となる直線の組み合わせより，物体の位置・姿勢を求め、さらに、その最小の整合度と組み合わせた各直線の計測信頼度とを全て加算し、この加算された合計値を物体の位置・姿勢である載置状態情報の信頼度とするのである。
【００４７】
また、この位置演算手段５は、図７に示すフローチャートに基づいて、前述の３次元データの処理にて得られた載置状態情報と上記信頼度演算手段７による信頼度の情報とを演算して信頼度が所定値以上の物体相互間の一方の物体Ｂ１と他方の物体Ｂ２相互間の距離の演算行う距離演算手段８を備えている。
【００４８】
具体的には、まず，載置状態情報の３次元データの位置・姿勢データにおいて認識対象物体Ｂ、Ｂ…の位置・姿勢を高いものから順番に並べ替え、次いで、その内の最も高い位置にある物体を取り出して仮の対象物体とする。この場合、その対象物体の上記手順にて求めた信頼度がしきいの所定値以下であれば、この仮の対象物体より計測上の位置データが次に低い物体を改めて対象物体とする。その後、残りの物体から対象物体以外の物体を１つ選択し、そして，この２つの物体を物体の置かれた前記の水平面Ｐ上へ投影して距離値を演算する。
【００４９】
なお、この場合の特定手段６は、上記の演算結果の距離値を所定の距離値とを比較する比較手段９を備えている。
【００５０】
具体的には、比較手段９は、図８に示すように、投影された２つの物体Ｂ１、Ｂ２の代表点Ｔ１、Ｔ２をそれぞれの中心点とした場合、２つの代表点Ｔ１、Ｔ２間の距離が、図８（ａ）に示すような２つの物体Ｂ１、Ｂ２の最大中心距離、すなわち、所定の距離値である重なり可能のしきい値ＭＩよりも大きければ、例えば図８（ｂ）に示すように、２つの物体Ｂ１、Ｂ２が重なりを生じていないことを判定している。
【００５１】
次に、上記の手順を図５、図７のフローチャートに基づいて位置演算手段５の信頼度演算手段７、距離演算手段８と特定手段６の比較手段９の説明を行う。
【００５２】
信頼度演算手段７は、前述のステップ４５における、直線の３次元情報である、３次元データの計測処理にて得られた各小領域ｓ１、ｓ２、ｓ３、ｓ４に係わるデータ（位置・方向）から、まず、そのステレオマッチング時の類似度を加算して直線の計測信頼度（Ｃｌｉ）を算出し（ステップ７１）、次いで、基準画像の水平方向とのなす角度をθとして（Ｃｌｉ＝Ｃｌｉ×（１+１００ｓｉｎ（θ））の計算を行い（ステップ７２）、その後、直線の組み合わせを選択を行い（ステップ７３）、モデルデータとマッチングさせて、各物体のモデルとの整合度（Ｍｊ）の算出を行った（ステップ７４）後、Ｍ（最小のＭｊ）となる直線の組み合わせより、物体の位置・姿勢を算出し（ステップ７５）、（計測信頼度＝Ｍ＋組み合わせた直線の計測計測信頼度）として計測信頼度の算出を行う（ステップ７６）。
【００５３】
なお、このようにして、ステレオペア毎に得られた計測結果の中で計測信頼度が最も高い計測結果を物体の位置・姿勢としても良い。
【００５４】
また、距離演算手段８は、まず、物体の３次元位置・姿勢計測データを、高さ順に並べ替え（ステップ８１）、次いで、上位高さにある物体を１つ、対象物体として取り出し（ステップ８２）、そのものの計測信頼度が所定の許容範囲内か否かの判定を行う。（ステップ８３）。このとき許容範囲以上であれば再びステップ８２へ戻るが、そうでない場合は、残りの物体から順番に対象物体と比較するものとし（ステップ８４）、物体を特定平面へ投影し（ステップ８５）、この２つの物体の中心の２次元距離を計算を行う（ステップ８６）。
【００５５】
上記の計算結果を受けて、比較手段９は、まず、物体間の２次元距離が重なり可能しきい値Ｍ１より大きいか否かを判定する（ステップ９１）。このとき重なり可能しきい値Ｍ１以上であれば後述するステップ９４へ移行するが、そうでない場合、投影された物体の辺の関係で重なり判定を行うものとし（ステップ９２）、重なり有りか否かの判定を行う（ステップ９３）。このとき重なりがあれば再び上記距離演算手段８のステップ８２へ戻るが、そうでない場合は、まだ比較していない物体があるか否かを判定するものとし（ステップ９４）、まだ比較していない物体のある場合は、上記距離演算手段８のステップ８４へ戻るが、そうでない場合は、上下に重なりのない物体と判定して物体Ａの特定を行う（ステップ９５）。
【００５６】
したがって、以上説明した物体特定装置１及び物体特定方法によると、情報入力手段２にて、略水平面Ｐ上に載置された複数の認識対象物体Ｂ、Ｂ…が撮像されてその画像情報から各物体それぞれの載置状態情報を取り込むことができる。信頼度演算手段７にて、前記情報入力手段２にて得られる任意の認識対象物体の載置状態情報と予め与えられたその物体の外形情報とにより該載置状態情報の信頼度を求めることができる。位置演算手段５にて、同情報入力手段２にて得られる認識対象物体Ｂ、Ｂ…の載置状態情報と前記信頼度の情報とを演算して信頼度が所定値以上の物体相互間の位置情報を求めることができる。特定手段６にて、同位置演算手段５の位置情報から、任意の載置状態にある複数の同一外形の認識対象の各物体相互の重なり状態を求めて、１つの物体を特定できるので、任意の載置状態にある複数の同一外形の認識対象物体Ｂ、Ｂ…を正確に認識して１つの物体Ａを確実に特定できる。
【００５７】
また、位置演算手段５に設けられた距離演算手段８にて、認識対象物体Ｂ、Ｂ…の任意の基準面の、前記水平面Ｐ上における一方の物体と他方の物体相互間の距離が演算される。特定手段６に設けられた比較手段９にて、同演算結果の距離値が所定の距離値とを比較され１つの物体を特定されるので、簡単な処理手順にて認識対象の各物体相互の重なり状態を求めて、１つの物体Ａを特定することができ、以て、短い処理時間にて１つの物体Ａを特定できる。
【００５８】
［第３の実施の形態］
図９は、第３の実施の形態の物体特定装置の位置演算部の投影面演算処理を示すフローチャートである。図１０は、同物体特定装置の位置演算部の投影面演算処理の説明図である。
【００５９】
この実施の形態の物体特定装置１は、位置演算部の演算処理の一部が第１の実施の形態と異なるもので、他の構成は第１の実施の形態のものと同一で、該実施の形態の物体特定装置１は、位置演算手段５は、認識対象物体Ｂ、Ｂ…の任意の基準面を前記水平面Ｐ上に投影した、その各投影面相互の重なり状態を演算する投影面演算手段１０を有し、特定手段６が、その演算結果の重なり状態を判定する判定手段を備えてなる。
【００６０】
詳しくは、この位置演算手段５の投影面演算手段１０は、図９に示すフローチャートに基づいて、前述の３次元データの処理にて得られた載置状態情報を前記水平面Ｐ上に投影させ、その各投影面相互の重なり状態を演算して物体相互間の一方の物体Ｂ１と他方の物体Ｂ２の重なり状態の判定演算行う。
【００６１】
具体的には、この場合、まず，２つの物体Ｂ１、Ｂ２に対して、図１０（ａ）に示すように物体の輪郭を特定の面に投影し、一方の物体Ｂ１を参照物体、他方の物体Ｂ２を対象物体とする。そして，図１０（ｂ）に示すように、前記参照物体である物体Ｂ１の辺を、左回りの辺ベクトルｄ１、ｄ２、ｄ３、ｄ４とおき，対象物体である物体Ｂ２の頂点をｅ１、ｅ２、ｅ３、ｅ４と置く。次いで、前記頂点ｅ１、ｅ２、ｅ３、ｅ４が左回りの辺ベクトルｄ１、ｄ２、ｄ３、ｄ４それぞれの左半平面に存在する数を調べる。ここで、前記左半平面に存在する頂点が１つでも存在すれば、前記の物体Ｂ１、Ｂ２は重なりを生じていると判定することができる。
【００６２】
また，前記左半平面に存在する頂点が全く無ければ、前記の物体Ｂ１、Ｂ２を入れ替えて同様の演算処理を行い、その結果、前記左半平面に存在する頂点が全く存在しなければ、物体Ｂ１、Ｂ２は重なりを生じていないと判定でき、前記左半平面に存在する頂点が1つでも存在すれば、物体Ｂ１、Ｂ２は重なりを生じていると判定できる。このようにして、２つの物体Ｂ１、Ｂ２の重なり状態の判定することができる。
【００６３】
次に、上記の手順を図９のフローチャートに基づいて説明する。投影面演算手段１０は、まず、２つの物体の輪郭を特定の面に投影し（ステップ１０１）、次いで、一方の物体Ｂ１を参照物体、他方の物体Ｂ２を対象物体とし（ステップ１０２）、参照物体である物体Ｂ１の輪郭を左回りの辺ベクトルで構成する（ステップ１０３）。その後、対象物体である物体Ｂ２の１つ以上の頂点が、物体Ｂ１の各辺ベクトルに対して、左半平面にあるか否かの判定を行い（ステップ１０４）、左半平面にある場合には物体Ｂ１、Ｂ２どうしは重なっていると判定し（ステップ１０５）、前述の特定手段６に設けられた判定手段にて、同演算結果の重なり状態が判定され１つの物体を特定される。
【００６４】
また、そうでないときにはフラグ確認を行い（ステップ１０６）、参照面と対象面を入れ替えるとともにフラグを変更して、再びステップ１０３へ移行する（ステップ１０７）が、上記ステップ１０６のフラグ確認結果が、参照物体及び対象物体の入れ替え後の処理であるときには、物体Ｂ１、Ｂ２どうしは重なっていない可能性があると判定する（ステップ１０８）。なお、この場合には、その後、更に詳しい判定を行うために位置演算手段５の前述のステップ５１に移行している。
【００６５】
したがって、以上説明した物体特定装置１によると、位置演算手段５に設けられた投影面演算手段１０にて、認識対象物体の任意の基準面を前記水平面Ｐ上に投影した、その各投影面相互の重なり状態が演算される。特定手段６に設けられた判定手段にて、同演算結果の重なり状態が判定され１つの物体を特定されるので、簡単な処理手順にて認識対象の各物体相互の重なり状態のある旨判定して１つの物体Ａを特定することができ、以て、短い処理時間にて重なりのある１つの物体Ａを特定できる。
【００６６】
［第４の実施の形態］
図１１は、第４の実施の形態の物体特定装置の位置演算部の記憶処理を示すフローチャートである。図１２は、同物体特定装置の位置演算部の記憶処理の説明図である。
【００６７】
この実施の形態の物体特定装置は、位置演算部の演算処理の一部が第１の実施の形態と異なるもので、他の構成は第１の実施の形態のものと同一で、該実施の形態の物体特定装置１は、位置演算手段５は、前記情報入力手段２にて得られる任意の基準面の３次元位置情報から認識対象物体Ｂ、Ｂ…の傾き状態を演算するとともにその傾き状態の大きい物体を特定の除外対象として記憶する記憶手段１１を有し、特定手段６が、同記憶手段１１の記憶情報を加えて演算するようなしている。
【００６８】
詳しくは、この位置演算手段５は、第１の実施の形態にて説明した情報入力手段２による３次元データの処理にて得られた載置状態情報から、前記の把持手段１３による把持失敗が発生することなく、精度良く把持しやすい状態の物体を特定するため、把持し損なう可能性のあるものを把持対象物体から除外し特定する方法で、この実施の形態の物体特定装置１のメインフローに連なる、図１１に示すフローチャートのＳ６１からＳ６３に示す過程で、その傾き状態の大きい物体を特定の除外対象として記憶するための記憶手段１１を備えている。
【００６９】
具体的には、把持失敗が発生しやすい状態の物体とは、例えば図１２（ａ）に示すように、把持対象物体Ｂの傾きが大きく，把持手段１３がアプローチできないもの、あるいは把持手段１３の接触等によってそのアプローチの把持以前に把持対象物体Ｂの位置・姿勢が変化してしまう状態にある物体が一例として挙げられる。そのため、このような傾きの大きい物体は、把持手段１３による把持失敗が発生する可能性が大として図１１に示すフローチャートの手順に基づいて、前述の３次元データの処理にて得られた物体の載置状態情報である平行ステレオ画像情報から相互位置関係を判定し、把持対象物体Ａとして決定した後、その傾きが大きい場合には把持失敗が発生しやすいものであると判定して記憶手段１１に記憶させ、その後再びこの把持対象物体Ａと重なりのない他の把持対象物体Ａを特定する。
【００７０】
なお、把持失敗が発生しやすいものであると判定して記憶手段１１に記憶させるものは、上記の傾きが大きいもの以外に、図１２（ｂ）に示すように、例えば計測誤差が大きくて前述の載置状態情報の信頼度の低い場合に、実際の物体Ｂと外れた位置として載置状態情報が求まる場合、あたかも破線にて示す位置に物体Ｂがあるように誤った判定をするのを防止するために記憶させても良い。
【００７１】
次に、上記の手順を図１１のフローチャートに基づいて説明する。この物体特定装置１は、プログラムがスタートすると（ステップ１）、まず、情報入力手段２にて３次元位置・姿勢計測がなされ（ステップ２）、次いで、位置演算手段５にて相互位置関係判定がなされ（ステップ５）、その後、特定手段６にて、まず、把持対象物体が決定され（ステップ６１）、把持対象物体の位置・姿勢で傾きが大きいか否かが判定されるが（ステップ６２）、このときその傾き状態が所定の値より大きいときには記憶手段１１に記憶され（ステップ１１）、再びステップ２へ移行する。また、その傾き状態が所定の値より小さいときにはこの把持対象物体と重なりの無い他の把持対象物体を決定する（ステップ６３）。なお、このとき、重なり状態の判定は、物体の重なりのある場合についてのみ上記の処理を行うことで、より効率的に物体同士の相互の位置関係を判定することができる。
【００７２】
したがって、以上説明した物体特定装置１によると、位置演算手段５に設けられた記憶手段１１にて、前記情報入力手段２にて得られる任意の基準面の３次元位置情報から認識対象物体の傾き状態を演算されたその傾き状態の大きい物体が特定の除外対象として記憶される。特定手段６にて、同記憶手段１１の記憶情報を加えて演算され１つの物体を特定されるので、記憶手段１１に記憶された把持失敗が発生しやすいものであると判定された物体を予め除外して判定がなされ、以て、より短時間に物体Ａを特定できる。
【００７３】
なお、本発明の物体特定方法は、上記の処理手順に示したもの以外に、例えば、図１３のフローチャートに示すように、まず、物体の３次元位置・姿勢を計測し、相互位置関係を判定し、次いで、前述の相互位置関係の演算結果を用いて重なり状態のない物体が存在するかを判定、重なり状態のない物体が存在する場合には、さらに重なり状態のないの物体は２つ以上存在するかどうかを判定し、このとき、１つしか存在しなければこの物体を把持対象物体と決定し、２つ以上存在すれば計測信頼度の高い方の物体を把持対象物体とし、また、一方、相互位置関係の演算結果において、重なり状態のある場合には、さらに重なりの状態の組みが２つ以上存在するかどうかを判定して、重なりの状態の組みが１つであれば重なりの最上部の物体を把持対象物体と決定し、また、重なりの状態の組みが２つ以上存在していれば、各重なりの最上部の物体を全て選び出して計測信頼度が最も高い物体を把持対象物体と決定する等、各種手順を組み合わたものを含むことは言うまでもない。
【００７４】
【発明の効果】
本発明の物体特定方法及び装置は、上述の実施態様の如く実施されて、情報入力手段にて、略水平面上に載置された複数の認識対象物体が撮像されてその画像情報から各物体それぞれの載置状態情報を取り込むことができる。位置演算手段にて、同情報入力手段にて得られる認識対象物体の載置状態情報から各物体相互間の位置情報を求めることができる。特定手段にて、同位置演算手段の位置情報から、任意の載置状態にある複数の同一外形の認識対象の各物体相互の重なり状態を求めて、１つの物体を特定できるので、任意の載置状態にある複数の同一外形の認識対象物体を正確に認識して１つの物体を確実に特定できる。
【００７５】
また、情報入力手段にて、略水平面上に載置された複数の認識対象物体が撮像されてその画像情報から各物体それぞれの載置状態情報を取り込むことができる。信頼度演算手段にて、前記情報入力手段にて得られる任意の認識対象物体の載置状態情報と予め与えられたその物体の外形情報とにより該載置状態情報の信頼度を求めることができる。位置演算手段にて、同情報入力手段にて得られる認識対象物体の載置状態情報と前記信頼度の情報とを演算して信頼度が所定値以上の物体相互間の位置情報を求めることができる。特定手段にて、同位置演算手段の位置情報から、任意の載置状態にある複数の同一外形の認識対象の各物体相互の重なり状態を求めて、１つの物体を特定できるので、任意の載置状態にある複数の同一外形の認識対象物体を正確に認識して１つの物体を確実に特定できる。
【００７６】
そして、情報入力手段にて、認識対象物体の任意の基準面の３次元位置情報が取り込まれる。位置演算手段にて、同認識対象物体相互の一方の物体と他方の物体との該基準面どうしの相対的な高さ位置が演算されるので、より正確に認識対象物体を認識して１つの物体をでき、以て、例えば把持失敗の発生を少なくできる。
【００７７】
また、位置演算手段に設けられた距離演算手段にて、認識対象物体の任意の基準面の、前記水平面上における一方の物体と他方の物体相互間の距離が演算される。特定手段に設けられた比較手段にて、同演算結果の距離値が所定の距離値とを比較され１つの物体を特定されるので、簡単な処理手順にて認識対象の各物体相互の重なり状態を求めて、１つの物体を特定することができ、以て、短い処理時間にて１つの物体を特定できる。
【００７８】
また、位置演算手段に設けられた投影面演算手段にて、認識対象物体の任意の基準面を前記水平面上に投影した、その各投影面相互の重なり状態が演算される。特定手段に設けられた判定手段にて、同演算結果の重なり状態が判定され１つの物体を特定されるので、簡単な処理手順にて認識対象の各物体相互の重なり状態のある旨判定して１つの物体を特定することができ、以て、短い処理時間にて重なりのある１つの物体を特定できる。
【００７９】
また、位置演算手段に設けられた記憶手段にて、前記情報入力手段にて得られる任意の基準面の３次元位置情報から認識対象物体の傾き状態を演算されたその傾き状態の大きい物体が特定の除外対象として記憶される。特定手段にて、同記憶手段の記憶情報を加えて演算され１つの物体を特定されるので、記憶手段に記憶された把持失敗が発生しやすいものであると判定された物体を予め除外して判定がなされ、以て、より短時間に物体を特定できる。
【００８０】
【図面の簡単な説明】
【図１】本発明の第１の実施の形態の物体特定方法を使用する物体特定装置を示す概略構成図である。
【図２】同実施の形態の物体特定方法を示すフローチャートである。
【図３】同物体特定装置の３次元画像処理を示す説明図である。
【図４】同物体特定装置の位置演算部の演算処理の説明図である。
【図５】第２の実施の形態の物体特定装置の位置演算部の信頼度演算処理を示すフローチャートである。
【図６】同物体特定装置の物体特定方法の信頼度演算手段の説明図である。
【図７】同物体特定装置の位置演算部の距離演算処理を示すフローチャートである。
【図８】同物体特定装置の位置演算部の距離演算処理の説明図である。
【図９】第３の実施の形態の物体特定装置の位置演算部の投影面演算処理を示すフローチャートである。
【図１０】同物体特定装置の位置演算部の投影面演算処理の説明図である。
【図１１】第４の実施の形態の物体特定装置の位置演算部の記憶処理を示すフローチャートである。
【図１２】同物体特定装置の位置演算部の記憶処理の説明図である。
【図１３】本発明の他の実施例の物体特定方法を示すフローチャートである。
【符号の説明】
１    物体特定装置
２    情報入力手段
５    位置演算手段
６    特定手段
７    信頼度演算手段
８    距離演算手段
９    比較手段
１０    投影面演算手段
１１  記憶手段
Ａ    物体
Ｂ    認識対象物体
Ｂ１  一方の物体
Ｂ２  他方の物体
Ｐ    水平面
【図１】
0003654042.tif 000002
【図２】
0003654042.tif 000003
【図３】
0003654042.tif 000004
【図４】
0003654042.tif 000005
【図５】
0003654042.tif 000006
【図６】
0003654042.tif 000007
【図７】
0003654042.tif 000008
【図８】
0003654042.tif 000009
【図９】
0003654042.tif 000010
【図１０】
0003654042.tif 000011
【図１１】
0003654042.tif 000012
【図１２】
0003654042.tif 000013
【図１３】
0003654042.tif 000014