Trajectory planning method and system for moving and parking switching, medium and electronic equipment

By obtaining and splicing trajectories in road-parking switching, and using parking trajectory planning threads to plan parking trajectories in advance, the problem of poor real-time performance of road-parking switching in the existing technology is solved, and seamless switching and real-time improvement of road-parking are achieved.

CN119142340APending Publication Date: 2024-12-17SHANGHAI CANTRON ROBOTICS TECH LTD CO
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411424353.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-12
Publication Date
2024-12-17

AI Technical Summary

Technical Problem

The existing path planning methods have poor real-time performance during the road switching process, making it difficult for vehicles to complete parking operations safely and efficiently.

Method used

By obtaining the driving trajectory and splicing it as the starting point of the parking trajectory, a trajectory for parking switching is generated. The parking trajectory planning thread is used to plan the parking trajectory in advance, ensuring that there is no need to park and wait during parking switching, and alleviating the non-structural road scenarios. The problem of excessive time-consuming planning algorithms.

Benefits of technology

It realizes seamless switching between roads and roads, reduces task completion time, improves real-time, and ensures trajectory continuity and switching coherence.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119142340A_ABST
    Figure CN119142340A_ABST
Patent Text Reader

Abstract

The invention provides a trajectory planning method and system for mooring switching, a medium and electronic equipment. The trajectory planning method comprises the following steps: performing driving trajectory planning according to information acquired by a vehicle to acquire a driving trajectory; when parking track planning needs to be carried out, a splicing track is obtained according to the driving track, parking track planning is carried out based on the splicing track so as to obtain a parking track, and the end point of the splicing track is the starting point of parking track planning; and when a driving and parking switching condition is met, generating a track for driving and parking switching according to the splicing track and the parking track. According to the technical scheme provided by the invention, seamless switching of traveling and parking can be realized, the task completion time is shortened, and good real-time performance is achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application belongs to the technical field of path planning, and relates to a trajectory planning method, and in particular to a trajectory planning method, system, medium and electronic device for driving and parking switching. Background Art

[0002] Automated Parking Assist (APA) technology has been widely used in recent years, greatly improving the driving experience and parking convenience. Autonomous parking can help vehicles automatically find parking spaces and safely complete parking operations in small and complex parking environments, saving drivers time and energy and reducing the pressure caused by parking operations.

[0003] The switch between driving and parking is one of the key links in autonomous parking technology. The switch between driving and parking refers to the process of switching the vehicle from normal driving state to parking state. This process usually occurs when the vehicle approaches the target parking area, and it is necessary to smoothly transition from the dynamic environment of road driving to the state of accurately controlling the vehicle to enter the parking space. The smoothness of this switching process directly affects whether the vehicle can complete the parking action safely and efficiently.

[0004] In order to achieve safe and smooth driving and parking switching, path planning plays a vital role. However, existing path planning methods generally have the problem of poor real-time performance when applied to the driving and parking switching process. Summary of the invention

[0005] The embodiments of the present application provide a trajectory planning method, system, medium and electronic device for driving-parking switching, which are used to solve the problem of poor real-time performance of existing path planning methods when applied to driving-parking switching processes.

[0006] In a first aspect, an embodiment of the present application provides a trajectory planning method for driving-parking switching, the trajectory planning method comprising: performing driving trajectory planning according to information acquired by a vehicle to obtain a driving trajectory; when parking trajectory planning is required, obtaining a spliced ​​trajectory according to the driving trajectory, and performing parking trajectory planning based on the spliced ​​trajectory to obtain a parking trajectory, wherein the end point of the spliced ​​trajectory is the starting point of the parking trajectory planning; when the driving-parking switching condition is met, generating a trajectory for driving-parking switching according to the spliced ​​trajectory and the parking trajectory.

[0007] In an implementation of the first aspect, the trajectory planning method further includes: acquiring a state of a parking trajectory planning thread; if the parking trajectory planning thread is in a thread planning state, or the parking trajectory planning thread has output the parking trajectory, determining whether the driving-parking switching condition is satisfied; if the parking trajectory planning thread is in an idle state, and the parking trajectory planning thread has not output the parking trajectory, determining whether the parking trajectory planning condition is satisfied; if the parking trajectory planning condition is satisfied, determining that parking trajectory planning is required, and determining whether the driving-parking switching condition is satisfied after the parking trajectory planning is completed; if the parking trajectory planning condition is not satisfied, determining that parking trajectory planning is not required, and keeping the vehicle in a driving state.

