JP6836561B2 - 画像処理装置及び画像処理方法 - Google Patents

画像処理装置及び画像処理方法 Download PDF

Info

Publication number
JP6836561B2
JP6836561B2 JP2018176026A JP2018176026A JP6836561B2 JP 6836561 B2 JP6836561 B2 JP 6836561B2 JP 2018176026 A JP2018176026 A JP 2018176026A JP 2018176026 A JP2018176026 A JP 2018176026A JP 6836561 B2 JP6836561 B2 JP 6836561B2
Authority
JP
Japan
Prior art keywords
model
model pattern
images
point
image
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
JP2018176026A
Other languages
English (en)
Other versions
JP2020047049A (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.)
FANUC Corp
Original Assignee
FANUC Corp
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 FANUC Corp filed Critical FANUC Corp
Priority to JP2018176026A priority Critical patent/JP6836561B2/ja
Priority to DE102019124810.8A priority patent/DE102019124810A1/de
Priority to CN201910887065.5A priority patent/CN110926330B/zh
Priority to US16/575,388 priority patent/US11625842B2/en
Publication of JP2020047049A publication Critical patent/JP2020047049A/ja
Application granted granted Critical
Publication of JP6836561B2 publication Critical patent/JP6836561B2/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/30Determination of transform parameters for the alignment of images, i.e. image registration
    • G06T7/33Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
    • 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
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/20Linear translation of whole images or parts thereof, e.g. panning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/593Depth or shape recovery from multiple images from stereo images
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/97Determining parameters from multiple pictures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/04Indexing scheme for image data processing or generation, in general involving 3D image data
    • 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)
  • Length Measuring Devices By Optical Means (AREA)
  • Image Analysis (AREA)

Description

