필터 지우기
필터 지우기

Coloring the largest component with different color than others

조회 수: 2 (최근 30일)
Sultan
Sultan 2017년 7월 12일
답변: Prashant Arora 2017년 7월 17일
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
Sultan
Sultan 2017년 7월 12일
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)

댓글을 달려면 로그인하십시오.

답변 (1개)

Prashant Arora
Prashant Arora 2017년 7월 17일
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);

카테고리

Help CenterFile Exchange에서 Red에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by