A method for extracting and eliminating incomplete routes based on ADS-B data

By preprocessing regional sample data and using the KD tree nearest neighbor fast search algorithm, the problem of civil aviation aircraft extraction and elimination in incomplete track data is solved, and efficient sensitive target screening is achieved.

CN118692264BActive Publication Date: 2025-02-11NAVAL AVIATION UNIV
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202411161556.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-08-23
Publication Date
2025-02-11
Estimated Expiration
2044-08-23

AI Technical Summary

Technical Problem

The prior art is difficult to effectively extract and eliminate civil aviation aircraft from incomplete track data, resulting in the impact of the accuracy of sensitive target screening.

Method used

By preprocessing regional sample data, some complete routes are generated, and a KD tree is used to construct a fast search algorithm for neighbors, iteratively fusion of similar tracks to generate regional routes, and then civil aviation routes are extracted and eliminated.

Benefits of technology

It realizes rapid matching and extraction of civil aviation routes in complex scenarios, improves the accuracy and efficiency of sensitive target screening, and reduces calculation overhead.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118692264B_ABST
    Figure CN118692264B_ABST
Patent Text Reader

Abstract

The present invention relates to a method for extracting and eliminating incomplete routes based on ADS-B data, which belongs to the field of track processing technology, and includes the following steps: step 1, pre-processing regional sample data to generate partially completed routes; step 2, for track segments that cannot be classified as a complete cluster in step 1, iteratively fusing similar tracks to generate routes; step 3, forming a regional route set by combining the routes in step 1 and the routes in step 2; step 4, extracting the latitude and longitude position information of unidentified target track points, matching the nearest routes with the regional route set generated in step 3, calculating the position similarity between the unidentified target track and its nearest routes, and determining whether the target is flying on a civil aviation route; step 5, screening the targets on the civil aviation route determined in step 4 for sensitive targets. A new perspective for the sensitive target screening method is provided, with high accuracy and stable performance in complex scenarios.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to a method for extracting and removing incomplete flight paths based on ADS-B data, belonging to the field of flight path processing technology. Background Technology

[0002] Identifying sensitive aerial targets is a key task in regional air situation analysis. Civil aircraft typically transmit Automatic Dependent Surveillance-Broadcast (ADS-B) messages in real time to provide flight-related information. These messages include flight number, longitude, latitude, altitude, and heading. However, due to reception conflicts and interference, ADS-B messages for many civil aircraft targets are unreachable. This results in a large number of civilian aircraft among the unreported targets, in addition to sensitive targets, severely interfering with the detection of sensitive targets or other specific types of targets in the situational awareness, thus affecting the efficiency and effectiveness of regional intelligence analysis. Therefore, it is necessary to filter and remove civilian targets from the raw early warning detection data, which can significantly reduce the workload of subsequent target compilation and data analysis.

[0003] In practical applications, due to limitations such as environmental conditions and radar performance, the detected flight tracks are mostly incomplete and lack terminal information. This situation leads to a lack of effective references in the civil aviation target identification process, thus seriously affecting the accurate screening of sensitive targets.

[0004] To solve this technical challenge, it is necessary to conduct in-depth research on methods for establishing effective references in the context of incomplete track data, track similarity matching methods, and civil aviation target identification methods to improve the accuracy of sensitive target screening.

[0005] Anomaly detection is achieved by using multi-factor directional Hausdorff distance and constructing multi-dimensional local anomaly factors. This method relies on calculating the feature difference with neighboring tracks to achieve anomaly identification. It has achieved good results in complete track data with equal-length sampling, but it has not yet been applied to incomplete track scenarios, and the complexity of multi-dimensional calculation is high.

[0006] A Sequential Hausdorff Nearest-Neighbor Conformal Anomaly Detector (SHNN-CAD) is proposed for online learning and trajectory sequence anomaly detection. This algorithm identifies new trajectories that differ from known trajectory patterns by calculating the similarity between trajectories, thereby identifying potential anomalies. However, since the algorithm's performance depends on learning from historical data, the presence of a large number of incomplete tracks in the training set can significantly impact the learning process. Furthermore, this method is limited to two-dimensional trajectory features only.

[0007] Frequent regions are extracted to represent the precise locations frequently visited by ships. Based on the derived frequent regions, each original trajectory is converted into a region-based motion sequence. Spatial, sequential, and behavioral features are extracted from the sequence of trajectory data for anomaly detection. However, with the increase of real-time maritime data, new trajectory data will be continuously generated, and updating frequent regions may lead to significant computational costs and time overhead.

[0008] The extraction of civil aviation routes during the screening process is essentially a flight path clustering technique that aggregates similar flight paths.

[0009] Track clustering based on track point normal distance uses track point normal distance as a track similarity measure, which solves the problem of spatial mismatch in the selection of track point pairs caused by differences in aircraft speed, and effectively improves the clustering effect. However, it is only effective for complete tracks that include take-off and landing points.

[0010] The HDBSCAN-based ship trajectory clustering method improves upon the density-based spatial clustering of applications with noise (DBSCAN) algorithm by employing hierarchical clustering. It can extract trajectories with similarity and cluster them into clusters, reflecting the traffic situation in the sea area, but it cannot form specific routes.

