(57)【特許請求の範囲】
【請求項１】
被検物を複数方向から撮影して、視差の異なる複数の画像データを取得する撮影手段と、
前記複数の画像データから距離画像データを生成する距離画像生成手段と、
前記複数の画像データ中の任意の画像データから被検物と非被検物の境界領域の２つの特徴点を検出する特徴点検出手段と、
前記２つの特徴点と前記距離画像データから、前記２つの特徴点の三次元座標を取得し、該２つの三次元座標から、前記２つの特徴点間の距離を算出する距離算出手段と、
前記算出された距離が所定の閾値内であるか否かで被検物の合否を判定する距離判定手段と、を有し、
前記距離算出手段は、前記特徴点検出手段により検出される前記特徴点の座標から、前記三次元座標のｘｙ座標を取得するとともに、前記距離画像データから、前記特徴点を中心とし、かつ、前記被検物と前記非被検物との両方の距離データが含まれるｎ×ｎの距離データを抽出して、そのうちの中央値を前記三次元座標のｚ座標として取得することを特徴とする検査装置。
【請求項２】
前記撮影手段で取得された複数の画像データについて画像歪みを補正する画像変換手段を更に有する、ことを特徴とする請求項１に記載の検査装置。
【請求項３】
前記撮影手段は、被検物に対向する位置に設けられた、複数のレンズがアレイ配列されてなるレンズアレイと、前記レンズアレイの像面側に設けられた、前記複数のレンズのそれぞれにより略結像される前記被検物の縮小像を撮像する撮像素子とを有する、ことを特徴とする請求項１もしくは２に記載の検査装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のカメラで被検物を撮影し画像処理して、被検物の合否判定を行う検査装置に関する。
【背景技術】
【０００２】
従来から、工場などでは製品検査の自動化にカメラが広く使用されている。この場合、一般に次のようにして被検物の合否判定を行っている。まず、良品を予めカメラで撮影し良品の特徴量を登録する。次に、被検物を撮影し、良品の特徴量と比較して、良品の特徴量と一致あるいは類似していれば合格、そうでなければ不合格と判定する。
【０００３】
このような検査装置としては、一つのカメラで被検物を撮影し特徴を抽出する単眼カメラタイプが主流であったが、近年、２つのカメラで被検物を撮影し特徴を抽出するステレオカメラタイプが使用されるようになってきた。ステレオカメラタイプでは、単眼カメラタイプでは出来ない三次元形状を計測できるため、三次元的に特定の２点間の距離を計測し、三次元の寸法計測を実施することができる（例えば、特許文献１）。さらに、この三次元の寸法計測機能を用いての寸法判定も行われており、単眼カメラタイプで苦手としていた、検査時のカメラと被検物の位置関係がばらついた場合にも安定した判定を行うことができる。なお、寸法判定は、被検物と良品の寸法の比較を行い、等しいかどうかを判定することを意味する。この寸法判定には、寸法の絶対値は不要で、相対値のみでよい。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
単眼カメラタイプの検査装置は、ステレオカメラタイプよりも小型で安価であるが、被検物の３次元形状計測ができないため、安定した寸法判定が行えない。一方、ステレオカメラタイプの検査装置は、３次元形状計測ができるので、安定した寸法判定が行えるが、装置が大型化し、小型化したいというニーズには向かない。ステレオカメラタイプの検査装置を小型化するためには、２つのカメラ間の距離を短くする必要がある。しかし、３次元形状の計測精度は、カメラ間の距離に比例して低下することが知られており、２つのカメラ間の距離を短くした場合、安定した寸法判定が行えなくなってしまう問題がある。また、高精度のステレオカメラを製造するには、カメラの位置合わせ、キャリブレーションなどに手間がかかり、コストアップにつながる。
【０００５】
本発明は、複数のカメラを使用して被検物の寸法判定を行う検査装置において、測距精度の低い、小型ステレオカメラタイプでも、安定した寸法判定を行うことができるようにすることにある。
【課題を解決するための手段】
【０００６】
本発明の検査装置は、被検物を複数方向から撮影して、視差の異なる複数の画像データを取得する撮影手段と、前記複数の画像データから距離画像データを生成する距離画像生成手段と、前記複数の画像データ中の任意の画像データから被検物と非被検物の境界領域の２つの特徴点を検出する特徴点検出手段と、前記２つの特徴点と前記距離画像データから、前記２つの特徴点の三次元座標を取得し、該２つの三次元座標から、前記２つの特徴点間の距離を算出する距離算出手段と、前記算出された距離が所定の閾値内であるか否かで被検物の合否を判定する距離判定手段と、を有し、前記距離算出手段は、前記特徴点検出手段により検出される前記特徴点の座標から、前記三次元座標のｘｙ座標を取得するとともに、前記距離画像データから、前記特徴点を中心とし、かつ、前記被検物と前記非被検物との両方の距離データが含まれるｎ×ｎの距離データを抽出して、そのうちの中央値を前記三次元座標のｚ座標として取得することを主要な特徴とする。
【発明の効果】
【０００７】
本発明によれば、測距精度の低い、小型ステレオカメラタイプでも、被検物の安定した寸法判定を行うことが可能になる。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施形態に係る検査装置の被検物とカメラの設置状態を示した図である。
【図２】本実施形態に係る検査装置のシステム構成図である。
【図３】図２における処理ユニットの構成例を示す詳細ブロック図である。
【図４】図３のエッジ検出部でのエッジ検出処理の説明図である。
【図５】図３の寸法計測部での寸法計測処理の説明図である。
【図６】図３の制御部の状態遷移図である。
【図７】図６の各状態での動作フローを示す図である。
【図８】本実施形態に係る検査装置の全体的動作の流れを示す図である。
【図９−Ａ】パソコンの表示画面の初期状態を示す図である。
【図９−Ｂ】パソコンの表示画面に輝度画像が表示された状態を示す図である。
【図９−Ｃ】パソコンの表示画面に更にエッジ検出領域が表示された状態を示す図である。
【図９−Ｄ】パソコンの表示画面に更に寸法計測結果が表示された状態を示す図である。
【図９−Ｅ】パソコンの表示画面に更に寸法判定閾値が表示された状態を示す図である。
【図９−Ｆ】パソコンの表示画面に更に判定結果が表示された状態を示す図である。
【図１０】一体型ステレオカメラの一実施例を示す図である。
【図１１】一体型ステレオカメラの他の実施例を示す図である。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態について図面を参照して説明する。なお、実施形態では、撮影手段としてのカメラは２つとするが、カメラは２個に限らず、一般に２個以上であればよい。
【００１０】
図１は、本実施形態に係る検査装置の被検物とカメラの設置状態の一例を示した図である。図１において、撮影手段としてのカメラＡ１０１とカメラＢ１０２は、両者の光軸が平行になるようにカメラ固定治具１００に固定されている。このカメラＡ１０１、カメラＢ１０２がステレオカメラの左目、右目に相当するカメラである。カメラ固定治具１００は支持台１１０に固定されている。該支持台１１０に取り付けられたカメラ固定治具１００と該支持台１１０の設置面１１２とは平行になるよう構成されている。その結果、カメラＡ１０１、カメラＢ１０２は鉛直下向きに設置される。支持台１１０の設置面１１２上の、カメラＡ１０１、カメラＢ１０２と対向する位置に、被検物１０が載置される。ここで、被検物の形状は直方体とする。
【００１１】
図２は、本実施形態に係る検査装置のシステム構成図である。カメラ固定治具１００に固定されたカメラＡ１０１、カメラＢ１０２は、それぞれ被検物１０を撮影し、その光学像をアナログ電気信号に変換し、さらにデジタル信号に変換して画像データを出力する。ここでは、画像データは８ビット／画素からなり、０〜２５５階調（輝度値）をとるとする。処理ユニット２００は、カメラＡ１０１及びカメラＢ１０２の撮影を制御すると共に、カメラＡ１０１及びカメラＢ１０２から出力される画像データを取り込んで、被検物１０の寸法判定（距離判定）を行うための種々の処理、主に画像処理を行う処理基板である。パソコン３００は処理ユニット２００と接続されて、処理ユニット２００に対して、該処理ユニット２００での処理のためのパラメータの指定やその他の指示を行うと共に、処理ユニット２００から画像データや、寸法計測結果（距離）、判定結果などを受信して表示する。このパソコン３００がユーザインタフェース手段として機能する。なお、パソコン３００の代わりに、タッチパネル式等の操作部を使用し、処理ユニット２００と一体的に構成することでもよい。外部通信部４００は、一般にＰＬＣ（Programmable  Logic  Controller）と接続される。該外部通信部４００は、例えば、撮影トリガーを処理ユニット２００に与える、処理ユニット２００の動作状態を監視する、処理ユニット２００から判定結果を受け取る、などが可能である。
【００１２】
図３は、本実施形態に係る処理ユニット２００の構成例を示す詳細ブロック図である。本処理ユニット２００は、カメラＡインターフェース（Ｉ／Ｆ）２０１、カメラＢＩ／Ｆ２０２、ＰＣＩ／Ｆ２０３、外部Ｉ／Ｆ２０４、メモリ２０５、画像変換部（画像変換手段）２０６、距離画像生成部（距離画像生成手段）２０７、エッジ検出部（特徴点検出手段）２０８、寸法計測部（距離算出手段）２０９、寸法判定部（距離判定手段）２１０、及び制御部２１１等のモジュールからなり、これら各モジュールはバス２１２で接続されている。
【００１３】
制御部２１１は、各モジュールの動作制御を行う。また、制御部２１１は、各モジュールとの画像データ、その他データ等のやり取り、メモリ２０５への画像データ、その他データ等の保存／取り出しを行う。メモリ２０５は、各モジュールで使用する画像データ、パラメータ、ユーザ調整値などを記憶する。
【００１４】
カメラＡＩ／Ｆ２０１は、カメラＡ１０１とのインターフェースであり、制御部２１１からの撮影指示や設定データ等をカメラＡ１０１に送信すると共に、カメラＡ１０１から出力された画像データを介してメモリ２０５に記憶する。カメラＢＩ／Ｆ２０２は、カメラＢ１０２とのインターフェースであり、同じく制御部２１１からの撮影指示や設定データ等をカメラＢ１０２に送信すると共に、カメラＢ１０２から出力された画像データをメモリ２０５に記憶する。ここで、設定データには、自動露出、ホワイトバランス、画像信号モード（グレースケール／ＹＵＶカラー／Ｒａｗ画像等）などが含まれる。なお、画像信号モードはグレースケールとする。したがって、カメラＡ１０１，カメラＢ１０２からはモノクロの輝度画像データが出力される。
【００１５】
ＰＣＩ／Ｆ２０３は、パソコン（ＰＣ）３００とのインターフェースであり、パソコン３００で設定されたユーザ設定値（エッジ検出領域座標、判定閾値等）を受け取り、メモリ２０５に記憶する。また、ＰＣＩ／Ｆ２０３は、画像データ、寸法計測結果、判定結果等をパソコン３００に送信する。
【００１６】
外部Ｉ／Ｆ２０４は、外部通信部４００とのインターフェースであり、撮影トリガーを外部通信部４００から受け取り、また、処理ユニット２００の動作状態や判定結果などを外部通信部４００に出力する。
【００１７】
画像変換手段としての画像変換部２０６は、メモリ２０５から、カメラＡ１０１で撮影された画像データ（以下、輝度画像データＡ）、カメラＢ１０２で撮影された画像データ（以下、輝度画像データＢ）を取り込んで、それぞれ画像歪みを補正する。さらに、画像変換部２０６は、歪み補正された輝度画像データＢに対して歪み補正された輝度画像データＡを平行化（ステレオ画像の平行化）し、平行化された輝度画像データＡ’と輝度画像データＢ’をメモリ２０５に記憶する。歪み補正の手法としてはA  flexible  new  technique  for  camera  calibration”．IEEE  Transactions  on  Pattern  Analysis  and  Machine  Intelligence，22(11)：1330-1334，2000、平行化の手法としてはFusiello  A，Trucco  E  and  VerriＡ：A  compact  algorithm  for  rectification  of  stereo  pairs.  Machine  Vision  and  Applications：16-22，2000を用いるとよい。
【００１８】
なお、カメラＡ１０１とカメラＢ１０２を予め平行化した状態でカメラ固定治具１００に固定することで平行化の処理は省略できる。
【００１９】
距離画像生成手段としての距離画像生成部２０７は、メモリ２０５から、平行された輝度画像データＡ’と輝度画像データＢ’を取り込み、この２つの輝度画像データＡ’，Ｂ’を用いて、ブロックマッチングを行い、視差画像データＣを生成する。そして、視差画像データＣから距離画像データＤを作成する。距離画像データＤは、視差画像データＣの各視差値ｐ（単位：pix）に対して、輝度画像データＢ’の焦点距離Ｆｌ（単位：cm）、輝度画像データＡ’と輝度画像データＢ’の基線長Ｂｌ（単位：cm）を用いて、各ピクセル（pix）毎に、ｄ＝Ｆｌ＊Ｂｌ／ｐの式を利用して、距離値ｄ（単位：cm）を計算することによって得られる。距離画像生成部２０７は、生成した距離画像データＤをメモリ２０５に記憶する。
【００２０】
なお、カメラが３つ以上の場合には複数の距離画像データが得られるため、各距離画像データをマージングして一つの距離画像データにする必要がある。これには従来から知られている手法を用いてればよい（例えば、非特許文献１〜３）。
【００２１】
特徴点検出手段としてのエッジ検出部２０８は、メモリ２０５から輝度画像データＢ’を取り込み、輝度画像データＢ’を用いて被検物の特徴点としてのエッジを検出する。ここで、エッジは被検物と非被検物の境界点を意味する。なお、輝度画像データＡ’を用いてエッジを検出することでもよい。
【００２２】
図４は、エッジ検出部２０８でのエッジ検出処理を説明する図である。
【００２３】
図４（ａ）は、輝度画像データＢ’に対して予め設定されているエッジ検出領域（Ｂ’の座標系で、左上頂点を輝度画像（ｓｘ，ｓｙ）（単位：pix）、右下頂点を（ｅｘ，ｅｙ）（単位：pix）とする領域）を重畳して表示した画像である。輝度画像データＢ’には、直方体の被検物１０が撮像されている。なお、エッジ検出領域の設定については後述する。以下、エッジ検出部２０８の動作を説明する。
【００２４】
１．エッジ検出領域に対して投影処理を施す。投影処理とはエッジ検出方向（本例ではＸ方向に固定）と垂直な方向に対して濃度の平均値を算出することである。
２．投影処理を行った画像に対して隣接画素との差分を算出する。図４（ｂ）は、エッジ検出領域の画素値の例と投影処理を施した結果、および差分を算出した結果を示した図である。
３．差分値の中から、絶対値が最も大きい２点のＸ画像座標ｘｌ，ｘｒ（単位：pix）を抽出する。
４．ｘｌ，ｘｒを用いて、エッジ画像位置Ｐｌ（ｘｌ，（ｓｙ＋ｅｙ）／２）、エッジ画像位置Ｐｒ（ｘｒ，（ｓｙ＋ｅｙ）／２）を求める。また、ｐｙ＝（ｓｙ＋ｅｙ）／２（単位：pix）とする。
５．エッジ画像位置Ｐｌ（ｘｉ，ｐｙ），Ｐｒ（ｘｒ，ｐｙ）をメモリ２０５に記憶する。
【００２５】
距離算出手段としての寸法計測部２０９は、メモリ２０５から特徴点としてのエッジ画像位置Ｐｌ，Ｐｒ、距離画像データＤを取り込み、これらをもとにＰｌ，Ｐｒ間の３次元距離（寸法）を計測する。
【００２６】
図５は、寸法計測部２０９での寸法計測処理を説明する図である。ここで、図５（ａ）は、距離画像データＤとエッジ画像位置Ｐｌ，Ｐｒを示した図で、距離画像データＤは濃淡で高さ方向を表現している。図５（ｂ），（ｃ）は距離画像データのうち、Ｐｒ，Ｐｌの周辺５ｘ５画素を拡大表示したもので、カメラ中心を原点として、光軸方向をＺ軸としたときの、Ｚ軸の値を距離ｄ（cm）として表している。以下、寸法計測部２０９の動作を説明する。
【００２７】
１．Ｐｌに関する三次元座標Ｐｌ３ｄ＝（ｐｌｘ，ｐｌｙ，ｐｌｚ）（単位：cm）を求める。
距離画像データＤからＰｌを中心とした５×５の画像（距離データ）を抽出する（図５（ｂ））。その２５の距離データのうち、中央値を取得し、それをカメラからＰｌまでの距離とする。中央値は、最大値あるいは最小値から数えて真ん中の値のことである。図５（ｂ）の例では、２４が中央値となる。よって、ｐｌｚ＝２４（単位：cm）となる。また、ｐｌｘ，ｐｌｙは距離画像生成部２０７で用いた焦点距離Ｆｌ（単位：cm）を用いて、
ｐｌｘ＝ｐｌｚ＊（ｃｘ−ｘｌ）／Ｆｌ，ｐｌｙ＝ｐｌｚ＊（ｃｙ−ｐｙ）／Ｆｌで算出できる。なお、距離画像データＤの画像中心の座標を（ｃｘ，ｃｙ）（単位：pix）としている。
２．Ｐｒに関する三次元座標Ｐｒ３ｄ＝（ｐｒｘ，ｐｒｙ，ｐｒｚ）（単位：cm）を求める。
距離画像データＤからＰｒを中心とした５×５の画像（距離データ）を抽出する（図５（ｃ））。その２５の距離データのうち、中央値を取得し、それをカメラからＰｒまでの距離とする。図５（ｃ）の例では、２１が中央値となる。よって、ｐｒｚ＝２１（単位：cm）となる。また、ｐｒｘ，ｐｒｙは焦点距離Ｆｌ（単位：cm）を用いて、
Ｐｒｘ＝ｐｒｚ＊（ｃｘ−ｘｒ）／Ｆｌ，ｐｒｙ＝ｐｒｚ＊（ｃｙ−ｐｙ）／Ｆｌで算出できる。
３．Ｐｌ３ｄ，Ｐｒ３ｄ間の距離ｗｉｄ（単位：cm）を求める。
Ｐｌ３ｄ，Ｐｒ３ｄをユークリッド距離を用いて算出する。具体的には、
ｗｉｄ＝（（ｐｒｘ−ｐｌｘ）＾２＋（ｐｒｙ−ｐｌｙ）＾２＋（ｐｒｚ−ｐｌｚ）＾２）＾（１／２））である。ここで、「＾」はべき乗を意味する。
４．距離（寸法計測結果）ｗｉｄをメモリ２０５に記憶する。
【００２８】
なお、図５では、距離画像データＤからＰｌ，Ｐｒを中心として５×５の距離データを抽出するとしたが、特に５×５である必要はない（一般にはｎ×ｎ）。
【００２９】
距離判定手段としての寸法判定部２１０は、メモリ２０５から距離（寸法計測結果）ｗｉｄを取り込み、該距離（ｗｉｄ）をユーザ閾値（ｍｉｎＤｉｓｔ，ｍａｘＤｉｓｔ）と比較することで、被検物１０の合否の判定結果を出力する。ユーザ閾値については後述する。
【００３０】
具体的には、ｗｉｄ＞＝ｍｉｎＤｉｓｔ  かつ  ｗｉｄ＜＝ｍａｘＤｉｓｔの場合、判定結果は１（ＯＫ）、それ以外は０（ＮＧ）となる。
【００３１】
寸法判定部２１０での判定結果は、制御部２１１を介して、ＰＣＩ／Ｆ２０３からパソコン３００あるいは外部Ｉ／Ｆ２０４から外部通信部４００に繋がるＰＬＣに出力される。
【００３２】
以上が処理ユニット２００の各モジュールの動作であるが、本実施形態の主要構成はエッジ検出部２０８、寸法計測部２０９及び寸法判定部２１０にある。これらにより距離精度が高くない距離画像データでも安定した寸法判定を行うことができる。ここでは、図５（ｂ）に示したエッジ画像位置Ｐｌを中心とした５×５の距離画像データを使って説明する。
【００３３】
エッジ画像位置Ｐｌに対応する距離画像データＤ上の座標は、カメラからの距離を表しているので、５×５の中心の２５を取得すれば、カメラからの距離が得られることに成る。しかし、先の説明では、５×５の中央値を取得している。高精度で計測された距離画像が利用できる場合には、中心の２５をそのまま利用することができるが、本発明では測距精度が十分でない距離画像データを利用する場合を狙いとしている。
【００３４】
測距精度が十分でない距離画像では、エッジ部（背景と被写体の境目）では、値の急激な変化を距離画像上に再現しにくい。例えば以下のような問題が発生する。
【００３５】
Ｐｒの周辺画像の距離データ（１７，１５，２０，２９，３４）（図５（ｃ））のように、エッジ部で急激に距離が変化するべき箇所で、なだらかに値が変化したり、オクルージョンの影響でスパイクノイズが発生したりする。
【００３６】
そのため、距離画像だけで寸法計測をするためには、上記の影響を画像処理により除去する必要がある。
【００３７】
図３の構成では、エッジ検出部２０８にて輝度画像データを用いてエッジ位置を特定することで、エッジ部でなだらかに距離画像データが変化する課題を解決し、寸法計測部２０９にて距離画像データのエッジ部の中央値を取ることでスパイクノイズの影響を軽減している。また、寸法判定部２１０では寸法計測ではなく寸法判定としている。本手法では前提として測距精度が不十分な距離画像を用いることを前提としているので寸法計測は考慮していない。寸法計測の安定性では、測距精度不十分な距離画像のみで寸法判定した場合と、本手法で寸法判定した場合では、本手法の方が、距離画像のみを用いた手法よりも安定した結果が得られる。
【００３８】
次に、本実施形態に係る検査装置の全体を通した動作について説明する。  
本検査装置の動作としては、エッジ領域設定動作、寸法判定の閾値設定動作、及び被検物の寸法判定の運用動作が存在する。
【００３９】
制御部２１１は、状態により動作が異なる。図６に制御部２１１の遷移状態を示す。初期状態では、撮影状態３０１にある。エッジ検出領域の設定が完了すると閾値調整状態３０２に遷移する。そして、判定閾値設定が完了すると、運用状態３０３に遷移する。なお、初期化（エッジ検出領域および判定閾値の初期化）が行われると、状態は撮影状態３０１に移る。
【００４０】
図７は、制御ユニット２００の各状態における動作フローを示した図である。
【００４１】
図７（ａ）は、制御部２１１が撮影状態３０１のときにトリガーが入力された場合の動作フローである。制御部２１１はカメラＡ１０１，カメラＢ１０２に同期して撮影指示を行う（ステップ４０１）。すると、カメラＡ１０１で撮影された画像データ（輝度画像データＡ）は画像変換部２０６に転送され、同じくカメラＢ１０２で撮影された画像データ（輝度画像データＢ）は画像変換部２０６に転送される。そして、画像変換部２０６で、画素歪み補正及びで平行化された輝度画像データＡ’、輝度画像データＢ’が生成される（ステップ４０２）。制御部２１１は、このうちの輝度画像データＢ’をパソコン３００へ転送する（ステップ４０３）。
【００４２】
パソコン３００では、転送された輝度画像データＢ’を表示部に表示し、これをもとにユーザはエッジ検出領域を設定することになる。
【００４３】
図７（ｂ）は、制御部２１１が閾値調整状態３０２のときにトリガーが入力された場合の動作フローである。制御部２１はカメラＡ１０１，カメラＢ１０２に同期して撮影指示を行う（ステップ４０１）。すると、カメラＡ１０１で撮影された画像データ（輝度画像データＡ）は画像変換部２０６に転送され、同じくカメラＢ１０２で撮影された画像データ（輝度画像データＢ）も画像変換部２０６に転送される。そして、画像変換部２０６で、画像歪み補正及び平行化された輝度画像データＡ’、輝度画像データＢ’が生成される（ステップ４０２）。この輝度画像データＡ’及び輝度画像データＢ’が距離画像生成部２０７に転送され、また、輝度画像データＢ’はエッジ検出部２０８にも転送される。距離画像生成部２０７では、輝度画像データＡ’と輝度画像データＢ’を用いて視差画像データＣを生成し、視差画像データＣから距離画像データＤを生成する（ステップ４０４）。エッジ検出部２０８では、輝度画像データＢ’からエッジ画像位置Ｐｌ，Ｐｒを算出する（ステップ４０５）。距離画像データＤ及びエッジ画像位置Ｐｌ，Ｐｒは寸法計測部２０９に転送される。寸法計測部２０９では、エッジ画像位置Ｐｌ，Ｐｒと距離画像ＤからＰｌ，Ｐｒの三次元座標を求めて２点間の距離（寸法計測結果）ｗｉｄを算出する（ステップ４０６）。制御部２１１は、輝度画像データＢ’と距離（寸法計測結果）ｗｉｄをパソコンに転送する（ステップ４０７）。
【００４４】
パソコン３００では、転送された輝度画像データＢ’と距離（寸法計測結果）ｗｉｄを表示部に表示し、これをもとにユーザは距離判定（寸法判定）の閾値を設定することになる。
【００４５】
図７（ｃ）は、制御部２１１が運用状態３０３のときにトリガーが入力された場合の動作フローである。制御部２１はカメラＡ１０１，カメラＢ１０２に同期して撮影指示を行う（ステップ４０１）。すると、カメラＡ１０１で撮影された画像データ（輝度画像データＡ）は画像変換部２０６に転送され、同じくカメラＢ１０２で撮影された画像データ（輝度画像データＢ）も画像変換部２０６に転送される。そして、画像変換部２０６で、画像歪み補正及び平行化された輝度画像データＡ’、輝度画像データＢ’が生成される（ステップ４０２）。この輝度画像データＡ’及び輝度画像データＢ’が距離画像生成部２０７に転送され、また、輝度画像データＢ’はエッジ検出部２０８にも転送される。距離画像生成部２０７では、輝度画像データＡ’と輝度画像データＢ’を用いて視差画像データＣを生成し、視差画像データＣから距離画像データＤを生成する（ステップ４０４）。エッジ検出部２０８では、距離画像データＢ’からエッジ画像位置Ｐｌ，Ｐｒを算出する（ステップ４０５）。距離画像データＤ及びエッジ画像位置Ｐｌ，Ｐｒは寸法計測部２０９に転送される。寸法計測部２０９では、エッジ画像位置Ｐｌ，Ｐｒと距離画像ＤからＰｌ，Ｐｒの三次元座標を求めて２点間の距離ｗｉｄを算出する（ステップ４０６）。寸法判定部２１０では、距離（寸法計測結果）ｗｉｄとユーザ設定値（ｍｉｎＤｉｓｔ，ｍａｘＤｉｓｔ）を入力として判定を行い、判定結果ＯＫ／ＮＧを出力する（ステップ４０８）。そして、制御部２１１は、良品の登録時には、輝度画像データＢ’、距離（寸法計測結果）ｗｉｄ、判定結果をパソコン３００に転送し、実際の運用時には被検物の判定結果を外部通信部４００に送信する（ステップ４０９）。
【００４６】
以下に、本実施形態に係る検査装置の具体的動作について説明する。
【００４７】
図８は、良品を登録する際の全体の動作の流れを示した図であり、網掛けの個所はユーザ操作を示している。図９はパソコン３００の表示画面の遷移を示した図である。
【００４８】
まず、ユーザはカメラＡ１０１，カメラＢ１０２の直下に寸法判定したい被検物１０として良品を設置する（ステップ５０１）。その際、被検物（良品）１０がカメラＡ１０１およびカメラＢ１０２の両方の視野に含まれる位置に設置する（図１）。
【００４９】
良品の設置が終わったら、パソコン３００で寸法判定用アプリケーションを起動する。この時、パソコン３００の表示画面は図９−Ａのようになる。処理ユニット２００の制御部２１１は初期状態の撮影状態３０１にある。
【００５０】
ユーザは撮影開始ボタン６０２を押下する（ステップ５０１）。すると、ＰＣＩ／Ｆ２０３を通して制御部２１１にトリガーが入力される。その結果、処理ユニット２００は図７（ａ）で示した動作を行い、輝度画像データＢ’をパソコン３００へ出力する（ステップ５０３）。この時、パソコン３００の表示画面は図９−Ｂのようになる。すなわち、撮影画像表示領域６０１に輝度画像Ｂ’が表示される。ユーザは、エッジ検出領域指定ボタン６０３を押下した後、マウスなどを用いて、図９−Ｃに示すように、エッジ検出領域６０６を設定する（ステップ５０４）。このエッジ検出領域６０６の左上頂点、右下頂点の座標が図３（ａ）の（ｓｘ，ｓｙ），（ｅｘ，ｅｙ）に対応する。エッジ検出領域の設定が終了すると、ユーザはエッジ検出領域指定ボタン６０３を再び押下する（ステップ５０５）。すると、制御部２１１は閾値調整状態３０２に移行する。
【００５１】
次に、ユーザが撮影開始ボタン６０２を押下すると（ステップ５０６）、制御部２１１にトリガーが入力される。その結果、処理ユニット２００は図７（ｂ）で示した動作を行い、輝度画像データＢ’、寸法計測結果（ｗｉｄ）をパソコン３００へ出力する（ステップ５０７）。この時、パソコン３００の表示画面は図９−Ｄのようになる。すなわち、新たに寸法表示バー領域６０５に寸法計測結果６０７がバー表示される。ユーザは、閾値調整ボタン６０４を押下した後、マウスなどを用いて、図９−Ｅに示すように、寸法判定のユーザ閾値６０８，６０９（ｍｉｎＤｉｓｔ，ｍａｘＤｉｓｔ）を設定する。寸法判定の閾値の設定が終了すると、ユーザは閾値調整ボタン６０４を再び押下する（ステップ５０９）。すると、制御部２１１は運用状態３０３に移行する。
【００５２】
ここで、ユーザが撮影開始ボタン６０２を押下すると（ステップ５１０）、制御部２１１にトリガーが入力される。その結果、処理ユニット２００は図７（ｃ）で示した動作を行い、輝度画像データＢ’、寸法計測結果（ｗｉｄ）、判定結果をパソコン３００へ出力する（ステップ５１１）。この時、パソコン３００の表示画面は図９−Ｆのようになる。ここでは、良品が対象のため、「ＯＫ」が表示される。
【００５３】
以上で良品の登録が完成したことになる。ユーザが設定したエッジ検出領域の座標（ｓｘ，ｓｙ），（ｅｘ，ｅｙ）及び寸法判定閾値（ｍｉｎＤｉｓｔ，ｍａｘＤｉｓｔ）はメモリ２０５に保持される。
【００５４】
以後、ユーザが被検物１０を検査対象の製品に交換し、撮影開始ボタン６０２を押下することで、制御部２１１にトリガーが入力される。その結果、処理ユニット２００は図７（ｃ）で示した動作を行い、判定結果をパソコン３００や外部通信部４００に出力する。また、外部通信部４００に接続されるＰＬＣから撮影トリガーを入力することで、同様に処理ユニット２００は図７（ｃ）で示した動作を行い、外部Ｉ／Ｆ２０４、外部通信部４００を通して、ＰＬＣで判定結果を得ることができる。
【００５５】
次に、ステレオカメラの他の実施例について説明する。図１では、カメラ固定治具１００にカメラＡ１０１，カメラＢ１０２を一定の間隔を持たせてステレオカメラとしたが、このような構成に限る必要はない。
【００５６】
図１０は、カメラＡ１０１とカメラＢ１０２の代わりとして使用可能な、２つのカメラが一体となった一体型ステレオカメラの構成例を示した図である。これは、矢印方向に被写体があるものとし、一体型ステレオカメラにより被写体を撮像する構成の断面模式図を示したものである。１００１はレンズアレイを表す．レンズアレイは被写体側の面と像面側の面の二面からなり、面内に複数のレンズがアレイ状に配列されている。図１０では、被写体側、像側の両方の面にレンズ面が設けられた両面レンズアレイが示されている。１００１ａは被写体側の面に設けられたレンズ、１００１ｂは像側の面に設けられたレンズであり、１００１ａと１００１ｂがセットになって被写体の像を像面上で結像させる。１００２は、レンズアレイにおける隣接するレンズセット間での光線のクロストーク（混線）を防止するための遮光用の隔壁（遮光壁と呼ぶ）であり、金属や樹脂等の撮像光線に対して不透明な材料からなる。レンズアレイ１００１の像側の面と遮光壁とが接着されている。１００３は、板状部材に、各レンズセットに対応して円形の孔を設けた開口アレイであり、レンズの絞りとして作用する。レンズアレイ１００１の被写体側の面の平面部に設けられた突起部１００１ｃを介して開口アレイ１００３とレンズアレイ１００１は接着されている。１００４は、レンズアレイにおける各レンズセットにより撮像される被写体の像を撮像するＣＭＯＳセンサ（撮像素子）であり、基板１００５の上に実装されている。１００６は筐体であり、レンズアレイ１００１の被写体側の面と接着してレンズアレイ１００１、遮光壁１００２、開口アレイ１００３を保持し、基板１００５に接着されている。
【００５７】
図１０の構成の一体型ステレオカメラを用いると、レンズアレイ１００１と対応した視差を持った画像がＣＭＯＳセンサ１００４に撮像される。図１０の構成によれば、測距精度は低いものの、ステレオカメラを小型化することができる。
【００５８】
図１１は、２つのカメラが一体となった一体型ステレオカメラの他の構成例を示した図である。基本的構成は図１０と同じであり、相違点は、ＣＭＯＳセンサ（撮像素子）が１００４ａ，１００４ｂの２枚からなる構成となっていることである。図１１の構成によれば、センサの枚数が増えるので、コストは増加するが、測距精度が向上する利点がある。
【符号の説明】
【００５９】
１０    被検物
１０１Ａ，１０１Ｂ  カメラ
２００    処理ユニット
２０１，２０２  カメラＩ／Ｆ
２０３    ＰＣＩ／Ｆ
２０４    外部Ｉ／Ｆ
２０５    メモリ
２０６    画像変換部
２０７    距離画像生成部
２０８  エッジ検出部
２０９    寸法計測部
２１０    寸法判定部
２１１    制御部
３００    パソコン
４００    外部通信部
【先行技術文献】
【特許文献】
【００６０】
【特許文献１】特許第４８１１２７２号公報
【非特許文献】
【００６１】
【非特許文献１】Greg  Turk  and  Marc  Levoy．Zippered  polygonmeshes  from  range  images．In  Proc．SIGGRAPH  ’94，pp．311-318．ACM，1994．
【非特許文献２】Curless，B.，Levoy，M.，A  Volumetric  Method  for  Building  Complex  Models  from  Range  Images，In  Proc．SIGGRAPH’96，ACM，1996，pp．303-312．
【非特許文献３】M．Wheeler，Y．Sato，and  K．Ikeuchi，Consensussurfaces  for  modeling  3D  objects  from  multiplerange  images，In  Proc．IEEE  International  Conference  on  Computer  Vision，pp．917-923，Jan，1997．
【図１】
0005967470.tif 000002
【図２】
0005967470.tif 000003
【図３】
0005967470.tif 000004
【図４】
0005967470.tif 000005
【図５】
0005967470.tif 000006
【図６】
0005967470.tif 000007
【図７】
0005967470.tif 000008
【図８】
0005967470.tif 000009
【図９−Ａ】
0005967470.tif 000010
【図９−Ｂ】
0005967470.tif 000011
【図９−Ｃ】
0005967470.tif 000012
【図９−Ｄ】
0005967470.tif 000013
【図９−Ｅ】
0005967470.tif 000014
【図９−Ｆ】
0005967470.tif 000015
【図１０】
0005967470.tif 000016
【図１１】
0005967470.tif 000017