Method for extracting point cloud edge feature points and vehicle

Through the proposed point cloud edge feature point extraction method, the problem of low accuracy of traditional point cloud processing methods is solved, higher extraction accuracy and adaptability to complex scenarios are achieved, and the path planning and obstacle detection reliability of the autonomous driving system are improved.

CN120198680APending Publication Date: 2025-06-24GREAT WALL MOTOR CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510305742.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-14
Publication Date
2025-06-24

AI Technical Summary

Technical Problem

Traditional point cloud processing methods have the problem of low processing accuracy, which leads to insufficient reliability when using point clouds for path planning and obstacle detection.

Method used

A method for extracting point cloud edge feature points is proposed. By receiving initial point cloud data for filtering, a preset direction is obtained and the target line is determined, and the distance between it and the target line is determined for each initial edge feature point. If the distance is less than or equal to the preset distance threshold, it is determined as an edge feature point.

Benefits of technology

The extraction accuracy and accuracy of point cloud edge feature points are improved, adaptability to complex scenes is enhanced, and the reliability of subsequent path planning and obstacle detection is improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120198680A_ABST
    Figure CN120198680A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of computers, and provides a point cloud edge feature point extraction method and a vehicle, initial point cloud data is received, and the initial point cloud data is filtered to obtain a plurality of initial edge feature points; obtaining a preset direction, and determining a target straight line according to the preset direction and the plurality of initial edge feature points; and for each initial edge feature point, determining a first distance between the initial edge feature point and the target straight line, and determining the initial edge feature point as an edge feature point in response to the fact that the first distance is smaller than or equal to a first preset distance threshold. The distance between the point and the target straight line is calculated, and the point with the distance greater than the first preset distance threshold value is used as the edge feature point, so that the extraction accuracy of the edge feature point is improved, and the edge feature point is the point with the distance greater than the first preset distance threshold value from the target straight line. The extracted edge feature points have rich geometric information and higher robustness, and the precision and efficiency of subsequent point cloud matching can be remarkably improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of computer technology, and in particular, to a method for extracting edge feature points of point clouds and a vehicle. Background Art

[0002] With the rapid development of autonomous driving technology, environmental perception and path planning have become its core key technologies. Accurate environmental perception can help autonomous vehicles monitor the surrounding environment in real time, identify key information such as obstacles and road boundaries, thereby providing guarantees for safe driving.

[0003] In driving scenarios, the precise processing of point cloud data is crucial for environmental perception and decision-making. However, traditional point cloud processing methods have many limitations and relatively low processing accuracy, which further leads to insufficient reliability in subsequent path planning and obstacle detection using point clouds. Summary of the Invention

[0004] In view of this, the purpose of the present disclosure is to propose a method for extracting edge feature points of point clouds and a vehicle, so as to solve the problem that traditional point cloud processing methods have many limitations and relatively low processing accuracy, which further leads to insufficient reliability in subsequent path planning and obstacle detection using point clouds.

[0005] Based on the above purpose, the first aspect of the present disclosure provides a method for extracting edge feature points of point clouds, and the method includes:

[0006] Receiving initial point cloud data, performing filtering processing on the initial point cloud data to obtain a plurality of initial edge feature points;

[0007] Obtaining a preset direction, and determining a target straight line according to the preset direction and the plurality of initial edge feature points;

[0008] For each initial edge feature point, determining a first distance between the initial edge feature point and the target straight line, and in response to the first distance being less than or equal to a first preset distance threshold, determining the initial edge feature point as an edge feature point.

[0009] Specifically, the determining the target straight line according to the preset direction and the plurality of initial edge feature points includes:

[0010] Determining an initial target straight line that meets the preset direction from the plurality of initial edge feature points;

[0011] In response to the number of the initial target straight lines being one, determining the initial target straight line as the target straight line; or,

[0012] In response to the number of the initial target straight lines being multiple, taking the initial target straight line that contains the largest number of initial edge feature points as the target straight line.

[0013] Specifically, determining an initial target line that meets a preset direction from multiple initial edge feature points includes:

[0014] Regarding multiple initial edge feature points as a target point cloud;

[0015] Iteratively execute based on the target point cloud: Select a first target point and a second target point from the target point cloud according to the preset direction, and determine an initial line corresponding to the first target point and the second target point;

[0016] In response to meeting a preset iteration end condition, regard the initial line as the initial target line.

[0017] Specifically, after determining the initial line corresponding to the first target point and the second target point, it further includes:

[0018] In response to not meeting the preset iteration end condition, perform filtering processing on the target point cloud according to the initial line to obtain a new target point cloud;

[0019] Use the new target point cloud to update the target point cloud, and repeat the iterative execution until the preset iteration end condition is met.

[0020] Through the above solution, when detecting an initial line, determine the points within the surrounding area of the initial line and remove them from the target point cloud. Continue to perform iterative loop detection on the remaining new target point cloud, and then extract multiple initial lines, achieving accurate detection of multiple initial lines, avoiding omissions. At the same time, detect multiple initial lines in the scene, that is, this method can also be used to detect initial lines in a scene with multiple line structures, enhancing the adaptability to complex scenes.

[0021] Specifically, performing filtering processing on the target point cloud according to the initial line to obtain a new target point cloud includes:

[0022] Regarding each initial edge feature point as a target edge feature point respectively, and determining a second distance between the target edge feature point and the initial line;

[0023] In response to the second distance being less than or equal to a second preset distance threshold, determine that the initial line contains the target edge feature point, and delete the target edge feature point from the target point cloud to obtain a new target point cloud.

[0024] Through the above solution, by determining the second distance between the initial edge feature point and the initial straight line, and then determining whether the initial straight line contains the initial edge feature point according to the second distance, the target edge points with the second distance less than or equal to the second preset distance threshold are used as the inliers of the initial straight line, and then the target edge points are deleted, so as to filter the points in the target point cloud and obtain a new target point cloud. By comparing the second distance with the second preset distance threshold, the filtering of the target point cloud is realized, and the filtering of the target point cloud is more accurate, and then the obtained new target point cloud is more accurate.

[0025] Specifically, the selecting the first target point and the second target point from the target point cloud according to the preset direction includes:

[0026] Randomly select two points from the target point cloud as the first initial point and the second initial point, and determine the straight line direction vector between the first initial point and the second initial point;

[0027] Determine the first direction vector corresponding to the preset direction, and calculate the included angle between the straight line direction vector and the first direction vector;

[0028] In response to the included angle being less than or equal to the preset included angle threshold, determine the first initial point as the first target point and the second initial point as the second target point.

[0029] Through the above solution, when initially selecting two points forming a straight line, a directional constraint is introduced to calculate the included angle between the straight line formed by these two points and the preset direction. If the included angle is greater than the set threshold, reselect; if the included angle is less than the threshold, continue with the subsequent point number calculation and multiple sampling votes to determine the straight line model. This directional constraint mechanism effectively avoids misjudgment caused by random sampling and improves the accuracy and robustness of straight line detection.

[0030] Specifically, the receiving the initial point cloud data and performing filtering processing on the initial point cloud data to obtain a plurality of initial edge feature points includes:

[0031] Receive the initial point cloud data and determine the curvature value corresponding to each point in the initial point cloud data;