[0011] Ship trajectory clustering methods based on the improved DBSCAN algorithm improve upon it by reducing the time spent on repeated queries in the sample neighborhood. However, they are sensitive to noise in experiments and cannot distinguish routes in high-traffic, congested areas. Additionally, there is a maritime traffic pattern recognition trajectory clustering method based on Douglas-Peucker compression and density, which can adaptively determine appropriate DBSCAN parameters, but the clustering effect is affected by the choice of trajectory compression threshold. During data clustering, if most sub-trajectories overlap, they may be misclassified as noise, thus affecting the clustering effect. The segmentation-grouping framework for trajectory clustering divides the trajectory into line segments (or fragments) and then clusters similar trajectory fragments into clusters, which can better describe the path of trajectory movement. However, this type of method cannot extract the shape features of each independent trajectory and has certain limitations in processing the movement trend of the global trajectory.

[0012] Based on the above analysis, current clustering methods have achieved certain results in aggregating flight paths from relatively ideal flight path data. However, in more complex real-world scenarios, due to limitations imposed by objective conditions, the detected and collected aerial flight path data is often incomplete fragments, and there may be multiple partially overlapping flight paths belonging to the same flight path. This makes it difficult to directly apply traditional clustering methods to flight path clustering and extraction in complex scenarios. To achieve rapid matching of similar flight paths, we draw on the efficient data structure of KD-trees. Originally proposed by Bentley, it is a special binary search tree structure used to construct data points in K-dimensional space. Compared to the limitation of traditional binary search trees, which can only handle one-dimensional data, each level of a KD-tree corresponds to a dimension, making it better suited for high-dimensional data. In addition, KD-trees employ an optimization strategy of first generating search paths and then backtracking to calculate distances. This strategy is particularly important when dealing with large-scale datasets, as it can significantly reduce computational overhead. Summary of the Invention

[0013] The purpose of this invention is to solve the problems existing in the prior art. Taking advantage of the relatively fixed nature of civil aviation routes, this invention provides a method for extracting and removing incomplete flight routes based on ADS-B data. By extracting civil aviation routes from incomplete flight tracks marked with ADS-B identifiers, the invention then uses these flight tracks to determine the spatial location and behavioral anomalies of unknown target tracks that do not have ADS-B message data. This allows for the identification of civil aviation aircraft, which are then removed from the target set to be analyzed and compiled, thereby filtering out sensitive targets.

[0014] To solve the above problems, this application provides the following technical solution:

[0015] Relevant definitions:

[0016] Regional incomplete track intelligence data It includes two types of tracks: one is ADS-B self-reporting position track data. Secondly, radar-detected track data of unknown targets without ADS-B messages. .

[0017] in, , The k-th ADS-B track ,definition The latitude and longitude coordinates of the track points in radians; similarly, , The k-th radar detection track ,definition These are the latitude and longitude coordinates (in radians) of the track points. Longitude is indicated by the symbol. Latitude is indicated by the symbol express.

[0018] The extracted regional civil aviation routes are represented as "line". The kth civil aviation route in line ,definition The latitude and longitude radian coordinates of the route point.

[0019] A method for extracting and removing incomplete flight routes based on ADS-B data, characterized by the following steps:

[0020] Step 1: Preprocess the regional sample data to generate partially complete flight routes;

[0021] Step 2: For track segments that cannot be classified into a single cluster in Step 1, generate flight routes by iteratively fusing similar trajectories.

[0022] Step 3: Combine the routes from Step 1 and the routes from Step 2 to form a regional route set (line);

[0023] Step 4, Extraction The latitude and longitude location information of the unidentified target track point is matched with the nearest route set line generated in step 3 to calculate the position similarity between the unidentified target track and its nearest route, and to determine whether the target is flying on a civil aviation route.

[0024] Step 5: Screen sensitive targets on the civil aviation routes determined in Step 4.

[0025] Furthermore, step 1 is specifically as follows:

[0026] For regional sample data To achieve a unified direction, traditional DBSCAN density clustering is used to preprocess incomplete tracks within the region. The first and last points of the track are extracted as positional features, and the distance of the track is extracted as motion features. DBSCAN density clustering is then performed. The DBSCAN density clustering determines clusters with at least one neighboring point by detecting the number of neighboring points within the radius of each data point. The track of the cluster center of each cluster is then extracted as the flight path of that cluster.

[0027] Furthermore, step 2 specifically includes the following steps:

[0028] Step 2.1, Utilizing flight paths Construct a two-dimensional KD-tree;

[0029] Step 2.2: Use the two-dimensional KD tree constructed in Step 2.1 to perform a fast nearest neighbor search;

[0030] Step 2.3: Determine the result in step 2.2. and Is it a nearby flight path?

[0031] Step 2.4: Based on the nearest track determined in Step 2.3, extract the corresponding nearest segment and determine whether the nearest segments are similar;

[0032] Step 2.5: Iteratively merge the tracks that were determined to be similar in Step 2.4 to generate regional routes.

[0033] Furthermore, step 2.1 specifically includes the following steps:

[0034] Step 2.1.1: Calculate the track The variance of the tracking points in each dimension was calculated, and the dimension with the largest variance was selected as the splitting dimension, dim.

[0035] ,

