how to calculate irregular shape area in the image
30 views (last 30 days)
Show older comments
hi..i have i project that need me to detect and extract the irregular shape in the image.then i should to calculate the area in the unit cm.can you help me,how can i detect the irregular shape in the image automatic and how can i calculate that irregular shape area.i hope you can help me.Thank you.
8 Comments
Answers (3)
Florin Neacsu
on 4 Jan 2012
Hi,
Given your example I would suggest this approach:
after your edge detection:
create structural element of radius 4 (or 5 or whatever works for you)
dilate your edge map
erode (with the same strel)
imclearborder
create metric to eliminate "noise" (you can do something similar to circle detection : perimeter/area)
determine the area (in pixels; you need to know the spatial resolution of your initial image to obtain it in cm2).
Hope this helps.
Regards, Florin
10 Comments
Image Analyst
on 26 Jan 2012
Have you imaged your known object yet? When you have, call improfile() to interactively get the length by calculating the two line endpoints that improfile will provide to you. Then you conversion factor is your real world length (e.g. 10 mm) divided by the number of pixels that the distance is.
Walter Roberson
on 26 Jan 2012
Urgency does not make the impossible possible.
Perhaps, though, it would be appropriate to ask about your accuracy goals. If your accuracy goals are not especially high, then you could make use of the average of the real-world measurements that have been studied; see http://uclue.com/?xq=4504
Image Analyst
on 28 Dec 2011
You might be able to adapt my BlobsDemo tutorial to your image:
11 Comments
Gyaneshwar dubacharla
on 22 Jan 2016
how to find area from contour plots????
1 Comment
Image Analyst
on 22 Jan 2016
Contour() returns the coordinates. You could then use polyarea() or poly2mask() followed by regionprops().
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!