[0008] In an implementation of the first aspect, the trajectory planning method further includes: determining whether a parking trajectory planning condition is met; wherein determining whether the parking trajectory planning condition is met includes: if n consecutive frames of driving trajectory planning fail, determining that the parking trajectory planning condition is met, wherein n is an integer greater than 1; if a longitudinal distance from the vehicle to the target storage location is less than a distance threshold and a tracking error of the vehicle is less than an error threshold, determining that the parking trajectory planning condition is met.

[0009] In an implementation of the first aspect, the trajectory planning method further includes: determining whether the driving and parking switching condition is met; wherein, determining whether the driving and parking switching condition is met includes: if the parking trajectory planning thread has not completed the parking trajectory planning, determining that the driving and parking switching condition is not met; if the tracking error between the vehicle position and the matching point is less than an error threshold, determining that the driving and parking switching condition is met, otherwise determining that the driving and parking switching condition is not met, wherein the matching point is located in the spliced ​​trajectory.

[0010] In an implementation manner of the first aspect, the tracking error includes a distance error, a heading error and / or a curvature error.

[0011] In an implementation of the first aspect, obtaining a spliced ​​trajectory according to the driving trajectory includes: if the length of the driving trajectory is less than a length threshold, using the driving trajectory as the spliced ​​trajectory; if the length of the driving trajectory is not less than the length threshold, obtaining a segment of the trajectory starting from a starting position of the driving trajectory as the spliced ​​trajectory, and the length of the spliced ​​trajectory is the same as the length threshold.

[0012] In an implementation of the first aspect, generating a trajectory for driving-parking switching according to the spliced ​​trajectory and the parking trajectory includes: acquiring a trajectory located after a matching point in the spliced ​​trajectory as a target trajectory; and splicing the target trajectory to the parking trajectory to generate the trajectory for driving-parking switching.

[0013] In a second aspect, an embodiment of the present application provides a trajectory planning system for driving and parking switching, the trajectory planning system comprising: a driving trajectory planning module, used to perform driving trajectory planning according to information acquired by the vehicle to obtain a driving trajectory; a parking trajectory planning module, used to obtain a spliced ​​trajectory according to the driving trajectory when parking trajectory planning is required, and perform parking trajectory planning based on the spliced ​​trajectory to obtain a parking trajectory, wherein the end point of the spliced ​​trajectory is the starting point of the parking trajectory planning; a final trajectory generation module, used to generate a trajectory for driving and parking switching according to the spliced ​​trajectory and the parking trajectory when the driving and parking switching conditions are met.

[0014] In a third aspect, an embodiment of the present application provides a computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the trajectory planning method described in any one of the first aspects of the embodiments of the present application is implemented.

[0015] In a fourth aspect, an embodiment of the present application provides an electronic device, comprising: a memory storing a computer program; a processor communicatively connected to the memory, and executing the trajectory planning method described in any one of the first aspects of the embodiments of the present application when the computer program is called.

[0016] The embodiment of the present application provides a trajectory planning strategy for switching between driving and parking without stopping, which can achieve seamless switching between driving and parking, reduces the completion time of the entire task, and has good real-time performance.

[0017] In an embodiment of the present application, the parking trajectory planning thread (asynchronous thread) can be used to plan the parking trajectory in advance while driving, so there is no need to stop and wait for parking trajectory planning after switching between driving and parking. At the same time, it is helpful to alleviate the problem of excessive planning algorithm time consumption in unstructured road scenarios.

[0018] In the embodiment of the present application, the continuity of the track of the switching between driving and parking is ensured by setting the splicing track and related inspection and judgment, so that seamless and coherent switching can be achieved. BRIEF DESCRIPTION OF THE DRAWINGS

[0019] Figure 1 Shown is a flow chart of a trajectory planning method provided in an embodiment of the present application.

[0020] Figure 2 Shown is a flow chart for determining whether the driving-parking switching conditions and the parking trajectory planning conditions are met in an embodiment of the present application.

[0021] Figure 3 Shown is a flowchart for determining whether parking trajectory planning conditions are met in an embodiment of the present application.

[0022] Figure 4Shown is a flow chart for determining whether the driving and parking switching conditions are met in an embodiment of the present application.

[0023] Figure 5 Shown is a flow chart of obtaining a splicing trajectory in an embodiment of the present application.

[0024] Figure 6 Shown is a flow chart of generating a trajectory for switching between driving and parking in an embodiment of the present application.