本発明は、画像処理装置及び画像処理方法に関し、特に複数のカメラで撮像した入力画像のそれぞれの画像から検出した対象物の特徴点から、それぞれの特徴点の3次元位置を求める画像処理装置及び画像処理方法に関する。
画像処理装置を用いてカメラの視野内の画像の中から特定の対象物の像を検出する場合、対象物を表す基準情報(一般に、モデルパターンとかテンプレートなどと呼称される。以下モデルパターン)と撮像装置によって取得した入力画像の間で特徴量のマッチングを行い、合致度が所定のレベルを越えたときに対象物の検出に成功したと判断することが一般的である。
このようなモデルパターンと入力画像との間でのマッチング処理の際に用いられる特徴量の一つとしてエッジ点を画像の特徴を表す特徴点とする場合がある。図14は、画像内(モデルパターン領域内)の検出対象物とエッジ点との例を示す図である。エッジ点は画像上での輝度変化が大きな点である。一般に検出対象物の輪郭線の像は輝度勾配が大きくなるので、エッジ点を特徴量として使うことで検出対象物の輪郭線形状のマッチングを行うことができる。検出すべき対象物を含む画像から抽出したエッジ点群をモデルパターンとして記憶しておき、撮像装置によって取得された入力画像から抽出されたエッジ点群とモデルパターンのエッジ点群の合致度に基づいて対象物を検出する。たとえば、この類の手法として一般化ハフ変換などが知られている。
このように画像から対象物を検出する従来技術として、例えば特許文献1には、モデルパターンをカメラで撮像した入力画像に重畳してエッジ点のマッチングを行い、モデルパターンを構成するエッジ点に対応する入力画像のエッジ点を選択して対象物を検出する技術が開示されている。特許文献1に開示される技術では、モデルパターンを入力画像に重畳する際、モデルパターンのエッジ点が形作る形状が入力画像に写った像の平均的な形状となるようにモデルパターンのエッジ点の位置姿勢(ベクトル量)を修正している。
また、特許文献2には、ステレオカメラで対象物の輪郭線を計測する画像処理装置で、対象物の3次元形状データから、ステレオカメラのそれぞれのカメラの撮像面に対して基準輪郭線を投影し、ステレオカメラのそれぞれのカメラで撮像した画像からエッジ線を抽出し、エピポーラ線とエッジ線の交点をエッジ点として、それぞれのカメラの画像のエッジ点の中から、基準輪郭線の同一部位に対応するエッジ点を対応点として選択し、対応点からステレオ計算を行い、3次元点の位置を計算する技術が開示されている。
特開2017−091079号公報 特許第5911934号公報
一般に、ロボットが作業を行う際に対象物を検出するために用いられる視覚センサとしては2次元カメラが用いられており、検出結果としての対象物の位置(エッジの位置、特徴点の位置等)は画像座標系で表現される。その為、ロボットが検出した対象物に対して作業を行うためには、画像座標系で表現される2次元の対象物の位置(座標)をロボット座標系で表現される3次元(座標)の位置に変換する必要があり、これを実現するために、検出結果としての対象物の位置が特定の平面上に存在するという前提のもとで、画像上で見つかった対象物の位置(座標)を、その平面に投影するという方法がとられている。
この様な方法をとる場合、予め上記した特定の平面を正確に求めておく必要がある。例えば、平面上の3点の3次元位置を3次元視覚センサやロボットによるタッチアップで求めて、その3点の位置情報から平面を算出するという方法等が考えられるが、その場合、特別なセンサが必要であり、セットアップの手間が余計にかかるという課題が生じる。また、対象物の位置姿勢が3次元的に変化する場合には、その変化に伴い上記した特定の平面の位置姿勢も変わる為、毎回平面の検出を行う必要が生じ、対象物の検出に時間が掛かるという課題がある。
そこで本発明の目的は、少なくとも1つのカメラで撮像した入力画像から検出した対象物の3次元位置を求めることが可能な画像処理装置及び画像処理方法を提供することである。
本発明の画像処理装置及び画像処理方法は、検出対象物のモデルパターンの複数の特徴点を用いて、該検出対象物に関して撮像された複数の画像(ステレオ画像)に写っている検出対象物の像の各部の対応関係を特定し、特定した検出対象物の像の各部の対応関係に基づいて検出対象物の3次元位置を求めることにより、上記課題を解決する。
そして、本発明の一態様は、少なくとも1つのカメラにより撮像された検出対象物の複数の画像から、該検出対象物の各特徴点の3次元位置を求める画像処理装置において、前記検出対象物に対する複数のモデル特徴点から構成されたモデルパターンを記憶するモデルパターン記憶部と、前記カメラにより同一の前記検出対象物を撮像することにより得られた複数の画像を取得する画像データ取得部と、前記複数の画像から第1の特徴点を抽出する特徴点抽出部と、前記複数の画像から抽出された第1の特徴点と、前記モデルパターン記憶部に記憶されたモデルパターンとのマッチングを行うことにより、前記複数の画像から検出対象物の像を検出する対象物検出部と、前記モデルパターンのモデル特徴点が、前記対象物検出部が検出した前記複数の画像内の検出対象物の像に重畳するように、前記モデルパターンのモデル特徴点の位置姿勢を変換するモデルパターン変換部と、前記モデルパターン変換部が変換した前記モデルパターンのモデル特徴点に対応する前記画像データ上の点を対応点として取得する対応点取得部と、前記複数の画像のそれぞれの検出対象物の像に対して求められた対応点から、同一のモデル特徴点に基づいて得られた対応点を対応点セットとして選択する対応点セット選択部と、前記対応点セット選択部が選択した対応点セットに基づいて前記検出対象物の各特徴点の3次元位置を算出する3次元位置算出部と、を備えた画像処理装置である。
本発明の他の態様は、少なくとも1つのカメラにより撮像された検出対象物の複数の画像から、該検出対象物の各特徴点の3次元位置を求める画像処理方法において、前記カメラにより同一の前記検出対象物を撮像することにより得られた複数の画像を取得する第1ステップと、前記複数の画像から第1の特徴点を抽出する第2ステップと、前記複数の画像から抽出された第1の特徴点と、前記検出対象物に対する複数のモデル特徴点から構成されたモデルパターンとのマッチングを行うことにより、前記複数の画像から検出対象物の像を検出する第3ステップと、前記モデルパターンのモデル特徴点が、第3ステップで検出した前記複数の画像内の検出対象物の像に重畳するように、前記モデルパターンのモデル特徴点の位置姿勢を変換する第4ステップと、前記第4ステップで変換した前記モデルパターンのモデル特徴点に対応する点を取得する第5ステップと、前記複数の画像のそれぞれの検出対象物の像に対して求められた対応点から、同一のモデル特徴点に基づいて得られた対応点を対応点セットとして選択する第6ステップと、前記第6ステップで選択した対応点セットに基づいて前記検出対象物の各特徴点3次元位置を算出する第7ステップと、を実行する画像処理方法である。
本発明により、複数のカメラで撮像した入力画像のそれぞれの画像から検出した対象物の3次元位置を求めることが可能となる。
一実施形態による画像処理装置の主要な構成を示す図である。 一実施形態による画像処理装置の概略的なハードウェア構成図である。 一実施形態による画像処理装置の概略的な機能ブロック図である。 検出対象物の例を示す図である。 2つのカメラで撮像された検出対象物の画像の例を示す図である。 2つの画像から対象物を検出する例を示す図である。 モデルパターンを変換する例を示す図である。 2つの画像から検出された対象物上の対応点を選択する例を示す図である。 他の実施形態による対象物上の対応点を選択する例を示す図である。 2つの画像内の複数対象物の対応関係を特定する例を示す図である。 他の実施形態による画像処理装置の主要な構成を示す図である。 他の実施形態による画像処理装置の主要な構成を示す図である。 他の実施形態による画像処理装置の主要な構成を示す図である。 画像内の検出対象物とエッジ点との例を示す図である。
以下、本発明の実施形態を図面と共に説明する。
図1は、本発明の一実施形態に係る画像処理装置1の主要な構成を示す図である。画像処理装置1は、作業台2に載置されたワーク3を撮像する少なくとも2つのカメラ4(本実施形態では、一対の第1のカメラ4A及び第2のカメラ4B)に接続されている。画像処理装置1は、ワーク3の輪郭線によってワーク3の形状を特定する機能を備える。
カメラ4は、例えばCCD等の撮像素子を有する電子カメラであり、撮像により2次元画像を撮像面(CCDアレイ面上)で検出する機能を持つ周知の受光デバイスである。なお、撮像面における2次元座標系を以下ではセンサ座標系と呼ぶ。第1のカメラ4Aおよび第2のカメラ4Bはそれぞれ架台等により支持され、第1のカメラ4Aとワーク3および第2のカメラ4Bとワーク3との距離が互いにほぼ等しくなるように、かつ、第1のカメラ4Aと第2のカメラ4Bにより互いにほぼ同じ範囲を撮影可能となるように、3次元のワールド座標系における一対のカメラ4A,4Bの位置および姿勢が決定されている。なお、3次元のワールド座標系を、以下ではロボット座標系と呼ぶ。
図2は、図1の画像処理装置1の要部を示す概略的なハードウェア構成図である。画像処理装置1は、ロボットや工作機械等の製造機械を制御する制御装置として実装することができる。また、画像処理装置1は、製造機械を制御する制御装置と併設されたパソコンや、制御装置とネットワークを介して接続されたセルコンピュータ、ホストコンピュータ、クラウドサーバ等のコンピュータとして実装することが出来る。図2は、視覚センサを備えた製造機械(ロボット)を制御する制御装置と併設されたパソコンとして画像処理装置1を実装した場合の例を示している。
本実施形態による画像処理装置1が備えるCPU11は、画像処理装置1を全体的に制御するプロセッサである。CPU11は、バス22を介して接続されているROM12に格納されたシステム・プログラムを読み出し、該システム・プログラムに従って画像処理装置1全体を制御する。RAM13には一時的な計算データや表示装置70に表示するための表示データ及び入力装置71を介してオペレータが入力した各種データ等が格納される。
不揮発性メモリ14は、例えば図示しないバッテリでバックアップされたSRAM等を用いたり、SSD等を用いたりする等して、画像処理装置1の電源がオフされても記憶状態が保持されるメモリとして構成される。不揮発性メモリ14には、入力装置71を介して入力されたデータやプログラム、カメラ4から取得された画像データ等が記憶される。不揮発性メモリ14に記憶されたデータやプログラム等は、利用時にはRAM13に展開されても良い。また、ROM12には、画像解析処理のために必要とされる各種アルゴリズムや、その他の必要とされる処理を実行するためのシステム・プログラムがあらかじめ書き込まれている。
図3は、一実施形態による画像処理装置1の概略的な機能ブロック図である。図3に示した各機能ブロックは、図2に示した画像処理装置1が備えるCPU11がシステム・プログラムを実行し、画像処理装置1の各部の動作を制御することにより実現される。
本実施形態の画像処理装置1は、視覚センサ制御部100、画像データ取得部110、画像処理部120を備え、また、第1のカメラ4A、第2のカメラ4Bそれぞれのキャリブレーションデータが記憶されたキャリブレーションデータ記憶部200、モデルパターンが記憶されたモデルパターン記憶部210が不揮発性メモリ14の領域内に確保されている。
本実施形態では、予めモデルパターン記憶部210に少なくとも1以上の対象物のモデルパターンが記憶されている。モデルパターンは、図14に例示されるように、検出時において対象物を第1のカメラ4A,第2のカメラ4Bが配置される方向から見た場合の画像のエッジ上の複数の特徴点Pi(i=1〜n)(以下、モデル特徴点とする)で構成される。
モデルパターンは、例えば以下の手順で作成される。
●手順a1)モデルパターンとして教示したい対象物をカメラの視野内に配置し、対象物の画像を撮像する。この時のカメラと対象物の位置関係は、対象物を検出するときと同じになるようにして行うことが望ましい
●手順a2)手順1で撮像した画像において、対象物が映った領域を矩形や円形で指定する。指定した領域をモデルパターン指定領域と呼ぶ。
●手順a3)モデルパターン指定領域からエッジ点を抽出し、エッジ点の位置、姿勢(輝度勾配の方向)、輝度勾配の大きさ等の物理量を求める。また、指定された領域内にモデルパターン座標系を定義し、エッジ点の位置や姿勢を、画像座標系で表現された値から、モデルパターン座標系で表現された値に変換する
●手順a4)抽出されたエッジ点の位置、姿勢(輝度勾配の方向)、輝度勾配の大きさ等の物理量をモデルパターンを構成するモデル特徴点Piとしてモデルパターン記憶部に記憶する
●手順a5)生成されたモデルパターンに修正の必要があれば、操作者がモデルパターンを修正する操作を行う。例えば、必要のないモデル特徴点(ノイズや同一の平面に乗っていない特徴点)を削除して、モデルパターン座標系の原点を変更する
モデルパターンは、上記した手順によりカメラで撮像した画像から作成する以外にも、円や矩形等の図形から生成したり、CADデータ等の3次元形状データを適当な平面に投影したり、することでも作成することができる。
例えば、以下のような処理で3次元CADデータをモデルパターンに変換できる。
●手順b1)カメラの撮像面上に原点を置くローカル座標系を定義する。
●手順b2)予め、カメラをキャリブレーションしておく。これにより、ローカル座標系で表現された3次元点をカメラ画像上の2次元点に変換することができる。
●手順b3)ローカル座標系にCADデータとして表現された対象物を仮想的に配置する。配置されたCADデータはローカル座標系で表現される。カメラと対象物の相対関係は、実際に対象物の検出を行うときの相対関係と大体同じになるようにする。
●手順b4)輪郭線から所定の間隔で輪郭線上の3次元点群を取得する。必要があれば、CADデータの中からモデルパターンとして使う輪郭線を指定する。
●手順b5)3次元点群をカメラ画像上に投影し、画像座標系上の2次元点群を求める。CADデータ上で明暗の向きを指定すれば、輝度勾配の方向も付加することができる。ここで、明暗の向きとは、輪郭線を境界とする二つの領域のどちらが明るいかを示すものである。
●手順b6)求められた画像座標系上の2次元点群をモデル座標系で表現するように変換し、モデル特徴点としてモデルパターン記憶部に記憶する。
視覚センサ制御部100は、プログラム、入力装置71乃至図示しない操作盤からの操作に基づいて第1のカメラ4A,第2のカメラ4Bを制御する機能手段である。視覚センサ制御部100による第1のカメラ4A,第2のカメラ4Bを制御動作には、少なくとも第1のカメラ4A,第2のカメラ4Bのキャリブレーション制御と、対象物撮像制御が含まれる。
視覚センサ制御部100は、プログラム、入力装置71乃至図示しない操作盤からのキャリブレーション指令操作に基づいて、キャリブレーションデータ記憶部200から第1のカメラ4A、第2のカメラ4Bそれぞれのキャリブレーションデータを読み出し、読み出したキャリブレーションデータに基づいて第1のカメラ4A,第2のカメラ4Bそれぞれをキャリブレーションする。キャリブレーションデータ記憶部200に記憶されたキャリブレーションデータの形式やそれを求める方法については、種々の公知の方式が提案されているが、本実施形態においてはいずれの方式を用いても良い。カメラのキャリブレーション方法の詳細を記した文献の例としては、例えば「Roger Y. Tsai, “An efficient and accurate camera calibration technique for 3d machine vision”, Proc. Computer Vision and Pattern Recognition ’86, pp.368-374, 1986」等がある。視覚センサ制御部100が、キャリブレーションデータに基づいて第1のカメラ4A,第2のカメラ4Bをキャリブレーションすることにより、ロボット座標系における3次元点(以下、注視点)が与えられた時に、その3次元点のカメラ画像上での像の位置、すなわちセンサ座標系における2次元点を計算することが可能となり、また、ある注視点の像であるセンサ座標系における2次元点が与えられた時に、ロボット座標系における視線(注視点とカメラの焦点を通る3次元直線)を計算することができるようになる。
さらに一対のカメラ4A,4Bのそれぞれについてキャリブレーションデータが求まると、注視点のロボット座標系における3次元位置が与えられたときに、この注視点と第1のカメラ4Aの焦点と第2のカメラ4Bの焦点とを通る平面、すなわちエピポーラ面を算出することができる。また、注視点の像が第1のカメラ4Aのセンサ座標系の2次元点および第2のカメラ4Bのセンサ座標系の2次元として与えられると、ロボット座標系における注視点の位置を特定でき、注視点の3次元位置座標を算出することができる。
視覚センサ制御部100は、プログラム、入力装置71乃至図示しない操作盤からの撮像指令操作に基づいて、第1のカメラ4A,第2のカメラ4Bそれぞれで対象物(例えば、ワーク等)を撮像するように制御する。上記したように、第1のカメラ4A,第2のカメラ4Bは、ワーク3との距離が互いにほぼ等しくなるように、かつ、第1のカメラ4Aと第2のカメラ4Bにより互いにほぼ同じ範囲を撮影可能となるように配置され、それぞれのレンズの向きはワークの中心方向に向けられている。その為、例えば図4に例示されるワーク3を撮像した場合、それぞれのカメラから見た場合の点線により示される範囲のワーク上面に対して傾きを持った画像が撮像される。なお、それぞれのカメラを平行に配置し、それぞれのカメラが撮像する対象物の位置が少しずれた状態となるように配置しても良い。
画像データ取得部110は、視覚センサ制御部100の制御の下で第1のカメラ4A,第2のカメラ4Bそれぞれで撮像された画像データを取得し、画像処理部120に出力する。画像データ取得部110が取得する第1のカメラ4A,第2のカメラ4Bそれぞれで撮像される画像は、例えば図5に例示されるように、同一の対象物をそれぞれのカメラから見た場合の画像となる。
画像処理部120は、画像データ取得部110が取得した画像データに対して画像処理を行う機能手段である。画像処理部120は、特徴点抽出部121、対象物検出部122、モデルパターン変換部123、対応点選択部124、対応点セット選択部125、3次元位置算出部126を備える。
特徴点抽出部121は、第1のカメラ4A,第2のカメラ4Bそれぞれで対象物を撮像して得られた画像データからエッジ点(第1の特徴点)を抽出する機能手段である。エッジ点とは撮像された画像において輝度値の変化量が大きい点であり、エッジ点の抽出方法としては、SobelフィルタやCannyエッジ検出器等のような画像の輝度値の変化が大きなところを検出する手法が公知であるから、特徴点抽出部121は、このような公知の手法により各画像データのエッジ点を抽出するようにすれば良い。
対象物検出部122は、特徴点抽出部121により抽出されたエッジ点と、モデルパターン記憶部210に記憶されているモデルパターンのモデル特徴点Piとの間でマッチング処理を行い、画像データ内の対象物を検出する機能手段である。対象物検出部122は、モデルパターン記憶部210から対象物のモデルパターンを取得し、取得したモデルパターンのモデル特徴点と、特徴点抽出部121が抽出したエッジ点(第1の特徴点)とに基づいて、例えば公知の一般化ハフ変換、RANSAC、ICPアルゴリズム等を利用して対象物の検出を行う。対象物検出部122は、図6に例示されるように、第1のカメラ4A,第2のカメラ4Bそれぞれから得られた(そして、エッジ点が抽出された)画像データに対して、同一のモデルパターンとの間でマッチング処理を行い、それぞれの画像データから対象物を検出する。図5,6では違いを明確にするために、第1のカメラ4Aで撮像された画像と、第2のカメラ4Bで撮像された画像とは画像の奥行き方向に大きく傾斜した画像として示されているが、実際にはそれぞれの画像の奥行き方向への傾斜は微々たるものであるため、対象物検出部122は、それぞれの画像内の対象物のエッジ点とモデルパターンのモデル特徴点との間のマッチング処理で高い類似度が算出されるので、それぞれの画像において特に問題なく対象物の画像を抽出することができる
モデルパターン変換部123は、対象物検出部122が検出した第1のカメラ4A,第2のカメラ4Bそれぞれから得られた画像データ内の対象物のエッジ点の位置、姿勢等に従ってモデルパターンを画像データ内の対象物と重畳できるように変換する。モデルパターン変換部123は、モデルパターンを変換する時には、モデルパターンを構成するモデル特徴点の位置姿勢を変換することになる。例えば、図4に例示されるような撮像をした場合、第1のカメラ4A,第2のカメラ4Bそれぞれは対象物に向かって左右にやや傾きを持って配置されるので、モデルパターン変換部123は、例えば図7に示されるように、モデルパターンを3次元空間上に配置した場合において、その状態でモデルパターンを含む平面を投影面とした上で、モデルパターンのモデル特徴点を投影面上に投影した各特徴点が画像データ内の対象物のエッジ点と略重畳するように合同変換、相似変換等を行い、変換後の投影面上に投影されたモデルパターンのモデル特徴点を変換結果として出力するようにすれば良い。なお、モデルパターンの変換方法については特許文献1等によりすでに公知となっているので、より詳細な説明は本明細書では省略する。
対応点取得部124は、モデルパターン変換部123が変換したモデルパターンのモデル特徴点に対応する第1のカメラ4A,第2のカメラ4Bそれぞれから得られた画像データ上の位置(画像データ上における、モデルパターンのモデル特徴点)を対応点として取得する機能手段である。対応点取得部124が取得する、モデルパターンのモデル特徴点に対応する画像データ上の位置(画像データ上における、モデルパターンのモデル特徴点)は、例えば、図8に例示されるように、モデルパターン変換部123が変換したモデルパターンのモデル特徴点を画像データ上の対象物の像に重畳させた時に、それぞれのモデル特徴点に重なる画像データ上の位置とすれば良い。
対応点セット選択部125は、対応点取得部124が取得した第1のカメラ4A,第2のカメラ4Bそれぞれから得られた画像データ上の対応点から、同一のモデル特徴点に基づいて得られた対応点をセットにして選択する機能手段である。対応点セット選択部125が選択する対応点セットの例として、例えば、図8に例示されるように、対応点取得部124が、モデル特徴点Piに対応する第1のカメラ4Aで撮像された画像データ上の対応点と、モデル特徴点Piに対応する第2のカメラ4Bで撮像された画像データ上の対応点とを、1つの対応点セットとして選択する。対応点セット選択部125は、このようにしてモデルパターンのモデル特徴点の全てに対応する対応点セットを選択する。
そして、3次元位置算出部125は、対応点セット選択部125により選択された、第1のカメラ4A,第2のカメラ4Bそれぞれから得られた画像データの対象物の像の複数の対応点セットに基づいて、公知の三角測量の原理等により各対応点の3次元位置を算出する。
上記した構成により、本実施形態の画像処理装置1は、第1のカメラ4A、第2のカメラ4Bで撮像した入力画像のそれぞれの画像から検出した対象物の特徴点の3次元位置を求めることができる。これにより、公知の手法により対象物の3次元位置及び姿勢を正確に把握することができるため、例えば3次元的に位置ずれした対象物をロボットのハンドで把持することができるようになる。
以上、本発明の実施の形態について説明したが、本発明は上述した実施の形態の例のみに限定されることなく、適宜の変更を加えることにより様々な態様で実施することができる。
例えば、上記した実施形態では2つのカメラ4を用いた例を示したが、他の実施形態として、3つ以上のカメラ4を用いて対象物を撮像して得られた3つ以上の画像データに対して上記した処理を実行し、各画像データ内の対象物の対応点の3次元位置を得ることにより、対象物の3次元位置姿勢を求めることも可能である。この様に、多数の対応点の3次元位置姿勢を使うことで、対象物の位置姿勢の推定の誤差を減らすことができる。
また、上記した実施形態では、モデルパターンを構成するモデル特徴点に対応する画像データ上の点を使用して3次元位置を計算したが、この方法では、検出した対象物に欠けや歪みなどが存在し、モデルパターンと対象物の形状が異なる場合に、対象物の像の正しい位置に関する3次元情報算出できないという問題が生じる。そこで、他の実施形態として、図9に例示されるように、モデルパターンのモデル特徴点Piの中で画像データの対象物の像のエッジ部と重畳しない物がある場合には、該モデル特徴点の近傍の第1の特徴点を探索し、発見された第1の特徴点を対応点とみなすようにしても良い。
また、対応点取得部124は、モデルパターン変換部123が変換したモデルパターンのモデル特徴点について、該モデル特徴点を画像データに重畳した場合の近傍のエピポーラ線と、該モデル特徴点に隣合う第1の特徴点を結ぶ線分との交点を対応点として取得するようにしても良い。
また、上記した実施形態で例示した処理だけでは、対象物検出部122が、例えば図10に例示されるように、特徴点抽出部121により抽出された第1の特徴点からモデルパターンにマッチするものが複数検出するような状況(例えば、複数の対象物を一度に検出するような状況)に対応できない。そこで、他の実施形態として、公知のエピポーラ幾何に基づいた処理を対応点セット選択部125に実行させることで、それぞれの画像に撮像されている2以上の対象物の間の対応を取るようにすることも可能である。エピポーラ幾何に基づいた処理によりそれぞれの画像に撮像されている2以上の対象物の間の対応を取る場合、例えば以下の手順を実行すれば良い。なお、以下の手順では、第1のカメラ4Aから取得された画像データと第2のカメラ4Bから取得された画像データのそれぞれにおいて、2つの対象物a1,b1及び対象物a2,b2が検出された場合を想定している。
●手順c1)第1のカメラ4Aから取得された画像データから検出した対象物の一方(図10における対象物a1)を選択する。
●手順c2)手順c1で選択した対象物に対してモデルパターンを重畳して対応点を取得し、その中の対応点の1つ(図10における対応点Pci)を選択する。
●手順c3)手順c2で選択した特徴点を通るエピポーラ線(図10におけるエピポーラ線Ei)を計算する。
●手順c4)手順c3で計算したエピポーラ線と重なるエピポーラ面を通る第2のカメラ4Bから取得された画像データのエピポーラ線(図10におけるエピポーラ線E)を計算する。
●手順c5)手順c2で計算したエピポーラ線が通る対象物上の対応点(図10における特徴点Pci)と、手順c3で計算したエピポーラ線を通る対象物上の対応点(図10における特徴点Pcj)とが、モデルパターンの同一のモデル特徴点に対応している場合(即ち、モデルパターンの同一のモデル特徴点に対応する対象物上の位置が同一のエピポーラ面の上にある場合)、それら対象物は互いに対応する対象物である可能性がある。
●手順c6)上記手順を、すべてのモデルパターンのモデル特徴点に対して行い、互いに対応する可能性が高い対象物(例えば、同一のエピポーラ面に載る対応点の数が多い対象物や、エピポーラ線を通る同一の対応点が多い対象物)を特定する。
上記した実施形態では、カメラ4が架台等に固定された例を示しているが、他の実施形態として、例えば図11に例示されるように、ステレオカメラ(第1のカメラ4A,第2のカメラ4B)がロボット5の手先についたシステムに対しても、本発明の画像処理装置1を用いることができる。ステレオカメラは、ロボット5のアームを動かした際に、ロボット5のアーム先端部との相対位置を一定に維持しながら、アーム先端部の動作にあわせて移動する。この様なシステムに用いる場合、例えば画像処理装置1をロボット5を制御するロボットコントローラ上に実装しても良いし、ロボットコントローラと併設されたパソコン等に実装しても良い。
また、図12に例示されるように、検出対象物であるワーク3をロボット5のハンドで把持するシステムに対しても、本発明の画像処理装置1を用いることができる。この様なシステムでは、ステレオカメラ(第1のカメラ4A,第2のカメラ4B)は作業台等に固定される。ワーク3は、ロボット5のアームを動かした際に、ロボット5のアーム先端部との相対位置を一定に維持しながら、アーム先端部の動作にあわせて移動する。
更に、図13に例示されるように、単一のカメラ4をロボット5の手先に取り付けたシステムに対しても、本発明の画像処理装置1を用いることができる。この場合、カメラ4はロボット5のアームを動かした際に、ロボット5のアーム先端部との相対位置を一定に維持しながら、アーム先端部の動作にあわせて移動する。そして、カメラ4を複数の箇所に移動させて対象物を撮像することで、ステレオカメラと同様の効果を得ることができる。
1 画像処理装置
2 作業台
3 ワーク
4,4A,4B カメラ
5 ロボット
11 CPU
12 ROM
13 RAM
14 不揮発性メモリ
18,19,20,21 インタフェース
22 バス
70 表示装置
71 入力装置
100 視覚センサ制御部
110 画像データ取得部
120 画像処理部
121 エッジ抽出部
122 対象物検出部
123 モデルパターン変換部
124 対応点取得部
125 対応点セット選択部
126 3次元位置算出部
200 キャリブレーションデータ記憶部
210 モデルパターン記憶部

