Three-dimensional scanning method, device, electronic device and storage medium

By using auxiliary system positioning and geometric feature stitching methods, combined with ICP and NDT algorithms, the automation and efficient stitching of three-dimensional scanning are achieved, solving the problem of low automation level of flip scanning in the existing technology and improving the integrity and accuracy of the scanning.

CN119860722BActive Publication Date: 2025-09-30ZG TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411915369.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-24
Publication Date
2025-09-30
Estimated Expiration
2044-12-24

AI Technical Summary

Technical Problem

Existing three-dimensional scanning methods have low automation and efficiency during the flip scanning process and require manual intervention, making it difficult to achieve a complete scan of the target object.

Method used

The auxiliary system positioning scanning head method is used to splice the original data of the first surface. During the flipping process, the initial transformation relationship is determined by geometric feature stitching, and the ICP and NDT algorithms are combined for data alignment to achieve automatic stitching of the target object.

Benefits of technology

It improves the automation and efficiency of scanning, reduces manual intervention, ensures the integrity and accuracy of scanning, and avoids scanning omissions and incorrect splicing.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119860722B_ABST
    Figure CN119860722B_ABST
Patent Text Reader

Abstract

The present invention provides a three-dimensional scanning method, device, electronic device, and storage medium, belonging to the field of scanning technology. The method comprises: when a scanning head scans a first surface of a target object, obtaining first scanned raw data, and splicing the first raw data to obtain first scan data; during a flipping process, obtaining second scanned raw data, splicing the second raw data to obtain second scan data, and determining an initial transformation relationship from the second surface to the first surface; when the scanning head scans the second surface of the target object, obtaining third scanned raw data, splicing the third raw data, and initially aligning the third raw scan data based on the initial transformation relationship to obtain third scan data; and precisely aligning the first scan data with the third scan data to obtain a complete scan model. The present invention can solve the problems of low scanning automation and low efficiency in the flipping scanning process of existing three-dimensional scanning methods.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of scanning technology, and in particular to a three-dimensional scanning method, device, electronic equipment and storage medium. Background Art

[0002] 3D scanning aims to obtain complete 3D model data of the target, but often due to occlusion, invisible position, and other reasons, a complete scan cannot be completed in one go. Even by changing stations or attaching markers, a complete scan cannot be achieved in one go. Existing 3D scanning methods include target point sticking, scanner tracking, laser scanning, and others. All of these require that the object cannot be moved. (Although the sticking method can achieve a complete scan by sticking points on all surfaces, there are also cases where markers cannot be transferred and multiple scans are necessary.) Currently, the main method is to flip the target object, scan it in multiple groups, and then manually specify the same-name points at the overlapping points of the multiple groups for initial stitching. Then, algorithms such as ICP are used for precise stitching.

[0003] The existing multi-group scanning method determines that it has the following problems: 1. The same target needs to be scanned in groups, which is not flexible enough; 2. There is a manual intervention process and the degree of automation is not high; 3. Multiple group scans may have omissions and need to be re-scanned; 4. The efficiency is relatively low; 5. It is easier to identify corner points when manually finding corresponding points, but in targets with mainly curved surfaces, it is sometimes difficult to find suitable feature points, resulting in the inability to complete the initial splicing.

[0004] In summary, the existing three-dimensional scanning methods have the problems of low scanning automation and low efficiency during the flip scanning process. Summary of the Invention

[0005] In view of this, it is necessary to provide a three-dimensional scanning method, device, electronic device and storage medium to solve the technical problems of low scanning automation and low efficiency in the flip scanning process of the existing three-dimensional scanning method.

[0006] In order to solve the above problems, the present invention provides a three-dimensional scanning method, comprising:

[0007] When the scanning head scans the first surface of the target object, first raw data obtained by the scanning head is acquired, and the first raw data is spliced ​​using a method for positioning the scanning head by an auxiliary system to obtain first scan data;

[0008] During the flipping process, second original data obtained by scanning with the scanning head is acquired in real time, and the second original data is spliced ​​using a geometric feature splicing method to obtain second scan data, and an initial transformation relationship from the second surface to the first surface is determined based on the second scan data;

