@PublicationReferences(references=@PublicationReference(author="Wikipedia",title="Kalman filter",type=WebPage,year=2009,url="http://en.wikipedia.org/wiki/Kalman_filter")) public class KalmanFilter extends AbstractKalmanFilter
Modifier and Type | Field and Description |
---|---|
static int |
DEFAULT_DIMENSION
Default autonomous dimension, 1.
|
protected LinearDynamicalSystem |
model
Motion model of the underlying system.
|
currentInput, measurementCovariance, modelCovariance
Constructor and Description |
---|
KalmanFilter()
Creates a new instance of KalmanFilter
|
KalmanFilter(int dim)
Creates an autonomous, fully observable linear dynamical system
with the given dimensionality
|
KalmanFilter(LinearDynamicalSystem model,
Matrix modelCovariance,
Matrix measurementCovariance)
Creates a new instance of LinearUpdater
|
Modifier and Type | Method and Description |
---|---|
KalmanFilter |
clone()
This makes public the clone method on the
Object class and
removes the exception that it throws. |
MultivariateGaussian |
createInitialLearnedObject()
Creates a new initial learned object, before any data is given.
|
LinearDynamicalSystem |
getModel()
Getter for model
|
void |
measure(MultivariateGaussian belief,
Vector observation)
Integrates a measurement into the system, refining the current
belief of the state of the system
|
void |
predict(MultivariateGaussian belief)
Creates a prediction of the system's next state given the current
belief state
|
void |
setModel(LinearDynamicalSystem model)
Setter for model
|
computeMeasurementBelief, computePredictionCovariance, getCurrentInput, getMeasurementCovariance, getModelCovariance, setCurrentInput, setMeasurementCovariance, setModelCovariance, update
learn, learn, update
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
learn
update
public static final int DEFAULT_DIMENSION
protected LinearDynamicalSystem model
public KalmanFilter()
public KalmanFilter(int dim)
dim
- Dimensionality of the LDSpublic KalmanFilter(LinearDynamicalSystem model, Matrix modelCovariance, Matrix measurementCovariance)
model
- Motion model of the underlying system.modelCovariance
- Covariance associated with the system's model.measurementCovariance
- Covariance associated with the measurements.public KalmanFilter clone()
AbstractCloneableSerializable
Object
class and
removes the exception that it throws. Its default behavior is to
automatically create a clone of the exact type of object that the
clone is called on and to copy all primitives but to keep all references,
which means it is a shallow copy.
Extensions of this class may want to override this method (but call
super.clone()
to implement a "smart copy". That is, to target
the most common use case for creating a copy of the object. Because of
the default behavior being a shallow copy, extending classes only need
to handle fields that need to have a deeper copy (or those that need to
be reset). Some of the methods in ObjectUtil
may be helpful in
implementing a custom clone method.
Note: The contract of this method is that you must use
super.clone()
as the basis for your implementation.clone
in interface CloneableSerializable
clone
in class AbstractKalmanFilter
public MultivariateGaussian createInitialLearnedObject()
IncrementalLearner
public LinearDynamicalSystem getModel()
public void setModel(LinearDynamicalSystem model)
model
- Motion model of the underlying system.public void predict(MultivariateGaussian belief)
AbstractKalmanFilter
predict
in class AbstractKalmanFilter
belief
- Current belief statepublic void measure(MultivariateGaussian belief, Vector observation)
AbstractKalmanFilter
measure
in class AbstractKalmanFilter
belief
- Current belief of the state of the systemobservation
- Measurement to integrate.