Claims (8)

  1. 少なくとも1つのカメラにより撮像された検出対象物の複数の画像から、該検出対象物の各特徴点の3次元位置を求める画像処理装置において、
    前記検出対象物に対する複数のモデル特徴点から構成されたモデルパターンを記憶するモデルパターン記憶部と、
    前記カメラにより同一の前記検出対象物を撮像することにより得られた複数の画像を取得する画像データ取得部と、
    前記複数の画像から第1の特徴点を抽出する特徴点抽出部と、
    前記複数の画像から抽出された第1の特徴点と、前記モデルパターン記憶部に記憶されたモデルパターンとのマッチングを行うことにより、前記複数の画像から検出対象物の像を検出する対象物検出部と、
    前記モデルパターンのモデル特徴点が、前記対象物検出部が検出した前記複数の画像内の検出対象物の像に重畳するように、前記モデルパターンのモデル特徴点の位置姿勢を変換するモデルパターン変換部と、
    前記モデルパターン変換部が変換した前記モデルパターンのモデル特徴点に対応する前記画像上の点を対応点として取得する対応点取得部と、
    前記複数の画像のそれぞれの検出対象物の像に対して求められた対応点から、同一のモデル特徴点に基づいて得られた対応点を対応点セットとして選択する対応点セット選択部と、
    前記対応点セット選択部が選択した対応点セットに基づいて前記検出対象物の各特徴点の3次元位置を算出する3次元位置算出部と、
    を備えた画像処理装置。
  2. 前記対応点取得部は、前記モデルパターン変換部が変換した前記モデルパターンのモデル特徴点に対応する前記画像内の位置を対応点として取得する、
    請求項1に記載の画像処理装置。
  3. 前記対応点取得部は、前記モデルパターン変換部が変換した前記モデルパターンのモデル特徴点について、該モデル特徴点の近傍の第1の特徴点を探索し、対応点として取得する、
    請求項1に記載の画像処理装置。
  4. 前記対応点取得部は、前記モデルパターン変換部が変換した前記モデルパターンのモデル特徴点について、それぞれの前記第1の特徴点を通るエピポーラ線の内で該モデル特徴点を前記画像に重畳した場合の近傍のエピポーラ線と、該モデル特徴点と隣合う第1の特徴点を結ぶ線分との交点を対応点として取得する、
    請求項1に記載の画像処理装置。
  5. 前記対応点セット選択部は、前記対象物検出部が前記複数の画像のそれぞれに複数の検出対象物を検出した場合、前記モデルパターンの同一のモデル特徴点が、同一のエピポーラ面上にある対象物同士を同一の検出対象物とみなす、
    請求項1〜4のいずれか1つに記載の画像処理装置。
  6. 前記モデルパターンは前記検出対象物を撮像した入力画像から生成される、
    請求項1〜5のいずれか1つに記載の画像処理装置。
  7. 前記モデルパターンは前記検出対象物の3次元形状データから生成される、
    請求項1〜6のいずれか1つに記載の画像処理装置。
  8. 少なくとも1つのカメラにより撮像された検出対象物の複数の画像から、該検出対象物の各特徴点の3次元位置を求める画像処理方法において、
    前記カメラにより同一の前記検出対象物を撮像することにより得られた複数の画像を取得する第1ステップと、
    前記複数の画像から第1の特徴点を抽出する第2ステップと、
    前記複数の画像から抽出された第1の特徴点と、前記検出対象物に対する複数のモデル特徴点から構成されたモデルパターンとのマッチングを行うことにより、前記複数の画像から検出対象物の像を検出する第3ステップと、
    前記モデルパターンのモデル特徴点が、第3ステップで検出した前記複数の画像内の検出対象物の像に重畳するように、前記モデルパターンのモデル特徴点の位置姿勢を変換する第4ステップと、
    前記第4ステップで変換した前記モデルパターンのモデル特徴点に対応する点を取得する第5ステップと、
    前記複数の画像のそれぞれの検出対象物の像に対して求められた対応点から、同一のモデル特徴点に基づいて得られた対応点を対応点セットとして選択する第6ステップと、
    前記第6ステップで選択した対応点セットに基づいて前記検出対象物の各特徴点3次元位置を算出する第7ステップと、
    を実行する画像処理方法。
