Method, device, device, vehicle and program product for parking
By determining the base points in the global path and windowing the local path, the problem of misoperation caused by circular paths in automatic parking technology is solved, and more accurate and efficient automatic parking control is achieved.
Patent Information
- Application Number
- CN202411657813.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-19
- Publication Date
- 2026-05-19
AI Technical Summary
Existing automatic parking technology cannot effectively control the vehicle when dealing with loop paths in the training route, leading to misoperation or retraining and failing to achieve accurate automatic parking.
By determining the base point corresponding to the start position of vehicle replay in the global path, windowing the local path, and controlling vehicle parking based on the local path, fine-grained parking control is achieved to handle the case of circular paths.
It improves the accuracy and efficiency of parking control, avoids misoperation and retraining, and ensures that the vehicle can successfully complete automatic parking.
Smart Images

Figure CN122058897A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the automotive field, and more specifically, to methods, apparatus, equipment, vehicles, and procedures for parking. Background Technology
[0002] Home-zone park assist (HPA) is an automated parking technology, also known as valet parking or memory parking, that identifies and remembers specific home areas, such as garages, parking spaces, or other frequently parked areas. This is achieved by scanning and recording these areas using sensors on the vehicle (such as cameras, ultrasonic sensors, and lidar), creating a map of the area. Once the vehicle enters the identified home area, the driver can activate the parking assist function. The system then controls the vehicle's steering, acceleration, and braking based on the previously recorded map information and real-time sensor data, thus achieving automated parking.
[0003] HPA (Automatic Parking Assist) functions typically include training and replay functions. When the vehicle enters a residential area, the driver can activate the HPA training function before driving to the target parking position. The vehicle will then memorize a map of the parking area and the parking route from the starting point of entry into the residential area to the target parking position; this route is also known as the training route. The driver can then activate the HPA replay function, and the vehicle will automatically drive to the parking position according to the training route, thus achieving automatic parking. Summary of the Invention
[0004] Embodiments of this disclosure provide a method, apparatus, device, vehicle, and medium for parking.
[0005] In a first aspect of this disclosure, a method for parking is provided. The method includes determining a first point corresponding to a first position from a global path representing the vehicle's trajectory on a map during parking, based on a first position of the vehicle. The method also includes determining a first local path associated with the first point within the global path. Furthermore, the method includes controlling the parking of the vehicle based on the first local path.
[0006] In a second aspect of this disclosure, an apparatus for parking is provided. The apparatus includes a first point determination unit configured to determine a first point corresponding to a first position of the vehicle from a global path representing the vehicle's trajectory on a map during parking, based on a first position of the vehicle. The apparatus also includes a first local path determination unit configured to determine a first local path associated with the first point within the global path. The apparatus further includes a parking control unit configured to control the parking of the vehicle based on the first local path. Additionally, the apparatus also includes a parking control unit configured to control the parking of the vehicle based on the first local path.
[0007] In a third aspect of this disclosure, an electronic device is provided. The electronic device includes one or more processors; and a memory coupled to at least one processor and having instructions stored thereon, which, when executed by the at least one processor, cause the device to perform a method for parking, the method comprising: determining a first point corresponding to the first position from a global path of the vehicle, based on a first position of the vehicle, wherein the global path represents a trajectory of the vehicle in a map during parking; determining a first local path associated with the first point in the global path; and controlling the parking of the vehicle based on the first local path.
[0008] In a fourth aspect of this disclosure, a vehicle is provided. The vehicle includes electronic equipment provided according to a third aspect of this disclosure.
[0009] In a fifth aspect of this disclosure, a computer program product is provided. The computer program product stores computer-executable instructions, which are executed by a processor to implement the method provided according to a first aspect of this disclosure.
[0010] In a sixth aspect of the disclosure, a machine-readable storage medium is provided. The machine-readable storage medium stores machine-executable instructions, which are executed by a processor to implement the method provided according to a first aspect of this disclosure.
[0011] It should be understood that the description in the Summary of the Invention section is not intended to limit the key or essential features of the embodiments of this disclosure, nor is it intended to restrict the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description
[0012] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. In the drawings, the same or similar reference numerals denote the same or similar elements, wherein:
[0013] Figure 1A schematic diagram of an example environment in which methods and / or apparatuses of some embodiments of this disclosure may be implemented is shown;
[0014] Figure 2 A flowchart of a parking method according to some embodiments of the present disclosure is shown;
[0015] Figure 3 A schematic diagram of a parking process according to some embodiments of the present disclosure is shown;
[0016] Figure 4 A schematic diagram illustrating a process for determining a local path according to some embodiments of the present disclosure is shown;
[0017] Figure 5A The path selection process for the start cycle of playback according to some embodiments of this disclosure is illustrated;
[0018] Figure 5B The path selection process for other cycles of playback according to some embodiments of this disclosure is illustrated;
[0019] Figure 6 A flowchart of another method for parking according to some embodiments of the present disclosure is shown;
[0020] Figure 7 A block diagram of a parking apparatus according to some embodiments of the present disclosure is shown; and
[0021] Figure 8 A block diagram of a controller that can implement some embodiments of the present disclosure is shown. Detailed Implementation
[0022] Embodiments of this disclosure will now be described in more detail with reference to the accompanying drawings. While some embodiments of this disclosure are shown in the drawings, it should be understood that this disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of this disclosure. It should be understood that the accompanying drawings and embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of protection of this disclosure.
[0023] In the description of embodiments of this disclosure, the term "comprising" and similar terms should be understood as open-ended inclusion, i.e., "including but not limited to". The term "based on" should be understood as "at least partially based on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The terms "first", "second", etc., may refer to different or the same objects. Other explicit and implicit definitions may also be included below.
[0024] During training functions such as HPA, the driver drives the vehicle from the starting point to the target parking position. The HPA system can record the driving trajectory as a training route, and then during the HPA replay function, the vehicle will automatically drive to the parking position according to the training route. However, in display training, the driver may drive the vehicle in circles during HPA training, for example, due to unfamiliarity with the road conditions, which may result in a loop path in the training route.
[0025] In this scenario, the vehicle's HPA system may fail to automatically park when it detects a loop in the training route. For example, the HPA system might prompt the driver that training has failed and retraining is required, or it might stop or continuously circle the loop when the vehicle reaches the intersection of the loop and the open path during HPA replay. Therefore, existing automatic parking technologies cannot handle situations where loops exist in the training route. The HPA training function can also be referred to as "training" in this document, and the HPA replay function can also be referred to as "replay."
[0026] Therefore, embodiments of this disclosure propose a parking scheme. In embodiments of this disclosure, a first point corresponding to the first position is determined from the vehicle's global path, which represents the vehicle's trajectory on a map during parking, based on the vehicle's first position. A first local path associated with the first point is determined from the global path. Then, parking of the vehicle is controlled based on the first local path.
[0027] In this way, a local path can be windowed within the global path representing the entire training route of the vehicle using a first point (hereinafter also referred to as the base point) corresponding to the first position (hereinafter also referred to as the position at the start of the vehicle's HPA playback function or the playback start position). The windowed local path is then used to control vehicle parking, thereby refining parking control and enabling the handling of loop paths within the training route. Traditional automatic parking technology uses global route search to control vehicle parking, resulting in coarse control and an inability to handle loop paths intersecting with open paths. The parking scheme according to several embodiments of this disclosure can window the global route into corresponding local paths, finely controlling vehicle parking and handling loop paths within the training route, avoiding misoperation or retraining, thereby improving the accuracy and efficiency of parking control.
[0028] Figure 1 A schematic diagram of an example environment 100 in which various embodiments of this disclosure may be implemented is shown. For example... Figure 1As shown, in environment 100, including vehicle 102 entering the parking area, the training route 106 corresponding to the driving trajectory of vehicle 102 on the map during training may include a circular path, for example, due to the driver's unfamiliarity with the road conditions. The complete training route 106 is also referred to as the global route. Training route 106 begins at start point 108 and ends at end point 110 associated with target parking space 112. When vehicle 102 reaches point 110, vehicle 102 stops driving and reverses into target parking space 112, completing parking.
[0029] Vehicle 102 includes a controller 104 that can determine a base point 116 corresponding to the playback start position 114 of vehicle 102 from a training route 106, which represents the driving trajectory of vehicle 102 on a map during parking (also referred to as the training period). The controller 104 can determine a local path 118 associated with the base point 116 within the training route 106. The playback start position 114 is also referred to herein as the first position, which represents the actual position of the vehicle at the start of HPA playback function, and the base point 116 is also referred to herein as the first point, which represents the point in the training route 106 corresponding to the actual position at the start of HPA playback function.
[0030] Next, the controller 104 can control the parking of the vehicle 102 according to the local path 118. For example, the controller 104 can control the vehicle 102 to drive along the trajectory of the training route 106 to the end point 110, and then control the vehicle 102 to reverse into the target parking space 112.
[0031] In some embodiments, the controller 104 can determine the playback start position 114 of the vehicle 102 based on the vehicle position information 120 and map data 122. For example, the controller 104 can receive data in the vehicle coordinate system from devices such as the vehicle 102's Global Navigation Satellite System (GNSS), ultrasonic radar or lidar, inertial measurement unit, and odometer, and fuse this data to form the vehicle position information 120. For example, ultrasonic radar can be used for obstacle avoidance during parking, and lidar can be used for localization and mapping. Next, the controller 104 can determine the playback start position 114 when the HPA playback function starts in real time based on the vehicle position information.
[0032] In some embodiments, controller 104 also receives map data 122 associated with a parking area map, which is generated and stored during the HPA training phase. Controller 104 can transform the fused vehicle location information 120 and the map to the same coordinate system, such as a world coordinate system or a map coordinate system, to determine the base points 116 in the training route 106.
[0033] In some embodiments, the controller 104 may determine a coordinate point in a map corresponding to the playback start position 114 based on the playback start position 114. It should be understood that this coordinate point corresponds to the coordinates of the playback start position 114 in the map. Next, the controller 104 determines a base point 116 from a plurality of points included in the training route 106 based on this coordinate point. The base point 116 is the point closest to the coordinate point among the plurality of points included in the training route 106.
[0034] For example, controller 104 can search for points close to the coordinate point among multiple points included in training route 106, then calculate the distance of each point from the coordinate point, and determine the closest point as the base point. In some embodiments, if two points are calculated to be at the same distance from the coordinate point, a point is randomly determined as the base point. In some embodiments, if two points at the same distance from the coordinate point are located on the same trajectory, such as both on a circular trajectory or an open trajectory, the point preceding the coordinate point is determined as the base point according to the direction of training route 106. In some embodiments, if two points at the same distance from the coordinate point are located on different types of trajectories, such as one point on a circular trajectory and the other point on an open trajectory, a point is randomly determined as the base point.
[0035] Figure 2 A flowchart of a parking method 200 according to some embodiments of the present disclosure is shown. Method 200 can be performed by vehicle devices or electronic equipment, such as… Figure 1 Controller 104, etc., inside vehicle 102. Figure 2 As shown in box 202, based on the vehicle's first position, a first point corresponding to the first position is determined from the vehicle's global path, where the global path represents the vehicle's trajectory on the map during parking. For example, for Figure 1 In the example scenario 100 shown, when the driver of vehicle 102 activates the HPA playback function, controller 104 can determine a base point 116 corresponding to the location of vehicle 102 from the training route 106 representing the driving trajectory of vehicle 102 on the map during training. The first location is also called the playback start location, the first point is also called the base point, the global path is also called the training route, and the first local path is also called the local path.
[0036] In box 204, the first local path associated with the first point is determined in the global path. For example, for Figure 1 In the example scenario 100 shown, the controller 104 can determine a local path 118 associated with a base point 116 within a training route 106 of the vehicle 102. In some embodiments, the base point 116 may be located within the local path 118, and the front and rear endpoints of the local path 118 may be at predetermined distances from the base point 116. For example, the front and rear endpoints of the local path 118 may be at the same or different distances from the base point 116. In some embodiments, the base point 116 may be an endpoint of the local path 118 or may be outside the local path.
[0037] In box 206, parking of the vehicle is controlled based on the first local path. For example, for Figure 1 In the example scenario 100 shown, controller 104 can control the parking of vehicle 102 based on local path 118. In some embodiments, controller 104 can search for the next base point in local path 118 and determine the next local path based on the next base point until the end of training route 106 is reached.
[0038] In some embodiments, the global path 106 may have a set of discrete trajectory points with indices ordered according to the sampling order of the training phase. For example, the indices of the trajectory points may gradually increase along the training path from the start point to the end point. In some embodiments, the controller 104 may determine the next base point according to the order of the indices to guide the vehicle 102 to the end point. In some embodiments, the controller 104 adds a specific index order to the indices of the base point 116 to determine the next base point, thereby determining the next local path.
[0039] In some embodiments, the local path 106 may have a specific length, and the controller 104 may add a specific distance to the coordinates of the base point 116 to determine the next base point. The next local path is then determined based on the next base point and the specific length, thereby controlling the parking of the vehicle 102.
[0040] According to method 200, a local path associated with the location where the vehicle begins replaying can be determined in the global path, and the global path can be windowed into a local path to control vehicle parking. This allows vehicle parking to be controlled even when there is a circular path in the vehicle's global path, avoiding the situation where traditional parking technology cannot handle the intersection of circular paths and open paths.
[0041] Figure 3 A schematic diagram of a parking process 300 according to some embodiments of the present disclosure is shown. Figure 3As shown, the vehicle's position in the map is generated at location 306 based on vehicle position information 302 and map data 304. In some embodiments, vehicle position information 302 may be generated by a location module such as radar 3022, antenna 3024, and GNSS and IMU 3026. Map data 304 has been generated by the controller and stored in memory during the training phase. It should be understood that map data 304 includes a map of the parking area and the vehicle's training route. The controller can transform vehicle position information 302 and map data 304 into the same coordinate system to generate the vehicle's position in the map, including the training route, in real time at location 306.
[0042] like Figure 3 As shown, at point 308, during the first cycle of the HPA replay phase, the trajectory points of the entire training route (also known as the global path) are traversed according to their indices to find the trajectory point closest to the vehicle as the base point. Then, based on the base point, a certain distance is searched forward and backward to extract the local path. This local path is also called the first local path. It should be understood that each runnable entity has a corresponding runtime, which has a certain duration. The first cycle can refer to the first runtime within the runtime, i.e., the time period at the beginning of the HPA replay phase.
[0043] In some embodiments, the runtime of each runnable entity is determined based on system requirements and design specifications, while also taking into account factors such as system real-time requirements, task priorities, and resource allocation. For example, the runtime of a runnable entity can be 100ms.
[0044] It should be understood that the multiple trajectory points included in the global path are sorted by index, and each trajectory point among the multiple trajectory points has a corresponding index. In some embodiments, these trajectory points are collected at different times during training and have sequential indexes according to the order of collection. The training period is also referred to as the parking period.
[0045] In some embodiments, a certain distance is searched forward from the base point to determine the front end point of the local path, and a certain distance is searched backward to determine the back end point of the local path. The indices of the front and back ends are then recorded to extract the local path. The front end point of the local path is also called the second point, and the back end point of the local path is also called the third point.
[0046] Next, at point 310, for example, in a subsequent cycle of the HPA replay phase, such as the second cycle, the local path is traversed to search for the point closest to the vehicle as the next base point. Then, based on the base point, a certain distance is searched forward and backward to update the local path. For example, the vehicle's controller can search forward and backward within the local path to determine the front and rear endpoints of the next local path, and then use the positions of the front and rear endpoints to update the local path. This next local path is also called the second local path.
[0047] Next, the controller will continue with step 310 above until the vehicle reaches the end of the training route, i.e. Figure 1 The endpoint is 110. It should be understood that, according to process 300, a local path associated with the vehicle's current position can be determined from the global path as a window, and then the next base point can be searched in the local path and the next local path can be determined. That is, the window is continuously slid to control parking, so that the vehicle can be controlled more finely and can handle situations where there are loop paths in the global path.
[0048] Figure 4 A schematic diagram of an example process 400 for determining a local path according to some embodiments of the present disclosure is shown. Figure 4 This shows a portion of the trajectory points in the vehicle and the global path, such as... Figure 4 As shown, the vehicle is located at coordinate point 402 on the map. It should be understood that coordinate point 402 on the map corresponds to the vehicle's actual position at the start of the replay, i.e., the replay start position mentioned above. For example, coordinate point 402 can be determined based on the coordinates of the vehicle's center of gravity (such as the rear axle center).
[0049] As shown in process 400, based on coordinate point 402, the point closest to coordinate point 402 is determined from among the multiple points included in the global path as the base point 404. Based on base point 404, the local path front point 406 and local path rear point 408 are determined from the global path. Figure 4 As shown, the local path's leading point 406 is a forward distance d1 from the base point 404 in the forward direction, and the local path's trailing point 408 is a backward distance d2 from the base point 404 in the backward direction, opposite to the forward direction. Then, based on the local path's leading point 406 and trailing point 408, a first local path is determined. The forward direction is also called the first direction, and the backward direction is also called the second direction. The forward distance is also called the first distance, and the backward distance is also called the second distance.
[0050] In some embodiments, the points included in the global path are sorted by index, with each point having a corresponding index. It should be understood that the first direction is the direction preceding the base point in the index sorting order, and the second direction is the direction following the base point in the index sorting order.
[0051] In some embodiments, the index (also called the first index) and coordinates (also called the first coordinates) of the base point corresponding to the base point 404 can be determined. Based on the base point's index, coordinates, and forward distance d1, the index corresponding to the local path's leading point 406, also called the second index, is determined. Then, based on the base point's index, coordinates, and backward distance d2, the index corresponding to the local path's trailing point 408, also called the third index, is determined. Next, the local path is determined based on the index corresponding to the local path's leading point 406 and the index corresponding to the local path's trailing point 408.
[0052] In some embodiments, a second coordinate can be determined based on the coordinates of the base point and the forward distance d1, wherein the second coordinate precedes the coordinates of the base point in the order of their indices. For example, the second coordinate can be determined by adding the forward distance d1 to the coordinates of the base point in the vehicle's forward direction.
[0053] It should be understood that since the trajectory points in the global path correspond to the vehicle's position on the map collected at different periods during training, and the vehicle's motion may not be uniform, the intervals between trajectory points can be non-uniform. In other words, the trajectory points in the global path can be non-uniform discrete points, and therefore the second coordinate may not exactly correspond to a trajectory point.
[0054] When the second coordinate does not correspond to a trajectory point in the global path, the point immediately preceding the point corresponding to the second coordinate in index order is determined as the local path front-end point among the points included in the global path. For example, the second coordinate might correspond to a position between points 405 and 406, and point 406 precedes point 405 in index order; therefore, point 406 is determined as the local path front-end point. Then, based on the local path front-end point 406, the index of the corresponding front-end point can be determined.
[0055] In some embodiments, a third coordinate is determined based on the coordinates of the base point and the backward distance d2, the third coordinate following the first coordinate in indexed order. For example, the third coordinate can be determined by subtracting the backward distance d2 from the coordinates of the base point in the vehicle's forward direction.
[0056] When the third coordinate does not correspond to a trajectory point in the global path, the point immediately preceding the point corresponding to the third coordinate in the indexed order among the points included in the global path is determined as the subsequent endpoint of the local path. For example, in Figure 4If the third coordinate is located between points 407 and 408, then point 408, which precedes the third coordinate in index order, is determined as the local path endpoint 408. Then, based on the local path endpoint 408, the corresponding third index is determined.
[0057] In some embodiments, taking the forward distance d1 as an example, if adding the forward distance d1 from the base point does not correspond exactly to a point on the trajectory in the global path, then the next point is selected. It should be understood that in this case, the distance from the front point to the base point will be slightly greater than the set forward distance d1. In some embodiments, when near the end of the global path, if the distance from the base point to the end of the global path is less than the forward distance, then the end point is taken as the front point.
[0058] In some embodiments, the forward distance d1 is greater than the backward distance d2, and the forward distance d1 is determined based on the maximum speed allowed during the vehicle's parking period. For example, the forward distance d1 can be set slightly larger to traverse the global path, while the backward distance d2 can be set slightly smaller, as long as the minimum distance required for parking is guaranteed. Considering the accuracy of parking control, the forward distance d1 can be determined based on the maximum speed allowed during the vehicle's parking period; for example, the higher the maximum allowed speed, the larger the forward distance d1. For example, if the maximum allowed speed during the vehicle's parking period is 10 kph, the forward distance d1 can be set to 22 m.
[0059] In some embodiments, the global path includes multiple different trajectories, wherein the leading point and trailing point of the local path lie on the same trajectory. For example, the global path may include intersecting loop paths and open paths, with both the leading point and trailing point of the local path located on either a loop path or an open path. This allows parking schemes according to some embodiments of the present disclosure to handle situations where there are intersections of different trajectories in the training route, improving the accuracy and efficiency of parking control.
[0060] According to example process 400, a local path can be determined as a window in the global path at the beginning of the HPA replay function cycle, and a base point can be determined in the local path in subsequent cycles and the next local path can be determined based on the base point, thereby sliding the window until the entire training path is traversed.
[0061] Figure 5AA path selection process 500A for the start period of playback according to some embodiments of this disclosure is illustrated. As shown in FIG5, process 500A may correspond to the time period when vehicle 502 is at the playback start position, and the path selection process is performed once every playback period. For example, the playback period may be 100ms or 200ms. The playback start period is also referred to herein as the first period. It should be understood that the values here are shown as examples only and are not intended to be limiting.
[0062] As shown in process 500A, during the training phase, a set of trajectory points corresponding to the real-time position of the vehicle have been collected at the corresponding time intervals. Each trajectory point has an index and corresponding coordinates recorded in the sampling order during training. For example, during the training phase, the index of the first trajectory point is recorded as 0 and the coordinates are (x0, y0, z0), etc. Then, as training progresses, a trajectory point is recorded every corresponding period (e.g., 1 second). For example, the second trajectory point has an index of 1 and coordinates (x1, y1, z1), and the third trajectory point has an index of 2 and coordinates (x2, y2, z1), and so on.
[0063] The global path 504, including a loop path 5042 and an open path 5044, can be determined based on these trajectory points. It should be understood that the loop path 5042 refers to a closed shape, which may be formed due to the driver's unfamiliarity with road conditions during training, and the open path 5044 refers to a non-closed shape, such as a portion of the global path 504 that does not overlap with the loop path 5042. For example, from vehicle 502 at... Figure 5A The path from the current location to the target endpoint is open path 5044.
[0064] like Figure 5A As shown, due to the uneven speed of the vehicle during the training phase, the distance the vehicle moves within each cycle interval is uncertain, resulting in uneven intervals between trajectory points. Furthermore, the vehicle's state during the replay phase is affected by the environment; for example, it may need to stop due to obstacles ahead, or its speed may fluctuate on uphill or downhill routes. This means the vehicle's trajectory during the replay phase may not perfectly coincide with the global path 504. Therefore, in each cycle of the replay phase, the vehicle's position may not be exactly at a trajectory point, requiring a re-search for the next basic point. In traditional automatic parking technology, the next basic point needs to be searched again in the global path in the next cycle of the replay phase. When there is an intersection between the circular path 5042 and the open path 5044, traditional automatic parking systems cannot determine the next basic point. For example, the next basic point may be on either the circular path or the open path, and the system cannot confirm this, leading to errors or erroneous operations.
[0065] In contrast, the parking control scheme according to some embodiments of this disclosure can determine the position of vehicle 502 in global path 504, i.e., the playback start position, at the start of the playback cycle. A local path is determined from global path 504 based on the playback start position. This local path can serve as a search window; that is, in subsequent playback cycles, the next base point is searched within the local path to determine the next local path, until the entire global path has been traversed, thereby controlling the parking of vehicle 502. The next base point is also referred to as the first update point, and the next local path is also referred to as the second local path.
[0066] As can be seen, the path selection process 500A according to some embodiments of this disclosure can determine the search window in the replay stage without searching for the next basic point in the entire global path, thereby finely controlling the parking of the vehicle, and can handle the situation where circular paths and open paths intersect, improving the efficiency and accuracy of parking.
[0067] Figure 5B A path selection process 500B for other periods of playback according to some embodiments of the present disclosure is illustrated. As shown in FIG5, process 500B may correspond to a period after the playback start period when vehicle 502 is in a playback start period. In other periods after the playback start period, it is determined that the vehicle is in another position (also referred to as a second position). Based on the other position of vehicle 502, another base point (also referred to as a first update point) associated with the other position of vehicle is determined from the local path 506 of vehicle, and another local path (also referred to as a second local path) associated with the other base point is determined in the global path 504. Then, the vehicle is guided according to the second local path, and parking of the vehicle is controlled.
[0068] In some embodiments, the global path 504 includes an open path 5044 and at least one circular path 5042. When the playback start position is associated with the intersection of the circular path 5044 and the open path, a base point is determined to be on either the circular path or the open path. In response to the base point being on the circular path 5042, a local path is determined on the circular path 5042. In response to the base point being on the open path 5044, a local path is determined on the open path 5044. For example, this can be done according to the reference above. Figure 4 The method described above is used to determine local paths on circular or open trajectories.
[0069] It should be understood that the length of a local path, i.e. Figure 4 The forward distance d1 plus the backward distance d2 can be fixed in different playback periods, i.e., sliding according to the period of a window with a fixed length until the entire global path has been traversed. In some embodiments, the length of the local path can also be variable in the corresponding playback period, i.e., sliding according to the period of a window with a variable length to traverse the global path, which is not limited herein.
[0070] Figure 6 A flowchart of another method 600 for parking according to some embodiments of the present disclosure is shown. As shown in method 600, at 602, method 600 begins. At 604, it is detected whether the vehicle is in the start cycle of the HPA replay phase. If yes, then at 606, a global path is searched to determine a base point, and then at 610, the coordinates of the base point are obtained. If not, then at 608, a local path is searched to determine a base point, and then at 610, the coordinates of the base point are obtained.
[0071] It should be understood that the base point and its coordinates can be determined and obtained according to any of the exemplary embodiments described above. In some embodiments, when a vehicle is detected to be at the start of the HPA replay phase, the vehicle's current coordinates on the map can be determined based on the vehicle's current actual location, and then the point closest to the current coordinates is determined from among multiple points included in the global path as the base point. Next, the coordinates of the base point on the map can be determined.
[0072] At point 612, a predetermined forward distance is searched based on the coordinates of the base point to obtain the index of the local path's front end point at point 616. Simultaneously, at point 614, a predetermined backward distance is searched based on the coordinates of the base point to obtain the index of the local path's back end point at point 618. Next, at point 620, the local path is extracted using the indices of the front and back ends to control vehicle parking, and method 600 ends at point 622. It should be understood that the above can be referenced for example. Figure 4 The example procedure described determines the indices of the front and back ends of a local path.
[0073] According to method 600, at the beginning of the replay phase, a local path can be determined within the global path as a search window based on the vehicle's position. Then, in subsequent cycles of the replay phase, the next base point and the next search window are determined within the search window based on the vehicle's position. That is, the search window can be slid across different cycles of the replay phase until the entire global path has been traversed. This window-sliding method allows for finer parking control, handling situations where the global path contains loops, thus improving parking accuracy and efficiency.
[0074] Figure 7 A block diagram of a parking device 700 according to some embodiments of the present disclosure is shown. Figure 7As shown, the device 700 includes a first point determination unit 702, configured to determine a first point corresponding to the first position from the vehicle's global path, which represents the vehicle's trajectory on a map during parking, based on the vehicle's first position. The device 700 also includes a first local path determination unit 704, configured to determine a first local path associated with the first point within the global path. Furthermore, the device 700 includes a parking control unit 706, configured to control the parking of the vehicle based on the first local path.
[0075] In some embodiments, the first point determination unit 702 includes: a coordinate point determination unit configured to determine a coordinate point in a map corresponding to the first position based on the first position; and a coordinate point usage module configured to determine a first point from a plurality of points included in a global path based on the coordinates, wherein the first point is the point closest to the coordinate point among the plurality of points.
[0076] In some embodiments, the first local path determination unit 704 includes: a second and third point determination unit configured to determine a second point and a third point from a global path based on a first point, wherein the second point is a first distance away from the first point in a first direction and the third point is a second distance away from the first point in a second direction, wherein the first direction and the second direction are opposite; and a second and third point usage module configured to determine a first local path based on the second point and the third point.
[0077] In some embodiments, the global path includes multiple different trajectories, and the second and third points are on the same trajectory.
[0078] In some embodiments, the multiple points included in the global path are sorted by index, and corresponding points among the multiple points have corresponding indices. The first local path determination unit 704 includes: a first index and coordinate determination unit configured to determine a first index and a first coordinate corresponding to a first point; a second index determination unit configured to determine a second index corresponding to a second point based on the first index, the first coordinate, and a first distance; a third index determination unit configured to determine a third index corresponding to a third point based on the first index, the first coordinate, and a second distance; and a second and third index usage unit configured to determine a first local path based on the second index and the third index.
[0079] In some embodiments, the second index determination unit includes: a second coordinate determination subunit configured to determine a second coordinate based on a first coordinate and a first distance, wherein the second coordinate precedes the first coordinate in index order; a second point determination subunit configured to determine, among the points included in the global path, a point immediately preceding the point corresponding to the second coordinate in index order as a second point; and a second point usage subunit configured to determine a second index corresponding to the second point based on the second point.
[0080] In some embodiments, the third index determination unit includes: a third coordinate determination subunit configured to determine a third coordinate based on a first coordinate and a second distance, wherein the third coordinate follows the first coordinate in index order; a third point determination subunit configured to determine a point immediately preceding the point corresponding to the third coordinate in index order among the points included in the global path as a third point; and a third point usage subunit configured to determine a third index corresponding to the third point based on the third point.
[0081] In some embodiments, the first distance is greater than the second distance, and the first distance is determined based on the maximum speed allowed during the parking period of the vehicle.
[0082] In some embodiments, the parking apparatus 700 further includes: a second position determination unit configured to determine that the vehicle is in a second position in a second cycle after a first cycle; a first update point determination unit configured to determine a first update point associated with the second position of the vehicle from the vehicle's global path based on the second position of the vehicle; a second local path determination unit configured to determine a second local path associated with the first update point in the global path, and the parking control unit 706 is further configured to guide the vehicle to control the parking of the vehicle based on the second local path.
[0083] In some embodiments, the global path includes an open path and at least one loop path. The first local path determination unit 704 further includes: a trajectory determination unit configured to determine a first point on the loop path or the open path in response to the first position being associated with the intersection of the loop path and the open path; a first trajectory usage unit configured to determine a first local path on the loop path in response to the first point being on the loop path; and a second trajectory usage unit configured to determine a first local path on the open path in response to the first point being on the open path.
[0084] In some embodiments, the parking apparatus 700 further includes: a trajectory point determination unit configured to acquire the vehicle's position in a map at different periods during parking to determine a set of trajectory points; and a trajectory point usage unit configured to determine a global path based on the set of trajectory points.
[0085] It is understood that by utilizing the device 700 of this disclosure, at least one of the many advantages achievable by the methods or processes described above can be realized. For example, the device 700 can determine a local path associated with a first position within a global path, and can window the global path into a local path to control vehicle parking, thereby controlling vehicle parking even when a loop path exists within the vehicle's global path, thus avoiding the problem that traditional parking technologies cannot handle, for example, the intersection of loop paths and open paths.
[0086] Figure 8 A block diagram of a controller 800 for parking according to some embodiments of the present disclosure is shown. In some embodiments, the controller 800 is used to implement... Figure 1 The controller 104 is shown in the example environment 100. Figure 8 As shown, the controller 800 includes a processor 802, which can perform various appropriate actions and processes based on computer program instructions loaded into random access memory (RAM) 806 according to computer program instructions stored in read-only memory (ROM) 804. The RAM 806 may also store various programs and data required for the operation of the controller 800. The processor 802, ROM 804, and RAM 806 are interconnected via bus 804. An input / output (I / O) interface 810 is also connected to bus 808.
[0087] The various processes and procedures described above, such as methods 200 and 600, can be executed by processor 802. For example, in some embodiments, methods 200 and 600 can be implemented as computer software programs tangibly contained in a machine-readable medium. In some embodiments, part or all of the computer program can be loaded and / or installed on controller 800 via ROM 804. When the computer program is loaded into RAM 806 and executed by processor 802, one or more actions of methods 200 and 600 described above can be performed.
[0088] This disclosure can be a method, apparatus, system, and / or computer program product. A computer program product may include a computer-readable storage medium having computer-readable program instructions loaded thereon for performing various aspects of this disclosure.
[0089] A computer-readable storage medium can be a tangible device capable of holding and storing instructions for use by an instruction execution device. A computer-readable storage medium can be, for example—but not limited to—an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination thereof. More specific examples (a non-exhaustive list) of computer-readable storage media include: random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), and any suitable combination thereof. The computer-readable storage medium as used herein is not to be construed as a transient signal itself, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., light pulses through fiber optic cables), or electrical signals transmitted through wires.
[0090] The computer-readable program instructions described herein can be downloaded from computer-readable storage media to various computing / processing devices, or downloaded via a network, such as the Internet, local area network, wide area network, and / or wireless network, to an external computer or external storage device. The network may include copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards them to the computer-readable storage media in the respective computing / processing device.
[0091] Computer program instructions used to perform the operations of this disclosure may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, status setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages such as Smalltalk, C++, etc., and conventional procedural programming languages such as the "C" language or similar programming languages. The computer-readable program instructions may execute entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving a remote computer, the remote computer may be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or may be connected to an external computer (e.g., via the Internet using an Internet service provider). In some embodiments, electronic circuitry, such as programmable logic circuitry, field-programmable gate arrays (FPGAs), or programmable logic arrays (PLAs), is personalized by utilizing the status information of the computer-readable program instructions to implement various aspects of this disclosure.
[0092] Various aspects of this disclosure are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this disclosure. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions.
[0093] These computer-readable program instructions can be provided to a processing unit of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that, when executed by the processing unit of the computer or other programmable data processing apparatus, they create means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium that causes a computer, programmable data processing apparatus, and / or other device to operate in a particular manner. Thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.
[0094] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.
[0095] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of an instruction containing one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions marked in the blocks may occur in a different order than those shown in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, may be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.
[0096] The various embodiments of this disclosure have been described above. These descriptions are exemplary and not exhaustive, nor are they limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described embodiments. The terminology used herein is chosen to best explain the principles, practical application, or technical improvements to the technology in the market, or to enable others skilled in the art to understand the embodiments disclosed herein.
Claims
1. A method (200) for parking, comprising: Based on the first location of the vehicle, determine (202) a first point corresponding to the first location from the global path of the vehicle, wherein the global path represents the driving trajectory of the vehicle in the map during parking; In the global path, determine (204) the first local path associated with the first point; as well as Based on the first local path, control (206) the parking of the vehicle.
2. The method (200) according to claim 1, wherein determining (202) the first point corresponding to the first location from the global path of the vehicle comprises: Based on the first location, determine the coordinate point corresponding to the first location on the map; Based on the coordinates, the first point is determined from a plurality of points included in the global path, wherein the first point is the point among the plurality of points that is closest to the coordinates.
3. The method (200) of claim 2, wherein determining (204) the first local path associated with the first point in the global path comprises: Based on the first point, a second point and a third point are determined from the global path, wherein the second point is a first distance away from the first point in a first direction, and the third point is a second distance away from the first point in a second direction, wherein the first direction and the second direction are opposite; and The first local path is determined based on the second point and the third point.
4. The method (200) according to claim 3, wherein the global path comprises a plurality of different trajectories, wherein the second point and the third point are on the same trajectory.
5. The method (200) according to claim 3, wherein the plurality of points included in the global path are sorted by index, corresponding points among the plurality of points have corresponding indexes, and determining the first local path includes: Determine the first index and first coordinates corresponding to the first point; Based on the first index, the first coordinates, and the first distance, determine the second index corresponding to the second point; Based on the first index, the first coordinates, and the second distance, determine the third index corresponding to the third point; and The first local path is determined based on the second index and the third index.
6. The method (200) of claim 5, wherein determining the second index corresponding to the second point comprises: Based on the first coordinate and the first distance, a second coordinate is determined, wherein the second coordinate precedes the first coordinate according to the index order; Among the points included in the global path, the point immediately preceding the point corresponding to the second coordinate is determined according to the index order as the second point; as well as Based on the second point, determine the second index corresponding to the second point.
7. The method (200) according to claim 5, wherein determining the third index corresponding to the third point comprises: Based on the first coordinate and the second distance, a third coordinate is determined, wherein the third coordinate is after the first coordinate in the order of the indices. Among the points included in the global path, the point immediately preceding the point corresponding to the third coordinate, in accordance with the index order, is determined as the third point; and Based on the third point, determine the third index corresponding to the third point.
8. The method (200) of claim 3, wherein the first distance is greater than the second distance, and wherein the first distance is determined based on the maximum speed allowed during the parking period of the vehicle.
9. The method (200) according to claim 1, wherein the vehicle is in the first position during the first cycle, the method further comprising: In the second cycle following the first cycle, the vehicle is determined to be in the second position; Based on the second location of the vehicle, a first update point associated with the second location of the vehicle is determined from the first local path of the vehicle; Determine a second local path associated with the first update point within the global path; as well as The vehicle is guided according to the second local path, and the parking of the vehicle is controlled.
10. The method (200) of claim 1, wherein the global path includes an open path and at least one loop path, and determining the first local path associated with the first point in the global path further includes: In response to the association of the first position with the intersection of the circular trajectory and the open trajectory, it is determined that the first point is on the circular trajectory or the open trajectory. In response to the first point being on the circular trajectory, the first local path is determined on the circular trajectory; as well as In response to the first point on the open trajectory, the first local path is determined on the open trajectory.
11. The method (200) according to claim 1, wherein: During parking, the vehicle's position on the map is collected at different intervals to determine a set of trajectory points; The global path is determined based on the set of trajectory points.
12. A parking device (700) comprising: The first point determination unit (702) is configured to determine a first point corresponding to the first position from the global path of the vehicle based on the first position of the vehicle, the global path representing the driving trajectory of the vehicle in the map during parking. The first local path determination unit (704) is configured to determine a first local path associated with the first point in the global path; as well as The parking control unit (706) is configured to control the parking of the vehicle according to the first local path.
13. An electronic device, comprising: At least one processor; as well as A memory coupled to the at least one processor and having instructions stored thereon, which, when executed by the at least one processor, cause the device to perform the method according to any one of claims 1-11.
14. A vehicle comprising the electronic device according to claim 13.
15. A computer program product having stored computer-executable instructions thereon, wherein the computer-executable instructions are executed by a processor to implement the method according to any one of claims 1 to 11.