Point cloud fusion method and apparatus, and 3D printer

By fusion of the point cloud data acquired by the contour instrument during 3D printing with local point cloud under different laser parameters, the problem of point cloud missing is solved and the integrity and quality of the data is improved.

WO2025025479A1PCT designated stage expired Publication Date: 2025-02-06SHENZHEN ORBBEC CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2023/138941
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-08-02
Filing Date
2023-12-14
Publication Date
2025-02-06

AI Technical Summary

Technical Problem

During 3D printing, the point cloud data obtained by the contourizer may be missing, especially on hot beds with low reflectivity or reflective materials, resulting in inevitable errors or errors during subsequent printing.

Method used

By scanning the same position of the object to be tested with different laser parameters, different local point clouds are obtained, and the position information of each point is compared to obtain the fused local point cloud. This method can effectively deal with the problem of missing point clouds and ensure data integrity.

Benefits of technology

By fusing point cloud data under different laser parameters, point cloud data that has been dark and bright can be scanned at the same location, avoiding errors or errors caused by point cloud loss for subsequent use, thereby improving point cloud data quality.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2023138941_06022025_PF_FP_ABST
    Figure CN2023138941_06022025_PF_FP_ABST
Patent Text Reader

Abstract

Embodiments of the present application provide a point cloud fusion method and apparatus, and a 3D printer, applied to 3D printing scenarios. The method comprises: acquiring a first local point cloud and a second local point cloud, wherein the first local point cloud and the second local point cloud are obtained by scanning a first location of a measured object by a laser profilometer by using different laser parameters, the first local point cloud comprises N first points, the second local point cloud comprises M second points, and N and M are positive integers; and on the basis of a comparison result of location information of a first point n and a second point m, obtaining a fused local point cloud corresponding to the first location, wherein 1≤n≤N, 1≤m≤M, and n and m are positive integers. In the present application, the point cloud effects of local point clouds under different laser parameters are different, and complementation processing is carried out on the local point clouds, such that the problem of point cloud loss can be effectively solved.
Need to check novelty before this filing date? Find Prior Art

Description

Point cloud fusion method, device and 3D printer

[0001] This application claims priority to the Chinese patent application filed with the China Patent Office on August 2, 2023, with application number 202310971213.8 and titled “Point Cloud Fusion Method, Device and 3D Printer,” the entire contents of which are incorporated by reference into this application. Technical Field

[0002] The present application relates to the field of image processing, and more specifically, to a point cloud fusion method, device and 3D printer. Background Art

[0003] With the development of 3D printing technology, it is possible to use a profilometer to obtain scan data of the measured object, and then use the print head to perform 3D printing. In this process, the 3D printer's profilometer can provide high-precision scan data during the first layer printing or leveling process, thus providing feedback on the current quality and status of the 3D printer.

[0004] However, during the use of the profilometer, if you encounter a hot bed and printing material with low reflectivity, or a hot bed with reflective material, the point cloud data obtained by the profilometer may be missing. If the missing point cloud data is used, it will cause inevitable errors or mistakes in the subsequent printing process.

[0005] Therefore, how to reduce the impact of missing point cloud data is an urgent problem to be solved.

[0006] Summary of the Invention

[0007] The embodiments of the present application provide a point cloud fusion method, device and 3D printer, which can reduce the impact of the lack of point cloud data.

[0008] In a first aspect, a point cloud fusion method is provided, which is applied to a 3D printer including a laser profiler and a processing device, the method including: obtaining a first local point cloud and a second local point cloud; wherein the first local point cloud and the second local point cloud are obtained by scanning a first position of a measured object by the laser profiler using different laser parameters, the first local point cloud includes N first points, and the second local point cloud includes M second points, where N and M are positive integers; based on a comparison result of position information of the nth first point and the mth second point, a fused local point cloud corresponding to the first position is obtained, where 1≤n≤N, 1≤m≤M, and n and m are positive integers.

[0009] Through the technical solution of the embodiment of the present application, different local point clouds are obtained by scanning the same position of the object under test with different laser parameters, and the fused local point cloud is obtained based on the comparison results of the position information of each point in the different local point clouds. In this way, the point cloud effects of the local point clouds under different laser parameters are different, and their complementary processing can effectively deal with the problem of missing point clouds. For example, under different exposure times, the missing part of the point cloud at the same position of the object under test is different. Through the above fusion method, it can be ensured that the point cloud data of the dark and bright areas scanned at different exposure times at the same position can be complete, avoiding errors or mistakes caused by the missing point cloud in subsequent use, thereby improving the quality of the scanned point cloud data.

[0010] In a second aspect, a point cloud fusion device is provided, which includes an acquisition unit and a processing unit. The acquisition unit is used to acquire a first local point cloud and a second local point cloud, wherein the first local point cloud and the second local point cloud are obtained by scanning a first position of the object to be measured by a laser profiler with different laser parameters, the first local point cloud includes N first points, and the second local point cloud includes M second points, where N and M are positive integers; the processing unit is used to obtain a fused local point cloud corresponding to the first position based on a comparison result of position information of the nth first point and the mth second point, where 1≤n≤N, 1≤m≤M, and n and m are positive integers.

[0011] The technical effects corresponding to the device involved in the second aspect are similar to those of the first aspect and will not be elaborated here.

[0012] In a third aspect, a point cloud fusion device is provided, comprising: a processor and a memory, the memory being used to store a computer program, and the processor being used to call and run the computer program stored in the memory to execute: a method as in the first aspect or any possible implementation of the first aspect.

[0013] In a fourth aspect, a 3D printer is provided, comprising a heated bed, a print head, a laser profiler, and a processing device, wherein: the print head is used to print a print layer of a target object on the heated bed; the laser profiler is used to collect a first local point cloud and a second local point cloud of the heated bed or the printed layer under different laser parameters; the processing device is used to control the print head and the laser profiler, and process the first local point cloud and the second local point cloud according to the method of the first aspect or any possible implementation method of the first aspect to obtain a fused point cloud of the heated bed or the printed layer.

[0014] In a fifth aspect, a computer-readable storage medium is provided for storing a computer program, wherein the computer program enables a computer to execute: a method as in the first aspect or any possible implementation of the first aspect. BRIEF DESCRIPTION OF THE DRAWINGS

[0015] FIG1 is a schematic diagram of the working principle of a laser profiler provided in an embodiment of the present application;

[0016] FIG2 is a schematic diagram of a sub-pixel provided in an embodiment of the present application;

[0017] FIG3 is a schematic structural diagram of a 3D printer provided in an embodiment of the present application;

[0018] FIG4 is a schematic diagram of a point cloud missing provided by an embodiment of the present application;

[0019] FIG5 is a schematic diagram of a flow chart of a point cloud fusion method provided in an embodiment of the present application;

[0020] FIG6 is a flow chart of another point cloud fusion method provided in an embodiment of the present application;

[0021] FIG7 is a schematic diagram of a scanning mode provided in an embodiment of the present application;

[0022] FIG8 is a schematic diagram of area division of another scanning mode provided in an embodiment of the present application;

[0023] FIG9 is a schematic diagram of a scanning method corresponding to the area division of FIG8 provided in an embodiment of the present application;

