(57)【要約】      （修正有）【課題】物体認識の処理時間を短縮できる制御装置を提供する。【解決手段】制御装置２００は、相補的なｎ個の投影パターンを物体に投影した状態で物体をカメラ８２０で撮影することによって、ｎ個の画像を取得する画像取得部２７１と、ｎ個の画像のうちの１つ以上の画像を用いて、画像の複数の画素の位置を３次元座標で表現した点群を生成する点群生成部２７２と、ｎ個の画像を用いて合成画像を生成するとともに、合成画像から物体の輪郭を抽出する輪郭抽出部２７３と、点群と物体の輪郭とを用いて物体を認識する物体認識実行部２７４と、を備える。【選択図】図４
2019158691.tif 000002
【特許請求の範囲】
【請求項１】
物体の認識を実行する制御装置であって、
ｎを２以上の整数とし、相補的なｎ個の投影パターンを前記物体に投影した状態で前記物体をカメラで撮影することによって、ｎ個の画像を取得する画像取得部と、
前記ｎ個の画像のうちの１つ以上の画像を用いて、前記画像の複数の画素の位置を３次元座標で表現した点群を生成する点群生成部と、
前記ｎ個の画像を用いて合成画像を生成するとともに、前記合成画像から前記物体の輪郭を抽出する輪郭抽出部と、
前記点群と前記物体の輪郭とを用いて前記物体を認識する物体認識実行部と、
を備える、制御装置。
【請求項２】
請求項１に記載の制御装置であって、
前記ｎは２であり、前記ｎ個の投影パターンは、ランダムドットパターンとその反転パターンであり、
前記カメラはステレオカメラである、
制御装置。
【請求項３】
請求項１に記載の制御装置であって、
前記ｎは３以上であり、
前記ｎ個の投影パターンは、正弦波状パターンの位相を２π／ｎずつ順にずらした位相シフトパターンである、制御装置。
【請求項４】
物体の認識を実行する制御装置であって、
プロセッサーを備え、
前記プロセッサーは、
ｎを２以上の整数とし、相補的なｎ個の投影パターンを前記物体に投影した状態で前記物体をカメラで撮影することによって、ｎ個の画像を取得する画像取得処理と、
前記ｎ個の画像のうちの１つ以上の画像を用いて、前記画像の複数の画素の位置を３次元座標で表現した点群を生成する点群生成処理と、
前記ｎ個の画像を用いて合成画像を生成するとともに、前記合成画像から前記物体の輪郭を抽出する輪郭抽出処理と、
前記点群と前記物体の輪郭とを用いて前記物体を認識する物体認識実行処理と、
を実行する、制御装置。
【請求項５】
請求項１〜４のいずれか一項に記載の制御装置に接続されたロボット。
【請求項６】
ロボットと、
前記ロボットに接続された請求項１〜４のいずれか一項に記載の制御装置と、
を備えるロボットシステム。
【請求項７】
物体の認識を実行する方法であって、
ｎを２以上の整数とし、相補的なｎ個の投影パターンを前記物体に投影した状態で前記物体をカメラで撮影することによって、ｎ個の画像を取得する工程と、
前記ｎ個の画像のうちの１つ以上の画像を用いて、前記画像の複数の画素の位置を３次元座標で表現した点群を生成する工程と、
前記ｎ個の画像を用いて合成画像を生成するとともに、前記合成画像から前記物体の輪郭を抽出する工程と、
前記点群と前記物体の輪郭とを用いて前記物体を認識する工程と、
を備える、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カメラを用いた物体認識技術に関するものである。
【背景技術】
【０００２】
ロボットなどの各種の装置において、３次元物体を認識する物体認識技術が利用される。物体認識技術の一つとして、ステレオカメラで撮影した画像を用いて物体の深度を計測する方法が利用されている。
【０００３】
特許文献１には、３次元深度計測方法として、パターンを測定対象物に投光することでテクスチャを発生させ、３次元計測精度を向上させたステレオ法が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−１４７１１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、物体の位置や姿勢をより精度よく計測したい場合には、３次元計測結果の他に、２次元画像の輪郭情報を組み合わせて位置姿勢を推定することが必要となる。この場合に、３次元計測のための撮影と輪郭抽出用の撮影とを別々に実行すると、全体の処理が完了するまでに長時間を要するという問題がある。
【課題を解決するための手段】
【０００６】
本発明の一形態によれば、物体の認識を実行する制御装置が提供される。この制御装置は、ｎを２以上の整数とし、相補的なｎ個の投影パターンを前記物体に投影した状態で前記物体をカメラで撮影することによって、ｎ個の画像を取得する画像取得部と；前記ｎ個の画像のうちの１つ以上の画像を用いて、前記画像の複数の画素の位置を３次元座標で表現した点群を生成する点群生成部と；前記ｎ個の画像を用いて合成画像を生成するとともに、前記合成画像から前記物体の輪郭を抽出する輪郭抽出部と；前記点群と前記物体の輪郭とを用いて前記物体を認識する物体認識実行部と；を備える。
【図面の簡単な説明】
【０００７】
【図１】ロボットシステムの概念図。
【図２】複数のプロセッサーを有する制御装置の一例を示す概念図。
【図３】複数のプロセッサーを有する制御装置の他の例を示す概念図。
【図４】制御装置の機能を示すブロック図。
【図５】パーツフィーダーに収容された複数の部品を示す平面図。
【図６】第１実施形態における物体認識処理の手順を示すフローチャート。
【図７】第１実施形態における物体認識処理の説明図。
【図８】第２実施形態における物体認識処理の手順を示すフローチャート。
【図９】第２実施形態における物体認識処理の説明図。
【発明を実施するための形態】
【０００８】
A. 第１実施形態：
図１は、ロボットシステムの概念図である。このロボットシステムは、架台７００に設置されており、ロボット１００と、ロボット１００に接続された制御装置２００と、ティーチングペンダント３００と、パーツフィーダー４００と、ホッパー５００と、パーツトレイ６００と、投影装置８１０と、カメラ８２０とを備えている。ロボット１００は、架台７００の天板７１０の下に固定されている。パーツフィーダー４００と、ホッパー５００と、パーツトレイ６００は、架台７００のテーブル部７２０に載置されている。ロボット１００は、ティーチングプレイバック方式のロボットである。ロボット１００を用いた作業は、予め作成された教示データに従って実行される。このロボットシステムには、直交する３つの座標軸Ｘ，Ｙ，Ｚで規定されるシステム座標系Σｓが設定されている。図１の例では、Ｘ軸とＹ軸は水平方向であり、Ｚ軸は鉛直上方向である。教示データに含まれる教示点やエンドエフェクタの姿勢は、このシステム座標系Σｓの座標値と各軸回りの角度で表現される。
【０００９】
ロボット１００は、基台１２０と、アーム１３０とを備えている。アーム１３０は、４つの関節Ｊ１〜Ｊ４で順次接続されている。これらの関節Ｊ１〜Ｊ４のうち、３つの関節Ｊ１，Ｊ２，Ｊ４はねじり関節であり、１つの関節Ｊ３は並進関節である。本実施形態では４軸ロボットを例示しているが、１個以上の関節を有する任意のアーム機構を有するロボットを用いることが可能である。
【００１０】
アーム１３０の先端部に設けられたアームフランジ１３２には、エンドエフェクター１６０が装着されている。図１の例では、エンドエフェクター１６０は、把持機構１６４を用いてパーツを把持して拾い上げるグリッパーである。但し、エンドエフェクター１６０としては、吸着ピックアップ機構などの他の機構を取り付けることも可能である。
【００１１】
パーツフィーダー４００は、エンドエフェクター１６０が把持するパーツを収容する収容装置である。パーツフィーダー４００は、パーツを振動させてパーツ同士を分散させる振動機構を有するように構成されていてもよい。ホッパー５００は、パーツフィーダー４００にパーツを補給するパーツ補給装置である。パーツトレイ６００は、パーツを個別に収容するための多数の凹部を有するトレイである。本実施形態において、ロボット１００は、パーツフィーダー４００の中からパーツを拾い上げて、パーツトレイ６００内の適切な位置に収納する作業を実行する。但し、ロボットシステムは、これ以外の他の作業を行う場合にも適用可能である。
【００１２】
制御装置２００は、プロセッサー２１０と、メインメモリー２２０と、不揮発性メモリー２３０と、表示制御部２４０と、表示部２５０と、Ｉ／Ｏインターフェース２６０とを有している。これらの各部は、バスを介して接続されている。プロセッサー２１０は、例えばマイクロプロセッサー又はプロセッサー回路である。制御装置２００は、Ｉ／Ｏインターフェース２６０を介して、ロボット１００と、ティーチングペンダント３００と、パーツフィーダー４００と、ホッパー５００とに接続される。制御装置２００は、更に、Ｉ／Ｏインターフェース２６０を介して投影装置８１０とカメラ８２０にも接続される。
【００１３】
制御装置２００の構成としては、図１に示した構成以外の種々の構成を採用することが可能である。例えば、プロセッサー２１０とメインメモリー２２０を図１の制御装置２００から削除し、この制御装置２００と通信可能に接続された他の装置にプロセッサー２１０とメインメモリー２２０を設けるようにしてもよい。この場合には、当該他の装置と制御装置２００とを合わせた装置全体が、ロボット１００の制御装置として機能する。他の実施形態では、制御装置２００は、２つ以上のプロセッサー２１０を有していてもよい。更に他の実施形態では、制御装置２００は、互いに通信可能に接続された複数の装置によって実現されていてもよい。これらの各種の実施形態において、制御装置２００は、１つ以上のプロセッサー２１０を備える装置又は装置群として構成される。
【００１４】
図２は、複数のプロセッサーによってロボットの制御装置が構成される一例を示す概念図である。この例では、ロボット１００及びその制御装置２００の他に、パーソナルコンピューター１４００，１４１０と、ＬＡＮなどのネットワーク環境を介して提供されるクラウドサービス１５００とが描かれている。パーソナルコンピューター１４００，１４１０は、それぞれプロセッサーとメモリーとを含んでいる。また、クラウドサービス１５００においてもプロセッサーとメモリーを利用可能である。これらの複数のプロセッサーの一部又は全部を利用して、ロボット１００の制御装置を実現することが可能である。
【００１５】
図３は、複数のプロセッサーによってロボットの制御装置が構成される他の例を示す概念図である。この例では、ロボット１００の制御装置２００が、ロボット１００の中に格納されている点が図２と異なる。この例においても、複数のプロセッサーの一部又は全部を利用して、ロボット１００の制御装置を実現することが可能である。
【００１６】
図４は、制御装置２００の機能を示すブロック図である。制御装置２００のプロセッサー２１０は、不揮発性メモリー２３０に予め記憶された各種のプログラム命令２３１を実行することにより、ロボット制御部２１１と、パーツフィーダー制御部２１２と、ホッパー制御部２１３と、物体認識部２７０の機能をそれぞれ実現する。
【００１７】
物体認識部２７０は、カメラ８２０を用いて画像を取得する画像取得部２７１と、画像を用いて点群を生成する点群生成部２７２と、画像内の物体の輪郭を抽出する輪郭抽出部２７３と、生成された点群と輪郭を用いて物体を認識する物体認識実行部２７４とを含んでいる。これらの各部の機能については後述する。
【００１８】
不揮発性メモリー２３０は、プログラム命令２３１と教示データ２３２の他に、画像の撮影に使用する各種の投影パターン２３３と、物体認識に使用する物体の３次元モデルデータ２３４とを記憶する。
【００１９】
図５は、パーツフィーダー４００に複数の部品ＰＰが収容された状態を示す平面図である。本実施形態では、このような複数の同一の部品ＰＰをカメラ８２０で撮像し、その画像を解析して部品ＰＰを認識する物体認識処理を実行する。認識された部品ＰＰはエンドエフェクター１６０で把持することが可能である。以下では、部品ＰＰを「物体ＰＰ」とも呼ぶ。なお、物体認識処理を、ロボット以外の用途に使用してもよい。
【００２０】
第１実施形態において、カメラ８２０はステレオカメラである。投影装置８１０は、カメラ８２０を用いて部品ＰＰを撮影する際に、特定の投影パターンを照射するために設けられている。投影パターンの例については後述する。
【００２１】
本実施形態の物体認識処理には、画像から得られる点群と輪郭とを使用する。「点群」とは、画像の画素の位置を３次元座標値Ｘ[mm]，Ｙ[mm]，Ｚ[mm]で表現した点データの集合である。３次元座標としては、カメラ座標系や、システム座標系Σｓ、ロボット座標系などの任意の座標系を使用できる。
【００２２】
図６は、第２実施形態における物体認識処理のフローチャートであり、図７はその説明図である。第１実施形態では、点群生成処理にステレオブロックマッチング法を使用する。図６のステップＳ１１０〜Ｓ１３０は画像取得部２７１によって実行され、ステップＳ２１０〜Ｓ２３０は点群生成部２７２によって実行され、ステップＳ３１０〜Ｓ３２０は輪郭抽出部２７３によって実行され、ステップＳ４１０は物体認識実行部２７４によって実行される。
【００２３】
ステップＳ１１０では、ｎ個の相補的な投影パターンの中から１つを選択して物体に投影し、ステップＳ１２０でカメラ８２０を用いて画像を撮影する。ここで、ｎは２以上の整数である。
【００２４】
図７に示すように、第１実施形態では、ｎ個の相補的な投影パターンとして、ランダムドットパターンＲＰとその反転パターンＲＰ＃とを使用する。ランダムドットパターンＲＰ，ＲＰ＃を投影すると、部品ＰＰの表面にテクスチャーを付与することができるので、部品ＰＰの点群をより高精度で取得できるという利点がある。図７では図示の便宜上、ランダムドットパターンＲＰ，ＲＰ＃の画素を比較的大きく描いているが、実際には部品ＰＰのサイズに比べて十分に小さい画素でランダムドットパターンＲＰ，ＲＰ＃が形成される。
【００２５】
本明細書において、「ｎ個の相補的な投影パターン」とは、投影装置８１０におけるｎ個の投影パターンの画素値を画素毎に加算すると、一様な画像となるような投影パターンを意味する。例えば、図７に示すランダムドットパターンＲＰと反転パターンＲＰ＃を２値画像として構成した場合には、それらの画素値を画素毎に加算すると画素値が全て１となり、一様な画像となる。また、この例ではｎは２に等しいが、ｎを３以上とすることも可能である。例えば、３個以上のランダムドットパターンを相補的な投影パターンとして構成することも可能である。相補的な投影パターンとしては、ランダムドットパターンに限らず、他の任意の投影パターンを使用可能である。
【００２６】
ステップＳ１１０，Ｓ１２０による１回目の撮影では、ランダムドットパターンＲＰを部品ＰＰに投影した状態で、ステレオ画像である左画像ＬＭ１と右画像ＲＭ１が得られる。ステップＳ１３０では、ｎ回の撮影が終了したか否かが判定され、終了していなければステップＳ１１０，Ｓ１２０が繰り返される。第１実施形態では、ｎ＝２であり、２回目の撮影では、反転パターンＲＰ＃を部品ＰＰに投影した状態で、ステレオ画像である左画像ＬＭ２と右画像ＲＭ２が得られる。
【００２７】
ステップＳ２１０では、ｎ回の撮影で得られたｎ組のステレオ画像のうちの１組以上を用いて、ステレオブロックマッチング法に従って視差を計算することによって視差画像を生成する。図７の例では、２つのステレオ画像を用いて、２つの視差画像ＤＭ１，ＤＭ２が生成されている。但し、１つのステレオ画像を用いて１つの視差画像のみを生成するようにしてもよい。
【００２８】
視差画像ＤＭ１，ＤＭ２のそれぞれは、ステレオカメラ８２０の左右の視差を画素値とした画像である。視差Ｄとステレオカメラ８２０との距離Ｚとの関係は、次式で与えられる。
Ｚ＝ｆ×Ｔ／Ｄ        …（１）
ここで、ｆはカメラの焦点距離、Ｔはステレオカメラ８２０を構成する２つのカメラの光軸間の距離である。
【００２９】
なお、ステレオブロックマッチング法による視差計算の前に、左画像と右画像に前処理を行うようにしてもよい。前処理としては、例えば、レンズによる画像の歪みを補正する歪み補正と、左画像と右画像の向きを平行化する平行化処理とを含む幾何補正が行われる。
【００３０】
ステップＳ２２０では、２つの視差画像ＤＭ１，ＤＭ２を平均化することよって、平均化後の視差画像ＤＭaveを生成する。但し、ステップＳ２１０で１つの視差画像のみを生成する場合には、ステップＳ２２０は省略される。なお、ここでは２つの視差画像ＤＭ１，ＤＭ２を平均化するとしたが、周囲の画素を含めた値を平均化してもよいし、視差画像ＤＭ１，ＤＭ２の異常値を削除するなど、視差画像ＤＭ１，ＤＭ２のばらつきを低減して精度を向上する他の処理を行ってもよい。
【００３１】
ステップＳ２３０では、次に、視差画像ＤＭaveから点群ＰＧを生成する。このとき、視差画像ＤＭaveの視差Ｄから上記（１）式に従って算出した距離Ｚを使用する。前述したように、「点群」は、画像の画素の位置を３次元座標値Ｘ[mm]，Ｙ[mm]，Ｚ[mm]で表現した点データの集合である。なお、視差画像ＤＭaveの視差Ｄ又は距離Ｚを用いた点群生成の処理は周知なので、ここではその説明は省略する。
【００３２】
ステップＳ３１０では、ｎ回の撮影で得られたｎ個の画像を合成することによって、合成画像ＣＭを生成する。図７の例では、ステレオ画像のうちの右画像ＲＭ１，ＲＭ２を合成することによって合成画像ＣＭを生成している。このとき、左画像と右画像のうちで、視差画像ＤＭ１，ＤＭ２の作成時に基準画像として用いた方を用いて合成画像ＣＭを作成することが好ましい。この理由は、視差画像ＤＭから得られる点群ＰＧと、合成画像ＣＭから抽出される輪郭がより整合するからである。但し、左画像と右画像の両方を用いて合成画像ＣＭを作成してもよい。なお、画像の合成は、対応する画素の画素値を加算する加算演算によって実行される。
【００３３】
ステップＳ３２０では、合成画像ＣＭに対して輪郭抽出処理を実行することによって、輪郭画像ＰＭを生成する。この輪郭画像ＰＭは、部品ＰＰの輪郭を含む画像である。合成画像ＣＭは、ｎ回の撮影で得られたｎ個の画像を合成した画像なので、ｎ個の相補的な投影パターンの影響がほとんど無い。従って、合成画像ＣＭから部品ＰＰの輪郭を精度良く得ることが可能である。
【００３４】
ステップＳ４１０では、物体認識実行部２７４が、点群ＰＧと輪郭画像ＰＭの輪郭とを用いて、物体としての部品ＰＰの３次元形状を認識する。
【００３５】
点群と輪郭を用いた物体の３次元形状の認識方法としては、例えば、本願の出願人により開示された特開２０１７−１８２２７４号公報に記載された方法を利用可能である。或いは、"Model Globally, Match Locally: Efficient and Robust 3D Object Recognition", Bertram Drost他, http://campar.in.tum.de/pub/drost2010CVPR/drost2010CVPR.pdf, に記載された方法や、「ベクトルペアマッチングによる高信頼な３次元位置姿勢認識」,秋月秀一, http://isl.sist.chukyo-u.ac.jp/Archives/vpm.pdf, に記載された方法などを利用してもよい。これらの方法は、点群と、輪郭と、物体の３次元モデルデータを使用した物体認識方法である。但し、３次元モデルデータを使用せずに、点群と輪郭から物体の３次元形状を認識するようにしてもよい。
【００３６】
物体としての部品ＰＰの認識結果は、物体認識部２７０からロボット制御部２１１に与えられる。この結果、ロボット制御部２１１がこの認識結果を利用して部品ＰＰの把持動作を実行することが可能となる。
【００３７】
以上のように、第１実施形態では、相補的なｎ個の投影パターンを投影した状態で撮影したｎ個の画像を用いて点群の生成と物体の輪郭の抽出とを行うので、３次元計測のための点群生成用の撮影と輪郭抽出用の撮影を別個に行う場合に比べて、全体の処理に要する時間を短縮することが可能である。
【００３８】
また、第１実施形態では、ランダムドットパターンＲＰとその反転パターンＲＰ＃を投影した状態で撮影した２組のステレオ画像を用いて点群の生成と物体の輪郭の抽出とを行うので、３次元計測のための点群生成用の撮影と輪郭抽出用の撮影を別個に行う場合に比べて、全体の処理に要する時間を短縮できる。
【００３９】
B. 第２実施形態：
図８は、第２実施形態における物体認識処理のフローチャートであり、図９はその説明図である。図８の処理手順は、図６に示した第１実施形態の処理手順のステップＳ２１０をステップＳ２１０ａに置き換え、また、ステップＳ２２０を省略したものである。第２実施形態では、点群生成処理に位相シフト法を使用し、ステップＳ１１０，Ｓ１２０での撮影の際に、ｎ個の投影パターンとして位相シフトパターンを使用する。
【００４０】
図９に示すｎ個の位相シフトパターンＰＨ１〜ＰＨｎは、正弦波状の濃淡を有する縞模様のパターンである。位相シフト法では、一般に、ｎを３以上の整数として、ｎ枚の位相シフトパターンＰＨ１〜ＰＨｎを用いて画像の撮影が行われる。ｎ枚の位相シフトパターンＰＨ１〜ＰＨｎは、２π／ｎずつ順次ずれた位相を有する正弦波状パターンである。図９の例ではｎ＝４である。なお、位相シフト法では、ステレオカメラを使用する必要は無いので、カメラ８２０として単眼カメラを使用することが可能である。或いは、ステレオカメラを構成する２つのカメラのうちの一方のみを使用して撮影を行ってもよい。
【００４１】
第２実施形態では、ステップＳ１１０〜Ｓ１３０によって４個の位相シフト画像ＰＳＭ１〜ＰＳＭ４が得られる。ステップＳ２１０ａでは、これらの位相シフト画像ＰＳＭ１〜ＰＳＭ４を用い、位相シフト法に従って距離画像ＤＭを生成する。位相シフト法を使用した距離画像ＤＭの生成処理は周知なので、ここではその説明は省略する。ステップＳ２３０では、距離画像ＤＭを用いて点群ＰＧを生成する。
【００４２】
ステップＳ３１０では、ｎ回の撮影で得られたｎ個の画像を合成することによって、合成画像ＣＭを生成する。図９の例では、４つの位相シフト画像ＰＳＭ１〜ＰＳＭ４を合成することによって合成画像ＣＭを生成している。ステップＳ３２０における輪郭抽出処理と、ステップＳ４１０における物体認識処理は、第１実施形態と同様である。
【００４３】
以上のように、第２実施形態においても、相補的なｎ個の投影パターンを投影した状態で撮影したｎ個の画像を用いて点群の生成と物体の輪郭の抽出とを行うので、３次元計測のための点群生成用の撮影と輪郭抽出用の撮影を別個に行う場合に比べて、全体の処理に要する時間を短縮することが可能である。
【００４４】
また、第２実施形態では、ｎ個の位相シフトパターンを物体に投影した状態で撮影したｎ個の画像を用いて点群の生成と物体の輪郭の抽出とを行うので、３次元計測のための点群生成用の撮影と輪郭抽出用の撮影を別個に行う場合に比べて、全体の処理に要する時間を短縮できる。
【００４５】
C. 他の実施形態：
本発明は、上述した実施形態に限られるものではなく、その趣旨を逸脱しない範囲において種々の形態で実現することができる。例えば、本発明は、以下の形態（aspect）によっても実現可能である。以下に記載した各形態中の技術的特徴に対応する上記実施形態中の技術的特徴は、本発明の課題の一部又は全部を解決するために、あるいは、本発明の効果の一部又は全部を達成するために、適宜、差し替えや、組み合わせを行うことが可能である。また、その技術的特徴が本明細書中に必須なものとして説明されていなければ、適宜、削除することが可能である。
【００４６】
（１）本発明の第１の形態によれば、物体の認識を実行する制御装置が提供される。この制御装置は、ｎを２以上の整数とし、相補的なｎ個の投影パターンを前記物体に投影した状態で前記物体をカメラで撮影することによって、ｎ個の画像を取得する画像取得部と；前記ｎ個の画像のうちの１つ以上の画像を用いて、前記画像の複数の画素の位置を３次元座標で表現した点群を生成する点群生成部と；前記ｎ個の画像を用いて合成画像を生成するとともに、前記合成画像から前記物体の輪郭を抽出する輪郭抽出部と；前記点群と前記物体の輪郭とを用いて前記物体を認識する物体認識実行部と；を備える。
この制御装置によれば、相補的なｎ個の投影パターンを投影した状態で撮影したｎ個の画像を用いて点群の生成と物体の輪郭の抽出とを行うので、３次元計測のための点群生成用の撮影と輪郭抽出用の撮影を別個に行う場合に比べて、全体の処理に要する時間を短縮することが可能である。
【００４７】
（２）上記制御装置において、前記ｎは２であり、前記ｎ個の投影パターンは、ランダムドットパターンとその反転パターンであり、前記カメラはステレオカメラであるものとしてもよい。
この制御装置によれば、ランダムドットパターンとその反転パターンを投影した状態で撮影した２組のステレオ画像を用いて点群の生成と物体の輪郭の抽出とを行うので、３次元計測のための点群生成用の撮影と輪郭抽出用の撮影を別個に行う場合に比べて、全体の処理に要する時間を短縮することが可能である。
【００４８】
（３）上記制御装置において、前記ｎは３以上であり、前記ｎ個の投影パターンは、正弦波状パターンの位相を２π／ｎずつ順にずらした位相シフトパターンであるものとしてもよい。
この制御装置によれば、ｎ個の位相シフトパターンを物体に投影した状態で撮影したｎ個の画像を用いて点群の生成と物体の輪郭の抽出とを行うので、３次元計測のための点群生成用の撮影と輪郭抽出用の撮影を別個に行う場合に比べて、全体の処理に要する時間を短縮することが可能である。
【００４９】
（４）本発明の第２形態によれば、物体の認識を実行する制御装置が提供される。この制御装置は、プロセッサーを備え、前記プロセッサーは、ｎを２以上の整数とし、相補的なｎ個の投影パターンを前記物体に投影した状態で前記物体をカメラで撮影することによって、ｎ個の画像を取得する画像取得処理と；前記ｎ個の画像のうちの１つ以上の画像を用いて、前記画像の複数の画素の位置を３次元座標で表現した点群を生成する点群生成処理と；前記ｎ個の画像を用いて合成画像を生成するとともに、前記合成画像から前記物体の輪郭を抽出する輪郭抽出処理と；前記点群と前記物体の輪郭とを用いて前記物体を認識する物体認識実行処理と；を実行する。
この制御装置によれば、相補的なｎ個の投影パターンを投影した状態で撮影したｎ個の画像を用いて点群の生成と物体の輪郭の抽出とを行うので、３次元計測のための点群生成用の撮影と輪郭抽出用の撮影を別個に行う場合に比べて、全体の処理に要する時間を短縮することが可能である。
【００５０】
（５）本発明の第３形態によれば上記制御装置に接続されたロボットが提供される。
このロボットによれば、ロボットが処理対象とする物体の認識を短時間で行うことが可能となる。
【００５１】
（６）本発明の第４形態によれば、ロボットと、前記ロボットに接続された前記制御装置と、を備えるロボットシステムが提供される。
このロボットシステムによれば、ロボットが処理対象とする物体の認識を短時間で行うことが可能となる。
【００５２】
（７）本発明の第５形態によれば、物体の認識を実行する方法が提供される。この方法は、ｎを２以上の整数とし、相補的なｎ個の投影パターンを前記物体に投影した状態で前記物体をカメラで撮影することによって、ｎ個の画像を取得する工程と；前記ｎ個の画像のうちの１つ以上の画像を用いて、前記画像の複数の画素の位置を３次元座標で表現した点群を生成する工程と；前記ｎ個の画像を用いて合成画像を生成するとともに、前記合成画像から前記物体の輪郭を抽出する工程と；前記点群と前記物体の輪郭とを用いて前記物体を認識する工程と；を備える。
この方法によれば、相補的なｎ個の投影パターンを投影した状態で撮影したｎ個の画像を用いて点群の生成と物体の輪郭の抽出とを行うので、３次元計測のための点群生成用の撮影と輪郭抽出用の撮影を別個に行う場合に比べて、全体の処理に要する時間を短縮することが可能である。
【符号の説明】
【００５３】
１００…ロボット、１２０…基台、１３０…アーム、１３２…アームフランジ、１６０…エンドエフェクター、１６４…把持機構、２００…制御装置、２１０…プロセッサー、２１１…ロボット制御部、２１２…パーツフィーダー制御部、２１３…ホッパー制御部、２２０…メインメモリー、２３０…不揮発性メモリー、２３１…プログラム命令、２３２…教示データ、２３３…投影パターン、２３４…３次元モデルデータ、２４０…表示制御部、２５０…表示部、２６０…Ｉ／Ｏインターフェース、２７０…物体認識部、２７１…第１点群生成部、２７２…第２点群生成部、２７３…物体認識実行部、３００…ティーチングペンダント、４００…パーツフィーダー、５００…ホッパー、６００…パーツトレイ、７００…架台、７１０…天板、７２０…テーブル部、８１０…投影装置、８２０…カメラ、１４００，１４１０…パーソナルコンピューター、１５００…クラウドサービス
【図１】
2019158691.tif 000003
【図２】
2019158691.tif 000004
【図３】
2019158691.tif 000005
【図４】
2019158691.tif 000006
【図５】
2019158691.tif 000007
【図６】
2019158691.tif 000008
【図７】
2019158691.tif 000009
【図８】
2019158691.tif 000010
【図９】
2019158691.tif 000011