How do I apply a mask to a gray image?
7 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Hey guys I'm trying to apply a mask to an image which I need to work on, I've tried to use the following code and didnt get what I need.
I=imread('02_dr.JPG');
mask=imread('02_dr_mask.tif');
J=rgb2gray(I);
subplot(2,3,1); imshow(J), title('Original Grayscale');
subplot(2,3,4); imhist(J), title('Histograma 1');
subplot(2,3,2); imshow(mask), title('Mask');
subplot(2,3,5); imhist(mask), title('Histograma Mask');
% Mask the image using bsxfun() function
maskedImage = bsxfun(@times, J, cast(mask, 'like', J));
subplot(2,3,3); imshow(maskedImage), title('MaskedImage');
subplot(2,3,6); imhist(maskedImage), title('Histograma MaskedImage');
I have also tried the following instead of Inew = image.*repmat(mask,[1,1,3]);
Inew=image.*mask;
0 comentarios
Respuestas (1)
Image Analyst
el 9 de Mayo de 2016
First of all, don't ever call your image "image" because that is the name of a very important built-in variable.
Try this:
% Mask the image using bsxfun() function
maskedRgbImage = bsxfun(@times, rgbImage, cast(mask, 'like', rgbImage));
4 comentarios
Ver también
Categorías
Más información sobre Read, Write, and Modify Image en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!