Point cloud processing method, device and storage medium

By determining the search area in point cloud data and using a downsampling strategy, the problems of noise misjudgment and low processing efficiency in laser contour scanners are solved, thereby improving the accuracy and efficiency of point cloud data.

CN117274379BActive Publication Date: 2026-02-10MECH MIND ROBOTICS TECH LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202311207073.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-09-18
Publication Date
2026-02-10
Estimated Expiration
2043-09-18

AI Technical Summary

Technical Problem

Existing technologies using laser contour scanners suffer from the problem of noise points being misidentified as interference points and filtered out, and the processing efficiency is low. In particular, normal points are misidentified as interference points in the case of specular reflection, which affects the accuracy of point cloud data.

Method used

By determining the search area height of any first point in the point cloud data and the angle between the light projection unit and the light receiving unit, it is determined whether there are other points in the search area. If they exist, they are identified as interference points, and a downsampling strategy is adopted to improve processing efficiency.

Benefits of technology

It improves the accuracy and robustness of identifying interference points in point cloud data, avoids normal points being misjudged as interference points, and improves processing efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117274379B_ABST
    Figure CN117274379B_ABST
Patent Text Reader

Abstract

The present disclosure provides a point cloud processing method, device and storage medium. The point cloud data of a measured object collected by a laser profile scanner is obtained, wherein the laser profile scanner comprises a light projection unit and a light receiving unit. For any first point in the point cloud data, the height of the search region of the first point is determined, and the search region of the first point is determined according to the height of the search region of the first point and the angle between the extension line of the incident light ray of the light projection unit at the first point and the reverse extension line of the reflected light ray received by the light receiving unit. It is judged whether there are other points in the search region. If there are, the first point is determined to be an interference point. The present disclosure can adaptively determine the search region of any first point in the point cloud data, accurately judge whether the first point is an interference point based on the search region, and further filter out, thereby ensuring that normal points are not affected by interference points and improving the robustness and accuracy of interference point identification in the point cloud data.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of computer technology, and in particular to point cloud processing methods, devices, and storage media. Background Technology

[0002] A laser profilometer is a device used to measure the shape and contour of an object's surface. It uses laser projection technology, projecting a laser beam onto the object through a light projection unit. A light-receiving element then captures the reflections of the laser, and by using the principle of triangulation and the pixel position of the laser on the light-receiving element, it obtains the shape information of the object's surface. However, when using a laser profilometer to measure an object's surface, the laser beam may re-enter the light-receiving element after one or more reflections on the object's surface. If the normal laser beam is blocked by the object at this point, the erroneous laser beam after multiple reflections will be considered valid, resulting in an incorrect point cloud.

[0003] Based on the above technical problems, the relevant technologies use the principle of field of view occlusion to remove interference points. However, when there are noise points below the outline of the object being measured, these noise points will appear within the field of view occlusion range of normal points, causing normal points to be considered interference points and thus filtered out. In addition, the processing efficiency of the relevant technologies is relatively low. Summary of the Invention

[0004] This disclosure provides various aspects of point cloud processing methods, apparatus, and storage media to improve the accuracy of identifying interference points in point cloud data.

[0005] The first aspect of this disclosure provides a point cloud processing method, including:

[0006] The point cloud data of the object under test is acquired by a laser contour scanner, wherein the laser contour scanner includes a light projection unit and a light receiving unit.

[0007] For any first point in the point cloud data, determine the height of the search area of ​​the first point, and determine the search area of ​​the first point based on the height of the search area of ​​the first point and the angle between the extension line of the incident light ray of the light projection unit at the first point and the reverse extension line of the reflected light ray received by the light receiving unit.

[0008] Determine whether there are other points within the search area. If so, determine that the first point is an interference point.

[0009] A second aspect of this disclosure provides a point cloud processing apparatus, comprising:

[0010] The acquisition module is used to acquire point cloud data of the object under test collected by the laser contour scanner, wherein the laser contour scanner includes a light projection unit and a light receiving unit.

[0011] The search area determination module is used to determine the height range of the search area of ​​any first point in the point cloud data, and to determine the search area of ​​the first point based on the height of the search area of ​​the first point and the angle between the extension line of the incident light ray of the light projection unit at the first point and the reverse extension line of the reflected light ray received by the light receiving unit.

[0012] The interference point identification module is used to determine whether there are other points in the search area. If there are, the first point is identified as an interference point.

[0013] A third aspect of this disclosure provides an electronic device, including: a processor, a memory, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the method of the first aspect.

[0014] The fourth aspect of this disclosure provides a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, are used to implement the method of the first aspect described above.

[0015] The fifth aspect of this disclosure provides a computer program product comprising: a computer program stored in a readable storage medium, at least one processor of an electronic device being able to read the computer program from the readable storage medium, and the at least one processor executing the computer program causing the electronic device to perform the method of the first aspect described above.

[0016] This embodiment of the disclosure is applied in a laser contour scanning scenario. It acquires point cloud data of the object being measured by a laser contour scanner, which includes a light projection unit and a light receiving unit. For any first point in the point cloud data, the height range of the search area for the first point is determined. Based on the height of the search area for the first point and the angle between the extension of the incident light ray from the light projection unit at the first point and the reverse extension of the reflected light ray received by the light receiving unit, the search area for the first point is determined. It is then determined whether other points exist within the search area; if so, the first point is identified as an interference point. This embodiment of the disclosure can adaptively determine the search area for any first point in the point cloud data, accurately determine whether the first point is an interference point based on the search area, and further filter out interference points, ensuring that normal points are not affected by interference points, thus improving the robustness and accuracy of interference point identification in point cloud data.

[0017] Furthermore, by downsampling the point cloud data along the X-axis, it can be determined whether each point in the downsampled data is an interference point. Further, for the interference points in the downsampled data, their adjacent points along the X-axis are found in the point cloud data, and then it is determined whether the adjacent points are interference points. This eliminates the need to perform interference point identification for every point in the point cloud data, thus improving the efficiency of interference point identification. Attached Figure Description

[0018] The accompanying drawings, which are included to provide a further understanding of this disclosure and form part of this disclosure, illustrate exemplary embodiments of the present disclosure and are used to explain the disclosure, but do not constitute an undue limitation of the disclosure. In the drawings:

[0019] Figure 1 A schematic diagram illustrating the working principle of a line laser contour scanner;

[0020] Figure 2 A schematic diagram illustrating the causes of reflected interference points;

[0021] Figure 3 This is a diagram illustrating the reflection interference contour.

[0022] Figure 4 This is a schematic diagram of the method for determining reflection interference points in related technologies;

[0023] Figure 5 A schematic diagram showing that the intensity of multiple reflected light is greater than that of direct reflected light;

[0024] Figure 6 A schematic diagram showing a point in the occluded area of ​​a normal point that is misjudged due to reflection interference.

