Fitting a conic to a given set of points using Levenberg-Marquardt method
A general conic can be uniquely describe by the following equation up to a scale factor: Ax^2+Bxy+Cy^2+Dx+Ey+F=0
Then (A,B,C,D,E,F) is often called algebraic parameter vector of the conic.
Usage: [ParA,RSS,iters,code] = fit_conicLMA(XY,ParAini,LambdaIni)
Child functions:
Residuals_ellipse, Residuals_hyperbola, AtoG( can be found from previous submissions) , JmatrixLMA (included in the main function)
Input:
XY:given points<XY(i,1),XY(i,2)> i=1 to n
ParAini = [A,B,C,D,E,F]'- the initial parameter vector
LambdaIni: the initial value of the control parameter Lambda
Output:
ParA: vector of algebraic parameters of the conic found
RSS: the Residual Sum of Squares (the sum of squares of the distances)
iters:# of iterations
code: type of the conic:
1 - ellipse
2 - hyperbola
3 - parabola
-1 - degenerate cases
0 - imaginary ellipse
4 - imaginary parallel lines
(in practice, only ellipses and hyperbolas should turn up)
Cite As
Hui Ma (2024). Fitting a conic to a given set of points using Levenberg-Marquardt method (https://www.mathworks.com/matlabcentral/fileexchange/32108-fitting-a-conic-to-a-given-set-of-points-using-levenberg-marquardt-method), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
- AI, Data Science, and Statistics > Statistics and Machine Learning Toolbox > Industrial Statistics > Design of Experiments (DOE) >
Tags
Acknowledgements
Inspired: lm_plots
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
Version | Published | Release Notes | |
---|---|---|---|
1.0.0.0 |