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