[0024] FIG10 is a flow chart of another point cloud fusion method provided in an embodiment of the present application;

[0025] FIG11 is a schematic diagram of the effect of a fused local point cloud provided in an embodiment of the present application;

[0026] FIG12 is a schematic diagram of a point cloud fusion device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0027] The technical solutions in the embodiments of the present application will be described below with reference to the accompanying drawings.

[0028] To facilitate understanding of the embodiments of the present application, the following points are explained:

[0029] First, in this application, unless otherwise specified or there is a logical conflict, the terms and / or descriptions between different embodiments are consistent and can be referenced by each other. The technical features in different embodiments can be combined to form new embodiments based on their internal logical relationships.

[0030] Second, in this application, "at least one" means one or more, and "more" means two or more. "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone, where A and B can be singular or plural. In the text description of this application, the character " / " generally indicates that the previous and next associated objects are in an "or" relationship. "At least one of the following" or similar expressions refers to any combination of these items, including any combination of single or plural items. For example, at least one of a, b and c can mean: a, or b, or c, or a and b, or a and c, or b and c, or a, b and c. Wherein a, b and c can be single or multiple, respectively.

[0031] Third, in this application, "first", "second" and various numerical numbers (for example, #1, #2, etc.) indicate distinctions made for the convenience of description and are not used to limit the scope of the embodiments of this application. For example, different local point clouds are distinguished, rather than used to describe a specific order or sequence. It should be understood that the objects described in this way can be interchanged where appropriate so as to be able to describe schemes other than the embodiments of this application. In addition, "first" and "second" are not used to limit the number of objects described in the embodiments of this application.

[0032] Fourth, in this application, expressions such as "when," "under the circumstances of," and "if" all imply that a corresponding action will be taken under certain objective circumstances. They do not limit the timeframe, do not require a judgment action to be taken when the action is taken, and do not imply any other limitations. Furthermore, the judgment action following these conditional conjunctions does not imply that the judgment action following the conditional conjunctions is the only condition for achieving the result; additional conditions may also be included to achieve the result.

[0033] Fifth, in this application, the terms "comprise" and "have" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, product or apparatus comprising a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to these processes, methods, products or apparatuses.

[0034] To facilitate understanding of the following solutions, the technical terms involved in the embodiments of this application are briefly explained below.

[0035] 1. Laser profiler

[0036] A laser profiler consists of a transmitter and a receiver. The transmitter emits laser light, which reflects off the surface of the object being measured. The reflected light is then picked up by the receiver, which can be an image acquisition device, such as a complementary metal-oxide-semiconductor (CMOS) image sensor.

[0037] FIG1 is a schematic diagram of the working principle of a laser profiler provided in an embodiment of the present application. The laser profiler includes a transmitting end 110 and a receiving end 120. The optical axes of the transmitting end 110 and the receiving end 120 can be relatively parallel or at a certain angle. The embodiment of the present application does not limit the number of transmitting ends and receiving ends in the laser profiler, and the embodiment of the present application does not limit the orientation of the receiving end and the transmitting end. The laser emitted by the transmitting end 110 can be a single line or multiple lines. The example shown in FIG1 is that the transmitting end 110 and the receiving end 120 are at a certain angle and are a single-line laser.

[0038] As shown in Figure 1, transmitter 110 emits a single laser line, and receiver 120 receives the reflected light from the single laser line. The point cloud acquired by receiver 120 is a point cloud that varies in the horizontal (x-direction) or vertical (y-direction). When the transmitter shown in Figure 1 emits laser light, the depth variation of the object under test varies in the vertical direction, as shown in Figure 1. By emitting multiple laser beams and acquiring multiple images, as shown in Figure 1, point cloud data of the object under test can be obtained.

[0039] It should be noted that this application uses a laser profiler that obtains point cloud data of the object being measured based on the principle of line structured light as an example. In other embodiments, the laser profiler can also be a single-point rangefinder based on triangulation or single-point direct time-of-flight, a multi-line rangefinder, a speckle structured light / binocular camera, an indirect time-of-flight camera based on flood light / speckle / line array, and other devices that can obtain 3D information, all of which fall within the scope of protection of this application.

[0040] 2. Sub-pixel

[0041] Sub-pixels are the subdivisions between two adjacent pixels. Figure 2 is a schematic diagram of a sub-pixel provided in an embodiment of the present application. As shown in Figure 2, the large square represents a pixel, and the pixel can be divided into multiple regions, each of which is a sub-pixel.

[0042] The point cloud fusion method, device, and 3D printer proposed in the embodiments of this application can be applied to 3D printing scenarios. To better understand the solution of the embodiments of this application, the structure of a possible 3D printer in the embodiments of this application is briefly introduced below with reference to FIG3.

[0043] FIG3 is a schematic diagram of the structure of a 3D printer provided in an embodiment of the present application. The 3D printer includes a heated bed 310, a calibration plate 320, a print head 330, a laser profiler 340, and a processing device (not shown in FIG3 ). The laser profiler 340 may be as shown in FIG1 . The print head 330 is used to obtain a printed layer on the heated bed 310. The laser profiler 340 may scan the heated bed or printed layer according to a preset scanning trajectory to obtain three-dimensional point cloud information of the surface contour of the heated bed or printed layer. The processing device is used to control the laser profiler 340 and to perform fusion processing on the scanned point cloud obtained by the laser profiler 340. The calibration plate 320 is used to obtain the internal and external parameters of the receiving end 120. The internal parameters of the receiving end 120 can be used to correct the lens distortion of the laser profiler, and the external parameters of the receiving end 120 can be a rotation and translation matrix for converting the laser profiler coordinate system to the world coordinate system.

[0044] For example, before the laser profiler works, a calibration image including a calibration plate parallel to the hot bed is collected, and the internal and external parameters of the receiving end are obtained according to a preset calibration algorithm, wherein the preset calibration may include Zhang Zhengyou calibration algorithm, etc.

[0045] As a possible implementation method, the laser profiler 340 is fixed together with the print head 330. For example, it can be installed next to the print head (as shown in Figure 1), or it can be installed inside the print head, and the laser profiler 340 moves with the print head 330. Once the installation is completed, the relative posture of the laser profiler 340 and the print head 330 is fixed, that is, the Z-direction distance between the two is fixed (here the Z-direction is the direction of the printer's Z-axis drive shaft). It is acceptable for the module to be installed tilted or the installation height of different machines to be inconsistent. This installation error can be corrected by the calibration plate 320 without affecting the function. The hot bed 310 and the calibration plate 320 are relatively parallel.

[0046] As a possible implementation, the processing device can be a circuit with the ability to read and execute instructions, such as a central processing unit (CPU), a microprocessor, a graphics processing unit (GPU) (which can be understood as a microprocessor), or a digital signal processor (DSP). In another implementation, the processing device can implement certain functions through the logical relationship of a hardware circuit, and the logical relationship of the hardware circuit is fixed or reconfigurable. For example, the processing device is a hardware circuit implemented by an application-specific integrated circuit (ASIC) or a programmable logic device (PLD), such as a field programmable gate array (FPGA). In a reconfigurable hardware circuit, the process of the processing device loading a configuration file and implementing the hardware circuit configuration can be understood as the process of the processing device loading instructions to implement the functions of some or all of the above units. In addition, it can also be a hardware circuit designed for artificial intelligence, which can be understood as an ASIC, such as a neural network processing unit (NPU), a tensor processing unit (TPU), a deep learning processing unit (DPU), etc. In addition, the processing device may further include a memory, and the memory is used to store instructions. The processing device can call the instructions in the memory and execute the instructions to implement corresponding functions.

[0047] The processing device of the 3D printer can subsequently perform hot bed leveling, flow calibration, print layer printing quality monitoring, etc. based on the global point cloud obtained by the point cloud fusion method of the embodiment of the present application.

[0048] As a possible implementation, the laser profiler 340 may further include a processor configured to process the image captured by the receiving end to obtain a point cloud of the measured object in the laser profiler coordinate system. The processor may include independent dedicated circuits, such as a dedicated system-on-chip (SOC) chip, FPGA chip, or ASIC chip composed of a CPU, memory, and bus. The processor may also include general-purpose processing circuits. For example, when the laser profiler 340 is integrated into a 3D printer, the circuitry of the processing device in the 3D printer may serve as at least a portion of the processor.

[0049] At present, during the printing process of a 3D printer, the printing effect of the first layer or the leveling effect of the leveling process has a great influence on the printing quality of the subsequent target object. However, if a hot bed and printing material with low reflectivity are encountered during printing the first layer, leveling or calibration, or a hot bed with reflective material is encountered, the point cloud data obtained by the profiler will be missing. Figure 4 is a schematic diagram of a point cloud missing provided by an embodiment of the present application. The point cloud collected in Figure 4 is obtained by scanning the laser profiler along the Y direction. That is, the point cloud data at the same position shows a change in the Z direction (depth) along the X direction. For example, as shown in Figure 4, a point cloud with a low exposure time may have a point cloud missing in a dark place, while a point cloud with a high exposure time may have a point cloud missing in a bright place. If point cloud missing data is used, it will cause inevitable errors or mistakes in the subsequent printing process.

[0050] To solve the above problems, the present invention provides a point cloud fusion method, device, and 3D printer, which will be described in detail below with reference to Figures 5 to 12.

[0051] FIG5 is a flow chart of a point cloud fusion method provided in an embodiment of the present application.

[0052] S510, obtaining a first local point cloud and a second local point cloud, the first local point cloud and the second local point cloud are obtained by scanning a first position of the object to be measured by a laser profiler using different laser parameters, the first local point cloud includes N first points, the second local point cloud includes M second points, and N and M are positive integers.

[0053] It should be understood that the first local point cloud and the second local point cloud are data sets of multiple points in a certain coordinate system, each of which contains rich information, including three-dimensional coordinates, color, classification value, intensity value, and time. The certain coordinate system can be a laser profiler coordinate system or a world coordinate system, which is not limited in this embodiment of the application.

[0054] It should also be understood that the lasers with different parameters can be two lasers with different exposure times, for example, a laser with a high exposure time and a laser with a low exposure time. The two lasers with different parameters can also be light sources with two different wavelengths, for example, a long wavelength and a short wavelength. The number of specific laser parameters can also be three or more.

[0055] For example, the first partial point cloud may be obtained at a first location using a laser with a high exposure time, while the second partial point cloud may be obtained at the first location using a laser with a low exposure time. For another example, the first partial point cloud may be obtained at a first location using a laser with a long wavelength, while the second partial point cloud may be obtained at the first location using a laser with a short wavelength. The number of first points in the first partial point cloud and the number of second points in the second partial point cloud may be the same or different.

[0056] It should also be understood that when three or more frames of point cloud data are collected at the first position by the laser profiler, the first local point cloud can be a local point cloud after the fusion of any two frames of point cloud data, and the second local point cloud can be a local point cloud that has not yet been fused.

[0057] S520 , obtaining a fused local point cloud corresponding to the first position based on a comparison result of the position information of the nth first point and the mth second point, where 1≤n≤N, 1≤m≤M, and n and m are positive integers.

[0058] In the above technical solution, different local point clouds are obtained by scanning the same position of the object under test using different laser parameters, and a fused local point cloud is obtained based on the comparison results of the position information of each point in the different local point clouds. In this way, the point cloud effects of the local point clouds under different laser parameters are different, and their complementary processing can effectively address the problem of missing point clouds. For example, under different exposure times, the missing parts of the point cloud at the same position of the object under test are different. Through the above fusion method, it can be ensured that the point cloud data of the dark and bright areas scanned at different exposure times at the same position can be complete, avoiding errors or mistakes caused by missing point clouds in subsequent use, thereby improving the quality of the scanned point cloud data.

[0059] As one possible implementation, a determination is made as to whether the difference between the horizontal coordinates of the nth first point and the mth second point is less than or equal to a first threshold, and a fusion method for the nth first point and the mth second point is determined. Based on the fusion method, a third point is obtained, and the fused local point cloud includes the third point. It should be understood that if the difference between the horizontal coordinates of two point clouds is within the first threshold, it means that the two point clouds are relatively close in the horizontal direction (X direction).

[0060] In the above technical solution, by comparing the horizontal coordinates of the first point and the second point under different laser parameters, the relative positions of the two point clouds can be determined, which helps to determine a more appropriate fusion method and thus improve the reliability of the fused point cloud.

[0061] As one possible implementation, when the difference between the horizontal coordinates of the nth first point and the mth second point is less than or equal to a first threshold, the fusion method is determined by determining whether the difference between the vertical coordinates of the nth first point and the mth second point is less than or equal to a second threshold. That is, when two point clouds are relatively close in the horizontal direction, the fusion method of the two point clouds is determined by whether the difference between their vertical coordinates is within the second threshold.

[0062] In the above technical solution, when the lateral positions of the first point and the second point are relatively close, by comparing the vertical coordinates of the first point and the second point under different laser parameters, it is possible to determine whether there is any measurement inaccuracy in the point cloud under high exposure time, thereby further determining a more appropriate fusion method, thereby improving the reliability of the fused point cloud.

[0063] As a possible implementation, when the difference between the vertical coordinates of the nth first point and the mth second point is less than or equal to a second threshold, the position information of the nth first point and the mth second point is averaged to obtain a third point. That is, when the two point clouds are relatively close in both the horizontal direction (e.g., X direction) and the vertical direction (e.g., Z direction), the two point cloud data at the first position obtained under different laser parameters are relatively close, and the fused local point cloud can be obtained by averaging.

[0064] In the above technical solution, when the first point and the second point are relatively close in both the horizontal and vertical directions, it means that the point cloud data collected at the first position under different laser parameters are relatively close. By averaging, the reliability of the fused point cloud can be improved.

[0065] As a possible implementation method, when the difference between the vertical coordinates of the nth first point and the mth second point is greater than a second threshold value, the average value of the horizontal coordinate data of the nth first point and the mth second point, and the vertical coordinate data corresponding to the nth first point are used as the third point, wherein the exposure time corresponding to the nth first point is less than the exposure time corresponding to the mth second point, or the light intensity response of the light source wavelength corresponding to the nth first point is less than the light intensity response of the light source wavelength corresponding to the mth second point.

[0066] That is, when two point clouds are relatively close in the horizontal direction (for example, the X direction), but the data gap in the vertical direction (for example, the Z direction) is relatively large, due to different laser parameters, the results of the vertical coordinate (for example, the Z direction) may be inaccurate. For example, for the reflected light obtained by the laser with a longer exposure time, the receiving end will receive more light, and the pixel value will be relatively too high; or based on the response ability of the receiving end to light sources of different wavelengths (that is, the spectral response), for the light source wavelength with a larger light intensity response, that is, the light source wavelength matches the spectral response of the receiving end, under the same exposure time, the receiving end will more effectively receive and sense the corresponding light beam, thereby generating a higher pixel value. Therefore, the present application uses the vertical coordinate of the point cloud with a smaller exposure time or a smaller light intensity response to the light source wavelength in the two point clouds as the vertical coordinate of the third point (that is, the fused point cloud), which can improve the accuracy of the fused point cloud.

[0067] In the above technical solution, when the first point and the second point are relatively close in the horizontal direction but differ greatly in the vertical direction, the horizontal coordinate of the fused point cloud is determined by averaging, and the vertical coordinate of the point cloud with a smaller exposure time or a smaller light intensity response to the wavelength of the light source is used as the vertical coordinate of the fused point cloud. The reliability of the horizontal coordinate and the influence of different laser parameters on the vertical coordinate are comprehensively considered, thereby improving the reliability of the fused point cloud.

[0068] As a possible implementation, when the difference between the horizontal coordinates of the nth first point and the mth second point is greater than a first threshold, the point cloud with the smaller horizontal coordinate between the nth first point and the mth second point is determined as the third point. In other words, when the two point clouds are relatively far apart laterally, this means that a point cloud is missing at the location corresponding to the larger horizontal coordinate value in the local point cloud obtained under one of the laser parameters.

[0069] In the above technical solution, the point cloud with the smaller horizontal coordinate in the two point clouds is used as the third point, so that the fused point cloud is relatively complete and data errors caused by missing point clouds are avoided.

[0070] As a possible implementation, when the horizontal coordinate of the nth first point is small, a fourth point is determined based on the comparison result of the position information of the n+1th first point and the mth second point, and the fused local point cloud includes the fourth point. Alternatively, when the horizontal coordinate of the mth second point is small, a fifth point is determined based on the comparison result of the position information of the nth first point and the m+1th second point, and the fused local point cloud includes the fifth point. That is, after the point cloud with the smaller horizontal coordinate is determined as part of the fused local point cloud, the point cloud with the smaller horizontal coordinate index increased by 1 is compared with the point cloud with the larger horizontal coordinate, and the next fused point cloud is determined based on the comparison result.

[0071] In the above technical solution, only the point cloud with a smaller horizontal coordinate is indexed and updated, and the point cloud data collected at the same position under different laser parameters are compared one by one to avoid omissions in the comparison process, so that the fused point cloud is relatively complete and avoids data errors caused by missing point clouds.

[0072] As a possible implementation, when the current first point is the Nth first point, the fused local point cloud includes the remaining point cloud in the second local point cloud, where the current first point is the nth first point or the n+1th first point. Alternatively, when the current second point is the Mth second point, the fused local point cloud includes the remaining point cloud in the first local point cloud, where the current second point is the mth second point or the m+1th second point.

[0073] That is, after the point cloud fusion process, when any frame of local point cloud in the multi-frame point cloud data has been compared to the last point cloud, if there are remaining point clouds in another frame of local point cloud, the remaining point clouds of the other frame of local point cloud will be used as the fused point cloud.

[0074] In the above technical solution, since the number of point cloud data collected under different laser parameters may be different and a first point may be compared with multiple second points during the comparison process, the remaining point cloud of a local point cloud is used as the fused point cloud, which can ensure that the fused point cloud is relatively complete and avoid data errors caused by missing point clouds.

[0075] This step will be described in detail below in S602 of FIG. 6 in conjunction with FIG. 10 and FIG. 11 .

[0076] FIG6 is a flow chart of another point cloud fusion method provided in an embodiment of the present application.

[0077] S601: Control a laser profile to scan the object under test using two lasers with different parameters according to a preset scanning trajectory, and obtain at least two frames of local point clouds obtained under the lasers with different parameters corresponding to each position of the object under test, wherein the at least two frames of local point clouds include a first local point cloud and a second local point cloud. The first local point cloud includes N first points, and the second local point cloud includes M second points, where N and M are positive integers.

[0078] It should also be understood that the at least two frames of local point clouds used for subsequent fusion are at least two frames of local point clouds under two different laser parameters at the same location. The local point clouds used for subsequent fusion in this application can be two frames, or three frames, or more than two frames. The subsequent fusion process in this embodiment of the application will be described in detail using the first and second local point clouds as examples. In this embodiment of the application, "first" and "second" do not limit the order in which the local point clouds are acquired.

[0079] As a possible implementation, the laser profiler can be a single-line laser scanner or a surface laser scanner, i.e., a multi-line laser scanner. Furthermore, the at least two frames of local point clouds can be point cloud data in the laser profiler coordinate system or in the world coordinate system, although this embodiment of the present application does not impose any limitations on this.

[0080] The following will first use single-line laser scanning as an example to illustrate how to obtain point cloud data in the laser profiler system and the world coordinate system; then use area laser scanning as an example to illustrate how to obtain point cloud data in the laser profiler coordinate system and the world coordinate system.

[0081] For the laser type of line laser scanning, it includes the following two cases:

[0082] In the first scenario, at least two frames of local point clouds can be point cloud data in the laser profiler coordinate system. Specifically, based on the principle of line laser scanning, a single laser line is projected onto the object being measured from the transmitter. The center line of the single laser line in the image captured by the receiver is extracted. Subsequently, the point cloud data in the laser profiler coordinate system is obtained using the light plane equation.

[0083] For example, the transmitting end of a laser profiler emits a line of laser light toward the object being measured. This line of laser light forms a light knife plane, and each light knife plane corresponds to a light knife plane equation, which can be obtained through calibration. The receiving end of the laser profiler collects the light beam reflected by the object being measured, forming a line image on the imaging plane. Any point on the line laser in the line image is extracted and a ray is formed from the optical center of the receiving end and any point on the line laser. The intersection of this ray and the light knife plane is calculated to determine the three-dimensional coordinates of the point, resulting in a point cloud of the object being measured in the laser profiler coordinate system.

[0084] The accuracy of the point cloud obtained above can be further improved. As a possible implementation method, the first local point cloud and the second local point cloud are obtained by the center point of the center line of the line laser, where the center point is a sub-pixel point. Specifically, the center line of the line laser in the line image is extracted using a center line extraction algorithm. Starting from the optical center of the receiving end, a ray is formed with any center point of the line laser. The intersection of this ray and the light knife plane is obtained to determine the three-dimensional coordinates of the corresponding center point, thereby obtaining the point cloud of the measured object in the laser profiler coordinate system.

[0085] In the above technical solution, compared to directly obtaining a local point cloud of the measured object from any point on the line laser, this embodiment calculates the center line of the line laser to obtain the corresponding center point with sub-pixel coordinates, as shown in Figure 2. The point cloud data obtained from the sub-pixel center point can improve the accuracy of the point cloud data. For example, if the pixel coordinates of any point on the line laser are (1,1), the sub-pixel coordinates based on the center line of the line laser can be (0.5,0.5), thus improving the accuracy of the local point cloud obtained based on the center line of the line laser.

[0086] Furthermore, the first and second partial point clouds can be filtered to obtain filtered first and second partial point clouds. Compared to obtaining a partial point cloud of the measured object directly from any point on the line laser, filtering can improve the accuracy of the point cloud.

[0087] In the second case, the local point cloud of at least two frames can also be point cloud data in world coordinates. Specifically, the point cloud in the laser profiler coordinate system can be converted to the world coordinate system through the calibrated external parameters of the receiving end to obtain point cloud data in the world coordinate system. Among them, the origin of the world coordinate system can be defined as one of the corner points on the hot bed, and the X-axis and Y-axis are the sides intersecting with the corner point. It should be noted that the world coordinate system can also be constructed in other ways, and the embodiments of the present application are not limited thereto.

[0088] For the scanning type of surface laser, when the laser profiler adopts surface scanning, if the light beam emitted by the transmitting end is a multi-line beam, the receiving end will collect the multi-line beam reflected back by the object to be measured to obtain a multi-line image; however, the ray formed by any point on any line in the multi-line image and the optical center of the receiving end will intersect with the light knife plane corresponding to the multi-line beam emitted by the transmitting end to obtain multiple intersection points, resulting in the inability to uniquely determine the light plane equation corresponding to the current line in the multi-line image.

[0089] In order to uniquely determine the light knife plane equation corresponding to the current line beam in the multi-line image, as a possible implementation method, each line beam in the multi-line beam emitted by the transmitting end is encoded, such as using a coding pattern to uniquely encode multiple line beams in the multi-line pattern or using the inherent properties of the multi-line beam (such as color or brightness) to encode each line beam. After the receiving end collects the reflected light beam and generates a coded multi-line image, the coded multi-line image is subsequently decoded to identify each line beam, thereby uniquely determining the light knife plane equation corresponding to the current line beam.

[0090] For the scanning type of surface scanning, as a possible implementation method, the transmitting end can also emit a structured light pattern to the object to be measured, and the receiving end receives the light beam reflected back by the object to be measured to generate a structured light image. The structured light image is processed based on the structured light principle and combined with the internal and external parameters of the laser profiler to obtain the point cloud data of the object to be measured in the laser profiler coordinate system and the point cloud data in the world coordinate system.

[0091] As a possible implementation, the object to be measured can be a target object such as a hot bed or a printed layer, which is not limited in the present embodiment. The following mainly uses the hot bed or the printed layer as an example for detailed description.

[0092] As a possible implementation, the preset scanning trajectory can be one of the following modes: fine scanning mode, sparse scanning mode, and sparse fine scanning mode. The preset scanning trajectory can be preset in the processing device of the 3D printer, and the processing device of the 3D printer controls the laser profiler to move according to the preset scanning trajectory. The specific form of the preset scanning trajectory is not limited in the embodiment of the present application. The following will describe the three scanning modes in detail:

[0093] First, sparse scanning mode.

[0094] In some implementations, the hot bed or the printing layer surface is divided into multiple areas, and a point cloud at the center of each area is obtained by moving the hot bed or moving the nozzle (i.e., moving the laser profiler), and the local point cloud of the area includes the point cloud.

[0095] Specifically, when the laser profiler obtains the point cloud at the center of each area, it is necessary to drive the laser profiler to scan the hot bed through the drive shaft on the 3D printer. Therefore, each frame of the point cloud can be bound to the current position information based on the real-time coordinates (x, y) of the current drive shaft, thereby obtaining a local point cloud corresponding to each area, so that it can be subsequently fused to obtain a global point cloud. In other embodiments, multiple frames of point clouds with the same laser parameters at the center of each area can also be obtained, and after processing the multiple frames of point clouds, such as filtering out flying points and outliers, the multiple frames of point clouds are averaged to obtain the point cloud corresponding to the area, so that they can be subsequently fused to obtain a global point cloud.

[0096] In the above technical solution, compared with measuring each area once, the point cloud obtained after repeated measurement processing can improve the accuracy of the obtained point cloud.

[0097] In some implementations, a laser profiler can be controlled to perform a global sparse scan of the hot bed or print layer surface to obtain a multi-frame sparse point cloud of the hot bed or print layer surface, that is, the spacing between the multiple areas divided into the hot bed or print layer surface is set to be larger, so that the number of areas divided into the hot bed or print layer surface is smaller.

[0098] For example, Figure 7 is a schematic diagram of a scanning mode provided by an embodiment of the present application. As shown in Figure 7, the heated bed or print layer surface is divided into 5*5 identical areas, of which a small number of sparse point clouds can be used for subsequent point cloud fusion and global point cloud stitching.

[0099] In the above technical solution, a smaller number of area divisions can also shorten the time for the laser profiler to obtain local point clouds, that is, the efficiency of leveling the hot bed is improved by sparsely scanning the entire hot bed or printing layer surface through the laser profiler, thereby achieving the purpose of saving printing time.

[0100] Second, fine scanning mode.

[0101] In some implementations, a laser profiler can be controlled to perform a global fine scan of the hot bed or the print layer surface to obtain a multi-frame dense point cloud of the hot bed. That is, the spacing between the multiple areas into which the hot bed or the print layer surface is divided is set to be smaller, so that the number of areas into which the hot bed or the print layer surface is divided is larger, thereby using the laser profiler to perform a fine scan of the hot bed or the print layer surface to obtain a larger number of local dense point clouds.

[0102] For example, Figure 8 is a schematic diagram of the area division of another scanning mode provided in an embodiment of the present application. As shown in Figure 8, the hot bed or print layer is divided into a schematic diagram of more subdivided areas, wherein the interval between each area can be set to 1mm, that is, the laser profiler obtains a local point cloud every time it moves 1mm. It can be understood that since the measurement beam emitted by the laser profiler can cover multiple areas at the same time, that is, the width of a single measurement is large, usually reaching tens or even hundreds of millimeters, the laser profiler will obtain local point clouds corresponding to multiple areas every time it moves 1mm. Figure 9 is a schematic diagram of a scanning method corresponding to the area division of Figure 8 provided in an embodiment of the present application. As shown in Figure 9, the laser profiler can be moved according to the "bow" pattern shown in Figure 8 to obtain dense point clouds corresponding to each area of ​​the hot bed.

[0103] In the above technical solution, the use of a "bow"-shaped pattern allows the laser profiler to move to the area at the edge of the hot bed without having to stop moving, thereby achieving the effect of continuous moving scanning. Compared with always moving the laser profiler in the same direction, the use of a "bow"-shaped pattern can save time in obtaining the point cloud of the hot bed or print layer.

[0104] Third, sparse fine scanning mode.

[0105] In some implementations, a global sparse scan of the heated bed or printed layer is first performed, followed by a local fine scan of a portion of the heated bed or printed layer. Specifically, a sparse scan of the entire surface of the heated bed to be tested can be performed to obtain multiple frames of sparse point clouds. Based on these multiple frames of sparse point clouds, the locations of regions with concave-convex features on the heated bed or printed layer are determined. Local fine scans of these regions with concave-convex features are then performed to obtain multiple frames of local dense point clouds. The sparse point clouds and dense point clouds can then be fused to obtain a global point cloud of the heated bed or printed layer.

[0106] In the above technical solution, compared with global fine scanning, by fusing global sparse scanning and local fine scanning, the number of point clouds obtained can be reduced, the global fine scanning process can be simplified, and the processing speed of the laser profiler can be improved.

[0107] It should be understood that the above scanning method is only for the local point cloud obtained under the same laser parameters. Under different laser parameters, the first local point cloud and the second local point cloud at the same position can be obtained by the following method:

[0108] As a possible implementation method, a global scan is performed on the surface of the hot bed or the printed layer under a laser with a high exposure time to obtain first global data; a global scan is performed on the surface of the hot bed or the printed layer under a laser with a low exposure time to obtain second global data; and partial point clouds in the first global data and the second global data at the same position are determined as first local point clouds and second local point clouds.

[0109] As another possible implementation method, under a laser with a high exposure time, a first position of the hot bed or the printed layer surface is scanned to obtain a first local point cloud; under a laser with a low exposure time, the first position of the hot bed or the printed layer surface is scanned to obtain a second local point cloud.

[0110] Optionally, before scanning to obtain the first and second local point clouds, the dark or bright areas of the object under test can be determined. For the dark or bright areas, different local point clouds can be obtained at the same location using different laser parameters using the above method, and a fused local point cloud can be obtained through subsequent fusion. For areas without high contrast, a laser with a medium exposure time can be used to scan and obtain a local point cloud for subsequent global stitching, without the need for local fusion.

[0111] In the above technical solution, the number of fused point clouds can be reduced, thereby alleviating storage pressure and reducing the overall processing time.

[0112] It should also be understood that the embodiments of the present application do not limit the direction of movement of the line laser. For example, scanning can be performed in the longitudinal direction (Y direction), or in the transverse direction (X direction), or in an oblique direction. The following example uses scanning in the longitudinal direction (Y direction). That is, the point cloud data obtained at the same position is distributed along the X and Z directions, as shown in Figure 4.

[0113] S602, according to the comparison result of the position information of the nth first point and the mth second point, obtain the fused local point cloud corresponding to the first position, 1≤n≤N, 1≤m≤M, n and m are positive integers.

[0114] The first position may be understood as any area scanned by the scanning mode in step S601, or the first position may also include ranges corresponding to multiple areas in the above scanning mode.

[0115] It should be understood that the N first points in the first partial point cloud can also be referred to as a reference point cloud, and the M second points in the second partial point cloud can also be referred to as a source point cloud. The embodiments of the present application do not limit the laser parameters corresponding to the reference point cloud and the source point cloud.

[0116] FIG10 is a flow chart of another point cloud fusion method provided in an embodiment of the present application.

[0117] S1001: Determine the nth first point and the mth second point as the current first point and the current second point respectively.

[0118] Exemplarily, in the initial fusion process, the first first point and the second second point are determined as the current first point and the current second point, respectively.

[0119] S1002: Determine whether the difference between the horizontal coordinates of the current first point and the current second point is less than or equal to a first threshold.

[0120] It should be understood that since the movement direction of the laser profiler in the point cloud fusion method shown in FIG10 is the Y direction, the horizontal coordinates of the first point and the second point are the coordinates in the X direction, and the vertical coordinates of the first point and the second point are the coordinates in the Z direction.

[0121] When the difference between the horizontal coordinates of the current first point and the current second point is less than or equal to the first threshold, S1003 determines whether the difference between the vertical coordinates of the current first point and the current second point is less than or equal to the second threshold.

[0122] When the difference between the vertical coordinates of the current first point and the current second point is less than or equal to the second threshold, S1004 , the average value of the data of the current first point and the current second point is determined as the third point.

[0123] Specifically, the average value of the horizontal coordinates of the current first point and the current second point is used as the horizontal coordinate of the third point; the average value of the vertical coordinates of the current first point and the current second point is used as the vertical coordinate of the third point.

[0124] When the difference between the vertical coordinates of the current first point and the current second point is greater than the second threshold, S1005, the vertical coordinate corresponding to the point cloud with a shorter exposure time or a smaller light intensity response to the wavelength of the light source is determined as the vertical coordinate of the third point, and the average value of the horizontal coordinates of the current first point and the current point cloud is determined as the horizontal coordinate of the third point.

[0125] FIG11 is a schematic diagram of the effect of a fused local point cloud provided in an embodiment of the present application.

[0126] For example, as shown in FIG11, the coordinates of the first point of the e-th order are (x re ,z re ), the coordinates of the second point of the fth is (x sf ,z sf ), when x re and x sf The difference between is less than or equal to the first threshold, and z re and z sf When the difference is less than or equal to the second threshold, x re and x sfThe average value of z is used as the abscissa of the third point. re and z sf The average value of is used as the vertical coordinate of the third point.

[0127] It should be understood that due to different laser parameters, the results of the vertical coordinate (for example, the Z direction) may be inaccurate. For example, for the reflected light obtained by a laser with a longer exposure time, the receiving end will receive more light, and the pixel value will be relatively too high; or based on the receiving end's response ability to light sources of different wavelengths (i.e., spectral response), for a light source wavelength with a larger light intensity response, that is, the light source wavelength matches the spectral response of the receiving end, under the same exposure time, the receiving end will more effectively receive and sense the corresponding light beam, thereby generating a higher pixel value. Therefore, using the vertical coordinate of the point cloud with a smaller exposure time or smaller light source intensity response in the two point clouds as the vertical coordinate of the third point (i.e., the fused point cloud) can improve the accuracy of the fused point cloud.

[0128] For example, as shown in FIG11, the coordinates of the first point c are (x rc ,z rc ), the coordinates of the d-th second point are (x sd ,z sd ), when x rc and x sd The difference between is less than or equal to the first threshold, and z rc and z sd When the difference is greater than the second threshold, the measurement data of the second point with a longer exposure time or a larger light intensity response of the light source wavelength is inaccurate, and the cth first point with a shorter exposure time or a smaller light intensity response of the light source wavelength is determined as the third point in the fused local point cloud.

[0129] After the third point is determined in S1004 or S1005, S1006 determines whether the point cloud between the current first point and the current second point is the last point cloud, that is, determines whether there is an Nth first point or an Mth second point between the current first point and the current second point.

[0130] In the case that the point cloud between the current first point and the current second point does not exist and is the last point cloud, S1007 , the current first point is updated to the n+1th first point, and the current second point is updated to the m+1th second point.

[0131] That is, the current first point and the current second point are updated to the next first point and the next second point respectively, that is, the index number of the current first point is increased by 1 and the index number of the current second point is increased by 1.

[0132] If the point cloud of the current first point and the current second point is the last point cloud, S1008 determines the remaining point clouds in the local point cloud corresponding to the non-last point cloud as the fused point cloud. That is, the current first point is the Nth first point or the current second point is the Mth second point.

[0133] As a possible implementation manner, if the current first point is the Nth first point, then the remaining point clouds in the second partial point cloud are determined as the fused point clouds.

[0134] As a possible implementation manner, if the current second point is the Mth second point, then the remaining point clouds in the first partial point cloud are determined as the fused point clouds.

[0135] When the difference between the horizontal coordinates of the current first point and the current second point is greater than a first threshold, S1009 determines the point cloud with the smaller horizontal coordinate as the third point. When the two point clouds are relatively far apart laterally, this means that a point cloud is missing at the location corresponding to the smaller horizontal coordinate value in the local point cloud obtained under one of the laser parameters. Therefore, the point cloud with the smaller horizontal coordinate of the two point clouds is used as the third point, thereby making the fused point cloud relatively complete and avoiding data errors caused by missing point clouds.

[0136] For example, as shown in FIG11, the coordinates of the first point are (x r1 ,z r1 ), the coordinates of the first second point are (x s1 ,z s1 ), when x r1 and x s1 When the difference is greater than the first threshold, and the horizontal coordinate of the first point is larger, the first local point cloud has a point cloud missing at the position corresponding to the first second point, and the point with the smaller horizontal coordinate (that is, x s1 ) is determined as the third point in the fused local point cloud.

[0137] For example, as shown in Figure 11, the coordinates of the first point a are (x ra ,z ra ), the coordinates of the b-th second point are (x sb ,z sb ), when x ra and x sb When the difference is greater than the first threshold, and the horizontal coordinate of the b-th second point is larger, the second local point cloud is missing at the position corresponding to the a-th first point, and the smaller horizontal coordinate (that is, x ra ) is determined as the third point in the fused local point cloud.

[0138] S1010: Determine whether the point cloud of the current first point and the current second point is the last point cloud. Detailed description can be found in S1006 and will not be repeated here.

[0139] If the point cloud corresponding to the first and second points does not exist and is the last point cloud, S1011 updates the point cloud index corresponding to the point cloud with the smaller horizontal coordinate, while the point cloud index corresponding to the point cloud with the larger horizontal coordinate is not updated. Specifically, the point cloud index corresponding to the point cloud with the smaller horizontal coordinate is incremented by 1, while the point cloud index corresponding to the point cloud with the larger horizontal coordinate remains unchanged. The point cloud index may refer to the number "n" of the nth first point.

[0140] As a possible implementation manner, if the horizontal coordinate of the current first point is smaller, then the current first point is updated to the (n+1)th first point, and the current second point is still the (m)th second point.

[0141] As a possible implementation manner, if the horizontal coordinate of the current second point is smaller, the current second point is updated to the m+1th second point, and the current first point is still the nth first point.

[0142] In the case where the point cloud between the current first point and the current second point is the last point cloud, S1008 , the remaining point clouds in the local point clouds corresponding to the non-last point cloud are determined as the fused point clouds.

[0143] It should be understood that the above fusion process is a detailed description of the fusion method of two frames of local point clouds obtained at the same location of the measured object under two different laser parameters. If the number of frames of local point clouds obtained by scanning the same location of the measured object is greater than or equal to three, the point cloud fusion method shown in Figure 5 or Figure 10 can be used.

[0144] As a possible implementation method, the local point clouds of any two frames are fused to obtain a fused local point cloud, and then the fused local point cloud is fused with any frame of the remaining unprocessed local point cloud, and so on to obtain the final fused local point cloud.

[0145] As a possible implementation method, multiple frames of local point clouds are fused pairwise, and then the fused local point clouds are fused pairwise to obtain the final fused local point cloud.

[0146] It should be understood that when using a surface laser scanning method, the multiple frames of local point clouds obtained by each laser line can be fused using the above method. Subsequently, the point clouds of each laser line can be distinguished through encoding or other methods. In this way, the fusion effect of the surface laser scanning method can be achieved.

[0147] S603: Control the laser profiler to scan at different positions to obtain fused local point clouds at different positions.

[0148] It should be understood that the fused local point clouds at different positions may be obtained through the fusion method of S602 .

[0149] S604: splicing the fused local point clouds at different positions to obtain a global point cloud of the measured object.

[0150] As a possible implementation method, when obtaining the first local point cloud and the second local point cloud at the first position, the first coordinate of the laser profiler or print head corresponding to the first position in the world coordinate system is synchronously recorded, and the first coordinate and the second coordinate are associated, wherein the second coordinate is the coordinate of the local point cloud after fusion at the first position in the world coordinate system. Similarly, the coordinate of the laser profiler or print head corresponding to each position in the world coordinate system is associated with the coordinate of the local point cloud after fusion at the first position in the world coordinate system. Based on the correlation between the coordinates of each position in the world coordinate system, the fused local point clouds corresponding to different positions are spliced ​​together using the coordinates of the laser profiler or print head in the world coordinate system to obtain a global point cloud.

[0151] As another possible implementation method, S1, pre-process the fused local point cloud at each position, including denoising, filtering, and feature extraction steps, which helps to reduce noise and unnecessary points and extract important features. S2, use iterative closest point (ICP) or other registration algorithms to estimate the transformation relationship between the fused local point cloud at each position in the world coordinate system and the global point cloud. S3, align the fused local point cloud at each position in the world coordinate system with the global coordinate system based on the transformation relationship (that is, convert the fused local point cloud at each position to the global coordinate system), and stitch them into a complete global point cloud frame through a stitching algorithm. Among them, commonly used stitching methods include voxel grid filtering, Euclidean clustering, nearest neighbor search based on high-dimensional (k-dimensional, KD) trees, etc. S4, optimization and refinement of the global point cloud: the stitched global point cloud may still have some imperfect or inaccurate parts. Optimization algorithms, such as nonlinear least squares or ICP iteration, can be applied to further optimize the fit and accuracy of the global point cloud.

[0152] If the first local point cloud and the second local point cloud used for fusion in S602 are point cloud data in the laser profiler coordinate system, then S2 also needs to convert the fused local point clouds into world coordinates according to the external parameters of the laser profiler.

[0153] It should be understood that in the various embodiments of the present application, the size of the serial numbers of the above-mentioned processes does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.

[0154] The above is a detailed description of the method. The following is a brief description of the apparatus in conjunction with FIG12. It should be understood that the description of the apparatus embodiment corresponds to the description of the method embodiment. Therefore, for matters not described in detail, please refer to the method embodiment above. For the sake of brevity, it is not repeated here.

[0155] FIG12 is a schematic diagram of a point cloud fusion device provided in an embodiment of the present application. The point cloud fusion device includes: an acquisition unit 1201 for acquiring a first local point cloud and a second local point cloud, wherein the first local point cloud and the second local point cloud are obtained by scanning a first position of a measured object using different laser parameters using a laser profiler, wherein the first local point cloud includes N first points and the second local point cloud includes M second points, where N and M are positive integers; and a processing unit 1202 for obtaining a fused local point cloud corresponding to the first position based on a comparison result of the position information of the nth first point and the mth second point, where 1≤n≤N, 1≤m≤M, and n and m are positive integers.

[0156] An embodiment of the present application further provides a 3D printer including a heated bed 310, a print head 330, a laser profiler 340, and a processing device, wherein the print head is used to print a print layer of a target object on the heated bed; the laser profiler is used to collect a first local point cloud and a second local point cloud of the heated bed or the print layer under different laser parameters; the processing device is used to control the print head and the laser profiler, and process the first local point cloud and the second local point cloud according to the point cloud fusion method provided in the present application to obtain a fused point cloud of the heated bed or the print layer.

[0157] Optionally, the processing device may be located in a cloud processing device. If the processing device is located in a cloud processing device, the 3D printer further comprises a device for receiving instructions from the processing device.

[0158] In an embodiment of the present application, the 3D printer may further include a memory for storing a computer program corresponding to the point cloud fusion method provided in the present application for reading and running by a processing device. Preferably, the memory may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memories. Among them, the non-volatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM). By way of example but not limitation, many forms of RAM are available, such as static random access memory (SRAM) or dynamic random access memory (DRAM), etc.

[0159] An embodiment of the present application further provides a computer-readable medium storing a program code. When the computer program code is executed on a computer, the computer executes the method in FIG. 5 , FIG. 6 or FIG. 10 .

[0160] An embodiment of the present application also provides a chip, comprising: at least one processor and a memory, wherein the at least one processor is coupled to the memory and is used to read and execute instructions in the memory to execute the method in Figure 5, Figure 6 or Figure 10 above.

[0161] As used in this specification, the terms "component," "unit," "system," and the like are used to represent computer-related entities, hardware, firmware, a combination of hardware and software, software, or software in execution. For example, a component can be, but is not limited to, a process running on a processor, a processor, an object, an executable file, an execution thread, a program, and / or a computer. By way of illustration, both an application running on a computing device and a computing device can be a component. One or more components can reside in a process and / or an execution thread, and a component can be located on a computer and / or distributed between two or more computers. In addition, these components can be executed from various computer-readable media having various data structures stored thereon. Components can communicate, for example, via local and / or remote processes based on signals having one or more data packets (e.g., data from two components interacting with another component between a local system, a distributed system, and / or a network, such as the Internet interacting with other systems via signals).

[0162] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0163] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0164] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0165] The units described as separate components may or may not be physically separate, and 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 these units may be selected to achieve the purpose of this embodiment according to actual needs.

