Remove Background from image and select the region of interest
2 ビュー (過去 30 日間)
古いコメントを表示
I have a image
and I want to remove the background and select the region of interest and my output should be
How can I do it ? thanks in advance.
0 件のコメント
採用された回答
Image Analyst
2014 年 2 月 14 日
Look at my color segmentation demos http://www.mathworks.com/matlabcentral/fileexchange/?term=authorid%3A31862
For this image, the background is neutral and the subject is not. So I'd probably convert to hsv with rgb2hsv() and then threshold on saturation to get highly saturated pixels. The background won't get selected. Then get rid of any small regions with bwareaopen, call regionprops, get the bounding box, and call imcrop(). The essential lines are few:
hsv=rgb2hsv(rgbImage);
s = hsv(:,:,2);
foreground = s > 0.2; % Or whatever.
foreground = bwareaopen(foreground, 1000); % or whatever.
labeledImage = bwlabel(foreground);
measurements = regionprops(labeledImage, 'BoundingBox');
bb = measurements.BoundingBox;
croppedImage = imcrop(rgbImage, bb);
or something like that. I didn't test it - that's just off the top of my head.
9 件のコメント
Image Analyst
2014 年 2 月 18 日
編集済み: Image Analyst
2014 年 2 月 18 日
Sounds like just taking the mean color would be good enough to tell which note it is. I don't see any need to do anything fancier or more difficult.
その他の回答 (1 件)
Anagha
2014 年 4 月 15 日
Hello,
I'm also facing similar problem. I want to crop the egg image from black background for further image processing. I'm attaching the image. Please help me in this regard. Really urgent!!
1 件のコメント
Image Analyst
2014 年 4 月 15 日
Please start your own thread. Post your image there and explain why you want to crop. Cropping is not necessary for analysis, so why do you want to crop? Answer in your own, new thread, not here.
参考
カテゴリ
Help Center および File Exchange で Matrix Indexing についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!