(57)【要約】【課題】  撮像画像において検出対象物が映る位置に関わらず、検出対象物の位置姿勢を特定することができる画像処理装置等の提供。【解決手段】  画像処理装置は、参照モデル記憶部１１０と、撮像画像取得部１３０と、参照モデルと撮像画像のマッチング処理を、参照モデルのサンプリング点に設定されるマッチングエリアに基づき行い、ワークの位置姿勢を特定する位置姿勢特定部１５０を含む。そして、撮像画像の第１のエリアでマッチング処理を行う際に設定されるマッチングエリアを第１のマッチングエリアとし、第２のエリアでマッチング処理を行う際に設定されるマッチングエリアを第２のマッチングエリアとし、基準点からサンプリング点へと向かう方向を第１の方向とした場合に、第１のマッチングエリアの第１の方向の長さよりも、第２のマッチングエリアの第１の方向の長さの方が長いものとする。【選択図】  図１
2015036882.tif 000002
【特許請求の範囲】
【請求項１】
ワークの参照モデルの情報を記憶する参照モデル記憶部と、
前記ワークの撮像画像を取得する撮像画像取得部と、
前記参照モデルと前記撮像画像に映る前記ワークとのマッチング処理を行って、前記ワークの位置姿勢の特定処理を行う位置姿勢特定部と、
を含み、
前記位置姿勢特定部は、
前記参照モデルのサンプリング点に設定されるマッチングエリアに基づいて前記マッチング処理を行い、
前記撮像画像の基準点を含む第１のエリアにおいて、前記参照モデルにより前記マッチング処理を行う際に、前記参照モデルの前記サンプリング点に設定されるマッチングエリアを、第１のマッチングエリアとし、
前記撮像画像の第２のエリアにおいて前記参照モデルにより前記マッチング処理を行う際に、前記参照モデルの前記サンプリング点に設定されるマッチングエリアを、第２のマッチングエリアとし、
前記基準点から、前記第２のマッチングエリアが設定される前記サンプリング点へと向かう方向を第１の方向とした場合に、
前記第１のマッチングエリアの前記第１の方向の長さよりも、前記第２のマッチングエリアの前記第１の方向の長さの方が長いことを特徴とする画像処理装置。
【請求項２】
請求項１において、
前記基準点と前記第２のマッチングエリアが設定される前記サンプリング点の間の距離が大きくなるほど、前記第２のマッチングエリアの前記第１の方向の長さが長くなることを特徴とする画像処理装置。
【請求項３】
請求項１又は２において、
前記第２のマッチングエリアの前記第１の方向に直交する第２の方向の長さよりも、前記第２のマッチングエリアの前記第１の方向の長さの方が長いことを特徴とする画像処理装置。
【請求項４】
請求項１乃至３のいずれかにおいて、
前記位置姿勢特定部は、
前記撮像画像に対する前記参照モデルの並進移動及び回転移動の少なくとも一方を行い、移動後の前記参照モデルの前記サンプリング点と前記基準点の間の距離情報に基づいて、前記第２のマッチングエリアを設定することを特徴とする画像処理装置。
【請求項５】
請求項１乃至４のいずれかにおいて、
前記参照モデルは、
前記ワークを撮像することにより得られるモデルであり、
前記基準点は、
前記撮像画像において、前記参照モデルの撮像時における前記ワークの配置位置に対応する位置であることを特徴とする画像処理装置。
【請求項６】
請求項１乃至５のいずれかにおいて、
前記参照モデルは、
撮像範囲の中心に前記ワークを配置して撮像することにより得られるモデルであり、
前記基準点は、
前記撮像画像の中心位置であることを特徴とする画像処理装置。
【請求項７】
請求項１乃至６のいずれかにおいて、
前記位置姿勢特定部は、
前記撮像画像において前記ワークの特徴点の抽出処理を行い、前記参照モデルの前記マッチングエリア内における前記撮像画像の前記特徴点の数に基づいて、前記マッチング処理を行うことを特徴とする画像処理装置。
【請求項８】
請求項１乃至６のいずれかにおいて、
前記位置姿勢特定部は、
前記撮像画像において前記ワークの輪郭線の抽出処理を行い、前記参照モデルの前記マッチングエリア内に存在する前記輪郭線と、前記参照モデルの前記各サンプリング点との距離情報に基づいて、前記マッチング処理を行うことを特徴とする画像処理装置。
【請求項９】
請求項１乃至８のいずれかに記載の画像処理装置と、
特定された前記ワークの位置姿勢に基づいて、ロボットの制御を行うロボット制御部と、
を含むことを特徴とするロボット制御システム。
【請求項１０】
ワークの参照モデルの情報を記憶する参照モデル記憶部と、
前記ワークの撮像画像を取得する撮像画像取得部と、
前記参照モデルと前記撮像画像に映る前記ワークとのマッチング処理を行って、前記ワークの位置姿勢の特定処理を行う位置姿勢特定部と、
特定した前記ワークの位置姿勢に基づいて、ロボットの制御を行うロボット制御部と、
を含み、
前記位置姿勢特定部は、
前記参照モデルのサンプリング点に設定されるマッチングエリアに基づいて前記マッチング処理を行い、
前記撮像画像の基準点を含む第１のエリアにおいて、前記参照モデルにより前記マッチング処理を行う際に、前記参照モデルの前記サンプリング点に設定されるマッチングエリアを、第１のマッチングエリアとし、
前記撮像画像の第２のエリアにおいて前記参照モデルにより前記マッチング処理を行う際に、前記参照モデルの前記サンプリング点に設定されるマッチングエリアを、第２のマッチングエリアとし、
前記基準点から、前記第２のマッチングエリアが設定される前記サンプリング点へと向かう方向を第１の方向とした場合に、
前記第１のマッチングエリアの前記第１の方向の長さよりも、前記第２のマッチングエリアの前記第１の方向の長さの方が長いことを特徴とするロボット。
【請求項１１】
ワークの参照モデルの情報を記憶し、
前記ワークの撮像画像を取得し、
前記参照モデルのサンプリング点に設定されるマッチングエリアに基づいて、前記参照モデルと前記撮像画像に映る前記ワークとのマッチング処理を行い、
前記ワークの位置姿勢の特定処理を行い、
前記撮像画像の基準点を含む第１のエリアにおいて、前記参照モデルにより前記マッチング処理を行う際に、前記参照モデルの前記サンプリング点に設定されるマッチングエリアを、第１のマッチングエリアとし、
前記撮像画像の第２のエリアにおいて前記参照モデルにより前記マッチング処理を行う際に、前記参照モデルの前記サンプリング点に設定されるマッチングエリアを、第２のマッチングエリアとし、
前記基準点から、前記第２のマッチングエリアが設定される前記サンプリング点へと向かう方向を第１の方向とした場合に、
前記第１のマッチングエリアの前記第１の方向の長さよりも、前記第２のマッチングエリアの前記第１の方向の長さの方が長いことを特徴とする画像処理方法。
【請求項１２】
ワークの参照モデルの情報を記憶する参照モデル記憶部と、
前記ワークの撮像画像を取得する撮像画像取得部と、
前記参照モデルと前記撮像画像に映る前記ワークとのマッチング処理を行って、前記ワークの位置姿勢の特定処理を行う位置姿勢特定部として、
コンピューターを機能させ、
前記位置姿勢特定部は、
前記参照モデルのサンプリング点に設定されるマッチングエリアに基づいて前記マッチング処理を行い、
前記撮像画像の基準点を含む第１のエリアにおいて、前記参照モデルにより前記マッチング処理を行う際に、前記参照モデルの前記サンプリング点に設定されるマッチングエリアを、第１のマッチングエリアとし、
前記撮像画像の第２のエリアにおいて前記参照モデルにより前記マッチング処理を行う際に、前記参照モデルの前記サンプリング点に設定されるマッチングエリアを、第２のマッチングエリアとし、
前記基準点から、前記第２のマッチングエリアが設定される前記サンプリング点へと向かう方向を第１の方向とした場合に、
前記第１のマッチングエリアの前記第１の方向の長さよりも、前記第２のマッチングエリアの前記第１の方向の長さの方が長いことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、ロボット制御システム、ロボット、画像処理方法及びプログラム等に関係する。
【背景技術】
【０００２】
画像中の対象物体像から、その物体の３次元的な位置姿勢（位置及び姿勢）を知ることは、種々の応用において必要とされる。一例として、産業用ロボットにおいては、カメラなどを用いて検出対象物（ワーク）を撮像し、撮像した画像を用いて検出対象物の位置姿勢情報を検出し、検出した位置姿勢情報に基づいてロボットがその検出対象物を把持する、などと言うことが要求される。そして、検出対象物の位置姿勢を特定する方法としては、例えば幾何学的パターンサーチなどが知られている。
【０００３】
また、画像中の対象物体像から、その物体の３次元的な位置姿勢を特定する方法に関する発明としては、特許文献１及び特許文献２などに記載される従来技術がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−２１６９３１号公報
【特許文献２】特開平７−１０３７１５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
画像中の対象物体像から、その物体の３次元的な位置姿勢を特定するにあたり、厚みのない平坦な物体だけではなく、厚みがある立体的な物体も検出対象物としたいというニーズも多い。検出対象物に厚みがある場合には、撮像範囲内の検出対象物の配置位置によって、撮像画像における検出対象物の映り方（見え方）が変わってくる。
【０００６】
そのため、同じ検出対象物であっても、検出対象物の配置位置によっては、参照モデルとマッチングせず、検出対象物の位置姿勢を特定できない場合が発生し得る。
【０００７】
本発明の幾つかの態様によれば、撮像画像において検出対象物が映る位置に関わらず、検出対象物の位置姿勢を特定することができる画像処理装置、ロボット制御システム、ロボット、画像処理方法及びプログラム等を提供することができる。
【課題を解決するための手段】
【０００８】
本発明の一態様は、ワークの参照モデルの情報を記憶する参照モデル記憶部と、前記ワークの撮像画像を取得する撮像画像取得部と、前記参照モデルと前記撮像画像に映る前記ワークとのマッチング処理を行って、前記ワークの位置姿勢の特定処理を行う位置姿勢特定部と、を含み、前記位置姿勢特定部は、前記参照モデルのサンプリング点に設定されるマッチングエリアに基づいて前記マッチング処理を行い、前記撮像画像の基準点を含む第１のエリアにおいて、前記参照モデルにより前記マッチング処理を行う際に、前記参照モデルの前記サンプリング点に設定されるマッチングエリアを、第１のマッチングエリアとし、前記撮像画像の第２のエリアにおいて前記参照モデルにより前記マッチング処理を行う際に、前記参照モデルの前記サンプリング点に設定されるマッチングエリアを、第２のマッチングエリアとし、前記基準点から、前記第２のマッチングエリアが設定される前記サンプリング点へと向かう方向を第１の方向とした場合に、前記第１のマッチングエリアの前記第１の方向の長さよりも、前記第２のマッチングエリアの前記第１の方向の長さの方が長い画像処理装置に関係する。
【０００９】
本発明の一態様では、撮像画像の第１のエリアにおいてマッチング処理を行う際には、第１のマッチングエリアに基づいてマッチング処理を行い、撮像画像の第２のエリアにおいてマッチング処理を行う際には、第２のマッチングエリアに基づいてマッチング処理を行う。
【００１０】
よって、撮像画像においてワークが映る位置に関わらず、ワークの位置姿勢を特定することが可能となる。
【００１１】
また、本発明の一態様では、前記基準点と前記第２のマッチングエリアが設定される前記サンプリング点の間の距離が大きくなるほど、前記第２のマッチングエリアの前記第１の方向の長さが長くなってもよい。
【００１２】
これにより、第２のマッチングエリアを、基準点からの距離に応じて、第１の方向へと広げること等が可能になる。
【００１３】
また、本発明の一態様では、前記第２のマッチングエリアの前記第１の方向に直交する第２の方向の長さよりも、前記第２のマッチングエリアの前記第１の方向の長さの方が長くてもよい。
【００１４】
これにより、撮像画像に映るワークがより歪む方向に第２のマッチングエリアを広げること等が可能になる。
【００１５】
また、本発明の一態様では、前記位置姿勢特定部は、前記撮像画像に対する前記参照モデルの並進移動及び回転移動の少なくとも一方を行い、移動後の前記参照モデルの前記サンプリング点と前記基準点の間の距離情報に基づいて、前記第２のマッチングエリアを設定してもよい。
【００１６】
これにより、参照モデルを用いて、撮像画像に映るワークをスキャンすること等が可能になる。
【００１７】
また、本発明の一態様では、前記参照モデルは、前記ワークを撮像することにより得られるモデルであり、前記基準点は、前記撮像画像において、前記参照モデルの撮像時における前記ワークの配置位置に対応する位置であってもよい。
【００１８】
これにより、所与の基準点における参照モデルを取得すること等が可能になる。
【００１９】
また、本発明の一態様では、前記参照モデルは、撮像範囲の中心に前記ワークを配置して撮像することにより得られるモデルであり、前記基準点は、前記撮像画像の中心位置であってもよい。
【００２０】
これにより、真上から見た時のワークを表す参照モデルを取得すること等が可能になる。
【００２１】
また、本発明の一態様では、前記位置姿勢特定部は、前記撮像画像において前記ワークの特徴点の抽出処理を行い、前記参照モデルの前記マッチングエリア内における前記撮像画像の前記特徴点の数に基づいて、前記マッチング処理を行ってもよい。
【００２２】
これにより、マッチングエリアを用いない場合と比べて、各サンプリング点においてより柔軟な一致判定を行うこと等が可能になる。
【００２３】
また、本発明の一態様では、前記位置姿勢特定部は、前記撮像画像において前記ワークの輪郭線の抽出処理を行い、前記参照モデルの前記マッチングエリア内に存在する前記輪郭線と、前記参照モデルの前記各サンプリング点との距離情報に基づいて、前記マッチング処理を行ってもよい。
【００２４】
これにより、マッチングエリア内のワークの輪郭線とサンプリング点との距離に基づいて、撮像画像に映るワークと参照モデルの一致判定を行うこと等が可能になる。
【００２５】
また、本発明の他の態様では、前記画像処理装置と、特定された前記ワークの位置姿勢に基づいて、ロボットの制御を行うロボット制御部と、を含むロボット制御システムに関係する。
【００２６】
これにより、撮像画像においてワークが映る位置に関わらず、ワークの位置姿勢を特定して、ロボットを制御すること等が可能となる。
【００２７】
また、本発明の他の態様では、ワークの参照モデルの情報を記憶する参照モデル記憶部と、前記ワークの撮像画像を取得する撮像画像取得部と、前記参照モデルと前記撮像画像に映る前記ワークとのマッチング処理を行って、前記ワークの位置姿勢の特定処理を行う位置姿勢特定部と、特定した前記ワークの位置姿勢に基づいて、ロボットの制御を行うロボット制御部と、を含み、前記位置姿勢特定部は、前記参照モデルのサンプリング点に設定されるマッチングエリアに基づいて前記マッチング処理を行い、前記撮像画像の基準点を含む第１のエリアにおいて、前記参照モデルにより前記マッチング処理を行う際に、前記参照モデルの前記サンプリング点に設定されるマッチングエリアを、第１のマッチングエリアとし、前記撮像画像の第２のエリアにおいて前記参照モデルにより前記マッチング処理を行う際に、前記参照モデルの前記サンプリング点に設定されるマッチングエリアを、第２のマッチングエリアとし、前記基準点から、前記第２のマッチングエリアが設定される前記サンプリング点へと向かう方向を第１の方向とした場合に、前記第１のマッチングエリアの前記第１の方向の長さよりも、前記第２のマッチングエリアの前記第１の方向の長さの方が長いロボットに関係する。
【００２８】
また、本発明の他の態様では、ワークの参照モデルの情報を記憶し、前記ワークの撮像画像を取得し、前記参照モデルのサンプリング点に設定されるマッチングエリアに基づいて、前記参照モデルと前記撮像画像に映る前記ワークとのマッチング処理を行い、前記ワークの位置姿勢の特定処理を行い、前記撮像画像の基準点を含む第１のエリアにおいて、前記参照モデルにより前記マッチング処理を行う際に、前記参照モデルの前記サンプリング点に設定されるマッチングエリアを、第１のマッチングエリアとし、前記撮像画像の第２のエリアにおいて前記参照モデルにより前記マッチング処理を行う際に、前記参照モデルの前記サンプリング点に設定されるマッチングエリアを、第２のマッチングエリアとし、前記基準点から、前記第２のマッチングエリアが設定される前記サンプリング点へと向かう方向を第１の方向とした場合に、前記第１のマッチングエリアの前記第１の方向の長さよりも、前記第２のマッチングエリアの前記第１の方向の長さの方が長い画像処理方法に関係する。
【００２９】
また、本発明の他の態様では、上記各部としてコンピューターを機能させるプログラムに関係する。
【図面の簡単な説明】
【００３０】
【図１】本実施形態のシステム構成図。
【図２】本実施形態のロボット制御システムのシステム構成図。
【図３】図３（Ａ）、図３（Ｂ）は、本実施形態のロボットの一例。
【図４】図４（Ａ）〜図４（Ｃ）は、撮像画像の説明図。
【図５】図５（Ａ）〜図５（Ｃ）は、参照モデルの説明図。
【図６】図６（Ａ）、図６（Ｂ）は、通常のマッチング処理結果の説明図。
【図７】図７（Ａ）、図７（Ｂ）は、第１のマッチングエリアの説明図。
【図８】図８（Ａ）、図８（Ｂ）は、第２のマッチングエリアの説明図。
【図９】図９（Ａ）、図９（Ｂ）は、マッチングエリアの形状の説明図。
【図１０】マッチングエリアの第１の方向の長さの説明図。
【図１１】撮像画像に対する参照モデルの並進移動及び回転移動の説明図。
【図１２】図１２（Ａ）〜図１２（Ｄ）は、輪郭線を用いたマッチング処理の説明図。
【図１３】本実施形態の処理の流れを説明するフローチャート。
【発明を実施するための形態】
【００３１】
以下、本実施形態について説明する。まず、本実施形態の概要を説明し、次に本実施形態のシステム構成例について説明する。そして、本実施形態の手法について具体例を交えつつ詳細に説明し、最後に、フローチャートを用いて本実施形態の処理の流れについて説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また、本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【００３２】
１．概要
画像中の対象物体像から、その物体の３次元的な位置姿勢（位置及び姿勢）を知ることは、種々の応用において必要とされる。一例として、産業用ロボットの応用においては、カメラなどを用いて検出対象物（ワーク）を撮像し、撮像した画像を用いて検出対象物の位置姿勢情報を検出し、検出した位置姿勢情報に基づいてロボットがその検出対象物を把持する、などと言うことが要求される。
【００３３】
ここで、検出対象物の位置姿勢を特定する方法としては、例えば幾何学的パターンサーチなどが知られている。幾何学的パターンサーチでは、撮像画像（サーチ対象画像）から検出対象物の輪郭などの特徴点を抽出する。そして、教示された参照モデルと、撮像画像の中の特徴点がマッチするような検出対象物の位置姿勢を見つける。
【００３４】
また、厚みのない平坦な検出対象物だけではなく、厚みがある立体的な検出対象物もサーチしたいというニーズも多い。検出対象物に厚みがある場合には、撮像範囲内の検出対象物の配置位置によって、撮像画像における検出対象物の映り方（見え方）が変わってくる。具体的には、検出対象物の配置位置が撮像範囲の外縁部（周辺部）に近付くほど、画像中の検出対象物の像が歪んでしまう。
【００３５】
そのため、同じ検出対象物であっても、検出対象物の配置位置によっては、参照モデルとマッチングせず、検出対象物の位置姿勢を特定できない場合が発生し得る。
【００３６】
テレセントリックレンズを用いれば、検出対象物に厚みがあり、検出対象物が撮像範囲の外縁部（周辺部）に配置されている場合でも、検出対象物が撮像範囲の中央部に配置されている場合と同じ映り方をした撮像画像を取得することができる。
【００３７】
しかし、テレセントリックレンズは、視野の広さが限られるという問題があるため、実用には適さない。
【００３８】
これに対して、特許文献１には、認識用モデルの輪郭線の周りに設定される近傍エリア（誤差許容範囲）を用いて、幾何学的パターンサーチを行う発明が開示されている。本発明では、検出対象物の輪郭線がその近傍エリア内に含まれれば、一致しているものとみなす。
【００３９】
検出対象物が薄く、配置位置による映り方の変化が小さい場合には、この近傍エリアによって誤差を吸収することが可能であるが、近傍エリアを広げれば広げるほど、他の物体を誤って検出する可能性や、検出対象物の姿勢を誤った姿勢として検出する可能性が上昇してしまうという問題点がある。また、近傍エリアの幅が均一であり、実際の撮像画像の外縁部での立体物の見え方に対応していない。
【００４０】
また、特許文献２には、３次元物体の変形の仕方をモデル化したうえで、画像上の検出対象物をサーチする発明が開示されている。
【００４１】
しかし、特許文献２において開示される発明には、サーチ対象のワークの３次元モデルが必要な上に、複雑な計算が必要であり、処理時間がかかるという問題がある。一方で、処理時間を短縮するために特徴点を絞り込むと、物体検出の安定性に問題が生じる。
【００４２】
そこで、本実施形態では、撮像画像において検出対象物が映る位置に関わらず、検出対象物の位置姿勢を特定することができる画像処理装置、ロボット制御システム、ロボット、画像処理方法及びプログラム等を提供する。すなわち、本実施形態の画像処理装置等によれば、検出対象物が撮像画像の外縁部（周辺部）に映っている場合でも、検出対象物の位置姿勢を特定することができる。
【００４３】
２．システム構成例
次に、図１に本実施形態の画像処理装置の構成例を示す。
【００４４】
画像処理装置は、参照モデル記憶部１１０と、撮像画像取得部１３０と、位置姿勢特定部１５０と、を含む。なお、画像処理装置は、図１の構成に限定されず、これらの一部の構成要素を省略したり、他の構成要素を追加したりするなどの種々の変形実施が可能である。
【００４５】
次に各部で行われる処理について説明する。
【００４６】
参照モデル記憶部１１０は、ワークの参照モデルの情報を記憶する。また、参照モデル記憶部１１０の機能はＲＡＭ等のメモリーやＨＤＤ（ハードディスクドライブ）などにより実現できる。
【００４７】
撮像画像取得部１３０は、ワークの撮像画像を取得する。撮像画像取得部１３０は、例えば有線及び無線の少なくとも一方を含むネットワークにより撮像部と通信を行う通信部（インターフェース部）であってもよいし、撮像部そのものであってもよい。
【００４８】
位置姿勢特定部１５０は、参照モデルと撮像画像に映るワークとのマッチング処理を行って、ワークの位置姿勢の特定処理を行う。なお、位置姿勢特定部１５０の機能は、各種プロセッサー（ＣＰＵ等）、ＡＳＩＣ（ゲートアレイ等）などのハードウェアや、プログラムなどにより実現できる。
【００４９】
また、図２に本実施形態のロボット制御システムの構成例を示す。
【００５０】
本実施形態のロボット制御システム２００は、画像処理装置１００と、ロボット制御部２１０と、を含む。
【００５１】
ロボット制御部２１０は、特定されたワークの位置姿勢に基づいて、ロボット３００の制御を行う。なお、ロボット制御部２１０の機能は、各種プロセッサー（ＣＰＵ等）、ＡＳＩＣ（ゲートアレイ等）などのハードウェアや、プログラムなどにより実現できる。
【００５２】
次に、本実施形態のロボット３００の構成例を図３（Ａ）及び図３（Ｂ）に示す。例えば、図３（Ａ）のロボットは、ロボット本体３００（ロボット）とロボット制御システム２００とが別体に構成されている。この場合には、画像処理装置１００（ロボット制御システム２００）の一部又は全部の機能は、例えばＰＣ（Personal Computer）により実現される。また、画像処理装置１００の一部又は全部の機能は、有線及び無線の少なくとも一方を含むネットワークによりロボット３００と接続されたサーバーにより実現されてもよい。
【００５３】
一方で、本実施形態のロボットは図３（Ａ）の構成に限定されず、図３（Ｂ）のようにロボット本体３００とロボット制御システム２００とが一体に構成されていてもよい。すなわち、ロボット３００は、ロボット制御システム２００（参照モデル記憶部１１０と、撮像画像取得部１３０と、位置姿勢特定部１５０と、ロボット制御部２１０と、を含む）を含んでいても良い。具体的には図３（Ｂ）に示したように、ロボット３００は、ロボット本体（アーム及びハンドを有する）及びロボット本体を支えるベースユニット部を有し、当該ベースユニット部にロボット制御システム２００が格納されるものであってもよい。図３（Ｂ）のロボット３００には、ベースユニット部に車輪等が設けられ、ロボット全体が移動可能な構成となっている。なお、図３（Ａ）は単腕型の例であるが、ロボット３００は図３（Ｂ）に示すように双腕型等の多腕型のロボットであってもよい。また、ロボット３００は、人手により移動させられるものであってもよいし、車輪を駆動させるモーターを設け、当該モーターをロボット制御システム２００により制御することにより、移動させられるものであってもよい。また、ロボット制御システム２００は、図３（Ｂ）のようにロボット３００の下に設けられたベースユニット部に設けられるとは限られない。
【００５４】
３．本実施形態の手法
次に、本実施形態の手法について説明する。
【００５５】
まず、検出対象物であるワークの位置姿勢の特定処理を行う際には、撮像画像に映るワークとワークの参照モデルとのマッチング処理を行う。
【００５６】
ここで、撮像画像とは、撮像部によって検出対象物（ワーク）を撮像して得られる画像のことをいう。また、撮像画像は、外部の記憶部に記憶された対象物が映る画像や、ネットワークを介して取得される画像であってもよい。
【００５７】
具体的に、図４（Ａ）に、上面が空いた箱型の形状のワークＷＫを撮像して、撮像画像を取得する例を示す。図４（Ａ）に示すように、撮像部ＣＭの撮像範囲の中心位置Ｐ１にワークＷＫを配置して撮像した場合には、図４（Ｂ）に示す撮像画像ＰＩＭ１が取得される。一方で、撮像部ＣＭの撮像範囲の外縁部の位置Ｐ２にワークＷＫを配置して撮像した場合には、図４（Ｃ）に示す撮像画像ＰＩＭ２が取得される。そして、図４（Ｂ）の撮像画像ＰＩＭ１には、ワークＷＫの底面と縁だけが映っているが、図４（Ｃ）の撮像画像ＰＩＭ２には、ワークＷＫの底面と縁だけでなく、ワークＷＫの側面も映っている。図４（Ｃ）の撮像画像ＰＩＭ２は、パースがきついとも言える。これは、ワークＷＫに高さ（厚み）がある場合には、撮像範囲におけるワークＷＫの配置位置によって、ワークＷＫの映り方が異なるためである。なお、説明を分かりやすくするため、撮像画像ＰＩＭ２は歪みを強調して図示している。
【００５８】
一方で、参照モデルとは、例えば検出対象物（ワーク）を表すＣＡＤ（Computer Aided Design）モデルデータや参照画像のことをいう。
【００５９】
ここで、ＣＡＤモデルデータとは、ＣＡＤにおいて設計される設計対象を表すデータのことをいう。また、ＣＡＤとは、コンピューター支援設計とも呼ばれ、コンピューターを用いて設計することを指す。
【００６０】
そして、参照画像とは、例えばＣＡＤモデルデータから生成される画像であって、撮像画像に映る検出対象物の位置姿勢を特定するために用いられる画像のことをいう。また、参照画像は、撮像画像と同様に、撮像部によって検出対象物（ワーク）を撮像して得られる画像や、外部の記憶部に記憶された対象物が映る画像、ネットワークを介して取得される画像等であってもよい。
【００６１】
具体的に、図４（Ａ）と同様に、上面が空いた箱型の形状のワークＷＫを撮像して、参照モデル（参照画像）を取得する例を図５（Ａ）に示す。図５（Ａ）に示すように、撮像部ＣＭの撮像範囲の中心位置Ｐ１にワークＷＫを配置して撮像した場合には、図５（Ｂ）に示すように、ワークＷＫの底面と縁だけが見える参照モデル（参照画像）ＲＩＭ１が取得される。一方で、撮像部ＣＭの撮像範囲の外縁部（周辺部、端）の位置Ｐ２にワークＷＫを配置して撮像した場合には、図５（Ｃ）に示すように、ワークＷＫの底面と縁だけでなく、ワークＷＫの側面も見える参照モデル（参照画像）ＲＩＭ２が取得される。
【００６２】
そして、例えば図５（Ｂ）に示す参照モデルＲＩＭ１を用いて、撮像画像中のワークＷＫの位置姿勢を特定する場合を考える。この時、撮像画像が図４（Ｂ）のＰＩＭ１である場合には、撮像画像ＰＩＭ１に映るワークＷＫと参照モデルＲＩＭ１とが、図６（Ａ）に示すように十分にマッチングするため、この時の参照モデルの位置姿勢を、撮像画像ＰＩＭ１に映るワークＷＫの位置姿勢として特定することができる。なお、図６（Ａ）では、図示の都合上、ワークＷＫを表す線分と、参照モデルＲＩＭ１を表す点線を離して描画しているが、実際には一致しているものとする。
【００６３】
しかし、撮像画像が図４（Ｃ）のＰＩＭ２である場合には、図６（Ｂ）に示すように、撮像画像ＰＩＭ２に映るワークＷＫの斜線で示す範囲ＮＧＡＲが、参照モデルＲＩＭ１の範囲からはみ出しており、撮像画像ＰＩＭ２に映るワークＷＫと参照モデルＲＩＭ１とがマッチングしないと判定される。そのため、撮像画像ＰＩＭ２に映るワークＷＫの位置姿勢を特定することができない。
【００６４】
一方で、参照モデルとして図５（Ｃ）に示すＲＩＭ２を用いた場合には、撮像画像ＰＩＭ２に映るワークＷＫとはマッチングし、位置姿勢を特定することができるが、撮像画像ＰＩＭ１に映るワークＷＫとはマッチングせず、位置姿勢を特定することができない。
【００６５】
すなわち、ワークに厚みがある場合には、撮像画像又は参照モデルを生成する際のワークの配置位置によっては、撮像画像に映るワークと参照モデルとがマッチングせず、ワークの位置姿勢を特定できない場合が発生し得る。
【００６６】
そこで本実施形態の画像処理装置１００は、ワークの参照モデルの情報を記憶する参照モデル記憶部１１０と、ワークの撮像画像を取得する撮像画像取得部１３０と、参照モデルと撮像画像に映るワークとのマッチング処理を行って、ワークの位置姿勢の特定処理を行う位置姿勢特定部１５０と、を含む。そして、位置姿勢特定部１５０は、参照モデルのサンプリング点に設定されるマッチングエリアに基づいてマッチング処理を行う。さらに、本実施形態では、撮像画像の基準点を含む第１のエリアにおいて、参照モデルによりマッチング処理を行う際に、参照モデルのサンプリング点に設定されるマッチングエリアを、第１のマッチングエリアとし、撮像画像の第２のエリアにおいて参照モデルによりマッチング処理を行う際に、参照モデルのサンプリング点に設定されるマッチングエリアを、第２のマッチングエリアとし、基準点から、第２のマッチングエリアが設定されるサンプリング点へと向かう方向を第１の方向とした場合に、第１のマッチングエリアの第１の方向の長さよりも、第２のマッチングエリアの第１の方向の長さの方が長いものとする。
【００６７】
本実施形態では、撮像画像の第１のエリアにおいてマッチング処理を行う際には、第１のマッチングエリアに基づいてマッチング処理を行い、撮像画像の第２のエリアにおいてマッチング処理を行う際には、第２のマッチングエリアに基づいてマッチング処理を行う。
【００６８】
ここで、サンプリング点とは、参照モデルを表す代表点のことをいい、参照モデルの内部に設定（抽出）される点である。例えば、後述する図７（Ｂ）の参照モデルＲＩＭ１には、サンプリング点としてＳＰ１１〜ＳＰｍｎ（ｍ、ｎは１以上の正の整数）が設定されている。
【００６９】
次に、マッチングエリアとは、参照モデルの各サンプリング点に設定される所与の面積範囲であって、マッチング処理において撮像画像に映る検出対象物（ワーク）との一致判定に用いられる範囲のことをいう。
【００７０】
また、第１のマッチングエリアとは、前述したように、撮像画像の基準点を含む第１のエリアにおいて、参照モデルによりマッチング処理を行う際に、参照モデルのサンプリング点に設定されるマッチングエリアのことをいう。
【００７１】
そして、第１のエリアとは、撮像画像において、基準点を含む所与の面積範囲のことをいう。なお、基準点の具体例については、後述する。
【００７２】
ここで、第１のマッチングエリアを用いてマッチング処理を行う場合の具体例を、図７（Ａ）及び図７（Ｂ）を用いて説明する。
【００７３】
まず、図７（Ａ）に示す撮像画像ＰＩＭ１には、基準点ＲＰを含む第１のエリアＡＲ１内にワークＷＫが配置された様子が映されている。このワークＷＫは、図４（Ａ）に示したワークＷＫと同一のものである。そして、参照モデルＲＩＭ１とマッチング処理を行うが、この時、図７（Ｂ）に詳細に示すように、参照モデルＲＩＭ１の各サンプリング点に対して第１のマッチングエリアが設定される。より詳しく説明すると、図７（Ｂ）に示す参照モデルＲＩＭ１には、サンプリング点ＳＰ１１〜サンプリング点ＳＰｍｎ（ｍ、ｎは１以上の正の整数）が設定されており、各サンプリング点の周囲に第１のマッチングエリアＭＡＲ１１〜第１のマッチングエリアＭＡＲｍｎがそれぞれ設定される。図７（Ａ）及び図７（Ｂ）の例では、第１のマッチングエリアＭＡＲ１１〜第１のマッチングエリアＭＡＲｍｎを繋げると、参照モデルＲＩＭ１とほぼ一致する範囲となる。そして、後述する方法により、第１のマッチングエリアを用いて、参照モデルＲＩＭ１と撮像画像ＰＩＭ１に映るワークＷＫとのマッチング処理を行う。
【００７４】
次に、第２のマッチングエリアとは、前述したように、撮像画像の第２のエリアにおいて参照モデルによりマッチング処理を行う際に、参照モデルのサンプリング点に設定されるマッチングエリアのことをいう。
【００７５】
また、第２のエリアとは、撮像画像において、第１のエリアとは異なる所与の面積範囲のことをいう。本例では、第２のエリアは、撮像画像において、基準点を含まない所与の範囲のことをいう。また、第２のエリアは、通常、第１のエリアと重複しない範囲であるが、第１のエリアと重複していてもよい。その場合には、参照モデルが第１のエリアと第２のエリアにまたがっている際に、どちらのエリアに属していると判定するかを予め決めておく必要がある。
【００７６】
ここで、第２のマッチングエリアを用いてマッチング処理を行う場合の具体例を、図８（Ａ）及び図８（Ｂ）を用いて説明する。
【００７７】
まず、図８（Ａ）の撮像画像ＰＩＭ２では、第２のエリアＡＲ２が、撮像画像ＰＩＭ２の外縁部（周辺部）に設定されている。なお、第２のエリアＡＲ２は基準点ＲＰを含まない。そして、撮像画像ＰＩＭ２には、第２のエリアＡＲ２内にワークＷＫが配置された様子が映されている。このワークＷＫは、図７（Ａ）と同様に、図４（Ａ）に示したワークＷＫと同一のものである。そして、参照モデルＲＩＭ１とマッチング処理を行うが、この時、図８（Ｂ）に詳細に示すように、参照モデルＲＩＭ１の各サンプリング点に対して第２のマッチングエリアが設定される。より詳しく説明すると、図８（Ｂ）に示す参照モデルＲＩＭ１には、サンプリング点ＳＰ１１〜サンプリング点ＳＰｍｎ（ｍ、ｎは１以上の正の整数）が設定されており、各サンプリング点の周囲に第２のマッチングエリアＭＡＲ１１〜第２のマッチングエリアＭＡＲｍｎがそれぞれ設定される。詳しくは後述するが、この第２のマッチングエリアは、図７（Ｂ）において説明した第１のマッチングエリアとは形状が異なり、第２のマッチングエリアＭＡＲ１１〜第２のマッチングエリアＭＡＲｍｎを繋げると、参照モデルＲＩＭ１の輪郭をはみ出して、撮像画像ＰＩＭ２においてワークＷＫが映る範囲に近い範囲となる。そして、後述する方法により、第２のマッチングエリアを用いて、参照モデルＲＩＭ１と撮像画像ＰＩＭ２に映るワークＷＫとのマッチング処理を行う。
【００７８】
さて、前述した図８（Ａ）に示すように、撮像画像に映るワークＷＫの像は、ワークＷＫの配置位置が基準点ＲＰから離れるに従い、基準点ＲＰでのワークＷＫの像（図７（Ａ））と比べて、基準点ＲＰからワークＷＫの配置位置へと向かう方向への歪みが大きくなる。つまり、図８（Ａ）では、図の右上方向にワークが映る範囲が広がっている。
【００７９】
したがって、参照モデルのサンプリング点に設定するマッチングエリアも、第１の方向へと広げた方がよい。
【００８０】
そのため本実施形態では、前述したように、第２のマッチングエリアは、第１のマッチングエリアと形状が異なり、さらに具体的には、第２のマッチングエリアの第１の方向の長さ（後述する図９（Ｂ）のＬＡ２）が、第１のマッチングエリアの第１の方向の長さ（後述する図９（Ａ）のＬＡ１）よりも長い。
【００８１】
ここで、第１の方向とは、前述したように、基準点から、第２のマッチングエリアが設定されるサンプリング点へと向かう方向のことをいう。
【００８２】
図９（Ａ）及び図９（Ｂ）を用いて具体例を説明する。図９（Ａ）は、第１のマッチングエリアＭＡＲ１の説明図であり、図９（Ｂ）は、第２のマッチングエリアＭＡＲ２の説明図である。ここでは、説明の簡略化のため、参照モデルのサンプリング点を一つ抜き出して図示して説明する。
【００８３】
図９（Ａ）及び図９（Ｂ）において、第１の方向は、基準点ＲＰからサンプリング点ＳＰへの方向ＤＲ１のことを指す。そして、第１のマッチングエリアＭＡＲ１の第１の方向ＤＲ１の長さは、図９（Ａ）のＬＡ１のことを指し、第２のマッチングエリアＭＡＲ２の第２の方向ＤＲ２の長さは、図９（Ｂ）のＬＡ２のことを指す。本実施形態では、この時に、ＬＡ２＞ＬＡ１の関係が成り立つ。
【００８４】
このように、ワークが撮像画像の外縁部（周辺部）に映っている場合には、第１のマッチングエリアよりも広い第２のマッチングエリアを用いて、参照モデルと撮像画像に映るワークとのマッチング処理を行う。
【００８５】
そのため、ワークに厚みがあり、ワークが撮像画像の外縁部（周辺部）に映っている場合でも、ワークの位置姿勢を特定することができる。すなわち、撮像画像においてワークが映る位置に関わらず、ワークの位置姿勢を特定することが可能となる。
【００８６】
また、ワークの配置位置が基準点から離れている場合であっても、基準点からワークの配置位置へと向かう方向と直交する方向へのワークの像の歪みは、比較的小さい。
【００８７】
そのため、図９（Ｂ）に示すように、第２のマッチングエリアの第１の方向に直交する第２の方向の長さ（ＬＢ２）よりも、第２のマッチングエリアの第１の方向の長さの方（ＬＡ２）が長くてもよい。
【００８８】
これにより、撮像画像に映るワークがより歪む方向に第２のマッチングエリアを広げること等が可能になる。
【００８９】
さらに、参照モデルのサンプリング点に設定するマッチングエリアは、基準点からの距離に応じて、第１の方向へと広げた方がよい。
【００９０】
すなわち、基準点と第２のマッチングエリアが設定されるサンプリング点の間の距離が大きくなるほど、第２のマッチングエリアの第１の方向の長さが長くなってもよい。
【００９１】
具体例を図１０に示す。図１０は、撮像画像の中心位置を基準点ＲＰとした場合に、点線で示す第２のマッチングエリアでの第１の方向の長さが、基準点ＲＰとサンプリング点との距離に応じて長くなることを示している。例えば、サンプリング点ＳＰ１に設定される第２のマッチングエリアＭＡＲ２での第１の方向ＤＲ１２の長さはＬＡ２１であり、サンプリング点ＳＰ２に設定される第２のマッチングエリアＭＡＲ３での第１の方向ＤＲ２３の長さはＬＡ２２であるが、この時ＬＡ２２＞ＬＡ２１である。また、この際に基準点ＲＰと同じ位置のサンプリング点に設定される第１のマッチングエリアＭＡＲ１の第１の方向の長さはＬＡ１であり、ＬＡ２２＞ＬＡ２１＞ＬＡ１である。
【００９２】
これにより、第２のマッチングエリアを、基準点からの距離に応じて、第１の方向へと広げること等が可能になる。すなわち、画像の歪みの大きさに合わせて、第２のマッチングエリアを広げること等が可能になる。
【００９３】
また、参照モデルは、撮像範囲の中心にワークを配置して撮像することにより得られるモデルであってもよい。この時、基準点は、撮像画像の中心位置であってもよい。
【００９４】
ここで、撮像範囲とは、撮像部により撮像される実空間の領域のことをいう。
【００９５】
具体例としては、前述した図５（Ｂ）の参照モデルＲＩＭ１を取得する場合がこれに相当する。この場合には、基準点は、撮像画像において位置Ｐ１と対応する位置となる。
【００９６】
これにより、真上から見た時のワークを表す参照モデルを取得すること等が可能になる。
【００９７】
しかし、ワークの位置姿勢を特定する際に用いる撮像画像によっては、ワークを真上から見た時の参照モデルではなく、ワークを斜めから見た時の参照モデルを用いた方がよい場合もある。
【００９８】
すなわち、参照モデルは、ワークを撮像することにより得られるモデルであってもよい。そしてこの時、基準点は、撮像画像において、参照モデルの撮像時におけるワークの配置位置に対応する位置であってもよい。
【００９９】
ここで、配置位置とは、例えば、ワークの位置を表す代表位置、ワークの重心位置及び中心位置などである。
【０１００】
具体例としては、前述した図５（Ｃ）の参照モデルＲＩＭ２を取得する場合がこれに相当する。この場合には、参照モデルＲＩＭ２の撮像時におけるワークＷＫの配置位置が、図５（Ａ）に示す位置Ｐ２であるため、基準点は、撮像画像において位置Ｐ２に対応する位置となる。
【０１０１】
これにより、所与の基準点における参照モデルを取得すること等が可能になる。
【０１０２】
また、位置姿勢特定部１５０は、撮像画像に対する参照モデルの並進移動及び回転移動の少なくとも一方を行い、移動後の参照モデルのサンプリング点と基準点の間の距離情報に基づいて、第２のマッチングエリアを設定してもよい。
【０１０３】
具体的には、図１１に示すように、撮像画像ＰＩＭにおいて、参照モデルＲＩＭを並進移動及び回転移動の少なくとも一方を行う。並進移動とは、ＤＲｘ方向又はＤＲｙ方向へ参照モデルＲＩＭをスライド移動させることをいう。また、回転移動とは、θ方向へ参照モデルＲＩＭを回転させることをいう。さらに、この際に参照モデルＲＩＭのスケール変換を行っても良い。そして、移動後の参照モデルのサンプリング点に対して、第２のマッチングエリアを設定する。
【０１０４】
これにより、参照モデルを用いて、撮像画像に映るワークをスキャンすること等が可能になる。
【０１０５】
また、位置姿勢特定部１５０は、撮像画像においてワークの特徴点の抽出処理を行い、参照モデルのマッチングエリア内における、撮像画像の特徴点の数に基づいて、マッチング処理を行ってもよい。
【０１０６】
具体的には、参照モデルの各サンプリング点に設定されるマッチングエリア内において、撮像画像のワークの特徴点をカウントし、カウントした特徴点の数が、所与の数よりも大きい場合には、そのサンプリング点は撮像画像に映るワークとマッチングしていると判定する。一方で、カウントした特徴点の数が、所与の数以下である場合には、そのサンプリング点は撮像画像に映るワークとマッチングしていないと判定する。そして、全てのサンプリング点について、このような判定処理を行って、マッチングしていると判定したサンプリング点の数が所与の数よりも大きい場合には、参照モデルが撮像画像に映るワークと一致していると判定する。一方で、マッチングしていないと判定したサンプリング点の数が所与の数以下である場合には、参照モデルが撮像画像に映るワークと一致していないと判定する。
【０１０７】
これにより、マッチングエリアを用いない場合と比べて、各サンプリング点においてより柔軟な一致判定を行うこと等が可能になる。その結果、撮像画像の外縁部でもワークの位置姿勢を検出すること等が可能になる。
【０１０８】
また他にも、位置姿勢特定部１５０は、撮像画像においてワークの輪郭線の抽出処理を行い、参照モデルのマッチングエリア内に存在する輪郭線と、参照モデルの各サンプリング点との距離情報に基づいて、マッチング処理を行ってもよい。
【０１０９】
ここで、輪郭線の抽出処理とは、撮像画像上に映るワークなどの物体の輪郭線を抽出し、輪郭情報を特定する処理のことをいう。例えば、画像の輝度勾配の大きさが所与の値以上の領域を黒く塗りつぶした二値画像を生成し、この二値画像に対して細線化処理を行うことにより、輪郭線を抽出する。
【０１１０】
また、輪郭情報とは、物体の輪郭を表す情報である。輪郭情報は、例えば、輪郭の始点と終点の画像上での座標位置や、ベクトルとその大きさ等であるが、これに限定されない。
【０１１１】
これにより、マッチングエリア内のワークの輪郭線とサンプリング点との距離に基づいて、撮像画像に映るワークと参照モデルの一致判定を行うこと等が可能になる。
【０１１２】
４．処理の詳細
以下では、本実施形態の処理の流れを、図１２（Ａ）〜図１２（Ｅ）及び図１３のフローチャートを用いて説明する。まず、図１２（Ａ）に撮像画像ＰＩＭを、図１２（Ｂ）に参照モデルＲＩＭを示す。
【０１１３】
初めに、図１２（Ｂ）の参照モデルＲＩＭの輪郭線の抽出処理を行い（Ｓ１０１）、参照モデルの輪郭を表すサンプリング点を抽出する（Ｓ１０２）。
【０１１４】
次に、図１２（Ａ）の撮像画像ＰＩＭに映るワークの輪郭線の抽出処理を行う（Ｓ１０３）。
【０１１５】
そして、最初の移動回転量を設定する（Ｓ１０４）。ここで、移動回転量とは、参照モデルの並進移動量、回転移動量及びスケール変換量のうち少なくとも一つを表す量である。本例では、参照モデルの位置、姿勢及びスケールのセットをあらかじめ所定の数だけ定めておき、その中から変換後の位置、姿勢及びスケールのセットを一つ選択し、選択した位置、姿勢及びスケールを実現する移動回転量を選択する。
【０１１６】
さらに、図１１を用いて説明したように、設定した移動回転量に基づいて、撮像画像ＰＩＭ内で参照モデルＲＩＭに対して、並進移動、回転移動及びスケール変換の少なくともいずれか一つを行う（Ｓ１０５）。そして移動後に、参照モデルＲＩＭの各サンプリング点に対して、マッチングエリアをそれぞれ設定する（Ｓ１０６）。この際には、前述したように、撮像画像の第１のエリアでマッチング処理を行う場合には、第１のマッチングエリアを設定し、撮像画像の第２のエリアでマッチング処理を行う場合には、第２のマッチングエリアを設定する。
【０１１７】
次に、図１２（Ｃ）に示すように、各マッチングエリア内で、各サンプリング点から、撮像画像に映るワークの輪郭線ＯＬまでの最短距離（サブピクセル距離）を求める。なお、図１２（Ｃ）の下図は上図の一部分の拡大図である。例えば、マッチングエリアＭＡＲ１内におけるサンプリング点ＳＰ１から輪郭線ＯＬまでの最短距離はＤ１であり、マッチングエリアＭＡＲ２内におけるサンプリング点ＳＰ２から輪郭線ＯＬまでの最短距離はＤ２である。他のサンプリング点についても同様に図示している。そして、求めた距離Ｄｉを下式（１）により要素スコアＥＳｉに変換する。
【０１１８】
【数１】
2015036882.tif 000003
ここで、式（１）において、ｉはサンプリング点の番号を表す正の整数であり、Ｄｉは、サンプリング点ｉとワークの輪郭線との距離を表す。また、関数ｆは、図１２（Ｄ）のグラフに示すように、サンプリング点と輪郭線との距離が近いほど、値が大きくなる関数である。式（１）では、撮像画像に映るワークの輪郭線と参照モデルが近いほど、要素スコアＥＳｉの値が大きくなり、位置が完全に一致している場合には、ＥＳｉ＝１となる。逆に、輪郭線がマッチングエリア外に位置する場合には、ＥＳｉ＝０となる。
【０１１９】
そして、全てのサンプリング点について要素スコアＥＳｉを求め、下式（２）により要素スコアＥＳｉの平均値Ｓを、参照モデルと撮像画像に映るワークとのマッチングスコアとして求める（Ｓ１０７）。なお、式（２）において、ＮＭはサンプリング点の総数である。
【０１２０】
【数２】
2015036882.tif 000004
そして、このようにして求められるマッチングスコアＳが最大になるように、参照モデルを移動させて、撮像画像に映るワークの位置姿勢を特定する。
【０１２１】
具体的には、マッチングスコアＳとマッチングスコアＳの閾値とを比較し（Ｓ１０８）、マッチングスコアＳがマッチングスコアＳの閾値以上であると判定した場合には、マッチングスコアＳがさらに大きくなるように、参照モデルの位置や姿勢を微調整し（Ｓ１０９）、微調整後の参照モデルの位置姿勢をワークの位置姿勢として特定して（Ｓ１１０）、処理を終了する。
【０１２２】
一方で、マッチングスコアＳがマッチングスコアＳの閾値よりも小さいと判定した場合には、次の移動回転量があるか否かを判定し（Ｓ１１１）、次の移動回転量がない場合には処理を終了する。この場合には、撮像画像中に参照モデルと一致するワークが映っていないと判定するため、撮像画像に映るワークの位置姿勢を特定することができない。
【０１２３】
また、次の移動回転量がある場合には、次の移動回転量を設定し（Ｓ１１２）、ステップＳ１０５から処理を繰り返す。以上が本実施形態の処理の流れである。
【０１２４】
なお、本実施形態の画像処理装置、ロボット制御システム及びロボット等は、その処理の一部または大部分をプログラムにより実現してもよい。この場合には、ＣＰＵ等のプロセッサーがプログラムを実行することで、本実施形態の画像処理装置、ロボット制御システム及びロボット等が実現される。具体的には、情報記憶媒体に記憶されたプログラムが読み出され、読み出されたプログラムをＣＰＵ等のプロセッサーが実行する。ここで、情報記憶媒体（コンピューターにより読み取り可能な媒体）は、プログラムやデータなどを格納するものであり、その機能は、光ディスク（ＤＶＤ、ＣＤ等）、ＨＤＤ（ハードディスクドライブ）、或いはメモリー（カード型メモリー、ＲＯＭ等）などにより実現できる。そして、ＣＰＵ等のプロセッサーは、情報記憶媒体に格納されるプログラム（データ）に基づいて本実施形態の種々の処理を行う。即ち、情報記憶媒体には、本実施形態の各部としてコンピューター（操作部、処理部、記憶部、出力部を備える装置）を機能させるためのプログラム（各部の処理をコンピューターに実行させるためのプログラム）が記憶される。
【０１２５】
以上のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。また、画像処理装置、ロボット制御システム及びロボット等の構成、動作も本実施形態で説明したものに限定されず、種々の変形実施が可能である。
【符号の説明】
【０１２６】
１００  画像処理装置、１１０  参照モデル記憶部、１３０  撮像画像取得部、
１５０  位置姿勢特定部、２００  ロボット制御システム、２１０  ロボット制御部、
３００  ロボット
【図１】
2015036882.tif 000005
【図２】
2015036882.tif 000006
【図３】
2015036882.tif 000007
【図４】
2015036882.tif 000008
【図５】
2015036882.tif 000009
【図６】
2015036882.tif 000010
【図７】
2015036882.tif 000011
【図８】
2015036882.tif 000012
【図９】
2015036882.tif 000013
【図１０】
2015036882.tif 000014
【図１１】
2015036882.tif 000015
【図１２】
2015036882.tif 000016
【図１３】
2015036882.tif 000017