Method and apparatus for assisting parking
Patent Information
- Application Number
- CN202211493929.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-11-25
- Publication Date
- 2026-08-21
- Estimated Expiration
- 2042-11-25
AI Technical Summary
然而真实的停车场景多样且复杂,例如,既包括线车位也包括空间车位,既包括垂直水平车位也包括斜列车位
[0008] Based on this disclosure, vehicles can be accurately identified and parked in angled parking spaces.
Smart Images

Figure CN115771504B_ABST
Abstract
Description
Technical Field
[0001] The exemplary embodiments disclosed herein generally relate to the field of vehicle control, and particularly to a method, apparatus, electronic device, computer storage medium, and computer program product for assisting parking. Background Technology
[0002] With the development of the times, the number of cars is increasing year by year, and correspondingly, parking has become one of the main problems troubling car owners. Automatic parking technology can assist drivers in accurately parking their vehicles in designated spaces, thus greatly improving the driver's user experience. However, real-world parking scenarios are diverse and complex, including both linear and spatial parking spaces, as well as perpendicular, horizontal, and angled parking spaces. How to make automatic parking technology cover multiple scenarios, especially applicable to angled parking spaces, is a problem that urgently needs to be solved. Summary of the Invention
[0003] In a first aspect of this disclosure, a method for assisted parking is provided. The method includes: during vehicle operation, capturing distance data between the vehicle and surrounding objects using a distance sensor equipped with the vehicle; detecting a first set of obstacles defining parking spaces based on the distance data; determining the extent of the parking space based at least in part on the detected first set of obstacles; and controlling the parking of the vehicle by detecting the angle of the parking space using the distance sensor during the parking process.
[0004] In a second aspect of this disclosure, an auxiliary parking device is provided, comprising: a distance data acquisition module configured to capture distance data between the vehicle and surrounding objects using a distance sensor equipped with the vehicle during vehicle operation; an obstacle detection module configured to detect a first set of obstacles defining parking spaces based on the distance data; a parking space range determination module configured to determine the range of the parking space based at least in part on the detected first set of obstacles; and a slant determination module configured to detect the slant of the parking space using the distance sensor during the vehicle parking in the parking space, so as to control the parking of the vehicle.
[0005] In a third aspect of this disclosure, an electronic device is provided, comprising: a memory and a processor; wherein the memory is configured to store one or more computer instructions, wherein the one or more computer instructions are executed by the processor to implement the method according to the first or second aspect of this disclosure.
[0006] In a fourth aspect of this disclosure, a computer-readable storage medium is provided having one or more computer instructions stored thereon, wherein the one or more computer instructions are executed by a processor to implement the method according to a first aspect of this disclosure.
[0007] In a fifth aspect of this disclosure, a computer program product is provided, comprising computer-executable instructions, wherein the computer-executable instructions, when executed by a processor, implement the method according to a first aspect of this disclosure.
[0008] Based on this disclosure, vehicles can be accurately identified and parked in angled parking spaces. Attached Figure Description
[0009] 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:
[0010] Figure 1 A schematic diagram is shown of an example environment in which embodiments of the present disclosure may be implemented;
[0011] Figure 2 A flowchart illustrating an example process for assisted parking according to some embodiments of the present disclosure is shown;
[0012] Figure 3 A schematic diagram illustrating the principle of detecting inclined train positioning range according to some embodiments of the present disclosure is shown;
[0013] Figure 4 A flowchart illustrating an example process for detecting a first set of obstacles according to some embodiments of this disclosure is shown;
[0014] Figure 5 A flowchart is shown illustrating an example process for ranging data serialization according to some embodiments of this disclosure;
[0015] Figure 6 A schematic diagram illustrating the principle of triangulation according to some embodiments of the present disclosure is shown;
[0016] Figure 7 A flowchart illustrating an example process for obstacle clustering according to some embodiments of this disclosure is shown;
[0017] Figure 8 A schematic structural block diagram of a device for vehicle safety control according to some embodiments of the present disclosure is shown; and
[0018] Figure 9 A block diagram of an electronic device capable of implementing several embodiments of the present disclosure is shown. Detailed Implementation
[0019] 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.
[0020] 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.
[0021] In this disclosure, the collection, storage, use, processing, transmission, provision, and presentation of relevant information comply with relevant laws and regulations, do not infringe upon the privacy of others, and do not violate public order and good morals.
[0022] As discussed above, real-world parking scenarios are diverse and complex, including both linear and spatial parking spaces, as well as perpendicular and horizontal spaces and angled spaces. Parking also sometimes occurs in dimly lit environments (such as at night). These diverse and complex parking scenarios pose numerous challenges to automated parking technology.
[0023] In some scenarios, especially indoor parking lots or outdoor parking lots with many vehicles, objects around the parking space (such as walls, building supports, other vehicles, etc.) can become obstacles during the parking process. Therefore, for scenarios involving parking spaces, accurately detecting obstacles and determining the extent of the parking space is crucial for the automated parking process.
[0024] In some embodiments, the detection of parking spaces can be based on ultrasonic radar. Specifically, the starting point of the parking space is determined by detecting the rising and falling edges of the ranging value sequence of the ultrasonic radar, and it is further determined whether the parking space meets the pre-configured parking space size requirements. If it does, a parking space is generated.
[0025] In some embodiments, parking space detection can be achieved using LiDAR ranging. Specifically, firstly, a set of obstacle points is determined based on the position of the LiDAR probe and the ranging value. Then, the obstacle point set is clustered to obtain the outline of the obstacles. Finally, the outline of the obstacles is used to search whether the space next to the obstacle meets the requirements of a parking space. If it does, a parking space is generated.
[0026] While the above embodiments can achieve parking space retrieval to a certain extent, they are not suitable for the complex and diverse parking scenarios in real life. For example, in the embodiment that uses ultrasonic radar to detect parking spaces, the high noise in the ultrasonic radar ranging value sequence leads to a high false detection rate on the rising and falling edges, resulting in unusable or missed parking spaces during the search process. In the embodiment that uses lidar for ranging to detect parking spaces, the error in the measured sequence values will be large when the obstacle is not aligned with the direction of the lidar probe. Furthermore, this scheme can only detect vertical and horizontal parking spaces, but cannot detect angled parking spaces. According to various embodiments of the present invention, at least some of the shortcomings of the above embodiments can be resolved.
[0027] Specifically, embodiments of this disclosure provide an assisted parking solution. This solution includes capturing distance data between the vehicle and surrounding objects using distance sensors equipped on the vehicle during vehicle operation. The solution also includes detecting a first set of obstacles defining available parking spaces based on the distance data, and determining the extent of the parking space based at least in part on the detected first set of obstacles. Furthermore, in this solution, during the vehicle's parking process, the distance sensors detect the angled arrangement of the parking space to control the vehicle's parking. In this way, during automatic parking, the vehicle can accurately detect the spatial extent of angled parking spaces, enabling automatic parking for angled parking scenarios.
[0028] The following will describe in detail various example implementations of this scheme with reference to the accompanying drawings.
[0029] Example Scenario
[0030] Figure 1 A block diagram of an example environment 100 in which embodiments of the present disclosure can be implemented is shown. (See diagram for example.) Figure 1 As shown, environment 100 may include vehicle 110. It should be understood that examples of vehicles may include, but are not limited to, taxis, commercial and non-commercial passenger cars, buses, vans, trucks, etc. The embodiments of this disclosure are not limited in this respect. Figure 1 As shown, vehicle 110 is equipped with a parking assistance device 120. In some embodiments, the parking assistance device 120 may be part of the vehicle's central control system.
[0031] In some embodiments, the vehicle 110 is equipped with one or more image acquisition devices (not shown), such as cameras. These one or more image acquisition devices can capture at least one of images and videos of the vehicle 110's driving environment. Alternatively or additionally, the vehicle 110 is also equipped with at least one sensor. Examples of sensors include, but are not limited to, lidar sensors, ultrasonic radar sensors, speed sensors, position sensors, etc.
[0032] In scenarios involving automated parking, the parking space may be angled and there may be obstacles around it, such as... Figure 1 As shown. It should be understood that examples of obstacles include, but are not limited to, walls, building supports, other vehicles, etc. In other words, an obstacle refers to any object that affects the extent of the parking space, and this disclosure is not limited in terms of the type of obstacle.
[0033] According to embodiments of this disclosure, vehicle 110 can accurately detect the spatial range of an inclined parking space, enabling automatic parking for inclined parking scenarios.
[0034] Specifically, in some embodiments, vehicle 110 may first acquire ranging data, an example of which is a sequence of ranging values from ultrasonic / LiDAR in odometer coordinates (sometimes referred to as ranging data). Based on the ranging value sequence, vehicle 110 may calculate a set of measurement points (sometimes referred to as obstacle point set) using geometric calculation methods (such as triangulation).
[0035] Furthermore, vehicle 110 can use an obstacle clustering algorithm to cluster measurement points into point clusters to obtain an obstacle list, and extract the outlines of obstacles in the obstacle list based on a contour extraction algorithm. Based on the extracted obstacle contour information, parking space detection can be achieved.
[0036] In scenarios involving angled parking spaces, during the parking search phase, the sensors of vehicle 110 (such as ultrasonic / LiDAR sensors) cannot detect obstacles on the sides and back of the angled parking space. According to some embodiments of this disclosure, during the parking process of vehicle 110 entering the angled parking space, vehicle 110 further detects and collects obstacle information on the sides and back of the angled parking space, and uses a fitting algorithm to fit the detected obstacles to obtain the side boundary lines of the parking space. This method determines the angled arrangement of the parking space.
[0037] It should be understood that Figure 1 The example implementation environment is shown only. In other words, the vehicle 110, parking space, and obstacles shown in environment 100 are merely exemplary. In other embodiments, the number and positional relationship of the vehicle 110, parking space, and obstacles may be changed. The embodiments of this disclosure are not limited in this respect.
[0038] Example process
[0039] Figure 2 A flowchart of an assisted parking process 200 according to some embodiments of the present disclosure is shown. For ease of discussion, process 200 will be referred to... Figure 1 This will be discussed in some embodiments. Method 200 may be derived from... Figure 1 The auxiliary parking device 120 of the vehicle is used to perform the operation.
[0040] In some embodiments, an ultrasonic / LiDAR sensor will be used as an example of a ranging sensor. However, it should be understood that in other embodiments, the ranging sensor can be any other sensor capable of performing ranging functions. The scope of this disclosure is not limited in this respect.
[0041] In some embodiments, a set of obstacles may include one or more obstacles, wherein each obstacle may be determined based on one or more obstacle points.
[0042] In block 210, during the movement of vehicle 110, the parking assistance device 120 uses a distance sensor equipped on vehicle 110 to capture distance data between vehicle 110 and surrounding objects. In a particular embodiment, the parking assistance device 120 uses its equipped camera and / or sensors (such as lidar sensors, ultrasonic radar sensors, speed sensors, position sensors, etc.) to capture distance data between vehicle 110 and surrounding objects.
[0043] In box 220, based on ranging data, the parking assistance device 120 detects the first set of obstacles that define available parking spaces. For clarity, see [link to relevant documentation]. Figure 3 This illustrates a schematic diagram 300 showing the principle of detecting the range of inclined train positions according to some embodiments of the present disclosure. Figure 3 In a particular embodiment, during the parking space search phase, the obstacles that the assisted parking device 120 can detect around the vehicle 110 include obstacles 360-1 to 360-4, wherein obstacles 360-1 and 360-2 are associated with the range of the angled parking space. In some embodiments, obstacles 360-1 and 360-2 may serve as examples of a first set of obstacles.
[0044] See Figure 4This illustrates a flowchart of an example process 220 of the parking assistance device 120 detecting a first set of obstacles that define a parking space available for parking. In block 222, the parking assistance device 120 spatially serializes the ranging data. In block 224, the parking assistance device 120 corrects the positions of the measurement point set (i.e., the obstacle point set). In block 226, the parking assistance device 120 performs an obstacle clustering algorithm to obtain a list of obstacles. In block 228, the parking assistance device 120 extracts the outlines of the obstacles to determine the first set of obstacles. It should be understood that... Figure 4 The process shown is merely illustrative; in other embodiments, process 220 may include more or fewer operations. For example, when the vehicle's direction of travel remains unchanged, the operation of spatially serializing the ranging data can be omitted. The various operations involved in process 220 will now be described in detail.
[0045] In some scenarios, during the parking search process, the auxiliary parking device 120 uses a ranging sensor (such as an array ultrasonic radar) to acquire distance data between the vehicle 11 and surrounding objects. However, the raw distance data acquired by the ranging sensor is output in a time sequence, which results in spatial distortion of the captured raw distance data when the vehicle 110's driving direction changes (e.g., when the vehicle 110 switches between forward and reverse). In this case, the vehicle 110 cannot obtain the correct spatial arrangement of obstacles, thus affecting the accuracy of obstacle correction. In view of this, in some embodiments, the auxiliary parking device 120 can spatially sequence the raw distance data. In a particular embodiment, during the parking search process, the auxiliary parking device 120 uses an array ultrasonic radar to acquire distance data between the vehicle 110 and surrounding objects, and calculates the coordinates of each frame of ultrasonic radar at the current vehicle position (e.g., the vehicle 110's odometer information) based on positioning information. In this way, vehicle 110 can convert the raw ultrasonic radar ranging data into spatially serialized ranging data based on the vehicle 110's odometer information.
[0046] In some embodiments, the assisted parking device 120 serializes the captured ranging data according to the spatial order of the ranging data based on the driving trajectory of the vehicle 110, and uses the serialized ranging data to detect a first group of obstacles.
[0047] In some embodiments, the assisted parking device 120 serializes the distance measurement data in spatial order based on at least one of the following: the driving direction of the vehicle 110, and the number of distance measurement data.
[0048] In some embodiments, the assisted parking device 120 constructs a first vector starting with serialized first ranging data and ending with currently unserialized ranging data, and constructs a second vector starting with serialized first ranging data and ending with serialized second ranging data. Further, the assisted parking device 120 determines the spatial order of the current ranging data with the first and / or second ranging data based on at least one of the angular and length relationships between the first and second vectors.
[0049] refer to Figure 5 This will further describe the process of spatially serializing ranging data. Figure 5 A flowchart of an example process 500 for ranging data serialization according to some embodiments of the present disclosure is shown.
[0050] like Figure 5 As shown in block 505, the auxiliary parking device 120 determines whether the number of ranging data points is greater than a threshold number, where the threshold number is a predefined value, such as 3 frames. If the number of ranging data points collected is less than the threshold number, the ranging data points collected in this instance are determined to be invalid, and the processing can be terminated.
[0051] If the number of distance measurement data points exceeds a threshold number, in block 510, the assisted parking device 120 further determines whether the rearward vehicle speed is less than a threshold speed, where the threshold speed is a predefined value, such as 10 km / h. In some embodiments, the threshold speed may be defined as the safe driving speed of vehicle 110 during automatic parking. If the rearward speed of vehicle 110 exceeds the threshold speed, a safety warning may be issued to the driver and the process may be terminated.
[0052] In block 515, the assisted parking device 120 takes the latest data frame in the buffer space as the starting point and the previous data frame as the vector endpoint to obtain a first vector; further, the assisted parking device 120 takes the latest data frame in the buffer space as the starting point and the current data frame as the vector endpoint to obtain a second vector.
[0053] In block 520, the parking assistance device 120 calculates the angle between the first vector and the second vector, and in block 525 determines whether the angle between the first vector and the second vector is less than a threshold angle. If the angle between the first vector and the second vector is greater than the threshold angle (e.g., when the vehicle 110 turns), then in block 535, the current data frame is stored as the latest data frame in the buffer space. If the angle between the first vector and the second vector is less than the threshold angle, then in block 530, the projection vector of the second vector onto the first vector is calculated, and the ratio of the projection vector to the first vector is further calculated.
[0054] In box 540, the parking assistance device 120 determines whether the ratio of the projection vector to the first vector is less than 1. If it is less than 1, in box 545, the parking assistance device 120 inserts the current data frame to the right of the previous data frame; otherwise, in box 550, the parking assistance device 120 inserts the current data frame to the left of the previous data frame.
[0055] In this way, the collected ranging data will be reordered according to the spatial order of the ranging data, thereby improving the accuracy of the measurement point set (i.e., the obstacle point set).
[0056] Next, we will discuss how to determine the first group of obstacles. In some embodiments, the assisted parking device 120 determines a set of measurement points based on ranging data and clusters the set of measurement points to obtain a list of obstacles. Further, the assisted parking device 120 extracts the outlines of obstacles in the list of obstacles and determines the first group of obstacles based on the extracted outlines.
[0057] like Figure 4 As shown, after the parking assistance device 120 spatially serializes the ranging data, in box 224, the vehicle 110 corrects the position of the measurement point set (i.e., the obstacle point set).
[0058] In some embodiments, the vehicle 110 corrects the position of the measurement point set (i.e., the obstacle point set) by triangulation based on spatially sequenced ranging data.
[0059] In one specific embodiment, the parking assistance device 120 determines whether a triangular relationship exists between the vehicle 110's travel distance (denoted as s) between two consecutive data frames, the ultrasonic ranging value of the previous frame, and the ultrasonic ranging value of the current frame. If a triangle is formed, the angle information is determined using the law of cosines. Further, the position of the obstacle is calculated based on the position of the ultrasonic radar. See also... Figure 6 The diagram 600 illustrates a triangulation principle according to some embodiments of the present disclosure. Figure 6 In a specific embodiment, C1 represents the position of vehicle 110 when the previous frame of ultrasonic radar data is captured, C2 represents the position of vehicle 110 when the current frame of ultrasonic radar data is captured, s represents the travel distance of vehicle 110 between the two frames, a represents the ultrasonic ranging value of the current frame (i.e., the distance between vehicle 110 and obstacle 620), and b represents the ultrasonic ranging value of the previous frame (i.e., the distance between vehicle 110 and obstacle 620). In this way, the position of each obstacle point can be accurately determined.
[0060] Next, in box 226, the assisted parking device 120 can cluster the set of measurement points to obtain a list of obstacles, i.e., obstacle clustering. In some embodiments, the assisted parking device 120 uses a density-based spatial clustering of applications with noise (DBCAN) algorithm to group obstacle points belonging to the same class into point clusters, while filtering out noisy obstacle points.
[0061] See Figure 7 The diagram illustrates a flowchart 700 of an example process for obstacle clustering according to some embodiments of the present disclosure. In block 710, the parking assistance device 120 determines whether all measurement point sets (i.e., obstacle point sets) have been traversed. If all measurement point sets have been traversed, the vehicle can output an obstacle list in block 750; otherwise, in block 720, the parking assistance device 120 calculates the adjacent points of each obstacle based on a neighborhood parameter (search radius). Further, in block 730, the parking assistance device 120 determines core points based on a neighborhood parameter (minimum number of adjacent points for a core point). Finally, in block 740, the parking assistance device 120 determines the density-reachable samples for each core point and clusters them into point clusters.
[0062] In some embodiments, the horizontal search radius and the vertical search radius of the DBCAN algorithm can be set separately. Furthermore, in some embodiments, the minimum number of neighboring points of the core points in the DBSCAN clustering algorithm can be determined based on the actual detection performance of the ultrasonic radar.
[0063] See also Figure 4 After obstacle clustering is completed, the parking assistance device 120 can extract the outlines of the obstacles in box 228. In some embodiments, the Graham scan algorithm can be used to extract the clustered point clusters to form the obstacle outlines. Specifically, for each obstacle in the obstacle list, it includes multiple corresponding obstacle points. Among these multiple corresponding obstacle points, obstacle point P0 with the minimum value in a predetermined reference coordinate is selected, obstacle point p0 is saved, and obstacle point p0 is removed from the multiple corresponding obstacle points. The remaining obstacle points are sorted in ascending order according to the angle between the line connecting them to obstacle point p0 and another reference coordinate axis. Further, obstacle point p0 and obstacle point p1 with the smallest angle are added to the result set, where obstacle p0, obstacle p1, and obstacle point Pn with the largest angle are necessarily included in the result set.
[0064] Iterate through all the corresponding obstacle points in the result set. If an obstacle point is to the right of the last obstacle point in the result set, remove the last obstacle point from the result set (i.e., iteratively delete obstacle points from the result set). Conversely, if an obstacle point is to the left of the last obstacle point in the result set, add it to the result set and continue iterating to the next obstacle point. When all the corresponding obstacle points have been iterated through, the obstacle points in the result set constitute the outline points of the obstacle, where the obstacle points are arranged in counter-clockwise order. For easier understanding, see [link to documentation]. Figure 3 Among them, obstacles 360-1 to 360-4 can be the extracted obstacle outlines.
[0065] Continue to refer to Figure 2 After detecting the first set of obstacles, in box 230, the assisted parking device 120 can determine the range of the parking space based at least in part on the detected first set of obstacles.
[0066] In some embodiments, the assisted parking device 120 determines a second set of obstacles that define the depth value of the parking space based on a distance sensor, and determines the range of the parking space based on at least one of the following: spatial location information of the first set of obstacles, spatial location information of the second set of obstacles, the positional relationship between the first set of obstacles and the second set of obstacles, and the yaw angle of the vehicle 110.
[0067] In some embodiments, the assisted parking device 120 determines the range of parking spaces based on a space scanning algorithm for obstacles. (See reference...) Figure 3 An obstacle-based spatial parking space scanning algorithm is described as an example.
[0068] In some embodiments, the auxiliary parking device 120 locates the starting and ending points of obstacles. The auxiliary parking device 120 calculates whether the space between two obstacles satisfies the parking space requirement. If it does, it temporarily determines the two outer corner points of the parking space (such as the first corner point 310 and the second corner point 320).
[0069] Based on the two outer corner points of the parking space, the system searches for obstacles (i.e., the second set of obstacles) between the two outer corner points. If an obstacle is detected, it is stored. For example, there may be a wall, building support, or a gear shifter installed behind the parking space; these objects could all be considered the second set of obstacles. Next, the auxiliary parking device 120 determines a straight line based on the two outer corner points of the parking space, sequentially traverses the distances from the detected obstacles to this line, and determines the shortest distance as the depth value of the parking space. The auxiliary parking device 120 determines whether the depth value of the parking space meets the size requirements of the parking space; if it does, the space is determined to be a parking space. Furthermore, the auxiliary parking device 120 can perform straight line fitting on the second set of obstacles. If a straight line is fitted, it is determined as the curb (i.e., the rear boundary line of the parking space); if no straight line is fitted, then there is no curb.
[0070] It should be understood that in some scenarios, there may be no obstacles between the two outer corner points (i.e., there is no second set of obstacles). In this case, the depth of the parking space can be considered to meet the requirements, and the depth value of the parking space can be set to the default depth value.
[0071] In some embodiments, the auxiliary parking device 120 can calculate the two inner corners of the parking space (i.e., the third corner 330 and the fourth corner 340) based on the two outer corners of the parking space, the depth value of the parking space, and the vehicle yaw angle corresponding to the two outer corners of the parking space, thereby determining the four corners of the parking space.
[0072] Considering that the four corner points estimated above may not be accurate, in some embodiments, during the process of parking vehicle 110 into the parking space, in frame 240, the auxiliary parking device 120 can further detect the angle of the parking space through a distance measuring sensor in order to control the parking of vehicle 110.
[0073] In some embodiments, the assisted parking device 120 determines a third set of obstacles that define the width value of the parking space based on a distance sensor, fits two side boundary lines of the parking space based on the third set of obstacles, and determines the angled arrangement of the parking space based at least on the two fitted side boundary lines of the parking space.
[0074] In some embodiments, the assisted parking device 120 uses a first fitting algorithm to fit two initial side boundary lines of the parking space based on a third set of obstacles, and uses the two initial side boundary lines to filter the third set of obstacles to obtain a fourth set of obstacles. In addition, the assisted parking device 120 uses a second fitting algorithm, which is different from the first fitting algorithm, to fit two side boundary lines of the parking space based on the fourth set of obstacles.
[0075] As a specific embodiment, the parking assistance device 120 can fit the angled arrangement of the parking space based on a straight-line fitting algorithm, and update the angled arrangement of the parking space accordingly. Specifically, the parking assistance device 120 can search for obstacle points on both sides of the parking space based on the parking space lines on the left and right sides, and use the random sample consensus (RANSAC) algorithm to determine the two side boundary lines of the parking space, and use the fitted two side boundary lines to filter out suitable obstacles (i.e., the fourth set of obstacles). Further, the parking assistance device 120 can use the least squares method to fit the filtered obstacles, and finally determine the angled arrangement of the parking space.
[0076] In this way, vehicles can accurately identify and determine the inclined parking space, thereby achieving automatic parking in the inclined parking space.
[0077] Example devices and equipment
[0078] Embodiments of this disclosure also provide corresponding apparatus for implementing the above methods or processes. Figure 8 A schematic structural block diagram of a parking-assisted device 800 according to some embodiments of the present disclosure is shown.
[0079] like Figure 8 As shown, the device 800 includes: a ranging data acquisition module 810, configured to capture ranging data between the vehicle and surrounding objects using a ranging sensor equipped on the vehicle during vehicle operation; an obstacle detection module 820, configured to detect a first set of obstacles defining parking spaces based on the ranging data; a parking space range determination module 830, configured to determine the range of the parking space based at least in part on the detected first set of obstacles; and a slant situation determination module 840, configured to detect the slant situation of the parking space through the ranging sensor during the process of the vehicle parking in the parking space, so as to control the parking of the vehicle.
[0080] In some embodiments, the obstacle detection module 820 is further configured to: serialize the captured ranging data according to the spatial order of the ranging data based on the vehicle's driving trajectory; and use the serialized ranging data to detect the first group of obstacles.
[0081] In some embodiments, serializing the captured ranging data in spatial order includes: serializing the captured ranging data in spatial order based on at least one of the following: the vehicle's direction of travel and the number of ranging data.
[0082] In some embodiments, serializing the captured ranging data according to the spatial order of the ranging data includes: constructing a first vector with the serialized first ranging data as the starting point and the current ranging data to be serialized as the ending point; constructing a second vector with the serialized first ranging data as the starting point and the serialized second ranging data as the ending point; and determining the spatial order of the current ranging data with the first ranging data and / or the second ranging data based on at least one of the angular relationship and length relationship between the first vector and the second vector.
[0083] In some embodiments, the obstacle detection module 820 is further configured to: determine a set of measurement points based on the ranging data; cluster the set of measurement points to obtain a list of obstacles; extract the outlines of obstacles in the list of obstacles; and determine the first group of obstacles based on the extracted outlines of the obstacles.
[0084] In some embodiments, the parking space range determination module 830 is configured to: determine a second set of obstacles that define the depth value of the parking space based on the ranging sensor; and determine the range of the parking space based on at least one of the following: spatial location information of the first set of obstacles, spatial location information of the second set of obstacles, the positional relationship between the first set of obstacles and the second set of obstacles, and the yaw angle of the vehicle.
[0085] In some embodiments, the slant arrangement determination module 840 is further configured to: determine a third set of obstacles defining the width value of the parking space based on the ranging sensor; fit two side boundary lines of the parking space based on the third set of obstacles; and determine the slant arrangement of the parking space based at least on the fitted two side boundary lines of the parking space.
[0086] In some embodiments, the oblique arrangement determination module 840 is further configured to: use a first fitting algorithm to fit two initial side boundary lines of the parking space based on the third set of obstacles; use the two initial side boundary lines to filter the third set of obstacles to obtain a fourth set of obstacles; and use a second fitting algorithm different from the first fitting algorithm to fit the two side boundary lines of the parking space based on the fourth set of obstacles.
[0087] The units included in device 800 can be implemented in various ways, including software, hardware, firmware, or any combination thereof. In some embodiments, one or more units may be implemented using software and / or firmware, such as machine-executable instructions stored on a storage medium. In addition to or as an alternative to machine-executable instructions, some or all of the units in device 800 may be implemented at least partially by one or more hardware logic components. By way of example and not limitation, exemplary types of hardware logic components that may be used include field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), complex programmable logic devices (CPLDs), and so on.
[0088] Figure 9 A block diagram of an electronic device / server 900 in which one or more embodiments of the present disclosure may be implemented is shown. It should be understood that... Figure 9 The electronic device / server 900 shown is merely exemplary and should not be construed as limiting the functionality and scope of the embodiments described herein.
[0089] like Figure 9 As shown, the electronic device / server 900 is in the form of a general-purpose electronic device. Components of the electronic device / server 900 may include, but are not limited to, one or more processors or processing units 910, memory 920, storage devices 930, one or more communication units 940, one or more input devices 950, and one or more output devices 960. The processing unit 910 may be a physical or virtual processor and is capable of performing various processes according to programs stored in the memory 920. In a multiprocessor system, multiple processing units execute computer-executable instructions in parallel to improve the parallel processing capability of the electronic device / server 900.
[0090] Electronic device / server 900 typically includes multiple computer storage media. Such media can be any available media accessible to electronic device / server 900, including but not limited to volatile and non-volatile media, removable and non-removable media. Memory 920 can be volatile memory (e.g., registers, cache, random access memory (RAM)), non-volatile memory (e.g., read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory), or some combination thereof. Storage device 930 can be removable or non-removable media and can include machine-readable media, such as flash drives, disks, or any other media that can be used to store information and / or data (e.g., training data for training) and can be accessed within electronic device / server 900.
[0091] The electronic device / server 900 may further include additional removable / non-removable, volatile / non-volatile storage media. Although not explicitly stated... Figure 9 As shown, disk drives for reading from or writing to removable, non-volatile disks (e.g., "floppy disks") and optical disk drives for reading from or writing to removable, non-volatile optical disks can be provided. In these cases, each drive can be connected to a bus (not shown) via one or more data media interfaces. Memory 920 may include computer program product 925 having one or more program modules configured to perform various methods or actions of various embodiments of this disclosure.
[0092] The communication unit 990 enables communication with other electronic devices via a communication medium. Additionally, the functionality of the components of the electronic device / server 900 can be implemented as a single computing cluster or multiple computing machines capable of communicating via communication connections. Therefore, the electronic device / server 900 can operate in a networked environment using logical connections to one or more other servers, network personal computers (PCs), or another network node.
[0093] Input device 950 can be one or more input devices, such as a mouse, keyboard, trackball, etc. Output device 950 can be one or more output devices, such as a monitor, speaker, printer, etc. Electronic device / server 900 can also communicate with one or more external devices (not shown) via communication unit 990 as needed. These external devices include storage devices, display devices, etc., and can communicate with one or more devices that enable user interaction with electronic device / server 900, or with any device that enables electronic device / server 900 to communicate with one or more other electronic devices (e.g., network card, modem, etc.). Such communication can be performed via input / output (I / O) interface (not shown).
[0094] According to an exemplary implementation of this disclosure, a computer-readable storage medium is provided that stores one or more computer instructions, wherein one or more computer instructions are executed by a processor to implement the methods described above.
[0095] 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 implemented according to 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.
[0096] 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.
[0097] 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 that execute 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.
[0098] 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 this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of an instruction, which contains one or more executable instructions for implementing the specified logical function. In some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two 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.
[0099] Various implementations of this disclosure have been described above. The foregoing description is exemplary and not exhaustive, nor is it limited to the disclosed implementations. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described implementations. The terminology used herein is chosen to best explain the principles, practical applications, or improvements to technology in the market, or to enable others skilled in the art to understand the implementations disclosed herein.
Claims
1. A method for assisting parking, characterized in that, include: During the vehicle's operation, the distance measurement sensor equipped with the vehicle is used to capture distance data between the vehicle and surrounding objects. Based on the ranging data, a first set of obstacles is detected that defines parking spaces available for parking, including: Based on the vehicle's driving trajectory, the captured ranging data is serialized according to the spatial order of the ranging data; The serialization of the captured ranging data according to the spatial order of the ranging data includes: Construct the first vector by taking the serialized first ranging data as the starting point and the current ranging data to be serialized as the ending point; Construct a second vector using the serialized first ranging data as the starting point and the serialized second ranging data as the ending point; and Based on at least one of the angular and length relationships between the first and second vectors, determine the spatial order of the ranging data with the first and / or second ranging data; The extent of the parking space is determined, at least in part, based on the detected first set of obstacles; and During the process of the vehicle parking in the parking space, the distance measuring sensor detects the angle of the parking space in order to control the parking of the vehicle.
2. The method according to claim 1, characterized in that, The detection of the first set of obstacles that define the parking spaces available for parking also includes: The first group of obstacles is detected using the serialized ranging data.
3. The method according to claim 2, characterized in that, The serialization of the captured ranging data according to the spatial order of the ranging data includes: The captured ranging data is serialized according to the spatial order of the ranging data based on at least one of the following: The direction of travel of the vehicle, and The number of ranging data.
4. The method according to claim 1, characterized in that, The first set of obstacles that are used to determine the availability of parking spaces includes: The set of measurement points is determined based on the ranging data; Cluster the set of measurement points to obtain a list of obstacles; Extract the outlines of obstacles from the obstacle list; and The first group of obstacles is determined based on the extracted contours of the obstacles.
5. The method according to claim 1, characterized in that, Determining the range of the parking space includes: Based on the ranging sensor, a second set of obstacles is determined that defines the depth value of the parking space; and The extent of the parking space is determined based on at least one of the following: Spatial location information of the first group of obstacles, The second set of spatial location information of obstacles, The positional relationship between the first group of obstacles and the second group of obstacles, and The vehicle's yaw angle.
6. The method according to claim 1, characterized in that, The detection of the angled arrangement of the parking spaces using the ranging sensor includes: Based on the ranging sensor, a third group of obstacles is determined that limits the width of the parking space; The two side boundary lines of the parking space are fitted based on the third set of obstacles; and The slant arrangement of the parking spaces is determined based at least on the two side boundary lines of the fitted parking spaces.
7. The method according to claim 6, characterized in that, The fitting of the two side boundary lines of the parking space based on the third set of obstacles includes: Using the first fitting algorithm, two initial side boundary lines of the parking space are obtained by fitting based on the third set of obstacles; The third group of obstacles is selected using the two initial side boundary lines to obtain the fourth group of obstacles; and Using a second fitting algorithm, which is different from the first fitting algorithm, the two side boundary lines of the parking space are fitted based on the fourth set of obstacles.
8. A parking assistance device, characterized in that, include: The ranging data acquisition module is configured to, during vehicle operation, utilize the ranging sensor equipped in the vehicle. Capture distance measurement data between the vehicle and surrounding objects; An obstacle detection module is configured to detect a first set of obstacles that define parking spaces available for parking, based on the ranging data. The obstacle detection module is also configured to: Based on the vehicle's driving trajectory, the captured ranging data is serialized according to the spatial order of the ranging data; The serialization of the captured ranging data according to the spatial order of the ranging data includes: Construct the first vector by taking the serialized first ranging data as the starting point and the current ranging data to be serialized as the ending point; Construct a second vector using the serialized first ranging data as the starting point and the serialized second ranging data as the ending point; and Based on at least one of the angular and length relationships between the first and second vectors, determine the spatial order of the ranging data with the first and / or second ranging data; A parking space range determination module is configured to determine the range of the parking space based at least in part on the detected first set of obstacles; and The oblique parking situation determination module is configured to detect the oblique parking situation of the parking space through the distance measuring sensor during the process of the vehicle parking into the parking space, so as to control the parking of the vehicle.
9. The apparatus according to claim 8, characterized in that, The obstacle detection module is further configured to: The first group of obstacles is detected using the serialized ranging data.
10. The apparatus according to claim 9, characterized in that, The serialization of the captured ranging data according to the spatial order of the ranging data includes: The captured ranging data is serialized according to the spatial order of the ranging data based on at least one of the following: The direction of travel of the vehicle, and The number of ranging data.
11. The apparatus according to claim 8, characterized in that, The obstacle detection module is further configured to: The set of measurement points is determined based on the ranging data; Cluster the set of measurement points to obtain a list of obstacles; Extract the outlines of obstacles from the obstacle list; as well as The first group of obstacles is determined based on the extracted contours of the obstacles.
12. The apparatus according to claim 8, characterized in that, The parking space range determination module is further configured to: Based on the ranging sensor, a second set of obstacles is determined that defines the depth value of the parking space; and The extent of the parking space is determined based on at least one of the following: Spatial location information of the first group of obstacles, The second set of spatial location information of obstacles, The positional relationship between the first group of obstacles and the second group of obstacles, and The vehicle's yaw angle.
13. The apparatus according to claim 8, characterized in that, The oblique column determination module is further configured to: Based on the ranging sensor, a third group of obstacles is determined that limits the width of the parking space; The two side boundary lines of the parking space are fitted based on the third set of obstacles; as well as The slant arrangement of the parking spaces is determined based at least on the two side boundary lines of the fitted parking spaces.
14. The apparatus according to claim 13, characterized in that, The oblique column determination module is further configured to: Using the first fitting algorithm, two initial side boundary lines of the parking space are obtained by fitting based on the third set of obstacles; The third group of obstacles is screened using the two initial side boundary lines to obtain the fourth group of obstacles; as well as Using a second fitting algorithm, which is different from the first fitting algorithm, the two side boundary lines of the parking space are fitted based on the fourth set of obstacles.
15. An electronic device, characterized in that, include: Memory and processor; The memory is used to store one or more computer instructions, wherein the one or more computer instructions are executed by the processor to implement the method according to any one of claims 1 to 7.
16. A computer-readable storage medium, characterized in that, It stores one or more computer instructions, wherein the one or more computer instructions are executed by a processor to implement the method according to any one of claims 1 to 7.
17. A computer program product, characterized in that, Includes computer-executable instructions, wherein the computer-executable instructions, when executed by a processor, implement the method according to any one of claims 1 to 7.
Citation Information
Patent Citations
Parking space detection method and device, electronic equipment, vehicle and storage medium
CN111311925A
Oblique train position construction method and system based on ultrasonic radar
CN112622885A
Obstacle map generation method and device, vehicle and storage medium
CN113060131A