[0036] In the formula: m is the current number of data points, and k represents the node data dimension. This represents the value of the i-th data point in the k-th dimension. represents the mean of the dataset along the k-th dimension, and arg max represents the value of the independent variable that makes the function reach its maximum value;

[0037] Step 2.1.2: Select the partitioning dimension dim from Step 2.1.1, perform the first partitioning on this dimension, and find the median data of the points in the current data space on this dimension, and use it as the partitioning point, i.e. the root node. The value of the partitioning point on the partitioning dimension dim is the splitting value.

[0038] Step 2.1.3: Based on the partition dimension dim calculated in Step 2.1.1 and the partition point determined in Step 2.1.2, determine the following: the track point with a value less than the partition value on the partition dimension dim is located in the left subspace, and the track point with a value greater than the partition value on the partition dimension dim is located in the right subspace.

[0039] Step 2.1.4: Repeat steps 2.1.1 to 2.1.4 for the track points in the left and right subspaces respectively, until the left and right subspaces can no longer be divided, and obtain the final KD tree.

[0040] Furthermore, step 2.2 is detailed as follows:

[0041] Step 2.2.1: Extract track The first point and tail point Constructing a search point set traverse the set of points to be searched ;

[0042] Extracting flight tracks The first point and tail point as a set of search points traverse the set of points to be searched ;

[0043] Step 2.2.2: Establish the search path:

[0044] The KD tree established in step 2.1 is traversed using the preorder traversal method. In each level, the subspace to which the search point belongs is determined based on the dimension dim of the current level and the partition value. If the partition value is less than the partition value, it belongs to the left subspace; if the partition value is greater than the partition value, it belongs to the right subspace. This process continues until a leaf node is reached, thus forming a search path.

[0045] Step 2.2.3: Calculate the distance and determine if it is a nearest neighbor point:

[0046] The search path is backtracked sequentially to calculate the distance. If the distance from the current node to the search point is less than the nearest neighbor radius r, then the search point is considered a nearest neighbor; otherwise, the backtracking continues until the root node is reached.

[0047] The distance calculation is as follows:

[0048] Since the data points are in radian coordinates of latitude and longitude, the Haversine formula is used for distance calculation: , ,

[0049] In the formula: , Two track points respectively The latitude of q For point The difference in latitude between q and q For point The difference in longitude between q and R is the Earth's radius.

[0050] Furthermore, step 2.3 is detailed as follows:

[0051] ,

[0052] In the formula: This means that for any point... Belongs to set There exists a node q belonging to , making If it is true, then it means and q represents the nearest neighbor track; q is a node in the KD-tree. Indicates the focal point of the search. The distance to node q, where r is the nearest neighbor radius.

[0053] Furthermore, in step 2.4: based on the beginning and end points of the track and their corresponding nearest neighbor points in the nearest neighbor tracks, nearest neighbor segments of the two tracks are extracted. When there are no non-near neighbor points in either nearest neighbor segment, the nearest neighbor segments are confirmed to be similar. The specific method is as follows:

[0054] ,

[0055] In the formula: and These represent the average angular differences in the directions of the first and last points of similar segments of two flight paths, respectively. and The smaller the value, the more consistent the directions of the similar segments of the two tracks are, indicating that they belong to the same route; conversely, the larger the value, the greater the difference in direction between the similar segments, indicating that they do not belong to the same route. Indicates the flight path and flight path The similarity between them, where a is the angle difference threshold and b is the similarity threshold;

[0056] in, The calculation is as follows: ,

[0057] In the formula: Let represent the u-th vector in the header, and n=3, representing the number of vectors selected. Let represent the u-th direction vector of the first point trace of similar segment i. Let represent the u-th direction vector of the first point trace of similar segment j. The angle between the u-th vector at the beginning of similar segment i and similar segment j is represented by the symbol "|| ||".

[0058] The calculation is as follows: ,

[0059] In the formula: Let represent the u-th vector at the tail, and n=3, representing the number of vectors selected. Let represent the u-th direction vector of the trail of the tail point of similar segment i. Let represent the u-th direction vector of the trailing point of similar segment j. The angle between the u-th vector at the tail of similar segment i and similar segment j is represented by the symbol "|| ||".

[0060] The calculation is as follows: ,

[0061] In the formula: and Representing the flight path and flight path The total number of dots; The number of common nearest neighbors between the two tracks is represented by , and neighbor represents the nearest neighbor between the two tracks. The determination is achieved by the fast nearest neighbor search algorithm described in step 2.2.

[0062] Furthermore, step 2.5 is detailed as follows:

[0063] Step 2.5.1: For the tracks that are judged to be similar in step 2.4, calculate the mean of the latitude and longitude points of the similar segments of the two tracks to obtain a smooth fusion segment. Replace the original similar segments with the mean-valued fusion segment and connect the dissimilar parts of the two tracks to achieve track continuation.

[0064] Step 2.5.2: Perform similarity matching between the track following Step 2.5.1 and the remaining track. Repeat Step 2.5.1 until all similar tracks are merged. By continuously completing the fusion of tracks during the iterative fusion process, the position correction of the route is completed.

[0065] Step 2.5.3: Repeat steps 2.5.1 to 2.5.2 for the remaining tracks that have not been matched for similarity, until all tracks have been matched and the regional routes are finally obtained.

