trackingIMM
Interacting multiple model (IMM) filter for object tracking
Description
 The trackingIMM object represents an interacting multiple model
      (IMM) filter designed for tracking objects that are highly maneuverable. Use the filter to
      predict the future location of an object, to reduce noise in the detected location, or help
      associate multiple object detections with their tracks.
The IMM filter deals with the multiple motion models in the Bayesian framework. This method resolves the target motion uncertainty by using multiple models at a time for a maneuvering target. The IMM algorithm processes all the models simultaneously and switches between models according to their updated weights.
Creation
Syntax
Description
imm = trackingIMM{trackingEKF,trackingEKF,trackingEKF} with the motion models set as
            constant velocity, constant acceleration, and constant turn, respectively. The filter
            uses the default conversion function, @switchimm.
imm = trackingIMM(trackingFilters)
imm = trackingIMM(trackingFilters,modelConversionFcn)
imm = trackingIMM(trackingFilters,modelConversionFcn,transitionProbabilities)
imm = trackingIMM(___,Name,Value)Name,Value
            pair arguments. Any unspecified properties take default values. Specify any other input
            arguments from previous syntaxes first.
Properties
Object Functions
| predict | Predict state and state estimation error covariance of tracking filter | 
| correct | Correct state and state estimation error covariance using tracking filter | 
| correctjpda | Correct state and state estimation error covariance using tracking filter and JPDA | 
| distance | Distances between current and predicted measurements of tracking filter | 
| likelihood | Likelihood of measurement from tracking filter | 
| clone | Create duplicate tracking filter | 
| initialize | Initialize state and covariance of tracking filter | 
| smooth | Backward smooth state estimates of trackingIMMfilter | 
| retrodict | Retrodict filter to previous time step | 
| retroCorrect | Correct filter with OOSM using retrodiction | 
| retroCorrectJPDA | Correct tracking filter with OOSMs using JPDA-based algorithm | 
| tunableProperties | Get tunable properties of filter | 
| setTunedProperties | Set properties to tuned values | 
| setMeasurementSizes | Sets the sizes of the measurement and measurement noise | 
Examples
References
[1] Bar-Shalom, Yaakov, Peter K. Willett, and Xin Tian. Tracking and data fusion. Storrs, CT, USA:: YBS publishing, 2011.
[2] Blackman, Samuel, and Robert Popoli. "Design and analysis of modern tracking systems." Norwood, MA: Artech House, 1999.
Extended Capabilities
Version History
Introduced in R2018bSee Also
trackingKF | trackingEKF | trackingUKF | trackingCKF | trackingGSF | constvel | constacc | constturn