[0025] Figure 7 A schematic diagram of a search area provided for an exemplary embodiment of this disclosure;

[0026] Figure 8 A flowchart of a point cloud processing method provided as an exemplary embodiment of this disclosure;

[0027] Figure 9 A flowchart illustrating a point cloud processing method based on a downsampling strategy, provided as an exemplary embodiment of this disclosure;

[0028] Figure 10 A flowchart illustrating a point cloud processing method based on a downsampling strategy, provided as an exemplary embodiment of this disclosure;

[0029] Figure 11 A structural block diagram of a point cloud processing apparatus provided for an exemplary embodiment of this disclosure;

[0030] Figure 12 A schematic diagram of the structure of an electronic device provided for an exemplary embodiment of this disclosure. Detailed Implementation

[0031] To make the objectives, technical solutions, and advantages of this disclosure clearer, the technical solutions of this disclosure will be clearly and completely described below in conjunction with specific embodiments and corresponding drawings. Obviously, the described embodiments are only a part of the embodiments of this disclosure, and not all of them. All other embodiments obtained by those skilled in the art based on the embodiments of this disclosure without creative effort are within the scope of protection of this disclosure.

[0032] A laser profile scanner is a device used to measure the shape and contour of an object's surface. It uses laser projection technology, projecting a laser beam onto the object being measured through a light projection unit. Then, it uses a light-receiving element to capture the reflection of the laser beam. By using the principle of triangulation and the pixel position of the laser beam on the light-receiving element, it obtains the shape information of the object's surface.

[0033] Laser contour scanners can include line laser contour scanners and point laser contour scanners. Taking a line laser contour scanner as an example, ... Figure 1 As shown, its light projection unit can project a slit light L1 along the projection direction, forming a laser line on the surface of the object being measured. The light receiving unit receives the reflected light beam L2 projected from the light projection unit onto the surface of the object being measured and reflected back to the light receiving unit, and records the brightness of the light. A light stripe image is generated based on the change in pixel intensity, and the light stripe is converted into a three-dimensional contour line through the principle of triangulation. The three-dimensional contour line is composed of a point cloud calculated by a triangulation algorithm for each pixel in the light stripe image. For a point laser contour scanner, its light projection unit is a point light source that projects a laser along the projection direction. Its contour scanning principle is similar to that of a line laser contour scanner, and will not be elaborated here. The following example will also use a line laser contour scanner as an example for illustration.

[0034] like Figure 2 As shown, when the surface of the object being measured is a densely reflective object, the object moves along the Y direction. When the projected beam L1 reaches the pit of the object, the normally reflected beam L2 is blocked due to the combined effects of field-of-view obstruction and material reflection. L2 should have been imaged as P1 by the light-receiving unit, but P1 is not successfully imaged due to obstruction. At the same time, the reflected interference beam L3 generated by the laser line L1 after multiple reflections from the surface of the object being measured will be imaged as the erroneous point P2 on the light-receiving unit. Since only the erroneous point P2 is imaged, according to the principle of triangulation, the point cloud CP generated corresponding to P2 is the interference point. At this time, the contour reconstructed using the principle of triangulation is as follows. Figure 3 As shown, interference points will appear on the inner contour of the pit.

[0035] To address the reflection interference problem, related technologies involve traversing all reconstructed contour points CPj in the point cloud data, determining the occlusion area for each contour point, and taking the projection of a light beam L1 along a direction perpendicular to the plane where the object is placed as an example. Figure 4As shown, the contour point CPj is taken as the vertex of the triangle, the length of the baseline L (the horizontal distance from the optical center of the light receiving unit lens to the light projection unit) is taken as the length of the base side of the triangle, the distance from CPj to the light projection unit is taken as the right-angle side to calculate the measurement angle θ, and the vertical angle θ' is determined based on the measurement angle θ. The occlusion area Sj corresponding to CPj is formed with CPj as the vertex and the vertical angle θ' as the vertices.

[0036] According to the principle of view occlusion, a second point will not exist within the occluded area of ​​a normal contour point, because all points within the occluded area will be occluded by the normal contour point and will not be reconstructed. For example... Figure 4 The normal contour point CP0 in the image has no other points within its occlusion region S0; if other points inevitably exist within the occlusion region of the reflection interference point, they should be filtered out, for example... Figure 4 If there are other points within the occlusion region S1 of an interfering point CP1 in the point cloud data, then CP1 should be filtered out. Therefore, by traversing the occlusion region corresponding to each point in the point cloud data to see if there are other contour points, it is possible to determine whether a point is an interfering point.

[0037] However, as Figure 5 As shown, in the detection of certain shaped objects, such as solder paste detection in Ball Grid Array (BGA), the highly reflective spherical surface causes multiple reflected light L4 and L5 to resemble specular reflection. Their light intensity is greater than the intensity of the directly reflected light L2. Pixels with higher intensity are considered effective light stripes. At this time, reflection interference points CP2 are generated below the surface of the object. Although these interference points do not affect solder height detection, directly using the interference point identification method based on the occlusion area will cause a second point to exist within the occlusion area S corresponding to the normal contour point CP. The normal contour point is misjudged as a reflection interference point and incorrectly filtered out. Figure 6 As shown.

[0038] Furthermore, for point cloud data generated by a line laser contour scanner, since the light projection unit projects slit light L1, in the direction of the laser line... Figure 1 There are thousands of contour points in the X direction. These contour points are received by the light-receiving unit at the same time and together form the contour line at that moment. As the measured object moves along the Y direction, multiple contour lines are reconstructed and together form the contour of the measured object. If an occlusion region is calculated for each contour point and the contour points generated by the same pixel at different times are traversed along the Y direction to check whether they are within the occlusion region, it would be very time-consuming and the processing efficiency would be relatively low.

[0039] To address the aforementioned problems, this disclosure provides a point cloud processing method, taking into account... Figure 6For the reflection interference point CP2 caused by specular reflection, the angle θ1 between the incident light ray from the light projection unit at CP2 and the reflected light ray received by the light receiving unit is relatively small. Therefore, CP2 is usually below the surface of the object being measured. To avoid this... Figure 6 The reflection interference point CP2 falls within the occlusion area of ​​the normal contour point CP, causing the normal contour point CP to be misidentified as an interference point. This method aims to reduce the occlusion area of ​​the normal contour point CP to a suitable range, ensuring that the occlusion area can still be used to identify interference points based on the field-of-view occlusion principle, while also preventing the reflection interference point CP2 from falling within the occlusion area of ​​the normal contour point CP. This way, the normal contour point CP will not be misidentified as an interference point. Figure 7 The △ABC shown represents the occlusion area of ​​point CP. The range of the occlusion area is appropriately reduced, which enables the identification of interference points based on the principle of field occlusion, while also preventing normal points from being misjudged as interference points.