[0032] In response to the curvature value being greater than the preset curvature threshold, determine that this point is an initial edge feature point; or,

[0033] In response to the curvature value being less than or equal to the preset curvature threshold, determine that this point is a plane feature point.

[0034] Specifically, the determining the curvature value corresponding to each point in the initial point cloud data includes:

[0035] For each point, take this point as the point to be processed and determine the first intensity value corresponding to the point to be processed;

[0036] Select a preset number of other points closest to this point as relevant points, and determine the second intensity value corresponding to each relevant point;

[0037] Subtract each second intensity value from the first intensity value respectively to obtain a plurality of intensity differences;

[0038] Sum up all the intensity differences to obtain a target sum value;

[0039] Multiply the first intensity value by the preset number to obtain a target product value;

[0040] Divide the target sum value by the target product value to obtain the curvature value corresponding to the point to be processed.

[0041] Specifically, for each initial edge feature point, after determining the first distance between the initial edge feature point and the target line, it further includes:

[0042] In response to the first distance being greater than the first preset distance threshold, determine that this initial edge feature point is a planar feature point and delete this initial edge feature point.

[0043] Based on the same inventive concept, a second aspect of the present disclosure provides an extraction device for point cloud edge feature points, including:

[0044] A data receiving module, configured to receive initial point cloud data, perform filtering processing on the initial point cloud data to obtain a plurality of initial edge feature points;

[0045] A target line determination module, configured to obtain a preset direction, and determine a target line according to the preset direction and the plurality of initial edge feature points;

[0046] An edge feature point determination module, configured to, for each initial edge feature point, determine the first distance between the initial edge feature point and the target line, and in response to the first distance being less than or equal to the first preset distance threshold, determine that the initial edge feature point is an edge feature point.

[0047] Based on the same inventive concept, a third aspect of the present disclosure provides an electronic device, including a memory, a processor, and a computer program stored on the memory and executable by the processor, and the processor implements the extraction method of point cloud edge feature points as described above when executing the computer program.

[0048] Based on the same inventive concept, a fourth aspect of the present disclosure provides a non-transitory computer-readable storage medium, and the non-transitory computer-readable storage medium stores computer instructions for causing a computer to execute the extraction method of point cloud edge feature points as described above.

[0049] Based on the same inventive concept, a fifth aspect of the present disclosure provides a vehicle, including the extraction device for point cloud edge feature points described in the second aspect, or the electronic device described in the third aspect, or the storage medium described in the fourth aspect.

[0050] As can be seen from the above, the present disclosure proposes a method for extracting point cloud edge feature points and a vehicle. The initial point cloud data is received and filtered to obtain a plurality of initial edge feature points. First, the initial point cloud data is preliminarily processed to reduce the amount of data during subsequent data processing, improving the processing efficiency. A preset direction is obtained, and a target line is determined based on the preset direction and the plurality of initial edge feature points. By introducing a directional constraint to determine the target line, the obtained target lines are all basically consistent with the preset direction. Subsequently, the edge feature points are determined using the target line, such that the obtained edge feature points are all edge feature points in the preset direction, making the determination of the edge feature points more accurate and improving the extraction accuracy of the edge feature points. For each initial edge feature point, a first distance between the initial edge feature point and the target line is determined. In response to the first distance being less than or equal to a first preset distance threshold, the initial edge feature point is determined as an edge feature point. By calculating the distance between a point and the target line, if the distance is less than or equal to the first preset distance threshold, it indicates at this time that the initial edge feature point is relatively close to the target line and can be used as the edge feature point corresponding to the target line. By comparing the distance between the point and the target line with the first preset distance threshold, the determination condition of the edge feature point is clarified, improving the extraction accuracy of the edge feature point. And since the edge feature point is a point whose distance from the target line is less than or equal to the first preset distance threshold, the edge feature point has a stronger correlation with the target line. Therefore, the edge feature point has richer geometric information compared to points farther from the target line. Subsequently, the extracted edge feature points have richer edge features, improving the accuracy and efficiency of point cloud matching when performing point cloud matching based on the edge features. BRIEF DESCRIPTION OF THE DRAWINGS

[0051] In order to more clearly illustrate the technical solutions in the present disclosure or related technologies, the following will briefly introduce the drawings required for use in the embodiments or related technology descriptions. Obviously, the drawings in the following description are only embodiments of the present disclosure. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.

[0052] Figure 1 It is a flowchart of the method for extracting point cloud edge feature points according to an embodiment of the present disclosure;

[0053] Figure 2 It is a schematic diagram of the start point index and end point index according to an embodiment of the present disclosure;

[0054] Figure 3 It is a structural block diagram of an extraction device for point cloud edge feature points according to an embodiment of the present disclosure;

[0055] Figure 4 It is a schematic structural diagram of an electronic device according to an embodiment of the present disclosure. Detailed implementation manners

[0056] To make the objectives, technical solutions, and advantages of the present disclosure more clear and understandable, the present disclosure will be further described in detail below in conjunction with specific embodiments and with reference to the accompanying drawings.

[0057] It should be noted that unless otherwise defined, the technical terms or scientific terms used in the embodiments of the present disclosure should be the ordinary meanings understood by those of ordinary skill in the field to which the present disclosure belongs. The "first", "second" and similar terms used in the embodiments of the present disclosure do not denote any order, quantity or importance, but are only used to distinguish different components. The terms such as "including" or "comprising" mean that the elements or objects appearing before this term cover the elements or objects listed after this term and their equivalents, without excluding other elements or objects. The terms such as "connected" or "coupled" are not limited to physical or mechanical connections, but may include electrical connections, whether direct or indirect. The terms such as "upper", "lower", "left", "right" are only used to represent relative positional relationships, and when the absolute position of the object being described changes, the relative positional relationship may also change accordingly.

[0058] With the rapid development of autonomous driving technology, environmental perception and path planning have become its core key technologies. Accurate environmental perception can help autonomous driving vehicles monitor the surrounding environment in real time, identify key information such as obstacles and road boundaries, thereby providing guarantees for safe driving.

[0059] For example, the accuracy of edge points divided only by curvature is limited, and it is difficult to accurately capture straight-line features (such as road edges, guardrails, and building contours). In addition, traditional methods are prone to be affected by noise and the disordered distribution of point clouds in the detection of multi-line straight-line structures, resulting in misjudgment and insufficient accuracy. These problems seriously affect the reliability of path planning and obstacle detection in autonomous driving systems.

[0060] In the driving scenario, the precise processing of point cloud data is crucial for environmental perception and decision-making. However, traditional point cloud processing methods have many limitations and relatively low processing accuracy, thus resulting in insufficient reliability when using point clouds for subsequent path planning and obstacle detection.

[0061] Based on the above description, an embodiment of the present disclosure proposes a method for extracting point cloud edge feature points, as Figure 1 shown, the method includes:

[0062] Step 101: Receive the initial point cloud data, perform filtering processing on the initial point cloud data to obtain multiple initial edge feature points;

[0063] In specific implementation, receive the initial point cloud data, where the initial point cloud data is the data detected by a lidar. Perform filtering processing on the initial point cloud data to obtain multiple initial edge feature points.

