How to retrieve the centroid and angle of an ellipse drawn on an image in a gui?

2 views (last 30 days)
I want to create an interactive ellipse on an image in a gui and retrieve its poperties like semi-major axis,semi-minor axis, angle and centroid for the same. I am struck at this. Using imellipse, I am not able to get the centroid and the angle. I have to get these values in a structure and then generate a xml file of it. Thanks!

Answers (2)

Matt J
Matt J on 7 Jun 2016
If you have a well-distributed set of points on the ellipse, you can use the attached file to fit the points. The output gives all the ellipse parameters that you mentioned.
  2 Comments
Nisha Bharti
Nisha Bharti on 7 Jun 2016
It's giving this error:
Attempted to access XY(2,:); index out of bounds because numel(XY)=1.
Error in ellipsefit (line 6) Y=XY(2,:).' - cxy(2);
Matt J
Matt J on 7 Jun 2016
Edited: Matt J on 7 Jun 2016
The error means that you have called ellipsefit(XY) with a scalar value for XY. The expectation is that XY is a 2xN matrix whose columns are N points on the ellipse.

Sign in to comment.


Image Analyst
Image Analyst on 7 Jun 2016
See my attached demo which will draw ellipses at various angles.

Tags

Community Treasure Hunt

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

Start Hunting!