説明

位置計測装置、位置計測方法およびロボットシステム

【課題】撮像された被計測物の撮像画像がボケていても、精度良く被計測物の位置を計測できる位置計測装置を提供する。
【解決手段】被計測物Wを載置するとともに複数の反射光を放出するマーカー90を備えたステージ72と、前記マーカー90に光を照射する光照射部48と、前記被計測物Wと前記マーカー90とを異なった視線方向から撮像する複数の撮像装置20,21とを備え、前記複数の撮像装置20,21により撮像された撮像画像Bから前記マーカー90のマーカー画像100を抽出して、前記マーカー画像100から点拡散関数を求める点拡散関数算出部36と、前記点拡散関数を用いて前記撮像画像Bを画像変換して変換画像Gを生成する画像生成部37と、生成された前記変換画像Gから前記被計測物Wの位置を算出する位置算出部39と、を有することを特徴とする位置計測装置1。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、物体の位置もしくは物体の特徴点の座標を計測する位置計測装置、位置計測方法およびこの位置計測装置を備えたロボットシステムに関する。
【背景技術】
【0002】
物体の位置もしくは形状を計測する方法として、ステレオ計測法が知られている。ステレオ計測法は、撮像装置を用いて視線方向の異なる複数の方向から物体を撮像し、その撮像画像から対応する点(計測点)を見つけて、三角測量の原理により計測点の位置座標を求める。ステレオ計測法では、計測点を撮像した計測点像が複数の画像においてどの場所に位置するかを検出する必要がある。
【0003】
この測定点像を検出し易くする方法としては、2つの方向から撮像した撮像画像を映像信号の周波数成分で分割して複数水準の画像とし、その画像を、さらに2次微分処理して3値化処理を行うことにより計測点(特徴点)を検出する。そして、これらの撮像画像を比較して測定点像が対応する場所を検出する方法が提案されている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特許第3539788号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
各種生産現場において、作業の自動化や省力化のため産業用ロボットが多用されている。このような産業用ロボットは、カメラなどの撮像機器を備え作業対象物(物体)を撮像し、撮像された撮像画像を画像処理して作業対象物の位置を計測する。この作業対象物の位置計測の方法として、上述のステレオ計測法が用いられる場合がある。作業対象物と撮像装置とが相対的に動いている場合は、撮像画像に動きボケが発生してしまう。動きボケが発生すると、撮像画像から計測点を特定することが困難になってしまうという課題がある。
【課題を解決するための手段】
【0006】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態または適用例として実現することが可能である。
【0007】
(適用例1)被計測物を載置するとともに、規則性を有する複数の反射光を放出するマーカーを備えたステージと、前記マーカーに対して光を照射する光照射部と、前記被計測物と前記マーカーとを同一画像として異なった視線方向から撮像する複数の撮像装置と、を備え、前記複数の撮像装置により撮像された撮像画像から前記マーカーのマーカー画像を抽出して、前記マーカー画像から点拡散関数を算出する点拡散関数算出部と、算出した前記点拡散関数を用いて前記撮像画像を画像変換することにより変換画像を生成する画像生成部と、生成された前記変換画像から前記被計測物の位置を算出する位置算出部と、を有することを特徴とする位置計測装置。
【0008】
この構成によれば、被計測物が載置されるステージには、光を照射する光照射部によって反射光を放出するマーカーが設けられている。このマーカーから放出される反射光は、規則性、すなわち、光照射部に対するマーカーもしくは撮像装置の位置により反射パターンが決定される特性を有している。そのため、マーカーの反射パターンを調べることによって、マーカーの位置情報を知ることができる。
【0009】
撮像装置により撮像された被計測物の撮像画像は、いわゆる動きボケを含むボケ画像となってしまう場合が多い。この撮像画像には、反射パターンからなるマーカー画像が撮像されている。このマーカー画像の反射パターンの変化を確認することによって、ボケを発生させた動きの方向や速度変化等の点拡散関数の構成要素を取得することができる。なお、点拡散関数は画像がどのようにボケているのかを表すパラメーターとして利用される。その結果、点拡散関数を算出することができ、算出された点拡散関数を用いて撮像画像から変換画像としてのボケていない元画像を生成することができる。すなわち、複数の撮像装置によって撮像されたボケ画像からそれぞれボケていない元画像を生成することができる。そして、これらのボケていない元画像(変換画像)を用いてステレオ計測法を適用することによって被計測物の位置(特徴点の座標)を計測することができる。
【0010】
(適用例2)前記マーカーは、複数の反射面が三次元的に設けられていることを特徴とする上記の位置計測装置。
【0011】
この構成によれば、光照射部に対するマーカーの位置によりマーカーから反射される反射光のパターンを異ならせることができる。
【0012】
(適用例3)前記光照射部は、前記撮像装置の露光時間より短い間隔で前記マーカーに対して光を照射することを特徴とする上記の位置計測装置。
【0013】
この構成によれば、撮像装置の露光時間内にマーカーから複数回反射光を放出することができる。そのため、撮像画像内に所定数の反射パターンからなるマーカー画像を形成することができる。
【0014】
(適用例4)前記マーカーの位置情報を含む反射パターンを予め記憶しているパターン記憶部を備え、前記点拡散関数算出部は、撮像された前記マーカーの前記マーカー画像と前記パターン記憶部に記憶された前記反射パターンとを比較する画像比較部を有することを特徴とする上記の位置計測装置。
【0015】
この構成によれば、撮像されたマーカー画像の反射パターンと、パターン記憶部に記憶されたマーカーの位置情報を有する反射パターンとを比較することによって、撮像されたときのマーカーの位置を知ることができる。
【0016】
(適用例5)光照射部から照射される光を受けて規則性を有する反射光を反射するマーカーを備えたステージに載置される被計測物を、複数の撮像装置により前記マーカーとともに、異なった視線方向から撮像する撮像工程と、前記撮像工程で撮像された撮像画像から前記マーカーのマーカー画像を抽出して、前記マーカー画像のパターン変化から点拡散関数を算出する点拡散関数算出工程と、算出した前記点拡散関数を用いて前記撮像画像を画像変換することにより変換画像を生成する画像生成工程と、生成された前記変換画像から前記被計測物の位置を算出する位置算出工程と、を有することを特徴とする位置計測方法。
【0017】
この方法によれば、被計測物が載置されるステージには、光を照射する光照射部によって反射光を放出するマーカーが設けられている。このマーカーから放出される反射光は、規則性、すなわち、光照射部に対するマーカーもしくは撮像装置の位置により反射パターンが決定される特性を有している。そのため、マーカーの反射パターンを調べることによって、マーカーの位置情報を知ることができる。
【0018】
撮像工程において、撮像された被計測物の撮像画像は、いわゆる動きボケを含むボケ画像となってしまう場合が多い。撮像画像は、反射パターンからなるマーカー画像を含んでいる。このマーカー画像は、マーカー画像に含まれる反射パターンの変化を確認することによって、ボケを発生させた動きの方向や速度変化等の点拡散関数の構成要素を取得することができる。その結果、点拡散関数算出工程では、点拡散関数を算出することができ、画像生成工程では、算出された点拡散関数を用いて撮像画像から変換画像としてのボケていない元画像を生成することができる。すなわち、複数の撮像装置によって撮像されたボケ画像からそれぞれボケていない元画像を生成することができる。そして、位置算出工程では、これらのボケていない元画像(変換画像)を用いてステレオ計測法を適用することによって被計測物の位置(特徴点の座標)を計測することができる。
【0019】
(適用例6)上記の位置計測装置で作業対象物の位置を計測することを特徴とするロボットシステム。
【0020】
この構成によれば、作業対象物の位置を容易に算出できるロボットシステムを提供することができる。
【図面の簡単な説明】
【0021】
【図1】位置計測装置を適用したロボットシステムの構成例を示す図。
【図2】作業対象物であるワークが載置されるステージを説明する図。
【図3】撮像装置とステージ上に載置されたワークとの関係を示す図。
【図4】ワークの位置検出方法の流れを示すフローチャート。
【図5】カメラで撮像されたワークおよびマーカーの撮像画像を示す図。
【図6】変換画像としての再生された元画像を示す図。
【図7】第2実施例のステージを説明する図。
【図8】第2実施例にかかるワークの画像を示す図。
【図9】第1変形例にかかる位置計測装置を適用したロボットシステムの構成を示す図。
【図10】第2変形例のマーカーを説明する図。
【発明を実施するための形態】
【0022】
(第1実施例)
(位置計測装置の構成について)
本実施例の位置計測装置をロボットシステムに適用した例について、図1〜3を参照して説明する。図1は、ロボットシステムの構成例を示す図である。図2は、2つの撮像装置とステージ上に載置されたワークとの関係を示す図である。図3は、被計測物および作業対象物としてのワークが載置されるステージおよびマーカーを説明する図であり、(a)は、ステージの平面図、(b)はマーカーの拡大図であり、(c)はマーカーの断面を示す断面図である。
【0023】
図1に示すように、位置計測装置1を有するロボットシステム5は、ロボット10と、ワークWを載置するワーク載置部70と、撮像装置としての第1のカメラ20および第2のカメラ21と、制御部50とを備える。ロボット10は、いわゆる多関節型ロボットであり、ベース25と、アーム17A,17Bと、ロボットハンド19を含む手首部18と、それぞれを回動自在に支持する関節部である第1軸12と第2軸14と第3軸16とから構成されている。
【0024】
ロボット10は、設置面にベース25により設置される。ベース25は、第1回転軸11を備え、ベース25より上方のロボット10本体を設置面との鉛直軸を中心に回転させることができる。ベース25には、第1軸12を介してアーム17Aが回動自在に取り付けられている。アーム17Aは、第2回転軸13を備え、アーム17A自身が軸方向に回転することができる。アーム17Aには、第2軸14を介してアーム17Bが回動自在に取り付けられている。
【0025】
アーム17Bは、第3回転軸15を備え、アーム17B自身が軸方向に回転することができる。アーム17Bには、第3軸16を介して手首部18が回動自在に取り付けられている。手首部18の先端にはロボットハンド19が設けられ、ワークWに対して作業を実施する。これらの第1〜3軸12,14,16、第1〜3回転軸11,13,15およびロボットハンド19は、図示しないモーターや空圧機器等により操作される複数の図示しないアクチュエーターの駆動により、回動するように構成されている。複数のアクチュエーターは、制御部50からケーブル85を介して送られる制御信号に基づいて駆動される。
【0026】
図2に示すように、第1のカメラ20および第2のカメラ21は、ロボット10の手首部18に所定の距離xだけ隔てられた状態で並設されている。第1のカメラ20および第2のカメラ21は、いわばロボット10の2つの眼として機能するものであり、例えば、CCDのような撮像素子によりロボットハンド19が作業する方向を所定の露光時間で撮像する。そして、撮像されたワークWを含むそれぞれの画像は、画像信号としてケーブル86,87を介して制御部50に送られる。
【0027】
ワーク載置部70は、ワークWを載置するステージ72を有する。ステージ72では、ロボット10によるワークWに対する作業が実施される。ステージ72は、ワークWが載置されるステージ面72aを有し、ステージ面72aは、光を反射する機能を有する複数の反射面からなるマーカー90を1つ以上備えている。このマーカー90の詳細については後述する。ワークWは、例えば、図示しないベルトコンベアで搬送されワーク載置部70のステージ72に搬入され、ロボット10による作業が実施された後、次のワーク載置部70もしくは次の工程に搬出される。ワークWは、図2に示すように、例えば、長方形の板状に形成され、平面部には3つの貫通穴が設けられている。なお、ワーク載置部70そのものがベルトコンベアにより搬送されてもよい。
【0028】
図1に示す制御部50は、少なくとも、画像処理装置30と、パターン記憶部33と、ロボット動作制御部40と、光照射制御部45と、コンピューター60とから構成されている。画像処理装置30は、少なくとも、第1画像入力部31と、第2画像入力部32と、位置情報取得部34とから構成され、ロボット10の第1のカメラ20および第2のカメラ21で撮像され、第1画像入力部31および第2画像入力部32を介して入力されたワークWとマーカー90とを含む2つの画像を処理してワークWの位置情報を取得する。
【0029】
位置情報取得部34は、画像比較部35と、点拡散関数算出部36と、画像生成部37と、位置算出部39とを備え、種々の演算処理を行いワークWの位置情報を取得する。位置情報取得部34の動作については後述する。ロボット動作制御部40は、コンピューター60の指令に基づいて上述のロボット10の動作を制御し、ワークWに対して所定の作業を実施する。
【0030】
光照射制御部45は、ワークWが載置されるステージ面72aに設けられたマーカー90に対して所定の周期で光を照射する光照射部48を有している。光照射部48は、ケーブル88により光照射制御部45に接続され、光を照射する周期等が制御される。パターン記憶部33は、光照射部48に対してマーカー90の位置と、撮像装置(第1のカメラ20もしくは第2のカメラ21)の位置と、を所定の割合で相対移動させながら、撮像装置を用いてマーカー90を撮像した複数のマーカー画像を複数のパターンデータとして記憶している。
【0031】
コンピューター60は、中央処理装置として機能し、図示しないCPU、RAM、ROM、HDD、シーケンサーおよびロボットコントローラー等からなるハードウェア資源と、ROMやHDD等に記憶された種々のソフトウェアとを有機的に協働させることにより、ロボット10、画像処理装置30、および光照射制御部45等を総括的に制御する。
【0032】
ここで、本実施例のステージ72と、ステージ72に設けられるマーカー90について図3を参照して説明する。図3(a)に示すように、ステージ72は四角形形状に形成され、例えばステージ面72aの1つのコーナー付近にマーカー90が設けられている。マーカー90は、複数の反射面92を有する。マーカー90は、より多くの反射面92を有することが好ましいが、本実施例では、説明を簡便にするため、例えば、3つの反射面92を有するマーカー90を例にとり説明する。
【0033】
図3(b)、(c)に示すように、ステージ面72aには、例えば、底面を開口部とする逆三角錐形状の凹部91が形成され、凹部91の開口部以外の3面には光を反射する機能を有する三角形の反射面92がそれぞれ貼付されている。このように形成されることによって、マーカー90は、所定の方向から光を照射されると、光の入射方向によって異なった反射パターンの光を反射する。なお、ワークWは、ステージ面72aに設けられたマーカー90を避けて載置されることが好ましい。
【0034】
(ロボットシステムにおける作業について)
上述のロボットシステム5を用いた作業について、おなじく図1〜3を参照して説明する。ロボットシステム5のロボット10は、図示しないベルトコンベアによりステージ72に搬送されたワークWに対して、作業を実施する。本実施例では、生産効率向上、設備の汎用化および簡素化のため、ワークWの整列装置や位置決め装置を設けていない。そのため、ワークWは、ランダムな姿勢で搬送され、それぞれに固有の作業が実施される。従って、ロボット10は、作業を実施するワークWの位置や姿勢を検出する必要がある。すなわち、ロボットシステム5は、図1に示す第1のカメラ20および第2のカメラ21を用いて、ステージ72に載置されるワークWを撮像してワークWの位置検出を行う。
【0035】
例えば、図3(a)に示すようなレイアウトで、ワークWがステージ72上に置かれたとする。ワークWの位置を検出するため、ロボット10の手首部18の先端部に設けられた第1のカメラ20および第2のカメラ21を用いて、ステージ72上のワークWを撮像する。このとき、ロボット10の手首部18の動きを静止させるか、ワークWを静止させることが好ましい。ところが、このような方法では作業や移動動作が中断されてしまい、作業効率が著しく低下する。そのため、一般には、双方が移動動作を行っている状態で撮像する。このとき、第1のカメラ20および第2のカメラ21は、所定の露光時間に渡りシャッターを開放して撮像する。
【0036】
その結果、撮像されたワークWのそれぞれの撮像画像は、動きボケを含んだ、いわゆるボケ画像となってしまう場合が多い。そのままでは、ワークWの位置を検出することができない。そのため、何らかの画像処理が必要である。画像処理方法として、例えばボケ画像がどのようにボケているかを推定し、ボケ画像に対してその逆特性を演算することにより、変換画像としてのボケていない元画像を復元する方法がある。
【0037】
(ワークの位置検出方法について)
ここで、撮像画像がどのようにボケているのかを表すパラメーターとして点拡散関数を用いたワークの位置検出方法について、図4〜6を参照して説明する。図4は、ワークの位置検出方法の流れを示すフローチャートであり、図5は、カメラで撮像されたワークおよびマーカーの撮像画像を示す図である。図6は、変換画像としての再生された元画像を示す図である。
【0038】
図4に示すように、この位置検出方法は、ワーク搬入工程S11と、第1マーカー&ワーク撮像工程S12aと、第2マーカー&ワーク撮像工程S12bと、第1画像入力工程S13aと、第2画像入力工程S13bと、第1画像比較工程S14aと、第2画像比較工程S14bと、第1点拡散関数算出工程S15aと、第2点拡散関数算出工程S15bと、第1画像生成工程S16aと、第2画像生成工程S16bと、ワーク位置算出工程S17と、を有する。
【0039】
ワーク搬入工程S11では、図1に示すロボットシステム5において、ワークWが、ベルトコンベア等で搬送されワーク載置部70のステージ72に供給される。このときワークWは、ランダムな姿勢で供給されるため、ワークWが現在どのような姿勢をなしているか分からない。そこで、次の工程に進む。
【0040】
第1マーカー&ワーク撮像工程S12aでは、図1に示す第1のカメラ20を用いて、ステージ72に載置されるワークWを撮像する。このとき、ワークWが載置されるステージ面72aに設けられているマーカー90も同一視野内に入るように撮像する。しかしながら、第1のカメラ20およびワークW(ステージ72)は相対的に移動している状態であるため、撮像される撮像画像は、図5(a)に示すように、動きボケを含んだいわゆるボケ画像となってしまう。なお、このとき、図1に示す光照射部48は、光照射制御部45からの制御信号によって第1のカメラ20の露光時間よりも短い周期でマーカー90に向け光を照射する。マーカー90は、複数の反射面92を有しているため、光照射部48からの光を受けその光を反射する。反射された光は複数の反射面92により所定の反射パターンを形成する。
【0041】
その結果、図5(a)に示すボケ画像B1を得る。ボケ画像B1は、動きボケを含んだワークWの画像Bwと、マーカー90のマーカー画像100として、マーカー90のいくつかの反射パターン画像105とを含む。図5の例では、第1のカメラ20の露光時間の間に光照射部48から4回光を照射しているため、4つの反射パターン画像105a,105b,105c,105dが撮像されている。本実施例では、図5(b)に示す反射パターン画像105aおよび反射パターン画像105bの距離Lab、反射パターン画像105bおよび反射パターン画像105cの距離Lbc、反射パターン画像105cおよび反射パターン画像105dの距離Lcdはそれぞれ異なる。
【0042】
また、第2マーカー&ワーク撮像工程S12bでは、図1に示す第2のカメラ21を用いて、ステージ72に載置されるワークWを第1マーカー&ワーク撮像工程S12aと同様に撮像する。その結果、図示しないボケ画像B2を得る。第1のカメラ20と第2のカメラ21とは、図2に示すように、距離x隔てられ並設されている。そのため、得られるボケ画像B2は、ボケ画像B1と比較して、異なった視点、換言すると異なった角度から撮像された画像となる。
なお、以下の説明では説明を簡便にするために、第1のカメラ20を用いて、ステージ72に載置されるワークWを撮像した場合について説明する。
【0043】
図4に示す第1画像入力工程S13aでは、第1のカメラ20によって撮像されたマーカー画像100を含むボケ画像B1を、画像信号として、図1に示す制御部50の画像処理装置30の第1画像入力部31に取り込む。取り込まれたボケ画像B1は、位置情報取得部34に送られる。
【0044】
図4に示す第1画像比較工程S14aでは、図1に示すパターン記憶部33に記憶された一連の反射パターンPの群と、位置情報取得部34に取り込まれたボケ画像B1のマーカー90のマーカー画像100である反射パターン画像105とを比較して、その反射パターン画像105にもっとも近似している反射パターンPを抽出する。図5(c)に示すように、例えば、反射パターン画像105aに対しては、反射パターンPaが抽出される。なお、図5(c)の反射パターン画像105aおよび反射パターンPaの各反射面92に施されている網目の有無もしくは濃度の違いは、各反射面92から反射される光の強さの差を表す。
【0045】
反射パターンPは、前述のように、図1に示す光照射部48に対してマーカー90の位置と第1のカメラ20の位置と所定の割合で相対移動させながら撮像したものである。そのため、反射パターンPにおけるマーカー90の反射面92の光の反射具合を確認することによって、マーカー90と第1のカメラ20との位置関係がわかる。また、第1のカメラ20の位置(座標系)を既知のものとすることによって、マーカー90の位置(座標系)を知ることができる。換言すると、反射パターンPは、そのマーカー90の位置(座標)情報を有している。従って、反射パターン画像105aと近い反射パターンPaを抽出することによって、その反射パターン画像105aが撮像されたときのマーカー90の位置(座標)を割り出すことができる。この作業は、反射パターン画像105b,105c,105dのそれぞれに対して行われる。その結果、反射パターン画像105a,105b,105c,105dが撮像されたときのマーカー90のそれぞれの位置を求めることができる。
【0046】
図4に示す第1点拡散関数算出工程S15aでは、ボケ画像B1からマーカー画像100(反射パターン画像105)を抽出して点拡散関数を算出する。この点拡散関数の算出方法は、特に限定しない。公知の算出方法を適用すればよい。なお、マーカー画像100は、点拡散関数の空間移動分の情報、すなわち、ボケを発生させる動きの方向と速度とをデータとして持つ。この場合、反射パターン画像105の違いからマーカー90の位置の変化、すなわち動きベクトル(ボケを発生させた動き方向)を知ることができる。マーカー90は、略等しい間隔(周期)で光照射部48の光を反射している。そのため、各反射パターン画像105a,105b,105c,105d間の距離Lab,Lbc,Lcdから、マーカー90を撮像したときの第1のカメラ20とマーカー90との相対移動速度vの関係を知ることができる。
【0047】
図5(b)に示すマーカー画像100を例にとると、反射パターン画像105の違いからわかるマーカー90の位置(座標)の変化によって矢印Mに沿った移動をしていることがわかる。また、反射パターン画像105は、反射パターン画像105bおよび反射パターン画像105cの距離Lbc>反射パターン画像105cおよび反射パターン画像105dの距離Lcd>反射パターン画像105aおよび反射パターン画像105bの距離Labの関係になっている。そのため、反射パターン画像105a、反射パターン画像105b間を撮像したときの第1のカメラ20とマーカー90との相対移動速度vabと、反射パターン画像105b、反射パターン画像105c間を撮像したときの第1のカメラ20とマーカー90との相対移動速度vbcと、反射パターン画像105c、反射パターン画像105d間を撮像したときの第1のカメラ20とマーカー90との相対移動速度vcdとの関係は、相対移動速度vbc>相対移動速度vcd>相対移動速度vabとなることがわかる。
【0048】
次いで、図4に示す第1画像生成工程S16aでは、第1点拡散関数算出工程S15aで算出した点拡散関数を用いて、ボケ画像B1からボケてない元画像(変換画像)を生成する。この方法を簡単に説明する。
【0049】
画像のボケは、下記の式(1)のようにモデル化される。この式(1)で示すように、元画像をImage、ボケ画像をBlur、画像がどのようにボケているのかを表すパラメーターである点拡散関数をPSFとすると、ボケ画像(Blur)は点拡散関数(PSF)と元画像(Image)との畳み込み演算で与えられる。点拡散関数(PSF)は、名前のとおり、本来1点であるデータが、どのように拡がっているのかを表す関数である。
【0050】
【数1】

