How to overlay a binary mask over an rgb image?

I am trying to overlay a binary mask over an RGB color image. I want to change the white area of the mask to a transparent red area and put it over an rgb image.
For example:
image: diplo000000-L.png mask: sdfsd.png
I want something similar to this:
Untitled.png
I alredy tried this method but I couldn't figure it out. What is a simple way (no matter how slow) to do this?

 Accepted Answer

Here's some code:
img = imread('diplo000000-L.png');
mask = imread('sdfsd.png');
mask(:,:,1) = 0;
img(mask>0) = 0;
image(img)
set(gca,'ydir','reverse');
imwrite(img,'newimage.png');
newimage.png

2 Comments

img(mask>0) = 0; is equivalent to img(mask) = 0;
Thank you. That's a good point.

Sign in to comment.

More Answers (0)

Categories

Find more on Display Image 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!