(57)【特許請求の範囲】
【請求項１】
演算装置が、第１及び第２カメラによってワークを撮像したステレオ画像を取得する工程と、
前記演算装置が、この取得したステレオ画像からエッジを抽出する工程と、
前記演算装置が、前記ステレオ画像上にて抽出されたエッジの中から、前記ワークにて同一平面上に位置するエッジを選択する工程と、
前記演算装置が、前記同一平面上に位置するエッジの内、エピポーラ線と交差する交差角度が９０°を基準として所定の角度範囲内にある第１エッジを、少なくとも２本以上、ステレオ法によって３次元復元する工程と、
前記演算装置が、前記３次元復元した少なくとも２本以上の第１エッジを用いて、これら３次元復元された第１エッジを含む３次元平面を算出する工程と、
前記演算装置が、前記第１エッジと同一平面にあるエッジの内、エピポーラ線と交差する交差角度が９０°を基準として所定の角度範囲外にある第２エッジを、前記３次元平面に投影することによって３次元復元する工程と、を備えた、
ことを特徴とする３次元計測方法。
【請求項２】
前記演算装置は、前記同一平面上に位置するエッジを、テンプレート画像を用いたパターンマッチングを前記ステレオ画像に施すことによって選択する、
請求項１記載の３次元計測方法。
【請求項３】
請求項１又は２記載の各工程をコンピュータに実行させるための３次元計測プログラム。
【請求項４】
ワークを撮像する第１及び第２カメラと、
前記ワークに対して作業を行うロボットアームと、
前記第１及び第２カメラによって前記ワークが撮像されたステレオ画像から前記ワークの３次元位置を認識し、前記ロボットアームに対して駆動指令を与える演算装置と、を備え、
前記演算装置は、取得した前記ステレオ画像からエッジを抽出し、この抽出されたエッジから前記ワークにて同一平面上に位置するエッジを選択すると共に、これら同一平面上に位置するエッジの内、エピポーラ線と交差する交差角度が９０°を基準として所定の角度範囲内にある第１エッジについては、少なくとも２本以上をステレオ法によって３次元復元し、エピポーラ線と交差する交差角度が９０°を基準として所定の角度範囲外にある第２エッジについては、前記３次元復元した第１エッジを含む３次元平面に投影することにより３次元復元し、これら３次元復元された第１及び第２エッジを用いて前記ワークの３次元位置を認識する、
ことを特徴とするロボット装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像した画像に基づくワークの３次元計測に関する。
【背景技術】
【０００２】
一般に、カメラによって測定対象（以下、単にワークという）を撮影し、この撮影した画像からワークの３次元上の点の座標を求める方法として、ステレオ法と呼ばれる方法が広く知られている。このステレオ法は、カメラの視差を利用して３次元位置を計測する方法であり、まず、視点の異なる２つのカメラで撮像された画像間で３次元位置を計測したい点の対応点を求める。そして、これら各画像上の対応点及び既知である各カメラの位置関係から３角測量の原理によって３次元位置を算出する方法である。
【０００３】
上記ステレオ法は、製品検査や、工業用ロボットがワークを認識するためなどに使用される３次元計測技術にて広く用いられており、例えば、ワークの直線状のエッジ部（直線部）の３次元上の直線の式を算出する際などに使用される。
【０００４】
即ち、ワークの設計データが既知の場合、ワークの直線状のエッジ部の３次元上の直線の式を２箇所以上算出してワークの姿勢が決まると、原則として設計データなどからワークの３次元位置も求めることができる。そして、この直線部の３次元上の直線の式は、一般に、直線部上の２箇所以上の点の３次元位置を用いて算出されており、上記ステレオ法は、この直線部上の点の位置を算出する際に用いられている。
【０００５】
しかしながら、直線上の１点は、点状の物体の３次元位置を求める場合と異なり、一方のカメラによって撮影された画像の直線部上の１点が、他方のカメラによって撮影された画像の直線部上において、どの点と対応するのかを特定することが困難である。
【０００６】
そこで、各画像面における直線部の対応点を検出するのに、エピポーラ線と呼ばれる仮想の基準線を用いることが知られている。このエピポーラ線とは、一方のカメラが物体（例えば、ワークの直線部上の１点）を見ている際の視線を、他方のカメラで撮像した画像上に投影したものであり、このエピポーラ線上に、求める対応点があると言える。そのため、一方の画像上における直線部上の１点の他方の画像上における対応点を特定したい場合、他方の画像上にエピポーラ線を引き、このエピポーラ線と、他方の画像の直線部との交点を対応点とすることができる。
【０００７】
ところが、上記エピポーラ線は、２つのカメラの視点とワーク上の点を含む平面（エピポーラ面）がそれぞれの画像面と交わった直線として画像面に投影されるため、２つのカメラの位置関係によって傾きが一義的に決まってしまう。そのため、このエピポーラ線と傾きが平行な直線部については、エピポーラ線と直線部とが重なって、対応点を特定することが出来ない。
【０００８】
また、画像上において上記エピポーラ線と直線部との交差角度が平行に近い場合には、画像上の直線部を検出した際の誤差に対する対応点の検出誤差の影響が大きくなって、測定精度、特に奥行き方向の測定精度が低くなる虞がある。
【０００９】
そこで、従来、上記エピポーラ線に対する交差角度が直角に近い直線部を抽出するオペレータを使用して、エピポーラ線に対して十分な相対角度を有する直線部のみを抽出することが案出されている（特許文献１参照）。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開平５−５６０９号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
このようにエピポーラ線に対する交差角度が直角に近い直線部のみ抽出すると、画像間の対応点を求めることができる。そのため、図１０（ａ）に示すように、実際のワークの辺（直線部）Ｌの端点から端点まで正確にエッジを抽出できている場合、同様のエッジを２本以上抽出できることを条件として正確にワークを３次元復元することができる。
【００１２】
しかしながら実際には、図１０（ｂ）に示すように、画像のコントラストの問題や、ワークの角部が曲線であるなどのワーク形状上の問題などにより、直線部Ｓの端点まで厳密に撮像画像からエッジを抽出することが困難なことがある。
【００１３】
この場合、ワークの３次元上の位置を計測するには、例えば、エピポーラ線に対して交差角が平行に近い直線部の３次元上の直線の式と、エピポーラ線に対して交差角が直角に近い直線部の３次元上の直線の式との交点を求めて上記端点を算出する必要がある。
【００１４】
そこで、本発明は、エピポーラ線に対して交差角度が平行に近いエッジを３次元復元可能な３次元計測方法、３次元計測プログラム及びロボット装置を提供することを目的とする。
【課題を解決するための手段】
【００１５】
本発明に係る３次元形状計測方法は、演算装置が、第１及び第２カメラによってワークを撮像したステレオ画像を取得する工程と、前記演算装置が、この取得したステレオ画像からエッジを抽出する工程と、前記演算装置が、前記ステレオ画像上にて抽出されたエッジの中から、前記ワークにて同一平面上に位置するエッジを選択する工程と、前記演算装置が、前記同一平面上に位置するエッジの内、エピポーラ線と交差する交差角度が９０°を基準として所定の角度範囲内にある第１エッジを、少なくとも２本以上、ステレオ法によって３次元復元する工程と、前記演算装置が、前記３次元復元した少なくとも２本以上の第１エッジを用いて、これら３次元復元された第１エッジを含む３次元平面を算出する工程と、前記演算装置が、前記第１エッジと同一平面にあるエッジの内、エピポーラ線と交差する交差角度が９０°を基準として所定の角度範囲外にある第２エッジを、前記３次元平面に投影することによって３次元復元する工程と、を備えた、ことを特徴とする。
【００１６】
本発明に係るロボット装置は、ワークを撮像する第１及び第２カメラと、前記ワークに対して作業を行うロボットアームと、前記第１及び第２カメラによって前記ワークが撮像されたステレオ画像から前記ワークの３次元位置を認識し、前記ロボットアームに対して駆動指令を与える演算装置と、を備え、前記演算装置は、取得した前記ステレオ画像からエッジを抽出し、この抽出されたエッジから前記ワークにて同一平面上に位置するエッジを選択すると共に、これら同一平面上に位置するエッジの内、エピポーラ線と交差する交差角度が９０°を基準として所定の角度範囲内にある第１エッジについては、少なくとも２本以上をステレオ法によって３次元復元し、エピポーラ線と交差する交差角度が９０°を基準として所定の角度範囲外にある第２エッジについては、前記３次元復元した第１エッジを含む３次元平面に投影することにより３次元復元し、これら３次元復元された第１及び第２エッジを用いて前記ワークの３次元位置を認識する、ことを特徴とする。
【発明の効果】
【００１７】
本発明によると、同一平面上に存在し、エピポーラ線と交差する交差角度が９０°を基準として所定の角度範囲内にある第１エッジを少なくとも２本以上、ステレオ法によって３次元復元する。そして、これら３次元復元された第１エッジを含む３次元平面を求める。上記３次元復元された第１エッジと同一平面上にあるエッジの場合、エピポーラ線に平行に近い場合であっても、求めた３次元平面に投影することで、高精度に３次元復元することができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施の形態に係るロボット装置を示す模式図。
【図２】図１のロボット装置のカメラとロボットコントローラとの関係を示す模式図。
【図３】図１のロボットコントローラの構成を示す模式図。
【図４】本発明の実施の形態に係る３次元計測方法を示すフローチャート図。
【図５】（ａ）カメラによってワークを撮像した画像、（ｂ）図４（ａ）の画像にエッジ抽出処理を施した後の画像。
【図６】パターンマッチングの方法を示す模式図であって、（ａ）はテンプレート画像を示す模式図、（ｂ）は探索工程を示す模式図、（ｃ）は同一平面上のエッジを選択方法を示す模式図。
【図７】エッジとエピポーラ線との交差角度の関係を示す図。
【図８】拘束平面の作成方法を示す模式図。
【図９】エピポーラ線と平行に近いエッジの３次元復元方法を示す模式図。
【図１０】３次元上のワークとこのワークの画像から抽出されるエッジとの関係を示す図であって、（ａ）はワークの辺の端点までエッジを抽出可能な場合、（ｂ）はワークの辺の端点までエッジを抽出可能な場合。
【発明を実施するための形態】
【００１９】
以下、本発明の実施の形態に係るワークの３次元計測について説明をする。なお、以下の説明において、エッジとは、撮像された画像においてコントラストの変化が急峻な部分をいう。また、３次元復元とは２次元画像から対象物の３次元位置を復元することをいう。更に、以下の図面において、三次元の座標系は、左カメラの光学中心Ｏ１を原点とし、原点から右カメラの光学中心Ｏ２へ向かう方向をＸ軸、原点Ｏ１から左画像への垂線方向をＺ軸、Ｘ及びＺ軸に垂直な方向をＹ軸とする。
【００２０】
［ロボット装置の構成］
図１に示すように、本実施の形態に係るロボット装置１は、複数のロボット装置と組み合わされて一連の生産ラインを構築する、いわゆるロボットセルと呼ばれる組立ロボットである。このロボット装置１は、フレーム状のブース７の内部にワークＷに対して組立などの作業を行うロボットアーム２が配設されて構成されており、このブース７の上部にはロボットアーム２の上方からワークを撮像するためのカメラ３及び照明５が取り付けられている。
【００２１】
また、上記ロボットアーム２を支持する架台６の内側には、このカメラ３によって撮像された画像からワークＷの３次元位置を認識し、上記ロボットアーム２に対して駆動指令を与えるロボットコントローラ（制御装置）１０が設けられている。ロボット装置１は、これらロボットアーム２、カメラ３及びロボットコントローラ１０を基本構成としており、カメラ３により撮像された画像を基にワークＷを認識し、ロボットアーム２によってワークＷを把持して組立などの作業を行うようになっている。
【００２２】
このように上記ロボット装置１は、カメラ３及びロボットコントローラ１０によって、ワークＷの３次元位置を認識する３次元計測装置４を構成しており、図２はこの３次元計測装置４を模式的に表した図である。図２に示すように、上記カメラ３は、カメラパラメータが校正された第１及び第２カメラ３ａ，３ｂからなるステレオカメラによって構成されており、上述したステレオ法を用いてワークＷの３次元位置を認識している。
【００２３】
上記ロボットコントローラ１０は、図３に示すように、演算装置１０２及び記憶装置１０３を有するコンピュータ本体に、ロボットアーム２及びカメラ３が接続されて構成されている。演算装置１０２は、第１及び第２カメラ３ａ，３ｂによってワークＷが撮像されたステレオ画像からワークＷの３次元位置を認識し、ロボットアーム２に対して駆動指令を与える。また、コンピュータ本体には、作業者が入力作業を行うためのティーチングペンダント１１６及び入力装置１０６や、表示装置１０７なども接続されている。
【００２４】
上記記憶装置１０３には、第１及び第２ワークＷ１，Ｗ２の設計データや、ロボットアーム２及びカメラ３の制御ドライバなどが格納されている。また、その他にも記憶装置１０３には、カメラ３が撮像した画像に基づいて対象の３次元位置を求める演算をコンピュータ（演算装置１０２）に実行させる３次元計測プログラムＣＰＲ、パターンマッチング用のテンプレート画像ＧＴなどが格納されている。
【００２５】
より詳しくは、コンピュータ本体は、ＣＰＵ１０２ａを主体として、画像処理装置１０２ｂ、音声処理装置１０２ｃを有して上記演算装置１０２を構成している。このＣＰＵ１０２ａには、上記画像処理装置１０２ｂ、音声処理装置１０２ｃの他に、ＲＯＭ１０３ａ及びＲＡＭ１０３ｂがバス１１１を介して接続されている。ＲＯＭ１０３ａには、ロボットの基本制御に必要なプログラムが格納されていると共に、上述した３次元計測プログラムＣＰＲなどの各種プログラムやデータが格納されている。ＲＡＭ１０３ｂには、ＣＰＵ１０２ａに対する作業領域が確保される。画像処理装置１０２ｂはＣＰＵ１０２ａからの描画指示に応じて表示装置１０７としてのディスプレイを制御して、その画面上の所定の画像を表示させる。音声処理装置１０２ｃはＣＰＵ１０２ａからの発音指示に応じた音声信号生成してスピーカ１０９に出力する。
【００２６】
また、バス１１１には、ロボットアーム２、カメラ３が接続されていると共に、記録ディスク読取装置１１５が接続されている。そのため、３次元計測プログラムＣＰＲは、例えば記録ディスクやＵＳＢメモリなどの記録媒体Ｄに記録され、ロボットコントローラ１０は、この記録媒体Ｄを読み込んで例えばＲＯＭ１０３ａに格納できるようになっている。なお、上述した記憶装置１０３は、主記憶装置であるＲＯＭ１０３ａ及びＲＡＭ１０３ｂの他に、コンピュータ読取可能な記録媒体やその他の外部記憶装置を備えて構成されている。
【００２７】
更に、バス１１１には通信装置１１２が接続されている。従って、上述したような記録媒体Ｄを使用せずに、通信装置１１２を介してインターネット等から配信される３次元計測プログラムＣＰＲをダウンロード可能に構成されている。
【００２８】
［３次元形状計測方法］
ついで、上記３次元計測プログラムを用いたワークの３次元計測方法について説明をする。なお、以下の説明において、第１及び第２カメラ３ａ，３ｂが撮像した画像を入力画像もしくはステレオ画像ＧＥと呼び、エッジの抽出処理後のステレオ画像についてはＧＥ１と示す。また、このステレオ画像ＧＥを区別する必要がある場合には、それぞれＧＥＬ，ＧＥＲのようにＬＲの記号を付して区別する。
【００２９】
図４に示すように、ロボット装置１は、ワークＷに対して作業を行うに際し（図４のステップＳ１）、まず、第１及び第２カメラ３ａ，３ｂにより計測対象であるワークＷを撮像して２枚の入力画像（ステレオ画像）ＧＥを取得する（Ｓ２、取得工程）。
【００３０】
上記ステレオ画像ＧＥが入力されるとロボットコントローラ６の演算装置１０２は、入力されたステレオ画像ＧＥに対して、エッジの抽出処理を行う（Ｓ３、エッジ抽出工程）。即ち、図５（ａ）に示すようなステレオ画像ＧＥにＳｏｂｅｌフィルタや、Ｐｒｅｗｉｔｔフィルタなどのエッジ検出フィルタを用いたフィルタ処理を施し、エッジｅ１〜ｅ９を検出し、ワークＷの輪郭を抽出する（図５（ｂ）参照）。
【００３１】
上記エッジｅ１〜ｅ９を抽出すると演算装置１０２は、これら検出された複数のエッジｅ１〜ｅ９の中からワークＷにて同一平面上に存在するエッジを選択する（Ｓ４〜Ｓ６、同一平面エッジ選択工程）。
【００３２】
具体的には、ロボットコントローラ６は、記憶部１０３に予め基準画像として記憶されたワークＷのテンプレート画像ＧＴ（図６（ａ）参照）を読み出し、このテンプレート画像ＧＴを用いてステレオ画像ＧＥに対してパターンマッチングを行う（Ｓ４）。
【００３３】
パターンマッチングは、図６（ｂ）に示すようにステレオ画像ＧＥに対して、テンプレート画像と類似する位置を探索する手法であり、例えば、画像内の輝度値を基にテンプレート画像ＧＥ上のワークＷの位置を探索する。
【００３４】
なお、パターンマッチングの一般的な手法である正規化相関法を示す式を以下に示す。ここで、相関値とは、テンプレート画像ＧＴと入力画像ＧＥの類似度を言う。
【００３５】
【数１】
0005858773.tif 000002
【００３６】
より詳しくは、図６（ｂ）に示すようにテンプレート画像ＧＴをステレオ画像内においてピクセル単位で範囲をずらしながら、ステレオ画像ＧＥからテンプレート画像ＧＴに対応する大きさの画像を抽出する。
【００３７】
そして、抽出した画像とテンプレート画像との相関値Ｒを上記式１により求め、ステレオ画像内から計測対象物体の存在する位置（ｘ、ｙ）を探索する。なお、上記式１における「画像内の位置(ｉ，ｊ)」とは、ステレオ画像ＧＥからテンプレート画像ＧＴに対応する大きさの画像を抽出した画像内とテンプレート画像内の位置のことを表す。
【００３８】
ところで、記憶部１０３には、テンプレート画像ＧＴを登録する際に、ワーク上にて同一平面となる各エッジが存在する領域（エッジ位置領域）を、例えば図６の点線で示される矩形領域Ｔのような形で記憶している。
【００３９】
そのため、入力画像ＧＥ内からワークＷが存在する位置（ｘ、ｙ）が見つかると、このパターンマッチング結果と上記エッジ位置領域Ｔとにより、ステレオ画像上のどの位置に同一平面となるエッジが存在するかを推定する（Ｓ５）。
【００４０】
そして、上記同一平面となるエッジが存在する領域を推定すると、図６（ｃ）に示すようにこのエッジ位置領域Ｒを上記エッジｅ１〜ｅ９の抽出処理後のステレオ画像（エッジ画像）ＧＥ１に適用する。そして、エッジ位置領域内に存在するエッジｅ１〜ｅ４を同一平面上に存在するエッジとして選択する（Ｓ６）。
【００４１】
同一平面上に存在するエッジｅ１〜ｅ４が選択されると、演算装置１０２は、これら選択されたエッジｅ１〜ｅ４のそれぞれが、エピポーラ線ＥＰと交差する交差角度θ１〜θ４を検出する（Ｓ７、交差角度検出工程）。
【００４２】
具体的には、図７に示すように、ステレオ画像の少なくともいずれか一方の画像、より好ましくは左右のステレオ画像の両方について、エピポーラ線ＥＰとの交差角度θを測定する。
【００４３】
エピポーラ線ＥＰとの交差角度θ１〜θ４が検出されると、演算装置１０２は、これら検出された交差角度θ１〜θ４に基づいて、選択されたエッジを第１エッジｅ２，ｅ４と第２エッジｅ１，ｅ３に分類する（Ｓ８，分類工程）。
【００４４】
上記第１エッジｅ２，ｅ４は、同一平面上に位置するエッジの内、エピポーラ線ＥＰと交差する交差角度が９０°を基準として所定の角度範囲内にあるエッジであり、ステレオ法によって精度良く３次元復元可能なエッジのことである。
【００４５】
一方、第２エッジｅ１，ｅ３は、第１エッジｅ２，ｅ４と同一平面にあるエッジの内、エピポーラ線と交差する交差角度が９０°を基準として所定の角度範囲外にあるエッジであり、エピポーラ線ＥＰに対して平行に近いエッジのことである。これはステレオ法によって精度良く３次元復元できないエッジとも言える。
【００４６】
なお、上記交差角度の範囲は、エッジ抽出精度に基づいて決定されるが、本実施の形態の場合、交差角度９０°を中心に前後に４５°の範囲（４５°〜１３５°の範囲）が第１エッジとするのが望ましい。また、第２エッジを第１エッジ以外の範囲（０≦θ＜４４，１３５＜θ≦１８０）とするのが望ましい。
【００４７】
また、上記角度範囲を、エピポーラ線ＥＰとエッジｅ１〜ｅ４とがなす角度の内、角度の小さい方の角度と定義すると、交差角度が４５°以上のエッジを第１エッジとし、４５°未満のエッジを第２エッジとすることが望ましいとも言える。ただし、第１のエッジとして交差角度が４５°以上のエッジを取れない場合や、エッジの抽出精度が高い場合等は４５°に限らず、例えば交差角度が２０°以上のエッジを第１エッジとし、２０°未満のエッジを第２エッジとしてもよい。
【００４８】
上記エッジの分類が終わると、第１エッジｅ２，ｅ４についてはステレオ法を用いて精度よく３次元復元できるため、演算装置１０２は、少なくとも２本以上の第１エッジを３次元復元する（Ｓ９、第１エッジ３次元復元工程）。
【００４９】
具体的には、図７の左画像ＧＥ１Ｌにおいて、各エッジｅ２，ｅ４それぞれについて任意の２点を選択し、この選択した２点の右画像上における対応点をエピポーラ線ＥＰを用いて特定する。
【００５０】
そして、この選択した２点の３次元上の位置を、右画像ＧＥ１Ｒと左画像ＧＥ１Ｌの視差を利用して求め、この求めた２点から各エッジの３次元上の直線の式を導出することによって、エッジを３次元上に復元する。
【００５１】
一方、第２エッジｅ１，ｅ３については、ステレオ法により３次元復元できない。そのため演算装置は、この第２エッジｅ１，ｅ３を３次元復元するために、３次元復元した少なくとも２本以上の第１エッジｅ２，ｅ４を用いてこれら３次元復元された第１エッジを含む３次元平面（以下、拘束平面という）を算出する（Ｓ１０，拘束平面算出工程）。
【００５２】
ここで、３次元上の平面の式は、求めたい平面の法線ベクトルと平面上の１点を求めることができれば算出することができる。そのため、演算装置１０２は、図８に示すように、まず、三次元復元した第１エッジの１本から任意の２点、他の１本から任意の１点を取り出す。
【００５３】
この時、それぞれの点の座標を（ｘ１，ｙ１，ｚ１）、（ｘ２，ｙ２，ｚ２）、（ｘ３，ｙ３，ｚ３）とすると、図８の方向ベクトルＶ１（ｘ４，ｙ４，ｚ４）、Ｖ２（ｘ５，ｙ５，ｚ５）は、以下の式２、式３で求められる。
【００５４】
【数２】
0005858773.tif 000003
【００５５】
【数３】
0005858773.tif 000004
【００５６】
また、上記方向ベクトルＶ１（ｘ４，ｙ４，ｚ４）、Ｖ２（ｘ５，ｙ５，ｚ５）より拘束平面の法線ベクトル(ａ，ｂ，ｃ)が式４で表される。
【００５７】
【数４】
0005858773.tif 000005
【００５８】
そして、上記法線ベクトル(ａ，ｂ，ｃ)及び三次元復元したエッジの任意の一点の座標（ｘ３，ｙ３，ｚ３）により拘束平面Ｐ１は式５によって求める。
【００５９】
【数５】
0005858773.tif 000006
【００６０】
上記拘束平面Ｐ１を求めると、演算装置１０２は、この拘束平面Ｐ１に第２エッジｅ１，ｅ３を投影することによって３次元復元する（Ｓ１１，Ｓ１２、第２エッジ３次元復元工程）。具体的には、演算装置１０２は、図９に示すように、左カメラの光学中心Ｏ１と左画像上の選択した第２エッジｅ３Ｌの端点である２点を含むエッジ視平面Ｐ２を作る（Ｓ１１）。
【００６１】
即ち、画像上のエッジ点を（Ｘｃ１，Ｙｃ１，Ｚｃ１）、（Ｘｃ２，Ｙｃ２，Ｚｃ２）とするとエッジ視平面Ｐ２の法線ベクトル（ｉ，ｊ，ｋ）は、式６によって表される。
【００６２】
【数６】
0005858773.tif 000007
【００６３】
ここで、エッジ視平面Ｐ２は座標原点(光学中心)(０，０，０)を定点とするため、法線ベクトル（ｉ，ｊ，ｋ）よりエッジ視平面は式７で表すことができる。
【００６４】
【数７】
0005858773.tif 000008
【００６５】
上記第２エッジｅ１，ｅ３は、エッジ視平面上の３次元位置に存在する。また、第２エッジは、第１エッジｅ１，ｅ３と同一平面上に存在するため、上記拘束平面上の３次元位置に存在するとも言える。
【００６６】
そのため、演算装置１０２は、エッジ視平面Ｐ２と拘束平面Ｐ１との交線Ｅ３を算出し、その交線Ｅ３を上記第２エッジの三次元位置とする（Ｓ１２）。
【００６７】
即ち、エッジ視平面Ｐ２及び拘束平面Ｐ１の交線Ｅ３の方向ベクトル（Ｘｅ，Ｙｅ，Ｚｅ）は、上記拘束平面Ｐ１の法線ベクトル（ａ，ｂ，ｃ）とエッジ視平面Ｐ２の法線ベクトル（ｉ，ｊ，ｋ）との外積によって表せられ、数８によって表すことができる。
【００６８】
【数８】
0005858773.tif 000009
【００６９】
また、交線Ｅ３が通る任意の定点（Ｘｐ，Ｙｐ，Ｚｐ）は、拘束平面Ｐ１の式及びエッジ視平面Ｐ２の式のいずれも満たす点であるため、演算装置１０２はこの定点（Ｘｐ，Ｙｐ，Ｚｐ）を、上記式５と式７との連立方程式の解を求めることによって算出する。
【００７０】
上記式５と式７との連立方程式は、Ｚｅ＝０でなければＺ＝０としてｘ，ｙを求めることができ、つまり、拘束平面の式、エッジ視平面の式、Ｚ＝０により定点（Ｘｐ，Ｙｐ，Ｚｐ）を、式９によって表すことができる。
【００７１】
【数９】
0005858773.tif 000010
【００７２】
これにより、上記方向ベクトル（Ｘｅ，Ｙｅ，Ｚｅ）及び定点（Ｘｐ，Ｙｐ，Ｚｐ）により、交線Ｅ３は、式１０によって表すことができる。そして、演算装置１０２は式１０を求め、第２エッジｅ３の三次元位置とする（Ｓ１２）。
【００７３】
【数１０】
0005858773.tif 000011
【００７４】
演算装置１０２は、上記第１エッジ及び第２エッジの３次元復元をすると、これら３次元復元された第１及び第２エッジＥ２，Ｅ４，Ｅ３を用いてワークＷの３次元位置を認識する（Ｓ１３）。
【００７５】
具体的には、まず、３次元復元された第２エッジＥ３（第２エッジの３次元上の直線の式）、３次元復元された第１エッジＥ２，Ｅ４（第１エッジの３次元上の直線の式）との交点を求める。そして、この求めた交点と、３次元復元された第１エッジＥ２，Ｅ４の１点と、３次元復元された第２エッジＥ３の１点と、の３点によりワークの角部を起点とした位置姿勢を表現する。
【００７６】
このように、ステレオ復元精度の良い、エピポーラ線ＥＰに対して交差角度の大きい第１エッジｅ２，ｅ４で拘束平面Ｐ１を作成する。そして、この拘束平面Ｐ１に同一平面上にあるエピポーラ線ＥＰに対して角度の小さい第２エッジｅ１，ｅ３を投影することにより、エピポーラ線に対して角度の小さい第２エッジｅ１，ｅ３に関しても精度良く三次元復元が可能となる。
【００７７】
また、テンプレート画像ＧＴと共にエッジ位置領域Ｔを記憶し、パターンマッチングを用いて同一平面上のエッジを選択するため、素早くかつ高精度に同一平面上のエッジを特定することができる。
【００７８】
なお、本実施の形態においては、直線上のエッジのみを選択したが、必ずしも直線上のエッジである必要はない。また、３台以上のカメラによってワークを撮像し、これら撮像した複数の画像から２枚の画像を選択しても良い。
【００７９】
また、同一平面となるエッジはパターンマッチング以外にもどのような方法によって検出しても良い。例えば、予め参照画像から同一平面となる各エッジの重心、角度、エッジ強度、長さ等の特徴量を記憶しておき、その特徴量と類似したエッジを選択することにより同一平面のエッジを検出するエッジ特徴量による検出方法などを使用しても良い。
【００８０】
更に、本発明に係る３次元計測方法は、ロボット装置のみならず、３次元形状計測器、自動車の衝突防止装置など、画像を用いて対象を認識するものであればどのようなものに使用されても良い。また、本実施の形態に記載された発明は、どのように組み合わされても良いことは、言うまでもない。
【符号の説明】
【００８１】
３ａ：第１カメラ、３ｂ：第２カメラ、１０２：演算装置、Ｗ：ワーク、ＧＥ，ＧＥ１：ステレオ画像、ｅ：エッジ、ｅ２，ｅ４：第１エッジ、ｅ１，ｅ３：第２エッジ、ＥＰ：エピポーラ線、Ｐ１：３次元平面（拘束平面）
【図１】
0005858773.tif 000012
【図２】
0005858773.tif 000013
【図３】
0005858773.tif 000014
【図４】
0005858773.tif 000015
【図５】
0005858773.tif 000016
【図６】
0005858773.tif 000017
【図７】
0005858773.tif 000018
【図８】
0005858773.tif 000019
【図９】
0005858773.tif 000020
【図１０】
0005858773.tif 000021