Data processing and navigation method, and computer storage medium
By acquiring the sequence of vehicle driving trajectory points, matching trajectory templates, and calculating steering angles, the problem of navigation inaccuracy caused by errors in road network data in navigation systems has been solved, thereby improving navigation accuracy and user experience.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- ALIBABA (CHINA) CO LTD
- Filing Date
- 2022-03-31
- Publication Date
- 2026-05-01
AI Technical Summary
Existing navigation systems rely on road network data for navigation, which is prone to errors and results in a poor user experience.
By acquiring the sequence of vehicle driving trajectory points, matching it with a preset trajectory template, extracting relevant trajectory segments, determining the starting point, ending point, and intermediate point, and calculating the vehicle steering angle, the accuracy of the steering angle is improved.
It improves the accuracy of vehicle steering angles, reduces navigation inaccuracies caused by incorrect road network data, and enhances the user experience.
Smart Images

Figure CN114777801B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of navigation technology, and in particular to a data processing method, a navigation method, and a computer storage medium. Background Technology
[0002] During vehicle operation, various road intersections are inevitable. Applications with map navigation functions serve as important tools for assisting driving. They can provide navigation guidance to drivers through text, images, voice, and other means, thereby guiding drivers to make correct driving decisions.
[0003] Typically, navigation guidance includes instructions on how to turn at intersections, such as right turn, left turn, and U-turn. Currently, navigation actions are primarily determined by road network data. However, the production process and data acquisition methods for road network data are complex, making it prone to inaccurate representations of actual road shapes. Navigation actions based on a single piece of road network data may lead to errors and negatively impact the user experience. Summary of the Invention
[0004] In view of this, embodiments of this application provide a data processing and navigation scheme to at least partially solve the above-mentioned problems.
[0005] According to a first aspect of the embodiments of this application, a data processing method is provided, the method comprising: obtaining a corresponding road trajectory shape based on a sequence of vehicle driving trajectory points; obtaining a trajectory template matching the road trajectory shape from a preset trajectory template; using the trajectory template to truncate the road trajectory shape to obtain a truncated trajectory segment and a target trajectory point sequence corresponding to the trajectory segment; determining the start point, end point, and intermediate point of the target trajectory point sequence, wherein the intermediate point is a trajectory point in the target trajectory point sequence that is related to the vehicle steering angle; and determining the vehicle steering angle based on the start point, the end point, and the intermediate point.
[0006] According to a second aspect of the embodiments of this application, a data processing apparatus is provided, the apparatus comprising: a first obtaining module, configured to obtain a corresponding road trajectory shape based on a sequence of vehicle driving trajectory points; a second obtaining module, configured to obtain a trajectory template matching the road trajectory shape from a preset trajectory template; a truncating module, configured to truncate the road trajectory shape using the trajectory template to obtain a truncated trajectory segment and a target trajectory point sequence corresponding to the trajectory segment; a first determining module, configured to determine the starting point, the ending point, and the intermediate point of the target trajectory point sequence, wherein the intermediate point is a trajectory point in the target trajectory point sequence related to the vehicle steering angle; and a second determining module, configured to determine the vehicle steering angle based on the starting point, the ending point, and the intermediate point.
[0007] According to a third aspect of the embodiments of this application, a navigation method is provided, comprising: planning a navigation route based on a starting point and an ending point; determining navigation action data corresponding to the navigation route based on pre-generated navigation actions; and pre-generating the navigation actions based on the method described in the first aspect.
[0008] According to a fourth aspect 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, wherein the executable instruction causes the processor to perform an operation corresponding to the data processing method described in the first aspect.
[0009] According to a fifth aspect of the embodiments of this application, a computer storage medium is provided, on which a computer program is stored, which, when executed by a processor, implements the data processing method as described in the first aspect.
[0010] The data processing scheme provided in this application provides the following steps: Based on the vehicle's driving trajectory point sequence, a corresponding road trajectory shape is obtained; a trajectory template matching the road trajectory shape is obtained from a preset trajectory template; the road trajectory shape is cropped using the trajectory template to obtain a cropped trajectory segment and a corresponding target trajectory point sequence. The cropped target trajectory point sequence is closely related to the vehicle's steering angle, improving the accuracy of calculating the vehicle's steering angle; the starting point, ending point, and intermediate point of the target trajectory point sequence are determined, where the intermediate point is a trajectory point in the target trajectory point sequence related to the vehicle's steering angle. By determining the intermediate point, errors caused by deviations between the trajectory point sequence and road network data can be reduced; the vehicle's steering angle is determined based on the starting point, ending point, and intermediate point, improving the accuracy of the vehicle's steering angle, reducing navigation inaccuracies caused by errors in road network data, and enhancing the user experience. Attached Figure Description
[0011] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments recorded in the embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings.
[0012] Figure 1 A flowchart illustrating the steps of a data processing method provided in this application embodiment;
[0013] Figure 2 This is a schematic diagram of an application scenario provided by an embodiment of this application;
[0014] Figure 3 This is a schematic diagram illustrating another application scenario provided by an embodiment of this application;
[0015] Figure 4 A schematic diagram illustrating a trajectory point selection result provided in an embodiment of this application;
[0016] Figure 5A A schematic diagram illustrating a vehicle steering angle provided in an embodiment of this application;
[0017] Figure 5B A schematic diagram illustrating another vehicle steering angle provided in an embodiment of this application;
[0018] Figure 5C A schematic diagram illustrating another vehicle steering angle provided in an embodiment of this application;
[0019] Figure 6A A schematic diagram illustrating the relationship between vehicle steering angle and vehicle steering action, provided as an embodiment of this application;
[0020] Figure 6B A schematic diagram illustrating another relationship between vehicle steering angle and vehicle steering action, provided as an embodiment of this application;
[0021] Figure 7 A flowchart illustrating the steps of another data processing method provided in this application embodiment;
[0022] Figure 8 A flowchart illustrating the steps of a navigation method provided in this application embodiment;
[0023] Figure 9 A structural block diagram of a data processing apparatus provided in an embodiment of this application;
[0024] Figure 10 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Detailed Implementation
[0025] To enable those skilled in the art to better understand the technical solutions in the embodiments of this application, the technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art should fall within the protection scope of the embodiments of this application.
[0026] It should be noted that the "first" and "second" in this application are only for distinguishing names and do not represent a sequential relationship. They should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. For example, "first preset quantity" and "second preset quantity", "first obtaining module" and "second obtaining module", "first determining module" and "second determining module"; "target" in this application is only for indicating a singular concept and is not used for limitation. It does not specifically refer to a particular one. For example, "target trajectory point sequence" and "vehicle target driving direction"; "multiple" in this application refers to two or more. For example, multiple trajectory points and multiple included angles.
[0027] The specific implementation of the embodiments of this application will be further described below with reference to the accompanying drawings.
[0028] Example 1
[0029] The data processing method provided in Embodiment 1 of this application, such as Figure 1 As shown, Figure 1 A flowchart of a data processing method provided in this application embodiment, the data processing method including the following steps:
[0030] Step S101: Obtain the corresponding road trajectory shape based on the vehicle's driving trajectory point sequence.
[0031] A vehicle trajectory point sequence consists of a series of continuous positioning points, which can be obtained by corresponding positioning devices such as a vehicle-mounted Global Positioning System (GPS). One vehicle trajectory point sequence corresponds to one road, and the vehicle trajectory point sequence can be obtained by collecting the vehicle's road driving trajectory. Correspondingly, this vehicle trajectory point sequence corresponds to a certain shape, that is, the road trajectory shape, thereby revealing the road shape of this section of road, such as a straight road, a left-turn road, a right-turn road, etc.
[0032] Step S102: Obtain a trajectory template that matches the shape of the road trajectory from the preset trajectory template.
[0033] A trajectory template is used to describe different trajectory shapes and can reflect the relationship between multiple trajectory points. For example, the trajectory points may move towards each other with a gradual change in angle to the left. In this trajectory template, the angle formed between all the trajectory points is a leftward turn. Optionally, the trajectory template can represent the trajectory shape, trajectory trend, trajectory curve, etc., at representative road intersections.
[0034] The preset trajectory template in this embodiment can be appropriately set by those skilled in the art according to actual needs; or it can be extracted from cases of collecting a large number of vehicle driving trajectory point sequences and performing analysis, classification, fitting, and other processing on the large number of vehicle driving trajectory point sequences; or, the road network contains road intersections of different shapes, each of which has certain rules, and multiple road intersections with similar shapes are divided into the same trajectory template, and the trajectory curve of the trajectory template is obtained based on the road network data corresponding to the multiple road intersections with similar shapes; this embodiment does not limit this.
[0035] When a sequence of vehicle trajectory points is obtained, the shape of the road trajectory corresponding to the sequence is matched with a trajectory template to see which trajectory template's curve the road trajectory shape matches, thereby obtaining a trajectory template that matches the road trajectory shape. For example, in this embodiment, a trajectory template matching the road trajectory shape can be obtained by comparing the trajectory template with the road trajectory shape using methods such as shape comparison, trend comparison, and curve comparison.
[0036] The trajectory template in this embodiment can be defined according to preset rules and can be continuously maintained and upgraded during use, thereby improving the accuracy and diversity of the trajectory template so that it can match more road trajectory shapes and improve the matching degree of road trajectory shapes, thus improving the accuracy of the matched trajectory template.
[0037] Step S103: Use a trajectory template to cut out the shape of the road trajectory, and obtain the cut trajectory segment and the target trajectory point sequence corresponding to the trajectory segment.
[0038] The road trajectory shape is cropped using a trajectory template, resulting in a segmented trajectory. This segment represents a portion of the road trajectory shape, reflecting the part of the road trajectory shape closely related to the vehicle's steering angle when navigating the intersection. The target trajectory point sequence corresponding to the trajectory segment is a sequence of trajectory points closely related to the vehicle's steering angle.
[0039] Step S104: Determine the starting point, ending point, and intermediate point of the target trajectory point sequence, wherein the intermediate point is the trajectory point in the target trajectory point sequence that is related to the vehicle steering angle.
[0040] The target trajectory point sequence includes multiple trajectory points, from which a start point, end point, and intermediate point are selected. In this example, the trajectory points at both ends of the target trajectory point sequence are used as the start and end points. For example, if the target trajectory point sequence includes 20 trajectory points, the direction from the 1st trajectory point to the 20th trajectory point is taken as the vehicle's driving direction. The 1st trajectory point out of the 20 is used as the start point, and the 20th trajectory point out of the 20 is used as the end point. An intermediate point is then selected from the remaining 18 trajectory points. This intermediate point is closely related to the vehicle's steering angle, which can reduce errors caused by deviations between the trajectory point sequence and the road network data.
[0041] like Figure 2 As shown, Figure 2 This is a schematic diagram of an application scenario provided by an embodiment of this application. Figure 2 In sections 2.1-2.4, the solid lines represent road network data, which can also be understood as links in the road network. The multiple points in section 2.1 represent a sequence of vehicle trajectory points. The multiple points in section 2.2 represent the sequence of target trajectory points corresponding to the extracted trajectory segments. The two points in section 2.3 represent the start and end points, respectively. These start and end points are determined based on the vehicle's direction of travel. It can be understood that if the direction of travel is different from the vehicle's direction of travel... Figure 2 If the driving direction is opposite, the starting point and ending point are interchanged. In section 2.4, the three points represent the starting point, ending point, and intermediate point. The intermediate point is closely related to the vehicle's steering angle and directly affects the vehicle's steering angle calculated based on the starting point, intermediate point, and ending point. Figure 2 The starting point, ending point, and intermediate points of the target trajectory point sequence can be determined. Specifically, this is achieved through steps 2.1-2.4: 2.1 Specify the trajectory at the road intersection; 2.2 Truncate the trajectory: Truncate the trajectory near the road intersection based on the trajectory template. The truncated portion of the trajectory points does not actually affect the vehicle's turning angle at the road intersection. However, if it is not truncated, it will interfere with the calculation results when calculating the vehicle's turning angle; 2.3 Select the starting point and ending point on the truncated trajectory: Use the trajectory points corresponding to the beginning and end of the truncated trajectory segment as the starting point and ending point; 2.4 Select the intermediate point: Select the intermediate point on the target trajectory point sequence corresponding to the truncated trajectory segment.
[0042] Step S105: Determine the vehicle steering angle based on the starting point, ending point, and intermediate point.
[0043] The vehicle steering angle is calculated based on the start point, end point, and intermediate point. The vehicle steering angle represents the angle the vehicle needs to turn during its current journey. This steering angle can be used to issue instructions for navigation actions, which are essentially vehicle steering actions, such as turning left, making a U-turn, or going straight. Figure 3 As shown, Figure 3This is a schematic diagram of another application scenario provided by an embodiment of this application. In this application scenario, the driver is prompted with a voice broadcast to perform the navigation action: "Turn right into Guangshun South Street in 98 meters".
[0044] In related technologies, in-vehicle navigation systems provide navigation instructions to drivers in advance based on single road network data, including but not limited to road traffic signs and traffic restriction rules. Providing navigation instructions based on a single road network data can easily lead to navigation errors, guiding drivers incorrectly and affecting their travel experience. However, this application's embodiment obtains the corresponding road trajectory shape based on the vehicle's driving trajectory point sequence; obtains a trajectory template matching the road trajectory shape from a preset trajectory template; uses the trajectory template to crop the road trajectory shape, obtaining the cropped trajectory segment and the corresponding target trajectory point sequence. The cropped target trajectory point sequence is closely related to the vehicle's steering angle, improving the accuracy of calculating the vehicle's steering angle; determines the start point, end point, and midpoint of the target trajectory point sequence, where the midpoint is a trajectory point in the target trajectory point sequence related to the vehicle's steering angle. By determining the midpoint, the error caused by deviation between the trajectory point sequence and the road network data can be reduced; and determines the vehicle's steering angle based on the start point, end point, and midpoint, improving the accuracy of the vehicle's steering angle, reducing navigation inaccuracies caused by errors in road network data, and enhancing the user experience.
[0045] The data processing method of this application embodiment can be executed by any suitable electronic device with data processing capabilities, including but not limited to: servers, PCs, mobile terminals, etc.
[0046] Example 2
[0047] This application's second embodiment is based on the solution of embodiment one. Optionally, in one example of this application's embodiment, this application's embodiment may include the following steps S201-S208.
[0048] Step S201: Obtain GPS trajectory data generated during vehicle operation.
[0049] Step S202: Aggregate the GPS trajectory data to obtain a continuous sequence of vehicle driving trajectory points.
[0050] GPS trajectory data represents the trajectory data generated by a vehicle while driving on a road. GPS trajectory data can be obtained by collecting and processing a large amount of driving record data, or by staff collecting trajectory data from various roads. This application does not limit this.
[0051] Taking a road intersection as an example, multiple vehicles traveling through the intersection generate multiple GPS trajectory data points. These multiple GPS trajectory data points are then aggregated. Trajectory aggregation involves analyzing and aggregating multiple GPS trajectory data points according to preset rules, including but not limited to filtering GPS trajectory data points that deviate significantly from the road and calculating the average value of the filtered GPS trajectory data. After trajectory aggregation, a continuous sequence of vehicle travel trajectory points can be obtained. Obtaining a continuous sequence of vehicle travel trajectory points by aggregating GPS trajectory data, by comprehensively considering multiple GPS trajectory data points, improves the accuracy of the vehicle travel trajectory point sequence compared to using only one GPS trajectory data point.
[0052] Step S203: Obtain the corresponding road trajectory shape based on the vehicle's driving trajectory point sequence.
[0053] Step S204: Obtain a trajectory template that matches the shape of the road trajectory from the preset trajectory template.
[0054] Step S205: Use a trajectory template to cut out the shape of the road trajectory, and obtain the cut trajectory segment and the target trajectory point sequence corresponding to the trajectory segment.
[0055] It should be noted that steps S203-S205 in this embodiment are the same as steps S101-S103 in Embodiment 1, and will not be repeated here.
[0056] Step S206: Determine the first and last trajectory points in the target trajectory point sequence in chronological order as the start and end points; select intermediate points based on the relationships between the trajectory points other than the start and end points and the start and end points respectively.
[0057] It should be noted that step S206 is an implementation of step S104 in Embodiment 1, which determines the intermediate point of the target trajectory point sequence.
[0058] The target trajectory point sequence includes multiple trajectory points. The relationships between these trajectory points and the start and end points include, but are not limited to: the positional relationship between the trajectory points and the start and end points (e.g., a trajectory point is closer to the start point, a trajectory point is closer to the end point), the distance between the trajectory point and the start point, the distance between the trajectory point and the end point, the number of trajectory points between the trajectory point and the start point, the number of trajectory points between the trajectory point and the end point, and the angle formed between the trajectory points and the start and end points. This embodiment does not impose limitations on these aspects. In this example, an intermediate point is selected based on the relationships between the multiple trajectory points and the start and end points, fully considering the positions of the start and end points. Compared to directly using any trajectory point as the intermediate point, this improves the accuracy of obtaining the intermediate point.
[0059] When selecting intermediate points based on the relationships between the trajectory points (excluding the starting and ending points) and the starting and ending points in the target trajectory point sequence, the following two examples can be used.
[0060] In the first example, optionally, in one example of an embodiment of this application, for each trajectory point in the target trajectory point sequence other than the starting point and the ending point, the angle between the line segment formed by the starting point and the trajectory point and the line segment formed by the trajectory point and the ending point is calculated; based on the angle corresponding to each trajectory point, multiple angles corresponding to multiple trajectory points are obtained; the trajectory point corresponding to the largest angle among the multiple angles corresponding to multiple trajectory points is determined as the intermediate point.
[0061] In this example, multiple angles are obtained by calculating the angles between the line segments formed by the starting point and the trajectory point and the line segments formed by the trajectory point and the ending point. The trajectory point corresponding to the largest angle among these multiple angles is then determined as the intermediate point. For example... Figure 4 As shown, Figure 4 This is a schematic diagram illustrating a trajectory point selection result provided in an embodiment of this application. Figure 4 In sections 4.1-4.6, the solid lines represent road network data. These solid lines can also be understood as links in the road network. Multiple points constitute a sequence of target trajectory points. The beginning and end of the target trajectory point sequence represent the start and end points, respectively. Here, the start and end points are determined based on the vehicle's driving direction, and the intermediate points are trajectory points closely related to the vehicle's steering angle. In this example, the intermediate points are closely related to the vehicle's steering angle, which can reduce the error caused by deviations between the trajectory point sequence and the road network data. Even if the road network data is incorrect, it will not affect the selection of trajectory points, thereby improving the accuracy of the vehicle steering angle calculated using the start point, end point, and selected intermediate points.
[0062] In the second example, among multiple trajectory points, a first preset number of trajectory points are filtered out according to the direction from the start point to the end point, using the start point as the base point; and / or, a second preset number of trajectory points are filtered out according to the direction from the end point to the start point, using the end point as the base point; for each trajectory point in the target trajectory point sequence after filtering out the first preset number of trajectory points, and / or filtering out the second preset number of trajectory points, the angle between the line segment formed by the start point to the trajectory point and the line segment formed by the trajectory point to the end point is calculated; based on the angle corresponding to each trajectory point, multiple angles corresponding to multiple trajectory points are obtained; the trajectory point corresponding to the largest angle among the multiple angles corresponding to multiple trajectory points is determined as the intermediate point.
[0063] It should be noted that the first and second preset quantities can be appropriately set by those skilled in the art according to actual needs, such as based on a large amount of experimental data, the number of multiple trajectory points, or the shape of road intersections corresponding to the target trajectory point sequence. The requirement is that the first preset quantity is less than the number of multiple trajectory points excluding the start and end points; or the second preset quantity is less than the number of multiple trajectory points excluding the start and end points; or the sum of the first and second preset quantities is less than the number of multiple trajectory points excluding the start and end points. Furthermore, the first and second preset quantities can be set to be the same or different. This application does not impose any limitations on this.
[0064] This example filters multiple trajectory points before calculating the angle between the line segment formed by the starting point and the trajectory point and the line segment formed by the trajectory point and the ending point. Three possible implementation methods are described below. In one implementation method, a first preset number of trajectory points are filtered out according to the direction from the starting point to the ending point, using the starting point as the base point. For example, if the target trajectory point sequence includes 20 trajectory points, and the direction from the 1st to the 20th trajectory point is the vehicle's driving direction, the 1st trajectory point out of the 20 points is taken as the starting point, and the 20th trajectory point out of the 20 points is taken as the ending point. The first preset number is 5. Trajectories 2-6 are filtered out. The middle point is then selected from the remaining 7th-19th trajectory points. The method for selecting the middle point is the same as in the first example and will not be repeated here. In this example, by filtering out trajectory points close to the starting point and selecting the middle point from the remaining trajectory points, the accuracy of selecting the middle point is increased. In another possible approach, following the direction from the start point to the end point, using the end point as the base point, a second preset number of trajectory points are filtered out. The specific implementation method is the same as filtering out the first preset number of trajectory points, and will not be repeated here. In this example, by filtering out trajectory points close to the end point, the intermediate point is selected from the remaining trajectory points, increasing the accuracy of selecting the intermediate point. In yet another possible approach, following the direction from the start point to the end point, using the start point as the base point, a first preset number of trajectory points are filtered out, and following the direction from the start point to the end point, using the end point as the base point, a second preset number of trajectory points are filtered out. For example, if the target trajectory point sequence includes 20 trajectory points, taking the direction from the 1st trajectory point to the 20th trajectory point as the vehicle's driving direction, taking the 1st trajectory point out of the 20 as the start point, and the 20th trajectory point out of the 20 as the end point, the first preset number is 3, filtering out the 2nd to 4th trajectory points, and the second preset number is 5, filtering out the 15th to 19th trajectory points. The intermediate point is selected from the remaining 5th to 14th trajectory points, and the method for selecting the intermediate point is the same as in the first example, and will not be repeated here. Compared with the previous two filtering methods, this filtering method not only filters out trajectory points close to the starting point, but also filters out trajectory points close to the ending point, and selects the intermediate point from the remaining trajectory points, which further increases the accuracy of selecting the intermediate point.
[0065] Step S207: Take the direction of the vector formed from the starting point to the midpoint as the current driving direction of the vehicle, and the direction of the vector formed from the midpoint to the end point as the target driving direction of the vehicle. Determine the vehicle steering angle based on the current driving direction and the target driving direction of the vehicle.
[0066] Step S207 is an implementation of step S105 in Embodiment 1. The direction of the vector formed from the starting point to the midpoint is the vehicle's current driving direction, and the direction of the vector formed from the midpoint to the end point is the vehicle's target driving direction. The vehicle's steering angle is determined based on the current driving direction and the target driving direction, improving the accuracy of the vehicle's steering angle and reducing navigation inaccuracies caused by errors in road network data.
[0067] The following three examples illustrate how to determine the vehicle's steering angle based on its current direction of travel and its target direction of travel.
[0068] In the first example, using the vehicle's current direction of travel as the north direction line, the azimuth angle between the vehicle's current direction of travel and the vehicle's target direction of travel is calculated, and the vehicle's steering angle is determined based on the azimuth angle.
[0069] It should be noted that the azimuth angle is the horizontal angle formed by rotating the north direction line clockwise to the target direction. For example... Figure 5A As shown, Figure 5A This is a schematic diagram illustrating a vehicle steering angle according to an embodiment of this application. Figure 5A The text provides two examples, 5a.1 and 5a.2, to illustrate vehicle steering angles. In these examples, the current direction of vehicle travel is used as the north direction line, and the target direction of vehicle travel is used as the target direction. This azimuth angle is taken as the vehicle steering angle, which ranges from 0° to 360°.
[0070] After determining the vehicle steering angle based on the first example, the data processing method further includes generating a navigation action that indicates the vehicle steering action based on the conversion relationship between the vehicle steering angle and the vehicle steering action.
[0071] The conversion relationship between vehicle steering angle and vehicle steering action includes: when the vehicle steering angle is in the first angle range, the vehicle steering action is straight; when the vehicle steering angle is in the second angle range, the vehicle steering action includes right front, right turn, and right rear; when the vehicle steering angle is in the third angle range, the vehicle steering action is U-turn; when the vehicle steering angle is in the fourth angle range, the vehicle steering action includes left front, left turn, and left rear; the first angle range, the second angle range, the third angle range, and the fourth angle range are independent of each other, and the sum of the first angle range, the second angle range, the third angle range, and the fourth angle range is equal to 360°.
[0072] like Figure 6A As shown, Figure 6A This diagram illustrates the relationship between vehicle steering angle and vehicle steering action, as provided in an embodiment of this application. The first angle range is 0°-2*° and 3**°-360°. When the vehicle steering angle falls within the first angle range, the vehicle steering action is straight-ahead. The second angle range is 2*°-1**°. When the vehicle steering angle falls within the second angle range, the vehicle steering action includes right-forward, right-turn, and right-rear. Specifically, when the vehicle steering angle is 2*°-4*°, the vehicle steering action is right-forward; when the vehicle steering angle is 4*°-1**°, the vehicle steering action is right-turn; and when the vehicle steering angle is 1**°-180°, the vehicle steering action is right-rear. The third angle range is 180°-1**°. When the vehicle steering angle falls within the third angle range, the vehicle steering action is U-turn. The fourth angle range is 1**°-3**°. When the vehicle steering angle falls within this range, steering actions include left front, left turn, and left rear. Specifically, if the vehicle steering angle is between 1**° and 2**°, the steering action is left rear; if the steering angle is between 2**° and 3**°, the steering action is left turn; and if the steering angle is between 31**° and 33**°, the steering action is right front. It can be understood that the above... Figure 6A The first, second, third, and fourth angle ranges are merely illustrative examples and can be appropriately set by those skilled in the art according to actual needs, or determined by analyzing the relationship between a large number of actual vehicle steering actions and vehicle steering angle ranges. Here, "*" represents a single integer from 0 to 9, and "**" represents a two-digit number, where each digit is an integer from 0 to 9.
[0073] In this example, based on the conversion relationship between vehicle steering angle and vehicle steering action, a navigation action instructing the vehicle to turn is generated. Furthermore, the corresponding instructions or information for this navigation action can be played via voice, such as... Figure 3 As shown, Figure 3 The system uses voice prompts to remind the driver of upcoming navigation actions. Voice prompts allow for interaction with the traveler, with vehicle steering actions being the most important piece of information, making their accuracy and real-time performance crucial. This example uses the conversion relationship between vehicle steering angle and steering action to generate navigation actions instructing the vehicle's steering, improving navigation accuracy and enhancing the travel experience.
[0074] The second example calculates the angle between the vehicle's current direction of travel and its target direction of travel, and determines the vehicle's steering angle based on this angle.
[0075] like Figure 5B As shown, Figure 5B This is a schematic diagram illustrating another vehicle steering angle provided in an embodiment of this application. Figure 5B Examples 5b.1 and 5b.2 are provided to illustrate vehicle steering angles. In these examples, the angle between the vehicle's current direction of travel and its target direction of travel is calculated, and this angle is used as the vehicle steering angle. The vehicle steering angle ranges from 0° to 180°.
[0076] After determining the vehicle steering angle based on the second example, the data processing method further includes generating a navigation action that indicates the vehicle steering action based on the conversion relationship between the vehicle steering angle and the vehicle steering action.
[0077] The conversion relationship between vehicle steering angle and vehicle steering action includes: when the vehicle steering angle is in the fifth angle range, the vehicle steering action is to go straight; when the vehicle steering angle is in the sixth angle range and the target driving direction is to the right of the current driving direction, the vehicle steering action includes right front, right turn, and right rear; when the vehicle steering angle is in the seventh angle range and the target driving direction is to the left of the current driving direction, the vehicle steering action is to make a U-turn; when the vehicle steering angle is in the eighth angle range and the target driving direction is to the left of the current driving direction, the vehicle steering action includes left front, left turn, and left rear; the fifth and sixth angle ranges are independent of each other, the sum of the fifth and sixth angle ranges is equal to 180°, and the sum of the seventh and eighth angle ranges is equal to the sixth angle range.
[0078] like Figure 6B As shown, Figure 6BThis illustration shows the relationship between vehicle steering angle and vehicle steering action in an embodiment of this application. The fifth angle range is 0°-2*°. When the vehicle steering angle is within this range, regardless of whether the target driving direction is to the left or right of the current driving direction, the vehicle steering action is straight. The sixth angle range is 2*°-180°. When the vehicle steering angle is within this range and the target driving direction is to the right of the current driving direction, the vehicle steering action includes right forward, right turn, and right rearward. Specifically, if the target driving direction is to the right of the current driving direction, and the vehicle steering angle is 2*°-4*°, the vehicle steering action is right forward; if the vehicle steering angle is 4*°-1**°, the vehicle steering action is right turn; and if the vehicle steering angle is 1**°-180°, the vehicle steering action is right rearward. The seventh angle range is 1**°-180°. When the vehicle steering angle is within this range and the target driving direction is to the left of the current driving direction, the vehicle steering action is a U-turn. The eighth angle range is 2*°-1**°. When the vehicle's steering angle falls within this range and the target direction of travel is to the left of the current direction of travel, the steering actions include left forward, left turn, and left rearward. Specifically, if the target direction of travel is to the left of the current direction of travel, and the steering angle is between 2*° and 4*°, the steering action is left forward; if the steering angle is between 4*° and 1**°, the steering action is left turn; and if the steering angle is between 13*° and 17*°, the steering action is left rearward. It can be understood that the above... Figure 6B The fifth, sixth, seventh, and eighth angle ranges are merely illustrative examples and can be appropriately set by those skilled in the art according to actual needs, or determined by analyzing the relationship between a large number of actual vehicle steering actions and vehicle steering angle ranges.
[0079] The third example calculates the angle between the line segment formed by the starting point and the midpoint and the line segment formed by the midpoint and the ending point. The supplementary angle of this line segment represents the vehicle steering angle, which ranges from 0° to 180°.
[0080] It should be noted that the azimuth angle is the horizontal angle formed by rotating the north direction line clockwise to the target direction. For example... Figure 5C As shown, Figure 5C This is a schematic diagram illustrating another vehicle steering angle provided in an embodiment of this application. Figure 5C The document provides two examples, 5c.1 and 5c.2, to illustrate vehicle steering angles. In these examples, the angle between the line segment from the starting point to the midpoint and the line segment from the midpoint to the ending point is calculated. The supplementary angle of this line segment is taken as the vehicle steering angle, which ranges from 0° to 180°.
[0081] After determining the vehicle steering angle based on the third example, the data processing method further includes generating navigation actions that indicate the vehicle steering actions based on the conversion relationship between the vehicle steering angle and the vehicle steering action. The specific conversion relationship is the same as in the second example and will not be repeated here.
[0082] After obtaining the vehicle's steering angle, the data processing method also includes:
[0083] Step S208: Based on the angle difference between the vehicle steering angle and the road network steering angle, determine the navigation action that indicates the vehicle steering action.
[0084] In one feasible approach, the road network turning angle is determined by: acquiring road network data corresponding to the sequence of vehicle trajectory points; and determining the road network turning angle based on the road network data.
[0085] It should be noted that this example does not restrict the order of execution of the steps used in determining the vehicle steering angle and the road network steering angle; the steps for determining the vehicle steering angle and the steps for determining the road network steering angle can be executed simultaneously.
[0086] The road network data corresponds to the vehicle trajectory point sequence, meaning the road network data and the vehicle trajectory point sequence correspond to the same road intersection. The road network turning angle in this example can be calculated based on road network data according to relevant technologies. This application embodiment does not limit the specific calculation method for the road network turning angle, as long as the road network turning angle can be determined based on the road network data.
[0087] This example also calculates the angle difference between the vehicle's steering angle and the pre-acquired road network steering angle, and determines the navigation action to instruct the vehicle to turn based on the angle difference. When determining the navigation action, not only the vehicle's steering angle determined based on the trajectory point sequence is considered, but also the road network steering angle determined based on the road network data, thereby improving the accuracy of navigation.
[0088] Optionally, in one example of an embodiment of this application, step S208 is implemented in the following manner: obtaining the angle difference between the vehicle steering angle and the pre-obtained road network steering angle; if the angle difference is greater than a preset angle, generating a navigation action indicating the vehicle steering action based on the conversion relationship between the vehicle steering angle and the vehicle steering action; if the angle difference is less than or equal to the preset angle, generating a navigation action indicating the vehicle steering action based on the conversion relationship between the road network steering angle and the vehicle steering action.
[0089] The preset angle can be appropriately set by those skilled in the art according to actual needs, or determined by analyzing the relationship between a large number of actual vehicle steering actions and angle differences. This application does not impose any limitations on this. For example, the preset angle is set to 20°. If the angle difference is greater than 20°, it indicates a large difference between the vehicle steering angle and the road network steering angle, suggesting that the road network data is inaccurate. In this case, navigation actions are no longer based on road network data, but rather on the conversion relationship between the vehicle steering angle and the vehicle steering action, thus improving navigation accuracy. If the angle difference is less than or equal to 20°, it indicates that the difference between the vehicle steering angle and the road network steering angle is not significant, and navigation actions can be determined based on the conversion relationship between the vehicle steering angle or road network steering angle and the vehicle steering action.
[0090] It should be noted that while an angle difference less than or equal to a preset angle indicates a small difference between the vehicle's steering angle and the road network steering angle, there is a possibility that the vehicle's steering action corresponding to the vehicle's steering angle and the road network steering angle may differ. For example, the vehicle's steering action might be right-forward, while the road network steering action might be straight. When the difference between the vehicle's steering angle and the road network steering angle is small, it indicates both accurate and comprehensive road network data. Therefore, in this case, this example uses the road network data as the standard and generates navigation actions based on the conversion relationship between road network steering angles and vehicle steering actions, thus improving navigation accuracy.
[0091] The data processing method of this embodiment can be executed by any suitable electronic device with data processing capabilities, including but not limited to: servers, PCs, mobile terminals, etc.
[0092] Example 3
[0093] This application's third embodiment, based on the solutions of embodiments one and two, provides a specific example to illustrate the data processing in this embodiment, as follows. For example... Figure 7 As shown, Figure 7 The flowchart shows another data processing method provided in the embodiment of this application, which implements data processing through the following steps S701-S708.
[0094] Step S701: Collect GPS trajectory data.
[0095] GPS trajectory data represents the trajectory data generated by a vehicle while it is driving on a road.
[0096] Step S702: Perform trajectory aggregation on the collected GPS trajectory data.
[0097] Multiple GPS trajectory data are aggregated to obtain a continuous sequence of vehicle driving trajectory points.
[0098] Step S703: Template matching and point selection.
[0099] The vehicle driving trajectory point sequence includes multiple trajectory points. The starting point, ending point and intermediate point are selected from the multiple trajectory points. The specific implementation method is the same as steps S101-S104 in the above embodiment, and will not be repeated here.
[0100] In this example, the trajectory template can be understood as the trajectory trend at a road intersection. It needs to be defined according to preset rules because different road intersections correspond to different road trajectory shapes. Therefore, the method of extracting the vehicle's trajectory point sequence based on the trajectory template also differs. Specifically, how to extract for each road intersection can be selected according to a specific strategy. For example, a trajectory template matching the road trajectory shape is obtained from the preset trajectory templates. This trajectory template is then used to extract the road trajectory shape, resulting in the target trajectory point sequence corresponding to the extracted trajectory segment. It is understandable that the trajectory template can be defined according to rules, and it can be continuously updated during the process of extracting the road trajectory shape using the trajectory template.
[0101] In this example, the target trajectory point sequence is obtained by truncating the vehicle's trajectory point sequence based on the trajectory template. This method can handle different road intersections and trajectory shapes, and the interpretability and controllability of the truncated results are relatively strong, improving the accuracy of the obtained target trajectory point sequence. Then, a start point, end point, and intermediate point are selected from the truncated target trajectory point sequence. When selecting the intermediate point, the angles formed by multiple trajectory points with the start and end points are calculated, and the trajectory point with the largest angle among the multiple trajectory points is determined as the intermediate point. This reduces the error caused by deviations between the trajectory point sequence and the road network data, mitigating the impact of errors in the road network data on trajectory point selection. Finally, the vehicle steering angle is calculated based on the trajectory support points, and the vehicle steering action is converted from the steering angle, improving the accuracy of the vehicle steering action.
[0102] Step S704: Determine the vehicle steering action.
[0103] Based on the magnitude of the vehicle's steering angle, it is mapped to the vehicle's steering action. The specific implementation method is the same as in Example 2. Figure 6A and Figure 6B The same applies, so I won't repeat it here.
[0104] Step S705: Obtain road network data.
[0105] The road network data corresponds to the vehicle trajectory point sequence, that is, the road network data and the vehicle trajectory point sequence correspond to the same road intersection.
[0106] Step S706: Determine the road network turning action based on the road network data.
[0107] The road network turning angle is determined based on road network data. There is a mapping relationship between the road network turning angle and the road network turning action. The specific mapping relationship can be found in [reference needed]. Figure 6A and Figure 6B The mapping method between vehicle steering angle and vehicle steering action will not be elaborated here.
[0108] It should be noted that steps S705-S706 and steps S701-S704 are parallel schemes. When executing this data processing method, there is no order in which they are executed and they can be executed simultaneously. This application embodiment does not impose any restrictions on this.
[0109] Step S707: Make a fusion decision.
[0110] The vehicle steering action and the road network steering action are fused based on the angular difference between the vehicle steering angle and the road network steering angle. The specific fusion decision can be implemented in the same way as step S208 in Embodiment 2, and will not be repeated here.
[0111] Step S708: The final vehicle steering action.
[0112] Vehicle steering actions can also be understood as navigation actions. The final vehicle steering action at the road intersection is determined based on the fusion decision results in step S707. The specific implementation method is the same as in Embodiment 2, where the final navigation action is determined based on the relationship between the angle difference and the preset angle, and will not be repeated here. The road intersection action is then published based on the final navigation action, such as... Figure 3 As shown, the published road intersection action is "turn right into Guangshun South Street in 98 meters".
[0113] In related technologies, navigation action calculations primarily rely on road network data. However, the production process and data acquisition methods for road network data are complex, making it prone to errors that fail to accurately reflect the actual road shape. Calculating navigation actions based on a single road network data point can easily lead to errors, reducing navigation accuracy, providing incorrect guidance to drivers, and severely impacting the travel experience. In this example, three points (starting point, intermediate point, and ending point) are selected from multiple trajectory points as support points. The vector formed from the starting point to the intermediate point is used as the north direction line. The azimuth angle between the north direction line and the vector formed from the intermediate point to the ending point is calculated; this azimuth angle represents the vehicle's steering angle. The vehicle steering action is then converted from this angle, mitigating the problem of road network action calculation errors caused by road network inaccuracies. This effectively improves the accuracy and real-time performance of navigation, enhancing the user experience.
[0114] The data processing method of this embodiment can be executed by any suitable electronic device with data processing capabilities, including but not limited to: servers, PCs, mobile terminals, etc.
[0115] Example 4
[0116] Based on any of the data processing methods described in Embodiments 1 to 3 above, this application also provides a navigation method, such as... Figure 8 As shown, Figure 8 The flowchart of a navigation method provided in this application embodiment is implemented through the following steps S100-S200.
[0117] Step S100: Plan the navigation route based on the starting point and the destination.
[0118] The starting point and the ending point can be the starting point and the ending point obtained through the scheme described in the foregoing embodiments. That is, they are the starting point and the ending point as described in the foregoing embodiments.
[0119] Step S200: Based on the pre-generated navigation actions, determine the navigation action data corresponding to the navigation route.
[0120] The navigation action data can be any data that indicates navigation actions, including but not limited to voice data, text or image data, etc.
[0121] The navigation actions are pre-generated using any of the data processing methods described in Embodiments 1 to 3 above. The navigation actions generated using the methods described in the foregoing embodiments are more accurate, thereby improving navigation accuracy and enhancing the user experience.
[0122] Example 5
[0123] Based on any of the data processing methods described in Embodiments 1 to 3 above, this application provides a data processing apparatus, such as... Figure 9 As shown, Figure 9 A data processing apparatus 80 provided in this application embodiment includes: a first obtaining module 801, used to obtain a corresponding road trajectory shape based on a sequence of vehicle driving trajectory points; a second obtaining module 802, used to obtain a trajectory template matching the road trajectory shape from a preset trajectory template; a truncating module 803, used to truncate the road trajectory shape using the trajectory template to obtain a truncated trajectory segment and a target trajectory point sequence corresponding to the trajectory segment; a first determining module 804, used to determine the start point, end point, and intermediate point of the target trajectory point sequence, wherein the intermediate point is a trajectory point in the target trajectory point sequence related to the vehicle steering angle; and a second determining module 805, used to determine the vehicle steering angle based on the start point, end point, and intermediate point.
[0124] Optionally, in one example of an embodiment of this application, the first determining module 804 is further configured to determine the first and last trajectory points in the target trajectory point sequence ordered in chronological order as the starting point and the ending point; and select intermediate points according to the relationship between the trajectory points other than the starting point and the ending point in the target trajectory point sequence and the starting point and the ending point, respectively.
[0125] Optionally, in one example of an embodiment of this application, the first determining module 804 is further configured to calculate, for each trajectory point in the target trajectory point sequence other than the starting point and the ending point, the included angle between the line segment formed by the starting point and the line segment formed by the trajectory point and the ending point; obtain multiple included angles corresponding to multiple trajectory points based on the included angles corresponding to each trajectory point; and determine the trajectory point corresponding to the largest included angle among the multiple included angles corresponding to multiple trajectory points as the intermediate point.
[0126] Optionally, in one example of an embodiment of this application, the first determining module 804 is further configured to filter out a first preset number of trajectory points from multiple trajectory points, in the direction from the starting point to the ending point, with the starting point as the base point; and / or, in the direction from the ending point to the starting point, with the ending point as the base point, filter out a second preset number of trajectory points; for each trajectory point in the target trajectory point sequence after filtering out the first preset number of trajectory points, and / or after filtering out the second preset number of trajectory points, calculate the angle between the line segment formed by the starting point to the trajectory point and the line segment formed by the trajectory point to the ending point.
[0127] Optionally, in one example of the embodiments of this application, the second determining module 805 is further configured to take the direction of the vector formed from the starting point to the intermediate point as the current driving direction of the vehicle, and the direction of the vector formed from the intermediate point to the end point as the target driving direction of the vehicle, and determine the vehicle steering angle based on the current driving direction of the vehicle and the target driving direction of the vehicle.
[0128] Optionally, in one example of the embodiments of this application, the second determining module 805 is further configured to use the current driving direction of the vehicle as the north direction line, calculate the azimuth angle between the current driving direction of the vehicle and the target driving direction of the vehicle, and determine the vehicle steering angle based on the azimuth angle.
[0129] Optionally, in one example of an embodiment of this application, the data processing device 80 further includes a generation module, which is used to generate a navigation action that indicates the vehicle's steering action based on the conversion relationship between the vehicle's steering angle and the vehicle's steering action.
[0130] Optionally, in one example of an embodiment of this application, the second determining module 805 is further configured to calculate the directional angle between the current driving direction of the vehicle and the target driving direction of the vehicle, and determine the vehicle steering angle based on the directional angle.
[0131] Optionally, in one example of an embodiment of this application, the data processing device 80 further includes a third determining module, which is used to determine a navigation action that indicates the vehicle's steering action based on the angle difference between the vehicle's steering angle and the road network's steering angle.
[0132] Optionally, in one example of an embodiment of this application, the third determining module is further configured to obtain the angle difference between the vehicle steering angle and the road network steering angle; if the angle difference is greater than a preset angle, then a navigation action indicating the vehicle steering action is generated according to the conversion relationship between the vehicle steering angle and the vehicle steering action; if the angle difference is less than or equal to the preset angle, then a navigation action indicating the vehicle steering action is generated according to the conversion relationship between the road network steering angle and the vehicle steering action.
[0133] Optionally, in one example of an embodiment of this application, the data processing device 80 further includes a third obtaining module, which is used to obtain GPS trajectory data generated during vehicle driving; and to aggregate the GPS trajectory data to obtain a continuous sequence of vehicle driving trajectory points.
[0134] The data processing apparatus of this application embodiment is used to implement the corresponding data processing methods in the foregoing multiple method embodiments and has the beneficial effects of the corresponding method embodiments, which will not be repeated here. Furthermore, the functional implementation of each module in the data processing apparatus of this application embodiment can refer to the description of the corresponding part in the foregoing method embodiments, which will also not be repeated here.
[0135] Example 6
[0136] Based on any of the data processing methods described in Embodiments 1 to 3 above, this application provides an electronic device. It should be noted that the data processing methods of this application can be executed by any suitable electronic device with data processing capabilities, including but not limited to: servers, mobile terminals (such as mobile phones, tablets, etc.), and PCs. Figure 10 As shown, Figure 10 This is a structural diagram of an electronic device provided in an embodiment of this application. The specific embodiments of this application do not limit the specific implementation of the electronic device. The electronic device 90 may include: a processor 902, a communications interface 904, a memory 906, and a communication bus 908.
[0137] The processor 902, communication interface 904, and memory 906 communicate with each other via communication bus 908.
[0138] Communication interface 904 is used to communicate with other electronic devices or servers.
[0139] The processor 902 is used to execute the computer program 910, specifically the relevant steps in the above data processing method embodiments.
[0140] Specifically, computer program 910 may include computer program code, which includes computer operation instructions.
[0141] The processor 902 may be a CPU, an application-specific integrated circuit (ASIC), or one or more integrated circuits configured to implement the embodiments of this application. The smart device includes one or more processors, which may be processors of the same type, such as one or more CPUs; or processors of different types, such as one or more CPUs and one or more ASICs.
[0142] Memory 906 is used to store computer program 910. Memory 906 may include high-speed RAM memory, and may also include non-volatile memory, such as at least one disk storage device.
[0143] The specific implementation of each step in program 910 can be found in the corresponding steps and units described in the above data processing method embodiments, and will not be repeated here. Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working process of the devices and modules described above can be referred to the corresponding process descriptions in the foregoing method embodiments, and will not be repeated here.
[0144] Example 6
[0145] Based on the data processing methods described in Embodiments 1 to 3 above, this application provides a computer storage medium storing a computer program that, when executed by a processor, implements the data processing methods described in Embodiments 1 to 3.
[0146] It should be noted that, depending on the implementation needs, the various components / steps described in the embodiments of this application can be broken down into more components / steps, or two or more components / steps or parts of the operation of components / steps can be combined into new components / steps to achieve the purpose of the embodiments of this application.
[0147] The methods described in the embodiments of this 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 downloaded over a network that is originally stored in a remote recording medium or a non-transitory machine-readable medium and will be stored in a local recording medium. Thus, the methods described herein can be stored as 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 the computer, processor, microprocessor controller, or programmable hardware includes storage components (e.g., RAM, ROM, flash memory, etc.) capable of storing or receiving software or computer code. When the software or computer code is accessed and executed by the computer, processor, or hardware, the data processing methods described herein are implemented. Furthermore, when a general-purpose computer accesses the code used to implement the data processing methods shown herein, the execution of the code transforms the general-purpose computer into a dedicated computer for executing the data processing methods shown herein.
[0148] Those skilled in the art will recognize that the exemplary units and method steps 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 implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementations should not be considered beyond the scope of the embodiments of this application.
[0149] The above embodiments are only used to illustrate the embodiments of this application, and are not intended to limit the embodiments of this application. Those skilled in the art can make various changes and modifications without departing from the spirit and scope of the embodiments of this application. Therefore, all equivalent technical solutions also fall within the scope of the embodiments of this application, and the patent protection scope of the embodiments of this application should be defined by the claims.
Claims
1. A data processing method, comprising: Based on the sequence of vehicle travel trajectory points, the corresponding road trajectory shape is obtained; From the preset trajectory template, obtain a trajectory template that matches the shape of the road trajectory, wherein the trajectory template represents the trajectory shape, trajectory trend, and trajectory curve at a representative road intersection; The trajectory template is used to cut out the shape of the road trajectory to obtain the cut-out trajectory fragment and the target trajectory point sequence corresponding to the trajectory fragment; Determine the starting point, ending point, and intermediate point of the target trajectory point sequence, wherein the intermediate point is the trajectory point in the target trajectory point sequence with the largest angle between the line segment formed by the starting point and the trajectory point and the line segment formed by the trajectory point and the ending point; The direction of the vector formed from the starting point to the intermediate point is the current driving direction of the vehicle, and the direction of the vector formed from the intermediate point to the ending point is the target driving direction of the vehicle. The vehicle steering angle is determined based on the current driving direction and the target driving direction of the vehicle, and the vehicle steering angle is used to determine the navigation action.
2. The method according to claim 1, wherein, Determining the start point, end point, and intermediate points of the target trajectory point sequence includes: The starting point and the ending point are determined as the first and last points in the target trajectory point sequence, ordered chronologically. Based on the relationship between the trajectory points (excluding the starting point and the ending point) in the target trajectory point sequence and the starting point and the ending point, an intermediate point is selected.
3. The method according to claim 2, wherein, Based on the relationships between the trajectory points (excluding the starting point and the ending point) in the target trajectory point sequence and the starting point and the ending point, intermediate points are selected, including: For each trajectory point in the target trajectory point sequence, excluding the starting point and the ending point, calculate the angle between the line segment formed by the starting point and the line segment formed by the trajectory point and the ending point. Based on the included angle corresponding to each trajectory point, multiple included angles corresponding to the multiple trajectory points are obtained; The trajectory point corresponding to the largest included angle among the multiple included angles of the multiple trajectory points is determined as the intermediate point.
4. The method according to claim 3, wherein, For each trajectory point in the target trajectory point sequence, excluding the starting point and the ending point, calculate the angle between the line segment formed by the starting point and the trajectory point and the line segment formed by the trajectory point and the ending point, including: Among the plurality of trajectory points, a first preset number of trajectory points are filtered out according to the direction from the starting point to the ending point, with the starting point as the base point; and / or, a second preset number of trajectory points are filtered out according to the direction from the ending point to the starting point, with the ending point as the base point. For each trajectory point in the target trajectory point sequence after filtering out a first preset number of trajectory points and / or a second preset number of trajectory points, calculate the angle between the line segment formed by the starting point and the line segment formed by the trajectory point and the ending point.
5. The method according to claim 1, wherein, Determining the vehicle steering angle based on the vehicle's current driving direction and the vehicle's target driving direction includes: Using the vehicle's current direction of travel as the north direction line, calculate the azimuth angle between the vehicle's current direction of travel and the vehicle's target direction of travel, and determine the vehicle's steering angle based on the azimuth angle.
6. The method according to claim 1, wherein, Determining the vehicle steering angle based on the vehicle's current driving direction and the vehicle's target driving direction includes: Calculate the directional angle between the vehicle's current driving direction and the vehicle's target driving direction, and determine the vehicle's steering angle based on the directional angle.
7. The method according to any one of claims 1-6, wherein, The method further includes: Based on the conversion relationship between the vehicle steering angle and the vehicle steering action, a navigation action is generated to indicate the vehicle steering action.
8. The method according to any one of claims 1-6, wherein, The method further includes: Based on the angle difference between the vehicle's steering angle and the pre-acquired road network steering angle, a navigation action is determined to instruct the vehicle to turn.
9. The method according to claim 8, wherein, Based on the angle difference between the vehicle steering angle and the pre-acquired road network steering angle, a navigation action to instruct the vehicle steering action is determined, including: Obtain the angle difference between the vehicle steering angle and the pre-acquired road network steering angle; If the angle difference is greater than the preset angle, then a navigation action to indicate the vehicle's steering action is generated based on the conversion relationship between the vehicle steering angle and the vehicle steering action. If the angle difference is less than or equal to the preset angle, then a navigation action instructing the vehicle to turn is generated based on the conversion relationship between the road network turning angle and the vehicle turning action.
10. A navigation method, comprising: Plan navigation routes based on the origin and destination; Based on pre-generated navigation actions, determine the navigation action data corresponding to the navigation route, and pre-generate the navigation actions based on the method described in any one of claims 1-9.
11. A computer storage medium having a computer program stored thereon, which, when executed by a processor, implements the method as described in any one of claims 1-10.
Citation Information
Patent Citations
Vehicle control device and control method
CN114248797A
Method and apparatus for controlling cruise of vehicle, electronic device, and storage medium
US20210291833A1