How do I fill the missing edges of an image in order to use the imfill command?

2 Ansichten (letzte 30 Tage)
I would like to be able to threshold the heart all by itself. The overall project is to be able to get the coordinates of the heart and superimpose them into a fake body. So far I have used sobel edging and tresholding to get the heart. How do I close off all the edges so I can use the Imfill command? Thank you

Akzeptierte Antwort

Image Analyst
Image Analyst am 21 Feb. 2014
You can try imclose() or imdilate(), which is scanning with a local max filter.
  2 Kommentare
Alexander Killam
Alexander Killam am 21 Feb. 2014
IM2 = imclose(IM,SE) performs morphological closing on the grayscale or binary image IM with the structuring element SE. SE must be a single structuring element object, as opposed to an array of objects.
Not to sound stupid but I am a really basic beginner. What would I place for the SE in that command?
Image Analyst
Image Analyst am 21 Feb. 2014
Bearbeitet: Image Analyst am 21 Feb. 2014
You could look at strel() function to create masks of different shapes. If you just want a box, you can use true():
% Close with window size of 15x15.
closedImage = imclose(grayImage, true(15));

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by