(57)【要約】【課題】ワークが撮像されたボケ画像からワークの位置を精度良く検出するロボットシステムを提供する。【解決手段】ワークＷに対して作業を実施するロボット１０と、前記ワークＷを載置するとともに、蛍光体マーカー７４を備えたステージ７２と、前記ワークＷと前記蛍光体マーカー７４とを所定の露光時間で撮像するカメラ２０と、前記カメラ２０の露光時間より短い周期で前記蛍光体マーカー７４を点滅発光させるマーカー制御部４５と、を備え、前記カメラ２０により撮像されたボケ画像から前記蛍光体マーカー７４の軌跡画像１００を抽出して、前記軌跡画像１００から点拡散関数を算出する点拡散関数算出部３５と、算出した前記点拡散関数を用いて、前記ボケ画像を画像変換し前記ボケ画像からボケていない元画像を生成する画像生成部３７と、前記元画像から前記ワークＷの位置を算出する位置算出部３９と、を有するロボットシステム５。【選択図】図１
2011027454.tif 000002
【特許請求の範囲】
【請求項１】
作業対象物に対して作業を実施するロボットと、
前記作業対象物を載置するとともに、蛍光体マーカーを備えたステージと、
前記作業対象物と前記蛍光体マーカーとを同一画像として所定の露光時間で撮像する撮像装置と、
前記撮像装置の露光時間より短い周期で前記蛍光体マーカーを点滅発光させるマーカー制御部と、を備え、
前記撮像装置により撮像された動きボケを含む劣化画像から前記蛍光体マーカーの軌跡画像を抽出して、前記軌跡画像から点拡散関数を算出する点拡散関数算出部と、
算出した前記点拡散関数を用いて、前記劣化画像を画像変換することにより、前記劣化画像から劣化していない元画像を生成する画像生成部と、
生成された前記元画像から前記作業対象物の位置を算出する位置算出部と、を有することを特徴とするロボットシステム。
【請求項２】
前記マーカー制御部は、前記蛍光体マーカーの蛍光体の励起装置を有し、前記蛍光体を断続的に励起させることを特徴とする請求項１に記載のロボットシステム。
【請求項３】
前記励起装置は、極短光パルスレーザー発生装置であり、前記蛍光体マーカーに励起用レーザー光を照射することを特徴とする請求項１または２に記載のロボットシステム。
【請求項４】
前記蛍光体マーカーは、前記ステージ上に複数設けられていることを特徴とする請求項１乃至３のいずれか一項に記載のロボットシステム。
【請求項５】
複数の前記蛍光体マーカーは、それぞれ異なった波長の光を放出していることを特徴とする請求項１乃至４のいずれか一項に記載のロボットシステム。
【請求項６】
作業対象物に対して作業を施すロボットシステムの制御方法であって、
マーカー制御部により撮像装置の露光時間よりも短い周期で点滅発光するように制御される蛍光体マーカーを備えたステージに載置される前記作業対象物を、前記撮像装置により前記蛍光体マーカーとともに撮像する撮像工程と、
前記撮像工程で撮像された動きボケを含む劣化画像から前記蛍光体マーカーの軌跡画像を抽出して、前記軌跡画像から点拡散関数を算出する点拡散関数算出工程と、
算出した前記点拡散関数を用いて、前記劣化画像を画像変換することにより、前記劣化画像から劣化していない元画像を生成する画像生成工程と、生成された前記元画像から前記作業対象物の位置を算出する位置算出工程と、を有することを特徴とするロボットシステムの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、作業対象物に対して作業を実施するロボットシステムおよびロボットシステムの制御方法に関する。
【背景技術】
【０００２】
各種生産現場において、作業の自動化や省力化のため産業用ロボットが多用されている。このような産業用ロボットは、カメラなどの撮像機器を備え作業対象物を撮像し、撮像された画像を画像処理して作業対象物の位置を検出する。作業対象物と撮像機器とが相対的に動いている場合は、撮像された画像に動きボケが発生する。近年、産業用ロボットによる作業の高速化や高精度化に伴い、正確な位置決めが求められている。そのため、撮影された画像における動きボケの補正が重要になっている。
【０００３】
このような動きボケの補正方法としては、どのようにボケているかを推定し、画像に対してその逆特性を演算することにより、ボケていない画像を復元する方法がある。その方法の例として、撮像機器の動きに関する情報を撮像機器に設けられた角速度センサーで検出し検出した情報に基づいて、動きによるボケの特性を示す点拡散関数（ＰＳＦ：Ｐｏｉｎｔ  Ｓｐｒｅａｄ  Ｆｕｎｃｔｉｏｎ）を求める。そして、この点拡散関数を用いてフーリエ変換、逆フーリエ変換などの演算処理を行いボケ補正、すなわち、ボケ画像から元画像を復元する方法が知られている（例えば、特許文献１および特許文献２参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−１１８６４４号公報
【特許文献２】特開２００８−１１４２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述の方法において、角速度センサーは産業用ロボットの移動部（撮像機器）に設置されているため、作業環境や作業内容によっては温度変動や角速度変化が大きくなり、角速度センサーから出力される情報の信頼性や精度が低下する虞がある。また、点拡散関数を精度良く求めるためには、撮像機器の撮像タイミングと角速度センサーからの信号出力とを同期させる必要がある。そのためには制御が複雑になり多くのコストや手間が必要となってしまうという課題があった。また、撮像機器の動きのみしか検出できないため、作業対象物が動いている場合は、作業対象物の動きによるボケの特性が、求められる点拡散関数に十分に反映されないという課題があった。
【課題を解決するための手段】
【０００６】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態または適用例として実現することが可能である。
【０００７】
（適用例１）作業対象物に対して作業を実施するロボットと、前記作業対象物を載置するとともに、蛍光体マーカーを備えたステージと、前記作業対象物と前記蛍光体マーカーとを同一画像として所定の露光時間で撮像する撮像装置と、前記撮像装置の露光時間より短い周期で前記蛍光体マーカーを点滅発光させるマーカー制御部と、を備え、前記撮像装置により撮像された動きボケを含む劣化画像から前記蛍光体マーカーの軌跡画像を抽出して、前記軌跡画像から点拡散関数を算出する点拡散関数算出部と、算出した前記点拡散関数を用いて、前記劣化画像を画像変換することにより、前記劣化画像から劣化していない元画像を生成する画像生成部と、生成された前記元画像から前記作業対象物の位置を算出する位置算出部と、を有することを特徴とするロボットシステム。
【０００８】
この構成によれば、作業対象物が載置されるステージに、撮像装置の露光時間より短い周期で点滅発光する蛍光体マーカーが設けられている。そして、撮像装置により撮像された作業対象物の劣化画像、いわゆるボケ画像は、その蛍光体マーカーの点滅発光の軌跡画像を含んでいる。蛍光体マーカーの軌跡画像は、複数の輝点が列をなしている輝点列として構成されているため、輝点列の方向、輝点間の距離からボケを発生させた動きの方向や速度変化等、点拡散関数の構成要素を容易に取得することができる。その結果、点拡散関数を精度良く算出することができる。そして、算出された点拡散関数を用いてボケ画像からボケていない元画像を生成することができ、生成された元画像から、作業対象物の位置を算出することができる。すなわち、角速度センサー等を用いず、簡単な構成および制御で作業対象物の位置を容易に算出できるロボットシステムを提供することができる。また、作業対象物が載置されるステージと撮像装置の相対的な動きを直接拾うため、作業対象物の相対的な動きによるボケの特性を点拡散関数に十分反映することができる。
【０００９】
（適用例２）前記マーカー制御部は、前記蛍光体マーカーの蛍光体の励起装置を有し、前記蛍光体を断続的に励起させることを特徴とする上記のロボットシステム。
【００１０】
（適用例３）前記励起装置は、極短光パルスレーザー発生装置であり、前記蛍光体マーカーに励起用レーザー光を照射することを特徴とする上記のロボットシステム。
【００１１】
これらの構成によれば、蛍光体マーカーは、当該蛍光体の時定数および付与される励起用レーザー光のパルス周期によって、所定の露光時間内に一定の回数以上発光することができる。そのため、劣化画像内に所望数の輝点からなる輝点列を形成することができる。
【００１２】
（適用例４）前記蛍光体マーカーは、前記ステージ上に複数設けられていることを特徴とする上記のロボットシステム。
【００１３】
この構成によれば、複数の軌跡画像を解析することにより、ステージの相対的な回転や移動等をより正確に知ることができる。
【００１４】
（適用例５）複数の前記蛍光体マーカーは、それぞれ異なった波長の光を放出していることを特徴とする上記のロボットシステム。
【００１５】
この構成によれば、ボケ画像に撮像されている蛍光体マーカーを特定することができる。
【００１６】
（適用例６）作業対象物に対して作業を施すロボットシステムの制御方法であって、マーカー制御部により撮像装置の露光時間よりも短い周期で点滅発光するように制御される蛍光体マーカーを備えたステージに載置される前記作業対象物を、前記撮像装置により前記蛍光体マーカーとともに撮像する撮像工程と、前記撮像工程で撮像された動きボケを含む劣化画像から前記蛍光体マーカーの軌跡画像を抽出して、前記軌跡画像から点拡散関数を算出する点拡散関数算出工程と、算出した前記点拡散関数を用いて、前記劣化画像を画像変換することにより、前記劣化画像から劣化していない元画像を生成する画像生成工程と、生成された前記元画像から前記作業対象物の位置を算出する位置算出工程と、を有することを特徴とするロボットシステムの制御方法。
【００１７】
この方法によれば、作業対象物が載置されるステージに、撮像装置の露光時間より短い周期で点滅発光する蛍光体マーカーが設けられている。そして、撮像装置により撮像された作業対象物の劣化画像、いわゆるボケ画像は、その蛍光体マーカーの点滅発光の軌跡画像を含んでいる。蛍光体マーカーの軌跡画像は、複数の輝点が列をなしている輝点列として構成されているため、輝点列の方向、輝点間の距離からボケを発生させた動きの方向や速度変化等、点拡散関数の構成要素を容易に取得することができる。その結果、点拡散関数を精度良く算出することができる。そして、算出された点拡散関数を用いてボケ画像からボケていない元画像を生成することができ、生成された元画像から、作業対象物の位置を算出することができる。すなわち、角速度センサー等を用いず、簡単な構成および制御で作業対象物の位置を容易に算出できるロボットシステムを提供することができる。また、作業対象物が載置されるステージと撮像装置の相対的な動きを直接拾うため、作業対象物の相対的な動きによるボケの特性を点拡散関数に十分反映することができる。
【図面の簡単な説明】
【００１８】
【図１】ロボットシステムの構成例を示す図。
【図２】作業対象物であるワークが載置されるステージを説明する図。
【図３】ワークの位置検出方法の流れを示すフローチャート。
【図４】カメラで撮像されたワークの画像を示す図。
【図５】第２実施例のステージを説明する図。
【図６】第２実施例にかかるワークの画像を示す図。
【発明を実施するための形態】
【００１９】
（第１実施例）
（ロボットシステムの構成について）
本実施例のロボットシステムについて、図１および図２を参照して説明する。図１は、ロボットシステムの構成例を示す図であり、図２は作業対象物であるワークが載置されるステージを説明する図である。
【００２０】
図１に示すように、ロボットシステム５は、ロボット１０と、作業対象物であるワークＷを載置し搬送するワーク載置部７０と、撮像装置としてのカメラ２０と、制御部５０とを備える。ロボット１０は、いわゆる多関節型ロボットであり、ベース２５と、アーム１７Ａ，１７Ｂと、ロボットハンド１９を含む手首部１８と、それぞれを回動自在に支持する関節部である第１軸１２と第２軸１４と第３軸１６とから構成されている。
【００２１】
ロボット１０は、設置面にベース２５により設置される。ベース２５は、第１回転軸１１を備え、ベース２５より上方のロボット１０本体を設置面との鉛直軸を中心に回転させることができる。ベース２５には、第１軸１２を介してアーム１７Ａが回動自在に取り付けられている。アーム１７Ａは、第２回転軸１３を備え、アーム１７Ａ自身が軸方向に回転することができる。アーム１７Ａには、第２軸１４を介してアーム１７Ｂが回動自在に取り付けられている。
【００２２】
アーム１７Ｂは、第３回転軸１５を備え、アーム１７Ｂ自身が軸方向に回転することができる。アーム１７Ｂには、第３軸１６を介して手首部１８が回動自在に取り付けられている。手首部１８の先端にはロボットハンド１９が設けられ、ワークＷに対して作業を実施する。これらの第１〜３軸１２，１４，１６、第１〜３回転軸１１，１３，１５およびロボットハンド１９は、図示しないモーターや空圧機器等により操作される複数の図示しないアクチュエーターの駆動により、回動するように構成されている。複数のアクチュエーターは、制御部５０からケーブル８５を介して送られる制御信号に基づいて駆動される。
【００２３】
カメラ２０は、ロボット１０の手首部１８に設置されている。カメラ２０は、いわばロボット１０の眼として機能するものであり、例えば、ＣＣＤのような撮像素子によりロボットハンド１９が作業する方向を所定の露光時間で撮像する。そして撮像されたワークＷを含む画像は、画像信号としてケーブル８６を介して制御部５０に送られる。
【００２４】
ワーク載置部７０は、ワークＷを載置するステージ７２を有する。ステージ７２では、ロボット１０によるワークＷに対する作業が実施される。ステージ７２は、ワークＷが載置されるステージ面７２ａを有し、ステージ面７２ａは、所定の蛍光体からなるマーカー７４（蛍光体マーカー）を１つ以上備えている。このマーカー７４の詳細については後述する。ワークＷは、例えば、図示しないベルトコンベアで搬送されワーク載置部７０のステージ７２に搬入され、ロボット１０による作業が実施された後、次のワーク載置部７０もしくは次の工程に搬出される。なお、ワーク載置部７０そのものがベルトコンベアにより搬送されてもよい。
【００２５】
制御部５０は、少なくとも、画像処理装置３０と、ロボット動作制御部４０と、マーカー制御部４５と、コンピューター６０とから構成されている。画像処理装置３０は、少なくとも、画像入力部３２と、位置情報取得部３４とから構成され、ロボット１０のカメラ２０で撮像され、画像入力部３２を介して入力されたワークＷとマーカー７４とを含む画像を処理してワークＷの位置情報を取得する。位置情報取得部３４は、点拡散関数算出部３５と、画像生成部３７と、位置算出部３９とを備え、種々の演算処理を行いワークＷの位置情報を取得する。位置情報取得部３４の動作については後述する。ロボット動作制御部４０は、コンピューター６０の指令に基づいて上述のロボット１０の動作を制御し、ワークＷに対して所定の作業を実施する。
【００２６】
マーカー制御部４５は、ワークＷが載置されるステージ面７２ａに設けられたマーカー７４の蛍光体から特定の波長の光を放出させる励起装置４６を有している。本実施例では、励起装置４６として極短光パルスレーザー発生装置４７を備えている場合を例にとり説明する。極短光パルスレーザー発生装置４７は、レーザー照射部４８からステージ面７２ａに設けられたマーカー７４に向けて、極めて短い周期で光パルスレーザーを照射する。レーザー照射部４８は、ケーブル４９により図示しない極短光パルスレーザー発生装置４７のコントロール部に接続され、コントロールされる。マーカー制御部４５の動作の詳細については後述する。
【００２７】
コンピューター６０は、中央処理装置として機能し、図示しないＣＰＵ、ＲＡＭ、ＲＯＭ、ＨＤＤ、シーケンサーおよびロボットコントローラー等からなるハードウェア資源と、ＲＯＭやＨＤＤ等に記憶された種々のソフトウェアとを有機的に協働させることにより、ロボット１０、画像処理装置３０、およびマーカー制御部４５等を総括的に制御する。
【００２８】
ここで、本実施例のステージ７２と、ステージ７２に設けられるマーカー７４について図２を参照して説明する。図２に示すように、ステージ７２は四角形形状に形成され、例えばステージ面７２ａの１つのコーナー付近にマーカー７４が設けられている。なお、本実施例では説明を簡便にするため、マーカー７４が１つ設けられている場合について説明するが、マーカー７４の数はこれに限定されない。マーカー７４の数は複数でもよい。
【００２９】
マーカー７４は、短い時定数を持つ蛍光体Ｋからなる発光部７５を有する。蛍光体Ｋとしては、例えば、ローダミンなどの減衰時間が１０ｎｓｅｃ以下の蛍光体が、好適に適用され得る。蛍光体Ｋは、ステージ面７２ａに凹部を設け埋め込んでもよいし、別に蛍光体Ｋを保持する保持体を用いステージ面７２ａに取り付けてもよい。形状は丸形状が好ましいが、これに限定されるものではない。
【００３０】
次いで、蛍光体Ｋを点滅発光させる励起装置４６（マーカー制御部４５）について図１を参照して説明する。図１に示すように、励起装置４６としての極短光パルスレーザー発生装置４７は、レーザー照射部４８を備え、ステージ面７２ａに設けられたマーカー７４に向けて、極めて短い周期ｔでパルスレーザー光を照射する。このときのパルス周期ｔは、カメラ２０の露光時間と比較して極めて短い周期であることが好ましい。
【００３１】
蛍光体Ｋは、特定波長の励起光を吸収し、それにより励起された状態（励起状態）から元の状態（基底状態）に戻る際にエネルギーを光（蛍光）として放出する特性をもつ物質である。そのため、蛍光体Ｋは、極めて短い周期ｔのパルスレーザー光に反応して１０ｎｓｅｃ以下の減衰時間で蛍光を放出する。一般に高速カメラでも、フレーム間隔は数ｍｓｅｃ程度である。従って、蛍光体Ｋからなるマーカー７４は、図１に示すカメラ２０の露光時間内に、多数回光を放出することができる。なお、マーカー７４から放出される光の種類（波長）は、適用される蛍光体の種類によって設定することができる。また、マーカー７４から放出される点滅光の周期は、極短光パルスレーザー発生装置４７から照射されるパルスレーザー光の周期ｔにより設定される。
【００３２】
なお、ステージ７２に載置されるワークＷは、図２に示すように、例えば、長方形の板状に形成され、平面部には３つの貫通穴が設けられている。ワークＷは、ステージ面７２ａに設けられたマーカー７４を避けて載置されることが好ましい。
【００３３】
（ロボットシステムにおける作業について）
上述のロボットシステム５を用いた作業について、おなじく図１および図２を参照して説明する。ロボットシステム５のロボット１０は、図示しないベルトコンベアによりステージ７２に搬送されたワークＷに対して、作業を実施する。本実施例では、生産効率向上、設備の汎用化および簡素化のため、ワークＷの整列装置や位置決め装置を設けていないため、ワークＷは、ランダムな姿勢で搬送され、それぞれに固有の作業が実施される。そのため、ロボット１０は、作業を実施するワークＷの位置や姿勢を検出する必要がある。従って、ロボット１０は、図１に示すカメラ２０を用いて、ステージ７２に載置されるワークＷを撮像してワークＷの位置検出を行う。
【００３４】
例えば、図２に示すようなレイアウトで、ワークＷがステージ７２上に置かれたとする。ワークＷの位置を検出するため、ロボット１０の手首部１８の先端部に設けられたカメラ２０を用いて、ステージ７２上のワークＷを撮像する。このとき、ロボット１０の手首部１８の動きを静止させるか、ワークＷを静止させることが好ましい。ところが、このような方法では作業や移動動作が中断されてしまい、作業効率が著しく低下する。そのため、一般には、双方が移動動作を行っている状態で撮像する。このとき、カメラ２０は、所定の露光時間に渡りシャッターを開放して撮像する。
【００３５】
その結果、撮像されたワークＷの画像は、動きボケを含んだ、いわゆるボケ画像Ｂとなってしまう場合が多い。そのままでは、ワークＷの位置を検出することができない。そのため、何らかの画像処理が必要である。画像処理方法として、例えばボケ画像がどのようにボケているかを推定し、ボケ画像に対してその逆特性を演算することにより、ボケていない元画像を復元する方法がある。
【００３６】
（ワークの位置検出方法について）
ここで、画像がどのようにボケているのかを表すパラメーターとして点拡散関数を用いたワークの位置検出方法について、図３および図４を参照して説明する。図３は、ワークの位置検出方法の流れを示すフローチャートであり、図４は、カメラで撮像されたワークの画像を示す図である。
【００３７】
図３に示すように、この位置検出方法は、ワーク搬入工程Ｓ１１と、マーカー＆ワーク撮像工程Ｓ１２と、画像入力工程Ｓ１３と、点拡散関数算出工程Ｓ１４と、画像生成工程Ｓ１５と、ワーク位置算出工程Ｓ１６と、を有する。ワーク搬入工程Ｓ１１では、図１に示すロボットシステム５において、ワークＷが、ベルトコンベア等で搬送されワーク載置部７０のステージ７２に供給される。このときワークＷは、ランダムな姿勢で供給されるため、ワークＷが現在どのような姿勢をなしているか分からない。そこで、次の工程に進む。
【００３８】
マーカー＆ワーク撮像工程Ｓ１２では、図１に示すカメラ２０を用いて、ステージ７２に載置されるワークＷを撮像する。このとき、ワークＷが載置されるステージ面７２ａに設けられているマーカー７４も同一視野内に入るように撮像する。しかしながら、カメラ２０およびワークＷ（ステージ７２）は相対的に移動している状態であるため、撮像される画像は、動きボケを含んだいわゆるボケ画像Ｂとなってしまう。
【００３９】
図４（ａ）に示すように、ボケ画像Ｂは、動きボケを含んだワークＷの画像Ｂｗと、マーカー７４の軌跡画像１００とを含む。前述のように蛍光体Ｋからなるマーカー７４は、極めて短い周期ｔで点滅発光するため、軌跡画像１００は、図４（ｂ）に示すように、輝点１００ａ，１００ｂ，１００ｃ，１００ｄからなる輝点列１００Ａを構成する。本実施例では、輝点１００ａおよび輝点１００ｂの距離Ｌａｂ、輝点１００ｂおよび輝点１００ｃの距離Ｌｂｃ、輝点１００ｃおよび輝点１００ｄの距離Ｌｃｄはそれぞれ異なる距離である。
【００４０】
図３に示す画像入力工程Ｓ１３では、カメラ２０によって撮像された軌跡画像１００を含むボケ画像Ｂを、画像信号として、図１に示す制御部５０の画像処理装置３０の画像入力部３２に取り込む。取り込まれたボケ画像Ｂは、位置情報取得部３４に送られる。
【００４１】
図３に示す点拡散関数算出工程Ｓ１４では、ボケ画像Ｂから軌跡画像１００を抽出して点拡散関数を算出する。この点拡散関数の算出方法は、特に限定しない。公知の算出方法を適用すればよい。なお、軌跡画像１００は、点拡散関数の空間移動分の情報、すなわち、ボケを発生させる動きの方向と速度とをデータとして持つ。この場合、軌跡画像１００の輝点列１００Ａの方向から移動の方向、すなわち動きベクトル（ボケを発生させた動き方向）を知ることができる。マーカー７４は、略等しい間隔（周期ｔ）で点滅発光している。そのため、各輝点１００ａ，１００ｂ，１００ｃ，１００ｄ間の距離Ｌａｂ，Ｌｂｃ，Ｌｃｄから、マーカー７４を撮像したときのカメラ２０とマーカー７４との相対移動速度ｖの関係を知ることができる。
【００４２】
図４（ｂ）に示す軌跡画像１００を例にとると、輝点列１００Ａは、図中左上から右下の方向（矢印Ｍ）に向かって形成されている。そのため、少なくとも矢印Ｍに沿った移動をしていることがわかる。さらには、このときボケ画像Ｂの輝点１００ａ，１００ｂ，１００ｃ，１００ｄに注目することによって、移動の方向（始点および終点）を知ることができる。図４（ｂ）に示すように、輝点１００ａ，１００ｂ，１００ｃ，１００ｄの画像は、図中右下から左上に向かっていわゆる尾引き状態となっている。そのため、輝点１００ａが始点方向で輝点１００ｄが終点方向であることがわかる。
【００４３】
また、輝点列１００Ａは、輝点１００ｂおよび輝点１００ｃの距離Ｌｂｃ＞輝点１００ｃおよび輝点１００ｄの距離Ｌｃｄ＞輝点１００ａおよび輝点１００ｂの距離Ｌａｂの関係になっている。そのため、輝点１００ａ、輝点１００ｂ間を撮像したときのカメラ２０とマーカー７４との相対移動速度ｖａｂと、輝点１００ｂ、輝点１００ｃ間を撮像したときのカメラ２０とマーカー７４との相対移動速度ｖｂｃと、輝点１００ｃ、輝点１００ｄ間を撮像したときのカメラ２０とマーカー７４との相対移動速度ｖｃｄとの関係は、相対移動速度ｖｂｃ＞相対移動速度ｖｃｄ＞相対移動速度ｖａｂとなることがわかる。
【００４４】
次いで、画像生成工程Ｓ１５では、点拡散関数算出工程Ｓ１４で算出した点拡散関数を用いて、ボケ画像Ｂからボケてない元画像を生成する。この方法を簡単に説明する。
画像のボケは、下記の式（１）のようにモデル化される。この式（１）で示すように、元画像をＩｍａｇｅ、ボケ画像をＢｌｕｒ、画像がどのようにボケているのかを表すパラメーターである点拡散関数をＰＳＦとすると、ボケ画像（Ｂｌｕｒ）は点拡散関数（ＰＳＦ）と元画像（Ｉｍａｇｅ）との畳み込み演算で与えられる。点拡散関数（ＰＳＦ）は、名前のとおり、本来１点であるデータが、どのように拡がっているのかを表す関数である。
【００４５】
【数１】
2011027454.tif 000003
【００４６】
ここで、下記の式（２）、（３）、（４）のように、関数ｆに対するフーリエ変換操作をＦ［ｆ］と表すとすると、元画像（Ｉｍａｇｅ）のフーリエ変換はｉｍａｇｅ、ボケ画像（Ｂｌｕｒ）のフーリエ変換はｂｌｕｒ、点拡散関数（ＰＳＦ）のフーリエ変換はｐｓｆと表すことができる。畳み込み演算は、フーリエ変換により単なる乗算に変換されるため、式（１）は下記の式（５）に変換される。
【００４７】
【数２】
2011027454.tif 000004
【００４８】
【数３】
2011027454.tif 000005
【００４９】
下記の式（６）のように、元画像のフーリエ変換（ｉｍａｇｅ）は、点拡散関数（ＰＳＦ）のフーリエ変換である（ｐｓｆ）の逆数と、ボケ画像（Ｂｌｕｒ）のフーリエ変換である（ｂｌｕｒ）との積により得られる。関数ｆの逆フーリエ変換操作をＩＦ［ｆ］とすると、ボケの無い元画像（Ｉｍａｇｅ）は、式（６）で得られた元画像のフーリエ変換（ｉｍａｇｅ）を、式（７）のように逆フーリエ変換することにより得られる。
【００５０】
【数４】
2011027454.tif 000006
【００５１】
【数５】
2011027454.tif 000007
【００５２】
上述のような演算処理は、数学的処理としては単純なものであり、その一例として、ウィーナフィルター処理などがある。このようにして図４（ｃ）に示すボケていない元画像Ｇが生成される。
【００５３】
次いで、図３に示すワーク位置算出工程Ｓ１６では、生成された元画像Ｇに基づいてワークＷの位置を算出する。そして、算出した位置に関する情報を図１に示すロボット動作制御部４０に送る。ロボット動作制御部４０は、アーム１７等の稼動部の動作を上記情報に基づいて制御する。すなわち、ロボット動作制御部４０は、情報に基づき、ロボット１０を移動させるための複数のアクチュエーターの駆動量を算出し、それぞれのアクチュエーター毎に駆動信号を生成し、それぞれのアクチュエーターに送る。この結果、アーム１７が所定の位置まで移動しロボットハンド１９によりワークＷに所定の作業が施される。なお、ワークＷの位置算出方法は、公知の位置算出方法が適用される。例えば、ワークＷの形状の特徴点に注目して位置を算出してもよいし、別途用意されたワークＷの姿勢ごとの画像と生成された元画像とを比較して位置を算出してもよい。
【００５４】
以下、本実施例の効果を記載する。
（１）上述のロボットシステム５は、ワークＷが載置されるステージ７２にカメラ２０の露光時間より短い周期で点滅発光する蛍光体Ｋからなるマーカー７４が設けられている。そして、ワークＷの位置を検出するとき、ロボット１０に設けられたカメラ２０でワークＷとマーカー７４とを同一視野に入れるように撮像する。撮像されたワークＷの画像が動きボケを含んだボケ画像Ｂであった場合、ボケ画像Ｂは、そのマーカー７４の点滅発光の軌跡画像１００を含んでいる。
【００５５】
マーカー７４の軌跡画像１００は、複数の輝点１００ａ，１００ｂ，１００ｃ，１００ｄが列をなしている輝点列１００Ａとして構成されているため、輝点列の１００Ａ方向、輝点１００ａ，１００ｂ，１００ｃ，１００ｄ間の距離Ｌａｂ，Ｌｂｃ，Ｌｃｄからボケを発生させた動きの方向や速度変化等、点拡散関数の構成要素を容易に取得することができる。その結果、カメラ２０の画像を解析するだけで、点拡散関数が容易に精度良く求めることができ、元画像の生成も精度良く行うことができる。その結果、ワークＷの位置検出も容易に行うことができ、ロボットシステム５の作業効率を向上させることができる。
【００５６】
（２）上述のロボットシステム５は、蛍光体Ｋからなるマーカー７４を採用している。蛍光体Ｋが放出する光は、一般に単一波長であるため、フィルター等の手段を用いることによって、軌跡画像１００をボケ画像Ｂから容易に抽出することができる。
【００５７】
（３）上述のロボットシステム５は、蛍光体Ｋからなるマーカー７４を点滅発光させるために、極短光パルスレーザー発生装置４７を適用している。極短光パルスレーザー発生装置４７は、極めて短い周期でパルスレーザー光を照射する。そのため、蛍光体Ｋは、そのパルスレーザー光に反応してカメラ２０の露光時間と比較して極めて短い周期で蛍光を放出する。その結果、ボケ画像Ｂの軌跡画像１００中に多くの輝点を含むことができる。
従って、ボケを発生させた動きの方向や速度変化等、点拡散関数の構成要素をより正確に取得することができ、点拡散関数を精度良く求めることができる。
【００５８】
（第２実施例）
ここで、第２実施例のロボットシステムについて図５および図６を参照して説明する。図５は第２実施例のステージを説明する図であり、図６は第２実施例にかかるワークの画像を示す図である。なお、第２実施例は、第１実施例に対して、マーカー７４の設置状況が異なる例である。また、第１実施例と同様な構成および内容については、符号を等しくして説明を省略する。
【００５９】
図５に示すように、ステージ７２は、ワークＷが載置されるステージ面７２ａの３つのコーナー付近に、それぞれマーカー７４ａ，７４ｂ，７４ｃを１つずつ備えている。マーカー７４ａ，７４ｂ，７４ｃは、それぞれ蛍光体Ｋの種類が異なる。その結果、マーカー７４ａ，７４ｂ，７４ｃは、それぞれ異なる波長の光、すなわち異なる色の光を放出することができるように構成されている。
【００６０】
図３に示す位置検出方法のマーカー＆ワーク撮像工程Ｓ１２では、図１に示すカメラ２０を用いて、ステージ７２に載置されるワークＷおよびマーカー７４ａ，７４ｂ，７４ｃが同一視野内に入るように撮像する。その結果、図６に示す動きボケを含んだいわゆるボケ画像Ｂａを得る。ボケ画像Ｂａは、動きボケを含んだワークＷの画像Ｂｗと、画像の３つのコーナー付近のそれぞれにマーカー７４ａの軌跡画像１１０と、マーカー７４ｂの軌跡画像１２０とマーカー７４ｃの軌跡画像１３０とを有する。
【００６１】
軌跡画像１１０は、例えば、図中右下から左上の方向（矢印Ｎ１方向）に向かって形成されている。そのため、矢印Ｎ１に沿った移動をしていることがわかる。さらには、ボケ画像Ｂａの輝点１１０ａ，１１０ｂ，１１０ｃ，１１０ｄに注目することによって、第１実施例と同様に、移動の方向、動きベクトルおよびをカメラ２０とマーカー７４ａとの相対移動速度ｖの関係を知ることができる。
【００６２】
軌跡画像１２０は、図中右下から左上の方向（矢印Ｎ２方向）に向かって形成されている。そのため、矢印Ｎ２に沿った移動をしていることがわかる。軌跡画像１３０は、図中右下から左上の方向（矢印Ｎ３方向）に向かって形成されている。そのため、少なくとも矢印Ｎ３に沿った移動をしていることがわかる。また、軌跡画像１１０の輝点１１０ａ〜ｄの距離Ｌ１１０、軌跡画像１２０の輝点１２０ａ〜ｄの距離Ｌ１２０および軌跡画像１３０の輝点１３０ａ〜ｄの距離Ｌ１３０に注目すると、距離Ｌ１１０＜距離Ｌ１２０＜距離Ｌ１３０の関係にあり、各輝点間の距離が相似し大きくなっていることがわかる。この移動の方向（矢印Ｎ１，Ｎ２，Ｎ３）および距離Ｌ１１０，Ｌ１２０，Ｌ１３０の変化を解析することによって、軌跡画像１１０から求まる方向および速度で移動しながら、図６中の矢印Ｒ方向に回転していることがわかる。
【００６３】
すなわち、カメラ２０とワークＷ（ステージ７２）との相対移動において、回転や傾き等の移動により動きボケが発生したとしても、軌跡画像１１０，１２０，１３０を解析することによって点拡散関数をより正確に算出することができる。従って、求められた点拡散関数よりワークＷの位置をより正確に知ることができ、ロボット１０の作業の精度を向上させることができる。なお、マーカー７４の数は、第１実施例で説明した１つおよび第２実施例で説明した３つに限定されるものではない。予想されるカメラ２０とワークＷ（ステージ７２）との動きに対応して、マーカー７４の数を決定すればよい。
【００６４】
以上、本発明の実施例について説明したが、上記実施例に対しては、本発明の趣旨から逸脱しない範囲で様々な変形を加えることができる。例えば上記実施例以外の変形例は、以下の通りである。
【００６５】
（第１変形例）上述の実施例では、マーカー制御部４５の励起装置４６として極短光パルスレーザー発生装置４７を適用する場合を例にとり説明したが、これに限定されない。マーカー７４の蛍光体Ｋを励起する方法としては、特定波長のパルス光による励起であってもよいし、電流による励起であってもよい。図１に示すカメラ２０の露光時間と比較して極めて短い周期で蛍光体Ｋを励起して光を放出することができればよい。
【００６６】
（第２変形例）上述の実施例では、ロボット１０として多関節型ロボットを採用した場合について説明したが、これに限定されるものではなく、スカラー型のロボットであってもよい。また、ロボット１０の用途は、ロボットハンド１９による部品の把持、ハンダ付けや溶接のような加工を行う等様々な用途が想定される。さらに、産業用ロボットに限らず、医療用ロボットや家庭用ロボットであってもよい。
【符号の説明】
【００６７】
５…ロボットシステム、１０…ロボット、１９…ロボットハンド、２０…撮像装置としてのカメラ、３０…画像処理装置、３２…画像入力部、３４…位置情報取得部、３５…点拡散関数算出部、３９…位置算出部、４５…マーカー制御部、４６…励起装置、４７…極短光パルスレーザー発生装置、４８…レーザー照射部、５０…制御部、６０…コンピューター、７２…ステージ、７４…マーカー、７５…発光部、１００，１１０，１２０，１３０…軌跡画像、１００ａ，１００ｂ，１００ｃ，１００ｄ…輝点、１００Ａ…輝点列、Ｂ…ボケ画像、Ｋ…蛍光体、Ｗ…作業対象物としてのワーク、Ｓ１２…マーカー＆ワーク撮像工程、Ｓ１４…点拡散関数算出工程、Ｓ１５…画像生成工程、Ｓ１６…ワーク位置算出工程。
【図１】
2011027454.tif 000008
【図２】
2011027454.tif 000009
【図３】
2011027454.tif 000010
【図４】
2011027454.tif 000011
【図５】
2011027454.tif 000012
【図６】
2011027454.tif 000013