[0066] Further, step 4 specifically involves: extracting... The latitude and longitude location information of the unidentified target track points is used to match the nearest neighbor routes with the regional route set line generated in step 3 using the logical judgment formula of the first and last points in step 2.3.

[0067] Simultaneously, the similarity calculation formula in step 2.4 is used. The similarity between the unidentified target's flight path and its nearest air routes is calculated to determine whether the target is flying on a civil aviation route. If the similarity is greater than 0.9, it is determined that the target is flying on a civil aviation route; otherwise, it is not flying on a civil aviation route.

[0068] Further, step 5 specifically involves: extracting the target's maximum flight altitude, maximum flight speed, and maximum acceleration from the track that satisfies the criteria of step 4; calculating the suspicion of the sensitive target to determine whether it is a suspected camouflaged target or a civil aviation target; and removing tracks confirmed as civil aviation targets from the key target set to achieve the screening of sensitive targets.

[0069] The calculation of the suspected sensitivity of the target is as follows: ,

[0070] In the formula: k > 0 is the adjustment parameter;

[0071] Setting the maximum flight altitude for civil aviation 15,000 meters, the maximum flight speed of civil aviation Mach 1, the maximum acceleration for civil aviation 1g Unknown target track Maximum flight altitude For the track Maximum flight speed, For the track Maximum acceleration, similarity , )for Unidentified target track In civil aviation routes Positional similarity:

[0072] ,

[0073] In the formula: and Representing the flight path The total number of points on the track; The number of common nearest neighbors between the two tracks is represented by , and neighbor represents the nearest neighbor between the two tracks. The determination is achieved by the fast nearest neighbor search algorithm described in step 2.2.

[0074] Set the adjustment parameter k=1, and the suspicion level... If the value is less than 0.4, it is considered a civil aircraft; otherwise, it is a sensitive target.

[0075] This application proposes a method for rapid clustering, extraction, and removal of incomplete flight routes based on ADS-B data. This method utilizes historical civil aviation flight trajectories to aggregate civil aviation routes and then identifies civil aviation targets through route matching feature recognition. It proposes a fast nearest neighbor search algorithm based on KD-trees, and uses incomplete flight tracks with known ADS-B information to achieve rapid extraction of civil aviation routes. The identification method based on route matching features removes civil aviation targets, providing a new perspective on sensitive target screening methods. This method has significant advantages, including lower time consumption, higher accuracy, and more stable performance in complex scenarios. Attached Figure Description

[0076] Figure 1 This is a flowchart of the method of the present invention;

[0077] Figure 2 The flowchart shows the fast nearest neighbor search algorithm for KD-trees.

[0078] Figure 3 For DBCSAN density clustering;

[0079] Figure 4 The cases are neighboring tracks, where (a) are neighboring tracks on the same route with overlapping relationships, (b) are neighboring tracks on the same route with inclusion relationships, (c) are neighboring tracks on different routes with intersecting relationships, and (d) are neighboring tracks on different routes with bifurcating relationships.

[0080] Figure 5 A segment of a nearby track containing non-nearest neighbor points;

[0081] Figure 6 This is a diagram illustrating similar segments, vectors, and angles.

[0082] Figure 7 This is a schematic diagram of the KD-tree construction process;

[0083] Figure 8 This is a schematic diagram of the final structure of the KD-tree;

[0084] Figure 9 This is a diagram illustrating a fast search for nearest neighbors.

[0085] Figure 10 This is an actual aerial intelligence map of the area;

[0086] Figure 11 An aerial intelligence map of an area containing unidentified aerial targets without any messages;

[0087] Figure 12 For regional civil aviation routes;

[0088] Figure 13 This is a diagram showing the identification results of the sensitivity target suspicion assessment based on the flight path location.

[0089] Figure 10 The different colored lines represent different target tracks in the regional intelligence (including all civil aviation targets and unidentified targets); Figure 11 Different colored lines represent different unidentified target tracks; Figure 12 Different colored lines represent different flight paths; Figure 13 The lines of different colors in the diagram represent different sensitive target tracks. Detailed Implementation

[0090] The following detailed embodiments of the present invention are given with reference to the accompanying drawings, which are used to further illustrate the structure of the present invention.

[0091] To facilitate understanding of the embodiments of the present invention, the abbreviations and key terms that may be involved in the embodiments of the present invention will first be explained or defined.

[0092] Example 1. A method for extracting and removing incomplete flight routes based on ADS-B data, the process of which is as follows: Figure 1 As shown, it includes the following steps:

[0093] Step 1: Preprocess the regional sample data to generate partially complete flight routes:

[0094] Step 2: For track segments that cannot be classified into a single cluster in Step 1, generate flight routes by iteratively fusing similar trajectories.

[0095] Step 3: Combine the routes from Step 1 and the routes from Step 2 to form a regional route set (line);

[0096] Step 4, Extraction The latitude and longitude location information of the unidentified target track point is matched with the nearest route set line generated in step 3 to calculate the position similarity between the unidentified target track and its nearest route, and to determine whether the target is flying on a civil aviation route.

[0097] Step 5: Screen sensitive targets on the civil aviation routes determined in Step 4.

[0098] Furthermore, such as Figure 3 As shown, step 1 is as follows:

