An Adaptive Target Association Method and System Based on Multi-Source Data

By fusing spaceborne sensor data in a planar coordinate system, an adaptive target association method was used to solve the problem of maritime target identification and trajectory tracking caused by intermittent satellite visits, thereby improving the accuracy and stability of target trajectory association.

CN119225172BActive Publication Date: 2025-12-02SHANGHAI SATELLITE ENG INST
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202411184577.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-08-27
Publication Date
2025-12-02
Estimated Expiration
2044-08-27

AI Technical Summary

Technical Problem

Satellite access to the monitored area is intermittent and at long intervals, resulting in a low revisit rate for information acquired by spaceborne sensors, as well as uncertainty and incompleteness, making it difficult to achieve stable tracking and identification of maritime targets.

Method used

By projecting the position information acquired by the spaceborne sensors into a planar coordinate system, fusing the observation data from different sensors, and using an adaptive target association method, including preprocessing, filtering duplicate position information, calculating the matching metric matrix, and applying Kalman filtering for trajectory updates, the impact of sensor positioning accuracy errors can be reduced.

Benefits of technology

It effectively reduces the interference of sensor positioning accuracy error, improves the accuracy and stability of target trajectory association, and realizes effective tracking of maritime targets.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119225172B_ABST
    Figure CN119225172B_ABST
Patent Text Reader

Abstract

This invention provides an adaptive target association method and system based on multi-source data. The steps include: S1: preprocessing to obtain boundary thresholds; S2: inputting the current target detection result and filtering duplicate location information; S3: accumulating and storing data from the same source; S4: if the current payload detection result is empty, reading and processing the data from the next payload; S5: determining if there is an associated trajectory; S6: if not, using the target point as the starting point of a new trajectory; S7: if so, calculating a search threshold to determine the search area; S8: calculating the matching metric matrix between the trajectory and the target position; S9: performing two-dimensional allocation to obtain the optimal matching result; S10: updating the trajectory status; S11: determining unassociated target points; S12: determining whether a new trajectory has been formed; S13: updating the trajectory set; and S14: iterative processing. This method is suitable for maritime target trajectory association and tracking under multi-payload observation backgrounds, effectively handling positioning errors and inconsistent time intervals, and achieving continuous and stable target tracking.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of target recognition and tracking technology, specifically, it relates to an adaptive target association method and system based on multi-source data. Background Technology

[0002] Due to the limitations of their orbital cycles, satellite visits to the monitored area are intermittent, with long intervals between visits, typically on the order of hours. Therefore, the revisit rate of satellite-acquired information is low. Furthermore, influenced by the raw observation and processing algorithms, satellite-acquired information often possesses a degree of uncertainty and incompleteness. Under these conditions, it is difficult to reliably and effectively track and identify every target within the monitored area based solely on satellite-acquired information.

[0003] Chinese patent document CN105654133A discloses a ship trajectory fusion system and its implementation method based on multi-source data, including: Step 1: A ship position coordinate transformation module transforms the polar coordinates of the received ship positions detected by sonar and radar to the WGS-84 coordinate system, that is, unifies the ship positions detected by sonar, radar, and AIS to the same coordinate system, and transmits the data to a ship position interpolation module; Step 2: When any set of ship position data processed in Step 1 is received from sonar, radar, or AIS, the ship position interpolation module performs interpolation on the other two sets of unreceived ship positions. The process involves several steps: Step 1: Interpolation is performed to synchronize time-asynchronous sonar, radar, or AIS detection data, and the data is then transmitted to the vessel trajectory association module. Step 2: When two or three of the three devices (sonar, radar, or AIS) simultaneously detect the same vessel, the device outputs that the vessel's trajectory is correlated. Step 3: The underwater and surface vessel judgment module makes a judgment based on the results of each vessel trajectory association analysis from the vessel trajectory association module. Step 4: The underwater and surface vessel judgment module transmits the vessel fusion trajectory result and the vessel judgment result from the associated trajectory fusion module to the vessel trajectory display module. However, this technology projects position information from different sources onto the same coordinate system without deduplicating the positions of identical targets. The position information of the same target can interfere with trajectory association, thus affecting the association accuracy.

[0004] Chinese patent document CN106950956A discloses a vehicle trajectory prediction system that integrates kinematic and behavioral cognitive models. The system includes: an interactive mixing module that mixes the prediction results of each prediction module from the previous moment and outputs a mixed result, which is then used for prediction at the next moment; prediction modules include a behavioral cognitive trajectory prediction module based on behavioral cognition and a kinematic trajectory prediction module based on kinematics, which predict based on the mixed result output by the interactive mixing module, outputting the prediction results of each module, including vehicle position and covariance matrix; and a fusion update module that fuses the final prediction results based on the prediction results, updates the weight coefficients, and outputs the vehicle position and covariance matrix at a future moment. However, this technology is suitable for continuous and stable moving target observations and cannot effectively handle situations where the target position has random precision errors and the observation sequence is discontinuous under different load observation modes.

[0005] In real-world scenarios, observing moving targets in a real sea environment presents significant challenges. Due to the influence of satellite orbital periods, spaceborne sensors access the monitored area intermittently, with long intervals between visits. Furthermore, sensor observations are inherently uncertain, exhibiting random positioning accuracy errors, and the errors of different sensors are not entirely consistent, making it difficult to observe continuous and stable position sequences. This greatly increases the difficulty of maritime target identification and trajectory tracking. Traditional target identification and tracking algorithms have significant limitations when dealing with sparse target position information and large position accuracy errors, failing to effectively correlate and maintain trajectory continuity. Summary of the Invention

[0006] To address the shortcomings of existing technologies, the purpose of this invention is to provide an adaptive target association method and system based on multi-source data.

[0007] An adaptive target association method based on multi-source data provided by the present invention includes:

[0008] Step S1: Perform preprocessing operations to obtain the mesh boundary threshold;

[0009] Step S2: Input the target detection result at the current time and perform filtering to remove duplicate position information provided by different payloads for the same target;

[0010] Step S3: Determine whether the target detection result at the current moment has the same load source as the data at the previous moment, and accumulate and store the data with the same load source;

