This application claims priority to Chinese Patent Application No. 201410462365.6 filed on Sep. 11, 2014, the contents of which are incorporated by reference herein.
The subject matter herein relates to point cloud technology, and particularly to a computing device and a method for processing point clouds of an object.
Point clouds can be created by a scanner. A measurement device can measure a large number of points to generate point clouds by scanning a surface of an object (e.g., a component of a mobile phone). The point cloud represents a set of points that the measurement device has measured. However, each point cloud can include its own coordinate system, which may make it difficult to joint more than one point cloud of the object.
Many aspects of the disclosure can be better understood with reference to the following drawings. The components in the drawings are not necessarily drawn to scale, the emphasis instead being placed upon clearly illustrating the principles of the disclosure. Moreover, in the drawings, like reference numerals designate corresponding parts throughout the several views.
It will be appreciated that for simplicity and clarity of illustration, where appropriate, reference numerals have been repeated among the different figures to indicate corresponding or analogous elements. In addition, numerous specific details are set forth in order to provide a thorough understanding of the embodiments described herein. However, it will be understood by those of ordinary skill in the art that the embodiments described herein can be practiced without these specific details. In other instances, methods, procedures, and components have not been described in detail so as not to obscure the related relevant feature being described. The drawings are not necessarily to scale and the proportions of certain parts may be exaggerated to better illustrate details and features. The description is not to be considered as limiting the scope of the embodiments described herein.
Several definitions that apply throughout this disclosure will now be presented. The term “module” refers to logic embodied in computing or firmware, or to a collection of software instructions, written in a programming language, such as, Java, C, or assembly. One or more software instructions in the modules may be embedded in firmware, such as in an erasable programmable read only memory (EPROM). The modules described herein may be implemented as either software and/or computing modules and may be stored in any type of non-transitory computer-readable medium or other storage device. Some non-limiting examples of non-transitory computer-readable media include CDs, DVDs, BLU-RAY™, flash memory, and hard disk drives. The term “comprising” means “including, but not necessarily limited to”; it specifically indicates open-ended inclusion or membership in a so-described combination, group, series and the like.
In at least one embodiment, the storage device 12 can be an internal storage device, such as a flash memory, a random access memory (RAM) for temporary storage of information, and/or a read-only memory (ROM) for permanent storage of information. The storage device 12 can also be an external storage device, such as an external hard disk, a storage card, or a data storage medium. The at least one processor 14 can be a central processing unit (CPU), a microprocessor, or other data processor chip that performs functions of the computing device 1.
Referring to
At block 301, the initialization module 100 controls the rotating device 4 to rotate to one or more rotation angles of the rotating device 4. In at least one embodiment, the rotating device 4 includes an angular transducer to detect each rotation angle of the rotating device 4. The rotating device 4 is controlled to stop rotating when the rotating device 4 is rotated to the rotation angles.
At block 302, the generation module 102 generates a first coordinate system and one or more second coordinate systems according to one or more rotation angles of the rotating device 4, obtains point clouds of the object based on the second coordinate systems from a scanner 40 of the rotating device 4. The first coordinate system is generated as follow: a center point of a platform of the rotating device 4 is an origin of coordinate, a Z axis of the first coordinate system is vertical to a surface of the platform of the rotating device 4, a Y axis and an X axis of the first coordinate system are parallel with the surface of the platform. The first coordinate system rotates one rotation angle when the rotating device 4 rotates one rotation angle. The second coordinate system is generated when the first coordinate system rotates one rotation angle. That is, each second coordinate system is related to one rotation angle. If the first coordinate system rotates ten rotation angles, and ten second coordinate system are generated. The first coordinate system and all second coordinate systems share an origin of coordinate and one axis (for example, a Z axis), as shown in
At block 303, the conversion module 104 converts each point cloud of the object based on the second coordinate system to a point cloud of the object based on the first coordinate system. In at least one embodiment, a first matrix is generated for the first coordinate system, which includes four rows and four columns, such as
A second matrix is generated for a second coordinate system according to the rotation angle θ, which includes four rows and four columns, such as
The point clouds of the object are converted from the second coordinate system to the first coordinate system using a formula as follow: A1=A2*a2, where A1 is an array including coordinates of each point of the point clouds of the object based on the first coordinate system and the A2 is an array including coordinates of each point of the point clouds of the object based on the second coordinate system.
At block 304, the jointing module 106 joints all point clouds based on the first coordinate system to generate a total point cloud of the object. In the embodiment, the total point cloud of the object is generated by deleting repeated points of the point clouds from the first coordinate system, and integrating undeleted points of the point clouds in the first coordinate system to generate the total point cloud of the object. Each of the repeated points has the same coordinates with at least another point. In at least one embodiment, if all point clouds of the object are jointed under the first coordinate system, and one or more repeated points are searched from all point clouds of the object.
The embodiments shown and described above are only examples. Even though numerous characteristics and advantages of the present technology have been set forth in the foregoing description, together with details of the structure and function of the present disclosure, the disclosure is illustrative only, and changes may be made in the detail, including in particular the matters of shape, size and arrangement of parts within the principles of the present disclosure, up to and including the full extent established by the broad general meaning of the terms used in the claims.
Number | Date | Country | Kind |
---|---|---|---|
201410462365.6 | Sep 2014 | CN | national |