[0025] Figure 7 Shown is a flowchart of a trajectory planning method provided by an embodiment of the present application in a specific example.

[0026] Figure 8 Shown is a schematic diagram of the structure of a trajectory planning system provided in an embodiment of the present application.

[0027] Fig. 9 Shown is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application.

[0028] Component number description

[0029] 800 trajectory planning system

[0030] 801 driving trajectory planning module

[0031] 802 parking trajectory planning module

[0032] 803 Final trajectory generation module

[0033] 900 Electronic equipment

[0034] 901 processor

[0035] 902 Memory

[0036] 9021 Operating System

[0037] 9022 Application

[0038] 903 Network Interface

[0039] 904 bus system

[0040] 905 User Interface

[0041] Steps S11 to S13

[0042] Steps S21 to S25

[0043] Steps S31 to S32

[0044] Steps S41 to S42

[0045] Steps S51 to S52

[0046] Steps S61 to S62

[0047] Steps S701 to S709 DETAILED DESCRIPTION

[0048] The following describes the embodiments of the present application through specific examples, and those skilled in the art can easily understand other advantages and effects of the present application from the contents disclosed in this specification. The present application can also be implemented or applied through other different specific embodiments, and the details in this specification can also be modified or changed in various ways based on different viewpoints and applications without departing from the spirit of the present application. It should be noted that the following embodiments and features in the embodiments can be combined with each other without conflict.

[0049] It should be noted that the illustrations provided in the following embodiments are only used to illustrate the basic concept of the present application in a schematic manner, and therefore the illustrations only show components related to the present application rather than being drawn according to the number, shape and size of components in actual implementation. In actual implementation, the type, quantity and proportion of each component may be changed arbitrarily, and the component layout may also be more complicated.

[0050] In the embodiments of the present application, the words "exemplary" or "for example" represent examples, illustrations or descriptions. Any embodiment or design described as "exemplary" or "for example" in the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "exemplary" or "for example" is intended to present related concepts in a specific way.

[0051] In the embodiments of the present application, "at least one" refers to one or more, and "plurality" refers to two or more. "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone, where A and B can be singular or plural. The character " / " generally indicates that the previous and next associated objects are in an "or" relationship. "At least one of the following" or similar expressions refers to any combination of these items, including any combination of single or plural items. For example, at least one of a, b or c can represent: a, b, c, ab, ac, bc or abc, where a, b, c can be single or multiple.

[0052] Driving-parking switching refers to the process of switching a vehicle from a normal driving state to a parking state. During the driving-parking switching process, driving and parking correspond to different planning tasks and scenarios. Driving path planning can be performed based on lane lines and reference lines using a structured road scene planning algorithm, which does not involve reversing and can be planned in real time. Parking path planning is performed using an unstructured road planning algorithm. Since the drivable area of ​​the parking process is limited and the forward and reverse driving of the vehicle must be considered at the same time, the scenario and environment are relatively complex. In some technical solutions, a search + optimization algorithm (hybird a*+OBCA) is used for path planning in the driving-parking switching process. In these technical solutions, a single planning in a complex scenario takes several seconds, which is time-consuming and difficult to achieve real-time planning.

[0053] At least for the above-mentioned problems, an embodiment of the present application provides a trajectory planning method for switching between driving and parking. This trajectory planning method can achieve seamless switching between driving and parking, reduces the completion time of the entire task, and has good real-time performance. In an embodiment of the present application, the parking trajectory planning thread (asynchronous thread) can be used to plan the parking trajectory in advance in the driving state, so there is no need to stop and wait for parking trajectory planning after switching between driving and parking, and it is also helpful to alleviate the problem of excessive planning algorithm time consumption in unstructured road scenarios. In an embodiment of the present application, the continuity of the trajectory of switching between driving and parking is ensured by setting a spliced ​​trajectory and related inspection and judgment, so that seamless and coherent switching can be achieved.

[0054] The technical solutions in the embodiments of the present application will be described in detail below in conjunction with the drawings in the embodiments of the present application.

[0055] Figure 1 The flowchart of the trajectory planning method for parking switching provided by the embodiment of the present application is shown. Figure 1 As shown, the trajectory planning method includes the following steps S11 to S13.

[0056] S11, performing driving trajectory planning according to the information obtained by the vehicle to obtain the driving trajectory.