[0166] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.

[0167] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory ROM, a random access memory RAM, a magnetic disk, or an optical disk.

[0168] The above description is merely a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in this application should be included in the scope of protection of this application. Therefore, the scope of protection of this application should be based on the scope of protection of the claims.

Claims

1. A point cloud fusion method, characterized in that: Applied to a 3D printer including a laser profiler and a processing device, the method comprises: Acquire a first local point cloud and a second local point cloud; wherein the first local point cloud and the second local point cloud are obtained by scanning a first position of the object to be measured by the laser profiler using different laser parameters, the first local point cloud includes N first points, the second local point cloud includes M second points, and N and M are positive integers; According to the comparison result of the position information of the nth first point and the mth second point, a fused local point cloud corresponding to the first position is obtained, 1≤n≤N, 1≤m≤M, n and m are positive integers.

2. The method according to claim 1, characterized in that: The obtaining, according to the comparison result of the position information of the nth first point and the mth second point, of the fused local point cloud corresponding to the first position comprises: Determine whether a difference between the horizontal coordinates of the nth first point and the mth second point is less than or equal to a first threshold, and determine a fusion method of the nth first point and the mth second point; According to the fusion method, a third point is obtained, and the fused local point cloud includes the third point.

3. The method according to claim 2, characterized in that The method of determining the fusion of the nth first point and the mth second point includes: When the difference between the horizontal coordinates of the nth first point and the mth second point is less than or equal to the first threshold, determine whether the difference between the vertical coordinates of the nth first point and the mth second point is less than or equal to the second threshold, and determine the fusion method.