[0009] When the scanning head scans the second surface of the target object, third original data obtained by the scanning head is acquired, the third original data is spliced ​​using the auxiliary system positioning scanning head method, and the third original scan data is initially aligned based on the initial transformation relationship to obtain third scan data;

[0010] The first scan data is precisely aligned with the third scan data to obtain a complete scan model.

[0011] In a possible implementation, the second original data is spliced ​​using a geometric feature splicing method to obtain the second scan data, including:

[0012] During the flipping process, the fused data of the previous frame is spliced ​​with the original data of the current frame in the second original data to obtain the spliced ​​data of the current frame;

[0013] The current frame original data is transformed into the coordinate system of the previous frame fusion data through the current frame splicing data, and fused with the previous frame fusion data to obtain the current frame fusion data until the last frame fusion data in the flipping process is obtained, and the second scan data is obtained based on the last frame fusion data.

[0014] In a possible implementation, the fused data at the initial moment of the flipping process is the first scanning data.

[0015] In a possible implementation, the second original data is spliced ​​using a geometric feature splicing method to obtain the second scan data, further comprising:

[0016] During the flipping process, if it is determined that the current frame spliced ​​data obtained by splicing the previous frame fusion data with the current frame original data in the second original data has a splicing anomaly, the previous frame fusion data and the current frame original data in the second original data are rasterized to obtain a voxel space;

[0017] Project the point cloud in voxel space into the normal distribution field to obtain the optimal transformation matrix;

[0018] The point cloud in the voxel space is transformed based on the optimal transformation matrix to implement a splicing operation on the second original data to obtain second scan data.

[0019] In one possible implementation, the point cloud in the voxel space is projected into a normal distribution field to obtain an optimal transformation matrix, including:

[0020] Construct a Gaussian distribution model based on the mean and variance of the point cloud in voxel space;

[0021] Based on the Gaussian distribution model, the point cloud in the voxel space is projected into the normal distribution field to obtain the optimal transformation matrix.

[0022] In one possible implementation, based on a Gaussian distribution model, the point cloud in the voxel space is projected into a normal distribution field to obtain an optimal transformation matrix, including:

[0023] Based on the Gaussian distribution model, the point cloud in the voxel space is projected into the normal distribution field, and the Newton method optimization algorithm or the gradient descent method is used to iteratively solve the transformation matrix of the projection in the normal distribution field until the transformation amount of the transformation matrix is ​​less than the preset threshold or the number of iterations reaches the maximum number of iterations, and the final transformation matrix is ​​determined as the optimal transformation matrix.

[0024] In one possible implementation, the first scan data and the third scan data are precisely aligned to obtain a complete scan model, including:

[0025] The first scan data and the third scan data are precisely aligned using the closest point iterative algorithm to obtain a complete scan model.

[0026] In another aspect, the present invention further provides a three-dimensional scanning device, comprising:

[0027] A first splicing module is configured to obtain first raw data obtained by the scanning head when the scanning head scans the first surface of the target object, and to splice the first raw data using a method for positioning the scanning head by an auxiliary system to obtain first scanned data;

[0028] a transformation relationship determination module, configured to acquire, in real time during the flipping process, second raw data scanned by the scanning head, and stitch the second raw data using a geometric feature stitching method to obtain second scan data, and determine an initial transformation relationship from the second surface to the first surface based on the second scan data;

[0029] a second stitching module, configured to obtain third raw data scanned by the scanning head when the scanning head scans the second surface of the target object, stitch the third raw data using a method for positioning the scanning head by the auxiliary system, and initially align the third raw scan data based on an initial transformation relationship to obtain third scan data;

[0030] The precise alignment module is used to precisely align the first scan data with the third scan data to obtain a complete scan model.

[0031] On the other hand, the present invention also provides an electronic device, comprising a memory and a processor, wherein:

[0032] The memory is used to store programs;

[0033] The processor is coupled to the memory and is used to execute the program stored in the memory to implement the steps of any one of the three-dimensional scanning methods described above.

[0034] On the other hand, the present invention further provides a non-transitory computer-readable storage medium having a computer program stored thereon, which implements the steps of any of the above-described three-dimensional scanning methods when executed by a processor.

