## Fitting a conic to a given set of points using Levenberg-Marquardt method

version 1.0.0.0 (2.77 KB) by
Conic fit using algebraic parameters based on Levenberg-Marquardt minimization scheme.

Updated 6 Jul 2011

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.

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 (2022). 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
Created with R2008a
Compatible with any release
##### Platform Compatibility
Windows macOS Linux