detect scratches in image

this is the input image i want to detect scratches in this image but i don't know how to proceed please guide me. i want output image like this

2 comentarios

Walter Roberson
Walter Roberson el 20 de Nov. de 2015
You appear to have marked blobs, not scratches. Scratches are long thin marks such as appear near the bottom left of the bright area.
mehroz irshad
mehroz irshad el 20 de Nov. de 2015
so how can i detect those blobs.

Iniciar sesión para comentar.

Respuestas (1)

Image Analyst
Image Analyst el 20 de Nov. de 2015

0 votos

Try a tophat or bottomhat filter, imtophat() or imbothat().

3 comentarios

mehroz irshad
mehroz irshad el 20 de Nov. de 2015
Editada: Walter Roberson el 20 de Nov. de 2015
original = imread('fivTest.png');
figure, imshow(original);
se = strel('disk',12);
tophatFiltered = imtophat(original,se);
figure, imshow(tophatFiltered);
contrastAdjusted = imadjust(tophatFiltered);
figure, imshow(contrastAdjusted);
i have tried this code tophat filter but displays following error.
Error using images.internal.imageDisplayValidateParams>validateCData (line 119)
If input is logical (binary), it must be two-dimensional.
Error in images.internal.imageDisplayValidateParams (line 27)
common_args.CData = validateCData(common_args.CData,image_type);
Error in images.internal.imageDisplayParseInputs (line 78)
common_args = images.internal.imageDisplayValidateParams(common_args);
Error in imshow (line 222)
images.internal.imageDisplayParseInputs({'Parent','Border','Reduce'},preparsed_varargin{:});
Error using imadjust>parseInputs (line 207)
Specified syntax IMADJUST(I) is only supported for 2-D grayscale images. Additional input arguments are required for use
with RGB images.
Error in imadjust (line 97)
parseInputs(varargin{:});
Walter Roberson
Walter Roberson el 20 de Nov. de 2015
original = rgb2gray( imread('fivTest.png') );
Image Analyst
Image Analyst el 20 de Nov. de 2015
You should also get a better photo. Your setup is horrible. Have you considered using more uniform illumination, board illumination (no line or point sources of light), crossed polarizers (to knock out that specular reflections right where you want to analyze), etc. It's always better to start with a good image than to try to fix us a crappy image afterwards in software.

Iniciar sesión para comentar.

Preguntada:

el 19 de Nov. de 2015

Comentada:

el 20 de Nov. de 2015

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by