(57)【要約】【課題】所定方向の３次元情報を取得可能な計測装置において、近傍と遠方の３次元情報を同時に取得可能にし、さらに計測可能な領域を大きく設定することを可能にする。【解決手段】所定方向の３次元情報を計測する計測装置であって、計測装置から第１距離の領域を撮像して第１撮像画像を出力する第１撮像部と、計測装置から、第１距離とは異なる第２距離の領域を撮像して第２撮像画像を出力する第２撮像部と、第１距離の領域および第２距離の領域に平行光を光走査してパターン光を投影可能な投影部と、第１撮像画像および第２撮像画像の少なくとも一方の画像に基づき、所定方向の３次元情報を演算する演算処理部と、第１撮像部と第２撮像部と投影部とを制御する制御部と、を備える。制御部は、第１撮像部と第２撮像部とを同期して撮像制御する。【選択図】図９
2018146521.tif 000002
【特許請求の範囲】
【請求項１】
所定方向の３次元情報を計測する計測装置であって、
前記計測装置から第１距離の領域を撮像して第１撮像画像を出力する第１撮像部と、
前記計測装置から、前記第１距離とは異なる第２距離の領域を撮像して第２撮像画像を出力する第２撮像部と、
前記第１距離の領域および前記第２距離の領域に平行光を光走査してパターン光を投影可能な投影部と、
前記第１撮像画像および前記第２撮像画像の少なくとも一方の画像に基づき、前記所定方向の３次元情報を演算する演算処理部と、
前記第１撮像部と前記第２撮像部と前記投影部とを制御する制御部と、
を備え、
前記制御部は、前記第１撮像部と前記第２撮像部とを同期して撮像制御可能な
計測装置。
【請求項２】
前記制御部は、
前記第１撮像部および前記第２撮像部の少なくとも一方に撮像命令信号を出力し、前記第１撮像部および前記第２撮像部のうち一方の撮像部の１フレームの露光時間以内に、他方の撮像部に撮像命令信号を出力する
請求項１に記載の計測装置。
【請求項３】
前記制御部は、
前記３次元情報に基づいて、前記第１撮像部と前記第２撮像部とを同期して撮像制御する同期撮像と、前記第１撮像部または前記第２撮像部の何れか一方による単独撮像と、を切り替える
請求項１または請求項２に記載の計測装置。
【請求項４】
前記演算処理部は、
前記同期撮像された前記第１撮像画像と前記第２撮像画像とから３次元情報を演算する第１演算処理と、前記第１撮像画像または前記第２撮像画像のうち前記単独撮像された撮像画像から３次元情報を演算する第２演算処理と、を切り換える
請求項３に記載の計測装置。
【請求項５】
前記第１演算処理は、前記同期撮像された１枚の前記第１撮像画像および１枚の前記第２撮像画像から３次元情報を演算する演算処理であり、
前記第２演算処理は、複数の前記第１撮像画像および複数の前記第２撮像画像から３次元情報を演算する演算処理である
請求項４に記載の計測装置。
【請求項６】
前記第２演算処理は、使用する演算処理を優先度の異なる複数の演算処理から選択可能であり、
前記演算処理部は、
予め設定された前記優先度に基づいて演算を開始し、使用した演算処理では３次元情報を得られなかった場合に、演算方法を次に前記優先度が高い演算処理に切り換える
請求項４または請求項５に記載の計測装置。
【請求項７】
前記第１演算処理は、ランダムドット法による演算処理であり、
前記第２演算処理は、ランダムドット法、光切断法および位相シフト法のうち何れか１つを前記第１演算処理で取得した３次元情報に基づいて選択する演算処理である
請求項４または請求項５に記載の計測装置。 
【請求項８】
前記制御部は、前記演算処理部の演算した３次元情報に基づき、投影するパターン光を変更する
請求項１乃至請求項７の何れか１項に記載の計測装置。
【請求項９】
請求項１乃至請求項８の何れか１項に記載の計測装置と、
ロボットアームと、
前記計測装置により取得された前記３次元座標に基づき前記ロボットアームの動作を制御する動作制御部と
を備えるロボット。
【請求項１０】
所定方向の３次元情報を計測する計測装置に用いられる計測方法であって、
前記第１距離の領域および前記第２距離の領域に平行光を光走査してパターン光を投影する投影ステップと、
前記計測装置から第１距離の領域を撮像して第１撮像画像を出力する第１撮像ステップと、
前記計測装置から、前記第１距離とは異なる第２距離の領域を撮像して第２撮像画像を出力する第２撮像ステップと、
前記第１撮像画像および前記第２撮像画像の少なくとも一方の画像に基づき、前記所定方向の３次元情報を演算する演算処理ステップと、
を備え、
前記第２撮像ステップは、前記第１撮像ステップと略同時に行われる
計測方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計測装置、計測方法およびロボットに関する。
【背景技術】
【０００２】
バラ積み部品のピッキングや自動組み立てなどの作業を、ロボットを用いて実施する際に、ロボットアームに３次元情報を取得可能な計測装置を組み合わせて用いることで、制御性能の向上が可能である。
【０００３】
このような３次元情報を取得する計測装置として、投影部が計測対象までの距離に応じたパターン光を切り替えて光投射しながら撮像部で計測対象を撮像し、近傍と遠方において高精度に３次元情報を取得する技術が知られている（例えば特許文献１）。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来技術は、ロボットアームと計測装置が別体であることを前提としている。ロボットアームに計測装置を付随させる場合、計測装置も同時に動いてしまうために近傍と遠方を同時に撮像する必要がある。しかしながら、従来技術では、近傍と遠方を同時に撮像することができなかった。また、計測が可能な領域は、撮像部の焦点距離調節機能または被写界深度により限度が決まっているため、計測可能領域を大きくすることが難しかった。
【０００５】
本発明は、上記に鑑みてなされたものであって、所定方向の３次元情報を取得可能な計測装置において、近傍と遠方の３次元情報を同時に取得可能にし、さらに計測可能な領域を大きく設定することを可能にすることを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、本発明は、所定方向の３次元情報を計測する計測装置であって、計測装置から第１距離の領域を撮像して第１撮像画像を出力する第１撮像部と、計測装置から、第１距離とは異なる第２距離の領域を撮像して第２撮像画像を出力する第２撮像部と、第１距離の領域および第２距離の領域に平行光を光走査してパターン光を投影可能な投影部と、第１撮像画像および第２撮像画像の少なくとも一方の画像に基づき、所定方向の３次元情報を演算する演算処理部と、第１撮像部と第２撮像部と投影部とを制御する制御部と、を備え、制御部は、第１撮像部と第２撮像部とを同期して撮像制御する。
【発明の効果】
【０００７】
本発明によれば、所定方向の３次元情報を取得可能な計測装置において、近傍と遠方の３次元情報を同時に取得可能にし、さらに計測可能な領域を大きく設定することを可能にするという効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】図１は、第１の実施形態に係る計測装置の一例の構成を示す図である。
【図２】図２は、第１の実施形態に適用可能な投影部の一例の構成を示す図である。
【図３】図３は、第１の実施形態に適用可能な偏向素子の動作を説明するための図である。
【図４】図４は、第１の実施形態に係る計測装置の機能を説明するための一例の機能ブロック図である。
【図５】図５は、第１の実施形態に適用可能な計測装置における処理・制御部の一例のハードウェア構成を示すブロック図である。
【図６】図６は、第１の実施形態に適用可能な位相シフト法で用いる投影パターンの例を示す図である。
【図７】図７は、第１の実施形態に適用可能な光切断法で用いる投影パターンを説明するための図である。
【図８】図８は、第１の実施形態に適用可能なランダムドット法で用いる投影パターンの例を示す図である。
【図９】図９は、第１の実施形態に係る計測処理を示す一例のフローチャートである。
【図１０】図１０は、第２の実施形態に係るロボットアームを概略的に示す図である。
【図１１】図１１は、第２の実施形態に係るロボットアームの一例の構成を概略的に示すブロック図である。
【図１２】図１２は、第２の実施形態に係るロボットアームの制御の例を示すフローチャートである。
【図１３】図１３は、第２の実施形態の変形例に係るロボットアームの動作を説明するための図である。
【発明を実施するための形態】
【０００９】
以下に添付図面を参照して、計測装置、計測方法およびロボットの実施形態を詳細に説明する。
【００１０】
（第１の実施形態）
図１は、第１の実施形態に係る、３次元形状の計測を行う計測装置の一例の構成を示す。図１において、計測装置１は、処理・制御部１０と、投影・撮像部２０とを含む。処理・制御部１０は、演算処理部１１と、制御部１２とを含む。投影・撮像部２０は、第１の撮像部であるカメラ２１ａと、第２の撮像部であるカメラ２１ｂと、投影部３０とを含む。
【００１１】
投影部３０は、レーザ光を射出する光源と、光源から射出されたレーザ光を所定の方向に導出する光学系とを含む。投影部３０は、投影制御部１２の制御に従いレーザ光を２軸の各方向に偏向させて光走査を行い、計測対象に対して２次元のパターンを投影する。なお、投影部３０が含む光源は、レーザ光を射出する光源に限定されない。すなわち、平行光を射出可能な光源であれば、投影部３０の光源として適用可能である。
【００１２】
第１撮像部であるカメラ２１ａは、第１の焦点距離を持つレンズ２２ａと、撮像素子２３ａとを含み、入射された光がレンズ２２ａを介して撮像素子２３ａに照射される。カメラ２１ａは、撮像素子２３ａが照射された光を変換した電気信号を画像信号に変換して出力する。カメラ２１ｂも同様に、第１の焦点距離より長い第２の焦点距離を持つレンズ２２ｂと、撮像素子２３ｂとを含み、入射された光を画像信号に変換して出力する。撮像素子２３ａおよび２３ｂは、ＣＣＤ(Charge  Coupled  Device)やＣＭＯＳ(Complementary  Metal  Oxide  Semiconductor)イメージセンサといった一般的な撮像素子を用いることができる。また、カメラ２１ａおよび２１ｂは、焦点距離（レンズ２２ａおよび２２ｂ）を除き、共通の構成とすることができる。
【００１３】
第２撮像部であるカメラ２１ｂは、投影部３０により投影される２次元パターンの中心である投影中心３００を中心とした第１の計測領域４０を撮像するように、位置および角度が固定される。これに対して、カメラ２１ａは、投影中心３００を中心とし、投影部３０から見た場合に第１の計測領域４０よりも遠距離にある第２の計測領域４１を撮像するように、位置および角度が固定される。換言すれば、第２の計測領域４１は、投影部３０から第１の計測領域４０を介して２次元のパターンが投影される領域である。
【００１４】
カメラ２１ａおよび２１ｂは、例えば制御部１２の制御に従い撮像を行う。カメラ２１ａから出力された画像信号（第１撮像画像）、および、カメラ２１ｂから出力された画像信号（第２撮像画像）は、それぞれ演算処理部１１に供給される。演算処理部１１は、供給された画像信号に基づき３次元座標の算出を行い、３次元形状を取得する。３次元座標の算出については後述する。
【００１５】
演算処理部１１は、算出された３次元形状を示す３次元形状情報を計測装置１の外部に出力すると共に、制御部１２に供給する。
【００１６】
制御部１２は、演算処理部１１から供給された信号（例えば、３次元形状情報）に応じて、投影部３０が投影するパターン光（例えば、２次元パターン光）を切り替えることができる。また、制御部１２は、カメラ２１ａとカメラ２１ｂとを同期させて撮像制御を行う。すなわち、カメラ２１ａとカメラ２１ｂとが略同時に撮像可能になるように制御する。略同時とは、例えば、カメラの１フレーム分の露光時間以内である。
【００１７】
このように、計測装置１は、カメラ２１ａおよび２１ｂそれぞれについて、画像信号に基づき、３次元計測を実行することが可能な構成となっている。
【００１８】
図２は、第１の実施形態に適用可能な投影部３０の一例の構成を示す。図２において、投影部３０は、レーザ光３３を射出する、例えばレーザダイオードによる光源３１と、照射された光を偏向させて反射させる偏向素子３２とを含む。光源３１から出射されたレーザ光３３は、例えばレンズ３４およびアパーチャ３５を介して固定ミラー３６に照射される。レーザ光３３が固定ミラー３６に反射された反射光は、偏向素子３２の偏向中心に照射される。
【００１９】
偏向素子３２は、照射されたレーザ光３３を２軸の方向（図中に矢印Ｍで示す）に偏向させて２次元の投影パターン６０を形成する。この投影パターン６０は、例えば対象５０を含む領域に照射され投影される。
【００２０】
偏向素子３２について、より具体的に説明する。例えば、偏向素子３２は、図３に示すように、照射されたレーザ光３３をライン方向（Ｘ軸方向）に偏向させ、さらに、Ｙ軸方向に、すなわちライン順次に偏向させる。このような平行光による光走査をラスタスキャン方式とよぶ。これにより、２次元面上の一定の領域がレーザ光３３により走査され、投影パターン６０が形成される。このとき、例えば光源３１の点灯および消灯（オン／オフ）を制御することで、所望の投影パターン６０を対象に投影させることができる。
【００２１】
偏向素子３２としては、例えばＭＥＭＳ(Micro  Electro  Mechanical  Systems)光スキャナを用いることができる。ＭＥＭＳ光スキャナは、表面をミラー状態とした可動板と、可動板を２軸方向に傾斜可能な梁と、梁を支持する支持部とを含む構造をＭＥＭＳ技術により形成する。ＭＥＭＳ光スキャナは、可動板を電磁駆動や静電駆動により駆動することで、可動板に照射された光を２軸の各方向に偏向させて反射させ射出することができる。偏向素子３２を、ＭＥＭＳ技術を用いて形成することで、投影部３０を小型化することが可能となり、例えば当該計測装置１をロボットアームなどに搭載して用いる場合に、ロボットアームの可搬重量に対する制限を抑制することができる。
【００２２】
投影部３０から射出されたレーザ光３３は、レーザ光３３の直進性により第１の計測領域４０および第２の計測領域４１それぞれにおいて十分な解像度が得られる。したがって、このようにレーザ光３３を用いて走査を実施する投影部３０は、カメラ２１ａおよび２１ｂにおける焦点の調整が不要となる。したがって、平行光を光走査してパターン光を投影することにより、焦点の調整無しに、近傍と遠方に同時に適したパターン光を投影することができる。
【００２３】
図４は、第１の実施形態に係る計測装置１の機能を説明するための一例の機能ブロック図である。なお、図４において、上述した図１および図２と共通する部分には同一の符号を付して、詳細な説明を省略する。
【００２４】
演算処理部１１は、カメラ２１ａおよび２１ｂから出力された画像信号を解析する。演算処理部１１は、画像信号の解析結果と、各カメラ２１ａおよび２１ｂのキャリブレーション情報とを用いた演算処理により、３次元情報の復元処理を行い、これにより対象の３次元計測を実行する。演算処理部１１は、復元された３次元情報を投影制御部１２に供給する。
【００２５】
制御部１２は、投影制御部１２０と、パターン記憶部１２１と、光源駆動部１２２と、偏向素子駆動部１２３と、撮像制御部１２４とを含む。偏向素子駆動部１２３は、投影制御部１２０の制御に従い偏向素子３２を駆動する。投影制御部１２０は、偏向素子３２の偏向中心に照射されたレーザ光３３が対象をライン順次で走査するように（図３参照）、偏向素子駆動部１２３を制御する。撮像制御部１２４は、カメラ２１ａおよびカメラ２１ｂの撮像タイミングや露光量を制御する。また、撮像制御部１２４は、カメラ２１ａとカメラ２１ｂとの同期撮像が可能となるようにカメラ２１ａとカメラ２１ｂとに撮像命令信号を略同時に出力する。
【００２６】
光源駆動部１２２は、投影制御部１２０の制御に従い光源３１の点灯および消灯を制御する。パターン記憶部１２１は、例えば、計測装置１が含む不揮発性の記憶媒体に予め記憶される、光源３１から出射され偏向素子３２により偏向されたレーザ光３３を対象に投影させる際の投影パターン６０を形成するためのパターン情報を、投影制御部１２０からの指示に従い読み出して、投影制御部１２０に渡す。投影制御部１２０は、パターン記憶部１２１から渡されたパターン情報に基づき光源駆動部１２２を制御する。
【００２７】
投影制御部１２０は、演算処理部１１から供給された、復元された３次元情報に基づき、パターン記憶部１２１に対してパターン情報の読み出しを指示する。投影制御部１２０は、パターン記憶部１２１により読み出されたパターン情報に従い光源駆動部１２２を制御する。また、投影制御部１２０は、読み出したパターン情報に応じて演算処理部１１に対して演算方法を指示する。
【００２８】
なお、図４において、演算処理部１１、投影制御部１２０および撮像制御部１２４は、ＣＰＵ(Central  Processing  Unit)上で動作する計測プログラムにより実現することができる。これに限らず、演算処理部１１、投影制御部１２０および撮像制御部１２４を、互いに協働して動作するハードウェア回路により構成してもよい。
【００２９】
図５は、第１の実施形態に適用可能な計測装置１における処理・制御部１０の一例のハードウェア構成を示す。図５において、処理・制御部１０は、ＣＰＵ１００と、ＲＯＭ(Read  Only  Memory)１０１と、ＲＡＭ(Random  Access  Memory)１０２と、ストレージ１０３と、制御Ｉ／Ｆ（インタフェース）１０４および１０５と、データＩ／Ｆ１０６と、通信Ｉ／Ｆ１０７とを含み、これら各部がバス１１０により互いに通信可能に接続される。
【００３０】
ストレージ１０３は、データを不揮発に記憶する記憶媒体であって、ハードディスクドライブやフラッシュメモリを適用できる。ストレージ１０３は、ＣＰＵ１００が動作するためのプログラムやデータが記憶される。また、ストレージ１０３は、複数のパターン情報が予め記憶される。パターン記憶部１２１は、投影制御部１２０に指定されたパターン情報を、ストレージ１０３から読み出す。なお、ＲＯＭ１０１を書き換え可能なＲＯＭとし、ストレージ１０３の機能をＲＯＭ１０１により実現してストレージ１０３を省略してもよい。
【００３１】
ＣＰＵ１００は、例えば、ＲＯＭ１０１やストレージ１０３に予め記憶されたプログラムに従い、ＲＡＭ１０２をワークメモリとして用い、この処理・制御部１０の全体の動作を制御する。制御Ｉ／Ｆ１０４および１０５は、それぞれ、光源３１および偏光素子３２を駆動するための駆動回路に対するインタフェースである。
【００３２】
データＩ／Ｆ１０６は、外部の機器との間でデータの送受信を行う。通信Ｉ／Ｆ１０７は、通信ネットワークに対する通信を制御する。この計測装置１の外部と投影制御部１２０との間で、データＩ／Ｆ１０６または通信Ｉ／Ｆ１０７を介して通信を行うことで、外部からこの計測装置１の動作を制御することができる。なお、計測装置１の使用環境などによっては、データＩ／Ｆ１０６および通信Ｉ／Ｆ１０７のうち何れか一方を省略することができる。
なお、第１の実施形態に係る計測装置１で実行される計測プログラムは、ストレージ１０３やＲＯＭ１０１などに予め記憶されて提供される。これに限らず、第１の実施形態に係る計測装置１で実行される計測プログラムは、インストール可能な形式または実行可能な形式のファイルでＣＤ(Compact  Disk)、フレキシブルディスク（ＦＤ）、ＤＶＤ(Digital  Versatile  Disk)などのコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
【００３３】
さらに、第１の実施形態に係る計測装置１で実行される計測プログラムを、インターネットなどのネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、第１の実施形態に係る計測装置１で実行される計測プログラムをインターネットなどのネットワーク経由で提供または配布するように構成してもよい。
【００３４】
第１の実施形態に係る計測装置１で実行される計測プログラムは、上述した演算処理部１１および投影制御部１２０、撮像制御部１２４を含むモジュール構成となっている。実際のハードウェアとしては、ＣＰＵ１００が、ＲＯＭ１０１またはストレージ１０３から計測プログラムを読み出して実行することにより、上述した各部がＲＡＭ１０２などの主記憶装置上にロードされ、演算処理部１１および投影制御部１２０、撮像制御部１２４が主記憶装置上に生成されるようになっている。
【００３５】
（第１の実施形態に適用可能な３次元計測について）
次に、第１の実施形態に適用可能な３次元計測について説明する。対象の形状および姿勢を３次元情報として取得する３次元計測を、対象に照射された光を観測することで行うための、幾つかの方法が知られている。第１の実施形態に係る計測装置１では、３次元計測を実行する方法として、（１）位相シフト法を用いた計測、（２）光切断法を用いた計測、および、（３）ランダムドット法を用いた計測、の３方法を採用する。なお、上述した３方法については、例えば、非特許文献１、非特許文献２に記載されている公知な方法を適用することができる。
【００３６】
（１）の位相シフト法を用いた計測について、概略的に説明する。位相シフト法では、非特許文献１に記載されるように、図６（ａ）に例示される、それぞれ位相の異なる位相シフトパターンである複数の投影パターン６０10、６０11、６０12および６０13を用いた位相解析により、３次元の形状および姿勢の復元を行う。このとき、図６（ｂ）に例示される、それぞれ異なるグレイコードパターンである複数の投影パターン６０20、６０21、６０22および６０23を用いた空間コード化法を併用し、これら空間コード化法および位相シフト法の結果に基づき位相連結を行うことで、高精度に３次元の形状および姿勢の復元を行うことができる。
【００３７】
このように、（１）の位相シフト法を用いた計測では、複数の投影パターン６０10〜６０13、６０20〜６０23それぞれについて撮像を行う必要がある。
【００３８】
（２）の光切断法を用いた計測について、概略的に説明する。光切断法は、非特許文献２に記載されるように、ライン光源により計測対象５０に対して輝線を照射し、この輝線が照射された計測対象５０を撮像し、輝線画像を得る。例えば図７に例示するように、偏向素子３２によりレーザ光３３を偏向させてライン方向に走査することで、ライン方向の輝線３３ｂを形成することができる。この輝線画像に基づき、計測対象５０の１ライン分の３次元形状が生成される。図７の投影パターン６０3に示すように、計測対象５０に対して複数ラインについて走査を行うことで、計測対象５０の全体の３次元形状を生成できる。このような光切断パターンを用いた光切断法は、計測対象５０が光沢を有する場合に用いて好適である。
【００３９】
（３）のランダムドット法を用いた計測について、概略的に説明する。図８は、ランダムドット法で用いる投影パターン６０4の例を示す。投影パターン６０4は、輝度値が２値で表現された各ドットがランダムに配置されたランダムドットパターンである。ランダムドット法では、投影に用いる投影パターン６０4と、投影パターン６０4が計測対象に反射された反射画像より得たパターンとの対応位置を求める。例えば、投影パターン６０4を複数のブロックに分割し、投影パターン６０4と反射画像による反射画像パターンとのパターンマッチングをブロック毎に行うことで、投影パターン６０4における各ドットに対する反射画像パターンにおける各ドットとの対応位置を求めることができる。
【００４０】
ランダムドット法では、各ドットがランダムに配置された投影パターン６０4を用いるため、対応点を一意に求めることができる。すなわち、ランダムドット法は、１回の撮像により３次元計測を実行することが可能である。
【００４１】
（第１の実施形態に係る３次元計測の具体例）
次に、第１の実施形態に係る３次元計測について、より具体的に説明する。図９は、第１の実施形態に係る３次元計測処理を示す一例のフローチャートである。
【００４２】
なお、以下では、計測装置１は、計測対象５０の３次元形状を、例えばＣＡＤ(Computer-Aided  Design)データや実測値などにより予め取得しているものとする。この３次元形状は、計測対象５０の３次元座標を含み、例えばストレージ１０３に記憶される。これに限らず、計測装置１は、計測対象５０が載置される台座の３次元形状を予め取得しておき、計測した３次元形状と台座の３次元形状との差分を求めることで、計測対象の３次元形状を求めてもよい。また、計測装置１に用いられるカメラ２１ａおよび２１ｂは、既知のカメラキャリブレーション、アクティブ・カメラキャリブレーションにより、キャリブレーション情報が予め取得されているものとする。
【００４３】
図９に示されるように、第１の実施形態に係る３次元計測処理は、処理Ａと処理Ｂとに大別できる。処理Ａは、計測対象５０を認識するための処理であって、より高速な処理が望まれる。処理Ｂは、計測対象の３次元形状を詳細に検出し、３次元座標を算出する処理である。
【００４４】
処理Ａについて説明する。処理Ａでは、上述した（３）のランダムドット法を用いて３次元計測を行う。ステップＳ１０で、計測装置１は、第１の計測領域４０および、第２の計測領域４１について計測を実行する。
【００４５】
より具体的には、計測装置１において、投影制御部１２０は、パターン記憶部１２１に対して、ランダムドット法による投影パターン６０4のパターン情報を指定し、指定されたパターン情報を読み出すように指示する。投影制御部１２０は、パターン記憶部１２１が読み出した投影パターン６０4のパターン情報に従い光源駆動部１２２および偏向素子駆動部１２３を制御して、図８に例示したような投影パターン６０4の投影を行う。また、投影制御部１２０は、読み出したパターン情報を演算処理部１１に出力する。
【００４６】
投影制御部１２０は、投影パターン６０4の投影と同期して、撮像制御部１２４に対して、カメラ２１ａによる第１の計測領域４０の撮像と、カメラ２１ｂによる第２の計測領域４１の撮像と、を実行させるための実行信号を出力する。撮像制御部１２４は、投影部制御部１２０から出力された実行信号を受けて、カメラ２１ａ（第１撮像部）およびカメラ２１ｂ（第２撮像部）に略同時に撮像命令信号を出力する。カメラ２１ａおよびカメラ２１ｂは、それぞれ撮像して生成した画像信号（第１撮像画像、第２撮像画像）を演算処理部１１に出力する。演算処理部１１は、カメラ２１ａおよびカメラ２１ｂから取得した各画像信号と、投影制御部１２０から渡されたパターン情報とに基づきパターンマッチングを行って第１の計測領域４０および第２の計測領域４１における３次元座標をそれぞれ算出し、３次元形状を求める。
【００４７】
次のステップＳ１１で、計測装置１において、演算処理部１１は、ステップＳ１０で求めた３次元形状に基づき、第１の計測領域４０に計測対象５０が存在するか否かを判定する。例えば、演算処理部１１は、ストレージ１０３に記憶される計測対象５０の３次元形状と、ステップＳ１０で算出された３次元形状とを比較し、比較結果に基づき第１の計測領域４０において計測対象５０が認識されたか否かを判定する。演算処理部１１は、第１の計測領域４０内に計測対象５０が認識されたと判定した場合（ステップＳ１１、「有り」）、処理を、処理Ｂ内のステップＳ２０に移行させる。一方、演算処理部１１は、第１の計測領域４０内に計測対象５０が認識されないと判定した場合（ステップＳ１１、「無し」）、処理をステップＳ１２に移行させる。
【００４８】
ステップＳ１２で、演算処理部１１は、上述したステップＳ１１と同様にして、ステップＳ１０で求めた３次元形状に基づき、第２の計測領域４１において計測対象５０が認識されたか否かを判定する。演算処理部１１は、第２の計測領域４１内に計測対象５０が認識されたと判定した場合（ステップＳ１２、「有り」）、処理を、処理Ｂ内のステップＳ２０に移行させる。
【００４９】
一方、演算処理部１１は、第２の計測領域４１内に計測対象５０が認識されないと判定した場合（ステップＳ１２、「無し」）、処理をステップＳ１４に移行させる。この場合、第１の計測領域４０および第２の計測領域４１の両方において計測対象５０が認識されていないことになる。計測装置１は、ステップＳ１４で、エラー処理を行い、図９のフローチャートによる一連の処理が終了される。エラー処理は、例えば計測装置１の上位装置に対してエラーを返す処理が考えられる。
【００５０】
次に、処理Ｂについて説明する。処理Ｂでは、ステップＳ１０またはステップＳ１２で計測され認識された３次元形状に対して、さらに詳細な計測を実行する。また、処理Ｂでは、第１の計測領域４０および第２の計測領域４１のうち、上述の処理Ａにおいて計測対象５０が認識された計測領域を指定された計測領域として、この指定された計測領域について計測を行う。
【００５１】
処理Ｂにおいて、ステップＳ２０で、例えば演算処理部１１は、計測方法を選択する。ここでは、上述した（１）の位相シフト法を用いた計測方法（第１の計測方法とする）と、（２）の光切断法を用いた計測方法（第２の計測方法とする）と、（３）のランダムドット法を用いた計測方法（第３の計測方法とする）とから、計測方法を選択する。また、この例では、処理Ｂにおいては、第１〜第３の計測方法は、第１の計測方法が最も優先度が高く、第３の計測方法が最も優先度が低いものとしている。優先度は、各計測方法の精度や速度から任意に設定可能である。
【００５２】
演算処理部１１は、ステップＳ２０で第１の計測方法を選択すると、選択した計測方法を投影制御部１２０に伝え、処理をステップＳ２１ａに移行させる。ステップＳ２１ａ〜ステップＳ２３ａの処理は、第１の計測方法すなわち位相シフト法を用いた計測方法により３次元計測を行う処理である。ステップＳ２１ａで、投影制御部１２０は、演算処理部１１から伝えられた計測方法に従い、位相シフトパターンおよびグレイコードパターンによる投影を行うように制御する。また、投影制御部１２０は、撮像制御部１２４に対して、ステップＳ１１で第１の計測領域４０に計測対象５０が有ると判定した場合は、カメラ２１ａに対して、第１計測領域４０の撮像の実行命令を出力する。また、投影制御部１２０は、ステップＳ１２で第２計測領域４１に計測対象５０が有ると判定した場合は、カメラ２１ｂに対して、第２計測領域４１の撮像の実行信号を出力する。投影部制御部１２０の実行信号を受けて、撮像制御部１２４は、カメラ２１ａまたはカメラ２１ｂに対して撮像命令信号を出力する。
【００５３】
より具体的には、投影制御部１２０は、位相シフトパターンによる投影パターン６０10〜６０13の投影を順次実行するように、パターン記憶部１２１に対して読み出す各パターン情報を指定し、指定された各パターン情報を読み出すように指示する。投影制御部１２０は、指示に従いパターン記憶部１２１により読み出されたパターン情報に従い光源駆動部１２２および偏向素子駆動部１２３をそれぞれ制御する。また、投影制御部１２０は、各投影パターン６０10〜６０13の投影に同期して、指定された計測領域に対応するカメラによる撮像を実行するように、撮像制御部１２４に指示する。演算処理部１１は、各投影パターン６０10〜６０13の投影に同期して撮像して得た各画像信号を、例えばＲＡＭ１０２に記憶する。
【００５４】
投影制御部１２０は、さらに、グレイコードパターンによる投影パターン６０20〜６０23の投影を順次実行するように、パターン記憶部１２１に対して読み出す各パターン情報を指定し、指定された各パターン情報を読み出すように指示する。投影制御部１２０は、指示に従いパターン記憶部１２１により読み出されたパターン情報に従い光源駆動部１２２および偏向素子駆動部１２３をそれぞれ制御する。また、投影制御部１２０は、各投影パターン６０20〜６０23の投影に同期して、指定された計測領域に対応するカメラによる撮像を実行するように、撮像制御部１２４に指示する。演算処理部１１は、各投影パターン６０20〜６０23の投影に同期して撮像して得た各画像信号を、例えばＲＡＭ１０２に記憶する。
【００５５】
図６（ａ）および図６（ｂ）の投影パターン６０10〜６０13、６０20〜６０23を用いる場合、演算処理部１１は、ステップＳ２１ａにおいて撮像動作を８回、実行することになる。
【００５６】
次のステップＳ２２ａで、演算処理部１１は、ステップＳ２１ａで撮像して得た各画像信号に基づき、解析処理を実行する。より具体的には、演算処理部１１は、位相シフトパターンによる投影パターン６０10〜６０13を撮像して得た各画像信号に基づき位相解析を行う。また、演算処理部１１は、グレイコードパターンによる投影パターン６０20〜６０23を撮像して得た各画像信号に基づきグレイコード解析を行う。さらに、演算処理部１１は、位相解析を行った結果と、グレイコード解析を行った結果に基づき位相連結の演算を行う。
【００５７】
次のステップＳ２３ａで、演算処理部１１は、ステップＳ２２ａによる位相連結の演算結果により取得した三角測量で用いる対応位置と、ステップＳ２１ａで投影制御部１２０から渡された各投影パターン６０10〜６０13、６０20〜６０23のパターン情報と、指定された計測領域に対応するカメラのキャリブレーション情報とを用いて、既知の手法により、計測対象の３次元座標を算出し、３次元形状を求める。
【００５８】
演算処理部１１は、ステップＳ２３ａで３次元形状を求めると、処理をステップＳ２４に移行させる。ステップＳ２４で、演算処理部１１は、ステップＳ２３ａで求めた３次元形状の可否を判定する。例えば、演算処理部１１は、ステップＳ２３ａで求めた３次元形状と、計測対象について予め取得される３次元形状との差分を求め、差分が閾値未満の場合に、十分な３次元形状が得られたと判定する。演算処理部１１は、十分な３次元形状が得られたと判定した場合（ステップＳ２４、「ＯＫ」）、処理をステップＳ２５に移行させ、算出された３次元形状を示す形状情報を、例えば計測装置１の外部に出力する。
【００５９】
一方、演算処理部１１は、ステップＳ２４で十分な３次元形状が得られなかったと判定した場合（ステップＳ２４、「ＮＧ」）、処理をステップＳ２０に戻す。このとき、演算処理部１１は、直前の３次元計測で用いた計測方法の次に優先度が高い計測方法を選択する。上述の例では、直前の３次元計測では第１の計測方法（位相シフト法を用いた計測方法）が用いられているため、第１の計測方法の次に優先度が高い第２の計測方法（この例では光切断法を用いた計測方法）を選択する。
【００６０】
演算処理部１１は、ステップＳ２０で第２の計測方法を選択すると、選択した計測方法を投影制御部１２０に伝え、処理をステップＳ２１ｂに移行させる。ステップＳ２１ｂ〜ステップＳ２３ｂの処理は、第２の計測方法すなわち光切断法を用いた計測方法により３次元計測を行う処理である。ステップＳ２１ｂで、投影制御部１２０は、演算処理部１１から伝えられた計測方法に従い、光切断パターンによる投影を行うように制御すると共に、撮像制御部１２４に対して、指定された計測領域に対応するカメラにより当該計測領域の撮像を行うよう指示する。
【００６１】
より具体的には、投影制御部１２０は、光切断パターンによる投影パターン６０3の投影を実行するように、パターン記憶部１２１に対して読み出すパターン情報を指定し、指定されたパターン情報を読み出すように指示する。投影制御部１２０は、指示に従いパターン記憶部１２１により読み出されたパターン情報に従い光源駆動部１２２および偏向素子駆動部１２３をそれぞれ制御する。また、投影制御部１２０は、投影パターン６０3の投影に同期して、指定された計測領域に対応するカメラによる撮像を実行するように、撮像制御部１２４に指示する。演算処理部１１は、投影パターン６０3の投影に同期して撮像して得た各輝線画像の画像信号を、例えばＲＡＭ１０２に記憶する。
【００６２】
次のステップＳ２２ｂで、演算処理部１１は、ステップＳ２１ｂで取得した各輝線画像の画像信号に基づき輝度値の重心を検出する。次のステップＳ２３ｂで、演算処理部１１は、ステップＳ２２ｂで検出した重心と、輝線画像と、投影パターン６０3のパターン情報と、指定された計測領域に対応するカメラのキャリブレーション情報とに基づき計測対象５０の３次元座標を算出し、３次元形状を求める。
【００６３】
演算処理部１１は、ステップＳ２３ｂで３次元形状を求めると、処理をステップＳ２４に移行させて、上述したようにして、求めた３次元形状の可否を判定する。演算処理部１１は、十分な３次元形状が得られたと判定した場合（ステップＳ２４、「ＯＫ」）、処理をステップＳ２５に移行させ、算出された３次元形状を示す形状情報を、例えば計測装置１の外部に出力する。
【００６４】
一方、演算処理部１１は、ステップＳ２４で十分な３次元形状が得られなかったと判定した場合（ステップＳ２４、「ＮＧ」）、処理をステップＳ２０に戻し、直前の３次元計測で用いた計測方法の次に優先度が高い計測方法を選択する。この場合には、直前の３次元計測では第２の計測方法（光切断法を用いた計測方法）が用いられているため、第２の計測方法の次に優先度が高い第３の計測方法（この例ではランダムドット法を用いた計測方法）を選択する。
【００６５】
演算処理部１１は、ステップＳ２０で第３の計測方法を選択すると、選択した計測方法を投影制御部１２０に伝え、処理をステップＳ２１ｃに移行させる。ステップＳ２１ｃ〜ステップＳ２３ｃの処理は、第３の計測方法すなわちランダムドット法を用いた計測方法により３次元計測を行う処理である。ステップＳ２１ｃで、投影制御部１２０は、演算処理部１１から伝えられた計測方法に従い、ランダムドットパターンによる投影を行うように制御すると共に、撮像制御部１２４に対して、指定された計測領域に対応するカメラにより当該計測領域の撮像を行うよう指示する。
【００６６】
より具体的には、投影制御部１２０は、ランダムドットパターンによる投影パターン６０4の投影を実行するように、パターン記憶部１２１に対して読み出すパターン情報を指定し、指定されたパターン情報を読み出すように指示する。投影制御部１２０は、指示に従いパターン記憶部１２１により読み出されたパターン情報を演算処理部１１に渡すと共に、当該パターン情報に従い光源駆動部１２２および偏向素子駆動部１２３をそれぞれ制御する。また、投影制御部１２０は、投影パターン６０4の投影に同期して指定された計測領域に対応するカメラによる撮像を実行するように、撮像制御部１２４に指示する。演算処理部１１は、投影パターン６０4の投影に同期して撮像して得た画像信号を、例えばＲＡＭ１０２に記憶する。
【００６７】
次のステップＳ２２ｃで、演算処理部１１は、ステップＳ２１ｃで取得した画像信号に基づき、投影制御部１２０から渡されたランダムドットパターンによるパターン情報とのパターンマッチングを行う。演算処理部１１は、このパターンマッチングにより、投影制御部１２０から渡されたランダムドットパターンに含まれる各ドットに対する、画像信号に含まれるランダムドットパターンの各ドットの対応位置を求める。次のステップＳ２３ｃで、演算処理部１１は、ステップＳ２２ｃで求めた対応位置と、カメラ２１ａのキャリブレーション情報とに基づき、計測対象の３次元座標を算出し、３次元形状を求める。
【００６８】
演算処理部１１は、ステップＳ２３ｃで３次元形状を求めると、処理をステップＳ２４に移行させて、上述したようにして、求めた３次元形状の可否を判定する。演算処理部１１は、十分な３次元形状が得られたと判定した場合（ステップＳ２４、「ＯＫ」）、処理をステップＳ２５に移行させ、求めた３次元形状を示す形状情報を、例えば計測装置１の外部に出力する。
【００６９】
一方、演算処理部１１がステップＳ２４で十分な３次元形状が得られなかったと判定した場合（ステップＳ２４、「ＮＧ」）、第１の計測方法、第２の計測方法および第３の計測方法の何れを用いても３次元形状が算出できなかったことになる。この場合、例えば、処理をステップＳ１４に移行させてエラー処理を行い、図９のフローチャートによる一連の処理を終了させることができる。
【００７０】
このように、第１の実施形態に係る計測装置１は、計測対象５０の近傍と遠方をまず１回の撮像にて３次元形状の算出が可能な計測方法を用いて計測対象５０を認識する（図９のフローチャートにおける処理Ａ）。また、計測装置１は、処理Ａによる計測対象５０の認識後は、複数回の撮像が必要である一方で、より高精度に３次元形状を算出可能な計測方法を用いて、処理Ａで計測対象が有ると判定した領域に対して計測対象の３次元計測を実行する（図９のフローチャートにおける処理Ｂ）。また、処理Ｂにおいては、複数の計測方法を順次実行させることもできる。なお、第１撮像画像から得た３次元情報と第２撮像画像から得た３次元情報とを繋ぐ処理を行ってもよい。また、処理Ｂの処理方法の選択は、処理Ａで得た３次元情報に基づいて行ってもよい。例えば、処理Ａから物体のサイズが小さいことは判明した場合はより精度が高い方法を、物体のサイズが大きいことが判明した場合はより高速性の高い方法を選択するようにしてもよい。
【００７１】
第１の実施形態に係る計測装置１によれば、近傍と遠方とを略同時に撮像が可能である。また、カメラ２１ａとカメラ２１ｂの焦点距離や測定領域は自由に設定が可能であるため、測定可能な近傍と遠方の距離を自由に設定することが可能となる。
【００７２】
従来技術では、近傍と遠方とを同時に撮像することができなかった。これは、投影部が光走査型ではなく光投射型であったため、照射距離に合わせて焦点距離やパターン光を変える必要があり、近傍と遠方とに同時に適したパターン光を投射することができず、近傍と遠方の撮像を切り換える必要があったためである。また、撮像部が１つ（ステレオカメラ）であったため、近傍と遠方とを同時に適切に撮像することができず、さらに、近傍と遠方との適切な撮像は、焦点距離調節機能または被写界深度に依存するため、近傍と遠方との間の距離（計測可能領域幅）を広げることが難しかった。
【００７３】
近傍と遠方とを略同時に撮像する必要性について説明する。例えば、安価なロボットアームに計測装置を付随させた場合、ロボットアームのモータの挙動精度が低いため、ロボットアームの動きは予想が難しい。そのため、ロボットアームを動かしながら計測装置で計測して挙動の微調整を行う必要がある。しかしながら、ロボットアームを動かしながら近傍と遠方とを撮像したとき、撮像時間に差があると、その間にロボットアームが動いているため、近傍と遠方との距離を一定に保つことができない。そのため、遠方計測により遠方に存在していた物体にロボットアームを近づけながら、近傍計測に切り替えたときに、対象物までの距離に誤差が生じる。また、近傍で得た３次元情報と遠方で得た３次元情報とを繋ぐことが困難となる。
【００７４】
ロボットアームを撮像の度に止める場合、スムーズな挙動ができず、より挙動精度が下がってしまう。また、モータの回転数等でロボットアームの挙動を把握しようにも、モータの精度自体が低い場合には困難である。
【００７５】
そこで、第１の実施形態に係る計測装置１によれば、平行光を光走査する光走査型の投影部と、計測領域の異なる第１撮像部、第２撮像部の複数の撮像部とを用いて、近傍と遠方とを同期して撮像可能にする。これにより、近傍と遠方とを略同時に撮像可能となり、さらに計測可能領域幅を大きくすることが容易になる効果を奏する。
【００７６】
さらに、高速に３次元情報取得可能な処理Ａと、より高精度に３次元情報取得可能な処理Ｂと、を切り替えて使用することにより、高速性と精度とを向上させることができる。
【００７７】
また、近傍に障害物が存在している場合は、近傍を計測して障害物を避けながら遠方にロボットアームを近づけることが可能となる。
【００７８】
なお、図９のフローチャートにおける処理Ａにおいて、位相シフトパターンを高速に切り替えて処理を高速化させた位相シフト法を用いて計測を行うことも考えられる。この場合、位相シフトパターンの高速切替に追随するように、カメラ２１ａおよび２１ｂにおいて高速撮像を行う必要がある。撮像の高速化は、露光時間の減少につながり十分なＳ／Ｎを確保することが困難となる。また、Ｓ／Ｎの確保のために、光源３１から射出されるレーザ光３３の光量を増加させることも考えられる。しかしながら、レーザ光の光量を増加させる場合、安全面を考慮する必要がある、また、カメラ２１ａおよび２１ｂが大型化し高価になってしまうという課題があり、上述したランダムドット法を用いる方法に比べ、不利である。
【００７９】
（第２の実施形態）
次に、第２の実施形態について説明する。第２の実施形態は、第１の実施形態に係る計測装置１を、ロボットアームと組み合わせて用いる例である。
【００８０】
図１０（ａ）および図１０（ｂ）は、第２の実施形態に適用可能なロボットアーム７０の例を概略的に示す。図１０（ａ）および図１０（ｂ）に示されるロボットアーム７０は、対象物をピッキングするためのハンド部７１を備え、第１の実施形態に係る計測装置１が搭載されている。ロボットアーム７０は、それぞれ屈曲可能な複数の可動部を備え、ハンド部７１の位置および向きを、制御に従い各可動部の可動範囲内で自在に移動および変更させることができる。
【００８１】
この例では、計測装置１は、ロボットアーム７０の先端部分に搭載されている。これに限らず、計測装置１は、投影・撮像部２０をロボットアーム７０の先端部に搭載し、処理・制御部１０を例えばロボットアーム７０の外部に設置してもよい。また、計測装置１は、投影中心３００がハンド部７１の向く方向に一致するように設けられ、ハンド部７１のピッキング対象を計測対象５０として計測可能なようになっている。このとき、投影・撮像部２０に含まれる投影部３０、ならびに、カメラ２１ａおよび２１ｂは、ハンド部７１によるピッキングにより計測範囲が遮られない位置に固定すると、好ましい。
【００８２】
図１０（ａ）は、カメラ２１ｂを用いて第２の計測領域４１に対する計測を行う場合の例を示す。計測装置１の投影部３０から射出されるレーザ光３３により、第２の計測領域４１内の面に対して投影パターン６０ａが投影される。計測装置１は、この投影パターン６０ａの計測対象５０からの反射光を用いて、当該計測対象５０の３次元座標を算出し、３次元形状を求める。図１０（ｂ）は、カメラ２１ａを用いて第１の計測領域４０に対する計測を行う場合の例を示す。投影部３０は、第１の計測領域４０内の面に投影パターン６０ｂを投影する。第１の計測領域４０は、第２の計測領域４１に対して投影部３０からの距離が近いため、投影パターン６０ｂは、投影パターン６０ａよりも小さくなる。
【００８３】
このように、第２の実施形態では、計測装置１をロボットアーム７０に搭載することで、計測装置１と計測対象５０との距離を容易に変更できる。そのため、計測装置１は、計測領域を、第１の計測領域４０と第２の計測領域とで容易に切り替えることが可能となる。
【００８４】
図１１は、第２の実施形態に係るロボットアーム７０の一例の構成を概略的に示す。ロボットアーム７０は、アーム駆動部７００と、複数のモータ７０１1、７０１2、…を含む。モータ７０１1、７０１2、…は、アーム駆動部７００の制御に従い、ハンド部７１を含むロボットアーム７０の各可動部を駆動する。
【００８５】
アーム駆動部７００は、計測装置１の計測結果に基づき、各モータ７０１1、７０１2、…を駆動する。また、アーム駆動部７００は、計測装置１に対して、カメラ２１ａを用いた第１の計測領域４０に対する計測と、カメラ２１ｂを用いて第２の計測領域４１に対する計測とを、適宜要求する。すなわち、アーム駆動部７００は、計測装置１の計測結果に基づきロボットアーム７０の動作を制御する動作制御部として機能する。
【００８６】
なお、ここでは、ロボットアーム７０の各可動部を駆動するアクチュエータとしてモータ７０１1、７０１2、…を用いるように説明したが、これはこの例に限られない。ロボットアーム７０の各可動部は、油圧式、空圧式など他の方式のアクチュエータを用いて駆動してもよい。
【００８７】
図１２は、第２の実施形態に係るロボットアーム７０の制御の例を示すフローチャートである。ステップＳ３０で、ロボットアーム７０は、図１０（ａ）に示したように、第２の計測領域４１内に計測対象５０が位置するように、予め設定された初期化情報に従いハンド部７１の位置を初期化する。
【００８８】
次のステップＳ３１で、ロボットアーム７０は、初期化位置において計測対象５０が検出されたか否かを判定する。ロボットアーム７０は、計測対象５０が検出されないと判定した場合（ステップＳ３１、「Ｎｏ」）、処理をステップＳ３０に戻す。一方、ロボットアーム７０は、計測対象５０が検出されたと判定した場合（ステップＳ３１、「Ｙｅｓ」）、処理をステップＳ３２に移行させる。
【００８９】
ステップＳ３１では、例えばロボットアーム７０は、計測対象５０を検出するための所定のセンサ（光センサ、接触センサなど）を用いて計測対象５０の検出を行う。これに限らず、ロボットアーム７０を操作するユーザによるユーザ指示に応じて、検出されたか否かを判定してもよい。さらに、ロボットアーム７０は、計測装置１を用いて第２の計測領域４１を計測することで、計測対象５０の検出の判定を行ってもよい。
【００９０】
ステップＳ３２で、計測装置１は、例えばロボットアーム７０の要求に応じて、図９のフローチャートにおける処理Ａ、すなわち、ランダムドット法を用いた３次元計測を行う。次のステップＳ３３で、計測装置１は、ステップＳ３２での３次元計測の結果に基づき、ハンド部７１と計測対象５０との距離を推定する。計測装置１は、３次元計測の結果に基づき計測対象５０の凡その位置および姿勢をさらに認識してもよい。
【００９１】
次のステップＳ３４で、ロボットアーム７０は、ステップＳ３３で計測装置１により推定された計測対象５０までの距離に基づき、ハンド部７１を、第１の計測領域４０内に計測対象５０が位置するように移動させる。このとき、ロボットアーム７０は、計測装置１により認識された計測対象５０の凡その位置をさらに用いてハンド部７１を移動させてもよい。さらに、ロボットアーム７０は、計測装置１に、第１の計測領域４０に対して複数回の３次元計測を要求し、各３次元計測の結果に基づきハンド部７１の位置を微調整してもよい。
【００９２】
次のステップＳ３５で、計測装置１は、例えばロボットアーム７０の要求に応じて、図９のフローチャートにおける処理Ｂの、ステップＳ２１ａ〜ステップＳ２３ａの処理に従い、位相シフトパターンおよびグレイコードパターンにより、位相シフト法を用いた３次元計測を行う。次のステップＳ３６で、計測装置１は、ステップＳ３５で計測された３次元形状に基づき、計測対象５０の位置および姿勢を推定する。ここでは、位相シフト法を用いて計測された３次元計測を用いるため、ステップＳ３２およびステップＳ３３によるランダムドット法を用いた場合よりも、計測対象５０の位置および姿勢をより高精度に推定することが可能である。
【００９３】
なお、第２の実施形態においても、位相シフト法を用いた計測方法により十分な３次元形状が得られない場合、上述したように、計測方法の優先度に従い、第２の計測方法、第３の計測方法を順次実行することができる。
【００９４】
ロボットアーム７０は、ステップＳ３６で推定された計測対象５０の位置および姿勢に基づきハンド部７１の位置および向きなどを制御して、計測対象５０をピッキングする。
【００９５】
これに限らず、ステップＳ３５の３次元計測により得られる３次元形状と、計測対象５０の既知の３次元形状とに基づき、計測された計測対象５０に対する不良品判別、異物判別などの検査を実行することも可能である。
【００９６】
このように、第２の実施形態に係るロボットアーム７０は、計測装置１により、１回の撮像処理で３次元計測が可能なランダムドット法を用いた計測を行い、計測対象５０までの距離を推定してハンド部７１を移動させる。ハンド部７１の移動後、複数回の撮像処理が必要な一方でより高精度な３次元計測が可能な位相シフト法を用いた計測により、計測対象５０の位置および姿勢を推定する。そのため、第２の実施形態によっても、ロボットアーム７０によるピッキング動作を、高価、大型である高速撮像が可能なカメラを用いること無く、より高速および高精度に実行することが可能である。 
【００９７】
例えば、上述の各実施形態では、第１撮像画像により得た３次元情報と第２撮像画像により得た３次元情報と、において、対象物の有無によって処理の切り替えを行っているが、第１撮像部とおよび第２撮像部が、焦点距離は異なるものの共通の計測領域を有する場合、第１撮像画像およびと第２撮像画像の両方に対象物が存在しているときは、対象物に焦点距離が近い方の３次元情報を優先する構成にしても良い。
【００９８】
（第２の実施形態の変形例）
次に、第２の実施形態の変形例について説明する。図１３は、第２の実施形態の変形例に係るロボットアームの動作を説明するための図である。なお、図１３において、上述した図１０と共通する部分には同一の符号を付して、詳細な説明を省略する。また、第２の実施形態の変形例では、第１の実施形態で説明した計測装置１の構成をそのまま適用できる。
【００９９】
対象物体として、開口部５２を有する第１の対象物体５１と、開口部５２に接続可能な接続部を有する第２の対象物体５３と、を考える。計測装置１は、第１の対象物体５１および第２の対象物体５３を、近傍計測領域（第１の計測領域４０に相当）を撮像する第１撮像部（例えばカメラ２１ａ）と、遠方計測領域（第２の計測領域４１に相当）を撮像する第２撮像部（例えばカメラ２１ｂ）とで同時に撮像し、高速処理が可能な処理Ａで第１の対象物体５１と第２の対象物体５３の一致を確認する。ここでは、第１の対象物体５１と第２の対象物体５３と、の組み合わせが、予め決められた組み合わせである場合に、第１の対象物体５１と第２の対象物体５３とが一致すると判定する。
【０１００】
第１の対象物体５１と第２の対象物体５３とが一致すると判定されると、ロボットアーム７０によるピッキング動作が開始される。ロボットアーム７０は、計測装置１により遠方と近傍とを同時撮像して処理Ａを継続しながら、対象物体５３にハンド部７１を近づける。ロボットアーム７０は、第２の対象物体５３が近傍計測領域に含まれたときに、撮像を第１撮像部のみの撮像に切り替え、処理を図９のフローチャートにおける処理Ｂに切り替える。その上で、ロボットアーム７０は、第２の対象物体５３にハンド部７１を精度良く近づけて第２の対象物体５３をピッキングする。
【０１０１】
ロボットアーム７０は、第２の対象物体５３のピッキング後、撮像を第１撮像部および第２撮像部による撮像に切り替え、処理を図９のフローチャートにおける処理Ａに切り替える。その上で、ロボットアーム７０は、ハンド部７１を第１の対象物体５１の開口部５２に近づけ、第１の対象物体５１が近傍計測領域に含まれたときに、撮像を第１撮像部のみの撮像に切り替え、処理を図９のフローチャートにおける処理Ｂに切り替える。その上で、ロボットアーム７０は、開口部５２に第２の対象物体５３の接続部を接続するようにハンド部７１の動作を制御する。
【０１０２】
これにより、第２の実施形態の変形例では、近傍と遠方に置かれた２つの物体を同時に素早く補足し、精度良く２つの物体を接続可能にする効果を奏する。
【０１０３】
なお、上述の各実施形態は、本発明の好適な実施の例ではあるがこれに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変形による実施が可能である。
【符号の説明】
【０１０４】
１  ３次元計測装置
１０  処理・制御部
１１  演算処理部
１２  投影制御部
２０  投影・撮像部
２１ａ，２１ｂ  カメラ
２２ａ，２２ｂ  レンズ
２３ａ，２３ｂ  撮像素子
３０  投影部
３１  光源
３２  偏向素子
３３  レーザ光
４０  第１の計測領域
４１  第２の計測領域
５０  計測対象
６０，６０10，６０11，６０12，６０13，６０20，６０21，６０22，６０23，６０3，６０4  投影パターン
７０  ロボットアーム
７１  ハンド部
１２０  制御部
１２１  パターン記憶部
【先行技術文献】
【特許文献】
【０１０５】
【特許文献１】特開２０１６−１６９９８９号公報
【非特許文献】
【０１０６】
【非特許文献１】プロジェクタ・カメラシステムのレスポンス関数を用いた位相シフト法によるアクティブ・ステレオの精度向上「画像の認識・理解シンポジウム（ＭＩＲＵ２００９）」２００９年７月
【非特許文献２】「光切断法による３次元画像を用いた外観検査技術」ＲＩＣＯＨ  ＴＥＣＨＮＩＣＡＬ  ＲＥＰＯＲＴ、Ｎｏ．３９，  ２０１３、２０１４年１月２８日発行
【図１】
2018146521.tif 000003
【図２】
2018146521.tif 000004
【図３】
2018146521.tif 000005
【図４】
2018146521.tif 000006
【図５】
2018146521.tif 000007
【図６】
2018146521.tif 000008
【図７】
2018146521.tif 000009
【図８】
2018146521.tif 000010
【図９】
2018146521.tif 000011
【図１０】
2018146521.tif 000012
【図１１】
2018146521.tif 000013
【図１２】
2018146521.tif 000014
【図１３】
2018146521.tif 000015