[0099] For regional sample data To achieve a unified direction, traditional DBSCAN density clustering is used to preprocess incomplete tracks within the region. The first and last points of the track are extracted as positional features, and the distance of the track is extracted as motion features. DBSCAN density clustering is then performed. The DBSCAN density clustering determines clusters with at least one neighboring point by detecting the number of neighboring points within the radius of each data point. The track of the cluster center of each cluster is then extracted as the flight path of that cluster.

[0100] Furthermore, step 2 specifically includes the following steps:

[0101] Step 2.1, Utilizing flight paths Construct a two-dimensional KD-tree;

[0102] Step 2.2: Use the two-dimensional KD tree constructed in Step 2.1 to perform a fast nearest neighbor search;

[0103] Step 2.3: Determine the result in step 2.2. and Is it a nearby flight path?

[0104] Step 2.4: Based on the nearest neighbor tracks in Step 2.3, extract the corresponding nearest neighbor segments and determine whether the nearest neighbor segments are similar.

[0105] Step 2.5: Iteratively merge the tracks that were determined to be similar in Step 2.4 to generate regional routes.

[0106] Furthermore, such as Figure 7 As shown, step 2.1 specifically includes the following steps:

[0107] Step 2.1.1: Calculate the track The variance of the tracking points in each dimension was calculated, and the dimension with the largest variance was selected as the splitting dimension, dim.

[0108] ,

[0109] In the formula: m is the current number of data points, and k represents the node data dimension. This represents the value of the i-th data point in the k-th dimension. represents the mean of the dataset along the k-th dimension, and arg max represents the value of the independent variable that makes the function reach its maximum value;

[0110] Step 2.1.2: Select the partitioning dimension dim from Step 2.1.1, perform the first partitioning on this dimension, and find the median data of the points in the current data space on this dimension, and use it as the partitioning point, i.e. the root node. The value of the partitioning point on the partitioning dimension dim is the splitting value.

[0111] Step 2.1.3: Based on the partition dimension dim calculated in Step 2.1.1 and the partition point determined in Step 2.1.2, determine the following: the track point with a value less than the partition value on the partition dimension dim is located in the left subspace, and the track point with a value greater than the partition value on the partition dimension dim is located in the right subspace.

[0112] Step 2.1.4: Repeat steps 2.1.1 to 2.1.4 for the waypoints in the left and right subspaces respectively, until the left and right subspaces can no longer be divided, thus obtaining the final KD tree, as shown below. Figure 8 As shown.

[0113] Furthermore, such as Figure 2 As shown, step 2.2 is as follows:

[0114] Step 2.2.1: Extract track The first point and tail point Constructing a search point set traverse the set of points to be searched ;

[0115] Extracting flight tracks The first point and tail point as a set of search points traverse the set of points to be searched ;

[0116] Step 2.2.2: Establish the search path:

[0117] The KD tree established in step 2.1 is traversed using the preorder traversal method. In each level, the subspace to which the search point belongs is determined based on the dimension dim of the current level and the partition value. If the partition value is less than the partition value, it belongs to the left subspace; if the partition value is greater than the partition value, it belongs to the right subspace. This process continues until a leaf node is reached, thus forming a search path.

[0118] Step 2.2.3: Calculate the distance and determine if it is a nearest neighbor point, specifically as follows: Figure 9 As shown:

[0119] The search path is backtracked sequentially to calculate the distance. If the distance from the current node to the search point is less than the nearest neighbor radius r, then the search point is considered a nearest neighbor; otherwise, the backtracking continues until the root node is reached.

[0120] The distance calculation is as follows:

[0121] Since the data points are in radian coordinates of latitude and longitude, the Haversine formula is used for distance calculation: , ,

[0122] In the formula: , Two track points respectively The latitude of q For point The difference in latitude between q and q For point The difference in longitude between q and R, where R is the Earth's radius;

[0123] Nearest neighbor search algorithm:

[0124] Input: Search point p = Search path path, nearest neighbor radius r

[0125] Output: Is it a nearest neighbor?

[0126] 1 search_ neighbor (p, path, r):

[0127] 2 curr_nearest_dist = infinity / / Initialization

[0128] 3 FOR node, dim IN reversed(path): / / Backtrack the search path

[0129] 4 d = dist(p,node) / / Calculate the value of p using the Haversine formula when p is the node.

[0130] 5. Actual distance from the previous node to the target point

[0131] 6 IF d < r: / / If the distance is less than the nearest neighbor radius r

[0132] 7 RETURN 1 / / is the nearest neighbor point

[0133] 8 curr_nearest_dist = min(d, curr_nearest_dist)

[0134] 9 parent_node,dim = path[-2] IF len(path) > 1

[0135] 10 ELSE (None, None) / / Get the parent node

[0136] 11 IF parent_node IS NOT None AND abs(

[0137] 12 parent _node[dim] - p[dim]) >curr_nearest_dist:

[0138] 13 CONTINUE

[0139] 14 / / Determine if a sibling node might contain a closer node.

[0140] 15. abs() is the absolute value function.

[0141] 16 sib_node = parent_node.left IF node

[0142] 17 ==parent_node.right ELSE parent_node.right

[0143] 18 IF sib_node: / / If a sibling node exists