【0051】
ここで、下記の式(2)、(3)、(4)のように、関数fに対するフーリエ変換操作をF[f]と表すとすると、元画像(Image)のフーリエ変換はimage、ボケ画像(Blur)のフーリエ変換はblur、点拡散関数(PSF)のフーリエ変換はpsfと表すことができる。畳み込み演算は、フーリエ変換により単なる乗算に変換されるため、式(1)は下記の式(5)に変換される。
【0052】
【数2】

【0053】
【数3】

【0054】
下記の式(6)のように、元画像のフーリエ変換(image)は、点拡散関数(PSF)のフーリエ変換である(psf)の逆数と、ボケ画像(Blur)のフーリエ変換である(blur)との積により得られる。関数fの逆フーリエ変換操作をIF[f]とすると、ボケの無い元画像(Image)は、式(6)で得られた元画像のフーリエ変換(image)を、式(7)のように逆フーリエ変換することにより得られる。
【0055】
【数4】

【0056】
【数5】

【0057】
上述のような演算処理は、数学的処理としては単純なものであり、その一例として、ウィーナフィルター処理などがある。このようにして図6(a)に示すボケていないワーク画像Gw1が表示されている元画像G1が生成される。
【0058】
第2のカメラ21を用いて、ステージ72に載置されるワークWを撮像した場合についても、上述の説明と同様に、第2マーカー&ワーク撮像工程S12b、第2画像入力工程S13b、第2画像比較工程S14b、第2点拡散関数算出工程S15bおよび第2画像生成工程S16bを実施して、図6(b)に示すボケていないワーク画像Gw2が表示されている元画像G2が生成される。得られる元画像G2は、元画像G1と比較して、異なった視点、換言すると異なった角度から見た画像となる。
【0059】
次いで、図4に示すワーク位置算出工程S17では、生成された元画像G1および元画像G2に基づいてワークWの位置を算出する。ワークWの位置算出方法は、公知の位置算出方法が適用される。例えば、エピポーラ(Epipolar)線の性質、すなわち、第1のカメラ20と計測点を結ぶ直線は第2のカメラ21に直線として投影され、第1のカメラ20に写っている点は第2のカメラ21ではこの直線(エピポーラ線)上にあるという性質を用いて複数の計測点の座標を求め、ワークWの位置を算出してもよい。このとき、計測点は、ワークWの形状の特徴点に注目して決定することが好ましい。
【0060】
そして、算出した位置に関する情報を図1に示すロボット動作制御部40に送る。ロボット動作制御部40は、アーム17等の稼動部の動作を上記情報に基づいて制御する。すなわち、ロボット動作制御部40は、情報に基づき、ロボット10を移動させるための複数のアクチュエーターの駆動量を算出し、それぞれのアクチュエーター毎に駆動信号を生成し、それぞれのアクチュエーターに送る。この結果、アーム17が所定の位置まで移動しロボットハンド19によりワークWに所定の作業が実施される。
【0061】
以下、本実施例の効果を記載する。
(1)上述の位置計測装置1を適用したロボットシステム5は、ワークWが載置されるステージ72に第1のカメラ20および第2のカメラ21の露光時間より短い周期で反射光を反射する複数の反射面92からなるマーカー90が設けられている。そして、ワークWの位置(特徴点の座標)を計測するとき、ロボット10に設けられた第1のカメラ20および第2のカメラ21を用い、異なる視線方向からワークWとマーカー90とを同一視野に入れるように撮像する。ステージ72と第1のカメラ20および第2のカメラ21とが相対移動しているため、ワークWの撮像画像は、動きボケを含んだボケ画像Bとなる。ボケ画像Bは、そのマーカー90の反射パターン画像105からなるマーカー画像100を含んでいる。
【0062】
マーカー画像100は、複数の反射パターン画像105a,105b,105c,105dから構成されているため、反射パターン画像105a,105b,105c,105dが形成する列の方向および反射パターン画像105a,105b,105c,105d間の距離Lab,Lbc,Lcdからボケを発生させた動きの方向や速度変化等の点拡散関数の構成要素を容易に取得することができる。その結果、第1のカメラ20および第2のカメラ21の撮像画像をそれぞれ解析するだけで、点拡散関数が容易に精度良く求めることができ、求められた点拡散関数を用いて画像変換することにより、撮像画像としてのボケ画像Bから変換画像としてのボケていない元画像Gを精度良く生成することができる。そして、これらの元画像Gを使用してステレオ計測法を適用することによって被計測物の位置をより正確に計測することができる。したがって、ロボットシステム5の作業効率を向上させることができる。
【0063】
(第2実施例)
ここで、第2実施例の位置計測装置1をロボットシステムに適用した例について図7および図8を参照して説明する。図7は第2実施例のステージを説明する図であり、図8は第2実施例にかかるワークの画像を示す図である。なお、第2実施例は、第1実施例に対して、マーカー90の設置状況が異なる例である。また、第1実施例と同様な構成および内容については、符号を等しくして説明を省略する。
【0064】
図7に示すように、ステージ72は、ワークWが載置されるステージ面72aの3つのコーナー付近に、それぞれマーカー90a,90b,90cを1つずつ備えている。マーカー90a,90b,90cは、上述の第1実施例で説明したマーカー90と同一な構造に形成されている。
【0065】
図4に示す位置検出方法の第1マーカー&ワーク撮像工程S12aおよび第2マーカー&ワーク撮像工程S12bでは、図1に示す第1のカメラ20および第2のカメラ21を用いて、ステージ72に載置されるワークWおよびマーカー90a,90b,90cが同一視野内に入るように撮像する。その結果、図8に示す動きボケを含んだいわゆるボケ画像Baを得る。ボケ画像Baは、動きボケを含んだワークWの画像Bwと、画像の3つのコーナー付近のそれぞれにマーカー90aのマーカー画像110と、マーカー90bのマーカー画像120とマーカー90cのマーカー画像130とを有する。
【0066】
マーカー画像110は、例えば、図8中右下から左上の方向(矢印N1方向)に向かって形成されている。そのため、矢印N1に沿った移動をしていることがわかる。さらには、ボケ画像Baの輝点110a,110b,110c,110dに注目することによって、第1実施例と同様に、移動の方向、動きベクトルおよびを第1のカメラ20とマーカー90aとの相対移動速度vの関係を知ることができる。
【0067】
マーカー画像120は、図8中右下から左上の方向(矢印N2方向)に向かって形成されている。そのため、矢印N2に沿った移動をしていることがわかる。マーカー画像130は、図8中右下から左上の方向(矢印N3方向)に向かって形成されている。そのため、少なくとも矢印N3に沿った移動をしていることがわかる。また、マーカー画像110の輝点110a〜dの距離L110、マーカー画像120の輝点120a〜dの距離L120およびマーカー画像130の輝点130a〜dの距離L130に注目すると、距離L110<距離L120<距離L130の関係にあり、各輝点間の距離が相似し大きくなっていることがわかる。この移動の方向(矢印N1,N2,N3)および距離L110,L120,L130の変化を解析することによって、マーカー画像110から求まる方向および速度で移動しながら、図8中の矢印R方向に回転していることがわかる。
【0068】
すなわち、第1のカメラ20とワークW(ステージ72)との相対移動において、回転や傾き等の移動により動きボケが発生したとしても、マーカー画像110,120,130を解析することによって点拡散関数をより正確に算出することができる。従って、求められた点拡散関数よりワークWの位置をより正確に知ることができ、ロボット10の作業の精度を向上させることができる。なお、マーカー90の数は、第1実施例で説明した1つおよび第2実施例で説明した3つに限定されるものではない。予想される第1のカメラ20および第2のカメラ21とワークW(ステージ72)との動きに対応して、マーカー90の数を決定すればよい。
【0069】
以上、本発明の実施例について説明したが、上記実施例に対しては、本発明の趣旨から逸脱しない範囲で様々な変形を加えることができる。例えば上記実施例以外の変形例は、以下の通りである。
【0070】
(第1変形例)上述の実施例では、第1のカメラ20および第2のカメラ21がロボット10の手首部18に設置されている場合を例にとり、説明したがこれに限定されない。第1変形例にかかる位置計測装置1を適用したロボットシステムの構成を示す図である図9に示すように、第1のカメラ20および第2のカメラ21は、ロボット10と別体に設けられていてもよい。この場合についても、ステージ72に載置されるワークWの移動に伴う動きボケが補正された元画像(変換画像)を生成することができる。
【0071】
(第2変形例)上述の実施例では、3つの反射面92を有するマーカー90を例にとり説明したが、これに限定されない。マーカー90は、より多くの反射パターンを有するためにも、より多くの反射面92を備えることが好ましい。例えば、第2変形例のマーカーを説明する図である図10に示すようにダイヤモンドのカットに用いられるブリリアンカットされたガラス94をステージ72に埋め込み、マーカー90としてもよい。この場合は、反射パターンをより細かくすることができ、マーカー90の位置情報をより細かく反射パターンに反映することができる。そのため、点拡散関数の算出精度を高めることが可能になる。
【0072】
(第3変形例)上述の実施例では、複数の撮像装置として第1のカメラ20および第2のカメラ21を適用した場合を例にとり説明したが、撮像装置の数は2つに限定されるものではなく、2つ以上の複数であればよい。また、ロボット10として多関節型ロボットを採用した場合について説明したが、これに限定されるものではなく、スカラー型のロボットであってもよい。さらには、ロボット10の用途は、ロボットハンド19による部品の把持、ハンダ付けや溶接のような加工を行う等様々な用途が想定される。さらに、産業用ロボットに限らず、医療用ロボットや家庭用ロボットであってもよい。
【符号の説明】
【0073】
1…位置計測装置、5…ロボットシステム、10…ロボット、18…手首部、19…ロボットハンド、20…撮像装置としての第1のカメラ、21…撮像装置としての第2のカメラ、30…画像処理装置、31…第1画像入力部、32…第2画像入力部、33…パターン記憶部、34…位置情報取得部、35…画像比較部、36…点拡散関数算出部、37…画像生成部、39…位置算出部、45…光照射制御部、48…光照射部、50…制御部、60…コンピューター、72…ステージ、90…マーカー、92…反射面、100,110,120,130…マーカー画像、105a,105b,105c,105d…反射パターン画像、B,B1,B2,Ba…撮像画像としてのボケ画像、G,G1,G2…変換画像としての元画像、W…被計測物および作業対象物としてのワーク。

