シェーディングがある画像の微小な傷や汚れは、ソベルフィルタを使えば傷・汚れが強調され、明ブロブ検出で欠陥を抽出できます。
このとき、ソベルフィルタは、輝度の変化の度合いの画像を作るので、見た目は真っ暗な画像になります。
Blob の結果グラフィックを、元画像に表示すれば、どこが欠陥なのか明確です。サンプルを示します。
(1)平滑化でノイズの影響を減らす
ガウシアンサンプリング、ImageProcessingOneImage、GaussianSampling
(2)背景のシェーディングの影響を弱め、傷・汚れを強調する
ソベルフィルタ、SobelEdge
(3)Blobで欠陥抽出
Blobパラメータの調整: しきい値(明ブロブ)、最小面積、マスク、細い線の除去(モフォロジィ)、他
製品: VisionPro
動作確認バージョン:5.0
言語:ツールグループスクリプトVB、VB.NET、VS2005
シェーディングがある画像の欠陥検出は、他に次の方法があります。
比較的大きなカーネルのメジアンフィルタを使って、傷・汚れを消した、背景画像を作ります。元画像と背景画像の引き算を行えば、シェーディングが削除され、傷・汚れのみ残ります。画像引き算を行うので、見た目は真っ暗な画像になります。Blob の結果グラフィックを元画像に表示すれば、どこが欠陥なのか明確に示せます。
(1)メジアンNxMフィルタ(33×33)で背景画像を作成、IPOneImage
(2)(元画像ー背景画像)の画像差分を行ってキズを抽出、IPTwoImageSubtract
(3)Blobでキズの位置や面積を測定
位置決めできるパターンがあれば、PatInspect – Blob で欠陥を検出できます。PatInspect は画像引き算するツールなので、Blob の結果グラフィックを元画像に表示すれば、どこが欠陥なのか明確に示せます。
(1)位置決め、PatMax
(2)正常品との画像差分、PatInspect
(3)欠陥抽出、Blob