Vehicle driving path optimization method and device, electronic equipment and storage medium

By matching and optimizing historical vehicle driving paths and road boundary point data, an optimized driving path is generated, which solves the safety problems of autonomous driving caused by abnormal memory paths and realizes safe and reasonable automatic cruise.

CN116576874BActive Publication Date: 2026-06-23CHONGQING CHANGAN AUTOMOBILE CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
CHONGQING CHANGAN AUTOMOBILE CO LTD
Filing Date
2023-04-28
Publication Date
2026-06-23

AI Technical Summary

Technical Problem

In existing memory-based driving technologies, abnormal driving during the mapping phase can lead to abnormal memory paths, resulting in low safety during the automatic cruise phase and affecting the safety of passengers.

Method used

By acquiring historical driving path data and road boundary point data of vehicles, matching and segmenting are performed to determine the location of the target side boundary point of the road, calculating the distance from the path point to the boundary, and performing translation optimization when necessary to generate an optimized driving path.

Benefits of technology

Abnormal historical driving paths were corrected to ensure the safety of autonomous driving during the automatic cruise phase and to improve the driver's experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116576874B_ABST
    Figure CN116576874B_ABST
Patent Text Reader

Abstract

The application provides a vehicle driving path optimization method and device, electronic equipment and storage medium, the vehicle driving path optimization method comprises the following steps: obtaining a plurality of path point positions and a plurality of road boundary point positions of a vehicle, dividing all road boundary point positions to obtain a plurality of road target side boundary point positions, matching each path point position with all road target side boundary point positions to determine the historical boundary distance of the path point position matched successfully to the road target side boundary, if the historical boundary distance does not meet the standard boundary parameter, translating the path point position matched successfully until the historical boundary distance corresponding to each path point position matched successfully meets the standard boundary parameter, and generating an optimized driving path of the vehicle based on the current path point; the abnormal historical driving path can be corrected, so that the vehicle can be safely and reasonably automatically driven, the safety of automatic driving is improved, and the experience of the driver is met.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of vehicle route optimization technology, specifically to a vehicle route optimization method, device, electronic device, and storage medium. Background Technology

[0002] Memory-based driving is an autonomous driving function that consists of two phases: learning and mapping, and automatic cruise control. In the learning and mapping phase, the driver manually drives the vehicle. After activating the learning and mapping function, the vehicle begins normal driving, and the memory-based driving algorithm records the vehicle's trajectory, environmental information collected by sensors, and other data, ultimately constructing a memory path and semantic map. In the automatic cruise control phase, the vehicle achieves autonomous driving based on the memory path and location information.

[0003] Current memory-based driving systems primarily rely on memory paths generated from the vehicle's trajectory during the learning and mapping phase. This places specific demands on the driver's manual driving path during the mapping phase. If the driver engages in abnormal driving during the mapping phase, such as driving in the left lane or crossing the lines, the resulting abnormal memory path will be followed by the autonomous vehicle during subsequent automatic cruise phases. This compromises the safety of autonomous driving and could endanger the lives of passengers. Summary of the Invention

[0004] In view of the shortcomings of the prior art described above, this application provides a vehicle driving path optimization method, apparatus, device and medium to solve the technical problem that the existing memory driving technology cannot safely and reasonably carry out automatic cruise driving when abnormal memory paths occur.

[0005] This application provides a vehicle driving path optimization method, which includes: acquiring historical driving path data and historical road data of the vehicle, wherein the historical driving path data includes path point positions of multiple path points, and the historical road data includes road boundary point positions of multiple road boundary points; matching each road boundary point position with all path point positions, determining relative position parameters based on the successfully matched road boundary point positions and path point positions, wherein the relative position parameters characterize the positional relationship between the successfully matched road boundary point positions and path point positions; and dividing all road boundary point positions according to the relative position parameters corresponding to each road boundary point position to obtain multiple road target side boundary points. Location; For each path point location, match it with all road target side boundary point locations. Based on the successfully matched path point locations and road target side boundary point locations, determine the distance from the successfully matched path point location to the road target side boundary as the historical boundary distance. The road target side boundary is obtained based on the successfully matched road target side boundary point locations. If the historical boundary distance does not meet the standard boundary parameters, determine the translation parameters based on the historical boundary distance and the standard boundary parameters. Translate the successfully matched path point locations based on the translation parameters until the historical boundary distance corresponding to each successfully matched path point location meets the standard boundary parameters. Generate the optimized driving path for the vehicle based on the current path point.

[0006] In one embodiment of this application, the positions of all road boundary points are divided according to the relative position parameters corresponding to each road boundary point position, including: if the relative position parameter is less than a preset parameter, the road boundary point position corresponding to the relative position parameter is taken as the non-target side boundary point position of the road, resulting in multiple non-target side boundary points; if the relative position parameter is greater than the preset parameter, the road boundary point position corresponding to the relative position parameter is taken as the target side boundary point position of the road, resulting in multiple target side boundary point positions.

[0007] In one embodiment of this application, before matching each path point position with all road target side boundary point positions, the vehicle driving path optimization method includes: calculating the curvature of each path point position on a historical driving path; calculating curvature change values ​​based on the curvature of adjacent path point positions to obtain multiple curvature change values ​​to determine the curvature change extreme value, wherein the historical driving path is obtained based on all path point positions; filtering all path point positions based on a preset range and the path point positions corresponding to the curvature change extreme values ​​to obtain multiple straight-road path point positions; matching all road target side boundary point positions based on each straight-road path point position, and using the successfully matched road target side boundary point positions as straight-road target side boundary point positions to obtain multiple straight-road target side boundary point positions; matching all non-target side boundary point positions based on each straight-road path point position, and using the successfully matched road non-target side boundary point positions as straight-road non-target side boundary point positions to obtain multiple straight-road non-target side boundary point positions.

[0008] In one embodiment of this application, before matching each path point position with all road target side boundary point positions, the vehicle driving path optimization method further includes: calculating the curvature of each path point position on the historical driving path; calculating curvature change values ​​based on the curvature of adjacent path point positions to obtain multiple curvature change values ​​to determine the curvature change extreme value, wherein the historical driving path is obtained based on all path point positions; filtering all path point positions based on a preset range and the path point positions corresponding to the curvature change extreme values ​​to obtain multiple initial straight-line path point positions; matching all road target side boundary point positions based on each initial straight-line path point position, and using the successfully matched road target side boundary point positions as initial straight-line target side boundary point positions to obtain multiple initial straight-line target side boundary point positions; and optimizing the multiple initial straight-line target side boundary points... Positions are fitted to obtain an initial straight target side boundary line. Based on the position of each road target side boundary point and the initial straight target side boundary line, the vertical distance from each road target side boundary point to the initial straight target side boundary line is determined. If the vertical distance is less than a preset threshold, the road target side boundary point position corresponding to the vertical distance is used as the straight target side boundary point position, resulting in multiple straight target side boundary point positions. Based on each straight target side boundary point position, all path point positions are matched, and the successfully matched path point positions are used as straight path point positions, resulting in multiple straight path point positions. Based on each straight path point position, all non-target side boundary point positions are matched, and the successfully matched non-target side boundary point positions are used as straight non-target side boundary point positions, resulting in multiple straight non-target side boundary point positions.

[0009] In one embodiment of this application, if the historical boundary distance does not meet the standard boundary parameters, before determining the translation parameters based on the historical boundary distance and the standard boundary parameters, the vehicle driving path optimization method includes: obtaining the vehicle width; fitting multiple straight road non-target side boundary point positions to obtain straight road non-target side boundary lines, and fitting multiple straight road target side boundary point positions to obtain straight road target side boundary lines; determining the road width based on the straight road non-target side boundary lines and the straight road target side boundary lines; and determining the standard boundary parameters based on the vehicle width and the road width.

