Effacer les filtres
Effacer les filtres

How do you use roifill if the mask you have specifies all the pixels you want replaced

2 vues (au cours des 30 derniers jours)
I would like to use roifill to replace pixels in an image. I know exactly which pixels I want replaced so I can specify a mask in the second argument. But because I have specified a region with edges that are within the region I want replaced roifill does nothing (it's using these edge values to estimate the interior). I really want roifill to take pixels just outside of that masked region and map them to all values within. Is there anyway to identify all pixels 'just outside of' my mask region and define an 'augmented' mask?

Réponse acceptée

Sean de Wolski
Sean de Wolski le 9 Mai 2013
You could dilate the mask to make it bigger or use the distance transform to identify pixels within n pixels of your mask.
doc imdilate
doc bwdist
  1 commentaire
Image Analyst
Image Analyst le 29 Mai 2013
I have found that also. You need to dilate so the pixels it smears inwards are taken from outside your binary mask region. Otherwise you're just smearing in zeros.

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by