第 5 章 画像計測による微小傷の検出
5.3 画像間の差分を用いた傷検出方法
5.3.2 傷検出処理
傷検出処理は,マスク処理,傷画素検出,ノイズ除去,傷画素の累積処理から構成さ れる.処理の流れを図 5.9に示す.傷検出処理は,入力画像列中の全画像に対して,そ れぞれ個別に適用される.このとき,処理対象となる画像を処理画像と呼び,Gで表す.
図 5.9 傷検出の流れ Original Images Pool
・・・
・・・
( n ) ( i ) ( i -1 ) ( 1 )
Original Image Mask Area
Clipped Image (i)
Scratch Image
Clipped Image (i-1)
Accumulation Scratch image
- 100 - マスク処理
検査対象は,円筒形状のため画像の端は,歪んで写ってしまう.照明が均一でないな ど,検査画像として問題があり,これを処理すると傷検出の精度を悪化させてしまう.
また,画像端として写っている部位は次のステップにおいて,画像中央に写るため,画 像端は処理を行う必要はない.そこで,「マスク処理」を適用し,処理画像を検査領域 と非検査領域に分離し,非検査領域を除外する.これにより,傷検出精度の悪化を防ぐ と共に処理する領域を削減することができ,処理速度の向上が行える.
傷画素検出
傷画素検出により検出された結果は,画像データとして出力され,このときの画像デ ータを「傷画像」と呼び,Sで表し,画素値をsx,yで表すこととする.
総数n 枚の入力画像列中,i 番目の画像が処理画像として選択されているとき,i 番 目の処理画像Giとそのひとつ前にあたるi-1番目の処理画像Gi-1の各画素間で輝度差 dx,yをとる.dx,yは座標(x, y)の輝度値をgx,yとすると,式(5.1)で求められる.
y i x y ix y
x g g
d , = , − −1 , (5.1)
そして,座標(x, y)での閾値をtx,yとすると,傷画素の画素値sx,yは式(5.2)におい て求められる.
⎩⎨
⎧
≤
= >
y x y x
y x y x y
x d t
t s d
, ,
, ,
, 0,
,
1 (5.2)
ノイズ除去
撮影される入力画像には外乱等の要因により,ノイズが発生する.ノイズの発生した 画素の輝度値は,周辺画素の輝度値より著しく大きい.
本研究に用いた画像間差分による傷検出では,時間あたりの輝度変化の大小により傷 を検出するため,ノイズのような著しい輝度変化が生じると,傷として検出してしまう.
このようなノイズによる検出が起こると,良品・不良品の判定の精度が悪くなってしま う.そこで,ノイズ除去を行う必要がある.発生するノイズと傷との違いとして,傷は ある程度の連結した画素として検出されるが,ノイズは孤立した画素として検出される ことが挙げられる.このことから,傷として検出した画素の8近傍を観察し,傷画素が 存在しない場合,ノイズとして除去することとした.
5.3 画像間の差分を用いた傷検出方法
- 101 -
図 5.10にノイズ除去の概念を示す.処理画像S中の画素値sx,yにおいて,周辺8画
素を確認する.そして,周辺に傷画素がなければ,sx,y = 0とする.これにより,周辺8 画素に傷画素のない画素はすべてノイズとして削除され,面積の大きな連結画素のみが 残された傷画素Sが出力される.
図 5.10 ノイズ除去
傷画素の累積処理
検査画像全域において,検出された傷の面積を計算するため,傷画素の各座標(x, y) において,検出された画素の度数をとる.この度数は累積傷画像Aとして出力される.
傷画像Sにおいて傷の存在する領域では画素値sx,yは1であり,傷の存在しない領域で は画素値sx,yは0であることから,累積傷画像Aおよび,その画素値ax,yは,式(5.3),
(5.4)のような各処理ステップの傷画像Sの加算処理となる.
∑
== n
i
Si
A
1
(5.3)
∑
== n
i ixy y
x s
a
1 ,
, (5.4)