[0064] In this embodiment, the purpose of the filtering processing is to distinguish planar points from edge points, that is, to screen out planar points from the initial point cloud data through filtering processing and only leave the initial edge feature points. Specifically, the filtering processing method can be filtering by the curvature corresponding to the initial point cloud data, filtering by the curvature smoothness corresponding to the initial point cloud data, etc.

[0065] Step 102: Obtain a preset direction, and determine a target line according to the preset direction and the multiple initial edge feature points.

[0066] In specific implementation, obtain a preset direction, where the preset direction is a pre-set direction, which can be the traveling direction or the direction of a known structure. Use the preset direction as an orientation constraint condition, and determine a target line according to the preset direction and the multiple initial edge feature points. The target line is the extracted line structure, and the line structure is a structure with a straight shape in the real scene, such as a building edge, a guardrail, a road sign, etc.

[0067] Step 103: For each initial edge feature point, determine a first distance between the initial edge feature point and the target line. In response to the first distance being less than or equal to a first preset distance threshold, determine the initial edge feature point as an edge feature point.

[0068] In specific implementation, for each initial edge feature point, determine a first distance between the initial edge feature point and the target line. The first distance is the spatial distance between the initial edge feature point and the target line.

[0069] Exemplarily, the initial edge feature point is point P(x, y, z), the target line is L, and the target line L is defined by two points, namely P1(x1, y1, z1) and P2(x2, y2, z2). The parametric equation of the target line L is expressed as:

[0070]

[0071] where t is a preset parameter.

[0072] Then the first distance is expressed by the formula:

[0073]

[0074] where d is the first distance, is the vector from point P1 to point P, and is the direction vector of the target line, and

[0075] Obtain a first preset distance threshold, and compare the first distance with the first preset distance threshold. If the first distance is greater than the first preset distance threshold, determine that the initial edge feature point with the first distance greater than the first preset distance threshold is a plane point. A plane point is a point irrelevant to the current line. Therefore, delete the initial edge feature point from the multiple initial edge feature points and classify it into the plane point cloud group for subsequent other processing or segmentation.

[0076] If the first distance is less than or equal to the first preset distance threshold, determine that the initial edge feature point with the first distance less than or equal to the first preset distance threshold is an inlier of the target line, which is an edge feature point and can be used for subsequent edge feature extraction.

[0077] Through the above solution, receive the initial point cloud data, perform filtering processing on the initial point cloud data to obtain multiple initial edge feature points. First, perform preliminary processing on the initial point cloud data to reduce the amount of data during subsequent data processing and improve the processing efficiency. Obtain a preset direction, and determine the target line according to the preset direction and the multiple initial edge feature points. By introducing a directional constraint to determine the target line, the obtained target lines are all basically consistent with the preset direction. Subsequently, use the target line to determine the edge feature points, so that the obtained edge feature points are all edge feature points in the preset direction, making the determination of the edge feature points more accurate and further improving the extraction accuracy of the edge feature points. For each initial edge feature point, determine the first distance between the initial edge feature point and the target line. In response to the first distance being less than or equal to the first preset distance threshold, if the distance is less than or equal to the first preset distance threshold, it means that the initial edge feature point is relatively close to the target line at this time and can be used as the edge feature point corresponding to the target line. By comparing the distance between the point and the target line with the first preset distance threshold, the determination condition of the edge feature point is clarified, improving the extraction accuracy of the edge feature point. And because the edge feature point is a point with a distance less than or equal to the first preset distance threshold from the target line, the correlation between the edge feature point and the target line is stronger. Therefore, the edge feature point has richer geometric information compared to the point farther from the target line. Furthermore, the edge features of the subsequently extracted edge feature points are more abundant, improving the accuracy and efficiency of point cloud matching when performing point cloud matching based on the edge features.

[0078] In some embodiments, after obtaining the preset direction, an initial target line that meets the preset direction may be first determined, and then the number of initial target lines may be determined. The target line is determined according to the number of initial target lines. Therefore, the step of determining the target line according to the preset direction and the multiple initial edge feature points in step 102 specifically includes:

[0079] Step 1021: Determine an initial target line that meets the preset direction from multiple initial edge feature points;

[0080] Step 1022: In response to the number of the initial target lines being one, determine the initial target line as the target line; or,

[0081] Step 1023: In response to the number of the initial target lines being multiple, use the initial target line that contains the largest number of initial edge feature points as the target line.

[0082] In specific implementation, the preset direction is a pre-set direction, which may be a traveling direction or the direction of a known structure. Among multiple initial edge feature points, a first line corresponding to the two points can be determined according to any two points. The first line that meets the preset direction is used as the initial target line.

[0083] Obtain the number of determined initial target lines. If the number of the initial target lines is one, determine that the initial target line is the target line.

[0084] If the number of initial target lines is multiple, then determine the number of initial edge feature points included in each initial target line. Traverse the number of initial edge feature points included in all initial target lines, and select the initial target line that contains the largest number of initial edge feature points as the target line.

[0085] In this embodiment, after determining the target line according to the preset direction and determining the edge feature points corresponding to the preset direction, the edge feature points are deleted from the multiple initial edge feature points to obtain the remaining initial edge feature points. Select a new preset direction, and determine a new target line according to the new preset direction and the remaining initial edge feature points. Then, for each remaining initial edge feature point, determine a third distance between the remaining initial edge feature point and the new target line. In response to the third distance being less than or equal to the first preset distance threshold, determine the remaining initial edge feature point as the edge feature point corresponding to the new preset direction.

[0086] That is to say, in the present application, after selecting a preset direction, determining a target straight line that meets the preset direction, and determining the edge feature points corresponding to the preset direction according to the target straight line, other new preset directions can be reselected, and the edge feature points corresponding to the new preset directions can be continuously determined. Therefore, in the present application, the edge feature points in multiple preset directions can be sequentially extracted, and the selection and determination can be achieved for the edge feature points in each preset direction, which is more applicable to the scenario where the preset directions are the directions of multiple known structures and meets the needs of users.

[0087] In some embodiments, after obtaining the preset direction, the initial target straight line that meets the preset direction is iteratively selected from multiple initial edge feature points. Therefore, the process of determining the initial target straight line that meets the preset direction from multiple initial edge feature points in step 1021 specifically includes:

[0088] Step 10211, taking multiple initial edge feature points as the target point cloud;

[0089] Step 10212, iteratively executing based on the target point cloud: selecting a first target point and a second target point from the target point cloud according to the preset direction, and determining the initial straight line corresponding to the first target point and the second target point;

[0090] Step 10213, in response to meeting the preset iteration end condition, taking the initial straight line as the initial target straight line.

[0091] Specifically in implementation, taking multiple initial edge feature points as the target point cloud, at least one iteration is executed based on the target point cloud, and the process executed in each iteration specifically includes:

[0092] Selecting a first target point and a second target point from the target point cloud according to the preset direction, and determining the initial straight line corresponding to the first target point and the second target point, where the direction of the straight line formed by the first target point and the second target point is the same as the preset direction.

[0093] Repeatedly iterate the above iteration process until the preset iteration end condition is met, taking the determined initial straight line as the initial target straight line, and then subsequently counting the number of initial target straight lines and determining the target straight line according to the number of initial target straight lines.

