(57)【特許請求の範囲】
【請求項１】
工業的製造物の一つの検査対象面を撮像して検査対象画像を生成する撮像部、
前記撮像部が生成した検査対象画像の中に、前記検査対象面を表す画素とその検査対象面の外周部分を表す画素とを含む補正対象領域を、設定する設定部、
前記設定部が設定した前記補正対象領域において、前記検査対象面を表す画素からなるワーク領域の中央部における水平方向又は垂直方向に沿った所定線上の各位置について画素値の移動平均値を算出し、前記補正対象領域からワーク領域を除いた残りの外周部分領域における前記所定線上の位置に対応する画素列の各画素値を、その位置の移動平均値に基づいて塗り潰すことにより、前記検査対象画像を補正する補正部、
前記補正部が補正した補正対象領域のうち、前記検査対象面を表す画素からなるワーク領域の中から、欠陥対応画素を検索する検索部、及び、
前記検索部が前記ワーク領域の中から欠陥対応画素を検出した場合に、前記検査対象面に欠陥があった旨を出力する出力部
を備えることを特徴とする表面検査システム。
【請求項２】
前記補正部は、前記補正対象領域からワーク領域を除いた残りの外周部分領域に対し、前記ワーク領域の中央部の部分画像を貼り付けることによって、その外周部分領域内の画素の画素値を塗り潰す
ことを特徴とする請求項１記載の表面検査システム。
【請求項３】
前記補正部は、前記補正対象領域を上下方向に分割した分割領域を設定し、各前記分割領域における縦方向の画素列について画素数の累積をおこない、各画素列について横方向の各位置にプロットしたグラフを作成し、前記グラフが水平になる様な横方向の各位置での補正値を算出し、分割領域を前記補正値に基づいて補正することを特徴とする請求項１に記載の表面検査システム。
【請求項４】
前記補正部は、前記補正対象領域を左右方向に分割した分割領域を設定し、各前記分割領域における横方向の画素列について画素数の累積をおこない、各画素列について縦方向の各位置にプロットしたグラフを作成し、前記グラフが垂直になる様な縦方向の各位置で
の補正値を算出し、分割領域を前記補正値に基づいて補正することを特徴とする請求項１に記載の表面検査システム。
【請求項５】
前記検索部は、前記ワーク領域内の複数の画素を一つずつ注目していくとともに、注目画素から所定個離れた画素までの参照領域内にある周辺画素の画素値の平均に対して画素値が所定量の差を有する注目画素を、欠陥対応画素として検索する
ことを特徴とする請求項１から４の何れか一項に記載の表面検査システム。
【請求項６】
コンピュータが、
工業的製造物の一つの検査対象面を撮像して検査対象画像を生成する撮像手順、
前記撮像手順で生成した検査対象画像の中に、前記検査対象面を表す画素とその検査対象面の外周部分を表す画素とを含む補正対象領域を、設定する設定手順、
前記設定手順で設定した前記補正対象領域において、前記検査対象面を表す画素からなるワーク領域の中央部における水平方向又は垂直方向に沿った所定線上の各位置について画素値の移動平均値を算出し、前記補正対象領域からワーク領域を除いた残りの外周部分領域における前記所定線上の位置に対応する画素列の各画素値を、その位置の移動平均値に基づいて塗り潰すことにより、前記検査対象画像を補正する補正手順、
前記補正手順で補正した補正対象領域のうち、前記検査対象面を表す画素からなるワーク領域の中から、欠陥対応画素を検索する検索手順、及び、
前記検索手順で前記ワーク領域の中から欠陥対応画素を検出した場合に、前記検査対象面に欠陥があった旨を出力する出力手順
を実行する
ことを特徴とする表面検査方法。
【請求項７】
コンピュータを、
工業的製造物の一つの検査対象面を撮像して検査対象画像を生成する撮像手段、
前記撮像手段が生成した検査対象画像の中に、前記検査対象面を表す画素とその検査対象面の外周部分を表す画素とを含む補正対象領域を、設定する設定手段、
前記設定手段が設定した前記補正対象領域において、前記検査対象面を表す画素からなるワーク領域の中央部における水平方向又は垂直方向に沿った所定線上の各位置について画素値の移動平均値を算出し、前記補正対象領域からワーク領域を除いた残りの外周部分領域における前記所定線上の位置に対応する画素列の各画素値を、その位置の移動平均値に基づいて塗り潰すことにより、前記検査対象画像を補正する補正手段、
前記補正手段が補正した補正対象領域のうち、前記検査対象面を表す画素からなるワーク領域の中から、欠陥対応画素を検索する検索手段、及び、
前記検索手段が前記ワーク領域の中から欠陥対応画素を検出した場合に、前記検査対象面に欠陥があった旨を出力する出力手段
として機能させる
ことを特徴とする表面検査プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工業的製造物の表面における欠陥の有無を検査するためのシステム、方法及びプログラムに、関する。
【背景技術】
【０００２】
周知のように、工業的製造物の表面に、傷や汚れや塗装斑などの欠陥があると、その性能や商品価値が、下がってしまう。このため、多くの製造業者は、表面に欠陥のある工業的製造物を撥ねるため、製造工程の最終段階で、表面検査を行っている。従来の表面検査は、目視によって行われていたが、近年では、表面検査は、表面検査システムによって自動的に行われている。
【０００３】
表面検査システムは、一般的に、工業的製造物の検査対象面を撮像して生成した画像データの中から、欠陥を表していると見積もられる欠陥対応画素を検索し、欠陥対応画素が検出された場合に、その工業的製造物の表面に欠陥があるとして管理者に通知する。
【０００４】
具体的な検索方法としては、表面検査システムは、画像データ内の複数の画素を一つずつ注目していき、注目画素の画素値がその周囲の画素の画素値の平均に対して所定量の差を有する場合に、その注目画素を欠陥対応画素として決定する。従って、検査対象面の側辺とそのごく近傍とにおいては、注目画素と対比される周辺画素の中に、検査対象面以外の部分を表す画素が含まれてしまうため、正確性が多少失われるものの、検査対象面がフラットロール製品の側面のように側辺が直線状であり且つ全くの平坦であれば、その大部分において正確に欠陥が検出できる。
【０００５】
ところが、検査対象面が、例えば、図１５に示すように、ノートブック型パーソナルコンピュータの外装パネルの外面のような、ヒンジを覆う帯状の突出片が形成されていたり面取りなどの意匠が施されていたりするものであると、注目画素と対比される周辺画素の中に、検査対象面以外の部分を表す画素や、濃淡を生じせしめる意匠部分を表す画素が、含まれてしまうことが多くなる（図１５のＡ）。このため、このような側辺が矩形波状であったり面取りなどの意匠が施されていたりする検査対象面を、従来の表面検査システムを用いて表面検査すると、実際には欠陥が無い箇所を表す画素が、欠陥対応画素として検出されてしまうという問題があった。
【０００６】
【特許文献１】特許第３６９５１２０号
【特許文献２】実公平０７−０４０１６５号公報
【特許文献３】特開平０９−２６４７２８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本件は、前述したような従来技術の有する問題点に鑑みてなされたものであり、その課題は、側辺が矩形波状であったり面取りなどの意匠が施されていたりする検査対象面の画像データから、実際に欠陥が存在する箇所を表す画素だけが、欠陥対応画素として、正確に検出されるようにすることにある。
【課題を解決するための手段】
【０００８】
上記の課題を解決するために案出された表面検査システムは、工業的製造物の一つの検査対象面を撮像して検査対象画像を生成する撮像部、その撮像部が生成した検査対象画像の中に、検査対象面を表す画素とその検査対象面の外周部分を表す画素とを含む補正対象
領域を、設定する設定部、その設定部が設定した補正対象領域において、検査対象面の中央部を表す画素の画素値に基づいて、検査対象面の中央部以外の残りの部分を表す画素の画素値を嵩上げすることにより、検査対象画像を補正する補正部、その補正部が補正した補正対象領域のうち、検査対象面を表す画素からなるワーク領域の中から、欠陥対応画素を検索する検索部、及び、その検索部がワーク領域の中から欠陥対応画素を検出した場合に、検査対象面に欠陥があった旨を出力する出力部を備えることを、特徴としている。
【０００９】
このように、補正部が、検査対象面の中心部を表す画素の画素値に基づいて、検査対象面以外の部分を表す画素や、濃淡を生じせしめる意匠部分を表す画素の画素値を、嵩上げするようになっていれば、検索部によって注目画素と対比される周辺画素に、検査対象面以外の部分を表す画素や、濃淡を生じせしめる意匠部分を表す画素が、含まれていたとしても、それら画素は、注目画素と同レベルに補正されているため、実際に欠陥が無い箇所を表す画素が、欠陥対応画素として検出されることがない。
【００１０】
なお、以上に開示した表面検査システムに係る各動作は、表面検査方法又は表面検査プログラムによっても実現し得る。すなわち、本件は、前述した表面検査システムの各部と同等の機能を複数の手順としてコンピュータが実行する表面検査方法であっても良いし、それら各部と同等の機能を複数の手段としてコンピュータに動作させる表面検査プログラムであってもよい。また、本件は、表面検査プログラムを格納したコンピュータ可読媒体であっても良い。
【発明の効果】
【００１１】
従って、開示した表面検査システムによれば、側辺が矩形波状であったり面取りなどの意匠が施されていたりする検査対象面の画像データから、実際に欠陥が存在する箇所を表す画素だけが、欠陥対応画素として、正確に検出されるようになる。
【発明を実施するための最良の形態】
【００１２】
以下、添付図面を参照しながら、開示した表面検査システムの実施形態である表面検査システムについて、二例説明する。
【００１３】
なお、第１及び第２の実施形態の表面検査システムは、ノートブック型パーソナルコンピュータの外装パネルのような平面状の工業的製造物の検査対象面を撮像して生成した画像データの中から、欠陥を表していると見積もられる欠陥対応画素を検索し、欠陥対応画素が検出された場合に、その工業的製造物の表面に欠陥があるとして管理者に通知するシステムである。
【実施形態１】
【００１４】
＜＜構成＞＞
図１は、第１の実施形態の表面検査システムの構成図である。
【００１５】
図１に示すように、第１の実施形態の表面検査システムは、駆動装置１０、照明装置２０、撮像装置３０、及び、制御装置４０からなる。駆動装置１０は、被検査対象物である工業的製造物Ｐが搬送されるベルトコンベアを駆動するための装置である。照明装置２０は、ベルトコンベアによる搬送経路上の所定位置を照明するための装置である。なお、工業的製造物Ｐは、ベルトコンベアによってこの所定位置に到達すると、照明装置２０によって照明されることとなる。撮像装置３０は、所定位置で照明されている工業的製造物Ｐを撮像するための装置である。制御装置４０は、これら装置１０〜３０を制御することによって画像データを取得して表面検査に係る処理を行う装置である。
【００１６】
図２は、制御装置４０の構成図である。
【００１７】
図２に示すように、制御装置４０は、表面検査システムを実現するための機能が附加されたコンピュータである。従って、制御装置４０は、液晶ディスプレイ等を含む表示ユニット４０ａと、キーボードやマウス等を含む入力ユニット４０ｂと、これらユニット４０ａ、４０ｂに接続される本体とからなる。その本体は、インターフェースユニット４０ｃ、ストレージユニット４０ｄ、ＣＰＵ［Central Processing Unit］４０ｅ、及び、メイ
ンメモリユニット４０ｆを、内蔵している。インターフェースユニット４０ｃは、駆動装置１０、照明装置２０、撮像装置３０との間で制御情報やデータの遣り取りを行うためのユニットである。ストレージユニット４０ｄは、各種のプログラム及び各種のデータを記録するためのユニットである。ＣＰＵ４０ｅは、ストレージユニット４０ｄ内のプログラムに従って処理を行うユニットである。メインメモリユニット４０ｆは、ＣＰＵ４０ｄがプログラムやデータをキャッシュしたり作業領域を展開したりするためのユニットである。
【００１８】
制御装置４０は、ストレージユニット４０ｄに、オペレーティングシステムソフトウエア４１を、記憶している。オペレーティングシステムソフトウエア４１は、各種アプリケーションへのＡＰＩ［Application Programming Interface］やＡＢＩ［Application Binary Interface］の提供、ストレージユニット４０ｄやメインメモリユニット４０ｆの記
憶領域の管理、プロセスやタスクの管理、ファイル管理や各種設定ツールやエディタといったユーティリティのアプリケーションへの提供、及び、画面出力を多重化するための複数タスクへのウインドウの割り当てを、行うためのソフトウエアである。
【００１９】
また、制御装置４０は、ストレージユニット４０ｄに、ドライバソフトウエア４２を、記憶している。ドライバソフトウエア４２は、インターフェースユニット４０ｃを介して駆動装置１０、照明装置２０、撮像装置３０を制御するためのソフトウエアである。
【００２０】
また、制御装置４０は、ストレージユニット４０ｄに、表面検査プログラム４３を、記憶している。表面検査プログラム４３は、表面検査システムを実現するための機能をコンピュータに附加するためのプログラムである。この表面検査プログラム４３に従ってＣＰＵ４０ｅが実行する処理の内容については、図３を用いて後述する。
【００２１】
＜＜処理＞＞
制御装置４０では、入力ユニット４０ｂが操作者によって操作されることにより、表面検査プログラム４３の起動が指示されると、ＣＰＵ４０ｅが、表面検査プログラム４３を読み込んで、表面検査処理を開始する。
【００２２】
図３は、表面検査処理の流れを示す図である。
【００２３】
表面検査処理の開始後、最初のステップＳ１０１では、ＣＰＵ４０ｅは、操作者から終了指示があったか否かを、判別する。そして、操作者から終了指示がなかった場合、ＣＰＵ４０ｄは、ステップＳ１０１からステップＳ１０２へ処理を分岐させる。
【００２４】
ステップＳ１０２では、ＣＰＵ４０ｅは、１個の画像データを取得する処理を行う。具体的には、ＣＰＵ４０ｅは、ドライバソフトウエア４２を利用して駆動装置１０を駆動させることにより、被検査対象物である工業的製造物Ｐを所定位置に移動させる。続いて、ＣＰＵ４０ｅは、ドライバソフトウエア４２を利用して照明装置２０を駆動して工業的製造物Ｐを照明し、撮像装置３０を駆動して工業的製造物Ｐにおける検査対象面を被写体として撮像する。撮像装置３０は、撮像を行うと、画像データをＣＰＵ４０ｅに引き渡す。
【００２５】
なお、このステップＳ１０２を実行するＣＰＵ４０ｅは、前述した撮像部に相当してい
る。
【００２６】
なお、以下の処理に関しては、画像データに基づく画像の一例を用いて説明したほうが、理解し易い。そこで、図５に、ステップＳ１０２で取得した画像データに基づく画像の一例として、画像５１を示す。図５に示す画像５１には、ノートブック型パーソナルコンピュータの外装パネルの表面が、表示されている。その外装パネルの表面は、ヒンジを覆う帯状の突出片が形成されることによって、矩形波状の外形を有している。また、その外装パネルの表面における幾つかの縁には、面取りが施されている。
【００２７】
図３の次のステップＳ１０３では、ＣＰＵ４０ｅは、ステップＳ１０２で取得した画像データに基づく画像の中から、工業的製造物Ｐの検査対象面を表示する画素からなるワーク領域（図５のＷ）を、特定する。
【００２８】
次のステップＳ１０４では、ＣＰＵ４０ｅは、検査領域補正サブルーチンを実行する。
【００２９】
図４は、検査領域補正サブルーチンの流れを示す図である。
【００３０】
検査領域補正サブルーチンの開始後、最初のステップＳ２０１では、ＣＰＵ４０ｄは、図６に示すように、画像５１において、ワーク領域Ｗの最も上側の位置、最も下側の位置、最も左側の位置、及び、最も右側の位置からそれぞれ所定幅だけ外側にある画素を最も外側に含む矩形領域Ｂを、設定する。ここで、所定幅は、後述のステップＳ１０９（図３）において注目画素に対して周辺画素を特定する際に利用する参照領域の幅の半分と同じとなっている。参照領域の幅が６０画素である場合、所定幅は、３０画素となる。なお、以下の処理では、矩形領域Ｂからワーク領域Ｗを差し引いた残りの領域を、外周部分領域Ｅと称する。
【００３１】
なお、このステップＳ２０１を実行するＣＰＵ４０ｄは、前述した設定部に相当している。
【００３２】
次のステップＳ２０２では、ＣＰＵ４０ｅは、シェーディング補正を行う。ここで、シェーディング補正とは、照明の配光特性やレンズの特性などの影響による明度斑を減らすための補正である。具体的には、ＣＰＵ４０ｅは、図７（ａ）に示すように、矩形領域Ｂにおける上下方向の中央部に、領域Ｃを特定し（矩形領域Ｂに対する領域Ｃの位置は、事前に設定されている）、その領域Ｃにおける縦方向の各画素列について、画素値の累積を行う。図７（ｂ）には、各画素列についての累積画素値を横方向の各位置にプロットして得たグラフを、示している。続いて、ＣＰＵ４０ｅは、このグラフが水平となるような横方向の各位置での補正値を算出し、矩形領域Ｂ内をこの補正値に基づいて補正する。図８は、このシェーディング補正が行われたあとの画像５１を示している。ここで、図８に示すように、外周部分領域Ｅにおける左右端部は、各画素の画素値が嵩上げされることによってワーク領域Ｗに近い明るさになっているが、このシェーディング補正は、ワーク領域Ｗ内を補正することを目的としており、外周部分領域Ｅの左右端部は、付随的に補正されているだけである。従って、この時点において、外周部分領域Ｅの左右端部になされた補正の精度が要求されることはない。
【００３３】
次のステップＳ２０３では、ＣＰＵ４０ｅは、ステップＳ２０２でシェーディング補正が施された矩形領域Ｂの明るさ及びコントラストを、特定レベルに補正する。なお、このステップＳ２０３において、矩形領域Ｂの明るさ及びコントラストが補正されるのは、照明光の反射具合が工業的製造物Ｐごとに異なることにより画像に明るさ及びコントラストのばらつきが生ずるためである。
【００３４】
次のステップＳ２０４では、ＣＰＵ４０ｅは、図９（ａ）に示すように、矩形領域Ｂの左右端から所定幅の領域を、左右補正領域として設定し（所定幅は、事前に設定されている）、その左右補正領域を上下方向において幾つかの分割領域Ｓに分割する。このとき、ＣＰＵ４０ｅは、ワーク領域Ｗと外周部分領域Ｅとの境界が分割領域Ｓの中に含まれずに分割領域Ｓ同士の境界に一致するよう、分割領域Ｓの区割りを調整する。
【００３５】
次のステップＳ２０５では、ＣＰＵ４０ｅは、ステップＳ２０４で設定した各分割領域Ｓ内を補正する。具体的には、ＣＰＵ４０ｅは、各分割領域Ｓについて、以下の処理を行う。その処理では、ＣＰＵ４０ｅは、まず、分割領域Ｓにおける縦方向の各画素列について、画素値の累積を行う。図９（ｂ）には、各画素列についての累積画素値を横方向の各位置にプロットして得たグラフを、示している。続いて、ＣＰＵ４０ｅは、このグラフが水平となるような横方向の各位置での補正値を算出し、分割領域Ｓ内をこの補正値に基づいて補正する。なお、この分割領域Ｓ内の補正は、ワーク領域Ｗに含まれる部分を補正することを目的としており、外周部分領域Ｅに含まれる部分、付随的に補正されているだけである。従って、この時点において、分割領域Ｓにおける外周部分領域Ｅに含まれる部分になされた補正の精度が要求されることはない。
【００３６】
次のステップＳ２０６では、ＣＰＵ４０ｅは、図１０（ａ）に示すように、矩形領域Ｂの上下端から所定幅の領域を、上下補正領域として設定し（所定幅は、事前に設定されている）、その上下補正領域を左右方向において幾つかの分割領域Ｔに分割する。このとき、ＣＰＵ４０ｅは、ワーク領域Ｗと外周部分領域Ｅとの境界が分割領域Ｔの中に含まれずに分割領域Ｔ同士の境界に一致するよう、分割領域Ｔの区割りを調整する。
【００３７】
次のステップＳ２０７では、ＣＰＵ４０ｅは、ステップＳ２０６で設定した各分割領域Ｔ内を補正する。具体的には、ＣＰＵ４０ｅは、各分割領域Ｔについて、以下の処理を行う。その処理では、ＣＰＵ４０ｅは、まず、分割領域Ｔにおける横方向の各画素列について、画素値の累積を行う。図１０（ｂ）には、各画素列についての累積画素値を縦方向の各位置にプロットして得たグラフを、示している。続いて、ＣＰＵ４０ｅは、このグラフが水平（図１０では垂直）となるような縦方向の各位置での補正値を算出し、分割領域Ｔ内をこの補正値に基づいて補正する。なお、この分割領域Ｔ内の補正は、ワーク領域Ｗに含まれる部分を補正することを目的としており、外周部分領域Ｅに含まれる部分、付随的に補正されているだけである。従って、この時点において、分割領域Ｔにおける外周部分領域Ｅに含まれる部分になされた補正の精度が要求されることはない。図１１は、分割領域Ｓ、Ｔ内の補正が行われたあとの画像５１を示している。図１１の画像５１には、ワーク領域Ｗの輪郭が実線で示されているが、これは便宜的に示したものであり、分割領域Ｓ、Ｔ内の補正によりこのような輪郭が画像５１内に生成されることはない。
【００３８】
次のステップＳ２０８では、ＣＰＵ４０ｅは、外周部分領域Ｅを塗り潰すために必要な画素値を算出する処理を行う。具体的には、ＣＰＵ４０ｅは、図１２に示すように、ワーク領域Ｗの左右端近傍と上下端近傍とにおいて、このワーク領域Ｗと交差する４本の参照ラインＬを、設定する。４本の参照ラインＬには、水平方向と平行なラインが２本と、垂直方向に平行なラインが２本含まれている。続いて、ＣＰＵ４０ｅは、各参照ラインＬについて、以下の処理を行う。その処理では、ＣＰＵ４０ｅは、１本の参照ラインＬ中の画素を一個ずつ特定し、特定した画素とその前後の所定個数の画素とについての画素値の平均値を算出する。つまり、ＣＰＵ４０ｅは、１本の参照ラインＬの各画素について移動平均値を算出する。
【００３９】
次のステップＳ２０９では、ＣＰＵ４０ｅは、ステップＳ２０８で算出した移動平均値を利用して、外周部分領域Ｅを塗り潰す処理を行う。具体的には、ＣＰＵ４０ｅは、各参照ラインＬについて、以下の処理を行う。すなわち、ＣＰＵ４０ｅは、１本の参照ライン
Ｌ中の画素を一個ずつ特定し、外周部分領域Ｅにおける特定画素と同じ縦方向（又は横方向）の画素列の画素値を、特定画素に係る移動平均値に置換する。また、ＣＰＵ４０ｅは、ワーク領域Ｗにおけるその画素列と同じ列にある画素のうち、最も外側にある数画素の画素値も、特定した画素の画素値に置換する。この処理により、外周部分領域Ｅ内とワーク領域Ｗの縁は、参照ラインＬ上の色で塗り潰されることとなる。このような塗り潰しにより、ステップＳ２０２のシェーディング補正やステップＳ２０５及びＳ２０７の補正によって消しきれなかった外周部分領域Ｅのノイズ等が、完全に除去される。
【００４０】
なお、これらステップＳ２０２乃至Ｓ２０９を実行するＣＰＵ４０ｅは、前述した補正部に相当している。
【００４１】
以上の検査領域補正サブルーチンにより、ステップＳ２０１で設定した矩形領域Ｂ内の補正を行った後、ＣＰＵ４０ｅは、検査領域補正サブルーチンを終了して、図３のステップＳ１０５へ処理を進める。
【００４２】
ステップＳ１０５では、ＣＰＵ４０ｅは、画像内の欠陥が強調されるようにするため、画像データに対し、欠陥強調フィルタ処理を行う。欠陥強調フィルタ処理では、ＣＰＵ４０ｅは、まず、欠陥を表す画素を、画像データの中から検索する。具体的には、ＣＰＵ４０ｅは、画像データ内の複数の画素を一つずつ注目していき、注目画素の画素値がその周囲の画素の画素値の平均に対して所定量の差を有する場合に、その注目画素を欠陥対応画素として決定する。続いて、ＣＰＵ４０ｅは、欠陥対応画素として決定した画素に対し、その画素が強調されるよう所定の処理を施す。
【００４３】
次のステップＳ１０６では、ＣＰＵ４０ｅは、欠陥を表す画素が白色となり、欠陥を表していない画素が黒色となるよう、画像データに対して、二値化処理を行う。
【００４４】
次のステップＳ１０７では、ＣＰＵ４０ｅは、画像内で欠陥を表す画素の塊に採番するため、ラベリング処理を行う。
【００４５】
次のステップＳ１０８では、ＣＰＵ４０ｅは、採番された画素塊のそれぞれについて、面積や長さなどの特徴量を算出する処理を行う。
【００４６】
次のステップＳ１０９では、ＣＰＵ４０ｅは、採番された画素塊の中に、特徴量が所定の閾値を超過する画素塊が存在するか否かを、判別する。そして、採番された画素塊の中に、特徴量が所定の閾値を超過する画素塊が存在していなかった場合、ＣＰＵ４０ｅは、ステップＳ１０９から処理を分岐させ、ステップＳ１０１へ処理を戻す。一方、採番された画素塊の中に、特徴量が所定の閾値を超過する画素塊が存在していた場合、ＣＰＵ４０ｅは、ステップＳ１１０へ処理を進める。
【００４７】
なお、これらステップＳ１０５乃至Ｓ１０９を実行するＣＰＵ４０ｅは、前述した検索部に相当している。
【００４８】
ステップＳ１１０では、ＣＰＵ４０ｅは、画像データに基づく画像における特徴量が所定の閾値を超過した画素塊の位置に、印をスーパーインポーズし、その画像を表示ユニット４０ａに表示する。また、ＣＰＵ４０ｅは、その画像とともに、表面検査の再開を指示するためのボタンを含むダイアログ（図示略）も、表示ユニット４０ａに表示する。
【００４９】
なお、このステップＳ１１０を実行するＣＰＵ４０ｅは、前述した出力部に相当している。
【００５０】
次のステップＳ１１１では、ＣＰＵ４０ｅは、図示せぬダイアログ内のボタンがクリックされるまで待機する。そして、操作者が、ベルトコンベア上から工業的製造物Ｐを取り除く操作を行った後、図示せぬダイアログ内のボタンをクリックすると、ＣＰＵ４０ｅは、ステップＳ１１１からステップＳ１０１へ処理を戻す。
【００５１】
＜＜作用効果＞＞
第１の実施形態の表面検査システムによれば、制御装置４０が、１個の工業的製造物Ｐの検査対象面を撮像して画像データを取得した後、検査対象面の中心部を表す画素の画素値に基づいて、濃淡を生じせしめる意匠部分を表す画素の画素値を嵩上げするとともに（ステップＳ２０５、Ｓ２０７）、検査対象面以外の部分を表す画素の画素値を嵩上げする（ステップＳ２０８、Ｓ２０９）。
【００５２】
このような補正が行われるので、検査対象面を表す画素の中から、欠陥を表す画素が検索される際に、注目画素と対比される周辺画素に、検査対象面以外の部分を表す画素や、濃淡を生じせしめる意匠部分を表す画素が、含まれていたとしても、それら画素は、注目画素と同レベルに補正されている。このため、実際に欠陥が無い箇所を表す画素が、欠陥対応画素として検出されることがない。
【実施形態２】
【００５３】
第２の実施形態は、第１の実施形態における図３のステップＳ１０４で実行される検査領域補正サブルーチンの内容を若干変えたものとなっている。従って、第２の実施形態の表面検査システムのハードウエア構成及びソフトウエア構成は、第１の実施形態と同じである。
【００５４】
図１３は、第２の実施形態の検査領域補正サブルーチンの流れを示す図である。
【００５５】
図１３と図４とを比較して明らかなように、第２の実施形態のステップＳ２０１からステップＳ２０７までは、第１の実施形態と全く同じ処理内容となっている。第２の実施形態では、ＣＰＵ４０ｅは、ステップＳ２０７を実行した後、ステップＳ２１０へ処理を進める。
【００５６】
ステップＳ２１０では、ＣＰＵ４０ｅは、外周部分領域Ｅを塗り潰す処理を行う。具体的には、ＣＰＵ４０ｅは、図１４に示すように、ワーク領域Ｗの左右端近傍と上下端近傍とにおいて、このワーク領域Ｗと交差する４本の境界ラインＲを、設定する。４本の境界ラインＲには、水平方向と平行なラインが２本と、垂直方向に平行なラインが２本含まれている。続いて、ＣＰＵ４０ｅは、各境界ラインＲについて、以下の処理を行う。その処理では、ＣＰＵ４０ｅは、１本の境界ラインＲを挟んで画像中心がある側とは反対側にある外周部分領域Ｅの形状の輪郭を特定する（このとき、その輪郭には、ワーク領域Ｗの輪郭から数画素内側の部分が含まれても良い）。続いて、ＣＰＵ４０ｅは、その境界ラインを対称線として線対称となるように、境界ラインＲの内側（画像中心がある側）に、同じ輪郭を設定する。その後、ＣＰＵ４０ｅは、設定した輪郭の内側の部分を複製し、複製した部分画像Ｄを反転させて、境界ラインの外側における外周部分領域Ｅに貼り付ける。つまり、ＣＰＵ４０ｅは、１本の境界ラインの内側の画像をコピーして、その外側にある外周部分領域Ｅにペーストする。この処理により、外周部分領域Ｅ内とワーク領域Ｗの縁は、境界ラインＲの内側の色で塗り潰されることとなる。
【００５７】
第２の実施形態の表面検査システムによっても、制御装置４０が、１個の工業的製造物Ｐの検査対象面を撮像して画像データを取得した後、検査対象面の中心部を表す画素の画素値に基づいて、濃淡を生じせしめる意匠部分を表す画素の画素値を嵩上げするとともに（ステップＳ２０５、Ｓ２０７）、検査対象面以外の部分を表す画素の画素値を嵩上げす
る（ステップＳ２１０）。
【００５８】
このような補正が行われるので、検査対象面を表す画素の中から、欠陥を表す画素が検索される際に、注目画素と対比される周辺画素に、検査対象面以外の部分を表す画素や、濃淡を生じせしめる意匠部分を表す画素が、含まれていたとしても、それら画素は、注目画素と同レベルに補正されている。このため、実際に欠陥が無い箇所を表す画素が、欠陥対応画素として検出されることがない。
【００５９】
＜ユニットに関する説明＞
以上に説明した第１及び第２の実施形態において、制御装置４０の各ユニット４０ａ〜４０ｆは、何れも、ソフトウエア要素とハードウエア要素とから構成されていても良いし、ハードウエア要素のみで構成されていても良い。
【００６０】
ソフトウエア要素としては、インターフェースプログラム、ドライバプログラム、テーブル、及び、データ、並びに、これらのうちの幾つかを組み合わせたものが、例示できる。これらは、後述のコンピュータ可読媒体に格納されたものであっても良いし、ＲＯＭ［Read Only Memory］及びＬＳＩ［Large Scale Integration］などの記憶装置に固定的に
組み込まれたファームウエアであっても良い。
【００６１】
また、ハードウエア要素としては、ＦＰＧＡ［Field Programmable Gate Array］、Ａ
ＳＩＣ［Application Specific Integrated Circuit］、ゲートアレイ、論理ゲートの組
み合わせ、信号処理回路、アナログ回路、及び、その他の回路が、例示できる。このうち、論理ゲートには、ＡＮＤ、ＯＲ、ＮＯＴ、ＮＡＮＤ、ＮＯＲ、フリップフロップ、カウンタ回路などが、含まれていてもよい。また、信号処理回路には、信号値の加算、乗算、除算、反転、積和演算、微分、積分などを実行する回路要素が、含まれていてもよい。また、アナログ回路には、増幅、加算、乗算、微分、積分などを実行する回路要素が、含まれていてもよい。
【００６２】
なお、前述した制御装置４０の各ユニット４０ａ〜４０ｆをそれぞれ構成する要素は、以上に例示したものに限定されず、これらと等価な他の要素であっても良い。
【００６３】
＜ソフトウエア及びプログラムに関する説明＞
以上に説明した第１及び第２の実施形態において、前述した制御装置４０の各ユニット４０ａ〜４０ｆ、及び、前述したソフトウエア要素は、何れも、ソフトウエア部品、手続き型言語による部品、オブジェクト指向ソフトウエア部品、クラス部品、タスクとして管理される部品、プロセスとして管理される部品、関数、属性、プロシジャ（手続き）、サブルーチン（ソフトウエアルーチン）、プログラムコードの断片又は部分、ドライバ、ファームウエア、マイクロコード、コード、コードセグメント、エクストラセグメント、スタックセグメント、プログラム領域、データ領域、データ、データベース、データ構造、フィールド、レコード、テーブル、マトリックステーブル、配列、変数、パラメータなどの要素を、含んでいても良い。
【００６４】
また、前述した制御装置４０の各ユニット４０ａ〜４０ｆ、及び、前述したソフトウエア要素は、何れも、Ｃ言語、Ｃ＋＋、Ｊａｖａ（米国サンマイクロシステムズ社商標）、ビジュアルベーシック（米国マイクロソフト社商標）、Ｐｅｒｌ、Ｒｕｂｙ、その他の多くのプログラミング言語により記述されたものであっても良い。
【００６５】
また、前述した制御装置４０の各ユニット４０ａ〜４０ｆ、及び、前述したソフトウエア要素に含まれる命令、コード及びデータは、有線ネットワークカード及び有線ネットワークを通じて、又は、無線カード及び無線ネットワークを通じて、コンピュータ、又は、
機械若しくは装置に組み込まれたコンピュータに、送信又はローディングされても良い。
【００６６】
前述した送信又はローディングにおいて、データ信号は、例えば搬送波に組み込まれることにより、有線ネットワーク又は無線ネットワーク上を移動する。但し、データ信号は、前述した搬送波に依らず、いわゆるベースバンド信号のまま転送されても良い。このような搬送波は、電気的、磁気的又は電磁的な形態、光、音響、又は、その他の形態で、送信される。
【００６７】
ここで、有線ネットワーク又は無線ネットワークは、例えば、電話回線、ネットワーク回線、ケーブル（光ケーブル、金属ケーブルを含む）、無線リンク、携帯電話アクセス回線、ＰＨＳ［Personal Handyphone System］網、無線ＬＡＮ［Local Area Network］、Bluetooth（ブルートゥース特別利益団体の商標）、車両搭載型無線通信（ＤＳＲＣ［Dedicated Short Range Communication］を含む）、及び、これらのうちの何れかからなるネットワークである。そして、このデータ信号は、命令、コード及びデータを含む情報を、ネットワーク上のノード又は要素に、伝達する。
【００６８】
なお、前述した制御装置４０の各ユニット４０ａ〜４０ｆ、及び、前述したソフトウエア要素を構成する要素は、以上に例示したものに限定されず、これらと等価な他の要素であっても良い。
【００６９】
＜コンピュータ可読媒体に関する説明＞
以上に説明した本実施形態における何れかの機能は、コード化されてコンピュータ可読媒体の記憶領域に格納されていても良い。この場合、その機能を実現するためのプログラムが、このコンピュータ可読媒体を介して、コンピュータ、又は、機械若しくは装置に組み込まれたコンピュータに、提供され得る。コンピュータ、又は、機械若しくは装置に組み込まれたコンピュータは、コンピュータ可読媒体の記憶領域からプログラムを読み出してそのプログラムを実行することによって、その機能を実現することができる。
【００７０】
ここで、コンピュータ可読媒体とは、電気的、磁気的、光学的、化学的、物理的又は機械的な作用によって、プログラム及びデータ等の情報を蓄積するとともに、コンピュータに読み取られ得る状態でその情報を保持する記録媒体をいう。
【００７１】
電気的又は磁気的な作用としては、ヒューズによって構成されるＲＯＭ［Read Only Memory］上の素子へのデータの書き込みが、例示できる。磁気的又は物理的な作用としては、紙媒体上の潜像へのトナーの現像が、例示できる。なお、紙媒体に記録された情報は、例えば、光学的に読み取ることができる。光学的且つ化学的な作用としては、基盤上での薄膜形成又は凹凸形成が、例示できる。なお、凹凸の形態で記録された情報は、例えば、光学的に読み取ることができる。化学的な作用としては、基板上での酸化還元反応、又は、半導体基板上での酸化膜形成、窒化膜形成、若しくは、フォトレジスト現像が、例示できる。物理的又は機械的な作用としては、エンボスカードへの凹凸形成、又は、紙媒体へのパンチの穿孔が、例示できる。
【００７２】
また、コンピュータ可読媒体の中には、コンピュータ、又は、機械若しくは装置に組み込まれたコンピュータに着脱自在に装着できるものがある。着脱自在なコンピュータ可読媒体としては、ＤＶＤ（ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭを含む）、＋Ｒ／＋ＷＲ、ＢＤ（ＢＤ−Ｒ、ＢＤ−ＲＥ、ＢＤ−ＲＯＭを含む）、ＣＤ［Compact Disk］（ＣＤ−Ｒ、ＣＤ−ＲＷ、ＣＤ−ＲＯＭを含む）、ＭＯ［Magneto Optical
］ディスク、その他の光ディスク媒体、フレキシブルディスク（フロッピーディスク（フロッピーは日立製作所社商標）を含む）、その他の磁気ディスク媒体、メモリーカード（コンパクトフラッシュ（米国サンディスク社商標）、スマートメディア（東芝社商標）、
ＳＤカード（米国サンディスク社、松下電器産業社、東芝社商標）、メモリースティック（ソニー社商標）、ＭＭＣ（米国ジーメンス社、米国サンディスク社商標）など）、磁気テープ、及び、その他のテープ媒体、並びに、これらのうちの何れかを内蔵した記憶装置が、例示できる。記憶装置には、ＤＲＡＭ［Dynamic Random Access Memory］又はＳＲＡＭ［Static Random Access Memory］がさらに内蔵されたものもある。
【００７３】
また、コンピュータ可読媒体の中には、コンピュータ、又は、機械若しくは装置に組み込まれたコンピュータに固定的に装着されたものがある。この種のコンピュータ可読媒体としては、ハードディスク、ＤＲＡＭ、ＳＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ［Electronically Erasable and Programmable Read Only Memory］、フラッシュメモリなどが、例示で
きる。
【００７４】
前述した本実施形態に関し、更に、以下の付記を開示する。
【００７５】
（付記１）
工業的製造物の一つの検査対象面を撮像して検査対象画像を生成する撮像部、
前記撮像部が生成した検査対象画像の中に、前記検査対象面を表す画素とその検査対象面の外周部分を表す画素とを含む補正対象領域を、設定する設定部、
前記設定部が設定した前記補正対象領域において、前記検査対象面の中央部を表す画素の画素値に基づいて、前記検査対象面の中央部以外の残りの部分を表す画素の画素値を嵩上げすることにより、前記検査対象画像を補正する補正部、
前記補正部が補正した補正対象領域のうち、前記検査対象面を表す画素からなるワーク領域の中から、欠陥対応画素を検索する検索部、及び、
前記検索部が前記ワーク領域の中から欠陥対応画素を検出した場合に、前記検査対象面に欠陥があった旨を出力する出力部
を備えることを特徴とする表面検査システム。
【００７６】
（付記２）
前記補正部は、前記ワーク領域の中央部における水平方向又は垂直方向に沿った所定線上の各位置について画素値の移動平均値を算出し、前記補正対象領域からワーク領域を除いた残りの外周部分領域における前記所定線上の位置に対応する画素列の各画素値を、その位置の移動平均値に基づいて嵩上げする
ことを特徴とする付記１記載の表面検査システム。
【００７７】
（付記３）
前記補正部は、前記補正対象領域からワーク領域を除いた残りの外周部分領域に対し、前記ワーク領域の中央部の部分画像を貼り付けることによって、その外周部分領域内の画素の画素値を嵩上げする
ことを特徴とする付記１記載の表面検査システム。
【００７８】
（付記４）
前記検索部は、前記ワーク領域内の複数の画素を一つずつ注目していくとともに、注目画素から所定個離れた画素までの参照領域内にある周辺画素の画素値の平均に対して画素値が所定量の差を有する注目画素を、欠陥対応画素として検索する
ことを特徴とする付記１、２又は３記載の表面検査システム。
【００７９】
（付記５）
前記設定部は、前記ワーク領域の最も上側の位置、最も下側の位置、最も左側の位置、及び、最も右側の位置からそれぞれ所定幅だけ外側にある画素を最も外側に含む矩形領域を、補正対象領域として設定する
ことを特徴とする付記４記載の表面検査システム。
【００８０】
（付記６）
前記所定幅は、前記検索部が前記注目画素に対して周辺画素を特定する際に利用する前記参照領域の幅の半分と同じである
ことを特徴とする付記５記載の表面検査システム。
【００８１】
（付記７）
コンピュータが、
工業的製造物の一つの検査対象面を撮像して検査対象画像を生成する撮像手順、
前記撮像手順で生成した検査対象画像の中に、前記検査対象面を表す画素とその検査対象面の外周部分を表す画素とを含む補正対象領域を、設定する設定手順、
前記設定手順で設定した前記補正対象領域において、前記検査対象面の中央部を表す画素の画素値に基づいて、前記検査対象面の中央部以外の残りの部分を表す画素の画素値を嵩上げすることにより、前記検査対象画像を補正する補正手順、
前記補正手順で補正した補正対象領域のうち、前記検査対象面を表す画素からなるワーク領域の中から、欠陥対応画素を検索する検索手順、及び、
前記検索手順で前記ワーク領域の中から欠陥対応画素を検出した場合に、前記検査対象面に欠陥があった旨を出力する出力手順
を実行する
ことを特徴とする表面検査方法。
【００８２】
（付記８）
前記コンピュータが、
前記補正手順においては、前記ワーク領域の中央部における水平方向又は垂直方向に沿った所定線上の各位置について画素値の移動平均値を算出し、前記補正対象領域からワーク領域を除いた残りの外周部分領域における前記所定線上の位置に対応する画素列の各画素値を、その位置の移動平均値に基づいて嵩上げする
ことを特徴とする付記７記載の表面検査方法。
【００８３】
（付記９）
前記コンピュータが、
前記補正手順においては、前記補正対象領域からワーク領域を除いた残りの外周部分領域に対し、前記ワーク領域の中央部の部分画像を貼り付けることによって、その外周部分領域内の画素の画素値を嵩上げする
ことを特徴とする付記７記載の表面検査方法。
【００８４】
（付記１０）
前記コンピュータが、
前記検索手順においては、前記ワーク領域内の複数の画素を一つずつ注目していくとともに、注目画素から所定個離れた画素までの参照領域内にある周辺画素の画素値の平均に対して画素値が所定量の差を有する注目画素を、欠陥対応画素として検索する
ことを特徴とする付記７、８又は９記載の表面検査方法。
【００８５】
（付記１１）
前記コンピュータが、
前記設定手順においては、前記ワーク領域の最も上側の位置、最も下側の位置、最も左側の位置、及び、最も右側の位置からそれぞれ所定幅だけ外側にある画素を最も外側に含む矩形領域を、補正対象領域として設定する
ことを特徴とする付記１０記載の表面検査方法。
【００８６】
（付記１２）
前記所定幅は、前記検索部が前記注目画素に対して周辺画素を特定する際に利用する前記参照領域の幅の半分と同じである
ことを特徴とする付記１１記載の表面検査方法。
【００８７】
（付記１３）
コンピュータを、
工業的製造物の一つの検査対象面を撮像して検査対象画像を生成する撮像手段、
前記撮像手段が生成した検査対象画像の中に、前記検査対象面を表す画素とその検査対象面の外周部分を表す画素とを含む補正対象領域を、設定する設定手段、
前記設定手段が設定した前記補正対象領域において、前記検査対象面の中央部を表す画素の画素値に基づいて、前記検査対象面の中央部以外の残りの部分を表す画素の画素値を嵩上げすることにより、前記検査対象画像を補正する補正手段、
前記補正手段が補正した補正対象領域のうち、前記検査対象面を表す画素からなるワーク領域の中から、欠陥対応画素を検索する検索手段、及び、
前記検索手段が前記ワーク領域の中から欠陥対応画素を検出した場合に、前記検査対象面に欠陥があった旨を出力する出力手段
として機能させる
ことを特徴とする表面検査プログラム。
【００８８】
（付記１４）
前記補正手段は、前記ワーク領域の中央部における水平方向又は垂直方向に沿った所定線上の各位置について画素値の移動平均値を算出し、前記補正対象領域からワーク領域を除いた残りの外周部分領域における前記所定線上の位置に対応する画素列の各画素値を、その位置の移動平均値に基づいて嵩上げする
ことを特徴とする付記１３記載の表面検査プログラム。
【００８９】
（付記１５）
前記補正手段は、前記補正対象領域からワーク領域を除いた残りの外周部分領域に対し、前記ワーク領域の中央部の部分画像を貼り付けることによって、その外周部分領域内の画素の画素値を嵩上げする
ことを特徴とする付記１３記載の表面検査プログラム。
【００９０】
（付記１６）
前記検索手段は、前記ワーク領域内の複数の画素を一つずつ注目していくとともに、注目画素から所定個離れた画素までの参照領域内にある周辺画素の画素値の平均に対して画素値が所定量の差を有する注目画素を、欠陥対応画素として検索する
ことを特徴とする付記１３、１４又は１５記載の表面検査プログラム。
【００９１】
（付記１７）
前記設定手段は、前記ワーク領域の最も上側の位置、最も下側の位置、最も左側の位置、及び、最も右側の位置からそれぞれ所定幅だけ外側にある画素を最も外側に含む矩形領域を、補正対象領域として設定する
ことを特徴とする付記１６記載の表面検査プログラム。
【００９２】
（付記１８）
前記所定幅は、前記検索部が前記注目画素に対して周辺画素を特定する際に利用する前記参照領域の幅の半分と同じである
ことを特徴とする付記１７記載の表面検査プログラム。
【図面の簡単な説明】
【００９３】
【図１】第１の実施形態の表面検査システムの構成図
【図２】制御装置の構成図
【図３】表面検査処理の流れを示す図
【図４】検査領域補正サブルーチンの流れを示す図
【図５】画像の一例を示す図
【図６】画像の一例を示す図
【図７】画像の一例を示す図
【図８】画像の一例を示す図
【図９】画像の一例を示す図
【図１０】画像の一例を示す図
【図１１】画像の一例を示す図
【図１２】画像の一例を示す図
【図１３】第２の実施形態の検査領域補正サブルーチンの流れを示す図
【図１４】画像の一例を示す図
【図１５】従来の欠陥検索方法の概略図
【符号の説明】
【００９４】
１０    駆動装置
２０    照明装置
３０    撮像装置
４０    制御装置
４０ａ  表示ユニット
４０ｂ  入力ユニット
４０ｃ  インターフェースユニット
４０ｄ  ストレージユニット
４０ｅ  ＣＰＵ
４０ｆ  メインメモリユニット
４１    オペレーティングシステムソフトウエア
４２    ドライバソフトウエア
４３    表面検査プログラム
５１    画像
【図１】
0005194961.tif 000002
【図２】
0005194961.tif 000003
【図３】
0005194961.tif 000004
【図４】
0005194961.tif 000005
【図５】
0005194961.tif 000006
【図６】
0005194961.tif 000007
【図７】
0005194961.tif 000008
【図８】
0005194961.tif 000009
【図９】
0005194961.tif 000010
【図１０】
0005194961.tif 000011
【図１１】
0005194961.tif 000012
【図１２】
0005194961.tif 000013
【図１３】
0005194961.tif 000014
【図１４】
0005194961.tif 000015
【図１５】
0005194961.tif 000016