[0057] Exemplarily, the information obtained by the vehicle includes, for example, road environment data (such as lane lines, traffic signs, signal lights, obstacles), the position and speed of surrounding dynamic objects (such as other vehicles, pedestrians, bicycles), the vehicle's own status information (such as speed, acceleration, direction angle, steering angle) and map data (such as road topology, slope, curvature, etc.). This information can be obtained in a variety of ways, for example, it can be obtained in real time through sensors installed on the vehicle (such as cameras, millimeter wave radars, laser radars, ultrasonic radars) to perceive the surrounding environment, or it can be obtained from traffic infrastructure or other vehicles through vehicle to everything (V2X) communication.

[0058] Exemplarily, driving trajectory planning can be performed by methods based on geometric models (such as Bezier curves, spline curves), sampling-based methods (such as fast random tree search, RRT), or optimization-based methods (such as gradient descent, optimal control), but the present application is not limited to this.

[0059] S12, when parking trajectory planning is required, a stitching trajectory is obtained according to the driving trajectory, and parking trajectory planning is performed based on the stitching trajectory to obtain a parking trajectory, wherein an end point of the stitching trajectory is a starting point of the parking trajectory planning.

[0060] S13, when the driving-parking switching condition is met, generating a trajectory for driving-parking switching according to the spliced ​​trajectory and the parking trajectory.

[0061] See also Figure 2 In some implementations, the trajectory planning method may further include the following steps S21 to S25.

[0062] S21, obtaining the state of the parking trajectory planning thread. Exemplarily, the electronic device may include a parking trajectory planning thread and a driving trajectory planning thread. The parking trajectory planning thread is used to plan the parking trajectory, and the driving trajectory planning thread is used to plan the driving trajectory. By using two asynchronous threads to perform parking trajectory planning and driving trajectory planning respectively, the system can plan two trajectories at the same time, which is conducive to further shortening the trajectory planning time.

[0063] S22: If the parking trajectory planning thread is in the thread planning state, or the parking trajectory planning thread has output the parking trajectory, it is determined whether the driving-parking switching condition is met.

[0064] S23: If the parking trajectory planning thread is in an idle state and the parking trajectory planning thread has not output a parking trajectory, it is determined whether a parking trajectory planning condition is met.

[0065] S24: If the parking trajectory planning condition is met, it is determined that parking trajectory planning is required, and after the parking trajectory planning is completed, it is determined whether the driving-parking switching condition is met.

[0066] S25: If the parking trajectory planning condition is not met, it is determined that parking trajectory planning is not required to keep the vehicle in a driving state.

[0067] It should be noted that the above reference numerals S21 to S25 are only used to identify different steps, but not to limit the execution order of these steps.

[0068] In some implementations, the trajectory planning method provided in the embodiments of the present application may further include: determining whether a parking trajectory planning condition is met.

[0069] For example, see Figure 3 In the embodiment of the present application, determining whether the parking trajectory planning conditions are met may include the following steps S31 to S32.

[0070] S31, if the driving trajectory planning fails for n consecutive frames, it is determined that the parking trajectory planning condition is met, otherwise step S32 is executed, where n is an integer greater than 1. The judgment of step S31 can avoid the vehicle being stuck after the driving trajectory planning fails.

[0071] S32: If the longitudinal distance from the vehicle to the target storage location is less than the distance threshold and the tracking error of the vehicle is less than the error threshold, it is determined that the parking trajectory planning conditions are met, otherwise it is determined that the parking trajectory planning conditions are not met. Among them, the distance threshold can be set according to actual needs or experience, for example, 4m, but the present application is not limited to this. The judgment of step S32 can ensure that the vehicle starts planning the parking trajectory when it is close to the target storage location, and can ensure the accuracy of the spliced ​​trajectory, avoiding the inability of the vehicle to switch due to tracking errors after the parking trajectory planning is completed.

[0072] It should be noted that Figure 3 The scheme for judging whether the parking trajectory planning conditions are met is only one feasible way of the embodiment of the present application, but the present application is not limited thereto. For example, in some other embodiments, it is also possible to first judge whether the longitudinal distance from the vehicle to the target storage location is less than the distance threshold and whether the tracking error of the vehicle is less than the error threshold. If the longitudinal distance from the vehicle to the target storage location is less than the distance threshold and the tracking error of the vehicle is less than the error threshold, it is determined that the parking trajectory planning conditions are met, otherwise it is determined whether there is a situation where the driving trajectory planning fails for n consecutive frames. If there is a situation where the driving trajectory planning fails for n consecutive frames, it is determined that the parking trajectory planning conditions are met, otherwise it is determined that the parking trajectory planning conditions are not met.

