Signal Processing Stack Exchange is a question and answer site for practitioners of the art and science of signal, image and video processing. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I want to use morphology operator for filling holes of a 3d image. The 3d image consists of 116 2-D image slices of the same size (512*512 pixels). I tried using imfill in Matlab for the 3d image but the result is not I want. One of the slices of the 3d input image(a) and the corresponding slice from the 3d output image(b) result of using imfill is shown here . The small holes are filled and other holes are not filled.

When I tried using imfill slice by slice the result is correct. Is there any way for filling holes in 3d images? How can I do this?

share|improve this question
Unfortunately, we can't see your images. If you could provide a link, it would be very helpful. – Dima Sep 12 '13 at 21:29
Without seeing your image how we can suggest a appropriate method which work fine for you. please provide image if you can. – Asif Sharif Jul 1 '14 at 6:26

imfill would work with images and not volumes. However Matlab has many basic tools to fill the holes, that is to interpolate missing data points. What you are after is interpolation and Matlab has a function called interp3.

share|improve this answer

Without your image its very hard to suggest any method or solution for your problem. But anyway see my answer to another question may be it work for you. Link here


share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.