Corrugated plate depth detection method based on laser scanning three-dimensional point cloud
Through the corrugated plate depth detection method based on laser scanning three-dimensional point clouds, the optimal scanning posture is obtained using the robotic arm and laser sensor, and combined with the DBSCAN and RANSC algorithms to optimize the measurement results, the measurement instability caused by the reflection of corrugated plates and the diversity of models is solved, achieving high-precision and stable depth detection.
Patent Information
- Application Number
- CN202510096753.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-22
- Publication Date
- 2025-06-03
AI Technical Summary
The prior art has problems in the depth detection of corrugated plates with reflection characteristics leading to high noise, poor measurement accuracy and stability, and the variety of corrugated plate models and warping after stamping lead to unstable measurement results.
The corrugated plate depth detection method based on laser scanning three-dimensional point clouds is adopted, and the detection device is composed of a robotic arm and a linear structure laser sensor. The noise level is collected using hand-eye calibration and multiple rotation postures to obtain the best scanning posture and reduce reflective noise; and the measurement results are optimized through the DBSCAN point cloud clustering algorithm and the RANSC fitting plane algorithm.
It effectively reduces the measurement error caused by the reflection of corrugated plates. It is suitable for corrugated plates of different types and specifications. It is not limited by reflective characteristics or materials, and improves the stability and accuracy of measurement results.
Smart Images