[0073] In some implementations, the longitudinal distance from the vehicle to the target storage location is, for example, the difference between an s value obtained by projecting the vehicle onto the reference line and an s value obtained by projecting the target storage location onto the reference line.

[0074] In some implementations, the tracking error may include a distance error, a heading error, and a curvature error. The error threshold may include a distance error threshold, a heading error threshold, and a curvature error threshold. In these implementations, the parking planning condition is determined to be met only when the distance error is less than the distance error threshold, the heading error is less than the heading error threshold, and the curvature error is less than the curvature error threshold. The specific values ​​of the above thresholds can be set based on experience or demand. For example, the distance error threshold may be 0.2m, the heading error threshold may be 10°, and the curvature error threshold may be 0.1, but the present application is not limited thereto.

[0075] In some implementations, the trajectory planning method provided in the embodiments of the present application may further include: determining whether a driving-to-mooring switching condition is met.

[0076] For example, see Figure 4 In the embodiment of the present application, determining whether the driving and berthing switching conditions are met may include the following steps S41 and S42.

[0077] S41, if the parking trajectory planning thread has not completed the parking trajectory planning, it is determined that the driving and parking switching conditions are not met, otherwise, step S42 is executed.

[0078] S42, if the tracking error between the vehicle position and the matching point is less than the error threshold, it is determined that the driving and parking switching condition is met, otherwise it is determined that the driving and parking switching condition is not met, wherein the matching point is located in the spliced ​​track. The determination of whether the tracking error is less than the error threshold is similar to step S33, and is not repeated here. The determination of step S44 can ensure the continuity of the driving and parking switching track, and ensure that the vehicle travels within the range of the spliced ​​track.

[0079] It should be noted that Figure 4 The scheme for determining whether the parking switching condition is met is only one feasible way of the embodiment of the present application, but the present application is not limited thereto. For example, in some other embodiments, it is also possible to first determine whether the tracking error between the vehicle position and the matching point is less than the error threshold. If the tracking error between the vehicle position and the matching point is not less than the error threshold, it is determined that the parking switching condition is not met, otherwise it is determined whether the parking trajectory planning thread has completed the parking trajectory planning. If the parking trajectory planning thread has not completed the parking trajectory planning, it is determined that the parking switching condition is not met, otherwise it is determined that the parking switching condition is met.

[0080] For example, the trajectory planning method provided in the embodiment of the present application may further include: obtaining matching points on the spliced ​​trajectory corresponding to the parking trajectory. For example, the vehicle box may be constructed with the actual position point of the vehicle, and boxes may also be constructed for all trajectory points on the spliced ​​trajectory, and the trajectory point corresponding to the box with the highest overlap rate with the vehicle box may be obtained from the trajectory point boxes as the matching point, but the present application is not limited thereto.

[0081] See also Figure 5 In some implementations, obtaining a spliced ​​trajectory according to the driving trajectory includes the following steps S51 and S52.

[0082] S51: If the length of the driving track is less than a length threshold, the driving track is used as a splicing track. The length threshold can be set according to actual needs or experience.

[0083] S52: If the length of the driving trajectory is not less than the length threshold, a segment of the trajectory is obtained from the starting position of the driving trajectory as a spliced ​​trajectory, and the length of the spliced ​​trajectory is the same as the length threshold.

[0084] For example, taking the length threshold of 3 m as an example, if the length of the driving trajectory is less than 3 m, the entire driving trajectory is used as the spliced ​​trajectory, otherwise, the first 3 m of the driving trajectory is obtained as the spliced ​​trajectory.

[0085] In the embodiment of the present application, the continuity between the driving trajectory and the parking trajectory can be ensured by obtaining the spliced ​​trajectory, ensuring that the driving and parking switching process is seamless and smooth.

[0086] See also Figure 6 In some implementations, generating a trajectory for driving-parking switching according to the spliced ​​trajectory and the parking trajectory includes the following steps S61 and S62.

[0087] S61, obtaining the track after the matching point in the spliced ​​track as the target track. For example, the spliced ​​track can be truncated according to the matching point, and the spliced ​​track after the matching point is retained as the target track, and the end point of the target track is the starting point of the parking track.

[0088] S62, splicing the target trajectory to the parking trajectory to generate a trajectory for driving-parking switching. For example, the spliced ​​trajectory can be spliced ​​to the front of the parking trajectory to generate a trajectory for driving-parking switching.

