(57)【要約】【課題】エッジ画像に含まれるエッジの位置関係を用いてエッジを連結することにより、クラックに相当するエッジをノイズから精度よく分離する。【解決手段】エッジ抽出手段１１は、検査対象物Ｗを撮像した濃淡画像からエッジを抽出し、候補領域抽出手段１２は、エッジ抽出手段１１により抽出したエッジ上の画素のうち規定の条件を満たす画素群をクラック候補領域として抽出する。クラック候補領域が複数抽出された場合には、ラベリング手段１３が、各クラック候補領域にそれぞれラベルを付与し、クラスタリング手段１４が、着目する各一対のクラック候補領域の位置関係に基づいて両クラック候補領域が１つのクラックに属すると判断すると両クラック候補領域を連結する。判定手段１５は、連結されたクラック候補領域の長さ寸法が規定の基準値よりも大きいときに検査対象物にクラックが生じていると判定する。【選択図】図１
2011058939.tif 000002
【特許請求の範囲】
【請求項１】
検査対象物を撮像した濃淡画像からエッジを抽出するエッジ抽出手段と、エッジ抽出手段により抽出したエッジ上の画素のうち規定の条件を満たす画素群をクラック候補領域として抽出する候補領域抽出手段と、クラック候補領域が複数抽出された場合に各クラック候補領域にそれぞれラベルを付与するラベリング手段と、着目する各一対のクラック候補領域について重心間の距離が規定した第１の閾値以下であり、かつ互いに近いほうの端点間の距離が規定した第２の閾値以下であるという規則が満たされたときに両クラック候補領域を連結するクラスタリング手段と、連結されたクラック候補領域の長さ寸法を規定の基準値と比較し長さ寸法が基準値よりも大きいときに検査対象物にクラックが生じていると判定する判定手段とを備えることを特徴とする外観検査装置。
【請求項２】
前記濃淡画像において一方の座標軸をクラックの伸びる方向に規定した直交座標系を設定し、前記クラスタリング手段は、他方の座標軸の方向において重心が隣接する各一対のクラック候補領域に着目し、両クラック候補領域が前記規則を満たすときに両クラック候補領域を連結することを特徴とする請求項１記載の外観検査装置。
【請求項３】
前記クラスタリング手段は、前記他方の座標軸の方向において重心が隣接する一対のクラック候補領域について互いに近いほうの端点間の距離が前記第２の閾値を超えているときには、前記一対のクラック候補領域のうち重心が原点に近いほうのクラック候補領域に対する重心間の距離が前記第１の閾値以下である他のクラック候補領域を重心間の距離が小さいほうから順に選択し、重心が原点に近いほうのクラック候補領域と選択したクラック候補領域とが前記規則を満たすときに両クラック候補領域を連結することを特徴とする請求項２記載の外観検査装置。
【請求項４】
前記クラスタリング手段は、一対のクラック候補領域を連結する際には、重心が原点から遠いほうのクラック候補領域の主軸の延長線上に、重心が原点から近いほうのクラック候補領域を投影することにより両クラック候補領域を結合し、結合後のクラック候補領域には重心から原点が遠いほうのクラック候補領域のラベルを付与して１個のクラック候補領域として扱うことを特徴とする請求項２又は３記載の外観検査装置。
【請求項５】
前記クラスタリング手段は、着目する各一対のクラック候補領域について前記他方の座標軸の方向における重心間の距離が前記第１の閾値以下である場合に、前記一方の座標軸の方向における両クラック候補領域の端点の座標を用いて前記一方の座標軸の方向における両クラック候補領域の重複の有無を判別し、さらに、重複していない場合は、前記一方の座標軸の方向における互いに近いほうの端点間の距離が前記第２の閾値以下であれば両クラック候補領域を連結し、重複している場合は、重複していない部位があれば両クラック候補領域を連結することを特徴とする請求項２〜４のいずれか１項に記載の外観検査装置。
【請求項６】
前記候補領域抽出手段は、前記エッジ抽出手段により抽出したエッジ上の画素に関して着目する測度を計測し、計測値が規定の範囲であることを前記条件としてクラック候補領域を抽出することを特徴とする請求項１〜５のいずれか１項に記載の外観検査装置。
【請求項７】
検査対象物を撮像した濃淡画像からエッジを抽出した後、エッジ抽出手段により抽出したエッジ上の画素のうち規定の条件を満たす画素群をクラック候補領域として抽出し、クラック候補領域が複数抽出された場合には、各クラック候補領域にそれぞれラベルを付与し、さらに、着目する各一対のクラック候補領域について重心間の距離が規定した第１の閾値以下であり、かつ互いに近いほうの端点間の距離が規定した第２の閾値以下であるときに両クラック候補領域を連結し、連結されたクラック候補領域の長さ寸法を規定の基準値と比較し長さ寸法が基準値よりも大きいときに検査対象物にクラックが生じていると判定することを特徴とする外観検査方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検査対象物を撮像した画像を用いることにより検査対象物に生じたクラックを検出する外観検査装置、外観検査方法に関するものである。
【背景技術】
【０００２】
従来から、検査対象物を撮像した画像を用いた外観検査により検査対象物に生じたクラックを検出する技術が提案されている。
【０００３】
たとえば、特許文献１には、検査対象物の表面の傷やクラックのうち、直線状の傷やクラックを検出する技術が示されている。特許文献１に記載の技術では、検査対象物の濃淡画像を用いてエッジを強調したエッジ画像を生成し、エッジ画像に含まれるエッジにラベリングを行った後、エッジの接線方向（実際にはエッジ上の画素の濃度勾配の方向）が所定角度範囲内である画素群を抽出し、この画素群を通る傷候補直線を設定している。傷候補直線は角度範囲毎に求められ、ラベルが付与されたエッジ上の画素から各傷候補直線までの距離を求めるとともに、評価値を用いてエッジが直線状か否かが判定される。
【０００４】
また、特許文献２には、クラックの発生場所とクラックの延長方向との関係に着目することにより、クラックをごみのような異物と識別して抽出する技術が記載されている。特許文献２に記載の技術では、検査対象物を撮像した濃淡画像からエッジ画像を生成し、クラックが生じる可能性のある検査スタートポイントを設定するとともに、検査スタートポイントに合わせて幅の狭い検出エリアを設定し、検査スタートポイントの周りで検出エリアを回転走査している。また、検出エリアの走査の間に、検出エリアに含まれるエッジ上の画素から得られる欠陥候補点の総数などが評価され、クラックと異物とが識別される。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−５８２５３号公報
【特許文献２】特開２００７−１４７４０７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上述した特許文献１、２に記載の技術は、いずれも検査対象物の濃淡画像からエッジ画像を生成し、エッジ画像に含まれる画素を規定の規則で評価することによって、クラックを識別している。
【０００７】
ところで、エッジ画像を生成するにあたっては、図８に示すように、濃淡画像を適宜の閾値で二値化した二値画像からエッジを抽出する技術と、図９に示すように、濃淡画像を微分した微分画像に対して適宜の閾値を適用して微分画像を二値化する技術とが多く採用されている。図８と図９とは同一の検査対象物から得られた画像を示している。
【０００８】
しかしながら、成形品では背景とクラックとの濃度差が小さい場合があるから（たとえば、２５６階調の濃淡画像において濃度差が２０以下）、このような低コントラストの検査対象物について、二値画像を用いてエッジを抽出する技術では濃淡画像に対する閾値の選択が難しくなる。とくに検査対象物の濃度むらが大きい場合には、クラックと濃度むらとを識別するように閾値を設定することは困難である。
【０００９】
一方、微分画像を用いてエッジを抽出する技術であっても、低コントラストであることにより、エッジ画像において１つのクラックに対応する画素群が不連続になる可能性が高くなる。１つのクラックに属するエッジが分断されるのを防止するには、微分値に対する閾値を小さくすることが考えられるが、閾値を小さくするとクラック以外のノイズ成分が増加し、クラックの評価が困難になる。
【００１０】
本発明は上記事由に鑑みて為されたものであり、その目的は、エッジ画像に含まれるエッジの位置関係を用いてエッジを連結することにより、クラックに相当するエッジをノイズから精度よく分離することを可能にした外観検査装置、外観検査方法を提供することにある。
【課題を解決するための手段】
【００１１】
本発明は、上記目的を達成するために、検査対象物を撮像した濃淡画像からエッジを抽出するエッジ抽出手段と、エッジ抽出手段により抽出したエッジ上の画素のうち規定の条件を満たす画素群をクラック候補領域として抽出する候補領域抽出手段と、クラック候補領域が複数抽出された場合に各クラック候補領域にそれぞれラベルを付与するラベリング手段と、着目する各一対のクラック候補領域について重心間の距離が規定した第１の閾値以下であり、かつ互いに近いほうの端点間の距離が規定した第２の閾値以下であるという規則が満たされたときに両クラック候補領域を連結するクラスタリング手段と、連結されたクラック候補領域の長さ寸法を規定の基準値と比較し長さ寸法が基準値よりも大きいときに検査対象物にクラックが生じていると判定する判定手段とを備えることを特徴としている。
【００１２】
この場合、濃淡画像において一方の座標軸をクラックの伸びる方向に規定した直交座標系を設定し、クラスタリング手段において、他方の座標軸の方向において重心が隣接する各一対のクラック候補領域に着目し、両クラック候補領域が前記規則を満たすときに両クラック候補領域を連結する構成を採用することができる。
【００１３】
さらに、クラスタリング手段は、前記他方の座標軸の方向において重心が隣接する一対のクラック候補領域について互いに近いほうの端点間の距離が前記第２の閾値を超えているときには、前記一対のクラック候補領域のうち重心が原点に近いほうのクラック候補領域に対する重心間の距離が前記第１の閾値以下である他のクラック候補領域を重心間の距離が小さいほうから順に選択し、重心が原点に近いほうのクラック候補領域と選択したクラック候補領域とが前記規則を満たすときに両クラック候補領域を連結する構成を採用するのが望ましい。
【００１４】
また、クラスタリング手段は、一対のクラック候補領域を連結する際に、重心が原点から遠いほうのクラック候補領域の主軸の延長線上に、重心が原点から近いほうのクラック候補領域を投影することにより両クラック候補領域を結合し、結合後のクラック候補領域には重心から原点が遠いほうのクラック候補領域のラベルを付与して１個のクラック候補領域として扱うのが望ましい。
【００１５】
さらにまた、クラスタリング手段は、着目する各一対のクラック候補領域について前記他方の座標軸の方向における重心間の距離が前記第１の閾値以下である場合に、前記一方の座標軸の方向における両クラック候補領域の端点の座標を用いて前記一方の座標軸の方向における両クラック候補領域の重複の有無を判別し、さらに、重複していない場合は、前記一方の座標軸の方向における互いに近いほうの端点間の距離が前記第２の閾値以下であれば両クラック候補領域を連結し、重複している場合は、重複していない部位があれば両クラック候補領域を連結するのが望ましい。
【００１６】
候補領域抽出手段は、エッジ抽出手段により抽出したエッジ上の画素に関して着目する測度を計測し、計測値が規定の範囲であることを前記条件としてクラック候補領域を抽出するのが望ましい。
【００１７】
本発明では、外観検査の手順としては、検査対象物を撮像した濃淡画像からエッジを抽出した後、エッジ抽出手段により抽出したエッジ上の画素のうち規定の条件を満たす画素群をクラック候補領域として抽出し、クラック候補領域が複数抽出された場合には、各クラック候補領域にそれぞれラベルを付与し、さらに、着目する各一対のクラック候補領域について重心間の距離が規定した第１の閾値以下であり、かつ互いに近いほうの端点間の距離が規定した第２の閾値以下であるときに両クラック候補領域を連結し、連結されたクラック候補領域の長さ寸法を規定の基準値と比較し長さ寸法が基準値よりも大きいときに検査対象物にクラックが生じていると判定する方法を採用している。
【発明の効果】
【００１８】
本発明の構成によれば、濃淡画像から抽出したエッジのうちクラック候補領域として抽出した画素群について、複数個のクラック候補領域が抽出された場合には、着目する各一対のクラック候補領域の位置関係が規定の規則を満たすときに連結し、連結後のクラック候補領域の長さ寸法の評価によりクラックか否かを判定するから、濃淡画像に含まれるクラックの部位が低コントラストであって、１つのクラックに対応すると考えられるクラック候補領域が分断されている場合でも、クラック候補領域の位置関係を用いることによって１つのクラックに属するか否かを判定することができる。その結果、クラック候補領域を抽出する際にノイズを排除できる割合が高くなって、クラックに相当するエッジをノイズから精度よく分離することが可能になる。すなわち、クラックと背景との濃淡差が少ない低コントラストの濃淡画像であってもクラックの有無を精度よく判定することが可能になる。
【００１９】
座標軸の方向において重心が隣接する各一対のクラック候補領域について規則の成立をもって両クラック候補領域を連結する構成では、各クラック候補領域の重心位置を整列させ、整列順で隣接している各一対のクラック候補領域の位置関係を評価すればよいから、手順が単純であり処理負荷の増加を抑制することができる。
【００２０】
座標軸の方向において重心が隣接するクラック候補領域が連結できない場合に、他のクラック候補領域について連結の可能性を判定する構成を採用すると、連結可能なクラック候補領域の個数が増加し、１つのクラックに属するクラック候補領域であるにもかかわらず分断されたままで残されるクラック候補領域の発生を抑制することができる。
【００２１】
さらに、クラック候補領域を連結する際に、重心が原点に近いほうのクラック候補領域を重心が原点から遠いほうのクラック候補領域に連結する構成を採用すれば、連結後のクラック候補領域よりも重心が原点に近いクラック候補領域であっても連結後のクラック候補領域に結合される可能性があり、結果的に１つのクラックに属するクラック候補領域を漏れなく連結することが可能になる。
【００２２】
さらにまた、着目する一対のクラック候補領域の連結の条件として、一方の座標軸の方向（クラック候補領域の長手方向）における重複の有無を判別する構成では、クラック候補領域の位置関係から１つのクラックに属する関係ではないと判断されるときに、クラック候補領域を接続しないから、さらに正確にクラック候補領域を連結することが可能になる。
【００２３】
クラック候補領域を抽出するにあたって、各エッジ上の画素について着目する測度の計測値を評価すれば、クラック候補領域ではないノイズを排除できる可能性が高くなり、連結可能か否かを評価するために着目するクラック候補領域の個数を低減させることができるから、それだけ処理負荷が軽減されることになる。
【図面の簡単な説明】
【００２４】
【図１】実施形態を示すブロック図である。
【図２】同上の処理手順を示す動作説明図である。
【図３】同上に用いる正方領域を説明する図である。
【図４】同上の動作例を説明する図である。
【図５】同上におけるクラック候補領域を説明する図である。
【図６】同上の要部の動作説明図である。
【図７】同上の要部の処理手順を示す動作説明図である。
【図８】二値画像の例を示す図である。
【図９】微分画像を二値化した画像の例を示す図である。
【発明を実施するための形態】
【００２５】
（実施形態１）
本実施形態は、図１に示すように、ＴＶカメラ（撮像装置）２により撮像した検査対象物Ｗの濃淡画像に基づいて検査対象物Ｗにおけるクラックの有無を検出する装置であり、検査対象物Ｗとしては合成樹脂成形品を想定している。とくに、電子部品のパッケージのように、端子となる金属板と同時一体に成形した合成樹脂成形品では、クラックが生じる部位が特定部位（合成樹脂成形品における金属板との接触部位）であり、またクラックが延長される方向も特定方向（合成樹脂成形品から金属板が突出している方向）になる可能性が高くなる。
【００２６】
照明条件は適宜に設定すればよいが、クラックを検出するには、検査対象物Ｗの正面に撮像装置２を配置し、斜方照明を用いてクラックの部位に影が生じるようにするのが望ましい。
【００２７】
本発明では、検査対象物Ｗに形成されるクラックの上記特性に着目することにより、撮像装置２で撮像した検査対象物Ｗの濃淡画像に対して画像処理装置１により画像処理を施し、検査対象物Ｗにおけるクラックの有無を検出する。撮像装置２は、検査対象物Ｗの細部を拡大して撮像するように図示しない光学系を備えている。
【００２８】
画像処理装置１は、コンピュータを用いて構成され以下に説明する処理を実現する。すなわち、画像処理装置１は、クラックの有無を検出するために、図２に示すように、撮像装置２により撮像した濃淡画像からエッジを抽出し（Ｓ１）、抽出したエッジ上の画素のうち規定の条件を満たす画素群をクラック候補領域として抽出する（Ｓ２）。さらに、抽出したクラック候補領域にラベルを付与するラベリングを行い（Ｓ３）、ラベルを付与したクラック候補領域について規定の規則を用いてクラスタリング（グループ分け）を行う（Ｓ４）。その後、クラスタリングにより分けられたグループごとにクラック候補領域についてクラックか否かを定量的に判断するのである（Ｓ５）。
【００２９】
画像処理装置１は、エッジの抽出を行うエッジ抽出手段１１を備える。エッジ抽出手段１１では、濃淡画像の微分処理またはエッジ強調処理を用いて周知のエッジ抽出処理を行う。本実施形態では、図３に示す３×３画素の正方領域ごとの画素値（濃度値）Ｐ１〜Ｐ８を用いて正方領域の中心画素（符号Ｐ０の位置の画素）の微分値および方向値を求める微分処理を行い、微分値が閾値を超える領域を細線化するものとする。細線化は、領域の中心線が１画素幅で表されるように領域内の一部の画素を除去することを意味する。
【００３０】
本実施形態では、濃淡画像において左上隅を原点とし、水平方向の右側をｘ方向の正の向き、垂直方向の下向きをｙ方向の正の向きに定めた直交座標系を規定している。また、微分値Ｄおよび方向値θは次式により規定している。
Ｄ＝（ΔＨ２＋ΔＶ２）１／２
θ＝ｔａｎ−１（ΔＶ／ΔＨ）＋９０°
ただし、ΔＨ＝（Ｐ４＋Ｐ５＋Ｐ６）−（Ｐ２＋Ｐ１＋Ｐ８）、ΔＶ＝（Ｐ２＋Ｐ３＋Ｐ４）−（Ｐ６＋Ｐ７＋Ｐ８）である。
方向値θは、濃度勾配に直交する方向を表し、エッジの接線方向に相当する。方向値θは扱いやすくなるように、４５°刻みで１〜８の値を持つ方向コードに置き換える。具体的には、方向値θが−２２．５°以上２２．５°未満であるときに方向コードを１、方向値θが２２．５°以上４５°未満であるときに方向コードを２とするようにして、方向値θに対応付けて１〜８の方向コードを付与する。
【００３１】
エッジ抽出手段１１は、細線化された画素列（エッジ断片）に他のエッジ断片の接続を試みるエッジ延長処理を行う。エッジ延長処理では、エッジ断片の端点の方向値θ０と、当該端点に隣接する画素Ｐｊ（ｊ＝１，２，…，８）の微分値Ｄｊおよび方向値θｊとを用い、微分値Ｄｉが規定の下限値以上であり、かつ下式で表される評価関数Ｆｊが最大となる画素Ｐｉが存在すれば、当該画素Ｐｉをエッジ断片に接続する。
Ｆｊ＝Ｄｊ・ｃｏｓ（θｊ−θ０）・ｃｏｓ｛（ｊ−１）４／π−θ０｝
この評価値Ｆｊは、微分値Ｄｊが大きく、かつ、エッジ断片の端点と当該端点に隣接する画素Ｐｊとの方向値の差（＝θｊ−θ０）が小さく、しかも当該端点から隣接する画素Ｐｊを結ぶ方向と当該端点の方向値θ０の方向との差（＝（ｊ−１）４／π−θ０）が小さいほど大きくなる。したがって、エッジ断片の端点に隣接する画素Ｐｊについて、評価値Ｆｊが最大になる画素Ｐｊはエッジ上の画素とみなすことができる。
【００３２】
上述したエッジ延長処理は、エッジ断片の端点に隣接する画素Ｐｊの微分値Ｄｊが規定の下限値未満になるか、他のエッジ断片に連結されるまで継続される。したがって、微分値Ｄが閾値を超える領域を抽出したときに途切れた部分を再抽出し、連続したエッジを抽出することが可能になる。
【００３３】
なお、エッジ延長処理は、上述の評価関数Ｆｊを用いるほか、同種の他の評価関数を規定してもよく、また評価関数を用いずに微分値が下限値以上、かつ方向コードが規定の関係を満たすという条件でエッジ断片を延長してもよい。要するに、エッジ断片の端点と当該端点に隣接する画素とについてエッジの性質に関する類似度を評価し、類似度が高いときには当該画素をエッジ断片に結合するのである。
【００３４】
上述のようにエッジ延長処理を行うことにより抽出したエッジがクラックに対応していれば、当該エッジはクラックを略全周に亘って囲んでいると考えられる。すなわち、クラックに対応するエッジは閉曲線を形成する。また、クラックは細長形状であるから、エッジで囲まれた領域について着目する測度として、長手方向の軸線（主軸という）の方向、当該領域に含まれる画素数（面積という）、当該領域を各座標軸に投影した幅（射影幅という）を計測すれば、計測値が規定の範囲であることを条件として、エッジで囲まれた領域がクラックに対応する領域であると判断することができる。
【００３５】
エッジで囲まれた領域がクラックに対応するか否かを判断するために、画像処理装置１には、候補領域抽出手段１２が設けられる。候補領域抽出手段１２は、エッジ抽出手段１１により抽出したエッジ上の画素が、上述のような条件を満たすときに、当該画素群をクラック候補領域として抽出する。すなわち、候補領域抽出手段１２は、エッジに囲まれた領域について上述した測度を計測し、計測値が規定の範囲であるときに、当該領域をクラック候補領域と判断する。
【００３６】
上述したように、クラックの延長方向は特定方向であるから、以下では、クラックの延長方向が撮像装置２から出力される濃淡画像の垂直方向に沿うように、検査対象物Ｗと撮像装置２との位置関係を定めているものとする。この場合、候補領域抽出手段１２においてクラック候補領域を抽出する規則として、主軸がｙ方向に対してなす角度が比較的小さいこと、面積が比較的大きいこと、ｘ軸に対する射影幅が比較的小さいこと、ｙ軸に対する射影幅が比較的大きいことのうちの少なくとも１条件を用いることができる。もちろん、条件を多くするほど、クラック候補領域とノイズとの分離精度が高くなる。
【００３７】
ここでは、候補領域抽出手段１２において、着目するエッジについて、主軸の方向がｙ軸に対して比較的小さい所定の角度範囲であり、面積が規定した閾値以上であり、ｘ軸に対する射影幅が第１の規定幅以下かつｙ軸に対する射影幅が第２の規定幅以上であるときに、当該エッジをクラックの候補とみなす。クラック候補領域は、クラックの候補として抽出されたエッジに囲まれる領域になる。また、候補領域抽出手段１２において上述した規則を用いていることにより、抽出されたエッジからノイズの多くを分離することが可能になる。
【００３８】
上述のように候補領域抽出手段１２においてクラック候補領域を抽出すると、通常は、複数個のクラック候補領域が抽出される。とくに、濃淡画像において、クラックと背景とが低コントラストであるときには、微分を用いてエッジを抽出しても１つのクラックが複数に分断される可能性が高くなるから、クラックが１つであっても複数個のクラック候補領域が抽出されることが多い。
【００３９】
そこで、各クラック候補領域を区別するために、ラベリング手段１３により各クラック候補領域にそれぞれ異なるラベルを付与する。各クラック候補領域にラベルを付与した後には、クラスタリング手段１４において、各クラック候補領域が同一のクラックに属するか否かを規定の規則を用いて判断することにより、クラック候補領域のクラスタリングを行う。
【００４０】
クラスタリング手段１４において用いる規則は、複数個のクラック候補領域が同一のクラックに属している場合は、各クラック候補領域の重心のｘ座標の差分が小さく、しかも各クラック候補領域の長手方向の端点間の距離が小さいという関係が成立するという知見に基づいている。したがって、クラスタリング手段１４は、着目する各一対のクラック候補領域について重心のｘ座標の差分（ｘ軸方向の重心間の距離）が規定した第１の閾値以下であり、かつ互いに近いほうの端点のｙ座標の差分（ｙ軸方向の端点間の距離）が規定した第２の閾値以下である場合に、両クラック候補領域が１つのクラックに属するための必要条件が成立したと判断して両者を連結する。
【００４１】
したがって、クラック候補領域のクラスタリングを行うに際しては、各クラック候補領域について、重心の座標と長手方向の各端点の座標とを求める。クラスタリング手段１４では、各クラック候補領域を重心のｘ座標が小さい順に並べ、重心のｘ座標が小さいほうから順に、隣接する各一対のクラック候補領域が上述した必要条件を満たすか否かの判定を行う。
【００４２】
以下に図４を用いて実例で説明する。図４には６個のクラック候補領域Ｅ１〜Ｅ６を示してあり、各クラック候補領域Ｅ１〜Ｅ６の重心のｘ座標は、Ｅ１，Ｅ２，Ｅ３，Ｅ４，Ｅ５，Ｅ６の順に並んでいる。したがって、まず、クラック候補領域Ｅ１とクラック候補領域Ｅ２とに着目し、両クラック候補領域Ｅ１，Ｅ２について互いに近いほうの端点間のｙ座標の差分を求めると、両クラック候補領域Ｅ１，Ｅ２は１つのクラックに属すると判断することができる。
【００４３】
次に、クラック候補領域Ｅ２とクラック候補領域Ｅ３とに着目すると、両クラック候補領域Ｅ２，Ｅ３は、重心のｘ座標の差分が第１の閾値を超えているので、１つのクラックに属さないと判断される。この場合、端点のｙ座標については考慮しない。
【００４４】
同様にして、クラック候補領域Ｅ３とクラック候補領域Ｅ４とに着目した場合には、互いに近いほうの端点のｙ座標の差分が第２の閾値を超えているので、１つのクラックに属さないと判断される。さらに、クラック候補領域Ｅ４とクラック候補領域Ｅ５とに着目した場合には、両クラック候補領域Ｅ４，Ｅ５は１つのクラックに属すると判断され、クラック候補領域Ｅ５とクラック候補領域Ｅ６とに着目した場合には、重心のｘ座標の差分が第１の閾値を超えているから１つのクラックに属さないと判断される。
【００４５】
以上の結果をまとめると、クラック候補領域Ｅ１，Ｅ２は１つのクラックに属し、クラック候補領域Ｅ４、Ｅ５は１つのクラックに属し、他のクラック候補領域Ｅ３，Ｅ６は１つのクラックに属さない独立したクラック候補領域Ｅ３，Ｅ６と判定されることになる。
【００４６】
上述のようにして、クラスタリング手段１４では、各クラック候補領域Ｅ１〜Ｅ６のグループ分けを行った後に、グループごとに、ｙ方向においてもっとも離れた端点についてｙ座標の差分を求め、当該差分が規定の第３の閾値以上であれば、クラックとしての十分条件が満たされたと判断する。
【００４７】
要するに、クラック候補領域Ｅ１〜Ｅ６を抽出した後に、連結可能なクラック候補領域Ｅ１〜Ｅ６は連結してグループ分けを行い、判定手段１５において、各グループごとの長さ寸法を規定の基準値と比較し、判定手段１５では、長さ寸法が基準値よりも大きいときにはクラックが生じていると判定する。各グループの長さ寸法としては、当該グループに含まれるクラック候補領域における端点のｙ座標の最小値と最大値との差分を用いる。
【００４８】
ところで、各一対のクラック候補領域Ｅ１〜Ｅ６について１つのクラックに属するか否かの判定について、上述の例では両クラック候補領域Ｅ１〜Ｅ６の重心のｘ座標の差分が第１の閾値以下であり、かつ両クラック候補領域Ｅ１〜Ｅ６の互いに近いほうの端点のｙ座標の差分が第２の閾値以下であることを必要条件としているが、さらに以下のように条件を分けるのが望ましい。
すなわち、上述の動作例と同様に、クラック候補領域Ｅ１〜Ｅ６の重心のｘ座標の差分について第１の閾値と比較し、ｘ座標の差分が第１の閾値以下である一対のクラック候補領域Ｅ１〜Ｅ６を抽出する。次に、両クラック候補領域Ｅ１〜Ｅ６がｙ方向に重複する部分を有しているか否かを判定する。すなわち、各クラック候補領域Ｅ１〜Ｅ６の長手方向の両端点についてｙ座標を求め、求めたｙ座標の大小を比較する。
【００４９】
いま、図５に示すように、着目する２個のクラック候補領域Ｅａ，Ｅｂについて、重心の座標を（ｘｇａ，ｙｇａ）（ｘｇｂ，ｙｇｂ）とし、各クラック候補領域Ｅａ，Ｅｂの長手方向の端点の座標を、それぞれ（ｘｓａ，ｙｓａ）（ｘｅａ，ｙｅａ）、（ｘｓｂ，ｙｓｂ）（ｘｅｂ，ｙｅｂ）とする。ただし、ｘｇａ＜ｘｇｂ、ｙｓａ＜ｙｅａ、ｙｓｂ＜ｙｅｂとする。これらの関係から、各クラック候補領域Ｅａ，Ｅｂをｙ軸に投影した幅（射影幅という）をそれぞれｗｙａ，ｗｙｂとすれば、ｙｓａ＝ｙｇａ−ｗｙａ／２、ｙｅａ＝ｙｇａ＋ｗｙａ／２、ｙｓｂ＝ｙｇｂ−ｗｙｂ／２、ｙｅｂ＝ｙｇｂ＋ｗｙｂ／２が成立する。
【００５０】
上述した関係を用いることにより、図６に示すように、各クラック候補領域Ｅａ，Ｅｂについてｙ方向について重複する領域の有無に応じて場合分けを行い、さらに、各場合ごとに１つのクラックに属するか否かを判定する。図６に示すクラック候補領域Ｅａ，Ｅｂの位置関係において、図６（ａ）（ｂ）はｙ方向について重複する領域がない場合の例であり、図６（ｃ）（ｄ）はｙ方向について重複する領域がある場合の例である。
【００５１】
重複の有無を定量的に判定するには、まず、クラック候補領域Ｅａのｙ方向の両端点のｙ座標と、クラック候補領域Ｅｂのｙ方向の両端点のｙ座標とを比較し、クラック候補領域Ｅａの両端点のｙ座標の範囲とクラック候補領域Ｅｂの両端点のｙ座標の範囲とに重複する範囲があるか否かを判定する。両クラック候補領域Ｅａ，Ｅｂに重複する範囲が存在する場合は、以下のいずれかの関係が成立する。
（１）ｙｓｂ≦ｙｓａ≦ｙｅｂ≦ｙｅａ
（２）ｙｓａ≦ｙｓｂ≦ｙｅａ≦ｙｅｂ
（３）ｙｓａ≦ｙｓｂ、かつｙｅｂ≦ｙｅａ
（４）ｙｓｂ≦ｙｓａ、かつｙｅａ≦ｙｅｂ
クラスタリング手段１４は、（１）〜（４）のいずれの条件も成立しないときには、両クラック候補領域Ｅａ，Ｅｂは重複する範囲を有していないと判断して、互いに近いほうの端点のｙ座標の差分を第２の閾値と比較する。つまり、ｍｉｎ（ｙｓａ−ｙｅｂ，ｙｓｂ−ｙｅａ）を第２の閾値と比較する。ただし、ｍｉｎ（ａ，ｂ）はａ＜ｂならばａ、ａ＞ｂならばｂを意味する。この場合は、ｍｉｎ（ｙｓａ−ｙｅｂ，ｙｓｂ−ｙｅａ）が第２の閾値以下であれば、両クラック候補領域Ｅａ，Ｅｂを１つのクラックに属するものとして扱う。したがって、図６（ａ）の位置関係では結合し、図６（ｂ）の位置関係では結合しない。
【００５２】
一方、（１）（２）の一方が成立する場合は、図６（ｃ）の位置関係のように、両クラック候補領域Ｅａ，Ｅｂのどちらにも重複しない部位が存在するから、この場合には両クラック候補領域Ｅａ，Ｅｂを１つのクラックに属するものとして扱う。また、（３）（４）の一方が成立する場合は、図６（ｄ）の位置関係のように、両クラック候補領域Ｅａ，Ｅｂのうちの短いほうのすべての部位が長いほうに重複するから、この場合には各クラック候補領域Ｅａ，Ｅｂを個別のクラックに属するものとして扱う。
【００５３】
クラスタリング手段１４における上述の処理手順を図７にまとめて記載する。クラスタリング手段１４では、まずエッジ候補領域について重心と端点との座標を求め（Ｓ１）、重心のｘ座標の小さいほうから順に並べる（Ｓ２）。また、隣接するクラック候補領域の重心のｘ座標の差分を求める。
【００５４】
隣接する各一対のクラック候補領域について重心のｘ座標の差分を第１の閾値と比較し（Ｓ３）、第１の閾値を超えている場合には（Ｓ３：ｎｏ）、各クラック候補領域を異なるクラックに属するものとして扱う（Ｓ８）。一方、第１の閾値以下であれば（Ｓ３：ｙｅｓ）、両クラック候補領域の重複の有無を判定する（Ｓ４）。
【００５５】
両クラック候補領域が重複していなければ（Ｓ４：ｎｏ）、両クラック候補領域について互いに近いほうの端点のｙ座標の差分を第２の閾値と比較する（Ｓ５）。ステップＳ５において、差分が第２の閾値以下であれば（Ｓ５：ｙｅｓ）、両クラック候補領域は１つのクラックに属するものとして扱い（Ｓ７）、ステップＳ５において、差分が第２の閾値を超えていれば（Ｓ５：ｎｏ）、両クラック候補領域は異なるクラックに属するものとして扱う（Ｓ８）。
【００５６】
また、両クラック候補領域が重複していれば（Ｓ４：ｙｅｓ）、両クラック候補領域について上述した（１）〜（４）の条件のいずれが成立するかを判定する（Ｓ６）。ステップＳ６において、（１）（２）のいずれかの条件が成立するときには（Ｓ６：ｙｅｓ）、両クラック候補領域は１つのクラックに属するものとして扱い（Ｓ７）、ステップＳ６において、（３）（４）のいずれかの条件が成立するときには（Ｓ６：ｎｏ）、両クラック候補領域は異なるクラックに属するものとして扱う（Ｓ８）。
【００５７】
以上の処理を採用することにより、クラック候補領域Ｅａ，Ｅｂを１つのクラックに属するものとして扱うか否かを決めることができ、上述したように、１つのクラックに属するクラック候補領域の長さ寸法を規定の基準値と比較することにより、クラックか否かを判定するのである。
【００５８】
（実施形態２）
実施形態１のクラスタリング手段１４において、クラック候補領域のグループ分けを行う際に、重心のｘ座標が小さいほうから順に隣接する各一対のクラック候補領域について１つのクラックに属するか否かを判定している。この場合、図４を用いて説明した動作から明らかなように、クラック候補領域Ｅ３〜Ｅ５は１つのクラックに属すると判定するのが合理的と考えられるにもかかわらず、クラック候補領域Ｅ４，Ｅ５のみが１つのクラックに属すると判定され、クラック候補領域Ｅ３は別のクラックと判定されることになる。
【００５９】
本実施形態では、クラック候補領域Ｅ３〜Ｅ５が１つのクラックに属すると判定されるように、以下の手順によってクラック候補領域のクラスタリングを行う。クラック候補領域を１つのクラックに属すると判定する条件として、一対のクラック候補領域の重心のｘ座標の差分が規定の第１の閾値以下であることは実施形態１と同様である。
【００６０】
ただし、実施形態１では、重心のｘ座標の差分が第１の閾値以下でかつ最小である一対のクラック候補領域についてのみ端点のｙ座標の差分が第２の閾値以下か否かを判定しているが、本実施形態では、重心のｘ座標の差分が第１の閾値以下であるすべての一対のクラック候補領域の互いに近いほうの端点のｙ座標の差分が第２の閾値以下か否かを判定する点が相違する。また、１つのクラックに属すると判定された一対のクラック候補領域は連結して新たなクラック候補領域として扱う。
【００６１】
クラスタリング手段１４においてクラック候補領域を連結する手順について説明する。図４に示した例を用いるとすれば、本実施形態のクラスタリング手段１４では、まず、重心のｘ座標が１番小さいクラック候補領域Ｅ１と２番目に小さいクラック候補領域Ｅ２とについて、互いに近いほうの端点のｙ座標の差分を求め、当該差分が第２の閾値以下であるので１つのクラックに属すると判断する。
【００６２】
本実施形態では、クラスタリング手段１４により１つのクラックに属すると判断された一対のクラック候補領域Ｅ１〜Ｅ６を互いに連結して新たなクラック候補領域として扱う点に特徴がある。また、クラック候補領域Ｅ１〜Ｅ６を連結するにあたっては、重心のｘ座標が大きいほうのクラック候補領域Ｅ１〜Ｅ６の情報を更新する。つまり、ラベリングが行われた２個のクラック候補領域Ｅ１〜Ｅ６のうち、重心のｘ座標が大きいほうのクラック候補領域Ｅ１〜Ｅ６について、重心の座標および長手方向の端点の座標を更新する。
【００６３】
さらに、クラック候補領域Ｅ１〜Ｅ６の連結に際しては、重心のｘ座標が大きいほうのクラック候補領域Ｅ１〜Ｅ６の慣性主軸を延長し、さらに、延長された慣性主軸に重心のｘ座標が小さいほうのクラック候補領域Ｅ１〜Ｅ６を投影し、両クラック候補領域Ｅ１〜Ｅ６の重心の座標と端点の座標とを決定する。
【００６４】
上述の例では、クラック候補領域Ｅ２の慣性主軸の延長線にクラック候補領域Ｅ１を投影し、重心の座標と各端点の座標とを求める。求めた重心の座標および端点の座標は、クラック候補領域Ｅ２の属性として画像処理装置１に設けた記憶部（図示せず）に格納される。
【００６５】
次に、クラック候補領域Ｅ２とクラック候補領域Ｅ３とについて重心のｘ座標の差分を求める。ここでは、クラック候補領域Ｅ２とクラック候補領域Ｅ３との重心のｘ座標の差分は第１の閾値よりも大きいものとする。したがって、クラック候補領域Ｅ２，Ｅ３は結合しない。
【００６６】
クラック候補領域Ｅ３とクラック候補領域Ｅ４とについては、実施形態１と同様に、ｘ座標の差分が第１の閾値以下であるものの、互いに近いほうの端点のｙ座標が第２の閾値を超えているから連結しない。この段階で、実施形態１では、クラック候補領域Ｅ４とクラック候補領域Ｅ５とについて１つのクラックか否かの判定を行っているが、本実施形態では、クラック候補領域Ｅ３について、重心のｘ座標が第１の閾値以下である他のクラック候補領域Ｅ５があれば、当該クラック候補領域Ｅ５についても連結可能か否かを判定する。
【００６７】
つまり、クラック候補領域Ｅ３とクラック候補領域Ｅ５との互いに近い端点のｙ座標の差分が第２の閾値以下か否かを判定する。図示例では、クラック候補領域Ｅ３，Ｅ５の端点のｙ座標の差分が第２の閾値以下であるものとする。この場合、上述した規則に従ってクラック候補領域Ｅ５の慣性主軸の延長線にクラック候補領域Ｅ３を投影し、投影した情報を用いてクラック候補領域Ｅ５の情報を更新する。つまり、新たなクラック候補領域Ｅ５について、重心の座標と両端点の座標とを求める。
【００６８】
仮に、クラック候補領域Ｅ３にクラック候補領域Ｅ５が結合の条件を満たさない場合には、他のクラック候補領域の中に、重心のｘ座標がクラック候補領域Ｅ３の重心のｘ座標よりも大きく、かつ重心のｘ座標の差分が第１の閾値以下になるものが存在するか否かを探索し、探索したクラック候補領域に結合可能か否かを判定する。他のクラック候補領域について結合可能か否かを判定する処理には制限回数が設定される。また、制限回数に達する前に、結合可能であるクラック候補領域が得られた場合には、クラック候補領域を結合する。
【００６９】
図示例では、クラック候補領域Ｅ３がクラック候補領域Ｅ５に結合されることにより、クラック候補領域Ｅ３の結合先となるクラック候補領域の探索を終了し、クラック候補領域Ｅ４を結合するクラック結合領域を探索する処理に以降する。ここで、クラック候補領域Ｅ３をクラック候補領域Ｅ５に結合したときに、クラック候補領域Ｅ５の重心および端点の座標を変更しているから、クラック候補領域Ｅ４に対して次に探索するクラック候補領域は、クラック候補領域Ｅ３が結合されたクラック候補領域Ｅ５になる。
【００７０】
この場合、重心のｘ座標の差分は第１の閾値以下になり、互いに近いほうの端点のｙ座標の差分は第２の閾値以下になるから、クラック候補領域Ｅ３を結合したクラック候補領域Ｅ５にクラック候補領域Ｅ４が結合される。つまり、クラック候補領域Ｅ５には、クラック候補領域Ｅ３とクラック候補領域Ｅ４とが結合される。
【００７１】
次に、新たなクラック候補領域Ｅ５について、クラック候補領域Ｅ６と結合可能か否かが判定される。図示例では、更新後のクラック候補領域Ｅ５とクラック候補領域Ｅ６の重心のｘ座標の差分は第１の閾値を超えている場合を示しており、クラック候補領域Ｅ６は結合されない。
【００７２】
上述した動作からわかるように、本実施形態の処理により１つのクラックに属するクラック候補領域を抜けなく結合することが可能になる。すなわち、実施形態１の手順よりもさらに精度よくクラック候補領域のグループ分けを行うことが可能になる。しかも、同一のグループに属するクラック候補領域は互いに連結されて１つのラベルが付与されているから、ラベルが付与されたクラック候補領域ごとに長さ寸法を規定の基準値と比較することにより、クラックか否かの判定を行うことができる。
【００７３】
上述の例では、一対のクラック候補領域を連結するか否かの判定に際して、重心のｘ座標の差分と、互いに近いほうの端点のｙ座標の差分とを用い、各クラック候補領域が占めるｙ座標の範囲の重複の程度を考慮していないが、実施形態１と同様に、図６に示した手順で一対のクラック候補領域を連結するか否かを判定してもよい。他の構成および動作は実施形態１と同様である。
【符号の説明】
【００７４】
１  画像処理装置
２  撮像装置
１１  エッジ抽出手段
１２  候補領域抽出手段
１３  ラベリング手段
１４  クラスタリング手段
１５  判定手段
Ｗ  検査対象物
【図１】
2011058939.tif 000003
【図２】
2011058939.tif 000004
【図３】
2011058939.tif 000005
【図４】
2011058939.tif 000006
【図５】
2011058939.tif 000007
【図６】
2011058939.tif 000008
【図７】
2011058939.tif 000009
【図８】
2011058939.tif 000010
【図９】
2011058939.tif 000011