[0094] In some embodiments, if the preset iteration end condition is not met, the iteration process needs to continue. At this time, the points in the target point cloud are filtered and screened according to the initial straight line to obtain a new target point cloud.

[0095] Update the target point cloud using the new target point cloud. That is, in the next iteration, select a new first target point and a new second target point from the new target point cloud according to the preset direction, and determine the new initial straight line corresponding to the new first target point and the new second target point. Repeat the iterative execution until the preset iteration end condition is met.

[0096] Exemplarily, taking the preset iteration end condition as the number of iterations being greater than the preset number threshold as an example, the process of determining the initial target straight line that meets the preset direction from multiple initial edge feature points specifically includes:

[0097] Regard multiple initial edge feature points as the target point cloud, and select a first target point and a second target point from the target point cloud according to the preset direction. Among them, the direction of the straight line formed by the first target point and the second target point is the same as the preset direction.

[0098] Determine the initial straight line corresponding to the first target point and the second target point, use the initial straight line to filter and screen the points in the target point cloud to obtain a new target point cloud, and record the number of iterations. At this time, one iteration process is completed.

[0099] Compare the number of iterations with the preset number threshold to determine whether to continue the iteration. If the number of iterations is less than or equal to the preset number threshold, at this time, the iterative operation should be continued. Select a new first target point and a new second target point from the new target point cloud according to the preset direction, and repeat the iterative process according to the new first target point and the new second target point. That is, determine the new initial straight line corresponding to the new first target point and the new second target point, and perform filtering processing on the new target point cloud according to the new initial straight line to obtain a new target point cloud.

[0100] If the number of iterations is greater than the preset number threshold, at this time, it means that there is no need to continue the iterative process, the iteration end condition is met, then exit the iterative process, and regard all the obtained initial straight lines as the initial target straight lines.

[0101] In this embodiment, since one initial straight line can be determined for each execution of the iterative process, when this embodiment exits the iterative process, the number of obtained initial straight lines is the same as the preset number threshold, and thus the number of determined initial target straight lines is the same as the preset number threshold.

[0102] Through the above solution, when detecting an initial straight line, determine the points within the surrounding area of the initial straight line and remove them from the target point cloud, and continue the iterative loop detection for the remaining new target point cloud, thereby extracting multiple initial straight lines, achieving the precise detection of multiple initial straight lines, avoiding omission, and at the same time, detecting multiple initial straight lines in the scene, that is, this method can also be used to detect the initial straight lines in a scene with multiple straight line structures, enhancing the adaptability to complex scenes.

[0103] In some implementations, when the preset iteration end condition is not met, the target point cloud needs to be updated at this time to obtain a new target point cloud, and then the iteration is performed based on the new target point cloud. Therefore, in response to the non - satisfaction of the preset iteration end condition, the process of filtering the target point cloud according to the initial straight line to obtain a new target point cloud specifically includes:

[0104] Step A: Take each initial edge feature point as a target edge feature point respectively, and determine the second distance between the target edge feature point and the initial straight line;

[0105] Step B: In response to the second distance being less than or equal to the second preset distance threshold, determine that the initial straight line contains the target edge feature point, and delete the target edge feature point from the target point cloud to obtain a new target point cloud.

[0106] Specifically in implementation, take each initial edge feature point as a target edge feature point respectively, and calculate the second distance between the target edge feature point and the initial straight line. Exemplarily, the target edge feature point is point P(x, y), the initial straight line is L1, and the target straight line L1 is defined by two points, namely P1(x1, y1) and P2(x2, y2), then the second distance is expressed by the formula as:

[0107]

[0108] where d is the second distance, x is the abscissa of the target edge feature point, y is the ordinate of the target edge feature point, x1 is the abscissa of a point defining the target straight line, y1 is the ordinate of a point defining the target straight line, x2 is the abscissa of another point defining the target straight line, and y2 is the ordinate of another point defining the target straight line.

[0109] Compare the second distance with the second preset distance threshold. If the second distance is greater than the second preset distance threshold, it means at this time that the target edge feature point is far from the initial straight line, that is, the target edge feature point does not belong to the area around the initial straight line.

[0110] If the second distance is less than or equal to the second preset distance threshold, it means at this time that the target edge feature point is close to the initial straight line, that is, it can be considered that the target edge feature point belongs to the area around the initial straight line, that is, the initial straight line contains the target edge feature point. Delete the target edge feature point from the target point cloud to obtain a new target point cloud.

[0111] Through the above solution, by determining the second distance between the initial edge feature points and the initial straight line, and then determining whether the initial straight line contains the initial edge feature points according to the second distance, the target edge points with the second distance less than or equal to the second preset distance threshold are used as the inliers of the initial straight line, and then the target edge points are deleted, so as to filter the points in the target point cloud and obtain a new target point cloud. By comparing the second distance with the second preset distance threshold, the filtering of the target point cloud is realized, and the filtering of the target point cloud is more accurate, and then the obtained new target point cloud is more accurate.

[0112] In some embodiments, when iteratively executing based on the target point cloud, it involves selecting a first target point and a second target point from the target point cloud according to a preset direction. Since a straight line can be determined based on two points and the straight line corresponds to a direction vector, the direction vector can be compared with the preset direction to determine whether the two points are the first target point and the second target point. Therefore, the process of selecting the first target point and the second target point from the target point cloud according to the preset direction in step 10212 specifically includes:

[0113] Step a, randomly select two points from the target point cloud as the first initial point and the second initial point, and determine the straight line direction vector between the first initial point and the second initial point;

[0114] Step b, determine the first direction vector corresponding to the preset direction, and calculate the included angle between the straight line direction vector and the first direction vector;

[0115] Step c, in response to the included angle being less than or equal to the preset included angle threshold, determine the first initial point as the first target point and the second initial point as the second target point.

[0116] During specific implementation, randomly select two points from the target point cloud as the first initial point and the second initial point respectively. Obtain the first coordinate corresponding to the first initial point and the second coordinate corresponding to the second initial point, and determine the straight line direction vector between the first initial point and the second initial point according to the first coordinate and the second coordinate.

[0117] The preset direction corresponds to a first direction vector, and the included angle between the first direction vector and the straight line direction vector is calculated according to the first direction vector and the straight line direction vector.

[0118] Exemplarily, the first initial point is A(x1, y1), the second initial point is B(x2, y2), and the calculated straight line direction vector between the first initial point and the second initial point is v = (x2 - x1, y2 - y1).

[0119] Determine that the first direction vector corresponding to the preset direction is d = (dx, dy), and calculate the angle between the first direction vector and the line direction vector according to the first direction vector and the line direction vector. The angle is expressed by the formula:

[0120]

[0121] where θ is the angle.

[0122] Obtain the preset angle threshold, and compare the calculated angle with the preset angle threshold. If the angle is greater than the preset angle threshold, it is determined that the direction of the line determined by the first initial point and the second initial point deviates greatly from the preset direction, and the first initial point and / or the second initial point should be reselected.

[0123] If the angle is less than or equal to the preset angle threshold, it is determined that the direction of the line determined by the first initial point and the second initial point deviates less from the preset direction. It can be considered that the direction of the line determined by the first initial point and the second initial point is basically consistent with the preset direction. Then, the first initial point is used as the first target point, and the second initial point is used as the second target point for subsequent determination of the initial line corresponding to the first target point and the second target point. Filter the target point cloud according to the initial line to obtain a new target point cloud, and record the number of iterations to complete the iterative process.