[0089] The trajectory planning method provided by the embodiment of the present application will be described in detail below through a specific example. It should be noted that the content in this example is only used to explain and illustrate the trajectory planning method provided by the embodiment of the present application. In specific applications, the corresponding content can be added or deleted based on the example according to actual needs. Figure 7 The flowchart for trajectory planning in this specific example is shown. Figure 7 As shown, the trajectory planning process in this example includes the following steps S701 to S709.

[0090] S701, planning a driving trajectory according to the information obtained by the vehicle.

[0091] S702, determine whether the parking trajectory planning thread is idle. If the parking trajectory planning thread is idle, execute step S703, otherwise execute step S707.

[0092] S703, judging whether the parking trajectory planning condition is met. If the parking trajectory planning condition is met, executing step S705, otherwise executing step S704.

[0093] S704, keep the vehicle in driving state, output the driving trajectory, and jump to step S701.

[0094] S705: Setting the starting point of the splicing trajectory and the parking trajectory based on the current driving trajectory.

[0095] S706: Plan a parking trajectory in a parking trajectory planning thread.

[0096] S707, determine whether the driving and berthing switching conditions are met, if so, execute step S708, otherwise jump to step S704.

[0097] S708: performing trajectory truncation and splicing based on the position of the vehicle to obtain a final parking trajectory.

[0098] S709: The vehicle switches to the parking state and outputs the final parking trajectory.

[0099] The protection scope of the trajectory planning method provided in the embodiment of the present application is not limited to the execution order of the steps listed in the present embodiment. All solutions implemented by adding, reducing or replacing steps in the prior art based on the principles of the present application are included in the protection scope of the present application.

[0100] The embodiments of the present application also provide a trajectory planning system, which can implement the trajectory planning method of the present application. However, the implementation device of the trajectory planning method of the present application includes but is not limited to the structure of the trajectory planning system listed in the present embodiment. All structural deformations and replacements of the prior art made according to the principles of the present application are included in the protection scope of the present application.

[0101] Figure 8 is a schematic block diagram of a trajectory planning system provided in an embodiment of the present application. Figure 8 As shown, the trajectory planning system 800 includes a driving trajectory planning module 801, a parking trajectory planning module 802, and a final trajectory generation module 803. The driving trajectory planning module 801 is used to perform driving trajectory planning according to the information obtained by the vehicle to obtain a driving trajectory. The parking trajectory planning module 802 is used to obtain a spliced ​​trajectory according to the driving trajectory when parking trajectory planning is required, and perform parking trajectory planning based on the spliced ​​trajectory to obtain a parking trajectory, wherein the end point of the spliced ​​trajectory is the starting point of the parking trajectory planning. The final trajectory generation module 803 is used to generate a trajectory for driving and parking switching according to the spliced ​​trajectory and the parking trajectory when the driving and parking switching conditions are met.

[0102] It should be understood that the specific process of each module executing the above corresponding steps has been described in detail in the above method embodiment, and for the sake of brevity, it will not be repeated here.

[0103] The present application also provides a computer-readable storage medium on which a computer program is stored, and when the computer program is executed by the processor, the trajectory planning method provided by the present application embodiment is implemented. A person of ordinary skill in the art can understand that all or part of the steps in the method for implementing the above-mentioned embodiment can be completed by instructing the processor through a program, and the program can be stored in a computer-readable storage medium, and the storage medium is a non-transitory medium, such as a random access memory, a read-only memory, a flash memory, a hard disk, a solid-state hard disk, a magnetic tape, a floppy disk, an optical disc, and any combination thereof. The above-mentioned storage medium can be any available medium that can be accessed by a computer or a data storage device such as a server or a data center that includes one or more available media integrated. The available medium can be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a digital video disc (DVD)), or a semiconductor medium (e.g., a solid-state hard disk (SSD)), etc.

[0104] An embodiment of the present application also provides an electronic device. Fig. 9 is a schematic block diagram of an electronic device provided in an embodiment of the present application. Fig. 9 As shown, the electronic device 900 includes: at least one processor 901, a memory 902, at least one network interface 903 and a user interface 905. The various components in the electronic device 900 are coupled together through a bus system 904. It can be understood that the bus system 904 is used to realize the connection and communication between these components. In addition to the data bus, the bus system 904 also includes a power bus, a control bus and a status signal bus. However, for the sake of clarity, the bus system 904 is not used in the following examples. Fig. 9 In the specification, various buses are labeled as bus systems.

