Three-dimensional scanning data processing method, device and system
By adopting a multi-resolution processing method during the three-dimensional scanning process, combining tree data structure and deduplication operations, the problem of inconsistency between real-time display and final display is solved, and the complete consistent display of point cloud data is achieved.
Patent Information
- Application Number
- CN202510569208.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-30
- Publication Date
- 2025-08-26
AI Technical Summary
During the three-dimensional scanning process, the point cloud data displayed in real time is inconsistent with the point cloud data that is finally presented, resulting in poor user experience.
By fusing the three-dimensional scan data at the first resolution, the first point cloud data is obtained, and further processing is performed at the second resolution set by the user. Combining the tree data structure and deduplication operation, multi-resolution point cloud data is generated and finally displayed.
Ensure that the point cloud data displayed in real time is consistent with the final point cloud data displayed, and can fully present the shape and detailed characteristics of the target object.
Smart Images

Figure CN120543390A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of scanning technology, and in particular to a method, device and system for processing three-dimensional scanning data. Background Art
[0002] When using a 3D scanning device to obtain a 3D reconstruction model of a target object or environment, it is necessary to process the scanned data in real time and display the processed point cloud data in real time.
[0003] When post-processing scanned data, users often select the required resolution. When processing scanned data at the resolution selected by the user, the resolution selected by the user is inconsistent with the resolution used in the real-time processing process, resulting in inconsistencies between the point cloud data displayed in real time and the point cloud data presented in the end. For example, the point cloud displayed in real time is complete, while the point cloud presented in the end is missing a certain area, which brings a bad experience to the user. Summary of the Invention
[0004] The purpose of this application is to provide a method for processing three-dimensional scanning data, which can ensure that the point cloud displayed in real time during the scanning process is consistent with the range of the final displayed point cloud.
[0005] In a first aspect, the present application provides a method for processing three-dimensional scanning data, the method comprising:
[0006] Acquire three-dimensional scanning data of the target object;
[0007] Performing fusion processing on the three-dimensional scanning data at a first resolution to obtain first point cloud data;
[0008] In response to the second resolution, performing fusion processing on the three-dimensional scanning data to obtain second point cloud data, wherein a value of the first resolution is greater than a value of the second resolution;
[0009] The first point cloud data and the second point cloud data are deduplicated and fused to obtain multi-resolution point cloud data of the target object, and the multi-resolution point cloud data is finally displayed.
[0010] Optionally, in response to the second resolution, fusing the three-dimensional scanning data to obtain second point cloud data includes:
[0011] In response to a first operation instruction of a user, determining a second resolution based on the first operation instruction;
[0012] In response to the second resolution, the three-dimensional scanning data is fused to obtain second point cloud data.
[0013] Optionally, deduplication and fusion are performed on the second point cloud data based on the first point cloud data to obtain multi-resolution point cloud data of the target object, and the multi-resolution point cloud data is finally displayed, including:
[0014] Constructing a corresponding tree data structure based on the second point cloud data;
[0015] performing a filtering operation on the first point cloud data according to the tree data structure to obtain filtered first point cloud data;
[0016] Fusing the filtered first point cloud data with the second point cloud data to obtain multi-resolution point cloud data of the target object;
[0017] The multi-resolution point cloud data is finally displayed in the user interface.
[0018] Optionally, filtering the first point cloud data according to the tree data structure to obtain filtered first point cloud data includes:
[0019] For each data point in the first point cloud data, the tree data structure is traversed to search for the nearest point corresponding to the data point, and the distance between the data point and the nearest point is calculated. If the distance is less than a preset distance threshold, the data point is deleted from the first point cloud data; otherwise, the data point is retained to obtain the filtered first point cloud data.
[0020] Optionally, the 3D scanning data is fused to obtain first point cloud data, including:
[0021] Acquire the current frame 3D scanning data of the target object in real time;
[0022] Filter the three-dimensional scanning data of the current frame to obtain the third point cloud data of the current frame;
[0023] Update the real-time point cloud based on the third point cloud data of the current frame;
[0024] Display the real-time point cloud.
[0025] Optionally, deduplication and fusion of the first point cloud data and the second point cloud data to obtain multi-resolution point cloud data of the target object include:
[0026] In response to a second operation instruction of the user, determining each target area selected in the real-time point cloud based on the second operation instruction;
[0027] determining, in the second point cloud data, first regions corresponding to the target regions according to their positions, retaining all data points in the first regions in the second point cloud data, and deleting all data points in regions other than the first regions in the second point cloud data, thereby obtaining updated second point cloud data;
[0028] Determining, in the first point cloud data, respective second regions corresponding to respective first regions, and for each second region, deleting, in the first point cloud data, duplicate data points between the second region and the corresponding first region to obtain updated first point cloud data;
[0029] The updated second point cloud data is fused with the updated first point cloud data to obtain multi-resolution point cloud data of the target object.
[0030] In a second aspect, the present application provides a device for processing three-dimensional scanning data, the device comprising:
[0031] An acquisition module, used to acquire three-dimensional scanning data of a target object;
[0032] A first fusion module is used to perform fusion processing on the three-dimensional scanning data at a first resolution to obtain first point cloud data;
[0033] a second fusion module, configured to perform fusion processing on the three-dimensional scanning data in response to a second resolution to obtain second point cloud data, wherein a value of the first resolution is greater than a value of the second resolution;
[0034] The processing module is used to deduplicate and fuse the first point cloud data and the second point cloud data to obtain multi-resolution point cloud data of the target object, and finally display the multi-resolution point cloud data.
[0035] In a third aspect, the present application provides a three-dimensional scanning system, including a three-dimensional scanning device and a processor, wherein the three-dimensional scanning device is communicatively connected to the processor.
[0036] A three-dimensional scanning device for performing three-dimensional scanning of a target object;
[0037] The processor is used to execute the steps of the method for processing three-dimensional scanning data as described above.
[0038] In a fourth aspect, the present application provides a computer device comprising a memory and a processor, wherein a computer program is stored in the memory, and the processor is configured to run the computer program to execute the steps of the three-dimensional scanning data processing method as described above.
[0039] In a fifth aspect, the present application provides a computer-readable storage medium having a computer program stored thereon, which implements the steps of the method for processing three-dimensional scanning data as described above when the computer program is executed by a processor.
[0040] The present application obtains first point cloud data by fusing the three-dimensional scanning data at a first resolution, obtains second point cloud data by fusing the three-dimensional scanning data based on a second resolution set by the user, deduplicates and fuses the first point cloud data and the second point cloud data to obtain multi-resolution point cloud data of the target object, and finally displays the multi-resolution point cloud data, thereby ensuring the consistency between the point cloud data displayed in real time and the post-processed point cloud data, and ensuring that the range of the point cloud displayed in real time during the scanning process is consistent with that of the final displayed point cloud, so that the acquired model of the target object can reflect both the shape range and the detailed features of the target object. BRIEF DESCRIPTION OF THE DRAWINGS
[0041] Figure 1 A diagram illustrating an application scenario of the method for processing three-dimensional scanning data provided in an embodiment of the present application;
[0042] Figure 2 A first flow chart of a method for processing three-dimensional scanning data provided in an embodiment of the present application;
[0043] Figure 3 A schematic diagram of a point cloud real-time display effect based on a first resolution provided in an embodiment of the present application;
[0044] Figure 4 A schematic diagram of a point cloud display effect based on a second resolution provided in an embodiment of the present application;
[0045] Figure 5 A second flow chart of the method for processing three-dimensional scanning data provided in an embodiment of the present application;
[0046] Figure 6 A third flow chart of the method for processing three-dimensional scanning data provided in an embodiment of the present application;
[0047] Figure 7 A fourth flow chart of the method for processing three-dimensional scanning data provided in an embodiment of the present application;
[0048] Figure 8 A fifth flow chart of the method for processing three-dimensional scanning data provided in an embodiment of the present application;
[0049] Figure 9 A system block diagram of a device for processing three-dimensional scanning data provided in an embodiment of the present application;
[0050] Figure 10 A system block diagram of a three-dimensional scanning system provided in an embodiment of the present application;
[0051] Figure 11 A system block diagram of a computer device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0052] The present application will be described in detail below in conjunction with the specific embodiments shown in the accompanying drawings, but these embodiments do not limit the present application. Structural, methodological, or functional changes made by ordinary technicians in this field based on these embodiments are included in the scope of protection of the present application.
[0053] Figure 1 This is an application scenario diagram of the method for processing three-dimensional scanning data in the embodiment of the present application. Figure 1 As shown, a 3D scanning device 101 is in communication with a terminal device 102. The 3D scanning device 101 performs a 3D scan of a target object, acquiring 3D scan data of the target object. The terminal device 102 reconstructs the 3D scan data at a first resolution to obtain first point cloud data. The terminal device 102 then reconstructs the 3D scan data at a second resolution to obtain second point cloud data. Based on the first point cloud data, the terminal device 102 de-dupes and fuses the second point cloud data to obtain multi-resolution point cloud data of the target object, which is then displayed.
[0054] The 3D scanning device 101 can be any optical scanning device for 3D scanning, such as a handheld 3D scanner or a tracking 3D scanner. The terminal device 102 can be any device with computing and communication capabilities and a display interface. The terminal device 102 executes a stored computer program to perform various functions and process data. The communication connection between the terminal device 102 and the 3D scanning device 101 can be wireless or wired.
[0055] The terminal device 102 includes, but is not limited to, mobile terminals and fixed terminals. For example, mobile terminals include, but are not limited to, smartphones, tablet computers, and laptop computers, while fixed terminals include, but are not limited to, desktop computers. The terminal device 102 may also be a server or other device. The server may be an independent physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms, but is not limited thereto.
[0056] It is worth noting that Figure 1This is only a schematic diagram of an application scenario provided by an embodiment of the present application. The system architecture and application scenario described in the embodiment of the present invention are intended to more clearly illustrate the technical solution of the embodiment of the present invention and do not constitute a limitation on the technical solution provided by the embodiment of the present invention. Those skilled in the art will appreciate that with the evolution of system architecture and the emergence of new application scenarios, the technical solution provided by the embodiment of the present invention is equally applicable to similar technical problems.
[0057] Please refer to Figure 2 , an embodiment of the present application provides a method for processing three-dimensional scanning data, the method including steps S201-S204.
[0058] S201, obtaining three-dimensional scanning data of a target object.
[0059] For example, during the real-time scanning phase, a 3D scanning device is controlled to scan a target object (e.g., an object or environment), acquire a scanned image of the target object, and perform 3D reconstruction on the scanned image to obtain 3D scan data of the target object. The 3D scan data can be obtained by the 3D scanning device scanning the target object frame by frame, and thus the 3D scan data can be a single frame or multiple frames of data acquired in real time during the scanning process.
[0060] For example, 3D scan data can be point cloud data or other data representations. For example, point cloud data refers to a set of vectors in a 3D coordinate system. 3D scan data consists of a collection of points, each associated with a set of 3D coordinates representing the point's location and various other attributes, such as color, surface normal, opacity, and reflectivity. Point cloud data reflects information such as the shape of a target object or scene surface and can be used to reconstruct the target object.
[0061] S202 : performing fusion processing on the three-dimensional scanning data at a first resolution to obtain first point cloud data.
[0062] Resolution refers to the distance between adjacent data points, also known as data density or data spacing. The smaller the resolution, the greater the amount of data per unit space; the larger the resolution, the smaller the amount of data per unit space. The amount of data per unit space can be used to describe the quality of the target object's appearance. Therefore, for scan areas with rich details, a larger amount of data is required to achieve higher scan quality, meaning a larger amount of data per unit space is required. For scan areas with less detail in the target object itself, a smaller amount of data is sufficient to describe the target object's appearance.
[0063] For example, the pre-set first resolution for real-time point cloud data refers to the pre-set average distance between every two adjacent points in the point cloud during the real-time scanning process. For example, if the first resolution is set to 1.0 mm, the average distance between every two adjacent points in the first point cloud data is 1.0 mm. The first resolution may be a system default setting and can be set according to user needs.
[0064] For example, the first resolution can be calculated based on the resolution of the real-time point cloud data to obtain a resolution that is close to the resolution of the real-time point cloud data. The first resolution can also be calculated based on the second resolution. The first resolution can also be automatically calculated.
[0065] Exemplarily, at a first resolution, a fusion algorithm is used to perform a point cloud fusion operation on the acquired 3D scan data to obtain first point cloud data. For example, a TSDF algorithm can be used to voxelize the space to be reconstructed corresponding to the 3D scan data to obtain a plurality of voxel grids. Each frame of 3D scan data is then fused to the voxel grids to obtain first point cloud data corresponding to each voxel grid.
[0066] S203 , in response to the second resolution, performing fusion processing on the three-dimensional scanning data to obtain second point cloud data, wherein the value of the first resolution is greater than the value of the second resolution.
[0067] The second resolution set by the user is obtained, and the value of the first resolution is greater than the value of the second resolution. The second resolution is the resolution used in the post-processing process of the acquired 3D scanning data, and the user can set it according to actual needs.
[0068] For example, at the second resolution, a fusion algorithm is used to perform a point cloud fusion operation on the acquired three-dimensional scanning data to obtain second point cloud data. For example, a TSDF (Truncated Signed Distance Function) algorithm can be used to fuse the point cloud data.
[0069] As can be seen from the above description, for the TSDF algorithm, resolution represents the size of each voxel in voxel space. Since high resolution is smaller than low resolution, using high resolution for voxel gridding results in more voxels and smaller voxel sizes compared to using low resolution. Therefore, a higher resolution can more precisely represent the shape and details of the scanned object's surface, but it also increases computational and storage requirements. For example, if the first resolution is 1.0mm and the second resolution is 0.2mm, the number of voxels at the second resolution is greater than that at the first resolution, and the voxel size at the second resolution is smaller than that at the first resolution. Therefore, the lower first resolution used for the first point cloud data used for real-time display can reduce the amount of data computation required during the real-time fusion process and improve the real-time display quality. However, a higher resolution can provide detailed features of the target object. Therefore, during subsequent processing of the 3D scan data, the user can set a higher second resolution than the first resolution to process the 3D scan data at the second resolution to obtain richer detailed features of the target object.
[0070] S204 , deduplicating and fusing the first point cloud data and the second point cloud data to obtain multi-resolution point cloud data of the target object, and finally displaying the multi-resolution point cloud data.
[0071] Due to the lower resolution used in the real-time display of the point cloud and the higher resolution used in the subsequent processing, the point cloud data displayed in real time is inconsistent with the final point cloud data. For example, the point cloud displayed in real time is complete, but there is a missing area in the final point cloud. The missing area is due to insufficient scanning of the area or failure to scan the color spectrum. When a higher resolution is used in the post-processing process, data is lost, resulting in missing areas. Figure 3 The schematic diagram of the real-time display effect of the point cloud based on the first resolution is shown in Figure 4 The schematic diagram of the point cloud display effect based on the second resolution is shown. Figure 3 and Figure 4 ,It can be seen that the point cloud in the red area is deleted with a certain probability, resulting in incomplete display of the area.
[0072] In this embodiment, deduplication and fusion operations are performed on the first point cloud data and the second point cloud data, the points in the first point cloud data that overlap with the second point cloud data are filtered out, and the first point cloud data and the second point cloud data after filtering out the overlapping points are fused to obtain multi-resolution point cloud data of the target object. The multi-resolution point cloud data includes high-resolution points and low-resolution points, so that the missing areas in the point cloud data at the second resolution can be completed.
[0073] In this embodiment, the three-dimensional scanning data is fused at a first resolution to obtain first point cloud data, and the three-dimensional scanning data is fused based on a second resolution set by the user to obtain second point cloud data. The first point cloud data and the second point cloud data are deduplicated and fused to obtain multi-resolution point cloud data of the target object, and the multi-resolution point cloud data is finally displayed, thereby ensuring the consistency between the point cloud data displayed in real time and the post-processed point cloud data, and ensuring that the range of the point cloud displayed in real time during the scanning process is consistent with that of the point cloud finally displayed, so that the acquired model of the target object can reflect both the shape range and the detailed features of the target object.
[0074] One embodiment of the present application, such as Figure 5 As shown, at a first resolution, multiple frames of three-dimensional scanning data are reconstructed to obtain first point cloud data, including steps S501-S504.
[0075] S501, acquiring the current frame three-dimensional scanning data of the target object in real time;
[0076] S502, filtering the three-dimensional scanning data of the current frame to obtain third point cloud data of the current frame;
[0077] S503, updating the real-time point cloud based on the third point cloud data of the current frame;
[0078] S504: Display the real-time point cloud.
[0079] During real-time scanning of a target object by a 3D scanning device, 3D scanning data of the current frame of the target object is obtained. The 3D scanning data of the current frame may be the collected point cloud data of the current frame. The 3D scanning data of the current frame is filtered to obtain third point cloud data of the current frame. Data filtering may be performed after each frame of point cloud data of the target object is scanned, thereby improving the effect of real-time scanning.
[0080] The real-time point cloud is updated based on the third point cloud data of the current frame. The real-time point cloud is obtained by fusing the third point cloud data of the current frame with the point cloud data of all frames before the current frame. During the real-time scanning of the target object, the collected 3D scan data is fused using the TSDF algorithm. At the real-time point cloud resolution, the TSDF algorithm is used to fuse the third point cloud data of the current frame into the TSDF field to obtain the real-time point cloud, that is, to obtain the latest display point cloud data so that the real-time acquired point cloud data can be displayed in real time on the user interface during the real-time scanning process.
[0081] One embodiment of the present application, such as Figure 6As shown, in response to the second resolution, the three-dimensional scanning data is fused and processed to obtain second point cloud data, including steps S601-S602.
[0082] S601, in response to a first operation instruction of a user, determining a second resolution based on the first operation instruction;
[0083] S602: In response to the second resolution, fuse the three-dimensional scanning data to obtain second point cloud data.
[0084] The terminal device receives a first operation instruction by clicking a mouse or touching a screen of a user interface, and determines a second resolution set by the user through the first operation instruction.
[0085] For example, the second resolution may be set using a sliding control on which the user may slide or click. When a sliding or clicking operation of the user on the sliding control is detected, the position of the sliding or clicking operation is determined, and the second resolution may be determined based on the sliding or clicking operation.
[0086] At the second resolution, a fusion algorithm is used to perform a point cloud fusion operation on the acquired 3D scan data to obtain second point cloud data. For example, a TSDF algorithm can be used to fuse the point cloud data. The second point cloud data is denoised to remove noise and isolated points, thereby obtaining denoised second point cloud data.
[0087] One embodiment of the present application, such as Figure 7 As shown, the first point cloud data and the second point cloud data are deduplicated and fused to obtain multi-resolution point cloud data of the target object, and the multi-resolution point cloud data is finally displayed, including steps S701-S704.
[0088] S701, constructing a corresponding tree data structure based on the second point cloud data;
[0089] S702, performing a filtering operation on the first point cloud data according to the tree data structure to obtain filtered first point cloud data;
[0090] S703, fusing the filtered first point cloud data with the second point cloud data to obtain multi-resolution point cloud data of the target object;
[0091] S704: Finally display the multi-resolution point cloud data on the user interface.
[0092] A corresponding tree data structure is constructed based on the second point cloud data. The tree data structure may be an octree, a KD tree, etc. By constructing a tree data structure for the point cloud data, search efficiency can be effectively improved, thereby facilitating improved scanning efficiency.
[0093] The first point cloud data is filtered according to the first tree data structure to obtain filtered first point cloud data. Specifically, for each data point in the first point cloud data, the tree data structure is traversed to search for the nearest point corresponding to the data point. The distance between the data point and the nearest point is calculated. If the distance is less than a preset distance threshold, the data point is deleted from the first point cloud data; otherwise, the data point is retained to obtain filtered first point cloud data. The filtered first point cloud data is fused with the second point cloud data to obtain multi-resolution point cloud data of the target object, which is ultimately displayed on the user interface. The distance threshold can be set based on actual conditions.
[0094] Based on this implementation, the area in the first point cloud data that overlaps with the second point cloud data is deleted, and the remaining points in the first point cloud data after deletion are point clouds of the first resolution. These point clouds are basically the missing parts of the second point cloud data. The filtered first point cloud data and the second point cloud data are fused, that is, the missing parts of the second point cloud data are completed, so that the multi-resolution point cloud data obtained includes both the point clouds of the first resolution and the point clouds of the second resolution, so that the display range of the real-time displayed point cloud and the post-processed point cloud are consistent.
[0095] One embodiment of the present application, such as Figure 8 As shown, deduplication and fusion are performed on the first point cloud data and the second point cloud data to obtain multi-resolution point cloud data of the target object, including steps S801-S804.
[0096] S801, in response to a second operation instruction of the user, determining each target area selected in the real-time point cloud based on the second operation instruction;
[0097] S802, determining, based on the positions of the respective target areas, respective first areas corresponding to the respective target areas in the second point cloud data, retaining all data points in the respective first areas in the second point cloud data, and deleting all data points in areas other than the respective first areas in the second point cloud data, thereby obtaining updated second point cloud data;
[0098] S803, determining in the first point cloud data respective second regions corresponding to respective first regions, and for each second region, deleting, in the first point cloud data, duplicate data points between the second region and the corresponding first region, to obtain updated first point cloud data;
[0099] S804: Fusing the updated second point cloud data with the updated first point cloud data to obtain multi-resolution point cloud data of the target object.
[0100] During the real-time scanning process of the 3D scanning device, based on the real-time displayed point cloud, the user automatically selects a certain area according to the actual situation, and the point cloud in the selected area is kept as high-resolution as possible.
[0101] During the real-time scanning process of the three-dimensional scanning device, the user triggers a second operation instruction through the interface, and in response to the second operation instruction of the user, each target area selected in the real-time point cloud is determined based on the second operation instruction.
[0102] Based on the positions of the target regions, the first regions corresponding to the target regions are determined in the second point cloud data. For each first region, the data points in the first region are retained in the second point cloud data. All data points in the first regions are retained in the second point cloud data, and all data points in regions other than the first regions are deleted from the second point cloud data, resulting in updated second point cloud data. This results in a high-resolution point cloud within the selected region.
[0103] Each second area corresponding to each first area is determined in the first point cloud data. For each second area, repeated data points in the second area and the corresponding first area are deleted in the first point cloud data, and non-duplicate data points are retained to obtain updated first point cloud data. The missing point cloud in the selected area is compensated by a low-resolution point cloud.
[0104] The updated second point cloud data is fused with the updated first point cloud data to obtain multi-resolution point cloud data of the target object, thereby ensuring that the point cloud in the area selected by the user is basically a high-resolution point cloud, and the point cloud in the unselected area is a low-resolution point cloud, ensuring that the point cloud displayed in real time during the scanning process is consistent with the range of the final displayed point cloud.
[0105] Based on the same inventive concept, the present application also provides an embodiment of a device for processing three-dimensional scan data as described above. The solution provided by this device is similar to the solution described in the method described above. Therefore, the specific limitations of the embodiment of the device for processing three-dimensional scan data provided below can be found in the limitations of the method for processing three-dimensional scan data described above and will not be further elaborated here.
[0106] like Figure 9 As shown, the present application provides a three-dimensional scanning data processing device, the device comprising:
[0107] An acquisition module 901 is used to acquire three-dimensional scanning data of a target object;
[0108] A first fusion module 902 is configured to reconstruct the three-dimensional scanning data at a first resolution to obtain first point cloud data;
[0109] A second fusion module 903 is configured to reconstruct the three-dimensional scanning data to obtain second point cloud data in response to a second resolution, wherein the value of the first resolution is greater than the value of the second resolution;
[0110] The processing module 904 is configured to perform deduplication and fusion on the first point cloud data and the second point cloud data to obtain multi-resolution point cloud data of the target object.
[0111] Optionally, the second fusion module 903 is specifically configured to:
[0112] In response to a first operation instruction of a user, determining a second resolution based on the first operation instruction;
[0113] In response to the second resolution, the three-dimensional scanning data is fused to obtain the second point cloud data
[0114] Optionally, the processing module 904 is specifically configured to:
[0115] Constructing a corresponding tree data structure based on the second point cloud data;
[0116] performing a filtering operation on the first point cloud data according to the tree data structure to obtain filtered first point cloud data;
[0117] Fusing the filtered first point cloud data with the second point cloud data to obtain multi-resolution point cloud data of the target object;
[0118] The multi-resolution point cloud data is finally displayed in the user interface.
[0119] Optionally, the processing module 904 is specifically configured to:
[0120] For each data point in the first point cloud data, the tree data structure is traversed to search for the nearest point corresponding to the data point, and the distance between the data point and the nearest point is calculated. If the distance is less than a preset distance threshold, the data point is deleted from the first point cloud data; otherwise, the data point is retained to obtain the filtered first point cloud data.
[0121] Optionally, the first fusion module 902 is specifically configured to:
[0122] Acquire the current frame 3D scanning data of the target object in real time;
[0123] Filter the three-dimensional scanning data of the current frame to obtain the third point cloud data of the current frame;
[0124] Update the real-time point cloud based on the third point cloud data of the current frame;
[0125] Display the real-time point cloud.
[0126] Optionally, the processing module 904 is specifically configured to:
[0127] In response to a second operation instruction of the user, determining each target area selected in the real-time point cloud based on the second operation instruction;
[0128] determining, in the second point cloud data, first regions corresponding to the target regions according to their positions, retaining all data points in the first regions in the second point cloud data, and deleting all data points in regions other than the first regions in the second point cloud data, thereby obtaining updated second point cloud data;
[0129] Determining, in the first point cloud data, respective second regions corresponding to respective first regions, and for each second region, deleting, in the first point cloud data, duplicate data points between the second region and the corresponding first region to obtain updated first point cloud data;
[0130] The updated second point cloud data is fused with the updated first point cloud data to obtain multi-resolution point cloud data of the target object.
[0131] It should be noted that the above modules can be functional modules or program modules, and can be implemented through software or hardware. For modules implemented through hardware, the above modules can be located in the same processor; or the above modules can be located in different processors in any combination.
[0132] like Figure 10 As shown, the present application provides a three-dimensional scanning system, including a three-dimensional scanning device 1001 and a processor 1002, wherein the three-dimensional scanning device is communicatively connected to the processor;
[0133] A three-dimensional scanning device 1001 is used to perform three-dimensional scanning on a target object;
[0134] The processor 1002 is configured to execute the steps of the method for processing three-dimensional scanning data provided in the above embodiment.
[0135] An embodiment of the present application further provides a computer-readable storage medium, in which a computer program is stored. When the computer program is executed by a processor, the steps of any one of the above-mentioned three-dimensional scanning data processing methods are implemented.
[0136] Figure 11 This is a hardware structure diagram of a computer device provided in an embodiment of the present application. Figure 11The computer device shown includes: a processor 1101, a communication interface 1102, a memory 1103 and a communication bus 1104. The processor 1101, the communication interface 1102 and the memory 1103 communicate with each other via the communication bus 1104. Figure 11 The connection method between the processor 1101, the communication interface 1102, and the memory 1103 shown is merely exemplary. During implementation, the processor 1101, the communication interface 1102, and the memory 1103 may also be connected to each other in communication manners other than the communication bus 1104.
[0137] The memory 1103 can be used to store computer programs, which may include instructions and data to implement the steps of any of the above three-dimensional scanning data processing methods. In an embodiment of the present application, the memory 1103 can be various types of storage media, such as random access memory (RAM), read-only memory (ROM), non-volatile RAM (NVRAM), programmable ROM (PROM), erasable PROM (EPROM), electrically erasable PROM (EEPROM), flash memory, optical storage, and registers. The memory 1103 may include a hard disk and / or memory.
[0138] The processor 1101 may be a general-purpose processor. A general-purpose processor may be a processor that performs specific steps and / or operations by reading and executing a computer program (e.g., a computer program) stored in a memory (e.g., memory 1103). The general-purpose processor may use data stored in the memory (e.g., memory 1103) during the execution of the steps and / or operations. The general-purpose processor may be, for example, but not limited to, a central processing unit (CPU). In addition, the processor 1101 may also be a dedicated processor. A dedicated processor may be a processor specially designed to perform specific steps and / or operations. A dedicated processor may be, for example, but not limited to, an ASIC and an FPGA. In addition, the processor 1101 may also be a combination of multiple processors, such as a multi-core processor.
[0139] Communication interface 1102 may include input / output (I / O) interfaces, physical interfaces, and logical interfaces for interconnecting components within a network device, as well as interfaces for interconnecting the network device with other devices (e.g., network devices). The communication network may be Ethernet, a radio access network (RAN), a wireless local area network (WLAN), or the like. Communication interface 1102 may be a module, circuit, transceiver, or any other device capable of communication.
[0140] The computer device may further include input and output devices and a display screen.
[0141] During implementation, each step of the above method can be completed by an integrated logic circuit of the hardware in the processor 1101 or an instruction in the form of software. The method disclosed in conjunction with the embodiments of the present application can be directly embodied as a hardware processor for execution, or can be completed by a combination of hardware and software modules in the processor. The software module can be located in a mature storage medium in the art such as a random access memory flash memory, a read-only memory, a programmable read-only memory or an electrically erasable programmable memory, a register, etc. The storage medium is located in the memory 1103, and the processor 1101 reads the information in the memory 1103 and completes the steps of the above method in combination with its hardware. To avoid repetition, it will not be described in detail here.
[0142] Unless otherwise defined, the technical terms or scientific terms involved in this application should have the general meaning understood by people with ordinary skills in the technical field to which this application belongs. The words "one", "an", "a", "the", "these" and the like in this application do not indicate quantitative restrictions, and they can be singular or plural. The terms "include", "comprise", "have" and any variants thereof involved in this application are intended to cover non-exclusive inclusions; for example, a process, method and system, product or device comprising a series of steps or modules (units) is not limited to the listed steps or modules (units), but may include unlisted steps or modules (units), or may include other steps or modules (units) inherent to these processes, methods, products or devices. The words "connect", "connected", "coupled" and the like involved in this application are not limited to physical or mechanical connections, but may include electrical connections, whether direct or indirect. The "plurality" involved in this application refers to two or more. "And / or" describes the relationship between related objects, indicating that three possible relationships exist. For example, "A and / or B" can represent: A exists alone, A and B exist simultaneously, and B exists alone. Generally, the character " / " indicates that the related objects are in an "or" relationship. The terms "first," "second," "third," etc. used in this application are only used to distinguish similar objects and do not represent a specific ordering of the objects.
[0143] Although the preferred embodiments of the present application have been disclosed for illustrative purposes, those skilled in the art will appreciate that various modifications, additions and substitutions are possible, without departing from the scope and spirit of the application as disclosed in the accompanying claims.
Claims
1. A method for processing three-dimensional scanning data, characterized in that: The method comprises: Acquire three-dimensional scanning data of the target object; Performing fusion processing on the three-dimensional scanning data at a first resolution to obtain first point cloud data; In response to a second resolution, performing fusion processing on the three-dimensional scanning data to obtain second point cloud data, wherein a value of the first resolution is greater than a value of the second resolution; Deduplication and fusion are performed on the first point cloud data and the second point cloud data to obtain multi-resolution point cloud data of the target object, and the multi-resolution point cloud data is finally displayed.
2. The method for processing three-dimensional scanning data according to claim 1, characterized in that: In response to the second resolution, fusing the three-dimensional scanning data to obtain second point cloud data, including: In response to a first operation instruction of a user, determining a second resolution based on the first operation instruction; In response to the second resolution, the three-dimensional scanning data is fused to obtain second point cloud data.
3. The method for processing three-dimensional scanning data according to claim 2, characterized in that: Deduplication and fusion are performed on the second point cloud data according to the first point cloud data to obtain multi-resolution point cloud data of the target object, and the multi-resolution point cloud data is finally displayed, including: Constructing a corresponding tree data structure based on the second point cloud data; performing a filtering operation on the first point cloud data according to the tree data structure to obtain filtered first point cloud data; fusing the filtered first point cloud data with the second point cloud data to obtain multi-resolution point cloud data of the target object; The multi-resolution point cloud data is finally displayed on the user interface.
4. The method for processing three-dimensional scanning data according to claim 3, characterized in that: Performing a filtering operation on the first point cloud data according to the tree data structure to obtain filtered first point cloud data includes: For each data point in the first point cloud data, the second tree data structure is traversed to search for the nearest point corresponding to the data point, and the distance between the data point and the nearest point is calculated. If the distance is less than a preset distance threshold, the data point is deleted from the first point cloud data; otherwise, the data point is retained to obtain filtered first point cloud data.
5. The method for processing three-dimensional scanning data according to claim 1, characterized in that: At a first resolution, the three-dimensional scanning data is fused to obtain first point cloud data, including: Acquire the current frame 3D scanning data of the target object in real time; Filtering the three-dimensional scanning data of the current frame to obtain third point cloud data of the current frame; Update the real-time point cloud based on the third point cloud data of the current frame; Display the real-time point cloud.
6. The method for processing three-dimensional scanning data according to claim 5, characterized in that: Deduplication and fusion of the first point cloud data and the second point cloud data to obtain multi-resolution point cloud data of the target object include: In response to a second operation instruction of the user, determining each target area selected in the real-time point cloud based on the second operation instruction; determining, in the second point cloud data, first regions corresponding to the target regions according to their positions, retaining all data points in the first regions in the second point cloud data, and deleting all data points in regions other than the first regions in the second point cloud data, thereby obtaining updated second point cloud data; Determining, in the first point cloud data, respective second regions corresponding to respective first regions, and for each second region, deleting, in the first point cloud data, duplicate data points between the second region and the corresponding first region to obtain updated first point cloud data; The updated second point cloud data is fused with the updated first point cloud data to obtain multi-resolution point cloud data of the target object.
7. A three-dimensional scanning data processing device, characterized in that: The device comprises: An acquisition module, used to acquire three-dimensional scanning data of a target object; A first fusion module is used to perform fusion processing on the three-dimensional scanning data at a first resolution to obtain first point cloud data; a second fusion module, configured to perform fusion processing on the three-dimensional scanning data in response to a second resolution to obtain second point cloud data, wherein the value of the first resolution is greater than the value of the second resolution; A processing module is used to deduplicate and fuse the first point cloud data and the second point cloud data to obtain multi-resolution point cloud data of the target object, and finally display the multi-resolution point cloud data.
8. A three-dimensional scanning system, characterized in that: comprising a three-dimensional scanning device and a processor, wherein the three-dimensional scanning device is communicatively connected to the processor; The three-dimensional scanning device is used to perform three-dimensional scanning on the target object; The processor is configured to execute the steps of the method for processing three-dimensional scanning data according to any one of claims 1 to 6.
9. A computer device comprising a memory and a processor, characterized in that: A computer program is stored in the memory, and the processor is configured to run the computer program to perform the steps of the method for processing three-dimensional scanning data according to any one of claims 1 to 6.
10. A 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 method for processing three-dimensional scanning data according to any one of claims 1 to 6 are implemented.
Citation Information
Patent Citations
Obstacle detection method and system using resolution-adaptive fusion of point clouds
CN112507774A
Data processing method and device, three-dimensional scanning system and electronic device
CN113065553A
Method and device for generating digital model
CN113744407A
Three-dimensional reconstruction method and system for intelligent multi-resolution feature optimization
CN114155327A
Three-dimensional scanning data processing method and device, computer equipment and storage medium
CN117217998A
Cited By
Three-dimensional scanning data processing method and device, computer equipment and storage medium
CN117217998A
Self-adaptive display method for post-processing resolution, three-dimensional scanning system and storage medium
CN121979432A
Adaptive display method of post-processing resolution, three-dimensional scanning system and storage medium
CN121979432B