[0010] In one embodiment of this application, determining relative position parameters based on successfully matched road boundary point positions and path point positions includes: determining a reference point position based on the successfully matched path point position; calculating the position difference between the successfully matched road boundary point position and the path point position, and calculating the inclination angle of the straight line to which the reference point position and the successfully matched path point position belong; and determining the relative position parameters based on the inclination angle and the position difference.

[0011] In one embodiment of this application, the expression for the position difference (Δx, Δy) is:

[0012] (Δx,Δy)=(x m -x n1 ,y m -y n1 )

[0013] Among them, (x m ,y m (x) represents the location of the successfully matched road boundary point. n1 ,y n1 ) represents the location of the successfully matched path point;

[0014] The expression for the tilt angle θ is:

[0015]

[0016] Among them, (x n1 ,y n1 (x) represents the location of the successfully matched path point. n2 ,y n2 () represents the location of the reference point;

[0017] The expression for the relative position parameter Q is:

[0018] Q = sinθ*Δx - cosθ*Δy

[0019] Where θ is the tilt angle and (Δx, Δy) is the position difference.

[0020] In one embodiment of this application, a vehicle driving path optimization device is also provided. The vehicle driving path optimization device includes: an acquisition module, configured to acquire historical driving path data and historical driving road data of a vehicle, wherein the historical driving path data includes path point positions of multiple path points, and the historical driving road data includes road boundary point positions of multiple road boundary points; a division module, configured to match each road boundary point position with all path point positions, determine relative position parameters based on the successfully matched road boundary point positions and path point positions, wherein the relative position parameters characterize the positional relationship between the successfully matched road boundary point positions and path point positions; and divide all road boundary point positions according to the relative position parameters corresponding to each road boundary point to obtain multiple road target sides. A boundary point location determination module is used to match each path point location with all road target side boundary point locations. Based on the successfully matched path point locations and road target side boundary point locations, the distance from the successfully matched path point location to the road target side boundary is determined as the historical boundary distance. The road target side boundary is obtained based on the successfully matched road target side boundary point locations. An optimization module is used to determine translation parameters based on the historical boundary parameters and the standard boundary distance if the historical boundary distance does not meet the standard boundary parameters. The successfully matched path point locations are then translated based on the translation parameters until the historical boundary distance corresponding to each successfully matched path point location is equal to the standard boundary parameters. An optimized driving path for the vehicle is generated based on the current path points.

[0021] In one embodiment of this application, an electronic device is also provided, the electronic device comprising: one or more processors; and a storage device for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the electronic device enables the vehicle driving path optimization method as described above.

[0022] In one embodiment of this application, a computer-readable storage medium is also provided, on which a computer program is stored, which, when executed by a computer's processor, causes the computer to perform the vehicle driving path optimization method as described above.

[0023] The beneficial effects of the present invention are as follows: The present invention provides a vehicle driving path optimization method, device, equipment and medium. The vehicle driving path optimization method divides the road boundary point positions to obtain the road target side boundary point positions, and determines the distance from each path point position to the road target side boundary based on the path point positions and the road target side boundary point positions, so as to optimize the vehicle's historical driving path. It can correct abnormal historical driving paths, so that the vehicle can safely and reasonably carry out autonomous driving during the automatic cruise phase, which not only improves the safety of autonomous driving, but also satisfies the driver's experience.

[0024] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and do not limit this application. Attached Figure Description

[0025] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application. It is obvious that the drawings described below are merely some embodiments of this application, and those skilled in the art can obtain other drawings based on these drawings without any inventive effort. In the drawings:

[0026] Figure 1 This is a schematic diagram illustrating the implementation environment of a vehicle driving path optimization method, as shown in an exemplary embodiment of this application.

[0027] Figure 2 This is a flowchart illustrating a vehicle driving path optimization method as shown in an exemplary embodiment of this application;

[0028] Figure 3 This is a system architecture diagram illustrating vehicle driving path optimization in a parking scenario, as shown in a specific embodiment of this application;

[0029] Figure 4 This is a simplified flowchart illustrating vehicle path optimization in a parking scenario, as shown in a specific embodiment of this application.

[0030] Figure 5 This is a block diagram illustrating a vehicle driving path optimization device according to an exemplary embodiment of this application;

[0031] Figure 6 A schematic diagram of the structure of a computer system suitable for implementing the electronic device of the present application is shown. Detailed Implementation

[0032] The embodiments of this application will be described below with reference to the accompanying drawings and preferred embodiments. Those skilled in the art can easily understand other advantages and effects of this application from the content disclosed in this specification. This application can also be implemented or applied through other different specific embodiments, and various details in this specification can also be modified or changed based on different viewpoints and applications without departing from the spirit of this application. It should be understood that the preferred embodiments are only for illustrating this application and are not intended to limit the scope of protection of this application.

[0033] It should be noted that the illustrations provided in the following embodiments are only schematic representations of the basic concept of this application. Therefore, the drawings only show the components related to this application and are not drawn according to the actual number, shape and size of the components in the actual implementation. In the actual implementation, the form, quantity and proportion of each component can be arbitrarily changed, and the layout of the components may also be more complex.

[0034] It should be noted that in this application, terms such as "first" and "second" are merely for distinguishing similar objects, and do not limit the order or sequence of similar objects. The variations of "including" and "having" indicate that the scope covered by the subject of the word is not exclusive, except for the examples shown by the word.

[0035] It is understood that the various numerical designations, step numbers, and other identifiers recorded in this application are for descriptive convenience and are not intended to limit the scope of this application. The size of the identifiers in this application does not imply the order of execution; the execution order of each process should be determined by its function and internal logic.

[0036] In the following description, numerous details are explored to provide a more thorough explanation of embodiments of the present application. However, it will be apparent to those skilled in the art that embodiments of the present application may be practiced without these specific details. In other embodiments, well-known structures and devices are shown in block diagram form rather than in detail to avoid obscuring embodiments of the present application.

[0037] The embodiments of this application respectively propose a vehicle driving route optimization method, a vehicle driving route optimization device, an electronic device, a computer-readable storage medium, and a computer program product, which will be described in detail below.

[0038] Please see Figure 1 , Figure 1 This is a schematic diagram illustrating the implementation environment of a vehicle driving path optimization method, as shown in an exemplary embodiment of this application.

[0039] like Figure 1As shown, the implementation environment may include an autonomous vehicle 110 and a computer device 120. The computer device 120 can be at least one of a microcomputer, embedded computer, neural network computer, etc. The computer device 120 can be configured within the autonomous vehicle 110, or it can be a standalone computer device; no limitation is made here. The autonomous vehicle 110 serves as an example of a vehicle. During the driver's manual driving phase, the autonomous vehicle 110 collects vehicle trajectory information and road environment information through sensors, constructs historical driving path data and historical driving road data, and provides this data to the computer device 120 for processing. The computer device 120 optimizes the vehicle's driving path based on the historical driving path data and historical driving road data.

[0040] Schematic illustration: Computer device 120 acquires historical driving path data and historical driving road data of the vehicle. The historical driving path data includes the locations of multiple path points, and the historical driving road data includes the locations of multiple road boundary points. Each road boundary point location is matched with all path point locations. Based on the successfully matched road boundary point locations and path point locations, relative position parameters are determined. These relative position parameters characterize the positional relationship between the successfully matched road boundary point locations and path point locations. Based on the relative position parameters corresponding to each road boundary point location, all road boundary point locations are divided to obtain multiple target side boundary point locations for each road. For each path point location, it is matched with all road target side boundary point locations. Based on the successfully matched path point locations and road target side boundary point locations, the distance from the successfully matched path point location to the road target side boundary is determined as the historical boundary distance. The road target side boundary is obtained based on the successfully matched road target side boundary point locations. If the historical boundary distance does not meet the standard boundary parameters, translation parameters are determined based on the historical boundary distance and the standard boundary parameters. The successfully matched path point locations are translated based on the translation parameters until the historical boundary distance corresponding to each successfully matched path point location meets the standard boundary parameters. An optimized driving path for the vehicle is then generated based on the current path points. Therefore, the technical solution of this application, by dividing the road boundary point locations to obtain the road target side boundary point locations, and determining the distance from each path point location to the road target side boundary based on the path point locations and the road target side boundary point locations, optimizes the vehicle's historical driving path. This corrects abnormal historical driving paths, enabling the vehicle to safely and reasonably perform autonomous driving during the automatic cruise phase, improving both the safety of autonomous driving and the driver's experience.

[0041] It should be noted that the technical solutions of this application embodiment can be applied to driving scenarios with fixed routes, such as automatic parking and fixed driving routes for commuting.

[0042] Please see Figure 2 , Figure 2 This is a flowchart illustrating a vehicle driving path optimization method as shown in an exemplary embodiment of this application. This method can be applied to... Figure 1 The implementation environment shown is specifically executed by computer device 120 within that implementation environment. It should be understood that this method can also be applied to other exemplary implementation environments and executed by devices in other implementation environments; this embodiment does not limit the implementation environment to which the method is applicable.

[0043] like Figure 2 As shown, in an exemplary embodiment, the vehicle travel path optimization method includes at least steps S210 to S250, which are described in detail below:

[0044] Step S210: Obtain the vehicle's historical driving route data and historical driving road data.

[0045] In one embodiment of this application, the historical driving path data includes the path point positions of multiple path points, and the historical driving road data includes the road boundary point positions of multiple road boundary points. The driver manually drives the vehicle and activates its learning mapping function, enabling the vehicle to build a map using image acquisition devices, radar, wheel speedometers, and other sensors during manual driving. During the learning mapping phase, two record files are generated: one is a memory path composed of multiple trajectory points of the vehicle, each trajectory point having horizontal and vertical coordinate information and heading attributes, and each trajectory point also has a corresponding timestamp; the other is a semantic point cloud file (historical driving road data), composed of multiple road boundary points, each road boundary point containing horizontal and vertical coordinate information, i.e., the road boundary point position. The trajectory points in the memory path undergo equal spacing and sorting preprocessing, specifically including: filtering multiple trajectory points at equal intervals to obtain multiple target trajectory points with consistent spacing between adjacent target trajectory points; sorting all target trajectory points according to their generation time and assigning a corresponding sequence number to each target trajectory point; using the target trajectory points as path points, and correspondingly using the horizontal and vertical coordinate information and heading attributes of the target trajectory points as path point positions, resulting in multiple path points and their path point positions; and forming historical driving path data based on the multiple path points and their path point positions.

[0046] It is understandable that the path point location of multiple path points refers to multiple path points and the path point location of each path point, while the road boundary point location of multiple road boundary points refers to multiple road boundary points and the road boundary point location of each road boundary point.

[0047] Step S220: Match the position of each road boundary point with the positions of all path points, and determine the relative position parameters based on the successfully matched road boundary point positions and path point positions.

[0048] In one embodiment of this application, in order to correct or optimize path points towards the road target side, it is necessary to determine which road boundary points belong to the road target side. Based on a road boundary point position being matched with all path point positions, the path point position closest to that road boundary point position is determined. This road boundary point position and the closest path point position are then used as the successfully matched road boundary point position and path point position. This process is repeated to obtain multiple sets of successfully matched road boundary point positions and path point positions. Relative position parameters are determined based on the successfully matched road boundary point positions and path point positions, resulting in multiple relative position parameters corresponding to each road boundary point. These relative position parameters characterize the positional relationship between the successfully matched road boundary point positions and path point positions, and are used to determine whether the corresponding road boundary point belongs to the road target side or the road non-target side. For example, the road target side is the right side of the road, and the road non-target side is the left side.

[0049] In addition, a correspondence between road boundary points and path points can be established, that is, a correspondence can be configured between the road boundary points corresponding to the successfully matched road boundary points and the path points corresponding to the successfully matched path points, wherein each path point corresponds to at least one road boundary point.

[0050] Furthermore, all road boundary points can be sorted. Since the path points have already been sorted and the correspondence between path points and road boundary points has been established, the sorting can be done according to the sequence number of the path points corresponding to the road boundary points, thus obtaining the order of the road boundary points. It should be understood that, since path points have corresponding path point positions and road boundary points have corresponding road boundary point positions, the correspondence between path points and road points can also be understood as the correspondence between the positions of path points and the positions of road boundary points.

[0051] In one embodiment of this application, determining relative position parameters based on the successfully matched road boundary point position and path point position includes: determining a reference point position based on the successfully matched path point position; calculating the position difference between the successfully matched road boundary point position and the path point position, and calculating the inclination angle of the straight line to which the reference point position and the successfully matched path point position belong; and determining the relative position parameters based on the inclination angle and the position difference.

[0052] In this embodiment, a historical driving path is generated based on all pathpoint locations, either in ascending or descending order of their generation time. The positive tangent direction of a successfully matched pathpoint within the historical driving path is determined based on its heading attribute. A point is selected along this positive tangent direction as a reference point; the distance between the reference point and the successfully matched pathpoint can be 1 meter or any other non-zero value. The positional difference between the successfully matched road boundary point and the pathpoint is calculated. The inclination angle of the straight line formed by the reference point and the successfully matched pathpoint is then calculated in the coordinate system. Finally, the relative position parameters corresponding to the successfully matched road boundary point are calculated based on the inclination angle and the positional difference.

[0053] In one embodiment of this application, the expression for the position difference (Δx, Δy) is:

[0054] (Δx,Δy)=(x m -x n1 ,y m -y n1 Equation (1),

[0055] Among them, (x m ,y m (x) represents the location of the successfully matched road boundary point. n1 ,y n1 ) represents the location of the successfully matched path point.

[0056] The expression for the tilt angle θ is:

[0057]

[0058] Among them, (x n1 ,y n1 (x) represents the location of the successfully matched path point. n2 ,y n2 ) represents the location of the reference point.

[0059] The expression for the relative position parameter Q is:

[0060] Q=sinθ*Δx-cosθ*Δy equation (3),

[0061] Where θ is the tilt angle and (Δx, Δy) is the position difference.

[0062] Step S230: Divide the positions of all road boundary points according to the relative position parameters corresponding to each road boundary point position to obtain multiple road target side boundary point positions.

[0063] In one embodiment of this application, each road boundary point is assigned to either side of the road, i.e., the target side or the non-target side, based on the relative position parameters corresponding to the locations of each road boundary point. This assignment can be based on whether the relative position parameters are positive. Road boundary points assigned to the target side are designated as target side boundary points, and their corresponding locations are designated as target side boundary point locations, resulting in multiple target side boundary point locations. Similarly, road boundary points assigned to the non-target side are designated as non-target side boundary points, and their corresponding locations are designated as non-target side boundary point locations, resulting in multiple non-target side boundary point locations.

[0064] It should be understood that since each road boundary point has its corresponding road boundary point position, the relative position parameter corresponding to the road boundary point position can also be understood as the relative position parameter corresponding to the road boundary point. Therefore, the division of road boundary points is the division of road boundary point positions.

[0065] In one embodiment of this application, the positions of all road boundary points are divided according to the relative position parameters corresponding to each road boundary point position, including: if the relative position parameter is less than a preset parameter, the road boundary point position corresponding to the relative position parameter is taken as the non-target side boundary point position of the road, resulting in multiple non-target side boundary points; if the relative position parameter is greater than the preset parameter, the road boundary point position corresponding to the relative position parameter is taken as the target side boundary point position of the road, resulting in multiple target side boundary point positions.

[0066] In this embodiment, the preset parameter can be 0. If the relative position parameter corresponding to a road boundary point is less than 0, the road boundary point is treated as a left-side boundary point and included in the left boundary semantic point set, i.e., non-target side boundary data. If the relative position parameter corresponding to a road boundary point is greater than 0, the road boundary point is treated as a right-side boundary point and included in the right boundary semantic point set, i.e., target side boundary data. This process is repeated for all road boundary points. After the division, the left boundary semantic point set includes multiple left-side boundary points and the left-side boundary point positions of each left-side boundary point, i.e., multiple non-target side boundary points and the non-target side boundary point positions of each non-target side boundary point. The right boundary semantic point set includes multiple right-side boundary points and the right-side boundary point positions of each right-side boundary point, i.e., multiple target side boundary points and the target side boundary point positions of each target side boundary point. If the relative position parameter is equal to 0, it indicates that the vehicle's trajectory has already crossed the boundary line during the learning and mapping process. In this case, the road boundary point corresponding to the relative position parameter is temporarily discarded.

[0067] Step S240: Match each path point position with all road target side boundary point positions. Based on the successfully matched path point positions and road target side boundary point positions, determine the distance from the successfully matched path point position to the road target side boundary as the historical boundary distance. The road target side boundary is obtained based on the successfully matched road target side boundary point positions.

[0068] In one embodiment of this application, the distance from each path point to the road target side boundary, i.e., the historical boundary distance, is calculated to determine whether the corresponding path point needs correction. For each path point location, at least two nearest road target side boundary point locations are matched. The successfully matched path point location and road target side boundary point locations are the path point location and the locations of the at least two nearest road target side boundary points to the path point location. Data fitting is performed based on the at least two nearest road target side boundary point locations of a path point location to obtain a fitted curve of the road target side boundary near that path point. The perpendicular distance from the path point to the curve is calculated based on the path point location and the fitted curve, and is used as the historical boundary distance. This process is repeated to calculate the historical boundary distance for each path point. Since two points determine a straight line and three points determine a curve, the three nearest road target side boundary point locations can be matched for each path point location, resulting in higher accuracy of the calculated historical boundary distance.

[0069] It should be understood that since each path point has its corresponding path point location, the historical boundary distance corresponding to the path point location can also be understood as the historical boundary distance corresponding to the path point.

[0070] In another embodiment of this application, the road target side boundary point position corresponding to each path point can be found based on the correspondence between path points and road boundary points. This path point position is named position A, and the road target side boundary point position corresponding to position A is named position B1. At least one road target side boundary point position near position B1 is selected according to the order of the road boundary points. Taking the selection of two road target side boundary point positions before and after position B1 as an example, these two positions are named positions B0 and B2, respectively. Data fitting is performed based on positions B0, B1, and B2 to obtain a fitted curve of the road target side boundary near position A. The vertical distance from position A to this fitted curve is calculated and used as the historical boundary distance corresponding to position A. This process is repeated to obtain the historical boundary distance corresponding to each path point.

[0071] In one embodiment of this application, before matching each path point position with all road target side boundary point positions, the vehicle driving path optimization method includes: calculating the curvature of each path point position on the historical driving path; calculating curvature change values ​​based on the curvature of adjacent path point positions to obtain multiple curvature change values ​​to determine the curvature change extreme values; the historical driving path is obtained based on all path point positions; filtering all path point positions based on a preset range and the path point positions corresponding to the curvature change extreme values ​​to obtain multiple straight-road path point positions; matching all road target side boundary point positions based on each straight-road path point position, and using the successfully matched road target side boundary point positions as straight-road target side boundary point positions to obtain multiple straight-road target side boundary point positions; matching all non-target side boundary point positions based on each straight-road path point position, and using the successfully matched road non-target side boundary point positions as straight-road non-target side boundary point positions to obtain multiple straight-road non-target side boundary point positions.

[0072] In this embodiment, the straight sections of the historical driving path can be found, and then the corresponding straight sections of the road can be found based on these straight sections. All path point positions are fitted, and the resulting fitted curve is used as the historical driving path. The curvature at each path point position on the historical driving path is calculated, resulting in multiple curvature values. Curvature change values ​​are calculated based on the curvature of adjacent path point positions, resulting in multiple curvature change values. The extreme values ​​of curvature change, including the maximum and minimum curvature change values, are selected from these multiple curvature change values. The path point corresponding to the maximum curvature change is moved along the historical driving path to the path point corresponding to the minimum curvature change, forming the initial curve region of the historical driving path. Based on a preset range, the initial curve region is extended forward and backward along the historical driving path to obtain the curve region of the historical driving path. Removing the curve region of the historical driving path yields the straight sections of the historical driving path. The path points within the straight sections are used as straight path points, resulting in multiple straight path points and the position of each straight path point.

[0073] There are several methods for selecting the target side boundary point or non-target side boundary point location for a straight road. Illustratively, for each straight road path point location, match it with the nearest target side boundary point location. The successfully matched target side boundary point location is the nearest target side boundary point location for that straight road path point location, and this is used as the straight road target side boundary point location, thus obtaining multiple straight road target side boundary point locations. Similarly, for each straight road path point location, match it with the nearest non-target side boundary point location, and this is used as the straight road non-target side boundary point location, resulting in multiple straight road non-target side boundary point locations.

[0074] Furthermore, based on the correspondence between path points and road boundary points, the road target side boundary point corresponding to each straight path point can be matched in the road target side boundary data as the straight road target side boundary point, resulting in multiple straight road target side boundary points and the location of the straight road target side boundary point for each straight road target side boundary point. For example, if the straight path points in straight road region 1 are path points 1-30, since the correspondence between road boundary points and path points has been established, the road target side boundary points corresponding to path points 1-30 in the road target side boundary data can be directly queried. Similarly, based on the correspondence between path points and road boundary points, the road non-target side boundary point corresponding to each straight path point can be matched in the road non-target side boundary data as the straight road non-target side boundary point, resulting in multiple straight road non-target side boundary points and the location of the straight road non-target side boundary point for each straight road non-target side boundary point.

[0075] In another embodiment of this application, before matching each path point position with all road target side boundary point positions, the vehicle driving path optimization method further includes: calculating the curvature of each path point position on the historical driving path; calculating curvature change values ​​based on the curvature of adjacent path point positions to obtain multiple curvature change values ​​to determine the curvature change extreme values; the historical driving path is obtained based on all path point positions; filtering all path point positions based on a preset range and the path point positions corresponding to the curvature change extreme values ​​to obtain multiple initial straight-line path point positions; matching all road target side boundary point positions based on each initial straight-line path point position; using the successfully matched road target side boundary point positions as initial straight-line target side boundary point positions to obtain multiple initial straight-line target side boundary point positions; and performing multiple initial straight-line target side boundary point optimizations on the road target side boundary point positions. The boundary point positions are fitted to obtain the initial straight target side boundary line. Based on the target side boundary point position of each road and the initial straight target side boundary line, the vertical distance from each target side boundary point position to the initial straight target side boundary line is determined. If the vertical distance is less than a preset threshold, the target side boundary point position of the road corresponding to the vertical distance is used as the straight target side boundary point position, resulting in multiple straight target side boundary point positions. Based on each straight target side boundary point position, all path point positions are matched, and the successfully matched path point positions are used as straight path point positions, resulting in multiple straight path point positions. Based on each straight path point position, all non-target side boundary point positions are matched, and the successfully matched non-target side boundary point positions are used as straight non-target side boundary point positions, resulting in multiple straight non-target side boundary point positions.

[0076] It should be noted that the curved areas of the historical driving route do not necessarily mean that the corresponding road is curved. Drivers may also drive the same curved historical driving route on a straight road.

[0077] In this embodiment, after obtaining the curved areas of the historical driving path according to the process in the previous embodiment, the curved areas are filtered out to form the initial straight areas of the historical driving path. The path points in the initial straight areas are used as initial straight path points, resulting in multiple initial straight path points and the initial straight path point position for each initial straight path point. For each initial straight path point position, the nearest road target side boundary point is matched. The successfully matched road target side boundary point position is the nearest road target side boundary point position for that initial straight path point position, and is used as the initial straight target side boundary point position, thus obtaining multiple initial straight target side boundary point positions. Alternatively, based on the correspondence between path points and road boundary points, the road target side boundary point corresponding to each initial straight path point can be matched in the road target side boundary data, and used as the initial straight target side boundary point, resulting in multiple initial straight target side boundary points and the initial straight target side boundary point position for each initial straight target side boundary point.

[0078] Data fitting is performed on multiple initial straight-road target side boundary point positions to obtain a fitted curve, which serves as the initial straight-road right side boundary line. Depending on specific needs, a first-order polynomial or a second-order polynomial can be fitted; for example, a first-order polynomial is used in this embodiment. The vertical distance from each road target side boundary point position to the initial straight-road target side boundary line is calculated, and this vertical distance is compared with a preset threshold to re-filter the road target side boundary point positions. Road target side boundary point positions with a vertical distance greater than or equal to the preset threshold are used as curve target side boundary point positions, and road target side boundary point positions with a vertical distance less than the preset threshold are used as straight-road target side boundary point positions, resulting in multiple straight-road target side boundary point positions.

[0079] For each straight-line target side boundary point location, match the nearest path point location to that straight-line target side boundary point location. The successfully matched path point location, i.e., the path point closest to that straight-line target side boundary point location, is used as the straight-line path point location, resulting in multiple straight-line path point locations. Alternatively, based on the correspondence between path points and road boundary points, match the path point corresponding to each straight-line target side boundary point location as the straight-line path point location, resulting in multiple straight-line path point locations.

[0080] For each straight path point location, match the location of the nearest non-target road side boundary point. The successfully matched non-target road side boundary point is the nearest non-target road side boundary point for that straight path point location, and this is used as the straight non-target road side boundary point location. This process yields multiple straight non-target road side boundary point locations. Alternatively, based on the correspondence between path points and road boundary points, match the corresponding non-target road side boundary point for each straight path point in the non-target road side boundary data, and use this as the straight non-target road side boundary point, resulting in multiple straight non-target road side boundary points and the straight non-target road side boundary point location for each straight non-target road side boundary point.

[0081] The technical solution of this embodiment solves the problem of missing some target side boundary points and some path points of straight roads due to the presence of curved historical driving paths on straight roads. The final result is also more complete in terms of the target side boundary points and path points of straight roads.

[0082] Step S250: If the historical boundary distance does not meet the standard boundary parameters, determine the translation parameters based on the historical boundary distance and the standard boundary parameters, and translate the successfully matched path point positions based on the translation parameters until the historical boundary distance corresponding to each successfully matched path point position meets the standard boundary parameters, and generate the vehicle's optimized driving path based on the current path point.

[0083] In one embodiment of this application, a standard boundary parameter is compared with the historical boundary distance corresponding to each path point. If the historical boundary distance meets the standard boundary parameter, no translation is required for the path point position corresponding to that historical boundary distance. If the historical boundary distance does not meet the standard boundary parameter, a translation parameter is calculated based on the historical boundary distance and the standard boundary parameter. The translation parameter includes the movement distance and the movement direction. The path point position corresponding to the historical boundary distance is then translated based on the translation parameter. This process continues until the historical boundary distance corresponding to each path point position meets the standard boundary parameter. An optimized driving path for the vehicle is then generated based on the current path point. The current path point includes the translated path point and the path point whose historical boundary distance meets the standard boundary parameter but has not been translated. The standard boundary parameter can be preset, such as 20cm or 20cm ± 1cm.

[0084] In one specific embodiment of this application, if the historical boundary distance corresponding to a path point is 12cm, then the moving distance is 8cm. The perpendicular direction from the path point to the fitted curve is determined. It can be preset that the path point is closer to the fitted curve along the perpendicular direction as the positive direction of the perpendicular, and farther away from the fitted curve along the perpendicular direction as the negative direction of the perpendicular. Then the moving direction of the path point is the negative direction of the perpendicular, so that the position of the path point is translated 8cm in the negative direction of the perpendicular.

[0085] It can also collect perception information in real time, including at least one of lane line information and static obstacle boundary coordinate information. If perception information is collected, although the historical boundary distance corresponding to the current path point meets the standard boundary parameters, there may still be situations where the path point crosses the line or collides. To avoid crossing the line or colliding, the path point needs to be corrected and adjusted (secondary translation) based on the perception information. If no perception information is collected, no correction is performed. After completing the above steps, an optimized driving path is generated based on the current path point.

[0086] In addition, common optimization methods such as quadratic programming can be used to smoothly optimize the driving path.

[0087] In one embodiment of this application, if the historical boundary distance does not meet the standard boundary parameters, before determining the translation parameters based on the historical boundary distance and the standard boundary parameters, the vehicle driving path optimization method includes: obtaining the vehicle width; fitting multiple straight road non-target side boundary point positions to obtain straight road non-target side boundary lines, and fitting multiple straight road target side boundary point positions to obtain straight road target side boundary lines; determining the road width based on the straight road non-target side boundary lines and the straight road target side boundary lines; and determining the standard boundary parameters based on the vehicle width and the road width.

[0088] In this embodiment, the standard boundary parameters can also be calculated based on the lane width and vehicle width. The road boundary point positions on both sides of the straight section (i.e., multiple non-target side boundary point positions and multiple target side boundary point positions) are fitted to obtain the fitted curves on both sides of the straight section, i.e., the non-target side boundary line and the target side boundary line. The average distance between the non-target side boundary line and the target side boundary line is calculated and used as the road width of the straight section. The vehicle width is then obtained. Based on the road width and the vehicle width, the optimal distance between the vehicle and the target side boundary can be calculated. This optimal distance can be used as the standard boundary parameter, and the standard boundary parameter can be obtained by combining this optimal distance with a preset tolerance range.

[0089] In another embodiment of this application, the perpendicular distance from each straight-path point to the target side boundary line is calculated based on the location of each straight-path point and the target side boundary line of the straight-path. This distance is used as the historical boundary distance corresponding to each straight-path point. If the historical boundary distance does not meet the standard boundary parameters, a translation parameter is determined based on the historical boundary distance and the standard boundary parameters. The straight-path point corresponding to the historical boundary distance is then translated based on the translation parameter until the historical boundary distance corresponding to each straight-path point meets the standard boundary parameters. An optimized straight-path driving path for the vehicle is then generated based on the current straight-path points. The current straight-path points include the translated straight-path points and the straight-path points whose historical boundary distances meet the standard boundary parameters but have not been translated. The method for determining the translation parameters is described in detail in the preceding embodiments and will not be repeated here.

[0090] In another embodiment of this application, sensing information can be collected in real time. If sensing information is collected, the straight-line path points are corrected and adjusted (secondary translation) based on the sensing information; if no sensing information is collected, no correction is performed. After completing the above steps, an optimized straight-line driving path is generated based on the current straight-line path points. Furthermore, common optimization methods such as quadratic programming can be used to smoothly optimize the straight-line driving path.

[0091] The technical solution of this application can be applied to the memory path optimization stage of memory parking. By using the semantic point cloud information of recorded lane boundary points and the real-time perceived lane line information and free space information, the historical driving path formed by the vehicle's driving trajectory is corrected. The general process is as follows:

[0092] By associating road boundary points in the semantic point cloud with path points on the memory path (historical driving path), and calculating the perpendicular distance (relative position parameter) from the road boundary points to the memory path (which can be greater than or less than 0), the point cloud (road boundary points) can be sorted and the left and right boundaries of roads can be distinguished. Based on the path relationships matched by the semantic point cloud (the correspondence between path points and road boundary points), the resulting point cloud is sorted according to the order of the path points.

[0093] Calculate the curvature of each path point on the memory path, determine the curved areas of the memory path based on the curvature, and finally obtain the non-curved areas, i.e., the straight areas. The obtained straight areas may be discontinuous intervals, and subsequent calculations can be performed on each straight area individually.

[0094] Based on the straight-line region of the memory path and the path relationship of the semantic point cloud matching, the semantic point cloud set corresponding to the straight-line region of the memory path is determined. A first-order polynomial curve is fitted based on the semantic point cloud set, and the distance between the point cloud on the same side and the fitted first-order polynomial curve is calculated. Point clouds with a distance less than a preset threshold are re-incorporated into the semantic point cloud set of the current straight-line region as the current semantic point cloud set of the straight-line region.

[0095] Based on the newly formed semantic point cloud set of the current straight road region and the path relationship matched by the semantic point cloud, the memory path region corresponding to the semantic point cloud set of the current straight road region is updated as the current straight road region of the memory path. Then, based on the semantic point cloud set of the previous straight road region, a first-order polynomial is fitted to form the road boundary (the semantic point cloud set of the previous straight road region is divided into left and right sides, so the road boundary at this time is also divided into left and right sides).

[0096] Based on the vehicle width and the formed road boundary, the optimal distance between the path points and the right boundary is generated, and the path points in the current straight section are translated according to the optimal distance. If lane lines and Freescape output are present, the road boundary can be corrected based on the output results; otherwise, no correction is made.

[0097] The path smoothing algorithm used smooths the memory path, ultimately generating an optimized memory path.

[0098] Please see Figure 3 , Figure 3 This is a system architecture diagram illustrating vehicle path optimization in a parking scenario, as shown in a specific embodiment of this application. Figure 3As shown, the system architecture for vehicle path optimization in this parking scenario includes a vehicle trajectory module, a path preprocessing module, a semantic map module, a lane line perception module, a freespace perception module, a path correction module, a path optimization module, and a planning and control module. The vehicle trajectory module records the vehicle's lateral and longitudinal coordinates and heading information (x, y, h) collected chronologically during the manual driving learning and mapping phase, forming a data set and storing it to create the original memory path. The path preprocessing module processes and sorts the original memory path at equal intervals and inputs the preprocessed memory path as historical driving path data into the path correction module. The semantic map module records the lateral and longitudinal coordinates (x, y) of road boundary points identified by sensors during the manual driving learning and mapping phase; the point cloud of road boundary points in the semantic map is arranged randomly. The lane line perception module uses sensors to perceive lane line information in real time during the cruise parking phase. The freespace perception module uses sensors to perceive static obstacle information, such as walls and pillars, in real time during the cruise parking phase. The path correction module receives the horizontal and vertical coordinates of road boundary points (historical driving road data) stored in the semantic map module, the real-time perceived lane line information from the lane line perception module, and the real-time perceived horizontal and vertical coordinates of static obstacle boundaries from the Freespace perception module. It then translates the current path point to obtain a corrected, memorized path. The path optimization module smooths the corrected, memorized path input from the path correction module to obtain an optimized, memorized path, ensuring that the final path better conforms to vehicle kinematics requirements. The planning and control module performs local path planning and following control based on the optimized, memorized path from the path optimization module, ensuring the vehicle can perform normal autonomous driving cruise.

[0099] Please see Figure 4 , Figure 4 This is a simplified flowchart illustrating vehicle path optimization in a parking scenario, as shown in a specific embodiment of this application. Figure 4 As shown, the process for optimizing vehicle driving paths in parking scenarios is as follows:

[0100] (1) The original memory paths are processed with equal intervals and sorted according to the order of their generation time. Each memory path point is assigned a corresponding serial number.

[0101] (2) Establish the correspondence between road boundary points and path points in the semantic map, that is, match the nearest path point to each road boundary point in the semantic map.

[0102] (3) Sort all road boundary points in the semantic map. Since the path points have already been sorted and the correspondence between the path points and the road boundary points in the semantic map has been established, the sorting can be done according to the path point number corresponding to the road boundary points in the semantic map, so as to obtain the order relationship of the road boundary points in the semantic map.

[0103] (4) Calculate the perpendicular distance (relative position parameter) from each road boundary point in the semantic map to the memory path.

[0104] (5) Determine if the perpendicular distance is less than 0. If the perpendicular distance is less than 0, the corresponding road boundary point is assigned to the left boundary semantic point cloud. If the perpendicular distance is greater than 0, the corresponding road boundary point is assigned to the right boundary semantic point cloud. In principle, it should not be equal to 0. If it is equal to 0, it means that the vehicle's trajectory has crossed the boundary line during the learning and mapping process. At this time, this part of the semantic road boundary point cloud information (road boundary points) is temporarily discarded.

[0105] (6) Locate the straight sections of the memory path based on the curvature. The specific steps are as follows:

[0106] 1) Calculate the curvature at the path points;

[0107] 2) Based on the curvature changes of two adjacent memory path points (path points), calculate the extreme points of curvature change of the entire memory path, and extend the extreme points along the memory path by a fixed preset range before and after, forming the curved area of ​​the memory path. It should be noted that the curved area formed by the memory path does not mean that the road is curved; the driver may also drive a curved memory path on a straight road.

