How can I color all objects as the same in an image where several objects have been extracted in the form of a label matrix?

2 views (last 30 days)
I don't want the objects to be of different colors - I want them all the same shade of red (or white or blue). How can I achieve this?
  1 Comment
Matt J
Matt J on 7 Jan 2022
It is advisable in the forum to post code as text, rather than as an embedded image. That way, contributors can more easily copy/paste it.

Sign in to comment.

Accepted Answer

Image Analyst
Image Analyst on 8 Jan 2022
You don't need bwlabel(), label2rgb(), or colormaps. You can simply use imoverlay:
grayImage = imread('rice.png'); % A gray scale image.
mask = bwareaopen(imbinarize(grayImage, 'adaptive'), 8); % A binary/logical image.
% Overlay the mask onto the original image.
rgbImage = imoverlay(grayImage, mask, 'r'); % Creates a new RGB image.
imshow(rgbImage)

More Answers (1)

Matt J
Matt J on 7 Jan 2022
Edited: Matt J on 7 Jan 2022
Bianrize the labels,
RGB_label-label2rgb(labeled>0,___);
imshow(RGB_labels);
  1 Comment
yanqi liu
yanqi liu on 8 Jan 2022
Edited: yanqi liu on 8 Jan 2022
yes,sir,it is great mehod,may use code to check it
clc; clear all; close all;
im = imread('rice.png');
bw = bwareaopen(imbinarize(im, 'adaptive'), 8);
[labeled,num] = bwlabel(bw);
% make to one label
RGB_labels=label2rgb(labeled>0);
figure; imshow(RGB_labels);
% self define colorm map
cmap = ones(num, 3); cmap(:, 1:2) = 0; cmap(1,1) = 0;
RGB_labels2=label2rgb(labeled,cmap);
figure; imshow(RGB_labels2);

Sign in to comment.

Categories

Find more on Display Image in Help Center and File Exchange

Products


Release

R2020b

Community Treasure Hunt

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

Start Hunting!