4D millimeter-wave radar algorithm design 2--detailed design of traditional algorithms

1. Algorithm process

        Following the processing flow of 3D millimeter-wave radar, 4D radar is similar, as shown in the figure below:

        The core difference lies in a series of processing at the beginning of target clustering, which will be described later.

2. 4D millimeter wave radar preprocessing

        Preprocessing mainly includes calibration, coordinate transformation and dynamic and static separation.

        Calibrate using a spirit level, angle counter, collect data and analyze, and get the horizontal and pitch angles.

        Coordinate transformation can be done using transformation matrix.

        The dynamic and static separation is mainly judged according to the projection of the radial velocity in the forward direction of the vehicle.

3. 4D millimeter wave radar main processing

    1. Target clustering

       DBSCAN is a classic target clustering algorithm, the algorithm itself is not complicated, you can refer to these articles

       Detailed explanation of DBSCAN clustering_deephub's blog-CSDN blog_dbscan clustering .

       Improved DBSCAN Clustering Algorithm Based on KD Tree

       For 4D radar, what is more important is the processing after clustering.

       After clustering, basic information can be obtained, such as target length, width, height, volume, projected area, RCS , and various statistical distributions. According to these information, the target can be classified and the classification result of the target can be obtained.

       Additionally, the speed and heading of the target can be estimated.

       The target orientation angle is α, and the projection of the target point cloud in the direction of velocity is the radial velocity Vr of the point cloud , then:

        V(i)*cos(θ(i)-α) = Vr(i)

        V(i) = Vr(i) / cos(θ(i)-α)

        Since the vehicle is a rigid body, the speed of each point of the body is equal, then V(1) = V(2) = ... = V(n)

        V(i) = V(j) = V

        Vr(i) / cos(θ(i)-α) = Vr(j) / cos(θ(j)-α)

        The orientation angle α of the point cloud can be calculated, and then the real speed and horizontal and vertical speed of the target can be obtained.

        Since the measurement of radar speed may be ambiguous or wrong, the result of any two points has a high error probability, but the result obtained by fitting multiple points has a high degree of feasibility, which can accurately estimate the target orientation and horizontal and vertical speed.

        Reduce the equation by Vr(i) = V* cos(θ(i)-α) = V*(cos(θ(i))cos(α) + sin(θ(i))sin(α))

        Divide both sides by V*Vr(i)*cos(α), then we have

        cos(θ(i))/Vr(i) = 1 / V cos(α) - tan(α) * sin(θ(i))* /Vr(i)

        令y(i) = cos(θ(i))/Vr(i), x(i) = sin(θ(i))* /Vr(i),b = 1 / V cos(α), k = - tan(a)则有

        y(i) = k * x(i) + b

        According to the least squares fitting formula, the estimated values ​​of V and α can be obtained.

        For pedestrians, because it is not a rigid body motion, the above method is not applicable.

        For more information, please refer to the paper interpretation of this blog:

Interpretation of the paper--Direction of Movement Estimation of Cyclists with a High-Resolution Automotive Radar

2. Extended object tracking

        The number of 4D radar point clouds is large, and point target tracking is no longer applicable, and extended target tracking needs to be introduced.

   

    The left side of the picture above is the point target association, the blue five-pointed star is the reference point, generally the center of the target, and the target is updated by associating the red point cloud.

    The right side is the extended target association, the blue box is the target outline, the blue five-pointed star is the reference corner point, there are 4 in the figure, and the large target can be 8 or even 16.

    When associating, all point clouds are no longer associated, but the geometric contours after clustering are associated, and the IOU is used for association, that is, the overlapping area of ​​the contours is calculated.

    When updating the target, first use the coordinates of each corner point for filtering, and then update the final target.

Guess you like

Origin blog.csdn.net/weixin_41691854/article/details/126299988