[0108] 3) Removing the curved areas of the memory path will create the straight areas of the memory path.

[0109] (7) Based on the straight sections of the memorized path, find the straight sections of the road.

[0110] 1) The specific method is to traverse the straight sections of the memory path. Based on the correspondence between the memory path and the semantic point cloud within the straight section, i.e., the correspondence between path points and road boundary points, a preliminary set of straight section semantic point clouds is formed. This includes either an initial set of initial right boundary semantic point clouds or an initial set of initial left boundary semantic point clouds. The initial right boundary semantic point cloud set includes multiple initial right boundary point positions, and the initial left boundary semantic point cloud set includes multiple initial left boundary point positions. For example, for straight section 1, the corresponding memory path consists of path points 1-30. Since the correspondence between road boundary points and path points has been established in the previous steps, the right road boundary points corresponding to path points 1-30 can be directly queried.

[0111] 2) Fit the semantic point cloud set of the straight road initially formed for the current road segment. Depending on the specific needs, a first-order polynomial or a second-order polynomial can be fitted. In this embodiment, a first-order polynomial is used.

[0112] 3) Calculate the distance from all road boundary points on the same side to the first-order polynomial fitted in the previous steps, and add the point clouds of road boundary points with a distance less than a preset threshold to the current straight road semantic point cloud set to form the final straight road point cloud set for this segment.

