GeometricEstimator

class giant.calibration.estimators.geometric.geometric_estimator.GeometricEstimator(model, options)[source]

This protocol class serves as the template for implementing a class for doing geometric camera model estimation in GIANT.

Camera model estimation in GIANT is primarily handled by the Calibration class, which does the steps of extracting observed stars in an image, pairing the observed stars with a star catalog, and then passing the observed star-catalog star pairs to a subclass of this protocol-class, which estimates an update to the camera model in place (the input camera model is modified, not a copy). In order for this to work, this protocol defines the minimum required interfaces that the Calibration class expects for an estimator.

The required interface that the Calibration class expects consists of a few readable/writeable properties, and a couple of standard methods, as defined below. Beyond that the implementation is left to the user.

If you are just doing a typical calibration, then you probably need not worry about this protocol and instead can use one of the 2 concrete classes defined in this package, which work well in nearly all cases. If you do have a need to implement your own estimator, then you should implement all the requirements in the protocol, and study the concrete classes from this subpackage for an example of what needs to be done.

Parameters: