JP6080407B2 - 3次元計測装置及びロボット装置 - Google Patents

3次元計測装置及びロボット装置 Download PDF

Info

Publication number
JP6080407B2
JP6080407B2 JP2012149596A JP2012149596A JP6080407B2 JP 6080407 B2 JP6080407 B2 JP 6080407B2 JP 2012149596 A JP2012149596 A JP 2012149596A JP 2012149596 A JP2012149596 A JP 2012149596A JP 6080407 B2 JP6080407 B2 JP 6080407B2
Authority
JP
Japan
Prior art keywords
image
edge
line
dimensional
workpiece
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
JP2012149596A
Other languages
English (en)
Other versions
JP2014013147A5 (ja
JP2014013147A (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 JP2012149596A priority Critical patent/JP6080407B2/ja
Priority to US13/927,269 priority patent/US9715730B2/en
Priority to EP13174626.5A priority patent/EP2682710B1/en
Publication of JP2014013147A publication Critical patent/JP2014013147A/ja
Publication of JP2014013147A5 publication Critical patent/JP2014013147A5/ja
Application granted granted Critical
Publication of JP6080407B2 publication Critical patent/JP6080407B2/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/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/593Depth or shape recovery from multiple images from stereo images
    • 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
    • G01B11/002Measuring arrangements characterised by the use of optical techniques for measuring two or more coordinates
    • 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/564Depth or shape recovery from multiple images from contours
    • 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/37Measurements
    • G05B2219/375673-D vision, stereo vision, with two cameras
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/239Image signal generators using stereoscopic image cameras using two 2D image sensors having a relative position equal to or related to the interocular distance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N2013/0074Stereoscopic image analysis
    • H04N2013/0081Depth or disparity estimation from stereoscopic image signals
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/46Sensing device

Description

本発明は、2つ以上の視点からワークの撮像を行い、3次元計測や立体視を行う3次元計測装置及びこれを備えるロボット装置に関する。
従来、非接触にてワークの3次元形状を計測する方法として、複数視点に設置したカメラからワークを撮像し、撮像した複数の画像からワークの3次元形状を計測するステレオ法が知られている。また、ステレオ法においては、少ない情報量でワークの3次元形状を計測するために、撮像した画像上のワークのエッジ線を利用する場合がある。
しかしながら、エッジ線を利用して3次元形状を計測するステレオ法は、理想的な条件下においてはワークの正確な3次元形状を得ることができるが、実際にはカメラ校正時の誤差やエッジ線抽出時の誤差が存在する。そのため、計測した3次元形状において、本来繋がっているべきエッジ線がねじれの位置に復元されたり、エッジ線間の角度が正確でなかったりする場合があるという問題があった。
これに対しては、ワークの複数のエッジ線が同一平面上に存在するという条件(以下、「平面拘束条件」という)を用いて対応点を補正することで、3次元計測の精度を向上させる技術が提案されている(特許文献1参照)。
特開2003−248814号公報
しかしながら、特許文献1に開示の技術は、同一平面上に存在する点群が満たすべき平面拘束条件を用いて平面パラメータを求めて、画像上の対応点を補正する。そのため、同一平面上にないエッジ線同士の相対角度やエッジ線同士の立体的な位置関係等のような複合的な3次元拘束条件を加えることができなかった。
ところが、撮像した画像から実際に3次元データを生成する場合には、設計上から、「エッジ線同士が垂直になっている」、「エッジ線同士が水平になっている」、「エッジ線同士が同一直線上にある」等の複合的な3次元拘束条件が予め分かっていることが多い。そのため、これらの複合的な3次元拘束条件を適用して3次元計測の精度を向上させた3次元計測装置が望まれていた。
そこで、本発明は、高精度な3次元形状の計測が可能な3次元計測装置及びこれを備えるロボット装置を提供することを目的とする。
本発明は、3次元計測装置において、ワークを撮像して第1画像を取得する第1カメラと、前記第1カメラとは異なる視点でワークを撮像して第2画像を取得する第2カメラと、前記第1画像及び前記第2画像のそれぞれからワークの複数のエッジ線を抽出し、前記第1画像の複数のエッジ線の中から任意に選択された第1エッジ線の端部と、前記第1エッジ線に対応するように前記第2画像の複数のエッジ線から抽出された第2エッジ線の端部と、の仮の3次元座標に対する視線誤差を演算し、前記第1エッジ線の端点及び第2エッジ線の端点のそれぞれの視線誤差とワークの3次元形状に基づき、前記第1画像又は前記第2画像の複数のエッジ線の中の2本のエッジ線が、同一平面、同一直線、垂直及び平行、の各拘束条件の中からいずれか1つ以上を選択して設定された3次元拘束条件とから、評価関数を設定し、前記評価関数の値を最小又は最大にする最適化計算を行ってワークの3次元座標を決定する制御部と、を備えたことを特徴とする。
また、本発明は、3次元計測装置において、ワークを撮像して第1画像を取得する第1カメラと、前記第1カメラとは異なる視点でワークを撮像して第2画像を取得する第2カメラと、前記第1画像及び前記第2画像のそれぞれからワークの複数のエッジ線を抽出し、前記第1画像の複数のエッジ線の中から任意に選択された第1エッジ線の端部の仮の3次元座標に対する視線誤差を演算すると共に、前記第1エッジ線に対応するように前記第2画像の複数のエッジ線の中から抽出された第2エッジ線の前記仮の3次元座標に対する視平面誤差を演算し、前記第1エッジ線の端点の視線誤差、第2エッジ線の視平面誤差及びワークの形状に基づき、前記第1画像又は前記第2画像の複数のエッジ線の中の2本のエッジ線が、同一平面、同一直線、垂直及び平行、の各拘束条件の中からいずれか1つ以上を選択して設定された3次元拘束条件から評価関数を設定し、前記評価関数の値を最小又は最大にする最適化計算を行ってワークの3次元座標を決定する制御部と、を備えたことを特徴とする。
また、本発明は、3次元計測方法において、第1カメラでワークを撮像して取得した第1画像からワークの複数のエッジ線を抽出する第1画像エッジ線抽出工程と、第2カメラでワークを撮像して取得した第2画像からワークの複数のエッジ線を抽出する第2画像エッジ線抽出工程と、前記第1画像の前記複数のエッジ線の中から任意に選択した第1エッジ線に対応するように前記第2画像の前記複数のエッジ線の中から抽出された第2エッジ線の、前記第1エッジ線の端点に対応する端点を演算する対応点演算工程と、仮の3次元座標に対する、前記第1エッジ線の端点と、前記第2エッジ線の端点と、のそれぞれの視線誤差を演算する視線誤差演算工程と、前記第1エッジ線の端点と前記第2エッジ線の端点とのそれぞれに設定された前記視線誤差と、ワークの形状に基づき、前記第1画像又は前記第2画像の複数のエッジ線の中の2本のエッジ線が、同一平面、同一直線、垂直及び平行、の各拘束条件の中からいずれか1つ以上を選択して設定された3次元拘束条件とから評価関数を設定する評価関数設定工程と、前記評価関数を最小又は最大にする最適化計算を行ってワークの3次元座標を決定する3次元座標計測工程と、備えたことを特徴とする。
また、本発明は、3次元計測方法において、第1カメラでワークを撮像して取得した第1画像からワークの複数のエッジ線を抽出する第1画像エッジ線抽出工程と、第2カメラでワークを撮像して取得した第2画像からワークの複数のエッジ線を抽出する第2画像エッジ線抽出工程と、前記第1画像の前記複数のエッジ線の中から任意に選択された第1エッジ線の端部の、仮の3次元座標に対する視線誤差と、前記第1エッジ線に対応するように前記第2画像の前記複数のエッジ線の中から抽出された第2エッジ線の、前記仮の3次元座標に対する視平面誤差と、を演算する誤差演算工程と、前記第1エッジ線の端点の視線誤差、前記第2エッジ線の視平面誤差、及びワークの3次元形状に基づき、前記第1画像又は前記第2画像の複数のエッジ線の中の2本のエッジ線が、同一平面、同一直線、垂直及び平行、の各拘束条件の中からいずれか1つ以上を選択して設定された3次元拘束条件と、から評価関数を設定する評価関数設定工程と、前記評価関数の値を最小又は最大にする最適化計算を行ってワークの3次元座標を決定する3次元座標計算工程と、備えたことを特徴とする。
本発明によれば、同時に満たす複合的な3次元拘束条件を設定した評価関数を最適化計算することで、高精度な3次元形状の計測を行うことができる。
本発明の実施形態に係るロボット装置の概略構成を示す斜視図である。 本実施形態に係るロボット装置の制御装置を示すブロック図である。 第1実施形態に係るカメラ制御部の構成を示すブロック図である。 第1実施形態に係る3次元座標の計測を示すフローチャートである。 第1実施形態に係る基準カメラ、参照カメラ及びワークを示す模式図である。 エピポーラ線を用いた対応点の求め方を説明するための図である。 第1エッジ線の第1端点及び第2エッジ線の第2端点の視線誤差を説明するための模式図である。 第1実施形態に係るエッジ線間の対応付けを行った際のデータ構造を示す図である。 第1実施形態に係るエッジ線間の3次元拘束条件を説明するための模式図である。 第2実施形態に係るカメラ制御部の構成を示すブロック図である。 第2実施形態に係る3次元座標の計測を示すフローチャートである。 第2実施形態に係る視線誤差と視平面誤差とを説明するための模式図である。
<第1実施形態>
以下、本発明の第1実施形態に係るロボット装置1について、図1から図9を参照しながら説明する。まず、ロボット装置1の概略構成について、図1から図3を参照しながら説明する。図1は、本発明の実施形態に係るロボット装置1を示す斜視図である。図2は、本実施形態に係るロボット装置1の制御装置4の構成を示すブロック図である。図3は、第1実施形態に係るカメラ制御部5の構成を示すブロック図である。
図1に示すように、第1実施形態に係るロボット装置1は、ワークの組立を行うロボット2と、ロボット2によるワークの組立が行われる架台3と、ロボット2を制御する制御装置4と、を備えている。
ロボット2は、6軸多関節の汎用ロボットであり、ロボットアーム20と、ロボットアームの先端部に取り付けられたハンド21と、第1カメラとしての基準カメラ22と、第2カメラとしての参照カメラ23と、を備えている。なお、本実施形態においては、基準カメラ22と参照カメラ23の2台のカメラを用いたが、例えば、ステレオカメラのような複眼カメラを用いてもよい。
ロボットアーム20は、各関節を各関節軸まわりにそれぞれ回転駆動する6つのアクチュエータ(図示せず)を備えており、6つのアクチュエータのそれぞれを選択的に駆動することで先端部に取り付けられたハンド21を任意の3次元位置に移動させる。ハンド21は、ワーク等を把持する把持部21aと、把持部21aを駆動する不図示のアクチュエータと、を備えており、ロボットアーム20の駆動により移動し、移動した位置でアクチュエータを駆動することでワーク等を把持する。なお、ハンド21には、不図示の力覚センサが設けられており、ワークを把持する際には、力覚センサによりワークを把持する把持力が調整される。また、ハンド21は、ロボットアーム20の先端に着脱自在に取り付けられており、作業するワークの形状等により交換可能になっている。
基準カメラ22は、ロボットアーム20の先端に取り付けられており、ワークを撮像してワークの第1画像を取得する。参照カメラ23は、ロボットアーム20の先端で基準カメラ22に隣接して取り付けられており、基準カメラ22と異なる視点でワークを撮像してワークの第2画像を取得する。
架台3は、矩形箱状に形成されており、上面にワークが載置される平面状の載置部30が設けられている。載置部30の略中央部には、ワークの組立に用いられる治具31が設けられており、載置部30の隅部には、ロボットアーム20の基端部を固定支持する支持部32と、部品供給機33と、工具置き台34と、が設けられている。架台3の下部には、架台3を移動させるための4つのキャスター35・・・と、架台3を床面に固定させるための4つの固定金具36・・・と、が設けられており、任意の位置に移動した後、固定可能となっている。
図2に示すように、制御装置4は、演算装置40と、記憶装置41と、を有するコンピュータ本体に、ロボットアーム20、ハンド21、基準カメラ22及び参照カメラ23がバスを介して接続されて構成されている。また、コンピュータ本体には、入力装置42、ティーチングペンダント43、ディスプレイ44、スピーカ45、記録メディア読取装置46及び通信装置47などもバスを介して接続されている。なお、図2においては、これらを接続するためのインターフェイスは不図示としている。
演算装置40は、CPU40aと、画像処理装置40bと、音声処理装置40cと、を備えている。CPU40aは、カメラ制御部5と、ロボット制御部6と、を備えている。カメラ制御部5は、記憶装置41に記憶された各種プログラムや入力装置42から入力される設定等に従って、ワークの3次元位置を計測する。
図3に示すように、カメラ制御部5は、第1画像エッジ線抽出部51と、第2画像エッジ線抽出部52と、対応点演算部53と、視線誤差演算部54と、評価関数設定部55と、3次元座標計測部56と、を備えている。
第1画像エッジ線抽出部51は、基準カメラ22でワークを撮像して取得した第1画像から、ワークの複数のエッジ線を抽出する。第2画像エッジ線抽出部52は、参照カメラ23でワークを撮像して取得した第2画像から、ワークの複数のエッジ線を抽出する。対応点演算部53は、第1画像の複数のエッジ線の中から任意に選択した第1エッジ線に対応する第2エッジ線を第2画像の複数のエッジ線の中から抽出し、抽出した第2エッジ線の第1エッジ線の端点に対応する端点を演算する。視線誤差演算部54は、仮の3次元座標を設定し、仮の3次元座標に対する、第1エッジ線の端点と、第2エッジ線の端点と、のそれぞれの視線誤差を演算する。評価関数設定部55は、第1エッジ線の端点と第2エッジ線の端点とのそれぞれに設定された視線誤差と、ワークの形状に基づいて設定された3次元拘束条件と、から視線誤差と3次元拘束条件とを含む評価関数を設定する。3次元座標計測部56は、評価関数が最小ないし最大となるように最適化計算を行ってワークの3次元座標を計測する。なお、カメラ制御部5によるワークの3次元位置の計測については、後に詳しく説明する。
ロボット制御部6は、カメラ制御部5により計測されたワークの3次元位置及び記憶装置41に記憶された各種プログラムや入力装置42から入力される設定等に基づいて、ロボットアーム20やハンド21を制御する。なお、ロボット制御部6によるロボットアーム20やハンド21の制御については、その説明を省略する。
画像処理装置40bは、CPU40aからの描画指示に応じてディスプレイ44を制御して、画面上に所定の画像を表示させる。音声処理装置40cはCPU40aからの発音指示に応じた音声信号生成してスピーカ45に出力する。
記憶装置41は、バスを介してCPU40aに接続されており、各種プログラムやデータ等が格納されたROM41aと、CPU40aの作業領域として確保されたRAM41bと、を備えている。本実施形態においては、ROM41aには、ロボットアーム20やハンド21の駆動プログラムに加え、ワークを3次元計測するための各種プログラム等が格納されている。例えば、後述する第1画像エッジ線抽出工程、第2画像エッジ線抽出工程、対応点演算工程、視線誤差演算工程、評価関数設定工程及び3次元座標計測工程を実行させるための3次元計測プログラム等が格納されている。また、ROM41aは、作業者により、3次元拘束条件や基準カメラ22及び参照カメラ23のカメラパラメータ等のデータが入力装置42から入力された際には、これらを格納する。
入力装置42は、キーボード42aと、マウス42bと、から構成されており、ワークの3次元位置の計測に必要な情報、或いはその他の指示の入力を可能としている。記録メディア読取装置46は、例えば、3次元計測プログラム等を記録したコンピュータ読み取り可能な記録媒体48を読み込み、ROM41aに格納させるため等に用いられる。通信装置47は、例えば、上述したような記録媒体48を使用せずに、通信装置47を介してインターネット等から配信される3次元計測プログラム等をダウンロードする際に用いられる。
次に、上述のように構成されたロボット装置1のカメラ制御部5によるワークの3次元座標の計測方法について、図4に示すフローチャートに沿って、図5から図9を参照しながら説明する。図4は、第1実施形態に係る3次元座標の計測を示すフローチャートである。図5は、第1実施形態に係る基準カメラ22、参照カメラ23及びワークを示す模式図である。図6は、エピポーラ線を用いた対応点の求め方を説明するための図である。図7は、第1エッジ線の第1端点及び第2エッジ線の第2端点の視線誤差を説明するための模式図である。図8は、第1実施形態に係るエッジ線間の対応付けを行った際のデータ構造を示す図である。図9は、第1実施形態に係るエッジ線間の3次元拘束条件を説明するための模式図である。
まず、図5に示すように、異なる視点から共通視野を持つように配置された、基準カメラ22及び参照カメラ23のそれぞれのレンズ主点O、Oを原点とし、各々のカメラ座標系のZ軸が画像面と直交するように設定する。以下、基準カメラ22を代表する座標系を基準カメラ座標系C、参照カメラ23を代表する座標系を参照カメラ座標系Cで表し、基準カメラ22の画像面を基準画像面22a、参照カメラ23の画像面を参照画像面23aと表す。
次に、基準カメラ22の内部パラメータと、参照カメラ23の内部パラメータと、カメラの外部パラメータと、を求め、ROM41aに記憶させておく。内部パラメータとは、カメラ座標系で表された任意の3次元座標を画像面上の点へ投影する計算の際に必要となるパラメータであり、公知のカメラキャリブレーション技術によって求めることができる。本実施形態においては、内部パラメータを算出する詳細な説明は省略し、下記の表現を用いるものとする。
fをレンズの焦点距離、cを画像面とカメラ光軸の交点の列座標、cを画像面とカメラ光軸の交点の行座標、sを画像センサの1画素あたりの幅、sを画像センサの1画素あたりの高さ、とする。なお、列座標c、行座標cは、画像ピクセルに対し、左からc列目、上からc行目が、カメラ光軸と画像面の交点であることを意味する。また、c、cは整数である必要はなく、サブピクセルの精度で求まっていてもよい。また、焦点距離f、1画素あたりの幅s及び1画素あたりの高さsは、一般的な長さの単位(例えば、ミリメートルやメートル等)で表現される。
すると、基準カメラ22の内部パラメータは、(f、cuL、cvL、sxL、syL)と表すことができ、参照カメラ23の内部パラメータは、(f、cuR、cvR、sxR、syR)と表すことができる。なお、添え字Lは、基準カメラ22の内部パラメータを示し、添え字Rは、参照カメラ23の内部パラメータを示している。
また、画像座標(u、v)の点は、内部パラメータを用いて下記のようにカメラ座標系の座標P=(x、y、z)に変換することができる。
Figure 0006080407
外部パラメータは、基準カメラ22と参照カメラ23の6自由度の相対姿勢を表すパラメータであり、公知のキャリブレーション技術によって求めることができる。本実施形態においては、基準カメラ22と参照カメラ23の間の外部パラメータを算出する詳細な説明は省略し、回転行列R及び並進ベクトルtで表す。
ここで、回転行列Rと並進ベクトルtは、基準カメラ座標系Cから参照カメラ座標系Cへの座標変換を表しており、参照カメラ座標系Cで記述された任意の3次元座標(R)Xは、基準カメラ座標系Cでは外部パラメータを用いて下のように表される。
Figure 0006080407
なお、上記においては、基準カメラ座標系C及び参照カメラ座標系Cで表現された座標値であることを明確にするために、(L)及び(R)の添え字を用いた。以下の説明においては、基準カメラ座標系を全体の基準座標系とし、特に座標系を表す添え字の無い場合は基準カメラ座標系で記述されているものとする。このときO(0、0、0)、O=tである。また、カメラの内部パラメータ、外部パラメータに関しては行列形式での表現など、様々な表現方法が存在するが、本実施形態においてはどの形式の表現を用いるかという点は本質的ではない。また、本実施形態においては、レンズ歪については考慮していないが、レンズ歪について考慮したパラメータを用いてもよい。
次に、評価関数の準備を行う。本実施形態においては、画像点に対する視線からの誤差と3次元拘束条件とからの誤差を評価するための評価関数が重要な役割を担う。本実施形態においては、評価関数をFで表す。本実施形態に係る評価関数Fは、視線誤差項部分と3次元拘束条件項部分の和の形で表される。評価関数Fの視線誤差項部分をFsight(N)、評価関数Fの3次元拘束条件項部分をFconst(M)と表す。すなわち、評価関数Fは、
Figure 0006080407
となる。なお、図4に示す処理フロー開始時点の初期値は、Fsight(N)=0、かつ、Fconst(M)=0であり、ループ処理により項を追加していく。添え字NはN番目までのエッジ対応付けに関する視線誤差項であることを表し、添え字MはM個の拘束条件を設定した時点での拘束条件項であることを表している。
次に、基準カメラ22でワーク10を撮像して第1画像としての基準画像面22aを取得し、取得した基準画像面22aに対して、ワーク10の複数のエッジ線を抽出するエッジ線抽出処理を行う(ステップS101、第1画像エッジ線抽出工程)。具体的には、まず、基準画像面22aに対して、ソーベルフィルタやキャニーフィルタ等のエッジ抽出フィルタを用い、輝度変化が最大となる点を、エッジ点群として抽出する。次に、抽出したエッジ点群に対して、直線近似の処理を行うとともに線分に分割し、それぞれの端点の画像座標(画素の位置)を求める。画像座標に関しては、画素単位の値としても構わないが、高精度の計測を行うためにはサブピクセル精度の処理を用いることが望ましい。本実施形態においては、エッジ点群を線分に近似したものを、エッジ線と呼ぶ。同様に、参照カメラ23でワーク10を撮像した第2画像としての参照画像面23aに対して、ワーク10の複数のエッジ線を抽出するエッジ線抽出処理を行う(ステップS101、第2画像エッジ線抽出工程)。
次に、基準画像面22aにおいて抽出された複数のエッジ線が、参照画像面23aでどこに撮影されているかを特定する対応付け処理を行い、ROM41aに記憶させる。つまり、基準画像面22aから抽出された複数のエッジ線と、参照画像面23aから抽出された複数のエッジ線と、の対応付けを行い、これを記憶しておく。対応付け処理は、対応付け終了と判定されるまで続けて行われる(ステップS102〜S106)。なお、対応付け自体は、ユーザがUI上で画像を見ながら同一と思われるエッジ線を指定してもよく、カメラ制御部5が画像相関を用いて類似の画像パターンを検出することで選択する公知の手法を用いてもよい。具体的には、基準画像面22aから抽出した複数のエッジ線から1つのエッジ線(第1エッジ線)を選択し(ステップS103)、参照画像面23a内でそれと対応するエッジ線(第2エッジ線)を選択する(ステップS104)。関連づけた第1エッジ線と第2エッジ線とに対して、後述の処理を行うことにより、3次元空間での1本のエッジ線が求まる。
次に、上述により対応付けられたエッジ線(例えば、第1エッジ線と第2エッジ線)は、照明条件等の制約により、一般には端点が同一の点とは限らない。そのため、対応付けられたエッジ線に対してエピポーラ拘束を用いてエッジ線上の点同士の対応を求める(ステップS105、対応点演算工程)。
ステップS101において、例えば、選択した第1エッジ線の端点の画像座標が分かっているので、第1エッジ線の端点に対する参照画像面23a上のエピポーラ線と参照画像面23a上の第2エッジ線との交点を求めることで、対応点の座標を求めることができる。例えば、図6に示すように、エピポーラ拘束を用いて基準画像面22a参照画像面23aで共通に撮影されている部分を判定し、それぞれの端点を求める。なお、図6においては、基準画像面22a参照画像面23aとの間で、同種の破線で表されたエピポーラ線がそれぞれ対応している。この対応点計算処理を行うことにより、i番目のエッジ線の対応に対して、各々の画像上での画像点PLi1、PLi2、PRi1、PRi2の画像座標が求まる。
次に、ステップS105で求めた対応点の画像座標を用いて、未知の3次元座標Xijに対する視線誤差項を求める(ステップS106、視線誤差演算工程)。ここで、添え字iは、i番目のエッジ線対応を表し、添え字jは、j=1、2がそれぞれエッジ線の両端点に対応している。視線誤差項としては、レンズ主点O、Oと画像点PLij、PRijとを結ぶ基準画像視線24、参照画像視線25を考えた際に、基準画像視線24及び参照画像視線25から3次元座標Xijまでの距離dLij、dRijに応じて値が大きくなるように定める。ここで、「基準画像視線24、参照画像視線25から3次元座標Xijまでの距離dLij、dRij」とは、図7に示すように、3次元座標Xijから基準画像視線24、参照画像視線25のそれぞれに降ろした垂線の長さである。本実施形態においては、基準画像視線24、参照画像視線25から3次元座標Xijまでの距離dLij、dRijの自乗和を、視線誤差項として用いる。
以下、視線誤差項の計算について、数式を用いて説明する。まず、画像点PLijの画像座標を(uLij、vLij)、画像点PRijの画像座標を(uRij、vRij)と表すと、それぞれのカメラ座標系における画像点PLij、PRijの座標値は、次の式で表すことができる。
Figure 0006080407
次に、それぞれのカメラ座標系原点O、Oから画像点PLij、PRijに向かう単位視線ベクトルを求める。単位視線ベクトルをeLij、eRijで表すと、以下のように表せる。
Figure 0006080407
この時点で基準カメラ座標系における単位視線ベクトルeLij及び単位視線ベクトルeRijは、画像から抽出した対応点とカメラの内部パラメータ及び外部パラメータを用いて一意に求めることが可能な定数である。
ここで、未知の3次元座標Xij=(xij、yij、zij)を導入し、Xijと視線との距離を求める。求める距離dLij及び距離dRijはベクトルの外積を用いて表すと以下のようになる。
Figure 0006080407
ステップS106の最後に、未知の3次元座標Xijと視線との距離dLij、Rijに応じた視線誤差項を評価関数に加える。本実施形態においては、評価関数Fに距離dLij、Rijの自乗和を加える。i番目の視線誤差項を追加した時点における評価関数Fの視線誤差項部分をFsight(i)と書くことにすると、
Figure 0006080407
となる。
視線誤差項を加えた後は、ステップS102に戻り、追加の対応付けを終了するか否かの判断を行い、終了と判定されるまでステップS103〜S106の処理を繰り返し、処理を繰り返すたびに視線誤差項が追加される。その結果、N回の繰り返しを行った場合の評価関数の視線誤差項部分Fsight(N)は下記のようになる。
Figure 0006080407
ここで、評価関数の視線誤差項部分Fsight(N)は、(x11、y11、z11、x12、y12、z12、・・・、xN1、yN1、zN1、xN2、yN2、zN2)の6N個の変数をもつ関数である。理解を助けるため、ステップS102のループを抜けた時点での対応づけのデータ構造例を図8に示す。対応付けのi回目に基準画像面22aのエッジ線Lα(i)参照画像面23aのエッジ線 β(i) を対応づけたとすると、その組合せに対して3次元エッジ線Eiが定義される。基準画像面22aにおけるエッジ線Lα(i)上の画像点PLi1、PLi2と、参照画像面23aにおけるエッジ線 β(i) 上の点PRi1、PRi2がそれぞれ対応点として求められる。さらに、それぞれの3次元エッジ線Eiは、Xi1(xi1、yi1、zi1)とXi2(xi2、yi2、zi2)との2つの端点を持っている。さらに、端点の3次元座標Xij(i=1、2、・・・N、j=1、2)のそれぞれについて、視線誤差項(dLij Rij )が定義されている。
次に、2本のエッジ線間の拘束条件の設定を行うとともに拘束条件項を求める(ステップS107〜S111)。まず、ステップS107において、拘束条件の追加を行うか否かを判定する。この判定は、ユーザの判断によって追加の要否を入力するようにしてもよく、自動的に判定するようなアルゴリズムを用いてもよい。拘束条件の追加を終了するまで、次のステップS108〜S111の処理を繰り返す。
次に、拘束条件を設定する2本の3次元エッジ線を選択する。なお、1本の3次元エッジ線は、ステップS103及びS104で設定された一組の組合せに対応している。例えば、図8に示された3次元エッジ線のリストの中から、ステップS108においてE1を選択し、ステップS109においてE2を選択する。
さらに、S110において、ステップS108〜S109で選択した2本のエッジ線に対して、エッジ線間の幾何的な3次元拘束条件を選択する。つまり、ワーク10について事前に分かっている、エッジ線間の位置関係を設定する。本実施形態においては、2エッジ線間の幾何関係のうち、「2エッジ線が同一平面上にある」、「2エッジ線が同一直線上にある」、「2エッジ線の方向が平行である」及び「2エッジ線の方向が垂直である」、の4種類を取り扱う。以上の4種類の3次元拘束条件のうち、1つを選択してステップS111に進む。
次に、ステップS110において設定した3次元拘束条件に応じて、3次元拘束条件項fconst(k)を評価関数に追加する(図4(b)参照)。まず、ステップS201において、追加するべき3次元拘束条件項を選択する。以下、各々の3次元拘束条件に応じた3次元拘束条件項の内容について説明する。なお、以下のステップS202〜S205の説明において、ステップS108で選択されたエッジ線の両端点をXa1、Xa2、ステップS109で選択されたエッジ線の両端点をXb1、Xb2とする。
「2本のエッジ線が同一平面上にある(同一平面項追加、ステップS202)」という3次元拘束条件が選択された場合は、この処理を行う。同一平面項として、2本のエッジ線が同一平面上に存在するときに値が最小となる関数を用いる。例えば、4点が同一平面上に存在するという条件は、Xa1、Xb1、Xb2の3点で張った平面上にXa2も存在することから、下記の式で表すことができる。
Figure 0006080407
よって、k番目の拘束条件項fconst(k)として、下記のような同一平面項fplaneを代入する。
Figure 0006080407
なお、ここでλは重み係数であり、異なる3次元拘束条件間で重みづけを調整するために使用する定数である。重み係数λは、ユーザが個々に設定するようにしてもよいし、エッジ線の長さに応じて重みづけを決定するアルゴリズムを用いてもよい。
次に、「2本のエッジ線が同一直線上にある」という3次元拘束条件が選択された場合は、この処理を行う。同一直線項として、2本のエッジ線が同一直線上に存在するときに値が最小となる関数を用いる。例えば、3点が同一直線上にあるという条件は、ベクトルの外積を用いて次の式で表すことができる。
Figure 0006080407
よって、k番目の拘束条件項fconst(k)として、下記のような同一直線項flinearを代入する。
Figure 0006080407
なお、ここでλk1、λk2は重み係数であり、異なる3次元拘束条件間で重みづけを調整するために使用する定数である。重み係数λk1、λk2は、同一平面項の場合と同様に、ユーザが個々に設定するようにしてもよいし、エッジ線の長さに応じて重みづけを決定するアルゴリズムを用いてもよい。
次に、「2本のエッジ線が平行である」という3次元拘束条件が選択された場合は、この処理を行う。平行項として、2本のエッジ線が平行であるときに値が最小となる関数を用いる。「2本のエッジ線が平行である」という条件は、ベクトルの外積を用いて下記の数式で表現することができる。
Figure 0006080407
よって、k番目の拘束条件項fconst(k)として、下記のような同一直線項fparallelを代入する。
Figure 0006080407
なお、ここでλは重み係数であり、異なる3次元拘束条件間で重みづけを調整するために使用する定数である。他の拘束条件項と同様に、重み係数λは任意の方法で設定してよい。
次に、「2本のエッジ線が垂直である」という3次元拘束条件が選択された場合は、この処理を行う。垂直項として、2本のエッジ線が垂直であるときに値が最小となる関数を用いる。2本のエッジ線が垂直である、という条件は、ベクトルの内積を用いて下記の数式で表現することができる。
Figure 0006080407
よって、k番目の拘束条件項fconst(k)として、下記のような同一直線項fverticalを代入する。
Figure 0006080407
なお、ここでλは重み係数であり、異なる3次元拘束条件間で重みづけを調整するために使用する定数である。他の拘束条件項と同様に、重み係数λは任意の方法で設定してよい。本実施形態に場合、拘束条件項fconst(k)は、(xa1、ya1、za1、xa2、ya2、za2、xb1、yb1、zb1、xb2、yb2、zb2)の12個の変数をもつ関数である。
ステップS111において、拘束条件項fconst(k)を追加した後はステップS107の処理に戻り、さらに、3次元拘束条件を追加するか否かを判定する。そして、3次元拘束条件の追加を終了するまでステップS108〜S111の処理を繰り返す。3次元拘束条件項fconst(k)は、矛盾しない範囲で任意の個数設定することができる。例えば、ある2本のエッジ線に対して「同一平面上」と「垂直」という2つの3次元拘束条件を設定することも可能である。ステップS107〜S111のループによってM個の3次元拘束条件を設定した場合、評価関数Fの拘束条件項部分Fconst(M)は下記のようになる。
Figure 0006080407
const(M)は、(x11、y11、z11、x12、y12、z12、・・・、xN1、yN1、zN1、xN2、yN2、zN2)の最大6N個の変数をもつ関数である。ただし、実際にFconst(M)に含まれる変数は、ステップS108〜S109において選択されたエッジ線の数に対応する。
次に、ステップS102〜S106において追加された視線誤差項部分Fsight(N)と、ステップS107〜S111の処理において追加された拘束条件項部分Fconst(M)とから、評価関数Fを設定する(評価関数設定工程)。上述したように、評価関数Fは、Fsight(N)と、拘束条件項部分Fconst(M)と、の和の形で表される。即ち、
Figure 0006080407
で表される。
次に、評価関数Fを最少とすることで3次元座標Xij(i=1、2、・・・、j=1、2)を求める(3次元座標計測工程)。つまり、評価関数Fに対して、
Figure 0006080407
となるような変数の組(x11、y11、z11、x12、y12、z12、・・・、xN1、yN1、zN1、xN2、yN2、zN2)を求める。この計算は、公知の多変数最適化手法を用いて行えばよく、例えば、非線形探索手法のひとつであるNelder―Meadの滑降シンプレックス法を使用することができる。
以上の処理により求められた座標値(x11、y11、z11、x12、y12、z12、・・・、xN1、yN1、zN1、xN2、yN2、zN2)は、エッジ線間の3次元拘束条件を考慮して復元された形状となる。しかも、本実施形態によれば、立体的に配置された複数のエッジ線間に、任意の3次元拘束条件を適用することができる。そのため、従来手法に比べて、より高精度な形状を得ることができる。
<第2実施形態>
次に、本発明の第2実施形態に係るロボット装置1Aについて、図1及び図2を援用すると共に、図10から図12を参照しながら説明する。第2実施形態においては、カメラ制御部5によるワークの3次元座標の計測方法が第1実施形態と相違する。そのため、第2実施形態においては、第1実施形態と相違する点、即ち、カメラ制御部による3次元位置の計測方法を中心に説明し、第1実施形態と同様の構成については同じ符号を付してその説明は省略する。
まず、ロボット装置1Aの概略構成について、図1及び図2を援用すると共に、図10を参照しながら説明する。図10は、第2実施形態に係るカメラ制御部5Aの構成を示すブロック図である。
図1及び図2に示すように、第2実施形態に係るロボット装置1Aは、ロボット2と、架台3と、ロボット2を制御する制御装置4Aと、を備えており、制御装置4Aは、演算装置40Aと、記憶装置41と、を備えている。演算装置40Aは、CPU40aAと、画像処理装置40bと、音声処理装置40cと、を備えており、CPU40aAは、カメラ制御部5Aと、ロボット制御部6と、を備えている。
図10に示すように、カメラ制御部5Aは、第1画像エッジ線抽出部51と、第2画像エッジ線抽出部52と、対応点演算部53と、誤差演算部57と、評価関数設定部55と、3次元座標計測部56と、を備えている。誤差演算部57は、仮の3次元座標を設定し、仮の3次元座標に対する第1エッジ線の端点の視線誤差を演算する。また、誤差演算部57は、仮の3次元座標に対する第2エッジ線の端点の視平面誤差を演算する。
次に、上述のように構成されたロボット装置1Aのハンド21がワークを把持する際の、カメラ制御部5Aによるワークの3次元位置の計測方法について、図11に示すフローチャートに沿って、図12を参照しながら説明する。図11は、第2実施形態に係る3次元座標の計測を示すフローチャートである。図12は、第2実施形態に係る視線誤差と視平面誤差とを説明するための模式図である。
基本的な流れとしては、まず、基準カメラ22と参照カメラ23とで、複数の異なる視点から撮影した基準画像面22aと、参照画像面23aと、に対してエッジ線の抽出を行う(ステップS301)。次に、対応づけの追加を繰り返すか否かを判定する(ステップS302)。そして、基準画像面22aの複数のエッジ線の中から第1エッジ線を選択して、参照画像面23aから対応する第2エッジ線を選択する(対応付けを行う)(S303〜S304)。そして、基準画像面22aの第1エッジ線に関して視線誤差項を計算する(S305)。同様に、参照画像面23aに関して視平面誤差項を計算する(S306)。さらに、対応付けを行った2本のエッジ線間に幾何的な3次元拘束条件を設定し、3次元拘束条件項を計算する(S307〜S311)。最後に、視線誤差項、視平面誤差項及び3次元拘束条件項を含んだ評価関数の値が最小となるように最適化問題を解き、3次元座標を求める(S312)。
第2実施形態においては、第1エッジ線を選択してから対応付けした第2エッジ線を選択するまでの処理ステップS301〜S304は、第1実施形態と同様である。また、3次元拘束条件を追加する処理ステップS307〜S311も、第1実施形態と同様である。そのため、これらの詳細な説明は省略する。以下においては、第1実施形態と異なる、第1エッジ線の端点の視線誤差項、第2エッジ線の視平面誤差項の追加処理(ステップS305〜S306)と3次元座標計算(S312)について説明する。
まず、ステップS303において選択された第1エッジ線の端点に対し、視線誤差項を求めて評価関数に追加する。視線誤差項に関する考え方は、第1実施形態と同様であるが、基準画像視線24に対する視線誤差項のみを追加する。基準画像視線24に対する視線誤差項dLij は、下記のようになる。
Figure 0006080407
次に、ステップS304において選択された第2エッジ線の両端点から、視平面誤差項を求めて評価関数に追加する。視平面誤差項は、未知の3次元座標Xと、選択した第2エッジ線上の点群が作る視平面との距離である。視平面を定義するための法線ベクトルnRiは下記のように求められる。
Figure 0006080407
参照画像視平面26と未知の点Xとの距離dは、原点 からXに向かうベクトルの、法線方向成分の大きさである。よって、視平面誤差項d´Rijは、下記のように表すことができる。
Figure 0006080407
自乗和で評価することとして、以下の項を評価関数に加える。
Figure 0006080407
誤差項を加えたあとは、ステップS302に戻り、追加の対応付けを終了するか否かの判断を行い、終了と判定されるまでステップS302〜S306の処理を繰り返す。処理を繰り返すたびに視線誤差項dLij と視平面誤差項d´ Rij が追加される。その結果、N回の繰り返しを行った場合の評価関数Fの誤差項部分Fsight(N)は、下記のようになる。
Figure 0006080407
ステップS302において終了と判定した後は、ステップS307〜S311において拘束条件の追加処理を行う。なお、前述の通り、3次元拘束条件の追加処理は、第1実施形態におけるステップS107〜S111と同様の処理であるため説明は省略する。本実施形態のように、視線誤差項の代わりに視平面誤差項を用いた場合でも、3次元拘束条件項として同じ計算式が適用できる。
次に、ステップS302〜S306において追加された視線誤差項及び視平面誤差項と、ステップS307〜S311の処理において追加された3次元拘束条件項と、を統合した評価関数Fを設定する(評価関数設定工程)。上述したように、評価関数Fは、Fsight(N)と、拘束条件項部分Fconst(M)と、の和の形で表される。即ち、
Figure 0006080407
で表される。
次に、評価関数Fを最少とすることで3次元座標Xij(i=1、2、・・・N、j=1、2)を求める(3次元座標計測工程)。つまり、評価関数Fに対して、
Figure 0006080407
となるような変数の組(x11、y11、z11、x12、y12、z12、・・・、xN1、yN1、zN1、xN2、yN2、zN2)を求める。この計算は、第1実施形態と同様に、公知の多変数最適化手法を用いて、変数の組を求めることができる。
以上説明したように、本実施形態に係る3次元位置の計測方法によれば、ワークのエッジ線を近似した線同士の位置関係について、既知の立体的な拘束条件を複数同時に反映した3次元形状計測を行うことができる。そのため、従来に比して高精度な3次元形状データを得ることができる。
また、本実施形態に係る3次元位置の計測方法によれば、3次元座標を計算する際に「エピポーラ拘束を用いて対応点を一意に求める」という処理を行う必要がなくなる。そのため、基準画像面22aから抽出した第1エッジ線に対して先に参照画像面23a上の対応点を求める必要がなくなる。これにより、カメラパラメータの誤差やエッジ線抽出の誤差等によってエピポーラ拘束自体が満たされていない場合は、対応点を求める方法を用いた場合は対応点が正確でなくなるが、本実施形態の方法を用いることで、この影響を軽減することができる。
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限定されるものではない。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施形態に記載されたものに限定されない。
例えば、本実施形態においては、説明を簡単化するために基準カメラと参照カメラの2つのカメラを用いて説明したが、本発明においてはこれに限定されない。例えば、カメラが3つ以上の場合においても、参照カメラに対する視平面誤差項を追加することにより、本発明の方法を適用可能である。また、ワークに対する視点が異なれば、同一のカメラを動かしながら複数回撮影した画像を用いることもできる。
また、例えば、本実施形態においては、評価関数を最少とすることで3次元座標を求めたが、本発明においてはこれに限定されない。例えば、評価関数を最大とすることで3次元座標を求めてもよい。
1、1A ロボット装置
2 ロボット
5、5A カメラ制御部(制御部)
10 ワーク
22 基準カメラ(第1カメラ)
22a 基準画像面(第1画像)
23 参照カメラ(第2カメラ)
23a 参照画像面(第2画像)

Claims (8)

  1. ワークを撮像して第1画像を取得する第1カメラと、
    前記第1カメラとは異なる視点でワークを撮像して第2画像を取得する第2カメラと、
    前記第1画像及び前記第2画像のそれぞれからワークの複数のエッジ線を抽出し、前記第1画像の複数のエッジ線の中から任意に選択された第1エッジ線の端部と、前記第1エッジ線に対応するように前記第2画像の複数のエッジ線から抽出された第2エッジ線の端部と、の仮の3次元座標に対する視線誤差を演算し、前記第1エッジ線の端点及び第2エッジ線の端点のそれぞれの視線誤差とワークの3次元形状に基づき、前記第1画像又は前記第2画像の複数のエッジ線の中の2本のエッジ線が、同一平面、同一直線、垂直及び平行、の各拘束条件の中からいずれか1つ以上を選択して設定された3次元拘束条件とから、評価関数を設定し、前記評価関数の値を最小又は最大にする最適化計算を行ってワークの3次元座標を決定する制御部と、を備えた、
    ことを特徴とする3次元計測装置。
  2. ワークを撮像して第1画像を取得する第1カメラと、
    前記第1カメラとは異なる視点でワークを撮像して第2画像を取得する第2カメラと、
    前記第1画像及び前記第2画像のそれぞれからワークの複数のエッジ線を抽出し、前記第1画像の複数のエッジ線の中から任意に選択された第1エッジ線の端部の仮の3次元座標に対する視線誤差を演算すると共に、前記第1エッジ線に対応するように前記第2画像の複数のエッジ線の中から抽出された第2エッジ線の前記仮の3次元座標に対する視平面誤差を演算し、前記第1エッジ線の端点の視線誤差、第2エッジ線の視平面誤差及びワークの形状に基づき、前記第1画像又は前記第2画像の複数のエッジ線の中の2本のエッジ線が、同一平面、同一直線、垂直及び平行、の各拘束条件の中からいずれか1つ以上を選択して設定された3次元拘束条件から評価関数を設定し、前記評価関数の値を最小又は最大にする最適化計算を行ってワークの3次元座標を決定する制御部と、を備えた、
    ことを特徴とする3次元計測装置。
  3. 前記3次元拘束条件として、前記第1画像又は前記第2画像の複数のエッジ線の中の2本のエッジ線が、同一平面、同一直線、垂直及び平行、の各拘束条件の中からいずれか1つ以上を設定する選択手段を備えた、
    ことを特徴とする請求項1又は2に記載の3次元計測装置。
  4. ワークを3次元計測する請求項1から3のいずれか1項に記載の3次元計測装置と、
    前記3次元計測装置により計測されたワークの3次元位置に基づいてワークを把持するロボットアームと、を備えた、
    ことを特徴とするロボット装置。
  5. 第1カメラでワークを撮像して取得した第1画像からワークの複数のエッジ線を抽出する第1画像エッジ線抽出工程と、
    第2カメラでワークを撮像して取得した第2画像からワークの複数のエッジ線を抽出する第2画像エッジ線抽出工程と、
    前記第1画像の前記複数のエッジ線の中から任意に選択した第1エッジ線に対応するように前記第2画像の前記複数のエッジ線の中から抽出された第2エッジ線の、前記第1エッジ線の端点に対応する端点を演算する対応点演算工程と、
    仮の3次元座標に対する、前記第1エッジ線の端点と、前記第2エッジ線の端点と、のそれぞれの視線誤差を演算する視線誤差演算工程と、
    前記第1エッジ線の端点と前記第2エッジ線の端点とのそれぞれに設定された前記視線誤差と、ワークの形状に基づき、前記第1画像又は前記第2画像の複数のエッジ線の中の2本のエッジ線が、同一平面、同一直線、垂直及び平行、の各拘束条件の中からいずれか1つ以上を選択して設定された3次元拘束条件とから評価関数を設定する評価関数設定工程と、
    前記評価関数を最小又は最大にする最適化計算を行ってワークの3次元座標を決定する3次元座標計測工程と、備えた、
    ことを特徴とする3次元計測方法。
  6. 第1カメラでワークを撮像して取得した第1画像からワークの複数のエッジ線を抽出する第1画像エッジ線抽出工程と、
    第2カメラでワークを撮像して取得した第2画像からワークの複数のエッジ線を抽出する第2画像エッジ線抽出工程と、
    前記第1画像の前記複数のエッジ線の中から任意に選択された第1エッジ線の端部の、仮の3次元座標に対する視線誤差と、前記第1エッジ線に対応するように前記第2画像の前記複数のエッジ線の中から抽出された第2エッジ線の、前記仮の3次元座標に対する視平面誤差と、を演算する誤差演算工程と、
    前記第1エッジ線の端点の視線誤差、前記第2エッジ線の視平面誤差、及びワークの3次元形状に基づき、前記第1画像又は前記第2画像の複数のエッジ線の中の2本のエッジ線が、同一平面、同一直線、垂直及び平行、の各拘束条件の中からいずれか1つ以上を選択して設定された3次元拘束条件と、から評価関数を設定する評価関数設定工程と、
    前記評価関数の値を最小又は最大にする最適化計算を行ってワークの3次元座標を決定する3次元座標計算工程と、備えた、
    ことを特徴とする3次元計測方法。
  7. 請求項5又は6に記載の各工程をコンピュータに実行させるための3次元計測プログラム。
  8. 請求項7に記載の3次元計測プログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2012149596A 2012-07-03 2012-07-03 3次元計測装置及びロボット装置 Active JP6080407B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2012149596A JP6080407B2 (ja) 2012-07-03 2012-07-03 3次元計測装置及びロボット装置
US13/927,269 US9715730B2 (en) 2012-07-03 2013-06-26 Three-dimensional measurement apparatus and robot system
EP13174626.5A EP2682710B1 (en) 2012-07-03 2013-07-02 Apparatus and method for three-dimensional measurement and robot system comprising said apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012149596A JP6080407B2 (ja) 2012-07-03 2012-07-03 3次元計測装置及びロボット装置

Publications (3)

Publication Number Publication Date
JP2014013147A JP2014013147A (ja) 2014-01-23
JP2014013147A5 JP2014013147A5 (ja) 2015-08-20
JP6080407B2 true JP6080407B2 (ja) 2017-02-15

Family

ID=48699660

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012149596A Active JP6080407B2 (ja) 2012-07-03 2012-07-03 3次元計測装置及びロボット装置

Country Status (3)

Country Link
US (1) US9715730B2 (ja)
EP (1) EP2682710B1 (ja)
JP (1) JP6080407B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019110598A1 (de) 2018-06-01 2019-12-05 Shinmei Industry Co., Ltd. Achsgeometrie-einstellsystem

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9879976B2 (en) 2010-01-20 2018-01-30 Faro Technologies, Inc. Articulated arm coordinate measurement machine that uses a 2D camera to determine 3D coordinates of smoothly continuous edge features
US9628775B2 (en) 2010-01-20 2017-04-18 Faro Technologies, Inc. Articulated arm coordinate measurement machine having a 2D camera and method of obtaining 3D representations
US9607239B2 (en) 2010-01-20 2017-03-28 Faro Technologies, Inc. Articulated arm coordinate measurement machine having a 2D camera and method of obtaining 3D representations
EP2982625B1 (en) * 2014-08-08 2019-01-02 Sanovo Technology Italia S.R.L. Depalletiser for trays of eggs
DE112015004196T5 (de) * 2014-09-15 2017-06-08 Faro Technologies, Inc. Gelenkarm-koordinatenmessgerät mit einer 2d-kamera und verfahren zum erhalten von 3d-darstellungen
JP6547754B2 (ja) 2014-09-18 2019-07-24 日本電気株式会社 三角測量装置、三角測量方法およびそのプログラム
JP5987073B2 (ja) * 2015-02-12 2016-09-06 ファナック株式会社 撮像部を用いたワークの位置決め装置
BR112019000728B1 (pt) 2016-07-15 2023-03-28 Fastbrick Ip Pty Ltd Veículo que incorpora máquina de assentamento de tijolos
EP3485109B1 (en) 2016-07-15 2021-09-29 Fastbrick IP Pty Ltd Boom for material transport
AU2018295572B2 (en) 2017-07-05 2022-09-29 Fastbrick Ip Pty Ltd Real time position and orientation tracker
WO2019033170A1 (en) 2017-08-17 2019-02-21 Fastbrick Ip Pty Ltd LASER TRACKING DEVICE WITH ENHANCED ROLL ANGLE MEASUREMENT
AU2018348785A1 (en) 2017-10-11 2020-05-07 Fastbrick Ip Pty Ltd Machine for conveying objects and multi-bay carousel for use therewith
CN109493378B (zh) * 2018-10-29 2021-05-28 宁波研新工业科技有限公司 一种基于单目视觉与双目视觉相结合的垂直度检测方法
WO2021133183A1 (ru) * 2019-12-23 2021-07-01 федеральное государственное автономное образовательное учреждение высшего образования "Московский физико-технический институт (национальный исследовательский университет)" Способ управления роботизированным манипулятором

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100356016B1 (ko) 1999-12-21 2002-10-18 한국전자통신연구원 영상인식에 의한 소포우편물 부피계측시스템 및부피계측방법
JP3870255B2 (ja) 2002-02-25 2007-01-17 独立行政法人産業技術総合研究所 3次元復元方法及び装置
JP2006003157A (ja) * 2004-06-16 2006-01-05 Nippon Telegr & Teleph Corp <Ntt> 位置検出システム
WO2006121088A1 (ja) 2005-05-10 2006-11-16 Olympus Corporation 画像処理装置、画像処理方法および画像処理プログラム
JP4599515B2 (ja) * 2005-05-27 2010-12-15 コニカミノルタセンシング株式会社 3次元形状データの位置合わせ方法および装置
JP2010117223A (ja) * 2008-11-12 2010-05-27 Fanuc Ltd ロボットに取付けられたカメラを用いた三次元位置計測装置
JP2010121999A (ja) * 2008-11-18 2010-06-03 Omron Corp 3次元モデルの作成方法および物体認識装置
JP5713624B2 (ja) * 2009-11-12 2015-05-07 キヤノン株式会社 三次元計測方法
JP2011185650A (ja) * 2010-03-05 2011-09-22 Omron Corp モデル作成装置およびモデル作成プログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102019110598A1 (de) 2018-06-01 2019-12-05 Shinmei Industry Co., Ltd. Achsgeometrie-einstellsystem
US11077529B2 (en) 2018-06-01 2021-08-03 Toyota Jidosha Kabushiki Kaisha Wheel alignment adjustment system

Also Published As

Publication number Publication date
US20140009582A1 (en) 2014-01-09
JP2014013147A (ja) 2014-01-23
US9715730B2 (en) 2017-07-25
EP2682710B1 (en) 2016-02-03
EP2682710A1 (en) 2014-01-08

Similar Documents

Publication Publication Date Title
JP6080407B2 (ja) 3次元計測装置及びロボット装置
JP5378374B2 (ja) リアルオブジェクトに対するカメラの位置および方向を把握する方法およびシステム
CN106873550B (zh) 模拟装置以及模拟方法
JP5257335B2 (ja) 3次元視覚センサにおける計測有効領域の表示方法および3次元視覚センサ
JP4492654B2 (ja) 3次元計測方法および3次元計測装置
JP5310130B2 (ja) 3次元視覚センサによる認識結果の表示方法および3次元視覚センサ
US9679385B2 (en) Three-dimensional measurement apparatus and robot system
US9529945B2 (en) Robot simulation system which simulates takeout process of workpieces
JP5911934B2 (ja) 輪郭線計測装置およびロボットシステム
US9199379B2 (en) Robot system display device
JP6324025B2 (ja) 情報処理装置、情報処理方法
JP5815761B2 (ja) 視覚センサのデータ作成システム及び検出シミュレーションシステム
JP6594129B2 (ja) 情報処理装置、情報処理方法、プログラム
US20120268567A1 (en) Three-dimensional measurement apparatus, processing method, and non-transitory computer-readable storage medium
JP7102115B2 (ja) 校正方法、校正装置、3次元測定機、3次元視覚測定装置、ロボットのエンドエフェクタ、プログラム、記録媒体
KR20200100102A (ko) 증강 현실 디바이스를 교정하기 위한 방법
JP2014013147A5 (ja)
JP2015031601A (ja) 3次元計測装置及び方法並びにプログラム
US20180374265A1 (en) Mixed reality simulation device and computer readable medium
KR101972432B1 (ko) 레이저비전 센서 및 그 보정방법
WO2021210540A1 (ja) 座標系設定システム及び位置姿勢計測システム
TW202305749A (zh) 模擬裝置
JP2015215191A (ja) 位置姿勢計測装置、方法及びプログラム
EP2875469A2 (en) System and method for processing stereoscopic vehicle information

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150702

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150702

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160520

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160531

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160729

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170117

R151 Written notification of patent or utility model registration

Ref document number: 6080407

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151