以下に、一つの実施の形態について、図1乃至図17を参照して説明する。なお、実施形態に係る構成要素や、当該要素の説明について、複数の表現を併記することがある。当該構成要素及び説明について、記載されていない他の表現がされることは妨げられない。さらに、複数の表現が記載されない構成要素及び説明について、他の表現がされることは妨げられない。
図1は、一つの実施の形態に係る画像検査システム1を概略的に示す図である。本実施形態の画像検査システム1は、画像検査装置10を有し、検査対象物100の検査対象面101(対象面)を撮像した画像に基づき、当該検査対象物100の検査を行う。
検査対象物100は、例えば、リチウムイオン電池のシート状の電極である。検査対象面101は、シート状の検査対象物100の側面である。なお、検査対象物100はこれに限らず、例えば長尺状や円環状の、他の物体であっても良い。
画像検査システム1は、複数の光源2U,2Dを有する。光源2U,2Dは、光学装置、光学系部品、光学系とも称され得る。光源2Uは、検査対象面101と直交する方向(垂直方向)に対して一方側(図1の左側)に傾斜した第1の照射方向から検査対象面101の検査対象領域Aに光を当てる。光源2Dは、検査対象面101と直交する方向(垂直方向)に対して他方側(図1の右側)に傾斜した第2の照射方向から検査対象面101の検査対象領域Aに光を当てる。
第1の照射方向は、検査対象領域Aの中央部Cに対して、検査対象面101に沿う方向(0°)と検査対象面101に対して直交する方向(90°)との間の第1の角度(例えば45°)をなす方向である。第2の照射方向は、検査対象領域Aの中央部Cに対して、検査対象面101に沿う方向(180°)と検査対象面101に対して直交する方向(90°)との間の第2の角度(例えば135°)をなす方向である。
複数の光源2U,2Dが複数の方向から光を当てることで、検査対象面101がより明るくなるとともに、一方から光を当てた場合に比べて凹凸による影の影響が低減(減殺)されやすい。なお、本実施形態において、第1の照射方向(第1の角度)と第2の照射方向(第2の角度)とは、検査対象面101と直交する方向に対して対称であるが、非対称であっても良い。また、本実施形態において、光源2U,2Dから直接的に検査対象面101に光が照射されるが、光源2U及び光源2Dと検査対象面101との間にレンズや、ミラー、プリズム等の光学装置(光学系部品、光学系)が設けられても良い。
撮像部(撮像装置)3は、検査対象面101の検査対象領域Aの中央部Cに対して、検査対象面101と直交する方向に配置され、検査対象領域Aを撮像する。検査対象領域Aは、検査対象面101に沿い、その位置での検査対象面101の幅方向(搬送方向に対して直交する方向、図1の紙面と垂直な方向)に沿った線状(直線状)の領域である。撮像部3は、当該検査対象領域Aを撮像するラインセンサである。
撮像部3は、検査対象面101の幅方向(図1の紙面と垂直な方向)に沿って一列に配置された複数の撮像素子(光電変換素子)を有する。撮像部3は、検査対象面101の幅方向に沿った線状の画像(画像データ、各光電変換素子に対応した画素毎の輝度値のデータ、輝度値のデータ列)を取得する。各撮像素子は、例えば256階調の輝度値のデータを取得する。
撮像部3は、撮像される各時刻(タイミング)で、一次元の画像を取得する。よって、検査対象領域Aは、線状(線分状)の領域である。モノクロ(白黒)の撮像部3の場合、各撮像素子について一つの画像データが取得される。一方、カラーの撮像部3の場合、各撮像素子について複数(例えば、R(赤)G(緑)B(青)の三つ)の画像データが取得される。
また、撮像部3は、検査対象領域Aが第1の照射方向からの光が当てられるとともに第2の照射方向からの光が当てられた状態で、所定の時間間隔で画像を取得する。検査対象物100が搬送部4(図2に示す)によって図1の右方向へ搬送されている状態で、撮像部3は検査対象面101の画像を取得する。よって、検査対象面101における撮像領域(検査対象領域A)は、図1の左方向へ順次移動することになる。
画像が取得される時間間隔は、十分に短く設定され得る。例えば、光源2U,2Dの発光(光の照射)の切り替えの周波数、すなわち撮像部3によるライン毎の撮像の周波数は、6kHzに設定される。ラインセンサは、一般的にエリアセンサより応答性が高く、より速い撮像が可能である。
撮像部3の撮像方法は、上述の方法に限らない。例えば、撮像部3は、一つの撮像素子を有し、当該撮像素子によって検査対象物100の検査対象面101の二次元の画像を取得しても良い。
図2は、本実施形態の画像検査装置10を模式的に示すブロック図である。図2に示されるように、画像検査装置10は、CPU(Central Processing Unit)のような制御部20と、ROM(Read Only Memory)21と、RAM(Random Access Memory)22と、HDD(Hard Disk Drive)23と、コントローラ(光照射コントローラ)24と、コントローラ(撮像コントローラ)25と、コントローラ(搬送コントローラ)26と、コントローラ(搬送検出コントローラ、アンプ)27と、コントローラ(出力コントローラ)28とを備える。
コントローラ24は、制御部20からの制御信号に基づいて、光源2U,2Dの発光(オン、オフ)等を制御する。なお、開閉を切り替えて光の出射と出射停止とを切り替えるシャッター等の可変装置が設けられた場合、コントローラ24は、当該可変装置の動作を制御しても良い。
コントローラ25は、制御部20からの制御信号に基づいて、撮像部3による撮像を制御する。コントローラ26は、制御部20から受けた制御信号に基づいて、搬送部4を制御し、検査対象物100の搬送(開始、停止、速度等)を制御する。搬送部4は、例えば、コンベヤや、ローラ、モータ等を含む。
コントローラ27は、搬送検出部5の検出信号を得て、制御部20に検出結果(角度、位置)を送る(入力する)。コントローラ28は、制御部20からの制御信号に基づいて、出力部6を制御する。出力部6は、例えば、LCD(Liquid Crystal Display)や、OELD(Organic Electroluminescent Display)のような表示装置である。
制御部20は、不揮発性の記憶部としてのROM21やHDD23等にインストールされたプログラム(アプリケーション)を読み出して実行する。RAM22は、制御部20がプログラムを実行して種々の演算処理を実行する際に用いられる各種データを一時的に記憶する。
図2に示されるハードウェアの構成はあくまで一例であって、例えばチップやパッケージにする等、種々に変形して実施することが可能である。また、各種演算処理は、並列処理することが可能であり、制御部20等は、並列処理が可能なハードウェア構成とすることが可能である。なお、画像検査システム1は、出力部として、スピーカ等の音声出力装置を備えることができる。
図3は、本実施形態の画像検査装置10の制御部20を模式的に示すブロック図である。制御部20は、ハードウェアとソフトウエア(プログラム)との協働によって、画像検査装置10の少なくとも一部として機能(動作)する。すなわち、図3に示されるように、制御部20は、光照射制御部31、撮像制御部32、搬送制御部33、画像取得部34、代表値算出部35、異常検出部36、及び出力制御部37として機能する。異常検出部36は、二値化部41と、候補検出部42と、候補統合部43と、特徴量算出部44と、異常判定部45を含む。さらに、異常判定部45は、MD算出部51と、MT判定部52とを含む。なお、制御部20の機能はこれに限らない。
光照射制御部31は、コントローラ24を制御することで、光源2U,2Dまたは可変装置を制御する。撮像制御部32は、コントローラ25を制御することで、撮像部3を制御する。搬送制御部33は、コントローラ26を制御することで、搬送部4を制御する。
図4は、本実施形態の画像検査装置10が実行する処理の一例を示すフローチャートである。制御部20は、例えば図4に示されるような手順で、画像処理及び異常検出を実行する。なお、制御部20が実行する画像処理及び異常検出は、以下に説明するものに限らない。
まず、制御部20は、光照射制御部31、撮像制御部32、及び画像取得部34として機能し、光源2U,2Dや、撮像部3を制御して、検査対象面101の画像データFを取得する(S10)。画像データFは、検査対象面の画像の一例である。
S10で、制御部20(光照射制御部31及び撮像制御部32)は、搬送速度に応じたタイミング(位置)で撮像を行う。制御部20(画像取得部34)は、各タイミングで取得した線状の画像データを並べて、図5に示すような二次元の画像データFを取得する。
図5は、本実施形態の検査対象面101についての互いに直交するi方向およびj方向の二次元の画像データFの一部を例示する平面図である。図5において、破線の枠が、画像データFにおける画素Pを示す。
座標iは、副走査方向(搬送方向、横方向)に沿った画素Pの位置に対応し、座標jは、主走査方向(搬送方向との直交方向、ラインセンサによる撮像範囲の長手方向、縦方向)に沿った画素Pの位置に対応する。副走査方向は、第1の方向の一例である。主走査方向は、第2の方向の一例であり、副走査方向と直交する方向である。
画像データFに、要素Ea,En(画像)が存在することがある。要素Ea,Enは、検査対象面101上に存在する典型的な要素の例である。要素Eaは、異常な要素(画像、検出対象要素)であり、要素Enは、正常な要素(画像、非検出対象要素)である。要素Eaは、異常な部分の一例である。
本実施形態において、要素Eaは、例えば、電極である検査対象物100に存在する欠陥が画像データFに表れた部分である。当該欠陥は、例えば、検査対象面101から突出した、金属のような異物である。要素Eaが存在する部分の輝度値は、要素Ea,Enが存在しない部分の輝度値よりも高くなる。なお、要素Eaはこれに限らない。
本実施形態において、要素Enは、電極である検査対象物100の検査対象面101に塗布された電極粒子が、画像データFに表れた部分である。電極粒子は検査対象面101に満遍なく塗布されるが、光源2U,2Dによって当てられた光により、いくつかの電極粒子が画像データFに明るく表れることがある。要素Enは、このような電極粒子が画像データFに明るく表れた部分である。このため、要素Enが存在する部分の輝度値は、要素Ea,Enが存在しない部分の輝度値よりも高くなる。なお、要素Enはこれに限らない。
図5の例において、要素Eaは、要素Enよりも大きい。要素Eaの大きさは、検査対象面101上の一つの画素Pに略対応する領域に、一つの要素Eaが丁度収まる程度の大きさである。要素Enの大きさは、検査対象面101上の一つの画素Pに対応する領域に、四つの要素Enが丁度収まる程度の大きさである。言い換えると、要素Enは、画素Pに対応する領域の四分の一に対応する大きさである。すなわち、図5の例における異常な要素Eaは、正常な要素Enの略四倍の大きさを有する。本実施形態における検出の対象である異常な要素Eaは、正常な要素Enの四倍以上の大きさを有する。なお、要素Ea,Enの大きさはこれに限らない。
正常な要素Enは、検査対象面101上では分散される傾向にある。このため、隣接した複数の画素Pに対応した領域、又は一つの画素Pに対応した領域に複数の正常な要素Enが密集して存在する確率は低い。しかし、複数の正常な要素Enは、隣接した複数の画素Pに対応した領域、又は一つの画素Pに対応した領域に密集して存在する可能性がある。
図5において、要素Ea,Enは、便宜上、模式的に円形(真円)状に示される。しかし、要素Ea,Enは、円形状に限らず、長円状、線状、多角形状のような、他の形状を有しても良い。
図4に戻って、次に、制御部20は、以下に説明するように、画像データFから複数のフィルタリング画像を作成する(S11)。図6は、本実施形態の制御部20がフィルタリング画像を作成するS11の処理の一例を示すフローチャートである。制御部20は、例えば図6に示されるような手順で、各フィルタリング画像を作成する。なお、制御部20がフィルタリング画像を作成する手順は、以下に説明するものに限らない。
まず、制御部20は、代表値算出部35として機能し、二次元の画像データFの画素P毎に、第1の空間フィルタαによって、当該画素Pの輝度値の第1の代表値L1(i,j)を算出する(S101)。図7は、本実施形態の要素Eaに対応する画素Pを含む画像データFの一部と第1の空間フィルタαとを示す平面図である。画像データFにおいて、図7が示す部分と、図5が示す部分とは異なる。
第1の空間フィルタαは、第1の代表値L1(i,j)の算出の対象となる画素P(以下、注目画素Ppと称する)と、注目画素Ppの近傍に位置する複数(本実施形態においては三つ)の画素P(以下、周辺画素Paと称する)とを利用し、注目画素Ppの輝度値の第1の代表値L1(i,j)を算出する。言い換えると、第1の空間フィルタαは、注目画素Ppを含む互いに隣接した複数(四つ)の画素Pの輝度値に基づき、注目画素Ppの輝度値の第1の代表値L1(i,j)を算出する。図7は、注目画素Ppと、複数の周辺画素Paとを、それぞれ異なるハッチングによって示す。
具体的に説明すると、注目画素Ppが、i=m,j=nである座標に位置する画素P(m,n)である場合、第1の空間フィルタαは、当該画素P(m,n)と、画素P(m+1,n)と、画素P(m,n+1)と、画素P(m+1,n+1)とを、第1の代表値L1(i,j)の算出に利用する。
代表値算出部35は、第1の空間フィルタαにより、画素P(m,n)の輝度値L(m,n)と、画素P(m+1,n)の輝度値L(m+1,n)と、画素P(m,n+1)の輝度値L(m,n+1)と、画素P(m+1,n+1)の輝度値L(m+1,n+1)と、の合計値Ls1を算出する。すなわち、第1の空間フィルタαによって算出される合計値Ls1は、
Ls1=L(m,n)+L(m+1,n)+L(m,n+1)+L(m+1,n+1) …(数1)
で表される。
さらに、代表値算出部35は、第1の空間フィルタαにより、画素P(m,n)の輝度値L(m,n)と、画素P(m+1,n)の輝度値L(m+1,n)と、画素P(m,n+1)の輝度値L(m,n+1)と、画素P(m+1,n+1)の輝度値L(m+1,n+1)と、の平均値La1を算出する。すなわち、第1の空間フィルタαによって算出される平均値La1は、
La1=Ls1/4 …(数2)
で表される。
本実施形態において、平均値La1が、注目画素Ppの輝度値の第1の代表値L1(i,j)として利用される。なお、合計値Ls1が、注目画素Ppの輝度値の第1の代表値L1(i,j)として利用されても良い。また、輝度値L(m,n)、L(m+1,n)、L(m,n+1)、L(m+1,n+1)の中央値や他の値が、注目画素Ppの輝度値の第1の代表値L1(i,j)として利用されても良い。
代表値算出部35は、画素P(m,n)の第1の代表値L1(m,n)を算出すると、例えば隣接する画素P(m+1,n)を注目画素Ppとして、第1の代表値L1(m+1,n)を算出する。このように、代表値算出部35は、画像データFの全ての画素Pの第1の代表値L1(i,j)を算出するまで、注目画素Ppの座標の移動と、当該注目画素Ppの輝度値の第1の代表値L1(i,j)の算出とを繰り返す。このように、代表値算出部35は、第1の空間フィルタαによって、画像データFにおける各画素Pの第1の代表値L1(i,j)を算出する。
なお、代表値算出部35は、画像データFの一部の画素Pの第1の代表値L1(i,j)を算出しても良い。例えば、代表値算出部35は、画像データFの端に位置する画素Pの第1の代表値L1(i,j)の算出を省略しても良い。
図7に示す場合において、要素Eaは、注目画素Pp(画素P(m,n))及び三つの周辺画素Pa(画素P(m+1,n)、画素P(m,n+1)、及び画素P(m+1,n+1))に対応する領域に跨って存在する。このため、図7に示す場合に第1の空間フィルタαによって算出される注目画素Ppの輝度値の第1の代表値L1(i,j)は、例えば、要素Eaの一部(例えば四分の一の部分)が注目画素Pp及び三つの周辺画素Paのいずれか一つに対応する領域に存在する場合の第1の代表値L1(i,j)よりも高い。
図8は、本実施形態の要素Enに対応する画素Pを含む画像データFの一部と第1の空間フィルタαとを示す平面図である。画像データFにおいて、図8が示す部分と、図7が示す部分とは異なる。図8に示すように、隣接した複数の画素Pに対応した領域に、例えば二つの正常な要素Enが密集して存在する場合がある。
図8に示す場合において、二つの要素Enは、注目画素Pp(画素P(m,n))と一つの周辺画素Pa(画素P(m,n+1))とに対応する領域に存在する。このため、図8に示す場合に第1の空間フィルタαによって算出される注目画素Ppの第1の代表値L1(i,j)は、図7に示す場合に第1の空間フィルタαによって算出される第1の代表値L1(i,j)よりも低い。しかし、図8に示す場合に第1の空間フィルタαによって算出される第1の代表値L1(i,j)は、例えば、一つの要素Enが注目画素Pp及び三つの周辺画素Paのいずれか一つに対応する領域に存在する場合の第1の代表値L1(i,j)よりも高くなる。
以上のように、正常な要素Enの配置(分布)によって、正常な要素Enに対応する画素Pの第1の代表値L1(i,j)が、異常な要素Eaに対応する画素Pの第1の代表値L1(i,j)に近くなる可能性がある。しかし、画像検査装置10は、後述のように複数の空間フィルタを用いることで、正常な要素Enと異常な要素Eaとをより精度良く区別することを可能とする。
図6に戻って、次に、制御部20は、画像取得部34として機能し、画像データFの各画素Pの輝度値の第1の代表値L1(i,j)から、第1のフィルタリング画像Aαを作成する(S102)。すなわち、画像取得部34は、第1の空間フィルタαによって画像データFをぼかし、画像データFの各画素Pの輝度値L(i,j)を第1の代表値L1(i,j)に変更した第1のフィルタリング画像Aαを作成する。なお、第1のフィルタリング画像Aαの作成方法はこれに限らない。画像取得部34は、第1のフィルタリング画像Aαを、画像データFと別個に、例えばRAM22に保存する。
次に、制御部20は、代表値算出部35として機能し、二次元の画像データFの画素P毎に、第2の空間フィルタβによって、当該画素Pの輝度値の第2の代表値L2(i,j)を算出する(S103)。図9は、本実施形態の要素Enに対応する画素Pを含む画像データFの一部と第2の空間フィルタβとを示す平面図である。画像データFにおいて、図9が示す部分と、図8が示す部分とは同一である。
第2の空間フィルタβは、注目画素Ppを含む互いに隣接した複数の画素Pの輝度値に基づき、注目画素Ppの輝度値の第2の代表値L2(i,j)を算出する。図9に示すように、第2の空間フィルタβは、第1の空間フィルタαと異なる形状を有する。すなわち、第2の空間フィルタβが第2の代表値L2(i,j)の算出に利用する複数の画素Pと、第1の空間フィルタαが第1の代表値L1(i,j)の算出に利用する複数の画素Pとは、互いに異なる。
具体的に説明すると、第2の空間フィルタβは、画素P(m,n)と、画素P(m,n−1)と、画素P(m,n+1)と、画素P(m,n+2)とを、第2の代表値L2(i,j)の算出に利用する。言い換えると、第2の空間フィルタβは、主走査方向(図9の縦方向)に互いに隣接する複数の画素Pの輝度値に基づき、第2の代表値L2(i,j)を算出する。すなわち、第2の空間フィルタβは、第1の空間フィルタの一例である。
第1の空間フィルタαが第1の代表値L1(i,j)の算出に利用する複数の画素Pと、第2の空間フィルタβが第2の代表値L2(i,j)の算出に利用する複数の画素Pとは、二つの共通の画素P(m,n)及びP(m,n+1)を含む。
代表値算出部35は、第2の空間フィルタβにより、画素P(m,n)の輝度値L(m,n)と、画素P(m,n−1)の輝度値L(m,n−1)と、画素P(m,n+1)の輝度値L(m,n+1)と、画素P(m,n+2)の輝度値L(m,n+2)と、の合計値Ls2及び平均値La2を算出する。すなわち、第2の空間フィルタβによって算出される合計値Ls2は、
Ls2=L(m,n)+L(m,n−1)+L(m,n+1)+L(m,n+2) …(数3)
で表され、平均値La2は、
La2=Ls2/4 …(数4)
で表される。本実施形態において、平均値La2が、注目画素Ppの輝度値の第2の代表値L2(i,j)として利用される。なお、合計値Ls2や中央値のような他の値が、注目画素Ppの輝度値の第2の代表値L2(i,j)として利用されても良い。
代表値算出部35は、S101と同じく、画像データFの全ての画素Pの第2の代表値L2(i,j)を算出するまで、注目画素Ppの座標の移動と、当該注目画素Ppの輝度値の第2の代表値L2(i,j)の算出とを繰り返す。このように、代表値算出部35は、第2の空間フィルタβによって、画像データFにおける各画素Pの第2の代表値L2(i,j)を算出する。
図9に示す場合において、隣接する二つの要素Enは、注目画素Ppと一つの周辺画素Paとに対応する領域に存在する。このため、図9に示す場合に第2の空間フィルタβによって算出される第2の代表値L2(i,j)は、図8に示す場合に第1の空間フィルタαによって算出される第1の代表値L1(i,j)と略同一となる。
図6に戻って、次に、制御部20は、画像取得部34として機能し、画像データFの各画素Pの輝度値の第2の代表値L2(i,j)から、第2のフィルタリング画像Aβを作成する(S104)。すなわち、画像取得部34は、S102と同じく、画像データFの各画素Pの輝度値L(i,j)を第2の代表値L2(i,j)に変更した第2のフィルタリング画像Aβを作成する。画像取得部34は、第2のフィルタリング画像Aβを、画像データFと別個に、例えばRAM22に保存する。
次に、制御部20は、代表値算出部35として機能し、二次元の画像データFの画素P毎に、第3の空間フィルタγによって、当該画素Pの輝度値の第3の代表値L3(i,j)を算出する(S105)。図10は、本実施形態の要素Enに対応する画素Pを含む画像データFの一部と第3の空間フィルタγとを示す平面図である。画像データFにおいて、図10が示す部分と、図8が示す部分とは同一である。
第3の空間フィルタγは、注目画素Ppを含む互いに隣接した複数の画素Pの輝度値に基づき、注目画素Ppの輝度値の第3の代表値L3(i,j)を算出する。図10に示すように、第3の空間フィルタγは、第1の空間フィルタαと異なる形状を有する。すなわち、第3の空間フィルタγが第3の代表値L3(i,j)の算出に利用する複数の画素Pと、第1の空間フィルタαが第1の代表値L1(i,j)の算出に利用する複数の画素Pとは、互いに異なる。
具体的に説明すると、第3の空間フィルタγは、画素P(m,n)と、画素P(m−1,n)と、画素P(m+1,n)と、画素P(m+2,n)とを、第3の代表値L3(i,j)の算出に利用する。言い換えると、第3の空間フィルタγは、副走査方向(図10の横方向)に互いに隣接する複数の画素Pの輝度値に基づき、第3の代表値L3(i,j)を算出する。すなわち、第3の空間フィルタγは、第2の空間フィルタの一例である。
第1の空間フィルタαが第1の代表値L1(i,j)の算出に利用する複数の画素Pと、第3の空間フィルタγが第3の代表値L3(i,j)の算出に利用する複数の画素Pとは、二つの共通の画素P(m,n)及びP(m+1,n)を含む。
代表値算出部35は、第3の空間フィルタγにより、画素P(m,n)の輝度値L(m,n)と、画素P(m−1,n)の輝度値L(m−1,n)と、画素P(m+1,n)の輝度値L(m+1,n)と、画素P(m+2,n)の輝度値L(m+2,n)と、の合計値Ls3及び平均値La3を算出する。すなわち、第3の空間フィルタγによって算出される合計値Ls3は、
Ls3=L(m,n)+L(m−1,n)+L(m+1,n)+L(m+2,n) …(数5)
で表され、平均値La3は、
La3=Ls3/4 …(数6)
で表される。本実施形態において、平均値La3が、注目画素Ppの輝度値の第3の代表値L3(i,j)として利用される。なお、合計値Ls3や中央値のような他の値が、注目画素Ppの輝度値の第3の代表値L3(i,j)として利用されても良い。
代表値算出部35は、S101と同じく、画像データFの全ての画素Pの第3の代表値L3(i,j)を算出するまで、注目画素Ppの座標の移動と、当該注目画素Ppの輝度値の第3の代表値L3(i,j)の算出とを繰り返す。このように、代表値算出部35は、第3の空間フィルタγによって、画像データFにおける各画素Pの第3の代表値L3(i,j)を算出する。
図10に示す場合において、隣接する二つの要素Enのうち一つが、注目画素Ppに対応する領域に存在する。このため、図10に示す場合に第3の空間フィルタγによって算出される第3の代表値L3(i,j)は、図8に示す場合に第1の空間フィルタαによって算出される第1の代表値L1(i,j)よりも低くなる。しかし、図10に示す場合に第3の空間フィルタγによって算出される第3の代表値L3(i,j)は、例えば、要素Ea,Enが注目画素Pp及び三つの周辺画素Paに対応する領域のいずれにも存在しない場合の第3の代表値L3(i,j)よりも高くなる。
図6に戻って、次に、制御部20は、画像取得部34として機能し、画像データFの各画素Pの輝度値の第3の代表値L3(i,j)から、第3のフィルタリング画像Aγを作成する(S106)。すなわち、画像取得部34は、S102と同じく、画像データFの各画素Pの輝度値L(i,j)を第3の代表値L3(i,j)に変更した第3のフィルタリング画像Aγを作成する。画像取得部34は、第3のフィルタリング画像Aγを、画像データFと別個に、例えばRAM22に保存する。
次に、制御部20は、代表値算出部35として機能し、二次元の画像データFの画素P毎に、第4の空間フィルタδによって、当該画素Pの輝度値の第4の代表値L4(i,j)を算出する(S107)。図11は、本実施形態の要素Enに対応する画素Pを含む画像データFの一部と第4の空間フィルタδとを示す平面図である。画像データFにおいて、図11が示す部分と、図8が示す部分とは同一である。
第4の空間フィルタδは、注目画素Ppを含む互いに隣接した複数の画素Pの輝度値に基づき、注目画素Ppの輝度値の第4の代表値L4(i,j)を算出する。図11に示すように、第4の空間フィルタδは、第1の空間フィルタαと異なる形状を有する。すなわち、第4の空間フィルタδが第4の代表値L4(i,j)の算出に利用する複数の画素Pと、第1の空間フィルタαが第1の代表値L1(i,j)の算出に利用する複数の画素Pとは、互いに異なる。
具体的に説明すると、第4の空間フィルタδは、画素P(m,n)と、画素P(m,n−1)と、画素P(m+1,n)と、画素P(m+1,n+1)とを、第4の代表値L4(i,j)の算出に利用する。言い換えると、第4の空間フィルタδは、主走査方向及び副走査方向と斜めに交差する方向(第1の斜め方向)に互いに隣接する複数の画素Pの輝度値に基づき、第4の代表値L4(i,j)を算出する。すなわち、第4の空間フィルタδは、第3の空間フィルタの一例である。
本実施形態における第1の斜め方向は、副走査方向(180°)と主走査方向(90°)との間の第1の傾斜角度(例えば120°)をなす方向である。なお、第1の傾斜角度はこれに限らない。
第1の空間フィルタαが第1の代表値L1(i,j)の算出に利用する複数の画素Pと、第4の空間フィルタδが第4の代表値L4(i,j)の算出に利用する複数の画素Pとは、三つの共通の画素P(m,n)、P(m+1,n)及びP(m+1,n+1)を含む。
代表値算出部35は、第4の空間フィルタδにより、画素P(m,n)の輝度値L(m,n)と、画素P(m,n−1)の輝度値L(m,n−1)と、画素P(m+1,n)の輝度値L(m+1,n)と、画素P(m+1,n+1)の輝度値L(m+1,n+1)と、の合計値Ls4及び平均値La4を算出する。すなわち、第4の空間フィルタδによって算出される合計値Ls4は、
Ls4=L(m,n)+L(m,n−1)+L(m+1,n)+L(m+1,n+1) …(数7)
で表され、平均値La4は、
La4=Ls4/4 …(数8)
で表される。本実施形態において、平均値La4が、注目画素Ppの輝度値の第4の代表値L4(i,j)として利用される。なお、合計値Ls4や中央値のような他の値が、注目画素Ppの輝度値の第4の代表値L4(i,j)として利用されても良い。
代表値算出部35は、S101と同じく、画像データFの全ての画素Pの第4の代表値L4(i,j)を算出するまで、注目画素Ppの座標の移動と、当該注目画素Ppの輝度値の第4の代表値L4(i,j)の算出とを繰り返す。このように、代表値算出部35は、第4の空間フィルタδによって、画像データFにおける各画素Pの第4の代表値L4(i,j)を算出する。
図11に示す場合において、隣接する二つの要素Enのうち一つが、注目画素Ppに対応する領域に存在する。このため、図11に示す場合に第4の空間フィルタδによって算出される第4の代表値L4(i,j)は、図8に示す場合に第1の空間フィルタαによって算出される第1の代表値L1(i,j)よりも低くなる。しかし、図11に示す場合に第4の空間フィルタδによって算出される第4の代表値L4(i,j)は、例えば、要素Ea,Enが注目画素Pp及び三つの周辺画素Paに対応する領域のいずれにも存在しない場合の第4の代表値L4(i,j)よりも高くなる。
図6に戻って、次に、制御部20は、画像取得部34として機能し、画像データFの各画素Pの輝度値の第4の代表値L4(i,j)から、第4のフィルタリング画像Aδを作成する(S108)。すなわち、画像取得部34は、S102と同じく、画像データFの各画素Pの輝度値L(i,j)を第4の代表値L4(i,j)に変更した第4のフィルタリング画像Aδを作成する。画像取得部34は、第4のフィルタリング画像Aδを、画像データFと別個に、例えばRAM22に保存する。
次に、制御部20は、代表値算出部35として機能し、二次元の画像データFの画素P毎に、第5の空間フィルタεによって、当該画素Pの輝度値の第5の代表値L5(i,j)を算出する(S109)。図12は、本実施形態の要素Enに対応する画素Pを含む画像データFの一部と第5の空間フィルタεとを示す平面図である。画像データFにおいて、図12が示す部分と、図8が示す部分とは同一である。
第5の空間フィルタεは、注目画素Ppを含む互いに隣接した複数の画素Pの輝度値に基づき、注目画素Ppの輝度値の第5の代表値L5(i,j)を算出する。図12に示すように、第5の空間フィルタεは、第1の空間フィルタαと異なる形状を有する。すなわち、第5の空間フィルタεが第5の代表値L5(i,j)の算出に利用する複数の画素Pと、第1の空間フィルタαが第1の代表値L1(i,j)の算出に利用する複数の画素Pとは、互いに異なる。
具体的に説明すると、第5の空間フィルタεは、画素P(m,n)と、画素P(m+1,n−1)と、画素P(m+1,n)と、画素P(m,n+1)とを、第5の代表値L5(i,j)の算出に利用する。言い換えると、第5の空間フィルタεは、主走査方向及び副走査方向と斜めに交差する方向(第2の斜め方向)に互いに隣接する複数の画素Pの輝度値に基づき、第5の代表値L5(i,j)を算出する。
本実施形態における第2の斜め方向は、副走査方向(0°)と主走査方向(90°)との間の第2の傾斜角度(例えば60°)をなす方向である。第2の傾斜角度は、主走査方向を軸として第1の傾斜角度と鏡面対称となる角度である。なお、第2の傾斜角度はこれに限らない。
第1の空間フィルタαが第1の代表値L1(i,j)の算出に利用する複数の画素Pと、第5の空間フィルタεが第5の代表値L5(i,j)の算出に利用する複数の画素Pとは、三つの共通の画素P(m,n)、P(m+1,n)及びP(m,n+1)を含む。
代表値算出部35は、第5の空間フィルタεにより、画素P(m,n)の輝度値L(m,n)と、画素P(m+1,n−1)の輝度値L(m+1,n−1)と、画素P(m+1,n)の輝度値L(m+1,n)と、画素P(m,n+1)の輝度値L(m,n+1)と、の合計値Ls5及び平均値La5を算出する。すなわち、第5の空間フィルタεによって算出される合計値Ls5は、
Ls5=L(m,n)+L(m+1,n−1)+L(m+1,n)+L(m,n+1) …(数9)
で表され、平均値La5は、
La5=Ls5/4 …(数10)
で表される。本実施形態において、平均値La5が、注目画素Ppの輝度値の第5の代表値L5(i,j)として利用される。なお、合計値Ls5や中央値のような他の値が、注目画素Ppの輝度値の第5の代表値L5(i,j)として利用されても良い。
代表値算出部35は、S101と同じく、画像データFの全ての画素Pの第5の代表値L5(i,j)を算出するまで、注目画素Ppの座標の移動と、当該注目画素Ppの輝度値の第5の代表値L5(i,j)の算出とを繰り返す。このように、代表値算出部35は、第5の空間フィルタεによって、画像データFにおける各画素Pの第5の代表値L5(i,j)を算出する。
図12に示す場合において、隣接する二つの要素Enが、注目画素Ppと一つの周辺画素Paとに対応する領域に存在する。このため、図12に示す場合に第5の空間フィルタεによって算出される第5の代表値L5(i,j)は、図8に示す場合に第1の空間フィルタαによって算出される第1の代表値L1(i,j)と略同一となる。
図6に戻って、次に、制御部20は、画像取得部34として機能し、画像データFの各画素Pの輝度値の第5の代表値L5(i,j)から、第5のフィルタリング画像Aεを作成する(S110)。すなわち、画像取得部34は、S102と同じく、画像データFの各画素Pの輝度値L(i,j)を第5の代表値L5(i,j)に変更した第5のフィルタリング画像Aεを作成する。画像取得部34は、第5のフィルタリング画像Aεを、画像データFと別個に、例えばRAM22に保存する。
次に、制御部20は、代表値算出部35として機能し、二次元の画像データFの画素P毎に、第6の空間フィルタζによって、当該画素Pの輝度値の第6の代表値L6(i,j)を算出する(S111)。図13は、本実施形態の要素Enに対応する画素Pを含む画像データFの一部と第6の空間フィルタζとを示す平面図である。画像データFにおいて、図13が示す部分と、図8が示す部分とは同一である。
第6の空間フィルタζは、注目画素Ppを含む互いに隣接した複数の画素Pの輝度値に基づき、注目画素Ppの輝度値の第6の代表値L6(i,j)を算出する。図13に示すように、第6の空間フィルタζは、第1の空間フィルタαと異なる形状を有する。すなわち、第6の空間フィルタζが第6の代表値L6(i,j)の算出に利用する複数の画素Pと、第1の空間フィルタαが第1の代表値L1(i,j)の算出に利用する複数の画素Pとは、互いに異なる。
具体的に説明すると、第6の空間フィルタζは、画素P(m,n)と、画素P(m−1,n)と、画素P(m,n+1)と、画素P(m+1,n+1)とを、第6の代表値L6(i,j)の算出に利用する。言い換えると、第6の空間フィルタζは、主走査方向及び副走査方向と斜めに交差する方向(第3の斜め方向)に互いに隣接する複数の画素Pの輝度値に基づき、第6の代表値L6(i,j)を算出する。
本実施形態における第3の斜め方向は、副走査方向(180°)と主走査方向(90°)との間の第3の傾斜角度(例えば150°)をなす方向である。すなわち、第3の斜め方向は、主走査方向、副走査方向、及び第1の斜め方向と斜めに交差する方向であり、第4の方向の一例である。なお、第3の傾斜角度はこれに限らない。
第1の空間フィルタαが第1の代表値L1(i,j)の算出に利用する複数の画素Pと、第6の空間フィルタζが第6の代表値L6(i,j)の算出に利用する複数の画素Pとは、三つの共通の画素P(m,n)、P(m,n+1)及びP(m+1,n+1)を含む。
代表値算出部35は、第6の空間フィルタζにより、画素P(m,n)の輝度値L(m,n)と、画素P(m−1,n)の輝度値L(m−1,n)と、画素P(m,n+1)の輝度値L(m,n+1)と、画素P(m+1,n+1)の輝度値L(m+1,n+1)と、の合計値Ls6及び平均値La6を算出する。すなわち、第6の空間フィルタζによって算出される合計値Ls6は、
Ls6=L(m,n)+L(m−1,n)+L(m,n+1)+L(m+1,n+1) …(数11)
で表され、平均値La6は、
La6=Ls6/4 …(数12)
で表される。本実施形態において、平均値La6が、注目画素Ppの輝度値の第6の代表値L6(i,j)として利用される。なお、合計値Ls6や中央値のような他の値が、注目画素Ppの輝度値の第6の代表値L6(i,j)として利用されても良い。
代表値算出部35は、S101と同じく、画像データFの全ての画素Pの第6の代表値L6(i,j)を算出するまで、注目画素Ppの座標の移動と、当該注目画素Ppの輝度値の第6の代表値L6(i,j)の算出とを繰り返す。このように、代表値算出部35は、第6の空間フィルタζによって、画像データFにおける各画素Pの第6の代表値L6(i,j)を算出する。
図13に示す場合において、隣接する二つの要素Enが、注目画素Ppと一つの周辺画素Paとに対応する領域に存在する。このため、図13に示す場合に第6の空間フィルタζによって算出される第6の代表値L6(i,j)は、図8に示す場合に第1の空間フィルタαによって算出される第1の代表値L1(i,j)と略同一となる。
図6に戻って、次に、制御部20は、画像取得部34として機能し、画像データFの各画素Pの輝度値の第6の代表値L6(i,j)から、第6のフィルタリング画像Aζを作成する(S112)。すなわち、画像取得部34は、S102と同じく、画像データFの各画素Pの輝度値L(i,j)を第6の代表値L6(i,j)に変更した第6のフィルタリング画像Aζを作成する。画像取得部34は、第6のフィルタリング画像Aζを、画像データFと別個に、例えばRAM22に保存する。
次に、制御部20は、代表値算出部35として機能し、二次元の画像データFの画素P毎に、第7の空間フィルタηによって、当該画素Pの輝度値の第7の代表値L7(i,j)を算出する(S113)。図14は、本実施形態の要素Enに対応する画素Pを含む画像データFの一部と第7の空間フィルタηとを示す平面図である。画像データFにおいて、図14が示す部分と、図8が示す部分とは同一である。
第7の空間フィルタηは、注目画素Ppを含む互いに隣接した複数の画素Pの輝度値に基づき、注目画素Ppの輝度値の第7の代表値L7(i,j)を算出する。図14に示すように、第7の空間フィルタηは、第1の空間フィルタαと異なる形状を有する。すなわち、第7の空間フィルタηが第7の代表値L7(i,j)の算出に利用する複数の画素Pと、第1の空間フィルタαが第1の代表値L1(i,j)の算出に利用する複数の画素Pとは、互いに異なる。
具体的に説明すると、第7の空間フィルタηは、画素P(m,n)と、画素P(m+1,n)と、画素P(m−1,n+1)と、画素P(m,n+1)とを、第7の代表値L7(i,j)の算出に利用する。言い換えると、第7の空間フィルタηは、主走査方向及び副走査方向と斜めに交差する方向(第4の斜め方向)に互いに隣接する複数の画素Pの輝度値に基づき、第7の代表値L7(i,j)を算出する。
本実施形態における第4の斜め方向は、副走査方向(0°)と主走査方向(90°)との間の第4の傾斜角度(例えば30°)をなす方向である。すなわち、第4の斜め方向は、主走査方向、副走査方向、及び第2の斜め方向と斜めに交差する方向である。また、第4の傾斜角度は、主走査方向を軸として第3の傾斜角度と鏡面対称となる角度である。なお、第4の傾斜角度はこれに限らない。
第1の空間フィルタαが第1の代表値L1(i,j)の算出に利用する複数の画素Pと、第7の空間フィルタηが第7の代表値L7(i,j)の算出に利用する複数の画素Pとは、三つの共通の画素P(m,n)、P(m+1,n)及びP(m,n+1)を含む。
代表値算出部35は、第7の空間フィルタηにより、画素P(m,n)の輝度値L(m,n)と、画素P(m+1,n)の輝度値L(m+1,n)と、画素P(m−1,n+1)の輝度値L(m−1,n+1)と、画素P(m,n+1)の輝度値L(m,n+1)と、の合計値Ls7及び平均値La7を算出する。すなわち、第7の空間フィルタηによって算出される合計値Ls7は、
Ls7=L(m,n)+L(m+1,n)+L(m−1,n+1)+L(m,n+1) …(数13)
で表され、平均値La7は、
La7=Ls7/4 …(数14)
で表される。本実施形態において、平均値La7が、注目画素Ppの輝度値の第7の代表値L7(i,j)として利用される。なお、合計値Ls7や中央値のような他の値が、注目画素Ppの輝度値の第7の代表値L7(i,j)として利用されても良い。
代表値算出部35は、S101と同じく、画像データFの全ての画素Pの第7の代表値L7(i,j)を算出するまで、注目画素Ppの座標の移動と、当該注目画素Ppの輝度値の第7の代表値L7(i,j)の算出とを繰り返す。このように、代表値算出部35は、第7の空間フィルタηによって、画像データFにおける各画素Pの第7の代表値L7(i,j)を算出する。
図14に示す場合において、隣接する二つの要素Enが、注目画素Ppと一つの周辺画素Paとに対応する領域に存在する。このため、図14に示す場合に第7の空間フィルタηによって算出される第7の代表値L7(i,j)は、図8に示す場合に第1の空間フィルタαによって算出される第1の代表値L1(i,j)と略同一となる。
図6に戻って、次に、制御部20は、画像取得部34として機能し、画像データFの各画素Pの輝度値の第7の代表値L7(i,j)から、第7のフィルタリング画像Aηを作成する(S114)。すなわち、画像取得部34は、S102と同じく、画像データFの各画素Pの輝度値L(i,j)を第7の代表値L7(i,j)に変更した第7のフィルタリング画像Aηを作成する。画像取得部34は、第7のフィルタリング画像Aηを、画像データFと別個に、例えばRAM22に保存する。
以上のように、制御部20は、画像取得部34及び代表値算出部35として機能し、各画素Pの輝度値の第1乃至第7の代表値L1(i,j)〜L7(i,j)を算出するとともに、第1乃至第7のフィルタリング画像Aα〜Aηを作成する。
代表値算出部35が用いる第1乃至第7の空間フィルタα〜ηは、それぞれ四つの画素P(注目画素Pp及び三つの周辺画素Pa)の輝度値に基づき、第1乃至第7の代表値L1(i,j)〜L7(i,j)を算出する。言い換えると、代表値算出部35は、四つの画素Pをそれぞれ包含する第1乃至第7の空間フィルタα〜ηによって、第1乃至第7の代表値L1(i,j)〜L7(i,j)を算出する。
なお、第1乃至第7の空間フィルタα〜ηが利用する画素Pの数は、四つに限らない。第1乃至第7の空間フィルタα〜ηが利用する画素Pの数が共通であると、制御部20が異常な要素Eaを検出する精度が向上する。さらに、空間フィルタの数と、当該空間フィルタによって算出される代表値の数は、七つに限らない。
図4に戻って、次に、制御部20は、異常検出部36として機能し、画像データFの、異常な要素Eaである可能性がある欠陥候補を検出する(S12)。図15は、本実施形態の制御部20が欠陥候補を検出する処理の一例を示すフローチャートである。制御部20は、例えば図15に示されるような手順で、欠陥候補を検出する。なお、制御部20が欠陥候補を検出する手順は、以下に説明するものに限らない。
図15に示すように、まず、制御部20は、異常検出部36の二値化部41として機能し、第1乃至第7のフィルタリング画像Aα〜Aηにおける、第1乃至第7の代表値L1(i,j)〜L7(i,j)を二値化する(S201)。例えば、二値化部41は、予め設定された閾値と、第1乃至第7の代表値L1(i,j)〜L7(i,j)とを比較することで、第1乃至第7の代表値L1(i,j)〜L7(i,j)を二値化する。
S201で用いられる閾値は、例えば、図8,9,12,13,14の場合の代表値L1(i,j),L2(i,j),L5(i,j),L6(i,j),L7(i,j)が1となり、図10,11の場合の代表値L3(i,j),L4(i,j)が0となる閾値として設定される。すなわち、閾値は、各空間フィルタα〜ηが代表値L1(i,j)〜L7(i,j)の算出に利用する四つの画素Pのうち、二つ以上の画素Pに対応する領域に要素Ea,Enが存在する場合に、代表値L1(i,j)〜L7(i,j)が当該閾値を越えるように設定される。なお、S201で用いられる閾値はこれに限らない。
次に、制御部20は、異常検出部36の候補検出部42として機能し、第1乃至第7の代表値L1(i,j)〜L7(i,j)が二値化された第1乃至第7のフィルタリング画像Aα〜Aηにおいて、ラベリングを行う(S202)。これにより、要素Ea,Enに対応する画素Pであって、当該画素Pの代表値L1(i,j)〜L7(i,j)が閾値を越えた部分は、ラベリングによって統合される。ラベリングによって統合された部分は、各フィルタリング画像Aα〜Aηにおいて、異常な要素Eaである可能性がある部分(欠陥候補)として検出される。欠陥候補は、異常部分候補の一例である。
上記のように、候補検出部42は、二値化された第1乃至第7の代表値L1(i,j)〜L7(i,j)に基づいて、第1乃至第7のフィルタリング画像Aα〜Aηにおける欠陥候補を検出する。なお、候補検出部42が欠陥候補を検出する方法はこれに限らない。
図4に戻って、次に、制御部20は、候補統合部43として機能し、論理和(OR)によって第1乃至第7のフィルタリング画像Aα〜Aηの欠陥候補を統合する(S13)。これにより、各フィルタリング画像Aα〜Aηの欠陥候補から、画像データFの欠陥候補が得られる。
次に、制御部20は、特徴量算出部44として機能し、統合された欠陥候補の特徴量を算出する(S14)。特徴量算出部44は、例えば、欠陥候補の画素数や、欠陥候補の少なくとも一つの画素Pにおける輝度値の平均値、標準偏差、最大値、及び最小値の少なくとも一つを、当該欠陥候補の特徴量として算出する。なお、特徴量はこれに限らず、例えば、欠陥候補の大きさ(画素数)でも良い。
次に、制御部20は、異常判定部45として機能し、マハラノビス・タグチ法(MT法)により異常な要素Ea(欠陥部)を検出する(S15)。すなわち、異常判定部45は、各欠陥候補の特徴量に基づき、当該欠陥候補が異常な要素Eaか否かを、MT法を用いて判定する。
具体的に説明すると、制御部20は、異常判定部45のMD算出部51として、各欠陥候補の特徴量に基づき、当該欠陥候補のマハラノビス距離(MD値)を算出する。そして、制御部20は、MT判定部52として、各欠陥候補のMD値と、予め設定された閾値との比較により、当該欠陥候補が異常な要素Eaか否かを判定する。すなわち、各欠陥候補のMD値が、閾値と同じかあるいは超えていた場合には、当該欠陥候補を異常な要素Eaとして検出する。
以上説明したように、画像検査装置10の異常検出部36は、各画素Pの複数の代表値L1(i,j)〜L7(i,j)に基づいて、画像データF中の異常な要素Eaを検出する。
上記の説明において、異常検出部36は、MT法により画像データF中の異常な要素Eaを検出した。しかし、異常検出部36はこれに限らず、例えば、各代表値L1(i,j)〜L7(i,j)と、予め設定された閾値とを比較することにより、画像データF中の異常な要素Eaを検出しても良い。
次に、制御部20は、出力制御部37として機能し、コントローラ28を制御することで、検査結果を示す画像が出力されるよう出力部6を制御する(S16)。以上により、制御部20は、画像データFの異常な要素Eaを検出する。
本実施形態の画像検査装置10において、代表値算出部35は、互いに異なる複数の画素Pを利用して注目画素Ppの輝度値の代表値L1(i,j)〜L7(i,j)を算出する複数の空間フィルタα〜ηによって、各画素Pの輝度値の複数の代表値L1(i,j)〜L7(i,j)を算出する。そして、異常検出部36は、このような複数の代表値L1(i,j)〜L7(i,j)に基づいて画像中の異常な要素Eaを検出する。このように、各画素Pについて、互いに異なる複数の画素Pに基づき算出された複数の代表値L1(i,j)〜L7(i,j)により異常な要素Eaが検出されることで、例えば代表値算出部35が単一の空間フィルタによって単一の代表値が算出される場合に比べ、正常な要素Enと異常な要素Eaとをより精度良く区別することが可能となる。
例えば、一つの空間フィルタαによって注目画素Ppの代表値L1(i,j)が算出される場合、注目画素Ppが正常な要素Enに対応する部分であっても、例えば隣接する画素Pに対応する領域にそれぞれ要素Enが存在する等の理由により、注目画素Ppの代表値L1(i,j)が、異常な要素Eaに対応する画素Pから得られる代表値L1(i,j)の範囲の値になる可能性がある。しかし、この空間フィルタαと異なる複数の画素Pに基づき代表値を算出する他の空間フィルタβ,γ,δ,ε,ζ,ηによって注目画素Ppの代表値L2(i,j)〜L7(i,j)が算出され、算出された注目画素Ppの代表値L2(i,j)〜L7(i,j)が正常な要素Enに対応する画素Pから得られる代表値L2(i,j)〜L7(i,j)の範囲の値であれば、当該画素Pが含まれる部分は正常な要素Enと判定され得る。このように、代表値算出部35は、互いに異なる複数の画素Pに基づきそれぞれ異なる代表値L1(i,j)〜L7(i,j)を算出可能な複数の空間フィルタα〜ηにより、複数の代表値L1(i,j)〜L7(i,j)を算出する。そして、異常検出部36は、各画素Pについて算出されたそれぞれ異なる代表値L1(i,j)〜L7(i,j)に基づき、統合的に異常な要素Eaを検出する。従って、正常な要素Enと異常な要素Eaとをより精度良く区別することが可能となる。例えば、密集した正常な要素Enが、誤って異常な要素Eaとして検出されるような過検出が抑制される。
複数の空間フィルタα〜ηが代表値L1(i,j)〜L7(i,j)の算出に利用する複数の画素Pは、少なくとも二つ以上の共通の画素Pを含む。これにより、複数の空間フィルタα〜ηにより算出された複数の代表値L1(i,j)〜L7(i,j)が大きくばらつくことが抑制され、正常な要素Enと異常な要素Eaとをより精度良く又はより容易に区別することが可能となる。
異常検出部36は、複数の代表値L1(i,j)〜L7(i,j)に基づいて画像データF中の欠陥候補を検出する候補検出部42と、欠陥候補の特徴量を算出する特徴量算出部44と、特徴量に基づき欠陥候補が異常な要素Eaか否かを判定する異常判定部45と、を有する。このように、画素P毎ではなく欠陥候補について異常な要素Eaか否かを判定することで、正常な要素Enと異常な要素Eaとをより精度良く又はより容易に区別することが可能となる。
異常判定部45は、特徴量に基づいて欠陥候補のMD値を算出するMD算出部51と、MD値と閾値との比較により欠陥候補が異常な要素Eaか否かを判定するMT判定部52とを有する。このように、異常判定部45はMT法により画像データF中の異常な要素Eaを検出するため、正常な要素Enと異常な要素Eaとをより精度良く又はより容易に区別することが可能となる。
複数の空間フィルタα〜ηは、主走査方向に延びる第2の空間フィルタβと、副走査方向に延びる第3の空間フィルタγと、第1の斜め方向に延びる第4の空間フィルタδとを含む。このため、異常な要素Eaの向きにかかわらず、正常な要素Enと異常な要素Eaとをより精度良く又はより容易に区別することが可能となる。
複数の空間フィルタα〜ηは、第1の斜め方向と異なる第3の斜め方向に延びる第6の空間フィルタζをさらに含む。このため、異常な要素Eaが延びる角度が第4の空間フィルタδの角度と異なっていたとしても、第4の空間フィルタδと第6の空間フィルタζとの組み合わせにより、当該異常な要素Eaが検出されやすくなる。
図16は、本実施形態の斜めに延びる要素Eaに対応する画素Pを含む画像データFの一部と第4の空間フィルタδとを示す平面図である。図17は、本実施形態の斜めに延びる要素Eaに対応する画素Pを含む画像データFの一部と第6の空間フィルタζとを示す平面図である。
図16及び図17に示すように、例えば、異常な要素Eaが副走査方向(180°)と主走査方向(90°)との間の角度(例えば135°)をなす方向に延びる場合がある。要素Eaが延びる方向は、第4の空間フィルタδが延びる第1の斜め方向と異なり、第6の空間フィルタζが延びる第3の斜め方向とも異なる。しかし、要素Eaは、大よそ、第4の空間フィルタδが利用する三つの画素Pに対応する領域に存在する。さらに、要素Eaは、大よそ、第6の空間フィルタζが利用する三つの画素Pに対応する領域に存在する。
上記のような第4の空間フィルタδによって算出される第4の代表値L4(i,j)は、例えば第2の空間フィルタβによって算出される第2の代表値L2(i,j)よりも高くなり得る。また、上記のような第6の空間フィルタζによって算出される第6の代表値L6(i,j)は、例えば第2の空間フィルタβによって算出される第2の代表値L2(i,j)よりも高くなり得る。
以上のように、延びる方向が異なる二つの空間フィルタδ,ζが用意されることで、二つ以上の空間フィルタδ,ζによって算出される代表値L4(i,j)、L6(i,j)の値が、他の空間フィルタβによって算出される代表値L2(i,j)よりも高くなり得る。従って、正常な要素と異常な要素とをより精度良く又はより容易に区別することが可能となる。
代表値L1(i,j)〜L7(i,j)は、当該代表値L1(i,j)〜L7(i,j)の算出に空間フィルタα〜ηが利用した複数の画素Pの輝度値の合計値Ls1〜Ls7又は平均値La1〜La7である。このため、代表値L1(i,j)〜L7(i,j)が比較的容易に算出され、処理時間や処理負荷の増大が抑制される。
異常検出部36は、正常な要素Enの四倍以上の大きさの異常な要素Eaの存在を検出する。これにより、例えば、検査対象面101上に、正常な要素Enと、当該正常な要素Enの四倍以上の大きさの異常な要素Eaとが存在する場合に、効果的に画像データF中の異常な要素Eaを検出することが可能となる。
正常な要素Enは画素Pの四分の一に略対応し、異常な要素Eaは一つの画素Pに略対応する。これにより、例えば、検査対象面101上に、画素Pの四分の一に略対応する大きさの正常な要素Enと、当該正常な要素Enの略四倍の大きさの異常な要素Eaとが存在する場合に、効果的に画像データF中の異常な要素Eaを検出することが可能となる。
上記説明において、正常な要素Enは、各画素Pに対応する領域に一つずつ存在した。しかし、一つの画素Pに対応する領域に複数の正常な要素Enが存在する場合がある。例えば、一つの画素Pに対応する領域に三つの正常な要素Enが存在する場合がある。
上記の場合、三つの要素Enが存在する画素Pの輝度値は、異常な要素Eaが存在する画素Pの輝度値に近い。しかし、三つの要素Enが存在する画素P(注目画素Pp)の周りの画素P(周辺画素Pa)における輝度値は、異常な要素Eaが存在する画素P(注目画素Pp)の周りの画素P(周辺画素Pa)における輝度値と異なることがある。言い換えると、画素P(注目画素Pp)に正常な要素Enが存在する場合と、異常な要素Eaが存在する場合とで、周りの画素P(周辺画素Pa)に及ぼされる影響が異なる。
一つの画素Pを検査した場合、当該画素Pの輝度値に基づいて当該画素Pに存在する要素を、正常な要素Enか又は異常な要素Eaか判別することは難しい。しかし、本実施形態の制御部20は、注目画素Ppの周りの周辺画素Paを利用する複数の空間フィルタα〜ηにより異常な要素Eaを検出する。このため、正常な要素Enと異常な要素Eaとがより精度良く区別される。
また、制御部20は、四つの画素Pを利用する第1乃至第7の空間フィルタα〜ηにより、密集する正常な要素Enの数が三つまでの場合に、正常な要素Enと異常な要素Eaとをより精度良く区別できる。第1乃至第7の空間フィルタα〜ηが五つの画素Pを利用する場合、制御部20は、密集する正常な要素Enの数が四つまでの場合に、正常な要素Enと異常な要素Eaとをより精度良く区別できる。
上述の本発明の実施形態は、発明の範囲を限定するものではなく、発明の範囲に含まれる一例に過ぎない。本発明のある実施形態は、上述の実施形態に対して、例えば、具体的な用途、構造、形状、作用、及び効果の少なくとも一部について、発明の要旨を逸脱しない範囲において変更、省略、及び追加がされたものであっても良い。