MATLAB: Image Segmentation of binary image

fruitimage processingImage Processing Toolboximage segmentation

Hi,
I'm trying to identify the banana from the other fruits in an binary Image so that the result only show the banana, I used se=strel('disk',25) but the area of orange was larger so the result show the orange not banana. can you help me with the problem.
Thank you in advance.

Best Answer

This looks like homework, not a real world problem. So I'll give you hints. Use the color thresholder app on the Apps tab to create a mask for yellow. Then use regionprops() to find out which blobs have a major axis some factor longer than the minor axis:
labeledImage = bwlabel(binaryImage);
props = regionprops(labeledImage, 'MajorAxisLength', 'MinorAxisLength');
aspectRatios = [props.MajorAxisLength] ./ [props.MinorAxisLength]
bananas = aspectRatios > 2; % Or whatever.
% Extract binary image of just the banana blobs
bananasImage = ismember(bananas, find(bananas));