JP2007171018A - 物体位置認識方法及び物体位置認識装置 - Google Patents

物体位置認識方法及び物体位置認識装置 Download PDF

Info

Publication number
JP2007171018A
JP2007171018A JP2005370079A JP2005370079A JP2007171018A JP 2007171018 A JP2007171018 A JP 2007171018A JP 2005370079 A JP2005370079 A JP 2005370079A JP 2005370079 A JP2005370079 A JP 2005370079A JP 2007171018 A JP2007171018 A JP 2007171018A
Authority
JP
Japan
Prior art keywords
imaging
target
robot
coordinate system
image data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2005370079A
Other languages
English (en)
Inventor
Akira Kunisaki
晃 国崎
Masayuki Nakaya
正幸 中屋
Katsutoshi Ono
克俊 大野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nachi Fujikoshi Corp
Original Assignee
Nachi Fujikoshi Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nachi Fujikoshi Corp filed Critical Nachi Fujikoshi Corp
Priority to JP2005370079A priority Critical patent/JP2007171018A/ja
Publication of JP2007171018A publication Critical patent/JP2007171018A/ja
Withdrawn legal-status Critical Current

Links

Images

Abstract

【課題】カメラの搭載個数の低減による生産性の向上と装置の小型化を図る。
【解決手段】 撮像により画像データを取得する撮像手段20と、アーム先端部に撮像手段を保持するロボット30とを備える物体位置認識装置100による物体位置認識方法であって、少なくとも二以上の撮像位置に順番に撮像手段を位置合わせして目標物の目標点の撮像を行う工程と、各撮像位置の画像データから撮像座標系における目標位置の位置座標を求める工程と、各撮像位置での撮像座標系における目標位置の位置座標と、ロボット座標系における各撮像位置の位置座標とにより、目標位置の前記ロボット座標系における位置座標を算出する工程とを備える、という構成を採っている。
【選択図】図1

Description