[0040] Specifically, point cloud data of the object under test can be acquired by a laser contour scanner, which includes a light projection unit and a light receiving unit. For any first point in the point cloud data, the height of the search area of ​​the first point is determined, and the search area of ​​the first point is determined based on the height of the search area of ​​the first point and the angle between the extension line of the incident light ray at the first point and the reverse extension line of the reflected light ray received by the light receiving unit. It is then determined whether there are other points in the search area. If so, the first point is determined to be an interference point.

[0041] In this embodiment, the point cloud processing method can be implemented using electronic devices such as terminal devices or servers. The terminal device executing the point cloud processing method can be a processor of a laser contour scanner, or other terminal devices that can acquire point cloud data from a laser contour scanner, such as a computer. The server executing the point cloud processing method can be a cloud server to leverage the advantages of cloud resources to run various algorithms. The point cloud processing method can also be applied to conventional servers or server arrays, and is not limited thereto.

[0042] Figure 8 A flowchart illustrating the steps of a point cloud processing method provided as an exemplary embodiment of this disclosure. Figure 8 The method shown specifically includes the following steps:

[0043] S801. Acquire point cloud data of the object under test collected by a laser contour scanner, wherein the laser contour scanner includes a light projection unit and a light receiving unit.

[0044] In this embodiment, the laser contour scanner includes a light projection unit and a light receiving unit. The object to be measured is located on a plane. The light projection unit projects laser light onto the object to be measured along the projection direction. The light receiving unit receives the reflected light that is projected from the light projection unit onto the surface of the object to be measured and reflected back to the light receiving unit. The point cloud data of the object to be measured is obtained through the principle of triangulation.

[0045] Wherein, if the laser contour scanner is a line laser contour scanner, then the point cloud data is three-dimensional point cloud data, wherein the Y-axis direction of the point cloud data is the direction of relative movement between the measured object and the line laser contour scanner, the Z-axis direction is the direction perpendicular to the plane on which the measured object is located (such as the upper surface of the conveying device) and upward, and the X-axis direction is the cross product direction of the Y-axis and Z-axis, and the coordinate axes are as follows. Figure 1 As shown.

[0046] If the laser contour scanner is a point laser contour scanner, then the point cloud data is two-dimensional point cloud data. Similar to the line laser contour scanner, the Y-axis direction of the point cloud data is the direction of relative movement between the measured object and the line laser contour scanner, and the Z-axis direction is perpendicular to the plane where the measured object is located. The difference from the three-dimensional point cloud data of the line laser contour scanner is that there is no data in the X-axis direction.

[0047] S802. For any first point in the point cloud data, determine the height of the search area of ​​the first point, and determine the search area of ​​the first point based on the height of the search area of ​​the first point and the angle between the extension line of the incident light ray of the light projection unit at the first point and the reverse extension line of the reflected light ray received by the light receiving unit.

[0048] In this embodiment, for any first point in the point cloud data, which is a contour point reconstructed based on the measurement principle, to determine whether the first point is an interference point, the search area of ​​the first point (i.e., the occlusion area of ​​the first point) can be constructed using the field-of-view occlusion principle. However, to avoid reflection interference points, similar to specular reflection, falling into the search area of ​​normal points and causing normal points to be misjudged as interference points, the search area is not infinitely large. The search area can be narrowed to a suitable range. The angle range of the search area can be determined based on the incident light ray from the light projection unit at the first point and the reflected light ray received by the light receiving unit, that is, the angle between the extension line of the incident light ray from the light projection unit at the first point and the reverse extension line of the reflected light ray received by the light receiving unit. The reverse extension of the line is the extension of the line connecting the optical center of the light-receiving unit and the first point. In order to reduce the search area, it is necessary to determine the appropriate height of the search area, that is, the height of the search area in the Z-axis direction. In this way, the search area of ​​the first point can be determined based on the height of the search area of ​​the first point and the angle between the extension of the incident light ray of the light projection unit at the first point and the reverse extension of the reflected light ray received by the light-receiving unit. The search area of ​​the first point is not infinitely large, but is reduced to a suitable height range. This allows the search area to identify interference points based on the principle of field of view occlusion, while also avoiding reflection interference points (interference points below the surface of the measured object) falling into the search area of ​​normal points, which would cause normal points to be misjudged as interference points.

[0049] S803. Determine whether there are other points within the search area. If so, determine that the first point is an interference point.

[0050] In this embodiment, based on the search area of ​​the first point, it can be determined whether there are other points in the search area. If there are other points in the search area of ​​the first point, then according to the principle of field of view occlusion, the first point can be determined to be an interference point and can be marked as an interference point (or reflection interference point). If there are no other points in the search area of ​​the first point, then the first point can be determined not to be an interference point, that is, the first point is a normal point and can be marked as a normal point.

[0051] Furthermore, if the first point is determined to be an interference point, it can be deleted to ensure the accuracy of the point cloud data.

[0052] The point cloud processing method provided in this embodiment acquires point cloud data of the measured object collected by a laser contour scanner, wherein the laser contour scanner includes a light projection unit and a light receiving unit. For any first point in the point cloud data, the height range of the search area of ​​the first point is obtained. Based on the height range of the search area of ​​the first point, the incident light rays from the light projection unit at the first point, and the reflected light rays received by the light receiving unit, the search area of ​​the first point is determined. It is then determined whether there are other points within the search area. If so, the first point is determined to be an interference point. In this embodiment, the search area of ​​any first point in the point cloud data can be adaptively determined, and the search area is small enough. This enables the identification of interference points based on the principle of field of view occlusion, while also preventing reflective interference points, such as those resembling specular reflection, from falling into the search area of ​​normal points, thus avoiding misjudging normal points as interference points. This ensures that normal points are not affected by interference points and improves the robustness and accuracy of interference point identification in point cloud data.

[0053] Based on any of the above embodiments, when the laser profile scanner is a line laser profile scanner, the point cloud data is three-dimensional point cloud data, the Y-axis direction of the point cloud data is the direction of relative movement between the measured object and the line laser profile scanner, the Z-axis direction is the direction of upward perpendicular to the plane where the measured object is located, and the X-axis direction is the cross product direction of the Y-axis and Z-axis.

[0054] Furthermore, when obtaining the height of the search area of ​​the first point, the height ΔZ1 of the search area of ​​the first point can be determined in the Z-axis direction based on the Z value of each point in the neighborhood of the first point in the X-axis direction.

[0055] The first point's X-axis neighborhood can be a preset range of neighborhoods, which can be determined based on the size of the object being measured in the X-axis direction. The first point's X-axis neighborhood can be greater than or equal to the size of the object being measured in the X-axis direction. For example, if the object being measured is a BGA solder ball, then the neighborhood needs to cover the width of the solder ball in the X-axis direction. Optionally, the first point's X-axis neighborhood can also be input by the user.

