WSO2 Complex Event Processor is succeeded by WSO2 Stream Processor. To view the latest documentation for WSO2 SP, see WSO2 Stream Processor Documentation.
||
Skip to end of metadata
Go to start of metadata

This extension provides Kalman filtering capabilities to Siddhi. This allows you to detect outliers of input data. Following are the functions of the Kalman Filter extension.

Kalman Filter function

This function uses measurements observed over time containing noise and other inaccuracies, and produces estimated values for the current measurement using Kalman algorithms. The parameters used are as follows.

  • measuredValue : The sequential change in the observed measurement. e.g., 40.695881
  • measuredChangingRate : The rate at which the measured change is taking place. e.g., The velocity with which the measured value is changed can be 0.003 meters per second.
  • measurementNoiseSD : The standard deviation of the noise. e.g., 0.01
  • timestamp : The time stamp of the time at which the measurement was carried out.
Syntax<double, double> kf:kalmanFilter(<double> measuredValue)
Extension TypeFunction
Example
  • 1st round: kf:kalmanFilter(-74.178444) returns an estimated value of -74.178444.
  • 2nd round: kf:kalmanFilter(-74.175703) returns an estimated value of -74.1770735006853.
  • 3rd round: kf:kalmanFilter(-74.177872) returns an estimated value of  -74.1773396670348.
Syntax<double, double> kf: kalmanFilter(<double> measuredValue, <double> measurementNoiseSD)
Extension TypeFunction
Example
  • 1st round: kf:kalmanFilter(-74.178444, 0.003) returns an estimated value of -74.178444.
  • 2nd round: kf:kalmanFilter(-74.175703, 0.003) returns an estimated value of -74.17707350205573.
  • 3rd round: kf:kalmanFilter(-74.177872, 0.003) returns an estimated value of  -74.177339667771.
Syntax<double, double> kf: kalmanFilter(<double> measuredValue,  <double> measuredChangingRate, <double> measurementNoiseSD, <long> timestamp)
Extension TypeFunction
Example
  • 1st round: kf:kalmanFilter(-74.178444, 0.003, 0.01, time:timestampInMilliseconds() ) returns an estimated value of -74.1784439700006.
  • 2nd round: kf:kalmanFilter(-74.178444, 0.003, 0.01, time:timestampInMilliseconds() ) returns an estimated value of -74.1784439700006.
  • 3rd round: kf:kalmanFilter(-74.177872, 0.003, 0.01, time:timestampInMilliseconds()) returns an estimated value of  -74.17697314316393.
  • No labels