Matlab image intensity level adjustment

3 visualizaciones (últimos 30 días)
Chen Zhang
Chen Zhang el 29 de Abr. de 2017
Comentada: Image Analyst el 30 de Abr. de 2017

I have a specific question to ask about the intensity adjustment for image processing. I need high constraint value to find small gaps in the image. I used a manual threshold value 0.99 to convert the grayscale image. However, as the illumination on the surface did not distribute evenly, some parts of the image is lost. I used adaptive method, however, the results is similar to a global threshold. Orignial picture:

Red point as intereted area:

Detail in Binary Image:

I0 = imread('1_2.jpg');
[R,C,K] = size(I0);
if K==1
    I1 = I0;
else
    I1 = rgb2gray(I0);
end
%Adjsut image to get a standar binary picture
%Adjust image intensity value
I1 = imadjust(I1,[0.1 0.7],[]);
BW0   = im2bw(I1,0.99);
    figure;
BW0   = bwareaopen(BW0,10000);
%Fill non_crack hole error
BW0   = bwareaopen(1-BW0,500);
BW0   = 1-BW0;
    imshow(BW0);

After this process, only half of the image will be left. I want a whole image with local intensity threshold which can show the same feature as the high-level threshold. What can I do?

Thanks

Respuestas (1)

Image Analyst
Image Analyst el 29 de Abr. de 2017
You need to do a background correction to get rid of any lens shading. I attach a demo.
  6 comentarios
Chen Zhang
Chen Zhang el 30 de Abr. de 2017

Not really, the problem is I have 5 different samples, this manual method may not find all the gaps sometime. I want to generate a universal way to find the location in some other image accurately. Here is another image:

This feature may not be that easy to detect.

Image Analyst
Image Analyst el 30 de Abr. de 2017
Why not use a template - a reference image. Take a perfect version and get the perfect binary image. Then take your test image, call imregister() to align it, then binarize and subtract. Any defects will be super bright.

Iniciar sesión para comentar.

Categorías

Más información sobre Image Processing Toolbox en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by