1. Technical Field
Embodiments of the present disclosure generally relate to measurement systems and methods, and more particularly, to a system and method for computing and displaying a roundness error.
2. Description of Related Art
It is often necessary to measure the non-roundness of a circular part. This is important because an unacceptable degree of non-roundness of a part can affect how that part couples with other parts or otherwise performs when assembled to other parts.
A method for measuring roundness errors uses image processing techniques. In one such method, a point cloud that makes up an image of the circular part is made, electronically processed, and quantified using image processing algorithms. Using the method, a numerical roundness error analysis report is generated. However, the numerical roundness error analysis report is not very visual, and a real position of each point in the point cloud may not be shown clearly. Thus, analysis of the roundness error may be difficult.
Thus, a system and method for overcoming the aforementioned problem is needed.
The colors specifying module 200 is configured for specifying a plurality of different colors with each of the colors representing a specific error range of a point. It may be understood that, the error range of a point restricts a tolerable distance between the point and a reference point, a reference line, a reference circle, and so on. For example, the color specifying module 200 may specify red for an error range of 0.001 mm-0.005 mm, specify yellow for an error range of 0.006 mm-0.010 mm, and so on.
The point cloud receiving module 210 is configured for receiving at least one point cloud of the object from the database 1. It may be understood that, a point cloud is a set of vertices in a three-dimensional coordinate system. These vertices are usually defined by X, Y, and Z coordinates. Point clouds are most often created by three-dimensional (3D) scanners. The 3D scanners measure a large number of points on the surface of an object, and output a point cloud as a data file. The point cloud represents the visible surface of the object that has been scanned or digitized.
The determining module 220 is configured for determining if a circle can be fitted using the point cloud. It may be understood that, if a number of points in the point cloud is less than 3, a circle cannot be fitted using the point cloud, or if all points in the point cloud are in a straight line, a circle cannot be fitted using the point cloud.
The circle fitting module 230 is configured for fitting a circle based on the points in the point cloud using a least square method.
The distance computing module 240 is configured for computing an error of each point in the point cloud. In one embodiment, the distance computing module 240 firstly computes a first distance between the each point in the point cloud and the center of the circle, and then computes a second distance by subtracting the radius of the circle from the first distance. It may understood that the second distance is the error.
The points colorizing module 250 is configured for colorizing the points in the point cloud according to the errors of the points and the specified colors. In one embodiment, for example, if an error of a point in the point cloud is 0.004, which falls in the error range of 0.001 mm-0.005 mm, the points colorizing module 250 assigns red to the point. If an error of a point in the point cloud is 0.007, which falls in the error range of 0.006 mm-0.00 mm, the points colorizing module 250 assigns yellow to the point.
The line transforming module 260 is configured for transforming the circle into a line by selecting a point on the circle as an endpoint of the line, and arranging the points in the point cloud according to a third distance between each of the points and the selected point. It may be understood that, the circle is fitted according to the point cloud using the least square method, thus, the points in the point cloud are around the circle, like which is shown in
The outputting module 270 is configured for generating a graphic roundness error analysis report comprising the specified colors, the circle, the colorized points, the line, and the point cloud. The outputting module 270 is further configured for outputting the graphic roundness error analysis report.
In block S100, the colors specifying module 200 specifies a plurality of different colors that represents different error ranges of points. As mentioned above, the color specifying module 200 may specify red for an error range of 0.001 mm-0.005 mm, specify yellow for an error range of 0.006 mm-0.010 mm, and so on.
In block S101, the point cloud receiving module 210 receives a point cloud of the object from the database 1.
In block S102, the determining module 220 determines that if points in the point cloud can fit a circle. If the number of the points in the point cloud is less than 3, or all the points in the point cloud are in a straight line, the points in the point cloud cannot fit a circle, then the flow comes to the end. Otherwise, if the number of the points in the point cloud is more than or equal to 3 and the points in the point cloud are not in a straight line, the points in the point cloud can fit a circle, then the flow moves to block S103.
In block S103, the circle fitting module 230 fits a circle based on the points in the point cloud using a least square method.
In block S104, the distance computing module 240 computes a first distance between each point in the point cloud and the center of the circle, and then computes a second distance by subtracting the radius of the circle from the first distance. It may be understood that, the second distance is an error of the point.
In block S105, the points colorizing module 250 colorizes the points in the point cloud according to the errors of the points and the specified colors. In an example, if an error of a point in the point cloud is 0.004, which falls in the error range of 0.001 mm-0.005 mm, the points colorizing module 250 assigns red to the point. In another example, if an error of a point in the point cloud is 0.007, which falls in the error range of 0.006 mm-0.00 mm, the points colorizing module 250 assigns yellow to the point.
In block S106, the line transforming module 260 determines if the circle need to be transformed into a line based on an operation of a user. The flow moves to block S107 if the circle need to be transformed into a line. Otherwise, the flow moves to block S110 if the circle does not need to be transformed into a line.
In block S107, the line transforming module 260 selects a point on the circle, and splits the circle at the selected point.
In block S108, the line transforming module 260 computes a third distance between each point in the point cloud and the selected point.
In block S109, the line transforming module 260 transforms the circle into a line by pulling the split circle straightly and taking the selected point as an endpoint of the line, and arranges all points in the point cloud round the line according to the third distances.
In block S110, the outputting module 270 generates a graphic roundness error analysis report comprising the specified colors, the circle, the colorized points, the line, and the point cloud, and outputs the graphic roundness error analysis report.
Although certain inventive embodiments of the present disclosure have been specifically described, the present disclosure is not to be construed as being limited thereto. Various changes or modifications may be made to the present disclosure without departing from the scope and spirit of the present disclosure.
Number | Date | Country | Kind |
---|---|---|---|
200810304347.X | Sep 2008 | CN | national |