MATLAB Answers

How to Capture objects in big image and divided them to small images?

2 views (last 30 days)
Hi,
I stuck at my study now.
I have one example image. ( http://i42.tinypic.com/b653er.jpg) From this image, I would like to separate these five small objects in the picture to be five small images.
How can I do this. I need your help please.
I am looking forward to hear from you. Thank you very much.
Wipapan

Accepted Answer

Chandra Kurniawan
Chandra Kurniawan on 12 Feb 2012
This code works just for this image only
Irgb = imread('b653er.jpg');
Igray = rgb2gray(Irgb);
Ibw = im2bw(Igray,graythresh(Igray));
Ifill = imfill(Ibw,'holes');
%clear the lines
Ihor = imopen(Ifill,strel('line',5,0));
Iver = imopen(Ihor,strel('line',5,90));
Ilabel = bwlabel(Iver);
stat = regionprops(Ilabel,'BoundingBox');
for x = 1 : numel(stat)
bb = stat(x).BoundingBox;
Icrop{x} = imcrop(Irgb,bb);
subplot(numel(stat),1,x); imshow(Icrop{x});
end
  4 Comments
Image Analyst
Image Analyst on 4 Jan 2015
Look at section 8.8 here. Pick one, code it up, then create a brand new discussion and attach your code, your image, and your question.

Sign in to comment.

Products

Community Treasure Hunt

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

Start Hunting!