ellipse fitting from a plot in MATLAB
4 views (last 30 days)
Show older comments
I have datapoints in text file which I have imported and ploted. Now I want to do ellipse fitting of that data. Can you please help me with that?
0 Comments
Accepted Answer
Image Analyst
on 25 Mar 2021
See my attached ellipse fitting demo.
Also see the FAQ:
6 Comments
Image Analyst
on 26 Mar 2021
Are you sure you actually tried to adapt my demo? Anyway, it was rather straightforward and you just needed to add a call to fitellipse() at the end of your code. It's attached and produces this plot.
More Answers (1)
Matt J
on 31 Mar 2021
Edited: Matt J
on 31 Mar 2021
Theta should come araound zero degree but it is giving 68 degree and 44 degree.
Using ellipticalFit() in,
[X,Y]=deal( smoothX(jdx:jdx+200000,1),smoothY(idx:idx+200000,1) );
fitobj=ellipticalFit([X,Y].')
[hFit,hData]=plot(fitobj,{'Color','r','LineWidth',3},{'SizeData',2});
xlabel 'X'
ylabel 'Y'
legend([hFit,hData],'Fit','Data')
gives me and angle of about 79 degrees (or 11 degrees to the Y axis). I don't know how close to zero degrees you expected, but the tilt angle in your samples is very visible, so it couldn't be too close.
fitobj =
ellipticalFit with properties:
center: [-0.0156 -0.0130]
a: 0.5679
b: 0.4198
angle: 79.2091
0 Comments
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!