[0035] The beneficial effects of adopting the above-mentioned implementation method are as follows: the three-dimensional scanning method, device, electronic device and storage medium provided by the present invention, when the scanning head scans the first surface of the target object, adopts the auxiliary system positioning scanning head method to splice the first original data to obtain the first scanning data; during the flipping process, the second original data is spliced ​​by geometric feature splicing to obtain the second scanning data, and the initial transformation relationship from the second surface to the first surface is determined based on the second scanning data; when the scanning head scans the second surface of the target object, the auxiliary system positioning scanning head method is adopted to splice the third original data, and the third original scanning data is initially aligned based on the initial transformation relationship to obtain the third scanning data; the first scanning data and the third scanning data are accurately aligned to obtain a complete scanning model.

[0036] Among them, the first surface and the second surface correspond to different surfaces of the target object respectively. In the process of switching from the first surface to the second surface, that is, in the flipping process, the initial transformation relationship from the second surface to the first surface is determined based on the original data obtained by scanning, so as to perform initial alignment on the original scanning data of the second surface, and finally perform precise alignment, so as to obtain a complete scanning model. Therefore, when the target object is blocked or cannot be flipped over for scanning as needed during the scanning process, the second original data is spliced ​​and the initial transformation relationship is determined by using geometric feature splicing, so that subsequent alignment operations can be realized, and finally a complete scanning model is obtained, and there is no need to manually process the flipping scanning data, thereby solving the technical problems of low scanning automation and low efficiency in the flipping scanning process of the existing three-dimensional scanning method. BRIEF DESCRIPTION OF THE DRAWINGS

[0037] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative work.

[0038] Figure 1 A flowchart of an embodiment of the three-dimensional scanning method provided by the present invention;

[0039] Figure 2A schematic diagram of the flip transition scan provided by the present invention;

[0040] Figure 3 A schematic diagram of the scan data alignment and merging process provided by the present invention;

[0041] Figure 4 A functional block diagram of an embodiment of a three-dimensional scanning device provided by the present invention;

[0042] Figure 5 This is a schematic structural diagram of an embodiment of the electronic device provided by the present invention. DETAILED DESCRIPTION

[0043] The following will provide a clear and complete description of the technical solutions in the embodiments of the present invention in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of them. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present invention.

[0044] In the description of the embodiments of the present application, unless otherwise specified, “a plurality of” means two or more.

[0045] The terms "including" and "having" and any variations thereof in the embodiments of the present invention are intended to cover non-exclusive inclusions. For example, a process, method, apparatus, product or device comprising a series of steps or modules is not necessarily limited to those steps or modules explicitly listed, but may include other steps or modules not explicitly listed or inherent to these processes, methods, products or devices.

[0046] The naming or numbering of the steps in the embodiments of the present invention does not mean that the steps in the method flow must be executed in the time / logical sequence indicated by the naming or numbering. The execution order of the named or numbered process steps can be changed according to the technical purpose to be achieved, as long as the same or similar technical effects can be achieved.

[0047] References herein to "embodiments" mean that a particular feature, structure, or characteristic described in connection with the embodiments may be included in at least one embodiment of the present invention. The appearance of this phrase in various places in the specification does not necessarily refer to the same embodiment, nor does it constitute a separate or alternative embodiment that is mutually exclusive of other embodiments. It is understood, both explicitly and implicitly, by those skilled in the art that the embodiments described herein may be combined with other embodiments.

[0048] The present invention provides a three-dimensional scanning method, device, electronic device and storage medium, which are described below respectively.

[0049] like Figure 1 As shown, the present invention provides a three-dimensional scanning method, comprising:

[0050] S101, when a scanning head scans a first surface of a target object, obtaining first raw data obtained by the scanning head, and splicing the first raw data using a method for positioning the scanning head using an auxiliary system of the scanning head itself to obtain first scan data;

[0051] S102: During the flipping process, second original data obtained by scanning with a scanning head is acquired in real time, and the second original data is spliced ​​using a geometric feature splicing method to obtain second scan data, and an initial transformation relationship from the second surface to the first surface is determined based on the second scan data;

