How to remove the found image from the original image?

2 visualizzazioni (ultimi 30 giorni)
Hi, I am a beginner to MATLAB image processing.
I have an original fundus image as shown. And i have found the vessel tree as attached which I need to remove from the fundus image.
My question is how can I remove the vessel tree from the original image?
Thank you.

Risposta accettata

Image Analyst
Image Analyst il 3 Giu 2022
You can invert the mask to get everything except the vessels, then mask:
% Get fundus mask, which is the opposite of the vessel mask
mask = ~vesselMask;
% Mask image by multiplying each channel by the mask.
maskedRgbImage = rgbImage .* cast(mask, 'like', rgbImage); % R2016b or later. Works for gray scale as well as RGB Color images.
% For R2016a or earlier, mask the image using bsxfun() function to multiply the mask by each channel individually. Works for gray scale as well as RGB Color images.
% maskedRgbImage = bsxfun(@times, rgbImage, cast(mask, 'like', rgbImage)); % R2016a or earlier.
  5 Commenti
Image Analyst
Image Analyst il 4 Giu 2022
If you want to "fill in" the vessels with the weighted average of the nearby non-vessel gray levels, you can use regionfill.

Accedi per commentare.

Più risposte (0)

Prodotti


Release

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by