@ALDAOperator(genericExecutionMode=NONE, level=STANDARD) public class FitQuadraticCurveToPointSet extends MTBOperator
A general quadratic curve is defined by the following implicit equation:
This operator estimates the parameters of a conic in a least square sense from a given set of 2D points. The point set is required to contain at least 5 points which is the minimal number of points necessary to uniquely estimate the parameters.
The result is given by an object of type MTBQuadraticCurve2D
which
can be asked for the concrete type of the estimated conic, e.g., if it is
an ellipse, hyperbola or parabola.
MTBQuadraticCurve2D
,
Ellipses on WolframMathWorld,
Efficient Java Matrix LibraryModifier and Type | Field and Description |
---|---|
private MTBQuadraticCurve2D |
curve
Estimated curve.
|
private Vector<Point2D.Double> |
points
Input set of points.
|
Constructor and Description |
---|
FitQuadraticCurveToPointSet()
Default constructor.
|
Modifier and Type | Method and Description |
---|---|
MTBQuadraticCurve2D |
getEstimatedCurve()
Get estimated curve.
|
protected void |
operate() |
void |
setPointSet(Vector<Point2D.Double> p)
Set input set of 2D points.
|
void |
validateCustom() |
readResolve
addOperatorExecutionProgressEventListener, addParameter, addParameter, addParameterUnconditioned, fieldContained, fireOperatorExecutionProgressEvent, getALDPortHashAccessKey, getConstructionMode, getDocumentation, getHidingMode, getInactiveParameterNames, getInInoutNames, getInInoutNames, getInNames, getInOutNames, getMissingRequiredInputs, getName, getNumParameters, getOutInoutNames, getOutNames, getParameter, getParameterDescriptor, getParameterDescriptorUnconditioned, getParameterNames, getParameterUnconditioned, getSupplementalNames, getVerbose, getVersion, handleOperatorExecutionProgressEvent, hasInOutParameters, hasParameter, isAnnotatedParameter, isConfigured, print, print, print, printInterface, printInterface, readHistory, reinitializeParameterDescriptors, removeOperatorExecutionProgressEventListener, removeParameter, runOp, runOp, runOp, setConstructionMode, setConstructionMode, setConstructionMode, setHidingMode, setName, setParameter, setParameterUnconditioned, setVerbose, toStringVerbose, unconfiguredItems, validate, validateGeneric, writeHistory, writeHistory, writeHistory
@Parameter(label="Point Set", required=true, dataIOOrder=0, direction=IN, description="Point Set.") private Vector<Point2D.Double> points
@Parameter(label="Curve", dataIOOrder=1, direction=OUT, description="Estimated curve.") private MTBQuadraticCurve2D curve
public FitQuadraticCurveToPointSet() throws de.unihalle.informatik.Alida.exceptions.ALDOperatorException
de.unihalle.informatik.Alida.exceptions.ALDOperatorException
- Thrown in case of operate failure.public void validateCustom() throws de.unihalle.informatik.Alida.exceptions.ALDOperatorException
validateCustom
in class de.unihalle.informatik.Alida.operator.ALDOperator
de.unihalle.informatik.Alida.exceptions.ALDOperatorException
protected void operate()
operate
in class de.unihalle.informatik.Alida.operator.ALDOperator
public void setPointSet(Vector<Point2D.Double> p)
p
- Set of points to process.public MTBQuadraticCurve2D getEstimatedCurve()
Copyright © 2010–2020 Martin Luther University Halle-Wittenberg, Institute of Computer Science, Pattern Recognition and Bioinformatics. All rights reserved.