以下に本発明の一実施形態を示す。以下で説明される個別の実施形態は、本発明の上位概念、中位概念および下位概念など種々の概念を理解するために役立つであろう。また、本発明の技術的範囲は、特許請求の範囲によって確定されるのであって、以下の個別の実施形態によって限定されるわけではない。
図1は、外観検査装置1の概略を示す概略図である。外観検査装置1は、コントローラ2と、プログラマブルロジックコントローラ(PLC)3と、カメラ4と、照明装置5(フロントライト51、バックライト52)と、マウス9と、モニタ10と、プログラム作成支援装置11とを有している。PLC3によって制御されるベルトコンベヤなどの搬送装置7によって検査対象物8が搬送され、フロントライト51やバックライト52などの照明装置によって照明された検査対象物8がカメラ4によって撮像される。コントローラ2は、たとえば、PLC3からの命令にしたがって、検査対象物8を照明すべき照明装置を切り替えたり、カメラ4に撮像を実行させたりする。
コントローラ2は検査対象物(ワーク)8の画像からエッジ検出や面積計算などの各種計測処理を実行する。カメラ4から得られた画像データを用いて画像処理を実行し、外部接続されたPLC3などの制御機器に対し、検査対象物8の良否などの判定結果を示す信号として判定信号を出力する。
カメラ4は、検査対象物8を撮像する撮像素子を有するカメラモジュールを備えている。撮像素子としては、たとえばCMOS(相補型金属酸化膜半導体)やCCD(電荷結合素子)を用いることができる。PLC3から入力される制御信号、たとえばカメラ4から画像データを取り込むタイミングを規定する撮像トリガ信号に基づいて、検査対象物8の撮像を行う。
モニタ10は、液晶パネルや自発光式パネル等の表示装置である。検査対象物8を撮像して得られた画像や、その画像データを用いた計測処理の結果を表示する。モニタ10は、パターンマッチング用の比較データ(モデル画像)を作成するために使用される基準画像など、良品から取得された画像を表示してもよい。
マウス9は、ユーザがモニタ10上で各種操作するため(モニタ10がタッチパネルなら省略可)の入力装置である。マウス9は、モニタ10上で各メニュー項目を選択したり、パラメータ値を設定したりする。マウス9は、ポインティングデバイスの一例である。ユーザは、モニタ10を視認することで、コントローラ2の運転中の動作状態を確認することができる。また、ユーザは、モニタ10を視認しつつ、マウス9を操作することによって、必要に応じて各種設定や各種編集を行うことができる。
照明装置5は、検査対象物8を照明する装置であり、図1では、フロントライト51、バックライト52が示されている。照明装置5としては、これら以外にも、たとえば、光沢を際立たせる同軸落射照明、傷や刻印のエッジが際立つローアングル照明、ブラックライトを当てるブラックライト照明、バックライト52として用いられる面照明(フロントライト51とは反対側から照明を与え、検査対象物の透過光または影を観察するための透過照明)、四方八方から拡散光を照射するドーム照明など、各種の照明を行う照明装置が採用されてもよい。特に、同軸落射照明は、視野全体に略均一に照明を当てる照明手法であり、カメラ4と照明装置5をV字に配置して検査対象物8からの正反射光を受光する照明手法とほぼ同様の効果が得られる利点がある。また、ローアングル照明は、たとえばLED等の投光素子をリング状に配置し、検査対象物8の表面を浅い角度で全周方向から光を照らす照明手法である。検査対象物8の表面に当たった光はカメラ4の方向には反射せず、刻印や傷のエッジ部分で反射した光だけが受光される。すなわち、照射角度が非常に浅い角度であるため、光沢面では反射が弱く、検査対象物8上の僅かな傷やエッジでのみ強い反射が得られ、はっきりとしたコントラストが得られる。別の表現をすると、フロントライト51は、検査対象物8の表面の特徴(テクスチャ、エッジ等)を抽出するための照明光であって、バックライト52は、検査対象物8の輪郭(または縁部)を抽出するための照明光である。
プログラム作成支援装置11は、コントローラ2が実行する制御プログラムを作成するためのコンピュータ(PC)である。制御プログラムは、以下で説明するような外観検査に関するそれぞれ異なる計測を実行するための複数の計測処理モジュールを有している。コントローラ2は、設定された順番に沿って各種計測処理モジュールを呼び出して実行する。プログラム作成支援装置11とコントローラ2とは、通信ネットワークを介して接続されており、プログラム作成支援装置11上で生成された制御プログラムやパラメータ値等の設定情報は、コントローラ2に転送される。また逆に、コントローラ2から制御プログラムやパラメータ値等の設定情報などを取り込んで、プログラム作成支援装置11上で編集することもできる。
工場において、複数の検査対象物8は、コンベアなどの搬送装置7のライン上を流れてくる。コントローラ2は、検査対象物8の上方(または側方、下方)に設置されているカメラ4により検査対象物8を撮像し、撮像した画像を基準画像(たとえば良品を撮像した画像)や基準画像から作成したモデル画像と比較して、検査対象物8に傷や欠陥等が存在するか否かの判断を行う。検査対象物8に傷や欠陥等が存在すると判断した場合には、NG判定となる。一方、検査対象物8に傷や欠陥等が存在しないと判断した場合には、OK判定となる。このように、外観検査装置1は、検査対象物8を撮像した画像を用いて、検査対象物8の外観の良否判定を行う。
検査対象物8の外観検査を行う場合、検査に用いる各種パラメータの内容(パラメータ値等)を設定する必要がある。パラメータとしては、たとえば、シャッタースピードなどの撮像条件を規定する撮像パラメータ、照度などの照明条件を規定する照明パラメータ、どのような検査を行うかを示す検査条件を規定する計測処理パラメータ(いわゆる検査パラメータ)等がある。外観検査装置1では、良否判定を行う前に、これらの各種パラメータの内容を設定する。
外観検査装置1は、実際に搬送装置7のライン上を次々と流れてくる検査対象物8の外観検査を行うモード、すなわち実際に検査対象物8の良否判定を行う運転モード(Runモード)と、検査に用いる各種パラメータの内容の設定を行う設定モード(非Runモード)とを有しており、これらのモードを切り替えるためのモード切替手段を有している。ユーザは、運転モードにおいて、搬送装置7のライン上を流れてくる複数の検査対象物8に対して良否判定が繰り返し行われる前に、設定モードにおいて、各種パラメータに対して最適なパラメータ値を設定(調整)する。基本的に、各種パラメータに対してはデフォルト値が設定されており、ユーザがパラメータ値としてデフォルト値が最適であると判断した場合には、特段、パラメータ値を調整する必要はない。しかし、実際のところ、周囲の照明環境、カメラ4の取り付け位置、カメラ4の姿勢ずれ、ピント調整等の相違に起因して、デフォルト値のままではユーザが望む判定結果を得ることができない場合がある。そこで、設定モードにおいて、コントローラ2のモニタ10上またはプログラム作成支援装置11上にて、運転モードから設定モードに切り換え、各種パラメータの内容を編集できるようになっている。
<外観検査装置1のハードウェア構成>
図2は、外観検査装置1のハードウェア構成の一例を示す図である。
主制御部21は、各種プログラムに基づき数値計算や情報処理を行うとともに、ハードウェア各部の制御を行う。たとえば、中間演算処理装置としてのCPU22と、主制御部21が各種プログラムを実行する際のワークエリアとして機能するRAMなどのワークメモリ23と、起動プログラムや初期化プログラムなどが格納されたROM、フラッシュROMまたはEEPROMなどのプログラムメモリ24とを有している。
照明制御部26は、主制御部21のCPU22やPLC3からの命令に基づいて、フロントライト51やバックライト52などに対して照明制御信号を送信する。
画像入力部25は、カメラ4での撮像により得られた画像データを取り込むASIC(Application Specific Integrated Circuit)などから構成される。画像入力部25には、画像データをバッファリングするためのフレームバッファが含まれていてもよい。具体的に、画像入力部25は、CPU22からカメラ4の撮像指令を受信すると、カメラ4に対して画像データ取り込み信号を送信する。そして、画像入力部25は、カメラ4で撮像が行われた後、撮像して得られた画像データを取り込む。取り込んだ画像データは、一旦バッファリング(キャッシュ)される。
操作入力部27は、マウス9からの操作信号が入力される。操作入力部27は、ユーザの操作に基づきマウス9からの操作信号を受信するインターフェース(I/F)として機能する。
モニタ10には、マウス9を用いたユーザの操作内容が表示される。具体的に説明すると、マウス9を操作することによって、ユーザはモニタ10上で、画像処理の制御プログラムを編集したり、各計測処理モジュールのパラメータ値を編集したり、カメラ4の撮像条件を設定したり、基準画像の中で特徴的な部分をモデル画像として登録したり、サーチ領域内をサーチしてモデル画像に一致した領域を検査領域として設定したりと、様々なことを行うことができる。
表示制御部28は、モニタ10に対して画像を表示させる表示用DSPなどから構成される。表示制御部28には、画像を表示させる際に画像データを一時記憶するVRAMなどのビデオメモリが含まれていてもよい。CPUから送られてきた表示指令(表示コマンド)に基づいて、モニタ10に対して所定の画像(映像)を表示させるための制御信号を送信する。たとえば、計測処理前または計測処理後の画像データを表示するために、モニタ10に対して制御信号を送信する。また、表示制御部28は、マウス9を用いたユーザの操作内容をモニタ10に表示させるための制御信号も送信する。
通信部29は、外部のPLC3やプログラム作成支援装置11などと通信可能に接続される。たとえば、通信部29は、検査対象物8の到着タイミングを認識するために製造ラインに設置され、PLC3に接続されたセンサ(光電センサ等、図示せず)からトリガ入力があったときに、PLC3から撮像トリガ信号を受信するインターフェース(I/F)として機能する。また、通信部29は、プログラム作成支援装置11から転送されてくるコントローラ2の制御プログラムなどを受信するインターフェース(I/F)としても機能する。
画像処理部30は、エッジ検出や面積計算などの計測処理を実行する演算用DSPなどから構成される。画像処理部30には、計測処理用に画像データを記憶するメモリが含まれていてもよい。画像処理部30は、画像データに対する計測処理を実行する。具体的に、画像処理部30は、まず画像入力部25のフレームバッファから画像データを読み出して、画像処理部30内のメモリへ内部転送を行う。そして、画像処理部30は、そのメモリに記憶された画像データを読み出して、計測処理を実行する。
プログラムメモリ24は、照明制御部26、画像入力部25、操作入力部27、表示制御部28、通信部29、および画像処理部30の各部を、CPU22のコマンド等により制御するための制御プログラムを格納している。また、プログラム作成支援装置11から転送されてきた制御プログラムは、プログラムメモリ24に格納される。
CPU22は、通信部29を介してPLC3から撮像トリガ信号を受信すると、画像入力部25に対して撮像指令(コマンド)を送る。また、CPU22は、制御プログラムに基づいて、画像処理部30に対して、実行すべき画像処理を指示するコマンドを送信する。なお、撮像トリガ信号を生成する装置として、PLC3ではなく、光電センサなどのトリガ入力用のセンサを通信部29に直接接続してもよい。
これらの各ハードウェアは、バスなどの電気的な通信路(配線)を介し、通信可能に接続されている。
<計測モジュール(画像処理ツール)>
ここでは、外観検査を実行する計測モジュールを画像処理ツールと呼ぶことにする。画像処理ツールには様々なものがあり、主要な画像処理ツールとしては、エッジ位置計測ツール、エッジ角度計測ツール、エッジ幅計測ツール、エッジピッチ計測ツール、エリア計測ツール、ブロブ計測ツール、パターンサーチ計測ツール、傷計測ツールなどがある。
●エッジ位置計測ツール:検査対象物8の画像が表示される画面上において、エッジ位置を検出したい検査領域に対してウインドウを設定することにより、設定された検査領域内で、任意の方向にスキャンして複数のエッジ(明から暗に切り替わる箇所または暗から明に切り替わる箇所)を検出する。検出した複数のエッジから、一のエッジの指定を受け付け、指定を受け付けたエッジの位置を計測する。
●エッジ角度計測ツール:設定を受け付けた検査領域内に2つのセグメントを設定し、それぞれのセグメントで検出したエッジからの検査対象物8の傾斜角度を計測する。傾斜角度は、たとえば時計回りを正とすることができる。
●エッジ幅計測ツール:設定を受け付けた検査領域内で、任意の方向にスキャンして複数のエッジを検出し、検出した複数のエッジ間の幅を計測する。
●エッジピッチ計測ツール:設定を受け付けた検査領域内で、任意の方向にスキャンして複数のエッジを検出する。検出した複数のエッジ間の距離(角度)の最大値/最小値や平均値を計測する。
●エリア計測ツール:カメラ4で撮像した検査対象物8の画像を二値化処理して、白色領域または黒色領域の面積を計測する。たとえば、計測する対象として白色領域または黒色領域の指定をパラメータとして受け付けることにより、白色領域または黒色領域の面積を計測する。
●ブロブ計測ツール:カメラ4で撮像した検査対象物8の画像を二値化処理して、同一の輝度値(255または0)の画素の集合(ブロブ)に対してパラメータとしての数、面積、重心位置等を計測する。
●パターンサーチ計測ツール:比較対象とする画像パターン(モデル画像)を事前に記憶装置に記憶しておき、撮像した検査対象物8の画像の中から記憶してある画像パターンに類似している部分を検出することで、画像パターンの位置、傾斜角度、相関値を計測する。
●傷計測ツール:設定を受け付けた検査領域内で、小領域(セグメント)を移動させて画素値の平均濃度値を算出し、閾値以上の濃度差となった位置を傷が存在すると判定する。
●その他にも、検査領域内の文字情報を切り出して辞書データ等と照合することで文字列を認識するOCR認識ツール、画像上に設定したウインドウ(領域)をシフトさせながら、各ウインドウの位置においてエッジの検出を繰り返す機能を有するトレンドエッジツール、設定したウインドウ内の濃淡の平均、偏差等を計測する機能を有する濃淡ツール、設定したウインドウ内の濃度の平均、偏差等を計測する機能を有する濃度ツールなどもあり、ユーザは検査内容に応じて必要な画像処理ツールを選択することができる。なお、これらの画像処理ツールは、典型的な機能およびその実現方法の代表例を示すものに過ぎない。あらゆる画像処理に対応する画像処理ツールが本願発明の対象になり得る。
<外観検査の基本フロー>
図3は、外観検査処理の基本フローを示すフローチャートである。外観検査処理は、検査対象物8の良否を判定するために必要となるモデル画像、検査領域、サーチ領域、検出点(以下、基準点と称す)、基準線、公差などの閾値を設定する設定モードと、実際に検査対象物8を撮像してパターンマッチングを実行して良否を判定する運転モードとに分かれている。なお、検査用のパラメータを適切に設定するために、設定モードと運転モードとを繰り返し実行することが一般的である。
S301で、CPU22は、画像入力部25を通じてカメラ4に撮像命令を送信することで、カメラ4に撮像を実行させる。CPU22は、カメラ4により取得された画像データを、表示制御部28を通じてモニタ10に表示させる。ユーザは、モニタ10に表示された画像を視認することで、カメラ4の姿勢や照明装置5の照明状態を確認する。
S302で、CPU22は、マウス9によって入力された指示に基づいてカメラ4のシャッタースピードなどの露光条件を調整する。なお、ユーザは、カメラ4の姿勢を手動で調整してもよい。
S303で、CPU22は、搬送装置7の撮像位置に配置された検査対象物8の画像をワーク画像として取り込むために、カメラ4に撮像命令を送信する。なお、ワーク画像(基本画像)は、不揮発性メモリに記憶されて繰り返し使用される基準画像であってもよいし、モデル画像を作成するためにその都度撮像される都度画像であってもよい。ここでは、ワーク画像はワークメモリ23に記憶される。なお、モデル画像は基準画像から作成してもよい。
S304で、CPU22は、位置ずれ補正の設定処理を実行する。カメラ4によって取得された画像において、検査対象物8の画像の位置が理想位置からずれていることがある。そこで、CPU22は、検査対象物8の画像を回転したり、シフトしたりすることで、位置ずれを補正する。なお、位置ずれ補正は、画像処理部30が実行してもよい。
S305で、CPU22は、上述した各種の画像処理ツールを設定する。たとえば、外観検査においてどの計測を実行するかや、計測を実行するために必要となるサーチ領域、検査領域、基準点などが設定される。
S306で、CPU22は、外観検査で必要となるパラメータ(例:公差などの検査閾値)を、マウス9によって入力された指示に基づいて設定する。S307で、CPU22は、設定モードから運転モードに切り替える。
S308で、CPU22は、PLC3からの指示にしたがって検査対象物8をカメラ4で撮像し、画像処理部30にパターンマッチングを実行させ、実行結果に基づいて良否を判定し、判定結果をPLC3に出力したり、モニタ10に出力したりする。
S309で、CPU22は、マウス9からモードの切り替え指示が入力されると、運転モードから設定モードに切り替える。S310で、CPU22は、マウス9によって入力された指示に基づいてパラメータを再設定する。
<パラメータの設定>
図4は、パラメータを設定する際の検査対象物8と、カメラ4と、照明装置5の位置関係を示している。検査対象物8は、複数のピンを有したIC(集積回路)、複数の半田ボールを有したBGA(ボールグリッドアレイ)などであってもよいが、ここでは、説明の便宜上、樹脂製のハウジング40と複数のピン41とを有したコネクタと仮定する。
照明装置5であるバックライト52は、搬送装置7を挟んでカメラ4に対向するように配置されており、検査対象物8の後ろ側から検査対象物8を照明する。フロントライト51は、リング照明装置であり、搬送装置7から見てカメラ4と同じ側に配置されており、検査対象物8の前側から照明する。
運転モードにおいては、PLC3が搬送装置7を制御し、検査対象物8がカメラ4の撮像位置に到着すると、搬送装置7を停止させ、コントローラ2を介してカメラ4に撮像を命令する。この際に、PLC3は、コントローラ2を介して照明装置5に照明するよう命令する。また、(ハウジング40の表面の特徴を抽出するための)フロントライト51でコネクタのピン41やハウジング40を照らした状態でカメラ4が撮像する。(ハウジング40の輪郭を抽出するための)バックライト52でコネクタのハウジング40の輪郭を浮かび上がらせた状態でカメラ4が撮像する。
一方で、設定モードにおいては、基本的に搬送装置7を停止させておき、コントローラ2が直接的にカメラ4や照明装置5を制御し、検査対象物8のワーク画像を撮像する。設定モードにおいて撮像される検査対象物8は、ユーザにより良品と判定されたワーク(製品)である。一般に、ワーク画像は1枚である。しかし、検査対象物8が搬送装置7の搬送方向に長く、一回の撮像では検査対象物8の全体を撮像できないことがある。この場合は、検査対象物8を複数回に分けて撮像するように、コントローラ2がカメラ4を制御する。なお、設定モードにおいて複数枚のワーク画像を取得したときは、運転モードでも同数枚の画像が取得され、ワーク画像とモデル画像と比較される。
設定モードにおいても運転モードにおいても、フロントライト51でコネクタのピン41やハウジング40を照らした状態でカメラ4が撮像する。また、バックライト52でコネクタのハウジング40の輪郭を浮かび上がらせた状態でカメラ4が撮像する。検査対象物8を複数回に分割して撮像する場合、PLC3は、検査対象物8またはカメラ4のいずれかを移動させることで、複数回の撮像を実行してもよい。検査対象物8またはカメラ4の移動は手動であってもよい。検査対象物8を3か所以上に分割して撮像する場合、搬送方向で最初の撮像箇所(図中の左端)と搬送方向で最後の撮像箇所(図中の右端)については、フロントライト51で検査対象物8を照明してカメラ4で撮像し、その後、バックライト52で検査対象物8を照明してカメラ4で撮像する。一方で、最初の撮像箇所と最後の撮像箇所との間に位置する1つ以上の中間の撮像箇所については、フロントライト51で検査対象物8を照明してカメラ4で撮像し、バックライト52を用いた撮像を省略する。これは、検査対象物8の中間部分の輪郭は、外観検査をするうえで重要ではないからである。中間部分については、バックライト52を用いた撮像を省略することで、外観検査の作業効率を向上できる。
図5は、検査対象物8であるコネクタを3分割し、フロントライト51で撮像した画像とバックライト52で撮像した画像とを示している。画像53は、フロントライト51で撮像したコネクタの左端の画像である。画像54は、フロントライト51で撮像したコネクタの中間の画像である。画像55は、フロントライト51で撮像したコネクタの右端の画像である。画像56は、バックライト52で撮像したコネクタの左端の画像である。画像57は、バックライト52で撮像したコネクタの右端の画像である。なお、画像53〜画像55の各画像においてコネクタの下に存在する黒ベタの部分は搬送装置7のベルトコンベヤの画像である。なお、検査対象物8が治具等に搭載されて搬送装置7によって搬送される場合は、治具が画像に映り込むことになる。上述したように、コネクタの中央(以下、中間と称す)についてはバックライト52による撮像が省略されている。
なお、カメラ4は、所定位置に配置されたコネクタをフロントライト51で撮像し、次に、コネクタの位置を維持したままバックライト52で撮像する。つまり、フロントライト51を用いて撮像された画像と、バックライト52を用いて撮像された画像とにおいて、検査対象物8の位置は一致している。
なお、画像53の右端と画像54の左端とには、コネクタの同一部分が写っている。同様に、画像54の右端と画像55の左端とには、コネクタの同一部分が写っている。このように隣り合った部分画像に同一の部分が重複して写っている理由は、これらの3枚の部分画像を連結して1枚の全体画像を作成するためである。つまり、画像処理部30は、隣り合った2枚の部分画像において共通に写っている同一のピンが重なるように、隣り合った2枚の部分画像を連結する。これにより作成された全体画像には、コネクタの全体が含まれることになる。
<寸法測定>
●ピンと角までの距離
図6は、寸法測定の一例を示す図である。モニタ10に表示されるユーザインタフェース(UI)60には、フロントライト51を用いて撮像された複数の部分画像を連結して構成された一枚の画像(フロントライト画像61)と、バックライト52を用いて撮像された複数の部分画像を連結して構成された画像(バックライト画像62)とが示されている。フロントライト画像61とバックライト画像62とは、フロントライト51と、バックライト52とを切り替えて撮像されたそれぞれ同一の被写体の部分画像を連結することで作成された全体画像である。よって、フロントライト画像61の座標系とバックライト画像62の座標系は一致している。ここでは、フロントライト画像61の座標系は、フロントライト画像61の左端を原点としており、バックライト画像62の座標系は、バックライト画像62の左端を原点としている。よって、フロントライト画像61における各ピンの中心位置と、バックライト画像62における各ピンの中心位置は同一の座標で表現できる。同様に、フロントライト画像61におけるハウジング40の角64の位置と、バックライト画像62におけるハウジング40の角64の位置は同一の座標で表現できる。
UI60においては、フロントライト画像61の横方向における両方の端部とバックライト画像62の横方向における両方の端部とがそれぞれ一致するように、フロントライト画像61とバックライト画像62とが同時に表示される。つまり、フロントライト画像61の横方向の端部とバックライト画像62の横方向の端部とを揃えて、フロントライト画像61とバックライト画像62とが上下に並べられて表示される。これにより、ユーザは、フロントライト画像61とバックライト画像62とがともに同一の検査対象物8を撮像して取得された画像であることを理解しやすくなる。また、フロントライト画像61に設定したサーチ領域、検査領域および検出点はそのままバックライト画像62に設定されるようにしてもよい。つまり、フロントライト画像61とバックライト画像62とにおいて、サーチ領域、検査領域および検出点は連動して表示されるようにしてもよい。同様に、バックライト画像62に設定したサーチ領域、検査領域および検出点はそのままフロントライト画像61に設定され、両者は連動して表示されるようにしてもよい。これにより、一方の画像において設定しにくい特徴部分については他方の画像を用いて設定できるようなる。本発明では、このような特徴を生かして、検査対象物8についての寸法など様々な計測対象を設定できるようになる。
図6では、画像処理部30がハウジング40の角64から1番ピン63の中心までの距離を算出する。なお、この例のコネクタには1列あたり17本のピンが2列にわたって配置されている。ピンの番号は左端のピンを1番ピンとし、右端のピンを17番ピンとしている。
ところで、ハウジング40の色が白色に近い場合、フロントライト画像61から角64の位置を精度よく検出できない可能性がある。一方で、バックライト画像62では、角64を精度よく検出できる。これは、背景とハウジングとのコントラストが高いからである。画像処理部30は、フロントライト画像61から1番ピン63の位置(座標)を決定し、バックライト画像62から角64の位置を決定する。ここで、フロントライト画像61とバックライト画像62の座標系は完全に一致しているため、フロントライト画像61から求められた1番ピン63の位置と、バックライト画像62から求められた角64の位置とから、画像処理部30は、両者の距離を算出できる。なお、17番ピンとハウジング40の右上の角までの距離も、同様の手順でフロントライト画像61とバックライト画像62とから算出できる。
図7は、2列目のピンに関する寸法測定の一例を示す図である。2列目の1番ピン65から角64までの距離についても1列目の1番ピン63と同様の手順で距離を算出できる。
ここでは、1番ピンと17番ピンについて説明したが、2番ピンから16番ピンについても、フロントライト画像61から特徴点であるピンの位置を検出し、バックライト画像62から特徴点である角の位置を検出し、両者の距離を求めることができる。
●ピンからハウジング外縁までの距離(ピン高さ)
図8は、各ピンの高さを求める方法を示している。この例では、画像処理部30が、各ピンの中心(基準点82)からハウジング40の上側にある外縁までの距離をピン高さとして算出する。
画像処理部30は、バックライト画像62からハウジング40の上側の外縁を確定するために、右上角の位置と左上角の位置とを検出し、両者を結ぶ直線(直線の方程式)を基準線81として決定する。バックライト画像62を利用するのは、フロントライト画像61と比較して、角を精度よく検出できるからである。画像処理部30は、フロントライト画像61から各ピンの中心位置を基準点82として検出する。画像処理部30は、各ピンの基準点82から基準線81までの距離を各ピンの高さとして算出する。
ここでは、フロントライト画像61から基準点82を検出し、バックライト画像62から基準線81を検出した。しかし、検査対象物8の外形や配色、素材など、画像のコントラストに影響を与えるパラメータが異なる場合、画像処理部30は、フロントライト画像61から基準線81を検出し、バックライト画像62から基準点82を検出してもよい。
図9は、2列目の各ピンについてピン高さを求める例を示している。画像処理部30は、バックライト画像62からハウジング40の上側の外縁を確定するために、右上角の位置と左上角の位置とを画像認識により検出し、両者を結ぶ直線(直線の方程式)を基準線81として決定する。さらに、画像処理部30は、フロントライト画像61から2列目の各ピンの中心位置を基準点85として検出する。画像処理部30は、各ピンの基準点85から基準線81までの距離を各ピンの高さとして算出する。
<撮像回数の設定>
図10および図11は、撮像回数を設定するためのダイアログ101を示している。ダイアログ101には、画像の分割数の入力欄102と、カメラ数や撮像手法の選択欄103が示されている。分割数が1に設定されると、検査対象物8の全体を1枚の画像に収めることを意味する。分割数が3に設定されると、検査対象物8の全体を3枚の画像に分割して収めることを意味する。図11が示すように、選択欄103において、検査対象物8の両端のみ照明を変えて撮像する撮像手法などを選択できる。
図12は、ユーザにより設定された撮像回数を視覚的に示すダイアログ104を示している。この例では、照明A(フロントライト51)により、3か所の撮像箇所で撮像が実行されること、照明B(バックライト52)により、中間を除く2か所の撮像箇所で撮像が実行されることが示されている。また、撮像順番をユーザに明示するために、撮像順番105も示されている。この例では、1番目に照明Aを用いて第1の撮像箇所で撮像を実行し、2番目に照明Bを用いて第1の撮像箇所で撮像を実行することが示されている。これによりユーザは1番目と2番目の撮像が終了したときに、検査対象物8を移動させればよいことを理解しやすくなる。
<コネクタ位置ずれ補正>
検査対象物8を搬送装置7で搬送しながら良否判定のための画像を撮像する際に、検査対象物8の位置が理想位置からずれていることがある。ここで、理想位置とは、パターンマッチングのためのモデル画像をカメラ4により撮像したときの良品ワークの配置位置である。良品ワークは手動で正確に配置されるため、カメラ4に対して精度よく位置決めされる。よって、実際の製造ラインにおいて検査対象物8の画像を撮像したときにパターンマッチングおよび良否判定の精度を向上させるためには、撮像した画像を回転させたり、左右上下にシフトしたりといった位置ずれ補正が必要となる。
ところで、上述したように検査対象物8の同一の個所を、照明手法を変えて複数回撮像することがある。たとえば、フロントライト画像61とバックライト画像62とでは検査対象物8を動かさずに同一の個所を撮像しているため、それぞれの位置ずれ量は一致しているはずである。そこで、各撮像箇所の画像でフロントライト画像61から求められた位置ずれ量またはその補正量を用いて、バックライト画像62についての補正量を設定する。コネクタの位置ずれが発生する場合に、後段の検査で正しく検査するためにコネクタの位置を検出し、ずれ量を補正する。
このように、本実施例では、画像処理部30が、検査対象物8の同一箇所を撮像した複数の画像について1つの画像から位置ずれの補正量を求め、求めた補正量で複数の画像のそれぞれの位置を補正し、補正した画像を用いて良否判定を実行する。
図13は、複数の画像処理ツールのカテゴリーを示したツールカタログ111からコネクタカテゴリー108がマウスによって選択され、さらに、画像処理ツールとしてコネクタ位置ずれ補正が選択されたことを示す図である。
図14、図15、図16は、コネクタ位置ずれ補正に必要となるパラメータを設定するためのUIを示している(図14〜図16は、それぞれ画像1A〜3Aに対応するUI)。ここでは、2つのサーチ領域112がマウス9によって設定される。図14の右方に示されるように、ユーザによって事前にモデル画像(サーチパターン)が登録されており、マウス9によってサーチ領域112が設定されると、サーチ領域112内にモデル画像とパターンマッチする部分があるか否かをリアルタイムでサーチする。そして、モデル画像が見つかった場合には、検査領域113として画面上に表示されている。すなわち、図14では、サーチ領域112内でモデル画像が見つかり、検査領域113が表示されている。ここで、サーチ領域112は、モデル画像を移動させることができる範囲を示す領域である。検査領域113は、パターンマッチングの対象となる部分(モデル画像)を含む領域である(上述したように、図14では、モデル画像が見つかった領域)。2つのサーチ領域112を設定する理由は、検査対象物の製造上の公差を考慮するため、或いは、検査対象物の搬送時の位置/傾きのずれを精度良く補正するためである。2つのサーチ領域112において、2つの検査領域113の位置が判明すれば、これらからコネクタ位置の位置ずれ量を算出できる。
図14、図15、図16が示すように、位置ずれ補正のための2つのサーチ領域112と、2つの検査領域113とが、コネクタの左端部、中間部、右端部のそれぞれに設定される。コネクタの左端部、中間部、右端部での位置ずれ量は同じである場合があるため、左端部、中間部、右端部の一か所のみから位置ずれ量を求めてもよい。ただし、位置ずれ補正の精度を向上するために、左端部、中間部、右端部の3か所から位置ずれ補正量を求めてもよい。
図17は、コネクタ位置ずれ補正のための設定が終了したことを示すUIの一例である。画像処理部30は、マウス9によって設定されたパラメータを使用して、カメラ4が撮像した良品に対して位置ずれ補正を実行し、位置ずれ補正に成功すると、成功を示すOKマーク114をモニタ10に表示してもよい。
<コネクタ寸法検査ツールの追加>
図18は、複数の画像処理ツールのカテゴリーを示したツールカタログ111からコネクタカテゴリー108がマウスによって選択され、さらに、画像処理ツールとしてコネクタ寸法検査ツール109が選択されたことを示す図である。コネクタ寸法検査ツール109を示すボタンがクリックされると、設定画面に遷移する。設定画面に遷移するために、さらに追加ボタンがクリックされてもよい。
●画像連結パラメータの設定
コネクタ寸法検査ツールの設定項目の1つとして画像連結パラメータが存在する。なお、画像を連結しない場合は、このパラメータの設定は不要である。
図19は、画像の連結点を設定する設定画面を示している。この画面では、画像の並び順116と、連結手法を指定する連結方法117とをマウス9によって選択できる。たとえば、画像の並び順116として「左→右」を選択すると、検査対象物8を左から右に画像が撮像されたことを示している。連結方法117として「ピン列で連結」を選択すると、画像処理部30は、各画像からピン列を検出し、ピン列が全体として一列になるように複数の画像を連結する。
●ピン列検出パラメータの設定
図20は、ピン列検出パラメータの設定画面を示している。この例では、ピンの配置118は、ピンが何列にわたって配置されているかを設定するための設定項目である。1番ピンの位置119は、一列に並んだ複数のピンのうちどのピンが1番ピンであるかを設定するための設定項目である。この例では、検査対象物8であるコネクタは2列であるため、ピンの配置118は、「2列」がマウス9によって選択される。
●ピンモデルの登録
コネクタは多数のピンを備えており、すべてのピンについて検査を実行する必要がある。そこで、検査対象の各ピンのモデル画像とその位置を良品判定用に登録しておく必要がある。
図21は、ピンモデルの登録画面を示している。CPU22は、登録画面内において、コネクタの左端の画像53を拡大表示する。これは、ピンモデルを登録しやすくするためである。ユーザは、1番ピン63を含むように検査領域113を設定する。CPU22は、検査領域113により囲まれた部分の画像をモデル画像としてメモリに格納する。検査領域113の位置と大きさはマウス9の操作に連動してCPU22によって変更される。
図22は、ピン検出の設定画面を示している。CPU22は、検査領域113の中心に基準点120を配置し、検査領域113を取り囲むようにサーチ領域112を配置する。検査領域113の位置、基準点120の位置およびサーチ領域112の位置はCPU22によってメモリに格納される。なお、上述したように、検査領域113は、サーチ領域112内において、図21で設定したモデル画像とパターンマッチした結果、検出された領域を示している。つまり、図22では、検査領域113は、モデル画像とパターンマッチした検出結果を示す。
上述したように、すべてのピンに対してサーチ領域112、検査領域113、基準点120などを設定しなければならない。しかし、この設定作業を手作業に任せると、ユーザは多大な負担を負うことになる。そこで、本実施例では、ユーザが設定項目の1つであるピン数121をマウス9で設定することにより、2番ピン以降の各ピンについてのサーチ領域112、検査領域113、基準点120の設定を半自動化できる。CPU22は、入力されたピン数121に応じて、サーチ領域112、検査領域113、基準点120を右方向にコピーすることで、6つあるピンのそれぞれに、サーチ領域112、検査領域113、基準点120を設定する。これは、各ピンが等間隔で配置されており、各ピンの大きさも一致していることを前提としている。各ピンにCPU22によって設定されたサーチ領域112、検査領域113、基準点120を、ユーザはマウス9によって微調整してもよい。CPU22は、マウス9からの入力にしたがってサーチ領域112、検査領域113、基準点120の座標(位置)を修正し、メモリに格納する。
図23、図24は、コネクタの中間部および右端部についてのサーチ領域112、検査領域113、基準点120の設定画面を示している。コネクタの中間部および右端部も左端部と同様の手順で、サーチ領域112、検査領域113、基準点120が設定される。つまり、CPU22は、一番ピンのサーチ領域112、検査領域113、基準点120のデータとピン数121を利用して、コネクタの中間部および右端部の各ピンにサーチ領域112、検査領域113、基準点120を設定する。
図25は、一列目のピンモデルの登録が完了したことを示す画面を示している。この画面では、コネクタの全体画像122がサーチ領域112、検査領域113、基準点120とともに表示される。なお、CPU22は、入力されたピン数を合計して総ピン数123をモニタ10に表示してもよい。
なお、図21ないし図25では、一列目のピンについて説明したが、2列目のピンについても同様の手順でピン登録を実行できる。
●端検出パラメータの設定
コネクタの外観検査を実行する際には、上述したように、コネクタの端(角)の位置を検出する必要がある。なお、コネクタハウジングの両端に金具などが設けられている場合は、角の代わりにこの金具を端として検出してもよい。この場合は、金具に対して、サーチ領域、検査領域、検出点(基準点)を設定すればよい。
図26は、コネクタの端検出に関する設定を行う設定画面を示す図である。コネクタの種類によって検出すべき端の数は異なる。そこで、追加ボタン124をマウス9で押すことで、必要な数の端を設定する。
図27は、端検出の対象となる端を選択する選択項目125を示している。コネクタの種類によっては、コネクタに設けられた金属を端とすべき場合や、コネクタのハウジングを端とすべき場合や、コネクタを搬送するための治具を端とすべき場合などがある。そこで、ユーザは、検査対象物8となっているコネクタの種類に応じて、選択項目125からマウス9の操作によって端検出の対象を選択する。
図28は、端検出用のサーチモデルの登録画面を示す図である。ワーク左端を設定するために、画像選択部126からマウス9によってコネクタの左端のフロントライト画像(撮像1A)が選択される。CPU22は、左端の画像を拡大表示し、サーチモデルを登録しやすくする。マウス9の操作によって端を含む検査領域127が設定される。CPU22は、モデル登録ボタン228が押し下げされたことを検出すると、その時点で設定された検査領域127の位置と検査領域127によって囲まれたモデル画像をメモリに格納する。
図29は、サーチ領域128の設定画面を示している。CPU22は、マウス9の操作にしたがって設定された矩形の領域を端検出用のサーチ領域128に設定する。ここで、CPU22は、モデル登録された検査領域127のモデル画像を、サーチ領域128内でサーチを実行し、モデル画像が見つかったかどうかを判定する。図29に示すように、背景とハウジングとのコントラストが低い場合、端検出に失敗してしまう。
そこで、本実施例では、バックライト画像を用いて端検出用のパラメータを設定する。
図30は、端検出用のサーチモデルの登録画面を示す図である。画像選択部126からマウス9によってコネクタの左端のバックライト画像(撮像1B)が選択される。CPU22は、左端のバックライト画像を拡大表示し、サーチモデルを登録しやすくする。マウス9の操作によって端を含む検査領域127が設定される。CPU22は、モデル登録ボタン228が押し下げされたことを検出すると、その時点で設定された検査領域127の位置と検査領域127によって囲まれたモデル画像をメモリに格納する。
図31は、サーチ領域128の設定画面を示している。CPU22は、マウス9の操作にしたがって設定された矩形の領域を端検出用のサーチ領域128に設定する。ここで、CPU22は、モデル登録された検査領域127のモデル画像を、サーチ領域128内でサーチを実行し、モデル画像が見つかったかどうかを判定する。図31に示すように、背景とハウジングとのコントラストが高い場合、端検出に成功する。基準点を指定するための基準点指定ボタン130がマウス9によってクリックされると、CPU22は、基準点の指定画面をモニタ10に表示させる。
図32、図33は、基準点131の指定画面を示す図である。とりわけ、図32は、微調整前の基準点131を示し、図33は、微調整後の基準点131を示している。CPU22は、基準点131を検査領域127の中間に配置する。ユーザはマウス9を操作することで基準点131を微調整し、CPU22は、微調整後の基準点131の位置をメモリに格納する。
なお、コネクタの右側の端であるワーク右端についても、ワーク左端と同様の手順で検査領域127、サーチ領域128および基準点131が設定される。
図34は、ワーク左端とワーク右端とが正常に設定されたことを示す画面である。この例では、バックライト画像を利用して、ワーク左端とワーク右端とが設定されていることが示されている。
●基準線の設定
図35は、基準線81を設定する設定画面を示している。追加ボタン(編集ボタン)140をクリックすると、基準線81の各パラメータを設定する詳細設定画面に遷移する。
図36は、基準線81の指定方法の選択項目141を示している。ここでは、検査対象物8であるコネクタに対してどのような線を基準線81とするかをマウス9によって指定する。
図37は、選択項目141から「ハウジングの両端を結んだ線」が基準線81として指定されたときの画面を示す図である。上述したように、バックライト画像を使用してハウジングの両端(ワーク左端とワーク右端)があらかじめ設定されている。そこで、CPU22は、「ハウジングの両端を結んだ線」が基準線81として指定されると、ワーク左端とワーク右端とを通るように基準線81を設定する。なお、ワーク左端は、基準点131に対応している。なお、図示は省略しているがワーク右端も基準点によって設定されている。
●寸法測定パラメータの設定
ここでは、コネクタの寸法のうち、どの部分の寸法を測定対象にするかを設定する。
図38は、寸法測定パラメータを設定するメイン画面を示す図である。項目選択ボタン150をマウス9でクリックすることで、測定すべき寸法をユーザが選択できる。
図39は、寸法測定パラメータを設定するための項目選択画面を示す図である。ここでは、コネクタのどの部分を測定するかをカテゴリー別に示した寸法測定カテゴリー151と、選択された寸法測定カテゴリーに対応した1つ以上の測定項目を示す測定項目一覧152とが表示される。CPU22は、マウス9によって選択されたカテゴリーに応じて測定項目一覧152を切り替える。図39に示した例では、ハウジングが寸法測定カテゴリー151から選択されると、ハウジングに関する種々の測定項目が示される。ハウジング高さは、基準線を起点としたハウジングの高さである。ハウジング距離は、ハウジングの左端から右端までの距離である。ハウジング・ピン(端)間距離は、ハウジングの端から端のピンまでの距離である。ハウジング金具距離は、ハウジングから金具までの距離であって、たとえば、ハウジングの端から金具の中心までの距離である。マウス9により測定項目一覧152から選択された測定項目が実際に実行される測定項目として追加される。
図40は、選択された測定項目について良否判定に使用されるパラメータを設定する画面を示している。パラメータ設定部160では、1列目のピンについてのハウジング・ピン(端)間距離についての設計上の標準値と正負の公差がマウス9を通じて入力される。CPU22は、標準値と公差とから寸法の上限値と下限値とを算出してパラメータ設定部160に表示してもよい。また、CPU22は、画像処理部30を用いて、ワーク画像から実際に寸法を測定し、1番ピンについての測定値と17番ピンについての測定値との平均値を求めて表示したり、最小値と最大値とを表示したりしてもよい。
図41は、選択された測定項目について良否判定に使用されるパラメータを設定する画面を示している。パラメータ設定部161では、2列目のピンについてのハウジング・ピン(端)間距離についての設計上の標準値と正負の公差がマウス9を通じて入力される。CPU22は、標準値と公差とから寸法の上限値と下限値とを算出してパラメータ設定部161に表示してもよい。また、CPU22は、画像処理部30を用いて、ワーク画像から実際に寸法を測定し、1番ピンについての測定値と17番ピンについての測定値との平均値を求めて表示したり、最小値と最大値とを表示したりしてもよい。
図42は、寸法測定パラメータを設定するための項目選択画面を示す図である。ここでは、寸法測定カテゴリー151からピン高さが選択されているため、測定項目一覧152には、ピン高さに関する測定項目が表示される。ユーザはマウス9により測定項目をクリックして選択する。ここでは、基準線からのピン高さが選択されたものとする。
図43は、選択された測定項目について良否判定に使用されるパラメータを設定する画面を示している。測定項目をわかりやすくするために、画像表示部162には、ワーク画像とともに、基準線、基準点、ピン番号、どの部分が測定されるかを示すマークなどが表示される。ここでは、ワーク画像として、フロントライト画像とバックライト画像の両方が表示される。パラメータ設定部163では、1列目のピンについてのピン高さについての設計上の標準値と正負の公差がマウス9を通じて入力される。CPU22は、標準値と公差とから寸法の上限値と下限値とを算出してパラメータ設定部163に表示してもよい。また、CPU22は、画像処理部30を用いて、ワーク画像から実際に寸法を測定し、1番ピンから17番ピンまで各ピンについて測定値の平均値を求めて表示したり、最小値と最大値とを表示したりしてもよい。これらの数値からワーク画像を撮像するために用いたワーク(製品)が適切であったかどうかを確認しやすくなろう。
図44は、選択された測定項目について良否判定に使用されるパラメータを設定する画面を示している。パラメータ設定部164では、2列目のピンについてのピン高さについてのパラメータが入力される。CPU22は、パラメータ設定部164に入力された標準値と公差とから寸法の上限値と下限値とを算出してパラメータ設定部164に表示してもよい。また、CPU22は、画像処理部30を用いて、ワーク画像から実際に寸法を測定し、2列目の1番ピンから17番ピンまで各ピンについて測定値の平均値を求めて表示したり、最小値と最大値とを表示したりしてもよい。
<画像連結の変形例>
上述した実施例では、隣り合った画像間で共通のピンが1つ以上含まれるように撮像を実行し、共通のピンを重ね合わせるようにして隣り合った2枚の画像を連結することで、検査対象物8の全体画像をCPU22または画像処理部30が作成するものとして説明した。しかし、隣り合った画像間で共通に含まれるべき部分は検査対象物8の一部である必要はない。つまり、治具やベルトコンベヤなど検査対象物8とともに移動する部材に連結の基準となるマークが付与されていてもよい。
図45は、複数の画像を連結するための基準となるマークの一例を示す図である。この例では、連結用のマーク170が、検査対象物8を搬送する治具に設けられている。連結方法117として「任意の点で連結」が選択されると、CPU22は、マーク170を基準として連結を実行できるようになる。
図46は、画像連結の基準となるマーク170を設定する設定画面を示す図である。CPU22は、コネクタの左端画像を拡大表示することで、基準点171、検査領域およびサーチ領域を設定しやすくしている。ユーザは、マウス9を操作することで、マーク170の中心に基準点171を設定する。さらに、CPU22は、基準点171を中心として検査領域およびサーチ領域を設定する。CPU22は、マウス9の操作にしたがって基準点171を微調整したり、検査領域およびサーチ領域の位置とサイズとを調整したりしてもよい。
図47は、画像連結の基準となるマーク170を設定する設定画面を示す図である。CPU22は、コネクタの中間部の画像を拡大表示することで、左端画像と中間部の画像とを連結するための基準となる基準点172、検査領域およびサーチ領域と、中間部の画像と右端画像とを連結するための基準となる基準点173、検査領域およびサーチ領域とを設定しやすくしている。ユーザは、マウス9を操作することで、左側のマーク170の中心に基準点172を設定し、右側のマーク170の中心に基準点173を設定する。さらに、CPU22は、基準点172および基準点173を中心としてそれぞれ検査領域およびサーチ領域を設定する。CPU22は、マウス9の操作にしたがって基準点172、173を微調整したり、検査領域およびサーチ領域の位置とサイズとを調整したりしてもよい。
図48は、画像連結の基準となるマーク170を設定する設定画面を示す図である。CPU22は、コネクタの右端画像を拡大表示することで、中間画像と右端画像とを連結するための基準となる基準点174、検査領域およびサーチ領域を設定しやすくしている。ユーザは、マウス9を操作することで、マーク170の中心に基準点174を設定する。さらに、CPU22は、基準点174を中心として検査領域およびサーチ領域を設定する。CPU22は、マウス9の操作にしたがって基準点174を微調整したり、検査領域およびサーチ領域の位置とサイズとを調整したりしてもよい。
図49は、マーク170を基準として連結されたフロントライト画像とバックライト画像とを示している。コネクタの左端画像、中間部の画像および右端画像を連結する際に、画像処理部30は、基準点171と基準点172とが重なるように、左端画像と中間部の画像を連結する。さらに、画像処理部30は、基準点173と基準点174とが重なるように、中間部の画像と右端画像とを連結する。これにより、検査対象物8の全体が収まった連結画像(全体画像)が作成される。フロントライト画像とバックライト画像とでは座標系が一致しているため、フロントライト画像の連結位置を基準として、バックライト画像についても同様に連結できる。なお、図49に示したように、バックライト画像については左端画像と右端画像しか存在しない場合は、フロントライト画像の左端画像と、バックライト画像の左端画像との各原点(画像の左上の角)が一致させる。また、フロントライト画像の右端画像と、バックライト画像の右端画像との各原点(画像の左上の角)も一致させる。これにより、図49に示したように、コネクタの全体を示したフロントライト画像とバックライト画像とが作成される。
<ピンやハウジングの検出方法>
上述の実施例は、モデル画像を用いたパターンマッチングを用いて検査対象物8のハウジングやピンを検出する例であった。しかし、必ずしもモデル画像は必要ではない。
図50は、エッジ検出を利用したピンの検出方法を示す図である。画像処理部30は、エッジ検出を実行することで、複数の横方向のエッジや縦方向のエッジを検出する。そして、検出された所定方向のエッジの中間位置(中心位置)が基準点200として自動設定される。画像処理部30は、基準点200から各エッジまでの距離を算出し、その距離が所定距離(一定の公差範囲内であれば許容される)であるエッジの組み合わせをサーチする。この例では、ピン41の左端に相当するエッジ201と右端に相当するエッジ202とが、ピンの検出条件に合致するエッジとして認識される。同様に、画像処理部30は、ピン41の上端に相当するエッジ203とし下端に相当するエッジ204とを、ピンの検出条件に合致するエッジとして認識する。これらは、基準点200からの距離がピンの検出条件に合致しているからである。このように、画像処理部30は、画像の全体についてエッジ検出を実行することで、各ピンの位置を検出できる。
図51は、エッジ検出を利用したハウジングの検出方法を示す図である。画像処理部30は、複数の横方向のエッジや縦方向のエッジを検出し、基準点210において直交するエッジ211とエッジ212を抽出する。ここで、エッジ211とエッジ212は最も外側に位置するエッジである。基準点(交点)210は、エッジ211とエッジ212が抽出された後、エッジ211とエッジ212が交差する点として自動設定される。このような検出条件を予め設定しておくことで、画像処理部30は、エッジ検出を利用してハウジングの端を検出してもよい。
<検査対象物の一部を変更したときのパラメータの再設定処理>
検査対象物である製品が、ある製品から別の製品に変更されるときは、上述した各種のパラメータのすべてを再設定しなければならない。従来は、検査対象物の一部が変更されるときにまで、すべてを再設定する必要があった。なお、検査対象物の一部が変更される場合としては、たとえば、検査対象物を構成している複数のパーツのうち一部のパーツの部材(素材または色など)が変更されたり、極数(ピンや端子の数など)が変更されたりする場合がある。コネクタハウジングの素材が変更されると、コネクタハウジングの色が画像上で変更されたように見える。同様に、ピンのメッキが変更されると、ピンの色が画像上で変更されたように見える。これは、画像認識処理に影響を与えることがある。同一の製品であっても、原料の調達先が変わることで、画像認識に影響を与えるような画像の違いが生じる。また、製品の金型は日々摩耗によって変化して行くため、製品を構成する各部のパーツのサイズなどが影響を受けることもある。よって、金型の変化をパラメータに反映させる必要がある。このようなパラメータの設定を最初から1つずつ設定しなおすのは、ユーザにとって作業負担が重いであろう。一方で、ピン数が異なるだけで、ピンの形状やハウジングの端部の形状は共通している複数の製品について、一方の製品のパラメータを他方の製品のパラメータに流用できれば便利であろう。
熟練したユーザであれば、一方の製品のパラメータを修正して他方の製品のパラメータを作成できるかもしれない。たとえば、ピンのメッキが変更される場合、熟練したユーザであれば、メッキの色の影響を受けるパラメータを経験的に把握しており、必要なパラメータのみを修正できるであろう。しかし、熟練していないユーザでは、多数あるパラメータのうちどのパラメータを製品に合わせて修正すればよいかを判断できない。したがって、検査対象物の一部が変更されたときに、パラメータの再設定を行うユーザを補助する装置や方法が市場から要求されているといえよう。なお、このような補助は、熟練したユーザにとっても便利であろう。そこで、本実施例では、ユーザの負担を軽減可能なパラメータの設定方法について提案する。とりわけ、本実施例では、一方の製品に対して予め設定されているパラメータを修正(再設定)することで、他方の製品のパラメータを設定する。これにより、一方の製品用のパラメータ群と、他方の製品用のパラメータ群が記憶装置に記憶されて、切り替えて使用されてもよい。
図52は、ユーザに対してパラメータの再設定を誘導するための誘導設定画面の一例を示す図である。ここでは、すでにパラメータを設定済みのコネクタの一例と、すでに設定済みのパラメータの再設定を開始するための調整メニューボタン190とが示されている。このコネクタの両端には金具180が取り付けられており、また、13本のピン181が設けられている。金具180には、端サーチ用のパラメータとして検査領域127が設定されており、ピン181にもピンサーチ用の検査領域113が設定されている。なお、サーチ領域、基準点、基準線、基準画像およびモデル画像などの他のパラメータも設定されているものとする。ユーザは、検査対象物の一部が変更されたことによるパラメータの再設定処理を開始するために、調整メニューボタン190をマウス9により押し下げ操作する。
図53は、調整メニューボタン190を操作したときに表示される誘導設定画面の一例を示す図である。部材変更タブ191は、検査対象物8の部材が変更されるときに、マウス9によって選択されるタブである。部材変更タブ191には、部材を変更することで再設定することが必要となったり、確認が必要となったりするパラメータに対応した各種のボタンが配置されている。基準画像の更新ボタン192は、パラメータのひとつである基準画像の更新を開始するためのボタンである。ツール調整ボタン193は、コネクタ位置ずれ補正に関する画像処理ツール用のパラメータの再設定を開始するためのボタンである。コネクタ寸法検査に関するパラメータのうち、ピン181や端部の金具180のモデル画像の更新は必須である。特に、ピンの位置を検出するピンサーチ(ピン検出)と、コネクタの端を検出する端サーチ(端検出)に関しては、ピンや金具の素材や色の変更が検出精度に影響を与える。
その一方で、画像連結点に関しては、ピンや金具の素材や色の変更の影響はほとんどない。よって、部材変更タブ191には、ピン検出のパラメータを再設定するためのピン検出ボタン194と、端検出のパラメータを再設定するための端検出ボタン195とが設けられている。なお、画像連結点ボタンについてはグレーアウトされ、操作を禁止されている。部材が変更されたとしても、画像の連結点は変更されないからである。なお、本実施例では、画像連結点を非活性としているが、これを活性としても構わない。たとえば、任意点で画像を連結する場合には、画像連結点ボタンが活性化される。部材変更ガイドメッセージ196には、部材変更の意味、それにより影響を受けるパラメータの説明、部材変更の具体例であるメッキが異なる2つのコネクタのアイコンなどが含まれている。
図54は、調整メニューボタン190を操作したときに表示される誘導設定画面の一例を示す図である。極数展開タブ220は、検査対象物8の極数が変更されるときに、マウス9によって選択されるタブである。極数展開とは、同種の製品についてのパラメータを極数に応じて再生設定することである。極数展開タブ220には、画像連結用の複数の部分画像を取得するための撮像回数の再設定を開始する複数回撮像の設定ボタン221、基準画像を更新するための基準画像の更新ボタン222などが配置されている。また、検出領域の調整ボタン223は、コネクタ位置ずれ補正に関するピン181の検査領域113に関するパラメータの再設定を開始するためのボタンである。ピン数の変更ボタン224は、ピン63の数を変更するためのボタンである。ピン検出ボタン225は、ピン検出のパラメータを再設定するためのボタンである。端検出ボタン226は、端検出のパラメータを再設定するためボタンである。極数展開ガイドメッセージ227には、極数展開の意味、変更前のパラメータをコピーして保存することを促すメッセージ、極数展開の具体例であるピン数が異なる2つのコネクタのアイコンなどが含まれている。
このように、本実施例では、予め設定された複数のパラメータのうち、検査対象物の一部の変更に関連したパラメータを再設定するための設定画面を表示することで、当該パラメータの再設定を実行するようユーザを誘導できる。つまり、ユーザは、調整メニューボタン190を操作することで検査対象物の一部が変更されたことを制御部に入力することで、ユーザは、再設定が必要となるパラメータの設定画面へ誘導される。よって、ユーザの負担が軽減されるであろう。
なお、パラメータを再設定するための設定画面は、最初にパラメータを設定した際の設定画面と同じになるようにしてもよい(いわゆるショートカット機能)。たとえば図53において、ツール調整ボタン193をクリックすると、図14〜図17に示したいずれかの設定画面が表示されてもよい。その他、基準画像の更新ボタン192、ピン検出ボタン194、225、端検出ボタン195、226、ピン数の変更ボタン224、検出領域の調整ボタン223、複数回撮像の設定ボタン221、基準画像の更新ボタン222についても同様である。要するに、過去に設定済みのパラメータを再設定するために、過去にパラメータ設定した際の設定画面に関連付けられた選択部(各種ボタン)をモニタ10に表示し、ユーザに対して選択部を操作させるようにしてもよい。このような構成とすることで、再設定用の新たな設定画面を保持しておく必要がなく、ソフトウェアの容量を抑えることができる。また、ユーザは、一度視認したことのある設定画面を再び呼び出し(しかも、表示された選択部を操作していくだけで、再設定が必要な設定画面のみを呼び出して)、パラメータの再設定を行うことができるので、パラメータの再設定に対して戸惑うことがなく、ユーザビリティや操作性を向上することができる。
<内部処理について>
以下ではCPU22や画像処理部30で実現されている機能について説明する。なお、各機能は、CPU22だけで実現されてもよいし、画像処理部30だけで実現されてもよいし、CPU22と画像処理部30との連携動作によって実現されてもよい。
図55は、外観検査装置1の機能ブロック図である。図2を用いてすでに説明したように、照明装置5は、検査対象物8に対して複数の異なる照明光を照射する照明部として機能する。照明制御部26が、CPU22または画像処理部30からの指示にしたがって照明装置5が照射する照明光を切り替えるように照明装置5を制御する。カメラ4は。照明装置5によって照明光を照射された検査対象物8を撮像する撮像部として機能する。また、外観検査装置1は、カメラ4により取得された検査対象物8の画像に対して計測処理を実行する装置である。
撮像制御部301は、フロントライトやバックライトなど照明光の切り替えを照明制御部26に命令したり、カメラ4に撮像を命令したりする制御部である。撮像制御部301は、検査対象物8を分割して撮影する際のカメラ4の制御や照明装置5の制御も担当する。
第1の画像記憶部304は、照明装置5により第1の照明光(例:フロントライト)が照射された検査対象物8の所定の領域(例:コネクタの全体やコネクタの左端、中間、右端など)をカメラ4が撮像して取得した第1の画像(例:フロントライト画像やその部分画像など)を記憶する。第2の画像記憶部305は、照明装置5により第2の照明光(例:バックライト)が照射された検査対象物8の所定の領域をカメラ4が撮像して取得した第2の画像(例:バックライト画像やその部分画像など)を記憶する。なお、第1の画像記憶部304や第2の画像記憶部305は、たとえば、ワークメモリ23により実現される。表示制御部28やモニタ10は、第1の画像と第2の画像とを表示する表示部として機能する。
UI制御部310は、上述したUI60などの表示系のユーザインタフェースやマウス9やキーボードなどの入力系のインタフェースを制御する。UI制御部310は、さらに種々の機能部に分かれている。パラメータ設定部330は、基準画像などの基本画像に対して計測対象となる部位の画像であるモデル画像と計測処理に必要となる数値とを含む複数のパラメータを設定する。パラメータ設定部330もさらに種々の機能部に分かれている。図21ないし図25などを用いて説明したように、第1の計測対象設定部311は、モニタ10に表示されている第1の画像と第2の画像とのうちの一方の画像において、検査対象物8に関する寸法を計測するための起点となる特徴部分(例:ピンの検出点)を設定する。
図30ないし図37を用いて説明したように、第2の計測対象設定部312は、モニタ10に表示されている第1の画像と第2の画像とのうちの他方の画像において、検査対象物8に関する寸法を計測するための終点となる特徴部分(例:ハウジングの角を検出するための検出点や複数の検出点間を結ぶ基準線など)を設定する。第1の計測対象設定部311や第2の計測対象設定部312により設定されたモデル画像、基準点、基準線などのデータは、特徴データ記憶部306に格納される。特徴データ記憶部306もワークメモリ23によって実現される。
寸法算出部302は、カメラ4によって撮像されて取得された、ラインを搬送される検査対象物8の画像に対して、複数のパラメータを使用して、検査対象物8についての計測処理を実行する計測処理部として機能する。たとえば、寸法算出部302は、第1の計測対象設定部311により設定された起点となる特徴部分から第2の計測対象設定部312により設定された終点となる特徴部分までの寸法を算出する。ここで、寸法とは、距離や面積などである。
UI制御部310は、検査対象物8の外観の良否を判定するための閾値を設定する閾値設定部313を有していてもよい。良否判定部303は、計測処理部の計測結果(寸法算出部302により算出された寸法と閾値との比較結果など)に基づいて、検査対象物8の外観の良否を判定する。たとえば、寸法算出部302が複数のピンについて求めたピン高さが、閾値設定部313により公差や標準値から求められた上限値を超えている場合、良否判定部303は、不良と判定する。
図6などを用いて説明したように、UI制御部310は、第1の画像の横方向の端部と第2の画像の横方向の端部とが一致するように第1の画像と第2の画像とを同時にモニタ10が表示するようユーザインタフェースの表示データを作成し、表示制御部28に渡す。つまり、UI制御部310は、モニタ10が、第1の画像の横方向の端部と第2の画像の横方向の端部とを揃えて第1の画像と第2の画像とを上下に並べて表示するように表示データを作成する。また、UI制御部310は、第1の画像と第2の画像とのうちの一方の画像に対して設定された起点となる特徴部分を示す指標(例:サーチ領域、検査領域、検出点を示す十字マークなど)を、第1の画像と第2の画像とのうちの他方の画像に対しても連動して表示するように表示データを作成するようにしてもよい(少なくとも、検出点を示す十字マークが連動して表示されるようにするのが好ましい)。なお、UI制御部310は、第1の画像と第2の画像とのうちの他方の画像に対して設定された終点となる特徴部分を示す指標を、第1の画像と第2の画像とのうちの一方の画像に対しても連動して表示するための表示データを作成してもよい。このように、UI60においては、サーチ領域、検査領域、検出点を示す十字マークなどは、フロントライト画像とバックライト画像との間で連動して表示されることになる。たとえば、UI制御部310は、バックライト画像を用いて設定したサーチ領域、検査領域、検出点をそのままフロントライト画像にも設定して表示する。バックライト画像の原点をバックライト画像の左上角とし、フロントライト画像の原点をフロントライト画像の左上角とすると、バックライト画像を用いて設定したサーチ領域、検査領域、検出点の座標と、フロントライト画像におけるサーチ領域、検査領域、検出点の座標とを一致させる。これにより、UI制御部310は、フロントライト画像の原点をフロントライト画像の左上角とすると、バックライト画像を用いて設定したサーチ領域、検査領域、検出点と、フロントライト画像におけるサーチ領域、検査領域、検出点とを連動して表示させることができる。
第1の計測対象設定部311および第2の計測対象設定部312は特徴部分として、画像上の一か所以上の座標である基準点82、85、120、131、171、172、173、174、200、210を設定する。
図21などを用いて説明したように、UI制御部310は、モニタ10が一方の画像を拡大表示するための表示データを作成してもよい。第1の計測対象設定部311は、モニタ10に拡大表示された一方の画像に、マウス9の操作にしたがって特徴部分を設定する。
図30などを用いて説明したように、UI制御部310は、モニタ10が他方の画像を拡大表示するための表示データを作成してもよい。第2の計測対象設定部312は、モニタ10に拡大表示された他方の画像に、マウス9の操作にしたがって特徴部分を設定する。
図35ないし図37を用いて説明したように、第2の計測対象設定部312は、他方の画像に対して指定された2つの基準点を結ぶ直線である基準線81を特徴部分として設定してもよい。とりわけ、ハウジング40の角を基準点として設定する場合、フロントライト画像では角の検出が難しくなってしまう。そこで、バックライト画像に対して、ハウジング40の角を基準点として設定することで、角の位置を正確に検出できるようになる。また、これにより、ピンの中心から角までの距離も精度よく算出できるようになる。さらに、製品の良否判定の精度も向上することになる。
図5などを用いて説明したように、画像連結部321は、カメラ4が検査対象物8を複数回に分割して撮像して得られた複数の部分画像を撮像された順番にしたがって左から右に並べて連結して第1の画像および第2の画像を作成する。ここで、画像連結部321は、第1の画像を構成する複数の部分画像の連結位置(例:共通に写っているピンの位置やマークの位置)の座標を用いて、第2の画像を構成する複数の部分画像を連結してもよい。なお、UI制御部310は、第1の画像において連結位置を設定する連結位置設定部314をさらに備えていてもよい。連結位置設定部314は、隣り合った部分画像に共通に写っている検査対象物のパーツ(例:ピンや金具など)の位置を連結位置に設定してもよい。図45ないし図49を用いて説明したように、連結位置設定部314は、隣り合った部分画像に共通に写っている検査対象物を固定する治具の一部(例:マーク170)の位置を連結位置に設定してもよい。
画像連結部321は、検査対象物8の左端の部分画像と右端の部分画像とを第2の画像の両端に配置し、検査対象物8の中間の画像を省略して、第2の画像を作成してもよい。
図52において、画像認識部322は、UI制御部310を通じて設定された検査対象物8の良品の一部を示すモデル画像と、カメラ4により取得されたラインを流れる検査対象物8の画像とを比較し、モデル画像と一致する部分をパターン認識により特定する。画像認識部322は、予め設定されたサーチ領域の範囲内でモデル画像をサーチする。モデル画像と同サイズの画像領域が検査領域となる。なお、モデル画像と一致した検査領域の中心が基準点となる。なお、UI制御部を通じて基準点が微調整されていることもある。サーチ領域の座標データや基準点(検出点)の座標データは特徴データ記憶部306に記憶されており、画像認識部322や画像連結部321、座標計算部323によって使用される。座標計算部323は、マウス9のポインタの位置を示す座標データと、バックライト画像やフロントライト画像の座標データとからサーチ領域、検査領域および基準点の座標を算出する。
変更受付部331は、調整メニューボタン190、部材変更タブ191および極数展開タブ220などを通じて検査対象物8の一部の変更を受け付ける。再設定誘導部332は、パラメータ設定部330により設定された複数のパラメータのうち、変更受付部331が受け付けた検査対象物8の一部に予め関連付けられているパラメータを再設定するための設定画面をモニタ10に表示することで、当該パラメータの再設定を実行するようユーザを誘導する。再設定誘導部332は、たとえば、図52に示した調整メニューボタン190がマウス9により操作されたことを検知すると、図53に示したUIの表示データを表示データ作成部334に作成させ、当該UIをモニタ10に表示させる。なお、デフォルトでは、部材変更タブ191が選択されており、部材変更タブ191の内容が表示される。この状態で、極数展開タブ220がマウス9により操作されたことを検知すると、再設定誘導部332は、図54に示した極数展開タブ220の内容を表示する。このように、ユーザはタブをマウスにより選択することで、検査対象物8の一部の変更が、部材変更であるのかまたは極数展開であるのかを選択できる。対応関係記憶部333は、検査対象物8の変更箇所(変更内容)と、複数のパラメータとの対応関係を予め記憶している。よって、再設定誘導部332は、変更受付部331によって受け付けられた検査対象物8の変更箇所に対して予め関連付けられているパラメータを対応関係記憶部333から読み出し、当該パラメータを再設定するための設定画面へ誘導するための設定誘導画面(例:図53、図54)を表示するための表示データを表示データ作成部334に作成させる。たとえば、部材変更タブ191が選択されると、表示データ作成部334は、対応関係記憶部333を参照して部材変更に対応付けられているパラメータを特定する。たとえば、部材変更に対して基準画像、コネクタ位置ずれ補正、コネクタ寸法検査などのパラメータが関連付けられていれば、表示データ作成部334は、部材変更タブ191に対して、基準画像の更新ボタン192、ツール調整ボタン193、ピン検出ボタン194および端検出ボタン195を配置する。たとえば、極数展開タブ220が選択されると、表示データ作成部334は、対応関係記憶部333を参照して部材変更に対応付けられているパラメータを特定する。たとえば、極数展開に対して、複数回撮像、基準画像、コネクタ位置ずれ補正、コネクタ寸法検査などのパラメータが関連付けられていれば、表示データ作成部334は、極数展開タブ220に対して、複数回撮像の設定ボタン221、基準画像の更新ボタン222、検出領域の調整ボタン223、ピン数の変更ボタン224、ピン検出ボタン225および端検出ボタン226を配置する。
図56は、部材の変更とパラメータとの対応関係を記憶したテーブルの一例を示す図である。このテーブルには、部材が変更されるときに修正が必要なパラメータと、修正は基本的には必要ないが念のためユーザの確認が必要なパラメータとが示されている。二重丸が付与されたパラメータは丸が付与されたパラメータよりも修正の優先度が高いパラメータである。このように、優先度の高いパラメータについてUIにおいて強調表示したり、より上方に表示したりしてもよい。図56においては、寸法検査におけるピンサーチ設定と端サーチ設定とに二重丸が付与されている。これは、ピンのメッキ(色や素材)が変更されたりすると、パターン認識の精度が低下するため、モデル画像などの更新が必要になることを意味している。なお、このテーブルによって示される対応関係は、ソフトウェア内部で予め定めておいてもよいし(固定関係)、ユーザが調整可能にしてもよい。
図57は、極数展開とパラメータとの対応関係を記憶したテーブルの一例を示す図である。このテーブルには、極数展開を行うときに修正が必要なパラメータと、修正は基本的には必要ないが念のためユーザの確認が必要なパラメータとが示されている。ピン数が増えると、これまでコネクタの全体が1枚の画像に収まっていたものが、1枚の画像では収まらないことがある。よって、複数のパラメータのうち撮像回数は、修正が必要なパラメータとして設定されている。また、極数展開を行うとピン数が変更されため、コネクタの全体のサイズや外観も変更される。よって、基準画像やピン数については、修正が必要なパラメータとして設定されている。
なお、位置ずれ補正をするためのずれ量は、コネクタの端部の画像があれば求められ、コネクタの中間部の画像は必要ない。よって、位置ずれ補正については、極数展開された他の製品において補正基準箇所が同様に使用可能であることを、ユーザが確認するだけで十分である。ただし、位置ずれ補正についてもパラメータ修正させるようにしてもよい。
ピンサーチ設定については、ピン数に応じて、各ピンごとにサーチ領域、検査領域および検出点を自動で設定できるため、ユーザが自動で設定されたパラメータを確認するだけで十分である。端サーチ設定についても、ピン数に応じて、右端についてのサーチ領域、検査領域および検出点を自動で設定できるため、ユーザが確認するだけで十分である。このように自動で設定できるのは、コネクタのピン間隔が等間隔のため、各パラメータの座標データをピン数に応じてシフトするだけで設定可能だからである。ところで、外観検査装置1が一種の寸法測定器であるため、光学顕微鏡の結果をもとに校正が必要となる。よって、レンズ収差、照明の当たり方などをピンごとに補正している場合は、寸法補正は確認が必要なパラメータとなる。
図56および図57を用いて説明したように、再設定誘導部332は、検査対象物の一部の変更に予め関連付けられているパラメータとして、ユーザによって予め定められたまたはデフォルトで定められた優先度が高いパラメータを再設定するための設定画面を表示するようにしてもよい。たとえば図56に示すように、部材の変更がある場合、少なくともピンサーチ設定と端サーチ設定を行うための設定画面(一または複数)を表示するのが好ましい。言い換えると、略同一形状からなる複数の特徴部分が設けられた検査対象物の部材を変更する場合には、少なくとも該特徴部分の探索条件を再設定するための設定画面を表示するようにしてもよい。また、たとえば図57に示すように、極数の変更がある場合、少なくともピン数設定を行うための設定画面(一または複数)、或いは、少なくともピン数設定(と基準画像)の設定を行うための設定画面(一または複数)を表示するのが好ましい。言い換えると、略同一形状からなる複数の特徴部分が設けられた検査対象物の極数(該特徴部分の数)を変更する場合には、少なくとも該特徴部分の数の再設定を行うための設定画面を表示するのが好ましい。
図58は、査対象物の一部が変更されるときのパラメータの再設定方法を示すフローチャートである。
S581で、UI制御部310の変更受付部331は、調整メニューボタン190がマウス9により操作されたことを検知する。
S582で、変更受付部331は、マウス9により操作されたタブを特定することで、変更内容を受け付ける。部材変更タブ191が操作されたときは、部材が変更されることを認識する。また、極数展開タブ220が操作されたときは、ピンなどのパーツの数が変更されることを認識する。
S583で、再設定誘導部332は、対応関係記憶部333を参照し、変更内容に関連付けられているパラメータを特定する。たとえば、部材の変更であれば、基準画像が変更されるべきパラメータとして特定される。極数展開であれば、ピン数などが変更されるべきパラメータとして特定される。
S584で、再設定誘導部332は、特定されたパラメータを修正するようユーザを促すための設定誘導画面(図53や図54に示したUIなど)を表示するための表示データを表示データ作成部334に作成させる。
S585で、再設定誘導部332は、作成された表示データにしたがって設定誘導画面(図53や図54に示したUIなど)をモニタ10に表示させる。
S586で、再設定誘導部332は、設定誘導画面(図53や図54に示したUIなど)に配置されているボタンの操作を検知し、操作されたボタンに対応したパラメータの再設定画面をモニタ10に表示させる。たとえば、ピンサーチ設定を修正する必要があれば、モニタ10には、図21などに設定したUIが表示される。
S587で、パラメータ設定部330は、再設定画面を通じて入力された操作にしたがってパラメータを修正し、特徴データ記憶部306に書き込むことで、パラメータの更新を実行する。
以上説明したように、本実施例によれば、予め設定された複数のパラメータのうち、検査対象物の一部の変更に関連したパラメータを再設定するための設定画面を表示することで、当該パラメータの再設定を実行するようユーザを誘導できる。つまり、ユーザは、検査対象物の一部が変更されたことを入力することで、設定誘導画面により、再設定が必要となるパラメータの設定画面へ誘導されるため、ユーザの負担が軽減される。
対応関係記憶部333が、検査対象物の変更箇所と、複数のパラメータとの対応関係を予め記憶しているため、ユーザはこれらの対応関係について熟知している必要はない。つまり、それほど熟練していないユーザであっても、修正すべきパラメータに対して短時間かつ適切にたどり着けるため、ユーザの負担が軽減される。また、熟練したユーザであっても修正すべきパラメータに簡単にたどり着けるため、やはり便利であろう。
上述した実施例では単純化のために、検査対象物の一部の変更例として、部材変更と極数展開を取り上げたが、より詳細に変更内容を指定できるようにしてもよい。なお、変更受付部331は、検査対象物8の一部を構成するパーツの素材または色(例:ピンのメッキ)の変更を受け付けてもよい。この場合、再設定誘導部332は、基本画像やモデル画像を再設定するよう誘導することになろう。パーツの素材または色の変更はパターン認識に影響を与えるため、パターン認識に必要となる画像などのパラメータは更新される必要がある。
変更受付部331は、検査対象物の一部を構成するパーツの数の変更(極数展開)をタブの操作やボタンの操作を通じて受け付けてもよい。ピン数違いのコネクタなどは市場に多数存在する。よって、ピン数違いのコネクタについて外観検査する機会も多いため、ピン数違いのコネクタについてパラメータを簡単に修正できれば、ユーザにとって非常に便利であろう。なお、再設定誘導部332は、極数展開を実行するときは、パーツの数に加え、基本画像やモデル画像を再設定するよう誘導してもよい。たとえば、ピンの数が変更されると、コネクタの全景が変更されるからである。各ピンのモデル画像については必要に応じて変更されればよいが、基本的には確認のみで十分であろう。
なお、基本画像が複数の部分画像を連結して構成されているときに、再設定誘導部332は、当該部分画像の数を再設定するよう誘導してもよい。極数展開が実行されるときは、コネクタの全長が変更されるため、基本画像を作成するために必要となる部分画像の数が増加することがある。よって、このような場合には、再設定誘導部332が、当該部分画像の数を再設定するよう誘導する。
変更受付部331が受け付けた変更が位置ずれ補正に関与する部分の変更であるときに、再設定誘導部332は、当該位置ずれ補正に必要となるパラメータを変更するようユーザを誘導してもよい。極数展開が実行されるときに、位置ずれ補正に関するパラメータは、基本的に修正は不要であるが、ユーザに確認させて、必要におうじて変更してもよい。
再設定誘導部332は、パラメータとして、モデル画像を用いてパターンサーチが実行される領域の位置、計測処理の基準となる基準点の位置について確認するようユーザを誘導してもよい。ピンサーチ設定や端サーチ設定では、極数展開の影響を受けにくいが、自動で設定されたサーチ領域、検査領域、検出点などが正しいかどうかをユーザが確認できることが望ましい。これにより、ユーザは微調整を実行してもよい。