本発明は、撮像手段で捉えた対象範囲の画像を解析することによって目的物の位置を認識する物体位置認識方法及び物体位置認識装置に関する。
物体位置認識装置は、例えば、産業用ロボットのシステムに搭載され、ロボットの作業対象物であるワークの位置認識を行うために使用される。かかるワークの位置認識のためには、ロボットのアーム先端部に撮像手段であるカメラを搭載することが一般的に行われているが、単一のカメラ画像では物体を平面的にしか捕らえることができず、奥行きを把握することができない。
従って、従来の物体位置認識装置は、ロボットのアーム先端部における離れた二つの搭載位置のそれぞれにカメラを搭載していた。そして、当該各カメラの双方により同一のワークを撮像し、各カメラで得られた画像データからワーク上の所定点について三次元であるロボット座標上の位置座標を算出することでワークの位置認識を行っていた(例えば、特許文献1参照)。
特開2005−186193号公報
しかしながら、上記従来の物体位置認識装置にあっては、ロボットのアーム先端に2つのカメラを搭載しているため、カメラ二台分のコストが必要となるとと共に部品点数の増加を招き生産性が低下するという問題があった。また、ロボットのアーム先端に二台離れてカメラが搭載されているため、アーム先端部が大きくなって狭い場所に進入させることができないという問題があった。
また、上記従来の物体位置認識装置による位置認識にあっては、ワーク上の同一の微小なポイントをそれぞれのカメラが捕らえ、それぞれのカメラの撮像範囲内の微小なるポイントの二次元座標における位置座標の差から三次元上の位置座標を算出するものである。
このため、一方のカメラで捕らえた微小ポイントと同じポイントをもう一方のカメラで捕らえる必要がある。
しかしながら、二つのカメラはそれぞれ離れた位置からワークの撮像を行うため、視差により同一ポイントを特定することが難しく、異なるポイントを捕らえることで三次元上の位置認識を誤る可能性があった。
特に、ビンピッキング、即ち、同一のワークが乱雑に詰まれた状態からひとつのワークを取り出す場合のように、いずれも同一の微小ポイントを備える複数のワークの中から二つのカメラが同じワークの微小ポイントを捕らえる必要がある場合に、ポイントを誤る可能性が高かった。
本発明は、装置の生産性の向上を図ることをその目的とする。
また、本発明は、装置の小型化を図ることをその目的とする。
さらに、本発明は、物体の位置認識をより正確に行うことをその目的とする。特に、本発明では、所定方向に並べることなく置かれた、或いは無作為に積まれた物体を個々に位置認識可能とすることをその目的とする。
請求項1記載の発明は、目標物の撮像により撮像範囲内を細分化した点群についての画像データを取得する撮像手段と、アーム先端部の位置及び姿勢を任意に変化させると共にアーム先端部に撮像手段を保持するロボットとを備える物体位置認識装置による物体位置認識方法であって、ロボットによりロボット座標系の位置座標が既知である少なくとも二以上の撮像位置に順番に撮像手段を位置合わせした上で各撮像位置から目標物の目標点の撮像を行う工程と、各撮像位置で得られた画像データから撮像座標系における目標位置の位置座標を求める工程と、各撮像位置での撮像座標系における目標位置の位置座標と、ロボット座標系における各撮像位置の位置座標とにより、目標位置のロボット座標系における位置座標を算出する工程とを備える、という構成を採っている。
なお、撮像座標系とは、撮像手段の撮像範囲内に展開される二次元の座標系をいい、ロボット座標系とは、アーム先端の可動領域に展開される三次元の座標系をいう。以下の請求項2から4についても同様である。
請求項2記載の発明は、目標物の撮像により撮像範囲内を細分化した点群についての画像データを取得する撮像手段と、アーム先端部の位置及び姿勢を任意に変化させると共にアーム先端部に撮像手段を保持するロボットとを備える物体位置認識装置による物体位置認識方法であって、ロボットによりロボット座標系の位置座標が既知である少なくとも二以上の撮像位置に順番に撮像手段を位置合わせした上で各撮像位置から目標物の目標点の撮像を行う工程と、各撮像位置で得られた画像データから撮像座標系における目標位置の位置座標を求める工程と、各撮像位置での撮像座標系における目標位置の位置座標と、ロボット座標系における各撮像位置の位置座標とにより、目標位置の前記ロボット座標系における位置座標を算出する工程とを備え、各撮像位置で目標点の撮像を行う工程で、当該各撮像位置の間での撮像手段の移動を行いつつ連続的又は間欠的に目標点の撮像を行うと共に、当該移動中の各位置での撮像による画像データをその前の位置の撮像による画像データと比較して目標点を追跡する処理を行う、という構成を採っている。
請求項3記載の発明は、目標物の撮像により撮像範囲内を細分化した点群についての画像データを取得する撮像手段と、アーム先端部の位置及び姿勢を任意に変化させると共にアーム先端部に撮像手段を保持するロボットと、ロボットによりロボット座標系の位置座標が既知である少なくとも二以上の撮像位置に順番に撮像手段を位置合わせした上で各撮像位置から目標物の目標点の撮像を行わせる撮像制御手段と、各撮像位置で得られた画像データから撮像座標系における目標位置の位置座標を求める撮像位置座標算出手段と、各撮像位置での撮像座標系における目標位置の位置座標と、ロボット座標系における各撮像位置の位置座標とにより、目標位置の前記ロボット座標系における位置座標を算出する三次元位置算出手段とを備える、という構成を採っている。
請求項4記載の発明は、目標物の撮像により撮像範囲内を細分化した点群についての画像データを取得する撮像手段と、アーム先端部の位置及び姿勢を任意に変化させると共にアーム先端部に撮像手段を保持するロボットと、ロボットによりロボット座標系の位置座標が既知である少なくとも二以上の撮像位置に順番に撮像手段を位置合わせした上で各撮像位置から目標物の目標点の撮像を行わせる撮像制御手段と、各撮像位置で得られた画像データから撮像座標系における目標位置の位置座標を求める撮像位置座標算出手段と、各撮像位置での撮像座標系における目標位置の位置座標と、ロボット座標系における各撮像位置の位置座標とにより、目標位置のロボット座標系における位置座標を算出する三次元位置算出手段と、各撮像位置の間を撮像手段が移動するに際し、連続的又は間欠的に目標点の撮像を行うと共に、当該移動中の各位置での撮像による画像データをその前の位置の撮像による画像データと比較して目標点を追跡する処理を行う追跡処理手段とを備える、という構成を採っている。
請求項1記載の発明では、二以上の撮像位置で撮像を行う工程では、ロボットの駆動により各撮像位置に順番に撮像手段を位置合わせして、それぞれの位置で撮像を行う。
撮像座標系での位置座標を求める工程では、各撮像位置における画像データから、撮像範囲内の目標点を、例えば、二値化処理やパターンマッチング処理等により抽出し、当該目標点が撮像範囲内のいずれに位置するかを示す二次元の撮像座標系で表される位置座標が求められる。
なお、ここで、撮像座標系の位置座標は全ての撮像位置での撮像が行われた後に求めても良いし、撮像ごとに求めても良い。請求項2も同様である。
ロボット座標系における位置座標を算出する工程では、各撮像位置が既知なので、これら撮像位置と撮像座標系で表される位置座標とから、例えば、三角法等を駆使することで目標点の三次元のロボット座標系(ロボットが配置された空間上の三次元座標系)の位置座標が算出される。
このように、撮像手段がロボットにより各撮像位置に運ばれるので、各撮像位置ごとに配置された撮像手段が不要となり、撮像手段の個体数を低減し、コスト低減及び生産性の向上を図ることが可能となる。また、各撮像位置ごとに離れて配置された撮像手段を不要とするので、ロボットのアーム先端部を小型化し、狭い場所でもロボットにより作業を行うことが可能となる。
請求項2記載の発明では、二以上の撮像位置で撮像を行う工程では、ロボットの駆動により各撮像位置に順番に撮像手段を位置合わせして、それぞれの位置で撮像を行う。
また、各撮像位置に順番に撮像手段を移動する途中では間欠的又は連続的に目標位置の撮像を行い、当該間欠的又は連続的な撮像による画像データを直前の画像データを比較して、撮像範囲内で位置変位を生じた場合でも目標点の位置確認が行われる。
撮像座標系での位置座標を求める工程では、各撮像位置における画像データから、撮像範囲内の目標点を、例えば、二値化処理やパターンマッチング処理等により抽出し、当該目標点が撮像範囲内のいずれに位置するかを示す二次元の撮像座標系で表される位置座標が求められる。
ロボット座標系における位置座標を算出する工程では、各撮像位置が既知なので、これら撮像位置と撮像座標系で表される位置座標とから、例えば、三角法等を駆使することで目標点の三次元のロボット座標系(ロボットが配置された空間上の三次元座標系)の位置座標が算出される。
このように、撮像手段がロボットにより各撮像位置に運ばれるので、各撮像位置ごとに配置された撮像手段が不要となり、撮像手段の個体数を低減し、コスト低減及び生産性の向上を図ることが可能となる。また、各撮像位置ごとに離れて配置された撮像手段を不要とするので、ロボットのアーム先端部を小型化し、狭い場所でもロボットにより作業を行うことが可能となる。
さらに、複数の撮像位置の間での移動の間、間欠的又は連続的に目標点を撮像し追跡するので、一方の撮像位置での撮像画像内の目標点と他方の撮像位置での撮像画像内の目標点との一致の判断を容易に行うことができ、これに伴い、目標点の誤認識を抑制し、より正確に目標点の位置を特定することが可能となる。
特に、複数の目標点が撮像範囲内に存在する場合でも、一の目標点を他の目標点と混同する事態を効果的に抑制し、より正確に目標点の位置を特定することが可能となる。
請求項3記載の発明では、撮像制御手段により、ロボットの駆動により各撮像位置に順番に撮像手段を位置合わせして、それぞれの位置で撮像が行われる。
次いで、撮像位置座標算出手段は、各撮像位置における画像データから、撮像範囲内の目標点を、例えば、二値化処理やパターンマッチング処理等により抽出し、当該目標点が撮像範囲内のいずれに位置するかを示す二次元の撮像座標系で表される位置座標を算出する。
そして、三次元位置算出手段は、各撮像位置が既知なので、これら撮像位置と撮像座標系で表される位置座標とから、例えば、三角法等を駆使することで目標点の三次元のロボット座標系(ロボットが配置された空間上の三次元座標系)の位置座標を算出する。
このように、撮像手段がロボットにより各撮像位置に運ばれるので、各撮像位置ごとに配置された撮像手段が不要となり、撮像手段の個体数を低減し、コスト低減及び生産性の向上を図ることが可能となる。また、各撮像位置ごとに離れて配置された撮像手段を不要とするので、ロボットのアーム先端部を小型化し、狭い場所でもロボットにより作業を行うことが可能となる。
請求項4記載の発明では、撮像制御手段により、ロボットの駆動により各撮像位置に順番に撮像手段を位置合わせして、それぞれの位置で撮像が行われる。
また、追跡処理手段により、各撮像位置に順番に撮像手段を移動する途中では間欠的又は連続的に目標位置の撮像を行い、当該間欠的又は連続的な撮像による画像データを直前の画像データを比較して、撮像範囲内で位置変位を生じた場合でも目標点の位置確認が行われる。
次いで、撮像位置座標算出手段は、各撮像位置における画像データから、撮像範囲内の目標点を、例えば、二値化処理やパターンマッチング処理等により抽出し、当該目標点が撮像範囲内のいずれに位置するかを示す二次元の撮像座標系で表される位置座標を算出する。
なお、ここで、撮像座標系の位置座標は全ての撮像位置での撮像が行われた後に求めても良いし、撮像ごとに求めても良い。請求項2も同様である。
そして、三次元位置算出手段は、各撮像位置が既知なので、これら撮像位置と撮像座標系で表される位置座標とから、例えば、三角法等を駆使することで目標点の三次元のロボット座標系(ロボットが配置された空間上の三次元座標系)の位置座標を算出する。
このように、撮像手段がロボットにより各撮像位置に運ばれるので、各撮像位置ごとに配置された撮像手段が不要となり、撮像手段の個体数を低減し、コスト低減及び生産性の向上を図ることが可能となる。また、各撮像位置ごとに離れて配置された撮像手段を不要とするので、ロボットのアーム先端部を小型化し、狭い場所でもロボットにより作業を行うことが可能となる。
さらに、追跡処理手段により、複数の撮像位置の間での移動の間、間欠的又は連続的に目標点を撮像し追跡するので、一方の撮像位置での撮像画像内の目標点と他方の撮像位置での撮像画像内の目標点との一致の判断を容易に行うことができ、これに伴い、目標点の誤認識を抑制し、より正確に目標点の位置を特定することが可能となる。
特に、複数の目標点が撮像範囲内に存在する場合でも、一の目標点を他の目標点と混同する事態を効果的に抑制し、より正確に目標点の位置を特定することが可能となる。
(発明の実施形態の全体構成)
図1は本発明の実施形態たる物体位置認識装置としてのロボットシステム100の全体構成図である。
上記ロボットシステム100は、パレット11上に目標物としてのワークWが複数置かれた状態において、物体位置認識により一つのワークWの位置及び姿勢を認識し、これを保持して目的位置に運搬するためのシステムである。
かかるロボットシステム100は、撮像により撮像範囲内を細分化した点群についての画像データを取得する撮像手段としてのCCDカメラ20と、CCDカメラ20の撮像により得られる画像データを解析する画像解析装置40と、ワークWに対する保持及び運搬作業を行うツールとしてのハンド34とCCDカメラ20とを保有するロボット30と、CCDカメラ20の撮像及びロボット30の動作の動作制御を行うロボット制御装置50とを備えている。
以下、各部について個別に詳細に説明することとする。
(ロボット)
ロボットシステム100のロボット30について図1に基づいて説明する。
ロボット30は、土台となるベース31と、関節33で連結された複数のアーム32と、各関節33ごとに設けられた駆動源としてのサーボモータ35(図2参照)と、各サーボモータ35の軸角度をそれぞれ検出するエンコーダ36(図2参照)と、連結されたアーム32の最先端部に設けられ、ワークWを挟んで保持するツールとしてのハンド34とを備えている。
上記各関節33は、アーム32の一端部を揺動可能として他端部を軸支する揺動関節と、アーム32自身をその長手方向を中心に回転可能に軸支する回転関節とのいずれかから構成される。つまり、本実施形態におけるロボット30はいわゆる多関節型ロボットに相当する。
また、ロボット30は、六つの関節33を具備しており(一部図示略)、各関節33に連結された全アーム32の最先端部(以下、単に「アーム先端部」という)に位置するハンド34を任意の位置に位置決めし任意の姿勢を取らせることが可能となっている。
ハンド34は、駆動源としてサーボモータ35を備えており、これにより離接可能な二つの爪を備えている。このハンド34は、一対の間でワークWを狭持したり、ワークWに設けられた穴に一対の爪を挿入して爪の間隔を広げることでワークWを保持したりする。
また、ロボット30は、アーム先端部にCCDカメラ20も保持しており、当該CCDカメラ20を任意に位置決め可能とし、任意の方向を撮像することを可能としている。
(ロボット制御装置)
図2はロボット制御装置50のブロック図である。
このロボット制御装置50は、ロボット30の動作制御を行う制御プログラムを含む各種のプログラムとワークWの移動目的位置を示す動作データが格納されたROM52と、ROM52に格納された各種のプログラムを実行するCPU51と、CPU51の処理により各種データを格納するワークエリアとなるRAM53と、CPU51の実行する制御プログラムに従って決定されるロボット30の各関節33のサーボモータ35のトルク値に応じたサーボモータ駆動電流を通電するサーボ制御回路54と、各関節33のエンコーダ出力をカウントするカウンタ55と、前述の制御プログラムの処理により求められるロボット30の制御に関する各種のデータが格納される記憶手段としてのメモリ56と、ロボット30の教示点、その他の各種の設定を入力するための例えばキーボード及びそのインターフェイスからなる入力手段57と、画像解析装置40からの解析結果及び動作指令を受信するための通信インターフェイス58と、上記各構成の信号の送受可能に接続するバス59とを備えている。
なお、上記カウンタ55及びサーボ制御回路54は、ロボット30の各関節33のサーボモータ35ごとに個別に設けられているが図2では一つずつしか図示しておらず、それ以外のサーボモータ35及びエンコーダ36の図示を省略している。
上記ロボット制御装置50は、ワークWの位置認識の後に、CPU51が所定の処理プログラムを実行することにより、位置が認識されたワークの初期位置から登録された目標位置までアーム先端部の移動経路及び当該移動経路をアーム先端が移動するため各サーボモータの回転角度の算出を行い、算出結果を動作データとしてメモリ56内に格納する。
また、ロボット制御装置50は、CPU51が所定の制御プログラムを実行することにより、上記動作データに従ってロボット30の各サーボモータ35の制御を行い、ワークWを運搬する動作制御を行う。
(CCDカメラ)
CCDカメラ20は、撮像を行うためのCCD撮像素子と視線前方の光景をCCD撮像素子21の光検出面に結像させる光学系(図示せず)とを備えている(図2参照)。
上記光学系は、視線前方の光景をCCD撮像素子21の検出面のほぼ全体に結像させる。
CCD撮像素子21は、その検出面(結像が行われる面)に縦横それぞれ均等間隔に並んで設けられた無数の微細な光検出画素(フォトダイオード)を備えており、各画素は受光する光の輝度に応じた電圧をその並び順で出力する。画像解析装置40は、CCD撮像素子21からの出力を受けて、各画素からの信号出力の順番から撮像範囲内(撮像して画像取り込みが行われる撮像対象となる範囲)の画像に応じた画像データを生成する。
即ち、CCD撮像素子21には縦方向(Y方向とする)と横方向(X方向とする)とにそれぞれ規定数の画素が並んで設けられており、これらは決まった順番で出力を行うことから、各画素の出力を順番により特定することができる。このため、CCD撮像素子21の撮像範囲内に一部だけ輝度が異なる部分が存在する場合、異なる輝度値の出力を行う画素を特定することで、撮像範囲内においていずれの位置で特有の輝度となる部分が存在するかを識別することが可能となっている。
(画像解析装置)
図3は画像解析装置40の制御系を示すブロック図である。
画像解析装置40は、後述する各種の処理を行うCPU41と、CPU41が実行する処理プログラムが格納されたROM42と、CCDカメラ20からの画像信号を受信するためのカメラインターフェイス44と、CPU41が実行する各種の処理における各種のデータを記憶するメモリ45と、解析結果をロボット制御装置50に出力するための通信インターフェイス46と、CPU41による各種処理における所定の表示を行う表示モニタ47との接続を行うモニタインターフェイス48と、CPU41による各種処理における所定の入力を行う入力手段49との接続を行う入力インターフェイス50とを備えている。
画像解析装置40のROM42には、CCDカメラ20により撮像が行われたワークW上に設定された目標点について三次元のロボット座標系における位置座標を算出するための位置認識プログラムと、当該位置認識を行うためのCCDカメラ20の第一及び第二の撮像位置のロボット座標系における位置座標を算出するためのキャリブレーションプログラムとが主に格納されている。
(キャリブレーションプログラムによる処理)
図4はキャリブレーションプログラムにより画像解析装置40のCPU41が行う処理を示すフローチャート、図5はキャリブレーションにおけるCCDカメラ20と撮像対象となる仮目標位置との位置関係を示す説明図である。なお、図5では、CCDカメラ20の結像面Kを概念的に図示しているものとする。
ワークWの目標点の三次元の座標を求めるためには、少なくとも二点以上の撮像位置から撮像した目標点の画像データが必要であり、且つ、各撮像位置のロボット座標系上の位置座標が既知であることが要求される。従って、第一及び第二の撮像位置を決め、上記キャリブレーションプログラムに基づく処理により、そのロボット座標系の位置座標が求められる。
処理の開始前に、予めパレット11上にキャリブレーション用の仮目標点Mを設置する。この仮目標点Mは、例えば、ホワイトボード上に付された黒点などのように、輝度の差から画像データ上で容易に識別可能な点であり、キャリブレーション作業の間、不動状態を維持することが可能なものであることが望ましい。また、仮目標点Mのロボット座標系の位置座標は未知であって良い。
まず、CPU41は、撮像位置の番号を示す変数nを0に設定する(ステップS1)。ちなみに、前述したように、本実施形態では、第一の撮像位置と第二の撮像位置とについて撮像が行われるので、後述するステップS9によりn=2までカウントが行われる。
そして、CPU41は、ロボット制御装置50を通じてロボット30を制御し、仮目標位置Tから離れてパレット11上を撮像可能な同一平面上の三点P,P,Pのそれぞれに順番にロボット先端を移動すると共に、各点P,P,PにおいてCCDカメラ20の光軸を同一方向に向けた状態で仮目標点Mの撮像を行わせる(ステップS2)。
このとき、三点の内の一点を原点Pとし、Pを原点とするX−Y座標のX軸上の任意の点をP、Y軸上の任意の点をPとする。
なお、原点P及び他の二点P,Pの位置についてはP−PとP−Pとが直交する配置であれば任意の位置でよい。
次いで、CPU41は、上記各点P,P,Pでの撮像により取得した各画像データから、仮目標点Mを撮像した各点I,I,Iのカメラ座標系における位置座標を算出する(ステップS3)。
カメラ座標系はCCDカメラ20の結像面上の直交二次元座標系であり、当該座標上で撮像された仮目標点Mがいずれに位置するかが算出される。撮像範囲内での仮目標点Mの抽出は、例えば、二値化処理等により輝度差から行われる。
次いで、CPU41は、三点P,P,Pにおけるロボット座標系のX−Y座標と各点I,I,Iのカメラ座標系における位置座標とからカメラ座標系平面からロボット座標系への変換式を算出する(ステップS4)。
かかる変換式は次式(1)で表すことができる。
Figure 2007171018
変換式(1)において、Pはロボット座標系のX−Y座標、Iはモニタ座標系の位置座標、θは座標空間の回転角度(ロボット座標X軸がカメラ座標軸に対して生じるずれ角度)、Kは座標空間のせん断(ロボット座標Y軸がロボット座標X軸に直交する軸に対して生じるずれ角度)、Aはアスペクト比(X軸方向のスケーリングとY軸方向のスケーリングの比)、Sは座標空間のスケーリング(X軸方向のスケーリング)、Tはモニタ座標空間からロボット座標空間への移動ベクトルである。
上記ロボット座標系のX−Y座標Pは、撮像を行った三点P,P,Pにおけるロボット30の各サーボモータの動作量からロボット制御装置50を通じて取得することができる。
カメラ座標系の位置座標Iは、各点I,I,Iの画像データから取得することができる。
アスペクト比Aと座標空間のスケーリングSは、ロボット座標系の各点の座標とカメラ座標系の各点間の座標とから周知方法により算出することができる。
さらに、移動ベクトルTは、スケーリングSと点Iのカメラ座標系の位置座標から周知方法により求めることができる。
さらに、回転角度θ及びせん断角度Kは、スケーリングSと点I,Iのカメラ座標系の位置座標から周知方法により求めることができる。
なお、上記変換式の算出は、三点P,P,Pからの撮像により行っているが、より多くのサンプル点で撮像を行い、最小二乗近似により求めるようにしても良い。
また、上記変換式の各パラメータの算出方法は、例えば、特開2005−186193号公報記載の演算手法と同様の手法を用いても良い。
次いで、CPU41は、ロボット制御装置50を通じてロボット30を制御し、原点P0を通過するZ軸(ロボット座標系のX−Y平面に垂直な軸)上の二点Q,QのそれぞれにCCDカメラ20を移動すると共に、各点Q,QにおいてCCDカメラ20の光軸を同一方向に向けた状態で仮目標点Mの撮像を行わせる(ステップS5)。
次いで、CPU41は、上記各点Q,Qでの撮像により取得した各画像データから、カメラ座標系における撮像された仮目標点Mの位置座標J,Jを算出する(ステップS6)。
さらに、CPU41は、カメラ座標系における位置座標J,Jを前述した変換式(1)により変換する。これにより、位置座標J,Jがロボット座標系の点WLZ1と点WLZ2とに変換される(ステップS7)。
次いで、CPU41は、第一の撮像位置Pを原点とする三次元のロボット座標系(前述したXYZ軸座標系)における仮目標点Mの位置座標を算出する(ステップS8)。
すなわち、上記処理では、ロボット30によりCCDカメラ20をZ座標上で移動させることにより仮目標点Mを計測するようにしたが、これは図6に示すようにロボット30を静止させた状態で仮目標点Mがロボット座標系のZ座標上を移動したことと同様に考えることができる。その場合、算出すべきCCDカメラ20のロボット座標系における位置座標である第一の撮像位置WLCは、直線WLZ1とWLZ2との交点として求まることになる。
この場合、直線WLZ1およびWLZ2がねじれの位置関係となることを考慮して、2つの直線が最接近する位置を求め、この位置を算出すべきCCDカメラ20の第一の撮像位置WLCとすることにする。
次いで、CPU41は、撮像位置の番号を示す変数nを1加算する(ステップS9)。
さらに、CPU41は、nが2に達したか否かを判定し、達していなければ、第二の撮像位置について上述したステップS2〜S9までの処理を第一の撮像位置の場合と同様に行う。
なお、第二の撮像位置については、第一の撮像位置における原点P0から既知の位置関係にある点を新たな原点とし、当該新たな原点に対して第二の撮像位置の位置座標を求めると共に、第一の撮像位置における原点P0を基準とした場合の第二の撮像位置WRCに変換する。これにより、第一の撮像位置と第二の撮像位置とについて原点を共通化したロボット座標系における位置座標を求めることができる。
そして、ステップS9においてn=2となるので、これにより、三次元のロボット座標系における第一の撮像位置及び第二の撮像位置の位置座標が算出される。
かかる各撮像位置の位置座標及び各撮像位置における上記キャリブレーション処理におけるCCDカメラ20の光軸方向を再現するための各サーボモータ35の回転角度がメモリ45内に記録される。
(位置認識プログラムによる処理)
図7は位置認識プログラムにより画像解析装置40のCPU41が行う処理を示すフローチャートである。
位置認識の対象となるワークWは、撮像による画像データから、例えば二値化処理により抽出可能な特徴的なポイントとなる目標点を複数備えている。具体的には、ワークWは目標点となる孔やマーキング等が設けられているものとする。
本実施形態では、一例としてワークWが所定の面に特定形状を描くように配置された複数のドット状のマーキングを備えているものとする。
まず、最初に、CPU41は、キャリブレーション処理により求められたメモリ45内のデータにより、ロボット30によりCCDカメラ20が第一の撮像位置において所定方向(キャリブレーション処理での方向)に光軸を向けるように、ロボット制御装置50に対して動作指令を出力する。そして、かかる状態でCCDカメラ20が撮像を行うように制御を行う(ステップS21)。
なお、このステップS21の処理と後述するステップS30の処理において第二の撮像位置での撮像の動作指令を行うことで、CPU41は、撮像制御手段として機能する。
次いで、CPU41は、第一の撮像位置における画像データに対して二値化処理を行い、撮像範囲内のワークWの抽出を行う。画像処理装置40はメモリ45内に、一つのワークWに付された複数のマーキングをあらゆる方向からとらえたパターンデータを保有しており、撮像範囲内でいずれかの方向のパターンに一致するターゲットG(一つのワークWに付された複数のマーキング)を、例えば周知のパターンマッチングの手法により特定する(ステップS22)。
そして、CPU41は、カメラ座標系におけるターゲットGの各マーキングの位置座標を求め、当該位置座標をメモリ45内に記録する。また、ターゲットGのみを抽出し、当該ターゲットGのみからなる画像データをメモリ45内に記録する(ステップS23)。
なお、このステップS23の処理と後述するステップS31の処理において第二の撮像位置での位置座標を求める処理を行うことで、CPU41は、撮像位置座標算出手段として機能する。
次いで、ロボット30によりCCDカメラ20を第一の撮像位置から第二の撮像位置に移動させる動作が行われるが、その際、かかる移動の行程において、図8に示すように間欠的に所定回数のターゲットGの撮像が行われる。かかる目標間欠撮像回数をm、間欠撮像回数のカウント値をVとして以下の処理を説明する。
なお、上記間欠的な撮像を行うために、CPU41は、第一の撮像位置において所定方向にCCDカメラ20を向けた状態から第二の撮像位置において所定方向にCCDカメラ20を向けた状態への位置変化を実行するための各間接のサーボモータ35の移動量をm+1で均等に分割し、当該分割された角度単位ごとに各サーボモータ35を駆動する。そして、かかる間欠的な位置変化を実現するための各サーボモータ35の回転角度は、キャリブレーション処理により、第一、第二の撮像位置が算出された時点で算出され、位置認識処理が行われる時点では、メモリ45内に既に格納されているものとする。
上述した間欠的な撮像を行うために、まず、CPU41は、撮像回数カウント値Vを0に設定する(ステップS24)。
次いで、CPU41は、ロボット制御装置50に対して間欠移動量に応じた動作指令を出力し、CCDカメラ20はロボット30により一回分の間欠移動が行われる(ステップS25)。
そして、同位置でCCDカメラ20はターゲットGの撮像を行う(ステップS26)。
次いで、CPU41は、当該間欠移動の直前に取得されたターゲットGの抽出画像とステップS26の画像データに基づく画像とを周知のパターンマッチングの手法に従って照合し、CCDカメラ20の間欠移動後のターゲットGを特定する(ステップS27)。
そして、画像データの中から特定されたターゲットのみを抽出し、当該ターゲットGのみの抽出画像データとしてメモリ45内に記憶する。
次いで、CPU41は、撮像回数カウント値Vに1を加算し(ステップS28)、当該カウント値Vが目標間欠撮像回数m+1に達したか否かを判定する(ステップS29)。
そして、達していない場合には、処理をステップS25に戻し、次の間欠移動を行うと共にターゲットGの追跡を行う。
なお、このステップS25からS29の処理を行うことで、CPU41は、追跡処理手段として機能する。
また、撮像回数カウント値Vが目標間欠撮像回数m+1に達している場合には、CPU41は、キャリブレーション処理により求められたメモリ45内のデータにより、ロボット30によりCCDカメラ20が第二の撮像位置において所定方向(キャリブレーション処理での方向)に光軸を向けるように、ロボット制御装置50に対して動作指令を出力する。そして、かかる状態でCCDカメラ20が撮像を行うように制御を行う(ステップS30)。
さらに、CPU41は、画像データから、ターゲットGを、例えば周知のパターンマッチングの手法により特定すると共に、カメラ座標系におけるターゲットGの各マーキングの位置座標を求め、当該位置座標をメモリ45内に記録する(ステップS31)。
次いで、CPU41は、ターゲットGの各マーキングについて第一の撮像位置でのカメラ座標系の位置座標と第二の撮像位置でのカメラ座標系の位置座標とを前述した変換式によりそれぞれロボット座標系の位置座標に変換する(ステップS32)。その結果、各マーキングごとに、第一の撮像位置と第二の撮像位置におけるロボット座標系の位置座標WLM,WRMを得る。そして、各マーキングごとに、第一の撮像位置WLCとWLMとを結ぶ直線、及び第二の撮像位置WRCとWRMとを結ぶ直線について、これら2つの直線の交点を求めることでロボット座標系における各マーキングの位置座標が取得される。なお、この場合も二直線の最も近接する位置を近似的にマーキング位置としても良い。
なお、このステップS32の処理を行うことで、CPU41は、三次元位置算出手段として機能する。
上記処理により、一つのワークWに付された複数のマーキングの位置認識が行われるので、各マーキングの相対位置からワークWの姿勢を特定することができる。これにより、ロボット制御装置50では、ロボット30のハンド34をいかなる位置でいかなる姿勢とすればワークWの保持が可能かを求めることができ、これに従い、ロボットの制御を行うと共に目標位置に搬送する。
(ロボットシステムの効果)
以上のように、ロボットシステム100では、CCDカメラ20がロボット30により第一と第二の撮像位置に運ばれるので、それぞれの撮像位置ごとに配置されたCCDカメラを不要とし、CCDカメラの個体数を低減し、コスト低減及び生産性の向上を図ることが可能となる。また、ロボット30のアーム先端部に離れて配置されたCCDカメラを設けることを不要とするので、ロボット30のアーム先端部を小型化し、狭い場所でもロボット30により作業を行うことが可能となる。
さらに、画像処理装置40は、ターゲットGのマーキングの位置認識のために、第一の撮像位置から第二の撮像位置にCCDカメラ20が移動を行う間、間欠的にターゲットGを撮像し追跡するので、第一の撮像位置での撮像画像内のターゲットGと第二の撮像位置での撮像画像内のターゲットGとの一致の判断を容易に行うことができ、これに伴い、ターゲットGの誤認識を抑制し、より正確に各マーキングの位置を特定することが可能となる。従って、ワークWに対する作業を正確に行うことが可能となる。
また、複数のワークWが撮像範囲内に存在する場合でも、一のターゲットGを他のターゲットGと混同する事態を効果的に抑制し、より正確に目標点の位置を特定することが可能となる。
(その他)
なお、ワークWの位置認識のために第一の撮像位置と第二の撮像位置の二つの位置で撮像を行っているが、より多くの位置で撮像を行っても良いことは言うまでもない。その場合、取得されるデータは最小二乗近似により求めるようにしてもよい。
また、第一の撮像位置と第二の撮像位置との間で行われる複数回の撮像は、連続的に行われても良い。つまり、第一の撮像位置から第二の撮像位置へのCCDカメラ20の移動を切れ目なく定速で行い、その間撮像も継続的に行っても良い。その場合、例えば、所定期間ごとに画像データをサンプリングし、前後する画像データでパターンマッチングによりターゲットGの追跡を行うことが望ましい。
本発明の実施形態たるロボットシステムの全体構成図である。 図1に開示したロボット制御装置の制御系を示すブロック図である。 図1に開示した画像解析装置の制御系を示すブロック図である。 キャリブレーションプログラムにより画像解析装置が行う処理を示すフローチャートである。 キャリブレーションにおけるCCDカメラと撮像対象となる仮目標位置との位置関係を示す説明図である。 ロボット座標の算出理論について示す説明図である。 位置認識プログラムにより画像解析装置が行う処理を示すフローチャートである。 画像解析装置が行う追跡処理の概念説明図である。
符号の説明
20 CCDカメラ(撮像手段)
30 ロボット
35 サーボモータ
40 画像解析装置
41 CPU
42 ROM
45 メモリ(マスターデータ記憶手段)
50 ロボット制御装置
100 ロボットシステム(物体位置認識装置)