[0052] S103, when the scanning head scans the second surface of the target object, obtaining third raw data obtained by the scanning head, splicing the third raw data using a method for positioning the scanning head using an auxiliary system of the scanning head itself, and initially aligning the third raw scan data based on an initial transformation relationship to obtain third scan data;

[0053] S104 : Accurately align the first scan data with the third scan data to obtain a complete scan model.

[0054] It should be understood that the scanning head in the present invention refers to the terminal unit that acquires scan data. The first surface and the second surface are two different surfaces of the target object, and the flipping process refers to the process of switching from the first surface to the second surface. The auxiliary system positioning scanning head method itself is an auxiliary positioning method of the scanning head. Depending on the scanning method, it may include target positioning, tracking positioning, laser positioning, etc.

[0055] Auxiliary system positioning scanning head method: rely on landmarks or trackers or other high-precision auxiliary systems to position and determine the posture of each frame of the scanning head data, obtain RT (rotation and translation), and convert each frame of data into the coordinate system of the auxiliary system.

[0056] Transition scanning positioning scanning head method: It does not rely on the external system of the scanning head, and obtains RT by splicing three-dimensional data through the geometric features of the scanned target surface.

[0057] In some embodiments, the second raw data is spliced ​​using geometric feature splicing to obtain the second scan data, including:

[0058] During the flipping process, the fused data of the previous frame is spliced ​​with the original data of the current frame in the second original data to obtain the spliced ​​data of the current frame;

[0059] The current frame original data is transformed into the coordinate system of the previous frame fusion data through the current frame splicing data, and fused with the previous frame fusion data to obtain the current frame fusion data until the last frame fusion data in the flipping process is obtained, and the second scan data is obtained based on the last frame fusion data.

[0060] The fused data at the initial moment of the flipping process is the first scanning data.

[0061] In some embodiments, the second raw data is spliced ​​using geometric feature splicing to obtain the second scan data, further comprising:

[0062] During the flipping process, if it is determined that the current frame spliced ​​data obtained by splicing the previous frame fusion data with the current frame original data in the second original data has a splicing anomaly, the previous frame fusion data and the current frame original data in the second original data are rasterized to obtain a voxel space;

[0063] Project the point cloud in voxel space into the normal distribution field to obtain the optimal transformation matrix;

[0064] The point cloud in the voxel space is transformed based on the optimal transformation matrix to implement a splicing operation on the second original data to obtain second scan data.

[0065] In some embodiments, projecting the point cloud in voxel space into a normal distribution field to obtain an optimal transformation matrix includes:

[0066] Construct a Gaussian distribution model based on the mean and variance of the point cloud in voxel space;

[0067] Based on the Gaussian distribution model, the point cloud in the voxel space is projected into the normal distribution field to obtain the optimal transformation matrix.

[0068] In some embodiments, based on a Gaussian distribution model, projecting a point cloud in voxel space into a normal distribution field to obtain an optimal transformation matrix includes:

[0069] Based on the Gaussian distribution model, the point cloud in the voxel space is projected into the normal distribution field, and the Newton method optimization algorithm or the gradient descent method is used to iteratively solve the transformation matrix of the projection in the normal distribution field until the transformation amount of the transformation matrix is ​​less than the preset threshold or the number of iterations reaches the maximum number of iterations, and the final transformation matrix is ​​determined as the optimal transformation matrix.

[0070] In some embodiments, the first scan data and the third scan data are precisely aligned to obtain a complete scan model, including:

[0071] The first scan data and the third scan data are precisely aligned using the closest point iterative algorithm to obtain a complete scan model.

[0072] In some embodiments, the present invention provides a three-dimensional scanning method, including:

[0073] The scanning head scans the target, such as Figure 2 As shown, it is assumed that the upper surface A, also called the A surface or the first surface, is scanned. At this time, the scanning is normal, the visible transition surface at the upper surface A is scanned, and the scanning is sufficient. The data splicing in the scanning process is spliced ​​using the original method of the scanner itself (that is, the auxiliary system positioning scanning head method) to obtain the scan data A (that is, the first scan data).

