Low-altitude flight path processing method and device based on three-dimensional grid
By dividing the low-altitude airspace into multiple three-dimensional grid units and processing the aircraft track data, the problems of large data volume, low accuracy and noise interference in low-altitude track processing are solved, and efficient and accurate track analysis and aircraft mission management are achieved.
Patent Information
- Application Number
- CN202510031281.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-08
- Publication Date
- 2025-04-29
- Estimated Expiration
- 2045-01-08
AI Technical Summary
In low-altitude track processing, the problem of huge data volume, insufficient accuracy, noise interference and missing tracks in complex environments, resulting in inefficient real-time analysis and calculation results and inaccurate calculation results.
Using a three-dimensional grid-based processing method, the low-altitude airspace is divided into multiple three-dimensional grid cells, and a unique grid code is generated for each cell. Through the denoising and diluting processing of the aircraft track data, the three-dimensional grid cells corresponding to each track point are determined and their attribute data are associated with the grid code to restore the aircraft's route.
It improves the efficiency and accuracy of track calculation and analysis of low-altitude aircraft, ensures the safety of low-altitude airspace, optimizes resource utilization, and improves the execution efficiency of aircraft tasks such as drones.
Smart Images

Figure CN119445001B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of data processing technology, and in particular to a low-altitude track processing method and device based on a three-dimensional grid. Background Art
[0002] As an emerging industry, low-altitude economy has become a hot topic of social concern and is developing rapidly. With the widespread application of drones and other aircraft in low-altitude economic fields such as logistics, agriculture, emergency rescue, inspection and urban air traffic, reasonable low-altitude track management can not only directly guarantee flight safety, efficiency and compliance, but also ensure the safety of low-altitude airspace, optimize resource utilization, improve the execution efficiency of drones and other aircraft tasks, and promote the healthy development of the entire low-altitude economic ecology. Low-altitude tracks face problems such as inefficient real-time analysis and calculation, inaccurate calculation results caused by factors such as huge and growing data volume, insufficient data accuracy, noise interference, and missing tracks in complex environments, which affect the process of low-altitude airspace control and intelligent flight services.
[0003] Therefore, a new low-altitude track processing method is needed to solve the above problems. Summary of the invention
[0004] The present application provides a low-altitude track processing method and device based on a three-dimensional grid, in an effort to solve or at least alleviate at least one of the above problems.
[0005] According to one aspect of the present application, a low-altitude track processing method based on a three-dimensional grid is provided, comprising: dividing the low-altitude airspace where the aircraft is active into a plurality of three-dimensional grid units, and generating a unique grid code for each three-dimensional grid unit; acquiring the track data during the flight of the aircraft to obtain a track data queue, wherein each track point in the track data queue has a time sequence and each track point contains attribute data; by using the attribute data of the track point corresponding to every two adjacent time points, determining whether the track point corresponding to the next adjacent time point is a noise point, the track data queue is denoised to obtain a smooth track data queue; filtering the track points in the smooth track data queue based on at least the distance relationship between each track point and the adjacent track points to obtain a sparse track data queue; processing each track point in the sparse track data queue separately to determine the three-dimensional grid unit matching each track point, and associating the attribute data of each track point with the grid code of the matching three-dimensional grid unit, and restoring the route of the aircraft from the determined three-dimensional grid unit.
[0006] Optionally, in the method according to the present application, each track point in the thinned track data queue is processed separately to determine a three-dimensional grid unit that matches each track point, including: constructing a rectangular space range with the current track point as the center and a predetermined size as the length and width, if the rectangular space range overlaps with the three-dimensional grid unit of at least one planned route in the low-altitude airspace, then taking the at least one planned route as the first candidate route; calculating the third vertical distance from the current track point to each first candidate route, if the third vertical distance is not greater than a preset distance value, then taking the first candidate route as the first candidate route; A route is selected as a second candidate route; a unique matching route is determined from the second candidate routes using a hidden Markov model; the unique matching route is projected with the current track point to obtain a projection point, and two track points closest to the current track point are selected to generate a first adjacent point and a second adjacent point; it is determined whether the projection point, the first adjacent point and the second adjacent point meet a preset condition, and if the preset condition is met, it is confirmed that the three-dimensional grid unit where the projection point is located belongs to the route where the current track point is located, and the attribute data of the current track point is associated with the grid code of the three-dimensional grid unit.
[0007] Optionally, in the method according to the present application, the preset conditions include: the projection point is within a rectangle with a straight line connecting the first adjacent point and the second adjacent point as a diagonal, and the projection point, the first adjacent point, and the second adjacent point are collinear.
[0008] Optionally, in the method according to the present application, the track data queue is denoised by using the attribute data of the track points corresponding to every two adjacent time points to determine whether the track point corresponding to the next adjacent time point is a noise point, including: using the attribute data of the track points corresponding to two adjacent time points to predict the attribute data of the track points corresponding to the next adjacent time point, wherein the attribute data include: speed, heading, coordinates, and elevation; for each attribute data of the track point corresponding to the next adjacent time point, respectively calculate the difference between the corresponding predicted value and the true value, and determine whether each difference is greater than the corresponding preset value; if there is at least one difference greater than its corresponding preset value, confirm that the track point is a noise point; traverse the track points corresponding to each time point in the track data queue, replace the true value of the track point confirmed as a noise point with the predicted value of the track point, and finally obtain a smooth track data queue.
[0009] Optionally, in the method according to the present application, the preset value of the speed is 3 to 5 times the accuracy of the three-dimensional grid unit, the preset value of the heading is the predicted value of the heading of the track point, the preset value of the coordinates is the maximum value of the accuracy range of the horizontal longitude and latitude of the positioning device of the aircraft, and the preset value of the elevation is the maximum value of the elevation accuracy range of the positioning device of the aircraft.
[0010] Optionally, in the method according to the present application, the attribute data of the track points corresponding to two adjacent time points are used to predict the attribute data of the track points corresponding to the next adjacent time point, including: using the average value of the speed of the track points corresponding to the two adjacent time points as the predicted value of the speed of the track points corresponding to the next adjacent time point; using the average value of the headings of the track points corresponding to the two adjacent time points as the predicted value of the headings of the track points corresponding to the next adjacent time point; using the average value of the coordinates of the track points corresponding to the two adjacent time points as the predicted value of the coordinates of the track points corresponding to the next adjacent time point; using the average value of the elevations of the track points corresponding to the two adjacent time points as the predicted value of the elevation of the track points corresponding to the next adjacent time point.
[0011] Optionally, the method according to the present application further includes: connecting a plurality of three-dimensional grid cells included in the planned route of the aircraft's current flight into a line in the latitude direction as a reference line.
[0012] Optionally, in the method according to the present application, the track points in the smoothed track data queue are filtered based at least on the distance relationship between each track point and the adjacent track point, including: from the second track point to the second to last track point in the smoothed track data queue, for each track point: calculating the first vertical distance from the current track point to the straight line where the previous track point and the next track point are located, if the first vertical distance is not less than a preset threshold value of the current track point, filtering the current track point; if the first vertical distance is less than the preset threshold value, calculating the distance from the next track point to the current track point and the next track point The second vertical distance of the straight line of the next track point of the track point, if the second vertical distance is greater than the preset threshold, the current track point is filtered; if the second vertical distance is not greater than the preset threshold, the area of the triangle formed by the previous track point, the current track point and the next track point is calculated, if the area is greater than the area threshold, the current track point is filtered, if the area is not greater than the area threshold, the current track point is retained, wherein the preset threshold of the current track point is the vertical distance value from the current track point to the baseline, and the area threshold is a multiple of the three-dimensional grid unit.
[0013] Optionally, in the method according to the present application, the predetermined size and the preset distance value are both related to the accuracy of the three-dimensional grid unit.
[0014] Optionally, in the method according to the present application, a hidden Markov model is used to determine a unique matching route from the second candidate routes, including: determining the emission probability of the hidden Markov model in combination with the distance and vector direction from the current track point to each projection point of the second candidate route; calculating the first straight-line distance between the current track point and the previous track point, and the second straight-line distance between the projection points of the current track point and the previous track point on the second candidate route, and using the ratio of the first straight-line distance to the second straight-line distance as the transition probability of the hidden Markov model; solving the hidden Markov model according to the emission probability and the transition probability to obtain a unique matching route.
[0015] According to another aspect of the present application, a low-altitude track processing device based on a three-dimensional grid is provided, comprising: a low-altitude airspace grid coding unit, adapted to divide the low-altitude airspace of aircraft activities into a plurality of three-dimensional grid units, and to generate a unique grid code for each three-dimensional grid unit; an original track acquisition unit, adapted to acquire the track data of the aircraft during flight to obtain a track data queue, wherein each track point in the track data queue has a time sequence and each track point contains attribute data; a track processing unit, adapted to determine the track point corresponding to the next adjacent time point by using the attribute data of the track point corresponding to each two adjacent time points The invention is suitable for filtering the track points in the smoothed track data queue based on whether the track points are noise points to obtain a smoothed track data queue; the invention is also suitable for filtering the track points in the smoothed track data queue based on at least the distance relationship between each track point and the adjacent track points to obtain a sparse track data queue; the route matching unit is suitable for processing each track point in the sparse track data queue separately to respectively determine the three-dimensional grid unit matching each track point, and associate the attribute data of each track point with the grid code of the matching three-dimensional grid unit, and restore the route of the aircraft by the determined grid unit.
[0016] According to another aspect of the present application, a computing device is provided, comprising: one or more processor memories; one or more programs, wherein the one or more programs are stored in the memories and configured to be executed by one or more processors, and the one or more programs include instructions for executing any of the above methods.
[0017] According to another aspect of the present application, a computer-readable storage medium storing one or more programs is provided. The one or more programs include instructions. When the instructions are executed by a computing device, the computing device executes any of the methods described above.
[0018] According to another aspect of the present application, a computer program product is provided, comprising a computer program / instruction, wherein the computer program / instruction implements the steps of the above-mentioned method when executed by a processor.
[0019] In summary, according to the solution of this application, the low-altitude airspace is divided into multiple fine-grained three-dimensional grid units; by processing the real-time track data of the aircraft, it is matched to a route composed of three-dimensional grid units, and at the same time, attribute data related to the flight status (speed, heading, coordinates, elevation, etc.) are associated with each three-dimensional grid unit, which effectively solves the current problems of low-altitude track analysis and calculation efficiency, inaccurate calculation results, etc., and can improve the efficiency and accuracy of low-altitude aircraft track calculation and analysis. In this way, it helps to ensure the safety of low-altitude airspace, optimize resource utilization, and improve the mission execution efficiency of aircraft such as drones.
[0020] The above description is only an overview of the technical solution of the present application. In order to more clearly understand the technical means of the present application, it can be implemented in accordance with the contents of the specification. In order to make the above and other purposes, features and advantages of the present application more obvious and easy to understand, the specific implementation methods of the present application are listed below. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] In order to achieve the above and related purposes, certain illustrative aspects are described herein in conjunction with the following description and accompanying drawings, which indicate various ways in which the principles applied herein can be practiced, and all aspects and their equivalents are intended to fall within the scope of the claimed subject matter. By reading the following detailed description in conjunction with the accompanying drawings, the above and other purposes, features and advantages of the present application will become more apparent. Throughout the application, the same reference numerals generally refer to the same parts or elements.
[0022] Figure 1 A schematic diagram of a low-altitude flight path processing device 100 based on a three-dimensional grid according to some embodiments of the present application is shown;
[0023] Figure 2 A schematic diagram of a computing device 200 according to some embodiments of the present application is shown;
[0024] Figure 3 A schematic flow chart of a low-altitude flight path processing method 300 based on a three-dimensional grid according to some embodiments of the present application is shown;
[0025] Figure 4 A schematic diagram of latitudinal abstract connection lines based on three-dimensional grid units according to some embodiments of the present application is shown;
[0026] Figure 5 A schematic diagram of determining a first candidate route according to some embodiments of the present application is shown;
[0027] Figure 6 A schematic diagram of determining a transmission probability according to some embodiments of the present application is shown;
[0028] Figure 7A schematic diagram of determining a transition probability according to some embodiments of the present application is shown. DETAILED DESCRIPTION
[0029] The exemplary embodiments of the present application will be described in more detail below with reference to the accompanying drawings. Although the exemplary embodiments of the present application are shown in the accompanying drawings, it should be understood that the present application can be implemented in various forms and should not be limited by the embodiments set forth herein. On the contrary, these embodiments are provided in order to enable a more thorough understanding of the present application and to fully convey the scope of the present application to those skilled in the art.
[0030] The present application aims to provide a low-altitude track processing method based on three-dimensional grids to generate the route of an aircraft (such as a drone, micro-aircraft, etc.) flying in low-altitude airspace. The route includes a series of three-dimensional grid units, and each three-dimensional grid unit has a unique grid code. In this way, the route of the aircraft can be identified by using the grid codes of this series of three-dimensional grid units. At the same time, the attribute data of the aircraft during flight can also be associated with the three-dimensional grid unit.
[0031] Based on this, it is possible to quickly determine whether the aircraft is flying according to the planned route, whether it has deviated from the route, etc., in order to facilitate low-altitude airspace control and promote intelligent flight services.
[0032] Figure 1 A schematic diagram of a low-altitude track processing device 100 based on a three-dimensional grid according to some embodiments of the present application is shown. In some embodiments, the device 100 is arranged in a central server, and the central server is respectively connected to multiple edge computing nodes for communication, and each edge computing node can obtain real-time track data of aircraft such as drones through protocols such as Http(s) and MQTT, and store them in a distributed manner so as to upload them to the central server in real time or on a scheduled basis.
[0033] refer to Figure 1 The device 100 includes: a low-altitude airspace grid encoding unit 110, an original track acquisition unit 120, a track processing unit 130 and a route matching unit 140.
[0034] First, the low-altitude airspace grid coding unit 110 divides the low-altitude airspace where the aircraft is active into multiple three-dimensional grid units according to the three-dimensional grid division rules and coding specifications, and generates a unique grid code for each three-dimensional grid unit. Low-altitude airspace generally refers to the flight area below 1000 meters. Three-dimensional grid coding methods such as geospatial grid codes and Beidou grid codes can be used to divide three-dimensional grid units and generate grid codes. Taking Beidou grid code technology as an example, the low-altitude airspace is gridded and encoded, and the grid level with an accuracy of 2m is used as the reference grid division level according to the track accuracy requirements and the control requirements of the aircraft. Of course, it is not limited to this.
[0035] In the three-dimensional grid system, the flight path of an aircraft is generated based on three-dimensional grid cells. The three-dimensional grid cells occupied by the flight path are recorded in sequence to form the flight path of the aircraft. In other words, the flight path contains multiple three-dimensional grid cells. The flight path can be quickly found by using the grid code corresponding to the three-dimensional grid cell.
[0036] During the flight of the aircraft, the original track acquisition unit 120 acquires the track data during the flight to obtain a track data queue. Each track point in the track data queue has a time sequence and each track point contains attribute data. According to the implementation of the present application, the track data can be obtained from each edge computing node, and the track data can be formed into a time sequence in chronological order as a track data queue, for example, {T1, T2, …, T n , T n+1 ,…}, where the subscripts 1, 2, …, n represent time points, and T1, T2, … represent attribute data of the track points corresponding to each time point. In some embodiments, the attribute data include: speed, heading, coordinates, and elevation.
[0037] According to this embodiment, the aircraft can be a drone, an electric vertical take-off and landing aircraft (eVTOL), a helicopter, a light fixed-wing aircraft, a micro air vehicle, etc., which generally refers to an aircraft suitable for flying in low-altitude airspace and can be used in aerial photography, logistics distribution, environmental monitoring, communications and other fields.
[0038] Next, the track processing unit 130 processes the track data queue to eliminate noise and data redundancy. The processing generally includes two aspects: one is denoising, and the other is thinning.
[0039] On the one hand, by using the attribute data of the track points corresponding to every two adjacent time points, it is determined whether the track point corresponding to the next adjacent time point is a noise point, so as to denoise the track data queue and obtain a smooth track data queue. On the other hand, based on at least the distance relationship between each track point and the adjacent track points, the track points in the smooth track data queue are filtered to obtain a sparse track data queue. For the specific processing process, please refer to the relevant description below, which will not be expanded here.
[0040] The route matching unit 140 processes each track point in the thinned track data queue to determine the three-dimensional grid unit that matches each track point, and associates the attribute data of each track point with the grid code of the matching three-dimensional grid unit, and restores the route of the aircraft from the determined grid unit. For the specific matching process, please refer to the relevant description below, which will not be expanded here.
[0041] According to the implementation mode of the present application, before the aircraft performs a flight mission, a route is planned for this flight as a planned route. The planned route is also recorded according to the three-dimensional grid unit. The planned route can be directly stored in the low-altitude airspace grid coding unit 110. In this way, the device 100 stores a plurality of suitable planned routes that have appeared in the low-altitude airspace.
[0042] Furthermore, the device 100 can compare whether the route restored by the route matching unit 140 is consistent with the planned route of this flight mission. If they are consistent, it means that the aircraft has not deviated from the planned route; if they are inconsistent, it can be reported to the central server to execute the subsequent airspace control process.
[0043] According to the device 100 of the present application, the low-altitude airspace is divided into a plurality of fine-grained three-dimensional grid units; by processing the real-time track data of the aircraft, it is matched to a route composed of three-dimensional grid units, and at the same time, attribute data related to the flight status (speed, heading, coordinates, elevation, etc.) is associated with each three-dimensional grid unit, thereby effectively solving the problems currently faced by low-altitude tracks, such as inefficient real-time analysis and calculation, inaccurate calculation results, etc., and helping to ensure the safety of low-altitude airspace, optimize resource utilization, and improve the mission execution efficiency of aircraft such as drones.
[0044] The apparatus 100 according to the present application may be implemented by one or more computing devices. Figure 2 FIG. 2 shows a schematic diagram of a computing device 200 according to some embodiments of the present application. It should be noted that: Figure 2 The computing device 200 shown is only an example. In practice, the computing device used to implement the method of the present application can be any type of device, and its hardware configuration can be different from the above. Figure 2 The computing device 200 shown is the same as Figure 2 The computing device 200 shown is different. In practice, the computing device used to implement the embodiment of the present application can be Figure 2 The hardware components of the computing device 200 shown are increased or deleted, and the present application does not limit the specific hardware configuration of the computing device.
[0045] like Figure 2 In a basic configuration, computing device 200 includes at least one processing unit 202 and system memory 204. According to one aspect, depending on the configuration and type of computing device, processing unit 202 can be implemented as a processor. System memory 204 includes, but is not limited to, volatile storage (e.g., random access memory), non-volatile storage (e.g., read-only memory), flash memory, or any combination of such memories. According to one aspect, system memory 204 includes operating system 205 and program modules 206.
[0046] According to one aspect, operating system 205 is suitable for controlling the operation of computing device 200, for example. Furthermore, examples are practiced in conjunction with graphics libraries, other operating systems, or any other application programs, and are not limited to any particular application or system. Figure 2 This basic configuration is illustrated in FIG. 2 by those components within dashed line 208. According to one aspect, computing device 200 has additional features or functionality. For example, according to one aspect, computing device 200 includes additional data storage devices (removable and / or non-removable), such as magnetic disks, optical disks, or tapes. Such additional storage Figure 2 2 is illustrated by removable storage 209 and non-removable storage 210.
[0047] As stated above, according to one aspect, program modules are stored in the system memory 204. According to one aspect, the program modules may include one or more application programs, and the present application does not limit the types of application programs, for example, the application programs may include: email and contact applications, word processing applications, spreadsheet applications, database applications, slide show applications, drawing or computer-aided applications, web browser applications, etc.
[0048] According to one aspect, the examples may be practiced on a circuit comprising discrete electronic components, a packaged or integrated electronic chip containing logic gates, a circuit utilizing a microprocessor, or a single chip containing electronic components or a microprocessor. Figure 2 Each or many components shown in can be integrated in a system on chip (SOC) on a single integrated circuit to practice examples. According to one aspect, such a SOC device may include one or more processing units, a graphics unit, a communication unit, a system virtualization unit, and various application functions, all of which are integrated (or "burned") into a chip substrate as a single integrated circuit. When operated via SOC, the functions described in the present application can be operated via a dedicated logic integrated with other components of a computing device 200 on a single integrated circuit (chip). Other technologies that can perform logical operations (such as AND, OR, and NOT) can also be used to practice embodiments of the present application, including but not limited to mechanical, optical, fluid, and quantum technologies. In addition, embodiments of the present application can be practiced in a general-purpose computer or in any other circuit or system.
[0049] According to one aspect, the computing device 200 may also have one or more input devices 212, such as a keyboard, a mouse, a pen, a voice input device, a touch input device, a VR motion capture input device, etc. Output devices 214 may also be included, such as a display, a speaker, a printer, etc. The aforementioned devices are examples and other devices may also be used. The computing device 200 may include one or more communication connections 216 that allow communication with other computing devices 218. Examples of suitable communication connections 216 include, but are not limited to: RF transmitters, receivers and / or transceiver circuits; Universal Serial Bus (USB), parallel and / or serial ports.
[0050] The term computer-readable medium as used in this application includes computer storage media. Computer storage media may include volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information (e.g., computer-readable instructions, data structures, or program modules). System memory 204, removable storage 209, and non-removable storage 210 are all examples of computer storage media (i.e., memory storage). Computer storage media may include random access memory (RAM), read-only memory (ROM), electrically erasable read-only memory (EEPROM), flash memory or other memory technology, CD-ROM, digital versatile disk (DVD) or other optical storage, cassettes, tapes, disk storage or other magnetic storage devices, or any other products that can be used to store information and can be accessed by computing device 200. According to one aspect, any such computer storage medium can be part of computing device 200. Computer storage media do not include carrier waves or other propagated data signals.
[0051] According to one aspect, communication media is implemented by computer readable instructions, data structures, program modules, or other data in a modulated data signal (e.g., a carrier wave or other transport mechanism), and includes any information delivery media. According to one aspect, the term "modulated data signal" describes a signal that has one or more characteristics set or changed in a manner that encodes information in the signal. By way of example and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, radio frequency (RF), infrared, and other wireless media.
[0052] In an embodiment according to the present application, the computing device 200 is configured to execute the three-dimensional grid-based low-altitude track processing method 300 according to the present application. The program module 206 includes a plurality of program instructions for executing the above method 300, and these program instructions can instruct the processing unit 202 to execute the corresponding method.
[0053] Figure 3A flow chart of a low-altitude flight path processing method 300 based on a three-dimensional grid according to some embodiments of the present application is shown. The method 300 is suitable for execution in the aforementioned device 100, and the description of the method 300 is complementary to the description of the device 100, and the relevant parts are not repeated here.
[0054] like Figure 3 As shown, the method 300 starts at step S310 .
[0055] In S310, the low-altitude airspace grid coding unit 110 divides the low-altitude airspace where the aircraft is active into multiple three-dimensional grid units according to the three-dimensional grid (including the earth space grid code, Beidou grid code, etc.) division rules and coding specifications, and generates a unique grid code for each three-dimensional grid unit.
[0056] In some embodiments, the accuracy of the three-dimensional grid unit can be determined based on the track accuracy requirements and the control requirements of low-altitude aircraft. For example, the 8th level of the Beidou grid is selected as the division level. For example, the accuracy of the three-dimensional grid unit is set to 2m.
[0057] In S320, the original track acquisition unit 120 acquires the track data of the aircraft during flight to obtain a track data queue, wherein each track point in the track data queue has a time sequence and each track point contains attribute data.
[0058] According to the implementation of the present application, before the aircraft performs a flight mission, the planned flight route is mapped to the three-dimensional grid cells divided in S310, which is the planned route. It can be understood that the planned route includes the three-dimensional grid cells passed in sequence during the flight.
[0059] In some embodiments, the three-dimensional grid units included in the planned route are abstracted into point elements and connected into lines in the latitude direction as the reference line. Figure 4 FIG. 1 shows a schematic diagram of a latitudinal abstract connection line based on a three-dimensional grid unit according to some embodiments of the present application. For ease of description, Figure 4 Only the latitude and longitude directions are shown in the figure. It should be understood that in practical applications, the three-dimensional grid unit also includes spatial division in the height direction. The (three-dimensional) grid unit is divided and encoded according to the 8th level of the Beidou grid. Figure 4 The longitude and latitude ranges of each (three-dimensional) grid cell are shown in FIG, where the grey row represents the baseline of a planned route.
[0060] During the flight of the aircraft, the amount of track point data depends on the sampling frequency, etc. Usually, multiple track points are generated in 1 second, and the attribute data of each track point includes: speed, heading, coordinates, altitude, etc. Therefore, low-altitude tracks face the problem of huge data volume. The track processing unit 130 processes the track data during the flight, specifically including S330 (track smoothing and denoising) and S340 (track thinning).
[0061] In S330, the track processing unit 130 uses the attribute data of the track points corresponding to every two adjacent time points to determine whether the track point corresponding to the next adjacent time point is a noise point, thereby denoising the track data queue to obtain a smooth track data queue.
[0062] Specifically, it includes the following steps (1) to (4).
[0063] (1) Using the attribute data of the track points corresponding to two adjacent time points, predict the attribute data of the track points corresponding to the next adjacent time point. In other words, based on the attribute data of the track points corresponding to time point n (denoted as T n ), and the attribute data of the track point corresponding to time point n+1 (denoted as T n+1 ), calculate the attribute data of the track point corresponding to the next adjacent time point n+2 (denoted as T' n+2 , which is the predicted value). Specifically, the average value of the speeds of the track points corresponding to the two adjacent time points is used as the predicted value of the speed of the track point corresponding to the next adjacent time point; the average value of the headings of the track points corresponding to the two adjacent time points is used as the predicted value of the headings of the track points corresponding to the next adjacent time point; the average value of the coordinates of the track points corresponding to the two adjacent time points is used as the predicted value of the coordinates of the track points corresponding to the next adjacent time point; the average value of the elevations of the track points corresponding to the two adjacent time points is used as the predicted value of the elevation of the track points corresponding to the next adjacent time point.
[0064] (2) For each attribute data of the track point corresponding to the next adjacent time point, calculate the difference between the corresponding predicted value and the true value, and determine whether each difference is greater than the corresponding preset value. In other words, T' n+2 The velocity prediction value in T n+2 The actual speed value in the image is subtracted and compared to see whether the difference is greater than the preset speed value. Other attribute data, such as heading, coordinates, elevation, and so on.
[0065] In some embodiments, the preset value of the speed is 3 to 5 times the accuracy of the three-dimensional grid unit (e.g., 2m), the preset value of the heading is the predicted value of the heading of the track point, the preset value of the coordinates is the maximum value of the accuracy range of the horizontal longitude and latitude of the positioning device of the aircraft, and the preset value of the elevation is the maximum value of the elevation accuracy range of the positioning device of the aircraft.
[0066] (3) If at least one difference is greater than its corresponding preset value, the track point is confirmed to be a noise point. In other words, if any difference among speed, heading, coordinates, and elevation is greater than its corresponding preset value, the track point is confirmed to be a noise point.
[0067] (4) Traverse the track points corresponding to each time point in the track data queue (i.e., repeat the above steps (1)-(3)), replace the actual value of the track point confirmed as a noise point with the predicted value of the track point, and finally obtain a smooth track data queue. In other words, if the track point corresponding to time point n+2 is a noise point, use T' n+2 Replace T n+2 , added to the track data queue.
[0068] In S340, the track points in the smoothed track data queue are filtered based on at least the distance relationship between each track point and the adjacent track points to obtain a thinned track data queue.
[0069] In some embodiments, for a smoothed track data queue, from the second track point to the second to last track point, for each track point, the following steps (1)-(3) are used to determine whether the current track point is to be filtered. The track points retained after filtering finally form a thinned track data queue.
[0070] (1) Calculate the first vertical distance (denoted as D1) from the current track point to the straight line between the previous track point and the next track point. If the first vertical distance is not less than the preset threshold D of the current track point, Q , then filter the current track point. Among them, the preset threshold value D of the current track point Q It is the vertical distance from the current track point to the reference line.
[0071] Taking the second track point as an example, determine the straight line between the first track point and the third track point l 1. Calculate the second track point to the straight line l 1 vertical distance D1, if D1 is not less than the D of the second track point Q , then filter the second track point.
[0072] (2) If the first vertical distance D1 is less than the preset threshold D Q , then calculate the second vertical distance (denoted as D2) from the next track point to the straight line between the current track point and the next track point of the next track point. If the second vertical distance D2 is greater than the preset threshold D Q , then filter the current track point.
[0073] Continuing with the above example, if D1 is less than D of the second track point Q, then determine the straight line where the second and fourth track points are located l 2. Calculate the distance from the third track point to the straight line l 2, if D2 is greater than the D Q , then filter the second track point.
[0074] (3) If the second vertical distance D2 is not greater than the preset threshold D Q , then calculate the area of the triangle formed by the previous track point, the current track point, and the next track point (denoted as S1). If the area S1 is greater than the area threshold S Q , then filter the current track point, if the area S1 is not greater than the area threshold S Q , then keep the current track point and repeat the above steps (1)-(3) for the next track point until the second to last track point is traversed. The area threshold is a multiple of the three-dimensional grid unit. For example, if the grid size of the three-dimensional grid unit on the plane is 2m×2m, then its area is 4m 2 , the corresponding area threshold can be set to 4m 2 For example, set it to 8 m 2 , 12 m 2 ,etc.
[0075] Continuing with the above example, if D2 is not greater than D of the second track point Q , then calculate the area S1 of the triangle formed by the first track point, the second track point, and the third track point. If S1 is greater than S Q , then filter the second track point; if S1 is not greater than S Q , then keep the second track point. Repeat the above steps (1)-(3) for the third track point to determine whether to filter the third track point.
[0076] In S350, the route matching unit 140 processes each track point in the sparse track data queue separately to determine the three-dimensional grid unit that matches each track point, and associates the attribute data of each track point with the grid code of the matching three-dimensional grid unit, and restores the route of the aircraft from the determined three-dimensional grid unit.
[0077] According to the implementation mode of the present application, based on the hidden Markov model and the cross product principle, the actual route is matched for the track after the above denoising and filtering processing (it can be further confirmed whether the matched actual route is consistent with the planned route of this flight mission). The actual route is composed of three-dimensional grid units, that is, for each track point in the sparse track data queue, it is matched to the corresponding three-dimensional grid unit. Specifically, it is necessary to process each track point in the sparse track data queue separately, that is, to perform the following five steps respectively.
[0078] In the first step, a rectangular space range is constructed with the current track point as the center and a predetermined size (optionally, the predetermined size is related to the accuracy of the three-dimensional grid unit, generally 3 to 5 times the three-dimensional grid unit with an accuracy of 2m) as the length and width. If the rectangular space range overlaps with the three-dimensional grid unit of at least one planned route in the low-altitude airspace, the overlapping one or more planned routes are used as the first candidate routes.
[0079] The planned route here refers to the planned route that appears in the low-altitude airspace, not limited to the aircraft and the flight mission. In other words, as long as the three-dimensional grid unit of the planned route is included in the rectangular space, the planned route will be taken as a first candidate route.
[0080] Figure 5 FIG. 1 is a schematic diagram showing a method of determining a first candidate route according to some embodiments of the present application. For ease of description, Figure 5 Only one plane is shown in the figure (as shown in the gray area), and area a represents the rectangular space range constructed with the current track point p as the center. The planned routes L1, L2, L3, L4, and L5 appearing in area a are all taken as the first candidate routes.
[0081] The second step is to calculate the third vertical distance from the current track point to each first candidate route. If the third vertical distance is not greater than the preset distance value, the first candidate route is used as the second candidate route. Otherwise, if the third vertical distance is greater than the preset distance value, the first candidate route is eliminated.
[0082] Optionally, a projection point from the current track point to the first candidate route is determined, and a straight-line distance between the current track point and the projection point is calculated, which is the third vertical distance.
[0083] Similarly, the preset distance value is related to the accuracy of the three-dimensional grid unit. Usually the accuracy is 2m, and the preset distance value is 3 to 5 times of 2m.
[0084] The third step is to use the hidden Markov model to determine the only matching route from the second candidate routes. The specific steps include 1)-3).
[0085] 1) For each second candidate route, the emission probability of the hidden Markov model is determined by combining the distance and vector direction from the current track point to each projection point of the second candidate route.
[0086] Figure 6 FIG. 4 is a schematic diagram showing a method for determining a transmission probability according to some embodiments of the present application. Figure 6, the distance and vector direction from the current track point p to each projection point on the second candidate route L1, L2, L3 are represented by arrowed lines. For example, according to the ratio of these three distances, the weights of each are determined, that is, |w|; the weights are determined by the vector direction, and the weights w finally determined are used as the respective emission probabilities. Of course, this application does not impose too many restrictions on this, and the emission probability can reflect the distance and vector direction.
[0087] 2) For each second candidate route, calculate the first straight-line distance between the current track point and the previous track point, and the second straight-line distance between the projection points of the current track point and the previous track point on the second candidate route, and use the ratio of the first straight-line distance to the second straight-line distance as the transition probability (TransitionProbabilities) of the hidden Markov model.
[0088] Figure 7 FIG. 4 is a schematic diagram showing a method for determining a transition probability according to some embodiments of the present application. Figure 7 , current track point P n+1 With the previous track point P n The first straight-line distance between them is d1, P n+1 With P n Projection point P' on the second candidate route n+1 and P' n The second straight-line distance between them is d2, and the ratio of d1 to d2 is the track point P. n+1 The transition probability on the second candidate route.
[0089] 3) Solve the hidden Markov model based on the launch probability and the transition probability to obtain the unique matching route. The hidden Markov model is a known content, and this application does not impose too many restrictions on it. The existing hidden Markov model can be used to substitute the parameters obtained in 1) and 2) for the solution.
[0090] Step 4: Project the current track point onto the unique matching route to obtain the projection point (denoted as P Q ), and select the two track points closest to the current track point to generate the first adjacent point and the second adjacent point. In other words, from the thinned track data queue, select the two track points closest to the current track point, and take their plane coordinates as the first adjacent point P1 and the second adjacent point P2. Usually the plane refers to the plane where the longitude and latitude are located.
[0091] Step 5: Determine the projection point P Q , whether the first adjacent point P1 and the second adjacent point P2 meet the preset conditions. If the preset conditions are met, confirm the projection point P QThe three-dimensional grid unit belongs to the route where the current track point is located, and the attribute data of the current track point is associated with the grid code of the three-dimensional grid unit.
[0092] In some embodiments, the preset conditions include: the projection point P Q In a rectangle with the straight line connecting the first adjacent point P1 and the second adjacent point P2 as the diagonal line, and the projection point P Q , the first adjacent point P1, and the second adjacent point P2 are collinear. The “rectangle with the straight line connecting the first adjacent point P1 and the second adjacent point P2 as the diagonal” is determined by taking the straight line connecting the first adjacent point P1 and the second adjacent point P2 as a diagonal of the rectangle, and creating a rectangle with the accuracy of the three-dimensional grid unit (for example, 2m) or a multiple of the accuracy as the side length. The collinearity of the three points can be determined by the cross product principle, that is, the vector P1P Q The cross product of the vector P1P2 is the zero vector.
[0093] If the current projection point P Q If the preset conditions are met, the projection point P is confirmed Q The three-dimensional grid cell belongs to the route where the current track point is located, and then the attribute data (speed, heading, coordinates, elevation, etc.) of the current track point is associated with the grid code of the three-dimensional grid cell.
[0094] According to this embodiment, following the first to fifth steps, each track point in the thinned track data queue is processed to determine a matching three-dimensional grid unit for each track point, and the attribute data of the track point is associated and matched with the grid code of the matching three-dimensional grid unit. In this way, the determined three-dimensional grid unit restores the route of the aircraft (i.e., the actual route).
[0095] According to the solution of the present application, the low-altitude airspace is divided into multiple fine-grained three-dimensional grid units; by processing the real-time track data of the aircraft, it is matched to a route composed of three-dimensional grid units, and at the same time, attribute data related to the flight status (speed, heading, coordinates, elevation, etc.) is associated with each three-dimensional grid unit, which effectively solves the problems currently faced by low-altitude tracks, such as inefficient real-time analysis and calculation, inaccurate calculation results, etc., and helps to ensure the safety of low-altitude airspace, optimize resource utilization, and improve the mission execution efficiency of aircraft such as drones.
[0096] The various techniques described herein may be implemented in combination with hardware or software, or a combination thereof. Thus, the method and apparatus of the present application, or certain aspects or portions of the method and apparatus of the present application may be in the form of program codes (i.e., instructions) embedded in a tangible medium, such as a removable hard disk, a USB flash drive, a floppy disk, a CD-ROM, or any other machine-readable storage medium, wherein when the program is loaded into a machine such as a computer and executed by the machine, the machine becomes a device for practicing the present application.
[0097] In the case where the program code is executed on a programmable computer, the computing device generally includes a processor, a storage medium readable by the processor (including volatile and non-volatile memory and / or storage elements), at least one input device, and at least one output device. The memory is configured to store the program code; the processor is configured to execute the method of the present application according to the instructions in the program code stored in the memory.
[0098] By way of example and not limitation, readable media include readable storage media and communication media. Readable storage media stores information such as computer readable instructions, data structures, program modules or other data. Communication media generally embody computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transmission mechanism, and include any information transfer medium. Any combination of the above is also included within the scope of readable media.
[0099] In the description provided herein, algorithms and displays are not inherently related to any particular computer, virtual system or other device. Various general purpose systems can also be used together with the examples of the present application. According to the above description, it is obvious to construct the structure required for such systems. In addition, the present application is not directed to any specific programming language either. It should be understood that the content of the present application described herein can be realized by various programming languages, and the description of the specific language above is to disclose the preferred implementation of the present application.
[0100] In the description provided herein, a large number of specific details are described. However, it is understood that the embodiments of the present application can be practiced without these specific details. In some instances, well-known methods, structures and techniques are not shown in detail so as not to obscure the understanding of this description.
[0101] Those skilled in the art will appreciate that the modules or units or components of the devices in the examples disclosed herein may be arranged in the devices described in the embodiment, or alternatively may be located in one or more devices different from the devices in the examples. The modules in the foregoing examples may be combined into one module or may be divided into multiple submodules.
[0102] Those skilled in the art will appreciate that the modules in the devices in the embodiments can be adaptively changed and arranged in one or more devices different from the embodiments. The modules or units or components in the embodiments can be combined into one module or unit or component, and in addition they can be divided into multiple submodules or subunits or subassemblies. Except that at least some of such features and / or processes or units are mutually exclusive, all features disclosed in this specification and all processes or units of any method or device disclosed in this manner can be combined in any combination. Unless otherwise clearly stated, each feature disclosed in this specification can be replaced by an alternative feature providing the same, equivalent or similar purpose.
[0103] Furthermore, those skilled in the art will appreciate that although some embodiments described herein include certain features included in other embodiments but not other features, the combination of features from different embodiments is meant to be within the scope of the present application and to form different embodiments.
[0104] In addition, some of the embodiments are described herein as methods or combinations of method elements that can be implemented by a processor of a computer system or by other devices that perform the functions. Therefore, a processor with necessary instructions for implementing the method or method elements forms a device for implementing the method or method elements. In addition, the elements described herein of the device embodiments are examples of devices that are used to implement the functions performed by the elements for the purpose of implementing the disclosure.
[0105] As used herein, unless otherwise specified, the use of ordinal numbers "first," "second," "third," etc. to describe common objects merely refers to different instances of similar objects and is not intended to imply that the objects so described must have a given order in time, space, order, or in any other manner. In addition, the quantifier "plurality" means "two" and / or "more than two."
[0106] Although the present application is described according to a limited number of embodiments, it will be appreciated by those skilled in the art, with the benefit of the above description, that other embodiments may be envisioned within the scope of the present application thus described. In addition, it should be noted that the language used in this specification is selected primarily for the purpose of readability and teaching, rather than for the purpose of explaining or limiting the subject matter of the present application. Therefore, many modifications and changes will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the appended claims. For the scope of the present application, the disclosure made to the present application is illustrative, not restrictive, and the scope of the present application is defined by the appended claims.
Claims
1. Low-altitude flight path processing method based on three-dimensional grid, including: The low-altitude airspace where aircraft are active is divided into a plurality of three-dimensional grid cells, and a unique grid code is generated for each three-dimensional grid cell; Acquire the track data of the aircraft during flight to obtain a track data queue, wherein each track point in the track data queue has a time sequence and each track point contains attribute data; By using the attribute data of the track points corresponding to every two adjacent time points, determining whether the track point corresponding to the next adjacent time point is a noise point, the track data queue is denoised to obtain a smooth track data queue; At least based on the distance relationship between each track point and an adjacent track point, filtering the track points in the smoothed track data queue to obtain a thinned track data queue; Each track point in the thinned track data queue is processed respectively to determine a three-dimensional grid unit matching each track point, and the attribute data of each track point is associated with the grid code of the matching three-dimensional grid unit, and the flight path of the aircraft is restored from the determined three-dimensional grid unit. The step of processing each track point in the thinned track data queue to determine a three-dimensional grid unit matching each track point includes: Constructing a rectangular space range with the current track point as the center and the predetermined size as the length and width, and if the rectangular space range overlaps with the three-dimensional grid unit of at least one planned route in the low-altitude airspace, taking the at least one planned route as the first candidate route; Calculating a third vertical distance from the current track point to each first candidate route, and if the third vertical distance is not greater than a preset distance value, taking the first candidate route as the second candidate route; Using a hidden Markov model, determining a unique matching route from the second candidate routes; Projecting the unique matching route with the current track point to obtain a projection point, and selecting two track points closest to the current track point to generate a first adjacent point and a second adjacent point; Determine whether the projection point, the first adjacent point and the second adjacent point meet preset conditions. If the preset conditions are met, confirm that the three-dimensional grid unit where the projection point is located belongs to the route where the current track point is located, and associate the attribute data of the current track point with the grid code of the three-dimensional grid unit.
2. The method of claim 1, wherein: The preset conditions include: The projection point is within a rectangle with a straight line connecting the first adjacent point and the second adjacent point as a diagonal line, and the projection point, the first adjacent point, and the second adjacent point are collinear.
3. The method of claim 1, wherein: Denoising the track data queue by using the attribute data of the track points corresponding to every two adjacent time points to determine whether the track point corresponding to the next adjacent time point is a noise point, including: Using the attribute data of the track points corresponding to two adjacent time points, predict the attribute data of the track points corresponding to the next adjacent time point, wherein the attribute data includes: speed, heading, coordinates, and elevation; For each attribute data of the track point corresponding to the next adjacent time point, the difference between the corresponding predicted value and the true value is calculated respectively, and it is determined whether each difference is greater than the corresponding preset value; If there is at least one difference value greater than its corresponding preset value, the track point is confirmed to be a noise point; The track points corresponding to each time point in the track data queue are traversed, and the real value of the track point confirmed as a noise point is replaced by the predicted value of the track point, so as to finally obtain a smooth track data queue.
4. The method of claim 3, wherein: The preset value of the speed is 3 to 5 times the accuracy of the three-dimensional grid unit, the preset value of the heading is the predicted value of the heading of the track point, the preset value of the coordinates is the maximum value of the accuracy range of the horizontal longitude and latitude of the positioning device of the aircraft, and the preset value of the elevation is the maximum value of the elevation accuracy range of the positioning device of the aircraft.
5. The method of claim 3, wherein: The method of using the attribute data of the track points corresponding to two adjacent time points to predict the attribute data of the track points corresponding to the next adjacent time point includes: The average value of the speed of the track point corresponding to two adjacent time points is used as the predicted value of the speed of the track point corresponding to the next adjacent time point; The average value of the headings of the track points corresponding to two adjacent time points is used as the predicted value of the heading of the track point corresponding to the next adjacent time point; The average value of the coordinates of the track points corresponding to two adjacent time points is used as the predicted value of the coordinates of the track points corresponding to the next adjacent time point; The average value of the elevation of the track points corresponding to two adjacent time points is used as the predicted value of the elevation of the track point corresponding to the next adjacent time point.
6. The method of claim 1, further comprising: A plurality of three-dimensional grid cells included in the planned flight route of the aircraft are connected in the latitude direction to form a line as a reference line.
7. The method of claim 6, wherein: The filtering of the track points in the smoothed track data queue based at least on the distance relationship between each track point and an adjacent track point includes: From the second track point to the second to last track point in the smoothed track data queue, for each track point: Calculate the first vertical distance from the current track point to the straight line where the previous track point and the next track point are located, and if the first vertical distance is not less than a preset threshold of the current track point, filter the current track point; If the first vertical distance is less than the preset threshold, calculate the second vertical distance from the next track point to the straight line between the current track point and the next track point of the next track point, and if the second vertical distance is greater than the preset threshold, filter the current track point; If the second vertical distance is not greater than the preset threshold, the area of the triangle formed by the previous track point, the current track point, and the next track point is calculated; if the area is greater than the area threshold, the current track point is filtered; if the area is not greater than the area threshold, the current track point is retained; The preset threshold of the current track point is the vertical distance value from the current track point to the reference line, and the area threshold is a multiple of the three-dimensional grid unit.
8. The method of claim 1, wherein: The predetermined size and the preset distance value are both related to the accuracy of the three-dimensional grid unit.
9. The method of claim 1, wherein: The method of using a hidden Markov model to determine a unique matching route from the second candidate routes includes: Determine the emission probability of the hidden Markov model by combining the distance and vector direction from the current track point to each projection point of the second candidate route; Calculate a first straight-line distance between a current track point and a previous track point, and a second straight-line distance between projection points of the current track point and the previous track point on a second candidate route, and use a ratio of the first straight-line distance to the second straight-line distance as a transition probability of a hidden Markov model; The hidden Markov model is solved according to the emission probability and the transition probability to obtain a unique matching route.
10. A low-altitude flight path processing device based on a three-dimensional grid, comprising: A low-altitude airspace grid coding unit is suitable for dividing the low-altitude airspace where aircraft are active into a plurality of three-dimensional grid units, and generating a unique grid code for each three-dimensional grid unit; An original track acquisition unit, adapted to acquire track data of the aircraft during flight to obtain a track data queue, wherein each track point in the track data queue has a time sequence and each track point contains attribute data; The track processing unit is adapted to denoise the track data queue by using the attribute data of the track points corresponding to every two adjacent time points to determine whether the track point corresponding to the next adjacent time point is a noise point, thereby obtaining a smooth track data queue; and is also adapted to filter the track points in the smooth track data queue based on at least the distance relationship between each track point and the adjacent track points, thereby obtaining a thinned track data queue; a route matching unit, adapted to process each track point in the thinned track data queue respectively, so as to determine a three-dimensional grid unit matching each track point respectively, and to associate the attribute data of each track point with the grid code of the matching three-dimensional grid unit, and to restore the route of the aircraft from the determined grid unit, wherein the route matching unit is further adapted to construct a rectangular space range with the current track point as the center and the predetermined size as the length and width, and if the rectangular space range overlaps with the three-dimensional grid unit of at least one planned route in the low-altitude airspace, then the at least one planned route is used as the first candidate route; Calculating a third vertical distance from the current track point to each first candidate route, and if the third vertical distance is not greater than a preset distance value, taking the first candidate route as the second candidate route; Using a hidden Markov model, determining a unique matching route from the second candidate routes; Projecting the unique matching route with the current track point to obtain a projection point, and selecting two track points closest to the current track point to generate a first adjacent point and a second adjacent point; Determine whether the projection point, the first adjacent point and the second adjacent point meet preset conditions. If the preset conditions are met, confirm that the three-dimensional grid unit where the projection point is located belongs to the route where the current track point is located, and associate the attribute data of the current track point with the grid code of the three-dimensional grid unit.
11. A computing device comprising: one or more processors; Memory; One or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the one or more programs comprising instructions for executing the method according to any one of claims 1-9.
12. A computer-readable storage medium storing one or more programs, wherein the one or more programs include instructions, which when executed by a computing device, cause the computing device to perform the method according to any one of claims 1 to 9.
13. A computer program product comprising a computer program / instructions, wherein: When the computer program / instructions are executed by a processor, the method according to any one of claims 1 to 9 is implemented.
Citation Information
Patent Citations
Method for measuring flight track of unmanned aerial vehicle
CN107607091A
Method and device for determining movement tracks
CN109269514A