[0113] (8) Based on the final straight road point cloud set, fit a first-order polynomial on the left and right sides of the boundary of the straight road.

[0114] (9) Based on the final straight road point cloud set, the memory path segment corresponding to the straight road can be obtained by finding the corresponding minimum path point number and maximum path point number.

[0115] (10) Calculate the mean distance of the first-order polynomials on the left and right sides within the memory path segment corresponding to the straight road. This mean can be considered as the width of the straight road.

[0116] (11) Based on the width of the road and the width of the vehicle, the optimal distance from the right boundary can be calculated as the standard boundary parameter.

[0117] (12) Calculate the perpendicular distance from each memory path point in the memory path segment corresponding to the straight road to the right boundary. Translate the path points whose perpendicular distance is greater than the optimal distance so that their distance from the right boundary is equal to the optimal distance.

[0118] (13) When there is perceived freespace and lane lines, the generated memory path is corrected and adjusted; if there is no real-time perceived information, no correction is made.

[0119] (14) Use common optimization methods such as quadratic programming to perform smooth optimization on the translated path.

[0120] For detailed procedures, please refer to the descriptions in the foregoing embodiments; they will not be repeated here.

[0121] In this specific embodiment, the technical solution of this application can correct the memory path based on environmental information, ensuring that the path during autonomous driving cruise no longer relies solely on vehicle trajectory information, and no longer places stringent requirements on the driver's driving behavior during the learning and mapping phase. Since the recorded semantic map information is generated during learning and mapping, it can be determined using methods such as multi-frame data, resulting in more stable and accurate road boundaries. Further correction using real-time sensor information ensures timely updates even when road boundaries change. By correcting the original path based on road boundary points, the corrected path better conforms to traffic rules and scenario requirements, improving the practicality of memory parking. This allows the vehicle to safely and reasonably perform autonomous driving during the cruise parking phase, enhancing both the safety of autonomous driving and the driver's experience.