Claims (4)

  1. 目標物の撮像により撮像範囲内を細分化した点群についての画像データを取得する撮像手段と、アーム先端部の位置及び姿勢を任意に変化させると共に前記アーム先端部に前記撮像手段を保持するロボットとを備える物体位置認識装置による物体位置認識方法であって、
    前記ロボットによりロボット座標系の位置座標が既知である少なくとも二以上の撮像位置に順番に前記撮像手段を位置合わせした上で前記各撮像位置から前記目標物の目標点の撮像を行う工程と、
    前記各撮像位置で得られた画像データから撮像座標系における前記目標位置の位置座標を求める工程と、
    前記各撮像位置での撮像座標系における目標位置の位置座標と、前記ロボット座標系における各撮像位置の位置座標とにより、前記目標位置の前記ロボット座標系における位置座標を算出する工程とを備えることを特徴とする物体位置認識方法。
  2. 目標物の撮像により撮像範囲内を細分化した点群についての画像データを取得する撮像手段と、アーム先端部の位置及び姿勢を任意に変化させると共に前記アーム先端部に前記撮像手段を保持するロボットとを備える物体位置認識装置による物体位置認識方法であって、
    前記ロボットによりロボット座標系の位置座標が既知である少なくとも二以上の撮像位置に順番に前記撮像手段を位置合わせした上で前記各撮像位置から前記目標物の目標点の撮像を行う工程と、
    前記各撮像位置で得られた画像データから撮像座標系における前記目標位置の位置座標を求める工程と、
    前記各撮像位置での撮像座標系における目標位置の位置座標と、前記ロボット座標系における各撮像位置の位置座標とにより、前記目標位置の前記ロボット座標系における位置座標を算出する工程とを備え、
    前記各撮像位置で目標点の撮像を行う工程で、当該各撮像位置の間での前記撮像手段の移動を行いつつ連続的又は間欠的に前記目標点の撮像を行うと共に、当該移動中の各位置での撮像による画像データをその前の位置の撮像による画像データと比較して目標点を追跡する処理を行うことを特徴とする物体位置認識方法。
  3. 目標物の撮像により撮像範囲内を細分化した点群についての画像データを取得する撮像手段と、
    アーム先端部の位置及び姿勢を任意に変化させると共に前記アーム先端部に前記撮像手段を保持するロボットと、
    前記ロボットによりロボット座標系の位置座標が既知である少なくとも二以上の撮像位置に順番に前記撮像手段を位置合わせした上で前記各撮像位置から前記目標物の目標点の撮像を行わせる撮像制御手段と、
    前記各撮像位置で得られた画像データから撮像座標系における前記目標位置の位置座標を求める撮像位置座標算出手段と、
    前記各撮像位置での撮像座標系における目標位置の位置座標と、前記ロボット座標系における各撮像位置の位置座標とにより、前記目標位置の前記ロボット座標系における位置座標を算出する三次元位置算出手段とを備えることを特徴とする物体位置認識装置。
  4. 目標物の撮像により撮像範囲内を細分化した点群についての画像データを取得する撮像手段と、
    アーム先端部の位置及び姿勢を任意に変化させると共に前記アーム先端部に前記撮像手段を保持するロボットと、
    前記ロボットによりロボット座標系の位置座標が既知である少なくとも二以上の撮像位置に順番に前記撮像手段を位置合わせした上で前記各撮像位置から前記目標物の目標点の撮像を行わせる撮像制御手段と、
    前記各撮像位置で得られた画像データから撮像座標系における前記目標位置の位置座標を求める撮像位置座標算出手段と、
    前記各撮像位置での撮像座標系における目標位置の位置座標と、前記ロボット座標系における各撮像位置の位置座標とにより、前記目標位置の前記ロボット座標系における位置座標を算出する三次元位置算出手段と、
    前記各撮像位置の間を前記撮像手段が移動するに際し、連続的又は間欠的に前記目標点の撮像を行うと共に、当該移動中の各位置での撮像による画像データをその前の位置の撮像による画像データと比較して目標点を追跡する処理を行う追跡処理手段とを備えることを特徴とする物体位置認識装置。