[0056] In this embodiment, considering reflection interference points similar to specular reflection (such as...) Figure 6In the case of CP2, the distance from the first point in the Z-axis direction is usually relatively far. Therefore, the height ΔZ1 of the search area for the first point needs to be reduced to prevent specular reflection interference points from falling within the search area. The search area is on the YZ plane. Theoretically, the height ΔZ1 of the search area for the first point should refer to the Z-values ​​of each point in the Y-axis neighborhood of the first point to identify interference points based on the field-of-view occlusion principle. However, the presence of specular reflection interference points affects the determination of the height ΔZ1 of the search area for the first point, causing the determined search area for the first point to include specular reflection interference points. To avoid this, considering that the shape of adjacent Y-axis contour lines does not change significantly, the height difference between points in the Y-axis neighborhood of the first point is basically similar to the height difference between points in the X-axis neighborhood of the first point. Therefore, the height ΔZ1 of the search area for the first point can refer to the Z-values ​​of each point in the X-axis neighborhood of the first point. If the first point is an interference point (… Figure 4 The search area for the first point (CP1) will not include the interference point CP2 that exists on the contour lines below the first point in the Y-axis direction. It will only include the normal points on the contour lines below the first point. If the first point is a normal contour point, the search area for the first point will not include the interference point CP2 that exists on the contour lines below the first point in the Y-axis direction, thus ensuring that the interference point CP2 will not affect the identification of the interference point of the first point.

[0057] The height range of the search area for the first point can be referenced by the Z values ​​of each point in the neighborhood of the first point along the X-axis. The Z values ​​of each point in the neighborhood can reflect whether the first point is relatively flat along the X-axis, and can indirectly reflect the possibility of occlusion in the Y-axis. If the possibility of occlusion in the Y-axis is high, the height range of the search area for the first point can be increased; if the possibility of occlusion in the Y-axis is low, the height range of the search area for the first point can be decreased.

[0058] Specifically, based on the Z values ​​of all points (including the first point) in the neighborhood of the first point along the X-axis, the height value ΔZ1 of the search area of ​​the first point can be determined along the Z-axis, thereby achieving adaptive determination of the height of the search area.

[0059] More specifically, based on the Z value of the first point and the minimum Z value of each point in the neighborhood of the first point along the X-axis, the height value ΔZ1 of the search area of ​​the first point is determined in the Z-axis direction.

[0060] Among them, the Z value of the first point Z CP The minimum Z value min(Z) of each point within the neighborhood δCP of the first point along the X-axis direction. δCP According to the Z value of the first point Z), CP and the minimum Z value min(Z δCPThis can reflect whether the first point in the X-axis direction is relatively flat. If it is relatively flat, the possibility of occlusion in the Y-axis direction is small, so decrease ΔZ1; if it is not flat, the possibility of occlusion in the Y-axis direction is large, so increase ΔZ1.

[0061] First, the minimum Z value of each point in the neighborhood of the first point along the X-axis can be determined, and the difference ΔZ2 between the Z value of the first point and the minimum Z value can be determined. Then, ΔZ1 is obtained by multiplying ΔZ2 by a preset coefficient a (which can be an empirical coefficient), where the preset coefficient a is greater than or equal to 1.

[0062] That is, ΔZ1=a ΔZ2= a (Z CP - min(Z δCP ))

[0063] As can be seen from the formula for calculating ΔZ1, the smaller the difference between the Z value of the first point and the minimum Z value, the smaller ΔZ1 is. This is because the smaller the difference between the Z value of the first point and the minimum Z value, the closer the height of the first point is to the height of all points in its neighborhood along the X-axis. In other words, the measured object is relatively flat along the X-axis at the first point, and the first point is less likely to be an interference point. Therefore, the required search area can be smaller, which can also speed up the processing. If the Z value of the first point is the minimum Z value, then ΔZ1 is 0. This means that the first point is the lowest point in its neighborhood along the X-axis, and the height of all other points in its neighborhood along the X-axis is higher than the first point. The first point cannot occlude other points, so the search area for the first point is 0. On the other hand, the larger the difference between the Z value of the first point and the minimum Z value, the larger ΔZ1 is. This is because the larger the difference between the Z value of the first point and the minimum Z value, the more prominent the height of the first point is relative to the height of all points in its neighborhood along the X-axis. In other words, the first point is more likely to occlude or be an interference point, so the required search area can be larger.

[0064] Furthermore, considering that there may be a mirror-like reflection interference point CP2 in the neighborhood of the first point along the X-axis, which would cause ΔZ1 to increase and thus increase the search area of ​​the first point, normal points will only be misidentified as interference points if mirror-like reflection interference points also exist at the positions of the points corresponding to the first point in the next few contour lines on the current contour line. That is, normal points will only be misidentified as interference points if mirror-like reflection interference points exist in the neighboring points of the first point in both the X-axis and Y-axis directions. However, the probability of this happening is much lower than that of searching only in the Y-axis direction, which can effectively prevent normal points from being filtered out.

[0065] In the above embodiments, when determining the minimum Z value of each point in the X-axis neighborhood of the first point, in order to reduce the search time, a second point can be selected in the neighborhood of the first point within a preset range in the X-axis direction using downsampling or sampling. The minimum Z value is then determined from the Z values ​​of the first and second points. By reducing the number of points searched in the neighborhood within the preset range in the X-axis direction, the search time is shortened, and the efficiency of determining the minimum Z value is improved. The downsampling or sampling ratio can be set according to requirements. The smaller the downsampling or sampling ratio, the fewer the number of second points, the shorter the search time, and the greater the efficiency improvement. An optional sampling or sampling ratio can be 1 / 10.

[0066] In another alternative embodiment, when the laser contour scanner is a point laser contour scanner, the point cloud data is two-dimensional point cloud data. The Y-axis direction of the point cloud data is the direction of relative movement between the measured object and the point laser contour scanner, and the Z-axis direction is the upward direction perpendicular to the plane where the measured object is located. There is no data in the X-axis direction. Therefore, when obtaining the height of the search area of ​​the first point, it cannot be determined based on the Z-values ​​of each point in the X-axis neighborhood of the first point, as with a line laser contour scanner. Instead, it can be determined in the following way:

[0067] Based on the height difference between the upper surface of the object under test and the platform on which the object is located, the height of the search area for the first point is determined in the Z-axis direction; or

[0068] Receive the height value input by the user, and determine the height of the search area of ​​the first point in the Z-axis direction based on the height value input by the user.

[0069] In this embodiment, the height of the search area for the first point must at least cover the height difference between the upper surface of the object under test and the platform on which the object is located. That is, the height of the search area for the first point can be greater than or equal to the height difference between the upper surface of the object under test and the platform on which the object is located. For example, if the object under test is placed on the upper surface of a conveyor, then the height of the search area for the first point is greater than or equal to the height difference between the upper surface of the object under test and the upper surface of the conveyor. Similarly, if the object under test is a component on a circuit board, then the height of the search area for the first point is greater than or equal to the height difference between the upper surface of the component and the upper surface of the circuit board. The height difference between the upper surface of the object under test and the platform on which the object is located can be obtained through measurement or input by the user; alternatively, the user can directly input a height value, and the height of the search area for the first point is determined in the Z-axis direction based on the user-input height value.

[0070] Based on any of the above embodiments, regardless of whether it is a line laser contour scanner or a point laser contour scanner, after confirming the height of the search area of ​​the first point, the search area of ​​the first point can be determined according to the height of the search area of ​​the first point and the angle between the extension line of the incident light ray of the light projection unit at the first point and the reverse extension line of the reflected light ray received by the light receiving unit. Specifically, it may include:

[0071] Based on the angle between the extension of the incident light ray at the first point of the light projection unit and the reverse extension of the reflected light ray received by the light receiving unit, and the height of the search area in the Z-axis direction, a triangle is determined as the search area.

[0072] In this embodiment, the angle θ' between the extension of the incident ray at the first point and the backward extension of the reflected ray received by the light receiving unit can be determined. This angle is the vertical angle of the angle θ between the incident ray at the first point and the reflected ray received by the light receiving unit. The magnitude of this angle can be determined based on the positions of the light projection unit, the light receiving unit, and the CP point. Specifically, when the light projection unit projects the light beam along a direction perpendicular to the plane where the object being measured is placed, the angle θ between the incident ray at the first point and the reflected ray received by the light receiving unit can be determined using the known baseline L (horizontal distance from the optical center of the light receiving unit lens to the light projection unit), the standard working distance WD (Z value of the light projection unit's output port), and the Z value of the first point. The vertical angle is the angle θ' between the extension of the incident ray at the first point and the backward extension of the reflected ray received by the light receiving unit. The calculation formula is as follows:

