Method and system for measuring height of cylinder, computing device and medium
By adjusting the motion trajectory of the confocal probe to integrate the point cloud data of the original and target motion trajectories, the problem of insufficient resolution when measuring the height of small cylinders in the prior art is solved, and a higher resolution point cloud data is achieved, and the column height is accurately measured.
Patent Information
- Application Number
- CN202510131781.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-06
- Publication Date
- 2025-05-30
AI Technical Summary
In the prior art, when measuring the height of the cylinder with a smaller size, it is difficult to accurately obtain the height of the cylinder due to the limited resolution of the confocal probe.
By obtaining point cloud data for the original motion trajectory and the target motion trajectory and integrating both to improve resolution, the specific steps include adjusting the starting position along the x-axis and/or reducing the y-axis spacing to obtain third point cloud data with higher resolution.
It is realized to increase the number of different point clouds in the x-axis direction to improve resolution, and to reduce the spacing in the y-axis direction to improve resolution, thereby accurately obtaining the height of the cylinder.
Smart Images

Figure CN120063133A_ABST
Abstract
Description
Background Art
[0002] In modern industrial production and scientific research, accurately measuring the height of a semiconductor cylinder is a very important step. Existing technologies usually use scanning instruments such as confocal probes to collect point cloud data on the surface of the cylinder, and then process the scanned point cloud data to calculate the height of the cylinder. However, for cylinders with relatively small sizes, due to the influence of the resolution of the confocal probe, it is difficult to accurately obtain the height of the cylinder when processing the point cloud data scanned by the confocal probe.
[0003] It should be noted that the information disclosed in the above Background Art section is only used to enhance the understanding of the background of this application, and thus may include information that does not constitute the prior art known to those of ordinary skill in the art. Summary of the Invention
[0004] In order to overcome the problem that it is difficult to accurately obtain the height of the cylinder when processing the point cloud data scanned by the confocal probe due to the limitation of the resolution of the traditional confocal probe, the present invention provides a method, system, computing device, and medium for measuring the height of a cylinder.
[0005] In a first aspect, to solve the above technical problem, the present invention provides a method for measuring the height of a cylinder, including:
[0006] Obtain an original motion trajectory, and control a confocal probe to perform point cloud acquisition on the cylinder according to the original motion trajectory to obtain first point cloud data; wherein, the confocal probe is arranged above the cylinder, and the original motion trajectory includes the starting position, x-axis spacing, and y-axis spacing of the confocal probe;
[0007] Adjust the starting position along the x-axis and / or reduce the y-axis spacing to obtain a target motion trajectory; wherein, the spacing between the starting positions of the original motion trajectory and the target motion trajectory is less than the x-axis spacing;
[0008] Control the confocal probe to perform point cloud acquisition on the cylinder according to the target motion trajectory to obtain second point cloud data;
[0009] Integrate the first point cloud data and the second point cloud data to obtain third point cloud data, and determine the height of the cylinder based on the third point cloud data.
[0010] In a second aspect, to solve the above technical problem, the present invention provides a system for measuring the height of a cylinder, including:
[0011] The first acquisition module is configured to obtain an original motion trajectory, and control a confocal probe to perform point cloud acquisition on a cylinder according to the original motion trajectory to obtain first point cloud data; wherein, the confocal probe is disposed above the cylinder, and the original motion trajectory includes the starting position, the x-axis spacing, and the y-axis spacing of the confocal probe;
[0012] The adjustment module is configured to adjust the starting position along the x-axis and / or reduce the y-axis spacing to obtain a target motion trajectory; wherein, the spacing between the starting positions of the original motion trajectory and the target motion trajectory is less than the x-axis spacing;
[0013] The second acquisition module is configured to control the confocal probe to perform point cloud acquisition on the cylinder according to the target motion trajectory to obtain second point cloud data;
[0014] The determination module is configured to integrate the first point cloud data and the second point cloud data to obtain third point cloud data, and determine the height of the cylinder based on the third point cloud data.
[0015] In a third aspect, to solve the above technical problem, the present invention provides a computing device, including a memory, a processor, and a program stored on the memory and running on the processor. When the processor executes the program, the steps of a method for measuring the height of a cylinder as described above are implemented.
[0016] In a fourth aspect, to solve the above technical problem, the present invention provides a computer-readable storage medium. Instructions are stored in the computer-readable storage medium. When the instructions run on a terminal device, the terminal device is caused to execute the steps of a method for measuring the height of a cylinder as described above.
[0017] The beneficial effects of the present invention are:
[0018] By adjusting the starting position of the confocal probe along the x-axis, and making the distance between the starting position of the adjusted target motion trajectory and the original motion trajectory less than the x-axis spacing, so that the point clouds of the second point cloud data and the first point cloud data on the x-axis are staggered from each other. That is, when the confocal probe collects point clouds based on the original motion trajectory and the target motion trajectory, the point clouds collected on the x-axis are not the same. And / or, by reducing the y-axis spacing, the distance that the confocal probe moves each time on the y-axis can be reduced, so that the confocal probe can collect more point clouds in the y-axis direction, thereby improving the resolution of the confocal probe in the y-axis direction. In this way, by obtaining the first point cloud data of the confocal probe under the original motion trajectory and the second point cloud data under the target motion trajectory, and integrating the first point cloud data and the second point cloud data, the number of different point clouds is increased in the x-axis direction to improve the resolution in the x-axis direction, and the y-axis spacing is reduced in the y-axis direction to improve the resolution in the y-axis direction, so that higher-resolution third point cloud data can be obtained, in order to accurately obtain the height of the cylinder. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] Figure 1 It is a flowchart of a method for measuring the height of a cylinder provided by the present invention;
[0020] Figure 2 It is a schematic diagram of the first point cloud data provided by the present invention;
[0021] Figure 3 It is a schematic diagram of a third point cloud data provided by the present invention;
[0022] Figure 4 It is a binary image provided by the present invention;
[0023] Figure 5 It is a binary image after corrosion provided by the present invention;
[0024] Figure 6 It is a schematic diagram of another binary image provided by the present invention;
[0025] Figure 7 It is a schematic diagram of an embodiment provided by the present invention;
[0026] Figure 8 It is a schematic diagram of the system structure for measuring the height of a cylinder provided by the present invention. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0027] The principles and features of the present invention are described below. The examples given are only used to explain the present invention and are not intended to limit the scope of the present invention.
[0028] A method, system, computing device, and storage medium for measuring the height of a cylinder according to an embodiment of the present invention are described below with reference to the accompanying drawings.
[0029] As Figure 1 shown, a method for measuring the height of a cylinder provided by an embodiment of the present disclosure includes:
[0030] Step S101: Obtain an original motion trajectory, and control a confocal probe to perform point cloud acquisition on the cylinder according to the original motion trajectory to obtain first point cloud data. Among them, the confocal probe is arranged above the cylinder, and the original motion trajectory includes the starting position, x-axis spacing, and y-axis spacing of the confocal probe.
[0031] Among them, the x-axis spacing represents the spacing in the x-axis direction between two adjacent point clouds in the x-axis direction. The x-axis direction and the opposite direction of the x-axis are the motion directions of the confocal probe, and the y-axis is the direction perpendicular to the running direction of the confocal probe. The y-axis spacing represents the spacing in the y-axis direction between two adjacent point clouds in the y-axis direction. The x-axis spacing is also called the x-axis trigger spacing, and the y-axis spacing is also called the y-axis trigger spacing.
[0032] It can be understood that when the confocal probe performs point cloud acquisition on the cylinder, it usually starts to acquire point clouds from the starting position of the confocal probe and moves along the x-axis direction until the first row of point clouds is acquired; then it moves along the y-direction by the y-axis spacing, and then moves along the opposite direction of the x-axis until the second row of point clouds is acquired; then it moves along the y-direction by the y-axis spacing, and then moves along the x-axis direction to acquire the third row of point clouds; and so on until all point clouds are acquired. Among them, when the confocal probe moves along the x-axis direction or the opposite direction of the x-axis, it acquires point cloud data based on the trigger frequency. In this way, the confocal probe is controlled to implement point cloud acquisition of the cylinder with a z-shaped acquisition route. This z-shaped acquisition route is the driving route when controlling the confocal probe to perform point cloud acquisition according to the original motion trajectory. The confocal probe is arranged above the cylinder, and it performs point cloud acquisition on the cylinder from a top-down perspective. That is, the first point cloud data includes not only the point clouds on the top surface of the cylinder but also the point clouds in the area where the cylinder is located.
[0033] Step S102: Adjust the starting position along the x-axis and / or reduce the y-axis spacing to obtain a target motion trajectory. Among them, the spacing between the starting positions of the original motion trajectory and the target motion trajectory is less than the x-axis spacing.
[0034] In some embodiments, the starting position can be adjusted only along the x-axis to obtain the corresponding target motion trajectory. In some other embodiments, the y-axis spacing can be reduced only to obtain the corresponding target motion trajectory. In some other embodiments, the starting position can be adjusted along the x-axis and the y-axis spacing can be reduced to obtain the corresponding target motion trajectory.
[0035] It can be understood that by adjusting the starting position along the x-axis, including adjusting the starting position in the positive x-axis direction or in the negative x-axis direction, and the distance between the starting positions of the original motion trajectory and the target motion trajectory is less than the x-axis spacing, the point cloud data collected by the confocal probe according to the adjusted starting position will be offset from the point cloud data collected according to the original motion trajectory in the x-axis direction, and the point clouds collected by the confocal probe twice on the x-axis are not the same (i.e., misaligned collection).
[0036] It can be understood that by reducing the y-axis spacing, that is, reducing the distance that the confocal probe moves each time in the y-axis direction, the distance between two adjacent point clouds in the y-axis direction will be reduced (i.e., the distance between the first row and the second row of point clouds in the y-axis direction will be reduced), so that the confocal probe can collect more point clouds in the y-axis direction to improve the resolution of the confocal probe on the y-axis. For example, assume that the distance that the confocal probe moves each time in the y-axis direction is l = vt. v is the moving speed in the y-axis direction, and t is the moving duration each time in the y-axis direction. Therefore, the distance that the confocal probe moves each time in the y-axis direction, that is, the y-axis spacing, can be reduced by reducing the moving speed and / or reducing the moving duration.
[0037] Step S103, control the confocal probe to collect point clouds of the cylinder according to the target motion trajectory to obtain the second point cloud data.
[0038] Step S104, integrate the first point cloud data and the second point cloud data to obtain the third point cloud data, and determine the height of the cylinder based on the third point cloud data.
[0039] In some embodiments, as shown in Figure 2 shown, Figure 2 is a schematic diagram of the first point cloud data. In this embodiment, the acquisition resolution of the confocal probe is 2um. Based on the trigger frequency of the confocal probe, the distance between two adjacent point clouds in the x-axis direction (i.e., the x-axis spacing) is d lateral , and its resolution on the x-axis is R lateral = 1 / d lateral . In the y-axis direction, the distance between two adjacent point clouds (i.e., the y-axis spacing) is d movement , and its resolution on the y-axis is R movement = 1 / d movement . Collect point cloud data according to this original motion trajectory to obtain the first point cloud data. Obtain the target motion trajectory: adjust the starting position along the x-axis to obtain a new starting position, and in the x-axis direction, the distance between the original starting position and the new starting position is d lateral / 2; reduce the y-axis spacing to d movement / 2, then the new y-axis spacing is d movement / 2, the resolution in the y-axis direction is doubled. Then, sampling is performed again according to the new starting position and the new y-axis spacing (i.e., the target motion trajectory) to obtain the second point cloud data. Combining Figure 3 as shown in Figure 3 provides a schematic diagram of the third point cloud data. The first point cloud data and the second point cloud data obtained from the two samplings are superimposed to obtain the third point cloud data, thereby realizing the reconstruction of the three-dimensional point cloud data. Figure 3 In, for the sake of easy distinction, two different symbols are used to represent the point clouds in the first point cloud data and the point clouds in the second point cloud data respectively. In this embodiment, compared with the first point cloud data, the third point cloud data has doubled the resolution in both the x-axis direction and the y-axis direction, that is, the resolution of the third point cloud data is four times that of the first point cloud data.
[0040] Using a method for measuring the height of a cylinder provided by an embodiment of the present disclosure, by adjusting the starting position of the confocal probe along the x-axis, and the spacing between the starting position of the adjusted target motion trajectory and the original motion trajectory is less than the x-axis spacing, so that the point clouds of the second point cloud data and the first point cloud data on the x-axis are staggered from each other, that is, when the confocal probe collects point clouds based on the original motion trajectory and the target motion trajectory, the point clouds collected on the x-axis are not the same. And / or, by reducing the y-axis spacing, the distance that the confocal probe moves each time in the y-axis direction can be reduced, so that the confocal probe can collect more point clouds in the y-axis direction, thereby improving the resolution of the confocal probe in the y-axis direction. In this way, by obtaining the first point cloud data of the confocal probe under the original motion trajectory and the second point cloud data under the target motion trajectory, and integrating the first point cloud data and the second point cloud data, different point clouds are increased in the x-axis direction to improve the resolution in the x-axis direction, and the y-axis spacing is reduced in the y-axis direction to improve the resolution in the y-axis direction, so that a third point cloud data with higher resolution can be obtained, so as to accurately obtain the height of the cylinder.
[0041] In addition, this embodiment can have wide applications in application fields such as precision measurement and semiconductors. Especially in reverse engineering, the three-dimensional model of the measured object can be accurately measured through this embodiment, so as to perform more accurate design and manufacturing. In the field of semiconductor manufacturing quality control, it can be used to monitor the height and shape of cylinders during the semiconductor manufacturing process to ensure the consistency and quality of products. In the field of device packaging and integration, high-precision height measurement is extremely important for the packaging and interlayer connection of semiconductor devices.
[0042] In some embodiments, the original motion trajectory can be adjusted multiple times to obtain multiple different target trajectory routes. And the confocal probe is respectively controlled to perform point cloud acquisition on the cylinder according to each target motion trajectory to obtain respective second point cloud data. Then, the first point cloud data and the multiple second point cloud data are integrated and superimposed to obtain corresponding third point cloud data. In this way, by adjusting the original motion trajectory multiple times to obtain multiple second point cloud data, the resolution of the third point cloud data can be further improved, thereby improving the accuracy of cylinder measurement. Among them, each time the original motion trajectory is adjusted, the starting position is adjusted along the x-axis, and / or the y-axis spacing is reduced, and the distance of each adjustment of the starting position along the x-axis does not exceed the x-axis spacing, and the sum of the distances of multiple adjustments of the starting position also does not exceed the x-axis spacing.
[0043] Preferably, integrating the first point cloud data and the second point cloud data to obtain the third point cloud data includes: constructing a sampling network; wherein, the resolution of the sampling network is greater than the resolutions corresponding to the first point cloud data and the second point cloud data; mapping the first point cloud data and the second point cloud data to the sampling network to obtain the third point cloud data.
[0044] In this way, by mapping the first point cloud data and the second point cloud data to a sampling network with a higher resolution, the reconstruction of a point cloud data with a higher resolution is achieved by superimposing the point cloud data. The resolution of the reconstructed third point cloud data is higher.
[0045] Preferably, mapping the first point cloud data and the second point cloud data to the sampling network includes: aligning the first point cloud data and the second point cloud data in the same coordinate system; mapping the aligned first point cloud data and the aligned second point cloud data into the sampling network.
[0046] During multiple acquisitions, due to slight changes in the position or angle of the confocal probe, there is a relative displacement between the acquired point cloud data. Therefore, by aligning the first point cloud data and the second point cloud data, the interference caused by the relative displacement between the first point cloud data and the second point cloud data can be removed.
[0047] In some implementations, the relative displacement is represented as a translation matrix T i and a rotation matrix R i combination, that is: relative displacement r′ ij =R i r ij +T i . In this way, by calculating the rotation matrix R i and the translation matrix T i, the relative displacements between the respective point cloud data can be obtained so as to align all the point cloud data into a unified coordinate system. A sampling grid G is defined in three-dimensional space, and the grid cell size thereof is uniform. The resolution of the sampling grid is greater than the resolution of each point cloud acquisition. Then, the resampled point cloud data p i is resampled, and the sampling points r i in p ij with the value f ij are assigned to the corresponding grid cells on the sampling grid G. Among them, the point cloud data is p i which can be expressed as a set including the position vector r ij and the measured value f ij , that is: p i ={(r ij , f ij ), j = 1, 2,..., M i where M i is the number of sampling points in the i-th acquisition. In this embodiment, p i includes p 1 and p 2 , p 1 is the point cloud data of the first acquisition, that is, the first point cloud data; p 2 is the point cloud data of the second acquisition, that is, the second point cloud data.
[0048] Preferably, determining the height of the cylinder based on the third point cloud data includes: projecting the third point cloud data onto a two-dimensional plane to obtain a projection image; wherein, the two-dimensional plane is the xy plane; performing normalization processing based on the height information of each point cloud in the third point cloud data to obtain a normalization result; based on the normalization result, performing grayscale processing on the projection image to obtain a grayscale image, and performing binary processing on the grayscale image to obtain a binary image; determining the height of the cylinder based on the binary image and the third point cloud data.
[0049] Since there is an obvious height difference between the top of the cylinder and the plane of the region where the non-cylinder top is located. Therefore, by performing two-dimensional projection, normalization, grayscale processing, and binary processing on the third point cloud data, in the binary image, the image of the top of the cylinder and the image of the region where the non-cylinder top is located are significantly different. Then, based on the height information carried by each point cloud in the third point cloud data, the height of the cylinder can be determined more accurately. As shown in Figure 4 shown, Figure 4 shows a binary image. Figure 4 The white area in Figure 4 is the region where the top of the cylinder is located;
[0050] Specifically, project the third point cloud data onto a two-dimensional plane to obtain a projection image, including: constructing a two-dimensional plane (x, y), and projecting each point cloud (x, y, z) in the third point cloud data onto the two-dimensional plane based on the two-dimensional coordinates (x, y) to obtain a projection image.
[0051] Specifically, perform normalization processing based on the height information of each point cloud in the third point cloud data to obtain a normalization result, including: respectively mapping the height value (z value) of each point cloud in the third point cloud data to a grayscale value to obtain a normalization result. Among them, the normalization result includes the grayscale value corresponding to each point cloud in the third point cloud data. For example, grayscale value = ((z - z min ) / (z max - z min )) * 255. Where z is the height value of the current point cloud, z min is the height value of the point cloud with the smallest height value in the third point cloud data, and z max is the height value of the point cloud with the largest height value in the third point cloud data.
[0052] Specifically, perform grayscale processing on the projection image based on the normalization result, including: based on the normalization result and two-dimensional coordinates, fill the grayscale value corresponding to each point cloud into each pixel point of the projection image. In this way, the pixel values of the pixel points corresponding to point clouds at different heights are also different.
[0053] Specifically, perform binarization processing on the grayscale image to obtain a binarized image, including: traversing all pixel points in the grayscale image, determining the pixel of the pixel point with a grayscale value greater than the preset grayscale threshold as 255, and determining the pixel of the pixel point with a grayscale value less than or equal to the grayscale threshold as 0. Among them, the pixel point with a grayscale value greater than the preset grayscale threshold is the pixel point corresponding to the top of the cylinder, and the pixel of the pixel point with a grayscale value less than or equal to the grayscale threshold is the pixel point corresponding to non-top of the cylinder. In this way, by converting the grayscale image into a binarized image, the pixel difference between the pixel points corresponding to the top of the cylinder and the pixel points corresponding to non-top of the cylinder is increased to accurately determine the height of the cylinder.
[0054] Preferably, determine the height of the cylinder based on the binarized image and the third point cloud data, including: determining the first pixel point and the second pixel point in the binarized image; where the first pixel point is the pixel point corresponding to the top of the cylinder, and the second pixel point is the pixel point corresponding to the plane where the bottom of the cylinder is located; based on the third point cloud data, respectively determine the point cloud height value corresponding to each first pixel point and the point cloud height value corresponding to each second pixel point; based on the point cloud height value corresponding to each first pixel point and the point cloud height value corresponding to each second pixel point, determine the height of the cylinder.
[0055] Since the binary image is converted from the third point cloud data, each pixel point in the binary image corresponds to a point cloud in the third point cloud data, and the point cloud carries height information. In this way, by determining the pixel points corresponding to the top of the cylinder (i.e., the first pixel points) in the binary image and the pixel points corresponding to the plane where the bottom of the cylinder is located (i.e., the second pixel points) in the binary image, the height values of the point clouds corresponding to the pixel points at the top of the cylinder and the height values of the pixel points corresponding to the plane where the bottom of the cylinder is located can be determined, so that the height of the cylinder can be determined more accurately.
[0056] Preferably, determining the first pixel point and the second pixel point in the binary image includes: taking the pixel points with a pixel value of 255 in the binary image as the central pixel points, and determining the four-neighborhood pixel points corresponding to each central pixel point; for each central pixel point, if the pixel values of the central pixel point and the corresponding four-neighborhood pixel points are both 255, then determining the central pixel point as the first pixel point; determining the second pixel point based on each central pixel point. Among them, the four-neighborhood pixel points represent the four pixel points adjacent to the center pixel, namely the upper, lower, left, and right pixel points. It can be understood that in the binary image, the height of the point cloud corresponding to the pixel point with a pixel value of 255 is greater than the preset height threshold, and the height of the point cloud corresponding to the pixel point with a pixel value of 0 is less than or equal to the preset height threshold.
[0057] In this way, by respectively determining the pixel values of each central pixel point and its four-neighborhood points, the edge interference in the top area of the cylinder can be removed, that is, the excessive pixels between the top area of the cylinder and the non-top area of the cylinder can be removed, so as to obtain the first pixel point corresponding to the top area of the cylinder more accurately and the second pixel point corresponding to the plane where the bottom of the cylinder is located.
[0058] Specifically, a cross-shaped structuring element (3x3) is constructed to obtain a matrix Based on this cross-shaped element, the binary image is eroded to obtain the eroded binary image. That is, by using this cross-shaped structuring element to traverse each pixel point in the binary image, the matrix element a 22 corresponds to the central pixel point, and the matrix elements a 12 、a 21 、a 23 、a 32 correspond to the four-neighborhood pixel points of the central pixel point a 22 . If the pixel values of the five elements (a 12 、a 21 、a 22 、a 23 、a 32 ) in the cross-shaped structuring element are all 255, then the pixel value of the central pixel point corresponding to this cross-shaped structuring element is retained as 255, that is, this central pixel is determined as the first pixel point. If the five elements (a12 , a 21 , a 22 , a 23 , a 32 ) If the pixel value of any pixel point corresponding to it is 0, then update the pixel value of the central pixel point corresponding to this cross-shaped structural element to 0, and this central pixel point is the transition pixel point. The transition pixel point represents the transition pixel between the top region of the cylinder and the non-top region of the cylinder. Combining Figure 5 as shown in Figure 5 shows a binarized image after erosion. Figure 5 The white area in Figure 5 is the image of the top of the cylinder;
[0059] Specifically, determining the second pixel points based on each central pixel point includes: determining the area formed by all central pixel points as the original area. Taking the preset area range at a preset distance from the original area as the reference plane area, and taking the pixel points in the reference plane area as the second pixel points. Among them, the reference plane area represents the area corresponding to the plane where the bottom of the cylinder is located. The original area includes the first pixel points and the transition pixel points. The transition pixel points are the transition pixels between the top region of the cylinder and the non-top region of the cylinder.
[0060] In the process production, the size of the top of the cylinder is relatively stable. Therefore, after determining the original area, by taking the preset area range at a preset distance from the original area as the reference plane area, it is possible to more reasonably determine the plane position of the bottom of the cylinder in practice in combination with the process and practical requirements, so as to determine the height difference between the top of the cylinder and the plane where the bottom of the cylinder is located, thereby improving the accuracy of measuring the height of the cylinder.
[0061] In some embodiments, taking the preset area range at a preset distance from the original area as the reference plane area includes: taking at least one of the preset area range at a preset distance from the upper boundary of the original area, the preset area range at a preset distance from the lower boundary of the original area, the preset area range at a preset distance from the left boundary of the original area, and the preset area range at a preset distance from the right boundary of the original area as the reference plane area. For example, combining Figure 6 as shown in Figure 6 provides another schematic diagram of a binarized image. Taking the preset area range at a preset distance from the upper boundary of the original area and the preset area range at a preset distance from the lower boundary of the original area together as the reference plane area.
[0062] In some other embodiments, determining the second pixel points based on each central pixel point includes: using the pixel points in the binarized image except the central pixel point as the second pixel points. In this way, by using the pixel points except the central pixel point as the second pixel points, the pixel points corresponding to the plane where the bottom of the cylinder is located can be determined more accurately.
[0063] Preferably, determining the height of the cylinder based on the point cloud height values corresponding to each first pixel point and the point cloud height values corresponding to each second pixel point includes: calculating the average value of the point cloud height values corresponding to each first pixel point as the first average value, and calculating the average value of the point cloud height values corresponding to each second pixel point as the second average value; taking the difference between the first average value and the second average value as the height of the cylinder. Wherein, the first average value represents the average height value of the top of the cylinder, and the second average value represents the average height value of the plane where the bottom of the cylinder is located.
[0064] In this way, by calculating the first average value and the second average value and taking the difference between the first average value and the second average value as the height of the cylinder, a more accurate height of the cylinder can be obtained.
[0065] Combined with Figure 7 as shown, Figure 7 shows a schematic diagram of an embodiment. Figure 7 It includes Figure a and Figure b, where Figure a is a sample diagram and Figure b is a variance curve diagram. This sample has multiple cylinders. Select 10 cylinders on the sample as the cylinders to be measured, and measure the height of each cylinder to be measured 10 times to obtain the corresponding height values. For each cylinder to be measured, calculate the corresponding variance value based on its corresponding 10 height values and draw the corresponding variance curve diagram (such as Figure b). The abscissa of this variance curve diagram is the i-th cylinder to be measured, and the ordinate is the variance value (unit: um), i = 1, 2... 10. It can be seen that in this embodiment, the variance values corresponding to these 10 cylinders to be measured are within 0.1 um. Therefore, the method for measuring the height of a cylinder provided by the embodiments of the present disclosure has high accuracy in measuring the height of the cylinder and good repeatability.
[0066] Combined with Figure 8As shown in the figure, an embodiment of the present disclosure provides a system 200 for measuring the height of a cylinder, including: a first acquisition module 201, an adjustment module 202, a second acquisition module 203, and a determination module 204. Among them, the first acquisition module is configured to obtain an original motion trajectory and control a confocal probe to perform point cloud acquisition on the cylinder according to the original motion trajectory to obtain first point cloud data; wherein, the confocal probe is arranged above the cylinder, and the original motion trajectory includes the starting position, the x-axis spacing, and the y-axis spacing of the confocal probe. The adjustment module is configured to adjust the starting position along the x-axis and / or reduce the y-axis spacing to obtain a target motion trajectory; wherein, the spacing between the starting positions of the original motion trajectory and the target motion trajectory is less than the x-axis spacing. The second acquisition module is configured to control the confocal probe to perform point cloud acquisition on the cylinder according to the target motion trajectory to obtain second point cloud data. The determination module is configured to integrate the first point cloud data and the second point cloud data to obtain third point cloud data, and determine the height of the cylinder based on the third point cloud data.
[0067] By using the system for measuring the height of a cylinder provided by the embodiment of the present disclosure, by adjusting the starting position of the confocal probe along the x-axis, and the spacing between the starting positions of the adjusted target motion trajectory and the original motion trajectory is less than the x-axis spacing, so that the point clouds of the second point cloud data and the first point cloud data are staggered from each other on the x-axis, that is, when the confocal probe performs point cloud acquisition based on the original motion trajectory and the target motion trajectory, the point clouds collected on the x-axis are not the same. And / or, by reducing the y-axis spacing, the distance that the confocal probe moves each time on the y-axis can be reduced, so that the confocal probe can collect more point clouds in the y-axis direction, thereby improving the resolution of the confocal probe in the y-axis direction. In this way, by obtaining the first point cloud data of the confocal probe under the original motion trajectory and the second point cloud data under the target motion trajectory, and integrating the first point cloud data and the second point cloud data, it is realized to increase the number of different point clouds in the x-axis direction to improve the resolution in the x-axis direction, and to reduce the y-axis spacing in the y-axis direction to improve the resolution in the y-axis direction, so as to obtain third point cloud data with higher resolution, so as to accurately obtain the height of the cylinder.
[0068] Preferably, the determination module is specifically configured to construct a sampling network; wherein, the resolution of the sampling network is greater than the resolution corresponding to the first point cloud data and the second point cloud data; map the first point cloud data and the second point cloud data to the sampling network to obtain third point cloud data.
[0069] Preferably, the determination module is specifically configured to align the first point cloud data and the second point cloud data to the same coordinate system; map the aligned first point cloud data and the aligned second point cloud data into the sampling network.
[0070] Preferably, the determination module is specifically configured to project the third point cloud data onto a two-dimensional plane to obtain a projection image; wherein, the two-dimensional plane is the xy plane; perform normalization processing based on the height information of each point cloud in the third point cloud data to obtain a normalization result; based on the normalization result, perform grayscale processing on the projection image to obtain a grayscale image, and perform binarization processing on the grayscale image to obtain a binarized image; determine the height of the cylinder based on the binarized image and the third point cloud data.
[0071] Preferably, the determination module is specifically configured to determine a first pixel point and a second pixel point in the binarized image; wherein, the first pixel point is the pixel point corresponding to the top of the cylinder, and the second pixel point is the pixel point corresponding to the plane where the bottom of the cylinder is located; based on the third point cloud data, respectively determine the point cloud height value corresponding to each first pixel point and the point cloud height value corresponding to each second pixel point; determine the height of the cylinder based on the point cloud height value corresponding to each first pixel point and the point cloud height value corresponding to each second pixel point.
[0072] Preferably, the determination module is specifically configured to use the pixel point with a pixel value of 255 in the binarized image as the central pixel point, and determine the four-neighbor pixel points corresponding to each central pixel point; for each central pixel point, if the pixel values of the central pixel point and the corresponding four-neighbor pixel points are both 255, then determine the central pixel point as the first pixel point; determine the second pixel point based on each central pixel point.
[0073] Preferably, the determination module is specifically configured to calculate the average value of the point cloud height values corresponding to each first pixel point as the first average value, and calculate the average value of the point cloud height values corresponding to each second pixel point as the second average value; use the difference between the first average value and the second average value as the height of the cylinder.
[0074] A computing device according to an embodiment of the present invention includes a memory, a processor, and a program stored on the memory and running on the processor. When the processor executes the program, it implements some or all of the steps of the above method for measuring the height of a cylinder.
[0075] Among them, the computing device can be a computer. Correspondingly, its program is computer software, and the above parameters and steps in a computing device of the present invention can refer to the parameters and steps in the embodiments of the method for measuring the height of a cylinder in the above text, and will not be elaborated here.
[0076] A computer-readable storage medium in an embodiment of the present invention stores instructions that, when running, execute the steps of the above method for measuring the height of a cylinder.
[0077] Among them, the computer-readable storage medium can be a transient computer-readable storage medium or a non-transient computer-readable storage medium.
[0078] The technical solution of the embodiment of the present disclosure can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes one or more instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method of the embodiment of the present disclosure. The foregoing computer-readable storage medium may be a non-transitory computer-readable storage medium, including: various media such as USB flash drives, mobile hard disks, read-only memories (ROMs), random access memories (RAMs), magnetic disks, or optical discs that can store program codes, or may also be a transitory computer-readable storage medium.
[0079] Those skilled in the art know that the present invention can be implemented as a system, a method, or a computer program product. Therefore, the present disclosure can be specifically implemented in the following forms, that is: it can be completely hardware, can also be completely software (including firmware, resident software, microcode, etc.), and can also be in the form of a combination of hardware and software, generally referred to as "circuit", "module", or "system" in this article. In addition, in some embodiments, the present invention can also be implemented in the form of a computer program product in one or more computer-readable media, and the computer-readable media contains computer-readable program codes. The computer-readable storage medium can be, for example, but not limited to - an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or component, or any combination of the above.
[0080] In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "example", "specific example", or "some examples", etc. means that the specific features, structures, materials, or characteristics described in connection with the embodiment or example are included in at least one embodiment or example of the present invention. In this specification, the schematic representations of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials, or characteristics described can be combined in any one or more embodiments or examples in a suitable manner. In addition, without contradiction, those skilled in the art can combine and combine the different embodiments or examples described in this specification and the features of different embodiments or examples.
[0081] Although the embodiments of the present invention have been shown and described above, it can be understood that the above embodiments are exemplary and should not be construed as limiting the present invention. Those of ordinary skill in the art can make changes, modifications, substitutions, and variations to the above embodiments within the scope of the present invention.
Claims
1. A method for measuring the height of a column, characterized in that: include: Acquire an original motion trajectory, and control the confocal probe to collect point cloud data of the cylinder according to the original motion trajectory to obtain first point cloud data; wherein the confocal probe is arranged above the cylinder, and the original motion trajectory includes the starting position, x-axis spacing and y-axis spacing of the confocal probe; Adjusting the starting position along the x-axis and / or reducing the y-axis spacing to obtain a target motion trajectory; wherein the spacing between the original motion trajectory and the starting position of the target motion trajectory is smaller than the x-axis spacing; Controlling the confocal probe to collect point cloud data of the cylinder according to the target motion trajectory to obtain second point cloud data; The first point cloud data and the second point cloud data are integrated to obtain third point cloud data, and the height of the column is determined based on the third point cloud data.
2. The method according to claim 1, characterized in that The step of integrating the first point cloud data and the second point cloud data to obtain third point cloud data includes: Constructing a sampling network; wherein the resolution of the sampling grid is greater than the resolution corresponding to the first point cloud data and the second point cloud data; The first point cloud data and the second point cloud data are mapped to the sampling grid to obtain third point cloud data.
3. The method according to claim 2, characterized in that Mapping the first point cloud data and the second point cloud data to the sampling grid comprises: Aligning the first point cloud data and the second point cloud data into the same coordinate system; The aligned first point cloud data and the aligned second point cloud data are mapped into the sampling grid.
4. The method according to claim 1, characterized in that The determining the height of the column based on the third point cloud data comprises: Projecting the third point cloud data onto a two-dimensional plane to obtain a projection image; wherein the two-dimensional plane is an xy plane; Performing normalization processing based on height information of each point cloud in the third point cloud data to obtain a normalized result; Based on the normalization result, grayscale processing is performed on the projection image to obtain a grayscale image, and binarization processing is performed on the grayscale image to obtain a binarized image; The height of the cylinder is determined based on the binary image and the third point cloud data.
5. The method according to claim 4, characterized in that The determining the height of the column based on the binary image and the third point cloud data comprises: Determine a first pixel point and a second pixel point in the binary image; wherein the first pixel point is a pixel point corresponding to the top of the cylinder, and the second pixel point is a pixel point corresponding to the plane where the bottom of the cylinder is located; Based on the third point cloud data, respectively determine a point cloud height value corresponding to each of the first pixel points and a point cloud height value corresponding to each of the second pixel points; The height of the column is determined based on the point cloud height values corresponding to each of the first pixel points and the point cloud height values corresponding to each of the second pixel points.
6. The method according to claim 5, characterized in that The determining of the first pixel point and the second pixel point in the binary image comprises: Taking the pixel point with a pixel value of 255 in the binary image as the central pixel point, and determining the four neighboring pixel points corresponding to each central pixel point; For each central pixel point, if the pixel values of the central pixel point and the corresponding four neighboring pixel points are both 255, the central pixel point is determined as the first pixel point; The second pixel point is determined based on each central pixel point.
7. The method according to claim 5, characterized in that The determining the height of the column based on the point cloud height values corresponding to each of the first pixel points and the point cloud height values corresponding to each of the second pixel points includes: Calculate the average value of the point cloud height values corresponding to each first pixel point as the first average value, and calculate the average value of the point cloud height values corresponding to each second pixel point as the second average value; The difference between the first average value and the second average value is taken as the height of the column.
8. A system for measuring the height of a column, characterized in that: include: A first acquisition module is used to obtain an original motion trajectory, and control the confocal probe to perform point cloud acquisition on the cylinder according to the original motion trajectory to obtain first point cloud data; wherein the confocal probe is arranged above the cylinder, and the original motion trajectory includes the starting position, x-axis spacing and y-axis spacing of the confocal probe; An adjustment module, used for adjusting the starting position along the x-axis and / or reducing the y-axis spacing to obtain a target motion trajectory; wherein the spacing between the original motion trajectory and the starting position of the target motion trajectory is smaller than the x-axis spacing; A second acquisition module, used for controlling the confocal probe to perform point cloud acquisition on the cylinder according to the target motion trajectory to obtain second point cloud data; A determination module is used to integrate the first point cloud data and the second point cloud data to obtain third point cloud data, and determine the height of the column based on the third point cloud data.
9. A computing device comprising a memory, a processor, and a program stored in the memory and running on the processor, characterized in that: When the processor executes the program, the steps of the method for measuring the height of a column as claimed in any one of claims 1 to 7 are implemented.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores instructions, and when the instructions are executed on a terminal device, the terminal device executes the steps of a method for measuring the height of a column as claimed in any one of claims 1 to 7.