Recognize some objects and delete other objects from image

1 view (last 30 days)
How can i isolate my green '+' selected objects from the other objects.I only want to plot the green objects and want to delete others object from my image.I need an idea to do that.

Answers (2)

Samia Sanjari
Samia Sanjari on 11 Feb 2016
Hello Image analyst Do you have any idea how can i do that?I already selected my objects and marked them by green '+'.I only want to show these green selected objects in my image.
Thanks in advance

Image Analyst
Image Analyst on 11 Feb 2016
Basically you need to find everything except squares. You can do that by adapting my attached shape recognition demo.
  3 Comments
Image Analyst
Image Analyst on 12 Feb 2016
First find the green where the red and blue channel are low and the green value is high.
% Extract the individual red, green, and blue color channels.
redChannel = rgbImage(:, :, 1);
greenChannel = rgbImage(:, :, 2);
blueChannel = rgbImage(:, :, 3);
greenCrosses = greenChannel > t1 & redChannel < t2 & blueChannel < t3;
Next find white where all channels are high.
whiteBackground = greenChannel > t1 & redChannel > t1 & blueChannel > t1;
Then use imclearborder() to get rid of the surround.
shapesOnly = imclearborder(whiteBackground);
Then use imreconstruct with the white image and the green image to get only those shapes with green on them.
See if you can finish the code.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!