JP2018176026A 2018-09-20 2018-09-20 画像処理装置及び画像処理方法 Active JP6836561B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2018176026A JP6836561B2 (ja) 2018-09-20 2018-09-20 画像処理装置及び画像処理方法
DE102019124810.8A DE102019124810A1 (de) 2018-09-20 2019-09-16 Bildverarbeitungsgerät und Bildverarbeitungsverfahren
CN201910887065.5A CN110926330B (zh) 2018-09-20 2019-09-19 图像处理装置和图像处理方法
US16/575,388 US11625842B2 (en) 2018-09-20 2019-09-19 Image processing apparatus and image processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018176026A JP6836561B2 (ja) 2018-09-20 2018-09-20 画像処理装置及び画像処理方法

Publications (2)

Publication Number Publication Date
JP2020047049A JP2020047049A (ja) 2020-03-26
JP6836561B2 true JP6836561B2 (ja) 2021-03-03

Family

ID=69725183

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018176026A Active JP6836561B2 (ja) 2018-09-20 2018-09-20 画像処理装置及び画像処理方法

Country Status (4)

Country Link
US (1) US11625842B2 (ja)
JP (1) JP6836561B2 (ja)
CN (1) CN110926330B (ja)
DE (1) DE102019124810A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6863946B2 (ja) * 2018-10-31 2021-04-21 ファナック株式会社 画像処理装置
KR20190103085A (ko) * 2019-08-15 2019-09-04 엘지전자 주식회사 지능형 진단 디바이스
EP4131166A4 (en) * 2020-03-27 2023-05-10 Panasonic Intellectual Property Management Co., Ltd. THREE-DIMENSIONAL MODEL GENERATION METHOD AND THREE-DIMENSIONAL MODEL GENERATION DEVICE
CN111815718B (zh) * 2020-07-20 2022-03-01 四川长虹电器股份有限公司 一种基于视觉的工业螺钉机器人切换工位的方法
JPWO2022124017A1 (ja) * 2020-12-08 2022-06-16
TW202239546A (zh) 2020-12-10 2022-10-16 日商發那科股份有限公司 圖像處理系統及圖像處理方法
JP7528009B2 (ja) * 2021-03-17 2024-08-05 株式会社東芝 画像処理装置および画像処理方法
US12002214B1 (en) * 2023-07-03 2024-06-04 MOVRS, Inc. System and method for object processing with multiple camera video data using epipolar-lines

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3834297B2 (ja) 2003-05-12 2006-10-18 ファナック株式会社 画像処理装置
CN100559398C (zh) 2007-06-19 2009-11-11 北京航空航天大学 自动的深度图像配准方法
CN100554873C (zh) 2007-07-11 2009-10-28 华中科技大学 一种基于二维编码的三维形貌测量方法
CN100573586C (zh) 2008-02-21 2009-12-23 南京航空航天大学 一种双目立体测量系统的标定方法
CN101251373A (zh) 2008-03-28 2008-08-27 北京工业大学 微结构三维尺寸立体图像快速检测方法
CN101710932B (zh) 2009-12-21 2011-06-22 华为终端有限公司 图像拼接方法及装置
US9124873B2 (en) * 2010-12-08 2015-09-01 Cognex Corporation System and method for finding correspondence between cameras in a three-dimensional vision system
JP5858773B2 (ja) * 2011-12-22 2016-02-10 キヤノン株式会社 3次元計測方法、3次元計測プログラム及びロボット装置
JP5911934B2 (ja) * 2014-09-18 2016-04-27 ファナック株式会社 輪郭線計測装置およびロボットシステム
JP6348093B2 (ja) * 2015-11-06 2018-06-27 ファナック株式会社 入力データから検出対象物の像を検出する画像処理装置および方法
US10634918B2 (en) * 2018-09-06 2020-04-28 Seiko Epson Corporation Internal edge verification