[0124] Through the above scheme, when initially selecting two points that form a line, a directional constraint is introduced to calculate the angle between the line formed by these two points and the preset direction. If the angle is greater than the set threshold, reselect; if the angle is less than the threshold, continue with subsequent point calculations and multiple sampling votes to determine the line model. This directional constraint mechanism effectively avoids misjudgment caused by random sampling and improves the accuracy and robustness of line detection.

[0125] In some embodiments, in the initial point cloud data, in addition to edge feature points, there are also plane feature points, and the plane feature points and the edge feature points can be distinguished according to the curvature. Therefore, when receiving the initial point cloud data in step 101 and filtering the initial point cloud data to obtain multiple initial edge feature points, the initial point cloud data can be roughly divided by curvature. The specific process includes:

[0126] Step 1011, receive the initial point cloud data and determine the curvature value corresponding to each point in the initial point cloud data;

[0127] Step 1012, in response to the curvature value being greater than the preset curvature threshold, determine that this point is an initial edge feature point; or,

[0128] Step 1013, in response to the curvature value being less than or equal to the preset curvature threshold, determine that this point is a plane feature point.

[0129] In specific implementation, initial point cloud data is received, and the curvature value corresponding to each point in the initial point cloud data is determined. When determining the curvature value, the curvature of a certain point can be calculated based on multiple points around the point, and the curvature is defined as the average distance difference between the point and a preset number of surrounding points. The specific determination method of the curvature is as follows:

[0130] For each point, this point is used as the point to be processed, and the first intensity value corresponding to the point to be processed is determined. A preset number of other points closest to this point are selected as related points, and the second intensity value corresponding to each related point is determined.

[0131] Exemplarily, the preset number is 10, that is, 10 other points closest to this point are selected as related points.

[0132] The second intensity value of each point is respectively subtracted from the first intensity value to obtain a plurality of intensity differences, and all the intensity differences are summed to obtain a target sum value. The first intensity value is multiplied by the preset number to obtain a target product value.

[0133] The target sum value and the target product value are divided to obtain the curvature value corresponding to the point to be processed. The curvature value is represented by the formula:

[0134]

[0135] where c i is the curvature value of the i-th point, S is the preset number, j is the j-th related point, L is the set of points on the same scan line, that is, the initial point cloud data, is the depth value of the i-th point, that is, the distance value of point i relative to the lidar, is the depth value of the j-th point, that is, the distance value of point j relative to the lidar, and k is the scan frame index.

[0136] In this embodiment, during the curvature calculation process, in order to balance the calculation efficiency and accuracy of the algorithm, the first five points at the start of the scan frame are ignored.

[0137] A preset curvature threshold is obtained, and the determined curvature value is compared with the preset curvature threshold. If the curvature value is greater than the preset curvature threshold, this point is determined as an initial edge feature point. If the curvature value is less than or equal to the preset curvature threshold, this point is determined as a plane feature point.

[0138] Based on the same inventive concept, another embodiment of the present disclosure provides a method for determining point cloud edge feature points, which specifically includes:

[0139] In the urban road driving environment, there are many urban buildings, road signs, etc. These objects have a large number of edge and plane features. These features provide a rich data basis for point cloud matching. The main difference between plane points and edge points lies in their different curvature values.

[0140] The plane points and edge points are initially distinguished by calculating the curvature values of the laser point cloud. After the lidar scans and completes the de-distortion processing of the point cloud data, the curvature of a certain point is calculated based on multiple points around that point, and the points are classified according to the magnitude of the curvature value. If the curvature value of a certain point is large and exceeds the preset threshold cth, it is marked as an edge point; on the contrary, the points with curvature values lower than the threshold are marked as plane points.

[0141] During the curvature calculation process, in order to balance the computational efficiency and accuracy of the algorithm, the first five points at the start of the scan frame are ignored, and each point in the frame is traversed. The depth values of the i-th point and its surrounding 10 points are selected to calculate the curvature of that point. The curvature value of this point is defined as the average distance difference between this point and the surrounding 10 points. For a point i in a frame of point cloud kP, the calculation formula for its curvature is as follows:

[0142]

[0143] where, c i is the curvature value of the i-th point, S is the preset quantity, j is the j-th related point, L is the set of points on the same scan line, that is, the initial point cloud data, is the depth value of the i-th point, that is, the distance value of point i relative to the lidar, is the depth value of the j-th point, that is, the distance value of point j relative to the lidar, and k is the scan frame index.

[0144] Among them, all point cloud data is obtained by traversing each scan line. Each scan line is evenly divided into 6 segments. One of the segments is as Figure 2 shown in the shaded part. A limited number of features are separately extracted for each segment to ensure uniform distribution of the features. Calculate the start point index and end point index of each segment. The start point index and end point index are expressed using the formula as:

[0145]

[0146] where, sp is the start point index, ep is the end point index, I start is the index of the 5th laser point at the start of the scan line, I end is the index of the end point of the scan line, and j is the sequence number of the divided area, where j ∈ (0, 1, 2, 3, 4, 5).

[0147] For the point cloud data of each segment, sort them from the smallest curvature to the largest. It should be noted that since the points from the starting point (sp) to the ending point (ep) come from the points that have been sorted from the smallest curvature to the largest, searching from the ending point (ep) at this time is essentially retrieving from the point with the largest curvature.

[0148] When the curvature of a point exceeds a specific threshold T, regard it as an edge point and store it. In each segment, at most 20 corner points are extracted. For the currently retrieved point, check the indices of its 5 adjacent points on the left and right. If there are very close points, regard these adjacent points as having been selected, ensuring that these points will not be selected as edge points again, thus avoiding over - dense distribution of edge points.

[0149] Similarly, if the curvature of the currently retrieved point is less than the set threshold, mark it as a planar point. As in the above steps, check the indices of 5 adjacent points on the left and right of the currently retrieved point. If there are close points, regard these points as having been selected to ensure that these points will not be selected as planar points again, thus avoiding over - dense planar points. Finally, perform down - sampling on the selected planar points.

[0150] By separating edge points and planar points through curvature, the point cloud can be roughly divided into two parts: edges and planes. The edge points divided only by curvature may have deficiencies in accuracy, especially in complex environments or under noise interference. Therefore, it is necessary to improve the accuracy of edge points.

[0151] Traditional methods estimate model parameters by randomly selecting data subsets and assume that the data set contains inliers and outliers. In the initial stage, randomly select two points to form a straight line and calculate the number of points within the threshold around this straight line. Through multiple random samplings and calculations, select the straight line with the largest number of points within the threshold around it as the model to be detected. However, this method has deficiencies when detecting multi - line straight - line structures such as building edges, guardrails, or road signs. Due to the narrow spacing of these structures and the disordered distribution of the point cloud, it is easy to include the point cloud of other straight - line structures in the sampling, resulting in a large number of points within the threshold during decision - making, and thus obtaining a misjudged straight line with a large angular deviation.

