dstl / Stone-Soup

A software project to provide the target tracking community with a framework for the development and testing of tracking algorithms.
https://stonesoup.rtfd.io
MIT License
414 stars 140 forks source link

Incorporating target feature into tracking #237

Closed Huang-Chuan closed 4 years ago

Huang-Chuan commented 4 years ago

Dear experts, Is there a way to incorporating target feature in tracking? My thoughts was to utilize target feature in gating and track scoring and update feature in each scan. But I am not sure how to do this. Is it the right way to put extracted target feature into detection metadata field and then modify associate and update method accordingly? Or there is another shortcut?

Many thanks.

sdhiscocks commented 4 years ago

Is this a feature you could add to the state vector, i.e. numerical value? Then you could add a random walk transition model for prediction.

Huang-Chuan commented 4 years ago

@sdhiscocks Yes, it is numerical value. However, I want to some fancy regression model to fit feature vector over scans.

sdhiscocks commented 4 years ago

So you could instead have it on your meta data for detections, which tracks will then also have that same meta data field (taking the value from most recent detection that was used to update it). You could then create a custom gater (like the FilteredDetectionsGater), which gates out those which value is outside of a tolerance.

DaveKirkland commented 4 years ago

@sdhiscocks What happens to the metadata when multiple measurements/detections are blended together to form the update e.g. PDA or JPDA? Are there hooks available for the user to control what happens to the metadata in these cases?

sdhiscocks commented 4 years ago

@DaveKirkland the meta data is applied from all detections in reverse sorted order, such that "best" hypothesis takes preference.

You could customise the behavior by subclassing Track, and have initiator yield your subclass.