A roughness evaluation method for irregular surfaces based on moving window method of 3D point cloud data
Through the moving window method based on three-dimensional point cloud data, the three-dimensional space is divided and plane fitting and undulation calculation is performed, the problem of irregular surface roughness evaluation is solved, and the efficient roughness evaluation of any surface is realized, which simplifies the process and Improved evaluation efficiency.
Patent Information
- Application Number
- CN202410885650.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-07-03
- Publication Date
- 2025-01-07
- Estimated Expiration
- 2044-07-03
AI Technical Summary
The prior art is difficult to effectively evaluate irregular surface roughness, especially in three-dimensional point cloud data. The calculation cost is high and affected by data quality, and it is impossible to accurately obtain irregular surface roughness indexes.
Using the mobile window method based on three-dimensional point cloud data, multiple regional point cloud data are formed by segmenting the three-dimensional space, plane fitting and undulation calculation are performed, and overall roughness indicators are obtained, which simplifies the process and improves evaluation efficiency.
It realizes efficient evaluation of the surface roughness of any surface, avoids complex surface fitting steps, simplifies the process, improves the evaluation efficiency, and is suitable for any surface.
Smart Images

Figure CN118864771B_ABST
Abstract
Description
Technical Field
[0001] The invention belongs to the technical field of three-dimensional point cloud surface fitting, and in particular relates to an irregular surface roughness evaluation method based on a three-dimensional point cloud data moving window method. Background Art
[0002] By using a three-dimensional laser to quickly scan the target object, high-precision point cloud data can be directly obtained. By processing the point cloud data, the target object can be three-dimensionally modeled. This technology has been widely used in surveying and mapping engineering, structural measurement, cultural relics protection and other fields. Among them, obtaining information such as the surface morphology of the target object, such as roughness, is of great significance for metal cutting and rock structure surface identification. In most cases, the morphological structure of the surface of the target object is a regular plane or surface such as a cylinder, a sphere, etc., and it is easy to carry out point cloud fitting analysis and obtain the roughness index. However, for irregular surfaces, in the prior art, it is necessary to describe and characterize the surface through a combination of many but finite B-spline curves and NURBS curves to obtain the surface fitting parameter equation and then obtain the surface roughness. This method has a high computational cost and is affected by the quality of the point cloud data. Sometimes it is even difficult to obtain a fitting surface and it is impossible to obtain the roughness index of the irregular surface. Therefore, how to obtain the surface roughness of any irregular surface simply and efficiently based on its three-dimensional point cloud data is a difficult problem that needs to be solved at present. Summary of the invention
[0003] In view of the defects of the prior art, the present invention provides an irregular surface roughness evaluation method based on a three-dimensional point cloud data moving window method, which can effectively solve the above problems.
[0004] The technical solution adopted by the present invention is as follows:
[0005] The present invention provides an irregular surface roughness evaluation method based on a three-dimensional point cloud data moving window method, comprising the following steps:
[0006] Step S1, obtaining three-dimensional point cloud data of the surface of the object to be measured; determining the three-dimensional spatial range of the three-dimensional point cloud data;
[0007] Step S2, the current cycle stage number is represented by m; the initial value of m is 1;
[0008] Step S3, determine the moving window size R which is inversely related to the current cycle stage number m m and the moving step length d m ; Among them, R m The moving window size used when indicating the number of stages in the mth cycle; d m The moving step length used when indicating the number of stages in the mth cycle;
[0009] Step S4: within the three-dimensional space, the moving window starts from the starting area and moves in steps of d. m Step by step, the size is R m The moving window is moved until the three-dimensional space range is covered; whenever the moving window moves to a certain area, the three-dimensional point cloud data currently covered by the moving window is called regional point cloud data; therefore, assuming that the moving window starts from the starting area and covers a total of N areas, N regional point cloud data are formed by segmentation, which are respectively represented as regional point cloud data Z m1 ,Z m2 ,…,Z mN ;
[0010] Step S5: for each area point cloud data Z mu , u=1,2,…,N, perform plane fitting to obtain the fitting plane; then calculate the point cloud data Z of the area mu The fluctuation between each coordinate point and the fitting plane is obtained to obtain the point cloud data Z of each area mu The corresponding fluctuation set h mu ;
[0011] Thus, we get N sets of fluctuations, which are: h m1 ,h m2 ,…,h mN ; Comprehensively analyze all the fluctuations of N fluctuation sets to obtain the overall roughness index γ at the mth cycle stage m ;
[0012] Step S6, determine whether the termination condition is met, if not, set m=m+1 and return to step S3; if satisfied, execute step S7;
[0013] Step S7: Assume that a total of M cycles are performed, thus obtaining M overall roughness indices, forming an overall roughness index sequence γ = {γ1,γ2,…,γ M}; for the overall roughness index sequence of γ1,γ2,…,γ M Further analysis is performed to obtain the surface roughness evaluation results of the object.
[0014] Preferably, in step S1, determining the three-dimensional spatial range of the three-dimensional point cloud data is specifically:
[0015] Determine the minimum value x in the x direction of the 3D point cloud data on the surface of the object to be measured min and the maximum value x max , the minimum value y in the y direction min and the maximum value y max , the minimum value z in the z direction min and the maximum value z max, thus we get the coordinates of two vertices, namely: vertex (x min ,y min ,z min ) and vertex (x max ,y max ,z max ), with vertex (x min ,y min ,z min ) to the vertex (x max ,y max ,z max ) as the diagonal line, is the three-dimensional space range of the three-dimensional point cloud data.
[0016] Preferably, step S3 specifically comprises:
[0017] Use formula (1) to determine the moving window size R m :
[0018]
[0019] Among them: a m ,b m ,c m , respectively represent the moving window R m Dimensions in the x, y and z directions;
[0020] Use formula (2) to determine the moving step length d m :
[0021] d m =(d mx ,d my ,d mz )=(λa m ,λb m ,λc m ) (2)
[0022] Where: d mx ,d my ,d mz , respectively represent the moving window R m The moving step size in the x, y and z directions; λ represents the proportional coefficient; 0<λ<1.
[0023] Preferably, step S4 is specifically:
[0024] Step S4.1: When the moving window is located in the starting area, the lower left corner of the moving window coincides with the lower left corner of the three-dimensional space range, and the coincidence point is the vertex (x min ,y min ,z min); At this time, the coordinates of the two vertices of the diagonal line of the area covered by the moving window are: (x min ,y min ,z min ) and (x min +a m ,y min +b m ,z min +c m ), separate and obtain the corresponding regional point cloud data;
[0025] Step S4.2: Move the window starting from the starting area in the x direction with a step size d. mx Move in sequence, that is, change the window starting point to (x min +id mx ,y min ,z min ), where i = 0, 1, 2, ..., N x ,N x represents the total number of times the x direction needs to be moved, i represents the number of times the x direction is moved, ceil() means rounding up, thus we get N x +1 regional point cloud data, forming the x-direction regional point cloud data set Z x = {Z xi |i=0,1,2…N x};
[0026] Step S4.3: Move the window to each position moved to in the x direction in step S4.2 as the starting point, and move the window in the y direction by a step size d. my Move in sequence, that is, change the window starting point to (x min +id mx ,y min +jd my ,z min ), where j = 0, 1, 2, ..., N y ,N y represents the total number of times the y direction needs to be moved, j represents the number of times the y direction is moved, ceil() means rounding up, so (N x +1)(N y +1) regional point cloud data, forming a regional point cloud data set Z in the x and y directions xy = {Z i,j |i=0,1,2…N x ; j = 0, 1, 2…N y};
[0027] Step S4.4, moving the window with each position moved to in the x and y directions in step S4.3 as the starting point, and moving the window in the z direction by a step length dmz Move in sequence, that is, change the window starting point to (x min +id mx ,y min +jd my ,z min +kd mz ), where k = 0, 1, 2, ..., N z ,N z represents the total number of times the z direction needs to be moved, k represents the number of times the z direction is moved, ceil() means rounding up, so (N x +1)(N y +1)(N z +1) regional point cloud data, forming a regional point cloud data set Z in the x, y and z directions xyz = {Z i,j,k |i=0,1,2…N x ; j = 0, 1, 2…N y ; k = 0, 1, 2…N z};
[0028] For the regional point cloud data set Z xyz = {Z i,j,k |i=0,1,2…N x ; j = 0, 1, 2…N y ; k = 0, 1, 2…N z Each regional point cloud data in} is numbered in sequence, which is the regional point cloud data Z m1 ,Z m2 ,…,Z mN .
[0029] Preferably, step S5 is specifically:
[0030] Step S5.1: for N area point cloud data Z m1 ,Z m2 ,…,Z mN Each area point cloud data Z mu The validity test is carried out as follows: According to formula (3), the regional point cloud data Z is identified mu The number of point clouds included is denoted as D mu , and with the preset minimum value D min For comparison, if D mu <D min , then the regional point cloud data Z mu For invalid areas, delete the point cloud data Z in this area mu All point clouds in D mu =0; if D mu ≥D min , then the regional point cloud data Zmu is the valid area, and the point cloud data Z in this area is retained mu All point clouds in D mu Remain unchanged and for the valid area point cloud data Z mu Execute step S5.2:
[0031]
[0032] Step S5.2: for each valid region point cloud data Z mu , the least square method is used to fit the plane to all the point clouds it contains, and the fitting plane P is obtained mu , fitting plane P mu The expression is: Ax+By+z+C=0; where A, B and C are the x-term coefficient, y-term coefficient and constant term of the fitting plane respectively;
[0033] Step S5.3, for the valid area point cloud data Z mu , and each point cloud coordinate is represented as (x * ,y * ,z * ), using formula (4), calculate each point cloud (x * ,y * ,z * ) and the fitting plane P mu The fluctuation degree h * :
[0034]
[0035] Where: h * <0, indicating that the point is located on the fitting plane P mu Degree of concavity below, h * >0, indicating that the point is located on the fitting plane P mu The convexity of the upper part;
[0036] Therefore, for each valid area point cloud data Z mu , multiple fluctuations h* are obtained to form a fluctuation set h mu ;
[0037] Step S5.4, for all valid area point cloud data Z mu , the obtained fluctuations h * Form the current moving window R m The corresponding fluctuation set;
[0038] Step S5.5, analyzing the fluctuation set obtained in step S5.4 to obtain the overall roughness index γ m .
[0039] Preferably, the overall roughness index γ m It includes the maximum peak height of the surface profile, the maximum valley depth of the surface profile, the maximum height of the surface profile, the arithmetic mean deviation of the surface profile, and the root mean square deviation of the surface profile.
[0040] Preferably, the fluctuation degree set obtained in step S5.4 includes num fluctuation degrees, which are sequentially represented as: h1, h2, ..., h num ; Using formula (5), we can get the arithmetic mean deviation Sa and the root mean square deviation Sq of the surface profile:
[0041]
[0042] Where: h v represents h1,h2,…,h num The vth element in , v = 1, 2,…, num.
[0043] Preferably, in step S6, the termination conditions include two types:
[0044] The first method is to determine whether the change rate of the overall roughness index obtained twice before and after is less than the set value ε, that is: If yes, the termination condition is met;
[0045] The second method is to determine whether the maximum number of iterations Q is reached, that is, m>Q. If so, the termination condition is met.
[0046] Preferably, step S7 specifically adopts the following two methods:
[0047] The first type: for M overall roughness indices γ1,γ2,…,γ M , corresponding to M moving window sizes R1, R2, ..., R M , taking the moving window size R as the independent variable and the overall roughness index γ as the dependent variable, the changing trends of the overall roughness index γ and the moving window size R are analyzed and a fitting function is constructed. When the moving window size R tends to 0, the overall roughness index γ obtained is the final object surface roughness evaluation result;
[0048] The second type: for M overall roughness indices γ1,γ2,…,γ M , corresponding to M cycle stages; analyze the change trend between the overall roughness index γ and the cycle stage number m and construct a fitting function, whose expression is: γ m =g(m), and using formula (6), we can get the final object surface roughness evaluation result:
[0049]
[0050] This completes the surface roughness evaluation of the object.
[0051] The irregular surface roughness evaluation method based on the three-dimensional point cloud data moving window method provided by the present invention has the following advantages:
[0052] The present invention obtains surface point cloud data of the surface to be measured by three-dimensional laser scanning or other methods, constructs moving windows of different scales, uses moving windows to separate and obtain local point cloud data, performs micro-plane fitting and calculates local fluctuation parameters, and finally obtains roughness parameters such as Sa, Sq, etc. of the surface under the moving window of this scale, and then analyzes the relationship between the moving window size and the roughness parameter, determines the surface roughness based on the limit theory, and then realizes the surface roughness parameter evaluation of special complex surfaces. The present invention can directly and efficiently obtain the surface roughness according to the point cloud data, and is applicable to any surface, avoiding complex surface fitting steps, simplifying the process, and improving the efficiency of surface roughness evaluation. BRIEF DESCRIPTION OF THE DRAWINGS
[0053] Figure 1 A schematic flow chart of an irregular surface roughness evaluation method based on a three-dimensional point cloud data moving window method provided by the present invention;
[0054] Figure 2 It is an overall point cloud data graph of the object surface provided by an embodiment of the present invention;
[0055] Figure 3 is a rough surface map of an object provided by an embodiment of the present invention;
[0056] Figure 4 is a schematic diagram of a moving window effect provided by an embodiment of the present invention;
[0057] Figure 5 It is a fitting relationship diagram between roughness and the number of cycle stages provided in an embodiment of the present invention. DETAILED DESCRIPTION
[0058] In order to make the technical problems, technical solutions and beneficial effects solved by the present invention more clearly understood, the present invention is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not used to limit the present invention.
[0059] For surface contours with excessive curvature, irregular surfaces, or surfaces that cannot be clearly fitted, there is no mature method for obtaining roughness evaluation based on point cloud data. The present invention provides a method for directly evaluating surface roughness based on point cloud data, which is applicable to any surface, avoids complex surface fitting steps, simplifies the surface roughness evaluation process, and improves evaluation efficiency.
[0060] The embodiment of the present invention discloses a method for evaluating the roughness of an irregular surface based on a moving window method of three-dimensional point cloud data, and the implementation process is as follows: Figure 1 As shown, the specific implementation steps are as follows:
[0061] Step S1, obtaining three-dimensional point cloud data of the surface of the object to be measured; determining the three-dimensional spatial range of the three-dimensional point cloud data;
[0062] In this embodiment, a 3D scanner or other method is used to obtain 3D point cloud data of the surface of the object to be measured; then, a series of point cloud data is generated according to the cylindrical surface equation, and then a corresponding fluctuation parameter sequence is generated according to a one-dimensional normal distribution function (with an average value of 0 and a standard deviation of 0.4), and then the point cloud data is corrected according to the fluctuation. Figure 2 As shown, the rough surface formed is Figure 3 shown.
[0063] In step S1, the three-dimensional spatial range of the three-dimensional point cloud data is determined as follows:
[0064] Determine the minimum value x in the x direction of the 3D point cloud data on the surface of the object to be measured min and the maximum value x max , the minimum value y in the y direction min and the maximum value y max , the minimum value z in the z direction min and the maximum value z max , thus we get the coordinates of two vertices, namely: vertex (x min ,y min ,z min ) and vertex (x max ,y max ,z max ), with vertex (x min ,y min ,z min ) to the vertex (x max ,y max ,z max ) as the diagonal line, is the three-dimensional space range of the three-dimensional point cloud data.
[0065] Step S2, the current cycle stage number is represented by m; the initial value of m is 1;
[0066] Step S3, determine the moving window size R which is inversely related to the current cycle stage number m m and the moving step length d m ; Among them, R m The moving window size used when indicating the number of stages in the mth cycle; d m The moving step length used when indicating the number of stages in the mth cycle;
[0067] Step S3 is specifically as follows:
[0068] Use formula (1) to determine the moving window size R m :
[0069]
[0070] Among them: a m ,b m ,c m , respectively represent the moving window R m Dimensions in the x, y and z directions;
[0071] Use formula (2) to determine the moving step length d m :
[0072] d m =(d mx ,d my ,d mz )=(λa m ,λb m ,λc m ) (2)
[0073] Where: d mx ,d my ,d mz , respectively represent the moving window R m The moving step length in the x direction, y direction and z direction; λ represents the proportional coefficient; 0<λ<1. In this embodiment, since the rough surface point cloud data to be measured is artificially generated, a can be set m =b m =c m , and set λ = 0.85. In practical applications, λ can be set according to needs.
[0074] Step S4, within the three-dimensional space, as Figure 4 As shown, the moving window starts from the starting area and moves in steps of d. m Step by step, the size is R m The moving window is moved until the three-dimensional space range is covered; whenever the moving window moves to a certain area, the three-dimensional point cloud data currently covered by the moving window is called regional point cloud data; therefore, assuming that the moving window starts from the starting area and covers a total of N areas, N regional point cloud data are formed by segmentation, which are respectively represented as regional point cloud data Z m1 ,Z m2 ,…,Z mN ;
[0075] Step S4 is specifically as follows:
[0076] Step S4.1: When the moving window is located in the starting area, the lower left corner of the moving window coincides with the lower left corner of the three-dimensional space range, and the coincidence point is the vertex (x min ,y min ,z min ); At this time, the coordinates of the two vertices of the diagonal line of the area covered by the moving window are: (x min ,y min ,z min ) and (x min +a m ,y min +b m ,z min +c m ), separate and obtain the corresponding regional point cloud data;
[0077] Step S4.2: Move the window starting from the starting area in the x direction with a step size d. mx Move in sequence, that is, change the window starting point to (x min +id mx ,y min ,z min ), where i = 0, 1, 2, ..., N x ,N x represents the total number of times the x direction needs to be moved, i represents the number of times the x direction is moved, ceil() means rounding up, thus we get N x +1 regional point cloud data, forming the x-direction regional point cloud data set Z x = {Z xi |i=0,1,2…N x};
[0078] Step S4.3: Move the window to each position moved to in the x direction in step S4.2 as the starting point, and move the window in the y direction by a step size d. my Move in sequence, that is, change the window starting point to (x min +id mx ,y min +jd my ,z min ), where j = 0, 1, 2, ..., N y ,N y represents the total number of times the y direction needs to be moved, j represents the number of times the y direction is moved, ceil() means rounding up, so (N x +1)(N y +1) regional point cloud data, forming a regional point cloud data set Z in the x and y directions xy = {Z i,j |i=0,1,2…N x; j = 0, 1, 2…N y};
[0079] Step S4.4, moving the window with each position moved to in the x and y directions in step S4.3 as the starting point, and moving the window in the z direction by a step length d mz Move in sequence, that is, change the window starting point to (x min +id mx ,y min +jd my ,z min +kd mz ), where k = 0, 1, 2, ..., N z ,N z represents the total number of times the z direction needs to be moved, k represents the number of times the z direction is moved, ceil() means rounding up, so (N x +1)(N y +1)(N z +1) regional point cloud data, forming a regional point cloud data set Z in the x, y and z directions xyz = {Z i,j,k |i=0,1,2…N x ; j = 0, 1, 2…N y ; k = 0, 1, 2…N z};
[0080] For the regional point cloud data set Z xyz = {Z i,j,k |i=0,1,2…N x ; j = 0, 1, 2…N y ; k = 0, 1, 2…N z Each regional point cloud data in} is numbered in sequence, which is the regional point cloud data Z m1 ,Z m2 ,…,Z mN .
[0081] Step S5: for each area point cloud data Z mu , u=1,2,…,N, perform plane fitting to obtain the fitting plane; then calculate the point cloud data Z of the area mu The fluctuation between each coordinate point and the fitting plane is obtained to obtain the point cloud data Z of each area mu The corresponding fluctuation set h mu ;
[0082] Thus, we get N sets of fluctuations, which are: h m1 ,h m2 ,…,h mN; Comprehensively analyze all the fluctuations of N fluctuation sets to obtain the overall roughness index γ at the mth cycle stage m ;
[0083] Step S5 is specifically as follows:
[0084] Step S5.1: for N area point cloud data Z m1 ,Z m2 ,…,Z mN Each area point cloud data Z mu The validity test is carried out as follows: According to formula (3), the regional point cloud data Z is identified mu The number of point clouds included is denoted as D mu , and with the preset minimum value D min For comparison, if D mu <D min , then the regional point cloud data Z mu Invalid area, indicating that the point cloud in this area is invalid and insufficient for plane fitting and roughness calculation. Usually, D min =15, therefore, delete the point cloud data Z in this area mu All point clouds in D mu =0; if D mu ≥D min , then the regional point cloud data Z mu is the valid area, and the point cloud data Z in this area is retained mu All point clouds in D mu Remain unchanged and for the valid area point cloud data Z mu Execute step S5.2:
[0085]
[0086] Step S5.2: for each valid region point cloud data Z mu , the least square method is used to fit the plane to all the point clouds it contains, and the fitting plane P is obtained mu , fitting plane P mu The expression is: Ax+By+z+C=0; where A, B and C are the x-term coefficient, y-term coefficient and constant term of the fitting plane respectively;
[0087] Step S5.3, for the valid area point cloud data Z mu , and each point cloud coordinate is represented as (x * ,y * ,z * ), using formula (4), calculate each point cloud (x * ,y * ,z * ) and the fitting plane Pmu The fluctuation degree h * :
[0088]
[0089] Where: h * <0, indicating that the point is located on the fitting plane P mu Degree of concavity below, h * >0, indicating that the point is located on the fitting plane P mu The convexity of the upper part;
[0090] Therefore, for each valid area point cloud data Z mu , and obtain multiple fluctuations h * , forming the fluctuation set h mu ;
[0091] Step S5.4, for all valid area point cloud data Z mu , all the fluctuations h* obtained form the current moving window R m The corresponding fluctuation set;
[0092] Step S5.5, analyzing the fluctuation set obtained in step S5.4 to obtain the overall roughness index γ m In the present invention, the overall roughness index γ m Including but not limited to the maximum peak height of the surface profile, the maximum valley depth of the surface profile, the maximum height of the surface profile, the arithmetic mean deviation of the surface profile, and the root mean square deviation of the surface profile.
[0093] Taking the arithmetic mean deviation Sa of the surface profile and the root mean square deviation Sq of the surface profile as examples, the calculation method is:
[0094] Assume that the set of fluctuations obtained in step S5.4 includes num fluctuations, which are represented in order as: h1, h2, …, h num ; Using formula (5), we can get the arithmetic mean deviation Sa and the root mean square deviation Sq of the surface profile:
[0095]
[0096] Where: h v represents h1,h2,…,h num The vth element in , v = 1, 2,…, num.
[0097] Step S6, determine whether the termination condition is met, if not, set m=m+1 and return to step S3; if satisfied, execute step S7;
[0098] In step S6, the termination conditions include two types:
[0099] The first method is to determine whether the change rate of the overall roughness index obtained twice before and after is less than the set value ε, that is: If yes, the termination condition is met; in this embodiment, ε=0.01.
[0100] The second method is to determine whether the maximum number of iterations allowed, Q, has been reached, that is, m>Q. If so, the termination condition is met. In this embodiment, Q=30.
[0101] In practical applications, the iteration termination conditions ε and Q can be set according to requirements.
[0102] Step S7: Assume that a total of M cycles are performed, thus obtaining M overall roughness indices, forming an overall roughness index sequence γ = {γ1,γ2,…,γ M}; for the overall roughness index sequence of γ1,γ2,…,γ M Further analysis is performed to obtain the surface roughness evaluation results of the object.
[0103] Step S7 specifically adopts the following two methods:
[0104] The first type: for M overall roughness indices γ1,γ2,…,γ M , corresponding to M moving window sizes R1, R2, ..., R M , taking the moving window size R as the independent variable and the overall roughness index γ as the dependent variable, the changing trends of the overall roughness index γ and the moving window size R are analyzed and a fitting function is constructed. When the moving window size R tends to 0, the overall roughness index γ obtained is the final object surface roughness evaluation result;
[0105] The second type: Since the moving window size R∝1 / m, to simplify the calculation, for M overall roughness indices γ1,γ2,…,γ M , corresponding to M cycle stages; analyze the change trend between the overall roughness index γ and the cycle stage number m and construct a fitting function, whose expression is: γ m =g(m), and using formula (6), we can get the final object surface roughness evaluation result:
[0106]
[0107] This completes the surface roughness evaluation of the object.
[0108] In this embodiment, according to γ m The scatter plot of and m shows that there is an exponential function relationship between the two, so the EXP3P1Md model is used for fitting, and the fitting function expression is: a, b, c are coefficients, and the fitting results are as follows Figure 5As shown, we can see that Sa = 0.33, Sq = 0.39, which are very close to the theoretical values of 0.32 and 0.4, verifying the rationality and feasibility of this method. In actual application, the fitting function expression is judged and determined according to the sequence results.
[0109] By adopting the above technical solution disclosed in the present invention, the following beneficial effects are obtained:
[0110] The present invention obtains surface point cloud data of the surface to be measured by three-dimensional laser scanning or other methods, constructs moving windows of different scales, uses moving windows to separate and obtain local point cloud data, performs micro-plane fitting and calculates local undulation parameters, and finally obtains the roughness parameters of the surface under the moving window of this scale, such as Sa, Sq, etc., and then analyzes the relationship between the moving window size and the roughness parameters, determines the surface roughness based on the limit theory, and then realizes the surface roughness parameter evaluation of special complex surfaces. The present invention solves the problem that there is currently no mature method for obtaining roughness evaluation based on point cloud data for surface contours with excessive curvature, irregular surfaces, or surfaces for which no clear fitting expression can be made. The present invention can directly and efficiently obtain surface roughness based on point cloud data, and is applicable to any surface, avoiding complex surface fitting steps, simplifying the process, and improving the efficiency of surface roughness evaluation.
[0111] The above is only a preferred embodiment of the present invention. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principle of the present invention. These improvements and modifications should also be considered as the scope of protection of the present invention.
Claims
1. A method for evaluating the roughness of irregular surfaces based on a moving window method of three-dimensional point cloud data, characterized in that: The following steps are involved: Step S1, obtaining three-dimensional point cloud data of the surface of the object to be measured; Determining the three-dimensional spatial range of the three-dimensional point cloud data; Step S2, the current cycle stage number is represented by m; the initial value of m is 1; Step S3, determine the moving window size R which is inversely related to the current cycle stage number m m and the moving step length d m ; Among them, R m The moving window size used when indicating the number of stages in the mth cycle; d m The moving step length used when indicating the number of stages in the mth cycle; Step S4: within the three-dimensional space, the moving window starts from the starting area and moves in steps of d. m Step by step, the size is R m The moving window is moved until the three-dimensional space range is covered; whenever the moving window moves to a certain area, the three-dimensional point cloud data currently covered by the moving window is called regional point cloud data; therefore, assuming that the moving window starts from the starting area and covers a total of N areas, N regional point cloud data are formed by segmentation, which are respectively represented as regional point cloud data Z m1 ,Z m2 ,…,Z mN ; Step S5: for each area point cloud data Z mu , u=1,2,…,N, perform plane fitting to obtain the fitting plane; then calculate the point cloud data Z of the area mu The fluctuation between each coordinate point and the fitting plane is obtained to obtain the point cloud data Z of each area mu The corresponding fluctuation set h mu ; Thus, we get N sets of fluctuations, which are: h m1 ,h m2 ,…,h mN ; Comprehensively analyze all the fluctuations of N fluctuation sets to obtain the overall roughness index γ at the mth cycle stage m ; Step S6, determine whether the termination condition is met, if not, set m=m+1 and return to step S3; if satisfied, execute step S7; Step S7: Assume that a total of M cycles are performed, thus obtaining M overall roughness indices, forming an overall roughness index sequence γ = {γ1,γ2,…,γ M }; for the overall roughness index sequence of γ1,γ2,…,γ M Further analysis is performed to obtain the surface roughness evaluation results of the object; Step S7 specifically adopts the following two methods: The first type: for M overall roughness indices γ1,γ2,…,γ M , corresponding to M moving window sizes R1, R2, ..., R M , taking the moving window size R as the independent variable and the overall roughness index γ as the dependent variable, the changing trends of the overall roughness index γ and the moving window size R are analyzed and a fitting function is constructed. When the moving window size R tends to 0, the overall roughness index γ obtained is the final object surface roughness evaluation result; The second type: for M overall roughness indices γ1,γ2,…,γ M , corresponding to M cycle stages; analyze the change trend between the overall roughness index γ and the cycle stage number m and construct a fitting function, whose expression is: γ m =g(m), and using formula (6), we can get the final object surface roughness evaluation result: This completes the surface roughness evaluation of the object.
2. The irregular surface roughness evaluation method based on the three-dimensional point cloud data moving window method according to claim 1 is characterized in that: In step S1, the three-dimensional space range of the three-dimensional point cloud data is determined as follows: Determine the minimum value x in the x direction of the 3D point cloud data on the surface of the object to be measured min and the maximum value x max , the minimum value y in the y direction min and the maximum value y max , the minimum value z in the z direction min and the maximum value z max , thus we get the coordinates of two vertices, namely: vertex (x min ,y min ,z min ) and vertex (x max ,y max ,z max ), with vertex (x min ,y min ,z min ) to the vertex (x max ,y max ,z max ) is used as a diagonal line to form the three-dimensional spatial range of the three-dimensional point cloud data.
3. The irregular surface roughness evaluation method based on the three-dimensional point cloud data moving window method according to claim 2 is characterized in that: Step S3 is specifically as follows: Use formula (1) to determine the moving window size R m : Among them: a m ,b m ,c m , respectively represent the moving window R m Dimensions in the x-, y-, and z-directions; Use formula (2) to determine the moving step length d m : d m =(d mx ,d my ,d mz )=(λa m ,λb m ,λc m ) (2) Where: d mx ,d my ,d mz , respectively represent the moving window R m The moving step size in the x, y and z directions; λ represents the proportional coefficient; 0<λ<1.
4. The irregular surface roughness evaluation method based on three-dimensional point cloud data moving window method according to claim 3 is characterized in that: Step S4 is specifically as follows: Step S4.1: When the moving window is located in the starting area, the lower left corner of the moving window coincides with the lower left corner of the three-dimensional space range, and the coincidence point is the vertex (x min ,y min ,z min ); At this time, the coordinates of the two vertices of the diagonal line of the area covered by the moving window are: (x min ,y min ,z min ) and (x min +a m ,y min +b m ,z min +c m ), separate and obtain the corresponding regional point cloud data; Step S4.2: Move the window starting from the starting area in the x direction with a step size d. mx Move in sequence, that is, change the window starting point to (x min +id mx ,y min ,z min ), where i = 0, 1, 2, ..., N x ,N x represents the total number of times the x direction needs to be moved, i represents the number of times the x direction is moved, ceil() means rounding up, thus we get N x +1 regional point cloud data, forming the x-direction regional point cloud data set Z x = {Z xi |i=0,1,2…N x }; Step S4.3: Move the window to each position moved to in the x direction in step S4.2 as the starting point, and move the window in the y direction by a step size d. my Move in sequence, that is, change the window starting point to (x min +id mx ,y min +jd my ,z min ), where j = 0, 1, 2, ..., N y ,N y represents the total number of times the y direction needs to be moved, j represents the number of times the y direction is moved, ceil() means rounding up, so (N x +1)(N y +1) regional point cloud data, forming a regional point cloud data set Z in the x and y directions xy = {Z i,j |i=0,1,2…N x ; j = 0, 1, 2…N y }; Step S4.4, moving the window with each position moved to in the x and y directions in step S4.3 as the starting point, and moving the window in the z direction by a step length d mz Move in sequence, that is, change the window starting point to (x min +id mx ,y min +jd my ,z min +kd mz ), where k = 0, 1, 2, ..., N z ,N z represents the total number of times the z direction needs to be moved, k represents the number of times the z direction is moved, ceil() means rounding up, so (N x +1)(N y +1)(N z +1) regional point cloud data, forming a regional point cloud data set Z in the x, y and z directions xyz = {Z i,j,k |i=0,1,2…N x ; j = 0, 1, 2…N y ; k = 0, 1, 2…N z }; For the regional point cloud data set Z xyz = {Z i,j,k |i=0,1,2…N x ; j = 0, 1, 2…N y ; k = 0, 1, 2…N z Each regional point cloud data in} is numbered in sequence, which is the regional point cloud data Z m1 ,Z m2 ,…,Z mN .
5. The irregular surface roughness evaluation method based on three-dimensional point cloud data moving window method according to claim 1, characterized in that: Step S5 is specifically as follows: Step S5.1: for N area point cloud data Z m1 ,Z m2 ,…,Z mN Each area point cloud data Z mu The validity test is carried out as follows: According to formula (3), the regional point cloud data Z is identified mu The number of point clouds included is denoted as D mu , and with the preset minimum value D min For comparison, if D mu <D min , then the regional point cloud data Z mu For invalid areas, delete the point cloud data Z in this area mu All point clouds in D mu =0; if D mu ≥D min , then the regional point cloud data Z mu is the valid area, and the point cloud data Z in this area is retained mu All point clouds in D mu Remain unchanged and for the valid area point cloud data Z mu Execute step S5.2: Step S5.2: for each valid region point cloud data Z mu , the least square method is used to fit the plane to all the point clouds it contains, and the fitting plane P is obtained mu , fitting plane P mu The expression is: Ax+By+z+C=0; where A, B and C are the x-term coefficient, y-term coefficient and constant term of the fitting plane respectively; Step S5.3, for the valid area point cloud data Z mu , and each point cloud coordinate is represented as (x * ,y * ,z * ), using formula (4), calculate each point cloud (x * ,y * ,z * ) and the fitting plane P mu The fluctuation degree h * : Where: h * <0, indicating that the point is located on the fitting plane P mu Degree of depression below, h * >0, indicating that the point is located on the fitting plane P mu The convexity of the upper part; Therefore, for each valid area point cloud data Z mu , and obtain multiple fluctuations h * , forming the fluctuation set h mu ; Step S5.4, for all valid area point cloud data Z mu , the obtained fluctuations h * Form the current moving window R m The corresponding fluctuation set; Step S5.5, analyzing the fluctuation set obtained in step S5.4 to obtain the overall roughness index γ m .
6. The irregular surface roughness evaluation method based on the three-dimensional point cloud data moving window method according to claim 5 is characterized in that: Overall roughness index γ m It includes the maximum peak height of the surface profile, the maximum valley depth of the surface profile, the maximum height of the surface profile, the arithmetic mean deviation of the surface profile, and the root mean square deviation of the surface profile.
7. The irregular surface roughness evaluation method based on three-dimensional point cloud data moving window method according to claim 6 is characterized in that: Assume that the set of fluctuations obtained in step S5.4 includes num fluctuations, which are represented in order as: h1, h2, …, h num ; Using formula (5), we can get the arithmetic mean deviation Sa and the root mean square deviation Sq of the surface profile: Where: h v represents h1,h2,…,h num The vth element in , v = 1, 2,…, num.
8. The irregular surface roughness evaluation method based on the three-dimensional point cloud data moving window method according to claim 1 is characterized in that: In step S6, the termination conditions include two types: The first method is to determine whether the change rate of the overall roughness index obtained twice before and after is less than the set value ε, that is: If yes, the termination condition is met; The second method is to determine whether the maximum number of iterations Q is reached, that is, m>Q. If so, the termination condition is met.
Citation Information
Patent Citations
Gravel particle surface roughness measuring method based on three-dimensional laser scanning
CN113551622A
Robot control method and system based on terrain trafficability
CN115185266A