Putting color on binary image
17 views (last 30 days)
Show older comments
Hello!
Need a hand here, I want to color my binary image resulting from thresholding of rgb image.
How to do it? let's say, black to blue and white to green.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/274269/image.png)
0 Comments
Accepted Answer
Guillaume
on 28 Feb 2020
Edited: Guillaume
on 28 Feb 2020
Here's an easy way, assuming that your start image is indeed a binary image (i.e a 2D matrix with values 0 or 1):
%binaryimage: 2D matrix of 0s and 1s
map = [0 0 1; ...replacement colour for black as a RGB triplet, fully saturated blue in this case
0 1 0]; %replacement colour for white as a RGB triplet, fully saturated green in this case
colouredimage = map(binaryimage + 1 + cat(3, 0, 2, 4));
imshow(colouredimage); %to check
edit: Actually an even easier way, and certainly easier to understand, is with
map = [0 0 1; ...replacement colour for black as a RGB triplet, fully saturated blue in this case
0 1 0]; %replacement colour for white as a RGB triplet, fully saturated green in this case
colouredimage = label2rgb(binaryimage + 1, map);
assuming you have the image processing toolbox.
More Answers (0)
See Also
Categories
Find more on Modify Image Colors in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!