[0073]

[0074] When determining a triangle based on the included angle and the height of the search area in the Z-axis direction, it is constructed in the YZ plane. The triangle has the first point as its vertex, the included angle θ' as its apex angle, the base of the triangle is parallel to the Y-axis, and the height on the base is equal to the height ΔZ1 of the search area in the Z-axis direction.

[0075] In the case where the light projection unit projects a light beam along the direction perpendicular to the plane where the object being measured is placed, the triangle is a right triangle with one right-angled side (base) parallel to the Y-axis and the other right-angled side along the Z-axis with a length equal to the height ΔZ1 of the search area in the Z-axis direction.

[0076] Based on the above embodiment, using the included angle θ', the height ΔZ1 of the search area in the Z-axis direction, and the coordinates of the first point (a vertex of the triangle, denoted as point A), the coordinates of the remaining vertices (B and C) of the triangle in the YZ plane can be calculated, as follows:

[0077]

[0078] Where the Y value at point C "in "It depends on the direction of relative movement between the object being measured and the line laser profiler."

[0079] Based on the coordinates of points A, B, and C, a triangle can be determined as the search area.

[0080] After determining the search area for the first point, it can be determined whether other points exist within the search area. To save judgment time and improve judgment efficiency, this embodiment does not traverse all points in the Y-axis direction, but only selects a limited number of points near the first point in the Y-axis direction for traversal. Specifically, this may include:

[0081] The number of traversals is determined based on the range of the search area in the Y-axis direction and the distance between points in the Y-axis direction.

[0082] The number of traversals and the direction of relative movement between the object under test and the line laser profile scanner are used to obtain multiple third points adjacent to the first point in the Y-axis direction.

[0083] Determine whether the third point is located within the search area.

[0084] In this embodiment, the search area along the Y-axis is the length of the base of the triangle within the search area. This determines the points covered by the search area along the Y-axis, which are then selected as the points to be traversed in that direction. Therefore, only a certain number of points need to be traversed along the Y-axis. The number of points to be traversed, or the traversal count, is related to the search area along the Y-axis and the spacing between the points along the Y-axis. With the search area along the Y-axis already determined, a larger spacing between the points results in sparser points along the Y-axis, fewer points covered by the search area, and a smaller traversal count. Conversely, a smaller spacing between the points results in denser points, more points covered by the search area, and a smaller traversal count. The spacing between the points along the Y-axis depends on the parameters of the laser contour scanner and / or the moving speed of the object being measured.

[0085] When determining the number of iterations, the ratio between the range of the search area along the Y-axis and the distance between points along the Y-axis can be used. The number of iterations is determined based on this ratio. If the ratio is not an integer, it can be rounded down to the nearest integer as the number of iterations. Figure 7 For example, the number of iterations ,in This represents the distance between points along the Y-axis. Optionally, the number of traversals can be greater than this ratio, for example, by multiplying the ratio by a coefficient greater than 1 and rounding it down to the nearest integer as the number of traversals.

[0086] According to the principle of field of view occlusion, it is only necessary to determine the points reconstructed before the first point. Therefore, based on the direction of relative movement between the measured object and the line laser profile scanner, multiple third points can be obtained along the Y-axis along the direction of relative movement between the measured object and the line laser profile scanner. The number of multiple third points is equal to the number of traversals mentioned above. Then, these multiple third points are traversed, and it is determined whether these multiple third points are located within the search area. If any third point is located within the search area, the first point is determined to be an interference point and can be deleted to ensure the accuracy of the point cloud data.

[0087] It should be noted that, Figure 6 The reflection interference points CP2 caused by similar specular reflection are usually below the surface of the object being measured. These points do not need to be identified by the point cloud processing method in the above embodiments. They can be identified by other methods. For example, if it is determined that a point is below the surface of the object being measured, it is identified as such a reflection interference point and can be deleted.

[0088] Based on any of the above embodiments, for line laser contour scanners, since there are multiple points in the point cloud data along the X-axis, performing the above point cloud processing method to determine whether each point in the X-axis direction is an interference point is time-consuming and inefficient. Therefore, in order to further accelerate the processing efficiency of the above point cloud processing method, and considering that reflection interference points usually appear in patches, this embodiment proposes a downsampling strategy, as follows:

[0089] The point cloud data is downsampled along the X-axis to obtain downsampled data;

[0090] Determine whether each point in the downsampled data is an interference point;

[0091] If any target point in the downsampled data is determined to be an interference point, then the neighboring point of the target point in the X-axis direction is searched in the point cloud data, and the neighboring point is taken as the first point, so as to perform the steps in the method described in the above embodiment to determine whether the neighboring point is an interference point.

