Borrar filtros
Borrar filtros

Evaluation of image segmentation without using a model

3 visualizaciones (últimos 30 días)
Hello guys, I've been trying to see who is better at image segmentation is it using only the green channel mask the whole image mask
here is my code for segmentation using green channel
I=imread(image);
g=I(:, :, 2);
%binarizing images
gg=imbinarize(rescale(g));
SE=strel('disk',5);
%green
gg=imopen(gg,SE);
gg=imdilate(gg,SE);
gg = bwareafilt(gg,1);
maskedRgbImageg= imoverlay(I,gg,'k');
my segmentation code using the whole image
I=imread(image);
gray=rgb2gray(I);
%binarizing images
graym=imbinarize(rescale(gray));
SE=strel('disk',5);
graym=imopen(graym,SE);
graym=imdilate(graym,SE);
graymmaskedRgbImageg= imoverlay(I,graym,'k');
and now I don't know how to evalute each one segmentation using the metrics, is there is any methode that can show me who segments better. thank you in advance
  2 comentarios
DGM
DGM el 12 de Mayo de 2022
Editada: DGM el 12 de Mayo de 2022
That's entirely dependent on the image, the content, and the intent. It's not clear what those are, and it's not clear what "the metrics" are either.
Just grabbing an offhand color image,
I get this:
I = imread('jagblobs.png');
g = I(:, :, 2);
%binarizing images
gg = imbinarize(rescale(g));
SE = strel('disk',5);
gg = imopen(gg,SE);
gg = imdilate(gg,SE);
gg = bwareafilt(gg,1);
maskedRgbImageg = imoverlay(I,gg,'k');
imshow(maskedRgbImageg)
... and this
I = imread('jagblobs.png');
gray = rgb2gray(I);
%binarizing images
graym = imbinarize(rescale(gray));
SE = strel('disk',5);
graym = imopen(graym,SE);
graym = imdilate(graym,SE);
graymmaskedRgbImageg = imoverlay(I,graym,'k');
imshow(graymmaskedRgbImageg)
Neither of which really help to make the intent clear (the approximate removal of the largest object, maybe?).
Hend Abouche
Hend Abouche el 13 de Mayo de 2022
yes I am using the bwareafilt function to keep only the largest object

Iniciar sesión para comentar.

Respuesta aceptada

Image Analyst
Image Analyst el 13 de Mayo de 2022
I would use whatever image gave you the most contrast in what you want to find. Usually a single color channel will give you the most contrast if you're looking for something that is a single color. If you want to find multiple colors simultaneously then useing rgb2gray would probably be best. You might even be able to use PCA to get more contrast. PCA Demos attached.
  4 comentarios
Hend Abouche
Hend Abouche el 13 de Mayo de 2022
No I do have the ground truth of masks, I just need to find a way to find wich method gives the nearest mask shape to the ground truth
Image Analyst
Image Analyst el 13 de Mayo de 2022
You can use the dice function.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Read, Write, and Modify Image 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