Trajectory processing method and computer program product
By acquiring trajectory solution data and judging the reliability and stability of trajectory points with position and attitude data, the problem of trajectory anomalies affecting the accuracy of electronic maps is solved, and more accurate trajectory optimization and map generation are achieved.
Patent Information
- Application Number
- CN202110653639.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-06-11
- Publication Date
- 2025-08-19
- Estimated Expiration
- 2041-06-11
AI Technical Summary
The existing technology cannot accurately judge and optimize the trajectory abnormalities collected in urban canyons, tree-shades, viaducts, tunnels and other scenarios, affecting the accuracy of electronic map production.
By acquiring trajectory solution data, combining the position data and attitude data of the trajectory point, the position reliability of the trajectory point and the attitude stability of the trajectory segment are determined, the reliability of the trajectory point is comprehensively judged, and the unreliable trajectory segment is optimized.
It improves the accuracy of reliability and judgment of trajectory points and improves the accuracy of electronic map production.
Smart Images

Figure CN115468563B_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the field of geographic information technology, and in particular to a trajectory processing method and a computer program product. Background Art
[0002] To create an electronic map, it is usually necessary to use acquisition equipment to collect production data, and then use the collected production data to create the electronic map. In some scenarios such as urban canyons, tree-lined areas, viaducts, tunnels, etc., the quality (such as accuracy) of the very important trajectory data in the production data will be affected, resulting in abnormal trajectories. Trajectory abnormalities affect the accuracy of the electronic map production results. To solve this problem, it is necessary to check the trajectories of the acquisition equipment and optimize the trajectories with abnormal accuracy (abbreviated as: abnormal trajectories) to improve the trajectory accuracy. However, in the process of implementing the above technical solution, the relevant technology cannot accurately determine which trajectories are abnormal trajectories. Summary of the Invention
[0003] In view of this, embodiments of the present application provide a trajectory processing method and a computer program product to at least partially solve the above-mentioned problems.
[0004] According to a first aspect of an embodiment of the present application, a trajectory processing method is provided, comprising: obtaining trajectory solution data, the trajectory solution data including position data, attitude data, and velocity data of at least one trajectory point; determining the position reliability of the trajectory point based on the position data of the trajectory point; determining the attitude stability of at least one trajectory segment formed by the at least one trajectory point based on the attitude data and velocity data of the trajectory point; and determining whether the trajectory point is reliable based on the position reliability of the trajectory point and the attitude stability of the trajectory segment to which the trajectory point belongs.
[0005] According to a second aspect of an embodiment of the present application, a trajectory processing device is provided, comprising: an acquisition module for acquiring trajectory solution data, the trajectory solution data comprising position data, posture data, and speed data of at least one trajectory point; a position checking module for determining the position reliability of the trajectory point based on the position data of the trajectory point; a posture checking module for determining the posture stability of at least one trajectory segment formed by at least one trajectory point based on the posture data and speed data of the trajectory point; and a trajectory management module for determining whether a trajectory point is reliable based on the position reliability of the trajectory point and the posture stability of the trajectory segment to which the trajectory point belongs.
[0006] According to a third aspect of an embodiment of the present application, an electronic device is provided, comprising: a processor, a memory, a communication interface, and a communication bus, wherein the processor, the memory, and the communication interface communicate with each other via the communication bus; the memory is used to store at least one executable instruction, and the executable instruction enables the processor to perform an operation corresponding to the trajectory processing method of the first aspect.
[0007] According to a fourth aspect of the embodiments of the present application, a storage medium is provided, on which a computer program is stored. When the program is executed by a processor, the trajectory processing method as described in the first aspect is implemented.
[0008] According to a fifth aspect of the embodiments of the present application, a computer program product is provided. When the computer program product is executed by a processor, it implements the trajectory processing method as described in the first aspect.
[0009] The trajectory processing method and computer program product provided in the embodiments of the present application obtain trajectory solution data, which includes position data, attitude data, and velocity data of at least one trajectory point; determine the position reliability of the trajectory point based on the position data of the trajectory point; determine the attitude stability of at least one trajectory segment formed by at least one trajectory point based on the attitude data and velocity data of the trajectory point; and determine whether the trajectory point is reliable based on the position reliability of the trajectory point and the attitude stability of the trajectory segment to which the trajectory point belongs. By comprehensively considering the position reliability of the trajectory point and the attitude stability of the trajectory segment to which it belongs, and combining the position reliability and attitude stability to determine the reliability of the trajectory point, it is possible to more accurately determine whether the trajectory point is reliable. BRIEF DESCRIPTION OF THE DRAWINGS
[0010] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are only some embodiments recorded in the embodiments of the present application. For ordinary technicians in this field, other drawings can also be obtained based on these drawings.
[0011] Figure 1 A schematic diagram of a scenario of a trajectory processing method provided in Example 1 of the present application;
[0012] Figure 2 A flow chart of a trajectory processing method provided in Example 1 of the present application;
[0013] Figure 3 A flow chart of a trajectory optimization method provided in Example 1 of the present application;
[0014] Figure 4 A schematic diagram of GNSS signal checking provided in Example 1 of the present application;
[0015] Figure 5 A schematic diagram of posture stability checking provided in Example 1 of the present application;
[0016] Figure 6 A schematic diagram of a continuity check provided in Example 1 of the present application;
[0017] Figure 7 A structural diagram of a trajectory processing device provided in Example 2 of the present application;
[0018] Figure 8 This is a structural diagram of an electronic device provided in Example 3 of the present application. DETAILED DESCRIPTION
[0019] In order to enable those skilled in the art to better understand the technical solutions in the embodiments of the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the embodiments of the present application, all other embodiments obtained by ordinary technicians in this field should fall within the scope of protection of the embodiments of the present application.
[0020] The specific implementation of the embodiment of the present application is further explained below in conjunction with the accompanying drawings of the embodiment of the present application.
[0021] Example 1
[0022] The first embodiment of the present application provides a trajectory processing method, which is applied to an electronic device. For ease of understanding, the application scenario of the trajectory processing method provided in the first embodiment of the present application is described. Figure 1 As shown, Figure 1 A schematic diagram of a scenario of a trajectory processing method provided in Example 1 of the present application. Figure 1 The illustrated scenario includes an electronic device 101 , which may be a device for executing the trajectory processing method provided in the first embodiment of the present application.
[0023] The electronic device 101 can be a terminal device such as a smart phone, tablet computer, laptop computer, or vehicle-mounted terminal. The electronic device 101 can also be a network device such as a server. Of course, this is just an example description and does not mean that the present application is limited to this.
[0024] The electronic device 101 can access the network, connect to the cloud through the network, and exchange data. In this application, the network includes a local area network (LAN), a wide area network (WAN), and a mobile communication network; such as the World Wide Web (WWW), Long Term Evolution (LTE), 2G (2nd Generation Mobile Network), 3G (3rd Generation Mobile Network), and 5G (5th Generation Mobile Network). The cloud can include various devices connected through the network, such as servers, relay devices, and end-to-end (Device-to-Device, D2D) devices. Of course, this is only an exemplary description and does not mean that the present application is limited to this.
[0025] Combine Figure 1 The scenario shown in the figure describes in detail the trajectory processing method provided in the first embodiment of the present application. It should be noted that: Figure 1 This is just one application scenario of the trajectory processing method provided in Example 1 of this application, and does not mean that the trajectory processing method must be applied to Figure 1 The scenario shown can be applied to electronic devices, see Figure 2 As shown, Figure 2 This is a flow chart of a trajectory processing method provided in Example 1 of the present application, the method comprising the following steps:
[0026] Step 201: Obtain trajectory solution data.
[0027] Among them, the trajectory solution data includes the position data, posture data and speed data of at least one trajectory point. Specifically, the position data of the trajectory point is used to indicate the position of the target object at the trajectory point. Similarly, the posture data of the trajectory point is used to indicate the posture of the target object at the trajectory point, and the speed data of the trajectory point is used to indicate the speed of the target object at the trajectory point.
[0028] It should be noted that the at least one trajectory point can be a trajectory point included in the target trajectory of the target object. The target trajectory is a collection of discrete trajectory points, which can form a trajectory line. The target object can be a vehicle equipped with a collection device (such as a car or bicycle) or the collection device itself, which at least has positioning capabilities.
[0029] It is understandable that the trajectory solution data may also include sensor measurement data output by the sensor, and the sensor measurement data is used to solve the position data, attitude data and speed data. The sensor measurement data may be data obtained by collecting data from each sensor at the location of one or more trajectory points on the target trajectory. For example, it may include at least one of the data of the Global Positioning System (GPS), the data of the odometer, and the data of the Inertial Measurement Unit (IMU). For example, the target trajectory contains 10 trajectory points. When the target object moves to the position of the first trajectory point, data collection is performed to obtain the trajectory solution data corresponding to the first trajectory point. When the target object moves to the position of the second trajectory point, data collection is performed to obtain the trajectory solution data corresponding to the second trajectory point. By analogy, one trajectory point corresponds to a set of trajectory solution data.
[0030] Step 202: Determine the position reliability of the track point based on the position data of the track point.
[0031] Determining the location reliability of the track point may include determining whether the location (latitude and longitude coordinates) of the track point is reliable, or determining the reliability of the location of the track point (expressed as a reliability value).
[0032] The location data of the track point includes the latitude and longitude coordinate data of the track point, and also includes the solution parameters or related sensor measurement data obtained during the solution process.
[0033] Optionally, in one embodiment, determining the position reliability of the trajectory point based on the position data of the trajectory point includes: determining the position reliability of the trajectory point based on Global Navigation Satellite System (GNSS) solution parameters in the position data of the trajectory point. In another embodiment, determining the position reliability of the trajectory point based on the position data of the trajectory point includes: determining the position reliability of the trajectory point based on the velocity corresponding to the trajectory point and the GNSS solution parameters in the position data of the trajectory point.
[0034] Exemplarily, GNSS solution parameters may include at least one of the following: number of satellites, position standard deviation, positioning mode, and position precision factor. The more satellites there are, the more reliable the track points are; the smaller the position standard deviation, the higher the reliability of the track points; if the positioning mode utilizes carrier phase difference technology, that is, if carrier phase difference technology is used during GNSS solution during positioning, the reliability of the track points is higher than that of track points that do not utilize carrier phase difference technology; the smaller the position precision factor (PDOP), the better the satellite geometric distribution, and the higher the reliability of the track points. The higher the speed corresponding to the track point (that is, the speed of the target object at the track point), the higher the reliability of the track point. Among them, the carrier phase difference technology may include real-time kinematic (RTK) carrier phase difference technology. Here, two specific examples are listed for illustration.
[0035] In the first example, determining the position reliability of a trajectory point includes determining the reliability of the trajectory point, and the reliability is represented by a reliability value. For a trajectory point of a target object, the reliability value of the trajectory point can be determined based on each influencing factor, and the reliability value of the trajectory point can be obtained by weighted summing the reliability values of at least one influencing factor. The weight of the reliability value of each influencing factor can be (1 / the number of influencing factors), that is, the average of the reliability values of each influencing factor is determined as the reliability value of the trajectory point; alternatively, the same or different weights can be set in advance for each influencing factor based on the degree of influence of the influencing factor on the position accuracy. This is only an example. The influencing factors may include at least one of the number of satellites, the position standard deviation, the positioning mode, the position precision factor, and the speed corresponding to the trajectory point.
[0036] In the second example, determining the position reliability of the trajectory point includes determining whether the trajectory point is reliable. The GNSS solution parameters include: one or more of: the number of satellites, the position standard deviation, the positioning mode, and the position precision factor PDOP. According to the GNSS solution parameters in the position data of the trajectory point, determining whether the position in the position data is reliable includes: for each trajectory point, judging whether the number of satellites is greater than or equal to the preset number; judging whether the position standard deviation of the trajectory point is less than or equal to the preset standard deviation; judging whether the GNSS solution of the trajectory point adopts carrier phase difference technology; judging whether the position precision factor PDOP of the trajectory point is less than or equal to the preset threshold; judging whether the speed data corresponding to the trajectory point is greater than or equal to the preset speed; when any of the above judgment results is no, the trajectory point is determined to be unreliable, and if the judgment results are all yes, the trajectory point is determined to be reliable. It should be noted that the speed corresponding to the trajectory point can be determined based on the positioning position indicated by the position data and the time interval between the positioning positions; it can also be calculated based on the northbound speed and eastbound speed contained in the speed data in the trajectory solution data, and this application is not limited.
[0037] Step 203: Determine the attitude stability of at least one trajectory segment formed by at least one trajectory point based on the attitude data and velocity data of the trajectory point.
[0038] Determining the attitude stability of a trajectory segment may include determining whether the attitude of the target object in the trajectory segment is stable, or determining the degree of stability of the attitude of the target object in the trajectory segment (expressed as a stability value). It should be noted that at least one trajectory point may constitute at least one trajectory segment, and each trajectory segment may contain at least one continuous trajectory point. Optionally, determining the attitude stability of at least one trajectory segment constituted by at least one trajectory point based on the attitude data and velocity data of the trajectory point includes: determining the track angle of the trajectory point based on the velocity data of the trajectory point; calculating the heading difference between the heading angle contained in the attitude data of the trajectory point and the track angle of the trajectory point; segmenting at least one trajectory point based on the changing trend of the heading angle in the attitude data of at least one trajectory point to obtain at least one trajectory segment; determining the attitude stability of the trajectory segment based on the heading difference of at least one trajectory point contained in the trajectory segment. It should be noted that the velocity data of the trajectory point may include the northbound velocity and the eastbound velocity of the target object at that trajectory point. Among them, the heading angle can indicate the angle between the center of mass velocity and the horizontal x-axis in the navigation coordinate system, or it can also be defined as the angle between the direction of the target object's velocity and the north direction; the track angle can indicate the angle between the north velocity and the east velocity in the navigation coordinate system. The heading angle and track angle can represent the position and posture of the target object. At least one trajectory segment can include a curved trajectory segment and a straight trajectory segment. A longer straight trajectory segment can be divided into multiple straight trajectory segments. It should be noted that under ideal conditions, or in theory, the heading angle and track angle of the target object at a trajectory point should be equal. If the difference between the track angle and the heading angle is larger, the posture is more unstable and the trajectory point is less reliable.
[0039] Further optionally, determining the attitude stability of the trajectory segment based on the heading difference of at least one trajectory point included in the trajectory segment includes: determining the standard deviation and average value of the heading difference of at least one trajectory point based on the heading difference of at least one trajectory point included in the trajectory segment; determining the stability value of the trajectory segment based on the standard deviation and average value of the heading difference of at least one trajectory point; and comparing the stability value of the trajectory segment with a threshold value corresponding to the type of the trajectory segment to determine the attitude stability of the trajectory segment. For a trajectory segment, the heading difference of the i-th trajectory point included in the trajectory segment is expressed as x i Indicates that i is an integer greater than 0 and less than or equal to n, and n is the number of trajectory points in the trajectory segment. Using the formula The standard deviation σ can be calculated, where Represents the average value of the heading interpolation of n trajectory points, It should be noted that different thresholds can be set for curved and straight trajectory segments. For example, the threshold for curved trajectory segments can be 0.5, and the threshold for straight trajectory segments can be 0.3. If the trajectory segment is curved and the target object's stability value in the trajectory segment is less than 0.5, the target object is determined to be stable within the trajectory segment. If the trajectory segment is straight and the target object's stability value in the trajectory segment is less than 0.3, the target object is determined to be stable within the trajectory segment. This is only an example, and the threshold can be set according to specific circumstances.
[0040] Step 204: Determine whether the trajectory point is reliable based on the position reliability of the trajectory point and the attitude stability of the trajectory segment to which the trajectory point belongs.
[0041] Optionally, determining whether the trajectory point is reliable is based on the position reliability of the trajectory point and the posture stability of the trajectory segment, including: when the position reliability of the trajectory point indicates that the position of the trajectory point is reliable, and the posture stability of the trajectory segment to which the trajectory point belongs indicates that the posture of the trajectory segment is stable, then marking the trajectory point as reliable; otherwise, marking it as unreliable.
[0042] It should also be noted that after marking the track points as reliable or unreliable, the marked track points can also be corrected. For example, in a further embodiment, the method further includes: correcting the reliability of the marked track points based on the continuity of whether the track points are reliable. Here, two specific examples are listed for illustration:
[0043] Optionally, in the first example, the reliability of the marked trajectory points is revised based on the continuity of the reliability of the trajectory points, including: determining whether the length of the continuous trajectory points marked as reliable is less than or equal to a first threshold; if so, revising the continuous trajectory points marked as reliable to unreliable. Exemplarily, the first threshold can be 30 meters or 2 seconds. That is, the length of the continuous reliable trajectory points can be represented by distance or time.
[0044] Optionally, in a second example, the method further includes: obtaining a continuous series of unreliable trajectory points located between two reliable trajectory segments, where all trajectory points in a reliable trajectory segment are marked as reliable; determining whether the length of the continuous series of unreliable trajectory points is less than or equal to a second threshold, and if so, revising the unreliable trajectory points to be reliable. Optionally, if the length of the continuous series of unreliable trajectory points between adjacent reliable trajectory segments is greater than the second threshold, the continuous series of unreliable trajectory points is determined to be an unreliable trajectory segment. The second threshold may be equal to or different from the first threshold, for example, the second threshold may be 30 meters or 2 seconds.
[0045] Optionally, in another embodiment, a reliability value of the position of the trajectory point and a stability value of the posture may be weighted and summed to obtain a reliability parameter of the trajectory point. The reliability parameter may represent the reliability of the trajectory point.
[0046] In conjunction with the description of steps 201-204 above, after determining whether a trajectory point on the target trajectory is reliable, unreliable trajectory segments (i.e., abnormal trajectory segments) can be optimized. For example, the reliability of a trajectory segment included in the target trajectory is determined based on the reliability of the trajectory point; if a trajectory segment is unreliable, the trajectory segment is optimized. Because the impact of an unreliable trajectory point on the target trajectory is very limited, optimizing the trajectory segment rather than optimizing a single trajectory point can improve optimization efficiency.
[0047] Based on the above steps 201-204, a specific application scenario is listed here to further illustrate how to perform trajectory optimization. Figure 3 As shown, Figure 3 This is a flow chart of a trajectory optimization method provided in Example 1 of this application. It includes the following steps:
[0048] Step 301: Acquire sensor measurement data output by a sensor based on a target trajectory of a target object.
[0049] The sensor measurement data may include GPS data, odometer data, and inertial measurement unit data.
[0050] Step 302: Perform trajectory calculation on the sensor measurement data to obtain trajectory calculation data of the target object.
[0051] The trajectory solution data may include positioning data, posture data, and speed data of at least one trajectory point of the target object.
[0052] Step 303: Perform GNSS signal checks on the trajectory points of the target object based on the trajectory solution data to determine the position reliability of the trajectory points.
[0053] In this embodiment, the GNSS signal check is the position reliability check. Figure 4 As shown, Figure 4 This is a schematic diagram of a GNSS signal check provided in Example 1 of the present application. The GNSS signal check may include determining the number of satellites, position standard deviation, positioning mode, position precision factor, and speed. Specifically, the following five conditions may be determined, and the determination of these five conditions may be in no particular order:
[0054] 1) For a certain trajectory point, the number of satellites used when combining GNSS data and IMU data is calculated. If the number of satellites is greater than or equal to 4, the trajectory point is determined to be reliable.
[0055] 2) For a certain trajectory point, calculate the position standard deviation of positioning using GNSS data, or the position standard deviation of positioning using a combination of GNSS and IMU. If the position standard deviation is less than a preset standard deviation, the trajectory point is determined to be reliable. The preset standard deviation can be less than or equal to 1 decimeter. For example, the preset standard deviation can be 1 decimeter, 3 centimeters, 5 centimeters, etc.
[0056] 3) For a particular track point, the GNSS positioning mode is checked to determine whether RTK carrier phase differential technology is used. If RTK carrier phase differential technology is used, the track point is considered reliable. Furthermore, if an RTK fixed solution or RTK floating point solution is obtained during the solution process, it can be determined that RTK carrier phase differential technology is used, indicating that RTK carrier phase technology plays a role in the solution process.
[0057] 4) For a certain trajectory point, check whether the PDOP is less than or equal to 7. If the PDOP value is less than or equal to 7, the trajectory point is determined to be reliable. The preset threshold value can be a value between [3, 7]. For example, the preset threshold value can also be 5 or 3.
[0058] 5) For a certain trajectory point, the speed is calculated based on the GNSS positioning position. If the speed is greater than or equal to the preset speed, the trajectory point is determined to be reliable.
[0059] If any of the above five conditions determines that a trajectory point is unreliable, then the trajectory point is directly determined to be unreliable.
[0060] Step 304: Determine the heading angle and track angle of the target object at the trajectory point based on the trajectory solution data.
[0061] For example, the posture data in the trajectory solution data of the trajectory point may include the heading angle of the target object at the trajectory point, and the track angle of the trajectory point can be determined based on the speed data in the trajectory solution data. Specifically, the following formula can be used: Calculate the track angle.
[0062] Among them, Yaw track represents the track angle, v represents the speed, E represents the east direction (East), e represents the Earth-centered Earth-fixed coordinate system, also known as the geocentric coordinate system, which is a coordinate system with the center of the earth as the origin, N represents the north direction (North), n represents the navigation coordinate system, and b represents the carrier coordinate system. Refers to the projection component of the target object's velocity relative to the Earth-centered Earth-fixed coordinate system in the navigation coordinate system, the eastward velocity, Refers to the projection component of the target object's velocity relative to the Earth-centered Earth-fixed coordinate system in the navigation coordinate system, the north velocity.
[0063] Step 305: Perform attitude stability check on the trajectory points according to the heading angle and track angle of the target object at the trajectory points, and determine the attitude stability of at least one trajectory segment formed by at least one trajectory point.
[0064] like Figure 5 As shown, Figure 5 This is a schematic diagram of a posture stability check provided in the first embodiment of the present application. Specifically, the posture stability check can be performed according to the formula yawdiff=yaw-yaw track Calculate the heading difference between the target object's heading angle and the track angle at each trajectory point, where yawdiff represents the heading difference, yaw represents the heading angle, and yaw represents the heading angle. track Indicates the track angle. Taking the track segment as the unit, calculate the standard deviation and average value of the heading difference between the heading angle of the target object and the track angle in each track segment, and use the formula Calculate the stability value, where stability represents the stability value, std yawdiff Indicates standard deviation, avg yawdiff Indicates the average value.
[0065] Step 306: Determine whether the trajectory point is reliable based on the position reliability of the trajectory point and the attitude stability of the trajectory segment to which the trajectory point belongs, and perform a continuity check.
[0066] If the position of a track point is unreliable or the pose of a track point is unstable, the track point is marked as unreliable; otherwise, the track point is marked as reliable.
[0067] It should be noted that the continuity check of the track points refers to checking whether the track points are reliable and continuous, which corresponds to the description of step 204, and the reliability of the marked track points is corrected according to the reliability of the track points. Figure 6 As shown, Figure 6 A continuity check schematic diagram provided for the first embodiment of the present application illustrates how to perform continuity checks on trajectory points. If the length of consecutive reliable trajectory points is less than or equal to a first threshold, the consecutive reliable trajectory points are determined to be unreliable trajectory segments. If the length of consecutive unreliable trajectory points between adjacent reliable trajectory segments is greater than or equal to a second threshold, the consecutive unreliable trajectory points are determined to be unreliable trajectory segments. If the length of consecutive unreliable trajectory points between adjacent reliable trajectory segments is greater than the second threshold, the consecutive unreliable trajectory points are determined to be unreliable trajectory segments. If the length of consecutive unreliable trajectory points between adjacent reliable trajectory segments is less than or equal to the second threshold, the consecutive unreliable trajectory points are determined to be reliable trajectory segments.
[0068] Step 307: Mark whether the trajectory point is reliable.
[0069] After judging in steps 303 - 306 , it can be determined whether the trajectory point is reliable. By marking whether each trajectory point is reliable, it is possible to determine the unreliable trajectory segment that needs to be optimized.
[0070] Step 308: Optimize the unreliable trajectory segment.
[0071] Step 309: Match and align the collected point cloud data according to the optimized trajectory to generate or update the map.
[0072] The trajectory processing method provided in the embodiments of the present application obtains trajectory solution data, which includes position data, attitude data, and velocity data of at least one trajectory point; determines the position reliability of the trajectory point based on the position data of the trajectory point; determines the attitude stability of at least one trajectory segment formed by at least one trajectory point based on the attitude data and velocity data of the trajectory point; and determines whether the trajectory point is reliable based on the position reliability of the trajectory point and the attitude stability of the trajectory segment to which the trajectory point belongs. By comprehensively considering the position reliability of the trajectory point and the attitude stability of the trajectory segment to which it belongs, and combining the position reliability and attitude stability to determine the reliability of the trajectory point, it is possible to more accurately determine whether the trajectory point is reliable.
[0073] Example 2
[0074] Based on the method described in the above embodiment 1, the second embodiment of the present application provides a trajectory processing device for executing the method described in the above embodiment 1, referring to Figure 7 As shown, the trajectory processing device 70 includes:
[0075] An acquisition module 701 is used to acquire trajectory solution data, where the trajectory solution data includes position data, posture data, and velocity data of at least one trajectory point;
[0076] Position checking module 702, for determining the position reliability of the track point based on the position data of the track point; posture checking module;
[0077] a posture checking module 703, configured to determine the posture stability of at least one trajectory segment formed by at least one trajectory point based on the posture data and velocity data of the trajectory point;
[0078] The trajectory management module 704 is configured to determine whether a trajectory point is reliable based on the position reliability of the trajectory point and the attitude stability of the trajectory segment to which the trajectory point belongs.
[0079] Optionally, in a specific example, the attitude checking module 703 is used to determine the track angle of the trajectory point based on the speed data of the trajectory point; calculate the heading difference between the heading angle contained in the attitude data of the trajectory point and the track angle of the trajectory point; segment at least one trajectory point based on the changing trend of the heading angle in the attitude data of at least one trajectory point to obtain at least one trajectory segment; and determine the attitude stability of the trajectory segment based on the heading difference of at least one trajectory point contained in the trajectory segment.
[0080] Optionally, in a specific example, the attitude checking module 703 is used to determine the standard deviation and average value of the heading difference of at least one trajectory point contained in the trajectory segment based on the heading difference of at least one trajectory point; determine the stability value of the trajectory segment based on the standard deviation and average value of the heading difference of at least one trajectory point; and compare the stability value of the trajectory segment with a threshold value corresponding to the type of the trajectory segment to determine the attitude stability of the trajectory segment.
[0081] Optionally, in a specific example, the trajectory management module 704 is configured to mark the trajectory point as reliable when the position reliability of the trajectory point indicates that the position of the trajectory point is reliable and the posture stability of the trajectory segment to which the trajectory point belongs indicates that the posture of the trajectory segment is stable; otherwise, mark the trajectory point as unreliable.
[0082] Optionally, in a specific example, the trajectory management module 704 is further configured to correct the reliability of the marked trajectory points according to the continuity of the reliability of the trajectory points.
[0083] Optionally, in a specific example, the trajectory management module 704 is configured to determine whether the length of consecutive trajectory points marked as reliable is less than or equal to a first threshold, and if so, modify the consecutive trajectory points marked as reliable to unreliable.
[0084] Optionally, in a specific example, the trajectory management module 704 is further configured to obtain continuous trajectory points marked as unreliable and located between two reliable trajectory segments, where all trajectory points included in the reliable trajectory segments are marked as reliable; determine whether the length of the continuous trajectory points marked as unreliable is less than or equal to a second threshold, and if so, correct the unreliable trajectory points to be reliable.
[0085] Optionally, in a specific example, the position checking module 702 is configured to determine the position reliability of the trajectory point according to a Global Navigation Satellite System (GNSS) solution parameter in the position data of the trajectory point.
[0086] Optionally, in a specific example, the GNSS solution parameters include: one or more of: the number of satellites, position standard deviation, positioning mode, and position precision factor PDOP. The position check module 702 is used to determine, for each trajectory point, whether the number of satellites is greater than or equal to a preset number; whether the position standard deviation of the trajectory point is less than or equal to a preset standard deviation; whether the GNSS solution of the trajectory point adopts carrier phase difference technology; whether the position precision factor PDOP of the trajectory point is less than or equal to a preset threshold; and whether the speed corresponding to the trajectory point is greater than or equal to a preset speed. When any of the above judgment results is no, the trajectory point is determined to be unreliable. If all the judgment results are yes, the trajectory point is determined to be reliable.
[0087] The trajectory processing device provided in an embodiment of the present application obtains trajectory solution data, which includes position data, attitude data, and velocity data of at least one trajectory point; determines the position reliability of the trajectory point based on the position data of the trajectory point; determines the attitude stability of at least one trajectory segment formed by at least one trajectory point based on the attitude data and velocity data of the trajectory point; and determines whether the trajectory point is reliable based on the position reliability of the trajectory point and the attitude stability of the trajectory segment to which the trajectory point belongs. By comprehensively considering the position reliability of the trajectory point and the attitude stability of the trajectory segment to which it belongs, and combining the position reliability and attitude stability to determine the reliability of the trajectory point, it is possible to more accurately determine whether the trajectory point is reliable.
[0088] Example 3
[0089] Based on the method described in the above embodiment 1, the third embodiment of the present application provides an electronic device for executing the method described in the above embodiment 1, referring to Figure 8 , shows a structural diagram of an electronic device according to Example 3 of the present application. The specific embodiments of the present application do not limit the specific implementation of the electronic device.
[0090] like Figure 8 As shown, the electronic device 80 may include: a processor 802 , a communications interface 804 , a memory 806 , and a communication bus 808 .
[0091] in:
[0092] The processor 802 , the communication interface 804 , and the memory 806 communicate with each other via a communication bus 808 .
[0093] The communication interface 804 is used to communicate with other electronic devices or servers.
[0094] The processor 802 is configured to execute the program 810 , and specifically may execute the relevant steps in the above trajectory processing method embodiment.
[0095] Specifically, the program 810 may include program codes, which include computer operation instructions.
[0096] Processor 802 may be a central processing unit (CPU), an application-specific integrated circuit (ASIC), or one or more integrated circuits configured to implement the embodiments of the present application. The one or more processors included in the smart device may be processors of the same type, such as one or more CPUs, or may be processors of different types, such as one or more CPUs and one or more ASICs.
[0097] The memory 806 is used to store the program 810. The memory 806 may include a high-speed RAM memory, and may also include a non-volatile memory (non-volatile memory), such as at least one disk memory.
[0098] Program 810 can be specifically configured to cause processor 802 to execute and implement the trajectory processing method described in Example 1. The specific implementation of each step in program 810 can be found in the corresponding descriptions of the corresponding steps and units in the aforementioned trajectory processing method embodiment and will not be repeated here. Those skilled in the art will clearly understand that for ease and brevity of description, the specific operating processes of the devices and modules described above can refer to the corresponding process descriptions in the aforementioned method embodiment and will not be repeated here.
[0099] The electronic device provided in an embodiment of the present application obtains trajectory solution data, which includes position data, attitude data, and speed data of at least one trajectory point; determines the position reliability of the trajectory point based on the position data of the trajectory point; determines the attitude stability of at least one trajectory segment formed by the at least one trajectory point based on the attitude data and speed data of the trajectory point; and determines whether the trajectory point is reliable based on the position reliability of the trajectory point and the attitude stability of the trajectory segment to which the trajectory point belongs. By comprehensively considering the position reliability of the trajectory point and the attitude stability of the trajectory segment to which it belongs, and combining the position reliability and attitude stability to determine the reliability of the trajectory point, it is possible to more accurately determine whether the trajectory point is reliable.
[0100] Example 4
[0101] Based on the method described in the above-mentioned embodiment 1, embodiment 4 of the present application provides a computer storage medium on which a computer program is stored. When the program is executed by a processor, the method described in embodiment 1 is implemented.
[0102] Example 5
[0103] Based on the method described in the above-mentioned embodiment 1, embodiment 4 of the present application provides a computer program product, which implements the method described in embodiment 1 when executed by a processor.
[0104] It should be pointed out that, according to the needs of implementation, the various components / steps described in the embodiments of the present application can be split into more components / steps, or two or more components / steps or partial operations of components / steps can be combined into new components / steps to achieve the purpose of the embodiments of the present application.
[0105] The above-described method according to the embodiment of the present application can be implemented in hardware, firmware, or as software or computer code that can be stored in a recording medium (such as a CD ROM, RAM, floppy disk, hard disk or magneto-optical disk), or as computer code that is originally stored in a remote recording medium or a non-temporary machine-readable medium downloaded via a network and will be stored in a local recording medium, so that the method described herein can be stored in such software processing on a recording medium using a general-purpose computer, a dedicated processor or programmable or dedicated hardware (such as an ASIC or FPGA). It is understood that a computer, a processor, a microprocessor controller or programmable hardware includes a storage component (e.g., RAM, ROM, flash memory, etc.) that can store or receive software or computer code, and when the software or computer code is accessed and executed by a computer, a processor or hardware, the navigation method described herein is implemented. In addition, when a general-purpose computer accesses the code for implementing the navigation method shown herein, the execution of the code converts the general-purpose computer into a dedicated computer for executing the navigation method shown herein.
[0106] Those skilled in the art will appreciate that the units and method steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of the embodiments of this application.
[0107] The above implementation methods are only used to illustrate the embodiments of the present application, and are not intended to limit the embodiments of the present application. Ordinary technicians in the relevant technical field can make various changes and modifications without departing from the spirit and scope of the embodiments of the present application. Therefore, all equivalent technical solutions also fall within the scope of the embodiments of the present application, and the scope of patent protection of the embodiments of the present application should be defined by the claims.
Claims
1. A trajectory processing method, wherein: include: Acquiring trajectory solution data, wherein the trajectory solution data includes position data, posture data, and velocity data of at least one trajectory point; determining the position reliability of the trajectory point according to the position data of the trajectory point; determining, based on the attitude data and the velocity data of the trajectory point, an attitude stability of at least one trajectory segment formed by the at least one trajectory point, wherein the attitude stability is related to a heading difference between a track angle and a heading angle of the at least one trajectory point included in the trajectory segment; Whether the trajectory point is reliable is determined according to the position reliability of the trajectory point and the posture stability of the trajectory segment to which the trajectory point belongs.
2. The method according to claim 1, wherein The determining, based on the posture data and the velocity data of the trajectory point, the posture stability of at least one trajectory segment formed by the at least one trajectory point comprises: determining a track angle of the trajectory point according to the velocity data of the trajectory point; Calculating a heading difference between a heading angle included in the attitude data of the trajectory point and a track angle of the trajectory point; Segmenting the at least one trajectory point based on a change trend of a heading angle in the posture data of the at least one trajectory point to obtain the at least one trajectory segment; The attitude stability of the trajectory segment is determined according to a heading difference of at least one of the trajectory points included in the trajectory segment.
3. The method according to claim 2, wherein: The determining of the attitude stability of the trajectory segment according to the heading difference of at least one trajectory point included in the trajectory segment includes: Determine the standard deviation and the average value of the heading difference of at least one of the trajectory points based on the heading difference of at least one of the trajectory points included in the trajectory segment. determining a stability value of the trajectory segment based on a standard deviation and an average of the heading differences of at least one of the trajectory points; The stability value of the trajectory segment is compared with a threshold value corresponding to the type of the trajectory segment to determine the posture stability of the trajectory segment.
4. The method according to claim 1, wherein The determining whether the trajectory point is reliable according to the position reliability of the trajectory point and the posture stability of the trajectory segment includes: When the position reliability of the trajectory point indicates that the position of the trajectory point is reliable, and the posture stability of the trajectory segment to which the trajectory point belongs indicates that the posture of the trajectory segment is stable, the trajectory point is marked as reliable; otherwise, it is marked as unreliable.
5. The method according to claim 4, wherein The method further comprises: The reliability of the marked trajectory points is corrected according to the continuity of whether the trajectory points are reliable.
6. The method according to claim 5, wherein: The correcting whether the marked trajectory point is reliable according to the continuity of whether the trajectory point is reliable includes: It is determined whether the length of the continuous track points marked as reliable is less than or equal to a first threshold; if so, the continuous track points marked as reliable are revised to unreliable.
7. The method according to claim 6, wherein: The method further comprises: Acquire consecutive unreliable trajectory points between two reliable trajectory segments, wherein all trajectory points included in the reliable trajectory segments are marked as reliable; It is determined whether the length of the continuous track points marked as unreliable is less than or equal to a second threshold; if so, the unreliable track points are corrected to be reliable.
8. The method according to any one of claims 1 to 7, wherein: Determining the position reliability of the trajectory point according to the position data of the trajectory point includes: The position reliability of the trajectory point is determined based on a Global Navigation Satellite System (GNSS) solution parameter in the position data of the trajectory point.
9. The method according to claim 8, wherein The GNSS solution parameters include: one or more of: the number of satellites, position standard deviation, positioning mode, and position precision dilution (PDOP). Determining whether the position in the position data is reliable based on the GNSS solution parameters in the position data of the trajectory point includes: For each trajectory point, determine whether the number of satellites is greater than or equal to the preset number; Determining whether the position standard deviation of the trajectory point is less than or equal to a preset standard deviation; Determining whether the GNSS solution for the trajectory point uses carrier phase difference technology; Determine whether the position precision dilution PDOP of the trajectory point is less than or equal to a preset threshold; Determining whether the speed corresponding to the trajectory point is greater than or equal to a preset speed; When any of the above judgment results is no, it is determined that the track point is unreliable. If all of the judgment results are yes, it is determined that the track point is reliable.
10. A computer program product, which, when executed by a processor, implements the trajectory processing method according to any one of claims 1 to 9.
Citation Information
Patent Citations
Vehicle real-time track prediction method and prediction system
CN106384540A
Real-time vehicle trajectory prediction method and prediction system
WO2018072362A1