[0144] 19 d = dist (sib_node, p)

[0145] 20 IF d < r:

[0146] 21 RETURN 1

[0147] 22 curr_nearest_dist= min(d,curr_nearest_dist)

[0148] RETURN 0.

[0149] Furthermore, step 2.3 is detailed as follows:

[0150] ,

[0151] In the formula: This means that for any point... Belongs to set There exists a node q belonging to , making If it is true, then it means and For nearby tracks, the situation of nearby tracks is as follows: Figure 4 As shown, Figure 4 In the table, (a) represents adjacent tracks on the same route that have an overlapping relationship, (b) represents adjacent tracks on the same route that have an inclusion relationship, (c) represents adjacent tracks on different routes that have an intersecting relationship, and (d) represents adjacent tracks on different routes that have a bifurcation relationship.

[0152] q is a node in the KD-tree. Indicates the focal point of the search. The distance to node q, where r is the nearest neighbor radius.

[0153] Further, in step 2.4: based on the beginning and end points of the track and their corresponding nearest neighbor points in the nearest neighbor tracks, extract the nearest neighbor segments of the two tracks, such as... Figure 5 As shown, when neither of the two nearest neighbor segments contains any non-nearest neighbor points, the nearest neighbor segments are considered similar. The specific method is as follows:

[0154] ,

[0155] In the formula: and These represent the average angular differences in the directions of the first and last points of similar segments of two flight paths, respectively. and The smaller the value, the more consistent the directions of the similar segments of the two tracks are, indicating that they belong to the same route; conversely, the larger the value, the greater the difference in direction between the similar segments, indicating that they do not belong to the same route.

[0156] Indicates the flight path and flight path The similarity between them, where a is the angle difference threshold and b is the similarity threshold;

[0157] in, The calculation is as follows: ,

[0158] In the formula: Let represent the u-th vector in the header, and n=3, representing the number of vectors selected. Let represent the u-th direction vector of the first point trace of similar segment i. Let represent the u-th direction vector of the first point trace of similar segment j. The angle between the u-th vector at the beginning of similar segment i and similar segment j is represented by the symbol "|| ||".

[0159] The calculation is as follows: ,

[0160] In the formula: Let represent the u-th vector at the tail, and n=3, representing the number of vectors selected. Let represent the u-th direction vector of the trail of the tail point of similar segment i. Let represent the u-th direction vector of the trailing point of similar segment j. The angle between the u-th vector at the tail of similar segment i and similar segment j is represented by the symbol "|| ||". Indicates the flight path and flight path The similarity between them, where a is the angle difference threshold and b is the similarity threshold:

[0161] ,

[0162] In the formula: and Representing the flight path and flight path The total number of dots;

[0163] The number of common nearest neighbors between the two tracks is represented by , and neighbor represents the nearest neighbor between the two tracks. The determination is achieved by the fast nearest neighbor search algorithm described in step 2.2.

[0164] Furthermore, step 2.5 is detailed as follows:

[0165] Step 2.5.1: For the tracks that are determined to be similar in Step 2.4, the latitude and longitude points of the similar segments of the two tracks are averaged to obtain a smooth fusion segment. The averaged fusion segment replaces the original similar segment, and the dissimilar parts of the two tracks are connected to achieve track continuity.

[0166] Step 2.5.2: Perform similarity matching between the track following Step 2.5.1 and the remaining track. Repeat Step 2.5.1 until all similar tracks are merged. By continuously completing the fusion of tracks during the iterative fusion process, the position correction of the route is completed.

[0167] Step 2.5.3: Repeat steps 2.5.1 to 2.5.2 for the remaining tracks that have not been matched for similarity, until all tracks have been matched and the regional routes are finally obtained.

[0168] Further, step 4 specifically involves: extracting... The latitude and longitude location information of the unidentified target's flight path is obtained, and the first and last point logical judgment formula in step 2.3 is used to match the nearest neighbor flight path with the regional flight path set "line" generated in step 3.

[0169] Simultaneously, the similarity calculation formula in step 2.4 is used. The similarity between the unidentified target's flight path and its nearest air routes is calculated to determine whether the target is flying on a civil aviation route. If the similarity is greater than 0.9, it is determined that the target is flying on a civil aviation route; otherwise, it is not flying on a civil aviation route.

[0170] Further, step 5 specifically involves: extracting the target's maximum flight altitude, maximum flight speed, and maximum acceleration from the track that satisfies the criteria of step 4; calculating the suspicion of the sensitive target to determine whether it is a suspected camouflaged target or a civil aviation target; and removing tracks confirmed as civil aviation targets from the key target set to achieve the screening of sensitive targets.

[0171] The calculation of the suspected sensitivity of the target is as follows: ,

[0172] In the formula: k > 0 is the adjustment parameter;

[0173] Setting the maximum flight altitude for civil aviation 15,000 meters, the maximum flight speed of civil aviation Mach 1, the maximum acceleration for civil aviation 1g Unknown target track Maximum flight altitude For the track Maximum flight speed, For the track Maximum acceleration, similarity , )for Unidentified target track In civil aviation routes Positional similarity,

[0174] ,