[0122] Please see Figure 5 , Figure 5 This is a block diagram illustrating a vehicle path optimization device according to an exemplary embodiment of this application. The device can be applied to… Figure 1 The implementation environment shown is specifically configured in computer device 120. This device can also be applied to other exemplary implementation environments and specifically configured in other devices. This embodiment does not limit the implementation environment to which the device is applicable.

[0123] like Figure 5 As shown, the exemplary vehicle route optimization device includes:

[0124] The acquisition module 510 is used to acquire historical driving path data and historical driving road data of the vehicle. The historical driving path data includes the path point positions of multiple path points, and the historical driving road data includes the road boundary point positions of multiple road boundary points. The segmentation module 520 is used to match each road boundary point position with all path point positions, determine relative position parameters based on the successfully matched road boundary point positions and path point positions, and the relative position parameters represent the positional relationship between the successfully matched road boundary point positions and path point positions. The positions of all road boundary points are segmented according to the relative position parameters corresponding to each road boundary point to obtain multiple road target side boundary point positions. The determination module 530 uses... The system matches each path point position with all road target side boundary point positions. Based on the successfully matched path point positions and road target side boundary point positions, it determines the distance from the successfully matched path point position to the road target side boundary, which is used as the historical boundary distance. The road target side boundary is obtained based on the successfully matched road target side boundary point positions. The optimization module 540 is used to determine translation parameters based on the historical boundary parameters and the standard boundary distance if the historical boundary distance does not meet the standard boundary parameters. Based on the translation parameters, it translates the successfully matched path point positions until the historical boundary distance corresponding to each successfully matched path point position is equal to the standard boundary parameters. Based on the current path points, it generates the optimized driving path of the vehicle.

