(57)【要約】【課題】      対象物の３次元位置と姿勢を高精度で検出する。  【解決手段】  ロボット１０と、ロボットを制御するロボット制御装置２と、ロボットのアーム先端に設けられた撮像装置２０と、撮像装置により撮像された画像を処理する画像処理装置３０とを備え、対象物１００を操作するロボットシステムにおいて、画像処理装置２０は、対象物１００の特徴となる基準画像を２以上登録するモデル画像登録部１と、モデル画像登録部に登録された基準画像を画像処理し、撮像画像の中の対象物について３点のカメラ座標系上の位置を検出する検出処理部３と、カメラ座標系上の検出点を３次元位置に変換する３次元位置変換部４とを備える。【選択図】    図１
2006224291.tif 000002
【特許請求の範囲】
【請求項１】
ロボットと、前記ロボットを制御するロボット制御装置と、前記ロボットのアーム先端に設けられた撮像装置と、前記撮像装置により撮像された画像を処理する画像処理装置とを備え、対象物を操作するロボットシステムにおいて、
前記画像処理装置は、
前記対象物の特徴となる基準画像を２以上登録するモデル画像登録部と、
前記モデル画像登録部に登録された基準画像を画像処理し、前記撮像画像の中の前記対象物について３点のカメラ座標系上の位置を検出する検出処理部と、
前記カメラ座標系上の検出点を３次元位置に変換する３次元位置変換部と、
を備えることを特徴とするロボットシステム。
【請求項２】
前記画像処理装置は、２以上の登録された前記基準画像の間の距離を登録するモデル距離登録部を備えることを特徴とする請求項１に記載のロボットシステム。
【請求項３】
前記基準画像の数は３であることを特徴とする請求項１に記載のロボットシステム。
【請求項４】
前記３次元位置変換部で変換された前記３点の位置から座標系を生成することを特徴とする請求項１に記載のロボットシステム。
【請求項５】
前記基準画像は、前記対象物の１つの特徴となる部分に対し、２以上であることを特徴とする請求項１に記載のロボットシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、対象物の位置を画像処理装置で検出してその対象物を操作するロボットシステムに関する。  
【背景技術】
【０００２】
従来の画像処理装置は、山積みされた対象物や、所定領域内に任意の位置姿勢で収納されている対象物を撮像することによって、その対象物の位置と姿勢を検出することができるようになっている（例えば特許文献１参照）。対象物の位置は具体的には次のようにして検出される。
まず、ロボットの手先に取り付けられたカメラを移動させてワークピースを順次撮像していき、それぞれのモデルを登録する。そして、カメラとワークピースの相対位置姿勢を求めて記憶する。その時、ワークピースが視野に入るようにロボットを動作させてから、複数のモデル画像を順次マッチングさせ、マッチングしたモデル画像の中から最もマッチング度が高いモデル画像によってカメラの相対位置関係が求められる。
このように、従来の画像処理装置は、１つのワークピースのモデルを複数のカメラ位置と姿勢から撮像して相対位置と関連付けして記憶させておき、その後、順次モデルをマッチングさせて最もマッチング度の高いモデルを求め、そのモデルに関連付けられた３次元位置と姿勢から対象物の３次元位置と姿勢を求めるようになっている。
【特許文献１】特許３３７７４６５号公報（第４−６頁、図５、図６）
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところが従来の画像処理装置は、複数の異なるカメラ位置と姿勢毎に同じ対象物のモデル画像を複数記憶させて、撮像をその複数のモデル画像とマッチングさせているので、対象物の位置と姿勢の精度が予め登録されているカメラの位置と姿勢の精度に依存している。
例えば、カメラ位置が１０°刻みに登録されていれば検出精度も１０°刻みの分解能となっている。
このため、ロボットの先端に取り付けられたツール（対象物を操作する手先器、例えば、対象物をハンドリングするハンドなど）と対象物との間のクリアランス（許容精度）が大きくなるように、ハンドを製作しなければならず、ロボットの制御精度が低下するという問題があった。
本発明は、かかる問題に鑑みてなされたものであり、高精度で対象物の３次元位置と姿勢を検出する画像処理装置を備えたロボットシステムを提供することを目的とする。  
【課題を解決するための手段】
【０００４】
上記の課題を解決するため、第１の本発明は、ロボットと、前記ロボットを制御するロボット制御装置と、前記ロボットのアーム先端に設けられた撮像装置と、前記撮像装置により撮像された画像を処理する画像処理装置とを備え、対象物を操作するロボットシステムにおいて、前記画像処理装置は、前記対象物の特徴となる基準画像を２以上登録するモデル画像登録部と、前記モデル画像登録部に登録された基準画像を画像処理し、前記撮像画像の中の前記対象物について３点のカメラ座標系上の位置を検出する検出処理部と、前記カメラ座標系上の検出点を３次元位置に変換する３次元位置変換部と、を備えることを特徴としている。
また第２の本発明は、前記画像処理装置は、２以上の登録された前記基準画像の間の距離を登録するモデル距離登録部を備えることを特徴としている。
また第３の本発明は、前記基準画像の数は３であることを特徴としている。
また第４の本発明は、前記３次元位置変換部で変換された前記３点の位置から座標系を生成することを特徴としている。
また第５の本発明は、前記基準画像は、前記対象物の１つの特徴となる部分に対し、２以上であることを特徴としている。
【発明の効果】
【０００５】
第１の発明によると、画像処理装置が、対象物の特徴となる基準画像を２以上登録するモデル画像登録部と、モデル画像登録部に登録された基準画像を画像処理し、撮像画像の中の対象物について３点のカメラ座標系上の位置を検出する検出処理部と、カメラ座標系上の検出点を３次元位置に変換する３次元位置変換部と、を備えているので、高精度で対象物の３次元位置と姿勢を検出するロボットシステムを提供できるという効果がある。
第２の発明によると、画像処理装置は、２以上の登録された基準画像の間の距離を登録するモデル距離登録部を備えているので、基準画像が２の場合でも、対象物の３次元位置と姿勢を検出できるという効果がある。
第３の発明によると、基準画像の数が３であるので、１つの対象物に異なる特徴が３つある場合に、操作者が客観的に操作しやすいという効果がある。
第４の発明によると、３次元位置変換部で変換された３点の位置から座標系を生成するので、予め登録されたロボット軌跡を容易に修正できるという効果がある。
第５の発明によると、基準画像が対象物の１つの特徴となる部分に対して２以上であるので、より精度良く対象物の３次元位置と姿勢を検出できるという効果がある。
【発明を実施するための最良の形態】
【０００６】
以下、本発明の実施の形態について図を参照して説明する。
【実施例１】
【０００７】
図１は、画像処理装置を備えた本発明のロボットシステムの構成図である。図においてロボット１０はロボット制御装置２１によって制御されており、手先部にはカメラ２０が２個装着されている。カメラ２０と画像処理装置３０の間は電源線と信号線で接続されており、カメラ２０が画像処理装置３０によって制御される。対象物１００は図に示すようにランダムに山積されており、ロボット１０にはこの対象物をハンドリングするハンドが装着されている。
【０００８】
カメラ２０は２個使われて同一対象物を撮像するようになっており、一般的にステレオ２眼視として知られている。このステレオ２眼視によって同一対象物の同一点を２つのカメラで撮影すると、カメラ座標系の２次元位置に基づき透視変換して３次元位置に変換される。この変換の際には複数個のカメラパラメータが使われており、このカメラパラメータは内部パラメータと外部パラメータに分けられる。内部パラメータはカメラ座標系を定義するパラメータとレンズの幾何学的補正係数を含んでおり、外部パラメータはワールド座標系におけるカメラの３次元位置と姿勢の情報を含んでいる。
【０００９】
画像処理装置３０にはモデル画像登録部１とモデル距離登録部２、検出処理部３、３次元位置変換部４、通信部５が含まれており、この他にもカメラ２０が撮像した映像を表示するモニタやカーソルを動作させるペンダントも含まれている。
【００１０】
モデル画像登録部１には予め検出する対象物１００の特徴点が登録されており、その特徴点には画像データと画像処理に必要な各種のパラメータが含まれている。図２はその一例であり、３００が主基準画像であり、３０１、３０２が従基準画像である。
モデル距離登録部２は、各検出位置間の３次元距離を登録する。
検出処理部３は、２個のカメラ２０で撮像した画像と、モデル画像登録部１のモデルを画像処理し、対象物１００の主基準画像３００、従基準画像３０１、３０２のカメラ座標系上の２次元位置を検出する。
３次元位置変換部４は、２個のカメラ２０で検出した位置に応じて各基準画像を３次元位置へ変換する。
【００１１】
次に画像処理装置３０の動作について図５のフローチャートに沿って順に説明する。まず登録時の処理、すなわち教示時の処理について説明する。
（ステップＡ）対象物１００の１つを２個のカメラ２０で撮像する。
（ステップＢ）図２に示すように、主基準画像３００、従基準画像３０１、３０２のように登録する。
（ステップＣ）主基準画像３００の位置を原点とし、この原点から見た従基準画像３０１の方向をＸ軸方向、従基準画像を含む平面をＸＹ平面として、図４に示すように座標系Ｍを作成する。この座標系Ｍはロボットの座標系上の座標系である。
【００１２】
次に、実行時の処理について順に説明する。
（ステップＤ）ロボット制御装置２１が対象物１００を撮像できる位置へカメラ２０を移動させる。
（ステップＥ）ロボット制御装置２１が画像処理装置３０に検出開始指令を出力する。
（ステップＦ）ロボット制御装置２１が主基準画像３００にマッチングする位置を検出して３次元位置を求める。
（ステップＧ）ロボット制御装置２１が従基準画像３０１、３０２にマッチングする位置を検出して２つの点の３次元位置を求める。
（ステップＨ）ロボット制御装置２１がステップＦ，Ｇで求めた３次元位置から、ステップＣと同じ方法で座標系Ｎを作成する。
（ステップＩ）座標系Ｍ、Ｎから対象物１００の３次元位置と姿勢の変化量を計算する。画像処理装置３０は、ステップＩで求めた変化量を通信部５によってロボット制御装置２１の通信部６に送信する。
（ステップＪ）ロボット制御装置２１の通信部６が位置と姿勢の変化量を受信してからその変化量を動作指令部７に指令し、ロボット１０を動作させることによって、ロボット１０の位置と姿勢を変更する。
【００１３】
以上のステップを実行することにより、ロボット１０は対象物１００の３次元位置と姿勢を認識することができる。そして、この位置と姿勢に基づいて、予め登録されたロボット軌跡を修正することにより、対象物１００を操作することが可能となる。
【実施例２】
【００１４】
実施例２として、対象物１００の特徴となる画像が２つの場合について説明する。
図３に示すように、対象物１００には主基準画像３００と従基準画像３１０の２種類の特徴ある画像だけが登録される。この場合、モデル距離登録部２は主基準画像３００の３次元位置と従基準画像３１０の３次元位置の各々の距離を算出し、図６に示すようなデータテーブル４００を作成する。距離Ｌ１は、点Ｐ０−Ｐ１間の距離であり、距離Ｌ２は、距離Ｐ０−Ｐ２間の距離である。そして主基準画像の位置をＰ０とし、このＰ０を原点としてＰ１をＸ軸方向とし、Ｐ２をＸＹ平面上の点として座標系Ｍを作成する。
【００１５】
実行時は主基準画像３００を検出してから３次元位置を求め、従基準画像３１０を検出してから３次元位置を求める。そしてこの従基準画像３１０の３次元位置と主基準画像の３次元位置から各々の距離を算出し、各々の距離の中から、登録されている点Ｐ１、Ｐ２と同じ距離を与える３次元位置を探し出す。次に主基準画像の検出位置をＱ０としてＰ１に対応する点をＱ１とし、Ｐ２に対応する点をＱ２として座標系Ｎを作成する。そして座標系Ｍ、Ｎに基づいて３次元位置と姿勢の変化量を求める。
このようにして姿勢と変化量を求めているので、主基準画像と異なる従基準画像が１種類の場合でも、検出することが可能となるのである。
【実施例３】
【００１６】
次に実施例３について図７を用いて説明する。この例の場合、モデル画像登録部１は３２０を主基準マクロ画像とし、３２１を主基準ミクロ画像として１つの特徴となる部分について２つのモデルを登録しており、同様に３３０、３４０を従基準マクロ画像とし、３３１、３４１を従基準ミクロ画像としている。
この例の検出処理部３の動作について図８のフローチャートに沿って説明する。
（ステップＫ）２個のカメラ２０で撮像した画像と、主基準マクロ画像３２０を画像処理し、カメラ座標系上での２次元位置を検出する。
（ステップＬ）ステップＫの結果から、例えば処理範囲などの検出条件を再設定する。
（ステップＭ）ステップＬで再設定した検出条件で、主基準ミクロ画像３２１を画像処理し、カメラ座標系上での２次元位置を検出する。
このような手順で検出するので、図９に示したような対象物１００が傾くなどして入力画像が基準画像と異なってしまうような場合でも、精度良く検出することが可能となるのである。
【産業上の利用可能性】
【００１７】
本発明は、ロボットにより対象物の３次元位置を認識するロボットシステムに有用である。
【図面の簡単な説明】
【００１８】
【図１】本発明のロボットシステムの構成を示す図
【図２】対象物を説明する図
【図３】第２の対象物を説明する図
【図４】対象物の座標系を説明する図
【図５】動作手順を説明するフローチャート
【図６】第２の対象物とそのデータ構造を説明する図
【図７】第３の対象物を説明する図
【図８】第２の動作手順を説明するフローチャート
【図９】第３の対象物を説明する図
【符号の説明】
【００１９】
１  モデル登録部、          ２  モデル距離登録部、          ３  検出処理部、
４  ３次元位置変換部、      ５  通信部、                    ６  通信部、
７  動作指令部、            １０  ロボット、                ２０  カメラ、
２１  ロボット制御装置、    ２２  ハンド、                  ３０  画像処理装置、
１００  対象物
【図１】
2006224291.tif 000003
【図２】
2006224291.tif 000004
【図３】
2006224291.tif 000005
【図４】
2006224291.tif 000006
【図５】
2006224291.tif 000007
【図６】
2006224291.tif 000008
【図７】
2006224291.tif 000009
【図８】
2006224291.tif 000010
【図９】
2006224291.tif 000011