Structured light 3D scanning measurement method and system
By using structured light 3D scanning measurement method, combining coarse and fine stitching algorithms, and optimizing the ICP algorithm with robust estimation, the problem of low stitching efficiency of existing 3D measurement devices is solved, realizing efficient and accurate point cloud data stitching, which is suitable for high-precision measurement of complex parts.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SHANGHAI SECOND POLYTECHNIC UNIVERSITY
- Filing Date
- 2022-06-27
- Publication Date
- 2026-06-05
AI Technical Summary
Existing 3D measurement devices suffer from problems such as a large number of iterations and low stitching efficiency. Furthermore, the stitching accuracy deteriorates significantly when the overlap rate is below 30%, making it difficult to meet the high-precision inspection requirements of modern industrial manufacturing.
The structured light 3D scanning measurement method is adopted, combining coarse and fine stitching algorithms. The robust estimation algorithm is optimized by utilizing the robust estimation principle, and the ICP algorithm is improved by using a robust model. The point cloud data is processed by combining the voxel grid method and filtering algorithm to improve the stitching accuracy and efficiency.
It enables rapid and accurate stitching of point cloud data with an overlap rate of over 30%, reducing point cloud data processing time, improving measurement accuracy and efficiency, and meeting the measurement needs of complex parts.
Smart Images

