Method, device, controller and vehicle for processing obstacles in automatic driving parking-out scene
By using vehicle bounding box clipping algorithms and vertex reconstruction technology, the problem of false obstacle reports caused by insufficient sensor observation in autonomous driving parking scenarios was solved, thereby improving the accuracy of obstacle information and the smoothness and success rate of parking operations.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-26
- Publication Date
- 2026-04-07
AI Technical Summary
In autonomous driving parking scenarios, the sensor's observation view is easily obstructed, resulting in insufficient observation data and false obstacle alarms, which affects the reliability of parking operations and user experience.
The vehicle bounding box clipping algorithm is adopted to detect and clip the overlapping areas between the obstacle polygons and the bounding box, and to remove false alarms that overlap with the vehicle's own space. Through vertex collection and polygon reconstruction, the effective contours of the obstacles are preserved to ensure the integrity and accuracy of the geometric information.
This effectively reduces the risk of false obstacle alarms caused by insufficient sensor observation data, ensures the accuracy of obstacle information, reduces interference from false obstacles to berthing operations, and improves the smoothness and success rate of the berthing process.
Smart Images

Figure CN121811364A_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of autonomous driving technology, and in particular relates to a method, device, controller and vehicle for handling obstacles in an autonomous driving parking scenario. Background Technology
[0002] With the rapid development of autonomous driving technology, automatic parking systems have become one of the core functions for improving driving convenience and safety. The parking exit scenario, as a crucial part of automatic parking, directly impacts the system's reliability and user experience. In the initial stage of a vehicle moving out of a parking space, the observation angle of the onboard sensors is easily obstructed, leading to insufficient observation data and false obstacle alarms. This can cause the vehicle to be blocked by false obstacles, preventing it from completing the parking exit operation properly, thus affecting the reliability of the parking system and the user experience. Summary of the Invention
[0003] This application provides an obstacle handling method, device, controller, and vehicle for autonomous driving parking scenarios, enabling autonomous vehicles to intelligently handle obstacles during the initial parking phase when sensor observation is limited, providing a more reliable and efficient parking experience.
[0004] In a first aspect, embodiments of this application provide an obstacle handling method for an autonomous driving parking scenario, including: Once it is determined that the vehicle is in the initial stage of parking out, an image of the scene where the vehicle is located is acquired. The scene image includes polygons of the vehicle and obstacles. Create a bounding box around the vehicle, with the distance between the bounding box and the vehicle within a preset range; Detect the overlap between obstacle polygons and the bounding box; When there is an overlapping area between the obstacle polygon and the bounding box, the overlapping area is removed from the obstacle polygon to obtain the polygon set. Collect the vertices of the clipped obstacle polygons from the polygon set to form a vertex set; Reconstruct obstacle polygons from the vertex set, and determine valid obstacle information based on the reconstructed obstacle polygons.
[0005] According to any of the foregoing embodiments of the first aspect of this application, before acquiring an image of the scene in which the vehicle is located when it is determined that the vehicle is in the initial stage of parking out, the method further includes: Obtain the current task type and vehicle driving data; If the current task type is parking task and the vehicle driving data meets the starting conditions, the vehicle is determined to be in the initial stage of parking.
[0006] According to any of the foregoing embodiments of the first aspect of this application, the vehicle driving data includes vehicle position and vehicle speed, and correspondingly, the vehicle driving data satisfies the starting conditions, including: If the distance between the vehicle position and the target position is less than or equal to the second threshold, and the vehicle speed is less than or equal to the third threshold, the vehicle driving data is determined to meet the starting conditions. The vehicle position is the geometric center position of the vehicle, and the target position is the geometric center position of the parking space.
[0007] According to any of the foregoing embodiments of the first aspect of this application, detecting the overlap state between the obstacle polygon and the bounding box includes: The overlap between the obstacle polygon and the bounding box is detected using at least one of the following methods: If the bounding box of the obstacle polygon does not overlap with the bounding box, then it is determined that the obstacle polygon and the bounding box do not overlap. If the center point of the bounding box is located inside the obstacle polygon, it is determined that there is an overlapping area between the obstacle polygon and the bounding box; If the vertices of the obstacle polygon are located inside the bounding box, it is determined that there is an overlapping area between the obstacle polygon and the bounding box. If any edge of the obstacle polygon intersects the bounding box, it is determined that there is an overlapping area between the obstacle polygon and the bounding box.
[0008] According to any of the foregoing embodiments of the first aspect of this application, determining that the obstacle polygon and the bounding box do not overlap when there is no overlapping area between the bounding box and the boundary box includes: The obstacle polygon and the bounding box are determined to have no overlapping region when the comparison between the bounding box coordinates of the obstacle polygon and the bounding box satisfies any of the following conditions: The minimum horizontal coordinate of the bounding box of the obstacle polygon is greater than the maximum horizontal coordinate of the bounding box. The maximum value of the horizontal coordinate of the bounding box of the obstacle polygon is less than the minimum value of the horizontal coordinate of the bounding box. The minimum vertical coordinate of the bounding box of the obstacle polygon is greater than the maximum vertical coordinate of the bounding box. The maximum value of the vertical coordinate of the bounding box of the obstacle polygon is less than the minimum value of the vertical coordinate of the bounding box.
[0009] According to any of the foregoing embodiments of the first aspect of this application, the obstacle handling method further includes: When multiple methods are used to detect the overlap between the obstacle polygon and the bounding box, if the detection result of any method shows that there is an overlapping area between the obstacle polygon and the bounding box, then it is determined that there is an overlapping area between the obstacle polygon and the bounding box.
[0010] According to any of the foregoing embodiments of the first aspect of this application, before reconstructing the obstacle polygon based on the vertex set and determining valid obstacle information based on the reconstructed obstacle polygon, the method further includes: If the vertex set is empty, the obstacle corresponding to the obstacle polygon is determined to be an invalid obstacle.
[0011] Secondly, embodiments of this application also provide an obstacle handling device for an autonomous driving parking scenario, comprising: The first acquisition module is used to acquire a scene image of the vehicle when it is determined that the vehicle is in the initial stage of parking out. The scene image includes polygons of the vehicle and obstacles. A module is created to create a bounding box around the vehicle, wherein the distance between the bounding box and the vehicle is within a preset distance range; A detection module is used to detect the overlap between the obstacle polygon and the bounding box; The clipping module, when there is an overlapping area between the obstacle polygon and the bounding box, clips the overlapping area from the obstacle polygon to obtain a polygon set; The collection module is used to collect the vertices of the clipped obstacle polygons in the polygon set to form a vertex set; The reconstruction module is used to reconstruct obstacle polygons based on the vertex set and determine valid obstacle information based on the reconstructed obstacle polygons.
[0012] Thirdly, embodiments of this application also provide a controller, which includes: a processor and a memory storing computer program instructions; When the processor executes computer program instructions, it implements any of the obstacle handling methods for the above-mentioned autonomous driving parking scenarios.
[0013] Fourthly, embodiments of this application also provide a vehicle, which includes: the obstacle handling device for the above-described autonomous driving parking scenario, or the above-described controller.
[0014] The obstacle handling method, device, controller, and vehicle for autonomous driving parking scenarios provided in this application employ a vehicle bounding box clipping algorithm. By detecting and clipping the overlapping areas of obstacle polygons and bounding boxes, it directly eliminates false alarms that overlap with the vehicle's own space, preserving the effective outline of the obstacle. This effectively reduces the risk of false alarms caused by insufficient sensor observation data. Furthermore, through vertex collection and polygon reconstruction, it ensures the integrity and accuracy of the geometric information of the clipped obstacle, avoiding the loss of real obstacle information due to clipping. This provides accurate obstacle data support for subsequent path planning and obstacle avoidance decisions, fundamentally reducing the interference of false obstacles on parking operations and preventing the vehicle from being stuck or frequently stopping due to false alarms. This significantly improves the smoothness and success rate of the parking process. Attached Figure Description
[0015] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments of this application will be briefly introduced below. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0016] Figure 1 This is a flowchart illustrating an obstacle handling method for an autonomous driving parking scenario provided in an embodiment of this application; Figure 2 This is a flowchart illustrating another obstacle handling method for an autonomous driving parking scenario provided in this application embodiment; Figure 3 This is a flowchart illustrating another obstacle handling method for an autonomous driving parking scenario provided in this application embodiment; Figure 4 This is a schematic diagram of the obstacle handling device for an autonomous driving parking scenario provided in the embodiments of this application; Figure 5 This is a schematic diagram of the controller provided in another embodiment of this application. Detailed Implementation
[0017] The features and exemplary embodiments of various aspects of this application will be described in detail below. To make the objectives, technical solutions, and advantages of this application clearer, the application will be further described in detail below with reference to the accompanying drawings and specific embodiments. It should be understood that the specific embodiments described herein are only intended to explain this application and not to limit it. For those skilled in the art, this application can be implemented without some of these specific details. The following description of the embodiments is merely to provide a better understanding of this application by illustrating examples.
[0018] It should be noted that, in this document, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising..." does not exclude the presence of additional identical elements in the process, method, article, or apparatus that includes said element.
[0019] To address the problems raised in the background technology, this application provides an obstacle handling method, device, controller, and vehicle for autonomous driving parking scenarios. It employs a vehicle bounding box clipping algorithm, which detects and clips the overlapping areas of obstacle polygons and their bounding boxes, directly eliminating false alarms that overlap with the vehicle's own space while preserving the effective outline of the obstacle. This effectively reduces the risk of false alarms due to insufficient sensor observation data. Furthermore, through vertex collection and polygon reconstruction, the integrity and accuracy of the clipped obstacle geometry information are ensured, avoiding the loss of real obstacle information caused by clipping. This provides accurate obstacle data support for subsequent path planning and obstacle avoidance decisions, fundamentally reducing the interference of false obstacles on parking operations and preventing the vehicle from being stuck or frequently stopping due to false alarms. This significantly improves the smoothness and success rate of the parking process.
[0020] The obstacle handling method for autonomous driving parking scenarios provided in the embodiments of this application will be introduced first.
[0021] Figure 1 This illustration shows a flowchart of an obstacle handling method for an autonomous driving parking scenario provided by an embodiment of this application. Figure 1 As shown, the obstacle handling method for the autonomous driving parking scenario may include the following steps: S110~S160.
[0022] S110. When it is determined that the vehicle is in the initial stage of parking, acquire the scene image of the vehicle, which includes polygons of the vehicle and obstacles.
[0023] In the initial stage of parking, the vehicle is still in the parking space. Adjacent vehicles or walls may obstruct the sensor's field of view. Moreover, the detection accuracy of sensors (such as lidar and cameras) is reduced in close-range / static scenarios, resulting in insufficient sensor observation.
[0024] This step only activates the obstacle handling method when the vehicle is determined to be in the initial stage of parking, avoiding invalid calculations in non-initial stages and allowing the algorithm to focus on false obstacles caused by insufficient sensor data.
[0025] The scene image in which the vehicle is located is a virtual image, created based on scene perception data collected by the perception system and preset vehicle data. The perception system may include at least one of image sensors (e.g., cameras), LiDAR, or millimeter-wave radar. Scene perception data includes, but is not limited to, vehicle pose information and obstacle information. Preset vehicle data may include vehicle size information. Vehicle pose data may include information such as vehicle position, heading, and attitude angles.
[0026] For example, a vehicle in a scene image is created based on vehicle pose information and vehicle data, and obstacles in a scene image are created based on obstacle information, represented in the form of "obstacle polygons".
[0027] S120. Create a bounding box around the vehicle, with the distance between the bounding box and the vehicle within a preset range.
[0028] In this step, a bounding box is created within the image scene, using the vehicle's body boundary as a reference, and within a preset distance range of the vehicle. The vehicle is located within the bounding box, and the distance between the vehicle and the bounding box is within the preset distance range. The bounding box is used to clip false obstacle portions within the obstacle polygon, thereby reducing the risk of false detection.
[0029] As an example, the preset distance range is 0.1m to 0.25m. Controlling the distance between the vehicle and the enclosure box within an appropriate range takes into account both the uncertainty of vehicle movement and the limitations of sensor accuracy. This avoids incomplete false alarm filtering or loss of effective obstacle information due to improper enclosure box size, achieving a balance between safety redundancy and recognition accuracy.
[0030] S130, Detect the overlap between the obstacle polygon and the bounding box.
[0031] In this step, the overlap between the obstacle polygon and the bounding box is detected. Theoretically, the area inside the bounding box should not overlap with the valid obstacle polygon. If there is an overlap between the obstacle polygon and the bounding box, that is, if the vehicle passes through the obstacle, this situation is impossible. This indicates that there is a false obstacle part in the obstacle polygon. The overlapping area is the false obstacle area. Accordingly, S140 is executed to cut off the overlapping area from the obstacle polygon.
[0032] S140. When there is an overlapping area between the obstacle polygon and the bounding box, the overlapping area is removed from the obstacle polygon to obtain a polygon set.
[0033] In this step, by cropping the overlapping area between the obstacle polygon and the bounding box, the false obstacle portion overlapping with the vehicle is directly removed, retaining the valid portion of the obstacle polygon and preventing the vehicle from being blocked by false obstacles. The cropped obstacle polygon is stored in a polygon set.
[0034] S150. Collect the vertices of the clipped obstacle polygons in the polygon set to form a vertex set.
[0035] In this step, all clipped obstacle polygons are traversed, and all vertices of the obstacle variants are collected and merged into a single vertex set (i.e., a vertex set). This vertex set fully preserves the geometric information of the clipped obstacle polygons, providing all the necessary geometric data for subsequent obstacle polygon reconstruction.
[0036] S160. Reconstruct the obstacle polygon based on the vertex set, and determine the valid obstacle information based on the reconstructed obstacle polygon.
[0037] In this step, the obstacle polygon is reconstructed using the vertices in the vertex set. This ensures the geometric validity of the obstacle after clipping while preserving its original outline features, preventing the omission of true outline features due to clipping, and providing accurate obstacle information for subsequent path planning and obstacle avoidance decisions.
[0038] The obstacle handling method for autonomous driving parking scenarios provided in this application adopts a vehicle bounding box clipping algorithm. By detecting and clipping the overlapping areas of obstacle polygons and bounding boxes, it directly eliminates false alarms that overlap with the vehicle's own space, preserving the effective outline of the obstacle. This effectively reduces the risk of false alarms caused by insufficient sensor observation data. Furthermore, through vertex collection and polygon reconstruction, it ensures the integrity and accuracy of the geometric information of the clipped obstacle, avoiding the loss of real obstacle information due to clipping. This provides accurate obstacle data support for subsequent path planning and obstacle avoidance decisions, fundamentally reducing the interference of false obstacles on parking operations, avoiding the problem of the vehicle being stuck or frequently stopping due to false alarms, and significantly improving the smoothness and success rate of the parking process.
[0039] In one embodiment, such as Figure 2 As shown, prior to S110, the obstacle handling method for the autonomous driving parking scenario may also include the following steps: S171~S172.
[0040] S171. Obtain the current task type and vehicle driving data.
[0041] S172. If the current task type is parking task and the vehicle driving data meets the starting conditions, determine that the vehicle is in the initial stage of parking.
[0042] The task types can include parking entry tasks and parking exit tasks. As an example, parking exit tasks can include perpendicular parking exit tasks and parallel parking exit tasks. A perpendicular parking exit task refers to a parking method where the length of the parking space is perpendicular to the direction of the road where vehicles travel. A parallel parking exit task refers to a parking method where the length of the parking space is parallel to the direction of the road where vehicles travel.
[0043] In this embodiment, by using the dual constraints of the current task type and driving data, the initial stage of parking can be accurately identified. The obstacle handling method is only activated in the initial stage of parking when sensor observation data is limited and special handling is required. This avoids the invalid operation of the obstacle handling method in scenarios such as parking or normal driving, reduces the computing power consumption of the vehicle system, helps improve the overall operating efficiency, and also improves the intelligence level of the system.
[0044] In one embodiment, vehicle driving data includes vehicle position and vehicle speed. Accordingly, "vehicle driving data meets starting conditions" may include the following steps: determining that vehicle driving data meets starting conditions when the distance between the vehicle position and the target position is less than or equal to a second threshold and the vehicle speed is less than or equal to a third threshold.
[0045] Wherein, vehicle position is the geometric center of the vehicle, and target position is the geometric center of the parking space.
[0046] As an example, the second threshold ranges from 1m to 3m. For instance, the distance between the vehicle's location and the target location is less than or equal to 2m.
[0047] As an example, the third threshold ranges from 0.01 m / s to 0.1 m / s. For instance, the vehicle speed is less than or equal to 0.05 m / s.
[0048] In this embodiment, the initial parking state of the vehicle in the parking space is determined based on the distance between the center of the vehicle assembly and the geometric center of the parking space being less than or equal to a second threshold; the vehicle speed is determined to be less than a third threshold, i.e., close to a stationary speed; when the above conditions are met simultaneously, the vehicle is determined to be in the starting phase, thus satisfying the starting conditions. Combined with the fact that the current task type is a parking exit task, the initial parking exit phase scenario can be accurately identified, and the obstacle handling method is only activated in the initial parking exit phase. This avoids invalid execution of the obstacle handling method in scenarios such as parking in or normal driving, reducing the computational power consumption of the onboard system and improving overall operating efficiency.
[0049] In one embodiment, Figure 1 S130 may include the following steps: detecting the overlap between the obstacle polygon and the bounding box using at least one of the following methods: If the bounding box of the obstacle polygon does not overlap with the bounding box, then it is determined that the obstacle polygon and the bounding box do not overlap. If the center point of the bounding box is located inside the obstacle polygon, it is determined that there is an overlapping area between the obstacle polygon and the bounding box; If the vertices of the obstacle polygon are located inside the bounding box, it is determined that there is an overlapping area between the obstacle polygon and the bounding box. If any edge of the obstacle polygon intersects the bounding box, it is determined that there is an overlapping area between the obstacle polygon and the bounding box.
[0050] In this embodiment, the four detection methods mentioned above can be summarized as bounding box exclusion detection, bounding box center point inclusion detection, polygon vertex inclusion detection, and line segment intersection detection.
[0051] Bounding box exclusion detection: By comparing the bounding boxes of obstacle polygons and bounding boxes, it quickly eliminates cases where there is obvious non-overlap. If the bounding box of an obstacle polygon does not overlap with the bounding box of the bounding box, then the two cannot overlap. The bounding box exclusion detection method has an efficient pre-screening mechanism, avoiding complex geometric calculations.
[0052] As an example, "determining that the obstacle polygon and the bounding box do not overlap when there is no overlap between the bounding box and the bounding box" may include the following steps: Determining that the obstacle polygon and the bounding box do not overlap is achieved when the comparison result between the bounding box coordinates of the obstacle polygon and the bounding box coordinates satisfies any of the following conditions: The minimum horizontal coordinate of the bounding box of the obstacle polygon is greater than the maximum horizontal coordinate of the bounding box. The maximum value of the horizontal coordinate of the bounding box of the obstacle polygon is less than the minimum value of the horizontal coordinate of the bounding box. The minimum vertical coordinate of the bounding box of the obstacle polygon is greater than the maximum vertical coordinate of the bounding box. The maximum value of the vertical coordinate of the bounding box of the obstacle polygon is less than the minimum value of the vertical coordinate of the bounding box.
[0053] For example, the bounding box coordinates of the obstacle polygon include the minimum lateral coordinate P. min_x Horizontal coordinate maximum value P max_x Minimum value of vertical coordinate P min_y and the maximum value of the vertical coordinate P max_y The bounding box coordinates include the minimum horizontal coordinate B. min_x Maximum horizontal coordinate B max_x Minimum value of vertical coordinate B min_y and the maximum value of the vertical coordinate B max_yAccordingly, the criterion for determining that the obstacle polygon and the bounding box do not overlap is: satisfying P min_x >B max_x P max_x <B min_x P min_y >B max_y and P max_y <B min_y Any one of them.
[0054] In this embodiment, the judgment condition of non-overlapping bounding boxes is transformed into specific comparison rules of horizontal and vertical coordinates, which avoids false exclusion or omission due to unclear bounding box judgment criteria, effectively filters out scenarios that do not require subsequent precise detection, and further improves the overall detection efficiency.
[0055] Bounding box center point inclusion detection: This checks whether the center point of the bounding box is inside the polygon. If the center point of the bounding box is inside the obstacle polygon, it indicates that there must be an overlapping area between the two. Bounding box center point inclusion detection provides sufficient conditions for overlap and can quickly determine the overlap state between the bounding box and the obstacle polygon.
[0056] Polygon vertex inclusion detection: This checks whether any vertex of an obstacle polygon is inside its bounding box. If a vertex of the obstacle polygon is inside its bounding box, it indicates that the two are in an overlapping region. Polygon vertex inclusion detection provides an alternative method for determining overlap, increasing the comprehensiveness of the detection.
[0057] Line segment intersection detection: By traversing the intersection of each edge of the obstacle polygon with the bounding box, it determines whether there is an overlapping region between the obstacle polygon and the bounding box. If any edge intersects the bounding box, it is determined that there is an overlapping region between the obstacle polygon and the bounding box. Line segment detection provides the most accurate judgment of overlap status and can handle various complex set relationships.
[0058] As an example, a line segment detection method is used to detect the overlap between the obstacle polygon and the bounding box. The obstacle polygon consists of n vertices, which are numbered sequentially, i.e., P. Points [1]~P Points [n], an edge of the obstacle polygon can be determined based on two adjacent vertices. By traversing each edge of the obstacle polygon, it is determined whether each edge intersects with the bounding box. If any edge intersects with the bounding box, it is determined that there is an overlapping area between the obstacle polygon and the bounding box.
[0059] This embodiment provides multiple detection methods to detect whether obstacle polygons overlap with bounding boxes. The bounding box exclusion detection method can quickly eliminate non-overlapping cases without complex geometric calculations, achieving efficient pre-screening and significantly reducing subsequent computation. Three precise detection methods—bounding box center point inclusion detection, polygon vertex inclusion detection, and line segment intersection detection—cover different geometric positional relationships, solving complex geometric relationships that are difficult for a single detection method to handle. This improves the robustness and reliability of overlap detection, providing accurate prerequisites for subsequent clipping processing.
[0060] In one embodiment, the obstacle handling method may further include the following steps: when multiple methods are used to detect the overlap between the obstacle polygon and the bounding box, if the detection result of any method indicates that there is an overlapping area between the obstacle polygon and the bounding box, then determine that there is an overlapping area between the obstacle polygon and the bounding box.
[0061] In this embodiment, multiple methods are used to detect the overlap between obstacle polygons and bounding boxes. The results from these multiple detection methods are fused. If any one of these methods indicates an overlap between the obstacle polygon and the bounding box, then an overlap is confirmed. This maximizes coverage of various overlapping scenarios, avoids misjudgments due to conflicting results from multiple detection methods, and further improves the reliability of overlap detection. Furthermore, even if some detection methods fail due to abnormal sensor data, overlap determination can still be completed using other detection methods, enhancing the system's fault tolerance.
[0062] In some embodiments, prior to S160, the method may further include S180, such as... Figure 3 As shown.
[0063] S180. When the vertex set is empty, the obstacle corresponding to the obstacle polygon is determined to be an invalid obstacle.
[0064] In this embodiment, an empty set detection is performed on the vertex set. If the vertex set is empty, it indicates that the obstacle polygon is completely covered by the bounding box, and the obstacle corresponding to the obstacle polygon is a false obstacle falsely reported by the sensor. Therefore, it is determined as an invalid obstacle and removed, eliminating the need for subsequent polygon reconstruction steps. This reduces unnecessary computation and concentrates computing power on processing real and valid obstacle information, reducing the consumption of processing invalid data and improving the overall system's operating efficiency and stability. If the vertex set is not empty, step S160 is executed. After eliminating completely falsely reported obstacles, path planning or obstacle avoidance decisions are made based on the reconstructed real obstacle information. This avoids interference from false obstacles with the decision-making logic, further reducing the risk of vehicles getting stuck or frequently stopping due to false alarms and improving the smoothness of the parking process.
[0065] Based on the obstacle handling method for autonomous driving parking scenarios provided in the above embodiments, this application also provides specific implementation methods for obstacle handling devices for autonomous driving parking scenarios. Please refer to the following embodiments.
[0066] First see Figure 4 The obstacle handling device 200 for autonomous driving parking scenarios provided in this application embodiment may include: a first acquisition module 201, a creation module 202, a detection module 203, a trimming module 204, a collection module 205, and a reconstruction module 206.
[0067] The first acquisition module 201 is used to acquire a scene image of the vehicle when it is determined that the vehicle is in the initial stage of parking. The scene image includes polygons of the vehicle and obstacles.
[0068] A creation module 202 is used to create a bounding box around the vehicle, wherein the distance between the bounding box and the vehicle is within a preset distance range.
[0069] The detection module 203 is used to detect the overlap between the obstacle polygon and the bounding box.
[0070] The clipping module 204, when there is an overlapping area between the obstacle polygon and the bounding box, clips the overlapping area from the obstacle polygon to obtain a polygon set.
[0071] The collection module 205 is used to collect the vertices of the clipped obstacle polygons in the polygon set to form a vertex set.
[0072] The reconstruction module 206 is used to reconstruct obstacle polygons based on the vertex set and determine valid obstacle information based on the reconstructed obstacle polygons.
[0073] The obstacle handling device for autonomous driving parking scenarios provided in this application embodiment employs a vehicle bounding box clipping algorithm. By detecting and clipping the overlapping areas of obstacle polygons and bounding boxes, it directly eliminates false alarms that overlap with the vehicle's own space, preserving the effective outline of the obstacle. This effectively reduces the risk of false alarms caused by insufficient sensor observation data. Furthermore, through vertex collection and polygon reconstruction, it ensures the integrity and accuracy of the geometric information of the clipped obstacle, avoiding the loss of real obstacle information due to clipping. This provides accurate obstacle data support for subsequent path planning and obstacle avoidance decisions, fundamentally reducing the interference of false obstacles on parking operations and preventing the vehicle from being stuck or frequently stopping due to false alarms. This significantly improves the smoothness and success rate of the parking process.
[0074] In one embodiment, the apparatus may further include a second acquisition module and a determination module.
[0075] The second acquisition module is used to acquire the current task type and vehicle driving data.
[0076] The determination module is used to determine whether the vehicle is in the initial stage of parking when the current task type is parking task and the vehicle driving data meets the starting conditions.
[0077] In one embodiment, the vehicle driving data includes vehicle position and vehicle speed. Accordingly, the determining module is further configured to: determine that the vehicle driving data meets the starting conditions when the distance between the vehicle position and the target position is less than or equal to a second threshold and the vehicle speed is less than or equal to a third threshold, wherein the vehicle position is the geometric center position of the vehicle and the target position is the geometric center position of the parking space.
[0078] In one embodiment, the detection module is further configured to detect the overlap state of the obstacle polygon and the bounding box using at least one of the following methods: determining that the obstacle polygon and the bounding box do not overlap when there is no overlap between the bounding box of the obstacle polygon and the bounding box; determining that there is an overlap between the obstacle polygon and the bounding box when the center point of the bounding box is located inside the obstacle polygon; determining that there is an overlap between the obstacle polygon and the bounding box when a vertex of the obstacle polygon is located inside the bounding box; and determining that there is an overlap between the obstacle polygon and the bounding box when any edge of the obstacle polygon intersects with the bounding box.
[0079] In one embodiment, the detection module is further configured to determine that there is no overlapping area between the obstacle polygon and the bounding box when the comparison result between the bounding box coordinates of the obstacle polygon and the bounding box coordinates satisfies any of the following conditions: the minimum horizontal coordinate of the obstacle polygon's bounding box is greater than the maximum horizontal coordinate of the bounding box's bounding box; the maximum horizontal coordinate of the obstacle polygon's bounding box is less than the minimum horizontal coordinate of the bounding box's bounding box; the minimum vertical coordinate of the obstacle polygon's bounding box is greater than the maximum vertical coordinate of the bounding box's bounding box; and the maximum vertical coordinate of the obstacle polygon's bounding box is less than the minimum vertical coordinate of the bounding box's bounding box.
[0080] In one embodiment, the detection module is further configured to: when multiple methods are used to detect the overlap state of the obstacle polygon and the bounding box, if the detection result of any method indicates that the obstacle polygon and the bounding box have an overlapping area, determine that the obstacle polygon and the bounding box have an overlapping area.
[0081] In one embodiment, the device further includes an empty set verification module.
[0082] The empty set verification module is used to identify obstacles corresponding to obstacle polygons as invalid obstacles when the vertex set is empty.
[0083] Figure 5 A schematic diagram of the hardware structure of the controller provided in an embodiment of this application is shown.
[0084] The controller may include a processor 301 and a memory 302 storing computer program instructions.
[0085] Specifically, the processor 301 may include a central processing unit (CPU), an application specific integrated circuit (ASIC), or one or more integrated circuits that can be configured to implement the embodiments of this application.
[0086] Memory 302 may include mass storage for data or instructions. For example, and not limitingly, memory 302 may include a hard disk drive (HDD), floppy disk drive, flash memory, optical disk, magneto-optical disk, magnetic tape, or Universal Serial Bus (USB) drive, or a combination of two or more of these. Where appropriate, memory 302 may include removable or non-removable (or fixed) media. Where appropriate, memory 302 may be internal or external to the controller. In a particular embodiment, memory 302 is a non-volatile solid-state memory.
[0087] Memory may include read-only memory (ROM), random access memory (RAM), disk storage media devices, optical storage media devices, flash memory devices, and electrical, optical, or other physical / tangible memory storage devices. Therefore, typically, memory includes one or more tangible (non-transitory) computer-readable storage media (e.g., memory devices) encoded with software including computer-executable instructions, and when the software is executed (e.g., by one or more processors), it is operable to perform the operations described with reference to the methods according to one aspect of this disclosure.
[0088] The processor 301 reads and executes computer program instructions stored in the memory 302 to implement any of the obstacle handling methods for autonomous driving parking scenarios in the above embodiments.
[0089] In one example, the controller may also include a communication interface 303 and a bus 304. Wherein, as... Figure 5 As shown, the processor 301, memory 302, and communication interface 303 are connected through bus 304 and complete communication with each other.
[0090] The communication interface 303 is mainly used to realize communication between various modules, devices, units and / or equipment in the embodiments of this application.
[0091] Bus 304 includes hardware, software, or both, that couples components of an online data flow metering device together. For example, and not limitingly, the bus may include an Accelerated Graphics Port (AGP) or other graphics bus, an Enhanced Industry Standard Architecture (EISA) bus, a Front Side Bus (FSB), a Hypertext Transfer (HT) interconnect, an Industry Standard Architecture (ISA) bus, an Infinite Bandwidth Interconnect, a Low Pin Count (LPC) bus, a memory bus, a Micro Channel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express (PCI-X) bus, a Serial Advanced Technology Attachment (SATA) bus, a Video Electronics Standards Association Local Bus (VESA Local Bus, VLB) bus, or other suitable buses, or a combination of two or more of these. Where appropriate, bus 304 may include one or more buses. Although specific buses are described and illustrated in the embodiments of this application, this application considers any suitable bus or interconnection.
[0092] Furthermore, in conjunction with the obstacle handling method for the autonomous driving parking scenario in the above embodiments, this application embodiment can provide a computer storage medium for implementation. The computer storage medium stores computer program instructions; when these computer program instructions are executed by a processor, they implement any one of the obstacle handling methods for the autonomous driving parking scenario in the above embodiments.
[0093] This application also provides a computer program product, including a computer program that, when executed by a processor, implements any of the obstacle handling methods for autonomous driving parking scenarios described in the above embodiments.
[0094] Based on the above embodiments, this application also provides a vehicle, which includes: the obstacle handling device for the above-described autonomous driving parking scenario, or the above-described controller.
[0095] It should be noted that the vehicle provided in this application embodiment also includes all components known to those skilled in the art, such as perception systems and various vehicle sensors, which are not limited here.
[0096] It should be clarified that this application is not limited to the specific configurations and processes described above and shown in the figures. For the sake of brevity, detailed descriptions of known methods are omitted here. In the above embodiments, several specific steps are described and shown as examples. However, the method process of this application is not limited to the specific steps described and shown. Those skilled in the art can make various changes, modifications, and additions, or change the order of steps, after understanding the spirit of this application.
[0097] The functional blocks shown in the above-described structural diagram can be implemented as hardware, software, firmware, or a combination thereof. When implemented in hardware, they can be, for example, electronic circuits, application-specific integrated circuits (ASICs), appropriate firmware, plug-ins, function cards, etc. When implemented in software, the elements of this application are programs or code segments used to perform the required tasks. Programs or code segments can be stored on a machine-readable medium or transmitted over a transmission medium or communication link via data signals carried on a carrier wave. "Machine-readable medium" can include any medium capable of storing or transmitting information. Examples of machine-readable media include electronic circuits, semiconductor memory devices, ROM, flash memory, erasable-ROM (EROM), floppy disks, CD-ROMs, optical disks, hard disks, fiber optic media, radio frequency (RF) links, etc. Code segments can be downloaded via computer networks such as the Internet, intranets, etc.
[0098] It should also be noted that the exemplary embodiments mentioned in this application describe methods or systems based on a series of steps or apparatus. However, this application is not limited to the order of the above steps; that is, the steps can be performed in the order mentioned in the embodiments, or in a different order, or several steps can be performed simultaneously.
[0099] The aspects of this disclosure have been described above 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 in the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that these instructions, executable via the processor of the computer or other programmable data processing apparatus, enable the implementation of the functions / actions specified in one or more blocks of the flowchart illustrations and / or block diagrams. Such a processor can be, but is not limited to, a general-purpose processor, a special-purpose processor, a special application processor, or a field-programmable logic circuit. It is also understood that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can also be implemented by special-purpose hardware performing the specified functions or actions, or can be implemented by a combination of special-purpose hardware and computer instructions.
[0100] The above description is merely a specific implementation of this application. Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, modules, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here. It should be understood that the protection scope of this application is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the technical scope disclosed in this application, and these modifications or substitutions should all be covered within the protection scope of this application.
Claims
1. An obstacle handling method for an autonomous driving parking scenario, characterized in that, include: When it is determined that the vehicle is in the initial stage of parking out, an image of the scene where the vehicle is located is acquired, the scene image including vehicle and obstacle polygons; Create a surrounding box around the vehicle, with the distance between the surrounding box and the vehicle within a preset distance range; Detect the overlap between the obstacle polygon and the bounding box; If there is an overlapping area between the obstacle polygon and the bounding box, the overlapping area is removed from the obstacle polygon to obtain a polygon set; Collect the vertices of the clipped obstacle polygons from the polygon set to form a vertex set; Reconstruct obstacle polygons based on the vertex set, and determine valid obstacle information based on the reconstructed obstacle polygons.
2. The obstacle handling method according to claim 1, characterized in that, Before acquiring the scene image of the vehicle when it is determined that the vehicle is in the initial stage of parking out, the method further includes: Obtain the current task type and vehicle driving data; If the current task type is a parking task and the vehicle driving data meets the starting conditions, the vehicle is determined to be in the initial stage of parking.
3. The obstacle handling method according to claim 2, characterized in that, The vehicle driving data includes vehicle position and vehicle speed. Accordingly, the vehicle driving data satisfies the starting conditions, including: If the distance between the vehicle position and the target position is less than or equal to a second threshold, and the vehicle speed is less than or equal to a third threshold, the vehicle driving data is determined to meet the starting conditions. The vehicle position is the geometric center position of the vehicle, and the target position is the geometric center position of the parking space.
4. The obstacle handling method according to claim 1, characterized in that, The detection of the overlap between the obstacle polygon and the bounding box includes: The overlap between the obstacle polygon and the bounding box is detected using at least one of the following methods: If the bounding box of the obstacle polygon does not overlap with the bounding box, it is determined that the obstacle polygon and the bounding box do not overlap. If the center point of the bounding box is located inside the obstacle polygon, it is determined that there is an overlapping area between the obstacle polygon and the bounding box; If the vertices of the obstacle polygon are located inside the bounding box, it is determined that the obstacle polygon and the bounding box have an overlapping area. If any edge of the obstacle polygon intersects with the bounding box, it is determined that the obstacle polygon and the bounding box have an overlapping area.
5. The obstacle handling method according to claim 4, characterized in that, Determining that the obstacle polygon and the bounding box do not overlap when there is no overlap between their bounding boxes includes: The obstacle polygon and the bounding box are determined to have no overlapping area when the comparison between the bounding box coordinates of the obstacle polygon and the bounding box satisfies any of the following conditions: The minimum horizontal coordinate of the bounding box of the obstacle polygon is greater than the maximum horizontal coordinate of the bounding box. The maximum value of the horizontal coordinate of the bounding box of the obstacle polygon is less than the minimum value of the horizontal coordinate of the bounding box. The minimum value of the longitudinal coordinate of the bounding box of the obstacle polygon is greater than the maximum value of the longitudinal coordinate of the bounding box. The maximum value of the longitudinal coordinate of the bounding box of the obstacle polygon is less than the minimum value of the longitudinal coordinate of the bounding box.
6. The obstacle handling method according to claim 4, characterized in that, The method further includes: When multiple methods are used to detect the overlap between the obstacle polygon and the bounding box, if the detection result of any method indicates that the obstacle polygon and the bounding box have an overlapping area, then it is determined that the obstacle polygon and the bounding box have an overlapping area.
7. The obstacle handling method according to any one of claims 1-6, characterized in that, Before reconstructing the obstacle polygon based on the vertex set and determining valid obstacle information based on the reconstructed obstacle polygon, the method further includes: If the vertex set is empty, the obstacle corresponding to the obstacle polygon is determined to be an invalid obstacle.
8. An obstacle handling device for an autonomous driving parking scenario, characterized in that, include: The first acquisition module is used to acquire a scene image of the vehicle when it is determined that the vehicle is in the initial stage of parking out. The scene image includes polygons of the vehicle and obstacles. A module is created to create a bounding box around the vehicle, wherein the distance between the bounding box and the vehicle is within a preset distance range; A detection module is used to detect the overlap between the obstacle polygon and the bounding box; The clipping module, when there is an overlapping area between the obstacle polygon and the bounding box, clips the overlapping area from the obstacle polygon to obtain a polygon set; The collection module is used to collect the vertices of the clipped obstacle polygons in the polygon set to form a vertex set; The reconstruction module is used to reconstruct obstacle polygons based on the vertex set and determine valid obstacle information based on the reconstructed obstacle polygons.
9. A controller, characterized in that, The controller includes: a processor and a memory storing computer program instructions; When the processor executes the computer program instructions, it implements the obstacle handling method for an autonomous driving parking scenario as described in any one of claims 1-7.
10. A vehicle, characterized in that, The vehicle includes: an obstacle handling device for an autonomous parking scenario as described in claim 8, or a controller as described in claim 9.