Coloring the largest component with different color than others

1 visualización (últimos 30 días)
Sultan
Sultan el 12 de Jul. de 2017
Respondida: Prashant Arora el 17 de Jul. de 2017
Hello all,
I am looking to mark the largest connected component in an image with special color say 'red', and then color the other components in black while the empty space I wanted to be colored in white.Here are my codes.
  1 comentario
Sultan
Sultan el 12 de Jul. de 2017
A=rand(100);
B=A<.5
CC = bwconncomp(B,4)
numOfPixels = cellfun(@numel,CC.PixelIdxList)
[unused,indexOfMax] = max(numOfPixels)
biggest = zeros(size(B))
biggest(CC.PixelIdxList{indexOfMax}) = 1
colours=[1 1 1;1 0 0;0 0 0]
colormap (colours)
imagesc(biggest)

Iniciar sesión para comentar.

Respuestas (1)

Prashant Arora
Prashant Arora el 17 de Jul. de 2017
Hi Sultan,
You can use the method below to achieve your use-case.
image = zeros(size(biggest,1),size(biggest,2),3);
NotBiggest = B - biggest;
image(:,:,1) = biggest + 1*NotBiggest;
image(:,:,2) = 0*biggest + 1*NotBiggest;
image(:,:,3) = 0*biggest + 1*NotBiggest;
imagesc(image);

Categorías

Más información sobre Migrate GUIDE Apps en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by