Parking space identification method and device, electronic equipment, storage medium and vehicle
By projecting point cloud data of the vehicle's surrounding environment onto a preset plane for two-dimensional clustering, the problem of poor recognition performance of large vehicles in LiDAR parking space detection is solved, achieving more accurate and efficient parking space recognition.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-30
- Publication Date
- 2026-03-10
AI Technical Summary
Existing LiDAR parking space detection solutions are ineffective in identifying large vehicles and cannot achieve accurate and fast parking space recognition.
By projecting point cloud data of the vehicle's surrounding environment onto a preset plane, two-dimensional clustering is performed to identify parking areas in the vehicle's surrounding environment, and the parking areas in the vehicle's surrounding environment are determined using the two-dimensional clustering results.
It improves the accuracy and efficiency of parking space recognition for large vehicles during automatic parking, and accelerates data processing through dimensionality-reduced two-dimensional clustering results to ensure the accuracy of parking space boundary recognition.
Smart Images

Figure CN121640749A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of automatic parking, in particular to a parking space identification method and device, an electronic device, a computer readable storage medium and a vehicle. BACKGROUND
[0002] With the increasing scale of new energy vehicles, the parking environment is increasingly crowded, and the demand for parking lots and parking spaces is increasing, and the design specifications for parking spaces are increasingly strict. This puts higher requirements on people's driving skills, so automatic parking technology has received widespread attention from society.
[0003] Parking space identification is an important part of an automatic parking system, and fast, real-time and high-precision parking space identification is crucial to achieving automatic parking. There is a scheme for detecting a parking space by using a laser radar. However, in the existing parking space detection scheme of the laser radar, the point cloud data of a large vehicle is often more, resulting in poor parking space identification effect for the large vehicle. SUMMARY
[0004] The embodiments of the present application provide a parking space identification method, device, electronic device, storage medium and vehicle, which can solve the technical problem that a large vehicle cannot accurately and quickly identify a parking space when automatic parking.
[0005] In order to achieve the above purpose, according to a first aspect of the present application, a parking space identification method is provided, comprising:
[0006] determining a two-dimensional clustering result of projecting point cloud data of a vehicle surrounding environment to a preset plane;
[0007] outputting a parking area of the vehicle surrounding environment based on the two-dimensional clustering result.
[0008] Optionally, the determination of the two-dimensional clustering result of projecting the point cloud data of the vehicle surrounding environment to the preset plane comprises:
[0009] clustering the point cloud data of the vehicle surrounding environment to obtain a three-dimensional clustering result; projecting the three-dimensional clustering result to the preset plane to obtain the two-dimensional clustering result; or
[0010] projecting the point cloud data of the vehicle surrounding environment to the preset plane to obtain two-dimensional point cloud data; clustering the two-dimensional point cloud data to obtain the two-dimensional clustering result.
[0011] Optionally, the projecting of the three-dimensional clustering result to the preset plane to obtain the two-dimensional clustering result comprises:
[0012] determining the number of point clouds in the three-dimensional clustering result;
[0013] If the number is greater than or equal to the preset number threshold, the three-dimensional clustering result is projected to a preset plane to obtain a two-dimensional clustering result.
[0014] Optionally, the parking area of the vehicle surrounding environment is output based on the two-dimensional clustering result, including:
[0015] The parking area of the vehicle surrounding environment is determined based on the two-dimensional clustering result.
[0016] If the parking area meets the passing condition of the vehicle, the parking area is output.
[0017] Optionally, the parking area of the vehicle surrounding environment is determined based on the two-dimensional clustering result, including:
[0018] For one or more clustering results in the two-dimensional clustering result, edge recognition is performed on the clustering result to obtain an edge of the clustering result.
[0019] The parking area of the vehicle surrounding environment is determined according to the edge of one or more clustering results.
[0020] Optionally, for one or more clustering results in the two-dimensional clustering result, edge recognition is performed on the clustering result to obtain an edge of the clustering result, including:
[0021] A plurality of target end points are screened from the clustering result.
[0022] Edge recognition is performed on the clustering result according to a plurality of reference edge lines constructed by the plurality of target end points and the two-dimensional point cloud in the clustering result, to obtain an edge of the clustering result.
[0023] Optionally, the target end points include first end points and second end points; for one or more clustering results in the two-dimensional clustering result, a plurality of target end points are screened from the clustering result, including:
[0024] At least two edge points in the clustering result are determined as the first end points.
[0025] According to the distance of each point in the clustering result to an initial baseline, a second end point is determined from the clustering result, wherein the initial baseline is a connecting line between the first end points.
[0026] Optionally, for one or more clustering results in the two-dimensional clustering result, edge recognition is performed on the clustering result according to a plurality of reference edge lines constructed by the plurality of target end points and the two-dimensional point cloud in the clustering result, to obtain an edge of the clustering result, including:
[0027] The two-dimensional point cloud in the clustering result is projected to a plurality of reference edge lines constructed by the plurality of target end points to obtain a plurality of projection results corresponding to the clustering result.
[0028] According to the edge recognition, an edge of the clustering result is obtained.
[0029] Optionally, for one or more of the two-dimensional clustering results, the edge of the clustering result is obtained by performing edge recognition on the clustering result according to the plurality of projection results corresponding to the clustering result, including:
[0030] According to the plurality of projection results corresponding to the clustering result, a direction angle corresponding to the clustering result is screened to obtain a target direction angle.
[0031] According to the target direction angle and the two-dimensional point cloud in the clustering result, the edge of the clustering result is determined.
[0032] Optionally, for one or more of the two-dimensional clustering results, the target direction angle is obtained by screening the direction angle corresponding to the clustering result according to the plurality of projection results corresponding to the clustering result, including:
[0033] An error between the plurality of projection results corresponding to the clustering result is calculated.
[0034] According to the error, the direction angle corresponding to the clustering result is screened to obtain the target direction angle.
[0035] Optionally, the plurality of projection results corresponding to the clustering result includes a first projection result and a second projection result, and the edge of the clustering result is determined according to the target direction angle and the two-dimensional point cloud in the clustering result, including:
[0036] According to the target direction angle, the first projection result and the second projection result corresponding to each two-dimensional point cloud in the clustering result are calculated.
[0037] At least two first projection results are screened from the plurality of first projection results as first target projection results, and at least two second projection results are screened from the plurality of second projection results as second target projection results.
[0038] According to the target direction angle, the at least two first target projection results and the at least two second target projection results, the edge of the clustering result is determined.
[0039] Optionally, the above two-dimensional clustering results include one or more clustering results, and the one or more clustering results include a first clustering result and a second clustering result; the parking area of the vehicle surrounding environment is determined only when the distance between the first clustering result and the second clustering result satisfies a preset distance condition.
[0040] Optionally, the distance between the first clustering result and the second clustering result satisfies a preset distance condition, including: the distance between the first edge of the first clustering result and the second edge of the second clustering result satisfies a preset first distance condition, and the distance between the first center point corresponding to the first edge and the second center point corresponding to the second edge satisfies a preset second distance condition.
[0041] Optionally, the conditions for the parking area to meet vehicle traffic requirements include: the parking area is in a passable state, wherein the passable state of the parking area is obtained by searching for the parking area in a set map.
[0042] Optionally, the parking area around the aforementioned output vehicle includes:
[0043] The parking area is displayed on the vehicle's onboard system screen.
[0044] Optionally, the point cloud data of the vehicle's surrounding environment is obtained by preprocessing and / or segmenting the original point cloud data of the vehicle's surrounding environment; the preprocessing includes at least one of the following: pass-through filtering, downsampling, outlier filtering, and point cloud field of view correction.
[0045] Accordingly, embodiments of this application provide a parking space recognition device, including:
[0046] The confirmation module is used to determine the two-dimensional clustering result of the point cloud data of the vehicle's surrounding environment projected onto a preset plane;
[0047] The identification module is used to output the parking area of the vehicle's surrounding environment based on the two-dimensional clustering results.
[0048] Furthermore, this application also provides an electronic device, including a processor connected to a memory, the memory storing a computer program, and the processor running the computer program in the memory to implement the parking space recognition method provided in this application.
[0049] Furthermore, embodiments of this application also provide a computer-readable storage medium storing a computer program adapted for loading by a processor to execute any of the parking space recognition methods provided in embodiments of this application.
[0050] In addition, embodiments of this application also provide a vehicle, including the above-described parking space recognition device, or the above-described electronic device, or the above-described computer-readable storage medium.
[0051] Furthermore, this application also provides a computer program product, including a computer program that, when executed by a processor, implements any of the parking space recognition methods provided in this application.
[0052] In this embodiment, by projecting the point cloud data of the vehicle's surrounding environment onto a preset plane to obtain a two-dimensional clustering result, rapid segmentation of objects in the vehicle's surrounding environment can be achieved. Furthermore, the point cloud data of the vehicle's surrounding environment is larger than two dimensions, thus providing the vehicle with deeper and more accurate spatial information for detection. This allows for more accurate determination of suitable parking space boundaries for large vehicles during parking space recognition. Projecting the original point cloud data achieves dimensionality reduction. Therefore, while ensuring the accuracy of parking space boundary recognition based on the original high-dimensional point cloud data, the dimensionality-reduced two-dimensional clustering result determines the parking area of the vehicle's surrounding environment, improving data processing speed and consequently increasing the parking space recognition efficiency for large vehicles during automatic parking. Attached Figure Description
[0053] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0054] To gain a more complete understanding of this application and its beneficial effects, the following description will be provided in conjunction with the accompanying drawings, wherein the same reference numerals in the following description denote the same parts.
[0055] Figure 1 This is a flowchart illustrating the parking space recognition method provided in an embodiment of this application;
[0056] Figure 2 This is a schematic diagram showing the location of a lidar in a vehicle according to an embodiment of this application;
[0057] Figure 3 This is a schematic diagram of the vehicle's surrounding environment provided in an embodiment of this application;
[0058] Figure 4 This is another schematic diagram of the vehicle's surrounding environment provided in an embodiment of this application;
[0059] Figure 5 This is a schematic diagram of the parking space recognition device provided in the embodiments of this application;
[0060] Figure 6 This is a schematic diagram of the structure of the electronic device provided in the embodiments of this application. Detailed Implementation
[0061] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of them. All other embodiments obtained by those skilled in the art based on the embodiments of this application without creative effort are within the protection scope of this application.
[0062] This application provides a parking space recognition method, device, electronic device, storage medium, and vehicle. The parking space recognition device, electronic device, and storage medium can be integrated into the vehicle.
[0063] Furthermore, in the embodiments of this application, "multiple" refers to two or more. The terms "first" and "second," etc., in the embodiments of this application are used for distinguishing descriptions and should not be construed as implying relative importance.
[0064] Currently, in parking, the surround-view cameras used in vision sensor-based parking algorithms are often obstructed, and vision sensors are susceptible to lighting conditions, frequently resulting in missed detections. Furthermore, the field of view of surround-view cameras is limited, failing to detect parking spaces that are far from the vehicle or large spaces larger than the top-down view. The top-down view is generated based on a fixed angle between the ground level and the camera; therefore, geometric errors are easily introduced when the vehicle moves or the ground is uneven, affecting mapping accuracy. In contrast, forward-facing LiDAR has better resistance to lighting conditions and a longer detection range, but it also suffers from lower parking space mapping accuracy due to occlusion issues.
[0065] When parking, ultrasonic radar can emit ultrasonic pulses and calculate the distance to the target object based on the reflected pulses. However, ultrasonic radar typically only provides two-dimensional information and is significantly affected by factors such as the object's material and surface condition. Furthermore, ultrasonic radar has relatively low resolution, often requiring methods like triangulation and multi-frame stitching to perceive obstacle boundaries. Therefore, there may be some errors when using ultrasonic radar for parking space boundary identification. Although ultrasonic radar has a high detection frequency, a single detection returns only a distance measurement point, requiring multi-frame stitching to obtain a low-precision point cloud. This results in a relatively long acquisition cycle for ultrasonic radar, which cannot meet the high demands of automated parking for large vehicles.
[0066] In existing LiDAR parking space detection solutions, the amount of data to process and the accuracy required for identifying parking spaces for large vehicles are often higher than those for identifying parking spaces for general vehicles. Therefore, current LiDAR solutions for identifying parking spaces for large vehicles often suffer from low efficiency in order to ensure accuracy.
[0067] Based on this, this application proposes a parking space recognition method. By projecting the point cloud data of the vehicle's surrounding environment onto a preset plane and performing two-dimensional clustering, rapid segmentation of objects in the vehicle's surrounding environment can be achieved. Furthermore, the point cloud data of the vehicle's surrounding environment is larger than two dimensions, thus providing the vehicle with deeper and more accurate spatial information for detection. This allows for more accurate determination of suitable parking space boundaries for large vehicles during parking space recognition. Projecting the original point cloud data achieves dimensionality reduction. Therefore, while ensuring the accuracy of parking space boundary recognition based on the original high-dimensional point cloud data, the dimensionality-reduced two-dimensional clustering results determine the parking area of the vehicle's surrounding environment, improving data processing speed and consequently increasing the parking space recognition efficiency for large vehicles during automatic parking.
[0068] The following sections provide detailed descriptions of each example. It should be noted that the order in which the embodiments are described is not intended to limit the preferred order of the embodiments.
[0069] Please see Figure 1 , Figure 1 This is a flowchart illustrating a parking space recognition method according to an embodiment of this application. The parking space recognition method may include:
[0070] S101. Determine the two-dimensional clustering results of the point cloud data of the vehicle's surrounding environment projected onto a preset plane;
[0071] S102. Based on the two-dimensional clustering results, output the parking area of the vehicle's surrounding environment.
[0072] In this embodiment, the point cloud data of the vehicle's surrounding environment is high-dimensional point cloud data, meaning that the dimension of this point cloud data is higher than two dimensions, such as three-dimensional point cloud data. This high-dimensional point cloud data can be obtained by detecting the vehicle's surrounding environment using spatial data sensing devices on the vehicle. Specifically, the spatial data sensing devices on the vehicle refer to devices capable of generating high-dimensional point cloud data. For example, a ranging sensor, which can be a LiDAR (Light Detection and Ranging) sensor, a structured light sensor, a TOF (Time of Flight) sensor, a Frequency Modulated Continuous Wave (FMCW) LiDAR, or a 4D millimeter-wave radar.
[0073] In some implementations, a spatial data sensing device can be installed on each side of the vehicle body. By using the spatial data sensing devices on both sides of the vehicle body to detect the environment within the field of view, objects in the environment around the vehicle, such as vehicles or obstacles, can be detected.
[0074] Taking lidar as an example, such as Figure 2 As shown, Figure 2 This is a schematic diagram illustrating the location of a lidar in a vehicle according to an embodiment of this application. The dots represent lidars, and the sectors represent the corresponding field of view. Lidars are installed on both sides of the vehicle body. When the vehicle needs to park automatically, the lidars on both sides of the vehicle detect objects within their field of view, generating point cloud data of the surrounding environment.
[0075] In some implementations, multiple spatial data sensing devices may be installed in other locations on the vehicle. This embodiment does not limit the location and number of spatial data sensing devices in the vehicle.
[0076] In the environment surrounding a vehicle, point cloud data of multiple objects may be detected. Therefore, by clustering the point cloud data of the vehicle's surrounding environment, the 3D clustering results corresponding to multiple objects in the surrounding environment can be determined, thereby enabling the differentiation of objects in the surrounding environment. Furthermore, clustering can improve the efficiency of object edge recognition. In some implementations, the point cloud data can be first transformed into a world coordinate system or a vehicle coordinate system before performing clustering.
[0077] Specifically, there are several ways to determine the two-dimensional clustering result of projecting the point cloud data of the vehicle's surrounding environment onto a preset plane. In one embodiment, the point cloud data of the vehicle's surrounding environment can be clustered to obtain a three-dimensional clustering result; the three-dimensional clustering result can then be projected onto the preset plane to obtain a two-dimensional clustering result. In another embodiment, the point cloud data of the vehicle's surrounding environment can be projected onto the preset plane to obtain two-dimensional point cloud data; the two-dimensional point cloud data can then be clustered to obtain a two-dimensional clustering result.
[0078] The clustering process can be implemented using the K-Means algorithm or the density-based clustering algorithm (DBSCAN, Density-Based Spatial Clustering of Applications with Noise).
[0079] For example, the following provides a specific implementation of clustering.
[0080] Input point cloud dataset D = {(x1,y1,z1),(x2,y2,z2)...(x m ,y m ,z m The sample distance metric is determined by the neighborhood parameters (∈, MinPts) and the neighborhood parameters (∈, MinPts).
[0081] Step 1: Initialize the core object collection The number of clusters k=0, the initial unvisited sample set Г=D, and the clusters are divided.
[0082] Step 2: For j = 1, 2...m, find all the core points by following these steps:
[0083] a. Find the neighborhood subset N of sample xk using a distance metric. ε (x j );
[0084] b. If the number of samples in the subset satisfies |N ε (x j If |≥MinPts, then the sample x j Add to the core object sample set: Ω=Ω∪{x j};
[0085] Step 3: If the core object collection is complete after traversal... The algorithm process ends; otherwise, proceed to step four.
[0086] Step 4: Randomly select a core object o from the core object set Ω, and initialize the current cluster core object queue Ω. cur ={ο}, cluster index k = k + 1, initialize the current cluster sample set Ω k ={ο}, update the unvisited sample set Γ = Γ - {ο};
[0087] Step 5: If the current cluster core object queue Then the current cluster C k Once generated, update the cluster partition C = {C1, C2...C...} k}, Update the core object set Ω = Ω - C k Proceed to step three; otherwise, update the core object set Ω = Ω - C. k .
[0088] Step Six: In the current cluster core object queue Ω cur Extract a core object ο' from the dataset, and find all neighborhood subsets N using a neighborhood distance threshold. ε (ο'), let Δ=N ε (ο')∩Γ, update the current cluster sample set C k =C k ∪Δ, update the unvisited sample set Г=Г-Δ, update Ω cur =Ω cur ∪(Δ∩Ω)-ο'; Proceed to step five, output: Cluster partition C={C1,C2...C k}
[0089] Step 7: Project the output 3D point cloud cluster (i.e., the 3D clustering result) onto the ground plane to obtain the 2D clustering result D' = {(x1,y1),(x2,y2)...(x m ,y m The point cloud cluster partitioning result C = {C1, C2...C} and the result of C = {C1, C2...C} k}
[0090] In some implementations, the point cloud data of the vehicle's surrounding environment can be the point cloud data of at least two adjacent vehicles in the surrounding environment detected by the vehicle waiting to park.
[0091] In some implementations, the point cloud data of the vehicle's surrounding environment may also be the point cloud data of the vehicle and adjacent non-vehicle obstacles (such as walls) detected in the vehicle's surrounding environment, or the point cloud data of two adjacent non-vehicle obstacles.
[0092] Let's take an example where the environment surrounding a vehicle includes two adjacent vehicles. For instance... Figure 3 As shown, Figure 3 This is a schematic diagram of the environment surrounding a vehicle provided in an embodiment of this application. Vehicle 1 and Vehicle 2 are two adjacent vehicles in the environment surrounding a vehicle waiting to park. By clustering the point cloud data of the environment surrounding the vehicle waiting to park, clustered point clouds corresponding to the two adjacent vehicles can be obtained, namely, the first clustered point cloud corresponding to Vehicle 1 and the second clustered point cloud corresponding to Vehicle 2. These first and second clustered point clouds constitute the three-dimensional clustering results.
[0093] Let's take an example where the environment surrounding a vehicle includes two pairs of adjacent vehicles. Figure 4 As shown, Figure 4 This is another schematic diagram of the vehicle's surrounding environment provided in an embodiment of this application. Vehicles 1 and 2 are two adjacent vehicles on the right side of the surrounding environment of the vehicle waiting to park, and vehicles 3 and 4 are two adjacent vehicles on the left side of the surrounding environment of the vehicle waiting to park. Clustering the point cloud data of the surrounding environment of the vehicle waiting to park yields clustered point clouds corresponding to the two adjacent vehicles on the left and the two adjacent vehicles on the right, namely, the first clustered point cloud corresponding to vehicle 1, the second clustered point cloud corresponding to vehicle 2, the third clustered point cloud corresponding to vehicle 3, and the fourth clustered point cloud corresponding to vehicle 4. These first, second, third, and fourth clustered point clouds constitute the three-dimensional clustering result.
[0094] Projecting the 3D clustering results onto a preset plane yields 2D clustering results, which consist of multiple 2D point clouds. By projecting the 3D clustering results, dimensionality reduction of the original point cloud data can be achieved, improving data processing speed and enabling rapid identification of vehicle parking spaces. Projecting the 3D clustering results corresponding to multiple objects yields 2D clustering results corresponding to those objects.
[0095] Based on the results of two-dimensional clustering, parking areas in the environment surrounding a vehicle are determined. For example, by fitting data from the two-dimensional clustering results, the bounding boxes of objects in the environment surrounding the vehicle are determined, and the parking areas of the vehicle in the surrounding environment are determined based on the bounding boxes.
[0096] This application embodiment achieves rapid segmentation of objects in the vehicle's surrounding environment by projecting point cloud data onto a preset plane to obtain a two-dimensional clustering result. Furthermore, the point cloud data of the vehicle's surrounding environment is larger than two dimensions, thus providing the vehicle with deeper and more accurate spatial information for detection. This allows for more accurate determination of suitable parking space boundaries for large vehicles during parking space recognition. Projecting the original point cloud data reduces its dimensionality. Therefore, while ensuring the accuracy of parking space boundary recognition based on the original high-dimensional point cloud data, the dimensionality-reduced two-dimensional clustering result determines the parking area around the vehicle, improving data processing speed and consequently increasing the parking space recognition efficiency for large vehicles during automatic parking.
[0097] In some embodiments of this application, the above-described projection of the three-dimensional clustering result onto a preset plane to obtain a two-dimensional clustering result includes:
[0098] Determine the number of point clouds in the 3D clustering results;
[0099] If the number is greater than or equal to the preset number threshold, the three-dimensional clustering result is projected onto the preset plane to obtain the two-dimensional clustering result.
[0100] In automated parking scenarios for large vehicles, the required parking space length and depth often exceed the effective detection range of ultrasonic radar and surround-view cameras. Therefore, to be suitable for automated parking of large vehicles, the spatial data sensing device in this embodiment has a larger detection range and generates more point cloud data. Thus, the number of point clouds in the 3D clustering result is obtained. If the number is greater than or equal to a preset threshold, the 3D clustering result is projected onto a preset plane to obtain a 2D clustering result. Therefore, during automated parking of large vehicles, parking space recognition can be performed using the projected 2D clustering result, improving the efficiency of parking space recognition for large vehicles.
[0101] In some implementations, the volume of the point cloud in the 3D clustering results can be used to determine whether projection is necessary.
[0102] In some embodiments of this application, the above-mentioned output of the parking area of the vehicle's surrounding environment based on the two-dimensional clustering results includes:
[0103] Based on the results of two-dimensional clustering, the parking area around the vehicle is determined;
[0104] If the parking area meets the vehicle passage requirements, output the parking area.
[0105] When the two-dimensional clustering results meet the preset conditions, the parking area of the vehicle's surrounding environment can be determined based on the edges determined by the two-dimensional clustering results.
[0106] In one embodiment, the two-dimensional clustering result includes one or more clustering results, which in turn include a first clustering result and a second clustering result. The parking area of the vehicle's surrounding environment is determined only when the distance between the first clustering result and the second clustering result meets a preset distance condition.
[0107] Here, it can be understood that the first clustering result is the two-dimensional clustering result corresponding to object one in the environment surrounding the vehicle, and the second clustering result is the two-dimensional clustering result corresponding to object two in the environment surrounding the vehicle. Edges of the first clustering result are identified to obtain the first edge, and edges of the second clustering result are identified to obtain the second edge.
[0108] In one embodiment, the distance between the first clustering result and the second clustering result satisfying the preset distance condition may include: the distance between the first edge of the first clustering result and the second edge of the second clustering result satisfying the preset first distance condition, and the distance between the first center point corresponding to the first edge and the second center point corresponding to the second edge satisfying the preset second distance condition.
[0109] Specifically, two center points can be determined based on the first edge and the second edge. The first edge and the second edge refer to the edges corresponding to two objects in the environment surrounding the vehicle, detected through point cloud data. The first edge and the second edge can include line segments and / or vertices of the bounding boxes corresponding to the objects. Therefore, based on the line segment information and / or vertex information in the first edge, the first center point corresponding to the first edge can be determined, and based on the line segment information and / or vertex information in the first edge, the second center point corresponding to the second edge can be determined.
[0110] Based on the line segment information and / or vertex information in the first and second edges, the minimum distance between the two objects is determined, and this minimum distance is taken as the distance between the first and second edges. If the minimum distance satisfies a preset first threshold, and the distance between the first center point and the second center point satisfies a preset second threshold, then the parking area in the environment surrounding the vehicle is determined based on the first and second edges.
[0111] In some implementations, the first threshold and the second threshold can be determined by the length, width, and height of the vehicle waiting to be parked.
[0112] By judging the distance between the first edge and the second edge, and the distance between the first center point and the second center point in this embodiment, it can be ensured that the determined parking space meets the parking conditions of the vehicle.
[0113] If the parking area meets the vehicle passage conditions, the parking area is output. In some embodiments of this application, meeting the vehicle passage conditions for the parking area includes: the parking area's passage status is a passable state, wherein the passage status of the parking area is obtained by searching for the parking area in a set map.
[0114] If the distance between the first edge and the second edge meets a preset first threshold, and the distance between the first center point and the second center point meets a preset second threshold, the passage conditions of the parking area in the vehicle's surrounding environment can be determined to determine whether the parking area allows vehicles to pass. Specifically, based on the line segment information and / or vertex information in the first and second edges, a target center point located on the line connecting the first center point and the second center point can be determined. This target center point can be located at the center of the line. Based on the target center point and the length and width of the vehicle to be parked, the length and width of the parking area are determined.
[0115] In some implementations, the pose of the parking area can also be acquired, which is consistent with a determined target orientation angle. Based on the determined length, width, and pose, the parking area in the vehicle's surrounding environment is determined.
[0116] If a parking area meets the conditions for vehicle passage, then that parking area is determined to be the current vehicle's parking area. In some implementations, the suitability of a parking area for vehicle passage can be determined by detecting the presence of obstacles, parking area markings, or the ground coefficient of the parking area, such as the ground hardness coefficient. If there are no obstacles in the parking area and the ground hardness coefficient of the parking area meets a preset threshold, then that parking area can be determined to be the vehicle's parking area.
[0117] In some embodiments of this application, the conditions for a parking area to meet the passage conditions for vehicles may include: the passage status of the parking area is a passable state, wherein the passage status of the parking area is obtained by searching for the parking area in a set map.
[0118] In this embodiment, the map can be a two-dimensional grid map. The coordinates, length, width, pose, and ID of the target center point of the parking area are marked on the local two-dimensional grid map. If the parking area is passable on the two-dimensional grid map, it is determined to be a parking area for vehicles, and the area information such as coordinates, length, width, pose, and ID of the parking area is output. If there are undetected areas on the two-dimensional grid map, the parking space corresponding to that area is retained, the parking area continues to be detected, and the grid map and area coordinates are updated using two-dimensional tracks. If the parking area is impassable on the two-dimensional grid map (e.g., due to obstacles), the parking area is released, and the process of parking space recognition is returned.
[0119] In some implementations, the map can also be other maps that indicate the accessibility status of the area.
[0120] By setting a map in this embodiment to detect the accessibility of parking areas, it is possible to quickly determine whether a parking area is passable, thereby further improving the efficiency of vehicle parking space recognition.
[0121] In some embodiments of this application, the process of determining the parking area of the vehicle's surrounding environment based on two-dimensional clustering results may include: performing edge recognition on one or more clustering results in the two-dimensional clustering results to obtain the edges of the clustering results; and determining the parking area of the vehicle's surrounding environment based on the edges of one or more clustering results.
[0122] Here, the edge can be the smallest rectangular bounding box of an object in the environment surrounding the vehicle, or a bounding box of other shapes, or an edge point. By using a preset edge detection algorithm to identify the edges of one or more clusters in the two-dimensional clustering results, the edges corresponding to each cluster can be identified. Specifically, this edge detection algorithm can employ gradient operators, Laplacian operators, deep learning-based edge detection algorithms, or a combination of L-shape-fitting and minimum bounding box algorithms.
[0123] In some implementations, the L-shape-fitting algorithm can be used to iterate through the two-dimensional point clouds of each cluster in the two-dimensional clustering result, and then fit them to obtain the straight lines corresponding to each cluster in the two-dimensional clustering result. The minimum bounding box algorithm is used to traverse all possible directions of the rectangular bounding box. In each iteration, a rectangle containing all scanned points is found, and the points are divided into sets P and Q based on the distances from the points to the four sides of the rectangle. The corresponding errors are calculated as the objective function, and the optimal direction of the function is found to fit the rectangle, thereby obtaining the edges of each cluster in the two-dimensional clustering result.
[0124] Based on the clustering results in the two-dimensional clustering, the parking area in the environment surrounding the vehicle can be determined. For example, when the distance between the edges corresponding to each clustering result meets the parking conditions corresponding to the vehicle, then the edges corresponding to each clustering result determine the parking area of the vehicle.
[0125] By performing edge recognition on the two-dimensional clustering results in this embodiment, the edges corresponding to each clustering result can be determined quickly and iteratively, thereby improving the efficiency of parking space recognition.
[0126] In some embodiments of this application, for one or more clustering results in a two-dimensional clustering result, edge recognition is performed on the clustering result to obtain the edge of the clustering result, including:
[0127] Multiple target endpoints were selected from the clustering results;
[0128] Based on multiple baseline edge lines constructed from multiple target endpoints and the two-dimensional point cloud in the clustering result, edge recognition is performed on the clustering result to obtain the edge of the clustering result.
[0129] In this embodiment, multiple two-dimensional point clouds can be selected from each cluster result of the two-dimensional clustering results as target endpoints of each cluster result according to preset filtering conditions. That is, multiple two-dimensional point clouds are selected from each cluster result as target endpoints of that cluster result. At least two baseline edge lines are constructed based on the multiple target endpoints; these two baseline edge lines are typically perpendicular to each other. Based on the at least two baseline edge lines and the corresponding two-dimensional point clouds in the cluster results, the edges corresponding to the cluster result can be determined.
[0130] For example, based on at least two baseline edge lines and the corresponding two-dimensional point cloud in the clustering results, the line segment information and vertex information of the optimal bounding box can be determined. This line segment information and vertex information constitute the edges of the clustering result. Specifically, when the optimal bounding box is the smallest rectangle, this line segment information and vertex information can be the four side lengths and four vertex information of the smallest rectangle.
[0131] In some embodiments of this application, the target endpoints include a first endpoint and a second endpoint; for one or more clustering results in a two-dimensional clustering result, multiple target endpoints are selected from the clustering results, including:
[0132] From the clustering results, at least two edge points are identified as the first endpoints;
[0133] The second endpoint is determined from the clustering results based on the distance of each point to the initial baseline, where the initial baseline is the line connecting the first endpoints.
[0134] In this embodiment, the two-dimensional point clouds of each cluster result can be filtered by the angle between each two-dimensional point cloud and the origin of the point cloud coordinate system, determining at least two endpoints as the first endpoints of the cluster result. Specifically, the angle between each two-dimensional point cloud in a cluster result and the origin of the point cloud coordinate system is calculated, and point A with the smallest angle and point B with the largest angle are selected as the first endpoints. The method for filtering the first endpoints of other cluster results in the two-dimensional cluster result is the same as that for the first endpoints of this cluster result, and will not be repeated here.
[0135] After at least two first endpoints, connect the first endpoints as follows: As the initial baseline, calculate the distance between each 2D point cloud in the clustering results and the lines connecting it to the multiple first endpoints obtained from the filtered clustering results. The distance from the initial baseline is [value missing]. The furthest point C is the breakpoint, and ABC represents the "L-shape" of the clustering result. Calculate the line segments. and If the included angle satisfies a specific interval, then the breakpoint C is determined to be the second endpoint.
[0136] By using the first and second endpoints in this embodiment, the edges corresponding to each clustering result can be accurately fitted, avoiding the exclusion of point clouds such as rearview mirrors of vehicles in the surrounding environment that may exceed the bottom bounding box from the edges, thereby improving the accuracy of edge recognition.
[0137] In some embodiments of this application, for one or more clustering results in a two-dimensional clustering result, edge recognition is performed on the clustering result based on multiple baseline edge lines constructed from multiple target endpoints and the two-dimensional point cloud in the clustering result to obtain the edge of the clustering result, including:
[0138] The two-dimensional point cloud in the clustering result is projected onto multiple baseline edge lines constructed from multiple target endpoints to obtain multiple projection results corresponding to the clustering result;
[0139] Edge identification is performed on the clustering result based on multiple projection results corresponding to the clustering result to obtain the edge of the clustering result.
[0140] In this embodiment, by projecting the two-dimensional point clouds in each clustering result onto the baseline edge lines of each clustering result, the projection results of each clustering result can be obtained. Specifically, since multiple baseline edge lines can be determined using the three-dimensional clustering results and the two first endpoints, projecting the two-dimensional point clouds in the clustering results onto multiple baseline edge lines respectively yields the projection results of the two-dimensional point clouds on multiple baseline edge lines, i.e., multiple projection results corresponding to one two-dimensional point cloud. Each two-dimensional point cloud is projected onto a single baseline edge line to obtain one projection result. Edge recognition is then performed on the corresponding clustering results based on these multiple projection results to obtain the first edge.
[0141] For example, if the two-dimensional point cloud is X, then the projection of this two-dimensional point cloud onto the two reference edge lines is: Where n1 is the first projection result of the two-dimensional point cloud X on the reference edge line 1, and n2 is the second projection result of the two-dimensional point cloud X on the reference edge line 2. The direction vector of the baseline edge line 1, The direction vector of the baseline edge line 2, θ is the direction angle.
[0142] In some embodiments of this application, the above-described method of performing edge recognition on one or more clustering results in a two-dimensional clustering result, based on multiple projection results corresponding to the clustering result, to obtain the edge of the clustering result, includes:
[0143] The target orientation angle is obtained by filtering the orientation angle corresponding to the clustering result based on multiple projection results corresponding to the clustering result.
[0144] The edges of the clustering result are determined based on the target orientation angle and the two-dimensional point cloud in the clustering result.
[0145] In this embodiment, the target orientation angle is obtained by filtering the orientation angles corresponding to the clustering results based on the projection results. The orientation angle is related to the direction vector of the baseline edge line. Therefore, the orientation angle can be initialized to 0, and all directions can be traversed to a preset angle with a preset step size. By adjusting the orientation angle, the direction vector of the baseline edge line can be changed, thereby altering the projection result of the 2D point cloud in the clustering results onto the baseline edge line. Thus, the error of the projection result corresponding to each 2D point cloud under different orientation angles can be calculated. The target orientation angle is obtained by filtering the orientation angles based on this error.
[0146] In some embodiments of this application, the above-mentioned filtering of the orientation angle corresponding to one or more clustering results in the two-dimensional clustering results to obtain the target orientation angle based on multiple projection results corresponding to the clustering result includes:
[0147] Calculate the error between multiple projection results corresponding to the clustering result;
[0148] The target orientation angle is obtained by filtering the orientation angles corresponding to the clustering results based on the error.
[0149] In this embodiment, the error between multiple projection results corresponding to each clustering result can be calculated according to a preset objective function. For example, the objective function is a squared error function. If there are two projection results, namely a first projection result and a second projection result, the squared error is calculated based on the first and second projection results to obtain the error corresponding to the clustering result. The target direction angle is obtained by filtering the direction angle corresponding to the clustering result based on the error. For example, the direction angle of the edge is initialized to θ = 0, and all directions are traversed to π / 2 - δ with a step size of δ. The error between multiple projection results corresponding to each two-dimensional point cloud in the clustering result is calculated. The extreme value is selected from the errors corresponding to all two-dimensional point clouds, and the angle corresponding to the extreme value is taken as the target direction angle.
[0150] In some embodiments of this application, the multiple projection results corresponding to the above clustering results include first projection results and second projection results. The process of determining the edge of the clustering result based on the target orientation angle and the two-dimensional point cloud in the clustering result may include: calculating the first projection result and the second projection result corresponding to each two-dimensional point cloud in the clustering result based on the target orientation angle; selecting at least two first projection results as first target projection results from multiple first projection results, and selecting at least two second projection results as second target projection results from multiple second projection results; and determining the edge of the clustering result based on the target orientation angle, at least two first target projection results, and at least two second target projection results.
[0151] Based on the target orientation angle and the two-dimensional point cloud in the clustering result, the edges of the clustering result can be determined. Specifically, the edges corresponding to the clustering result at the target orientation angle can be calculated using the following formula:
[0152] {a i x+b i x = n i |i=1,2,3,4}
[0153]
[0154]
[0155] In this diagram, subscripts 1, 2, 3, and 4 represent the four sides of the minimum bounding box corresponding to the clustering result, and a and b are the parameters of the sides. These four sides are the edges of the clustering result, and θ* is the target orientation angle. The first projection result of the two-dimensional point cloud X onto the reference edge line 1 under the target direction angle. The second projection result of the two-dimensional point cloud X onto the reference edge line 2 under the target direction angle.
[0156] By filtering the orientation angles corresponding to the clustering results based on the errors between multiple projection results in this embodiment, the error of edge recognition can be reduced, the accuracy of edge recognition can be improved, and the optimal recognition of the edges corresponding to each clustering result can be achieved.
[0157] In some embodiments of this application, the point cloud data of the vehicle's surrounding environment is obtained by preprocessing and / or ground segmentation of the original point cloud data of the vehicle's surrounding environment; the preprocessing includes at least one of the following: pass-through filtering, downsampling, outlier filtering, and point cloud field of view correction.
[0158] In this embodiment, the acquired point cloud data of the vehicle's surrounding environment often contains noise points and outliers. Therefore, to further improve parking space recognition efficiency, the acquired point cloud data can be preprocessed to reduce the amount of data processing, thereby improving parking space recognition efficiency. Specifically, the preprocessing of the point cloud data includes at least one of the following: pass-through filtering, downsampling, outlier filtering, and point cloud field-of-view correction.
[0159] Specifically, passing through filtering the point cloud data in the XYZ dimensions can crop points outside a specified range, filtering out the effective point cloud regions. Downsampling can be achieved through voxelization, where the centroid of each voxel is the downsampled point cloud, improving algorithm speed while preserving the shape characteristics of the point cloud. Outlier filtering can be achieved through radius filtering, traversing each point in the point cloud and performing statistical analysis on the neighborhood of each point. If the number of points within a specified radius of a point cloud is less than a threshold, that point is considered an outlier. Pruning outliers that do not meet the criteria can further improve the efficiency of parking space recognition. Point cloud field of view correction can be based on the calibration parameters of the device (such as the calibration parameters of a LiDAR), supplementing and correcting the point cloud field of view by rotating the coordinate system.
[0160] Ground segmentation refers to distinguishing between ground points and non-ground points in point cloud data. Ground segmentation of preprocessed point cloud data can be performed using algorithms based on plane fitting, deep learning, or the RANSAC (Random Sample Consensus) algorithm. For example, by using RANSAC to fit and segment the ground plane, a ground-free point cloud, i.e., the target point cloud, is obtained. Clustering of the target point cloud yields a 3D clustering result.
[0161] In this embodiment, preprocessing and ground segmentation can trim non-standard point clouds, reduce data processing volume, and improve parking space recognition efficiency.
[0162] In some embodiments of this application, the above-mentioned output parking area may include: displaying the parking area on the display screen of the vehicle's in-vehicle system.
[0163] When the vehicle's in-vehicle map application is enabled, or when the vehicle's parking function is enabled, a map will be displayed on the in-vehicle system's screen, and the parking area will be marked on the map.
[0164] To facilitate better implementation of the parking space recognition method provided in this application, this application also provides an apparatus based on the above-described parking space recognition method. The meanings of the terms used are the same as in the above-described parking space recognition method, and specific implementation details can be found in the descriptions within the method embodiments.
[0165] For example, such as Figure 5 As shown, the parking space recognition device may include: a confirmation module 501 and a recognition module 502.
[0166] in,
[0167] The confirmation module 501 is used to determine the two-dimensional clustering result of the point cloud data of the vehicle's surrounding environment projected onto a preset plane;
[0168] The identification module 502 is used to output the parking area of the vehicle's surrounding environment based on the two-dimensional clustering results.
[0169] In one embodiment of this application, the confirmation module 501 includes:
[0170] The first confirmation unit is used to cluster the point cloud data of the vehicle's surrounding environment to obtain a three-dimensional clustering result; project the three-dimensional clustering result onto a preset plane to obtain a two-dimensional clustering result; or,
[0171] The second confirmation unit is used to project the point cloud data of the vehicle's surrounding environment onto a preset plane to obtain two-dimensional point cloud data; and to cluster the two-dimensional point cloud data to obtain two-dimensional clustering results.
[0172] In one embodiment of this application, the first confirmation unit includes:
[0173] The third confirmation unit is used to determine the number of point clouds in the three-dimensional clustering results;
[0174] The first projection unit is used to project the three-dimensional clustering result onto a preset plane to obtain the two-dimensional clustering result if the number is greater than or equal to a preset number threshold.
[0175] In one embodiment of this application, the identification module 502 includes:
[0176] The area confirmation unit is used to determine the parking area around the vehicle based on the results of two-dimensional clustering.
[0177] The output unit is used to output the parking area if the parking area meets the vehicle passage conditions.
[0178] In one embodiment of this application, the aforementioned area confirmation unit includes:
[0179] An edge recognition unit is used to perform edge recognition on one or more clustering results in a two-dimensional clustering result, and obtain the edges of the clustering result;
[0180] The region confirmation subunit is used to determine the parking area of the vehicle's surrounding environment based on the edges of one or more clustering results.
[0181] In one embodiment of this application, for one or more clustering results in a two-dimensional clustering result, the edge recognition unit includes:
[0182] A filtering unit is used to filter out multiple target endpoints from the clustering results;
[0183] The first edge recognition subunit is used to perform edge recognition on the clustering result based on multiple reference edge lines constructed from multiple target endpoints and the two-dimensional point cloud in the clustering result, so as to obtain the edge of the clustering result.
[0184] In one embodiment of this application, the target endpoint includes a first endpoint and a second endpoint; for one or more clustering results in the two-dimensional clustering results, the filtering unit includes:
[0185] The first screening subunit is used to determine at least two edge points as first endpoints from the clustering results;
[0186] The second screening subunit is used to determine the second endpoint from the clustering result based on the distance of each point in the clustering result to the initial baseline, wherein the initial baseline is the line connecting the first endpoints.
[0187] In one embodiment of this application, for one or more clustering results in a two-dimensional clustering result, the first edge recognition subunit includes:
[0188] The second projection unit is used to project the two-dimensional point cloud in the clustering result onto multiple reference edge lines constructed by multiple target endpoints, so as to obtain multiple projection results corresponding to the clustering result;
[0189] The second edge recognition subunit is used to perform edge recognition on the clustering result based on multiple projection results corresponding to the clustering result, and obtain the edge of the clustering result.
[0190] In one embodiment of this application, for one or more clustering results in a two-dimensional clustering result, the second edge recognition subunit includes:
[0191] The third filtering subunit is used to filter the direction angle corresponding to the clustering result based on multiple projection results corresponding to the clustering result, so as to obtain the target direction angle;
[0192] The fourth filtering subunit is used to determine the edges of the clustering result based on the target orientation angle and the two-dimensional point cloud in the clustering result.
[0193] In one embodiment of this application, for one or more clustering results in the two-dimensional clustering results, the third screening subunit includes:
[0194] The error confirmation unit is used to calculate the error between multiple projection results corresponding to the clustering result;
[0195] The fifth filtering subunit is used to filter the direction angles corresponding to the clustering results based on the error, so as to obtain the target direction angle.
[0196] In one embodiment of this application, the multiple projection results corresponding to the clustering result include a first projection result and a second projection result, and the fourth screening subunit includes:
[0197] The processing unit is used to calculate the first projection result and the second projection result corresponding to each two-dimensional point cloud in the clustering result based on the target orientation angle;
[0198] The sixth filtering subunit is used to filter at least two first projection results from multiple first projection results as first target projection results, and to filter at least two second projection results from multiple second projection results as second target projection results;
[0199] The fourth confirmation unit determines the edges of the clustering result based on the target orientation angle, at least two first target projection results, and at least two second target projection results.
[0200] In one embodiment of this application, the two-dimensional clustering result includes one or more clustering results, and the one or more clustering results include a first clustering result and a second clustering result; the parking area of the vehicle's surrounding environment is determined only when the distance between the first clustering result and the second clustering result meets a preset distance condition.
[0201] In one embodiment of this application, the distance between the first clustering result and the second clustering result satisfies a preset distance condition, including: the distance between the first edge of the first clustering result and the second edge of the second clustering result satisfies the preset first distance condition, and the distance between the first center point corresponding to the first edge and the second center point corresponding to the second edge satisfies the preset second distance condition.
[0202] In one embodiment of this application, the parking area meets the conditions for vehicle passage, including: the parking area is in a passable state, wherein the passable state of the parking area is obtained by searching for the parking area in a set map.
[0203] In one embodiment of this application, the output unit is specifically used to display the parking area on the display screen of the vehicle's in-vehicle system.
[0204] In practice, each of the above modules can be implemented as an independent entity or can be combined arbitrarily to be implemented as the same or several entities. For the specific implementation methods and corresponding beneficial effects of each of the above modules, please refer to the previous method embodiments, which will not be repeated here.
[0205] This application also provides an electronic device, which may be a terminal, etc. Figure 6 As shown, it illustrates a structural schematic diagram of the electronic device involved in the embodiments of this application, specifically:
[0206] The electronic device may include components such as a processor 601 with one or more processing cores, a memory 602 with one or more computer-readable storage media, a power supply 603, and an input unit 604. Those skilled in the art will understand that... Figure 6 The electronic device structure shown does not constitute a limitation on the electronic device and may include more or fewer components than shown, or combine certain components, or have different component arrangements. Wherein:
[0207] The processor 601 is the control center of the electronic device, connecting various parts of the device via various interfaces and lines. It executes computer programs and / or modules stored in the memory 602, and calls data stored in the memory 602, to perform various functions and process data. Optionally, the processor 601 may include one or more processing cores; preferably, the processor 601 may integrate an application processor and a modem processor, wherein the application processor mainly handles the operating system, user interface, and applications, and the modem processor mainly handles wireless communication. It is understood that the modem processor may not be integrated into the processor 601.
[0208] The memory 602 can be used to store computer programs and modules. The processor 601 executes various functional applications and data processing by running the computer programs and modules stored in the memory 602. The memory 602 may mainly include a program storage area and a data storage area. The program storage area may store the operating system, computer programs required for at least one function (such as sound playback function, image playback function, etc.), etc.; the data storage area may store data created according to the use of the electronic device, etc. In addition, the memory 602 may include high-speed random access memory, and may also include non-volatile memory, such as at least one disk storage device, flash memory device, or other volatile solid-state storage device. Accordingly, the memory 602 may also include a memory controller to provide the processor 601 with access to the memory 602.
[0209] The electronic device also includes a power supply 603 that supplies power to the various components. Preferably, the power supply 603 can be logically connected to the processor 601 through a power management system, thereby enabling functions such as charging, discharging, and power consumption management through the power management system. The power supply 603 may also include one or more DC or AC power supplies, recharging systems, power fault detection circuits, power converters or inverters, power status indicators, and other arbitrary components.
[0210] The electronic device may also include an input unit 604, which can be used to receive input digital or character information and generate keyboard, mouse, joystick, optical or trackball signal inputs related to user settings and function control.
[0211] Although not shown, the electronic device may also include a display unit, etc., which will not be described in detail here. Specifically, in this embodiment, the processor 601 in the electronic device loads the executable files corresponding to the processes of one or more computer programs into the memory 602 according to the following instructions, and the processor 601 runs the computer programs stored in the memory 602 to realize various functions, such as:
[0212] Determine the two-dimensional clustering results of projecting point cloud data of the vehicle's surrounding environment onto a preset plane;
[0213] Based on the two-dimensional clustering results, the parking area of the vehicle's surrounding environment is output.
[0214] For details on the specific implementation methods and corresponding beneficial effects of each of the above operations, please refer to the detailed description of the parking space recognition method above, which will not be repeated here.
[0215] Those skilled in the art will understand that all or part of the steps in the various methods of the above embodiments can be performed by a computer program, or by a computer program controlling related hardware. The computer program can be stored in a computer-readable storage medium and loaded and executed by a processor.
[0216] Therefore, embodiments of this application provide a computer-readable storage medium storing a computer program that can be loaded by a processor to execute the steps of any of the parking space recognition methods provided in this application. For example, the computer program can execute the following steps:
[0217] Determine the two-dimensional clustering results of projecting point cloud data of the vehicle's surrounding environment onto a preset plane;
[0218] Based on the two-dimensional clustering results, the parking area of the vehicle's surrounding environment is output.
[0219] For details on the specific implementation methods and corresponding beneficial effects of the above operations, please refer to the previous embodiments, which will not be repeated here.
[0220] The computer-readable storage medium may include: read-only memory (ROM), random access memory (RAM), disk or optical disk, etc.
[0221] Since the computer program stored in the computer-readable storage medium can execute the steps in any of the parking space recognition methods provided in the embodiments of this application, the beneficial effects that any of the parking space recognition methods provided in the embodiments of this application can achieve can be realized. For details, please refer to the previous embodiments, which will not be repeated here.
[0222] According to one aspect of this application, a computer program product or computer program is provided, comprising computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the aforementioned parking space recognition method.
[0223] According to one aspect of this application, a vehicle is provided, including the aforementioned parking space recognition device, or the aforementioned electronic device, or the aforementioned computer-readable storage medium.
[0224] The above provides a detailed description of a parking space identification method, device, electronic device, storage medium, and vehicle provided in the embodiments of this application. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the above embodiments are only for the purpose of helping to understand the method and core ideas of this application. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of this application. Therefore, the content of this specification should not be construed as a limitation of this application.
Claims
1. A parking space recognition method characterized by comprising: The method comprises the following steps: determining a two-dimensional clustering result of point cloud data of a vehicle surrounding environment projected to a preset plane; outputting a parking area of the vehicle surrounding environment based on the two-dimensional clustering result.
2. The parking space recognition method according to claim 1, characterized by, The method comprises the following steps: clustering the point cloud data of the vehicle surrounding environment to obtain a three-dimensional clustering result; projecting the three-dimensional clustering result to the preset plane to obtain a two-dimensional clustering result; or projecting the point cloud data of the vehicle surrounding environment to the preset plane to obtain two-dimensional point cloud data; and clustering the two-dimensional point cloud data to obtain a two-dimensional clustering result.
3. The parking space recognition method according to claim 2, characterized in that, The method comprises the following steps: determining the number of point clouds in the three-dimensional clustering result; if the number is greater than or equal to a preset number threshold, projecting the three-dimensional clustering result to the preset plane to obtain the two-dimensional clustering result.
4. The parking space recognition method according to any one of claims 1 to 3, characterized in that, The method comprises the following steps: determining a parking area of the vehicle surrounding environment based on the two-dimensional clustering result; if the parking area meets the passing condition of the vehicle, outputting the parking area.
5. The parking space recognition method according to claim 4, characterized in that, The method comprises the following steps: for one or more clustering results in the two-dimensional clustering result, performing edge recognition on the clustering result to obtain the edge of the clustering result; determining a parking area of the vehicle surrounding environment according to the edge of the one or more clustering results.
6. The parking space recognition method according to claim 5, characterized by For the one or more clustering results in the two-dimensional clustering result, the method of performing edge recognition on the clustering result to obtain the edge of the clustering result comprises the following steps: screening a plurality of target endpoints from the clustering result; performing edge recognition on the clustering result according to a plurality of reference edge lines constructed by the plurality of target endpoints and the two-dimensional point cloud in the clustering result to obtain the edge of the clustering result.
7. The parking space recognition method according to claim 6, characterized in that The target endpoints comprise first endpoints and second endpoints. For the one or more clustering results in the two-dimensional clustering result, the method of screening a plurality of target endpoints from the clustering result comprises the following steps: determining at least two edge points in the clustering result as the first endpoints; determining the second endpoints from the clustering result according to the distance of each point in the clustering result to an initial baseline, wherein the initial baseline is the connecting line between the first endpoints.
8. The parking space recognition method according to claim 6, characterized by, For the one or more clustering results in the two-dimensional clustering result, the method of performing edge recognition on the clustering result according to the plurality of reference edge lines constructed by the plurality of target endpoints and the two-dimensional point cloud in the clustering result to obtain the edge of the clustering result comprises the following steps: projecting the two-dimensional point cloud in the clustering result to the plurality of reference edge lines constructed by the plurality of target endpoints to obtain a plurality of projection results corresponding to the clustering result; performing edge recognition on the clustering result according to the plurality of projection results corresponding to the clustering result to obtain the edge of the clustering result.
9. The parking space recognition method according to claim 8, characterized in that, For one or more of the two-dimensional clustering results, the edge of the clustering result is determined according to the target direction angle and the two-dimensional point cloud in the clustering result, including: The direction angle corresponding to the clustering result is filtered according to the plurality of projection results corresponding to the clustering result, to obtain a target direction angle. The edge of the clustering result is determined according to the target direction angle and the two-dimensional point cloud in the clustering result.
10. The parking space recognition method according to claim 9, characterized by, For one or more of the two-dimensional clustering results, the edge of the clustering result is determined according to the target direction angle and the two-dimensional point cloud in the clustering result, including: The error between the plurality of projection results corresponding to the clustering result is calculated. The direction angle corresponding to the clustering result is filtered according to the error, to obtain a target direction angle.
11. The parking space recognition method according to claim 9, characterized by, The plurality of projection results corresponding to the clustering result includes a first projection result and a second projection result, and the edge of the clustering result is determined according to the target direction angle and the two-dimensional point cloud in the clustering result, including: The first projection result and the second projection result corresponding to each two-dimensional point cloud in the clustering result are calculated according to the target direction angle. At least two first projection results are filtered out from the plurality of first projection results as first target projection results, and at least two second projection results are filtered out from the plurality of second projection results as second target projection results. The edge of the clustering result is determined according to the target direction angle, at least two first target projection results and at least two second target projection results.
12. The parking space recognition method according to claim 1, characterized by, The two-dimensional clustering results include one or more clustering results, and the one or more clustering results include a first clustering result and a second clustering result; the parking area of the vehicle surrounding environment is determined only when the distance between the first clustering result and the second clustering result satisfies a preset distance condition.
13. The parking space recognition method according to claim 12, characterized by, The distance between the first clustering result and the second clustering result satisfies a preset distance condition, including that the distance between the first edge of the first clustering result and the second edge of the second clustering result satisfies a preset first distance condition, and the distance between the first center point corresponding to the first edge and the second center point corresponding to the second edge satisfies a preset second distance condition.
14. The parking space recognition method according to claim 4, characterized by, The parking area satisfies the passing condition of the vehicle, including that the passing state of the parking area is a passable state, wherein the passing state of the parking area is obtained by searching the parking area in a set map.
15. The parking space recognition method according to any one of claims 5 to 13, characterized in that, The output of the parking area of the vehicle surrounding environment includes: Displaying the parking area on a display screen of a vehicle-mounted system of the vehicle.
16. The parking space recognition method according to any one of claims 1 to 3, characterized in that, The point cloud data of the vehicle surrounding environment is obtained by preprocessing and / or ground segmentation processing of original point cloud data of the vehicle surrounding environment; the preprocessing includes at least one of straight-through filtering processing, downsampling processing, outlier filtering processing and point cloud field of view angle correction.
17. A parking space recognition device, characterized by Including: A confirmation module is configured to determine two-dimensional clustering results of point cloud data of a vehicle surrounding environment projected onto a preset plane; An identification module is configured to output a parking area of the vehicle surrounding environment based on the two-dimensional clustering results.
18. An electronic device, comprising: The parking space recognition device comprises a processor connected with a memory, and the memory stores a computer program; the processor is used to run the computer program in the memory to execute the parking space recognition method in any one of claims 1 to 16.
19. A computer-readable storage medium, characterized in that, The computer readable storage medium stores a computer program, and the computer program is adapted to be loaded by the processor to execute the parking space recognition method in any one of claims 1 to 16.
20. A vehicle characterized by The parking space recognition device as claimed in claim 17, or the electronic device as claimed in claim 18, or the computer readable storage medium as claimed in claim 19.