[0092] In this embodiment, as Figure 9As shown, the original point cloud data (point cloud or depth map) is downsampled along the X-axis to obtain downsampled data. Downsampling can be achieved using sampling methods, such as sampling at intervals of one point along the X-axis. This reduces the point cloud data to half its original size along the X-axis, halving the data volume. The degree of downsampling can be adjusted by the user to balance effectiveness and efficiency. Based on the downsampled data, it is determined whether each point in the downsampled data is an interference point. Since the number of points along the X-axis is reduced, the efficiency of interference point identification in the downsampled data is improved. Furthermore, after identifying any target point in the downsampled data as an interference point, the target point can be found in the original point cloud data. The adjacent points of the target point along the X-axis in the original point cloud data are then searched. For these adjacent points, secondary interference point identification is performed, following the steps in the above embodiment to determine whether they are interference points. This process significantly reduces the amount of data processed and improves processing efficiency.

[0093] Optionally, when determining whether each point in the downsampled data is an interference point, any method that can determine interference points can be used; preferably, when determining whether each point in the downsampled data is an interference point, each point in the downsampled data can be taken as the first point in the above embodiment, and the steps in the method of the above embodiment are executed in the downsampled data to determine whether each point in the downsampled data is an interference point.

[0094] Furthermore, when searching for adjacent points of the target point along the X-axis in the original point cloud data, the search range for adjacent points can be determined based on the degree of downsampling of the downsampled data. For example, if the downsampled data is downsampled to 1 / 2 of the original point cloud data, the search range is one point to the left and one point to the right of the target point along the X-axis, at least covering the points ignored during the downsampling process; if the downsampled data is downsampled to 1 / 4 of the original point cloud data, the search range is three points to the left and three points to the right of the target point along the X-axis. If there are overlapping points, only one calculation is needed, without needing to repeatedly determine whether they are interference points. After determining the search range for adjacent points, the adjacent points of the target point along the X-axis in the original point cloud data are searched according to the search range, and then each of these adjacent points is determined to be an interference point.

[0095] As an example, such as Figure 10 As shown, the point cloud processing method in this embodiment may specifically include the following steps:

[0096] S1001. Acquire point cloud data collected by a line laser contour scanner;

[0097] S1002, Downsample the point cloud data in the X-axis direction to 1 / n of the original value;

[0098] S1003. Traverse each point of the downsampled data, perform the first interference point identification for each point of the downsampled data, that is, use the method in the above embodiment to determine the search area of ​​each point, and determine whether there are other points in the search area of ​​each point, so as to identify whether each point of the downsampled data is an interference point.

[0099] S1004. If any target point in the downsampled data is determined to be an interference point, then record the location of the target point;

[0100] S1005. Find n neighboring points of the target point in the X-axis direction in the point cloud data, and perform secondary interference point identification on the neighboring points; that is, use the method in the above embodiment to determine the search area of ​​each neighboring point, and determine whether there are other points in the search area of ​​each neighboring point, so as to identify whether each neighboring point is an interference point.

[0101] S1006. Delete all identified interference points;

[0102] S1007. Output the processed point cloud data.

[0103] In this embodiment of the disclosure, reference is made to Figure 11 In addition to providing a point cloud processing method, a point cloud processing device 1100 is also provided for performing the above-mentioned point cloud processing method; the point cloud processing device 1100 includes: an acquisition module 1101, a search area determination module 1102, and an interference point identification module 1103.

[0104] The acquisition module 1101 is used to acquire point cloud data of the object under test collected by the laser contour scanner, wherein the laser contour scanner includes a light projection unit and a light receiving unit.

[0105] The search area determination module 1102 is used to determine the height of the search area of ​​any first point in the point cloud data, and to determine the search area of ​​the first point based on the height of the search area of ​​the first point and the angle between the extension line of the incident light ray of the light projection unit at the first point and the reverse extension line of the reflected light ray received by the light receiving unit.

[0106] The interference point identification module 1103 is used to determine whether there are other points in the search area. If there are, the first point is identified as an interference point.

[0107] In one or more embodiments of this disclosure, the laser profile scanner is a line laser profile scanner, the Y-axis direction of the point cloud data is the direction of relative movement between the object under test and the line laser profile scanner, the Z-axis direction is the direction perpendicular to the plane where the object under test is located and upward, and the X-axis direction is the cross product direction of the Y-axis and Z-axis.

[0108] When determining the height of the search area determination module 1102 for the first point, it is used to:

[0109] Based on the Z values ​​of each point in the neighborhood of the first point along the X-axis, the height ΔZ1 of the search area of ​​the first point is determined along the Z-axis.

[0110] In one or more embodiments of this disclosure, when the search region determination module 1102 determines the height ΔZ1 of the search region of the first point in the Z-axis direction based on the Z values ​​of each point in the neighborhood of the first point in the X-axis direction, it is used to:

[0111] Based on the Z value of the first point and the minimum Z value of each point in the neighborhood of the first point along the X-axis, the height value ΔZ1 of the search area of ​​the first point is determined along the Z-axis.

[0112] In one or more embodiments of this disclosure, when the search region determination module 1102 determines the height ΔZ1 of the search region of the first point in the Z-axis direction based on the Z value of the first point and the minimum Z value of each point in the neighborhood of the first point in the X-axis direction, it is used to:

[0113] Determine the minimum Z value of each point in the X-axis neighborhood of the first point;

[0114] Determine the difference ΔZ2 between the Z value of the first point and the minimum Z value;

[0115] The product of ΔZ2 and a preset coefficient is determined as ΔZ1, wherein the preset coefficient is greater than or equal to 1.

[0116] In one or more embodiments of this disclosure, the search region determination module 1102, when determining the minimum Z value of each point within the X-axis neighborhood of the first point, is configured to:

[0117] Within a predetermined range in the X-axis direction of the first point, a second point is selected using downsampling or sampling, and the minimum Z value is determined from the Z value of the first point and the Z value of the second point.

[0118] In one or more embodiments of this disclosure, the laser profile scanner is a point laser profile scanner, the Y-axis direction of the point cloud data is the direction of relative movement between the object under test and the point laser profile scanner, and the Z-axis direction is the direction perpendicular to the plane where the object under test is located and upward.

[0119] When determining the height of the search area determination module 1102 for the first point, it is used to:

[0120] Based on the height difference between the upper surface of the object under test and the platform on which the object is located, the height of the search area for the first point is determined in the Z-axis direction; or

[0121] Receive the height value input by the user, and determine the height of the search area of ​​the first point in the Z-axis direction based on the height value input by the user.

[0122] In one or more embodiments of this disclosure, when the search area determination module 1102 determines the search area of ​​the first point based on the height of the search area of ​​the first point and the angle between the extension line of the incident light ray from the light projection unit at the first point and the reverse extension line of the reflected light ray received by the light receiving unit, it is configured to:

