複数の撮像部から対象物を撮像することで、互いに異なる場所から前記対象物を撮像した複数の撮像画像を取得する画像取得部と、前記複数の撮像画像についてステレオマッチング処理を行って、前記複数の撮像画像間の視差を示す視差情報を取得する視差取得部と、前記撮像画像からエッジを抽出して、前記対象物のエッジを示すエッジ情報を取得するエッジ抽出部と、前記エッジ情報が示す前記対象物の前記エッジ上の位置での前記視差を、前記視差情報に含まれる前記視差から抽出する視差抽出部と、前記視差抽出部が抽出した前記視差に基づいて、三次元における前記対象物の位置および姿勢を認識する認識部とを備えることを特徴とする三次元位置姿勢認識装置。前記エッジ抽出部は、前記複数の撮像画像のうちの一の撮像画像から前記エッジを抽出して得られる前記対象物のエッジ画像を、前記エッジ情報として求める請求項1に記載の三次元位置姿勢認識装置。前記視差取得部は、前記一の撮像画像の各位置での前記視差を示す視差画像を、前記視差情報として求める請求項2に記載の三次元位置姿勢認識装置。前記視差抽出部は、前記視差画像に前記エッジ画像を重ね合わせることで、前記エッジ画像が示す前記対象物の前記エッジ上の位置での前記視差を、前記視差画像に含まれる前記視差から抽出する請求項3に記載の三次元位置姿勢認識装置。前記視差取得部は、前記複数の撮像画像それぞれのエピポーラ線を平行にする画像変換を行って、当該画像変換後の前記複数の撮像画像について前記ステレオマッチングを実行する請求項1ないし4のいずれか一項に記載の三次元位置姿勢認識装置。前記認識部は、前記視差抽出部が抽出した前記視差を三次元での情報に変換して三次元情報を生成するとともに、前記三次元情報と前記対象物の外形を示すモデルとをマッチングさせて、三次元における前記対象物の位置および姿勢を認識する請求項1ないし5のいずれか一項に記載の三次元位置姿勢認識装置。部品を取って移動させる部品移動手段と、請求項1ないし6のいずれか一項に記載の三次元位置姿勢認識装置と、前記三次元位置姿勢認識装置により前記対象物としての前記部品の三次元での位置および姿勢を認識した結果に基づいて、前記部品移動手段を制御する制御手段とを備えることを特徴とする産業用ロボット。互いに異なる場所から対象物を撮像した複数の撮像画像を取得する画像取得工程と、前記複数の撮像画像についてステレオマッチング処理を行って、前記複数の撮像画像間の視差を示す視差情報を取得する視差取得工程と、前記撮像画像からエッジを抽出して、前記対象物のエッジを示すエッジ情報を取得するエッジ抽出工程と、前記エッジ情報が示す前記対象物の前記エッジ上の位置での前記視差を、前記視差情報に含まれる前記視差から抽出する視差抽出工程と、前記視差抽出工程が抽出した前記視差に基づいて、三次元における前記対象物の位置および姿勢を認識する認識工程とを備えることを特徴とする三次元位置姿勢認識方法。互いに異なる場所から対象物を撮像した複数の撮像画像を取得する画像取得機能と、前記複数の撮像画像についてステレオマッチング処理を行って、前記複数の撮像画像間の視差を示す視差情報を取得する視差取得機能と、前記撮像画像からエッジを抽出して、前記対象物のエッジを示すエッジ情報を取得するエッジ抽出機能と、前記エッジ情報が示す前記対象物の前記エッジ上の位置での前記視差を、前記視差情報に含まれる前記視差から抽出する視差抽出機能と、前記視差抽出機能が抽出した前記視差に基づいて、三次元における前記対象物の位置および姿勢を認識する認識機能とを、コンピューターに実現させることを特徴とするプログラム。請求項9に記載のプログラムが記録されており、コンピューターにより読み取りが可能であることを特徴とする記録媒体。ところで、機械部品や電子部品等の部品を組み立てる産業用ロボットに、上述のような技術を応用することが考えられる。具体例を挙げると、このような産業用ロボットとしては、部品を取り上げて移動させるアームを用いて部品を組み立てるものがある。この際、部品を確実に取り上げるには、三次元における部品の位置および姿勢を正確に把握する必要がある。そこで、上述のように、異なる場所から部品を撮像して得られる複数の撮像画像にステレオマッチング処理を施して、三次元における部品の位置姿勢を認識し、この認識結果に基づいて産業用ロボットのアームを制御することが考えられる。この際、三次元における部品の位置および姿勢を正確に認識するにあたっては、部品の特にエッジ部分の視差が重要となる。つまり、ステレオマッチング処理では、複数の撮像画像の間でパターンの類似する位置どうしが部品の同一部分に対応するとして、互いに対応付けられる。このような対応付けは、パターンの変化が急峻なエッジ部分に対しては高い精度で実行される。一方で、画像パターンの変化が緩やかな他の部分については、対応付けの精度が低下する。このように、対応付けの精度は、部品のエッジ部分で高くなる一方、その他の部分で低くなる傾向を有する。したがって、三次元における部品の位置および姿勢の認識動作を、対応付けの精度の高い部品のエッジ部分の視差に基づいて実行することが好適となる。この発明は上記課題に鑑みなされたものであり、三次元における対象物部品の位置および姿勢の認識動作を、対象物のエッジ部分の視差に基づいて実行することを可能とし、これによって当該認識動作を正確に実行することを可能とする技術の提供を目的とする。この発明にかかる三次元位置姿勢認識装置は、上記目的を達成するために、複数の撮像部から対象物を撮像することで、互いに異なる場所から対象物を撮像した複数の撮像画像を取得する画像取得部と、複数の撮像画像についてステレオマッチング処理を行って、複数の撮像画像間の視差を示す視差情報を取得する視差取得部と、撮像画像からエッジを抽出して、対象物のエッジを示すエッジ情報を取得するエッジ抽出部と、エッジ情報が示す対象物のエッジ上の位置での視差を、視差情報に含まれる視差から抽出する視差抽出部と、視差抽出部が抽出した視差に基づいて、三次元における対象物の位置および姿勢を認識する認識部とを備えることを特徴としている。この発明にかかる産業用ロボットは、上記目的を達成するために、部品を取って移動させる部品移動手段と、上記の三次元位置姿勢認識装置と、三次元位置姿勢認識装置により対象物としての部品の三次元での位置および姿勢を認識した結果に基づいて、部品移動手段を制御する制御手段とを備えることを特徴としている。また、この発明にかかる三次元位置姿勢認識方法は、上記目的を達成するために、互いに異なる場所から対象物を撮像した複数の撮像画像を取得する画像取得工程と、複数の撮像画像についてステレオマッチング処理を行って、複数の撮像画像間の視差を示す視差情報を取得する視差取得工程と、撮像画像からエッジを抽出して、対象物のエッジを示すエッジ情報を取得するエッジ抽出工程と、エッジ情報が示す対象物のエッジ上の位置での視差を、視差情報に含まれる視差から抽出する視差抽出工程と、視差抽出工程が抽出した視差に基づいて、三次元における対象物の位置および姿勢を認識する認識工程とを備えることを特徴としている。また、この発明にかかるプログラムは、上記目的を達成するために、互いに異なる場所から対象物を撮像した複数の撮像画像を取得する画像取得機能と、複数の撮像画像についてステレオマッチング処理を行って、複数の撮像画像間の視差を示す視差情報を取得する視差取得機能と、撮像画像からエッジを抽出して、対象物のエッジを示すエッジ情報を取得するエッジ抽出機能と、エッジ情報が示す対象物のエッジ上の位置での視差を、視差情報に含まれる視差から抽出する視差抽出機能と、視差抽出機能が抽出した視差に基づいて、三次元における対象物の位置および姿勢を認識する認識機能とを、コンピューターに実現させることを特徴とするプログラム。また、この発明にかかる記録媒体は、上記目的を達成するために、上記のプログラムが記録されており、コンピューターにより読み取りが可能であることを特徴としている。このように構成された発明三次元位置姿勢認識装置、産業用ロボット、三次元位置姿勢認識方法、プログラム、記録媒体では、互いに異なる場所から対象物を撮像した複数の撮像画像に対してステレオマッチング処理が実行されて、複数の撮像画像間の視差を示す視差情報が取得される。また、撮像画像からエッジが抽出されて、対象物のエッジを示すエッジ情報が取得される。そして、エッジ情報が示す対象物のエッジ上の位置での視差が、視差情報に含まれる視差から抽出されるとともに、こうして抽出された視差に基づいて、三次元における対象物の位置および姿勢が認識される。これにより、対象物のエッジ部分の視差に基づいて、三次元における対象物の位置および姿勢を認識することが可能となり、その結果、当該認識動作を正確に実行することが可能となる。ここで、エッジ抽出部は、複数の撮像画像のうちの一の撮像画像からエッジを抽出して得られる対象物のエッジ画像を、エッジ情報として求めるように、三次元位置姿勢認識装置を構成しても良い。この際、視差取得部は、一の撮像画像の各位置での視差を示す視差画像を、視差情報として求めるように、三次元位置姿勢認識装置を構成しても良い。そして、このようにエッジ画像と視差画像を求めた上で、視差抽出部は、視差画像にエッジ画像を重ね合わせることで、エッジ画像が示す対象物のエッジ上の位置での視差を、視差画像に含まれる視差から抽出するように、三次元位置姿勢認識装置を構成しても良い。これによって、視差視差画像から視差を抽出する上述の動作を簡便に実行することができる。また、視差取得部は、複数の撮像画像それぞれのエピポーラ線を平行にする画像変換を行って、当該画像変換後の複数の撮像画像についてステレオマッチングを実行するように、三次元位置姿勢認識装置を構成しても良い。このように、複数の撮像画像それぞれのエピポーラ線を平行にすることで、ステレオマッチングを簡便に実行することが可能となる。また、認識部は、視差抽出部が抽出した視差を三次元での情報に変換して三次元情報を生成するとともに、三次元情報と対象物の外形を示すモデルとをマッチングさせて、三次元における対象物の位置および姿勢を認識するように、三次元位置姿勢認識装置を構成しても良い。つまり、この発明では、対象物のエッジ部分での視差が求められており、換言すれば、対応付けの精度の高い位置での視差が求められている。そして、このような視差から求めた三次元情報に対して対象物の外形を示すモデルをマッチングさせることで、三次元における対象物の位置および姿勢を正確に認識することができる。三次元における対象物の位置および姿勢の認識動作を、対象物のエッジ部分の視差に基づいて実行することが可能となり、これによって当該認識動作を正確に実行することが可能となる。図1は、本発明を適用可能な双腕ロボットの一例を模式的示す斜視図である。図2は、図1の双腕ロボットが具備する電気的構成を模式的に示すブロック図である。図1および以下に示す図では、鉛直方向をz軸方向とするxyz直交座標軸を適宜示すこととする。双腕ロボット1は、ロボット本体2とこのロボット本体2の動作を制御するコンピューター3で構成される。ロボット本体2は、胴体部21に2本のアーム22を取り付けた概略構成を備える。詳しくは、各アーム22は、駆動モーターM23に接続された肩関節23を介して取り付けられている。そして、駆動モーターM23で肩関節23を回転させることで、アーム22を動かすことができる。また、各アーム22の先端には、手首関節24を介してハンド25が取り付けられている。この手首関節24には駆動モーターM24が接続されている。したがって、駆動モーターM24で手首関節24を回転させることで、ハンド25の向きを変えることができる。さらに、ハンド25には駆動モーターM25が接続されており、駆動モーターM25によりハンド25を開閉させることができる。そして、双腕ロボット1は、駆動モーターM23~M25を制御することで、部品トレイ9の上に並ぶ部品91機械部品、電子部品をハンド25で掴んで所定位置まで運んだり、ハンド25を回転させて部品91の姿勢を変えたり、ハンド25から部品91を放して所定位置に載置したりといった種々の動作を実行できる。つまり、このような各種動作を組み合わせて実行することで、双腕ロボット1は、部品91を組み立てることができる。また、2本のアーム22の一方には、2つの撮像カメラC1、C2が取り付けられている。これら撮像カメラC1、C2は一方のアーム22と一体的に移動しつつ、部品91を適宜撮像するものである。そして、後述するように、撮像カメラC1、C2により部品91を撮像した結果に基づいて、アーム22およびハンド25の動作が制御されて、部品91の組立が実行される。さらに、双腕ロボット1は、胴体部21から上方に延びる首部26と、首部26の先端に取り付けられた頭部27を有している。これら首部26および頭部27は、鉛直方向zおよび当該方向zを中心とする回転方向Drに一体的に移動できる。このようなロボット本体2の動作は、コンピューター3により制御される。コンピューター3は、ドライバー4と、三次元認識部5とを具備している。ドライバー4は、コンピューター3により読み取りが可能な記録媒体6に記録されたプログラム7を読み出す機能を果たす。このような記録媒体6としては、例えば、CD、DVD、USBメモリー等の種々のものが挙げられる。そして、ドライバー4が記録媒体6から読み出したプログラム7に従って、三次元認識部5が三次元認識を行う。この三次元認識部5は、制御回路50によって他の構成回路51~56を制御する概略構成を備えるものであり、コンピューター3に備えられたCPUおよびメモリーにより実現される。続いて、三次元認識部5が実行する三次元認識の説明を通じて、三次元認識部5の構成について説明する。図3は、三次元認識で実行される動作のフローの一例を示すフローチャートである。図4は、三次元認識で行われる画像処理の一例を模式的に示した図である。図4の各欄の左上では、図3のフローチャートにおいて当該欄内に示す画像処理が実行されるステップが示されている。ここでは、四角錐台の部品91の三次元における位置および姿勢を認識する場合を例示して説明する。三次元認識では、制御回路50が撮像カメラC1、C2に撮像指令を出力すると、撮像カメラC1、C2のそれぞれが認識対象である部品91の画像を撮像して、制御回路50に出力する。こうして、異なる場所から部品91を撮像した2枚の撮像画像I1、I2が取得されるステップS101。これら2枚の撮像画像I1、I2は、平行化回路51で平行化処理を受けた後にステレオマッチング回路52へ出力される。この平行化回路51は、制御回路50から受け取った撮像画像I1、I2それぞれのエピポーラ線を平行にする平行化処理画像変換を撮像画像I1、I2に対して行うものであるステップS102。図4のステップS101、102の欄に示すように、それぞれのエピポーラ線が平行となった撮像画像I1、I2のy軸は一致している。ただし、x軸方向には撮像画像I1、I2が視差を有することから、撮像画像I1、I2のx軸は一致していない。図4ではこの点を考慮して、撮像画像I1、I2のx座標に対して互いに異なる符合x1、x2が付されている。平行化回路51で平行化処理を受けた撮像画像I1、I2は、ステレオマッチング回路52に出力される。そして、ステレオマッチング回路52は、撮像画像I1、I2に対してステレオマッチング処理を行うステップS103。このステレオマッチング処理では、2つの撮像画像I1、I2の間でパターンの類似する位置微小領域どうしが部品91の同一部分に対応するとして、互いに対応付けられる。具体的に説明すると、撮像画像I1中の注目位置と、この注目位置を通るエピポーラ線上にある撮像画像I2中の各位置との間でパターンの類似性が判断されて、撮像画像I1の注目位置とパターンの類似する位置が撮像画像I2中から探索される。ここでは撮像画像I1、I2のエピポーラ線が互いに平行であるため、y座標が注目位置と同じである撮像画像I2の各位置と注目位置との間でパターンの類似性が判断される。その結果、撮像画像I2の各位置のうち最も類似性の高い位置が、撮像画像I1の注目位置と対応付けられる。さらに、撮像画像I1中の注目位置を移動させながら同様の動作を繰り返すことで、撮像画像I1の各位置と撮像画像I2の各位置とが対応付けられる。そして、ステレオマッチング回路52は、こうして対応付けられた2つの位置の間の視差pを算出する。具体的には、撮像画像I1中の位置とこれに対応する撮像画像I2中の位置との視差pが求められて、撮像画像I1中の位置に対して視差pが付与される。このようにして、撮像画像I1中の座標系の各位置に対して視差pを付与した視差画像Isが生成される。言い換えれば、視差画像Isは、撮像画像I1の座標系の各位置での視差pを示す情報である。なお、図4のステップS103の欄に示すように、視差画像Isにおいて部品91の輪郭Lは、一定の幅を持ったぼやけたものとなる。これは、ステレオマッチング処理での対応付けが、微小領域単位で実行されるために、視差画像Isにおいて部品91の輪郭Lが少なくとも微小領域の幅を有することに起因する。ところで、平行化回路51は平行化処理を行った撮像画像I1を、上述のステレオマッチング回路52の他にエッジ抽出回路53にも出力する。エッジ抽出回路53は、受け取った撮像画像I1を二値化することで、撮像画像I1からエッジEを抽出するステップS104。こうして、部品91のエッジEを示すエッジ画像Ieが生成される図4のステップS104の欄。このようにして、ステレオマッチング回路52およびエッジ抽出回路53で求められた、視差画像Isおよびエッジ画像Ieはマスク回路54に出力される。そして、このマスク回路54では、撮像画像I1の座標系において、視差画像Isとエッジ画像Ieとが重ね合わされ、これによって、視差画像Isにおける部品91の輪郭Lとエッジ画像Ieにおける部品91のエッジEとが重ね合わされるステップS105。そして、エッジ画像Ieの示す部品91のエッジE上に位置する視差pのみが、視差画像Isに含まれる視差pから抽出されて、エッジE上の視差pのみを示すエッジ視差画像Iesが形成されるステップS106。このように、マスク回路54において、エッジ画像Ieは、部品91のエッジE上に位置する視差pのみを視差画像Isから抽出するマスク画像として機能する。こうして、マスク回路54において、視差画像IsからエッジE上の視差pのみを抽出したエッジ視差画像Ies図4のステップS106の欄内は、三次元情報生成回路55に出力される。この三次元情報生成回路55は、受け取ったエッジ視差画像Iesから三次元情報Sを生成する。つまり、xy平面での位置での視差pを示す情報Iesが、当該位置でのz成分を示す三次元情報Sに変換される。こうして、三次元の座標系における位置を示す三次元情報Sが生成される。なお、この三次元情報Sの変換にあたっては、撮像カメラC1、C2の焦点距離等の内部パラメーターや、撮像カメラC1、C2の位置関係を示す基礎行列Fが必要となる。この基礎行列Fについては、予め行われた撮像カメラC1、C2の校正時に求められて、三次元情報生成回路55に記憶されている。こうして、求められた部品91の三次元情報Sは、三次元情報生成回路55からモデルマッチング回路56へ出力される。そして、モデルマッチング回路56は、部品91の外形を示す外形モデルと三次元情報Sとをマッチングさせるモデルマッチングを行うステップS108。このとき使用される部品91のモデルは、部品91の外形を示すCADデータから求められて、モデルマッチング回路56に予め記憶されている。モデルマッチングの結果Rmは、モデルマッチング回路56から制御回路50に出力される。制御回路50は、モデルマッチング結果Rmに基づいて、三次元における部品91の位置および姿勢を認識する三次元認識処理を実行するステップS109。言い換えれば、ステップS109では、モデルマッチング結果Rmに基づいて、三次元における部品91の位置および姿勢を示す三次元モデルが生成される三次元モデリング。そして、制御回路50は、部品91の三次元モデルとロボット本体2の座標系に基づいて、各駆動モーターM23~M25を制御して、双腕ロボット1による部品91の組立動作を実行する。以上に説明したように、この実施形態では、互いに異なる場所から部品91対象物を撮像した2枚の撮像画像I1、I2に対してステレオマッチング処理が実行されて、2枚の撮像画像I1、I2間の視差pを示す視差画像Is視差情報が取得される。また、撮像画像I1からエッジEが抽出されて、部品91のエッジEを示すエッジ画像Ieエッジ情報が取得される。そして、エッジ画像Ieが示す部品91のエッジE上の位置での視差pが、視差画像Isに含まれる視差pから抽出されるとともに、こうして抽出された視差pに基づいて、三次元における部品91の位置および姿勢が認識される。これにより、部品91のエッジE部分の視差pに基づいて、三次元における部品91の位置および姿勢を認識することが可能となり、その結果、この三次元認識を正確に実行することが可能となっている。また、この実施形態では、三次元情報の生成に用いられる視差pが、部品91のエッジE上のものに限定されているため、三次元情報の生成に要する演算時間を短縮化できる。その結果、三次元認識の高速化を図ることが可能となっている。また、この実施形態では、2枚の撮像画像I1、I2のうちの一の撮像画像I1からエッジEを抽出して部品91のエッジ画像Ieを得ている。また、視差画像Isは、一の撮像画像I1の各位置での視差pを示す情報として求められている。つまり、エッジ画像Ieおよび視差画像Isのいずれもが同じ座標系一の撮像画像I1の座標系で求められている。その結果、エッジ画像Ieが示す部品91のエッジE上の視差pを視差画像Isから抽出する視差抽出を、エッジ画像Ieと視差画像Isを重ね合わせるだけで簡便に実行することが可能となっている。また、この実施形態では、2枚の撮像画像I1、I2それぞれのエピポーラ線を平行にする画像変換平行化処理を行って、当該画像変換後の2枚の撮像画像I1、I2についてステレオマッチングが実行される。このように、2枚の撮像画像I1、I2それぞれのエピポーラ線を平行にすることで、撮像画像I1、I2間で対応付けられる位置どうしのy成分が同じとなるため、この対応付けが容易となり、ステレオマッチングを簡便に実行することが可能となる。また、この実施形態は、視差pから求めた三次元情報Sと部品91の外形を示すモデルとをマッチングさせて、三次元における部品91の位置および姿勢を認識しており、好適である。つまり、この実施形態では、部品91のエッジE部分での視差pが求められており、換言すれば、対応付けの精度の高い位置での視差pが求められている。そして、このような視差pから求めた三次元情報Sに対して部品91の外形を示すモデルをマッチングさせることで、三次元における部品91の位置および姿勢を正確に認識することができる。その他このように上記実施形態では、撮像カメラC1、C2と三次元認識部5で構成されるステレオ撮像系SS図2が本発明の三次元位置姿勢認識装置に相当し、双腕ロボット1が本発明の産業用ロボットに相当し、コンピューター3が本発明のコンピューターに相当し、記録媒体6が本発明の記録媒体に相当し、プログラム7が本発明のプログラムに相当する。また、撮像カメラC1、C2が本発明の撮像部に相当し、撮像カメラC1、C2と制御回路50が本発明の画像取得部として機能し、平行化回路51およびステレオマッチング回路52が本発明の視差取得部として機能し、エッジ抽出回路53が本発明のエッジ抽出部に相当し、マスク回路54が本発明の視差抽出部に相当し、三次元情報生成回路55、モデルマッチング回路56および制御回路50が本発明の認識部に相当し、アーム22およびハンド25が本発明の部品移動手段に相当し、制御回路50が本発明の制御手段に相当する。また、ステップS101が本発明の画像取得工程に相当し、ステップS102、S103が本発明の視差取得工程に相当し、ステップS104が本発明のエッジ抽出工程に相当し、ステップS105、S106が本発明の視差抽出工程に相当し、ステップS108、S109が本発明の認識工程に相当する。また、撮像画像I1、I2が本発明の撮像画像に相当し、視差画像Isが本発明の視差画像および視差情報に相当し、エッジ画像Ieが本発明のエッジ画像およびエッジ情報に相当する。なお、本発明は上記した実施形態に限定されるものではなく、その趣旨を逸脱しない限りにおいて上述したもの以外に種々の変更を行うことが可能である。例えば、三次元認識における各ステップS101~S109は、図3のフローチャートに示したものに限られない。具体例を挙げると、ステップS103のステレオマッチングより先にステップS104のエッジ抽出を行なっても良く、あるいは、ステップS103、S104のステレオマッチングおよびエッジ抽出を並行して実行しても良い。また、上記実施形態では、三次元認識部5は、コンピューター3の内臓するCPUやメモリーで構成されていた。しかしながら、三次元認識部5は、FPGAFieldProgrammableGateArray等のプログラマブルロジックデバイスや、ディスクリートな回路素子を組み合わせて構成されても良い。また、上述のエッジ抽出についても種々の方法により実行することができ、例えば、Roberts、Sobel、Prewitt等の演算子を用いた方法を採用可能である。また、撮像カメラC1、C2の個数や、取り付け位置等についても上述したものに限られず、適宜変更可能である。また、三次元における部品91の位置および姿勢を求める方法についても、上述のモデルマッチングに限られず、適宜変更可能である。また、本発明を適用可能な産業用ロボットは、上述の双腕ロボット1に限られない。しがたって、その他の構成を具備するロボットに対して本発明を適用することもできる。