Class cv::KalmanFilter#
Kalman filter class. View details
#include <opencv2/video/tracking.hpp>Collaboration diagram for cv::KalmanFilter:
Detailed Description#
Kalman filter class.
The class implements a standard Kalman filter http://en.wikipedia.org/wiki/Kalman_filter, Welch95 . However, you can modify transitionMatrix, controlMatrix, and measurementMatrix to get an extended Kalman filter functionality.
Note
In C API when CvKalman* kalmanFilter structure is not needed anymore, it should be released with cvReleaseKalman(&kalmanFilter)
- Examples
- samples/python/snippets/kalman.py.
Constructor & Destructor Documentation#
KalmanFilter()#
cv::KalmanFilter::KalmanFilter()
Python:
cv.KalmanFilter() -> <KalmanFilter object>
cv.KalmanFilter(dynamParams, measureParams[, controlParams[, type]]) -> <KalmanFilter object>
KalmanFilter()#
cv::KalmanFilter::KalmanFilter(
int dynamParams,
int measureParams,
int controlParams = 0,
int type = CV_32F )
Python:
cv.KalmanFilter() -> <KalmanFilter object>
cv.KalmanFilter(dynamParams, measureParams[, controlParams[, type]]) -> <KalmanFilter object>
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Parameters
dynamParams— Dimensionality of the state.measureParams— Dimensionality of the measurement.controlParams— Dimensionality of the control vector.type— Type of the created matrices that should be CV_32F or CV_64F.
Member Function Documentation#
correct()#
const Mat & cv::KalmanFilter::correct(const Mat & measurement)
Python:
cv.KalmanFilter.correct(measurement) -> retval
Updates the predicted state from the measurement.
Parameters
measurement— The measured system parameters
init()#
void cv::KalmanFilter::init(
int dynamParams,
int measureParams,
int controlParams = 0,
int type = CV_32F )
Re-initializes Kalman filter. The previous content is destroyed.
Parameters
dynamParams— Dimensionality of the state.measureParams— Dimensionality of the measurement.controlParams— Dimensionality of the control vector.type— Type of the created matrices that should be CV_32F or CV_64F.
predict()#
const Mat & cv::KalmanFilter::predict(const Mat & control = Mat())
Python:
cv.KalmanFilter.predict([, control]) -> retval
Computes a predicted state.
Parameters
control— The optional input control
Member Data Documentation#
controlMatrix#
Mat cv::KalmanFilter::controlMatrix
control matrix (B) (not used if there is no control)
errorCovPost#
Mat cv::KalmanFilter::errorCovPost
posteriori error estimate covariance matrix (P(k)): P(k)=(I-K(k)*H)*P’(k)
errorCovPre#
Mat cv::KalmanFilter::errorCovPre
priori error estimate covariance matrix (P’(k)): P’(k)=A*P(k-1)At + Q)/
gain#
Mat cv::KalmanFilter::gain
Kalman gain matrix (K(k)): K(k)=P’(k)Htinv(H*P’(k)*Ht+R)
measurementMatrix#
Mat cv::KalmanFilter::measurementMatrix
measurement matrix (H)
measurementNoiseCov#
Mat cv::KalmanFilter::measurementNoiseCov
measurement noise covariance matrix (R)
processNoiseCov#
Mat cv::KalmanFilter::processNoiseCov
process noise covariance matrix (Q)
statePost#
Mat cv::KalmanFilter::statePost
corrected state (x(k)): x(k)=x’(k)+K(k)(z(k)-Hx’(k))
statePre#
Mat cv::KalmanFilter::statePre
predicted state (x’(k)): x(k)=Ax(k-1)+Bu(k)
temp1#
Mat cv::KalmanFilter::temp1
temp2#
Mat cv::KalmanFilter::temp2
temp3#
Mat cv::KalmanFilter::temp3
temp4#
Mat cv::KalmanFilter::temp4
temp5#
Mat cv::KalmanFilter::temp5
transitionMatrix#
Mat cv::KalmanFilter::transitionMatrix
state transition matrix (A)
Source file#
The documentation for this class was generated from the following file:
opencv2/video/tracking.hpp