JP2005370079A 2005-12-22 2005-12-22 物体位置認識方法及び物体位置認識装置 Withdrawn JP2007171018A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005370079A JP2007171018A (ja) 2005-12-22 2005-12-22 物体位置認識方法及び物体位置認識装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005370079A JP2007171018A (ja) 2005-12-22 2005-12-22 物体位置認識方法及び物体位置認識装置

Publications (1)

Publication Number Publication Date
JP2007171018A true JP2007171018A (ja) 2007-07-05

Family

ID=38297770

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005370079A Withdrawn JP2007171018A (ja) 2005-12-22 2005-12-22 物体位置認識方法及び物体位置認識装置

Country Status (1)

Country Link
JP (1) JP2007171018A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015114292A (ja) * 2013-12-16 2015-06-22 川崎重工業株式会社 ワークの位置情報特定装置および方法
KR20160003196U (ko) * 2015-03-13 2016-09-22 삼성중공업 주식회사 계측기용 지그 장치
CN106247943A (zh) * 2016-09-23 2016-12-21 北京京东尚科信息技术有限公司 物品三维定位方法、装置和系统
CN115969418A (zh) * 2022-11-07 2023-04-18 珠海市人民医院 一种核酸检测口腔采集点识别方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015114292A (ja) * 2013-12-16 2015-06-22 川崎重工業株式会社 ワークの位置情報特定装置および方法
KR20160003196U (ko) * 2015-03-13 2016-09-22 삼성중공업 주식회사 계측기용 지그 장치
KR200481940Y1 (ko) * 2015-03-13 2016-11-30 삼성중공업(주) 계측기용 지그 장치
CN106247943A (zh) * 2016-09-23 2016-12-21 北京京东尚科信息技术有限公司 物品三维定位方法、装置和系统
CN115969418A (zh) * 2022-11-07 2023-04-18 珠海市人民医院 一种核酸检测口腔采集点识别方法
CN115969418B (zh) * 2022-11-07 2023-08-15 珠海市人民医院 一种核酸检测口腔采集点识别方法