[0175] In the formula: and Representing the flight path and flight path The total number of dots; The number of common nearest neighbors between the two tracks is represented by , and neighbor represents the nearest neighbor between the two tracks. The determination is achieved by the fast nearest neighbor search algorithm described in step 2.2.

[0176] Set the adjustment parameter k=1, and the suspicion level... If the value is less than 0.4, it is considered a civil aircraft; otherwise, it is a sensitive target.

[0177] Example 2. This example is an experiment based on the method described in Example 1, as follows:

[0178] Experiment 1: We used the DBSCAN density clustering method to process incomplete flight path data, prioritizing the extraction of partially complete flight paths within the region, and the experimental results are shown in Table 1.

[0179] Table 1 Route Preprocessing

[0180] .

[0181] Experiment 2: For the calculation of track similarity, the performance of the KD-tree-based nearest neighbor search algorithm proposed in this application was compared with the existing methods LCSS and the original KD-tree shortest distance search algorithm. In the experiment, we selected 316, 253, and 223 tracks respectively, and used these three algorithms to calculate the similarity matching between tracks. The results are shown in Table 2.

[0182] Table 2 Algorithm Comparison

[0183] .

[0184] Experiment 3: Actual collected area air intelligence, such as Figure 10 As shown. Among them, unidentified aerial targets without messages are as follows: Figure 11 As shown. Regional civil aviation routes generated using a KD-tree-based nearest neighbor search algorithm are as follows: Figure 12 As shown.

[0185] The results of the sensitive target suspicion assessment based on flight route location are as follows: Figure 13 As shown, 207 civil aviation targets were eliminated, and 23 sensitive targets were successfully screened out.

[0186] The specific embodiments described herein are merely illustrative examples of the spirit of the invention. Those skilled in the art to which this invention pertains may make various modifications or additions to the described specific embodiments or use similar methods to substitute them, without departing from the spirit of the invention or exceeding the defined scope.

Claims

1. A method for extracting and eliminating incomplete routes based on ADS-B data, characterized by: The following steps are involved: Step 1: Preprocess the regional sample data to generate some complete routes; Step 2: For the track segments that cannot be classified into a cluster in step 1, generate routes by iteratively fusing similar tracks, which specifically includes the following steps: Step 2.1: Using Tracks Constructing a two-dimensional KD tree includes the following steps: Step 2.1.1: Calculate the track The variance of the track points in each dimension, select the dimension with the largest variance as the partition dimension dim: , Where: m is the number of current data points, k represents the node data dimension, Represented as the value of the ith data point in the k dimension, represents the mean of the data set in the k dimension, and arg max represents the value of the independent variable that makes the function reach the maximum value; Step 2.1.2, select the partition dimension dim in step 2.1.1, perform the first partition on this dimension, and find the median data of the points in the current data space on this dimension, and use it as the partition point, i.e., the root node. The value of the partition point on this partition dimension dim is the split value; Step 2.1.3, judging according to the partition dimension dim calculated in step 2.1.1 and the partition point determined in step 2.1.2, the track points whose values ​​on the partition dimension dim are less than the partition value are located in the left subspace, and the track points whose values ​​on the partition dimension dim are greater than the partition value are located in the right subspace; Step 2.1.4: Repeat steps 2.1.1 to 2.1.4 for the track points in the left subspace and the right subspace respectively until the left and right subspaces cannot be split any further, and the final KD tree is obtained; Step 2.2: Use the two-dimensional KD tree constructed in step 2.1 to quickly search for neighboring points, as follows: Step 2.2.1: Extract track The first point and tail point Constructing a search point set , traverse the set of points to be searched ; Extract track The first point and tail point As a search point set , traverse the set of points to be searched ; Step 2.2.2, establish a search path: Use the pre-order traversal method to traverse the KD tree established in step 2.

1. In each layer, according to the dimension dim of the search point in the current layer and the split value, determine the subspace to which the search point belongs. If it is less than the split value, it is the left subspace, and if it is greater than the split value, it is the right subspace. Continue traversing until the leaf node is reached, thus forming a search path; Step 2.2.3, calculate the distance and determine whether it is a neighbor point: backtrack the search path to calculate the distance in sequence. If the distance from the current node to the search point is less than the neighbor radius r, then this search point is regarded as a neighbor point; otherwise, continue to backtrack to the root node; The calculation distance is specifically as follows: Since the data points are in radian information of longitude and latitude, the Haversine formula is used for distance calculation: , , Where: , Two track points and the latitude of q, For point The latitude difference from q, For point The longitude difference from q, R is the radius of the earth; Step 2.3: Determine the and Whether it is a neighboring track; Step 2.4: extract the corresponding neighboring segments according to the neighboring tracks in step 2.3, and determine whether the neighboring segments have similarity; Step 2.5, iteratively merge the tracks judged to be similar in step 2.4 to generate regional routes; Step 3, combine the routes in step 1 and the routes in step 2 to form a regional route set line; Step 4: Extraction The latitude and longitude position information of the unknown target track point is matched with the regional route set line generated in step 3 to calculate the position similarity between the unknown target track and its neighboring routes to determine whether the target is flying on a civil aviation route; Step 5: Screen the targets on the civil aviation routes determined in step 4 as sensitive targets.