[0152] Therefore, in this embodiment, obtain a preset direction, and determine a target straight line according to the preset direction and the multiple initial edge feature points. For each initial edge feature point, determine the first distance between the initial edge feature point and the target straight line. In response to the first distance being less than or equal to the first preset distance threshold, determine the initial edge feature point as an edge feature point.

[0153] Specifically, determine that the first direction vector corresponding to the preset direction is d=(dx, dy), calculate the included angle between the first direction vector and the straight - line direction vector according to the first direction vector and the straight - line direction vector, and the included angle is expressed by the formula:

[0154]

[0155] Wherein, θ is the included angle.

[0156] Obtain a preset included angle threshold, and compare the calculated included angle with the preset included angle threshold. If the included angle is greater than the preset included angle threshold, it is determined that the direction of the straight line determined by the first initial point and the second initial point deviates greatly from the preset direction, and the first initial point and / or the second initial point should be reselected.

[0157] If the included angle is less than or equal to the preset included angle threshold, it is determined that the direction of the straight line determined by the first initial point and the second initial point deviates slightly from the preset direction. It can be considered that the direction of the straight line determined by the first initial point and the second initial point is basically consistent with the preset direction. Furthermore, the first initial point is used as the first target point, and the second initial point is used as the second target point.

[0158] Determine the initial straight line corresponding to the first target point and the second target point, use each initial edge feature point as the target edge feature point, and calculate the second distance between the target edge feature point and the initial straight line. Exemplarily, the target edge feature point is point P(x, y), the initial straight line is L1, and the target straight line L1 is defined by two points, namely P1(x1, y1) and P2(x2, y2), then the second distance is expressed by the formula as:

[0159]

[0160] Wherein, d is the second distance.

[0161] Compare the second distance with the second preset distance threshold. If the second distance is greater than the second preset distance threshold, it means at this time that the target edge feature point is far from the initial straight line, that is, the target edge feature point does not belong to the area around the initial straight line.

[0162] If the second distance is less than or equal to the second preset distance threshold, it means at this time that the target edge feature point is close to the initial straight line. It can be considered that the target edge feature point belongs to the area around the initial straight line, that is, the initial straight line contains the target edge feature point. Delete the target edge feature point from the target point cloud to obtain a new target point cloud, and record the number of iterations. At this time, a single iteration process is completed.

[0163] Compare the number of iterations with a preset number threshold to determine whether to continue the iteration. If the number of iterations is less than or equal to the preset number threshold, the iteration operation should continue at this time. Select a new first target point and a new second target point from the new target point cloud according to the preset direction, and repeat the iteration process based on the new first target point and the new second target point. That is, determine a new initial straight line corresponding to the new first target point and the new second target point, and filter the new target point cloud according to the new initial straight line to obtain a new target point cloud.

[0164] If the number of iterations is greater than the preset number threshold, it means that there is no need to continue the iteration process at this time, and the iteration end condition is met, so the iteration process is exited, and all the obtained initial straight lines are used as the initial target straight lines.

[0165] Obtain the number of determined initial target straight lines. If the number of the initial target straight lines is one, determine that the initial target straight line is the target straight line.

[0166] If the number of initial target straight lines is multiple, then determine the number of initial edge feature points included in each initial target straight line. Traverse the number of initial edge feature points included in all the initial target straight lines, and select the initial target straight line with the largest number of initial edge feature points as the target straight line.

[0167] The initial edge feature point is point P(x, y, z), the target straight line is L, and the target straight line L is defined by two points, namely P1(x1, y1, z1) and P2(x2, y2, z2). The parametric equation of the target straight line L is expressed as:

[0168]

[0169] where t is a preset parameter.

[0170] Then the first distance is expressed by the formula:

[0171]

[0172] where d is the first distance, is the vector from point P1 to point P, and is the direction vector of the target straight line, and

[0173] Obtain a first preset distance threshold, and compare the first distance with the first preset distance threshold. If the first distance is greater than the first preset distance threshold, determine that the initial edge feature point where the first distance is greater than the first preset distance threshold is a planar point. Since the planar point is a point irrelevant to the current straight line, delete the initial edge feature point from multiple initial edge feature points and classify it into the planar point cloud group for subsequent other processing or segmentation.

[0174] If the first distance is less than or equal to the first preset distance threshold, determine that the initial edge feature point where the first distance is less than or equal to the first preset distance threshold is an inlier of the target straight line. It is an edge feature point and can be used for subsequent edge feature extraction. The edge feature points obtained through the above steps can be used as feature points for subsequent point cloud matching. These precise edge feature points are rich in geometric information and more robust.

[0175] In summary, in this embodiment, when initially selecting two points that form a straight line, a directional constraint is introduced to calculate the angle between the straight line formed by these two points and a preset direction (such as the traveling direction or the known structure direction). If the angle is greater than the set threshold, reselect; if the angle is less than the threshold, continue with subsequent point number calculation and multiple sampling votes to determine the straight line model. This directional constraint mechanism effectively avoids misjudgment caused by random sampling and improves the accuracy and robustness of straight line detection.

[0176] In addition, to detect multiple straight line structures in the scene, the method proposed in this embodiment, after detecting a straight line model, will find the points within the threshold around the straight line and remove them from the original point cloud. Then, continue to circularly detect the remaining point cloud to sequentially extract multiple straight line structures. This method not only improves the accuracy of straight line detection but also enhances the adaptability to complex scenes, providing an effective solution for automated detection in fields such as architecture and transportation.

[0177] It should be noted that the method of the embodiments of the present disclosure can be executed by a single device, such as a computer or a server, etc. The method of this embodiment can also be applied to a distributed scenario and completed by multiple devices cooperating with each other. In this case of a distributed scenario, one of the multiple devices can only execute one or more steps of the method of the embodiments of the present disclosure, and these multiple devices will interact with each other to complete the described method.

[0178] It should be noted that some embodiments of the present disclosure have been described above. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims may be performed in a different order than in the above embodiments and still achieve the desired results. Additionally, the processes depicted in the drawings do not necessarily require the particular order or sequential order shown to achieve the desired results. In certain embodiments, multitasking and parallel processing are also possible or may be advantageous.

[0179] Based on the same inventive concept, corresponding to any of the above-described method embodiments, the present disclosure further provides an apparatus for extracting edge feature points of a point cloud.

[0180] Referring to Figure 3 , Figure 3 the apparatus for extracting edge feature points of the embodiment, includes:

[0181] A data receiving module 301, configured to receive initial point cloud data, perform filtering processing on the initial point cloud data, and obtain a plurality of initial edge feature points;

[0182] A target line determining module 302, configured to obtain a preset direction, and determine a target line according to the preset direction and the plurality of initial edge feature points;

[0183] An edge feature point determining module 303, configured to, for each initial edge feature point, determine a first distance between the initial edge feature point and the target line, and in response to the first distance being less than or equal to a first preset distance threshold, determine the initial edge feature point as an edge feature point.

[0184] In some embodiments, the target line determining module 302 specifically includes:

[0185] An initial target line determining unit, configured to determine an initial target line that meets the preset direction from the plurality of initial edge feature points;

[0186] A first target line determining unit, configured to, in response to the number of the initial target lines being one, determine the initial target line as the target line; or,

[0187] A second target line determining unit, configured to, in response to the number of the initial target lines being multiple, use the initial target line that includes the largest number of initial edge feature points as the target line.

