How to remove the found image from the original image?

4 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)

Categorie

Scopri di più su Image Processing and Computer Vision in Help Center e File Exchange

Prodotti


Release

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by