[0074] Switch to the flip-over real-time transition scanning mode. At this time, the stitching does not use the original method of the scanner itself, but switches to the transition scanning positioning scanning head method (i.e.: geometric feature-based stitching method).

[0075] At this time, the relative position between the target object and the scanning head can be moved, and the scanner is kept following the transition area. Each frame of data obtained after the switch is spliced. The specific steps are: (1) Initially, the scanning data A (i.e., the first scanning data) is used as the fusion data Data_RA; (2) The current frame data (assuming it is I) is spliced ​​with the fusion data Data_RA to obtain the current frame splicing data RT_ItoRA; (3) After the splicing is completed, the current frame data I is transformed to the scanning data A coordinate system through RT_ItoRA, and fused with the scanning data A to obtain the current frame fusion data Data_RA; (4) Scan the next frame of data, repeat steps (2) and (3), and obtain the latest RT_ItoRA in real time; (5) The scanning is repeated in this way to keep the latest RT_ItoRA and Data_RA.

[0076] Real-time transition following, reference Figure 2 , and the transition scan continues to the lower surface B (ie, the second surface), thus completing the transition scan in the flipping process, and saving the RT_ItoRA obtained at this time as the initial transformation relationship RT_InitBtoA from the scanning surface B to A.

[0077] Switch to normal scanning mode and scan surface B (lower surface + visible transition surface at surface B). When stitching is involved in this process, in addition to the data stitching of the scanning system itself, the scanned data is transformed using the RT_InitBtoA initial transformation relationship. At this time, the scanned data surface B and the scanned data A will form an initially stitched whole, which is helpful for observing where there are gaps during the scanning process so that they can be filled in time.

[0078] After completing the B surface scan, data scan data B (ie, the third scan data) is obtained. Since data B has been converted through the RT_InitBtoA initial transformation relationship, the scan data B and the scan data A have achieved initial alignment.

[0079] Use the ICP algorithm to align scan data B to scan data A to obtain the precise splicing relationship RT_BtoA. Use RT_BtoA to transform scan data B to the coordinate system of scan data A, and then obtain an accurate complete scan model. Figure 3 The figure shows a schematic diagram of the scan data alignment and merging process.

[0080] In some embodiments, the geometric feature stitching step includes:

[0081] Geometric feature stitching is generally completed using the ICP algorithm.

[0082] ICP Algorithm Description: The ICP algorithm is a 3D data stitching algorithm designed to compare or fuse data acquired using different acquisition devices, at different times, and with different camera poses. The ICP algorithm has the advantage of adapting to a wide variety of geometric shapes. Therefore, if the reference point cloud and the point cloud to be registered describe the same target object, a spatial transformation can be used to find a mapping from point cloud to point cloud, matching object points at the same location in the world coordinate system.

[0083] The loss function of the point cloud registration problem can be written as:

[0084]

[0085] In the present invention, a sparse real-time point cloud is generally collected in a single frame, and the object to be spliced ​​is a three-dimensional model of a surface expressed by a triangulated network. Therefore, a point-to-plane strategy (Point-plane ICP) is adopted for splicing in the process of geometric feature splicing.

[0086] The iterative closest point (ICP) algorithm, which uses a point-to-plane error metric, has been shown to converge faster than algorithms using a point-to-point error metric. In each iteration of the ICP algorithm, the relative pose change that yields the minimum point-to-plane error is typically solved using a standard nonlinear least squares method, such as the Levenberg-Marquardt method. When using a point-to-plane error metric, the objective to be minimized is the sum of the squared distances between each source point and the tangent plane of its corresponding target point.

[0087] Determination of initial value: In the present invention, because the data of two adjacent frames are very close in time and space, the RT conversion relationship calculated in the previous frame can be used as the initial value of the current frame. In this way, the splicing alignment process can be completed quickly to meet the real-time requirements.

[0088] How to handle splicing exceptions:

[0089] During the scanning process, the continuous stitching process may be lost due to excessive transition speed, and the above stitching method may fail, resulting in stitching anomalies. In this case, the NDT algorithm (normal distribution transformation algorithm) can be used for initial stitching to restore the scanning posture.

[0090] The NDT algorithm is less sensitive to the density and initial alignment of the data and is more robust to initial alignment. When the initial value is uncertain, it can be used to obtain the initial value.