[0123] Based on the included angle and the height of the search area in the Z-axis direction, a triangle is determined as the search area.

[0124] In one or more embodiments of this disclosure, when the search region determination module 1102 determines a triangle as the search region based on the included angle and the height of the search region in the Z-axis direction, it is used to:

[0125] The triangle is constructed in the YZ plane as the search area. The triangle has the first point as its vertex and the included angle as its apex. The base of the triangle is parallel to the axis, and the height of the base is equal to the height of the search area in the Z-axis direction.

[0126] In one or more embodiments of this disclosure, the search region determination module 1102, when constructing the triangle in the YZ plane, is used to:

[0127] Obtain the angle of the apex angle;

[0128] The coordinates of the remaining vertices of the triangle are determined based on the angle of the vertex, the height of the search area in the Z-axis direction, and the coordinates of the first point.

[0129] Based on the coordinates of the first point and the coordinates of the remaining vertices, construct the triangle in the YZ plane.

[0130] In one or more embodiments of this disclosure, the interference point identification module 1103, when determining whether other points exist within the search area, is configured to:

[0131] The number of traversals is determined based on the range of the search area in the Y-axis direction and the distance between points in the Y-axis direction.

[0132] Based on the number of traversals and the direction of relative movement between the object under test and the line laser profile scanner, a plurality of third points adjacent to the first point are obtained in the Y-axis direction.

[0133] Determine whether the third point is located within the search area.

[0134] In one or more embodiments of this disclosure, the interference point identification module 1103, when determining the number of traversals based on the range of the search area in the Y-axis direction and the spacing between points in the Y-axis direction, is used to:

[0135] Determine the ratio between the range of the search region in the Y-axis direction and the distance between points in the Y-axis direction, and determine the number of traversals based on the ratio.

[0136] In one or more embodiments of this disclosure, the apparatus further includes a downsampling module for downsampling the point cloud data in the X-axis direction to obtain downsampled data;

[0137] The interference point identification module 1103 is further configured to determine whether each point in the downsampled data is an interference point; if any target point in the downsampled data is determined to be an interference point, then the adjacent point of the target point in the X-axis direction is searched in the point cloud data, and the adjacent point is used as the first point, so as to execute the steps in the method described in the above embodiment to determine whether the adjacent point is an interference point.

[0138] In one or more embodiments of this disclosure, the interference point identification module 1103, when determining whether each point in the downsampled data is an interference point, is configured to:

[0139] Each point in the downsampled data is taken as the first point, and the steps in the method described in the above embodiment are executed to determine whether each point in the downsampled data is an interference point.

[0140] In one or more embodiments of this disclosure, when the interference point identification module 1103 searches for adjacent points of the target point in the X-axis direction in the point cloud data, it is used to:

[0141] The search range for the adjacent points is determined based on the degree of downsampling of the downsampling data;

[0142] Based on the search range, search for the adjacent points of the target point in the point cloud data along the X-axis.

[0143] In one or more embodiments of this disclosure, after determining that the first point is an interference point, the interference point identification module 1103 is further configured to:

[0144] Delete the first point.

[0145] The apparatus provided in this embodiment can be used to execute the technical solutions of the above method embodiments. Its implementation principle and technical effects are similar, and will not be described again here.

[0146] Furthermore, in some of the processes described in the above embodiments and accompanying drawings, multiple operations appear in a specific order. However, it should be clearly understood that these operations may not be executed in the order they appear herein, or may be executed in parallel. The sequence numbers are merely used to distinguish different operations, and the sequence numbers themselves do not represent any execution order. Additionally, these processes may include more or fewer operations, and these operations may be executed sequentially or in parallel. It should be noted that the descriptions such as "first," "second," etc., in this document are used to distinguish different messages, devices, modules, etc., and do not represent a sequential order, nor do they limit "first" and "second" to different types.

[0147] Figure 12 This is a schematic diagram of the structure of an electronic device provided in an example embodiment of this disclosure. For example... Figure 9 As shown, the electronic device 1200 includes a processor 1201 and a memory 1202 communicatively connected to the processor 1201, the memory 1202 storing computer execution instructions.

[0148] The processor executes computer execution instructions stored in the memory to implement the point cloud processing method provided in any of the above method embodiments. The specific functions and technical effects to be achieved will not be elaborated here.

[0149] Optionally, the electronic device 1200 is a laser contour scanner.

[0150] This disclosure also provides a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, are used to implement the point cloud processing method provided in any of the above method embodiments.

[0151] This disclosure also provides a computer program product, which includes a computer program stored in a readable storage medium. At least one processor of an electronic device can read the computer program from the readable storage medium, and the at least one processor executes the computer program to cause the electronic device to perform the point cloud processing method provided in any of the above method embodiments.

[0152] In the embodiments provided in this disclosure, it should be understood that the disclosed systems and methods can be implemented in other ways. For example, the system embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between systems or units may be electrical, mechanical, or other forms.

[0153] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0154] Furthermore, the functional units in the various embodiments of this disclosure can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or in a combination of hardware and software functional units.

[0155] The integrated units implemented as software functional units described above can be stored in a computer-readable storage medium. These software functional units, stored in a storage medium, include several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) or processor to execute some steps of the methods of the various embodiments of this disclosure. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0156] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the above-described division of functional modules is merely an example. In practical applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the system can be divided into different functional modules to complete all or part of the functions described above. The specific working process of the system described above can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.

[0157] Other embodiments of this disclosure will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This disclosure is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of this disclosure are indicated by the following claims.

[0158] It should be understood that this disclosure is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this disclosure is limited only by the appended claims.

Claims

1. A point cloud processing method, characterized in that, include: The point cloud data of the object under test is acquired by a laser contour scanner, wherein the laser contour scanner includes a light projection unit and a light receiving unit. For any first point in the point cloud data, determine the height of the search area of ​​the first point, and determine the search area of ​​the first point based on the height of the search area of ​​the first point and the angle between the extension line of the incident light ray of the light projection unit at the first point and the reverse extension line of the reflected light ray received by the light receiving unit. Determine whether there are other points within the search area; if so, determine that the first point is an interference point. Wherein, the laser contour scanner is a line laser contour scanner, the Y-axis direction of the point cloud data is the direction of relative movement between the measured object and the line laser contour scanner, the Z-axis direction is the direction perpendicular to the plane where the measured object is located and upwards, and the X-axis direction is the cross product direction of the Y-axis and Z-axis; determining the height of the search area of ​​the first point includes: Based on the Z values ​​of each point in the neighborhood of the first point along the X-axis, the height ΔZ1 of the search area of ​​the first point is determined along the Z-axis. Alternatively, the laser contour scanner is a point laser contour scanner, where the Y-axis direction of the point cloud data is the direction of relative movement between the object being measured and the point laser contour scanner, and the Z-axis direction is the upward direction perpendicular to the plane where the object being measured is located; determining the height of the search area for the first point includes: Based on the height difference between the upper surface of the object under test and the platform on which the object is located, the height of the search area for the first point is determined in the Z-axis direction; or Receive the height value input by the user, and determine the height of the search area of ​​the first point in the Z-axis direction based on the height value input by the user.