【特許請求の範囲】
【請求項1】
被計測物を載置するとともに、規則性を有する複数の反射光を放出するマーカーを備えたステージと、
前記マーカーに対して光を照射する光照射部と、
前記被計測物と前記マーカーとを同一画像として異なった視線方向から撮像する複数の撮像装置と、を備え、
前記複数の撮像装置により撮像された撮像画像から前記マーカーのマーカー画像を抽出して、前記マーカー画像から点拡散関数を算出する点拡散関数算出部と、
算出した前記点拡散関数を用いて前記撮像画像を画像変換することにより変換画像を生成する画像生成部と、
生成された前記変換画像から前記被計測物の位置を算出する位置算出部と、を有することを特徴とする位置計測装置。
【請求項2】
前記マーカーは、複数の反射面が三次元的に設けられていることを特徴とする請求項1に記載の位置計測装置。
【請求項3】
前記光照射部は、前記撮像装置の露光時間より短い間隔で前記マーカーに対して光を照射することを特徴とする請求項1または2に記載の位置計測装置。
【請求項4】
前記マーカーの位置情報を含む反射パターンを予め記憶しているパターン記憶部を備え、
前記点拡散関数算出部は、撮像された前記マーカーの前記マーカー画像と前記パターン記憶部に記憶された前記反射パターンとを比較する画像比較部を有することを特徴とする請求項1乃至3のいずれか一項に記載の位置計測装置。
【請求項5】
光照射部から照射される光を受けて規則性を有する反射光を反射するマーカーを備えたステージに載置される被計測物を、複数の撮像装置により前記マーカーとともに、異なった視線方向から撮像する撮像工程と、
前記撮像工程で撮像された撮像画像から前記マーカーのマーカー画像を抽出して、前記マーカー画像のパターン変化から点拡散関数を算出する点拡散関数算出工程と、
算出した前記点拡散関数を用いて前記撮像画像を画像変換することにより変換画像を生成する画像生成工程と、
生成された前記変換画像から前記被計測物の位置を算出する位置算出工程と、を有することを特徴とする位置計測方法。
【請求項6】
請求項1乃至4のいずれか一項に記載の位置計測装置で作業対象物の位置を計測することを特徴とするロボットシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2010−276447(P2010−276447A)
【公開日】平成22年12月9日(2010.12.9)
【国際特許分類】
【出願番号】特願2009−128602(P2009−128602)
【出願日】平成21年5月28日(2009.5.28)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】