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

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

Info

Publication number
JP2019159901A
JP2019159901A JP2018046664A JP2018046664A JP2019159901A JP 2019159901 A JP2019159901 A JP 2019159901A JP 2018046664 A JP2018046664 A JP 2018046664A JP 2018046664 A JP2018046664 A JP 2018046664A JP 2019159901 A JP2019159901 A JP 2019159901A
Authority
JP
Japan
Prior art keywords
dimensional
information
recognition
model
template
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.)
Granted
Application number
JP2018046664A
Other languages
English (en)
Other versions
JP7161857B2 (ja
Inventor
嘉典 小西
Yoshinori Konishi
嘉典 小西
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.)
Omron Corp
Original Assignee
Omron Corp
Omron Tateisi Electronics Co
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 Omron Corp, Omron Tateisi Electronics Co filed Critical Omron Corp
Priority to JP2018046664A priority Critical patent/JP7161857B2/ja
Priority to CN201980012034.3A priority patent/CN111742349B/zh
Priority to US16/975,389 priority patent/US11823414B2/en
Priority to PCT/JP2019/005762 priority patent/WO2019176450A1/ja
Priority to EP19766825.4A priority patent/EP3767589A4/en
Publication of JP2019159901A publication Critical patent/JP2019159901A/ja
Application granted granted Critical
Publication of JP7161857B2 publication Critical patent/JP7161857B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/1605Simulation of manipulator lay-out, design, modelling of manipulator
    • 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
    • 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/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • 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/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/751Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Health & Medical Sciences (AREA)
  • Automation & Control Theory (AREA)
  • Human Computer Interaction (AREA)
  • Image Analysis (AREA)
  • Manipulator (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Abstract

【課題】3次元位置姿勢を高い精度で認識することのできる情報処理装置、方法及びプログラムを提供する。【解決手段】情報処理装置100は、認識対象物の3次元モデルを生成するための3次元モデル情報の入力を受ける第1入力部と、3次元モデル情報に基づき、前記認識対象物の上縁部の形状を示す2次元テンプレートを生成するテンプレート生成部と、前記3次元モデルの3次元座標と、当該3次元モデルを撮影したときの2次元座標との関係を示す座標関係情報を生成する座標関係特定部と、前記認識対象物を撮影した撮影画像の入力を受ける第2入力部と、前記撮影画像と前記2次元テンプレートとをマッチングするマッチング部と、前記マッチング部による2次元マッチング結果に応じて検出される前記撮影画像の前記認識対象物に対し、前記座標関係情報を参照することにより前記認識対象物の3次元位置及び姿勢を認識する認識部とを備える。【選択図】図5

Description

本発明は、情報処理装置、情報処理方法、及びプログラムに関する。
近年、カメラ等で対象物を撮影し、当該撮影結果に応じて部材の位置を判別した上で、アームにより当該対象物を掴んだり組み立てたりするなどの操作を行う産業ロボットが普及しつつある。ここで、例えば、組み立て工場等においては、1種類の多数の部材を、コンテナと呼ばれる箱型部材の中に入れて運搬等することが多い。このコンテナの中に入った部材を、産業ロボットのアームで持ち上げる等の操作を行うためには、アームがコンテナの縁に当たらないように制御する必要がある。
例えば特許文献1には、複数の箱型アームを情報から撮影して全体画像を取得して箱状ワークのエッジ部分を検出し、距離センサにより複数の箱型ワーク全体の3次元形状を点群として計測することが記載されている。当該手法では、距離センサによる計測点の点群情報を抽出し、当該点群情報に基づいて、3次元形状から各箱状ワークの位置と姿勢を認識する。
特許第5429614号
ここで、対象物である部材が入るコンテナは、一般に縁が細いことが多い。縁が細いと、箱状ワークの縁で照射光の反射が得られにくくなる等の理由により、特許文献1で記載されているような距離センサにより3次元点群情報を取得することは難しい。例えば、産業ロボットがコンテナの認識に失敗すると、当該産業ロボットのアームがコンテナの縁に当たる等の不都合が生じる場合がある。
本発明のいくつかの態様は前述の課題に鑑みてなされたものであり、3次元位置姿勢を高い精度で認識することのできる情報処理装置、情報処理方法、及びプログラムを提供することを目的の1つとする。
本発明の一態様にかかる情報処理装置は、認識対象物の3次元モデルを生成するための3次元モデル情報の入力を受ける第1入力部と、3次元モデル情報に基づき、前記認識対象物の上縁部の形状を示す2次元テンプレートを生成するテンプレート生成部と、前記3次元モデルの3次元座標と、当該3次元モデルを撮影したときの2次元座標との関係を示す座標関係情報を生成する座標関係特定部と、前記認識対象物を撮影した撮影画像の入力を受ける第2入力部と、前記撮影画像と前記2次元テンプレートとをマッチングするマッチング部と、前記マッチング部による2次元マッチング結果に応じて検出される前記撮影画像の前記認識対象物に対し、前記座標関係情報を参照することにより前記認識対象物の3次元位置及び姿勢を認識する認識部とを備える。
当該構成では、2次元テンプレートを生成し、撮影画像と当該2次元テンプレートとのマッチングに応じて、認識対象物の2次元位置及び姿勢を検出する。幅が細い物体や光が正反射しやすい素材でできた物体は3次元座標を計測しづらいが、2次元におけるマッチング処理に基づいて認識対象物の3次元位置及び姿勢を検出するため、高い精度で認識対象物の姿勢位置を認識することができる。これにより、例えば当該構成にかかる情報処理方法を、アームを持つ産業ロボットでの、認識対象物であるコンテナの姿勢位置の認識に適用した場合には、ロボットアームがコンテナに衝突することに伴うロボットアームおよび/またはコンテナの破損などの事態を防止することが可能である。
本発明の一態様にかかる情報処理方法は、認識対象物の3次元モデルを生成するための3次元モデル情報の入力を受ける処理と、3次元モデル情報に基づき、前記認識対象物の上縁部の形状を示す2次元テンプレートを生成する処理と、前記3次元モデルの3次元座標と、当該3次元モデルを撮影したときの2次元座標との関係を示す座標関係情報を生成する処理と、前記認識対象物を撮影した撮影画像の入力を受ける処理と、前記撮影画像と前記2次元テンプレートとをマッチングする処理と、2次元マッチング結果に応じて検出される前記撮影画像の前記認識対象物に対し、前記座標関係情報を参照することにより前記認識対象物の3次元位置及び姿勢を認識する処理とを情報処理装置が行う。
当該構成では、2次元テンプレートを生成し、撮影画像と当該2次元テンプレートとのマッチングに応じて、認識対象物の2次元位置及び姿勢を検出する。幅が細い物体や光が正反射しやすい素材でできた物体は3次元座標を計測しづらいが、2次元におけるマッチング処理に基づいて認識対象物の3次元位置及び姿勢を検出するため、高い精度で認識対象物の姿勢位置を認識することができる。これにより、例えば当該構成にかかる情報処理方法を、アームを持つ産業ロボットでの、認識対象物であるコンテナの姿勢位置の認識に適用した場合には、ロボットアームがコンテナに衝突することに伴うロボットアームおよび/またはコンテナの破損などの事態を防止することが可能である。
本発明の一態様にかかるプログラムは、認識対象物の3次元モデルを生成するための3次元モデル情報の入力を受ける処理と、3次元モデル情報に基づき、前記認識対象物の上縁部の形状を示す2次元テンプレートを生成する処理と、前記3次元モデルの3次元座標と、当該3次元モデルを撮影したときの2次元座標との関係を示す座標関係情報を生成する処理と、前記認識対象物を撮影した撮影画像の入力を受ける処理と、前記撮影画像と前記2次元テンプレートとをマッチングする処理と、2次元マッチング結果に応じて検出される前記撮影画像の前記認識対象物に対し、前記座標関係情報を参照することにより前記認識対象物の3次元位置及び姿勢を認識する処理とを情報処理装置に実行させる。
当該構成では、2次元テンプレートを生成し、撮影画像と当該2次元テンプレートとのマッチングに応じて、認識対象物の3次元位置及び姿勢を検出する。幅が細い物体や光が正反射しやすい素材でできた物体は3次元座標を計測しづらいが、2次元におけるマッチング処理に基づいて認識対象物の3次元位置及び姿勢を検出するため、高い精度で認識対象物の姿勢位置を認識することができる。これにより、例えば当該構成にかかるプログラムを、アームを持つ産業ロボットでの、認識対象物であるコンテナの姿勢位置の認識に適用した場合には、ロボットアームがコンテナに衝突することに伴うロボットアームおよび/またはコンテナの破損などの事態を防止することが可能である。
なお、本発明において、「部」や「手段」、「装置」、「システム」とは、単に物理的手段を意味するものではなく、その「部」や「手段」、「装置」、「システム」が有する機能をソフトウェアによって実現する場合も含む。また、1つの「部」や「手段」、「装置」、「システム」が有する機能が2つ以上の物理的手段や装置により実現されても、2つ以上の「部」や「手段」、「装置」、「システム」の機能が1つの物理的手段や装置により実現されてもよい。
実施形態にかかる情報処理装置の処理の一例を説明するための図である。 実施形態にかかる情報処理装置の処理の一例を説明するための図である。 実施形態にかかる情報処理装置の処理の一例を説明するための図である。 実施形態にかかる情報処理装置の処理の一例を説明するための図である。 実施形態にかかる情報処理装置の構成の一例を模式的に例示するための図である。 実施形態にかかる情報処理装置の処理手順の一例を例示するフローチャートである。 実施形態にかかる情報処理装置の処理手順の一例を例示するフローチャートである。 実施形態にかかる情報処理装置の処理手順の一例を例示するフローチャートである。 実施形態にかかる情報処理装置の処理手順の一例を例示するフローチャートである。
以下、図面を参照して本発明の実施形態を説明する。ただし、以下に説明する実施形態は、あくまでも例示であり、以下に明示しない種々の変形や技術の適用を排除する意図はない。即ち、本発明は、その趣旨を逸脱しない範囲で種々変形して実施することができる。また、以下の図面の記載において、同一又は類似の部分には同一又は類似の符号を付して表している。図面は模式的なものであり、必ずしも実際の寸法や比率等とは一致しない。図面相互間においても互いの寸法の関係や比率が異なる部分が含まれていることがある。
[1 適用例]
まず、図1乃至図4を参照しながら、実施形態にかかる全体の概要を説明する。本実施形態にかかる情報処理装置は、例えば、アームを持つ産業ロボットの操作対象物である部材が入ったコンテナ等の3次元位置姿勢を認識するために利用することができる。コンテナの3次元位置姿勢を精度高く認識できれば、産業ロボットはアームをコンテナに衝突させないように制御することができるため、アームおよび/又はコンテナの衝突による破損を防ぐことができる。なお、実施形態にかかる情報処理装置が3次元位置姿勢を認識する認識対象物はコンテナに限られるものではないが、以下の説明ではコンテナである場合を中心に説明する。
情報処理装置は、予めコンテナの上縁部の形状を示す2次元テンプレートを生成した上で、距離センサ等による3次元情報ではなく、カメラにより撮影されたコンテナを含む2次元画像に対して2次元テンプレートマッチングすることによりコンテナの上縁部を検出する。以下説明するように、本実施形態にかかる情報処理装置の処理は、2次元テンプレートの生成処理、及び、生成された2次元テンプレートを用いた3次元位置姿勢の認識処理とを含む。以下、当該2つの処理を説明する。
[1.1 2次元テンプレート生成処理]
以下、図1及び図2を参照しながら2次元テンプレートの生成処理について説明する。情報処理装置は、まず、コンテナの3次元モデルに関する3次元CAD情報の入力を受け、当該CAD情報を解析する。これにより、図1に示すように、コンテナの3次元モデルの上縁部がどこであるかを特定した上で、当該上縁部の特徴点を抽出等することにより、図2に示すような、コンテナの3次元モデルの上縁部の形状を示す2値化2次元画像である2次元テンプレート画像を生成する。このとき生成される2次元テンプレート画像は、仮想空間内に仮想カメラとコンテナの3次元モデルを配置した際に、コンテナの3次元モデルの上縁部を撮影した上縁部画像に相当するものである。
また情報処理装置は、コンテナの3次元モデルから上縁部以外の部分も含む特徴点を抽出した上で、それらの特徴点が、仮想空間内に配置された仮想カメラから撮影された2次元画像において、どこに位置するかを特定する。これにより、コンテナの3次元モデルの3次元座標と、仮想カメラにより撮影された2次元画像上の2次元座標との対応関係を記憶する。なお、当該対応関係は、後述する座標関係情報に相当する。
なお、図1及び図2では、四角いコンテナを図示しているがこれに限られるものではなく、丸いコンテナや、内部に仕切りがあるコンテナ等を処理対象とすることも考えられる。
[1.2 認識処理]
次に、実環境においてカメラ等が撮像した2次元の撮像画像に対する処理を図3及び図4を参照しながら説明する。カメラから図3に示すような撮像画像の入力を受けると、情報処理装置は当該撮像画像を輝度画像に変換した上で(或いは、入力を輝度画像としてもよい)、図4に示すように、予め生成された2次元テンプレートとのマッチングを行う。これにより情報処理装置は、2次元テンプレートが生成される元となる3次元モデルに相当するコンテナが、撮像画像上のどの位置(x,y座標)に、どのような回転角度で配置されているかを認識することができる。さらに情報処理装置は、撮像画像上の特徴点の位置を、マッチングした2次元テンプレートを基準として特定する。それらの特徴点の位置を、先述の座標関係情報を用いて変換することで、コンテナの3次元位置姿勢を認識する。
[2 構成例]
以下、図5を参照しながら、本実施形態にかかる情報処理装置100の動作構成例を説明する。情報処理装置100は、大きく、テンプレート生成部110、DB(データベース)130、認識部150を含む。なお、これらの各構成は、プロセッサ上で動作するプログラムとして実現されてもよいし、或いは専用の1又は複数の半導体等のハードウェアとして実現されてもよい。また、情報処理装置100も、物理的に1つのコンピュータ等として実現されてもよいし、或いは物理的に複数のコンピュータ等として実現されてもよい。例えば、テンプレート生成部110と、認識部150とを別のコンピュータにより実現することができる。テンプレート生成部110や認識部150をプログラムとして実現する場合のハードウェア構成やプログラムとしての動作等については、図9を参照しながら後述する。
テンプレート生成部110は、モデル入力部、カメラパラメータ入力部113、上縁部画像生成部115、座標関係情報生成部117、及び出力部119を含む。
モデル入力部111は、コンテナの3次元CADモデルの入力を受ける。或いは、3次元CADモデルの代わりに、コンテナの各寸法値が入力されてもよい。ここで、モデル入力部111は本発明の「第1入力部」の一例である。3次元CADモデル及びコンテナの各寸法値は本発明の「3次元モデル情報」の一例である。なお、モデル入力部111で入力を受けたコンテナのCADモデル、或いは寸法値から生成されるコンテナのモデルを、総称して「3次元コンテナモデル」という。
カメラパラメータ入力部113は、3次元コンテナモデルが配置される仮想空間上で当該3次元コンテナモデルを撮影する仮想カメラに関するカメラパラメータの入力を受ける。当該カメラパラメータは、3次元コンテナモデルに対する仮想カメラの相対的な位置や方向、画角等の情報を含むことができる。このとき、認識部150がコンテナの3次元位置姿勢を認識する際に用いる輝度画像を撮影するために配置される実環境のカメラの位置や方向等に合わせて当該カメラパラメータを設定してもよい。先述のとおり、情報処理装置100は、3次元コンテナモデルの上縁部を仮想カメラにより撮影した結果である上縁部画像を変換して2次元テンプレート131を生成する。情報処理装置100は、その上で実環境における撮影画像(後述の輝度画像に相当)と当該2次元テンプレート131とをマッチングする。このとき、2次元テンプレート131の生成の際に用いる仮想カメラの位置や角度等と、実環境における撮影画像を撮影する際に用いるカメラの位置や角度等とを略一致させておけば、テンプレート生成部110が生成した2次元テンプレートをそのまま用いて、撮影画像と2次元テンプレートとのマッチングを行うことができる。実環境のコンテナに対するカメラの相対的な位置や姿勢は、コンテナを設置する平面上に間隔が既知のマーカーを置き、実環境カメラで撮影した画像上においてマーカーを認識することで算出することができる。算出された実環境カメラの相対位置姿勢とコンテナの3次元モデル用いることで、コンテナを含む空間の任意平面をカメラに投影した画像を作成可能である。
なお、もし2次元テンプレート131を生成する際に用いる仮想カメラの位置や方向等(カメラパラメータ)を、実環境におけるカメラの位置や方向と異なるものとして設定する場合には、テンプレート生成部110が2次元テンプレート131の生成に用いる仮想カメラの位置と、認識部150に入力される輝度画像の撮影に用いられるカメラとの位置や角度の相対的な情報に基づき、認識部150に入力される輝度画像および/又は2次元テンプレート131を変換すればよい。カメラの相対的な関係に応じて輝度画像および/又は2次元テンプレート131を変換する場合の処理については、図8を参照しながら後述する。
上縁部画像生成部115は、3次元コンテナモデルを、カメラパラメータで位置等が設定される仮想カメラにより仮想空間上で撮影した場合の、コンテナの上縁部に相当する画像(以下「上縁部画像」という)を生成する。より具体的には、まず上縁部画像生成部115は、まず、3次元コンテナモデルを構成するメッシュの法線方向及び高さから、3次元コンテナモデルの上縁部がどこであるかを特定する。例えば、3次元コンテナモデルを構成する各メッシュのうち、法線が略鉛直方向を向いており(少なくとも水平方向よりは上方向を向いている)、かつ、周囲のメッシュよりも高い部分を上縁部として特定することが可能である。上縁部を特定した上で上縁部画像生成部115は、当該上縁部をカメラパラメータで位置等が特定される仮想カメラから撮影した場合に生成されることが想定される上縁部画像を生成する。上縁部画像の生成例は図2に示したとおりである。上縁部画像生成部115はさらに、上縁部画像を輝度により2値化及びエッジ抽出することにより、実環境で撮影された2次元画像から上縁部を特定するための2次元テンプレート131を生成する。なお、2次元テンプレート131は必ずしも2値化およびエッジ抽出されたものでなくともよいが、このような処理を行うことで2次元テンプレート131の情報量の低下、およびそれを用いたマッチング処理における演算量の低減を図ることが可能である。ここで、上縁部画像生成部115は、本発明の「テンプレート生成部」の一例である。
なお、上縁部画像生成部115は、2次元テンプレート131、又はその元となる上縁部画像を、カメラパラメータで特定される仮想カメラの方向および/又は実環境での輝度画像の撮影に用いられるカメラの方向に応じて変換してもよい。
座標関係情報生成部117は、3次元コンテナモデルから複数の特徴点を抽出した上で、当該3次元コンテナモデルの複数の特徴点の各々を、カメラパラメータにより位置などが特定される仮想カメラで撮影した場合の、仮想空間上での3次元座標と、上縁部画像上での2次元座標との関係を特定する。座標関係情報生成部117は、特定した当該関係(各特徴点の3次元座標と2次元座標との関係)を示す座標関係情報133を生成する。
出力部119は、上縁部画像生成部115により生成された2次元テンプレート131、及び座標関係情報生成部117により生成された座標関係情報133を、任意の記憶媒体にDB130として出力する。
認識部150は、輝度画像入力部151、テンプレートマッチング部153、特徴点座標算出部155、3次元位置姿勢算出部157、及び出力部159を含む。
輝度画像入力部151は、実環境において、3次元位置姿勢を特定したいコンテナが撮影された輝度画像の入力を受ける。ここで、輝度画像入力部151は、本発明の「第2入力部」の一例である。
テンプレートマッチング部153は、輝度画像入力部151から入力された輝度画像に対し、2次元テンプレート131とのマッチングを行うことにより、輝度画像中の、コンテナの上縁部に相当する位置を特定する。これにより、輝度画像において、コンテナの上縁部がどの位置(x,y)に、どのような角度で配置されているかを特定することができる。なおこのときテンプレートマッチング部153は、テンプレートマッチングの後に、ICP(Iterative Closest Point)処理により詳細な位置合わせを行ってもよい。ここで、テンプレートマッチング部153は、本発明の「マッチング部」の一例である。
特徴点座標算出部155は、テンプレートマッチング部153により特定されるコンテナの上縁部の位置および角度を基準として、輝度画像中のコンテナの特徴点の位置(座標)を特定する。
3次元位置姿勢算出部157は、特徴点座標算出部155が算出した特徴点の座標と、座標関係情報133とに基づいて、コンテナの各特徴点の3次元座標を求める。これにより3次元位置姿勢算出部157は、輝度画像で撮影されたコンテナの実空間中の位置及び姿勢を認識することができる。ここで、3次元位置姿勢算出部157は、本発明の「認識部」の一例である。
出力部159は、3次元位置姿勢算出部157が算出したコンテナの位置及び姿勢を示す3次元位置姿勢情報を出力する。例えば産業ロボットが当該3次元位置姿勢情報の入力を受けると、当該情報に応じてコンテナの位置及び姿勢を特定した上で、当該コンテナにアームが衝突しないように制御しながら、コンテナ内部に載置された部材のピックアップ等を行うことができる。
[3 処理の流れ]
続いて、図6及び図7を参照しながら、構成例1にかかる情報処理装置100の処理の流れを説明する。図6及び図7は、情報処理装置100の処理の流れを示すフローチャートである。
なお、後述の各処理ステップは、処理内容に矛盾を生じない範囲で、任意に順番を変更して若しくは並列に実行されてもよい。また、各処理ステップ間に他のステップが追加されて実行されてもよい。さらに、便宜上1つのステップとして記載されているステップは複数のステップに分けて実行されることもでき、便宜上複数に分けて記載されているステップを1ステップとして実行されることもできる。この点、後述の図8のフローチャートについても同様である。
[3.1 2次元テンプレートの生成]
まず、図6を参照しながら、テンプレート生成部110が行うテンプレート生成の処理の流れを説明する。
テンプレート生成部110のモデル入力部111は、3次元CADモデルの入力を受ける(S601)。先述のとおり、モデル入力部111は、3次元CADモデルの代わりに、コンテナの寸法値の入力を受けてもよい。カメラパラメータ入力部113は、2次元テンプレート131を生成するために3次元コンテナモデルを撮影する仮想カメラの位置、方向、画角等を定めるカメラパラメータの入力を受ける(S603)。
上縁部画像生成部115は、まず、モデル入力部で入力を受けた3次元コンテナモデルに対し、3次元コンテナモデルを構成するメッシュの法線方向及び高さから上縁部に相当する部分を特定する(S605)。先述のとおり、上縁部画像生成部115は、例えば、3次元コンテナモデルを構成するメッシュの法線が少なくとも水平方向よりは上側を向いており、かつ、周囲のメッシュよりも高さにおいて高い部分を上縁部とすることができる。
また上縁部画像生成部115は、当該3次元コンテナモデルの上縁部が、カメラパラメータで位置などが特定される仮想カメラにより撮影された場合の撮影結果に相当する上縁部画像を生成する(S607)。
さらに上縁部画像生成部115は、当該上縁部画像に対して2値化及びエッジ抽出等することにより、2次元撮影画像からコンテナの上縁部を検出するための2次元テンプレート131を生成する(S609)。
座標関係情報生成部117は、3次元コンテナモデルから複数の特徴点を抽出した上で、当該複数の特徴点の各々の3次元仮想空間中での座標と、それらの特徴点を上縁部画像上での2次元座標との関係を示す、座標関係情報133を生成する(S611)。
出力部119は、S609及びS611において生成された2次元テンプレート131及び座標関係情報133を任意の記憶媒体へと出力する(S613)。
[3.2 位置姿勢の認識処理]
続いて、図7を参照しながら、認識部150が行う、コンテナが撮影された輝度画像に対するコンテナの3次元位置姿勢の認識処理の流れを説明する。
まず、輝度画像入力部151は、コンテナが撮影された輝度画像の入力を受ける(S701)。テンプレートマッチング部153は、当該輝度画像に対し、予め用意されたコンテナの2次元テンプレートとのマッチングを行うことにより、輝度画像内におけるコンテナの上縁部の位置と回転角度とを特定する(S703)。その上で、特徴点座標算出部155は、テンプレートマッチング部153により特定されるコンテナの上縁部を基準として、輝度画像中のコンテナの特徴点の2次元座標を算出する(S705)。
3次元位置姿勢算出部157は、S705において特定された輝度画像中の各特徴点の2次元座標を、座標関係情報133を用いて変換することで、各特徴点の3次元座標を生成する(S707)。これにより3次元位置姿勢算出部157は、輝度画像で撮影されたコンテナの実空間中の位置及び姿勢を認識する。
出力部159は、算出されたコンテナの位置及び姿勢を示す位置姿勢情報を外部へと出力する(S709)。
[3.3 変形例]
なお、図6及び図7を参照しながら説明した処理では、3次元コンテナモデルから2次元テンプレートを生成するためのカメラパラメータにより特定される仮想カメラの撮影位置や方向等と、実環境でのカメラの撮影位置や方向等とを略一致させる場合を中心に説明したが、これに限られるものではない。例えば、2次元テンプレートを撮影する仮想カメラの位置や方向等と、実環境においてコンテナを撮影するカメラの位置や方向等との相対的な関係がわかっていれば、当該関係に基づいて画像を変換した上で処理することも考えられる。
例えば、3次元コンテナモデルを真上から仮想カメラで撮影して2次元テンプレートを生成した上で、真上以外の方向からコンテナが撮影された輝度画像に認識処理を行うことが考えられる。この場合の処理を、図8を参照しながら説明する。
輝度画像入力部151は、コンテナが撮影された輝度画像の入力を受ける(S801)。このとき、輝度画像入力部151は、入力された輝度画像を、2次元テンプレート131を生成する際に用いられた仮想カメラの位置及び方向等と、輝度画像の撮影に用いられたカメラの位置及び方向等との相対的な関係(カメラ外部パラメータ)に応じて変換する(S803)。当該変換処理の方法としては、例えば、平面射影変換(ホモグラフィ変換)等が考えられる。ここでは、真上からコンテナを撮影した場合の画像に変換されるものとする。また、平面射影変換パラメータは、仮想カメラ外部パラメータから算出が可能である。
テンプレートマッチング部153は、当該変換後の入力輝度画像と、2次元テンプレート131との間でマッチングを行うことにより、変換後の入力画像内におけるコンテナの上縁部の位置と回転角度とを特定する(S805)。S807及びS809の処理は、図7を参照しながら説明したS707及びS709の処理と同様である。
[4 ハードウェア構成]
以下、図9を参照しながら、情報処理装置100を実現可能なハードウェア構成を説明する。図9は、本実施形態にかかる情報処理装置100のハードウェア構成の一例を模式的に例示する。
図9の例に示す情報処理装置100は、制御部901、記憶部905、通信インタフェース(I/F)部911、入力部913、及び出力部915を含み、各部はバスライン917を介して相互に通信可能に選択され得る。
制御部901は、CPU(Central Processing Unit)、RAM(Random Access Memory)903、ROM(Read Only Memory)等を含み、情報処理に応じて各構成要素の制御を行う。より具体的には、たとえば、制御部501に含まれ得るCPUは、記憶部905から制御プログラム907をRAM503へ読込み、当該制御プログラム907を実行することで、図5に示すテンプレート生成部110および認識部150に関する上述の各種処理を実行可能である。
記憶部905は、例えばハード・ディスク・ドライブ(HDD)、ソリッド・ステート・ドライブ(SSD)等の補助記憶装置であり制御部901で実行される制御プログラム907、及び、データベース(DB)130等を記憶する。DB130では、先述のとおり、2次元テンプレート131や座標関係情報133等を管理することができる。この他、カメラパラメータ等の情報をDB130上に管理することも考えられる。
制御プログラム907は、図1乃至図8を参照しながら説明した情報処理装置100の処理を実行させるためのプログラムである。特に、図5に示したテンプレート生成部110及び認識部150の各構成は、制御プログラム907として実現しうる。
通信I/F部911は、例えば、有線又は無線により他の装置と通信するための通信モジュールである。通信I/F部911が他の装置との通信に用いる通信方式は任意であるが、例えば、LAN(Local Area Network)やUSB(Universal Serial Bus)等が挙げられる。例えば、図示しない産業ロボットへの3次元位置姿勢情報の出力等を、通信I/F部911を介して行うことが考えられる。
入力部913は、例えば、マウスやキーボード、タッチパネル等で実現しうる、ユーザからの各種入力操作等を受け付けるためのデバイスである。出力部915は、例えば、ディスプレイやスピーカ等、表示や音声等により、情報処理装置100を利用するユーザ等へ各種情報を報知するための装置である。例えば、認識部150によるコンテナの位置姿勢の認識結果を出力部915が表示等することにより、ユーザに報知することが考えられる。
[5 実施形態にかかる効果]
以上説明したように、本実施形態にかかる情報処理装置100は、例えばコンテナ等の、姿勢位置の認識対象物の上縁部の形状を示す2次元テンプレートを予め生成した上で、認識対象物の撮影画像に対して当該2次元テンプレートとのマッチングを行うことによりコンテナの位置等を特定する。幅が細い物体や光が反射しやすい素材でできた物体は3次元座標を検出しづらいが、本実施形態は単に2次元画像に対するマッチング処理のみでコンテナ等の認識対象物の位置及び姿勢を検出するため、高い精度で認識対象物の姿勢位置を検出することができる。
また、特にコンテナ等の、内部に他の部材が入り得る部材が認識対象物である場合には、他の部材が入れられているかや、入れられた部材の数に応じて、認識対象物を撮影した場合の外観が変わるため、コンテナ全体の画像によるマッチング等では検出が難しい。しかしながら本実施形態にかかる情報処理装置100では、コンテナの上縁部の画像を用いて検出するため、内部に部材が入っているか否か等に関係なく、高い精度で対象物の姿勢位置を検出することが可能である。
さらに、本実施形態にかかる情報処理装置100では、2次元情報に応じたマッチングに基づきコンテナの位置及び姿勢を検出するため、3次元情報を用いてコンテナの位置及び姿勢を検出する場合よりも演算量を低減することが可能である。
[6 付記]
以上説明した実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。実施形態が備える各要素並びにその配置、材料、条件、形状及びサイズ等は、例示したものに限定されるわけではなく適宜変更することができる。また、異なる実施形態で示した構成同士を部分的に置換し又は組み合わせることが可能である。
(付記1)
認識対象物の3次元モデルを生成するための3次元モデル情報の入力を受ける第1入力部(111)と、
3次元モデル情報に基づき、前記認識対象物の上縁部の形状を示す2次元テンプレート(131)を生成するテンプレート生成部(115)と、
前記3次元モデルの3次元座標と、当該3次元モデルを撮影したときの2次元座標との関係を示す座標関係情報(133)を生成する座標関係特定部(117)と、
前記認識対象物を撮影した撮影画像の入力を受ける第2入力部(151)と、
前記撮影画像と前記2次元テンプレート(131)とをマッチングするマッチング部(153)と、
前記マッチング部(153)による2次元マッチング結果に応じて検出される前記撮影画像の前記認識対象物に対し、前記座標関係情報(133)を参照することにより前記認識対象物の3次元位置及び姿勢を認識する認識部(157)と
を備える情報処理装置(100)。
(付記2)
認識対象物の3次元モデルを生成するための3次元モデル情報の入力を受ける処理と、
3次元モデル情報に基づき、前記認識対象物の上縁部の形状を示す上縁部画像に応じた2次元テンプレート(131)を生成する処理と、
前記3次元モデルの3次元座標と、当該3次元モデルを撮影したときの2次元座標との関係を示す座標関係情報(133)を生成する処理と、
前記認識対象物を撮影した撮影画像の入力を受ける処理と、
前記撮影画像と前記2次元テンプレート(131)とをマッチングする処理と、
前記マッチング部による2次元マッチング結果に応じて検出される前記撮影画像の前記認識対象物に対し、前記座標関係情報(133)を参照することにより前記認識対象物の3次元位置及び姿勢を認識する処理と
を情報処理装置(100)が行う、情報処理方法。
(付記3)
認識対象物の3次元モデルを生成するための3次元モデル情報の入力を受ける処理と、
3次元モデル情報に基づき、前記認識対象物の上縁部の形状を示す上縁部画像に応じた2次元テンプレート(131)を生成する処理と、
前記3次元モデルの3次元座標と、当該3次元モデルを撮影したときの2次元座標との関係を示す座標関係情報(133)を生成する処理と、
前記認識対象物を撮影した撮影画像の入力を受ける処理と、
前記撮影画像と前記2次元テンプレート(131)とをマッチングする処理と、
前記マッチング部による2次元マッチング結果に応じて検出される前記撮影画像の前記認識対象物に対し、前記座標関係情報(133)を参照することにより前記認識対象物の3次元位置及び姿勢を認識する処理と
を情報処理装置(100)に実行させるためのプログラム。
100…情報処理装置、110…テンプレート生成部、111…モデル入力部、113…カメラパラメータ入力部、115…上縁部画像生成部、117…座標関係情報生成部、119…出力部、130…データベース(DB)、131…2次元テンプレート、133…座標関係情報、150…認識部、151…輝度画像入力部、153…テンプレートマッチング部、155…特徴点座標算出部、157…3次元位置姿勢算出部、159…出力部、901…制御部、905…記憶部、907…制御プログラム、911…通信インタフェース(I/F)部、913…入力部、915…出力部、917…バスライン

Claims (3)

  1. 認識対象物の3次元モデルを生成するための3次元モデル情報の入力を受ける第1入力部と、
    3次元モデル情報に基づき、前記認識対象物の上縁部の形状を示す2次元テンプレートを生成するテンプレート生成部と、
    前記3次元モデルの3次元座標と、当該3次元モデルを撮影したときの2次元座標との関係を示す座標関係情報を生成する座標関係特定部と、
    前記認識対象物を撮影した撮影画像の入力を受ける第2入力部と、
    前記撮影画像と前記2次元テンプレートとをマッチングするマッチング部と、
    前記マッチング部による2次元マッチング結果に応じて検出される前記撮影画像の前記認識対象物に対し、前記座標関係情報を参照することにより前記認識対象物の3次元位置及び姿勢を認識する認識部と
    を備える情報処理装置。
  2. 認識対象物の3次元モデルを生成するための3次元モデル情報の入力を受ける処理と、
    3次元モデル情報に基づき、前記認識対象物の上縁部の形状を示す2次元テンプレートを生成する処理と、
    前記3次元モデルの3次元座標と、当該3次元モデルを撮影したときの2次元座標との関係を示す座標関係情報を生成する処理と、
    前記認識対象物を撮影した撮影画像の入力を受ける処理と、
    前記撮影画像と前記2次元テンプレートとをマッチングする処理と、
    2次元マッチング結果に応じて検出される前記撮影画像の前記認識対象物に対し、前記座標関係情報を参照することにより前記認識対象物の3次元位置及び姿勢を認識する処理と
    を情報処理装置が行う、情報処理方法。
  3. 認識対象物の3次元モデルを生成するための3次元モデル情報の入力を受ける処理と、
    3次元モデル情報に基づき、前記認識対象物の上縁部の形状を示す2次元テンプレートを生成する処理と、
    前記3次元モデルの3次元座標と、当該3次元モデルを撮影したときの2次元座標との関係を示す座標関係情報を生成する処理と、
    前記認識対象物を撮影した撮影画像の入力を受ける処理と、
    前記撮影画像と前記2次元テンプレートとをマッチングする処理と、
    2次元マッチング結果に応じて検出される前記撮影画像の前記認識対象物に対し、前記座標関係情報を参照することにより前記認識対象物の3次元位置及び姿勢を認識する処理と
    を情報処理装置に実行させるためのプログラム。
JP2018046664A 2018-03-14 2018-03-14 情報処理装置、情報処理方法、及びプログラム Active JP7161857B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2018046664A JP7161857B2 (ja) 2018-03-14 2018-03-14 情報処理装置、情報処理方法、及びプログラム
CN201980012034.3A CN111742349B (zh) 2018-03-14 2019-02-18 信息处理装置、信息处理方法以及信息处理存储介质
US16/975,389 US11823414B2 (en) 2018-03-14 2019-02-18 Information processing device, information processing method, and information processing non-transitory computer readable medium
PCT/JP2019/005762 WO2019176450A1 (ja) 2018-03-14 2019-02-18 情報処理装置、情報処理方法、及びプログラム
EP19766825.4A EP3767589A4 (en) 2018-03-14 2019-02-18 INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING PROCESS AND PROGRAM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018046664A JP7161857B2 (ja) 2018-03-14 2018-03-14 情報処理装置、情報処理方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2019159901A true JP2019159901A (ja) 2019-09-19
JP7161857B2 JP7161857B2 (ja) 2022-10-27

Family

ID=67906553

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018046664A Active JP7161857B2 (ja) 2018-03-14 2018-03-14 情報処理装置、情報処理方法、及びプログラム

Country Status (5)

Country Link
US (1) US11823414B2 (ja)
EP (1) EP3767589A4 (ja)
JP (1) JP7161857B2 (ja)
CN (1) CN111742349B (ja)
WO (1) WO2019176450A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022176800A1 (ja) * 2021-02-18 2022-08-25 ファナック株式会社 ロボットシステム及び制御装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007333679A (ja) * 2006-06-19 2007-12-27 Mitsubishi Electric Corp 3次元位置補正装置
JP2014028415A (ja) * 2012-07-31 2014-02-13 Fanuc Ltd バラ積みされた物品をロボットで取出す装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5429614B2 (ja) 2009-04-16 2014-02-26 株式会社Ihi 箱状ワーク認識装置および方法
US20130124156A1 (en) * 2009-05-26 2013-05-16 Embodee Corp Footwear digitization system and method
JP5893695B1 (ja) 2014-09-10 2016-03-23 ファナック株式会社 物品搬送システム
JP6573354B2 (ja) 2014-11-28 2019-09-11 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
US10547796B2 (en) 2015-07-14 2020-01-28 Industrial Technology Research Institute Calibration equipment and calibration method of a mechanical system
US9804751B2 (en) * 2015-07-27 2017-10-31 Applied Software Technology, Inc. Creating and merging two-dimensional floor plans within three-dimensional models
JP6356655B2 (ja) 2015-12-10 2018-07-11 ファナック株式会社 加工屑を除去する機能を有する加工システム
US10410089B2 (en) * 2018-01-19 2019-09-10 Seiko Epson Corporation Training assistance using synthetic images
US10671835B2 (en) * 2018-03-05 2020-06-02 Hong Kong Applied Science And Technology Research Institute Co., Ltd. Object recognition

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007333679A (ja) * 2006-06-19 2007-12-27 Mitsubishi Electric Corp 3次元位置補正装置
JP2014028415A (ja) * 2012-07-31 2014-02-13 Fanuc Ltd バラ積みされた物品をロボットで取出す装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022176800A1 (ja) * 2021-02-18 2022-08-25 ファナック株式会社 ロボットシステム及び制御装置

Also Published As

Publication number Publication date
US11823414B2 (en) 2023-11-21
US20200394818A1 (en) 2020-12-17
CN111742349A (zh) 2020-10-02
JP7161857B2 (ja) 2022-10-27
EP3767589A1 (en) 2021-01-20
CN111742349B (zh) 2023-09-29
WO2019176450A1 (ja) 2019-09-19
EP3767589A4 (en) 2021-12-15

Similar Documents

Publication Publication Date Title
JP6527178B2 (ja) 視覚センサのキャリブレーション装置、方法及びプログラム
JP6271953B2 (ja) 画像処理装置、画像処理方法
JP6703812B2 (ja) 3次元物体検査装置
JP6054831B2 (ja) 画像処理装置、画像処理方法及び画像処理プログラム
JP2012254518A (ja) ロボット制御システム、ロボットシステム及びプログラム
JP6836561B2 (ja) 画像処理装置及び画像処理方法
JP2008506953A (ja) 機械視覚のための方法及び装置
JP2017118396A (ja) デプスカメラの内部パラメータを算出するプログラム、装置及び方法
CN109559341B (zh) 一种机械臂抓取方案的生成方法及装置
US20130058526A1 (en) Device for automated detection of feature for calibration and method thereof
JP2018136896A (ja) 情報処理装置、システム、情報処理方法、および物品の製造方法
JP7250489B2 (ja) 画像処理装置およびその制御方法、プログラム
JP5093591B2 (ja) 三次元位置姿勢計測方法および装置
JP2020075327A (ja) 制御システム
WO2019176450A1 (ja) 情報処理装置、情報処理方法、及びプログラム
JP6040264B2 (ja) 情報処理装置、情報処理装置の制御方法、およびプログラム
JP5083715B2 (ja) 三次元位置姿勢計測方法および装置
JP2014053018A (ja) 情報処理装置、情報処理装置の制御方法及びプログラム
JP6347610B2 (ja) 画像処理装置および3次元空間情報取得方法
US11158080B2 (en) Information processing method, information processing device, object detection apparatus, and robot system
US20220230459A1 (en) Object recognition device and object recognition method
JP2018017610A (ja) 三次元計測装置、ロボット、ロボット制御装置、及びロボットシステム
CN113858214A (zh) 一种用于机器人作业的定位方法与控制系统
JP7502343B2 (ja) 画像処理システム
JP2014235680A (ja) 画像処理装置、画像処理方法、ロボット及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200310

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210414

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20211020

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220111

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20220111

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20220120

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20220121

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20220318

C211 Notice of termination of reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C211

Effective date: 20220323

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20220620

C13 Notice of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: C13

Effective date: 20220727

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220817

C23 Notice of termination of proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C23

Effective date: 20220906

C03 Trial/appeal decision taken

Free format text: JAPANESE INTERMEDIATE CODE: C03

Effective date: 20220930

C30A Notification sent

Free format text: JAPANESE INTERMEDIATE CODE: C3012

Effective date: 20220930

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221017

R150 Certificate of patent or registration of utility model

Ref document number: 7161857

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150