LMcircleFit: Geometric circle fit (minimizing orthogonal distances) based...

Description Usage Arguments Value Author(s) Source References Examples

Description

LMcircleFit applies a Geometric circle fit (minimizing orthogonal distances) based on the standard Levenberg-Marquardt scheme

Usage

1
LMcircleFit(XY, ParIni, LambdaIni = 1, epsilon = 1e-06, IterMAX = 50)

Arguments

XY

array of sample data

ParIni

initial guess (a, b, R)

LambdaIni

initial value for the correction factor lambda

epsilon

tolerance (small threshold)

IterMAX

maximum number of (main) iterations, usually 10-20 will suffice

Value

vector(a, b, R)

vector with the estimates for the circle: center (a,b) and radius R

Author(s)

Jose Gama

Source

Nikolai Chernov, 2014 Fitting ellipses, circles, and lines by least squares http://people.cas.uab.edu/~mosya/cl/

Nikolai Chernov, 2010 Circular and linear regression: Fitting circles and lines by least squares Chapman & Hall/CRC, Monographs on Statistics and Applied Probability, Volume 117

References

Nikolai Chernov, 2014 Fitting ellipses, circles, and lines by least squares http://people.cas.uab.edu/~mosya/cl/

Nikolai Chernov, 2010 Circular and linear regression: Fitting circles and lines by least squares Chapman & Hall/CRC, Monographs on Statistics and Applied Probability, Volume 117

Examples

1
2
3
4
5
xy<-calculateCircle(0,0,200,50,randomDist=TRUE,noiseFun=function(x) (x+rnorm(1,mean=0,sd=50)))
plot(xy[,1],xy[,2],xlim=c(-250,250),ylim=c(-250,250));par(new=TRUE)
c4 <- LMcircleFit(xy)
xyc4<-calculateCircle(c4[1],c4[2],c4[3])
plot(xyc4[,1],xyc4[,2],xlim=c(-250,250),ylim=c(-250,250),col='cyan',type='l')

Example output

Loading required package: pracma
Loading required package: geigen

conicfit documentation built on May 2, 2019, 3:11 a.m.