[0188] In some embodiments, the initial target line determining unit specifically includes:

[0189] A target point selection subunit, configured to use a plurality of initial edge feature points as a target point cloud, and select a first target point and a second target point from the target point cloud according to the preset direction;

[0190] A filtering processing subunit, configured to iteratively execute based on the target point cloud: select a first target point and a second target point from the target point cloud according to the preset direction, and determine an initial straight line corresponding to the first target point and the second target point;

[0191] An initial target straight line determination subunit, configured to exit the iteration process in response to the number of iterations being greater than a preset number threshold, and use the initial straight line as the initial target straight line.

[0192] In some embodiments, the initial target straight line determination unit further specifically includes an iteration processing subunit, and the iteration processing subunit is specifically configured to:

[0193] In response to not satisfying a preset iteration end condition, perform filtering processing on the target point cloud according to the initial straight line to obtain a new target point cloud;

[0194] Update the target point cloud with the new target point cloud, and repeat the iteration until the preset iteration end condition is satisfied.

[0195] In some embodiments, the filtering processing subunit is specifically configured to:

[0196] Take each initial edge feature point as a target edge feature point respectively, and determine a second distance between the target edge feature point and the initial straight line;

[0197] In response to the second distance being less than or equal to a second preset distance threshold, determine that the initial straight line includes the target edge feature point, and delete the target edge feature point from the target point cloud to obtain a new target point cloud.

[0198] In some embodiments, the target point selection subunit is specifically configured to:

[0199] Randomly select two points from the target point cloud as a first initial point and a second initial point, and determine a straight line direction vector between the first initial point and the second initial point;

[0200] Determine a first direction vector corresponding to the preset direction, and calculate an included angle between the straight line direction vector and the first direction vector;

[0201] In response to the included angle being less than or equal to a preset included angle threshold, determine that the first initial point is the first target point and the second initial point is the second target point.

[0202] In some embodiments, the data receiving module 301 specifically includes:

[0203] A curvature value determination unit, configured to receive initial point cloud data and determine the curvature value corresponding to each point in the initial point cloud data;

[0204] A judgment unit, configured to determine that the point is an initial edge feature point in response to the curvature value being greater than a preset curvature threshold; or, determine that the point is a plane feature point in response to the curvature value being less than or equal to the preset curvature threshold.

[0205] In some embodiments, the curvature value determination unit is specifically configured to:

[0206] For each point, use the point as a point to be processed and determine the first intensity value corresponding to the point to be processed;

[0207] Select a preset number of other points closest to the point as relevant points and determine the second intensity value corresponding to each relevant point;

[0208] Subtract each second intensity value from the first intensity value respectively to obtain a plurality of intensity differences;

[0209] Sum up all the intensity differences to obtain a target sum value;

[0210] Multiply the first intensity value by the preset number to obtain a target product value;

[0211] Divide the target sum value by the target product value to obtain the curvature value corresponding to the point to be processed.

[0212] In some embodiments, the device further includes a feature point deletion module, and the feature point deletion module is specifically configured to:

[0213] In response to the first distance being greater than a first preset distance threshold, determine that the initial edge feature point is a plane feature point and delete the initial edge feature point.

[0214] For the convenience of description, the above device is described by function as various modules respectively. Of course, when implementing the present disclosure, the functions of each module can be implemented in one or more software and / or hardware.

[0215] The device in the above embodiments is used to implement the corresponding method for extracting point cloud edge feature points in any of the foregoing embodiments, and has the beneficial effects of the corresponding method embodiments, which will not be elaborated here.

[0216] Based on the same inventive concept, corresponding to the method of any of the above embodiments, the present disclosure further provides an electronic device, including a memory, a processor, and a computer program stored on the memory and executable on the processor. When the processor executes the program, the method for extracting point cloud edge feature points described in any one of the above embodiments is implemented.

[0217] Figure 4 FIG. shows a more specific schematic diagram of the hardware structure of the electronic device provided in this embodiment. The device may include: a processor 1010, a memory 1020, an input / output interface 1030, a communication interface 1040, and a bus 1050. Among them, the processor 1010, the memory 1020, the input / output interface 1030, and the communication interface 1040 are communicatively connected to each other inside the device through the bus 1050.

[0218] The processor 1010 may be implemented in a general-purpose CPU (Central Processing Unit), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits, etc., and is used to execute relevant programs to implement the technical solutions provided in the embodiments of this specification.

[0219] The memory 1020 may be implemented in the form of a ROM (Read Only Memory), a RAM (Random Access Memory), a static storage device, a dynamic storage device, etc. The memory 1020 may store an operating system and other application programs. When implementing the technical solutions provided in the embodiments of this specification through software or firmware, the relevant program codes are stored in the memory 1020 and are called and executed by the processor 1010.

[0220] The input / output interface 1030 is used to connect to an input / output module to implement information input and output. The input / output module may be configured as a component in the device (not shown in the figure) or externally connected to the device to provide corresponding functions. Among them, the input device may include a keyboard, a mouse, a touch screen, a microphone, various sensors, etc., and the output device may include a display, a speaker, a vibrator, an indicator light, etc.

[0221] The communication interface 1040 is used to connect to a communication module (not shown in the figure) to implement communication interaction between this device and other devices. Among them, the communication module may implement communication in a wired manner (such as USB, network cable, etc.) or in a wireless manner (such as mobile network, WIFI, Bluetooth, etc.).

[0222] The bus 1050 includes a path for transmitting information between various components of the device, such as the processor 1010, the memory 1020, the input / output interface 1030, and the communication interface 1040.

[0223] It should be noted that although only the processor 1010, the memory 1020, the input / output interface 1030, the communication interface 1040, and the bus 1050 are shown in the above device, in the specific implementation process, the device may further include other components necessary for normal operation. In addition, those skilled in the art can understand that the above device may also only include the components necessary to implement the solution of the embodiments of the present specification, and does not necessarily include all the components shown in the figure.

[0224] The electronic device of the above embodiment is used to implement the method for extracting corresponding point cloud edge feature points in any of the foregoing embodiments, and has the beneficial effects of the corresponding method embodiments, which will not be elaborated here.

[0225] Based on the same inventive concept, corresponding to the method of any of the above embodiments, the present disclosure also provides a non-transitory computer-readable storage medium storing computer instructions for causing the computer to execute the method for extracting point cloud edge feature points as described in any of the foregoing embodiments.

[0226] The computer-readable medium of this embodiment includes permanent and non-permanent, removable and non-removable media, and information storage can be implemented by any method or technology. The information can be computer-readable instructions, data structures, program modules, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassette tapes, magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information accessible by a computing device.

[0227] The computer instructions stored in the storage medium of the above embodiment are used to cause the computer to execute the method for extracting point cloud edge feature points as described in any of the foregoing embodiments, and have the beneficial effects of the corresponding method embodiments, which will not be elaborated here.

[0228] Based on the same inventive concept, corresponding to the methods of any of the above embodiments, the present application further provides a vehicle, including the extraction device for point cloud edge feature points in the above embodiments, the electronic device in the above embodiments, and the computer-readable storage medium in the above embodiments, and the vehicle device implements the method for extracting point cloud edge feature points described in any one of the above embodiments.