[0125] It should be noted that the vehicle path optimization device and the vehicle path optimization method provided in the above embodiments belong to the same concept. The specific operation methods of each module and unit have been described in detail in the method embodiments and will not be repeated here. In practical applications, the vehicle path optimization device provided in the above embodiments can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above. This is not a limitation here.

[0126] Embodiments of this application also provide an electronic device, including: one or more processors; and a storage device for storing one or more programs, which, when executed by the one or more processors, cause the electronic device to implement the vehicle driving path optimization method provided in the above embodiments.

[0127] Please see Figure 6 , Figure 6 A schematic diagram of a computer system suitable for implementing the embodiments of this application is shown. It should be noted that... Figure 6 The computer system 600 of the electronic device shown is merely an example and should not impose any limitation on the functionality and scope of use of the embodiments of this application.

[0128] like Figure 6 As shown, the computer system 600 includes a Central Processing Unit (CPU) 601, which can perform various appropriate actions and processes based on programs stored in Read-Only Memory (ROM) 602 or programs loaded from storage portion 608 into Random Access Memory (RAM) 603, such as performing the methods described in the above embodiments. The RAM 603 also stores various programs and data required for system operation. The CPU 601, ROM 602, and RAM 603 are interconnected via a bus 604. An Input / Output (I / O) interface 605 is also connected to the bus 604.

