MATLAB: Filling gaps in binary images

binaryboundaryclusterfillimageImage Processing Toolbox

I have a binary images of tree clusters, when I imshow(BW), some single trees are separated from the main cluster by 1 pixel. Is there a way to make single trees to be part of the nearest cluster. I've tried bwfill, didn't work.

Best Answer

If it really is just one pixel, then try this:
BW2 = bwmorph(BW, 'bridge');
If it is more than one pixel, then take a look at IMCLOSE. This will affect the entire binary boundary in the image, however.