[0229] The vehicle in the above embodiment is used to implement the method for extracting point cloud edge feature points described in any one of the foregoing embodiments, and has the beneficial effects of the corresponding method embodiments, which will not be elaborated here.

[0230] It can be understood that before using the technical solutions of the various embodiments in the present disclosure, the types, usage scopes, usage scenarios, etc. of the personal information involved will be informed to the user in an appropriate manner, and the user's authorization will be obtained.

[0231] For example, in response to receiving an active request from the user, a prompt message is sent to the user to clearly prompt the user that the operation requested to be executed will require obtaining and using the user's personal information. Thus, the user can autonomously choose whether to provide personal information to the software or hardware such as an electronic device, an application program, a server, or a storage medium that executes the operation of the technical solution of the present disclosure according to the prompt message.

[0232] As an optional but non-limiting implementation manner, the way of sending a prompt message to the user in response to receiving an active request from the user can be, for example, in the form of a pop-up window, and the prompt message can be presented in text in the pop-up window. In addition, the pop-up window can also carry a selection control for the user to choose "agree" or "disagree" to provide personal information to the electronic device.

[0233] It can be understood that the above process of notifying and obtaining the user's authorization is only illustrative and does not limit the implementation manner of the present disclosure, and other ways that meet relevant laws and regulations can also be applied to the implementation manner of the present disclosure.

[0234] Those of ordinary skill in the art should understand that the discussion of any of the above embodiments is only exemplary and is not intended to imply that the scope of the present disclosure (including the claims) is limited to these examples; under the idea of the present disclosure, the technical features in the above embodiments or different embodiments can also be combined, the steps can be implemented in any order, and there are many other variations in different aspects of the embodiments of the present disclosure as described above, and they are not provided in detail for the sake of brevity.

[0235] In addition, for simplicity of explanation and discussion, and so as not to make the embodiments of the present disclosure difficult to understand, well-known power / ground connections to integrated circuit (IC) chips and other components may or may not be shown in the provided drawings. Further, the devices may be shown in block diagram form in order to avoid making the embodiments of the present disclosure difficult to understand, and this also takes into account the fact that details regarding the implementation of these block diagram devices are highly dependent on the platform on which the embodiments of the present disclosure are to be implemented (i.e., these details should be entirely within the understanding of those skilled in the art). In cases where specific details (such as circuits) are set forth to describe exemplary embodiments of the present disclosure, it will be apparent to those skilled in the art that the embodiments of the present disclosure may be practiced without these specific details or with variations of these specific details. Accordingly, these descriptions should be regarded as illustrative rather than restrictive.

[0236] Although the present disclosure has been described in connection with specific embodiments thereof, many alternatives, modifications, and variations of these embodiments will be apparent to those of ordinary skill in the art in light of the foregoing description. For example, other memory architectures (such as dynamic RAM (DRAM)) may be used with the embodiments discussed.

[0237] Embodiments of the present disclosure are intended to cover all such alternatives, modifications, and variations that fall within the broad scope of the appended claims. Accordingly, any omissions, modifications, equivalent substitutions, improvements, etc., made within the spirit and principle of the embodiments of the present disclosure shall be included within the protection scope of the present disclosure.

Claims

1. A method for determining edge feature points of a point cloud, characterized in that: include: Receiving initial point cloud data, filtering the initial point cloud data, and obtaining a plurality of initial edge feature points; Acquire a preset direction, and determine a target straight line according to the preset direction and the multiple initial edge feature points; For each initial edge feature point, a first distance between the initial edge feature point and the target straight line is determined, and in response to the first distance being less than or equal to a first preset distance threshold, the initial edge feature point is determined to be an edge feature point.

2. The method according to claim 1, characterized in that The determining of the target straight line according to the preset direction and the plurality of initial edge feature points includes: Determine an initial target straight line satisfying a preset direction from a plurality of initial edge feature points; In response to the number of the initial target straight line being one, determining the initial target straight line as the target straight line; or, In response to the number of the initial target straight lines being multiple, the initial target straight line including the largest number of initial edge feature points is taken as the target straight line.

3. The method according to claim 2, characterized in that The step of determining an initial target straight line satisfying a preset direction from a plurality of initial edge feature points includes: Taking multiple initial edge feature points as target point cloud; Iteratively executing based on the target point cloud: selecting a first target point and a second target point from the target point cloud according to the preset direction, and determining an initial straight line corresponding to the first target point and the second target point; In response to satisfying a preset iteration end condition, the initial straight line is used as an initial target straight line.

4. The method according to claim 3, characterized in that: After determining the initial straight lines corresponding to the first target point and the second target point, the method further includes: In response to not meeting a preset iteration end condition, filtering the target point cloud according to the initial straight line to obtain a new target point cloud; The target point cloud is updated using the new target point cloud, and the iteration is repeated until a preset iteration end condition is met.

5. The method according to claim 4, characterized in that The filtering process of the target point cloud according to the initial straight line to obtain a new target point cloud includes: Taking each initial edge feature point as a target edge feature point, and determining a second distance between the target edge feature point and the initial straight line; In response to the second distance being less than or equal to a second preset distance threshold, it is determined that the initial straight line includes the target edge feature point, and the target edge feature point is deleted from the target point cloud to obtain a new target point cloud.

6. The method according to claim 3, characterized in that The selecting the first target point and the second target point from the target point cloud according to the preset direction includes: Randomly select two points from the target point cloud as the first initial point and the second initial point, and determine the direction vector of the straight line between the first initial point and the second initial point; Determine a first direction vector corresponding to a preset direction, and calculate an angle between the straight line direction vector and the first direction vector; In response to the angle being less than or equal to a preset angle threshold, the first initial point is determined to be a first target point, and the second initial point is determined to be a second target point.

7. The method according to claim 1, characterized in that The receiving of initial point cloud data and filtering of the initial point cloud data to obtain a plurality of initial edge feature points include: Receiving initial point cloud data, and determining a curvature value corresponding to each point in the initial point cloud data; In response to the curvature value being greater than a preset curvature threshold, determining the point as an initial edge feature point; or, In response to the curvature value being less than or equal to a preset curvature threshold, the point is determined to be a plane feature point.

8. The method according to claim 7, characterized in that Determining the curvature value corresponding to each point in the initial point cloud data includes: For each point, take the point as a point to be processed, and determine a first intensity value corresponding to the point to be processed; Selecting a preset number of other points closest to the point as relevant points, and determining a second intensity value corresponding to each relevant point; Performing a difference process on each second intensity value and the first intensity value to obtain a plurality of intensity difference values; All intensity differences are summed up to obtain a target sum value; Multiplying the first intensity value by a preset number to obtain a target product value; The target sum value and the target product value are ratio-processed to obtain the curvature value corresponding to the point to be processed.

9. The method according to claim 1, characterized in that: For each initial edge feature point, after determining a first distance between the initial edge feature point and the target straight line, the method further includes: In response to the first distance being greater than a first preset distance threshold, the initial edge feature point is determined to be a plane feature point, and the initial edge feature point is deleted.

10. A vehicle, characterized in that: The vehicle comprises: A memory for storing executable program codes; A processor, configured to call and run the executable program code from the memory so that the vehicle executes the method according to any one of claims 1 to 9.