JP6632208B2 - 情報処理装置、情報処理方法、プログラム - Google Patents

情報処理装置、情報処理方法、プログラム Download PDF

Info

Publication number
JP6632208B2
JP6632208B2 JP2015061687A JP2015061687A JP6632208B2 JP 6632208 B2 JP6632208 B2 JP 6632208B2 JP 2015061687 A JP2015061687 A JP 2015061687A JP 2015061687 A JP2015061687 A JP 2015061687A JP 6632208 B2 JP6632208 B2 JP 6632208B2
Authority
JP
Japan
Prior art keywords
orientation
model
deriving
measurement
partial
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.)
Active
Application number
JP2015061687A
Other languages
English (en)
Other versions
JP2016179534A (ja
Inventor
岡崎 洋
洋 岡崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2015061687A priority Critical patent/JP6632208B2/ja
Priority to US15/077,783 priority patent/US9984291B2/en
Publication of JP2016179534A publication Critical patent/JP2016179534A/ja
Application granted granted Critical
Publication of JP6632208B2 publication Critical patent/JP6632208B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/75Determining position or orientation of objects or cameras using feature-based methods involving models
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1612Programme controls characterised by the hand, wrist, grip control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/243Classification techniques relating to the number of classes
    • G06F18/24323Tree-organised classifiers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/42Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39543Recognize object and plan hand shapes in grasping movements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds

Description

本発明は、物体の形状を表すモデルを用いて位置姿勢を計測する技術に関する。
工場などの生産ラインにおいて、ばら積みされた計測対象物体の中から一個体を、ビジョンシステムを用いて特定し、三次元位置姿勢を計測することで、ロボットに取り付けたハンドにより把持を行う、ばら積みピッキング技術が近年開発されている。計測対象物体の3次元CADデータを用いて、位置姿勢を算出するための認識モデルを自動作成し、認識モデルと距離計測で得られた計測情報をフィッティングする手法が存在する。この方法によればビジョンシステムを計測対象物体毎にカスタマイズしたりする必要がなく、3次元CADデータを入れ替えるだけで計測対象物体個別への対応が済むので有効な方法である。
また、ロボットに取り付けたハンドにより把持を行うため、ハンドによる把持の際に把持候補計測対象物体とパレットとの干渉判定を行い把持可能性のチェックをした上で、把持候補として判定することにおいても、計測対象物体の幾何情報が必要となるため、この機能の実現に関しても3次元CADデータを用いることが必要となる。
特開平5−127724号公報
特許文献1では、2次元画像の輪郭線を用いて、計測対象物体中のある特定の部位を認識することにより、すなわち、計測対象物体の全体ではなく部分を認識することにより、計測対象物体の位置姿勢を算出することが開示されている。
3次元CADモデルを利用した位置姿勢においても、計測対象物体の一部分に対応する部分モデルを利用することで、認識処理を行うことは可能である。しかしながら、そのような部分モデルを利用してハンドによる把持の際に把持候補計測対象物体とパレットとの干渉判定を行った場合に正しく判定できないと言う課題がある。
上記課題を解決するために、本発明の情報処理装置は、例えば、山積みされた複数の物体に対して、距離情報を取得する距離情報取得手段と、前記距離情報と、前記物体の部分的な形状を表す部分モデルとに基づいて、前記複数の物体のうちの計測対象物体の位置姿勢を導出する導出手段と、前記物体の三次元CADデータから得られる前記物体の全体形状を表す全体モデルに基づいて、前記計測対象物体を保持する際の保持手段による保持動作の際に、前記計測対象物体と前記計測対象物体を格納する容器との間に干渉が生じるかを判定する干渉判定手段とを備える。
本発明によれば、部分モデルを用いて物体の位置姿勢を導出した場合でも、物体とパレットとの間の干渉判定を正しく判定することができる。
第1〜第3の実施形態における位置姿勢計測装置の構成図である。 本実施形態の典型的なセンサ構成を示す図である。 干渉判定の概念を表す模式図である。 計測範囲を限定することを示した図である。 入力されるパレットの寸法を示した図である。 干渉判定で使用するパレット205の平面を表す図である。 計測対象物体201とパレット205との干渉判定の流れを示すフローチャートである。 干渉判定で用いるマージンを示した図である。 部分モデルを用いた計測対象物体201認識と全体モデルを用いた干渉判定のフローを示したフローチャートである。 部分モデルを作成するためのGUIを示した図である。 第2の実施形態で、切断面を保持して参照し未使用とするモデル点を排除することを示した図である。 第2の実施形態で、切断面を考慮しモデル点を排除するフローを示したフローチャートである。 第2の実施形態で、全体モデルと部分モデルを比較して未使用とするモデル点を排除することを示した図である。 第2の実施形態で、全体モデルと部分モデルを比較しモデル点を排除するフローを示したフローチャートである。 第3の実施形態で、(a)概略位置姿勢認識部と位置姿勢算出部の両方で部分モデルを使用することを示した図である。(b)概略位置姿勢認識部では全体モデルを位置姿勢算出部では部分モデルを使用することを示した図である。 第4の実施形態で、計測対象物体201の特定計測対象物体201サイズ及び全体サイズを示した図である。 本発明に係る情報処理装置1のハードウェア構成の例を示す図である。
以下、添付図面を参照して本発明の好適な実施形態について詳細に説明する。
[第1の実施形態]
本発明にかかる実施形態を説明するのに先立ち、各実施形態に示す情報処理装置1が実装されるハードウェア構成について、図17を用いて説明する。
図17は、本実施形態における情報処理装置1のハードウェア構成図である。同図において、CPU1710は、バス1700を介して接続する各デバイスを統括的に制御する。CPU1710は、読み出し専用メモリ(ROM)1720に記憶された処理ステップやプログラムを読み出して実行する。オペレーティングシステム(OS)をはじめ、本実施形態に係る各処理プログラム、デバイスドライバ等はROM1720に記憶されており、ランダムアクセスメモリ(RAM)1730に一時記憶され、CPU1710によって適宜実行される。また、入力I/F1740は、外部の装置(表示装置や操作装置など)から情報処理装置1で処理可能な形式で入力信号として入力する。また、出力I/F1750は、外部の装置(表示装置)へ表示装置が処理可能な形式で出力信号として出力する。
図1は、第1の実施形態における情報処理装置1を用いたシステムの機能ブロック図である。図1のように、情報処理装置1は、外部のセンサ部101と接続されている。
センサ部101は、計測対象物体201の位置姿勢を認識するために必要な計測情報を取得するためのセンサである。本実施形態では、センサ101はカメラとプロジェクタ、演算部とを備える。プロジェクタは、計測対象物体201に複数のパターン光を照射して、カメラは、パターンが照射された物体を含んだパターン画像を取得する。センサ部101は、三角測量の原理に基づいて計測対象物体201の距離情報を算出する(距離情報取得)。しかし、センサ部101はカメラとプロジェクタの組み合わせに限定するものではない。たとえば、センサ部101としては、対象に照射したレーザ光やスリット光の反射光をカメラで撮影し、演算部による三角測量により距離を計測するもの、光の飛行時間を利用するTime−of−flight方式のもの、あるいは、ステレオカメラで撮影する画像から演算部による三角測量により距離を計算するもの、などが利用できる。その他、物体の三次元位置姿勢を認識するのに必要な情報を取得できればいかなるセンサであっても本発明の本質を損なうものではない。
図2が本実施形態における典型的なセンサ部101の構成である。カメラ202は、現実空間を撮像するものであり、プロジェクタ203によって光が照射された計測対象物体201を撮像するために使用する。そしてカメラ202は、撮像した画像(撮像画像)を、演算部204に対して送出する。演算部204は、異なるパターン光で撮影した複数の撮像画像から三角測量の原理に基づき距離情報の算出を行う。本実施形態では、距離画像および濃淡画像をともに取得可能なセンサを利用するものとする。センサ部101が取得した計測情報(距離画像および濃淡画像)は概略位置姿勢認識部102に入力される。以下では、計測対象物体201の例としては、例えば工業用部品が挙げられる。
概略位置姿勢認識部102は、ばら積みされた複数の計測対象物体201の中から一個体を検出し、所定の座標系における計測対象物体201の位置及び姿勢の概略値を算出する。概略位置姿勢認識部102は、後述の辞書保持部109から事前学習により作成された認識辞書を取得する。本実施形態では、認識辞書は計測対象物体201の部分的な形状を表すモデル(部分モデル)を用いて生成された辞書を用いる。概略位置姿勢認識部102は、事前学習された認識辞書を用いて、計測対象物体201のどの部分的な形状と似ているかを判定することにより、概略の位置姿勢を求める。
位置姿勢算出部103は、概略位置姿勢認識部102で認識された概略の位置姿勢と、センサ部101により取得した計測情報と、部分モデルとを用いて、計測対象物体201の位置姿勢を算出する。本実施形態では部分モデルは概略位置姿勢認識部105における辞書を作成する際のモデルと同じものを用いる。位置姿勢算出部103により算出される位置姿勢は、概略位置姿勢認識部102で求められる概略の位置姿勢よりも高精度である。
干渉判定部104は、位置姿勢算出部103が算出した計測対象物体201の位置姿勢から計測対象物体201をピッキングして抜き出す際における計測対象物体201とパレット205とが衝突しないかどうかの干渉判定を行う。図3はその干渉判定の概念を表す模式図である。
本実施形態では、図3で示すように、センサ部101の計測範囲内に計測対象物体201の全領域が入らない場合に、部分モデルを利用して計測対象物体201の特定部位を認識する。しかしながら、この場合においても、計測対象物体201とパレット205との干渉判定に関しては、全体モデルで行わないと、図3(B)のような場合に干渉があると判定されない。そのため、本実施形態では、認識処理は、部分モデルで行い、干渉判定は、全体モデルで行う。また、図4のように特徴のある部位に対する部分モデルを用いて認識処理をすることにより、全体モデルを用いて認識するより、特定部位について高精度に認識処理を行うことができる。
干渉判定部104は、まず事前にロボットハンド206で計測対象物体201を把持(保持)して少し引き上げた(保持動作)座標点において干渉判定を行う。具体的には、まず、計測対象物体201の全体形状を表現するポリゴンモデルを基準座標の空間上に配置する。さらに、パレット205側面に対応する平面を配置する。そして、各ポリゴンと平面との三次元空間的な重なりや配置関係を検出することで干渉判定を行う。
全体モデル保持部106は、計測対象物体201の三次元CADモデルから生成された計測対象物体201の形状全体を表現するモデル(全体モデル)を保持する。全体モデルは、干渉判定部104による干渉判定処理で利用される。
部分モデル保持部105は、全体モデルの一部であり、計測対象物体201の形状の一部を表現するモデル(部分モデル)を保持する。保持される部分モデルは、位置姿勢算出部103により処理で利用される。部分モデルは、全体モデルを切断することにより生成されても良いし、全体モデルとは別に3次元CADモデルから別途生成してもかまわない。
パレットモデル保持部107は、計測対象物体201を格納するパレット205(容器)の形状を表現する三次元モデルであるパレットモデルを保持する。パレットモデルは、パレット205の各寸法の入力によって生成され、干渉判定部104による干渉判定処理で利用される。具体的には、図5にあるように、パレット205のx,y,zの立方体の各辺の寸法、及び、x,y方向のパレット205の幅であるwx,wyと内側の高さであるzin入力される。そして、この入力値を利用して、パレット205の形状モデルを生成する。更に、生成されたパレット205モデルを用いて、パレット205の位置姿勢を求める。パレット205の位置姿勢は、予め定められた略同じ位置に置かれるとして定めも良いし、位置姿勢算出部103を利用して求めてもよい。もちろん、パレット205がしっかりと固定されている場合には、パレット205の位置姿勢自体を既知と考えることが可能であり、パレット205の位置姿勢認識を行わなくても良い。
出力部108は、干渉判定部104の結果を外部の装置(例えばディスプレイ)に、外部の装置が読み出し可能な形式で出力する。
辞書保持部109は、概略位置姿勢認識部102で使用される辞書を保持する。本実施形態では、木構造型の辞書を保持するものとする。木構造型の辞書は、木構造の節に対応する各ノードにおいて、既知の姿勢を持つ物体を含む学習用の画像から特徴量を抽出し抽出された特徴量に対して予め定めた規則に応じて、下位のいずれかのノードに分類することを繰り返す。これを事前に複数の画像に対して行うことにより、学習画像が分類された結果を表したものが木構造型の辞書となる。例えば、特徴量が画像の複数の輝度値であった場合に、輝度値同士の大小を比較し、その比較結果に応じて分類するノードを決定する。
情報処理装置1を構成する各機能部は、CPU1710が、ROM1720に格納されたプログラムをRAM1730に展開し、後述する各フローチャートに従った処理を実行することで実現されている。また例えば、CPU1710を用いたソフトウェア処理の代替としてハードウェアを構成する場合には、ここで説明する各機能部の処理に対応させた演算部や回路を構成すればよい。
次に、図9を参照して、本実施形態の情報処理装置1の処理フローを説明する。
(ステップS901)
ステップS901において、概略位置姿勢認識部102は、センサ部101が計測した計測対象物体201の計測情報を取得する。
(ステップS902)
ステップS902において、概略位置姿勢認識部102および位置姿勢算出部103は、部分モデルを用いて計測対象物体201の位置姿勢を算出する。
まず、概略位置姿勢認識部102は、部分モデル由来の認識辞書を利用した認識処理を行う。
ばら積みされた複数の計測対象物体201の中から一個体を検出し、計測対象物体201の位置及び姿勢の概略値を算出する。なお、予め位置及び姿勢計測の基準となる三次元の座標系(基準座標系)が規定されているものとする。本実施形態では、センサ部101に使用するセンサの中心を原点とし、取得される画像の水平方向をx軸、垂直方向をy軸、センサ部101の光軸をz軸とした座標系を基準座標系とする。物体の位置及び姿勢とは、基準座標系における物体の位置及び姿勢を表す。本実施形態では、センサ部101で取得した距離画像および濃淡画像に対して、上述の方法で事前学習した辞書を用いて、計測対象物体201のおおまかな位置姿勢である概略位置姿勢を認識(概略位置姿勢導出)する。概略位置姿勢の認識は、取得した距離画像および濃淡画像それぞれを分割した部分画像を、事前学習時に用いられた規則に応じて分類し、分類されたノードに対応する学習用の画像に含まれる物体の姿勢を、認識された姿勢とする。そして、部分画像ごとに分類された結果を集計して、位置と姿勢を求める。ただし、概略位置姿勢の認識方法は他の方法であってもかまわない。たとえば、多数の姿勢から観測した画像をテンプレートとしてパターンマッチングを行ってもよい。その他、山積みの中から一個体を発見し、その三次元位置姿勢を算出できる方法であれば、ここで述べた以外のいかなる方法であってもかまわない。概略位置姿勢認識部102で算出した位置姿勢は、概略位置姿勢として位置姿勢算出部103に入力される。
つぎに、位置姿勢算出部103は、公知のICPアルゴリズムを用いて、入力された概略位置姿勢に基づき、計測対象物体201の部分モデルと、センサ部101により取得した計測情報とがもっともフィットするような位置姿勢を算出(フィッティング)する。たとえば、距離画像のみあるいは濃淡画像のみを用いてフィッティングを行ってもよい。具体的には、まず、概略位置姿勢に基づいて、部分モデル上のモデル点を距離画像に投影し、最も近い距離点(計測点)を対応づける。そして、対応づけられたモデル点と計測点との間の距離を最小化するように概略位置姿勢を更新する処理を繰り返し行うことにより、計測対象物体201の位置姿勢を導出する。
(ステップS903)
ステップS903では、干渉判定部104は、全体モデルを利用した干渉判定を行う。
以上の処理が情報処理装置1の処理となる。
次に、ステップS903の干渉判定処理の詳細について、図7を用いて詳細に説明する。
干渉判定が注目するパレット205を構成する平面は、図6で示すようにパレット205の上面の平面Tと、パレット205の4つの側面からなる平面S1,S2,S3,S4、及びパレット205の内側の底面の平面Bで規定される。ここで干渉に関しては、まず図7のフローチャートで示される
(ステップS701)
ステップS701では、干渉判定部104は、計測対象物体201を表したポリゴンを作成する。
(ステップS702)
ステップS702では、干渉判定部104は、ステップS701で作成されたポリゴンから、上面に対応する平面Tと、底面に対応する平面Bの間にあるポリゴンを抽出する。
上述したポリゴンは、計測対象物体201表面上の点の位置(3次元座標)と、面を近似するポリゴンを構成するための各点の連結情報によって構成される。なお、ポリゴンは三角形で構成されるのが一般的であるが、四角形や五角形であってもよい。その他、表面点の3次元座標とその連結情報により物体形状を近似表現できるポリゴンモデルであればいかなるものであってもよい。
各々のポリゴンに関して、平面のどちら側にあると判断するには、平面の方程式とポリゴンを構成する各構成点の三次元座標を使用する。ポリゴンは点列で示されるので(典型的には3角形の3点)、各点と平面の方程式ax+by+cz+d=0(a+b+c=1の制約)の左辺の正負判定で平面のどちら側かを判定することができる。ポリゴンを構成する各点において正負が分かれる場合はそのポリゴンが正に平面と干渉していることになる。
(ステップS703)
ステップS703では、干渉判定部104は、ステップS702で抽出したポリゴンに関して、次に側面をなす平面S1〜S4の位置関係を調べる。各ポリゴンに関してS1〜S4に対して、パレット205の内側に位置しているかどうかをチェックする。各ポリゴンにおいてパレット205の内側に存在していると判断されたものは、排除して、残ったポリゴンに関して注目する。残存したポリゴンがなければ、ステップS704で計測対象物体201とパレット205には干渉はないと判断される。そして、その計測対象物体201は把持候補となる。
一方、あるポリゴンがひとつでも平面と干渉していたり、あるポリゴンがパレット205の外側にあると判定された場合には、その計測対象物体201は、パレット205との間に干渉があると判断される。そして、その計測対象物体201は把持候補からは除外される。
通常、干渉判定処理ではポリゴンと平面の距離にマージンを設ける。もし実際に物理的に干渉が発生して、物体同士が当ってしまうと、ロボットハンド206を含むロボットが壊れたりする可能性がある。そのため、安全サイドに考えて、ある程度の距離が近くなれば干渉していると判断する。このマージンは、誤差や推定精度やロボットの精度などに依存し、一定の閾値を設定して実現する。即ち、図5ではなく図8のように、マージンmの数値を加えた、パレット205に変形して、実際の干渉判定の処理を行う。
上記干渉判定処理には全体モデルを利用するため、情報処理装置1全体としては両方のモデルを利用する。
本実施形態では、部分モデルは、全体モデルから生成され、それぞれ独立に保持される。部分モデルデータの生成については、例えば、情報処理装置1に対して外部のCADシステムなどを利用して、全体モデルを編集して部分モデルデータを作成し、全体モデルと部分モデルとを、情報処理装置1に取り込み保持する方法がある。
また、GUIを利用して、全体モデルを情報処理装置1に読み込み、平面で部分的に全体モデルの一部を切り取り、部分モデルを装置内で作成する方法がある。この場合に関しては、図10(a)のような画面で部分モデルを生成する。画面中央にCADの三次元表示を行える表示領域を備える。CADの表示領域の画面をクリックしてドラッグすることで、3次元の視点を変更出来るようになっている。また、マウスのホイールで拡大・縮小が出来るようになっている。拡大・縮小とは、3次元の視点を計測対象物体201に近づける、遠ざけるに対応した操作となる。任意の視点から3次元CADモデルを適切な視点から見た形態で表示したところで、図10(b)のようにCAD切断ボタンを押し、2点を指示する。そのようにすると2点を結ぶ線分が現れる。これは実際には画面に鉛直方向の平面を表しており、線分表示の後にマウスカーソルが、×に変わるので、その平面で分割されるCADモデルのうち削除する側をクリックする。この操作を一回することで、ある平面でCADを切断し、片方を削除する操作が行える(図10(c))。これを図10(d)のように繰り返すことにより、不要な部分を削除した部分モデルを作成することが出来る(図10(e))。この段階で保存ボタンにより部分モデルに名前を付けて保存できる。以上をもって作成した部分モデルを全体モデルとともに、装置内に保持する。
本実施形態では、認識用のCADモデルと、干渉判定用のCADモデルをそれぞれ別々に装置内の記憶手段に保持することで、認識用に部分モデルを用いても、干渉判定用には全体モデルを用いることで正しく干渉判定できる構成を示した。
[第2の実施形態]
第1の実施形態では認識用のモデルと干渉判定用のモデルを別々に2つ持ち、認識用には部分モデルを使うため、全体モデルから切り出した部分モデルを利用することを述べた。
部分モデルを利用して認識する場合、単純に部分モデルを用いて、従来の全体モデルを用いた認識処理を行わせようとすると、切断面に疑似境界が出現するため、疑似モデル面点や疑似モデルエッジ点の影響が発生し、認識に悪い影響を及ぼすことがある。本実施形態では、この悪影響を低減するため、切断面による疑似的な面やエッジを取り除く手法について述べる。
その前にモデル面点とモデルエッジ点について説明する。
モデル面点とは、処理時間の高速化のため、事前に生成したポリゴンモデル上から、位置合わせで利用するためのサンプル点をあらかじめ計測モデルとして用意しておき、それを2.5Dの距離画像上に投影することでモデルと距離点との対応付けを行うサンプル点のことである。
視点別のモデル面点の生成方法は以下のようなものである。モデル面点の生成モデルを様々な角度から観察すると、計測対象物体201の見えが大きく変化する。また、計測対象物体201同士の遮蔽も発生する。そこで、モデルをレンダリングした画像を参照することでモデル面点が可視かどうかを判断する方法を利用する。
モデル面点と同様に視点別モデルの各ノードにおける観察姿勢でモデルを観察したときに、可視のモデルエッジ点を視点別のノードにあるエッジリストに追加する処理を行う。モデルエッジ点には3種類あり、CADの各面の境界曲面を分割して生成された正確なエッジであるBrepエッジ、ポリゴン面の各辺を分割して生成したテッセレーションの誤差を含むMeshエッジ、内部構造のジャンプしたエッジ部分をポリゴン面の各辺を分割して生成した構造エッジからなる。
切断面による疑似的な面やエッジを取り除く手法は、図11のようにモデルフィッティングに利用するモデル点がその切断平面上にあるものは利用しないようにすることを行う。これをフローチャートで示した図が図12である。
(ステップS1601)
ステップS1601において、部分認識のためにはCADモデルの一部分を複数のある平面で切断した形でモデルを保持しておき、その切断平面も保持した内部データ構造にしておく。
(ステップS1602)
ステップS1602において、モデル点を選択する。
(ステップS1603)
ステップS1603において、ステップS1602で選択されたモデル点と切断面との距離を算出する。
(ステップS1604)
ステップS1604では、ステップS1603で算出された距離が閾値以内であるか否かを判定する。閾値以内であれば、切断平面上に存在するものと判断する。そしてステップS1605に処理を進める。一方で、閾値よりも大きければステップS1606に処理を進める。
(ステップS1605)
ステップS1605では、切断平面上に存在するモデル点、即ち、モデル面点及びモデルエッジは使用しないように設定する。
(ステップS1606)
ステップS1606では、モデル点即ち、モデル面点及びモデルエッジを使用するように設定する。
断平面保持する代わりに、図13のように、全体モデルと部分モデルを比較することで、モデル点のうち全体モデルでは観測できない部分モデル上のモデル点は、排除するという方法も考えられる。
この場合のフローチャートは図1のようになる。図1のフローチャートにおいては図1と異なり,ステップS1802で全体モデルを参照して、選択したモデル点が全体モデルにも観測できるかどうかをステップS1803で判定して、そのモデル点を使用するか(ステップS1804)、使用しないか(ステップS1805)を判定する。部分モデルに切断面の情報を保持しておくのではなく、部分モデルをベースとしたモデル上で選択したモデル点に関して、全体モデルを参照する点が異なる。
[第3の実施形態]
第1の実施形態では認識用のモデルと干渉判定用のモデルを別々に2つ持ち、全体の位置姿勢計測装置を構成することを述べた。
本実施形態では、部分モデルを用いる目的をさらに追記したうえで、認識処理のうち、概略位置姿勢認識部102と位置姿勢算出部103によって、異なるモデルを用いる場合に、即ち認識用のモデルに2つ、干渉判定用のモデルに1つ、計3つのモデルを持つ場合ついても述べる。
部分モデルを利用して、計測対象物体201認識を行う場合は、第1の実施形態で記載の通り、以下の2つの状況が考えられる。部分モデルを利用することにより撮像視野外へはみ出す大型計測対象物体201に対応することができると考える。視野範囲内に収まるある特定の部位を示すCADのみで、特定部位部分認識を行うことで大型計測対象物体201に対応できる。また、交差の少ない部位を特定して計測範囲をあえて限定して利用することで、部分モデルを用いて、精度のよい位置姿勢を算出ことができる。
概略位置姿勢認識部102と位置姿勢算出部103を分離して考えた場合は、両方とも部分モデルを用いて処理する場合(図15(a))と、前段は全体モデルで後段は部分モデルを用いる場合(図15(b))ができる。前者は典型的には、大型の計測対象物体201で全体モデルに対応する計測対象物体201全体が撮像視野内に入らない場合に利用されるが、後者は特定部位のみで精度よく最終段のフィッティングを行うときに主に利用可能である。概略の位置姿勢は計測対象物体201全体のCADを利用して、大まかに位置姿勢を求めておいて、最終的には特定部位を精緻にフィッティングするために部分モデルを用いることができる。
また、概略位置姿勢認識部102と位置姿勢算出部103は、両方が部分モデルを用いるにしても、同じものでなくても構わない。それぞれが異なる部位を示す部分モデル(一方がもう一方を包含していてもよい)も可能である。よって、撮像視野外へはみ出す大型の計測対象物体201に対応する場合においても、交差の少ない部位を特定して最終段では位置姿勢算出を行うことで、精度のよい位置姿勢を算出することは、両立するものである。
[第4の実施形態]
第1の実施形態では干渉判定の際に一定のマージンを設けることについて述べた。本実施形態では干渉チェックのマージンmを計測対象物体201毎に動的に設定することについて述べる。
部分モデル由来の認識モデルを利用するが故に、その特定部位においては位置と姿勢の精度が高い効果が期待できるが、計測対象物体201全体でみた場合には姿勢の決定精度が劣化すると考えられる。その劣化程度を予め求めておいて、その曖昧さを加味したうえで干渉判定を行う。
事前に繰り返して特定部位の部分モデルを利用したフィッティングを行って姿勢のバラつきを計測してそれを利用してもよいし、特定部位の部分モデルを利用したフィッティングに関しては一画素の精度誤差が発生するとしてもよい。そのバラつき誤差の画素数をPとする。画素数はンプリング精度を考え、小数でもよいとする。
特定部位に対応した計測対象物体201のサイズの各軸の計測対象物体201サイズを図16に示すPart.x,Part.y,Part.zとして、計測対象物体201全体のサイズの各軸の計測対象物体201サイズを図16に示すAll.x,All.y,All.zとして、その軸ごとのサイズ比の最大値
M=MAX(All.x/Part.x,All.y/Part.y,All.z/Part.z)
を算出し、
m’=m+P*Mとして、マージンmの代わりにm’を利用する。この式だけに限定するものではなく、部分部位の姿勢の揺らぎを、計測対象物体201全体の揺らぎに反映する形で、マージンを求めるものであればそれでよい。
(その他の実施形態)
また、本発明は、以下の処理を実行することによっても実現される。
即ち、上述した各実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。このプログラム及び当該プログラムを記憶したコンピュータ読み取り可能な記憶媒体は、本発明に含まれる。

Claims (11)

  1. 山積みされた複数の物体に対する距離情報を取得する距離情報取得手段と、
    前記距離情報と、前記物体の部分的な形状を表す部分モデルとに基づいて、前記複数の物体のうちの計測対象物体の位置姿勢を導出する導出手段と、
    前記物体の全体形状を表す全体モデルに基づいて、前記計測対象物体を保持する際の保持手段による保持動作の際に、前記計測対象物体と前記計測対象物体を格納する容器との間に干渉が生じるかを判定する干渉判定手段とを備えることを特徴とする情報処理装置。
  2. 前記導出手段は、前記計測対象物体の概略位置姿勢を導出する概略位置姿勢導出手段と、前記概略位置姿勢導出手段で得られた概略位置姿勢に基づいて、該概略位置姿勢よりも高精度の位置姿勢を導出する位置姿勢導出手段とを備え、
    前記概略位置姿勢導出手段と、前記位置姿勢導出手段は、前記計測対象物体の一部を表すモデルに基づいて位置姿勢の導出の処理を行うことを特徴とする請求項1に記載の情報処理装置。
  3. 前記導出手段は、前記計測対象物体の概略位置姿勢を導出する概略位置姿勢導出手段と、前記概略位置姿勢導出手段で得られた概略位置姿勢に基づいて、より高精度の位置姿勢を導出する位置姿勢導出手段とを備え、
    前記概略位置姿勢導出手段と前記位置姿勢導出手段は、前記全体モデルと前記部分モデルとのうち、それぞれ異なるモデルを用いて、処理を行うことを特徴とする請求項1に記載の情報処理装置。
  4. 前記概略位置姿勢導出手段は前記全体モデルを用いて処理を行い、前記位置姿勢導出手段は前記部分モデルを用いて処理を行うことを特徴とする請求項3に記載の情報処理装置。
  5. 前記位置姿勢導出手段は、前記概略位置姿勢に基づいて、前記部分モデルから抽出されるモデル点と前記距離情報に含まれる計測点とを対応付け、該対応づけられたモデル点と、前記計測点とのずれを少なくするように、前記概略位置姿勢を更新することにより、前記位置姿勢を導出することを特徴とする請求項2乃至4のいずれか1項に記載の情報処理装置。
  6. 前記部分モデルは、前記全体モデルを切断することにより生成され、
    前記位置姿勢導出手段は、前記部分モデルのモデル点のうち、前記全体モデルから生成される際の切断面にあるモデル点は利用しないで前記位置姿勢を導出することを特徴とする請求項5に記載の情報処理装置。
  7. 情報処理装置であって、
    容器に収納された物体の計測された3次元情報と、前記物体の一部の形状を表す部分モデルを用いて、前記物体の概略位置姿勢を導出し、
    前記概略位置姿勢を用いて、前記概略位置姿勢よりも高精度の物体の位置姿勢を導出し、
    前記物体の全体の形状を表す全体モデルを用いて、ロボットハンドが前記物体を移動させるときに前記物体と前記容器が接触するかどうかを判定する処理部を備えることを特徴とする情報処理装置。
  8. 山積みされた複数の物体に対して、距離計測を行って得られた距離情報を取得する距離情報取得工程と、
    前記距離情報と、前記物体の部分的な形状を表す部分モデルとに基づいて、前記複数の物体のうちの計測対象物体の位置姿勢を導出する導出工程と、
    前記物体の全体形状を表す全体モデルに基づいて、前記計測対象物体を保持する際の保持手段による保持動作の際に、前記計測対象物体と前記計測対象物体を格納する容器との間に干渉が生じるかを判定する干渉判定工程とを備えることを特徴とする情報処理方法。
  9. 容器に収納された物体の計測された3次元情報と、前記物体の一部の形状を表す部分モデルを用いて、前記物体の概略位置姿勢を導出する工程と、
    前記概略位置姿勢を用いて、前記概略位置姿勢よりも高精度の物体の位置姿勢を導出する工程と、
    前記物体の全体の形状を表す全体モデルを用いて、ロボットハンドが前記物体を移動させるときに前記物体と前記容器が接触するかどうかを判定する判定工程と、を備えることを特徴とする情報処理方法。
  10. コンピュータを、請求項1乃至6のいずれか1項に記載の情報処理装置の各手段として機能させるためのプログラム。
  11. 請求項9に記載の情報処理方法をコンピュータに実行させるためのプログラム。
JP2015061687A 2015-03-24 2015-03-24 情報処理装置、情報処理方法、プログラム Active JP6632208B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2015061687A JP6632208B2 (ja) 2015-03-24 2015-03-24 情報処理装置、情報処理方法、プログラム
US15/077,783 US9984291B2 (en) 2015-03-24 2016-03-22 Information processing apparatus, information processing method, and storage medium for measuring a position and an orientation of an object by using a model indicating a shape of the object

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015061687A JP6632208B2 (ja) 2015-03-24 2015-03-24 情報処理装置、情報処理方法、プログラム

Publications (2)

Publication Number Publication Date
JP2016179534A JP2016179534A (ja) 2016-10-13
JP6632208B2 true JP6632208B2 (ja) 2020-01-22

Family

ID=56975480

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015061687A Active JP6632208B2 (ja) 2015-03-24 2015-03-24 情報処理装置、情報処理方法、プログラム

Country Status (2)

Country Link
US (1) US9984291B2 (ja)
JP (1) JP6632208B2 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6411964B2 (ja) * 2015-07-27 2018-10-24 ファナック株式会社 工作機械とロボットのリアルタイム干渉確認システム
CN106767584B (zh) * 2015-11-20 2019-12-06 富泰华工业(深圳)有限公司 物体表面点三维坐标测量装置及测量方法
US9965051B2 (en) * 2016-06-29 2018-05-08 Microsoft Technology Licensing, Llc Input device tracking
US10325413B2 (en) * 2017-02-28 2019-06-18 United Technologies Corporation Generating smooth optimized parts
JP6438512B2 (ja) * 2017-03-13 2018-12-12 ファナック株式会社 機械学習により補正した計測データでワークの取り出しを行うロボットシステム、計測データ処理装置および計測データ処理方法
CN111226237A (zh) * 2017-09-01 2020-06-02 加利福尼亚大学董事会 用于稳健抓取和瞄准物体的机器人系统和方法
JP7062418B2 (ja) * 2017-11-29 2022-05-16 株式会社東芝 情報処理装置及び仕分システム
JP7073742B2 (ja) * 2018-01-25 2022-05-24 株式会社リコー 情報処理システム、ピッキング箇所特定方法及びプログラム
JP7119606B2 (ja) * 2018-06-11 2022-08-17 オムロン株式会社 計測システムおよび計測方法
JP7376268B2 (ja) * 2019-07-22 2023-11-08 ファナック株式会社 三次元データ生成装置及びロボット制御システム
JP7123885B2 (ja) * 2019-09-13 2022-08-23 株式会社東芝 ハンドリング装置、制御装置、および保持方法

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2555824B2 (ja) 1991-10-30 1996-11-20 日本電装株式会社 山積み部品の高速ピッキング装置
GB2261069B (en) * 1991-10-30 1995-11-01 Nippon Denso Co High speed picking system for stacked parts
US6721444B1 (en) * 1999-03-19 2004-04-13 Matsushita Electric Works, Ltd. 3-dimensional object recognition method and bin-picking system using the method
JP3377465B2 (ja) * 1999-04-08 2003-02-17 ファナック株式会社 画像処理装置
US6975971B2 (en) * 2001-03-13 2005-12-13 Ford Global Technologies Llc System and method of section cutting and analysis of a computer model
JP3782679B2 (ja) * 2001-05-09 2006-06-07 ファナック株式会社 干渉回避装置
JP3805302B2 (ja) * 2002-12-13 2006-08-02 ファナック株式会社 ワーク取出し装置
JP3930490B2 (ja) * 2004-04-23 2007-06-13 ファナック株式会社 物品取出し装置
US7753191B2 (en) * 2005-09-13 2010-07-13 Crisplant A/S System and method for automated handling of baggage objects
US7663630B2 (en) * 2005-12-08 2010-02-16 Electronics And Telecommunications Research Institute Apparatus and method for processing collision information in graphic system
JP4087874B2 (ja) * 2006-02-01 2008-05-21 ファナック株式会社 ワーク取り出し装置
JP4199264B2 (ja) * 2006-05-29 2008-12-17 ファナック株式会社 ワーク取り出し装置及び方法
JP2007334678A (ja) * 2006-06-15 2007-12-27 Fanuc Ltd ロボットシミュレーション装置
JP4413891B2 (ja) * 2006-06-27 2010-02-10 株式会社東芝 シミュレーション装置およびシミュレーション方法並びにシミュレーションプログラム
JP4930100B2 (ja) * 2007-02-27 2012-05-09 ソニー株式会社 力触覚ディスプレイ、力触覚ディスプレイの制御方法、並びにコンピュータ・プログラム
JP4309439B2 (ja) * 2007-03-30 2009-08-05 ファナック株式会社 対象物取出装置
JP4565023B2 (ja) * 2008-07-04 2010-10-20 ファナック株式会社 物品取り出し装置
JP5257335B2 (ja) * 2009-11-24 2013-08-07 オムロン株式会社 3次元視覚センサにおける計測有効領域の表示方法および3次元視覚センサ
JP5480667B2 (ja) * 2010-02-26 2014-04-23 キヤノン株式会社 位置姿勢計測装置、位置姿勢計測方法、プログラム
JP4870831B2 (ja) * 2010-06-30 2012-02-08 ファナック株式会社 塗布作業シミュレーション装置
KR101453234B1 (ko) * 2010-11-17 2014-10-22 미쓰비시덴키 가부시키가이샤 워크 취출 장치
JP5767464B2 (ja) * 2010-12-15 2015-08-19 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、およびプログラム
GB201104312D0 (en) * 2011-03-14 2011-04-27 Bell Alexandra Improved virtual try on simulation service
JP2013099815A (ja) * 2011-11-08 2013-05-23 Fanuc Ltd ロボットプログラミング装置
JP5854815B2 (ja) * 2011-12-20 2016-02-09 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、およびプログラム
JP5911299B2 (ja) * 2011-12-27 2016-04-27 キヤノン株式会社 情報処理装置、情報処理装置の制御方法およびプログラム
KR101733331B1 (ko) * 2012-11-27 2017-05-08 도시바 미쓰비시덴키 산교시스템 가부시키가이샤 크레인 운전 지원 장치
US20140200863A1 (en) * 2013-01-11 2014-07-17 The Regents Of The University Of Michigan Monitoring proximity of objects at construction jobsites via three-dimensional virtuality in real-time
JP6192088B2 (ja) * 2013-02-20 2017-09-06 国立大学法人九州工業大学 物体検出方法および物体検出装置
US9102055B1 (en) * 2013-03-15 2015-08-11 Industrial Perception, Inc. Detection and reconstruction of an environment to facilitate robotic interaction with the environment
JP5616478B1 (ja) * 2013-04-18 2014-10-29 ファナック株式会社 ワークを搬送するロボットを備えるロボットシステム
JP5788460B2 (ja) * 2013-11-05 2015-09-30 ファナック株式会社 バラ積みされた物品をロボットで取出す装置及び方法
JP5860081B2 (ja) * 2014-02-27 2016-02-16 ファナック株式会社 ロボットの動作経路を生成するロボットシミュレーション装置
JP6338421B2 (ja) * 2014-03-31 2018-06-06 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、把持システムおよびプログラム
JP5778311B1 (ja) * 2014-05-08 2015-09-16 東芝機械株式会社 ピッキング装置およびピッキング方法
JP6372198B2 (ja) * 2014-07-01 2018-08-15 セイコーエプソン株式会社 ロボットシステム及び処理装置
JP5908544B2 (ja) * 2014-08-11 2016-04-26 ファナック株式会社 駆動軸のジャークを低下させるロボットプログラムを生成するロボットプログラム生成装置
JP6140204B2 (ja) * 2015-02-06 2017-05-31 ファナック株式会社 3次元センサを備えた搬送ロボットシステム
JP6117853B2 (ja) * 2015-05-13 2017-04-19 ファナック株式会社 バラ積みされた物品を取り出すための物品取出システム、および方法
JP6635690B2 (ja) * 2015-06-23 2020-01-29 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム

Also Published As

Publication number Publication date
US9984291B2 (en) 2018-05-29
JP2016179534A (ja) 2016-10-13
US20160283792A1 (en) 2016-09-29

Similar Documents

Publication Publication Date Title
JP6632208B2 (ja) 情報処理装置、情報処理方法、プログラム
JP6298035B2 (ja) モデル生成装置、位置姿勢算出装置、およびハンドリングロボット装置
JP6323993B2 (ja) 情報処理装置、情報処理方法、及びコンピュータプログラム
JP6978330B2 (ja) オブジェクト形状および設計からのずれの監視
JP6642968B2 (ja) 情報処理装置、情報処理方法、プログラム
JP4677536B1 (ja) 3次元物体認識装置及び3次元物体認識方法
US8792726B2 (en) Geometric feature extracting device, geometric feature extracting method, storage medium, three-dimensional measurement apparatus, and object recognition apparatus
JP6723061B2 (ja) 情報処理装置、情報処理装置の制御方法およびプログラム
JP5480914B2 (ja) 点群データ処理装置、点群データ処理方法、および点群データ処理プログラム
EP2430588B1 (en) Object recognition method, object recognition apparatus, and autonomous mobile robot
US10452949B2 (en) System and method for scoring clutter for use in 3D point cloud matching in a vision system
JP4900204B2 (ja) 物体認識方法
US11654571B2 (en) Three-dimensional data generation device and robot control system
WO2012008618A1 (en) Position/orientation measurement apparatus, measurement processing method thereof, and non-transitory computer-readable storage medium
CN111274943A (zh) 一种检测方法、装置、电子设备及存储介质
JP6091658B2 (ja) 情報処理装置及び情報処理方法及びプログラム
JP2018091656A (ja) 情報処理装置、計測装置、システム、算出方法、プログラムおよび物品の製造方法
JP2017033429A (ja) 3次元物体検査装置
JP2019114103A (ja) 物体認識処理装置、物体認識処理方法及びプログラム
JP5762099B2 (ja) 姿勢認識装置、作業ロボット、姿勢認識方法、プログラム及び記録媒体
JP2015111128A (ja) 位置姿勢計測装置、位置姿勢計測方法、およびプログラム
JP5030183B2 (ja) 3次元物体位置姿勢計測方法
US20220230459A1 (en) Object recognition device and object recognition method
JP2014178967A (ja) 3次元物体認識装置及び3次元物体認識方法
CN113592976A (zh) 地图数据的处理方法、装置、家用电器和可读存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171222

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181213

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190122

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190323

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190409

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190605

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20191112

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191210

R151 Written notification of patent or utility model registration

Ref document number: 6632208

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151