JP6677522B2 - 情報処理装置、情報処理装置の制御方法およびプログラム - Google Patents

情報処理装置、情報処理装置の制御方法およびプログラム Download PDF

Info

Publication number
JP6677522B2
JP6677522B2 JP2016026347A JP2016026347A JP6677522B2 JP 6677522 B2 JP6677522 B2 JP 6677522B2 JP 2016026347 A JP2016026347 A JP 2016026347A JP 2016026347 A JP2016026347 A JP 2016026347A JP 6677522 B2 JP6677522 B2 JP 6677522B2
Authority
JP
Japan
Prior art keywords
evaluation value
image
assembly
information processing
orientation
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
JP2016026347A
Other languages
English (en)
Other versions
JP2017144498A (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 JP2016026347A priority Critical patent/JP6677522B2/ja
Priority to US15/429,868 priority patent/US10242438B2/en
Publication of JP2017144498A publication Critical patent/JP2017144498A/ja
Application granted granted Critical
Publication of JP6677522B2 publication Critical patent/JP6677522B2/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/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • G06T7/001Industrial image inspection using an image reference approach
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • 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
    • 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/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • 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
    • G06T2207/10012Stereo images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • G06T2207/30164Workpiece; Machine component

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Quality & Reliability (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Image Analysis (AREA)
  • Automatic Assembly (AREA)
  • Manipulator (AREA)

Description

本発明は、情報処理装置、情報処理装置の制御方法およびプログラムに関する。
近年のロボット技術の発展とともに、工業製品の組み立てのような複雑なタスクをロボットが代わりに行うようになりつつある。このようなロボットは、ハンドなどのエンドエフェクタにより部品を把持して組み付けを行う。ロボットによる部品の組み付け作業では、ハンドによる部品把持時のずれや正常でない部品の混入等の原因により組み付けに失敗することがある。そのため、部品を組み付けた後に、正常に組み付けが行われたかどうかを確認する部品組み付け後検査が必要になる。
特許文献1では、2部品により構成される組み付け済部品の撮影画像を用いて組み付け後検査を行う方法が開示されている。その中で、組み付けが完了した状態の組み付け済部品の3次元形状モデルを用いて組み付け成否を判定する方法に関する記載がある。この方法では、組み付け済部品の3次元形状モデルを用いて位置姿勢を算出した後、着目部位における3次元形状モデルと撮影画像との残差により組み付け成否を判定している。
特開2015−114722号公報
R. Y. Tsai, "A versatile camera calibration technique for high−accuracy 3D machine vision metrology using off−the−shelf TV cameras and lenses, " IEEE Journal of Robotics and Automation,vol.RA−3,no.4,1987. 立野,小竹,内山,"ビンピッキングのための距離・濃淡画像を最ゆうに統合する高精度高安定なモデルフィッティング手法",電子情報通信学会論文誌D, 情報・システム J94-D(8), 1410−1422, 2011.
特許文献1に記載の方法では、組み付け失敗時に撮影画像との残差が大きくなる部位を着目部位として適切に設定する必要がある。ここで、正しく組み付けられていない組み付け済部品に対して位置姿勢を算出した場合、組み付け元部品の残差が大きくなるかもしれないし、あるいは、組み付け先部品の残差が大きくなるかもしれない。
しかしながら、この残差の大きさや分布は、組み付け済部品を構成する2部品の大きさの違い、形状、観測視点などに影響を受けるため、着目部位を適切に設定するのが難しいという課題がある。
本発明は、上記の課題に鑑みてなされたものであり、着目部位の設定なしに、組み付け成否の判定精度を向上させる技術を提供することを目的とする。
上記の目的を達成する本発明に係る情報処理装置は、
第1の物体が第2の物体に組み付けられた組み付け済物体の画像を取得する画像取得手段と、
部位ごとに前記第1の物体又は前記第2の物体のいずれかの属性が付与された前記組み付け済物体の3次元形状モデルを取得するモデル取得手段と、
前記画像に基づいて前記組み付け済物体の位置姿勢を取得する位置姿勢取得手段と、
前記組み付け済物体の画像に基づいて、前記位置姿勢の前記3次元形状モデルの、前記第1の物体の属性が付与された部位について当該第1の物体の組み付けの状態を評価するための第1の評価値と、前記第2の物体の属性が付与された部位について当該第2の物体の組み付けの状態を評価するための第2の評価値とを取得する評価値取得手段と、
前記第1の評価値及び前記第2の評価値に基づいて組み付けの成否を判定する判定手段と、
を備えることを特徴とする。
本発明によれば、着目部位の設定なしに、組み付け成否の判定精度を向上させることが可能となる。
第1の実施形態に係る組み付け元部品および組み付け先部品の一例を示す図。 第1の実施形態に係る情報処理装置の構成を示す図。 残差に関する説明図。 第1の実施形態に係る情報処理装置が実施する組み付けの成否判定処理の概略手順を示すフローチャート。 第1の実施形態に係る情報処理装置が実施する位置姿勢取得処理の詳細手順を示すフローチャート。 第1の実施形態に係る情報処理装置が実施する組み付けの成否判定処理の詳細手順を示すフローチャート。 第2の実施形態に係るロボットシステムの構成例を示す図。
以下、図面を参照しながら実施形態を説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
まず、図3を参照しながら、残差に関する説明を行う。図3(a)のケースは、組み付け元部品80の組み付けに失敗して奥まで嵌めきれず、組み付け先部品81に対して少し浮いた状態である。このとき、撮影装置82の撮影画像を用いて算出した位置姿勢に組み付け済部品(組み付け済物体)の3次元形状モデル83を配置し、3次元点84との残差85により組み付け成否を判定したとする。この場合、組み付け元部品80に対して残差が大きくなり、組み付け先部品81に対する残差は小さくなる。
同様に、図3(b)のケースは、組み付け元部品90の組み付けに失敗して奥まで嵌めきれず、組み付け先部品91に対して少し浮いた状態である。このとき、撮影装置92の撮影画像を用いて算出した位置姿勢に組み付け済部品の3次元形状モデル93を配置し、3次元点94との残差95により組み付け成否を判定したとする。この場合、組み付け先部品91に対して残差が大きくなり、組み付け元部品90に対する残差は小さくなる。
このようなケースでは、組み付け失敗時に撮影画像との残差が大きくなる部位を着目部位として適切に設定しないと、組み付け成否の判定を誤る可能性が出てくる。これに対して、本発明の実施形態では、着目部位の設定なしに、組み付け成否の判定精度を向上させる技術を提供する。
(第1の実施形態)
本実施形態では、組み付け済部品の3次元形状モデルに対して、部位ごとに組み付け先部品、あるいは、組み付け元部品のいずれかの属性を付与しておき、各属性に対応した組み付けの評価値をそれぞれ算出して取得し、組み付けの成否判定を行う例を説明する。
図1は、第1の実施形態に係る組み付け元部品および組み付け先部品の一例を示す図である。図1(c)に示すような2部品から構成される組み付け済部品30について組み付け後検査を行うものとする。組み付け済部品30は、図1(a)に示すようなロボットハンドにより把持・移動される組み付け元部品10と、当該組み付け元部品10を組み付ける相手となる図1(b)に示すような組み付け先部品20とから構成される。図1(d)については後述する。
<概要>
本実施形態における組み付け後検査とは、組み付け済部品30の撮影画像に基づいて、適切に組み付けが行われているか否かを判定することである。具体的には、組み付け済部品30の撮影画像を用いて組み付け済部品30の位置姿勢を算出し、算出した位置姿勢において、組み付け済部品30の3次元形状モデルと撮影画像との残差に基づいて成否を判定する。なお、本実施形態に係る「位置姿勢」とは、組み付け先部品20と当該部品を撮影する撮影装置との位置姿勢の関係のことを意味する。
ここで、組み付けに成功している場合、組み付け済部品30の3次元形状モデルのあらゆる部位で残差が小さくなるはずである。逆に、組み付けに失敗している場合、図3の例で前述したように、組み付け元部品10で残差が大きくなるかもしれないし、あるいは、組み付け先部品20の残差が大きくなるかもしれない。しかし、いずれの場合においても、少なくとも一方の部品で残差が大きくなるはずである。
そこで、本実施形態では、組み付け済部品30の3次元形状モデルに対して、部位ごとに組み付け先部品20、あるいは、組み付け元部品10のいずれかの属性を付与しておく。そして、組み付け元部品10に相当する部位、組み付け先部品20に相当する部位、それぞれについて残差を算出し、少なくとも一方の部品で残差が所定値以上に大きい場合には失敗、両方の部品で残差が所定値未満であれば成功と判定する。
これにより、着目部位の設定を行うことなく、組み付け済部品30を構成する2部品の相対的な大きさ、形状、観測視点などの影響を受けずに組み付けの成否判定が可能となる。
以下、3次元形状モデルを構成する部位ごとに組み付け先部品20、または、組み付け元部品10の属性を付与した組み付け済部品30の3次元形状モデルを用いて、組み付け後検査を行う方法の詳細を説明する。
<情報処理装置の構成>
まずは図2を参照して、本実施形態に係る情報処理装置1の構成例を説明する。情報処理装置1は、モデル取得部110と、画像取得部120と、位置姿勢取得部130と、評価値取得部140と、成否判定部150とを備えている。
モデル取得部110は、組み付け済部品30の形状を表す3次元形状モデルを取得する。本実施形態では、3次元形状モデルは、3次元位置と3次元法線方向とから構成される物体表面上の局所的な3次元平面情報(以後、「局所面特徴」と呼ぶ)と、3次元位置と3次元線分方向とから構成される物体輪郭上の局所的な3次元線分情報(以後、「局所線特徴」と呼ぶ)とによって構成されるものとする。なお、単に幾何特徴と称した場合は、局所面特徴と局所線特徴との一方又は両方を指すものとする。
ここで、組み付け済部品30の3次元形状モデルの幾何特徴には、図1(d)に示すように、組み付け元部品10に相当する部位60、あるいは、組み付け先部品20に相当する部位70、のいずれかの属性をあらかじめ付与しておく。これにより、組み付け元部品10、あるいは、組み付け先部品20に属する局所面特徴と局所線特徴とをそれぞれ参照できるものとする。
ただし、3次元形状モデルとして保持する形状情報は、対象形状を表す3次元的な幾何情報であれば良く、表現形式に特に制限はない。例えば、単純な3次元点の集合や、稜線を表す3次元ラインの集合、3次元点3点で構成される面および線の集合で表されるポリゴン形式の形状情報など、他の表現形式で表しても良い。組み付け済部品30の3次元形状モデルは位置姿勢取得部130に入力される。
なお、本実施形態では、組み付け済部品30の3次元形状モデルとして、局所面特徴と局所線特徴とにより構成されたモデルを例に説明する。しかし、3次元形状モデルとしては他の表現方式を用いてもよい。例えば、3点と3辺および1面により構成されるポリゴンの集合として、3次元形状モデルを表現してもよいし、単純な3次元点の集合として3次元形状モデルを表現してもよい。また陰関数の組み合わせによりパラメトリックに3次元形状モデルを表現する方法を用いてもよい。組み付け済部品30の形状に即する限り、3次元形状モデルの表現方法に特に制限はない。
図2において、2次元画像撮影装置40は、2次元画像を撮影するカメラである。撮影される2次元画像は濃淡画像であってもよいしカラー画像であってもよい。本実施形態では、2次元画像撮影装置40は濃淡画像を出力する。2次元画像撮影装置40が撮影する画像は画像取得部120を介して情報処理装置1に入力される。カメラの焦点距離や主点位置、レンズ歪みパラメータなどの内部パラメータは、使用する機器の仕様を参照するか、または、非特許文献1に開示される方法によって事前にキャリブレーションしておく。
距離画像撮影装置50は、計測対象である物体表面上の点の3次元情報を計測する。距離画像撮影装置50には、距離画像を出力する距離センサを用いる。距離画像は、各画素が奥行きの情報を持つ画像である。本実施形態では、距離センサとして、波長の異なる色IDを付与したマルチスリットラインを対象物体に照射し、その反射光をカメラで撮影して三角測量によって距離計測を行うワンショットアクティブ式のものを利用する。
しかしながら、距離センサはこれに限るものではなく、光の飛行時間を利用するTime−of−flight方式であってもよい。また、ステレオカメラが撮影する画像から三角測量によって各画素の奥行きを計算するパッシブ式であってもよい。その他、距離画像を計測するものであればいかなるものであっても本発明の本質を損なうものではない。
距離画像撮影装置50が取得した距離画像は、画像取得部120を介して情報処理装置1に入力される。また、距離画像撮影装置50と2次元画像撮影装置40との光軸は一致しており、2次元画像撮影装置40が出力する濃淡画像の各画素と、距離画像撮影装置50が出力する距離画像の各画素との対応関係は既知であるものとする。しかしながら、本発明の適用は、濃淡画像と距離画像とが同一の視点である場合に限るものではない。
例えば、濃淡画像を撮影する撮影装置と、距離画像を撮影する撮影装置とが別の位置姿勢にあり、濃淡画像と距離画像とをそれぞれ別の視点から撮影してもよい。この場合は、撮影装置間の相対的な位置姿勢は既知であるとして、距離画像中の3次元点群を濃淡画像に投影することにより、濃淡画像と距離画像との対応を取る。
同一の物体を撮影する撮影装置間の相対的な位置姿勢が既知であり、その画像間の対応が計算できる限り、撮影装置同士の位置関係に特に制限はない。なお、2次元画像撮影装置40および距離画像撮影装置50には共通の座標系が設定されているものとする。以降、この座標系を撮影装置座標系と称する。
位置姿勢取得部130は、2次元画像撮影装置40及び距離画像撮影装置50により撮影された濃淡画像及び距離画像と、モデル取得部110により取得された組み付け済部品30の3次元形状モデルとに基づいて、撮影装置座標系に対する組み付け済部品30の位置姿勢を算出する。処理の詳細については後述する。
なお、本実施形態では、濃淡画像と距離画像とを同時に利用して位置姿勢を算出する例を説明するが、本発明は濃淡画像のみ、距離画像のみを用いて位置姿勢推定を行う場合においても同様に適用可能である。
評価値取得部140は、位置姿勢取得部130により算出された位置姿勢情報、および組み付け済部品30の3次元形状モデルに基づき、3次元形状モデルに付与された属性を参照して、組み付け元部品10および組み付け先部品20に対する組み付け評価値をそれぞれ算出して取得する。本実施形態では、組み付け済部品30の3次元形状モデル上で同一属性を持つ局所面特徴を抽出して、距離画像から得られる3次元点に対して最近傍となる局所面特徴と、3次元点とのペアを求め、局所面特徴と3次元点との3次元距離を残差として算出する。
そして、同一属性の局所面特徴に対して求めた残差の平均値を、その属性の部品に対する組み付け評価値とする。なお、組み付け評価値として算出する値は、以上に述べた方法に限るものでなく、組み付け済部品30と撮影画像との空間的なずれの大きさに応じて増減する値であれば何でもよく、計算方法および表現に特に制限はない。例えば、3次元形状モデルをポリゴンモデルで表現する場合は、その構成要素である3角メッシュと3次元点との距離を組み付け評価値としてもよい。
ここでは3次元形状モデルの着目部位に関する3次元距離を組み付け評価値として算出する例を示したが、他の方法により組み付け評価値を算出してもよい。例えば、組み付け元部品10の3次元形状モデルおよび組み付け先部品20の3次元形状モデルの相対位置姿勢の理想値と観測値との差を、組み付け評価値として利用してもよいし、3次元形状モデルと撮影画像との残差に基づいて組み付け評価値を計算してもよい。
組み付け元部品10と組み付け先部品20との組み付け部分のズレ量に応じて変動する値である限り、いかなる方式で算出した値を組み付け評価値として用いても良く、特に制限はない。
成否判定部150は、評価値取得部140により取得された組み付け元部品10の評価値と組み付け先部品20の評価値とに基づき、組み付け成否の判定を行う。
以上が、情報処理装置1の構成の一例についての説明である。なお、情報処理装置1には、コンピュータが内蔵されている。コンピュータには、CPU等の主制御部、ROM(Read Only Memory)、RAM(Random Access Memory)、HDD(Hard Disk Drive)等の記憶部が具備される。また、コンピュータにはその他、ボタンやディスプレイ又はタッチパネル等の入出力部、ネットワークカード等の通信部等も具備されていてもよい。なお、これら各構成部は、バス等により接続され、主制御部が記憶部に記憶されたプログラムを読み出して実行することで制御される。
<情報処理装置の処理>
次に、本実施形態における組み付け成否判定の処理手順について説明する。図4は、本実施形態に係る情報処理装置が実施する組み付け成否判定処理の手順を示すフローチャートである。
(ステップS1000)
画像取得部120は、2部品が組み付けられた状態の検査対象部品の濃淡画像および距離画像を取得する。まず、2次元画像撮影装置40から濃淡画像を取得する。同様に、距離画像撮影装置50から距離画像を取得する。本実施形態では、距離画像には距離画像撮影装置50から計測対象物体の表面までの距離が格納されているものとする。前述のように、2次元画像撮影装置40と距離画像撮影装置50との光軸は一致しているため、濃淡画像の各画素と距離画像の各画素との対応は既知である。
(ステップS1100)
次に、ステップS1100において、位置姿勢取得部130は、ステップS1000において取得された濃淡画像及び距離画像と、3次元形状モデルとの対応付けを行い、対応付け結果に基づいて組み付け先部品20および組み付け元部品10の位置姿勢を推定する。以下、図5のフローチャートを参照して、ステップS1100における位置姿勢推定処理について詳述する。
(ステップS1110)
まず、位置姿勢取得部130は、2次元画像撮影装置40と距離画像撮影装置50から構成される撮影装置に対する組み付け済部品30の位置及び姿勢の概略値を取得する。本実施形態では、対象物体が置かれているおおよその位置や姿勢があらかじめわかっているものとして、その値を概略値として用いる。
しかしながら、位置及び姿勢の概略値の設定方法はこれに限るものではない。例えば、位置姿勢取得部130は時間軸方向に連続して計測を行うものとして、前回(前時刻)の計測値を概略の位置及び姿勢として用いるものとしてもよい。また、過去の位置及び姿勢の計測結果に基づいて物体の速度や角速度を時系列フィルタにより推定し、過去の位置及び姿勢と推定された速度・加速度から現在の位置及び姿勢を予測したものを用いてもよい。また、様々な姿勢で撮影した対象物体の画像をテンプレートとして保持しておき、入力画像に対してテンプレートマッチングを行うことによって、対象物体の大まかな位置及び姿勢を推定してもよい。
あるいは、他のセンサによる物体の位置及び姿勢の計測が可能である場合には、該センサによる出力値を位置及び姿勢の概略値として用いてもよい。センサは、例えばトランスミッタが発する磁界を、対象物体に装着するレシーバで検出することにより位置及び姿勢を計測する磁気式センサであってもよい。また、対象物体上に配置されたマーカをシーンに固定されたカメラによって撮影することにより位置及び姿勢を計測する光学式センサであってもよい。その他、6自由度の位置及び姿勢を計測するセンサであればいかなるセンサであってもよい。
(ステップS1120)
次に、位置姿勢取得部130は、ステップS1110において取得された、組み付け済部品30の概略位置姿勢に基づいて、ステップS1000において取得された距離画像中の3次元点群と、組み付け済部品30の3次元形状モデルとの対応付けを行う。具体的には、物体の概略位置姿勢と、校正済みの距離画像撮影装置50の内部パラメータとを用いて、3次元形状モデルを構成する各局所面特徴を距離画像上に投影する。そして、投影した各局所面特徴に対応する距離画像上の距離点を、各面に対応する3次元点として保持する。
(ステップS1130)
位置姿勢取得部130は、濃淡画像上のエッジと3次元形状モデルとの対応付けを行う。ステップS1120と同様に、それぞれの物体の概略位置姿勢と校正済みの2次元画像撮影装置40の内部パラメータとを用いて3次元形状モデルを構成する局所線特徴を画像へ投影し、画像上で検出されたエッジと3次元形状モデル中の局所線特徴とを対応付ける。エッジが各局所線特徴に対応して複数検出された場合には、複数検出されたエッジのうち、投影された局所線特徴に対して画像上で最も近いエッジを対応付ける。
(ステップS1140)
位置姿勢取得部130は、ステップS1120で算出した3次元形状モデル中の各面に対応する距離画像中の3次元点と、ステップS1130で検出した3次元形状モデル中の各線分に対応する濃淡画像上のエッジとの対応データに基づいて、組み付け先部品20および組み付け元部品10の位置姿勢を算出する。本ステップでは、算出した対応データに基づいて、計測データと3次元形状モデルとの間の誤差が最小になるように、線形連立方程式を解くことで、位置姿勢の更新を行う。
ここで、画像上の距離と3次元空間中での距離とでは尺度が異なるため、単純に連立方程式を解くだけでは計測データのどちらか一方に寄与率が偏ってしまう可能性がある。そのため、本実施形態では、非特許文献2に示すような最尤推定に基づく最適化を行うことで、尺度を合わせた位置姿勢取得を行う。
最尤推定に基づく位置姿勢取得方法に関しては、本発明の本質に関わる話ではないため、詳細な処理の記述は省略する。なお、計測対象物体の位置及び姿勢の取得方法は、上述の最尤推定に基づく手法に限るものでなく、例えば、Levenberg-Marquardt法による繰り返し演算を行ってもよいし、よりシンプルな方法である最急降下法によって行ってもよい。また、共役勾配法やICCG法など、他の非線形最適化計算手法を用いてもよい。
(ステップS1150)
位置姿勢取得部130は、ステップS1140で更新した位置姿勢が、収束しているか否か、すなわち、さらに反復計算を必要とするか否かの判定を行う。具体的には、補正値がほぼ0である場合や、誤差ベクトルの二乗和の補正前と補正後との差がほぼ0である場合に収束したと判定する。収束していなければ(S1150;No)、ステップS1120に戻り、更新した位置姿勢を用いて、再度位置姿勢推定処理を行う。収束していると判断した場合は(S1150;Yes)、この処理は終了し、撮影装置と組み付け済部品30との相対的な位置姿勢の最終的な推定値が決定される。以上で図5の処理が終了し、図4に戻る。
(ステップS1200)
成否判定部150は、3次元形状モデルと、ステップS1100で取得された位置姿勢と、距離画像とに基づいて、組み付け成否を判定する。成否判定部150の判定結果は不図示の表示部等を介して出力される。出力の方法は表示に限らず、発光部や音源等を通じて成否を報知できれば何れの方法であってもよい。表示部、発光部、音源等の構成は情報処理装置1が備えていてもよいし、情報処理装置1とは別体の外部装置が備えていてもよい。以下、図6のフローチャートを参照して、ステップS1200における組み付け成否判定処理について詳述する。
(ステップS1210)
まず、評価値取得部140は、3次元形状モデル中から、組み付け元部品10に属する各局所面特徴を参照して、各面と距離画像中の3次元点との残差を算出し、この残差の平均値を組み付け元部品10の評価値として算出する。
(ステップS1220)
次に、評価値取得部140は、3次元形状モデル中から、組み付け先部品20に属する各局所面特徴を参照して、各面と距離画像中の3次元点との残差を算出し、この残差の平均値を組み付け先部品20の評価値として算出する。
(ステップS1230)
成否判定部150は、ステップS1210で算出した組み付け元部品10の評価値と、ステッS1220で算出した組み付け先部品20の評価値とに基づき、組み付け成否を判定する。具体的には、組み付け先部品20の評価値と、組み付け元部品10の評価値とを、所定の閾値と比較する。閾値の設定については後述するが、2つの評価値に対して共通の値を用いてもよいし、それぞれ別の値に設定してもよい。
ここで、2つの評価値のうち、少なくともいずれか一方の評価値が所定の閾値を超過する場合には組み付け失敗と判定する。逆に、2つの評価値が、いずれも所定の閾値以下である場合には成功と判定する。
なお、閾値は、事前に設定しておく。具体的には、たとえば、組み付け先部品20と組み付け元部品10とが正しく組み付けられた部品を撮影した組み付け成功画像を用意する。そして、組み付け成功画像に対してステップS1000からステップS1200までの処理を行い、成功画像に対して算出された組み付け元部品10の評価値、および組み付け先部品20の評価値を、それぞれ閾値として設定する。このとき、算出された評価値をそのまま閾値として用いるのではなく、一定のバイアスを付加して、成否判定の厳しさを調整してもよい。あるいは任意の閾値をユーザが手動で設定してもよいし、このほかの方法であってもかまわない。
以上説明したように、本実施形態では、組み付け済部品の3次元形状モデルに対して、部位ごとに組み付け先部品、あるいは、組み付け元部品のいずれかの属性を付与しておき、各属性に対応した組み付けの評価値をそれぞれ算出して、各評価値を用いて組み付けの成否判定を行う。
これにより、組み付け先部品、あるいは、組み付け元部品の少なくとも一方の部品で撮影画像との不一致を検出できるため、着目部位の設定を行うことなく、且つ、組み付け済部品を構成する2部品の相対的な大きさ、形状、観測視点などの影響を受けずに、組み付けの成否を精度よく判定することが可能となる。
なお、本実施形態では、評価値取得部140が算出する評価値として、各局所面特徴の平均値を用いたが、中央値を用いてもよいし、あるいは、各局所面特徴に対して算出した残差からヒストグラムを作成し、その最頻値を用いてもよい。また、本実施形態では、局所面特徴を利用して、各面と3次元点との残差を算出したが、局所線特徴を利用してもよい。その他、組み付け評価値の算出に使用する残差やその統計量の計算は、3次元形状モデルと撮影画像との差が検出できる限り、計算方式に特に制限はない。
(変形例1−1)
上述の実施形態では、2つの部品から構成される組み付け済部品を対象とした事例について述べた。しかし、3つ以上の部品で構成される組み付け済部品に対して、組み付けの成否を判定する場合にも同様の方法を適用可能である。この場合にも、組み付け済部品を構成する部品の属性を、組み付け済部品の3次元形状モデルの各形状にそれぞれ付与しておく。そして、3次元形状モデルの属性に基づき、その属性に該当する部位を参照してそれぞれ評価値を算出する。
構成部品のいずれか1つでも評価値が閾値よりも大きければ組み付け失敗、そうでなければ成功と判定する。これにより、3つ以上の部品で構成される組み付け済部品に対しても、着目部位の設定を行うことなく、組み付けの成否を精度よく判定することが可能となる。
(第2の実施形態)
第1の実施形態では、複数部品から構成される組み付け済部品の組み付け成否を判定する行う方法について述べた。これに対して、本実施形態では、ロボットハンドにより把持を行った部品(把持部品)の画像を、ハンドに取り付けた撮影装置で撮影して把持の成否を判定することを想定する。なお、撮影装置はハンドに取り付けず、ロボットの動作範囲内に固定で設置したものを用いてもよい。このとき、ハンドによる隠蔽の影響を受けずに安定的に位置姿勢を算出する例を説明する。
図7に一例を示すような、ロボットアーム700の先端にロボットハンド710を取り付け、ロボットハンド710により把持した把持部品720を、ロボットハンドに取り付けた撮影装置730で撮影して、把持の成否を判定することを想定する。
本実施形態では、正しく把持が行えた状態の、ロボットハンド710と把持部品720とを一体とみなした3次元形状モデル(以後、把持状態3次元形状モデルと呼ぶことにする)を利用する。ここで、把持状態3次元形状モデルには、ロボットハンド710に相当する部位と、把持部品720に相当する部位とを区別可能な属性を付与しておくものとする。この把持状態3次元形状モデルを、第1の実施形態における組み付け済部品30の3次元形状モデルとみなして、同様の処理を実施する。
すなわち、把持状態のロボットハンド710および把持部品720を一体のものとみなして、撮影画像を用いて位置姿勢を算出し、その後、把持状態3次元形状モデルから各属性に該当する部位を参照して、撮影画像との残差を求める。もし、ロボットハンド710に相当する部位、あるいは把持部品720に相当する部位のいずれかで残差が大きい場合には、把持に失敗していると判定し、そうでなければ把持に成功していると判定する。
本実施形態によれば、ロボットハンドによる部品の把持の成否を、着目部位の設定を行うことなく精度よく判定することが可能となる。
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
1:情報処理装置、10:組み付け元部品、20:組み付け先部品、30:組み付け済部品、110:モデル取得部、120:画像取得部、130:位置姿勢取得部、140:評価値取得部、150:成否判定部

Claims (11)

  1. 第1の物体が第2の物体に組み付けられた組み付け済物体の画像を取得する画像取得手段と、
    部位ごとに前記第1の物体又は前記第2の物体のいずれかの属性が付与された前記組み付け済物体の3次元形状モデルを取得するモデル取得手段と、
    前記画像に基づいて前記組み付け済物体の位置姿勢を取得する位置姿勢取得手段と、
    前記組み付け済物体の画像に基づいて、前記位置姿勢の前記3次元形状モデルの、前記第1の物体の属性が付与された部位について当該第1の物体の組み付けの状態を評価するための第1の評価値と、前記第2の物体の属性が付与された部位について当該第2の物体の組み付けの状態を評価するための第2の評価値とを取得する評価値取得手段と、
    前記第1の評価値及び前記第2の評価値に基づいて組み付けの成否を判定する判定手段と、
    を備えることを特徴とする情報処理装置。
  2. 前記判定手段は、前記第1の評価値及び前記第2の評価値が共に閾値以下である場合に組み付けが成功したと判定することを特徴とする請求項1に記載の情報処理装置。
  3. 前記判定手段は、前記第1の評価値及び前記第2の評価値の少なくとも1つが閾値を超過する場合に組み付けが失敗したと判定することを特徴とする請求項1又は2に記載の情報処理装置。
  4. 前記評価値取得手段は、
    前記位置姿勢の前記3次元形状モデルの前記第1の物体の属性が付与された部位の幾何特徴と、前記画像とから取得される第1の残差に基づいて、前記第1の評価値を取得し、
    前記位置姿勢の前記3次元形状モデルの前記第2の物体の属性が付与された部位の幾何特徴と、前記画像とから取得される第2の残差に基づいて、前記第2の評価値を取得する
    ことを特徴とする請求項1乃至3の何れか1項に記載の情報処理装置。
  5. 前記第1の評価値は、前記第1の残差の平均値、中央値、又は前記第1の残差のヒストグラムから得られる最頻値であることを特徴とする請求項4に記載の情報処理装置。
  6. 前記第2の評価値は、前記第2の残差の平均値、中央値、又は前記第2の残差のヒストグラムから得られる最頻値であることを特徴とする請求項4又は5に記載の情報処理装置。
  7. 前記幾何特徴は、前記3次元形状モデルを構成する局所面特徴又は局所線特徴であることを特徴とする請求項4乃至6の何れか1項に記載の情報処理装置。
  8. 前記判定手段による判定結果を出力する出力手段をさらに備えることを特徴とする請求項1乃至7の何れか1項に記載の情報処理装置。
  9. 前記画像は、濃淡画像および距離画像の少なくとも一方を含むことを特徴とする請求項1乃至8の何れか1項に記載の情報処理装置。
  10. 情報処理装置の制御方法であって、
    画像取得手段が、第1の物体が第2の物体に組み付けられた組み付け済物体の画像を取得する画像取得工程と、
    モデル取得手段が、部位ごとに前記第1の物体又は前記第2の物体のいずれかの属性が付与された前記組み付け済物体の3次元形状モデルを取得するモデル取得工程と、
    位置姿勢取得手段が、前記画像に基づいて前記組み付け済物体の位置姿勢を取得する位置姿勢取得工程と、
    評価値取得手段が、前記組み付け済物体の画像に基づいて、前記位置姿勢の前記3次元形状モデルの、前記第1の物体の属性が付与された部位について当該第1の物体の組み付けの状態を評価するための第1の評価値と、前記第2の物体の属性が付与された部位について当該第2の物体の組み付けの状態を評価するための第2の評価値とを取得する評価値取得工程と、
    判定手段が、前記第1の評価値及び前記第2の評価値に基づいて組み付けの成否を判定する判定工程と、
    を有することを特徴とする情報処理装置の制御方法。
  11. コンピュータを、請求項1乃至9の何れか1項に記載の情報処理装置として機能させるためのプログラム。
JP2016026347A 2016-02-15 2016-02-15 情報処理装置、情報処理装置の制御方法およびプログラム Active JP6677522B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016026347A JP6677522B2 (ja) 2016-02-15 2016-02-15 情報処理装置、情報処理装置の制御方法およびプログラム
US15/429,868 US10242438B2 (en) 2016-02-15 2017-02-10 Information processing apparatus, control method of information processing apparatus, and storage medium for image recognition of the assembly of an object

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016026347A JP6677522B2 (ja) 2016-02-15 2016-02-15 情報処理装置、情報処理装置の制御方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2017144498A JP2017144498A (ja) 2017-08-24
JP6677522B2 true JP6677522B2 (ja) 2020-04-08

Family

ID=59562238

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016026347A Active JP6677522B2 (ja) 2016-02-15 2016-02-15 情報処理装置、情報処理装置の制御方法およびプログラム

Country Status (2)

Country Link
US (1) US10242438B2 (ja)
JP (1) JP6677522B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10252417B2 (en) 2016-03-02 2019-04-09 Canon Kabushiki Kaisha Information processing apparatus, method of controlling information processing apparatus, and storage medium
JP6850639B2 (ja) * 2017-03-09 2021-03-31 本田技研工業株式会社 ロボット
US11613021B2 (en) * 2017-06-13 2023-03-28 Kawasaki Jukogyo Kabushiki Kaisha Operation system
US10682774B2 (en) 2017-12-12 2020-06-16 X Development Llc Sensorized robotic gripping device
JP7080203B2 (ja) * 2019-06-28 2022-06-03 三菱電機株式会社 ロボットシステム、組立体の組立方法、組立体の検査方法、電動ハンドの検査方法および電動ハンド性能検査治具
US11816798B1 (en) * 2020-03-17 2023-11-14 Apple Inc. 3D surface representation refinement
JP7479205B2 (ja) 2020-06-09 2024-05-08 株式会社日立オートメーション ロボットシステム、制御装置、及び制御方法
WO2024048426A1 (ja) * 2022-08-29 2024-03-07 リンクウィズ株式会社 製造システム、制御方法及び制御プログラム

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4402053A (en) * 1980-09-25 1983-08-30 Board Of Regents For Education For The State Of Rhode Island Estimating workpiece pose using the feature points method
JP2000055637A (ja) * 1998-08-10 2000-02-25 Mazda Motor Corp ワーク検査装置及び部品画像生成装置及びワーク検査方法及びコンピュータ読み取り可能な記憶媒体
JP4620918B2 (ja) * 2001-11-05 2011-01-26 シチズンホールディングス株式会社 ホッパ
JP4382447B2 (ja) * 2003-11-19 2009-12-16 ダイハツ工業株式会社 誤欠品検査装置
JP2007268683A (ja) * 2006-03-31 2007-10-18 Shigeru Co Ltd 部品の誤組み付け防止方法
JP5393318B2 (ja) * 2009-07-28 2014-01-22 キヤノン株式会社 位置姿勢計測方法及び装置
JP5618569B2 (ja) * 2010-02-25 2014-11-05 キヤノン株式会社 位置姿勢推定装置及びその方法
JP5746477B2 (ja) * 2010-02-26 2015-07-08 キヤノン株式会社 モデル生成装置、3次元計測装置、それらの制御方法及びプログラム
JP5863440B2 (ja) * 2010-12-28 2016-02-16 キヤノン株式会社 情報処理装置および方法
JP6323993B2 (ja) * 2012-08-28 2018-05-16 キヤノン株式会社 情報処理装置、情報処理方法、及びコンピュータプログラム
JP6370038B2 (ja) * 2013-02-07 2018-08-08 キヤノン株式会社 位置姿勢計測装置及び方法
JP6324025B2 (ja) * 2013-11-05 2018-05-16 キヤノン株式会社 情報処理装置、情報処理方法
JP6444027B2 (ja) * 2013-12-09 2018-12-26 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、情報処理システムおよびプログラム
JP6594129B2 (ja) * 2014-11-28 2019-10-23 キヤノン株式会社 情報処理装置、情報処理方法、プログラム
JP2016170122A (ja) * 2015-03-13 2016-09-23 キヤノン株式会社 計測装置
US20180029235A1 (en) * 2016-07-28 2018-02-01 X Development Llc Error Accrual and Mitigation During Robotic Process

Also Published As

Publication number Publication date
US20170236268A1 (en) 2017-08-17
US10242438B2 (en) 2019-03-26
JP2017144498A (ja) 2017-08-24

Similar Documents

Publication Publication Date Title
JP6677522B2 (ja) 情報処理装置、情報処理装置の制御方法およびプログラム
JP6444027B2 (ja) 情報処理装置、情報処理装置の制御方法、情報処理システムおよびプログラム
JP6180087B2 (ja) 情報処理装置及び情報処理方法
JP5393318B2 (ja) 位置姿勢計測方法及び装置
JP6415291B2 (ja) 情報処理装置、情報処理方法、プログラム
JP5567908B2 (ja) 3次元計測装置、その計測方法及びプログラム
JP6573354B2 (ja) 画像処理装置、画像処理方法、及びプログラム
JP6271953B2 (ja) 画像処理装置、画像処理方法
JP6324025B2 (ja) 情報処理装置、情報処理方法
US10189162B2 (en) Model generation apparatus, information processing apparatus, model generation method, and information processing method
JP5839971B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP6370038B2 (ja) 位置姿勢計測装置及び方法
WO2012066769A1 (en) Information processing apparatus and information processing method
US9630322B2 (en) Information processing apparatus, method therefor, measurement apparatus, and working apparatus for estimating a position/orientation of a three-dimensional object based on relative motion
US11654571B2 (en) Three-dimensional data generation device and robot control system
JP2012003638A (ja) 情報処理装置及びその処理方法
JP2016170050A (ja) 位置姿勢計測装置、位置姿勢計測方法及びコンピュータプログラム
JP6626338B2 (ja) 情報処理装置、情報処理装置の制御方法、およびプログラム
JP6180158B2 (ja) 位置姿勢計測装置、位置姿勢計測装置の制御方法、およびプログラム
US20170256046A1 (en) Information processing apparatus, method of controlling information processing apparatus, and storage medium
JP6890422B2 (ja) 情報処理装置、情報処理装置の制御方法およびプログラム
JP6766229B2 (ja) 位置姿勢計測装置及び方法
JP6285765B2 (ja) 情報処理装置、情報処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190212

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190912

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191004

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191202

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: 20200214

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200313

R151 Written notification of patent or utility model registration

Ref document number: 6677522

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151