Edge point cloud noise filtering method, device and equipment of three-dimensional scanning and medium
By separating point cloud data based on the continuity of line structured light in a 3D scanning device, calculating the geometric features of boundary points and performing precise filtering, the problem of insufficient accuracy in noise removal in laser edge scanning technology is solved, and the accuracy and reliability of edge point clouds in 3D scanning are improved.
Patent Information
- Application Number
- CN202610049506.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-01-14
- Publication Date
- 2026-06-05
AI Technical Summary
In existing technologies, laser edge scanning technology suffers from insufficient accuracy in processing noise, especially under the scattering characteristics of object edges and the laser beam trailing effect, making it difficult to effectively remove noise and affecting the final dimensional measurement accuracy and edge reconstruction quality.
By acquiring line structured light point cloud data collected by a 3D scanning device, the point cloud data is divided into boundary points and surface points according to the continuity of line structured light. The geometric feature information of the boundary points is calculated using the surface points, and precise filtering is performed based on the geometric feature information, including angle judgment and voxel unit weighted average calculation.
It effectively and stably removes noise during the scanning process, significantly improving the accuracy and reliability of the 3D edge scanning results and ensuring the purity and accuracy of the edge point cloud.
Smart Images

Figure CN122155981A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of 3D scanning technology, and in particular to a method for filtering edge point cloud noise in 3D scanning, an edge point cloud noise filtering device, a 3D scanning device, and a computer-readable storage medium. Background Technology
[0002] In industrial inspection and 3D reconstruction, laser edge scanning technology is widely used to acquire high-precision contour data of object edges. In related technologies, after the scanning process is complete, all collected point cloud data are linearly fitted, and points not on the line are simply removed as noise. This processing method struggles to guarantee the accuracy of laser edge scanning results when there are many noisy points. Summary of the Invention
[0003] This application provides a method for filtering edge point cloud noise in 3D scanning, an edge point cloud noise filtering device, a 3D scanning device, and a computer-readable storage medium to solve at least one of the aforementioned technical problems.
[0004] The method for filtering edge point cloud noise in three-dimensional scanning according to the embodiments of this application includes: The point cloud data is obtained by a 3D scanning device by collecting line structured light projected onto the surface of the object under test; Based on the continuity of the line structured light, the points in the point cloud data are divided into boundary points and surface points; Using the surface points, calculate the geometric feature information of the boundary points; Based on the geometric feature information, the boundary points are filtered.
[0005] In some implementations, dividing the points in the point cloud data into boundary points and surface points based on the continuity of the line structured light includes: A predetermined number of points at the beginning and end of the line structured light breakage point are defined as the boundary points, and points at the non-breakage point of the line structured light are defined as the surface points.
[0006] In some implementations, calculating the geometric feature information of the boundary points using the surface points includes: The geometric feature information of the boundary points is calculated by combining the surface points in the current frame and at least one historical frame; The geometric feature information includes at least one of normal information, radial information, and tangential information.
[0007] In some embodiments, before filtering the boundary points based on the geometric feature information, the edge point cloud noise filtering method further includes: Based on the point cloud distribution characteristics around the boundary points, non-boundary points among the boundary points are eliminated.
[0008] In some implementations, filtering the boundary points based on the geometric feature information includes: The current included angle is determined based on the camera normal information of the 3D scanning device and the geometric feature information; When the current included angle does not meet the preset angle threshold condition, the boundary point is determined to be a noise point and is filtered out.
[0009] In some embodiments, after filtering the boundary points based on the geometric feature information, the edge point cloud noise filtering method further includes: The filtered boundary points are mapped to multiple voxel units; Based on the current included angle, a position-weighted average is calculated for the boundary points in the same voxel unit to obtain the representative point of the voxel unit; Output the representative point of the voxel unit.
[0010] In some implementations, before outputting the representative points, the edge point cloud noise filtering method further includes: Count the current number of boundary points in the same voxel unit; The output of the representative point of the voxel unit includes: When the current quantity reaches a preset quantity threshold, the representative point of the voxel unit is output.
[0011] The edge point cloud noise filtering device for three-dimensional scanning according to the embodiments of this application includes: The acquisition module is used to acquire point cloud data obtained by the 3D scanning device through the acquisition of line structured light projected onto the surface of the object under test; A classification module is used to classify points in the point cloud data into boundary points and surface points based on the continuity of the line structured light. The calculation module is used to calculate the geometric feature information of the boundary points using the surface points; The filtering module is used to filter the boundary points based on the geometric feature information.
[0012] The three-dimensional scanning device according to the embodiments of this application includes one or more processors and a memory. The memory stores a computer program, and when the computer program is executed by the processor, it implements the edge point cloud noise filtering method of any of the above embodiments.
[0013] The computer-readable storage medium of the present application embodiment stores a computer program thereon, which, when executed by a processor, implements the edge point cloud noise filtering method of any of the above embodiments.
[0014] The edge point cloud noise filtering method, edge point cloud noise filtering device, 3D scanning equipment, and computer-readable storage medium of this application first divide the points in the point cloud data into boundary points and surface points based on the continuity of line structured light; then, using the surface points, the geometric feature information of the boundary points is calculated; finally, based on the geometric feature information, the boundary points are accurately filtered. In this way, noise points can be effectively and stably removed during the scanning process, greatly improving the accuracy and reliability of the 3D edge scanning results.
[0015] Additional aspects and advantages of embodiments of this application will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of embodiments of this application. Attached Figure Description
[0016] The above and / or additional aspects and advantages of this application will become apparent and readily understood from the description of the embodiments taken in conjunction with the following drawings, wherein: Figure 1 This is a flowchart illustrating a method for filtering edge point cloud noise in three-dimensional scanning according to certain embodiments of this application. Figure 2 This is a flowchart illustrating a method for filtering edge point cloud noise in three-dimensional scanning according to certain embodiments of this application. Figure 3 This is a flowchart illustrating a method for filtering edge point cloud noise in three-dimensional scanning according to certain embodiments of this application. Figure 4 This is a flowchart illustrating a method for filtering edge point cloud noise in three-dimensional scanning according to certain embodiments of this application. Figure 5 This is a flowchart illustrating a method for filtering edge point cloud noise in three-dimensional scanning according to certain embodiments of this application. Figure 6 This is a schematic diagram of a module for an edge point cloud noise filtering device for three-dimensional scanning according to certain embodiments of this application; Figure 7 This is a schematic diagram of a module of a three-dimensional scanning device according to certain embodiments of this application; Figure 8 This is a schematic diagram illustrating the connection state between a computer-readable storage medium and a processor according to certain embodiments of this application. Detailed Implementation
[0017] The embodiments of this application will be further described below with reference to the accompanying drawings. The same or similar reference numerals in the drawings denote the same or similar elements or elements having the same or similar functions throughout. Furthermore, the embodiments of this application described below with reference to the accompanying drawings are exemplary and are only used to explain the embodiments of this application, and should not be construed as limiting this application.
[0018] In industrial inspection and 3D reconstruction, laser edge scanning technology is widely used to acquire high-precision contour data of object edges. Current solutions typically employ a strategy of first acquiring data and then fitting it. This involves performing a uniform linear fit on all collected point cloud data after the scanning process is complete, and simply discarding points that are not on the line as noise. This approach suffers from significant latency and lacks a physical basis for removing non-linear points, resulting in a crude statistical removal process that is ultimately uncontrollable.
[0019] In actual laser edge scanning operations, due to the scattering characteristics of object edges and the trailing effect of laser beams, a large number of noise points are often generated at the edges. If these noise points cannot be effectively identified and eliminated during the data processing stage, it will seriously affect the final dimensional measurement accuracy and edge reconstruction quality. To address the technical problem of numerous noise points and inability to guarantee accuracy during laser edge scanning, this application proposes a new solution.
[0020] Please see Figure 1 The edge point cloud noise filtering method for three-dimensional scanning according to the embodiments of this application includes: S10: Acquire point cloud data by the 3D scanning device by collecting line structured light projected onto the surface of the object under test; S20: Based on the continuity of line structured light, the points in the point cloud data are divided into boundary points and surface points; S30: Calculate the geometric feature information of boundary points using surface points; S40: Filter boundary points based on geometric feature information.
[0021] In the edge point cloud noise filtering method for 3D scanning according to the embodiments of this application, the points in the point cloud data are first divided into boundary points and surface points based on the continuity of line structured light; then, the geometric feature information of the boundary points is calculated using the surface points; finally, the boundary points are accurately filtered based on the geometric feature information. In this way, noise points can be effectively and stably removed during the scanning process, greatly improving the accuracy and reliability of the 3D edge scanning results.
[0022] Specifically, in S10, the point cloud data obtained by the 3D scanning device is acquired by collecting line structured light projected onto the surface of the object to be measured.
[0023] A 3D scanning device is a device capable of projecting structured light onto a target object and receiving reflected information to generate a 3D point cloud. In some embodiments, the 3D scanning device can be a line laser profilometer, or a structured light camera based on Digital Light Processing (DLP) projection technology or Liquid Crystal Display (LCD) projection technology, etc.
[0024] Line structured light refers to an optical pattern with a linear shape. In some embodiments, line structured light can be a high-brightness single-line or multi-line laser generated by a laser generator; in other embodiments, line structured light can also be coded light stripes or sinusoidal fringes projected by a projector.
[0025] In one example, the 3D scanning device is a multi-line laser profilometer, which can project multiple laser lines onto the surface of an object simultaneously, thereby acquiring richer surface information in a single acquisition.
[0026] Point cloud data refers to a dataset consisting of a series of points defined in a three-dimensional coordinate system (usually including x, y, and z coordinates), which together depict the surface contour of the scanned object. Each frame of point cloud data represents all the three-dimensional points captured by the 3D scanning device at a certain moment.
[0027] In S20, based on the continuity of line structured light, the points in the point cloud data are divided into boundary points and surface points.
[0028] The continuity of line structured light refers to whether the line structured light interrupts or abruptly changes on the surface of an object. It can be understood that the line structured light will break when it sweeps across the object's surface to the background or across the object's edge. In some embodiments, continuity can be determined by calculating the Euclidean distance or depth difference between adjacent points. For example, when the Euclidean distance or depth difference between adjacent points exceeds a preset breakage threshold, it is determined to be discontinuous.
[0029] Boundary points are points used to characterize the edge contours of an object. Surface points, on the other hand, are points located on the continuous surface of an object and can be used to help determine the geometric features of boundary points.
[0030] In S30, surface points are used to calculate the geometric feature information of boundary points.
[0031] Geometric feature information refers to mathematical or physical vectors that describe the local geometry of a point and its neighborhood. By calculating this information, an isolated point can be endowed with rich attributes such as direction and orientation, thus providing a basis for subsequent accurate filtering. Since boundary points are themselves severely affected by noise, directly calculating their own geometric features often results in large errors. Therefore, this application embodiment utilizes the high-confidence geometric attributes of classified surface points to determine the geometric feature information of boundary points.
[0032] In S40, boundary points are filtered based on geometric feature information.
[0033] Filtering refers to the process of selecting boundary points and removing false points or noise points (i.e., impurities) that do not conform to the characteristics of true edge points. This can significantly improve the purity and accuracy of the final edge point cloud.
[0034] The above technical solution, by introducing point classification and a filtering mechanism based on geometric features, changes the uncontrollable method of post-processing removal that relies on linear fitting in traditional techniques. First, key boundary points and surface points providing auxiliary information are identified. Then, physically meaningful geometric features are calculated for the boundary points. Finally, precise filtering is performed based on these features, thereby effectively and stably removing noise points during the scanning process, greatly improving the accuracy and reliability of the 3D edge scanning results.
[0035] In some implementations, based on the continuity of the line structured light, the points in the point cloud data are divided into boundary points and surface points (i.e., S20), including: A predetermined number of points at the beginning and end of the line structured light break are defined as boundary points, and points at the non-break points of the line structured light are defined as surface points.
[0036] Specifically, a break in line structured light refers to a region in point cloud data where the spatial positions of points along a single line structured light sequence are discontinuous. A predetermined number of points at the beginning and end define the selection range of boundary points. In some embodiments, the predetermined number can be a fixed integer n, such as 3, 5, or 10. Choosing an appropriate value for n ensures that edge information is captured while avoiding misclassifying too many points far from the actual edge as boundary points. In some embodiments, a smaller n value is suitable for sharp, clear edges; a larger n value is suitable for edges with slight chamfers or curvature, better capturing the transition region of the edge. The above technical solution utilizes the physically significant features of 3D edge scanning (i.e., breaks at the edge) to identify key points, which is logically clear and computationally efficient.
[0037] In some implementations, the geometric feature information of the boundary points is calculated using surface points (i.e., S30), including: Calculate the geometric feature information of the boundary points by combining the surface points in the current frame and at least one historical frame; The geometric feature information includes at least one of the following: normal information, radial information, and tangential information.
[0038] Specifically, the current frame refers to the point cloud data frame acquired by the 3D scanning device at the current moment. Historical frames refer to point cloud data frames acquired at one or more moments prior to the current moment. By combining multiple frames of data, a denser and more stable local point cloud neighborhood can be formed, effectively suppressing jitter or noise that may exist in single-frame data, thereby making the calculated geometric feature information more robust and accurate.
[0039] In some embodiments, since the 3D scanning device is typically in motion, when combining historical frames, the point cloud data of the historical frames can be uniformly transformed to the coordinate system of the current frame based on encoder feedback or the forward kinematics solution of the robot, thereby achieving spatial registration of multi-frame data. After registration is completed, the geometric feature information of the boundary points is calculated based on the surface points in the current frame and the historical frames.
[0040] Normal, radial, and tangential information refer to the vertical orientation, radial direction, and edge extension direction of the tiny plane containing the boundary point, respectively. This information provides the geometric basis for subsequent filtering of the boundary points.
[0041] Please see Figure 2 In some implementations, before filtering boundary points based on geometric feature information (i.e., S40), the edge point cloud noise filtering method further includes: S50: Based on the point cloud distribution characteristics around the boundary points, remove non-boundary points from the boundary points.
[0042] Specifically, the point cloud distribution characteristics around a boundary point can refer to the number and spatial arrangement pattern of other points within the local space of a candidate boundary point. It can be understood that the point cloud distribution around a real boundary point is usually asymmetrical, with one side being densely populated with surface points and the other side being a blank area with almost no points. Conversely, an isolated noise point is usually surrounded by uniformly sparse points, or completely devoid of other points.
[0043] In some embodiments, a radius-based neighborhood search method can be employed. For each candidate boundary point, the number of neighboring points is searched within a spherical space of a preset radius. If the number of neighboring points is less than a preset minimum threshold, the point is considered an isolated noise point, i.e., a non-boundary point, and is discarded. This step can efficiently remove obviously isolated noise points caused by environmental reflections or sensor errors, serving as a first coarse filtering step and reducing the computational burden of subsequent fine filtering steps.
[0044] Please see Figure 3In some implementations, the boundary points are filtered based on geometric feature information (i.e., S40), including: S41: Determine the current included angle based on the camera normal information and geometric feature information of the 3D scanning device; S42: When the current included angle does not meet the preset angle threshold condition, the boundary point is determined to be a noisy point and is filtered out.
[0045] Specifically, camera normal information refers to the optical axis direction of the camera in a 3D scanning device, i.e., the viewing direction. The current angle refers to the angle between the geometric feature information of the boundary point (such as normal information, radial information, etc.) and the camera normal information.
[0046] The preset angle threshold condition defines a reasonable angle range. For example, according to the principles of optical imaging, the local surface normal of the edge of an object that can be clearly scanned is usually orthogonal to the camera's viewing direction.
[0047] In some embodiments, the angle threshold condition can be set to an angle between 70 and 110 degrees. If the calculated angle is much less than 70 degrees (meaning the normal is almost facing the camera, and the point is more likely to be a planar point) or much greater than 110 degrees (meaning the normal is almost facing away from the camera, and the point may be the back of an object or noise), the boundary point is determined to be a physically incompatible noisy point and is filtered out. This step utilizes geometrical optical constraints, which is an effective and robust filtering method capable of accurately removing a large number of seemingly edge-located but actually unreasonable pseudo-points.
[0048] In some embodiments, determining the current included angle (i.e., S41) based on the camera normal information and geometric feature information of the 3D scanning device includes: Calculate the first angle between the camera normal of the 3D scanning device and the normal of the boundary points; Calculate the second included angle between the camera normal of the 3D scanning device and the radial direction of the boundary point; When the current included angle does not meet the preset angle threshold condition, the boundary point is determined to be noise and filtered out (i.e., S42), including: If the first included angle does not meet the preset first angle threshold condition, or the second included angle does not meet the preset second angle threshold condition, the boundary point is determined to be a noise point and is filtered out.
[0049] Please see Figure 4 In some implementations, after filtering boundary points based on geometric feature information (i.e., S40), the edge point cloud noise filtering method further includes: S60: Map the filtered boundary points to multiple voxel units; S70: Based on the current included angle, perform a position-weighted average calculation on the boundary points in the same voxel element to obtain the representative point of the voxel element; S80: Representative point of the output voxel unit.
[0050] Specifically, a voxel is a small cubic unit obtained by dividing a three-dimensional space into regular grids. The size of the voxel can be preset according to the required edge scanning accuracy. By mapping the point cloud to voxels, the continuous space can be discretized, facilitating data aggregation and management. In some embodiments, an octree data structure can be used to construct the voxel unit. An octree is a tree-like data structure that can efficiently store and retrieve sparse three-dimensional data.
[0051] Position-weighted average calculation is a method that fuses information from multiple points. Unlike a simple arithmetic average, it assigns higher weights to more reliable points. In the embodiments of this application, the weights can be determined based on the current angle. For example, the more the current angle meets the angle threshold condition, the higher the weight of the corresponding boundary point in the weighted average calculation. In this way, the positions of the voxel units represented by the final calculated points will be more biased towards those boundary points with the most reasonable geometric poses, thereby further improving the accuracy of edge localization.
[0052] The final output is the representative point of the voxel unit, that is, the high-precision edge point cloud after fusion, for subsequent measurement or modeling.
[0053] Please see Figure 5 In some implementations, the edge point cloud noise filtering method further includes the following steps before outputting the representative point (i.e., S80): S90: Count the current number of boundary points in the same voxel cell; The representative point of the output voxel unit (i.e., S80) includes: S81: When the current quantity reaches the preset quantity threshold, output the representative point of the voxel unit.
[0054] Specifically, the current quantity refers to the cumulative total number of boundary points mapped to the same voxel unit after the aforementioned filtering steps. The preset quantity threshold is an integer used to determine the confidence level of the result.
[0055] For example, when the threshold is set to 10, it means that only when a voxel cell has at least 10 filtered boundary points is the representative point calculated by weighted averaging these points considered stable and reliable, and this point is output as the final edge point. If the number of boundary points in a voxel cell does not reach the threshold, its representative point will be discarded. This step establishes a confidence barrier for the final output edge point cloud, ensuring the stability and reliability of the output results.
[0056] In summary, the edge point cloud noise filtering method for 3D scanning implemented in this application breaks away from the traditional delayed processing mode of scanning first and then fitting, and proposes a real-time processing framework based on physical geometric constraints and spatiotemporal fusion. By distinguishing between boundary points and surface points, it derives edge geometric features using stable surface information; it introduces the angle between the camera viewpoint and the geometric features as a core quality evaluation index to eliminate low-quality data at angle deviations; finally, it utilizes an octree voxel structure to perform weighted fusion and density verification of the data based on angle weights. This scheme effectively solves the edge noise caused by scattering and viewpoint issues during 3D edge scanning, significantly improving the measurement accuracy of edge point clouds.
[0057] Please see Figure 6 The edge point cloud noise filtering device 100 for three-dimensional scanning according to this application includes an acquisition module 10, a classification module 20, a calculation module 30, and a filtering module 40. The acquisition module 10 acquires point cloud data obtained by the three-dimensional scanning device through the acquisition of line structured light projected onto the surface of the object under test. The classification module 20 classifies the points in the point cloud data into boundary points and surface points based on the continuity of the line structured light. The calculation module 30 calculates the geometric feature information of the boundary points using the surface points. The filtering module 40 performs filtering processing on the boundary points based on the geometric feature information.
[0058] In some implementations, the classification module 20 is specifically used to define a predetermined number of points at the beginning and end of the broken section of the line structured light as boundary points, and to define points at the non-broken section of the line structured light as surface points.
[0059] In some implementations, the calculation module 30 is specifically used to calculate the geometric feature information of the boundary points by combining surface points in the current frame and at least one historical frame. The geometric feature information includes at least one of normal information, radial information, and tangential information.
[0060] In some embodiments, the edge point cloud noise filtering device 100 for 3D scanning further includes a rejection module. Before the filtering module 40 filters the boundary points based on geometric feature information, the rejection module is used to reject non-boundary points among the boundary points according to the point cloud distribution characteristics around the boundary points.
[0061] In some implementations, the filtering module 40 is specifically used to: determine the current included angle based on the camera normal information and geometric feature information of the 3D scanning device; and when the current included angle does not meet the preset angle threshold condition, determine the boundary point as noise and filter it out.
[0062] In some embodiments, the edge point cloud noise filtering device 100 for 3D scanning further includes a processing module. After the filtering module 40 filters the boundary points based on geometric feature information, the processing module is used to: map the filtered boundary points to multiple voxel units; perform a position-weighted average calculation on the boundary points in the same voxel unit based on the current included angle to obtain the representative point of the voxel unit; and output the representative point of the voxel unit.
[0063] In some implementations, before the processing module outputs the representative point, the processing module is also used to count the current number of boundary points in the same voxel unit, and when the current number reaches a preset number threshold, it outputs the representative point of the voxel unit.
[0064] It should be noted that the explanation of the edge point cloud noise filtering method for three-dimensional scanning in the foregoing embodiments also applies to the edge point cloud noise filtering device 100 for three-dimensional scanning in the embodiments of this application, and will not be elaborated here.
[0065] Please see Figure 7 The 3D scanning device 200 of this application includes one or more processors 210 and a memory 220, wherein the memory 220 stores a computer program. When the computer program is executed by the processor 210, it implements the edge point cloud noise filtering method of any of the above embodiments.
[0066] For example, when the computer program is executed by the processor 210, the following edge point cloud noise filtering method is implemented: S10: Acquire point cloud data by the 3D scanning device by collecting line structured light projected onto the surface of the object under test; S20: Based on the continuity of line structured light, the points in the point cloud data are divided into boundary points and surface points; S30: Calculate the geometric feature information of boundary points using surface points; S40: Filter boundary points based on geometric feature information.
[0067] It should be noted that the explanation of the edge point cloud noise filtering method for three-dimensional scanning in the foregoing embodiments also applies to the three-dimensional scanning device 200 of the present application embodiments, and will not be elaborated here.
[0068] Please see Figure 8 The computer-readable storage medium 300 of this application embodiment stores a computer program 310 thereon. When the program is executed by the processor 320, it implements the edge point cloud noise filtering method of any of the above embodiments.
[0069] For example, when the program is executed by processor 320, the following edge point cloud noise filtering method is implemented: S10: Acquire point cloud data by the 3D scanning device by collecting line structured light projected onto the surface of the object under test; S20: Based on the continuity of line structured light, the points in the point cloud data are divided into boundary points and surface points; S30: Calculate the geometric feature information of boundary points using surface points; S40: Filter boundary points based on geometric feature information.
[0070] It should be noted that the explanation of the edge point cloud noise filtering method for three-dimensional scanning in the foregoing embodiments also applies to the computer-readable storage medium 300 of the embodiments of this application, and will not be elaborated here.
[0071] In summary, the edge point cloud noise filtering method, edge point cloud noise filtering device 100, 3D scanning device 200, and computer-readable storage medium 300 of the embodiments of this application first divide the points in the point cloud data into boundary points and surface points based on the continuity of line structured light; then, using the surface points, the geometric feature information of the boundary points is calculated; finally, based on the geometric feature information, the boundary points are accurately filtered. In this way, noise points can be effectively and stably removed during the scanning process, greatly improving the accuracy and reliability of the 3D edge scanning results.
[0072] In the description of this specification, the references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., refer to specific features, structures, materials, or characteristics described in connection with that embodiment or example, which are included in at least one embodiment or example of this application. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Moreover, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification, as well as the features of different embodiments or examples.
[0073] Any process or method described in the flowchart or otherwise herein can be understood as representing a module, segment, or portion of code comprising one or more executable instructions for implementing a particular logical function or process, and the scope of the preferred embodiments of this application includes additional implementations in which functions may be performed not in the order shown or discussed, including substantially simultaneously or in reverse order depending on the function involved, as will be understood by those skilled in the art to which embodiments of this application pertain.
[0074] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as a sequenced list of executable instructions for implementing logical functions, and can be embodied in any computer-readable storage medium for use by, or in conjunction with, an instruction execution system, apparatus, or device (such as a computer-based system, a processor-included system, or other system that can fetch and execute instructions from, an instruction execution system, apparatus, or device). For the purposes of this specification, a computer-readable storage medium can be any means that can contain, store, communicate, propagate, or transmit programs for use by, or in conjunction with, an instruction execution system, apparatus, or device. More specific examples (a non-exhaustive list) of computer-readable storage media include: an electrical connection having one or more wires (electronic device), a portable computer disk drive (magnetic device), random access memory (RAM), read-only memory (ROM), erasable and programmable read-only memory (EPROM or flash memory), fiber optic devices, and portable optical disc read-only memory (CDROM). Alternatively, the computer-readable storage medium could be paper or other suitable media on which the program can be printed, since the program can be obtained electronically, for example, by optically scanning the paper or other medium, followed by editing, interpreting, or otherwise processing as necessary, and then stored in a computer memory.
[0075] It should be understood that various parts of this application can be implemented using hardware, software, firmware, or a combination thereof. In the above embodiments, multiple steps or methods can be implemented using software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware, as in another embodiment, it can be implemented using any one or a combination of the following techniques known in the art: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (PGAs), field-programmable gate arrays (FPGAs), etc.
[0076] Those skilled in the art will understand that all or part of the steps of the methods in the above embodiments can be implemented by a program instructing related hardware. The program can be stored in a computer-readable storage medium, and when executed, it includes one or a combination of the steps of the method embodiments. Furthermore, the functional units in the various embodiments of this application can be integrated into a processing module, or each unit can exist physically separately, or two or more units can be integrated into a module. The integrated module can be implemented in hardware or as a software functional module. If the integrated module is implemented as a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium. The storage medium mentioned above can be a read-only memory, a disk, or an optical disk, etc.
[0077] Although embodiments of this application have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting this application. Those skilled in the art can make changes, modifications, substitutions and variations to the above embodiments within the scope of this application, the scope of which is defined by the claims and their equivalents.
Claims
1. A method for filtering noise in edge point clouds during 3D scanning, characterized in that, include: The point cloud data is obtained by a 3D scanning device by collecting line structured light projected onto the surface of the object under test; Based on the continuity of the line structured light, the points in the point cloud data are divided into boundary points and surface points; Using the surface points, calculate the geometric feature information of the boundary points; Based on the geometric feature information, the boundary points are filtered.
2. The edge point cloud noise filtering method according to claim 1, characterized in that, The step of dividing the points in the point cloud data into boundary points and surface points based on the continuity of the line structured light includes: A predetermined number of points at the beginning and end of the line structured light breakage point are defined as the boundary points, and points at the non-breakage point of the line structured light are defined as the surface points.
3. The edge point cloud noise filtering method according to claim 1, characterized in that, The step of calculating the geometric feature information of the boundary points using the surface points includes: The geometric feature information of the boundary points is calculated by combining the surface points in the current frame and at least one historical frame; The geometric feature information includes at least one of normal information, radial information, and tangential information.
4. The edge point cloud noise filtering method according to claim 1, characterized in that, Before filtering the boundary points based on the geometric feature information, the edge point cloud noise filtering method further includes: Based on the point cloud distribution characteristics around the boundary points, non-boundary points among the boundary points are eliminated.
5. The edge point cloud noise filtering method according to claim 1, characterized in that, The filtering process for the boundary points based on the geometric feature information includes: The current included angle is determined based on the camera normal information of the 3D scanning device and the geometric feature information; When the current included angle does not meet the preset angle threshold condition, the boundary point is determined to be a noise point and is filtered out.
6. The edge point cloud noise filtering method according to claim 5, characterized in that, After filtering the boundary points based on the geometric feature information, the edge point cloud noise filtering method further includes: The filtered boundary points are mapped to multiple voxel units; Based on the current included angle, a position-weighted average is calculated for the boundary points in the same voxel unit to obtain the representative point of the voxel unit; Output the representative point of the voxel unit.
7. The edge point cloud noise filtering method according to claim 6, characterized in that, Before outputting the representative point, the edge point cloud noise filtering method further includes: Count the current number of boundary points in the same voxel unit; The output of the representative point of the voxel unit includes: When the current quantity reaches a preset quantity threshold, the representative point of the voxel unit is output.
8. A noise filtering device for edge point clouds in three-dimensional scanning, characterized in that, include: The acquisition module is used to acquire point cloud data obtained by the 3D scanning device through the acquisition of line structured light projected onto the surface of the object under test; A classification module is used to classify points in the point cloud data into boundary points and surface points based on the continuity of the line structured light. The calculation module is used to calculate the geometric feature information of the boundary points using the surface points; The filtering module is used to filter the boundary points based on the geometric feature information.
9. A three-dimensional scanning device, characterized in that, The 3D scanning device includes one or more processors and a memory, the memory storing a computer program, which, when executed by the processor, implements the edge point cloud noise filtering method according to any one of claims 1-7.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the edge point cloud noise filtering method according to any one of claims 1-7.