2. The method according to claim 1, characterized in that, The step of determining the height ΔZ1 of the search region of the first point in the Z-axis direction based on the Z values ​​of each point in the neighborhood of the first point in the X-axis direction includes: Based on the Z value of the first point and the minimum Z value of each point in the neighborhood of the first point along the X-axis, the height value ΔZ1 of the search area of ​​the first point is determined along the Z-axis.

3. The method according to claim 2, characterized in that, The step of determining the height ΔZ1 of the search region of the first point in the Z-axis direction based on the Z value of the first point and the minimum Z value of each point in the neighborhood of the first point in the X-axis direction includes: Determine the minimum Z value of each point in the X-axis neighborhood of the first point; Determine the difference ΔZ2 between the Z value of the first point and the minimum Z value; The product of ΔZ2 and a preset coefficient is determined as ΔZ1, wherein the preset coefficient is greater than or equal to 1.

4. The method according to claim 3, characterized in that, Determining the minimum Z value of each point in the X-axis neighborhood of the first point includes: Within a predetermined range in the X-axis direction of the first point, a second point is selected using downsampling or sampling, and the minimum Z value is determined from the Z value of the first point and the Z value of the second point.

5. The method according to any one of claims 1-4, characterized in that, Determining the search area of ​​the first point based on the height of the search area at the first point and the angle between the extension of the incident light ray from the light projection unit at the first point and the reverse extension of the reflected light ray received by the light receiving unit includes: Based on the included angle and the height of the search area in the Z-axis direction, a triangle is determined as the search area.

6. The method according to claim 5, characterized in that, The step of determining a triangle as the search area based on the included angle and the height of the search area in the Z-axis direction includes: The triangle is constructed in the YZ plane as the search area. The triangle has the first point as its vertex and the included angle as its apex. The base of the triangle is parallel to the axis, and the height of the base is equal to the height of the search area in the Z-axis direction.

7. The method according to claim 6, characterized in that, The construction of the triangle in the YZ plane includes: Obtain the angle of the apex angle; The coordinates of the remaining vertices of the triangle are determined based on the angle of the vertex, the height of the search area in the Z-axis direction, and the coordinates of the first point. Based on the coordinates of the first point and the coordinates of the remaining vertices, construct the triangle in the YZ plane.

8. The method according to any one of claims 1-4, characterized in that, The determination of whether other points exist within the search area includes: The number of traversals is determined based on the range of the search area in the Y-axis direction and the distance between points in the Y-axis direction. Based on the number of traversals and the direction of relative movement between the object under test and the line laser profile scanner, a plurality of third points adjacent to the first point are obtained in the Y-axis direction. Determine whether the third point is located within the search area.

9. The method according to claim 8, characterized in that, The step of determining the number of traversals based on the range of the search region along the Y-axis and the distance between points along the Y-axis includes: Determine the ratio between the range of the search region in the Y-axis direction and the distance between points in the Y-axis direction, and determine the number of traversals based on the ratio.

10. The method according to any one of claims 1-4, characterized in that, Before determining the search area for the first point, the method further includes: The point cloud data is downsampled along the X-axis to obtain downsampled data; Determine whether each point in the downsampled data is an interference point; If any target point in the downsampled data is determined to be an interference point, then the neighboring point of the target point in the X-axis direction is searched in the point cloud data, and the neighboring point is taken as the first point, so as to perform the steps in the method as described in any one of claims 2-5 to determine whether the neighboring point is an interference point.

11. The method according to claim 10, characterized in that, The step of determining whether each point in the downsampled data is an interference point includes: Each point in the downsampled data is taken as the first point, and the steps in the method as described in any one of claims 2-5 are performed to determine whether each point in the downsampled data is an interference point.

12. The method according to claim 11, characterized in that, The step of finding the neighboring points of the target point in the X-axis direction in the point cloud data includes: The search range for the adjacent points is determined based on the degree of downsampling of the downsampling data; Based on the search range, search for the adjacent points of the target point in the point cloud data along the X-axis.

13. The method according to any one of claims 1-4, characterized in that, After determining that the first point is an interference point, the process further includes: Delete the first point.

14. A point cloud processing device, characterized in that, include: The acquisition module is used to acquire point cloud data of the object under test collected by the laser contour scanner, wherein the laser contour scanner includes a light projection unit and a light receiving unit. The search area determination module is used to determine the height of the search area of ​​any first point in the point cloud data, and to determine the search area of ​​the first point based on the height of the search area of ​​the first point and the angle between the extension line of the incident light ray of the light projection unit at the first point and the reverse extension line of the reflected light ray received by the light receiving unit. The interference point identification module is used to determine whether there are other points in the search area. If there are, the first point is identified as an interference point. Wherein, the laser contour scanner is a line laser contour scanner, the Y-axis direction of the point cloud data is the direction of relative movement between the measured object and the line laser contour scanner, the Z-axis direction is the upward direction perpendicular to the plane where the measured object is located, and the X-axis direction is the cross product direction of the Y-axis and Z-axis; the search area determination module, when determining the height of the search area of ​​the first point, is used for: Based on the Z values ​​of each point in the neighborhood of the first point along the X-axis, the height ΔZ1 of the search area of ​​the first point is determined along the Z-axis. Alternatively, the laser contour scanner is a point laser contour scanner, where the Y-axis direction of the point cloud data is the direction of relative movement between the object being measured and the point laser contour scanner, and the Z-axis direction is the direction perpendicular to the plane where the object being measured is located and pointing upwards; the search area determination module, when determining the height of the search area for the first point, is used for: The height of the search area for the first point is determined in the Z-axis direction based on the height difference between the upper surface of the object under test and the platform on which the object under test is located. or Receive the height value input by the user, and determine the height of the search area of ​​the first point in the Z-axis direction based on the height value input by the user.

15. An electronic device, characterized in that, include: A processor, a memory, and a computer program stored in the memory and executable on the processor, wherein the processor, when executing the computer program, implements the method as described in any one of claims 1-13.

16. The electronic device according to claim 15, characterized in that, The electronic device is a laser contour scanner.

17. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer-executable instructions, which, when executed by a processor, are used to implement the method described in any one of claims 1-13.

Citation Information

Patent Citations

  • Laser radar three-dimensional point cloud segmentation method

    CN110969624A

  • Dental scanner-based point cloud adaptive processing method and device, and medium

    CN115984147A