JP2018146347A - 画像処理装置、画像処理方法、及びコンピュータプログラム - Google Patents
画像処理装置、画像処理方法、及びコンピュータプログラム Download PDFInfo
- Publication number
- JP2018146347A JP2018146347A JP2017040635A JP2017040635A JP2018146347A JP 2018146347 A JP2018146347 A JP 2018146347A JP 2017040635 A JP2017040635 A JP 2017040635A JP 2017040635 A JP2017040635 A JP 2017040635A JP 2018146347 A JP2018146347 A JP 2018146347A
- Authority
- JP
- Japan
- Prior art keywords
- work
- workpiece
- dimensional
- image processing
- curved surface
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Length Measuring Devices By Optical Means (AREA)
- Manipulator (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
Abstract
【課題】バラ積み状態のワークであっても、バラ積み状態のワークであっても、3Dピッキングの実質的な性能を落とすことなく高速に3Dピッキングできるようにロボットのピッキング動作を制御することが可能な画像処理装置、画像処理方法、及びコンピュータプログラムを提供する。【解決手段】ワークごとの三次元データをワークモデルとして登録しておく。バラ積みされたワークが搭載されている作業空間を三次元計測して三次元計測データを取得し、取得した三次元計測データに平滑化機能を有するフィルタ処理を施し、高さ方向における三次元計測データの近似曲面を生成する。生成された近似曲面又は近似曲面を高さ方向に一定のオフセット量だけオフセットしたオフセット曲面よりも高い位置に存在するワークを示す領域であるワーク領域を特定する。特定されたワーク領域に対して、登録されているワークモデルを用いて三次元サーチ処理を実行する。【選択図】図5
Description
本発明は、バラ積み状態のワークであっても、正確に3Dピッキングできるようにロボットのピッキング動作を制御することが可能な画像処理装置、画像処理方法、及びコンピュータプログラムに関する。
工場において、ロボットによるピッキング動作を自動的に行うことができるように、3Dピッキングの技術が開発されている。例えば3D−CAD上でロボットの把持部を移動させることにより、ロボットの把持部をワークの把持対象の部位へと誘導し、ワークとロボットの把持部との位置関係を検出して登録しておく。これにより、ロボットの把持部をワークを把持することが可能な位置へと確実に移動制御することができる。
一方、3Dピッキングで必要となる三次元サーチ処理は、ワークの取り得る姿勢の自由度が高く、従来の二次元データに対するサーチ処理に比べて探索範囲が大幅に増加するため、単純に全ての領域に対して三次元サーチ処理を実行すると処理時間が増大する。三次元サーチ処理の処理時間を削減するためには、探索範囲を限定する必要がある。
三次元データを用いて、三次元サーチ処理の探索範囲を限定する方法として、例えば特許文献1では、一定の閾値以上の高さを有する部分画像を検出して、検出された部分画像に含まれるワークに限定して画像処理を実行する方法が開示されている。特許文献1の方法によって、バラ積み状態のワークの中から一定以上の高さを有するワークに限定して三次元サーチ処理を実行することにより、対象となるワークを限定して三次元サーチ処理を実行することができるため、三次元サーチ処理の処理時間の増加を抑制することができ、高速な三次元サーチ処理が可能になる。
しかし、特許文献1に開示されている方法では、一定以上の高さを有するワークを固定した閾値で探索範囲を限定して画像処理を実行するので、バラ積みされたワークの偏り方によっては、不適切な探索範囲の限定がなされ、本来優先的にピッキングされるべきワークを検出することができないおそれがあるという問題点があった。例えば、より探索範囲を限定するために閾値を高めに設定した場合には、優先的にピッキングされるべきワークの一部が除外されたり、ワークが丸ごと除外されてしまうおそれが生じる。
一方、優先的にピッキングされるべきワークを全て抽出できるように閾値を低めに設定した場合には、探索範囲を限定する効果が少なくなり、三次元サーチ処理の処理時間の増大を抑制することができないという問題点があった。また、バラ積みされたワークの下積み部分まで三次元サーチ処理の探索範囲とする場合には、ピッキング動作における干渉の発生、あるいは形状の一部が隠れることによるワークの姿勢の誤検出等の可能性が高いワークも、すべて三次元サーチ処理の対象になってしまうという問題点も生じる。
本発明は斯かる事情に鑑みてなされたものであり、バラ積み状態のワークであっても、ピッキング動作において干渉しやすく、また姿勢も誤検出しやすいワークを効果的に除外することで、3Dピッキングの実質的な性能を落とすことなく高速に3Dピッキングできるようにロボットのピッキング動作を制御することが可能な画像処理装置、画像処理方法、及びコンピュータプログラムを提供することを目的とする。
上記目的を達成するために第1発明に係る画像処理装置は、バラ積みされたワークを把持し、把持されたワークを所定位置まで移動させるロボットのピッキング動作を制御する画像処理装置において、前記ワークごとの三次元データをワークモデルとして登録するワークモデル登録部と、バラ積みされたワークが搭載されている作業空間を三次元計測して三次元計測データを取得するセンシング部と、三次元計測により取得した三次元計測データに平滑化機能を有するフィルタ処理を施し、高さ方向における前記三次元計測データの近似曲面を生成する近似曲面生成部と、生成された近似曲面又は前記近似曲面を高さ方向に一定のオフセット量だけオフセットしたオフセット曲面よりも高い位置に存在するワークを示す領域であるワーク領域を特定する領域特定部と、特定されたワーク領域に対して、登録されている前記ワークモデルを用いて三次元サーチ処理を実行し、前記作業空間内における前記ワークの位置及び姿勢を特定するサーチ処理実行部とを備えることを特徴とする。
また、第2発明に係る画像処理装置は、第1発明において、前記センシング部は、前記作業空間内のワークを撮像して画像データを取得するワーク撮像部と、撮像して取得された画像データに基づいて、前記三次元サーチ処理の対象となる前記作業空間内における前記ワークの三次元データを三次元計測データとして抽出する三次元データ抽出部とを備えることが好ましい。
また、第3発明に係る画像処理装置は、第1又は第2発明において、前記オフセット量の入力を受け付けるオフセット量入力受付部を有し、前記ワークの形状に応じて、前記オフセット量を変更することができることが好ましい。
次に、上記目的を達成するために第4発明に係る画像処理方法は、バラ積みされたワークを把持し、把持されたワークを所定位置まで移動させるロボットのピッキング動作を制御する画像処理装置で実行することが可能な画像処理方法において、前記画像処理装置は、前記ワークごとの三次元データをワークモデルとして登録する工程と、バラ積みされたワークが搭載されている作業空間を三次元計測して三次元計測データを取得する工程と、三次元計測により取得した三次元計測データに平滑化機能を有するフィルタ処理を施し、高さ方向における前記三次元計測データの近似曲面を生成する工程と、生成された近似曲面又は前記近似曲面を高さ方向に一定のオフセット量だけオフセットしたオフセット曲面よりも高い位置に存在するワークを示す領域であるワーク領域を特定する工程と、特定されたワーク領域に対して、登録されている前記ワークモデルを用いて三次元サーチ処理を実行し、前記作業空間内における前記ワークの位置及び姿勢を特定する工程とを含むことを特徴とする。
また、第5発明に係る画像処理方法は、第4発明において、前記画像処理装置は、前記作業空間内のワークを撮像して画像データを取得する工程と、撮像して取得された画像データに基づいて、前記三次元サーチ処理の対象となる前記作業空間内における前記ワークの三次元データを三次元計測データとして抽出する工程とを含むことが好ましい。
また、第6発明に係る画像処理方法は、第4又は第5発明において、前記画像処理装置は、前記オフセット量の入力を受け付ける工程を含み、前記ワークの形状に応じて、前記オフセット量を変更することができることが好ましい。
次に、上記目的を達成するために第7発明に係るコンピュータプログラムは、バラ積みされたワークを把持し、把持されたワークを所定位置まで移動させるロボットのピッキング動作を制御する画像処理装置で実行することが可能なコンピュータプログラムにおいて、前記画像処理装置を、前記ワークごとの三次元データをワークモデルとして登録するワークモデル登録手段、バラ積みされたワークが搭載されている作業空間を三次元計測して三次元計測データを取得するセンシング手段、三次元計測により取得した三次元計測データに平滑化機能を有するフィルタ処理を施し、高さ方向における前記三次元計測データの近似曲面を生成する近似曲面生成手段、生成された近似曲面又は前記近似曲面を高さ方向に一定のオフセット量だけオフセットしたオフセット曲面よりも高い位置に存在するワークを示す領域であるワーク領域を特定する領域特定手段、及び特定されたワーク領域に対して、登録されている前記ワークモデルを用いて三次元サーチ処理を実行し、前記作業空間内における前記ワークの位置及び姿勢を特定するサーチ処理実行手段として機能させることを特徴とする。
また、第8発明に係るコンピュータプログラムは、第7発明において、前記センシング手段を、前記作業空間内のワークを撮像して画像データを取得するワーク撮像手段、及び撮像して取得された画像データに基づいて、前記三次元サーチ処理の対象となる前記作業空間内における前記ワークの三次元データを三次元計測データとして抽出する三次元データ抽出手段として機能させることが好ましい。
また、第9発明に係るコンピュータプログラムは、第7又は第8発明において、前記画像処理装置を、前記オフセット量の入力を受け付けるオフセット量入力受付手段として機能させ、前記ワークの形状に応じて、前記オフセット量を変更することができることが好ましい。
第1発明、第4発明及び第7発明では、ワークごとの三次元データをワークモデルとして登録しておく。バラ積みされたワークが搭載されている作業空間を三次元計測して三次元計測データを取得し、取得した三次元計測データに平滑化機能を有するフィルタ処理を施し、高さ方向における三次元計測データの近似曲面を生成する。生成された近似曲面又は近似曲面を高さ方向に一定のオフセット量だけオフセットしたオフセット曲面よりも高い位置に存在するワークを示す領域であるワーク領域を特定し、特定されたワーク領域に対して、登録されているワークモデルを用いて三次元サーチ処理を実行して、作業空間内におけるワークの位置及び姿勢を特定する。これにより、ロボットの把持対象として検出されることが困難であったバラ積み時に下方に位置するワークについては、三次元サーチ処理の対象から除外することができるので、三次元サーチ処理の探索範囲を限定的にすることができ、演算処理負荷を軽減することが可能となる。また、ワークがピッキングされる都度近似曲面を再生成することにより、ピッキングによるバラ積み状態の変動に追随して最適なワーク領域を特定することが可能となる。さらに、バラ積み状態の偏り等に起因して、特にバラ積み時に下方に位置するワークに顕著な、姿勢の誤認識についても、改善効果が期待できる。
第2発明、第5発明及び第8発明では、作業空間内のワークを撮像して画像データを取得し、撮像して取得された画像データに基づいて、三次元サーチ処理の対象となる作業空間内におけるワークの三次元データを三次元計測データとして抽出するので、高価な三次元形状センサを用いることなく、作業空間内におけるワークのバラ積み状態を三次元計測データとして取得することが可能となる。
第3発明、第6発明及び第9発明では、オフセット量の入力を受け付け、ワークの形状に応じて、オフセット量を変更することができるので、ピッキング対象とすることが可能なワークがワーク領域から消えない範囲で、可能な限りワーク領域を小さくするよう調整することができ、ワークの姿勢の誤認識を生じさせずに演算処理負荷を最小限に抑制することが可能となる。
本発明によれば、ロボットの把持対象として検出されることが困難であったバラ積み時に下方に位置するワークについては、三次元サーチ処理の対象から除外することができるので、三次元サーチ処理の探索範囲を限定的にすることができ、演算処理負荷を軽減することが可能となる。また、ワークがピッキングされる都度近似曲面を再生成することにより、ピッキングによるバラ積み状態の変動に追随して最適なワーク領域を特定することが可能となる。さらに、バラ積み状態の偏り等に起因して、特にバラ積み時に下方に位置するワークに顕著な、姿勢の誤認識についても、改善効果が期待できる。
以下、本発明の実施の形態に係る画像処理装置について、図面に基づいて具体的に説明する。本実施の形態では、ロボットのピッキング動作において、ロボットの把持部の動作の制御に用いている。
図1は、本発明の実施の形態に係る画像処理装置を用いた、ピッキングシステムの構成例を示すブロック図である。画像処理装置1には、バラ積みされたワーク等を撮像する撮像部2がセンシング部として接続されており、キーボード111及びマウス112等の入力装置で画像処理の設定を行い、表示装置113で設定や動作状態の確認を行うことができる。
図2は、本発明の実施の形態に係る画像処理装置1の構成を示すブロック図である。図2に示すように、本実施の形態に係る画像処理装置1は、少なくともCPU11、メモリ12、ハードディスク等の記憶装置13、I/Oインタフェース14、ビデオインタフェース15、通信インタフェース16、可搬型ディスクドライブ17及び上述したハードウェアを接続する内部バス18で構成されている。
CPU11は、内部バス18を介して画像処理装置1の上述したようなハードウェア各部と接続されており、上述したハードウェア各部の動作を制御するとともに、記憶装置13に記憶しているコンピュータプログラム100に従って、種々のソフトウェア的機能を実行する。メモリ12は、SRAM、SDRAM等の揮発性メモリで構成され、コンピュータプログラム100の実行時にロードモジュールが展開され、コンピュータプログラム100の実行時に発生する一時的なデータ等を記憶する。
記憶装置13は、内蔵される固定型記憶装置(ハードディスク)、ROM等で構成されている。記憶装置13に記憶しているコンピュータプログラム100は、プログラム及びデータ等の情報を記録したDVD、CD−ROM等の可搬型記録媒体90から、可搬型ディスクドライブ17によりダウンロードされ、実行時には記憶装置13からメモリ12へ展開して実行される。もちろん、通信インタフェース16を介してネットワークに接続されている外部のコンピュータからダウンロードされたコンピュータプログラムであっても良い。
I/Oインタフェース14は、キーボード111、マウス112等の入力装置と接続され、データの入力を受け付ける。また、ビデオインタフェース15は、CRTモニタ、LCD等の表示装置113と接続され、画像処理装置1の設定データ、ロボットの動作状態等を表示する。
通信インタフェース16は内部バス18に接続されており、インターネット、LAN、WAN等の外部のネットワークに接続されることにより、ロボットコントローラ4、撮像部2、外部のコンピュータ等とデータ送受信することが可能となっている。
図1に戻って、撮像部2は、作業空間内にバラ積みされたワークを三次元的に撮像する。図3は、本発明の実施の形態に係る画像処理装置1の撮像部2の構成を示す例示図である。
図3に示すように、本実施の形態に係る撮像部2は、1個のプロジェクタ21を中心として、前後左右方向に1基ずつ、合計4基のカメラ22a〜22dを備えている。これにより、バラ積みされたワークの状態によらず、死角を作ることなく作業空間内におけるワークそれぞれの位置及び姿勢を検出するための三次元データを取得することができる。もちろん、カメラ22の数は少なくとも2基以上備えていれば足り、プロジェクタ21を除いたカメラ22だけの構成でも三次元データを生成することができる。
本実施の形態では、プロジェクタ21は、バラ積み状態のワークの位置及び姿勢を検出するために、縞状の縞パターンを投光する。縞パターンを投光することにより、複数のカメラ22それぞれで撮像された画像データのうち、どこが同一の画素であるかを特定することが可能となる。プロジェクタ21は、ワークがバラ積み状態で積載される作業空間の上方に配置されていることが好ましい。
プロジェクタ21の光源は、例えば白色光を出射するハロゲンランプ、白色光を出射する白色LED(発光ダイオード)等であれば良い。出射口の近傍に、図示しないパターン生成部を備え、縞パターンを生成する。パターン生成部としては、例えばDMD(デジタルマイクロミラーデバイス)、LCOS(登録商標)(Liquid Crystal on Silicon:反射型液晶素子)、マスク等であれば良い。
カメラ22a〜22dは、プロジェクタ21を中心として、前後左右方向の4か所に配置されている。カメラ22a〜22dは、例えばモノクロCCD(電荷結合素子)、CMOS(相補性金属酸化膜半導体)イメージセンサ等の撮像素子を備えている。撮像素子の画素ごとに受光量に対応する受光信号が出力される。そして、受光信号に基づいて画像が生成される。
図1に戻って、画像処理装置1はロボットの動作を制御するロボットコントローラ4とデータ通信することが可能に接続されている。画像処理装置1で生成された動作信号は、ロボットコントローラ4においてロボット5の動作信号に変換され、ロボット5の動作及びロボット5の把持部50の動作を制御する。
なお、ロボットコントローラ4にはペンダント6がデータ通信することが可能に接続されており、ロボットの動作に関する設定データの入力を受け付ける。
以上の構成のピッキングシステムの動作について説明する。図4は、本発明の実施の形態に係る画像処理装置1のCPU11のピッキング動作用のデータ設定処理の手順を示すフローチャートである。図4に示すように、画像処理装置1のCPU11は、三次元サーチ処理の対象となるワークWのワークモデルを登録しておく(ステップS401)。
CPU11は、ロボット5の把持部50のモデルを登録する(ステップS402)。把持部50の形状だけでなく、どの部分で把持するか、どの方向で把持するか等に関する情報も同時に登録しておくことが好ましい。
CPU11は、ロボット5の把持部50の選択を受け付ける(ステップS403)。実際のロボット5で用いられている把持部50を特定するためである。CPU11は、三次元サーチ処理の対象となるワークWを把持するときのロボット5の把持部50の位置及び姿勢を登録する(ステップS404)。
CPU11は、把持する対象となるワークWのすべての箇所について、ロボット5の把持部50の位置及び姿勢を登録した旨のユーザ入力を受け付けたか否かを判断する(ステップS405)。CPU11が、登録した旨のユーザ入力を受け付けていないと判断した場合(ステップS405:NO)、CPU11は、処理をステップS403へ戻し、上述した処理を繰り返す。CPU11が、登録した旨のユーザ入力を受け付けたと判断した場合(ステップS405:YES)、CPU11は、処理を終了する。
そして、登録されたワークモデルに基づいて、作業空間を撮像した画像データを三次元サーチ処理することにより、把持対象となる部位を検出する。
ワークモデルを登録する場合、本実施の形態では、CADデータを用いて三次元サーチ処理の対象となるワークモデルを登録して、三次元サーチ処理を実行する。
本実施の形態では、後述する特徴点を抽出する処理を、ワークモデルに対して事前に行っておく。そして、作業空間を撮像した三次元データの中で、ワークモデルの各特徴点のXYZ座標値が一定以上合致する状態の位置姿勢を、三次元サーチ処理によって求める。座標値が合致しているか否かは、特徴点と最近傍にある三次元データが、一定の閾値以内の距離にあるかどうかで判断することができる。
そして、ワークモデルに含まれる全特徴点に対する、合致した特徴点の存在比率をスコア化し、位置姿勢と共に算出したスコア値を三次元サーチ処理の結果として算出する。スコア値が一定以下のサーチ結果を除外する、あるいはスコア値が高い順に把持対象とすることにより、三次元サーチ処理の結果の妥当性を考慮しながら、確実にワークWを把持することができるようロボット5の把持部50を誘導することができる。
図5は、本発明の実施の形態に係る画像処理装置1で三次元サーチ処理の対象となるワークの例示図である。以下、図5に示す形状のワーク(シャフトホルダ)Wをバラ積みする場合を例に挙げて説明するが、ワークWの形状がこれに限定されないことは言うまでもない。
本実施の形態では、ワークモデルの登録として、CADデータを用いて登録しているが、特にこれに限定する必要はない。図6は、本発明の実施の形態に係る画像処理装置1のCPU11のCADデータを用いたワークモデル登録処理(ステップS401)の手順を示すフローチャートである。
図6において、画像処理装置1のCPU11は、ワークWのCADデータを読み出し(ステップS601)、ワークWの外接直方体の中心をモデル座標系の原点として設定する(ステップS602)。
CPU11は、六面図に相当する高さ画像を生成する(ステップS603)。具体的には、正面図、背面図、平面図、底面図、右側面図、左側面図のそれぞれについて高さ画像を生成する。
図7は、本発明の実施の形態に係る画像処理装置1のCADデータを用いたワークWの高さ画像の例示図である。図7(a)は、図5に示すZ軸の+側から見た高さ画像(平面図)を、図7(b)は、図5に示すZ軸の−側から見た高さ画像(底面図)を、図7(c)は、図5に示すX軸の+側から見た高さ画像(右側面図)を、図7(d)は、図5に示すX軸の−側から見た高さ画像(左側面図)を、図7(e)は、図5に示すY軸の+側から見た高さ画像(背面図)を、図7(f)は、図5に示すY軸の−側から見た高さ画像(正面図)を、それぞれ示している。図7(a)〜図7(f)は、座標軸の原点をCADデータの外接直方体の中心としている。高さは、X軸、Y軸、Z軸それぞれの座標値として表すことができる。
図6に戻って、CPU11は、生成した高さ画像のうち、同一の高さ画像を削除する(ステップS604)。例えばワークが円柱形である場合、長方形に見える正面図、背面図、右側面図、左側面図が一致し、環状に見える平面図、底面図が一致するので、正面図と平面図とを残して残りを削除する。CPU11は、残った高さ画像をワークモデルとして記憶装置13に記憶(登録)する(ステップS605)。
なお、ワークモデルは、特徴点の集合として生成されることが好ましい。特徴点とは、三次元サーチ処理において必要な特徴を示す三次元座標を持つ点を意味しており、例えば形状の輪郭を表す輪郭上の特徴点、表面形状を表す表面上の特徴点の2種類の特徴点で構成されていれば良い。
図8は、本発明の実施の形態に係る画像処理装置1のワークモデルの特徴点抽出の例示図である。図8(a)は、ワークWの平面図における特徴点抽出の例示図であり、図8(b)は、ワークWのモデル座標系を含む特徴点抽出の3D表示の例示図である。
例えば図8(a)に示すように、輪郭上の特徴点131は、高さが大きく変化する部分等のエッジ抽出を行い、さらに細線化処理した部分を一定間隔で抽出している。また、表面上の特徴点132は、ワークモデルの表面を一定間隔で抽出している。したがって、3D表示すると図8(b)のようになる。
図9は、本発明の実施の形態に係る画像処理装置1の機能ブロック図である。図9において、センシング部1001は、バラ積みされたワークWが搭載されている作業空間を、例えば撮像部2を介して、三次元計測して三次元計測データを取得する。本実施の形態では、センシング部1001は、ワーク撮像部1002及び三次元データ抽出部1003を備えている。
ワーク撮像部1002は、作業空間内のワークWを撮像部2で撮像して画像データを取得する。三次元データ抽出部1003は、撮像して取得された画像データに基づいて、三次元サーチ処理の対象となる作業空間内におけるワークWの三次元データを抽出して三次元計測データとする。
ワークモデル登録部1004は、ワークWのCADデータに基づいて上述した方法でワークモデルとして記憶装置13に登録する。登録されたワークモデルを用いて三次元サーチ処理を実行する。近似曲面生成部1005は、三次元計測により取得した三次元計測データに基づいて、高さ方向における三次元計測データの近似曲面を生成する。
ここで、三次元計測データを用いた従来の探索範囲の限定方法は、近似曲面を生成することなく、高さ方向の閾値を定めておき、閾値以上の高さを有する部位に限定して画像処理を実行していた。すなわち、閾値以上の高さを有する部位に限定して三次元サーチ処理を実行するので、閾値以上の高さを有する部位を把持対象として抽出する結果となる。図10は、従来の閾値による探索範囲の限定方法を用いた場合の、ワークWの把持対象となる部位の抽出方法を説明するための三次元イメージ図である。図10(a)は、撮像部2で撮像された画像データを3D表示した例示図であり、図10(b)は、撮像された画像データから高さ方向の閾値以上の高さを有する部位のみを抽出して表示した例示図である。
図10(a)に示すように、複数のワークがバラ積みされている場合、ワーク61、62、63のようにそれぞれのワークの上方に他のワークが存在せず、把持された場合であっても他のワークと干渉しにくいワークが存在する。把持対象としては、こういうワーク(部位)を優先して抽出しておきたい。
しかし、従来のように高さ方向の閾値で一定の高さ以上であるか否かで抽出すると、図10(b)に示すように、ワーク62はそのまま抽出されているものの、ワーク61については抽出されずに把持対象から除外されている。また、ワーク63については、高さ方向の閾値より低い部位が存在するため、その部位が欠けて表示されている。したがって、ワークのバラ積み状態によっては、本来は把持対象とするべきワークが抽出されない、抽出される部位に欠損が生じる等、不適切な抽出状態となるおそれがあった。
一方、優先的にピッキングされるべきワークを全て抽出できるように閾値を低めに設定した場合には、探索範囲を限定する効果が少なくなり、三次元サーチ処理の処理時間の増大を抑制することができない。また、バラ積みされたワークの下積み部分まで三次元サーチ処理の探索範囲とする場合には、ピッキング動作における干渉の発生、あるいは形状の一部が隠れることによるワークの姿勢の誤検出等の可能性が高いワークも、すべて三次元サーチ処理の対象になってしまうという問題点も生じていた。
そこで、本実施の形態では、バラ積みされている状態のワークWについて、三次元計測データに基づいて近似曲面を生成し、近似曲面より上方に位置するワークWを把持対象として抽出する。すなわち、図9において領域特定部1007は、生成された近似曲面(又は後述する、近似曲面を高さ方向に一定のオフセット量だけオフセットしたオフセット曲面)よりも高い位置に存在するワークを示す領域であるワーク領域を特定する。特定されたワーク領域に存在するワークが、三次元サーチ処理の対象となり、最終的にロボット5の把持部50の把持対象となる。
本実施の形態では、近似曲面を以下の方法で決定する。図11は、本発明の実施の形態に係る画像処理装置1の近似空間の生成方法の説明図である。いずれも三次元計測データに基づいた高さ画像を表しており、明度が明るい部分ほど高い部位であることを示している。図11(a)に示すように、まず作業空間を撮像した画像データを取得する。バラ積みされたワークのすべてが画像データに含まれている。
次に、取得した画像データを画像縮小した状態で、フィルタ処理を実行する。本実施の形態ではメディアンフィルタを用いているが、とくにこれに限定されるものではない。例えば広範囲にわたってガウシアンフィルタを用いても良いし、一般的な平均化フィルタを用いても良い。
フィルタ処理実行後の画像データを拡大(補間)することにより、図11(b)のように全体がボケて見えるような画像に変換される。これが近似曲面である。つまり、本実施の形態では、近似曲面として曲面の数式等を求めるものではなく、数式を求める場合と比べて曲面の数式の定義が不要となるので、煩雑な処理が不要となる。ただし、近似曲面を求める方法は特にこれに限定する必要はなく、規定した数式を用いることで近似曲面を定義することもできる。
そして、近似曲面よりも高い位置に存在するワークを示す領域を抽出対象となるワーク領域として特定する。これにより、ワーク領域に存在するワークが図11(c)に示すように表示される。つまり、ワーク62はそのまま抽出されていることは変わらないが、ワーク61についても除外されずに表示されている。また、ワーク63についても欠けている部位はなく、ワーク63全体が表示されている。したがって、バラ積みされたワークの下方部等、把持対象として不適切なワークを除外しながら、ワーク自身の上方に他のワークが存在しない等の優先的に抽出したいワークを確実に抽出することが可能となる。
なお、画像縮小の比率、フィルタ処理のサイズについては、三次元サーチ処理の対象となるワークWの大きさに基づいて変更すれば良い。例えばワークのサイズが大きい場合には、画像縮小の比率を上げたり、フィルタ処理のサイズを大きくすることが好ましい。逆にワークのサイズが小さい場合には、画像縮小に比率を下げたり、フィルタ処理のサイズを小さくすることが好ましい。これにより、ワークのサイズが大きい場合には、より広い範囲の三次元計測データを参照して近似曲面を求めることができ、ワークのサイズが小さい場合には、狭い範囲の三次元計測データを参照して近似曲面を求めることができる。したがって、把持対象となるワークを抽出するのに適した近似曲面を生成することができる。
また、生成した近似曲面を一定量だけ高さ方向にオフセットしても良い。オフセット量を調整することにより、バラ積みされたワークの下方部等、把持対象として不適切なワークのデータを、どの程度把持対象から除外するかを調整することができる。図12は、本発明の実施の形態に係る画像処理装置1の近似曲面のオフセット高さを説明するための模式断面図である。
図12(a)に示すように、バラ積みされたワークWに対して仮想的な近似曲面81が求まる。ここで、ワークWの上方の太破線は、撮像部2により三次元計測されたデータが示す位置を意味している。つまり、三次元計測データとして視認することが可能な部分を示している。
図12(a)の状態では、ワークが載置されている底面Fは近似曲面上に位置するため、底面Fは除外されずに三次元サーチ処理の対象に含まれてしまう。本来処理が不要な対象が三次元サーチ処理の探索範囲に含まれてしまうため、処理時間が無駄にかかる結果となってしまう。また、ワークW2も近似曲面上に位置するので除外されずに把持対象とされてしまう。そこで、図12(b)に示すように、近似曲面81をΔhだけ上方にオフセットして、新たな近似曲面82としている。
近似曲面81をΔhだけ上方にオフセットすることにより、底面Fは近似曲面82よりも下方に位置する。したがって、把持対象から底面Fは除外される。また、近似曲面82よりも下方に位置するワークW2、ワークW3も同時に除外される。近似曲面82よりも上方にあるワークに探索範囲が限定された状態で、三次元サーチ処理が実行される。結果として、ロボット5の把持部50は、周辺よりも高い位置にあり、三次元サーチ処理の結果としてスコア値も高くなるワークW1からピッキングする。
図12(c)は、ワークW1がピッキングされた状態を示している。ワークW1がピッキングされて取り除かれることにより、ワークのバラ積み状態が変動する。したがって、ピッキングされる都度、近似曲面83を再計算して求めなおしている。
近似曲面83の場合、ワークW2及びワークW3が近似曲面83上に位置しているため、このままでは把持対象として抽出されてしまう。ここで、図12(d)に示すように、近似曲面83をΔhだけ上方にオフセットして、新たな近似曲面84としている。
近似曲面83をΔhだけ上方にオフセットすることにより、ワークW2及びW3は近似曲線84よりも下方に位置する。したがって、把持対象からワークW2及びW3は除外される。
このように、ワークがピッキングされる都度、近似曲面を求めなおしながら把持対象となるワークを特定していくことにより、ピッキング動作において干渉しやすく、また形状の一部が隠れることで姿勢も誤検出しやすいバラ積みの下方に位置するワークを効果的に除外しながら、効率よくピッキングしていくことができる。
図13は、本発明の実施の形態に係る画像処理装置1におけるワークWの三次元サーチ処理の結果の例示図である。近似曲面による探索範囲の限定を行ったワークのバラ積み状態の高さ画像に対し、実際に検出されたワークWのワークモデルの特徴点を、三次元サーチ処理の結果として重畳表示している。図13に示すように、バラ積みの下方に位置するワークは三次元サーチ処理の探索範囲から除外されている一方、優先的に把持対象としたいワークについては、全て検出されている様子を確認することができる。
なお、オフセット量は、ワークの大きさに連動して自動調整されることが好ましい。例えば、ワークのサイズが大きい場合にはオフセット量を大きくし、ワークのサイズが小さい場合はオフセット量を小さくするように連動させる。具体的には、ワークのCADデータの外接直方体に対し、X軸方向、Y軸方向、Z軸方向のサイズの中で最小の長さの値を求め、求めた値に対して、一定割合を乗算した値をオフセット量としても良い。ただし、必ずしも自動調整させる必要はなく、オフセット量入力受付部1006からユーザが入力しても良い。
次に、ワークモデルのモデル座標系に対して、相対的な位置データとして、把持される位置及び該位置において把持するロボット5の把持部50の姿勢で構成される把持データを設定しておく。具体的には、CADデータに基づいて生成された複数のワークモデルそれぞれに対して、モデル座標系に対する把持データの設定を繰り返し登録し、複数の把持データをワークモデルごとに対応付けて記憶装置13に記憶しておく。
図9に戻って、サーチ処理実行部1008は、領域特定部1007で特定されたワーク領域に対して、ワークモデル登録部1004に登録されているワークモデルを用いて三次元サーチ処理を実行する。図1に示すロボットコントローラ4は、存在が確認されたワークモデルに設定された把持データに基づいてロボット5の把持部50の動作を制御する制御信号を受信して、把持部50の動作を制御する。
図14は、本発明の実施の形態に係る画像処理装置1のCPU11の実測データを用いたピッキング処理の手順を示すフローチャートである。
図14において、画像処理装置1のCPU11は、バラ積みされているワークを含む作業空間を三次元計測して(ステップS1401)、三次元計測データを取得する。CPU11は、三次元計測データに基づいて近似曲面を生成する(ステップS1402)。
CPU11は、生成された近似曲面に基づいてワーク領域を特定する(ステップS1403)。CPU11は、三次元サーチ処理を実行する(ステップS1404)。
CPU11は、三次元サーチ処理においてワークを検出したか否かを判断する(ステップS1405)。CPU11が、ワークを検出していないと判断した場合(ステップS1405:NO)、CPU11は、作業空間に把持対象となるワークが存在しないと判断して処理を終了する。
CPU11が、ワークを検出したと判断した場合(ステップS1405:YES)、CPU11は、検出されたワークの位置及び姿勢を特定し(ステップS1406)、ロボット5の把持部50の位置及び姿勢を特定する(ステップS1407)。CPU11は、ピッキング時に他のワークと干渉するか否かを判断する(ステップS1408)。
CPU11が、干渉しないと判断した場合(ステップS1408:NO)、CPU11は、把持対象となるワークをピッキングするよう動作を制御し(ステップS1409)、処理をステップS1401に戻して上述した処理を繰り返す。CPU11が、干渉すると判断した場合(ステップS1408:YES)、CPU11は、同じワーク内に別の把持可能な部位があるか否かを判断する(ステップS1410)。
CPU11が、同じワーク内に別の把持可能な部位がないと判断した場合(ステップS1410:NO)、CPU11は、別のワークがあるか否かを判断する(ステップS1411)。CPU11が、同じワーク内に別の把持可能な部位があると判断した場合(ステップS1410:YES)、又は別のワークがあると判断した場合(ステップS1411:YES)、CPU11は、処理をステップS1406へ戻し上述した処理を繰り返す。
CPU11が、別のワークがないと判断した場合(ステップS1411:NO)、CPU11は、把持対象となるワークが存在しないと判断して処理を終了する。
以上のように本実施の形態によれば、ロボット5の把持対象として検出されることが困難であったバラ積み時に下方に位置するワークWを、三次元サーチ処理の対象から除外することができるので、三次元サーチ処理の探索範囲を限定的にすることができる。これにより、優先的に把持対象としたいワークを確実に抽出した状態で、不要なワークのみを除外することができるため、3Dピッキングの実質的な性能を落とさずに、演算処理負荷を軽減することが可能となる。また、ワークWがピッキングされる都度、近似曲面を再生成することにより、ピッキングによるバラ積み状態の変動に追随して最適なワーク領域を特定することが可能となる。さらに、バラ積み状態の偏り等に起因して、特にバラ積み時に下方に位置するワークWに顕著な、姿勢の誤認識についても、改善効果が期待できる。
なお、本発明は上記実施例に限定されるものではなく、本発明の趣旨の範囲内であれば多種の変更、改良等が可能である。例えば、三次元サーチ処理の対象として特徴点の座標値群を用いているが、ロボット5の把持部50が把持できる対象を特定できる方法であれば、特にこれに限定されるものではない。
1 画像処理装置
2 撮像部
4 ロボットコントローラ
5 ロボット
11 CPU
50 把持部
W ワーク
2 撮像部
4 ロボットコントローラ
5 ロボット
11 CPU
50 把持部
W ワーク
Claims (9)
- バラ積みされたワークを把持し、把持されたワークを所定位置まで移動させるロボットのピッキング動作を制御する画像処理装置において、
前記ワークごとの三次元データをワークモデルとして登録するワークモデル登録部と、
バラ積みされたワークが搭載されている作業空間を三次元計測して三次元計測データを取得するセンシング部と、
三次元計測により取得した三次元計測データに平滑化機能を有するフィルタ処理を施し、高さ方向における前記三次元計測データの近似曲面を生成する近似曲面生成部と、
生成された近似曲面又は前記近似曲面を高さ方向に一定のオフセット量だけオフセットしたオフセット曲面よりも高い位置に存在するワークを示す領域であるワーク領域を特定する領域特定部と、
特定されたワーク領域に対して、登録されている前記ワークモデルを用いて三次元サーチ処理を実行し、前記作業空間内における前記ワークの位置及び姿勢を特定するサーチ処理実行部と
を備えることを特徴とする画像処理装置。 - 前記センシング部は、
前記作業空間内のワークを撮像して画像データを取得するワーク撮像部と、
撮像して取得された画像データに基づいて、前記三次元サーチ処理の対象となる前記作業空間内における前記ワークの三次元データを三次元計測データとして抽出する三次元データ抽出部と
を備えることを特徴とする請求項1に記載の画像処理装置。 - 前記オフセット量の入力を受け付けるオフセット量入力受付部を有し、
前記ワークの形状に応じて、前記オフセット量を変更することができることを特徴とする請求項1又は2に記載の画像処理装置。 - バラ積みされたワークを把持し、把持されたワークを所定位置まで移動させるロボットのピッキング動作を制御する画像処理装置で実行することが可能な画像処理方法において、
前記画像処理装置は、
前記ワークごとの三次元データをワークモデルとして登録する工程と、
バラ積みされたワークが搭載されている作業空間を三次元計測して三次元計測データを取得する工程と、
三次元計測により取得した三次元計測データに平滑化機能を有するフィルタ処理を施し、高さ方向における前記三次元計測データの近似曲面を生成する工程と、
生成された近似曲面又は前記近似曲面を高さ方向に一定のオフセット量だけオフセットしたオフセット曲面よりも高い位置に存在するワークを示す領域であるワーク領域を特定する工程と、
特定されたワーク領域に対して、登録されている前記ワークモデルを用いて三次元サーチ処理を実行し、前記作業空間内における前記ワークの位置及び姿勢を特定する工程と
を含むことを特徴とする画像処理方法。 - 前記画像処理装置は、
前記作業空間内のワークを撮像して画像データを取得する工程と、
撮像して取得された画像データに基づいて、前記三次元サーチ処理の対象となる前記作業空間内における前記ワークの三次元データを三次元計測データとして抽出する工程と
を含むことを特徴とする請求項4に記載の画像処理方法。 - 前記画像処理装置は、
前記オフセット量の入力を受け付ける工程を含み、
前記ワークの形状に応じて、前記オフセット量を変更することができることを特徴とする請求項4又は5に記載の画像処理方法。 - バラ積みされたワークを把持し、把持されたワークを所定位置まで移動させるロボットのピッキング動作を制御する画像処理装置で実行することが可能なコンピュータプログラムにおいて、
前記画像処理装置を、
前記ワークごとの三次元データをワークモデルとして登録するワークモデル登録手段、
バラ積みされたワークが搭載されている作業空間を三次元計測して三次元計測データを取得するセンシング手段、
三次元計測により取得した三次元計測データに平滑化機能を有するフィルタ処理を施し、高さ方向における前記三次元計測データの近似曲面を生成する近似曲面生成手段、
生成された近似曲面又は前記近似曲面を高さ方向に一定のオフセット量だけオフセットしたオフセット曲面よりも高い位置に存在するワークを示す領域であるワーク領域を特定する領域特定手段、及び
特定されたワーク領域に対して、登録されている前記ワークモデルを用いて三次元サーチ処理を実行し、前記作業空間内における前記ワークの位置及び姿勢を特定するサーチ処理実行手段
として機能させることを特徴とするコンピュータプログラム。 - 前記センシング手段を、
前記作業空間内のワークを撮像して画像データを取得するワーク撮像手段、及び
撮像して取得された画像データに基づいて、前記三次元サーチ処理の対象となる前記作業空間内における前記ワークの三次元データを三次元計測データとして抽出する三次元データ抽出手段
として機能させることを特徴とする請求項7に記載のコンピュータプログラム。 - 前記画像処理装置を、前記オフセット量の入力を受け付けるオフセット量入力受付手段として機能させ、
前記ワークの形状に応じて、前記オフセット量を変更することができることを特徴とする請求項7又は8に記載のコンピュータプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017040635A JP2018146347A (ja) | 2017-03-03 | 2017-03-03 | 画像処理装置、画像処理方法、及びコンピュータプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017040635A JP2018146347A (ja) | 2017-03-03 | 2017-03-03 | 画像処理装置、画像処理方法、及びコンピュータプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018146347A true JP2018146347A (ja) | 2018-09-20 |
Family
ID=63591096
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017040635A Pending JP2018146347A (ja) | 2017-03-03 | 2017-03-03 | 画像処理装置、画像処理方法、及びコンピュータプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2018146347A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109766784A (zh) * | 2018-12-21 | 2019-05-17 | 北京理工大学 | 基于单目图像的胶囊机器人交互控制方法 |
JP2020126363A (ja) * | 2019-02-01 | 2020-08-20 | 株式会社小松製作所 | 画像処理システム、画像処理方法、学習済みモデルの生成方法、および学習用データセット |
US11762394B2 (en) | 2018-11-01 | 2023-09-19 | Nec Corporation | Position detection apparatus, position detection system, remote control apparatus, remote control system, position detection method, and program |
-
2017
- 2017-03-03 JP JP2017040635A patent/JP2018146347A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11762394B2 (en) | 2018-11-01 | 2023-09-19 | Nec Corporation | Position detection apparatus, position detection system, remote control apparatus, remote control system, position detection method, and program |
CN109766784A (zh) * | 2018-12-21 | 2019-05-17 | 北京理工大学 | 基于单目图像的胶囊机器人交互控制方法 |
JP2020126363A (ja) * | 2019-02-01 | 2020-08-20 | 株式会社小松製作所 | 画像処理システム、画像処理方法、学習済みモデルの生成方法、および学習用データセット |
JP7365122B2 (ja) | 2019-02-01 | 2023-10-19 | 株式会社小松製作所 | 画像処理システムおよび画像処理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11724400B2 (en) | Information processing apparatus for determining interference between object and grasping unit, information processing method, and storage medium | |
JP4309439B2 (ja) | 対象物取出装置 | |
JP6892286B2 (ja) | 画像処理装置、画像処理方法、及びコンピュータプログラム | |
CN111151463B (zh) | 一种基于3d视觉的机械臂分拣抓取系统及方法 | |
JP4004899B2 (ja) | 物品の位置姿勢検出装置及び物品取出し装置 | |
JP2004050390A (ja) | ワーク取出し装置 | |
WO2010131371A1 (en) | Object recognition method, object recognition apparatus, and autonomous mobile robot | |
US20170142340A1 (en) | Image processing apparatus, robot system, robot, and image processing method | |
CN110926330B (zh) | 图像处理装置和图像处理方法 | |
WO2019228523A1 (zh) | 物体空间位置形态的确定方法、装置、存储介质及机器人 | |
JPWO2020144784A1 (ja) | 画像処理装置、作業ロボット、基板検査装置および検体検査装置 | |
JP7377627B2 (ja) | 物体検出装置、物体把持システム、物体検出方法及び物体検出プログラム | |
US11590657B2 (en) | Image processing device, control method thereof, and program storage medium | |
US9595095B2 (en) | Robot system | |
JP2010133752A (ja) | 形状測定装置およびプログラム | |
JP2018126862A (ja) | 干渉判定装置、干渉判定方法、コンピュータプログラム | |
JP2018146347A (ja) | 画像処理装置、画像処理方法、及びコンピュータプログラム | |
JP2021033712A (ja) | 画像処理装置、撮像装置、ロボット及びロボットシステム | |
JP6040264B2 (ja) | 情報処理装置、情報処理装置の制御方法、およびプログラム | |
JP2013072857A (ja) | 3次元位置・姿勢認識装置およびその方法、プログラム | |
CN116175542A (zh) | 抓取控制方法、装置、电子设备和存储介质 | |
JP7066671B2 (ja) | 干渉判定装置、干渉判定方法、プログラム及びシステム | |
JP7481867B2 (ja) | 制御装置及びプログラム | |
CN116529760A (zh) | 抓取控制方法、装置、电子设备和存储介质 | |
JP7161857B2 (ja) | 情報処理装置、情報処理方法、及びプログラム |