Clear Filters
Clear Filters

How to mask a region in an image

7 views (last 30 days)
vidya
vidya on 24 Mar 2014
Commented: sangeetha N on 24 Apr 2019
good day, I want to mask an image, my aim is detection of exudates so i want to remove optic disc from the image so that i can have only exudates detected here is my image
and this is my original image is

Answers (1)

Image Analyst
Image Analyst on 24 Mar 2014
Look at these two snippets showing two ways, one channel by channel and another that does it all in one line:
% Mask image must be converted to the same integer type
% as the integer image we want to mask.
mask = cast(binaryImage, class(rgbImage));
% Multiply the mask by each color channel individually.
maskedRed = redChannel .* mask;
maskedGreen = greenChannel .* mask;
maskedBlue = blueChannel .* mask;
% Recombine separate masked color channels into a single, true color RGB image.
maskedRgbImage = cat(3, maskedRed, maskedGreen, maskedBlue);
% An alternate method to multiplication channel by channel.
% Mask the image using bsxfun() function
maskedRgbImage = bsxfun(@times, rgbImage, cast(mask, class(rgbImage)));
  1 Comment
sangeetha N
sangeetha N on 24 Apr 2019
what do you mean by masking?
are structure element and mask same?

Sign in to comment.

Categories

Find more on Recognition, Object Detection, and Semantic Segmentation 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!