A Point Cloud Data Processing Method, Device and Medium Based on B / S Architecture
Through the point cloud data processing method of B/S architecture, point cloud array, operation cursor and feature index are used to solve the memory pressure and low processing efficiency caused by the large amount of point cloud data, and efficient point cloud data processing is achieved.
Patent Information
- Application Number
- CN202510615856.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-14
- Publication Date
- 2025-07-25
- Estimated Expiration
- 2045-05-14
AI Technical Summary
In the prior art, the large amount of point cloud data leads to high memory pressure and low processing efficiency. Each re-doing requires a complete function process to increase the system running time.
The point cloud data processing method based on the B/S architecture enables rapid undoing, redoing and rolling back through point cloud arrays, operation cursors and feature index recording processing operations, reducing memory usage and optimizing resource utilization.
It reduces system memory usage, improves resource utilization efficiency, reduces CAD system running time, and improves point cloud data processing efficiency.
Smart Images

Figure CN120123152B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of digital data processing, and particularly to a point cloud data processing method, device, and medium based on a B / S architecture. Background Art
[0002] Point cloud data is a collection of three-dimensional spatial data collected by laser scanning or other measurement devices, usually represented as a large number of discrete points. Each point has a specific coordinate in space, which can accurately capture the geometric shape and surface details of an object, providing a high-precision digital model for the fields of digital shape design, reverse engineering, additive manufacturing, and geological modeling.
[0003] In CAD software, point cloud data can be converted into a three-dimensional model for reverse engineering design. However, due to the large amount of point cloud data, saving a copy of the point cloud data every time a processing operation is performed will bring a large memory pressure to the system; in addition, with a large amount of point cloud data, the running time of the point cloud processing algorithm is long, and each undo and redo operation executes the complete functional process, resulting in an increasing system running time and low processing efficiency. Summary of the Invention
[0004] To solve the above problems, the present invention proposes a point cloud data processing method based on a B / S architecture, including:
[0005] Receiving a point cloud model imported from the browser side and initializing the point cloud data structure corresponding to the point cloud model; wherein, the point cloud data structure includes a point cloud array, an operation cursor, and a feature index, and each element in the point cloud array is used to mark the processing operation performed on the point cloud data at the current position;
[0006] For each point cloud data in the point cloud model, positioning the processing operation performed on the point cloud data according to the operation cursor, generating a function feature corresponding to the processing operation and a feature index corresponding to the function feature for the located processing operation, and filling the function feature into the point cloud array; wherein, the values corresponding to the operation cursor and the feature index are the same;
[0007] In the case where there is a need for operation rollback for the function feature, determining the position of the specified function feature that needs to be operation-rolled back in the point cloud array according to the operation rollback requirement, and performing a forward movement operation on the operation cursor according to the position, so that the forward-moved operation cursor locates the unrolled-back processing operation in the point cloud array;
[0008] In the case where the specified functional feature needs to be operationally restored, the specified functional feature is screened out from the point cloud array according to the flag bits of each functional feature in the point cloud array, the size relationship between the feature index and the operation cursor is determined, and according to the size relationship, the specified functional feature is operationally restored to obtain the restored point cloud array.
[0009] In one implementation manner of the present invention, a forward movement operation is performed on the operation cursor according to the position, so that the forward-moved operation cursor is positioned at the processing operation that has not been rolled back in the point cloud array, specifically including:
[0010] According to the position, the number of feature bits to be rolled back for the specified functional feature is determined;
[0011] The operation cursor is moved forward by a number corresponding to the number of feature bits, and the specified feature index corresponding to the specified functional feature in the feature index is retained; wherein, the operation rollback requirement includes a cancellation requirement and a rollback requirement.
[0012] In one implementation manner of the present invention, the types of operation restoration include reconstruction and cancellation of rollback. According to the size relationship, the specified functional feature is operationally restored to obtain the restored point cloud array, specifically including:
[0013] Determine the operation rollback type corresponding to the specified functional feature; wherein, the operation rollback types include cancellation and rollback;
[0014] According to the size relationship, determine whether there are new functional features in the point cloud array after the operation rollback is completed to determine the operation restoration mode corresponding to the specified functional feature; wherein, the operation restoration modes are index restoration mode and synchronous restoration mode;
[0015] Based on different operation restoration modes, the specified functional feature is operationally restored to obtain the restored point cloud array.
[0016] In one implementation manner of the present invention, according to the size relationship, determine whether there are new functional features in the point cloud array after the operation rollback is completed to determine the operation restoration mode corresponding to the specified functional feature, specifically including:
[0017] When the feature index is not greater than the operation cursor, it is determined that there are new functional features in the point cloud array after the operation rollback is completed, and the operation restoration mode corresponding to the specified functional feature is the synchronous restoration mode;
[0018] When the feature index is greater than the operation cursor, it is determined that the new functional feature does not exist in the point cloud array after the operation rollback, and the operation recovery mode corresponding to the specified functional feature is the index recovery mode.
[0019] In an implementation manner of the present invention, based on different operation recovery modes, the specified functional feature is operated and recovered to obtain the recovered point cloud array, which specifically includes:
[0020] Based on the index recovery mode, when the type of the operation recovery is reconstruction, the operation cursor is successively moved backward to the end position of the point cloud array to obtain the recovered point cloud array, or when the type of the operation recovery is cancellation of rollback, the rollback operations on the specified functional feature are successively cancelled to obtain the corresponding point cloud array;
[0021] Based on the synchronous recovery mode, when the type of the operation recovery is reconstruction, the reconstruction operation on the specified functional feature is prohibited, or when the type of the operation recovery is cancellation of rollback, the specified functional feature created before the rollback is successively reconstructed, and after any specified functional feature is reconstructed, the specified feature index corresponding to the specified functional feature is updated so that the updated specified feature index is consistent with the operation cursor until the rollback operations on all specified functional features are cancelled.
[0022] In an implementation manner of the present invention, the specified functional feature created before the rollback is successively reconstructed, and after any specified functional feature is reconstructed, the specified feature index corresponding to the specified functional feature is updated so that the updated specified feature index is consistent with the operation cursor, which specifically includes:
[0023] Position the operation cursor at the position of the last feature in the new functional feature;
[0024] According to the sequence of the specified functional features, the specified functional feature created before the rollback is successively reconstructed. After any specified functional feature is reconstructed, the operation cursor is moved backward by one bit, and the specified feature index corresponding to the specified functional feature is adjusted to be consistent with the operation cursor.
[0025] In an implementation manner of the present invention, the specified functional feature is screened out from the point cloud array according to the flag bits of each functional feature in the point cloud array, which specifically includes:
[0026] Obtain the flag bits of each functional feature in the point cloud array;
[0027] Filter out the functional features with the marker bits being the preset value from the point cloud array as the specified functional features; wherein, the preset value and the marker bits corresponding to other functional features except the specified functional features in the functional features are in a binary state distribution.
[0028] In an implementation manner of the present invention, the processing operations at least include any one or more of the following: point cloud simplification, point cloud positioning, point cloud denoising, removing redundant points, and point cloud meshing.
[0029] An embodiment of the present invention provides a point cloud data processing device based on a B / S architecture, and the device includes:
[0030] At least one processor;
[0031] And a memory communicatively connected to the at least one processor;
[0032] Wherein, the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute a point cloud data processing method based on a B / S architecture as described in any one of the above.
[0033] An embodiment of the present invention provides a non-volatile computer storage medium storing computer-executable instructions, and the computer-executable instructions are set as:
[0034] A point cloud data processing method based on a B / S architecture as described in any one of the above.
[0035] A point cloud data processing method based on a B / S architecture proposed by the present invention can bring the following beneficial effects:
[0036] All processing operations corresponding to the point cloud data are recorded through the point cloud array. Only one copy of the point cloud data needs to be maintained, reducing the system memory occupancy and improving the system resource utilization efficiency. At the same time, by directly marking the currently effective operation position through the operation cursor and maintaining the mapping relationship between the features and the point cloud data through the feature index, fast positioning between different functional features can be realized, and processes such as undo, redo, and rollback between different functional features can be quickly performed, without repeatedly executing the point cloud processing algorithm for each operation, reducing the CAD system running time. BRIEF DESCRIPTION OF THE DRAWINGS
[0037] The drawings described herein are used to provide a further understanding of the present invention, and constitute a part of the present invention. The schematic embodiments of the present invention and their descriptions are used to explain the present invention, and do not constitute an improper limitation to the present invention. In the drawings:
[0038] Figure 1Schematic flowchart of a point cloud data processing method based on the B / S architecture provided by an embodiment of the present invention;
[0039] Figure 2 Schematic flowchart of a process for creating functional features provided by an embodiment of the present invention;
[0040] Figure 3 Another schematic flowchart of a process for creating functional features provided by an embodiment of the present invention;
[0041] Figure 4 Schematic diagram of the data structure before an undo operation provided by an embodiment of the present invention;
[0042] Figure 5 Schematic diagram of the data structure after an undo operation provided by an embodiment of the present invention;
[0043] Figure 6 Schematic flowchart of an undo / redo process when no new features are added provided by an embodiment of the present invention;
[0044] Figure 7 Schematic diagram of the data structure after rollback provided by an embodiment of the present invention;
[0045] Figure 8 Schematic diagram of the data structure after canceling the rollback operation in the first case provided by an embodiment of the present invention;
[0046] Figure 9 Schematic diagram of the data structure after canceling the rollback operation in the second case provided by an embodiment of the present invention;
[0047] Figure 10 Schematic diagram of the data structure after canceling the rollback operation in the third case provided by an embodiment of the present invention;
[0048] Figure 11 Schematic diagram of the structure of a point cloud data processing device based on the B / S architecture provided by an embodiment of the present invention. Detailed implementation manners
[0049] To make the objectives, technical solutions, and advantages of the present invention clearer, the technical solutions of the present invention will be clearly and completely described below in conjunction with specific embodiments of the present invention and the corresponding drawings. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative efforts fall within the scope of protection of the present invention.
[0050] An embodiment of the present invention provides a CAD system, which adds point cloud simplification, point cloud positioning, point cloud denoising, removing redundant points, point cloud meshing and other processing functions on the basis of traditional basic modeling functions. Based on the data generated by these point cloud processing operations, different point cloud functions can be maintained and processed, so as to provide high-precision digital models for the fields of digital shape design, reverse engineering, additive manufacturing and geological modeling. However, the traditional method of point cloud data processing requires saving a copy of point cloud data every time a point cloud processing operation is executed, which will bring greater memory pressure to the system. Moreover, point cloud processing is a computationally intensive and memory-intensive digital shape design method. The traditional point cloud processing software deployed on a local machine based on the C / S (Client-Server) architecture limits the data processing efficiency and scalability. While the point cloud processing software based on the B / S (Broswer-Server) architecture can make full use of the computing power of the server and adapt to the large-scale data processing requirements. Therefore, the embodiment of the present invention is based on the B / S architecture to implement processes such as undo, redo and rollback between different features, without repeatedly executing the point cloud processing algorithm for each operation, reducing the running time of the CAD system.
[0051] The technical solutions provided by the embodiments of the present invention will be described in detail below with reference to the accompanying drawings.
[0052] As Figure 1 shown, a method for processing point cloud data based on the B / S architecture provided by an embodiment of the present invention includes:
[0053] S101: Receive the point cloud model imported by the browser side and initialize the point cloud data structure corresponding to the point cloud model; wherein, the point cloud data structure includes a point cloud array, an operation cursor and a feature index, and each element in the point cloud array is used to mark the processing operation performed on the point cloud data at the current position.
[0054] Based on the B / S architecture, the server receives the point cloud model imported by the browser side and initializes the point cloud data structure corresponding to the point cloud model. The point cloud model contains a large number of discrete points representing a three-dimensional object or scene. By converting the point cloud data into a three-dimensional model, reverse engineering design can be carried out. Each point cloud data in the point cloud model maintains a 128-bit point cloud data structure, and the point cloud data structure includes a point cloud array, an operation cursor and a feature index. Each element in the point cloud array is used to mark the processing operation performed on the point cloud data at the current position, and the processing operation includes at least any one or more of the following: point cloud simplification, point cloud positioning, point cloud denoising, removing redundant points, point cloud meshing. The operation cursor is used to mark the current operation position and indicate which step of the processing operation is currently being carried out. The feature index is used to represent which feature is the currently created feature, which is convenient for updating the data in the data structure when creating, undoing, redoing and rolling back features.
[0055] Therefore, based on the traditional point cloud data structure, the present invention records the processing operations corresponding to all point cloud data through a point cloud array, only needs to maintain a copy of the point cloud data, reduces the system memory occupancy, and improves the system resource utilization efficiency. At the same time, by directly marking the currently effective operation position through an operation cursor and maintaining the mapping relationship between features and point cloud data through a feature index, fast positioning between different functional features can be achieved.
[0056] S102: For each point cloud data in the point cloud model, locate the processing operation performed on the point cloud data according to the operation cursor. For the located processing operation, generate the functional feature corresponding to the processing operation and the feature index corresponding to the functional feature, and fill the functional feature into the point cloud array; wherein, the values corresponding to the operation cursor and the feature index are the same.
[0057] After the initialization of the point cloud data structure, it does not have actual feature values. It is also necessary to fill the point cloud data structure with data based on the processing operations on the point cloud data in the point cloud model. This process is essentially a process of creating functional features. When the point cloud model is imported, locate the processing operation performed on the point cloud data according to the operation cursor. At this time, the operation cursor cur = 1. Then, execute the corresponding processing operation to complete the creation of the functional feature. At the same time, generate the feature index corresponding to the functional feature. At this time, the values corresponding to the operation cursor and the feature index are the same, that is, index = cur = 1. After the creation of the functional feature is completed, it is necessary to fill the functional feature into the corresponding position in the point cloud array. The functional feature can be located according to the operation cursor cur = 1. As Figure 2 shown in the schematic flowchart of a process for creating a functional feature, the point cloud array HiddenFlag is used to store the processing operations performed on the point cloud data. When creating the first functional feature in the point cloud array, the operation cursor cur = index = 1, and the first functional feature can be located according to the operation cursor. As Figure 3 shown, when creating the second functional feature, the operation cursor moves backward. At this time, cur = 2, which is used to indicate the second position in HiddenFlag. After the creation of the functional feature is completed, the data at the position cur = 2 in the point cloud array will be updated, and the second functional feature will be filled into this position. At this time, the feature index (i.e., feature index) is consistent with the operation cursor, index = cur = 2.
[0058] S103: In the case where there is a need for operation rollback for a functional feature, determine the position of the specified functional feature that needs to be rolled back in the point cloud array according to the operation rollback requirement, and perform a forward movement operation on the operation cursor according to the position, so that the forward-moved operation cursor locates the unrolled-back processing operation in the point cloud array.
[0059] Traditional point cloud processing algorithms save a copy of point cloud data every time a processing operation is executed. This not only puts a significant memory pressure on the system but also, when performing feature cancellation, redo, or rollback, since the operation logic is not clear, it is necessary to start from the initial state and sequentially execute the entire functional process until rolling back to the target state. This global operation mode will significantly increase the running time of the system.
[0060] Based on this, in the case of operation rollback requirements such as cancellation requirements and rollback requirements for functional features in the embodiments of the present invention, instead of re-executing all the processing operations performed on the point cloud data completely, it is determined according to the operation rollback requirements the position of the specified functional feature that needs to be operationally rolled back in the point cloud array. In this way, the operation cursor can be moved forward according to this position, so that the moved forward operation cursor is positioned at the processing operation in the point cloud array that has not been rolled back.
[0061] Specifically, after the system determines the position of the specified functional feature that needs to be operationally rolled back, it can determine the number of feature bits that the specified functional feature needs to be rolled back according to this position and the difference before the current operation cursor in the point cloud array. Then, the operation cursor is moved forward by a corresponding number of steps according to the number of feature bits. Each time it is moved forward one step, the functional feature pointed to by the operation cursor will be cancelled or rolled back. If the current marker bit value at a certain position is 1, it means that this point is rolled back in this operation. If the current marker bit value is 0, it means that this point is retained in this operation. In this way, by operating on the operation cursor, the system can directly roll back to the previous processing operation according to the data recorded in the point cloud array, instead of, like the traditional point cloud processing method, re-executing the entire implementation process of the previous operation from the starting position, and can complete the cancellation process in a short time, reducing the system operation pressure. It should be noted that during the operation rollback process, the system will only perform corresponding operations on the operation cursor, and the specified feature index corresponding to the specified functional feature in the feature index will be completely retained to provide a feature position indication for subsequent operation restoration.
[0062] Figure 4 and Figure 5 are schematic diagrams of the data structures before and after the cancellation operation respectively. As Figure 4 shown, assuming that 6 features have been created currently, the operation cursor cur-index = 6, and the functional features corresponding to six processing operations are also saved in the point cloud array. If the current user wants to cancel the 6th processing operation, only need to move the operation cursor cur from 6 to 5. During the forward movement of the operation cursor, the system will automatically cancel the functional feature at the position where the operation cursor is 6. At this time, cur = 5, index = 6.
[0063] S104: When an operation recovery is required for a specified functional feature, filter out the specified functional feature from the point cloud array according to the flag bits of each functional feature in the point cloud array, determine the size relationship between the feature index and the operation cursor, and perform an operation recovery on the specified functional feature according to the size relationship to obtain a recovered point cloud array.
[0064] After undoing or rolling back a specified functional feature through the above process, if an undo / redo or rollback cancellation is desired, the specified functional feature needs to be filtered out according to the flag bits of each functional feature in the point cloud array. According to the previous operation rollback process, for a functional feature that has undergone an operation rollback, its corresponding flag bit is 1. Based on this, obtain the flag values of each functional feature in the point cloud array, and filter out the functional feature with the flag bit set to the preset value from the point cloud array as the specified functional feature. Here, the preset value is 1, and the preset value and the flag bits corresponding to other functional features except the specified functional feature in the functional features are in a binary state distribution, and the flag bits corresponding to other functional features are 0. After filtering out the specified functional feature, determine whether new features are added after the operation rollback according to the size relationship between the feature index and the operation cursor, so as to perform an operation recovery on the specified functional feature to obtain a recovered point cloud array.
[0065] In one embodiment, for a specified functional feature to be operationally recovered, first determine whether the type of operation rollback it has undergone is undo or rollback. In this way, different recovery operations can be performed based on different operation rollback types during subsequent operation recovery. Then, according to the size relationship between the feature index and the operation cursor, determine whether there are new functional features in the point cloud array after the operation rollback is completed, so as to determine the operation recovery mode corresponding to the specified functional feature.
[0066] Specifically, the operation recovery mode includes an index recovery mode and a synchronization recovery mode. When the feature index is not greater than the operation cursor, it indicates that there are new functional features in the point cloud array after undoing. At this time, the feature index has not been synchronously updated, while the operation cursor points from the position before the undone feature to the position of the current newly added functional feature. In this case, the operation recovery mode corresponding to the specified functional feature is the synchronization recovery mode. The synchronization recovery mode refers to the process of data recovery according to the synchronization relationship between the operation cursor and the feature index. In this mode, it needs to be completed synchronously through the feature index and the operation cursor. When the feature index is greater than the operation cursor, it indicates that no new features are added after undoing. At this time, the operation recovery mode corresponding to the specified functional feature is the index recovery mode. In this mode, if an operation rollback is to be performed on the undone or rolled-back feature, only the functional feature needs to be guided and recovered according to the feature index.
[0067] In one embodiment, in the index recovery mode, no new functional features are added. If a feature needs to be undone and rebuilt, since the data of each previous operation is saved in HiddenFlag and is not deleted or modified during undo, at this time, according to the feature index, the feature can be directly redone. As Figure 6 Shown in the schematic diagram of the undo / redo process when no new features are added. When redoing the feature after undo, cur = 5, and the feature index to be redone is index = 6. Compare the size relationship between the operation cursor and the feature index. Since the feature index is greater than the operation cursor, it is determined that it is in the index recovery mode at this time. If the feature needs to be redone after undo, the feature data corresponding to each previous processing operation is still saved in HiddenFlag at this time, and it is not deleted or modified during the undo of the feature. Therefore, only according to the value of the feature index, the operation cursor can be directly moved from the current position to be consistent with the feature index, that is, move cur one position backward to 6 to complete the feature redo. If the type of operation recovery is cancel rollback, the rollback operations for the specified functional features are cancelled in sequence until the operation cursor and the feature index are consistent, and the restored point cloud array is obtained.
[0068] In the synchronous recovery mode, after a feature is undone or rolled back, there are new functional features in the point cloud array. Then the new feature data will overwrite the data in the original point cloud array. If you want to undo and rebuild after the data is overwritten, the system will not support such operations and will prohibit the reconstruction operation for the specified functional feature. At the same time, the operation cursor will not be moved either. When the operation cursor is operated later, only new functional features will be created on the basis of the current data.
[0069] For the case where the operation recovery type is cancel rollback, the difference from undo / redo is that after the rollback, new functional features are created. Then, when cancel rollback is selected, the previously rolled-back features will be rebuilt based on the newly added functional features, and the index value of the feature index and the data in HiddenFlag will also be updated. Based on this, when performing operation recovery on the rollback data, it is necessary to rebuild the specified functional features created before the rollback in sequence, and after rebuilding any specified functional feature, update the specified feature index corresponding to the specified functional feature so that the updated specified feature index is consistent with the operation cursor until the rollback operations for all specified functional features are cancelled.
[0070] Specifically, first, position the operation cursor at the location of the last feature in the newly added functional features. Then, in the order of the specified functional features, reconstruct the specified functional features created before the rollback one by one. After completing the reconstruction of any specified functional feature, move the operation cursor one position backward and adjust the specified feature index corresponding to the specified functional feature to be consistent with the operation cursor. Continuously repeat this process until the rollback operation for all specified features is cancelled.
[0071] As Figure 7 shown in the schematic diagram of the data structure after rollback, if the user rolls back to the third step, i.e., cur = 3, and the user adds two new functional features after the current feature. At this time, cur = 5, and the original data of cur = 4 and cur = 5 in HiddenFlag has been replaced with the data of the newly added features. At this time, the feature index not only includes the indexes corresponding to the newly added functional features 4 and 5, but also includes the indexes corresponding to the rollback features 4, 5, and 6. If the cancel rollback operation needs to be performed after adding the features, it is necessary to reconstruct the three features 4 - 6 created before clicking rollback. The specific process is as follows:
[0072] Cancel the rollback of feature 4: As Figure 7 shown, at this time the feature index index = 4, while cur = 5, index <= cur, indicating that new functional features have been created before rolling back the current feature. Therefore, create new feature data cur++, generate a new feature, and update the index of the current feature to cur = 6. At the same time, save the data of the feature to the cur = 6 field in HiddenFlag. After performing the above operations, the data in the data structure is as Figure 8 shown. At this time, the cancellation of the rollback operation for the rollback feature 4 has been completed, and its corresponding functional feature is located at the position of cur = 6.
[0073] Cancel the rollback of feature 5: At this time, the index of the feature is 5, while cur = 6, index <= cur, indicating that new functional features have been created before rolling back the feature. Therefore, create new feature data cur++, generate a new functional feature, and update the index of the current feature to cur = 7. At the same time, save the data of the feature to the cur = 7 field in HiddenFlag. After performing the above operations, the data in the data structure is as Figure 9 shown. At this time, the cancellation of the rollback operation for the rollback feature 5 has been completed, and its corresponding functional feature is located at the position of cur = 7.
[0074] Cancel rollback feature 6: At this time, the index of the feature is 6, while cur = 7, and index <= cur, indicating that a new functional feature has been created before the rollback feature. Therefore, create a new feature data cur++, generate a new functional feature, and update the index of the current feature to cur = 8. At the same time, save the feature data to the cur = 8 field corresponding to HiddenFlag. After performing the above operations, the data in the data structure is as Figure 10 shown. At this time, the cancellation of the rollback operation for rollback feature 6 has been completed, and its corresponding functional feature is located at cur = 8.
[0075] The above is the method embodiment proposed by the present invention. Based on the same idea, some embodiments of the present invention also provide the devices and non-volatile computer storage media corresponding to the above method.
[0076] Figure 11 It is a schematic structural diagram of a point cloud data processing device based on the B / S architecture provided by an embodiment of the present invention. As Figure 11 shown, it includes:
[0077] At least one processor; and,
[0078] A memory communicatively connected to at least one processor; wherein,
[0079] The memory stores instructions executable by at least one processor. The instructions are executed by at least one processor so that at least one processor can execute a point cloud data processing method based on the B / S architecture as described in any one of the above.
[0080] An embodiment of the present invention provides a non-volatile computer storage medium storing computer-executable instructions, and the computer-executable instructions are set as:
[0081] A point cloud data processing method based on the B / S architecture as described in any one of the above.
[0082] Each embodiment in the present invention is described in a progressive manner. The same or similar parts among the embodiments can be referred to each other, and the differences between each embodiment and other embodiments are emphasized. In particular, for the device and medium embodiments, since they are basically similar to the method embodiments, the description is relatively simple, and the relevant parts can be referred to the description of the method embodiments.
[0083] The devices and media provided by the embodiments of the present invention correspond one-to-one with the method. Therefore, the devices and media also have beneficial technical effects similar to those of their corresponding methods. Since the beneficial technical effects of the method have been described in detail above, the beneficial technical effects of the devices and media will not be elaborated here.
[0084] Those skilled in the art should understand that the embodiments of the present invention can be provided as a method, a system, or a computer program product. Therefore, the present invention can take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present invention can take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.
[0085] The present invention is described with reference to the flowcharts and / or block diagrams of methods, apparatuses (systems), and computer program products according to embodiments of the present invention. It should be understood that each flow and / or block in the flowchart and / or block diagram, as well as the combination of flows and / or blocks in the flowchart and / or block diagram, can be realized by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing devices to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing devices generate a means for realizing the specified functions in Figure 1 one process or multiple processes and / or blocks Figure 1 one block or multiple blocks.
[0086] These computer program instructions can also be stored in a computer-readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer-readable memory generate a manufactured article including an instruction device, and the instruction device realizes the specified functions in Figure 1 one process or multiple processes and / or blocks Figure 1 one block or multiple blocks.
[0087] These computer program instructions can also be loaded onto a computer or other programmable data processing device, so that a series of operation steps are executed on the computer or other programmable device to generate a computer-implemented process, and thus the instructions executed on the computer or other programmable device provide steps for realizing the specified functions in Figure 1 one process or multiple processes and / or blocks Figure 1 one block or multiple blocks.
[0088] In a typical configuration, a computing device includes one or more processors (CPUs), an input / output interface, a network interface, and memory.
[0089] The memory may include non-permanent memory in the computer-readable medium, random access memory (RAM), and / or non-volatile memory in the form of, for example, read-only memory (ROM) or flash memory (flash RAM). The memory is an example of a computer-readable medium.
[0090] Computer readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.
[0091] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.
[0092] The above description is only an embodiment of the present invention and is not intended to limit the present invention. For those skilled in the art, the present invention may have various modifications and variations. Any modification, equivalent substitution, improvement, etc. made within the spirit and principle of the present invention should be included in the scope of the claims of the present invention.
Claims
1. A point cloud data processing method based on the B / S architecture, characterized in that, The method includes: Receiving a point cloud model imported from a browser side and initializing a point cloud data structure corresponding to the point cloud model; wherein, the point cloud data structure includes a point cloud array, an operation cursor, and a feature index, and each element in the point cloud array is used to mark a processing operation performed on the point cloud data at the current position; For each point cloud data in the point cloud model, positioning the processing operation performed on the point cloud data according to the operation cursor, generating a function feature corresponding to the processing operation and a feature index corresponding to the function feature for the positioned processing operation, and filling the function feature into the point cloud array; wherein, the values corresponding to the operation cursor and the feature index are the same; In the case where there is a need for operation rollback for the function feature, determining the position of the specified function feature that needs to be rolled back in the point cloud array according to the operation rollback requirement, and performing a forward movement operation on the operation cursor according to the position, so that the forward-moved operation cursor positions to the unrolled-back processing operation in the point cloud array; In the case where the specified function feature needs to be operationally restored, screening out the specified function feature from the point cloud array according to the flag bits of each function feature in the point cloud array, determining the size relationship between the feature index and the operation cursor, and performing an operation restoration on the specified function feature according to the size relationship to obtain the restored point cloud array.
2. The method for processing point cloud data based on the B / S architecture according to claim 1, wherein, Performing a forward movement operation on the operation cursor according to the position so that the forward-moved operation cursor positions to the unrolled-back processing operation in the point cloud array, specifically including: Determining the number of feature bits to be rolled back for the specified function feature according to the position; Performing a forward movement on the operation cursor by a number corresponding to the number of feature bits and retaining the specified feature index corresponding to the specified function feature in the feature index; wherein, the operation rollback requirement includes a cancellation requirement and a rollback requirement.
3. A point cloud data processing method based on the B / S architecture according to claim 1, characterized in that, The types of operation restoration include reconstruction and cancellation of rollback. Performing an operation restoration on the specified function feature according to the size relationship to obtain the restored point cloud array, specifically including: Determining the operation rollback type corresponding to the specified function feature; wherein, the operation rollback type includes cancellation and rollback; Determining whether there are new function features in the point cloud array after the operation rollback is completed according to the size relationship to determine the operation restoration mode corresponding to the specified function feature; wherein, the operation restoration mode is an index restoration mode and a synchronization restoration mode; Performing an operation restoration on the specified function feature based on different operation restoration modes to obtain the restored point cloud array.
4. A point cloud data processing method based on the B / S architecture according to claim 3, characterized in that Determining whether there are new function features in the point cloud array after the operation rollback is completed according to the size relationship to determine the operation restoration mode corresponding to the specified function feature, specifically including: In the case where the feature index is not greater than the operation cursor, determining that there are new function features in the point cloud array after the operation rollback is completed, and the operation restoration mode corresponding to the specified function feature is the synchronization restoration mode; When the feature index is greater than the operation cursor, it is determined that the new feature does not exist in the point cloud array after the operation rollback, and the operation recovery mode corresponding to the specified feature is the index recovery mode.
5. A point cloud data processing method based on the B / S architecture according to claim 4, characterized in that, Based on different operation recovery modes, perform operation recovery on the specified feature to obtain the restored point cloud array, specifically including: Based on the index recovery mode, when the type of operation recovery is reconstruction, move the operation cursor backward to the end position of the point cloud array in sequence to obtain the restored point cloud array; or, when the type of operation recovery is cancellation of rollback, cancel the rollback operation on the specified feature in sequence to obtain the corresponding point cloud array. Based on the synchronous recovery mode, when the type of operation recovery is reconstruction, prohibit the reconstruction operation on the specified feature; or, when the type of operation recovery is cancellation of rollback, reconstruct the specified features created before rollback in sequence, and after reconstructing any specified feature, update the specified feature index corresponding to the specified feature so that the updated specified feature index is consistent with the operation cursor until the rollback operation on all specified features is cancelled.
6. The method for processing point cloud data based on the B / S architecture according to claim 5, characterized in that Reconstruct the specified features created before rollback in sequence, and after reconstructing any specified feature, update the specified feature index corresponding to the specified feature so that the updated specified feature index is consistent with the operation cursor, specifically including: Locate the operation cursor at the position of the last feature in the new features. Reconstruct the specified features created before rollback in sequence according to the order of the specified features. After completing the reconstruction of any specified feature, move the operation cursor backward by one position and adjust the specified feature index corresponding to the specified feature to be consistent with the operation cursor.
7. A method for processing point cloud data based on the B / S architecture according to claim 1, characterized in that, Filter out the specified features from the point cloud array according to the flag bits of each feature in the point cloud array, specifically including: Obtain the flag bits of each feature in the point cloud array. Filter out the features with the flag bits being the preset value from the point cloud array as the specified features; wherein, the preset value and the flag bits corresponding to other features except the specified features in the features are in a binary state distribution.
8. A point cloud data processing method based on the B / S architecture according to claim 1, characterized in that, The processing operations at least include any one or more of the following: point cloud simplification, point cloud positioning, point cloud denoising, removing redundant points, and point cloud meshing.
9. A point cloud data processing device based on the B / S architecture, characterized in that, The device includes: At least one processor; And a memory communicatively connected to the at least one processor; Wherein, the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute a method for processing point cloud data based on the B / S architecture according to any one of claims 1-8.
10. A non-volatile computer storage medium storing computer-executable instructions, characterized in that, The computer-executable instructions are set as: A method for processing point cloud data based on the B / S architecture according to any one of claims 1-8.
Citation Information
Patent Citations
Method and device for accelerating point cloud point selection operation and medium
CN115187713A
Point cloud data preprocessing method and device and water surface target laser radar
CN115877404A