この発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
<全体装置構成>
図1は、この発明の実施の形態に従う画像処理装置1の全体構成を示す概略図である。本実施の形態に従う画像処理装置1は、典型的に、視覚センサとして機能する。
図1を参照して、画像処理装置1は、代表的に生産ラインなどに組込まれ、被測定物(以下「ワーク」とも称す。)を光学的に処理することができる。この光学的な処理には、ワーク表面の欠陥検出が含まれる。
一例として、本実施の形態においては、ワーク2は、ベルトコンベヤなどの搬送機構6によって搬送され、搬送されたワーク2は、撮像部8によって逐次撮像される。撮像部8によって撮像された画像データ(以下「入力画像」とも称す。)は、画像処理装置として機能するコンピュータ100へ伝送される。なお、入力画像としては、カラー画像であってもよいし、モノクロ(グレイスケール)画像であってもよい。
ワーク2が撮像部8の撮像範囲に到達したことは、搬送機構6の両端に配置された光電センサによって検出される。具体的には、光電センサは、同一の光軸上に配置された受光部4aと投光部4bとからなり、投光部4bから放射される光がワーク2で遮蔽されることを受光部4aで検出することによって、ワーク2の到達を検出する。なお、搬送機構6の制御自体は、図示しないPLC(Programmable Logic Controller)などによって制御される。
撮像部8は、上述した光電センサによってワーク2の到着が検出されると、これに応じてワーク2の撮像を開始する。あるいは、連続的に撮像を行っておき、ワーク2の到着が検出されたタイミングで、後述するワーク2の欠陥検出やその他の検査・計測を開始するようにしてもよい。
一例として、撮像部8は、レンズなどの光学系に加えて、CCD(Coupled Charged Device)やCIS(Complementary Metal Oxide Semiconductor Image Sensor)センサといった、複数の画素に区画された撮像素子を含んで構成される。各画素に対応する撮像素子は、入射する光に対して1つまたは複数の分光感度を有している。
コンピュータ100は、FD(Flexible Disk)駆動装置111およびCD−ROM(Compact Disk-Read Only Memory)駆動装置113を搭載するコンピュータ本体101と、モニタ102と、キーボード103と、マウス104とを含む。そして、コンピュータ本体101は、予め格納されたプログラムを実行することで、本実施の形態に従う画像上の欠陥検出に係るパラメータの設定を支援する方法を提供する。
<ハードウェア構成>
図2は、この発明の実施の形態に従うコンピュータ100のハードウェア構成を示す概略構成図である。
図2を参照して、コンピュータ本体101は、図1に示すFD駆動装置111およびCD−ROM駆動装置113に加えて、相互にバスで接続された、CPU(Central Processing Unit)105と、メモリ106と、固定ディスク107と、カメラインターフェイス部109と、PLCインターフェイス部115と、センサインターフェイス部117とを含む。
FD駆動装置111にはFD112が装着可能であり、CD−ROM駆動装置113にはCD−ROM114が装着可能である。上述したように、本実施の形態に従う画像処理装置は、CPU105がメモリ106などのコンピュータハードウェアを用いて、プログラムを実行することで実現される。一般的に、このようなプログラムは、FD112やCD−ROM114などの記録媒体に格納されて、またはネットワークなどを介して流通する。そして、このようなプログラムは、FD駆動装置111やCD−ROM駆動装置113などにより記録媒体から読取られて、記憶装置である固定ディスク107に一旦格納される。さらに、固定ディスク107からメモリ106に読出されて、CPU105により実行される。
CPU105は、プログラムされた命令を逐次実行することで、各種の演算を実施する演算処理部である。メモリ106は、CPU105でのプログラム実行に応じて、各種の情報を一時的に格納する。
カメラインターフェイス部109は、コンピュータ本体101と撮像部8との間のデータ通信を仲介する。カメラインターフェイス部109は、画像バッファを含むことが好ましい。画像バッファは、撮像部8で撮像され逐次伝送される入力画像データを一旦蓄積し、1回の撮像分の入力画像データが蓄積されると、その蓄積されたデータをメモリ106または固定ディスク107へ転送する。
PLCインターフェイス部115は、コンピュータ本体101と図示しないPLCとの間のデータ通信を仲介するための装置である。また、センサインターフェイス部117は、上述した光電センサなどからの検出信号を受信して、CPU105へ伝達する。
固定ディスク107は、CPU105が実行するプログラムや入力画像データなどを格納する不揮発性の記憶装置である。
コンピュータ本体101に接続されるモニタ102は、CPU105が出力する情報を表示するための表示部であって、一例としてLCD(Liquid Crystal Display)やCRT(Cathode Ray Tube)などから構成される。
マウス104は、クリックやスライドなどの動作に応じたユーザからの指令を受付ける。キーボード103は、入力されるキーに応じたユーザからの指令を受付ける。
また、コンピュータ100には、必要に応じて、プリンタなどの他の出力装置が接続されてもよい。
<動作モード>
本実施の形態に従う画像処理装置1は、ワーク2を撮像することで得られる入力画像に対して、欠陥度を算出し、欠陥の存在する領域の有無や位置を判定する「稼動モード」と、ワーク2についての欠陥検出に係るパラメータの設定を行なうための「設定モード」とを選択することが可能である。ユーザは、「設定モード」において、モニタ102に表示される入力画像およびプロファイル(後述する)を参照しながら欠陥検出に係るパラメータを設定する。なお、「設定モード」では、他の各種パラメータが設定可能に構成してもよい。
<欠陥度の算出処理>
まず、図3を参照して、本実施の形態に従う欠陥度の算出処理について説明する。
本実施の形態に従う画像処理装置1では、代表的に、特許第3312157号に記載の欠陥度の算出方法に準じた方法を用いる。なお、当然のことながら、欠陥度の算出方法は、上記特許第3312157号に記載の方法に限られず、公知のさまざまな方法を適用することができる。
本実施の形態に従う画像処理装置1では、撮像部8がワークを撮像することによって得られる入力画像への計測領域の設定を受付け、さらにこの計測領域に含まれる複数の評価点もしくは評価領域の各々について欠陥度を算出する。
図3は、この発明の実施の形態に従う画像処理装置1における欠陥度の算出処理の概略を説明するための図である。なお、図3は、入力画像IMGの一部を模式的に示している。また、紙面横方向をX軸とし、紙面縦方向をY軸とし、紙面左上を原点(ゼロ)とする。
図3を参照して、入力画像IMGに設定された計測領域内に、複数のエレメント202,204,206,208,210が設定される。エレメント202〜210の各々は、対応する評価点を中心とする単位領域に相当し、少なくとも1つの画素を含む。
たとえば、エレメント202は、座標(x(i),y(i))に位置する評価点に対応して設定されたものであり、座標(x(i),y(i))を中心として、X方向およびY方向にそれぞれ設定されたエレメントサイズに応じた大きさを有する。その他のエレメントについても同様である。
エレメント202〜210の各々は、対応する評価点における代表値を算出するための評価領域となる。すなわち、各評価点における代表値は、当該評価点を中心として設定されたエレメントに含まれる画素の濃度や輝度といった色情報に基づいて算出される。より具体的には、各評価点における代表値は、対応するエレメントに含まれるそれぞれの画素が有する濃度の平均値を用いることができる。あるいは、それぞれの画素が有する濃度の重付き平均値、分散値、最頻値、中央値などを用いることもできる。さらに、各エレメントに含まれる画素の数が互いに等しい場合には、平均値に代えて合計値(総和値)を用いることもできる。
一般的に、ワーク表面に発生する欠陥は、他の欠陥が発生していない部分に比較して、濃度などの色属性が異なる。そのため、隣接するエレメント間でそれぞれの代表値を比較することで、他の領域とは異なる色属性を有する領域、すなわち欠陥を含む領域を見つけることができる。
たとえば、エレメント202とエレメント204との間の代表値に相対的に大きな差が存在し、かつエレメント202とエレメント206との間の代表値にも相対的に大きな差が存在するとした場合には、エレメント202に相当する領域の色属性がエレメント204および206の領域の色属性と異なっていると判断できる。すなわち、この場合には、エレメント202に欠陥の存在する領域が含まれていることになる。
なお、代表値として濃度を用いた場合には、「欠陥」として、「白欠陥度」および「黒欠陥度」を考えることができる。この「白欠陥度」は、算出対象のエレメント(評価点)が他の領域に比較して「明」過ぎる度合いを示すものである。一方、「黒欠陥度」は、算出対象のエレメント(評価点)が他の領域に比較して「暗」過ぎる度合いを示すものである。
さらに、このような欠陥度の算出にあたり、算出対象のエレメントと比較するエレメントをどの方向から選択するかについてもユーザが任意に設定することが可能である。たとえば、X軸方向に隣接するエレメント間で評価を行なう場合には、エレメント202とエレメント204および206とをそれぞれ比較することになり、一方、Y軸方向に隣接するエレメント間で評価を行なう場合には、エレメント202とエレメント208および210とをそれぞれ比較することになる。あるいは、X軸方向およびY軸方向の両方に隣接するエレメント間で評価を行なう場合には、エレメント202とエレメント208,210,212,214とをそれぞれ比較することになる。さらに、上述した方法に代えて、斜め方向に隣接するエレメント間で比較を行なってもよい。
上述した欠陥度(黒欠陥度B(i,j)および白欠陥度W(i,j))の算出処理を、各評価点における代表値をA(i,j)として数式で示すと、以下のようになる。なお、min[]は、[]内の要素のうち、最も小さいものを出力する関数であり、比較されるエレメント間のX軸上の比較間隔はαであり、比較されるエレメント間のY軸上の比較間隔はβであるとする。
(1)X軸方向のみで評価する(欠陥検出方向がX軸方向のみの)場合
B(i,j)=min[{A(x(i+α),y(j))-A(x(i),y(j))},{A(x(i-α),y(j))-A(x(i),y(j))}]
W(i,j)=min[{A(x(i),y(j))-A(x(i+α),y(j))},{A(x(i),y(j))-A(x(i-α),y(j))}]
(2)Y軸方向のみで評価する(欠陥検出方向がY軸方向のみの)場合
B(i,j)=min[{A(x(i),y(j+α))-A(x(i),y(j))},{A(x(i),y(j-α))-A(x(i),y(j))}]
W(i,j)=min[{A(x(i),y(j))-A(x(i),y(j+α))},{A(x(i),y(j))-A(x(i),y(j-α))}]
(3)X軸方向およびY軸方向の両方で評価する(欠陥検出方向がX軸方向およびY軸方向の)場合
B(i,j)=min[{A(x(i+α),y(j))-A(x(i),y(j))},{A(x(i-α),y(j))-A(x(i),y(j))},
{A(x(i),y(j+α))-A(x(i),y(j))},{A(x(i),y(j-α))-A(x(i),y(j))}]
W(i,j)=min[{A(x(i),y(j))-A(x(i+α),y(j))},{A(x(i),y(j))-A(x(i-α),y(j))},
{A(x(i),y(j))-A(x(i),y(j+α))},{A(x(i),y(j))-A(x(i),y(j-α))}]
なお、上述した数式を実装する場合には、演算量を低減する観点から、以下のように変形して実装することが好ましい。
(1)X軸方向のみで評価する(欠陥検出方向がX軸方向のみの)場合
B(i,j)=min[A(x(i+α),y(j)),A(x(i-α),y(j))]-A(x(i),y(j))
W(i,j)=A(x(i),y(j))-min[A(x(i+α),y(j)),A(x(i-α),y(j))]
(2)Y軸方向のみで評価する(欠陥検出方向がY軸方向のみの)場合
B(i,j)=min[A(x(i),y(j+α)),A(x(i),y(j-α))]-A(x(i),y(j))
W(i,j)=A(x(i),y(j))-min[A(x(i),y(j+α)),A(x(i),y(j-α))]
(3)X軸方向およびY軸方向の両方で評価する(欠陥検出方向がX軸方向およびY軸方向の)場合
B(i,j)=min[A(x(i+α),y(j)),A(x(i-α),y(j)),A(x(i),y(j+α)),A(x(i),y(j-α))]
-A(x(i),y(j))
W(i,j)=A(x(i),y(j)
-min[A(x(i+α),y(j)),A(x(i-α),y(j)),A(x(i),y(j+α)),A(x(i),y(j-α))]
なお、計測領域の端部に位置するエレメントは、比較すべきエレメントが計測領域内に存在しない場合もある。このような場合には、隣接する他のエレメントに基づいて補間してもよいし、計測領域外の画素から比較対象とするエレメントを生成してもよい。
<欠陥検出に係るパラメータ>
上述したように、本実施の形態に従う欠陥度の算出手順によれば、欠陥検出方向をX軸方向およびY軸方向のいずれか一方、もしくは両方にするのかといった設定、ならびにエレメント間の比較間隔が欠陥度を算出するためのパラメータとして必要である。さらに、入力画像IMGにエレメントをどのような頻度で設定するか、言い換えれば、入力画像IMGにおいて、評価点をどのような間隔で設定するかについてのパラメータも必要である。
本実施の形態に従う画像処理装置1では、入力画像IMGに設定される各エレメントの大きさをユーザが任意に設定可能である。すなわち、図4に示すように、各エレメントのX軸方向の大きさであるエレメントサイズSx、および各エレメントのY軸方向の大きさであるエレメントサイズSyを任意に設定できる。
さらに、入力画像IMGの計測領域内に設定されるエレメントの作成間隔についても、任意に設定可能である。すなわち、図4に示すように、エレメントを作成するX軸方向の間隔であるエレメント作成間隔Dx、およびエレメントを作成するY軸方向の間隔であるエレメント作成間隔Dyを任意に設定できる。
図5に示すように、エレメント作成間隔(DxおよびDy)は、欠陥度を算出するためのエレメント間の比較間隔とは独立に設定できる。但し、比較対象のエレメントが比較間隔だけ離れた位置に設定されていなければならないので、X軸上の比較間隔αおよびY軸上の比較間隔βは、それぞれエレメント作成間隔DxおよびDyの定数倍であることが好ましい。
上述したように、本実施の形態に従う欠陥検出に係るパラメータについてまとめると、以下のようになる。
(a)エレメントサイズSx,Sy:各エレメントの大きさ(画素数)を示す数値
(b)エレメント作成間隔Dx,Dy:エレメントを設定する間隔(画素数)を示す数値
(c)比較間隔α,β:欠陥度を算出するために比較されるエレメントの間の距離(エレメント数)を示す数値
(d)欠陥検出方向:各評価点における欠陥度を算出するために隣接するエレメントを比較する方向(X軸のみ、Y軸のみ、X軸およびY軸、斜め方向)を示す属性値
(e)欠陥色:白欠陥および黒欠陥のうち、算出すべきものを示す属性値
(f)欠陥度判定値:算出された欠陥度と比較することで、対応するエレメントに欠陥が存在するか否かを判定するための判定値を示す数値
なお、本実施の形態に従う欠陥度の算出方法を採用する場合には、エレメントサイズは、検出すべき欠陥のサイズと同程度に設定することが好ましい。これは、エレメントサイズの単位で代表値が算出されるためであり、適切なエレメントサイズを設定することで、欠陥に対する検出性能を高めることができる。
また、エレメント作成間隔は、その値が小さくなるほど、入力画像に設定されるエレメントの数が増加することを意味する。そのため、エレメント作成間隔は小さいほど、欠陥に対する検出性能を高くできるが、1つの入力画像に対してより多くの処理時間が必要となる。そのため、必要な検出精度と許容される処理時間(タクトタイムなど)とのバランスを考慮して、エレメント作成間隔は決定される。
また、比較間隔は、その値が大きくなるほど、欠陥の検出性能が高まるが、入力画像に表れるわずかな濃度変化を欠陥として誤検出する可能性も増加する。
<欠陥度の算出処理の別形態>
上述の欠陥度の算出処理では、X軸およびY軸として、互いに直交する座標系を採用する構成について例示した。これに代えて、円周方向および半径方向からなる座標系を採用してもよい。このような座標系を採用することで、円弧状の計測領域が設定された場合にも、欠陥度を適切に算出できる。
図6は、この発明の実施の形態に従う画像処理装置1における欠陥度の算出処理の概略を説明するための図である。
図6を参照して、入力画像IMGに対して、円弧状(中心部をくり抜かれた扇形状)の計測領域が設定されているものとする。このような計測領域に対して、円周方向をX軸とし、半径方向をY軸とする。そして、この計測領域に対して、X軸方向(円周方向)にエレメントサイズSx(角度あるいは画素)の大きさをもち、かつY軸方向(半径方向)にエレメントサイズSy(画素あるいは計測領域の半径長さに対する比率)の大きさをもつ、エレメントが設定される。
この図6に示すような座標系を採用した場合にも、上述した図3と同様に、X軸方向およびY軸方向に隣接するエレメント間で代表値をそれぞれ比較することで、欠陥度が算出される。たとえば、エレメント212についての欠陥度を算出する場合には、エレメント212と円周方向に隣接するそれぞれエレメント214および216との比較、およびエレメント212と半径方向に隣接するそれぞれエレメント218および220との比較の少なくとも一方が行なわれる。その他の処理については、図3を用いて説明した内容と同様であるので、詳細な説明は繰返さない。
このように、欠陥度の算出には、直交座標系だけではなく、円筒座標系を用いてもよい。
<ユーザインターフェイスの概要>
本実施の形態に従う画像処理装置1では、計測領域のX軸およびY軸に沿った欠陥度のプロファイルをそれぞれモニタ102に表示する。これらのプロファイルは、計測領域のそれぞれX軸およびY軸に沿った欠陥度の最大値を示す。すなわち、X軸に沿った欠陥度のプロファイルは、X軸の方向に沿って互いに異なる位置にある複数の軸(これらの軸の延伸方向はY軸方向)について、各軸上での欠陥度の最大値の分布を示す。同様に、Y軸に沿った欠陥度のプロファイルは、Y軸の方向に沿って互いに異なる位置にある複数の軸(これらの軸の延伸方向はX軸方向)について、各軸上での欠陥度の最大値の分布を示す。
言い換えれば、これらのプロファイルは、計測領域に含まれる各評価点についての欠陥度の三次元的なプロットを、X軸およびY軸のそれぞれの側面から観察した場合のピーク(稜線)を示す断面図に相当する。さらに、本実施の形態に従う画像処理装置1では、これらの欠陥度を判定するための判定値がそれぞれのプロファイルに対応付けて表示される。そのため、X軸およびY軸のそれぞれの局面において、対応する判定値(しきい値)に対して、欠陥度のピークにどの程度の余裕度が存在するのかを一見して把握することができる。
したがって、ユーザは、このようなプロファイルを参照しながら、欠陥検出に係るパラメータを設定することができる。そのため、経験の少ないユーザであっても、欠陥検出に係るパラメータを適切に設定することができる。
図7は、この発明の実施の形態に従うプロファイルの算出処理を説明するための図である。
図7を参照して、上述した欠陥度の算出処理によって、入力画像に設定されたエレメントに対応する評価点の各々について、欠陥度(白欠陥度および黒欠陥度)が得られる。なお、図7には、計測領域に含まれる各評価点について、白欠陥度W(i,j){1≦i≦n;1≦j≦m}を算出した場合を例示する。
この白欠陥度の分布に対して、まず、X軸に沿ったプロファイルの算出処理について説明する。
X軸に沿ったプロファイルは、X軸上の各線分上における欠陥度の最大値を示す。たとえば、X軸上の座標=「1」に対応する欠陥度の最大値Px(1)は、以下のように算出される。
Px(1)=max{W(1,1),W(1,2), ... ,W(1,m)}
以下同様にして、X軸上の各点における欠陥度の最大値Px(2)〜Px(n)がそれぞれ算出される。さらに、このように算出された欠陥度の最大値Px(1)〜Px(n)を、X軸上の位置に対応付けて配列したものがX軸に沿った欠陥度のプロファイルとなる。
また、Y軸に沿ったプロファイルは、Y軸上の各線分上における欠陥度の最大値を示す。たとえば、Y軸上の座標=「1」に対応する欠陥度の最大値Py(1)は、以下のように算出される。
Py(1)=max{W(1,1),W(2,1), ... ,W(n,1)}
以下同様にして、Y軸上の各点における欠陥度の最大値Py(2)〜Py(m)がそれぞれ算出される。さらに、このように算出された欠陥度の最大値Py(1)〜Py(m)を、Y軸上の位置に対応付けて配列したものがY軸に沿った欠陥度のプロファイルとなる。
<画面表示および操作手順>
以下、図8〜図10を参照して、本実施の形態に従う欠陥検出に係るパラメータの設定を支援する画面表示の一例について説明する。
図8〜図10は、この発明の実施の形態に従う画像処理装置1のモニタ102に表示される設定モードにおける画面表示例を示す図である。なお、CPU105および図示しないグラフィックボードなどが協働することで、図8〜図10に示すような設定画面を表示させる。このような画面表示は、OS(Operating System)の一部として組込まれるGUI(Graphical User Interface)プログラムによって実現され、またGUIは、ユーザがキーボード103やマウス104により操作される画面上のカーソルを用いて、さまざまなユーザ設定を行なうための環境も提供する。
図8を参照して、ユーザが「計測パラメータ」タブ308を選択すると、パラメータ設定画面300が表示される。ユーザは、このパラメータ設定画面300において、欠陥検出に係るパラメータを設定および確認することができる。
具体的には、パラメータ設定画面300は、検出パラメータ設定エリア310と、判定条件設定エリア390と、画像表示エリア340と、全体表示エリア380と、表示制御アイコン群370とを含む。
検出パラメータ設定エリア310では、欠陥値の算出に係るパラメータを設定および確認が可能である。より具体的には、検出パラメータ設定エリア310は、数値入力を受付ける数値入力ボックス321〜326と、数値入力ボックス321〜326にそれぞれ対応する数値変更ボタン331〜336と、チェックボックス327〜329を含む。
数値入力ボックス321および数値変更ボタン331は、各エレメントのX軸方向のサイズ(Sx)の設定値を受付ける。なお、数値入力ボックス321または数値変更ボタン331には、画素単位で各エレメントのX軸方向のサイズ(Sx)が入力される。同様に、数値入力ボックス322および数値変更ボタン332は、各エレメントのY軸方向のサイズ(Sy)の設定値を受付ける。なお、数値入力ボックス322または数値変更ボタン332には、画素単位で各エレメントのY軸方向のサイズ(Sy)が入力される。
また、数値入力ボックス323および数値変更ボタン333は、入力画像IMGの計測領域内に設定されるエレメントのX軸方向における作成間隔(Dx)の設定値を受付ける。なお、数値入力ボックス323または数値変更ボタン333には、画素単位で隣接するエレメント間のX軸方向の作成間隔(Dx)が入力される。同様に、数値入力ボックス324および数値変更ボタン334は、入力画像IMGの計測領域内に設定されるエレメントのY軸方向における作成間隔(Dy)の設定値を受付ける。なお、数値入力ボックス324または数値変更ボタン334には、画素単位で隣接するエレメント間のY軸方向の作成間隔(Dy)が入力される。
また、数値入力ボックス325および数値変更ボタン335は、欠陥度を算出するために比較されるエレメントの間のX軸方向における比較間隔(α)の設定値を受付ける。なお、数値入力ボックス325または数値変更ボタン335には、比較されるエレメント間に存在するエレメント数を単位として、比較間隔(α)が入力される。内部的には、この入力された比較間隔には、上述のエレメントのX軸方向における作成間隔(Dx)が乗じられて、画素数の単位で比較間隔(α)が算出される。同様に、数値入力ボックス326および数値変更ボタン336は、欠陥度を算出するために比較されるエレメントの間のY軸方向における比較間隔(β)の設定値を受付ける。なお、数値入力ボックス326または数値変更ボタン336には、比較されるエレメント間に存在するエレメント数を単位として、比較間隔(β)が入力される。内部的には、この入力された比較間隔には、上述のエレメントのY軸方向における作成間隔(Dy)が乗じられて、画素数の単位で比較間隔(β)が算出される。
チェックボックス327〜329は、検出値を算出するために各エレメントを評価する方向の設定を受付ける。すなわち、チェックボックス327が選択されると、X軸方向でエレメントが比較され、チェックボックス328が選択されると、Y軸方向でエレメントが比較され、チェックボックス329が選択されると、斜め方向(X軸とY軸とが成す角の1/2の角度)でエレメントが比較される。なお、上述したように、欠陥度は、隣接するエレメント間で代表値の差分をそれぞれ算出し、算出された差分のうち最も小さいものに相当する。そのため、比較される方向が増加した場合であっても、結果として出力される欠陥度は1つの値となる。
以上のように、ユーザは、検出パラメータ設定エリア310で各項目の値について設定・変更することにより、ワーク2に適した欠陥度を算出するためのパラメータを決定する。なお、検出パラメータ設定エリア310の設定値が更新される毎に、各評価点における欠陥度は再計算される。そして、その再計算後の欠陥度に基づいて、画像表示エリア340における表示が更新される。
判定条件設定エリア390では、エレメントに欠陥が存在するか否かを判定するためのしきい値である欠陥度判定値の設定および確認が可能である。より具体的には、判定条件設定エリア390は、欠陥度判定値を設定するためのスライドバーおよび数値変更ボタンを含み、いずれかに対するユーザ操作に応答して、欠陥度判定値が設定・更新される。なお、設定中の欠陥度判定値の数値が表示される。
画像表示エリア340には、撮像部8がワーク2を撮像して得られた入力画像が表示される。この表示される入力画像に対して、計測領域342が設定可能となっている。すなわち、ユーザは、画像表示エリア340に表示される入力画像を参照しながら、所望する位置に計測領域342を設定する。なお、計測領域342は、ユーザによるマウス操作(たとえば、クリックおよびドラッグなど)によって、その大きさおよび位置の設定・変更が可能である。
なお、本実施の形態に従う画像処理装置1においては、図示しない形状選択画面もしくは形状選択アイコンなどによって、矩形状、円弧状、任意形状のいずれかを選択するようにしてもよい。このように形状が選択されると、ユーザは、選択された形状に沿った計測領域の大きさおよび位置のみを決定すればよい。
(1.矩形状の計測領域)
図8には、矩形状の計測領域342が設定されている場合を示し、このように矩形状の計測領域342が設定される場合には、その一方の辺(図8の場合には、長手方向)をX軸とし、他方の辺(図8の場合には、短手方向)をY軸とすることができる。
このような計測領域342の設定がなされると、設定された計測領域342に対して、評価点(エレメント)が生成され、評価点(エレメント)の各々についての欠陥度が算出される。さらに、算出された欠陥度に基づいて、X軸に沿った欠陥度のプロファイルおよびY軸に沿った欠陥度のプロファイルが算出される。
そして、これらの算出されたX軸およびY軸のそれぞれに沿った欠陥度のプロファイルが、計測領域342の近接した位置に、計測領域342のそれぞれX軸およびY軸に対応付けて表示される。すなわち、計測領域342の長手方向と平行にプロファイル領域344が表示されるとともに、計測領域342の短手方向と平行にプロファイル領域346が表示される。
プロファイル領域344には、計測領域342のX軸上の位置と対応付けて、X軸に沿った欠陥度のプロファイル344Aが表示される。同時に、プロファイル領域344には、判定条件設定エリア390において設定される欠陥度判定値を示す判定値ライン344Cが表示される。
また、プロファイル領域346には、計測領域342のY軸上の位置と対応付けて、Y軸に沿った欠陥度のプロファイル346Aが表示される。同時に、プロファイル領域346には、判定条件設定エリア390において設定される欠陥度判定値を示す判定値ライン346Cが表示される。
さらに、計測領域342内において、ユーザが任意の観測点(以下、「タップ点TP」とも称す。)を設定することが可能である。より具体的には、ユーザがマウス操作(たとえば、クリックおよびドラッグなど)によって、計測領域342内の任意の位置を選択すると、図8に示すようなタップ点TPが設定される。すると、このタップ点TPを通り、X軸に平行な観測線348XおよびY軸に平行な観測線348Yが設定される。さらに、観測線348Xおよび観測線348Yに沿った欠陥度の分布がそれぞれ算出される。
そして、観測線348Xに沿った欠陥度の分布は、プロファイル344Bとして、プロファイル領域344に表示される。このプロファイル344Bは、X軸に沿った欠陥度のプロファイル344Aと同じスケールで対応付けて描画される。なお、プロファイル領域344には、タップ点TPに対応するX軸上の位置を示すインジケータ344Dも表示される。
同様に、観測線348Yに沿った欠陥度の分布は、プロファイル346Bとして、プロファイル領域346に表示される。このプロファイル346Bは、Y軸に沿った欠陥度のプロファイル346Aと同じスケールで対応付けて描画される。なお、プロファイル領域346には、タップ点TPに対応するY軸上の位置を示すインジケータ346Dも表示される。
さらに、計測領域342に含まれる評価点のうち、欠陥度判定値を超えているものを示す欠陥検出インジケータEPが表示される。この欠陥検出インジケータEPは、入力画像上に重ねて表示される。なお、欠陥検出インジケータEPに近接した位置に、その欠陥度の値を数値表示してもよい。
なお、画像表示エリア340に表示される入力画像のサイズは、表示制御アイコン群370に対するユーザ操作に応じて変更される。
全体表示エリア380には、画像表示エリア340に表示される内容が表示される。但し、全体表示エリア380には、画像表示エリア340での表示サイズとは独立して、表示対象の画像の全体が常に表示される。すなわち、全体表示エリア380には、画像表示エリア340に表示中の画像が画像全体のうちいずれの領域にあるのかを表示する。
パラメータ設定画面300には、プロファイル表示チェックボックス372および比較エレメント表示チェックボックス374が配置される。プロファイル表示チェックボックス372の選択が外されると、上述したプロファイル領域344および346の表示が消える。また、比較エレメント表示チェックボックス374が選択されると、計測領域342に設定されるエレメントの位置が視覚化される。
(2.円弧状の計測領域)
次に、図9を参照して、別の形状の計測領域が設定された場合について説明する。図9には、同一のワーク2に対して、円弧状の計測領域352が設定されている場合を示す。このような円弧状の計測領域352が設定される場合には、その円周方向をX軸とし、半径方向をY軸とすることができる。
このような計測領域352の設定がなされると、設定された計測領域352に対して、評価点(エレメント)が生成され、評価点(エレメント)の各々についての欠陥度が算出される。さらに、算出された欠陥度に基づいて、X軸に沿った欠陥度のプロファイルおよびY軸に沿った欠陥度のプロファイルが算出される。
そして、これらの算出されたX軸およびY軸のそれぞれに沿った欠陥度のプロファイルが、計測領域352の近接した位置に表示される。図9に示す計測領域352では、X軸が円周方向となるので、これを直線状に展開した上で、X軸に沿った欠陥度のプロファイルが表示される。すなわち、計測領域352の円周上の線分を直線上に展開したものに相当するプロファイル領域354が表示されるとともに、プロファイル領域354と平行な位置にプロファイル領域356が表示される。
プロファイル領域354には、計測領域352のX軸上の位置と対応付けて、X軸に沿った欠陥度のプロファイル354Aが表示される。同時に、プロファイル領域354には、判定条件設定エリア390において設定される欠陥度判定値を示す判定値ライン354Cが表示される。
また、プロファイル領域356には、計測領域352のY軸上の位置と対応付けて、Y軸に沿った欠陥度のプロファイル356Aが表示される。同時に、プロファイル領域356には、判定条件設定エリア390において設定される欠陥度判定値を示す判定値ライン356Cが表示される。
さらに、計測領域352内において、ユーザにより任意の位置にタップ点TPが設定されると、このタップ点TPを通り、X軸に平行な観測線358XおよびY軸に平行な観測線358Yが設定される。さらに、観測線358Xおよび観測線358Yに沿った欠陥度の分布がそれぞれ算出される。
そして、観測線358Xに沿った欠陥度の分布は、プロファイル354Bとして、プロファイル領域354に表示される。このプロファイル354Bは、X軸に沿った欠陥度のプロファイル354Aと同じスケールで対応付けて描画される。なお、プロファイル領域354には、タップ点TPに対応するX軸上の位置を示すインジケータ354Dも表示される。
同様に、観測線358Yに沿った欠陥度の分布は、プロファイル356Bとして、プロファイル領域356に表示される。このプロファイル356Bは、Y軸に沿った欠陥度のプロファイル356Aと同じスケールで対応付けて描画される。なお、プロファイル領域356には、タップ点TPに対応するY軸上の位置を示すインジケータ356Dも表示される。
さらに、計測領域352に含まれる評価点のうち、欠陥度判定値を超えているものを示す欠陥検出インジケータEPが表示される。この欠陥検出インジケータEPは、入力画像上に重ねて表示される。なお、欠陥検出インジケータEPに近接した位置に、その欠陥度の値を数値表示してもよい。
(3.任意形状の計測領域)
次に、図10を参照して、さらに別の形状の計測領域が設定された場合について説明する。図10には、同一のワーク2に対して、任意形状の代表例として、平行四辺形の計測領域362が設定されている場合を示す。このような任意形状の計測領域362が設定される場合には、計測領域の形状とは独立した、互いに直交する方向をX軸およびY軸とする。代表的に、図10に示す例では、入力画像の水平方向(紙面横方向)をX軸とし、入力画像の垂直方向(紙面縦方向)をY軸とする。
このような計測領域362の設定がなされると、設定された計測領域362に対して、評価点(エレメント)が設定され、評価点(エレメント)の各々についての欠陥度が算出される。さらに、算出された欠陥度に基づいて、X軸に沿った欠陥度のプロファイルおよびY軸に沿った欠陥度のプロファイルが生成される。なお、図10に示すような任意形状の計測領域362が設定される場合には、欠陥度のプロファイルの算出に用いられる評価点の数が同一ではなくなる。すなわち、X軸上のある位置に対応する評価点の数と、X軸上の他の点に対応する評価点の数とは必ずしも一致しない。しかしながら、算出される欠陥度のプロファイルは、対応する位置に存在する欠陥度のうち、その値が最大のものを示すのであり、対応する評価点の数が変動したとしても、その結果に影響を与えない。
そして、これらの算出されたX軸およびY軸のそれぞれに沿った欠陥度のプロファイルが、計測領域362の近接した位置に表示される。すなわち、計測領域362のX軸方向の最大幅と同じ幅をもつプロファイル領域364が表示される。同様に、計測領域362のY軸方向の最大幅と同じ幅をもつプロファイル領域366が表示される。
プロファイル領域364には、計測領域362のX軸上の位置と対応付けて、X軸に沿った欠陥度のプロファイル364Aが表示される。同時に、プロファイル領域364には、判定条件設定エリア390において設定される欠陥度判定値を示す判定値ライン364Cが表示される。
また、プロファイル領域366には、計測領域362のY軸上の位置と対応付けて、Y軸に沿った欠陥度のプロファイル366Aが表示される。同時に、プロファイル領域366には、判定条件設定エリア390において設定される欠陥度判定値を示す判定値ライン366Cが表示される。
さらに、計測領域362内において、ユーザにより任意の位置にタップ点TPが設定されると、このタップ点TPを通り、X軸に平行な観測線368XおよびY軸に平行な観測線368Yが設定される。さらに、観測線368Xおよび観測線368Yに沿った欠陥度の分布がそれぞれ算出される。
そして、観測線368Xに沿った欠陥度の分布は、プロファイル364Bとして、プロファイル領域364に表示される。このプロファイル364Bは、X軸に沿った欠陥度のプロファイル364Aと同じスケールで対応付けて描画される。なお、プロファイル領域364には、タップ点TPに対応するX軸上の位置を示すインジケータ364Dも表示される。
同様に、観測線368Yに沿った欠陥度の分布は、プロファイル366Bとして、プロファイル領域366に表示される。このプロファイル366Bは、Y軸に沿った欠陥度のプロファイル366Aと同じスケールで対応付けて描画される。なお、プロファイル領域366には、タップ点TPに対応するY軸上の位置を示すインジケータ366Dも表示される。
さらに、計測領域362に含まれる評価点のうち、欠陥度判定値を超えているものを示す欠陥検出インジケータEPが表示される。この欠陥検出インジケータEPは、入力画像上に重ねて表示される。なお、欠陥検出インジケータEPに近接した位置に、その欠陥度の値を数値表示してもよい。
<制御構造>
以下、図11および図12を参照して、上述のような画像補正処理を提供するための制御構造について説明する。
図11は、この発明の実施の形態に従う画像処理装置1における「設定モード」を提供するための制御構造を示すブロック図である。
図11を参照して、本実施の形態に従う画像処理装置1は、「設定モード」を提供するための制御構造として、画像バッファ222と、欠陥度算出部230と、プロファイル生成部224と、表示制御部226と、メモリ228と、検出パラメータ入力部242と、計測領域入力部244と、観測点入力部246と、欠陥度判定値入力部248とを含む。
画像バッファ222は、撮像部8による撮像によって得られた入力画像を一時的に格納する。この入力画像は、カメラインターフェイス部109(図2)を介して画像バッファ222へ伝送される。なお、画像バッファ222自身をカメラインターフェイス部109へ組み込んでもよい。この画像バッファ222へ一時的に格納された入力画像は、欠陥度算出部230および表示制御部226から任意にアクセス可能である。また、画像バッファ222に格納される入力画像は、撮像部8の撮像動作に応じて、逐次更新される。
欠陥度算出部230は、入力画像に設定される計測領域に含まれる複数の評価点(もしくはエレメント)の各々について欠陥度を算出する。より具体的には、欠陥度算出部230は、エレメント生成部232と、代表値テーブル234と、比較部236と、欠陥度テーブル238とを含む。
エレメント生成部232は、後述する検出パラメータ入力部242からの検出パラメータ設定、および計測領域入力部244からの計測領域設定に応答して、入力画像に設定された計測領域内に複数のエレメントを生成する。さらに、エレメント生成部232は、生成したエレメントの各々についての代表値を算出する。この算出された代表値は、代表値テーブル234に格納される。すなわち、代表値テーブル234には、各評価点の座標(もしくは、識別番号)とその代表値とが対応付けて格納される。
なお、エレメント生成部232は、入力画像の更新、検出パラメータ設定の変更、計測領域設定の変更などに応じて、エレメントの再設定および/または代表値の再計算を実行する。
比較部236は、後述する検出パラメータ入力部242からの検出パラメータ設定に応答して、代表値テーブル234に格納された隣接する評価点の代表値を比較して、各評価点における欠陥度を算出する。この算出された欠陥度は、欠陥度テーブル238に格納される。すなわち、欠陥度テーブル238には、各評価点の座標(もしくは、識別番号)とその欠陥度とが対応付けて格納される。
プロファイル生成部224は、計測領域入力部244からの計測領域設定に応答して、計測領域のX軸およびY軸に沿ったそれぞれのプロファイルを生成する。さらに、プロファイル生成部224は、観測点入力部246からの観測点設定(タップ点TPの座標)に応答して、タップ点TPを通るX軸およびY軸にそれぞれ平行な観測線に沿った欠陥度のプロファイルも生成する。さらに、プロファイル生成部224は、これらの生成したプロファイル、欠陥度判定値入力部248から受けた欠陥度判定値、およびタップ点TPの位置などの情報に基づいて、入力画像に重ねて表示すべきデータを表示制御部226へ出力する。
表示制御部226は、モニタ102上にGUIを提供する。具体的には、表示制御部226は、各種の設定や確認が可能なウィンドウとともに、画像バッファ222に格納されている入力画像をモニタ102に表示する。表示制御部226は、メモリ228と接続されており、モニタ102での表示を行なうための描画データをこのメモリ228などに一時的に格納する。
さらに、表示制御部226は、表示される入力画像に重ねて、計測領域を示す枠オブジェクト、それぞれのプロファイルを示すオブジェクト、設定されたタップ点およびタップ点を通りそれぞれの軸に平行な観測線を示すオブジェクト、欠陥度判定値を超えている部分を示す欠陥検出インジケータなどを表示する。
検出パラメータ入力部242は、パラメータ設定画面の検出パラメータ設定エリア310(図8〜図10)において設定される各種パラメータを受付ける。そして、検出パラメータ入力部242は、この受付けたパラメータをエレメント生成部232および比較部236へ出力する。
計測領域入力部244は、パラメータ設定画面の画像表示エリア340(図8〜図10)に表示される入力画像の上から設定される計測領域を受付ける。そして、計測領域入力部244は、この受付けた計測領域の設定をエレメント生成部232および表示制御部226へ出力する。
観測点入力部246は、パラメータ設定画面の画像表示エリア340(図8〜図10)に設定された計測領域内に指定される観測点(タップ点)の位置を受付ける。そして、観測点入力部246は、この受付けた観測点の設定をプロファイル生成部224へ出力する。
欠陥度判定値入力部248は、パラメータ設定画面の判定条件設定エリア390(図8〜図10)において設定される欠陥度判定値を受付ける。そして、欠陥度判定値入力部248は、この受付けた欠陥度判定値をプロファイル生成部224へ出力する。
図12は、この発明の実施の形態に従う画像処理装置1における「稼動モード」を提供するための制御構造を示すブロック図である。
図12を参照して、本実施の形態に従う画像処理装置1は、「稼動モード」を提供するための制御構造として、画像バッファ222と、欠陥度算出部230と、判定部252と、出力部254と、表示制御部226と、メモリ228と、検出パラメータ入力部242と、計測領域入力部244と、欠陥度判定値入力部248とを含む。
判定部252は、入力画像の計測領域内の評価点(もしくはエレメント)の各々について、その欠陥度と予め設定される欠陥度判定値とを比較する。そして、判定部252は、その欠陥度が欠陥度判定値を超えている評価点(もしくはエレメント)を特定する。さらに、判定部252は、この欠陥度判定値を超えている評価点(もしくはエレメント)をワーク2における「欠陥」として、その位置情報などを表示制御部226および出力部254へ出力する。
表示制御部226は、「欠陥」として判定された部分を視認できるように、モニタ102に表示する。
出力部254は、「欠陥」として判定された部分の情報を含む欠陥情報を、図示しない上位のコンピュータなどへ出力する。
それ以外の構成については、上述した図11と同様であるので、詳細な説明は繰返さない。
<処理手順>
(設定モード)
図13は、この発明の実施の形態に従う画像処理装置1における処理手順(設定モード)を示すフローチャートである。図13に示す処理は、CPU105が固定ディスク107などに予め格納されたプログラムをメモリ106に読出して実行することにより実現される。なお、画像処理装置1は、初期モードとして「設定モード」が選択されているものとする。
図13を参照して、CPU105は、撮像部8にワーク2を撮像させて、入力画像を取得し(ステップS100)、取得した入力画像をモニタ102に表示する(ステップS102)。
さらに、CPU105は、ユーザによる入力画像上からの計測領域の設定を受付ける(ステップS104)。すなわち、ユーザは、モニタ102に表示されるパラメータ設定画面(図8〜図10)において、入力画像上で所望する計測領域を設定する。
続いて、CPU105は、ユーザによる検出パラメータの設定を受付ける(ステップS106)。すなわち、ユーザは、モニタ102に表示されるパラメータ設定画面(図8〜図10)の検出パラメータ設定エリア310において、欠陥度を算出するための各種パラメータを設定する。
さらに、CPU105は、欠陥度判定値の設定を受付ける(ステップS108)。すなわち、ユーザは、モニタ102に表示されるパラメータ設定画面(図8〜図10)の判定条件設定エリア390において、エレメントに欠陥が存在するか否かを判定するためのしきい値である欠陥度判定値を設定する。
さらに、CPU105は、計測領域342内の観測点(タップ点)の設定を受付ける(ステップS110)。すなわち、ユーザは、入力画像上に設定した計測領域内の任意の位置にタップ点を設定する。
各種ユーザ設定が完了すると、CPU105は、設定された検出パラメータおよび計測領域に従って、入力画像に設定された計測領域内に複数のエレメントを生成する(ステップS112)。続いて、CPU105は、生成したエレメントの各々についての代表値を算出する(ステップS114)。さらに、CPU105は、設定された検出パラメータに従って、隣接する評価点の代表値を比較して、各評価点における欠陥度を算出する(ステップS116)。
さらに、CPU105は、算出された欠陥度に基づいて、計測領域のX軸およびY軸に沿ったそれぞれのプロファイルを生成する(ステップS118)。続いて、CPU105は、設定された観測点(タップ点TP)を通るX軸およびY軸にそれぞれ平行な観測線に沿った欠陥度のプロファイルを生成する(ステップS120)。
さらに、CPU105は、表示中の入力画像に重ねて、計測領域を示す枠オブジェクト、それぞれのプロファイルを示すオブジェクト、設定されたタップ点およびタップ点を通りそれぞれの軸に平行な観測線を示すオブジェクト、欠陥度判定値を超えている部分を示す欠陥検出インジケータなどを表示する(ステップS124)。
その後、CPU105は、計測領域の設定が変更されたか否かを判断する(ステップS126)。計測領域の設定が変更された場合(ステップS126においてYESの場合)には、CPU105は、変更後の計測領域に従って、複数のエレメントを再生成する(ステップS128)。そして、ステップS114以降の処理が繰返される。
一方、計測領域の設定が変更されていない場合(ステップS126においてNOの場合)には、CPU105は、検出パラメータの設定が変更されたか否かを判断する(ステップS130)。検出パラメータの設定が変更された場合(ステップS130においてYESの場合)には、CPU105は、変更後の検出パラメータに従って、複数のエレメントを再生成する(ステップS128)。そして、ステップS114以降の処理が繰返される。
一方、検出パラメータの設定が変更されていない場合(ステップS130においてNOの場合)には、CPU105は、欠陥度判定値の設定が変更されたか否かを判断する(ステップS132)。欠陥度判定値の設定が変更された場合(ステップS132においてYESの場合)には、CPU105は、変更後の欠陥度判定値に従って、モニタ102にプロファイルとともに表示される判定値ラインを更新する(ステップS134)。
欠陥度判定値の設定が変更されていない場合(ステップS132においてNOの場合)、もしくはステップS134の実行後、CPU105は、計測領域342内の観測点(タップ点)の設定が変更されたか否かを判断する(ステップS136)。観測点(タップ点)の設定が変更された場合(ステップS136においてYESの場合)には、CPU105は、変更後の観測点(タップ点TP)を通るX軸およびY軸にそれぞれ平行な観測線に沿った欠陥度のプロファイルを再生成し(ステップS138)、モニタ102に表示されるプロファイルを更新する(ステップS140)。
計測領域342内の観測点(タップ点)の設定が変更されていない場合(ステップS136においてNOの場合)、もしくはステップS140の実行後には、CPU105は、「OK」ボタンが選択されたか否かを判断する(ステップS142)。「OK」ボタンが選択された場合(ステップS142においてYESの場合)には、CPU105は、現在設定中の各種パラメータや計測領域などを格納し(ステップS144)、「稼動モード」へ移行する(ステップS146)。そして、図14に示す処理が実行される。
一方、「OK」ボタンが選択されていない場合(ステップS142においてNOの場合)には、ステップS126以下の処理が繰返される。
(稼働モード)
図14は、この発明の実施の形態に従う画像処理装置1における処理手順(稼働モード)を示すフローチャートである。図14に示す処理は、CPU105が固定ディスク107などに予め格納されたプログラムをメモリ106に読出して実行することにより実現される。
図14を参照して、CPU105は、光電センサによるワーク2の到着が検出された否かを判断する(ステップS200)。ワーク2の到着が検出されていない場合(ステップS200においてNOの場合)には、ステップS200の処理を繰返す。
ワーク2の到着が検出された場合(ステップS200においてYESの場合)には、CPU105は、撮像部8にワーク2を撮像させて、入力画像を取得し(ステップS202)、取得した入力画像をモニタ102に表示する(ステップS202)。
続いて、CPU105は、設定されている検出パラメータおよび計測領域に従って、入力画像に設定された計測領域内に複数のエレメントを生成する(ステップS204)。続いて、CPU105は、生成したエレメントの各々についての代表値を算出する(ステップS206)。さらに、CPU105は、設定された検出パラメータに従って、隣接する評価点の代表値を比較して、各評価点における欠陥度を算出する(ステップS208)。
さらに、CPU105は、算出された欠陥度の各々と設定されている欠陥度判定値とを比較し、欠陥度判定値を超えている欠陥度を抽出する(ステップS210)。そして、CPU105は、抽出した欠陥度判定値を超えている欠陥度に対応する位置情報を生成し(ステップS212)、生成した処理結果を外部出力する(ステップS214)。
その後、CPU105は、モード切替えの指令が与えられたか否かを判断する(ステップS216)。モード切替えの指令が与えられた場合(ステップS216においてYESの場合)には、CPU105は、「設定モード」へ移行する(ステップS218)。そして、図13に示す処理が実行される。
一方、モード切替えの指令が与えられていない場合(ステップS216においてNOの場合)には、処理はリターンする。
<本実施形態の作用効果>
この発明の実施の形態によれば、表示される入力画像上に重ねて設定された計測領域に近接して、計測領域のX軸およびY軸に沿った欠陥度のプロファイルがそれぞれ表示される。これらのX軸およびY軸に沿った欠陥度のプロファイルは、計測領域のそれぞれX軸およびY軸に沿った欠陥度の最大値を示す。そのため、ユーザは、計測領域に含まれる各評価点についての欠陥度の三次元的なプロットを、X軸およびY軸のそれぞれの側面から観察した場合のピーク(稜線)を一見して把握することができる。
さらに、それぞれのプロファイルと対応付けて、ユーザ設定されている欠陥度判定値を示す判定値ラインが表示される。そのため、ユーザは、計測領域のX軸およびY軸のそれぞれの側面から見た場合に、欠陥度判定値(しきい値)に対する欠陥値の最大値の余裕度を直感的に把握することができる。
したがって、このようなユーザインターフェイスによれば、ユーザは、プロファイル全体を見ながら、本来の欠陥を確実に検出でき、かつ検出されるべきではないノイズなどを排除できるような欠陥度判定値(しきい値)を容易に設定することができる。すなわち、検査の安定性およびパラメータの妥当性を同時に評価することができる。
また、この発明の実施の形態によれば、エレメントのサイズや作成間隔といった欠陥度の算出に係るパラメータが変更された場合、あるいは欠陥度判定値(しきい値)が変更された場合には、計測領域内の各評価点における欠陥度が再計算される。そして、この再計算された欠陥度に基づいて、表示が更新される。すなわち、ユーザが各種パラメータを変更する毎に、表示されるプロファイルなどの表示がリアルタイムで更新される。
したがって、ユーザは、順次パラメータを変更していき、適切な値を決定するような操作を行なう場合であっても、短時間にそれを完了することができる。
また、この発明の実施の形態によれば、計測領域にタップ点を設定すると、当該タップ点を通り、かつX軸およびY軸にそれぞれ平行な観測線に沿った欠陥度のプロファイルが算出される。そして、これらのタップ点に関するプロファイルは、計測領域のX軸およびY軸に沿った欠陥度のプロファイルとともに表示される。
すなわち、計測領域のそれぞれX軸およびY軸に沿った欠陥度の最大値を示すマクロ的なプロファイルに加えて、タップ点に関するミクロ的なプロファイルが同時に表示される。このような表示によって、ユーザは、欠陥検出に係るパラメータの妥当性を計測領域の全体で判断することができるとともに、欠陥検出に係るパラメータの局所的な妥当性を同時に判断することができる。
したがって、被測定物(ワーク)の表面の一部に不規則な模様などがあるような場合であっても、検査の安定性およびパラメータの妥当性を同時に評価することができる。
[その他の実施の形態]
本発明に係るプログラムは、コンピュータのオペレーティングシステム(OS)の一部として提供されるプログラムモジュールのうち、必要なモジュールを所定の配列で所定のタイミングで呼出して処理を実行させるものであってもよい。その場合、プログラム自体には上記モジュールが含まれずOSと協働して処理が実行される。このようなモジュールを含まないプログラムも、本発明にかかるプログラムに含まれ得る。
また、本発明に係るプログラムは他のプログラムの一部に組込まれて提供されるものであってもよい。その場合にも、プログラム自体には上記他のプログラムに含まれるモジュールが含まれず、他のプログラムと協働して処理が実行される。このような他のプログラムに組込まれたプログラムも、本発明に係るプログラムに含まれ得る。
提供されるプログラム製品は、ハードディスクなどのプログラム格納部にインストールされて実行される。なお、プログラム製品は、プログラム自体と、プログラムが記憶された記録媒体とを含む。
さらに、本発明に係るプログラムによって実現される機能の一部または全部を専用のハードウェアによって構成してもよい。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
1 画像処理装置、2 ワーク、4a 受光部、4b 投光部、6 搬送機構、8 撮像部、100 コンピュータ、101 コンピュータ本体、102 モニタ、103 キーボード、104 マウス、106 メモリ、107 固定ディスク、109 カメラインターフェイス部、111 FD駆動装置、113 CD−ROM駆動装置、115 PLCインターフェイス部、117 センサインターフェイス部、222 画像バッファ、224 プロファイル生成部、226 表示制御部、228 メモリ、230 欠陥度算出部、232 エレメント生成部、234 代表値テーブル、236 比較部、238 欠陥度テーブル、242 検出パラメータ入力部、244 計測領域入力部、246 観測点入力部、248 欠陥度判定値入力部、252 判定部、254 出力部。