以下、本発明の実施の形態について、図面を参照して説明する。なお、本実施の形態の説明で参照する図面を通じて、同一又は同様の構成又は機能を有する要素については、同一又は同様の符号を付して、詳細な説明を省略する。
図1は、本発明の実施の形態に係る画像処理装置を含む製品検査システムの構成を示す模式図である。図1に示すように、本実施の形態に係る画像処理装置を含む製品検査システムは、撮像装置(撮像部)1と、撮像装置1とデータ通信することが可能に接続ケーブル3で接続されている画像処理装置2とで構成されている。画像処理装置2は表示装置(図示せず)と接続されており、画像処理制御部201と照明制御部202とを内蔵している。
また、照明制御部202は、照明装置4とデータ通信することが可能に接続ケーブル3で接続されている。コンベア5上を移動してくる検査対象物6は、照明装置4で光が照射され、撮像装置1で撮像される。画像処理装置2は、撮像された検査対象物6の画像に基づいて、検査対象物6が良品であるか不良品であるかを判定する。
撮像装置1は、内部に画像処理を実行するFPGA、DSP等を備えており、検査対象物6を撮像する撮像素子を有するカメラモジュールを備えている。撮像素子としてはCMOS基板を有しており、例えば撮像したカラー画像は、CMOS基板にてダイナミックレンジを広げる変換特性に基づいてHDR画像へ変換される。
図2は、本発明の実施の形態に係る画像処理装置2の構成を示すブロック図である。本発明の実施の形態に係る画像処理装置2は、少なくともCPU(中央演算装置)21、メモリ22、記憶装置23、I/Oインタフェース24、ビデオインタフェース25、可搬型ディスクドライブ26、通信インタフェース27及び上述したハードウェアを接続する内部バス28で構成されている。
CPU21は、内部バス28を介して画像処理装置2の上述したようなハードウェア各部と接続されており、上述したハードウェア各部の動作を制御するとともに、記憶装置23に記憶されたコンピュータプログラム100に従って、種々のソフトウェア的機能を実行する。メモリ22は、SRAM、SDRAM等の揮発性メモリで構成され、コンピュータプログラム100の実行時にロードモジュールが展開され、コンピュータプログラム100の実行時に発生する一時的なデータ等を記憶する。
記憶装置23は、内蔵される固定型記憶装置(ハードディスク)、ROM等で構成されている。記憶装置23に記憶されたコンピュータプログラム100は、プログラム及びデータ等の情報を記録したDVD、CD−ROM等の可搬型記録媒体90から、可搬型ディスクドライブ26によりダウンロードされ、実行時には記憶装置23からメモリ22へ展開して実行される。もちろん、通信インタフェース27を介して接続されている外部コンピュータからダウンロードされたコンピュータプログラムであっても良い。
通信インタフェース27は内部バス28に接続されており、インターネット、LAN、WAN等の外部のネットワークに接続されることにより、撮像装置1、照明装置4、外部コンピュータ等とデータ送受信を行うことが可能となっている。
I/Oインタフェース24は、キーボード501、マウス502等の入力装置と接続され、データの入力を受け付ける。ビデオインタフェース25は、CRTディスプレイ、液晶ディスプレイ等の表示装置503と接続され、所定の画像を表示する。
図3は、本発明の実施の形態に係る画像処理装置2を含む製品検査システムの、撮像環境を設定するパラメータを示す模式図である。図3に示すように、本実施の形態に係る製品検査システムは、撮像装置1の位置座標(X、Y、Z)と、XY平面上での首振り傾斜角度θとを、調整対象のパラメータとして調整することができる。また撮像装置1はピント及び明るさを調整することができる。具体的にはフォーカスリングによりピントを調整し、絞りリングにより明るさを調整する。
同様に、製品検査システムは、検査対象物6の位置座標(X、Y)と、XY平面上での首振り傾斜角度θとを、調整対象のパラメータとして調整することができる。なお、検査対象物6は台座上に載置されているので、Z軸方向への移動機構はない。
また、照明装置4は、照明装置4の位置座標(X、Y、Z)及び照射角度αを調整することができ、照明コントローラ41を介して照度を調整することもできる。これらを調整することにより、記憶装置23に記憶されている基準画像と同様の画像を撮像装置1で撮像することができる。
上述した構成の画像処理装置2は、撮像装置1で撮像した画像に対する各種の画像処理を実行する複数の画像処理ツールを備えている。ユーザは、ユーザが所望する画像処理を必要とする検査内容に基づいて、検査対象物6に対して一又は複数の画像処理ツールを事前に選択する。選択された複数の画像処理ツールを用いて、良否判定を実行する。
まず、画像処理装置2が有している複数の画像処理ツールのうち、代表的な画像処理ツールについて説明する。ユーザは、これらの画像処理ツールから検査に使用する一又は複数の画像処理ツールを選択しておき、選択された画像処理ツールごとに設けられているパラメータを調整する。なお、以下の画像処理ツールは、典型的な機能及びその実現方法の代表例を示すものに過ぎず、あらゆる画像処理に対応する画像処理ツールが本願発明の対象となることは言うまでもない。
まず、エッジ位置計測ツールは、例えば、ユーザが、検査対象物6が表示される画面上において、エッジ位置を検出したい検査領域に対してウインドウを設定することにより、設定された検査領域内で、任意の方向にスキャンして複数のエッジを検出する。検出した複数のエッジから、一のエッジの指定を受け付け、指定を受け付けたエッジの位置を計測する。
例えば検査領域の形状に応じてラベル分けをする。具体的には検査領域が矩形領域である場合にはラベル‘1’、円弧領域である場合にはラベル‘0’というように、形状ごとにラベル分けをする。ラベルごとに設定するべき設定情報が相違する。設定された検査領域の形状、つまり矩形領域や円弧領域が、エッジ位置計測ツールにおける検査領域の形状の選択という観点でのパラメータの一つである。
図4は、本発明の実施の形態に係る画像処理装置2のエッジ位置計測ツールの例示図である。図4(a)は、検査領域が矩形領域である場合を、図4(b)は、検査領域が円弧領域である場合を、それぞれ示している。
図4(a)に示すように、検査領域50が矩形領域である場合、エッジの検出方向をX軸の正方向(矢印51の方向)、エッジの検出位置を明から暗に切り換わる位置と指定することにより、図4(a)では3つのエッジ52を検出することができる。そして、検出したエッジ52の中点座標を該エッジの位置座標として計測する。例えば真ん中のエッジ52については、中点53の位置座標(X、Y)=(560、460)であると計測することができる。
また、図4(b)に示すように、検査領域54が円弧領域である場合、エッジの検出方向を時計回り(矢印55の回転方向)、エッジの検出位置を明から暗に切り換わる位置と指定することにより、図4(b)では1つのエッジ56を検出することができる。そして、検出したエッジ56の回転位置を原点を通る所定の方向からの回転角度57として計測する。例えばエッジ56については、原点を通る所定の方向からの回転角度57が240度であると計測することができる。ここでの、エッジの検出位置が明から暗に切り換わる位置の指定もエッジ位置計測ツールにおけるパラメータの一つであり、逆に暗から明に切り換わる位置をパラメータとして指定しても良い。また、必要に応じて、エッジの検出位置が暗から明に切り換わる位置及び明から暗に切り換わる位置の両方をパラメータとして指定しても良い。
なお、エッジは、画素値の絶対値ではなく差分に基づいて検出する。そして、検出されたエッジの最大強度のN%以下はノイズとして検出しない旨を示すパラメータの一つであるエッジ感度Nを調整することで、エッジとして検出するか否かを調整することができる。以下、エッジを検出する複数の画像処理ツールにおいて、同様である。
次に、エッジ角度計測ツールは、設定を受け付けた検査領域内に2つのセグメントを設定し、それぞれのセグメントで検出したエッジからの検査対象物6の傾斜角度を計測する。本実施の形態では、傾斜角度は便宜上、時計回りを正とする。
図5は、本発明の実施の形態に係る画像処理装置2のエッジ角度計測ツールの例示図である。図5に示すように、傾斜した状態で撮像された検査対象物6に対して、矩形領域である検査領域60を設定する。検査領域60内で2つの異なるセグメント61、62を設定して、それぞれのセグメントにおいてエッジ63、64を検出する。
エッジの検出方向をX軸の正方向と、エッジの検出位置を明から暗に切り換わる位置とを、それぞれパラメータとして指定することにより、セグメント61、62ごとにエッジ63、64を検出することができる。そして、検出した2つのエッジ63の代表点とエッジ64の代表点(図5ではセグメント61、62の上辺での切片)とを結ぶ線分の傾斜角度65をエッジ角度として計測する。例えば図5では、傾斜角度の起点をX軸方向として、傾斜角度65が75度であると計測することができる。
次に、エッジ幅計測ツールは、設定を受け付けた検査領域内で、任意の方向にスキャンして複数のエッジを検出し、検出した複数のエッジ間の幅を計測する。
図6は、本発明の実施の形態に係る画像処理装置2のエッジ幅計測ツールの例示図である。図6(a)は、検査領域が矩形領域である場合を、図6(b)は、検査領域が円弧領域である場合を、それぞれ示している。
図6(a)に示すように、検査領域70が矩形領域である場合、エッジの検出方向をX軸の正方向(矢印71の方向)と、エッジの検出位置が明から暗に切り換わる位置及び暗から明に切り換わる位置とを、それぞれパラメータとして指定することにより、図6(a)では複数のエッジを検出することができる。そして、検出した複数のエッジから幅を計測する2つのエッジ72、73の指定を受け付けることで、指定を受け付けた2つエッジ72、73間の距離をエッジ幅74として計測する。例えばエッジ幅74が‘100’であると計測することができる。
また、図6(b)に示すように、検査領域75が円弧領域である場合、エッジの検出方向を時計回り(矢印76の回転方向)と、エッジの検出位置を明から暗に切り換わる位置及び暗から明に切り換わる位置と指定することにより、図6(b)でも複数のエッジを検出することができる。そして、検出した複数のエッジから幅を計測する2つのエッジ77、78の指定を受け付けることで、指定を受け付けた2つエッジ77、78間の角度を中心角とするエッジ幅79として計測する。例えばエッジ幅79が‘69度’であると計測することができる。
次に、エッジピッチ計測ツールは、設定を受け付けた検査領域内で、任意の方向にスキャンして複数のエッジを検出する。検出した複数のエッジ間の距離(角度)の最大値/最小値や平均値を計測する。
図7は、本発明の実施の形態に係る画像処理装置2のエッジピッチ計測ツールの例示図である。図7(a)は、検査領域が矩形領域である場合を、図7(b)は、検査領域が円弧領域である場合を、それぞれ示している。
図7(a)に示すように、検査領域80が矩形領域である場合、エッジの検出方向をX軸の正方向(矢印81の方向)と、エッジの検出位置を明から暗に切り換わる位置及び暗から明に切り換わる位置と、検出した一対のエッジで挟んだ検査対象物6の幅を計測する旨とを指定することにより、図7(a)では複数の一対のエッジを検出することができる。そして、検出した複数の一対のエッジ間の距離を求める。すなわち、隣接するエッジ82、83間のすべての組み合わせについてエッジ幅84を計測する。例えばエッジ幅84が‘200’、‘180’、‘190’である場合、最大値が‘200’、最小値が‘180’、平均値が‘190’と計測することができる。
また、図7(b)に示すように、検査領域85が円弧領域である場合、エッジの検出方向を反時計回り(矢印86の回転方向)と、エッジの検出位置を明から暗に切り換わる位置及び暗から明に切り換わる位置と、検出した一対のエッジで挟んだ検査対象物6の中点間の距離を計測する旨とを指定することにより、図7(b)でも検査領域85内において複数の一対のエッジを検出することができる。そして、検出した複数の一対のエッジで挟んだ検査対象物6の中点間の距離を求める。すなわち、隣接するエッジ87、88間のすべての組み合わせについて中点を求め、隣接する中点間の角度を中心角とするエッジ幅89として計測する。例えばエッジ幅89が‘46度’、‘45度’、‘47度’、‘46度’である場合、最大値が‘47度’、最小値が‘45度’、平均値が‘46度’と計測することができる。
次に、ペアエッジ計測ツールは、設定を受け付けた検査領域内で、任意の方向に2回スキャンした一対のエッジを検出する。検出した一対のエッジ間の距離の最大値/最小値や平均値を計測する。
図8は、本発明の実施の形態に係る画像処理装置2のペアエッジ計測ツールの例示図である。図8(a)は、検出した一対のエッジで挟んだ検査対象物6の幅を計測する場合を、図8(b)は、検出した一対のエッジで挟んだ検査対象物6の中点間の距離を計測する場合を、それぞれ示している。
図8(a)に示すように、検出した一対のエッジで挟んだ検査対象物6の幅を計測する場合、エッジの検出方向をX軸の正方向(矢印91の方向)と、エッジの検出位置を明から暗に切り換わる位置及び暗から明に切り換わる位置と、検出した一対のエッジで挟んだ検査対象物6の幅を計測する旨とを指定することにより、図8(a)では検査領域95内において複数の一対のエッジを検出することができる。そして、検出した複数の一対のエッジ間の距離を求める。すなわち、隣接するエッジ92、93間のすべての組み合わせについてエッジ幅94を計測する。例えばエッジ幅94が‘200’、‘180’、‘190’である場合、最大値が‘200’、最小値が‘180’、平均値が‘190’と計測することができる。
また、図8(b)に示すように、検出した一対のエッジで挟んだ検査対象物6の中点間の距離を計測する場合、エッジの検出方向をX軸の正方向(矢印96の方向)と、エッジの検出位置を明から暗に切り換わる位置及び暗から明に切り換わる位置と、検出した一対のエッジで挟んだ検査対象物6の中点間の距離を計測する旨とを指定することにより、図8(b)でも検査領域95内において複数の一対のエッジを検出することができる。そして、検出した複数の一対のエッジで挟んだ検査対象物6の中点間の距離を求める。すなわち、隣接するエッジ97、98間のすべての組み合わせについて中点を求め、隣接する中点間の距離をエッジ幅99として計測する。例えばエッジ幅99が‘100’、‘110’、‘120’である場合、最大値が‘120’、最小値が‘100’、平均値が‘110’と計測することができる。
次に、エリア計測ツールは、撮像装置1で撮像した検査対象物6の画像を二値化処理して、白色領域又は黒色領域の面積を計測する。例えば、計測する対象として白色領域又は黒色領域の指定をパラメータとして受け付けることにより、白色領域又は黒色領域の面積を計測する。
また、ブロブ計測ツールは、撮像装置1で撮像した検査対象物6の画像を二値化処理して、同一の輝度値(255又は0)の画素の集合(ブロブ)に対してパラメータとしての数、面積、重心位置等を計測する。図9は、本発明の実施の形態に係る画像処理装置2の二値化画像を表示した画面の例示図である。
図9に示すように、画像表示領域101には、撮像した検査対象物6の画像を二値化処理した二値化画像を表示する。そして、二値化処理に用いる閾値をパラメータとして閾値調整領域102に入力することで調整する。もちろん、ヒストグラム103を用いて調整しても良い。
ヒストグラム103は、二値化画像の画素値分布が示されており、通常は、画素値が‘255’に近い部分がフィルタリングされないよう、面積フィルタの下限値を、マウス502等でドラッグ操作する等により調整する。図9の例では、パラメータの一つである面積フィルタの下限値が‘128’であり、これより低い画素値を有する画素はノイズであるとして無視される。ヒストグラム103上で調整された閾値は、閾値調整領域102と連動しており、下限値が変動することは言うまでもない。
なお、エリア計測ツール及びブロブ計測ツールでは、パラメータの一つである二値化処理の閾値を調整することにより、検出したい特徴部分のみを検出することができる。また、面積フィルタの下限値を調整することにより、一定の面積以下の集まりをブロブとして検出することがないよう調整することもできる。
次に、パターンサーチ計測ツールは、比較対象とする画像パターンを事前に記憶装置に記憶しておき、撮像した検査対象物6の画像の中から記憶してある画像パターンに類似している部分を検出することで、画像パターンの位置、傾斜角度、相関値を計測する。図10は、本発明の実施の形態に係る画像処理装置2のパターンサーチ計測ツールの例示図である。図10(a)は、画像パターンを記憶する場合の画面の例示図を、図10(b)は、記憶してある画像パターンに類似している画像パターンを検出する場合の画面の例示図を、それぞれ示している。
図10(a)に示すように、撮像装置1で撮像した検査対象物6の画像を画面中央に表示した状態で、ウインドウを画面上に設定することにより、サーチ領域111の設定を受け付ける。サーチ領域111内に存在する画像パターンを検出し、記憶する画像パターンを囲む領域としてパターン領域112の設定を受け付ける。もちろん、パターン領域112内に、画像パターンの代表点113の設定を受け付けても良い。パターン領域112内の画像パターン114を記憶装置23へ記憶する。
パターンサーチ計測ツールによるパターンサーチ時には、図10(b)に示すように、記憶してある画像パターン114に類似している画像パターンをサーチ領域115内でサーチする。図10の例では、画像パターンの代表点118の位置座標と傾斜角度117とでパターン領域119を特定して、パターン領域119内の画像パターンと記憶してある画像パターン114との相関値がパラメータの一つである所定の閾値より大きい場合に類似している画像パターンを検出したと判断している。
もちろん、パターンサーチの方法はこれに限定されるものではなく、例えば記憶してある画像パターン及び撮像装置1で撮像した検査対象物6の画像それぞれについてエッジを検出し、エッジ強度が類似している位置の近傍において画像パターンの位置、傾斜角度、相関値を計測しても良い。
なお、パターンサーチ計測ツールでは、閾値として相関値の下限値を上げることにより、より類似度の高い画像パターンのみを検出するよう調整することができる。また、パラメータであるサーチ感度、サーチ精度等も調整することができる。
次に、傷計測ツールは、設定を受け付けた検査領域内で、小領域(セグメント)を移動させて画素値の平均濃度値を算出し、閾値以上の濃度差となった位置を傷が存在すると判定する。図11は、本発明の実施の形態に係る画像処理装置2の傷計測ツールで傷の存在を判定するためのセグメントの移動状態を示す模式図である。以下、図11(a)〜(d)まで、ハッチング部分がセグメントを示している。
まず図11(a)に示すように、セグメント121が検査領域120の左端に位置する場合(以下、「現在のセグメント」とする)、セグメント121内の平均濃度値を‘95’とする。そして、順次矢印122の方向に所定の間隔でセグメント121が移動する。
図11(b)は、現在のセグメントから‘1’移動した場合(「現在のセグメント+1」とする)を示しており、この場合のセグメント121内の平均濃度値を‘80’とする。以下、図11(c)は、現在のセグメントから‘2’移動した場合(「現在のセグメント+2」とする)を示しており、この場合のセグメント121内の平均濃度値を‘100’とし、図11(d)は、現在のセグメントから‘3’移動した場合(「現在のセグメント+3」とする)を示しており、この場合のセグメント121内の平均濃度値を‘120’とする。
図11の例では、4つのセグメント121内における平均濃度値を計測している。そして、最大濃度値と最小濃度値との差を「傷レベル」として計測する。図11の例では、「傷レベル」は、最大濃度値120(現在のセグメント+3)−最小濃度値80(現在のセグメント+1)=40となる。
また、計測した「傷レベル」がパラメータの一つである所定の閾値を超えた場合、「現在のセグメント」に傷が存在すると判定される。「傷量」は、傷が存在すると判定されたセグメントの数として計測される。
なお、傷が存在すると判定される所定の閾値である「傷レベル」、傷の想定サイズに合わせるべきセグメントの大きさ等を調整することにより、傷が存在するか否かの判定結果を変更することができる。
上述した各種の画像処理ツールの他、検査領域内の文字情報を切り出して辞書データ等と照合することで文字列を認識するOCR認識ツール、ならびに画像上に設定したウインドウ(領域)をシフトさせながら、各ウインドウの位置においてエッジの検出を繰り返す機能を有するトレンドエッジツール、設定したウインドウ内の濃淡の平均、偏差等を計測する機能を有する濃淡ツール、設定したウインドウ内の濃度の平均、偏差等を計測する機能を有する濃度ツール等も備えており、必要に応じて選択を受け付ける。各画像処理ツールで処理された判定結果、すなわち良品/不良品の判定結果は、検査対象物6を識別する情報、画像処理ツールを識別する情報に対応付けて、画像処理装置2の記憶装置23に記憶される。
図12は、本発明の実施の形態に係る画像処理装置2の画像処理ツール選択画面の例示図である。換言すれば、上述した数多くの画像処理ツールの中からエリア計測ツール、パターンサーチ計測ツール、ブロブ計測ツールの3つがユーザによって選択され、選択された各画像処理ツールに対するパラメータを設定することにより、ユーザ所望の画像検査フローが設定された例を示している。この場合、画像処理装置2は、ユーザの選択した画像処理ツールを具体的に示すために、ユーザインタフェースである画像処理ツール選択画面の選択領域126には、事前に選択された画像処理ツール、図12の例では、エリア計測ツール、パターンサーチ計測ツール、ブロブ計測ツールの3つが選択されて表示されている。この3つの画像処理ツールの中から、例えばエリア選択ツールの選択を受け付けた場合、画像表示領域125に検査対象物6の画像及び設定された検査領域が表示されている。
また、結果表示領域127には、各画像処理ツールを実行した結果が表示される。図12の例では、エリア計測ツールにより設定された検査領域中の画像を二値化処理し、白色領域又は黒色領域の面積を画素数の総和として表示している。
図13は、本発明の実施の形態に係る画像処理装置2の機能ブロック図である。判定結果記憶部401は、例えば、図12に示すユーザにより設定された画像検査フローに基づいて、事前に選択された複数の画像処理ツールごとの良品であるか否かに関する判定結果を検査対象物6の画像と対応付けて記憶装置23に記憶する。換言すれば、判定結果記憶部401は、画像処理装置2の複数の画像処理ツールの中から選択された一又は複数の画像処理ツールにより設定された画像検査処理フローを用いて、撮像装置1にて撮像した複数の検査対象物6の画像に対する良否判定を行った判定結果とその判定に対応する検査対象物6の画像を記憶装置23に記憶する。
また、事前に選択された複数の画像処理ツールごとの良品であるか否かに関する判定結果を、検査対象物6の画像と対応付けてメモリ22に記憶させても良い。
なお、画像処理ツール指定受付部402は、事前に選択された複数の画像処理ツールの中から一の画像処理ツールの指定を受け付ける。画像処理ツール指定受付部402の具体例については、図17に基づいて、詳細に後述する。
判定結果変更部403は、指定を受け付けた画像処理ツールによる判定結果の変更を受け付ける。すなわち良品であるという判定結果を不良品であるという判定結果へ、あるいは不良品であるという判定結果を良品であるという判定結果へ、それぞれ画像処理ツールごとに判定結果の変更を受け付ける。換言すれば、判定結果記憶部401により記憶されている判定結果の中から、不良品(NG品)であると判定された履歴のある画像処理ツールを選択し、選択された画像処理ツールにて不良品(NG品)であると判定された検査対象物6の画像を全て読み出し、画面上に表示し、表示されている不良品(NG品)画像の中からユーザがOK品である、すなわち良品であると判定する画像を選択することにより、判定結果の変更が行われる。
設定情報更新部404は、変更を受け付けた判定結果に応じて、画像処理ツールの設定情報の更新を受け付ける。例えば、良品であるという判定結果を不良品であるという判定結果へ変更した場合、設定情報として記憶してある、ある物理量の閾値を、不良品であるという判定結果となる値へと更新する。
再判定部405は、更新を受け付けた設定情報を用いて、検査対象物6を一括して良否を再判定する。これにより、良品であるという判定結果を不良品であるという判定結果へ、あるいは不良品であるという判定結果を良品であるという判定結果へ、それぞれ変更した検査対象物6だけでなく、判定結果が正しいと判断された検査対象物6についても、更新を受け付けた設定情報で再度良否を判定することができ、正しい判定結果が維持されているか否かを確認することができる。
以下、本実施の形態に係る画像処理装置2の動作について説明する。なお、以下の処理が実行される前に、画像処理装置2は、過去に良否判定を実行した検査対象物6の画像及び判定結果を、画像処理装置2の記憶装置23に記憶しておく。図14は、本発明の実施の形態に係る画像処理装置2の記憶装置23に記憶されている画像の例示図である。図14(a)〜(f)に示すように同じ検査対象物6であっても、撮像時に載置された位置の相違、撮像装置1の取り付け位置の相違等の撮像条件の違いから、様々な画像が記憶されている。
図15は、本発明の実施の形態に係る画像処理装置2の画像処理ツールの中から、ユーザが選択し、所望の画像検査フローに組み込んだ画像処理ツールを用いて、検査対象物6のモデルに対して設定された検査領域の設定画面の例示図である。図15に示すように、放熱板の汚れを検出するため、傷計測ツールの検査領域141を放熱板の輪郭線に沿って設定している。
また、文字化けの有無を検査するために二値化処理した白色領域の面積を計測するエリア計測ツールの検査領域142は、本体部の輪郭線に沿って設定されている。また、端子が曲がっているか否かを検出するために、エッジピッチ計測ツールの検査領域143を端子の先端部近傍に設定してある。本実施の形態では、傷計測ツール、エリア計測ツール、エッジピッチ計測ツールの3つの検査領域を設定しているが、これらに限定されるものではなく、検査対象物6によって設定する検査領域は変動する。各ツールに対応するパラメータの設定については上述しているため詳細な説明は省略するが、設定された各ツールに対応して、各々設定条件としてのパラメータが設定される。
さらに、本実施の形態に係る画像処理装置2では、上述した各種の画像処理ツールとは別個に、位置補正機能を設けてある。ユーザは、位置補正処理を実行するか否かを事前に設定しておき、設定に応じて位置補正処理を実行してから各画像処理ツールを実行させる、又は位置補正処理を実行することなく各画像処理ツールを実行させる。
なお、各画像処理ツールにおいて位置補正処理を実行する画像処理ツールも存在する。例えばパターンサーチ計測ツールでは、検査領域内の相関値の算出において、検査領域内の画像の位置補正処理を実行していることが多い。本実施の形態では、位置補正処理は、画像全体に対して実行することを前提としているが、各画像処理ツールで位置補正処理を実行しても良いし、位置補正処理の範囲が画像全体であっても検査領域内であっても良い。
図16は、本発明の実施の形態に係る画像処理装置2のCPU21の処理手順を示すフローチャートである。図16では、位置補正処理を実行しないよう設定されている場合を例に説明する。したがって、位置補正に関する処理を支持するボタン等は、グレー表示される、表示されない、非活動化状態に設定される等、ユーザが使用することができない状態で表示される。もちろん、事前に位置補正処理を実行しても良いことは言うまでもない。
図16において、画像処理装置2のCPU21は、起動すると同時に記憶装置23に記憶されているすべての検査対象物6の画像に対して一括検査を実行し(ステップS1601)、画像処理ツールごとに不良品であると判定された回数(以下、NG回数)に対応付けたツール指定受付画面を表示する(ステップS1602)。CPU21は、表示されている複数の画像処理ツールの中から一の画像処理ツールの指定を受け付ける(ステップS1603)。
図17は、本発明の実施の形態に係る画像処理装置2のツール指定受付画面の例示図である。ここでは、図16にて設定した画像処理ツールとそれに対応するパラメータに基づいて、ユーザの所望する画像検査フローを用いて、複数の検査対象物6の画像の各々に対して画像処理ツールによる画像処理を実行し、設定されている画像処理ツールごとの判定結果がNGである回数(以下、NG回数)が表示されている。
図17では、画像処理ツールが、NG回数に対応付けられてツール表示領域161に表示されている。図17の例では、「傷」計測ツール、「エッジピッチ」計測ツール、「エリア」計測ツールの3つの画像処理ツール(括弧内の文字で表示)が、指定受付可能な画像処理ツールとして表示されている。CPU21は、ツール表示領域161内に表示されている画像処理ツールの中から、いずれか一の画像処理ツールの指定を受け付ける。
なお、図17のツール表示領域161に表示されているツールは、画像処理装置2の画像処理ツールの中からユーザが所望の画像検査フローを構成するために選択した画像ツールのみであることは言うまでもない。また、ツール表示領域161の表示形式としては、全ての画像処理ツールを表示し、ユーザにより所望の画像検査フローを構成するために選択されているツールのみを強調表示しても良い。これにより、どのツールが画像検査フローに組み込まれているかを目視で容易に確認することができる。
また、ツール表示領域161に表示するべき画像処理ツールの種類は、画像検査フローを構成するために選択され、用いられている画像処理ツールの中で、複数の検査対象物6の画像に対する検査の判定結果としてNG判定を出力している画像処理ツールを少なくとも認識できるように表示すれば良い。
なお、ツール指定受付画面では、不良品であると判定された結果が多い画像処理ツール、すなわちNG回数の多い画像処理ツールから優先して指定を受け付けるように上位に表示することが好ましい。良品であるにもかかわらず不良品であると誤って判定された設定情報から順に適切な設定情報に調整することができ、結果として早期に適切な設定情報に更新することができるからである。つまり、NG回数の多い画像処理ツールから優先して指定を受け付けることにより、ユーザが良品又は不良品であると判定した結果に追従して、内部的に適切なパラメータが設定される点が本願発明の特徴である。
NG回数の多い画像処理ツールから優先して表示又は誘導する理由は、NG回数の多い画像処理ツールは、検査対象物6が不良品(NG品)であるのではなく、ツールのパラメータ等の設定条件が不適切な結果として不良品であるとNG判定されているケースが多いからである。したがって、選択された画像処理ツールが複数の場合、NG回数の多い画像処理ツールから優先して表示又は誘導することが効率の良いツールの再設定処理となる。
図16に戻って、画像処理装置2のCPU21は、指定を受け付けた画像処理ツールによる判定結果の変更を受け付ける(ステップS1604)。すなわち、良品であるという判定結果を不良品であるという判定結果へ、あるいは不良品であるという判定結果を良品であるという判定結果へ、それぞれ画像処理ツールごとに判定結果の変更を受け付ける。
図18は、本発明の実施の形態に係る画像処理装置2の判定結果変更画面の例示図である。図18は、上述した図17において、ツール表示領域161の最上位欄に表示されている「傷」を修正するツールとして選択した場合、次に表示される画面である。このため、図17に示すように、「傷」計測ツールによってNG品であると判定された六つの画像がNG品表示領域171に表示され、画像表示領域170には、六つの画像のうちの一つが初期設定として表示される。
図18では、「傷」計測ツールによってNG品であると判定された画像が記憶装置23から読み出され、画像表示領域170に表示される。
すなわち、図17にてユーザによって選択された画像処理ツール、ここでは「傷」計測ツールによって不良品であると判定された検査対象物6を識別する識別情報がリスト表示されるNG品表示領域171、良品であると判定されるべきであるとしてNG品表示領域171からユーザによって移動された検査対象物6を識別する識別情報がリスト表示されるOK品表示領域172、それぞれに別個にリスト表示されている識別情報の選択を受け付けることで、対応する検査対象物6の画像が画像表示領域170に表示される。
そして、マウス502等により選択を受け付けた識別情報に対応する検査対象物6の画像が画像表示領域170に表示されるので、不良品であると判定されている検査対象物6が実際は良品であると判定をすることができる。不良品であると判定されている検査対象物6が実際は良品であると判定された場合、移動ボタン173により、NG品表示領域171に表示されている識別情報をOK品表示領域172に移動することができる。
なお、図17の例では、一旦OK品表示領域172に移動させた画像を、ユーザの意図の変更により、再度NG品表示領域171に移動させることを可能とするため、移動ボタン174を設けている。
また、上記実施例では、図17に示すように、NG判定された画像処理ツールを選択することにより、図18に示す選択された画像処理ツールによってNG品であると判定した画像を選択表示することができるとともに、これらのNG品の画像を個別に目視で確認することにより、ユーザの意図によって、OK品表示領域172へ移動することを可能としている。
しかし、別機能として、図18に示す画面に遷移した場合、選択された画像処理ツールにてOK品であると判定された画像をOK品表示領域172に同時表示することも可能であり、さらに、OK品であると判定された画像をユーザの意図により、移動ボタンを用いてNG品表示領域171に移動させることも可能である。
図19は、本発明の実施の形態に係る画像処理装置2の判定結果変更画面の例示図である。図19では、傷計測ツールを、放熱板の汚れを検出するために使用しているが、図19の画像表示領域170に表示されている検査対象物6には、明らかに放熱板601に汚れが存在していない。したがって、不良品であると判定されている検査対象物6が実際は良品であると判定して、移動ボタン173を選択することによりOK品表示領域172に識別情報が移動される。
判定結果の変更を行った場合、設定してある検査領域が検査対象物6の画像に追従しているか否かを確認することが好ましい。画像処理ツールごとに設定している検査領域と、検査対象物6の画像との位置がずれていることが原因で、良否判定に誤りがあるか否かを確認するためである。
図示はしていないが、次のステップとして、位置補正処理を実行して良否を再判定しても良い。例えば図15では、「傷」計測ツールの検査領域141が画像に対して設定されているが、矩形形状を有する検査領域141を画像に重ねて表示している。ここで、矩形形状を有する検査領域141が、適正な位置に設定されていない場合、NG品であるという判定結果と位置補正機能としてのパターンサーチにおける検出条件とを見直すことができる。
図16に戻って、画像処理装置2のCPU21は、変更を受け付けた判定結果に応じて、画像処理ツールの設定情報の更新を受け付ける(ステップS1605)。例えば、良品であるという判定結果を不良品であるという判定結果へ変更を受け付けた場合、設定情報として記憶してある、ある物理量の閾値を、不良品であるという判定結果となる値へと更新する。
図20は、本発明の実施の形態に係る画像処理装置2の検査領域のパターンサーチ計測ツール実行後の状態を示す画面の例示図である。図20に示すように、設定情報表示領域231には、表示されている検査対象物6の画像に設定されている傷が存在するか否かの検出条件が表示されており、随時更新を受け付けることができる。
例えば、図20の画像表示領域170に表示されている検査対象物6は、不良品であると判定されている。図20の画像を良品であると判定させるべく、パラメータとしての設定情報を更新する。例えば「傷」計測ツールでの計測結果表示領域230に、最大検出傷レベルが‘29’であると表示されているので、設定情報に含まれる閾値である「傷レベル」は‘29’より大きい値(図20では‘100’)に設定することにより、不良品であると判定されることはなくなる。
また、設定情報を更新することにより、不良品であると判定された検査対象物6を、良品であると判定結果を変更することができる。しかし、それに伴い、逆に良品であると判定されていた検査対象物6が不良品であると判定される場合も生じる。
図21は、本発明の実施の形態に係る画像処理装置2の判定結果の変更を通知する画面の例示図である。図21に示すように、「傷レベル」を‘100’に設定することにより、良品であると判定結果を変更するべき検査対象物6はなくなっている。しかし、それまで不良品であると判定されていた検査対象物6が、逆に良品であると判定されるようになっている。図21の例では良否判定が逆転している検査対象物6の画像が4つも生じたことを示している。
この場合、画像処理装置2は、設定情報の更新がさらに必要である旨を示す通知画面241をポップアップ表示するとともに、不良品であるとの判定結果に変更するべき検査対象物6の画像の識別情報が、良品判定表示領域242に表示される。
図22は、本発明の実施の形態に係る画像処理装置2の設定情報を更新する画面の例示図である。図22に示すように、「傷レベル」を‘100’に設定することにより、本来検出されるべき汚れまで検出されることがなく、不良品であるにもかかわらず良品であると判定されている。そこで、設定情報表示領域231において「傷レベル」を‘30’まで下げて設定することにより、汚れ251も検出することができ、不良品を不良品として正しく判定することができる。
図16に戻って、画像処理装置2のCPU21は、更新を受け付けた設定情報を用いて、検査対象物6を一括して良否を再判定する(ステップS1606)。これにより、良品であるという判定結果を不良品であるという判定結果へ、あるいは不良品であるという判定結果を良品であるという判定結果へ、それぞれ変更を受け付けた検査対象物6だけでなく、判定結果が正しいと判断された検査対象物6についても、更新を受け付けた設定情報で再度良否を判定することができ、正しい判定結果が維持されているか否かを確認することができる。
傷計測ツールにおける判定結果の調整が終了した場合、他の画像処理ツール、すなわち、エリア計測ツール、エッジピッチ計測ツールについても、同様の判定結果の変更及び設定情報の更新を行う。これにより、すべての画像処理ツールに関する設定情報を、実際に作業者が良品/不良品を判定する感覚と同様の判定結果を得ることができる値に調整することができる。
より具体的には、エリア計測ツールでは、NG品であると判定された画像を、OK品であるとの判定結果に変更し、今後OK品であると判定するように調整可能なパラメータとしての設定条件は、例えば二値化処理後の検出対象の色を白とするか黒とするかを選択する「検出色」、検出色にて検出されたエリアの「面積」に対する閾値としての上限値及び下限値等であり、これらのパラメータを調整することになる。また、エッジピッチ計測ツールでは、NG品であると判定された画像を、OK品であるとの判定結果に変更し、今後OK品であると判定するように調整可能なパラメータとしての設定条件は、例えば「エッジの感度」、「エッジフィルタ幅」、「エッジ強度の上限値ならびに下限値」等である。
以上のように本実施の形態によれば、判定結果が誤っている場合に、判定結果の変更を受け付けると同時に設定情報の更新を受け付け、更新を受け付けた設定情報に基づいて一括して良否が再判定されるので、設定情報の詳細を知らなくても、自らの判定結果に基づいて良品を良品と、不良品を不良品と、正しく判定するための設定情報を高い精度で定めることができ、経年変化、環境の変化等も考慮した設定情報に基づいて製品検査を行うことが可能となる。
なお、本発明は上記実施例に限定されるものではなく、本発明の趣旨の範囲内であれば多種の変更、改良等が可能である。