[0105] The user interface 905 may include a display, a keyboard, a mouse, a trackball, a click gun, keys, buttons, a touch pad or a touch screen.

[0106] It is understood that the memory 902 can be a volatile memory or a non-volatile memory, and can also include both volatile and non-volatile memories. Among them, the non-volatile memory can be a read-only memory (ROM), a programmable read-only memory (PROM), which is used as an external cache. By way of exemplary but not limiting explanation, many forms of RAM are available, such as static random access memory (SRAM), synchronous static random access memory (SSRAM). The memory described in the embodiments of the present application is intended to include but is not limited to these and any other suitable categories of memory.

[0107] The memory 902 in the embodiment of the present application is used to store various categories of data to support the operation of the electronic device 900. Examples of these data include: any executable program for operating on the electronic device 900, such as an operating system 9021 and an application 9022; the operating system 9021 includes various system programs, such as a framework layer, a core library layer, a driver layer, etc., for implementing various basic services and processing hardware-based tasks. The application 9022 may include various applications, such as a media player (Media Player), a browser (Browser), etc., for implementing various application services. The trajectory planning method provided in the embodiment of the present application may be included in the application 9022.

[0108] The method disclosed in the above embodiment of the present application can be applied to the processor 901, or implemented by the processor 901. The processor 901 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by an integrated logic circuit of hardware in the processor 901 or an instruction in the form of software. The above processor 901 may be a general-purpose processor, a digital signal processor (DSP, Digital Signal Processor), or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc. The processor 901 can implement or execute the various methods, steps and logic block diagrams disclosed in the embodiments of the present application. The general-purpose processor 901 may be a microprocessor or any conventional processor, etc. In combination with the steps of the accessory optimization method provided in the embodiment of the present application, it can be directly embodied as a hardware decoding processor to execute, or it can be executed by a combination of hardware and software modules in the decoding processor. The software module can be located in a storage medium, which is located in a memory, and the processor reads the information in the memory and completes the steps of the above method in combination with its hardware.

[0109] In an exemplary embodiment, the electronic device 900 may be implemented by one or more application specific integrated circuits (ASIC), DSP, programmable logic device (PLD), or complex programmable logic device (CPLD) to execute the aforementioned method.

[0110] The terms "component", "module", "system", etc. used in this specification are used to represent computer-related entities, hardware, firmware, a combination of hardware and software, software, or software in execution. For example, a component can be, but is not limited to, a process running on a processor, a processor, an object, an executable file, an execution thread, a program and / or a computer. By way of illustration, both applications running on a computing device and a computing device can be components. One or more components may reside in a process and / or an execution thread, and a component may be located on a computer and / or distributed between two or more computers. In addition, these components may be executed from various computer-readable media having various data structures stored thereon. Components may, for example, communicate through local and / or remote processes according to signals having one or more data packets (e.g., data from two components interacting with another component between a local system, a distributed system and / or a network, such as the Internet interacting with other systems through signals).

[0111] Those of ordinary skill in the art will appreciate that the various illustrative logical blocks and steps described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or in a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel may use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0112] In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of units is only a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0113] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0114] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.

[0115] In the above embodiments, the functions of each functional unit can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions (programs). When loading and executing computer program instructions (programs) on a computer, the process or function according to the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. Computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, computer instructions can be transmitted from a website site, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (digital subscriber line, DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) mode to another website site, computer, server or data center.

[0116] If the function is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for a computer device (which can be a personal computer, server, or network device, etc.) to perform all or part of the steps of the various embodiments of the present application. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory, a random access memory, a magnetic disk or an optical disk.

[0117] In summary, the embodiment of the present application provides a trajectory planning strategy for switching between driving and parking without stopping, which can achieve seamless switching between driving and parking, reduce the completion time of the entire task, and has good real-time performance. In the embodiment of the present application, the parking trajectory planning thread (asynchronous thread) can be used to plan the parking trajectory in advance in the driving state, so there is no need to stop and wait for parking trajectory planning after switching between driving and parking, and it is also helpful to alleviate the problem of excessive planning algorithm time consumption in unstructured road scenarios. In the embodiment of the present application, the continuity of the trajectory of switching between driving and parking is ensured by setting a splicing trajectory and related inspection and judgment, so that seamless and coherent switching can be achieved. Therefore, the present application effectively overcomes the various shortcomings in the prior art and has a high industrial utilization value.

