Digital signal processing 8-principle of multi-target tracking

table of Contents

I. Introduction

2. Multi-target tracking framework

3. Flow chart of target tracking

Four, constant speed model

Five, extended Kalman filter

Six, noise treatment

Seven, track association

8. Track management


I. Introduction

        The target detected by the radar can be a pedestrian, a vehicle, a guardrail, etc. To ensure a stable output of the target, a target tracking algorithm must be used after the target is detected by the radar data signal processing. If you want the output of the software to be better, you must design it carefully. When designing the tracking algorithm, you must consider the attributes of the target, that is, the characteristics. Summarize the scenes where the classification targets appear, design different associated doors and motion models based on these features and scenes, and then implement them step by step to be okay.

2. Multi-target tracking framework

Multi-target tracking takes the target size, measurement value and measurement error covariance output by clustering as input, and outputs the position, speed and size of the target.

Step1: Preprocessing, remove the targets at extreme angles, poor angle SNR and targets outside the maximum distance defined by x/y.

Step2: State prediction, one-step time prediction based on constant speed model and calculation of state error covariance, measurement and prediction

Step3: Track correlation, for each real measurement data, calculate the residual error from the measurement prediction to determine whether the i-th tracker is associated or not, and then score the measurement in the gate. (Distance cost function)

Step4: Unlinked measurement redistribution, create a new tracker tracker

Step5: Related measurement for further tracking filtering

 

3. Flow chart of target tracking

 

Four, constant speed model

Here, the installation angle is not considered for the time being, but the installation angle needs to be considered when installing on a vehicle or a ship. The final target is the target azimuth angle in the vehicle's coordinate system. And here does not consider the target height, there is no vertical FOV. Whether there is an elevation angle is actually something that should be considered when designing an antenna. If the layout of the transmitting antenna and the receiving antenna are not on the same straight line, the height can be measured if there is a height interval.

Equation of state:

In the above formula:

Note: w(n) is the process noise vector, and its covariance is Q(n)4x4.

Measurement equation:

In the above formula:

Note: V(n) is the measurement noise vector, and the covariance is R(n)3x3

The above is a non-linear equation, using the standard EKF, using Taylor expansion to retain the first-order term to linearize it:

 

Five, extended Kalman filter

Why use EKF?

In fact, there is a nonlinear relationship between the established model and the data (r, r', theta) measured by the radar, so the first-order Taylor expansion can be used to transform it into a linear relationship.

The implementation of EKF is actually divided into two steps: prediction and update, including the following five equations, which can be used directly in the code.

How to choose noise?

Q represents the statistical characteristic du of the system model bai. Increasing the value of the element in Q is equivalent to increasing the system noise or increasing the uncertainty of the system parameter version, so that the weighted gain matrix Gf increases and increases The system corrects the weight to improve the dynamic performance and steady-state value of the system.
The matrix R characterizes the measurement noise. Increasing the value of the element in R means increasing the influence of the measurement noise, while reducing Gf, weakening the system correction weight, and reducing the system's transient response and steady-state value. Therefore, the selection of matrices Q and R is contradictory, and the selection of the two should be based on the specific circumstances.

 

Six, noise treatment

Since the measurement noise R is determined by the sensor itself, it is only necessary to design the model process noise Q here. Although Rn is not involved, I will still give how Rn is calculated. There are generally two models for Q. One is segmented white noise and the other is continuous white noise. The difference is not discussed here. They are actually According to the empirical tuning value, the segmented white noise model is used directly here.

The segmented white noise model is as follows:

Its matrix form is:

Note: The acceleration variance is an empirical value

Initial Q selection: select according to the activation time of the tracking filter. The project assumes that the new tracker has high "process noise", allows the fastest convergence, and selects the highest noise; the closer target has a larger SNR to compensate for the longer Large noise measurement, assuming higher process noise;

Seven, track association

The purpose of track correlation is to reduce the amount of calculation, filter all the measurement points, and use the real measurement points as candidate points at the next moment (the tracker is associated). In fact, this is the most changed place in the project to adapt Different scenarios (long and short distances, new and old trackers, etc.). In addition, there are various types of related wave gates, and the variables that need to be related also need to be studied, but they have a lot to do with the measured value.

The setting of the associated wave gate:

An ellipsoid is used as the shape of the wave gate. The above figure shows the threshold shape generated by the measurement residuals of the target at different speeds and azimuths at a longitudinal distance of 60 meters.

In the above formula, a, b, and c respectively represent the distance (m), angle (rad), and speed (m/s) of the target.

In this project, expandable wave gates are introduced, that is, for new or distant trackers, assuming that the process noise is slightly larger, the range of correlation can be expanded. (The parameters here can adjust the size of the wave gate and the threshold of the wave gate, and affect the correlation of measured values)

 

8. Track management

Track management is used to manage tracker, when to create, delete, activate, etc.

The flow chart of trajectory management is as follows:

First check whether the current tracker is valid. If so, check whether the measurement point can enter the gate and score the entry. The person with the highest score can mark it as associated and update the current tracker status age=0, Tracking times tick++. Mark its associated tracker in the assocMeasIndx list.

       If the tracker is invalid, add it directly to the freeTrackerIndxArray list. If the wave gate is not passed, or the measurement error (innovation) covariance matrix is ​​irreversible, mark it as not_associated. If the tracker already exists, age++, tick--. When the number of lost associations exceeds a certain threshold, add it to the freeTrackerIndxArray list.

       For unassociated points, determine whether to reassociate and establish a new tracker according to the allocate reallocation algorithm (2.1.4). If possible, add the measurement point index to the selectIndxArray list and correspond to the measurement in the assocMeasIndx list The point is set as associated.

PS:

assocMeasIndx: indicates which tracker the measurement point is associated with, initialized to not_associated.

freeTrackerIndxArray: Indicates which existing tracker to release, initialized to not_associated.

SelectIndxArray: Indicates which released tracker should be associated with the unrelated measurement point

 

The description of its state machine is as follows:

 

Guess you like

Origin blog.csdn.net/qinze5857/article/details/109668188