4. The method according to claim 3, characterized in that According to the fusion method, the third point includes: When the difference between the ordinates of the nth first point and the mth second point is less than or equal to the second threshold, averaging the position information of the nth first point and the mth second point to obtain the third point; or, When the difference between the vertical coordinates of the nth first point and the mth second point is greater than the second threshold, the average value of the horizontal coordinate data of the nth first point and the mth second point, and the vertical coordinate data corresponding to the nth first point are used as the third point; wherein the exposure time corresponding to the nth first point is less than the exposure time corresponding to the mth second point, or the light intensity response of the light source wavelength corresponding to the nth first point is less than the light intensity response of the light source wavelength corresponding to the mth second point.

5. The method according to claim 2, characterized in that: According to the fusion method, the third point includes: When the difference between the horizontal coordinates of the nth first point and the mth second point is greater than the first threshold, the point cloud with the smaller horizontal coordinate between the nth first point and the mth second point is determined as the third point.

6. The method according to claim 5, characterized in that The method further comprises: When the horizontal coordinate of the nth first point is smaller, a fourth point is determined according to a comparison result of the position information of the n+1th first point and the mth second point, and the fused local point cloud includes the fourth point; or When the horizontal coordinate of the mth second point is smaller, the fifth point is determined according to the comparison result of the position information of the nth first point and the m+1th second point, and the fused local point cloud includes the fifth point.