[0129] The following components are connected to I / O interface 605: an input section 606 including a keyboard, mouse, etc.; an output section 607 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and speakers, etc.; a storage section 608 including a hard disk, etc.; and a communication section 609 including a network interface card such as a LAN (Local Area Network) card, modem, etc. The communication section 609 performs communication processing via a network such as the Internet. A drive 610 is also connected to I / O interface 605 as needed. A removable medium 611, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on drive 610 as needed so that computer programs read from it can be installed into storage section 608 as needed.

[0130] Specifically, according to embodiments of this application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of this application include a computer program product comprising a computer program carried on a computer-readable medium, the computer program including a computer program for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication section 609, and / or installed from removable medium 611. When the computer program is executed by central processing unit (CPU) 601, it performs various functions defined in the system of this application.

[0131] It should be noted that the computer-readable medium shown in the embodiments of this application can be a computer-readable signal medium or a computer-readable storage medium, or any combination of the two. A computer-readable storage medium can be, for example, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), flash memory, optical fiber, portable compact disc read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this application, a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, carrying a computer-readable computer program. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. Computer-readable signal media can also be any computer-readable medium other than computer-readable storage media, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The computer program contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to wireless, wired, etc., or any suitable combination thereof.

[0132] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of apparatus, methods, and computer program products according to various embodiments of this application. Each block in a flowchart or block diagram may represent a module, segment, or portion of code, which contains one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, or they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in a block diagram or flowchart, and combinations of blocks in a block diagram or flowchart, may be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0133] The units described in the embodiments of this application can be implemented in software or hardware, and the described units can also be located in a processor. The names of these units do not necessarily limit the specific unit itself.

[0134] Another aspect of this application provides a computer-readable storage medium storing a computer program thereon, which, when executed by a computer's processor, causes the computer to perform the vehicle driving path optimization method as described above. This computer-readable storage medium may be included in the electronic device described in the above embodiments, or it may exist independently and not incorporated into the electronic device.

[0135] Another aspect of this application provides a computer program product or computer program including computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the vehicle path optimization method provided in the various embodiments described above.

[0136] The above embodiments are merely illustrative of the principles and effects of this application and are not intended to limit this application. Any person skilled in the art can modify or alter the above embodiments without departing from the spirit and scope of this application. Therefore, all equivalent modifications or alterations made by those skilled in the art without departing from the spirit and technical concept disclosed in this application should still be covered by the claims of this application.

Claims