Similar Documents

Publication Publication Date Title
CN107618030B (zh) 基于视觉的机器人动态跟踪抓取方法及系统
CN109313417B (zh) 帮助机器人定位
JP6420229B2 (ja) 仮想物体の画像をロボットの映像に重畳表示する映像表示装置を備えるロボットシステム
JP2012254518A (ja) ロボット制御システム、ロボットシステム及びプログラム
JP6855492B2 (ja) ロボットシステム、ロボットシステム制御装置、およびロボットシステム制御方法
JP2012192466A (ja) 画像処理システムに向けられたユーザ支援装置、そのプログラムおよび画像処理装置
US9905016B2 (en) Robot identification system
JP2006010376A (ja) ステレオ画像の関連付け方法及び3次元データ作成装置
JP2011083882A (ja) ロボットシステム
JP2019119027A (ja) ロボットシステムの制御方法、およびロボットシステム
JP2012061553A (ja) ワーク姿勢検出装置、ワーク処理実行装置及びワーク姿勢検出方法
JP2014188617A (ja) ロボット制御システム、ロボット、ロボット制御方法及びプログラム
JP2006224291A (ja) ロボットシステム
CN110355758B (zh) 一种机器跟随方法、设备及跟随机器人系统
JP2007171018A (ja) 物体位置認識方法及び物体位置認識装置
CN109916346B (zh) 一种基于视觉系统的工件平整度的检测装置及检测方法
JP2003136465A (ja) 検出対象物の3次元位置・姿勢決定方法とロボット用視覚センサ
KR100784125B1 (ko) 단일 카메라를 이용한 이동 로봇의 랜드 마크의 좌표 추출방법
WO2017188158A1 (ja) 路面状態検出装置
CN112566758A (zh) 机器人控制装置、机器人控制方法及机器人控制程序
KR100773271B1 (ko) 단일 카메라를 이용한 이동 로봇의 위치 측정 방법
JP2010146357A (ja) 3次元画像処理方法および3次元画像処理装置
CN117794704A (zh) 机器人控制设备、机器人控制系统以及机器人控制方法
US11193755B2 (en) Measurement system, measurement device, measurement method, and measurement program
CN111522299B (zh) 机械控制装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081128

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20110106