7. The method according to any one of claims 1 to 5, characterized in that: The method further comprises: When the current first point is the Nth first point, the fused local point cloud includes the remaining point cloud in the second local point cloud, wherein the current first point is the nth first point; or, When the current second point is the Mth second point, the fused local point cloud includes the remaining point cloud in the first local point cloud, wherein the current second point is the mth second point.

8. The method according to any one of claims 1 to 6, characterized in that: The different laser parameters include different exposure times or different laser wavelengths.

9. A point cloud fusion device, characterized in that: include: An acquisition unit is configured to acquire a first local point cloud and a second local point cloud; wherein the first local point cloud and the second local point cloud are obtained by scanning a first position of the object to be measured by the laser profiler using different laser parameters, the first local point cloud includes N first points, the second local point cloud includes M second points, and N and M are positive integers; The processing unit obtains a fused local point cloud corresponding to the first position according to a comparison result of the position information of the nth first point and the mth second point, where 1≤n≤N, 1≤m≤M, and n and m are positive integers.

10. A 3D printer, characterized in that: The 3D printer includes a hot bed, a print head, a laser profiler and a processing device, wherein: The printing nozzle is used to print a printing layer of the target object on the heated bed; The laser profiler is used to collect a first local point cloud and a second local point cloud of the hot bed or the printing layer under different laser parameters; The processing device is used to control the print head and the laser profiler, and to process the first local point cloud and the second local point cloud according to the point cloud fusion method according to any one of claims 1 to 8 to obtain a fused point cloud of the hot bed or the printing layer.

11. A computer-readable storage medium, characterized in that: Used to store a computer program, wherein the computer program causes a computer to execute: the method according to any one of claims 1 to 8.

Citation Information

Patent Citations

  • Binocular three-dimensional reconstruction method and binocular three-dimensional reconstruction system

    CN106780725A

  • Method and device for fusing point cloud data and hybrid navigation system

    CN108286976A

  • Unmanned logistics trolley environment sensing method and system

    CN113376638A

  • Point cloud fusion method and device and 3D printer

    CN116958773A

  • Point-cloud fusion

    US20150323672A1