(57)【特許請求の範囲】
【請求項１】
複数のループが結合した形状のワークを撮像した画像から、ワークの画像の外周輪郭に対する法線を検出する処理と、前記外周輪郭に対する法線上の特定の点でこの法線と直交する直線に沿ってワーク外周部の画像を直線化することによりループ分岐部の座標を取得する処理と、ループ分岐部の座標を始点として各ループの内周輪郭に対する法線を検出する処理と、前記内周輪郭に対する法線上の特定の点でこの法線と直交する直線に沿って前記各ループの画像を直線化する処理と、直線化された各ループの画像から欠陥部を検出してその良否を判定する欠陥検出処理と、を行うことを特徴とする画像処理によるワーク欠陥検査方法。
【請求項２】
ワークの画像の外周輪郭に対する法線又は各ループの内周輪郭に対する法線を検出する処理が、ワーク画像上の任意の位置座標を法線検出点としてこの法線検出点を通る任意の直線を中心とする所定幅でワーク画像を切り取って前記直線で折り返し、折り返された画像が互いに重合しなければ前記直線の角度を変更して再び折り返し、折り返された画像が互いに重合した場合に、このときの前記直線を法線とすることを特徴とする請求項１に記載の画像処理によるワーク欠陥検査方法。
【請求項３】
ワーク外周部の画像及び各ループ画像を直線化する処理が、外周輪郭に対する法線上又は各ループの内周輪郭に対する法線上の特定の点でこの法線と直交する直線上にあって前記特定の点から所定距離離れた位置座標を次の法線検出点として前記法線の検出を繰り返し、前記法線上の特定の点でこの法線と直交する直線に沿って前記画像を直線化する処理からなることを特徴とする請求項１又は２に記載の画像処理によるワーク欠陥検査方法。
【請求項４】
複数のループが結合した形状のワークを撮像する撮像装置と、前記撮像装置により取り込まれた画像データを処理する画像処理装置と、画像処理された画像データを取り込んで演算処理を行う演算処理装置と、を備え、前記演算処理装置による演算処理が、ワークの画像の外周輪郭に対する法線を検出する処理と、前記外周輪郭に対する法線上の特定の点でこの法線と直交する直線に沿ってワーク外周部の画像を直線化することによりループ分岐部の座標を取得する処理と、ループ分岐部の座標を始点として各ループの内周輪郭に対する法線を検出する処理と、前記内周輪郭に対する法線上の特定の点でこの法線と直交する直線に沿って前記各ループの画像を直線化する処理と、直線化された各ループの画像から欠陥部を検出してその良否を判定する欠陥検出処理と、からなることを特徴とする画像処理によるワーク欠陥検査システム。
【請求項５】
演算処理装置による外周輪郭に対する法線又は各ループの内周輪郭に対する法線を検出する処理が、ワーク画像上の任意の位置座標を法線検出点としてこの法線検出点を通る任意の直線を中心とする所定幅でワーク画像を切り取って前記直線で折り返す処理と、折り返された画像が互いに重合しなければ前記直線の角度を変更して再び折り返す処理と、折り返された画像が互いに重合した場合に、このときの前記直線を法線とする処理と、からなることを特徴とする請求項４に記載の画像処理によるワーク欠陥検査システム。
【請求項６】
演算処理装置によるワーク外周部の画像及び各ループ画像を直線化する処理が、外周輪郭に対する法線上又は各ループの内周輪郭に対する法線上の特定の点でこの法線と直交する直線上にあって前記特定の点から所定距離離れた位置座標を次の法線検出点として前記法線の検出を繰り返す処理と、前記法線上の特定の点でこの法線と直交する直線に沿って前記画像を直線化する処理と、からなることを特徴とする請求項４又は５に記載の画像処理によるワーク欠陥検査システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ワークを撮像した画像を処理してワーク表面の欠陥を検出する欠陥検査方法及びワーク欠陥検査システムであって、特に、複数のループが分岐して延びる部分を有する複雑な形状のワークを検査対象とするものに関する。
【背景技術】
【０００２】
検査対象のワークが、例えば自らの重量などによる形状の変化が大きい、長尺で柔軟なゴム成形品であっても、あるいは、ワークに存在する欠陥が、成形不良などによってワークの輪郭の一部又は全部が欠損したものである場合でも、撮像したワーク画像を直線化する画像直線化処理によって欠陥部を検出可能とした欠陥検査方法が知られている（例えば下記の特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−３０４９５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記技術によれば、例えば図２４に示すように、欠陥検査対象のワークＷが、複数のループＬ１〜Ｌ３が結合した複雑な形状のゴム製ガスケット等のような製品である場合、上記従来の画像処理方法では、ワーク画像の直線化において、ワーク外周部１０１〜１０４のみが直線化処理されるので、ループＬ１〜Ｌ３のループ分岐部１０７〜１１０から内周側へ延びる内周橋絡部１０５，１０６の一部（図２４における一点鎖線で囲んで示す領域）が検査範囲から外れてしまい、この領域の欠陥検査ができなかった。
【０００５】
本発明は、以上のような点に鑑みてなされたものであって、その技術的課題は、自らの重量などによって形状が変化しやすく、かつ複数のループが結合した複雑な形状のワークについても、画像処理による欠陥検出を可能とすることにある。
【課題を解決するための手段】
【０００６】
上述した技術的課題を解決するため、請求項１の発明に係る画像処理によるワーク欠陥検査方法は、複数のループが結合した形状のワークを撮像した画像から、ワークの画像の外周輪郭に対する法線を検出する処理と、前記外周輪郭に対する法線上の特定の点でこの法線と直交する直線に沿ってワーク外周部の画像を直線化することによりループ分岐部の座標を取得する処理と、ループ分岐部の座標を始点として各ループの内周輪郭に対する法線を検出する処理と、前記内周輪郭に対する法線上の特定の点でこの法線と直交する直線に沿って前記各ループの画像を直線化する処理と、直線化された各ループの画像から欠陥部を検出してその良否を判定する欠陥検出処理と、を行うものである。
【０００７】
また、請求項２の発明に係る画像処理によるワーク欠陥検査方法は、請求項１に記載された構成において、ワーク画像の外周輪郭に対する法線又は各ループの内周輪郭に対する法線を検出する処理が、ワーク画像上の任意の位置座標を法線検出点としてこの法線検出点を通る任意の直線を中心とする所定幅でワーク画像を切り取って前記直線で折り返し、折り返された画像が互いに重合しなければ前記直線の角度を変更して再び折り返し、折り返された画像が互いに重合した場合に、このときの前記直線を法線とするものである。
【０００８】
また、請求項３の発明に係る画像処理によるワーク欠陥検査方法は、請求項１又は２に記載された構成において、ワーク外周部の画像及び各ループ画像を直線化する処理が、外周輪郭に対する法線上又は各ループの内周輪郭に対する法線上の特定の点でこの法線と直交する直線上にあって前記特定の点から所定距離離れた位置座標を次の法線検出点として前記法線の検出を繰り返し、前記法線上の特定の点でこの法線と直交する直線に沿って前記画像を直線化する処理からなるものである。
【０００９】
また、請求項４の発明に係る画像処理によるワーク欠陥検査システムは、複数のループが結合した形状のワークを撮像する撮像装置と、前記撮像装置により取り込まれた画像データを処理する画像処理装置と、画像処理された画像データを取り込んで演算処理を行う演算処理装置と、を備え、前記演算処理装置による演算処理が、ワークの画像の外周輪郭に対する法線を検出する処理と、前記外周輪郭に対する法線上の特定の点でこの法線と直交する直線に沿ってワーク外周部の画像を直線化することによりループ分岐部の座標を取得する処理と、ループ分岐部の座標を始点として各ループの内周輪郭に対する法線を検出する処理と、前記内周輪郭に対する法線上の特定の点でこの法線と直交する直線に沿って前記各ループの画像を直線化する処理と、直線化された各ループの画像から欠陥部を検出してその良否を判定する欠陥検出処理と、からなることを特徴とするものである。
【００１０】
また、請求項５の発明に係る画像処理によるワーク欠陥検査システムは、請求項４に記載された構成において、演算処理装置による外周輪郭に対する法線又は各ループの内周輪郭に対する法線を検出する処理が、ワーク画像上の任意の位置座標を法線検出点としてこの法線検出点を通る任意の直線を中心とする所定幅でワーク画像を切り取って前記直線で折り返す処理と、折り返された画像が互いに重合しなければ前記直線の角度を変更して再び折り返す処理と、折り返された画像が互いに重合した場合に、このときの前記直線を法線とする処理と、からなることを特徴とするものである。
【００１１】
また、請求項６の発明に係る画像処理によるワーク欠陥検査システムは、請求項４又は５に記載された構成において、演算処理装置によるワーク外周部の画像及び各ループ画像を直線化する処理が、外周輪郭に対する法線上又は各ループの内周輪郭に対する法線上の特定の点でこの法線と直交する直線上にあって前記特定の点から所定距離離れた位置座標を次の法線検出点として前記法線の検出を繰り返す処理と、前記法線上の特定の点でこの法線と直交する直線に沿って前記画像を直線化する処理と、からなることを特徴とするものである。
【発明の効果】
【００１２】
本発明に係る画像処理によるワーク欠陥検査方法及びワーク欠陥検査システムによれば、自らの重量などによって形状が変化しやすく、かつ複数のループが結合した複雑な形状のワークについても、ワーク画像における各ループの画像を直線化する処理によって、ワークの内周部を含むすべての領域について欠陥検出が可能となる。
【図面の簡単な説明】
【００１３】
【図１】本発明に係る画像処理によるワーク欠陥検査システムの好ましい実施の形態を示す概略構成説明図である。
【図２】本発明に係る画像処理によるワーク欠陥検査システムにより検査される検査対象のワークの一例を示す平面図である。
【図３】図２におけるIII−III断面図である。
【図４】本発明による処理の流れの一部を示すフローチャートである。
【図５】本発明による処理の流れの他の一部を示すフローチャートである。
【図６】本発明によるワーク画像認識処理画面を示す説明図である。
【図７】本発明による画素照度サンプリング処理を示す説明図である。
【図８】本発明による外周輪郭に対する法線検出処理を示す説明図である。
【図９】本発明による中心検出処理を示す説明図である。
【図１０】本発明による中心検出過程での照度プロファイルの処理を示す説明図である。
【図１１】本発明による次候補決定処理を示す説明図である。
【図１２】本発明により直線化処理されたワーク外周部の画像の一部を示す説明図である。
【図１３】本発明によりワーク外周部の画像を直線化処理した画像と直線化処理前のワーク画像との関係を示す説明図である。
【図１４】本発明によりワークのループの画像を直線化処理した画像と直線化処理前のワーク画像との関係を示す説明図である。
【図１５】本発明によりワークのすべてのループの画像を直線化処理した画像と直線化処理前のワーク画像との関係を示す説明図である。
【図１６】本発明によりワークのループの画像を直線化処理した画像の一部を示す説明図である。
【図１７】本発明におけるノイズの除去処理を含む欠陥検出処理の流れを示すフローチャートである。
【図１８】図１７における平滑化処理の詳細な処理の流れを示すフローチャートである。
【図１９】Ｍｅｄｉａｎフィルタによるフィルタリング処理を模式的に示す説明図である。
【図２０】Ｍｅｄｉａｎフィルタによるフィルタリング処理を模式的に示す説明図である。
【図２１】平滑化処理によって得られる平滑化画像を示す説明図である。
【図２２】入力されたワーク画像から、平滑化処理画像を減算処理することによって得られる画像を示す説明図である。
【図２３】ノイズ除去処理によって得られる画像を示す説明図である。
【図２４】従来技術による欠陥検査不可能領域を説明するための図である。
【発明を実施するための形態】
【００１４】
以下、本発明に係る画像処理によるワーク欠陥検査方法及びワーク欠陥検査システムの好ましい実施の形態について、図面を参照しながら説明する。
【００１５】
まず図１は、本発明に係る画像処理によるワーク欠陥検査システムを概略的に示すものであって、参照符号Ｗは検査対象のワークである。ワークＷは、図２に示すように、複数のループＬａ〜Ｌｃが結合した形状をなすものである。詳しくは、外周部１０１〜１０４と、その内周側を架橋形状に延びる２本の内周橋絡部１０５，１０６とからなり、外周部１０１及び内周橋絡部１０５によってループＬａが形成され、外周部１０２、内周橋絡部１０５、外周部１０４及び内周橋絡部１０６によってループＬｂが形成され、外周部１０３及び内周橋絡部１０６によってループＬｃが形成されている。また、このワークＷは、図３に示すように、断面形状が幅方向中心を対称軸とする対称形状をなし、かつ長手方向各部の断面が同形同大で、自重などによる形状の変化が大きいために形状が一定しないゴム製ガスケット等のような製品である。
【００１６】
図１に示すワーク欠陥検査システムにおいて、参照符号１は、ワークＷを載置する検査ステージ、参照符号２は検査ステージ１上を照明する照明装置、参照符号３は、検査ステージ１上のワークＷを撮像するカメラである。なお、カメラ３は、請求項４に記載された撮像装置に相当するものである。
【００１７】
検査ステージ１はＸＹテーブルからなるものであって、すなわち不図示の駆動装置によって水平方向（ＸＹ方向）へ変位し、カメラ３によるワークＷの撮影部位を任意に移動可能とするものである。また、カメラ３は、対物レンズによるワークＷの光学像をＣＣＤやＣＭＯＳ等の撮像素子によって画像信号に変換するものであって、ワークＷの幅方向全体及び長手方向の一部を含むエリアを撮影視野とするように、対物レンズを下方へ向けて検査ステージ１の上側にセットされている。
【００１８】
参照符号４は、カメラ３により取り込まれた画像データを処理する画像処理装置、参照符号５は、画像処理装置４により画像処理された画像データを順次格納する入力画像メモリ、参照符号６は、本発明の画像処理によるワーク欠陥検査方法を実行する処理プログラムが格納されたプログラムメモリ、参照符号７は、本発明の画像処理によるワーク欠陥検査方法を実行する処理プログラムによって動作し、入力画像メモリ５から画像データを順次読み出して各種の演算処理を行うＣＰＵ（Central Processing Unit）、参照符号８は、ＣＰＵ７において算出された法線データを格納する法線メモリ、参照符号９は、ＣＰＵ７において算出された中心座標データを格納する中心座標メモリ、参照符号１０は、ＣＰＵ７においてワーク外周部の画像を直線化処理した画像データを格納する外周部直線化画像メモリ、参照符号１１は、ＣＰＵ７において取得した各ループ分岐部の座標画像を格納する分岐座標メモリ、参照符号１２は、ＣＰＵ７において各ループの画像を直線化処理した画像データを格納するループ直線化画像メモリ、参照符号１３は、ＣＰＵ７において判定された検査結果データを格納する検査結果メモリ、参照符号１４は、欠陥検出の前処理において画像データからノイズを除去するためのＭｅｄｉａｎフィルタである。なお、ＣＰＵ７は、請求項４に記載された演算処理装置に相当するものである。
【００１９】
図４及び図５は、この実施の形態による処理の流れを示すフローチャートである。すなわち、まず、画像データが、画像処理装置４及び入力画像メモリ５を介してＣＰＵ７に読み出される（ステップＳ１）。この画像データは、検査ステージ１によってワークＷをＸＹ方向へ任意に移動させながらカメラ３で撮像することによって、ワークＷを複数の領域に分割した画像を取得すると共に、画像処理装置４によって例えばグレースケールに画像処理したものである。
【００２０】
図６は、ワーク画像認識処理画面を示す説明図、図７は、画素照度サンプリング処理を示す説明図である。すなわち、入力画像メモリ５から読み出された画像データは、図６に示すように、始点Ａから画面を一周する経路Ｌを移動しながら所定のサンプリング周期で画素照度をサンプリングする走査要素Ｖを有し、この走査要素Ｖが、経路Ｌ上を所定の距離だけ移動して停止する（ステップＳ２）。なお、図６における参照符号Ｐ０はワークＷの一部が撮影されたワーク画像、参照符号Ｑは、ワークＷのバリ等による欠陥部の画像、ＲはワークＷの表面に付着した塵埃等によるノイズ画像である。なお、経路Ｌは必ずしも画面を一周するものでなくても良く、例えば画面内をジグザグに進むものなど、有端の経路であっても良い。
【００２１】
次に、画面上における走査要素Ｖの位置座標が検出され、走査要素Ｖが始点Ａ（経路Ｌが有端である場合は終点）に到達したかが判定される（ステップＳ３）。そして、到達したことが検出された場合は（ステップＳ３＝ＹＥＳ）、画面上にワーク画像が認識されなかったものとして、処理はステップＳ１にリターンし、入力画像メモリ５から次の画像データの読み出しが行われる。
【００２２】
走査要素Ｖが始点Ａ（経路Ｌが有端である場合は終点）に未到達であることが検出された場合は（ステップＳ３＝ＮＯ）、図７に示すように、この走査要素Ｖを中心とする所定範囲における複数のサンプリング点Ｓ１〜Ｓｎで画素照度をサンプリングする。そして、サンプリングされた各サンプリング点Ｓ１〜Ｓｎの画素照度を加重平均し、予め設定された閾値と比較することにより、走査要素Ｖがワーク画像Ｐ０上に到達したかを判定し、言い換えればワーク画像Ｐ０の有無を認識する（ステップＳ４）。なお、画素照度のサンプリングを走査要素Ｖの位置をサンプリング点として１点のみで行う場合は、検査ステージ１上の汚れや埃等によってワーク画像Ｐ０を誤認識するおそれがあるのに対し、複数のサンプリング点Ｓ１〜Ｓｎでサンプリングした画素照度の平均値は安定した統計量となるので、汚れや埃等に起因するノイズ等の影響を受けにくくなり、ワーク画像Ｐ０の認識の信頼性を高めることができる。
【００２３】
そして、上述のサンプリング結果、走査要素Ｖがワーク画像Ｐ０上に未到達であると判定された場合は（ステップＳ４＝ＮＯ）、処理はステップＳ２へリターンする。
【００２４】
また、走査要素Ｖがワーク画像Ｐ０上に達したものと判定すなわちワーク画像Ｐ０が認識された場合は（ステップＳ４＝ＹＥＳ）、走査要素Ｖによる画素照度サンプリングを終了し、ステップＳ５〜Ｓ８の循環検出処理へ移行する。
【００２５】
図８は、循環検出処理における法線検出処理を示す説明図である。すなわち、この法線検出処理（ステップＳ５）においては、図８（i）に示すように、ワーク画像Ｐ０上で停止した走査要素Ｖの位置座標を法線検出点Ｂ１として、この法線検出点Ｂ１を通る任意の直線Ｃを中心とする所定幅でワーク画像ΔＰ０を切り取って、これを直線Ｃで折り返し、図８（ii）に示すように、折り返された画像ΔＰ０が互いに重なり合わなければ、直線Ｃの角度を変更して再び折り返し、図８（iii）に示すように、折り返された画像ΔＰ０が互いに重なり合った場合に、このときの直線Ｃを外周輪郭に対する法線Ｎとする。この法線Ｎのデータは、図１に示す法線メモリ８に格納し、処理は次の中心検出ステップへ移行する。
【００２６】
なお、ワーク画像Ｐ０は、経路Ｌ上での走査要素Ｖによる走査が終了した後で、走査データ列によって認識することもできる。したがってこのような場合は、走査要素Ｖはワーク画像Ｐ０上で停止しないから、法線検出点Ｂ１は、ワーク画像Ｐ０内の経路Ｌ上における任意の点を選択する。
【００２７】
図９は、中心検出処理を示す説明図、図１０は、この中心検出過程での照度プロファイルの処理を示す説明図である。すなわち、中心検出（ステップＳ６）においては、まず図９に示す法線Ｎ上に沿って、ワーク画像Ｐ０の画素照度を所定のサンプリング間隔でサンプリングすることによって、図１０（i）に示すような照度プロファイルを生成する。図３で説明したように、検査対象のワークＷは、断面形状が幅方向中心を対称軸とする対称形状であるため、照度プロファイルも、基本的に、法線Ｎの中心点に対してほぼ対称となるような画素照度変化を示す。
【００２８】
次に、図９に示す法線Ｎ上の任意の点Ｄで照度プロファイルを折り返して重ね合わせる。折り返し点Ｄがワーク画像Ｐ０の幅の中心点でない場合は、図１０（ii）に示すように、重ね合わされた照度プロファイルの差が大きくなるので、図１０（iii）に示すように、重ね合わされた照度プロファイルの差が最小となる折り返し点Ｄを検出し、これを中心点Ｅとして、その座標データを図１に示す中心座標メモリ９に格納する。
【００２９】
なお、中心点Ｅは、請求項１に記載された「法線上の特定の点」に相当するものであるが、この「特定の点」は、必ずしも中心点Ｅでなくても良く、例えば検査対象のワークＷの断面形状が、幅方向中心を対称軸とする対称形状ではない場合、すなわち法線Ｎの中心点に対してほぼ対称となるような照度プロファイルが得られないようなものである場合は、法線Ｎとワーク画像Ｐ０の輪郭線あるいは連続模様との交点等を用いることができる。
【００３０】
図１１、次候補決定処理を示す説明図である。すなわち、上述のようにして法線Ｎ上の中心点Ｅ（特定の点）が検出されたら、図１１に示すように、法線Ｎに対して垂直で中心点Ｅを通る直線（中心線）Ｆ上で、中心点Ｅから所定距離だけ離れた点を次候補点Ｂｎとする（ステップＳ７）。
【００３１】
次に、画面上における次候補点Ｂｎの位置座標が検出され（ステップＳ８）、この次候補点Ｂｎが、循環検出処理の始点に到達していないことが判定された場合、言い換えればステップＳ５〜Ｓ８の循環検出処理がワークＷにおける外周部１０１〜１０４を一周していないことが判定された場合は（ステップＳ８＝ＮＯ）、処理はステップＳ５にリターンし、点Ｂｎを通る法線検出処理及びその中心点の検出処理が繰り返され、すなわちステップＳ５〜Ｓ８の循環検出処理が行われる。また、次候補点Ｂｎが循環検出処理の始点に到達したことが判定された場合、言い換えればステップＳ５〜Ｓ８の循環検出処理がワークＷにおける外周部１０１〜１０４を一周したことが判定された場合は（ステップＳ８＝ＹＥＳ）、処理は次の画像直線化ステップへ移行する。
【００３２】
図１２は、直線化処理されたワーク画像Ｐ１を示すものである。すなわち、先に説明した図６のように曲がりくねったワーク画像Ｐ０は、ステップＳ５〜Ｓ７の処理によって繰り返し得られた中心点Ｅ及び中心線Ｆによって、図１２のように直線化し（ステップＳ９）、図１に示す外周部直線化画像メモリ１０に格納する。
【００３３】
ここで、上述の直線化処理によって直線化されたワーク画像Ｐ１は、図１３（ii）に示すように、図１３（i）に示すワークＷの外周部１０１〜１０４を展開した画像となり、ワークＷの内周橋絡部１０５，１０６の画像の一部は含まれない。
【００３４】
したがって、次ステップＳ１０では、図１３に示す直線化画像Ｐ１から、外周部１０１，１０２と内周橋絡部１０５とのループ分岐部１０７、外周部１０２，１０３と内周橋絡部１０６との結合（分岐）部であるループ分岐部１０８、外周部１０３，１０４と内周橋絡部１０６との結合（分岐）部であるループ分岐部１０９、及び外周部１０４，１０１と内周橋絡部１０５との結合（分岐）部であるループ分岐部１１０の付け根１０７ａ，１０７ｂ、・・・１１０ａ，１１０ｂの座標を取得し、取得した座標データを分岐座標メモリ１１に格納し、ステップＳ１１〜Ｓ１４の循環検出処理へ移行する。
【００３５】
ステップＳ１１〜Ｓ１４の循環検出処理も、基本的にはステップＳ５〜Ｓ８と同様のものであって、すなわち、まず分岐座標メモリ１１から例えばワークＷにおけるループ分岐部１０７の付け根１０７ａの座標を読み出し、この座標を始点として、先に説明した図８と同様の処理によって、ループＬａの内周輪郭に対する法線を検出し（ステップＳ１１）、次に、先に説明した図９及び図１０と同様の処理によって、法線上の中心点（特定点）を検出し（ステップＳ１２）、次に、先に説明した図１１と同様にして、法線に対して垂直で中心点（特定点）を通る直線上で、中心点（特定点）から所定距離だけ離れた点を次候補点とし（ステップＳ１３）、さらに、次候補点の位置座標が循環検出処理の始点（例えば付け根１０７ａの座標）に到達したかを判定し（ステップＳ１４）、この次候補点が、循環検出処理の始点に到達していないことが判定された場合、言い換えればワークＷにおける外周部１０１及び内周橋絡部１０５からなるループＬａを一周していないことが判定された場合は（ステップＳ１４＝ＮＯ）、処理はステップＳ１１にリターンし、次候補点を通る法線検出処理及びその中心点の検出処理が繰り返され、すなわちステップＳ１１〜Ｓ１４の循環検出処理が行われる。また、次候補点が循環検出処理の始点に到達したことが判定された場合、言い換えればワークＷにおける外周部１０１及び内周橋絡部１０５からなるループＬａを一周したことが判定された場合は（ステップＳ１４＝ＹＥＳ）、処理は次のループ画像直線化ステップへ移行する。
【００３６】
すなわち、図１４（i）に示すように閉じたループＬａの画像は、ステップＳ１１〜Ｓ１３の処理において繰り返し得られた中心点（特定点）及びこれを通る直線によって、図１４（ii）に示すような直線化画像ＰＬａとし（ステップＳ１５）、図１に示すループ直線化画像メモリ１２に格納する。
【００３７】
次に、ステップＳ１６では未処理のループがないかを判定し、ある場合は（ステップＳ１６＝ＮＯ）、次のループ（例えば中間のループＬｂ）について、ステップＳ１１〜Ｓ１４の循環検出処理による画像直線化を行う。また、未処理のループがない場合、すなわち図１５の（ii）に示すように、すべてのループＬａ〜Ｌｃの画像の直線化が完了した場合は（ステップＳ１６＝ＹＥＳ）、各ループ直線化画像ＰＬａ〜ＰＬｃについて、欠陥部の検出を行う（ステップＳ１７）。
【００３８】
ここで、図１６に示すループ直線化画像ＰＬ１（ＰＬａ〜ＰＬｃ）には、ワークＷの表面性状による画素照度のムラや、図１に示す照明装置２による照明のムラや、ワークＷの表面に付着した塵埃に起因するノイズ画像Ｒ等、種々のノイズが含まれているため、誤判定を防止して欠陥部の画像Ｑの判定の信頼性を高めるには、これらのノイズの除去が重要である。
【００３９】
図１７は、ノイズの除去処理を含む欠陥検出ステップＳ１７の詳細な処理の流れを示すフローチャートである。すなわち、まず、上述のループ画像直線化処理（ステップＳ１５）によって直線化された各ループの直線化画像ＰＬ１を入力し（ステップＳ１０１）、このワーク画像ＰＬ１を、図１に示すＭｅｄｉａｎフィルタを用いて平滑化する（ステップＳ１０２）。
【００４０】
図１８は、図１７における平滑化処理（ステップＳ１０２）の詳細な処理の流れを示すフローチャート、図１９及び図２０は、平滑化のためのフィルタリング処理を模式的に示す説明図である。
【００４１】
図１９（i）において、ＰＸ１，ＰＸ２，ＰＸ３，・・・は入力されたループ直線化画像ＰＬ１を構成する画素であり、各画素ＰＸ１，ＰＸ２，ＰＸ３，・・・に表示された数字は、照度（濃淡）レベルを示している。Ｍｅｄｉａｎフィルタ１４によるフィルタリング（平滑化）においては、まず入力画像ＰＬ１における連続した複数の画素を指定する窓Ｍが設定され、この窓Ｍ内の画素（図示の例では画素ＰＸ１〜ＰＸ５）を、図１９（ii）のように照度（濃淡）レベル順に並べ替え、その中央値の画素（図示の例では照度“３”の画素ＰＸ１）を検索して、図１９（iii）のように、画像ＰＬ２へ出力する（ステップＳ２０１）。
【００４２】
次に、図２０（i）に示すように、ループ直線化画像ＰＬ１において窓Ｍを１画素分だけ移動させ、移動によってこの窓Ｍから出される画素ＰＸ１と、新しく窓Ｍ内に入る画素ＰＸ６を調べ（ステップＳ２０２）、図１９（ii）に示すように照度（濃淡）レベル順に並べ替えられた画素のうち、窓Ｍの移動によって出て行く画素ＰＸ１を、図２０（ii）に示すように、新しく窓Ｍ内に入る画素ＰＸ６と入れ替える（ステップＳ２０３）。
【００４３】
そして、画素ＰＸ１と入れ替わった画素ＰＸ６の照度（濃淡）レベルを、隣接する画素と比較し、図２０（iii）に示すように、照度（濃淡）レベル順となるように並べ替える（ステップＳ２０４）。詳しくは、窓Ｍ内における新入画素の照度が、その低レベル側に隣接する画素の照度より低レベルの場合は（ステップＳ２０４ａ＝ＹＥＳ）、低レベル側に隣接する画素を新入画素と入れ替え（ステップＳ２０４ｂ）、逆に新入画素の照度がそれより高レベル側に隣接する画素の照度より高レベルの場合は（ステップＳ２０４ｃ＝ＹＥＳ）、高レベル側に隣接する画素を新入画素と入れ替える（ステップＳ２０４ｄ）といった循環処理を行う。
【００４４】
次に、図２０（iv）に示すように、その中央値の画素（図示の例では照度“４”の画素ＰＸ３）を検索して、画像ＰＬ２へ出力するといった、ステップＳ２０１と同様の処理を行う（ステップＳ２０５）。
【００４５】
次に、窓部Ｍがループ直線化画像ＰＬ１のフィルタリング処理の始点にあるかどうかを判定し（ステップＳ２０６）、始点にある場合は（ステップＳ２０６＝ＹＥＳ）、フィルタリング処理を終了し、端部に未到達の場合は（ステップＳ２０６＝ＮＯ）、処理はステップＳ２０２へリターンする。そしてこのような循環処理によって、図２０（v）のように、画素照度の変化の緩やかな画像ＰＬ２が再構築されて行くのである。
【００４６】
図２１は、上述したＭｅｄｉａｎフィルタ１４による平滑化処理で得られる平滑化画像を示すものである。すなわちこの平滑化処理画像ＰＬ２は、空間周波数成分が低いものとなるので、ワークＷの表面性状による画素照度のムラ、照明のムラなど、照度が緩やかに変化するノイズは残るが、ワークＷの表面に付着した塵埃等による、照度が急激に変化する細かいノイズは除去されている。
【００４７】
説明を図１７に戻すと、上述したＭｅｄｉａｎフィルタ１４による平滑化処理後は、入力されたループ直線化画像ＰＬ１（図１６）から欠陥部の画像Ｑを抽出するために、このループ直線化画像ＰＬ１から図２１に示す平滑化処理画像ＰＬ２を減算（ＰＬ１−ＰＬ２＝ＰＬ３）する画像差分処理を行う（ステップＳ１０３）。
【００４８】
図２２は、この画像差分処理（ＰＬ１−ＰＬ２＝ＰＬ３）によって得られる画像ＰＬ３を示すものである。すなわちこの画像ＰＬ３は、ワークＷの表面性状による画素照度のムラや照明ムラによる画素照度のムラなど、照度が緩やかに変化するノイズが除去され、ワークＷの表面に付着した塵埃等による、照度が急激に変化するノイズ画像Ｒや、欠陥部の画像Ｑが抽出されたものである。
【００４９】
次に、画像ＰＬ３の照度データの二値化を行うことによって（ステップＳ１０４）、周辺との照度差が所定のしきい値以上となる特徴部分のみを抽出した後、抽出された特徴部分の周辺長を計測し、計測された長さが所定のしきい値未満のものは、ノイズとしてこれを除去する処理を行う（ステップＳ１０５）。図２３は、このノイズ除去処理によって得られる画像ＰＬ４を示すもので、この画像ＰＬ４には、欠陥部の画像Ｑが残っている。
【００５０】
次に、この画像ＰＬ４における欠陥部の画像Ｑの特徴量、すなわち例えば画像Ｑの画素数（面積）、長さ、周辺長、照度などを計測し（ステップＳ１０６）、良否の判定を行う（ステップＳ１０７）。そして、これらの計測値のうちいずれかが、予め設定されたしきい値以上であった場合は（ステップＳ１０７＝ＮＧ）、図１に示す検査ステージ１上のワークＷが不良品として排出される（ステップＳ１０８）。
【００５１】
また、これらの計測値が、いずれも予め設定されたしきい値未満であれば（ステップＳ１０７＝Ｇ）、不良が存在しなかったものと判定され（図５のステップＳ１７＝ＮＯ）、処理は図４のステップＳ１へリターンして、入力画像メモリ５から次の画像データの読み出しが行われる。
【００５２】
したがって、上述した実施の形態に係るワーク欠陥検査方法によれば、検査対象のワークＷが、自らの重量で変形しやすい不定形の、しかも複数のループＬａ〜Ｌｃが結合した複雑な形状のものであっても、図５に示す処理ステップＳ１０〜Ｓ１６において各ループＬａ〜Ｌｃの画像を展開して直線化するため、ワーク画像のすべての領域について欠陥検査を行うことができる。
【符号の説明】
【００５３】
３  カメラ（撮像装置）
４  画像処理装置
６  プログラムメモリ
７  ＣＰＵ（演算処理装置）
Ｗ  ワーク
Ｌａ〜Ｌｃ  ループ
【図１】
0006647078.tif 000002
【図２】
0006647078.tif 000003
【図３】
0006647078.tif 000004
【図４】
0006647078.tif 000005
【図５】
0006647078.tif 000006
【図６】
0006647078.tif 000007
【図７】
0006647078.tif 000008
【図８】
0006647078.tif 000009
【図９】
0006647078.tif 000010
【図１０】
0006647078.tif 000011
【図１１】
0006647078.tif 000012
【図１２】
0006647078.tif 000013
【図１３】
0006647078.tif 000014
【図１４】
0006647078.tif 000015
【図１５】
0006647078.tif 000016
【図１６】
0006647078.tif 000017
【図１７】
0006647078.tif 000018
【図１８】
0006647078.tif 000019
【図１９】
0006647078.tif 000020
【図２０】
0006647078.tif 000021
【図２１】
0006647078.tif 000022
【図２２】
0006647078.tif 000023
【図２３】
0006647078.tif 000024
【図２４】
0006647078.tif 000025