| cv.KalmanFilter - MATLAB File Help | Go to online doc for cv.KalmanFilter |
Kalman filter class
The class implements a standard
Kalman filter, [Welch95].
However, you can modify transitionMatrix, controlMatrix, and
measurementMatrix to get an extended Kalman filter functionality.
% initialization
kf = cv.KalmanFilter(4,2);
kf.statePre = [10;20;0;0]; % initial state prediction
kf.transitionMatrix = [1,0,1,0; 0,1,0,1; 0,0,1,0; 0,0,0,1];
kf.measurementMatrix([1,4]) = 1;
kf.processNoiseCov = eye(4) * 1e-4;
kf.measurementNoiseCov = eye(2) * 1e-1;
kf.errorCovPost = eye(4) * 0.1;
% dynamics
p_pred = kf.predict(); % update internal state
measure = [11;21]; % measurement
p_est = kf.correct(measure); % correct
[Welch95]:
Greg Welch and Gary Bishop. An introduction to the kalman filter, 1995. PDF
| Superclasses | handle |
| Sealed | false |
| Construct on load | false |
| KalmanFilter | KalmanFilter constructor |
| controlMatrix | control matrix `(B)` (not used if there is no control) |
| errorCovPost | posteriori error estimate covariance matrix |
| errorCovPre | priori error estimate covariance matrix |
| gain | Kalman gain matrix `(K(k)): K(k)=P'(k)*Ht*inv(H*P'(k)*Ht+R`) |
| id | Object ID |
| measurementMatrix | measurement matrix `(H)` |
| measurementNoiseCov | measurement noise covariance matrix `(R)` |
| processNoiseCov | process noise covariance matrix `(Q)` |
| statePost | corrected state `(x(k)): x(k)=x'(k)+K(k)*(z(k)-H*x'(k))` |
| statePre | predicted state `(x'(k)): x(k)=A*x(k-1)+B*u(k)` |
| transitionMatrix | state transition matrix `(A)` |
| addlistener | Add listener for event. | |
| correct | Updates the predicted state from the measurement | |
| delete | Destructor | |
| eq | == (EQ) Test handle equality. | |
| findobj | Find objects matching specified conditions. | |
| findprop | Find property of MATLAB handle object. | |
| ge | >= (GE) Greater than or equal relation for handles. | |
| gt | > (GT) Greater than relation for handles. | |
| init | Re-initializes Kalman filter. The previous content is destroyed | |
| Sealed | isvalid | Test handle validity. |
| le | <= (LE) Less than or equal relation for handles. | |
| listener | Add listener for event without binding the listener to the source object. | |
| lt | < (LT) Less than relation for handles. | |
| ne | ~= (NE) Not equal relation for handles. | |
| notify | Notify listeners of event. | |
| predict | Computes a predicted state |
| ObjectBeingDestroyed | Notifies listeners that a particular object has been destroyed. |