[0011] Step S4: If the target detection result obtained by the current payload is empty, then read the accumulated data obtained by the next payload for subsequent processing;

[0012] Step S5: Determine if there is currently an associated trajectory;

[0013] Step S6: If it does not exist, then take each target point as the starting point of the trajectory, assemble it into a defined format and store it;

[0014] Step S7: Otherwise, calculate the adaptive search threshold based on the current load data and the last position point of the trajectory, and determine the sector search area;

[0015] Step S8: Further calculate the matching metric matrix between the associated trajectory and the target detection location information in the current frame;

[0016] Step S9: Perform a two-dimensional distribution on the calculated matching metric matrix to obtain the optimal matching result;

[0017] Step S10: Based on the matching results, apply the prediction method to update the current associated trajectory status;

[0018] Step S11: Determine if there are any unassociated target points in the current frame;

[0019] Step S12: For the associated target, compare its corresponding value in the matching metric matrix with the threshold value to determine whether to add a new trajectory; otherwise, take the unassociated target point as the starting point of the new trajectory.

[0020] Step S13: Update the trajectory set according to the state of each trajectory at the last moment;

[0021] Step S14: Wait for the target detection results of the next frame to be processed iteratively and the trajectory set is updated.

[0022] Preferably, step S1 includes:

[0023] Step S1.1: Input the target motion and load observation characteristic parameters;

[0024] Step S1.2: Determine the segmentation period based on the load observation characteristics;

[0025] Step S1.3: Calculate the target's movement range within a fixed period based on its motion characteristics;

[0026] Step S1.4: Divide the observation area into grids based on motion characteristics;

[0027] Step S1.5: Calculate the boundary coordinate information of each grid region;

[0028] Step S1.6: Calculate and store the coordinate coverage threshold for each grid.

[0029] Preferably, step S2 includes:

[0030] Step S2.1: Input the single-frame target detection result, and find the corresponding positioning longitude error according to the load source of the target point;

[0031] Step S2.2: Iterate through the two targets sequentially to determine whether they are from the same load source;

[0032] Step S2.3: If the loads are from different sources, project the positions of the two target points being compared onto a plane coordinate system;

[0033] Step S2.4: Calculate the positional error between two target points projected into the planar coordinate system;

[0034] Step S2.5: Determine whether the position error is greater than the threshold;

[0035] Step S2.6: For target point pairs whose position error does not exceed the threshold, draw circles with the error range as the radius and update the position of the target points;

[0036] Step S2.7: Continue processing the target detection results of the next frame for iterative updates.

[0037] Preferably, step S2.3 includes:

[0038] Step S2.3.1: Project the meridians and parallels on the Earth's surface onto a cylindrical surface, and then unfold the cylindrical surface into a planar map, where the circumference is regarded as the X-axis;

[0039] Step S2.3.2: Convert longitude from degrees to radians, according to the following formula:

[0040] x_radian = lon * PI / 180

[0041] Where x_radian represents the corresponding radian value, lon represents the longitude value, and PI represents pi;

[0042] Step S2.3.3: Convert latitude from degrees to radians, according to the following formula:

[0043] y_radian = lat * PI / 180

[0044] Where y_radian represents the corresponding radian value, lat represents the latitude value, and PI represents pi;

[0045] Step S2.3.4: Perform the Miller projection conversion according to the following formula:

[0046] y_miller=1.25*log(tan(0.25*PI+0.4*y_radian))

[0047] Among them, y millerThis represents the converted value of radians through Miller projection, where PI represents pi and y_radian represents the radian value corresponding to latitude.

[0048] Step S2.3.5: Convert the radians into actual distances using the following formula:

[0049] x=(W / 2)+(W / (2*PI))*x_radian

[0050] y=(H / 2)+(H / (2*mill))*y_radian

[0051] Where x represents the x-axis coordinates after transformation, y represents the y-axis coordinates after transformation, W represents the X-axis, which is equal to the Earth's circumference, PI represents pi, x_radian represents the radian value corresponding to longitude, H represents the Y-axis, which is approximately equal to half the Earth's circumference, mill represents a constant in the Miller projection, ranging from approximately ±2.3, and y_radian represents the radian value corresponding to latitude.

[0052] Preferably, step S2.6 includes:

[0053] Scenario 1: The error ranges of the two target points do not overlap;

[0054] Scenario 2: The error ranges of the two target points overlap but do not intersect;

[0055] Scenario 3: The error ranges of the two target points overlap and their intersection point is on the same side of the centers of the two circles;

[0056] Case 4: The error ranges of the two target points overlap and their intersection point is on opposite sides of the two circles' centers;

[0057] In step S2.6, if the target position error obtained by different loads at the same time is Case 1, the target point position coordinates are not updated; if it is Case 2, the target position is updated to the center position coordinates of the small radius circle; if it is Case 3 or Case 4, the target position is updated to the midpoint of the line segment passing through the intersection of the two circles.

[0058] In step S2.6, if the target position error obtained by different loads at the same time is within the set identity recognition range, the target position is updated to the center position of the overlapping area of ​​the positioning accuracy error range corresponding to different loads.

[0059] Preferably, step S7 includes:

[0060] Step S7.1: Calculate the number of frames lost;

[0061] Step S7.2: Calculate the upper and lower thresholds of the target point correlation error;

[0062] Step S7.3: Calculate the upper and lower limit thresholds of the search error along the coordinate system for the position coordinates.

[0063] Preferably, step S8 includes:

[0064] Step S8.1: Input a single associated trajectory and predict the position at the next moment based on the position information of the trajectory at the last moment;

[0065] Step S8.2: Calculate the difference between the detected target position and the trajectory prediction position in each direction of the current processing frame;

[0066] Step S8.3: Determine whether the coarse condition for non-association is met;

[0067] Step S8.4: For detected target points that do not meet the coarse judgment condition of non-association, calculate the error between their position and the predicted trajectory.

[0068] Step S8.5: Compare the position error with the threshold value, and modify the correlation degree corresponding to the matching metric matrix;

[0069] Step S8.6: Continue processing the next formed trajectory and iteratively update it.

[0070] Preferably, in step S9, the two-dimensional allocation is performed based on the calculated matching metric matrix according to the following formula:

[0071]

[0072] The optimal matching solution is

[0073] Among them, F * Describes a two-dimensional allocation function, m ij Represents the matching metric matrix The (i, j)th element; f ij Representing the allocation matrix The (i, j)th element, which is a binary variable; C * This represents the optimal matching solution that satisfies the two-dimensional assignment function, where n1 represents the number of trajectories; n2 represents the number of detected target points; (z 1i , z 2j () indicates a successful match between the trajectory and the target.

[0074] Preferably, step S10 includes:

[0075] Step S10.1: Input a single associated trajectory and determine whether the trajectory is successfully matched in the two-dimensional allocation;

[0076] Step S10.2: For a successfully matched trajectory, find its corresponding matching degree value in the matching metric matrix;

[0077] Step S10.3: Determine whether the corresponding matching degree value is greater than the threshold;

[0078] Step S10.4: Perform Kalman filtering on the target location information whose matching degree value does not exceed the threshold to obtain the predicted location information, according to the formula:

[0079]

[0080]

[0081] in, This represents the state prediction vector from time k-1 to time k; TN represents the state vector at time k-1; i represents the target number at time k-1; k-1 This represents the number of targets at time k-1; Let represent the estimation error covariance matrix from time k-1 to time k; Let F be the posterior estimation error covariance matrix at time k-1; F is the state transition matrix; F T Represents the transpose of the state transition matrix; Q is the error covariance matrix corresponding to the process noise; c i,j This represents the predicted value of the target state; This represents the state vector at time k; σ represents the inverse of the error covariance matrix; T To track and predict the gate; j represents the target number at time k; This represents the number of targets at time k;

[0082] Step S10.5: Update the trajectory based on its final position status;

[0083] Step S10.6: Continue processing the next formed trajectory and iteratively update it.

[0084] An adaptive target association system based on multi-source data includes:

[0085] Module M1: Used for preprocessing operations to obtain the mesh boundary threshold;

[0086] Module M2: Used to input the target detection results at the current time and perform filtering to remove duplicate position information provided by different payloads for the same target;

[0087] Module M3: Used to determine whether the target detection result at the current moment has the same load source as the data at the previous moment, and to accumulate and store data from the same load source;

[0088] Module M4: If the target detection result obtained by the current payload is empty, it is used to read the accumulated data obtained by the next payload for subsequent processing;

[0089] Module M5: Used to determine whether there is a currently associated trajectory;

[0090] Module M6: If it does not exist, it is used to assemble each target point as the starting point of the trajectory into a defined format and store it.

[0091] Module M7: Used to calculate the adaptive search threshold based on the current load data and the last position point of the trajectory, and to determine the sector search area;

[0092] Module M8: Used to further calculate the matching metric matrix between the associated trajectory and the target detection location information in the current frame;

[0093] Module M9: Used to perform two-dimensional allocation of the calculated matching metric matrix to obtain the optimal matching result;

[0094] Module M10: Used to update the status of the currently associated trajectories based on the matching results and by applying a prediction method.

[0095] Module M11: Used to determine whether there are any unassociated target points in the current frame;

[0096] Module M12: Used to compare the corresponding value of the associated target in the matching metric matrix with the threshold value to determine whether to add a new trajectory; otherwise, the unassociated target point is used as the starting point of the new trajectory.

[0097] Module M13: Used to update the trajectory set based on the last moment state of each trajectory;

[0098] Module M14: Used to wait for the target detection results of the next frame, perform iterative processing, and update the trajectory set.

[0099] Compared with the prior art, the present invention has the following beneficial effects:

[0100] 1. By projecting the position information acquired by the spaceborne sensor into a planar coordinate system, and then fusing and filtering the position information of the same target observed by different sensors, the impact of the sensor's own positioning accuracy error is effectively reduced.

[0101] 2. By adaptively generating a search threshold based on the number of lost frames, a fan-shaped search area is formed, further improving the accuracy of target trajectory association;

[0102] 3. By leveraging the access cycle characteristics of spaceborne sensors, position information acquired by the same sensor is accumulated, and then the observation data from different sensors are correlated to achieve trajectory tracking of the same target. This effectively reduces the interference of sensor positioning accuracy errors, thereby further improving the accuracy of target trajectory correlation. Attached Figure Description

[0103] Other features, objects, and advantages of the present invention will become more apparent from the following detailed description of non-limiting embodiments with reference to the accompanying drawings:

[0104] Figure 1 A flowchart illustrating the adaptive target association method for multi-source data;

[0105] Figure 2 A flowchart illustrating the process of obtaining the mesh boundary threshold for preprocessing operations;

[0106] Figure 3 A flowchart of a method for filtering and removing duplicate location information from target detection results;

[0107] Figure 4 is a schematic diagram of the update of the same target position coordinates obtained by the load;

[0108] Figure 5 A flowchart illustrating the process of calculating the matching metric matrix;

[0109] Figure 6 This is a flowchart illustrating the trajectory update method based on Kalman filtering.

[0110] Figure 7 Feature diagrams corresponding to the nine simulated loads;

[0111] Figure 8 This is a simulated image showing the location distribution of 30 moving targets at sea.

[0112] Figure 9 for Figure 8 A simulated image depicting the realistic trajectory of a moving target at sea.

[0113] Figure 10 for Figure 8 A simulated image showing the effect of trajectory tracking processing for a moving target at sea. Detailed Implementation

[0114] The present invention will now be described in detail with reference to specific embodiments. These embodiments will help those skilled in the art to further understand the present invention, but do not limit the invention in any way. It should be noted that those skilled in the art can make several changes and improvements without departing from the concept of the present invention. These all fall within the protection scope of the present invention.

[0115] Based on the access cycle characteristics of spaceborne sensors, position information acquired by the same sensor is accumulated, and then the observation data from different sensors are correlated to achieve trajectory tracking of the same target. This effectively reduces the interference of sensor positioning accuracy errors, thereby further improving the accuracy of target trajectory correlation.

[0116] An adaptive target association method based on multi-source data, such as Figure 1 As shown, it includes:

[0117] Step S1: Perform preprocessing operations to obtain the mesh boundary threshold;

[0118] In step S1, a preprocessing operation is required to obtain the mesh division boundary threshold. The method flow is as follows: Figure 2 As shown, it includes:

[0119] Step S1.1: Input the target motion and load observation characteristic parameters;

[0120] Step S1.2: Determine the segmentation period based on the load observation characteristics;

[0121] Step S1.3: Calculate the target's movement range within a fixed period based on its motion characteristics;

[0122] Step S1.4: Divide the observation area into grids based on motion characteristics;

[0123] Step S1.5: Calculate the boundary coordinate information of each grid region;

[0124] Step S1.6: Calculate and store the coordinate coverage threshold for each grid.

[0125] Step S2: Input the target detection result at the current time, which is the multi-load target detection information obtained at non-uniform time intervals. Perform filtering to remove duplicate position information provided by different loads for the same target; the method flow is as follows. Figure 3 As shown, it includes the following sub-steps:

[0126] Step S2.1: Input the single-frame target detection result, and find the corresponding positioning longitude error according to the load source of the target point;

[0127] Step S2.2: Iterate through the two targets sequentially to determine whether they are from the same load source;

[0128] Step S2.3: If the loads are from different sources, project the positions of the two target points being compared onto a plane coordinate system;

[0129] Step S2.3 includes the following sub-steps:

[0130] Step S2.3.1: Project the meridians and parallels on the Earth's surface onto a cylindrical surface, and then unfold the cylindrical surface into a planar map, where the circumference is regarded as the X-axis;

[0131] Step S2.3.2: Convert longitude from degrees to radians, according to the following formula:

[0132] x_radian = lon * PI / 180

[0133] Where x_radian represents the corresponding radian value, lon represents the longitude value, and PI represents pi;

[0134] Step S2.3.3: Convert latitude from degrees to radians, according to the following formula:

[0135] y_radian = lat * PI / 180

[0136] Where y_radian represents the corresponding radian value, lat represents the latitude value, and PI represents pi;

[0137] Step S2.3.4: Perform the Miller projection conversion according to the following formula:

[0138] y_miller=1.25*log(tan(0.25*PI+0.4*y_radian))

[0139] Among them, y miller This represents the converted value of radians through Miller projection, where PI represents pi and y_radian represents the radian value corresponding to latitude.

[0140] Step S2.3.5: Convert the radians into actual distances using the following formula:

[0141] x=(W / 2)+(W / (2*PI))*x_radian

[0142] y=(H / 2)+(H / (2*mill))*y_radian

[0143] Where x represents the x-axis coordinates after transformation, y represents the y-axis coordinates after transformation, W represents the X-axis, which is equal to the Earth's circumference, PI represents pi, x_radian represents the radian value corresponding to longitude, H represents the Y-axis, which is approximately equal to half the Earth's circumference, mill represents a constant in the Miller projection, ranging from approximately ±2.3, and y_radian represents the radian value corresponding to latitude.

[0144] Step S2.4: Calculate the positional error between two target points projected into the planar coordinate system;

[0145] Step S2.5: Determine whether the position error is greater than the threshold;

[0146] Step S2.6: For target point pairs with position errors not exceeding the threshold, draw circles with the error range as the radius to update the target point's position. As shown in Figure 4, this is a schematic diagram of the update of the same target's position coordinates obtained by different loads. The two points in the figure correspond to the positions of the same target observed by the two loads, respectively. Circles are drawn with each point as the center and the error accuracy of the corresponding load as the radius. In the figure, (a) indicates that the ranges of the two circles do not overlap, (b) indicates that the ranges of the two circles overlap but do not intersect, (c) indicates that the ranges of the two circles overlap and the intersection is on the same side of the two circle centers, and (d) indicates that the ranges of the two circles overlap and the intersection is on opposite sides of the two circle centers.

[0147] Step S2.6 includes the following cases:

[0148] Scenario 1: The error ranges of the two target points do not overlap;

[0149] Scenario 2: The error ranges of the two target points overlap but do not intersect;

[0150] Scenario 3: The error ranges of the two target points overlap and their intersection point is on the same side of the centers of the two circles;

[0151] Case 4: The error ranges of the two target points overlap and the intersection point is on opposite sides of the two circles' centers.

[0152] In step S2.6, if the target position error obtained by different loads at the same time is Case 1, the target point position coordinates are not updated; if it is Case 2, the target position is updated to the center position coordinates of the small radius circle; if it is Case 3 or Case 4, the target position is updated to the midpoint of the line segment passing through the intersection of the two circles.

[0153] In step S2.6, if the target position error obtained by different loads at the same time is within the set identity recognition range, the target position is updated to the center position of the overlapping area of ​​the positioning accuracy error range corresponding to different loads.

[0154] Step S2.7: Continue processing the target detection results of the next frame for iterative updates.

[0155] Step S3: Determine whether the target detection result at the current moment has the same load source as the data at the previous moment, and accumulate and store the data with the same load source;

[0156] Step S4: If the target detection result obtained by the current payload is empty, then read the accumulated data obtained by the next payload for subsequent processing;

[0157] Step S5: Determine if there is currently an associated trajectory;

[0158] Step S6: If it does not exist, then take each target point as the starting point of the trajectory, assemble it into a defined format and store it;

[0159] Step S7: Otherwise, calculate the adaptive search threshold based on the current load data and the last position point of the trajectory, and determine the sector search area;

[0160] The search threshold calculation in step S7 includes the following sub-steps:

[0161] Step S7.1: Calculate the number of lost frames, i.e., the number of frames with no data between two non-empty frames;

[0162] Step S7.2: Calculate the upper and lower thresholds of the target point correlation error;

[0163] Step S7.3: Calculate the upper and lower limit thresholds of the search error along the coordinate system for the position coordinates.

[0164] Step S8: Further calculate the matching metric matrix between the associated trajectory and the target detection location information in the current frame;

[0165] The calculation step of the matching metric matrix in step S8 is as follows: Figure 5 As shown, it includes:

[0166] Step S8.1: Input a single associated trajectory and predict the position at the next moment based on the position information of the trajectory at the last moment;

[0167] Step S8.2: Calculate the difference between the detected target position and the trajectory prediction position in each direction of the current processing frame;

[0168] Step S8.3: Determine whether the coarse condition for non-association is met;

[0169] Step S8.4: For detected target points that do not meet the coarse judgment condition of non-association, calculate the error between their position and the predicted trajectory.

[0170] Step S8.5: Compare the position error with the threshold value, and modify the correlation degree corresponding to the matching metric matrix;

[0171] Step S8.6: Continue processing the next formed trajectory and iteratively update it.

[0172] Step S9: Perform a two-dimensional distribution on the calculated matching metric matrix to obtain the optimal matching result;

[0173] In step S9, the two-dimensional allocation is performed based on the calculated matching metric matrix according to the following formula:

[0174]

[0175] The optimal matching solution is

[0176] Among them, F * Describes a two-dimensional allocation function, m ij Represents the matching metric matrix The (i, j)th element; f ij Representing the allocation matrix The (i, j)th element, which is a binary variable; C * This represents the optimal matching solution that satisfies the two-dimensional assignment function, where n1 represents the number of trajectories; n2 represents the number of detected target points; (z 1i , z 2j () indicates a successful match between the trajectory and the target.

[0177] Step S10: Based on the matching results, update the current associated trajectory state using a Kalman filter-based prediction method;

[0178] The method steps of step S10 are as follows: Figure 6 As shown, it includes:

[0179] Step S10.1: Input a single associated trajectory and determine whether the trajectory is successfully matched in the two-dimensional allocation;

[0180] Step S10.2: For a successfully matched trajectory, find its corresponding matching degree value in the matching metric matrix;

[0181] Step S10.3: Determine whether the corresponding matching degree value is greater than the threshold;

[0182] Step S10.4: Perform Kalman filtering on the target location information whose matching degree value does not exceed the threshold to obtain the predicted location information, according to the following formula:

[0183]

[0184] in, This represents the state prediction vector from time k-1 to time k; TN represents the state vector at time k-1; i represents the target number at time k-1; k-1 This represents the number of targets at time k-1; Let represent the estimation error covariance matrix from time k-1 to time k; F represents the posterior estimation error covariance matrix at time k-1; F is the state transition matrix; F T Represents the transpose of the state transition matrix; Q is the error covariance matrix corresponding to the process noise; c i,j This represents the predicted value of the target state; This represents the state vector at time k; σ represents the inverse of the error covariance matrix;T To track and predict the gate; j represents the target number at time k; This represents the number of targets at time k;

[0185] Step S10.5: Update the trajectory based on its final position status;

[0186] Step S10.6: Continue processing the next formed trajectory and iteratively update it.

[0187] Step S11: Determine if there are any unassociated target points in the current frame;

[0188] Step S12: For the associated target, compare its corresponding value in the matching metric matrix with the threshold value to determine whether to add a new trajectory; otherwise, take the unassociated target point as the starting point of the new trajectory.

[0189] Step S13: Update the trajectory set according to the state of each trajectory at the last moment;

[0190] Step S14: Wait for the target detection results of the next frame to be processed iteratively and the trajectory set is updated.

[0191] The effects of this invention can be further illustrated by the following simulation results.

[0192] 1. Simulation data:

[0193] The position information sequence of 30 moving targets at sea observed over 23 minutes using 9 loads was simulated using STK, and the data processing was completed using the PyCharm 2017 platform.

[0194] 2. Simulation content and results:

[0195] To verify the effectiveness of the adaptive target association method based on multi-source data provided in this invention, a test was conducted using position information sequences of 30 moving targets at sea observed by 9 different payloads over a period of 23 minutes. Below, a set of scenarios is selected, with random missed detections and random errors within three kilometers added. Representative original experimental images and processed results are shown for comparison.

[0196] Figure 4 is a schematic diagram of the update of the position coordinates of the same target obtained by different loads. The two points in the figure correspond to the positions of the same target observed by the two loads respectively. Circles are drawn with each point as the center and the error accuracy of the corresponding load as the radius. (a) indicates that the ranges of the two circles do not overlap, (b) indicates that the ranges of the two circles overlap but do not intersect, (c) indicates that the ranges of the two circles overlap and the intersection is on the same side of the two circles, and (d) indicates that the ranges of the two circles overlap and the intersection is on opposite sides of the two circles.

[0197] Figure 7The data characteristics obtained from the nine observation payloads in the STK simulation include payload ID number, positioning accuracy error range, unit in kilometers, and detection rate.

[0198] Figure 8 This is a set of simulated images showing the location distribution of 30 moving targets at sea. (a) represents a schematic diagram of the distribution of all targets, while (b), (c), and (d) represent enlarged schematic diagrams of three dense areas in (a), respectively.

[0199] Figure 9 for Figure 8 The simulation results show the actual trajectory of moving targets at sea. (a) represents the actual trajectory of all targets, while (b), (c), and (d) are magnified views of three dense areas in (a).

[0200] Figure 10 for Figure 8 The simulation results of trajectory tracking of moving targets at sea are shown in the diagrams. (a) represents the trajectory effect diagram formed by all associations, and (b), (c) and (d) represent enlarged schematic diagrams of three dense areas in (a).

[0201] This invention also provides an adaptive target association system based on multi-source data. This system can be implemented by executing the steps of the adaptive target association method based on multi-source data. That is, those skilled in the art can understand the adaptive target association method based on multi-source data as a preferred embodiment of the adaptive target association system based on multi-source data. The system specifically includes the following:

[0202] Module M1: Performs preprocessing operations to obtain the mesh division boundary threshold.

[0203] Module M1 includes:

[0204] Module M1.1: Input target motion and load observation characteristic parameters;

[0205] Module M1.2: Determines the segmentation period based on load observation characteristics;

[0206] Module M1.3: Calculates the target's movement range within a fixed period based on its motion characteristics;

[0207] Module M1.4: Divides the observation area into grids based on motion characteristics;

[0208] Module M1.5: Calculates the boundary coordinates of each grid region;

[0209] Module M1.6: Calculates and stores the coordinate coverage threshold for each grid.

[0210] Module M2: Input the target detection result at the current time, which is the multi-load target detection information obtained at non-uniform time intervals. Perform filtering processing to remove duplicate position information provided by different loads of the same target.

[0211] Module M2 includes:

[0212] Module M2.1: Input the target detection results of a single frame, and find the corresponding positioning longitude error based on the load source of the target point;

[0213] Module M2.2: Iterate through each pair of targets sequentially to determine if they share the same load source;

[0214] Module M2.3: If the loads are from different sources, the positions of the two target points being compared will be projected onto a planar coordinate system;

[0215] The calculation steps for module M2.3 include:

[0216] Module M2.3.1: Projects the meridians and parallels of the Earth's surface onto a cylindrical surface, and then unfolds the cylindrical surface into a planar map, where the perimeter is regarded as the X-axis;

[0217] Module M2.3.2: Converts longitude from degrees to radians, based on the following formula:

[0218] x_radian = lon * PI / 180

[0219] Where x_radian represents the corresponding radian value, lon represents the longitude value, and PI represents pi;

[0220] Module M2.3.3: Converts latitude from degrees to radians, using the following formula:

[0221] y_radian = lat * PI / 180

[0222] Where y_radian represents the corresponding radian value, lat represents the latitude value, and PI represents pi;

[0223] Module M2.3.4: Performs the Miller projection conversion based on the following formula:

[0224] y_miller=1.25*log(tan(0.25*PI+0.4*y_radian))

[0225] Among them, y miller This represents the converted value of radians through Miller projection, where PI represents pi and y_radian represents the radian value corresponding to latitude.

[0226] Module M2.3.5: Converts radians to actual distances using the following formula:

[0227] x=(W / 2)+(W / (2*PI))*x_radian

[0228] y=(H / 2)+(H / (2*mill))*y_radian

[0229] Where x represents the x-axis coordinates after transformation, y represents the y-axis coordinates after transformation, W represents the X-axis, which is equal to the Earth's circumference, PI represents pi, x_radian represents the radian value corresponding to longitude, H represents the Y-axis, which is approximately equal to half the Earth's circumference, mill represents a constant in the Miller projection, ranging from approximately ±2.3, and y_radian represents the radian value corresponding to latitude.

[0230] Module M2.4: Calculates the positional error between two target points projected into a planar coordinate system;

[0231] Module M2.5: Determines whether the position error is greater than a threshold;

[0232] Module M2.6: For target point pairs with position errors not exceeding the threshold, draw circles with the error range as the radius and update the position of the target points;

[0233] Module M2.6 includes the following cases:

[0234] Scenario 1: The error ranges of the two target points do not overlap;

[0235] Scenario 2: The error ranges of the two target points overlap but do not intersect;

[0236] Scenario 3: The error ranges of the two target points overlap and their intersection point is on the same side of the centers of the two circles;

[0237] Case 4: The error ranges of the two target points overlap and the intersection point is on opposite sides of the two circles' centers.

[0238] In module M2.6, if the target position error obtained by different loads at the same time is Case 1, the target point position coordinates will not be updated; if it is Case 2, the target position will be updated to the center position coordinates of the small radius circle; if it is Case 3 or Case 4, the target position will be updated to the midpoint of the line segment passing through the intersection of the two circles.

[0239] In module M2.6, when the target position error obtained by different loads at the same time is within the set identity recognition range, the target position is updated to the center position of the overlapping area of ​​the positioning accuracy error range corresponding to different loads.

[0240] Module M2.7: Continue processing the target detection results of the next frame for iterative updates.

[0241] Module M3: Determines whether the target detection result at the current moment has the same load source as the data at the previous moment, and accumulates and stores data with the same load source.

[0242] Module M4: If the target detection result obtained by the current payload is empty, then read the accumulated data obtained by the next payload for subsequent processing.

[0243] Module M5: Determines whether there is a currently associated trajectory.

[0244] Module M6: If it does not exist, each target point will be used as the starting point of the trajectory, assembled into a defined format and stored.

[0245] Module M7: Otherwise, calculate the adaptive search threshold based on the data obtained from the current load and the last position point of the trajectory, and determine the sector search area.

[0246] The search threshold calculation in module M7 includes the following sub-modules:

[0247] Module M7.1: Calculates the number of lost frames, i.e., the number of frames with no data between two non-empty frames;

[0248] Module M7.2: Calculates the upper and lower thresholds of the correlation error of target points;

[0249] Module M7.3: Calculates the upper and lower limits of the search error along the coordinate system for position coordinates.

[0250] Module M8: Further calculates the matching metric matrix between the associated trajectory and the target detection location information in the current frame.

[0251] The steps for calculating the matching metric matrix in module M8 include:

[0252] Module M8.1: Input a single associated trajectory and predict the position at the next moment based on the position information of the trajectory at the last moment;

[0253] Module M8.2: Calculates the difference between the detected target position and the trajectory prediction position in each direction of the current processing frame;

[0254] Module M8.3: Determines whether the coarse condition for non-association is met;

[0255] Module M8.4: For detected target points that do not meet the coarse judgment condition of non-association, calculate the error between their position and the trajectory prediction position;

[0256] Module M8.5: Compares the position error with the threshold value and modifies the correlation degree corresponding to the matching metric matrix;

[0257] Module M8.6: Continue processing the next formed trajectory and iteratively update it.

[0258] Module M9: Performs a two-dimensional distribution on the calculated matching metric matrix to obtain the optimal matching result.

[0259] In module M9, the two-dimensional allocation based on the calculated matching metric matrix is ​​based on the following formula:

[0260]

[0261] The optimal matching solution is

[0262] Among them, F * Describes a two-dimensional allocation function, m ij Represents the matching metric matrix The (i, j)th element; f ij Representing the allocation matrix The (i, j)th element, which is a binary variable; C * This represents the optimal matching solution that satisfies the two-dimensional assignment function, where n1 represents the number of trajectories; n2 represents the number of detected target points; (z 1i , z 2j () indicates a successful match between the trajectory and the target.

[0263] Module M10: Based on the matching results, the Kalman filter-based prediction method is applied to update the state of the currently associated trajectories.

[0264] The algorithm steps of module M10 include:

[0265] Module M10.1: Input a single associated trajectory and determine whether the trajectory is successfully matched in the two-dimensional assignment;

[0266] Module M10.2: For a successfully matched trajectory, find its corresponding matching degree value in the matching metric matrix;

[0267] Module M10.3: Determines whether the corresponding matching degree value is greater than the threshold;

[0268] Module M10.4: Performs Kalman filtering on target location information with matching scores not exceeding a threshold to obtain predicted location information, based on the following formula:

[0269]

[0270] in, This represents the state prediction vector from time k-1 to time k; TN represents the state vector at time k-1; i represents the target number at time k-1; k-1 This represents the number of targets at time k-1; Let represent the estimation error covariance matrix from time k-1 to time k; Let F be the posterior estimation error covariance matrix at time k-1; F is the state transition matrix; F T Represents the transpose of the state transition matrix; Q is the error covariance matrix corresponding to the process noise; c i,j This represents the predicted value of the target state; This represents the state vector at time k; σ represents the inverse of the error covariance matrix; T To track and predict the gate; j represents the target number at time k; This represents the number of targets at time k;

[0271] Module M10.5: Updates based on the final position status of the trajectory;

[0272] Module M10.6: Continue processing the next formed trajectory and iteratively update it.

[0273] Module M11: Determines whether there are any unassociated target points in the current frame;

[0274] Module M12: For the associated target, compare its corresponding value in the matching metric matrix with the threshold to determine whether to add a new trajectory; otherwise, use the unassociated target point as the starting point of the new trajectory.

[0275] Module M13: Updates the trajectory set based on the final state of each trajectory;

[0276] Module M14: Waits for the target detection results of the next frame to perform iterative processing and update the trajectory set.

[0277] Those skilled in the art will understand that, besides implementing the system and its various devices, modules, and units provided by this invention in the form of purely computer-readable program code, the same functions can be achieved entirely through logical programming of the method steps, making the system and its various devices, modules, and units of this invention function in the form of logic gates, switches, application-specific integrated circuits, programmable logic controllers, and embedded microcontrollers. Therefore, the system and its various devices, modules, and units provided by this invention can be considered as a hardware component, and the devices, modules, and units included therein for implementing various functions can also be considered as structures within the hardware component; alternatively, the devices, modules, and units for implementing various functions can be considered as both software modules implementing the method and structures within the hardware component.

[0278] Specific embodiments of the present invention have been described above. It should be understood that the present invention is not limited to the specific embodiments described above, and those skilled in the art can make various changes or modifications within the scope of the claims, which do not affect the essence of the present invention. Unless otherwise specified, the embodiments and features described in this application can be arbitrarily combined with each other.

Claims

1. An adaptive target association method based on multi-source data, characterized in that, include: Step S1: Perform preprocessing operations to obtain the mesh boundary threshold; Step S2: Input the target detection result at the current time and perform filtering to remove duplicate position information provided by different payloads for the same target; Step S3: Determine whether the target detection result at the current moment has the same load source as the data at the previous moment, and accumulate and store the data with the same load source; Step S4: If the target detection result obtained by the current payload is empty, then read the accumulated data obtained by the next payload for subsequent processing; Step S5: Determine if there is currently an associated trajectory; Step S6: If it does not exist, then take each target point as the starting point of the trajectory, assemble it into a defined format and store it; Step S7: Otherwise, calculate the adaptive search threshold based on the current load data and the last position point of the trajectory, and determine the sector search area; Step S8: Further calculate the matching metric matrix between the associated trajectory and the target detection location information in the current frame; Step S9: Perform a two-dimensional distribution on the calculated matching metric matrix to obtain the optimal matching result; Step S10: Based on the matching results, apply the prediction method to update the current associated trajectory status; Step S11: Determine if there are any unassociated target points in the current frame; Step S12: For the associated target, compare its corresponding value in the matching metric matrix with the threshold value to determine whether to add a new trajectory; otherwise, take the unassociated target point as the starting point of the new trajectory. Step S13: Update the trajectory set according to the state of each trajectory at the last moment; Step S14: Wait for the target detection results of the next frame to be processed iteratively and the trajectory set is updated.

2. The adaptive target association method based on multi-source data according to claim 1, characterized in that, Step S1 includes: Step S1.1: Input the target motion and load observation characteristic parameters; Step S1.2: Determine the segmentation period based on the load observation characteristics; Step S1.3: Calculate the target's movement range within a fixed period based on its motion characteristics; Step S1.4: Divide the observation area into grids based on motion characteristics; Step S1.5: Calculate the boundary coordinate information of each grid region; Step S1.6: Calculate and store the coordinate coverage threshold for each grid.

3. The adaptive target association method based on multi-source data according to claim 1, characterized in that, Step S2 includes: Step S2.1: Input the single-frame target detection result, and find the corresponding positioning longitude error according to the load source of the target point; Step S2.2: Iterate through the two targets sequentially to determine whether they are from the same load source; Step S2.3: If the loads are from different sources, project the positions of the two target points being compared onto a plane coordinate system; Step S2.4: Calculate the positional error between two target points projected into the planar coordinate system; Step S2.5: Determine whether the position error is greater than the threshold; Step S2.6: For target point pairs whose position error does not exceed the threshold, draw circles with the error range as the radius and update the position of the target points; Step S2.7: Continue processing the target detection results of the next frame for iterative updates.

4. The adaptive target association method based on multi-source data according to claim 3, characterized in that, Step S2.3 includes: Step S2.3.1: Project the meridians and parallels on the Earth's surface onto a cylindrical surface, and then unfold the cylindrical surface into a planar map, where the circumference is regarded as the X-axis; Step S2.3.2: Convert longitude from degrees to radians, according to the following formula: x_radian = lon * PI / 180 Where x_radian represents the corresponding radian value, lon represents the longitude value, and PI represents pi; Step S2.3.3: Convert latitude from degrees to radians, according to the following formula: y_radian = lat * PI / 180 Where y_radian represents the corresponding radian value, lat represents the latitude value, and PI represents pi; Step S2.3.4: Perform the Miller projection conversion according to the following formula: y_miller=1.25*log(tan(0.25*PI+0.4*y_radian)) Among them, y miller This represents the converted value of radians through Miller projection, where PI represents pi and y_radian represents the radian value corresponding to latitude. Step S2.3.5: Convert the radians into actual distances using the following formula: x=(W / 2)+(W / (2*PI))*x_radian y=(H / 2)+(H / (2*mill))*y_radian Where x represents the x-axis coordinates after transformation, y represents the y-axis coordinates after transformation, W represents the X-axis, which is equal to the Earth's circumference, PI represents pi, x_radian represents the radian value corresponding to longitude, H represents the Y-axis, which is approximately equal to half the Earth's circumference, mill represents a constant in the Miller projection, ranging from approximately ±2.3, and y_radian represents the radian value corresponding to latitude.

5. The adaptive target association method based on multi-source data according to claim 3, characterized in that, Step S2.6 includes: Scenario 1: The error ranges of the two target points do not overlap; Scenario 2: The error ranges of the two target points overlap but do not intersect; Scenario 3: The error ranges of the two target points overlap and their intersection point is on the same side of the centers of the two circles; Case 4: The error ranges of the two target points overlap and their intersection point is on opposite sides of the two circles' centers; In step S2.6, if the target position error obtained by different loads at the same time is Case 1, the target point position coordinates are not updated; if it is Case 2, the target position is updated to the center position coordinates of the small radius circle; if it is Case 3 or Case 4, the target position is updated to the midpoint of the line segment passing through the intersection of the two circles. In step S2.6, if the target position error obtained by different loads at the same time is within the set identity recognition range, the target position is updated to the center position of the overlapping area of ​​the positioning accuracy error range corresponding to different loads.

6. The adaptive target association method based on multi-source data according to claim 1, characterized in that, Step S7 includes: Step S7.1: Calculate the number of frames lost; Step S7.2: Calculate the upper and lower thresholds of the target point correlation error; Step S7.3: Calculate the upper and lower limit thresholds of the search error along the coordinate system for the position coordinates.

7. The adaptive target association method based on multi-source data according to claim 1, characterized in that, Step S8 includes: Step S8.1: Input a single associated trajectory and predict the position at the next moment based on the position information of the trajectory at the last moment; Step S8.2: Calculate the difference between the detected target position and the trajectory prediction position in each direction of the current processing frame; Step S8.3: Determine whether the coarse condition for non-association is met; Step S8.4: For detected target points that do not meet the coarse judgment condition of non-association, calculate the error between their position and the predicted trajectory. Step S8.5: Compare the position error with the threshold value, and modify the correlation degree corresponding to the matching metric matrix; Step S8.6: Continue processing the next formed trajectory and iteratively update it.

8. The adaptive target association method based on multi-source data according to claim 1, characterized in that, In step S9, the two-dimensional allocation is performed based on the calculated matching metric matrix according to the following formula: The optimal matching solution is Among them, F * Describes a two-dimensional allocation function, m ij Represents the matching metric matrix The (i, j)th element; f ij Represents the allocation matrix The (i, j)th element, which is a binary variable; C * This represents the optimal matching solution that satisfies the two-dimensional assignment function, where n1 represents the number of trajectories; n2 represents the number of detected target points; (z 1i , z 2j () indicates a successful match between the trajectory and the target.

9. The adaptive target association method based on multi-source data according to claim 1, characterized in that, Step S10 includes: Step S10.1: Input a single associated trajectory and determine whether the trajectory is successfully matched in the two-dimensional allocation; Step S10.2: For a successfully matched trajectory, find its corresponding matching degree value in the matching metric matrix; Step S10.3: Determine whether the corresponding matching degree value is greater than the threshold; Step S10.4: Perform Kalman filtering on the target location information whose matching degree value does not exceed the threshold to obtain the predicted location information, according to the formula: in, This represents the state prediction vector from time k-1 to time k; TN represents the state vector at time k-1; i represents the target number at time k-1; k-1 This represents the number of targets at time k-1; Let represent the estimation error covariance matrix from time k-1 to time k; Let F be the posterior estimation error covariance matrix at time k-1; F is the state transition matrix; F T Represents the transpose of the state transition matrix; Q is the error covariance matrix corresponding to the process noise; c i,j This represents the predicted value of the target state; This represents the state vector at time k; σ represents the inverse of the error covariance matrix; T To track and predict the gate; j represents the target number at time k; This represents the number of targets at time k; Step S10.5: Update the trajectory based on its final position status; Step S10.6: Continue processing the next formed trajectory and iteratively update it.

10. An adaptive target association system based on multi-source data, characterized in that, include: Module M1: Used for preprocessing operations to obtain the mesh boundary threshold; Module M2: Used to input the target detection results at the current time and perform filtering to remove duplicate position information provided by different payloads for the same target; Module M3: Used to determine whether the target detection result at the current moment has the same load source as the data at the previous moment, and to accumulate and store data from the same load source; Module M4: If the target detection result obtained by the current payload is empty, it is used to read the accumulated data obtained by the next payload for subsequent processing; Module M5: Used to determine whether there is a currently associated trajectory; Module M6: If it does not exist, it is used to assemble each target point as the starting point of the trajectory into a defined format and store it. Module M7: Used to calculate the adaptive search threshold based on the current load data and the last position point of the trajectory, and to determine the sector search area; Module M8: Used to further calculate the matching metric matrix between the associated trajectory and the target detection location information in the current frame; Module M9: Used to perform two-dimensional allocation of the calculated matching metric matrix to obtain the optimal matching result; Module M10: Used to update the status of the currently associated trajectories based on the matching results and by applying a prediction method. Module M11: Used to determine whether there are any unassociated target points in the current frame; Module M12: Used to compare the corresponding value of the associated target in the matching metric matrix with the threshold value to determine whether to add a new trajectory; otherwise, the unassociated target point is used as the starting point of the new trajectory. Module M13: Used to update the trajectory set based on the last moment state of each trajectory; Module M14: Used to wait for the target detection results of the next frame, perform iterative processing, and update the trajectory set.

Citation Information

Patent Citations

  • Multi-source data-based ship trajectory fusion system and realization method thereof

    CN105654133A

  • Driving trajectory predicting system integrating kinematic model and behavioral cognition model

    CN106950956A

  • Multi-target tracking method

    CN116128932A

  • Information fusion acceleration calculation method based on track position grid region dividing and conquering

    CN118075693A