[0091] The iterative process of the NDT algorithm includes the following steps: 1. Divide the point cloud data into a grid, forming a voxel space. 2. Calculate the mean and variance of the points within each voxel to establish a Gaussian distribution model. 3. Perform probabilistic projection of the source point cloud onto a normally distributed field. 4. Use optimization techniques (such as Newton's method or gradient descent) to find the optimal transformation matrix T. 5. Apply the transformation matrix T to transform the source point cloud. 6. Repeat this process until a termination criterion is met (e.g., the change in the transformation matrix is ​​less than a threshold or the maximum number of iterations is reached).

[0092] The three-dimensional scanning method provided by the present invention can be applied to targets with multiple occluding surfaces:

[0093] Some targets may have multiple occluding surfaces. The three-dimensional scanning method provided by the present invention can also be extended to multiple flips: first, flip them one by one, record the initial values ​​obtained by the transition scan, and the data before and after the flip, that is, record the labels when switching, and splice them in sequence; finally, perform data processing, and adjust the multiple scanning data to perform global optimization of the conversion relationship.

[0094] The three-dimensional scanning method provided by the present invention has the following beneficial effects:

[0095] 1. High degree of automation;

[0096] 2. Easy to operate;

[0097] 3. No manual intervention required, high efficiency;

[0098] 4. You can check the scanning effect of the flip side in real time to avoid incorrect splicing and scanning omissions.

[0099] like Figure 4 As shown, the present invention further provides a three-dimensional scanning device 400, comprising:

[0100] A first stitching module 401 is configured to obtain first raw data obtained by the scanning head when the scanning head scans the first surface of the target object, and stitch the first raw data using a method for positioning the scanning head using an auxiliary system of the scanning head itself to obtain first scanned data;

[0101] The transformation relationship determination module 402 is configured to acquire, in real time during the flipping process, second raw data scanned by the scanning head, and stitch the second raw data using a geometric feature stitching method to obtain second scan data, and determine an initial transformation relationship from the second surface to the first surface based on the second scan data;

[0102] The second stitching module 403 is configured to obtain third raw data obtained by the scanning head when the scanning head scans the second surface of the target object, stitch the third raw data using a method for positioning the scanning head using the auxiliary system of the scanning head itself, and perform initial alignment on the third raw scan data based on an initial transformation relationship to obtain third scan data;

[0103] The precise alignment module 404 is configured to precisely align the first scan data with the third scan data to obtain a complete scan model.

[0104] The three-dimensional scanning device provided in the above embodiment can implement the technical solution described in the above three-dimensional scanning method embodiment. The specific implementation principles of the above modules or units can be found in the corresponding contents in the above three-dimensional scanning method embodiment, which will not be repeated here.

[0105] like Figure 5 As shown, the present invention also provides an electronic device 500. The electronic device 500 includes a processor 501, a memory 502 and a display 503. Figure 5 Only some of the components of the electronic device 500 are shown, but it should be understood that implementation of all of the shown components is not required, and more or fewer components may be implemented instead.

[0106] In some embodiments, the memory 502 may be an internal storage unit of the electronic device 500, such as a hard disk or memory of the electronic device 500. In other embodiments, the memory 502 may also be an external storage device of the electronic device 500, such as a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, a flash card, etc. equipped on the electronic device 500.

[0107] Furthermore, the memory 502 may include both an internal storage unit of the electronic device 500 and an external storage device. The memory 502 is used to store application software installed in the electronic device 500 and various data.

[0108] In some embodiments, the processor 501 may be a central processing unit (CPU), a microprocessor, or other data processing chip, configured to execute program codes or process data stored in the memory 502 , such as the three-dimensional scanning method of the present invention.

[0109] In some embodiments, display 503 can be an LED display, a liquid crystal display, a touch-sensitive liquid crystal display, or an OLED (Organic Light-Emitting Diode) touchscreen. Display 503 is used to display information on electronic device 500 and to display a visual user interface. Components 501-503 of electronic device 500 communicate with each other via a system bus.

[0110] In some embodiments of the present invention, when the processor 501 executes the three-dimensional scanning program in the memory 502, the following steps may be implemented:

[0111] When the scanning head scans the first surface of the target object, first raw data obtained by the scanning head is acquired, and the first raw data is spliced ​​using a method for positioning the scanning head using an auxiliary system of the scanning head itself to obtain first scanned data;

[0112] During the flipping process, second original data obtained by scanning with the scanning head is acquired in real time, and the second original data is spliced ​​using a geometric feature splicing method to obtain second scan data, and an initial transformation relationship from the second surface to the first surface is determined based on the second scan data;

[0113] When the scanning head scans the second surface of the target object, third raw data obtained by the scanning head is acquired, the third raw data is spliced ​​using a method for positioning the scanning head using an auxiliary system of the scanning head itself, and the third raw scan data is initially aligned based on an initial transformation relationship to obtain third scan data;

[0114] The first scan data is precisely aligned with the third scan data to obtain a complete scan model.

[0115] It should be understood that, when the processor 501 executes the three-dimensional scanning program in the memory 502 , in addition to the above functions, it can also implement other functions. For details, please refer to the description of the corresponding method embodiment above.

[0116] Furthermore, the embodiments of the present invention do not specifically limit the type of electronic device 500 mentioned. The electronic device 500 may be a portable electronic device such as a mobile phone, tablet computer, personal digital assistant (PDA), wearable device, or laptop computer. Exemplary embodiments of portable electronic devices include, but are not limited to, portable electronic devices running iOS, Android, Microsoft, or other operating systems. The portable electronic devices mentioned above may also be other portable electronic devices, such as a laptop computer with a touch-sensitive surface (e.g., a touch panel). It should also be understood that in other embodiments of the present invention, the electronic device 500 may not be a portable electronic device, but rather a desktop computer with a touch-sensitive surface (e.g., a touch panel).

[0117] In another aspect, the present invention further provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, is implemented to perform the three-dimensional scanning method provided by the above methods, the method comprising:

[0118] When the scanning head scans the first surface of the target object, first raw data obtained by the scanning head is acquired, and the first raw data is spliced ​​using a method for positioning the scanning head using an auxiliary system of the scanning head itself to obtain first scanned data;

[0119] During the flipping process, second original data obtained by scanning with the scanning head is acquired in real time, and the second original data is spliced ​​using a geometric feature splicing method to obtain second scan data, and an initial transformation relationship from the second surface to the first surface is determined based on the second scan data;

[0120] When the scanning head scans the second surface of the target object, third raw data obtained by the scanning head is acquired, the third raw data is spliced ​​using a method for positioning the scanning head using an auxiliary system of the scanning head itself, and the third raw scan data is initially aligned based on an initial transformation relationship to obtain third scan data;

[0121] The first scan data is precisely aligned with the third scan data to obtain a complete scan model.

[0122] Those skilled in the art will appreciate that all or part of the process steps of the above-described embodiments can be implemented by instructing related hardware through a computer program, and the program can be stored in a computer-readable storage medium, such as a magnetic disk, an optical disk, a read-only memory, or a random access memory.

[0123] The three-dimensional scanning method, device, electronic device and storage medium provided by the present invention are introduced in detail above. Specific examples are used herein to illustrate the principles and implementation methods of the present invention. The description of the above embodiments is only used to help understand the method of the present invention and its core ideas. At the same time, for those skilled in the art, according to the ideas of the present invention, there may be changes in the specific implementation methods and application scopes. In summary, the contents of this specification should not be understood as limiting the present invention.

Claims

1. A three-dimensional scanning method, characterized in that: include: When the scanning head scans the first surface of the target object, first raw data obtained by the scanning head is acquired, and the first raw data is spliced ​​using a method for positioning the scanning head by an auxiliary system to obtain first scan data; During the flipping process, second original data obtained by scanning with the scanning head is acquired in real time, and the second original data is spliced ​​using a geometric feature splicing method to obtain second scan data, and an initial transformation relationship from the second surface to the first surface is determined based on the second scan data; When the scanning head scans the second surface of the target object, third original data obtained by the scanning head is acquired, the third original data is spliced ​​using the auxiliary system positioning scanning head method, and the third original scan data is initially aligned based on the initial transformation relationship to obtain third scan data; The first scan data is precisely aligned with the third scan data to obtain a complete scan model.

2. The three-dimensional scanning method according to claim 1, characterized in that: The second original data is spliced ​​using a geometric feature splicing method to obtain second scan data, including: During the flipping process, the fused data of the previous frame is spliced ​​with the original data of the current frame in the second original data to obtain the spliced ​​data of the current frame; The current frame original data is transformed into the coordinate system of the previous frame fusion data through the current frame splicing data, and fused with the previous frame fusion data to obtain the current frame fusion data until the last frame fusion data in the flipping process is obtained, and the second scan data is obtained based on the last frame fusion data.

3. The three-dimensional scanning method according to claim 2, characterized in that: The fused data at the initial moment of the flipping process is the first scanning data.

4. The three-dimensional scanning method according to claim 2, characterized in that: The second original data is spliced ​​by using a geometric feature splicing method to obtain second scan data, and further includes: During the flipping process, if it is determined that the current frame spliced ​​data obtained by splicing the previous frame fusion data with the current frame original data in the second original data has a splicing anomaly, the previous frame fusion data and the current frame original data in the second original data are rasterized to obtain a voxel space; Project the point cloud in voxel space into the normal distribution field to obtain the optimal transformation matrix; The point cloud in the voxel space is transformed based on the optimal transformation matrix to implement a splicing operation on the second original data to obtain second scan data.

5. The three-dimensional scanning method according to claim 4, characterized in that: Project the point cloud in voxel space into the normal distribution field to obtain the optimal transformation matrix, including: Construct a Gaussian distribution model based on the mean and variance of the point cloud in voxel space; Based on the Gaussian distribution model, the point cloud in the voxel space is projected into the normal distribution field to obtain the optimal transformation matrix.

6. The three-dimensional scanning method according to claim 5, characterized in that: Based on the Gaussian distribution model, the point cloud in the voxel space is projected into the normal distribution field to obtain the optimal transformation matrix, including: Based on the Gaussian distribution model, the point cloud in the voxel space is projected into the normal distribution field, and the Newton method optimization algorithm or the gradient descent method is used to iteratively solve the transformation matrix of the projection in the normal distribution field until the transformation amount of the transformation matrix is ​​less than the preset threshold or the number of iterations reaches the maximum number of iterations, and the final transformation matrix is ​​determined as the optimal transformation matrix.

7. The three-dimensional scanning method according to any one of claims 1 to 6, characterized in that: The first scan data is precisely aligned with the third scan data to obtain a complete scan model, including: The first scan data and the third scan data are precisely aligned using the closest point iterative algorithm to obtain a complete scan model.

8. A three-dimensional scanning device, characterized in that: include: A first splicing module is configured to obtain first raw data obtained by the scanning head when the scanning head scans the first surface of the target object, and to splice the first raw data using a method for positioning the scanning head by an auxiliary system to obtain first scanned data; a transformation relationship determination module, configured to acquire, in real time during the flipping process, second raw data scanned by the scanning head, and stitch the second raw data using a geometric feature stitching method to obtain second scan data, and determine an initial transformation relationship from the second surface to the first surface based on the second scan data; a second stitching module, configured to obtain third raw data scanned by the scanning head when the scanning head scans the second surface of the target object, stitch the third raw data using a method for positioning the scanning head by the auxiliary system, and initially align the third raw scan data based on an initial transformation relationship to obtain third scan data; The precise alignment module is used to precisely align the first scan data with the third scan data to obtain a complete scan model.

9. An electronic device, characterized in that: comprising a memory and a processor, wherein, The memory is used to store programs; The processor is coupled to the memory and is configured to execute the program stored in the memory to implement the steps of the three-dimensional scanning method according to any one of claims 1 to 7.

10. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the three-dimensional scanning method according to any one of claims 1 to 7 are implemented.

Citation Information

Patent Citations

  • Scanning method and system of three-dimensional images

    CN108389221A

  • Three-dimensional scanning method, three-dimensional measurement method, three-dimensional scanning system and electronic device

    CN115830249A