2. The method for extracting and eliminating incomplete routes based on ADS-B data according to claim 1, characterized in that: The step 1 is specifically as follows: Regional sample data In a unified direction, traditional DBSCAN density clustering is used to pre-process the incomplete tracks in the area, extract the first and last points of the track as position features, extract the range of the track as a motion feature, and perform DBSCAN density clustering. The DBSCAN density clustering takes each data point as the center, detects the number of neighboring points within the radius, and determines the cluster with no less than 1 neighboring points as a cluster, and extracts the cluster center track of each cluster as the route of the cluster.

3. The method for extracting and eliminating incomplete routes based on ADS-B data according to claim 1 or 2, characterized in that: The step 2.3 is as follows: , Where: For any point Belongs to the collection , there is a node q belonging to , so that If established, it means and is the neighboring track; q is a node in the KD tree, Indicates the search point concentration point The distance to node q, r is the neighbor radius.

4. The method for extracting and eliminating incomplete routes based on ADS-B data according to claim 3, characterized in that: In step 2.4: based on the corresponding neighboring points in the first and last points of the track and its neighboring tracks, the neighboring segments of the two tracks are intercepted. When there are no non-neighboring points in the two neighboring segments, it is confirmed that the neighboring segments are similar. The specific method is as follows: , Where: and Respectively represent the average angle difference between the head and tail point directions of the two similar track segments, and The smaller the value, the more consistent the directions of the similar segments of the two tracks are, and they belong to the tracks on the same route; otherwise, it means that the directions of the similar segments are very different, and they do not belong to the tracks on the same route. Indicates the track and track The similarity between them, a is the angle difference threshold, b is the similarity threshold; in, The calculation of is as follows: , Where: , represents the uth vector in the head, n=3, represents the number of selected vectors, represents the u-th direction vector of the first point trace of similar segment i, represents the u-th direction vector of the first point trace of similar segment j, represents the angle between the u-th vector at the beginning of similar segment i and similar segment j, and the symbol "|| ||" represents the modulus of the vector; The calculation of is as follows: , Where: , represents the uth vector at the end, n=3, represents the number of selected vectors, represents the u-th direction vector of the tail trace of similar segment i, represents the u-th direction vector of the tail trace of similar segment j, represents the angle between the uth vector at the end of similar segment i and similar segment j, and the symbol "|| ||" represents the modulus of the vector; The calculation of is as follows: , Where: and Respectively indicate the track and track The total number of points; represents the number of common neighboring points of the two tracks, and neighbor represents the neighboring points between the two tracks, which are determined by the neighboring point fast search algorithm described in step 2.

2.

5. The method for extracting and eliminating incomplete routes based on ADS-B data according to claim 3, characterized in that: The step 2.5 specifically includes the following steps: Step 2.5.1: For the tracks judged to be similar in step 2.4, the latitude and longitude points of the similar segments of the two tracks are averaged to obtain a smooth fused segment, the averaged fused segment is used to replace the original similar segment, and the non-similar parts of the two tracks are connected to achieve track continuation; Step 2.5.2, similarly match the track after step 2.5.1 with the remaining tracks, repeat step 2.5.1 until all similar tracks are fused, and complete the position correction of the route by continuously fusion and completion of the tracks in the iterative fusion process; Step 2.5.3: Repeat steps 2.5.1 to 2.5.2 for the remaining tracks that have not been similarly matched, until all tracks have been matched and the regional routes are finally obtained.

6. The method for extracting and eliminating incomplete routes based on ADS-B data according to claim 4, characterized in that: The step 4 is specifically as follows: extract The latitude and longitude position information of the unknown target track point, and use the logic judgment formula of the first and last points in step 2.3 to match the nearest route with the regional route set line generated in step 3, and use the similarity calculation formula in step 2.4 , calculate the position similarity between the unidentified target track and its neighboring routes, and determine whether the target is flying on a civil aviation route. If the similarity is greater than 0.9, it is judged that it is flying on a civil aviation route, otherwise it is not flying on a civil aviation route.

7. The method for extracting and eliminating incomplete routes based on ADS-B data according to claim 3, characterized in that: The step 5 is specifically as follows: for the track that meets the requirements of step 4, the maximum flight altitude, maximum flight speed and maximum acceleration of the target are extracted to calculate the sensitivity of the target suspicion to determine whether it is a suspected disguised target or a civil aviation target, and the track confirmed as a civil aviation target is removed from the key target set to achieve the screening of sensitive targets. The calculation of the sensitivity target suspicion is as follows: , Where: k > 0, is the adjustment parameter; Set the maximum flight altitude for civil aviation 15,000 meters, the maximum flight speed of civil aviation Mach 1, the maximum acceleration of civil aviation For 1g, Unknown target track The maximum flight altitude, For the track The maximum flight speed, For the track The maximum acceleration, similarity( , )for Unknown target track With civil aviation routes The position similarity of , Where: and Respectively indicate the track and track The total number of points; represents the number of common neighbor points of the two tracks, and neighbor represents the neighbor points between the two tracks, which are determined by the neighbor point fast search algorithm described in step 2.2; Set the adjustment parameter k=1, the suspicion If it is less than 0.4, it is considered to be a civil aircraft, otherwise it is a sensitive target.

Citation Information

Patent Citations

  • Flight target anomaly detection method based on multi-source data fusion

    CN113538974A