Figure CN120084234A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of machine vision measurement, and particularly relates to a method for detecting the depth of a corrugated plate based on a laser-scanned three-dimensional point cloud. Background Art
[0002] A plate heat exchanger is an efficient heat exchange device used for heat transfer between fluids, and has the advantages of small volume, high heat exchange efficiency, and low price, and is widely used in the medical, energy, and chemical industries. As a key component of the plate heat exchanger, the depth of the corrugations in the corrugated plate is crucial for the heat exchange efficiency and the strength of the plate.
[0003] Currently, the detection of corrugated plates usually uses a manual hand-held depth gauge for sampling measurement. This method is inefficient and time-consuming, and its accuracy mostly depends on the working state of the worker. Zhao Jin and Yuan Weiqi used an image recognition method to identify the depth in the literature "A Method for Measuring the Depth of a Plate Heat Exchanger Based on 2D Depth Images". The problems of this method are as follows: Since the material of the corrugated plate will reflect light at a certain angle, the noise of the captured wave peaks and valleys is large, which has a certain impact on the measurement accuracy. The prior art literature "Research on the Method for Measuring the Depth of Plate Heat Exchanger Plates" proposed three methods to measure the depth using two-dimensional data points, and there is a problem of unstable measurement results. Li Fei and Zhang Ping used the moment in statistics to calculate the corrugation depth parameter to judge the quality of the corrugated plate in the literature "A Method for Processing Plate Heat Exchanger Plate Depth Data". Since the corrugated plate is formed by stamping, there will be warping in some places. Therefore, in traditional manual measurement, it is necessary to press the corrugated plate flat by hand, which will affect the difference between non-contact measurement and contact measurement to a certain extent. In the prior art, the patent publication number is CN119152005A, which discloses a method, system, storage medium, and electronic device for measuring the depth of a corrugated plate. The two-dimensional contour of the corrugation is collected by a line structured light sensor, and the extreme points are taken to calculate the distance. When capturing two-dimensional point data, this method needs to adjust the incident angle of the laser to reduce the noise at the bottom of the wave valley. At the same time, due to the phenomenon of noise or data loss, errors may occur in the extreme points.
[0004] A plate heat exchanger is a device with wide applications in daily work and production. The detection of its core component, the corrugated plate, is very important because it is not only a product quality issue but also affects the production of related industries using the device and the safety of personnel, property, and lives. Therefore, the research on the depth detection of corrugated plates is a work with practical significance. Since the corrugated plate is a reflective part, when performing non-contact measurement, the images or point clouds captured by the camera will have problems such as high noise, resulting in inaccurate and unstable measurement results. At the same time, there are a huge number of types of corrugated plates, and a set of related algorithms need to be set for each type of corrugated plate, which is very cumbersome. Therefore, it is necessary to improve the existing methods. Summary of the Invention
[0005] 1. Technical problem to be solved:
[0006] In view of the above technical problems, the present invention provides a method for detecting the depth of corrugated plates based on laser-scanned three-dimensional point clouds. This method addresses the problems that the reflected light characteristics of corrugated plates cause large noise in the images or point clouds captured by cameras, affecting accuracy or stability. At the same time, considering the diversity of corrugated plate models, this method ensures the generality of the algorithm. Additionally, after stamping, the corrugated plates have a certain amount of stress, resulting in warping, which requires manual intervention to flatten, affecting the stability of measurement results.
[0007] 2. Technical solution:
[0008] A method for detecting the depth of corrugated plates based on laser-scanned three-dimensional point clouds, characterized by comprising the following steps:
[0009] Step 1: Assemble a depth detection device for corrugated plates based on laser scanning. The detection device includes a robotic arm, a slide rail, and a line-structured laser sensor. The slide rail is connected to the end of the robotic arm, and the line-structured laser sensor can move along the long strip-shaped track in the slide rail under the drive of its drive motor. Use a standard ball and a preset calibration algorithm to perform hand-eye calibration on the detection device to convert the flange coordinate system of the robotic arm into the camera coordinate system of the laser sensor.
[0010] Step 2: Place the corrugated plate to be detected, and move the robotic arm so that the surfaces to be detected of the corrugated plate are all within the field of view of the laser sensor. The robotic arm controls the line-structured laser sensor to rotate multiple times with the X-axis and Y-axis of the camera coordinate system as the rotation axes, and record the pose information of the end of the robotic arm at different moments during the rotation process. Obtain the corresponding noise level based on the collected pose information. Compare the values recorded at each position respectively, find the minimum noise level value, return it to the robotic arm, and move the end of the robotic arm to the coordinate corresponding to the minimum noise level value.
[0011] Step 3: Keep the robotic arm stationary, and drive the motor to drive the laser sensor to move along the slide rail. The laser sensor scans the corrugated plate to be detected to obtain point clouds.
[0012] Step 4: Calculate the high-curvature points in the point clouds obtained in Step 3. Denoise the high-curvature points, and use the DBSCAN point cloud clustering algorithm to classify the high-curvature points to obtain the point cloud clusters corresponding to each wave peak and wave valley in the points to be measured of the corrugated plate.
[0013] Step Five: Sort the positions of the obtained wave peaks and wave valleys. Take two adjacent wave peak clusters as a group. Fit a plane to these two wave peak clusters using the RANSC plane fitting algorithm, and then optimize the fitted plane using the plane optimization algorithm. Calculate the distance from the points in the wave valley cluster between the two wave peak clusters to the optimized fitted plane, which is the depth of the corrugation.
[0014] Further, Step Two specifically includes:
[0015] S21: The laser sensor acquires the 2D point cloud of the corrugated board cross-section at the current position, and smooths the 2D point cloud using the MLS point cloud filtering algorithm. Traverse the smoothed point cloud, compare the differences between the smoothed point cloud and the unsmoothed point cloud, and determine whether the points are noise points. Among them, determine whether each point in the point cloud is a noise point through a preset noise threshold, as shown in the following formula:
[0016] P noise,i = |P all,i - P S,i | > T (10)
[0017] In the above formula, T is the preset noise threshold, taking 0.05; P noise,i represents the i-th noise point; P all,i represents the i-th point in the total point cloud; P S,i represents the i-th point in the smoothed point cloud;
[0018] Calculate the noise level value, as shown in the following formula:
[0019]
[0020] In the above formula, N noise represents the number of all obtained noise points, N all represents the total number of the point cloud; ε noise represents the noise level;
[0021] S22: Within the field of view of the laser sensor, use the robotic arm to control the line-structured laser sensor to rotate around its X-axis, collect the pose point clouds of the robotic arm end at a preset number during the rotation process, and calculate the noise level of each pose point cloud based on the noise level method in Step S21.
[0022] S23: Similarly, collect the pose point clouds at a preset number during the rotation process with the Y-axis of the line-structured laser sensor as the rotation axis, and calculate the noise level of each pose point cloud according to the noise level method in Step S21.
[0023] S24: Compare the noise levels of all pose point clouds in S23 and S24, take the coordinates corresponding to the minimum value as the best scanning position, and send the coordinates to the robotic arm. The robotic arm moves its end to this coordinate.
[0024] Further, in Step 3, the line-structured laser sensor scans the corrugated board to be detected to obtain the point cloud P.
[0025] Further, Step 4 specifically includes:
[0026] S41: For the point cloud P collected in Step 3, the maximum number of neighbors to be searched is preset through the KDtree data search algorithm to obtain the neighboring points of each point in the point cloud P; for each point in the point cloud P, calculate the covariance matrix of its neighborhood, and the covariance matrix can capture the distribution and direction of the neighboring points around the central point; define a point P i in the point cloud P and its neighboring points P i1 , P i2 , ···, P ik , where k is the number of neighboring points searched, then the covariance matrix C i is calculated as follows:
[0027]
[0028] In the above formula, is the mean of the neighboring points of point P i ;
[0029] Since the covariance matrix is a symmetric and positive semi-definite matrix, perform eigenvalue decomposition on it as follows:
[0030]
[0031] In the above formula, ∧ i is a diagonal matrix containing eigenvalues λ i1 , λ i2 and λ i3 , and ∨ i is a matrix of corresponding eigenvectors; where λ i1 ≤λ i2 ≤λ i3 is obtained by sorting; Di represents the i-th matrix to be decomposed;
[0032] S42: The eigenvalues of the covariance matrix provide information about the distribution of points in different directions: λ i1 corresponds to the variance along the minimum direction of the distribution, i.e., perpendicular to the surface where the point is located; λ i3 corresponds to the variance along the maximum direction of the distribution, i.e., tangential to the surface where the point is located; the surface curvature of the point is approximated by the eigenvalues of λ i1 , λ i2 and λ i3 ; the curvature calculation formula is as follows:
[0033]
[0034] In the above formula, λ i1 is the minimum eigenvalue, corresponding to the distribution of points in the normal direction of the surface where the point is located; the denominator of the above formula is the sum of all eigenvalues; ρ represents the curvature of the point;
[0035] S43: Calculate the curvature of each point in the point cloud P based on steps S41 and S42;
[0036] S44: Extract all high-curvature points in the point cloud; the high-curvature points are points whose absolute value of curvature is greater than a preset curvature value;
[0037] S45: Preset a search radius and a preset minimum number of points, and use the DBSCAN point cloud clustering algorithm to remove outliers to obtain multiple point cloud clusters; classify and sort the midpoint coordinates of each point cloud cluster, that is, obtain the high-curvature point cloud cluster corresponding to the wave peak, the high-curvature point cloud cluster corresponding to the wave valley, and the relative position of each point cloud cluster.
[0038] Further, step five includes:
[0039] S51: Based on the positions of the obtained wave peaks and wave valleys, obtain the position sorting of the high-curvature point cloud clusters of the wave peaks and wave valleys; respectively fit a preliminary fitting plane for every two adjacent wave peak point cloud clusters through the RANSC plane fitting algorithm; move the plane of the preliminary fitting plane by a preset optimization height according to the normal direction;
[0040] S52: Optimize the preliminary fitting plane through a plane optimization algorithm; specifically:
[0041] Calculate the distance from each point in the two adjacent wave peak point cloud clusters to the preliminary fitting plane, and the formula is as follows:
[0042]
[0043] In the above formula, a, b, c, and d are the plane parameters when the RANSC plane fitting algorithm fits the preliminary fitting plane; (x 0 , y 0 , z 0 ) represents the coordinates of a point in the two adjacent wave peak point cloud clusters;
[0044] Calculate the projection of the point (x 0 , y 0 , z 0 ) on the preliminary fitting plane, as follows:
[0045]
[0046] In the above formula, (x 1 , y 1 , z 1 ) is the point (x0 , y 0 , z 0 ) Coordinates of the projected points on the plane fitted after moving along its corresponding normal direction;
[0047] Calculate the dot product of the vector between the point (x 0 , y 0 , z 0 ) and its projected point (x 1 , y 1 , z 1 ) and the normal vector of the plane, as follows:
[0048]
[0049] In the above formula, v is the vector between the projected points of the two points on the fitted plane; n is the normal vector of the fitted plane; in the above formula, by defining that the dot product signs of the two vectors are the same, as the constraint condition of the plane optimization algorithm, it can ensure that the point in the point cloud cluster is on the same side of the fitted plane;
[0050] S53: Taking the minimum distance from all points in the point cloud cluster to its preliminary fitted plane as the optimization goal, the optimization objective function is the minimum sum of the squares of the distances from each point to the plane fitted after moving along its corresponding normal direction, specifically as follows:
[0051]
[0052] In the above formula, d all represents the optimization objective function, representing the sum of the squares of the distances from all points to the plane; (x i , y i , z i ) is a point i in the high-curvature point cluster;
[0053] S54: Calculate the distances from each point in the valley point cloud cluster in the middle of the adjacent two peak point cloud clusters to the optimized fitted plane respectively, and remove the excessive or too small noise points, then the depth of the corrugation can be obtained.
[0054] 3. Beneficial effects:
[0055] (1) A method for detecting the depth of corrugated plates based on laser-scanned three-dimensional point clouds proposed by this method. Aiming at the reflective characteristics of corrugated plates, first, through multiple rotations of the moving robotic arm, by calculating the noise levels in different poses, the optimal scanning position is obtained, which can effectively reduce the error of the measurement results caused by the reflection of corrugated plates.
[0056] (2) A method for detecting the depth of corrugated plates based on laser-scanned three-dimensional point clouds proposed by this method. The device for detecting the depth of corrugated plates based on laser scanning used by this method can, through the acquisition of the point cloud on the surface of the corrugated plate, not only be applicable to the depth measurement of flat corrugated plates but also to the depth measurement of uneven corrugated plates, without the need for manual intervention to flatten the plate, which may affect the stability of the measurement results.
[0057] In summary, this method can adapt to corrugated plates of different types and specifications, is not limited by the reflective characteristics or materials of the corrugated plate surface. As long as the corresponding curvature threshold is changed, the depth of corrugated plates of different specifications can be measured, which helps to achieve a wider range of applications. Description of the Drawings
[0058] Figure 1 It is the flow chart of the device and algorithm for detecting the depth of corrugated plates based on laser scanning in the present invention;
[0059] Figure 2 It is the schematic diagram of the device for detecting the depth of corrugated plates by laser scanning in the present invention;
[0060] Figure 3 It is the flow chart of the device for obtaining the best scanning pose in the present invention;
[0061] Figure 4 It is the schematic diagram of the specific operation of the device for obtaining the best scanning pose in the present invention;
[0062] Figure 5 It is the schematic diagram of calculating the depth of the corrugated plate for each two adjacent wave-peak point cloud clusters in step five of this method;
[0063] Figure 6 It is the experimental effect diagram of calculating the depth of the corrugated plate for each two adjacent wave-peak point cloud clusters in step five of this method;
[0064] Figure 7 It is the noise level diagram for finding the best scanning pose on the X-axis in the verification example;
[0065] Figure 8 It is the noise level diagram for finding the best scanning pose on the Y-axis in the verification example.
[0066] Description of the reference numerals: robotic arm 1; slide rail 2; drive motor 3; line-structured laser sensor 4; corrugated plate 5; high-curvature point 6; distance from point to plane 7; optimized fitting plane 8. Detailed Embodiment
[0067] The present invention will be specifically described below with reference to the drawings.
[0068] As shown in the atta Figure 1 A method for detecting the depth of corrugated plates based on laser-scanned three-dimensional point clouds, characterized in that it includes the following steps:
[0069] Step 1: Assemble a corrugated board depth detection device based on laser scanning; the detection device includes a robotic arm 1, a slide rail 2, and a line-structured laser sensor 4; the slide rail is connected to the end of the robotic arm, and the line-structured laser sensor can move along the long strip-shaped track in the slide rail under the drive of its drive motor 3; use a standard ball and a preset calibration algorithm to perform hand-eye calibration on the detection device to realize the conversion of the flange coordinate system of the robotic arm into the camera coordinate system of the laser sensor;
[0070] Step 2: Place the corrugated board 5 to be detected, move the robotic arm so that the surfaces to be detected of the corrugated board are all within the field of view of the laser sensor; the robotic arm controls the line-structured laser sensor to rotate multiple times with the X-axis and Y-axis of the camera coordinate system as the rotation axes, and record the pose information of the end of the robotic arm at different times during the rotation process, and obtain the corresponding noise level according to the collected pose information; compare the values recorded at each position respectively, find the minimum noise level value, return it to the robotic arm and make the end of the robotic arm move to the coordinate corresponding to the minimum noise level value;
[0071] Step 3: Keep the robotic arm stationary, drive the motor to drive the laser sensor to move along the slide rail, and the laser sensor scans the corrugated board to be detected to obtain a point cloud;
[0072] Step 4: Calculate the high-curvature points in the point cloud obtained in Step 3; perform denoising processing on the high-curvature points, and use the DBSCAN point cloud clustering algorithm to classify the high-curvature points to obtain the point cloud clusters corresponding to each wave peak and wave valley in the points to be measured of the corrugated board;
[0073] Step 5: Sort the positions where the wave peaks and wave valleys are located, take two adjacent wave peak clusters as a group, fit a plane to these two wave peak clusters through the RANSC plane fitting algorithm, and then optimize the fitted plane with the plane optimization algorithm; calculate the distance from the points in the wave valley cluster between the two wave peak clusters to the optimized fitted plane, which is the depth of the corrugation.
[0074] Further, Step 2 specifically includes:
[0075] S21: The laser sensor obtains the 2D point cloud of the cross-section of the corrugated board at the current position, and performs smoothing processing on the 2D point cloud through the MLS point cloud filtering algorithm; traverse the smoothed point cloud, compare the difference between the smoothed point cloud and the unsmoothed point cloud, and judge whether the point is a noise point; among them, judge whether each point of the point cloud is a noise point through a preset noise threshold, as shown in the following formula:
[0076] Badpoints.i = |Allpoints.i - Smoothpoints.i| > Threshold (1)
[0077] In the above formula, Threshold is a preset noise threshold, taking 0.05; Badpoints.i represents the i-th noise point;
[0078] Allpoints.i represents the i-th point in the total point cloud; Smoothpoints.i represents the i-th point in the smoothed point cloud;
[0079] Calculate the noise level value as follows:
[0080]
[0081] In the above formula, NumBadPoints represents the number of all obtained noise points, TotalPoints represents the total number of the point cloud; NoiseLevel represents the noise level;
[0082] S22: Within the field of view of the line-structured laser sensor, use the robotic arm to control the line-structured laser sensor to rotate around its X-axis, collect a preset number of end pose point clouds of the robotic arm during the rotation, and calculate the noise level of each pose point cloud based on the noise level method in step S21;
[0083] S23: Similarly, collect a preset number of pose point clouds during the rotation around the Y-axis of the line-structured laser sensor, and calculate the noise level of each pose point cloud according to the noise level method in step S21;
[0084] S24: Compare the noise levels of all pose point clouds in S23 and S24, take the coordinates corresponding to the minimum value among them as the best scanning position, and send the coordinates to the robotic arm; the robotic arm moves its end to this coordinate.
[0085] Furthermore, in step three, the line-structured laser sensor scans the corrugated board to be detected to obtain the point cloud P.
[0086] Furthermore, step four specifically includes:
[0087] S41: For the point cloud P collected in step three, preset the maximum number of neighbors to be searched through the KDtree data search algorithm to obtain the neighboring points of each point in the point cloud P; calculate the covariance matrix of the neighborhood for each point in the point cloud P, and the covariance matrix can capture the distribution and direction of the neighboring points around the central point; define a point P in the point cloud P i of the neighboring points P i1 , P i2 , ···, P ik , where k is the number of searched neighboring points, then the calculation formula of the covariance matrix C i is as follows:
[0088]
[0089] In the above formula, is the mean of the neighboring points of point P i ;
[0090] Since the covariance matrix is symmetric and positive semi - definite, perform eigenvalue decomposition on it as follows:
[0091]
[0092] In the above formula, ∧ i contains the eigenvalues λ i1 , λ i2 and λ i3 in a diagonal matrix, and ∨ i is the matrix corresponding to the eigenvectors; where by sorting, λ i1 ≤λ i2 ≤λ i3 ; Di represents the i - th matrix to be decomposed;
[0093] S42: The eigenvalues of the covariance matrix provide information about the distribution of points in different directions: λ i1 corresponds to the variance along the minimum direction of the distribution, that is, perpendicular to the surface where the point is located; λ i3 corresponds to the variance along the maximum direction of the distribution, that is, tangential to the surface where the point is located; the surface curvature of the point is approximated by the eigenvalues of λ i1 , λ i2 and λ i3 ; the curvature calculation formula is as follows:
[0094]
[0095] In the above formula, λ i1 is the minimum eigenvalue, corresponding to the distribution of the point in the normal direction of the surface where the point is located; the denominator of the above formula is the sum of all eigenvalues; Curvature represents the curvature of the point;
[0096] S43: Calculate the curvature of each point in the point cloud P based on steps S41 and S42;
[0097] S44: Extract all high - curvature points in the point cloud; the high - curvature points are points whose absolute value of curvature is greater than the preset curvature value;
[0098] S45: Preset a search radius and a preset minimum number of points. Through the DBSCAN point - cloud clustering algorithm, remove outliers to obtain multiple point - cloud clusters; classify and sort the mid - point coordinates of each point - cloud cluster, that is, obtain the high - curvature point - cloud cluster corresponding to the wave peak, the high - curvature point - cloud cluster corresponding to the wave valley, and the relative positions of each point - cloud cluster.
[0099] Furthermore, step five includes:
[0100] S51: Based on the positions of the obtained wave peaks and wave troughs, obtain the position sorting of the point cloud clusters of the wave peaks and wave troughs; respectively fit the preliminary fitting planes for every two adjacent wave peak point cloud clusters through the RANSC plane fitting algorithm; move the planes of the preliminary fitting planes by a preset optimization height according to the normal direction;
[0101] S52: Optimize the preliminary fitting planes through the plane optimization algorithm; specifically:
[0102] Calculate the distance from each point in the two adjacent wave peak point cloud clusters to the preliminary fitting plane. The formula is as follows:
[0103]
[0104] In the above formula, a, b, c, and d are the plane parameters when the RANSC plane fitting algorithm fits the preliminary fitting plane; (x 0 , y 0 , z 0 ) represents the coordinates of a point in the two adjacent wave peak point cloud clusters;
[0105] Calculate the projection of the point (x 0 , y 0 , z 0 ) on the preliminary fitting plane, as follows:
[0106]
[0107] In the above formula, (x 1 , y 1 , z 1 ) are the coordinates of the projection point of the point (x 0 , y 0 , z 0 ) on the plane obtained by fitting after moving along the normal direction;
[0108] Calculate the dot product of the vector between the point (x 0 , y 0 , z 0 ) and its projection point (x 1 , y 1 , z 1 ) and the normal vector of the plane, as follows:
[0109]
[0110] In the above formula, v is the vector between the projection points of the two points on the fitting plane; n is the normal vector of the fitting plane; in the above formula, by defining that the dot product signs of the two vectors are the same, it is used as the constraint condition of the plane optimization algorithm, that is, it can ensure that the point in the point cloud cluster is on the same side of the fitting plane;
[0111] S53: With the minimum distance from all points in the point cloud cluster to its preliminary fitted plane as the optimization objective, the optimization objective function is the minimum sum of the squares of the distances from each point to the plane fitted after moving along its corresponding normal vector, as follows:
[0112]
[0113] In the above formula, Alldis represents the optimization objective function, which is the sum of the squares of the distances from all points to the plane; (x i , y i , z i ) is a point i in the high-curvature point cluster;
[0114] S54: Calculate the distances from each point in the middle valley point cloud cluster between two adjacent peak point cloud clusters to the optimized fitted plane respectively, and remove the excessive or too small noise points, then the depth of the corrugation can be obtained.
[0115] Verification example:
[0116] The steps of this verification example are as shown in the attached Figure 1 , which is the overall flowchart for measuring the depth of the corrugated plate; the device is as shown in the attached Figure 2 , which is a schematic diagram of the laser scanning corrugated plate depth detection device of this method and the corrugated plate to be detected; in the figure, 1 is the robotic arm, 2 is the slide rail, 3 is the servo motor, 4 is the line-structured laser sensor, and 5 is the corrugated plate.
[0117] As Figure 3 is the flowchart for obtaining the optimal scanning pose in step two of this method, Figure 4 is the schematic diagram of the operation of this step. The robotic arm controls the line-structured laser sensor to rotate along the X-axis and Y-axis of the camera coordinate system to collect multiple poses, compares the noise levels of the collected poses, and selects the one with the minimum noise level value as the optimal scanning pose of the line-structured laser sensor at the end of the robotic arm. Figure 7 , 8 are respectively the point cloud on the corrugated plate surface and the corresponding pose noise levels obtained when searching for the optimal scanning pose noise levels along the X-axis and Y-axis. By comparing the noise levels, the optimal scanning pose of the robotic arm can be obtained.
[0118] Figure 5 is the schematic diagram for calculating the corrugated plate depth between every two adjacent peak point cloud clusters, Figure 6 is the experimental effect diagram of this process. Figure 5 In, the upward line with an arrow is the schematic of the depth collected from the front of the corrugated plate; the downward line with a screenshot is the schematic of the depth collected with the bottom surface of the corrugated plate facing up; by collecting the two surfaces, the error of depth collection can be reduced.
[0119] In order to compare with the errors of the corrugated plate depth measured by traditional contact measurement, multiple sets of comparative examples were made in this application; among them, the manual contact measurement was to directly measure the depth by using a percentile depth gauge of the MastCorrect S330 model close to the surface of the corrugated plate. The following table shows part of the results of this method and manual contact measurement and the analysis data of the errors:
[0120]
[0121]
[0122] It can be seen from the above table that this method can effectively reduce the measurement error compared with the traditional contact measurement. At the same time, the applicant has also conducted a large number of experiments on using a non-linear structure laser as an image acquisition device for depth measurement, and the problem of poor shooting effect caused by the reflection of the corrugated plate can also be avoided in a large number of experiments.
[0123] Although the present invention has been disclosed above with preferred embodiments, they are not used to limit the present invention. Any person skilled in this art can make various changes or modifications without departing from the spirit and scope of the present invention. Therefore, the protection scope of the present invention should be defined by the protection scope of the claims of this application.
Claims
1. A method for detecting the depth of a corrugated plate based on a three-dimensional point cloud scanned by laser, characterized in that: The following steps are involved: Step 1: Assemble a corrugated plate depth detection device based on laser scanning; the detection device includes a mechanical arm, a slide rail and a linear structure laser sensor; the slide rail is connected to the end of the mechanical arm, and the linear structure laser sensor can move along the long track in the slide rail driven by its driving motor; use a standard ball and a preset calibration algorithm to perform hand-eye calibration on the detection device to realize the conversion of the flange coordinate system of the mechanical arm into the camera coordinate system of the laser sensor; Step 2: Place the corrugated plate to be tested, move the robotic arm so that the surface of the corrugated plate to be tested is within the field of view of the laser sensor; the robotic arm controls the linear structure laser sensor to rotate it multiple times with the X-axis and Y-axis of the camera coordinate system as the rotation axis, and records the posture information of the end of the robotic arm at different times during the rotation process, and obtains the corresponding noise level based on the collected posture information; compare the values recorded at each position, find the minimum noise level value, return it to the robotic arm, and move the end of the robotic arm to the coordinate corresponding to the minimum noise level value; Step 3: The robotic arm remains stationary, and the driving motor drives the laser sensor to move along the slide rail. The laser sensor scans the corrugated plate to be inspected to obtain a point cloud; Step 4: Calculate the high curvature points in the point cloud obtained in step 3; perform denoising on the high curvature points, and classify the high curvature points using the DBSCAN point cloud clustering algorithm to obtain the point cloud clusters corresponding to each crest and trough in the corrugated plate test point; Step 5: Sort the positions of the obtained peaks and valleys, and group two adjacent peak clusters. Fit the planes of these two peak clusters using the RANSC plane fitting algorithm, and then optimize the fitted planes using the plane optimization algorithm. The distance from the point in the trough cluster between the two peak clusters to the optimized fitting plane is calculated as the depth of the ripple.
2. The method for detecting the depth of a corrugated plate based on a three-dimensional point cloud scanned by laser according to claim 1, characterized in that: Step 2 specifically includes: S21: The laser sensor obtains the 2D point cloud of the corrugated plate cross section at the current position, and smoothes the 2D point cloud by using the MLS point cloud filtering algorithm; traverses the smoothed point cloud, compares the difference between the smoothed point cloud and the unsmoothed point cloud, and determines whether the point is a noise point; wherein, the determination of whether each point of the point cloud is a noise point is realized by presetting the noise threshold, as shown in the following formula: P noise,i =|P all,i -P S,i |>T (1) In the above formula, T is the preset noise threshold, which is 0.05; P noise,i represents the i-th noise point; P all,i represents the i-th point in the total point cloud; P S,i Represents the i-th point in the smooth point cloud; Calculate the noise level value as follows: In the above formula, N noise Represents the number of all noise points obtained, N all Represents the total number of point clouds; ε noise Indicates the noise level; S22: within the field of view of the laser sensor, the robot arm is used to control the linear structure laser sensor to rotate with its X axis as the rotation axis, a preset number of robot arm end posture point clouds are collected during the rotation process, and the noise level of each posture point cloud is calculated based on the noise level method of step S21; S23: Similarly, a preset number of pose point clouds are collected during the rotation process with the Y axis of the linear structure laser sensor as the rotation axis, and the noise level of each pose point cloud is calculated according to the noise level method of step S21; S24: Compare the noise levels of all the pose point clouds in S23 and S24, take the coordinates corresponding to the smallest value as the best scanning position, and send the coordinates to the robotic arm; the robotic arm moves its end to the coordinates.
3. The method for detecting the depth of a corrugated plate based on a three-dimensional point cloud scanned by laser according to claim 1, characterized in that: In step 3, the centerline structure laser sensor scans the corrugated plate to be inspected to obtain a point cloud P.
4. The method for detecting the depth of a corrugated plate based on a laser scanning three-dimensional point cloud according to claim 3, characterized in that: Step 4 specifically includes: S41: For the point cloud P collected in step 3, the maximum number of neighbors searched is preset by the KDtree data search algorithm to obtain the neighboring points of each point in the point cloud P; for each point in the point cloud P, the covariance matrix of its neighborhood is calculated, and the covariance matrix can capture the distribution and direction of the neighboring points around the central point; define a point P in the point cloud P i The neighboring point P i1 ,P i2 ,···,P ik , k is the number of adjacent points searched, then the covariance matrix C i The calculation formula is as follows: In the above formula, For point P i The mean of the neighboring points of ; Since the covariance matrix is symmetric and semi-positive definite, the eigenvalue decomposition is performed as follows: In the above formula, ∧ i Contains eigenvalue λ i1 , i2 and λ i3 The diagonal matrix of i is the matrix corresponding to the eigenvectors; where λ is sorted so that i1 ≤λ i2 ≤λ i3 ; Di represents the i-th matrix to be decomposed; S42: The eigenvalues of the covariance matrix provide information about the distribution of points in different directions: i1 corresponds to the variance along the direction of minimum distribution, i.e. perpendicular to the surface where the point is located; λ i3 corresponds to the variance along the maximum direction of the distribution, i.e., tangent to the surface at the point; the surface curvature of the point is given by λ i1 , i2 and λ i3 The curvature is calculated by the following formula: In the above formula, λ i1 is the minimum eigenvalue, corresponding to the distribution of the point in the direction of the surface normal where the point is located; the denominator of the above formula is the sum of all eigenvalues; ρ represents the curvature of the point; S43: Calculate the curvature of each point in the point cloud P based on steps S41 and S42; S44: extracting all high curvature points in the point cloud; the high curvature points are points whose absolute value of curvature is greater than a preset curvature value; S45: Preset the search radius and the minimum number of points, and use the DBSCAN point cloud clustering algorithm to remove outliers to obtain multiple point cloud clusters; classify and sort the midpoint coordinates of each point cloud cluster, that is, obtain the high curvature point cloud cluster corresponding to the peak, the high curvature point cloud cluster corresponding to the trough, and the relative position of each point cloud cluster.
5. The method for detecting the depth of a corrugated plate based on laser scanning three-dimensional point cloud according to claim 4, characterized in that: Step five includes: S51: based on the obtained positions of the peaks and troughs, obtain the position sorting of the point cloud clusters of the peaks and troughs; respectively fit every two adjacent peak point cloud clusters by the RANSC plane fitting algorithm to obtain a preliminary fitting plane; and move the plane of the preliminary fitting plane by a preset optimization height according to the normal direction; S52: Optimize the preliminary fitting plane by plane optimization algorithm; specifically: Calculate the distance from each point in the two adjacent peak point cloud clusters to the preliminary fitting plane. The formula is as follows: In the above formula, a, b, c, d are the plane parameters when the RANSC plane fitting algorithm fits the initial fitting plane; (x0, y0, z0) represents the coordinates of a point in the two adjacent peak point cloud clusters; Calculate the projection of the point (x0, y0, z0) on the preliminary fitting plane as follows: In the above formula, (x1, y1, z1) are the coordinates of the projection point of the point (x0, y0, z0) on the plane fitted after its corresponding normal movement; Calculate the dot product of the vector between the point (x0, y0, z0) and its projection point (x1, y1, z1) and the plane normal vector as follows: In the above formula, v is the vector between the projection points of the two points on the fitting plane; n is the normal vector of the fitting plane; in the above formula, by defining the dot product of the two vectors to have the same sign, it is used as a constraint condition of the plane optimization algorithm, that is, it can ensure that the points in the point cloud cluster are on the same side of the fitting plane; S53: The optimization goal is to minimize the distance from all points in the point cloud cluster to their preliminary fitting plane. The optimization objective function is to minimize the sum of the squares of the distances from each point to the plane fitted after its corresponding normal movement. The specific formula is as follows: In the above formula, d all represents the optimization objective function, which represents the sum of the squares of the distances from all points to the plane; (x i ,y i 、z i ) is a point i in the high curvature point cluster; S54: Calculate the distance from each point of the trough point cloud cluster between the two adjacent peak point cloud clusters to the optimized fitting plane, remove the noise points that are too large or too small, and then obtain the depth of the ripple.
Citation Information
Patent Citations
Corrugated plate depth measurement method and system, storage medium and electronic equipment
CN119152005A
Cited By
Slide rail quality detection method, detector and computer readable storage medium
CN121252653A