How to detect certain shapes in binary image

10 次查看(过去 30 天)
I have a binary image containing circular shape; I want to detect the circular shape and eliminate rest of the part in an image. Can someone help me with this. The original image is attached below http://img841.imageshack.us/img841/9128/originalimage.jpg
Expected output image (Edited in MS-Paint)
Thanks for your help in advance!
  1 个评论
Matt Kindig
Matt Kindig 2013-1-30
If you have the Image Processing Toolbox, I would go through the Demos, specifically the one called "Identifying Round Objects". Another excellent resource is ImageAnalyst's BlobsDemo on the File Exchange ( http://www.mathworks.com/matlabcentral/fileexchange/25157-image-segmentation-tutorial-blobsdemo). I would look at both to start with.

请先登录,再进行评论。

采纳的回答

Image Analyst
Image Analyst 2013-1-30
If you look at the circularity, that will tell you what's circular and what's not. Look at my BlobsDemo and see how to measure area and perimeter. Then circularity is just perimeter^2 / (4*pi*area). It's 1 for a circle, and gets bigger the more tortuous the edge shape gets.
  2 个评论
Image Analyst
Image Analyst 2013-3-10
The link is not broken. I just went there and it works fine for me. Make sure you went to the right person's File Exchange (i.e., mine). Here is the direct link: http://www.mathworks.com/matlabcentral/fileexchange/25157-image-segmentation-tutorial-blobsdemo

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Get Started with Image Processing Toolbox 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by