Also Published As

Publication number Publication date
US20200098118A1 (en) 2020-03-26
CN110926330A (zh) 2020-03-27
JP2020047049A (ja) 2020-03-26
US11625842B2 (en) 2023-04-11
CN110926330B (zh) 2022-12-02
DE102019124810A1 (de) 2020-03-26

Similar Documents

Publication Publication Date Title
JP6836561B2 (ja) 画像処理装置及び画像処理方法
US9672630B2 (en) Contour line measurement apparatus and robot system
JP6573354B2 (ja) 画像処理装置、画像処理方法、及びプログラム
JP6348093B2 (ja) 入力データから検出対象物の像を検出する画像処理装置および方法
US8600192B2 (en) System and method for finding correspondence between cameras in a three-dimensional vision system
JP5671281B2 (ja) 位置姿勢計測装置、位置姿勢計測装置の制御方法及びプログラム
Azad et al. Stereo-based 6d object localization for grasping with humanoid robot systems
JP4709668B2 (ja) 3次元物体認識システム
US20120147149A1 (en) System and method for training a model in a plurality of non-perspective cameras and determining 3d pose of an object at runtime with the same
JP5156601B2 (ja) 形状測定装置およびプログラム
JP4836086B2 (ja) 3次元形状検出装置
JP6172432B2 (ja) 被写体識別装置、被写体識別方法および被写体識別プログラム
JP5858773B2 (ja) 3次元計測方法、3次元計測プログラム及びロボット装置
JP2017123087A (ja) 連続的な撮影画像に映り込む平面物体の法線ベクトルを算出するプログラム、装置及び方法
JP2010133751A (ja) 形状測定装置およびプログラム
JP5976089B2 (ja) 位置姿勢計測装置、位置姿勢計測方法、およびプログラム
JP6410231B2 (ja) 位置合わせ装置、位置合わせ方法及び位置合わせ用コンピュータプログラム
US20210335010A1 (en) Calibration method and calibration apparatus
US11989928B2 (en) Image processing system
JP7298687B2 (ja) 物体認識装置及び物体認識方法
CN111199533B (zh) 图像处理装置
JP7502343B2 (ja) 画像処理システム
JP6890422B2 (ja) 情報処理装置、情報処理装置の制御方法およびプログラム
KR20160049639A (ko) 부분 선형화 기반의 3차원 영상 정합 방법
WO2012076979A1 (en) Model-based pose estimation using a non-perspective camera

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200210

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200616

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20200924

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200924

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200929

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201120

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210205

R150 Certificate of patent or registration of utility model

Ref document number: 6836561

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150