1. A method for optimizing vehicle travel routes, characterized in that, The vehicle travel path optimization method includes: The vehicle's historical driving path data and historical driving road data are obtained. The historical driving path data includes the location of multiple path points, and the historical driving road data includes the location of multiple road boundary points. Each road boundary point is matched with all path point positions. A relative position parameter is determined based on the successfully matched road boundary point and path point positions. This relative position parameter characterizes the positional relationship between the successfully matched road boundary point and path point positions, with each path point corresponding to at least one road boundary point. Determining the relative position parameter includes: determining a reference point position based on the successfully matched path point positions; calculating the position difference between the successfully matched road boundary point and path point positions, and calculating the inclination angle of the straight lines to which the reference point position and the successfully matched path point position belong; and determining the relative position parameter based on the inclination angle and the position difference. The positions of all road boundary points are divided according to the relative position parameters corresponding to each road boundary point, resulting in multiple target side boundary point positions. This division includes: if the relative position parameter is less than a preset parameter, then the road boundary point position corresponding to the relative position parameter is designated as a non-target side boundary point position, resulting in multiple non-target side boundary point positions; if the relative position parameter is greater than the preset parameter, then the road boundary point position corresponding to the relative position parameter is designated as a target side boundary point position, resulting in multiple target side boundary point positions; if the relative position parameter is equal to the preset parameter, then the road boundary point corresponding to the relative position parameter is discarded. For each path point location, match it with all road target side boundary point locations. Based on the successfully matched path point locations and road target side boundary point locations, determine the distance from the successfully matched path point location to the road target side boundary as the historical boundary distance. The road target side boundary is obtained based on the successfully matched road target side boundary point locations. If the historical boundary distance does not meet the standard boundary parameters, a translation parameter is determined based on the historical boundary distance and the standard boundary parameters. The position of the successfully matched path point is translated based on the translation parameter until the historical boundary distance corresponding to each successfully matched path point position meets the standard boundary parameters. An optimized driving path for the vehicle is then generated based on the current path point.

2. The vehicle travel path optimization method according to claim 1, characterized in that, Before matching the location of each path point with the locations of all road target side boundary points, the vehicle travel path optimization method includes: The curvature of each path point location on the historical driving path is calculated. The curvature change value is calculated based on the curvature of adjacent path point locations to obtain multiple curvature change values, thereby determining the curvature change extreme value. The historical driving path is obtained based on all path point locations. Based on the preset range and the path point positions corresponding to the extreme values ​​of curvature change, all path point positions are filtered to obtain multiple straight path point positions. Based on the location of each straight path point, the locations of all road target side boundary points are matched, and the successfully matched road target side boundary point locations are used as straight target side boundary point locations, resulting in multiple straight target side boundary point locations. Based on the location of each straight path point, the locations of all non-target side boundary points of the road are matched, and the successfully matched non-target side boundary points of the road are used as the locations of non-target side boundary points of the straight road, resulting in multiple locations of non-target side boundary points of the straight road.

3. The vehicle travel path optimization method according to claim 1, characterized in that, Before matching the location of each path point with the locations of all road target side boundary points, the vehicle travel path optimization method further includes: The curvature of each path point location on the historical driving path is calculated. The curvature change value is calculated based on the curvature of adjacent path point locations to obtain multiple curvature change values, thereby determining the curvature change extreme value. The historical driving path is obtained based on all path point locations. Based on the preset range and the path point positions corresponding to the extreme values ​​of curvature change, all path point positions are filtered to obtain multiple initial straight path point positions. Based on the position of each initial straight path point, the positions of all road target side boundary points are matched, and the successfully matched road target side boundary point positions are used as the initial straight path target side boundary point positions, resulting in multiple initial straight path target side boundary point positions. The positions of multiple initial straight road target side boundary points are fitted to obtain the initial straight road target side boundary line. Based on the position of each road target side boundary point and the initial straight road target side boundary line, the vertical distance from each road target side boundary point position to the initial straight road target side boundary line is determined. If the vertical distance is less than a preset threshold, the road target side boundary point position corresponding to the vertical distance is taken as the straight road target side boundary point position, resulting in multiple straight road target side boundary point positions. Based on the position of the side boundary point of each straight target, the positions of all path points are matched, and the positions of the successfully matched path points are used as the straight path point positions, resulting in multiple straight path point positions. Based on the location of each straight path point, the locations of all non-target side boundary points of the road are matched, and the successfully matched non-target side boundary points of the road are used as the locations of non-target side boundary points of the straight road, resulting in multiple locations of non-target side boundary points of the straight road.

4. The vehicle travel path optimization method according to any one of claims 2 or 3, characterized in that, If the historical boundary distance does not meet the standard boundary parameters, before determining the translation parameters based on the historical boundary distance and the standard boundary parameters, the vehicle travel path optimization method includes: Obtain the vehicle width; The non-target side boundary points of multiple straight sections are fitted to obtain the non-target side boundary line of the straight section, and the target side boundary points of multiple straight sections are fitted to obtain the target side boundary line of the straight section. The road width is determined based on the non-target side boundary line of the straight road and the target side boundary line of the straight road; The standard boundary parameters are determined based on the vehicle width and the road width.

5. The vehicle travel path optimization method according to claim 1, characterized in that, The position difference The expression is: in,( x m , y m ) represents the location of the successfully matched road boundary point. x n1 , y n1 ) represents the location of the successfully matched path point; The tilt angle θ The expression is: in,( x n1 , y n1 ) represents the location of the successfully matched path point. x n2 , y n2 () represents the location of the reference point; The relative position parameters Q The expression is: in, θ The tilt angle is... The position difference is mentioned.

6. A vehicle travel path optimization device, characterized in that, The vehicle travel path optimization device includes: The acquisition module is used to acquire historical driving path data and historical driving road data of the vehicle. The historical driving path data includes the location of multiple path points, and the historical driving road data includes the location of multiple road boundary points. The segmentation module is used to match the position of each road boundary point with the positions of all path points. Based on the successfully matched road boundary point positions and path point positions, it determines relative position parameters, which characterize the positional relationship between the successfully matched road boundary point positions and path point positions. Each path point corresponds to at least one road boundary point. The module then segments all road boundary point positions according to the relative position parameters corresponding to each road boundary point, obtaining multiple road target side boundary point positions. Determining the relative position parameters includes: determining reference point positions based on the successfully matched path point positions; calculating the positional difference between the successfully matched road boundary point positions and path point positions; and calculating the reference point position. The inclination angle of the straight line to which the successfully matched path point is located is determined; the relative position parameter is determined based on the inclination angle and the position difference; the division of all road boundary point positions includes: if the relative position parameter is less than a preset parameter, then the road boundary point position corresponding to the relative position parameter is taken as the non-target side boundary point position of the road, resulting in multiple non-target side boundary points; if the relative position parameter is greater than the preset parameter, then the road boundary point position corresponding to the relative position parameter is taken as the target side boundary point position of the road, resulting in multiple target side boundary point positions; if the relative position parameter is equal to the preset parameter, then the road boundary point corresponding to the relative position parameter is discarded. The determination module is used to match the location of each path point with the locations of all road target side boundary points. Based on the successfully matched path point locations and road target side boundary point locations, the distance from the successfully matched path point location to the road target side boundary is determined as the historical boundary distance. The road target side boundary is obtained based on the successfully matched road target side boundary point locations. An optimization module is used to determine translation parameters based on the historical boundary distance and the standard boundary parameters if the historical boundary distance does not meet the standard boundary parameters, and to translate the positions of the successfully matched path points based on the translation parameters until the historical boundary distance corresponding to each successfully matched path point position is equal to the standard boundary parameters, and to generate an optimized driving path for the vehicle based on the current path points.

7. An electronic device, characterized in that, The electronic device includes: One or more processors; A storage device for storing one or more programs, which, when executed by one or more processors, cause the electronic device to implement the vehicle driving path optimization method as described in any one of claims 1 to 5.

8. A computer-readable storage medium, characterized in that, It stores a computer program that, when executed by the computer's processor, causes the computer to perform the vehicle driving path optimization method as described in any one of claims 1 to 5.