Figure CN115131208B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of measurement technology, and in particular to a structured light 3D scanning measurement method and system. Background Technology
[0002] With the development of manufacturing technology and non-standard automation technology, the requirements for the accuracy and efficiency of measuring the external dimensions of parts are becoming increasingly stringent. Traditional 2D inspection methods are time-consuming and labor-intensive, and some complex curved surfaces are difficult to inspect with high precision. Their accuracy and efficiency are no longer sufficient to meet the inspection standards and requirements of modern industrial manufacturing for various parts. Modern 3D digital inspection technology is gradually replacing traditional inspection techniques and is being used more and more widely, becoming a core technology for the inspection of various high-precision and complex parts.
[0003] Existing methods for conventional 3D measurement devices require stitching together 3D point cloud data. Current stitching processes typically rely on the ICP algorithm, which suffers from numerous iterations and low efficiency. Furthermore, to ensure accuracy, an overlap rate greater than 30% is generally required; accuracy deteriorates significantly when the overlap rate falls below 30%.
[0004] In existing technological research, there is no better method that can guarantee the accuracy of splicing while also solving the problems of excessive iterations and low splicing efficiency in existing ICP algorithms. Summary of the Invention
[0005] The purpose of this invention is to overcome the shortcomings of the existing technology.
[0006] To achieve the above objectives, in a first aspect, embodiments of the present invention describe a structured light 3D scanning measurement method, comprising the following steps:
[0007] Collect 3D point cloud data information of the object under test in different poses;
[0008] Rotational coarse stitching of 3D point cloud data information under adjacent poses;
[0009] The robust estimation algorithm is optimized using the robust estimation principle. The robust estimation algorithm is then used to register 3D point cloud data information, outputting point cloud data containing new position information, and the point cloud data is accurately stitched together.
[0010] This invention's stitching algorithm combines coarse and fine stitching. The coarse stitching algorithm uses turntable motion to calculate Euler angles on the acquired 3D point cloud, providing raw data for fine stitching. Fine stitching extracts the overlapping portions of the coarsely stitched 3D point cloud data and performs robust estimation alignment on the 3D point cloud data within these overlapping portions. Since the extracted overlapping point cloud data is already quite close to the actual alignment position, the robust estimation alignment algorithm only requires a few iterations to complete the alignment, shortening its runtime. This stitching algorithm can guarantee an overlap area of over 30%, improving stitching accuracy, reducing the amount of point cloud data to be processed, and accelerating point cloud processing speed.
[0011] Preferably, robust estimation is performed using a robust model, which includes the Huber robust model and / or the IGG robust model.
[0012] The robust estimation concatenation algorithm of this invention optimizes the ICP algorithm using the principle of robust estimation and utilizes a weighting factor for robust estimation to improve the algorithm's robustness. The robust model is selected as the Huber robust model and / or the IGG robust model. After selecting the robust model, the robust estimation method is used to improve the ICP algorithm.
[0013] Preferably, the scanning measurement method further includes: downsampling the classified 3D point cloud data using a voxel grid method; and / or filtering the 3D point cloud data.
[0014] The point cloud downsampling algorithm used in this invention classifies points in the point cloud using a threshold of the angle between normal vectors. Simultaneously, it applies the KD-Tree algorithm to accelerate the point cloud search and uses a voxel grid method to further classify the classified points, resulting in a downsampled point cloud. This algorithm preserves the local features of the point cloud while minimizing downsampling processing time, ensuring both the measurement accuracy and speed of automated measurement software.
[0015] The point cloud filtering algorithm used in this invention combines radius filtering, bilateral filtering, and statistical filtering algorithms, retaining the advantages of each algorithm to better filter out noise and preserve more detailed features. Furthermore, this invention features a visual adjustment function for the filtering effect, which intuitively displays the filtering result and facilitates adjustment of various filtering parameters to achieve satisfactory filtering results, thus improving the usability of automated measurement software.
[0016] Secondly, embodiments of the present invention describe a structured light 3D scanning measurement system, characterized in that it includes:
[0017] Structured light 3D scanning camera is used to acquire 3D point cloud information of the object being measured;
[0018] A black-painted scanning turntable is used to acquire 3D point cloud data of the object under test from multiple angles, and the black paint is used to remove point cloud information that is not the object under test.
[0019] A 3D measurement processing unit is used to implement measurement methods.
[0020] This invention features a black coating on the measurement platform, as black absorbs the projection of the structured light source. Therefore, when using a structured light 3D scanning camera to acquire 3D point cloud data, the measurement platform remains undetectable. This prevents interference with the acquisition of the object's 3D point cloud data, eliminating the need for manual post-processing of the acquired data and enabling automated measurement software.
[0021] Preferably, the 3D measurement processing unit includes: a camera acquisition control module for controlling the scanning camera to acquire 3D point cloud data information of the object under test; a coarse stitching processing module for coarsely stitching 3D point cloud data information; and a precise stitching processing module for precisely stitching 3D point cloud data information.
[0022] Preferably, the 3D measurement processing unit further includes: a downsampling processing module for downsampling the 3D point cloud data information; and / or a filtering processing module for filtering the 3D point cloud data information.
[0023] Preferably, the scanning measurement system further includes a 3D scanning camera position adjustment module for adjusting the relative position of the 3D scanning camera and the object being measured.
[0024] The 3D scanning camera position adjustment module designed in this invention is used to adjust the relative position of the 3D scanning camera and the object being measured, so that the 3D scanning camera can obtain a larger scanning area or higher measurement accuracy, thereby meeting the measurement needs of objects of different sizes, coping with different types of measurement scenarios, and improving the compatibility and platform of automated measurement software.
[0025] Preferably, the scanning measurement system further includes a calibration module for calibrating the structured light 3D scanning camera during initialization.
[0026] The calibration function of this invention automatically calculates the relative distance and angle between the 3D scanning camera and the central axis of the turntable after adjusting the position of the 3D scanning camera. This eliminates the need for manual measurement, thus improving the automation level of the automated measurement software.
[0027] Preferably, the scanning measurement system further includes: a turntable motion control module, used to drive the turntable motion and collect 3D point cloud data information of the object under test in different postures.
[0028] Preferably, the scanning measurement system places the 3D point cloud data processing module on the computer, so as to process the 3D point cloud data uniformly on the computer.
[0029] To improve the versatility of the measurement method, this invention places the filtering and stitching processes in the 3D point cloud data processing stage on the computer. Therefore, any brand and model of 3D scanning camera, regardless of whether it has a built-in processing module, can use this measurement method to acquire the raw data from the 3D scanning camera and then process the 3D point cloud data uniformly on the computer. This improves the compatibility of automated measurement software.
[0030] Preferably, the scanning measurement system is based on a hardware foundation combining OpenMP and CUDA for 3D point cloud data processing.
[0031] In 3D point cloud data processing, using only the CPU is inefficient; using only the GPU incurs additional memory requests and release times. This invention designs a 3D point cloud data processing method based on a combination of OpenMP and CUDA. OpenMP is a multi-core CPU parallel computing technology, and CUDA is a GPU computing technology. This 3D point cloud data processing method optimizes point cloud processing speed as much as possible. When the point cloud data volume is small, using OpenMP for point cloud processing is about 3 times faster than CPU serial processing; when the point cloud data volume is large, using CUDA for processing is about 10 times faster than CPU serial processing. This accelerates the 3D point cloud data processing speed of automated measurement software.
[0032] Preferably, to prevent splicing errors caused by user operation mistakes from preventing the automatic execution of the splicing process, this invention designs a semi-automatic splicing as an error handling mechanism. In the semi-automatic splicing mode, the user only needs to select at least 3 sets of corresponding points to run automatic splicing. The selected corresponding points only need to be roughly in the same position for automatic splicing to be successful, thus improving the usability, robustness, and reliability of the automated measurement software.
[0033] Preferably, before matching the point cloud with the CAD model of the measurement target, the point cloud needs to be converted to PIF format using imalign. In addition to the original point cloud data, the PIF format point cloud data also includes mesh characteristics. This characteristic facilitates subsequent model matching operations, allowing the point cloud to automatically align with the model without manual point selection. This improves the automation level of the device and the robustness of the automated measurement software.
[0034] Preferably, this invention uses LabVIEW as the development tool, enabling rapid secondary development to adapt to various 3D cameras and mechanical motion devices. The measurement module of the automated measurement software in this device utilizes PolyWorks measurement tools, eliminating the need for tool development while ensuring high measurement accuracy. Alternatively, other measurement software or self-developed measurement software can also be selected, improving the compatibility of the automated measurement software.
[0035] The beneficial effects of this invention are as follows: This invention provides a structured light 3D scanning measurement method, which optimizes the robust estimation algorithm using the robust estimation principle, making stitching faster and more accurate, easily achieving an overlap rate of over 30%, effectively preventing stitching errors and ensuring stitching accuracy. This invention also provides a structured light 3D scanning measurement system that implements the aforementioned measurement method, enabling the measurement of parts with complex shapes. Attached Figure Description
[0036] Figure 1 This is a flowchart illustrating the process of a structured light 3D scanning measurement method according to an embodiment of the present invention.
[0037] Figure 2 This is an overall workflow diagram of an embodiment of the present invention;
[0038] Figure 3 The configuration scanning platform process is as follows, according to an embodiment of the present invention;
[0039] Figure 4 This is a calibration flowchart of an embodiment of the present invention;
[0040] Figure 5 This is a flowchart of the calibration algorithm according to an embodiment of the present invention;
[0041] Figure 6 This is a schematic diagram of the calibration component according to an embodiment of the present invention;
[0042] Figure 7 This is a schematic diagram of the center point of the calibration component according to an embodiment of the present invention;
[0043] Figure 8 This is a flowchart illustrating the measurement of a newly added workpiece in an embodiment of the present invention;
[0044] Figure 9 This is a flowchart of the measurement operation in an embodiment of the present invention;
[0045] Figure 10 This is a flowchart illustrating the filtering process of an embodiment of the present invention.
[0046] Figure 11 This is a flowchart illustrating the downsampling processing method according to an embodiment of the present invention.
[0047] Figure 12 This is a flowchart illustrating the coarse splicing processing method according to an embodiment of the present invention.
[0048] Figure 13 This is a flowchart illustrating the point cloud position transformation according to an embodiment of the present invention.
[0049] Figure 14 This is a diagram of the rotation parameters for point cloud position transformation according to an embodiment of the present invention;
[0050] Figure 15 This is a diagram of the translation parameters for point cloud position transformation according to an embodiment of the present invention;
[0051] Figure 16 This is a flowchart illustrating the precise splicing processing method according to an embodiment of the present invention.
[0052] Figure 17 This is a flowchart illustrating the robust estimation algorithm in an embodiment of the present invention.
[0053] Figure 18 This is a flowchart illustrating the semi-automatic splicing process according to an embodiment of the present invention.
[0054] Figure 19 This is a flowchart illustrating the measurement and report output process in an embodiment of the present invention.
[0055] Figure 20 This is a front view of a structured light 3D scanning measurement device according to an embodiment of the present invention;
[0056] Figure 21 This is a front view of the black-coated scanning platform according to an embodiment of the present invention;
[0057] Figure 22 This is a hardware connection schematic diagram of a structured light 3D scanning measurement according to an embodiment of the present invention; Detailed Implementation
[0058] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. Obviously, the described embodiments are only some, not all, of the embodiments of this invention. It should be understood that the specific embodiments described herein are for illustrative purposes only and are not intended to limit the invention. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without creative effort are within the scope of protection of this invention.
[0059] To provide the public with a better understanding of this invention, certain specific details are described in detail below. However, those skilled in the art will fully understand this invention even without these detailed descriptions.
[0060] Example 1
[0061] Figure 1 This is a flowchart illustrating a structured light 3D scanning measurement method according to an embodiment of the present invention. The specific workflow includes: overall workflow design, scanning platform configuration workflow design, calibration operation workflow design, calibration algorithm workflow, adding measurement workpiece workflow design, measurement operation workflow design, filtering workflow design, 3D point cloud coarse stitching workflow design, point cloud position transformation workflow, downsampling algorithm workflow, 3D image precise stitching workflow design, robust estimation algorithm workflow, 3D point cloud semi-automatic stitching and format conversion workflow, and measurement and report output workflow.
[0062] 1. For example Figure 2 As shown, the overall workflow design is as follows:
[0063] Step 1: Select the current scanning platform.
[0064] Step 2: Initialization and calibration.
[0065] Step 3: Create a new measurement project.
[0066] Step 4, begin measurement.
[0067] Step 5: Output the measurement report.
[0068] 2. For example Figure 3 As shown, the configuration process for the scanning platform is designed as follows:
[0069] Step 1: Select the 3D scanning camera model and turntable model.
[0070] Step 2: Configure the 3D scanning camera parameters and turntable parameters.
[0071] Step 3: Save the current measurement device configuration.
[0072] Step 4: Calibrate the measuring device.
[0073] 3. For example Figure 4 As shown, the calibration operation procedure design
[0074] Step 1: Adjust the angles of the Y-axis hand-cranked module, the Z-axis hand-cranked module, and the 3D scanning camera bracket to the positions that meet the measurement requirements.
[0075] Step 2: Place the calibration piece.
[0076] Step 3: Start the calibration program.
[0077] Step 4: Perform dimensional calibration on the 3D scanning camera based on the known dimensions and surface of the calibration part.
[0078] Step 5: Find the bottom edge and axis of the known standard part through the program, calculate the distance between the origin of the 3D scanning camera and the intersection of the camera's Z-axis and the turntable axis, and the angle between the 3D scanning camera and the Z-axis hand-cranked module.
[0079] Step 6: The distance between the intersection of the 3D scanning camera origin and the intersection of the camera's Z-axis and the turntable axis is the angle between the 3D scanning camera and the Z-axis hand-cranked module.
[0080] Step 7: Save the parameters in the configuration for easy use in subsequent measurements.
[0081] 4. For example Figure 5 As shown, the calibration algorithm flow is designed as follows:
[0082] Step 1: Filter the collected 3D point cloud data to remove outliers around the bottom contour.
[0083] Step 2: Calculate the minimum bounding box of the point cloud: Use a PCA (Principal Component Analysis) based oriented bounding box (OBB). Ensure that the bottom face (the side of the sampled point cloud that contacts the turntable) is one of the six faces of the oriented bounding box.
[0084] Step 3: Downsample the 3D point cloud data, and then obtain the normal vectors of the centroid positions of the six faces of the orientation bounding box. Use the direction of the normal vectors as the camera view direction to determine the positions of the six cameras.
[0085] Step 4: Remove hidden points from the point cloud from the perspectives of the 6 camera positions, resulting in 6 point cloud images. Calculate the number of points in each point cloud image and the average distance to the corresponding plane. The image with the most points and the furthest average distance is designated as the top plane, and the image parallel to it is designated as the bottom plane.
[0086] Step 5: As Figure 6 As shown, the equation of the bottom plane is calculated using the vertices of the bottom surface. z = ax + by + c, the bottom normal vector is N = (a, b, 1), and the unit vector along the OZ axis is Z = (0, 0, 1). From the bottom plane equation, the bottom normal vector is obtained, and the angle αz between the normal vector and the OZ axis is calculated.
[0087]
[0088] Step 6: Assume the positions of the six centers of the calibration component are A, B, C, D, E, and F as shown in the diagram below. With the bottom surface of the calibration component covering the axis, if... Figure 7As shown, assuming the center of the circle scanned in the first scan is three points A, B, and C, the center of the circle scanned after the turntable rotates 180° will be D', E', and F'. Connect A-D', B-E', and C-F' and take the midpoints A', B', and C'. Then take the perpendicular bisector of A'-B' and the perpendicular bisector of B'-C'. The intersection point O of the two perpendicular bisectors is the axis point. The perpendicular line between the axis point and the surface of the turntable is the axis line.
[0089] Step 7: The intersection of the Z-axis of the 3D scanning camera and the center line of the turntable is the new coordinate origin.
[0090] Step 8: Output the new origin and included angle αz.
[0091] 5. For example Figure 8 As shown, the new workpiece measurement process design is as follows:
[0092] Step 1: Design the turntable movement process.
[0093] Step 2: Design measurement templates, report templates, and automatic measurement scripts.
[0094] Step 3: Configure the corresponding measurement template, the CAD model of the object under test, the input path of the automatic measurement script, and other parameters, such as downsampling configuration parameters, point cloud save path, report save path, etc.
[0095] Step 4: Test whether the running path and template meet the requirements. If not, modify the running path and measurement template.
[0096] Step 5: Perform measurement operations to carry out continuous automated measurements.
[0097] 6. For example Figure 9 As shown, the measurement operation process is designed as follows:
[0098] Step 1: Read the configuration parameters, such as motion path, number of samples, etc.
[0099] Step 2: Call the 3D camera control tool module to control the 3D camera to automatically acquire point cloud images.
[0100] Step 3: Import the acquired 3D point cloud data into the automation control software using Gigabit Ethernet.
[0101] Step 4: Use the filtering tool to perform filtering.
[0102] Step 5: Reduce sampling based on the configuration.
[0103] Step 6: Store the 3D point cloud data to the configured path.
[0104] Step 7: Use the turntable motion control module to control the turntable for 3D image acquisition of the next pose.
[0105] Step 8: Perform a coarse stitching between the second 3D point cloud image and the first image.
[0106] Step 9: Repeat the above steps until the data collection is complete.
[0107] Step 10: After data collection is complete, perform data stitching.
[0108] 7. For example Figure 10 As shown, the filtering process is designed as follows:
[0109] Step 1: Use radius filtering to filter the point cloud.
[0110] Step 2: Using principal component analysis, the solution for the normals and normal vectors of the point cloud in the neighborhood can be transformed into the eigenvalues and eigenvectors of the covariance matrix of the points in the neighborhood of that point. The filter factor of the bilateral filter is then calculated based on the calculated normal vectors in the same direction.
[0111] Step 3: Calculate the expected value σ and standard deviation σ of all points in the neighborhood using statistical filtering. Calculate the threshold σ of statistical filtering. Use the threshold of statistical filtering and a threshold of 1-2 times the global average distance to constrain the two attribute parameters of the bilateral filtering calculation. By limiting the size of the spatial domain, the characteristics of the point cloud structure are guaranteed, and the influence of isolated points in the neighborhood on the bilateral filtering of the point cloud is reduced.
[0112] Step 4: Output the filtered point cloud.
[0113] 8. For example Figure 11 As shown, the downsampling algorithm flow is as follows:
[0114] Step 1: Spatial rasterize the point cloud and use KD-Tree to accelerate the search for k-neighborhoods of the point cloud.
[0115] Step 2: Calculate the normal vector in the point cloud. For any point P in the point cloud, the best-fit plane is the plane formed by fitting all points in its k-neighborhood. To ensure that the fitted plane is a least-squares plane, the calculation principle is as follows:
[0116]
[0117] The concept of local entropy is proposed by using the angle between the calculated normal vector and vectors in the neighborhood:
[0118]
[0119] Among them, 𝑃 , for:
[0120]
[0121] In the formula, 𝑃𝜃𝑘 and 𝑃𝜃𝑗 are the probability distributions of the centroid normal vectors of the two points, respectively.
[0122] Step 3: Use the information entropy of the angle between the normal vectors to classify the point cloud within the grid. For grids with smaller normal vector information entropy, directly perform voxel meshing. For grids with larger normal vector information entropy, save them. Simplify the saved point cloud by performing smaller voxel meshing.
[0123] 9. For example Figure 12 As shown, the coarse stitching process for 3D point clouds is designed as follows:
[0124] Step 1: Perform coordinate transformation on the point cloud according to the calibration parameters, converting it to a coordinate system with the intersection of the turntable axis and the Z-axis of the 3D camera as the origin.
[0125] Step 2: Based on the angle between the camera's Z-axis and the hand-cranked module output by the calibration program. And the angle of each movement, calculate the rotation angle, and obtain the point cloud after rotation.
[0126] Step 3: Output the rotated point cloud.
[0127] 10. For example Figure 13 As shown, the point cloud position transformation process is as follows:
[0128] Step 1: Establish a Cartesian coordinate system with the intersection of the camera's Z-axis and the turntable's axis as the origin, based on the right-hand rule, where the X-axis and Z-axis lie on the turntable plane.
[0129] Step 2: Let the coordinates of the scanned point cloud be... The coordinate system is defined as O-XYZ, with the intersection of the turntable axis and the 3D camera centerline as the origin and the angle correctly aligned. The distance from the origin obtained during calibration is l, and the angle between l and the z-axis is α. The current rotation angle of the turntable is... The transformation parameters are three translation parameters. , Three rotation parameters , , ,like Figure 14 As shown.
[0130] Step 3: First, move the scanned coordinate origin to a new coordinate origin that intersects the turntable axis and the 3D camera centerline. Since the x-axis of the camera center and the turntable center are on the same straight line in the turntable design... , and like Figure 15 As shown, since l and α are known in the calibration, we can calculate: ,
[0131] = ,
[0132] = .
[0133] Step 4: Because the scanned point cloud includes the elevation angle α and the current rotation angle Since the object cannot rotate along the Y-axis, we can obtain: α、 , =
[0134] According to the formula ( X, Yes, three The three-dimensional coordinate vector, X is the three-dimensional coordinate vector of O-XYZ, R( R( is a rotation matrix) )= R( R( R( )
[0135]
[0136]
[0137]
[0138] Therefore, we have:
[0139]
[0140] In the formula: = cos sin sin sin
[0141] 11. For example Figure 16 As shown, the 3D image precision stitching process is designed as follows:
[0142] Step 1: Import adjacent point clouds one after another.
[0143] Step 2: Extract the point cloud data within the overlapping contours of adjacent point clouds after coarse stitching.
[0144] Step 3: Extract ISS feature points from the two overlapping point cloud data.
[0145] Step 4: Use FPFH values to describe the extracted ISS feature points and match the extracted feature points to form feature point pairs.
[0146] Step 5: Use the RANSAC algorithm to refine the matched feature point pairs and remove mismatched feature point pairs.
[0147] Step 6: Use a robust estimation algorithm to register feature point pairs to achieve point cloud registration.
[0148] Step 7: Calculate the positional transformation relationship between the registered point cloud and the original point cloud.
[0149] Step 8: Perform position transformation on the overall point cloud according to the position transformation relationship to obtain the stitched point cloud.
[0150] Step 9: Using the previous point cloud as a reference, stitch together the subsequent point clouds one by one.
[0151] Step 10: Output the stitched point cloud data containing the new location information.
[0152] 12. For example Figure 17 As shown, the robust estimation algorithm flow is as follows:
[0153] Step 1: Calculate the objective function based on the M-estimation. The principle of M-estimation is as follows:
[0154]
[0155] Applying the principle of M-estimation to the feature points of the source and target point clouds for matching, the objective function 𝑔(𝑅, 𝑇) is as follows:
[0156]
[0157] Where R is the rotation matrix, which is an orthogonal matrix. T is a translation matrix that is a 3-dimensional column vector.
[0158] Step 2: Calculate the weights:
[0159] The key to the weighted iterative method lies in Numbers and Function selection, through and Two relationships are used to construct weight factors and equivalent rights Then, iterative adjustment is performed to solve the problem. The weight of each pair of matched feature points is determined based on the distance residual, as shown in the following formula:
[0160]
[0161] If a good rigidity estimate exists, it can be substituted; otherwise, it can be... The initial values are based on the identity matrix. The initial value is substituted with the zero vector. Let... , For point clouds The weighted center, For point clouds The weighting center. Using a separate column vector. To replace the translation vector , that is The objective function changes to:
[0162]
[0163] Step 3: Calculate the new rotation and translation matrices Because of all With all The sum of these vectors is zero, and they are related to the scalar. The product is still a zero vector, and the IGG weight function formula can be simplified to:
[0164]
[0165] in It can be represented as:
[0166]
[0167] Obviously, when as well as When the minimum value is reached, the entire objective function is minimized. This can be achieved using a method based on singular value decomposition. Decompose for The singular values of the decomposition, according to It can be calculated In some special cases, a reflection matrix may appear. At this time It can be solved ,according to And solve The value can be solved .
[0168] Step 4: Calculate the objective function:
[0169] According to the calculation and Calculate the objective function , judge If the above steps are not repeated.
[0170] Step 5: Calculate the robust model:
[0171] The robust estimation concatenation algorithm of this invention optimizes the ICP algorithm using the principle of robust estimation and employs a weighting factor for robust estimation to improve the algorithm's robustness. The robust model chosen is the Huber robust model or the IGG robust model.
[0172] (1) Huber robust model
[0173] The weight function is:
[0174]
[0175] The weighting factors are:
[0176]
[0177] In the formula, when the correction |𝑣| should be between ±𝑐, it is the Huber weight function robust estimation, which is the most classic least squares algorithm. When the correction |𝑣| is greater than 𝑐, the larger the correction, the smaller the weight. 𝑐 is generally taken between 1 and 3.
[0178] (2) The weight function of the robust IGG model is:
[0179]
[0180] After selecting a robust model, robust estimation methods are used to improve the ICP algorithm.
[0181] 13. For example Figure 18 As shown, the semi-automatic 3D point cloud stitching and format conversion process is as follows:
[0182] Step 1: Import the aligned point cloud into the stitching tool for automatic stitching.
[0183] Step 2: If automatic stitching fails, prompt the user that automatic stitching has failed and start semi-automatic stitching.
[0184] Step 4: Select at least 3 pairs of feature points.
[0185] Step 3: Save the stitched point cloud as a pif file to the file storage path specified in the configuration.
[0186] 14. For example Figure 19 As shown, the measurement and report output process is as follows:
[0187] Step 1: Import the CAD file of the object under test, the measurement template, and the measurement script according to the path configured in the project.
[0188] Step 2: Configure the import of PIF point clouds according to the point cloud data storage path configured in the project.
[0189] Step 3: Compare the CAD model with the template and script to perform measurements and calculations, such as feature matching degree, side length, circle radius and other parameters.
[0190] Step 4: Output a report containing the above measurement results and color image information, and save it to the configured file storage path.
[0191] Example 2
[0192] like Figure 20 , Figure 21 As shown, this embodiment of the structured light 3D scanning measurement system includes: a structured light 3D scanning camera, a black-coated scanning turntable, and a 3D measurement processing unit.
[0193] like Figure 20 , Figure 21 As shown, a structured light 3D scanning measurement system in this embodiment specifically includes: a computer 1, a switch 2, a cooling fan 3, a power supply 4, a vertical hand-cranked module 5, a 3D scanning camera 6, a horizontal hand-cranked module 7, an intake fan 8, a turntable on the turntable 9, a motor 10, a servo motor controller 11, a structured light 3D scanning camera bracket 12, and a black-painted scanning turntable 13.
[0194] The hardware connection principle of this embodiment is as follows: Figure 22 As shown, it specifically includes:
[0195] The main structure is the black-painted scanning platform 13, which houses the power supply 4, the structured light 3D scanning camera 6, the air intake fan 8, the turntable 9 on the turntable, the motor 10, and the servo controller 11. The black paint on the scanning turntable 13 is used to remove redundant 3D point cloud information other than the object being measured during scanning. The power supply 4 provides power to the structured light 3D scanning camera 6, the air intake fan 8, the cooling fan 3, and the servo controller 11. The structured light 3D scanning camera 6 is used to acquire 3D point cloud data. The air intake fan 8 and the cooling fan 3 work together to cool the scanning turntable. The motor 10 drives the turntable 9 to move, scanning the various angles of the object being measured. 3D point cloud acquisition; turntable 9 is mounted on the surface of the scanning turntable to support the target being measured; servo motor controller 11 is used to receive motion control commands from computer 1 and control motor 10 to perform corresponding actions, realizing the control of the turntable motion by the turntable motion control module; computer 1 is used for 3D point cloud measurement and processing, including modules such as: camera acquisition control module, coarse stitching processing module, fine stitching processing module, downsampling processing module, filtering processing module, 3D scanning camera position adjustment module, calibration module, and turntable motion control module; switch 2 is used for communication between computer 1 and structured light 3D scanning camera 6.
[0196] The horizontal hand-cranked module 7, the vertical hand-cranked module 5, and the structured light 3D scanning camera bracket 12 are used together to realize the 3D scanning camera position adjustment module. Among them, the horizontal hand-cranked module 7 is used for horizontal position adjustment, the vertical hand-cranked module 5 is used for vertical position adjustment, and the camera bracket 12 is used for pitch angle adjustment.
[0197] The specific embodiments described above further illustrate the purpose, technical solution, and beneficial effects of the present invention. Therefore, it should be understood that the above description is only one specific implementation method of the present invention and is not intended to limit the scope of protection of the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.
Claims
1. A structured light 3D scanning measurement method, characterized in that, include: Collect 3D point cloud data information of the object under test in different poses; Rotational coarse stitching is performed on 3D point cloud data information under adjacent poses; The robust estimation algorithm is optimized using the robust estimation principle. The robust estimation algorithm is then used to register 3D point cloud data information, outputting point cloud data containing new position information, and the point cloud data is accurately stitched together. The precise stitching process of the point cloud data includes: Import two adjacent point clouds one after another; Extract point cloud data within the overlapping contours of adjacent point clouds after coarse stitching; Feature points are extracted from the two overlapping point cloud data. The extracted feature points are described, and feature point pairs are formed by matching the extracted feature points. The matched feature point pairs are purified, and mismatched feature point pairs are eliminated. A robust estimation algorithm is used to register feature point pairs to achieve point cloud registration. Specifically, weight factors and equivalent weights are constructed, and the feature point pairs are iteratively adjusted. The weight of each pair of matched feature points is determined based on the distance residual. The algorithm flow for the robust estimation includes: Step 1: Calculate the objective function based on the M-estimation. The principle of M-estimation is as follows: Applying the principle of M-estimation to the feature points of the source and target point clouds for matching, the objective function 𝑔(𝑅, 𝑇) is as follows: Where R is the rotation matrix and R is an orthogonal matrix. T is a translation matrix, and T is a 3-dimensional column vector; Step 2: Calculate the weights: The key to choosing an iterative method lies in Numbers and Function selection, through and Two relationships are used to construct weight factors and equivalent rights Then, iterative adjustment is performed to solve the problem. The weight of each pair of matched feature points is determined based on the distance residual, as shown in the following formula: If a rigid estimate exists, it is substituted; otherwise, it is... The initial values are based on the identity matrix. The initial value is substituted with the zero vector; let , For point clouds The weighted center, For point clouds The weighting center; using an independent column vector To replace the translation vector , that is The objective function changes to: Step 3: Calculate the new rotation and translation matrices ; due to all With all The sum of all vectors equals zero. With all Sum and scalar The product is still a zero vector, and the IGG weight function formula simplifies to: in Represented as: when as well as When the minimum is reached, the entire objective function is minimized. This is achieved using a singular value decomposition method. Decompose for The singular values of the decomposition, according to Find In some special cases, a reflection matrix may appear. At this time Solve ,according to And solve Solve for the value ; Step 4: Calculate the objective function: According to the calculation and Calculate the objective function , judge If the above steps are not repeated; Step 5: Calculate the robust model: The robust estimation principle includes: The robust model is used for robust estimation, including the Huber robust model and / or the IGG robust model.
2. The scanning measurement method according to claim 1, characterized in that, Also includes: The voxel grid method is used to downsample the classified 3D point cloud data. And / or filter the 3D point cloud data information.
3. A structured light 3D scanning measurement system, characterized in that, The scanning measurement method according to any one of claims 1 to 2 includes: Structured light 3D scanning camera is used to acquire 3D point cloud information of the object being measured; A black-painted scanning turntable is used to acquire 3D point cloud data of the object under test from multiple angles, and the black paint is used to remove point cloud information that is not the object under test. A 3D measurement processing unit is used to implement the scanning measurement method. The 3D measurement processing unit includes: The camera acquisition control module is used to control the scanning camera to acquire 3D point cloud data information of the object under test; The coarse stitching processing module is used for coarse stitching of 3D point cloud data information; The precision stitching processing module is used to precisely stitch together 3D point cloud data.
4. The scanning measurement system according to claim 3, characterized in that, The 3D measurement and processing unit also includes: The downsampling processing module is used to perform downsampling processing on the 3D point cloud data information; and / or a filtering processing module, used to filter the 3D point cloud data information.
5. The scanning measurement system according to claim 4, characterized in that, The 3D measurement and processing unit also includes: The 3D scanning camera position adjustment module is used to adjust the relative position of the 3D scanning camera and the object being measured. and / or a calibration module, used to calibrate the structured light 3D scanning camera during initialization; and / or a turntable motion control module, used to drive the turntable motion to realize the conversion of different postures of the object under test.
6. The scanning measurement system according to any one of claims 3 to 5, characterized in that, Also includes: A computer for loading the 3D measurement processing unit.
7. The scanning measurement system according to any one of claims 3 to 5, characterized in that, Also includes: Hardware combining OpenMP and CUDA is used to run the 3D measurement processing unit.