[0118] The above embodiments are merely illustrative of the principles and effects of the present application and are not intended to limit the present application. Anyone familiar with the technology may modify or change the above embodiments without violating the spirit and scope of the present application. Therefore, all equivalent modifications or changes made by a person of ordinary skill in the art without departing from the spirit and technical ideas disclosed in the present application shall still be covered by the claims of the present application.

Claims

1. A trajectory planning method for driving-mooring switching, characterized in that: The trajectory planning method comprises: Perform driving trajectory planning based on the information obtained by the vehicle to obtain the driving trajectory; When parking trajectory planning is required, a spliced ​​trajectory is obtained according to the driving trajectory, and parking trajectory planning is performed based on the spliced ​​trajectory to obtain a parking trajectory, wherein the end point of the spliced ​​trajectory is the starting point of the parking trajectory planning; When the driving-parking switching condition is met, a trajectory for driving-parking switching is generated according to the spliced ​​trajectory and the parking trajectory.

2. The trajectory planning method according to claim 1, characterized in that: The trajectory planning method further includes: Get the status of the parking trajectory planning thread; If the parking trajectory planning thread is in a thread planning state, or the parking trajectory planning thread has output the parking trajectory, determining whether the driving-parking switching condition is met; If the parking trajectory planning thread is in an idle state and the parking trajectory planning thread does not output the parking trajectory, it is determined whether the parking trajectory planning condition is met: If the parking trajectory planning condition is met, it is determined that parking trajectory planning is required, and after the parking trajectory planning is completed, it is determined whether the driving-parking switching condition is met; If the parking trajectory planning condition is not met, it is determined that parking trajectory planning is not required and the vehicle is kept in a driving state.

3. The trajectory planning method according to claim 1, characterized in that: The trajectory planning method further includes: determining whether parking trajectory planning conditions are met; Wherein, judging whether the parking trajectory planning condition is met includes: If the driving trajectory planning fails for n consecutive frames, it is determined that the parking trajectory planning condition is met, where n is an integer greater than 1; If the longitudinal distance from the vehicle to the target storage location is less than the distance threshold and the tracking error of the vehicle is less than the error threshold, it is determined that the parking trajectory planning condition is met.

4. The trajectory planning method according to claim 1, characterized in that: The trajectory planning method further includes: determining whether the driving and parking switching condition is met; Wherein, judging whether the driving and parking switching condition is met includes: If the parking trajectory planning thread has not completed the parking trajectory planning, it is determined that the driving and parking switching condition is not met; If the tracking error between the vehicle position and the matching point is less than the error threshold, it is determined that the driving and parking switching condition is met, otherwise it is determined that the driving and parking switching condition is not met, wherein the matching point is located in the spliced ​​trajectory.

5. The trajectory planning method according to claim 2, characterized in that: The tracking error includes a distance error, a heading error and / or a curvature error.

6. The trajectory planning method according to claim 1, characterized in that: Acquiring a spliced ​​trajectory according to the driving trajectory includes: If the length of the driving trajectory is less than the length threshold, the driving trajectory is used as the splicing trajectory; If the length of the driving trajectory is not less than the length threshold, a segment of the trajectory is obtained from the starting position of the driving trajectory as the spliced ​​trajectory, and the length of the spliced ​​trajectory is the same as the length threshold.

7. The trajectory planning method according to claim 1, characterized in that: Generating a trajectory for driving-parking switching according to the spliced ​​trajectory and the parking trajectory includes: Acquire the track after the matching point in the spliced ​​track as the target track; The target trajectory is spliced ​​to the parking trajectory to generate the trajectory for driving-parking switching.

8. A trajectory planning system for driving and parking switching, characterized in that: The trajectory planning system comprises: A driving trajectory planning module is used to plan the driving trajectory according to the information obtained by the vehicle to obtain the driving trajectory; A parking trajectory planning module, used for obtaining a spliced ​​trajectory according to the driving trajectory when parking trajectory planning is required, and performing parking trajectory planning based on the spliced ​​trajectory to obtain a parking trajectory, wherein the end point of the spliced ​​trajectory is the starting point of the parking trajectory planning; The final trajectory generation module is used to generate a trajectory for driving-parking switching according to the spliced ​​trajectory and the parking trajectory when the driving-parking switching condition is met.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the trajectory planning method according to any one of claims 1 to 7 is implemented.

10. An electronic device, characterized in that: The electronic device comprises: A memory storing a computer program; A processor is communicatively connected to the memory, and executes the trajectory planning method according to any one of claims 1 to 7 when calling the computer program.